/* ============================================================
   Mateus Florido Pena — portfólio
   Sistema de design
   1. tokens            6. sobre
   2. base e fundo      7. projetos
   3. navegação         8. serviços
   4. hero              9. processo e stack
   5. faixa e valores  10. faq, contato, rodapé
   ============================================================ */

/* 1. tokens -------------------------------------------------- */
:root{
  --ink:#08090b;
  --ink-2:#0c0e12;
  --panel:#111318;
  --panel-2:#171a21;
  --line:rgba(255,255,255,.08);
  --line-2:rgba(255,255,255,.16);
  --fg:#f4f5f1;
  --mut:#9ba19b;
  --mut-2:#6c726c;
  --lime:#c8f169;
  --lime-2:#a6e04a;
  --violet:#8b7bff;
  --r-sm:12px;
  --r:18px;
  --r-lg:26px;
  --maxw:1200px;
  --gutter:clamp(20px,5vw,64px);
  --shadow:0 30px 70px rgba(0,0,0,.5);
  --ease:cubic-bezier(.22,1,.36,1);
  --d:'Space Grotesk',system-ui,sans-serif;
  --b:'DM Sans',system-ui,sans-serif;
  --mono:ui-monospace,SFMono-Regular,'SF Mono',Menlo,monospace;
}

/* 2. base e fundo ------------------------------------------- */
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:96px;background:var(--ink)}
body{margin:0;background:var(--ink);color:var(--fg);font:400 1rem/1.65 var(--b);-webkit-font-smoothing:antialiased;overflow-x:hidden;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer;background:none;border:0}
h1,h2,h3,h4,p{margin:0}
img{max-width:100%;display:block}
:focus-visible{outline:2px solid var(--lime);outline-offset:3px;border-radius:4px}
::selection{background:var(--lime);color:var(--ink)}

.wrap{width:min(var(--maxw),100% - var(--gutter)*2);margin-inline:auto}
.skip{position:fixed;top:12px;left:12px;z-index:200;padding:12px 18px;border-radius:10px;background:var(--lime);color:var(--ink);font-weight:700;transform:translateY(-160%);transition:transform .25s var(--ease)}
.skip:focus{transform:none}
main,.nav,.foot{position:relative;z-index:1}

/* profundidade: gradientes de fundo */
.bg{position:fixed;inset:0;z-index:0;pointer-events:none;
  background:
    radial-gradient(55% 45% at 10% -5%, rgba(200,241,105,.12), transparent 62%),
    radial-gradient(48% 42% at 92% 4%, rgba(139,123,255,.16), transparent 64%),
    radial-gradient(70% 55% at 50% 118%, rgba(139,123,255,.09), transparent 62%);
}
.bar{position:fixed;left:0;right:0;top:0;height:2px;background:linear-gradient(90deg,var(--lime),var(--violet));transform-origin:0;z-index:60}

/* 3. navegação ---------------------------------------------- */
.nav{position:sticky;top:0;z-index:40;background:rgba(8,9,11,.6);backdrop-filter:blur(18px) saturate(140%);border-bottom:1px solid var(--line)}
.nav .wrap{height:72px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.brand{display:flex;align-items:center;gap:11px;font:700 1.05rem var(--d);letter-spacing:-.02em}
.brand i{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:linear-gradient(135deg,var(--lime),var(--lime-2));color:var(--ink);font-style:normal;box-shadow:0 8px 22px rgba(200,241,105,.28)}
.nav-links{display:flex;gap:4px;font-size:.9rem;font-weight:500;color:var(--mut)}
.nav-links a{position:relative;padding:9px 13px;border-radius:10px;transition:color .25s,background .25s}
.nav-links a:hover{color:var(--fg);background:rgba(255,255,255,.05)}
.nav-links a.on{color:var(--fg)}
.nav-links a.on::after{content:'';position:absolute;left:50%;bottom:2px;translate:-50% 0;width:5px;height:5px;border-radius:50%;background:var(--lime)}
.nav-burger{display:none;flex-direction:column;gap:5px;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid var(--line-2);border-radius:12px}
.nav-burger i{width:18px;height:2px;background:var(--fg);border-radius:2px;transition:transform .3s var(--ease),opacity .2s}
.nav-burger.open i:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-burger.open i:nth-child(2){opacity:0}
.nav-burger.open i:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.nav-mobile{position:absolute;left:12px;right:12px;top:calc(100% + 10px);display:grid;gap:4px;padding:14px;border-radius:var(--r);background:rgba(13,15,19,.97);border:1px solid var(--line-2);backdrop-filter:blur(18px);box-shadow:var(--shadow)}
.nav-mobile a{padding:13px 14px;border-radius:12px;font-weight:600}
.nav-mobile a:hover,.nav-mobile a.on{background:rgba(255,255,255,.06)}

/* botões */
.btn{position:relative;display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:50px;padding:0 24px;border-radius:13px;font-weight:700;font-size:.94rem;letter-spacing:-.01em;border:1px solid transparent;overflow:hidden;transition:transform .25s var(--ease),box-shadow .3s,border-color .3s,background .3s;white-space:nowrap}
.btn svg{width:18px;height:18px}
.btn.lime{background:linear-gradient(135deg,var(--lime),var(--lime-2));color:var(--ink);box-shadow:0 12px 30px rgba(200,241,105,.22)}
.btn.lime::after{content:'';position:absolute;inset:0;background:linear-gradient(115deg,transparent 32%,rgba(255,255,255,.6) 50%,transparent 68%);transform:translateX(-130%);transition:transform .75s var(--ease)}
.btn.lime:hover::after{transform:translateX(130%)}
.btn.ghost{background:rgba(255,255,255,.04);border-color:var(--line-2);backdrop-filter:blur(6px)}
.btn.ghost:hover{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.28)}
.btn:hover{transform:translateY(-2px)}
.btn:active{transform:translateY(0) scale(.98)}
.btn.sm{min-height:42px;padding:0 18px;font-size:.88rem}
.btn.wide{width:100%}

/* cabeçalho de seção */
.sec{padding-block:clamp(72px,9vw,140px)}
.sec-head{display:flex;flex-direction:column;gap:16px;max-width:760px}
.eyebrow{display:inline-flex;align-items:center;gap:10px;font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--mut)}
.eyebrow::before{content:'';width:26px;height:1px;background:linear-gradient(90deg,var(--lime),transparent)}
h2{font:600 clamp(2rem,4.6vw,3.6rem)/1.04 var(--d);letter-spacing:-.05em;max-width:22ch}
h3{font:600 1.25rem var(--d);letter-spacing:-.03em}
.sec-sub{color:var(--mut);max-width:60ch;font-size:1.06rem}
.sec-top{display:flex;justify-content:space-between;align-items:flex-end;gap:32px;flex-wrap:wrap;margin-bottom:54px}

/* 4. hero --------------------------------------------------- */
.hero{position:relative;display:grid;grid-template-columns:1.06fr .94fr;gap:clamp(32px,5vw,76px);align-items:center;padding-block:clamp(48px,7vw,96px) clamp(64px,8vw,120px)}
.avail{display:inline-flex;align-items:center;gap:10px;color:var(--mut);font-size:.88rem;font-weight:500;padding:8px 14px 8px 12px;border:1px solid var(--line);border-radius:99px;background:rgba(255,255,255,.03);margin-bottom:26px}
.dot{width:8px;height:8px;border-radius:50%;background:#62d36b;box-shadow:0 0 0 4px rgba(98,211,107,.16);animation:pulse 2.6s var(--ease) infinite}
@keyframes pulse{0%,100%{box-shadow:0 0 0 4px rgba(98,211,107,.16)}50%{box-shadow:0 0 0 9px rgba(98,211,107,0)}}
h1{font:600 clamp(2.6rem,6.6vw,5.4rem)/1 var(--d);letter-spacing:-.055em}
.w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em}
.w span{display:inline-block}
.hl{background:linear-gradient(100deg,var(--lime) 10%,var(--violet) 92%);-webkit-background-clip:text;background-clip:text;color:transparent}
.lead{color:var(--mut);font-size:clamp(1.02rem,1.4vw,1.18rem);max-width:52ch;margin:26px 0 34px}
.row{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
/* vitrine de projetos no topo */
.showcase{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.thumb{position:relative;display:block;aspect-ratio:1/1.06;border-radius:var(--r);overflow:hidden;border:1px solid var(--line-2);background:var(--panel);text-align:left}
.thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}
.thumb:hover img{transform:scale(1.06)}
.thumb-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 32%,rgba(5,6,8,.86))}
.thumb-label{position:absolute;left:14px;right:14px;bottom:13px;display:flex;flex-direction:column;gap:2px}
.thumb-label strong{font:600 1.02rem var(--d);letter-spacing:-.03em}
.thumb-label em{font-style:normal;color:var(--mut);font-size:.78rem;font-weight:600}
.thumb-arr{position:absolute;top:12px;right:12px;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:rgba(8,9,11,.6);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px);transition:transform .4s var(--ease),background .3s,color .3s}
.thumb-arr svg{width:15px;height:15px}
.thumb:hover .thumb-arr{transform:rotate(45deg);background:var(--lime);color:var(--ink)}

/* 5. princípios --------------------------------------------- */
.values{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:0;border:1px solid var(--line);border-radius:var(--r-lg);overflow:hidden;background:var(--line)}
.value{padding:30px 26px;background:var(--ink-2);transition:background .35s}
.value:hover{background:var(--panel)}
.value svg{width:24px;height:24px;color:var(--lime);margin-bottom:16px}
.value h3{font-size:1.06rem;margin-bottom:7px}
.value p{color:var(--mut);font-size:.9rem}

/* 6. sobre -------------------------------------------------- */
.about-copy{display:flex;flex-direction:column;gap:20px}
.about-copy p{color:var(--mut);font-size:1.06rem;max-width:68ch}
.pillars{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:6px}
.pillar{padding:18px;border:1px solid var(--line);border-radius:var(--r);background:var(--panel)}
.pillar strong{display:block;font:600 1rem var(--d);margin-bottom:5px}
.pillar span{color:var(--mut);font-size:.86rem}
.motion{display:grid;gap:22px;padding:clamp(22px,3vw,32px);border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(140deg,rgba(139,123,255,.12),var(--panel))}
.motion .btn{justify-self:start}

/* 7. projetos ----------------------------------------------- */
.pgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:18px;margin-top:0}
.pc{perspective:1000px}
.proj{position:relative;display:block;width:100%;height:clamp(380px,44vw,480px);padding:0;border-radius:var(--r-lg);overflow:hidden;text-align:left;background:var(--panel);transform-style:preserve-3d;border:1px solid var(--line-2)}
.proj img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.shade{position:absolute;inset:0;background:linear-gradient(185deg,rgba(0,0,0,.05) 30%,rgba(5,6,8,.88))}
.pin{position:absolute;top:20px;left:22px;right:22px;display:flex;justify-content:space-between;align-items:center;font-size:.82rem;font-weight:700;letter-spacing:.02em}
.pin>span:first-child{padding:6px 12px;border-radius:99px;background:rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.22);backdrop-filter:blur(8px)}
.arr{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;background:var(--lime);color:var(--ink);transition:transform .4s var(--ease)}
.proj:hover .arr{transform:rotate(45deg) scale(1.06)}
.pbot{position:absolute;left:24px;right:24px;bottom:24px}
.pbot h3{font-size:clamp(1.7rem,3vw,2.5rem);letter-spacing:-.05em;margin-bottom:9px}
.pbot p{color:#d7dad4;max-width:46ch;font-size:.95rem}

/* 8. serviços ----------------------------------------------- */
.serv{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.sv{position:relative;height:100%;padding:30px 28px;border:1px solid var(--line);border-radius:var(--r-lg);background:linear-gradient(180deg,var(--panel-2),var(--panel));overflow:hidden;transition:border-color .35s,transform .35s var(--ease)}
.sv::before{content:'';position:absolute;inset:0;background:radial-gradient(60% 60% at 50% 0%,rgba(200,241,105,.14),transparent 70%);opacity:0;transition:opacity .4s}
.sv:hover{border-color:rgba(200,241,105,.4)}
.sv:hover::before{opacity:1}
.sv>i{position:relative;display:grid;place-items:center;width:52px;height:52px;border-radius:15px;background:rgba(200,241,105,.12);color:var(--lime);margin-bottom:32px;border:1px solid rgba(200,241,105,.25)}
.sv>i svg{width:24px;height:24px}
.sv h3{margin-bottom:10px}
.sv p{color:var(--mut);font-size:.94rem;position:relative}
.sv ul{list-style:none;margin:20px 0 0;padding:0;display:grid;gap:9px;position:relative}
.sv li{display:flex;gap:9px;align-items:flex-start;font-size:.88rem;color:var(--mut)}
.sv li svg{width:15px;height:15px;flex:none;margin-top:4px;color:var(--lime)}

/* 9. processo ----------------------------------------------- */
.steps{position:relative;display:grid;grid-template-columns:repeat(4,1fr);gap:22px;padding-top:38px}
.track{position:absolute;top:14px;left:0;right:0;height:2px;background:var(--line)}
.fill{height:100%;background:linear-gradient(90deg,var(--lime),var(--violet));transform-origin:0}
.num{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--ink);border:1px solid var(--line-2);color:var(--lime);font:700 .85rem var(--mono);margin:-53px 0 20px;position:relative}
.step h3{font-size:1.08rem;margin-bottom:7px}
.step p{color:var(--mut);font-size:.92rem}

/* 10. faq, contato, rodapé ---------------------------------- */
.faq{display:grid;gap:0;border-top:1px solid var(--line)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:24px 4px;font:600 clamp(1rem,1.6vw,1.15rem) var(--d);letter-spacing:-.02em;transition:color .25s}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--lime)}
.faq summary .ico{flex:none;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;border:1px solid var(--line-2);color:var(--lime);transition:transform .3s var(--ease),background .3s,color .3s}
.faq summary .ico svg{width:15px;height:15px}
.faq details[open] summary .ico{transform:rotate(45deg);background:var(--lime);color:var(--ink)}
.faq .answer{padding:0 4px 26px;color:var(--mut);max-width:70ch;animation:answer .35s var(--ease)}
@keyframes answer{from{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:none}}

.contact{position:relative;display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(28px,4vw,56px);align-items:center;padding:clamp(32px,5vw,64px);border-radius:var(--r-lg);border:1px solid var(--line-2);overflow:hidden;background-size:cover;background-position:center;box-shadow:var(--shadow)}
.contact::after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,9,11,.35),rgba(8,9,11,.85))}
.contact>*{position:relative;z-index:1}
.contact-title{font:600 clamp(1.3rem,2.4vw,1.85rem)/1.25 var(--d);letter-spacing:-.03em;max-width:26ch}
.contact p{color:#c3c8c2;max-width:48ch;margin-top:16px}
.contact .row{margin-top:30px}
.contact-card{padding:24px;border-radius:var(--r);border:1px solid var(--line-2);background:rgba(10,11,14,.72);backdrop-filter:blur(12px);display:grid;gap:16px}
.contact-card a,.contact-card span.line{display:flex;align-items:center;gap:12px;font-size:.9rem;font-weight:600}
.contact-card svg{width:17px;height:17px;color:var(--lime);flex:none}
.contact-card small{color:var(--mut-2);font-size:.78rem;display:block;margin-top:-6px}

.foot{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:32px;padding:64px 0 40px;border-top:1px solid var(--line);margin-top:clamp(60px,8vw,110px)}
.foot-brand p{color:var(--mut);font-size:.9rem;max-width:34ch;margin-top:14px}
.foot h4{font:700 .76rem var(--d);letter-spacing:.14em;text-transform:uppercase;color:var(--mut-2);margin-bottom:16px}
.foot ul{list-style:none;margin:0;padding:0;display:grid;gap:11px}
.foot ul a,.foot ul span{color:var(--mut);font-size:.9rem;transition:color .25s}
.foot ul a:hover{color:var(--lime)}
.foot-end{grid-column:1/-1;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:28px;border-top:1px solid var(--line);color:var(--mut-2);font-size:.82rem}

.totop{position:fixed;right:22px;bottom:22px;z-index:45;display:grid;place-items:center;width:46px;height:46px;border-radius:50%;background:rgba(16,18,23,.9);border:1px solid var(--line-2);backdrop-filter:blur(10px);color:var(--fg);box-shadow:var(--shadow)}
.totop svg{width:18px;height:18px}

/* demos ----------------------------------------------------- */
.demo{position:fixed;inset:0;z-index:100;overflow-y:auto;overscroll-behavior:contain;background:var(--bg);color:var(--fg)}
.dbar{position:sticky;top:0;z-index:5;display:flex;justify-content:space-between;gap:14px;align-items:center;padding:12px 22px;background:rgba(8,9,11,.82);backdrop-filter:blur(14px);color:#fff;font-size:.82rem;border-bottom:1px solid rgba(255,255,255,.08)}
.dbar button{font-weight:700;transition:opacity .2s}
.dbar button:hover{opacity:.7}
.dbar span{color:#a9aea8}
.dnav{display:flex;justify-content:space-between;align-items:center;gap:16px;padding:24px max(20px,calc(50% - 540px))}
.dnav strong{font:700 1.2rem var(--d);letter-spacing:-.02em}
.cnt{display:inline-block;font-size:.85rem;font-weight:700;color:var(--ac)}
.dhero{position:relative;height:min(66vh,560px);margin:0 max(14px,calc(50% - 540px));border-radius:var(--r-lg);overflow:hidden;box-shadow:var(--shadow)}
.dhero img{position:absolute;left:0;top:-8%;width:100%;height:120%;object-fit:cover}
.dshade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 28%,rgba(0,0,0,.76))}
.dtxt{position:absolute;left:clamp(20px,4vw,48px);right:20px;bottom:clamp(24px,4vw,44px);color:#fff}
.dtxt h1{max-width:700px;font-size:clamp(2.2rem,5.6vw,4.6rem)}
.dtxt p{margin-top:12px;opacity:.88}
.dsub{max-width:58ch;font-size:1rem}
.dstats{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;padding:28px max(20px,calc(50% - 540px)) 0}
.dstat{padding:22px;border-radius:var(--r);background:var(--cd)}
.dstat b{display:block;font:600 clamp(1.5rem,3vw,2.1rem) var(--d);color:var(--ac);letter-spacing:-.03em}
.dstat span{font-size:.84rem;opacity:.72;line-height:1.45}
.dabout{display:grid;grid-template-columns:.95fr 1.05fr;gap:clamp(28px,4vw,44px);padding:clamp(56px,7vw,80px) max(20px,calc(50% - 540px))}
.dabout h2{font-size:clamp(1.7rem,3.4vw,2.5rem)}
.dabout p{margin-top:16px;opacity:.78;line-height:1.75;max-width:52ch}
.dfeat{list-style:none;margin:0;padding:0;display:grid;gap:14px;align-content:start}
.dfeat li{display:flex;gap:14px;align-items:flex-start;padding:18px;border-radius:var(--r);background:var(--cd)}
.dfeat i{flex:none;display:grid;place-items:center;width:42px;height:42px;border-radius:12px;background:var(--ac);color:var(--on);font-style:normal;font-size:1.05rem}
.dfeat strong{display:block;font:600 1.02rem var(--d)}
.dfeat span{font-size:.88rem;opacity:.72;line-height:1.5}
.ditems{padding:0 max(20px,calc(50% - 540px)) clamp(56px,7vw,80px)}
.ditems h2{max-width:none;font-size:clamp(1.8rem,3.8vw,2.8rem)}
.dhint{opacity:.65;font-size:.9rem;margin-top:10px}
.dgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin-top:26px}
.dgrid button{display:grid;grid-template-columns:1fr auto auto;gap:16px;align-items:center;text-align:left;padding:22px;border-radius:var(--r);border:2px solid transparent;background:var(--cd);color:var(--fg);transition:border-color .25s,transform .25s var(--ease)}
.dgrid button:hover{transform:translateY(-3px)}
.dgrid button.on{border-color:var(--ac)}
.dgrid strong{display:block;font:600 1.15rem var(--d)}
.dgrid span{font-size:.88rem;opacity:.7}
.dgrid em{font-style:normal;font-weight:700;font-size:.9rem}
.dgrid b{display:grid;place-items:center;min-width:34px;height:34px;border-radius:50%;background:var(--ac);color:var(--on)}
.dquote{padding:0 max(20px,calc(50% - 540px)) clamp(56px,7vw,80px)}
.dquote blockquote{margin:0;font:600 clamp(1.35rem,3.1vw,2.2rem)/1.3 var(--d);letter-spacing:-.04em;max-width:34ch}
.dquote cite{display:block;margin-top:20px;font-style:normal;font-size:.9rem;opacity:.7}
.dinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding:0 max(20px,calc(50% - 540px)) clamp(56px,7vw,80px)}
.dcard{padding:24px;border-radius:var(--r);background:var(--cd)}
.dcard h3{font-size:1.08rem;margin-bottom:14px}
.dcard p{font-size:.92rem;opacity:.82;line-height:1.6}
.dcard ul{list-style:none;margin:0;padding:0;display:grid;gap:9px}
.dcard li{display:flex;justify-content:space-between;gap:12px;font-size:.9rem;opacity:.85}
.dmut{margin-top:10px;opacity:.6!important;font-size:.85rem!important}
.dfaq{padding:0 max(20px,calc(50% - 540px)) clamp(56px,7vw,80px)}
.dfaq h2{font-size:clamp(1.6rem,3.2vw,2.3rem);margin-bottom:22px}
.dfaq details{border-top:1px solid rgba(128,128,128,.3);padding:18px 0}
.dfaq details:last-of-type{border-bottom:1px solid rgba(128,128,128,.3)}
.dfaq summary{cursor:pointer;font:600 1.02rem var(--d);list-style:none;display:flex;justify-content:space-between;gap:16px;align-items:center}
.dfaq summary::-webkit-details-marker{display:none}
.dfaq summary::after{content:'+';font-size:1.4rem;color:var(--ac);transition:transform .25s}
.dfaq details[open] summary::after{transform:rotate(45deg)}
.dfaq p{margin-top:12px;opacity:.78;max-width:66ch;line-height:1.65}
.dfoot{padding:clamp(56px,7vw,80px) 20px 96px;text-align:center;background:var(--cd)}
.dfoot h2{margin:0 auto 26px;font-size:clamp(1.9rem,4.4vw,3.4rem)}
.dcta{border-radius:99px;padding:17px 32px;font-weight:700;background:var(--ac);color:var(--on);transition:transform .25s var(--ease)}
.dcta:hover{transform:translateY(-3px)}
.dfoot small{display:block;margin-top:28px;opacity:.6}

/* responsivo ------------------------------------------------- */
@media(max-width:1080px){
  .foot{grid-template-columns:1fr 1fr}
  .contact{grid-template-columns:1fr}
  .nav-links{gap:0}
}
@media(max-width:920px){
  .hero,.dabout{grid-template-columns:1fr}
  .showcase{max-width:520px}
  .nav-links,.nav-cta{display:none}
  .nav-burger{display:flex}
  .values{grid-template-columns:1fr 1fr}
  .serv,.steps{grid-template-columns:1fr 1fr}
  .steps{padding-top:0}
  .track{display:none}
  .num{margin:0 0 14px}
  .pgrid{grid-template-columns:repeat(6,1fr)}
  .pc{grid-column:span 6!important}
}
@media(max-width:640px){
  :root{--gutter:20px}
  .values,.serv,.steps,.pillars,.motion-parts{grid-template-columns:1fr}
  .dstats{grid-template-columns:1fr 1fr}
  .dgrid,.dinfo{grid-template-columns:1fr}
  .dbar span{display:none}
  .foot{grid-template-columns:1fr;gap:26px}
  .sec-top{margin-bottom:36px}
  .proj{height:420px}
  .contact .row .btn{width:100%}
}
@media(prefers-reduced-motion:reduce){
  .dot{animation:none}
  .faq .answer{animation:none}
  .btn.lime::after{display:none}
}
@media(hover:none){
  .sv:hover,.btn:hover,.proj:hover .arr,.thumb:hover img,.dgrid button:hover{transform:none}
}


/* ============================================================
   REDESIGN 2026 · editorial product studio
   ============================================================ */
:root{--ink:#1e2347;--ink-2:#262c58;--panel:#2a3160;--panel-2:#273038;--line:rgba(17,21,26,.14);--line-2:rgba(17,21,26,.24);--fg:#1e2347;--mut:#5b5f86;--mut-2:#92989b;--lime:#c8f542;--lime-2:#bfe54f;--violet:#8f9bff;--coral:#ff6b4a;--paper:#fff8ee;--paper-2:#f6ead6;--r-sm:8px;--r:14px;--r-lg:24px;--maxw:1260px;--gutter:clamp(22px,5vw,72px);--d:'Space Grotesk',system-ui,sans-serif;--b:'DM Sans',system-ui,sans-serif;--serif:'Instrument Serif',Georgia,serif;--mono:ui-monospace,SFMono-Regular,monospace}
html{background:var(--paper);color:var(--fg)}body{background:var(--paper);color:var(--fg);font-family:var(--b)}body::before{content:'';position:fixed;inset:0;pointer-events:none;opacity:.26;z-index:0;background-image:radial-gradient(rgba(17,21,26,.16) .55px,transparent .55px);background-size:5px 5px}.bg{background:radial-gradient(48% 35% at 87% -5%,rgba(231,111,81,.13),transparent 70%),radial-gradient(55% 35% at 10% 23%,rgba(216,243,106,.17),transparent 70%);opacity:.8}.bar{background:var(--coral)}main,.foot{z-index:1}.wrap{width:min(var(--maxw),100% - var(--gutter)*2)}::selection{background:var(--coral);color:white}:focus-visible{outline:2px solid var(--coral)}
.nav{background:rgba(242,238,230,.78);border-bottom:1px solid var(--line);backdrop-filter:blur(18px) saturate(120%)}.nav .wrap{height:82px}.brand{font-size:1.12rem;color:var(--fg)}.brand i{width:35px;height:35px;border-radius:9px;background:var(--fg);color:var(--paper);box-shadow:none}.nav-links{color:var(--mut);font-size:.82rem;text-transform:uppercase;letter-spacing:.08em}.nav-links a:hover{color:var(--fg);background:transparent}.nav-links a.on{color:var(--fg)}.nav-links a.on::after{background:var(--coral)}.btn{border-radius:999px;min-height:48px;padding:0 22px;font-size:.84rem;letter-spacing:.02em}.btn.lime{background:var(--fg);color:var(--paper);box-shadow:0 12px 26px rgba(17,21,26,.14)}.btn.lime::after{display:none}.btn.ghost{background:transparent;border-color:var(--line-2);color:var(--fg)}.btn.ghost:hover{background:var(--fg);color:var(--paper);border-color:var(--fg)}.nav-cta{background:var(--coral)!important;color:white!important}.text-link{display:inline-flex;align-items:center;gap:12px;font-size:.86rem;font-weight:700;border-bottom:1px solid var(--fg);padding-bottom:5px}.text-link span{font-size:1.1rem;transition:transform .3s}.text-link:hover span{transform:translate(3px,-3px)}
.sec{padding-block:clamp(82px,11vw,160px)}.eyebrow{color:var(--coral);font-size:.7rem;letter-spacing:.18em}.eyebrow::before{background:var(--coral);width:20px}.sec-head{gap:20px}h1,h2,h3{font-family:var(--d)}h1{font-size:clamp(3.35rem,8.2vw,7.5rem);line-height:.9;letter-spacing:-.075em;font-weight:600}h1>span{display:block}.serif{font-family:var(--serif);font-style:italic;font-weight:400;letter-spacing:-.035em}.sec h2{font-size:clamp(2.4rem,5.2vw,5rem);line-height:.94;letter-spacing:-.07em}.sec h2 .serif{font-size:1.08em}.sec-sub{color:var(--mut);font-size:1rem;max-width:48ch;line-height:1.65}
.hero{min-height:calc(100vh - 82px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(440px,1.1fr);gap:clamp(30px,5vw,100px);align-items:center;padding-top:clamp(54px,8vw,116px);padding-bottom:clamp(74px,10vw,150px)}.hero-copy{padding-top:10px}.hero-meta{display:flex;align-items:center;gap:12px;margin-bottom:36px;color:var(--mut);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em}.hero-index{color:var(--fg);font-weight:700}.hero-rule{height:1px;width:42px;background:var(--coral)}.lead{color:var(--mut);font-size:clamp(1rem,1.35vw,1.15rem);max-width:42ch;line-height:1.6;margin:32px 0 34px}.hero-signature{display:flex;gap:9px;align-items:center;margin-top:54px;color:var(--mut);font-size:.72rem;text-transform:uppercase;letter-spacing:.1em}.signature-city{margin-left:auto;color:var(--fg)}.dot{width:7px;height:7px;background:var(--coral);box-shadow:0 0 0 4px rgba(231,111,81,.16)}
.preview-stage{position:relative;min-height:510px;display:grid;place-items:center}.preview-glow{position:absolute;width:78%;height:70%;right:4%;top:10%;background:radial-gradient(closest-side,rgba(216,243,106,.72),rgba(216,243,106,0) 70%);filter:blur(20px);transform:rotate(-12deg)}.preview-window{position:relative;width:min(100%,650px);background:#20264d;color:#f5f1e9;border-radius:20px;overflow:hidden;box-shadow:28px 35px 80px rgba(17,21,26,.22);transform:rotate(1deg);z-index:1}.preview-top{height:46px;padding:0 16px;display:flex;align-items:center;gap:12px;background:#2a3160;border-bottom:1px solid rgba(255,255,255,.1);font-size:.66rem;color:#a3abb0}.preview-top span{display:flex;gap:5px}.preview-top i{width:8px;height:8px;border-radius:50%;background:#ff6b4a}.preview-top i:nth-child(2){background:#c8f542}.preview-top i:nth-child(3){background:#8f9bff}.preview-top b{font-weight:500;letter-spacing:.06em;margin-left:12px}.preview-top em{margin-left:auto;font-style:normal;color:#c8f542;font-size:1rem}.preview-body{padding:clamp(30px,5vw,54px);background:linear-gradient(140deg,#2a3160,#1e2347)}.preview-body small{font-size:.63rem;color:#c8f542;letter-spacing:.18em;text-transform:uppercase}.preview-body strong{display:block;font:500 clamp(2rem,4.5vw,4.1rem)/.92 var(--d);letter-spacing:-.08em;margin:28px 0 38px}.preview-body strong span{font-family:var(--serif);font-style:italic;color:#ff6b4a;font-weight:400}.preview-grid{display:grid;grid-template-columns:1.4fr .8fr;grid-template-rows:88px 88px;gap:10px}.preview-grid div{border-radius:9px;background:linear-gradient(145deg,#a5b1a9,#424b50)}.preview-grid div:nth-child(2){grid-row:span 2;background:linear-gradient(145deg,#ff6b4a,#7e3b32)}.preview-grid div:nth-child(3){background:linear-gradient(145deg,#c8f542,#6c7a39)}.preview-grid div:nth-child(4){background:linear-gradient(145deg,#8f9bff,#3b4668)}.preview-foot{display:flex;justify-content:space-between;margin-top:38px;color:#929ca0;font-size:.63rem;letter-spacing:.08em;text-transform:uppercase}.preview-note{position:absolute;z-index:2;padding:11px 14px;background:var(--paper);border:1px solid var(--line);box-shadow:0 12px 25px rgba(17,21,26,.12);font-size:.67rem;text-transform:uppercase;letter-spacing:.08em}.preview-note span{color:var(--coral);font-weight:700;margin-right:8px}.note-one{top:13%;left:-3%;transform:rotate(-5deg)}.note-two{bottom:9%;right:-2%;transform:rotate(4deg)}
.values{grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:0;background:transparent;gap:0}.value{padding:28px 24px;background:transparent;border-right:1px solid var(--line)}.value:last-child{border-right:0}.value:hover{background:var(--paper-2)}.value svg{color:var(--coral)}.value h3{font-size:1rem}.value p{color:var(--mut);font-size:.86rem}
.projects-section{padding-top:clamp(80px,10vw,145px)}.sec-top{align-items:flex-start;margin-bottom:62px}.section-count{font:700 .7rem var(--mono);color:var(--mut);text-align:right;line-height:1.5}.section-count small{font:400 .6rem var(--b);text-transform:uppercase;letter-spacing:.1em}.pgrid{gap:20px}.pc{perspective:1200px}.proj{height:clamp(390px,43vw,610px);border:0;border-radius:0;background:#2a3160;box-shadow:0 18px 40px rgba(17,21,26,.08)}.proj img{filter:saturate(.86);transition:transform .7s var(--ease),filter .7s}.proj:hover img{filter:saturate(1.08)}.shade{background:linear-gradient(180deg,rgba(17,21,26,.06) 20%,rgba(17,21,26,.88) 100%)}.pin{top:20px;left:22px;right:22px;font-size:.66rem;letter-spacing:.1em;text-transform:uppercase}.pin>span:first-child{padding:0;background:transparent;border:0;border-radius:0}.arr{width:42px;height:42px;background:var(--paper);color:var(--fg);border-radius:50%}.proj:hover .arr{background:var(--coral);color:white}.pbot{left:25px;right:25px;bottom:24px}.project-type{display:block;color:var(--lime);font-size:.65rem;text-transform:uppercase;letter-spacing:.16em;margin-bottom:12px}.pbot h3{font-size:clamp(1.75rem,3.3vw,3.2rem);letter-spacing:-.07em;margin-bottom:8px}.pbot p{color:rgba(255,255,255,.76);font-size:.87rem;max-width:38ch}.project-open{display:inline-flex;gap:10px;margin-top:18px;padding-top:12px;border-top:1px solid rgba(255,255,255,.25);color:white;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em}.project-open b{font-size:1rem;color:var(--coral)}.project-2{margin-top:70px}.project-3{margin-top:-40px}.project-4{margin-top:30px}
.about-copy,.serv,.steps,.faq,.contact,.foot{color:var(--fg)}.pillar,.sv,.motion,.contact-card{border-color:var(--line);background:rgba(255,255,255,.22);border-radius:0}.about-copy p,.sv p,.step p,.faq .answer{color:var(--mut)}.motion{background:var(--fg);color:var(--paper);border:0}.motion-head small,.motion-head span,.motion-parts span{color:#aeb7b6}.motion-head strong,.motion-parts b{color:white}.motion-parts li{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.14)}.motion-parts i{color:var(--lime);background:rgba(216,243,106,.1);border-color:rgba(216,243,106,.3)}.sv{padding:30px 26px}.sv:hover{border-color:var(--coral);transform:translateY(-8px)}.sv>i{color:var(--coral);background:rgba(231,111,81,.1);border-color:rgba(231,111,81,.25)}.sv li{color:var(--mut)}.sv li svg{color:var(--coral)}.track{background:var(--line)}.fill{background:var(--coral)}.num{background:var(--paper);border-color:var(--coral);color:var(--coral)}.faq{border-color:var(--line)}.faq details{border-color:var(--line)}.faq summary:hover{color:var(--coral)}.faq summary .ico{border-color:var(--line-2);color:var(--coral)}.faq details[open] summary .ico{background:var(--coral);color:white}.contact{border-radius:0;border:0;background-color:var(--fg);box-shadow:20px 25px 65px rgba(17,21,26,.16)}.contact::after{background:linear-gradient(90deg,rgba(17,21,26,.95),rgba(17,21,26,.36))}.contact-title,.contact p,.contact-card{position:relative;z-index:1}.contact-title{font:500 clamp(1.9rem,3.4vw,3.3rem)/1 var(--d);letter-spacing:-.06em}.contact p{color:#cdd2f0}.contact-card{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.16)}.contact-card a:hover{color:var(--lime)}.foot{border-top:1px solid var(--line);padding-block:50px 34px}.foot h4{color:var(--coral);font-size:.7rem;text-transform:uppercase;letter-spacing:.14em}.foot p,.foot li{color:var(--mut)}.totop{background:var(--coral);color:white}
.demo{font-family:var(--b)}.dbar{border-bottom:1px solid color-mix(in srgb,var(--fg) 18%,transparent);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em}.dbar button:hover{color:var(--ac)}.dnav{padding-block:28px}.dnav strong{font-size:1.35rem;letter-spacing:-.05em}.dnav .cnt{font-size:.75rem}.dhero{border-radius:0;box-shadow:none;height:min(70vh,640px);margin-inline:max(14px,calc(50% - 580px))}.dhero::after{content:'scroll to explore ↓';position:absolute;bottom:24px;right:26px;z-index:3;font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(255,255,255,.78)}.dtxt h1{font-size:clamp(3rem,7vw,7rem);letter-spacing:-.08em}.dsub{max-width:46ch}.dstats{padding:25px max(20px,calc(50% - 540px));border-bottom:1px solid color-mix(in srgb,var(--fg) 18%,transparent)}.dstat b{font-size:2.2rem;letter-spacing:-.06em}.dstat span{font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;opacity:.72}.dabout,.ditems,.dquote,.dinfo,.dfaq{max-width:1080px;margin-inline:auto;padding-inline:0}.dabout{padding-top:clamp(70px,9vw,130px)}.dabout h2,.ditems h2,.dquote blockquote,.dfaq h2{letter-spacing:-.07em}.dfeat li,.dcard,.dgrid button{border-color:color-mix(in srgb,var(--fg) 18%,transparent);border-radius:0}.dgrid{gap:12px}.dgrid button{background:color-mix(in srgb,var(--cd) 72%,transparent);padding:24px}.dgrid button:hover{border-color:var(--ac)}.dquote{padding-top:30px}.dquote blockquote{font-size:clamp(1.7rem,4vw,3.8rem)}.dfoot{padding-top:110px;padding-bottom:110px}.dfoot h2{letter-spacing:-.08em}
@media(max-width:920px){.hero{grid-template-columns:1fr;min-height:auto}.preview-stage{min-height:460px;margin-top:10px}.preview-window{width:min(100%,680px)}.values{grid-template-columns:repeat(2,1fr)}.value:nth-child(2){border-right:0}.value:nth-child(-n+2){border-bottom:1px solid var(--line)}.project-2,.project-3,.project-4{margin-top:0}.pgrid{grid-template-columns:repeat(2,1fr)}.pc{grid-column:span 1!important}.proj{height:clamp(390px,62vw,520px)}.dabout,.dinfo{grid-template-columns:1fr}.dabout,.ditems,.dquote,.dinfo,.dfaq{padding-inline:24px}}
@media(max-width:640px){.nav-links,.nav-cta{display:none}.nav-burger{display:flex}.hero{padding-top:48px}.hero-meta{font-size:.58rem;margin-bottom:28px}.hero-signature{margin-top:40px;display:block;line-height:2}.signature-city{display:block;margin-left:0}.preview-stage{min-height:360px}.preview-note{font-size:.55rem}.note-one{left:-4%;top:8%}.note-two{right:-4%;bottom:7%}.preview-body{padding:28px 22px}.preview-body strong{margin:22px 0 26px}.preview-grid{grid-template-rows:58px 58px}.preview-foot{margin-top:24px;font-size:.5rem}.values,.pgrid,.dgrid,.dinfo{grid-template-columns:1fr}.value{border-right:0!important;border-bottom:1px solid var(--line)}.value:last-child{border-bottom:0}.sec-top{margin-bottom:40px}.section-count{display:none}.proj{height:460px}.pbot h3{font-size:2.3rem}.dbar{padding-inline:18px}.dhero{margin-inline:0;border-radius:0;height:58vh}.dnav{padding-inline:20px}.dnav strong{font-size:1rem}.dstats{grid-template-columns:repeat(2,1fr);gap:20px}.dabout,.ditems,.dquote,.dinfo,.dfaq{padding-inline:20px}.dabout{padding-top:66px}.dfoot{padding-inline:20px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.001ms!important;transition-duration:.001ms!important}}

/* ============================================================
   DEMOS 2026 · mini-produtos com identidade e estados reais
   ============================================================ */
.demo{--demo-bg:#111;--demo-fg:#fff;--demo-accent:#c8f542;--demo-card:#222;--demo-line:rgba(255,255,255,.16);position:fixed;inset:0;z-index:100;overflow-y:auto;background:var(--demo-bg);color:var(--demo-fg);font-family:var(--b);scroll-behavior:smooth}.demo-shell{width:min(1080px,calc(100% - 40px));margin-inline:auto}.dbar{position:sticky;top:0;z-index:5;height:44px;display:flex;align-items:center;justify-content:space-between;padding:0 max(20px,calc(50% - 580px));background:color-mix(in srgb,var(--demo-bg) 88%,transparent);backdrop-filter:blur(14px);color:color-mix(in srgb,var(--demo-fg) 70%,transparent)}.dbar button{font-size:.76rem;letter-spacing:.08em;text-transform:uppercase}.dbar button:hover{color:var(--demo-accent)}.dnav{display:flex;align-items:center;gap:24px;padding-block:26px}.dnav strong{font:600 1.25rem var(--d);letter-spacing:-.04em}.dnav>span{margin-left:auto;font-size:.75rem;opacity:.7}.demo-cart-button{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--demo-line);border-radius:999px;padding:10px 14px;font-size:.78rem;transition:.25s}.demo-cart-button:hover{background:var(--demo-accent);color:var(--demo-bg);border-color:var(--demo-accent)}.demo-cart-button svg{width:15px}.demo-hero{position:relative;height:min(68vh,650px);min-height:520px;margin-inline:auto;width:min(1160px,calc(100% - 28px));overflow:hidden;background:var(--demo-card)}.demo-hero>img{width:100%;height:100%;object-fit:cover;filter:saturate(.9)}.demo-hero .dshade{background:linear-gradient(90deg,rgba(0,0,0,.76),rgba(0,0,0,.1) 72%),linear-gradient(0deg,rgba(0,0,0,.4),transparent 50%)}.demo-hero .dtxt{position:absolute;inset:auto 8% 11%;max-width:680px;z-index:2}.demo-kicker{display:inline-block;font-size:.68rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--demo-accent);margin-bottom:14px}.demo-hero h1{font-family:var(--d);font-size:clamp(3.2rem,8vw,7.2rem);line-height:.88;letter-spacing:-.08em;color:var(--demo-fg);max-width:10ch}.demo-hero .dsub{font-size:1.05rem;max-width:50ch;margin:24px 0;color:rgba(255,255,255,.78)}.demo-hero-points{display:flex;flex-wrap:wrap;gap:10px 18px;margin-bottom:28px;font-size:.76rem;color:rgba(255,255,255,.82)}.demo-primary{background:var(--demo-accent);color:var(--demo-bg);border:0;box-shadow:none}.demo-primary:hover{background:var(--demo-fg);color:var(--demo-bg)}.demo-primary svg{width:16px}.demo-outline{border:1px solid var(--demo-line);color:var(--demo-fg);background:transparent}.demo-outline:hover{background:var(--demo-fg);color:var(--demo-bg)}.dstats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;border-bottom:1px solid var(--demo-line);padding-block:28px}.dstat{display:flex;flex-direction:column;gap:4px;padding:0 22px;border-right:1px solid var(--demo-line)}.dstat:last-child{border:0}.dstat b{font:600 2.3rem var(--d);letter-spacing:-.07em}.dstat span{font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;opacity:.62}.dabout{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,8vw,130px);padding-block:clamp(80px,11vw,140px)}.dabout h2{font:600 clamp(2.1rem,4vw,4rem)/.95 var(--d);letter-spacing:-.07em;max-width:12ch}.dabout p{margin-top:24px;max-width:48ch;line-height:1.75;opacity:.72}.dfeat{list-style:none;padding:0;margin:0;display:grid;gap:12px}.dfeat li{display:flex;gap:15px;padding:18px 0;border-top:1px solid var(--demo-line)}.dfeat li:last-child{border-bottom:1px solid var(--demo-line)}.dfeat i{display:grid;place-items:center;flex:none;width:38px;height:38px;border-radius:50%;background:var(--demo-accent);color:var(--demo-bg);font-style:normal;font-weight:700}.dfeat strong,.dfeat span{display:block}.dfeat strong{margin-bottom:4px}.dfeat span{font-size:.86rem;opacity:.65}.demo-experience{padding-bottom:clamp(80px,11vw,140px)}.experience-head{display:flex;align-items:end;justify-content:space-between;gap:30px;border-bottom:1px solid var(--demo-line);padding-bottom:26px;margin-bottom:24px}.experience-head h2{font:600 clamp(2.3rem,5vw,4.5rem)/.92 var(--d);letter-spacing:-.075em;max-width:13ch}.experience-head>p{max-width:34ch;opacity:.62;font-size:.9rem}.experience-tabs{display:flex;gap:8px;overflow-x:auto;padding-bottom:22px}.experience-tabs button{white-space:nowrap;padding:11px 17px;border:1px solid var(--demo-line);border-radius:999px;font-size:.8rem;opacity:.72}.experience-tabs button.active,.experience-tabs button:hover{background:var(--demo-accent);border-color:var(--demo-accent);color:var(--demo-bg);opacity:1}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.product-card{display:grid;grid-template-columns:92px 1fr;min-height:188px;border:1px solid var(--demo-line);background:var(--demo-card);transition:transform .3s,border-color .3s}.product-card:hover{transform:translateY(-4px);border-color:var(--product-accent)}.product-art{display:grid;place-items:center;background:color-mix(in srgb,var(--product-accent) 16%,transparent);color:var(--product-accent)}.product-art svg{width:30px;height:30px}.product-copy{display:flex;flex-direction:column;padding:20px}.product-line{display:flex;justify-content:space-between;gap:14px}.product-line h3{font:600 1.05rem var(--d);letter-spacing:-.03em}.product-line strong{font-size:.9rem;white-space:nowrap}.product-copy p{font-size:.82rem;line-height:1.5;opacity:.64;margin:8px 0 16px}.product-add{display:flex;justify-content:space-between;align-items:center;margin-top:auto;font-size:.78rem;font-weight:700;color:var(--product-accent)}.product-add span{display:grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--product-accent);color:var(--demo-bg);font-size:1.1rem}.experience-callout{position:relative;display:flex;align-items:center;gap:24px;flex-wrap:wrap;margin-top:26px;padding:28px;background:var(--demo-card);border:1px solid var(--demo-line)}.experience-callout h3{font:600 1.5rem var(--d);letter-spacing:-.05em}.experience-callout p{font-size:.84rem;opacity:.64;margin-top:6px}.inline-form{display:flex;gap:8px;flex:1;min-width:280px}.inline-form input,.inline-form select,.catalog-toolbar input,.catalog-toolbar select,.schedule-card select,.legal-form input,.legal-form textarea{width:100%;border:1px solid var(--demo-line);background:transparent;color:var(--demo-fg);padding:12px 13px;font:inherit;font-size:.82rem}.inline-form option,.catalog-toolbar option,.schedule-card option{background:var(--demo-bg);color:var(--demo-fg)}.studio-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:22px}.plan-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.plan-card{padding:22px;text-align:left;background:var(--demo-card);border:1px solid var(--demo-line);color:var(--demo-fg);transition:.25s}.plan-card:hover,.plan-card.active{border-color:var(--demo-accent);transform:translateY(-3px)}.plan-card>div{display:flex;justify-content:space-between;gap:8px}.plan-card>div span{font-weight:700}.plan-card strong{font-size:.94rem}.plan-card small,.schedule-summary small{font-size:.65rem;opacity:.6;font-weight:400}.plan-card p{font-size:.8rem;opacity:.65;margin:12px 0 18px}.plan-card ul{list-style:none;padding:0;margin:0;display:grid;gap:7px;font-size:.74rem;opacity:.72}.plan-card li::first-letter{color:var(--demo-accent)}.schedule-card{padding:26px;background:var(--demo-accent);color:var(--demo-bg)}.schedule-card .demo-kicker{color:inherit;opacity:.58}.schedule-card h3{font:600 1.7rem var(--d);letter-spacing:-.06em}.schedule-card p{font-size:.82rem;margin:10px 0 22px;opacity:.7}.schedule-card label{display:grid;gap:6px;font-size:.72rem;font-weight:700;margin-top:12px}.schedule-card select{border-color:rgba(0,0,0,.2);color:var(--demo-bg)}.schedule-summary{display:flex;justify-content:space-between;align-items:end;border-top:1px solid rgba(0,0,0,.2);margin-top:22px;padding-top:18px}.schedule-summary strong{font-size:1.2rem}.schedule-card .btn{margin-top:20px;background:var(--demo-bg);color:var(--demo-fg)}.areas-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:10px}.area-card{text-align:left;padding:22px;background:var(--demo-card);color:var(--demo-fg);border:1px solid var(--demo-line);min-height:255px;transition:.25s}.area-card:hover,.area-card.active{border-color:var(--demo-accent);transform:translateY(-3px)}.area-check{float:right;display:grid;place-items:center;width:25px;height:25px;border:1px solid var(--demo-line);border-radius:50%;color:var(--demo-accent)}.area-card h3{font:600 1.35rem var(--d);margin:30px 0 9px}.area-card p{font-size:.8rem;opacity:.65;line-height:1.5}.area-card ul{list-style:none;padding:16px 0 0;margin:15px 0 0;border-top:1px solid var(--demo-line);font-size:.73rem;opacity:.7;display:grid;gap:6px}.legal-form{display:grid;grid-template-columns:.85fr 1.15fr;gap:48px;margin-top:34px;padding:32px;background:var(--demo-card);border:1px solid var(--demo-line)}.legal-form h3{font:600 2rem var(--d);letter-spacing:-.06em}.legal-form p{font-size:.85rem;opacity:.66;line-height:1.6;margin-top:12px}.legal-form form{display:grid;gap:10px}.legal-form textarea{resize:vertical}.selected-areas{display:flex;flex-wrap:wrap;gap:6px;margin-top:20px}.selected-areas span{padding:6px 9px;background:var(--demo-accent);color:var(--demo-bg);font-size:.7rem}.form-success{display:flex;align-items:center;gap:14px;color:var(--demo-accent);font-weight:700}.form-success span{color:var(--demo-fg);font-size:.9rem}.catalog-toolbar{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:10px;margin-bottom:12px}.catalog-toolbar label{display:grid;gap:7px;font-size:.7rem;text-transform:uppercase;letter-spacing:.08em;opacity:.75}.catalog-toolbar input,.catalog-toolbar select{margin-top:auto}.result-count{font-size:.75rem;opacity:.55;margin-bottom:14px}.flora-grid .product-art{background:color-mix(in srgb,var(--product-accent) 13%,transparent)}.dquote{padding-bottom:clamp(80px,10vw,130px)}.dquote blockquote{font:600 clamp(1.7rem,4vw,3.4rem)/1.05 var(--d);letter-spacing:-.07em;max-width:22ch}.dquote cite{display:block;margin-top:18px;font-style:normal;font-size:.8rem;opacity:.6}.dinfo{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;padding-bottom:100px}.dcard{padding:24px;background:var(--demo-card);border:1px solid var(--demo-line)}.dcard h3{margin-bottom:14px}.dcard p{font-size:.84rem;line-height:1.6;opacity:.76}.dcard ul{list-style:none;padding:0;margin:0;display:grid;gap:9px;font-size:.82rem}.dcard li{display:flex;justify-content:space-between;gap:10px;opacity:.75}.dmut{margin-top:10px;opacity:.5!important;font-size:.77rem!important}.dfaq{padding-bottom:90px}.dfaq h2{font:600 2.2rem var(--d);letter-spacing:-.07em;margin-bottom:18px}.dfaq details{border-top:1px solid var(--demo-line);padding:18px 0}.dfaq details:last-child{border-bottom:1px solid var(--demo-line)}.dfaq summary{display:flex;justify-content:space-between;cursor:pointer;font-weight:700}.dfaq summary::after{content:'+';color:var(--demo-accent);font-size:1.4rem}.dfaq details[open] summary::after{content:'×'}.dfaq p{max-width:62ch;margin-top:10px;font-size:.85rem;opacity:.68;line-height:1.6}.dfoot{padding:clamp(72px,10vw,130px) 20px;text-align:center;background:var(--demo-card)}.dfoot h2{font:600 clamp(2.2rem,5vw,4.8rem)/.93 var(--d);letter-spacing:-.08em;max-width:13ch;margin:0 auto 28px}.dfoot small{display:block;margin-top:18px;opacity:.48;font-size:.72rem}.cart-panel{position:fixed;right:0;top:0;bottom:0;z-index:120;width:min(440px,100%);display:flex;flex-direction:column;background:var(--demo-bg);border-left:1px solid var(--demo-line);box-shadow:-24px 0 70px rgba(0,0,0,.25);padding:28px}.cart-panel-head{display:flex;justify-content:space-between;align-items:start;border-bottom:1px solid var(--demo-line);padding-bottom:22px}.cart-panel-head h2{font:600 2rem var(--d);letter-spacing:-.07em}.cart-panel-head button{font-size:2rem;line-height:1;opacity:.7}.cart-lines{overflow:auto;padding-block:12px}.cart-line{display:flex;justify-content:space-between;gap:12px;padding:18px 0;border-bottom:1px solid var(--demo-line)}.cart-line strong,.cart-line span{display:block}.cart-line strong{font-size:.88rem}.cart-line span{font-size:.72rem;opacity:.55;margin-top:5px}.cart-controls{display:flex;align-items:center;gap:7px}.cart-controls button{width:25px;height:25px;border:1px solid var(--demo-line);font-size:1rem}.cart-controls b{min-width:18px;text-align:center;font-size:.8rem}.cart-empty{display:grid;place-items:center;text-align:center;gap:8px;flex:1;opacity:.65}.cart-empty span{font-size:3rem;color:var(--demo-accent)}.cart-empty small{font-size:.75rem;opacity:.7}.cart-panel-foot{border-top:1px solid var(--demo-line);padding-top:20px;margin-top:auto}.cart-panel-foot>div{display:flex;justify-content:space-between;margin-bottom:16px}.cart-panel-foot span{font-size:.78rem;opacity:.6}.cart-panel-foot strong{font-size:1.2rem}.cart-panel .btn:disabled{opacity:.45;cursor:not-allowed}.demo-toast{position:fixed;z-index:130;bottom:28px;left:50%;transform:translateX(-50%);padding:12px 18px;border-radius:999px;background:var(--demo-accent);color:var(--demo-bg);font-size:.8rem;font-weight:700;box-shadow:0 12px 30px rgba(0,0,0,.25)}
@media(max-width:820px){.dabout,.studio-layout,.legal-form{grid-template-columns:1fr}.areas-grid{grid-template-columns:1fr 1fr}.experience-head{display:block}.experience-head>p{margin-top:14px}.product-grid{grid-template-columns:1fr}.dinfo{grid-template-columns:1fr 1fr}.schedule-card{order:-1}.demo-hero .dtxt{inset: auto 6% 8%}.demo-hero h1{font-size:clamp(3rem,12vw,5rem)}}
@media(max-width:560px){.demo-shell{width:min(100% - 28px,1080px)}.dbar{padding-inline:14px}.dbar span{display:none}.dnav{padding-block:20px}.dnav>span{display:none}.demo-cart-button{margin-left:auto}.demo-hero{min-height:570px;width:calc(100% - 14px)}.demo-hero .dtxt{inset:auto 20px 26px}.demo-hero-points{display:grid;gap:6px}.dstats{grid-template-columns:1fr 1fr}.dstat{padding:0 12px}.dstat:last-child{grid-column:1/-1;border-top:1px solid var(--demo-line);padding-top:16px;margin-top:16px}.product-card{grid-template-columns:68px 1fr}.product-art{min-height:100%}.plan-grid,.areas-grid,.dinfo,.catalog-toolbar{grid-template-columns:1fr}.experience-callout,.inline-form{display:grid;grid-template-columns:1fr}.legal-form{padding:22px;gap:26px}.cart-panel{padding:22px}.dfoot{padding-inline:20px}}

/* ============================================================
   HOME V2 · referência editorial de portfólio / Hirael-inspired
   ============================================================ */
.nav{background:rgba(17,21,26,.92);color:#fff8ee;border-color:rgba(255,255,255,.14)}.nav .brand{color:#fff8ee}.nav .brand i{background:#fff8ee;color:#1e2347}.nav-links{color:rgba(242,238,230,.62)}.nav-links a:hover,.nav-links a.on{color:#fff8ee}.nav-mobile{background:#262c58;color:#fff8ee;border-color:rgba(255,255,255,.16)}.nav-burger{border-color:rgba(255,255,255,.2)}.nav-burger i{background:#fff8ee}
.hero-v2{position:relative;width:100%;max-width:none;margin:0;padding:0 max(24px,calc((100% - 1260px)/2));background:#1e2347;color:#fff8ee;overflow:hidden}.hero-v2::before{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(42% 58% at 88% 30%,rgba(216,243,106,.14),transparent 70%),radial-gradient(35% 50% at 10% 100%,rgba(166,181,255,.13),transparent 70%)}.hero-v2-topline{position:relative;z-index:1;display:flex;justify-content:space-between;gap:20px;padding:20px 0;border-bottom:1px solid rgba(255,255,255,.14);color:rgba(242,238,230,.58);font-size:.63rem;letter-spacing:.12em;text-transform:uppercase}.hero-v2-topline span{display:flex;align-items:center;gap:10px}.hero-v2-topline .dot{width:6px;height:6px;box-shadow:0 0 0 4px rgba(231,111,81,.12)}.hero-v2-main{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,.9fr) minmax(460px,1.1fr);gap:clamp(40px,7vw,110px);align-items:center;min-height:calc(100vh - 122px);padding:clamp(52px,8vw,112px) 0 clamp(58px,7vw,96px)}.hero-v2-copy{padding:0}.hero-v2 .hero-meta{color:rgba(242,238,230,.58);margin-bottom:30px}.hero-v2 .hero-index{color:#c8f542}.hero-v2 .hero-rule{background:#ff6b4a}.hero-v2 h1{font:600 clamp(3.5rem,7.1vw,7.2rem)/.86 var(--d);letter-spacing:-.09em;max-width:9ch;color:#fff8ee}.hero-v2 h1 .serif{color:#ff6b4a;font-size:1.08em}.hero-v2 .lead{color:rgba(242,238,230,.63);max-width:43ch;margin:28px 0 32px}.hero-v2 .btn.lime{background:var(--lime);color:var(--ink)}.hero-v2 .text-link{color:#fff8ee;border-color:rgba(242,238,230,.65)}.hero-v2-proof{display:flex;align-items:center;gap:14px;margin-top:54px;padding-top:16px;border-top:1px solid rgba(255,255,255,.16);max-width:270px;color:rgba(242,238,230,.54);font-size:.68rem;line-height:1.45;text-transform:uppercase;letter-spacing:.1em}.hero-v2-proof strong{font:600 2.1rem var(--d);color:#c8f542;letter-spacing:-.08em}.signal-board{position:relative;padding:15px;background:#2a3160;border:1px solid rgba(255,255,255,.14);box-shadow:24px 30px 70px rgba(0,0,0,.28);transform:rotate(1.2deg)}.signal-board-label,.signal-board-foot{display:flex;justify-content:space-between;align-items:center;color:rgba(242,238,230,.52);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;padding:5px 2px 14px}.signal-board-label b{color:#c8f542;font-weight:700}.signal-board-foot{padding:14px 2px 2px}.signal-grid{display:grid;grid-template-columns:1.22fr .78fr;grid-template-rows:150px 150px;gap:9px}.signal-card{position:relative;display:block;min-height:0;overflow:hidden;background:#3a444b;color:white}.signal-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.72);transition:transform .6s var(--ease),filter .6s}.signal-card:hover img{transform:scale(1.08);filter:saturate(1.05)}.signal-large{grid-row:span 2}.signal-tall{grid-row:span 2}.signal-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(17,21,26,.05),rgba(17,21,26,.82))}.signal-index{position:absolute;top:12px;left:13px;font:700 .64rem var(--mono);color:#c8f542}.signal-meta{position:absolute;left:14px;bottom:13px;display:grid;gap:3px}.signal-meta b{font:600 clamp(.95rem,1.6vw,1.4rem) var(--d);letter-spacing:-.05em}.signal-meta small{font-size:.58rem;letter-spacing:.08em;text-transform:uppercase;color:rgba(255,255,255,.68)}.signal-arrow{position:absolute;right:12px;top:10px;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#fff8ee;color:#1e2347;font-size:1rem;transition:.3s}.signal-card:hover .signal-arrow{background:#ff6b4a;color:white;transform:rotate(45deg)}.hero-v2-marquee{position:relative;z-index:1;display:flex;gap:26px;align-items:center;white-space:nowrap;overflow:hidden;margin-inline:-24px;padding:16px 0;border-top:1px solid rgba(255,255,255,.14);color:rgba(242,238,230,.42);font-size:.62rem;letter-spacing:.2em}.hero-v2-marquee i{color:#ff6b4a;font-style:normal;font-size:1rem}
@media(max-width:980px){.hero-v2-main{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-v2 h1{max-width:10ch}.signal-board{width:min(100%,720px);justify-self:center}.signal-grid{grid-template-rows:170px 170px}}
@media(max-width:640px){.hero-v2{padding-inline:18px}.hero-v2-topline{font-size:.52rem}.hero-v2-topline span:nth-child(2){display:none}.hero-v2-main{padding-top:48px;gap:48px}.hero-v2 h1{font-size:clamp(3.35rem,15vw,5.2rem)}.hero-v2 .lead{font-size:.96rem}.hero-v2-proof{margin-top:38px}.signal-board{padding:9px;transform:none}.signal-grid{grid-template-rows:116px 116px;gap:6px}.signal-meta b{font-size:.9rem}.signal-meta small{font-size:.48rem}.signal-arrow{width:25px;height:25px;font-size:.82rem}.signal-board-label,.signal-board-foot{font-size:.5rem;padding-bottom:9px}.signal-board-foot{padding-top:9px}.hero-v2-marquee{margin-inline:-18px}}

/* ajuste fino da home em notebooks e tablets largos */
.hero-v2-main{grid-template-columns:minmax(0,1fr) minmax(0,1.08fr);gap:clamp(34px,5vw,82px)}.hero-v2 h1{font-size:clamp(3.2rem,6.2vw,6.6rem);max-width:13ch}.signal-board{width:100%;max-width:680px;justify-self:end}
@media(max-width:1080px) and (min-width:641px){.hero-v2-main{grid-template-columns:minmax(0,.92fr) minmax(400px,1.08fr);gap:32px}.hero-v2 h1{font-size:clamp(3rem,5.4vw,5.4rem);max-width:12ch}.signal-grid{grid-template-rows:135px 135px}}

@media(max-width:980px){.hero-v2-main{grid-template-columns:1fr;min-height:auto;padding-top:70px}.hero-v2 h1{max-width:13ch}.signal-board{width:min(100%,720px);justify-self:center}}
@media(max-width:640px){.hero-v2-main{grid-template-columns:1fr;padding-top:48px}.hero-v2 h1{max-width:12ch;font-size:clamp(3.35rem,15vw,5.2rem)}}

/* neutraliza o grid legado aplicado à classe .hero */
.hero-v2{display:block;min-height:0;align-items:initial}

/* HOME V3 · contraste, legibilidade e projetos totalmente visíveis */
.hero-v2{background:linear-gradient(120deg,#0d0b09 0%,#15100d 52%,#21150f 100%)}.hero-v2::after{content:'';position:absolute;inset:0;pointer-events:none;opacity:.14;background-image:linear-gradient(rgba(255,224,190,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(255,224,190,.12) 1px,transparent 1px);background-size:72px 72px;mask-image:linear-gradient(90deg,black,transparent 80%)}.hero-v2-topline{color:rgba(242,238,230,.72)}.hero-v2 h1{color:#fff;text-shadow:0 2px 24px rgba(0,0,0,.22)}.hero-v2 .lead{color:rgba(242,238,230,.78)}.hero-v2-proof{color:rgba(242,238,230,.7)}.signal-board{background:#25170f;border-color:rgba(255,224,190,.24);box-shadow:24px 30px 80px rgba(0,0,0,.38)}.signal-grid{grid-template-columns:1.08fr .92fr;grid-template-rows:170px 170px}.signal-card,.signal-large,.signal-tall{grid-row:span 1!important}.signal-card{border:1px solid rgba(255,224,190,.18)}.signal-card:nth-child(3){background:#3c2b1e}.signal-card:nth-child(4){background:#34231b}.signal-board-label,.signal-board-foot{color:rgba(242,238,230,.72)}.signal-meta b{color:#fff}.signal-meta small{color:rgba(255,255,255,.82)}.signal-board-foot{border-top:1px solid rgba(255,224,190,.14);margin-top:10px}.hero-v2-marquee{color:rgba(242,238,230,.62)}
@media(max-width:980px){.signal-grid{grid-template-rows:160px 160px}}
@media(max-width:640px){.signal-grid{grid-template-rows:124px 124px}.signal-board-foot{margin-top:6px}}

/* ============================================================
   THEME SYSTEM · Sistema / Claro / Escuro
   ============================================================ */
:root,[data-theme="light"]{--theme-bg:#fff8ee;--theme-fg:#1e2347;--theme-muted:#5b5f86;--theme-panel:#f6ead6;--theme-line:rgba(17,21,26,.14);--home-bg:#fff8ee;--home-fg:#1e2347;--home-panel:#f6ead6;--home-muted:#5b5f86;--home-line:rgba(17,21,26,.16);--fg:var(--theme-fg);--ink:var(--theme-bg);--line:var(--theme-line)}
[data-theme="dark"]{--theme-bg:#1e2347;--theme-fg:#fff8ee;--theme-muted:#c3c8ea;--theme-panel:#2a3160;--theme-line:rgba(255,255,255,.16);--home-bg:#1e2347;--home-fg:#fff8ee;--home-panel:#2d3567;--home-muted:#cdd2f0;--home-line:rgba(255,255,255,.16);--fg:var(--theme-fg);--ink:var(--theme-bg);--line:var(--theme-line)}
@media(prefers-color-scheme:dark){[data-theme="system"]{--theme-bg:#1e2347;--theme-fg:#fff8ee;--theme-muted:#c3c8ea;--theme-panel:#2a3160;--theme-line:rgba(255,255,255,.16);--home-bg:#1e2347;--home-fg:#fff8ee;--home-panel:#2d3567;--home-muted:#cdd2f0;--home-line:rgba(255,255,255,.16);--fg:var(--theme-fg);--ink:var(--theme-bg);--line:var(--theme-line)}}
body{background:var(--theme-bg);color:var(--theme-fg);transition:background-color .35s ease,color .35s ease}.nav{background:color-mix(in srgb,var(--theme-bg) 90%,transparent);color:var(--theme-fg);border-color:var(--theme-line)}.nav .brand,.nav-links a{color:var(--theme-fg)}.nav .brand i{background:var(--theme-fg);color:var(--theme-bg)}.nav-links{color:var(--theme-muted)}.nav-links a:hover,.nav-links a.on{color:var(--theme-fg)}.nav-burger{border-color:var(--theme-line)}.nav-burger i{background:var(--theme-fg)}.nav-mobile{background:var(--theme-bg);border-color:var(--theme-line);color:var(--theme-fg)}
 .hero-v2{background:var(--home-bg);color:var(--home-fg);transition:background-color .35s ease,color .35s ease}.hero-v2::before{background:radial-gradient(42% 58% at 88% 30%,color-mix(in srgb,#f6b36a 13%,transparent),transparent 70%),radial-gradient(35% 50% at 10% 100%,color-mix(in srgb,#e08c54 11%,transparent),transparent 70%)}.hero-v2::after{background-image:linear-gradient(color-mix(in srgb,var(--home-fg) 12%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--home-fg) 12%,transparent) 1px,transparent 1px)}.hero-v2-topline{border-color:var(--home-line);color:var(--home-muted)}.hero-v2 h1{color:var(--home-fg)}.hero-v2 .hero-meta,.hero-v2 .lead{color:var(--home-muted)}.hero-v2 .text-link{color:var(--home-fg);border-color:var(--home-line)}.hero-v2-proof{color:var(--home-muted);border-color:var(--home-line)}.signal-board{background:var(--home-panel);border-color:var(--home-line)}.signal-board-label,.signal-board-foot{color:var(--home-muted)}.hero-v2-marquee{border-color:var(--home-line);color:var(--home-muted)}
[data-theme="light"] .hero-v2 .btn.lime{background:#1e2347;color:#fff8ee}[data-theme="light"] .signal-board{box-shadow:20px 24px 60px rgba(17,21,26,.14)}[data-theme="light"] .signal-card{border-color:rgba(17,21,26,.18)}[data-theme="light"] .signal-shade{background:linear-gradient(180deg,rgba(17,21,26,.04),rgba(17,21,26,.75))}
[data-theme="dark"] .hero-v2 .btn.lime,[data-theme="system"] .hero-v2 .btn.lime{background:#f6b36a;color:#24150d}
.theme-control{display:flex;align-items:center;gap:2px;padding:3px;border:1px solid var(--theme-line);background:color-mix(in srgb,var(--theme-fg) 5%,transparent);border-radius:999px}.theme-control button{display:inline-flex;align-items:center;gap:4px;padding:6px 8px;border-radius:999px;color:var(--theme-muted);font-size:.58rem;line-height:1;white-space:nowrap}.theme-control button span{font-size:.78rem}.theme-control button:hover{color:var(--theme-fg)}.theme-control button.active{background:var(--theme-fg);color:var(--theme-bg)}.nav .theme-control{margin-left:2px}.nav-mobile .theme-control{justify-content:center;margin:8px 0;padding:5px}.nav-mobile .theme-control button{flex:1;justify-content:center;padding:10px 8px;font-size:.7rem}
@media(max-width:1080px){.nav .theme-control{display:none}}

@media(max-width:1080px) and (min-width:921px){.nav .theme-control{display:flex}.nav .theme-control button{font-size:0;padding:6px 8px}.nav .theme-control button span{font-size:.86rem}}

/* Imagens complementares · usadas apenas onde ajudam a narrativa */
.about-visual{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 220px;gap:18px;align-items:end;margin:32px 0 38px;overflow:hidden;border:1px solid var(--theme-line);background:var(--theme-panel)}.about-visual img{width:100%;height:250px;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform .7s var(--ease),filter .7s}.about-visual:hover img{transform:scale(1.025);filter:saturate(1) contrast(1.05)}.about-visual figcaption{display:grid;gap:10px;padding:24px 22px;color:var(--theme-muted);font-size:.7rem;line-height:1.4;text-transform:uppercase;letter-spacing:.1em}.about-visual figcaption b{color:var(--theme-fg);font:500 1.18rem/1.05 var(--d);letter-spacing:-.05em;text-transform:none}.services-visual{position:relative;display:flex;align-items:flex-end;min-height:230px;margin:0 0 28px;overflow:hidden;border:1px solid var(--theme-line);background:var(--theme-panel)}.services-visual img{width:100%;height:230px;object-fit:cover;filter:saturate(.76) brightness(.82);transition:transform .8s var(--ease),filter .8s}.services-visual:hover img{transform:scale(1.025);filter:saturate(.92) brightness(.9)}.services-visual span{position:absolute;left:24px;bottom:20px;max-width:360px;color:white;font:500 clamp(1.2rem,2.4vw,2rem)/.98 var(--d);letter-spacing:-.06em;text-shadow:0 2px 18px rgba(0,0,0,.32)}
@media(max-width:640px){.about-visual{grid-template-columns:1fr;gap:0}.about-visual img{height:210px}.about-visual figcaption{padding:18px}.services-visual,.services-visual img{min-height:190px;height:190px}.services-visual span{left:18px;bottom:16px;max-width:280px;font-size:1.35rem}}

/* Mais contexto visual nos exemplos e no processo */
.service-thumb{display:block;width:100%;height:118px;object-fit:cover;margin:0 0 22px;border:1px solid color-mix(in srgb,var(--theme-fg) 12%,transparent);filter:saturate(.78);transition:transform .55s var(--ease),filter .55s}.sv:hover .service-thumb{transform:scale(1.025);filter:saturate(1)}.process-visual{display:grid;grid-template-columns:1.15fr 1fr 1.15fr;gap:12px;margin:0 0 42px}.process-visual figure{position:relative;min-height:170px;overflow:hidden;border:1px solid var(--theme-line);background:var(--theme-panel)}.process-visual img{width:100%;height:170px;object-fit:cover;filter:saturate(.72) contrast(1.04);transition:transform .7s var(--ease),filter .7s}.process-visual figure:hover img{transform:scale(1.04);filter:saturate(1)}.process-visual figcaption{position:absolute;left:14px;bottom:12px;color:white;font-size:.62rem;text-transform:uppercase;letter-spacing:.14em;text-shadow:0 2px 12px rgba(0,0,0,.5)}.motion-visual{display:block;width:100%;height:180px;object-fit:cover;margin:0 0 26px;filter:saturate(.82);border:1px solid rgba(255,255,255,.13)}
@media(max-width:640px){.service-thumb{height:150px}.process-visual{grid-template-columns:1fr;gap:8px;margin-bottom:30px}.process-visual figure,.process-visual img{height:130px;min-height:130px}.motion-visual{height:150px}}

/* Legibilidade das experiências · contraste consistente em todas as marcas */
.prod{grid-template-columns:128px minmax(0,1fr);min-height:205px;color:var(--demo-fg);overflow:hidden}.prod-art{min-height:205px;background-size:cover!important;background-position:center!important;background-repeat:no-repeat;position:relative}.prod-art:not(:only-child){border-right:1px solid var(--demo-line)}.prod-body{padding:22px 24px}.prod-name{font-size:1rem;color:var(--demo-fg);line-height:1.2}.prod-desc{font-size:.82rem;line-height:1.45;color:var(--demo-fg);opacity:.78;max-width:42ch}.prod-price{color:var(--demo-fg);font-size:.86rem;font-weight:700}.prod-meta{color:var(--demo-fg);opacity:.64;font-size:.72rem}.prod-add{color:var(--demo-accent);font-weight:700;letter-spacing:.01em}.prod-info,.prod-fav button{color:var(--demo-fg)}.prod-detail{color:var(--demo-fg);opacity:.86;line-height:1.5}.demo-shell p,.demo-shell li{line-height:1.55}.demo-shell h1,.demo-shell h2,.demo-shell h3,.demo-shell strong{color:var(--demo-fg)}.dabout p,.dcard p,.dcard li,.dfaq p,.area-card p,.plan-card p{opacity:.86}.dabout h2,.dinfo h3,.dfaq summary{color:var(--demo-fg)}
@media(max-width:820px){.prod{grid-template-columns:112px minmax(0,1fr)}}
@media(max-width:560px){.prod{grid-template-columns:92px minmax(0,1fr);min-height:178px}.prod-art{min-height:178px}.prod-body{padding:17px 16px}.prod-name{font-size:.92rem}.prod-desc{font-size:.76rem}.prod-price{font-size:.8rem}}

/* Cards da experiência integrada: foto visível sem sacrificar a leitura */
.product-card{grid-template-columns:128px minmax(0,1fr);min-height:205px;color:var(--demo-fg);overflow:hidden}.product-art{min-height:205px;background-size:cover!important;background-position:center!important;background-repeat:no-repeat;position:relative}.product-copy{padding:22px 24px;color:var(--demo-fg)}.product-copy h3,.product-copy strong{color:var(--demo-fg)}.product-copy p{color:var(--demo-fg);opacity:.82;line-height:1.5}.product-add{color:var(--demo-accent);font-weight:700}.product-line{align-items:start}.experience-head h2{color:var(--demo-fg)}.experience-head p{color:var(--demo-fg);opacity:.82}.experience-tabs button{color:var(--demo-fg)}
@media(max-width:560px){.product-card{grid-template-columns:92px minmax(0,1fr);min-height:178px}.product-art{min-height:178px}.product-copy{padding:17px 16px}.product-copy p{font-size:.78rem}}

/* ============================================================
   CORREÇÃO DO HEADER · compacto, opaco e acima do conteúdo
   Causa identificada: height:72px e fundo rgba/.6 + blur forte
   deixavam o conteúdo visível através do header. A regra global
   main,.nav,.foot{z-index:1} também precisava de uma camada superior
   explícita para preservar o clique no CTA durante o scroll.
   ============================================================ */
.nav{
  position:sticky;top:0;z-index:90;isolation:isolate;
  pointer-events:auto;overflow:visible;
  min-height:64px;
  background-color:var(--theme-bg);
  border-bottom:1px solid var(--theme-line);
  -webkit-backdrop-filter:blur(8px) saturate(110%);
  backdrop-filter:blur(8px) saturate(110%);
}
.nav .wrap{position:relative;z-index:1;height:64px;gap:14px}
.nav .brand,.nav-links,.nav-links a,.nav-cta,.nav-burger,.nav .theme-control{position:relative;pointer-events:auto}
.nav-mobile{z-index:2;pointer-events:auto;max-height:calc(100vh - 64px);max-height:calc(100dvh - 64px);overflow-y:auto}
.bar{z-index:95;pointer-events:none}   /* barra de progresso não intercepta cliques */
.nav-cta::before,.nav-cta::after{pointer-events:none}   /* brilho decorativo do botão */

@media(max-width:640px){
  .nav{min-height:60px}
  .nav .wrap{height:60px}
  .nav-mobile{max-height:calc(100vh - 60px);max-height:calc(100dvh - 60px)}
}

/* Ajustes de entrega: papel quente, composição editorial e formulário real */
:root{--paper:#f4f0e8;--paper-2:#ebe5d9;--ink:#20201d;--ink-2:#292824;--panel:#33322e;--panel-2:#3b3a35;--fg:#f4f0e8;--mut:#b8b3a8;--lime:#c8f542;--lime-2:#b9d84c;--violet:#9f9687;--line:rgba(244,240,232,.16);--line-2:rgba(244,240,232,.32)}
body{background:var(--paper);color:var(--ink)}
.bg{background:var(--paper);opacity:1}
.bar{background:var(--ink)}
.nav{background:rgba(244,240,232,.94);border-color:rgba(32,32,29,.14);backdrop-filter:none}
.nav .brand,.nav-links a{color:var(--ink)}
.nav-links a:hover,.nav-links a.on{background:rgba(32,32,29,.06);color:var(--ink)}
.brand i{background:var(--ink);color:var(--paper);box-shadow:none;border-radius:3px}
.hero{min-height:calc(100vh - 72px);padding-block:clamp(72px,10vw,150px)}
.hero-single{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:clamp(40px,8vw,120px);align-items:end}
.hero-v2-copy{max-width:760px}.hero-v2-copy h1{color:var(--ink)}.hero-v2-copy .serif{color:var(--ink);font-family:Georgia,'Times New Roman',serif;font-style:italic;font-weight:400}.hero-meta{color:#6f6a5f}.hero-rule{background:var(--ink)}.lead{color:#5d5a52}.text-link{color:var(--ink);font-weight:700}.hero-note{border-top:1px solid rgba(32,32,29,.35);padding-top:18px;max-width:320px;color:#5d5a52}.hero-note-number{display:block;font:700 .75rem var(--mono);letter-spacing:.14em;margin-bottom:30px;color:#777166}.hero-note strong{display:block;font:600 1.35rem/1.1 var(--d);color:var(--ink);margin-bottom:12px}.hero-note p{margin-bottom:24px}.hero-v2-proof{color:#5d5a52}.hero-v2-proof strong{color:var(--ink)}.hero-v2-marquee{border-color:rgba(32,32,29,.25);color:#716c61}.hero-v2-marquee i{color:var(--ink)}
.sec-sub,.about-copy p,.value p,.pillar span,.sv p,.sv li,.step p,.faq .answer{color:#5d5a52}.sec-head h2,.pbot h3,.sv h3,.step h3,.contact-title{color:var(--ink)}
.values,.value,.pillar,.sv,.faq details{border-color:rgba(32,32,29,.16)}.values{background:rgba(32,32,29,.16)}.value,.pillar,.sv{background:#ebe5d9}.value:hover{background:#e2dacb}.sv{border-radius:3px}.sv::before{display:none}.sv>i{border-radius:3px;background:transparent;border-color:rgba(32,32,29,.24);color:var(--ink)}
.motion{background:#ded6c8;border-color:rgba(32,32,29,.2);border-radius:3px}.motion-head small,.motion-parts i{color:#686054}.motion-parts li{background:rgba(244,240,232,.5);border-color:rgba(32,32,29,.16)}.motion-parts i{background:transparent;border-color:rgba(32,32,29,.2)}
.pgrid{gap:16px}.proj{border-radius:3px;border-color:rgba(32,32,29,.2)}.pin>span:first-child{border-radius:3px;background:rgba(32,32,29,.72);backdrop-filter:none}.arr{border-radius:3px;background:var(--lime)}
.btn{border-radius:3px}.btn.lime{background:var(--ink);color:var(--paper);box-shadow:none}.btn.ghost{background:transparent;color:var(--ink);border-color:rgba(32,32,29,.35);backdrop-filter:none}.btn.ghost:hover{background:rgba(32,32,29,.08)}
.contact{grid-template-columns:.9fr 1.1fr;background:#ded6c8!important;border-color:rgba(32,32,29,.2);box-shadow:none;border-radius:3px}.contact::after{display:none}.contact-intro p{color:#5d5a52;margin:12px 0 24px}.quote-form{position:relative;z-index:1;background:var(--paper);padding:22px;border:1px solid rgba(32,32,29,.18);color:var(--ink)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:18px}.quote-form label{display:grid;gap:6px;font-weight:700;font-size:.8rem;color:#45423c}.quote-form input,.quote-form select,.quote-form textarea{width:100%;border:1px solid rgba(32,32,29,.24);border-radius:2px;background:#fffdf8;color:var(--ink);padding:11px 12px;font:inherit}.quote-form textarea{resize:vertical}.form-full{grid-column:1/-1}.quote-form .btn{color:var(--paper)}.form-status{min-height:1.6em;margin-top:12px;font-size:.86rem;color:#5d5a52}.form-status.error{color:#9b3a2b}.form-status.success{color:#346b3d}.honeypot{position:absolute!important;left:-9999px!important}.contact-links{display:flex;flex-wrap:wrap;gap:20px;margin-top:18px;color:#5d5a52;font-size:.9rem}.contact-links a{display:inline-flex;align-items:center;gap:7px}.contact-links svg{width:15px}.foot{color:#5d5a52}.foot .brand{color:var(--ink)}
@media (max-width:760px){.hero-single{grid-template-columns:1fr;gap:52px}.hero-note{max-width:none}.hero{min-height:auto}.form-grid{grid-template-columns:1fr}.form-full{grid-column:auto}.contact{grid-template-columns:1fr}.contact-links{display:grid}.theme-control{display:none}}
@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.dot{animation:none}.btn:hover{transform:none}}


/* ============================================================
   THEME HOTFIX · contraste AA e alternância real claro/escuro
   ============================================================ */
:root,
[data-theme="light"]{
  --paper:#f8f4ec;
  --paper-2:#ede7dc;
  --ink:#1f2a2e;
  --fg:#1f2a2e;
  --ink-2:#2b3a40;
  --mut:#5d6b6b;
  --mut-2:#84908d;
  --lime:#a9bc76;
  --lime-2:#879c58;
  --violet:#9fb5c2;
  --coral:#c96b4b;
  --line:rgba(31,42,46,.18);
  --line-2:rgba(31,42,46,.34);
  --theme-bg:#f8f4ec;
  --theme-fg:#1f2a2e;
  --theme-muted:#5d6b6b;
  --theme-panel:#ede7dc;
  --theme-line:rgba(31,42,46,.18);
  --home-bg:#f8f4ec;
  --home-fg:#1f2a2e;
  --home-panel:#ede7dc;
  --home-muted:#5d6b6b;
  --home-line:rgba(31,42,46,.18)
}
[data-theme="dark"]{
  --paper:#080a0b;
  --paper-2:#121617;
  --ink:#f6f1e8;
  --fg:#f6f1e8;
  --ink-2:#1b2021;
  --mut:#b8c0bc;
  --mut-2:#818a86;
  --lime:#b7c987;
  --lime-2:#95ab68;
  --violet:#91a8b2;
  --coral:#df8064;
  --line:rgba(246,241,232,.2);
  --line-2:rgba(246,241,232,.38);
  --theme-bg:#080a0b;
  --theme-fg:#f6f1e8;
  --theme-muted:#b8c0bc;
  --theme-panel:#121617;
  --theme-line:rgba(246,241,232,.2);
  --home-bg:#080a0b;
  --home-fg:#f6f1e8;
  --home-panel:#171c1d;
  --home-muted:#b8c0bc;
  --home-line:rgba(246,241,232,.2)
}
@media (prefers-color-scheme:dark){
  [data-theme="system"]{
    --paper:#080a0b;--paper-2:#121617;--ink:#f6f1e8;--fg:#f6f1e8;--ink-2:#1b2021;--mut:#b8c0bc;--mut-2:#818a86;
    --lime:#b7c987;--lime-2:#95ab68;--violet:#91a8b2;--coral:#df8064;
    --line:rgba(246,241,232,.2);--line-2:rgba(246,241,232,.38);
    --theme-bg:#080a0b;--theme-fg:#f6f1e8;--theme-muted:#b8c0bc;--theme-panel:#121617;--theme-line:rgba(246,241,232,.2);
    --home-bg:#080a0b;--home-fg:#f6f1e8;--home-panel:#171c1d;--home-muted:#b8c0bc;--home-line:rgba(246,241,232,.2)
  }
}
html,body{background:var(--paper)!important;color:var(--ink)!important}
body::before{opacity:.12;background-image:radial-gradient(color-mix(in srgb,var(--ink) 28%,transparent) .55px,transparent .55px)}
.bg{background:radial-gradient(48% 35% at 87% -5%,color-mix(in srgb,var(--coral) 15%,transparent),transparent 70%),radial-gradient(55% 35% at 10% 23%,color-mix(in srgb,var(--lime) 16%,transparent),transparent 70%);opacity:.85}
.nav{background:color-mix(in srgb,var(--paper) 92%,transparent)!important;color:var(--ink)!important;border-color:var(--line)!important}
.nav .brand,.nav-links a{color:var(--ink)!important}.nav .brand i{background:var(--ink)!important;color:var(--paper)!important}.nav-links{color:var(--mut)!important}.nav-links a:hover,.nav-links a.on{color:var(--ink)!important}.nav-burger{border-color:var(--line)!important}.nav-burger i{background:var(--ink)!important}.nav-mobile{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}.nav-mobile a{color:var(--ink)!important}
.theme-control{border-color:var(--line)!important;background:color-mix(in srgb,var(--ink) 7%,transparent)!important}.theme-control button{color:var(--mut)!important}.theme-control button:hover{color:var(--ink)!important}.theme-control button.active{background:var(--ink)!important;color:var(--paper)!important}
.hero{background:transparent!important;color:var(--ink)!important}.hero-copy h1,.hero h1,.hero-note strong,.hero-note .signature-city,.hero-signature,.hero-index{color:var(--ink)!important}.hero-copy .serif{color:var(--coral)!important}.hero-meta,.lead,.hero-note,.hero-note p,.hero-signature,.hero-v2-proof{color:var(--mut)!important}.hero-rule{background:var(--coral)!important}.hero-note{border-color:var(--line)!important}.hero-note-number{color:var(--mut-2)!important}.hero-v2{background:var(--home-bg)!important;color:var(--home-fg)!important}.hero-v2 h1{color:var(--home-fg)!important}.hero-v2 .lead,.hero-v2 .hero-meta{color:var(--home-muted)!important}.hero-v2 .text-link{color:var(--home-fg)!important;border-color:var(--home-line)!important}
.sec h2,.sec-head h2,.contact-title,.sv h3,.value h3,.pillar h3,.step h3,.pbot h3{color:var(--ink)!important}.sec-sub,.about-copy p,.value p,.pillar span,.sv p,.sv li,.step p,.faq .answer,.contact-intro p,.contact-links,.foot,.foot-brand p,.foot ul a,.foot ul span{color:var(--mut)!important}.eyebrow,.section-count{color:var(--coral)!important}.values,.value,.pillar,.sv,.motion,.faq details,.contact,.foot{border-color:var(--line)!important}.values,.contact{background:var(--paper-2)!important}.value,.pillar,.sv{background:color-mix(in srgb,var(--paper-2) 84%,var(--paper))!important}.value:hover{background:color-mix(in srgb,var(--paper-2) 68%,var(--ink))!important}.sv>i{border-color:var(--line)!important;color:var(--ink)!important}.motion{background:var(--paper-2)!important}.motion-parts li{background:color-mix(in srgb,var(--paper) 55%,transparent)!important;border-color:var(--line)!important}.motion-head small,.motion-parts i{color:var(--mut)!important}.proj{border-color:var(--line)!important}.contact-links a{color:var(--mut)!important}.contact-links a:hover{color:var(--ink)!important}.foot h4{color:var(--mut-2)!important}.foot-end{border-color:var(--line)!important;color:var(--mut-2)!important}
.pbot h3{color:#fff!important}.pbot p{color:rgba(255,255,255,.9)!important}.project-type{color:var(--lime)!important}.project-open{color:#fff!important}
.quote-form{background:var(--paper)!important;color:var(--ink)!important;border-color:var(--line)!important}.quote-form label{color:var(--ink)!important}.quote-form input,.quote-form select,.quote-form textarea{background:color-mix(in srgb,var(--paper) 84%,white)!important;color:var(--ink)!important;border-color:var(--line-2)!important}.form-status{color:var(--mut)!important}.form-status.error{color:#b94332!important}.form-status.success{color:#28733d!important}
.totop{background:var(--ink)!important;color:var(--paper)!important;border-color:var(--line)!important}
@media(max-width:760px){.nav-mobile .theme-control{display:flex!important}.nav-mobile .theme-control button{color:var(--ink)!important}.nav-mobile .theme-control button.active{color:var(--paper)!important}}


/* ============================================================
   CONTRAST PATCH · nenhum texto essencial fica invisível
   ============================================================ */
/* Os dados das demos possuem paletas próprias; estes tokens garantem
   contraste mesmo quando a página principal está em Claro ou Escuro. */
.demo{background:var(--demo-bg)!important;color:var(--demo-fg)!important}
.demo h1,.demo h2,.demo h3,.demo strong,.demo b,.demo label,.demo summary,.demo button,.demo input,.demo select,.demo textarea{color:var(--demo-fg)}
.demo p,.demo li,.demo dd,.demo dt,.demo cite,.demo small,.demo span{color:var(--demo-fg)}
.demo .dbar{color:#fff;background:rgba(8,9,11,.94)}
.demo .dbar span{color:#e5ece9!important;opacity:1!important}
.demo .dnav{color:var(--demo-fg)}
.demo .dnav>span,.demo .demo-kicker{color:var(--demo-accent)!important;opacity:1!important}
.demo .dsub{color:#fff!important;opacity:.96!important}
.demo .demo-hero-points span{color:#fff!important;opacity:.94!important}
.demo .dstats,.demo .dfeat li,.demo .dgrid button,.demo .dcard,.demo .plan-card,.demo .area-card,.demo .legal-form,.demo .product-card,.demo .experience-callout,.demo .schedule-card{color:var(--demo-fg)}
.demo .dstat span,.demo .dabout p,.demo .dfeat span,.demo .dgrid span,.demo .dcard p,.demo .dcard li,.demo .plan-card p,.demo .plan-card li,.demo .area-card p,.demo .area-card ul,.demo .product-copy p,.demo .experience-callout p,.demo .schedule-card p,.demo .dfaq p{color:var(--demo-fg)!important;opacity:.9!important}
.demo .dmut,.demo .dquote cite,.demo .dfoot small,.demo .dhint,.demo .result-count{color:var(--demo-fg)!important;opacity:.78!important}
.demo input,.demo select,.demo textarea{background:color-mix(in srgb,var(--demo-bg) 78%,white)!important;border-color:var(--demo-line)!important;color:var(--demo-fg)!important;opacity:1!important}
.demo input::placeholder,.demo textarea::placeholder{color:var(--demo-fg)!important;opacity:.72!important}
.demo .experience-tabs button,.demo .catalog-toolbar label{color:var(--demo-fg)!important;opacity:1!important}
.demo .experience-tabs button.active,.demo .plan-card.active,.demo .area-card.active{color:var(--demo-fg)!important}
.demo .product-add,.demo .prod-add{color:var(--demo-accent)!important;opacity:1!important}
.demo .demo-primary,.demo .dcta{color:#101820!important;background:var(--demo-accent)!important}
.demo h1[style],.demo h2[style]{animation-fill-mode:forwards}
/* A resposta de FAQ fechada não ocupa espaço nem fica em estado fantasma. */
.faq details:not([open]) .answer{display:none}
.faq details[open] .answer{display:block;opacity:1}

/* ===== demos: sistema compartilhado ===== */
.dx{--dx-r:2px;--dx-err:#b3261e;--leaf:#4f8f5b;--leaf2:#2f6b3d;--pot:#c98a63;--pot2:#a96a46;--wood:#b48a5a;font-family:'DM Sans',system-ui,sans-serif;line-height:1.5;scroll-behavior:smooth;-webkit-font-smoothing:antialiased}
.dx *{box-sizing:border-box}.dx h1,.dx h2,.dx h3{font-family:var(--dx-font);font-weight:500;margin:0;line-height:1.02;letter-spacing:-.025em}.dx p,.dx dl,.dx dd,.dx figure{margin:0}.dx ul,.dx ol{margin:0;padding:0;list-style:none}.dx img{display:block;max-width:100%}
.dx button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.dx a{color:inherit;text-decoration:none}.dx :focus-visible{outline:2px solid var(--demo-accent);outline-offset:3px}
.dx.dx-cafe,.dx.dx-studio{--dx-err:#ff9b8a}.dx em{font-family:'Instrument Serif',Georgia,serif;font-style:italic;font-weight:400}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.dx-wrap{width:min(1180px,calc(100% - 40px));margin-inline:auto}.dx main>section{padding-block:clamp(56px,9vw,120px)}
.dx-k{display:block;font-size:.72rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--demo-accent);margin-bottom:14px}
.dx.dx-lima .dx-k,.dx.dx-flora .dx-k{color:color-mix(in srgb,var(--demo-fg) 70%,var(--demo-bg))}
.dx h2{font-size:clamp(2.1rem,4.6vw,3.8rem);max-width:18ch}.dx h2+p{margin-top:18px;max-width:52ch;color:color-mix(in srgb,var(--demo-fg) 76%,transparent)}
.dx-bar{position:sticky;top:0;z-index:20;height:46px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 max(20px,calc(50% - 590px));background:color-mix(in srgb,var(--demo-bg) 90%,transparent);backdrop-filter:blur(14px);border-bottom:1px solid var(--demo-line);font-size:.72rem;letter-spacing:.08em;text-transform:uppercase}
.dx-bar>span{opacity:.6}.dx-bar button{font-weight:700;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem;transition:opacity .2s}.dx-bar button:hover{opacity:.65}
.dx .dx-cartbtn{display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid var(--demo-accent);border-radius:var(--dx-r);color:var(--demo-accent);letter-spacing:.04em}.dx.dx-lima .dx-cartbtn,.dx.dx-flora .dx-cartbtn{color:var(--demo-fg);border-color:var(--demo-fg)}
.dx-nav{display:flex;justify-content:space-between;align-items:center;padding-block:26px;gap:16px}.dx-brand{font:600 1.5rem var(--dx-font);letter-spacing:-.03em}.dx-nav div{display:flex;gap:26px;font-size:.88rem}.dx-nav a{opacity:.75;transition:opacity .2s}.dx-nav a:hover{opacity:1}
.dx-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:.95em 1.6em;background:var(--demo-accent);color:var(--dx-on);border:1px solid var(--demo-accent);border-radius:var(--dx-r);font-weight:700;font-size:.95rem;transition:transform .2s,box-shadow .2s,opacity .2s}.dx-btn:hover{transform:translateY(-2px)}.dx-btn:active{transform:none}.dx-btn.ghost{background:transparent;color:var(--demo-fg);border-color:var(--demo-line)}.dx-btn.ghost:hover{border-color:var(--demo-fg)}.dx-btn:disabled{opacity:.35;cursor:not-allowed;transform:none}
.dx-chips{display:flex;flex-wrap:wrap;gap:8px}.dx-chip{display:inline-flex;align-items:center;gap:8px;padding:.6em 1.05em;border:1px solid var(--demo-line);border-radius:var(--dx-r);font-size:.88rem;font-weight:500;transition:background .2s,color .2s,border-color .2s,transform .15s}.dx-chip:hover{border-color:var(--demo-fg)}.dx-chip:active{transform:scale(.97)}.dx-chip[aria-pressed=true]{background:var(--demo-accent);border-color:var(--demo-accent);color:var(--dx-on)}
.dx-step{display:inline-flex;align-items:center;border:1px solid var(--demo-line);border-radius:var(--dx-r)}.dx-step button{width:34px;height:34px;font-size:1.1rem;transition:background .15s}.dx-step button:hover{background:color-mix(in srgb,var(--demo-accent) 25%,transparent)}.dx-step output{min-width:28px;text-align:center;font-weight:700;font-variant-numeric:tabular-nums}
.dx-add{padding:.55em 1.1em;border:1px solid var(--demo-fg);border-radius:var(--dx-r);font-size:.85rem;font-weight:600;white-space:nowrap;transition:background .2s,color .2s}.dx-add:hover{background:var(--demo-fg);color:var(--demo-bg)}
.dx input,.dx textarea,.dx select{font:inherit;color:inherit;background:transparent;border:1px solid var(--demo-line);border-radius:var(--dx-r);padding:.8em 1em;width:100%;transition:border-color .2s}.dx select option{color:#111}.dx input:focus,.dx textarea:focus,.dx select:focus{border-color:var(--demo-accent);outline:none;box-shadow:0 0 0 3px color-mix(in srgb,var(--demo-accent) 25%,transparent)}
.dx-field{display:grid;gap:7px;font-size:.84rem;font-weight:600}.dx-field>span{position:relative;display:block}.dx-field small{font-weight:400;min-height:1.2em;opacity:.7}.dx-field.bad input,.dx-field.bad textarea{border-color:var(--dx-err)}.dx-field.bad small{color:var(--dx-err);opacity:1}.dx-field.ok input,.dx-field.ok textarea{border-color:var(--demo-accent)}
.dx fieldset{border:0;padding:0;margin:0;min-width:0}.dx legend{font-size:.84rem;font-weight:600;margin-bottom:10px;padding:0}.dx legend small{font-weight:400;opacity:.65}
.dx-empty{opacity:.65;font-size:.9rem;text-align:center;padding:28px 10px}
.dx-scrim{position:fixed;inset:0;z-index:40;background:rgba(0,0,0,.5);cursor:default!important}
.dx-cart{position:fixed;top:0;right:0;bottom:0;z-index:41;width:min(440px,100%);display:flex;flex-direction:column;background:var(--demo-bg);color:var(--demo-fg);border-left:1px solid var(--demo-line)}
.dx-cart-head{display:flex;justify-content:space-between;align-items:center;padding:22px 24px;border-bottom:1px solid var(--demo-line)}.dx-cart-head h2{font-size:1.8rem}.dx-cart-head button{font-size:1.8rem;width:40px;height:40px}
.dx-cart-lines{flex:1;overflow:auto;padding:8px 24px}.dx-line{display:grid;grid-template-columns:1fr auto auto;gap:12px;align-items:center;padding:16px 0;border-bottom:1px solid var(--demo-line)}.dx-line b{display:block;font-weight:600}.dx-line span{font-size:.8rem;opacity:.65}.dx-line strong{min-width:70px;text-align:right}
.dx-cart-foot{padding:20px 24px;border-top:1px solid var(--demo-line);display:grid;gap:14px}.dx-cart-foot div{display:flex;justify-content:space-between;align-items:baseline}.dx-cart-foot strong{font:600 1.7rem var(--dx-font)}
.dx-ship{padding:16px 24px 0}.dx-ship p{font-size:.86rem}.dx-ship i{display:block;height:6px;margin-top:8px;background:var(--demo-line);border-radius:9px;overflow:hidden}.dx-ship b{display:block;height:100%;background:var(--demo-accent);transition:width .4s}
.dx-toast{position:fixed;left:50%;bottom:26px;transform:translateX(-50%);z-index:50;display:flex;align-items:center;gap:8px;padding:12px 20px;background:var(--demo-accent);color:var(--dx-on);font-weight:600;font-size:.88rem;border-radius:var(--dx-r);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.dx-done{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:rgba(0,0,0,.6)}.dx-done-card{width:min(460px,100%);background:var(--demo-bg);color:var(--demo-fg);border:1px solid var(--demo-line);padding:34px;display:grid;gap:14px;justify-items:start}.dx-done-card svg{color:var(--demo-accent)}.dx-done-card h2{font-size:2.2rem}.dx-done-card li{padding:6px 0;border-bottom:1px solid var(--demo-line);width:100%}.dx-done-card small{opacity:.6}.dx-done-card div{display:flex;gap:10px;flex-wrap:wrap}
.dx-info{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-block:60px;border-top:1px solid var(--demo-line)}.dx-info h3{font-size:1.4rem;margin-bottom:14px}.dx-info li{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid var(--demo-line);font-size:.92rem}.dx-info p{max-width:34ch}.dx-info small{display:block;margin-top:10px;opacity:.6}
.dx-faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:50px;padding-block:60px 90px}.dx-faq h2{font-size:clamp(1.8rem,3.4vw,2.6rem)}.dx-faq details{border-bottom:1px solid var(--demo-line);padding:18px 0}.dx-faq summary{cursor:pointer;font-weight:600;list-style:none;display:flex;justify-content:space-between;gap:16px}.dx-faq summary::after{content:'+';font-size:1.3rem;line-height:1;transition:transform .25s}.dx-faq details[open] summary::after{transform:rotate(45deg)}.dx-faq summary::-webkit-details-marker{display:none}.dx-faq details p{margin-top:10px;opacity:.75;max-width:56ch}
.dx-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;padding-block:30px 60px;border-top:1px solid var(--demo-line);font-size:.82rem}.dx-foot span{opacity:.6}.dx-foot b{font:600 1.1rem var(--dx-font)}.dx-foot button{font-weight:700}

/* ===== Café Brasa ===== */
.dx-cafe{--dx-r:2px;background:radial-gradient(900px 500px at 85% -5%,rgba(232,121,63,.16),transparent 60%),var(--demo-bg)}.dx-cafe h1,.dx-cafe h2,.dx-cafe h3{font-family:'Fraunces',Georgia,serif;font-weight:600}
.dx-cafe .dx-bar{background:color-mix(in srgb,var(--demo-bg) 94%,transparent);color:color-mix(in srgb,var(--demo-fg) 78%,transparent);border-color:var(--demo-line)}
.dx-cafe .dx-nav{align-items:center}.dx-cafe .dx-nav>div{display:flex;align-items:center;justify-content:center;gap:22px}.dx-cafe .dx-nav a,.dx-cafe .dx-k,.dx-cafe small{color:var(--demo-fg)}
.dx-cafe .dx-k{display:block;text-align:left;letter-spacing:.14em}.dx-cafe .cf-hint,.dx-cafe .cf-index>p,.dx-cafe .cf-row p,.dx-cafe .cf-lead p,.dx-cafe .cf-torra p,.dx-cafe .cf-reserva>div>p{color:var(--demo-fg)}
.cf-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(28px,5vw,70px);align-items:center;padding-bottom:clamp(40px,7vw,90px)}.cf-hero .dx-nav{grid-column:1/-1}
.cf-copy h1{font-size:clamp(3rem,7.2vw,6.4rem);line-height:.95;letter-spacing:-.04em}.cf-copy h1 em{color:var(--demo-accent);display:block;font-size:1.06em}.cf-copy p{margin-top:22px;max-width:44ch;font-size:1.08rem;opacity:.8}.cf-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:30px}
.cf-stats{display:flex;gap:34px;margin-top:44px;padding-top:24px;border-top:1px solid var(--demo-line)}.cf-stats dt{font:600 1.9rem 'Fraunces',serif;color:var(--demo-accent)}.cf-stats dd{font-size:.78rem;opacity:.7}
.cf-fig{position:relative}.cf-fig .dx-ph{border-radius:var(--dx-r) var(--dx-r) 180px var(--dx-r)}.cf-fig figcaption{position:absolute;left:-28px;bottom:36px;display:grid;gap:2px;padding:16px 20px;background:var(--demo-accent);color:var(--dx-on);font-size:.8rem;box-shadow:0 14px 40px rgba(0,0,0,.35)}.cf-fig figcaption b{font:700 1.3rem 'Fraunces',serif}
.cf-board{display:grid;grid-template-columns:190px minmax(0,1fr) 320px;gap:clamp(24px,4vw,56px);align-items:start;padding-block:60px 90px!important;border-top:1px solid var(--demo-line)}
.cf-index{position:sticky;top:70px}.cf-index [role=tablist]{display:grid;margin-top:6px}.cf-index button{display:flex;align-items:baseline;gap:10px;padding:14px 0;border-bottom:1px solid var(--demo-line);font:600 1.3rem 'Fraunces',serif;text-align:left;opacity:.55;transition:opacity .2s,padding .2s}.cf-index button:hover{opacity:.9}.cf-index button.on{opacity:1;color:var(--demo-accent);padding-left:8px}.cf-index small{font:700 .66rem 'DM Sans';opacity:.7}.cf-index em{margin-left:auto;font-size:.9rem}.cf-index>p{margin-top:20px;font-size:.78rem;opacity:.55}
.cf-menu h2{font-size:clamp(2.6rem,5vw,4.4rem)}.cf-hint{margin:12px 0 28px;opacity:.7}
.cf-lead{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:12px}.cf-lead article{background:var(--demo-card);border:1px solid var(--demo-line);transition:transform .3s,border-color .3s}.cf-lead article:hover,.cf-lead .on{transform:translateY(-4px);border-color:var(--demo-accent)}.cf-lead .dx-ph{border-radius:0}.cf-lead div{padding:20px}.cf-lead h3{font-size:1.7rem}.cf-lead p{margin:6px 0 16px;font-size:.88rem;opacity:.7}.cf-lead footer{display:flex;justify-content:space-between;align-items:center}.cf-lead footer b{font:600 1.35rem 'Fraunces',serif}
.cf-row{display:grid;grid-template-columns:76px 1fr auto auto;gap:16px;align-items:center;padding:14px 12px;margin-inline:-12px;border-bottom:1px dashed var(--demo-line);transition:background .25s}.cf-row:hover,.cf-row.on{background:color-mix(in srgb,var(--demo-accent) 9%,transparent)}.cf-glyph{color:var(--demo-accent);opacity:.9}.cf-row h3{font-size:1.25rem;display:flex;gap:10px;align-items:center;flex-wrap:wrap}.cf-row h3 i{font:700 .6rem 'DM Sans';letter-spacing:.08em;text-transform:uppercase;padding:3px 8px;border:1px solid var(--demo-accent);color:var(--demo-accent)}.cf-row p{font-size:.86rem;opacity:.68;margin-top:3px}.cf-price{font:600 1.15rem 'Fraunces',serif;min-width:64px;text-align:right}
.cf-order{position:sticky;top:70px;padding:24px;background:var(--demo-card);border:1px solid var(--demo-line);display:grid;gap:16px}.cf-order h3{font-size:1.6rem}.cf-order li{display:grid;grid-template-columns:1fr auto auto;gap:10px;align-items:center;padding:10px 0;border-bottom:1px solid var(--demo-line);font-size:.88rem}.cf-total{display:flex;justify-content:space-between;align-items:baseline}.cf-total strong{font:600 1.8rem 'Fraunces',serif}
.cf-sticky{display:none}
.cf-torra{display:grid;grid-template-columns:1fr 1.2fr;gap:clamp(30px,6vw,90px);border-top:1px solid var(--demo-line)}.cf-torra h2{font-size:clamp(2.2rem,4.4vw,3.6rem)}.cf-torra p{margin-top:18px;opacity:.75;max-width:46ch}.cf-torra ol{display:grid;gap:0}.cf-torra li{display:grid;grid-template-columns:120px 1fr;gap:4px 14px;padding:22px 0;border-bottom:1px solid var(--demo-line)}.cf-torra small{grid-row:span 2;font:600 1.1rem 'Fraunces',serif;color:var(--demo-accent)}.cf-torra h3{font-size:1.5rem}.cf-torra li p{margin:0}
.cf-reserva{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px);align-items:start;background:var(--demo-card);padding-inline:clamp(24px,5vw,64px);border:1px solid var(--demo-line)}.cf-reserva h2{font-size:clamp(2.4rem,5vw,4.2rem)}.cf-reserva em{color:var(--demo-accent)}.cf-reserva form{display:grid;gap:22px}.cf-party{display:flex;justify-content:space-between;align-items:center;font-size:.84rem;font-weight:600}

/* ===== Studio Vela ===== */
.dx-studio{--dx-r:999px;background:var(--demo-bg)}.dx-studio h1,.dx-studio h2,.dx-studio h3{font-family:'Outfit',sans-serif;font-weight:600}.dx-studio .dx-btn,.dx-studio .dx-chip,.dx-studio .dx-add{border-radius:999px}.dx-studio input,.dx-studio select{border-radius:14px}
.sv-hero{position:relative;min-height:min(86vh,780px);display:flex;align-items:flex-end;overflow:hidden}.sv-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.sv-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(11,31,22,.72),rgba(11,31,22,.35) 40%,var(--demo-bg) 100%)}.sv-hero .dx-wrap{position:relative;padding-bottom:70px}.sv-hero .dx-nav{position:absolute;top:0;left:0;right:0}
.sv-hero h1{font-size:clamp(3.2rem,8vw,7.2rem);line-height:.95;letter-spacing:-.045em;margin-top:120px}.sv-hero h1 em{color:var(--demo-accent)}.sv-hero p{margin-top:22px;max-width:46ch;font-size:1.1rem;opacity:.88}.sv-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.sv-six{display:flex;align-items:center;gap:8px;margin-top:38px}.sv-six i{width:14px;height:14px;border-radius:50%;background:var(--demo-accent);animation:svp 1.6s ease-in-out infinite}.sv-six span{margin-left:10px;font-size:.88rem;opacity:.85}.sv-six b{font:700 1.4rem 'Outfit'}@keyframes svp{50%{transform:scale(.6);opacity:.5}}
.sv-proof{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--demo-line);padding-block:30px!important}.sv-proof div{display:flex;flex-direction:column;gap:2px}.sv-proof b{font:600 clamp(2rem,4.5vw,3.4rem) 'Outfit';color:var(--demo-accent)}.sv-proof span{font-size:.82rem;opacity:.7}
.sv-method h2,.sv-plans h2,.sv-agenda h2,.sv-team h2{max-width:20ch}.sv-method>div:first-child p{max-width:58ch}.sv-track{position:relative;margin-top:50px}.sv-track>i{position:absolute;left:0;right:0;top:11px;height:2px;background:var(--demo-accent);transform-origin:left}.sv-track ol{display:grid;grid-template-columns:repeat(4,1fr);gap:24px}.sv-track li{padding-top:34px;position:relative}.sv-track li::before{content:'';position:absolute;top:4px;left:0;width:16px;height:16px;border-radius:50%;background:var(--demo-bg);border:3px solid var(--demo-accent)}.sv-track li span{font-size:.74rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--demo-accent)}.sv-track h3{font-size:1.6rem;margin:6px 0}.sv-track p{font-size:.9rem;opacity:.72}
.sv-scroll{overflow-x:auto;margin-top:34px;padding-bottom:6px}.sv-plans table{width:100%;min-width:720px;border-collapse:separate;border-spacing:0}.sv-plans th,.sv-plans td{padding:16px 18px;text-align:left;border-bottom:1px solid var(--demo-line);font-size:.92rem;vertical-align:top}.sv-plans tbody th{font-size:.74rem;letter-spacing:.1em;text-transform:uppercase;opacity:.65;width:150px}.sv-plans thead th{padding:0;border-bottom:0}.sv-plans thead button{display:grid;gap:6px;width:100%;text-align:left;padding:20px 18px;font:600 1.3rem 'Outfit';border-radius:22px 22px 0 0;transition:background .25s}.sv-plans thead button:hover{background:color-mix(in srgb,var(--demo-accent) 10%,transparent)}.sv-plans thead strong{font-size:1.9rem}.sv-plans thead small{font-size:.8rem;opacity:.7;font-weight:400}.sv-plans thead em{font:600 .72rem 'DM Sans';letter-spacing:.08em;text-transform:uppercase;font-style:normal;opacity:.6}
.sv-plans .on,.sv-plans th.on button{background:var(--demo-accent);color:var(--dx-on)}.sv-plans td.on{background:color-mix(in srgb,var(--demo-accent) 16%,transparent);color:var(--demo-fg)}.sv-plans th.on em{opacity:1}.sv-note{display:block;margin-top:12px;opacity:.55}
.sv-team>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:34px}.sv-coach{padding:28px;background:var(--demo-card);border:1px solid var(--demo-line);border-radius:26px}.sv-coach h3{font-size:1.7rem}.sv-coach>span{display:block;margin:4px 0 14px;font-size:.78rem;font-weight:700;color:var(--demo-accent);letter-spacing:.06em;text-transform:uppercase}.sv-coach p{font-size:.9rem;opacity:.75}.sv-coach ul{display:flex;gap:6px;margin-top:20px;flex-wrap:wrap}.sv-coach li{font-size:.72rem;padding:4px 10px;border-radius:99px;border:1px solid var(--demo-line);opacity:.5}.sv-coach li.on{background:var(--demo-accent);color:var(--dx-on);border-color:var(--demo-accent);opacity:1;font-weight:700}
.sv-grid{display:grid;grid-template-columns:62px repeat(6,minmax(84px,1fr));gap:8px;min-width:640px;margin-top:6px}.sv-day,.sv-time{display:grid;place-items:center;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.7}.sv-cell{min-height:62px;border:1px solid var(--demo-line);border-radius:16px;font:600 1.1rem 'Outfit';transition:background .2s,transform .15s,border-color .2s}.sv-cell small{font:400 .72rem 'DM Sans';opacity:.7}.sv-cell:hover:not(:disabled){border-color:var(--demo-accent);transform:translateY(-2px)}.sv-cell:disabled{opacity:.28;cursor:not-allowed;background:repeating-linear-gradient(45deg,transparent 0 6px,var(--demo-line) 6px 7px)}.sv-cell.on{background:var(--demo-accent);color:var(--dx-on);border-color:var(--demo-accent)}
.sv-bar{position:sticky;bottom:14px;z-index:6;display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;margin-top:26px;padding:16px 22px;background:var(--demo-card);border:1px solid var(--demo-accent);border-radius:26px;box-shadow:0 14px 40px rgba(0,0,0,.35)}.sv-bar div{display:grid}.sv-bar span{font-size:.84rem;opacity:.7}.sv-bar b{font:600 1.2rem 'Outfit'}

/* ===== Lima & Souza ===== */
.dx-lima{--dx-r:0;background:var(--demo-bg)}.dx-lima h1,.dx-lima h2,.dx-lima h3{font-family:'Instrument Serif',Georgia,serif;font-weight:400;letter-spacing:-.02em}.dx-lima .dx-brand{font:400 1.7rem 'Instrument Serif',serif}.dx-lima .dx-btn{background:var(--demo-fg);border-color:var(--demo-fg);color:#fff}.dx-lima main>section{padding-block:clamp(70px,11vw,150px)}
.lm-hero{display:grid;grid-template-columns:1.25fr .75fr;gap:clamp(30px,6vw,90px);align-items:end}.lm-hero .dx-nav{grid-column:1/-1;border-bottom:1px solid var(--demo-line)}.lm-copy{padding-top:clamp(30px,6vw,80px)}.lm-copy h1{font-size:clamp(3.6rem,9vw,8rem);line-height:.92;letter-spacing:-.035em}.lm-copy h1 em{display:block;color:color-mix(in srgb,var(--demo-fg) 60%,var(--demo-bg))}.lm-copy p{margin:28px 0 34px;max-width:44ch;font-size:1.12rem;opacity:.78}.lm-hero figure .dx-ph{border-radius:0}.lm-hero figure img{filter:saturate(.85)}
.lm-facts{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,1fr);gap:40px;padding-block:34px;margin-top:20px;border-top:1px solid var(--demo-line)}.lm-facts dt{font:400 1.5rem 'Instrument Serif';margin-bottom:4px}.lm-facts dd{font-size:.88rem;opacity:.7;max-width:30ch}
.lm-areas{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(30px,6vw,90px);align-items:start}.lm-areas>ul{border-top:1px solid var(--demo-fg)}.lm-areas>ul>li{border-bottom:1px solid var(--demo-line);transition:background .25s}.lm-areas>ul>li.sel{background:color-mix(in srgb,var(--demo-fg) 5%,transparent)}.lm-head{display:grid;grid-template-columns:36px 1fr auto;gap:4px 14px;align-items:baseline;width:100%;padding:26px 8px;text-align:left}.lm-head small{grid-row:span 2;font-size:.74rem;font-weight:700;opacity:.5}.lm-head h3{font-size:clamp(1.9rem,3.4vw,2.7rem)}.lm-head span{grid-column:2;font-size:.92rem;opacity:.68}.lm-head i{grid-column:3;grid-row:1/3;align-self:center;font:300 1.8rem 'DM Sans';font-style:normal}
.lm-body{overflow:hidden}.lm-body>div{padding:0 8px 28px 50px;display:grid;gap:18px;justify-items:start}.lm-body li{padding:5px 0 5px 20px;position:relative;font-size:.94rem}.lm-body li::before{content:'';position:absolute;left:0;top:.9em;width:10px;height:1px;background:var(--demo-fg)}
.lm-team>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:50px}.lm-person{border-top:1px solid var(--demo-fg);padding-top:20px}.lm-person b{display:block;font:400 3.4rem 'Instrument Serif';opacity:.28;line-height:1;margin-bottom:22px}.lm-person h3{font-size:1.9rem}.lm-person span{display:block;margin:4px 0 14px;font-size:.78rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;opacity:.6}.lm-person p{font-size:.92rem;opacity:.78;max-width:34ch}
.lm-steps{background:var(--demo-card);width:100%!important;max-width:none;padding-inline:max(20px,calc(50% - 590px))}.lm-steps ol{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:50px;border-top:1px solid var(--demo-fg)}.lm-steps li{padding:26px 26px 0 0}.lm-steps small{font:400 3rem 'Instrument Serif';display:block;opacity:.35;line-height:1}.lm-steps h3{font-size:1.6rem;margin:10px 0 8px}.lm-steps p{font-size:.9rem;opacity:.72}
.lm-form{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(30px,6vw,90px);align-items:start}.lm-intro{grid-column:1/-1}.lm-intro h2{max-width:14ch}.lm-form form{display:grid;gap:26px}.lm-form input,.lm-form textarea{border:0;border-bottom:1px solid var(--demo-fg);padding-inline:0;background:transparent;font-size:1.05rem}.lm-form input:focus,.lm-form textarea:focus{box-shadow:none;border-bottom-width:2px}.lm-form .dx-field.bad input,.lm-form .dx-field.bad textarea{border-bottom-color:var(--dx-err)}.lm-ok{position:absolute;right:2px;top:50%;transform:translateY(-50%) scale(.4);opacity:0;color:var(--demo-fg);transition:.25s}.lm-ok.on{opacity:1;transform:translateY(-50%) scale(1)}.lm-form fieldset.bad legend{color:var(--dx-err)}.err{color:var(--dx-err);font-size:.8rem;display:block;margin-top:8px}
.lm-sum{position:sticky;top:76px;padding:28px;background:var(--demo-card);border-top:2px solid var(--demo-fg);display:grid;gap:12px}.lm-sum h3{font-size:1.9rem}.lm-prog{height:3px;background:var(--demo-line)}.lm-prog i{display:block;height:100%;background:var(--demo-fg);transition:width .4s}.lm-sum>small{opacity:.7}.lm-sum dl{display:grid;gap:0;margin-top:6px}.lm-sum dl div{padding:12px 0;border-bottom:1px solid var(--demo-line)}.lm-sum dt{font-size:.7rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;opacity:.55}.lm-sum dd{font-size:.94rem;margin-top:2px;overflow-wrap:anywhere}

/* ===== Flora Casa ===== */
.dx-flora{--dx-r:999px;background:var(--demo-bg)}.dx-flora h1,.dx-flora h2,.dx-flora h3{font-family:'Jost',sans-serif;font-weight:500;letter-spacing:-.03em}.dx-flora .dx-brand{font:500 1.6rem 'Jost'}.dx-flora .dx-chip,.dx-flora .dx-add,.dx-flora .dx-btn{border-radius:999px}.dx-flora input,.dx-flora select{border-radius:14px}.dx-flora input[type=search]{border-radius:999px}
.fl-hero{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(24px,5vw,70px);align-items:end;padding-bottom:clamp(40px,6vw,80px)}.fl-hero .dx-nav{grid-column:1/-1}.fl-copy h1{font-size:clamp(3.2rem,7.4vw,6.6rem);line-height:.95}.fl-copy h1 em{color:var(--demo-accent)}.fl-copy p{margin:22px 0 30px;max-width:42ch;font-size:1.08rem;opacity:.78}
.fl-find{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:16px;background:var(--demo-card);border-radius:30px}.fl-find>span{width:100%;font-size:.8rem;font-weight:600;padding-left:6px}.fl-find .dx-chip{background:var(--demo-bg)}.fl-find .dx-chip:hover{background:var(--demo-accent);color:#fff;border-color:var(--demo-accent)}
.fl-arch .dx-ph{border-radius:999px 999px 24px 24px}.fl-sun{display:inline-flex;gap:3px}.fl-sun i{width:8px;height:8px;border-radius:50%;border:1.5px solid currentColor;opacity:.45}.fl-sun i.on{background:currentColor;opacity:1}
.fl-shop{border-top:1px solid var(--demo-line)}.fl-types{display:flex;gap:6px;flex-wrap:wrap;margin-bottom:34px;overflow-x:auto}.fl-types button{display:flex;gap:8px;align-items:baseline;padding:.7em 1.4em;border-radius:99px;border:1px solid var(--demo-line);font:500 1.15rem 'Jost';transition:.2s;white-space:nowrap}.fl-types button:hover{border-color:var(--demo-fg)}.fl-types button.on{background:var(--demo-fg);color:var(--demo-bg);border-color:var(--demo-fg)}.fl-types small{font-size:.74rem;opacity:.7}
.fl-layout{display:grid;grid-template-columns:230px minmax(0,1fr);gap:clamp(24px,4vw,56px);align-items:start}.fl-filters{position:sticky;top:70px;display:grid;gap:22px}.fl-filters>label{display:grid;gap:7px;font-size:.84rem;font-weight:600}.fl-clear{justify-self:start;font-size:.84rem;font-weight:600;text-decoration:underline;text-underline-offset:4px}
.fl-layout h2{font-size:clamp(2rem,3.6vw,3rem);margin-bottom:22px}.fl-layout h2 small{font:400 .9rem 'DM Sans';opacity:.6;margin-left:8px;letter-spacing:0}.fl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:22px 18px}
.fl-card{display:grid;gap:8px;align-content:start}.fl-tile{aspect-ratio:1/1.05;display:grid;place-items:end center;background:var(--demo-card);border-radius:26px;overflow:hidden;transition:transform .35s,background .3s}.fl-card:hover .fl-tile{transform:translateY(-5px)}.fl-tile.t-Vasos{background:#e7d7c6}.fl-tile.t-Suportes{background:#e3dccb}.fl-tile.t-Acessórios{background:#d4dfd0}.fl-art{width:78%;margin-bottom:6%}.fl-info{display:flex;justify-content:space-between;gap:10px;align-items:baseline;padding-top:6px}.fl-info h3{font-size:1.25rem}.fl-info b{font-weight:600}.fl-card>p{font-size:.86rem;opacity:.72}.fl-card ul{display:grid;gap:3px;font-size:.78rem;opacity:.8;margin-bottom:6px}.fl-card li{display:flex;gap:8px;align-items:center}.fl-card>.dx-add,.fl-card>.dx-step{justify-self:start}
.fl-none{display:grid;gap:14px;justify-items:center;padding:60px 0}.fl-sticky{display:none}
.fl-guide>div:last-child{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}.fl-guide button{display:grid;gap:10px;text-align:left;width:100%;padding:30px;background:var(--demo-card);border-radius:28px;transition:transform .3s,background .3s}.fl-guide button:hover{transform:translateY(-5px);background:color-mix(in srgb,var(--demo-accent) 18%,var(--demo-card))}.fl-guide h3{font-size:1.8rem}.fl-guide p{font-size:.92rem;opacity:.75}.fl-guide button>span:last-child{font-weight:600;font-size:.86rem;color:var(--demo-accent)}.fl-guide .fl-sun i{width:12px;height:12px}
.fl-about{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,90px)}.fl-about p{margin-top:18px;opacity:.78;max-width:46ch}.fl-about ul{display:grid;gap:0}.fl-about li{padding:22px 0;border-bottom:1px solid var(--demo-line)}.fl-about li h3{font-size:1.5rem}.fl-about li p{margin-top:4px;font-size:.92rem}

/* ===== responsivo ===== */
@media(max-width:1020px){.cf-board{grid-template-columns:1fr}.cf-index{position:static}.cf-index [role=tablist]{display:flex;overflow-x:auto;gap:18px}.cf-index button{white-space:nowrap;border:0;padding:8px 0}.cf-index>p{display:none}.cf-order{display:none}.cf-sticky{display:flex;justify-content:space-between;position:sticky;bottom:12px;margin:0 auto;width:min(560px,calc(100% - 28px));z-index:9;padding:16px 22px;background:var(--demo-accent);color:var(--dx-on);font-weight:600;box-shadow:0 12px 34px rgba(0,0,0,.4)}.fl-layout{grid-template-columns:1fr}.fl-filters{position:static;grid-template-columns:1fr 1fr}.fl-filters>label:first-child,.fl-filters fieldset{grid-column:auto}.fl-sticky{display:flex;justify-content:space-between;position:sticky;bottom:12px;margin:0 auto;width:min(560px,calc(100% - 28px));z-index:9;padding:16px 22px;background:var(--demo-fg);color:var(--demo-bg);border-radius:99px;font-weight:500}.lm-form{grid-template-columns:1fr}.lm-sum{position:static}}
@media(max-width:820px){.cf-hero,.fl-hero,.lm-hero,.cf-torra,.cf-reserva,.lm-areas,.fl-about,.dx-faq{grid-template-columns:1fr}.cf-fig figcaption{left:12px}.cf-fig .dx-ph{aspect-ratio:4/3!important}.lm-hero figure{order:-1}.lm-hero figure .dx-ph{aspect-ratio:16/10!important}.sv-track ol,.lm-steps ol{grid-template-columns:1fr 1fr}.sv-team>div:last-child,.lm-team>div:last-child,.fl-guide>div:last-child,.lm-facts,.dx-info{grid-template-columns:1fr}.cf-lead{grid-template-columns:1fr}.fl-arch .dx-ph{aspect-ratio:1/1!important}.dx-nav div{gap:16px;font-size:.8rem}.sv-hero h1{margin-top:90px}}
@media(max-width:560px){.dx-bar>span{display:none}.dx-nav div a:nth-child(3){display:none}.cf-row{grid-template-columns:44px 1fr auto;row-gap:10px}.cf-row .cf-price{grid-column:3;grid-row:1}.cf-row .dx-add,.cf-row .dx-step{grid-column:2/4;justify-self:start}.sv-track ol,.lm-steps ol,.fl-filters{grid-template-columns:1fr}.sv-proof{grid-template-columns:1fr 1fr 1fr}.sv-bar{bottom:8px}.fl-grid{grid-template-columns:1fr 1fr;gap:18px 12px}.fl-info{display:grid;gap:0}.dx-line{grid-template-columns:1fr auto}.dx-line strong{grid-column:1/-1;text-align:left}.cf-stats{gap:20px}}
@media(prefers-reduced-motion:reduce){.dx *,.dx *::before{animation:none!important;transition:none!important;scroll-behavior:auto!important}}

.dx{position:fixed;inset:0;z-index:100;overflow-y:auto;background:var(--demo-bg);color:var(--demo-fg)}.dx:focus,.dx-cart:focus,.dx-done:focus{outline:none}
.dx-studio .sv-hero{background:var(--demo-card)}

/* ===== fotos das demos ===== */
.dx-ph{position:relative;overflow:hidden;width:100%;background:color-mix(in srgb,var(--demo-accent) 13%,var(--demo-card))}
.dx-ph img{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;animation:dxph .5s ease}
.dx-ph-fb{position:absolute;inset:0;display:grid;place-items:center;color:var(--demo-accent)}
.dx-ph-fill{position:absolute;inset:0;aspect-ratio:auto!important}
.dx-mono{font:400 clamp(1.6rem,5vw,3rem) var(--dx-font);opacity:.6;letter-spacing:-.02em;text-align:center;padding:0 12px}
@keyframes dxph{from{opacity:0}}
.cf-glyph .dx-ph{border-radius:var(--dx-r)}.cf-glyph svg{width:30px;height:30px}
.cf-torra li .dx-ph{grid-row:span 2}.cf-mesa{margin-top:28px}
.sv-heroimg{z-index:0}.sv-band{margin-top:40px;border-radius:26px}.sv-coach .dx-ph{border-radius:18px;margin-bottom:18px}
.lm-band{margin-top:40px}.lm-person .dx-ph{margin-bottom:22px}.lm-steps .dx-ph{margin-bottom:0}
.fl-tile .dx-ph{aspect-ratio:auto!important;height:100%}.fl-tile{position:relative}.fl-guide .dx-ph{border-radius:20px;margin-bottom:6px}.fl-sobre{margin-top:28px;border-radius:26px}
@media(prefers-reduced-motion:reduce){.dx-ph img{animation:none}}
@media(max-width:560px){.cf-torra li{grid-template-columns:96px 1fr}}

/* ============================================================
   M.O.T.I.O.N. — seção do projeto (claro/escuro)
   ============================================================ */
.motion-wrap{padding-block:clamp(56px,8vw,110px)}
.motion-shade{width:min(var(--maxw),100% - var(--gutter)*2);margin-inline:auto;border:1px solid var(--line);background:color-mix(in srgb,var(--paper-2) 80%,var(--paper));padding:clamp(24px,4vw,56px)}
.matter{display:grid;gap:clamp(28px,4vw,48px)}
.motion-head{display:grid;grid-template-columns:1fr auto;gap:clamp(18px,3vw,36px);align-items:center}
.motion-copy{display:grid;gap:10px;min-width:0}
.motion-head .motion-kicker{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--coral)!important}
.motion-copy h2{font:600 clamp(2.4rem,6vw,5rem)/.95 var(--d);letter-spacing:-.06em;color:var(--ink)}
.motion-desc{color:var(--mut);max-width:58ch;font-size:1.02rem}
.motion-head .btn{white-space:nowrap}
.motion-grid{display:grid;grid-template-columns:1fr 1.4fr;gap:clamp(24px,4vw,56px);align-items:start}
.motion-title{font:600 1.6rem var(--d);letter-spacing:-.04em;color:var(--ink);margin-bottom:12px}
.motion-text{color:var(--mut);line-height:1.7}
.motion-parts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.motion-parts>div{display:flex;flex-direction:column;gap:8px;padding:20px;border:1px solid var(--line);background:color-mix(in srgb,var(--paper) 60%,transparent)}
.motion-parts .motion-pic{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--line-2);color:var(--coral)!important;margin-bottom:6px}
.motion-parts strong{font:600 1rem var(--d);color:var(--ink)}
.motion-parts span:not(.motion-pic){color:var(--mut);font-size:.88rem;line-height:1.55}
.motion-role{padding-top:24px;border-top:1px solid var(--line)}
.motion-role strong,.motion-alt strong{display:block;font:600 1.05rem var(--d);color:var(--ink);margin-bottom:6px}
.motion-role p{color:var(--mut);max-width:70ch}
.motion-alt-list{display:flex;flex-wrap:wrap;gap:10px 26px}
.motion-alt-list a{color:var(--coral);font-weight:600;font-size:.92rem}
.motion-alt-list a:hover{color:var(--ink)}
@media(max-width:900px){.motion-head,.motion-grid{grid-template-columns:1fr}.motion-parts{grid-template-columns:1fr}.motion-head .btn{justify-self:start}}

/* M.O.T.I.O.N. — card do TCC (Anime.js) ------------------------ */
.mc{display:grid;gap:clamp(22px,3vw,34px);padding:clamp(22px,4vw,48px);border:1px solid var(--theme-line);background:color-mix(in srgb,var(--theme-panel) 70%,var(--theme-bg))}
.mc-top{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);gap:clamp(22px,4vw,48px);align-items:center}
.mc-copy{display:grid;gap:14px;justify-items:start}
.mc-kicker{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--coral)}
.mc-title{font:600 clamp(2.2rem,5vw,4rem)/.95 var(--d);letter-spacing:-.05em;color:var(--theme-fg)}
.mc-text{color:var(--theme-muted);line-height:1.65;max-width:52ch;font-size:1rem}
.mc-shot{margin:0;border:1px solid var(--theme-line);background:#fff;overflow:hidden}
.mc-shot img{display:block;width:100%;height:auto}
.mc-sentence{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;padding:14px 16px;background:var(--theme-panel);border-top:1px solid var(--theme-line);color:var(--theme-fg)}
.mc-label{font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--theme-muted)}
.mc-chips{display:flex;align-items:center;gap:8px;flex:1;min-width:0;flex-wrap:wrap}
.mc-chip{padding:6px 14px;border:1px solid var(--coral);color:var(--theme-fg);font:600 .95rem var(--d)}
.mc-wave{display:inline-flex;align-items:center;gap:3px;height:22px;margin-left:6px;color:var(--coral)}
.mc-wave i{display:block;width:3px;height:100%;background:currentColor;transform:scaleY(.25);transform-origin:center}
.mc-replay{background:none;border:0;color:var(--coral);font:600 .8rem var(--b,inherit);cursor:pointer;padding:6px 2px;text-decoration:underline;text-underline-offset:3px}
.mc-replay:hover{color:var(--theme-fg)}
.mc-parts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;margin:0;padding:0}
.mc-part{display:flex;flex-direction:column;gap:8px;padding:22px;border:1px solid var(--theme-line);background:var(--theme-bg);transition:border-color .3s,transform .3s}
.mc-part:hover{border-color:var(--coral);transform:translateY(-4px)}
.mc-ico{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--theme-line);color:var(--coral);margin-bottom:6px}
.mc-ico svg{width:22px;height:22px}
.mc-part h4{font:600 1.05rem var(--d);color:var(--theme-fg);margin:0}
.mc-part p{margin:0;color:var(--theme-muted);font-size:.9rem;line-height:1.55}
.mc-armed .mc-copy>*,.mc-armed .mc-shot,.mc-armed .mc-part,.mc-armed .mc-chip{opacity:0}
@media(max-width:900px){.mc-top{grid-template-columns:1fr}.mc-parts{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.mc-part:hover{transform:none}.mc-wave i{transform:scaleY(.6)}}
.mc-shot img{aspect-ratio:16/9;object-fit:cover;object-position:center}
.mc-chips{flex-wrap:nowrap}
.mc-wave{flex:none}
@media(max-width:520px){.mc-chips{flex-basis:100%}}
.mc-shot img{aspect-ratio:4/3}
.mc-label{flex-basis:100%}
.mc-replay{flex:none;margin-left:auto}

/* ===== Viora: marca, marquee animado e atalho de WhatsApp ===== */
.brand{gap:10px;color:var(--fg)}
.brand-logo{display:block;width:44px;height:34px;flex:none;object-fit:contain;object-position:center}
.brand .brand-mark{width:34px;height:34px;flex:none;color:currentColor}
.brand .brand-word{font:600 1.55rem/1 var(--d);letter-spacing:-.07em}
.foot .brand-logo{width:52px;height:40px}.foot .brand .brand-mark{width:40px;height:40px}.foot .brand .brand-word{font-size:1.9rem}
.hero-v2-marquee{display:block;padding:0;overflow:hidden}
.marquee-track{display:flex;width:max-content;animation:viora-marquee 38s linear infinite}
.marquee-set{display:flex;align-items:center;gap:26px;padding:16px 13px;white-space:nowrap}
@keyframes viora-marquee{to{transform:translateX(-50%)}}
.whats-float{display:none}
@media(max-width:640px){
  .whats-float{position:fixed;left:16px;bottom:max(16px,env(safe-area-inset-bottom));z-index:70;display:inline-flex;align-items:center;gap:8px;min-height:48px;padding:0 18px;border-radius:999px;background:var(--lime);color:var(--ink);font:700 .82rem var(--d);box-shadow:0 12px 28px rgba(0,0,0,.28)}
  .whats-float svg{width:18px;height:18px}
}
@media(prefers-reduced-motion:reduce){.marquee-track{animation:none}}

/* alinhamento do hero com a navegação e menos vazio no topo */
.hero.hero-v2{padding-inline:max(var(--gutter),calc((100% - var(--maxw))/2))}
.hero-v2 .hero-v2-main{min-height:auto;padding-block:clamp(56px,8vw,112px) clamp(48px,6vw,84px)}
.hero-v2-marquee{margin-inline:calc(var(--gutter) * -1)}
@media(max-width:640px){
  .hero.hero-v2{padding-inline:18px}.hero-v2-marquee{margin-inline:-18px}
  .whats-float{opacity:0;pointer-events:none;transform:translateY(12px);transition:opacity .25s,transform .25s}
  .whats-float.on{opacity:1;pointer-events:auto;transform:none}
}
.hero.hero-v2{display:block;min-height:0}
.hero-v2 .hero-v2-main{padding-top:clamp(40px,5vw,72px)}
.hero-v2 .hero-v2-main.hero-single{min-height:0;align-items:end}
.hero.hero-v2{padding-top:0;padding-bottom:0}

/* ===== Paleta final: marfim no claro e preto no escuro ===== */
[data-theme="dark"],[data-theme="system"]{--sun:#e6c27a}
.bg{background:radial-gradient(48% 35% at 87% -5%,color-mix(in srgb,var(--coral) 18%,transparent),transparent 70%),radial-gradient(55% 35% at 10% 23%,color-mix(in srgb,var(--lime) 16%,transparent),transparent 70%),radial-gradient(40% 30% at 50% 100%,color-mix(in srgb,var(--violet) 12%,transparent),transparent 70%)}

/* ===== Escuro refinado: carvão, café, cobre e oliva ===== */
[data-theme="dark"]{
  --paper:#0d0b09;--paper-2:#17120e;--ink:#f8eee2;--fg:#f8eee2;--ink-2:#221711;
  --mut:#bca99a;--mut-2:#857366;--lime:#f6b36a;--lime-2:#e88a45;--violet:#c77a5c;--coral:#ff9b5f;
  --line:rgba(244,238,229,.18);--line-2:rgba(244,238,229,.34);
  --theme-bg:#0d0b09;--theme-fg:#f8eee2;--theme-muted:#bca99a;--theme-panel:#17120e;--theme-line:rgba(248,238,226,.18);
  --home-bg:#0d0b09;--home-fg:#f8eee2;--home-panel:#24160f;--home-muted:#bca99a;--home-line:rgba(248,238,226,.18)
}
@media(prefers-color-scheme:dark){
  [data-theme="system"]{
    --paper:#11100f;--paper-2:#1d1a17;--ink:#f4eee5;--fg:#f4eee5;--ink-2:#28231f;
    --mut:#b9afa3;--mut-2:#81776d;--lime:#b5b978;--lime-2:#949957;--violet:#9c8e83;--coral:#d48662;
    --line:rgba(244,238,229,.18);--line-2:rgba(244,238,229,.34);
    --theme-bg:#11100f;--theme-fg:#f4eee5;--theme-muted:#b9afa3;--theme-panel:#1d1a17;--theme-line:rgba(244,238,229,.18);
    --home-bg:#11100f;--home-fg:#f4eee5;--home-panel:#28221e;--home-muted:#b9afa3;--home-line:rgba(244,238,229,.18)
  }
}
[data-theme="dark"] .hero-v2,[data-theme="dark"] .preview-window,[data-theme="dark"] .signal-board,
[data-theme="dark"] .motion,[data-theme="dark"] .contact{background:var(--home-panel)!important;color:var(--home-fg)}
@media(prefers-color-scheme:dark){
  [data-theme="system"] .hero-v2,[data-theme="system"] .preview-window,[data-theme="system"] .signal-board,
  [data-theme="system"] .motion,[data-theme="system"] .contact{background:var(--home-panel)!important;color:var(--home-fg)}
}

/* Contraste do CTA dentro do menu mobile */
[data-theme="dark"] .nav-mobile a.btn.lime,
[data-theme="system"] .nav-mobile a.btn.lime{background:var(--coral)!important;color:#24150d!important}
[data-theme="dark"] .nav-mobile a.btn.lime:hover,
[data-theme="system"] .nav-mobile a.btn.lime:hover{background:var(--lime)!important;color:#24150d!important}

/* ===== Tela principal: acabamento editorial e profissional ===== */
.hero-v2 .hero-v2-main{grid-template-columns:minmax(0,1.18fr) minmax(280px,.82fr);gap:clamp(44px,8vw,128px);align-items:center;padding-block:clamp(72px,9vw,128px) clamp(62px,7vw,96px)}
.hero-v2 h1{font-size:clamp(3rem,5.6vw,6rem);line-height:.92;letter-spacing:-.075em;max-width:11ch}
.hero-v2 h1 .serif{font-size:1.02em;color:#f29a63}
.hero-v2 .hero-meta{margin-bottom:28px;letter-spacing:.16em}
.hero-v2 .lead{max-width:45ch;margin:26px 0 30px;color:color-mix(in srgb,var(--home-fg) 64%,transparent)}
.hero-v2 .hero-v2-proof{margin-top:42px;border-color:color-mix(in srgb,var(--home-fg) 16%,transparent);color:color-mix(in srgb,var(--home-fg) 56%,transparent)}
.hero-v2 .hero-v2-proof strong{color:var(--coral)}
.hero-v2 .hero-note{justify-self:end;width:min(100%,360px);max-width:none;padding:28px 28px 30px;border:1px solid color-mix(in srgb,var(--home-fg) 16%,transparent);border-top:2px solid var(--coral);background:color-mix(in srgb,var(--home-panel) 76%,transparent);box-shadow:0 24px 70px rgba(0,0,0,.2);backdrop-filter:blur(16px)}
.hero-v2 .hero-note-number{margin-bottom:42px;color:var(--coral);letter-spacing:.16em}
.hero-v2 .hero-note strong{display:block;margin-bottom:14px;color:var(--home-fg);font-size:clamp(1.35rem,2vw,1.75rem);line-height:1.08;letter-spacing:-.045em}
.hero-v2 .hero-note p{margin-bottom:24px;color:var(--home-muted);font-size:.92rem;line-height:1.65}
.hero-v2 .hero-note .text-link{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;border-color:color-mix(in srgb,var(--home-fg) 30%,transparent)}
.hero-v2 .hero-v2-marquee{border-top-color:color-mix(in srgb,var(--home-fg) 12%,transparent);color:color-mix(in srgb,var(--home-fg) 42%,transparent)}
@media(max-width:980px){.hero-v2 .hero-v2-main{grid-template-columns:1fr;gap:54px;padding-block:68px 76px}.hero-v2 .hero-note{justify-self:start;width:min(100%,520px)}}
@media(max-width:640px){.hero-v2 .hero-v2-main{gap:42px;padding-block:48px 58px}.hero-v2 h1{font-size:clamp(2.8rem,13.5vw,4.9rem);line-height:.94;max-width:11ch}.hero-v2 .hero-meta{margin-bottom:24px}.hero-v2 .lead{font-size:.95rem;margin:22px 0 26px}.hero-v2 .hero-v2-proof{margin-top:34px}.hero-v2 .hero-note{padding:24px 22px 26px}.hero-v2 .hero-note-number{margin-bottom:30px}}

/* ===== Café Brasa: ritmo mais compacto, sem vazios artificiais ===== */
.dx-cafe .dx-nav{padding-block:18px}
.dx-cafe .cf-hero{padding-bottom:clamp(28px,4vw,54px)}
.dx-cafe .cf-copy p{margin-top:16px}
.dx-cafe .cf-cta{margin-top:22px}
.dx-cafe .cf-stats{gap:26px;margin-top:30px;padding-top:18px}
.dx-cafe .cf-board{gap:clamp(18px,3vw,36px);padding-block:38px 56px!important}
.dx-cafe .cf-index>p{margin-top:12px}
.dx-cafe .cf-lead{gap:14px;margin-bottom:8px}
.dx-cafe .cf-lead div{padding:16px}
.dx-cafe .cf-torra{padding-block:52px 64px!important}
.dx-cafe .cf-reserva{padding-block:44px!important}
.dx-cafe .dx-info{gap:28px;padding-block:38px}
.dx-cafe .dx-faq{gap:34px;padding-block:40px 62px}
.dx-cafe .dx-foot{padding-block:22px 42px}
