@font-face{font-family:Noto Sans;src:url('fonts/NotoSans-Regular.woff') format('woff');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Noto Sans;src:url('fonts/NotoSans-Medium.woff') format('woff');font-style:normal;font-weight:500 700;font-display:swap}
@font-face{font-family:Noto Serif;src:url('fonts/NotoSerif-Light.woff') format('woff');font-style:normal;font-weight:300 400;font-display:swap}
@font-face{font-family:Noto Serif;src:url('fonts/NotoSerif-LightItalic.woff') format('woff');font-style:italic;font-weight:300 400;font-display:swap}
:root{color-scheme:light;--ink:#171717;--muted:#61625e;--paper:#fff;--soft:#eeebe6;--line:#d6d4cf;--red:#d52b1e;--sans:'Noto Sans',Arial,sans-serif;--serif:'Noto Serif',Georgia,serif;--header:128px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}html.motion-ready{scroll-snap-type:y proximity}body{margin:0;background:var(--paper);color:var(--ink);font:400 16px/1.65 var(--sans)}a{color:inherit;text-decoration:none}button,input{font:inherit}button{cursor:pointer;color:inherit}img{display:block;max-width:100%}button,a,input{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,input:focus-visible,[role=tabpanel]:focus-visible{outline:3px solid var(--red);outline-offset:5px}[hidden]{display:none!important}.skip{position:fixed;z-index:20;left:15px;top:15px;background:white;color:#111;padding:12px;transform:translateY(-160%)}.skip:focus{transform:none}
.header{position:fixed;top:0;left:0;width:100%;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:28px;min-height:var(--header);padding:24px 4%;color:#fff;background:linear-gradient(#000a,#0000);transition:background .35s,color .35s}.header.on-paper{background:#ffffffed;backdrop-filter:blur(10px);color:var(--ink)}.brand{display:flex;align-items:center;gap:28px;flex-shrink:0}.brand img{width:80px;height:80px}.brand>span{font-size:.8125rem;letter-spacing:.18em}.header nav{display:flex;gap:38px;align-items:center}.header nav>a{font-size:.9375rem;padding:12px 0;border-bottom:1px solid transparent;transition:border-color .2s}.header nav>a:hover{border-color:currentColor}.header nav span{margin-left:10px}.page-progress{position:absolute;bottom:0;left:0;width:100%;height:2px;background:#ffffff20}.page-progress>span{display:block;transform-origin:left;height:100%;background:var(--red);transform:scaleX(0)}
.eyebrow{font-size:.8125rem;letter-spacing:.14em;line-height:1.5;margin:0 0 26px;font-weight:400}h1,h2,h3{font-family:var(--serif);font-weight:300;letter-spacing:-.045em;line-height:1.12;margin:0}em{font-weight:inherit}p{margin-top:0}.journey{position:relative;background:#181918;color:#fff}.journey-stage{position:relative}.scene{position:relative;min-height:100svh;overflow:hidden;isolation:isolate}.scene-picture{position:absolute;inset:0;z-index:-2;transform-origin:50% 55%}.scene-picture img{width:100%;height:100%;object-fit:cover;object-position:center}.scene-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#000a 0%,#0006 32%,#0001 80%),linear-gradient(0deg,#0007,transparent 25%,transparent 80%,#0005)}.scene-content{position:relative;padding:clamp(190px,29svh,310px) 7% 170px;width:100%;max-width:1250px}.scene h1,.scene h2{font-size:clamp(3.6rem,6.8vw,7.5rem);line-height:1.13;text-shadow:0 2px 22px #0002}.scene h1 em,.scene h2 em{font-size:.94em}.scene-description{font-size:1rem;line-height:1.65;margin:26px 0 0;max-width:430px}.hero-date{font-size:1.125rem;margin:36px 0 0}.hero-date>span{font-size:.875rem;display:block;margin-top:6px}.scene-caption{position:absolute;bottom:35px;left:7%;right:7%;display:flex;align-items:center;justify-content:space-between;gap:20px;font-size:.8125rem;letter-spacing:.06em}.scene-wardrobe .scene-shade{background:linear-gradient(90deg,#000b,#0005 48%,#0000 88%),linear-gradient(0deg,#0007,transparent 25%)}.scene-sofa .scene-shade{background:linear-gradient(90deg,#000b,#0005 40%,#0000 90%),linear-gradient(0deg,#0008,transparent 35%)}.scene-wardrobe .scene-content{padding-top:32svh}.scene-sofa .scene-content{padding-top:29svh}.snap-marker,.journey-controls{display:none}
.motion-ready .journey{height:420svh}.motion-ready .journey-stage{position:sticky;top:0;height:100svh;overflow:hidden}.motion-ready .scene{position:absolute;inset:0;min-height:0;height:100%;opacity:0}.motion-ready .scene:first-child{opacity:1;z-index:2}.motion-ready .scene-picture{will-change:transform}.motion-ready .scene-content{will-change:transform;max-width:none}.motion-ready .scene-caption{bottom:106px}.motion-ready .journey-controls{display:flex;position:absolute;z-index:4;left:7%;right:7%;bottom:34px;justify-content:space-between;gap:35px;align-items:center;border-top:1px solid #ffffff70;padding-top:19px}.scroll-cue{font-size:.75rem;letter-spacing:.14em;display:flex;gap:24px;align-items:center}.scroll-cue>span{font-size:1.5rem}.chapter-buttons{display:flex;gap:18px}.chapter-buttons button{background:transparent;color:white;border:0;padding:5px;display:flex;align-items:center;gap:12px;min-height:44px}.chapter-buttons span{font-size:.75rem}.chapter-buttons i{display:block;width:33px;height:1px;background:#ffffff70;transition:width .35s,background .35s}.chapter-buttons button[aria-pressed=true] i{width:70px;background:white}.motion-ready .snap-marker{position:absolute;display:block;left:0;right:0;height:1px;scroll-snap-align:start;scroll-margin:0;pointer-events:none}.marker-one{top:0}.marker-two{top:115.2svh}.marker-three{top:230.4svh}.snap-section{scroll-snap-align:start;scroll-margin-top:var(--header)}
.invitation{display:grid;grid-template-columns:.85fr 1.15fr;gap:7%;padding:100px 7%;background:#fff;align-items:center}.invite-art{position:relative;background:var(--soft);min-height:670px;overflow:hidden;align-self:stretch}.invite-art>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:15% center}.date-art{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:center;padding-left:16%}.date-art>span{font-size:.8125rem;letter-spacing:.18em}.date-art strong{font:300 clamp(7rem,13vw,13.5rem)/1.25 var(--serif);letter-spacing:-.085em;margin-left:-.08em}.invite-copy h2{font-size:clamp(2.5rem,3.8vw,4.8rem)}.invite-intro{color:var(--muted);margin:28px 0;max-width:560px}.event-details{margin:30px 0}.event-details p{margin:0 0 19px}.event-details strong{display:block;font-weight:500;font-size:1.125rem}.event-details p span{font-size:.9375rem;display:block;margin-top:6px}.access-note{font-size:.75rem;letter-spacing:.09em;color:var(--muted)}.slot-list{border-top:1px solid var(--line)}.slot-list button{display:flex;width:100%;align-items:center;gap:16px;padding:20px 0;border:0;border-bottom:1px solid var(--line);background:none;text-align:left;transition:padding .25s}.slot-list button:hover{padding-left:7px}.slot-list button>span:first-child{font-size:1rem}.slot-list button>strong{font-size:1rem;font-weight:400;margin-left:auto;white-space:nowrap}.slot-arrow{font-size:1.2rem;margin-left:12px}.primary{display:flex;align-items:center;justify-content:space-between;gap:25px;width:100%;padding:17px 22px;background:var(--ink);color:white;border:1px solid var(--ink);min-height:56px;font-size:1rem;transition:background .2s}.primary:hover{background:#363636}.invite-button{margin-top:25px}footer{display:flex;gap:30px;align-items:center;padding:40px 7%;background:white}footer img{width:80px;height:80px}footer p{margin:0;font-size:.8125rem;letter-spacing:.06em}footer p span{font-size:.875rem;letter-spacing:0;color:var(--muted)}.footer-date{margin-left:auto;text-align:right}.footer-date span{display:block;margin-top:5px}
/* Native modal keeps focus, Escape, and keyboard navigation available. */
dialog{color:var(--ink);background:white;border:0;padding:46px;width:min(720px,calc(100% - 32px));max-height:calc(100svh - 32px);overflow:auto;overscroll-behavior:contain}dialog::backdrop{background:#111b;backdrop-filter:blur(7px)}body:has(dialog[open]){overflow:hidden}dialog[open]{animation:dialog-in .25s ease}.close{position:absolute;right:15px;top:12px;font-size:2rem;line-height:1;min-width:44px;min-height:44px;border:0;background:none;color:inherit}dialog>.eyebrow{margin-top:8px;padding-right:15px}dialog h2{font-size:3.5rem}.dialog-intro{margin:20px 0 26px;color:var(--muted)}fieldset{border:0;margin:0;padding:0}legend{font-size:.875rem;margin-bottom:12px}.category-options{display:grid;grid-template-columns:1fr 1fr;gap:12px}.category{position:relative;cursor:pointer}.category>input{position:absolute;left:16px;top:20px;width:17px;height:17px;margin:0;accent-color:var(--ink)}.category>span{display:block;height:100%;padding:18px 16px 18px 43px;border:1px solid #adafa6;transition:background .2s;min-height:125px}.category:has(input:checked)>span{border:2px solid var(--ink);padding:17px 15px 17px 42px;background:#f1efeb}.category strong,.category b,.category small{display:block;font-weight:400}.category strong{font-size:1.0625rem;margin-bottom:9px}.category b{font-size:1rem}.category small{font-size:.75rem;color:var(--muted);margin-top:3px}.form-fields{display:grid;grid-template-columns:1.25fr 1fr;gap:16px;margin-top:24px}.form-fields label{display:block;font-size:.875rem;margin-bottom:8px}.form-fields input{display:block;width:100%;min-height:50px;border:1px solid #a1a399;border-radius:0;padding:12px;color:var(--ink);background:white}.selection-summary{font-size:.875rem;margin:20px 0}.form-note{font-size:.8125rem;color:var(--muted);line-height:1.6;margin:16px 0 0}.no-script{padding:20px;background:#eee}.will-reveal{opacity:0;transform:translateY(24px);transition:opacity .8s,transform .8s}.will-reveal.is-visible{opacity:1;transform:none}@keyframes fade-in{from{opacity:.2;transform:translateY(8px)}to{opacity:1;transform:none}}@keyframes dialog-in{from{opacity:.2;transform:translateY(20px)}to{opacity:1;transform:none}}
@media(min-width:1800px){.scene-content{padding-left:max(7%,calc((100vw - 1550px)/2))}.scene-caption,.journey-controls{left:max(7%,calc((100vw - 1550px)/2));right:max(7%,calc((100vw - 1550px)/2))}}
@media(max-width:1050px){.header nav{gap:24px}.brand>span{display:none}.scene h1,.scene h2{font-size:clamp(3.8rem,8vw,6.2rem)}.scene-content{padding-top:30svh}.invitation{padding:75px 6%;gap:6%;grid-template-columns:.8fr 1.2fr}.invite-art{min-height:630px}.invite-copy h2{font-size:2.9rem}.date-art{padding-left:12%}.date-art strong{font-size:9rem}.date-art>span{font-size:.75rem}.slot-list button{gap:10px}.slot-arrow{margin-left:0}}
@media(max-width:680px){:root{--header:151px}.header{display:block;padding:18px 6% 10px;min-height:var(--header)}.brand{gap:22px;width:fit-content}.brand img{width:76px;height:76px}.brand>span{display:block;font-size:.75rem}.header nav{display:flex;justify-content:space-between;gap:12px;margin-top:14px}.header nav>a{font-size:.875rem;padding:7px 0}.header nav span{margin-left:5px}.scene-content,.scene-wardrobe .scene-content,.scene-sofa .scene-content{padding:calc(var(--header) + 11svh) 7% 180px}.scene h1,.scene h2{font-size:clamp(2.9rem,10.4vw,4.2rem);line-height:1.15;letter-spacing:-.045em}.scene-description{font-size:1rem;max-width:295px;margin-top:22px}.hero-date{font-size:1rem;margin-top:28px}.hero-date>span{font-size:.8125rem}.eyebrow{font-size:.75rem;letter-spacing:.08em;margin-bottom:22px}.scene-picture img{object-position:54% 50%}.scene-wardrobe .scene-picture img{object-position:57% 50%}.scene-sofa .scene-picture img{object-position:58% 50%}.scene-shade{background:linear-gradient(90deg,#000b,#0004),linear-gradient(0deg,#0005,transparent 50%,#0004)}.scene-caption{left:7%;right:7%;font-size:.75rem;align-items:start;gap:16px;bottom:30px}.scene-caption>span:last-child{text-align:right;max-width:160px}.motion-ready .scene-caption{bottom:100px}.motion-ready .journey-controls{left:7%;right:7%;bottom:24px;gap:14px;padding-top:14px}.scroll-cue{font-size:.75rem;max-width:150px;letter-spacing:.05em;gap:8px}.scroll-cue>span{font-size:1.2rem}.chapter-buttons{gap:6px}.chapter-buttons button{gap:5px;padding:3px}.chapter-buttons i{width:15px}.chapter-buttons button[aria-pressed=true] i{width:30px}.chapter-buttons span{font-size:.75rem}.invitation{display:flex;flex-direction:column;padding:55px 6%;gap:38px;align-items:stretch}.invite-art{min-height:310px;order:2}.date-art{padding-left:10%}.date-art strong{font-size:8rem}.invite-copy h2{font-size:clamp(2.4rem,8.8vw,3.5rem)}.invite-intro{margin:23px 0}.event-details{margin:26px 0}.slot-list button>strong,.slot-list button>span:first-child{font-size:.9375rem}.slot-list button{padding:18px 0}.invite-button{margin-top:24px}footer{padding:32px 6%;gap:25px;flex-wrap:wrap}footer img{width:76px;height:76px}footer p{font-size:.75rem}footer p span{font-size:.8125rem}.footer-date{width:100%;margin:0;text-align:left}dialog{padding:36px 22px 25px;width:calc(100% - 20px);max-height:calc(100svh - 20px)}dialog h2{font-size:2.7rem}dialog>.eyebrow{font-size:.75rem;padding-right:30px}.category>span{padding:17px 10px 17px 33px}.category:has(input:checked)>span{padding:16px 9px 16px 32px}.category>input{left:10px;top:21px;width:15px;height:15px}.category strong{font-size:.875rem}.category b{font-size:.875rem}.category small{font-size:.75rem}.form-fields{grid-template-columns:1fr;gap:17px}.dialog-intro{font-size:.9375rem}}
@media(max-width:370px){.header nav>a{font-size:.8125rem}.header nav span{display:none}.scene h1,.scene h2{font-size:2.9rem}.scene-content,.scene-wardrobe .scene-content,.scene-sofa .scene-content{padding-top:calc(var(--header) + 7svh)}.category-options{grid-template-columns:1fr}.category>span{min-height:0}.scroll-cue{font-size:.75rem;max-width:100px}.chapter-buttons{gap:2px}}
@media(max-height:679px){.scene-content,.scene-wardrobe .scene-content,.scene-sofa .scene-content{padding-top:calc(var(--header) + 35px);padding-bottom:130px}.scene h1,.scene h2{font-size:3rem}.scene{min-height:760px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto;scroll-snap-type:none}*,*:before,*:after{animation:none!important;transition:none!important}.will-reveal{opacity:1;transform:none}}
.scene-caption:has(>span:only-child){justify-content:flex-start}.scene-caption:has(>span:only-child)>span:last-child{text-align:left;max-width:none}
<<<<<<< HEAD

/* White invitation opening: all copy stays in normal document flow. */
.opening{min-height:100svh;padding:calc(var(--header) + 56px) 7% 48px;background:#fff;color:var(--ink);display:flex;flex-direction:column;align-items:center;text-align:center;justify-content:center}
.opening .eyebrow{color:#686863;margin-bottom:24px}.opening h1{font-size:clamp(3.4rem,7vw,7rem);line-height:1.12}.opening h1 em{color:#75766f}.opening-intro{margin:28px 0 24px;max-width:460px}.opening-date{font-size:1.2rem;margin:0}.opening-date span{display:block;font-size:.875rem;color:var(--muted);margin-top:6px}.opening-slots{display:flex;gap:40px;margin:24px 0;font-size:.85rem}.opening-slots b{display:block;font-weight:500;margin-top:4px}.opening-book{border-bottom:1px solid var(--ink);padding:8px 0;display:flex;gap:48px;align-items:center}.opening-scroll{font-size:.7rem;letter-spacing:.13em;margin-top:40px;display:flex;align-items:center;gap:22px}.opening-scroll span{font-size:1.2rem}.header.on-paper .page-progress{background:#17171715}
.marker-two{top:144svh}.marker-three{top:268.8svh}
@media(max-width:680px){.opening{padding:calc(var(--header) + 38px) 7% 36px}.opening .eyebrow{font-size:.65rem}.opening h1{font-size:clamp(3.2rem,13vw,4.8rem)}.opening-intro{font-size:.94rem;margin-top:22px}.opening-slots{gap:28px}.opening-scroll{font-size:.6rem;margin-top:30px}}
=======
.motion-ready .scene-content{will-change:transform,opacity;max-width:760px}
>>>>>>> 61aa74de828a4adffe5b289d5bdc7b7863590ef2
