/* =========================================================
   WERT — SOBRE / FINAL
   Base estrutural: Home Wert
   100svh / scroll snap / fluxo contínuo / cursor inline
   ========================================================= */
:root{
  --black:#000;
  --carbon:#111;
  --carbon-2:#1a1a1a;
  --green:#7EE62A;
  --white:#fff;
  --paper:#f3f3ef;
  --text-soft:rgba(255,255,255,.58);
  --line-dark:rgba(255,255,255,.13);
  --line-light:rgba(0,0,0,.14);
  --header-h:72px;
  --page-x:clamp(24px,4.7vw,80px);
  --max:1560px;
  --display:var(--font-primary,"Neue Montreal","Inter Tight",Arial,sans-serif);
  --body:var(--font-primary,"Neue Montreal",Inter,Arial,sans-serif);
  --micro:var(--font-micro,Inter,Arial,sans-serif);
  --ease:cubic-bezier(.22,1,.36,1);
}

*,*::before,*::after{box-sizing:border-box}
html{width:100%;max-width:100%;overflow:hidden;background:var(--black);scroll-behavior:smooth}
body{margin:0;width:100%;max-width:100%;overflow:hidden;background:var(--black);color:var(--white);font-family:var(--body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
button,summary{font:inherit}
::selection{color:var(--black);background:var(--green)}

/* CUSTOM CURSOR — mesma estrutura da Home */
#cursor-canvas{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:99999}
@media (hover:hover) and (pointer:fine){html,body,a,button,summary,[role="button"]{cursor:none!important}}
@media (hover:none),(pointer:coarse){#cursor-canvas{display:none}}

/* HEADER */
.header{position:fixed;inset:0 0 auto;z-index:100;height:var(--header-h);padding:0 var(--page-x);display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:32px;background:linear-gradient(180deg,rgba(0,0,0,.74),rgba(0,0,0,.18) 82%,transparent)}
.logo{width:146px;justify-self:start}.logo img{width:100%}
.nav{display:flex;gap:38px;align-items:center;margin-left:auto;margin-right:40px;font-family:var(--micro);font-size:18px;font-weight:600;letter-spacing:.02em;color:rgba(255,255,255,.66)}
.nav a{transition:color .25s}.nav a:hover,.nav a[aria-current="page"]{color:var(--green)}
.header-cta{justify-self:end;display:inline-flex;align-items:center;gap:14px;min-height:42px;padding:0 16px 0 18px;border:1px solid rgba(255,255,255,.2);border-radius:999px;font-family:var(--micro);font-size:12px;font-weight:700;transition:background .25s,color .25s,transform .3s var(--ease)}
.header-cta:hover{color:var(--black);background:var(--green);border-color:var(--green);transform:translateY(-2px)}

/* CONTINUOUS FLOW LAYER */
.flow-layer{position:fixed;z-index:30;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;mix-blend-mode:screen;opacity:.42}
.flow-path{fill:none;stroke:var(--green);stroke-width:1.1;stroke-linecap:round;stroke-dasharray:8 12;vector-effect:non-scaling-stroke;animation:dash-flow 15s linear infinite}
.flow-path--2{opacity:.46;animation-duration:21s;animation-direction:reverse}.flow-path--3{opacity:.25;animation-duration:27s}
@keyframes dash-flow{to{stroke-dashoffset:-400}}

/* SNAP — cada bloco é uma tela */
.snap{width:100%;max-width:100%;height:100svh;overflow-y:auto;overflow-x:hidden;overscroll-behavior-y:contain;scroll-snap-type:y mandatory;scrollbar-width:none}
.snap::-webkit-scrollbar{display:none}
.section{position:relative;width:100%;height:100svh;min-height:100svh;max-height:100svh;overflow:hidden;scroll-snap-align:start;scroll-snap-stop:always}
.section-grid{position:relative;z-index:10;width:min(100%,var(--max));height:100%;margin:0 auto;padding:calc(var(--header-h) + clamp(28px,4.2vh,48px)) var(--page-x) clamp(22px,3vh,34px)}
.section-grid>*{min-width:0}
.section--hero,.section--cases,.section--build,.section--faq,.section--cta{background:var(--black)}
.section--carbon{background:var(--carbon)}
.section--light{background:var(--paper);color:var(--black)}

/* SHARED */
.display{margin:0;font-family:var(--display);font-size:clamp(58px,7vw,110px);font-weight:900;line-height:.84;letter-spacing:-.055em;text-transform:uppercase}
.display--mid{font-size:clamp(48px,5.55vw,86px)}
.display span{color:var(--green)}
.display--dark{color:var(--black)}
.eyebrow{display:inline-flex;align-items:center;gap:12px;margin:0;text-transform:uppercase;letter-spacing:.15em;font-family:var(--micro);font-size:9px;font-weight:800;color:rgba(255,255,255,.5)}
.eyebrow::before{content:"";width:22px;height:2px;background:var(--green)}
.eyebrow--dark{color:rgba(0,0,0,.44)}
.index{font-family:var(--micro);font-size:9px;font-weight:800;letter-spacing:.15em;color:var(--green)}.index--dark{color:rgba(0,0,0,.48)}
.section-topline{position:absolute;top:calc(var(--header-h) + 14px);left:var(--page-x);right:var(--page-x);display:flex;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line-dark);font-family:var(--micro);font-size:9px;font-weight:800;letter-spacing:.15em;color:rgba(255,255,255,.4)}
.section-topline--dark{border-color:var(--line-light);color:rgba(0,0,0,.44)}
.side-label{align-self:start;padding-top:4px;display:flex;flex-direction:column;gap:12px;font-family:var(--micro);font-size:9px;font-weight:800;letter-spacing:.15em;color:rgba(255,255,255,.38);text-transform:uppercase}
.side-label span{color:var(--green)}.side-label--dark{color:rgba(0,0,0,.42)}.side-label--dark span{color:rgba(0,0,0,.54)}
.section-mark{position:absolute;z-index:1;right:-1vw;bottom:-5vh;font-family:var(--display);font-size:clamp(160px,24vw,380px);font-weight:900;line-height:.75;letter-spacing:-.09em;color:rgba(255,255,255,.022);user-select:none}.section-mark--dark{color:rgba(0,0,0,.035)}
.text-link{display:inline-flex;align-items:center;gap:12px;padding-bottom:7px;border-bottom:1px solid rgba(255,255,255,.22);font-family:var(--micro);font-size:12px;font-weight:700;transition:gap .3s,color .25s,border-color .25s}.text-link:hover{gap:18px;color:var(--green);border-color:var(--green)}
.lead-dark{margin:0;color:var(--black)!important;font-size:clamp(20px,2vw,31px)!important;line-height:1.18!important;letter-spacing:-.035em}
.slider-note{display:flex;align-items:center;gap:10px;justify-content:flex-end;margin-top:12px;font-family:var(--micro);font-size:8px;font-weight:800;letter-spacing:.15em;color:rgba(255,255,255,.28)}.slider-note i{width:50px;height:1px;background:var(--green)}

/* 01 HERO */
.hero-w{position:absolute;z-index:1;right:-.08em;bottom:-.25em;font-family:var(--display);font-size:min(62vw,920px);font-weight:900;line-height:.75;color:transparent;-webkit-text-stroke:1px rgba(255,255,255,.055);animation:hero-w 12s ease-in-out infinite alternate}
@keyframes hero-w{to{transform:translate(-22px,-12px) rotate(-1deg)}}
.hero-grid{display:flex;flex-direction:column;justify-content:center}
.hero-copy{position:relative;z-index:4;max-width:1180px;margin-top:26px}
.hero-kicker{display:flex;align-items:center;gap:14px;margin-bottom:18px;font-family:var(--micro);font-size:9px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;color:rgba(255,255,255,.44)}.hero-kicker i{width:34px;height:1px;background:var(--green)}
.hero-title{font-size:clamp(54px,6.8vw,104px);max-width:1120px}.hero-title span{display:block;margin-left:clamp(0px,4vw,58px)}
.hero-bottom{display:grid;grid-template-columns:minmax(0,550px) auto;align-items:end;justify-content:space-between;gap:46px;max-width:1060px;margin-top:26px}.hero-bottom p{margin:0;color:var(--text-soft);font-size:clamp(14px,1.15vw,18px);line-height:1.48}
.hero-signature{position:absolute;right:var(--page-x);bottom:38px;display:grid;justify-items:end;font-family:var(--micro);text-transform:uppercase;letter-spacing:.16em;color:rgba(255,255,255,.24)}.hero-signature strong{font-size:12px}.hero-signature span{color:var(--green);font-size:12px;font-weight:800}.hero-signature small{margin-top:8px;font-size:8px}

/* 02 VISÃO */
.editorial-grid{display:grid;grid-template-columns:100px minmax(0,.92fr) minmax(360px,.76fr);grid-template-areas:"side title copy";gap:clamp(28px,4.4vw,70px);align-items:center}
.editorial-grid .side-label{grid-area:side}.editorial-title{grid-area:title}.editorial-copy{grid-area:copy;max-width:610px}
.editorial-title .eyebrow{margin-bottom:16px}
.editorial-copy>p{margin:0;color:rgba(0,0,0,.52);font-size:14px;line-height:1.5}.editorial-copy>p+p{margin-top:18px}
.principles-row{margin-top:28px;border-top:1px solid var(--line-light);border-bottom:1px solid var(--line-light);display:grid;grid-template-columns:repeat(2,1fr)}
.principles-row article{min-height:86px;padding:12px 14px 12px 0;display:grid;grid-template-columns:26px 1fr;grid-template-rows:auto auto;column-gap:9px;align-content:center;border-bottom:1px solid var(--line-light)}.principles-row article:nth-child(odd){border-right:1px solid var(--line-light);margin-right:14px}.principles-row article:nth-last-child(-n+2){border-bottom:0}
.principles-row span{grid-row:1/3;font-family:var(--micro);font-size:8px;font-weight:800;color:rgba(0,0,0,.38)}.principles-row strong{font-size:16px;letter-spacing:-.025em}.principles-row small{margin-top:3px;font-family:var(--micro);font-size:9px;color:rgba(0,0,0,.42)}

/* 03 FLOW */
.flow-grid{display:grid;grid-template-columns:100px minmax(0,1fr);grid-template-rows:auto auto auto;grid-template-areas:"side head" "side slider" "side note";column-gap:clamp(28px,4.4vw,70px);row-gap:14px;align-content:center}
.flow-grid .side-label{grid-area:side;align-self:start;margin-top:4px}.flow-head{grid-area:head;display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.42fr);gap:clamp(28px,4vw,58px);align-items:end}.flow-head .display{font-size:clamp(42px,4.65vw,70px);line-height:.84}.flow-head>p{justify-self:end;max-width:340px;margin:0 0 4px;color:rgba(255,255,255,.48);font-size:13px;line-height:1.48}
.flow-slider{grid-area:slider;position:relative;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.flow-slider::-webkit-scrollbar{display:none}
.flow-slider::before{content:"";position:absolute;left:0;top:-1px;width:24%;height:1px;background:var(--green);animation:scan-line 5s ease-in-out infinite alternate}@keyframes scan-line{to{transform:translateX(310%)}}
.flow-slider article{flex:1 0 16.666%;min-width:170px;min-height:142px;padding:14px 15px;scroll-snap-align:start;display:grid;grid-template-rows:auto 1fr auto;align-items:start;border-right:1px solid var(--line-dark);transition:background .3s,color .3s,transform .3s var(--ease)}.flow-slider article:last-child{border-right:0}.flow-slider article:hover{background:rgba(255,255,255,.025);transform:translateY(-2px)}.flow-slider .is-active{background:var(--green);color:var(--black)}
.flow-slider span{font-family:var(--micro);font-size:9px;font-weight:800;color:var(--green)}.flow-slider .is-active span{color:rgba(0,0,0,.46)}.flow-slider strong{align-self:end;font-family:var(--display);font-size:clamp(17px,1.35vw,22px);letter-spacing:-.035em}.flow-slider small{align-self:end;margin-top:7px;font-family:var(--micro);font-size:8px;line-height:1.35;color:rgba(255,255,255,.38)}.flow-slider .is-active small{color:rgba(0,0,0,.54)}
.flow-grid>.slider-note{grid-area:note;margin-top:0}

/* 04 SOLUÇÕES */
.solutions-grid{display:grid;grid-template-columns:100px minmax(270px,.58fr) minmax(0,1.2fr);grid-template-areas:"side intro list";gap:clamp(28px,4.4vw,68px);align-items:center}
.solutions-grid .side-label{grid-area:side}.solutions-intro{grid-area:intro}.solutions-intro>p:last-child{max-width:390px;margin:22px 0 0;color:rgba(0,0,0,.48);font-size:13px;line-height:1.5}
.accordion{grid-area:list;border-top:1px solid var(--line-light)}
.accordion-item{border-bottom:1px solid var(--line-light)}
.accordion-item summary{position:relative;min-height:64px;display:grid;grid-template-columns:30px minmax(0,.72fr) minmax(180px,1fr) 22px;gap:12px;align-items:center;list-style:none;user-select:none}.accordion-item summary::-webkit-details-marker{display:none}
.accordion-item summary>span{font-family:var(--micro);font-size:8px;font-weight:800;color:rgba(0,0,0,.32)}.accordion-item summary strong{font-family:var(--body);font-size:clamp(15px,1.25vw,19px);font-weight:600;line-height:1.12;letter-spacing:-.018em}.accordion-item summary small{font-family:var(--micro);font-size:9px;color:rgba(0,0,0,.42)}
.accordion-item summary i{position:relative;width:18px;height:18px}.accordion-item summary i::before,.accordion-item summary i::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:1px;background:currentColor;transform:translate(-50%,-50%)}.accordion-item summary i::after{transform:translate(-50%,-50%) rotate(90deg);transition:transform .25s}.accordion-item[open] summary i::after{transform:translate(-50%,-50%) rotate(0)}
.accordion-content{display:grid;grid-template-columns:1fr auto;gap:20px;padding:0 34px 12px 42px;color:rgba(0,0,0,.52);font-size:11px;line-height:1.4}.accordion-content p{margin:0}.accordion-content a{font-family:var(--micro);font-size:9px;font-weight:800;border-bottom:1px solid rgba(0,0,0,.25);padding-bottom:3px}

/* 06 CASES */
.cases-grid{display:grid;grid-template-columns:100px 1fr;grid-template-rows:auto 1fr;grid-template-areas:"side head" "side cases";gap:18px clamp(28px,4.4vw,70px);align-items:stretch}
.cases-grid .side-label{grid-area:side}.cases-head{grid-area:head;display:flex;justify-content:space-between;align-items:end;gap:40px;align-self:end}.cases-head>p{max-width:360px;margin:0 0 6px;color:rgba(255,255,255,.42);font-size:13px}
.cases-list{grid-area:cases;display:grid;grid-template-columns:repeat(2,1fr);gap:18px;min-height:0}.case{min-height:0;display:grid;grid-template-rows:minmax(0,1fr) auto}.case-media{position:relative;min-height:0;overflow:hidden;background:var(--carbon-2);border:1px solid rgba(255,255,255,.08)}.case-media img{width:100%;height:100%;object-fit:cover;transition:transform .8s var(--ease)}.case-media:hover img{transform:scale(1.025)}
.case-info{display:grid;grid-template-columns:1fr auto;gap:14px;padding-top:13px}.case-info>span{grid-column:1;font-family:var(--micro);font-size:8px;letter-spacing:.13em;color:rgba(255,255,255,.34)}.case-info h3{grid-column:1;margin:4px 0 0;max-width:590px;font-size:clamp(17px,1.3vw,21px);font-weight:500;line-height:1.18;letter-spacing:-.025em}.case-info>a{grid-column:2;grid-row:1/3;align-self:center;font-size:24px;color:var(--green)}

/* 07 BUILD */
.section--build{isolation:isolate}.build-grid{position:absolute;inset:0;z-index:0;opacity:.12;background-image:linear-gradient(rgba(255,255,255,.06) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.06) 1px,transparent 1px);background-size:82px 82px}.build-w{position:absolute;z-index:1;left:-.1em;bottom:-.27em;font-family:var(--display);font-size:min(61vw,880px);font-weight:900;line-height:.75;color:rgba(126,230,42,.035);animation:build-w 10s ease-in-out infinite alternate}@keyframes build-w{to{transform:translate(30px,-18px) rotate(1deg)}}
.build-section-grid{display:flex;flex-direction:column;justify-content:center}.build-main{position:relative;z-index:3;margin-top:0}.build-main .display{max-width:1080px;font-size:clamp(46px,5.35vw,82px)}.build-main .display span{color:rgba(255,255,255,.34)}
.build-copy{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(34px,5.5vw,84px);width:min(100%,980px);margin:22px 0 22px auto}.build-copy p{margin:0;color:rgba(255,255,255,.5);font-size:12px;line-height:1.5}.build-words{display:flex;flex-wrap:wrap;gap:10px 22px;padding-top:12px;border-top:1px solid var(--line-dark);font-family:var(--micro);font-size:8px;letter-spacing:.13em;text-transform:uppercase;color:rgba(255,255,255,.34)}.build-words strong{color:var(--green)}

/* 07 PROCESS */
.process-grid{display:grid;grid-template-columns:100px minmax(0,1fr);grid-template-rows:auto auto auto;grid-template-areas:"side head" "side slider" "side note";column-gap:clamp(28px,4.4vw,70px);row-gap:14px;align-content:center}
.process-grid .side-label{grid-area:side;align-self:start;margin-top:4px}.process-head{grid-area:head;display:grid;grid-template-columns:minmax(0,1fr) minmax(270px,.4fr);gap:clamp(28px,4vw,54px);align-items:end}.process-head .display{font-size:clamp(42px,4.65vw,70px);line-height:.84}.process-head>p{justify-self:end;max-width:330px;margin:0 0 4px;color:rgba(255,255,255,.46);font-size:12px;line-height:1.48}
.process-slider{grid-area:slider;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;border-top:1px solid var(--line-dark);border-bottom:1px solid var(--line-dark)}.process-slider::-webkit-scrollbar{display:none}.process-slider article{flex:1 0 20%;min-width:190px;min-height:136px;padding:14px 16px;scroll-snap-align:start;display:grid;grid-template-rows:auto auto auto;align-content:start;gap:8px;border-right:1px solid var(--line-dark);transition:background .3s,transform .3s var(--ease)}.process-slider article:last-child{border-right:0}.process-slider article:hover{background:rgba(126,230,42,.08);transform:translateY(-2px)}.process-slider span{font-family:var(--micro);font-size:9px;font-weight:800;color:var(--green)}.process-slider strong{margin-top:18px;font-family:var(--body);font-size:clamp(17px,1.35vw,21px);font-weight:650;line-height:1.08;letter-spacing:-.02em}.process-slider p{margin:0;color:rgba(255,255,255,.4);font-size:9px;line-height:1.4}
.process-grid>.slider-note{grid-area:note;margin-top:0}

/* 09 FAQ */
.faq-grid{display:grid;grid-template-columns:100px minmax(280px,.62fr) minmax(0,1.1fr);grid-template-areas:"side head list";gap:clamp(28px,4.4vw,70px);align-items:center}
.faq-grid .side-label{grid-area:side}.faq-head{grid-area:head}.faq-head .eyebrow{margin-bottom:16px}.faq-list{grid-area:list;border-color:var(--line-dark)}
.accordion-item--dark summary strong{font-family:var(--body);font-size:clamp(14px,1.15vw,18px);font-weight:500;line-height:1.22;letter-spacing:-.012em}
.accordion-item--dark{border-color:var(--line-dark)}.accordion-item--dark summary{grid-template-columns:1fr 22px;min-height:62px}.accordion-item--dark summary strong{color:var(--white);font-size:clamp(15px,1.2vw,19px);font-weight:500}.accordion-item--dark summary i{color:var(--white)}.accordion-item--dark[open] summary i{color:var(--green)}.accordion-item--dark .accordion-content{display:block;padding:0 36px 12px 0;color:rgba(255,255,255,.48);font-size:11px}

/* 10 CTA */
.cta-grid{display:grid;grid-template-rows:auto 1fr auto;align-items:center}.cta-main{align-self:center;position:relative;z-index:3}.cta-main>.eyebrow{margin-bottom:18px}.cta-main .display{font-size:clamp(54px,6.6vw,104px)}.cta-bottom{display:grid;grid-template-columns:minmax(0,560px) auto;justify-content:space-between;gap:50px;align-items:end;margin-top:25px;padding-top:16px;border-top:1px solid var(--line-dark)}.cta-bottom>p{margin:0;color:rgba(255,255,255,.5);font-size:13px;line-height:1.48}.cta-actions{display:flex;align-items:center;gap:18px}.button{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:46px;padding:0 18px;border-radius:999px;font-family:var(--micro);font-size:11px;font-weight:800;transition:transform .3s var(--ease)}.button:hover{transform:translateY(-3px)}.button--green{color:var(--black);background:var(--green)}
.footer{position:relative;z-index:3;padding-top:14px;border-top:1px solid var(--line-dark);display:grid;grid-template-columns:1fr 1.25fr auto;gap:36px;align-items:end}.footer img{width:112px}.footer>div{display:flex;flex-direction:column;gap:3px;font-family:var(--micro);font-size:9px;color:rgba(255,255,255,.36)}.footer>div strong{color:rgba(255,255,255,.7);font-weight:600}.footer nav{display:flex;gap:18px;font-family:var(--micro);font-size:9px;color:rgba(255,255,255,.4)}.footer nav a:hover{color:var(--green)}

/* NOTEBOOKS / TELAS BAIXAS — manter conteúdo dentro de 1 viewport */
@media (min-width:861px) and (max-height:900px){
  .section-grid{padding-top:calc(var(--header-h) + 28px);padding-bottom:18px}
  .display{font-size:clamp(48px,6vw,88px)}.display--mid{font-size:clamp(40px,4.8vw,72px)}
  .hero-copy{margin-top:15px}.hero-title{font-size:clamp(48px,6vw,88px)}.hero-bottom{margin-top:18px}.hero-signature{bottom:20px}
  .editorial-grid,.solutions-grid,.faq-grid{gap:26px 42px}.principles-row{margin-top:18px}.principles-row article{min-height:70px}
  .cases-grid{gap:14px 42px}.flow-slider article{min-height:136px}.process-slider article{min-height:132px}
  .accordion-item summary{min-height:55px}.accordion-item--dark summary{min-height:52px}.accordion-content{padding-bottom:8px}
  .build-copy{margin:18px 0 18px auto}.cta-bottom{margin-top:18px}.footer{padding-top:10px}
}

@media (min-width:861px) and (max-height:760px){
  :root{--header-h:64px}
  .header{height:var(--header-h)}.logo{width:126px}.nav{font-size:14px;gap:26px}.header-cta{min-height:38px;font-size:10px}
  .section-grid{padding-top:calc(var(--header-h) + 22px);padding-bottom:12px}
  .display{font-size:clamp(42px,5.2vw,76px)}.display--mid{font-size:clamp(36px,4.2vw,64px)}
  .hero-title{font-size:clamp(44px,5.4vw,80px)}.hero-bottom p,.flow-head>p,.process-head>p{font-size:11px}.hero-bottom{margin-top:14px}
  .flow-slider article,.process-slider article{min-height:136px}.accordion-item summary{min-height:48px}.accordion-item--dark summary{min-height:45px}.accordion-item summary strong{font-size:16px}.accordion-item summary small{font-size:8px}.accordion-content{font-size:9px}
  .case-info h3{font-size:15px}.build-copy{margin:14px 0 14px auto}.build-copy p{font-size:10px}.cta-bottom>p{font-size:11px}.footer img{width:90px}
}

/* TABLET / MOBILE */
@media (max-width:860px){
  :root{--header-h:64px;--page-x:22px}
  html,body{overflow:auto}.header{grid-template-columns:1fr auto}.logo{width:128px}.nav{display:none}.header-cta{font-size:10px;min-height:38px}
  .flow-layer{opacity:.25}
  .snap{height:auto;overflow:visible;scroll-snap-type:none}
  .section{height:auto;min-height:100svh;max-height:none;overflow:hidden;scroll-snap-align:none}
  .section-grid{min-height:100svh;height:auto;padding-top:calc(var(--header-h) + 70px);padding-bottom:42px}
  .section-topline{top:calc(var(--header-h) + 16px)}
  .side-label{flex-direction:row;align-items:center;justify-content:space-between;width:100%}
  .display{font-size:clamp(48px,13vw,78px)}.display--mid{font-size:clamp(42px,11vw,68px)}
  .hero-grid{justify-content:center}.hero-w{font-size:130vw;right:-.35em;bottom:.02em}.hero-title{font-size:clamp(48px,13vw,78px)}.hero-title span{margin-left:0}.hero-bottom{grid-template-columns:1fr;gap:24px}.hero-signature{display:none}
  .editorial-grid,.solutions-grid,.faq-grid,.flow-grid,.process-grid,.cases-grid{display:flex;flex-direction:column;justify-content:center;gap:26px}
  .editorial-copy{max-width:none}.principles-row{grid-template-columns:1fr}.principles-row article:nth-child(odd){border-right:0;margin-right:0}.principles-row article:nth-last-child(2){border-bottom:1px solid var(--line-light)}
  .flow-head,.process-head{display:grid;grid-template-columns:1fr;gap:14px}.flow-slider article{flex:0 0 68vw;min-width:0}.process-slider article{flex:0 0 68vw;min-width:0}
  .solutions-intro>p:last-child{margin-top:16px}.accordion-item summary{grid-template-columns:28px 1fr 22px;min-height:60px}.accordion-item summary small{display:none}.accordion-content{grid-template-columns:1fr;padding-left:40px}.accordion-content a{justify-self:start}
  .cases-list{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.cases-list::-webkit-scrollbar{display:none}.case{flex:0 0 84vw;scroll-snap-align:start}.case-media{aspect-ratio:4/3}
  .build-copy{grid-template-columns:1fr;gap:14px;margin:24px 0}.build-w{font-size:130vw;left:-.4em;bottom:.03em}
  .faq-head{width:100%}.accordion-item--dark summary{grid-template-columns:1fr 22px}.accordion-item--dark .accordion-content{padding-left:0}
  .cta-grid{min-height:100svh}.cta-bottom{grid-template-columns:1fr;gap:26px}.cta-actions{align-items:flex-start;flex-direction:column}.footer{grid-template-columns:1fr;gap:15px}.footer nav{flex-wrap:wrap}
}

@media (prefers-reduced-motion:reduce){*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.flow-path{animation:none}}

/* =========================================================
   AJUSTES FINAIS — 17/09/2026
   Consolida as correções dos prints: menos espaço morto,
   tipografia correta, blocos horizontais mais compactos,
   CTA sem sobreposição e depoimentos ocultos.
   ========================================================= */

/* Segurança: a seção de depoimentos não deve aparecer nesta página. */
.section--testimonials,
.section-testimonials,
#depoimentos,
#testimonials {
  display: none !important;
}

/* Evita síntese artificial de peso/condensação nas fontes locais. */
.page-about {
  font-synthesis: none;
}

.services-accordion summary strong,
.faq-list summary strong {
  font-family: var(--font-primary, "Neue Montreal", Arial, sans-serif) !important;
  font-stretch: normal;
  font-style: normal;
  font-synthesis: none;
}

@media (min-width: 861px) {
  /* Mais área útil por tela sem aproximar o conteúdo do header. */
  .section-grid {
    padding-top: calc(var(--header-h) + clamp(22px, 3vh, 32px));
    padding-bottom: clamp(16px, 2.4vh, 24px);
  }

  .section-topline {
    top: calc(var(--header-h) + 8px);
  }

  /* 03 / FLUXO — título menor, texto lateral mais leve e blocos mais úteis. */
  .flow-grid {
    grid-template-columns: 100px minmax(0, 1fr);
    grid-template-rows: auto auto auto;
    column-gap: clamp(28px, 4vw, 60px);
    row-gap: 16px;
    align-content: center;
  }

  .flow-head {
    grid-template-columns: minmax(0, .82fr) minmax(250px, .34fr);
    gap: clamp(26px, 3.6vw, 50px);
  }

  .flow-head .display {
    max-width: 720px;
    font-size: clamp(38px, 4.15vw, 62px);
    line-height: .88;
    letter-spacing: -.05em;
  }

  .flow-head > p {
    max-width: 300px;
    margin-bottom: 2px;
    font-size: 11.5px;
    line-height: 1.45;
  }

  .flow-slider article {
    min-width: 158px;
    min-height: 154px;
    padding: 13px 14px 14px;
  }

  .flow-slider strong {
    font-size: clamp(16px, 1.22vw, 20px);
    font-weight: 650;
  }

  .flow-slider small {
    font-size: 8px;
    line-height: 1.32;
  }

  .flow-grid > .slider-note {
    margin-top: -2px;
  }

  /* 04 / SOLUÇÕES — remover aparência condensada/pesada e compactar a lista. */
  .solutions-grid {
    grid-template-columns: 100px minmax(270px, .58fr) minmax(0, 1.22fr);
    gap: clamp(28px, 4vw, 60px);
  }

  .solutions-intro .display {
    font-size: clamp(42px, 4.8vw, 72px);
    line-height: .86;
  }

  .solutions-intro > p:last-child {
    max-width: 360px;
    margin-top: 18px;
    font-size: 12px;
  }

  .services-accordion .accordion-item summary {
    min-height: 54px;
    grid-template-columns: 30px minmax(180px, .76fr) minmax(230px, 1fr) 22px;
    gap: 12px;
  }

  .services-accordion .accordion-item summary strong {
    font-size: clamp(15px, 1.14vw, 17.5px);
    font-weight: 500;
    line-height: 1.08;
    letter-spacing: -.025em;
  }

  .services-accordion .accordion-item summary small {
    font-size: 8px;
    line-height: 1.3;
  }

  .services-accordion .accordion-content {
    padding-top: 1px;
    padding-bottom: 9px;
    font-size: 10px;
  }

  /* 06 / O QUE VAMOS CONSTRUIR — ocupar a tela sem o vazio inferior. */
  .build-section-grid {
    justify-content: center;
  }

  .build-main {
    width: 100%;
    transform: translateY(10px);
  }

  .build-main .display {
    max-width: 980px;
    font-size: clamp(40px, 4.7vw, 70px);
    line-height: .87;
  }

  .build-copy {
    width: min(100%, 930px);
    gap: clamp(32px, 4vw, 64px);
    margin: 18px 0 16px auto;
  }

  .build-copy p {
    font-size: 11px;
    line-height: 1.46;
  }

  .build-words {
    gap: 9px 18px;
    padding-top: 10px;
    font-size: 7.5px;
  }

  /* 07 / PROCESSO — carrossel horizontal mais baixo e com hierarquia limpa. */
  .process-grid {
    grid-template-columns: 100px minmax(0, 1fr);
    column-gap: clamp(28px, 4vw, 60px);
    row-gap: 16px;
    align-content: center;
  }

  .process-head {
    grid-template-columns: minmax(0, .82fr) minmax(250px, .34fr);
    gap: clamp(26px, 3.6vw, 50px);
  }

  .process-head .display {
    max-width: 760px;
    font-size: clamp(38px, 4.15vw, 62px);
    line-height: .88;
  }

  .process-head > p {
    max-width: 300px;
    margin-bottom: 2px;
    font-size: 11.5px;
    line-height: 1.45;
  }

  .process-slider article {
    min-width: 176px;
    min-height: 146px;
    padding: 13px 15px 14px;
    gap: 6px;
  }

  .process-slider strong {
    margin-top: 15px;
    font-family: var(--font-primary, "Neue Montreal", Arial, sans-serif);
    font-size: clamp(16px, 1.22vw, 20px);
    font-weight: 600;
    line-height: 1.08;
    letter-spacing: -.025em;
  }

  .process-slider p {
    font-size: 8.5px;
    line-height: 1.35;
  }

  .process-grid > .slider-note {
    margin-top: -2px;
  }

  /* 08 / FAQ — mesma família da Home, leitura confortável e sem condensação. */
  .faq-grid {
    grid-template-columns: 100px minmax(280px, .58fr) minmax(0, 1.14fr);
    gap: clamp(28px, 4vw, 60px);
  }

  .faq-head .display {
    font-size: clamp(42px, 4.8vw, 72px);
    line-height: .86;
  }

  .faq-head .eyebrow {
    margin-bottom: 12px;
  }

  .faq-list .accordion-item--dark summary {
    min-height: 52px;
  }

  .faq-list .accordion-item--dark summary strong {
    font-size: clamp(14px, 1.05vw, 16.5px);
    font-weight: 500;
    line-height: 1.18;
    letter-spacing: -.018em;
  }

  .faq-list .accordion-item--dark .accordion-content {
    padding: 0 34px 9px 0;
    font-size: 10px;
    line-height: 1.4;
  }

  /* 09 / CTA — o topline fica independente e o conteúdo não encosta nele. */
  .cta-grid {
    grid-template-rows: 1fr auto;
    align-items: stretch;
  }

  .cta-main {
    grid-row: 1;
    align-self: center;
    padding-top: 34px;
  }

  .cta-main .display {
    max-width: 880px;
    font-size: clamp(48px, 5.8vw, 88px);
    line-height: .84;
  }

  .cta-bottom {
    margin-top: 20px;
    padding-top: 14px;
    gap: 36px;
  }

  .cta-bottom > p {
    max-width: 500px;
    font-size: 11px;
  }

  .footer {
    grid-row: 2;
    padding-top: 12px;
  }
}

/* Em notebooks baixos, preservar uma tela por seção sem apertar a leitura. */
@media (min-width: 861px) and (max-height: 760px) {
  .section-grid {
    padding-top: calc(var(--header-h) + 18px);
    padding-bottom: 10px;
  }

  .flow-head .display,
  .process-head .display {
    font-size: clamp(34px, 3.85vw, 54px);
  }

  .flow-slider article {
    min-height: 132px;
  }

  .process-slider article {
    min-height: 126px;
  }

  .solutions-intro .display,
  .faq-head .display {
    font-size: clamp(36px, 4.15vw, 60px);
  }

  .services-accordion .accordion-item summary,
  .faq-list .accordion-item--dark summary {
    min-height: 47px;
  }

  .build-main .display {
    font-size: clamp(36px, 4.25vw, 62px);
  }

  .build-copy {
    margin-top: 14px;
    margin-bottom: 13px;
  }

  .cta-main {
    padding-top: 28px;
  }

  .cta-main .display {
    font-size: clamp(44px, 5.2vw, 76px);
  }
}

/* =========================================================
   CORREÇÕES DE POSICIONAMENTO — 17/09/2026 / FINAL-7
   Ajustes feitos a partir das marcações em tela do usuário.
   ========================================================= */
@media (min-width: 861px) {
  /* 01 / HERO
     - leva o microtítulo Marketing de Performance para a faixa superior;
     - alinha TER DIREÇÃO à esquerda com a primeira linha. */
  .section--hero .hero-kicker {
    position: absolute;
    top: calc(var(--header-h) + 38px);
    left: var(--page-x);
    z-index: 6;
    margin: 0;
  }

  .section--hero .hero-kicker i,
  .section--hero .hero-kicker span:last-child {
    display: none;
  }

  .section--hero .hero-copy {
    margin-top: 34px;
  }

  .section--hero .hero-title span {
    margin-left: 0;
  }

  /* 02 / VISÃO
     Topo do título e topo do conteúdo lateral no mesmo eixo. */
  .editorial-grid {
    align-items: start;
    align-content: center;
  }

  .editorial-title,
  .editorial-copy {
    align-self: start;
  }

  /* 03 / FLUXO
     Numeração volta para o topo da tela e abre respiro real
     entre título/copy e a régua de etapas. */
  .flow-grid .side-label {
    position: absolute;
    top: calc(var(--header-h) + 18px);
    left: var(--page-x);
    z-index: 12;
    margin: 0;
  }

  .flow-grid {
    row-gap: 0;
  }

  .flow-head {
    margin-bottom: 34px;
  }

  .flow-slider {
    margin-top: 0;
  }

  /* 06 / O QUE VAMOS CONSTRUIR
     O primeiro texto volta para a esquerda, o segundo fica à direita,
     e a régua de palavras desce para ocupar melhor o terço inferior. */
  .build-main {
    width: 100%;
  }

  .build-copy {
    width: 100%;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    margin: 16px 0 0;
    gap: clamp(72px, 10vw, 170px);
  }

  .build-copy p:first-child {
    max-width: 440px;
    justify-self: start;
  }

  .build-copy p:last-child {
    max-width: 440px;
    justify-self: end;
    text-align: left;
  }

  .build-words {
    margin-top: clamp(38px, 6vh, 58px);
    width: 100%;
  }
}

@media (min-width: 861px) and (max-height: 760px) {
  .section--hero .hero-kicker {
    top: calc(var(--header-h) + 32px);
  }

  .section--hero .hero-copy {
    margin-top: 28px;
  }

  .flow-grid .side-label {
    top: calc(var(--header-h) + 14px);
  }

  .flow-head {
    margin-bottom: 26px;
  }

  .build-copy {
    margin-top: 12px;
  }

  .build-words {
    margin-top: 30px;
  }
}

/* Refinamento da seção 02: manter o marcador no topo e centralizar apenas o par título/conteúdo. */
@media (min-width: 861px) {
  .editorial-grid {
    grid-template-rows: 1fr auto 1fr;
    grid-template-areas:
      "side . ."
      "side title copy"
      "side . .";
    align-items: start;
    align-content: stretch;
  }

  .editorial-grid .side-label {
    grid-area: side;
    align-self: start;
  }
}

/* =========================================================
   POSICIONAMENTO FINAL — FINAL-9
   Correções baseadas nas marcações em tela do usuário.
   Escopo: desktop / notebook. Não altera conteúdo nem componentes.
   ========================================================= */
@media (min-width: 861px) {
  /* 01 / HERO */
  .section--hero .hero-kicker {
    position: absolute !important;
    top: calc(var(--header-h) + 28px) !important;
    left: var(--page-x) !important;
    z-index: 12 !important;
    margin: 0 !important;
  }

  .section--hero .hero-kicker i,
  .section--hero .hero-kicker span:last-child {
    display: none !important;
  }

  .section--hero .hero-title span {
    margin-left: 0 !important;
  }

  /* 02 / VISÃO */
  .editorial-grid {
    position: relative !important;
    grid-template-columns: 100px minmax(0, .92fr) minmax(360px, .76fr) !important;
    grid-template-rows: auto !important;
    grid-template-areas: "side title copy" !important;
    align-items: start !important;
    align-content: center !important;
  }

  .editorial-grid .side-label {
    position: absolute !important;
    top: calc(var(--header-h) + 10px) !important;
    left: 0 !important;
    z-index: 12 !important;
    margin: 0 !important;
  }

  .editorial-title,
  .editorial-copy {
    align-self: start !important;
    margin-top: 0 !important;
    transform: none !important;
  }

  /* 03 / FLUXO */
  .flow-grid {
    position: relative !important;
    grid-template-columns: 100px minmax(0, 1fr) !important;
    grid-template-rows: auto auto auto !important;
    grid-template-areas: "side head" "side slider" "side note" !important;
    row-gap: 0 !important;
    align-content: center !important;
  }

  .flow-grid .side-label {
    position: absolute !important;
    top: calc(var(--header-h) + 10px) !important;
    left: 0 !important;
    z-index: 12 !important;
    margin: 0 !important;
  }

  .flow-head {
    margin: 0 0 48px 0 !important;
  }

  .flow-slider {
    margin-top: 0 !important;
  }

  /* 06 / O QUE VAMOS CONSTRUIR */
  .build-main {
    width: 100% !important;
    transform: none !important;
  }

  .build-copy {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important;
    gap: clamp(72px, 10vw, 170px) !important;
    margin: 18px 0 0 !important;
  }

  .build-copy p:first-child {
    justify-self: start !important;
    max-width: 440px !important;
    text-align: left !important;
  }

  .build-copy p:last-child {
    justify-self: end !important;
    max-width: 440px !important;
    text-align: left !important;
  }

  .build-words {
    width: 100% !important;
    margin-top: 58px !important;
    padding-top: 18px !important;
  }
}

@media (min-width: 861px) and (max-height: 760px) {
  .section--hero .hero-kicker {
    top: calc(var(--header-h) + 24px) !important;
  }

  .flow-head {
    margin-bottom: 42px !important;
  }

  .build-copy {
    margin-top: 14px !important;
  }

  .build-words {
    margin-top: 50px !important;
    padding-top: 16px !important;
  }
}
