@font-face { font-family: "Orpheus Pro"; src: url("fonts/OrpheusPro-Regular.otf") format("opentype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "Orpheus Pro"; src: url("fonts/OrpheusPro-Medium.otf") format("opentype"); font-weight: 500; font-style: normal; font-display: swap; }
@font-face { font-family: "Orpheus Pro"; src: url("fonts/OrpheusPro-Bold.otf") format("opentype"); font-weight: 700; font-style: normal; font-display: swap; }
@font-face { font-family: "Orpheus Pro"; src: url("fonts/OrpheusPro-Italic.otf") format("opentype"); font-weight: 400; font-style: italic; font-display: swap; }

:root{
  --blu-italica:#2E2A80;
  --notte-velluto:#14304A;
  --giallo-limone:#F2C230;
  --bianco-calce:#F7F5F0;
  --crema:#FBF3DC;
  --superficie:#EDE8DE;
  --linhas:#9A96C2;
  --ink:#1B1A3A;
}

*{box-sizing:border-box;}
html{scrollbar-gutter:stable;scroll-behavior:smooth;}
body{margin:0;background:var(--bianco-calce);color:var(--ink);font-family:'Roboto',Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
a{color:var(--blu-italica);text-decoration:none;}
a:hover{color:var(--notte-velluto);}
img{display:block;max-width:100%;}
.section-pad{max-width:1180px;margin:0 auto;padding-left:40px;padding-right:40px;}
.narrow{max-width:780px;}

.eyebrow{font-family:'Roboto',sans-serif;font-weight:500;font-size:11px;letter-spacing:.28em;text-transform:uppercase;}
.display{font-family:'Orpheus Pro',Georgia,serif;font-weight:400;}

/* ---------- TOP BAR ---------- */
.topbar{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:18px 24px;background:rgba(247,245,240,.92);backdrop-filter:blur(8px);border-bottom:1px solid rgba(46,42,128,.12);}
.topbar.on-dark{background:rgba(20,20,58,.28);border-bottom:1px solid rgba(247,245,240,.16);}
.topbar.on-dark .brand-name,.topbar.on-dark .brand-tag{color:var(--bianco-calce);}
.brand{display:flex;flex-direction:column;line-height:1;}
.brand-name{font-family:'Orpheus Pro',Georgia,serif;font-size:21px;color:var(--ink);text-transform:uppercase;letter-spacing:.06em;}
.brand-tag{font-family:'Roboto',sans-serif;font-weight:500;font-size:8.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--blu-italica);margin-top:2px;}

.burger{width:40px;height:40px;border:none;background:transparent;position:relative;cursor:pointer;z-index:210;}
.burger span{position:absolute;left:9px;right:9px;height:2px;background:var(--ink);transition:transform .45s cubic-bezier(.65,0,.35,1),opacity .3s ease,background .3s ease;}
.topbar.on-dark .burger span{background:var(--bianco-calce);}
.burger span:nth-child(1){top:14px;}
.burger span:nth-child(2){top:20px;}
.burger span:nth-child(3){top:26px;}
body.menu-open .burger span{background:var(--bianco-calce) !important;}
body.menu-open .burger span:nth-child(1){transform:translateY(6px) rotate(45deg);}
body.menu-open .burger span:nth-child(2){opacity:0;}
body.menu-open .burger span:nth-child(3){transform:translateY(-6px) rotate(-45deg);}

/* ---------- LATERAL MENU ---------- */
.menu-veil{position:fixed;inset:0;background:rgba(14,13,38,.55);opacity:0;pointer-events:none;transition:opacity .5s ease;z-index:190;backdrop-filter:blur(2px);}
body.menu-open .menu-veil{opacity:1;pointer-events:auto;}

.side-menu{position:fixed;top:0;right:0;height:100%;width:min(88vw,440px);background:var(--notte-velluto);z-index:200;transform:translateX(100%);transition:transform .6s cubic-bezier(.16,1,.3,1);display:flex;flex-direction:column;justify-content:center;padding:40px 48px;overflow:hidden;}
body.menu-open .side-menu{transform:translateX(0);}
.side-menu::after{content:"";position:absolute;right:-60px;top:-60px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(242,194,48,.16),transparent 70%);}
.side-menu-links{display:flex;flex-direction:column;gap:6px;position:relative;z-index:2;}
.side-menu-links a{font-family:'Orpheus Pro',Georgia,serif;font-size:clamp(30px,7vw,42px);color:var(--bianco-calce);padding:10px 0;opacity:0;transform:translateX(28px);transition:opacity .5s ease,transform .5s ease;}
.side-menu-links a:hover{color:var(--giallo-limone);}
body.menu-open .side-menu-links a{opacity:1;transform:translateX(0);}
body.menu-open .side-menu-links a:nth-child(1){transition-delay:.15s;}
body.menu-open .side-menu-links a:nth-child(2){transition-delay:.22s;}
body.menu-open .side-menu-links a:nth-child(3){transition-delay:.29s;}
body.menu-open .side-menu-links a:nth-child(4){transition-delay:.36s;}
body.menu-open .side-menu-links a:nth-child(5){transition-delay:.43s;}
.side-menu-links a.current{color:var(--giallo-limone);}
.side-menu-foot{position:relative;z-index:2;margin-top:44px;opacity:0;transform:translateY(14px);transition:opacity .5s ease .5s,transform .5s ease .5s;}
body.menu-open .side-menu-foot{opacity:1;transform:none;}
.side-menu-foot .eyebrow{color:var(--giallo-limone);margin-bottom:8px;}
.side-menu-foot p{margin:0;font-size:13px;line-height:1.6;color:rgba(247,245,240,.7);}

body.menu-open{overflow:hidden;}

/* ---------- HERO ---------- */
.hero{position:relative;width:100%;height:100svh;min-height:560px;overflow:hidden;background:var(--ink);}
.hero-media{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;}
.hero-media.kb{animation:kenburns 24s ease-in-out infinite alternate;}
@keyframes kenburns{from{transform:scale(1.0) translate3d(0,0,0);}to{transform:scale(1.12) translate3d(-1%,-1%,0);}}
.hero-veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(14,13,38,.28) 0%,rgba(14,13,38,.30) 45%,rgba(11,10,32,.88) 100%);}
.hero-wave{position:absolute;left:0;right:0;bottom:-1px;height:70px;opacity:.5;}
.hero-content{position:absolute;left:0;right:0;top:0;bottom:0;display:flex;flex-direction:column;justify-content:center;padding:0 24px;color:var(--bianco-calce);}
.hero-fade{opacity:0;transform:translateY(18px);animation:heroFade .9s ease forwards;}
@keyframes heroFade{to{opacity:1;transform:translateY(0);}}
.hero-h1{margin:0 0 20px;font-size:clamp(40px,11vw,80px);line-height:.98;letter-spacing:-.01em;font-weight:400;}
.scroll-cue{position:absolute;left:50%;bottom:20px;transform:translateX(-50%);width:22px;height:36px;border:1.5px solid rgba(247,245,240,.6);border-radius:14px;}
.scroll-cue::before{content:"";position:absolute;top:6px;left:50%;width:3px;height:8px;margin-left:-1.5px;border-radius:2px;background:var(--giallo-limone);animation:cue 1.8s ease infinite;}
@keyframes cue{0%{opacity:1;transform:translateY(0);}70%{opacity:0;transform:translateY(10px);}100%{opacity:0;transform:translateY(0);}}

/* ---------- BUTTONS ---------- */
.btn{display:inline-block;font-family:'Roboto',sans-serif;font-weight:500;font-size:13px;letter-spacing:.12em;text-transform:uppercase;padding:16px 32px;transition:background .2s ease,color .2s ease,border-color .2s ease;}
.btn-primary{background:var(--giallo-limone);color:var(--ink);border:1px solid var(--giallo-limone);}
.btn-primary:hover{background:var(--ink);color:var(--giallo-limone);border-color:var(--ink);}
.btn-outline{background:transparent;color:var(--bianco-calce);border:1px solid rgba(247,245,240,.55);}
.btn-outline:hover{border-color:var(--bianco-calce);background:rgba(247,245,240,.08);}
.btn-outline-dark{background:transparent;color:var(--blu-italica);border:1px solid rgba(46,42,128,.4);}
.btn-outline-dark:hover{border-color:var(--blu-italica);background:rgba(46,42,128,.06);}

/* ---------- GRID / REVEAL ---------- */
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);}
.grid-2{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;}
.frame{overflow:hidden;background:var(--superficie);}
.frame img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease;}
.frame:hover img{transform:scale(1.05);}

.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s ease;}
.reveal.in{opacity:1;transform:translateY(0);}

/* ---------- FOOTER ---------- */
.site-footer{width:100%;background:var(--ink);color:rgba(247,245,240,.75);}
.footer-top{display:flex;flex-wrap:wrap;justify-content:space-between;gap:28px;padding:48px 24px 28px;border-bottom:1px solid rgba(247,245,240,.14);}
.footer-links{display:flex;flex-wrap:wrap;gap:22px;font-family:'Roboto',sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(247,245,240,.8);}
.footer-links a{color:rgba(247,245,240,.8);}
.footer-links a:hover{color:var(--giallo-limone);}
.footer-bottom{padding:22px 24px 40px;font-size:12px;line-height:1.7;color:rgba(247,245,240,.5);}
.footer-bottom strong{color:rgba(247,245,240,.72);font-weight:500;}

@media (prefers-reduced-motion:reduce){
  .hero-media.kb{animation:none;}
  .hero-fade{animation:none;opacity:1;transform:none;}
  .frame img{transition:none;}
  .reveal{opacity:1;transform:none;transition:none;}
}

/* ---------- LANGUAGE SWITCH ---------- */
.lang-switch{display:flex;align-items:center;gap:10px;line-height:1;}
.lang-switch a{display:block;border-radius:3px;opacity:.45;filter:grayscale(.6);transition:opacity .2s ease,transform .2s ease,filter .2s ease;box-shadow:0 0 0 1px rgba(0,0,0,.12);}
.lang-switch a:hover{opacity:.85;filter:none;}
.lang-switch a.current{opacity:1;filter:none;transform:scale(1.18);box-shadow:0 0 0 1px rgba(242,194,48,.9);}
.lang-switch .fi{display:block;width:20px;height:15px;border-radius:3px;background-size:cover;background-position:center;}
.topbar .lang-switch{margin-left:6px;padding-left:20px;border-left:1px solid rgba(27,26,58,.18);}
.topbar.on-dark .lang-switch{border-left-color:rgba(247,245,240,.3);}
.side-menu-foot .lang-switch{margin-top:20px;}

@media (min-width:900px){
  .desktop-links{display:flex;align-items:center;gap:30px;}
  .desktop-links a{font-family:'Roboto',sans-serif;font-weight:500;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);border-bottom:1px solid transparent;padding:4px 0;}
  .desktop-links a:hover{color:var(--blu-italica);border-color:var(--blu-italica);}
  .topbar.on-dark .desktop-links a{color:var(--bianco-calce);}
}
@media (max-width:899px){
  .desktop-links{display:none;}
  .grid-2{grid-template-columns:1fr;}
  .grid-3{grid-template-columns:1fr;}
}

/* Video player customizado */
.vplayer{position:relative;overflow:hidden;background:var(--notte-velluto);aspect-ratio:9/16;max-height:80vh;width:100%;max-width:420px;justify-self:center;cursor:pointer;}
.vplayer video{width:100%;height:100%;object-fit:cover;display:block;}
.vp-big{position:absolute;left:50%;top:50%;width:60px;height:60px;margin:-30px 0 0 -30px;border-radius:50%;border:1.5px solid rgba(242,194,48,.9);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--giallo-limone);cursor:pointer;padding:0;filter:drop-shadow(0 1px 4px rgba(14,13,38,.55));transition:transform .35s cubic-bezier(.16,1,.3,1),background .3s,opacity .3s;}
.vp-big:hover{transform:scale(1.07);background:rgba(242,194,48,.18);}
.vp-big svg{width:22px;height:22px;fill:currentColor;margin-left:3px;}
.vplayer.playing .vp-big{opacity:0;pointer-events:none;}
.vp-bar{position:absolute;left:0;right:0;bottom:0;padding:34px 16px 14px;background:linear-gradient(180deg,rgba(14,13,38,0) 0%,rgba(14,13,38,.72) 100%);display:flex;align-items:center;gap:12px;color:var(--bianco-calce);cursor:default;}
.vp-btn{flex:none;width:34px;height:34px;border-radius:50%;border:1px solid rgba(247,245,240,.55);background:transparent;color:var(--bianco-calce);display:flex;align-items:center;justify-content:center;padding:0;cursor:pointer;transition:border-color .25s,color .25s,background .25s;}
.vp-btn:hover{border-color:var(--giallo-limone);color:var(--giallo-limone);}
.vp-btn svg{width:14px;height:14px;fill:currentColor;}
.vp-btn .i-pause,.vplayer.playing .vp-btn .i-play{display:none;}
.vplayer.playing .vp-btn .i-pause{display:block;}
.vp-btn .i-on,.vplayer.unmuted .vp-btn .i-off{display:none;}
.vplayer.unmuted .vp-btn .i-on{display:block;}
.vp-progress{flex:1;height:2px;background:rgba(247,245,240,.28);position:relative;cursor:pointer;}
.vp-progress::before{content:"";position:absolute;left:0;right:0;top:-10px;bottom:-10px;}
.vp-fill{position:absolute;left:0;top:0;bottom:0;width:0;background:var(--giallo-limone);}
.vp-hint{position:absolute;top:14px;right:14px;font-family:'Roboto',sans-serif;font-weight:500;font-size:9.5px;letter-spacing:.2em;text-transform:uppercase;color:var(--bianco-calce);background:rgba(46,42,128,.82);border:1px solid rgba(242,194,48,.6);padding:7px 12px;cursor:pointer;transition:opacity .3s;}
.vplayer.unmuted .vp-hint{opacity:0;pointer-events:none;}
.vp-btn:focus-visible,.vp-big:focus-visible,.vp-hint:focus-visible{outline:2px solid var(--giallo-limone);outline-offset:2px;}

/* ---------- ONDE ADQUIRIR E PROVAR ---------- */
.where{background:var(--crema);border-bottom:1px solid rgba(46,42,128,.1);}
.where-inner{padding-top:clamp(52px,8vw,88px);padding-bottom:clamp(52px,8vw,88px);text-align:center;}
.where h2{margin:0 auto 12px;font-size:clamp(26px,3.4vw,38px);line-height:1.15;}
.where-lead{margin:0 auto clamp(30px,5vw,48px);max-width:52ch;font-size:15px;line-height:1.7;color:rgba(27,26,58,.68);}
.where-group{margin:0 auto;}
.where-group + .where-group{margin-top:clamp(28px,4vw,44px);}
.where-label{display:flex;align-items:center;gap:16px;justify-content:center;margin-bottom:20px;color:var(--blu-italica);}
.where-label::before,.where-label::after{content:"";height:1px;width:clamp(28px,8vw,80px);background:rgba(46,42,128,.22);}
.where-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;max-width:860px;margin:0 auto;}
.where-grid.two{max-width:560px;}
.where-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:14px;padding:28px 16px 24px;background:var(--bianco-calce);border:1px solid rgba(46,42,128,.14);color:var(--ink);transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;}
.where-card:hover{border-color:var(--giallo-limone);transform:translateY(-3px);box-shadow:0 10px 26px rgba(20,48,74,.1);color:var(--ink);}
.where-icon{width:34px;height:34px;background-color:var(--blu-italica);-webkit-mask:var(--icon) center/contain no-repeat;mask:var(--icon) center/contain no-repeat;transition:background-color .25s ease;}
.where-card:hover .where-icon{background-color:var(--notte-velluto);}
.where-name{font-family:'Orpheus Pro',Georgia,serif;font-size:19px;line-height:1.2;}
.where-sub{font-family:'Roboto',sans-serif;font-weight:500;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:rgba(27,26,58,.5);margin-top:-8px;}

.where-grid{grid-template-columns:repeat(3,1fr);max-width:780px;}
@media (min-width:1000px){.where-grid{grid-template-columns:repeat(6,1fr);max-width:1120px;}}
@media (max-width:599px){.where-grid{grid-template-columns:repeat(2,1fr);max-width:420px;}}
.where-logo{width:44px;height:44px;border-radius:50%;object-fit:cover;margin:-5px 0;}

/* ---------- RECEITAS ---------- */
[hidden]{display:none !important;}
.rc-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:28px;max-width:960px;margin:0 auto;}
.rc-card{display:flex;flex-direction:column;background:var(--bianco-calce);border:1px solid rgba(46,42,128,.14);color:var(--ink);transition:border-color .25s ease,transform .25s ease,box-shadow .25s ease;}
.rc-card:hover{border-color:var(--giallo-limone);transform:translateY(-4px);box-shadow:0 14px 32px rgba(20,48,74,.12);color:var(--ink);}
.rc-thumb{display:block;aspect-ratio:4/3;}
.rc-body{display:flex;flex-direction:column;gap:10px;padding:22px 24px 26px;}
.rc-cat{color:var(--blu-italica);}
.rc-name{font-size:clamp(22px,2.4vw,28px);line-height:1.15;}
.rc-desc{font-size:14.5px;line-height:1.65;color:rgba(27,26,58,.68);}
.rc-open{margin-top:6px;font-family:'Roboto',sans-serif;font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blu-italica);}
.rc-back{font-family:'Roboto',sans-serif;font-weight:500;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--blu-italica);border-bottom:1px solid rgba(46,42,128,.3);padding-bottom:3px;}
.rc-meta{display:flex;gap:36px;padding:18px 0;border-top:1px solid rgba(46,42,128,.18);border-bottom:1px solid rgba(46,42,128,.18);margin-bottom:30px;}
.rc-meta div{display:flex;flex-direction:column;gap:6px;}
.rc-meta .eyebrow{color:rgba(27,26,58,.5);}
.rc-meta strong{font-weight:500;font-size:15px;}
.rc-h{margin:0 0 14px;font-size:24px;color:var(--ink);}
.rc-list{margin:0 0 32px;padding:0;list-style:none;border-top:1px solid rgba(46,42,128,.18);}
.rc-list li{padding:13px 0;border-bottom:1px solid rgba(46,42,128,.18);font-size:15px;line-height:1.5;}
.rc-steps{margin:0 0 30px;padding:0;list-style:none;counter-reset:s;}
.rc-steps li{counter-increment:s;position:relative;padding:0 0 16px 46px;font-size:15px;line-height:1.7;color:rgba(27,26,58,.82);}
.rc-steps li::before{content:counter(s);position:absolute;left:0;top:-2px;width:30px;height:30px;border-radius:50%;background:var(--giallo-limone);color:var(--ink);font-family:'Orpheus Pro',Georgia,serif;font-size:16px;display:flex;align-items:center;justify-content:center;}
.rc-tip{margin:0;font-size:14.5px;line-height:1.7;color:rgba(27,26,58,.65);}
.rc-tip em{font-style:italic;color:var(--blu-italica);font-size:17px;}
@media (max-width:699px){.rc-grid{grid-template-columns:1fr;}}
