/* topriv.com — Crisp Modern Light (v2)
   Editorial, high-contrast, whitespace-forward. Linear/Stripe-adjacent.
   Same class names as v1 so markup is unchanged; visual system is new. */

*,*::before,*::after{margin:0;padding:0;box-sizing:border-box}

:root{
  /* Neutrals — pure white + cool grays (no warm beige) */
  --bg:#ffffff;
  --bg-alt:#fafafb;
  --bg-card:#ffffff;
  --bg-inset:#f6f6f8;
  --border:#ececee;
  --border-strong:#e0e0e4;
  --text:#0a0a0b;
  --text-secondary:#51525c;
  --text-tertiary:#8a8b94;

  /* Brand */
  --accent:#e8453c;
  --accent-dark:#cc3a32;
  --accent-light:#fef2f1;
  --ink:#0a0a0b;
  --ink-hover:#26262b;

  --green:#12a150;
  --green-light:#e9f8ef;

  /* Distinctive display face for headings; Inter stays for body/UI */
  --font-head:'Geist','Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;

  --radius:16px;
  --radius-sm:10px;
  --radius-btn:10px;

  /* Restrained, cool-toned depth */
  --shadow-sm:0 1px 2px rgba(10,10,15,.04);
  --shadow:0 4px 16px -6px rgba(10,10,15,.10), 0 2px 6px -4px rgba(10,10,15,.06);
  --shadow-lg:0 24px 60px -22px rgba(10,10,15,.22), 0 8px 24px -16px rgba(10,10,15,.12);
  --ring:0 0 0 4px rgba(232,69,60,.14);

  --max-w:1200px;
}

html{scroll-behavior:smooth}

body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:var(--bg);
  color:var(--text);
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}

a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

/* Headings & display numerals use Geist for a bespoke, non-generic feel */
h1,h2,h3,h4,
.logo,.hero h1,.section-title,.two-col-text h2,.cta-inner h2,.ss-n,
.product-name,.feature-title,.uc-body h3,.blog-card h3,.page-header h1,
.content h2,.bento-item h3,.bento-wide h3,.share-title,.nm-text strong{
  font-family:var(--font-head);
  letter-spacing:-.03em;
  font-feature-settings:"ss01","cv01","cv11";
}
.feature-title,.uc-body h3,.blog-card h3,.bento-item h3,.share-title,.nm-text strong{letter-spacing:-.02em}
svg:not([fill]){fill:none;stroke-linecap:round;stroke-linejoin:round}
::selection{background:rgba(232,69,60,.16)}

/* --- HEADER --- */
.site-header{
  position:sticky;top:0;z-index:100;
  background:rgba(255,255,255,.72);
  backdrop-filter:saturate(180%) blur(16px);
  -webkit-backdrop-filter:saturate(180%) blur(16px);
  border-bottom:1px solid transparent;
  transition:border-color .2s;
}
.site-header{border-bottom:1px solid rgba(236,236,238,.9)}
.header-inner{
  max-width:var(--max-w);margin:0 auto;padding:0 28px;height:66px;
  display:flex;align-items:center;justify-content:space-between;
}
.logo{font-size:21px;font-weight:800;letter-spacing:-.03em;color:var(--text)}
.logo span{color:var(--accent)}
.site-header .logo{display:inline-flex;align-items:center}
.nav-links{display:flex;align-items:center;gap:30px;list-style:none}
.nav-links a{font-size:14px;font-weight:500;color:var(--text-secondary);transition:color .18s}
.nav-links a:hover{color:var(--text)}
.nav-links a.active{color:var(--text)}
.nav-cta{
  display:inline-flex;align-items:center;gap:6px;padding:9px 16px;
  background:var(--ink);color:#fff !important;border-radius:var(--radius-btn);
  font-size:13.5px;font-weight:600;letter-spacing:-.01em;
  transition:background .18s,transform .18s,box-shadow .18s;
}
.nav-cta:hover{background:var(--ink-hover);transform:translateY(-1px);box-shadow:var(--shadow)}

/* --- NAV DROPDOWN --- */
.nav-dropdown{position:relative}
.nav-trigger{display:inline-flex;align-items:center;gap:5px;cursor:pointer}
.nav-caret{width:13px;height:13px;opacity:.5;transition:transform .18s ease}
.nav-dropdown:hover .nav-trigger{color:var(--text)}
.nav-dropdown:hover .nav-caret{transform:rotate(180deg);opacity:.8}
.nav-menu{
  position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(10px);
  padding-top:14px;opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .18s ease,transform .18s ease;z-index:200;
}
.nav-dropdown:hover .nav-menu,.nav-dropdown:focus-within .nav-menu{
  opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0);
}
.nav-menu-inner{
  width:340px;background:var(--bg-card);border:1px solid var(--border);
  border-radius:16px;box-shadow:var(--shadow-lg);padding:10px;
}
.nav-menu-item{display:flex;gap:13px;padding:11px 12px;border-radius:11px;transition:background .14s ease}
.nav-menu-item:hover{background:var(--bg-inset)}
.nm-ic{flex-shrink:0;margin-top:1px}
.nm-ic svg{width:22px;height:22px}
.nm-text{display:flex;flex-direction:column;gap:2px}
.nm-text strong{font-size:14px;font-weight:700;color:var(--text);letter-spacing:-.02em}
.nm-text span{font-size:12.5px;color:var(--text-secondary);line-height:1.45;font-weight:400}
.nav-menu-all{
  display:flex;align-items:center;gap:6px;padding:11px 12px 7px;margin-top:6px;
  border-top:1px solid var(--border);font-size:13px;font-weight:600;color:var(--accent) !important;
}
.nav-menu-all:hover{color:var(--accent-dark) !important}
.mobile-menu-btn{display:none;background:none;border:none;cursor:pointer;padding:8px}
.mobile-menu-btn span{display:block;width:24px;height:2px;background:var(--text);margin:5px 0;transition:.3s}

/* --- HERO (dark premium, split layout, 3D visual) --- */
.hero{
  position:relative;overflow:hidden;margin:0;max-width:none;text-align:left;
  background:
    radial-gradient(78% 108% at 80% 20%, rgba(232,69,60,.26) 0%, rgba(232,69,60,0) 50%),
    radial-gradient(70% 100% at 6% 104%, rgba(150,32,56,.20) 0%, transparent 52%),
    linear-gradient(162deg, #17131a 0%, #100d13 52%, #0b090d 100%);
}
.hero::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.05) 1px,transparent 0);
  background-size:32px 32px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 72%);
  mask-image:linear-gradient(180deg,#000,transparent 72%);
  opacity:.6;
}
.hero-inner{
  position:relative;z-index:1;max-width:var(--max-w);margin:0 auto;
  padding:82px 28px 92px;display:grid;grid-template-columns:1.04fr .96fr;
  gap:44px;align-items:center;min-height:560px;
}
.hero-copy{color:#fff}
.hero-eyebrow{
  display:inline-flex;align-items:center;gap:9px;
  font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.2em;
  color:#ff7a70;margin-bottom:22px;
}
.hero-eyebrow::before{content:"";width:6px;height:6px;border-radius:50%;
  background:var(--accent);box-shadow:0 0 0 4px rgba(232,69,60,.18)}
.hero h1{
  font-family:var(--font-head);
  font-size:clamp(44px,6vw,76px);font-weight:800;line-height:1.02;
  letter-spacing:-.038em;color:#f7f6f8;margin-bottom:24px;
}
.hero h1 .hl{
  background:linear-gradient(92deg,#ff6a5d,#ff8a6a);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero .hero-lead{
  font-size:18px;color:rgba(236,232,240,.74);max-width:500px;margin:0 0 34px;line-height:1.62;
}
.hero-actions{display:flex;gap:14px;flex-wrap:wrap}
.hero .btn-primary{
  background:#f7f6f8;color:#141217;border:none;
  box-shadow:0 14px 34px -14px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.6);
}
.hero .btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px -16px rgba(0,0,0,.75)}
.hero .btn-secondary{
  background:rgba(255,255,255,.06);color:#fff;border:1px solid rgba(255,255,255,.16);
  backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);box-shadow:none;
}
.hero .btn-secondary:hover{background:rgba(255,255,255,.11);border-color:rgba(255,255,255,.28);transform:translateY(-2px)}

/* Hero "burning file" animation — a file is encrypted, then disintegrates into embers */
.hero-visual{position:relative;display:flex;align-items:center;justify-content:center}
.burn-stage{position:relative;width:min(100%,400px);height:360px;display:flex;align-items:center;justify-content:center}
.burn-glow{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);z-index:0;pointer-events:none;
  width:260px;height:260px;border-radius:50%;filter:blur(10px);opacity:0;transition:opacity .5s ease;
  background:radial-gradient(circle,rgba(255,150,70,.42) 0%,rgba(232,69,60,.22) 40%,rgba(232,69,60,0) 72%)}
.burn-stage.igniting .burn-glow{opacity:1}
.burn-doc{position:relative;z-index:1;width:290px;padding:22px;border-radius:16px;background:#fff;
  box-shadow:0 44px 88px -34px rgba(0,0,0,.72),0 14px 34px -20px rgba(0,0,0,.5);
  transition:opacity 1s ease-in,transform 1.15s ease-in,filter 1s ease-in}
.burn-doc.burning{opacity:0;transform:translateY(-24px) scale(.965);filter:blur(3px) brightness(1.22) saturate(1.25)}
.burn-doc.reform{opacity:0;transform:translateY(10px) scale(.99);filter:none;transition:none}
.bd-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}
.bd-ico{width:42px;height:42px;flex-shrink:0;border-radius:11px;background:var(--accent-light);color:var(--accent);
  display:inline-flex;align-items:center;justify-content:center}
.bd-ico svg{width:21px;height:21px}
.bd-meta b{display:block;font-size:14.5px;color:var(--text);font-weight:700;line-height:1.2}
.bd-meta span{font-size:12px;color:var(--text-tertiary)}
.bd-lock{margin-left:auto;width:32px;height:32px;flex-shrink:0;border-radius:9px;background:#eafaf0;color:#12a150;
  display:inline-flex;align-items:center;justify-content:center;transition:opacity .3s,transform .3s}
.bd-lock svg{width:16px;height:16px}
.bd-lines{display:flex;flex-direction:column;gap:10px}
.bd-lines i{height:9px;border-radius:5px;background:var(--bg-inset)}
.bd-lines i:nth-child(1){width:100%}
.bd-lines i:nth-child(2){width:86%}
.bd-lines i:nth-child(3){width:94%}
.bd-lines i:nth-child(4){width:58%}
.ember{position:absolute;z-index:2;border-radius:50%;pointer-events:none;opacity:0;will-change:transform,opacity;
  background:radial-gradient(circle,#ffe6b0 0%,#ff9a3c 42%,#e8453c 78%,rgba(232,69,60,0) 100%);
  box-shadow:0 0 10px 2px rgba(255,120,60,.5);
  animation-name:emberRise;animation-timing-function:ease-out;animation-fill-mode:forwards}
@keyframes emberRise{
  0%{opacity:0;transform:translate(0,0) scale(.5)}
  14%{opacity:1}
  100%{opacity:0;transform:translate(var(--dx),var(--dy)) scale(.15)}
}
.burn-status{position:absolute;bottom:2%;left:50%;transform:translateX(-50%);z-index:3;
  display:inline-flex;align-items:center;gap:9px;padding:9px 16px;border-radius:100px;white-space:nowrap;
  background:rgba(24,21,28,.82);border:1px solid rgba(255,255,255,.14);color:#f2eff4;font-size:13px;font-weight:600;
  backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 14px 32px -14px rgba(0,0,0,.65)}
.burn-status .dot{width:8px;height:8px;border-radius:50%;background:#c4b73a;transition:background .3s,box-shadow .3s}
.burn-status.ok .dot{background:#38d17e;box-shadow:0 0 0 3px rgba(56,209,126,.2)}
.burn-status.burn .dot{background:#ff6a3c;box-shadow:0 0 0 3px rgba(255,106,60,.22)}
@media (prefers-reduced-motion:reduce){.burn-doc{transition:none}}
.hero-chip{
  position:absolute;display:inline-flex;align-items:center;gap:8px;z-index:2;
  padding:9px 15px;border-radius:100px;
  background:rgba(24,21,28,.78);border:1px solid rgba(255,255,255,.14);
  box-shadow:0 18px 38px -14px rgba(0,0,0,.7);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);
  font-size:13px;font-weight:600;color:#f2eff4;white-space:nowrap;
}
.hero-chip .dot{width:8px;height:8px;border-radius:50%;background:#38d17e;box-shadow:0 0 0 3px rgba(56,209,126,.2)}
.hero-chip svg{width:15px;height:15px;color:#38d17e}
.chip-1{top:7%;left:-1%;animation:heroFloat 5s ease-in-out infinite}
.chip-2{top:16%;right:-1%;animation:heroFloat 6.4s ease-in-out .6s infinite}
@keyframes heroFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-12px)}}
@media (prefers-reduced-motion:reduce){.hero-chip{animation:none}}

/* --- BUTTONS --- */
.btn{
  display:inline-flex;align-items:center;gap:8px;padding:13px 22px;border-radius:var(--radius-btn);
  font-size:15px;font-weight:600;letter-spacing:-.01em;transition:all .18s ease;
  border:1px solid transparent;cursor:pointer;line-height:1;
}
.btn-primary{background:var(--ink);color:#fff;box-shadow:0 1px 2px rgba(10,10,15,.20),inset 0 1px 0 rgba(255,255,255,.09)}
.btn-primary:hover{background:var(--ink-hover);transform:translateY(-1px);box-shadow:0 10px 22px -10px rgba(10,10,15,.45),inset 0 1px 0 rgba(255,255,255,.12)}
.btn-secondary{background:var(--bg-card);color:var(--text);border:1px solid var(--border-strong);box-shadow:var(--shadow-sm)}
.btn-secondary:hover{border-color:var(--text-tertiary);transform:translateY(-1px)}
.btn-accent{background:var(--accent);color:#fff}
.btn-accent:hover{background:var(--accent-dark);transform:translateY(-1px);box-shadow:var(--shadow)}
.btn:focus-visible{outline:none;box-shadow:var(--ring)}

/* --- SECTIONS --- */
.section{max-width:var(--max-w);margin:0 auto;padding:100px 28px}
.section-label{
  display:flex;align-items:center;gap:8px;
  font-size:12.5px;text-transform:uppercase;letter-spacing:.15em;font-weight:700;
  color:var(--accent);margin-bottom:16px;
}
.section-center .section-label{justify-content:center}
.section-title{font-size:clamp(29px,3.7vw,44px);font-weight:800;letter-spacing:-.03em;line-height:1.1;margin-bottom:16px}
.section-subtitle{font-size:18px;color:var(--text-secondary);max-width:620px;line-height:1.6}
.section-center{text-align:center}
.section-center .section-subtitle{margin:0 auto}
.section-alt{background:var(--bg-alt);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}
.section-alt .section-inner{max-width:var(--max-w);margin:0 auto;padding:100px 28px}

/* --- CARDS --- */
.card{
  background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);
  padding:30px;transition:border-color .2s,box-shadow .2s,transform .2s;
}
.card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-3px)}
.card-static,.card-static:hover{box-shadow:none;border-color:var(--border);transform:none}

/* --- PRODUCT CARD --- */
.product-card{display:block;padding:38px}
.product-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.product-name{font-size:23px;font-weight:800;letter-spacing:-.02em}
.product-name span{color:var(--accent)}
.badge-live{padding:4px 13px;border-radius:100px;background:var(--green-light);color:var(--green);font-size:12px;font-weight:700;letter-spacing:.03em}
.badge-soon{padding:4px 13px;border-radius:100px;background:var(--bg-inset);border:1px solid var(--border);color:var(--text-tertiary);font-size:12px;font-weight:600}
.product-desc{color:var(--text-secondary);font-size:15px;line-height:1.7;margin-bottom:22px}
.product-stats{display:flex;gap:28px;flex-wrap:wrap}
.stat{font-size:14px;color:var(--text-secondary)}
.stat strong{color:var(--text);font-weight:700}

/* --- GRID --- */
.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}

/* --- SVG ICON --- */
.icon-box{
  width:44px;height:44px;border-radius:11px;background:var(--accent-light);color:var(--accent);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;flex-shrink:0;
}
.icon-box svg{width:22px;height:22px}
.feature-title{font-size:16px;font-weight:700;letter-spacing:-.01em;margin-bottom:8px}
.feature-desc{font-size:14px;color:var(--text-secondary);line-height:1.6}

/* --- FEATURE STRIP --- */
.feature-strip{max-width:var(--max-w);margin:0 auto;padding:8px 20px 72px}
.feature-strip-inner{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}
.fcat{
  position:relative;display:block;text-align:left;padding:24px 20px;border-radius:16px;
  border:1px solid var(--border);background:var(--bg-card);
  transition:border-color .18s,transform .18s,box-shadow .18s;
}
.fcat:hover{border-color:var(--border-strong);transform:translateY(-4px);box-shadow:var(--shadow)}
.fcat-ic{width:42px;height:42px;border-radius:12px;margin-bottom:16px;
  display:flex;align-items:center;justify-content:center;
  background:var(--accent-light);color:var(--accent)}
.fcat-ic svg{width:21px;height:21px}
.fcat-name{font-size:14.5px;font-weight:700;color:var(--text);margin-bottom:6px;letter-spacing:-.02em}
.fcat-desc{font-size:12.5px;color:var(--text-secondary);line-height:1.55}

/* --- PRODUCT SHOWCASE --- */
.showcase{max-width:1040px;margin:0 auto;padding:8px 24px 104px}
.showcase-stage{position:relative}
.app-window{position:relative;z-index:1;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:18px;box-shadow:0 40px 80px -44px rgba(10,10,15,.34),0 12px 30px -20px rgba(10,10,15,.16);overflow:hidden}
.aw-bar{display:flex;align-items:center;gap:7px;padding:12px 16px;border-bottom:1px solid var(--border);background:var(--bg-inset)}
.aw-dot{width:11px;height:11px;border-radius:50%;background:#d5d5da}
.aw-url{margin-left:10px;display:inline-flex;align-items:center;gap:6px;padding:5px 14px;border-radius:7px;background:var(--bg-card);border:1px solid var(--border);font-size:12.5px;color:var(--text-tertiary)}
.aw-url svg{width:12px;height:12px;color:var(--green)}
.aw-body{display:grid;grid-template-columns:215px 1fr;min-height:296px}
.aw-side{border-right:1px solid var(--border);background:var(--bg-alt);padding:16px 14px;display:flex;flex-direction:column;gap:4px}
.aw-side-label{font-size:11px;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:var(--text-tertiary);padding:4px 10px 10px}
.aw-side-item{font-size:13px;color:var(--text-secondary);padding:9px 12px;border-radius:9px}
.aw-side-item.active{background:var(--accent-light);color:var(--accent);font-weight:600}
.aw-main{padding:28px;min-width:0}
.aw-main-title{font-size:13px;font-weight:700;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.09em;margin-bottom:16px}
.conv-card{border:1px solid var(--border);border-radius:12px;padding:20px;background:var(--bg-card);box-shadow:var(--shadow-sm)}
.conv-files{display:flex;align-items:center;gap:14px;margin-bottom:18px;flex-wrap:wrap}
.file-chip{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;border:1px solid var(--border);border-radius:10px;font-size:13px;font-weight:600;color:var(--text);background:var(--bg-inset)}
.file-chip svg{width:17px;height:17px}
.file-chip.pdf svg{color:#e8453c}
.file-chip.doc svg{color:#3b82f6}
.conv-arrow{color:var(--text-tertiary);display:inline-flex}
.conv-arrow svg{width:18px;height:18px}
.conv-done{margin-left:auto;display:inline-flex;align-items:center;gap:5px;padding:5px 12px;border-radius:100px;background:var(--green-light);color:var(--green);font-size:12px;font-weight:700}
.conv-done svg{width:13px;height:13px}
.conv-bar{height:7px;border-radius:100px;background:var(--bg-inset);overflow:hidden;margin-bottom:14px}
.conv-bar i{display:block;height:100%;width:100%;border-radius:100px;background:linear-gradient(90deg,var(--accent),#f0766f)}
.conv-note{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-secondary)}
.conv-note svg{width:14px;height:14px;color:var(--green);flex-shrink:0}
.status-card{position:absolute;right:-10px;bottom:-40px;width:264px;background:var(--bg-card);border:1px solid var(--border-strong);border-radius:14px;box-shadow:var(--shadow-lg);padding:16px 18px}
.sc-head{display:flex;align-items:center;gap:8px;font-size:13px;font-weight:700;color:var(--text);margin-bottom:14px}
.sc-pulse{width:9px;height:9px;border-radius:50%;background:var(--green);box-shadow:0 0 0 4px rgba(18,161,80,.18)}
.sc-row{display:flex;align-items:center;justify-content:space-between;padding:8px 0;border-top:1px solid var(--border);font-size:13px}
.sc-row:first-of-type{border-top:none}
.sc-row span{color:var(--text-secondary)}
.sc-row b{color:var(--text);font-weight:600}
.sc-row b.ok{color:var(--green)}

/* --- STATS STRIP --- */
.stats-strip{max-width:var(--max-w);margin:0 auto;padding:8px 28px 88px}
.stats-strip-inner{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;padding:44px 28px;
  border:1px solid var(--border);border-radius:20px;background:var(--bg-card);box-shadow:var(--shadow-sm)}
.ss{position:relative;text-align:center}
.ss:not(:first-child)::before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);
  height:46px;width:1px;background:var(--border)}
.ss-n{font-size:clamp(30px,4vw,42px);font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1}
.ss-n span{color:var(--accent)}
.ss-l{font-size:13.5px;color:var(--text-secondary);margin-top:10px}

/* --- SHOWCASE EYEBROW + PrivDrop --- */
.showcase-eyebrow{display:flex;align-items:center;justify-content:center;gap:8px;text-align:center;font-size:12px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:var(--text-tertiary);margin-bottom:20px}
.showcase-eyebrow b{color:var(--accent)}
.aw-body.solo{grid-template-columns:1fr}
.share-head{display:flex;align-items:center;gap:12px;margin-bottom:4px}
.share-check{width:34px;height:34px;border-radius:50%;background:var(--green-light);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.share-check svg{width:18px;height:18px}
.share-title{font-size:16px;font-weight:700;color:var(--text);letter-spacing:-.02em}
.share-meta{font-size:12.5px;color:var(--text-secondary);margin:0 0 16px 46px}
.share-link{display:flex;align-items:center;gap:8px;border:1px solid var(--border);border-radius:11px;padding:6px 6px 6px 14px;background:var(--bg-inset);margin-bottom:14px}
.share-link code{flex:1;min-width:0;font-size:13px;color:var(--text);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.share-link code .k{opacity:.4}
.share-copy{flex-shrink:0;background:var(--ink);color:#fff;border:none;border-radius:8px;padding:8px 18px;font-size:13px;font-weight:600;font-family:inherit;cursor:pointer}
.share-note{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--text-secondary)}
.share-note svg{width:14px;height:14px;color:var(--green);flex-shrink:0}
.status-card--left{left:-10px;right:auto}

/* --- CAROUSEL --- */
.carousel{max-width:1040px;margin:0 auto;padding:8px 24px 104px}
.car-tabs{display:flex;justify-content:center;gap:10px;margin-bottom:28px}
.car-tab{display:flex;flex-direction:column;align-items:center;gap:3px;padding:10px 24px;border:1px solid var(--border);border-radius:12px;background:var(--bg-card);box-shadow:var(--shadow-sm);cursor:pointer;font-family:inherit;transition:border-color .15s,background .15s,transform .15s}
.car-tab b{font-size:14px;font-weight:700;color:var(--text);letter-spacing:-.02em}
.car-tab span{font-size:11px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600}
.car-tab:hover{border-color:var(--border-strong);transform:translateY(-1px)}
.car-tab.active{border-color:var(--ink);background:var(--ink)}
.car-tab.active b,.car-tab.active span{color:#fff}
.car-viewport{position:relative}
.car-stage{display:grid}
.car-slide{grid-area:1 / 1;opacity:0;visibility:hidden;transform:translateY(14px);transition:opacity .4s ease,transform .4s ease}
.car-slide.active{opacity:1;visibility:visible;transform:translateY(0)}
.car-arrow{position:absolute;top:152px;z-index:5;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:var(--bg-card);border:1px solid var(--border-strong);box-shadow:var(--shadow);color:var(--text);cursor:pointer;transition:border-color .15s,transform .15s}
.car-arrow:hover{border-color:var(--text-tertiary);transform:scale(1.07)}
.car-arrow svg{width:18px;height:18px}
.car-prev{left:-12px}
.car-next{right:-12px}

/* --- ANNOUNCEMENT BAR --- */
.announce{position:relative;background:var(--ink);color:#fff;display:flex;align-items:center;justify-content:center;gap:8px;padding:10px 44px;font-size:13.5px}
.announce-link{color:#fff;display:inline-flex;align-items:center;gap:9px}
.announce-tag{background:var(--accent);color:#fff;font-size:10.5px;font-weight:700;padding:2px 9px;border-radius:100px;text-transform:uppercase;letter-spacing:.05em}
.announce-arrow{transition:transform .15s ease}
.announce-link:hover .announce-arrow{transform:translateX(3px)}
.announce-close{position:absolute;right:12px;top:50%;transform:translateY(-50%);background:none;border:none;color:rgba(255,255,255,.55);font-size:20px;line-height:1;cursor:pointer;padding:4px 8px}
.announce-close:hover{color:#fff}

/* --- USE-CASE TABS --- */
.uc-tabs{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:44px 0 32px}
.uc-tab{padding:9px 18px;border:1px solid var(--border);border-radius:100px;background:var(--bg-card);font-family:inherit;font-size:14px;font-weight:600;color:var(--text-secondary);cursor:pointer;transition:all .15s}
.uc-tab:hover{border-color:var(--text-tertiary);color:var(--text)}
.uc-tab.active{background:var(--ink);border-color:var(--ink);color:#fff}
.uc-panels{display:grid;max-width:780px;margin:0 auto;text-align:left}
.uc-panel{grid-area:1 / 1;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .35s ease,transform .35s ease;pointer-events:none}
.uc-panel.active{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.uc-card{display:flex;gap:20px;padding:32px;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card);box-shadow:var(--shadow-sm)}
.uc-ic{width:48px;height:48px;border-radius:12px;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.uc-ic svg{width:24px;height:24px}
.uc-body h3{font-size:19px;font-weight:700;letter-spacing:-.02em;margin-bottom:6px}
.uc-body>p{font-size:15px;color:var(--text-secondary);line-height:1.6;margin-bottom:14px}
.uc-list{list-style:none;display:flex;flex-direction:column;gap:9px}
.uc-list li{display:flex;align-items:flex-start;gap:9px;font-size:14px;color:var(--text-secondary);line-height:1.5}
.uc-list svg{width:16px;height:16px;color:var(--green);flex-shrink:0;margin-top:2px}

/* --- TERMINAL --- */
.term{border-radius:14px;overflow:hidden;box-shadow:var(--shadow-lg);border:1px solid #1d1d20;background:#0d0d0f}
.term-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;background:#161619;border-bottom:1px solid #232327}
.term-bar .d{width:11px;height:11px;border-radius:50%;background:#3a3a40}
.term-title{margin-left:8px;font-size:12px;color:#8a8a92;font-family:ui-monospace,SFMono-Regular,Menlo,monospace}
.term-body{padding:20px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:13px;line-height:1.9;color:#e6e6ea}
.term-body .t-line{white-space:pre-wrap;word-break:break-word}
.term-body .t-ind{padding-left:20px}
.term-body .t-gap{height:14px}
.term-body .p{color:var(--accent)}
.term-body .ok{color:#4ade80}
.term-body .c{color:#f5f5f7}
.term-body .dim{color:#8a8a92}

/* --- STATS BAR --- */
.stats-bar{display:flex;justify-content:center;align-items:center;gap:64px;padding:48px 24px;border-top:1px solid var(--border);border-bottom:1px solid var(--border);width:100%}
.stats-bar .stat-item{text-align:center}
.stats-bar .stat-number{font-size:36px;font-weight:800;letter-spacing:-.03em;color:var(--text);line-height:1}
.stats-bar .stat-label{font-size:14px;color:var(--text-secondary);margin-top:8px}

/* --- CTA BANNER --- */
.cta-banner{max-width:var(--max-w);margin:0 auto 96px;padding:0 28px}
.cta-inner{position:relative;overflow:hidden;border-radius:24px;padding:66px 40px;text-align:center;color:#fff;
  border:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(90% 130% at 82% 12%, rgba(232,69,60,.30) 0%, rgba(232,69,60,0) 52%),
    radial-gradient(80% 120% at 6% 108%, rgba(150,32,56,.22) 0%, transparent 55%),
    linear-gradient(160deg, #17131a 0%, #100d13 55%, #0b090d 100%);
}
.cta-inner::before{content:"";position:absolute;inset:0;pointer-events:none;
  background-image:radial-gradient(circle at 1px 1px,rgba(255,255,255,.05) 1px,transparent 0);background-size:32px 32px;
  -webkit-mask-image:linear-gradient(180deg,#000,transparent 75%);mask-image:linear-gradient(180deg,#000,transparent 75%);opacity:.6}
.cta-inner>*{position:relative}
.cta-inner h2{font-size:clamp(27px,3.2vw,34px);font-weight:800;margin-bottom:12px;letter-spacing:-.03em;color:#f7f6f8}
.cta-inner p{color:rgba(236,232,240,.72);margin-bottom:28px;font-size:16px}
.cta-inner .btn-primary{background:#f7f6f8;color:#141217;box-shadow:0 14px 34px -14px rgba(0,0,0,.7),inset 0 1px 0 rgba(255,255,255,.6)}
.cta-inner .btn-primary:hover{transform:translateY(-2px);box-shadow:0 20px 44px -16px rgba(0,0,0,.75)}
.btn-white{background:#fff;color:var(--ink);padding:13px 30px;border-radius:100px;font-weight:700;font-size:15px;display:inline-flex;align-items:center;gap:8px;transition:transform .18s,box-shadow .18s}
.btn-white:hover{transform:translateY(-1px);box-shadow:0 12px 30px -12px rgba(0,0,0,.5)}

/* --- TWO COL --- */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.two-col-text h2{font-size:clamp(25px,3vw,33px);font-weight:700;letter-spacing:-.03em;line-height:1.18;margin-bottom:16px}
.two-col-text p{font-size:16px;color:var(--text-secondary);line-height:1.7;margin-bottom:16px}
.two-col-visual{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:12px 30px;box-shadow:var(--shadow)}
.mini-list{list-style:none}
.mini-list li{display:flex;align-items:flex-start;gap:12px;padding:14px 0;border-bottom:1px solid var(--border);font-size:15px;color:var(--text-secondary);line-height:1.5}
.mini-list li:last-child{border-bottom:none}
.mini-list .check{width:22px;height:22px;border-radius:50%;background:var(--green-light);color:var(--green);display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-top:1px}
.mini-list .check svg{width:12px;height:12px}

/* --- BLOG CARDS --- */
.blog-card{padding:28px}
.blog-card .blog-tag{font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:700;color:var(--accent);margin-bottom:12px}
.blog-card h3{font-size:18px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px;line-height:1.35}
.blog-card p{font-size:14px;color:var(--text-secondary);line-height:1.6}
.blog-card .blog-meta{margin-top:16px;font-size:13px;color:var(--text-tertiary)}

/* --- CONTACT --- */
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
.contact-info h3{font-size:18px;font-weight:700;margin-bottom:8px}
.contact-info p{font-size:15px;color:var(--text-secondary);line-height:1.7;margin-bottom:24px}
.contact-item{display:flex;align-items:center;gap:12px;padding:16px 0;border-bottom:1px solid var(--border);font-size:15px}
.contact-item:last-child{border-bottom:none}
.contact-item .ci-icon{width:40px;height:40px;border-radius:10px;background:var(--accent-light);color:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-item .ci-icon svg{width:18px;height:18px}
.contact-form label{display:block;font-size:14px;font-weight:600;margin-bottom:6px;color:var(--text)}
.contact-form input,.contact-form textarea{width:100%;padding:12px 16px;border:1px solid var(--border-strong);border-radius:var(--radius-sm);font-family:inherit;font-size:14px;background:var(--bg);color:var(--text);margin-bottom:16px;transition:border-color .18s,box-shadow .18s}
.contact-form input:focus,.contact-form textarea:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring)}
.contact-form textarea{resize:vertical;min-height:120px}

/* --- PAGE HEADER --- */
.page-header{background:var(--bg-alt);border-bottom:1px solid var(--border);padding:72px 24px;text-align:center}
.page-header h1{font-size:clamp(30px,4vw,44px);font-weight:800;letter-spacing:-.03em;margin-bottom:12px}
.page-header p{font-size:18px;color:var(--text-secondary);max-width:580px;margin:0 auto;line-height:1.6}

/* --- CONTENT --- */
.content{max-width:720px;margin:0 auto;padding:64px 24px}
.content h2{font-size:24px;font-weight:800;letter-spacing:-.02em;margin:40px 0 16px}
.content h2:first-child{margin-top:0}
.content p{font-size:16px;color:var(--text-secondary);line-height:1.8;margin-bottom:16px}
.content ul{margin:0 0 16px 20px;color:var(--text-secondary);line-height:1.8}

/* --- TIMELINE --- */
.timeline{max-width:700px}
.timeline-item{display:flex;gap:24px;padding-bottom:32px;position:relative}
.timeline-dot{width:12px;height:12px;border-radius:50%;background:var(--accent);flex-shrink:0;margin-top:6px}
.timeline-item:not(:last-child)::before{content:'';position:absolute;left:5px;top:22px;bottom:0;width:2px;background:var(--border)}
.timeline-content h3{font-size:16px;font-weight:700;margin-bottom:4px}
.timeline-content p{font-size:14px;color:var(--text-secondary);line-height:1.6}

/* --- FOOTER (dark, premium) --- */
.site-footer{position:relative;border-top:none;background:#0b0b0f;color:#c7c7d1;overflow:hidden}
.site-footer::before{content:"";position:absolute;top:0;left:0;right:0;height:1px;
  background:linear-gradient(90deg,transparent,rgba(232,69,60,.65) 22%,rgba(224,31,102,.65) 50%,rgba(139,49,214,.65) 78%,transparent)}
.site-footer::after{content:"";position:absolute;top:-140px;left:50%;transform:translateX(-50%);
  width:940px;height:320px;pointer-events:none;
  background:radial-gradient(60% 60% at 50% 0%,rgba(224,31,102,.15),transparent 72%)}
.footer-inner{position:relative;z-index:1;max-width:var(--max-w);margin:0 auto;padding:74px 28px 36px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr 1.15fr;gap:48px;margin-bottom:52px}
.footer-brand .logo{margin-bottom:16px;color:#fff}
.footer-brand .logo span{color:#ff6f63}
.footer-brand p{font-size:14px;color:#82828f;line-height:1.65;max-width:300px;margin-bottom:24px}
.footer-social{display:flex;gap:10px}
.footer-social a{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;
  background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);color:#c7c7d1;
  transition:background .18s,color .18s,transform .18s,border-color .18s}
.footer-social a:hover{background:rgba(255,255,255,.12);color:#fff;transform:translateY(-2px);border-color:rgba(255,255,255,.2)}
.footer-social svg{width:16px;height:16px;fill:currentColor}
.footer-col h4{font-size:12px;text-transform:uppercase;letter-spacing:.13em;font-weight:700;color:#fff;margin-bottom:18px}
.footer-col ul{list-style:none}
.footer-col li{margin-bottom:12px}
.footer-col a{font-size:14px;color:#9494a1;transition:color .18s}
.footer-col a:hover{color:#fff}
.footer-cta{display:inline-flex;align-items:center;gap:6px;margin-top:8px;
  font-size:13.5px;font-weight:600;color:#ff8b80 !important}
.footer-cta:hover{color:#ffb0a8 !important}
.footer-bottom{border-top:1px solid rgba(255,255,255,.08);padding-top:26px;
  display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap}
.footer-bottom p{font-size:13px;color:#6a6a77}
.footer-trust{display:flex;align-items:center;gap:20px;flex-wrap:wrap}
.footer-trust span{display:inline-flex;align-items:center;gap:7px;font-size:12.5px;color:#8a8a97}
.footer-trust i{width:6px;height:6px;border-radius:50%;background:#12a150;box-shadow:0 0 0 3px rgba(18,161,80,.16);flex:none}

/* --- RESPONSIVE --- */
@media (max-width:768px){
  .nav-links{display:none;flex-direction:column;position:absolute;top:100%;left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);padding:16px 24px;gap:4px;z-index:999;box-shadow:var(--shadow-lg)}
  .nav-links.open{display:flex}
  .nav-links a{padding:10px 0;font-size:15px}
  .nav-menu{display:none}
  .nav-caret{display:none}
  .nav-trigger{padding:10px 0}
  .mobile-menu-btn{display:block}
  .site-header .header-inner{position:relative}
  .hero-inner{grid-template-columns:1fr;text-align:center;gap:36px;padding:52px 24px 64px;min-height:0}
  .hero-copy{order:2}
  .hero-visual{order:1}
  .hero-eyebrow{margin-bottom:14px}
  .hero .hero-lead{margin-left:auto;margin-right:auto}
  .hero-actions,.hero-makers{justify-content:center}
  .burn-stage{width:min(94%,360px);height:320px}
  .burn-doc{width:min(88%,280px)}
  .chip-1{left:0}
  .chip-2{right:0}
  .grid-2,.grid-3,.grid-4{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
  .contact-grid{grid-template-columns:1fr}
  .two-col{grid-template-columns:1fr;gap:32px}
  .feature-strip-inner{grid-template-columns:repeat(2,1fr)}
  .feature-strip{padding:0 16px 48px}
  .aw-body{grid-template-columns:1fr}
  .aw-side{display:none}
  .showcase{padding:8px 16px 56px}
  .carousel{padding:8px 16px 56px}
  .car-arrow{display:none}
  .car-tab{padding:8px 16px}
  .announce{font-size:12.5px;padding:9px 38px}
  .uc-card{flex-direction:column;gap:16px;padding:24px}
  .status-card{position:static;width:auto;margin:16px 0 0;right:auto;left:auto;bottom:auto}
  .stats-strip-inner{grid-template-columns:repeat(2,1fr);gap:32px 16px}
  .ss:nth-child(3)::before{display:none}
  .stats-strip{padding:0 16px 56px}
  .stats-bar{flex-wrap:wrap;gap:24px}
  .product-stats{gap:16px}
  .cta-inner{padding:44px 24px}
  .section{padding:72px 24px}
  .section-alt .section-inner{padding:72px 24px}
}

@media (max-width:480px){
  .footer-grid{grid-template-columns:1fr;gap:36px}
  .footer-bottom{flex-direction:column;gap:16px;text-align:center}
  .footer-trust{justify-content:center;gap:14px}
}

/* =========================================================
   v2.1 — rhythm, bento & motion
   ========================================================= */

/* --- SPLIT SECTION HEADER (breaks the centered eyebrow→title→grid loop) --- */
.section-head{
  display:grid;grid-template-columns:1.15fr 1fr;gap:48px;align-items:end;margin-bottom:56px;
}
.section-head .section-label{margin-bottom:14px}
.section-head .section-title{margin-bottom:0}
.section-head-aside{padding-bottom:6px}
.section-head-aside p{font-size:16px;color:var(--text-secondary);line-height:1.65}
.section-head-aside .btn{margin-top:18px}
@media (max-width:820px){
  .section-head{grid-template-columns:1fr;gap:16px;align-items:start;margin-bottom:36px}
  .section-head-aside{padding-bottom:0}
}

/* --- BENTO GRID (4-col: two wide tiles in opposite corners) --- */
.bento{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.bento-item{
  grid-column:span 1;position:relative;overflow:hidden;
  background:var(--bg-card);border:1px solid var(--border);border-radius:18px;padding:26px;
  transition:border-color .2s,box-shadow .2s,transform .2s;
}
.bento-item:hover{border-color:var(--border-strong);box-shadow:var(--shadow);transform:translateY(-3px)}
.bento-item .bento-ic{
  width:44px;height:44px;border-radius:12px;background:var(--accent-light);color:var(--accent);
  display:flex;align-items:center;justify-content:center;margin-bottom:18px;flex-shrink:0;
}
.bento-item .bento-ic svg{width:22px;height:22px}
.bento-item h3{font-size:16.5px;font-weight:700;letter-spacing:-.02em;margin-bottom:8px}
.bento-item p{font-size:14px;color:var(--text-secondary);line-height:1.6}
/* wide, horizontal, subtly emphasized tiles */
.bento-wide{grid-column:span 2;display:flex;gap:22px;align-items:flex-start;background:linear-gradient(180deg,#fff,#fafafb)}
.bento-wide::after{
  content:"";position:absolute;right:-40px;top:-40px;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(232,69,60,.10),transparent 70%);pointer-events:none;
}
.bento-wide .bento-ic{margin-bottom:0}
.bento-wide .bento-body{position:relative;z-index:1}
.bento-wide h3{font-size:19px;margin-bottom:8px}
.bento-wide p{font-size:15px;max-width:46ch}
@media (max-width:900px){
  .bento{grid-template-columns:repeat(2,1fr)}
  .bento-wide{grid-column:span 2}
}
@media (max-width:560px){
  .bento{grid-template-columns:1fr}
  .bento-wide{grid-column:span 1;flex-direction:column}
  .bento-wide .bento-ic{margin-bottom:16px}
}

/* --- SCROLL REVEAL (JS-gated so content is never hidden without JS; respects reduced motion) --- */
@media (prefers-reduced-motion:no-preference){
  .reveal-ready [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .7s cubic-bezier(.16,1,.3,1),transform .7s cubic-bezier(.16,1,.3,1);will-change:opacity,transform}
  .reveal-ready [data-reveal].is-visible{opacity:1;transform:none}
  .reveal-ready [data-reveal-d="1"]{transition-delay:.07s}
  .reveal-ready [data-reveal-d="2"]{transition-delay:.14s}
  .reveal-ready [data-reveal-d="3"]{transition-delay:.21s}
  .reveal-ready [data-reveal-d="4"]{transition-delay:.28s}
  .reveal-ready [data-reveal-d="5"]{transition-delay:.35s}
}

/* --- APP WINDOW POLISH (balanced, integrated status; no floating collision) --- */
.aw-body{min-height:auto}
.aw-main{display:flex;flex-direction:column}
.conv-bar{height:6px}
.conv-bar i{width:100%;background:linear-gradient(90deg,var(--accent),#f4877f)}
.aw-status{
  display:grid;grid-template-columns:repeat(4,1fr);margin-top:18px;
  border:1px solid var(--border);border-radius:12px;overflow:hidden;background:var(--bg-card);
}
.aw-body:not(.solo) .aw-status{margin-top:auto}
.aw-status>div{padding:12px 14px;border-right:1px solid var(--border)}
.aw-status>div:last-child{border-right:none}
.aw-status span{display:block;font-size:10.5px;color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.06em;font-weight:600;margin-bottom:5px}
.aw-status b{font-size:13px;color:var(--text);font-weight:700}
.aw-status b.ok{color:var(--green)}
.aw-status .dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin-right:6px;vertical-align:1px}
@media (max-width:560px){
  .aw-status{grid-template-columns:repeat(2,1fr)}
  .aw-status>div:nth-child(2n){border-right:none}
  .aw-status>div:nth-child(1),.aw-status>div:nth-child(2){border-bottom:1px solid var(--border)}
}

/* =========================================================
   v3 — parent company: makers row, product showcase, scroll-open
   ========================================================= */

/* Hero "makers of" row (replaces product trust badges) */
.hero-makers{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-top:34px}
.hm-label{font-size:12px;text-transform:uppercase;letter-spacing:.16em;font-weight:700;color:rgba(255,255,255,.68)}
.hero-makers a{font-size:14.5px;font-weight:600;color:#fff;opacity:.92;transition:opacity .18s}
.hero-makers a:hover{opacity:1;text-decoration:underline;text-underline-offset:3px}
.hm-dot{color:rgba(255,255,255,.4)}

/* Products showcase — alternating rows with a big product visual each */
.products .section-head{margin-bottom:20px}
.product-row{display:grid;grid-template-columns:.9fr 1.2fr;gap:64px;align-items:center;padding:72px 0}
.product-row+.product-row{border-top:1px solid var(--border)}
.product-row--rev .product-copy{order:2}
.product-row--rev .product-visual{order:1}
.product-badge{display:inline-flex;align-items:center;gap:8px;padding:6px 14px;border-radius:100px;
  font-size:12.5px;font-weight:700;letter-spacing:.01em;color:var(--c);
  background:color-mix(in srgb,var(--c) 10%,#fff);
  border:1px solid color-mix(in srgb,var(--c) 24%,transparent)}
.product-copy h3{font-family:var(--font-head);font-size:clamp(24px,3vw,35px);font-weight:800;
  letter-spacing:-.03em;line-height:1.08;margin:18px 0 14px}
.product-copy p{font-size:16px;color:var(--text-secondary);line-height:1.65;margin-bottom:24px;max-width:46ch}
.product-link{display:inline-flex;align-items:center;gap:7px;font-size:15px;font-weight:600;
  color:var(--accent);transition:gap .18s,color .18s}
.product-link:hover{gap:11px;color:var(--accent-dark)}
.product-visual{position:relative}
.product-visual .app-window,.product-visual .term{width:100%}

/* Big visuals "open up" as they scroll into view */
@media (prefers-reduced-motion:no-preference){
  .reveal-ready [data-reveal-zoom]{opacity:0;
    transform:perspective(1600px) rotateX(7deg) translateY(54px) scale(.94);
    transform-origin:50% 92%;
    transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1.05s cubic-bezier(.16,1,.3,1);
    will-change:opacity,transform}
  .reveal-ready [data-reveal-zoom].is-visible{opacity:1;transform:none}
}

@media (max-width:860px){
  .product-row{grid-template-columns:1fr;gap:30px;padding:48px 0}
  .product-row--rev .product-copy,.product-row--rev .product-visual{order:0}
  .product-copy p{max-width:none}
}
