/* gercozzi.com · base compartilhada da home
   Conceito: "a luz entrou". Papel quente, tinta, um dourado. Irmã clara do Blindspot e da Founder House.
   Fontes: Mountriel (display) + Inter (texto). Sem itálico. Cantos retos, linhas de 1px, zero sombra. */
@font-face{font-family:"Mountriel";src:url("fonts/Mountriel-Regular.woff2") format("woff2"),url("fonts/Mountriel-Regular.otf") format("opentype");font-weight:400;font-style:normal;font-display:swap}
/* Inter auto-hospedada (subconjunto latino, @fontsource/inter 5.1): sem ida ao Google Fonts */
@font-face{font-family:"Inter";src:url("fonts/Inter-latin-300.woff2") format("woff2");font-weight:300;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";src:url("fonts/Inter-latin-400.woff2") format("woff2");font-weight:400;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Inter";src:url("fonts/Inter-latin-500.woff2") format("woff2");font-weight:500;font-style:normal;font-display:swap;unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

:root{
  color-scheme:light;
  --paper:#F2EEE5; --paper-2:#E9E3D4; --paper-3:#DED7C5;
  --ink:#0F0E0B; --ink-2:#17150F;
  --ink-80:rgba(15,14,11,.8); --ink-60:rgba(15,14,11,.6); --ink-40:rgba(15,14,11,.4); --ink-20:rgba(15,14,11,.2); --ink-12:rgba(15,14,11,.12);
  --cream:#F3E9CC; --cream-80:rgba(243,233,204,.8); --cream-60:rgba(243,233,204,.6); --cream-40:rgba(243,233,204,.4); --cream-20:rgba(243,233,204,.2); --cream-10:rgba(243,233,204,.1);
  --gold:#C9AE71; --gold-deep:#745F2B; --olive:#6E6650; --blood:#980000; --ember:#D11F25;
  --display:"Mountriel",Georgia,"Times New Roman",serif;
  --sans:"Inter",system-ui,-apple-system,"Segoe UI",sans-serif;
  --gutter:clamp(20px,5vw,72px);
  --max:1360px;
  --ease:cubic-bezier(.22,.8,.22,1);
  --lens-x:50%; --lens-y:50%; --lens-r:200px;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;background:var(--paper)}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img,video,svg{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;padding:0;cursor:pointer}
p,h1,h2,h3,h4,figure{margin:0}
::selection{background:var(--gold-deep);color:var(--paper)}
:focus-visible{outline:1px solid var(--gold-deep);outline-offset:3px}

.wrap{max-width:var(--max);margin-inline:auto;padding-inline:var(--gutter)}
.section{padding-block:clamp(88px,12vw,168px);position:relative}
.section--line{border-top:1px solid var(--ink-12)}

/* tipografia */
.eyebrow{font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive);font-weight:500;display:flex;align-items:center;gap:12px}
.eyebrow::before{content:"";width:28px;height:1px;background:var(--gold-deep);flex:none}
.display{font-family:var(--display);font-weight:400;font-size:clamp(52px,9.5vw,144px);line-height:.92;letter-spacing:-.015em;text-wrap:balance}
.h1{font-family:var(--display);font-weight:400;font-size:clamp(40px,6vw,84px);line-height:.98;letter-spacing:-.01em;text-wrap:balance}
.h2{font-family:var(--display);font-weight:400;font-size:clamp(32px,4.4vw,58px);line-height:1.04;text-wrap:balance}
.h3{font-family:var(--display);font-weight:400;font-size:clamp(24px,2.4vw,32px);line-height:1.15}
.lead{font-size:clamp(17px,1.5vw,21px);line-height:1.55;color:var(--ink-80);max-width:56ch;text-wrap:pretty}
.dim{color:var(--ink-40)}
.num{font-variant-numeric:tabular-nums}

/* header: fixo, troca de cor conforme o painel embaixo dele (data-mode no <html>) */
.header{position:fixed;inset:0 0 auto;z-index:60;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px var(--gutter);color:var(--paper);mix-blend-mode:difference;transition:padding .4s var(--ease)}
.header.is-scrolled{padding-block:14px}
.brand{font-family:var(--display);font-size:22px;line-height:1;display:flex;align-items:center;gap:12px}
.brand svg{width:22px;height:22px}
.nav{display:flex;align-items:center;gap:clamp(18px,2.5vw,36px);font-size:12px;letter-spacing:.14em;text-transform:uppercase;font-weight:500}
.nav a{opacity:.62;transition:opacity .25s;position:relative}
.nav a::after{content:"";position:absolute;left:0;right:100%;bottom:-6px;height:1px;background:currentColor;transition:right .3s var(--ease)}
.nav a:hover{opacity:1}
.nav a:hover::after{right:0}
@media (max-width:760px){.nav{display:none}}

/* botões: retângulo reto, plano que sobe no hover */
.btn{display:inline-flex;align-items:center;gap:14px;height:54px;padding:0 26px;border:1px solid var(--ink-40);color:var(--ink);font-size:12px;letter-spacing:.16em;text-transform:uppercase;font-weight:500;white-space:nowrap;position:relative;overflow:hidden;isolation:isolate;transition:border-color .3s,color .3s}
.btn::before{content:"";position:absolute;inset:0;background:var(--ink);transform:translateY(101%);transition:transform .45s var(--ease);z-index:-1}
.btn:hover{color:var(--paper);border-color:var(--ink)}
.btn:hover::before{transform:none}
.btn--solid{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.btn--solid::before{background:var(--gold-deep)}
.btn--solid:hover{border-color:var(--gold-deep)}
.btn--light{border-color:var(--cream-40);color:var(--cream)}
.btn--light::before{background:var(--cream)}
.btn--light:hover{color:var(--ink);border-color:var(--cream)}
.btn--sm{height:42px;padding:0 18px;font-size:11px}
.btn .arrow{display:inline-block;transition:transform .35s var(--ease)}
.btn:hover .arrow{transform:translateX(5px)}

/* a lente: camada mascarada por um círculo que segue o cursor */
.lens-layer{position:absolute;inset:0;pointer-events:none;
  -webkit-mask:radial-gradient(circle var(--lens-r) at var(--lens-x) var(--lens-y),#000 0 55%,transparent 100%);
          mask:radial-gradient(circle var(--lens-r) at var(--lens-x) var(--lens-y),#000 0 55%,transparent 100%)}
.lens-ring{position:absolute;left:var(--lens-x);top:var(--lens-y);width:calc(var(--lens-r)*2);height:calc(var(--lens-r)*2);transform:translate(-50%,-50%);border-radius:50%;border:1px solid rgba(243,233,204,.35);pointer-events:none}

/* revelar ao rolar (fallback sem GSAP) */
.r{opacity:.001;transform:translateY(22px);transition:opacity .9s var(--ease),transform .9s var(--ease)}
.r.in{opacity:1;transform:none}
.d1{transition-delay:.08s}.d2{transition-delay:.16s}.d3{transition-delay:.24s}.d4{transition-delay:.32s}
@media (prefers-reduced-motion:reduce){.r{opacity:1;transform:none;transition:none}.lens-ring{display:none}}

/* números grandes */
.stats{display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid var(--ink-12)}
.stat{padding:clamp(24px,3vw,40px) clamp(0px,2vw,32px);border-right:1px solid var(--ink-12);min-width:0}
.stat:first-child{padding-left:0}.stat:last-child{border-right:0}
.stat__num{font-family:var(--display);font-size:clamp(44px,6vw,92px);line-height:1;white-space:nowrap;font-variant-numeric:tabular-nums}
.stat__num small{font-size:.4em;color:var(--gold-deep);vertical-align:.75em;margin-right:.1em;font-family:var(--sans);font-weight:400;letter-spacing:.04em}
.stat__label{margin-top:10px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive)}
@media (max-width:720px){.stat{padding:18px 10px}.stat:first-child{padding-left:0}.stat__num{font-size:clamp(24px,7.5vw,36px)}.stat__label{font-size:9px;letter-spacing:.14em}}

/* rodapé */
.footer{border-top:1px solid var(--ink-12);padding-block:64px 32px;font-size:14px;color:var(--ink-60)}
.footer__top{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:32px}
.footer__brand{font-family:var(--display);font-size:30px;color:var(--ink);line-height:1}
.footer h4{margin-bottom:14px;font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--olive);font-weight:500}
.footer a{display:block;padding:3px 0;transition:color .25s}
.footer a:hover{color:var(--ink)}
.footer__bottom{margin-top:56px;padding-top:24px;border-top:1px solid var(--ink-12);display:flex;justify-content:space-between;gap:16px;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--olive)}
@media (max-width:720px){.footer__top{grid-template-columns:1fr 1fr}.footer__top>:first-child{grid-column:1/-1}.footer__bottom{flex-direction:column}}
