/* Atena / redesign integral. Uma única camada de estilos para toda a página. */
:root{
  --ink:#072e2d;--deep:#052423;--green:#145e51;--gold:#dec493;
  --paper:#f5f5ef;--white:#fff;--muted:#61716a;--line:#d9dfd6;
  --body:'DM Sans',Arial,sans-serif;--heading:'Manrope',Arial,sans-serif;
  color-scheme:light;scroll-behavior:smooth;scroll-padding-top:105px;
}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.75 var(--body);-webkit-font-smoothing:antialiased}
h1,h2,h3,p,figure{margin:0}
h1,h2,h3{font-family:var(--heading);font-weight:500}
h1{font-size:clamp(2.75rem,4.45vw,4.15rem);line-height:1.13;letter-spacing:-.055em;text-wrap:balance}
h2{font-size:clamp(2.3rem,3.5vw,3.4rem);line-height:1.16;letter-spacing:-.052em;text-wrap:balance}
h3{font-size:1.2rem;line-height:1.4;letter-spacing:-.025em}
em{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.043em}
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;cursor:pointer}
img{display:block;width:auto;max-width:100%;height:auto}
svg{display:block}
a,button,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}
:focus-visible{outline:3px solid #b28a41;outline-offset:6px}
::selection{background:var(--gold);color:var(--ink)}
[hidden]{display:none!important}
.container{width:min(1240px,calc(100% - 96px));margin-inline:auto}
.section{padding:108px 0;position:relative}
.white{background:var(--white)}
.dark{background:var(--ink);color:var(--paper)}
.dark em{color:var(--gold)}
.icon-defs{position:absolute;inline-size:0;block-size:0;overflow:hidden}
.icon{height:24px;width:24px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.eyebrow{display:flex;align-items:center;gap:12px;font-size:.8125rem;font-weight:600;letter-spacing:.13em;line-height:1.7;color:var(--green);margin-bottom:23px}
.eyebrow::before{content:'';width:20px;height:1px;background:currentColor;flex:none}
.dark .eyebrow{color:var(--gold)}
.prose{color:var(--muted);max-width:640px}
.prose p+p{margin-top:18px}
.dark .prose{color:#c7d7d0}
.prose .emphasis{color:var(--green);font-weight:500;font-size:1.15rem}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:58px;padding:17px 23px;background:var(--green);color:white;border:1px solid transparent;border-radius:4px;font-size:.875rem;font-weight:500;line-height:1.4;transition:background .2s,box-shadow .2s,transform .2s;max-width:100%;text-align:left}
.button .icon{width:20px;height:20px}
.button:hover{background:var(--ink);transform:translateY(-2px);box-shadow:0 8px 24px #0524231a}
.button.gold{background:var(--gold);color:var(--ink)}
.button.gold:hover{background:#efdeb9}
.text-link{display:inline-flex;align-items:center;gap:26px;width:fit-content;border-bottom:1px solid currentColor;padding:10px 0;line-height:1.5;font-size:.875rem;font-weight:500;color:var(--green);max-width:100%}
.text-link .icon{width:20px;height:20px;transition:transform .2s}
.text-link:hover .icon{transform:translate(3px,-3px)}
.split-heading{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:100px;margin-bottom:54px}
.split-heading .prose{padding-top:42px}
.signature{font-family:Georgia,'Times New Roman',serif;font-size:clamp(2rem,4.3vw,4rem);font-style:italic;line-height:1.2;letter-spacing:-.045em}
.skip-link{position:fixed;z-index:100;top:8px;left:12px;background:white;color:var(--ink);padding:14px;transform:translateY(-160%)}
.skip-link:focus{transform:none}

/* Navegação: leve na abertura, sólida durante a leitura. */
.site-header{position:absolute;z-index:40;inset:0 0 auto;color:var(--paper);background:var(--ink);transition:box-shadow .2s}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:100px;border-bottom:1px solid #ffffff20}
.brand{flex:none}.brand img{width:174px}
.desktop-nav{display:flex;gap:28px;font-size:.875rem}
.desktop-nav a{position:relative;padding:10px 0;color:#d8e2dd}
.desktop-nav a::after{content:'';position:absolute;left:0;right:100%;bottom:3px;height:1px;background:var(--gold);transition:right .2s}
.desktop-nav a:hover::after,.desktop-nav a.active::after{right:0}
.header-cta{display:flex;align-items:center;gap:20px;border:1px solid #ffffff3d;border-radius:4px;font-size:.75rem;padding:12px 16px;letter-spacing:.03em;line-height:1.5}
.header-cta .icon{width:18px;height:18px}.header-cta:hover{background:#ffffff0a;border-color:var(--gold)}
.site-header.is-scrolled{position:fixed;box-shadow:0 6px 24px #06232220;background:#072e2df5;backdrop-filter:blur(12px)}
.site-header.is-scrolled .header-inner{min-height:76px;border-color:transparent}
.reading-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:var(--gold);transform:scaleX(0);transform-origin:left}
.menu-toggle{display:none;border:1px solid #ffffff38;background:transparent;border-radius:4px;width:44px;height:44px;padding:11px}
.menu-toggle span{display:block;height:1px;background:currentColor;margin:6px 0;transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)}
.mobile-menu{padding:14px 24px 26px;background:var(--ink);border-top:1px solid #ffffff24;max-height:calc(100dvh - 76px);overflow:auto}
.mobile-menu a{display:block;padding:16px 0;border-bottom:1px solid #ffffff20;font-size:1.05rem}
.menu-open{overflow:hidden}

/* 01 / Abertura: marca, copy e fotografia em planos independentes. */
.hero{padding:163px 0 0;overflow:hidden}
.hero-grid{display:grid;grid-template-columns:1.13fr 1fr;gap:65px;align-items:center;padding-bottom:58px}
.hero-copy{padding:20px 0}
.hero-copy h1 em{display:inline}
.hero-intro{color:#cad8d1;max-width:560px;margin-top:26px;line-height:1.8}
.hero-copy .button{margin-top:31px}
.hero-visual{position:relative;margin-right:-28px;padding-bottom:34px;min-width:0}
.hero-photo{overflow:hidden;border-radius:2px 80px 2px 2px;aspect-ratio:.94;background:#0d4540}
.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:48% 65%}
.hero-brand{position:absolute;bottom:0;left:-34px;right:58px;display:flex;align-items:center;justify-content:center;gap:28px;padding:24px;background:#103f39;border:1px solid #d9bf8d3d;box-shadow:0 20px 40px #041d2340}
.hero-brand>img:first-child{width:48px;max-height:60px}.hero-brand>img:last-child{width:155px}
.brand-rule{height:44px;width:1px;background:#dec49350}
.photo-link{position:absolute;right:-1px;bottom:1px;background:var(--gold);color:var(--ink);border-radius:50%;padding:17px;transition:transform .2s}.photo-link:hover{transform:rotate(45deg)}
.trust-strip{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid #ffffff25;padding:25px 0;color:#d6e3da;font-size:.875rem;line-height:1.6}
.trust-strip i{color:var(--gold);font-style:normal;font-size:1rem}

/* 02 / Credencial: números legíveis, sem avaliações inventadas. */
.proof{padding:76px 0}
.proof-grid{display:grid;grid-template-columns:1.2fr 1.1fr .75fr;gap:42px;align-items:center}
.proof h2{font-size:clamp(1.8rem,2.7vw,2.4rem)}
.proof .eyebrow{font-size:.75rem;letter-spacing:.1em}
.proof-body .prose{font-size:1rem;line-height:1.8}
.proof-body .text-link{margin-top:12px}
.proof-stat{border-left:1px solid var(--line);padding-left:35px}
.metric{display:flex;flex-direction:column;color:var(--green);line-height:1.2}
.metric strong{font:400 clamp(4rem,6.1vw,6.2rem)/1 var(--heading);letter-spacing:-.075em;white-space:nowrap}
.metric>span{font-size:.9375rem;color:var(--muted);margin-top:16px;letter-spacing:.015em}

/* 03 / Processo: todas as etapas disponíveis, recolhíveis por escolha. */
.process-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:120px;align-items:start}
.sticky-heading{position:sticky;top:116px}
.sticky-heading h2{max-width:360px;font-size:clamp(2.75rem,4.1vw,4rem)}
.sticky-heading .prose{margin-top:25px;max-width:360px}
.sticky-heading .button{margin-top:32px}
.process-list{border-top:1px solid var(--line)}
.process-step{border-bottom:1px solid var(--line);padding:0 4px}
.process-step summary{position:relative;display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none;padding:24px 38px 20px 0;font:500 1.125rem/1.5 var(--heading);letter-spacing:-.015em}
.process-step summary::-webkit-details-marker{display:none}
.step-index{color:#709285;font:400 1rem/1.4 var(--body);min-width:28px}
.toggle-icon{position:absolute;right:2px;top:29px;width:15px;height:15px}
.toggle-icon::before,.toggle-icon::after{content:'';position:absolute;left:0;top:7px;height:1px;width:15px;background:var(--green)}
.toggle-icon::after{transform:rotate(90deg);transition:transform .2s}
.process-step[open] .toggle-icon::after{transform:rotate(0)}
.step-body{padding:0 30px 25px 50px;color:var(--muted)}
.process-step[open] .step-index{color:var(--green)}


/* 04 / Produtos: carrossel editorial com espaço dedicado às fotos. */
.products{background:#edf1e8;overflow:hidden}
.products-heading{display:grid;grid-template-columns:1.05fr .95fr;gap:90px;align-items:end;margin-bottom:48px}
.products-title h2{max-width:620px}
.products-intro{display:flex;align-items:flex-end;justify-content:space-between;gap:34px}
.products-intro .prose{max-width:520px}
.product-controls{display:flex;gap:10px;flex:none;padding-bottom:3px}
.round-button{width:48px;height:48px;border-radius:50%;border:1px solid #9fb1a2;background:transparent;display:grid;place-items:center;font-size:1.25rem;line-height:1;transition:background .2s,border-color .2s,transform .2s}
.round-button:hover{background:var(--ink);border-color:var(--ink);color:white;transform:translateY(-2px)}
.products-carousel{margin-right:calc(50% - 50vw);padding-right:max(48px,calc(50vw - 620px));min-width:0}
.product-track{display:flex;gap:18px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding:1px 1px 20px;scrollbar-width:thin;scrollbar-color:#78927d transparent;overscroll-behavior-inline:contain}
.product-card{flex:0 0 clamp(250px,23.5vw,310px);scroll-snap-align:start;background:var(--white);border:1px solid #d3ddd0;min-width:0;transition:transform .25s,border-color .25s,box-shadow .25s}
.product-card:hover{transform:translateY(-5px);border-color:#8fa592;box-shadow:0 16px 34px #123d2f12}
.product-media{position:relative;aspect-ratio:4/4.45;background:linear-gradient(145deg,#f8faf5,#e2e9df);overflow:hidden;border-bottom:1px solid #d8e1d5;display:grid;place-items:center}
.product-media::before{content:'';position:absolute;inset:16px;border:1px solid #b9c7b84f;pointer-events:none}
.product-media img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1}
.product-placeholder{display:grid;place-items:center;gap:14px;color:#7c9082;text-align:center;padding:30px;font-size:.68rem;font-weight:600;letter-spacing:.13em;line-height:1.6}
.product-placeholder img{width:42px;height:auto;opacity:.35;object-fit:contain}
.product-card-body{padding:22px 22px 21px}
.product-card-top{display:flex;justify-content:space-between;align-items:flex-start;gap:15px;min-height:58px}
.product-card h3{font-size:1.08rem;line-height:1.35;color:var(--ink);max-width:220px}
.product-number{color:#789183;font-size:.72rem;letter-spacing:.08em;line-height:1.6;flex:none}
.product-consult{display:flex;align-items:center;justify-content:space-between;gap:16px;border-top:1px solid #e0e6de;margin-top:18px;padding-top:15px;color:var(--green);font-size:.74rem;font-weight:600;letter-spacing:.06em}
.product-consult .icon{width:17px;height:17px;transition:transform .2s}
.product-consult:hover .icon{transform:translate(3px,-3px)}
.products-bottom{display:flex;justify-content:space-between;align-items:flex-start;gap:55px;margin-top:26px;padding-top:23px;border-top:1px solid #c9d5c8}
.products-note{max-width:730px;color:#65776d;font-size:.84rem;line-height:1.75}
.products-bottom .text-link{flex:none}

/* 05 / Rigor técnico: seis cartões, uma hierarquia. */
.quality{background:var(--deep)}
.quality-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:#ffffff23;border:1px solid #ffffff23}
.quality-card{padding:33px 30px;background:var(--deep);transition:background .25s;min-width:0}
.quality-card:first-child{background:#0d3f35}
.quality-card:hover{background:#10483e}
.card-icon{color:var(--gold);margin-bottom:33px}
.card-icon .icon{width:33px;height:33px;stroke-width:1.1}
.quality-card h3{font-size:.9375rem;letter-spacing:.02em;line-height:1.6;max-width:280px;min-height:48px}
.quality-card p{color:#bccfc5;font-size:1rem;line-height:1.8;margin-top:16px}

/* 06 / Manifesto: grandes frases, sem esconder o conteúdo na animação. */
.manifesto{background:#e9eee5}
.manifesto-grid{display:grid;grid-template-columns:1fr 1fr;gap:110px}
.manifesto h2{max-width:540px}
.serif-lead{font:italic clamp(1.9rem,2.6vw,2.6rem)/1.3 Georgia,serif;color:var(--green);margin-top:18px;letter-spacing:-.025em}
.manifesto-symbol{width:75px;opacity:.35;margin-top:42px}
.manifesto-lines{padding-top:14px}
.manifesto-lines p{font:500 clamp(1.15rem,1.75vw,1.6rem)/1.5 var(--heading);letter-spacing:-.035em;padding:18px 0;border-bottom:1px solid #b7c9bb;transition:color .4s,padding-left .4s}
.manifesto-lines p:first-child{border-top:1px solid #b7c9bb}
.manifesto-lines p.is-current{color:var(--green);padding-left:16px;border-left:2px solid var(--green)}
.manifesto-end{margin-top:60px;padding-top:38px;border-top:1px solid #b7c9bb;display:flex;align-items:center;justify-content:space-between;gap:60px}
.manifesto-end .prose{max-width:520px}.manifesto-end .prose p+p{margin-top:5px}
.manifesto-end .signature{flex:none;color:var(--green);font-size:clamp(2rem,3.7vw,3.5rem)}

/* 07 / Estrutura: fotografias reais em composição larga. */
.structure-stage{display:grid;grid-template-columns:1.65fr 1fr;gap:16px;scroll-margin-top:106px}
.structure-stage>img{width:100%;height:440px;object-fit:cover}
.structure-main{object-position:50% 68%;border-radius:3px 3px 3px 44px}
.structure-detail{object-position:52% 52%;border-radius:3px 44px 3px 3px}
.structure-video-slot{grid-column:1/-1;background:var(--deep);border-radius:4px;overflow:hidden}
.structure-video-slot video{display:block;width:100%;max-height:640px}
.structure-terms{display:flex;justify-content:space-between;gap:16px;padding:25px 0;border-bottom:1px solid var(--line);font:500 1.05rem/1.6 var(--heading);letter-spacing:-.025em}
.structure-bottom{display:flex;align-items:center;justify-content:space-between;gap:80px;margin-top:28px}
.structure-bottom .prose{max-width:700px}.structure-bottom .prose p+p{margin-top:8px}
.structure-bottom .text-link{flex:none}

/* 08 / Entrega: todos os benefícios visíveis, sem carrossel ocultando texto. */
.experience{background:var(--paper)}
.delivery-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.delivery-item{background:white;border:1px solid var(--line);padding:30px;transition:transform .25s,border-color .25s;min-width:0}
.delivery-item:hover{transform:translateY(-4px);border-color:#7b9f87}
.delivery-icon{display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:#edf2e9;color:var(--green);border-radius:50%;margin-bottom:23px}
.delivery-item p{margin-top:12px;color:var(--muted);line-height:1.75}
.delivery-action{display:flex;align-items:center;justify-content:center;padding:30px;background:#e4ece0;border:1px solid #d0ddca}
.delivery-action .button{width:100%;max-width:285px}

/* 09 / Contato no meio da leitura. */
.service{padding:0 0 105px}
.service-panel{padding:64px;display:grid;grid-template-columns:1.1fr 1fr;column-gap:85px;border-radius:5px;background:#155444}
.service-panel h2{font-size:clamp(2.4rem,3.5vw,3.3rem)}
.service-action{align-self:center}
.service-action .button{margin-top:24px;font-size:.875rem;gap:18px}
.service-trust{grid-column:1/-1;display:flex;gap:20px;justify-content:space-between;border-top:1px solid #ffffff30;margin-top:40px;padding-top:24px;color:#d3e1d5;font-size:.875rem;line-height:1.5}
.service-trust i{color:var(--gold);font-style:normal}

/* 10 / História, em uma grade editorial assimétrica. */
.history-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:38px 105px;align-items:start}
.history-copy{grid-column:2;grid-row:1}
.history-copy .prose{margin-top:26px}
.history-photo{grid-column:1;grid-row:1/span 2;position:sticky;top:112px;align-self:start;padding:22px 0 0 22px}
.history-photo::before{content:'';position:absolute;top:0;left:0;width:calc(100% - 22px);height:calc(100% - 22px);border:1px solid #abbbab}
.history-photo img{position:relative;width:100%;height:620px;object-fit:cover;object-position:47% 40%}
.history-story{grid-column:2;grid-row:2}
.history-values{border-block:1px solid var(--line);padding:24px 0;margin-bottom:28px}
.history-values p{font:500 clamp(1.3rem,2vw,1.8rem)/1.5 var(--heading);letter-spacing:-.04em;color:var(--green)}
.history-values p+p{margin-top:6px}

/* 11 / Símbolo original da marca como assinatura, não uma ilustração falsa. */
.meaning{background:#092f2a;overflow:hidden}
.meaning-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:120px;align-items:center}
.meaning-mark{aspect-ratio:1;position:relative;display:grid;place-items:center;min-width:0}
.meaning-mark img{width:56%;position:relative}
.mark-orbit{position:absolute;inset:0;border:1px solid #c1a77b42;border-radius:50%}
.mark-orbit::before{content:'';position:absolute;inset:24px;border:1px solid #c1a77b24;border-radius:50%}
.meaning-copy h2{font-size:clamp(2.25rem,3.3vw,3.2rem)}
.meaning-copy .prose{margin-top:24px}
.meaning-values{display:grid;grid-template-columns:1fr 1fr;column-gap:25px;margin-top:28px;border-top:1px solid #ffffff24}
.meaning-values p{padding:14px 0;border-bottom:1px solid #ffffff24;color:#cbdacb;font-size:.9375rem}
.meaning-copy .signature{font-size:2.4rem;color:var(--gold);margin-top:28px}

/* 12 / Presença: pausa tipográfica. */
.presence{background:#e7ede2}
.presence-grid{display:grid;grid-template-columns:1.16fr .84fr;gap:110px;align-items:center}
.presence-title h2{font-size:clamp(2.5rem,4vw,3.8rem)}
.presence-title h2 em{color:var(--green)}
.presence .emphasis{font:italic 2rem/1.3 Georgia,serif;letter-spacing:-.035em;margin-top:22px}

/* 13 / Avaliações: prova real configurável, métrica com escala correta. */
.reviews-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:115px;align-items:center}
.reviews-grid h2{max-width:560px}
.reviews-grid .prose{margin-top:27px;max-width:560px}
.reviews-grid .text-link{margin-top:20px}
.review-seal{border:1px solid #c6d3bf;border-radius:50% 50% 3px 3px;background:#f0f3eb;display:flex;align-items:center;flex-direction:column;justify-content:center;min-height:390px;padding:40px 20px}
.review-seal>img{width:54px;margin-bottom:26px;opacity:.8}
.review-seal .metric{align-items:center;text-align:center}
.review-seal .metric strong{font-size:clamp(4rem,6vw,6rem)}
.reviews-carousel{margin-top:46px}
.review-track{display:flex;overflow-x:auto;gap:18px;padding:1px 1px 18px;scroll-snap-type:x mandatory;scrollbar-color:#7e9c84 transparent;scrollbar-width:thin}
.real-review{flex:0 0 calc((100% - 36px)/3);min-width:285px;scroll-snap-align:start;background:white;padding:28px;border:1px solid var(--line);border-top:2px solid #809d81;color:var(--ink)}
.real-review blockquote{margin:0 0 20px;font-size:1rem;line-height:1.85}
.real-review cite{font-size:.875rem;font-style:normal;font-weight:600}
.review-controls{display:flex;gap:8px;justify-content:flex-end}
.round-button{border:1px solid #bccab8;background:transparent;color:var(--green);width:44px;height:44px;display:grid;place-items:center;border-radius:50%}
.round-button:hover{background:#e7eee1}.round-button:disabled{opacity:.4;cursor:default}

/* 13 / Fechamento com foco na ação. */
.final{padding:112px 0 78px;isolation:isolate;overflow:hidden}
.final-inner{max-width:870px;margin:auto;text-align:center}
.final .eyebrow{justify-content:center}
.final h2{font-size:clamp(3rem,5.8vw,5.7rem);line-height:1.08}
.final .prose{max-width:610px;margin:28px auto 0}
.final .button{margin-top:32px}
.final-note{border-top:1px solid #ffffff26;padding-top:30px;margin-top:50px;color:#c5d5ca}
.final-note>p:first-child{font-size:.9375rem}
.final-note .signature{font-size:1.8rem;color:var(--gold);margin-top:12px}
.final-symbol{position:absolute;z-index:-1;right:-120px;bottom:-120px;width:500px;opacity:.035;pointer-events:none}
.footer{background:var(--deep);border-top:1px solid #ffffff19;padding:55px 0 28px;color:#b7cac1}
.footer-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:55px;font-size:.875rem;line-height:1.8}
.footer-brand img{width:174px;margin-bottom:20px}.footer-brand p{font-size:.75rem;letter-spacing:.025em}
.footer-registration p+p{margin-top:16px}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;border-top:1px solid #ffffff20;padding-top:25px;margin-top:36px;font-size:.8125rem}
.footer-social,.footer-policy{display:flex;flex-wrap:wrap;gap:10px}
.footer a:hover{color:var(--gold)}
.floating-contact{position:fixed;z-index:25;right:23px;bottom:23px;border:1px solid #ffffff70;border-radius:50%;background:var(--green);color:white;width:54px;height:54px;display:grid;place-items:center;box-shadow:0 6px 25px #001a2426;transition:transform .2s,background .2s}
.floating-contact:hover{transform:translateY(-4px);background:var(--ink)}
.floating-contact .icon{width:27px;height:27px}

/* Motion is enhancement only: content is never hidden while waiting for JS. */
.reveal.is-entering{animation:enter .7s cubic-bezier(.2,.65,.25,1) both}
@keyframes enter{from{transform:translateY(22px);opacity:.7}to{transform:none;opacity:1}}

@media(min-width:1600px){.hero-grid{gap:92px}.hero-visual{margin-right:-46px}}
@media(max-width:1120px){
  .container{width:calc(100% - 64px)}
  .desktop-nav{gap:18px}.header-inner{gap:20px}.header-cta{gap:10px;padding:12px;font-size:.6875rem}
  .hero-grid{gap:40px}.hero-visual{margin-right:0}.hero-brand{left:-15px;right:54px;gap:20px;padding:20px}
  .hero-brand>img:last-child{width:135px}.hero-brand>img:first-child{width:38px}
  .proof-grid{gap:26px;grid-template-columns:1fr 1.1fr .65fr}.proof-stat{padding-left:24px}.proof .metric strong{font-size:4.5rem}
  .process-grid,.split-heading,.manifesto-grid,.history-grid,.meaning-grid,.presence-grid,.reviews-grid{column-gap:65px}
  .products-heading{gap:60px}.product-card{flex-basis:285px}
  .service-panel{padding:45px;column-gap:50px}.quality-card,.delivery-item{padding:27px}
  .structure-bottom{gap:45px}.structure-bottom .text-link{flex:0 1 280px}
}
@media(max-width:900px){
  .section{padding:80px 0}.container{width:calc(100% - 48px)}
  .desktop-nav,.header-cta{display:none}.menu-toggle{display:block}.header-inner{min-height:86px}.site-header.is-scrolled .header-inner{min-height:72px}
  .hero{padding:135px 0 0}.hero-grid{gap:30px;grid-template-columns:1.1fr .9fr}.hero h1{font-size:2.75rem}
  .hero-photo{aspect-ratio:.7;border-top-right-radius:50px}.hero-brand{padding:18px;right:0;left:15px;gap:15px}.hero-brand>img:first-child{width:30px}.hero-brand>img:last-child{width:110px}.brand-rule{height:32px}.photo-link{bottom:75px;right:-8px;padding:12px}
  .hero-intro{font-size:1rem;line-height:1.7}.trust-strip{justify-content:center;flex-wrap:wrap;gap:8px 14px;font-size:.8125rem}
  .proof-grid{grid-template-columns:1.15fr .85fr;gap:25px 45px}.proof-body{grid-column:1;grid-row:2}.proof-stat{grid-column:2;grid-row:1/span 2;padding-left:30px}.proof .metric strong{font-size:5rem}
  .process-grid{gap:50px;grid-template-columns:.8fr 1.2fr}.sticky-heading h2{font-size:2.75rem}.process-step summary{gap:14px;font-size:1rem}.step-body{padding-left:42px;padding-right:12px}
  .products-heading{gap:45px}.products-intro{align-items:flex-start;flex-direction:column;gap:22px}.product-card{flex-basis:275px}
  .split-heading{gap:38px;margin-bottom:40px}.split-heading .prose{padding-top:0}
  .quality-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .quality-card h3{min-height:48px}.manifesto-grid{gap:48px}.manifesto-end{gap:35px}
  .structure-stage>img{height:345px}.structure-terms{font-size:.875rem;gap:10px}.structure-bottom{align-items:flex-start;flex-direction:column;gap:17px}.structure-bottom .text-link{flex:auto}
  .delivery-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .service{padding:0 0 80px}.service-panel{grid-template-columns:1fr;padding:44px}.service-panel h2{max-width:600px}.service-action .prose{margin-top:24px}.service-trust{gap:10px;font-size:.8125rem}
  .history-grid{gap:28px 45px}.history-photo img{height:620px}
  .meaning-grid{grid-template-columns:.6fr 1.4fr;gap:45px}.meaning-mark img{width:65%}.mark-orbit::before{inset:12px}
  .meaning-values{grid-template-columns:1fr}.meaning-copy .signature{font-size:2rem}
  .presence-grid{grid-template-columns:1fr;gap:30px}.presence .prose{max-width:690px}.presence-title h2{max-width:720px}
  .reviews-grid{gap:55px}.review-seal{min-height:320px}.review-seal .metric strong{font-size:4.5rem}
  .footer-grid{grid-template-columns:1fr 1fr;gap:30px}.footer-brand{grid-column:1/-1}.footer-brand p{max-width:320px}.footer-bottom{align-items:flex-start;flex-direction:column;gap:18px}
}
@media(max-width:640px){
  :root{scroll-padding-top:92px}
  .container{width:calc(100% - 40px)}.section{padding:66px 0}
  h1{font-size:2.55rem}h2{font-size:2.35rem}h3{font-size:1.15rem}
  .eyebrow{font-size:.75rem;letter-spacing:.09em;gap:10px;margin-bottom:19px}.eyebrow::before{width:16px}
  .button{min-height:56px;font-size:.875rem;padding:16px 19px;gap:20px}.text-link{font-size:.875rem}
  .brand img{width:145px}.header-inner{min-height:80px}.mobile-menu{padding-inline:20px}
  .hero{padding:115px 0 0}.hero-grid{grid-template-columns:1fr;gap:37px;padding-bottom:24px}.hero-copy{padding:0}
  .hero h1{font-size:clamp(2.25rem,8.9vw,3.2rem);line-height:1.14;letter-spacing:-.047em;max-width:520px;text-wrap:initial}
  .hero-intro{max-width:500px;margin-top:23px}.hero-copy .button{margin-top:25px}
  .hero-visual{max-width:540px;margin:0;padding-bottom:27px}.hero-photo{aspect-ratio:1.35;border-top-right-radius:50px;max-height:340px}.hero-photo img{object-position:50% 68%}
  .hero-brand{left:18px;right:64px;padding:17px;gap:24px}.hero-brand>img:first-child{width:32px}.hero-brand>img:last-child{width:132px}.photo-link{bottom:1px;right:0;padding:15px}
  .trust-strip{display:grid;grid-template-columns:1fr 1fr;gap:13px 20px;padding:25px 0;font-size:.8125rem}.trust-strip>i{display:none}
  .proof-grid{grid-template-columns:1fr;gap:24px}.proof h2{font-size:2.2rem}.proof-body{grid-column:1;grid-row:2}.proof-stat{grid-column:1;grid-row:3;border-left:0;border-top:1px solid var(--line);padding:27px 0 0}
  .proof-stat .metric{flex-direction:row;align-items:center;gap:23px}.proof-stat .metric strong{font-size:4.8rem}.proof-stat .metric>span{margin:0;max-width:130px}
  .process-grid{grid-template-columns:1fr;gap:34px}.sticky-heading{position:static}.sticky-heading h2{font-size:2.8rem;max-width:440px}.sticky-heading .prose{max-width:none}.sticky-heading .button{margin-top:24px}
  .process-step summary{padding-top:24px;font-size:1.05rem}.step-body{padding-bottom:23px}
  .products-heading{grid-template-columns:1fr;gap:25px;margin-bottom:32px}.products-intro{gap:19px}.product-controls{align-self:flex-start}.products-carousel{margin-right:-20px;padding-right:20px}.product-card{flex-basis:82vw;max-width:330px}.product-card-body{padding:20px}.products-bottom{flex-direction:column;gap:20px;margin-top:20px}.products-bottom .text-link{width:100%;justify-content:space-between}
  .split-heading{grid-template-columns:1fr;gap:23px;margin-bottom:33px}
  .quality-grid{grid-template-columns:1fr}.quality-card{padding:28px}.quality-card h3{min-height:0;max-width:none}.card-icon{margin-bottom:20px}.quality-card p{margin-top:12px}
  .manifesto-grid{grid-template-columns:1fr;gap:28px}.manifesto-symbol{display:none}.serif-lead{font-size:1.9rem}.manifesto-lines{padding-top:0}.manifesto-lines p{font-size:1.2rem;padding-block:15px}
  .manifesto-end{flex-direction:column;align-items:flex-start;gap:23px;padding-top:26px;margin-top:33px}.manifesto-end .signature{font-size:2.65rem}
  .structure-stage{grid-template-columns:1.4fr 1fr;gap:8px}.structure-stage>img{height:265px}.structure-main{border-bottom-left-radius:26px}.structure-detail{border-top-right-radius:26px}
  .structure-terms{flex-wrap:wrap;justify-content:flex-start;gap:12px 20px;padding:21px 0}.structure-bottom{margin-top:23px}
  .delivery-grid{grid-template-columns:1fr;gap:12px}.delivery-item{display:flex;align-items:flex-start;gap:18px;padding:24px 20px}.delivery-icon{flex:none;margin:0;width:40px;height:40px}.delivery-icon .icon{width:23px;height:23px}.delivery-item p{margin-top:9px}.delivery-action{padding:27px 20px;min-height:100px}
  .service{padding:0 0 66px}.service-panel{padding:35px 25px}.service-panel h2{font-size:2.35rem}.service-action .button{font-size:.875rem;padding:16px;gap:12px;width:100%}.service-trust{flex-direction:column;gap:8px;margin-top:28px;padding-top:23px}.service-trust>i{display:none}
  .history-grid{grid-template-columns:1fr;gap:29px}.history-copy{grid-column:1;grid-row:1}.history-photo{grid-column:1;grid-row:2;position:relative;top:auto;padding:14px 0 0 14px;max-width:500px}.history-photo::before{width:calc(100% - 14px);height:calc(100% - 14px)}.history-photo img{height:350px;object-position:50% 35%}.history-story{grid-column:1;grid-row:3}.history-values{padding-block:20px}
  .meaning-grid{grid-template-columns:1fr;gap:36px}.meaning-mark{width:155px;margin:auto}.meaning-copy h2{font-size:2.35rem}.meaning-values{grid-template-columns:1fr 1fr;gap:0 20px;font-size:.875rem}
  .presence-title h2{font-size:2.45rem}.presence .emphasis{font-size:1.8rem}
  .reviews-grid{grid-template-columns:1fr;gap:35px}.review-seal{min-height:300px;width:100%;max-width:390px;margin:auto;border-radius:120px 120px 3px 3px}.review-seal .metric strong{font-size:5.5rem}.review-seal>img{width:45px;margin-bottom:20px}
  .real-review{flex-basis:87%;min-width:0;padding:24px}.reviews-carousel{margin-top:32px}
  .final{padding-top:76px}.final h2{font-size:clamp(2.6rem,11vw,3.8rem)}.final .prose{margin-top:23px}.final .eyebrow{justify-content:center}.final-note{margin-top:36px;padding-top:24px}.final-note .signature{font-size:1.65rem}
  .footer{padding-top:42px}.footer-grid{grid-template-columns:1fr;gap:24px;font-size:.875rem}.footer-brand{grid-column:auto}.footer-brand img{width:160px}.footer-bottom{padding-bottom:48px;margin-top:29px;line-height:1.7}.footer-policy,.footer-social{gap:8px}
  .floating-contact{width:49px;height:49px;right:15px;bottom:15px}
}
@media(max-width:360px){
  .container{width:calc(100% - 32px)}h2{font-size:2.1rem}.hero h1{font-size:2.16rem}
  .hero-brand{left:10px;right:58px;gap:14px;padding:15px}.hero-brand>img:last-child{width:116px}
  .proof-stat .metric strong{font-size:4rem}.proof-stat .metric{gap:18px}
  .service-panel{padding-inline:21px}.service-panel h2{font-size:2.1rem}
  .meaning-values{grid-template-columns:1fr}.delivery-item{gap:13px;padding:22px 17px}
}
@media(prefers-reduced-motion:reduce){
  :root{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}
}
@media print{
  .site-header,.floating-contact,.hero-visual,.meaning-mark,.final-symbol,.review-controls,.product-controls{display:none}
  .section{padding:25px 0;break-inside:avoid}.container{width:100%}.dark{background:white;color:black}
  .dark .prose,.dark .eyebrow,.dark em{color:black}.sticky-heading,.history-photo{position:static}
  .hero{padding-top:0}.hero-grid{display:block}.process-step .step-body{display:block}.products-carousel{margin:0;padding:0}.product-track{display:grid;grid-template-columns:repeat(3,1fr);overflow:visible}.product-card{break-inside:avoid}
}


/* 01 / Hero em vídeo — fundo full-bleed, sem som e com contraste para leitura. */
@media screen{
  .site-header{background:linear-gradient(180deg,rgba(4,29,28,.62),rgba(4,29,28,.16) 72%,transparent);backdrop-filter:none}
  .site-header.is-scrolled{background:#072e2df5;backdrop-filter:blur(12px)}

  .hero{position:relative;isolation:isolate;min-height:100svh;padding:145px 0 0;background:#052423;overflow:hidden}
  .hero-video-bg,.hero-video-overlay{position:absolute;inset:0;pointer-events:none}
  .hero-video-bg{z-index:-2;background:#052423}
  .hero-video-bg video{width:100%;height:100%;display:block;object-fit:cover;object-position:center center}
  .hero-video-overlay{z-index:-1;background:
    linear-gradient(90deg,rgba(4,28,27,.92) 0%,rgba(4,28,27,.79) 36%,rgba(4,28,27,.47) 66%,rgba(4,28,27,.28) 100%),
    linear-gradient(180deg,rgba(3,25,24,.28) 0%,rgba(3,25,24,.10) 48%,rgba(3,25,24,.70) 100%)}
  .hero>.container{position:relative;z-index:1;min-height:calc(100svh - 145px);display:flex;flex-direction:column}
  .hero-grid{grid-template-columns:minmax(0,780px);flex:1;align-items:center;gap:0;padding:42px 0 56px}
  .hero-copy{max-width:790px;padding:0;text-shadow:0 2px 24px rgba(0,0,0,.18)}
  .hero-copy h1{max-width:780px}
  .hero-intro{max-width:600px;color:#e1ebe6}
  .hero-visual{display:none}
  .trust-strip{margin-top:auto;background:rgba(4,29,28,.16);backdrop-filter:blur(2px)}
}

@media screen and (max-width:900px){
  .hero{min-height:100svh;padding-top:116px}
  .hero>.container{min-height:calc(100svh - 116px)}
  .hero-grid{grid-template-columns:minmax(0,690px);padding:32px 0 46px}
  .hero-video-bg video{object-position:58% center}
  .hero-video-overlay{background:
    linear-gradient(90deg,rgba(4,28,27,.92) 0%,rgba(4,28,27,.77) 60%,rgba(4,28,27,.42) 100%),
    linear-gradient(180deg,rgba(3,25,24,.34) 0%,rgba(3,25,24,.14) 45%,rgba(3,25,24,.76) 100%)}
}

@media screen and (max-width:640px){
  .site-header{background:linear-gradient(180deg,rgba(4,29,28,.72),rgba(4,29,28,.18) 78%,transparent)}
  .hero{padding-top:102px}
  .hero>.container{min-height:calc(100svh - 102px)}
  .hero-grid{display:grid;grid-template-columns:1fr;gap:0;padding:34px 0 34px}
  .hero-copy{max-width:100%}
  .hero-copy h1{max-width:540px;text-shadow:0 2px 18px rgba(0,0,0,.22)}
  .hero-intro{color:#edf4f0}
  .hero-video-bg video{object-position:64% center}
  .hero-video-overlay{background:
    linear-gradient(90deg,rgba(4,28,27,.93) 0%,rgba(4,28,27,.78) 72%,rgba(4,28,27,.58) 100%),
    linear-gradient(180deg,rgba(3,25,24,.35) 0%,rgba(3,25,24,.15) 42%,rgba(3,25,24,.82) 100%)}
  .trust-strip{padding-bottom:24px}
}

@media(prefers-reduced-motion:reduce){
  .hero-video-bg video{display:none}
  .hero-video-bg{background:linear-gradient(120deg,#052423,#0b4a42)}
}

@media print{
  .hero-video-bg,.hero-video-overlay{display:none!important}
}


/* Lenis — rolagem suave */
html.lenis, html.lenis body{height:auto}
html.lenis{scroll-behavior:auto!important}
.lenis.lenis-smooth{scroll-behavior:auto!important}
.lenis.lenis-smooth [data-lenis-prevent]{overscroll-behavior:contain}
.lenis.lenis-stopped{overflow:hidden}
.lenis.lenis-smooth iframe{pointer-events:none}
