@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/eb-garamond-latin-600-normal-DHwxsLHv.woff2)format("woff2"),url(/assets/eb-garamond-latin-600-normal-xCe6GkOx.woff)format("woff")}:root{--paper:#faf7f0;--surface:#fff;--surface-2:#f3eee3;--ink:#22201b;--ink-soft:#4a463d;--muted:#7a7264;--border:#e6dfcf;--accent:#34435e;--accent-ink:#26324a;--brass:#a9852f;--good:#3e7c63;--danger:#b4462f;--on-accent:#faf7f0;--shadow:18px 30px 60px -30px #22201b59;--shadow-sm:6px 12px 26px -16px #22201b4d;--font-display:"Hoefler Text", "Palatino Linotype", Palatino, Georgia, "Times New Roman", serif;--font-read:"Iowan Old Style", "Palatino Linotype", Palatino, Georgia, serif;--font-ui:system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--t-xs:.78rem;--t-sm:.875rem;--t-base:1rem;--t-md:1.25rem;--t-lg:1.563rem;--t-xl:1.953rem;--t-2xl:2.441rem;--t-3xl:3.5rem;--s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;--s7:48px;--s8:64px;--s9:96px;--r-sm:8px;--r-md:14px;--r-lg:22px;--r-xl:30px;--ease:cubic-bezier(.2,.7,.2,1);--spring:cubic-bezier(.34,1.3,.5,1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--paper:#16150f;--surface:#201e17;--surface-2:#2a271f;--ink:#ede7d8;--ink-soft:#c9c2b2;--muted:#948c7c;--border:#322e24;--accent:#93a6cc;--accent-ink:#b7c4e0;--brass:#cba24a;--good:#6fb394;--danger:#e0876b;--on-accent:#16150f;--shadow:18px 30px 60px -28px #000000b3;--shadow-sm:6px 12px 26px -14px #0009}}:root[data-theme=light]{--paper:#faf7f0;--surface:#fff;--surface-2:#f3eee3;--ink:#22201b;--ink-soft:#4a463d;--muted:#7a7264;--border:#e6dfcf;--accent:#34435e;--accent-ink:#26324a;--brass:#a9852f;--good:#3e7c63;--danger:#b4462f;--on-accent:#faf7f0;--shadow:18px 30px 60px -30px #22201b59;--shadow-sm:6px 12px 26px -16px #22201b4d}:root[data-theme=dark]{--paper:#16150f;--surface:#201e17;--surface-2:#2a271f;--ink:#ede7d8;--ink-soft:#c9c2b2;--muted:#948c7c;--border:#322e24;--accent:#93a6cc;--accent-ink:#b7c4e0;--brass:#cba24a;--good:#6fb394;--danger:#e0876b;--on-accent:#16150f;--shadow:18px 30px 60px -28px #000000b3;--shadow-sm:6px 12px 26px -14px #0009}:root{--font-display-web:"EB Garamond", var(--font-display)}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{background:var(--paper);color:var(--ink);font-family:var(--font-ui);-webkit-font-smoothing:antialiased;background-image:radial-gradient(ellipse 48% 28% at 62% 18%, color-mix(in srgb, var(--brass) 10%, transparent), transparent 72%), radial-gradient(ellipse 36% 20% at 18% 46%, color-mix(in srgb, var(--accent) 6%, transparent), transparent 70%);margin:0;font-size:17px;line-height:1.6}h1,h2,h3{font-family:var(--font-display-web);letter-spacing:-.008em;text-wrap:balance;margin:0;font-weight:600;line-height:1.1}p{text-wrap:pretty;margin:0}a{color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:var(--r-sm)}.wrap{width:100%;max-width:1080px;padding-inline:var(--s5);margin:0 auto}.section{padding-block:clamp(var(--s8), 11vw, var(--s9))}.section__head{max-width:34rem;margin-bottom:var(--s7)}.section__head h2{font-size:var(--t-xl)}.section__head p{color:var(--ink-soft);margin-top:var(--s3)}.eyebrow{font-family:var(--font-ui);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}.header-shell{z-index:10;background:color-mix(in srgb, var(--paper) 88%, transparent);border-bottom:1px solid color-mix(in srgb, var(--border) 70%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);position:sticky;top:0}.header{justify-content:space-between;align-items:center;gap:var(--s4);padding-block:var(--s4);display:flex}.header__nav{align-items:center;gap:var(--s5);font-size:var(--t-sm);color:var(--muted);display:flex}.header__nav a{text-decoration:none}.header__nav a:hover{color:var(--ink)}.header__cta{font-weight:600;color:var(--ink)!important}.header__cta span{color:var(--brass);margin-left:var(--s1);transition:transform .2s var(--spring);display:inline-block}.header__cta:hover span{transform:translate(3px)}.brand{align-items:center;gap:var(--s3);font-family:var(--font-display-web);font-size:var(--t-md);letter-spacing:-.01em;font-weight:600;text-decoration:none;display:inline-flex}.brand svg{border-radius:9px;width:30px;height:30px;display:block}.btn{justify-content:center;align-items:center;gap:var(--s2);padding:var(--s3) var(--s5);border-radius:var(--r-lg);font-family:var(--font-ui);font-size:var(--t-base);cursor:pointer;transition:transform .2s var(--spring), background-color .2s var(--ease), border-color .2s var(--ease), box-shadow .2s var(--ease);border:1px solid #0000;font-weight:500;text-decoration:none;display:inline-flex}.btn:hover{transform:translateY(-1px)}.btn:active{transform:translateY(0)}.btn--primary{background:var(--accent);color:var(--on-accent);box-shadow:var(--shadow-sm)}.btn--primary:hover{background:var(--accent-ink)}.btn--ghost{border-color:var(--border);background:var(--surface);color:var(--ink)}.btn--ghost:hover{border-color:var(--muted)}.btn__arrow{transition:transform .25s var(--spring)}.btn:hover .btn__arrow{transform:translate(3px)}.cta-row{gap:var(--s3);margin-top:var(--s6);flex-wrap:wrap;display:flex}.cta-note{margin-top:var(--s4);font-size:var(--t-sm);color:var(--muted)}.hero{padding-block:clamp(var(--s7), 8vw, var(--s8)) 0;position:relative}.hero h1{max-width:15ch;font-size:clamp(2.5rem,6.9vw,4.2rem)}.hero__lede{margin-top:var(--s5);max-width:40ch;font-size:var(--t-md);color:var(--ink-soft);line-height:1.5}.film-section{background:var(--surface-2)}.film-intro{max-width:42rem;margin-bottom:var(--s6)}.film-intro h2{margin-top:var(--s2);font-size:var(--t-xl)}.film-intro>p:last-child{margin-top:var(--s3);color:var(--ink-soft);font-size:var(--t-md)}.film-frame{margin:0}.film-frame video{aspect-ratio:16/9;background:var(--accent-ink);border:8px solid var(--surface);border-radius:var(--r-md);width:100%;box-shadow:var(--shadow);display:block}.film-frame figcaption{margin-top:var(--s3);color:var(--muted);font-size:var(--t-sm)}.film-transcript{margin-top:var(--s4);color:var(--ink-soft);font-size:var(--t-sm)}.film-transcript summary{cursor:pointer;width:fit-content;color:var(--accent)}.film-transcript p{max-width:62ch;margin-top:var(--s2)}.frame{background:var(--surface);border:1px solid var(--border);box-shadow:var(--shadow);position:relative;overflow:hidden}.frame--phone{--rail:4px;width:186px;padding:var(--rail);background:linear-gradient(118deg, color-mix(in srgb, var(--ink) 22%, var(--surface-2)) 0%, color-mix(in srgb, var(--ink) 6%, var(--surface)) 16%, color-mix(in srgb, var(--ink) 26%, var(--surface-2)) 48%, color-mix(in srgb, var(--ink) 5%, var(--surface)) 82%, color-mix(in srgb, var(--ink) 20%, var(--surface-2)) 100%);box-shadow:var(--shadow), inset 0 0 0 1px color-mix(in srgb, var(--ink) 18%, transparent);border:none;border-radius:20px;overflow:visible}.frame--phone:after{content:"";z-index:3;background:#090806e6;border-radius:50%;width:7px;height:7px;margin-left:-3.5px;position:absolute;top:9px;left:50%;box-shadow:0 0 0 1px #09080638}.frame__keys{background:linear-gradient(to bottom, color-mix(in srgb, var(--ink) 45%, transparent) 0 38px, transparent 38px 58px, color-mix(in srgb, var(--ink) 45%, transparent) 58px 96px);border-radius:2px;width:2px;height:96px;position:absolute;top:26%;right:-2px}.frame__status{height:17px;font-family:var(--font-ui);letter-spacing:.02em;color:var(--ink-soft);justify-content:space-between;align-items:center;padding:0 13px 0 14px;font-size:7.5px;font-weight:600;display:flex}.frame__status svg{fill:currentColor;stroke:currentColor;width:25px;height:7.4px}.frame--browser{border-radius:var(--r-md);width:100%;max-width:460px}.frame__chrome{align-items:center;gap:var(--s2);padding:var(--s2) var(--s3);border-bottom:1px solid var(--border);background:var(--surface-2);display:flex}.frame__chrome i{background:var(--border);border-radius:50%;flex:none;width:8px;height:8px}.frame__url{margin-left:var(--s2);padding:2px var(--s3);background:var(--paper);color:var(--muted);font-family:var(--font-ui);letter-spacing:.02em;text-align:center;border-radius:999px;flex:1;font-size:10px}.frame__screen{background:var(--surface);position:relative;overflow:hidden}.frame--phone .frame__screen{border-radius:16px;box-shadow:inset 4px 0 7px -5px #09080661,inset -4px 0 7px -5px #09080661}.scene .frame--phone .frame__screen{height:calc(var(--device-h) - 2 * var(--rail))}.gallery .frame__screen{height:auto}.frame--browser .frame__screen{height:var(--screen-h)}.frame__pad{padding:var(--s4) var(--s4) var(--s6)}.frame--phone .frame__pad{padding:var(--s2) var(--s4) var(--s6)}.page{font-family:var(--font-read);color:var(--ink);-webkit-hyphens:auto;hyphens:auto}.frame--phone .page{font-size:11px;line-height:1.6}.frame--browser .page{font-size:12.5px;line-height:1.7}.page+.page{margin-top:.8em}.page__chapter{font-family:var(--font-read);letter-spacing:.01em;color:var(--ink-soft);margin-bottom:var(--s3);font-size:13px}.page mark{color:inherit;background-color:#0000;background-image:linear-gradient(to right, color-mix(in srgb, var(--brass) 30%, transparent), color-mix(in srgb, var(--brass) 30%, transparent));-webkit-box-decoration-break:clone;box-decoration-break:clone;background-repeat:no-repeat;background-size:100% 100%;border-radius:2px}.frame__footer{padding:var(--s5) var(--s4) var(--s2);font-family:var(--font-ui);letter-spacing:.04em;color:var(--muted);background:linear-gradient(to top, var(--surface) 58%, transparent);justify-content:space-between;font-size:9px;display:flex;position:absolute;inset:auto 0 0}.frame__sleep{border-radius:inherit;opacity:0;pointer-events:none;background:#090806e0;position:absolute;inset:0}.device{margin:0}.device figcaption{margin-top:var(--s3);font-family:var(--font-ui);font-size:var(--t-xs);color:var(--muted);text-align:center}.scene{--loop:2.8s;--device-h:398px;--rail:4px;--chrome-h:39px;--screen-h:calc(var(--device-h) - var(--chrome-h));--len:100;margin-top:clamp(var(--s7), 9vw, var(--s8))}.scene__devices{justify-content:center;align-items:end;gap:clamp(var(--s5), 6vw, var(--s8));display:flex;position:relative}.scene[data-playing=false] *{animation-play-state:paused}.device--phone .frame{animation:phone-settle var(--loop) var(--ease) 1 forwards}.device--phone .frame__sleep{animation:phone-sleep var(--loop) var(--ease) 1 forwards}.device--phone figcaption{animation:caption-closed var(--loop) var(--ease) 1 forwards}.device--browser .frame{animation:browser-wake var(--loop) var(--ease) 1 forwards}.device--browser .frame__pad{animation:page-scroll var(--loop) var(--ease) 1 forwards}.device--browser .page mark{animation:mark-sweep var(--loop) var(--ease) 1 forwards}.device--browser figcaption{animation:caption-resumed var(--loop) var(--ease) 1 forwards}.scene__link{pointer-events:none;flex:none;align-self:center;width:clamp(56px,7vw,104px);height:40px;overflow:visible}.scene__link path{fill:none;stroke:var(--brass);stroke-width:1.5px;stroke-linecap:round;stroke-dasharray:var(--len);animation:link-draw var(--loop) var(--ease) infinite}@keyframes phone-settle{0%,20%{transform:none}32%,to{transform:scale(.985)translateY(3px)}}@keyframes phone-sleep{0%,19%{opacity:0}30%,to{opacity:1}}@keyframes browser-wake{0%,36%{opacity:.52}48%,to{opacity:1}}@keyframes page-scroll{0%,44%{transform:none}68%,to{transform:translateY(calc(-100% + var(--screen-h)))}}@keyframes mark-sweep{0%,64%{background-size:0% 100%}78%,to{background-size:100% 100%}}@keyframes link-draw{0%,26%{stroke-dashoffset:var(--len);opacity:0}32%{opacity:1}46%,to{stroke-dashoffset:0;opacity:1}}@keyframes caption-closed{0%,24%{opacity:0}34%,to{opacity:1}}@keyframes caption-resumed{0%,66%{opacity:0}78%,to{opacity:1}}@media (width<=720px){.scene__devices{gap:var(--s5)}.device--phone,.scene__link{display:none}.scene{--device-h:340px}.device--browser .frame{max-width:330px}}.story-intro{padding-block-end:var(--s8)}.story-intro__grid{gap:var(--s7);grid-template-columns:minmax(12rem,.7fr) minmax(0,1.3fr);align-items:start;display:grid}.story-intro h2,.moment h2{max-width:13ch;font-size:clamp(2.2rem,4.4vw,3.7rem)}.story-intro p:not(.eyebrow){color:var(--ink-soft);margin-top:var(--s4);max-width:34rem;font-size:var(--t-md)}.moment{padding-block:clamp(var(--s8), 12vw, 10rem);position:relative;overflow:hidden}.moment:before{content:"";pointer-events:none;background:linear-gradient(115deg, color-mix(in srgb, var(--surface) 76%, transparent), transparent 64%);position:absolute;inset:0}.moment--night{background:var(--accent-ink);color:var(--on-accent)}.moment--night:before{background:radial-gradient(circle at 74% 40%, color-mix(in srgb, var(--brass) 30%, transparent), transparent 34%)}.moment--night .eyebrow,.moment--night .moment__copy>p:last-child{color:color-mix(in srgb, var(--on-accent) 74%, transparent)}.moment--paper{background:var(--surface-2)}.moment__grid{align-items:center;gap:clamp(var(--s7), 9vw, 9rem);grid-template-columns:minmax(16rem,.9fr) minmax(18rem,1.1fr);display:grid;position:relative}.moment__copy>p:last-child{color:var(--ink-soft);max-width:29rem;margin-top:var(--s5);font-size:var(--t-md);line-height:1.5}.moment__device{background:color-mix(in srgb, var(--ink) 25%, var(--surface-2));border-radius:30px;width:min(100%,290px);margin:0 auto;padding:5px;position:relative;transform:rotate(3deg);box-shadow:0 32px 60px -26px #00000085}.moment--paper .moment__device{transform:rotate(-3deg)}.moment__device img{border-radius:26px;width:100%;height:auto;display:block}.moment__glow{z-index:-1;aspect-ratio:1;background:color-mix(in srgb, var(--brass) 32%, transparent);filter:blur(36px);opacity:.75;border-radius:50%;width:140%;position:absolute;top:10%;left:-20%}.moment__device[data-revealed]{animation:device-arrive .8s var(--spring) both}@keyframes device-arrive{0%{opacity:0;transform:translateY(20px)rotate(0)}to{opacity:1}}.proof{background:var(--paper)}.proof__grid{gap:var(--s7);margin-top:var(--s6);grid-template-columns:repeat(3,1fr);display:grid}.proof article{border-top:1px solid var(--border);padding-top:var(--s5)}.proof__icon{color:var(--brass);font-family:var(--font-display-web);margin-bottom:var(--s4);font-size:2rem;line-height:1;display:block}.proof h3{font-size:var(--t-md);margin-bottom:var(--s3)}.proof p{color:var(--ink-soft);font-size:var(--t-sm)}@media (width<=720px){.header__nav{gap:var(--s3);font-size:var(--t-xs)}.story-intro__grid,.moment__grid{gap:var(--s6);grid-template-columns:1fr}.story-intro{padding-block-end:var(--s7)}.moment{padding-block:var(--s8)}.moment__copy{max-width:34rem}.moment__device{width:min(76vw,285px)}.proof__grid{gap:var(--s5);grid-template-columns:1fr}}.pillars{gap:var(--s6);grid-template-columns:repeat(auto-fit,minmax(15rem,1fr));display:grid}.pillar h3{font-size:var(--t-md);margin-bottom:var(--s3)}.pillar p{color:var(--ink-soft);font-size:var(--t-sm);line-height:1.65}.pillar__rule{background:var(--brass);width:34px;height:2px;margin-bottom:var(--s4);border-radius:1px}.gallery{gap:clamp(var(--s5), 5vw, var(--s7));grid-template-columns:repeat(auto-fit,minmax(20rem,1fr));align-items:end;display:grid}.gallery figure{margin:0}.gallery .frame{width:100%;max-width:none}.gallery .frame--phone{max-width:208px;margin-inline:auto}.gallery img{width:100%;height:auto;display:block}.gallery figcaption{margin-top:var(--s4);font-size:var(--t-sm);color:var(--muted);text-align:center}.closing{border-top:1px solid var(--border);border-bottom:1px solid var(--border);background:var(--surface-2);text-align:center}.closing h2{font-size:var(--t-xl)}.closing p{margin-top:var(--s4);color:var(--ink-soft)}.closing .cta-row{justify-content:center}.footer{justify-content:space-between;align-items:center;gap:var(--s4);padding-block:var(--s7);font-size:var(--t-sm);color:var(--muted);flex-wrap:wrap;display:flex}.footer nav{gap:var(--s5);flex-wrap:wrap;display:flex}.footer a{text-decoration:none}.footer a:hover{color:var(--ink);text-decoration:underline}[data-reveal]{opacity:0;transition:opacity .62s var(--ease), transform .62s var(--ease);transform:translateY(14px)}[data-reveal][data-revealed]{opacity:1;transform:none}[data-reveal]:nth-child(2){transition-delay:80ms}[data-reveal]:nth-child(3){transition-delay:.16s}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.001ms!important;animation:none!important}.device--phone .frame__sleep,.device--browser .frame{opacity:1}.device--browser .frame__pad{transform:translateY(calc(-100% + var(--screen-h)))}.device--browser .page mark{background-size:100% 100%}.device--phone figcaption,.device--browser figcaption{opacity:1}.scene__link path{opacity:1;stroke-dashoffset:0}[data-reveal]{opacity:1;transform:none}}
