:root{
  --bg:#0e0b08;--bg2:#17120d;--bg3:#211a12;
  --ink:#f6f0e6;--muted:#d9cfbf;--soft:#b8ac99;
  --sol:#f39a1e;--ouro:#f7c948;--verde:#2f9a55;--verm:#c8322b;
  --line:rgba(244,237,226,.14);--line2:rgba(244,237,226,.32);
  --ease:cubic-bezier(.22,.8,.24,1);--ease2:cubic-bezier(.65,0,.35,1);
  --tshadow:0 1px 2px rgba(8,6,4,.95),0 3px 12px rgba(8,6,4,.78),0 10px 44px rgba(8,6,4,.8);
  --display:"Archivo",system-ui,sans-serif;--body:"Manrope",system-ui,sans-serif;--mono:"JetBrains Mono",ui-monospace,monospace;
}
*,*::before,*::after{box-sizing:border-box}
html{overflow-x:hidden;overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;overflow-x:hidden;overflow-x:clip;background:var(--bg);color:var(--ink);font:400 18px/1.6 var(--body);-webkit-font-smoothing:antialiased;animation:pagein .9s var(--ease) both}
@keyframes pagein{from{opacity:0}to{opacity:1}}
img{max-width:100%;display:block}
a{color:inherit}
h1,h2,h3{font-family:var(--display);font-weight:800;line-height:1.05;letter-spacing:-.015em;margin:0}
p{margin:0}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.skip{position:absolute;left:12px;top:-60px;z-index:100;background:var(--sol);color:#1a1006;padding:10px 16px;border-radius:10px;font-weight:700;text-decoration:none;transition:top .3s var(--ease)}
.skip:focus{top:12px}
:focus-visible{outline:2px solid var(--ouro);outline-offset:3px;border-radius:6px}
.wrap{width:min(1180px,calc(100% - 40px));margin:0 auto}

/* ambiente fixo: um brilho quente que anda devagar atrás da página */
.ambient{position:fixed;inset:0;z-index:-1;pointer-events:none;background:var(--bg)}
.ambient::before{content:"";position:absolute;width:80vmax;height:80vmax;left:50%;top:60%;border-radius:50%;
  background:radial-gradient(circle,rgba(243,154,30,.10) 0%,rgba(243,154,30,.03) 40%,transparent 68%);
  transform:translate(-50%,-50%);animation:drift 70s ease-in-out -12s infinite alternate}
.ambient::after{content:"";position:absolute;inset:0;opacity:.05;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}
@keyframes drift{from{transform:translate(-62%,-48%)}to{transform:translate(-38%,-56%)}}

/* o fio do horizonte: assinatura do site (as três cores do RS) */
.horizonte{display:block;height:3px;width:min(220px,40%);border-radius:3px;background:linear-gradient(90deg,var(--verde) 0 33%,var(--verm) 33% 66%,var(--ouro) 66% 100%);transform-origin:left;transform:scaleX(0);transition:transform 1.2s var(--ease) .15s}
.in .horizonte,.horizonte.in{transform:scaleX(1)}

/* navegação */
.nav{position:fixed;top:0;left:0;right:0;z-index:50;transition:background .5s var(--ease),border-color .5s var(--ease);border-bottom:1px solid transparent}
.nav.solid{background:rgba(14,11,8,.82);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-color:var(--line)}
.nav .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;height:72px}
.brand{display:flex;align-items:center;gap:10px;text-decoration:none}
.brand img{width:48px;height:auto}
.brand span{font-family:var(--display);font-weight:800;letter-spacing:.03em;font-size:21px}
.brand b{color:var(--sol);font-weight:800}
.nav ul{display:flex;gap:26px;list-style:none;margin:0;padding:0}
.nav ul a{text-decoration:none;color:var(--ink);font-weight:600;font-size:16px;transition:color .3s var(--ease)}
.nav ul a:hover{color:var(--ink)}
@media (max-width:880px){.nav ul{display:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font:700 16px/1 var(--body);text-decoration:none;border-radius:999px;padding:16px 26px;cursor:pointer;border:0;transition:transform .35s var(--ease),background .35s var(--ease),box-shadow .35s var(--ease);text-shadow:none}
.btn svg{width:20px;height:20px;flex:none}
.btn-sol{background:var(--sol);color:#1d1106;box-shadow:0 10px 30px -10px rgba(243,154,30,.7)}
.btn-sol:hover{transform:translateY(-2px);background:#ffab37;box-shadow:0 16px 40px -12px rgba(243,154,30,.85)}
.btn-ghost{background:rgba(244,237,226,.06);color:var(--ink);border:1px solid var(--line2)}
.btn-ghost:hover{transform:translateY(-2px);background:rgba(244,237,226,.12)}
.btn-sm{padding:13px 20px;font-size:15px}
@media (pointer:coarse){.btn{min-height:48px}}

.kicker{font:700 15px/1.2 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ouro)}
.lede{color:var(--muted);font-size:clamp(18px,1.5vw,20px);max-width:56ch}

section{position:relative;padding:clamp(80px,11vw,150px) 0}
.sec-head{display:grid;gap:16px;margin-bottom:clamp(36px,5vw,60px)}
.sec-head h2{font-size:clamp(30px,4.2vw,52px);max-width:18ch}

/* entradas */
.rv{opacity:0;transform:translateY(26px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.in .rv,.rv.in{opacity:1;transform:none}
.in .rv:nth-child(2){transition-delay:.08s}.in .rv:nth-child(3){transition-delay:.16s}.in .rv:nth-child(4){transition-delay:.24s}.in .rv:nth-child(5){transition-delay:.32s}.in .rv:nth-child(6){transition-delay:.4s}
.in.done .rv:nth-child(n){transition-delay:0s}

/* rodapé */
footer{border-top:1px solid var(--line);padding:60px 0 40px;color:var(--muted);font-size:16px}
footer .cols{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px}
footer h3{font:700 14px/1 var(--body);letter-spacing:.14em;text-transform:uppercase;color:var(--ouro);margin-bottom:14px}
footer a{color:var(--muted);text-decoration:none}footer a:hover{color:var(--ink)}
footer .fine{margin-top:40px;display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;font-size:15px;color:var(--soft)}
@media (max-width:760px){footer .cols{grid-template-columns:1fr}}

/* botão flutuante do WhatsApp */
.wa-float{position:fixed;right:20px;bottom:20px;z-index:60;width:58px;height:58px;border-radius:50%;background:var(--sol);color:#1d1106;display:grid;place-items:center;box-shadow:0 14px 34px -10px rgba(243,154,30,.8);opacity:0;transform:translateY(18px) scale(.9);transition:opacity .5s var(--ease),transform .5s var(--ease);pointer-events:none}
.wa-float.show{opacity:1;transform:none;pointer-events:auto}
.wa-float svg{width:28px;height:28px}
.wa-float::after{content:"";position:absolute;inset:-6px;border-radius:50%;border:2px solid rgba(243,154,30,.55);animation:ping 3.6s var(--ease) -1s infinite}
@keyframes ping{0%{transform:scale(.85);opacity:.9}70%,100%{transform:scale(1.35);opacity:0}}

/* galeria ampliada */
.lb{position:fixed;inset:0;z-index:90;background:rgba(10,8,6,.92);display:grid;place-items:center;padding:24px;opacity:0;pointer-events:none;transition:opacity .4s var(--ease)}
.lb.open{opacity:1;pointer-events:auto}
.lb img{max-height:86vh;width:auto;border-radius:14px;transform:scale(.97);transition:transform .5s var(--ease)}
.lb.open img{transform:none}
.lb button{position:absolute;top:18px;right:18px;width:48px;height:48px;border-radius:50%;border:1px solid var(--line2);background:rgba(244,237,226,.08);color:var(--ink);font-size:22px;cursor:pointer}

body.paused *,body.paused *::before,body.paused *::after{animation-play-state:paused!important}
.off *,.off *::before,.off *::after{animation-play-state:paused!important}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important;transition-delay:0s!important;scroll-behavior:auto!important}
  .rv{opacity:1;transform:none}
  .horizonte{transform:scaleX(1)}
  .wa-float{opacity:1;transform:none;pointer-events:auto}
}

/* Instagram */
.nav-cta{display:flex;align-items:center;gap:14px}
.ig-link{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;color:var(--ink);border:1px solid var(--line2);transition:color .3s var(--ease),border-color .3s var(--ease)}
.ig-link:hover{color:var(--sol);border-color:var(--sol)}
.ig-link svg{width:22px;height:22px}
.ig-foot{display:inline-flex;align-items:center;gap:8px;margin-top:8px;text-decoration:none;color:var(--ink)}
.ig-foot:hover{color:var(--sol)}
.ig-foot svg{width:20px;height:20px}
@media (max-width:560px){.ig-link{display:none}}
