/* ============================================================
   Marcas Magnéticas · Arquitetos — landing page (site3)
   Base visual: VS Marketing Design System (tokens medidos do site)
   + apresentação "MarcasMagneticas_Arquitetura.pdf"
   ============================================================ */

/* ---------- Fontes (self-hosted, copiadas do design system) ---------- */
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url('assets/fonts/space-grotesk-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url('assets/fonts/space-grotesk-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/fonts/inter-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Inter';font-style:normal;font-weight:100 900;font-display:swap;src:url('assets/fonts/inter-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/playfair-display-latin-ext-italic.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:italic;font-weight:400;font-display:swap;src:url('assets/fonts/playfair-display-latin-italic.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/playfair-display-latin-ext.woff2') format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Playfair Display';font-style:normal;font-weight:400 700;font-display:swap;src:url('assets/fonts/playfair-display-latin.woff2') format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}

/* ---------- Tokens ---------- */
:root{
  --wine:#64282A; --wine-900:#471112;
  --sand-300:#DBCFBF; --sand-200:#DCD9D0; --sand-100:#EAEAE9;
  --taupe-900:#403B35; --taupe-800:#403B36; --taupe-700:#5B544D; --taupe-600:#58514B; --taupe-500:#6A625A;
  --ink-900:#101010; --ink-800:#282725;
  --grey-100:#F2F2F2; --white:#FFFFFF;
  --cream:#EDE8E2; --cream-2:#E6E0D9;
  --c-consciencia:#746A5F; --c-lideranca:#A27B61; --c-estrategia:#414143; --c-acao:#69787D; --c-resultados:#9B8E85;

  --font-display:'Space Grotesk',system-ui,sans-serif;
  --font-body:'Inter',system-ui,sans-serif;
  --font-accent:'Playfair Display',Georgia,serif;

  --radius-sm:10px; --radius-md:20px; --radius-pill:100px; --radius-leaf:50px 0 50px 50px;
  --shadow-card:0 10px 18px rgba(0,0,0,.10);
  --shadow-card-strong:0 10px 18px rgba(0,0,0,.15);
  --shadow-lift:0 16px 28px rgba(0,0,0,.18);

  --gradient-sand:linear-gradient(95deg,#DBCFBF 0%,#DCD9D0 100%);
  --gradient-wine:linear-gradient(95deg,#64282A 0%,#471112 100%);
  --gradient-taupe:linear-gradient(95deg,#6A625A 0%,#403B36 100%);
  --gradient-section:linear-gradient(145deg,#5B544D 0%,#58514B 100%);
  --gradient-tile:linear-gradient(145deg,#F2F2F2 0%,#FFFFFF 100%);
  --gradient-rule:linear-gradient(90deg,rgba(0,0,0,0) 0%,#64282A 50%,rgba(0,0,0,0) 100%);
  --gradient-rule-sand:linear-gradient(90deg,rgba(0,0,0,0) 0%,#DBCFBF 50%,rgba(0,0,0,0) 100%);

  --hairline:rgba(53,50,44,.14);
  --hairline-dark:rgba(255,255,255,.18);

  --dur-fast:150ms; --dur:300ms; --dur-slow:600ms;
  --ease:cubic-bezier(.25,.46,.45,.94);
  --ease-out:cubic-bezier(.16,1,.3,1);

  --container:1200px; --pad-x:60px;
  --section-y:120px; --section-y-tight:80px;
}
@media (max-width:900px){
  :root{--pad-x:24px;--section-y:80px;--section-y-tight:56px}
}

/* ---------- Base ---------- */
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
body{margin:0;font-family:var(--font-body);font-size:18px;line-height:1.55;letter-spacing:.2px;color:var(--ink-900);background:var(--cream);-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none !important}
h1,h2,h3,h4{margin:0;font-family:var(--font-display);font-weight:500;line-height:1.12}
p{margin:0 0 20px}
ul,ol{margin:0;padding:0;list-style:none}
a{color:var(--wine);text-decoration:none;transition:color var(--dur) var(--ease)}
a:hover{color:var(--wine-900)}
button{font:inherit;color:inherit}
::selection{background:var(--sand-300);color:var(--wine)}
:focus-visible{outline:2px solid var(--wine);outline-offset:3px}
.section--dark :focus-visible,.hero :focus-visible,.final :focus-visible{outline-color:var(--sand-300)}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.container{max-width:var(--container);margin:0 auto;padding:0 var(--pad-x)}
.container--wide{max-width:1400px}

/* ---------- Sections ---------- */
.section{position:relative;padding:var(--section-y) 0}
.section--tight{padding:var(--section-y-tight) 0}
.section--light{background:linear-gradient(145deg,#F0EBE6 0%,var(--cream-2) 100%);color:var(--ink-900)}
.section--light.has-bar::before{content:"";position:absolute;top:0;left:0;right:0;height:8px;background:var(--wine)}
.section--dark{background:radial-gradient(120% 90% at 15% 0%,#4B453F 0%,var(--taupe-900) 60%);color:var(--white)}
.section--dark.is-gradient{background:var(--gradient-section)}

.kicker{display:inline-block;font-family:var(--font-body);font-size:14px;line-height:1;letter-spacing:.14em;text-transform:uppercase;color:var(--wine);padding-bottom:10px;border-bottom:1px solid var(--wine);margin-bottom:28px}
.section--dark .kicker,.hero .kicker,.final .kicker{color:var(--sand-300);border-color:var(--sand-300)}

.h2{font-size:clamp(30px,3.8vw,46px);font-weight:600;letter-spacing:-.01em;color:var(--ink-900);max-width:900px;margin-bottom:22px}
.section--dark .h2{font-weight:300;color:var(--white)}
.lead{font-size:20px;line-height:1.5;max-width:760px;color:var(--ink-800);margin-bottom:44px}
.section--dark .lead{color:var(--sand-200)}
.punch{font-family:var(--font-display);font-weight:500;font-size:clamp(20px,2.3vw,27px);line-height:1.35;color:var(--wine);max-width:900px;margin:44px 0 0}
.section--dark .punch{color:var(--sand-300)}
.center{text-align:center}
.center .h2,.center .lead,.center .punch{margin-left:auto;margin-right:auto}

.rule{height:1px;border:0;margin:0;background:var(--gradient-rule)}
.section--dark .rule{background:var(--gradient-rule-sand)}

/* ---------- Botões ---------- */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:20px 44px;border-radius:var(--radius-pill);border:0;cursor:pointer;font-family:var(--font-display);font-weight:500;font-size:17px;line-height:1;letter-spacing:.4px;text-transform:uppercase;text-decoration:none;white-space:nowrap;transition:transform var(--dur) var(--ease),filter var(--dur) var(--ease),box-shadow var(--dur) var(--ease);will-change:transform}
.btn i{font-size:1.15em}
.btn--lg{padding:26px 52px;font-size:19px;gap:26px}
.btn--sm{padding:14px 26px;font-size:14px;gap:14px}
.btn--wine{background:var(--gradient-wine);color:var(--white)}
.btn--sand{background:var(--gradient-sand);color:var(--wine)}
.btn--taupe{background:var(--gradient-taupe);color:var(--white)}
.btn--ghost{background:transparent;color:var(--sand-300);box-shadow:inset 0 0 0 1px rgba(219,207,191,.55)}
.btn--ghost:hover{box-shadow:inset 0 0 0 1px rgba(219,207,191,1)}
.btn:hover{transform:translateY(-2px);filter:brightness(1.06);color:inherit;text-decoration:none}
.btn--wine:hover,.btn--taupe:hover{color:var(--white)}
.btn--sand:hover{color:var(--wine)}
.btn--ghost:hover{color:var(--sand-300)}
.btn:active{transform:scale(.985);filter:none}
.btn--full{width:100%;white-space:normal;text-align:center;padding:28px 40px;font-size:clamp(15px,1.6vw,20px);line-height:1.3}
.btn-row{display:flex;flex-wrap:wrap;gap:16px;align-items:center}
@media (max-width:600px){
  .btn{padding:18px 30px;font-size:15px;gap:14px;white-space:normal;text-align:center}
  .btn--lg{padding:20px 34px;font-size:16px}
  .btn-row .btn{width:100%}
}

/* ---------- Barra de anúncio + contagem ---------- */
.topbar{background:var(--gradient-wine);color:var(--white);font-size:14px;letter-spacing:.3px}
.topbar .container{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 24px;min-height:44px;padding-top:8px;padding-bottom:8px}
.topbar__tag{font-family:var(--font-display);font-weight:500;text-transform:uppercase;letter-spacing:.12em;font-size:12px;color:var(--sand-300)}
.topbar__count{font-family:var(--font-display);font-weight:500;letter-spacing:.04em;text-transform:uppercase;font-size:13px}
.topbar__count b{font-family:var(--font-accent);font-weight:400;font-size:18px;color:var(--sand-300);margin:0 2px}
@media (max-width:700px){.topbar__sep,.topbar__extra{display:none}}

/* ---------- Header ---------- */
.header{position:absolute;top:0;left:0;right:0;z-index:5;padding:26px 0}
.header .container{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1400px}
.header__logo img{height:60px;width:auto}
.nav{display:flex;align-items:center;gap:34px}
.nav a{color:var(--white);font-family:var(--font-display);font-size:14px;letter-spacing:.4px;text-transform:uppercase;padding-bottom:3px;border-bottom:1px solid transparent;transition:color var(--dur) var(--ease),border-color var(--dur) var(--ease)}
.nav a:hover{color:var(--sand-300);border-color:var(--sand-300);text-decoration:none}
@media (max-width:1000px){.nav{display:none}}
@media (max-width:600px){.header__logo img{height:48px}.header .btn--sm{padding:12px 18px;font-size:12px}}

/* ---------- Hero ---------- */
.hero{position:relative;overflow:hidden;min-height:clamp(640px,88vh,780px);display:flex;align-items:center;color:var(--white);background:var(--taupe-900)}
.hero__bg{position:absolute;inset:0;background:url('assets/imagery/banner-hero-2x.webp?v=20260905e') 50% 22%/cover no-repeat}
.hero__bg::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,59,53,.98) 0%,rgba(64,59,53,.94) 38%,rgba(64,59,53,.55) 62%,rgba(64,59,53,.08) 100%)}
.hero__field{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.hero__container{position:relative;z-index:2;width:100%;padding-top:150px;padding-bottom:90px}
.hero__inner{max-width:720px}
.hero .btn--ghost{padding:20px 34px}
.hero__title{font-size:clamp(32px,4.4vw,54px);font-weight:300;line-height:1.08;letter-spacing:-.01em;color:var(--white);margin-bottom:26px}
.hero__title em{font-style:italic;font-family:var(--font-accent);font-weight:400;color:var(--sand-300)}
.hero__pillars{display:flex;flex-wrap:wrap;gap:6px 0;font-family:var(--font-display);font-size:clamp(15px,1.5vw,19px);color:var(--sand-300);letter-spacing:.3px;margin-bottom:30px}
.hero__pillars span::after{content:"·";margin:0 12px;opacity:.6}
.hero__pillars span:last-child::after{content:none}
.hero__meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:16px;color:var(--white);margin-bottom:38px;padding-top:22px;border-top:1px solid rgba(219,207,191,.35)}
.hero__meta span{display:inline-flex;align-items:center;gap:10px}
.hero__meta i{color:var(--sand-300);font-size:14px}
.hero__trust{margin-top:34px;font-size:14px;color:var(--sand-200);letter-spacing:.3px}
.hero__trust b{color:var(--white);font-weight:600}
.hero__tag{display:inline-flex;align-items:center;gap:12px;background:rgba(219,207,191,.14);border:1px solid rgba(219,207,191,.4);color:var(--sand-300);border-radius:var(--radius-pill);padding:8px 18px 8px 10px;font-family:var(--font-display);font-size:13px;letter-spacing:.08em;text-transform:uppercase;margin-bottom:30px}
.hero__tag i{width:26px;height:26px;border-radius:50%;background:var(--sand-300);color:var(--wine);display:inline-grid;place-items:center;font-size:12px}
.hero__scroll{position:absolute;left:50%;bottom:26px;transform:translateX(-50%);z-index:2;color:var(--sand-300);font-size:26px;opacity:.7}
/* Retrato no hero: só no mobile, onde a foto de fundo em paisagem perde o rosto */
.hero__portrait{display:none}
@media (max-width:900px){
  /* A foto de fundo é paisagem (1600x643): em tela retrato sobra um recorte sem rosto.
     Trocamos por fundo sólido com profundidade e trazemos o retrato como elemento. */
  .hero{min-height:0}
  .hero__bg{background:radial-gradient(120% 70% at 18% 0%,#4C463F 0%,var(--taupe-900) 62%)}
  .hero__bg::after{content:none}
  .hero__container{padding-top:112px;padding-bottom:64px}
  .hero__inner{max-width:none}
  .hero__scroll{display:none}
  .hero__pillars{margin-bottom:26px}

  .hero__portrait{display:block;position:relative;margin:0 0 30px;border-radius:var(--radius-leaf);overflow:hidden;box-shadow:var(--shadow-lift);background:#57524C}
  .hero__portrait img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:50% 12%}
  .hero__portrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:56px 22px 20px;background:linear-gradient(180deg,rgba(48,44,39,0) 0%,rgba(48,44,39,.55) 45%,rgba(48,44,39,.93) 100%)}
  .hero__portrait b{display:block;font-family:var(--font-display);font-weight:500;font-size:20px;line-height:1.2;color:var(--white)}
  .hero__portrait span{display:block;margin-top:4px;font-size:13px;line-height:1.4;color:var(--sand-200)}
  .hero__meta{padding-top:0;border-top:0;margin-bottom:28px}
  .hero__trust{display:none}
}
@media (max-width:400px){
  .hero__portrait img{aspect-ratio:1/1.06}
}

/* ---------- Rail de logos ---------- */
.logos{background:var(--cream);padding:48px 0 44px;border-bottom:1px solid var(--hairline)}
.logos__title{text-align:center;font-family:var(--font-body);font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--ink-800);margin-bottom:26px}
.logos__viewport{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.logos__track{display:flex;gap:14px;width:max-content;animation:rail 60s linear infinite}
.logos__viewport:hover .logos__track{animation-play-state:paused}
.logo-tile{flex:0 0 auto;width:168px;height:76px;background:var(--white);border:1px solid var(--hairline);border-radius:12px;display:grid;place-items:center;padding:14px 20px;box-shadow:0 4px 10px rgba(0,0,0,.04)}
.logo-tile img{max-height:100%;max-width:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1);opacity:.75;transition:filter var(--dur) var(--ease),opacity var(--dur) var(--ease)}
.logo-tile:hover img{filter:none;opacity:1}
@keyframes rail{to{transform:translateX(-50%)}}

/* ---------- Faixa marquee de marca (separador) ---------- */
.brand-marquee{background:var(--gradient-wine);overflow:hidden;padding:18px 0;border-top:1px solid rgba(255,255,255,.08);border-bottom:1px solid rgba(0,0,0,.15)}
.brand-marquee__track{display:flex;gap:64px;width:max-content;animation:rail 28s linear infinite;align-items:center}
.brand-marquee__item{display:inline-flex;align-items:center;gap:22px;color:var(--sand-300);font-family:var(--font-display);font-size:15px;letter-spacing:.18em;text-transform:uppercase;white-space:nowrap}
.brand-marquee__item img{height:34px;width:auto;opacity:.95}

/* ---------- Grelhas genéricas ---------- */
.grid{display:grid;gap:24px}
.grid--2{grid-template-columns:repeat(2,1fr)}
.grid--3{grid-template-columns:repeat(3,1fr)}
.grid--4{grid-template-columns:repeat(4,1fr)}
.grid--5{grid-template-columns:repeat(5,1fr)}
@media (max-width:1100px){.grid--5{grid-template-columns:repeat(3,1fr)}.grid--4{grid-template-columns:repeat(2,1fr)}}
@media (max-width:760px){.grid--3,.grid--2,.grid--5,.grid--4{grid-template-columns:1fr}}

/* ---------- Ponto de partida (dores) ---------- */
.pain{background:var(--white);border-radius:var(--radius-sm);border-top:4px solid var(--wine);padding:30px 28px;box-shadow:var(--shadow-card);font-family:var(--font-accent);font-style:italic;font-size:21px;line-height:1.4;color:var(--ink-800);transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.pain:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}

/* ---------- Perguntas ---------- */
.question{border-left:1px solid rgba(219,207,191,.5);padding:8px 0 8px 30px}
.question__w{display:block;font-family:var(--font-display);font-weight:500;font-size:clamp(26px,3vw,34px);letter-spacing:.02em;text-transform:uppercase;color:var(--sand-300);line-height:1.05;margin-bottom:8px}
.question__t{font-size:19px;color:var(--white)}

/* ---------- Método CLEAR ---------- */
.clear-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:22px;margin-top:8px}
@media (max-width:1100px){.clear-grid{grid-template-columns:repeat(3,1fr)}}
@media (max-width:760px){.clear-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.clear-grid{grid-template-columns:1fr}.clear-card{min-height:0}.clear-card__q{margin-bottom:34px}}
.clear-card{position:relative;overflow:hidden;background:var(--white);border-radius:var(--radius-leaf);box-shadow:var(--shadow-card-strong);padding:28px 26px 26px;min-height:320px;display:flex;flex-direction:column;cursor:pointer;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.clear-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}
.clear-card__disc{width:66px;height:66px;margin-bottom:22px}
.clear-card__title{font-family:var(--font-body);font-weight:700;font-size:17px;letter-spacing:.06em;text-transform:uppercase;color:var(--wine);margin-bottom:10px}
.clear-card__q{font-size:17px;line-height:1.45;color:var(--ink-800);margin:0 0 22px}
.clear-card__band{height:16px;border-radius:5px;margin-top:auto}
.clear-card__hint{position:absolute;right:22px;top:22px;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--taupe-500);display:inline-flex;align-items:center;gap:6px}
.clear-card__ai{position:absolute;left:0;right:0;bottom:0;background:var(--taupe-900);color:var(--white);padding:22px 26px 26px;border-radius:0 0 50px 50px;transform:translateY(102%);transition:transform var(--dur-slow) var(--ease-out);font-size:15px;line-height:1.5}
.clear-card__ai b{display:block;font-family:var(--font-display);font-weight:500;letter-spacing:.12em;text-transform:uppercase;font-size:12px;color:var(--sand-300);margin-bottom:8px}
.clear-card:hover .clear-card__ai,.clear-card.is-open .clear-card__ai,.clear-card:focus-within .clear-card__ai{transform:translateY(0)}
.clear-card--c .clear-card__band{background:var(--c-consciencia)}
.clear-card--l .clear-card__band{background:var(--c-lideranca)}
.clear-card--e .clear-card__band{background:var(--c-estrategia)}
.clear-card--a .clear-card__band{background:var(--c-acao)}
.clear-card--r .clear-card__band{background:var(--c-resultados)}
.clear-foot{margin-top:40px;font-size:18px;color:var(--ink-800);max-width:760px}

/* ---------- IA aplicada ---------- */
.ia-head{display:grid;grid-template-columns:1.1fr .9fr;gap:60px;align-items:end;margin-bottom:60px}
@media (max-width:900px){.ia-head{grid-template-columns:1fr;gap:20px}}
.ia-head .lead{margin-bottom:0}
.ia-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
@media (max-width:1000px){.ia-steps{grid-template-columns:repeat(2,1fr)}}
@media (max-width:560px){.ia-steps{grid-template-columns:1fr}}
.ia-step{background:rgba(255,255,255,.05);border:1px solid var(--hairline-dark);border-radius:var(--radius-md);padding:26px 24px 28px;transition:background var(--dur) var(--ease),transform var(--dur) var(--ease)}
.ia-step:hover{background:rgba(255,255,255,.09);transform:translateY(-4px)}
.ia-step__n{font-family:var(--font-accent);font-size:34px;line-height:1;color:var(--sand-300);margin-bottom:14px}
.ia-step__when{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--sand-200);margin-bottom:6px}
.ia-step__t{font-family:var(--font-display);font-weight:500;font-size:20px;color:var(--white);margin-bottom:10px}
.ia-step__p{font-size:15px;line-height:1.5;color:var(--sand-200);margin:0}

/* ---------- Coração: cliente ideal ---------- */
.tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:38px}
@media (max-width:900px){.tiles{grid-template-columns:repeat(2,1fr)}}
@media (max-width:520px){.tiles{grid-template-columns:1fr}}
.tile{background:var(--white);border:1px solid var(--hairline);border-radius:var(--radius-sm);padding:22px 24px;font-family:var(--font-display);font-size:20px;color:var(--ink-900);box-shadow:var(--shadow-card);display:flex;align-items:center;gap:16px;transition:transform var(--dur) var(--ease),box-shadow var(--dur) var(--ease)}
.tile:hover{transform:translateY(-4px);box-shadow:var(--shadow-lift)}
.tile__n{font-family:var(--font-accent);font-size:26px;color:var(--wine);flex:0 0 auto;width:36px}
.path{padding:30px 0 0;border-top:1px solid var(--hairline)}
.path__t{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--wine);margin-bottom:12px}
.path__list{display:flex;flex-wrap:wrap;gap:6px 0;font-size:19px;color:var(--ink-800)}
.path__list span::after{content:"·";margin:0 12px;color:var(--wine)}
.path__list span:last-child::after{content:none}

/* ---------- Experiência (timeline) ---------- */
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;position:relative;margin-top:10px}
@media (max-width:1000px){.timeline{grid-template-columns:repeat(2,1fr)}}
@media (max-width:600px){.timeline{grid-template-columns:1fr}}
.tl{background:rgba(255,255,255,.04);border:1px solid var(--hairline-dark);border-radius:var(--radius-md);padding:30px 26px 30px;position:relative;transition:background var(--dur) var(--ease)}
.tl:hover{background:rgba(255,255,255,.08)}
.tl--main{background:var(--white);color:var(--ink-900);border-color:transparent;box-shadow:var(--shadow-card-strong)}
.tl--main:hover{background:var(--white)}
.tl__when{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--sand-200);margin-bottom:10px}
.tl--main .tl__when{color:var(--taupe-500)}
.tl__t{font-family:var(--font-display);font-weight:500;font-size:22px;color:var(--sand-300);margin-bottom:16px;padding-right:36px}
.tl--main .tl__t{color:var(--wine)}
.tl__sub{font-size:16px;font-weight:600;color:var(--white);margin-bottom:10px}
.tl--main .tl__sub{color:var(--ink-900)}
.tl li{font-size:15px;line-height:1.45;padding:8px 0;border-top:1px solid var(--hairline-dark);color:var(--sand-200)}
.tl--main li{border-color:var(--hairline);color:var(--ink-800)}
.tl li:first-child{border-top:0;padding-top:0}
.tl__flow{font-size:15px;line-height:1.6;color:var(--sand-200)}
.tl--main .tl__flow{color:var(--ink-800)}
.tl__flow i{font-size:11px;margin:0 6px;color:var(--wine)}
.tl:not(.tl--main) .tl__flow i{color:var(--sand-300)}
.tl__num{position:absolute;top:24px;right:24px;font-family:var(--font-accent);font-size:24px;line-height:1;color:rgba(219,207,191,.35)}
.tl--main .tl__num{color:rgba(100,40,42,.25)}

/* ---------- O que você leva ---------- */
.takeaways{display:grid;grid-template-columns:1fr 1fr;gap:0 60px;margin-top:10px}
@media (max-width:760px){.takeaways{grid-template-columns:1fr;gap:0}}
.takeaways li{display:flex;gap:16px;align-items:flex-start;padding:16px 0;border-bottom:1px solid var(--hairline-dark);font-size:18px;color:var(--white)}
.takeaways li i{color:var(--sand-300);margin-top:5px;font-size:16px}
.section--light .takeaways li{border-color:var(--hairline);color:var(--ink-900)}
.section--light .takeaways li i{color:var(--wine)}

/* ---------- Quem conduz ---------- */
.who{display:grid;grid-template-columns:420px 1fr;gap:70px;align-items:center}
@media (max-width:1000px){.who{grid-template-columns:1fr;gap:40px}}
.portrait{border-radius:var(--radius-leaf);overflow:hidden;background:#57524C;box-shadow:var(--shadow-lift);max-width:420px}
.portrait img{width:100%;height:auto}
.who__name{font-size:clamp(34px,4vw,50px);font-weight:600;color:var(--white);margin-bottom:8px}
.who__role{font-size:16px;letter-spacing:.06em;text-transform:uppercase;color:var(--sand-300);margin-bottom:34px}
.stats{display:grid;grid-template-columns:1fr 1fr;gap:26px 40px;margin-bottom:34px}
@media (max-width:520px){.stats{grid-template-columns:1fr}}
.stat__n{font-family:var(--font-accent);font-size:clamp(38px,4vw,50px);line-height:1;color:var(--sand-300);margin-bottom:8px}
.stat__l{font-size:15px;line-height:1.45;color:var(--sand-200)}
.who__brands{font-size:17px;color:var(--white);margin-bottom:24px}
.who__brands b{color:var(--sand-300);font-weight:600}
.who__quote{font-family:var(--font-display);font-weight:500;font-size:clamp(19px,2vw,24px);line-height:1.4;color:var(--sand-300);padding-left:22px;border-left:3px solid var(--wine);margin:0}

/* ---------- Para quem é / não é ---------- */
.fit{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media (max-width:800px){.fit{grid-template-columns:1fr}}
.fit__card{background:var(--white);border-radius:var(--radius-md);padding:40px 40px 36px;box-shadow:var(--shadow-card)}
.fit__card--no{background:var(--taupe-900);color:var(--white)}
.fit__t{font-family:var(--font-display);font-weight:500;font-size:24px;margin-bottom:22px;color:var(--wine);display:flex;align-items:center;gap:12px}
.fit__card--no .fit__t{color:var(--sand-300)}
.fit li{display:flex;gap:14px;align-items:flex-start;padding:12px 0;border-top:1px solid var(--hairline);font-size:17px;color:var(--ink-800)}
.fit__card--no li{border-color:var(--hairline-dark);color:var(--sand-200)}
.fit li i{margin-top:4px;color:var(--wine)}
.fit__card--no li i{color:var(--sand-300)}
.fit__foot{margin-top:18px;font-size:14px;color:var(--taupe-500)}
.fit__card--no .fit__foot{color:var(--sand-200);opacity:.85}

/* ---------- Turma fundadora / investimento ---------- */
.turma-head{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:end;margin-bottom:50px}
@media (max-width:900px){.turma-head{grid-template-columns:1fr;gap:16px}}
.turma-date{font-family:var(--font-display);font-size:clamp(18px,2vw,24px);color:var(--sand-300);margin:0}
.includes{display:grid;grid-template-columns:1fr 1fr;gap:0 50px;margin-bottom:60px}
@media (max-width:760px){.includes{grid-template-columns:1fr}}
.includes li{display:flex;gap:14px;align-items:flex-start;padding:14px 0;border-bottom:1px solid var(--hairline-dark);font-size:17px;color:var(--white)}
.includes li i{color:var(--sand-300);margin-top:4px}
.price-toggle{display:inline-flex;background:rgba(255,255,255,.08);border:1px solid var(--hairline-dark);border-radius:var(--radius-pill);padding:4px;margin-bottom:28px}
.price-toggle button{border:0;background:transparent;color:var(--sand-200);border-radius:var(--radius-pill);padding:10px 22px;font-family:var(--font-display);font-size:14px;letter-spacing:.08em;text-transform:uppercase;cursor:pointer;transition:all var(--dur) var(--ease)}
.price-toggle button[aria-pressed="true"]{background:var(--sand-300);color:var(--wine)}
.prices{display:grid;grid-template-columns:1fr 1fr;gap:22px}
@media (max-width:860px){.prices{grid-template-columns:1fr}}
.price{border-radius:var(--radius-md);padding:44px 44px 40px;position:relative;overflow:hidden}
@media (max-width:600px){.price{padding:32px 24px}}
.price--founder{background:var(--grey-100);color:var(--ink-900);box-shadow:var(--shadow-card-strong)}
.price--regular{background:rgba(255,255,255,.07);border:1px solid var(--hairline-dark);color:var(--white)}
.price__tag{font-size:13px;letter-spacing:.16em;text-transform:uppercase;color:var(--wine);margin-bottom:14px;display:flex;align-items:center;gap:12px}
.price--regular .price__tag{color:var(--sand-300)}
.price__badge{background:var(--wine);color:var(--white);border-radius:var(--radius-pill);padding:5px 12px;font-size:11px;letter-spacing:.1em}
.price__v{font-family:var(--font-accent);font-size:clamp(46px,5.5vw,72px);line-height:1;color:var(--wine);margin-bottom:6px;letter-spacing:-.01em}
.price--regular .price__v{color:var(--white)}
.price__v small{font-size:.42em;vertical-align:.55em;margin-right:6px}
.price__alt{font-size:18px;color:var(--ink-800);margin-bottom:12px}
.price--regular .price__alt{color:var(--sand-200)}
.price__note{font-size:15px;color:var(--taupe-500);margin:0}
.price--regular .price__note{color:var(--sand-200)}
.price__note s{opacity:.8}
[data-mode="cash"] .price__mode--inst,[data-mode="inst"] .price__mode--cash{display:none}
.price__strip{position:absolute;top:0;right:0;background:var(--gradient-wine);color:var(--white);font-family:var(--font-display);font-size:12px;letter-spacing:.12em;text-transform:uppercase;padding:10px 20px;border-radius:0 0 0 14px}
.turma-notes{margin-top:34px;font-size:16px;color:var(--sand-200);display:flex;flex-wrap:wrap;gap:10px 30px}
.turma-notes span{display:inline-flex;align-items:center;gap:10px}
.turma-notes i{color:var(--sand-300)}
.turma-cta{margin-top:44px}

/* ---------- Transparência ---------- */
.honest{display:grid;grid-template-columns:auto 1fr;gap:34px;align-items:center;background:var(--white);border-radius:var(--radius-md);padding:40px 44px;box-shadow:var(--shadow-card);border-left:8px solid var(--wine)}
@media (max-width:760px){.honest{grid-template-columns:1fr;padding:30px 24px;gap:18px}}
.honest__n{font-family:var(--font-accent);font-size:clamp(48px,7vw,84px);line-height:.9;color:var(--wine)}
.honest__n small{display:block;font-family:var(--font-body);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--taupe-500);margin-top:10px}
.honest__t{font-family:var(--font-display);font-weight:600;font-size:24px;line-height:1.2;color:var(--ink-900);margin-bottom:10px}
.honest p{font-size:17px;color:var(--ink-800);margin:0}

/* ---------- FAQ ---------- */
.faq{max-width:860px;margin:0 auto}
.faq details{border-bottom:1px solid var(--hairline)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:22px 4px;font-family:var(--font-body);font-weight:700;font-size:19px;color:var(--ink-900);transition:color var(--dur) var(--ease)}
.faq summary::-webkit-details-marker{display:none}
.faq summary:hover{color:var(--wine)}
.faq summary i{color:var(--wine);transition:transform var(--dur) var(--ease);flex:0 0 auto}
.faq details[open] summary i{transform:rotate(180deg)}
.faq__a{padding:0 4px 24px;font-size:17px;line-height:1.6;color:var(--ink-800);max-width:760px}
.faq__a p{margin-bottom:10px}

/* ---------- CTA final ---------- */
.final{position:relative;overflow:hidden;background:var(--taupe-900) url('assets/imagery/banner-cta.jpg') right 30%/cover no-repeat;color:var(--white)}
.final::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(64,59,53,.985) 0%,rgba(64,59,53,.97) 55%,rgba(64,59,53,.82) 100%)}
.final .container{position:relative;z-index:1}
.final__t{font-size:clamp(30px,4vw,50px);font-weight:300;color:var(--white);max-width:820px;margin-bottom:18px}
.final__t b{font-weight:500;color:var(--sand-300)}
.final__p{font-size:19px;color:var(--sand-200);max-width:680px;margin-bottom:40px}
.final__alt{margin-top:24px;font-size:15px;color:var(--sand-200)}
.final__alt a{color:var(--sand-300);border-bottom:1px solid rgba(219,207,191,.5)}
.final__alt a:hover{color:var(--white)}

/* ---------- Footer ---------- */
.footer{background:#2F2B27;color:var(--sand-200);padding:64px 0 36px;font-size:14px}
.footer__grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:40px;align-items:start;margin-bottom:44px}
@media (max-width:800px){.footer__grid{grid-template-columns:1fr;gap:28px}}
.footer__logo{height:92px;width:auto;margin-bottom:16px}
.footer__t{font-family:var(--font-display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--sand-300);margin-bottom:14px}
.footer a{color:var(--sand-200)}
.footer a:hover{color:var(--white)}
.footer li{margin-bottom:8px}
.social{display:flex;gap:10px;flex-wrap:wrap}
.social a{width:42px;height:42px;border-radius:50%;border:1px solid var(--hairline-dark);display:grid;place-items:center;color:var(--sand-300);font-size:16px;transition:all var(--dur) var(--ease)}
.social a:hover{background:var(--sand-300);color:var(--wine);border-color:var(--sand-300);transform:translateY(-2px)}
.footer__bottom{border-top:1px solid var(--hairline-dark);padding-top:24px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:10px;color:rgba(220,217,208,.7)}

/* ---------- Barra fixa de conversão ---------- */
.sticky{position:fixed;left:0;right:0;bottom:0;z-index:40;background:rgba(64,59,53,.97);color:var(--white);border-top:1px solid rgba(219,207,191,.25);transform:translateY(110%);transition:transform var(--dur-slow) var(--ease-out);box-shadow:0 -10px 30px rgba(0,0,0,.25)}
.sticky.is-visible{transform:translateY(0)}
.sticky .container{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-top:12px;padding-bottom:12px}
.sticky__txt{font-size:14px;color:var(--sand-200);display:flex;flex-wrap:wrap;gap:4px 14px;align-items:center}
.sticky__txt b{color:var(--white);font-family:var(--font-display);font-weight:500;letter-spacing:.06em;text-transform:uppercase;font-size:13px}
.sticky__txt em{font-style:normal;color:var(--sand-300)}
@media (max-width:700px){.sticky__txt span{display:none}.sticky .btn{flex:0 0 auto;white-space:nowrap;padding:12px 18px;font-size:13px}body.has-sticky .wa-float{display:none}}
body.has-sticky{padding-bottom:78px}

/* ---------- Botão flutuante WhatsApp ---------- */
.wa-float{position:fixed;right:22px;bottom:96px;z-index:41;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;font-size:30px;box-shadow:0 10px 24px rgba(0,0,0,.25);transition:transform var(--dur) var(--ease),bottom var(--dur-slow) var(--ease-out)}
.wa-float:hover{transform:translateY(-2px) scale(1.04);color:#fff}
body:not(.has-sticky) .wa-float{bottom:24px}

/* ---------- Reveal on scroll ---------- */
[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity var(--dur-slow) var(--ease-out),transform var(--dur-slow) var(--ease-out);transition-delay:calc(var(--i,0) * 70ms)}
[data-reveal].is-in{opacity:1;transform:none}

@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.001ms !important;animation-iteration-count:1 !important;transition-duration:.001ms !important}
  [data-reveal]{opacity:1;transform:none}
  .logos__track,.brand-marquee__track{animation:none}
}
