:root{--body-size:17px;--hero-wash:#f8f1e4}
[data-theme=dark]{--hero-wash:#111716}
.site-header .brand{font-size:19px;font-weight:760;letter-spacing:-.04em}
.site-header .brand span{color:var(--text)}
.site-footer{display:grid;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:start;gap:12px 18px;border-top:1px solid var(--line);padding:26px max(var(--page-gutter),calc((100vw - var(--content-width)) / 2));color:var(--muted);font-size:12px}
.site-footer p{margin:0}
.site-footer a{color:inherit;text-underline-offset:3px}
.site-footer a:hover{color:var(--text)}
.footer-credit{position:relative;z-index:1;grid-column:1;grid-row:1;justify-self:start;display:flex;align-items:center;gap:5px;white-space:nowrap}
.footer-linkedin{display:inline-grid;place-items:center;width:32px;height:32px;margin-left:7px}
.linkedin-icon{display:block;width:16px;height:16px;background:currentColor;mask:url(linkedin.png) center/contain no-repeat;-webkit-mask:url(linkedin.png) center/contain no-repeat}
.footer-linkedin:hover{opacity:.6}
.footer-privacy{grid-column:1/-1;grid-row:1;justify-self:stretch;min-width:0;max-width:none;pointer-events:none;font-size:inherit;line-height:1.65}
.footer-privacy summary{cursor:pointer;width:fit-content;margin-inline:auto;pointer-events:auto;min-height:32px;padding:5px 0;white-space:nowrap}
.site-footer>p[data-i18n=independence]{position:relative;z-index:1;grid-column:3;grid-row:1;justify-self:end;padding-top:6px}
.footer-privacy-copy{width:min(560px,100%);margin:16px auto 0;padding:16px 20px;background:var(--surface);border:1px solid var(--line);border-radius:10px;font-size:13px;line-height:1.65;text-align:left;pointer-events:auto}
.site-footer .footer-privacy-copy p{margin-top:12px}
.site-footer .footer-privacy-copy p:first-child{margin-top:0}
body[data-screen=intro] main{width:100%;max-width:none;margin:0;padding:0}
.intro-panel.landing{max-width:none;margin:0;padding:0}
.landing-section{width:min(var(--content-width),calc(100% - var(--page-gutter) * 2));margin-inline:auto}
.landing-hero{position:relative;min-height:min(710px,59vw);overflow:hidden;background:var(--hero-wash)}
.landing-art{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center bottom}
.landing-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,var(--hero-wash) 0%,color-mix(in srgb,var(--hero-wash) 98%,transparent) min(480px,46%),color-mix(in srgb,var(--hero-wash) 50%,transparent) min(660px,66%),transparent 80%);pointer-events:none}
.landing-hero-copy{position:relative;z-index:1;padding:85px 0 100px max(var(--page-gutter),calc((100vw - var(--content-width)) / 2));max-width:calc(620px + max(var(--page-gutter),calc((100vw - var(--content-width)) / 2)))}
.landing h1{font-size:clamp(42px,5.2vw,76px);font-weight:600;letter-spacing:-.04em;line-height:1.06;max-width:11.8ch;margin:0 0 24px}
.landing-intro{max-width:355px;line-height:1.65;font-size:var(--body-size);margin:0 0 30px;color:var(--muted)}
.landing .primary,.import-gate .primary,.import-gate .secondary-action{border-radius:8px}
.landing .primary{width:auto;min-width:190px;padding:12px 26px;box-shadow:0 4px 10px #723c2520}
.landing .primary:hover,.import-gate .primary:hover{filter:brightness(.92)}
.landing-privacy{max-width:370px;font-size:13px;line-height:1.6;color:var(--muted);margin-top:18px}
.landing-privacy p{margin:0 0 5px}
.landing-benefits{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;padding-block:72px;border-bottom:1px solid var(--line)}
.landing-benefits article{display:flex;align-items:flex-start;gap:15px}
.landing-number{display:grid;place-items:center;border:1px solid var(--line);color:var(--muted);border-radius:50%;width:30px;height:30px;flex-shrink:0;font-size:10px;margin-top:2px}
.landing-benefits h2{font-size:20px;line-height:1.4;font-weight:650;margin:0 0 8px;letter-spacing:-.015em}
.landing-benefits p{font-size:var(--body-size);line-height:1.65;color:var(--muted);margin:0;max-width:290px}
.landing-product{padding-block:112px;display:grid;grid-template-columns:.7fr 1.3fr;align-items:center;gap:50px}
.landing-product-copy h2{font-size:clamp(30px,3.2vw,46px);line-height:1.12;letter-spacing:-.045em;font-weight:600;margin:0 0 22px;max-width:13ch}
.landing-product-copy>p:last-child{max-width:285px;font-size:var(--body-size);line-height:1.7;color:var(--muted)}
.landing-eyebrow{font-size:12px;font-weight:700;letter-spacing:.15em;line-height:1.6;margin:0 0 19px;color:var(--muted)}
.landing-visual{margin:0;min-width:0;filter:drop-shadow(0 6px 12px #23382f20)}
.landing-visual img{display:block;width:100%;height:auto;mask:url(homepage-preview/map-sample-mask.svg) center/100% 100% no-repeat;-webkit-mask:url(homepage-preview/map-sample-mask.svg) center/100% 100% no-repeat}
:is(.landing a,.landing button,.landing summary,.site-footer a,.site-footer summary):focus-visible{outline:3px solid var(--accent);outline-offset:4px}
:is(.intro-panel,.import-panel):not([hidden]){animation:entry-reveal 180ms ease-out both}
@keyframes entry-reveal{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}
[data-theme=dark] .landing-art{opacity:.65}
@media(min-width:1600px){.landing-hero-copy{padding-top:110px}.landing-hero{min-height:740px}}
@media(max-width:900px){.landing-benefits{grid-template-columns:1fr;gap:26px;padding-block:52px}.landing-benefits p{max-width:none}.landing-hero{min-height:620px}.landing-art{object-position:62% bottom}.landing-hero-copy{padding-top:65px;max-width:480px}.landing-intro{max-width:310px}.landing-product{gap:25px;padding-block:88px;grid-template-columns:.8fr 1.2fr}.landing-product-copy h2{font-size:31px}}
@media(max-width:600px){:root{--body-size:16px}.site-header{height:67px}.site-header .brand{font-size:16px}.landing-hero{min-height:670px}.landing-art{object-position:68% bottom;opacity:.8}.landing-hero:after{background:linear-gradient(var(--hero-wash) 0%,var(--hero-wash) calc(100% - 200px),color-mix(in srgb,var(--hero-wash) 50%,transparent) calc(100% - 100px),transparent 100%)}.landing-hero-copy{padding:45px var(--page-gutter) 200px}.landing h1{font-size:45px;margin-bottom:20px}.landing-intro{max-width:295px;margin-bottom:24px}.landing-privacy{max-width:320px}.landing-benefits{gap:24px;padding-block:48px}.landing-product{display:block;padding-block:72px}.landing-product-copy{margin-bottom:30px}.landing-product-copy h2{font-size:35px;max-width:15ch}.landing-product-copy>p:last-child{max-width:330px}.site-footer{grid-template-columns:max-content minmax(0,1fr);gap:8px 12px;padding-block:24px;font-size:11px}.site-footer>p[data-i18n=independence]{grid-column:1/-1;grid-row:auto;justify-self:start;padding-top:0}.footer-privacy summary{margin-left:auto;margin-right:0}.footer-privacy-copy{padding:14px;margin-top:12px}}
@media(prefers-reduced-motion:reduce){:is(.intro-panel,.import-panel):not([hidden]){animation:none}}
