#events-family.events-family { box-sizing: border-box; position: relative; z-index: 5; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 6px 24px; padding: 10px clamp(20px,3vw,48px); background: #f6f2e9; color: #173e49; border-bottom: 1px solid #c7cfc9; font: 400 14px/1.5 'Inter',Arial,sans-serif; }
#events-family nav { display: flex; flex-wrap: wrap; gap: 4px 24px; align-items: center; }
#events-family nav[aria-label="Events navigation"] { margin-left: auto; }
#events-family a { display: inline-flex; align-items: center; min-height: 44px; color: #173e49; font: inherit; text-decoration: none; border-bottom: 2px solid transparent; }
#events-family a[aria-current="page"] { border-bottom-color: #987532; font-weight: 600; }
#events-family a:hover { text-decoration: underline; text-underline-offset: 5px; }
#events-family a:focus-visible { outline: 2px solid #477d8b; outline-offset: 4px; }
#events-family ol { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin: 0; padding: 0; list-style: none; }
#events-family li { display: inline-flex; align-items: center; gap: 8px; }
#events-family li + li::before { content: '/'; color: #6a7e83; }
.embed-mode #events-family { display: none; }
#site-header .site-nav a[aria-current="true"] { color: #d4b06a; border-bottom-color: #d4b06a; }
#site-header .site-mobile nav a[aria-current="true"] { background: rgba(255,255,255,.08); color: #d4b06a; }
@media(max-width:700px) { #events-family.events-family { gap: 0; } #events-family nav[aria-label="Events navigation"] { width: 100%; margin-left: 0; gap: 4px 22px; } }
.tailorForm .events-other-link { grid-column: 1 / -1; line-height: 1.7; }
.tailorForm .events-other-link a { text-decoration: underline; text-underline-offset: 3px; }

/* Explicit celebration context on the Wedding personalization form. */
.celebrationConfirmed{background:#f0c9871a;border:1px solid #f0c9878c;border-radius:13px;align-content:center;min-height:92px;padding:.9rem 1rem;display:grid}
.celebrationConfirmed span{color:#ffffffa6;text-transform:uppercase;letter-spacing:.12em;font-size:.65rem;font-weight:800}
.celebrationConfirmed b{color:#f0c987;font:500 1.35rem Georgia,serif}
.celebrationConfirmed small{color:#ffffffad}

.valueLead .valueSupporting{margin-top:1rem;color:#ffffffd9;font-size:clamp(1.05rem,1.5vw,1.25rem);line-height:1.5}

/* Shared introduction to the configurable event estimate. */
.estimatorStandalone .experienceIntroStrip{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin:0 0 44px}
.estimatorStandalone .experienceIntroStrip figure{position:relative;aspect-ratio:1.75;min-height:0;margin:0;overflow:hidden;border-radius:24px;background:#173e49}
.estimatorStandalone .experienceIntroStrip img{width:100%;height:100%;min-height:0;object-fit:cover;display:block}
.estimatorStandalone .experienceIntroStrip figure:after{content:"";position:absolute;inset:42% 0 0;background:linear-gradient(transparent,rgba(7,42,50,.86))}
.estimatorStandalone .experienceIntroStrip figcaption{position:absolute;z-index:1;left:20px;right:16px;bottom:18px;color:#fff;font:500 clamp(1rem,1.5vw,1.5rem)/1.15 Georgia,serif}
.experiencePackageHeader{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);gap:2rem;align-items:end;margin-bottom:2.5rem}
.experiencePackageHeader h2{font-size:clamp(1.9rem,3vw,3.1rem);line-height:1.15}
.experiencePackageDescription{max-width:58rem;color:#657b83;line-height:1.7;margin-top:1rem}
.experienceVenuePrice{text-align:right;color:#103f49}
.experienceVenuePrice span,.experienceVenuePrice small{display:block;color:#657b83;text-transform:uppercase;letter-spacing:.07em;font-size:.8rem;font-weight:800}
.experienceVenuePrice strong{display:block;font:500 clamp(3rem,5vw,5.5rem)/1.15 Georgia,serif;margin:.4rem 0}
@media(max-width:760px){.estimatorStandalone .experienceIntroStrip{grid-template-columns:1fr;gap:12px;margin-bottom:30px}.experiencePackageHeader{grid-template-columns:1fr;gap:1.5rem}.experienceVenuePrice{text-align:left}}

/* Personalized market comparison: service rows and guest-scaled context. */
.marketContext{border:1px solid #dfd0b8;border-radius:20px;overflow:hidden;background:#fff}
.marketContext .marketContextHead{padding:1.8rem 2rem;background:linear-gradient(110deg,#fff,#f5eddf);display:flex;justify-content:space-between;align-items:center;gap:1rem}
.marketContext .marketContextHead h2{font-size:clamp(1.8rem,3vw,3rem);margin:0}
.marketContext #toggleMarket{background:transparent;color:#976b31;border:0;font-weight:700;cursor:pointer}
.marketContext #marketPanel{padding:clamp(1.25rem,3vw,3rem)}
.marketContext #marketPanel[hidden]{display:none}
.marketEditorialIntro{display:grid;grid-template-columns:.85fr 1.15fr;gap:2rem;align-items:end;margin-bottom:2.5rem}
.marketEditorialIntro h3{font:500 clamp(2rem,4.2vw,4.7rem)/1.08 Georgia,serif;color:#263e42;margin:.8rem 0 0}
.marketEditorialIntro>p{color:#657b83;line-height:1.7;font-size:1.05rem}
.marketServiceRow{display:grid;grid-template-columns:1fr 1.8fr;gap:2.5rem;border-top:1px solid #e0e4e5;padding:1.6rem 0}
.marketServiceValue{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:1rem}
.marketServiceValue h4{font:500 1.35rem/1.2 Georgia,serif;margin:0;color:#263e42}
.marketServiceValue strong{font:500 1.4rem/1.3 Georgia,serif;color:#103f49;text-align:right}
.marketServiceValue small{grid-column:1/-1;font-size:.8rem;text-transform:uppercase;color:#657b83}
.marketServiceContext b{line-height:1.7;color:#263e42}
.marketServiceContext p,.marketSummaryCards article>p:not(.eyebrow){color:#657b83;font-size:.95rem;line-height:1.65;margin:.5rem 0 1rem}
.marketContext a{color:#976b31;font-size:.85rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em;text-decoration:none}
.marketContext a:hover{text-decoration:underline}
.marketSummaryCards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.2rem;border-top:1px solid #e0e4e5;padding-top:1.8rem}
.marketSummaryCards article{border:1px solid #e0e4e5;border-radius:22px;padding:1.5rem;min-width:0}
.marketSummaryCards strong{display:block;font:500 clamp(1.55rem,2.2vw,2.3rem)/1.15 Georgia,serif;color:#103f49;margin:1rem 0}
.marketSummaryCards .marketSelectedCard{background:#103f49;border-color:#103f49}
.marketSummaryCards .marketSelectedCard strong{font-size:clamp(2.8rem,5vw,5rem);color:white;overflow-wrap:anywhere}
.marketSummaryCards .marketSelectedCard p{color:#d5e4e8!important}
.marketMethodology{font-size:.8rem;line-height:1.6;color:#657b83;margin:1.5rem 0 0}
@media(max-width:900px){.marketEditorialIntro,.marketServiceRow{grid-template-columns:1fr;gap:1.2rem}.marketSummaryCards{grid-template-columns:1fr}.marketContext .marketContextHead{align-items:flex-start;flex-direction:column}.marketServiceValue strong{max-width:15rem}}
@media(max-width:420px){.marketServiceValue{grid-template-columns:1fr}.marketServiceValue strong{text-align:left}}

.estimateSelectionSummary{color:#fff;line-height:1.6;font-size:.95rem}
.estimateAdjustments{display:grid;grid-template-columns:1fr;gap:.8rem;margin:1rem 0}
.estimateAdjustments label{display:grid;gap:.35rem;color:white;font-size:.9rem;font-weight:700}
.estimateAdjustments input,.estimateAdjustments select{width:100%;min-width:0;background:white;color:#103f49;border:1px solid #bdc9cc;border-radius:8px;padding:.65rem;font:inherit}
.estimateAdjustments :focus-visible{outline:3px solid #d4a14f;outline-offset:3px}
.tourEstimateSummary{background:#fff;color:#103f49;text-align:left;max-width:900px;margin:0 auto 2rem;padding:clamp(1.2rem,3vw,2.5rem);border-radius:20px;scroll-margin-top:120px}
.tourEstimateSummary h3{font:500 2rem/1.2 Georgia,serif;margin:0 0 1rem}
.closing .tourEstimateSummary p{color:#536c74;max-width:none}
.tourEstimateSummary ul{padding-left:1.2rem;margin:1rem 0;list-style:disc}
.tourEstimateSummary button{background:#d2a052;color:#103f49;border:0;border-radius:24px;padding:.8rem 1.3rem;font-weight:700;cursor:pointer}
