:root{
    --bg-light:#f5f2ea;
    --bg-light-soft:#ece2cc;
    --bg-dark:#0d0d0d;
    --bg-dark-soft:#181818;
    --amber:#c97a23;
    --amber-deep:#a35d16;
    --gold:#cf9f3f;
    --gold-soft:#e8c372;
    --text-dark:#161616;
    --text-muted:#6f6a60;
    --text-light:#f5f2ea;
    --text-light-muted:#bcb4a3;
    --rule:rgba(207,159,63,0.35);

    --font-display:'Cinzel', serif;
    --font-nav:'Oswald', sans-serif;
    --font-body:'Karla', sans-serif;

    --header-h:88px;
  }

  *{box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  @media (prefers-reduced-motion: reduce){
    html{scroll-behavior:auto;}
    *{animation-duration:0.001ms !important; transition-duration:0.001ms !important;}
  }

  body{
    margin:0;
    font-family:var(--font-body);
    color:var(--text-dark);
    background:var(--bg-light);
    -webkit-font-smoothing:antialiased;
    overflow-x:hidden;
  }
  body.menu-open{overflow:hidden;}
  html{overflow-x:hidden; max-width:100%;}

  section{scroll-margin-top:var(--header-h);}
  a{color:inherit; text-decoration:none;}
  img{display:block; max-width:100%;}

  .skip-link{
    position:fixed; top:10px; left:10px; z-index:999;
    padding:10px 16px; background:var(--gold); color:var(--bg-dark);
    font-family:var(--font-nav); font-weight:600;
    transform:translateY(-160%); transition:transform .2s ease;
  }
  .skip-link:focus{transform:translateY(0);}
  .visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
  :focus-visible{outline:3px solid var(--gold-soft); outline-offset:4px;}

  .wrap{max-width:1180px; margin:0 auto; padding:0 32px;}
  @media (max-width:600px){ .wrap{padding:0 20px;} }

  .eyebrow{
    font-family:var(--font-nav);
    font-size:13px;
    font-weight:500;
    letter-spacing:0.16em;
    text-transform:uppercase;
    color:var(--amber);
    margin-bottom:10px;
  }
  .eyebrow.light{color:var(--gold-soft);}

  h1,h2,h3{
    font-family:var(--font-display);
    margin:0;
    font-weight:400;
    letter-spacing:0.01em;
    text-transform:uppercase;
    line-height:1.05;
  }

  .underline{
    width:54px;
    height:4px;
    background:var(--gold);
    margin:16px 0 22px;
  }
  .underline.center{margin-left:auto; margin-right:auto;}

  .section-title{
    font-size:clamp(30px,3.8vw,46px);
    color:var(--text-dark);
  }
  .section-title.light{color:var(--text-light);}

  .section-intro{
    max-width:560px;
    color:var(--text-muted);
    font-size:16px;
    line-height:1.75;
  }
  .section-intro.light{color:var(--text-light-muted);}
  .section-intro.center{margin:0 auto;}

  .btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
    font-family:var(--font-nav);
    font-size:13px;
    font-weight:500;
    letter-spacing:0.1em;
    text-transform:uppercase;
    padding:14px 26px;
    cursor:pointer;
    border:1.5px solid transparent;
    transition:transform 0.18s ease, background 0.18s ease, color 0.18s ease;
  }
  .btn:hover{transform:translateY(-2px);}
  .btn-solid{background:var(--gold); color:var(--bg-dark);}
  .btn-solid:hover{background:var(--gold-soft);}
  .btn-ghost{border-color:var(--text-light); color:var(--text-light); background:transparent;}
  .btn-ghost:hover{background:rgba(247,242,231,0.12);}
  .btn-ghost-dark{border-color:var(--text-dark); color:var(--text-dark); background:transparent;}
  .btn-ghost-dark:hover{background:rgba(34,29,23,0.06);}

  /* ============ HEADER ============ */
  #site-header{
    position:fixed;
    top:0; left:0; right:0;
    z-index:100;
    background:var(--bg-dark);
    box-shadow:0 4px 20px rgba(0,0,0,0.4);
    height:var(--header-h);
    transition:height 0.3s ease, box-shadow 0.3s ease;
  }
  #site-header.is-scrolled{
    height:68px;
    box-shadow:0 6px 24px rgba(0,0,0,0.5);
  }

  /* barra centralizada */
  .nav-row{
    height:100%;
    display:flex;
    align-items:center;
    justify-content:center;
    gap:0;
    position:relative;
  }

  /* logo fica no centro absoluto */
  .brand{
    position:absolute;
    left:50%; top:50%;
    transform:translate(-50%,-50%);
    display:flex;
    align-items:center;
    justify-content:center;
    height:auto;
    padding:0;
    z-index:2;
  }
  .brand-logo{
    height:104px;
    max-height:none;
    width:auto;
    object-fit:contain;
    filter:drop-shadow(0 5px 10px rgba(0,0,0,.48));
    transition:height 0.3s ease;
  }
  #site-header.is-scrolled .brand-logo{height:80px;}

  /* nav groups flanqueando a logo */
  .nav-left{
    display:flex;
    justify-content:flex-end;
    flex:1;
    padding-right:180px; /* metade da largura estimada da logo */
  }
  .nav-right{
    display:flex;
    justify-content:flex-start;
    flex:1;
    padding-left:180px;
  }

  .nav-links{
    display:flex;
    gap:22px;
    list-style:none;
    margin:0; padding:0;
    font-family:var(--font-nav);
    font-size:12px;
    font-weight:500;
    letter-spacing:0.06em;
    text-transform:uppercase;
    white-space:nowrap;
    align-items:center;
  }
  .nav-links a{
    color:var(--text-light);
    position:relative;
    padding-bottom:5px;
    opacity:0.85;
    transition:opacity 0.18s ease;
  }
  .nav-links a:hover{opacity:1;}
  .nav-links a::after{
    content:'';
    position:absolute;
    left:0; bottom:0;
    width:0; height:2px;
    background:var(--gold);
    transition:width 0.2s ease;
  }
  .nav-links a:hover::after{width:100%;}
  .nav-cta-link{color:var(--gold) !important; font-weight:700; opacity:1 !important;}
  .nav-cta-link::after{background:var(--gold) !important;}

  .nav-toggle{
    display:none;
    background:none; border:none;
    color:var(--text-light);
    width:44px; height:44px;
    cursor:pointer;
    justify-self:end;
  }

  .mobile-panel{
    display:none;
    position:fixed;
    top:0; left:0; right:0; bottom:0;
    background:var(--bg-dark);
    z-index:99;
    padding:100px 32px 40px;
    overflow-y:auto;
  }
  .mobile-panel.open{display:block;}
  .mobile-panel ul{
    list-style:none; margin:0 0 28px; padding:0;
    display:flex; flex-direction:column; gap:22px;
    font-family:var(--font-nav);
    font-size:16px; letter-spacing:0.06em; text-transform:uppercase;
  }
  .mobile-panel a{color:var(--text-light); display:inline-block; padding:6px 0;}
  .mobile-panel .close{
    position:absolute; top:22px; right:22px;
    background:none; border:none; color:var(--text-light); width:44px; height:44px; cursor:pointer;
  }

  @media (max-width:600px){
    .mobile-panel{padding:88px 20px 32px;}
  }

  @media (max-width:1100px){
    .nav-row{justify-content:center; position:relative;}
    .nav-left, .nav-right{display:none;}
    .nav-toggle{
      display:inline-flex; align-items:center; justify-content:center;
      position:absolute; right:0;
    }
  }
  @media (max-width:420px){
    .brand-logo{height:92px;}
    #site-header.is-scrolled .brand-logo{height:72px;}
  }

  /* ============ HERO ============ */
  .hero{
    position:relative;
    min-height:100vh;
    display:flex;
    flex-direction:column;
    justify-content:center;
    overflow:hidden;
    background:var(--bg-dark);
  }
  .hero-bg{
    position:absolute; inset:0;
    background:
      linear-gradient(180deg, rgba(10,10,10,0.55) 0%, rgba(10,10,10,0.25) 35%, rgba(10,10,10,0.92) 100%),
      radial-gradient(circle at 78% 28%, rgba(207,159,63,0.16), transparent 50%);
    z-index:1;
  }
  .hero-watermark{
    position:absolute;
    top:-6%; right:-8%;
    width:62%;
    max-width:680px;
    opacity:0.1;
    z-index:0;
    pointer-events:none;
  }
  .hero-bg .ph-label{
    position:absolute; bottom:18px; left:50%; transform:translateX(-50%);
    font-family:var(--font-nav); font-size:11px; letter-spacing:0.08em; text-transform:uppercase;
    color:rgba(247,242,231,0.55); background:rgba(0,0,0,0.35); padding:6px 14px;
  }

  .hero-content{
    position:relative;
    z-index:1;
    padding:160px 0 0;
    display:grid;
    grid-template-columns:1.15fr 0.85fr;
    gap:50px;
    align-items:start;
  }
  @media (max-width:880px){
    .hero-content{grid-template-columns:1fr; padding-top:140px;}
  }

  .hero h1{
    font-size:clamp(46px,7vw,86px);
    color:var(--text-light);
  }
  .hero h1 span{color:var(--gold);}
  .hero-actions{margin-top:28px; display:flex; gap:16px; flex-wrap:wrap;}
  @media (max-width:420px){
    .hero-actions{flex-direction:column;}
    .hero-actions .btn{justify-content:center; width:100%;}
  }

  .hero-quote{
    color:var(--text-light);
    padding-top:6px;
  }
  .quote-mark{width:34px; height:26px; margin-bottom:14px; color:var(--gold);}
  .hero-quote p{
    font-family:var(--font-body);
    font-style:italic;
    font-size:16px;
    line-height:1.75;
    color:var(--text-light-muted);
    margin:0 0 14px;
  }
  .hero-quote cite{
    font-family:var(--font-nav);
    font-style:normal;
    font-size:12px;
    letter-spacing:0.08em;
    text-transform:uppercase;
    color:var(--gold-soft);
  }

  .hero-bottom{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:center;
    margin-top:60px;
  }
  .hero-glass{
    width:min(420px,72vw);
    aspect-ratio:16/10;
    transform:translateY(28%);
  }

  .scroll-cue{
    position:absolute; bottom:26px; left:50%; transform:translateX(-50%);
    z-index:1; color:var(--text-light-muted);
    animation:bob 2.2s ease-in-out infinite;
  }
  @keyframes bob{0%,100%{transform:translate(-50%,0);}50%{transform:translate(-50%,8px);}}

  /* ============ IMG PLACEHOLDER (genérico) ============ */
  .img-placeholder{
    position:relative;
    width:100%;
    background:
      repeating-linear-gradient(135deg, #e9dcc0 0, #e9dcc0 14px, #ddcb9e 14px, #ddcb9e 28px);
    display:flex;
    align-items:center;
    justify-content:center;
    overflow:hidden;
  }
  .img-placeholder.dark{
    background:
      repeating-linear-gradient(135deg, #3a2c18 0, #3a2c18 14px, #30240f 14px, #30240f 28px);
  }
  .img-placeholder .fill-photo{
    position:absolute; inset:0; width:100%; height:100%;
    object-fit:cover; z-index:1;
  }
  .example-tag{
    position:absolute; bottom:8px; left:8px; z-index:3;
    font-family:var(--font-nav); font-size:8.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:#fff; background:rgba(0,0,0,0.6); padding:3px 7px;
  }
  .hero-photo-bg{
    position:absolute; inset:0; z-index:0;
    background-size:cover; background-position:center center;
  }
  .img-placeholder .ph-icon{width:26%; max-width:46px; opacity:0.5;}
  .img-placeholder .ph-label{
    position:absolute; bottom:8px; left:8px; right:8px;
    font-family:var(--font-nav); font-size:9.5px; letter-spacing:0.05em; text-transform:uppercase;
    color:rgba(34,29,23,0.65); background:rgba(255,255,255,0.6); padding:4px 6px; text-align:center;
  }
  .img-placeholder.dark .ph-label{color:#cdbe9a; background:rgba(0,0,0,0.35);}

  .hero-showcase{position:relative;min-height:820px;padding-top:var(--header-h);display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;color:#fff;background:#080706 url('../barock-hero.png') center/cover no-repeat}
  .hero-showcase::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,5,4,.98) 0%,rgba(5,5,4,.88) 35%,rgba(5,5,4,.32) 68%,rgba(5,5,4,.12) 100%),linear-gradient(0deg,rgba(5,5,4,.86),transparent 44%)}
  .hero-showcase-content{position:relative;z-index:1;width:min(1180px,100%);margin:auto;padding:90px 32px 56px}
  .hero-origin{display:inline-flex;align-items:center;gap:10px;margin-bottom:26px;color:#e7d8b9;font:600 12px var(--font-nav);letter-spacing:.14em;text-transform:uppercase}.hero-origin::before{content:"";width:30px;border-top:2px solid var(--gold)}
  .hero-showcase h1{max-width:760px;color:#fff;font-family:var(--font-nav);font-size:clamp(48px,6vw,84px);font-weight:600;line-height:1.02;letter-spacing:.01em}
  .hero-showcase h1 span{display:block;color:#dda520;font-family:'Lora',serif;font-size:1.02em;font-style:italic;font-weight:700;text-transform:none;line-height:1.05}
  .hero-lead{max-width:610px;margin:28px 0 30px;color:#e8e1d5;font-size:clamp(17px,2vw,22px);line-height:1.55}
  .hero-actions{display:flex;gap:14px;flex-wrap:wrap}.hero-actions .btn{min-width:210px}.hero-actions .btn-hero-outline{border-color:var(--gold);color:var(--gold);background:rgba(0,0,0,.2)}.hero-actions .btn-hero-outline:hover{background:var(--gold);color:#111}
  .hero-values{position:relative;z-index:1;display:grid;grid-template-columns:repeat(4,1fr);width:min(1320px,calc(100% - 40px));margin:0 auto 28px;padding:22px 24px;background:rgba(3,3,3,.72);border-top:1px solid rgba(207,159,63,.35);backdrop-filter:blur(6px)}
  .hero-value{display:grid;grid-template-columns:42px 1fr;gap:13px;align-items:center;padding:4px 20px;border-right:1px solid rgba(207,159,63,.24)}.hero-value:last-child{border-right:0}.hero-value svg{width:38px;height:38px;color:var(--gold)}.hero-value b{display:block;color:var(--gold);font:600 13px var(--font-nav);letter-spacing:.05em;text-transform:uppercase}.hero-value span{display:block;margin-top:4px;color:#e1d8c9;font-size:12.5px;line-height:1.35}
  .hero-showcase + .premium{padding-top:100px}
  @media(max-width:900px){.hero-showcase{min-height:860px;background-position:62% center}.hero-showcase::before{background:linear-gradient(90deg,rgba(5,5,4,.96),rgba(5,5,4,.57)),linear-gradient(0deg,rgba(5,5,4,.9),transparent 55%)}.hero-values{grid-template-columns:1fr 1fr;gap:18px}.hero-value:nth-child(2){border-right:0}}
  @media(max-width:600px){.hero-showcase{min-height:auto;background-position:66% center}.hero-showcase-content{padding:72px 20px 42px}.hero-origin{margin-bottom:18px}.hero-showcase h1{font-size:clamp(40px,12vw,58px)}.hero-lead{font-size:17px;margin:22px 0 25px}.hero-actions .btn{width:100%}.hero-values{width:100%;margin:0;padding:22px 20px;grid-template-columns:1fr}.hero-value{border-right:0;border-bottom:1px solid rgba(207,159,63,.2);padding:8px 0}.hero-value:last-child{border-bottom:0}}

  .quick-paths{background:#120e09;color:#f7f0e3;padding:34px 0;border-top:1px solid rgba(207,159,63,.34);border-bottom:1px solid rgba(207,159,63,.22)}
  .quick-path-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
  .quick-path-card{display:grid;grid-template-columns:48px 1fr;gap:14px;align-items:center;min-height:118px;padding:20px;background:rgba(255,255,255,.045);border:1px solid rgba(207,159,63,.32);transition:.2s}
  .quick-path-card:hover{transform:translateY(-3px);background:rgba(207,159,63,.12);border-color:rgba(207,159,63,.72)}
  .quick-path-icon{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#cf9f3f;color:#11100e;font-size:22px}
  .quick-path-card strong{display:block;color:#cf9f3f;font:700 14px var(--font-nav);letter-spacing:.08em;text-transform:uppercase}
  .quick-path-card span{display:block;margin-top:5px;color:#d8cfbf;font-size:13px;line-height:1.35}
  @media(max-width:900px){.quick-path-grid{grid-template-columns:1fr 1fr}}
  @media(max-width:560px){.quick-paths{padding:24px 0}.quick-path-grid{grid-template-columns:1fr}.quick-path-card{min-height:96px;padding:16px}}

  /* ============ ARTESANAL PREMIUM ============ */
  .premium{
    background:var(--bg-light);
    padding:200px 0 100px;
    position:relative;
    overflow:hidden;
  }
  .hop-deco{position:absolute; width:340px; opacity:0.05; pointer-events:none;}
  .hop-deco.right{bottom:-40px; right:-30px;}

  .premium-grid{
    position:relative; z-index:1;
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:60px;
    align-items:center;
  }
  @media (max-width:880px){
    .premium-grid{grid-template-columns:1fr; gap:40px;}
    .premium{padding-top:120px;}
  }
  .premium-text p{font-size:15.5px; line-height:1.85; color:#5a5142; margin:0;}
  .premium-text p:first-of-type,.premium-highlight{display:block;margin:6px 0 20px;padding:18px 22px;border-left:5px solid var(--gold);background:#fff8e8;color:#17130f!important;font-family:var(--font-display);font-size:clamp(21px,2.4vw,30px)!important;font-weight:700;line-height:1.28!important;text-transform:uppercase;letter-spacing:.02em;box-shadow:0 12px 30px rgba(60,42,18,.08)}

  .collage{
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    grid-template-rows:auto auto;
    gap:14px;
  }
  .collage .c1{grid-column:1/3; aspect-ratio:16/10;}
  .collage .c2{aspect-ratio:1/1;}
  .collage .c3{aspect-ratio:1/1;}
  .collage .c4{aspect-ratio:1/1;}
  .collage .c5{grid-column:2/4; aspect-ratio:16/9;}
  @media (max-width:560px){
    .collage{grid-template-columns:1fr 1fr;}
    .collage .c1{grid-column:1/3;}
    .collage .c5{grid-column:1/3;}
  }

  /* ============ DARK INTRO BAND ============ */
  .intro-band{
    background:var(--bg-dark);
    padding:90px 0;
    text-align:center;
    position:relative;
  }
  .intro-band::before{
    content:'';
    position:absolute; inset:0;
    background-image:repeating-linear-gradient(115deg, rgba(255,255,255,0.02) 0px, rgba(255,255,255,0.02) 2px, transparent 2px, transparent 9px);
    pointer-events:none;
  }
  .clink{width:64px; height:auto; margin:0 auto 18px; display:block;}
  .intro-band .section-intro{margin-top:18px;}

  /* ============ CERVEJAS ============ */
  .beers{background:var(--bg-light); padding:96px 0;}
  .beer-grid{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:28px;
    margin-top:54px;
  }
  @media (max-width:880px){.beer-grid{grid-template-columns:1fr;}}

  .beer-card{
    background:#fff;
    border:1px solid #e7dabc;
    display:grid;
    grid-template-columns:150px 1fr;
    box-shadow:0 10px 30px rgba(43,31,14,.06);
    transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
  }
  .beer-card:not(.coming-soon):hover{transform:translateY(-4px); box-shadow:0 16px 38px rgba(43,31,14,.12); border-color:#d6bd7e;}
  @media (max-width:560px){.beer-card{grid-template-columns:1fr;}}
  .card-photo{aspect-ratio:3/4; height:100%;}
  @media (max-width:560px){.card-photo{aspect-ratio:16/9;}}

  .beer-info{padding:24px 22px; display:flex; flex-direction:column;}
  .beer-name{font-family:var(--font-display); font-size:22px; color:var(--text-dark); text-transform:uppercase;}
  .beer-style{
    font-family:var(--font-nav); font-size:10.5px; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--amber); margin-top:6px; font-weight:500;
  }
  .beer-desc{font-size:14px; line-height:1.65; color:#6b6151; margin:12px 0 16px; flex-grow:1;}
  .beer-stats{
    display:flex; gap:16px; font-family:var(--font-nav); font-size:11px; letter-spacing:0.04em;
    color:#8c7f63; border-top:1px dashed #ddcd9f; padding-top:12px; flex-wrap:wrap; row-gap:8px;
  }
  .beer-stats b{color:var(--text-dark); font-size:14px; font-family:var(--font-body);}
  .beer-pairing{
    font-size:12.5px; font-style:italic; color:#8c7f63; margin-top:10px;
  }
  .beer-pairing b{font-style:normal; color:var(--amber);}
  .beer-buy{
    display:inline-flex; align-items:center; justify-content:center; gap:8px;
    margin-top:16px; padding:11px 20px;
    font-family:var(--font-nav); font-size:12px; font-weight:500; letter-spacing:0.08em; text-transform:uppercase;
    background:var(--gold); color:var(--bg-dark);
    border:1.5px solid var(--gold);
    transition:background 0.18s ease, color 0.18s ease, transform 0.18s ease;
    align-self:flex-start;
  }
  .beer-buy:hover{background:transparent; color:var(--amber-deep); transform:translateY(-1px);}
  .beer-buy svg{width:14px; height:14px; flex:0 0 auto;}

  .beer-card.coming-soon{
    display:flex; align-items:center; justify-content:center; text-align:center;
    border:1.5px dashed #d8c8a0; background:transparent; min-height:220px; padding:32px 24px;
  }
  .beer-card.coming-soon .cs-inner{max-width:260px;}
  .beer-card.coming-soon h3{
    font-family:var(--font-display); font-size:19px; color:var(--text-dark); text-transform:uppercase; margin-bottom:10px;
  }
  .beer-card.coming-soon p{font-size:13.5px; color:var(--text-muted); line-height:1.6; margin:0;}

  /* ============ DELIVERY DE CHOPE ============ */
  .chope{background:var(--bg-light); padding:96px 0;}
  .chope-grid{
    display:grid; grid-template-columns:0.9fr 1.1fr; gap:56px; align-items:center;
  }
  @media (max-width:880px){.chope-grid{grid-template-columns:1fr;}}
  .chope-photo{aspect-ratio:1/1;}
  .chope-list{list-style:none; margin:0 0 28px; padding:0;}
  .chope-list li{
    position:relative; padding-left:22px; margin-bottom:12px;
    font-size:15px; line-height:1.6; color:#5a5142;
  }
  .chope-list li::before{
    content:''; position:absolute; left:0; top:9px;
    width:8px; height:8px; background:var(--gold);
  }
  .chope-list li b{color:var(--text-dark); font-weight:700;}

  /* ============ EVENTOS ============ */
  .events{background:var(--bg-dark); padding:96px 0; position:relative;}
  .events::before{
    content:'';
    position:absolute; inset:0;
    background-image:repeating-linear-gradient(115deg, rgba(255,255,255,0.02) 0px, rgba(255,255,255,0.02) 2px, transparent 2px, transparent 9px);
    pointer-events:none;
  }
  .events-head{position:relative; z-index:1; text-align:center; margin-bottom:54px;}
  .events-head .section-intro{margin:18px auto 0;}

  .event-grid{position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:26px;}
  .event-group-title{position:relative;z-index:1;margin:10px 0 26px;padding-bottom:14px;border-bottom:1px solid var(--rule)}
  .event-group-title h3{color:var(--text-light);font-size:25px}.event-group-title .eyebrow{margin-bottom:6px}
  .event-group-title.past{margin-top:68px}.past-events{opacity:.88}
  @media (max-width:880px){.event-grid{grid-template-columns:1fr;}}

  .event-card{background:rgba(247,242,231,0.04); border:1px solid var(--rule); display:flex; flex-direction:column; height:100%;}
  .event-photo{aspect-ratio:16/10;}
  .event-photo video{background:#090806; cursor:pointer;}.event-symbol{width:72px;height:72px;opacity:.9}
  .featured-event{grid-column:auto}
  .event-gallery{display:block;padding:0;background:#090806}
  .event-gallery figure{margin:0;aspect-ratio:16/10;overflow:hidden;background:#17130f}
  .event-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .25s ease}
  .event-gallery figure:hover img{transform:scale(1.035)}
  .event-gallery-cover{position:relative;width:100%;height:auto;aspect-ratio:16/10;border:0;padding:0;cursor:pointer;background:#090806;overflow:hidden;color:white}
  .event-gallery-cover img{width:100%;height:100%;object-fit:cover;transition:transform .3s ease}
  .event-gallery-cover:hover img{transform:scale(1.025)}
  .event-video-cover{display:grid;place-items:center;background:radial-gradient(circle at 50% 38%,#4a341c 0,#19130c 48%,#090806 100%)}
  .event-video-cover .play-symbol{width:76px;height:76px;filter:drop-shadow(0 8px 16px rgba(0,0,0,.4))}
  .gallery-badge{position:absolute;right:18px;bottom:18px;background:rgba(10,9,7,.88);color:var(--gold-soft);border:1px solid rgba(207,159,63,.55);padding:11px 15px;font-family:var(--font-nav);font-size:11px;font-weight:600;letter-spacing:.1em;text-transform:uppercase}
  .event-lightbox{position:fixed;inset:0;z-index:500;background:rgba(5,5,4,.96);display:grid;grid-template-columns:72px minmax(0,1fr) 72px;align-items:center;padding:34px 18px}
  .event-lightbox[hidden]{display:none}
  .lightbox-stage{height:calc(100vh - 90px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}
  .lightbox-stage img,.lightbox-stage video{max-width:100%;max-height:calc(100% - 34px);object-fit:contain;background:#090806}
  .lightbox-stage [hidden]{display:none!important}
  .lightbox-count{color:var(--gold-soft);font-family:var(--font-nav);font-size:12px;letter-spacing:.1em;text-transform:uppercase}
  .lightbox-nav,.lightbox-close{border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.06);color:white;cursor:pointer;font-size:30px;width:54px;height:54px}
  .lightbox-close{position:absolute;right:20px;top:18px;font-size:24px}
  body.lightbox-open{overflow:hidden}
  .featured-event .event-body{display:block}
  @media(max-width:700px){.featured-event .event-body{display:block}.event-lightbox{grid-template-columns:44px minmax(0,1fr) 44px;padding:28px 4px}.lightbox-nav{width:40px;height:48px}.lightbox-close{right:10px;top:10px}}
  .event-body{padding:22px 22px 26px; display:flex; flex-direction:column; flex:1;}
  .event-date{
    font-family:var(--font-nav); font-size:11px; letter-spacing:0.1em; text-transform:uppercase;
    color:var(--gold); margin-bottom:10px; font-weight:500;
  }
  .event-title{font-family:var(--font-display); font-size:19px; color:var(--text-light); margin-bottom:10px; text-transform:uppercase;}
  .event-place{font-size:13.5px; color:var(--text-light-muted); display:flex; align-items:center; gap:6px; margin-top:auto;}
  .event-place svg{width:13px; height:13px; flex:0 0 auto;}

  /* ============ SOBRE / HISTÓRIA ============ */
  .story{background:var(--bg-light); padding:96px 0; position:relative; overflow:hidden;}
  .story-grid{display:grid; grid-template-columns:0.9fr 1.1fr; gap:56px; align-items:center; position:relative; z-index:1;}
  @media (max-width:880px){.story-grid{grid-template-columns:1fr;}}
  .story-photo{aspect-ratio:1/1;}
  .story blockquote{
    font-family:var(--font-display); font-size:clamp(20px,2.6vw,28px); line-height:1.4; text-transform:none;
    color:var(--text-dark); margin:0 0 22px; padding-left:24px; border-left:3px solid var(--gold);
  }
  .story p{font-size:15.5px; line-height:1.8; color:#6b6151; margin:0 0 16px;}
  .story-intro{display:grid;grid-template-columns:1fr .82fr;gap:64px;align-items:center;margin-bottom:28px}
  .story-feature{min-height:560px;position:relative;overflow:hidden;box-shadow:0 18px 46px rgba(39,28,12,.16)}
  .story-feature img,.brewery-photo img,.brewery-video video{width:100%;height:100%;object-fit:cover}
  .brewery-photo-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
  .brewery-photo{height:340px;overflow:hidden;position:relative;background:#17130f}
  .media-caption{position:absolute;left:16px;bottom:14px;z-index:2;background:rgba(10,9,7,.78);color:var(--gold-soft);padding:7px 11px;font-family:var(--font-nav);font-size:10px;letter-spacing:.1em;text-transform:uppercase}
  .brewery-media-head{text-align:center;margin:76px auto 34px;max-width:620px}
  .brewery-media-head h3{font-size:clamp(24px,3vw,34px)}
  .brewery-media-head p{margin:14px auto 0;color:var(--text-muted)}
  .brewery-video-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
  .brewery-video{aspect-ratio:9/16;background:#0b0a08;border:1px solid #d8c8a5;overflow:hidden;box-shadow:0 10px 26px rgba(39,28,12,.1)}
  .brewery-video video{display:block;background:#090806}
  @media(max-width:880px){.story-intro{grid-template-columns:1fr;gap:36px}.story-feature{min-height:520px}.brewery-video-grid{grid-template-columns:repeat(2,1fr)}}
  @media(max-width:600px){.story-feature{min-height:440px}.brewery-photo-grid{grid-template-columns:1fr}.brewery-photo{height:260px}.brewery-video-grid{grid-template-columns:1fr}.brewery-video{max-width:390px;width:100%;margin:auto}}

  /* ============ CTA LOJA ============ */
  .shop-cta{
    background:linear-gradient(120deg,var(--amber-deep),var(--amber) 60%,var(--gold));
    padding:78px 0;
    text-align:center;
  }
  .shop-cta h2{color:#1b1610; font-size:clamp(28px,3.6vw,40px); margin-bottom:16px;}
  .shop-cta p{color:#3c2a12; max-width:480px; margin:0 auto 30px; font-size:15.5px; line-height:1.7;}

  /* ============ FOOTER ============ */
  footer{background:#120e09; color:#94886e; padding:56px 0 28px;}
  .footer-grid{display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:40px; margin-bottom:40px;}
  @media (max-width:760px){.footer-grid{grid-template-columns:1fr; gap:32px;}}
  .footer-brand{margin-bottom:16px;}
  .footer-logo{height:64px; width:auto;}
  footer h4{font-family:var(--font-nav); font-size:11px; letter-spacing:0.12em; text-transform:uppercase; color:var(--gold); margin:0 0 16px; font-weight:500;}
  footer ul{list-style:none; margin:0; padding:0;}
  footer li{margin-bottom:10px; font-size:14px;}
  footer a:hover{color:var(--text-light);}
  .footer-bottom{
    border-top:1px solid rgba(227,169,63,0.18); padding-top:22px;
    display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; font-size:12.5px;
  }

  /* ============ WHATSAPP FLUTUANTE ============ */
  .wa-float{
    position:fixed; bottom:24px; right:24px; z-index:200;
    width:58px; height:58px; border-radius:50%; background:#25D366;
    display:flex; align-items:center; justify-content:center;
    box-shadow:0 6px 18px rgba(0,0,0,0.35); transition:transform 0.2s ease;
  }
  .wa-float:hover{transform:scale(1.08);}
  .wa-float svg{width:30px; height:30px;}
  .wa-tooltip{
    position:absolute; right:70px; bottom:14px; background:var(--bg-dark); color:var(--text-light);
    font-family:var(--font-nav); font-size:12px; padding:8px 12px; white-space:nowrap;
    opacity:0; pointer-events:none; transition:opacity 0.2s ease;
  }
  .wa-float:hover .wa-tooltip{opacity:1;}
  @media (max-width:600px){.wa-tooltip{display:none;}}
  @media (max-width:420px){
    .wa-float{bottom:16px; right:16px; width:52px; height:52px;}
    .wa-float svg{width:26px; height:26px;}
  }

  /* ============ REVEAL ============ */
  .reveal{opacity:0; transform:translateY(18px); transition:opacity 0.6s ease, transform 0.6s ease;}
  .reveal.is-visible{opacity:1; transform:translateY(0);}

/* Extraído de bloco inline adicional */
.city-reviews{background:#f3ecdf;color:#17130f}
  .origin-home + .premium{padding-top:100px}
  .city-story-banner{position:relative;min-height:390px;display:flex;align-items:center;overflow:hidden;background:#21180f url('../sao-joao-del-rei-origem-evento.jpeg') 72% center/cover no-repeat}
  .city-story-banner:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#f3ecdf 0%,rgba(243,236,223,.96) 32%,rgba(243,236,223,.58) 58%,rgba(243,236,223,.05) 82%)}
  .city-story-content{position:relative;z-index:1;max-width:470px;padding-top:62px;padding-bottom:62px}.city-story-content h2{font-size:clamp(34px,5vw,58px);color:#15120e}.city-story-content p{max-width:410px;color:#5f5647;font-size:17px;line-height:1.65}.city-story-content .btn{margin-top:8px}
  .reviews-area{padding:78px 0 94px}.reviews-heading{text-align:center;max-width:720px;margin:0 auto 38px}.reviews-heading h2{font-size:clamp(30px,4vw,44px)}.google-rating-summary{display:flex;justify-content:center;align-items:center;gap:10px;margin-top:13px;color:#655b4a}.google-rating-summary strong{font-size:22px;color:#17130f}.google-stars{color:#d69b22;letter-spacing:2px;font-size:18px}
  .reviews-shell{position:relative}.reviews-track{display:grid;grid-auto-flow:column;grid-auto-columns:calc((100% - 54px)/3);gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:4px 2px 18px}.reviews-track::-webkit-scrollbar{display:none}.google-review-card{scroll-snap-align:start;display:flex;flex-direction:column;min-height:270px;padding:24px;background:#fffdf8;border:1px solid #ddd0b8;border-radius:14px;box-shadow:0 10px 25px rgba(61,45,20,.07)}.review-stars{color:#d69b22;letter-spacing:2px;font-size:17px}.review-text{flex:1;color:#514a3f;line-height:1.6;font-style:italic}.review-author{display:grid;grid-template-columns:44px 1fr;gap:11px;align-items:center;margin-top:18px}.review-author img,.review-avatar-fallback{width:44px;height:44px;border-radius:50%;object-fit:cover;background:#17130f;color:#d7a849;display:grid;place-items:center;font-weight:700}.review-author b{display:block}.review-author small{color:#877b67}.review-author a:hover b{text-decoration:underline}
  .reviews-controls{display:flex;justify-content:center;gap:10px;margin-top:14px}.review-nav{width:44px;height:44px;border:1px solid #b78934;background:#fffdf8;color:#9c6813;font-size:22px;cursor:pointer}.reviews-loader,.reviews-fallback{text-align:center;padding:30px;color:#776c59}.reviews-loader{animation:reviewPulse 1.1s ease-in-out infinite alternate}@keyframes reviewPulse{to{opacity:.45}}.reviews-fallback a,.google-attribution{color:#9c6813;font-weight:700}.google-attribution{display:block;text-align:center;margin-top:18px;font-size:12px}
  @media(max-width:900px){.reviews-track{grid-auto-columns:calc((100% - 18px)/2)}}
  @media(max-width:600px){.city-story-banner{min-height:520px;background-position:62% center;align-items:flex-end}.city-story-banner:before{background:linear-gradient(0deg,#f3ecdf 0%,rgba(243,236,223,.94) 48%,rgba(243,236,223,.12) 100%)}.city-story-content{padding-top:190px;padding-bottom:42px}.reviews-area{padding:62px 0 78px}.reviews-track{grid-auto-columns:88%}}
  .beer-quiz{padding:72px 0;background:#e9ddc5;color:#11100e}
  .quiz-shell{display:grid;grid-template-columns:1fr;gap:24px;align-items:start}
  .quiz-copy{max-width:820px;text-align:center;margin:0 auto}.quiz-copy .underline{margin-left:auto;margin-right:auto}
  .beer-quiz .section-title.light{color:#11100e}.beer-quiz .eyebrow.light{color:#b9681d}.quiz-copy p{color:#716959;line-height:1.55;margin:0 auto;max-width:650px}
  .quiz-form{background:#fffdf8;color:#17130f;padding:26px;border:1px solid #d9c9aa;box-shadow:0 18px 50px rgba(45,32,16,.1);display:grid;grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);gap:22px;align-items:start}
  .quiz-fields{display:grid;grid-template-columns:1fr;gap:14px}
  .quiz-tabs{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin:2px 0 4px}.quiz-tab{min-height:48px;border:1px solid #cfc1a5;background:#fff;color:#2d2418;border-radius:999px;cursor:pointer;font:700 11px var(--font-nav);letter-spacing:.06em;text-transform:uppercase}.quiz-tab.is-active{background:#d7a849;border-color:#b9681d;color:#11100e}.quiz-tab.is-complete:after{content:" ✓";color:#1f6e38}.quiz-tab:focus-visible{outline:3px solid #d7a849;outline-offset:2px}
  .quiz-step{display:none}.quiz-step.is-active{display:block}
  .quiz-question{border:0;margin:0;padding:0}.quiz-question legend{font:700 14px var(--font-display);margin-bottom:8px;text-transform:uppercase;line-height:1.2}
  .quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.quiz-question.compact .quiz-options{grid-template-columns:repeat(3,1fr)}.quiz-option{position:relative}.quiz-option input{position:absolute;opacity:0}.quiz-option label{display:block;height:100%;min-height:58px;padding:9px 10px;border:1px solid #cfc1a5;background:#fff;cursor:pointer;line-height:1.25;border-radius:8px}.quiz-option input:checked+label{border-color:#b9681d;background:#d7a849;color:#11100e;box-shadow:inset 0 0 0 1px #b9681d}.quiz-option input:focus-visible+label{outline:3px solid #d7a849;outline-offset:2px}
.quiz-result{display:grid;min-height:100%;padding:24px;background:#17130f;color:#fff;border:1px solid #d7a849;box-shadow:0 14px 34px rgba(0,0,0,.18);align-content:start}.quiz-result:not(.show){opacity:.72}.quiz-result.show{animation:quizPop .22s ease}.quiz-image-panel{width:100%;min-height:190px;background:#fff;border-radius:14px;display:grid;place-items:center;margin:0 0 18px;padding:16px;box-shadow:inset 0 0 0 1px rgba(215,168,73,.22)}.quiz-result img{width:auto;max-width:100%;height:170px;object-fit:contain;margin:0}.quiz-result small{color:#d7a849;text-transform:uppercase;letter-spacing:.1em}.quiz-result h3{margin:5px 0 7px;font:700 24px var(--font-display);text-transform:uppercase}.quiz-result p{margin:0 0 11px;color:#d5cbbb;line-height:1.45}.quiz-result a{color:#d7a849;font-weight:700;text-decoration:underline}.quiz-result-placeholder{display:block;color:#d5cbbb;line-height:1.55}
  @keyframes quizPop{from{transform:translateY(8px);opacity:.65}to{transform:none;opacity:1}}
  .quiz-option label strong{display:block;font:700 12px var(--font-nav);letter-spacing:.06em;text-transform:uppercase}.quiz-option label span{display:block;margin-top:3px;color:#716959;font-size:11.8px}.quiz-option input:checked+label span{color:#2c220f}.quiz-helper{grid-column:1/-1;margin:0 0 2px;color:#716959;line-height:1.4;font-size:13px}.quiz-tags{display:flex;gap:7px;flex-wrap:wrap;margin:10px 0 12px}.quiz-tags span{padding:5px 8px;border:1px solid rgba(215,168,73,.55);color:#f2d48a;font:600 10px var(--font-nav);letter-spacing:.08em;text-transform:uppercase}.quiz-second{margin:10px 0 14px;color:#d5cbbb;font-size:14px}.quiz-second a{color:#f2d48a}.quiz-actions{grid-column:1/-1;display:flex;gap:12px;flex-wrap:wrap;align-items:center;margin-top:2px}.quiz-actions .btn{padding:11px 18px}.quiz-actions small{color:#8f846f;line-height:1.4}
  .quiz-result-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px}.quiz-result-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 12px;border:1px solid #d7a849;background:#d7a849;color:#11100e!important;font:700 11px var(--font-nav);letter-spacing:.07em;text-transform:uppercase;text-decoration:none}.quiz-result-actions a:first-child{background:transparent;color:#d7a849!important}.quiz-result-actions a:hover{transform:translateY(-1px)}
  .event-countdown{display:inline-flex;margin-top:12px;padding:7px 10px;background:#cf9f3f;color:#11100e;font:600 11px var(--font-nav);letter-spacing:.07em;text-transform:uppercase}
  .tourism-map-section{background:#17130f;color:#f7f0e3;padding:96px 0;position:relative;overflow:hidden}
  .tourism-map-section:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 15% 15%,rgba(207,159,63,.16),transparent 32%),radial-gradient(circle at 90% 20%,rgba(255,255,255,.05),transparent 26%),repeating-linear-gradient(135deg,rgba(255,255,255,.025) 0 1px,transparent 1px 12px);pointer-events:none}
  .tourism-head{position:relative;text-align:center;max-width:780px;margin:0 auto 42px}
  .tourism-head p{color:#d5cbbb;line-height:1.7;font-size:17px}
  .tourism-shell{position:relative;display:grid;grid-template-columns:1.18fr .82fr;gap:34px;align-items:start}
  .illustrated-map{position:relative;min-height:620px;border:1px solid rgba(207,159,63,.42);background:linear-gradient(135deg,#241b12,#0f0d0a 62%);box-shadow:0 24px 70px rgba(0,0,0,.35);overflow:hidden}
  .illustrated-map:before{content:"";position:absolute;inset:34px;border:1px solid rgba(207,159,63,.22);background:linear-gradient(90deg,transparent 49%,rgba(207,159,63,.14) 50%,transparent 51%),linear-gradient(0deg,transparent 49%,rgba(207,159,63,.1) 50%,transparent 51%);background-size:96px 96px;opacity:.55}
  .map-river{position:absolute;left:-8%;right:-8%;top:48%;height:74px;background:linear-gradient(90deg,transparent,#d7a849 18%,#f3d083 50%,#d7a849 82%,transparent);opacity:.32;transform:rotate(-8deg);filter:blur(.2px)}
  .map-route{position:absolute;border:2px dashed rgba(247,240,227,.34);border-radius:999px;transform:rotate(-12deg)}
  .route-one{left:12%;top:18%;width:66%;height:46%}.route-two{left:26%;top:40%;width:62%;height:34%;transform:rotate(10deg)}
  .map-compass{position:absolute;right:26px;top:24px;width:78px;height:78px;border:1px solid rgba(207,159,63,.55);border-radius:50%;display:grid;place-items:center;color:#cf9f3f;font:700 22px var(--font-display)}
  .map-compass:before,.map-compass:after{content:"";position:absolute;background:rgba(207,159,63,.55)}.map-compass:before{width:1px;height:58px}.map-compass:after{height:1px;width:58px}
  .tourism-pin{position:absolute;z-index:2;display:grid;gap:5px;justify-items:center;transform:translate(-50%,-50%);border:0;background:transparent;color:#fff;cursor:pointer}
  .pin-dot{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#cf9f3f;color:#11100e;border:2px solid #f7f0e3;box-shadow:0 8px 26px rgba(0,0,0,.45);font-size:20px;transition:.2s}
  .tourism-pin span:last-child{padding:5px 8px;background:rgba(17,16,14,.85);border:1px solid rgba(207,159,63,.35);font:600 10px var(--font-nav);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}
  .tourism-pin:hover .pin-dot,.tourism-pin.is-active .pin-dot{transform:translateY(-4px) scale(1.06);background:#f1c969}
  .tourism-pin[data-category="barock"] .pin-dot{background:#25d366;color:#062b14}
  .tourism-filters{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:18px}
  .tourism-filter{border:1px solid rgba(207,159,63,.55);background:transparent;color:#f7f0e3;padding:10px 13px;font:600 11px var(--font-nav);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
  .tourism-filter.is-active,.tourism-filter:hover{background:#cf9f3f;color:#11100e}
  .tourism-panel{background:#f7f0e3;color:#17130f;border:1px solid #d7c49a;box-shadow:0 18px 50px rgba(0,0,0,.25)}
  .tourism-card{display:none;padding:28px}.tourism-card.is-active{display:block}
  .tourism-card small{color:#b9681d;font:700 11px var(--font-nav);letter-spacing:.13em;text-transform:uppercase}
  .tourism-card h3{margin:8px 0 12px;font:700 30px var(--font-display);text-transform:uppercase}
  .tourism-card p{color:#625846;line-height:1.7;margin:0 0 18px}
  .tourism-card-actions{display:flex;gap:10px;flex-wrap:wrap}.tourism-card-actions a{min-height:44px;padding:0 16px;display:inline-flex;align-items:center;justify-content:center;background:#17130f;color:#fff;font:600 12px var(--font-nav);letter-spacing:.08em;text-transform:uppercase}.tourism-card-actions a.secondary{background:transparent;color:#17130f;border:1px solid #b9681d}
  .partner-card{margin-top:18px;padding:18px;background:#fff8e8;border:1px solid #d9c28e;color:#241b12}
  .partner-card strong{display:block;font:700 18px var(--font-display);text-transform:uppercase;margin-bottom:8px}
  .partner-card span{display:block;color:#625846;line-height:1.55;margin-top:6px}
  .partner-note{margin-top:18px;padding:16px;background:#efe3c9;border-left:4px solid #cf9f3f;color:#625846;line-height:1.55}
  @media(max-width:900px){.tourism-shell{grid-template-columns:1fr}.illustrated-map{min-height:560px}}
  @media(max-width:600px){.tourism-map-section{padding:72px 0}.illustrated-map{min-height:620px}.tourism-pin span:last-child{font-size:9px}.pin-dot{width:38px;height:38px}.tourism-card h3{font-size:24px}}
  body{padding-bottom:98px}.wa-float{display:none}.mobile-order-bar{position:fixed;z-index:8000;left:50%;bottom:18px;transform:translateX(-50%);width:min(900px,calc(100% - 30px));display:grid;grid-template-columns:repeat(4,1fr);gap:12px;pointer-events:none}.mobile-order-bar a{min-height:58px;display:flex;align-items:center;justify-content:center;gap:9px;color:#fff;font:600 12px var(--font-nav);letter-spacing:.06em;text-transform:uppercase;border:1px solid rgba(207,159,63,.48);border-radius:999px;background:rgba(17,16,14,.92);box-shadow:0 12px 30px rgba(0,0,0,.32);backdrop-filter:blur(12px);transition:.2s;pointer-events:auto}.mobile-order-bar a:hover,.mobile-order-bar a:focus-visible{background:var(--gold);color:var(--bg-dark);transform:translateY(-2px)}.mobile-order-bar a.action-whatsapp{background:#25d366;border-color:#25d366;color:#062b14}.mobile-order-bar a.action-whatsapp:hover,.mobile-order-bar a.action-whatsapp:focus-visible{background:#39e57a;color:#062b14}.mobile-order-bar .action-icon{font-size:20px;line-height:1}
@media(max-width:900px){.quiz-form{grid-template-columns:1fr}.quiz-result{min-height:auto}.quiz-result.show{grid-template-columns:1fr}.quiz-image-panel{min-height:170px}.quiz-result img{height:150px}}
@media(max-width:760px){.quiz-form{padding:20px}.quiz-tabs{grid-template-columns:1fr 1fr}.quiz-tab{border-radius:12px}.quiz-options,.quiz-question.compact .quiz-options{grid-template-columns:1fr}.quiz-result.show{grid-template-columns:1fr}.quiz-image-panel{min-height:150px;margin-bottom:14px}.quiz-result img{height:132px}.mobile-order-bar{left:10px;right:10px;bottom:10px;transform:none;width:auto;gap:7px}.mobile-order-bar a{min-height:54px;font-size:9px;gap:4px;padding:0 6px}.mobile-order-bar .action-icon{font-size:17px}}
  body.age-locked{overflow:hidden}
  .age-gate{position:fixed;inset:0;z-index:10000;display:flex;align-items:center;justify-content:center;padding:22px;background:rgba(0,0,0,.9);backdrop-filter:blur(8px)}
  .age-gate[hidden]{display:none}
  .age-card{width:min(500px,100%);padding:42px 34px;text-align:center;background:#13110e;color:#f7f0e3;border:1px solid #cf9f3f;box-shadow:0 28px 80px rgba(0,0,0,.65)}
  .age-card img{display:block;width:auto;height:92px;margin:0 auto 22px}
  .age-card h2{margin:0 0 12px;color:#cf9f3f;font:700 clamp(25px,5vw,34px) 'Cinzel',serif;text-transform:uppercase}
  .age-card p{margin:0 auto 25px;max-width:390px;color:#d4cbbb;line-height:1.6}
  .age-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}
  .age-button{min-width:150px;min-height:50px;padding:12px 20px;border:1px solid #cf9f3f;font:600 13px 'Oswald',sans-serif;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}
  .age-confirm{background:#cf9f3f;color:#11100e}.age-deny{background:transparent;color:#f7f0e3}
  @media(max-width:480px){.age-card{padding:34px 20px}.age-button{width:100%}}
