*,:before,:after{box-sizing:border-box;margin:0;padding:0}@font-face{font-family:Geist Serif;src:url(/fonts/GeistSerif-Regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/GeistSans-Variable.woff2)format("woff2");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist;src:url(/fonts/GeistSans-Italic-Variable.woff2)format("woff2");font-weight:100 900;font-style:italic;font-display:swap}:root{--color-ink:#161514;--color-text:#3b3936;--color-muted:#6b655e;--color-line:#1615141a;--color-line-strong:#16151438;--color-paper:#f6f1ea;--color-card:#faf6f1;--color-accent:#142437;--color-accent-hover:#22385a;--color-on-accent:#fdf8f4;--color-on-video:#fbf6ef;--font-serif:"Geist Serif", "Times New Roman", Times, serif;--font-sans:"Geist", ui-sans-serif, system-ui, -apple-system, "Segoe UI", "Hiragino Sans", sans-serif;--text-xs:12px;--text-sm:14px;--text-body:16px;--text-base:17px;--text-md:clamp(21px, 1.9vw, 25px);--text-lg:clamp(24px, 2.6vw, 34px);--text-xl:clamp(38px, 5vw, 64px);--text-display:clamp(96px, 12.5vw, 184px);--radius:12px;--radius-pill:999px;--tracking-display:-.045em;--tracking-heading:-.03em;--tracking-title:-.015em;--leading-heading:1.05;--leading-body:1.7;--page-gutter:clamp(20px, 4vw, 56px);--content-wide:1040px;--content-reading:720px;--section-space:clamp(104px, 12vw, 176px);--head-space:clamp(40px, 5vw, 72px);--nav-height:68px;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-in-out:cubic-bezier(.65, 0, .35, 1);--dur-reveal:1.1s}html{font-synthesis:none;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;font-kerning:normal;font-feature-settings:"kern" 1, "liga" 1}body{font-family:var(--font-sans);font-size:var(--text-base);background:var(--color-paper);color:var(--color-text);min-height:100vh}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(90% 70% at 50% -10%,#fffdf9d9 0%,#fffdf900 70%),radial-gradient(120% 90% at 85% 110%,#d6be9e4d 0%,#d6be9e00 65%),radial-gradient(100% 80% at 0 100%,#c4b4a033 0%,#c4b4a000 60%);position:fixed;inset:0}body:after{content:"";pointer-events:none;z-index:9999;opacity:.075;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='grain'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='260' height='260' filter='url(%23grain)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:260px 260px;position:fixed;inset:0}h1,h2,h3{font-family:var(--font-serif);font-weight:400}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}ul{list-style:none}p{text-wrap:pretty}::selection{color:var(--color-ink);background:#14243724}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}section[id]{scroll-margin-top:calc(var(--nav-height) + 16px)}.text-link{transition:background-size .42s var(--ease-out), color .2s ease;background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 1px;padding-bottom:2px}.text-link:hover{background-size:100% 1px}.section-head{text-align:center;margin:0 auto var(--head-space);max-width:var(--content-wide)}.section-title{font-size:var(--text-xl);color:var(--color-ink);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:balance}.section-lede{max-width:var(--content-reading);font-size:var(--text-base);color:var(--color-muted);margin:24px auto 0;line-height:1.65}.nowrap{white-space:nowrap}.btn{border-radius:var(--radius-pill);min-height:44px;font-size:var(--text-body);letter-spacing:-.005em;cursor:pointer;transition:background-color .18s ease, color .18s ease, border-color .18s ease, transform .14s var(--ease-out);border:1px solid #0000;justify-content:center;align-items:center;gap:10px;padding:11px 22px;font-weight:500;line-height:1.2;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--color-accent);color:var(--color-on-accent)}.btn-primary:hover{background:var(--color-accent-hover)}.btn-lg{min-height:56px;padding:16px 30px}.btn-arrow{transition:transform .26s var(--ease-out);display:inline-block}.btn:hover .btn-arrow{transform:translate(3px)}.js .reveal{opacity:0;transition:opacity calc(var(--dur-reveal) * .7) ease-out, transform var(--dur-reveal) var(--ease-out);transform:translateY(18px)}.js .reveal-dramatic{opacity:0;filter:blur(10px);transition:opacity var(--dur-reveal) ease-out, filter var(--dur-reveal) var(--ease-out), transform calc(var(--dur-reveal) * 1.2) var(--ease-out);transform:translateY(28px)}.js .reveal.is-visible,.js .reveal-dramatic.is-visible{opacity:1;filter:none;transform:translateY(0)}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.js .reveal,.js .reveal-dramatic{opacity:1;filter:none;transition:none;transform:none}}@media (width<=768px){:root{--text-body:15px;--text-base:16px}}.film{z-index:10000;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);cursor:zoom-out;background:#0c0b0af0;place-items:center;padding:clamp(16px,5vw,72px);animation:.42s ease-out both film-fade;display:grid;position:fixed;inset:0}.film-frame{aspect-ratio:4/3;cursor:auto;border-radius:var(--radius);width:min(100%,133.333dvh - 2.66667*clamp(16px,5vw,72px),1440px);animation:film-rise .72s var(--ease-out) 80ms both;background:#000;overflow:hidden;box-shadow:0 40px 120px #00000080}.film-frame video{background:#000;width:100%;height:100%;display:block}.film-close{top:18px;right:var(--page-gutter);min-height:44px;font-size:var(--text-body);color:#fbf6efb8;cursor:pointer;background:0 0;border:0;padding:0 4px;transition:color .2s;position:fixed}.film-close:hover{color:var(--color-on-video)}.film-close:focus-visible{outline-color:var(--color-on-video)}.film--closing{animation:.36s ease-in both film-fade-out}.film--closing .film-frame{animation:film-sink .36s var(--ease-in-out) both}@keyframes film-fade{0%{opacity:0}}@keyframes film-fade-out{to{opacity:0}}@keyframes film-rise{0%{opacity:0;transform:translateY(24px)scale(.96)}}@keyframes film-sink{to{opacity:0;transform:scale(.97)}}@media (prefers-reduced-motion:reduce){.film,.film-frame,.film--closing,.film--closing .film-frame{animation:none}}.hero-head{padding:calc(var(--nav-height) + clamp(40px, 7vh, 96px)) var(--page-gutter) clamp(28px, 4vh, 48px);justify-content:space-between;align-items:flex-end;gap:40px;display:flex}.hero-title{font-size:var(--text-display);letter-spacing:-.035em;color:var(--color-ink);line-height:.78;display:flex}.hero-letter{margin:-.04em -.02em -.06em;padding:.04em .02em .06em;display:block;overflow:hidden}.hero-letter>span{animation:hero-letter-in 1.3s var(--ease-out) both;animation-delay:calc(.15s + var(--i) * 90ms);display:block}.hero-aside{max-width:360px;animation:hero-fade-up 1.2s var(--ease-out) .6s both;padding-bottom:.1em}.hero-subtitle{font-family:var(--font-serif);letter-spacing:-.015em;color:var(--color-ink);text-wrap:balance;font-size:clamp(20px,1.9vw,26px);line-height:1.22}.hero-press{font-size:var(--text-sm);color:var(--color-muted);margin-top:14px}.hero-press-name{font-family:var(--font-serif);color:var(--color-ink);font-size:1.12em}.hero-press-link{color:var(--color-text);text-decoration:underline;-webkit-text-decoration-color:var(--color-line-strong);text-decoration-color:var(--color-line-strong);text-underline-offset:3px;transition:color .2s,text-decoration-color .2s}.hero-press-link:hover{color:var(--color-ink);text-decoration-color:currentColor}.hero-track{height:165vh;position:relative}.hero-pin{place-items:start center;height:100svh;display:grid;position:sticky;top:0}.hero-frame{cursor:pointer;width:100%;height:100%;clip-path:inset(0 var(--page-gutter) 0 var(--page-gutter) round var(--radius));animation:hero-frame-in 1.4s var(--ease-out) .35s both;background:#171513;border:0;padding:0;display:block;position:relative;overflow:hidden}.hero-media,.hero-video,.hero-frame-shade{position:absolute;inset:0}.hero-video{object-fit:cover;width:100%;height:100%}.hero-frame-shade{pointer-events:none;background:linear-gradient(#0e0c0a00 72%,#0e0c0a8c 100%)}.hero-film{left:calc(var(--page-gutter) + clamp(20px, 2.4vw, 36px));font-size:var(--text-body);color:var(--color-on-video);align-items:center;gap:12px;font-weight:450;display:inline-flex;position:absolute;bottom:clamp(20px,3vw,40px)}.hero-film-icon{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);width:40px;height:40px;transition:background-color .26s ease, color .26s ease, border-color .26s ease, transform .42s var(--ease-out);border:1px solid #fbf6ef80;border-radius:50%;place-items:center;display:grid}.hero-film-icon svg{margin-left:2px}@media (hover:hover) and (pointer:fine){.hero-frame:hover .hero-film-icon{background:var(--color-on-video);border-color:var(--color-on-video);color:var(--color-ink);transform:scale(1.08)}}.hero-frame:focus-visible{outline:none}.hero-frame:focus-visible .hero-film-icon{outline:2px solid var(--color-on-video);outline-offset:4px}@keyframes hero-letter-in{0%{transform:translateY(105%)}}@keyframes hero-fade-up{0%{opacity:0;transform:translateY(14px)}}@keyframes hero-frame-in{0%{opacity:0;transform:translateY(48px)}}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference) and (width>=769px){.hero-track{view-timeline:--hero-track block}.hero-frame{clip-path:none;animation:hero-frame-in 1.4s var(--ease-out) .35s both, hero-frame-open linear both;animation-timeline:auto,--hero-track;animation-range:normal,contain contain 70%}.hero-film{animation:linear both hero-film-shift;animation-timeline:--hero-track;animation-range:contain contain 70%}}}@keyframes hero-frame-open{0%{clip-path:inset(0 var(--page-gutter) 0 var(--page-gutter) round var(--radius))}to{clip-path:inset(0)}}@keyframes hero-film-shift{to{left:clamp(20px,2.4vw,36px)}}@media (width<=768px){.hero{min-height:100svh;padding-top:var(--nav-height);flex-direction:column;justify-content:space-evenly;display:flex}.hero-head{flex-direction:column;align-items:flex-start;gap:clamp(20px,4.5svh,40px);padding:0 20px}.hero-title{font-size:clamp(72px,22vw,104px)}.hero-track{height:auto;padding:0 20px}.hero-pin{height:auto;position:static}.hero-frame{aspect-ratio:4/3;height:auto;clip-path:inset(0 round var(--radius))}.hero-film{font-size:var(--text-sm);bottom:14px;left:16px}.hero-film-icon{width:34px;height:34px}}@media (prefers-reduced-motion:reduce){.hero-letter>span,.hero-aside,.hero-frame{animation:none}}.gallery{padding:0 var(--page-gutter);overflow-x:clip}.gallery-collage{--h:var(--wide-h);aspect-ratio:100 / var(--h);max-width:1200px;margin:0 auto;position:relative}.gallery-photo{--x:var(--wide-x);--y:var(--wide-y);--w:var(--wide-w);left:calc(var(--x) * 1%);top:calc(var(--y) / var(--h) * 100%);width:calc(var(--w) * 1%);aspect-ratio:var(--ratio);background:#e6ded4;border-radius:3px;position:absolute;overflow:hidden}.gallery-photo img{object-fit:cover;object-position:var(--pos,50% 50%);width:100%;height:100%;transition:transform 1.2s var(--ease-out);display:block}@media (hover:hover) and (pointer:fine){.gallery-photo:hover img{transform:scale(1.03)}}@media (prefers-reduced-motion:no-preference){.gallery-photo img{transform-origin:50% 25%;animation:gallery-breathe calc(9s + var(--i) * .6s) ease-in-out infinite alternate;animation-delay:calc(var(--i) * -1.7s)}@supports (animation-timeline:view()){.gallery-photo{animation:linear both gallery-drift,linear both gallery-fade;animation-timeline:view(),view();animation-range:cover,entry entry 80%}}}@keyframes gallery-breathe{0%{scale:1}to{scale:1.05}}@keyframes gallery-drift{0%{translate:0 calc(var(--drift) * var(--depth,1))}to{translate:0 calc(var(--drift) * var(--depth,1) * -1)}}@keyframes gallery-fade{0%{opacity:0}to{opacity:1}}@media (width<=768px){.gallery{padding:0 20px}.gallery-collage{--h:var(--phone-h)}.gallery-photo{--x:var(--phone-x);--y:var(--phone-y);--w:var(--phone-w);--depth:0;aspect-ratio:var(--phone-ratio,var(--ratio))}}.fill-text{--p:1}.js .fill-text{--p:0}.fill-word{opacity:clamp(.16, calc((var(--p) * (var(--n) + 2) - var(--i)) / 3), 1);transition:opacity .36s var(--ease-out)}.what-is{padding:var(--section-space) var(--page-gutter);text-align:center}.what-is-intro{max-width:var(--content-wide);margin:0 auto}.what-is-intro .what-is-line{font-family:var(--font-serif);font-size:var(--text-md);letter-spacing:-.012em;color:var(--color-ink);text-wrap:pretty;line-height:1.36}.what-is-intro .what-is-line+.what-is-line{margin-top:.5em}.what-is-thesis{max-width:var(--content-wide);font-family:var(--font-serif);letter-spacing:-.024em;color:var(--color-ink);text-wrap:balance;margin:clamp(72px,9vw,128px) auto 0;font-size:clamp(30px,3.4vw,46px);line-height:1.18}.what-is-details{max-width:var(--content-wide);border-top:1px solid var(--color-line);text-align:left;grid-template-columns:1.15fr .85fr;gap:56px;margin:clamp(72px,9vw,128px) auto 0;padding-top:40px;display:grid}.what-is-details .what-is-line{font-size:var(--text-base);color:var(--color-text);line-height:var(--leading-body)}@media (width<=768px){.what-is{padding:72px 20px}.what-is-details{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:32px}}.pillars{padding:var(--section-space) var(--page-gutter)}.pillars-grid{max-width:var(--content-wide);grid-template-columns:repeat(2,minmax(0,1fr));gap:72px;margin:0 auto;display:grid}.pillar{padding-top:32px;position:relative}.pillar:before{content:"";background:var(--color-line-strong);transform-origin:0;height:1px;position:absolute;top:0;left:0;right:0}.js .pillar.reveal:before{transition:transform 1.4s var(--ease-out) .12s;transform:scaleX(0)}.js .pillar.reveal.is-visible:before{transform:none}.pillar-title{font-size:var(--text-md);color:var(--color-ink);letter-spacing:var(--tracking-title);margin-bottom:22px;line-height:1.2}.pillar-item{font-size:var(--text-body);color:var(--color-text);padding-left:22px;line-height:1.6;position:relative}.pillar-item+.pillar-item{margin-top:10px}.pillar-item:before{content:"";background:var(--color-muted);width:10px;height:1px;position:absolute;top:.8em;left:0}@media (width<=640px){.pillars{padding:var(--section-space) 20px}.pillars-grid{grid-template-columns:minmax(0,1fr);gap:48px}}@media (prefers-reduced-motion:reduce){.js .pillar.reveal:before{transition:none;transform:none}}.journal-section{padding:0 var(--page-gutter) var(--section-space);flex-direction:column;align-items:center;display:flex}.journal-list{width:100%;max-width:var(--content-wide);border-bottom:1px solid var(--color-line);margin:0 auto}.journal-row{border-top:1px solid var(--color-line);color:inherit;grid-template-columns:minmax(120px,.42fr) minmax(0,1fr) 24px;align-items:baseline;gap:8px 40px;padding:36px 0;display:grid;position:relative}.journal-date{font-size:var(--text-sm);color:var(--color-muted);white-space:nowrap;font-variant-numeric:tabular-nums;display:block}.journal-row-title{font-size:var(--text-md);color:var(--color-ink);letter-spacing:var(--tracking-title);text-wrap:pretty;line-height:1.2;transition:color .24s}.journal-row-summary{max-width:60ch;font-size:var(--text-body);color:var(--color-muted);margin-top:10px;line-height:1.6}.journal-row-text{transition:transform .52s var(--ease-out)}.journal-row-arrow{color:var(--color-ink);opacity:0;transition:opacity .28s ease, transform .52s var(--ease-out);justify-self:end;font-size:20px;transform:translate(-10px)}@media (hover:hover) and (pointer:fine){.journal-row:hover .journal-row-text{transform:translate(8px)}.journal-row:hover .journal-row-arrow{opacity:1;transform:none}.journal-row:hover .journal-row-title{color:var(--color-accent)}}.journal-page{padding:calc(var(--nav-height) + 72px) var(--page-gutter) var(--section-space)}.entry{max-width:var(--content-reading);margin:0 auto}.entry-back{font-size:var(--text-body);color:var(--color-muted);margin-bottom:56px;transition:color .2s;display:inline-block}.entry-back:hover{color:var(--color-ink)}.entry-title{color:var(--color-ink);font-size:clamp(34px,4vw,52px);line-height:var(--leading-heading);letter-spacing:var(--tracking-heading);text-wrap:pretty;margin:16px 0 24px}.entry-summary{font-family:var(--font-serif);font-size:var(--text-md);color:var(--color-muted);letter-spacing:-.01em;line-height:1.35}.entry-author{font-size:var(--text-sm);color:var(--color-muted);margin-top:18px}.entry-media{aspect-ratio:16/9;border-radius:var(--radius);background:var(--color-card);margin-top:56px;overflow:hidden}.entry-media img{object-fit:cover;width:100%;height:100%;display:block}.entry-body{color:var(--color-text);margin-top:64px;font-size:18px;line-height:1.8}.entry-body strong{color:var(--color-ink);font-weight:600}.entry-body>*+*{margin-top:1.6em}.entry-body>p:has(>strong:only-child){color:var(--color-ink);margin-top:2.8em}.entry-body h2,.entry-body h3{color:var(--color-ink);letter-spacing:var(--tracking-title);margin-top:3.2em;line-height:1.2}.entry-body>:is(h2,h3)+*,.entry-body>:is(h2,h3)+.entry-figure{margin-top:1.2em}.entry-body>:is(h2,h3)+p:has(>strong:only-child){margin-top:1.2em}.entry-body h2{font-size:var(--text-lg)}.entry-body h3{font-size:var(--text-md)}.entry-body a{text-underline-offset:3px;-webkit-text-decoration:underline #1a1a1a4d;text-decoration:underline #1a1a1a4d}.entry-body a:hover{color:var(--color-accent);text-decoration-color:currentColor}.entry-body ul,.entry-body ol{padding-left:1.3em}.entry-body ul{list-style:outside}.entry-body li+li{margin-top:.4em}.entry-body blockquote{border-left:1px solid var(--color-line-strong);color:var(--color-muted);padding-left:1.1em;font-size:16px;line-height:1.7}.entry-body img{border-radius:var(--radius);max-width:100%;height:auto;display:block}.entry-body>.entry-figure{margin-block:3.4em}.entry-figure-frame{border-radius:var(--radius);background:var(--color-card);cursor:zoom-in;border:0;width:100%;padding:0;display:block;overflow:hidden}.entry-figure-frame img{width:100%;transition:scale 1.6s var(--ease-out), transform .7s var(--ease-out);border-radius:0}.entry-figure figcaption{font-size:var(--text-sm);color:var(--color-muted);text-align:center;margin-top:14px;line-height:1.5}.entry-figure--portrait .entry-figure-frame img{aspect-ratio:4/5;object-fit:cover}@media (hover:hover){.entry-figure-frame:hover img{transform:scale(1.02)}}.js .entry-figure{opacity:0;transition:opacity .9s ease-out, transform 1.1s var(--ease-out);transform:translateY(20px)}.js .entry-figure .entry-figure-frame img{scale:1.06}.js .entry-figure.is-visible{opacity:1;transform:none}.js .entry-figure.is-visible .entry-figure-frame img{scale:1}@media (prefers-reduced-motion:no-preference){.js .entry-header>*,.js .entry>.entry-media{animation:entry-in .9s var(--ease-out) both}.js .entry-header>:nth-child(2){animation-delay:60ms}.js .entry-header>:nth-child(3){animation-delay:.12s}.js .entry-header>:nth-child(4){animation-delay:.18s}.js .entry-header>:nth-child(5){animation-delay:.24s}.js .entry>.entry-media{animation-delay:.32s}}@keyframes entry-in{0%{opacity:0}}@media (prefers-reduced-motion:reduce){.js .entry-figure,.js .entry-figure .entry-figure-frame img{opacity:1;transition:none;transform:scale(1)}}.entry-progress{display:none}@supports (animation-timeline:scroll()){.entry-progress{z-index:101;background:var(--color-accent);transform-origin:0;height:2px;animation:linear both entry-progress;animation-timeline:scroll(root);display:block;position:fixed;top:0;left:0;right:0}}@keyframes entry-progress{0%{transform:scaleX(0)}to{transform:scaleX(1)}}.lightbox{z-index:200;cursor:zoom-out;background:#f6f1eaf7;place-items:center;padding:clamp(16px,4vw,56px);display:grid;position:fixed;inset:0}.lightbox-image{border-radius:var(--radius);view-transition-name:entry-zoom;width:auto;max-width:100%;height:auto;max-height:calc(100dvh - 2*clamp(16px,4vw,56px))}.lightbox-close{border:1px solid var(--color-line);width:44px;height:44px;color:var(--color-ink);cursor:pointer;background:0 0;border-radius:50%;font-size:24px;line-height:1;position:fixed;top:14px;right:14px}@supports not (view-transition-name:none){.lightbox{animation:.24s ease-out both lightbox-in}}@keyframes lightbox-in{0%{opacity:0}}::view-transition-group(entry-zoom){animation-duration:.46s;animation-timing-function:var(--ease-out)}::view-transition-old(root){animation-duration:.3s}::view-transition-new(root){animation-duration:.3s}.entry-body hr{border:0;border-top:1px solid var(--color-line);margin-block:3.6em}.not-found .entry-back{margin:32px 0 0}@media (width<=768px){.journal-section{padding:0 20px var(--section-space)}.journal-row{grid-template-columns:minmax(0,1fr);gap:10px;padding:26px 0}.journal-row-arrow{display:none}.entry-body{font-size:17px}.journal-page{padding:calc(var(--nav-height) + 40px) 20px var(--section-space)}.entry-back{margin-bottom:28px}.entry-media{margin-top:28px}.entry-body{margin-top:40px}}.faq{padding:0 var(--page-gutter) var(--section-space)}.faq-columns{max-width:var(--content-wide);grid-template-columns:repeat(2,minmax(0,1fr));align-items:start;gap:0 48px;margin:0 auto;display:grid}.faq-item{border-top:1px solid var(--color-line)}.faq-item:last-child{border-bottom:1px solid var(--color-line)}.faq-item h3{font:inherit}.faq-question{cursor:pointer;text-align:left;width:100%;font-family:var(--font-serif);letter-spacing:-.01em;color:var(--color-ink);background:0 0;border:none;justify-content:space-between;align-items:center;gap:24px;padding:26px 0;font-size:20px;line-height:26px;transition:color .24s;display:flex}.faq-question:hover{color:var(--color-accent)}.faq-icon{flex-shrink:0;width:14px;height:14px;position:relative}.faq-icon:before,.faq-icon:after{content:"";width:14px;height:1px;transition:transform .22s var(--ease-out);background:currentColor;position:absolute;top:50%;left:0;transform:translateY(-50%)}.faq-icon:after{transform:translateY(-50%)rotate(90deg)}.faq-question--open .faq-icon{transform:rotate(180deg)}.faq-question--open .faq-icon:after{transform:translateY(-50%)rotate(0)}.faq-icon{transition:transform .42s var(--ease-out)}.faq-answer-wrapper{transition:grid-template-rows .42s var(--ease-out);grid-template-rows:0fr;display:grid}.faq-answer-wrapper--open{grid-template-rows:1fr}.faq-answer{font-size:var(--text-body);color:var(--color-text);opacity:0;transition:opacity .24s ease, transform .42s var(--ease-out), padding-bottom .42s var(--ease-out);padding-right:38px;line-height:1.75;overflow:hidden;transform:translateY(-4px)}.faq-answer-wrapper--open .faq-answer{opacity:1;padding-bottom:24px;transition-delay:80ms,0s,0s;transform:none}@media (width<=900px){.faq-columns{max-width:var(--content-reading);grid-template-columns:minmax(0,1fr)}.faq-list:first-child .faq-item:last-child{border-bottom:0}}@media (width<=768px){.faq{padding:0 20px var(--section-space)}.faq-question{padding:22px 0;font-size:18px;line-height:24px}.faq-answer{padding-right:24px}.faq-answer-wrapper--open .faq-answer{padding-bottom:20px}}@media (prefers-reduced-motion:reduce){.faq-answer-wrapper,.faq-answer,.faq-icon,.faq-icon:before,.faq-icon:after{transition:none}}.apply{padding:0 var(--page-gutter) var(--section-space);text-align:center}.apply-form{width:100%;max-width:var(--content-reading);text-align:left;margin:0 auto}.apply-form iframe{border:0;display:block}@media (width<=768px){.apply{padding:0 20px var(--section-space)}}.footer{padding:0 var(--page-gutter);overflow:hidden}.footer-inner{max-width:var(--content-wide);border-top:1px solid var(--color-line);grid-template-columns:1fr auto;align-items:start;gap:32px;margin:0 auto;padding-top:40px;display:grid}.footer-col{font-size:var(--text-sm);flex-direction:column;align-items:flex-start;gap:10px;display:flex}.footer-link{color:var(--color-text)}.footer-link:hover{color:var(--color-ink)}.footer-legal{font-size:var(--text-sm);color:var(--color-muted);font-variant-numeric:tabular-nums}.footer-mark{max-width:var(--content-wide);font-family:var(--font-serif);letter-spacing:-.04em;color:var(--color-ink);text-align:center;-webkit-user-select:none;user-select:none;height:.6em;margin:clamp(56px,8vw,112px) auto 0;font-size:clamp(120px,20vw,280px);line-height:.74}.js .footer-mark.reveal{transition:opacity 1.2s ease-out, transform 1.6s var(--ease-out);transform:translateY(30%)}.js .footer-mark.reveal.is-visible{transform:none}@media (width<=640px){.footer{padding:0 20px}.footer-inner{grid-template-columns:1fr;gap:28px}.footer-mark{font-size:34vw}}.yt-facade,.yt-facade-frame{border:0;width:100%;height:100%;display:block}.yt-facade{background:var(--color-ink);cursor:pointer;padding:0;position:relative}.yt-facade-thumb{object-fit:cover;width:100%;height:100%;transition:opacity .2s;display:block}.yt-facade-play{color:#1a1a1a;width:72px;height:72px;transition:transform .18s var(--ease-out), background-color .18s ease;background:#fdf8f4eb;border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 10px 30px #1a1a1a2e}.yt-facade-play svg{margin-left:4px}@media (hover:hover) and (pointer:fine){.yt-facade:hover .yt-facade-play{background:#fdf8f4;transform:translate(-50%,-50%)scale(1.06)}.yt-facade:hover .yt-facade-thumb{opacity:.94}}@media (width<=768px){.yt-facade-play{width:56px;height:56px}.yt-facade-play svg{width:22px;height:22px}}.yt-facade:focus-visible{outline:2px solid var(--color-on-accent);outline-offset:-6px}:root{--invite-color-bg:#111a29;--invite-color-bg-deep:#0a1019;--invite-color-text:#fff7ec;--invite-color-body:#fff7ece6;--invite-color-muted:#fff7ecc2;--invite-color-gold:#f0c879;--invite-color-gold-dark:#d9af62;--invite-font-en:"Lora", serif;--invite-font-jp:"Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif;--invite-font-display:"Lora", "Zen Old Mincho", "Hiragino Mincho ProN", "Yu Mincho", serif}.invite-page{min-height:100vh;color:var(--invite-color-text);background:radial-gradient(circle at 50% 26%, #404c5f8c, #121c2b38 30rem, transparent 50rem), radial-gradient(circle at 50% 38%, #f0c87921, #f0c8790a 22rem, transparent 38rem), radial-gradient(circle at 18% 88%, #9776401a, transparent 30rem), linear-gradient(180deg, #182233 0%, var(--invite-color-bg) 42%, var(--invite-color-bg-deep) 100%);font-family:var(--invite-font-en);position:relative;overflow-x:hidden}.invite-page:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(circle,#0000 0 44%,#00000061 100%),linear-gradient(90deg,#0000002e,#0000 18% 82%,#0000002e);position:fixed;inset:0}.invite-page--jp{font-family:var(--invite-font-jp)}.invite-stars{z-index:0;pointer-events:none;opacity:.95;background-image:radial-gradient(circle,#ffffff14 0 1px,#0000 1.4px),radial-gradient(circle,#ffffff0e 0 1px,#0000 1.4px),radial-gradient(circle,#ffffff09 0 1.5px,#0000 2px);background-position:8px 16px,52px 34px,96px 82px;background-size:96px 96px,154px 154px,232px 232px;animation:9s ease-in-out infinite alternate invite-stars-twinkle;position:fixed;inset:0}.invite-envelope-stage{z-index:20;align-content:center;place-items:center;gap:30px;padding:72px 24px 40px;display:grid;position:fixed;inset:0}.invite-envelope-eyebrow{color:var(--invite-color-gold);font-family:var(--invite-font-display);letter-spacing:.42em;text-indent:.42em;text-transform:uppercase;text-align:center;opacity:.85;margin:0;font-size:12px;font-weight:500}.invite-envelope{aspect-ratio:1.55;color:#142437;width:min(520px,100vw - 42px);font-family:var(--invite-font-en);transform-origin:50%;background:linear-gradient(#fff9effa,#efe1c8fa),#f6ead9;border-radius:8px;place-items:center;animation:4s ease-in-out infinite invite-envelope-breathe;display:grid;position:relative;box-shadow:0 36px 120px #0000007a,0 0 90px #f0c8791f,inset 0 1px #ffffffb8,inset 0 -18px 48px #8664371a}.invite-envelope:hover,.invite-envelope:focus-within{animation-play-state:paused}.invite-envelope:after{content:"";pointer-events:none;border:1px solid #5c47302e;border-radius:8px;position:absolute;inset:0;box-shadow:inset 0 0 0 1px #ffffff57}.invite-envelope__flap{z-index:2;clip-path:polygon(0 0,100% 0,50% 100%);filter:drop-shadow(0 7px 5px #6c532f1a);transform-origin:top;background:linear-gradient(#fffaf1fa,#e7d3b2f5);border-radius:8px 8px 0 0;height:58%;transition:transform .6s cubic-bezier(.22,1,.36,1);position:absolute;top:0;left:0;right:0}.invite-envelope__body{z-index:1;background:linear-gradient(#0000 48%,#ab85521a 100%);border-radius:8px;position:absolute;inset:0}.invite-envelope__seal{z-index:3;color:#142437;justify-items:center;margin-top:0;transition:opacity .42s;display:grid;position:absolute;top:48%;left:50%;transform:translate(-50%,-50%)}.invite-envelope__ag1{background:radial-gradient(circle at 32% 24%, #ffffff57, transparent 28%), var(--invite-color-gold);color:#102337;width:104px;height:104px;font:700 36px/1 var(--invite-font-en);letter-spacing:.04em;text-indent:.04em;border:1px solid #6d4a153d;border-radius:50%;place-items:center;display:grid;box-shadow:0 12px 26px #6041153d,inset 0 0 0 3px #ffffff38,inset 0 0 0 4px #6d4a1547}.invite-envelope__choices{z-index:4;justify-content:center;gap:12px;transition:opacity .26s;display:flex;position:absolute;bottom:28px;left:32px;right:32px}.invite-envelope__choice{color:#142437;min-width:124px;min-height:42px;font:600 14px/1 var(--invite-font-display);letter-spacing:.06em;cursor:pointer;background:#fffbf4c7;border:1px solid #1424372e;border-radius:999px;padding:11px 18px;transition:background-color .15s,transform .15s,box-shadow .15s;box-shadow:0 12px 26px #60411521}.invite-envelope__choice:hover{background:#fffffff2;transform:translateY(-1px);box-shadow:0 14px 30px #6041152e}.invite-page.is-opening .invite-envelope{animation:.65s cubic-bezier(.22,1,.36,1) forwards invite-envelope-open}.invite-page.is-opening .invite-envelope__flap{transform:rotateX(165deg)}.invite-page.is-opening .invite-envelope__seal,.invite-page.is-opening .invite-envelope__choices{opacity:0}.invite-letter{z-index:1;width:min(1120px,100% - 72px);color:var(--invite-color-text);letter-spacing:0;opacity:1;margin:0 auto;padding:112px 0 120px;font-size:18px;line-height:2;position:relative}.invite-page.is-sealed .invite-letter{opacity:0;pointer-events:none;transform:translateY(16px)}.invite-page.is-opened .invite-letter{animation:.7s ease-out both invite-letter-rise}.invite-letter__kicker{width:min(960px,100%);color:var(--invite-color-gold);font-family:var(--invite-font-en);letter-spacing:.34em;text-indent:.34em;text-transform:uppercase;text-align:center;margin:0 auto 22px;font-size:13px;font-weight:500}.invite-letter h1{color:#fff8ec;letter-spacing:0;text-align:center;outline:0;width:min(960px,100%);margin:0 auto;font-family:inherit;font-size:clamp(38px,6vw,64px);font-weight:500;line-height:1.04}.invite-letter__ornament{width:min(960px,100%);color:var(--invite-color-gold);justify-content:center;align-items:center;gap:16px;margin:26px auto 38px;display:flex}.invite-letter__ornament span{background:linear-gradient(90deg,#0000,#f0c879a6);width:72px;height:1px;display:block}.invite-letter__ornament span:last-child{background:linear-gradient(90deg,#f0c879a6,#0000)}.invite-letter__ornament i{opacity:.85;font-size:9px;font-style:normal;line-height:1}.invite-letter__panel,.invite-luma{-webkit-backdrop-filter:blur(22px)saturate(130%);background:#fff6e712;border:1px solid #ffffff29;border-radius:18px;width:min(960px,100%);margin-left:auto;margin-right:auto;box-shadow:0 32px 90px #0000006b,inset 0 1px #f0c87929}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.invite-letter__panel,.invite-luma{background:#242d3af0}}.invite-letter__panel{padding:44px 48px}.invite-letter__panel p{color:var(--invite-color-body)}.invite-letter__panel p+p{margin-top:26px}.invite-letter__signature{border-top:1px solid #f0c87938;margin-top:38px;padding-top:26px}.invite-letter__signoff{color:var(--invite-color-muted);margin:0 0 6px}.invite-letter__signame{color:#fff8ec;letter-spacing:.02em;margin:0;font-weight:600}.invite-page.is-opened .invite-letter__panel>*{animation:.62s ease-out both invite-paragraph-rise;animation-delay:calc(var(--stagger-index,0) * 80ms + .18s)}.invite-luma{margin-top:32px;padding:26px 12px 12px}.invite-luma__heading{color:var(--invite-color-gold);letter-spacing:.34em;text-indent:.34em;text-transform:uppercase;text-align:center;margin:0 0 18px;font-family:inherit;font-size:13px;font-weight:500}.invite-luma iframe{background:var(--invite-color-bg-deep);border:0;border-radius:10px;width:100%;max-width:100%;height:480px;display:block;overflow:hidden}.invite-letter__footer{width:min(960px,100%);color:var(--invite-color-muted);font-family:var(--invite-font-en);letter-spacing:.26em;text-indent:.26em;text-transform:uppercase;text-align:center;opacity:.7;margin:44px auto 0;font-size:12px}.invite-envelope__choice:focus-visible{outline:2px solid var(--invite-color-gold);outline-offset:4px}@keyframes invite-stars-twinkle{0%{opacity:.78}to{opacity:1}}@keyframes invite-envelope-breathe{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes invite-envelope-open{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(1.05)}}@keyframes invite-letter-rise{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes invite-paragraph-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (width<=820px){.invite-envelope{width:min(460px,100vw - 34px)}.invite-envelope__choices{left:24px;right:24px}.invite-letter{width:min(94vw,1120px);padding:96px 0 92px;font-size:17px;line-height:1.95}.invite-letter__panel{padding:38px 34px}}@media (width<=520px){.invite-envelope-stage{gap:22px;padding:76px 18px 32px}.invite-envelope-eyebrow{letter-spacing:.32em;text-indent:.32em;font-size:10px}.invite-envelope{aspect-ratio:1.38;width:min(92vw,360px)}.invite-envelope__flap{height:48%}.invite-envelope__seal{top:46%}.invite-envelope__ag1{width:78px;height:78px;font-size:29px}.invite-envelope__choices{flex-direction:row;align-items:center;gap:10px;bottom:20px;left:24px;right:24px}.invite-envelope__choice{flex:1;width:auto;min-width:0;min-height:38px;padding:10px 12px;font-size:13px}.invite-letter{width:calc(100% - 34px);padding:92px 0 72px;font-size:16px;line-height:1.9}.invite-letter h1{white-space:nowrap;font-size:clamp(23px,6.1vw,30px);line-height:1.12}.invite-letter__panel{border-radius:14px;padding:30px 22px}.invite-letter__panel p+p{margin-top:22px}.invite-luma{border-radius:14px;padding:8px}.invite-luma iframe{height:760px}}@media (prefers-reduced-motion:reduce){.invite-stars,.invite-envelope,.invite-page.is-opening .invite-envelope,.invite-page.is-opened .invite-letter,.invite-page.is-opened .invite-letter__panel>*{animation:none}.invite-envelope__flap,.invite-envelope__seal,.invite-envelope__choices,.invite-envelope__choice{transition:none}.invite-page.is-opened .invite-letter,.invite-page.is-opened .invite-letter__panel>*{opacity:1;transform:none}}.app{width:100%}.site-nav{z-index:100;height:var(--nav-height);margin-bottom:calc(var(--nav-height) * -1);padding:0 var(--page-gutter);border-bottom:1px solid #0000;justify-content:space-between;align-items:center;gap:16px;transition:background-color .32s,border-color .32s,color .32s;display:flex;position:sticky;top:0}.site-nav--scrolled{border-bottom-color:var(--color-line);-webkit-backdrop-filter:blur(14px)saturate(1.2);backdrop-filter:blur(14px)saturate(1.2);background:#f6f1ead1}.site-home{font-family:var(--font-serif);color:var(--color-ink);letter-spacing:-.04em;transition:opacity .32s ease, transform .42s var(--ease-out);font-size:26px}.site-home--hidden{opacity:0;pointer-events:none;transform:translateY(6px)}.site-links{align-items:center;gap:32px;display:flex}.site-link{font-size:var(--text-body);color:var(--color-muted);transition:color .2s ease, background-size .42s var(--ease-out)}.site-link:hover{color:var(--color-ink)}@media (width<=640px){.site-nav{--nav-height:60px;position:absolute;left:0;right:0}section[id]{scroll-margin-top:24px}.site-home{font-size:22px}.site-links{gap:20px}.site-link--portal{display:none}}
