/* =========================================================
   SkyCore — Institucional
   Base clara estilo DigitalOcean + painéis de vidro (glass)
   ========================================================= */

:root{
  /* Paleta */
  --bg:        #f5f8fd;
  --bg-2:      #eaf0fa;
  --surface:   #ffffff;
  --ink:       #0e1726;
  --ink-2:     #46536b;
  --ink-3:     #7c889d;
  --line:      rgba(14,23,38,.09);
  --line-2:    rgba(14,23,38,.06);

  --brand:     #2563eb;
  --brand-2:   #06b6d4;
  --brand-ink: #1d4ed8;
  --indigo:    #4f46e5;
  --green:     #059669;
  --green-bg:  #ecfdf5;
  --amber:     #d97706;

  --grad:      linear-gradient(120deg,#06b6d4 0%,#2563eb 55%,#4f46e5 100%);
  --grad-soft: linear-gradient(120deg,#e0f2fe,#eef2ff);

  /* Vidro */
  --glass:     rgba(255,255,255,.62);
  --glass-brd: rgba(255,255,255,.85);
  --glass-sh:  0 20px 60px -22px rgba(23,45,90,.28);

  /* Sombras */
  --sh-1: 0 2px 8px rgba(23,45,90,.06);
  --sh-2: 0 10px 30px -12px rgba(23,45,90,.18);
  --sh-3: 0 30px 70px -30px rgba(23,45,90,.30);

  --r:    16px;
  --r-lg: 24px;
  --r-sm: 10px;

  --maxw: 1160px;
  --font: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --display: 'Sora', var(--font);
}

*{ box-sizing:border-box; margin:0; padding:0; }
html{ scroll-behavior:smooth; scroll-padding-top:88px; -webkit-text-size-adjust:100%; }
body{
  font-family:var(--font);
  color:var(--ink);
  background:var(--bg);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
a{ color:inherit; text-decoration:none; }
img,svg{ display:block; max-width:100%; }
h1,h2,h3,h4{ font-family:var(--display); line-height:1.12; letter-spacing:-.02em; font-weight:700; }
.container{ width:100%; max-width:var(--maxw); margin-inline:auto; padding-inline:24px; }

/* ===== Fundo aurora ===== */
.aurora{ position:fixed; inset:0; z-index:-2; overflow:hidden; background:
  radial-gradient(1200px 700px at 80% -10%, #e6f6ff 0%, transparent 60%),
  radial-gradient(1000px 600px at -10% 10%, #eef1ff 0%, transparent 55%),
  var(--bg); }
.blob{ position:absolute; border-radius:50%; filter:blur(70px); opacity:.5; }
.blob--cyan{  width:520px; height:520px; top:-120px; right:-80px;  background:#7fe3ff; animation:float 22s ease-in-out infinite; }
.blob--blue{  width:460px; height:460px; top:30%; left:-140px;     background:#a7c4ff; animation:float 26s ease-in-out infinite reverse; }
.blob--violet{width:420px; height:420px; bottom:-120px; right:20%; background:#c9c2ff; animation:float 30s ease-in-out infinite; }
.grid-overlay{ position:absolute; inset:0; opacity:.5;
  background-image:linear-gradient(var(--line-2) 1px,transparent 1px),linear-gradient(90deg,var(--line-2) 1px,transparent 1px);
  background-size:44px 44px; mask-image:radial-gradient(1000px 600px at 50% 0,#000,transparent 80%); }
@keyframes float{ 0%,100%{ transform:translate(0,0) scale(1);} 50%{ transform:translate(20px,-30px) scale(1.06);} }

/* ===== Vidro utilitário ===== */
.glass{
  background:var(--glass);
  border:1px solid var(--glass-brd);
  border-radius:var(--r-lg);
  box-shadow:var(--glass-sh);
  backdrop-filter:blur(18px) saturate(160%);
  -webkit-backdrop-filter:blur(18px) saturate(160%);
}

/* ===== Botões ===== */
.btn{
  --pad:11px 18px;
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  padding:var(--pad); border-radius:12px; font-weight:600; font-size:.95rem;
  border:1px solid transparent; cursor:pointer; transition:.18s ease; white-space:nowrap;
}
.btn--primary{ background:var(--grad); color:#fff; box-shadow:0 10px 24px -10px rgba(37,99,235,.6); }
.btn--primary:hover{ transform:translateY(-2px); box-shadow:0 16px 30px -10px rgba(37,99,235,.7); }
.btn--ghost{ background:rgba(255,255,255,.6); border-color:var(--line); color:var(--ink); }
.btn--ghost:hover{ background:#fff; border-color:rgba(37,99,235,.4); color:var(--brand-ink); }
.btn--lg{ --pad:14px 26px; font-size:1rem; }
.btn--block{ width:100%; }

/* ===== Navbar ===== */
.nav{ position:sticky; top:0; z-index:50; transition:.25s ease; }
.nav__inner{ display:flex; align-items:center; gap:24px; height:72px; }
.nav.scrolled{ backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px); }
.nav.scrolled .nav__inner{ height:64px; background:rgba(255,255,255,.7); border-bottom:1px solid var(--line);
  margin-inline:-24px; padding-inline:24px; }
.brand{ display:flex; align-items:center; gap:10px; font-family:var(--display); font-weight:800; font-size:1.25rem; }
.brand__mark{ display:grid; place-items:center; }
.brand__name span{ background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.nav__links{ display:flex; gap:26px; margin-left:auto; }
.nav__links a{ color:var(--ink-2); font-weight:500; font-size:.95rem; position:relative; }
.nav__links a:hover{ color:var(--ink); }
.nav__links a::after{ content:''; position:absolute; left:0; bottom:-6px; width:0; height:2px; background:var(--grad); transition:.2s; border-radius:2px; }
.nav__links a:hover::after{ width:100%; }
.nav__cta{ display:flex; gap:10px; }
.nav__burger{ display:none; flex-direction:column; gap:5px; background:none; border:0; cursor:pointer; padding:8px; }
.nav__burger span{ width:24px; height:2px; background:var(--ink); border-radius:2px; transition:.25s; }

/* ===== Hero ===== */
.hero{ display:grid; grid-template-columns:1.05fr .95fr; gap:56px; align-items:center; padding:72px 24px 80px; }
.pill{ display:inline-flex; align-items:center; gap:8px; padding:6px 14px; border-radius:999px;
  background:rgba(37,99,235,.08); color:var(--brand-ink); font-weight:600; font-size:.82rem; border:1px solid rgba(37,99,235,.18); }
.pill .dot{ width:8px; height:8px; border-radius:50%; background:var(--green); box-shadow:0 0 0 4px rgba(5,150,105,.18); }
.hero h1{ font-size:clamp(2.4rem,5.4vw,4rem); margin:22px 0 18px; font-weight:800; }
.hero h1 em{ font-style:normal; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.lead{ font-size:1.14rem; color:var(--ink-2); max-width:44ch; }
.hero__actions{ display:flex; gap:14px; margin:30px 0 34px; flex-wrap:wrap; }
.hero__trust{ display:flex; gap:34px; list-style:none; }
.hero__trust li{ display:flex; flex-direction:column; }
.hero__trust strong{ font-family:var(--display); font-size:1.5rem; color:var(--ink); }
.hero__trust span{ font-size:.85rem; color:var(--ink-3); }

/* Painel flutuante do hero */
.hero__panel{ padding:0; overflow:hidden; transform:rotate(.6deg); animation:rise .8s ease; }
@keyframes rise{ from{ opacity:0; transform:translateY(24px) rotate(.6deg);} to{ opacity:1; } }
.panel__bar{ display:flex; align-items:center; gap:10px; padding:12px 16px; border-bottom:1px solid var(--line); background:rgba(255,255,255,.5); }
.panel__dots{ display:flex; gap:6px; }
.panel__dots i{ width:10px; height:10px; border-radius:50%; background:#dfe5ef; }
.panel__dots i:first-child{ background:#ff6159; } .panel__dots i:nth-child(2){ background:#ffbd2e; } .panel__dots i:nth-child(3){ background:#28c840; }
.panel__title{ font-size:.8rem; color:var(--ink-3); font-weight:500; }
.panel__body{ padding:16px; display:flex; flex-direction:column; gap:12px; }
.mini-card{ display:flex; align-items:center; gap:12px; padding:12px 14px; background:#fff; border:1px solid var(--line); border-radius:14px; box-shadow:var(--sh-1); }
.mini-card__ico{ font-size:1.5rem; width:40px; height:40px; display:grid; place-items:center; background:var(--grad-soft); border-radius:10px; }
.mini-card b{ font-size:.92rem; display:block; }
.mini-card small{ font-size:.76rem; color:var(--ink-3); }
.mini-card div{ flex:1; }
.badge{ font-size:.7rem; font-weight:700; padding:4px 10px; border-radius:999px; }
.badge--ok{ background:var(--green-bg); color:var(--green); }
.badge--prov{ background:#fff7ed; color:var(--amber); }
.panel__foot{ display:flex; align-items:center; justify-content:space-between; padding:6px 4px 2px; }
.panel__foot small{ font-size:.75rem; color:var(--ink-3); display:block; }
.panel__price{ font-family:var(--display); font-size:1.4rem; }
.panel__spark{ display:flex; align-items:flex-end; gap:5px; height:40px; }
.panel__spark span{ width:8px; background:var(--grad); border-radius:3px; opacity:.85; animation:spark 2.4s ease-in-out infinite; }
.panel__spark span:nth-child(1){ height:40%; animation-delay:0s;} .panel__spark span:nth-child(2){ height:65%; animation-delay:.1s;}
.panel__spark span:nth-child(3){ height:50%; animation-delay:.2s;} .panel__spark span:nth-child(4){ height:85%; animation-delay:.3s;}
.panel__spark span:nth-child(5){ height:60%; animation-delay:.4s;} .panel__spark span:nth-child(6){ height:95%; animation-delay:.5s;}
.panel__spark span:nth-child(7){ height:70%; animation-delay:.6s;}
@keyframes spark{ 0%,100%{ transform:scaleY(1);} 50%{ transform:scaleY(.7);} }

/* ===== Marquee ===== */
.marquee{ overflow:hidden; padding:18px 0; border-block:1px solid var(--line); background:rgba(255,255,255,.4); mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent); }
.marquee__track{ display:flex; gap:22px; white-space:nowrap; width:max-content; animation:scroll 34s linear infinite; }
.marquee__track span{ color:var(--ink-3); font-weight:600; font-size:.95rem; }
@keyframes scroll{ from{ transform:translateX(0);} to{ transform:translateX(-50%);} }

/* ===== Seções ===== */
.section{ padding:74px 24px; }
.section__head{ max-width:640px; margin:0 auto 46px; text-align:center; }
.eyebrow{ display:inline-block; font-family:var(--display); font-weight:700; font-size:.8rem; letter-spacing:.08em; text-transform:uppercase; color:var(--brand); margin-bottom:14px; }
.eyebrow--green{ color:var(--green); }
.section__head h2{ font-size:clamp(1.9rem,3.6vw,2.7rem); }
.section__head p{ color:var(--ink-2); margin-top:14px; font-size:1.08rem; }

/* ===== Cards / Marketplace ===== */
.cards{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.cards--3{ grid-template-columns:repeat(3,1fr); }
.card{ padding:28px; transition:.22s ease; }
.card:hover{ transform:translateY(-6px); box-shadow:var(--sh-3); }
.card__ico{ font-size:1.8rem; width:56px; height:56px; display:grid; place-items:center; background:var(--grad-soft); border-radius:14px; margin-bottom:18px; }
.card h3{ font-size:1.2rem; margin-bottom:8px; }
.card p{ color:var(--ink-2); font-size:.96rem; }
.tags{ list-style:none; display:flex; flex-wrap:wrap; gap:7px; margin-top:16px; }
.tags li{ font-size:.76rem; font-weight:600; color:var(--brand-ink); background:rgba(37,99,235,.07); border:1px solid rgba(37,99,235,.14); padding:4px 10px; border-radius:8px; }

/* ===== FinOps ===== */
.finops{ display:grid; grid-template-columns:1fr 1fr; gap:52px; align-items:center; }
.finops__copy h2{ font-size:clamp(1.8rem,3.4vw,2.5rem); margin-bottom:16px; }
.finops__copy p{ color:var(--ink-2); font-size:1.06rem; margin-bottom:22px; }
.check{ list-style:none; display:flex; flex-direction:column; gap:12px; }
.check li{ position:relative; padding-left:32px; color:var(--ink-2); }
.check li::before{ content:'✓'; position:absolute; left:0; top:0; width:22px; height:22px; display:grid; place-items:center;
  background:var(--green-bg); color:var(--green); border-radius:50%; font-size:.75rem; font-weight:800; }
.finops__panel{ padding:24px; display:flex; flex-direction:column; gap:16px; }
.fp__head{ display:flex; align-items:flex-start; justify-content:space-between; }
.fp__head small{ color:var(--ink-3); font-size:.8rem; }
.fp__head b{ font-family:var(--display); font-size:2rem; display:block; }
.fp__trend{ color:var(--green); font-weight:700; font-size:.85rem; background:var(--green-bg); padding:5px 12px; border-radius:999px; }
.fp__tip{ display:flex; align-items:center; gap:14px; padding:16px; background:var(--green-bg); border:1px solid rgba(5,150,105,.2); border-radius:16px; }
.fp__tip-ico{ font-size:1.4rem; }
.fp__tip b{ display:block; font-size:.95rem; color:#065f46; }
.fp__tip small{ color:#047857; font-size:.82rem; }
.fp__tip div{ flex:1; }
.fp__apply{ background:var(--green); color:#fff; border:0; padding:9px 16px; border-radius:10px; font-weight:600; cursor:pointer; font-size:.85rem; transition:.18s; }
.fp__apply:hover{ filter:brightness(1.08); transform:translateY(-1px); }
.fp__usage{ display:flex; flex-direction:column; gap:12px; }
.fp__bar{ display:grid; grid-template-columns:52px 1fr 40px; align-items:center; gap:12px; font-size:.85rem; color:var(--ink-2); }
.fp__bar i{ height:8px; border-radius:99px; background:#e6ebf4; position:relative; overflow:hidden; }
.fp__bar i::after{ content:''; position:absolute; inset:0; width:var(--w); background:var(--grad); border-radius:99px; }
.fp__bar em{ text-align:right; font-style:normal; font-weight:600; color:var(--ink); }

/* ===== Comparativo ===== */
.compare{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.compare__col{ padding:30px; border-radius:var(--r-lg); }
.compare__col h4{ font-size:1.1rem; margin-bottom:18px; }
.compare__col ul{ list-style:none; display:flex; flex-direction:column; gap:13px; }
.compare__col li{ position:relative; padding-left:30px; font-size:.96rem; }
.compare__col--muted{ background:#fff; border:1px solid var(--line); color:var(--ink-3); }
.compare__col--muted h4{ color:var(--ink-2); }
.compare__col--muted li::before{ content:'✕'; position:absolute; left:0; color:#c0c9d8; font-weight:800; }
.compare__col--sky{ border:1px solid rgba(37,99,235,.28); position:relative; }
.compare__col--sky::before{ content:'★ recomendado'; position:absolute; top:-12px; right:20px; background:var(--grad); color:#fff; font-size:.7rem; font-weight:700; padding:4px 12px; border-radius:999px; }
.compare__col--sky h4{ color:var(--brand-ink); }
.compare__col--sky li{ color:var(--ink); }
.compare__col--sky li::before{ content:'✓'; position:absolute; left:0; color:var(--green); font-weight:800; }

/* ===== Steps ===== */
.steps{ display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.step{ padding:30px; position:relative; }
.step__num{ font-family:var(--display); font-weight:800; font-size:2.4rem; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.step h3{ margin:10px 0 8px; font-size:1.2rem; }
.step p{ color:var(--ink-2); font-size:.96rem; }

/* ===== Calculadora ===== */
.calc{ display:grid; grid-template-columns:1.4fr 1fr; gap:0; overflow:hidden; padding:0; }
.calc__controls{ padding:34px; display:flex; flex-direction:column; gap:22px; }
.field label{ display:flex; justify-content:space-between; align-items:center; font-weight:600; font-size:.92rem; margin-bottom:10px; }
.field output{ font-family:var(--display); color:var(--brand-ink); background:rgba(37,99,235,.08); padding:2px 10px; border-radius:8px; font-size:.85rem; }
input[type=range]{ -webkit-appearance:none; appearance:none; width:100%; height:6px; border-radius:99px; background:#e2e8f2; outline:none; }
input[type=range]::-webkit-slider-thumb{ -webkit-appearance:none; width:22px; height:22px; border-radius:50%; background:#fff; border:3px solid var(--brand); cursor:pointer; box-shadow:var(--sh-2); transition:.15s; }
input[type=range]::-webkit-slider-thumb:hover{ transform:scale(1.12); }
input[type=range]::-moz-range-thumb{ width:22px; height:22px; border-radius:50%; background:#fff; border:3px solid var(--brand); cursor:pointer; }
.segmented{ display:grid; grid-template-columns:repeat(4,1fr); gap:6px; background:#eef2f9; padding:5px; border-radius:12px; }
.segmented button{ padding:9px 6px; border:0; background:transparent; border-radius:8px; font-weight:600; font-size:.82rem; color:var(--ink-2); cursor:pointer; transition:.16s; }
.segmented button.is-active{ background:#fff; color:var(--brand-ink); box-shadow:var(--sh-1); }
.switches{ display:flex; gap:26px; flex-wrap:wrap; }
.switch{ display:flex; align-items:center; gap:10px; font-weight:600; font-size:.92rem; cursor:pointer; }
.switch input{ display:none; }
.switch span{ width:42px; height:24px; background:#d5dded; border-radius:99px; position:relative; transition:.2s; flex-shrink:0; }
.switch span::after{ content:''; position:absolute; top:3px; left:3px; width:18px; height:18px; background:#fff; border-radius:50%; transition:.2s; box-shadow:var(--sh-1); }
.switch input:checked + span{ background:var(--brand); }
.switch input:checked + span::after{ transform:translateX(18px); }
.calc__summary{ border-radius:0; background:linear-gradient(180deg,rgba(37,99,235,.06),rgba(79,70,229,.05)); border:0; border-left:1px solid var(--line); box-shadow:none; padding:34px; display:flex; flex-direction:column; gap:14px; backdrop-filter:none; }
.calc__now b{ font-family:var(--display); font-size:1.4rem; display:block; }
.calc__month b{ font-family:var(--display); font-size:2.6rem; display:block; background:var(--grad); -webkit-background-clip:text; background-clip:text; color:transparent; }
.calc__now small, .calc__month small{ color:var(--ink-3); font-size:.82rem; }
.calc__breakdown{ list-style:none; display:flex; flex-direction:column; gap:8px; padding:14px 0; border-block:1px solid var(--line); margin:4px 0; }
.calc__breakdown li{ display:flex; justify-content:space-between; font-size:.86rem; color:var(--ink-2); }
.calc__breakdown li b{ color:var(--ink); font-weight:600; }
.calc__note{ font-size:.74rem; color:var(--ink-3); }

/* ===== Split (tiers + prioridade) ===== */
.split{ display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.panel-info{ padding:32px; }
.panel-info h3{ font-size:1.3rem; margin-bottom:16px; }
.panel-info > p{ color:var(--ink-2); margin-bottom:18px; }
.tier-table{ width:100%; border-collapse:collapse; }
.tier-table td{ padding:12px 0; border-bottom:1px solid var(--line); font-size:.95rem; }
.tier-table td:first-child{ font-weight:600; }
.tier-table td:last-child{ text-align:right; font-family:var(--display); color:var(--brand-ink); }
.tier-table tr:last-child td{ border-bottom:0; }
.tier-dot{ display:inline-block; width:10px; height:10px; border-radius:50%; margin-right:8px; }
.t-bronze{ background:#b08d57; } .t-silver{ background:#9aa7b8; } .t-gold{ background:#e0aa2f; } .t-plat{ background:#7c8cff; }
.prio-bars{ display:flex; flex-direction:column; gap:14px; }
.prio-bars div{ display:grid; grid-template-columns:110px 1fr; align-items:center; gap:12px; font-size:.9rem; font-weight:600; }
.prio-bars i{ height:12px; border-radius:99px; background:#e6ebf4; position:relative; overflow:hidden; }
.prio-bars i::after{ content:''; position:absolute; inset:0; width:var(--w); background:var(--grad); border-radius:99px; }

/* ===== API ===== */
.api-block{ display:grid; grid-template-columns:1fr 1.1fr; gap:52px; align-items:center; }
.api-copy h2{ font-size:clamp(1.8rem,3.4vw,2.5rem); margin-bottom:16px; }
.api-copy p{ color:var(--ink-2); font-size:1.06rem; margin-bottom:22px; }
.code-card{ padding:0; overflow:hidden; background:#0e1726; border:1px solid #1e293b; box-shadow:var(--sh-3); }
.code-card__bar{ display:flex; align-items:center; gap:10px; padding:12px 18px; border-bottom:1px solid #1e293b; color:#7c9cff; font-family:var(--display); font-size:.85rem; font-weight:600; }
.code-card__bar span{ width:10px; height:10px; border-radius:50%; background:#28c840; }
.code-card pre{ padding:20px; overflow-x:auto; }
.code-card code{ font-family:'SF Mono',ui-monospace,'Cascadia Code',Menlo,monospace; font-size:.85rem; line-height:1.7; color:#c7d2e5; white-space:pre; }
.c-key{ color:#7dd3fc; } .c-str{ color:#86efac; } .c-num{ color:#fcd34d; } .c-cmt{ color:#64748b; font-style:italic; }

/* ===== CTA ===== */
.cta{ display:grid; grid-template-columns:1fr 1fr; gap:44px; padding:48px; align-items:center; }
.cta__copy h2{ font-size:clamp(1.8rem,3.4vw,2.4rem); margin-bottom:14px; }
.cta__copy p{ color:var(--ink-2); font-size:1.05rem; }
.cta__form{ display:flex; flex-direction:column; gap:16px; }
.cta__form .field label{ display:block; margin-bottom:7px; }
.cta__form input, .cta__form select{ width:100%; padding:13px 15px; border:1px solid var(--line); border-radius:12px; font:inherit; background:#fff; transition:.16s; }
.cta__form input:focus, .cta__form select:focus{ outline:none; border-color:var(--brand); box-shadow:0 0 0 4px rgba(37,99,235,.12); }
.cta__ok{ color:var(--green); font-weight:600; text-align:center; }

/* ===== Footer ===== */
.footer{ border-top:1px solid var(--line); background:rgba(255,255,255,.5); backdrop-filter:blur(10px); margin-top:40px; }
.footer__inner{ display:grid; grid-template-columns:1.4fr 2fr; gap:40px; padding:56px 24px 30px; }
.footer__brand p{ color:var(--ink-3); font-size:.92rem; margin-top:14px; max-width:34ch; }
.footer__cols{ display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.footer__cols h4{ font-family:var(--display); font-size:.9rem; margin-bottom:14px; }
.footer__cols a{ display:block; color:var(--ink-2); font-size:.9rem; margin-bottom:9px; transition:.15s; }
.footer__cols a:hover{ color:var(--brand-ink); }
.footer__bottom{ display:flex; justify-content:space-between; padding:20px 24px; border-top:1px solid var(--line); color:var(--ink-3); font-size:.82rem; flex-wrap:wrap; gap:8px; }

/* ===== Reveal on scroll ===== */
.reveal{ opacity:0; transform:translateY(26px); transition:.7s cubic-bezier(.16,1,.3,1); }
.reveal.in{ opacity:1; transform:none; }

/* ===== Responsivo ===== */
@media (max-width:960px){
  .hero{ grid-template-columns:1fr; gap:40px; padding-top:48px; }
  .hero__panel{ order:2; }
  .finops, .api-block, .cta, .compare, .split, .footer__inner{ grid-template-columns:1fr; }
  .cards, .cards--3, .steps{ grid-template-columns:1fr 1fr; }
  .calc{ grid-template-columns:1fr; }
  .calc__summary{ border-left:0; border-top:1px solid var(--line); }
  .nav__links, .nav__cta{ display:none; }
  .nav__burger{ display:flex; }
  .nav.open .nav__links{ display:flex; position:absolute; top:72px; left:0; right:0; flex-direction:column; gap:0; background:rgba(255,255,255,.95); backdrop-filter:blur(16px); border-block:1px solid var(--line); padding:8px 24px; }
  .nav.open .nav__links a{ padding:14px 0; border-bottom:1px solid var(--line-2); }
  .nav.open .nav__cta{ display:flex; position:absolute; top:calc(72px + 260px); left:24px; right:24px; }
}
@media (max-width:600px){
  .cards, .cards--3, .steps{ grid-template-columns:1fr; }
  .hero__trust{ gap:22px; }
  .footer__cols{ grid-template-columns:1fr 1fr; }
  .footer__bottom{ flex-direction:column; }
  .segmented{ grid-template-columns:repeat(2,1fr); }
}
@media (prefers-reduced-motion:reduce){
  *{ animation:none!important; scroll-behavior:auto; }
  .reveal{ opacity:1; transform:none; }
}
