
:root{
  --teal-900:#0b3d3a; --teal-800:#0d4a45; --teal-700:#115e59; --teal-500:#1a8177; --teal-300:#5fae9f;
  --gold-700:#8f6b2c; --gold-600:#b68d40; --gold-400:#d4ac6e; --gold-200:#f0dfbc;
  --ink-900:#1c1b19; --ink-700:#3a3733; --ink-500:#6b675e; --ink-300:#9c968a; --ink-150:#c9c4b8;
  --cream-50:#f5f1e7; --surface:#fbf8f1; --white:#ffffff;
  --border:rgba(28,27,25,0.10); --border-strong:rgba(28,27,25,0.16);
  --sh-sm: 0 1px 2px rgba(28,27,25,0.06);
  --sh-md: 0 2px 4px rgba(28,27,25,0.05), 0 8px 16px rgba(17,94,89,0.07);
  --sh-lg: 0 2px 4px rgba(28,27,25,0.05), 0 12px 24px rgba(17,94,89,0.08), 0 32px 64px -16px rgba(17,94,89,0.20);
  --sh-xl: 0 40px 100px rgba(11,61,58,0.22), 0 12px 32px rgba(11,61,58,0.14);
  --f-fast:120ms; --f-base:200ms; --f-slow:350ms;
  --ease: cubic-bezier(0.4,0,0.2,1);
  --font-display:'Fraunces', serif; --font-body:'Inter', sans-serif;
  --container: 1160px;
}
*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; }
body{
  font-family:var(--font-body); color:var(--ink-900); background:var(--surface);
  -webkit-font-smoothing:antialiased; -moz-osx-font-smoothing:grayscale; font-size:16px; line-height:1.5;
}
img{ max-width:100%; display:block; }
a{ color:inherit; }
button{ font-family:inherit; }
svg.i{ stroke:currentColor; stroke-width:1.8; fill:none; stroke-linecap:round; stroke-linejoin:round; }
@media (prefers-reduced-motion: reduce){
  *{ animation-duration:0.001ms !important; animation-iteration-count:1 !important; transition-duration:0.001ms !important; scroll-behavior:auto !important; }
}
.wrap{ max-width:var(--container); margin:0 auto; padding:0 24px; }
section{ position:relative; }
h1,h2,h3{ font-family:var(--font-display); font-weight:550; color:var(--ink-900); letter-spacing:-0.01em; }
.eyebrow-label{ font-family:var(--font-body); font-size:12.5px; font-weight:600; color:var(--teal-700); letter-spacing:0.03em; text-transform:uppercase; display:inline-flex; align-items:center; gap:8px; }
.eyebrow-label::before{ content:''; width:14px; height:1px; background:var(--gold-600); display:inline-block; }
.pulse-breathe{ animation:pulseBreathe 2.8s ease-in-out infinite; }
@keyframes pulseBreathe{ 0%,100%{ opacity:1; } 50%{ opacity:0.55; } }
@media (prefers-reduced-motion: reduce){ .pulse-breathe{ animation:none; } }

/* BUTTONS */
.btn{ display:inline-flex; align-items:center; gap:8px; height:48px; padding:0 24px; border-radius:12px; font-size:14.5px; font-weight:600; border:none; cursor:pointer; text-decoration:none; transition:transform var(--f-base) var(--ease), box-shadow var(--f-base) var(--ease), background var(--f-base) var(--ease); white-space:nowrap; }
.btn svg{ width:16px; height:16px; }
.btn-primary{ background:linear-gradient(155deg, var(--teal-500), var(--teal-900)); color:#fff; box-shadow:0 12px 26px rgba(11,61,58,0.28), inset 0 1px 0 rgba(255,255,255,0.15); }
.btn-primary:hover{ transform:translateY(-1px); box-shadow:0 16px 34px rgba(11,61,58,0.34), inset 0 1px 0 rgba(255,255,255,0.15); }
.btn-secondary{ background:transparent; color:var(--ink-900); border:1px solid var(--border-strong); }
.btn-secondary:hover{ border-color:var(--teal-700); background:rgba(17,94,89,0.04); }
.btn-sm{ height:40px; padding:0 18px; font-size:13.5px; }

/* STATE BADGES */
.state-badge{ display:inline-flex; align-items:center; gap:6px; font-size:11px; font-weight:700; letter-spacing:0.02em; padding:4px 11px; border-radius:100px; white-space:nowrap; }
.state-badge .sd{ width:6px; height:6px; border-radius:50%; flex-shrink:0; }
.state-badge.disponivel{ background:rgba(26,129,119,0.10); color:var(--teal-700); border:1px solid rgba(26,129,119,0.24); }
.state-badge.disponivel .sd{ background:var(--teal-500); }
.state-badge.evolucao{ background:rgba(212,172,110,0.14); color:var(--gold-700); border:1px solid rgba(212,172,110,0.32); }
.state-badge.evolucao .sd{ background:var(--gold-600); }
.state-badge.visao{ background:rgba(28,27,25,0.045); color:var(--ink-500); border:1px dashed var(--border-strong); }
.state-badge.visao .sd{ background:var(--ink-300); }
.state-legend{ display:flex; flex-wrap:wrap; gap:10px; margin-top:18px; }

/* SCROLL PROGRESS / REVEAL */
.scroll-progress{ position:fixed; top:0; left:0; height:2px; width:0%; z-index:200; background:linear-gradient(90deg, var(--gold-600), var(--teal-500)); transition:width 60ms linear; }
.reveal{ opacity:0; transform:translateY(20px); transition:opacity 640ms var(--ease), transform 640ms var(--ease); }
.reveal.in-view{ opacity:1; transform:translateY(0); }
.seam{ height:1px; background:var(--border); position:relative; }
.seam .diamond{ position:absolute; top:50%; left:50%; width:9px; height:9px; transform:translate(-50%,-50%) rotate(45deg); border:1.5px solid var(--gold-600); background:var(--surface); }

/* HEADER */
header{ position:fixed; top:0; left:0; right:0; z-index:100; transition:background var(--f-slow) var(--ease), border-color var(--f-slow) var(--ease), backdrop-filter var(--f-slow) var(--ease); border-bottom:1px solid transparent; }
header.scrolled{ background:rgba(251,248,241,0.86); backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); border-bottom-color:var(--border); }
.header-inner{ display:flex; align-items:center; justify-content:space-between; height:76px; }
.brand{ display:flex; align-items:center; gap:11px; text-decoration:none; }
.brand .mark{ width:34px; height:34px; border-radius:9.5px; background:linear-gradient(160deg, var(--teal-500), var(--teal-900)); display:flex; align-items:center; justify-content:center; box-shadow:inset 0 1px 1px rgba(255,255,255,0.28); }
.brand .mark img{ width:19px; height:19px; }
.brand span{ font-family:var(--font-display); font-size:20px; font-weight:550; color:var(--ink-900); }
nav.main-nav{ display:flex; align-items:center; gap:28px; }
nav.main-nav a{ font-size:13.8px; font-weight:500; color:var(--ink-500); text-decoration:none; transition:color var(--f-base) var(--ease); }
nav.main-nav a:hover{ color:var(--ink-900); }
.header-actions{ display:flex; align-items:center; gap:12px; }
.header-actions .btn-secondary{ height:42px; padding:0 18px; font-size:13.5px; }
.header-actions .btn-primary{ height:42px; padding:0 20px; font-size:13.5px; }
.menu-toggle{ display:none; background:none; border:none; cursor:pointer; padding:8px; }
.menu-toggle svg{ width:22px; height:22px; color:var(--ink-900); }
.mobile-nav{ display:none; position:fixed; inset:76px 0 0 0; background:var(--surface); z-index:99; padding:28px 24px; flex-direction:column; gap:4px; overflow-y:auto; }
.mobile-nav.open{ display:flex; }
.mobile-nav a{ font-size:16px; font-weight:500; color:var(--ink-900); text-decoration:none; padding:13px 4px; border-bottom:1px solid var(--border); }
.mobile-nav .mobile-actions{ margin-top:20px; display:flex; flex-direction:column; gap:12px; }
.mobile-nav .btn{ width:100%; justify-content:center; }

/* HERO */
.hero{ padding:168px 0 88px; position:relative; overflow:hidden; background: radial-gradient(680px 420px at 88% -6%, rgba(212,172,110,0.16), transparent 62%), radial-gradient(760px 520px at 8% 18%, rgba(95,174,159,0.14), transparent 60%); }
.hero-grid{ display:grid; grid-template-columns:1fr 1fr; gap:56px; align-items:center; }
.hero-badge{ display:inline-flex; align-items:center; gap:8px; height:32px; padding:0 14px 0 10px; border-radius:100px; background:var(--cream-50); border:1px solid var(--border); font-size:12.5px; font-weight:600; color:var(--teal-700); margin-bottom:22px; }
.hero-badge .dot{ width:6px; height:6px; border-radius:50%; background:var(--gold-600); }
.hero h1{ font-size:44px; line-height:1.13; letter-spacing:-0.015em; }
.hero .sub{ font-size:16.5px; line-height:1.62; color:var(--ink-500); margin-top:22px; max-width:500px; }
.hero-ctas{ display:flex; align-items:center; gap:16px; margin-top:32px; flex-wrap:wrap; }
.hero-micro{ font-size:12.5px; color:var(--ink-300); margin-top:18px; font-style:italic; }
.hero-visual{ position:relative; will-change:transform; }
.hero-visual .frame{ position:relative; border-radius:18px; overflow:hidden; box-shadow:var(--sh-xl); padding:5px; background:linear-gradient(155deg, rgba(212,172,110,0.5), rgba(212,172,110,0.06)); transform:perspective(1400px) rotateY(-4deg) rotateX(1.2deg); }
.hero-visual .frame > .frame-topbar, .hero-visual .frame > img{ border-radius:13px; }
.hero-visual .frame > .frame-topbar{ border-radius:13px 13px 0 0; }
.hero-visual .frame > img{ border-radius:0 0 13px 13px; }
.hero-visual .frame img{ display:block; width:100%; }
.hero-visual .frame-topbar{ height:34px; background:var(--ink-900); display:flex; align-items:center; gap:6px; padding:0 14px; }
.hero-visual .frame-topbar span{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,0.16); }
.hero-glow-ring{ position:absolute; border-radius:50%; border:1px solid rgba(212,172,110,0.16); pointer-events:none; width:320px; height:320px; right:-70px; bottom:-90px; }
.hero-float{ position:absolute; z-index:2; background:var(--white); border-radius:12px; border:1px solid var(--border); box-shadow:var(--sh-md); padding:11px 15px; display:flex; align-items:center; gap:10px; font-size:12.5px; font-weight:600; }
.hero-float.f1{ top:-16px; left:-22px; }
.hero-float.f2{ bottom:-16px; right:-18px; }
.hero-float.f3{ bottom:64px; left:-30px; }
.hero-visual-caption{ text-align:center; font-size:11.5px; font-style:italic; color:var(--ink-300); margin-top:16px; }
.hero-float .ic{ width:26px; height:26px; border-radius:8px; background:var(--gold-200); display:flex; align-items:center; justify-content:center; color:var(--gold-700); }
.hero-float .ic svg{ width:14px; height:14px; }
.hero-float .lbl{ color:var(--ink-500); font-weight:500; }
.hero-float .val{ color:var(--ink-900); }

/* TRUST STRIP */
.trust-strip{ padding:32px 0; border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:var(--cream-50); }
.trust-strip .wrap{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; align-items:center; }
.trust-item{ display:flex; align-items:center; gap:9px; font-size:13px; color:var(--ink-700); font-weight:500; background:var(--white); border:1px solid var(--border); border-radius:100px; padding:10px 18px 10px 14px; box-shadow:var(--sh-sm); }
.trust-item svg{ width:15px; height:15px; color:var(--teal-700); flex-shrink:0; }

/* SECTION SHARED */
.section{ padding:116px 0; }
.section-head{ max-width:620px; margin-bottom:60px; }
.section-head.center{ max-width:660px; margin-left:auto; margin-right:auto; text-align:center; }
.section-head h2{ font-size:33px; line-height:1.26; margin-top:14px; }
.section-head p{ font-size:15.5px; color:var(--ink-500); margin-top:18px; line-height:1.72; }
.section-alt{ background:var(--cream-50); }
.section-dark{ background:linear-gradient(165deg, var(--teal-900), #082e2b); color:#fff; }
.section-dark h2{ color:#fff; }
.section-dark .section-head p{ color:rgba(255,255,255,0.62); }

/* O ULTRACLINIC — pillars */
.pillars-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.pillar-card{ background:var(--white); border:1px solid var(--border); border-radius:14px; padding:24px 22px; transition:border-color var(--f-base) var(--ease), box-shadow var(--f-base) var(--ease), transform var(--f-base) var(--ease); }
.pillar-card:hover{ border-color:rgba(212,172,110,0.45); box-shadow:0 10px 24px rgba(11,61,58,0.08); transform:translateY(-2px); }
.pillar-card .ic{ width:34px; height:34px; border-radius:9px; background:var(--cream-50); display:flex; align-items:center; justify-content:center; color:var(--teal-700); }
.pillar-card .ic svg{ width:16px; height:16px; }
.pillar-card h3{ font-size:14.5px; margin-top:14px; font-family:var(--font-body); font-weight:600; }
.pillar-card p{ font-size:12.6px; color:var(--ink-500); margin-top:6px; line-height:1.5; }

/* PROBLEM */
.problem-grid{ display:grid; grid-template-columns:repeat(5,1fr); gap:1px; background:var(--border); border:1px solid var(--border); border-radius:16px; overflow:hidden; }
.problem-card{ background:var(--surface); padding:28px 20px; }
.problem-card h3{ font-size:15.5px; font-weight:600; font-family:var(--font-body); }
.problem-card p{ font-size:13px; color:var(--ink-500); margin-top:9px; line-height:1.55; }

/* SOLUTION quote */
.solution-quote{ text-align:center; padding:56px 0 0; }
.solution-quote .kicker{ font-family:var(--font-display); font-style:italic; font-size:17px; color:var(--gold-700); }
.solution-quote h2{ font-size:30px; margin-top:10px; }

/* ECOSYSTEM */
/* ARCHITECTURE — Operação / Gestão / Evolução */
.architecture{ max-width:760px; margin:44px auto 0; }
.arch-tier{ border:1px solid var(--border); border-radius:16px; padding:26px 28px; background:var(--white); }
.arch-tier.tier-evolution{ background:linear-gradient(160deg, rgba(212,172,110,0.06), transparent); border-color:rgba(212,172,110,0.3); }
.arch-label{ display:flex; align-items:center; gap:10px; font-size:14.5px; font-weight:600; color:var(--ink-900); }
.arch-index{ font-family:var(--font-display); font-size:12px; color:var(--gold-700); border:1px solid rgba(212,172,110,0.4); border-radius:100px; padding:2px 9px; }
.arch-chips{ display:flex; flex-wrap:wrap; gap:10px; margin-top:16px; }
.eco-chip{ background:var(--cream-50); border:1px solid var(--border); border-radius:10px; padding:10px 14px; display:flex; align-items:center; gap:9px; }
.eco-chip .ic{ width:26px; height:26px; border-radius:8px; background:var(--white); display:flex; align-items:center; justify-content:center; color:var(--teal-700); flex-shrink:0; }
.eco-chip .ic svg{ width:13px; height:13px; }
.eco-chip span{ font-size:12.8px; font-weight:600; }
.eco-chip.state-evolucao{ background:rgba(212,172,110,0.08); }
.eco-chip .mini-badge{ font-size:9.5px; font-weight:700; color:var(--gold-700); background:rgba(212,172,110,0.18); padding:2px 6px; border-radius:100px; margin-left:2px; }
.arch-connector{ display:flex; justify-content:center; padding:10px 0; color:var(--ink-300); }
.arch-tier-ecosystem{ background:linear-gradient(160deg, var(--teal-700), var(--teal-900)); border-color:transparent; text-align:center; }
.arch-tier-ecosystem .arch-label{ color:#fff; justify-content:center; }
.arch-tier-ecosystem .arch-index{ color:var(--gold-400); border-color:rgba(212,172,110,0.5); }
.arch-ecosystem-text{ margin-top:14px; font-family:var(--font-display); font-style:italic; font-size:16px; color:rgba(255,255,255,0.85); }
.arch-connector svg{ width:16px; height:16px; }

/* PRODUCT SHOWCASE */
.showcase-block{ margin-bottom:64px; }
.showcase-block:last-child{ margin-bottom:0; }
.showcase-grid{ display:grid; grid-template-columns:1fr 300px; gap:40px; align-items:start; }
.product-shot{ position:relative; border-radius:18px; overflow:hidden; box-shadow:var(--sh-lg); border:1px solid var(--border); padding:5px; background:linear-gradient(160deg, rgba(212,172,110,0.35), rgba(212,172,110,0.04)); }
.product-shot > .bar, .product-shot > img{ border-radius:13px; }
.product-shot > .bar{ border-radius:13px 13px 0 0; }
.product-shot > img{ border-radius:0 0 13px 13px; }
.product-shot .bar{ height:36px; background:var(--ink-900); display:flex; align-items:center; gap:6px; padding:0 14px; }
.product-shot .bar span{ width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,0.16); }
.product-shot .bar span:first-child{ background:#e2685f; }
.product-shot img{ width:100%; display:block; }
.product-caption{ margin-top:16px; display:flex; align-items:center; gap:10px; flex-wrap:wrap; }
.product-caption h3{ font-size:18px; font-family:var(--font-body); font-weight:600; }
.showcase-copy p{ font-size:14px; color:var(--ink-500); margin-top:10px; line-height:1.65; }
.product-tags{ display:flex; flex-direction:column; gap:12px; margin-top:18px; }
.product-tag{ display:flex; gap:11px; padding:14px; border-radius:12px; background:var(--white); border:1px solid var(--border); }
.product-tag .ic{ width:28px; height:28px; border-radius:8px; background:var(--cream-50); display:flex; align-items:center; justify-content:center; color:var(--teal-700); flex-shrink:0; }
.product-tag .ic svg{ width:14px; height:14px; }
.product-tag strong{ font-size:13px; display:block; }
.product-tag p{ font-size:12.4px; color:var(--ink-500); margin-top:2px; line-height:1.5; }

/* AUTOMATION / INTELLIGENCE */
.auto-grid{ display:grid; grid-template-columns:1fr 1fr; gap:20px; }
.auto-card{ background:var(--white); border:1px solid var(--border); border-radius:18px; padding:32px; }
.auto-card.dashed{ border-style:dashed; background:transparent; }
.auto-card h3{ font-size:19px; margin-top:14px; }
.auto-card p{ font-size:14px; color:var(--ink-500); margin-top:10px; line-height:1.65; }
.auto-list{ list-style:none; display:flex; flex-wrap:wrap; gap:8px; margin-top:18px; }
.auto-list li{ font-size:12.5px; font-weight:500; color:var(--ink-700); background:var(--cream-50); border:1px solid var(--border); padding:6px 12px; border-radius:100px; }
.auto-flow{ display:flex; align-items:center; justify-content:center; gap:10px; margin-top:22px; flex-wrap:wrap; }
.auto-flow .node{ font-size:12px; font-weight:700; letter-spacing:0.02em; color:var(--teal-700); background:var(--cream-50); border:1px solid var(--border); padding:8px 14px; border-radius:9px; }
.auto-flow svg{ width:16px; height:16px; color:var(--ink-300); }

/* AUTOMATION on dark */
.auto-card.on-dark{ background:rgba(255,255,255,0.045); border-color:rgba(255,255,255,0.14); }
.auto-card.on-dark h3{ color:#fff; }
.auto-card.on-dark p{ color:rgba(255,255,255,0.6); }
.auto-card.on-dark .auto-list li{ background:rgba(255,255,255,0.08); border-color:rgba(255,255,255,0.14); color:rgba(255,255,255,0.85); }
.auto-card.on-dark .node{ background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.16); color:var(--gold-400); }
.auto-card.on-dark .auto-flow svg{ color:rgba(255,255,255,0.3); }
.auto-benefits{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; margin-top:36px; }
.auto-benefit{ background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius:14px; padding:20px 22px; }
.auto-benefit .ic{ width:32px; height:32px; border-radius:9px; background:rgba(212,172,110,0.16); display:flex; align-items:center; justify-content:center; color:var(--gold-400); }
.auto-benefit .ic svg{ width:16px; height:16px; }
.auto-benefit h4{ font-size:14px; color:#fff; margin-top:14px; font-weight:600; font-family:var(--font-body); }
.auto-benefit p{ font-size:12.5px; color:rgba(255,255,255,0.55); margin-top:6px; line-height:1.55; }

/* VOICE AGENT SHOWCASE */
.voice-agent{ margin-top:36px; border:1px solid rgba(212,172,110,0.35); border-radius:18px; padding:36px; background:linear-gradient(160deg, rgba(212,172,110,0.09), rgba(255,255,255,0.02)); }
.voice-agent-header{ max-width:660px; }
.voice-agent-header h3{ color:#fff; font-size:22px; margin-top:14px; font-weight:550; }
.voice-agent-header p{ color:rgba(255,255,255,0.62); font-size:14px; margin-top:10px; line-height:1.65; }
.voice-flow{ display:flex; align-items:center; flex-wrap:wrap; gap:10px; margin-top:30px; }
.voice-flow-node{ display:flex; align-items:center; gap:8px; background:rgba(255,255,255,0.06); border:1px solid rgba(255,255,255,0.14); border-radius:10px; padding:10px 16px; font-size:13px; font-weight:600; color:#fff; }
.voice-flow-node svg{ width:15px; height:15px; flex-shrink:0; }
.voice-flow-node.highlight{ background:linear-gradient(155deg, var(--gold-600), var(--gold-700)); border-color:transparent; color:var(--ink-900); }
.voice-flow-arrow{ width:15px; height:15px; color:rgba(255,255,255,0.28); flex-shrink:0; }
.voice-examples{ display:grid; grid-template-columns:repeat(2,1fr); gap:10px; margin-top:28px; }
.voice-example{ background:rgba(255,255,255,0.04); border:1px solid rgba(255,255,255,0.1); border-radius:10px; padding:13px 16px 13px 30px; font-size:13px; color:rgba(255,255,255,0.75); font-style:italic; position:relative; line-height:1.5; }
.voice-example::before{ content:'\201C'; position:absolute; left:12px; top:10px; color:var(--gold-400); font-family:var(--font-display); font-size:20px; font-style:normal; }
.profiles-grid{ display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.profile-card{ border-radius:20px; padding:38px 34px; position:relative; overflow:hidden; min-height:260px; display:flex; flex-direction:column; }
.profile-card.clinics{ background:linear-gradient(160deg, var(--teal-700), var(--teal-900)); color:#fff; }
.profile-card.pros{ background:var(--cream-50); border:1px solid var(--border); color:var(--ink-900); }
.profile-card h3{ font-family:var(--font-display); font-size:23px; font-weight:550; }
.profile-card.clinics h3{ color:#fff; }
.profile-card p{ font-size:14px; margin-top:13px; line-height:1.62; max-width:360px; }
.profile-card.clinics p{ color:rgba(255,255,255,0.72); }
.profile-card.pros p{ color:var(--ink-500); }
.profile-card .plink{ margin-top:auto; padding-top:24px; display:flex; align-items:center; gap:8px; font-size:13.5px; font-weight:600; text-decoration:none; }
.profile-card.clinics .plink{ color:var(--gold-400); }
.profile-card.pros .plink{ color:var(--teal-700); }
.profile-card .plink svg{ width:15px; height:15px; }
.profile-ring{ position:absolute; border-radius:50%; border:1px solid rgba(255,255,255,0.12); width:210px; height:210px; right:-60px; bottom:-70px; }

/* SECURITY */
.security-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.security-card{ background:var(--white); border:1px solid var(--border); border-radius:14px; padding:24px 22px; transition:border-color var(--f-base) var(--ease), box-shadow var(--f-base) var(--ease); }
.security-card:hover{ border-color:rgba(212,172,110,0.4); box-shadow:0 10px 24px rgba(11,61,58,0.07); }
.security-card .ic{ width:34px; height:34px; border-radius:10px; background:var(--cream-50); display:flex; align-items:center; justify-content:center; color:var(--teal-700); }
.security-card .ic svg{ width:16px; height:16px; }
.security-card h3{ font-size:14.5px; margin-top:14px; font-family:var(--font-body); font-weight:600; }
.security-card p{ font-size:12.5px; color:var(--ink-500); margin-top:7px; line-height:1.55; }

/* ESCALABILIDADE — stairs */
.stairs{ display:flex; align-items:flex-end; justify-content:center; gap:0; margin-top:48px; padding:0 10px; }
.stair-step{ display:flex; flex-direction:column; align-items:center; flex:1; max-width:180px; }
.stair-bar{ width:100%; border-radius:10px 10px 0 0; background:linear-gradient(160deg, var(--teal-500), var(--teal-900)); display:flex; align-items:flex-start; justify-content:center; padding-top:14px; }
.stair-bar span{ color:#fff; font-family:var(--font-display); font-size:13px; font-weight:550; }
.stair-step.s1 .stair-bar{ height:60px; background:linear-gradient(160deg, var(--teal-300), var(--teal-700)); }
.stair-step.s2 .stair-bar{ height:88px; background:linear-gradient(160deg, var(--teal-500), var(--teal-800)); }
.stair-step.s3 .stair-bar{ height:116px; }
.stair-step.s4 .stair-bar{ height:144px; background:linear-gradient(160deg, var(--teal-700), var(--teal-900)); }
.stair-step.s5 .stair-bar{ height:172px; background:linear-gradient(160deg, var(--gold-600), var(--teal-900)); }
.stair-label{ margin-top:12px; font-size:12.5px; font-weight:600; color:var(--ink-700); text-align:center; }
.stair-arrow{ width:22px; display:flex; align-items:flex-end; justify-content:center; padding-bottom:20px; color:var(--ink-300); flex-shrink:0; }
.stair-arrow svg{ width:15px; height:15px; }

/* VISÃO — timeline */
.vision-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.vision-card{ border-radius:14px; padding:22px 20px; border:1px solid var(--border); background:var(--white); }
.vision-card.now{ background:linear-gradient(160deg, var(--teal-700), var(--teal-900)); border-color:transparent; }
.vision-card.now .vlabel, .vision-card.now h3{ color:#fff; }
.vision-card.now p{ color:rgba(255,255,255,0.65); }
.vision-card.next{ border-color:rgba(212,172,110,0.4); background:rgba(212,172,110,0.06); }
.vision-card.dashed{ border-style:dashed; background:transparent; }
.vlabel{ font-size:10.5px; font-weight:700; letter-spacing:0.06em; text-transform:uppercase; color:var(--ink-300); }
.vision-card h3{ font-size:16px; margin-top:10px; font-family:var(--font-body); font-weight:600; }
.vision-card p{ font-size:12.6px; color:var(--ink-500); margin-top:8px; line-height:1.55; }

/* EMPRESA / ESTÁGIO */
.stage-wrap{ display:grid; grid-template-columns:1.1fr 1fr; gap:56px; align-items:center; }
.stage-copy p{ font-size:15px; color:rgba(255,255,255,0.68); margin-top:16px; line-height:1.7; }
.stage-badge{ display:inline-flex; align-items:center; gap:8px; font-size:12px; font-weight:600; color:var(--gold-400); background:rgba(212,172,110,0.12); border:1px solid rgba(212,172,110,0.28); padding:6px 13px; border-radius:100px; }
.stage-badge .dot3{ width:6px; height:6px; border-radius:50%; background:#6fcf97; }
.stage-facts{ display:grid; grid-template-columns:1fr 1fr; gap:1px; background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.1); border-radius:14px; overflow:hidden; }
.stage-fact{ background:rgba(255,255,255,0.03); padding:18px 20px; }
.stage-fact .fk{ font-size:10.5px; font-weight:700; letter-spacing:0.05em; text-transform:uppercase; color:rgba(255,255,255,0.4); }
.stage-fact .fv{ font-size:14.5px; font-weight:600; color:#fff; margin-top:6px; }

/* PLANOS */
.plans-note{ text-align:center; font-size:12.5px; color:var(--ink-300); margin-bottom:36px; font-style:italic; max-width:480px; margin-left:auto; margin-right:auto; }
.plans-grid{ display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch; }
.plan-card{ background:var(--white); border:1px solid var(--border); border-radius:18px; padding:28px 26px; display:flex; flex-direction:column; }
.plan-card.featured{ background:linear-gradient(165deg, var(--teal-700), var(--teal-900)); color:#fff; border-color:transparent; box-shadow:var(--sh-lg); }
.plan-tag{ display:inline-flex; align-self:flex-start; font-size:11px; font-weight:700; padding:5px 11px; border-radius:100px; background:var(--gold-200); color:var(--gold-700); margin-bottom:14px; }
.plan-card.featured .plan-tag{ background:rgba(212,172,110,0.22); color:var(--gold-400); }
.plan-name{ font-size:15.5px; font-weight:600; }
.plan-desc{ font-size:12.5px; color:var(--ink-500); margin-top:4px; }
.plan-card.featured .plan-desc{ color:rgba(255,255,255,0.62); }
.plan-list{ list-style:none; margin-top:20px; display:flex; flex-direction:column; gap:11px; flex-grow:1; }
.plan-list li{ display:flex; gap:9px; font-size:13px; align-items:flex-start; }
.plan-list li svg{ width:14px; height:14px; color:var(--teal-700); flex-shrink:0; margin-top:2px; }
.plan-card.featured .plan-list li svg{ color:var(--gold-400); }
.plan-card .btn{ margin-top:24px; width:100%; justify-content:center; }

/* CTA FINAL */
.cta-final{ text-align:center; padding:96px 0; }
.cta-final h2{ font-size:35px; max-width:640px; margin:0 auto; line-height:1.2; }
.cta-final p{ font-size:15.5px; color:var(--ink-500); margin-top:18px; max-width:480px; margin-left:auto; margin-right:auto; }
.cta-final .hero-ctas{ justify-content:center; margin-top:32px; }

/* FOOTER */
footer{ background:var(--ink-900); color:rgba(255,255,255,0.6); padding:64px 0 30px; }
.footer-grid{ display:grid; grid-template-columns:1.3fr 1fr 1fr 1fr 1.2fr; gap:32px; padding-bottom:44px; border-bottom:1px solid rgba(255,255,255,0.1); }
.footer-contact p{ font-size:13px; color:rgba(255,255,255,0.55); line-height:1.6; margin-bottom:14px; }
.footer-contact a.footer-email{ font-size:14px; font-weight:600; color:var(--gold-400); text-decoration:none; border-bottom:1px solid rgba(212,172,110,0.35); padding-bottom:2px; transition:color var(--f-base) var(--ease), border-color var(--f-base) var(--ease); }
.footer-contact a.footer-email:hover{ color:#fff; border-color:rgba(255,255,255,0.6); }
.footer-contact a.footer-email:focus-visible{ outline:2px solid var(--gold-400); outline-offset:4px; border-radius:2px; }
.footer-brand{ display:flex; align-items:center; gap:10px; }
.footer-brand span{ font-family:var(--font-display); font-size:19px; color:#fff; font-weight:550; }
.footer-tag{ font-size:13.5px; margin-top:14px; max-width:240px; line-height:1.6; }
.footer-stage{ display:inline-flex; align-items:center; gap:7px; font-size:11.5px; font-weight:600; color:var(--gold-400); margin-top:16px; }
.footer-stage .d{ width:5px; height:5px; border-radius:50%; background:var(--gold-500,var(--gold-600)); }
.footer-col h4{ font-size:12.5px; font-weight:600; color:rgba(255,255,255,0.9); margin-bottom:15px; }
.footer-col ul{ list-style:none; display:flex; flex-direction:column; gap:10px; }
.footer-col a{ font-size:13.3px; text-decoration:none; color:rgba(255,255,255,0.55); transition:color var(--f-base) var(--ease); }
.footer-col a:hover{ color:#fff; }
.footer-bottom{ display:flex; justify-content:space-between; align-items:center; padding-top:26px; font-size:12.3px; flex-wrap:wrap; gap:12px; }
.pulse-status{ display:inline-flex; align-items:center; gap:8px; }
.pulse-svg{ width:16px; height:10px; color:var(--teal-500); }

/* RESPONSIVE */
@media (max-width:1100px){
  .pillars-grid{ grid-template-columns:repeat(2,1fr); }
  .problem-grid{ grid-template-columns:repeat(2,1fr); }
  .ecosystem{ grid-template-columns:1fr; }
  .eco-hub{ order:-1; padding:20px 0; }
  .eco-col{ flex-direction:row; flex-wrap:wrap; }
  .eco-chip{ flex:1 1 200px; }
  .security-grid{ grid-template-columns:repeat(2,1fr); }
  .showcase-grid{ grid-template-columns:1fr; }
  .product-tags{ flex-direction:row; flex-wrap:wrap; }
  .product-tags .product-tag{ flex:1 1 220px; }
  .vision-grid{ grid-template-columns:repeat(2,1fr); }
  .stage-wrap{ grid-template-columns:1fr; gap:36px; }
  .auto-grid{ grid-template-columns:1fr; }
  .auto-benefits{ grid-template-columns:1fr; }
}
@media (max-width:860px){
  nav.main-nav{ display:none; }
  .header-actions{ display:none; }
  .menu-toggle{ display:block; }
  .hero{ padding:128px 0 60px; }
  .hero-grid{ grid-template-columns:1fr; gap:44px; }
  .hero h1{ font-size:34px; }
  .hero-visual .frame{ transform:none; }
  .hero-float{ display:none; }
  .profiles-grid{ grid-template-columns:1fr; }
  .plans-grid{ grid-template-columns:1fr; }
  .footer-grid{ grid-template-columns:1fr 1fr; }
  .footer-brand-col{ grid-column:1/-1; margin-bottom:12px; }
  .stairs{ flex-direction:column; align-items:stretch; }
  .stair-arrow{ display:none; }
  .stair-step{ max-width:none; flex-direction:row-reverse; justify-content:flex-end; gap:14px; }
  .stair-bar{ width:70px !important; height:52px !important; border-radius:10px !important; align-items:center !important; padding-top:0 !important; }
  .stair-label{ margin-top:0; text-align:left; }
}
@media (max-width:640px){
  .section{ padding:68px 0; }
  .pillars-grid{ grid-template-columns:1fr; }
  .problem-grid{ grid-template-columns:1fr; }
  .security-grid{ grid-template-columns:1fr; }
  .vision-grid{ grid-template-columns:1fr; }
  .section-head h2{ font-size:26px; }
  .cta-final h2{ font-size:27px; }
  .hero-ctas{ flex-direction:column; align-items:stretch; }
  .hero-ctas .btn{ width:100%; justify-content:center; }
  .stage-facts{ grid-template-columns:1fr; }
  .auto-flow{ flex-direction:column; }
  .auto-flow svg{ transform:rotate(90deg); }
  .voice-agent{ padding:24px 20px; }
  .voice-flow{ flex-direction:column; align-items:stretch; }
  .voice-flow-node{ justify-content:center; }
  .voice-flow-arrow{ transform:rotate(90deg); align-self:center; }
  .voice-examples{ grid-template-columns:1fr; }
}
