:root{
  --ink:#0B1220;
  --ink-2:#131E33;
  --paper:#F2EFE8;
  --paper-dim:#C9CEDA;
  --rule:#27334A;
  --alpine:#7FA8C9;
  --stamp:#B4472E;
  --gold:#C9A227;
  --sans:'Inter',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --serif:'Fraunces',Georgia,serif;
  --mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
}

*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body.epc-landing-page{
  background:var(--ink);
  color:var(--paper);
  font-family:var(--sans);
  font-size:17px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
}
body.epc-landing-page img{max-width:100%;display:block}
body.epc-landing-page a{color:inherit}
body.epc-landing-page button,body.epc-landing-page input{font:inherit}
.wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:99999;background:var(--paper);color:var(--ink);padding:10px 14px}
.skip-link:focus{left:8px}
.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute!important;width:1px;word-wrap:normal!important}
.epc-honeypot{position:absolute!important;left:-10000px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* ticker */
.ticker{border-bottom:1px solid var(--rule);background:#080D17;overflow:hidden;white-space:nowrap}
.ticker-track{display:inline-block;padding:9px 0;font-family:var(--mono);font-size:11px;letter-spacing:.14em;color:var(--paper-dim);animation:slide 42s linear infinite;will-change:transform}
.ticker-track span{padding:0 22px}
.ticker-track b{color:var(--alpine);font-weight:500}
@keyframes slide{from{transform:translateX(0)}to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.ticker-track{animation:none}}

/* nav */
.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:15px 0;border-bottom:1px solid var(--rule)}
.nav-logo{display:inline-flex;align-items:center;text-decoration:none}
.nav-logo img{height:70px;width:auto;object-fit:contain}
.nav-back{font-family:var(--mono);font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:var(--paper-dim);text-decoration:none;white-space:nowrap}
.nav-back:hover,.nav-back:focus-visible{color:var(--alpine)}

/* hero */
.hero{padding:76px 0 64px;border-bottom:1px solid var(--rule)}
.eyebrow{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--alpine);margin-bottom:22px}
.eyebrow::before{content:"▲ ";color:var(--gold)}
h1{font-family:var(--serif);font-weight:600;font-size:clamp(2.6rem,6.4vw,4.6rem);line-height:1.02;letter-spacing:-.02em;margin-bottom:26px;max-width:980px}
h1 em{font-style:normal;color:var(--alpine)}
.lede{font-size:clamp(1.05rem,2vw,1.3rem);color:var(--paper-dim);max-width:62ch;margin-bottom:18px}
.lede strong{color:var(--paper);font-weight:600}

/* forms */
.form-card{margin-top:38px;max-width:560px;border:1px solid var(--rule);background:var(--ink-2);padding:24px}
.form-label{font-family:var(--mono);font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--paper-dim);margin-bottom:12px}
.form-row{display:flex;gap:10px;flex-wrap:wrap;position:relative}
.form-row input[type="email"]{flex:1 1 240px;min-width:0;background:#080D17;border:1px solid var(--rule);color:var(--paper);font-family:var(--sans);font-size:16px;padding:14px 15px;border-radius:2px}
.form-row input::placeholder{color:#6C7891}
.form-row input:focus{outline:2px solid var(--alpine);outline-offset:1px;border-color:transparent}
.form-row input.is-invalid{border-color:var(--stamp)}
.form-row button{flex:0 0 auto;background:var(--paper);color:var(--ink);font-family:var(--sans);font-weight:600;font-size:15px;border:0;border-radius:2px;padding:14px 26px;cursor:pointer;transition:background .15s ease,opacity .15s ease}
.form-row button:hover{background:var(--alpine)}
.form-row button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.form-row button:disabled{cursor:wait;opacity:.7}
.form-note{font-family:var(--mono);font-size:11px;color:#6C7891;margin-top:12px;letter-spacing:.04em}
.form-note a{text-underline-offset:3px}
.form-msg{margin-top:14px;font-size:14px;display:none;border-left:2px solid var(--alpine);padding-left:12px;color:var(--alpine)}
.form-msg.err{border-color:var(--stamp);color:#E78A73}
.form-msg.show{display:block}

/* filings */
.filings{padding:64px 0;border-bottom:1px solid var(--rule)}
.sec-head{font-family:var(--mono);font-size:11px;letter-spacing:.2em;text-transform:uppercase;color:var(--paper-dim);margin-bottom:28px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(196px,1fr));gap:1px;background:var(--rule);border:1px solid var(--rule)}
.card{background:var(--ink);padding:20px 18px;transition:background .18s ease}
.card:hover{background:var(--ink-2)}
.card .code{font-family:var(--mono);font-weight:700;font-size:1.25rem;color:var(--alpine);letter-spacing:.02em;margin-bottom:8px}
.card .desc{font-size:13.5px;color:var(--paper-dim);line-height:1.5}

/* promise */
.promise{padding:72px 0;border-bottom:1px solid var(--rule)}
.pull{font-family:var(--serif);font-weight:400;font-size:clamp(1.5rem,3.4vw,2.2rem);line-height:1.32;letter-spacing:-.01em;max-width:22ch;border-left:3px solid var(--gold);padding-left:26px}
.pull span{color:var(--alpine)}

/* how */
.how{padding:72px 0;border-bottom:1px solid var(--rule)}
.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:32px;margin-top:8px}
.step-n{font-family:var(--mono);font-size:11px;letter-spacing:.16em;color:var(--gold);margin-bottom:10px}
.step h3{font-family:var(--serif);font-weight:600;font-size:1.2rem;margin-bottom:8px}
.step p{font-size:14.5px;color:var(--paper-dim)}

/* for you */
.foryou{padding:72px 0;border-bottom:1px solid var(--rule)}
.foryou ul{list-style:none;max-width:70ch}
.foryou li{padding:14px 0 14px 30px;border-bottom:1px solid var(--rule);position:relative;color:var(--paper-dim);font-size:15.5px}
.foryou li:last-child{border-bottom:0}
.foryou li::before{content:"▲";position:absolute;left:0;top:15px;color:var(--alpine);font-size:10px}

/* closing cta */
.close-cta{padding:80px 0;text-align:center}
.close-cta h2{font-family:var(--serif);font-weight:600;font-size:clamp(1.8rem,4vw,2.8rem);line-height:1.1;letter-spacing:-.015em;margin-bottom:14px}
.close-cta> .wrap>p{color:var(--paper-dim);margin-bottom:30px}
.close-cta .form-card{margin:0 auto;text-align:left}

/* footer */
footer{border-top:1px solid var(--rule);background:#080D17;padding:34px 0}
.foot-in{display:flex;justify-content:space-between;gap:18px;flex-wrap:wrap;font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:#6C7891}
.foot-in a{color:#6C7891;text-decoration:none}
.foot-in a:hover,.foot-in a:focus-visible{color:var(--alpine)}
.disclaimer{margin-top:20px;font-size:11px;line-height:1.7;color:#4E596E;max-width:78ch;font-family:var(--sans);letter-spacing:0}

@media(max-width:640px){
  .wrap{padding:0 18px}
  .nav{padding:12px 0}
  .nav-logo img{height:56px}
  .nav-back{font-size:9px;letter-spacing:.08em}
  .hero{padding:52px 0 48px}
  .form-card{padding:20px}
  .form-row button{flex:1 1 100%}
  .filings,.promise,.how,.foryou{padding:52px 0}
  .close-cta{padding:60px 0}
}
