@font-face{font-family:"Hanken Grotesk";font-weight:400;font-style:normal;font-display:swap;src:url(/fonts/hanken-grotesk-latin-400-normal.woff2) format("woff2")}
@font-face{font-family:"Hanken Grotesk";font-weight:500;font-style:normal;font-display:swap;src:url(/fonts/hanken-grotesk-latin-500-normal.woff2) format("woff2")}
/* Fjord palette */
:root{--ink:#EEF3F7;--ice:#BFE3F2;--mist:#A9B8C6;--navy:#1E3247;--slate:#284159;--night:#122030;--glass-edge:rgba(191,227,242,.22);--gutter:clamp(24px,4vw,56px)}
*{box-sizing:border-box}
html{color-scheme:dark;background:var(--navy)}
body{margin:0;font-family:"Hanken Grotesk",Helvetica,Arial,sans-serif;color:var(--ink)}
.page-home{background:linear-gradient(180deg,#1E3247 0%,#19293B 55%,#122030 100%)}
.page-support{background:var(--navy)}
a{color:var(--ice)}
a:focus-visible,button:focus-visible{outline:2px solid var(--ice);outline-offset:3px}
h1,h2,h3,p{margin:0}

/* Outline buttons (Menu, Close) */
.btn{min-height:44px;padding:0 18px;background:transparent;color:var(--ink);border:1px solid var(--ink);font-family:inherit;font-size:15px;letter-spacing:.06em;cursor:pointer}
.btn-close{align-self:flex-end;padding:0 16px;border-color:var(--ice);letter-spacing:.04em}

/* Menu panel */
.menu{position:fixed;inset:0 0 0 auto;width:100%;max-width:380px;height:100%;max-height:none;margin:0;padding:0;border:0;background:var(--slate);color:var(--ink)}
.menu::backdrop{background:rgba(13,22,32,.6)}
.menu-inner{height:100%;padding:32px 36px;display:flex;flex-direction:column;gap:32px}
.menu-main{display:flex;flex-direction:column;gap:22px}
.menu-main a{color:var(--ink);text-decoration:none;font-size:28px;letter-spacing:-.01em}
.menu-legal{margin-top:auto;display:flex;flex-direction:column;gap:12px;font-size:16px}
.menu-legal a{color:var(--mist)}

/* Full-bleed photo bands */
.photo{position:relative;overflow:hidden}
.photo-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center}
.photo-shade{position:absolute;inset:0}
.glass{border-radius:6px;background:rgba(30,50,71,.45);border:1px solid var(--glass-edge);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}

/* Hero */
.hero,.hero-body{min-height:860px}
.hero-shade{background:radial-gradient(900px 600px at 82% 18%,rgba(120,175,215,.35) 0%,rgba(120,175,215,0) 70%),linear-gradient(180deg,rgba(30,50,71,.55) 0%,rgba(30,50,71,.2) 38%,rgba(30,50,71,.7) 78%,#1E3247 100%)}
.hero-body{position:relative;padding:var(--gutter);display:flex;flex-direction:column;justify-content:space-between}
.hero-top{display:flex;flex-direction:column;align-items:flex-start;gap:clamp(28px,5vw,56px)}
.hero h1{font-weight:400;font-size:clamp(64px,12vw,176px);line-height:.92;letter-spacing:-.035em}
.tagline{margin-top:48px;align-self:flex-end;text-align:left;font-size:clamp(20px,2.2vw,30px);line-height:1.25;letter-spacing:-.01em;padding:22px 28px}

/* Know where you stand */
.stand{min-height:620px}
.stand-img{object-position:72% center}
.stand-shade{background:linear-gradient(180deg,#1E3247 0%,rgba(30,50,71,.35) 22%,rgba(40,80,115,.2) 55%,rgba(30,50,71,.75) 86%,#1E3247 100%)}
.stand-panel{position:relative;margin:clamp(48px,7vw,112px) var(--gutter) 0;padding:clamp(24px,3vw,40px);max-width:680px;display:flex;flex-direction:column;gap:24px;background:rgba(30,50,71,.42);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}
.title-lg{font-weight:400;font-size:clamp(40px,6vw,84px);line-height:1;letter-spacing:-.03em}
.stand-panel p{font-size:clamp(17px,1.5vw,20px);line-height:1.6;max-width:58ch}
.stand-cards{padding:72px var(--gutter) 120px;display:flex;flex-wrap:wrap;gap:32px;align-items:flex-start;background:radial-gradient(900px 420px at 18% 0%,rgba(74,125,165,.45) 0%,rgba(74,125,165,0) 70%),radial-gradient(700px 400px at 92% 100%,rgba(52,96,134,.5) 0%,rgba(52,96,134,0) 70%),linear-gradient(180deg,#1E3247 0%,#172839 100%)}
.ledger{border-top:1px solid var(--ice);padding:22px 24px 26px;border-radius:0 0 6px 6px;background:rgba(40,65,89,.5);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}
.stand-cards .ledger{flex:1 1 260px;display:flex;flex-direction:column;gap:10px}
.stand-cards .ledger:nth-child(2){margin-top:32px}
.stand-cards .ledger:nth-child(3){margin-top:64px}
.ledger h3{font-weight:500;font-size:20px;color:var(--ice)}
.ledger p{font-size:17px;line-height:1.55}

/* Products */
.products{position:relative;overflow:hidden;padding:96px var(--gutter) 160px;background:radial-gradient(1100px 700px at 85% 15%,rgba(78,132,176,.55) 0%,rgba(78,132,176,0) 65%),radial-gradient(900px 600px at 5% 90%,rgba(45,88,126,.6) 0%,rgba(45,88,126,0) 65%),linear-gradient(180deg,#172839 0%,#1E3247 45%,#233D56 100%)}
.watermark{position:absolute;left:-.04em;bottom:-.2em;font-size:clamp(120px,21vw,320px);line-height:1;letter-spacing:-.05em;color:rgba(191,227,242,.08);white-space:nowrap;pointer-events:none}
.products-head{position:relative;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:140px}
.products-head p{font-size:18px;line-height:1.55;color:var(--mist);max-width:40ch}
.product-list{position:relative;display:flex;flex-wrap:wrap;gap:112px 32px}
.product{flex:1 1 300px;border-radius:6px;background:rgba(40,65,89,.55);border:1px solid rgba(191,227,242,.18);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);padding:0 28px 32px;display:flex;flex-direction:column;gap:14px}
.product img{width:62%;max-width:260px;height:auto;align-self:center;margin-top:-80px;margin-bottom:18px;border-radius:24px;border:1px solid rgba(191,227,242,.5)}
.product h3{font-weight:500;font-size:28px;letter-spacing:-.01em}
.product .line{font-weight:500;font-size:18px;color:var(--ice)}
.product .desc{font-size:17px;line-height:1.55;color:var(--ink)}

/* Why we build */
.why,.why-body{min-height:560px}
.why{overflow:visible}
.why-shade{background:linear-gradient(180deg,#233D56 0%,rgba(35,61,86,.25) 24%,rgba(60,110,150,.15) 55%,rgba(23,40,57,.8) 88%,#172839 100%)}
.why-body{position:relative;padding:0 clamp(16px,2vw,32px);display:flex;align-items:flex-end}
.why h2{margin:0 0 -.12em;font-weight:400;font-size:clamp(72px,14vw,220px);line-height:.9;letter-spacing:-.045em;color:rgba(238,243,247,.78)}
.why-text{padding:88px var(--gutter) 112px;display:flex;flex-wrap:wrap;gap:48px 64px;align-items:flex-start;background:radial-gradient(800px 500px at 88% 30%,rgba(74,125,165,.4) 0%,rgba(74,125,165,0) 70%),linear-gradient(180deg,#172839 0%,#1E3247 100%)}
.why-copy{flex:2 1 420px;display:flex;flex-direction:column;gap:20px;max-width:64ch}
.why-copy p{font-size:clamp(18px,1.6vw,21px);line-height:1.6}
.why-text .ledger{flex:1 1 280px;margin-top:8px;display:flex;flex-direction:column;gap:18px}
.why-text .ledger p{font-size:20px;line-height:1.5;color:var(--ice)}

/* Contact */
.contact{padding:104px var(--gutter);background:radial-gradient(1000px 600px at 92% 0%,rgba(96,150,192,.45) 0%,rgba(96,150,192,0) 65%),radial-gradient(800px 500px at 0% 100%,rgba(30,50,71,.9) 0%,rgba(30,50,71,0) 70%),linear-gradient(160deg,#2E4B66 0%,#284159 45%,#1E3247 100%);display:flex;flex-wrap:wrap;gap:64px 96px}
.contact-col{flex:1 1 340px;display:flex;flex-direction:column;gap:20px}
.contact h2{font-weight:400;font-size:clamp(36px,4.5vw,60px);line-height:1.05;letter-spacing:-.03em}
.contact .intro{font-size:18px;line-height:1.6;max-width:46ch}
.contact .email{font-size:22px}
.contact .where{font-size:17px;line-height:1.6;color:var(--mist)}

/* Footer */
.site-footer{padding:40px var(--gutter) 48px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:20px;font-size:15px;color:var(--mist);background:linear-gradient(180deg,#1E3247 0%,#122030 100%)}
.site-footer nav{display:flex;flex-wrap:wrap;gap:8px 24px}
.site-footer a{color:var(--ink)}
.site-footer .copy{flex-basis:100%}

/* Support page */
.support-header{padding:var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:16px}
.wordmark{color:var(--ink);text-decoration:none;font-size:20px;font-weight:500;letter-spacing:-.01em}
.support{max-width:680px;margin:0 auto;padding:48px 24px 120px;display:flex;flex-direction:column;gap:40px}
.support-intro{display:flex;flex-direction:column;gap:14px}
.support h1{font-weight:400;font-size:clamp(44px,6vw,72px);line-height:1;letter-spacing:-.03em}
.support-intro p{font-size:19px;line-height:1.6;color:var(--mist)}
.support section{display:flex;flex-direction:column;gap:16px;border-top:1px solid var(--ice);padding-top:24px}
.support section.contact-us{gap:14px}
.support section.other{gap:10px}
.support h2{font-weight:500;font-size:24px}
.support p{font-size:17px;line-height:1.6}
.details{margin:0;display:grid;grid-template-columns:max-content minmax(0,1fr);gap:10px 24px;font-size:17px;line-height:1.55}
.details dt{color:var(--mist)}
.details dd{margin:0}
.faq{display:flex;flex-direction:column;gap:6px}
.faq h3{font-weight:500;font-size:18px}
