:root {
  --deep:#032f27;
  --deepest:#011b16;
  --green:#075a43;
  --mint:#36e2a2;
  --gold:#ffd45a;
  --gold-pale:#fff1a7;
  --cream:#fff9e9;
  --muted:#b7cdc4;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;
  color-scheme:dark;
}

* { box-sizing:border-box }
html { min-width:280px; scroll-behavior:smooth; background:var(--deepest) }
body { min-width:280px; margin:0; padding-bottom:76px; color:white; background:var(--deepest); font-size:16px; line-height:1.45 }
a { color:inherit; text-decoration:none }
img { display:block; max-width:100% }
h1,h2,h3,p,figure { margin:0 }
h1,h2 { line-height:.87; letter-spacing:-.068em }
.skip-link { position:fixed; z-index:100; left:12px; top:-60px; padding:9px 12px; color:var(--deep); background:var(--gold); font-weight:900 }
.skip-link:focus { top:10px }
a:focus-visible { outline:3px solid white; outline-offset:4px }

.site-header {
  position:fixed;
  z-index:50;
  top:0;
  left:0;
  right:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  min-height:66px;
  padding:9px max(14px,env(safe-area-inset-left)) 9px max(14px,env(safe-area-inset-right));
  background:linear-gradient(180deg,#011b16f5 0,#011b16b8 72%,transparent);
}
.brand { display:flex; align-items:center; gap:9px; font-size:.8rem; font-weight:950; letter-spacing:.035em; white-space:nowrap }
.brand b { color:var(--gold) }
.brand-mark { display:grid; place-items:center; width:37px; height:39px; color:var(--gold-pale); border:2px solid var(--gold); border-radius:9px; font-size:.84rem; font-weight:950 }
.header-cta { padding:10px 16px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#f4ba1e); border:1px solid #fff2a8; font-size:.66rem; font-weight:950; letter-spacing:.08em; box-shadow:0 10px 30px #0008 }

.hero { position:relative; min-height:100svh; overflow:hidden; isolation:isolate }
.hero>img,.hero-shade { position:absolute; z-index:-2; inset:0; width:100%; height:100% }
.hero>img { object-fit:cover; object-position:center }
.hero-shade { z-index:-1; background:linear-gradient(180deg,#011c17e8 0,#011c17b0 29%,transparent 52%,#011b1682 72%,#011712fa 100%) }
.hero-copy { min-height:100svh; display:flex; flex-direction:column; align-items:flex-start; padding:12.5vh 19px 170px }
.kicker { color:#ffe17b; font-size:.63rem; font-weight:950; letter-spacing:.15em }
.hero h1 { max-width:8ch; margin-top:16px; font-size:clamp(3.6rem,18vw,5.2rem); font-weight:950; text-shadow:0 5px 28px #00130fee }
.hero h1 em,.section-heading h2 em,.confidence h2 em,.closing h2 em { color:var(--gold); font-style:normal }
.hero-copy>p:last-of-type { max-width:29ch; margin-top:19px; color:#e7f0ec; font-size:.9rem; font-weight:700 }
.gold-cta { display:flex; align-items:center; justify-content:center; width:100%; min-height:58px; margin-top:25px; padding:15px 18px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#ffc52c 55%,#eaa500); border:1px solid #fff1a9; font-size:.77rem; font-weight:950; letter-spacing:.045em; text-align:center; box-shadow:0 18px 42px #000a,0 0 32px #ffc42f38 }
.hero-copy .gold-cta { width:min(100%,350px) }
.hero-trust { position:absolute; left:14px; right:14px; bottom:88px; display:grid; grid-template-columns:1fr 1fr 1fr; border:1px solid #e8c25575; background:#02261fdf; backdrop-filter:blur(10px) }
.hero-trust span { display:grid; place-items:center; min-height:54px; padding:8px 5px; color:#fff0aa; border-right:1px solid #e8c25550; text-align:center; font-size:.51rem; font-weight:900; letter-spacing:.045em }
.hero-trust span:last-child { border:0 }

.section { padding:72px 18px }
.section-heading h2 { margin-top:17px; font-size:clamp(3rem,14.3vw,4.4rem); font-weight:950 }
.section-heading>p:last-child { max-width:35ch; margin-top:22px; color:var(--muted); font-size:.92rem; font-weight:650 }
.section-heading.compact { margin-bottom:33px }
.ownership { background:radial-gradient(circle at 100% 0,#0b654b 0,transparent 36%),#053b2f }
.money-statement { margin-top:46px; padding:31px 24px; color:var(--deepest); background:linear-gradient(145deg,#fff3ad,#efb51d); box-shadow:0 20px 55px #001d176e }
.money-statement small { color:#604500; font-size:.6rem; font-weight:950; letter-spacing:.14em }
.money-statement strong { display:block; margin-top:9px; font-size:clamp(4.2rem,21vw,6rem); line-height:.76; letter-spacing:-.09em }
.money-statement strong span { font-size:.3em; letter-spacing:-.04em }
.money-statement p { max-width:28ch; margin-top:22px; color:#5f490f; font-size:.76rem; font-weight:750 }

.flow { color:var(--deepest); background:var(--cream) }
.flow .kicker,.flow .section-heading h2 em { color:#a97400 }
.flow-visual { position:relative; min-height:510px; overflow:hidden; border-radius:22px; box-shadow:0 24px 65px #0a392d2e }
.flow-visual>img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center top }
.flow-visual:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg,transparent 60%,#011c17da 88%,#011813fb 100%) }
.flow-visual figcaption { position:absolute; z-index:2; left:13px; right:13px; bottom:18px; display:grid; grid-template-columns:1fr 1fr 1fr; color:#ffe383; text-align:center; font-size:.55rem; font-weight:950; letter-spacing:.06em }
.flow-visual figcaption span { padding:7px 3px; border-right:1px solid #f4d66c63 }
.flow-visual figcaption span:last-child { border:0 }
.flow-steps { display:grid; gap:9px; margin:14px 0 0; padding:0; list-style:none }
.flow-steps li { display:grid; grid-template-columns:56px 1fr; gap:13px; align-items:center; min-height:108px; padding:16px; background:white; border:1px solid #0b4c3d20; box-shadow:0 12px 28px #0b372c12 }
.flow-steps li>span { color:#bd8709; font-size:1.85rem; font-weight:950; letter-spacing:-.08em }
.flow-steps strong { font-size:.82rem }
.flow-steps p { margin-top:6px; color:#65796f; font-size:.74rem }

.security { position:relative; overflow:hidden; background:radial-gradient(circle at 50% 8%,#0b7455 0,transparent 42%),#023228 }
.security:before { content:""; position:absolute; inset:0; opacity:.08; background:repeating-linear-gradient(90deg,transparent 0 59px,#f7d466 60px) }
.security>* { position:relative }
.security-panel { display:grid; gap:10px }
.security-panel article { min-height:150px; padding:23px 21px; border:1px solid #dfbd5d66; background:linear-gradient(145deg,#07503dce,#01251f); box-shadow:0 17px 40px #00181272 }
.security-panel article>span { color:var(--gold); font-size:1.7rem; font-weight:950; letter-spacing:-.08em }
.security-panel h3 { margin-top:15px; color:#fff1a0; font-size:.9rem; letter-spacing:.04em }
.security-panel p { max-width:31ch; margin-top:8px; color:#aec6bc; font-size:.76rem }

.confidence { color:var(--deepest); background:linear-gradient(145deg,#fff5bb,#efb51d) }
.confidence .kicker { color:#725200 }
.confidence h2 { margin-top:17px; font-size:clamp(4rem,20vw,6.2rem); font-weight:950 }
.confidence h2 em { color:#087354 }
.confidence-line { display:flex; align-items:center; gap:10px; margin-top:31px; color:#4d3a09; font-size:.66rem; font-weight:950; letter-spacing:.08em }
.confidence-line i { flex:1; height:2px; background:#9b760f80 }
.confidence .gold-cta { color:white; background:var(--deep); border-color:#0b5b48; box-shadow:0 18px 40px #72500042 }

.closing { position:relative; min-height:820px; overflow:hidden; isolation:isolate }
.closing>img,.closing-shade { position:absolute; z-index:-2; inset:0; width:100%; height:100% }
.closing>img { object-fit:cover; object-position:center }
.closing-shade { z-index:-1; background:linear-gradient(180deg,#011c1778 0,transparent 38%,#011a15d4 69%,#011611fc 100%) }
.closing-copy { min-height:820px; display:flex; flex-direction:column; justify-content:flex-end; padding:70px 18px 92px }
.closing h2 { margin-top:17px; font-size:clamp(3.8rem,18vw,5.5rem); font-weight:950 }
.closing-copy>p:not(.kicker) { max-width:29ch; margin-top:18px; color:#d5e3dd; font-size:.88rem; font-weight:700 }
.closing small { margin-top:14px; color:#a7bdb4; font-size:.56rem }
footer { display:grid; gap:19px; padding:32px 18px; color:#8fa99f; background:#011611; font-size:.62rem }

.mobile-cta { position:fixed; z-index:60; left:0; right:0; bottom:0; display:grid; gap:2px; padding:7px 12px calc(6px + env(safe-area-inset-bottom)); background:#011e19f2; box-shadow:0 -12px 32px #00100ca8 }
.mobile-cta a { min-height:46px; padding:13px; color:var(--deepest); background:linear-gradient(135deg,var(--gold-pale),#efb11a); text-align:center; font-size:.75rem; font-weight:950; letter-spacing:.04em }
.mobile-cta span { color:#9eb7ad; text-align:center; font-size:.51rem }

@media(min-width:760px) {
  body { padding-bottom:0 }
  .site-header { min-height:80px; padding-inline:4vw }
  .brand { font-size:1rem }
  .brand-mark { width:44px; height:46px; font-size:1.05rem }
  .header-cta { min-width:150px; font-size:.74rem }
  .hero>img { object-position:center 42% }
  .hero-shade { background:linear-gradient(90deg,#011b16f2 0,#011b16c3 30%,transparent 58%),linear-gradient(180deg,transparent 55%,#011713c8 100%) }
  .hero-copy { justify-content:center; padding:110px 7vw 150px }
  .hero h1 { font-size:clamp(5rem,7.5vw,8rem) }
  .hero-copy>p:last-of-type { font-size:1.05rem }
  .hero-trust { left:4vw; right:4vw; bottom:25px }
  .section { padding:110px max(7vw,calc((100vw - 1320px)/2)) }
  .section-heading h2 { font-size:clamp(4.6rem,6.7vw,7.4rem) }
  .ownership { display:grid; grid-template-columns:1.2fr .8fr; align-items:end; gap:70px }
  .money-statement { margin:0 }
  .flow-visual { min-height:760px }
  .flow-steps { grid-template-columns:1fr 1fr 1fr }
  .flow-steps li { grid-template-columns:70px 1fr; min-height:140px }
  .security-panel { grid-template-columns:1fr 1fr 1fr }
  .security-panel article { min-height:210px }
  .confidence { text-align:center }
  .confidence h2 { font-size:clamp(5.4rem,8vw,8.8rem) }
  .confidence-line { width:min(760px,100%); margin-inline:auto }
  .confidence .gold-cta { width:420px; margin-inline:auto }
  .closing { min-height:900px }
  .closing>img { object-position:center 50% }
  .closing-copy { min-height:900px; padding:120px 7vw }
  .closing h2 { font-size:clamp(5rem,7vw,7.8rem) }
  .closing .gold-cta { max-width:420px }
  footer { grid-template-columns:auto 1fr; align-items:center; padding:35px 5vw }
  .mobile-cta { display:none }
}

@media(max-width:340px) {
  .brand { font-size:.7rem }
  .brand-mark { width:34px; height:36px }
  .header-cta { padding-inline:10px }
  .hero-copy { padding-inline:15px }
  .hero h1 { font-size:3.25rem }
  .section { padding-inline:15px }
}

[data-landing-cta][aria-disabled="true"] { cursor:wait; opacity:.75 }
[data-landing-cta].is-loading::before { content:""; display:inline-block; width:1em; height:1em; margin-right:.6em; vertical-align:-.15em; border:2px solid currentColor; border-right-color:transparent; border-radius:50%; animation:cta-spin .7s linear infinite }
@keyframes cta-spin { to { transform:rotate(360deg) } }

@media(prefers-reduced-motion:reduce) {
  [data-landing-cta].is-loading::before { animation:none }
  html { scroll-behavior:auto }
}
