:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#faf7f2;--ink:#2e2e2e;--muted:#706e6a;--slate:#587c8f;--slate-deep:#426273;--powder:#d6e4ee;--blush:#d9b9b1;--taupe:#c6b7a8;--line:#e4ddd5;--surface:#fffdfb;--serif:"Iowan Old Style", "Baskerville", "Palatino Linotype", "Book Antiqua", Georgia, serif;--sans:"Avenir Next", Avenir, "Segoe UI", sans-serif}*{box-sizing:border-box}html{background:var(--paper);min-height:100%}body{min-height:100vh;color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0}a{color:inherit;text-decoration:none}.home-shell{flex-direction:column;min-height:100vh;padding:0 clamp(1.5rem,7vw,7.5rem);display:flex;overflow:hidden}.site-header,.site-footer{justify-content:space-between;align-items:center;display:flex}.site-header{border-bottom:1px solid var(--line);min-height:6.5rem}.brand-mark-link{flex:none;align-items:center;width:clamp(7.5rem,12vw,9rem);display:inline-flex}.home-shell .brand-mark-link{width:clamp(9rem,15vw,11rem)}.brand-mark-link:focus-visible{outline:2px solid var(--slate);outline-offset:3px}.brand-mark-image{width:100%;height:auto;display:block}.header-note,.site-footer{color:var(--muted);letter-spacing:.045em;font-size:.72rem}.header-sign-in{color:var(--slate-deep);text-underline-offset:.25rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:text-decoration-color .16s}.header-sign-in:hover{text-decoration-color:currentColor}.welcome{flex:1;grid-template-columns:minmax(0,1fr);align-items:center;gap:0;width:min(100%,76rem);margin:0 auto;padding:5rem 0 6.5rem;display:grid}.welcome-copy{z-index:1;max-width:48rem;padding-bottom:.5rem;position:relative}.eyebrow{color:var(--slate-deep);letter-spacing:.13em;text-transform:uppercase;align-items:center;gap:.65rem;margin:0 0 1.75rem;font-size:.68rem;font-weight:600;display:flex}.eyebrow-line{background:var(--slate);width:1.5rem;height:1px}h1{font-family:var(--serif);letter-spacing:-.067em;margin:0;font-size:clamp(3.5rem,7.1vw,6.6rem);font-weight:400;line-height:.99}h1 span{color:var(--slate);font-style:italic;font-weight:400}.welcome-description{color:#5c5b58;max-width:27rem;font-family:var(--serif);margin:2rem 0 0;font-size:clamp(1.1rem,1.55vw,1.32rem);line-height:1.65}.welcome-note{color:var(--muted);letter-spacing:.04em;align-items:center;gap:.55rem;margin:2.15rem 0 0;font-size:.75rem;display:flex}.site-footer{border-top:1px solid var(--line);min-height:4.5rem}.footer-seal{font-family:var(--serif);font-size:.85rem;font-style:italic}.auth-shell{background:var(--paper);flex-direction:column;justify-content:space-between;align-items:center;min-height:100vh;padding:2rem clamp(1.25rem,5vw,4rem);display:flex}.auth-shell>.brand-mark-link{align-self:flex-start}.auth-panel{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;width:min(100%,31rem);padding:clamp(2rem,6vw,3.25rem)}.auth-eyebrow{color:var(--slate-deep);letter-spacing:.13em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.66rem;font-weight:600}.auth-panel h1{font-size:clamp(2.7rem,8vw,4rem);line-height:1.05}.auth-description{color:#5c5b58;font-family:var(--serif);margin:1.2rem 0 1.75rem;font-size:1.08rem;line-height:1.6}.sign-in-form{flex-direction:column;gap:.75rem;display:flex}.sign-in-form label{color:var(--ink);font-size:.8rem;font-weight:600}.sign-in-form input{border:1px solid var(--taupe);background:var(--surface);min-height:3.1rem;color:var(--ink);font:inherit;border-radius:.5rem;padding:.75rem .9rem;font-size:.9rem}.sign-in-form input:focus-visible,.primary-button:focus-visible,.header-sign-in:focus-visible,.text-link:focus-visible{outline-offset:3px;outline:3px solid #587c8f7a}.sign-in-form input::placeholder{color:#74716d}.primary-button{background:var(--slate-deep);color:#fff;cursor:pointer;min-height:3.1rem;font:inherit;border:0;border-radius:999px;justify-content:center;align-items:center;margin-top:.35rem;padding:.75rem 1rem;font-size:.82rem;font-weight:600;transition:background .16s;display:inline-flex}.primary-button:hover:not(:disabled){background:#344f5d}.primary-button:disabled{cursor:not-allowed;opacity:.56}.form-footnote,.auth-return{color:var(--muted);text-align:center;font-size:.72rem;line-height:1.55}.form-footnote{margin:.35rem 0 0}.form-message{border-radius:.5rem;margin:.5rem 0;padding:.75rem .85rem;font-size:.78rem;line-height:1.55}.form-message.error{border:1px solid var(--blush);color:#583c37;background:#f8efec}.form-message.success{color:#34515f;background:#edf4f7;border:1px solid #b8cbd5}.auth-return{margin:0}.auth-return a,.text-link{color:var(--slate-deep);text-underline-offset:.2rem;text-decoration:underline}.text-link-button{color:var(--slate-deep);cursor:pointer;font:inherit;text-underline-offset:.2rem;background:0 0;border:0;align-self:center;padding:.25rem;font-size:.78rem;text-decoration:underline}.text-link-button:disabled{cursor:wait;opacity:.6}.wedding-access-bar{justify-content:flex-end;gap:1rem;padding:.6rem 0;font-size:.75rem;display:flex}.wedding-access-bar a{color:var(--slate-deep)}.utility-link{color:var(--muted);cursor:pointer;font:inherit;text-underline-offset:.25rem;background:0 0;border:0;padding:0;font-size:.7rem;-webkit-text-decoration:underline #0000;text-decoration:underline #0000;transition:color .14s,text-decoration-color .14s}.utility-link:hover,.utility-link:focus-visible{color:var(--slate-deep);text-decoration-color:currentColor}.utility-link:focus-visible{outline:2px solid var(--slate);outline-offset:3px}.private-app{width:min(100%,96rem);min-height:100vh;margin:0 auto;padding:0 clamp(1.25rem,5vw,5.5rem)}.private-header{border-bottom:1px solid var(--line);grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(1rem,3vw,3rem);min-height:5.75rem;display:grid}.private-header .brand-mark-link{width:clamp(7.5rem,10vw,8.75rem)}.private-navigation{justify-content:center;align-items:center;gap:clamp(.6rem,2vw,1.8rem);display:flex}.private-nav-link,.sign-out-button{color:var(--muted);font:inherit;font-size:.8rem;transition:color .14s}.private-nav-link:hover,.private-nav-link.is-current,.sign-out-button:hover{color:var(--slate-deep)}.private-nav-link.is-current{text-decoration:underline;-webkit-text-decoration-color:var(--slate);text-decoration-color:var(--slate);text-underline-offset:.4rem;font-weight:600}.private-account{justify-content:flex-end;align-items:center;gap:.9rem;min-width:0;display:flex}.private-account-name{max-width:10rem;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.7rem;overflow:hidden}.private-account .utility-link{white-space:nowrap}.sign-out-button{cursor:pointer;background:0 0;border:0;padding:0}.private-main{width:min(100%,70rem);min-height:calc(100vh - 9rem);margin:0 auto;padding:clamp(3rem,7vw,6.5rem) 0 5rem}.private-footer{border-top:1px solid var(--line);min-height:3.75rem;color:var(--muted);text-align:center;justify-content:center;align-items:center;gap:1.2rem;font-size:.68rem;line-height:1.4;display:flex}.footer-signature{color:var(--slate-deep);font-family:var(--serif);font-style:italic}.archive-welcome{max-width:53rem;padding-bottom:clamp(3.75rem,8vw,6.5rem)}.archive-welcome h1,.content-page h1{max-width:55rem;font-size:clamp(3.1rem,7.6vw,6rem);line-height:1.02}.archive-welcome .welcome-description,.page-intro{color:#5c5b58;max-width:39rem;font-family:var(--serif);margin:1.5rem 0 0;font-size:clamp(1.05rem,1.65vw,1.28rem);line-height:1.65}.section-actions{justify-content:flex-end;align-items:center;gap:1.25rem;display:flex}.home-section{border-top:1px solid var(--line);padding:2rem 0 3rem}.section-heading{justify-content:space-between;align-items:end;gap:1.5rem;margin-bottom:1.5rem;display:flex}.section-heading .auth-eyebrow,.chapter-card .auth-eyebrow{margin-bottom:.65rem}.section-heading h2,.chapter-card h2{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,4vw,2.5rem);font-weight:400}.event-list{border-top:1px solid var(--line);display:grid}.event-card{border-bottom:1px solid var(--line);grid-template-columns:minmax(8rem,.75fr) minmax(0,2fr) 1.5rem;align-items:center;gap:1.25rem;min-height:7rem;padding:1.25rem 0;transition:background .14s;display:grid}.event-card:hover .event-card-title,.timeline-event-link:hover .timeline-event-title{color:var(--slate-deep)}.event-card-date,.timeline-date,.event-detail-date{color:var(--muted);font-family:var(--serif);font-size:.92rem}.event-card-copy{flex-direction:column;gap:.35rem;display:flex}.event-type{color:var(--slate-deep);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:600}.event-card-title{font-family:var(--serif);letter-spacing:-.025em;font-size:clamp(1.25rem,2.6vw,1.75rem);transition:color .14s}.event-card-location{color:var(--muted);margin:0;font-size:.75rem}.event-card-arrow{color:var(--slate);justify-self:end;font-size:1.15rem}.empty-card,.quiet-message{color:var(--muted);font-family:var(--serif);font-size:1rem;line-height:1.65}.empty-card{border-bottom:1px solid var(--line);flex-direction:column;justify-content:center;align-items:flex-start;gap:.55rem;min-height:9rem;padding:1.5rem 0;display:flex}.empty-card p{color:var(--ink);margin:0}.home-next-chapters{grid-template-columns:1fr 1fr;gap:1rem;padding-top:.25rem;display:grid}.chapter-card{border:1px solid var(--line);background:var(--surface);border-radius:.85rem;min-height:14rem;padding:clamp(1.5rem,3vw,2.25rem)}.chapter-card-wedding{background:#d9b9b124}.chapter-card>p:not(.auth-eyebrow){max-width:25rem;color:var(--muted);font-family:var(--serif);margin:1rem 0 1.2rem;line-height:1.55}.content-page{max-width:58rem;margin:0 auto}.page-heading{max-width:54rem}.content-page h1 span{color:var(--slate);font-style:italic}.page-actions{justify-content:flex-end;margin:2rem 0;display:flex}.page-actions .primary-button{min-width:10rem;margin:0}.timeline-list{gap:0;margin:2rem 0 0;padding:0;list-style:none;display:grid;position:relative}.timeline-list:before{background:var(--line);content:"";width:1px;position:absolute;top:.45rem;bottom:1.5rem;left:.3rem}.timeline-item{grid-template-columns:1.5rem 1fr;gap:1rem;padding-bottom:2.2rem;display:grid;position:relative}.timeline-marker{z-index:1;border:1px solid var(--slate);background:var(--paper);border-radius:50%;width:.65rem;height:.65rem;margin:.28rem 0 0 .02rem;position:relative}.timeline-entry{border-bottom:1px solid var(--line);grid-template-columns:minmax(9rem,.65fr) minmax(0,2fr);align-items:baseline;gap:.55rem 1.4rem;padding:0 0 1.6rem;display:grid}.timeline-date,.timeline-entry .event-card-location{grid-column:1;margin:0}.timeline-event-link{flex-direction:column;grid-row:span 2;align-items:flex-start;gap:.35rem;display:flex}.timeline-event-title{font-family:var(--serif);letter-spacing:-.035em;font-size:clamp(1.35rem,3vw,2rem);transition:color .14s}.timeline-entry .event-card-location{grid-area:2/2}.timeline-empty{border-top:1px solid var(--line);margin-top:2rem}.narrow-page{max-width:42rem}.back-link{color:var(--muted);margin-bottom:2.5rem;font-size:.78rem;display:inline-block}.back-link:hover{color:var(--slate-deep)}.event-form{gap:1.25rem;margin-top:2.5rem;display:grid}.field-group{color:var(--ink);flex-direction:column;gap:.5rem;font-size:.78rem;font-weight:600;display:flex}.field-group input,.field-group select,.field-group textarea{border:1px solid var(--taupe);background:var(--surface);width:100%;min-height:3rem;color:var(--ink);font:inherit;border-radius:.48rem;padding:.72rem .85rem;font-size:.88rem;font-weight:400}.field-group textarea{resize:vertical;min-height:8rem}.field-group input:focus-visible,.field-group select:focus-visible,.field-group textarea:focus-visible,.private-nav-link:focus-visible,.sign-out-button:focus-visible,.back-link:focus-visible{outline-offset:3px;outline:3px solid #587c8f7a}.field-optional{color:var(--muted);font-weight:400}.field-row{grid-template-columns:1fr 1fr;gap:1rem;display:grid}.form-submit{width:100%;margin-top:.25rem}.event-detail{max-width:54rem}.event-detail>.auth-eyebrow{margin:0 0 1rem}.event-detail h1{overflow-wrap:anywhere}.event-detail-date{margin:1.4rem 0 0;font-size:1.05rem}.event-detail-location{color:var(--slate-deep);margin:.6rem 0 0;font-size:.8rem}.event-description{color:#5c5b58;max-width:42rem;font-family:var(--serif);white-space:pre-wrap;margin-top:2rem;font-size:1.1rem;line-height:1.75}.future-media-note{border:1px dashed var(--taupe);min-height:12rem;color:var(--muted);font-family:var(--serif);text-align:center;background:#d6e4ee3d;border-radius:.9rem;justify-content:center;align-items:center;gap:.8rem;margin-top:3rem;padding:2rem;display:flex}.future-media-mark{color:var(--slate);font-size:1.25rem}.chapter-placeholder{max-width:48rem}.chapter-placeholder .quiet-message{border-top:1px solid var(--line);margin-top:3rem;padding:1.3rem 0}.memories-actions{align-items:flex-start;gap:.9rem;margin:2.25rem 0 3rem;display:flex}.memories-actions>.primary-button{min-width:10rem;margin:0}.archive-disclosure{border:1px solid var(--line);background:var(--surface);border-radius:.7rem;width:min(100%,38rem)}.archive-disclosure>summary{min-height:3rem;color:var(--slate-deep);cursor:pointer;padding:.85rem 1rem;font-size:.78rem;font-weight:600;list-style-position:inside}.archive-disclosure[open]>summary{border-bottom:1px solid var(--line)}.archive-disclosure>.event-form{padding:1rem}.event-upload-disclosure{margin-top:1.5rem}.field-help{color:var(--muted);font-size:.7rem;font-weight:400}.check-field{min-height:2.8rem;color:var(--ink);align-items:center;gap:.65rem;font-size:.78rem;display:flex}.check-field input{width:1.1rem;height:1.1rem;accent-color:var(--slate-deep)}.memories-section{border-top:1px solid var(--line);padding:2.4rem 0 3.2rem}.memories-section .section-heading{margin-bottom:1.8rem}.event-filter{color:var(--muted);align-items:center;gap:.6rem;font-size:.72rem;display:flex}.event-filter select{border:1px solid var(--line);background:var(--surface);max-width:min(15rem,42vw);min-height:2.6rem;color:var(--ink);font:inherit;border-radius:.45rem;padding:.45rem .7rem}.event-filter button{cursor:pointer;background:0 0;border:0;padding:.4rem 0}.photo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(.65rem,1.5vw,1.2rem);display:grid}.photo-grid-item{flex-direction:column;gap:.55rem;min-width:0;display:flex}.photo-grid-image{aspect-ratio:1;background:var(--powder);border-radius:.55rem;width:100%;display:block;position:relative;overflow:hidden}.photo-grid-image img{object-fit:cover;transition:transform .22s}.photo-grid-item:hover .photo-grid-image img{transform:scale(1.025)}.photo-grid-caption{color:#5c5b58;font-family:var(--serif);flex-direction:column;gap:.2rem;font-size:.84rem;line-height:1.4;display:flex}.photo-event-label{color:var(--muted);font-family:var(--sans);text-overflow:ellipsis;white-space:nowrap;font-size:.65rem;overflow:hidden}.photo-empty-state{border:1px dashed var(--taupe);min-height:13rem;color:var(--muted);font-family:var(--serif);text-align:center;background:#d6e4ee3d;border-radius:.8rem;flex-direction:column;justify-content:center;align-items:center;gap:.6rem;padding:2rem;display:flex}.photo-empty-state p{color:var(--ink);margin:0;font-size:1.08rem}.photo-empty-state>span:last-child{max-width:30rem;font-size:.88rem;line-height:1.55}.event-gallery-section{border-top:1px solid var(--line);margin-top:3.2rem;padding-top:2.2rem}.event-gallery-section>.section-heading{margin-bottom:1.35rem}.event-photo-cover{aspect-ratio:1.65;background:var(--powder);border-radius:.75rem;width:100%;display:block;position:relative;overflow:hidden}.event-photo-cover img{object-fit:cover}.event-cover-caption{color:#fff;font-family:var(--serif);background:#2e2e2ec7;padding:2.8rem 1.2rem 1.1rem;font-size:1rem;position:absolute;bottom:0;left:0;right:0}.event-photo-feature>.photo-grid{grid-template-columns:repeat(4,minmax(0,1fr));margin-top:.8rem}.photo-detail-page{max-width:68rem}.photo-detail-image{aspect-ratio:4/3;background:var(--powder);border-radius:.8rem;width:100%;position:relative;overflow:hidden}.photo-detail-image img{object-fit:contain}.photo-detail-copy{max-width:48rem;padding:1.5rem 0 0}.photo-detail-copy h1{letter-spacing:-.035em;font-size:clamp(1.7rem,4vw,2.8rem);line-height:1.15}.photo-detail-date,.photo-detail-events{color:var(--muted);margin:.8rem 0 0;font-size:.76rem;line-height:1.6}.photo-detail-events a{color:var(--slate-deep);text-underline-offset:.2rem;text-decoration:underline}.written-memory-list{border-top:1px solid var(--line)}.written-memory{border-bottom:1px solid var(--line);padding:1.5rem 0 1.7rem}.written-memory-meta{color:var(--muted);flex-wrap:wrap;gap:.55rem 1rem;font-size:.7rem;display:flex}.written-memory-meta a{color:var(--slate-deep);text-underline-offset:.2rem;text-decoration:underline}.written-memory h3{font-family:var(--serif);letter-spacing:-.025em;overflow-wrap:anywhere;margin:.6rem 0 0;font-size:1.5rem;font-weight:400}.written-memory>p{color:#5c5b58;max-width:48rem;font-family:var(--serif);white-space:pre-wrap;overflow-wrap:anywhere;margin:.7rem 0 0;line-height:1.7}.memory-empty{padding:.8rem 0}.archive-panel form{margin-top:1.5rem}.archive-panel .primary-button{width:100%}@media (max-width:760px){.home-shell{padding-inline:clamp(1.2rem,6vw,2.5rem)}.site-header{min-height:5.2rem}.header-note{text-align:right}.welcome{grid-template-columns:1fr;gap:1.75rem;padding:4.5rem 0 3rem}.welcome-copy{padding:0}.eyebrow{margin-bottom:1.35rem;font-size:.62rem}h1{font-size:clamp(3.45rem,13vw,5rem)}.welcome-description{max-width:29rem;margin-top:1.45rem}.welcome-note{margin-top:1.5rem}.site-footer{gap:1rem;min-height:4rem;font-size:.64rem}.private-app{padding-inline:1rem}.private-header{grid-template-columns:1fr auto;gap:.75rem;padding:.85rem 0}.private-header .brand-mark-link{width:7rem}.private-account-name{display:none}.private-navigation{scrollbar-width:none;grid-area:2/1/auto/-1;justify-content:flex-start;gap:1.4rem;padding:.45rem 0 .25rem;overflow-x:auto}.private-navigation::-webkit-scrollbar{display:none}.wedding-site-header{flex-direction:column;align-items:stretch;gap:.75rem;display:flex}.wedding-site-header .private-navigation{grid-area:auto;justify-content:flex-start;gap:1.4rem;padding:.2rem 0;overflow-x:auto}.wedding-site-header .private-nav-link{flex:none}.wedding-site-header .wedding-access-bar{justify-content:flex-start}.section-actions{flex-wrap:wrap;gap:.7rem}.private-footer{justify-content:space-between;gap:.5rem;padding-block:.75rem;font-size:.62rem}.private-nav-link{flex:none;font-size:.72rem}.private-main{min-height:calc(100vh - 10rem);padding:3.5rem 0 4rem}.archive-welcome{padding-bottom:4rem}.section-heading{align-items:flex-start}.event-card{grid-template-columns:1fr auto;gap:.6rem .8rem;padding:1.15rem 0}.event-card-date{grid-area:1/1}.event-card-copy{grid-area:2/1}.event-card-arrow{grid-area:1/2/span 2}.home-next-chapters,.timeline-entry{grid-template-columns:1fr}.timeline-event-link{grid-row:auto}.timeline-date,.timeline-entry .event-card-location{grid-column:auto}.timeline-entry .event-card-location{grid-row:auto}.field-row{grid-template-columns:1fr}.content-page h1,.archive-welcome h1{font-size:clamp(3rem,12vw,4.6rem)}.page-actions{justify-content:flex-start}.memories-actions{flex-direction:column}.memories-actions>.archive-disclosure{width:100%}.event-filter{flex-wrap:wrap;justify-content:flex-start}.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.event-photo-feature>.photo-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.event-photo-cover{aspect-ratio:1.25}.photo-detail-image{aspect-ratio:1}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important}}.wedding-chapter{gap:clamp(2rem,4vw,3.5rem);display:grid}.wedding-site-header{border-bottom:1px solid var(--line);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:1.25rem;padding-bottom:.8rem;display:grid}.wedding-site-header .private-navigation{justify-content:center}.wedding-site-header .private-nav-link{font-size:.8rem;font-weight:500}.wedding-site-header>.brand-mark-link{width:clamp(7.5rem,10vw,8.75rem)}.wedding-access-bar .utility-link{color:var(--muted);font-size:.68rem}.wedding-navigation{border-bottom:1px solid var(--line);scrollbar-width:none;gap:clamp(1rem,2.6vw,2rem);padding:.15rem 0 .9rem;display:flex;overflow-x:auto}.wedding-navigation::-webkit-scrollbar{display:none}.wedding-nav-link{color:var(--muted);text-underline-offset:.35rem;flex:none;font-size:.76rem}.wedding-nav-link:hover,.wedding-nav-link.is-current{color:var(--slate-deep);text-decoration:underline;-webkit-text-decoration-color:var(--slate);text-decoration-color:var(--slate);font-weight:600}.wedding-overview{gap:clamp(3.5rem,7vw,6.5rem);display:grid}.wedding-hero{max-width:54rem;padding:clamp(1rem,4vw,3rem) 0 0}.wedding-hero h1{font-size:clamp(3.2rem,7.5vw,6.5rem)}.wedding-hero h1 span{color:var(--slate);font-style:normal}.wedding-date{color:var(--slate-deep);letter-spacing:.035em;margin:1.4rem 0 0}.wedding-hero .page-intro{max-width:42rem;font-family:var(--serif);margin-top:1.5rem;font-size:clamp(1.25rem,2.3vw,1.75rem);line-height:1.5}.wedding-connection{max-width:38rem;color:var(--muted);line-height:1.75}.wedding-countdown{border-left:1px solid var(--taupe);gap:.35rem;width:fit-content;margin-top:2rem;padding:.25rem 0 .25rem 1rem;display:grid}.wedding-countdown .auth-eyebrow{margin:0}.wedding-countdown strong{font-family:var(--serif);font-size:1.5rem;font-weight:400}.wedding-countdown>span:last-child{color:var(--muted);font-size:.78rem}.wedding-link-section,.wedding-origin,.wedding-faq{gap:1.4rem;display:grid}.wedding-link-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem;display:grid}.wedding-link-card{border:1px solid var(--line);background:#d6e4ee2e;align-content:space-between;gap:1.3rem;min-height:8.5rem;padding:1.2rem;transition:border-color .16s,background-color .16s;display:grid;position:relative}.wedding-link-card:hover{border-color:var(--slate);background:#d6e4ee61}.wedding-link-card>span:first-child{color:var(--muted);font-size:.73rem}.wedding-link-card strong{font-family:var(--serif);font-size:1.3rem;font-weight:400}.wedding-link-card .event-card-arrow{position:absolute;bottom:1rem;right:1rem}.wedding-origin{border-top:1px solid var(--line);grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start;padding-top:2.2rem}.wedding-origin h2,.wedding-faq h2{font-family:var(--serif);letter-spacing:-.04em;margin:0;font-size:clamp(1.8rem,3.2vw,2.6rem);font-weight:400}.wedding-origin .page-intro{font-family:var(--serif);line-height:1.65}.origin-place-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;display:grid}.origin-place{border:1px solid var(--line);gap:.3rem;padding:.85rem 1rem;display:grid}.origin-place strong{font-family:var(--serif);font-size:1.05rem;font-weight:400}.origin-place span{color:var(--muted);font-size:.75rem}.wedding-subpage{gap:clamp(2.5rem,5vw,4rem);display:grid}.wedding-subpage .page-heading{margin-bottom:0}.wedding-subpage .page-heading h1{font-size:clamp(3rem,6vw,5rem)}.wedding-schedule-list,.wedding-info-grid,.story-chapters{gap:.9rem;display:grid}.wedding-schedule-card,.wedding-info-card,.story-chapter{border:1px solid var(--line);background:#fffdfbd1;padding:clamp(1.2rem,3vw,2rem)}.wedding-schedule-card>.timeline-date{margin:0 0 1.15rem}.wedding-schedule-main{grid-template-columns:minmax(0,1.15fr) minmax(14rem,.85fr);gap:2rem;display:grid}.wedding-schedule-main h2,.wedding-info-card h2,.story-chapter h2{font-family:var(--serif);letter-spacing:-.035em;margin:.1rem 0 .75rem;font-size:clamp(1.5rem,3vw,2.1rem);font-weight:400}.wedding-schedule-main p,.wedding-info-card p,.story-chapter>div>p:last-child{color:#5c5b58;line-height:1.75}.wedding-schedule-main .auth-eyebrow{margin:0 0 .4rem}.wedding-schedule-details{color:var(--muted);align-content:start;gap:.7rem;font-size:.83rem;line-height:1.55;display:grid}.outfit-inspiration{border-top:1px solid var(--line);margin-top:1.8rem;padding-top:1.2rem}.outfit-inspiration h3{font-family:var(--serif);margin:0 0 .9rem;font-size:1.35rem;font-weight:400}.outfit-inspiration-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;display:grid}.outfit-inspiration-card{gap:.65rem;margin:0;display:grid}.outfit-image-frame{aspect-ratio:3/2;background:var(--powder);position:relative;overflow:hidden}.outfit-image-frame img{object-fit:cover}.outfit-inspiration-card figcaption{color:var(--muted);font-size:.84rem}.wedding-info-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wedding-info-card{min-height:9rem}.wedding-venue-card,.accommodation-summary{background:var(--powder)}.status-pill{border:1px solid var(--taupe);color:var(--slate-deep);border-radius:99px;margin-top:.65rem;padding:.4rem .7rem;font-size:.72rem;display:inline-block}.wedding-detail-list{margin:1.2rem 0 0;padding:0;list-style:none}.wedding-detail-list li{border-top:1px solid var(--line);justify-content:space-between;gap:1rem;padding:.8rem 0;font-size:.86rem;display:flex}.wedding-detail-list li span{color:var(--muted);text-align:right}.rsvp-note{max-width:48rem;padding:clamp(1.5rem,4vw,3rem)}.wedding-faq{border-top:1px solid var(--line);padding-top:2rem}.wedding-faq-list{border-top:1px solid var(--line)}.wedding-faq-item{border-bottom:1px solid var(--line);padding:1rem 0}.wedding-faq-item summary{cursor:pointer;font-family:var(--serif);font-size:1.15rem}.wedding-faq-item p{max-width:42rem;color:var(--muted);margin-bottom:.1rem;line-height:1.7}.story-chapter{grid-template-columns:3.5rem minmax(0,1fr);gap:1rem;padding-block:clamp(1.5rem,4vw,2.5rem);display:grid}.story-chapter-number{color:var(--slate);font-family:var(--serif);padding-top:.3rem;font-size:1.3rem}.story-chapter .auth-eyebrow{margin:0 0 .5rem}.story-chapter>div>p:last-child{max-width:44rem;margin-bottom:0}.story-page{gap:clamp(2rem,5vw,3.5rem);display:grid}.story-heading{border-bottom:1px solid var(--line);padding-bottom:1.6rem}.story-heading h1{font-size:clamp(3rem,7vw,5.5rem)}.story-title-rule{background:var(--slate);width:2.5rem;height:2px;margin-top:1.2rem;display:block}.story-chapters{gap:0;position:relative}.story-chapters:before{background:var(--line);content:"";width:1px;position:absolute;top:0;bottom:0;left:1.7rem}.story-page .story-chapter{border:0;border-bottom:1px solid var(--line);background:0 0;grid-template-columns:3.5rem minmax(0,1fr);gap:1.25rem;padding:clamp(1.8rem,4vw,2.8rem) 0;position:relative}.story-chapter-number{z-index:1;background:var(--paper);width:fit-content;height:fit-content;color:var(--slate-deep);font-variant-numeric:tabular-nums;font-size:1rem;position:relative}.story-chapter-content{max-width:46rem}.story-chapter-content h2{color:var(--ink);margin:0 0 1.1rem;font-size:clamp(1.55rem,3vw,2.1rem)}.story-chapter-content p{color:#454442;max-width:46rem;font-family:var(--serif);margin:.8rem 0 0;font-size:1.04rem;line-height:1.8}.story-chapter-content strong{color:var(--slate-deep);font-weight:600}.story-page .story-ending{border-bottom:0}.story-timeline-link{padding-top:.5rem}.story-timeline-link,.wedding-photo-link{margin:0}@media (max-width:760px){.wedding-link-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wedding-origin,.wedding-schedule-main,.wedding-info-grid{grid-template-columns:1fr}}@media (max-width:480px){.wedding-navigation{gap:1.2rem}.wedding-site-header{flex-direction:column;align-items:stretch;gap:.75rem;display:flex}.wedding-site-header .private-navigation{grid-area:auto;justify-content:flex-start;gap:1.2rem;padding:.2rem 0;overflow-x:auto}.wedding-site-header .private-nav-link{flex:none;font-size:.7rem}.wedding-site-header .wedding-access-bar{justify-content:flex-start}.wedding-nav-link{font-size:.7rem}.wedding-link-grid,.origin-place-list{grid-template-columns:1fr}.wedding-detail-list li{gap:.25rem;display:grid}.wedding-detail-list li span{text-align:left}.story-chapter{grid-template-columns:2.3rem minmax(0,1fr);gap:.65rem}.story-chapters:before{left:1.1rem}.story-page .story-chapter{grid-template-columns:2.3rem minmax(0,1fr);gap:.65rem}.story-chapter-content p{font-size:.98rem;line-height:1.75}}
