.home{--pink:#f3286f;--yellow:#ffd400}.home .site-header{height:82px}.wedding-hero{height:calc(100svh - 82px);min-height:640px;max-height:1000px;position:relative;display:grid;place-items:center;isolation:isolate;color:var(--gold)}.wedding-hero-photo,.wedding-hero-shade{position:absolute;inset:0;width:100%;height:100%;z-index:-2}.wedding-hero-photo{filter:grayscale(1);object-position:center 48%}.wedding-hero-shade{background:linear-gradient(0deg,#181512b3,#18151252 65%,#18151275);z-index:-1}.wedding-title{text-align:center;padding:35px 22px}.wedding-title .eyebrow{font-size:13px;letter-spacing:.28em}.wedding-title h1{font:clamp(90px,12vw,176px)/1.13 var(--script);margin:25px 0 0}.wedding-title h1 span{font-size:.72em;display:inline-block;padding:0 8px}.married{font:25px var(--heading);letter-spacing:.32em;text-transform:uppercase;margin:8px 0 36px}.hero-rsvp{padding:13px 31px;border-color:var(--gold);text-transform:uppercase;font-size:14px;letter-spacing:.16em}.hero-rsvp span{margin-left:20px}.wedding-meta{position:absolute;bottom:32px;left:4.8%;right:4.8%;display:flex;justify-content:space-between;gap:25px;font-size:13px;text-transform:uppercase;letter-spacing:.1em}.wedding-meta a{text-decoration:none}.wedding-meta>a:nth-child(2){position:absolute;left:50%;transform:translateX(-50%)}.wedding-meta>a:last-child{margin-left:auto}.wedding-meta span[aria-hidden]{margin-left:12px}.story{color:var(--gold)}.story-heading{text-align:center;margin-bottom:68px}.story-heading h2{font:42px var(--heading);margin:20px 0 0}.story-heading h2 span{display:block;font:70px var(--script);margin-top:4px}.story-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:95px;align-items:center}.story-photo{margin:0;transform:rotate(-5deg);background:var(--cream);padding:14px 14px 5px;box-shadow:12px 15px 0 #83244825}.story-photo img{aspect-ratio:3/4;filter:grayscale(1)}.story-photo figcaption{font:27px var(--script);text-align:center;color:var(--ink);padding:16px 5px}.story-copy p{font-size:21px;margin:0 0 20px;line-height:1.7}.story-copy .story-lead{font:40px var(--script);margin-bottom:20px}.story-copy .story-signature{font:32px var(--script);margin:27px 0 0}.countdown-section{text-align:center;padding:52px 24px 38px}.countdown-section .eyebrow{margin-bottom:20px}.countdown{display:flex;justify-content:center;align-items:center;gap:35px}.countdown>div{min-width:90px;display:flex;flex-direction:column}.countdown [data-count]{font:64px/1.2 var(--heading);font-variant-numeric:tabular-nums}.countdown small{font-size:13px;text-transform:uppercase;letter-spacing:.15em}.count-separator{font-size:28px;align-self:start;margin-top:12px;opacity:.4}.count-date{font-size:15px;letter-spacing:.1em;margin:24px 0 0}.home-banner{margin:0;height:340px;position:relative;isolation:isolate}.home-banner img{height:100%;filter:grayscale(1)}.home-banner:after{content:'';position:absolute;inset:0;background:#191c1c44}.home-banner figcaption{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:24px;font:48px var(--script);color:var(--cream);z-index:1}.programme-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.programme h2{text-transform:uppercase;font-size:40px;letter-spacing:.08em}.programme h3{font:43px var(--script);margin:35px 0 20px;display:flex;align-items:center;gap:20px}.programme h3 span{font:15px var(--body);letter-spacing:.1em}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:grid;grid-template-columns:120px 1fr;padding:15px 0;border-top:1px solid #813b2830;gap:20px;font-size:22px}.timeline li>time,.timeline li>span{font-size:18px;padding-top:4px}.timeline small{display:block;font-size:16px;opacity:.75;margin-top:3px}.key-info>p:not(.eyebrow){margin:0 0 30px}.info-line{display:flex;gap:24px;padding:24px 0;border-top:1px solid #813b2830}.info-line>span{font-size:16px;padding-top:6px;opacity:.65}.info-line h4{font:27px var(--heading);margin:0 0 9px}.info-line p{margin:0;font-size:20px}.info-line .text-link{font-size:17px}.home-gallery{position:relative;isolation:isolate;text-align:center;color:var(--cream);overflow:hidden;padding-top:80px;padding-bottom:90px}.gallery-background{position:absolute;inset:0;height:100%;z-index:-2;filter:brightness(.45)}.home-gallery h2{font:64px var(--script)}.gallery-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:52px;max-width:970px;margin:58px auto 64px;align-items:center}.gallery-cards figure{margin:0;background:var(--cream);padding:12px 12px 8px;color:var(--ink);transform:rotate(-5deg);box-shadow:0 15px 35px #0004}.gallery-cards figure:nth-child(2){transform:translateY(25px) rotate(3deg)}.gallery-cards figure:nth-child(3){transform:rotate(-3deg)}.gallery-cards img{aspect-ratio:3/4}.gallery-cards figcaption{font:28px var(--script);padding:15px 0 5px}.presence{color:var(--gold)}.presence-grid{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.presence-grid>figure{margin:0;position:relative}.presence-grid img{aspect-ratio:4/5;filter:grayscale(1)}.presence-grid figcaption{font:30px var(--script);margin-top:18px;text-align:center}.presence h2{font:58px/1.1 var(--heading);margin-bottom:30px}.presence p{line-height:1.7}.presence .button{margin-top:12px;padding:14px 25px}.presence .button span{margin-left:22px}.faq-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:80px}.faq h2{font:48px/1.15 var(--heading)}.faq-layout>div>p:not(.eyebrow){font-size:19px}.faq details{border-top:1px solid #813b2833}.faq details:last-child{border-bottom:1px solid #813b2833}.faq summary{list-style:none;cursor:pointer;padding:23px 0;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:23px}.faq summary::-webkit-details-marker{display:none}.faq summary:focus-visible{outline:2px solid var(--ink);outline-offset:4px}.faq summary span{font-size:26px;transition:transform .2s}.faq details[open] summary span{transform:rotate(45deg)}.faq details p{margin:0 28px 25px 0;font-size:20px}.home-finale{height:390px;position:relative;isolation:isolate;text-align:center;display:grid;place-items:center;color:var(--gold)}.home-finale>img{position:absolute;inset:0;height:100%;z-index:-2;filter:grayscale(1) brightness(.48)}.home-finale p{font-size:22px;margin:0 0 8px}.home-finale h2{font:78px var(--script);margin:0 20px 16px}.home-finale span{text-transform:uppercase;font-size:13px;letter-spacing:.22em}.contact-band{padding:45px 24px;text-align:center}.contact-band>.eyebrow{font-size:12px}.contacts{display:flex;justify-content:center;align-items:center;gap:80px}.contacts>div{display:flex;flex-direction:column;align-items:center}.contacts h3{font:42px var(--script);margin:0 0 6px}.contacts a{text-decoration:none;font-size:23px}.contacts .sms{font-size:15px;text-decoration:underline;margin-top:9px}.contact-heart{font:55px var(--script);opacity:.6}
@media(max-width:950px){.story-layout{gap:45px}.programme-grid{gap:45px}.presence-grid{gap:45px}.faq-layout{gap:35px}.gallery-cards{gap:25px}.wedding-meta{font-size:11px}.wedding-meta>a:nth-child(2){display:none}.story-copy p{font-size:20px}}
@media(max-width:650px){.home .site-header{height:70px}.wedding-hero{height:calc(100svh - 70px);min-height:590px;max-height:800px}.wedding-title{padding:30px 18px}.wedding-title .eyebrow{font-size:10px;max-width:260px;margin:0 auto;line-height:2;letter-spacing:.19em}.wedding-title h1{font-size:88px;line-height:1.12;margin-top:22px}.wedding-title h1 span{display:block;font-size:46px;line-height:.8;margin:9px 0}.married{font-size:19px;margin-top:24px;margin-bottom:28px}.wedding-meta{bottom:25px;left:20px;right:20px;flex-direction:column;align-items:center;gap:9px;font-size:10px}.wedding-meta>a:last-child{margin:0}.story-heading{margin-bottom:45px}.story-heading h2{font-size:31px}.story-heading h2 span{font-size:52px}.story-layout{grid-template-columns:1fr;gap:45px}.story-photo{width:78%;max-width:310px;justify-self:center}.story-copy{text-align:left}.story-copy .story-lead{font-size:36px}.story-copy .story-signature{font-size:29px}.countdown-section{padding:38px 18px}.countdown{gap:12px}.countdown>div{min-width:53px}.countdown [data-count]{font-size:42px}.countdown small{font-size:10px;letter-spacing:.07em}.count-separator{font-size:20px;margin-top:8px}.count-date{font-size:13px}.home-banner{height:250px}.home-banner figcaption{font-size:36px}.programme-grid{grid-template-columns:1fr;gap:50px}.programme h2{font-size:33px}.programme h3{font-size:38px}.timeline li{grid-template-columns:105px 1fr;gap:15px;font-size:21px}.timeline li>time,.timeline li>span{font-size:16px}.home-gallery{padding-top:56px;padding-bottom:58px}.home-gallery h2{font-size:47px}.gallery-cards{gap:10px;margin:40px auto 50px}.gallery-cards figure{padding:5px 5px 3px}.gallery-cards figcaption{font-size:18px;line-height:1.2;min-height:53px;padding:10px 1px 4px}.gallery-cards figure:nth-child(2){transform:translateY(16px) rotate(3deg)}.presence-grid{grid-template-columns:1fr;gap:38px}.presence-grid>figure{width:88%;justify-self:center}.presence h2{font-size:47px}.presence-grid figcaption{font-size:26px}.faq-layout{grid-template-columns:1fr;gap:28px}.faq h2{font-size:42px}.faq summary{font-size:21px}.home-finale{height:300px}.home-finale h2{font-size:54px;line-height:1.2}.contacts{gap:28px}.contacts h3{font-size:35px}.contacts a{font-size:20px}.contacts .sms{font-size:13px}.contact-heart{font-size:35px}.contact-band>.eyebrow{font-size:10px;line-height:1.8}}
@media(prefers-reduced-motion:reduce){.faq summary span{transition:none}}
