.event-page{background:#f7f3ea}.event-opening{display:grid;grid-template-columns:1fr 1fr;max-width:1160px;margin:45px auto 0;padding:0 35px;gap:60px;align-items:center}.event-opening-photo{height:530px;overflow:hidden}.event-opening-photo img{display:block;width:100%;height:100%;object-fit:cover}.event-opening-copy>.eyebrow{font-size:9px;letter-spacing:2px;color:#80623b}.event-opening h1{font-size:clamp(64px,7vw,105px);letter-spacing:-2px;line-height:1.05;margin:16px 0}.event-subtitle{font:italic 27px 'Cormorant Garamond',serif;color:#80623b;margin:0 0 25px}.event-date-line{display:flex;align-items:center;gap:20px;border-top:1px solid #d8cbb9;border-bottom:1px solid #d8cbb9;padding:14px 0}.event-day{font:500 72px/1 'Cormorant Garamond',serif;color:#17382f}.event-date-line>div{display:flex;flex-direction:column;gap:6px}.event-date-line>div>span:first-child{font-size:13px;letter-spacing:1px}.event-date-line>div>span:last-child{font-size:11px;color:#626e65}.event-welcome{font-size:14px;line-height:1.85;margin:22px 0}.event-opening-actions{display:flex;gap:25px;flex-wrap:wrap}.event-opening-actions a{font-size:11px;text-underline-offset:6px;color:#17382f;padding:5px 0}
.event-day-plan{max-width:1090px;margin:auto;padding:65px 35px 25px;scroll-margin-top:95px}.event-plan-heading{margin-bottom:20px}.event-plan-heading .eyebrow{font-size:10px;letter-spacing:2px}.event-plan-heading h2{font-size:clamp(44px,5vw,64px);margin:14px 0 10px}.event-plan-heading>p{font-size:14px;margin:0}.day-stop{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:50px;padding:35px 0;align-items:center}.day-stop+.day-stop{border-top:1px solid #d8cbb980}.day-stop-copy{position:relative;padding-left:35px}.stop-number{position:absolute;left:0;top:0;font-size:10px;color:#a88656;letter-spacing:1px}.day-stop-copy .eyebrow{font-size:10px;letter-spacing:2px;margin:0 0 8px}.day-stop-copy .stop-time{font:500 42px/1.2 'Cormorant Garamond',serif;color:#17382f;margin:0 0 20px}.stop-time small{font:10px 'DM Sans',sans-serif;letter-spacing:1px;color:#626e65}.day-stop-copy h3{font-size:32px;line-height:1.15;margin:0 0 10px}.day-stop-copy>p:last-child{font-size:13px;margin:0}.event-page .event-map-block{margin:0}.event-page .event-map-block .event-location-map{height:240px}
.event-closing{text-align:center;padding:35px 24px 65px}.event-closing>p{font:500 clamp(30px,4vw,45px)/1.2 'Cormorant Garamond',serif;color:#17382f;margin:0 0 16px}.event-closing>span{font-size:11px;color:#80623b;letter-spacing:1px}.event-closing>div{display:flex;flex-wrap:wrap;justify-content:center;gap:25px;margin-top:25px}.event-closing a{font-size:11px;text-underline-offset:5px}.event-page footer{background:#f7f3ea;color:#17382f;border-top:1px solid #ded5c5}.event-page footer small{color:#626e65}
@media(max-width:850px){.event-opening{gap:30px}.event-opening-photo{height:480px}.day-stop{gap:25px}}
@media(max-width:700px){.event-opening{display:flex;flex-direction:column;margin-top:0;padding:0;gap:0}.event-opening-photo{width:100%;height:260px}.event-opening-copy{width:100%;padding:25px 24px 0}.event-opening h1{font-size:clamp(62px,15vw,88px);margin:10px 0}.event-subtitle{font-size:25px;margin-bottom:18px}.event-date-line{padding:12px 0}.event-day{font-size:62px}.event-welcome{margin:16px 0;font-size:13px}.event-opening-actions{gap:22px}.event-day-plan{padding:40px 24px 15px;scroll-margin-top:85px}.event-plan-heading h2{font-size:44px}.day-stop{display:block;padding:26px 0}.day-stop-copy{padding-left:28px;margin-bottom:20px}.day-stop-copy .stop-time{font-size:36px;margin-bottom:12px}.day-stop-copy h3{font-size:30px}.event-page .event-map-block .event-location-map{height:220px}.event-closing{padding:20px 24px 45px}.event-closing>div{gap:20px}}

/* Editorial illustrations replace personal photographs without changing the invitation layout. */
.event-opening-photo.event-illustration{height:auto;aspect-ratio:1 / 1;background:transparent}
.event-illustration img{object-fit:contain}
.event-dress-code{max-width:1020px;margin:0 auto 30px;padding:32px 0 38px;border-top:1px solid #d8cbb980;text-align:center}
.event-dress-code h2{font-size:clamp(38px,4.5vw,55px);margin:15px 0}
.event-dress-code>p{max-width:570px;margin:12px auto 25px;font-size:14px;line-height:1.8}
.dress-palette{display:flex;flex-wrap:wrap;justify-content:center;gap:22px}
.dress-palette>span{display:flex;align-items:center;gap:8px;font-size:10px;letter-spacing:.3px;color:#626e65}
.dress-palette>span::before{content:"";display:inline-block;width:18px;height:18px;border-radius:50%;background:var(--swatch);border:1px solid #17382f12}
@media(max-width:700px){.event-opening-photo.event-illustration{width:100%;height:260px;aspect-ratio:auto}.event-illustration img{width:100%;height:100%}.event-dress-code{margin:0 24px 25px;padding:28px 0}.event-dress-code h2{font-size:38px}.event-dress-code>p{font-size:13px}.dress-palette{gap:16px}.dress-palette>span{font-size:9px}}

/* A text-only invitation opening, with no image column left empty. */
.event-opening{display:block;max-width:850px;margin:40px auto 0;padding:0 35px}
.event-opening-copy{max-width:720px;margin:auto}
@media(max-width:700px){.event-opening{display:block;margin-top:0;padding:0}.event-opening-copy{padding:30px 24px 0}}

/* Use one content width and gutter for the invitation and day-plan headings. */
.event-page .event-opening,.event-page .event-day-plan{width:100%;max-width:1090px;margin-left:auto;margin-right:auto;padding-left:35px;padding-right:35px;text-align:left}
.event-page .event-opening-copy{width:100%;max-width:none;margin:0;padding:0}
.event-page .event-opening{padding-top:0}
@media(max-width:700px){.event-page .event-opening,.event-page .event-day-plan{padding-left:24px;padding-right:24px}.event-page .event-opening{padding-top:30px}.event-page .event-opening-copy{padding:0}}
