/* ============================================================
   main.css v2.1 — Compiled from SCSS
   Regenerate: sass assets/scss/main.scss assets/css/main.css --style=compressed --no-source-map

   COLOUR PALETTE (5 approved colours only):
     --iz-black : #070606   background
     --iz-white : #EFE9DA   text
     --iz-gold  : #CB9008   CTA / buttons / links
     --iz-hover : #FDB40D   hover + active accent
     --iz-red   : #B81A1A   danger / error only
============================================================ */

/* ── CSS Custom Properties (tokens) ─── every value in a var ─ */
:root{
  /* Colors */
  --iz-black:#070606;--iz-white:#EFE9DA;--iz-gold:#CB9008;--iz-hover:#FDB40D;--iz-red:#B81A1A;
  --iz-bg:#070606;--iz-text:#EFE9DA;--iz-accent:#CB9008;--iz-danger:#B81A1A;
  --iz-surface:rgba(239,233,218,.05);--iz-surface-hover:rgba(239,233,218,.09);
  --iz-border:rgba(239,233,218,.10);--iz-border-gold:rgba(203,144,8,.30);
  --iz-overlay-light:rgba(7,6,6,.45);--iz-overlay-mid:rgba(7,6,6,.62);
  --iz-overlay-dark:rgba(7,6,6,.82);--iz-hero-text-bg:rgba(7,6,6,.55);
  /* Fonts */
  --iz-font-heading:'Optima','Palatino Linotype',serif;
  --iz-font-body:'Palatino','Palatino Linotype','Book Antiqua',serif;
  --iz-font-mono:'Courier New',Courier,monospace;
  /* Font weights */
  --iz-fw-regular:400;--iz-fw-medium:500;--iz-fw-semi:600;--iz-fw-bold:700;
  /* Fluid font sizes */
  --iz-fs-2xs:clamp(.625rem,.56rem + .16vw,.75rem);
  --iz-fs-xs:clamp(.75rem,.68rem + .17vw,.875rem);
  --iz-fs-sm:clamp(.875rem,.79rem + .21vw,1rem);
  --iz-fs-base:clamp(1rem,.90rem + .26vw,1.125rem);
  --iz-fs-md:clamp(1.125rem,.99rem + .35vw,1.375rem);
  --iz-fs-lg:clamp(1.25rem,1.07rem + .46vw,1.625rem);
  --iz-fs-xl:clamp(1.5rem,1.22rem + .72vw,2.125rem);
  --iz-fs-2xl:clamp(2rem,1.58rem + 1.08vw,3rem);
  --iz-fs-3xl:clamp(2.5rem,1.88rem + 1.59vw,4.125rem);
  --iz-fs-hero:clamp(3rem,2.14rem + 2.21vw,5.5rem);
  /* Spacing */
  --iz-sp-xs:clamp(.5rem,.43rem + .18vw,.75rem);--iz-sp-sm:clamp(.75rem,.64rem + .27vw,1rem);
  --iz-sp-md:clamp(1rem,.83rem + .44vw,1.5rem);--iz-sp-lg:clamp(1.5rem,1.21rem + .74vw,2.25rem);
  --iz-sp-xl:clamp(2rem,1.55rem + 1.15vw,3.25rem);--iz-sp-2xl:clamp(3rem,2.26rem + 1.9vw,5rem);
  --iz-sp-4xl:clamp(5rem,3.5rem + 3.85vw,10rem);
  /* Radii */
  --iz-radius-sm:clamp(.5rem,.43rem + .18vw,.75rem);--iz-radius-md:clamp(.75rem,.64rem + .27vw,1.125rem);
  --iz-radius-lg:clamp(1rem,.83rem + .44vw,1.5rem);--iz-radius-xl:clamp(1.5rem,1.21rem + .74vw,2.5rem);
  --iz-radius-full:62.5rem;
  /* Transitions */
  --iz-ease-fast:150ms ease;--iz-ease-base:300ms ease;--iz-ease-slow:600ms cubic-bezier(.16,1,.3,1);
  /* Nav */
  --iz-nav-height:clamp(3.5rem,3rem + 1.28vw,5rem);
  /* Game */
  --iz-game-item-h:80px;
  --iz-wheel-seg-odd-bg:#CB9008;--iz-wheel-seg-odd-text:#070606;
  --iz-wheel-seg-even-bg:#070606;--iz-wheel-seg-even-text:#EFE9DA;
  --iz-win-bg:#CB9008;--iz-win-text:#070606;
}

/* ── Reset ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:100%;scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}
body{background-color:var(--iz-black);color:var(--iz-white);font-family:var(--iz-font-body);font-size:var(--iz-fs-base);line-height:1.7;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body.nav-open{overflow:hidden}
img,video,svg{display:block;max-width:100%;height:auto}
a{color:inherit;text-decoration:none;transition:color var(--iz-ease-fast)}
ul,ol{list-style:none}
button{cursor:pointer;background:none;border:none;font-family:inherit;font-size:inherit;color:inherit}
input,textarea,select{font-family:inherit;font-size:inherit}
address{font-style:normal}
:focus-visible{outline:2px solid var(--iz-gold);outline-offset:3px;border-radius:var(--iz-radius-sm)}
::-webkit-scrollbar{width:.375rem}::-webkit-scrollbar-track{background:var(--iz-black)}::-webkit-scrollbar-thumb{background:var(--iz-gold);border-radius:var(--iz-radius-full)}
::selection{background:var(--iz-gold);color:var(--iz-black)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border-width:0}

/* ── Global ────────────────────────────────────────────────── */
.container{width:100%;max-width:90rem;margin-inline:auto;padding-inline:var(--iz-sp-lg)}
.section{padding-block:var(--iz-sp-4xl)}
.section__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);line-height:1.1;letter-spacing:-.01em;color:var(--iz-white);margin-bottom:var(--iz-sp-2xl)}
.section__title::after{content:'';display:block;width:3rem;height:2px;background:var(--iz-gold);margin-top:var(--iz-sp-sm)}
.prose{max-width:65ch}
.prose p{font-size:var(--iz-fs-base);line-height:1.75;color:rgba(239,233,218,.85);margin-bottom:var(--iz-sp-md)}
.prose h2,.prose h3,.prose h4{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);line-height:1.1;margin-top:var(--iz-sp-xl);margin-bottom:var(--iz-sp-sm)}
.prose a{color:var(--iz-gold);text-decoration:underline;text-underline-offset:3px}
.prose a:hover{color:var(--iz-hover)}

/* ── Scroll Animations ─────────────────────────────────────── */
[data-animate]{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}
[data-animate].is-visible{opacity:1;transform:translateY(0)}
[data-animate="fade-right"]{transform:translateX(-28px)}[data-animate="fade-right"].is-visible{transform:translateX(0)}
[data-animate="fade-left"]{transform:translateX(28px)}[data-animate="fade-left"].is-visible{transform:translateX(0)}
[data-animate="scale-up"]{transform:scale(.94)}[data-animate="scale-up"].is-visible{transform:scale(1)}
[data-delay="0.1"]{transition-delay:.1s}[data-delay="0.2"]{transition-delay:.2s}
[data-delay="0.3"]{transition-delay:.3s}[data-delay="0.4"]{transition-delay:.4s}
[data-delay="0.6"]{transition-delay:.6s}

/* ── Buttons ───────────────────────────────────────────────── */
.btn{display:inline-flex;align-items:center;gap:var(--iz-sp-xs);padding:var(--iz-sp-sm) var(--iz-sp-lg);font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;border-radius:var(--iz-radius-md);transition:background-color var(--iz-ease-base),color var(--iz-ease-base),transform 150ms ease;white-space:nowrap;cursor:pointer}
.btn:focus-visible{outline:2px solid var(--iz-gold);outline-offset:3px}
.btn:active{transform:scale(.97)}
.btn:disabled{opacity:.45;cursor:not-allowed;transform:none}
.btn--primary{background-color:var(--iz-gold);color:var(--iz-black)}
.btn--primary:hover:not(:disabled),.btn--primary:focus-visible{background-color:var(--iz-hover);color:var(--iz-black)}
.btn--outline{background-color:transparent;color:var(--iz-white);box-shadow:inset 0 0 0 1px rgba(239,233,218,.35)}
.btn--outline:hover:not(:disabled),.btn--outline:focus-visible{box-shadow:inset 0 0 0 1px var(--iz-gold);color:var(--iz-gold)}
.btn--ghost{background-color:transparent;color:var(--iz-gold)}
.btn--ghost:hover:not(:disabled){background-color:var(--iz-surface);color:var(--iz-hover)}
.btn--danger{background-color:var(--iz-red);color:var(--iz-white)}
.btn--danger:hover:not(:disabled){background-color:#cc2020}
.btn--full{width:100%;justify-content:center}
.btn--icon{padding:var(--iz-sp-sm);border-radius:var(--iz-radius-full)}
.btn--sm{padding:var(--iz-sp-xs) var(--iz-sp-md);font-size:var(--iz-fs-2xs)}

/* ── Page Loader ───────────────────────────────────────────── */
.page-loader{position:fixed;inset:0;z-index:400;background-color:var(--iz-black);display:flex;align-items:center;justify-content:center;transition:opacity .55s ease,visibility .55s ease}
.page-loader.is-hidden{opacity:0;visibility:hidden;pointer-events:none}
.page-loader__inner{display:flex;flex-direction:column;align-items:center;gap:var(--iz-sp-lg)}
.page-loader__logo img,.page-loader__logo svg{height:clamp(3rem,2.5rem + 1.28vw,5rem);width:auto}
.page-loader__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);letter-spacing:.1em}
.page-loader__bar{width:clamp(8rem,15%,15rem);height:1px;background:rgba(239,233,218,.12);border-radius:var(--iz-radius-full);overflow:hidden;position:relative}
.page-loader__bar::after{content:'';position:absolute;left:-100%;top:0;width:100%;height:100%;background:var(--iz-gold);animation:loaderBar 1.5s ease-in-out forwards}
@keyframes loaderBar{from{left:-100%}to{left:0}}

/* ── Navigation ────────────────────────────────────────────── */
.nav{position:fixed;top:0;left:0;right:0;z-index:100;height:var(--iz-nav-height);transition:background-color var(--iz-ease-base),backdrop-filter var(--iz-ease-base)}
.nav--scrolled{background-color:rgba(7,6,6,.92);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.nav__inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:90rem;margin-inline:auto;padding-inline:var(--iz-sp-lg);gap:var(--iz-sp-lg)}
.nav__logo{flex-shrink:0;display:flex;align-items:center}
.nav__logo img{height:clamp(2rem,1.7rem + .77vw,2.75rem);width:auto}
.nav__logo-text{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);letter-spacing:.06em;color:var(--iz-white)}
.nav__menu{display:flex;align-items:center;flex:1;justify-content:center}
.nav__list{display:flex;align-items:center;gap:var(--iz-sp-xl)}
.nav__list li a{font-family:var(--iz-font-heading);font-size:var(--iz-fs-sm);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.78);transition:color var(--iz-ease-fast);position:relative}
.nav__list li a::after{content:'';position:absolute;bottom:-3px;left:0;width:0;height:1px;background:var(--iz-gold);transition:width var(--iz-ease-base)}
.nav__list li a:hover,.nav__list li a.current-menu-item{color:var(--iz-gold)}
.nav__list li a:hover::after,.nav__list li a.current-menu-item::after{width:100%}
.nav__toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;z-index:201}
.nav__toggle-bar{display:block;width:100%;height:1.5px;background-color:var(--iz-white);transition:transform var(--iz-ease-base),opacity 150ms ease;transform-origin:center}
.nav-open .nav__toggle-bar:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav-open .nav__toggle-bar:nth-child(2){opacity:0}
.nav-open .nav__toggle-bar:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav__bag{position:relative;display:flex;align-items:center;justify-content:center;width:clamp(2.5rem,2.25rem + .64vw,3rem);height:clamp(2.5rem,2.25rem + .64vw,3rem);flex-shrink:0;border-radius:var(--iz-radius-full);color:var(--iz-white);transition:background-color 150ms ease,color 150ms ease}
.nav__bag:hover{background-color:var(--iz-surface);color:var(--iz-gold)}
.nav__bag-count{position:absolute;top:-4px;right:-4px;min-width:1.25rem;height:1.25rem;padding:0 .25rem;background-color:var(--iz-red);color:var(--iz-white);font-size:var(--iz-fs-2xs);font-weight:var(--iz-fw-bold);border-radius:var(--iz-radius-full);display:flex;align-items:center;justify-content:center;line-height:1}
.nav__bag-count[data-count="0"],.nav__bag-count:empty{display:none}
@media(max-width:60rem){
  .nav__list{position:fixed;inset:0;flex-direction:column;justify-content:center;gap:var(--iz-sp-2xl);background-color:var(--iz-black);transform:translateX(100%);transition:transform 600ms cubic-bezier(.16,1,.3,1);z-index:200}
  .nav-open .nav__list{transform:translateX(0)}
  .nav__list li a{font-size:var(--iz-fs-xl)}
  .nav__toggle{display:flex}
}

/* ── Food Bag Drawer ───────────────────────────────────────── */
.food-bag-drawer[hidden]{display:none}
.food-bag-drawer__overlay{position:fixed;inset:0;background:var(--iz-overlay-dark);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:199}
.food-bag-drawer__panel{position:fixed;top:0;right:0;bottom:0;width:clamp(18rem,80%,26rem);background-color:#0d0c0c;z-index:200;display:flex;flex-direction:column;gap:var(--iz-sp-md);padding:var(--iz-sp-lg);overflow-y:auto}
.food-bag-drawer__header{display:flex;align-items:center;justify-content:space-between;padding-bottom:var(--iz-sp-md);border-bottom:1px solid var(--iz-border)}
.food-bag-drawer__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi)}
.food-bag-drawer__close{display:flex;align-items:center;justify-content:center;padding:var(--iz-sp-xs);border-radius:var(--iz-radius-full);color:rgba(239,233,218,.55);transition:color 150ms ease,background-color 150ms ease}
.food-bag-drawer__close:hover{color:var(--iz-white);background-color:var(--iz-surface)}
.food-bag-drawer__items{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:var(--iz-sp-sm)}
.food-bag-drawer__footer{padding-top:var(--iz-sp-md);border-top:1px solid var(--iz-border)}
.bag-item{display:flex;align-items:center;gap:var(--iz-sp-sm);padding:var(--iz-sp-sm);background:var(--iz-surface);border-radius:var(--iz-radius-md)}
.bag-item__img{width:3.5rem;height:3.5rem;object-fit:cover;border-radius:var(--iz-radius-sm);flex-shrink:0}
.bag-item__info{flex:1;min-width:0}
.bag-item__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-sm);font-weight:var(--iz-fw-semi);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.bag-item__price{font-size:var(--iz-fs-xs);color:var(--iz-gold);margin-top:.25rem}
.bag-item__qty{font-size:var(--iz-fs-xs);color:rgba(239,233,218,.45)}
.bag-item__remove{display:flex;align-items:center;justify-content:center;padding:.25rem;border-radius:var(--iz-radius-sm);color:rgba(239,233,218,.38);transition:color 150ms ease}
.bag-item__remove:hover{color:var(--iz-red)}

/* ── Hero ──────────────────────────────────────────────────── */
.hero{position:relative;min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.hero__bg{position:absolute;inset:0;background-size:cover;background-position:center;background-repeat:no-repeat;transform:scale(1.05);will-change:transform;transition:transform 9s ease-out}
.hero--loaded .hero__bg{transform:scale(1)}
.hero__overlay{position:absolute;inset:0;background:linear-gradient(155deg,rgba(7,6,6,.7) 0%,rgba(7,6,6,.25) 50%,rgba(7,6,6,.72) 100%)}
/* Text wrapper — frosted backdrop separates text from image */
.hero__content{position:relative;z-index:10;max-width:75rem;width:100%;padding:var(--iz-sp-4xl) var(--iz-sp-lg);padding-top:calc(var(--iz-nav-height) + var(--iz-sp-4xl));display:flex;flex-direction:column;gap:var(--iz-sp-md);background:var(--iz-hero-text-bg);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-radius:var(--iz-radius-xl);border:1px solid rgba(239,233,218,.08)}
@media(max-width:50rem){.hero__content{border-radius:var(--iz-radius-lg);padding:var(--iz-sp-xl) var(--iz-sp-md);padding-top:calc(var(--iz-nav-height) + var(--iz-sp-xl))}}
.hero__year,.hero__tagline{font-family:var(--iz-font-heading);font-size:var(--iz-fs-sm);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:var(--iz-gold);opacity:0;transform:translateY(18px);transition:opacity .6s ease .1s,transform .6s ease .1s}
.hero--loaded .hero__year,.hero--loaded .hero__tagline{opacity:1;transform:translateY(0)}
/* Font-weight updated to 600 */
.hero__heading{font-family:var(--iz-font-heading);font-size:var(--iz-fs-hero);font-weight:var(--iz-fw-semi);line-height:1.04;letter-spacing:-.015em;color:var(--iz-white);max-width:22ch;opacity:0;transform:translateY(28px);transition:opacity .72s ease .22s,transform .72s ease .22s}
.hero--loaded .hero__heading{opacity:1;transform:translateY(0)}
.hero__text{font-size:var(--iz-fs-md);line-height:1.75;color:rgba(239,233,218,.88);max-width:55ch;opacity:0;transform:translateY(20px);transition:opacity .72s ease .34s,transform .72s ease .34s}
.hero--loaded .hero__text{opacity:1;transform:translateY(0)}
.hero__ctas{display:flex;flex-wrap:wrap;gap:var(--iz-sp-sm);align-items:center;margin-top:var(--iz-sp-sm);opacity:0;transform:translateY(18px);transition:opacity .72s ease .46s,transform .72s ease .46s}
.hero--loaded .hero__ctas{opacity:1;transform:translateY(0)}
.hero__price{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-gold);letter-spacing:.02em}
.hero__scroll-down{position:absolute;bottom:var(--iz-sp-xl);left:50%;transform:translateX(-50%);z-index:10;color:rgba(239,233,218,.45);animation:heroScrollBounce 2.2s ease-in-out infinite;transition:color 150ms ease}
.hero__scroll-down:hover{color:var(--iz-gold)}
@keyframes heroScrollBounce{0%,100%{transform:translateX(-50%) translateY(0)}50%{transform:translateX(-50%) translateY(9px)}}

/* ── Food Cards ────────────────────────────────────────────── */
.foods-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(15rem,28%,22rem),1fr));gap:var(--iz-sp-lg)}
.food-card{background:var(--iz-surface);border-radius:var(--iz-radius-lg);overflow:hidden;transition:transform var(--iz-ease-base),background-color var(--iz-ease-base)}
.food-card:hover{transform:translateY(-4px);background-color:var(--iz-surface-hover)}
.food-card--featured{grid-column:span 2}
@media(max-width:50rem){.food-card--featured{grid-column:span 1}}
.food-card__image-link{display:block;position:relative;overflow:hidden}
.food-card__img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform 600ms cubic-bezier(.16,1,.3,1)}
.food-card:hover .food-card__img{transform:scale(1.05)}
.food-card__badge{position:absolute;top:var(--iz-sp-sm);left:var(--iz-sp-sm);padding:.25rem .75rem;background:var(--iz-gold);color:var(--iz-black);border-radius:var(--iz-radius-sm);font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase}
.food-card__body{display:flex;flex-direction:column;gap:var(--iz-sp-xs);padding:var(--iz-sp-md)}
.food-card__category{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:var(--iz-gold)}
.food-card__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);line-height:1.1}
.food-card__name a{color:var(--iz-white);transition:color 150ms ease}
.food-card__name a:hover{color:var(--iz-gold)}
.food-card__price{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-gold)}
.food-card__order{margin-top:var(--iz-sp-xs);align-self:flex-start}

/* ── Reviews ───────────────────────────────────────────────── */
.reviews{overflow:hidden}
.reviews__track{display:flex;gap:var(--iz-sp-lg);padding:var(--iz-sp-lg) var(--iz-sp-xl);overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;cursor:grab;user-select:none}
.reviews__track::-webkit-scrollbar{display:none}
.reviews__controls{display:flex;justify-content:center;gap:var(--iz-sp-sm);margin-top:var(--iz-sp-lg)}
.reviews__prev,.reviews__next{display:flex;align-items:center;justify-content:center;width:3rem;height:3rem;border-radius:var(--iz-radius-full);background:var(--iz-surface);color:var(--iz-white);transition:background-color 150ms ease,color 150ms ease}
.reviews__prev:hover,.reviews__next:hover{background:var(--iz-gold);color:var(--iz-black)}
.review-card{flex:0 0 clamp(18rem,40%,26rem);scroll-snap-align:start;background:var(--iz-surface);border-radius:var(--iz-radius-lg);padding:var(--iz-sp-lg);display:flex;flex-direction:column;gap:var(--iz-sp-sm)}
.review-card__avatar{width:3.5rem;height:3.5rem;border-radius:var(--iz-radius-full);overflow:hidden;flex-shrink:0}
.review-card__img{width:100%;height:100%;object-fit:cover}
.review-card__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.review-card__text{font-size:var(--iz-fs-sm);line-height:1.75;color:rgba(239,233,218,.8)}
.review-card__date{font-size:var(--iz-fs-xs);color:rgba(239,233,218,.38);margin-top:auto}
.stars{display:inline-flex;gap:2px}
.star--filled{color:var(--iz-gold)}.star--empty{color:rgba(239,233,218,.2)}

/* ── FAQ Accordion ─────────────────────────────────────────── */
.faq-accordion{display:flex;flex-direction:column;gap:var(--iz-sp-xs);max-width:75rem}
.faq-accordion__item{background:var(--iz-surface);border-radius:var(--iz-radius-md);overflow:hidden}
.faq-accordion__btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:var(--iz-sp-md);padding:var(--iz-sp-md) var(--iz-sp-lg);font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);text-align:left;color:var(--iz-white);transition:color 150ms ease}
.faq-accordion__btn:hover,.faq-accordion__btn[aria-expanded="true"]{color:var(--iz-gold)}
.faq-accordion__icon{flex-shrink:0;color:var(--iz-gold);transition:transform var(--iz-ease-base)}
.faq-accordion__btn[aria-expanded="true"] .faq-accordion__icon{transform:rotate(180deg)}
.faq-accordion__panel[hidden]{display:none}
.faq-accordion__panel{padding:0 var(--iz-sp-lg) var(--iz-sp-md)}
.faq-accordion__answer{font-size:var(--iz-fs-base);line-height:1.75;color:rgba(239,233,218,.8)}

/* ── Contact Form ──────────────────────────────────────────── */
.contact-form{max-width:42rem}
.contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:var(--iz-sp-md)}
@media(max-width:40rem){.contact-form__row{grid-template-columns:1fr}}
.contact-form__field{display:flex;flex-direction:column;gap:var(--iz-sp-xs);margin-bottom:var(--iz-sp-md)}
.contact-form__field--checkbox{flex-direction:row;align-items:flex-start;gap:var(--iz-sp-sm);margin-bottom:var(--iz-sp-md)}
.contact-form__label{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.55)}
.contact-form__label span{color:var(--iz-gold)}
.contact-form__input,.contact-form__textarea,.contact-form__select{width:100%;padding:var(--iz-sp-sm) var(--iz-sp-md);background:var(--iz-surface);color:var(--iz-white);border:1px solid var(--iz-border);border-radius:var(--iz-radius-md);font-family:var(--iz-font-body);font-size:var(--iz-fs-base);transition:border-color 150ms ease,background-color 150ms ease}
.contact-form__input::placeholder,.contact-form__textarea::placeholder{color:rgba(239,233,218,.3)}
.contact-form__input:focus,.contact-form__textarea:focus{outline:none;border-color:var(--iz-gold);background:var(--iz-surface-hover)}
.contact-form__textarea{resize:vertical;min-height:9rem}
.contact-form__checkbox-label{display:flex;align-items:flex-start;gap:var(--iz-sp-sm);font-size:var(--iz-fs-sm);color:rgba(239,233,218,.65);cursor:pointer;line-height:1.55}
.contact-form__checkbox-label a{color:var(--iz-gold);text-decoration:underline;text-underline-offset:3px}
.contact-form__checkbox-label a:hover{color:var(--iz-hover)}
.contact-form__checkbox{margin-top:3px;width:1rem;height:1rem;accent-color:var(--iz-gold);flex-shrink:0;cursor:pointer}
.contact-form__submit{margin-top:var(--iz-sp-sm)}
.contact-form__feedback{margin-top:var(--iz-sp-md);padding:var(--iz-sp-sm) var(--iz-sp-md);border-radius:var(--iz-radius-md);font-size:var(--iz-fs-sm)}
.contact-form__feedback.is-success{background:rgba(203,144,8,.14);color:var(--iz-gold)}
.contact-form__feedback.is-error{background:rgba(184,26,26,.14);color:var(--iz-red)}
.contact-form__feedback[hidden]{display:none}
.search-input{width:100%;max-width:40rem;display:block;margin-inline:auto;padding:var(--iz-sp-sm) var(--iz-sp-lg);background:var(--iz-surface);color:var(--iz-white);border:1px solid var(--iz-border);border-radius:var(--iz-radius-full);font-family:var(--iz-font-body);font-size:var(--iz-fs-base);transition:border-color 150ms ease}
.search-input::placeholder{color:rgba(239,233,218,.33)}
.search-input:focus{outline:none;border-color:var(--iz-gold)}

/* ── Team ──────────────────────────────────────────────────── */
.team-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(12rem,22%,18rem),1fr));gap:var(--iz-sp-lg)}
.team-card{background:var(--iz-surface);border-radius:var(--iz-radius-lg);overflow:hidden;transition:transform var(--iz-ease-base);text-align:center}
.team-card:hover{transform:translateY(-4px)}
.team-card__image{aspect-ratio:1/1;overflow:hidden}
.team-card__img{width:100%;height:100%;object-fit:cover;transition:transform 600ms cubic-bezier(.16,1,.3,1)}
.team-card:hover .team-card__img{transform:scale(1.04)}
.team-card__body{padding:var(--iz-sp-md)}
.team-card__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.team-card__position{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.1em;text-transform:uppercase;color:var(--iz-gold);margin-top:.25rem}

/* ── Dots Loader ───────────────────────────────────────────── */
.gallery-loader{display:flex;align-items:center;justify-content:center;gap:var(--iz-sp-xs);padding:var(--iz-sp-2xl)}
.gallery-loader__dot{width:.5rem;height:.5rem;border-radius:var(--iz-radius-full);background:var(--iz-gold);animation:dotPulse 1.2s ease-in-out infinite}
.gallery-loader__dot:nth-child(2){animation-delay:.2s}.gallery-loader__dot:nth-child(3){animation-delay:.4s}
.gallery-loader[hidden]{display:none}
@keyframes dotPulse{0%,100%{transform:scale(.5);opacity:.3}50%{transform:scale(1);opacity:1}}

/* ── Footer ────────────────────────────────────────────────── */
.footer{background-color:#030202;border-top:1px solid rgba(239,233,218,.06);padding-top:var(--iz-sp-4xl)}
.footer__inner{width:100%;max-width:90rem;margin-inline:auto;padding-inline:var(--iz-sp-lg);display:grid;grid-template-columns:1fr;gap:clamp(4rem,2.93rem + 2.74vw,7rem);padding-bottom:clamp(4rem,2.93rem + 2.74vw,7rem)}
@media(min-width:50rem){.footer__inner{grid-template-columns:1.4fr 2fr}}
.footer__brand{display:flex;flex-direction:column;gap:var(--iz-sp-md)}
.footer__logo img{height:clamp(2rem,1.7rem + .77vw,3rem);width:auto}
.footer__logo-text{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);letter-spacing:.06em;color:var(--iz-white)}
.footer__tagline{font-size:var(--iz-fs-sm);line-height:1.75;color:rgba(239,233,218,.42);max-width:35ch}
/* Social — uniform gold hover, no platform-specific colours */
.footer__social{display:flex;gap:var(--iz-sp-sm);margin-top:var(--iz-sp-xs)}
.footer__social-link{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;border-radius:var(--iz-radius-full);background:var(--iz-surface);color:rgba(239,233,218,.6);transition:background-color 150ms ease,color 150ms ease,transform 150ms ease}
.footer__social-link:hover{background:var(--iz-gold);color:var(--iz-black);transform:translateY(-2px)}
.footer__social-link svg{width:1.1rem;height:1.1rem;fill:currentColor;flex-shrink:0}
.footer__delivery{margin-top:var(--iz-sp-sm)}
.footer__delivery-label{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.32);display:block;margin-bottom:var(--iz-sp-xs)}
.footer__delivery-partners{display:flex;flex-wrap:wrap;gap:var(--iz-sp-sm)}
.footer__delivery-link{font-size:var(--iz-fs-xs);color:rgba(239,233,218,.42);transition:color 150ms ease}
.footer__delivery-link:hover{color:var(--iz-gold)}
.footer__nav{display:grid;grid-template-columns:repeat(auto-fill,minmax(9rem,1fr));gap:var(--iz-sp-xl)}
.footer__nav-title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.38);margin-bottom:var(--iz-sp-md)}
.footer__nav-list{display:flex;flex-direction:column;gap:var(--iz-sp-sm)}
.footer__nav-list li a{font-size:var(--iz-fs-sm);color:rgba(239,233,218,.55);transition:color 150ms ease}
.footer__nav-list li a:hover{color:var(--iz-gold)}
.footer__bottom{border-top:1px solid rgba(239,233,218,.06);padding-block:var(--iz-sp-md)}
.footer__bottom-inner{width:100%;max-width:90rem;margin-inline:auto;padding-inline:var(--iz-sp-lg);display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--iz-sp-sm)}
.footer__copyright{font-size:var(--iz-fs-xs);color:rgba(239,233,218,.28)}
.footer__legal-links{display:flex;flex-wrap:wrap;gap:var(--iz-sp-md)}
.footer__legal-links a{font-size:var(--iz-fs-xs);color:rgba(239,233,218,.28);transition:color 150ms ease}
.footer__legal-links a:hover{color:var(--iz-gold)}

/* ── Partners / About preview ──────────────────────────────── */
.partners__grid{display:flex;flex-wrap:wrap;gap:var(--iz-sp-xl);align-items:center;justify-content:center}
.partners__item{opacity:.58;transition:opacity var(--iz-ease-base)}
.partners__item:hover{opacity:1}
.partners__logo{height:clamp(2rem,4vw,4rem);width:auto;object-fit:contain;filter:brightness(0) invert(1)}
.about-preview{background:var(--iz-surface)}
.about-preview__inner{display:grid;grid-template-columns:1fr;gap:var(--iz-sp-2xl)}
@media(min-width:50rem){.about-preview__inner{grid-template-columns:1fr 1fr;align-items:center}}
.about-preview__text{font-size:var(--iz-fs-md);line-height:1.75;color:rgba(239,233,218,.82);max-width:65ch;margin-bottom:var(--iz-sp-lg)}
.instagram-feed{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(8rem,20%,14rem),1fr));gap:var(--iz-sp-xs)}
.instagram-feed__item{aspect-ratio:1/1;overflow:hidden;border-radius:var(--iz-radius-sm)}
.instagram-feed__item img{width:100%;height:100%;object-fit:cover;transition:transform 600ms cubic-bezier(.16,1,.3,1)}
.instagram-feed__item:hover img{transform:scale(1.07)}

/* ── Gallery Page ──────────────────────────────────────────── */
.gallery-page{padding-block:var(--iz-sp-2xl)}
.gallery-bento{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(15rem,30%,26rem),1fr));gap:var(--iz-sp-sm);padding-inline:var(--iz-sp-lg)}
.gallery-bento__item{border-radius:var(--iz-radius-lg);overflow:hidden;cursor:pointer;position:relative;background:var(--iz-surface)}
.gallery-bento__item--latest{grid-column:span 2;grid-row:span 2}
.gallery-bento__img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover;transition:transform var(--iz-ease-slow)}
.gallery-bento__item:hover .gallery-bento__img{transform:scale(1.05)}
.gallery-bento__overlay{position:absolute;inset:0;background:var(--iz-overlay-mid);display:flex;align-items:flex-end;padding:var(--iz-sp-md);opacity:0;transition:opacity var(--iz-ease-base)}
.gallery-bento__item:hover .gallery-bento__overlay{opacity:1}
.gallery-bento__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.gallery-preview-modal[hidden]{display:none}
.gallery-preview-modal__overlay{position:fixed;inset:0;background:rgba(7,6,6,.88);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);z-index:299}
.gallery-preview-modal__panel{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:300;max-width:clamp(20rem,90%,56rem);width:100%;background:#0d0c0c;border-radius:var(--iz-radius-2xl);overflow:hidden;display:grid;grid-template-columns:1fr}
@media(min-width:50rem){.gallery-preview-modal__panel{grid-template-columns:1fr 1fr}}
.gallery-preview-modal__close{position:absolute;top:var(--iz-sp-md);right:var(--iz-sp-md);z-index:1;width:2.5rem;height:2.5rem;border-radius:var(--iz-radius-full);background:rgba(7,6,6,.65);color:var(--iz-white);display:flex;align-items:center;justify-content:center;transition:background-color 150ms ease}
.gallery-preview-modal__close:hover{background:var(--iz-gold);color:var(--iz-black)}
.gallery-preview-modal__image-wrap{aspect-ratio:1/1;overflow:hidden}
.gallery-preview-modal__img{width:100%;height:100%;object-fit:cover}
.gallery-preview-modal__info{padding:var(--iz-sp-xl);display:flex;flex-direction:column;gap:var(--iz-sp-sm);justify-content:center}
.gallery-preview-modal__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.gallery-preview-modal__desc{font-size:var(--iz-fs-base);line-height:1.75;color:rgba(239,233,218,.78)}

/* ── Menu Page ─────────────────────────────────────────────── */
.food-menu-page__search{padding-block:var(--iz-sp-xl)}
.food-menu-page__layout{display:grid;grid-template-columns:1fr;gap:var(--iz-sp-2xl)}
@media(min-width:60rem){.food-menu-page__layout{grid-template-columns:14rem 1fr;align-items:start}}
.food-menu-page__sidebar{padding-inline:var(--iz-sp-lg)}
@media(min-width:60rem){.food-menu-page__sidebar{position:sticky;top:calc(var(--iz-nav-height) + var(--iz-sp-lg));align-self:start;padding-inline:0}}
.food-menu-page__download{padding-block:var(--iz-sp-2xl);display:flex;align-items:center;justify-content:center}
.category-nav__list{display:flex;flex-direction:row;flex-wrap:wrap;gap:var(--iz-sp-xs);padding:var(--iz-sp-md) 0}
@media(min-width:60rem){.category-nav__list{flex-direction:column}}
.category-nav__btn{padding:var(--iz-sp-xs) var(--iz-sp-md);font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.55);border-radius:var(--iz-radius-md);transition:color 150ms ease,background-color 150ms ease}
.category-nav__btn:hover,.category-nav__btn--active{color:var(--iz-gold);background-color:var(--iz-surface)}
.food-category-section{padding-block:var(--iz-sp-2xl)}
.food-category-section__title{font-size:var(--iz-fs-lg);margin-bottom:var(--iz-sp-lg)}

/* ── Bento / Single Food / Order / 404 / Terms ─────────────── */
.foods-bento{display:grid;grid-template-columns:repeat(auto-fill,minmax(clamp(14rem,25%,22rem),1fr));grid-auto-rows:clamp(14rem,25vw,22rem);gap:var(--iz-sp-sm)}
.foods-bento__item{overflow:hidden;border-radius:var(--iz-radius-lg)}
.foods-bento__item--large{grid-column:span 2;grid-row:span 2}
@media(max-width:50rem){.foods-bento__item--large{grid-column:span 1;grid-row:span 1}}
.foods-bento__item .food-card__img{width:100%;height:100%;aspect-ratio:unset}
.single-food{padding-block:clamp(4rem,2.93rem + 2.74vw,7rem)}
.single-food__main{display:grid;grid-template-columns:1fr;gap:var(--iz-sp-2xl)}
@media(min-width:60rem){.single-food__main{grid-template-columns:1fr 22rem}}
.single-food__category{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);letter-spacing:.12em;text-transform:uppercase;color:var(--iz-gold);margin-bottom:var(--iz-sp-sm)}
.single-food__section-title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);color:var(--iz-gold);margin-bottom:var(--iz-sp-sm)}
.single-food__price{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-gold);margin-bottom:var(--iz-sp-md)}
.order-page{min-height:100svh;padding-block:var(--iz-sp-4xl);padding-top:calc(var(--iz-nav-height) + var(--iz-sp-4xl))}
.order-page__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);color:var(--iz-white);margin-bottom:var(--iz-sp-2xl)}
.order-page__layout{display:grid;grid-template-columns:1fr;gap:var(--iz-sp-2xl)}
@media(min-width:60rem){.order-page__layout{grid-template-columns:1fr 22rem;align-items:start}}
.order-list{display:flex;flex-direction:column;gap:var(--iz-sp-md)}
.order-list__item{display:flex;align-items:center;gap:var(--iz-sp-md);background:var(--iz-surface);border-radius:var(--iz-radius-lg);padding:var(--iz-sp-md)}
.order-list__name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.order-list__price{font-size:var(--iz-fs-sm);color:var(--iz-gold);margin-top:.25rem}
.order-list__remove:hover{color:var(--iz-red);background:rgba(184,26,26,.1)}
.order-summary{background:var(--iz-surface);border-radius:var(--iz-radius-lg);padding:var(--iz-sp-lg);position:sticky;top:calc(var(--iz-nav-height) + var(--iz-sp-lg))}
.order-summary__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);margin-bottom:var(--iz-sp-lg)}
.order-summary__total{display:flex;justify-content:space-between;align-items:center;font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);color:var(--iz-gold);padding-block:var(--iz-sp-md);border-block:1px solid var(--iz-border);margin-bottom:var(--iz-sp-lg)}
.error-page{min-height:100svh;display:flex;align-items:center;justify-content:center;padding-top:var(--iz-nav-height)}
.error-page__code{display:block;font-family:var(--iz-font-heading);font-size:clamp(4rem,2.72rem + 3.28vw,8rem);font-weight:var(--iz-fw-bold);color:rgba(239,233,218,.04);line-height:1;margin-bottom:-.2em;letter-spacing:-.05em;user-select:none}
.error-page__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);color:var(--iz-white);margin-bottom:var(--iz-sp-md)}
.error-page__text{font-size:var(--iz-fs-base);color:rgba(239,233,218,.65);max-width:45ch;margin-inline:auto;margin-bottom:var(--iz-sp-xl)}
.terms-section+.terms-section{border-top:1px solid rgba(239,233,218,.07)}
.faq-page__search{padding-block:var(--iz-sp-xl)}

/* ── Spin-to-Win Popup (header) ────────────────────────────── */
.spin-wheel[hidden]{display:none}
.spin-wheel__overlay{position:fixed;inset:0;background:var(--iz-overlay-dark);backdrop-filter:blur(9px);-webkit-backdrop-filter:blur(9px);z-index:299}
.spin-wheel__modal{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);z-index:300;width:clamp(20rem,90vw,28rem);background:#0d0c0c;border-radius:var(--iz-radius-2xl);padding:var(--iz-sp-xl);display:flex;flex-direction:column;align-items:center;gap:var(--iz-sp-lg);border:1px solid rgba(239,233,218,.07)}
.spin-wheel__close{position:absolute;top:var(--iz-sp-md);right:var(--iz-sp-md);display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:var(--iz-radius-full);background:var(--iz-surface);color:rgba(239,233,218,.55);transition:color 150ms ease,background-color 150ms ease}
.spin-wheel__close:hover{color:var(--iz-white);background:var(--iz-surface-hover)}
.spin-wheel__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.spin-wheel__canvas{border-radius:var(--iz-radius-full);max-width:100%}
.spin-wheel__pointer{position:absolute;top:-.8rem;left:50%;transform:translateX(-50%);font-size:1.5rem;color:var(--iz-gold);pointer-events:none}
.spin-wheel__result[hidden]{display:none}
.spin-wheel__result-prize{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-gold)}
.spin-wheel__result-code{font-family:var(--iz-font-mono);font-size:var(--iz-fs-xl);letter-spacing:.28em;color:var(--iz-white);background:var(--iz-surface);padding:var(--iz-sp-sm) var(--iz-sp-lg);border-radius:var(--iz-radius-md);display:block;word-break:break-all}

/* ═══════════════════════════════════════════════════════════
   GAME PAGE TEMPLATES (Wheel + Roulette)
   Templates render standalone — no nav, no footer
══════════════════════════════════════════════════════════ */

/* ── Shared game page base ─────────────────────────────────── */
.game-page{background:var(--iz-black);color:var(--iz-white);min-height:100svh;font-family:var(--iz-font-body);overflow-x:hidden}

/* ── Shared popup ──────────────────────────────────────────── */
.gw__popup[hidden]{display:none}
.gw__popup{position:fixed;inset:0;z-index:300;display:flex;align-items:center;justify-content:center;padding:var(--iz-sp-md)}
.gw__popup-overlay{position:fixed;inset:0;background:rgba(7,6,6,.88);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.gw__popup-panel{position:relative;z-index:1;width:100%;max-width:30rem;background:#0d0c0c;border-radius:var(--iz-radius-xl);border:1px solid rgba(239,233,218,.08);overflow:hidden;animation:popupIn .45s var(--iz-ease-slow) both}
@keyframes popupIn{from{opacity:0;transform:scale(.88) translateY(24px)}to{opacity:1;transform:scale(1) translateY(0)}}
.gw__popup-win{background:rgba(203,144,8,.12);border-bottom:1px solid rgba(203,144,8,.2);padding:var(--iz-sp-lg);text-align:center}
.gw__popup-prize-icon{display:block;font-size:2.5rem;margin-bottom:var(--iz-sp-sm)}
.gw__popup-message{font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white);line-height:1.4}
.gw__popup-prize-name{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-gold);margin-top:var(--iz-sp-xs);letter-spacing:.03em}
.gw__popup-form-wrap{padding:var(--iz-sp-lg)}
.gw__popup-form-title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);color:var(--iz-white);margin-bottom:var(--iz-sp-xs)}
.gw__popup-form-desc{font-size:var(--iz-fs-sm);color:rgba(239,233,218,.65);margin-bottom:var(--iz-sp-md)}
/* Claim form */
.gw__form{display:flex;flex-direction:column;gap:var(--iz-sp-sm)}
.gw__form-field{display:flex;flex-direction:column;gap:var(--iz-sp-xs)}
.gw__form-label{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.55)}
.gw__form-label span{color:var(--iz-gold)}
.gw__form-input{width:100%;padding:var(--iz-sp-sm) var(--iz-sp-md);background:rgba(239,233,218,.06);color:var(--iz-white);border:1px solid rgba(239,233,218,.12);border-radius:var(--iz-radius-md);font-family:var(--iz-font-body);font-size:var(--iz-fs-base);transition:border-color 150ms ease,background 150ms ease}
.gw__form-input::placeholder{color:rgba(239,233,218,.28)}
.gw__form-input:focus{outline:none;border-color:var(--iz-gold);background:rgba(239,233,218,.09)}
.gw__form-feedback{padding:var(--iz-sp-xs) var(--iz-sp-sm);border-radius:var(--iz-radius-sm);font-size:var(--iz-fs-sm);line-height:1.5}
.gw__form-feedback[hidden]{display:none}
.gw__form-feedback.is-error{background:rgba(184,26,26,.15);color:var(--iz-red);border:1px solid rgba(184,26,26,.3)}
.gw__form-feedback.is-duplicate{background:rgba(184,26,26,.12);color:var(--iz-red);border:1px solid rgba(184,26,26,.25)}
.gw__form-submit{margin-top:var(--iz-sp-xs);width:100%;justify-content:center}
/* Success */
.gw__success[hidden]{display:none}
.gw__success{position:fixed;inset:0;z-index:301;background:rgba(7,6,6,.96);backdrop-filter:blur(12px);display:flex;align-items:center;justify-content:center;padding:var(--iz-sp-md);animation:popupIn .5s var(--iz-ease-slow) both}
.gw__success-panel{text-align:center;max-width:26rem;display:flex;flex-direction:column;gap:var(--iz-sp-md);align-items:center}
.gw__success-icon{font-size:4rem;line-height:1}
.gw__success-title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.gw__success-prize{font-family:var(--iz-font-heading);font-size:var(--iz-fs-lg);font-weight:var(--iz-fw-semi);color:var(--iz-gold)}
.gw__success-label{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);letter-spacing:.12em;text-transform:uppercase;color:rgba(239,233,218,.45)}
.gw__success-code{font-family:var(--iz-font-mono);font-size:clamp(2rem,8vw,3rem);font-weight:var(--iz-fw-bold);letter-spacing:.25em;color:var(--iz-white);background:rgba(203,144,8,.12);border:1px solid rgba(203,144,8,.3);border-radius:var(--iz-radius-md);padding:var(--iz-sp-sm) var(--iz-sp-lg)}
.gw__success-note{font-size:var(--iz-fs-sm);color:rgba(239,233,218,.5);max-width:30ch}

/* ── Template 1: Canvas Wheel — VERTICAL layout (all viewports) ─ */
/* Root: flex column, centred */
.gw{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--iz-sp-xl);padding:var(--iz-sp-xl) var(--iz-sp-lg);position:relative}
/* Header */
.gw__header{display:flex;flex-direction:column;align-items:center;gap:var(--iz-sp-sm);text-align:center;max-width:38rem}
.gw__logo img{height:clamp(2.5rem,5vw,4rem);width:auto}
.gw__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);line-height:1.1;color:var(--iz-white)}
.gw__desc{font-size:var(--iz-fs-base);line-height:1.75;color:rgba(239,233,218,.68);max-width:45ch}
/* Wheel */
.gw__wheel-wrap{position:relative;display:flex;align-items:center;justify-content:center;filter:drop-shadow(0 6px 32px rgba(203,144,8,.25))}
.gw__pointer{position:absolute;top:-1rem;left:50%;transform:translateX(-50%);z-index:2;font-size:2rem;color:var(--iz-gold);line-height:1;pointer-events:none;filter:drop-shadow(0 2px 6px rgba(7,6,6,.6))}
.gw__canvas{display:block;width:clamp(260px,min(80vw,70vh),420px);height:clamp(260px,min(80vw,70vh),420px);border-radius:var(--iz-radius-full)}
/* Spin button */
.gw__spin-btn{min-width:clamp(10rem,55%,16rem);font-size:var(--iz-fs-md);padding:var(--iz-sp-md) var(--iz-sp-2xl);border-radius:var(--iz-radius-full);box-shadow:0 4px 24px rgba(203,144,8,.28);transition:background-color var(--iz-ease-base),transform 150ms ease,box-shadow var(--iz-ease-base)}
.gw__spin-btn:hover:not(:disabled){background-color:var(--iz-hover);box-shadow:0 6px 32px rgba(253,180,13,.38)}
.gw__spin-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.gw__spin-btn.is-spinning{animation:spinBtnPulse 1.5s ease-in-out infinite}
@keyframes spinBtnPulse{0%,100%{box-shadow:0 4px 24px rgba(203,144,8,.28)}50%{box-shadow:0 4px 48px rgba(203,144,8,.55)}}

/* ── Template 2: Vertical Roulette ─────────────────────────── */
.gr{min-height:100svh;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--iz-sp-xl);padding:var(--iz-sp-xl) var(--iz-sp-lg);text-align:center;position:relative}
.gr__header{display:flex;flex-direction:column;align-items:center;gap:var(--iz-sp-sm)}
.gr__logo img{height:clamp(2.5rem,5vw,4rem);width:auto}
.gr__title{font-family:var(--iz-font-heading);font-size:var(--iz-fs-2xl);font-weight:var(--iz-fw-semi);color:var(--iz-white)}
.gr__desc{font-size:var(--iz-fs-base);line-height:1.75;color:rgba(239,233,218,.65);max-width:45ch}
/* Machine */
.gr__machine{position:relative;width:clamp(16rem,80vw,24rem);height:clamp(18rem,50vh,28rem);border-radius:var(--iz-radius-xl);overflow:hidden;border:2px solid rgba(239,233,218,.1);background:rgba(239,233,218,.02)}
.gr__fade{position:absolute;left:0;right:0;z-index:3;pointer-events:none;height:35%}
.gr__fade--top{top:0;background:linear-gradient(to bottom,rgba(7,6,6,.95) 0%,transparent 100%)}
.gr__fade--bottom{bottom:0;background:linear-gradient(to top,rgba(7,6,6,.95) 0%,transparent 100%)}
.gr__indicator{position:absolute;left:0;right:0;z-index:4;pointer-events:none;top:50%;transform:translateY(-50%);height:var(--iz-game-item-h)}
.gr__indicator-line{position:absolute;left:var(--iz-sp-md);right:var(--iz-sp-md);height:1.5px;background:var(--iz-gold);opacity:.6}
.gr__indicator-line--top{top:0}.gr__indicator-line--bottom{bottom:0}
.gr__viewport{position:relative;width:100%;height:100%;overflow:hidden;z-index:2}
.gr__strip{width:100%;display:flex;flex-direction:column;will-change:transform}
/* Single prize row */
.gr__strip-item{flex-shrink:0;width:100%;height:var(--iz-game-item-h);display:flex;align-items:center;justify-content:center;font-family:var(--iz-font-heading);font-size:var(--iz-fs-md);font-weight:var(--iz-fw-semi);color:var(--iz-white);transition:background-color .4s ease,opacity .4s ease,color .4s ease;letter-spacing:.04em;padding:0 var(--iz-sp-lg);text-align:center}
/* Winner: gold background */
.gr__strip-item.is-winner{background:var(--iz-win-bg);color:var(--iz-win-text);opacity:1!important;font-size:var(--iz-fs-lg)}
/* Others: dimmed */
.gr__strip-item.is-dimmed{opacity:.22}
/* Win box */
.gr__win-box{display:flex;flex-direction:column;align-items:center;gap:var(--iz-sp-xs);padding:var(--iz-sp-md) var(--iz-sp-xl);background:var(--iz-gold);color:var(--iz-black);border-radius:var(--iz-radius-lg);min-width:clamp(12rem,60%,20rem);animation:winBoxIn .5s var(--iz-ease-slow) both}
.gr__win-box[hidden]{display:none}
@keyframes winBoxIn{from{opacity:0;transform:scale(.9) translateY(10px)}to{opacity:1;transform:scale(1) translateY(0)}}
.gr__win-label{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xs);font-weight:var(--iz-fw-regular);letter-spacing:.12em;text-transform:uppercase;color:rgba(7,6,6,.65)}
.gr__win-prize{font-family:var(--iz-font-heading);font-size:var(--iz-fs-xl);font-weight:var(--iz-fw-semi);color:var(--iz-black);text-align:center;line-height:1.2}
/* Roulette spin button */
.gr__spin-btn{min-width:clamp(10rem,55%,16rem);font-size:var(--iz-fs-md);padding:var(--iz-sp-md) var(--iz-sp-2xl);border-radius:var(--iz-radius-full);box-shadow:0 4px 24px rgba(203,144,8,.28);transition:background-color var(--iz-ease-base),transform 150ms ease,box-shadow var(--iz-ease-base)}
.gr__spin-btn:hover:not(:disabled){background-color:var(--iz-hover);box-shadow:0 6px 32px rgba(253,180,13,.38)}
.gr__spin-btn:disabled{opacity:.5;cursor:not-allowed;transform:none}
.gr__spin-btn.is-spinning{animation:spinBtnPulse 1.5s ease-in-out infinite}
/* Popup overrides for roulette (reuse .gw__popup classes) */
.gr__popup.gw__popup{z-index:305}
