html{scroll-behavior:smooth}
.wedding-hero__statement{max-width:min(550px,44vw);bottom:clamp(34px,4.4vw,64px)}
.wedding-hero__statement h1{margin-bottom:20px!important}
.wedding-hero__subline{max-width:470px;font-size:clamp(20px,1.8vw,26px);line-height:1.3;color:#343434!important}
.wedding-hero p.preview-hero-description{max-width:410px!important;margin:14px 0 0!important;font-size:16px!important;line-height:1.55!important;color:#484848!important}
a.preview-link{display:inline-flex;gap:25px;align-items:center;width:fit-content;margin-top:26px;padding:9px 0;border-bottom:1px solid #999;color:#343434!important;font-family:var(--sans,Gilroy,Arial)!important;font-size:16px;line-height:1.4;text-decoration:none}
a.preview-link:hover{border-color:#343434}
a.preview-link:focus-visible{outline:2px solid #343434;outline-offset:6px}
.wedding-union p:not(.wedding-kicker){font-size:16px;line-height:1.7}
.wedding-union__copy{max-width:620px}
.wedding-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.wedding-gallery__item figure{min-height:350px}
.wedding-gallery__item div{min-height:138px;padding:24px 28px}
.wedding-gallery__item p{max-width:440px;font-size:18px}
.wedding-gallery__item p.preview-card-description{margin-top:12px;font-size:16px;line-height:1.55;color:#666!important}
.preview-closing{padding:90px 24px 100px;text-align:center;border-top:1px solid var(--js-line)}
.preview-closing h2{margin:0 auto 24px;max-width:780px;font-family:var(--serif)!important;font-weight:400;font-size:clamp(27px,3vw,42px);line-height:1.2}
.preview-closing p{max-width:580px;margin:0 auto;font-family:var(--sans)!important;font-size:17px;line-height:1.7;color:#666}
.preview-closing .preview-link{margin:28px auto 0}
.js-footer-newsletter label{line-height:1.35}
@media(max-width:920px){
.wedding-hero__statement{max-width:48vw}
.wedding-hero p.preview-hero-description{max-width:350px!important}
}
@media(max-width:560px){
.wedding-hero{display:flex;flex-direction:column;min-height:0;overflow:visible}
.wedding-hero__banner{position:relative;inset:auto;width:100%;height:430px;z-index:0}
.wedding-hero__banner img{object-position:64% center}
.wedding-hero__statement{position:relative;left:auto;bottom:auto;max-width:none;width:100%;padding:30px 22px 38px;box-sizing:border-box;background:#fff}
.wedding-hero__statement h1{font-size:42px!important}
.wedding-hero__eyebrow{font-size:12px}
.wedding-hero__subline{max-width:none;font-size:22px}
.wedding-hero p.preview-hero-description{max-width:none!important}
.wedding-union{padding:44px 22px;gap:30px}
.wedding-union p:not(.wedding-kicker){font-size:16px!important}
.wedding-gallery__grid{grid-template-columns:1fr}
.wedding-gallery__item figure{min-height:300px}
.wedding-gallery__item div{padding:20px;min-height:0}
.wedding-gallery__item p{font-size:18px!important}
.wedding-gallery__item p.preview-card-description{font-size:16px!important}
.preview-closing{padding:54px 22px 62px}
.preview-closing p{font-size:16px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Restore the four equal gallery cells shown in the supplied reference. */
.wedding-gallery__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
.wedding-gallery__item{grid-template-rows:minmax(300px,auto) 1fr}
.wedding-gallery__item figure{min-height:clamp(300px,25vw,390px)}
.wedding-gallery__item div{padding:18px 20px 24px;min-height:140px}
.wedding-gallery__item p{font-size:15px;line-height:1.4}
.wedding-gallery__item p.preview-card-description{font-size:14px;line-height:1.5}
@media(max-width:920px){.wedding-gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.wedding-gallery__grid{grid-template-columns:1fr}.wedding-gallery__item div{min-height:0}}
.wedding-enquiry{max-width:620px;margin:34px auto 0;text-align:left;font-family:var(--sans,Gilroy,Arial)}
.wedding-enquiry__fields{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.wedding-enquiry__field label{display:block;margin-bottom:10px;color:#343434;font-size:15px}
.wedding-enquiry__field input{box-sizing:border-box;width:100%;min-width:0;height:54px;padding:14px 16px;border:1px solid #c9c9c9;border-radius:0;background:#fff;color:#343434;font:16px var(--sans,Gilroy,Arial);box-shadow:none}
.wedding-enquiry__field input:focus{outline:1px solid #343434;outline-offset:0;border-color:#343434}
.wedding-enquiry__field input[aria-invalid=true]{border-color:#96453b}
.preview-closing p.wedding-enquiry__hint{margin:12px 0 24px;max-width:none;font-size:14px;line-height:1.5;color:#707070}
.wedding-enquiry__submit{width:100%;min-height:54px;padding:16px 24px;background:#30302e;color:#fff;border:1px solid #30302e;border-radius:0;font:16px var(--sans,Gilroy,Arial);cursor:pointer}
.wedding-enquiry__submit:hover{background:#464643}
.wedding-enquiry__submit:focus-visible{outline:2px solid #343434;outline-offset:4px}
.wedding-enquiry__privacy{display:block;margin-top:16px;text-align:center;color:#747474;font-size:13px;text-decoration:underline;text-underline-offset:3px}
.preview-closing p.wedding-enquiry__status{margin:20px 0 0;padding:14px 16px;background:#f5f5f4;font-size:15px;line-height:1.5;max-width:none}
.wedding-enquiry__status[hidden]{display:none}
@media(max-width:560px){.wedding-enquiry__fields{grid-template-columns:1fr;gap:18px}.wedding-enquiry{margin-top:28px}}
/* Contact shadows sit at the cutouts, keeping the gallery background clear. */
.wedding-gallery__item .wedding-ring-stage{position:relative;display:grid;place-items:center;width:min(78%,260px);margin:0;line-height:0;isolation:isolate}
.wedding-gallery__item .wedding-ring-stage img{display:block;width:100%;max-height:260px;filter:none}
.wedding-ring-stage::before,.wedding-ring-stage::after{content:"";position:absolute;pointer-events:none;z-index:0;border-radius:50%;transform:rotate(-8deg)}
.wedding-ring-stage::before{left:19%;bottom:3%;width:68%;height:8%;background:radial-gradient(ellipse,rgba(44,43,42,.20),rgba(44,43,42,.08) 45%,transparent 72%);filter:blur(3px)}
.wedding-ring-stage::after{left:33%;bottom:4%;width:37%;height:3%;background:rgba(44,43,42,.18);filter:blur(2px)}
.wedding-gallery__item:first-child .wedding-ring-stage::before{bottom:9%}
.wedding-gallery__item:first-child .wedding-ring-stage::after{bottom:10%}
@media(max-width:920px){.wedding-gallery__item .wedding-ring-stage{width:min(76%,250px)}}

/* Soft contact shadow for the restored Lumen image. */
.wedding-gallery__item:nth-child(2) .wedding-ring-stage img{position:relative;z-index:1;mix-blend-mode:multiply}
.wedding-gallery__item:nth-child(2) .wedding-ring-stage::before{left:23%;bottom:2%;width:52%;height:7%;background:radial-gradient(ellipse,rgba(44,43,42,.18),rgba(44,43,42,.06) 45%,transparent 72%);filter:blur(3px);transform:rotate(-8deg)}
.wedding-gallery__item:nth-child(2) .wedding-ring-stage::after{left:32%;bottom:4%;width:28%;height:2%;background:rgba(44,43,42,.12);filter:blur(2px);transform:rotate(-8deg)}
