/* Approved client corrections: September 30, 2026. */
img[src*="attraction-family-kingdom"]{rotate:180deg}
.mobile-book strong a{white-space:nowrap}
.mobile-book>span{max-width:125px}
.destination-setting{font-size:.875rem;color:var(--muted);padding:10px 24px 0}
.credits-intro{max-width:780px;margin-bottom:35px}
.credits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}
.credit-card{padding:24px;border:1px solid var(--line);background:#fff;min-width:0}
.credit-card img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;margin-bottom:22px}
.credit-card h2{font-size:1.7rem}.credit-card p{overflow-wrap:anywhere}
.credit-links{display:flex;flex-wrap:wrap;gap:18px}.credit-links a{text-decoration:underline;text-underline-offset:4px}
.date-input-wrap{position:relative;min-width:0}
.booking-field .custom-date-input{padding-right:46px;cursor:pointer;min-height:54px}
.custom-date-input::-webkit-calendar-picker-indicator{display:none}
.custom-date-input::-webkit-date-and-time-value{text-align:left}
.date-picker-trigger{position:absolute;right:3px;top:3px;width:44px;height:48px;display:flex;align-items:center;justify-content:center;background:#fff;border:0;border-radius:2px;color:#093c57;cursor:pointer}
.date-picker-trigger:hover{background:#eaf7fa}
.stay-calendar{width:min(360px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);padding:20px;border:1px solid #637f8c;border-radius:12px;color:#143b4c;background:#fff;box-shadow:0 20px 65px #062d4340;overflow:auto}
.stay-calendar::backdrop{background:#062d4366}
.calendar-top{display:flex;justify-content:space-between;align-items:center;gap:12px}
.calendar-top h2{font-size:1.55rem;margin:0;line-height:1.2}
.calendar-close{flex:0 0 42px;width:42px;height:42px;border:0;border-radius:50%;background:#eaf7fa;color:#093c57;font-size:1.8rem;cursor:pointer}
.stay-calendar #calendar-help{font-size:.875rem;line-height:1.45;color:#4f6975;margin:14px 0 18px}
.calendar-nav{display:grid;grid-template-columns:40px 1fr 40px;align-items:center;gap:8px;margin-bottom:12px}
.calendar-nav h3{font-family:"Trebuchet MS",Arial,sans-serif;font-size:1rem;text-align:center;margin:0}
.calendar-nav button{height:40px;font-size:1.75rem;background:#fff;border:1px solid #637f8c;border-radius:5px;color:#093c57;cursor:pointer}
.calendar-nav button:disabled{background:#f0f2f3;color:#75858d;border-color:#d7e0e4;cursor:default}
.calendar-grid{width:100%;border-collapse:separate;border-spacing:3px;table-layout:fixed}
.calendar-grid th{font-family:"Trebuchet MS",Arial,sans-serif;font-size:.8rem;font-weight:600;text-align:center;padding:5px 0;color:#4f6975}
.calendar-grid td{padding:0;text-align:center;height:40px}
.calendar-grid button{width:100%;min-height:39px;border:1px solid transparent;border-radius:5px;background:#fff;color:#143b4c;font-size:.94rem;font-family:"Trebuchet MS",Arial,sans-serif;cursor:pointer;padding:4px 0}
.calendar-grid button:hover:not(:disabled){background:#eaf7fa;border-color:#106687}
.calendar-grid button:disabled{background:#f1f3f4;color:#84929a;text-decoration:line-through;cursor:not-allowed}
.calendar-grid button[aria-current="date"]{border-color:#106687;font-weight:bold}
.calendar-grid button.selected{background:#093c57;color:#fff}
.calendar-grid button:focus-visible,.stay-calendar button:focus-visible,.date-picker-trigger:focus-visible{outline:3px solid #106687;outline-offset:2px}
.calendar-foot{display:flex;justify-content:space-between;align-items:center;gap:14px;border-top:1px solid #d7e0e4;margin-top:15px;padding-top:13px;font-size:.85rem}
.calendar-cancel{border:0;background:transparent;color:#093c57;min-height:36px;padding:4px;cursor:pointer}
@media(max-width:768px){.credits-grid{grid-template-columns:1fr}.credit-card{display:block}.credit-card img{max-width:360px}.stay-calendar{padding:16px}}
@media(max-width:360px){.stay-calendar{padding:12px}.calendar-grid{border-spacing:2px}.calendar-grid td{height:36px}.calendar-grid button{min-height:35px}.calendar-top h2{font-size:1.4rem}.booking-field .custom-date-input{font-size:.875rem;padding-left:7px}}

/* Retain the photographer signature and full newer Broadway image. */
img[src*="attraction-broadway-2024"]{object-fit:contain;background:#093c57}
#broadway img{object-fit:cover;object-position:center bottom}

/* Phone inquiries: identical guest content in review and upload versions. */
.offer-review-note{border-left:4px solid var(--blue);background:#fff;padding:18px 24px;margin:0 0 28px;color:var(--ink)}
.offer-review-note p{margin:0}.offer-review-note p+p{margin-top:5px;color:var(--muted)}
.phone-offer-card{padding:28px;gap:0;align-items:stretch}
.phone-offer-card .demo-badge{margin-bottom:18px;font-size:.875rem}
.phone-offer-card .offer-benefit{font-size:clamp(2.3rem,3vw,3rem);font-weight:bold;line-height:1.1;letter-spacing:-.04em;color:var(--navy);margin-bottom:20px}
.phone-offer-card h3{font-size:1.7rem;line-height:1.2;margin-bottom:12px}
.phone-offer-card .offer-stay{font-size:.875rem;font-weight:bold;color:var(--blue);padding-bottom:16px;border-bottom:1px solid var(--line);margin-bottom:18px}
.phone-offer-card .offer-details{border-block:1px solid var(--line);margin:4px 0 24px}
.offer-details .sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.offer-details summary{font-size:1rem;font-weight:bold;line-height:1.5;cursor:pointer;padding:14px 0;color:var(--navy)}
.offer-details summary:focus-visible{outline:3px solid var(--blue);outline-offset:4px}
.offer-details p{font-size:.925rem;line-height:1.65;margin-bottom:14px}
.phone-offer-card .offer-call{margin-top:auto;text-align:center;padding:16px 12px;white-space:normal;line-height:1.4;font-size:1rem}
.offer-phone-note{margin-top:28px;padding:24px;background:white;border-left:4px solid var(--yellow)}
.offer-phone-note p{margin:0}.offer-phone-note p+p{margin-top:10px}
.offer-phone-note a{font-weight:bold;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:720px){.phone-offer-card{padding:24px}.offer-review-note,.offer-phone-note{padding:18px}.phone-offer-card h3{font-size:1.6rem}}

.offer-intro{max-width:780px;margin:0 0 30px;color:var(--muted)}
.local-outings{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:32px}
.local-outing{background:#fff;border-top:3px solid var(--yellow);padding:30px;min-width:0}
.local-outing h3{font-size:1.7rem;line-height:1.2;margin:14px 0}
.local-outing p{color:var(--muted)}
.local-outing .text-link{white-space:normal}
@media(max-width:720px){.local-outings{grid-template-columns:1fr;gap:20px}.local-outing{padding:24px}}
