/* ==========================================================================
   Clericot Café — Design System (derivado do sistema editorial open-design.ai,
   re-tokenizado para a identidade "Tropical Chique" do Clericot)
   Estrutura: 1 tokens · 2 base · 3 chrome (rails/topbar/nav) · 4 tipografia/botões
   5 hero · 6 ticker/strip · 7 seções da home · 8 páginas internas (cardápios,
   experiências, petit) · 9 motion · 10 responsivo · 11 utilitários
   ========================================================================== */

/* 1. TOKENS ------------------------------------------------------------------ */
:root{
  --paper:#F5ECD7;          /* creme — fundo da página */
  --paper-warm:#F1E7CF;
  --paper-dark:#E6DABB;
  --bone:#FBF6E9;           /* cards */
  --ink:#1E3A26;            /* verde-profundo — texto, botões, bloco escuro */
  --ink-soft:#2A5135;       /* verde */
  --ink-mute:#4F6652;
  --ink-faint:#8A978A;
  --sun:#D99A2B;            /* acento principal (o "coral" do sistema original) */
  --sun-light:#E8B75B;
  --sun-deep:#B97E1C;
  --green:#2A5135;
  --green-mid:#3D6B42;
  --green-soft:#4C7A52;
  --green-deep:#1E3A26;
  --line:rgba(30,58,38,.16);
  --line-soft:rgba(30,58,38,.08);
  --line-faint:rgba(30,58,38,.05);
  --line-cream:rgba(245,236,215,.18);
  --shadow:0 30px 60px -30px rgba(30,58,38,.25);
  --shadow-card:0 18px 40px -28px rgba(30,58,38,.35);
  --script:"Halimun","Brush Script MT",cursive;
  --sans:"Filson Pro","Inter Tight",-apple-system,BlinkMacSystemFont,system-ui,sans-serif;
  --body:"Filson Pro","Inter",-apple-system,system-ui,sans-serif;
  --mono:"SF Mono",ui-monospace,Menlo,Consolas,monospace;
  --radius:18px;
  --ease-out:cubic-bezier(.22,1,.36,1);
  --ease-spring:cubic-bezier(.18,1.25,.4,1);
}

/* 2. BASE -------------------------------------------------------------------- */
*{box-sizing:border-box;margin:0;padding:0}
html,body{background:var(--paper);color:var(--ink);overflow-x:hidden;overflow-x:clip;max-width:100%}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}
body{font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;position:relative;overflow-wrap:break-word}
img,video,canvas,svg{max-width:100%}
img,video{height:auto}
a{color:inherit}
button{font:inherit;color:inherit}
::selection{background:var(--sun-light);color:var(--ink)}
:focus-visible{outline:2px solid var(--sun);outline-offset:3px;border-radius:4px}
/* ruído de papel (igual ao sistema de referência, tingido de verde) */
body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:3;
  background-image:radial-gradient(circle at 12% 18%,rgba(42,81,53,.07) 0,transparent 28%),radial-gradient(circle at 88% 72%,rgba(217,154,43,.06) 0,transparent 32%),url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 0.12  0 0 0 0 0.2  0 0 0 0 0.14  0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n)'/></svg>");
  background-size:auto,auto,240px 240px;mix-blend-mode:multiply;opacity:.9}
.shell{position:relative;z-index:2}
.container{max-width:1360px;padding:0 64px;margin:0 auto;position:relative}
.container.wide{max-width:1480px}
.container.narrow{max-width:960px}

/* 3. CHROME: trilhos, topbar, nav ------------------------------------------- */
.side-rail{position:fixed;top:0;bottom:0;width:36px;z-index:3;pointer-events:none;display:flex;align-items:center;justify-content:center}
.side-rail.right{right:0;border-left:1px solid var(--line-faint)}
.side-rail.left{left:0;border-right:1px solid var(--line-faint)}
.side-rail .rail-text{font-family:var(--sans);font-size:10px;font-weight:700;letter-spacing:.42em;text-transform:uppercase;color:var(--ink-faint);writing-mode:vertical-rl;white-space:nowrap}
.side-rail.right .rail-text{transform:rotate(180deg)}
.site-chrome{position:sticky;top:0;z-index:50;background:var(--paper);transform:translateY(0);transition:transform .36s cubic-bezier(.22,.61,.36,1),box-shadow .22s ease;will-change:transform}
.site-chrome.is-hidden{transform:translateY(-100%);pointer-events:none}
.site-chrome.is-scrolled{box-shadow:0 1px 0 var(--line),0 14px 30px -24px rgba(30,58,38,.35)}
.topbar{border-bottom:1px solid var(--line);padding:10px 0;background:var(--paper);position:relative;z-index:2}
.topbar-inner{display:flex;justify-content:space-between;align-items:center;gap:24px;font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}
.topbar-inner b{color:var(--ink);font-weight:700}
.topbar-inner .sun{color:var(--sun)}
.topbar-inner>span{white-space:nowrap}
.topbar-inner .mid{display:inline-flex;gap:26px}
.topbar-inner .right{display:inline-flex;gap:18px;align-items:center}
.topbar-link{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:color .16s ease,border-color .16s ease}
.topbar-link:hover{color:var(--sun);border-bottom-color:var(--sun)}
.topbar .pulse,.pulse{width:6px;height:6px;border-radius:50%;background:var(--sun);display:inline-block;margin-right:6px;animation:pulse 2.4s ease-in-out infinite;vertical-align:middle}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.35}}
.nav{padding:18px 0;background:var(--paper);border-bottom:1px solid transparent}
.nav-inner{display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:12px;color:var(--ink);text-decoration:none}
.brand-logo{height:36px;width:auto;display:block;color:var(--ink)}
.brand-logo svg,svg.logo-use{display:block;height:100%;width:auto;aspect-ratio:1479/450;overflow:visible}
.brand-meta{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);line-height:1.3;margin-left:4px;border-left:1px solid var(--line);padding-left:14px}
.brand-meta b{display:block;color:var(--ink);font-weight:700}
.nav-links{display:flex;gap:34px;list-style:none}
.nav-links a{color:var(--ink);text-decoration:none;font-family:var(--sans);font-size:14px;font-weight:500;transition:color .18s ease;position:relative}
.nav-links a:hover,.nav-links a.is-active{color:var(--sun-deep)}
.nav-links li.has-dropdown{position:relative}
.nav-links .dropdown-caret{display:inline-block;margin-left:4px;font-size:10px;color:var(--ink-faint);transition:transform .18s ease}
.nav-links li.has-dropdown:hover .dropdown-caret,.nav-links li.has-dropdown:focus-within .dropdown-caret{transform:translateY(1px);color:var(--sun)}
.nav-dropdown{position:absolute;top:100%;left:-16px;margin:0;padding:10px;list-style:none;min-width:330px;background:var(--paper);border:1px solid rgba(30,58,38,.14);border-radius:10px;box-shadow:0 12px 36px rgba(30,58,38,.14);opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:50}
.nav-links li.has-dropdown:hover .nav-dropdown,.nav-links li.has-dropdown:focus-within .nav-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.nav-dropdown:before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.nav-dropdown a{display:block;padding:10px 12px;border-radius:6px;color:var(--ink);text-decoration:none;transition:background .12s ease}
.nav-dropdown a:hover{background:rgba(217,154,43,.12);color:var(--ink)}
.nav-dropdown .dropdown-name{display:block;font-family:var(--sans);font-size:14px;font-weight:700;margin-bottom:2px}
.nav-dropdown .dropdown-blurb{display:block;font-size:12px;color:var(--ink-faint);line-height:1.4}
.nav-dropdown .dropdown-group{padding:8px 12px 4px;font-family:var(--sans);font-size:9.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--sun-deep);font-weight:700}
.nav-toggle{display:none;align-items:center;justify-content:center;width:40px;height:40px;margin-left:auto;padding:0;background:transparent;border:1px solid rgba(30,58,38,.18);border-radius:10px;cursor:pointer;color:var(--ink);transition:background .18s ease,border-color .18s ease}
.nav-toggle:hover{background:rgba(30,58,38,.06)}
.nav-toggle-icon,.nav-toggle-icon:before,.nav-toggle-icon:after{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;transition:transform .18s ease,opacity .18s ease}
.nav-toggle-icon{position:relative}
.nav-toggle-icon:before,.nav-toggle-icon:after{content:"";position:absolute;left:0}
.nav-toggle-icon:before{top:-6px}
.nav-toggle-icon:after{top:6px}
.nav.is-open .nav-toggle-icon{background:transparent}
.nav.is-open .nav-toggle-icon:before{top:0;transform:rotate(45deg)}
.nav.is-open .nav-toggle-icon:after{top:0;transform:rotate(-45deg)}
.nav-side{display:inline-flex;align-items:center;gap:16px}
.nav-cta{display:inline-flex;align-items:center;gap:10px;padding:10px 18px;border-radius:999px;background:var(--ink);color:var(--paper);font-family:var(--sans);font-size:13px;font-weight:600;text-decoration:none;white-space:nowrap;flex-shrink:0;transition:transform .16s ease,background .16s ease}
.nav-cta:hover{transform:translateY(-1px);background:var(--green-mid)}
.nav-cta:after{content:"↗";color:var(--sun-light);font-size:12px}
.nav-cta.ghost{background:transparent;color:var(--ink);border:1px solid rgba(30,58,38,.2)}
.nav-cta.ghost:hover{background:rgba(30,58,38,.06)}
.nav-cta.ghost:after{content:"";display:none}
.status-dot{width:28px;height:28px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center}
.status-dot:after{content:"";width:6px;height:6px;border-radius:50%;background:var(--sun)}

/* 4. TIPOGRAFIA E BOTÕES ------------------------------------------------------ */
.label{font-family:var(--sans);font-size:11px;font-weight:700;letter-spacing:.22em;text-transform:uppercase;color:var(--sun-deep);display:inline-flex;align-items:center;gap:12px}
.label:before{content:"";width:18px;height:1px;background:var(--sun);display:inline-block;flex:none}
.label .ix{color:var(--ink-faint);font-weight:500;margin-left:4px}
.label.plain:before{display:none}
.display{font-family:var(--sans);font-weight:800;letter-spacing:-.026em;color:var(--ink);line-height:1.02}
.script{font-family:var(--script);font-style:normal;font-weight:400;letter-spacing:0}
.display em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.02em;color:var(--green-mid)}
.display .dot{color:var(--sun)}
.script-line{font-family:var(--script);font-size:clamp(24px,2.6vw,34px);color:var(--sun-deep);line-height:1.25;display:block;padding-left:.12em}
.script-kicker{font-family:var(--script);font-size:clamp(26px,3vw,40px);color:var(--sun-deep);line-height:1.1;display:block;margin:0 0 18px;padding-left:.14em}
.lead{font-family:var(--body);font-size:16px;line-height:1.6;color:var(--ink-soft);max-width:38ch;font-weight:400}
.meta{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}
.coord{font-family:var(--mono);font-size:10px;letter-spacing:.04em;color:var(--ink-faint)}
.roman{font-family:var(--sans);font-weight:700;color:var(--sun-deep)}
.btn{display:inline-flex;align-items:center;gap:12px;padding:14px 22px;border-radius:999px;font-family:var(--sans);font-size:14px;font-weight:600;letter-spacing:-.005em;text-decoration:none;border:1px solid transparent;transition:transform .18s ease,background .18s ease,color .18s ease,border-color .18s ease;cursor:pointer;white-space:nowrap;line-height:1.2}
.btn-primary{background:var(--ink);color:var(--paper);box-shadow:0 14px 26px -16px rgba(30,58,38,.7)}
.btn-primary:hover{transform:translateY(-1px);background:var(--green-mid)}
.btn-sun{background:var(--sun);color:var(--ink);box-shadow:0 14px 26px -16px rgba(217,154,43,.9)}
.btn-sun:hover{transform:translateY(-1px);background:var(--sun-light)}
.btn-ghost{background:transparent;color:var(--ink);border-color:rgba(30,58,38,.24)}
.btn-ghost:hover{background:rgba(30,58,38,.06)}
.btn-light{background:var(--paper);color:var(--ink)}
.btn-light:hover{background:var(--bone);transform:translateY(-1px)}
.btn-outline-light{background:transparent;color:var(--paper);border-color:rgba(245,236,215,.4)}
.btn-outline-light:hover{background:rgba(245,236,215,.1)}
.btn .arrow{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center}
.btn .arrow svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:1.8}
.btn.sm{padding:10px 16px;font-size:13px}
.tag{font-family:var(--sans);font-size:9px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border-radius:999px;margin-left:8px;position:relative;top:-2px;white-space:nowrap;display:inline-block;line-height:1.3}
.tag-maispedido,.tag-sun{background:var(--sun);color:var(--ink)}
.tag-novo,.tag-novidade,.tag-green{background:var(--green);color:var(--paper)}
.tag-soft{background:rgba(30,58,38,.08);color:var(--ink-soft)}
.inline-link{color:var(--ink);text-decoration:none;border-bottom:1px solid var(--line);transition:color .16s ease,border-color .16s ease}
.inline-link:hover{color:var(--sun-deep);border-bottom-color:var(--sun)}
.read-more{margin-top:40px;display:inline-flex;align-items:center;gap:10px;font-family:var(--sans);font-size:13px;font-weight:600;color:var(--ink);text-decoration:none;letter-spacing:.02em;border-bottom:1px solid var(--sun);padding-bottom:6px}
.read-more:after{content:"→";color:var(--sun)}

/* 5. HERO ----------------------------------------------------------------------- */
.hero{position:relative;padding:0;min-height:min(calc(100vh - 140px),920px);display:flex;flex-direction:column;border-bottom:1px solid var(--line)}
.hero>.container.hero-grid{flex:1 1 auto}
.hero-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:48px;align-items:stretch;width:100%;position:relative}
.hero-copy{padding:5vh 0 4vh;display:flex;flex-direction:column;position:relative}
.hero-pill{align-self:flex-start;display:inline-flex;align-items:center;gap:8px;margin-bottom:24px;padding:7px 13px;border:1px solid rgba(217,154,43,.4);border-radius:999px;background:rgba(217,154,43,.14);color:var(--sun-deep);font-family:var(--sans);font-size:12px;font-weight:700;letter-spacing:0;line-height:1;text-decoration:none;transition:transform .16s ease,background .16s ease}
.hero-pill:hover{transform:translateY(-1px);background:rgba(217,154,43,.24)}
.hero-pill .dotp{width:7px;height:7px;border-radius:50%;background:var(--sun);animation:pulse 2.4s ease-in-out infinite}
.hero-copy .label{margin-bottom:26px}
.hero h1{font-size:clamp(46px,5.4vw,84px);line-height:.98;margin-bottom:26px;max-width:11ch}
.hero h1 em{font-weight:300}
.hero-copy .lead{margin-bottom:30px;max-width:40ch;font-size:17px}
.hero-actions{display:inline-flex;align-items:center;gap:14px;margin-bottom:36px;flex-wrap:wrap}
.hero-stats{display:flex;align-items:center;gap:22px;flex-wrap:wrap;margin-bottom:28px}
.hero-stats .stat{display:inline-flex;align-items:center;gap:10px;white-space:nowrap}
.hero-stats .stat .ring{width:36px;height:36px;border-radius:50%;border:1px dashed var(--ink);display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:10.5px;font-weight:700;flex-shrink:0;letter-spacing:-.02em}
.hero-stats .stat .ring.solid{border-style:solid}
.hero-stats .stat .ring.sun{border-color:var(--sun);color:var(--sun-deep)}
.hero-stats .stat-label{font-family:var(--sans);font-size:11px;line-height:1.25;color:var(--ink-soft);letter-spacing:.04em;text-transform:uppercase}
.hero-stats .stat-label b{display:block;font-weight:700;color:var(--ink);font-size:12px}
.hero-foot{margin-top:auto;padding-top:22px;border-top:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;gap:24px}
.hero-foot .meta{line-height:1.4}
/* prancha do hero: fundo verde com a assinatura animada e as ondas */
.hero-art{position:relative;height:min(calc(100vh - 170px),820px);min-height:560px;max-height:860px;margin:3vh 0 3vh;width:100%}
.prancha{position:relative;height:100%;width:100%;border-radius:28px;background:var(--ink);color:var(--paper);overflow:hidden;box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:center;justify-content:center}
.prancha:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n2'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.95  0 0 0 0 0.85  0 0 0 0.06 0'/></filter><rect width='100%' height='100%' filter='url(%23n2)'/></svg>");background-size:240px 240px;opacity:.7;mix-blend-mode:screen}
.prancha .sol{position:absolute;width:38%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 60%,var(--sun-deep));right:-8%;top:9%;opacity:.92;filter:blur(.2px);animation:sol-rise 2.2s var(--ease-out) both}
@keyframes sol-rise{from{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:.92}}
.prancha .logo-wrap{position:relative;z-index:1;width:70%;max-width:600px;margin-top:2%}
.prancha .cc-logo-anim{width:100%;height:auto;display:block;color:var(--paper)}
.prancha .ondas-wrap{position:absolute;left:0;right:0;bottom:0;height:31%;color:rgba(245,236,215,.92);z-index:1}
.prancha .ondas{width:100%;height:100%;display:block}
.prancha .annot{color:rgba(245,236,215,.62)}
.prancha .annot.coord{color:rgba(245,236,215,.55)}
.prancha .index{position:absolute;left:18px;top:52px;font-family:var(--sans);font-size:10.5px;font-weight:600;letter-spacing:.16em;color:rgba(245,236,215,.6);text-transform:uppercase;background:rgba(30,58,38,.55);padding:10px 12px;border:1px solid rgba(245,236,215,.16);border-radius:6px;backdrop-filter:blur(2px);z-index:2}
.prancha .index span{display:block;line-height:1.7}
.prancha .index span .n{color:var(--sun-light);margin-right:6px;font-weight:700}
.prancha .index span.on{color:var(--paper);font-weight:700}
.prancha .replay{position:absolute;right:16px;bottom:calc(31% + 10px);z-index:3;width:34px;height:34px;border-radius:50%;border:1px solid rgba(245,236,215,.3);background:rgba(30,58,38,.4);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background .16s ease,transform .16s ease}
.prancha .replay:hover{background:rgba(245,236,215,.16);transform:rotate(-30deg)}
.prancha .replay svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:1.8}
.annot{position:absolute;font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);line-height:1.4;white-space:nowrap;z-index:2}
.annot-tl{top:16px;left:18px}
.annot-tr{top:16px;right:18px;text-align:right}
.annot-bl{bottom:16px;left:18px}
.prancha .annot-bl{bottom:calc(31% + 18px)}
.annot-br{bottom:16px;right:18px;text-align:right}
.prancha .annot-br{bottom:calc(31% + 18px);right:62px}
.annot.coord{font-family:var(--mono);font-size:10px;letter-spacing:.04em;text-transform:none}
.hero-art .corner{position:absolute;width:22px;height:22px;border-color:var(--ink-faint);border-style:solid;border-width:0;z-index:2}
.corner.tl{top:-8px;left:-8px;border-top-width:1px;border-left-width:1px}
.corner.tr{top:-8px;right:-8px;border-top-width:1px;border-right-width:1px}
.corner.bl{bottom:-8px;left:-8px;border-bottom-width:1px;border-left-width:1px}
.corner.br{bottom:-8px;right:-8px;border-bottom-width:1px;border-right-width:1px}

/* assinatura animada (mesmo timing do vídeo original) */
.cc-logo-anim mask path{stroke-dasharray:1;stroke-dashoffset:0;animation:cc-draw var(--t,.3s) linear var(--d,0s) both}
@keyframes cc-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.cc-logo-anim .cc-cafe{animation:cc-rise .55s var(--ease-spring) 2s both}
@keyframes cc-rise{from{opacity:0;transform:translateY(46px)}to{opacity:1;transform:translateY(0)}}
.cc-logo-anim.is-static mask path,.cc-logo-anim.is-static .cc-cafe{animation:none}
/* ondas: máscaras de traço (mesma direção/tempo do vídeo) + flutuação */
.ondas mask path{stroke-dasharray:1;stroke-dashoffset:0;animation:ond-draw var(--t,.5s) cubic-bezier(.3,.6,.4,1) var(--d,0s) both}
@keyframes ond-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.ondas .ond-top{animation:ond-float 9s ease-in-out 1s infinite alternate}
.ondas .ond-mid{animation:ond-float 11s ease-in-out 1.4s infinite alternate-reverse}
.ondas .ond-bot{animation:ond-float 13s ease-in-out .6s infinite alternate}
@keyframes ond-float{from{transform:translate(-14px,4px)}to{transform:translate(14px,-6px)}}
.ondas.is-static mask path,.ondas.is-static [class^=ond-]{animation:none}
.ondas-band{display:block;width:100%;height:140px;color:var(--green)}
.ondas-band .ondas{width:100%;height:100%;display:block}

/* 6. TICKER ("wire") E GUIA RÁPIDO ------------------------------------------- */
.wire{border-bottom:1px solid var(--line);padding:24px 0 26px;background:var(--paper);position:relative;overflow:hidden}
.wire-inner{display:grid;grid-template-columns:minmax(180px,230px) minmax(0,1fr);gap:32px;align-items:center}
.wire-left{display:inline-flex;align-items:center;gap:14px;border-right:1px solid var(--line);padding-right:24px;min-height:56px}
.wire-mark{width:22px;height:22px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;flex-shrink:0}
.wire-pulse{width:6px;height:6px;border-radius:50%;background:var(--sun);display:inline-block;animation:pulse 2.4s ease-in-out infinite}
.wire-title{font-family:var(--sans);font-size:11px;line-height:1.4;display:flex;flex-direction:column;gap:3px}
.wire-title b{color:var(--ink);font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.wire-title span{color:var(--ink-faint);font-size:10px;letter-spacing:.14em;text-transform:uppercase}
.wire-rows{display:grid;gap:8px;min-width:0}
.wire-row{overflow:hidden;mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,black 5%,black 95%,transparent)}
.marquee-track{display:inline-flex;align-items:center;gap:36px;width:max-content;white-space:nowrap;animation:marquee-x 60s linear infinite;will-change:transform}
.wire-row.reverse .marquee-track{animation-direction:reverse;animation-duration:74s}
.wire-row:hover .marquee-track{animation-play-state:paused}
@keyframes marquee-x{0%{transform:translate(0)}to{transform:translate(-50%)}}
.wire-item{display:inline-flex;align-items:baseline;gap:8px;font-family:var(--sans);font-size:12px;letter-spacing:.04em;color:var(--ink-mute);text-decoration:none;flex-shrink:0}
.wire-item .wire-dot{color:var(--sun);font-size:16px;line-height:0;position:relative;top:-1px;margin-right:2px}
.wire-item .wire-coord{font-family:var(--mono);font-size:10.5px;color:var(--ink-faint);letter-spacing:0}
.wire-item .wire-name{text-transform:uppercase;letter-spacing:.18em;color:var(--ink);font-weight:600}
.wire-item .wire-role{text-transform:uppercase;letter-spacing:.16em;color:var(--sun-deep);font-size:10px}
.wire-item.is-link:hover .wire-name{color:var(--sun-deep)}
.quick-strip{padding:34px 0 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}
.quick-strip-inner{display:grid;grid-template-columns:minmax(180px,220px) 1fr;gap:28px;align-items:center}
.quick-strip-label{font-family:var(--mono);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-mute)}
.quick-strip-label .ix{color:var(--sun);margin-left:6px}
.quick-strip-list{list-style:none;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 24px;padding:0;margin:0}
.quick-strip-list li{display:flex;min-width:0}
.quick-strip-list a,.quick-strip-list .item{display:grid;gap:4px;padding:6px 0;border-bottom:1px solid transparent;text-decoration:none;color:var(--ink);font-family:var(--sans);min-width:0;transition:border-color .16s ease,color .16s ease}
.quick-strip-list a:hover{border-bottom-color:var(--sun);color:var(--sun-deep)}
.quick-strip-list .k{font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-mute)}
.quick-strip-list .v{font-size:13.5px;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}

/* 7. SEÇÕES --------------------------------------------------------------------- */
section{position:relative;padding:120px 0}
section.tight{padding:84px 0}
section.flush{padding:0}
.sec-rule{border-top:1px solid var(--line);padding-top:18px;margin-bottom:48px;display:flex;justify-content:space-between;align-items:center;font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint)}
.sec-rule .roman{font-family:var(--sans);font-weight:800;color:var(--sun-deep);font-size:13px;letter-spacing:.08em}
.sec-rule .meta-grp{display:inline-flex;gap:26px}
.sec-rule .dot-mark{color:var(--sun)}
.section-header{margin-bottom:64px}
.section-header .label{margin-bottom:28px}
.section-header h2{font-size:clamp(40px,4.6vw,66px);max-width:22ch}
.section-header .lead{margin-top:22px}
/* Manifesto / sobre */
.about-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:80px;align-items:center}
.about h2{font-size:clamp(42px,5vw,74px);margin:28px 0 34px}
.about .lead{margin-bottom:34px;max-width:44ch;font-size:17px}
.about .footer-row{display:flex;align-items:center;gap:20px;margin-top:52px;color:var(--ink-faint);font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase}
.about .footer-row .mark{width:32px;height:32px;border-radius:50%;border:1px solid var(--ink);display:inline-flex;align-items:center;justify-content:center;font-family:var(--script);font-size:17px;color:var(--ink);flex:none}
.about .stamp{margin-left:auto;display:inline-flex;flex-direction:column;align-items:flex-end;line-height:1.4;text-align:right}
.about .stamp span:first-child{color:var(--sun-deep)}
.about-art{position:relative;max-width:620px;margin-left:auto;width:100%}
.about-art .scene{display:block;width:100%;height:auto;filter:drop-shadow(0 30px 40px rgba(30,58,38,.18))}
.scene-svg{display:block;width:100%;height:auto;color:var(--ink)}
.scene-svg .sun{fill:var(--sun)}
.scene-svg .knock{fill:var(--scene-bg,var(--paper))}
.about-side-note{position:absolute;right:-8px;top:-70px;text-align:right;font-family:var(--sans);font-size:10.5px;line-height:1.55;color:var(--ink-faint);letter-spacing:.04em;max-width:18ch}
.about-side-note b{display:block;width:36px;height:1px;background:var(--sun);margin:0 0 10px auto}
.about-caption{margin-top:14px;font-family:var(--sans);font-size:9.5px;color:var(--ink-faint);text-align:right;letter-spacing:.06em;line-height:1.45}
.about-caption b{color:var(--ink);display:block}
/* Experiências (cards) */
.exp-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.exp-art{position:relative;aspect-ratio:1/1;max-width:600px;border-radius:26px;background:var(--bone);box-shadow:var(--shadow),inset 0 0 0 1px rgba(30,58,38,.06);overflow:hidden;display:flex;flex-direction:column;justify-content:flex-end}
.exp-art .ondas{height:46%;width:100%;color:var(--green);display:block}
.exp-art .sol{position:absolute;width:32%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 62%,var(--sun-deep));left:12%;top:14%;opacity:.95}
.exp-art .big-script{position:absolute;right:8%;top:12%;font-family:var(--script);font-size:clamp(44px,5vw,72px);color:var(--ink);line-height:.9;text-align:right;max-width:60%}
.exp-art .ribbon{position:absolute;right:-42px;top:50%;font-family:var(--sans);font-size:10.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--ink-faint);writing-mode:vertical-rl;transform:rotate(180deg)}
.exp-art .ribbon b{color:var(--sun-deep)}
.exp-copy h2{font-size:clamp(40px,4.6vw,62px);margin:22px 0 28px}
.cards{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:22px}
.cards>.card:last-child:nth-child(odd){grid-column:1/-1} /* nº ímpar de cards (5 desde 23/08/2026: + Música ao Vivo): o último ocupa a linha inteira */
.cards>.card:last-child:nth-child(odd) p{max-width:52ch}
.card{padding:28px 26px 34px;background:var(--bone);border-radius:var(--radius);box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.06);position:relative;overflow:hidden;transition:transform .2s ease;text-decoration:none;color:inherit;display:block}
.card:hover{transform:translateY(-3px)}
.card .num{font-family:var(--sans);font-weight:800;font-size:20px;color:var(--sun-deep);letter-spacing:-.02em;margin-bottom:16px;display:flex;justify-content:space-between;align-items:baseline}
.card .num .tag{font-family:var(--sans);font-size:9.5px;color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase;font-style:normal;font-weight:600;background:none;padding:0;margin:0;top:0}
.card .icon{width:30px;height:30px;margin-bottom:16px;color:var(--ink);display:block}
.card .icon svg{width:100%;height:100%;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.card h3{font-family:var(--sans);font-size:21px;font-weight:700;line-height:1.08;letter-spacing:-.014em;margin-bottom:12px}
.card p{font-family:var(--body);font-size:13.5px;color:var(--ink-mute);line-height:1.55;max-width:26ch}
.card .arrow-mark{position:absolute;right:22px;bottom:22px;width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);transition:all .18s ease}
.card:hover .arrow-mark{background:var(--sun);border-color:var(--sun);color:var(--ink)}
.card .arrow-mark svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:1.8}

/* Cardápios (hub em azulejos, herdado de "labs") */
.menus-head{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:end;margin-bottom:44px}
.menus-head h2{font-size:clamp(40px,4.8vw,68px)}
.pills{display:flex;flex-wrap:wrap;gap:10px;justify-content:flex-end}
.pill{padding:9px 18px;border-radius:999px;border:1px solid var(--line);font-family:var(--sans);font-size:13px;font-weight:500;color:var(--ink-soft);background:transparent;cursor:pointer;transition:all .18s ease;display:inline-flex;align-items:center;gap:8px;text-decoration:none}
.pill:hover{background:rgba(30,58,38,.06)}
.pill.active,.pill.is-active{background:var(--ink);border-color:var(--ink);color:var(--paper)}
.pill .count{font-size:10px;color:var(--ink-faint);border-left:1px solid var(--line);padding-left:8px}
.pill.active .count,.pill.is-active .count{color:rgba(245,236,215,.7);border-color:rgba(245,236,215,.3)}
.menus-meta{display:flex;align-items:flex-start;justify-content:flex-end;gap:22px;margin-bottom:30px}
.menus-meta .ring{width:38px;height:38px;border-radius:50%;border:1px dashed var(--ink);display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:11px;font-weight:700}
.menus-meta .meta-text{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;line-height:1.55;color:var(--ink-faint);max-width:30ch}
.menus-meta .meta-text b{display:block;color:var(--ink)}
.menus-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:22px}
.menu-tile{display:flex;flex-direction:column;text-decoration:none;color:inherit}
.tile-img{aspect-ratio:4/5;border-radius:16px;overflow:hidden;margin-bottom:18px;box-shadow:var(--shadow);position:relative;background:var(--bone);display:flex;align-items:flex-end;transition:transform .25s var(--ease-out)}
.menu-tile:hover .tile-img{transform:translateY(-4px)}
.tile-img.t-green{background:linear-gradient(165deg,var(--green-mid),var(--green-deep));color:var(--paper)}
.tile-img.t-sun{background:linear-gradient(165deg,var(--sun-light),var(--sun-deep));color:var(--ink)}
.tile-img.t-cream{background:linear-gradient(165deg,var(--bone),var(--paper-dark));color:var(--ink)}
.tile-img.t-soft{background:linear-gradient(165deg,var(--green-soft),var(--green));color:var(--paper)}
.tile-img .ondas{position:absolute;left:0;right:0;bottom:0;height:42%;width:100%;opacity:.9}
.tile-img.t-green .ondas,.tile-img.t-soft .ondas{color:rgba(245,236,215,.9)}
.tile-img.t-sun .ondas{color:rgba(30,58,38,.85)}
.tile-img.t-cream .ondas{color:var(--green)}
.tile-img .tile-word{position:absolute;left:18px;top:16px;right:8px;font-family:var(--script);font-size:clamp(30px,2.6vw,42px);line-height:1;color:currentColor;white-space:nowrap;overflow:visible}
.tile-img .tile-sun{position:absolute;right:14%;top:34%;width:30%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 62%,var(--sun-deep));opacity:.95}
.tile-img.t-sun .tile-sun{background:radial-gradient(circle at 40% 35%,#F7F0DE,var(--paper) 62%,var(--paper-dark))}
.tile-img .badge{position:absolute;top:12px;right:12px;background:rgba(245,236,215,.92);color:var(--ink);padding:4px 9px;border-radius:4px;font-family:var(--sans);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;z-index:1}
.tile-img.t-cream .badge{background:var(--ink);color:var(--paper)}
.tile-img .tile-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.menu-tile .num-row{font-family:var(--sans);font-size:10.5px;color:var(--ink-faint);letter-spacing:.14em;margin-bottom:8px;display:flex;justify-content:space-between;text-transform:uppercase}
.menu-tile h4{font-family:var(--sans);font-size:19px;font-weight:700;letter-spacing:-.014em;margin-bottom:8px}
.menu-tile p{font-family:var(--body);font-size:13px;color:var(--ink-mute);line-height:1.55;margin-bottom:14px}
.menu-tile .arrow-mark{width:28px;height:28px;border:1px solid var(--line);border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--ink);margin-top:auto;align-self:flex-start;transition:all .18s ease}
.menu-tile:hover .arrow-mark{background:var(--sun);border-color:var(--sun)}
.menu-tile .arrow-mark svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:1.8}
.menus-foot{display:flex;align-items:center;justify-content:space-between;margin-top:50px;border-top:1px dashed var(--line);padding-top:22px;gap:20px;flex-wrap:wrap}
.progress{display:flex;align-items:center;gap:8px}
.progress span{width:26px;height:2px;background:var(--line);border-radius:2px}
.progress span.on{background:var(--sun)}
.more-menus{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:42px}
.mini-card{padding:20px 22px;border:1px solid var(--line);border-radius:14px;background:rgba(251,246,233,.6);text-decoration:none;color:inherit;display:flex;flex-direction:column;gap:8px;transition:border-color .18s ease,transform .18s ease}
.mini-card:hover{border-color:var(--sun);transform:translateY(-2px)}
.mini-card .k{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--sun-deep);font-weight:700}
.mini-card h5{font-family:var(--sans);font-size:17px;font-weight:700;letter-spacing:-.01em}
.mini-card p{font-size:13px;color:var(--ink-mute);line-height:1.5}
/* Um dia no Clericot (herdado de "method") */
.day-head{display:grid;grid-template-columns:1.4fr 1fr;gap:60px;align-items:start;margin-bottom:72px}
.day-head h2{font-size:clamp(44px,5.2vw,76px)}
.day-head .right{display:flex;align-items:flex-start;gap:14px;padding-top:14px}
.day-head .plus{color:var(--sun);font-size:24px;line-height:1;font-family:var(--sans)}
.day-head .right p{font-family:var(--sans);font-size:13px;color:var(--ink-soft);max-width:24ch;line-height:1.55}
.day-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:44px;position:relative}
.day-grid:before{content:"";position:absolute;top:60px;left:50px;right:50px;height:1px;background:var(--line-soft)}
.day-step{position:relative}
.day-step .num{font-family:var(--script);font-size:62px;color:var(--sun-deep);line-height:.9;margin-bottom:22px;background:var(--paper);display:inline-block;padding-right:12px;position:relative;z-index:1}
.day-step .hour{font-family:var(--sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);font-weight:700;margin-bottom:10px;display:block}
.day-step h4{font-family:var(--sans);font-size:27px;font-weight:800;letter-spacing:-.022em;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;padding-right:18px}
.day-step h4 .arrow-r{color:var(--ink-faint);font-size:22px;line-height:1;font-weight:400}
.day-step:last-child h4 .arrow-r{display:none}
.day-step p{font-family:var(--body);font-size:13.5px;color:var(--ink-mute);line-height:1.55;margin-bottom:22px;max-width:26ch}
.day-step .img{aspect-ratio:1/1;background:var(--bone);border-radius:14px;overflow:hidden;box-shadow:var(--shadow);position:relative;display:flex;align-items:flex-end;justify-content:center}
.day-step .img .sky{position:absolute;inset:0}
.day-step .img .sun-disc{position:absolute;left:50%;width:34%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 62%,var(--sun-deep));transform:translateX(-50%)}
.day-step .img .ondas{position:relative;width:100%;height:38%;color:var(--green)}
.day-step .img .tag-time{position:absolute;left:12px;top:12px;background:rgba(245,236,215,.9);color:var(--ink);padding:4px 9px;border-radius:4px;font-family:var(--sans);font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;z-index:1}
.day-step .links{display:flex;flex-wrap:wrap;gap:8px;margin-top:14px}
.day-step .links a{font-family:var(--sans);font-size:11px;font-weight:600;letter-spacing:.04em;color:var(--ink);text-decoration:none;border:1px solid var(--line);padding:6px 10px;border-radius:999px;transition:all .16s ease}
.day-step .links a:hover{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.day-foot{margin-top:72px;display:flex;justify-content:space-between;align-items:center;border-top:1px dashed var(--line);padding-top:24px;gap:20px;flex-wrap:wrap}
.day-foot .left,.day-foot .right{font-family:var(--sans);font-size:11px;color:var(--ink-faint);letter-spacing:.18em;text-transform:uppercase}
.day-foot .left{display:inline-flex;align-items:center;gap:12px}
.day-foot .left .ring{width:20px;height:20px;border:1px dashed var(--ink-faint);border-radius:50%}
.day-foot .right b{color:var(--ink)}
/* Bloco escuro — Petit Comité (herdado de "work") */
.feature-dark{background:var(--ink);color:var(--paper);border-radius:32px;margin:0 64px;overflow:hidden;position:relative;padding:104px 64px}
.feature-dark:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n2'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.95  0 0 0 0 0.85  0 0 0 0.05 0'/></filter><rect width='100%' height='100%' filter='url(%23n2)'/></svg>");background-size:240px 240px;opacity:.6;mix-blend-mode:screen}
.feature-dark .ondas-bg{position:absolute;left:0;right:0;bottom:-2px;height:180px;color:rgba(245,236,215,.08);pointer-events:none}
.feature-dark .ondas-bg .ondas{width:100%;height:100%}
.dark-rule{position:relative;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line-cream);padding-top:16px;margin-bottom:56px;font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,236,215,.55)}
.dark-rule .roman{color:var(--sun-light)}
.dark-rule .mid{display:inline-flex;gap:24px}
.dark-rule .mid .dot-mark{color:var(--sun-light)}
.feature-grid{display:grid;grid-template-columns:1fr 1.05fr .85fr;gap:48px;align-items:center;position:relative}
.feature-dark .label{color:var(--sun-light)}
.feature-dark .label:before{background:var(--sun-light)}
.feature-copy h2{font-family:var(--sans);font-weight:800;font-size:clamp(34px,3.8vw,52px);line-height:1;letter-spacing:-.024em;margin:28px 0 28px;color:var(--paper)}
.feature-copy h2 em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.02em;color:var(--sun-light)}
.feature-copy h2 .dot{color:var(--sun-light)}
.feature-copy .lead{color:rgba(245,236,215,.8);margin-bottom:30px;max-width:36ch}
.feature-copy .facts{display:flex;gap:22px;flex-wrap:wrap;margin:0 0 30px;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,236,215,.65)}
.feature-copy .facts b{display:block;color:var(--paper);font-size:15px;letter-spacing:-.01em;text-transform:none;font-weight:700;margin-bottom:2px}
.dark-link{display:inline-flex;align-items:center;gap:18px;color:var(--paper);font-family:var(--sans);font-size:14px;font-weight:600;text-decoration:none;border-bottom:2px solid var(--sun);padding-bottom:12px;width:fit-content}
.dark-link:after{content:"↗";color:var(--sun-light)}
.feature-card{background:var(--paper);color:var(--ink);border-radius:18px;padding:32px 30px;position:relative;transform:rotate(-1.2deg);text-decoration:none;display:block;transition:transform .28s ease,box-shadow .28s ease}
.feature-card:hover{transform:rotate(-1.2deg) translateY(-4px);box-shadow:var(--shadow)}
.feature-card.alt{transform:rotate(2.4deg) translateY(20px);padding:28px 26px;background:var(--bone)}
.feature-card.alt:hover{transform:rotate(2.4deg) translateY(16px);box-shadow:var(--shadow)}
.feature-card .label-row{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}
.feature-card .small-label{font-family:var(--sans);font-size:10.5px;color:var(--sun-deep);letter-spacing:.18em;text-transform:uppercase;font-weight:700}
.feature-card .index{font-family:var(--mono);font-size:11px;color:var(--ink-faint);letter-spacing:.04em}
.feature-card h3{font-family:var(--sans);font-size:clamp(26px,2.4vw,36px);font-weight:800;letter-spacing:-.022em;line-height:1.05;margin-bottom:12px}
.feature-card .price{font-family:var(--sans);font-size:15px;font-weight:700;color:var(--green);margin-bottom:10px}
.feature-card p{font-family:var(--body);font-size:14px;color:var(--ink-mute);line-height:1.55;margin-bottom:22px;max-width:30ch}
.feature-card .meta-row{display:flex;justify-content:space-between;color:var(--ink-faint);font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;border-top:1px solid var(--line);padding-top:14px;gap:12px}
.feature-card .year{color:var(--sun-deep);font-weight:700}
.feature-arrows{position:absolute;right:64px;bottom:64px;display:inline-flex;align-items:center;gap:10px}
.feature-arrows .nav-btn{width:46px;height:46px;border-radius:50%;border:1px solid rgba(245,236,215,.25);background:transparent;color:var(--paper);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;text-decoration:none}
.feature-arrows .nav-btn.active{background:var(--sun);border-color:var(--sun);color:var(--ink)}
/* Frase da casa + origens/parceiros (herdado de "testimonial") */
.voice-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:80px;align-items:center}
.voice-copy h2{font-family:var(--sans);font-size:clamp(36px,4vw,54px);font-weight:700;letter-spacing:-.022em;line-height:1.12;margin-bottom:30px}
.voice-copy h2 em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.02em;color:var(--sun-deep)}
.author{display:flex;align-items:center;gap:18px;margin-top:22px}
.author .avatar{width:50px;height:50px;border-radius:50%;background:var(--ink);overflow:hidden;display:inline-flex;align-items:center;justify-content:center;color:var(--paper);font-family:var(--script);font-size:26px}
.author p{font-family:var(--sans);font-size:14px;color:var(--ink);font-weight:700}
.author p span{display:block;color:var(--ink-mute);font-weight:400}
.divider{border-top:1px solid var(--line);margin:56px 0 30px}
.partners-text{font-family:var(--body);font-size:14px;color:var(--ink-mute);margin-bottom:26px;max-width:44ch}
.partners{display:grid;grid-template-columns:repeat(3,1fr);gap:22px 28px;align-items:end}
.partner{display:flex;flex-direction:column;gap:8px;text-decoration:none;color:inherit;transition:transform .22s ease}
.partner:hover{transform:translateY(-2px)}
.partner:hover .glyph,.partner:hover span{color:var(--sun-deep)}
.partner .glyph{height:32px;display:flex;align-items:center;color:var(--ink);transition:color .22s ease}
.partner .glyph svg{height:100%;width:auto;max-width:90px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.partner span{font-family:var(--sans);font-size:13.5px;color:var(--ink);letter-spacing:-.005em;font-weight:700;transition:color .22s ease}
.partner small{font-family:var(--sans);font-size:10px;color:var(--ink-faint);letter-spacing:.1em;text-transform:uppercase}
.voice-art{position:relative;max-width:560px;margin-left:auto;width:100%}
.quote-card{background:var(--ink);color:var(--paper);border-radius:26px;padding:44px 40px;position:relative;overflow:hidden;aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:space-between;box-shadow:var(--shadow)}
.quote-card .q{font-family:var(--script);font-size:clamp(34px,3.8vw,54px);line-height:1.1;color:var(--paper);position:relative;z-index:1;overflow-wrap:normal;word-break:keep-all}
.quote-card .q b{color:var(--sun-light);font-weight:400}
.quote-card .sig{position:relative;z-index:1;width:56%;color:var(--paper);opacity:.95}
.quote-card .sig svg{width:100%;height:auto;display:block}
.quote-card .ondas{position:absolute;left:0;right:0;bottom:-4px;height:40%;color:rgba(245,236,215,.12)}
.quote-card .coord{position:absolute;right:22px;top:22px;color:rgba(245,236,215,.5)}
/* FAQ */
.faq-head{max-width:880px;margin:30px 0 44px}
.faq-head .display{font-size:clamp(36px,5vw,62px)}
.faq-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}
.faq-item{border-bottom:1px solid var(--line)}
.faq-item summary{display:grid;grid-template-columns:56px 1fr 32px;gap:24px;align-items:center;padding:24px 0;cursor:pointer;list-style:none;user-select:none}
.faq-item summary::-webkit-details-marker{display:none}
.faq-index{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--ink-faint)}
.faq-q{font-family:var(--sans);font-weight:700;font-size:clamp(18px,2vw,23px);line-height:1.25;color:var(--ink);letter-spacing:-.012em}
.faq-toggle{justify-self:end;width:32px;height:32px;border-radius:50%;border:1px solid var(--line);color:var(--ink);display:inline-flex;align-items:center;justify-content:center;font-family:var(--sans);font-size:18px;line-height:1;transition:transform .22s cubic-bezier(.23,1,.32,1),background-color .22s,color .22s}
.faq-item details[open] .faq-toggle{transform:rotate(45deg);background:var(--ink);color:var(--paper);border-color:var(--ink)}
.faq-a{grid-column:2/3;margin:0 0 26px;padding-left:80px;max-width:64ch;font-family:var(--body);font-size:15.5px;line-height:1.7;color:var(--ink-mute)}
.faq-a a{color:var(--ink)}
/* CTA / reserva */
.cta-grid{display:grid;grid-template-columns:1.05fr 1fr;gap:50px;align-items:center}
.cta h2{font-size:clamp(50px,6.4vw,96px);margin:30px 0;max-width:12ch}
.cta .lead{margin-bottom:34px;max-width:38ch;font-size:16px}
.cta-actions{display:inline-flex;align-items:center;gap:14px;margin-bottom:30px;flex-wrap:wrap}
.email-pill{display:inline-flex;align-items:center;gap:12px;padding:14px 18px 14px 22px;border-radius:999px;border:1px solid var(--line);font-family:var(--sans);font-size:14px;font-weight:600;color:var(--ink);text-decoration:none;transition:border-color .16s ease}
.email-pill:hover{border-color:var(--ink)}
.email-pill .arrow-circle{width:22px;height:22px;border-radius:50%;background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:center;font-size:12px}
.cta-foot{display:flex;gap:28px;align-items:center;margin-top:30px;padding-top:22px;border-top:1px solid var(--line);font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);flex-wrap:wrap}
.cta-foot .stamp{color:var(--sun-deep);font-weight:700}
.cta-art{position:relative;max-width:600px;margin-left:auto;width:100%}
.cta-art .map-card{border-radius:26px;background:var(--bone);box-shadow:var(--shadow),inset 0 0 0 1px rgba(30,58,38,.06);padding:34px 34px 0;aspect-ratio:1/1;display:flex;flex-direction:column;justify-content:space-between;overflow:hidden;position:relative}
.cta-art .map-card .big{font-family:var(--sans);font-weight:800;font-size:clamp(30px,3vw,44px);letter-spacing:-.024em;line-height:1;color:var(--ink)}
.cta-art .map-card .big em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.02em;color:var(--sun-deep)}
.cta-art .map-card .addr{margin-top:16px;font-family:var(--sans);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);line-height:1.7}
.cta-art .map-card .scene{width:82%;margin:0 auto;display:block;position:relative;z-index:1}
.cta-art .index{position:absolute;right:22px;top:22px;font-family:var(--sans);font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-weight:700}
.cta-art .ribbon{position:absolute;left:-32px;top:50%;font-family:var(--sans);font-size:10.5px;letter-spacing:.42em;text-transform:uppercase;color:var(--ink-faint);writing-mode:vertical-rl;transform:rotate(180deg)}
/* Rodapé (verde-profundo com borda de ondas, como no protótipo) */
footer{position:relative;margin-top:40px;background:var(--ink);color:var(--paper);padding:0 0 28px}
footer .foot-wave{display:block;width:100%;height:clamp(40px,7vw,110px);color:var(--ink);background:var(--paper);margin-bottom:-1px}
footer .foot-wave svg{width:100%;height:100%;display:block}
.foot-inner{padding-top:56px}
.foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr 1fr;gap:40px;margin-bottom:60px}
.foot-brand .brand-logo{height:40px;color:var(--paper);margin-bottom:18px}
.foot-brand .script-line{color:var(--sun-light);font-size:24px;margin:6px 0 14px}
.foot-brand p{font-family:var(--body);font-size:13.5px;color:rgba(245,236,215,.72);line-height:1.55;max-width:38ch}
.foot-cta{display:inline-flex;align-items:center;gap:10px;margin-top:22px;padding:11px 18px;border-radius:999px;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:13px;font-weight:600;text-decoration:none;transition:transform .16s ease,background .16s ease}
.foot-cta:hover{transform:translateY(-1px);background:var(--sun-light)}
.foot-cta:after{content:"↗";color:var(--sun-deep);font-size:12px}
.foot-col h5{font-family:var(--sans);font-size:11px;color:var(--paper);letter-spacing:.18em;text-transform:uppercase;margin-bottom:18px;font-weight:700}
.foot-col ul{list-style:none}
.foot-col li{margin-bottom:10px}
.foot-col a{font-family:var(--body);font-size:13.5px;color:rgba(245,236,215,.78);text-decoration:none;transition:color .16s ease}
.foot-col a:hover{color:var(--sun-light)}
.foot-bottom{border-top:1px solid var(--line-cream);padding-top:22px;display:flex;justify-content:space-between;align-items:center;font-family:var(--sans);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,236,215,.55);gap:16px;flex-wrap:wrap}
.foot-bottom b{color:var(--paper)}
.foot-bottom .right{display:inline-flex;gap:24px;align-items:center;flex-wrap:wrap}
.foot-bottom .sun{color:var(--sun-light)}
.foot-credit{color:rgba(245,236,215,.7);text-decoration:none;border-bottom:1px solid transparent;transition:color .16s ease,border-color .16s ease}
.foot-credit b{color:var(--sun-light);font-weight:700}
.foot-credit:hover{color:var(--paper);border-bottom-color:var(--sun-light)}
.foot-mega{margin-top:56px;padding-bottom:8px;border-top:1px solid var(--line-cream);overflow-x:hidden}
.foot-mega .word{font-family:var(--sans);font-weight:900;font-size:clamp(64px,12.5vw,190px);letter-spacing:-.04em;line-height:1.05;color:var(--paper);white-space:nowrap;margin-top:26px;padding-bottom:.12em}
.foot-mega .word em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.04em;color:var(--sun-light)}
/* pílula sazonal flutuante (herdada do protótipo) */
.evento-pill{position:fixed;right:18px;bottom:18px;z-index:60;display:inline-flex;align-items:center;gap:9px;background:var(--ink);color:var(--paper);padding:13px 20px 13px 16px;border-radius:999px;box-shadow:0 14px 30px rgba(30,58,38,.35);text-decoration:none;font-family:var(--sans);font-size:13px;font-weight:700;letter-spacing:.01em;transition:transform .2s ease,background .2s ease,color .2s ease,opacity .3s ease;opacity:0;transform:translateY(12px)}
.evento-pill.is-visible{opacity:1;transform:translateY(0)}
.evento-pill:hover{transform:translateY(-3px);background:var(--sun);color:var(--ink)}
.evento-pill svg{width:17px;height:17px;stroke:currentColor;fill:none;stroke-width:2.2;flex:none;stroke-linecap:round;stroke-linejoin:round}

/* 8. PÁGINAS INTERNAS ----------------------------------------------------------- */
.page-hero{position:relative;background:var(--ink);color:var(--paper);padding:72px 0 120px;overflow:hidden}
.page-hero:before{content:"";position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='240' height='240'><filter id='n2'><feTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/><feColorMatrix values='0 0 0 0 1  0 0 0 0 0.95  0 0 0 0 0.85  0 0 0 0.05 0'/></filter><rect width='100%' height='100%' filter='url(%23n2)'/></svg>");background-size:240px 240px;opacity:.6;mix-blend-mode:screen}
.page-hero .sol{position:absolute;right:6%;top:-18%;width:min(34vw,420px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 62%,var(--sun-deep));opacity:.85;pointer-events:none}
.page-hero .wave-edge{position:absolute;left:0;right:0;bottom:-2px;height:clamp(34px,6vw,80px);color:var(--paper);z-index:2}
.page-hero .wave-edge svg{display:block;width:100%;height:100%}
.page-hero-inner{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:40px;align-items:end}
.page-hero .crumbs{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:rgba(245,236,215,.6);display:flex;gap:10px;align-items:center;margin-bottom:30px}
.page-hero .crumbs a{color:inherit;text-decoration:none;border-bottom:1px solid transparent;transition:all .16s ease}
.page-hero .crumbs a:hover{color:var(--sun-light);border-bottom-color:var(--sun-light)}
.page-hero .crumbs .sep{color:var(--sun-light)}
.page-hero .label{color:var(--sun-light)}
.page-hero .label:before{background:var(--sun-light)}
.page-hero h1{font-family:var(--sans);font-weight:800;font-size:clamp(40px,5.6vw,80px);letter-spacing:-.026em;line-height:1;color:var(--paper);margin:22px 0 18px}
.page-hero h1 em{font-family:var(--sans);font-style:normal;font-weight:300;letter-spacing:-.02em;color:var(--sun-light)}
.page-hero .page-sub{color:rgba(245,236,215,.8);font-size:17px;max-width:46ch;line-height:1.6}
.page-hero .hours{display:inline-flex;align-items:center;gap:8px;margin-top:22px;font-family:var(--sans);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink);background:var(--sun-light);padding:8px 14px;border-radius:999px;font-weight:700}
.page-hero .hours:before{content:"";width:6px;height:6px;border-radius:50%;background:var(--ink)}
.page-hero .hero-side{display:flex;flex-direction:column;align-items:flex-end;gap:16px;text-align:right}
.page-hero .hero-side .pageicon{width:64px;height:64px;stroke:var(--sun-light);fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.page-hero .hero-side .meta{color:rgba(245,236,215,.55)}
.page-hero .hero-side .meta b{display:block;color:var(--paper);font-size:12px;letter-spacing:.12em}
.page-hero .hero-side .pageactions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.page-body{padding:56px 0 40px}
.panel{background:var(--bone);border-radius:22px;padding:30px 30px;box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.06)}
.panel h2,.panel h3{font-family:var(--sans);font-weight:700;letter-spacing:-.016em;margin-bottom:14px}
.panel .lead{max-width:60ch;color:var(--ink)}
.bullets{list-style:none;margin:18px 0 0;padding:0}
.bullets li{position:relative;padding-left:22px;margin-bottom:10px;font-size:14.5px;color:var(--ink-soft);line-height:1.5}
.bullets li:before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--sun)}
.bullets.two-col{columns:2;column-gap:36px}
.bullets.two-col li{break-inside:avoid}
.note-soon{margin-top:18px;font-size:12.5px;color:var(--ink-mute);font-style:italic}
.cta-band{margin:30px 0 0;display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap;border-top:1px dashed var(--line);padding-top:24px}
.cta-band p{font-size:13.5px;color:var(--ink-mute)}
.cta-band.center{justify-content:center;text-align:center;flex-direction:column;gap:14px}
/* toolbar e navegação de categorias dos cardápios */
.menu-toolbar{position:sticky;top:0;z-index:40;background:rgba(245,236,215,.92);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-bottom:1px solid var(--line);padding:12px 0}
.menu-toolbar-inner{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.menu-search{flex:1 1 260px;display:flex;align-items:center;gap:10px;min-height:44px;padding:0 16px;border:1px solid var(--line);border-radius:999px;background:var(--bone);color:var(--ink)}
.menu-search svg{width:16px;height:16px;stroke:var(--ink-faint);fill:none;stroke-width:1.8;flex:none}
.menu-search input{flex:1;border:0;background:transparent;font:500 14px var(--body);color:var(--ink);outline:none;min-width:0}
.menu-search input::placeholder{color:var(--ink-faint)}
.menu-search .clear{display:none;border:0;background:transparent;color:var(--ink-faint);cursor:pointer;font-size:16px;line-height:1;padding:4px}
.menu-search.has-value .clear{display:inline-flex}
.menu-chips{display:flex;gap:8px;flex-wrap:wrap}
.chip{padding:9px 14px;border-radius:999px;border:1px solid var(--line);background:transparent;font-family:var(--sans);font-size:12.5px;font-weight:600;color:var(--ink-soft);cursor:pointer;transition:all .16s ease;display:inline-flex;align-items:center;gap:6px}
.chip:hover{background:rgba(30,58,38,.06)}
.chip.is-active{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.chip .dot{width:7px;height:7px;border-radius:50%;background:var(--sun)}
.menu-toolbar .tools{display:flex;gap:6px;margin-left:auto}
.menu-toolbar .tools button{border:1px solid var(--line);background:transparent;border-radius:999px;padding:9px 12px;font-family:var(--sans);font-size:11.5px;font-weight:600;color:var(--ink-mute);cursor:pointer;letter-spacing:.04em}
.menu-toolbar .tools button:hover{color:var(--ink);border-color:var(--ink)}
.cat-nav{display:flex;gap:8px;flex-wrap:wrap;margin:0 0 34px}
.cat-nav a{font-family:var(--sans);font-size:12px;font-weight:600;color:var(--ink);text-decoration:none;padding:8px 13px;border-radius:999px;background:var(--bone);box-shadow:inset 0 0 0 1px rgba(30,58,38,.08);transition:all .16s ease}
.cat-nav a:hover,.cat-nav a.is-active{background:var(--sun-light);box-shadow:none}
.menu-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:56px;align-items:start}
.menu-aside{position:sticky;top:84px;display:flex;flex-direction:column;gap:16px}
.aside-card{background:var(--bone);border-radius:18px;padding:22px 22px;box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.06)}
.aside-card .k{font-family:var(--sans);font-size:10px;letter-spacing:.18em;text-transform:uppercase;color:var(--sun-deep);font-weight:700;margin-bottom:10px;display:block}
.aside-card h4{font-family:var(--sans);font-size:18px;font-weight:700;letter-spacing:-.012em;margin-bottom:8px}
.aside-card p{font-size:13px;color:var(--ink-mute);line-height:1.55}
.aside-card ul{list-style:none;margin-top:8px}
.aside-card li{font-size:13px;padding:8px 0;border-top:1px dashed var(--line-soft);display:flex;justify-content:space-between;gap:10px}
.aside-card li:first-child{border-top:0}
.aside-card li b{font-weight:700;color:var(--ink)}
.aside-card .btn{margin-top:14px}
.aside-card.dark{background:var(--ink);color:var(--paper);box-shadow:var(--shadow)}
.aside-card.dark .k{color:var(--sun-light)}
.aside-card.dark p{color:rgba(245,236,215,.78)}
.aside-card.dark li{color:rgba(245,236,215,.85);border-color:var(--line-cream)}
.aside-card.dark li b{color:var(--paper)}
.aside-card .ondas-mini{height:64px;color:var(--green);margin:-6px 0 4px}
.aside-card.dark .ondas-mini{color:rgba(245,236,215,.5)}
/* categorias (acordeão) e itens */
.cat{background:var(--bone);border-radius:18px;padding:4px 24px;margin-bottom:14px;box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.06);scroll-margin-top:96px}
.cat summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 2px;font-family:var(--sans);font-weight:700;font-size:18px;color:var(--ink);letter-spacing:-.012em;user-select:none}
.cat summary::-webkit-details-marker{display:none}
.cat summary .cat-title{display:flex;align-items:baseline;gap:12px;min-width:0}
.cat summary .cat-count{font-family:var(--mono);font-size:10.5px;letter-spacing:.1em;color:var(--ink-faint);font-weight:400}
.cat .chev{width:30px;height:30px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;flex:none;transition:transform .25s ease,background .2s ease,color .2s ease;color:var(--ink)}
.cat .chev svg{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2}
.cat[open] .chev{transform:rotate(180deg);background:var(--ink);color:var(--paper);border-color:var(--ink)}
.cat-body{padding:0 2px 20px}
.cat-note{font-size:13px;font-style:italic;color:var(--green-mid);margin:-4px 0 12px}
.items{list-style:none;margin:0;padding:0}
.items .item{padding:12px 0;border-top:1px dashed var(--line-soft)}
.items .item:first-child{border-top:none}
.items .item.is-hidden{display:none}
.item-top{display:flex;align-items:baseline;gap:10px}
.iname{font-family:var(--sans);font-weight:600;font-size:15px;color:var(--ink);letter-spacing:-.005em}
.ileader{flex:1;border-bottom:1px dotted rgba(30,58,38,.3);transform:translateY(-4px);min-width:16px}
.iprice{font-family:var(--sans);font-weight:700;font-size:14px;color:var(--green);white-space:nowrap;font-variant-numeric:tabular-nums}
.idesc{margin:4px 0 0;font-size:13.5px;color:var(--ink-mute);line-height:1.5;max-width:70ch}
.cat.is-empty{display:none}
.menu-empty{display:none;padding:40px 20px;text-align:center;color:var(--ink-mute);font-size:14px;border:1px dashed var(--line);border-radius:16px}
.menu-empty.is-visible{display:block}
.menu-empty b{display:block;font-family:var(--sans);font-size:18px;color:var(--ink);margin-bottom:6px}
/* Petit Comité */
.petit-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(270px,1fr));gap:18px}
.petit-card{background:var(--bone);border-radius:20px;padding:26px 26px 24px;box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.06);display:flex;flex-direction:column;gap:8px;position:relative;overflow:hidden;transition:transform .2s ease}
.petit-card:hover{transform:translateY(-3px)}
.petit-card .num{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--sun-deep);font-weight:700;display:flex;justify-content:space-between}
.petit-card h3{font-family:var(--sans);font-size:24px;font-weight:800;letter-spacing:-.02em;line-height:1.05;margin:4px 0 2px}
.petit-price{font-family:var(--sans);font-weight:700;color:var(--green);font-size:15px}
.petit-sub{font-size:12.5px;color:var(--green-mid)}
.petit-desc{font-size:13.5px;color:var(--ink-mute);line-height:1.55;flex:1}
.petit-dur{font-family:var(--sans);font-size:11px;text-transform:uppercase;letter-spacing:.08em;color:var(--sun-deep);font-weight:700;margin-top:8px;padding-top:12px;border-top:1px dashed var(--line)}
.petit-card.wide{grid-column:1/-1;background:var(--ink);color:var(--paper);box-shadow:var(--shadow)}
.petit-card.wide .num{color:var(--sun-light)}
.petit-card.wide .petit-price{color:var(--sun-light)}
.petit-card.wide .petit-sub,.petit-card.wide .petit-desc{color:rgba(245,236,215,.8)}
.petit-card.wide .petit-dur{color:var(--sun-light);border-color:var(--line-cream)}
.petit-card.wide .ondas{position:absolute;right:-2%;bottom:-6px;width:46%;height:70%;color:rgba(245,236,215,.1);pointer-events:none}
.rules-panel{margin-top:36px}
.rules-panel h2{font-size:24px}
.steps-inline{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:28px}
.step-mini{padding:18px 20px;border:1px solid var(--line);border-radius:14px;background:rgba(251,246,233,.6)}
.step-mini .n{font-family:var(--script);font-size:30px;color:var(--sun-deep);line-height:1}
.step-mini h5{font-family:var(--sans);font-size:15px;font-weight:700;margin:6px 0 4px}
.step-mini p{font-size:13px;color:var(--ink-mute);line-height:1.5}
/* Experiências (página) */
.exp-section{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:60px;align-items:center;padding:64px 0;border-top:1px dashed var(--line);scroll-margin-top:80px}
.exp-section:first-of-type{border-top:0}
.exp-section:nth-of-type(even) .exp-visual{order:2}
.exp-visual{position:relative;aspect-ratio:4/3;border-radius:24px;overflow:hidden;box-shadow:var(--shadow);display:flex;align-items:flex-end;background:linear-gradient(165deg,var(--green-mid),var(--green-deep));color:var(--paper)}
.exp-visual.sun{background:linear-gradient(165deg,var(--sun-light),var(--sun-deep));color:var(--ink)}
.exp-visual.cream{background:linear-gradient(165deg,var(--bone),var(--paper-dark));color:var(--ink)}
.exp-visual .ondas{position:absolute;left:0;right:0;bottom:0;height:44%;width:100%;color:rgba(245,236,215,.9)}
.exp-visual.sun .ondas{color:rgba(30,58,38,.85)}
.exp-visual.cream .ondas{color:var(--green)}
.exp-visual .word{position:absolute;left:24px;top:22px;right:24px;font-family:var(--script);font-size:clamp(40px,4.4vw,66px);line-height:.95}
.exp-visual .sun-disc{position:absolute;right:12%;top:22%;width:26%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 62%,var(--sun-deep))}
.exp-visual.sun .sun-disc{background:radial-gradient(circle at 40% 35%,#F7F0DE,var(--paper) 62%,var(--paper-dark))}
.exp-visual .icon{position:absolute;right:22px;bottom:18px;width:44px;height:44px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round;opacity:.9;z-index:1}
.exp-visual .photo-slot{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.exp-text h2{font-size:clamp(34px,3.8vw,52px);margin:18px 0 18px}
.exp-text .lead{margin-bottom:6px;max-width:52ch}
.exp-text .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px}
.exp-text .facts{display:flex;gap:20px;flex-wrap:wrap;margin:22px 0 0;font-family:var(--sans);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-faint)}
.exp-text .facts b{display:block;color:var(--ink);font-size:14px;letter-spacing:-.01em;text-transform:none;margin-bottom:2px}
/* 9. MOTION: reveal no scroll ------------------------------------------------ */
[data-reveal]{opacity:0;translate:0 28px;transition:opacity .9s var(--ease-out) var(--reveal-delay,0ms),translate .9s var(--ease-out) var(--reveal-delay,0ms),scale .9s var(--ease-out) var(--reveal-delay,0ms);will-change:opacity,translate,scale}
[data-reveal=left]{translate:-36px 0}
[data-reveal=right]{translate:36px 0}
[data-reveal=scale]{translate:0 0;scale:.96}
[data-reveal=rise-lg]{translate:0 64px;scale:.985}
[data-reveal][data-revealed=true]{opacity:1;translate:0 0;scale:1}
.cards>.card[data-reveal]:nth-child(1),.menus-grid>.menu-tile[data-reveal]:nth-child(1),.day-grid>.day-step[data-reveal]:nth-child(1),.partners>.partner[data-reveal]:nth-child(1),.petit-grid>.petit-card[data-reveal]:nth-child(1){--reveal-delay:0ms}
.cards>.card[data-reveal]:nth-child(2),.menus-grid>.menu-tile[data-reveal]:nth-child(2),.day-grid>.day-step[data-reveal]:nth-child(2),.partners>.partner[data-reveal]:nth-child(2),.petit-grid>.petit-card[data-reveal]:nth-child(2){--reveal-delay:90ms}
.cards>.card[data-reveal]:nth-child(3),.menus-grid>.menu-tile[data-reveal]:nth-child(3),.day-grid>.day-step[data-reveal]:nth-child(3),.partners>.partner[data-reveal]:nth-child(3),.petit-grid>.petit-card[data-reveal]:nth-child(3){--reveal-delay:180ms}
.cards>.card[data-reveal]:nth-child(4),.menus-grid>.menu-tile[data-reveal]:nth-child(4),.day-grid>.day-step[data-reveal]:nth-child(4),.partners>.partner[data-reveal]:nth-child(4),.petit-grid>.petit-card[data-reveal]:nth-child(4){--reveal-delay:270ms}
.menus-grid>.menu-tile[data-reveal]:nth-child(5),.partners>.partner[data-reveal]:nth-child(5),.petit-grid>.petit-card[data-reveal]:nth-child(5){--reveal-delay:360ms}
.partners>.partner[data-reveal]:nth-child(6){--reveal-delay:430ms}
.hero-copy>[data-reveal]:nth-of-type(1){--reveal-delay:0ms}
.hero-copy>[data-reveal]:nth-of-type(2){--reveal-delay:80ms}
.hero-copy>[data-reveal]:nth-of-type(3){--reveal-delay:160ms}
.hero-copy>[data-reveal]:nth-of-type(4){--reveal-delay:240ms}
.hero-copy>[data-reveal]:nth-of-type(5){--reveal-delay:320ms}
.hero-copy>[data-reveal]:nth-of-type(6){--reveal-delay:400ms}
@media(prefers-reduced-motion:reduce){
  [data-reveal]{opacity:1!important;translate:0 0!important;scale:1!important;transition:none!important}
  .site-chrome{transition:none!important}
  .marquee-track,.cc-logo-anim mask path,.cc-logo-anim .cc-cafe,.ondas mask path,.ondas .ond-top,.ondas .ond-mid,.ondas .ond-bot,.prancha .sol,.pulse,.wire-pulse{animation:none!important}
}
/* 10. RESPONSIVO ---------------------------------------------------------------- */
@media(max-width:1280px){.container{padding:0 44px}.feature-dark{margin:0 44px;padding:90px 44px}.side-rail{display:none}}
@media(max-width:1200px){.topbar-inner .mid{display:none}}
@media(max-width:1180px){.nav-inner{gap:18px}.brand-meta{display:none}.nav-links{gap:26px}.menu-layout{grid-template-columns:minmax(0,1fr) 260px;gap:36px}}
@media(max-width:1080px){
  .nav-toggle{display:inline-flex}
  .nav-side .nav-cta.ghost{display:none}
  .nav{position:relative}
  .nav>.nav-inner>nav[data-nav-primary]{position:absolute;top:100%;left:0;right:0;margin:0;padding:0;pointer-events:none;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .2s ease,transform .2s ease,visibility .2s;background:var(--paper);border-top:1px solid rgba(30,58,38,.08);box-shadow:0 12px 32px rgba(30,58,38,.1);max-height:calc(100vh - 120px);overflow:auto}
  .nav.is-open>.nav-inner>nav[data-nav-primary]{pointer-events:auto;opacity:1;visibility:visible;transform:translateY(0)}
  .nav-links{flex-direction:column;align-items:stretch;gap:0;padding:12px 24px 20px}
  .nav-links li{border-bottom:1px solid rgba(30,58,38,.06)}
  .nav-links li:last-child{border-bottom:none}
  .nav-links a{display:block;padding:14px 0;font-size:16px}
  .nav-links li.has-dropdown{position:static}
  .nav-links .dropdown-caret{display:none}
  .nav-dropdown{position:static;opacity:1;visibility:visible;transform:none;margin:0 0 6px;padding:0 0 4px 16px;border:none;border-left:2px solid rgba(30,58,38,.1);border-radius:0;box-shadow:none;background:transparent;min-width:0}
  .nav-dropdown:before{display:none}
  .nav-dropdown a{padding:8px;border-radius:4px}
  .nav-dropdown .dropdown-blurb{display:none}
  .container{padding:0 32px}
  .hero h1{font-size:clamp(38px,5vw,58px)}
  .section-header h2{font-size:clamp(32px,4vw,50px)}
  .menus-grid{grid-template-columns:repeat(2,1fr);gap:18px}
  .partners{grid-template-columns:repeat(3,1fr);gap:18px}
  .foot-grid{grid-template-columns:2fr 1fr 1fr}
  .foot-grid .foot-col:nth-child(4),.foot-grid .foot-col:nth-child(5){display:none}
  .feature-dark{padding:80px 40px}
  .feature-arrows{right:32px;bottom:32px}
  .menu-layout{grid-template-columns:1fr}
  .menu-aside{position:static;flex-direction:row;flex-wrap:wrap}
  .menu-aside .aside-card{flex:1 1 260px}
}
@media(max-width:880px){
  .container{padding:0 24px}
  .hero-grid,.about-grid,.exp-grid,.voice-grid,.cta-grid,.exp-section,.page-hero-inner{grid-template-columns:1fr;gap:44px}
  .exp-section:nth-of-type(even) .exp-visual{order:0}
  .menus-head,.day-head{grid-template-columns:1fr;gap:28px}
  .menus-meta,.pills{justify-content:flex-start}
  .day-grid{grid-template-columns:repeat(2,1fr);gap:36px}
  .day-grid:before{display:none}
  .hero{min-height:0;padding:28px 0 0}
  .hero-copy{padding:14px 0 8px}
  .hero-copy .lead{max-width:none}
  .hero-art{height:auto;aspect-ratio:4/5;min-height:0;max-height:none;margin:0 0 36px}
  .hero-foot{flex-wrap:wrap;gap:12px 24px;padding-top:18px}
  .sec-rule{flex-wrap:wrap;gap:8px 18px}
  .sec-rule .meta-grp{gap:18px;flex-wrap:wrap}
  .section-header{margin-bottom:44px}
  .section-header h2{max-width:none}
  .wire-inner{grid-template-columns:1fr;gap:14px}
  .wire-left{border-right:none;border-bottom:1px solid var(--line);padding-right:0;padding-bottom:12px;min-height:0}
  .quick-strip-inner{grid-template-columns:1fr;gap:18px}
  .quick-strip-list{grid-template-columns:repeat(3,minmax(0,1fr))}
  .about-art{max-width:480px;margin:0 auto}
  .about-side-note{display:none}
  .about .footer-row{flex-wrap:wrap;gap:14px 20px;margin-top:36px}
  .exp-art{max-width:480px;margin:0 auto}
  .exp-art .ribbon{display:none}
  .day-step .num{font-size:52px;margin-bottom:14px}
  .day-step h4{font-size:24px;padding-right:0}
  .day-foot{flex-direction:column;align-items:flex-start;gap:14px;padding-top:18px;margin-top:48px}
  .feature-dark{margin:0 12px;padding:60px 24px;border-radius:24px}
  .feature-grid{grid-template-columns:1fr;gap:36px}
  .feature-arrows{position:static;margin-top:32px}
  .feature-card,.feature-card.alt{transform:none}
  .feature-card:hover,.feature-card.alt:hover{transform:translateY(-3px)}
  .voice-art{max-width:440px;margin:0 auto}
  .partners{grid-template-columns:repeat(3,1fr);gap:18px}
  .cta-art{max-width:480px;margin:0 auto}
  .cta-art .ribbon{display:none}
  .cta-foot{flex-wrap:wrap;gap:14px 24px}
  .foot-grid{grid-template-columns:1fr 1fr;gap:32px}
  .foot-bottom{flex-direction:column;align-items:flex-start;gap:12px}
  .nav{padding:14px 0}
  .page-hero{padding:48px 0 96px}
  .page-hero .hero-side{align-items:flex-start;text-align:left}
  .page-hero .hero-side .pageactions{justify-content:flex-start}
  .more-menus,.steps-inline{grid-template-columns:1fr}
  .bullets.two-col{columns:1}
  .faq-item summary{grid-template-columns:36px 1fr 28px;gap:14px;padding:20px 0}
  .faq-a{padding-left:50px;font-size:14.5px}
}
@media(max-width:640px){
  .topbar-inner{gap:14px;font-size:9.5px}
  .topbar-inner .right>span:first-child{display:none}
  .topbar-inner>span:first-child{overflow:hidden;text-overflow:ellipsis;min-width:0}
  .hero-actions .btn{padding:12px 18px;font-size:13px}
  .feature-card h3{font-size:clamp(24px,6vw,30px)}
  .foot-mega .word{font-size:clamp(54px,18vw,120px)}
  .menu-toolbar .tools{margin-left:0;width:100%}
  .cat{padding:2px 16px}
  .cat summary{font-size:16px;padding:16px 0}
  .iname{font-size:14px}
  .idesc{font-size:13px}
  .quick-strip-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px 18px}
}
@media(max-width:560px){
  .container{padding:0 16px}
  .hero h1{font-size:clamp(34px,9.5vw,44px)}
  .about h2,.exp-copy h2,.menus-head h2,.day-head h2,.voice-copy h2,.cta h2,.section-header h2,.faq-head .display{font-size:clamp(30px,8.5vw,44px)}
  .cta h2{font-size:clamp(34px,10vw,54px)}
  .menus-grid,.cards{grid-template-columns:1fr}
  .day-grid{grid-template-columns:1fr;gap:28px}
  .day-step .num{font-size:46px}
  section{padding:76px 0}
  .topbar-inner{font-size:9px;gap:10px}
  .partners{grid-template-columns:repeat(2,1fr);gap:14px}
  .foot-grid{grid-template-columns:1fr;gap:24px}
  .feature-dark{margin:0 8px;padding:48px 20px;border-radius:20px}
  .hero-actions,.cta-actions{width:100%}
  .hero-actions .btn,.cta-actions .btn,.cta-actions .email-pill{flex:1 1 auto;justify-content:center}
  .nav-inner{gap:12px}
  .brand-logo{height:30px}
  .read-more{margin-top:36px}
  .foot-mega .word{font-size:clamp(48px,16vw,88px)}
  .prancha .index{display:none}
  .evento-pill{right:12px;bottom:12px;font-size:12px;padding:11px 16px 11px 13px}
  .page-hero h1{font-size:clamp(34px,9vw,46px)}
  .petit-card h3{font-size:22px}
}
@media(max-width:420px){
  .container{padding:0 14px}
  .topbar-inner{align-items:center}
  .hero-stats{gap:10px 16px}
  .hero-foot{font-size:9.5px}
  .sec-rule{font-size:9.5px;gap:6px 12px}
  .foot-mega .word{font-size:clamp(40px,16vw,64px)}
  .feature-card{padding:26px 22px}
  .feature-card.alt{padding:24px 20px}
}

/* Acentos para a Halimun (a fonte mapeia é/ã/ç para e/a/c sem diacrítico): o build envolve a letra em .ac e o acento é desenhado em CSS */
.ac{position:relative;display:inline-block;line-height:1;white-space:nowrap}
.ac::after{content:"";position:absolute;left:52%;top:.23em;width:.25em;height:.06em;border-radius:.05em;background:currentColor;transform:translateX(-50%) rotate(-40deg);pointer-events:none}
.ac-grave::after{transform:translateX(-50%) rotate(40deg)}
.ac-circ::after{width:.17em;height:.17em;background:none;border-left:.06em solid currentColor;border-top:.06em solid currentColor;border-radius:.03em;transform:translateX(-50%) rotate(45deg);top:.24em}
.ac-tilde::after{content:"~";background:none;width:auto;height:auto;font-family:var(--sans);font-weight:800;font-size:.64em;line-height:1;top:.3em;transform:translateX(-50%)}
.ac-cedil::after{top:auto;bottom:.06em;left:50%;width:.13em;height:.15em;background:none;border-right:.06em solid currentColor;border-bottom:.06em solid currentColor;border-radius:0 0 .12em 0;transform:translateX(-45%)}
.ac-i::after{top:.12em}
.souvenir-panel{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center}
@media(max-width:880px){[data-reveal=left],[data-reveal=right]{translate:0 28px}.dark-rule{flex-wrap:wrap;gap:8px 16px}.dark-rule .mid{flex-wrap:wrap;gap:6px 12px}}
@media(max-width:640px){.souvenir-panel{grid-template-columns:1fr;gap:18px}.dark-rule>span:last-child{display:none}}

/* Acesso rápido (hub de atalhos do hero): faixa discreta no desktop, botões grandes no mobile (link da bio) */
.hero-hub{grid-column:1/-1;display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:18px 0 26px;border-top:1px dashed var(--line)}
.hero-hub .hub-title{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--ink-faint);font-weight:700;margin-right:8px;white-space:nowrap}
.hub-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border-radius:999px;border:1px solid var(--line);background:rgba(251,246,233,.7);color:var(--ink);text-decoration:none;font-family:var(--sans);font-size:12.5px;font-weight:600;line-height:1.2;transition:background .16s ease,border-color .16s ease,transform .16s ease,color .16s ease}
.hub-btn:hover{border-color:var(--ink);background:var(--bone);transform:translateY(-1px)}
.hub-btn svg{width:15px;height:15px;flex:none;color:var(--green-mid)}
.hub-btn span{display:inline-flex;flex-direction:column}
.hub-btn small{display:none}
.hub-btn.primary{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.hub-btn.primary svg{color:var(--sun-light)}
.hub-btn.primary:hover{background:var(--green-mid)}
.hub-btn.ghost{background:transparent}
@media(max-width:880px){
  .hero-grid{display:flex;flex-direction:column;gap:0}
  .hero-copy{order:1;padding-bottom:6px}
  .hero-hub{order:2;display:grid;grid-template-columns:1fr 1fr;gap:10px;border-top:0;padding:6px 0 10px}
  .hero-art{order:3;aspect-ratio:1/1;margin:18px 0 28px}
  .hero-hub .hub-title{grid-column:1/-1;margin:8px 0 2px}
  .hub-btn{padding:12px 14px;border-radius:16px;font-size:14px;min-height:58px;display:flex;align-items:center;gap:12px;background:var(--bone);box-shadow:var(--shadow-card);border-color:rgba(30,58,38,.08)}
  .hub-btn svg{width:22px;height:22px;color:var(--green)}
  .hub-btn span{display:flex;flex-direction:column;line-height:1.2;min-width:0}
  .hub-btn b{font-weight:700}
  .hub-btn small{display:block;font-weight:400;font-size:11px;color:var(--ink-mute);margin-top:2px}
  .hub-btn.primary{background:var(--ink);color:var(--paper)}
  .hub-btn.primary small{color:rgba(245,236,215,.7)}
  .hub-btn.ghost{background:var(--paper)}
  .hero-actions,.hero-foot{display:none}
  .hero-copy .lead{font-size:15px;margin-bottom:22px}
  .hero-stats{margin-bottom:18px}
  .hero h1{margin-bottom:18px}
}
@media(max-width:880px){.prancha .annot-bl,.prancha .annot-br{display:none}.prancha .replay{bottom:auto;top:52px;right:14px}.prancha .logo-wrap{width:74%;margin-top:-6%}.topbar-inner>span:first-child{overflow:hidden;text-overflow:ellipsis;min-width:0}}
@media(max-width:380px){.hero-hub{grid-template-columns:1fr}}
.foot-mega .word{text-decoration:none;display:block}
.foot-mega .word .dot{color:var(--sun-light);font-weight:900}
/* 11. UTILITÁRIOS --------------------------------------------------------------- */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.code-inline{font-family:var(--mono);font-size:13px;background:var(--bone);padding:1px 6px;border-radius:4px;border:1px solid var(--line-soft)}
.skip-link{position:absolute;left:-999px;top:8px;background:var(--ink);color:var(--paper);padding:10px 14px;border-radius:8px;z-index:100;font-family:var(--sans);font-size:13px}
.skip-link:focus{left:8px}
/* Design system (guia de estilo) */
.ds-section{padding:56px 0;border-top:1px solid var(--line)}
.ds-section h2{font-family:var(--sans);font-size:28px;font-weight:800;letter-spacing:-.02em;margin:14px 0 24px}
.ds-section>h3{font-family:var(--sans);font-size:15px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--ink-mute);margin:30px 0 14px}
.ds-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}
.swatch{border-radius:14px;overflow:hidden;border:1px solid var(--line-soft);background:var(--bone)}
.swatch .chip-color{height:74px}
.swatch .sw-meta{padding:10px 12px;font-family:var(--mono);font-size:11px;color:var(--ink-mute);line-height:1.5}
.swatch .sw-meta b{display:block;font-family:var(--sans);color:var(--ink);font-size:12.5px;letter-spacing:0}
.type-row{display:grid;grid-template-columns:180px 1fr;gap:22px;align-items:baseline;padding:14px 0;border-top:1px dashed var(--line-soft)}
.type-row .t-meta{font-family:var(--mono);font-size:11px;color:var(--ink-faint);line-height:1.5}
.ds-row{display:flex;gap:14px;flex-wrap:wrap;align-items:center;margin-bottom:14px}
.ds-frame{border:1px dashed var(--line);border-radius:16px;padding:26px;background:rgba(251,246,233,.5)}
.ds-frame.dark{background:var(--ink);color:var(--paper)}
.ds-two{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.ds-caption{font-family:var(--mono);font-size:11px;color:var(--ink-faint);margin-top:10px}
@media(max-width:720px){.ds-two{grid-template-columns:1fr}.type-row{grid-template-columns:1fr;gap:6px}}
.js .ondas[data-ondas]:not(.is-play) mask path,.js .ondas[data-ondas]:not(.is-play) [class^=ond-]{animation-play-state:paused}

/* Petit Comité: itens inclusos + extras · CTA links */
.petit-inc{margin-top:6px;border-top:1px dashed var(--line);padding-top:8px}
.petit-inc summary{list-style:none;cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-family:var(--sans);font-size:12.5px;font-weight:700;color:var(--ink);padding:6px 0}
.petit-inc summary::-webkit-details-marker{display:none}
.petit-inc .chev{width:24px;height:24px;border-radius:50%;border:1px solid var(--line);display:inline-flex;align-items:center;justify-content:center;transition:transform .2s ease}
.petit-inc .chev svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2}
.petit-inc[open] .chev{transform:rotate(180deg)}
.inc-body{display:grid;gap:10px;padding:6px 0 4px}
.inc-group b{display:block;font-family:var(--sans);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--sun-deep);margin-bottom:4px}
.inc-group ul{list-style:none;margin:0;padding:0;font-size:12.5px;color:var(--ink-mute);line-height:1.5;columns:2;column-gap:16px}
.inc-group li{break-inside:avoid;padding-left:10px;position:relative}
.inc-group li:before{content:"·";position:absolute;left:0;color:var(--sun)}
.petit-card.wide .inc-group ul{color:rgba(245,236,215,.8)}
.petit-card.wide .petit-inc{border-color:var(--line-cream)}
.petit-card.wide .petit-inc summary{color:var(--paper)}
.petit-card.wide .petit-inc .chev{border-color:var(--line-cream)}
.petit-card.wide .inc-group b{color:var(--sun-light)}
.extras-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px 26px;margin-top:8px}
.extras-grid .k{font-family:var(--sans);font-size:10.5px;letter-spacing:.18em;text-transform:uppercase;color:var(--sun-deep);font-weight:700;display:block;margin-bottom:4px}
.cta-links{display:flex;gap:18px;flex-wrap:wrap;margin:0 0 8px;font-family:var(--sans);font-size:13px;font-weight:600}
@media(max-width:880px){.extras-grid{grid-template-columns:1fr}.inc-group ul{columns:1}}

/* ajustes: linhas de horário nos cartões laterais e guia rápido no mobile */
.aside-card li{align-items:baseline}
.aside-card li>span:first-child{flex:none;white-space:nowrap}
.aside-card li b{text-align:right}
@media(max-width:640px){.quick-strip-list .v{white-space:normal;overflow:visible;text-overflow:clip}}

/* Cler — assistente virtual (Direct do Instagram ou widget web, quando configurado) */
.cler-fab{position:fixed;right:18px;bottom:78px;z-index:60;display:inline-flex;align-items:center;gap:8px;padding:10px 14px 10px 12px;border-radius:999px;background:var(--bone);color:var(--ink);border:1px solid var(--line);box-shadow:0 12px 26px rgba(30,58,38,.22);text-decoration:none;font-family:var(--sans);font-size:12.5px;font-weight:700;opacity:0;transform:translateY(12px);transition:opacity .3s ease,transform .2s ease,background .2s ease}
.cler-fab svg{width:18px;height:18px;stroke:var(--green);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.cler-fab.is-visible{opacity:1;transform:translateY(0)}
.cler-fab:hover{background:var(--sun-light);transform:translateY(-2px)}
@media(max-width:560px){.cler-fab{right:12px;bottom:70px;padding:9px 12px 9px 10px;font-size:12px}}
.has-chat-widget .cler-fab{display:none} /* quando o widget da plataforma da Cler tiver seu próprio botão flutuante */
/* Topo mobile: "Atendimento rápido" (abre a Cler) no lugar de "Reserve sua mesa" — oculto no desktop */
.nav-cta-cler{display:none;position:relative;gap:8px;padding:9px 14px}
.nav-cta-cler svg{width:16px;height:16px;stroke:var(--sun-light);fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none}
.nav-cta-cler:after{content:"";display:none}
.nav-cta-cler.has-unread::before{content:"";position:absolute;top:-3px;right:-3px;width:11px;height:11px;border-radius:50%;background:var(--sun);border:2px solid var(--paper)}
.card .card-when{display:none}
.menus-mobile{display:none}
.hero-mobile{display:none}
.cler-fab.has-unread::after{content:"";position:absolute;top:-3px;right:-3px;width:11px;height:11px;border-radius:50%;background:var(--sun);border:2px solid var(--bone)} /* resposta nova da Cler com o chat fechado (snippet adiciona .has-unread) */

/* ===== 12. MOBILE "DIRETO AO PONTO" (≤760px) — pedido do cliente 22/08/2026 =====
   Primeira tela: os 4 cardápios (cards baixos, cabem sem rolar) → cards de experiências → outras opções
   (acesso rápido) → horários → rodapé enxuto. Seções editoriais (manifesto, roteiro do dia, eventos,
   origens, souvenir, FAQ, CTA) ficam só no desktop. Header: "Atendimento rápido" (Cler) em vez de
   "Reserve sua mesa"; o FAB da Cler some (a pílula "Reserve sua mesa" continua). */
@media(max-width:760px){
  .topbar{display:none}
  .nav-side .nav-cta:not(.nav-cta-cler){display:none}
  .nav-cta-cler{display:inline-flex}
  .cler-fab{display:none!important}
  main#conteudo{display:flex;flex-direction:column}
  main#conteudo>.hero-mobile{display:block;order:0;padding:12px 0 4px}
  /* hero mobile: prancha compacta — frase (Halimun), sol grande e ondas animadas */
  .hm-card{position:relative;overflow:hidden;border-radius:20px;background:var(--ink);color:var(--paper);height:204px;padding:16px 18px 0;box-shadow:var(--shadow)}
  .hm-card:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(120% 90% at 100% 0%,rgba(245,236,215,.08),transparent 60%)}
  .hm-claim{position:relative;z-index:3;font-family:var(--script);font-size:clamp(22px,6.4vw,24px);line-height:1.12;color:var(--sun-light);max-width:64%;margin:0;padding-left:.08em;text-shadow:0 1px 0 rgba(30,58,38,.6)}
  .hm-meta{position:relative;z-index:2;display:block;margin:0 0 4px;font-family:var(--sans);font-size:9.5px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:rgba(245,236,215,.66)}
  /* sol grande (mesmo gradiente da prancha), entrando pelas ondas; fica fora da faixa da frase (à direita) */
  .hm-sol{position:absolute;right:-10%;top:5%;width:48%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 40% 35%,var(--sun-light),var(--sun) 60%,var(--sun-deep));box-shadow:0 0 60px rgba(217,154,43,.35);opacity:.96;z-index:1;animation:sol-rise 1.4s var(--ease-out) .1s both}
  .hm-ondas{position:absolute;left:0;right:0;bottom:-2px;height:46%;color:rgba(245,236,215,.92);z-index:2}
  .hm-ondas .ondas{width:100%;height:100%;display:block}
  main#conteudo>.menus{order:1}
  main#conteudo>.experiences{order:2}
  main#conteudo>.hero{order:3}
  main#conteudo>.quick-strip{order:4}
  main#conteudo>.wire,main#conteudo>.about,main#conteudo>.day,main#conteudo>#eventos,main#conteudo>.voice,main#conteudo>#souvenir,main#conteudo>.faq,main#conteudo>.cta{display:none}
  .hero{min-height:0;padding:0;border-bottom:1px solid var(--line)}
  .hero-copy,.hero-art,.hero-stats,.hero-foot,.hero-actions{display:none}
  .hero-hub{padding:14px 0 20px;border-top:0}
  .hero-hub .hub-title{margin:0 0 2px}
  .hub-btn.hub-dup{display:none}
  section.menus{padding:18px 0 14px}
  .menus .sec-rule,.menus .menus-meta,.menus .pills,.menus-head h2{display:none}
  .menus-head{display:block;margin-bottom:12px}
  .menus-grid,.menus-foot,#mais-cardapios{display:none}
  .menus .label .ix,.experiences .label .ix{display:none}
  /* 7 cardápios iguais — ícone + nome + horário + seta (mesmo desenho dos cards de experiências).
     COR DE FUNDO EM TESTE (pedido do cliente): amarelo/sol. Para testar verde, trocar as duas
     variáveis abaixo por --menu-row-bg:var(--green-mid); --menu-row-fg:var(--paper). */
  .menus-mobile{--menu-row-bg:var(--sun);--menu-row-fg:var(--ink);display:grid;gap:8px}
  .menu-row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:11px 14px;border-radius:14px;background:var(--menu-row-bg);color:var(--menu-row-fg);text-decoration:none;box-shadow:var(--shadow-card),inset 0 0 0 1px rgba(30,58,38,.08);transition:transform .16s ease,filter .16s ease}
  .menu-row:active{transform:scale(.99);filter:brightness(.97)}
  .menu-row>svg{width:22px;height:22px;color:var(--menu-row-fg);flex:none}
  .menu-row span{display:flex;flex-direction:column;line-height:1.2;min-width:0}
  .menu-row b{font-family:var(--sans);font-size:16px;font-weight:700;letter-spacing:-.01em}
  .menu-row small{font-family:var(--sans);font-size:10.5px;letter-spacing:.08em;text-transform:uppercase;opacity:.78;margin-top:3px}
  .menu-row .arrow-mark{width:26px;height:26px;border:1px solid currentColor;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:var(--menu-row-fg);opacity:.85}
  .menu-row .arrow-mark svg{width:11px;height:11px;stroke:currentColor;fill:none;stroke-width:1.8}
  section.experiences{padding:16px 0 20px;border-top:1px solid var(--line)}
  .experiences .sec-rule,.exp-art,.exp-copy h2,.exp-copy .lead{display:none}
  .exp-grid{gap:0}
  .cards{grid-template-columns:1fr;gap:10px;margin-top:12px}
  .card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;column-gap:12px;padding:13px 16px}
  .card .num{display:none}
  .card .icon{margin:0;width:24px;height:24px;grid-column:1;grid-row:1/3}
  .card h3{margin:0;font-size:17px;grid-column:2;grid-row:1}
  .card p{display:none}
  .card .card-when{display:block;grid-column:2;grid-row:2;font-family:var(--sans);font-size:11.5px;color:var(--ink-mute);margin-top:2px}
  .card .arrow-mark{position:static;grid-column:3;grid-row:1/3}
  .quick-strip{padding:18px 0 10px}
  .foot-grid .foot-col:nth-child(2),.foot-grid .foot-col:nth-child(3),.foot-grid .foot-col:nth-child(4){display:none}
  .foot-grid .foot-col:nth-child(5){display:block}
}

