/*! tailwindcss v4.2.1 | MIT License | https://tailwindcss.com */
@layer theme{:root,:host{--font-sans:ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--spacing:.25rem;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.start{inset-inline-start:var(--spacing)}.end{inset-inline-end:var(--spacing)}.table{display:table}}:root{--linen:#f4efe7;--paper:#fbf8f2;--ink:#151417;--soft-ink:#5e5a57;--marigold:#f2b544;--vermilion:#d95643;--periwinkle:#7776c9;--rule:#1514172e;--display:"Iowan Old Style", "Palatino Linotype", Baskerville, Georgia, "Times New Roman", serif}*{box-sizing:border-box}html{background:var(--ink);scroll-behavior:smooth;scroll-padding-top:6rem}html.dialog-open{overflow:hidden}body{background:var(--linen);color:var(--ink);font-family:var(--font-geist-sans), "Avenir Next", Avenir, Arial, sans-serif;min-width:320px;margin:0}button,a{color:inherit;font:inherit}button{touch-action:manipulation}a{text-underline-offset:.2em;text-decoration-thickness:1px}img{max-width:100%;display:block}::selection{background:var(--marigold);color:var(--ink)}:focus-visible{outline:3px solid var(--marigold);outline-offset:4px}.skip-link{background:var(--marigold);color:var(--ink);letter-spacing:.08em;text-transform:uppercase;z-index:500;padding:.9rem 1rem;font-size:.75rem;font-weight:800;position:fixed;top:-6rem;left:1rem}.skip-link:focus{top:1rem}.archive-shell{position:relative;overflow:clip}.archive-header{-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);color:var(--linen);z-index:100;background:#151417db;border-bottom:1px solid #f4efe724;grid-template-columns:1fr auto 1fr;align-items:center;height:4.25rem;padding:0 clamp(1rem,3vw,3.5rem);display:grid;position:fixed;inset:0 0 auto}.wordmark{font-family:var(--display);justify-self:start;font-size:1.25rem;font-style:italic;font-weight:700;text-decoration:none}.wordmark span{color:var(--marigold);font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;margin-left:.3rem;font-size:.64rem;font-style:normal}.archive-header>p{font-family:var(--font-geist-mono), monospace;letter-spacing:.2em;text-transform:uppercase;margin:0;font-size:.65rem}.audio-control{color:var(--linen);cursor:pointer;background:#f4efe712;border:1px solid #f4efe733;border-radius:999px;justify-content:center;justify-self:end;align-items:center;width:44px;height:44px;min-height:44px;padding:0;transition:background .18s,border-color .18s,transform .18s;display:inline-flex}.audio-control:hover{background:#f4efe721;border-color:#f2b544ad;transform:translateY(-1px)}.audio-control:focus-visible{outline:2px solid var(--marigold);outline-offset:3px}.audio-icon{align-items:center;gap:2px;height:14px;display:inline-flex}.audio-icon i{background:var(--marigold);width:2px;height:5px;animation:.62s ease-in-out infinite alternate equalize;display:block}.audio-icon i:nth-child(2){height:13px;animation-delay:-210ms}.audio-icon i:nth-child(3){height:9px;animation-delay:-390ms}.audio-control:not(.is-playing) .audio-icon i{animation-play-state:paused}.audio-control:disabled{cursor:wait;opacity:.58}.music-engine{opacity:.001;pointer-events:none;z-index:0;width:200px;height:200px;position:fixed;bottom:0;right:0;overflow:hidden}.music-engine iframe{border:0;width:200px;height:200px}.reading-progress{z-index:101;background:#f4efe724;height:2px;position:fixed;top:4.25rem;left:0;right:0}.reading-progress:after{background:var(--marigold);content:"";transform-origin:0;position:absolute;inset:0;transform:scaleX(0)}@supports (animation-timeline:scroll()){.reading-progress:after{animation:linear both reading-progress;animation-timeline:scroll(root)}}.archive-hero{background:radial-gradient(circle at 80% 30%, #7776c92e, transparent 30%), var(--ink);color:var(--linen);grid-template-columns:repeat(12,minmax(0,1fr));min-height:100svh;padding:clamp(8rem,14vh,11rem) clamp(1.25rem,5vw,5rem) clamp(5rem,9vh,7rem);display:grid;position:relative;overflow:hidden}.archive-hero:after{content:"";pointer-events:none;border:1px solid #f4efe729;border-radius:50%;width:min(58vw,50rem);height:min(58vw,50rem);position:absolute;top:9vh;right:-16vw}.hero-date{color:#0000;font-family:var(--font-geist-sans), sans-serif;letter-spacing:-.1em;opacity:.22;pointer-events:none;-webkit-text-stroke:1px var(--linen);white-space:nowrap;margin:0;font-size:clamp(8rem,22vw,22rem);font-weight:900;line-height:.76;position:absolute;inset:12% auto auto -1.5vw}.hero-title{z-index:4;grid-column:1/7;align-self:center;max-width:48rem;position:relative}.hero-title>p:first-child{font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:.8rem;margin:0 0 1.8rem;font-size:clamp(.62rem,.85vw,.76rem);font-weight:700;display:flex}.hero-title>p:first-child:before{background:var(--marigold);content:"";width:.65rem;height:.65rem}.hero-title h1{font-family:var(--display);letter-spacing:-.075em;margin:0;font-size:clamp(4.4rem,8.5vw,9.4rem);font-weight:500;line-height:.78}.hero-title h1 span{color:var(--marigold);margin-left:clamp(1.5rem,8vw,8rem);font-style:italic;display:block}.hero-deck{color:#f4efe7c7;font-family:var(--display);max-width:34rem;margin:clamp(2rem,5vh,3.5rem) 0 0;font-size:clamp(1.05rem,1.5vw,1.35rem);line-height:1.55}.hero-meta{font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #f4efe747;justify-content:space-between;gap:2rem;max-width:34rem;margin-top:2.5rem;padding-top:.85rem;font-size:.62rem;display:flex}.hero-mosaic{z-index:3;grid-column:7/-1;align-self:stretch;min-height:38rem;margin-left:clamp(1rem,4vw,4rem);position:relative}.hero-shot{background:var(--paper);cursor:zoom-in;border:0;padding:0;transition:transform .45s cubic-bezier(.2,.8,.2,1),filter .35s;position:absolute;overflow:hidden}.hero-shot img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.2,.8,.2,1)}.hero-shot:hover{z-index:10;transform:translateY(-.5rem)}.hero-shot:hover img{transform:scale(1.035)}.hero-shot--1{z-index:4;width:53%;height:58%;top:8%;right:4%}.hero-shot--2{z-index:5;width:48%;height:42%;bottom:3%;left:0}.hero-shot--3{z-index:2;width:31%;height:36%;top:0;left:3%}.hero-shot--4{z-index:6;width:43%;height:31%;bottom:0;right:0}.enter-archive{letter-spacing:.14em;text-transform:uppercase;grid-column:1/4;align-items:center;gap:.8rem;font-size:.68rem;font-weight:750;text-decoration:none;display:inline-flex;position:absolute;bottom:2rem;right:auto}.enter-archive span{border:1px solid #f4efe761;border-radius:50%;justify-content:center;align-items:center;width:2rem;height:2rem;display:inline-flex}.archive-intro{background:var(--linen);grid-template-columns:repeat(12,minmax(0,1fr));align-items:start;gap:2rem;min-height:82svh;padding:clamp(8rem,14vw,14rem) clamp(1.25rem,7vw,7rem);display:grid}.archive-intro>p:first-child{border-top:1px solid var(--ink);font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;text-transform:uppercase;grid-column:1/3;margin:0;padding-top:.8rem;font-size:.64rem}.archive-intro h2{font-family:var(--display);letter-spacing:-.065em;grid-column:3/12;margin:0;font-size:clamp(3.4rem,6.8vw,8rem);font-weight:500;line-height:.94}.archive-intro h2 em{color:var(--vermilion);font-weight:400}.archive-intro-copy{color:var(--soft-ink);font-family:var(--display);grid-column:7/11;margin:3rem 0 0;font-size:clamp(1.15rem,1.7vw,1.5rem);line-height:1.6}.year-rail{background:var(--ink);color:var(--linen);z-index:80;flex-direction:column;align-items:center;gap:.65rem;width:3.6rem;padding:1rem .55rem;display:flex;position:fixed;top:50%;left:1rem;transform:translateY(-44%)}.rail-title{color:#f4efe77a;font-family:var(--font-geist-mono), monospace;letter-spacing:.15em;text-transform:uppercase;writing-mode:vertical-rl;margin-bottom:.35rem;font-size:.46rem}.year-rail a{color:#f4efe773;font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;padding:.2rem 0;font-size:.52rem;font-weight:700;text-decoration:none;transition:color .18s,transform .18s;position:relative}.year-rail a:before{background:var(--marigold);content:"";opacity:0;border-radius:50%;width:.28rem;height:.28rem;position:absolute;top:50%;left:-.55rem;transform:translateY(-50%)}.year-rail a:hover,.year-rail a[aria-current=true]{color:var(--linen);transform:translate(.1rem)}.year-rail a[aria-current=true]:before{opacity:1}.chapters{background:var(--linen)}.memory-chapter{background:var(--linen);border-top:1px solid var(--rule);grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,4vw,5rem);min-height:110svh;padding:clamp(7rem,11vw,11rem) clamp(1.25rem,7vw,7rem);display:grid;position:relative;overflow:hidden}.memory-chapter:nth-child(4n+2){background:var(--paper)}.memory-chapter:before{background:var(--chapter-accent);content:"";width:clamp(7rem,22vw,20rem);height:.45rem;position:absolute;top:-1px;left:0}.chapter-number{color:#0000;letter-spacing:-.09em;opacity:.09;pointer-events:none;-webkit-text-stroke:1px var(--ink);font-size:clamp(8rem,19vw,20rem);font-weight:900;line-height:.75;position:absolute;top:9rem;left:4vw}.chapter-copy{z-index:3;grid-column:2/5;align-self:start;position:sticky;top:23vh}.chapter-label{font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:.8rem;margin:0 0 1.5rem;font-size:.62rem;font-weight:650;display:flex}.chapter-label span{background:var(--chapter-accent);color:var(--ink);padding:.45rem .55rem}.chapter-copy h2{font-family:var(--display);letter-spacing:-.06em;max-width:8ch;margin:0;font-size:clamp(3.2rem,5.8vw,6.8rem);font-weight:500;line-height:.88}.chapter-copy>p:not(.chapter-label){color:var(--soft-ink);font-family:var(--display);max-width:27rem;margin:2rem 0 0;font-size:clamp(1.05rem,1.35vw,1.25rem);line-height:1.6}.frame-count{border-top:1px solid var(--rule);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;max-width:12rem;margin-top:2rem;padding-top:.65rem;font-size:.57rem;display:block}.chapter-composition{z-index:2;grid-column:5/12;align-content:start;gap:clamp(1.2rem,2vw,2rem);min-width:0;display:grid;position:relative}.photo-frame{cursor:zoom-in;text-align:left;background:0 0;border:0;min-width:0;padding:0}.photo-image{background:#ddd5c9;display:block;position:relative;overflow:hidden}.photo-image:after{content:"";opacity:0;pointer-events:none;border:1px solid #f4efe76b;transition:opacity .25s;position:absolute;inset:.5rem}.photo-frame img{object-fit:cover;width:100%;height:100%;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .4s}.photo-caption{color:var(--soft-ink);font-family:var(--font-geist-mono), monospace;letter-spacing:.02em;align-items:baseline;gap:.65rem;padding-top:.6rem;font-size:.57rem;line-height:1.45;display:flex}.photo-caption b{color:var(--ink);letter-spacing:.1em;font-size:.54rem}.photo-frame:hover img{filter:saturate(1.04);transform:scale(1.025)}.photo-frame:hover .photo-image:after{opacity:1}.chapter--duet .chapter-composition,.chapter--portrait-duet .chapter-composition{grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.chapter--duet .photo-frame:first-child .photo-image{aspect-ratio:3/4}.chapter--duet .photo-frame:nth-child(2){margin-top:24vh}.chapter--duet .photo-frame:nth-child(2) .photo-image{aspect-ratio:4/5}.chapter--portrait-duet .photo-frame:first-child{margin-top:18vh}.chapter--portrait-duet .photo-frame .photo-image{aspect-ratio:3/5}.chapter--contact .chapter-composition{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter--contact .photo-frame .photo-image{aspect-ratio:3/4}.chapter--contact .photo-frame:nth-child(2),.chapter--contact .photo-frame:nth-child(4){margin-top:14vh}.chapter--panorama .chapter-composition{grid-template-columns:repeat(2,minmax(0,1fr))}.chapter--panorama .photo-frame:first-child{grid-column:1/-1}.chapter--panorama .photo-frame:first-child .photo-image{aspect-ratio:16/9}.chapter--panorama .photo-frame:not(:first-child) .photo-image{aspect-ratio:4/3}.chapter--panorama .photo-frame:nth-child(3){margin-top:9vh}.chapter--triptych .chapter-composition{grid-template-columns:repeat(3,minmax(0,1fr));align-items:start}.chapter--triptych .photo-frame .photo-image{aspect-ratio:3/5}.chapter--triptych .photo-frame:first-child{margin-top:17vh}.chapter--triptych .photo-frame:nth-child(3){margin-top:29vh}.chapter--filmstrip{min-height:100svh}.chapter--filmstrip .chapter-composition{scroll-snap-type:x mandatory;scrollbar-color:var(--chapter-accent) transparent;scrollbar-width:thin;grid-template-columns:none;grid-auto-columns:minmax(17rem,54%);grid-auto-flow:column;align-self:center;gap:1.25rem;padding:7rem 1rem 2rem 0;display:grid;overflow-x:auto}.chapter--filmstrip .photo-frame{scroll-snap-align:start}.chapter--filmstrip .photo-image{aspect-ratio:4/3}.chapter--filmstrip .photo-frame:first-child .photo-image{aspect-ratio:3/4}.chapter--feature{color:var(--linen);min-height:145svh;background:var(--ink)!important}.chapter--feature:after{content:"";border:1px solid #f4efe72e;border-radius:50%;width:55vw;height:55vw;position:absolute;top:10rem;right:-19vw}.chapter--feature .chapter-number{-webkit-text-stroke-color:var(--linen)}.chapter--feature .chapter-copy>p:not(.chapter-label),.chapter--feature .photo-caption{color:#f4efe7ad}.chapter--feature .frame-count{border-color:#f4efe738}.chapter--feature .chapter-composition{grid-template-columns:repeat(12,minmax(0,1fr))}.chapter--feature .photo-frame:first-child{grid-column:1/10}.chapter--feature .photo-frame:first-child .photo-image{aspect-ratio:16/10}.chapter--feature .photo-frame:nth-child(2){grid-column:8/13;margin-top:-12vh}.chapter--feature .photo-frame:nth-child(2) .photo-image{aspect-ratio:4/3}.chapter--feature .photo-frame:nth-child(3){grid-column:1/7;margin-top:6vh}.chapter--feature .photo-frame:nth-child(3) .photo-image{aspect-ratio:4/3}.chapter--feature .photo-frame:nth-child(4){grid-column:6/13;margin-top:18vh}.chapter--feature .photo-frame:nth-child(4) .photo-image{aspect-ratio:4/3}.chapter--feature .photo-frame:nth-child(5){grid-column:2/6;margin-top:-6vh}.chapter--feature .photo-frame:nth-child(5) .photo-image{aspect-ratio:3/4}.chapter--feature .photo-caption b{color:var(--linen)}.chapter--finale .chapter-composition{grid-template-columns:repeat(12,minmax(0,1fr))}.chapter--finale .photo-frame:first-child{grid-column:1/9}.chapter--finale .photo-frame:first-child .photo-image{aspect-ratio:16/12}.chapter--finale .photo-frame:nth-child(2){grid-column:8/13;margin-top:-10vh}.chapter--finale .photo-frame:nth-child(2) .photo-image{aspect-ratio:4/3}.chapter--finale .photo-frame:nth-child(3){grid-column:1/6;margin-top:10vh}.chapter--finale .photo-frame:nth-child(4){grid-column:6/10;margin-top:2vh}.chapter--finale .photo-frame:nth-child(5){grid-column:9/13;margin-top:18vh}.chapter--finale .photo-frame:nth-child(n+3) .photo-image{aspect-ratio:3/4}.chapter--postcard{background:#e8eee7!important}.chapter--postcard .chapter-composition,.chapter--bouquet .chapter-composition{grid-template-columns:repeat(12,minmax(0,1fr))}.chapter--postcard .photo-image{box-shadow:0 1.25rem 3.5rem #1514171f}.chapter--postcard .photo-frame:first-child{grid-column:1/6}.chapter--postcard .photo-frame:first-child .photo-image{aspect-ratio:3/4}.chapter--postcard .photo-frame:nth-child(2){grid-column:5/13;margin-top:11vh}.chapter--postcard .photo-frame:nth-child(2) .photo-image{aspect-ratio:4/3}.chapter--postcard .photo-frame:nth-child(3){grid-column:1/13;margin-top:5vh}.chapter--postcard .photo-frame:nth-child(3) .photo-image{aspect-ratio:16/9}.chapter--postcard .photo-frame:nth-child(4){grid-column:1/8;margin-top:4vh}.chapter--postcard .photo-frame:nth-child(4) .photo-image{aspect-ratio:4/3}.chapter--postcard .photo-frame:nth-child(5){grid-column:8/13;margin-top:13vh}.chapter--postcard .photo-frame:nth-child(5) .photo-image{aspect-ratio:3/4}.chapter--bouquet{background:radial-gradient(circle at 93% 13%, #cc7d912e, transparent 25%), var(--paper)!important}.chapter--bouquet:after{content:"";pointer-events:none;border:1px solid #cc7d9157;border-radius:48% 52% 42% 58%;width:min(42vw,38rem);height:min(42vw,38rem);position:absolute;top:12rem;right:-18vw;transform:rotate(24deg)}.chapter--bouquet .photo-frame:first-child{grid-column:1/6}.chapter--bouquet .photo-frame:first-child .photo-image{aspect-ratio:3/4}.chapter--bouquet .photo-frame:nth-child(2){grid-column:5/13;margin-top:10vh}.chapter--bouquet .photo-frame:nth-child(2) .photo-image{aspect-ratio:4/5}.chapter--bouquet .photo-frame:nth-child(3){grid-column:1/10;margin-top:5vh}.chapter--bouquet .photo-frame:nth-child(3) .photo-image{aspect-ratio:4/3}.chapter--bouquet .photo-frame:nth-child(4){grid-column:7/13;margin-top:-7vh}.chapter--bouquet .photo-frame:nth-child(4) .photo-image{aspect-ratio:4/5}.chapter--bouquet .photo-frame:nth-child(5){grid-column:2/9;margin-top:7vh}.chapter--bouquet .photo-frame:nth-child(5) .photo-image{aspect-ratio:4/3}.love-interlude{background:linear-gradient(90deg, transparent 49.94%, #f4efe721 50%), var(--ink);color:var(--linen);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:110svh;padding:clamp(7rem,12vw,12rem) clamp(1.25rem,7vw,7rem);display:flex;position:relative;overflow:hidden}.love-interlude:before,.love-interlude:after{content:"";border:1px solid #f4efe721;border-radius:50%;width:34vw;height:34vw;position:absolute}.love-interlude:before{top:-7vw;left:-19vw}.love-interlude:after{bottom:-15vw;right:-12vw}.interlude-kicker{color:var(--marigold);font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;margin:0 0 3rem;font-size:.65rem}.love-interlude h2{font-family:var(--display);letter-spacing:-.08em;z-index:2;flex-direction:column;margin:0;font-size:clamp(5.2rem,14vw,15rem);font-weight:500;line-height:.62;display:flex;position:relative}.love-interlude h2 span:last-child{color:var(--marigold);margin-left:10vw;font-style:italic}.love-interlude h2 em{color:var(--vermilion);margin:.5em 0 .25em;font-size:.28em;line-height:1}.interlude-notes{text-align:left;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(2rem,8vw,8rem);max-width:70rem;margin-top:clamp(5rem,10vw,9rem);display:grid}.interlude-notes p{color:#f4efe7b8;font-family:var(--display);border-top:1px solid #f4efe759;margin:0;padding-top:1rem;font-size:clamp(1.05rem,1.5vw,1.3rem);line-height:1.6}.wish-finale{background:var(--marigold);text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:100svh;padding:clamp(8rem,13vw,13rem) 1.25rem;display:flex;position:relative;overflow:hidden}.wish-finale:before{content:"";border:1px solid #15141740;border-radius:50%;width:min(72vw,62rem);height:min(72vw,62rem);position:absolute}.wish-copy,.wish-button,.family-letter{z-index:3;position:relative}.wish-copy>p{font-family:var(--font-geist-mono), monospace;letter-spacing:.18em;text-transform:uppercase;margin:0 0 2rem;font-size:.62rem;font-weight:700}.wish-copy h2{font-family:var(--display);letter-spacing:-.075em;margin:0;font-size:clamp(4.5rem,11vw,11rem);font-weight:500;line-height:.75}.wish-copy h2 span{font-style:italic;display:block}.wish-button{background:var(--ink);color:var(--linen);cursor:pointer;border:0;flex-direction:column;align-items:center;gap:1.2rem;min-height:9.5rem;margin-top:clamp(3rem,6vw,5rem);padding:1.6rem 2.3rem;display:inline-flex}.wish-button:disabled{cursor:default;opacity:.7}.wish-button>span:last-child{letter-spacing:.11em;text-transform:uppercase;font-size:.68rem;font-weight:750}.candle{width:2rem;height:5rem;display:block;position:relative}.candle i{display:block;position:absolute}.flame{background:var(--marigold);transform-origin:bottom;border-radius:70% 30% 60% 40%;width:.86rem;height:1.45rem;transition:opacity .25s,transform .3s;animation:.78s ease-in-out infinite alternate flame-dance;top:0;left:.58rem;transform:rotate(45deg);box-shadow:0 0 1.6rem #f2b544b3}.wick{background:var(--linen);width:2px;height:.6rem;top:1.4rem;left:.95rem}.candle-body{background:repeating-linear-gradient(-35deg, var(--linen) 0 .45rem, var(--vermilion) .45rem .9rem);width:1.2rem;height:3.2rem;bottom:0;left:.4rem}.wish-is-made .flame{opacity:0;transform:translateY(-1rem)scale(0)rotate(45deg)}.wish-confetti{pointer-events:none;z-index:2;position:absolute;inset:0}.wish-confetti i{animation:1.2s cubic-bezier(.18,.75,.25,1) both confetti-pop;animation-delay:var(--delay);background:var(--confetti);height:.75rem;left:var(--x);width:.38rem;position:absolute;top:47%}.family-letter{background:var(--paper);text-align:left;max-width:54rem;margin-top:4rem;padding:clamp(2rem,6vw,5.5rem);box-shadow:0 2rem 6rem #15141738}.letter-overline{border-bottom:1px solid var(--rule);letter-spacing:.15em;text-transform:uppercase;padding-bottom:.8rem;font-family:var(--font-geist-mono), monospace!important;margin-bottom:3rem!important;font-size:.6rem!important}.family-letter p{font-family:var(--display);font-size:clamp(1.08rem,1.7vw,1.35rem);line-height:1.72}.family-letter .salutation{margin-bottom:2.3rem;font-size:clamp(2.2rem,4vw,3.8rem);font-style:italic;line-height:1}.letter-signature{margin-top:2.5rem}.letter-signature strong{font-size:2.6rem;font-style:italic;font-weight:500;display:block}.letter-voices{grid-template-columns:repeat(2,minmax(0,1fr));gap:1.25rem;margin:2.5rem 0;display:grid}.family-letter .letter-from{border-left:3px solid var(--marigold);margin:0;padding:1rem 1.2rem}.family-letter .letter-from:nth-child(2){border-color:var(--periwinkle)}.family-letter .letter-from strong{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;margin-bottom:.65rem;font-size:.58rem;font-style:normal;display:block}.family-letter button{border:0;border-bottom:1px solid var(--ink);cursor:pointer;font-family:var(--font-geist-mono), monospace;letter-spacing:.1em;text-transform:uppercase;background:0 0;margin-top:1rem;padding:.35rem 0;font-size:.58rem}.archive-footer{background:var(--ink);color:var(--linen);padding:clamp(5rem,9vw,9rem) clamp(1.25rem,7vw,7rem) 2.5rem}.archive-footer>p{font-family:var(--display);letter-spacing:-.055em;max-width:13ch;margin:0;font-size:clamp(2.8rem,6vw,7rem);line-height:.95}.archive-footer>div{color:#f4efe7a8;font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;border-top:1px solid #f4efe738;justify-content:space-between;align-items:end;margin-top:clamp(5rem,10vw,10rem);padding-top:1rem;font-size:.58rem;display:flex}.archive-footer a{text-align:right}.gallery-dialog{color:var(--linen);background:0 0;border:0;width:100vw;max-width:none;height:100svh;max-height:none;margin:0;padding:0}.gallery-dialog::backdrop{-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#0a090ceb}.gallery-inner{background:#151417f5;grid-template-rows:auto minmax(0,1fr) auto;height:100svh;padding:clamp(1rem,2vw,2rem);display:grid}.gallery-topline,.gallery-controls{font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;grid-template-columns:1fr auto;align-items:center;font-size:.62rem;display:grid}.gallery-topline{border-bottom:1px solid #f4efe733;padding-bottom:.8rem}.gallery-topline p,.gallery-controls p{margin:0}.gallery-close,.gallery-controls button{color:inherit;cursor:pointer;background:0 0;border:0;min-height:44px}.gallery-close span{margin-left:.3rem;font-size:1.5rem;line-height:0}.gallery-image-wrap{justify-content:center;align-items:center;min-height:0;padding:clamp(1rem,3vw,2.5rem);display:flex;overflow:hidden}.gallery-image-wrap img{object-fit:contain;width:100%;height:100%}.gallery-controls{border-top:1px solid #f4efe733;grid-template-columns:1fr minmax(0,4fr) 1fr;padding-top:.8rem}.gallery-controls p{font-family:var(--display);letter-spacing:0;text-align:center;text-transform:none;font-size:1rem}.gallery-controls button:first-child{justify-self:start}.gallery-controls button:last-child{justify-self:end}@supports (animation-timeline:view()){.photo-frame{animation:linear both frame-reveal;animation-timeline:view();animation-range:entry 8% cover 32%}.archive-intro h2,.love-interlude h2{animation:linear both type-reveal;animation-timeline:view();animation-range:entry 5% cover 42%}}@keyframes reading-progress{to{transform:scaleX(1)}}@keyframes equalize{to{height:13px}}@keyframes flame-dance{0%{transform:rotate(40deg)scale(.92)}to{transform:rotate(49deg)scale(1.06)}}@keyframes confetti-pop{0%{opacity:0;transform:translateY(2rem)rotate(0)}15%{opacity:1}to{opacity:0;transform:translate(calc((50vw - var(--x)) * .75), -42vh) rotate(var(--spin))}}@keyframes frame-reveal{0%{opacity:.35;transform:translateY(3rem)scale(.96)}to{opacity:1;transform:none}}@keyframes type-reveal{0%{letter-spacing:-.1em;opacity:.35;transform:translateY(2rem)}to{opacity:1;transform:none}}@media (width>=1101px){.archive-hero{padding-left:5.25rem}.chapter-number{left:max(4vw,5rem)}}@media (width<=1100px){html{scroll-padding-top:8rem}.hero-title{grid-column:1/8}.hero-mosaic{grid-column:8/-1;margin-left:1rem}.hero-shot--1{width:72%;height:54%}.hero-shot--2{width:68%}.hero-shot--3{width:46%}.hero-shot--4{width:62%}.year-rail{flex-direction:row;justify-content:start;gap:0;width:auto;height:3rem;padding:0 1rem;top:4.25rem;left:0;right:0;overflow-x:auto;transform:none}.rail-title{display:none}.year-rail a{flex:none;align-items:center;min-width:4.4rem;height:100%;padding:0 .7rem;display:inline-flex}.year-rail a:before{width:auto;height:2px;inset:auto .7rem 0;transform:none}.year-rail a:hover,.year-rail a[aria-current=true]{transform:none}.memory-chapter{grid-template-columns:repeat(8,minmax(0,1fr));padding-top:9rem}.chapter-copy{grid-column:1/4}.chapter-composition{grid-column:4/9}}@media (width<=780px){html{scroll-padding-top:8rem}.archive-header{grid-template-columns:1fr auto}.archive-header>p{display:none}.audio-control{width:42px;height:42px;min-height:42px}.archive-hero{min-height:auto;padding:8.5rem 1.1rem 5rem;display:block}.archive-hero:after{width:105vw;height:105vw;top:5rem;right:-50vw}.hero-date{font-size:35vw;top:7rem;left:-.5rem}.hero-title{padding-top:1.5rem}.hero-title h1{max-width:7ch;font-size:clamp(4.3rem,20vw,7.2rem)}.hero-title h1 span{margin-left:1rem}.hero-deck{max-width:30rem;font-size:1.06rem}.hero-mosaic{grid-template-rows:auto auto auto;grid-template-columns:1.08fr .92fr;align-items:start;gap:.75rem;height:auto;min-height:0;margin:4rem 0 0;display:grid}.hero-shot{width:auto;height:auto;position:relative;inset:auto}.hero-shot img{object-fit:contain;height:auto;display:block}.hero-shot--1{grid-area:1/1/3}.hero-shot--2{grid-area:1/2}.hero-shot--3{grid-area:2/2}.hero-shot--4{grid-area:3/1/auto/-1;width:100%}.hero-shot--4 img{aspect-ratio:16/9;object-fit:cover}.enter-archive{margin-top:2.5rem;position:relative;bottom:auto;left:auto}.archive-intro{min-height:auto;padding:8rem 1.25rem 7rem;display:block}.archive-intro>p:first-child{width:9rem;margin-bottom:3rem}.archive-intro h2{font-size:clamp(3.2rem,14vw,5.5rem)}.archive-intro-copy{max-width:25rem;margin:3rem 0 0 auto}.memory-chapter{min-height:auto;padding:8rem 1.1rem 6rem;display:block}.chapter-number{font-size:35vw;top:7rem;left:0}.chapter-copy{max-width:35rem;margin-bottom:4rem;position:relative;top:auto}.chapter-copy h2{max-width:9ch;font-size:clamp(3.6rem,14vw,6rem)}.chapter-copy>p:not(.chapter-label){max-width:31rem}.chapter-composition,.chapter--duet .chapter-composition,.chapter--portrait-duet .chapter-composition,.chapter--contact .chapter-composition,.chapter--panorama .chapter-composition,.chapter--triptych .chapter-composition,.chapter--feature .chapter-composition,.chapter--finale .chapter-composition,.chapter--postcard .chapter-composition,.chapter--bouquet .chapter-composition{grid-template-columns:minmax(0,1fr);gap:1rem;display:grid}.chapter-composition .photo-frame,.chapter--feature .chapter-composition .photo-frame,.chapter--finale .chapter-composition .photo-frame,.chapter--postcard .chapter-composition .photo-frame,.chapter--bouquet .chapter-composition .photo-frame{grid-column:auto;margin:0}.chapter-composition .photo-frame:first-child{grid-column:auto}.chapter-composition .photo-frame .photo-image,.chapter-composition .photo-frame:first-child .photo-image{aspect-ratio:auto!important}.chapter-composition .photo-frame img{object-fit:contain;height:auto;display:block}.chapter--filmstrip .chapter-composition{scroll-snap-type:none;grid-template-columns:minmax(0,1fr);grid-auto-columns:auto;grid-auto-flow:row;gap:.9rem;margin-right:0;padding:0;display:grid;overflow-x:visible}.chapter--filmstrip .chapter-composition .photo-frame{grid-column:auto}.chapter--filmstrip .chapter-composition .photo-image,.chapter--filmstrip .chapter-composition .photo-frame:first-child .photo-image{aspect-ratio:auto!important}.chapter--feature{min-height:auto}.chapter--feature:after{width:90vw;height:90vw;right:-55vw}.love-interlude{min-height:100svh;padding:8rem 1.25rem}.love-interlude h2{font-size:clamp(5rem,24vw,9rem)}.love-interlude h2 span:last-child{margin-left:0}.interlude-notes{grid-template-columns:1fr;gap:2rem}.wish-finale:before{width:120vw;height:120vw}.wish-copy h2{font-size:clamp(4.2rem,20vw,7rem)}.family-letter{margin-top:3rem}.letter-voices{grid-template-columns:minmax(0,1fr)}.archive-footer>div{flex-direction:column;align-items:start;gap:1rem}.archive-footer a{text-align:left}.gallery-controls{grid-template-columns:auto 1fr auto;gap:.5rem}.gallery-controls p{font-size:.85rem}}@media (width<=480px){.archive-header{padding:0 .8rem}.audio-control{width:40px;height:40px;min-height:40px}.hero-meta{gap:1rem}.photo-caption{display:block}.photo-caption b{margin-bottom:.2rem;display:block}.gallery-inner{padding:.8rem}.gallery-image-wrap{padding:.75rem 0}.gallery-controls p{max-height:2.6rem;overflow:hidden}.gallery-controls button{font-size:0}.gallery-controls button:first-child:after{content:"←";font-size:1.3rem}.gallery-controls button:last-child:after{content:"→";font-size:1.3rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.photo-frame,.archive-intro h2,.love-interlude h2{opacity:1;transform:none;animation:none!important}}
