body.theme-fotografica{--paper:#f3f0ea;--ink:#1c1c1a;--muted:#77736c;--line:#d4d0c8;--accent:#b36549;background:var(--paper);color:var(--ink);font-family:Jost,sans-serif}body.theme-fotografica .demo-banner{background:#1c1c1a;color:var(--paper)}body.theme-fotografica .desktop-header{position:absolute;z-index:3;top:42px;left:0;right:0;background:transparent;border:0;color:#fff}body.theme-fotografica .desktop-header nav a,body.theme-fotografica .monogram{color:inherit}body.theme-fotografica h1,body.theme-fotografica h2,body.theme-fotografica h3{font-family:'Bodoni Moda',Georgia,serif;font-weight:400}
.hero{height:calc(100svh - 42px);min-height:620px;position:relative;overflow:hidden;background:#222}.hero-photo{position:absolute;inset:0;margin:0}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.8)}.hero-photo:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.65),transparent 65%),linear-gradient(0deg,rgba(0,0,0,.55),transparent 55%)}.hero-copy{position:absolute;z-index:1;left:8vw;bottom:10vh;color:#fff;max-width:720px}.hero-copy h1{font-size:clamp(4.5rem,10vw,10rem);line-height:.8;letter-spacing:-.08em;margin:1rem 0 1.5rem;text-shadow:0 3px 24px #000}.hero-copy .amp{color:#e09a77}.hero-line{line-height:1.6}.text-link{display:inline-block;color:#fff;border-bottom:1px solid #e09a77;padding-bottom:.35rem;font-size:.7rem;letter-spacing:.14em;text-transform:uppercase;margin-top:1.2rem}
.section{max-width:1280px;margin:auto;padding:clamp(5rem,9vw,8rem) 7vw}.story{display:grid;grid-template-columns:.7fr 1fr;gap:12%;background:#e4d9cf}.story h2{font-size:clamp(3.2rem,7vw,7rem);line-height:.84;margin:0}.story h2 em{color:var(--accent)}.story-warm-grid{max-width:30rem;line-height:1.7}.countdown{background:#1c1c1a;color:#fff;padding:2.5rem 7vw;display:flex;justify-content:space-between;align-items:center;gap:2rem}.countdown h2{font-size:clamp(2rem,4vw,4rem);margin:0}.clock{display:flex;gap:1.5rem}.clock strong{font-family:'Bodoni Moda',serif;font-size:clamp(2rem,4vw,3.8rem);font-weight:400;color:#e09a77;display:block}.clock span{font-size:.55rem;letter-spacing:.12em}.celebration{background:var(--paper);max-width:none}.celebration h2,.program h2,.gallery h2{font-size:clamp(3rem,6vw,6rem);line-height:.88;margin:1rem 0 3rem}.venue{max-width:1080px;margin:auto;display:grid;grid-template-columns:1fr 1fr;background:#e4d9cf}.venue>img{width:100%;height:100%;aspect-ratio:1/1;object-fit:cover}.venue-copy{padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center}.venue-copy h3{font-size:clamp(2.5rem,4vw,4.6rem);line-height:.9;margin:1rem 0;color:var(--accent)}.venue-copy p{line-height:1.6}.venue-map{height:90px;margin-top:1.5rem}.venue-map iframe{width:100%;height:100%;border:0;filter:grayscale(1)}.program{background:#e4d9cf;max-width:none;text-align:center}.timeline{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.timeline article{padding:1.5rem .8rem;border-right:1px solid var(--line)}.timeline article:last-child{border:0}.timeline article>span{color:var(--accent);font-size:.7rem;letter-spacing:.2em}.timeline .time{font-family:'Bodoni Moda',serif;font-size:2rem;margin:1.5rem 0 .4rem}.timeline h3{font-size:1.4rem;margin:0}.details{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;background:#1c1c1a;color:#fff;max-width:none}.details h2,.rsvp h2{font-size:clamp(2.7rem,5vw,5.5rem);line-height:.88}.details h2 em{color:#e09a77}.accordions details{border-top:1px solid #555;padding:1.2rem 0}.accordions details:last-child{border-bottom:1px solid #555}.accordions summary{display:flex;justify-content:space-between;cursor:pointer}.accordions summary span{color:#e09a77}.gallery{background:#e4d9cf;max-width:none;text-align:center}.gallery-grid{max-width:1050px;margin:auto;display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;height:360px}.gallery-grid figure{margin:0;overflow:hidden}.gallery-grid img{width:100%;height:100%;object-fit:cover;display:block}.gallery-placeholder{background:#1c1c1a;color:#e09a77;display:grid;place-items:center;font-size:3rem}.rsvp{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%;background:var(--paper)}.rsvp input,.rsvp textarea{background:transparent;border-color:var(--line)}.button{background:var(--accent);color:#fff;border-radius:0}body.theme-fotografica footer{background:#1c1c1a;color:#fff;padding:7rem 7vw 2rem;text-align:center}.footer-names{font-family:'Bodoni Moda',serif;font-size:clamp(3rem,8vw,8rem)}.footer-names em{color:#e09a77}.footer-bar{border-top:1px solid #555;padding-top:1rem;display:flex;justify-content:space-between;font-size:.7rem}.footer-bar a,.footer-bar button{color:inherit}
@media(max-width:800px){.hero{height:calc(100svh - 38px);min-height:600px}.hero-copy{left:1.25rem;right:1.25rem;bottom:2.5rem}.hero-copy h1{font-size:clamp(4rem,18vw,7rem)}.section{padding:4rem 1.25rem}.story,.details,.rsvp,.venue{display:block}.story h2{margin:1.5rem 0}.countdown{display:block;padding:3rem 1.25rem}.clock{margin-top:2rem;display:grid;grid-template-columns:repeat(2,1fr)}.venue>img{aspect-ratio:1/1}.venue-copy{padding:2rem 1.25rem}.timeline{grid-template-columns:1fr 1fr}.timeline article:nth-child(2){border-right:0}.timeline article:nth-child(3),.timeline article:nth-child(4){border-top:1px solid var(--line)}.gallery-grid{height:auto;grid-template-columns:1fr}.gallery-grid figure{height:240px}.accordions{margin-top:2rem}.rsvp form{margin-top:2.5rem}.footer-bar{flex-direction:column;gap:1rem}}
body.theme-fotografica .celebration{padding-top:3.5rem;padding-bottom:4rem}
body.theme-fotografica .celebration h2{margin:.4rem 0 1.4rem}
body.theme-fotografica .venue{max-width:980px;grid-template-columns:420px minmax(0,1fr);gap:0}
body.theme-fotografica .venue>img{width:420px;height:420px;aspect-ratio:1;object-fit:cover}
body.theme-fotografica .venue-copy{padding:2rem 3rem}
@media(max-width:800px){body.theme-fotografica .venue{display:block}.venue>img{width:100%;height:auto;aspect-ratio:1}.venue-copy{padding:2rem 1.25rem}}
