/* ───────────────────────────────────────────────────────────
   Aponex overrides on the MVITRO structure.
   Same layout/components; brand wordmark + Aponex blue accent
   (replaces MVITRO's purple). Load AFTER styles.css.
   ─────────────────────────────────────────────────────────── */
:root{
  --accent:#0F8FCE;        /* Aponex Blue — key color */
  --accent-strong:#0B6E9F;
}

/* text wordmark in place of the MVITRO logo image */
.nav__logo{
  width:auto; height:auto; background:none !important;
  display:inline-flex; align-items:baseline; gap:9px;
  font-size:22px; font-weight:700; letter-spacing:-0.03em;
  color:var(--ink-strong);
}
.nav__logo .wm{ font-weight:700; }
.nav__logo .wm .o{ color:var(--accent); }
.nav__logo .sub{
  font-size:11px; font-weight:600; letter-spacing:0.16em;
  text-transform:uppercase; color:var(--ink-faint);
}
.nav--invert .nav__logo, .nav--on-dark .nav__logo{ color:#fff; }
.nav--invert .nav__logo .sub, .nav--on-dark .nav__logo .sub{ color:rgba(255,255,255,.62); }
/* SVG wordmark: letters follow currentColor (black on light / white on dark), the "o" stays brand-blue */
.nav__logo{ align-items:center; }
.nav__logo-svg{ height:22px; width:auto; display:block; }
@media (max-width:860px){ .nav__logo-svg{ height:18px; } }
/* mobile nav — hamburger + dropdown */
.nav__toggle{ display:none; }
@media (max-width:768px){
  .nav__toggle{ display:flex; flex-direction:column; justify-content:center; gap:5px;
    position:absolute; right:18px; top:50%; transform:translateY(-50%);
    width:42px; height:42px; padding:9px; background:none; border:0; cursor:pointer;
    color:var(--ink-strong); z-index:60; }
  .nav--invert .nav__toggle, .nav--on-dark .nav__toggle{ color:#fff; }
  .nav__toggle span{ display:block; width:100%; height:2px; background:currentColor; border-radius:2px;
    transition:transform .25s, opacity .2s; }
  .nav__links{ position:fixed; left:0; right:0; top:var(--nav-h, 72px); transform:none;
    flex-direction:column; align-items:stretch; gap:0; background:#fff;
    padding:6px 24px 16px; box-shadow:0 24px 48px rgba(0,0,0,.14); display:none; z-index:55; }
  .nav.is-open .nav__links{ display:flex; }
  .nav__links .nav__link{ width:100%; padding:15px 12px; font-size:17px; color:var(--ink-strong);
    border-radius:10px; border-bottom:1px solid rgba(0,0,0,.06); }
  .nav__links .nav__link:hover{ background:rgba(0,0,0,.05); }
  .nav__links .nav__link:last-child{ border-bottom:0; }
  /* open state: solid bar so the dark icon/logo are visible even over a dark hero */
  .nav.is-open{ background:#fff; }
  .nav.is-open .nav__logo{ color:var(--ink-strong); }
  .nav.is-open .nav__toggle{ color:var(--ink-strong); }
  .nav.is-open .nav__toggle span:nth-child(1){ transform:translateY(7px) rotate(45deg); }
  .nav.is-open .nav__toggle span:nth-child(2){ opacity:0; }
  .nav.is-open .nav__toggle span:nth-child(3){ transform:translateY(-7px) rotate(-45deg); }
}

/* accent recolors (MVITRO purple/blue → Aponex blue) */
.hero__buy{ background:var(--accent); box-shadow:0 10px 28px rgba(15,143,206,.34); }
.hero__buy:hover{ background:var(--accent-strong); box-shadow:0 14px 34px rgba(15,143,206,.44); }
.feature-card__link{ color:var(--accent); }

/* eyebrow accent on feature blocks for a touch of brand color */
.big-feature .eyebrow, .big-feature__head .eyebrow{ color:var(--accent); }

/* English copy runs a touch looser than Korean */
.hero__title, .section-title, .big-feature__title, .big-card__body, .section-lede{
  letter-spacing:-0.02em;
}

/* ───────────────────────────────────────────────────────────
   STARTUP ENERGY LAYER (landing) — dark hero, spec ticker,
   bold blue stat band. Built on the same primitives.
   ─────────────────────────────────────────────────────────── */

/* dark split hero */
.hero--dark{ background:#0E0E10; color:#fff; overflow:hidden; }
.hero--dark .hero__inner{ display:block; padding:0; }
.heroX{
  width:var(--container); max-width:calc(100% - 80px); margin:0 auto;
  min-height:calc(100vh - var(--nav-h)); display:grid; grid-template-columns:1.04fr .96fr;
  align-items:center; gap:48px;
}
.heroX__copy{ display:flex; flex-direction:column; align-items:flex-start; }
.heroX__badge{
  display:inline-flex; align-items:center; gap:9px; margin:0 0 30px; white-space:nowrap;
  padding:9px 16px; border:1px solid rgba(255,255,255,.2); border-radius:999px;
  font-size:13px; font-weight:600; letter-spacing:.04em; color:#fff;
}
.heroX__badge .dot{ width:7px; height:7px; border-radius:50%; background:var(--accent); }
.heroX__title{
  margin:0 0 26px; font-size:80px; line-height:1.02; font-weight:700;
  letter-spacing:-0.04em; color:#fff; white-space:pre-line; word-break:keep-all;
}
.heroX__title .accent{ color:var(--accent); }
.heroX__lede{
  margin:0 0 40px; max-width:44ch; font-size:21px; line-height:1.55;
  font-weight:500; letter-spacing:-0.02em; color:rgba(255,255,255,.7);
  white-space:pre-line; word-break:keep-all;
}
.heroX__cta{ display:inline-flex; align-items:center; gap:10px; padding:18px 40px;
  border-radius:999px; background:var(--accent); color:#fff; font-size:17px; font-weight:700;
  letter-spacing:-0.02em; text-decoration:none; box-shadow:0 12px 30px rgba(15,143,206,.4);
  transition:transform .2s, background-color .2s, box-shadow .2s; }
.heroX__cta:hover{ background:#1AA0E0; transform:translateY(-2px); box-shadow:0 16px 38px rgba(15,143,206,.5); }
.heroX__cta .arr{ transition:transform .2s; }
.heroX__cta:hover .arr{ transform:translateX(4px); }
.heroX__stage{ position:relative; align-self:stretch; display:flex; align-items:center; justify-content:center; }
.heroX__stage::before{ content:""; position:absolute; width:78%; aspect-ratio:1/1; border-radius:50%;
  background:radial-gradient(circle, rgba(15,143,206,.5) 0%, rgba(15,143,206,0) 62%); filter:blur(20px); }
.heroX__stage img{ position:relative; width:96%; height:auto; max-height:80vh; object-fit:contain;
  filter:drop-shadow(0 30px 70px rgba(0,0,0,.6)); }

/* Technology hero — full-height dark, text left / device right (distinct from landing) */
.techhero{ position:relative; background:var(--bg-page, #fff); color:var(--ink); overflow:hidden;
  display:flex; align-items:center;
  min-height:calc(100vh - var(--nav-h));
  width:100%; padding:150px max(var(--gutter), calc((100% - var(--container)) / 2)) 120px; }
.techhero__copy{ position:relative; z-index:2; max-width:600px; }
.techhero__media{ position:absolute; inset:0; z-index:0; display:flex; align-items:center; justify-content:flex-end; pointer-events:none; }
.techhero__media img{ width:80%; height:auto; max-height:100%; object-fit:contain; object-position:right center; }
.techhero__eyebrow{ font-size:13px; font-weight:700; letter-spacing:.01em; color:var(--accent); margin:0 0 22px; }
.techhero__title{ font-size:clamp(40px,5.6vw,68px); line-height:1.04; font-weight:700; letter-spacing:-0.035em; color:var(--ink);
  margin:0 0 26px; word-break:keep-all; white-space:pre-line; }
.techhero__sub{ font-size:clamp(16px,1.4vw,19px); line-height:1.6; font-weight:500; color:var(--ink-soft); margin:0 0 34px; max-width:52ch; word-break:keep-all; }
.techhero__chips{ display:flex; flex-wrap:wrap; gap:10px; }
.techhero__chips span{ font-size:13px; font-weight:600; letter-spacing:.01em; color:var(--accent);
  padding:9px 16px; border:1px solid rgba(15,143,206,.38); background:rgba(15,143,206,.08); border-radius:999px; white-space:nowrap; }
@media (max-width:860px){
  .techhero{ min-height:auto; flex-direction:column; align-items:center; text-align:center; padding:100px 24px 64px; }
  .techhero__copy{ order:2; max-width:none; }
  .techhero__sub{ margin-left:auto; margin-right:auto; }
  .techhero__chips{ justify-content:center; }
  .techhero__media{ order:1; position:static; width:100%; justify-content:center; opacity:1; margin:0 0 8px; overflow:hidden; }
  .techhero__media img{ width:250%; max-width:250%; margin:-26% -75% -14%; height:auto; object-position:center; }
}

/* Apple-style hero — large centered product, text overlaid bottom-left / CTA bottom-right */
.heroA{ position:relative; min-height:min(calc(100vh - var(--nav-h)), 82vw); display:flex; flex-direction:column; overflow:hidden; }
.heroA__media{ position:absolute; left:0; right:0; top:0; bottom:0; display:flex; align-items:flex-start; justify-content:center; }
.heroA__media::before{ content:""; position:absolute; left:50%; top:46%; transform:translate(-50%,-50%); width:90%; max-width:1440px; aspect-ratio:1/1; border-radius:50%;
  background:radial-gradient(circle, rgba(15,143,206,.42) 0%, rgba(15,143,206,0) 62%); filter:blur(60px); }
.heroA__media img{ position:relative; width:100%; max-height:none; object-fit:contain; object-position:center top;
  transform:translateY(-14%);
  filter:drop-shadow(0 50px 100px rgba(0,0,0,.7)); }
.heroA__foot{ position:relative; z-index:3; margin-top:auto; width:var(--container); max-width:calc(100% - 80px);
  margin-left:auto; margin-right:auto; padding-bottom:64px;
  display:flex; align-items:flex-end; justify-content:space-between; gap:32px; }
.heroA__eyebrow{ font-size:18px; font-weight:600; letter-spacing:-0.01em; color:rgba(255,255,255,.6); margin:0 0 14px; }
.heroA__title{ font-size:clamp(34px,5vw,58px); line-height:1.2; font-weight:700; letter-spacing:-0.035em; color:#fff;
  margin:0 0 18px; max-width:18ch; word-break:keep-all; }
.heroA__title .accent{ color:var(--accent); }
.heroA__sub{ font-size:clamp(16px,1.4vw,19px); line-height:1.5; font-weight:500; color:rgba(255,255,255,.66); margin:0; max-width:50ch; word-break:keep-all; }
.heroA__actions{ display:flex; align-items:center; gap:16px; flex:none; padding-bottom:4px; }
.heroA__tag{ font-size:13px; font-weight:600; letter-spacing:.01em; color:rgba(255,255,255,.8);
  padding:9px 16px; border:1px solid rgba(255,255,255,.2); border-radius:999px; white-space:nowrap; }
.heroA__cta{ display:inline-flex; align-items:center; gap:9px; padding:14px 30px; border-radius:999px;
  background:var(--accent); color:#fff; font-size:16px; font-weight:700; letter-spacing:-0.01em; text-decoration:none;
  box-shadow:0 12px 30px rgba(15,143,206,.4); transition:transform .2s, background-color .2s, box-shadow .2s; white-space:nowrap; }
.heroA__cta:hover{ background:#1AA0E0; transform:translateY(-2px); box-shadow:0 16px 38px rgba(15,143,206,.5); }
.heroA__cta .arr{ transition:transform .2s; }
.heroA__cta:hover .arr{ transform:translateX(4px); }
/* light variant — same heroA layout, white background + dark text */
.heroA--light{ background:#fff; }
.heroA--light .heroA__eyebrow{ color:var(--accent); }
.heroA--light .heroA__title{ color:var(--ink); }
.heroA--light .heroA__sub{ color:var(--ink-soft); }
.heroA--light .heroA__tag{ color:var(--ink); border-color:rgba(0,0,0,.16); }
.heroA--light .heroA__media::before{ display:none; }
.heroA--light .heroA__media img{ filter:drop-shadow(0 24px 48px rgba(0,0,0,.14)); }
/* Technology (light) hero: centered on mobile */
@media (max-width:860px){
  .heroA--light .heroA__foot{ align-items:center; }
  .heroA--light .heroA__text{ text-align:center; }
  .heroA--light .heroA__title{ max-width:none; }
  .heroA--light .heroA__sub{ margin-left:auto; margin-right:auto; }
  .heroA--light .heroA__actions{ justify-content:center; flex-wrap:wrap; }
}
/* Technology split hero — text left + image right (desktop), centered stack (mobile) */
.techsplit{ position:relative; background:#fff; color:var(--ink); overflow:hidden;
  display:flex; align-items:center; gap:32px;
  min-height:calc(100vh - var(--nav-h));
  width:100%; padding:150px 0 120px max(var(--gutter), calc((100% - var(--container)) / 2)); }
.techsplit__copy{ flex:0 0 40%; max-width:520px; }
.techsplit__media{ flex:1 1 0; min-width:0; display:flex; align-items:center; justify-content:flex-end; }
.techsplit__media img{ width:100%; max-width:none; height:auto; display:block; filter:drop-shadow(0 24px 48px rgba(0,0,0,.12)); }
.techsplit__eyebrow{ font-size:13px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); margin:0 0 22px; }
.techsplit__title{ font-size:clamp(40px,5.2vw,64px); line-height:1.1; font-weight:700; letter-spacing:-0.035em; color:var(--ink); margin:0 0 24px; word-break:keep-all; }
.techsplit__title .accent{ color:var(--accent); }
.techsplit__sub{ font-size:19px; line-height:1.6; font-weight:500; color:var(--ink-soft); margin:0 0 32px; max-width:48ch; word-break:keep-all; }
.techsplit__chips{ display:flex; flex-wrap:wrap; gap:10px; }
.techsplit__chips span{ font-size:13px; font-weight:600; letter-spacing:.01em; color:var(--accent);
  padding:9px 16px; border:1px solid rgba(15,143,206,.38); background:rgba(15,143,206,.08); border-radius:999px; white-space:nowrap; }
@media (max-width:860px){
  .techsplit{ flex-direction:column; align-items:center; text-align:center; min-height:auto; gap:32px; padding:120px 24px 64px; }
  .techsplit__copy{ max-width:none; order:2; }
  .techsplit__media{ order:1; }
  .techsplit__media img{ max-width:360px; }
  .techsplit__sub{ margin-left:auto; margin-right:auto; }
  .techsplit__chips{ justify-content:center; }
}
@media (max-width:860px){
  /* mobile: stack image (top) then text (bottom) — no absolute overlap */
  .heroA{ min-height:auto; }
  .heroA__media{ position:relative; left:auto; right:auto; top:auto; bottom:auto;
    width:100%; height:auto; padding-top:var(--nav-h); overflow:hidden; }
  .heroA__media img{ position:relative; width:250%; max-width:250%; margin:-28% -75% -20%;
    max-height:none; transform:none; object-position:center; }
  .heroA__media::before{ top:55%; width:130%; max-width:none; }
  .heroA__foot{ position:relative; flex-direction:column; align-items:flex-start; gap:16px;
    width:100%; max-width:none; margin:0; padding:8px var(--gutter) 28px; }
  .heroA__actions{ width:100%; flex-wrap:wrap; gap:12px; }
}

/* split hero — copy left, large device right */

/* split hero — copy left, large device right */
.heroX--split{ grid-template-columns:1.02fr .98fr; gap:40px; align-items:center;
  min-height:calc(100vh - var(--nav-h)); text-align:left; }
.heroX--split .heroX__copy{ align-items:flex-start; }
.heroX--split .heroX__title{ font-size:62px; }
.heroX--split .heroX__stage--big{ position:relative; height:100%; align-self:stretch;
  display:flex; align-items:center; justify-content:center; overflow:visible; }
.heroX--split .heroX__stage--big::before{ content:""; position:absolute; width:66%; max-width:680px; aspect-ratio:1/1;
  border-radius:50%; background:radial-gradient(circle, rgba(15,143,206,.5) 0%, rgba(15,143,206,0) 62%); filter:blur(46px); }
.heroX--split .heroX__stage--big img{ position:relative; width:122%; max-width:none; max-height:78vh; object-fit:contain;
  transform:translateX(-1%); filter:drop-shadow(0 40px 84px rgba(0,0,0,.72)); }
@media (max-width:900px){
  .heroX--split{ grid-template-columns:1fr; text-align:center; min-height:auto; padding-top:40px; }
  .heroX--split .heroX__copy{ align-items:center; }
  .heroX--split .heroX__stage--big img{ width:100%; max-height:46vh; }
}

/* centered hero — large device image below the copy */
.heroX--center{ grid-template-columns:1fr; text-align:center; min-height:calc(100vh - var(--nav-h));
  gap:0; padding:72px 0 0; align-content:center; }
.heroX--center .heroX__copy{ align-items:center; max-width:940px; margin:0 auto; }
.heroX--center .heroX__lede{ max-width:60ch; }
.heroX--center .heroX__stage--big{ align-self:center; width:100%; margin-top:4px; }
.heroX--center .heroX__stage--big::before{ width:54%; max-width:760px; filter:blur(36px); }
.heroX--center .heroX__stage--big img{ width:min(1480px, 98%); max-height:64vh;
  filter:drop-shadow(0 44px 90px rgba(0,0,0,.7)); }
@media (max-width:900px){ .heroX--center{ padding-top:48px; } .heroX--center .heroX__stage--big img{ max-height:48vh; } }

/* spec ticker (under hero, dark) */
.spec-ticker{ background:#0E0E10; border-top:1px solid rgba(255,255,255,.1); }
.spec-ticker__row{ width:var(--container); max-width:calc(100% - 80px); margin:0 auto;
  display:flex; flex-wrap:wrap; align-items:center; gap:16px 34px; padding:26px 0; }
.spec-ticker .tk{ display:inline-flex; align-items:center; gap:11px; font-size:14px;
  letter-spacing:-0.01em; color:rgba(255,255,255,.62); white-space:nowrap; }
.spec-ticker .tk b{ color:#fff; font-weight:700; }
.spec-ticker .tk .d{ width:7px; height:7px; border-radius:50%; background:var(--accent); }
.spec-ticker .sep{ width:1px; height:15px; background:rgba(255,255,255,.16); }

/* bold blue stat band */
.stat-band{ width:100%; background:var(--accent); color:#fff;
  padding:120px max(var(--gutter), calc((100% - var(--container)) / 2)); }
.stat-band__inner{ width:var(--container); max-width:100%; margin:0 auto; }
.stat-band__head{ font-size:clamp(30px,3.6vw,42px); font-weight:700; letter-spacing:-0.03em; line-height:1.15;
  margin:0 0 64px; white-space:pre-line; word-break:keep-all; }
.stat-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:32px; }
.stat{ display:flex; flex-direction:column; gap:12px; }
.stat__num{ font-size:clamp(40px,5vw,64px); font-weight:700; letter-spacing:-0.04em; line-height:1;
  font-variant-numeric:tabular-nums; }
.stat__num .u{ font-size:.42em; font-weight:600; opacity:.8; margin-left:4px; }
.stat__label{ font-size:16px; font-weight:500; line-height:1.45; color:rgba(255,255,255,.85);
  letter-spacing:-0.01em; white-space:pre-line; }
.stat__rule{ width:40px; height:3px; background:rgba(255,255,255,.55); }
@media (max-width:900px){ .stat-grid{ grid-template-columns:repeat(2,1fr); row-gap:48px; } }

/* ───────────────────────────────────────────────────────────
   LEVELS-STYLE EDITORIAL LAYER
   warm light + near-black dark rhythm, small-caps eyebrows,
   alternating rows, dark stat tiles, testimonials, final CTA.
   ─────────────────────────────────────────────────────────── */
:root{ --paper:#F5F5F7; --ink-soft:#5A5A5E; }

/* small uppercase eyebrow */
.eyebrow--cap{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); }

.section--paper{ background:var(--paper); }
.section--ink{ background:#0E0E10; color:#fff; }
.section--ink .section-title, .section--ink .lvl-row__title{ color:#fff; }
.section--ink .section-lede, .section--ink .lvl-row__body{ color:rgba(255,255,255,.66); }

.lvl-head{ width:var(--container); max-width:100%; margin:0 auto 72px; display:flex; flex-direction:column; gap:18px; }
.lvl-head .section-title{ font-size:clamp(30px,4vw,46px); line-height:1.1; }

/* 3-column value props — bold editorial cards */
.props{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
.prop{ position:relative; background:#fff; border:0; border-radius:20px; padding:40px 36px 40px;
  display:flex; flex-direction:column; box-shadow:0 1px 2px rgba(0,0,0,.04);
  transition:transform .3s ease, box-shadow .3s ease; }
.prop:hover{ transform:translateY(-6px); box-shadow:0 28px 60px rgba(15,40,70,.13); }
.prop__n{ display:inline-flex; align-items:center; justify-content:center; width:38px; height:38px;
  border-radius:10px; background:var(--accent-soft,#E8F4FB); color:var(--accent);
  font-family:inherit; font-size:15px; font-weight:700; letter-spacing:0; line-height:1; margin:0 0 24px; }
.prop__icon{ width:46px; height:46px; border-radius:12px; background:var(--accent-soft, #E8F4FB);
  display:flex; align-items:center; justify-content:center; margin:0 0 22px; }
.prop__icon svg{ width:24px; height:24px; stroke:var(--accent); stroke-width:1.6; fill:none; }
.prop__k{ font-size:13px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--accent); margin:0 0 10px; }
.prop__t{ font-size:clamp(22px,2.4vw,28px); font-weight:700; letter-spacing:-0.025em; color:var(--ink); margin:0 0 14px; line-height:1.18; }
.prop__d{ font-size:15px; line-height:1.65; color:var(--ink-soft); margin:0; word-break:keep-all; }
@media (max-width:900px){ .props{ grid-template-columns:1fr; }
  .prop__n{ font-size:64px; width:auto; height:auto; display:block; background:none; border-radius:0;
    justify-content:flex-start; line-height:1; margin:0 0 10px; } }

/* editorial split (text + media card) */
.editorial{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:80px; align-items:center; }
.editorial__title{ font-size:clamp(26px,3.4vw,38px); font-weight:700; letter-spacing:-0.03em; line-height:1.18; color:var(--ink); margin:18px 0 20px; white-space:pre-line; word-break:keep-all; }
.editorial__body{ font-size:17px; line-height:1.7; color:var(--ink-soft); margin:0; white-space:pre-line; word-break:keep-all; }
.editorial__card{ background:#fff; border:0; border-radius:20px; box-shadow:0 1px 3px rgba(0,0,0,.05); aspect-ratio:4/3; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.editorial__card img{ width:100%; height:100%; object-fit:cover; }
.editorial__card img.contain{ object-fit:contain; padding:8%; mix-blend-mode:multiply; }
@media (max-width:900px){ .editorial{ grid-template-columns:1fr; gap:40px; } }

/* alternating feature rows */
.lvl-rows{ width:var(--container); max-width:100%; margin:0 auto; display:flex; flex-direction:column; }
.lvl-row{ display:grid; grid-template-columns:1fr 1fr; gap:72px; align-items:center; padding:64px 0; border-top:1px solid var(--line); }
.lvl-row:first-child{ border-top:0; }
.lvl-row__media{ background:var(--paper); border:0; border-radius:20px; aspect-ratio:5/4; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.lvl-row--flip .lvl-row__media{ order:2; }
.lvl-row__media img{ width:100%; height:100%; object-fit:cover; }
.lvl-row__media img.contain{ object-fit:contain; padding:9%; mix-blend-mode:multiply; }
.lvl-row__k{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); margin:0 0 16px; }
.lvl-row__title{ font-size:clamp(24px,2.6vw,30px); font-weight:700; letter-spacing:-0.03em; line-height:1.22; color:var(--ink); margin:0 0 16px; white-space:pre-line; word-break:keep-all; }
.lvl-row__body{ font-size:16px; line-height:1.65; color:var(--ink-soft); margin:0 0 22px; white-space:pre-line; word-break:keep-all; }
.lvl-row__list{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:11px; }
.lvl-row__list li{ display:flex; gap:11px; font-size:15px; line-height:1.5; color:var(--ink); }
.lvl-row__list li::before{ content:""; flex:none; width:7px; height:7px; margin-top:7px; border-radius:50%; background:var(--accent); }
@media (max-width:900px){ .lvl-row{ grid-template-columns:1fr; gap:28px; } .lvl-row--flip .lvl-row__media{ order:0; } }

/* dark stat tiles on light */
.tiles{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.tile{ background:#0E0E10; color:#fff; border-radius:18px; padding:44px 40px; display:flex; flex-direction:column; gap:14px; min-height:240px; }
.tile__num{ font-size:clamp(40px,5vw,60px); font-weight:700; letter-spacing:-0.04em; line-height:1; }
.tile__num .u{ font-size:.4em; opacity:.7; margin-left:3px; }
.tile__label{ font-size:15px; line-height:1.5; color:rgba(255,255,255,.72); margin-top:auto; white-space:pre-line; }
@media (max-width:900px){ .tiles{ grid-template-columns:1fr; } }

/* final CTA band */
.bigcta{ position:relative; width:100%; background:#0E0E10; color:#fff; padding:128px 40px; text-align:center;
  display:flex; flex-direction:column; align-items:center; gap:0; overflow:hidden; }
.bigcta__glow{ position:absolute; top:50%; left:50%; transform:translate(-50%,-58%); width:760px; max-width:90%;
  aspect-ratio:1/1; border-radius:50%; pointer-events:none;
  background:radial-gradient(circle, rgba(15,143,206,.28) 0%, rgba(15,143,206,0) 60%); filter:blur(40px); }
.bigcta > *:not(.bigcta__glow){ position:relative; z-index:1; }
.bigcta__eyebrow{ font-size:13px; font-weight:600; letter-spacing:.01em; color:var(--accent); margin:0 0 18px; }
.bigcta__title{ font-size:clamp(34px,5vw,58px); font-weight:700; letter-spacing:-0.04em; line-height:1.05; margin:0 0 22px; white-space:pre-line; word-break:keep-all; }
.bigcta__sub{ font-size:19px; line-height:1.55; font-weight:500; color:rgba(255,255,255,.62); margin:0 0 38px; max-width:52ch; word-break:keep-all; }
.bigcta__actions{ display:flex; align-items:center; justify-content:center; gap:14px; margin-bottom:44px; flex-wrap:wrap; }
.bigcta__btn{ display:inline-flex; align-items:center; gap:10px; padding:18px 40px; border-radius:999px; background:var(--accent); color:#fff;
  font-size:17px; font-weight:700; letter-spacing:-0.02em; text-decoration:none; border:1px solid var(--accent); white-space:nowrap;
  transition:transform .2s, background-color .2s, border-color .2s; }
.bigcta__btn .arr{ transition:transform .2s; }
.bigcta__btn:hover{ background:#1AA0E0; border-color:#1AA0E0; transform:translateY(-2px); }
.bigcta__btn:hover .arr{ transform:translateX(4px); }
.bigcta__btn--ghost{ background:transparent; color:#fff; border-color:rgba(255,255,255,.28); }
.bigcta__btn--ghost:hover{ background:rgba(255,255,255,.07); border-color:#fff; }
.bigcta__chips{ display:flex; flex-wrap:wrap; align-items:center; justify-content:center; gap:10px 14px; }
.bigcta__chips span{ font-size:13px; font-weight:600; letter-spacing:.01em; color:rgba(255,255,255,.7); white-space:nowrap;
  padding:8px 16px; border:1px solid rgba(255,255,255,.16); border-radius:999px; }
@media (max-width:900px){ .bigcta{ padding:88px 24px; } .bigcta__title{ font-size:38px; } .bigcta__actions{ flex-direction:column; } }

/* regulatory footer notice + medical-device content blocks */
.footer__legal{ width:100%; margin:0 0 14px; padding-top:32px; border-top:1px solid rgba(255,255,255,.18);
  font-size:12px; font-weight:300; line-height:1.7; letter-spacing:-0.01em; color:#7c7c80; max-width:none; }
.footer__copy{ border-top:0 !important; padding-top:0 !important; margin-top:0 !important; }

/* Intended use / safety blocks */
.med-stack{ width:100%; }
.med-block{ width:100%; max-width:var(--container); margin:0 auto; background:#fff; border:0; border-radius:20px;
  box-shadow:0 1px 3px rgba(0,0,0,.05); padding:48px 56px; display:grid; grid-template-columns:180px 1fr; gap:40px; }
.med-block + .med-block{ margin-top:24px; }
.med-block__k{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); margin:0; }
.med-block__body{ margin:0; font-size:16px; line-height:1.7; color:var(--ink-soft); white-space:pre-line; word-break:keep-all; }
.med-block__body strong{ color:var(--ink); font-weight:600; }
.med-block--warn{ background:#fff; }
.med-block__list{ list-style:none; margin:14px 0 0; padding:0; display:flex; flex-direction:column; gap:10px; }
.med-block__list li{ display:flex; gap:11px; font-size:15px; line-height:1.55; color:var(--ink-soft); }
.med-block__list li::before{ content:""; flex:none; width:6px; height:6px; margin-top:7px; background:var(--line-mute); }
@media (max-width:900px){ .med-block{ grid-template-columns:1fr; gap:18px; padding:40px 32px; } }
/* footer responsive */
@media (max-width:760px){
  .footer{ gap:44px; padding-top:64px !important; padding-bottom:56px; }
  .footer__menu{ grid-template-columns:repeat(2,1fr); gap:28px 24px; }
  .footer__bottom{ flex-direction:column; align-items:flex-start; gap:24px; margin-top:0; }
  .footer__inner{ max-width:none; width:100%; }
  .footer__info{ width:auto; max-width:100%; }
  .footer__legal{ padding-top:28px; }
}

/* references list */
.refs{ width:var(--container); max-width:100%; margin:0 auto; list-style:none; padding:0; display:flex; flex-direction:column; }
.refs li{ display:grid; grid-template-columns:40px 1fr; gap:20px; padding:22px 8px; border-top:1px solid var(--line);
  font-size:14px; line-height:1.6; color:var(--ink-soft); }
.refs li:last-child{ border-bottom:1px solid var(--line); }
.refs .n{ font-variant-numeric:tabular-nums; color:var(--accent); font-weight:700; }

/* team grid */
.team-grid{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:28px; }
.member__photo{ aspect-ratio:1/1; background:var(--paper); border-radius:16px; overflow:hidden; margin-bottom:18px; }
.member__photo img{ width:100%; height:100%; object-fit:cover; filter:grayscale(1); transition:filter .4s ease; }
.member:hover .member__photo img{ filter:grayscale(0); }
.member__role{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); margin:0 0 8px; }
.member__name{ font-size:19px; font-weight:600; letter-spacing:-0.02em; color:var(--ink); margin:0 0 8px; }
.member__bio{ font-size:14px; line-height:1.6; color:var(--ink-soft); margin:0; word-break:keep-all; }
@media (max-width:900px){ .team-grid{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .team-grid{ grid-template-columns:1fr; } }
.team-grid--3{ grid-template-columns:repeat(3,1fr); }
@media (max-width:900px){ .team-grid--3{ grid-template-columns:1fr 1fr; } }
@media (max-width:560px){ .team-grid--3{ grid-template-columns:1fr; } }

/* applications — two large market cards */
.apps{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:28px; }
.appcard{ display:flex; flex-direction:column; background:#fff; border:0; border-radius:20px; overflow:hidden;
  box-shadow:0 1px 3px rgba(0,0,0,.05); transition:transform .3s ease, box-shadow .3s ease; }
.appcard:hover{ transform:translateY(-4px); box-shadow:0 24px 60px rgba(0,0,0,.1); }
.appcard__media{ aspect-ratio:16/10; background:var(--paper); overflow:hidden; }
.appcard__media img{ width:100%; height:100%; object-fit:cover; transition:transform .8s ease; }
.appcard__media img.contain{ object-fit:contain; padding:7%; mix-blend-mode:multiply; }
.appcard:hover .appcard__media img{ transform:scale(1.04); }
.appcard__body{ padding:38px 40px 40px; display:flex; flex-direction:column; flex:1; }
.appcard__k{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); margin:0 0 14px; }
.appcard__title{ font-size:clamp(22px,2.4vw,26px); font-weight:700; letter-spacing:-0.03em; line-height:1.2; color:var(--ink); margin:0 0 14px; }
.appcard__body p{ font-size:16px; line-height:1.65; color:var(--ink-soft); margin:0 0 24px; word-break:keep-all; }
.appcard__link{ margin-top:auto; display:inline-flex; align-items:center; gap:9px; font-size:15px; font-weight:700;
  letter-spacing:-0.01em; color:var(--ink); text-decoration:none; }
.appcard__link .arr{ color:var(--accent); transition:transform .2s; }
.appcard__link:hover .arr{ transform:translateX(4px); }
@media (max-width:900px){ .apps{ grid-template-columns:1fr; } }

/* team preview cta row */
.team-cta{ width:var(--container); max-width:100%; margin:48px auto 0; }
.team-cta a{ display:inline-flex; align-items:center; gap:9px; font-size:16px; font-weight:700; color:var(--ink); text-decoration:none; }
.team-cta a .arr{ color:var(--accent); transition:transform .2s; }
.team-cta a:hover .arr{ transform:translateX(4px); }

/* ───────────────────────────────────────────────────────────
   PLATFORM — layered stack (dark)
   three numbered layers building up, joined by a blue spine.
   ─────────────────────────────────────────────────────────── */
.stack{ width:var(--container); max-width:100%; margin:0 auto; position:relative; padding-left:96px; }
.stack::before{ content:""; position:absolute; left:47px; top:32px; bottom:96px; width:2px;
  background:linear-gradient(180deg, var(--accent) 0%, rgba(15,143,206,.25) 100%); }
.layerc{ position:relative; display:grid; grid-template-columns:1.1fr .9fr; gap:48px; align-items:center;
  background:#161618; border:1px solid rgba(255,255,255,.09); border-radius:22px;
  padding:44px 48px; margin-bottom:28px; transition:transform .3s ease, border-color .3s ease; }
.layerc:hover{ border-color:rgba(15,143,206,.5); }
.layerc > *:not(.layerc__node){ transition:transform .3s ease; }
.layerc:hover > *:not(.layerc__node){ transform:translateX(6px); }
.layerc:last-child{ margin-bottom:0; }
.layerc__node{ position:absolute; left:-80px; top:50%; transform:translateY(-50%);
  width:64px; height:64px; border-radius:50%; background:#0E0E10; border:2px solid var(--accent);
  display:flex; align-items:center; justify-content:center; font-family:inherit;
  font-size:22px; font-weight:700; color:var(--accent); box-shadow:0 0 0 6px #0E0E10; }
.layerc__k{ font-size:13px; font-weight:700; letter-spacing:.01em; text-transform:none; color:var(--accent); margin:0 0 14px; }
.layerc__title{ font-size:clamp(22px,2.4vw,28px); font-weight:700; letter-spacing:-0.03em; line-height:1.18; color:#fff; margin:0 0 16px; white-space:pre-line; word-break:keep-all; }
.layerc__body{ font-size:16px; line-height:1.65; color:rgba(255,255,255,.62); margin:0 0 22px; word-break:keep-all; }
.layerc__chips{ display:flex; flex-wrap:wrap; gap:9px; }
.layerc__chips span{ font-size:13px; font-weight:600; letter-spacing:-0.01em; color:rgba(255,255,255,.82);
  padding:8px 15px; border:1px solid rgba(255,255,255,.16); border-radius:999px; }
.layerc__media{ align-self:stretch; min-height:200px; background:#0E0E10; border:1px solid rgba(255,255,255,.07);
  border-radius:16px; overflow:hidden; display:flex; align-items:center; justify-content:center; }
.layerc__media img{ width:100%; height:100%; object-fit:cover; }
.layerc__media--light{ background:#fff; }
.layerc__media img.contain{ object-fit:contain; padding:9%; }
@media (max-width:900px){
  .stack{ padding-left:0; } .stack::before{ display:none; }
  .layerc{ grid-template-columns:1fr; gap:28px; padding:32px 28px; }
  .layerc__node{ position:static; transform:none; margin-bottom:8px; box-shadow:none; }
  .layerc:hover{ transform:none; }
}

/* ───────────────────────────────────────────────────────────
   CONTACT — form + side info
   ─────────────────────────────────────────────────────────── */
.contactgrid{ width:var(--container); max-width:100%; margin:0 auto; display:grid;
  grid-template-columns:1.15fr .85fr; gap:56px; align-items:start; }
.cform{ background:#fff; border:0; border-radius:20px; box-shadow:0 1px 3px rgba(0,0,0,.05); padding:42px 44px 44px; }
.cform__row{ display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.field{ display:flex; flex-direction:column; gap:8px; margin-bottom:18px; }
.field label{ font-size:13px; font-weight:600; color:var(--ink); letter-spacing:-0.01em; }
.field label .req{ color:var(--accent); }
.field input, .field select, .field textarea{ font-family:inherit; font-size:15px; color:var(--ink);
  background:var(--paper); border:1px solid var(--line); border-radius:10px; padding:13px 15px; width:100%;
  transition:border-color .2s, box-shadow .2s; }
.field input::placeholder, .field textarea::placeholder{ color:var(--ink-faint, #9a9a9a); }
.field input:focus, .field select:focus, .field textarea:focus{ outline:none; border-color:var(--accent);
  box-shadow:0 0 0 3px rgba(15,143,206,.15); }
.field textarea{ resize:vertical; min-height:140px; }
.cform__submit{ display:inline-flex; align-items:center; gap:10px; padding:15px 34px; border:0; cursor:pointer;
  border-radius:999px; background:var(--accent); color:#fff; font-family:inherit; font-size:16px; font-weight:700;
  letter-spacing:-0.01em; transition:transform .2s, background-color .2s; margin-top:4px; }
.cform__submit:hover{ background:#1AA0E0; transform:translateY(-2px); }
.cform__submit .arr{ transition:transform .2s; }
.cform__submit:hover .arr{ transform:translateX(4px); }
.cform__note{ font-size:12px; line-height:1.6; color:var(--ink-soft); margin:18px 0 0; }
.cform__ok{ display:none; flex-direction:column; align-items:flex-start; gap:14px; padding:8px 0; }
.cform__ok .tick{ width:54px; height:54px; border-radius:50%; background:var(--accent-soft,#E8F4FB);
  display:flex; align-items:center; justify-content:center; }
.cform__ok .tick svg{ width:26px; height:26px; stroke:var(--accent); stroke-width:2; fill:none; }
.cform__ok h3{ font-size:24px; font-weight:700; letter-spacing:-0.02em; color:var(--ink); margin:0; }
.cform__ok p{ font-size:15px; line-height:1.6; color:var(--ink-soft); margin:0; max-width:42ch; word-break:keep-all; }
.cform.is-sent .cform__body{ display:none; }
.cform.is-sent .cform__ok{ display:flex; }

.cside{ display:flex; flex-direction:column; gap:14px; }
.cside__item{ border:0; border-radius:14px; padding:22px 24px; background:#fff; box-shadow:0 1px 3px rgba(0,0,0,.05); }
.cside__k{ font-size:12px; font-weight:700; letter-spacing:.01em; color:var(--accent); margin:0 0 6px; }
.cside__t{ font-size:16px; font-weight:600; letter-spacing:-0.01em; color:var(--ink); margin:0 0 8px; }
.cside__item p{ font-size:14px; line-height:1.6; color:var(--ink-soft); margin:0 0 10px; word-break:keep-all; }
.cside__mail{ font-size:14px; font-weight:600; color:var(--accent); text-decoration:none; }
.cside__mail:hover{ text-decoration:underline; }
.cside__hq{ background:#fff; }
.cside__hq .cside__t{ margin-bottom:6px; }
.cside__hq address{ font-style:normal; font-size:14px; line-height:1.7; color:var(--ink-soft); }
@media (max-width:900px){ .contactgrid{ grid-template-columns:1fr; gap:32px; } .cform__row{ grid-template-columns:1fr; } }

/* ───────────────────────────────────────────────────────────
   TECHNOLOGY — how it works + specs
   ─────────────────────────────────────────────────────────── */
.howto{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr);
  border:1px solid rgba(255,255,255,.12); border-radius:18px; overflow:hidden; }
.howstep{ padding:40px 36px 46px; border-left:1px solid rgba(255,255,255,.12); }
.howstep:first-child{ border-left:0; }
.howstep__n{ font-family:inherit; font-size:13px; font-weight:700; letter-spacing:.06em; color:var(--accent); margin:0 0 30px; }
.howstep__t{ font-size:20px; font-weight:600; letter-spacing:-0.02em; color:#fff; margin:0 0 12px; }
.howstep__d{ font-size:15px; line-height:1.6; color:rgba(255,255,255,.6); margin:0; word-break:keep-all; }
@media (max-width:820px){ .howto{ grid-template-columns:1fr; } .howstep{ border-left:0; border-top:1px solid rgba(255,255,255,.12); } .howstep:first-child{ border-top:0; } }

/* depth comparison */
.depthviz{ width:var(--container); max-width:100%; margin:48px auto 0; display:flex; flex-direction:column; gap:18px; }
.depthrow{ display:flex; flex-direction:column; gap:9px; }
.depthrow__top{ display:flex; justify-content:space-between; align-items:baseline; }
.depthrow__lab{ font-size:14px; color:rgba(255,255,255,.66); }
.depthrow__val{ font-family:inherit; font-size:15px; font-weight:700; color:#fff; white-space:nowrap; }
.depthrow__val.pos{ color:var(--accent); }
.depthbar{ height:12px; border-radius:999px; background:rgba(255,255,255,.1); overflow:hidden; }
.depthbar__fill{ height:100%; border-radius:999px; }
.depthbar__fill.neg{ background:rgba(255,255,255,.32); width:100%; }
.depthbar__fill.pos{ background:var(--accent); width:4.2%; }
.depthnote{ font-size:13px; color:rgba(255,255,255,.5); margin:6px 0 0; }

/* laser cross-section diagram */
.xsec{ width:var(--container); max-width:100%; margin:56px auto 0; }
.xsec svg{ width:100%; height:auto; display:block; }
.xsec .depthnote{ margin-top:22px; max-width:80ch; }
/* desktop shows the wide cross-section SVG; mobile shows a compact bar comparison (no horizontal scroll) */
.depthm{ display:none; }
@media (max-width:768px){
  .xsec{ display:none; }
  .depthm{ display:block; width:100%; margin-top:36px; }
  .depthm__row{ margin-bottom:22px; }
  .depthm__head{ display:flex; justify-content:space-between; align-items:baseline; gap:12px; margin-bottom:9px; }
  .depthm__k{ font-size:13px; font-weight:600; letter-spacing:.01em; color:rgba(255,255,255,.72); word-break:keep-all; }
  .depthm__v{ font-size:22px; font-weight:700; color:#fff; letter-spacing:-.02em; white-space:nowrap; }
  .depthm__track{ position:relative; height:16px; border-radius:999px; background:rgba(255,255,255,.10); overflow:hidden; }
  .depthm__fill{ position:absolute; left:0; top:0; bottom:0; border-radius:999px; }
  .depthm__fill--ap{ width:10.4%; background:var(--accent); }
  .depthm__fill--lim{ width:100%; background:rgba(255,255,255,.30); }
  .depthm__x{ margin:8px 0 0; font-size:18px; font-weight:700; color:#fff; letter-spacing:-.02em; }
  .depthm__x strong{ color:var(--accent); font-weight:700; }
  .depthm .depthnote{ margin-top:14px; }
}

/* spec table */
.spectable{ width:var(--container); max-width:100%; margin:0 auto; border-top:1px solid var(--line); }
.specrow{ display:grid; grid-template-columns:300px 1fr; gap:24px; padding:22px 4px; border-bottom:1px solid var(--line); align-items:baseline; }
.specrow dt{ font-size:14px; font-weight:600; color:var(--ink-soft); letter-spacing:.01em; margin:0; }
.specrow dd{ margin:0; font-family:inherit; font-size:17px; font-weight:600; color:var(--ink); letter-spacing:-0.01em; }
.specrow dd .unit{ color:var(--ink-soft); font-weight:500; font-size:.82em; margin-left:3px; }
@media (max-width:680px){ .specrow{ grid-template-columns:1fr; gap:6px; } }

/* big stat band (dark) */
.techstats{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr);
  gap:0; border:1px solid rgba(255,255,255,.12); border-radius:18px; overflow:hidden; }
.techstat{ padding:44px 32px; border-left:1px solid rgba(255,255,255,.12); }
.techstat:first-child{ border-left:0; }
.techstat__n{ font-family:inherit; font-size:clamp(36px,3.4vw,46px); font-weight:700; letter-spacing:-0.03em; line-height:1; color:#fff; }
.techstat__n .u{ font-size:.42em; color:var(--accent); margin-left:3px; font-weight:600; }
.techstat__l{ font-size:14px; line-height:1.5; color:rgba(255,255,255,.6); margin:16px 0 0; word-break:keep-all; }
@media (max-width:820px){ .techstats{ grid-template-columns:1fr 1fr; } .techstat:nth-child(3){ border-left:0; } }
@media (max-width:480px){ .techstats{ grid-template-columns:1fr; } .techstat{ border-left:0; border-top:1px solid rgba(255,255,255,.12); } .techstat:first-child{ border-top:0; } }

/* 4-col technical characteristics (light) */
.techchar{ width:var(--container); max-width:100%; margin:0 auto; display:grid; grid-template-columns:repeat(4,1fr); gap:0; border-top:1px solid var(--line); }
.techchar__col{ padding:34px 28px 0; border-left:1px solid var(--line); }
.techchar__col:first-child{ border-left:0; padding-left:0; }
.techchar__k{ font-family:inherit; font-size:13px; font-weight:700; color:var(--accent); margin:0 0 16px; }
.techchar__t{ font-size:18px; font-weight:600; letter-spacing:-0.02em; color:var(--ink); margin:0 0 10px; }
.techchar__d{ font-size:14px; line-height:1.6; color:var(--ink-soft); margin:0; word-break:keep-all; }
@media (max-width:820px){ .techchar{ grid-template-columns:1fr 1fr; } .techchar__col{ padding-left:28px; border-top:1px solid var(--line); margin-top:-1px; } .techchar__col:nth-child(odd){ border-left:0; padding-left:0; } }
@media (max-width:480px){ .techchar{ grid-template-columns:1fr; } .techchar__col{ border-left:0; padding-left:0; } }

/* ═══════════════════════════════════════════════════════════
   RESPONSIVE — tablet & phone
   Container is already fluid (max-width:calc(100% - 80px)); these
   tighten gutters, vertical rhythm, and the nav for small screens.
   ═══════════════════════════════════════════════════════════ */
@media (max-width:1024px){
  .section{ padding-top:96px; padding-bottom:96px; }
  /* hero headlines use white-space:pre for authored desktop line breaks;
     on tablet/mobile let them wrap naturally so long titles don't clip. */
  .hero__title{ white-space:normal; }
}
/* tablet: roomier side gutters so content doesn't hug the screen edges.
   56px blends into the auto-centering gutter that takes over at ~1136px. */
@media (min-width:769px) and (max-width:1135px){
  :root{ --gutter:56px; }
}
@media (max-width:768px){
  :root{ --gutter:24px; }
  /* nav: logo left, links right (no absolute-center overlap) */
  .nav{ justify-content:space-between; padding:0 24px; }
  .nav__inner{ width:auto; max-width:none; flex:0 0 auto; }
  .nav__lang{ display:none; }
  .section{ padding-top:80px; padding-bottom:80px; }
  .section--tight{ padding-top:64px; padding-bottom:64px; }
  .lvl-head{ margin-bottom:48px; }
  .big-feature{ padding-top:120px !important; padding-bottom:48px !important; }
  .bigcta{ padding-top:80px; padding-bottom:80px; }
}
@media (max-width:560px){
  :root{ --gutter:16px; }
  .nav{ padding:0 16px; }
  .nav__logo .wm{ font-size:18px; }
  .heroA{ min-height:auto; padding-bottom:24px; }
  .cform{ padding:28px 22px 30px; }
  .med-block{ padding:32px 24px; }
}

/* ───────────────────────────────────────────────────────────
   NEWS — empty state + request-info redirect
   ─────────────────────────────────────────────────────────── */
.news-empty{ width:var(--container); max-width:100%; margin:0 auto; background:#fff; border-radius:20px;
  box-shadow:0 1px 3px rgba(0,0,0,.05); padding:90px 56px; display:flex; flex-direction:column; align-items:center; text-align:center; gap:18px; }
.news-empty__icon{ width:60px; height:60px; border-radius:50%; background:var(--paper); display:flex; align-items:center; justify-content:center; }
.news-empty__icon svg{ width:28px; height:28px; stroke:var(--accent); stroke-width:1.6; fill:none; }
.news-empty__title{ font-size:clamp(22px,2.4vw,28px); font-weight:700; letter-spacing:-0.02em; color:var(--ink); margin:0; }
.news-empty__text{ font-size:16px; line-height:1.6; color:var(--ink-soft); margin:0; max-width:46ch; word-break:keep-all; }

.reqinfo{ width:var(--container); max-width:100%; margin:0 auto; background:#0E0E10; color:#fff; border-radius:20px;
  padding:56px 60px; display:flex; align-items:center; justify-content:space-between; gap:32px; flex-wrap:wrap; }
.reqinfo__text h3{ font-size:clamp(24px,2.6vw,30px); font-weight:700; letter-spacing:-0.03em; color:#fff; margin:0 0 10px; }
.reqinfo__text p{ font-size:16px; line-height:1.6; color:rgba(255,255,255,.64); margin:0; max-width:48ch; word-break:keep-all; }
.reqinfo__btn{ flex:none; display:inline-flex; align-items:center; gap:10px; padding:16px 34px; border-radius:999px;
  background:var(--accent); color:#fff; font-size:16px; font-weight:700; letter-spacing:-0.01em; text-decoration:none;
  transition:transform .2s, background-color .2s; }
.reqinfo__btn:hover{ background:#1AA0E0; transform:translateY(-2px); }
.reqinfo__btn .arr{ transition:transform .2s; }
.reqinfo__btn:hover .arr{ transform:translateX(4px); }
@media (max-width:680px){ .reqinfo{ flex-direction:column; align-items:flex-start; padding:40px 32px; } .news-empty{ padding:64px 32px; } }






