.date-picker{margin-bottom:28px;padding-bottom:25px;border-bottom:1px solid #dbe2d2}.date-picker .eyebrow{color:#7d8c6d;font-size:9px}.date-picker h3{font:27px Georgia,serif;letter-spacing:-.5px;margin:9px 0}.calendar-help{font-size:12px;color:#718067;margin-bottom:17px;line-height:1.7}.monet-calendar{background:#f8faf3;border:1px solid #dce3d1;border-radius:9px;padding:17px;max-width:430px}.calendar-top{display:flex;gap:12px;align-items:center;margin-bottom:12px}.calendar-top>button{display:grid;place-items:center;width:40px;height:40px;border:1px solid #d3ddc8;border-radius:50%;background:#fffef8;font:25px Georgia,serif;flex-shrink:0}.calendar-top>button:disabled{opacity:.35}.calendar-month{border:0;height:42px;background:transparent;text-align:center;font-size:15px;font-weight:600;padding:0 8px;appearance:auto;min-width:0}.calendar-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:5px}.weekday{text-align:center;font-size:10px;color:#7d896f;padding:9px 0}.calendar-day{border:1px solid transparent;border-radius:6px;min-height:39px;padding:4px;font:13px var(--sans,Arial,sans-serif)}.calendar-day.open{background:#e1ead7;color:#3e5737;border-color:#c1d1b0}.calendar-day.open:hover{background:#cbdcbc}.calendar-day.full{background:#eee1d7;color:#916d59;text-decoration:line-through}.calendar-day.closed,.calendar-day.past{background:#f0f0e9;color:#a0a292}.calendar-day:disabled{cursor:default}.calendar-day.selected{background:#304b3d;color:#fffef7;border-color:#304b3d;box-shadow:0 0 0 2px #f8faf3,0 0 0 3px #82956e}.calendar-day[aria-current=date]{font-weight:700}.calendar-legend{display:flex;flex-wrap:wrap;gap:15px;margin-top:17px;font-size:10px;color:#718067}.calendar-legend span{display:flex;align-items:center;gap:5px}.calendar-legend i{width:9px;height:9px;border-radius:50%;display:inline-block}.calendar-legend .open{background:#a9c193}.calendar-legend .full{background:#c8a58e}.calendar-legend .closed{background:#d3d5c9}.calendar-status{font-size:12px;line-height:1.65;color:#68785e;margin-top:13px}.selected-date{font-size:13px;font-weight:600;color:#304b3d;margin-top:10px}.date-picker .text-button{font-size:12px;margin-top:12px}.plan-next{border:1px solid #536b53;box-shadow:0 3px 12px #304b3d12;min-height:52px;gap:18px;padding:15px 19px}.plan-next .plan-next-label{font:500 12px var(--sans);line-height:1.55;text-align:left}.plan-next svg,.submit-icon{width:20px;height:20px;flex-shrink:0;color:#e0e9d3;stroke-width:1.25}.plan-next:hover{box-shadow:0 5px 15px #304b3d20}.hero-art{background:none}.hero-photo{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center 57%}.hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#f4f3eaf7 0%,#f4f3eae8 20%,#f4f3ea82 43%,#f4f3ea00 65%)}.occasion-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.venue-gallery,.venue-location{padding-top:55px;padding-bottom:55px}.venue-gallery .eyebrow,.venue-location .eyebrow{color:#7b896b;margin-bottom:15px}.gallery-rail{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:20px;padding:24px 0 10px}.gallery-rail figure{margin:0;flex:0 0 70%;scroll-snap-align:start;max-width:740px}.gallery-rail img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:7px}.gallery-rail figcaption,.gallery-hint{font-size:12px;line-height:1.7;color:#6b795f;margin-top:10px}.venue-location{display:grid;grid-template-columns:1fr 1.1fr;gap:40px;border-top:1px solid var(--line)}.location-address{font-size:14px;max-width:450px;margin-top:20px}.venue-location iframe{width:100%;height:330px;border:0;border-radius:8px}.occasion-footnote{max-width:860px;margin-left:auto;line-height:1.8;font-size:11px}
@media(max-width:1050px) and (min-width:761px){.occasion-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.occasion{padding:20px 12px}.occasion-title{font-size:16px}.occasion-copy{font-size:10px}}
@media(max-width:760px){.occasion-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-art:after{background:linear-gradient(180deg,#f4f3eaec 0%,#f4f3eacf 27%,#f4f3ea30 57%,#f4f3ea00 75%)}.calendar-help,.calendar-status{font-size:12px}.monet-calendar{padding:12px}.calendar-days{gap:4px}.calendar-day{min-height:37px;font-size:12px}.calendar-month{font-size:14px}.calendar-top{gap:6px}.plan-next{width:100%;padding:14px 15px}.plan-next .plan-next-label{font-size:12px}.gallery-rail figure{flex-basis:88%}.venue-location{grid-template-columns:1fr;gap:24px}.venue-location iframe{height:280px}.venue-gallery,.venue-location{padding-top:35px;padding-bottom:35px}.occasion-footnote{font-size:11px}}
@media(max-width:360px){.monet-calendar{padding:8px}.calendar-days{gap:2px}.calendar-day{min-height:32px}.calendar-top>button{width:33px;height:33px}.calendar-month{font-size:13px}.calendar-legend{gap:10px}}

@media(max-width:1100px){.hero-photo{object-position:55% center}}
@media(max-width:760px){.hero-photo{object-position:62% 100%}}

/* Each existing event owns its outline; unoccupied grid cells stay unframed. */
.occasion-grid{border:0;border-radius:0;overflow:visible}
.occasion-grid>.occasion:nth-child(n){border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-radius:0}
.occasion-grid>.occasion:nth-child(-n+5){border-top:1px solid var(--line)}
.occasion-grid>.occasion:nth-child(5n+1){border-left:1px solid var(--line)}
.occasion-grid>.occasion:first-child{border-top-left-radius:7px}
.occasion-grid>.occasion:nth-child(5){border-top-right-radius:7px}
.occasion-grid>.occasion:nth-child(5n+1):nth-last-child(-n+5){border-bottom-left-radius:7px}
.occasion-grid>.occasion:last-child{border-bottom-right-radius:7px}
@media(max-width:760px){
.occasion-grid>.occasion:nth-child(n){border-top:0;border-left:0;border-radius:0}
.occasion-grid>.occasion:nth-child(-n+2){border-top:1px solid var(--line)}
.occasion-grid>.occasion:nth-child(2n+1){border-left:1px solid var(--line)}
.occasion-grid>.occasion:first-child{border-top-left-radius:7px}
.occasion-grid>.occasion:nth-child(2){border-top-right-radius:7px}
.occasion-grid>.occasion:nth-child(2n+1):nth-last-child(-n+2){border-bottom-left-radius:7px}
.occasion-grid>.occasion:last-child{border-bottom-right-radius:7px}
}
