/* ============================================================
   FundGuard Capital — design system
   Deep emerald / steel / luminous mint. Hex lattice. BEM-ish.
   ============================================================ */

:root{
  --pine-0:#06170f;
  --pine-1:#092018;
  --pine-2:#0c2b22;
  --pine-3:#10382c;
  --pine-4:#154736;

  --steel-hi:#c3d2cb;
  --steel:#93a8a0;
  --steel-lo:#5f736a;

  --mint:#5ef0ba;
  --mint-hi:#aaffdd;
  --mint-dim:rgba(94,240,186,.14);

  --ink:#edf6f1;
  --ink-2:#b7c8c0;
  --warn:#ffb39f;

  --line:rgba(147,168,160,.22);
  --line-soft:rgba(147,168,160,.12);

  --glass:linear-gradient(158deg, rgba(255,255,255,.055), rgba(255,255,255,.015));
  --glass-edge:rgba(170,255,221,.16);

  --disp:'Manrope',system-ui,-apple-system,sans-serif;
  --body:'Source Sans 3','Source Sans Pro',system-ui,-apple-system,sans-serif;

  --gutter:clamp(16px,2.4vw,28px);
  --sect:clamp(72px,10vw,128px);
  --r-lg:18px;
  --r-md:12px;

  --ease-out:cubic-bezier(.22,.61,.36,1);
}

/* ---------- reset & base ---------- */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
html,body{overflow-x:clip}
body{
  font-family:var(--body);
  font-size:1.0625rem;
  line-height:1.65;
  color:var(--ink);
  background:var(--pine-1);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
img,svg,canvas{display:block;max-width:100%}
a{color:var(--mint);text-decoration:none}
a:hover{color:var(--mint-hi)}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}
::selection{background:var(--mint);color:var(--pine-0)}
:focus-visible{
  outline:2px solid var(--mint);
  outline-offset:3px;
  box-shadow:0 0 0 7px rgba(94,240,186,.14);
  border-radius:4px;
}

h1,h2,h3{font-family:var(--disp);font-weight:800;letter-spacing:-.02em;line-height:1.12;text-wrap:balance}
h1{font-size:clamp(2.35rem,5.2vw,4.05rem)}
h2{font-size:clamp(1.8rem,3.4vw,2.7rem)}
h3{font-size:1.16rem;letter-spacing:-.01em}
p{max-width:68ch}

.skip-link{
  position:absolute;left:-9999px;top:0;z-index:200;
  background:var(--mint);color:var(--pine-0);
  padding:10px 18px;font-weight:600;border-radius:0 0 10px 0;
}
.skip-link:focus{left:0}

.shell{width:min(1200px,100% - 2*var(--gutter));margin-inline:auto}
.cols{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gutter)}

.kicker{
  font-family:var(--disp);font-weight:700;font-size:.78rem;
  letter-spacing:.22em;text-transform:uppercase;color:var(--mint);
  display:inline-flex;align-items:center;gap:10px;
}
.kicker::before{content:"";width:22px;height:2px;background:var(--mint);opacity:.75}
.section-head{margin-bottom:clamp(34px,5vw,58px);max-width:760px}
.section-head h2{margin-top:14px}
.section-head p{margin-top:14px;color:var(--ink-2);font-size:1.1rem}

/* hex lattice backdrop (honeycomb tile) */
.lattice{position:relative}
.lattice::before{
  content:"";position:absolute;inset:0;pointer-events:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='56' height='100' viewBox='0 0 56 100'%3E%3Cpath d='M28 66L0 50L0 16L28 0L56 16L56 50L28 66L28 100' fill='none' stroke='rgba(120,235,185,0.055)' stroke-width='1'/%3E%3Cpath d='M28 0L28 34L0 50L0 84L28 100L56 84L56 50L28 34' fill='none' stroke='rgba(120,235,185,0.055)' stroke-width='1'/%3E%3C/svg%3E");
  background-size:56px 100px;
  -webkit-mask-image:radial-gradient(ellipse 90% 80% at 50% 40%, #000 30%, transparent 78%);
  mask-image:radial-gradient(ellipse 90% 80% at 50% 40%, #000 30%, transparent 78%);
}
.lattice > *{position:relative;z-index:1}

/* ---------- reveal choreography ---------- */
[data-reveal]{
  opacity:0;
  transform:scale(.96) translateY(14px);
  transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);
  transition-delay:calc(var(--rv,0)*90ms);
  will-change:opacity,transform;
}
[data-reveal].is-in{opacity:1;transform:none}

/* ---------- header ---------- */
.site-head{
  position:sticky;top:0;z-index:100;
  background:rgba(9,32,24,.72);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);
  border-bottom:1px solid transparent;
  transition:border-color .3s,background .3s;
}
.site-head.is-scrolled{border-bottom-color:var(--line-soft);background:rgba(7,23,15,.86)}
.site-head__bar{
  display:flex;align-items:center;justify-content:space-between;
  gap:24px;min-height:74px;
}
.mark{display:inline-flex;align-items:center;gap:12px;color:var(--ink)}
.mark:hover{color:var(--ink)}
.mark__glyph{width:38px;height:38px;flex:none}
.mark__word{font-family:var(--disp);font-weight:800;font-size:1.06rem;letter-spacing:.12em}
.mark__word small{
  display:block;font-weight:700;font-size:.6rem;letter-spacing:.34em;
  color:var(--steel);margin-top:1px;
}
.site-nav{display:flex;align-items:center;gap:clamp(16px,2.4vw,34px)}
.site-nav__link{
  color:var(--ink-2);font-weight:600;font-size:.95rem;
  padding:6px 2px;border-bottom:2px solid transparent;
  transition:color .2s,border-color .2s;
}
.site-nav__link:hover{color:var(--mint-hi);border-bottom-color:var(--mint)}
.menu-btn{display:none;width:44px;height:44px;position:relative}
.menu-btn span,.menu-btn::before,.menu-btn::after{
  content:"";position:absolute;left:10px;right:10px;height:2px;
  background:var(--ink);border-radius:2px;transition:transform .25s,opacity .25s;
}
.menu-btn::before{top:15px}
.menu-btn span{top:21px}
.menu-btn::after{top:27px}
.site-head.nav-open .menu-btn::before{transform:translateY(6px) rotate(45deg)}
.site-head.nav-open .menu-btn span{opacity:0}
.site-head.nav-open .menu-btn::after{transform:translateY(-6px) rotate(-45deg)}

/* ---------- actions (buttons) ---------- */
.action{
  display:inline-flex;align-items:center;justify-content:center;gap:9px;
  font-family:var(--disp);font-weight:700;font-size:.98rem;
  padding:14px 26px;border-radius:11px;
  transition:transform .18s var(--ease-out),box-shadow .25s,background .2s,color .2s,border-color .2s;
  white-space:nowrap;
}
.action--solid{
  background:linear-gradient(140deg,var(--mint-hi),var(--mint));
  color:var(--pine-0);
  box-shadow:0 6px 24px -8px rgba(94,240,186,.45), inset 0 1px 0 rgba(255,255,255,.5);
}
.action--solid:hover{transform:translateY(-2px);box-shadow:0 12px 34px -8px rgba(94,240,186,.55);color:var(--pine-0)}
.action--line{
  border:1px solid var(--line);color:var(--ink);
  background:rgba(255,255,255,.02);
}
.action--line:hover{border-color:var(--mint);color:var(--mint-hi);transform:translateY(-2px)}
.action--sm{padding:10px 20px;font-size:.9rem}
.action .action__arrow{transition:transform .18s}
.action:hover .action__arrow{transform:translateX(3px)}

/* ---------- hero ---------- */
.hero{
  position:relative;overflow:clip;
  min-height:min(96vh,1020px);
  display:flex;align-items:center;
  background:
    radial-gradient(58% 82% at 50% 44%, rgba(94,240,186,.13), transparent 62%),
    radial-gradient(42% 55% at 82% 12%, rgba(96,220,255,.07), transparent 70%),
    radial-gradient(46% 60% at 12% 88%, rgba(21,71,54,.65), transparent 68%),
    radial-gradient(120% 100% at 50% 0%,var(--pine-3) 0%,var(--pine-2) 42%,var(--pine-0) 100%);
  padding:clamp(90px,12vh,150px) 0 clamp(70px,9vh,120px);
}
.hero__scene{position:absolute;inset:0;width:100%;height:100%}
.hero__vignette{
  position:absolute;inset:0;pointer-events:none;
  background:
    radial-gradient(95% 85% at 50% 46%, transparent 58%, rgba(6,23,15,.5) 100%),
    linear-gradient(to bottom, rgba(6,23,15,.28), transparent 20%, transparent 76%, var(--pine-1) 100%);
}
.hero__panel{
  position:relative;z-index:2;
  margin-inline:auto;max-width:1100px;text-align:center;
}
.hero__panel h1{
  font-size:clamp(3.4rem,7.5vw,6.5rem);
  line-height:1.02;letter-spacing:-.035em;
  margin:22px 0 26px;
  text-shadow:0 2px 26px rgba(6,23,15,.9), 0 0 90px rgba(6,23,15,.65);
}
.hero__panel h1 em{
  font-style:normal;color:var(--mint);white-space:nowrap;
  text-shadow:0 0 32px rgba(94,240,186,.55), 0 2px 26px rgba(6,23,15,.9);
}
.hero__panel .kicker{text-shadow:0 1px 14px rgba(6,23,15,.9)}
.hero__sub{
  color:var(--steel-hi);font-size:clamp(1.08rem,1.7vw,1.28rem);
  margin-inline:auto;max-width:60ch;
  text-shadow:0 1px 18px rgba(6,23,15,.95), 0 0 44px rgba(6,23,15,.8);
}
.hero__cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:32px}
.hero__fine{
  margin-top:26px;color:var(--steel);font-size:.88rem;letter-spacing:.02em;
  display:flex;flex-wrap:wrap;gap:8px 18px;justify-content:center;
}
.hero__fine span{display:inline-flex;align-items:center;gap:7px}
.hero__fine svg{width:14px;height:14px;color:var(--mint);flex:none}

/* ---------- stat band ---------- */
.stat-band{
  border-block:1px solid var(--line-soft);
  background:linear-gradient(to bottom,rgba(16,56,44,.35),rgba(9,32,24,.15));
  padding:clamp(34px,5vw,54px) 0;
}
.stat-band__grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
.stat{padding-left:22px;border-left:1px solid var(--line)}
.stat__num{
  font-family:var(--disp);font-weight:800;font-size:clamp(2rem,3.6vw,2.9rem);
  letter-spacing:-.02em;color:var(--ink);
  font-variant-numeric:tabular-nums;line-height:1.05;
}
.stat__num b{color:var(--mint);font-weight:800}
.stat__label{color:var(--steel);font-size:.92rem;margin-top:6px;line-height:1.4}

/* ---------- product grid ---------- */
.products{
  padding:var(--sect) 0;
  background:
    radial-gradient(56% 72% at 84% 4%, rgba(94,240,186,.075), transparent 60%),
    radial-gradient(48% 66% at 6% 92%, rgba(21,71,54,.55), transparent 66%),
    linear-gradient(180deg, var(--pine-1), var(--pine-1));
}
.pgrid{display:grid;grid-template-columns:repeat(12,1fr);gap:var(--gutter)}
.pcard{
  grid-column:span 3;
  position:relative;
  background:var(--glass);
  border:1px solid var(--line);
  border-radius:var(--r-lg);
  padding:26px 24px 24px;
  display:flex;flex-direction:column;gap:12px;
  transition:border-color .25s,box-shadow .25s;
  transform-style:preserve-3d;
  will-change:transform;
}
.pcard:hover{border-color:rgba(94,240,186,.4);box-shadow:0 24px 50px -24px rgba(0,0,0,.55),0 0 0 1px rgba(94,240,186,.12)}
.pcard--flag{
  grid-column:span 6;
  background:linear-gradient(150deg,rgba(21,71,54,.5),rgba(12,43,34,.34));
  padding:32px 30px 28px;
}
.pcard__tag{
  position:absolute;top:20px;right:20px;
  font-family:var(--disp);font-weight:700;font-size:.66rem;
  letter-spacing:.2em;text-transform:uppercase;
  color:var(--mint);border:1px solid rgba(94,240,186,.4);
  border-radius:999px;padding:5px 12px;background:rgba(94,240,186,.08);
}
.hex-chip{
  width:52px;height:56px;flex:none;
  clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%);
  background:linear-gradient(155deg,rgba(94,240,186,.22),rgba(94,240,186,.05));
  display:grid;place-items:center;
  border:0;
}
.hex-chip svg{width:24px;height:24px;color:var(--mint)}
.pcard h3{margin-top:4px}
.pcard__spec{
  display:flex;flex-wrap:wrap;gap:6px 16px;
  font-family:var(--disp);font-weight:700;font-size:.85rem;color:var(--mint-hi);
}
.pcard__spec span{display:inline-flex;align-items:center;gap:6px}
.pcard__spec svg{width:13px;height:13px;opacity:.8}
.pcard p{color:var(--ink-2);font-size:.98rem;flex:1}
.pcard__go{
  font-family:var(--disp);font-weight:700;font-size:.9rem;color:var(--mint);
  display:inline-flex;align-items:center;gap:7px;margin-top:2px;
}
.pcard__go svg{width:14px;height:14px;transition:transform .18s}
.pcard__go:hover svg{transform:translateX(3px)}

/* ---------- equipment spotlight ---------- */
.spotlight{
  padding:var(--sect) 0;
  background:linear-gradient(180deg,var(--pine-1),var(--pine-2) 30%,var(--pine-2) 70%,var(--pine-1));
  border-block:1px solid var(--line-soft);
}
.spotlight__grid{display:grid;grid-template-columns:repeat(12,1fr);gap:calc(var(--gutter)*1.6);align-items:center}
.spotlight__copy{grid-column:span 7}
.spotlight__copy h2{margin:14px 0 18px}
.spotlight__copy > p{color:var(--ink-2);margin-bottom:16px}
.spotlight__points{list-style:none;margin:22px 0 30px;display:grid;gap:14px}
.spotlight__points li{display:flex;gap:13px;align-items:flex-start;color:var(--ink-2)}
.spotlight__points svg{width:19px;height:19px;color:var(--mint);flex:none;margin-top:4px}
.spotlight__points b{color:var(--ink);font-weight:600}
.specsheet{
  grid-column:span 5;
  background:var(--glass);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border:1px solid var(--glass-edge);
  border-radius:var(--r-lg);
  overflow:hidden;
  box-shadow:0 30px 70px -30px rgba(0,0,0,.6);
}
.specsheet__head{
  display:flex;align-items:center;gap:12px;
  padding:20px 24px;border-bottom:1px solid var(--line-soft);
  background:rgba(94,240,186,.06);
}
.specsheet__head svg{width:20px;height:20px;color:var(--mint)}
.specsheet__head span{font-family:var(--disp);font-weight:700;font-size:.8rem;letter-spacing:.18em;text-transform:uppercase;color:var(--mint-hi)}
.specsheet dl{margin:0}
.specsheet__row{
  display:flex;justify-content:space-between;gap:18px;
  padding:15px 24px;border-bottom:1px solid var(--line-soft);
}
.specsheet__row:last-child{border-bottom:0}
.specsheet__row dt{color:var(--steel);font-size:.92rem}
.specsheet__row dd{font-family:var(--disp);font-weight:700;font-size:.95rem;color:var(--ink);text-align:right}

/* ---------- process rail ---------- */
.process{
  padding:var(--sect) 0;
  background:
    radial-gradient(52% 70% at 10% 8%, rgba(94,240,186,.06), transparent 60%),
    radial-gradient(60% 85% at 94% 90%, rgba(16,56,44,.6), transparent 66%);
}
.rail{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter);counter-reset:step}
.rail__step{position:relative;padding-top:26px}
.rail__step::before{
  content:"";position:absolute;top:9px;left:0;right:calc(-1*var(--gutter));
  height:1px;background:linear-gradient(to right,var(--mint) 0 18px,var(--line) 18px);
}
.rail__step:last-child::before{right:0}
.rail__step::after{
  content:"";position:absolute;top:4px;left:0;width:11px;height:11px;
  background:var(--mint);
  clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%);
  box-shadow:0 0 14px rgba(94,240,186,.7);
}
.rail__n{
  font-family:var(--disp);font-weight:800;font-size:.8rem;letter-spacing:.2em;
  color:var(--mint);text-transform:uppercase;
}
.rail__step h3{margin:8px 0 10px}
.rail__step p{color:var(--ink-2);font-size:.97rem}

/* ---------- industries ---------- */
.industries{
  padding:var(--sect) 0;
  background:linear-gradient(180deg,var(--pine-1),var(--pine-0));
  border-top:1px solid var(--line-soft);
}
.ind-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:var(--gutter)}
.ind-cell{
  border:1px solid var(--line-soft);border-radius:var(--r-md);
  padding:22px 20px;background:rgba(255,255,255,.018);
  transition:border-color .25s,background .25s;
}
.ind-cell:hover{border-color:rgba(94,240,186,.35);background:rgba(94,240,186,.04)}
.ind-cell .hex-chip{width:42px;height:46px;margin-bottom:14px}
.ind-cell .hex-chip svg{width:20px;height:20px}
.ind-cell h3{font-size:1.02rem}
.ind-cell p{color:var(--steel);font-size:.9rem;margin-top:6px;line-height:1.5}

/* ---------- FAQ ---------- */
.faq-sect{
  padding:var(--sect) 0;
  background:
    radial-gradient(50% 65% at 88% 6%, rgba(94,240,186,.055), transparent 60%),
    radial-gradient(55% 80% at 4% 96%, rgba(16,56,44,.55), transparent 66%),
    linear-gradient(180deg, var(--pine-0), var(--pine-1) 26%, var(--pine-1) 74%, var(--pine-0));
}
.qa-stack{max-width:820px;display:grid;gap:12px}
.qa{
  border:1px solid var(--line);border-radius:var(--r-md);
  background:rgba(255,255,255,.02);
  transition:border-color .25s;
}
.qa.is-open{border-color:rgba(94,240,186,.4)}
.qa__q{
  width:100%;display:flex;justify-content:space-between;align-items:center;gap:16px;
  text-align:left;padding:19px 22px;
  font-family:var(--disp);font-weight:700;font-size:1.04rem;color:var(--ink);
}
.qa__q:hover{color:var(--mint-hi)}
.qa__hex{
  flex:none;width:26px;height:28px;
  clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%);
  background:rgba(94,240,186,.12);
  display:grid;place-items:center;
  transition:background .25s;
}
.qa__hex::before{
  content:"";width:10px;height:10px;
  background:currentColor;color:var(--mint);
  clip-path:polygon(20% 42%,80% 42%,80% 58%,20% 58%);
  transition:clip-path .25s;
}
.qa:not(.is-open) .qa__hex::before{
  clip-path:polygon(42% 20%,58% 20%,58% 42%,80% 42%,80% 58%,58% 58%,58% 80%,42% 80%,42% 58%,20% 58%,20% 42%,42% 42%);
}
.qa__a{
  display:grid;grid-template-rows:0fr;
  transition:grid-template-rows .32s var(--ease-out);
}
.qa.is-open .qa__a{grid-template-rows:1fr}
.qa__a-inner{overflow:hidden}
.qa__a p{padding:0 22px 20px;color:var(--ink-2);font-size:1rem}

/* ---------- closer CTA ---------- */
.closer{
  position:relative;overflow:clip;
  padding:calc(var(--sect)*1.05) 0;
  background:
    radial-gradient(70% 120% at 50% 110%,rgba(94,240,186,.14),transparent 60%),
    linear-gradient(180deg,var(--pine-0),var(--pine-2));
  border-top:1px solid var(--line-soft);
  text-align:center;
}
.closer h2{font-size:clamp(2.1rem,4.4vw,3.4rem);margin-bottom:18px}
.closer p{margin-inline:auto;color:var(--ink-2);font-size:1.14rem;max-width:52ch}
.closer__cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:34px}
.closer__tel{margin-top:22px;color:var(--steel);font-size:.95rem}
.closer__tel a{font-weight:700;color:var(--mint-hi)}

/* ---------- footer ---------- */
.site-foot{
  background:
    radial-gradient(60% 42% at 50% 0%, rgba(94,240,186,.05), transparent 62%),
    linear-gradient(180deg, #081d13, var(--pine-0) 45%);
  border-top:1px solid var(--line-soft);
  padding:clamp(50px,7vw,80px) 0 34px;
  font-size:.95rem;
}
.site-foot__grid{display:grid;grid-template-columns:4fr 3fr 2fr 3fr;gap:calc(var(--gutter)*1.4)}
.site-foot__brand p{color:var(--steel);margin-top:16px;max-width:34ch}
.site-foot h3{
  font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;
  color:var(--steel);margin-bottom:16px;font-weight:700;
}
.site-foot ul{list-style:none;display:grid;gap:9px}
.site-foot ul a{color:var(--ink-2)}
.site-foot ul a:hover{color:var(--mint-hi)}
.site-foot address{font-style:normal;color:var(--ink-2);display:grid;gap:9px}
.site-foot address a{color:var(--ink-2)}
.site-foot address a:hover{color:var(--mint-hi)}
.site-foot__legal{
  margin-top:clamp(36px,5vw,54px);padding-top:26px;
  border-top:1px solid var(--line-soft);
  color:var(--steel-lo);font-size:.86rem;line-height:1.6;
}
.site-foot__legal strong{color:var(--steel)}
.site-foot__row{
  display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;
  margin-top:20px;color:var(--steel-lo);font-size:.85rem;
}
.site-foot__row a{color:var(--steel)}
.site-foot__row a:hover{color:var(--mint-hi)}

/* ---------- sub-page hero band ---------- */
.band{
  position:relative;
  padding:clamp(70px,9vw,110px) 0 clamp(44px,6vw,70px);
  background:radial-gradient(110% 130% at 50% -20%,var(--pine-3),var(--pine-1) 70%);
  border-bottom:1px solid var(--line-soft);
}
.band h1{margin-top:14px;font-size:clamp(2.1rem,4.4vw,3.3rem)}
.band p{color:var(--ink-2);margin-top:16px;font-size:1.12rem}

/* ---------- apply layout ---------- */
.apply-wrap{padding:clamp(44px,6vw,80px) 0 var(--sect)}
.apply-grid{display:grid;grid-template-columns:7fr 5fr;gap:calc(var(--gutter)*1.6);align-items:start}

.form-card{
  background:var(--glass);
  -webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);
  border:1px solid var(--glass-edge);
  border-radius:var(--r-lg);
  padding:clamp(26px,4vw,42px);
  box-shadow:0 30px 70px -34px rgba(0,0,0,.65);
}
.form-card__title{font-size:1.3rem;margin-bottom:6px}
.form-card__note{color:var(--steel);font-size:.92rem;margin-bottom:26px}
.field-pair{display:grid;grid-template-columns:1fr 1fr;gap:18px}
.field{margin-bottom:20px}
.field label{
  display:block;font-family:var(--disp);font-weight:700;font-size:.86rem;
  letter-spacing:.03em;color:var(--steel-hi);margin-bottom:8px;
}
.field label small{color:var(--steel-lo);font-weight:600}
.field input,.field select,.field textarea{
  width:100%;
  font:inherit;color:var(--ink);
  background:rgba(6,23,15,.55);
  border:1px solid var(--line);
  border-radius:10px;
  padding:13px 15px;
  transition:border-color .2s,box-shadow .2s;
  appearance:none;
}
.field select{
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='9' viewBox='0 0 14 9'%3E%3Cpath d='M1 1l6 6 6-6' fill='none' stroke='%235ef0ba' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 15px center;
  padding-right:42px;
}
.field textarea{min-height:110px;resize:vertical}
.field input::placeholder,.field textarea::placeholder{color:var(--steel-lo)}
.field input:focus,.field select:focus,.field textarea:focus{
  outline:none;border-color:var(--mint);
  box-shadow:0 0 0 4px rgba(94,240,186,.14);
}
.field.has-error input,.field.has-error select{border-color:var(--warn)}
.field__err{
  display:none;color:var(--warn);font-size:.86rem;margin-top:7px;line-height:1.45;
}
.field.has-error .field__err{display:block}
.form-card .action{width:100%;margin-top:6px}
.form-card__fine{color:var(--steel-lo);font-size:.82rem;margin-top:16px;text-align:center}

/* honeypot — never visible to humans */
.hp-field{position:absolute;left:-9999px;top:auto;width:1px;height:1px;overflow:hidden}

.sent-state{display:none;text-align:center;padding:34px 10px}
.sent-state.is-shown{display:block}
.sent-state .hex-chip{width:66px;height:72px;margin:0 auto 22px}
.sent-state .hex-chip svg{width:30px;height:30px}
.sent-state h3{font-size:1.45rem;margin-bottom:10px}
.sent-state p{color:var(--ink-2);margin-inline:auto}

.next-steps{display:grid;gap:14px}
.next-steps__item{
  display:flex;gap:16px;align-items:flex-start;
  border:1px solid var(--line-soft);border-radius:var(--r-md);
  padding:18px 20px;background:rgba(255,255,255,.018);
}
.next-steps__n{
  flex:none;width:34px;height:37px;
  clip-path:polygon(50% 0,96% 25%,96% 75%,50% 100%,4% 75%,4% 25%);
  background:rgba(94,240,186,.14);
  display:grid;place-items:center;
  font-family:var(--disp);font-weight:800;font-size:.9rem;color:var(--mint);
}
.next-steps__item h3{font-size:1rem}
.next-steps__item p{color:var(--steel);font-size:.9rem;margin-top:4px}
.aside-note{
  margin-top:22px;border:1px solid var(--line-soft);border-radius:var(--r-md);
  padding:18px 20px;color:var(--steel);font-size:.9rem;
  background:rgba(94,240,186,.04);
}
.aside-note b{color:var(--ink-2)}

/* ---------- legal prose ---------- */
.prose-wrap{padding:clamp(44px,6vw,80px) 0 var(--sect)}
.prose{max-width:760px}
.prose h2{font-size:1.35rem;margin:38px 0 12px}
.prose p{color:var(--ink-2);margin-bottom:14px}
.prose ul{margin:0 0 14px 22px;color:var(--ink-2)}
.prose li{margin-bottom:7px}
.prose .stamp{color:var(--steel-lo);font-size:.9rem;margin-bottom:8px}

/* ---------- 404 ---------- */
.lost{
  min-height:78vh;display:flex;align-items:center;text-align:center;
  padding:80px 0;
}
.lost__code{
  font-family:var(--disp);font-weight:800;font-size:clamp(5rem,14vw,9rem);
  line-height:1;color:transparent;
  -webkit-text-stroke:2px rgba(94,240,186,.55);
  letter-spacing:.04em;
}
.lost h1{font-size:clamp(1.6rem,3.4vw,2.4rem);margin:18px 0 12px}
.lost p{margin-inline:auto;color:var(--ink-2)}
.lost__cta{display:flex;flex-wrap:wrap;gap:14px;justify-content:center;margin-top:30px}

/* ---------- narrow single-purpose page (unsubscribe) ---------- */
.solo{min-height:70vh;display:flex;align-items:center;padding:90px 0}
.solo__card{max-width:520px;margin-inline:auto;width:100%}

/* ============================================================
   Responsive
   ============================================================ */
@media (max-width:1024px){
  .pcard{grid-column:span 6}
  .pcard--flag{grid-column:span 6}
  .spotlight__copy{grid-column:span 12}
  .specsheet{grid-column:span 12;max-width:560px}
  .rail{grid-template-columns:repeat(2,1fr);row-gap:38px}
  .rail__step:nth-child(2)::before{right:0}
  .ind-grid{grid-template-columns:repeat(2,1fr)}
  .apply-grid{grid-template-columns:1fr}
  .site-foot__grid{grid-template-columns:1fr 1fr}
}
@media (max-width:768px){
  body{font-size:1rem}
  .menu-btn{display:block}
  .site-nav{
    position:absolute;top:100%;left:0;right:0;
    flex-direction:column;align-items:stretch;gap:0;
    background:rgba(7,23,15,.97);
    -webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);
    border-bottom:1px solid var(--line-soft);
    padding:10px var(--gutter) 22px;
    display:none;
  }
  .site-head.nav-open .site-nav{display:flex}
  .site-nav__link{padding:13px 4px;border-bottom:1px solid var(--line-soft);font-size:1.05rem}
  .site-nav .action{margin-top:16px;justify-content:center}
  .hero{min-height:0;padding-top:76px}
  .hero__panel{text-align:left}
  .hero__cta,.hero__fine{justify-content:flex-start}
  .stat-band__grid{grid-template-columns:1fr 1fr;row-gap:28px}
  .pcard,.pcard--flag{grid-column:span 12}
  .rail{grid-template-columns:1fr}
  .rail__step::before{right:0}
  .ind-grid{grid-template-columns:1fr 1fr;gap:12px}
  .ind-cell{padding:16px 14px}
  .field-pair{grid-template-columns:1fr}
  .site-foot__grid{grid-template-columns:1fr;gap:34px}
  .closer{text-align:left}
  .closer__cta{justify-content:flex-start}
  .closer p{margin-inline:0}
}

/* ============================================================
   Reduced motion — kill all animation & transforms
   ============================================================ */
@media (prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{
    animation:none !important;
    transition:none !important;
  }
  [data-reveal]{opacity:1;transform:none}
  .pcard{transform:none !important}
}
