/*
 * Layout Invariants (factory rules — DO NOT violate):
 *   1. No page-level horizontal scroll (html,body overflow-x:hidden).
 *   2. All tables are scroll-isolated via .table-scroll wrapper.
 *   3. Text wraps inside content boxes (overflow-wrap:anywhere).
 *   4. No fixed heights for content containers.
 */

/* Theme CSS variables are injected by render.py */
/* Fallback values (theme 1) - will be overridden by injected theme */
:root{
    --bg:#0b0f1a;
    --surface:#121a2b;
    --surface-alt:rgba(18,26,43,.55);
    --text:#e9eefc;
    --muted:#a8b3d6;
    --border:rgba(255,255,255,.08);
    --accent:#4da3ff;
    --accent-2:rgba(77,163,255,.18);
    --badge:rgba(77,163,255,.35);
  }
  
  /* Base */
  *{ box-sizing:border-box; }
  html,body{ height:100%; max-width:100%; overflow-x:hidden; }
  body{
    margin:0;
    font-family: "Onest", system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
    font-size:18px;
  line-height:1.55;
    color:var(--theme-page-txt-color, var(--text));
    background-color: var(--theme-page-bg-color, var(--bg));
  overflow-x:hidden;
  padding-left: env(safe-area-inset-left, 0);
  padding-right: env(safe-area-inset-right, 0);
  }
  
/* Global text-wrapping safety — prevents long strings from overflowing containers */
p, li, dd, dt, blockquote, figcaption, a, span, strong, em, code {
  overflow-wrap:anywhere;
  word-break:break-word;
}
.content, .container, .card, .section, .prose, main, article {
  overflow-wrap:anywhere;
  word-break:break-word;
}
  a{
    color: var(--theme-default-elements-color, var(--accent));
    font-size:16px;
    font-weight:700;
    text-decoration:none;
    transition: all 0.3s;
  }
  a:hover{ text-decoration: underline; }
a:focus-visible,
button:focus-visible,
summary:focus-visible{
  outline:2px solid var(--theme-default-elements-color, var(--accent));
  outline-offset:3px;
}
  p{
    margin-top:0;
    font-size:16px;
    font-weight:400;
  line-height:1.6;
  }
a.review-link{
  color: var(--theme-page-txt-color, var(--text));
  font-weight:400;
  font-size:16px;
}
img{
  max-width:100%;
  height:auto;
  display:block;
}
/* Global heading rhythm */
h1{
  font-size:clamp(30px, 6vw, 40px);
  line-height:1.2;
  margin:0 0 12px;
  font-weight:800;
}
h2{
  font-size:clamp(24px, 5vw, 32px);
  line-height:1.25;
  margin:0 0 14px;
  font-weight:800;
}
h3{
  font-size:clamp(18px, 4vw, 24px);
  line-height:1.3;
  margin:18px 0 10px;
  font-weight:800;
}
  .container{
    width:100%;
    max-width:1200px;
    padding:0 clamp(14px, 4vw, 22px);
    margin:0 auto;
  }
.layout{
  width:100%;
  max-width:1200px;
  padding:0 clamp(14px, 4vw, 22px);
  margin:0 auto;
  display:grid;
  grid-template-columns:1fr;
  row-gap:26px;
  align-items:start;
}
.layout__main{ min-width:0; overflow:hidden; }
/* TOC */
.sgt-table-of-content{
  position:sticky;
  top:88px;
  background-color: var(--theme-section-secondary-color, var(--surface-alt));
  border-radius: 20px;
  padding: clamp(14px, 4vw, 18px);
  border:1px solid var(--border);
}
@media screen and (max-width: 900px){
  .sgt-table-of-content{ border-radius:16px; }
  .sgt-table-of-content .sgt-widget-title{ font-size:18px; }
}
@media screen and (max-width: 768px){
  .sgt-table-of-content{
    position:relative;
    top:auto;
  }
}
.sgt-table-of-content__title{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  cursor:pointer;
  list-style:none;
}
.sgt-table-of-content__title::-webkit-details-marker{ display:none; }
.sgt-table-of-content .sgt-widget-title{
  font-size:17px;
  font-weight:700;
  text-transform:uppercase;
  margin:0;
  color: var(--theme-page-txt-color, var(--text));
}
.sgt-table-of-content .oppener{
  width:36px;
  height:36px;
  background-color: var(--theme-page-bg-color, var(--bg));
  color: var(--theme-page-txt-color, var(--text));
  border-radius:50%;
  display:flex;
  justify-content:center;
  align-items:center;
  transform: rotate(0deg);
  transition: transform 0.3s;
  flex-shrink:0;
}
details[open].sgt-table-of-content .oppener{
  transform: rotate(180deg);
}
.sgt-table-of-content__holder{
  display:flex;
  flex-direction:column;
  gap:12px;
  margin:20px 0 0 0;
}
.sgt-table-of-content__holder a{
  color: var(--theme-page-txt-color, var(--text));
  text-decoration:none;
  font-size:15px;
  font-weight:600;
  text-transform:uppercase;
  padding:12px 14px;
  min-height:48px;
  border-radius:10px;
}
.sgt-table-of-content__holder a:hover{
  color: var(--theme-default-elements-color, var(--accent));
  background: var(--surface-alt);
}

  .age-notice{
    background: var(--accent-2);
    border-bottom:1px solid var(--badge);
    padding:8px 0;
    font-size:12px;
    text-align:center;
    color:var(--muted);
  }
  .age-notice p{ margin:0; }
  
  .header{
    position:sticky;
    top:0;
    z-index:10;
    backdrop-filter: blur(10px);
    background: var(--surface-alt);
    border-bottom:1px solid var(--border);
  padding-left: env(safe-area-inset-left, 0);
  padding-right: env(safe-area-inset-right, 0);
  }
  .header__inner{
    display:flex;
    align-items:center;
    justify-content:space-between;
    padding:12px 0;
    position:relative;
    gap:12px;
  min-height:56px;
  }
  .logo{
    font-weight:800;
    letter-spacing:.4px;
    display:flex;
    align-items:center;
    padding-left:10px;
    text-decoration:none;
    color:inherit;
  }
  .logo:hover{
    text-decoration:none;
    opacity:0.9;
  }
  .header__logo-img{
    display:block;
    width:auto;
    height:auto;
    max-height: clamp(44px, 5vw, 58px);
    max-width: clamp(160px, 28vw, 260px);
    object-fit:contain;
  }
  @media screen and (max-width: 768px){
    .logo{ padding-left:12px; }
    .header__logo-img{
      max-height: clamp(44px, 10vw, 60px);
      max-width: clamp(180px, 60vw, 320px);
    }
  }
  .nav{
    display:flex;
    gap:16px;
    color:var(--muted);
    font-size:14px;
    align-items:center;
  }
  .nav a:hover{ color:var(--text); }
  
  /* Language selector (desktop + mobile) */
  .lang-selector{
    position:relative;
    display:inline-block;
    font-size:13px;
    font-weight:600;
    margin-left:8px;
    border-left:1px solid var(--border);
    padding-left:8px;
    color:var(--text);
  }
  .lang-current{
    display:flex;
    align-items:center;
    gap:8px;
    padding:6px 10px;
    background:#111;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:8px;
    color:var(--text);
    cursor:pointer;
    transition:all 0.2s;
    font-size:13px;
    font-weight:600;
  }
  .lang-current:hover{
    background:#1a1a1a;
    border-color:rgba(255,255,255,0.18);
  }
  .lang-arrow{
    width:0;
    height:0;
    border-left:4px solid transparent;
    border-right:4px solid transparent;
    border-top:5px solid var(--text);
    margin-left:4px;
    transition:transform 0.2s;
  }
  .lang-selector--open .lang-arrow{
    transform:rotate(180deg);
  }
  .lang-dropdown{
    position:absolute;
    top:calc(100% + 6px);
    right:0;
    min-width:200px;
    background:#111;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:10px;
    box-shadow:0 8px 20px rgba(0,0,0,0.35);
    padding:6px;
    opacity:0;
    visibility:hidden;
    transform:translateY(-6px);
    transition:all 0.2s;
    z-index:1000;
  }
  .lang-selector--open .lang-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  .lang-selector:not(.lang-selector--mobile):hover .lang-dropdown{
    opacity:1;
    visibility:visible;
    transform:translateY(0);
  }
  .lang-selector:not(.lang-selector--mobile):hover .lang-arrow{
    transform:rotate(180deg);
  }
  .lang-item{
    display:flex;
    align-items:center;
    gap:10px;
    padding:8px 10px;
    color:#fff;
    text-decoration:none;
    border-radius:6px;
    transition:background 0.15s;
    white-space:nowrap;
  }
  .lang-item:hover{
    background:#1a1a1a;
  }
  .lang-item--active span{
    color:#fff;
  }
  
  /* Flag icons in language selector */
  .lang-flag{
    width:18px;
    height:12px;
    object-fit:cover;
    border-radius:2px;
    vertical-align:middle;
    display:inline-block;
    flex-shrink:0;
  }
  .lang-label{
    display:inline-block;
    font-weight:600;
  }

  /* Mobile menu language selector (accordion style) */
  .nav-burger__panel .lang-selector{
    display:block;
    margin:12px 0 4px;
    border-left:none;
    padding-left:0;
  }
  .nav-burger__panel .lang-current{
    width:100%;
    justify-content:space-between;
    background:#111;
    border:1px solid rgba(255,255,255,0.08);
  }
  .nav-burger__panel .lang-dropdown{
    position:static;
    min-width:0;
    margin-top:6px;
    opacity:1;
    visibility:visible;
    transform:none;
    display:none;
    box-shadow:none;
  }
  .nav-burger__panel .lang-selector--open .lang-dropdown{
    display:block;
  }
  
  .nav__cta{
    padding:10px 16px;
    min-height:40px;
    font-size:14px;
    font-weight:800;
  }

  /* Mobile burger nav (no JS) */
  .nav-burger{
    display:none;
  }
  .nav-burger__button{
    width:42px;
    height:42px;
    border-radius:50%;
    background-color: var(--theme-active-btn-bg, var(--btn-bg));
    color: var(--theme-active-btn-txt-color, var(--btn-text));
    border:2px solid var(--theme-active-btn-bg, var(--btn-bg));
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    cursor:pointer;
    list-style:none;
    padding:0;
    box-shadow:0 8px 20px rgba(0,0,0,0.18);
    touch-action:manipulation;
  }
  .nav-burger__button::-webkit-details-marker{ display:none; }
  .nav-burger__icon{
    width:16px;
    height:12px;
    position:relative;
    display:block;
  }
  .nav-burger__icon::before,
  .nav-burger__icon::after{
    content:"";
    position:absolute;
    left:0;
    right:0;
    height:1.5px;
    background: currentColor;
    border-radius:2px;
  }
  .nav-burger__icon::before{ top:0; box-shadow:0 5px 0 0 currentColor; }
  .nav-burger__icon::after{ bottom:0; }
  /* Hide chevron to match reference (minimal, unobtrusive burger) */
  .nav-burger__chevron{ display:none; }
  .nav-burger__panel{
    position:absolute;
    top: calc(100% + 10px);
    right:0;
    left:0;
    background: var(--surface);
    border:1px solid var(--border);
    border-radius:16px;
    overflow:hidden;
    box-shadow: 0 10px 30px rgba(0,0,0,.15);
    padding:6px 0;
    z-index:50;
  }

@media screen and (max-width: 768px){
  /* keep burger slightly away from the screen edge, closer to the logo */
  .nav-burger{ margin-right:10px; }
}
.nav-burger__button:focus-visible{
  outline:2px solid var(--theme-default-elements-color, var(--accent));
  outline-offset:3px;
}
@media screen and (max-width: 480px){
  .header__inner{ padding:12px 0; }
  .nav-burger__button{
    width:46px;
    height:46px;
  }
  .logo{ padding-left:14px; }
}
  .nav-burger__panel a{
    display:flex;
    align-items:center;
    min-height:48px;
    padding:12px 16px;
    font-size:16px;
    font-weight:700;
    color: var(--theme-page-txt-color, var(--text));
    text-transform:none;
    text-decoration:none;
    border-bottom:1px solid var(--border);
  }
  .nav-burger__cta{
    margin:6px 10px 10px;
    border-radius:12px;
    text-align:center;
    justify-content:center;
  }
  .nav-burger__panel a:last-child{ border-bottom:none; }
  .nav-burger__panel a:hover{
    text-decoration:none;
    background: var(--surface-alt);
  }
  
/* HERO */
.welcome-section-hero{
  padding:clamp(18px, 6vw, 36px) 0 0 0;
  margin:0 0 clamp(28px, 7vw, 50px) 0;
}
.welcome-section-hero__holder{
  display:flex;
  gap:clamp(14px, 4vw, 24px);
  align-items:center;
  flex-wrap:wrap;
  width:100%;
}
.welcome-section-hero__image{
  flex-shrink:0;
  border-radius:20px;
  width:32%;
  max-width:360px;
}
.welcome-section-hero__content{
  width:68%;
  display:flex;
  flex-direction:column;
  gap:14px;
}
@media screen and (min-width: 901px){
  .welcome-section-hero__holder{
    flex-wrap:nowrap;
  }
  .welcome-section-hero__image{ width:32%; }
  .welcome-section-hero__content{ width:68%; }
}
.welcome-section-hero__holder.right{
  flex-direction:row-reverse;
}
@media screen and (max-width: 768px){
  .welcome-section-hero__holder{
    flex-direction:column !important;
  }
}
.welcome-section-hero__image img{
  width:100%;
  height:auto;
  border-radius:20px;
}
@media screen and (max-width: 768px){
  .welcome-section-hero__image{
    width:100% !important;
  }
  .welcome-section-hero__image img{
    margin:0 auto;
    display:block;
  }
}
.welcome-section-hero__content h1{
  text-transform:uppercase;
  line-height:1.2;
  margin:0;
}
.welcome-section-hero__content .sgt-read-more-txt p{
  color:var(--muted);
  font-size:16px;
  line-height:1.6;
}
@media screen and (max-width: 768px){
  .welcome-section-hero__content{
    width:100% !important;
    display:flex;
    flex-direction:column;
  }
  .welcome-section-hero__content h1{
    order:1;
  }
  .welcome-section-hero__content .sgt-read-more-txt{
    order:3;
    margin:20px 0 0 0;
  }
}
.welcome-section-hero__cards{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:clamp(12px, 3.5vw, 18px);
  margin:14px 0 0 0;
}
@media screen and (max-width: 900px){
  .welcome-section-hero__cards{
    grid-template-columns: repeat(1, 1fr);
    gap:12px;
    order:4;
  }
}
.welcome-section-hero__card-holder{
  background-color: var(--theme-section-secondary-color, var(--card-strong));
  border-radius:10px;
  padding:12px;
  display:flex;
  gap:12px;
}
.welcome-section-hero__card-icon{
  color: var(--theme-section-icons-color, var(--accent));
  background-color: var(--theme-page-bg-color, var(--bg));
  width:50px;
  height:50px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  flex-shrink:0;
}
.welcome-section-hero__buttons{
  margin:16px 0 0 0;
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:12px;
}
.welcome-section-hero__buttons .btn{
  text-decoration:none;
  min-height:48px;
  flex:1 1 auto;
}
@media screen and (max-width: 900px){
  .welcome-section-hero__buttons{ order:2; }
}
@media screen and (max-width: 768px){
  .welcome-section-hero__buttons{
    margin:0;
    justify-content:center;
  }
}
@media screen and (max-width: 480px){
  .welcome-section-hero__buttons{
    flex-direction:column;
  }
  .welcome-section-hero__buttons .btn{
    width:100%;
    justify-content:center;
  }
}
.welcome-section-hero__card-text p{ margin:0; }
.welcome-section-hero__card-text .subtitle{ font-size:14px; }
.welcome-section-hero__card-text .title{
  font-size:16px;
  font-weight:700;
  margin:5px 0 0 0;
}
  
  .section{ padding:clamp(26px, 6vw, 40px) 0; }
  .section h2{
    margin:0 0 12px;
    font-size:clamp(24px, 5vw, 32px);
    font-weight:800;
    line-height:1.2;
  }
  /* DO NOT REMOVE.
     overflow:hidden prevents any child (tables, images, long text)
     from pushing .content wider than the viewport. Tables scroll
     inside their own .table-scroll wrapper instead. */
  .content{
    padding:clamp(18px, 5vw, 24px);
    border:1px solid var(--border);
    border-radius:16px;
    background: var(--card);
    max-width:100%;
    min-width:0;
    overflow:hidden;
  }
  .content img{ max-width:100%; height:auto; }
  .content h3{
    margin-top:16px;
    font-size:clamp(18px, 4vw, 22px);
    line-height:1.25;
  }
.media-row{
  display:flex;
  gap:20px;
  align-items:center;
  margin:18px 0;
}
.media-row--reverse{ flex-direction:row-reverse; }
.media-row__text{
  flex:1;
  min-width:0;
}
.media-row__media{
  flex:1;
  min-width:0;
  display:flex;
  justify-content:center;
}
.media-row__media img{
  width:100%;
  max-width:520px;
  border-radius:16px;
  display:block;
}

/* ===============================================================
   TABLE SCROLL — FACTORY STANDARD
   DO NOT REMOVE.
   All tables are wrapped in .table-scroll by the build pipeline.
   This prevents mobile layout breakage (no page-level horizontal
   scroll).  Only the table area scrolls horizontally when needed.
   Removing these rules WILL break mobile on every site.
   =============================================================== */
.content table{
  width:100%;
  border-collapse:collapse;
  table-layout:auto;
  margin:16px 0;
  background: var(--theme-section-secondary-color, var(--card));
  border:1px solid var(--border);
  border-radius:12px;
}
.content table th,
.content table td{
  padding:10px 12px;
  text-align:left;
  vertical-align:top;
  font-size:15px;
  color: var(--theme-page-txt-color, var(--text));
  border-bottom:1px solid var(--border);
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
.content table thead th{
  font-weight:800;
  background: var(--theme-page-bg-color, var(--surface-alt));
}
.content table tbody tr:nth-child(odd){
  background: var(--surface-alt);
}
.content table tbody tr:last-child td{
  border-bottom:none;
}

/* DO NOT REMOVE.
   Prevents horizontal overflow. Tables must scroll inside wrapper only. */
.table-scroll{
  display:block;
  width:100%;
  max-width:100%;
  overflow-x:auto;
  overflow-y:hidden;
  -webkit-overflow-scrolling:touch;
  margin:16px 0;
  border-radius:12px;
}
.table-scroll table{
  width:100%;
  min-width:600px;
  border-collapse:collapse;
  margin:0;
}
.table-scroll th,
.table-scroll td{
  white-space:normal;
  overflow-wrap:anywhere;
  word-break:break-word;
}
  
  .grid{
    display:grid;
    grid-template-columns: repeat(3, 1fr);
    gap:14px;
  }

  /* TOP CASINOS (competitor-like bookmakers list) */
  .bookmakers-list{
    margin: 0 0 40px 0;
  }
  .bookmakers-list__item{
    background-color: var(--theme-section-secondary-color, var(--card-strong));
  padding: 14px;
    border-radius: 20px;
  margin: 0 0 12px 0;
    display:flex;
    justify-content: space-between;
  gap: 16px;
  align-items: center;
  }
  .bookmakers-list__item:last-child{ margin:0; }
  .bookmakers-list__item .logo-holder{
    padding: 10px;
    border-radius: 10px;
    width: 180px;
    height: 77px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
    position:relative;
    background-color: var(--theme-page-table-row-bg, var(--surface));
  }
  .bookmakers-list__item .logo-holder__num{
    position:absolute;
    top:-5px;
    left:-5px;
    background-color: var(--theme-active-btn-bg, var(--btn-bg));
    color: var(--theme-active-btn-txt-color, var(--btn-text));
    border-radius:50%;
    display:flex;
    justify-content:center;
    align-items:center;
    width:32px;
    height:32px;
    font-size:14px;
    font-weight:700;
  }
  .bookmakers-list__item .logo-holder img{
    max-width:100%;
    height:auto;
  }
  .logo-holder__fallback{
    display:flex;
    align-items:center;
    justify-content:center;
    width:100%;
    height:100%;
    font-weight:800;
    font-size:20px;
    color: var(--theme-page-txt-color, var(--text));
  }
  @media screen and (max-width: 768px){
  .bookmakers-list__item .logo-holder{ width:100%; }
  .bookmakers-list__item{
    flex-direction:column;
    align-items:stretch;
  }
  }
  .bookmakers-list__info{
    display:flex;
    align-items:center;
  gap:14px;
  }
  @media screen and (max-width: 768px){
    .bookmakers-list__info{
      flex-direction:column;
      width:100%;
      gap:0;
    }
  }
  .bookmakers-list__info-holder{
    display:flex;
    align-items:center;
  gap:12px;
  }
  .bookmakers-list__info-holder p{ margin:0; }
  .bookmakers-list__info-holder .icon{
    background-color: var(--theme-page-bg-color, var(--bg));
    width:50px;
    height:50px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    z-index:10;
    flex-shrink:0;
  }
  .bookmakers-list__info-holder .icon svg{
    color: var(--theme-section-icons-color, var(--accent));
  }
  .bookmakers-list__info-holder .value{
    font-size:clamp(20px, 4.8vw, 24px);
    font-weight:700;
    color: var(--theme-page-txt-color, var(--text));
  }
  .bookmakers-list__info-holder .title{
    font-size:14px;
    text-transform:uppercase;
    font-weight:600;
    color: var(--theme-page-txt-color, var(--text));
    opacity:0.85;
  }
  @media screen and (max-width: 768px){
    .bookmakers-list__info-holder{
      flex-direction:column;
      text-align:center;
    margin-top:12px;
    }
  }
  .bookmakers-list__actions{
    display:flex;
    flex-direction:column;
    align-items:center;
    gap:10px;
    flex-shrink:0;
  }
@media screen and (max-width: 768px){
  .bookmakers-list__actions{
    width:100%;
    align-items:stretch;
  }
  .bookmakers-list__actions .btn{ width:100%; min-height:48px; }
}
#top-casinos .grid{
  display:block;
  width:100%;
  max-width:none;
}
#top-casinos .offer-list,
#top-casinos .offer-row{
  width:100%;
  max-width:none;
}
  
  .offer-list{
    display:flex;
    flex-direction:column;
  gap:14px;
    width:100%;
  max-width:none;
  }
.offer-row{
    display:flex;
    align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:16px 18px;
    border:1px solid var(--border);
  border-radius:18px;
    background: var(--card);
    width:100%;
  max-width:none;
  min-height:128px;
  }
  .offer-item--strong{
    background: var(--card-strong);
  }
.offer-left{
  flex:0 0 200px;
  display:flex;
  align-items:center;
  gap:18px;
}
  .offer-badge{
  width:34px;
  height:34px;
    border-radius:50%;
    background:var(--accent);
    color:var(--btn-text);
  font-weight:800;
  font-size:13px;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
  position:absolute;
  top:8px;
  left:8px;
  }
  .offer-logo{
  flex:0 0 200px;
  width:200px;
  height:100px;
    border-radius:12px;
    border:1px solid var(--border);
    background:var(--surface);
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:800;
    font-size:18px;
    color:var(--text);
    flex-shrink:0;
  padding:12px 14px;
    overflow:hidden;
  position:relative;
  }
  .offer-logo img{
    width:100%;
    height:100%;
    object-fit:contain;
    display:block;
  }
.offer-logo__fallback{
  display:flex;
  align-items:center;
  justify-content:center;
  width:100%;
  height:100%;
  font-weight:800;
  font-size:20px;
  color:var(--text);
}
.offer-middle{
  flex:1 1 auto;
  min-width:0;
  overflow-wrap:anywhere;
  word-break:normal;
  display:flex;
  gap:14px;
  align-items:center;
}
.offer-middle__icon{
  flex:0 0 44px;
  width:44px;
  height:44px;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:var(--surface);
  border:1px solid var(--border);
}
.offer-middle__icon svg{
  width:20px;
  height:20px;
  stroke:var(--accent);
  fill:none;
}
.offer-middle__text{
  flex:1 1 auto;
  min-width:0;
  }
  .offer-kicker{
  font-size:12px;
    text-transform:uppercase;
    letter-spacing:0.8px;
    color:var(--muted);
    margin-bottom:10px;
    font-weight:600;
  }
  .offer-title{
    font-weight:800;
  font-size:23px;
    margin-bottom:8px;
    color:var(--text);
    word-wrap:break-word;
    overflow-wrap:break-word;
  line-height:1.15;
  }
  .offer-meta{
  font-size:14px;
    color:var(--muted);
  }
.offer-right{
  flex:0 0 220px;
  display:flex;
  flex-direction:column;
  gap:10px;
  align-items:flex-end;
  }
.offer-right .btn{
  min-width:220px;
  height:46px;
  border-radius:12px;
  padding:0 22px;
    font-size:16px;
    font-weight:700;
    white-space:nowrap;
  }
  .offer-review-link{
    font-size:13px;
    color:var(--muted);
    text-decoration:none;
    text-align:right;
  margin-top:8px;
  }
  .offer-review-link:hover{
    color:var(--text);
  }
  
  @media (max-width: 860px){
  .hero__container{
    grid-template-columns: 1fr;
  }
  .hero__media{
    order:-1;
  }
  .offer-row{
      flex-direction:column;
      align-items:stretch;
      gap:20px;
      padding:20px;
      min-height:auto;
    }
    .offer-left{
      width:100%;
      justify-content:flex-start;
    }
  .offer-middle{
    padding:0;
  }
  .offer-row{
    flex-direction:column;
    align-items:stretch;
    gap:20px;
    padding:20px;
    min-height:auto;
  }
  .offer-left{
    flex:0 0 auto;
    width:100%;
    justify-content:flex-start;
  }
  .offer-logo{
    flex:0 0 200px;
    width:200px;
    height:96px;
    padding:12px 14px;
  }
  .offer-middle{
    padding:0;
  }
  .offer-right{
    flex:1 0 100%;
    align-items:stretch;
  }
  .offer-right .btn{
    width:100%;
    min-width:0;
    height:48px;
  }
  .offer-review-link{
    text-align:left;
  }
}
  .card{
    padding:16px;
    border:1px solid var(--border);
    border-radius:16px;
    background: var(--card);
  }
  .card--strong{
    background: var(--card-strong);
  }
  .card__title{
    font-weight:800;
    margin-bottom:6px;
  }
  .card__meta{
    color:var(--muted);
    font-size:13px;
    margin-bottom:12px;
  }

  /* Scroll to top button */
  .scroll-top{
    position:fixed;
    right:16px;
    bottom:calc(16px + env(safe-area-inset-bottom, 0));
    width:48px;
    height:48px;
    border-radius:50%;
    border:1px solid var(--theme-active-btn-bg, var(--btn-bg));
    background: var(--theme-active-btn-bg, var(--btn-bg));
    color: var(--theme-active-btn-txt-color, #fff);
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 10px 20px rgba(0,0,0,0.18);
    cursor:pointer;
    transition: opacity .25s ease, transform .25s ease, visibility .25s ease;
    opacity:0;
    visibility:hidden;
    transform: translateY(8px);
    pointer-events:none;
    z-index:120;
  }
  .scroll-top svg{ display:block; }
  .scroll-top.is-visible{
    opacity:1;
    visibility:visible;
    transform: translateY(0);
    pointer-events:auto;
  }
  @media screen and (max-width: 768px){
    .scroll-top{
      right:12px;
      bottom:calc(14px + env(safe-area-inset-bottom, 0));
      width:46px;
      height:46px;
    }
  }
  /* Cookie banner */
  .cookie-banner{
    position:fixed;
    bottom:0;
    left:0;
    right:0;
    background: var(--surface);
    border-top:1px solid var(--border);
    box-shadow:0 -10px 20px rgba(0,0,0,0.08);
    padding:8px 0;
    opacity:0;
    visibility:hidden;
    transform: translateY(10px);
    transition: opacity .2s ease, transform .2s ease, visibility .2s ease;
    z-index:150;
  }
  .cookie-banner.is-visible{
    opacity:1;
    visibility:visible;
    transform: translateY(0);
  }
  .cookie-banner__inner{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:10px;
    font-size:13px;
    flex-wrap:wrap;
    color:var(--muted);
  }
  .cookie-banner__title{
    font-weight:800;
    margin:0 8px 0 0;
    color:var(--theme-page-txt-color, var(--text));
    font-size:13px;
    display:inline-block;
  }
  .cookie-banner__text p{
    margin:0;
    line-height:1.4;
    display:inline;
  }
  .cookie-banner__link{
    color:var(--theme-default-elements-color, var(--accent));
    text-decoration:underline;
  }
  .cookie-banner__text{
    display:flex;
    align-items:center;
    gap:6px;
    flex:1 1 auto;
    flex-wrap:wrap;
  }
  .cookie-banner__actions{
    display:flex;
    gap:6px;
    flex-shrink:0;
  }
  .cookie-banner__btn{
    padding:8px 12px;
    min-height:36px;
    font-size:13px;
    font-weight:700;
    text-transform:none;
  }
  .cookie-banner__btn--accept{
    background: var(--surface-alt);
    color: var(--theme-page-txt-color, var(--text));
    border:1px solid var(--border);
  }
  .cookie-banner__btn--reject{
    background: transparent;
    color: var(--theme-outline-btn-text-color, var(--btn-ghost-text));
    border:1px solid var(--theme-outline-btn-border-color, var(--btn-ghost-border));
  }
  .cookie-banner__btn:hover{
    opacity:0.9;
  }
  @media screen and (min-width: 769px){
    .cookie-banner__inner{
      flex-wrap:nowrap;
    }
  }
  @media screen and (max-width: 768px){
    .cookie-banner__actions{
      width:100%;
      justify-content:flex-start;
      flex-wrap:wrap;
    }
    .cookie-banner__btn{
      width:auto;
    }
  }
  
  /* Buttons */
  .btn{
    padding:13px 24px;
    border-radius:10px;
    text-decoration:none;
    text-transform:uppercase;
    font-size:16px;
    transition: all 0.3s;
    display:inline-flex;
    align-items:center;
    gap:10px;
    justify-content:center;
    font-weight:700;
    border:2px solid transparent;
    background: transparent;
    color: var(--theme-page-txt-color, var(--text));
  }
  .btn svg{ height:18px; width:auto; }
  .btn:hover{ cursor:pointer; }
  .btn--active{
    background-color: var(--theme-active-btn-bg, var(--btn-bg));
    color: var(--theme-active-btn-txt-color, var(--btn-text));
    border:2px solid var(--theme-active-btn-bg, var(--btn-bg));
  }
  .btn--active:hover{
    opacity:0.9;
    text-decoration:none;
  }
  .btn--transparrent,
  .btn--ghost{
    color: var(--theme-outline-btn-text-color, var(--btn-ghost-text));
    background-color: transparent;
    border:2px solid var(--theme-outline-btn-border-color, var(--btn-ghost-border));
  }
  .btn--transparrent:hover,
  .btn--ghost:hover{
    background-color: var(--theme-outline-btn-hover-bg, var(--btn-hover-bg));
    color: var(--theme-outline-btn-hover-txt, var(--btn-text));
    text-decoration:none;
    border:2px solid var(--theme-outline-btn-hover-bg, var(--btn-hover-bg));
  }
  .btn--bookmaker{
    color: var(--theme-bookmaker-btn-txt-color, var(--btn-text));
    background-color: var(--theme-bookmaker-btn-bg, var(--btn-bg));
    border:2px solid var(--theme-bookmaker-btn-bg, var(--btn-bg));
    text-decoration:none;
  }
  .btn--bookmaker:hover{ opacity:0.9; }
  .btn--small{ padding:9px 12px; width:100%; }
  
  .faq{ display:grid; gap:10px; }
  .faq__item{
    border:1px solid var(--border);
    border-radius:14px;
    background: var(--card);
    overflow:hidden;
  }
  .faq__item summary{
    cursor:pointer;
    padding:14px 16px;
    font-weight:700;
    list-style:none;
  }
  .faq__item summary::-webkit-details-marker{ display:none; }
  .faq__body{
    padding:0 16px 14px;
    color:var(--muted);
  }
  
  .footer{
    border-top:1px solid var(--border);
    padding:18px 0;
    color:var(--muted);
  }
  .footer__inner{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:8px;
    font-size:14px;
  }
  .footer-links-row{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:12px;
    width:100%;
  }
  .footer__links{ display:flex; gap:12px; }
  .footer-lang-row{
    display:flex;
    justify-content:center;
    width:100%;
    margin-top:0.3rem;
  }
  .footer-lang{
    display:flex;
    flex-wrap:wrap;
    gap:0.4rem 0.6rem;
    width:100%;
    justify-content:center;
    align-items:center;
    font-size:0.75rem;
    line-height:1;
    max-width:100%;
  }
  .footer-lang__item{
    display:inline-flex;
    align-items:center;
    gap:0.35rem;
    padding:0.2rem 0.35rem;
    color:var(--muted);
    text-decoration:none;
    border-radius:0.4rem;
    white-space:nowrap;
    line-height:1;
  }
  .footer-lang__item:hover{
    color:var(--text);
    background:var(--surface-alt);
  }
  .footer-lang__flag{
    height:0.8em !important;
    width:auto !important;
    max-height:0.8em !important;
    max-width:1.1em !important;
    object-fit:cover;
    border-radius:0.15em;
    display:inline-block;
    flex-shrink:0;
    vertical-align:middle;
  }
  .footer-lang .lang-code{
    font-size:0.85em;
    letter-spacing:0.04em;
    text-transform:uppercase;
    opacity:0.85;
  }
  .footer__legal{
    border-top:1px solid var(--border);
    padding:16px 0;
    margin-top:16px;
  }
  .footer__age-notice{
    font-size:12px;
    color:var(--muted);
    margin:0 0 10px 0;
    line-height:1.4;
    text-align:center;
  }
  .footer__disclaimer{
    font-size:12px;
    color:var(--muted);
    margin:8px 0;
    line-height:1.5;
  }
  .footer__responsible-links{
    margin-top:6px;
  }
  .footer__responsible-links a{
    color:var(--muted);
    text-decoration:underline;
  }
  .footer__responsible-links a:hover{
    color:var(--theme-default-elements-color, var(--accent));
  }
@media screen and (max-width: 768px){
  .footer__inner{
    flex-direction:column;
    align-items:center;
    gap:10px;
    font-size:13px;
    text-align:center;
  }
  .footer-links-row{
    flex-direction:column;
    align-items:center;
  }
  .footer__links{
    width:100%;
    display:flex;
    flex-wrap:wrap;
    justify-content:center;
    gap:8px 12px;
  }
  .footer__links a{
    display:inline-block;
  }
}
  
  @media (max-width: 860px){
    .hero__inner{ grid-template-columns: 1fr; }
    .grid{ grid-template-columns: 1fr; }
  .layout{
    grid-template-columns:1fr;
    gap:18px;
  }
  .layout__toc{ order:-1; }
  .toc{ position:static; }
  .media-row,
  .media-row--reverse{
    flex-direction:column;
    align-items:stretch;
  }
  .media-row__media{ width:100%; }
  .media-row__text{ width:100%; }
  }

@media screen and (max-width: 768px){
  .nav--desktop{ display:none; }
  .nav-burger{ display:block; }
}

/* Legal pages */
.page-legal .legal-content{
  max-width:800px;
  margin:0 auto;
  padding:2rem 0;
}
.page-legal .legal-content h1{
  margin-bottom:1.5rem;
}
.page-legal .legal-content h2{
  margin-top:2rem;
  margin-bottom:1rem;
}
.page-legal .legal-content ul{
  margin:1rem 0;
  padding-left:1.5rem;
}
.page-legal .legal-content li{
  margin-bottom:0.5rem;
  line-height:1.6;
}

/* Author portrait */
.author-portrait{
  display:flex;
  justify-content:center;
  margin:1.5rem 0 2rem;
}
.author-portrait__img{
  width:180px;
  height:180px;
  border-radius:50%;
  object-fit:cover;
  border:4px solid var(--theme-default-elements-color, var(--accent));
  box-shadow:0 4px 20px rgba(0,0,0,0.3);
}
.author-meta{
  background:var(--surface-alt, rgba(18,26,43,.55));
  padding:1rem 1.5rem;
  border-radius:8px;
  margin-bottom:2rem;
}
.author-meta p{
  margin:0.3rem 0;
  font-size:15px;
}
.author-meta a{
  font-weight:400;
}
@media screen and (max-width: 600px){
  .author-portrait__img{
    width:140px;
    height:140px;
  }
}

/* Author Card (homepage mini-card) */
.author-card-section{
  margin-top:2rem;
}
.author-card{
  display:flex;
  align-items:flex-start;
  gap:1.5rem;
  background:var(--surface-alt, rgba(18,26,43,.55));
  border-radius:12px;
  padding:1.5rem;
  border:1px solid var(--border, rgba(255,255,255,.08));
}
.author-card__photo{
  flex-shrink:0;
}
.author-card__img{
  width:100px;
  height:100px;
  border-radius:50%;
  object-fit:cover;
  border:3px solid var(--theme-default-elements-color, var(--accent));
}
.author-card__content{
  flex:1;
  min-width:0;
}
.author-card__name{
  font-size:1.25rem;
  font-weight:700;
  margin-bottom:0.5rem;
  color:var(--theme-page-txt-color, var(--text));
}
.author-card__role{
  font-weight:400;
  font-size:0.95rem;
  color:var(--muted);
}
.author-card__bio{
  font-size:0.95rem;
  line-height:1.6;
  color:var(--muted);
  margin:0 0 0.75rem 0;
}
.author-card__link{
  font-size:0.9rem;
  font-weight:600;
  color:var(--theme-default-elements-color, var(--accent));
  text-decoration:none;
}
.author-card__link:hover{
  text-decoration:underline;
}

/* Internal cross-linking cards */
.internal-links-block{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:1rem;
}
.internal-link-card{
  display:block;
  padding:1.25rem;
  border:1px solid var(--border);
  border-radius:12px;
  background:var(--card);
  text-decoration:none;
  color:var(--text);
  transition:box-shadow .2s, border-color .2s;
}
.internal-link-card:hover{
  border-color:var(--theme-default-elements-color, var(--accent));
  box-shadow:0 2px 12px rgba(0,0,0,.08);
}
.internal-link-card strong{
  display:block;
  font-size:1.05rem;
  margin-bottom:.35rem;
  color:var(--theme-default-elements-color, var(--accent));
}
.internal-link-card p{
  font-size:.9rem;
  margin:0;
  color:var(--muted);
}
@media screen and (max-width: 600px){
  .author-card{
    flex-direction:column;
    align-items:center;
    text-align:center;
    gap:1rem;
    padding:1.25rem;
  }
  .author-card__img{
    width:80px;
    height:80px;
  }
  .author-card__name{
    font-size:1.1rem;
  }
}

/* ===============================
   RTL (Arabic + Urdu) SUPPORT
   DO NOT REMOVE
   =============================== */
html[lang="ar"],
html[lang^="ar-"],
html[lang="ur"],
html[lang^="ur-"]{
  direction:rtl;
  text-align:right;
}
html[lang="ar"] .header__inner,
html[lang^="ar-"] .header__inner,
html[lang="ur"] .header__inner,
html[lang^="ur-"] .header__inner{
  flex-direction:row-reverse;
}
html[lang="ar"] .nav--desktop,
html[lang^="ar-"] .nav--desktop,
html[lang="ur"] .nav--desktop,
html[lang^="ur-"] .nav--desktop{
  flex-direction:row-reverse;
}
html[lang="ar"] .welcome-section-hero__buttons,
html[lang^="ar-"] .welcome-section-hero__buttons,
html[lang="ur"] .welcome-section-hero__buttons,
html[lang^="ur-"] .welcome-section-hero__buttons{
  flex-direction:row-reverse;
}
html[lang="ar"] .bookmakers-list__info,
html[lang^="ar-"] .bookmakers-list__info,
html[lang="ur"] .bookmakers-list__info,
html[lang^="ur-"] .bookmakers-list__info{
  direction:rtl;
}
html[lang="ar"] .bookmakers-list__item .btn,
html[lang^="ar-"] .bookmakers-list__item .btn,
html[lang="ur"] .bookmakers-list__item .btn,
html[lang^="ur-"] .bookmakers-list__item .btn{
  direction:rtl;
}
html[lang="ar"] .footer__links,
html[lang^="ar-"] .footer__links,
html[lang="ur"] .footer__links,
html[lang^="ur-"] .footer__links{
  direction:rtl;
}
html[lang="ar"] .table-scroll,
html[lang^="ar-"] .table-scroll,
html[lang="ur"] .table-scroll,
html[lang^="ur-"] .table-scroll{
  direction:rtl;
  overflow-x:auto;
}
html[lang="ar"] .author-card,
html[lang^="ar-"] .author-card,
html[lang="ur"] .author-card,
html[lang^="ur-"] .author-card{
  direction:rtl;
  text-align:right;
}
html[lang="ar"] .stat-row,
html[lang^="ar-"] .stat-row,
html[lang="ur"] .stat-row,
html[lang^="ur-"] .stat-row{
  direction:rtl;
}
html[lang="ar"] .toc,
html[lang^="ar-"] .toc,
html[lang="ur"] .toc,
html[lang^="ur-"] .toc{
  direction:rtl;
  text-align:right;
}
html[lang="ar"] .faq summary,
html[lang^="ar-"] .faq summary,
html[lang="ur"] .faq summary,
html[lang^="ur-"] .faq summary{
  direction:rtl;
  text-align:right;
}
html[lang="ar"] .section__content,
html[lang^="ar-"] .section__content,
html[lang="ur"] .section__content,
html[lang^="ur-"] .section__content{
  direction:rtl;
  text-align:right;
}
html[lang="ar"] .legal-content,
html[lang^="ar-"] .legal-content,
html[lang="ur"] .legal-content,
html[lang^="ur-"] .legal-content{
  direction:rtl;
  text-align:right;
}

/*
 * DO NOT REMOVE.
 * Sticky bottom CTA bar — factory default conversion component.
 * Mobile only, theme-aware. Uses localized text, primary_url, sponsored rel.
 */
.sticky-cta{ display:none; }
@media screen and (max-width:768px){
  .sticky-cta{
    display:block;
    position:fixed;
    bottom:0; left:0; right:0;
    z-index:130;
    background:var(--theme-section-secondary-color, var(--surface));
    border-top:1px solid var(--border);
    box-shadow:0 -4px 16px rgba(0,0,0,.2);
    padding:8px 12px;
    padding-bottom:calc(8px + env(safe-area-inset-bottom, 0px));
  }
  .sticky-cta__inner{
    display:flex;
    align-items:center;
    gap:10px;
  }
  .sticky-cta__logo{
    width:30px; height:30px;
    border-radius:6px;
    flex-shrink:0;
    object-fit:contain;
  }
  .sticky-cta__text{
    flex:1 1 0%;
    font-size:12.5px;
    font-weight:500;
    color:var(--theme-page-txt-color, var(--muted));
    line-height:1.3;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
  }
  .sticky-cta__btn.btn{
    flex-shrink:0;
    padding:9px 14px;
    font-size:12px;
    white-space:nowrap;
    text-decoration:none;
    border-radius:8px;
    min-height:unset;
  }
  body{ padding-bottom:56px; }
}
html[lang="ar"] .sticky-cta__inner,
html[lang^="ar-"] .sticky-cta__inner,
html[lang="ur"] .sticky-cta__inner,
html[lang^="ur-"] .sticky-cta__inner{
  direction:rtl;
}

