.landing{--landing-header-height:80px;--landing-footer-height:132px;color:var(--foreground);background:var(--background)}.landing-width{width:min(100% - 64px,600px);margin-inline:auto}.landing-skip{position:fixed;top:12px;left:12px;z-index:10;padding:12px;background:var(--foreground);color:var(--background);transform:translateY(-150%)}.landing-skip:focus{transform:none}.landing-header{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:var(--landing-header-height)}.landing-brand{display:inline-flex;align-items:center;gap:8px;font-size:20px;font-weight:500;letter-spacing:-.025em}.landing-brand img{margin-inline-start:-4px}.landing-footer a,.landing-header nav a{display:inline-flex;align-items:center;min-height:44px;color:var(--secondary)}.landing-footer a:hover,.landing-header nav a:hover{color:var(--foreground);text-decoration:underline;text-underline-offset:4px}html:has(.landing){scroll-behavior:smooth}.landing-hero{display:grid;grid-template-rows:1fr auto;gap:28px;min-height:calc(100svh - var(--landing-header-height));padding-block:28px 24px}.landing-hero-content{align-self:center}.landing-hero h1{font-size:clamp(42px,7vw,88px);font-weight:400;line-height:1.01;letter-spacing:-.052em;text-wrap:wrap}.landing-intro{max-width:37ch;margin-block:28px 24px;font-size:18px;line-height:1.55;color:var(--secondary)}.landing-action{display:inline-flex;align-items:center;min-height:44px;padding:10px 17px;border-radius:6px;color:var(--background);background:var(--foreground)}.landing-action:hover{background:#fff}.landing-scroll{display:grid;place-items:center;justify-self:start;width:44px;height:44px;margin-inline-start:-12px;color:var(--secondary)}.landing svg{flex-shrink:0;transition:transform .18s ease}.landing-scroll:hover{color:var(--foreground)}.landing-scroll:hover svg{transform:translateY(3px)}.landing-details,.landing-footer{background:var(--surface)}.landing-details{display:flow-root;min-height:calc(100svh - var(--landing-footer-height))}.landing-mode-section{padding-block-start:clamp(56px,10svh,112px)}.landing-feature h2,.landing-mode-section h2{margin-block-end:20px;font-size:30px;line-height:1.2;font-weight:400;letter-spacing:-.03em}.landing-modes{list-style:none}.landing-mode{display:grid;grid-template-columns:minmax(7.25rem,auto) minmax(0,1fr) auto;align-items:center;gap:6px 24px;min-height:64px;padding:10px 12px;margin-inline:-12px;border-radius:6px}.landing-mode-name{font-size:16px}.landing-mode-description{font-size:15px;line-height:1.45;color:var(--secondary)}.landing-mode svg{color:var(--secondary)}.landing-mode:hover{background:var(--line)}.landing-mode:hover svg{color:var(--foreground);transform:translateX(3px)}.landing-feature{margin-block-start:92px}.landing-feature p{max-width:48ch;color:var(--secondary);font-size:16px;line-height:1.65}.landing-feature p a{color:var(--foreground);text-decoration:underline;text-decoration-color:var(--muted);text-underline-offset:4px}.landing-feature p a:hover{text-decoration-color:currentColor}.landing-footer{display:flex;align-items:flex-end;min-height:var(--landing-footer-height);padding-block:40px 24px}.landing-footer nav{display:flex;flex-wrap:wrap;align-items:center;gap:0 24px}@media (prefers-reduced-motion:no-preference){.landing [data-reveal].is-visible{animation:landing-enter .48s ease-out both}}@keyframes landing-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:560px){.landing{--landing-header-height:68px;--landing-footer-height:100px}.landing-width{width:calc(100% - 40px)}.landing-hero{padding-block-end:20px}.landing-hero h1{font-size:clamp(39px,10.6vw,58px)}.landing-intro{margin-block:20px;font-size:16px}.landing-scroll{justify-self:center;margin-inline-start:0}.landing-mode-section{padding-block-start:40px}.landing-feature h2,.landing-mode-section h2{font-size:26px}.landing-mode{grid-template-columns:minmax(0,1fr) auto;min-height:72px;gap:3px 12px}.landing-mode-description{grid-column:1}.landing-mode svg{grid-column:2;grid-row:1/3}.landing-feature{margin-block-start:64px}.landing-footer{padding-block-end:16px}}@media (prefers-reduced-motion:reduce){html:has(.landing){scroll-behavior:auto}.landing svg{transition:none}.landing a:hover svg{transform:none}}.landing-language-suggestion{margin-top:1rem;color:var(--muted);font-size:.875rem}.landing-language-suggestion a:hover{color:var(--foreground)}