.event-page{background:#EDE7DC;color:#4A481A}.event-page .event-overview{padding:clamp(118px,12vw,170px) 18px 90px}.event-container{position:relative;max-width:850px;margin:auto;text-align:center}.event-hero{height:clamp(155px,19vw,235px);background:linear-gradient(90deg,#141e15a8,#19281c25),none center 52%/cover;border-radius:12px;display:flex;align-items:center;justify-content:center;overflow:hidden}.event-hero span{font:400 clamp(35px,5vw,64px)/1.1 "La Siesta",cursive;color:#A8B174;text-shadow:0 1px 4px #161e1880}.event-day{max-width:720px;margin:29px auto 0}.event-day h1,.event-date{font:400 clamp(29px,3.7vw,45px)/1.2 "La Siesta",cursive;color:#3A1B21;margin:0 0 15px}.event-day sup{font-size:.42em;vertical-align:super}.event-day h2:not(.event-date){font:600 clamp(19px,2.4vw,29px)/1.3 "La Siesta",cursive;color:#4A481A;margin:0 0 18px}.event-day p{font:400 clamp(14px,1.45vw,17px)/1.5 "General Sans",Arial,sans-serif;margin:0 auto 21px;max-width:670px}.event-day strong{font-weight:700}.event-wedding{margin-top:44px}.event-flower{position:absolute;pointer-events:none;object-fit:contain}.event-flower-left{width:clamp(75px,12vw,145px);left:-120px;top:420px}.event-flower-right{width:clamp(75px,11vw,140px);right:-118px;bottom:-48px}.event-photo-strip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));width:100%;height:clamp(165px,23vw,290px);overflow:hidden}.event-photo-strip img{width:100%;height:100%;object-fit:cover;filter:grayscale(1)}.event-gallery{padding:clamp(95px,12vw,165px) 18px 75px}.event-gallery-inner{max-width:820px;margin:auto}.event-gallery-card{display:block;position:relative;overflow:hidden;border-radius:10px;background:#ddd;color:#EDE7DC;text-decoration:none;isolation:isolate}.event-gallery-card img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.event-gallery-card:hover img{transform:scale(1.035)}.event-gallery-card:after{content:"";position:absolute;inset:0;background:#18221a35;z-index:0}.event-gallery-card span{position:absolute;z-index:1;top:50%;left:50%;transform:translate(-50%,-50%);white-space:nowrap;font:400 clamp(36px,5vw,66px)/1 "La Siesta",cursive;color:#EDE7DC;text-shadow:0 2px 8px #0004}.event-gallery-wide{height:clamp(160px,20vw,250px);margin-bottom:13px}.event-gallery-row{display:grid;grid-template-columns:1fr 1fr;gap:13px}.event-gallery-row .event-gallery-card{height:clamp(300px,48vw,590px)}.event-green-band{height:105px;background:#A8B174;display:flex;align-items:center;padding:0 clamp(24px,5vw,80px)}.event-green-band img{width:110px;max-height:90px;object-fit:contain}.event-countdown{margin:0!important;padding:0!important;min-height:clamp(270px,35vw,450px);display:flex;align-items:center;justify-content:center;background:none center/cover}.event-countdown .countdown-panel{width:min(90%,740px);margin:auto}.event-page .site-footer{background:#4A481A}.event-page .footer-links a{color:#A8B174}.event-page .footer-cream-strip{background:#EDE7DC}@media(max-width:1100px){.event-flower-left{left:-25px;top:430px;opacity:.6}.event-flower-right{right:-15px;opacity:.6}}@media(max-width:760px){.event-page .event-overview{padding:120px 20px 65px}.event-hero{height:160px}.event-hero span{font-size:37px}.event-day{margin-top:24px}.event-day h1,.event-date{font-size:31px}.event-day p{font-size:14px;line-height:1.55}.event-wedding{margin-top:35px}.event-flower-left{left:-16px;top:470px;width:70px;opacity:.35}.event-flower-right{right:-15px;bottom:-25px;width:70px;opacity:.4}.event-photo-strip{height:150px}.event-gallery{padding:70px 16px 55px}.event-gallery-card span{font-size:clamp(26px,7vw,40px)}.event-gallery-wide{height:155px}.event-gallery-row .event-gallery-card{height:310px}.event-green-band{height:85px}.event-green-band img{width:85px}.event-countdown{min-height:260px}}@media(max-width:430px){.event-gallery-row .event-gallery-card{height:245px}.event-photo-strip{height:105px}.event-gallery-card span{font-size:27px}}
/* Match shared site navigation/footer exactly; only event-specific content differs. */
.event-page .site-footer{background:#A8B174}
.event-page .footer-links a{color:#4A481A}
.event-page .event-hero{
 background-image:linear-gradient(90deg,rgba(20,30,21,.2),rgba(20,30,21,.12)),none;
 background-position:center;background-size:cover;
}
.event-photo-slider{width:100%;height:clamp(160px,22vw,285px);overflow:hidden;background:#EDE7DC}
.event-slider-track{height:100%;display:flex;gap:0;will-change:transform;transform:translate3d(0,0,0)}
.event-slider-track img{height:100%;width:33.333333vw;flex:0 0 33.333333vw;object-fit:cover;filter:grayscale(1);display:block}
@media(max-width:760px){
.event-photo-slider{height:clamp(145px,34vw,225px)}
.event-slider-track img{width:60vw;flex-basis:60vw}
}
@media(prefers-reduced-motion:reduce){.event-slider-track{will-change:auto}}

/* Interior-page navigation matches RSVP and Dress Code, including olive monogram. */
.event-page .site-header{background:var(--cream);color:#4A481A}
.event-page .site-header .logo{background:#4A481A}
.event-page .site-header .logo img{opacity:0!important}

/* Preserve every photo's original aspect ratio; all photos share a height, not a width. */
.event-page .event-slider-track img{
 height:100%;
 width:auto;
 max-width:none;
 flex:0 0 auto;
 object-fit:contain;
}
@media(max-width:760px){
 .event-page .event-slider-track img{width:auto;flex-basis:auto}
}

/* Tighter event intro: halve the whitespace above the hero. */
.event-page .event-overview{
 padding-top:clamp(59px,6vw,85px);
 padding-bottom:0;
}
/* Let the lavender flower overlap the bottom of the event section and
   touch the slider's top edge, without covering or cropping the photos. */
.event-page .event-container{position:relative}
.event-page .event-flower-right{
 width:clamp(90px,13.2vw,168px);
 bottom:0;
 transform:translateY(0);
 z-index:2;
}
.event-page .event-photo-slider{position:relative;z-index:1}
@media(max-width:760px){
 .event-page .event-overview{padding-top:60px;padding-bottom:0}
 .event-page .event-flower-right{
  width:84px;
  right:-15px;
  bottom:0;
  opacity:.8;
 }
}

/* Show the filled, centered carousel only after its image dimensions are known. */
.event-page .event-photo-slider .event-slider-track{visibility:hidden}
.event-page .event-photo-slider.is-ready .event-slider-track{visibility:visible}

/* Match the space before the Saturday date below the final wedding paragraph. */
.event-page .event-wedding{padding-bottom:44px}
.event-page .event-wedding p:last-child{margin-bottom:0}
/* Anchor the flower's bottom exactly to the top of the photo carousel. */
.event-page .event-flower-right{bottom:0;transform:none}
@media(max-width:760px){
 .event-page .event-wedding{padding-bottom:35px}
 .event-page .event-flower-right{bottom:0}
}

/* Equal, generous section-break spacing throughout the event agenda. */
.event-page .event-day{margin-top:70px}
.event-page .event-agenda-divider{
 width:95px;
 height:2px;
 background:#A8B174;
 margin:70px auto;
}
.event-page .event-wedding{margin-top:0;padding-bottom:70px}
.event-page .event-wedding p:last-child{margin-bottom:0}
@media(max-width:760px){
 .event-page .event-day{margin-top:48px}
 .event-page .event-agenda-divider{margin:48px auto}
 .event-page .event-wedding{margin-top:0;padding-bottom:48px}
}

/* Carousel is now the page hero, directly below the interior-page navigation. */
.event-page main{padding-top:80px}
.event-page .event-overview{padding-top:0;padding-bottom:0}
.event-page .event-photo-slider{margin:0}
.event-page .event-container{padding-bottom:0}
/* Lavender flower rises out of the footer, with its stem resting in the green band. */
.event-page .event-footer-flower-wrap{
 height:0;
 position:relative;
 z-index:3;
 pointer-events:none;
}
.event-page .event-footer-flower-wrap img{
 position:absolute;
 width:clamp(90px,13.2vw,168px);
 height:auto;
 right:clamp(20px,7vw,115px);
 bottom:-36px;
 display:block;
}
@media(max-width:760px){
 .event-page main{padding-top:66px}
 .event-page .event-overview{padding-top:0}
 .event-page .event-footer-flower-wrap img{
  width:100px;
  right:15px;
  bottom:-25px;
 }
}

/* Flower placement refinements. */
.event-page .event-flower-left{
 width:clamp(93.75px,15vw,181.25px);
 top:410px;
}
.event-page .event-footer-flower-wrap img{
 bottom:0;
}
@media(max-width:1100px){
 .event-page .event-flower-left{top:420px}
}
@media(max-width:760px){
 .event-page .event-flower-left{
  width:87.5px;
  top:460px;
 }
 .event-page .event-footer-flower-wrap img{bottom:0}
}

/* Poppy sized and positioned to match the marked circle beside Friday's agenda. */
.event-page .event-flower-poppy{
 width:170px;
 height:auto;
 right:-165px;
 top:80px;
 transform:rotate(12deg);
 transform-origin:center;
 z-index:1;
}
@media(max-width:1100px){
 .event-page .event-flower-poppy{right:-30px;width:clamp(105px,15vw,170px)}
}
@media(max-width:760px){
 .event-page .event-flower-poppy{
  width:80px;
  right:-22px;
  top:95px;
  opacity:.65;
 }
}

/* Keep the full-width carousel track from shrinking; retain original photo ratios. */
.event-page .event-photo-slider{width:100%;max-width:none;position:relative}
.event-page .event-slider-track{width:max-content;min-width:100%;display:flex;flex-wrap:nowrap}
.event-page .event-slider-track img{display:block;height:100%;width:auto;min-width:0;max-width:none;flex:0 0 auto;object-fit:contain}

/* Match Event carousel height to the Stay page at all viewport sizes. */
.event-page .event-photo-slider{height:clamp(128px,17.6vw,228px)}
@media(max-width:760px){.event-page .event-photo-slider{height:clamp(116px,27.2vw,180px)}}
