@font-face { font-family: "DeclaSure Sans"; src: url("assets/declasure-brand/fonts/IBMPlexSans-normal-100-700-latin-ext.woff2") format("woff2"); font-weight: 100 700; font-display: swap; }
@font-face { font-family: "DeclaSure Serif"; src: url("assets/declasure-brand/fonts/Fraunces-normal-300-900-latin-ext.woff2") format("woff2"); font-weight: 300 900; font-display: swap; }
:root { --ink:#17161b; --petrol:#10242e; --teal:#0f5d63; --teal-dark:#0d3f46; --muted:#5f737b; --cream:#f7f5ef; --paper:#fff; --gold:#d8bf84; --red:#b62e1e; --green:#25784a; --line:#cbc8be; --shadow:0 18px 48px rgba(16,36,46,.11); color-scheme:light; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--cream); color:var(--ink); font:400 1rem/1.55 "DeclaSure Sans",system-ui,sans-serif; }
body::before { content:""; display:block; height:.35rem; background:linear-gradient(90deg,var(--teal-dark),var(--teal),var(--gold)); }
a { color:inherit; text-underline-offset:.25em; }
button,input { font:inherit; }
.launch-skip { position:fixed; left:1rem; top:-5rem; z-index:100; padding:.7rem 1rem; background:var(--paper); border:2px solid var(--ink); }
.launch-skip:focus { top:1rem; }
.launch-header { position:sticky; top:0; z-index:20; display:flex; align-items:center; justify-content:space-between; gap:1.5rem; min-height:4.8rem; padding:.8rem clamp(1rem,4vw,4rem); background:rgba(255,255,255,.97); border-bottom:1px solid var(--line); }
.launch-brand img { display:block; width:min(12rem,38vw); height:auto; }
.launch-nav { display:flex; align-items:center; flex-wrap:wrap; gap:.35rem 1.15rem; }
.launch-nav a { font-weight:600; text-decoration:none; padding:.55rem .15rem; border-bottom:2px solid transparent; }
.launch-nav a:hover,.launch-nav a:focus-visible,.launch-nav a[aria-current="page"] { border-bottom-color:var(--red); }
.launch-nav__action,.launch-button { display:inline-flex; align-items:center; justify-content:center; min-height:2.8rem; padding:.68rem 1rem; border:1px solid var(--ink); background:var(--ink); color:#fff; font-weight:700; text-decoration:none; cursor:pointer; }
.launch-button--secondary { background:var(--paper); color:var(--ink); }
.launch-button[aria-disabled="true"],button:disabled { opacity:.58; cursor:not-allowed; }
.launch-shell { width:min(1180px,calc(100% - 2rem)); margin-inline:auto; }
.launch-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(20rem,.75fr); gap:clamp(2rem,6vw,6rem); align-items:center; min-height:34rem; padding-block:clamp(4rem,9vw,8rem); }
.launch-eyebrow { margin:0 0 .75rem; color:var(--teal); font-size:.78rem; font-weight:800; letter-spacing:.11em; text-transform:uppercase; }
h1,h2,h3 { font-family:"DeclaSure Serif",Georgia,serif; line-height:1.08; letter-spacing:-.025em; }
h1 { max-width:13ch; margin:.1rem 0 1.2rem; font-size:clamp(2.8rem,7vw,5.7rem); }
h1 em { color:var(--red); }
h2 { margin:.2rem 0 1rem; font-size:clamp(2rem,4.2vw,3.7rem); }
h3 { margin:.1rem 0 .65rem; font-size:1.45rem; }
.launch-lead { max-width:63ch; color:#3d3b41; font-size:clamp(1.08rem,1.8vw,1.3rem); }
.launch-actions { display:flex; gap:.75rem; flex-wrap:wrap; margin-top:1.7rem; }
.launch-trust { padding:1.5rem; background:var(--paper); border-top:5px solid var(--ink); box-shadow:var(--shadow); }
.launch-trust ul { margin:1rem 0 0; padding-left:1.25rem; }
.launch-section { padding-block:clamp(3.5rem,7vw,6.5rem); border-top:1px solid var(--line); }
.launch-section__head { display:flex; align-items:end; justify-content:space-between; gap:2rem; margin-bottom:2rem; }
.launch-section__head p { max-width:54ch; margin:0; color:var(--muted); }
.launch-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.launch-card { min-width:0; padding:1.25rem; background:var(--paper); border:1px solid var(--line); border-top:3px solid var(--ink); }
.launch-card p { color:#494750; }
.launch-card details { margin-top:1rem; padding-top:.75rem; border-top:1px solid var(--line); }
.launch-card summary { cursor:pointer; font-weight:700; }
.launch-card ul { padding-left:1.2rem; }
.launch-status { display:inline-flex; align-items:center; gap:.4rem; padding:.18rem .48rem; border:1px solid currentColor; font-size:.76rem; font-weight:800; letter-spacing:.04em; text-transform:uppercase; }
.launch-status::before { content:""; width:.48rem; height:.48rem; background:currentColor; }
.launch-status--available { color:var(--green); }
.launch-status--in_progress { color:#8c6100; }
.launch-status--coming_soon { color:var(--muted); }
.launch-plan { display:flex; flex-direction:column; min-height:25rem; }
.launch-plan__price { margin:.5rem 0; font-family:"DeclaSure Serif",Georgia,serif; font-size:2.5rem; }
.launch-plan__price small { font:400 .9rem "DeclaSure Sans",sans-serif; color:var(--muted); }
.launch-plan .launch-button { margin-top:auto; }
.launch-notice { padding:1rem 1.2rem; background:#fff8e5; border-left:4px solid #8c6100; }
.launch-notice--danger { background:#fff3f0; border-left-color:var(--red); }
.launch-auth-recovery { margin:1.5rem 0 2rem; border-top:1px solid #d8c48f; }
.launch-auth-recovery:focus { outline:3px solid #174a99; outline-offset:3px; }
.launch-auth-recovery h2 { margin-top:.2rem; }
.launch-auth-recovery__actions { display:flex; align-items:center; gap:.75rem 1rem; flex-wrap:wrap; margin-top:1rem; }
.launch-workflow { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); counter-reset:step; gap:1px; background:var(--line); border:1px solid var(--line); }
.launch-workflow > div { padding:1.3rem; background:var(--paper); }
.launch-workflow > div::before { counter-increment:step; content:counter(step); display:grid; place-items:center; width:2rem; height:2rem; margin-bottom:1rem; color:#fff; background:var(--ink); font-weight:800; }
.launch-form { display:grid; gap:1rem; max-width:38rem; padding:1.5rem; background:var(--paper); border:1px solid var(--line); }
.launch-form label { display:grid; gap:.35rem; font-weight:700; }
.launch-form input { min-height:2.8rem; padding:.65rem .75rem; border:1px solid #777; background:#fff; }
.launch-form [role="status"],.launch-live-status { min-height:1.55em; margin:0; }
.launch-document { width:min(860px,calc(100% - 2rem)); margin:3rem auto 6rem; padding:clamp(1.2rem,5vw,4rem); background:var(--paper); border-top:5px solid var(--ink); box-shadow:var(--shadow); }
.launch-document h1 { max-width:none; font-size:clamp(2.4rem,5vw,4.5rem); }
.launch-document h2 { margin-top:2rem; font-size:1.7rem; }
.launch-footer { padding:2.2rem clamp(1rem,4vw,4rem); color:#fff; background:var(--petrol); }
.launch-footer__inner { display:flex; justify-content:space-between; gap:2rem; flex-wrap:wrap; }
.launch-footer nav { display:flex; gap:1rem; flex-wrap:wrap; }
.launch-footer a { color:#fff; }
[hidden] { display:none !important; }
:focus-visible { outline:3px solid #174a99; outline-offset:3px; }
@media (max-width:860px) { .launch-header { align-items:flex-start; flex-direction:column; position:static; } .launch-nav { width:100%; } .launch-hero { grid-template-columns:1fr; min-height:auto; } .launch-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } .launch-workflow { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media (max-width:560px) { .launch-shell { width:min(100% - 1.25rem,1180px); } .launch-grid,.launch-workflow { grid-template-columns:1fr; } .launch-section__head { align-items:start; flex-direction:column; } .launch-actions > * { width:100%; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } *,*::before,*::after { animation-duration:.01ms !important; transition-duration:.01ms !important; } }
@media (forced-colors:active) { .launch-status::before { border:1px solid CanvasText; } }
