/* =====================================================================
   Bristow & Hardy  ·  site.css
   Direction: "launch sequence". Night-sky heroes that set down onto a
   warm blush horizon, oversized lowercase Mazzard headlines, coral as
   the single accent, mono "telemetry" labels for stages and numbers.
   ===================================================================== */

@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700&display=swap');

@font-face{font-family:'Mazzard H';src:url('/assets/fonts/MazzardH-Bold.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}

:root{
  /* fluid sizes stop growing past a 1150px-wide window, so big screens match the preview */
  --vw:min(1vw,11.5px);
  /* brand palette */
  --coral:#EA888E;
  --coral-deep:#EA888E;
  --peach:#F7C4BA;
  --blush:#FEF5F3;
  --blush-2:#F9E8E4;
  --ink:#262221;
  --night:#1A1615;
  --night-2:#231E1D;
  --white:#FFFFFF;

  /* type */
  --display:'Mazzard H','Poppins',system-ui,sans-serif;
  --body:'Poppins',system-ui,-apple-system,'Segoe UI',sans-serif;
  --mono:var(--body); /* labels use Poppins, set uppercase + tracked */

  /* semantic tokens (page content references these names) */
  --bg:var(--blush);
  --bg-alt:var(--blush-2);
  --text:var(--ink);
  --muted:#6F6461;
  --muted-dark:#A1938F;
  --accent:var(--coral);
  --accent-dark:var(--coral-deep);
  --accent-dim:rgba(234,136,142,.13);
  --accent-glow:rgba(234,136,142,.28);
  --border:rgba(38,34,33,.10);
  --border-accent:rgba(234,136,142,.55);
  --navy:#fff;--navy-mid:var(--blush-2);--navy-light:#fff;
  --horizon:var(--bg);

  /* shape + rhythm */
  --r-sm:10px;--r-md:20px;--r-lg:28px;
  --max-w:1160px;
  --sp:clamp(72px,calc(9 * var(--vw)),128px);
  --shadow:0 1px 0 rgba(38,34,33,.04),0 24px 48px -24px rgba(38,34,33,.22);
}

/* dark scope: any night surface re-points the content tokens */
.on-dark,.page-hero,.home-hero,.footer,.mobile-menu,.dark-band,.engine-shell,.ascent-shell,.price-card.featured{
  --text:var(--blush);
  --muted:rgba(254,245,243,.68);
  --muted-dark:rgba(254,245,243,.42);
  --border:rgba(254,245,243,.13);
  --navy-light:rgba(254,245,243,.05);
  --accent-dim:rgba(234,136,142,.16);
  color:var(--text);
}

/* ---------- reset ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:#1A1615} /* overscroll colour matches header + footer */
body{font-family:var(--body);font-weight:400;background:var(--bg);color:var(--text);line-height:1.65;-webkit-font-smoothing:antialiased;overflow-x:hidden;text-rendering:optimizeLegibility}
img{display:block;max-width:100%}
a{text-decoration:none;color:inherit}
ul,ol{list-style:none}
button{font:inherit}
:focus-visible{outline:2px solid var(--coral);outline-offset:3px;border-radius:4px}
::selection{background:var(--coral);color:var(--ink)}

h1,h2,h3,h4,h5,h6,.section-title,.cta-band h2,.product-badge,.feature-title{font-family:var(--display);font-weight:700;letter-spacing:-.02em;text-wrap:balance}
h1,h2{line-height:1}
h3,h4{line-height:1.2}
em{font-style:normal}

.container{max-width:var(--max-w);margin:0 auto;padding-inline:clamp(18px,calc(4 * var(--vw)),40px)}

/* =====================================================================
   NAV  ·  floating capsule
   ===================================================================== */
.site-nav{position:fixed;top:14px;left:0;right:0;z-index:100;padding-inline:clamp(12px,calc(3 * var(--vw)),28px);pointer-events:none}
.navbar{pointer-events:auto;max-width:1240px;margin:0 auto;height:64px;display:flex;align-items:center;gap:18px;padding:0 10px 0 22px;background:rgba(26,22,21,.82);backdrop-filter:blur(18px) saturate(140%);-webkit-backdrop-filter:blur(18px) saturate(140%);border:1px solid rgba(254,245,243,.10);border-radius:999px;box-shadow:0 18px 40px -20px rgba(0,0,0,.55);transition:background .3s,box-shadow .3s}
.site-nav.scrolled .navbar{background:rgba(26,22,21,.94)}
.nav-logo{flex-shrink:0;display:flex;align-items:center}
.nav-logo img{height:34px;width:auto}
.nav-links{display:flex;align-items:center;gap:2px;margin-left:auto}
.nav-links>li>a{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:500;color:rgba(254,245,243,.72);padding:9px 14px;border-radius:999px;transition:color .15s,background .15s}
.nav-links>li>a:hover{color:var(--blush);background:rgba(254,245,243,.07)}
.nav-links>li>a.active{color:var(--blush)}
.nav-links>li>a.active::after{content:'';width:5px;height:5px;border-radius:50%;background:var(--coral)}
.nav-dropdown>a .chev{width:9px;height:9px;opacity:.6;transition:transform .2s}
.nav-dropdown:hover>a .chev{transform:rotate(180deg)}
.nav-dropdown{position:relative}
.nav-dropdown::after{content:'';position:absolute;top:100%;left:-40px;right:-40px;height:22px}
.dropdown-menu{position:absolute;top:calc(100% + 18px);left:50%;width:min(860px,calc(92 * var(--vw)));transform:translate(-38%,8px);opacity:0;visibility:hidden;pointer-events:none;display:grid;grid-template-columns:1.2fr 1fr;gap:6px;padding:10px;background:var(--night);border:1px solid rgba(254,245,243,.1);border-radius:26px;box-shadow:0 40px 80px -30px rgba(0,0,0,.6);transition:opacity .18s ease,transform .18s ease,visibility 0s linear .18s}
.nav-dropdown:hover .dropdown-menu,.nav-dropdown:focus-within .dropdown-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-38%,0);transition-delay:0s}
.dropdown-col{padding:16px 14px;border-radius:18px}
.dropdown-col:first-child{background:rgba(254,245,243,.04)}
.dropdown-col h4{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--coral);margin:0 6px 10px}
.dropdown-item{display:flex;align-items:center;gap:12px;padding:9px 8px;border-radius:12px;transition:background .15s}
.dropdown-item:hover{background:rgba(254,245,243,.07)}
.dropdown-item img{width:34px;height:34px;border-radius:9px;flex-shrink:0}
.dropdown-item .di-num{font-family:var(--mono);font-weight:600;font-size:11px;color:rgba(254,245,243,.35);width:18px;flex-shrink:0}
.dropdown-item strong{display:block;font-family:var(--display);font-size:16px;font-weight:700;color:var(--blush);text-transform:lowercase;letter-spacing:-.01em;line-height:1.2}
.dropdown-item span:not(.di-num){display:block;font-size:12px;color:rgba(254,245,243,.55);line-height:1.4}
.nav-cta{margin-left:6px}
.navbar .nav-cta.btn{padding:12px 20px;font-size:13.5px}
.hamburger{display:none;width:46px;height:46px;margin-left:auto;border-radius:50%;border:0;background:rgba(254,245,243,.08);cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:5px}
.hamburger span{display:block;width:18px;height:2px;border-radius:2px;background:var(--blush);transition:transform .25s,opacity .25s}
body.menu-open .hamburger span:nth-child(1){transform:translateY(7px) rotate(45deg)}
body.menu-open .hamburger span:nth-child(2){opacity:0}
body.menu-open .hamburger span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobile-menu{position:fixed;inset:0;z-index:99;background:var(--night);padding:110px clamp(20px,calc(6 * var(--vw)),40px) 40px;display:flex;flex-direction:column;gap:2px;overflow-y:auto;opacity:0;visibility:hidden;transition:opacity .25s,visibility 0s linear .25s}
.mobile-menu.open{opacity:1;visibility:visible;transition-delay:0s}
.mobile-menu a{font-family:var(--display);font-size:clamp(30px,calc(8 * var(--vw)),44px);font-weight:700;letter-spacing:-.025em;text-transform:lowercase;color:var(--blush);padding:6px 0;line-height:1.15}
.mobile-menu a:hover{color:var(--coral)}
.mobile-menu .btn{margin-top:28px;font-family:var(--body);font-size:16px;text-transform:none;letter-spacing:0;justify-content:center;padding:16px}

/* =====================================================================
   BUTTONS · TAGS · BADGES
   ===================================================================== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;font-family:var(--body);font-size:14.5px;font-weight:600;line-height:1;padding:16px 26px;border-radius:999px;border:1.5px solid transparent;cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .2s;white-space:nowrap}
.btn:active{transform:translateY(1px)}
.btn-primary{background:var(--coral);color:var(--ink);border-color:var(--coral)}
.btn-primary:hover{background:var(--ink);color:var(--coral);border-color:var(--ink)}
.on-dark .btn-primary:hover,.page-hero .btn-primary:hover,.home-hero .btn-primary:hover,.dark-band .btn-primary:hover,.ascent-shell .btn-primary:hover,.navbar .btn-primary:hover,.mobile-menu .btn-primary:hover{background:var(--blush);color:var(--ink);border-color:var(--blush)}
.btn-ghost{background:transparent;color:var(--text);border-color:color-mix(in srgb,currentColor 30%,transparent)}
.btn-ghost:hover{border-color:currentColor}
.btn-outline{background:transparent;color:var(--accent-dark);border-color:var(--border-accent)}
.page-hero .btn-outline{color:var(--coral)}
.btn-outline:hover{background:var(--accent-dim)}

.tag{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);line-height:1.4}
.on-dark .tag,.page-hero .tag,.home-hero .tag{color:var(--coral)}
.tag::before{content:'';width:22px;height:2px;border-radius:2px;background:var(--coral);flex-shrink:0}
.product-badge{display:inline-flex;align-items:center;font-size:15px;font-weight:700;text-transform:lowercase;color:var(--ink);background:var(--peach);border-radius:999px;padding:5px 14px;margin-bottom:16px;letter-spacing:-.01em}
.pill{display:inline-flex;align-items:center;gap:6px;font-family:var(--mono);font-size:10.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;background:var(--coral);color:var(--ink);border-radius:999px;padding:4px 11px}
.pill-soft{background:var(--accent-dim);color:var(--accent-dark)}

/* =====================================================================
   SECTIONS
   ===================================================================== */
.section{position:relative;padding:var(--sp) 0;background:var(--bg)}
.alt-bg,.section.alt-bg{background:var(--bg-alt)}
.section-header{margin-bottom:clamp(40px,calc(5 * var(--vw)),64px);max-width:860px}
.section-header .tag{margin-bottom:18px}
.section-title{font-size:clamp(36px,calc(5.4 * var(--vw)),68px);line-height:.98;letter-spacing:-.035em;color:var(--text);margin-bottom:18px}
.section-title em{color:var(--accent)}
.section-sub{font-size:17px;color:var(--muted);font-weight:300;max-width:580px;line-height:1.7}
.section-header[style*="text-align:center"],.section-header[style*="text-align: center"]{margin-inline:auto}
.section-header[style*="text-align:center"] .section-sub{margin-inline:auto}
.divider{border:0;border-top:1px solid var(--border)}

/* =====================================================================
   HEROES  ·  night sky, orbit rings, blush horizon
   ===================================================================== */
.page-hero,.home-hero{position:relative;overflow:hidden;background:
  radial-gradient(1200px 600px at 85% -10%,rgba(234,136,142,.22),transparent 60%),
  radial-gradient(900px 500px at -10% 110%,rgba(247,196,186,.10),transparent 60%),
  var(--night);
  padding:clamp(150px,calc(18 * var(--vw)),200px) 0 clamp(120px,calc(14 * var(--vw)),170px);isolation:isolate}
/* star field */
.page-hero-grid,.home-hero .sky{position:absolute;inset:0;pointer-events:none;z-index:-1;
  background-image:
    radial-gradient(1.2px 1.2px at 12% 22%,rgba(254,245,243,.7),transparent 60%),
    radial-gradient(1px 1px at 28% 68%,rgba(254,245,243,.45),transparent 60%),
    radial-gradient(1.4px 1.4px at 46% 14%,rgba(254,245,243,.6),transparent 60%),
    radial-gradient(1px 1px at 63% 52%,rgba(254,245,243,.4),transparent 60%),
    radial-gradient(1.2px 1.2px at 74% 30%,rgba(247,196,186,.8),transparent 60%),
    radial-gradient(1px 1px at 88% 72%,rgba(254,245,243,.5),transparent 60%),
    radial-gradient(1px 1px at 6% 82%,rgba(254,245,243,.35),transparent 60%),
    radial-gradient(1.3px 1.3px at 93% 12%,rgba(254,245,243,.55),transparent 60%);
  background-size:520px 420px}
/* orbit rings, anchored right */
.page-hero::before,.home-hero::before{content:'';position:absolute;z-index:-1;width:min(980px,calc(120 * var(--vw)));aspect-ratio:1;right:max(-420px,-30vw);top:50%;transform:translateY(-55%);border-radius:50%;pointer-events:none;
  background:
    radial-gradient(circle closest-side,transparent 39.6%,rgba(254,245,243,.10) 39.8%,transparent 40.2%),
    radial-gradient(circle closest-side,transparent 59.6%,rgba(234,136,142,.34) 59.8%,transparent 60.2%),
    radial-gradient(circle closest-side,transparent 79.6%,rgba(254,245,243,.08) 79.8%,transparent 80.2%),
    radial-gradient(circle closest-side,transparent 98.8%,rgba(254,245,243,.06) 99.2%,transparent 99.8%)}
/* satellite on the coral orbit */
.page-hero-grid::after,.home-hero .sat{content:'';position:absolute;width:min(980px,calc(120 * var(--vw)));aspect-ratio:1;right:max(-420px,-30vw);top:50%;margin-top:calc(min(980px,calc(120 * var(--vw))) * -.55);border-radius:50%;pointer-events:none;
  background:radial-gradient(circle at 50% 20%,var(--coral) 0 6px,rgba(234,136,142,.3) 7px 14px,transparent 15px);animation:orbit 38s linear infinite}
@keyframes orbit{to{transform:rotate(360deg)}}
/* blush horizon the page "lands" on */
.page-hero::after,.home-hero::after{content:'';position:absolute;left:-15%;right:-15%;bottom:-1px;height:clamp(60px,calc(9 * var(--vw)),120px);background:var(--horizon);border-radius:50% 50% 0 0/100% 100% 0 0;box-shadow:0 -1px 0 rgba(234,136,142,.6),0 -18px 60px -10px rgba(234,136,142,.35);pointer-events:none}
.page-hero:has(+ .alt-bg),.page-hero:has(+ section[style*="--bg-alt"]),.page-hero:has(+ div[style*="--bg-alt"]){--horizon:var(--bg-alt)}
.page-hero:has(+ .marquee){--horizon:var(--ink)}
.page-hero .container,.home-hero .container{position:relative}
.page-hero-inner{max-width:880px}
.page-hero h1{font-size:clamp(46px,calc(7.6 * var(--vw)),104px);line-height:.94;letter-spacing:-.045em;margin:26px 0 26px;color:var(--blush)}
.page-hero h1 em{color:var(--coral)}
.page-hero p{font-size:clamp(16px,calc(1.6 * var(--vw)),19px);color:var(--muted);font-weight:300;max-width:600px;line-height:1.7;margin-bottom:38px}
.page-hero .ctas{display:flex;gap:12px;flex-wrap:wrap}

/* product heroes */
.hero-kicker{display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--muted);margin-bottom:34px}
.hero-kicker::before{content:'';width:8px;height:8px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 5px rgba(234,136,142,.2)}
.hero-chip{width:76px;height:76px;border-radius:22px;margin-bottom:22px;box-shadow:0 20px 40px -12px rgba(234,136,142,.55);overflow:hidden}
.page-hero h1.hero-wordmark{font-size:clamp(72px,calc(15 * var(--vw)),200px);line-height:.84;letter-spacing:-.04em;margin:0 0 22px}
.hero-wordmark i{font-style:normal;color:var(--coral)}
.hero-strap{font-family:var(--display);font-size:clamp(22px,calc(3 * var(--vw)),34px);font-weight:700;letter-spacing:-.02em;color:var(--blush);margin-bottom:20px}
.hero-strap i{font-style:normal;color:var(--coral)}

/* home hero */
.home-hero{padding-bottom:clamp(140px,calc(15 * var(--vw)),190px)}
.home-title{font-size:clamp(50px,calc(8.8 * var(--vw)),136px);line-height:.9;letter-spacing:-.042em;color:var(--blush);margin:28px 0 36px;max-width:1100px}
.home-title em{color:var(--coral)}
.home-hero-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:40px;align-items:end;margin-bottom:clamp(56px,calc(7 * var(--vw)),88px)}
.home-hero-row p{font-size:clamp(16px,calc(1.5 * var(--vw)),18px);color:var(--muted);font-weight:300;line-height:1.75;max-width:560px}
.home-hero-row .ctas{display:flex;gap:12px;flex-wrap:wrap}
.launch-seq{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;position:relative;counter-reset:seq}
.launch-seq::before{content:'';position:absolute;left:3%;right:3%;top:31px;border-top:1.5px dashed rgba(234,136,142,.45)}
.launch-seq li{position:relative}
.launch-seq a{display:flex;flex-direction:column;gap:12px;height:100%;padding:16px 16px 20px;border-radius:22px;background:var(--night-2);border:1px solid rgba(254,245,243,.09);transition:background .2s,border-color .2s,transform .25s}
.launch-seq a:hover{background:#2C2624;border-color:rgba(234,136,142,.5);transform:translateY(-6px)}
.launch-seq .seq-top{display:flex;align-items:center;justify-content:space-between}
.launch-seq img{width:32px;height:32px;border-radius:9px;box-shadow:0 0 0 6px var(--night)}
.launch-seq .seq-num{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.12em;color:rgba(254,245,243,.4)}
.launch-seq strong{font-family:var(--display);font-size:clamp(20px,calc(1.9 * var(--vw)),26px);font-weight:700;letter-spacing:-.025em;color:var(--blush);line-height:1;margin-top:6px}
.launch-seq strong i{font-style:normal;color:var(--coral)}
.launch-seq .seq-desc{font-size:13px;color:rgba(254,245,243,.58);line-height:1.5}

/* telemetry strip (home stats) */
.telemetry{background:var(--bg);padding:0 0 clamp(40px,calc(5 * var(--vw)),64px)}
.telemetry-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.telemetry-grid>div{padding:28px 20px 26px;border-left:1px solid var(--border)}
.telemetry-grid>div:first-child{border-left:0;padding-left:0}
.telemetry .t-num{font-family:var(--display);font-size:clamp(36px,calc(4.4 * var(--vw)),60px);font-weight:700;letter-spacing:-.04em;line-height:1;color:var(--ink);font-variant-numeric:tabular-nums}
.telemetry .t-label{font-family:var(--mono);font-weight:600;font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-top:12px}

/* =====================================================================
   CARDS · GRIDS · FEATURES
   ===================================================================== */
.card{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:30px;transition:transform .25s,box-shadow .25s,border-color .25s}
.card:hover{transform:translateY(-4px);border-color:var(--border-accent);box-shadow:var(--shadow)}
.grid-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.grid-3{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.feature-icon{width:52px;height:52px;border-radius:15px;background:var(--coral);color:#fff;display:flex;align-items:center;justify-content:center;margin-bottom:22px;box-shadow:0 12px 24px -12px rgba(234,136,142,.9)}
.feature-icon svg{stroke:#fff}
.feature-title{font-size:22px;letter-spacing:-.025em;margin-bottom:8px;color:var(--text);line-height:1.15}
.feature-desc{font-size:14.5px;color:var(--muted);font-weight:300;line-height:1.7}

/* layouts */
.layout-2col-wide{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(40px,calc(6 * var(--vw)),96px);align-items:start}
.layout-blog{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:clamp(40px,calc(6 * var(--vw)),88px);align-items:start}
h1[style*="letter-spacing:.03em"],h2[style*="letter-spacing:.03em"],h3[style*="letter-spacing:.03em"],h4[style*="letter-spacing:.03em"],strong[style*="letter-spacing:.03em"],div[style*="font-weight:700;letter-spacing:.03em"]{letter-spacing:-.02em!important}
h3[style*="font-size:16px"],h3[style*="font-size: 16px"]{font-size:20px!important}

/* checklists */
ul.includes-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;padding:0;margin:0}
ul.includes-list.single-col{grid-template-columns:1fr}
ul.includes-list li{display:flex;align-items:flex-start;gap:12px;font-size:14.5px;color:var(--text);padding:12px 0;border-bottom:1px solid var(--border);line-height:1.5}
ul.includes-list li::before{content:'';flex-shrink:0;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}

/* pricing */
.price-card{position:relative;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:34px;display:flex;flex-direction:column;transition:transform .25s,box-shadow .25s}
.price-card:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.price-card.featured{background:var(--night);border-color:var(--night)}
.price-card h3{font-size:30px;letter-spacing:-.03em;margin-bottom:6px;color:var(--text)}
.price-card .price{font-family:var(--mono);font-weight:600;font-size:13px;color:var(--muted);margin-bottom:22px}
.price-card ul li{display:flex;gap:12px;align-items:flex-start;font-size:14px;color:var(--text);padding:11px 0;border-bottom:1px solid var(--border)}
.price-card ul li::before{content:'';flex-shrink:0;width:18px;height:18px;margin-top:1px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.price-card .btn{margin-top:auto;width:100%}
.price-card ul{margin-bottom:26px}
.price-card>.product-badge{align-self:flex-start}

/* =====================================================================
   CTA BAND · MARQUEE
   ===================================================================== */
.cta-band{position:relative;overflow:hidden;background:var(--coral);color:var(--ink);padding:clamp(80px,calc(10 * var(--vw)),140px) 0;text-align:left;isolation:isolate}
.cta-band::after{content:'&';position:absolute;z-index:-1;right:4%;bottom:-0.1em;font-family:var(--display);font-weight:700;font-size:clamp(320px,calc(42 * var(--vw)),620px);line-height:1;color:var(--peach);opacity:.55;pointer-events:none}
.cta-band h2{font-size:clamp(44px,calc(7.6 * var(--vw)),112px);line-height:.92;letter-spacing:-.05em;color:var(--ink);margin-bottom:22px;max-width:900px}
.cta-band h2 em{color:var(--blush)}
.cta-band p{font-size:clamp(16px,calc(1.6 * var(--vw)),19px);color:rgba(38,34,33,.78);font-weight:400;margin-bottom:36px;max-width:560px}
.cta-band .ctas{display:flex;gap:12px;flex-wrap:wrap}
.cta-band .btn-primary{background:var(--ink);color:var(--blush);border-color:var(--ink)}
.cta-band .btn-primary:hover{background:var(--blush);color:var(--ink);border-color:var(--blush)}
.cta-band .btn-ghost{color:var(--ink)}
.cta-band [style*="color:var(--accent)"]{color:var(--blush)!important}
.cta-band [style*="color:var(--text)"]{color:var(--ink)!important}
.cta-band [style*="color:var(--muted)"]{color:rgba(38,34,33,.7)!important}

.marquee{background:var(--ink);overflow:hidden;padding:26px 0;border:0}
.marquee-track{display:flex;gap:56px;width:max-content;animation:marquee 40s linear infinite}
.marquee-track span{font-family:var(--display);font-size:clamp(26px,calc(3.4 * var(--vw)),44px);font-weight:700;letter-spacing:-.03em;color:var(--blush);white-space:nowrap}
.marquee-track i{font-style:normal;color:var(--coral)}
@keyframes marquee{to{transform:translateX(-50%)}}

/* =====================================================================
   FAQ
   ===================================================================== */
.faq-section{padding:var(--sp) 0;background:var(--bg)}
.faq-section .section-header{margin-bottom:40px}
.faq-list{border-top:1px solid var(--ink)}
.faq-item{border-bottom:1px solid var(--border)}
.faq-question{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:24px 0;cursor:pointer;user-select:none}
.faq-question-text{font-family:var(--display);font-size:clamp(18px,calc(1.9 * var(--vw)),23px);font-weight:700;letter-spacing:-.02em;color:var(--text);line-height:1.25;transition:color .15s}
.faq-question:hover .faq-question-text{color:var(--accent-dark)}
.faq-icon{width:40px;height:40px;border-radius:50%;border:1.5px solid var(--border);display:flex;align-items:center;justify-content:center;flex-shrink:0;transition:background .2s,border-color .2s,transform .3s}
.faq-icon svg{width:13px;height:13px;stroke:var(--ink);stroke-width:2.4;fill:none}
.faq-item.open .faq-icon{background:var(--coral);border-color:var(--coral);transform:rotate(45deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .4s ease}
.faq-answer-inner{max-width:820px;padding:0 60px 26px 0;font-size:15.5px;color:var(--muted);font-weight:300;line-height:1.8}
.faq-item.open .faq-answer{max-height:600px}

/* =====================================================================
   FOOTER
   ===================================================================== */
.footer{position:relative;overflow:hidden;background:var(--night);padding:clamp(72px,calc(8 * var(--vw)),110px) 0 28px}
.footer-grid{display:grid;grid-template-columns:1.6fr 1fr 1.2fr 1fr;gap:40px;padding-bottom:56px}
.footer-brand img{height:44px;width:auto}
.footer-brand p{font-size:14px;color:var(--muted);font-weight:300;line-height:1.75;max-width:300px;margin:20px 0 24px}
.footer-socials{display:flex;gap:10px}
.footer-social{width:42px;height:42px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;color:var(--blush);transition:background .2s,color .2s,border-color .2s}
.footer-social:hover{background:var(--coral);border-color:var(--coral);color:var(--ink)}
.footer-col h4{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--coral);margin-bottom:18px}
.footer-col ul li{margin-bottom:10px}
.footer-col ul li a{font-size:14.5px;color:rgba(254,245,243,.75);transition:color .15s}
.footer-col ul li a:hover{color:var(--coral)}
.footer-wordmark{display:block;width:100%;font-family:var(--display);font-weight:700;font-size:clamp(46px,calc(12.4 * var(--vw)),180px);line-height:.8;letter-spacing:-.015em;color:transparent;-webkit-text-stroke:1.2px rgba(254,245,243,.18);white-space:nowrap;margin:0 0 calc(40px - .26em);padding-bottom:.26em;user-select:none}
.footer-wordmark span{letter-spacing:-.015em}
.footer-wordmark span{-webkit-text-stroke:0;color:var(--coral)}
.footer-bottom{border-top:1px solid var(--border);padding-top:24px;display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:16px}
.footer-bottom p{font-size:12.5px;color:rgba(254,245,243,.45);line-height:1.8}
.footer-bottom .fb-links{display:flex;gap:18px;flex-wrap:wrap}
.footer-bottom a{font-size:12.5px;color:rgba(254,245,243,.6)}
.footer-bottom a:hover{color:var(--coral)}

/* =====================================================================
   PRODUCT COMPONENTS (home, product pages, liftoff)
   ===================================================================== */
.ladder{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.ladder-item{display:block;background:#fff;border:1px solid var(--border);border-radius:var(--r-md);padding:24px 16px 22px;text-align:left;transition:transform .2s,border-color .2s,background .2s}
.ladder-item:hover{transform:translateY(-4px);border-color:var(--border-accent)}
.ladder-item.active{background:var(--night);border-color:var(--night)}
.ladder-item.active .ladder-name{color:var(--blush)}
.ladder-item.active .ladder-sub{color:var(--coral)}
.ladder-icon{width:44px;height:44px;border-radius:12px;background:var(--accent-dim);display:flex;align-items:center;justify-content:center;font-size:18px;margin:0 0 18px;color:var(--accent-dark);font-weight:700;overflow:hidden}
.ladder-item.active .ladder-icon{background:var(--coral);color:var(--ink)}
.ladder-name{font-family:var(--display);font-size:21px;font-weight:700;color:var(--text);display:block;line-height:1.05;letter-spacing:-.025em}
.ladder-name i{font-style:normal;color:var(--accent)}
.ladder-sub{font-size:12.5px;color:var(--muted);margin-top:6px;display:block;line-height:1.45}

.pdf-price{position:relative;overflow:hidden;background:var(--night);color:var(--blush);border-radius:var(--r-lg);padding:36px;box-shadow:0 40px 70px -40px rgba(26,22,21,.7);
  --text:var(--blush);--muted:rgba(254,245,243,.66);--border:rgba(254,245,243,.14)}
.pdf-price::before{content:'';position:absolute;width:340px;height:340px;right:-140px;top:-160px;border-radius:50%;background:radial-gradient(circle,rgba(234,136,142,.45),transparent 65%);pointer-events:none}
.pdf-price>*{position:relative}
.pp-eyebrow{font-family:var(--mono);font-weight:600;font-size:11.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted);margin-bottom:16px}
.pp-eyebrow.coral{color:var(--coral)}
.pp-name{display:flex;align-items:center;gap:12px;font-family:var(--display);font-size:28px;font-weight:700;letter-spacing:-.03em;margin-bottom:18px;color:var(--text)}
.pp-name .pp-icon{width:40px;height:40px;border-radius:11px;background:var(--coral);color:var(--ink);display:flex;align-items:center;justify-content:center;font-size:17px;flex-shrink:0;overflow:hidden}
.pp-name i{font-style:normal;color:var(--coral)}
.pp-amount{font-family:var(--display);font-size:clamp(52px,calc(6 * var(--vw)),76px);font-weight:700;letter-spacing:-.05em;line-height:.95;color:var(--text)}
.pp-amount span{font-family:var(--mono);font-size:14px;font-weight:600;color:var(--muted);letter-spacing:0}
.pp-sub{font-size:14px;color:var(--muted);margin-top:10px;padding-bottom:20px;border-bottom:1px solid var(--border)}
.pp-term{font-size:14px;font-weight:600;color:var(--coral);margin-top:18px}
.pdf-price .btn-primary:hover{background:var(--blush);color:var(--ink);border-color:var(--blush)}

.dark-band{position:relative;overflow:hidden;z-index:1;background:var(--night);border-radius:var(--r-lg);padding:clamp(28px,calc(4 * var(--vw)),44px);display:flex;gap:36px;align-items:center;flex-wrap:wrap}
.dark-band::after{content:'';position:absolute;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(234,136,142,.32),transparent 68%);top:-200px;right:-120px;pointer-events:none;z-index:-1}
.dark-band>*{position:relative;z-index:1}
.dark-band .db-stat{font-family:var(--display);font-size:clamp(40px,calc(5 * var(--vw)),64px);font-weight:700;color:var(--coral);letter-spacing:-.045em;line-height:1;flex-shrink:0}
.dark-band .db-copy{font-size:15px;color:var(--muted);font-weight:300;line-height:1.7;flex:1;min-width:240px}
.dark-band .db-copy strong{color:var(--blush);font-weight:600}
.dark-band .db-copy b{color:var(--coral);font-weight:600}
.db-src{display:block;font-family:var(--mono);font-weight:600;font-size:11px;color:var(--muted-dark);margin-top:10px}

.maths-table{width:100%;border-collapse:collapse}
.maths-table th{font-family:var(--mono);font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--muted);text-align:left;padding:0 0 12px;border-bottom:1.5px solid var(--ink)}
.maths-table th:last-child,.maths-table td:last-child{text-align:right;white-space:nowrap}
.maths-table td{padding:15px 0;border-bottom:1px solid var(--border);font-size:14.5px;color:var(--text);vertical-align:top;font-weight:500}
.maths-table td small{display:block;font-size:12.5px;color:var(--muted);font-weight:300;margin-top:2px}
.maths-table td:last-child{font-family:var(--mono);font-weight:600}
.maths-sum{font-size:15px;margin-top:18px;color:var(--text)}
.maths-sum strong{font-weight:700}

.fit-card{padding:34px}
.fit-card h3{font-size:24px;letter-spacing:-.03em;margin-bottom:16px;color:var(--text)}
.fit-card h3 i{font-style:normal;color:var(--accent)}
.fit-card ul li{display:flex;gap:12px;align-items:flex-start;font-size:14.5px;color:var(--text);padding:10px 0;border-bottom:1px solid var(--border);line-height:1.55}
.fit-card ul li:last-child{border-bottom:0}
.fit-yes li::before{content:'';flex-shrink:0;width:18px;height:18px;margin-top:2px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/11px no-repeat}
.fit-no li::before{content:'';flex-shrink:0;width:18px;height:18px;margin-top:2px;border-radius:50%;border:1.5px solid var(--muted-dark);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M3.5 3.5l5 5M8.5 3.5l-5 5' fill='none' stroke='%23A1938F' stroke-width='1.6' stroke-linecap='round'/%3E%3C/svg%3E") center/10px no-repeat}
.fit-no li{color:var(--muted)}
.fit-no li a{color:var(--accent-dark);font-weight:600}
.fit-card.fit-highlight{background:var(--night)!important;border-color:var(--night);--text:var(--blush);--muted:rgba(254,245,243,.66);--border:rgba(254,245,243,.13)}

.step-row{display:flex;gap:18px;align-items:flex-start}
.step-num{width:38px;height:38px;border-radius:12px;background:var(--coral);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--mono);font-weight:600;font-size:14px;flex-shrink:0}
.step-row h4{font-size:19px;letter-spacing:-.02em;margin-bottom:4px;color:var(--text)}
.step-row h4 span{font-family:var(--body);font-weight:400;font-size:14px;color:var(--muted);letter-spacing:0}
.step-row p{font-size:14px;color:var(--muted);font-weight:300;line-height:1.7}

.compare-row{display:flex;align-items:center;gap:14px;margin-bottom:10px;flex-wrap:wrap}
.compare-row .bar{height:46px;border-radius:999px;display:flex;align-items:center;padding:0 20px;font-size:12.5px;font-weight:600;min-width:0}
.compare-row .bar-muted{background:#D9C9C5;color:var(--ink);flex:1 1 64%}
.compare-row .bar-coral{background:var(--coral);color:var(--ink);flex:1 1 30%}
.compare-row .bar-label{font-family:var(--display);font-size:22px;letter-spacing:-.03em;color:var(--text);white-space:nowrap}
.compare-row .bar-label.strike{color:var(--muted);text-decoration:line-through}

.team-card{text-align:left;padding:30px 26px}
.team-avatar{width:72px;height:72px;border-radius:22px;background:var(--coral);color:var(--ink);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-size:26px;margin:0 0 18px;overflow:hidden}
.team-avatar img{width:72px;height:72px;object-fit:cover}
.team-card h4{font-size:20px;letter-spacing:-.02em;color:var(--text)}
.team-role{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent-dark);margin:6px 0 12px;display:block}
.team-card p{font-size:14px;color:var(--muted);font-weight:300;line-height:1.7}

.layer-card{padding:32px}
.layer-head{display:flex;gap:18px;align-items:baseline;margin-bottom:18px}
.layer-num{font-family:var(--mono);font-size:14px;font-weight:600;color:var(--accent-dark);flex-shrink:0}
.layer-head h3{font-size:24px;letter-spacing:-.03em;color:var(--text)}

.proj-card{padding:0;overflow:visible}
.proj-head{display:flex;justify-content:space-between;align-items:flex-start;gap:20px;padding:30px 30px 0;flex-wrap:wrap}
.proj-head h3{font-size:28px;letter-spacing:-.035em;color:var(--text)}
.proj-head .proj-strap{font-size:14px;font-weight:600;color:var(--accent-dark);margin-top:4px}
.proj-meta{text-align:right}
.proj-meta .proj-price{font-family:var(--display);font-size:32px;letter-spacing:-.04em;color:var(--text)}
.proj-meta .proj-time{font-family:var(--mono);font-weight:600;font-size:12px;color:var(--muted)}
.proj-body{padding:20px 30px 30px}
.proj-quote{position:relative;background:var(--bg);border-radius:16px;padding:18px 20px 18px 46px;font-size:14.5px;font-weight:500;color:var(--text);line-height:1.6;margin-bottom:20px}
.proj-quote::before{content:'\201C';position:absolute;left:16px;top:6px;font-family:var(--display);font-size:42px;color:var(--coral);line-height:1}

.temp-card{border-radius:16px;border:1px solid var(--border);background:#fff;padding:18px 20px}
.temp-card.hot{background:var(--night);border-color:var(--night);--text:var(--blush);--muted:rgba(254,245,243,.66)}
.temp-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.temp-head strong{font-family:var(--display);font-size:18px;letter-spacing:-.02em;color:var(--text)}
.temp-head span{font-family:var(--mono);font-size:12px;font-weight:600;color:var(--coral)}
.temp-card p{font-size:13px;color:var(--muted);font-weight:300;line-height:1.6}

.note-strip{background:#fff;border:1px solid var(--border);border-left:4px solid var(--coral);border-radius:14px;padding:18px 22px;font-size:14px;color:var(--text);font-weight:300;line-height:1.7}
.note-strip strong{font-weight:600}
.note-strip .ns-src{display:block;font-family:var(--mono);font-weight:600;font-size:11px;color:var(--accent-dark);margin-top:6px}

/* dark instrument panels (canvas scenes) */
.engine-shell{position:relative;overflow:hidden;background:var(--night);border:1px solid rgba(234,136,142,.22);border-radius:var(--r-lg);box-shadow:0 50px 90px -50px rgba(26,22,21,.8)}
.engine-shell::before{content:'';position:absolute;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,rgba(234,136,142,.18),transparent 70%);top:-240px;right:-140px;pointer-events:none}
.engine-shell canvas{display:block;width:100%;height:700px}
.engine-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(254,245,243,.1);position:relative}
.engine-stats div{text-align:left;padding:20px 22px;border-left:1px solid rgba(254,245,243,.1)}
.engine-stats div:first-child{border-left:0}
.engine-stats b{display:block;font-family:var(--display);font-size:34px;font-weight:700;color:var(--coral);letter-spacing:-.04em;font-variant-numeric:tabular-nums;line-height:1.1}
.engine-stats label{font-family:var(--mono);font-weight:600;font-size:10.5px;color:rgba(254,245,243,.55);letter-spacing:.1em;text-transform:uppercase}

.ascent-shell{position:relative;overflow:hidden;display:grid;grid-template-columns:1.55fr 1fr;background:var(--night);border:1px solid rgba(234,136,142,.22);border-radius:var(--r-lg);box-shadow:0 50px 90px -50px rgba(26,22,21,.8)}
.ascent-scene{position:relative;min-height:520px}
.ascent-scene canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
.ascent-hits button{position:absolute;width:104px;height:84px;border-radius:14px;background:transparent;border:0;cursor:pointer;transform:translate(-50%,-50%);padding:0;-webkit-tap-highlight-color:transparent}
.ascent-hits button:focus-visible{outline:2px solid var(--coral);outline-offset:3px}
.ascent-detail{padding:48px 40px;border-left:1px solid rgba(254,245,243,.1);display:flex;flex-direction:column;justify-content:center;transition:opacity .22s ease,transform .22s ease}
.ascent-detail.swap{opacity:0;transform:translateY(10px)}
.ad-kicker{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:rgba(254,245,243,.5);margin-bottom:16px;display:flex;align-items:center;gap:10px}
.ad-kicker::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--coral)}
.ad-name{font-size:clamp(40px,calc(4.4 * var(--vw)),64px);color:var(--blush);letter-spacing:-.05em;line-height:.9}
.ad-name i{font-style:normal;color:var(--coral)}
.ad-strap{font-family:var(--display);font-size:20px;color:var(--coral);margin:12px 0 16px;letter-spacing:-.02em}
.ad-desc{font-size:14px;color:rgba(254,245,243,.72);font-weight:300;line-height:1.8;margin-bottom:22px}
.ad-price{font-family:var(--display);font-size:34px;color:var(--blush);letter-spacing:-.04em;margin-bottom:24px}
.ad-price span{font-family:var(--mono);font-weight:600;font-size:12px;color:rgba(254,245,243,.5);letter-spacing:0}
.ascent-dots{display:flex;gap:8px;margin-top:28px}
.ascent-dots span{width:22px;height:4px;border-radius:4px;background:rgba(254,245,243,.18);transition:all .25s}
.ascent-dots span.on{background:var(--coral);width:36px}
.ascent-hint{position:absolute;top:18px;left:20px;display:inline-flex;align-items:center;gap:8px;font-family:var(--mono);font-weight:600;font-size:10.5px;letter-spacing:.12em;text-transform:uppercase;color:rgba(254,245,243,.7);background:rgba(234,136,142,.12);border:1px solid rgba(234,136,142,.3);padding:7px 12px;border-radius:999px;transition:opacity .4s}
.ascent-hint::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--coral);animation:pulse 1.6s ease-in-out infinite}
@keyframes pulse{0%,100%{opacity:1}50%{opacity:.3}}
.ascent-hint.off{opacity:0}

/* =====================================================================
   BLOG
   ===================================================================== */
.blog-hero{position:relative;background:var(--bg);padding:clamp(150px,calc(16 * var(--vw)),190px) 0 clamp(48px,calc(6 * var(--vw)),72px);border-bottom:1px solid var(--border)}
.blog-meta{display:flex;align-items:center;gap:18px;margin-bottom:28px;flex-wrap:wrap;font-family:var(--mono);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.blog-cat{background:var(--ink);color:var(--blush);padding:6px 12px;border-radius:999px;letter-spacing:.12em}
.blog-date::before,.blog-read::before{content:'';display:inline-block;width:5px;height:5px;border-radius:50%;background:var(--coral);margin-right:10px;vertical-align:middle}
.blog-hero h1{font-size:clamp(36px,calc(5.4 * var(--vw)),72px);line-height:1;letter-spacing:-.04em;margin-bottom:26px;max-width:980px;color:var(--text)}
.blog-hero .intro{font-size:clamp(17px,calc(1.7 * var(--vw)),20px);color:var(--muted);font-weight:300;line-height:1.7;max-width:720px}
.blog-body{padding:clamp(56px,calc(7 * var(--vw)),96px) 0;background:#fff}
.blog-content{max-width:700px}
.blog-content h2{font-size:clamp(26px,calc(2.8 * var(--vw)),36px);letter-spacing:-.035em;line-height:1.1;margin:56px 0 18px;color:var(--text)}
.blog-content h3{font-size:22px;letter-spacing:-.02em;margin:36px 0 12px;color:var(--text)}
.blog-content p{font-size:17px;color:#4A403E;font-weight:300;line-height:1.85;margin-bottom:22px}
.blog-content ul,.blog-content ol{margin:0 0 24px 0}
.blog-content ul li{position:relative;padding-left:24px}
.blog-content ul li::before{content:'';position:absolute;left:2px;top:.75em;width:8px;height:8px;border-radius:50%;background:var(--coral)}
.blog-content ol{list-style:decimal;padding-left:22px}
.blog-content li{font-size:17px;color:#4A403E;font-weight:300;line-height:1.8;margin-bottom:10px}
.blog-content strong{color:var(--text);font-weight:600}
.blog-content em{color:var(--accent-dark)}
.blog-content a{color:var(--accent-dark);text-decoration:underline;text-underline-offset:3px}
.blog-content .callout{position:relative;background:var(--bg);border-radius:20px;padding:28px 30px 28px 70px;margin:40px 0}
.blog-content .callout::before{content:'\201C';position:absolute;left:24px;top:14px;font-family:var(--display);font-size:64px;line-height:1;color:var(--coral)}
.blog-content .callout p{margin:0;color:var(--text);font-weight:400;font-size:18px}
.blog-sidebar{position:sticky;top:100px}
.sidebar-card{background:var(--bg);border:0;border-radius:20px;padding:26px;margin-bottom:18px}
.sidebar-card:has(.btn){background:var(--night);--text:var(--blush);--muted:rgba(254,245,243,.66);--border:rgba(254,245,243,.13)}
.sidebar-card h4{font-size:20px;letter-spacing:-.02em;margin-bottom:14px;color:var(--text)}
.sidebar-card p{font-size:14px;color:var(--muted);font-weight:300;line-height:1.7;margin-bottom:18px}
.related-post{display:block;padding:14px 0;border-bottom:1px solid var(--border)}
.related-post:last-child{border-bottom:0}
.related-post a{font-size:14.5px;font-weight:500;color:var(--text);line-height:1.4}
.related-post a:hover{color:var(--accent-dark)}
.related-post span{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);display:block;margin-top:4px}

/* =====================================================================
   DOWNLOADS
   ===================================================================== */
.dl-hero{position:relative;background:var(--bg);padding:clamp(140px,calc(15 * var(--vw)),180px) 0 clamp(64px,calc(7 * var(--vw)),96px)}
.dl-hero-inner{display:grid;grid-template-columns:minmax(0,1fr) 440px;gap:clamp(40px,calc(6 * var(--vw)),88px);align-items:start}
.dl-badge{display:inline-flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:24px}
.dl-badge::before{content:'';width:22px;height:2px;background:var(--coral)}
.dl-hero h1{font-size:clamp(38px,calc(5.2 * var(--vw)),70px);line-height:.98;letter-spacing:-.045em;margin-bottom:24px;color:var(--text)}
.dl-hero .intro{font-size:18px;color:var(--muted);font-weight:300;line-height:1.75;margin-bottom:34px}
.dl-whats-inside{counter-reset:inside;margin-bottom:36px;border-top:1px solid var(--ink)}
.dl-whats-inside li{counter-increment:inside;display:flex;align-items:baseline;gap:18px;font-size:15.5px;color:var(--text);padding:15px 0;border-bottom:1px solid var(--border)}
.dl-whats-inside li::before{content:counter(inside,decimal-leading-zero);font-family:var(--mono);font-weight:600;font-size:12px;color:var(--accent-dark);flex-shrink:0}
.form-card{position:sticky;top:100px;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:34px;box-shadow:var(--shadow)}
.form-card h3{font-size:28px;letter-spacing:-.03em;margin-bottom:8px;color:var(--text)}
.form-card p{font-size:14px;color:var(--muted);font-weight:300;margin-bottom:24px;line-height:1.7}
.form-preview{display:grid;grid-template-columns:52px minmax(0,1fr);column-gap:16px;align-items:center;text-align:left;background:var(--night);border-radius:18px;padding:18px 20px;margin-bottom:26px;--text:var(--blush);--muted:rgba(254,245,243,.6)}
.form-preview .preview-icon{grid-row:span 2;width:52px;height:52px;border-radius:14px;background:var(--coral);display:flex;align-items:center;justify-content:center;font-size:26px;margin:0}
.form-preview p{font-size:12px;color:var(--muted);margin:0}
.form-preview p[style]{color:var(--blush)!important}
.hs-form-frame{min-height:120px}
.more-downloads{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:48px}
.mini-dl-card{display:block;background:#fff;border:1px solid var(--border);border-radius:18px;padding:20px;transition:transform .2s,border-color .2s}
.mini-dl-card:hover{transform:translateY(-3px);border-color:var(--border-accent)}
.mini-dl-card span{font-family:var(--mono);font-weight:600;font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-dark);display:block;margin-bottom:8px}
.mini-dl-card p{font-size:14px;color:var(--text);font-weight:500;margin:0;line-height:1.45}

/* =====================================================================
   POPUP · COOKIES
   ===================================================================== */
.bh54{position:fixed;right:16px;bottom:16px;z-index:8500;width:min(340px,calc(100% - 32px));transform:translateX(calc(100% + 32px));transition:transform .6s cubic-bezier(.22,1,.36,1),bottom .3s ease}
.bh54-card{position:relative;overflow:hidden;background:var(--night);color:var(--blush);border-radius:24px;padding:24px;box-shadow:0 30px 60px -20px rgba(0,0,0,.5)}
.bh54-card::before{content:'54';position:absolute;right:-10px;top:-24px;font-family:var(--display);font-size:150px;line-height:1;letter-spacing:-.06em;color:rgba(234,136,142,.16);pointer-events:none}
.bh54-x{position:absolute;top:12px;right:12px;width:30px;height:30px;border:0;border-radius:50%;background:rgba(254,245,243,.1);color:var(--blush);font-size:12px;cursor:pointer;z-index:1}
.bh54-tag{position:relative;display:inline-block;font-family:var(--mono);font-weight:600;font-size:10px;letter-spacing:.14em;color:var(--coral);margin-bottom:12px}
.bh54-title{position:relative;font-family:var(--display);font-size:22px;font-weight:700;letter-spacing:-.03em;line-height:1.05;margin-bottom:10px}
.bh54-title i{font-style:normal;color:var(--coral)}
.bh54-card p{position:relative;font-size:12.5px;font-weight:300;line-height:1.6;color:rgba(254,245,243,.7);margin-bottom:16px}
.bh54-card .btn{width:100%;padding:13px 18px;font-size:13px}
.bhck{display:none;position:fixed;left:0;right:0;bottom:0;z-index:9500;padding:14px}
.bhck-inner{max-width:960px;margin:0 auto;background:#fff;border:1px solid var(--border);border-radius:24px;box-shadow:0 20px 50px -20px rgba(38,34,33,.35);padding:18px 22px;display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.bhck-inner p{flex:1;min-width:240px;font-size:13px;font-weight:300;line-height:1.6;color:var(--ink)}
.bhck-inner p a{color:var(--accent-dark);font-weight:500;text-decoration:underline;text-underline-offset:2px}
.bhck-inner .ctas{display:flex;gap:8px;flex-wrap:wrap}
.bhck-inner .btn{padding:12px 20px;font-size:13px}

/* =====================================================================
   MOTION
   ===================================================================== */
.reveal{opacity:0;transform:translateY(28px);transition:opacity .7s cubic-bezier(.22,1,.36,1),transform .7s cubic-bezier(.22,1,.36,1)}
.reveal.visible{opacity:1;transform:none}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.fade-up{opacity:0;animation:fadeUp .8s cubic-bezier(.22,1,.36,1) forwards}
.fade-up-1{animation-delay:.05s}.fade-up-2{animation-delay:.15s}.fade-up-3{animation-delay:.25s}.fade-up-4{animation-delay:.35s}
.launch-seq li{opacity:0;animation:fadeUp .8s cubic-bezier(.22,1,.36,1) forwards}
.launch-seq li:nth-child(1){animation-delay:.35s}.launch-seq li:nth-child(2){animation-delay:.42s}.launch-seq li:nth-child(3){animation-delay:.49s}.launch-seq li:nth-child(4){animation-delay:.56s}.launch-seq li:nth-child(5){animation-delay:.63s}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal,.fade-up,.launch-seq li{opacity:1;transform:none}
}

/* =====================================================================
   RESPONSIVE
   ===================================================================== */
@media(max-width:1100px){
  .nav-links>li>a{padding:9px 10px}
  .grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}
  .footer-grid{grid-template-columns:1fr 1fr;gap:36px}
  .launch-seq{grid-template-columns:repeat(3,minmax(0,1fr))}
  .launch-seq::before{display:none}
  .telemetry-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .telemetry-grid>div:nth-child(4){border-left:0;padding-left:0}
  .telemetry-grid>div:nth-child(n+4){border-top:1px solid var(--border)}
}
@media(max-width:960px){
  .nav-links,.nav-cta{display:none!important}
  .hamburger{display:flex}
  .navbar{padding:0 9px 0 20px}
  .layout-2col-wide,.layout-blog{grid-template-columns:1fr!important;gap:40px!important}
  [style*="grid-template-columns:1fr 1fr"],[style*="grid-template-columns: 1fr 1fr"],[style*="grid-template-columns:1fr 300px"],[style*="grid-template-columns: 1fr 300px"],[style*="grid-template-columns:1.1fr"],[style*="grid-template-columns:1.2fr"],[style*="grid-template-columns:1fr 1.1fr"],[style*="grid-template-columns:1fr 380px"],[style*="grid-template-columns:1fr 400px"],[style*="grid-template-columns:1fr 420px"]{grid-template-columns:1fr!important;gap:40px!important}
  .dl-hero-inner{grid-template-columns:1fr}
  .form-card,.blog-sidebar{position:static}
  .home-hero-row{grid-template-columns:1fr;gap:28px}
  .ascent-shell{grid-template-columns:1fr}
  .ascent-scene{min-height:340px}
  .ascent-detail{border-left:0;border-top:1px solid rgba(254,245,243,.1);padding:30px 26px}
  .ladder{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ladder-item:last-child{grid-column:1/-1}
}
@media(max-width:720px){
  .page-hero{padding:130px 0 96px}
  .home-hero{padding:130px 0 110px}
  .blog-hero,.dl-hero{padding-top:130px}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  ul.includes-list{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr}
  .launch-seq{grid-template-columns:1fr 1fr}
  .launch-seq li:last-child{grid-column:1/-1}
  .telemetry-grid{grid-template-columns:1fr 1fr}
  .telemetry-grid>div{border-left:0!important;padding-left:0!important;border-top:1px solid var(--border)}
  .telemetry-grid>div:nth-child(-n+2){border-top:0}
  .telemetry-grid>div:nth-child(even){padding-left:20px!important;border-left:1px solid var(--border)!important}
  .engine-shell canvas{height:640px}
  .engine-stats{grid-template-columns:1fr 1fr}
  .engine-stats div:nth-child(3){border-left:0}
  .engine-stats div:nth-child(n+3){border-top:1px solid rgba(254,245,243,.1)}
  .faq-answer-inner{padding-right:0}
  .dark-band .db-stat{flex-shrink:1;min-width:0;font-size:34px;line-height:1.2}
  .dark-band{padding:24px}
  .card{padding:24px}
  .price-card,.pdf-price{padding:26px}
  .cta-band::after{font-size:300px;right:-60px}
  .page-hero::before,.home-hero::before,.page-hero-grid::after,.home-hero .sat{opacity:.6}
  [style*="padding:48px"],[style*="padding: 48px"]{padding:28px!important}
}
@media(max-width:480px){
  .btn{padding:14px 20px;font-size:14px}
  .ladder{grid-template-columns:1fr}
  .home-hero-row .ctas .btn,.page-hero .ctas .btn{flex:1 1 100%}
}

/* =====================================================================
   MOTION LAYER (only applies when html.motion is set by site.js)
   ===================================================================== */
/* headline words rise from behind a mask */
.motion .split .w{display:inline-block;overflow:hidden;vertical-align:top;padding:0 .04em .16em;margin:0 -.04em -.16em}
.motion .split .wi{display:inline-block;transform:translateY(110%) rotate(4deg);transform-origin:0 100%;transition:transform 1s cubic-bezier(.19,1,.22,1);transition-delay:calc(var(--i) * 55ms + 80ms)}
.motion .split.in .wi{transform:none}
.motion .split.fade-up{opacity:1;animation:none}
.motion .section-header.reveal{transform:none}

/* tag lines draw in */
.motion .tag::before{transform:scaleX(0);transform-origin:left;transition:transform .9s cubic-bezier(.19,1,.22,1) .1s}
.motion .reveal.visible .tag::before,.motion .page-hero .tag::before,.motion .home-hero .tag::before,.motion .tag.visible::before{transform:scaleX(1)}

/* hero: cursor glow, parallax rings, twinkling stars, drift on scroll */
.page-hero,.home-hero{--mx:0;--my:0;--sy:0}
.page-hero::before,.home-hero::before{transform:translate(calc(var(--mx) * -22px),calc(-55% + var(--my) * -16px + var(--sy) * 140px));transition:none}
.page-hero-grid,.home-hero .sky{transform:translate(calc(var(--mx) * 10px),calc(var(--my) * 8px + var(--sy) * 60px));animation:starDrift 160s linear infinite}
@keyframes starDrift{to{background-position:520px -420px}}
.page-hero-grid::before,.home-hero .sky::before{content:'';position:absolute;inset:0;background-image:radial-gradient(1.6px 1.6px at 18% 40%,#fff,transparent 60%),radial-gradient(1.6px 1.6px at 57% 24%,#F7C4BA,transparent 60%),radial-gradient(1.4px 1.4px at 81% 58%,#fff,transparent 60%),radial-gradient(1.6px 1.6px at 36% 80%,#fff,transparent 60%);background-size:640px 520px;animation:twinkle 4.5s ease-in-out infinite alternate}
@keyframes twinkle{from{opacity:.15}to{opacity:1}}
.page-hero .container,.home-hero .container{transform:translateY(calc(var(--sy) * -60px));opacity:calc(1 - var(--sy) * .55)}
.page-hero>.glowlayer,.page-hero::selection{display:none}
.page-hero.glow,.home-hero.glow{background-image:radial-gradient(420px circle at var(--gx) var(--gy),rgba(234,136,142,.16),transparent 65%),radial-gradient(1200px 600px at 85% -10%,rgba(234,136,142,.22),transparent 60%),radial-gradient(900px 500px at -10% 110%,rgba(247,196,186,.10),transparent 60%)}

/* home: trajectory line draws, icons idle-float */
.motion .launch-seq::before{transform:scaleX(0);transform-origin:left;animation:drawLine 1.6s cubic-bezier(.65,0,.35,1) .7s forwards}
@keyframes drawLine{to{transform:scaleX(1)}}
.launch-seq img{animation:float 5s ease-in-out infinite}
.launch-seq li:nth-child(2) img{animation-delay:-1s}.launch-seq li:nth-child(3) img{animation-delay:-2s}.launch-seq li:nth-child(4) img{animation-delay:-3s}.launch-seq li:nth-child(5) img{animation-delay:-4s}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-5px)}}
.launch-seq a:hover img{animation-play-state:paused;transform:translateY(-3px) rotate(-8deg)}

/* card spotlight */
.card,.price-card,.launch-seq a,.ladder-item,.mini-dl-card{position:relative;isolation:isolate}
.card::after,.price-card::after,.launch-seq a::after,.ladder-item::after,.mini-dl-card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;transition:opacity .3s;background:radial-gradient(260px circle at var(--cx,50%) var(--cy,50%),rgba(234,136,142,.16),transparent 70%)}
.card:hover::after,.price-card:hover::after,.launch-seq a:hover::after,.ladder-item:hover::after,.mini-dl-card:hover::after{opacity:1}
.btn{transition:background .2s,color .2s,border-color .2s,transform .35s cubic-bezier(.19,1,.22,1)}
.btn-primary::after{content:'';display:none}
.btn:hover{will-change:transform}

/* scroll progress along the nav capsule */
.navbar{position:relative}
.navbar::after{content:'';position:absolute;left:28px;right:28px;bottom:-1px;height:2px;border-radius:2px;background:var(--coral);transform:scaleX(var(--progress,0));transform-origin:left;opacity:.9}

/* marquee is driven by JS when motion is on (speeds up as you scroll) */
.marquee-track.js{animation:none;will-change:transform}

/* CTA ampersand swings in as the band scrolls through */
.cta-band{--p:0}
.motion .cta-band::after{transform:translateY(calc((1 - var(--p)) * 50px)) rotate(calc((var(--p) - .5) * -12deg));transform-origin:60% 80%}

/* footer wordmark fills in as you reach the bottom */
.motion .footer-wordmark{background:linear-gradient(90deg,rgba(254,245,243,.92) var(--fill,0%),transparent var(--fill,0%));-webkit-background-clip:text;background-clip:text}

/* reveal: cards rise with a slight scale */
.motion .reveal{transform:translateY(36px) scale(.985)}
.motion .reveal.visible{transform:none}

/* home hero sized to the window height so the product row sits fully above the fold */
.home-hero{padding-top:clamp(104px,15vh,190px)}
.home-hero .tag{margin-top:0}
.home-title{font-size:max(46px,min(calc(8.8 * var(--vw)),12.2vh));margin:clamp(14px,2.4vh,28px) 0 clamp(16px,3vh,36px)}
.home-hero-row{margin-bottom:clamp(24px,4.4vh,88px);gap:32px}
.home-hero-row p{font-size:clamp(15px,1.25vw,17px);line-height:1.65}
.launch-seq a{padding:14px 16px 16px;gap:8px}
.launch-seq strong{font-size:clamp(19px,1.7vw,24px);margin-top:4px}
.launch-seq .seq-desc{font-size:12.5px}
@media(max-width:960px){.home-hero{padding-top:130px}.home-title{font-size:clamp(46px,calc(8.8 * var(--vw)),136px)}}

/* home hero: more breathing room */
.home-title{font-size:max(46px,min(calc(8.2 * var(--vw)),11.2vh));margin:clamp(14px,2.2vh,26px) 0 clamp(22px,4vh,44px)}
.home-hero-row{margin-bottom:clamp(34px,6.4vh,96px);align-items:center}
.home-hero-row p{font-size:clamp(14.5px,1.15vw,16px);line-height:1.6;max-width:480px}
.launch-seq{gap:14px}
.launch-seq strong{font-size:clamp(18px,1.55vw,22px)}
.launch-seq .seq-desc{font-size:12px;line-height:1.45}
.launch-seq img{width:30px;height:30px}
@media(max-width:960px){.home-title{font-size:clamp(46px,calc(8.8 * var(--vw)),136px)}}
/* home hero: use the spare height so products sit a comfortable gap above the fold */
.home-hero{padding-top:clamp(112px,17.5vh,210px)}
.home-hero .tag{margin-bottom:0}
.home-title{font-size:max(46px,min(calc(8.6 * var(--vw)),12.8vh));margin:clamp(16px,3vh,32px) 0 clamp(24px,5vh,52px)}
.home-hero-row{margin-bottom:clamp(36px,8.4vh,110px)}
.home-hero-row p{font-size:clamp(15px,1.25vw,17px);max-width:500px}
.launch-seq a{padding:18px 18px 20px;gap:10px}
.launch-seq .seq-desc{font-size:12.5px}
@media(max-width:960px){.home-title{font-size:clamp(46px,calc(8.8 * var(--vw)),136px)}}
/* home hero fills the window: products anchor a set gap above the fold, extra height is shared out above and below the intro */
@media(min-width:961px){
  .home-hero{--ht:clamp(112px,17.5vh,210px);padding-top:var(--ht)}
  .home-hero .container{display:flex;flex-direction:column;min-height:calc(100svh - var(--ht) - clamp(44px,7vh,84px))}
  .home-hero .tag{align-self:flex-start;margin-top:auto}
  .home-hero-row{margin-bottom:max(clamp(36px,8.4vh,110px),auto)}
  .home-hero-row{margin-bottom:auto;padding-bottom:clamp(36px,8.4vh,110px)}
  .home-hero .launch-seq{flex-shrink:0}
}
@media(min-width:961px) and (max-width:1100px){.home-hero .launch-seq{grid-template-columns:repeat(5,minmax(0,1fr))}.home-hero .launch-seq::before{display:block}.launch-seq strong{font-size:17px}}

/* footer bottom: legal text left, contact + policy links right */
.footer-bottom{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 48px}
.fb-right{display:flex;flex-direction:column;align-items:flex-end;gap:8px}
.fb-contact{display:flex;gap:22px;flex-wrap:wrap;justify-content:flex-end}
.fb-contact a{font-size:14px;color:var(--blush);font-weight:500}
.fb-right .fb-links{justify-content:flex-end}
@media(max-width:860px){.footer-bottom{grid-template-columns:1fr}.fb-right{align-items:flex-start}.fb-contact,.fb-right .fb-links{justify-content:flex-start}}

/* hero bottom: no curve, the night sky fades softly into the next section */
.page-hero::after,.home-hero::after{left:0;right:0;bottom:0;height:clamp(180px,calc(22 * var(--vw)),280px);border-radius:0;box-shadow:none;z-index:-1;
  background:linear-gradient(180deg,rgba(26,22,21,0) 0%,color-mix(in srgb,var(--horizon) 18%,transparent) 35%,color-mix(in srgb,var(--horizon) 60%,transparent) 70%,var(--horizon) 100%)}

/* opening fold ends on a clean, straight edge */
.page-hero::after,.home-hero::after{display:none}
.page-hero{padding-bottom:clamp(80px,9vw,120px)}
.home-hero{padding-bottom:clamp(56px,8vh,96px)}

/* opening fold: a gentle planet horizon with a soft glow (flatter and quieter than before) */
.page-hero::after,.home-hero::after{display:block;content:'';position:absolute;left:-30%;right:-30%;bottom:-1px;height:clamp(40px,calc(6 * var(--vw)),80px);z-index:0;
  background:var(--horizon);border-radius:50% 50% 0 0/100% 100% 0 0;
  box-shadow:0 -1px 0 rgba(234,136,142,.32),0 -22px 70px -14px rgba(234,136,142,.28);pointer-events:none}
.page-hero{padding-bottom:clamp(110px,12vw,160px)}
.home-hero{padding-bottom:clamp(80px,11vh,130px)}
/* more breathing room around the horizon on the homepage */
.home-hero{padding-bottom:clamp(130px,17vh,190px)}
.telemetry{padding-top:clamp(36px,5vw,64px)}

/* website showcase: each build shown as a live-styled preview in its own brand */
.site-showcase{display:flex;flex-direction:column;gap:28px;margin-bottom:28px}
.site-card{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:clamp(18px,2.4vw,28px)}
.site-card--flip .site-frame{order:2}
.site-frame{display:block;border-radius:18px;overflow:hidden;background:var(--site-bg);box-shadow:0 30px 60px -30px rgba(26,22,21,.55);transition:transform .5s cubic-bezier(.19,1,.22,1),box-shadow .5s}
.site-frame:hover{transform:translateY(-6px) rotate(-.4deg);box-shadow:0 40px 70px -30px rgba(26,22,21,.6)}
.site-card--flip .site-frame:hover{transform:translateY(-6px) rotate(.4deg)}
.site-chrome{display:flex;align-items:center;gap:7px;padding:11px 14px;background:rgba(255,255,255,.06);border-bottom:1px solid rgba(255,255,255,.08)}
.site-chrome span{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.22)}
.site-chrome em{font-style:normal;margin-left:auto;margin-right:auto;font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.55);background:rgba(255,255,255,.07);padding:3px 14px;border-radius:999px}
.site-screen{position:relative;overflow:hidden;min-height:clamp(250px,26vw,330px);padding:20px 26px 28px;color:var(--site-ink)}
.site-menu{display:flex;align-items:center;gap:16px;font-size:11px;margin-bottom:clamp(30px,4vw,48px)}
.site-menu b{font-family:var(--display);font-size:18px;letter-spacing:-.03em;margin-right:auto;color:var(--site-ink)}
.site-menu i{font-style:normal;opacity:.6}
.site-eyebrow{font-size:10.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--site-accent);margin-bottom:10px}
.site-h{position:relative;z-index:1;font-family:var(--display);font-weight:700;font-size:clamp(24px,2.8vw,38px);line-height:1;letter-spacing:-.035em;max-width:92%;margin-bottom:22px}
.site-doors{position:relative;z-index:1;display:flex;gap:8px;flex-wrap:wrap}
.site-doors span{font-size:11px;font-weight:600;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04)}
.site-doors span:first-child{background:var(--site-accent);border-color:var(--site-accent);color:var(--site-bg)}
.site-arches{position:absolute;right:-30px;bottom:-60px;display:flex;gap:10px;opacity:.9}
.site-arches i{width:70px;height:150px;border-radius:70px 70px 0 0;border:10px solid var(--site-accent);border-bottom:0}
.site-arches i:nth-child(2){border-color:var(--site-accent-2);transform:translateY(24px)}
.site-arches i:nth-child(3){border-color:var(--site-accent-3);transform:translateY(48px)}
.site-sector{display:inline-block;font-size:11.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-dark);margin-bottom:10px}
.site-info h3{font-size:clamp(30px,3.2vw,42px);letter-spacing:-.04em;line-height:1;margin-bottom:14px;color:var(--text)}
.site-info p{font-size:15px;color:var(--muted);font-weight:300;line-height:1.75;margin-bottom:22px}
.site-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--border);border-bottom:1px solid var(--border);margin-bottom:22px}
.site-facts li{padding:14px 12px 14px 0;font-size:12px;color:var(--muted);line-height:1.35}
.site-facts li+li{padding-left:14px;border-left:1px solid var(--border)}
.site-facts b{display:block;font-family:var(--display);font-size:30px;letter-spacing:-.04em;color:var(--accent);line-height:1;margin-bottom:4px}
.site-link{font-size:14px;font-weight:600;color:var(--text);border-bottom:2px solid var(--coral);padding-bottom:2px}
.site-link:hover{color:var(--accent-dark)}
@media(max-width:900px){.site-card{grid-template-columns:1fr}.site-card--flip .site-frame{order:0}}
.site-shot{display:block;width:100%;height:auto;aspect-ratio:1880/998;object-fit:cover;object-position:top}
.site-frame{position:relative}
.site-addon{position:absolute;z-index:2;bottom:14px;right:14px;display:inline-flex;align-items:center;gap:6px;background:var(--coral);color:var(--ink);font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:7px 12px;border-radius:999px;box-shadow:0 10px 24px -8px rgba(26,22,21,.55)}
.site-facts b{font-size:clamp(24px,2.4vw,30px)}

/* ---------- mobile polish ---------- */
@media(max-width:720px){
  /* stats: 2 x 2 grid with the last stat centred across the full width */
  .telemetry-grid{grid-template-columns:1fr 1fr;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
  .telemetry-grid>div{padding:22px 0 20px!important;border-left:0!important;border-top:1px solid var(--border)}
  .telemetry-grid>div:nth-child(-n+2){border-top:0}
  .telemetry-grid>div:nth-child(even){padding-left:20px!important;border-left:1px solid var(--border)!important}
  .telemetry-grid>div:last-child{grid-column:1/-1;text-align:center;padding-left:0!important;border-left:0!important}
  /* footer: brand on top, the three link columns side by side */
  .footer-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 14px;padding-bottom:40px}
  .footer-brand{grid-column:1/-1}
  .footer-col h4{font-size:10px;letter-spacing:.12em;margin-bottom:12px}
  .footer-col ul li{margin-bottom:8px}
  .footer-col ul li a{font-size:13px}
  /* tighter vertical rhythm */
  .home-hero{padding-bottom:96px}
  .section-header{margin-bottom:32px}
  /* beyond marketing rows: drop the pill so the text has room */
  .card .product-badge[style*="min-width:120px"]{display:none}
}
@media(max-width:720px){.footer-col h4{min-height:2.6em}}
/* overscroll: every section paints its own background, so the page itself can be the night colour
   (mobile browsers use the body colour when you pull past the top or bottom) */
body{background:#1A1615}
/* mobile menu: coral full stop after each page */
.mobile-menu a:not(.btn)::after{content:'.';color:var(--coral)}
.mobile-menu .btn-primary{color:var(--ink)}

/* =====================================================================
   LIGHT MODE  (html[data-theme="light"], set by the nav toggle)
   The approved design is the dark mode and stays the default.
   Light mode turns the night surfaces (opening fold, nav, menus,
   footer) into the light brand, with a clear frosted-glass nav.
   ===================================================================== */
.theme-toggle{flex-shrink:0;width:42px;height:42px;border-radius:50%;border:1px solid rgba(254,245,243,.14);background:rgba(254,245,243,.06);color:var(--blush);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;margin-left:6px;transition:background .2s,border-color .2s,transform .3s}
.theme-toggle:hover{background:rgba(254,245,243,.12);border-color:rgba(234,136,142,.6)}
.theme-toggle svg{width:18px;height:18px}
.theme-toggle .i-moon{display:none}
html[data-theme="light"] .theme-toggle .i-moon{display:block}
html[data-theme="light"] .theme-toggle .i-sun{display:none}
.theme-toggle:active{transform:rotate(-20deg) scale(.94)}
@media(max-width:960px){.theme-toggle{margin-left:auto}.theme-toggle+.hamburger{margin-left:8px}}
.logo-for-light{display:none!important}
html[data-theme="light"] .logo-for-light{display:block!important}
html[data-theme="light"] .logo-for-dark{display:none!important}

html[data-theme="light"],html[data-theme="light"] body{background:#FEF5F3}

/* night scopes become light scopes */
html[data-theme="light"] .page-hero,html[data-theme="light"] .home-hero,html[data-theme="light"] .footer,html[data-theme="light"] .mobile-menu{
  --text:var(--ink);--muted:#6F6461;--muted-dark:#A1938F;--border:rgba(38,34,33,.10);--navy-light:#fff;--accent-dim:rgba(234,136,142,.13);color:var(--text)}

/* opening fold: warm daylight with a coral sun glow */
html[data-theme="light"] .page-hero,html[data-theme="light"] .home-hero{background:
  radial-gradient(1100px 620px at 88% -12%,rgba(234,136,142,.30),transparent 62%),
  radial-gradient(900px 520px at -10% 110%,rgba(247,196,186,.35),transparent 60%),#FFFBFA}
html[data-theme="light"] .page-hero.glow,html[data-theme="light"] .home-hero.glow{background-image:radial-gradient(420px circle at var(--gx) var(--gy),rgba(234,136,142,.16),transparent 65%),radial-gradient(1100px 620px at 88% -12%,rgba(234,136,142,.30),transparent 62%),radial-gradient(900px 520px at -10% 110%,rgba(247,196,186,.35),transparent 60%)}
html[data-theme="light"] .page-hero-grid,html[data-theme="light"] .home-hero .sky{background-image:
    radial-gradient(1.4px 1.4px at 12% 22%,rgba(234,136,142,.55),transparent 60%),radial-gradient(1px 1px at 28% 68%,rgba(38,34,33,.25),transparent 60%),
    radial-gradient(1.4px 1.4px at 46% 14%,rgba(234,136,142,.45),transparent 60%),radial-gradient(1px 1px at 63% 52%,rgba(38,34,33,.2),transparent 60%),
    radial-gradient(1.4px 1.4px at 74% 30%,rgba(234,136,142,.6),transparent 60%),radial-gradient(1px 1px at 88% 72%,rgba(38,34,33,.2),transparent 60%)}
html[data-theme="light"] .page-hero-grid::before,html[data-theme="light"] .home-hero .sky::before{background-image:radial-gradient(1.6px 1.6px at 18% 40%,rgba(234,136,142,.7),transparent 60%),radial-gradient(1.6px 1.6px at 57% 24%,rgba(234,136,142,.6),transparent 60%),radial-gradient(1.4px 1.4px at 81% 58%,rgba(38,34,33,.3),transparent 60%),radial-gradient(1.6px 1.6px at 36% 80%,rgba(234,136,142,.5),transparent 60%)}
html[data-theme="light"] .page-hero::before,html[data-theme="light"] .home-hero::before{background:
    radial-gradient(circle closest-side,transparent 39.6%,rgba(38,34,33,.09) 39.8%,transparent 40.2%),
    radial-gradient(circle closest-side,transparent 59.6%,rgba(234,136,142,.45) 59.8%,transparent 60.2%),
    radial-gradient(circle closest-side,transparent 79.6%,rgba(38,34,33,.07) 79.8%,transparent 80.2%),
    radial-gradient(circle closest-side,transparent 98.8%,rgba(38,34,33,.06) 99.2%,transparent 99.8%)}
html[data-theme="light"] .page-hero::after,html[data-theme="light"] .home-hero::after{box-shadow:0 -1px 0 rgba(234,136,142,.45),0 -22px 70px -14px rgba(234,136,142,.35)}
html[data-theme="light"] .page-hero h1,html[data-theme="light"] .home-title,html[data-theme="light"] .hero-strap{color:var(--ink)}
html[data-theme="light"] .page-hero .tag,html[data-theme="light"] .home-hero .tag,html[data-theme="light"] .page-hero .btn-outline{color:var(--coral-deep)}
html[data-theme="light"] .page-hero .btn-primary:hover,html[data-theme="light"] .home-hero .btn-primary:hover,html[data-theme="light"] .navbar .btn-primary:hover,html[data-theme="light"] .mobile-menu .btn-primary:hover{background:var(--ink);color:var(--coral);border-color:var(--ink)}
html[data-theme="light"] .launch-seq::before{border-top-color:rgba(234,136,142,.6)}
html[data-theme="light"] .launch-seq a{background:rgba(255,255,255,.72);border-color:rgba(38,34,33,.08);box-shadow:0 18px 40px -28px rgba(38,34,33,.35);backdrop-filter:blur(6px)}
html[data-theme="light"] .launch-seq a:hover{background:#fff;border-color:var(--border-accent)}
html[data-theme="light"] .launch-seq img{box-shadow:0 0 0 6px #FFFBFA}
html[data-theme="light"] .launch-seq strong{color:var(--ink)}
html[data-theme="light"] .launch-seq .seq-desc,html[data-theme="light"] .launch-seq .seq-num{color:#6F6461}
html[data-theme="light"] .page-hero:has(+ .marquee){--horizon:var(--bg-alt)}

/* nav: clear frosted glass */
html[data-theme="light"] .navbar{background:rgba(255,255,255,.55);border-color:rgba(38,34,33,.08);box-shadow:0 18px 40px -24px rgba(38,34,33,.28),inset 0 1px 0 rgba(255,255,255,.7);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}
html[data-theme="light"] .site-nav.scrolled .navbar{background:rgba(255,255,255,.72)}
html[data-theme="light"] .nav-links>li>a{color:rgba(38,34,33,.7)}
html[data-theme="light"] .nav-links>li>a:hover{color:var(--ink);background:rgba(38,34,33,.06)}
html[data-theme="light"] .nav-links>li>a.active{color:var(--ink)}
html[data-theme="light"] .dropdown-menu{background:#FFFCFB;border-color:rgba(38,34,33,.08);backdrop-filter:blur(24px) saturate(180%);-webkit-backdrop-filter:blur(24px) saturate(180%);box-shadow:0 40px 80px -30px rgba(38,34,33,.35)}
html[data-theme="light"] .dropdown-col:first-child{background:rgba(234,136,142,.08)}
html[data-theme="light"] .dropdown-col h4{color:var(--coral-deep)}
html[data-theme="light"] .dropdown-item:hover{background:rgba(38,34,33,.05)}
html[data-theme="light"] .dropdown-item strong{color:var(--ink)}
html[data-theme="light"] .dropdown-item span:not(.di-num){color:#6F6461}
html[data-theme="light"] .hamburger{background:rgba(38,34,33,.06)}
html[data-theme="light"] .hamburger span{background:var(--ink)}
html[data-theme="light"] .theme-toggle{background:rgba(38,34,33,.05);border-color:rgba(38,34,33,.1);color:var(--ink)}
html[data-theme="light"] .theme-toggle:hover{background:rgba(38,34,33,.09)}

/* mobile menu */
html[data-theme="light"] .mobile-menu{background:rgba(254,245,243,.94);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}
html[data-theme="light"] .mobile-menu a{color:var(--ink)}
html[data-theme="light"] .mobile-menu .btn-primary{color:var(--ink)}

/* footer */
html[data-theme="light"] .footer{background:#F9E8E4}
html[data-theme="light"] .footer-col ul li a{color:rgba(38,34,33,.75)}
html[data-theme="light"] .footer-col ul li a:hover,html[data-theme="light"] .footer-bottom a:hover{color:var(--coral-deep)}
html[data-theme="light"] .footer-col h4{color:var(--coral-deep)}
html[data-theme="light"] .footer-social{color:var(--ink)}
html[data-theme="light"] .footer-wordmark{-webkit-text-stroke-color:rgba(38,34,33,.16)}
html[data-theme="light"].motion .footer-wordmark{background:linear-gradient(90deg,rgba(38,34,33,.9) var(--fill,0%),transparent var(--fill,0%));-webkit-background-clip:text;background-clip:text}
html[data-theme="light"] .footer-bottom p{color:rgba(38,34,33,.55)}
html[data-theme="light"] .footer-bottom a{color:rgba(38,34,33,.65)}
html[data-theme="light"] .fb-contact a{color:var(--ink)}

/* marquee and popup */
html[data-theme="light"] .marquee{background:var(--bg-alt)}
html[data-theme="light"] .marquee-track span{color:var(--ink)}
html[data-theme="light"] .bh54-card{background:#fff;color:var(--ink);border:1px solid var(--border);box-shadow:0 30px 60px -24px rgba(38,34,33,.35)}
html[data-theme="light"] .bh54-card p{color:#6F6461}
html[data-theme="light"] .bh54-x{background:rgba(38,34,33,.07);color:var(--ink)}
html[data-theme="light"] .bh54-tag{color:var(--coral-deep)}

/* the change itself animates gently */
html.theme-anim,html.theme-anim *{transition:background-color .35s ease,border-color .35s ease,color .35s ease!important}

/* "Most popular" tab on liftoff */
.popular{position:relative;overflow:visible}
.popular-tag{position:absolute;z-index:3;top:-11px;left:50%;transform:translateX(-50%);white-space:nowrap;background:var(--coral);color:var(--ink);font-size:10.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border-radius:999px;box-shadow:0 8px 18px -8px rgba(234,136,142,.8);pointer-events:none}
.launch-seq li.popular>a{border-color:rgba(234,136,142,.55)}
.card.popular{border-color:var(--border-accent)}
/* more room around the Most popular tab */
.popular-tag{top:0;transform:translate(-50%,-50%);font-size:9.5px;letter-spacing:.12em;padding:4px 11px;line-height:1.2}
/* product cards: content centred vertically so it doesn't hug the top edge */
.launch-seq a{justify-content:center;padding:20px 18px}
.card.popular{padding-top:34px}
.popular-tag{font-size:11px;padding:6px 14px;letter-spacing:.12em}
/* product icons float together, in sync */
.launch-seq li img{animation-delay:0s!important}

/* =====================================================================
   PRODUCT TILES (marketing products, beyond marketing)
   ===================================================================== */
.ptile-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.ptile-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ptile{position:relative;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:30px 30px 26px;overflow:visible;transition:transform .35s cubic-bezier(.19,1,.22,1),box-shadow .35s,border-color .35s}
.ptile::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;opacity:0;transition:opacity .3s;background:radial-gradient(320px circle at var(--cx,50%) var(--cy,50%),rgba(234,136,142,.14),transparent 70%)}
.ptile:hover{transform:translateY(-6px);border-color:var(--border-accent);box-shadow:0 30px 60px -36px rgba(38,34,33,.45)}
.ptile:hover::after{opacity:1}
.ptile-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:26px}
.ptile-top img{width:46px;height:46px;border-radius:13px;box-shadow:0 12px 24px -12px rgba(234,136,142,.9)}
.ptile-dot{width:12px;height:12px;border-radius:50%;background:var(--coral);box-shadow:0 0 0 6px rgba(234,136,142,.18)}
.ptile-num{font-size:11px;font-weight:600;letter-spacing:.14em;color:var(--muted-dark)}
.ptile-name{font-size:clamp(32px,calc(3.4 * var(--vw)),44px);line-height:.95;letter-spacing:-.045em;color:var(--text);margin-bottom:8px}
.ptile-name i{font-style:normal;color:var(--coral)}
.ptile-strap{font-family:var(--display);font-size:18px;letter-spacing:-.02em;color:var(--coral);margin-bottom:14px}
.ptile-desc{font-size:15px;color:var(--muted);font-weight:300;line-height:1.7;margin-bottom:26px;max-width:520px}
.ptile-foot{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;border-top:1px solid var(--border)}
.ptile-price{font-size:14px;font-weight:600;color:var(--text)}
.ptile-go{flex-shrink:0;width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--coral);color:var(--ink);font-size:17px;transition:transform .3s cubic-bezier(.19,1,.22,1),background .2s}
.ptile:hover .ptile-go{transform:translateX(4px) rotate(-45deg);background:var(--ink);color:var(--coral)}
.ptile.popular{border-color:var(--border-accent);box-shadow:0 24px 50px -34px rgba(234,136,142,.9)}
.ptile--wide{grid-column:1/-1;background:var(--night);border-color:var(--night);--text:var(--blush);--muted:rgba(254,245,243,.66);--muted-dark:rgba(254,245,243,.4);--border:rgba(254,245,243,.12)}
.ptile--wide .ptile-desc{max-width:640px}
.ptile--wide:hover .ptile-go{background:var(--blush);color:var(--ink)}
@media(max-width:960px){.ptile-grid--3{grid-template-columns:1fr}}
@media(max-width:720px){.ptile-grid{grid-template-columns:1fr}.ptile{padding:24px 22px 22px}}

/* "right for you" cards: brand check badge instead of a plain tick */
.card>div[style*="font-size:18px;margin-bottom:8px"]{width:30px;height:30px;border-radius:50%;margin-bottom:14px!important;font-size:0!important;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/14px no-repeat}
.card>div[style*="font-size:18px;margin-bottom:8px"]+div{font-family:var(--display);font-size:18px!important;font-weight:700!important;letter-spacing:-.02em;line-height:1.25;color:var(--text)}
.ptile-list{margin:4px 0 26px}
.ptile-list li{display:flex;gap:10px;align-items:flex-start;font-size:14px;color:var(--text);padding:9px 0;border-bottom:1px solid var(--border);line-height:1.45}
.ptile-list li:last-child{border-bottom:0}
.ptile-list li::before{content:'';flex-shrink:0;width:16px;height:16px;margin-top:2px;border-radius:50%;background:var(--coral) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 12'%3E%3Cpath d='M2.5 6.2l2.3 2.3 4.7-5' fill='none' stroke='%23FFFFFF' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/10px no-repeat}
.ptile-grid--3 .ptile-strap{font-size:16px}

/* ===== LIGHT MODE: dark feature boxes become soft pink panels ===== */
html[data-theme="light"] :is(.ptile--wide,.price-card.featured,.ladder-item.active,.pdf-price,.dark-band,.fit-card.fit-highlight,.temp-card.hot,.sidebar-card:has(.btn),.form-preview){
  background:linear-gradient(160deg,#FDEDEA 0%,#F9DFDA 100%)!important;border-color:rgba(234,136,142,.3)!important;color:var(--ink);
  --text:var(--ink);--muted:rgba(38,34,33,.68);--muted-dark:rgba(38,34,33,.45);--border:rgba(38,34,33,.1)}
html[data-theme="light"] :is(.ptile--wide,.pdf-price,.dark-band,.price-card.featured){box-shadow:0 30px 60px -40px rgba(234,136,142,.55)}
html[data-theme="light"] .ptile--wide:hover .ptile-go{background:var(--ink);color:var(--coral)}
html[data-theme="light"] .ladder-item.active .ladder-name,html[data-theme="light"] .dark-band .db-copy strong,html[data-theme="light"] .form-preview p[style]{color:var(--ink)!important}
html[data-theme="light"] .ladder-item.active .ladder-sub{color:var(--coral)}
html[data-theme="light"] :is(.pdf-price,.dark-band,.price-card.featured,.sidebar-card) .btn-primary:hover{background:var(--ink);color:var(--coral);border-color:var(--ink)}
html[data-theme="light"] .dark-band::after{background:radial-gradient(circle,rgba(234,136,142,.22),transparent 68%)}
html[data-theme="light"] .pdf-price::before{background:radial-gradient(circle,rgba(234,136,142,.28),transparent 65%)}
/* calculator results + notes */
html[data-theme="light"] .boundary,html[data-theme="light"] .results{background:linear-gradient(160deg,#FDEDEA 0%,#F9DFDA 100%)!important;color:var(--ink)!important;border:1px solid rgba(234,136,142,.3)!important}
html[data-theme="light"] .boundary p,html[data-theme="light"] .results .rrow .lbl,html[data-theme="light"] .results .hero-label,html[data-theme="light"] .results .funnel{color:rgba(38,34,33,.72)!important}
html[data-theme="light"] .results h2,html[data-theme="light"] .results .hero-num{color:var(--ink)!important}
html[data-theme="light"] .results .rrow{border-top-color:rgba(38,34,33,.1)!important}
html[data-theme="light"] .results .funnel-head{color:rgba(38,34,33,.5)!important}
html[data-theme="light"] .results .funnel .step.sales{border-left-color:rgba(38,34,33,.3)!important}

/* ===== HUBSPOT FORMS: brand overrides (HubSpot's documented --hsf- variables) ===== */
:root{
  --hsf-global__font-family:'Poppins',system-ui,sans-serif;
  --hsf-global__font-size:15px;
  --hsf-global__color:#262221;
  --hsf-global-error__color:#D9656D;
  --hsf-row__horizontal-spacing:14px;
  --hsf-row__vertical-spacing:18px;
  --hsf-module__vertical-spacing:18px;
  --hsf-background__background-color:transparent;
  --hsf-background__border-style:none;
  --hsf-background__border-width:0;
  --hsf-background__padding:0;
  --hsf-heading__font-family:'Mazzard H','Poppins',sans-serif;
  --hsf-heading__color:#262221;
  --hsf-richtext__font-family:'Poppins',system-ui,sans-serif;
  --hsf-richtext__font-size:13px;
  --hsf-richtext__color:#6F6461;
  --hsf-field-label__font-family:'Poppins',system-ui,sans-serif;
  --hsf-field-label__font-size:13px;
  --hsf-field-label__color:#262221;
  --hsf-field-label-requiredindicator__color:#EA888E;
  --hsf-field-description__font-family:'Poppins',system-ui,sans-serif;
  --hsf-field-description__color:#8A7E7B;
  --hsf-field-footer__font-family:'Poppins',system-ui,sans-serif;
  --hsf-field-footer__color:#8A7E7B;
  --hsf-field-input__font-family:'Poppins',system-ui,sans-serif;
  --hsf-field-input__color:#262221;
  --hsf-field-input__background-color:#FEF5F3;
  --hsf-field-input__placeholder-color:#A99D9A;
  --hsf-field-input__border-color:#F1DCD7;
  --hsf-field-input__border-width:1.5px;
  --hsf-field-input__border-style:solid;
  --hsf-field-input__border-radius:14px;
  --hsf-field-input__padding:14px 16px;
  --hsf-field-textarea__font-family:'Poppins',system-ui,sans-serif;
  --hsf-field-textarea__color:#262221;
  --hsf-field-textarea__background-color:#FEF5F3;
  --hsf-field-textarea__placeholder-color:#A99D9A;
  --hsf-field-textarea__border-color:#F1DCD7;
  --hsf-field-textarea__border-width:1.5px;
  --hsf-field-textarea__border-style:solid;
  --hsf-field-textarea__border-radius:14px;
  --hsf-field-textarea__padding:14px 16px;
  --hsf-field-checkbox__padding:2px;
  --hsf-field-checkbox__background-color:#FEF5F3;
  --hsf-field-checkbox__color:#EA888E;
  --hsf-field-checkbox__border-color:#E5CCC6;
  --hsf-field-checkbox__border-width:1.5px;
  --hsf-field-checkbox__border-style:solid;
  --hsf-field-radio__padding:2px;
  --hsf-field-radio__background-color:#FEF5F3;
  --hsf-field-radio__color:#EA888E;
  --hsf-field-radio__border-color:#E5CCC6;
  --hsf-field-radio__border-width:1.5px;
  --hsf-field-radio__border-style:solid;
  --hsf-button__font-family:'Poppins',system-ui,sans-serif;
  --hsf-button__font-size:14.5px;
  --hsf-button__color:#262221;
  --hsf-button__background-color:#EA888E;
  --hsf-button__background-image:none;
  --hsf-button__border-radius:999px;
  --hsf-button__padding:16px 28px;
  --hsf-button__box-shadow:0 14px 30px -14px rgba(234,136,142,.8);
  --hsf-erroralert__font-family:'Poppins',system-ui,sans-serif;
  --hsf-erroralert__font-size:12.5px;
  --hsf-erroralert__color:#D9656D;
  --hsf-infoalert__font-family:'Poppins',system-ui,sans-serif;
  --hsf-infoalert__font-size:12.5px;
  --hsf-infoalert__color:#6F6461;
  --hsf-progressbar-text__font-family:'Poppins',system-ui,sans-serif;
  --hsf-progressbar-text__color:#6F6461;
  --hsf-progressbar-progressLine__background-color:#EA888E;
  --hsf-progressbar-trackLine__background-color:#F9E8E4;
}
/* Same look if HubSpot renders the form straight into the page */
.hs-form-frame :is(input[type=text],input[type=email],input[type=tel],input[type=number],input[type=url],select,textarea){
  font-family:var(--body)!important;font-size:15px!important;color:var(--ink)!important;background:#FEF5F3!important;border:1.5px solid #F1DCD7!important;border-radius:14px!important;padding:14px 16px!important;box-shadow:none!important;outline:0;transition:border-color .2s,box-shadow .2s}
.hs-form-frame :is(input,select,textarea):focus{border-color:var(--coral)!important;box-shadow:0 0 0 4px rgba(234,136,142,.18)!important;background:#fff!important}
.hs-form-frame label{font-family:var(--body)!important;font-size:13px!important;font-weight:500!important;color:var(--ink)!important}
.hs-form-frame :is(button[type=submit],input[type=submit]){font-family:var(--body)!important;font-weight:600!important;font-size:14.5px!important;color:var(--ink)!important;background:var(--coral)!important;border:0!important;border-radius:999px!important;padding:16px 28px!important;cursor:pointer;transition:background .2s,color .2s,transform .2s}
.hs-form-frame :is(button[type=submit],input[type=submit]):hover{background:var(--ink)!important;color:var(--coral)!important;transform:translateY(-2px)}

/* footer wordmark: the i's dot fills coral (not white) as the scroll fill passes it */
.motion .footer-wordmark{background:linear-gradient(90deg,var(--coral) var(--dfill,0%),transparent var(--dfill,0%)) var(--dx,-999px) 0/var(--dw,0px) .2em no-repeat,linear-gradient(90deg,rgba(254,245,243,.92) var(--fill,0%),transparent var(--fill,0%));-webkit-background-clip:text;background-clip:text}
html[data-theme="light"].motion .footer-wordmark{background:linear-gradient(90deg,var(--coral) var(--dfill,0%),transparent var(--dfill,0%)) var(--dx,-999px) 0/var(--dw,0px) .2em no-repeat,linear-gradient(90deg,rgba(38,34,33,.9) var(--fill,0%),transparent var(--fill,0%));-webkit-background-clip:text;background-clip:text}
html[data-theme="light"] .results .cta-sub{color:rgba(38,34,33,.6)!important}
html[data-theme="light"] .results .cta:hover{background:var(--ink)!important;color:var(--coral)!important}
/* light mode: any inline white text (written for the dark panels) turns ink */
html[data-theme="light"] [style*="color:#fff"]:not(:is(.engine-shell,.ascent-shell,.btn) *):not(.btn){color:var(--ink)!important}
html[data-theme="light"] [style*="color:rgba(255,255,255"]:not(:is(.engine-shell,.ascent-shell) *){color:rgba(38,34,33,.62)!important}
html[data-theme="light"] .db-stat span[style*="color:#fff"]{color:var(--ink)!important}

/* ===== LIGHT MODE: remaining dark panels (credit box, small pills). The rocket and engine animations stay dark in both modes. ===== */
html[data-theme="light"] .credit-box{background:linear-gradient(160deg,#FDEDEA 0%,#F9DFDA 100%)!important;border:1px solid rgba(234,136,142,.3)}
html[data-theme="light"] .blog-cat{background:var(--coral);color:var(--ink)}
html[data-theme="light"] .tab.active{background:var(--coral)!important;color:var(--ink)!important}
/* stat labels in the strip: plain readable text, not squashed */
.db-stat span[style*="font-size:16px"]{font-family:var(--body);letter-spacing:0!important;margin-left:4px}
html[data-theme="light"] .db-stat span[style*="font-size:16px"]{color:rgba(38,34,33,.7)!important}
html[data-theme="light"] .credit-box{box-shadow:0 30px 60px -40px rgba(234,136,142,.55)}

/* light mode: the two interactive panels sit on a richer brand pink, with a frosted white info strip */

/* =====================================================================
   POLISH PASS
   ===================================================================== */
/* nicer line breaks: no orphaned last words in headings or short copy */
h1,h2,h3,.section-title,.home-title,.cta-band h2{text-wrap:balance}
p,li,.section-sub,.feature-desc{text-wrap:pretty}

/* price card names: keep the coral full stop on the word */
.pp-name i{margin-left:-12px}

/* "not a fit" lists: links sit inline after the text */
.fit-card ul li{display:block;position:relative;padding-left:30px}
.fit-yes li::before,.fit-no li::before{position:absolute;left:0;top:12px;margin:0}
.fit-no li a{white-space:nowrap}

/* numbered step cards: title clearly above the body */
.card:has(>.step-num) h4,.step-row h4{font-size:19px;line-height:1.25;letter-spacing:-.02em;margin-bottom:6px;color:var(--text)}
.card:has(>.step-num) h4>span:not([style]),.step-row h4>span:not([style]):not(.pill){display:block;margin-top:3px;font-family:var(--body);font-weight:400;font-size:13.5px;color:var(--muted);letter-spacing:0}
.card:has(>.step-num) p,.step-row p{font-size:14.5px;color:var(--muted);font-weight:300;line-height:1.7}
.card:has(>.step-num)>div:last-child{min-width:0}
/* an odd last card in a two-column grid spans the row */
[style*="grid-template-columns:1fr 1fr"]>.card:last-child:nth-child(odd){grid-column:1/-1}

/* cards in a row: equal heights, footers line up */
.grid-3>.card:not([style*="display:flex"]),.grid-4>.card:not([style*="display:flex"]){display:flex;flex-direction:column}
.grid-3>.card>p:first-child:not(:last-child){flex:1}
.grid-3>.card>div:last-child[style*="border-top"]{margin-top:auto}
.grid-3>.card>a.btn:last-child{margin-top:auto}

/* the wide Impellam-style card fills its row */
.grid-3>[style*="grid-column:span 2"]{grid-column:1/-1!important}

/* long words (emails) never push a card off screen */
.layout-2col-wide>*,.layout-blog>*{min-width:0}
a[href^="mailto:"]{overflow-wrap:anywhere}

/* stat labels and engine counters never break at a hyphen */
.engine-stats label,.telemetry-grid label,.telemetry-grid small{hyphens:none}

/* download pages */
.form-preview .preview-icon{color:var(--ink)!important}
.form-preview .preview-icon svg{width:24px;height:24px}
.dl-whats-inside li::before{width:26px;font-variant-numeric:tabular-nums}
.dl-whats-inside{border-top-color:var(--border)}
.more-downloads{margin-top:36px}
.mini-dl-card{display:flex;flex-direction:column;gap:6px}
.mini-dl-card .mdl-icon{width:40px;height:40px;border-radius:12px;background:var(--accent-dim);color:var(--accent-dark);display:flex;align-items:center;justify-content:center;margin-bottom:8px}
.mini-dl-card .mdl-icon svg{width:20px;height:20px}
.mini-dl-card p{flex:1}
.mini-dl-card .mdl-go{margin-top:10px;font-size:13px;font-weight:600;color:var(--accent-dark)}

/* legal pages */
.legal-body ul{list-style:none;margin-left:0!important;padding:0}
.legal-body ul li{position:relative;padding-left:20px}
.legal-body ul li::before{content:'';position:absolute;left:2px;top:.75em;width:6px;height:6px;border-radius:50%;background:var(--coral)}

/* light mode: soft line between the last section and the footer */
html[data-theme="light"] .footer{border-top:1px solid rgba(234,136,142,.2)}

/* launchpad stat strip separators */
.db-sep{display:inline}

/* ---- tablet ---- */
@media(min-width:721px) and (max-width:1024px){
  .grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid-3>.card:last-child:nth-child(odd){grid-column:1/-1}
  .ptile-grid--3{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ptile-grid--3>.ptile:last-child:nth-child(odd){grid-column:1/-1}
}
@media(min-width:721px) and (max-width:960px){
  .ladder{grid-template-columns:repeat(6,minmax(0,1fr))}
  .ladder-item,.ladder-item:last-child{grid-column:span 2}
  .ladder-item:nth-last-child(-n+2){grid-column:span 3}
}
@media(min-width:721px) and (max-width:1100px){
  .launch-seq{grid-template-columns:repeat(6,minmax(0,1fr))}
  .launch-seq li{grid-column:span 2}
  .launch-seq li:nth-last-child(-n+2){grid-column:span 3}
  .telemetry-grid{grid-template-columns:repeat(6,minmax(0,1fr))}
  .telemetry-grid>div{grid-column:span 2}
  .telemetry-grid>div:nth-last-child(-n+2){grid-column:span 3}
  .telemetry-grid>div:nth-child(5){border-left:1px solid var(--border);padding-left:clamp(16px,2.4vw,28px)}
}

/* ---- mobile ---- */
@media(max-width:720px){
  .grid-3>[style*="grid-column:span 2"]{grid-column:auto!important}
  .dark-band{flex-direction:column;align-items:flex-start;gap:12px}
  .dark-band .db-copy{min-width:0}
  .proj-head{padding:24px 20px 0}
  .proj-body{padding:18px 20px 24px}
  .proj-quote{padding:16px 16px 16px 40px}
  .proj-quote::before{left:12px}
  .db-sep{display:block;height:6px;overflow:hidden;color:transparent}
  .db-stat:has(.db-sep){text-align:center;width:100%}
  .compare-row .bar{height:auto;min-height:46px;padding:10px 18px;line-height:1.3;flex-basis:100%}
  .compare-row{margin-bottom:16px}
  .blog-meta{gap:6px 16px}
  .blog-content .callout{padding:52px 22px 22px}
  .blog-content .callout::before{left:20px;top:8px;font-size:52px}
  .blog-content .callout p{font-size:16.5px}
  .blog-hero h1{font-size:clamp(30px,8vw,40px)}
  .cta-band .btn-ghost{background:var(--blush);border-color:var(--blush)}
  .cta-band::after{opacity:.35}
  .footer-col h4{white-space:nowrap;letter-spacing:.06em;font-size:11px}
  .legal-body table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
  .legal-body table td,.legal-body table th{min-width:110px}
  .layout-2col-wide .card[style*="padding:36px"]{padding:26px 20px!important}
}
.cta-band .btn-ghost{background:rgba(254,245,243,.55)}
.blog-hero h1{max-width:820px}
.mini-dl-card .mdl-icon,.mini-dl-card .mdl-go{font-family:var(--body);text-transform:none;letter-spacing:0;font-size:13px}
.mini-dl-card .mdl-icon{margin-bottom:8px}
.engine-stats label{display:block;line-height:1.5;margin-top:4px}
@media(max-width:720px){.card.proj-card{padding:0}.proj-meta{text-align:left}}
@media(max-width:720px){.grid-3>[style*="grid-column:span 2"]{gap:22px!important}.card a[href^="mailto:"]{font-size:14.5px!important}}
/* desktop: three-up rows with an incomplete last row are centred, not left with a hole */
@media(min-width:1025px){
  .grid-3{display:flex;flex-wrap:wrap;justify-content:center}
  .grid-3>*{flex:0 0 calc((100% - 40px)/3);min-width:0}
  .grid-3>[style*="grid-column:span 2"],.grid-3>[style*="grid-column:1/-1"]{flex-basis:100%}
}
/* homepage engine intro: reads as a short explainer, not a faint subline */
.section-sub.engine-intro{max-width:600px;font-size:clamp(17px,calc(1.6 * var(--vw)),20px);font-weight:400;color:var(--text);opacity:.85;line-height:1.6;letter-spacing:-.005em;margin-top:20px}
.section-sub.engine-intro strong{font-weight:600;color:var(--accent);opacity:1}
.section-header:has(.engine-intro){text-align:left}
.engine-intro a.engine-link,.engine-intro a.engine-link:hover{text-decoration:none;color:inherit;border:0}
.cta-band h2.cta-grow{line-height:1.01}
.w-punct{color:var(--text)}

/* step numbers: white display numerals on coral, softer and cleaner */
.step-num{width:40px;height:40px;border-radius:13px;background:var(--coral);color:#fff;font-family:var(--display);font-weight:700;font-size:17px;letter-spacing:-.02em;box-shadow:0 8px 18px -10px rgba(234,136,142,.9),inset 0 1px 0 rgba(255,255,255,.25)}
.page-hero .hero-strap + .ctas,.page-hero h1 + .ctas{margin-top:38px}
/* two-line headings: a touch more room so ascenders and dots never touch the line above */
.section-title{line-height:1.03}
.cta-band h2{line-height:1.01}

/* testimonials: editorial quote cards */
.testi{position:relative;margin:0;display:flex;flex-direction:column;background:#fff;border:1px solid var(--border);border-radius:var(--r-lg);padding:30px 30px 26px;transition:transform .25s,box-shadow .25s}
.testi:hover{transform:translateY(-4px);box-shadow:var(--shadow)}
.testi::before{content:'\201C';font-family:var(--display);font-weight:700;font-size:64px;line-height:.7;color:var(--coral);display:block;height:30px;margin-bottom:10px}
.testi blockquote{flex:1;margin:0 0 26px;font-family:var(--display);font-weight:700;font-size:clamp(17px,calc(1.5 * var(--vw)),20px);line-height:1.35;letter-spacing:-.02em;color:var(--text)}
.testi figcaption{display:flex;flex-direction:column;gap:3px;padding-top:16px;border-top:1px solid var(--border)}
.testi figcaption strong{font-size:14px;font-weight:600;color:var(--text)}
.testi figcaption span{font-size:12.5px;color:var(--muted)}
@media(min-width:1025px){.grid-3>.testi{flex:0 0 calc((100% - 40px)/3)}}

/* =====================================================================
   EDITORIAL CARDS: case studies, blog and download cards follow the
   testimonial style (heading font titles, quiet labels, coral as accent)
   ===================================================================== */
.card span[style*="text-transform:uppercase"][style*="color:var(--accent)"]{display:inline-flex!important;align-items:center;gap:8px;color:var(--muted)!important;font-size:11px!important;letter-spacing:.12em!important;font-weight:600!important}
.card span[style*="text-transform:uppercase"][style*="color:var(--accent)"]::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--coral);flex-shrink:0}
.card span[style*="text-transform:uppercase"][style*="color:var(--accent)"]+h3{font-family:var(--display)!important;font-weight:700!important;font-size:clamp(19px,calc(1.7 * var(--vw)),22px)!important;letter-spacing:-.02em!important;line-height:1.2!important;color:var(--text)}
.card span[style*="text-transform:uppercase"][style*="color:var(--accent)"]+h3+p{font-size:14px!important;line-height:1.7!important}
/* result stats */
.card [style*="font-weight:800;color:var(--accent)"]{font-family:var(--display)!important;font-weight:700!important;font-size:clamp(24px,calc(2.2 * var(--vw)),30px)!important;letter-spacing:-.03em;color:var(--text)!important;line-height:1.1}
.card [style*="font-weight:800;color:var(--accent)"]+div{font-size:12px!important;color:var(--muted)!important;margin-top:4px!important;line-height:1.45}
.card [style*="border-top:2px solid var(--accent)"]{border-top:1px solid var(--border)!important}
/* links at the foot of blog cards */
.card>a[href^="/blog-"]:last-child{margin-top:auto;padding-top:14px;border-top:1px solid var(--border);display:block}
/* team cards, role rows and pill tags: same quiet, editorial treatment */
.team-avatar{color:#fff;box-shadow:0 10px 22px -12px rgba(234,136,142,.9),inset 0 1px 0 rgba(255,255,255,.25)}
.team-role{color:var(--muted);display:inline-flex;align-items:center;gap:8px}
.team-role::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--coral)}
.card>div>h3[style*="font-size:17px"]{font-family:var(--display);font-size:20px!important;letter-spacing:-.02em!important}
.feature-title{font-family:var(--display)}
/* process / step cards: editorial like the testimonials. Coral numeral on top,
   heading-font title, quiet body, no filled number box */
.card:has(>.step-num),.step-row{flex-direction:column!important;align-items:flex-start!important;gap:14px!important}
.step-num{width:auto;height:auto;background:none!important;box-shadow:none!important;border-radius:0;color:var(--coral);font-family:var(--display);font-weight:700;font-size:15px;letter-spacing:.02em;display:flex;align-items:center;gap:10px;justify-content:flex-start}
.step-num::after{content:'';width:28px;height:1px;background:var(--coral);opacity:.6}
.card:has(>.step-num) h4,.step-row h4{font-family:var(--display);font-size:21px;font-weight:700;letter-spacing:-.025em}
.card:has(>.step-num)>div:last-child,.step-row>div:last-child{width:100%}
.step-num+div>h4[style]{font-family:var(--display)!important;font-size:21px!important;letter-spacing:-.025em!important;margin-bottom:6px!important;line-height:1.25}
.step-num+div>h4[style]>span[style*="color:var(--muted)"]{font-family:var(--display);font-weight:700!important}
.step-num+div>h4+span[style]{font-size:14.5px!important;line-height:1.7;display:block}
/* pills: white text on coral, and sat level with the title they label */
.pill{color:#fff}
h4 .pill,h3 .pill{position:relative;top:-.18em;vertical-align:middle!important;font-family:var(--body);font-size:9.5px;letter-spacing:.12em;padding:3px 9px}
/* product tiles: stronger price line, calmer description */
.ptile-desc{font-size:15px;font-weight:400;line-height:1.65}
.ptile-price{font-family:var(--display);font-weight:700;font-size:18px;letter-spacing:-.02em}
.ptile-go{color:#fff}.popular-tag{color:#fff}
.pill.pill-soft{color:var(--text)}

/* tags as pills (replaces dash line) */
.tag{padding:7px 14px 7px 12px;border-radius:999px;border:1px solid rgba(234,136,142,.38);background:rgba(234,136,142,.10);gap:8px;letter-spacing:.1em;font-size:11.5px;width:fit-content}
.tag::before,.motion .tag::before{width:6px;height:6px;border-radius:50%;transform:none!important;transition:none}
html[data-theme="light"] .tag{background:rgba(234,136,142,.12);border-color:rgba(234,136,142,.45)}
#hubspot-messages-iframe-container{display:none!important}

/* result stats as soft tiles (no divider lines) */
.card [style*="border-top:2px solid var(--accent)"]{border-top:0!important;padding:14px 18px!important;border-radius:14px;background:rgba(234,136,142,.10);flex:1 1 0;min-width:130px}
.card div[style*="padding-top:16px;border-top:1px solid var(--border)"]{border-top:0!important;padding-top:4px!important;gap:10px!important;flex-wrap:wrap}
.card div[style*="padding-top:16px;border-top:1px solid var(--border)"]>div{padding:12px 16px;border-radius:14px;background:rgba(234,136,142,.10);flex:1 1 0;min-width:110px}
.card div[style*="display:flex;gap:32px;flex-wrap:wrap"]{gap:10px!important}
.site-facts{border:0;gap:10px}
.site-facts li,.site-facts li+li{padding:14px 16px;border:0;border-radius:14px;background:rgba(234,136,142,.10)}

/* remove small in-card divider lines */
.ptile-foot,.testi figcaption,.card>a[href^="/blog-"]:last-child{border-top:0!important}
.ptile-foot{padding-top:10px}
.pp-sub{border-bottom:0}
.blog-content>div[style*="border-top:1px solid var(--border)"]{border-top:0!important;padding-top:0!important}
.telemetry-grid,.telemetry-grid>div{border-top:0!important;border-bottom:0!important;border-left:0!important}

/* light pink rules instead of grey (cards, lists) */
:root{--rule-pink:rgba(234,136,142,.28)}
.ptile-foot,.testi figcaption,.card>a[href^="/blog-"]:last-child{border-top:1px solid var(--rule-pink)!important}
.ptile-foot{padding-top:18px}
.pp-sub{border-bottom:1px solid var(--rule-pink)}
.blog-content>div[style*="border-top:1px solid var(--border)"]{border-top:1px solid var(--rule-pink)!important;padding-top:32px!important}
.ptile-list li,ul.includes-list li,.fit-card ul li,.price-card ul li,.related-post,.dl-whats-inside li{border-bottom-color:var(--rule-pink)}

/* homepage stats: soft glass tiles */
.telemetry-grid{gap:14px}
.telemetry-grid>div,.telemetry-grid>div:first-child{position:relative;padding:26px 24px 24px!important;border-radius:22px;background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.02));border:1px solid rgba(255,255,255,.09)!important;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.telemetry-grid>div::after{content:'';position:absolute;top:12px;right:12px;width:6px;height:6px;border-radius:50%;background:var(--coral);opacity:.75}
.telemetry-grid>div,.telemetry-grid>div:first-child{background:linear-gradient(160deg,rgba(255,255,255,.85),rgba(253,237,234,.55));border:1px solid rgba(234,136,142,.22)!important;box-shadow:0 18px 40px -28px rgba(234,136,142,.55),inset 0 1px 0 #fff}
@media(max-width:900px){
  .telemetry-grid{grid-template-columns:repeat(6,minmax(0,1fr))!important;gap:10px}
  .telemetry-grid>div{grid-column:span 2!important;text-align:left!important}
  .telemetry-grid>div:nth-last-child(-n+2){grid-column:span 3!important}
  .telemetry-grid>div,.telemetry-grid>div:first-child{padding:18px 16px 16px!important;border-radius:18px}
}
@media(max-width:600px){
  .telemetry-grid{gap:8px}
  .telemetry-grid>div,.telemetry-grid>div:first-child{padding:14px 12px 12px!important;border-radius:16px}
  .telemetry .t-num{font-size:26px}
  .telemetry .t-label{font-size:9.5px;letter-spacing:.06em;margin-top:8px;line-height:1.35}
  .telemetry-grid>div::after{top:9px;right:9px;width:5px;height:5px}
}
.telemetry .telemetry-grid>div:nth-child(n){padding-left:24px!important}
@media(max-width:900px){.telemetry .telemetry-grid>div:nth-child(n){padding-left:16px!important}}
@media(max-width:600px){.telemetry .telemetry-grid>div:nth-child(n){padding-left:12px!important}}
@media(max-width:900px){.launch-seq{row-gap:26px}}
/* footer link columns: even spacing between the three columns on tablet and mobile */
@media(max-width:900px){
  .footer-grid{grid-template-columns:auto auto auto!important;justify-content:space-between;column-gap:20px}
  .footer-brand{grid-column:1/-1}
  .footer-col h4{white-space:nowrap;min-height:0}
}
@media(min-width:961px) and (max-width:1100px){.home-hero .launch-seq li{grid-column:auto}}
.section-sub.engine-intro{font-size:clamp(16px,calc(1.35 * var(--vw)),18px)}
/* hero content no longer fades as you scroll (products stayed washed out on mobile) */
.page-hero .container,.home-hero .container{opacity:1}
@media(max-width:900px){.page-hero .container,.home-hero .container{transform:none}}
