:root{--brand: oklch(58% .233 277.117);--brand-content: oklch(96% .018 272.314);--ink: oklch(22% .02 265);--ink-muted: oklch(42% .02 265);--surface: oklch(97% .008 85);--surface-elevated: oklch(99% .004 85);--surface-deep: oklch(92% .012 85);--line: color-mix(in oklch, var(--ink) 12%, transparent);--aura-a: color-mix(in oklch, var(--brand) 12%, transparent);--aura-b: color-mix(in oklch, oklch(70% .06 85) 16%, transparent);--radius-phone: 2rem;--font-display: "Fraunces", "Iowan Old Style", "Palatino Linotype", Palatino, serif;--font-body: "Source Sans 3", "Source Sans Pro", "Segoe UI", sans-serif;--max: 68rem;--pad: clamp(1.25rem, 4vw, 2.5rem);color-scheme:light}html[data-theme=dark]{--ink: oklch(94% .012 265);--ink-muted: oklch(72% .02 265);--surface: oklch(18% .02 265);--surface-elevated: oklch(22% .022 265);--surface-deep: oklch(14% .018 265);--line: color-mix(in oklch, var(--ink) 16%, transparent);--aura-a: color-mix(in oklch, oklch(55% .04 250) 18%, transparent);--aura-b: color-mix(in oklch, oklch(45% .02 230) 14%, transparent);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;min-height:100svh;font-family:var(--font-body);font-size:1.0625rem;line-height:1.55;color:var(--ink);background:radial-gradient(120% 80% at 10% -10%,var(--aura-a),transparent 55%),radial-gradient(90% 60% at 100% 0%,var(--aura-b),transparent 50%),linear-gradient(180deg,var(--surface-elevated),var(--surface) 40%,var(--surface-deep));background-attachment:fixed}img{max-width:100%;height:auto;display:block}a{color:var(--brand);text-underline-offset:.15em}a:hover{color:color-mix(in oklch,var(--brand) 80%,var(--ink))}h1,h2,.brand{font-family:var(--font-display);font-weight:550;letter-spacing:-.02em;line-height:1.15}.site-shell{width:min(100%,var(--max));margin-inline:auto;padding-inline:var(--pad)}.skip-link{position:absolute;left:-9999px;top:0;z-index:100;padding:.75rem 1rem;background:var(--brand);color:var(--brand-content)}.skip-link:focus{left:var(--pad);top:.75rem}.site-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-block:1.1rem}.brand{font-size:clamp(1.35rem,3.5vw,1.75rem);color:var(--ink);text-decoration:none}.brand:hover{color:var(--ink)}.header-actions{display:flex;align-items:center;flex-shrink:0;gap:.5rem}.header-btn{white-space:nowrap;min-height:2.4rem;padding:.5rem .95rem;font-size:.92rem}@media(max-width:420px){.site-header{gap:.65rem}.brand{font-size:1.15rem;min-width:0}.header-btn{padding-inline:.75rem;font-size:.88rem}}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;min-height:2.75rem;padding:.65rem 1.25rem;border-radius:999px;border:1px solid transparent;font-family:var(--font-body);font-size:1rem;font-weight:600;text-decoration:none;cursor:pointer;white-space:nowrap;transition:transform .18s ease,background .18s ease,border-color .18s ease}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--brand);color:var(--brand-content)}.btn-primary:hover{color:var(--brand-content);background:color-mix(in oklch,var(--brand) 88%,black)}.btn-ghost{background:color-mix(in oklch,var(--surface-elevated) 70%,transparent);border-color:var(--line);color:var(--ink)}.btn-ghost:hover{color:var(--ink);border-color:color-mix(in oklch,var(--ink) 28%,transparent)}.cta-group{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center;margin-top:1.5rem}.cta-group__primary{order:2;margin-inline-start:auto}.cta-group__secondary{order:1}@media(max-width:540px){.cta-group{flex-direction:column;align-items:flex-start}.cta-group__primary{order:1;margin-inline-start:0}.cta-group__secondary{order:2}}.hero{display:grid;gap:clamp(2rem,5vw,3.5rem);padding-block:clamp(1.5rem,4vw,3rem) clamp(3rem,8vw,5rem);align-items:end}@media(min-width:860px){.hero{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center}}.hero-copy{max-width:34rem}.hero-brand{font-family:var(--font-display);font-size:clamp(2.6rem,8vw,4.25rem);margin:0 0 .75rem;color:var(--ink)}.hero h1{font-size:clamp(1.35rem,3.2vw,1.85rem);font-weight:500;margin:0 0 .85rem;color:var(--ink)}.hero-lead{margin:0;color:var(--ink-muted);font-size:1.125rem;max-width:32ch}.hero-map{margin:.85rem 0 0;color:var(--ink-muted);font-size:1.02rem;max-width:46ch}.hero-visual{justify-self:center;width:min(100%,22rem);animation:rise-in .9s cubic-bezier(.22,1,.36,1) both}@keyframes rise-in{0%{opacity:0;transform:translateY(1.25rem) scale(.98)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.hero-visual,.section-visual{animation:none}html{scroll-behavior:auto}}.section{padding-block:clamp(2.75rem,7vw,4.5rem);border-top:1px solid var(--line)}.section-inner{display:grid;gap:1.75rem}@media(min-width:800px){.section-inner--split{grid-template-columns:1fr 1fr;align-items:center;gap:2.5rem}.section-inner--split.reverse .section-copy{order:2}.section-inner--split.reverse .section-visual{order:1}}.section-kicker{margin:0 0 .4rem;font-size:.8rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.section h2{margin:0 0 .75rem;font-size:clamp(1.65rem,3.5vw,2.15rem)}.section-links{margin:1rem 0 0;display:flex;flex-wrap:wrap;gap:.35rem .65rem;font-size:.95rem}.section-links a{color:var(--ink);text-decoration:underline;text-underline-offset:.15em}.section-links a:hover{color:var(--brand)}.section-links__sep{color:var(--ink-muted)}.section p{margin:0 0 .85rem;color:var(--ink-muted);max-width:38rem}.section p:last-child{margin-bottom:0}.section-visual{justify-self:center;width:min(100%,20rem);animation:rise-in .85s cubic-bezier(.22,1,.36,1) both;animation-delay:.08s}.section--trust{text-align:center}.section--trust .section-copy{margin-inline:auto;max-width:38rem}.wip-note{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;padding:.45rem .85rem;border-radius:999px;border:1px dashed color-mix(in oklch,var(--brand) 45%,var(--line));background:color-mix(in oklch,var(--brand) 8%,var(--surface-elevated));color:var(--ink);font-size:.92rem;font-weight:600}.feature-list{list-style:none;margin:1.25rem 0 0;padding:0;display:grid;gap:.65rem;text-align:left}.feature-list li{padding:.75rem 1rem;border-radius:.85rem;background:color-mix(in oklch,var(--surface-elevated) 80%,transparent);border:1px solid var(--line);color:var(--ink)}.feature-list strong{display:block;margin-bottom:.15rem}.feature-list span{color:var(--ink-muted);font-size:.95rem}.phone{position:relative;border-radius:var(--radius-phone);padding:.55rem;background:linear-gradient(160deg,color-mix(in oklch,var(--ink) 18%,transparent),color-mix(in oklch,var(--ink) 6%,transparent));box-shadow:0 1px color-mix(in oklch,white 25%,transparent),0 28px 50px -24px color-mix(in oklch,black 55%,transparent)}.phone-screen{position:relative;overflow:hidden;border-radius:calc(var(--radius-phone) - .35rem);background:var(--surface-deep);aspect-ratio:9 / 19.5}.phone-screen img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:top center}.phone-screen img.phone-img--night,html[data-theme=dark] .phone-screen img.phone-img--day{display:none}html[data-theme=dark] .phone-screen img.phone-img--night{display:block}@media(prefers-color-scheme:dark){html:not([data-theme=light]) .phone-screen img.phone-img--day{display:none}html:not([data-theme=light]) .phone-screen img.phone-img--night{display:block}}.phone--crop-wheel .phone-screen img{object-position:top center;transform:scale(1.02);height:108%}.final-cta{text-align:center;padding-block:clamp(3rem,8vw,5rem);border-top:1px solid var(--line)}.final-cta h2{margin:0 0 .5rem;font-size:clamp(1.75rem,4vw,2.35rem)}.final-cta p{margin:0 auto 1.25rem;color:var(--ink-muted);max-width:34ch}.final-cta .cta-group{justify-content:center;align-items:center}.final-cta .cta-group__primary{margin-inline-start:0}.site-footer{border-top:1px solid var(--line);padding-block:2rem 3rem;color:var(--ink-muted);font-size:.95rem}.footer-row{display:flex;flex-wrap:wrap;gap:1rem 1.5rem;align-items:center;justify-content:space-between}.footer-nav{display:flex;flex-wrap:wrap;gap:.85rem 1.15rem}.footer-nav a,.footer-nav button{color:var(--ink-muted);background:none;border:none;font:inherit;cursor:pointer;padding:0;text-decoration:underline;text-underline-offset:.15em}.footer-nav a:hover,.footer-nav button:hover{color:var(--ink)}.theme-switch{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden;background:var(--surface-elevated)}.theme-switch button{border:none;background:transparent;color:var(--ink-muted);font:inherit;font-size:.85rem;font-weight:600;padding:.4rem .7rem;cursor:pointer}.theme-switch button[aria-pressed=true]{background:color-mix(in oklch,var(--brand) 18%,transparent);color:var(--ink)}.footer-disclaimer{margin:1.25rem 0 0;max-width:52rem;font-size:.85rem}.cookie-banner{position:fixed;inset-inline:var(--pad);bottom:var(--pad);z-index:50;max-width:32rem;margin-inline:auto;right:var(--pad);left:auto;display:block;padding:1.1rem 1.15rem 1.15rem;border-radius:1rem;border:1px solid var(--line);background:color-mix(in oklch,var(--surface-elevated) 92%,transparent);backdrop-filter:blur(12px);box-shadow:0 18px 40px -20px color-mix(in oklch,black 45%,transparent)}.cookie-banner[hidden]:not(:target){display:none!important}#cookie-banner:target{display:block!important}.cookie-banner p{margin:0 0 .9rem;font-size:.92rem;color:var(--ink-muted)}.cookie-banner strong{color:var(--ink)}.cookie-actions{display:flex;flex-wrap:wrap;gap:.55rem;align-items:center}.cookie-actions__accept{order:3;margin-inline-start:auto}.cookie-actions [data-consent=rejected]{order:1}.cookie-actions a.btn-ghost{order:2}.cookie-actions .btn{min-height:2.4rem;font-size:.92rem;padding-inline:1rem}@media(max-width:420px){.cookie-actions__accept{flex:1 1 100%;margin-inline-start:0;justify-content:center}}.prose-page{padding-block:2rem 4rem;max-width:44rem}.prose-page h1{margin:0 0 1rem;font-size:clamp(1.85rem,4vw,2.4rem)}.prose-page .meta{color:var(--ink-muted);font-size:.9rem;margin-bottom:2rem}.prose-page :is(h2,h3){margin-top:2rem;margin-bottom:.65rem}.prose-page p,.prose-page li{color:var(--ink-muted)}.prose-page table{width:100%;border-collapse:collapse;font-size:.92rem;margin:1rem 0}.prose-page th,.prose-page td{border:1px solid var(--line);padding:.5rem .65rem;text-align:left;vertical-align:top}.prose-page th{background:color-mix(in oklch,var(--surface-elevated) 80%,transparent);color:var(--ink)}.intent-hero{padding-block:2.5rem 1rem;max-width:40rem}.intent-hero h1{margin:0 0 .85rem;font-size:clamp(1.85rem,4vw,2.5rem)}.intent-hero p{color:var(--ink-muted);margin:0 0 .85rem}
