/* =========================================
   VAVADA-LIKE UI — styles.css
   ========================================= */

:root{
  --brand-600:#801F3E;
  --brand-500:#99284b;

  --accent-500:#FBC121;
  --accent-400:#ffd56a;

  --neon-violet:#6E58FF;

  --bg-950:#0B0D14;
  --bg-900:#0F1320;
  --bg-850:#12172A;
  --bg-800:#161D35;
  --bg-750:#1B2443;

  --text-100:#EAF0FF;
  --text-200:#C9D4F2;
  --text-300:#9FB0D9;
  --text-500:#5F709E;

  --border-500:rgba(255,255,255,.10);
  --border-600:rgba(255,255,255,.14);

  --shadow-sm:0 6px 16px rgba(0,0,0,.30);
  --shadow-md:0 10px 30px rgba(0,0,0,.45);

  --glow-gold:0 0 0 1px rgba(251,193,33,.35), 0 10px 30px rgba(251,193,33,.12);
  --glow-violet:0 0 0 1px rgba(110,88,255,.35), 0 10px 30px rgba(110,88,255,.14);

  --r-10:10px;
  --r-12:12px;
  --r-14:14px;
  --r-16:16px;
  --r-pill:999px;

  --sp-8:8px;
  --sp-12:12px;
  --sp-16:16px;
  --sp-20:20px;
  --sp-24:24px;
  --sp-32:32px;
  --sp-40:40px;
  --sp-56:56px;

  --container:1160px;

  --ease-out:cubic-bezier(.2,.9,.2,1);
  --dur-1:120ms;
  --dur-2:180ms;

  --grad-hero:
    radial-gradient(900px 500px at 15% 10%, rgba(110,88,255,.22), transparent 55%),
    radial-gradient(700px 450px at 80% 0%, rgba(251,193,33,.18), transparent 60%),
    radial-gradient(900px 650px at 60% 90%, rgba(128,31,62,.20), transparent 55%);
  --grad-card:linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,0));
}

/* Reset */
*,*::before,*::after{box-sizing:border-box}
html,body{height:100%}
body{
  margin:0;
  font-family:"Inter",system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;
  color:var(--text-100);
  background:var(--bg-900);
  background-image:var(--grad-hero);
  background-attachment:fixed;
  padding-top:72px; /* место под фиксированный хедер */
}
img{max-width:100%;display:block;height:auto}
a{color:inherit;text-decoration:none}
a:hover{text-decoration:underline;text-decoration-color:rgba(251,193,33,.8)}
:focus-visible{outline:2px solid rgba(251,193,33,.85);outline-offset:2px}

.container{width:min(100% - 32px, var(--container));margin:0 auto}

/* Typography */
h1,h2,h3,h4{margin:0 0 var(--sp-12);line-height:1.15;letter-spacing:-0.02em}
h1{font-size:clamp(28px, 3.2vw, 44px)}
h2{font-size:clamp(22px, 2.4vw, 34px)}
h3{font-size:20px}
h4{font-size:18px}
p{margin:0 0 var(--sp-16);color:var(--text-200);line-height:1.6}
.muted{color:var(--text-300)}
.mt-16{margin-top:var(--sp-16)}
.mt-24{margin-top:var(--sp-24)}

/* Buttons */
.btn{
  display:inline-flex;align-items:center;justify-content:center;
  height:44px;padding:0 16px;border-radius:var(--r-12);
  border:1px solid transparent;background:var(--bg-750);
  color:var(--text-100);cursor:pointer;user-select:none;
  box-shadow:var(--shadow-sm);
  transition:transform var(--dur-2) var(--ease-out),
            box-shadow var(--dur-2) var(--ease-out),
            filter var(--dur-2) var(--ease-out),
            background var(--dur-2) var(--ease-out),
            border-color var(--dur-2) var(--ease-out);
}
.btn:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}
.btn:active{transform:translateY(0)}
.btn--primary{
  background:linear-gradient(180deg, var(--accent-500), #e7a90a);
  color:#1b1b1b;
  box-shadow:var(--glow-gold);
}
.btn--ghost{
  background:transparent;
  border-color:var(--border-600);
  box-shadow:none;
}
.btn--ghost:hover{background:rgba(255,255,255,.04)}
.btn--sm{height:36px;padding:0 12px;border-radius:var(--r-10);font-size:14px}

/* Card */
.card{
  background:var(--bg-800);
  background-image:var(--grad-card);
  border:1px solid var(--border-500);
  border-radius:var(--r-16);
  box-shadow:var(--shadow-sm);
}
.card__bd{padding:var(--sp-20)}
.card--tile{
  transition:transform var(--dur-2) var(--ease-out),
            box-shadow var(--dur-2) var(--ease-out),
            border-color var(--dur-2) var(--ease-out);
}
.card--tile:hover{
  transform:translateY(-2px);
  border-color:rgba(251,193,33,.28);
  box-shadow:var(--shadow-md), var(--glow-violet);
}

/* Header */
.header{
  position:fixed;top:0;left:0;right:0;z-index:50;
  backdrop-filter:blur(10px);
  background:rgba(15,19,32,.72);
  border-bottom:1px solid var(--border-500);
}
.header__row{
  height:72px;
  display:grid;
  grid-template-columns:auto 1fr auto;
  align-items:center;
  gap:16px;
}
.header__logo img{height:40px;width:auto}

.header__nav{display:flex;gap:8px;align-items:center;justify-content:center}
.nav__link{
  padding:10px 12px;border-radius:var(--r-10);
  color:var(--text-200);
  transition:background var(--dur-2) var(--ease-out), color var(--dur-2) var(--ease-out);
  white-space:nowrap;
}
.nav__link:hover{background:rgba(255,255,255,.04);color:var(--text-100)}

.header__right{display:flex;gap:12px;align-items:center;justify-content:flex-end}

/* Language switcher */
.lang{position:relative}
.lang__current{
  display:flex;align-items:center;gap:8px;
  padding:10px 12px;border-radius:var(--r-12);
  border:1px solid var(--border-500);
  background:rgba(255,255,255,.03);
  cursor:pointer;
}
.lang__code{font-weight:800;letter-spacing:.06em}
.lang__chev{opacity:.85}

.lang__dropdown{
  position:absolute;right:0;top:calc(100% + 10px);
  min-width:220px;
  background:rgba(18,23,42,.98);
  border:1px solid var(--border-600);
  border-radius:var(--r-14);
  box-shadow:var(--shadow-md);
  padding:8px;
  display:none;
}
.lang.is-open .lang__dropdown{display:block}
.lang__item{
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 10px;border-radius:var(--r-12);
  cursor:pointer;
  transition:background var(--dur-2) var(--ease-out);
}
.lang__item:hover{background:rgba(255,255,255,.05)}
.lang__name{color:var(--text-200);font-size:14px}

/* Burger */
.burger{
  width:42px;height:42px;border-radius:var(--r-12);
  border:1px solid var(--border-500);
  background:rgba(255,255,255,.03);
  display:none;align-items:center;justify-content:center;
  gap:5px;flex-direction:column;
  cursor:pointer;
}
.burger span{
  display:block;width:18px;height:2px;background:rgba(234,240,255,.9);
  border-radius:99px;
}

/* Mobile menu */
.mobile-menu{display:none;position:absolute;left:0;right:0;top:72px}
.mobile-menu.is-open{display:block}
.mobile-menu::before{
  content:"";position:absolute;left:0;right:0;top:0;bottom:0;
  background:rgba(0,0,0,.35);
}
.mobile-menu__panel{
  position:relative;
  width:min(320px, calc(100% - 32px));
  margin:12px auto 0;
  background:rgba(18,23,42,.98);
  border:1px solid var(--border-600);
  border-radius:var(--r-16);
  box-shadow:var(--shadow-md);
  padding:12px;
}
.mobile-link{
  display:block;
  padding:12px 12px;border-radius:var(--r-12);
  color:var(--text-100);
}
.mobile-link:hover{background:rgba(255,255,255,.05);text-decoration:none}

/* Intro */
.intro{
  padding:clamp(28px, 4vw, 56px) 0;
  background-image:url("images/bg.svg");
  background-repeat:repeat-y;
  background-position:center top;
}
.intro__title{text-align:center;margin-bottom:10px}
.intro__subtitle{text-align:center;max-width:860px;margin:0 auto var(--sp-24);color:var(--text-200);font-size:18px}

.intro__grid{
  display:grid;
  grid-template-columns: .9fr 1.1fr;
  gap:var(--sp-24);
  align-items:start;
}
.hero-card{
  padding:var(--sp-20);
  border-radius:var(--r-16);
  border:1px solid var(--border-500);
  background:rgba(22,29,53,.65);
  box-shadow:var(--shadow-md);
}
.hero-card__img{border-radius:var(--r-14)}
.intro__offer{margin:12px 0 14px}

.badge{
  display:inline-flex;align-items:center;height:24px;padding:0 10px;
  border-radius:var(--r-pill);font-size:12px;color:var(--text-100);
  border:1px solid var(--border-500);background:rgba(255,255,255,.04);
}
.badge--gold{border-color:rgba(251,193,33,.35);background:rgba(251,193,33,.10)}

.promo{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:10px 12px;
  align-items:center;
  margin:14px 0 18px;
}
.promo__label{color:var(--text-300);font-size:14px}
.promo__code{
  display:flex;align-items:center;justify-content:space-between;
  gap:10px;
  width:100%;
  height:44px;
  padding:0 14px;
  border-radius:var(--r-12);
  border:1px solid rgba(251,193,33,.35);
  background:rgba(251,193,33,.10);
  cursor:pointer;
}
.promo__text{font-weight:900;letter-spacing:.08em; color: #e7a90a;}
.promo__copy{opacity:.9; color: #e7a90a;}
.promo__hint{grid-column:1 / -1;min-height:18px;color:var(--accent-400);font-size:13px}
.promo__code--small{height:38px;border-radius:var(--r-10);padding:0 12px}

.cta-row{display:flex;gap:10px;justify-content:center}
.cta-row .btn{width:45%}
.howto-btn.cta-row .btn{width:90%; margin-top:10px;}
.cta-row--single .btn{width:100%}

/* Section general */
.section{padding:var(--sp-40) 0}
.section__head{margin-bottom:var(--sp-20)}
.section__sub{margin:0;color:var(--text-200)}

/* Divider */
.section-divider{
  display:flex;align-items:center;justify-content:center;
  gap:12px;margin:22px auto;
  opacity:.9;
}
.section-divider span{
  height:1px;width:140px;
  background:linear-gradient(90deg, transparent, rgba(251,193,33,.45), transparent);
}
.section-divider i{
  width:28px;height:28px;border-radius:50%;
  display:flex;align-items:center;justify-content:center;
  border:1px solid rgba(251,193,33,.25);
  background:rgba(255,255,255,.03);
  box-shadow:var(--glow-gold);
  font-style:normal;
}
.section-divider--wide{margin:0 auto; padding:0}

/* Table */
.table{
  width:100%;
  border-collapse:separate;border-spacing:0;
  border:1px solid var(--border-500);
  border-radius:var(--r-14);
  overflow:hidden;
  background:var(--bg-850);
  margin-top:var(--sp-16);
}
.table th,.table td{
  padding:12px 14px;
  border-bottom:1px solid var(--border-500);
  color:var(--text-200);
}
.table th{color:var(--text-100);text-align:left;background:rgba(255,255,255,.03)}
.table tr:last-child td{border-bottom:0}

/* Notes / Alerts */
.note{
  margin-top:var(--sp-16);
  padding:14px 14px;
  border-radius:var(--r-14);
  border:1px solid rgba(110,88,255,.35);
  background:rgba(110,88,255,.10);
}
.note__title{font-weight:800;margin-bottom:6px}
.note__text{color:var(--text-200)}
.alert{
  padding:14px 14px;
  border-radius:var(--r-14);
  border:1px solid var(--border-500);
  background:rgba(255,255,255,.03);
  color:var(--text-200);
}
.alert--warn{border-color:rgba(251,193,33,.30);background:rgba(251,193,33,.10)}
.alert--ok{border-color:rgba(34,197,94,.35);background:rgba(34,197,94,.10)}

/* How block */
.how{
  display:grid;
  grid-template-columns: 1fr 1fr;
  gap:var(--sp-24);
}
.shot__btn{
  width:100%;
  border:0;background:transparent;padding:0;cursor:pointer;
  text-align:left;
}
.shot__btn img{
  border-radius:var(--r-14);
  border:1px solid var(--border-500);
  margin: auto;
}
.shot__zoom{
  display:inline-block;margin-top:10px;
  font-size:13px;color:var(--text-300);
}
.steps{margin:0;padding-left:20px;color:var(--text-200);line-height:1.7}
.inline-code{
  display:inline-block;
  padding:2px 8px;border-radius:10px;
  border:1px solid rgba(251,193,33,.35);
  background:rgba(251,193,33,.10);
  font-weight:800;letter-spacing:.06em;
}

/* Terms */
.terms-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:var(--sp-16);
}
.term p{margin:0}

/* More casinos */
.more-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:var(--sp-16);
}
.more__top{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}
.more__name{font-weight:900}
.rating{display:flex;align-items:center;gap:4px;color:var(--accent-500)}
.star--muted{opacity:.25}
.rating__val{color:var(--text-200);font-size:13px;margin-left:6px}

.more__bonus{
  border:1px solid rgba(251,193,33,.25);
  background:rgba(251,193,33,.08);
  border-radius:var(--r-14);
  padding:14px;
  text-align:center;
  margin-bottom:14px;
}
.more__bonusTitle{color:var(--text-300);font-size:13px;margin-bottom:6px}
.more__bonusVal{font-size:20px;font-weight:900}
.more__bottom{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:10px;
  align-items:center;
}

/* FAQ */
.faq{display:grid;gap:10px}
.faq__item{
  border:1px solid var(--border-500);
  border-radius:var(--r-14);
  background:rgba(255,255,255,.03);
}
.faq__q{
  width:100%;
  text-align:left;
  padding:14px 14px;
  border:0;background:transparent;
  color:var(--text-100);
  font-weight:800;
  cursor:pointer;
}
.faq__a{padding:0 14px 14px;color:var(--text-200);line-height:1.6}

/* Footer */
.footer{
  border-top:1px solid var(--border-500);
  background:rgba(15,19,32,.55);
  padding:var(--sp-32) 0;
}
.footer__grid{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  gap:var(--sp-24);
  align-items:start;
}
.footer__logo{height:34px;width:auto;margin-bottom:10px}
.footer__title{font-weight:900;margin-bottom:10px}
.footer__link{display:block;padding:6px 0;color:var(--text-200)}
.footer__text{margin:0 0 10px;color:var(--text-200)}
.footer__small{margin:0;color:var(--text-300);font-size:13px}
.footer__badge{
  display:inline-flex;align-items:center;justify-content:center;
  width:44px;height:28px;border-radius:var(--r-10);
  border:1px solid rgba(251,193,33,.35);
  background:rgba(251,193,33,.10);
  font-weight:900;
}

/* Lightbox */
.lightbox{
  position:fixed;inset:0;
  display:none;
  align-items:center;justify-content:center;
  z-index:100;
}
.lightbox.is-open{display:flex}
.lightbox-backdrop{
  position:absolute;inset:0;
  background:rgba(0,0,0,.6);
}
.lightbox-panel{
  position:relative;
  width:min(920px, calc(100% - 32px));
  background:rgba(18,23,42,.98);
  border:1px solid var(--border-600);
  border-radius:var(--r-16);
  box-shadow:var(--shadow-md);
  padding:14px;
}
.lightbox-close{
  position:absolute;top:10px;right:10px;
  width:40px;height:40px;border-radius:var(--r-12);
  border:1px solid var(--border-500);
  background:rgba(255,255,255,.03);
  color:var(--text-100);
  cursor:pointer;
}
.lightbox-img{width:100%;border-radius:var(--r-14);border:1px solid var(--border-500)}

/* Responsive */
@media (max-width: 980px){
  .header__nav{display:none}
  .burger{display:flex}
  .intro__grid{grid-template-columns:1fr}
  .how{grid-template-columns:1fr}
  .terms-grid{grid-template-columns:repeat(2, 1fr)}
  .more-grid{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
}

/* Mobile special header layout */
@media (max-width: 560px){
  body{padding-top:120px}
  .header__row{
    height:auto;
    padding:10px 0 12px;
    grid-template-columns: 1fr auto;
    grid-template-areas:
      "logo logo"
      "lang burger"
      "cta  burger";
    row-gap:10px;
  }
  .header__logo{grid-area:logo;justify-self:center}
  .header__right{
      justify-content: center;
  }
  .lang__dropdown{
    right: -140px;  
  }
  .lang{grid-area:lang;justify-self:center}
  .header__cta{grid-area:cta;justify-self:center;width:50%}
  .burger{grid-area:burger;justify-self:end}
  .mobile-menu{top:120px}
  .cta-row .btn{width:48%}
}