/* ═══════════════════════════════════════════════════
   GrupoO2 — main.css v2.0
   Design System · Tokens · Components · Sections
   ═══════════════════════════════════════════════════ */

/* ── TOKENS ─────────────────────────────────────── */
:root {
  --white:   #FAFAF8;
  --black:   #0C0C0B;
  --red:     #C0111E;
  --red-d:   #8A0C16;
  --ink:     #F0EDE8;
  --surface: #F5F4F1;
  --border:  #E6E4DF;
  --muted:   #58575280;
  --text:    #585752;
  --subtle:  #9A9893;

  --serif: 'Cormorant Garamond', Georgia, serif;
  --sans:  'DM Sans', system-ui, sans-serif;

  --nav-h:  68px;
  --gutter: max(20px, 5.5vw);
  --mw:     1240px;
  --sec-y:  clamp(5rem, 9vw, 8.5rem);

  --ease:   cubic-bezier(.22,1,.36,1);
  --fast:   .18s;
  --mid:    .3s;
  --slow:   .65s;

  --sh-sm:  0 1px 8px rgba(0,0,0,.05);
  --sh-md:  0 6px 28px rgba(0,0,0,.07);
  --sh-lg:  0 16px 56px rgba(0,0,0,.09);
  --sh-red: 0 8px 28px rgba(192,17,30,.22);
}

/* ── RESET ──────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{font-family:var(--sans);background:var(--white);color:var(--black);-webkit-font-smoothing:antialiased;overflow-x:hidden;min-height:100vh}
img,svg{display:block;max-width:100%}
input,button,textarea,select{font:inherit}
ul,ol{list-style:none}
a{text-decoration:none;color:inherit}
button{cursor:pointer;border:none;background:none}
:focus-visible{outline:2px solid var(--red);outline-offset:3px}

/* ── LAYOUT ─────────────────────────────────────── */
.wrap{width:100%;max-width:var(--mw);margin-inline:auto;padding-inline:var(--gutter)}
.sec{padding-block:var(--sec-y);padding-inline:var(--gutter)}
.sec--surface{background:var(--surface)}
.sec--dark{background:var(--black);color:var(--white)}
.sec--dark .wrap{padding-inline:0}

/* ── TYPOGRAPHY UTILS ───────────────────────────── */
.eyebrow{display:flex;align-items:center;gap:.55rem;font-size:.65rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:.9rem}
.eyebrow::before{content:'';width:18px;height:1px;background:currentColor;flex-shrink:0}

.sec-title{font-family:var(--serif);font-size:clamp(2rem,4vw,3.1rem);font-weight:600;line-height:1.08;letter-spacing:-.03em;color:var(--black);margin-bottom:clamp(2.5rem,5vw,4rem)}
.sec-title--light{color:var(--white)}
.sec-title em{color:var(--red);font-style:normal}

/* ── BUTTONS ─────────────────────────────────────── */
.btn{display:inline-block;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;transition:background var(--fast) var(--ease),color var(--fast) var(--ease),transform var(--mid) var(--ease),box-shadow var(--mid) var(--ease),border-color var(--fast) var(--ease)}
.btn--fill{background:var(--red);color:var(--white);padding:.95rem 2.2rem}
.btn--fill:hover{background:var(--red-d);transform:translateY(-2px);box-shadow:var(--sh-red)}
.btn--outline{background:transparent;color:var(--black);padding:.95rem 0;border-bottom:1px solid var(--black)}
.btn--outline:hover{color:var(--red);border-color:var(--red)}
.btn--light{background:var(--white);color:var(--red);padding:.95rem 2.2rem}
.btn--light:hover{transform:translateY(-2px);box-shadow:var(--sh-lg)}

/* ── REVEAL ANIMATION ───────────────────────────── */
.rv{opacity:0;transform:translateY(26px);transition:opacity var(--slow) var(--ease),transform var(--slow) var(--ease);transition-delay:var(--d,0s)}
.rv.on{opacity:1;transform:translateY(0)}
@media(prefers-reduced-motion:reduce){.rv{opacity:1;transform:none;transition:none}}

/* ═══════════════════════════════════════════════════
   LOGO SVG — inline component used in nav + footer
   ═══════════════════════════════════════════════════ */
.logo-svg{display:block;width:auto}
.logo-svg .l-mark-sq{fill:none;stroke:var(--black);stroke-width:1.8}
.logo-svg .l-mark-bar{fill:var(--red)}
.logo-svg .l-mark-o{fill:none;stroke:var(--black);stroke-width:7}
.logo-svg .l-mark-2-line{stroke:var(--red);stroke-width:3;stroke-linecap:square;fill:none}
.logo-svg .l-mark-dot{fill:var(--red)}
.logo-svg .l-word-grupo{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.03em;fill:var(--black)}
.logo-svg .l-word-o2{font-family:var(--serif);font-size:22px;font-weight:600;letter-spacing:-.03em;fill:var(--red)}
.logo-svg .l-tag{font-family:var(--sans);font-size:6.5px;font-weight:500;letter-spacing:.2em;fill:var(--subtle)}

/* Light logo (for dark backgrounds) */
.logo-svg--light .l-mark-sq{stroke:rgba(250,248,245,.7)}
.logo-svg--light .l-mark-o{stroke:var(--white)}
.logo-svg--light .l-word-grupo{fill:var(--white)}
.logo-svg--light .l-tag{fill:rgba(250,248,245,.35)}

/* ═══════════════════════════════════════════════════
   NAV
   ═══════════════════════════════════════════════════ */
.nav{position:fixed;inset:0 0 auto;z-index:100;height:var(--nav-h);background:rgba(250,250,248,.94);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-bottom:1px solid rgba(0,0,0,.05);transition:box-shadow var(--mid) var(--ease)}
.nav.scrolled{box-shadow:var(--sh-sm)}
.nav__inner{max-width:var(--mw);margin-inline:auto;height:100%;padding-inline:var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:2rem}
.nav__links{display:flex;gap:2.2rem}
.nav__links a{font-size:.68rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;color:var(--text);transition:color var(--fast)}
.nav__links a:hover{color:var(--black)}
.nav__cta{font-size:.68rem;font-weight:500;letter-spacing:.09em;text-transform:uppercase;background:var(--black);color:var(--white);padding:.5rem 1.3rem;flex-shrink:0;transition:background var(--fast)}
.nav__cta:hover{background:var(--red)}
.nav__burger{display:none;flex-direction:column;gap:5px;width:26px;flex-shrink:0}
.nav__burger span{display:block;width:100%;height:1.5px;background:var(--black);transition:transform var(--mid) var(--ease),opacity var(--mid)}
.nav__burger.open span:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nav__burger.open span:nth-child(2){opacity:0}
.nav__burger.open span:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nav__mob{position:absolute;top:var(--nav-h);inset-inline:0;background:var(--white);border-bottom:1px solid var(--border);max-height:0;overflow:hidden;transition:max-height .4s var(--ease)}
.nav__mob.open{max-height:420px}
.nav__mob ul{padding:1rem var(--gutter) 1.6rem}
.nav__mob a{display:block;padding:.8rem 0;font-size:.75rem;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--text);border-bottom:1px solid var(--border);transition:color var(--fast)}
.nav__mob a:last-child{border:none;color:var(--red);margin-top:.8rem}
.nav__mob a:hover{color:var(--red)}

/* ═══════════════════════════════════════════════════
   HERO
   ═══════════════════════════════════════════════════ */
.hero{position:relative;min-height:100vh;display:flex;align-items:center;background:var(--white);padding-top:var(--nav-h);overflow:hidden}
.hero__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(0,0,0,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.035) 1px,transparent 1px);background-size:68px 68px;pointer-events:none}
.hero__vline{position:absolute;top:8%;bottom:8%;left:50%;width:1px;background:linear-gradient(to bottom,transparent,rgba(192,17,30,.1) 30%,rgba(192,17,30,.1) 70%,transparent);pointer-events:none}
.hero__inner{position:relative;z-index:2;width:100%;max-width:var(--mw);margin-inline:auto;padding:5rem var(--gutter);display:grid;grid-template-columns:1fr 380px;gap:4rem;align-items:center}
.hero__eyebrow{display:flex;align-items:center;gap:.65rem;font-size:.62rem;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--red);margin-bottom:1.7rem}
.hero__eyebrow::before{content:'';width:24px;height:1px;background:var(--red);flex-shrink:0}
.hero__h1{font-family:var(--serif);font-size:clamp(3rem,6.5vw,5.5rem);font-weight:600;line-height:1.0;letter-spacing:-.035em;color:var(--black);margin-bottom:1.5rem}
.hero__h1 em{color:var(--red);font-style:normal}
.hero__lead{font-size:.98rem;line-height:1.82;font-weight:300;color:var(--text);max-width:460px;margin-bottom:2.6rem}
.hero__btns{display:flex;gap:1rem;align-items:center;flex-wrap:wrap}

/* Hero card */
.hero__card{background:var(--black);position:relative}
.hero__card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--red)}
.hero__card-body{padding:2.8rem}
.hero__stat+.hero__stat{margin-top:1.6rem}
.hero__stat-val{font-family:var(--serif);font-size:2.8rem;font-weight:300;line-height:1;color:var(--white)}
.hero__stat-val em{color:var(--red);font-style:normal}
.hero__stat-lbl{font-size:.6rem;font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:rgba(250,248,245,.35);margin-top:.25rem}
.hero__rule{height:1px;background:rgba(255,255,255,.07);margin-top:1.6rem}

/* ═══════════════════════════════════════════════════
   MARQUEE
   ═══════════════════════════════════════════════════ */
.mq-wrap{overflow:hidden;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.mq-track{display:flex;width:max-content;animation:mq 38s linear infinite}
.mq-set{display:flex;align-items:center;gap:2rem;padding:.85rem 2rem}
.mq-set span{font-family:var(--serif);font-size:.98rem;font-weight:400;color:rgba(12,12,11,.28);white-space:nowrap;letter-spacing:.02em}
.mq-set .dot{color:var(--red);font-size:.7rem}
@keyframes mq{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}

/* ═══════════════════════════════════════════════════
   POSICIONAMENTO
   ═══════════════════════════════════════════════════ */
.pos-grid{display:grid;grid-template-columns:1fr 1.35fr;gap:5rem;align-items:center}
.pos-quote{font-family:var(--serif);font-size:clamp(2rem,3.5vw,3rem);font-weight:400;line-height:1.18;letter-spacing:-.025em;color:var(--black)}
.pos-quote em{color:var(--red);font-style:normal}
.pos-body p{font-size:.94rem;line-height:1.9;font-weight:300;color:var(--text);margin-bottom:1rem}
.pos-callout{font-family:var(--serif);font-size:1.05rem;font-weight:500;color:var(--black);border-left:3px solid var(--red);padding-left:1.15rem;margin-top:1.8rem}

/* ═══════════════════════════════════════════════════
   PILARES
   ═══════════════════════════════════════════════════ */
.pilares{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:3.5rem}
.pilar{padding:3.5rem;position:relative;overflow:hidden}
.pilar::after{content:'';position:absolute;bottom:-50px;right:-50px;width:180px;height:180px;border-radius:50%;background:rgba(255,255,255,.04);transition:transform .45s var(--ease)}
.pilar:hover::after{transform:scale(1.35)}
.pilar--biz{background:var(--black)}
.pilar--perf{background:var(--red)}
.pilar__ghost{position:absolute;top:1.8rem;right:2.2rem;font-family:var(--serif);font-size:5rem;font-weight:300;color:rgba(255,255,255,.06);line-height:1;pointer-events:none}
.pilar__tag{display:inline-block;font-size:.58rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:rgba(255,255,255,.45);border:1px solid rgba(255,255,255,.16);padding:.25rem .7rem;margin-bottom:1.3rem}
.pilar__name{font-family:var(--serif);font-size:2.3rem;font-weight:600;line-height:1.06;letter-spacing:-.025em;color:var(--white);margin-bottom:.85rem}
.pilar__desc{font-size:.88rem;line-height:1.75;font-weight:300;color:rgba(250,248,245,.62);max-width:320px}

/* ═══════════════════════════════════════════════════
   FRASE BAND
   ═══════════════════════════════════════════════════ */
.frase-band{display:flex;background:var(--black);border-top:1px solid rgba(255,255,255,.04);border-bottom:1px solid rgba(255,255,255,.04)}
.frase-item{flex:1;min-width:180px;padding:1.8rem 2.2rem;font-family:var(--serif);font-size:.9rem;font-weight:400;color:rgba(250,248,245,.2);text-align:center;line-height:1.45;border-right:1px solid rgba(255,255,255,.04);transition:color .5s var(--ease)}
.frase-item:last-child{border-right:none}
.frase-item.on{color:rgba(250,248,245,.9)}
.frase-item::before{content:'"';color:var(--red);margin-right:.08em}

/* ═══════════════════════════════════════════════════
   SERVIÇOS
   ═══════════════════════════════════════════════════ */
.srv-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:3.5rem}
.srv{background:var(--white);padding:2.6rem;position:relative;z-index:1;transition:transform var(--mid) var(--ease),box-shadow var(--mid) var(--ease)}
.srv:hover{transform:translateY(-4px);box-shadow:var(--sh-md);z-index:2}
.srv--feat{background:var(--black)}
.srv__icon{width:32px;height:32px;margin-bottom:1.7rem;position:relative}
.srv__icon::before{content:'';position:absolute;top:0;left:0;width:20px;height:20px;border:1.5px solid var(--red)}
.srv__icon::after{content:'';position:absolute;top:5px;left:5px;width:10px;height:10px;background:var(--red)}
.srv--feat .srv__icon::before{border-color:rgba(255,255,255,.25)}
.srv--feat .srv__icon::after{background:rgba(255,255,255,.25)}
.srv__cat{font-size:.58rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--red);margin-bottom:.6rem}
.srv__name{font-family:var(--serif);font-size:1.5rem;font-weight:600;line-height:1.15;letter-spacing:-.018em;color:var(--black);margin-bottom:1.3rem}
.srv--feat .srv__name{color:var(--white)}
.srv__list{display:flex;flex-direction:column;gap:.55rem}
.srv__list li{font-size:.86rem;line-height:1.55;font-weight:300;color:var(--text);padding-left:1rem;position:relative}
.srv__list li::before{content:'';position:absolute;left:0;top:.58rem;width:5px;height:1px;background:var(--red)}
.srv--feat .srv__list li{color:rgba(250,248,245,.55)}
.srv__note{margin-top:1.6rem;padding-top:1.3rem;border-top:1px solid rgba(255,255,255,.07);font-family:var(--serif);font-size:.95rem;font-weight:400;color:var(--red);line-height:1.5}

/* ═══════════════════════════════════════════════════
   DO ZERO À OPERAÇÃO — refeita do zero
   ═══════════════════════════════════════════════════ */
.dzao{background:var(--white);overflow:hidden}

/* Header */
.dzao__hd{max-width:680px;margin-bottom:clamp(3.5rem,6vw,5.5rem)}
.dzao__h2{font-family:var(--serif);font-size:clamp(2.5rem,5.5vw,4.2rem);font-weight:600;line-height:1.02;letter-spacing:-.04em;color:var(--black);margin-bottom:1.3rem}
.dzao__h2 em{color:var(--red);font-style:normal}
.dzao__sub{font-size:1rem;line-height:1.82;font-weight:300;color:var(--text);max-width:580px}

/* Manifesto strip */
.dzao__manifesto{position:relative;background:var(--black);padding:3rem 4rem;margin-bottom:clamp(4rem,7vw,6.5rem);overflow:hidden}
.dzao__manifesto::before{content:'';position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--red)}
.dzao__manifesto-ghost{position:absolute;right:-1rem;bottom:-2rem;font-family:var(--serif);font-size:11rem;font-weight:700;line-height:1;color:rgba(255,255,255,.03);pointer-events:none;user-select:none}
.dzao__manifesto-txt{font-family:var(--serif);font-size:clamp(1.35rem,2.5vw,2rem);font-weight:400;line-height:1.4;letter-spacing:-.02em;color:rgba(250,248,245,.7);position:relative;z-index:1}
.dzao__manifesto-txt strong{color:var(--white);font-weight:600}

/* Timeline */
.dzao__timeline{position:relative;padding-left:80px;margin-bottom:clamp(4rem,7vw,6.5rem)}
.dzao__tl-spine{position:absolute;left:27px;top:28px;bottom:28px;width:1px;background:linear-gradient(to bottom,var(--red),rgba(192,17,30,.08))}

.dzao__step{display:grid;grid-template-columns:56px 1fr;gap:2.2rem;padding:2rem 0;border-bottom:1px solid var(--border);position:relative}
.dzao__step:last-child{border-bottom:none}
.dzao__step-node{width:56px;height:56px;border:1px solid var(--border);background:var(--white);display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;transition:background var(--mid),border-color var(--mid)}
.dzao__step:hover .dzao__step-node{background:var(--black);border-color:var(--black)}
.dzao__step-node--final{background:var(--red)!important;border-color:var(--red)!important}
.dzao__step-node span{font-family:var(--serif);font-size:.88rem;font-weight:500;letter-spacing:.04em;color:var(--subtle);transition:color var(--mid)}
.dzao__step:hover .dzao__step-node span{color:var(--white)}
.dzao__step-node--final span{color:var(--white)!important}
.dzao__step-body{padding-top:.85rem}
.dzao__step-title{font-family:var(--serif);font-size:1.3rem;font-weight:600;letter-spacing:-.018em;color:var(--black);margin-bottom:.35rem}
.dzao__step-desc{font-size:.86rem;line-height:1.72;font-weight:300;color:var(--text);max-width:540px}

/* Delivery blocks */
.dzao__blocks{display:grid;grid-template-columns:repeat(4,1fr);gap:3px;margin-bottom:clamp(3rem,5vw,5rem)}
.dzao__block{padding:2.4rem;position:relative;transition:transform var(--mid) var(--ease),box-shadow var(--mid) var(--ease)}
.dzao__block:hover{transform:translateY(-4px);box-shadow:var(--sh-md);z-index:2}
.dzao__block--a{background:var(--surface)}
.dzao__block--b{background:var(--black)}
.dzao__block--c{background:var(--surface)}
.dzao__block--d{background:var(--red)}

.dzao__block-ico{width:28px;height:28px;margin-bottom:1.5rem;color:var(--red)}
.dzao__block--b .dzao__block-ico{color:rgba(250,248,245,.4)}
.dzao__block--d .dzao__block-ico{color:rgba(255,255,255,.75)}

.dzao__block-cat{font-size:.58rem;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--subtle);margin-bottom:.5rem}
.dzao__block--b .dzao__block-cat{color:rgba(250,248,245,.3)}
.dzao__block--d .dzao__block-cat{color:rgba(255,255,255,.55)}

.dzao__block-title{font-family:var(--serif);font-size:1.25rem;font-weight:600;letter-spacing:-.018em;line-height:1.18;color:var(--black);margin-bottom:1.1rem}
.dzao__block--b .dzao__block-title{color:var(--white)}
.dzao__block--d .dzao__block-title{color:var(--white)}

.dzao__block-list{display:flex;flex-direction:column;gap:.5rem}
.dzao__block-list li{font-size:.8rem;line-height:1.55;font-weight:300;color:var(--text);padding-left:.9rem;position:relative}
.dzao__block-list li::before{content:'';position:absolute;left:0;top:.56rem;width:4px;height:1px;background:var(--red)}
.dzao__block--b .dzao__block-list li{color:rgba(250,248,245,.48)}
.dzao__block--b .dzao__block-list li::before{background:var(--red)}
.dzao__block--d .dzao__block-list li{color:rgba(255,255,255,.78)}
.dzao__block--d .dzao__block-list li::before{background:rgba(255,255,255,.65)}

/* Bottom CTA bar */
.dzao__bar{display:flex;align-items:center;justify-content:space-between;gap:2rem;padding:2.8rem 3.2rem;background:var(--surface);border-left:3px solid var(--red);flex-wrap:wrap}
.dzao__bar-txt{font-family:var(--serif);font-size:clamp(1.05rem,2vw,1.45rem);font-weight:400;line-height:1.4;letter-spacing:-.015em;color:var(--black);max-width:580px}

/* ═══════════════════════════════════════════════════
   IMPACTO BAND
   ═══════════════════════════════════════════════════ */
.impacto{background:var(--red);padding:6rem var(--gutter);text-align:center}
.impacto .wrap{padding-inline:0}
.impacto__q{font-family:var(--serif);font-size:clamp(1.7rem,3.5vw,2.7rem);font-weight:400;line-height:1.2;letter-spacing:-.022em;color:var(--white);max-width:740px;margin-inline:auto;margin-bottom:1.3rem}
.impacto__s{font-size:.94rem;line-height:1.8;font-weight:300;color:rgba(255,255,255,.72);max-width:470px;margin-inline:auto;margin-bottom:2.4rem}

/* ═══════════════════════════════════════════════════
   METODOLOGIA
   ═══════════════════════════════════════════════════ */
.metodo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:4rem;position:relative}
.metodo-grid::before{content:'';position:absolute;top:27px;left:calc(12.5% + 22px);right:calc(12.5% + 22px);height:1px;background:rgba(255,255,255,.06)}
.m-step{padding:0 1.8rem}
.m-step:first-child{padding-left:0}
.m-step:last-child{padding-right:0}
.m-step__node{width:54px;height:54px;border:1px solid rgba(255,255,255,.1);display:flex;align-items:center;justify-content:center;margin-bottom:1.8rem;background:var(--black);transition:border-color var(--mid),background var(--mid)}
.m-step:hover .m-step__node{border-color:var(--red);background:var(--red)}
.m-step__node span{font-family:var(--serif);font-size:.9rem;font-weight:500;color:rgba(250,248,245,.32);transition:color var(--mid)}
.m-step:hover .m-step__node span{color:var(--white)}
.m-step__title{font-family:var(--serif);font-size:1.45rem;font-weight:500;letter-spacing:-.018em;color:var(--white);margin-bottom:.65rem}
.m-step__desc{font-size:.82rem;line-height:1.72;font-weight:300;color:rgba(250,248,245,.35)}

/* ═══════════════════════════════════════════════════
   SOBRE
   ═══════════════════════════════════════════════════ */
.sobre-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:5rem;align-items:start}
.sobre-photo-wrap{position:relative}
.sobre-photo{width:100%;aspect-ratio:3/4;background:var(--surface);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.9rem;color:rgba(12,12,11,.2)}
.sobre-photo-img{width:100%;height:100%;object-fit:cover;display:block}
.sobre-photo span{font-size:.62rem;letter-spacing:.14em;text-transform:uppercase}
.sobre-accent{position:absolute;bottom:-18px;right:-18px;width:88px;height:88px;background:var(--red);z-index:-1}
.sobre-name{font-family:var(--serif);font-size:2.7rem;font-weight:600;letter-spacing:-.03em;color:var(--black);line-height:1;margin-bottom:.28rem}
.sobre-role{font-size:.62rem;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--red);margin-bottom:2rem}
.sobre-body p{font-size:.9rem;line-height:1.88;font-weight:300;color:var(--text);margin-bottom:.95rem}
.sobre-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:1.8rem}
.tag{display:inline-block;background:var(--surface);font-size:.58rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;padding:.4rem .85rem;color:var(--black)}
.sobre-badge{display:flex;align-items:center;gap:.9rem;background:var(--black);padding:1.2rem 1.4rem;margin-top:1.8rem}
.sobre-badge__ico{font-size:1.35rem;flex-shrink:0}
.sobre-badge__txt{font-family:var(--serif);font-size:.92rem;font-weight:400;line-height:1.4;color:var(--white)}
.sobre-badge__txt strong{color:var(--red);font-weight:600}

/* ═══════════════════════════════════════════════════
   DIFERENCIAIS
   ═══════════════════════════════════════════════════ */
.dif-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 5rem;margin-top:3.5rem}
.dif{display:flex;gap:1.3rem;padding:1.7rem 0;border-bottom:1px solid var(--border)}
.dif__n{font-family:var(--serif);font-size:1.7rem;font-weight:300;color:var(--red);opacity:.3;line-height:1;min-width:2rem;padding-top:.05rem}
.dif__body h3{font-family:var(--serif);font-size:1.1rem;font-weight:500;letter-spacing:-.012em;color:var(--black);margin-bottom:.3rem}
.dif__body p{font-size:.82rem;line-height:1.72;font-weight:300;color:var(--text)}

/* ═══════════════════════════════════════════════════
   PARA QUEM
   ═══════════════════════════════════════════════════ */
.pq-grid{display:grid;grid-template-columns:1fr 1fr;gap:3px;margin-top:3.5rem}
.pq{background:var(--white);padding:2.4rem;display:flex;gap:1.2rem;align-items:flex-start;transition:background var(--mid) var(--ease)}
.pq:hover{background:var(--black)}
.pq__arr{width:40px;height:40px;min-width:40px;border:1px solid var(--black);display:flex;align-items:center;justify-content:center;font-size:.95rem;color:var(--black);transition:border-color var(--mid),color var(--mid)}
.pq:hover .pq__arr{border-color:var(--red);color:var(--red)}
.pq__title{font-family:var(--serif);font-size:1.15rem;font-weight:500;letter-spacing:-.012em;color:var(--black);margin-bottom:.35rem;transition:color var(--mid)}
.pq:hover .pq__title{color:var(--white)}
.pq__desc{font-size:.82rem;line-height:1.62;font-weight:300;color:var(--text);transition:color var(--mid)}
.pq:hover .pq__desc{color:rgba(250,248,245,.48)}

/* ═══════════════════════════════════════════════════
   CONEXÃO
   ═══════════════════════════════════════════════════ */
.conexao{position:relative;overflow:hidden}
.conexao__radial{position:absolute;inset:0;background:radial-gradient(ellipse 55% 50% at 50% 50%,rgba(192,17,30,.055),transparent 70%);pointer-events:none}
.conexao__in{position:relative;z-index:1;text-align:center;padding-block:var(--sec-y)}
.conexao__h2{font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.9rem);font-weight:400;line-height:1.14;letter-spacing:-.032em;color:var(--white);max-width:700px;margin-inline:auto;margin-bottom:1.3rem}
.conexao__h2 strong{color:var(--red);font-weight:600}
.conexao__p{font-size:.93rem;line-height:1.8;font-weight:300;color:rgba(250,248,245,.45);max-width:480px;margin-inline:auto;margin-bottom:2.7rem}

/* ═══════════════════════════════════════════════════
   CTA FINAL
   ═══════════════════════════════════════════════════ */
.cta-in{text-align:center;max-width:600px;margin-inline:auto}
.cta-kicker{font-size:.62rem;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--red);margin-bottom:1.1rem}
.cta-h2{font-family:var(--serif);font-size:clamp(2.2rem,5vw,3.5rem);font-weight:600;line-height:1.07;letter-spacing:-.032em;color:var(--black);margin-bottom:.95rem}
.cta-p{font-size:.93rem;line-height:1.76;font-weight:300;color:var(--text);margin-bottom:2.7rem}

/* ── Form ─────────────────────────────────────── */
.form{display:flex;flex-direction:column;gap:.85rem;text-align:left;max-width:500px;margin-inline:auto}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:.85rem}
.form-f{display:flex;flex-direction:column;gap:.3rem}
.form-f label{font-size:.6rem;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--text)}
.form-f input,.form-f textarea{border:1px solid var(--border);padding:.82rem .95rem;font-family:var(--sans);font-size:.9rem;color:var(--black);background:var(--white);outline:none;width:100%;transition:border-color var(--fast);-webkit-appearance:none;border-radius:0}
.form-f input::placeholder,.form-f textarea::placeholder{color:var(--subtle)}
.form-f input:focus,.form-f textarea:focus{border-color:var(--black)}
.form-f input.err,.form-f textarea.err{border-color:var(--red)}
.form-f textarea{resize:none;height:90px}
.form-btn{background:var(--black);color:var(--white);padding:.95rem 2rem;font-family:var(--sans);font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;border:none;width:100%;margin-top:.25rem;transition:background var(--fast),transform var(--mid) var(--ease)}
.form-btn:hover{background:var(--red);transform:translateY(-1px)}
.form-btn:disabled{background:var(--subtle);cursor:not-allowed;transform:none}
.form-btn.ok{background:#186628}

/* ═══════════════════════════════════════════════════
   FOOTER
   ═══════════════════════════════════════════════════ */
.footer{background:var(--black);border-top:1px solid rgba(255,255,255,.04)}
.footer__in{max-width:var(--mw);margin-inline:auto;padding:2.4rem var(--gutter);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}
.footer__links{display:flex;gap:1.4rem;flex-wrap:wrap}
.footer__links a{font-size:.62rem;font-weight:400;letter-spacing:.09em;text-transform:uppercase;color:rgba(250,248,245,.3);transition:color var(--fast)}
.footer__links a:hover{color:var(--red)}
.footer__copy{font-size:.65rem;color:rgba(250,248,245,.18)}

/* ═══════════════════════════════════════════════════
   WHATSAPP
   ═══════════════════════════════════════════════════ */
.wa{position:fixed;bottom:1.8rem;right:1.8rem;z-index:200;display:flex;align-items:center;gap:.55rem}
.wa svg{width:56px;height:56px;background:#22C55E;border-radius:50%;padding:13px;fill:white;box-shadow:0 4px 20px rgba(34,197,94,.3);transition:transform var(--mid) var(--ease),box-shadow var(--mid);flex-shrink:0}
.wa:hover svg{transform:scale(1.08);box-shadow:0 8px 32px rgba(34,197,94,.42)}
.wa__lbl{background:var(--black);color:var(--white);font-size:.68rem;font-weight:500;letter-spacing:.06em;padding:.38rem .85rem;white-space:nowrap;opacity:0;transform:translateX(8px);transition:opacity var(--mid),transform var(--mid);pointer-events:none;order:-1}
.wa:hover .wa__lbl{opacity:1;transform:translateX(0)}

/* ═══════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════ */
@media(max-width:1080px){
  .nav__links,.nav__cta{display:none}
  .nav__burger{display:flex}
  .hero__inner{grid-template-columns:1fr;padding-block:3.5rem}
  .hero__card{display:none}
  .pos-grid{grid-template-columns:1fr;gap:2.5rem}
  .pilares{grid-template-columns:1fr}
  .srv-grid{grid-template-columns:1fr}
  .dzao__blocks{grid-template-columns:1fr 1fr}
  .metodo-grid{grid-template-columns:1fr 1fr;gap:2.8rem}
  .metodo-grid::before{display:none}
  .m-step{padding:0}
  .sobre-grid{grid-template-columns:1fr;gap:2.8rem}
  .sobre-photo{aspect-ratio:4/3}
  .sobre-accent{display:none}
  .dif-grid{grid-template-columns:1fr;gap:0}
  .pq-grid{grid-template-columns:1fr}
  .frase-band{flex-wrap:wrap}
  .frase-item{flex-basis:50%;border-right:none;border-bottom:1px solid rgba(255,255,255,.04)}
  .frase-item:nth-child(odd){border-right:1px solid rgba(255,255,255,.04)}
  .frase-item:last-child{border-bottom:none}
}
@media(max-width:760px){
  :root{--sec-y:clamp(3.5rem,8vw,5.5rem);--gutter:18px}
  .dzao__timeline{padding-left:0}
  .dzao__tl-spine{display:none}
  .dzao__step{grid-template-columns:44px 1fr;gap:1rem}
  .dzao__step-node{width:44px;height:44px}
  .dzao__manifesto{padding:1.8rem}
  .dzao__manifesto-ghost{display:none}
  .dzao__blocks{grid-template-columns:1fr}
  .dzao__bar{flex-direction:column;align-items:flex-start;padding:1.8rem}
  .metodo-grid{grid-template-columns:1fr;gap:2rem}
  .frase-band{flex-direction:column}
  .frase-item{flex-basis:auto;border-right:none;border-bottom:1px solid rgba(255,255,255,.04)}
  .footer__in{flex-direction:column;text-align:center;gap:1.2rem}
  .footer__links{justify-content:center}
  .pilar{padding:2.4rem}
  .srv{padding:2rem}
}
@media(max-width:480px){
  .form-row{grid-template-columns:1fr}
  .hero__btns{flex-direction:column;align-items:flex-start}
  .hero__h1{font-size:2.6rem}
  .pilar{padding:2rem}
  .pilar__name{font-size:2rem}
  .wa__lbl{display:none}
  .sobre-badge{flex-direction:column;text-align:center}
  .dzao__step{grid-template-columns:1fr}
  .dzao__step-node{display:none}
}
