/* =========================================================================
   Las Vegas.gr — Vegas Premium homepage stylesheet (front page only)
   Scoped under .vg-home so nothing leaks to other pages.
   ========================================================================= */

.vg-home{
  --vg-ink:#0B1220; --vg-ink-2:#1B2433; --vg-muted:#5A6473; --vg-line:#E7EBF1;
  --vg-teal:#009A8B; --vg-teal-d:#00786C; --vg-gold:#E8B53C; --vg-red:#E23A2E;
  --vg-surface:#FFFFFF; --vg-bg:#F4F6FA; --vg-tint:#EEF2F7; --vg-dark:#0B1220;
  --vg-r:14px; --vg-r-lg:22px; --vg-r-pill:999px;
  --vg-sh-sm:0 1px 2px rgba(11,18,32,.06);
  --vg-sh-md:0 8px 24px rgba(11,18,32,.10);
  --vg-sh-lg:0 18px 44px rgba(11,18,32,.16);
  --vg-ease:cubic-bezier(.22,.61,.36,1);
  --vg-wrap:1200px;
  --vg-font:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Helvetica,Arial,sans-serif;
  --vg-head:"Poppins","Inter",sans-serif;
}

/* ---- base ---- */
.vg-home{background:var(--vg-bg);color:var(--vg-ink);font-family:var(--vg-font);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased;}
.vg-home .vg-main{display:block;}
.vg-home img{max-width:100%;height:auto;}
.vg-home a{text-decoration:none;}
.vg-skip{position:absolute;left:-9999px;top:0;background:var(--vg-teal);color:#fff;padding:10px 16px;border-radius:0 0 8px 0;z-index:1000;}
.vg-skip:focus{left:0;}
.vg-wrap{max-width:var(--vg-wrap);margin:0 auto;padding:0 24px;}
.vg-wrap--readable{max-width:var(--vg-wrap);}

/* ---- header ---- */
.vg-header{position:fixed;top:0;left:0;right:0;z-index:200;background:rgba(11,18,32,.92);backdrop-filter:saturate(140%) blur(10px);border-bottom:1px solid rgba(255,255,255,.08);transition:transform .35s var(--vg-ease);}
.vg-header__inner{max-width:var(--vg-wrap);margin:0 auto;padding:0 24px;height:74px;display:flex;align-items:center;justify-content:space-between;gap:24px;}
.vg-header__brand{display:flex;align-items:center;}
.vg-header__brand img{max-height:42px;width:auto;}
.vg-header__brand-text{color:#fff;font-family:var(--vg-head);font-weight:800;font-size:22px;letter-spacing:-.01em;}
.vg-header__nav{display:flex;}
.vg-menu{list-style:none;display:flex;gap:4px;margin:0;padding:0;align-items:center;}
.vg-menu li{position:relative;}
.vg-menu a{display:block;color:#D7DEEA;font-weight:600;font-size:14.5px;padding:10px 14px;border-radius:10px;transition:color .2s,background .2s;}
.vg-menu a:hover{color:#fff;background:rgba(255,255,255,.08);}
.vg-menu .sub-menu{position:absolute;top:100%;left:0;min-width:240px;background:#fff;border:1px solid var(--vg-line);border-radius:14px;box-shadow:var(--vg-sh-lg);padding:8px;display:none;}
/* open on hover at desktop widths — mobile (<881) opens via the click toggle */
@media (min-width:881px){.vg-menu li:hover>.sub-menu{display:block;}}
.vg-menu .sub-menu a{color:var(--vg-ink);font-weight:500;}
.vg-menu .sub-menu a:hover{background:var(--vg-tint);color:var(--vg-teal-d);}
.vg-header__toggle{display:none;flex-direction:column;gap:5px;background:none;border:0;cursor:pointer;padding:8px;touch-action:manipulation;-webkit-tap-highlight-color:transparent;position:relative;z-index:1;}
.vg-header__toggle span{width:24px;height:2px;background:#fff;border-radius:2px;transition:.25s;}
.vg-submenu-toggle{display:none;} /* only shown inside the mobile menu */

/* ---- hero ---- */
/* The fixed header (74px) overlays the hero — no spacer needed on the homepage.
   The hero extends to the very top of the viewport; its padding-top clears the
   header so the logo / title appear below it with proper breathing room. */

.vg-hero{position:relative;overflow:hidden;color:#fff;padding:48px 0 92px;text-align:center;}
/* Admin bar pushes the fixed header down — compensate the hero top padding. */


.vg-hero__bg{position:absolute;inset:0;background:
   radial-gradient(1200px 500px at 50% -10%, rgba(0,154,139,.45), transparent 60%),
   radial-gradient(800px 400px at 85% 110%, rgba(232,181,60,.18), transparent 60%),
   linear-gradient(160deg,#0B1220 0%,#101a2e 55%,#0B1220 100%);}
.vg-hero__bg::after{content:"";position:absolute;inset:0;background-image:radial-gradient(rgba(255,255,255,.05) 1px,transparent 1px);background-size:22px 22px;opacity:.5;}
.vg-hero__inner{position:relative;max-width:860px;margin:0 auto;padding:0 24px;}
.vg-hero__eyebrow{text-transform:uppercase;letter-spacing:.28em;font-size:12px;font-weight:700;color:var(--vg-gold);margin:0 0 14px;}
.vg-hero__title{font-family:var(--vg-head);font-weight:800;font-size:clamp(30px,5vw,54px);line-height:1.08;letter-spacing:-.02em;margin:0 0 26px;}
.vg-hero__trust{list-style:none;display:flex;flex-wrap:wrap;gap:12px;justify-content:center;margin:0;padding:0;}
.vg-hero__trust li{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);padding:9px 16px;border-radius:var(--vg-r-pill);font-size:13.5px;font-weight:600;}
.vg-hero__trust svg{width:18px;height:18px;fill:var(--vg-teal);}
.vg-hero__trust li:nth-child(3) svg{fill:var(--vg-gold);}

/* Hero — top-3 casino CTA buttons (compact pills, content editable via Woody snippet).
   Sized to match the trust badges above; label wraps to 2 lines so all fit on one row. */
.vg-hero__casinos{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;align-items:stretch;margin:24px 0 0;}
.vg-home .vg-hero__casino-btn{display:inline-flex;align-items:center;gap:9px;background:#fff;border:1px solid rgba(255,255,255,.85);padding:6px 16px 6px 8px;border-radius:var(--vg-r-pill);color:var(--vg-ink);text-decoration:none;box-shadow:0 6px 18px rgba(0,0,0,.22);transition:transform .2s var(--vg-ease),box-shadow .2s;}
.vg-home .vg-hero__casino-btn:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.3);}
.vg-home .vg-hero__casino-logo, .vg-home .vg-hero__casino-logo img{height:26px;width:auto;max-width:74px;object-fit:contain;flex:0 0 auto;}
.vg-hero__casino-txt{display:flex;flex-direction:column;line-height:1.12;text-align:left;}
.vg-hero__casino-name{font-family:var(--vg-head);font-weight:700;font-size:13px;color:var(--vg-ink);}
.vg-hero__casino-cta{font-size:11px;font-weight:600;color:var(--vg-teal-d);}
/* text-only pill (no logo yet) e.g. Superbet - keep height consistent with logo buttons */
.vg-home .vg-hero__casino-btn:has(.vg-hero__casino-logo){}
.vg-home .vg-hero__casino-btn:not(:has(.vg-hero__casino-logo)){padding:10px 18px;}

@media (max-width:620px){
  .vg-hero__casinos{gap:8px;}
  .vg-home .vg-hero__casino-btn{padding:5px 13px 5px 7px;gap:7px;}
  .vg-home .vg-hero__casino-logo, .vg-home .vg-hero__casino-logo img{height:22px;max-width:62px;}
  .vg-hero__casino-name{font-size:12px;}
  .vg-hero__casino-cta{font-size:10.5px;}
}

/* ---- sections ---- */
.vg-section{padding:5rem 0;}
.vg-section--light{background:var(--vg-surface);}
.vg-section--tint{background:var(--vg-tint);}
.vg-section--dark{background:var(--vg-dark);color:#fff;}
.vg-section--legal{background:var(--vg-bg);padding:2.5rem 0;}
.vg-section--legal .vg-richtext{font-size:12.5px;color:var(--vg-muted);text-align:center;}
.vg-section__head{text-align:center;margin-bottom:2.6rem;}
.vg-section__title{font-family:var(--vg-head);font-weight:700;font-size:clamp(24px,3.4vw,36px);letter-spacing:-.02em;margin:0;position:relative;display:inline-block;}
.vg-section__title::after{content:"";display:block;width:60px;height:4px;border-radius:4px;background:linear-gradient(90deg,var(--vg-teal),var(--vg-gold));margin:14px auto 0;}
.vg-section--dark .vg-section__title{color:#fff;}

/* ---- editorial rich text ---- */
.vg-richtext{font-size:17px;color:#27313f;}
.vg-richtext h2{font-family:var(--vg-head);font-weight:700;font-size:clamp(21px,2.6vw,28px);letter-spacing:-.01em;color:var(--vg-ink);margin:2.2em 0 .7em;line-height:1.25;}
.vg-richtext h2:first-child{margin-top:0;}
.vg-richtext p{margin:0 0 1.15em;}
.vg-richtext a{color:var(--vg-teal-d);font-weight:600;border-bottom:1px solid rgba(0,154,139,.35);}
.vg-richtext a:hover{border-bottom-color:var(--vg-teal);}
.vg-richtext ul{list-style:none;margin:0 0 1.4em;padding:0;}
.vg-richtext ul li{position:relative;padding:0 0 .85em 34px;}
.vg-richtext ul li::before{content:"";position:absolute;left:0;top:3px;width:20px;height:20px;border-radius:50%;background:var(--vg-teal) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='white'%3E%3Cpath d='M9 16.2 4.8 12l-1.4 1.4L9 19 21 7l-1.4-1.4z'/%3E%3C/svg%3E") center/14px no-repeat;}
/* [box] shortcode callout */
.vg-richtext .su-box,.vg-richtext .box,.vg-richtext .tie-shortcode-box,.vg-richtext blockquote{background:var(--vg-tint);border-left:4px solid var(--vg-gold);border-radius:0 12px 12px 0;padding:18px 22px;margin:0 0 1.4em;font-size:15px;color:var(--vg-ink-2);}

/* =========================================================================
   PLAYUSA-STYLE COMPARISON TABLE  (#tbl_top_casinos, Woody snippet 11743)
   ========================================================================= */
.vg-table-wrap{background:var(--vg-surface);border:1px solid var(--vg-line);border-radius:var(--vg-r-lg);box-shadow:var(--vg-sh-md);overflow:hidden;}
#tbl_top_casinos{width:100%;border-collapse:collapse;font-size:15px;}
#tbl_top_casinos tr{border-bottom:1px solid var(--vg-line);transition:background .2s var(--vg-ease);}
#tbl_top_casinos tbody tr:nth-child(-n+3){background:linear-gradient(90deg,rgba(232,181,60,.06),transparent 40%);}
#tbl_top_casinos tr:last-child{border-bottom:0;}
#tbl_top_casinos tr:hover{background:rgba(0,154,139,.04);}
#tbl_top_casinos td{padding:20px 16px;vertical-align:middle;}
/* rank */
#tbl_top_casinos .priority-1{width:58px;text-align:center;}
#tbl_top_casinos .priority-1 span{display:inline-flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:10px;background:var(--vg-ink);color:#fff!important;font-family:var(--vg-head);font-weight:700;font-size:16px;box-shadow:var(--vg-sh-sm);}
#tbl_top_casinos tbody tr:nth-child(1) .priority-1 span{background:linear-gradient(135deg,var(--vg-gold),#caa02e);}
#tbl_top_casinos tbody tr:nth-child(2) .priority-1 span{background:linear-gradient(135deg,#aeb6c2,#8b95a4);}
#tbl_top_casinos tbody tr:nth-child(3) .priority-1 span{background:linear-gradient(135deg,#c98b5a,#a86b3d);}
/* logo */
#tbl_top_casinos .priority-2{width:170px;text-align:center;}
#tbl_top_casinos .priority-2>a{display:inline-flex;align-items:center;justify-content:center;width:140px;height:74px;background:#fff;border:1px solid var(--vg-line);border-radius:12px;box-shadow:var(--vg-sh-sm);transition:transform .2s var(--vg-ease),box-shadow .2s;}
/* DESKTOP: constrain ANY casino logo (incl. class-less/square e.g. Regency) to fit inside the 140x74 white box, all aspect ratios */
#tbl_top_casinos .priority-2 img{max-width:120px!important;max-height:58px!important;width:auto!important;height:auto!important;object-fit:contain!important;}
#tbl_top_casinos .priority-2>a:hover{transform:translateY(-2px);box-shadow:var(--vg-sh-md);}
/* features */
#tbl_top_casinos .priority-3{color:#2b3543;line-height:1.9;}
#tbl_top_casinos .priority-3 span[style*="bold"]{color:var(--vg-teal)!important;font-weight:700!important;margin-right:4px;}
/* desktop reviews */
#tbl_top_casinos .priority-4{width:190px;text-align:center;}
#tbl_top_casinos .tbl_reviews_desktop a{color:var(--vg-teal-d);font-weight:600;font-size:13px;}
#tbl_top_casinos .shortcode-star-rating .dashicons{color:var(--vg-gold);font-size:18px;width:18px;height:18px;}
/* CTA */
#tbl_top_casinos .priority-5{width:200px;text-align:center;}
.casino-list-button{display:inline-flex;align-items:center;justify-content:center;width:100%;max-width:184px;height:50px;border-radius:var(--vg-r-pill);
  background:linear-gradient(135deg,var(--vg-teal),var(--vg-teal-d));color:#fff;font-weight:800;letter-spacing:.03em;text-transform:uppercase;font-size:14px;
  box-shadow:0 8px 18px rgba(0,154,139,.35);transition:transform .18s var(--vg-ease),box-shadow .18s,filter .18s;}
.casino-list-button:hover{transform:translateY(-2px) scale(1.02);filter:brightness(1.05);box-shadow:0 12px 24px rgba(0,154,139,.45);}
.casino-list-button .casino-list-button-text{color:#fff;}
/* top-3 get the high-contrast gold CTA */
#tbl_top_casinos tbody tr:nth-child(1) .casino-list-button{background:linear-gradient(135deg,#F0C04A,#E8B53C);color:#1a1300;box-shadow:0 8px 18px rgba(232,181,60,.45);}
#tbl_top_casinos tbody tr:nth-child(1) .casino-list-button .casino-list-button-text{color:#1a1300;}
/* trust badge on rank-1 row */
#tbl_top_casinos tbody tr:nth-child(1) .priority-2{position:relative;}
#tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{content:"100% Νόμιμο";position:absolute;top:6px;left:50%;transform:translateX(-50%);background:var(--vg-teal);color:#fff;font-size:10px;font-weight:700;letter-spacing:.05em;text-transform:uppercase;padding:2px 8px;border-radius:999px;white-space:nowrap;}
/* responsive helpers from the snippet */
.tbl_logo_mobile,.tbl_tr_mobile,.tbl_reviews_mobile{display:none;}

/* ---- casino brand cards band (snippet 15186) on dark ---- */
.vg-kazino-band .sidebar-kazino-list-item{margin:0 0 14px;}
.vg-kazino-band .about-author.about-author-box{background:rgba(255,255,255,.06)!important;border:1px solid rgba(255,255,255,.12);border-radius:var(--vg-r)!important;padding:16px 18px!important;display:flex;gap:14px;align-items:center;flex-wrap:wrap;transition:transform .2s var(--vg-ease),background .2s;}
.vg-kazino-band .about-author.about-author-box:hover{transform:translateY(-3px);background:rgba(255,255,255,.1)!important;}
.vg-kazino-band .sidebar-kazino-list-number{background:var(--vg-gold)!important;color:#1a1300!important;border-radius:10px!important;}
.vg-kazino-band .author-info.sidebar-kazino h4 a{color:#fff!important;}
.vg-kazino-band .shortcode-star-rating .dashicons{color:var(--vg-gold);}
.vg-kazino-band .sidebar-kazino-episkopisi a{color:#9fe6dd!important;border-bottom:1px dashed rgba(159,230,221,.5);}
.vg-kazino-band .kazino-list-button{width:100%!important;max-width:220px!important;height:46px!important;border-radius:var(--vg-r-pill)!important;text-align:center!important;display:flex!important;align-items:center;justify-content:center;font-weight:800;transition:transform .18s var(--vg-ease),filter .18s;}
.vg-kazino-band .kazino-list-button:hover{transform:translateY(-2px) scale(1.01);filter:brightness(1.07);}
.vg-kazino-band .kazino-list-button-text{padding:0!important;text-transform:uppercase;}

/* =========================================================================
   CAROUSEL
   ========================================================================= */
.vg-carousel{margin:0 0 1.5rem;}
.vg-carousel__head{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:1.3rem;}
.vg-carousel__title{font-family:var(--vg-head);font-weight:700;font-size:clamp(19px,2.4vw,26px);margin:0;letter-spacing:-.01em;}
.vg-carousel__nav{display:flex;gap:8px;}
.vg-carousel__btn{width:44px;height:44px;border-radius:50%;border:1px solid var(--vg-line);background:var(--vg-surface);color:var(--vg-ink);font-size:22px;line-height:1;cursor:pointer;box-shadow:var(--vg-sh-sm);transition:transform .18s,background .18s,color .18s;}
.vg-carousel__btn:hover{background:var(--vg-teal);color:#fff;border-color:var(--vg-teal);transform:translateY(-1px);}
.vg-carousel__track{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(260px,1fr);gap:22px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 18px;-ms-overflow-style:none;scrollbar-width:thin;scrollbar-color:var(--vg-teal) transparent;}
.vg-carousel__track::-webkit-scrollbar{height:8px;}
.vg-carousel__track::-webkit-scrollbar-thumb{background:var(--vg-line);border-radius:8px;}
.vg-section--tint .vg-carousel__track:hover::-webkit-scrollbar-thumb{background:var(--vg-teal);}
.vg-card{scroll-snap-align:start;background:var(--vg-surface);border:1px solid var(--vg-line);border-radius:var(--vg-r);overflow:hidden;box-shadow:var(--vg-sh-sm);transition:transform .22s var(--vg-ease),box-shadow .22s;display:flex;flex-direction:column;}
.vg-card:hover{transform:translateY(-4px);box-shadow:var(--vg-sh-lg);}
.vg-card__media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--vg-tint);}
.vg-card__img{width:100%;height:100%;object-fit:cover;transition:transform .5s var(--vg-ease);}
.vg-card__img--ph{display:block;background:linear-gradient(135deg,var(--vg-tint),#dfe6ef);}
.vg-card:hover .vg-card__img{transform:scale(1.08);}
.vg-card__badge{position:absolute;left:12px;top:12px;background:rgba(11,18,32,.82);color:#fff;font-size:11px;font-weight:600;padding:4px 10px;border-radius:999px;backdrop-filter:blur(4px);}
.vg-card__body{padding:16px 18px 18px;display:flex;flex-direction:column;gap:8px;flex:1;}
.vg-card__title{font-family:var(--vg-head);font-weight:600;font-size:16px;line-height:1.35;color:var(--vg-ink);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.vg-card:hover .vg-card__title{color:var(--vg-teal-d);}
.vg-card__date{font-size:12.5px;color:var(--vg-muted);margin-top:auto;}

/* ---- FAQ ---- */
.vg-faq{font-size:16px;}
.vg-faq h3,.vg-faq h4{font-family:var(--vg-head);font-weight:600;}

/* =========================================================================
   FOOTER
   ========================================================================= */
.vg-footer{background:#080d17;color:#c4ccd9;}
.vg-footer__top{padding:4rem 0 3rem;border-bottom:1px solid rgba(255,255,255,.07);}
.vg-footer__cols{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;}
.vg-footer__col .widget-title,.vg-footer__col .the-subtitle{color:#fff;font-family:var(--vg-head);font-weight:600;font-size:16px;margin-bottom:14px;text-transform:none;}
.vg-footer__col a{color:#c4ccd9;}
.vg-footer__col a:hover{color:var(--vg-teal);}
.vg-footer__col ul{list-style:none;margin:0;padding:0;}
.vg-footer__col li{padding:6px 0;border-bottom:1px solid rgba(255,255,255,.05);}
/* Extra bottom padding reserves room for the fixed blue ΕΕΕΠ sticky bar (.sfooter)
   so the footer menu pills clear it — same as header.css (must match, home.css loads later). */
.vg-footer__bottom{padding:1.4rem 0 calc(1.4rem + 64px);}
.vg-footer__bottom-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.vg-footer__copy{font-size:13px;color:#8b95a4;}
.vg-footer__menu{list-style:none;display:flex;flex-wrap:wrap;gap:6px 18px;margin:0;padding:0;}
.vg-footer__menu a{font-size:13px;color:#aeb6c2;}
.vg-footer__menu a:hover{color:#fff;}

/* =========================================================================
   RESPONSIVE
   ========================================================================= */
@media (max-width:980px){
  .vg-footer__cols{grid-template-columns:1fr 1fr;}
}
@media (max-width:880px){
  .vg-menu{flex-direction:column;align-items:stretch;gap:2px;width:100%;}
  .vg-menu .sub-menu{position:static;display:block;box-shadow:none;border:0;background:rgba(255,255,255,.04);padding:0 0 0 12px;}
  .vg-header__toggle{display:flex;}
  /* table -> stacked comparison on mobile */
  #tbl_top_casinos,#tbl_top_casinos tbody,#tbl_top_casinos tr,#tbl_top_casinos td{display:block;width:100%;}
  #tbl_top_casinos tr{display:grid;grid-template-columns:54px 1fr;gap:6px 12px;align-items:center;padding:18px 14px;border-bottom:1px solid var(--vg-line);}
  #tbl_top_casinos td{padding:0;}
  #tbl_top_casinos .priority-1{grid-row:1;grid-column:1;}
  #tbl_top_casinos .priority-2{grid-row:1;grid-column:2;justify-self:start;width:auto;}
  #tbl_top_casinos .priority-2>a{width:120px;height:60px;}
  #tbl_top_casinos .priority-3{grid-column:1 / -1;font-size:14px;line-height:1.7;}
  #tbl_top_casinos .priority-4{display:none;}
  #tbl_top_casinos .priority-5{grid-column:1 / -1;}
  .casino-list-button{max-width:none;}
  .tbl_reviews_mobile{display:block;margin-top:8px;}
  .tbl_logo_desktop{display:none;}
  .tbl_logo_mobile{display:inline-block;}
  #tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{position:static;transform:none;display:inline-block;margin-bottom:6px;}
}
@media (max-width:620px){
  .vg-section{padding:3.2rem 0;}
  .vg-hero{padding:36px 0 64px;}
  .vg-footer__cols{grid-template-columns:1fr;}
  .vg-carousel__track{grid-auto-columns:78%;}
}

/* =========================================================================
   REFINEMENT PASS (premium pixel-perfect)
   ========================================================================= */

/* ---- (1) Top banner / utility bar ---- */
.vg-topbar{background:#070b14;border-bottom:1px solid rgba(255,255,255,.07);}
.vg-topbar__inner{max-width:var(--vg-wrap);margin:0 auto;padding:0 24px;min-height:40px;display:flex;align-items:center;gap:18px;justify-content:space-between;}
.vg-topbar__promo{display:inline-flex;align-items:center;gap:7px;background:linear-gradient(135deg,var(--vg-gold),#d6a52f);color:#1a1300;font-weight:800;font-size:12.5px;letter-spacing:.04em;text-transform:uppercase;padding:5px 14px;border-radius:999px;}
.vg-topbar__promo svg{width:15px;height:15px;fill:#1a1300;}
.vg-topbar__promo:hover{filter:brightness(1.07);transform:translateY(-1px);}
/* rotating offers ticker */
.vg-ticker{flex:1 1 auto;display:flex;align-items:center;gap:8px;min-width:0;}
.vg-ticker__btn{flex:0 0 auto;width:22px;height:22px;border:0;background:rgba(255,255,255,.08);color:#cfd6e2;border-radius:6px;cursor:pointer;font-size:15px;line-height:1;display:flex;align-items:center;justify-content:center;}
.vg-ticker__btn:hover{background:var(--vg-gold);color:#1a1300;}
.vg-ticker__list{position:relative;flex:1 1 auto;min-width:0;height:24px;list-style:none;margin:0;padding:0;}
.vg-ticker__item{position:absolute;inset:0;display:flex;align-items:center;opacity:0;transform:translateY(6px);transition:opacity .4s var(--vg-ease),transform .4s var(--vg-ease);pointer-events:none;}
.vg-ticker__item.is-active{opacity:1;transform:none;pointer-events:auto;}
.vg-ticker__item a{color:#e7ecf3;font-size:13px;font-weight:500;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;max-width:100%;}
.vg-ticker__item a:hover{color:var(--vg-gold);}
.vg-topbar__search{flex:0 0 auto;width:30px;height:30px;border:0;background:rgba(255,255,255,.08);border-radius:8px;cursor:pointer;display:flex;align-items:center;justify-content:center;}
.vg-topbar__search svg{width:16px;height:16px;fill:#cfd6e2;}
.vg-topbar__search:hover{background:var(--vg-teal);}
.vg-topbar__search:hover svg{fill:#fff;}
.vg-topbar__searchform{max-height:0;overflow:hidden;transition:max-height .3s var(--vg-ease);}
.vg-topbar.vg-search-open .vg-topbar__searchform{max-height:70px;}
.vg-topbar__searchform input{width:100%;max-width:var(--vg-wrap);margin:0 auto;display:block;box-sizing:border-box;padding:12px 24px;background:#0d1626;border:1px solid rgba(255,255,255,.12);border-radius:10px;color:#fff;font-size:15px;}
.vg-topbar__searchform input::placeholder{color:#7e8aa0;}

/* (1) header logo in navbar */
.vg-header__brand{min-width:0;}
.vg-header__logo{height:48px;width:auto;max-width:220px;object-fit:contain;display:block;}

/* (1.1) Large prominent hero logo */
.vg-hero__logo{margin:0 auto 24px;}
.vg-hero__logo-img{display:inline-block;width:auto;max-width:min(440px,84%);height:auto;max-height:190px;object-fit:contain;filter:drop-shadow(0 16px 36px rgba(0,0,0,.5));}
@media (max-width:620px){.vg-hero__logo-img{max-height:130px;}}

/* Hero entrance — CSS keyframe. Transform-only so content is NEVER invisible
   (opacity stays 1 even if the animation is paused in a background tab). */
@keyframes vgHeroUp{from{transform:translateY(22px)}to{transform:none}}
.vg-hero [data-vg-anim]{opacity:1;animation:vgHeroUp .7s var(--vg-ease) both;}
.vg-hero__eyebrow[data-vg-anim]{animation-delay:.05s;}
.vg-hero__title[data-vg-anim]{animation-delay:.18s;}
.vg-hero__trust[data-vg-anim]{animation-delay:.32s;}
@media (prefers-reduced-motion:reduce){.vg-hero [data-vg-anim]{animation:none;}}

/* ---- (4) Premium text cards ---- */
.vg-textcard{background:#fff;border:1px solid var(--vg-line);border-radius:var(--vg-r-lg);box-shadow:var(--vg-sh-sm);padding:34px 38px;margin:0 0 26px;transition:transform .25s var(--vg-ease),box-shadow .25s var(--vg-ease);}
.vg-textcard:last-child{margin-bottom:0;}
.vg-textcard:hover{transform:translateY(-5px);box-shadow:var(--vg-sh-lg);}
.vg-textcard .vg-richtext{font-size:16.5px;}
.vg-textcard .vg-richtext h2{margin-top:0;}

/* ---- (4)+(5) Brand band as a horizontal swipeable carousel, uniform logos ---- */
.vg-carousel--band{position:relative;background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;}
.vg-carousel__nav--float{position:absolute;top:-62px;right:0;display:flex;gap:8px;z-index:3;}
.vg-carousel--band .vg-carousel__btn{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.22);color:#fff;}
.vg-carousel--band .vg-carousel__btn:hover{background:var(--vg-gold);border-color:var(--vg-gold);color:#1a1300;}
.vg-kazino-band{display:flex!important;grid-template-columns:none!important;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:6px 2px 18px;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.3) transparent;}
.vg-kazino-band::-webkit-scrollbar{height:8px;}
.vg-kazino-band::-webkit-scrollbar-thumb{background:rgba(255,255,255,.2);border-radius:8px;}
.vg-kazino-band>br,.vg-kazino-band>.clearfix,.vg-kazino-band .clearfix{display:none!important;}
.vg-kazino-band .sidebar-kazino-list-item{flex:0 0 318px;max-width:318px;scroll-snap-align:start;margin:0!important;}
.vg-kazino-band .about-author.about-author-box{height:100%;}
.vg-kazino-band .author-avatar{flex:0 0 120px;width:120px;height:62px;display:flex!important;align-items:center;justify-content:center;background:rgba(255,255,255,.92);border-radius:10px;padding:6px;}
.vg-kazino-band .author-avatar a,.vg-kazino-band .author-avatar picture{display:flex;align-items:center;justify-content:center;width:100%;height:100%;}
.vg-kazino-band .author-avatar img{width:100%!important;height:100%!important;max-width:104px!important;max-height:50px!important;object-fit:contain!important;}

/* ---- (6) Carousels wrapped as cards + divider ---- */
.vg-carousel{background:#fff;border:1px solid var(--vg-line);border-radius:var(--vg-r-lg);box-shadow:var(--vg-sh-md);padding:26px 26px 14px;}
.vg-carousel+.vg-carousel{margin-top:0;}
.vg-divider{display:flex;align-items:center;justify-content:center;margin:40px 0;}
.vg-divider span{height:4px;width:90px;border-radius:4px;background:linear-gradient(90deg,var(--vg-teal),var(--vg-gold));opacity:.9;}

/* ---- (7) FAQ accordion ---- */
.vg-acc{max-width:860px;margin:0 auto;}
.vg-acc [itemprop="mainEntity"]{background:#fff;border:1px solid var(--vg-line);border-radius:14px;margin:0 0 14px!important;box-shadow:var(--vg-sh-sm);overflow:hidden;padding:0!important;transition:box-shadow .2s,border-color .2s;}
.vg-acc [itemprop="mainEntity"]:hover{box-shadow:var(--vg-sh-md);border-color:#d8dee8;}
.vg-acc [itemprop="name"]{margin:0;cursor:pointer;font-family:var(--vg-head);font-weight:700;font-size:17px;line-height:1.45;color:var(--vg-ink);padding:20px 60px 20px 24px;position:relative;}
.vg-acc [itemprop="name"]::after{content:"";position:absolute;right:24px;top:26px;width:11px;height:11px;border-right:2.5px solid var(--vg-teal);border-bottom:2.5px solid var(--vg-teal);transform:rotate(45deg);transition:transform .3s var(--vg-ease);}
.vg-acc .vg-open>[itemprop="name"]::after,.vg-acc .vg-open [itemprop="name"]:first-of-type::after{transform:rotate(-135deg);}
.vg-acc [itemprop="acceptedAnswer"]{max-height:0;overflow:hidden;transition:max-height .4s var(--vg-ease);}
.vg-acc .vg-open [itemprop="acceptedAnswer"]{max-height:1600px;}
.vg-acc [itemprop="text"]{padding:2px 24px 22px;color:#2b3543;font-size:15.5px;line-height:1.7;}
.vg-acc [itemprop="text"] a{color:var(--vg-teal-d);font-weight:600;}

/* ---- (8) Footer overhaul ---- */
/* Σχετικά με εμάς — avatar + layout */
.vg-footer__col .about-author,.vg-footer__col .author-avatar{display:block;}
.vg-footer__col .about-author img,.vg-footer__col .about-author-img,.vg-footer__col .author-avatar img{width:84px!important;height:84px!important;border-radius:50%;object-fit:cover;border:2px solid rgba(255,255,255,.18);margin:0 0 14px;}
.vg-footer__col .about-author p,.vg-footer__col .textwidget{color:#aeb6c2;font-size:14px;line-height:1.7;}
/* Άλλες αναλύσεις — fix timeline/meta overlap */
.vg-footer__col .timeline-widget::before,.vg-footer__col .widget-posts-list-container::before,.vg-footer__col .posts-list-items::before{display:none!important;}
.vg-footer__col .widget-single-post-item{display:flex!important;gap:12px;align-items:center;padding:10px 0!important;margin:0!important;border-bottom:1px solid rgba(255,255,255,.06);}
.vg-footer__col .widget-single-post-item::before{display:none!important;}
.vg-footer__col .post-widget-thumbnail{flex:0 0 56px;margin:0!important;}
.vg-footer__col .post-widget-thumbnail img{width:56px;height:56px;object-fit:cover;border-radius:8px;}
.vg-footer__col .post-widget-body{flex:1;padding:0!important;}
.vg-footer__col .post-widget-body .post-title,.vg-footer__col .post-widget-body a{font-size:13.5px;line-height:1.4;color:#dbe2ec;}
.vg-footer__col .post-widget-body .date,.vg-footer__col .post-widget-body .meta-item{position:static!important;background:none!important;border:0!important;padding:0!important;margin:4px 0 0!important;color:#8b95a4;font-size:11.5px;}
/* Missing footer buttons -> rounded pill buttons */
.vg-footer__menu{gap:12px 10px;}
.vg-footer__menu a{display:inline-flex;align-items:center;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.26);padding:9px 18px;border-radius:999px;color:#fff;font-weight:600;box-shadow:0 2px 8px rgba(0,0,0,.18);transition:background .2s var(--vg-ease),transform .2s,border-color .2s,color .2s;}
.vg-footer__menu a:hover{background:var(--vg-teal);border-color:var(--vg-teal);color:#fff;transform:translateY(-2px);}
/* Strict legal compliance block */
.vg-footer__legal{background:#05080f;border-top:1px solid rgba(255,255,255,.06);padding:26px 0;}
.vg-footer__legal-inner{max-width:920px;margin:0 auto;font-size:12.5px;line-height:1.75;color:#8b95a4;text-align:center;}
.vg-footer__legal-inner div{margin:0 auto;}
.vg-footer__legal-inner img{height:40px;width:auto;display:inline-block;margin:12px auto;vertical-align:middle;}
.vg-footer__legal-inner a{color:#aeb6c2;}
.vg-footer__copy{line-height:1.6;}

/* =========================================================================
   (1) MOBILE MENU — high-contrast smooth dropdown
   (3) MOBILE AFFILIATE TABLE OVERHAUL
   ========================================================================= */
@media (max-width:880px){
  /* smooth dropdown via max-height, fully legible white text */
  .vg-menu{flex-direction:column;align-items:stretch;gap:0;width:100%;}
  .vg-menu>li{border-bottom:1px solid rgba(255,255,255,.08);}
  .vg-menu a,.vg-menu .sub-menu a{color:#fff!important;font-size:16px;font-weight:600;padding:15px 6px;background:none!important;}
  .vg-menu a:hover,.vg-menu .sub-menu a:hover{color:var(--vg-gold)!important;background:rgba(255,255,255,.05)!important;}
  /* (1.3) collapsible sub-menus on mobile */
  .vg-menu .menu-item-has-children{position:relative;}
  .vg-menu .sub-menu{position:static;display:none;box-shadow:none;border:0;background:rgba(255,255,255,.04);border-radius:0;padding:0 0 0 14px;}
  .vg-menu .menu-item-has-children.vg-sub-open>.sub-menu{display:block;}
  .vg-submenu-toggle{display:flex;position:absolute;top:0;right:0;width:54px;height:50px;align-items:center;justify-content:center;background:none;border:0;cursor:pointer;z-index:2;}
  .vg-submenu-toggle::after{content:"";width:9px;height:9px;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(45deg);transition:transform .25s var(--vg-ease);}
  .vg-menu .vg-sub-open>.vg-submenu-toggle::after{transform:rotate(-135deg);}
  .vg-header__toggle{display:flex;}
  .vg-header__toggle span{background:#fff;}
  .vg-home.vg-nav-open .vg-header__toggle span:nth-child(1){transform:translateY(7px) rotate(45deg);}
  .vg-home.vg-nav-open .vg-header__toggle span:nth-child(2){opacity:0;}
  .vg-home.vg-nav-open .vg-header__toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg);}
}

@media (max-width:768px){
  /* ---- (3) Mobile affiliate table — clean stacked premium cards ---- */
  .vg-home #tbl_top_casinos,.vg-home #tbl_top_casinos tbody{display:block!important;font-size:15px;}
  .vg-home #tbl_top_casinos tbody tr{
    display:flex!important;grid-template-columns:none!important;flex-direction:column;align-items:center;text-align:center;gap:12px;
    position:relative;padding:18px 16px 20px!important;margin:0 0 14px;background:#fff;border:1px solid var(--vg-line);border-radius:16px;box-shadow:var(--vg-sh-sm);}
  .vg-home #tbl_top_casinos tbody td{display:block!important;width:100%!important;padding:0!important;border:0!important;}
  /* rank number on the far left as its own row, never overlapping the logo */
  .vg-home #tbl_top_casinos .priority-1{position:static!important;align-self:flex-start;width:auto;text-align:left;margin:0;}
  .vg-home #tbl_top_casinos .priority-1 span{width:30px;height:30px;line-height:1;font-size:14px;}
  /* logo centered, never wrapping */
  .vg-home #tbl_top_casinos .priority-2>a{margin:0 auto;width:150px;height:56px;}
  /* Constrain ANY logo img in the cell (incl. class-less square logos e.g. Regency) so it never overflows the box */
  .vg-home #tbl_top_casinos .priority-2 img{max-width:140px!important;max-height:48px!important;width:auto!important;height:auto!important;object-fit:contain!important;}
  .vg-home #tbl_top_casinos .tbl_logo_desktop{display:none!important;}
  .vg-home #tbl_top_casinos .tbl_logo_mobile{display:inline-block!important;max-height:44px!important;max-width:140px!important;object-fit:contain;}
  /* feature bullets */
  .vg-home #tbl_top_casinos .priority-3{text-align:left;font-size:14.5px;line-height:1.75;background:var(--vg-bg);border-radius:12px;padding:14px 16px!important;}
  .vg-home #tbl_top_casinos .priority-4{display:none!important;}
  .vg-home #tbl_top_casinos .tbl_reviews_mobile,.vg-home #tbl_top_casinos .tbl_tr_mobile{display:block!important;margin-top:8px;font-size:13px;}
  .vg-home #tbl_top_casinos .shortcode-star-rating .dashicons{font-size:17px;width:17px;height:17px;}
  /* elegant proportional CTA, text perfectly centered */
  .vg-home #tbl_top_casinos .casino-list-button{display:flex!important;align-items:center!important;justify-content:center!important;width:100%!important;max-width:300px!important;height:48px!important;margin:0 auto!important;font-size:14px!important;letter-spacing:.04em;border-radius:999px!important;text-align:center!important;}
  .vg-home #tbl_top_casinos .casino-list-button .casino-list-button-text,.vg-home #tbl_top_casinos .casino-list-button .kazino-list-button-text{padding:0!important;margin:0!important;line-height:1!important;display:block;}
  /* 100% Νόμιμο badge inline above the logo */
  .vg-home #tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{position:static;transform:none;display:inline-block;margin:0 0 8px;}
  /* misc */
  .vg-textcard{padding:24px 22px;}
  .vg-carousel{padding:20px 18px 10px;}
  .vg-acc [itemprop="name"]{font-size:15.5px;padding:18px 52px 18px 18px;}
  .vg-topbar__inner{gap:10px;}
  .vg-kazino-band .sidebar-kazino-list-item{flex:0 0 84%;max-width:84%;}
}

@media (max-width:560px){
  .vg-topbar__promo span{display:none;}        /* icon-only promo to save room */
  .vg-ticker__btn{display:none;}               /* auto-rotate + swipe only */
  .vg-header__logo{height:40px;max-width:160px;}
  .vg-carousel__nav--float{top:-54px;}
}

/* ---- reduced motion ---- */
@media (prefers-reduced-motion:reduce){
  .vg-home *{animation:none!important;transition:none!important;scroll-behavior:auto!important;}
  .vg-card__img{transition:none!important;}
}

/* ================================================================
   PREMIUM UI PASS (2026-08) — trust ribbons, modern CTAs, offers
   Appended last so it overrides the earlier rules by source order.
   ================================================================ */

/* ---------- 1. TRUST RIBBONS (top-3 rows) ---------- */
#tbl_top_casinos tbody tr:nth-child(-n+3){position:relative;}
#tbl_top_casinos tbody tr:nth-child(-n+3)::before{
  position:absolute;top:0;left:0;z-index:3;
  padding:6px 20px 6px 13px;
  font-family:var(--vg-head);font-weight:800;font-size:10.5px;line-height:1;
  letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%);
  box-shadow:0 4px 10px rgba(11,18,32,.22);
}
#tbl_top_casinos tbody tr:nth-child(1)::before{
  content:"Επιλογή Συντακτών";
  background:linear-gradient(135deg,#FBE29A 0%,#E8B53C 45%,#C08F1E 100%);
  color:#3A2A00;
}
#tbl_top_casinos tbody tr:nth-child(2)::before{
  content:"Επιλογή Παικτών";
  background:linear-gradient(135deg,#F2F5F9 0%,#C8D0DA 45%,#98A3B2 100%);
  color:#1B2430;
}
#tbl_top_casinos tbody tr:nth-child(3)::before{
  content:"Καλύτερη Προσφορά* Γνωριμίας";
  background:linear-gradient(135deg,#EFB98A 0%,#C9814B 45%,#9E5F30 100%);
  color:#33150A;
}
/* tint each of the top-3 rows to match its medal */
#tbl_top_casinos tbody tr:nth-child(1){background:linear-gradient(90deg,rgba(232,181,60,.11),transparent 46%);}
#tbl_top_casinos tbody tr:nth-child(2){background:linear-gradient(90deg,rgba(152,163,178,.11),transparent 46%);}
#tbl_top_casinos tbody tr:nth-child(3){background:linear-gradient(90deg,rgba(201,129,75,.11),transparent 46%);}
/* desktop: clear space so the ribbon never sits on the content */
@media (min-width:881px){
  #tbl_top_casinos tbody tr:nth-child(-n+3) td{padding-top:42px;}
}
/* tablet grid layout: ribbon stays absolute (out of grid flow), pad the row */
@media (min-width:769px) and (max-width:880px){
  #tbl_top_casinos tbody tr:nth-child(-n+3){padding-top:40px!important;}
}

/* ---------- 2. MODERN CTA BUTTONS ---------- */
body .casino-list-button,body .kazino-list-button{
  position:relative;overflow:hidden;isolation:isolate;
  border-radius:14px;
  background:linear-gradient(135deg,#00897A 0%,#007467 55%,#005F55 100%);
  text-shadow:0 1px 2px rgba(0,0,0,.28);
  box-shadow:0 6px 16px rgba(0,110,98,.34),inset 0 1px 0 rgba(255,255,255,.26);
  transition:transform .2s var(--vg-ease),box-shadow .2s,filter .2s;
}
body .casino-list-button::after,body .kazino-list-button::after{
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;
  background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.40) 50%,transparent 68%);
  transform:translateX(-125%);
}
body .casino-list-button:hover,body .kazino-list-button:hover{
  transform:translateY(-3px);
  box-shadow:0 13px 26px rgba(0,110,98,.44),inset 0 1px 0 rgba(255,255,255,.32);
  filter:saturate(1.08);
}
body .casino-list-button:hover::after,body .kazino-list-button:hover::after{
  transform:translateX(125%);transition:transform .62s ease;
}
body .casino-list-button:active,body .kazino-list-button:active{transform:translateY(-1px) scale(.99);}
body .casino-list-button:focus-visible,body .kazino-list-button:focus-visible{
  outline:3px solid var(--vg-gold);outline-offset:3px;
}
/* rank-1 keeps its gold identity, modernised */
#tbl_top_casinos tbody tr:nth-child(1) .casino-list-button{
  background:linear-gradient(135deg,#FBD97A 0%,#E8B53C 50%,#CA9A22 100%);
  text-shadow:none;
  box-shadow:0 6px 16px rgba(232,181,60,.42),inset 0 1px 0 rgba(255,255,255,.45);
}
#tbl_top_casinos tbody tr:nth-child(1) .casino-list-button:hover{
  box-shadow:0 13px 26px rgba(232,181,60,.50),inset 0 1px 0 rgba(255,255,255,.5);
}

/* ---------- 3. OFFER / PROMO LINE ---------- */
.vg-offer{
  display:flex;align-items:flex-start;gap:9px;
  margin:0 0 12px;padding:10px 13px;
  background:linear-gradient(135deg,rgba(0,154,139,.10),rgba(232,181,60,.13));
  border:1px solid rgba(0,154,139,.22);
  border-left:4px solid var(--vg-teal);
  border-radius:10px;
  font-family:var(--vg-head);font-weight:700;font-size:13.5px;line-height:1.45;
  color:#0B1220;text-align:left;
}
.vg-offer__ico{flex:0 0 auto;color:#007467;margin-top:1px;}
#tbl_top_casinos tbody tr:nth-child(1) .vg-offer{
  background:linear-gradient(135deg,rgba(232,181,60,.20),rgba(232,181,60,.08));
  border-color:rgba(202,154,34,.38);border-left-color:#CA9A22;
}
#tbl_top_casinos tbody tr:nth-child(1) .vg-offer__ico{color:#9A7412;}

/* ---------- 4. MOBILE ---------- */
@media (max-width:880px){
  /* centre the green trust badge instead of letting it sit right */
  #tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{
    position:static!important;transform:none!important;
    display:block!important;width:-moz-max-content;width:max-content;
    margin:0 auto 9px!important;
  }
}
@media (max-width:768px){
  /* ribbon becomes a full-width banner at the top of the stacked card */
  .vg-home #tbl_top_casinos tbody tr:nth-child(-n+3)::before{
    position:static;order:-1;align-self:stretch;
    clip-path:none;border-radius:12px;
    padding:8px 12px;margin:0;
    text-align:center;white-space:normal;
    font-size:11px;letter-spacing:.05em;
  }
  .vg-home #tbl_top_casinos tbody tr:nth-child(-n+3) td{padding-top:0!important;}
  .vg-offer{font-size:13px;padding:9px 12px;text-align:left;}
}

/* ---------- 5. MOTION SAFETY ---------- */
@media (prefers-reduced-motion:reduce){
  body .casino-list-button,body .kazino-list-button{transition:none;}
  body .casino-list-button:hover,body .kazino-list-button:hover{transform:none;}
  body .casino-list-button::after,body .kazino-list-button::after{display:none;}
}

/* ================================================================
   FOOTER DECLUTTER (2026-08) — spacing, rhythm, column alignment.
   Appended last in BOTH header.css and home.css (home.css is loaded
   after header.css on the front page and duplicates footer rules).
   ================================================================ */
.vg-footer__top{padding:4.5rem 0 3.25rem;}
.vg-footer__cols{
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));
  gap:54px 48px;align-items:start;
}
.vg-footer__col{min-width:0;}

/* section headings: uppercase micro-label + gradient underline */
.vg-footer__col .widget-title,.vg-footer__col .the-subtitle{
  position:relative;
  margin:0 0 20px;padding:0 0 12px;
  font-family:var(--vg-head);font-size:13.5px;font-weight:700;
  letter-spacing:.09em;text-transform:uppercase;color:#fff;
}
.vg-footer__col .widget-title::after,.vg-footer__col .the-subtitle::after{
  content:"";position:absolute;left:0;bottom:0;
  width:34px;height:3px;border-radius:3px;
  background:linear-gradient(90deg,var(--vg-teal),var(--vg-gold));
}

/* lists: airier rows, lighter dividers, subtle hover shift */
.vg-footer__col ul{margin:0;padding:0;list-style:none;}
.vg-footer__col li{padding:9px 0;border-bottom:1px solid rgba(255,255,255,.055);}
.vg-footer__col li:last-child{border-bottom:0;padding-bottom:0;}
.vg-footer__col a{
  color:#b9c2ce;
  transition:color .18s var(--vg-ease),padding-left .18s var(--vg-ease);
}
.vg-footer__col a:hover{color:var(--vg-teal);padding-left:5px;}
.vg-footer__col .textwidget,.vg-footer__col .about-author p{
  font-size:13.5px;line-height:1.85;color:#98a2b0;
}
.vg-footer__col .widget-single-post-item{padding:12px 0!important;}
.vg-footer__col .widget-single-post-item:last-child{border-bottom:0;}

/* legal block: narrower measure, more air, clearly separated */
.vg-footer__legal{padding:34px 0;}
.vg-footer__legal-inner{
  max-width:840px;
  font-size:12px;line-height:1.95;color:#7c8698;
}
.vg-footer__legal-inner img{height:34px;margin:16px auto 4px;}
.vg-footer__legal-inner a{color:#9aa4b2;text-decoration:underline;text-underline-offset:2px;}
.vg-footer__legal-inner a:hover{color:var(--vg-teal);}

/* bottom bar: balanced, breathing room, clears the sticky legal bar */
.vg-footer__bottom{padding:1.85rem 0 calc(1.85rem + 64px);}
.vg-footer__bottom-inner{
  display:flex;align-items:center;justify-content:space-between;
  gap:22px 20px;flex-wrap:wrap;
}
.vg-footer__copy{font-size:12.5px;line-height:1.7;color:#7c8698;}
.vg-footer__menu{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none;}
.vg-footer__menu a{
  display:inline-flex;align-items:center;
  padding:8px 16px;border-radius:999px;
  background:rgba(255,255,255,.075);border:1px solid rgba(255,255,255,.17);
  color:#e6ebf2;font-size:12.5px;font-weight:600;
  box-shadow:none;
  transition:background .18s var(--vg-ease),border-color .18s,color .18s,transform .18s;
}
.vg-footer__menu a:hover{
  background:var(--vg-teal);border-color:var(--vg-teal);color:#fff;transform:translateY(-2px);
}
.vg-footer__menu a:focus-visible{outline:2px solid var(--vg-gold);outline-offset:2px;}

@media (max-width:980px){
  .vg-footer__cols{grid-template-columns:repeat(2,minmax(0,1fr));gap:42px 36px;}
}
@media (max-width:620px){
  .vg-footer__top{padding:3rem 0 2.25rem;}
  .vg-footer__cols{grid-template-columns:1fr;gap:34px;}
  .vg-footer__legal{padding:26px 0;}
  .vg-footer__bottom-inner{flex-direction:column;align-items:flex-start;}
  .vg-footer__menu{justify-content:flex-start;}
}
@media (prefers-reduced-motion:reduce){
  .vg-footer__col a:hover{padding-left:0;}
  .vg-footer__menu a:hover{transform:none;}
}

/* ================================================================
   FIX PASS 2 (2026-08-27) - footer newsletter band, legal width,
   duplicate heading underline, mobile nav hardening.
   Appended last in BOTH header.css and home.css.
   ================================================================ */

/* ---- 1. kill the DOUBLE underline (widget-title wraps the-subtitle) ---- */
.vg-footer__col .widget-title .the-subtitle::after{display:none!important;}
.vg-footer__col .widget-title .the-subtitle{margin:0;padding:0;font:inherit;letter-spacing:inherit;text-transform:inherit;color:inherit;}
.vg-footer__col .widget-title{margin:0 0 20px;padding:0 0 12px;}

/* ---- 2. LEGAL BLOCK: open to the full site width ---- */
.vg-footer__legal-inner{
  max-width:var(--vg-wrap,1200px)!important;
  font-size:12.5px;line-height:1.9;color:#8d97a6;
  text-align:center;
}
.vg-footer__legal-inner p{margin:0 0 10px;}
.vg-footer__legal-inner p:last-child{margin-bottom:0;}
.vg-footer__legal-inner strong,.vg-footer__legal-inner b{color:#b9c2ce;}
.vg-footer__legal{padding:30px 0;}

/* ---- 3. NEWSLETTER BAND (moved out of column 1 by header.js) ---- */
.vg-footer__news{
  border-top:1px solid rgba(255,255,255,.07);
  border-bottom:1px solid rgba(255,255,255,.07);
  background:linear-gradient(135deg,rgba(0,154,139,.10),rgba(232,181,60,.07));
  padding:38px 0;
}
.vg-footer__news-inner{max-width:720px;margin:0 auto;text-align:center;padding:0 20px;}
/* the plugin heading duplicates the h3 - keep it for screen readers only */
.vg-footer__news .widget-title{
  position:absolute!important;width:1px;height:1px;overflow:hidden;
  clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;
}
.vg-footer__news .container-wrapper,
.vg-footer__news .widget,
.vg-footer__news .subscribe-widget{background:none!important;border:0!important;padding:0!important;margin:0!important;box-shadow:none!important;}
.vg-footer__news .widget-inner-wrap{padding:0!important;}
.vg-footer__news .newsletter-icon{
  display:inline-flex;align-items:center;justify-content:center;
  width:52px;height:52px;margin:0 0 14px;
  border-radius:50%;background:rgba(0,154,139,.18);
  border:1px solid rgba(0,154,139,.38);
  color:var(--vg-teal,#00A392);font-size:21px;
}
.vg-footer__news h3{
  font-family:var(--vg-head);font-size:23px;font-weight:700;
  color:#fff;margin:0 0 8px;line-height:1.25;
}
.vg-footer__news h4{
  font-size:14px;font-weight:400;line-height:1.65;
  color:#9aa4b2;margin:0 auto 20px;max-width:520px;
}
/* form: email + submit side by side */
.vg-footer__news .tnp-field-email{flex:1 1 240px;margin:0!important;}
.vg-footer__news .tnp-field-button{flex:0 0 auto;margin:0!important;}
.vg-footer__news form{
  display:flex;flex-wrap:wrap;gap:10px;
  align-items:center;justify-content:center;
  max-width:520px;margin:0 auto;
}
.vg-footer__news .tnp-email{
  width:100%;height:50px;padding:0 18px;
  border-radius:999px;border:1px solid rgba(255,255,255,.20);
  background:rgba(255,255,255,.07);color:#fff;font-size:14.5px;
  transition:border-color .18s,background .18s;
}
.vg-footer__news .tnp-email::placeholder{color:#8d97a6;}
.vg-footer__news .tnp-email:focus{
  outline:none;border-color:var(--vg-teal,#00A392);background:rgba(255,255,255,.11);
}
.vg-footer__news .tnp-submit{
  height:50px;padding:0 30px;border:0;cursor:pointer;
  border-radius:999px;
  background:linear-gradient(135deg,#00A392,#00897A 55%,#00695E);
  color:#fff;font-weight:800;font-size:14px;letter-spacing:.03em;text-transform:uppercase;
  box-shadow:0 6px 16px rgba(0,110,98,.34);
  transition:transform .18s var(--vg-ease),box-shadow .18s,filter .18s;
}
.vg-footer__news .tnp-submit:hover{transform:translateY(-2px);box-shadow:0 12px 24px rgba(0,110,98,.44);filter:saturate(1.08);}
.vg-footer__news .tnp-submit:focus-visible{outline:3px solid var(--vg-gold,#E8B53C);outline-offset:3px;}
/* privacy checkbox row */
.vg-footer__news .tnp-field-privacy{
  flex:1 1 100%;margin:4px 0 0!important;
  font-size:12px;color:#8d97a6;text-align:center;
}
.vg-footer__news .tnp-field-privacy a{color:#b9c2ce;text-decoration:underline;text-underline-offset:2px;}
.vg-footer__news .tnp-privacy{accent-color:var(--vg-teal,#00A392);margin-right:6px;}
@media (max-width:560px){
  .vg-footer__news{padding:30px 0;}
  .vg-footer__news h3{font-size:20px;}
  .vg-footer__news form{max-width:340px;}
  .vg-footer__news .tnp-field-button{flex:1 1 100%;}
  .vg-footer__news .tnp-submit{width:100%;}
}
@media (prefers-reduced-motion:reduce){
  .vg-footer__news .tnp-submit:hover{transform:none;}
}


/* ================================================================
   FIX PASS 2 - DESKTOP TABLE GEOMETRY (2026-08-27)
   The auto table-layout was splitting 1150px into ~5 equal columns,
   so the text column collapsed to ~216px, every line wrapped and
   rows grew to ~400px tall. Pin the grid with table-layout:fixed
   and give the content column the remaining space.
   ================================================================ */
@media (min-width:881px){
  /* legacy markup mis-assigns columns under table-layout:fixed, so stay on
     auto layout and use the width:100% trick: the text column absorbs all
     leftover space while the others shrink to their natural size. */
  #tbl_top_casinos{table-layout:auto;width:100%;}
  #tbl_top_casinos .priority-1{width:56px;}
  #tbl_top_casinos .priority-2{width:168px;}
  #tbl_top_casinos .priority-3{width:100%;}
  #tbl_top_casinos .priority-4{width:170px;}
  #tbl_top_casinos .priority-5{width:196px;}

  /* compact vertical rhythm, close to the original design */
  #tbl_top_casinos td{padding:16px 14px;vertical-align:middle;}
  #tbl_top_casinos tbody tr:nth-child(-n+3) td{padding-top:34px;}

  /* features list back to single lines */
  #tbl_top_casinos .priority-3{line-height:1.75;font-size:14.5px;}

  /* offer strip: full width of the content column, tight */
  #tbl_top_casinos .vg-offer{
    margin:0 0 9px;padding:8px 12px;
    font-size:13px;line-height:1.4;
    border-radius:9px;
  }
  #tbl_top_casinos .vg-offer svg{width:14px;height:14px;}

  /* slightly smaller ribbon so it needs less clearance */
  #tbl_top_casinos tbody tr:nth-child(-n+3)::before{
    padding:5px 18px 5px 12px;font-size:10px;
  }

  /* keep the logo card from stretching the row */
  #tbl_top_casinos .priority-2>a{width:138px;height:68px;}
  #tbl_top_casinos .priority-2 img{max-width:114px!important;max-height:52px!important;}

  /* review column: allow two tidy lines instead of stretching */
  #tbl_top_casinos .priority-4{font-size:13px;line-height:1.45;}
  #tbl_top_casinos .tbl_reviews_desktop p{margin:4px 0 0;}

  /* CTA sits centred in its fixed column */
  #tbl_top_casinos .priority-5 .casino-list-button{max-width:182px;height:46px;margin:0 auto;}
}

/* tablet: keep the same compact intent without fixed layout */
@media (min-width:769px) and (max-width:880px){
  #tbl_top_casinos .vg-offer{font-size:12.5px;padding:8px 11px;margin:0 0 8px;}
}

/* ================================================================
   FIX PASS 3 (2026-08-27) - RIBBON PHANTOM COLUMN
   Generated content on a <tr> is wrapped by the engine in an
   anonymous table-cell BEFORE position:absolute is applied. That
   added a 6th column and shifted every real cell one place across,
   which is what made the rows explode in height.
   Fix: kill the row-level pseudo-element and hang the ribbon off
   the first CELL instead (.priority-1), which cannot create a column.
   ================================================================ */
#tbl_top_casinos tbody tr:nth-child(-n+3)::before{content:none!important;}

#tbl_top_casinos tbody tr:nth-child(-n+3) .priority-1{position:relative;}
#tbl_top_casinos tbody tr:nth-child(-n+3) .priority-1::before{
  position:absolute;top:0;left:0;z-index:3;
  padding:5px 18px 5px 12px;
  font-family:var(--vg-head);font-weight:800;font-size:10px;line-height:1;
  letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;
  clip-path:polygon(0 0,100% 0,calc(100% - 10px) 50%,100% 100%,0 100%);
  box-shadow:0 4px 10px rgba(11,18,32,.22);
}
#tbl_top_casinos tbody tr:nth-child(1) .priority-1::before{
  content:"Επιλογή Συντακτών";
  background:linear-gradient(135deg,#FBE29A 0%,#E8B53C 45%,#C08F1E 100%);
  color:#3A2A00;
}
#tbl_top_casinos tbody tr:nth-child(2) .priority-1::before{
  content:"Επιλογή Παικτών";
  background:linear-gradient(135deg,#F2F5F9 0%,#C8D0DA 45%,#98A3B2 100%);
  color:#1B2430;
}
#tbl_top_casinos tbody tr:nth-child(3) .priority-1::before{
  content:"Καλύτερη Προσφορά* Γνωριμίας";
  background:linear-gradient(135deg,#EFB98A 0%,#C9814B 45%,#9E5F30 100%);
  color:#33150A;
}

/* mobile: ribbon becomes a full-width banner at the top of the card */
@media (max-width:768px){
  .vg-home #tbl_top_casinos tbody tr:nth-child(-n+3) .priority-1{
    order:-1;width:100%!important;align-self:stretch!important;text-align:center;
  }
  .vg-home #tbl_top_casinos tbody tr:nth-child(-n+3) .priority-1::before{
    position:static;display:block;width:100%;
    clip-path:none;border-radius:12px;
    padding:8px 12px;margin:0 0 10px;
    text-align:center;white-space:normal;
    font-size:11px;letter-spacing:.05em;
  }
  .vg-home #tbl_top_casinos tbody tr:nth-child(-n+3) .priority-1 span{
    display:inline-flex;
  }
}

/* ================================================================
   FIX PASS 4 (2026-08-27) - desktop polish after the ribbon move
   a) the green "100% Nomimo" badge sat in the ribbon's path on row 1
   b) the star rating wrapped onto a second line (column too narrow)
   ================================================================ */
@media (min-width:881px){
  /* park the trust badge on the right of the logo cell, clear of the ribbon */
  #tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{
    left:auto!important;right:6px!important;
    transform:none!important;
    top:4px!important;
  }
  /* keep the 5 stars on one line */
  #tbl_top_casinos .priority-4{min-width:152px;}
  #tbl_top_casinos .shortcode-star-rating{white-space:nowrap;display:inline-block;}
  #tbl_top_casinos .priority-4 .shortcode-star-rating .dashicons{font-size:16px;width:16px;height:16px;}
}

/* ================================================================
   FIX PASS 5 (2026-08-27) - the green "100% Nomimo" badge was still
   sitting underneath the gold ribbon (both anchored top-left).
   Drop the positioning context on the logo cell so the badge anchors
   to the ROW instead, and park it top-RIGHT, clear of the ribbon.
   ================================================================ */
@media (min-width:881px){
  #tbl_top_casinos tbody tr:nth-child(1) .priority-2{position:static!important;}
  #tbl_top_casinos tbody tr:nth-child(1) .priority-2::before{
    position:absolute!important;
    top:6px!important;right:10px!important;left:auto!important;
    transform:none!important;
    z-index:4;
  }
}

/* ================================================================
   FIX PASS 6 (2026-08-27) - CTA text sat low in the button.
   Root cause: the MaxButtons plugin injects its OWN inline <style>
   late in <head> targeting these SAME class names (a legacy preset,
   76px-tall button with padding-top:30px on the text + display:
   inline-block on the button). Same specificity (0,1,0) as our own
   rules, but later in source order, so it silently won. Force ours
   to win unconditionally with !important - do not rely on source
   order or specificity against a 3rd-party inline style again.
   ================================================================ */
body .casino-list-button,body .kazino-list-button{
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}
body .casino-list-button-text,body .kazino-list-button-text{
  padding:0!important;margin:0!important;line-height:1.2!important;
  display:inline-flex!important;align-items:center!important;justify-content:center!important;
}


/* ================================================================
   FIX PASS 8 (2026-08-28) - restored the EXACT two-generation mobile
   nav combo verified working on staging (byte-identical). My own
   single-rule 'clean' consolidation (FIX PASS 7) was WRONG - the
   working result actually depends on gen1's translateY/opacity/
   pointer-events open-state values combined with gen2's position/
   max-height closed+open values; my consolidation dropped gen1's
   contribution to the open state. Restoring verbatim, do not
   'simplify' this again without testing against staging first.
   ================================================================ */

@media (max-width:880px){
  .vg-header__nav{position:fixed;inset:74px 0 auto 0;background:#0B1220;flex-direction:column;padding:14px 24px 24px;border-bottom:1px solid rgba(255,255,255,.1);transform:translateY(-12px);opacity:0;pointer-events:none;transition:.25s;}
  .vg-home.vg-nav-open .vg-header__nav{transform:none;opacity:1;pointer-events:auto;}
}

@media (max-width:880px){
  .vg-header__nav{position:absolute;left:0;right:0;top:100%;background:#0B1220;flex-direction:column;
    max-height:0;overflow:hidden;opacity:1;transform:none;pointer-events:auto;
    transition:max-height .38s var(--vg-ease);box-shadow:0 24px 40px rgba(0,0,0,.45);padding:0;}
  .vg-home.vg-nav-open .vg-header__nav{max-height:78vh;overflow-y:auto;padding:10px 20px 20px;}
}
