:root{--navy:#0D2540;--navy-deep:#03112D;--gold:#E4A75E;--gold-soft:#F0BE6D;--text:#E8ECF2;--muted:#A9B4C4;--rule:rgba(228,167,94,.28);
--font-display:Georgia,"Times New Roman",serif;--font-body:system-ui,-apple-system,"Segoe UI",Roboto,sans-serif}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;color:var(--text);font:1.0625rem/1.65 var(--font-body);background:var(--navy);
 background-image:linear-gradient(rgba(228,167,94,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(228,167,94,.035) 1px,transparent 1px);background-size:64px 64px}
.wrap{max-width:65rem;margin:0 auto;padding:0 1.5rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:var(--gold);color:var(--navy);padding:.5rem 1rem;z-index:9}
header.wrap{padding-top:2.25rem;padding-bottom:.5rem}
.logo{display:block;width:min(15rem,68vw);height:auto}
.hero{display:grid;gap:2.5rem;align-items:center;padding-top:clamp(3.5rem,9vw,7rem);padding-bottom:clamp(3.5rem,9vw,6rem)}
@media(min-width:56rem){.hero{grid-template-columns:1.25fr 1fr}}
.eyebrow{margin:0 0 1.25rem;text-transform:uppercase;letter-spacing:.22em;font-size:.75rem;color:var(--gold)}
h1{font:400 clamp(2.6rem,8vw,4.8rem)/1.05 var(--font-display);margin:0 0 1.5rem;letter-spacing:-.015em}
.lede{max-width:34rem;font-size:1.2rem;margin:0}
.frame{width:100%;max-width:26rem;height:auto;justify-self:center}
h2{font:400 .8rem/1.4 var(--font-body);text-transform:uppercase;letter-spacing:.2em;color:var(--gold);margin:0 0 1rem}
h3{font:400 1.5rem/1.2 var(--font-display);margin:.4rem 0 .5rem}
.lps,.contact{padding-top:clamp(3rem,7vw,5rem);padding-bottom:clamp(3rem,7vw,5rem);border-top:1px solid var(--rule)}
.lps-intro{max-width:38rem;font-size:1.2rem;margin:0 0 2.5rem}
.stages{list-style:none;margin:0;padding:0;display:grid;gap:2rem}
@media(min-width:48rem){.stages{grid-template-columns:repeat(3,1fr);gap:3rem}}
.stages li{border-top:1px solid var(--rule);padding-top:1rem}
.stages p{margin:0;color:var(--muted)}
.n{font-size:.75rem;letter-spacing:.2em;color:var(--gold)}
.band{background:var(--navy-deep);border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);padding:clamp(3rem,7vw,5rem) 0}
.two{display:grid;gap:1rem}
@media(min-width:48rem){.two{grid-template-columns:1fr 2fr;gap:3rem}}
.pull{font:400 clamp(1.5rem,3.5vw,2rem)/1.3 var(--font-display);margin:0 0 1rem}
.band p:not(.pull){color:var(--muted);max-width:34rem;margin:0}
.contact p{margin:0 0 .75rem;max-width:38rem}
.mail{font:400 clamp(1.4rem,4vw,1.9rem)/1.3 var(--font-display);margin-top:1rem!important}
a{color:var(--gold-soft);text-underline-offset:.2em}a:hover{color:#fff}
a:focus-visible{outline:2px solid var(--gold);outline-offset:3px}
.small{font-size:.875rem;color:var(--muted)}
footer.wrap{padding-top:1.75rem;padding-bottom:2.5rem;border-top:1px solid var(--rule)}
footer p{margin:0 0 .5rem;max-width:40rem}
.form{margin-top:1.5rem;max-width:38rem;display:grid;gap:1rem}
.form .row{display:grid;gap:1rem}
@media(min-width:40rem){.form .row{grid-template-columns:1fr 1fr}}
.form label{display:block;font-size:.875rem;color:var(--muted)}
.form label input,.form label select,.form label textarea{margin-top:.35rem}
.opt{opacity:.8}
.form input,.form select,.form textarea{font:inherit;font-size:1rem;color:var(--text);background:rgba(3,17,45,.6);border:1px solid var(--rule);border-radius:2px;padding:.7rem .8rem;width:100%}
.form select{appearance:auto}
.form input:focus-visible,.form select:focus-visible,.form textarea:focus-visible{outline:2px solid var(--gold);outline-offset:1px}
.hp{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.form button{justify-self:start;font:inherit;letter-spacing:.12em;text-transform:uppercase;font-size:.8rem;background:var(--gold);color:var(--navy-deep);border:0;padding:.9rem 1.8rem;cursor:pointer}
.form button:hover{background:var(--gold-soft)}
.form button:disabled{opacity:.6;cursor:wait}
.form button:focus-visible{outline:2px solid #fff;outline-offset:3px}
.status{min-height:1.4em;margin:0;color:var(--gold-soft);font-size:.9rem}
.thanks{padding-top:6rem;padding-bottom:6rem}
