@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@500;700&family=Source+Sans+3:wght@400;600;700;800&display=swap');
:root{--burgundy:#6b1c1c;--deep:#4a1010;--forest:#3d5a2a;--forest-deep:#2a3f1c;--gold:#e3b23c;--cream:#f6efe3;--cream-dark:#ece2d0;--ink:#2a1a12;--muted:#6b5748;--paper:#fffdf8;--closed:#9b3a3a;--partial:#8d631c}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:'Source Sans 3','Segoe UI',Arial,sans-serif;font-size:16px;line-height:1.5}a{color:inherit}button{font:inherit;cursor:pointer}img{display:block;max-width:100%}.display{font-family:'Cinzel',Georgia,serif;font-weight:500;font-variant:small-caps}p,h1,h2,h3{margin:0}.muted{color:var(--muted)}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip{position:fixed;top:-80px;left:16px;z-index:200;background:var(--paper);padding:12px;border-radius:8px}.skip:focus{top:8px}a:focus-visible,button:focus-visible,.table-scroll:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.site-header{background:var(--deep);color:var(--paper)}.header-row{max-width:72rem;margin:auto;padding:12px 16px;display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:108px}.logo{width:80px;height:80px;object-fit:contain}.wordmark{width:auto;height:84px;max-width:40vw;object-fit:contain}.header-actions{display:flex;gap:10px;align-items:center}.btn{display:inline-flex;justify-content:center;align-items:center;border-radius:999px;text-decoration:none;font-weight:700;font-size:14px;white-space:nowrap}.gold{background:var(--gold);color:var(--deep);padding:10px 20px;min-height:40px;text-transform:uppercase;letter-spacing:.04em}.pets-bar{margin:0;text-align:center;background:var(--gold);color:var(--deep);font-weight:800;font-size:14px;line-height:20px;letter-spacing:.04em;text-transform:uppercase;padding:7px 12px}.desktop-nav{background:var(--paper);border-bottom:1px solid var(--cream-dark)}.desktop-nav>div{display:flex;gap:8px;justify-content:center;max-width:72rem;margin:auto;padding:10px 12px}.desktop-nav a{background:var(--cream-dark);color:var(--forest-deep);font-size:14px;line-height:20px;font-weight:600;text-decoration:none;white-space:nowrap;padding:8px 14px;border-radius:999px}.desktop-nav a.active,.mobile-nav a.active{background:var(--forest);color:var(--paper)}.menu-toggle{display:none;border:1px solid #b9a99b;border-radius:999px;background:transparent;color:var(--paper);height:38px;width:38px}.mobile-nav{background:var(--paper);padding:8px 16px;border-bottom:1px solid var(--cream-dark)}.mobile-nav a{display:block;padding:10px 14px;text-decoration:none;border-radius:8px;font-weight:600}.mobile-nav[hidden]{display:none}
.wrap{max-width:72rem;margin:0 auto;padding:48px 16px 56px}.page-title{font-size:36px;line-height:1.5}.intro{margin:6px 0 12px;line-height:24px}.notice{padding:10px 16px;background:var(--gold);color:var(--deep);border-radius:12px}.notice-title{font-weight:800;font-size:14px;line-height:24px}.notice-times{font-weight:600;line-height:24px}.notice-exception{font-weight:700;font-size:12px;line-height:18px}.summary{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.panel{border-radius:16px;overflow:hidden;color:var(--paper);display:flex;flex-direction:column}.panel.day{background:var(--forest)}.panel.night{background:var(--burgundy)}.pad{padding:24px;flex:1}.eyebrow{font-size:11.2px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;line-height:17px}.panel h2{font-size:20px;line-height:28px}.hours-time{font-size:32px;line-height:40px;margin-top:4px}.hours-detail{margin-top:8px;line-height:24px}.panel-foot{text-align:center;background:var(--ink);color:var(--gold);padding:8px 12px;font-size:11.2px;line-height:17px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.final-card{background:var(--ink);color:var(--paper);border-radius:16px;margin-top:20px;padding:24px}.final-card .eyebrow{color:var(--gold)}.final-dates{font-size:20px;line-height:28px}.final-card h2{font-size:28px;line-height:36px;margin-top:4px}.final-description{color:var(--gold);font-size:14px;line-height:21px;margin-top:4px}
.schedule-section{margin-top:48px}.kicker{font-size:11.2px;font-weight:800;letter-spacing:.2em;text-transform:uppercase;line-height:17px}.day-text{color:var(--forest)}.night-text{color:var(--burgundy)}.section-title{font-size:28px;line-height:36px}.section-intro{max-width:44rem;margin:8px 0 20px;line-height:24px}.schedule-card{border-radius:16px;overflow:hidden;background:var(--paper);box-shadow:0 3px 8px #2a1a1212}.table-banner{background:var(--forest);color:var(--paper);padding:16px 20px}.table-banner .display{font-size:18px;line-height:25px}.table-banner p+p{font-size:13px;line-height:20px;margin-top:4px}.table-scroll{overflow-x:auto;-webkit-overflow-scrolling:touch}table{width:100%;border-collapse:collapse;table-layout:fixed;min-width:620px;font-size:14px}thead{background:var(--forest);color:var(--paper)}thead th{font-weight:700;font-size:13px;padding:12px 8px;text-align:center;line-height:20px}thead th:first-child{width:25%}tbody th{font-weight:700;text-align:left;font-size:14px}tbody th,tbody td{padding:12px 14px;line-height:22px;border-top:1px solid var(--cream-dark)}tbody td{text-align:center}tbody tr:nth-child(even){background:#faf6ed}.pill{display:inline-block;white-space:nowrap;font-size:12px;font-weight:700;line-height:18px;padding:3px 10px;border-radius:999px}.pill.open{background:var(--cream-dark);color:var(--forest)}.pill.closed{background:var(--cream);color:var(--closed)}.pill.partial{background:#f7e7bd;color:var(--partial)}.night thead{background:var(--burgundy)}.final thead{background:var(--ink);color:var(--gold)}.final .in-table{margin:0;border-radius:0;padding:24px}.highlights{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-top:16px}.highlights.three{grid-template-columns:repeat(3,minmax(0,1fr))}.highlights article{padding:18px 14px;text-align:center;background:var(--paper);border-radius:12px;box-shadow:0 2px 5px #2a1a1209}.highlights h3{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:15px;line-height:22px;font-weight:500}.highlights p{font-size:13px;line-height:20px;margin-top:4px;color:var(--muted)}.footnote{font-size:11px;line-height:17px;margin-top:12px}.forest{background:var(--forest);color:var(--paper);padding:10px 18px}.pricing-link{margin-top:36px}
footer{background:var(--ink);color:var(--cream);padding:32px 16px 20px}.footer-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:32px;max-width:72rem;margin:auto}.footer-name{font-size:18px;color:var(--gold)}footer a{display:block;text-decoration:none;font-size:14px;line-height:22px;padding:3px 0;color:#f6efe3e6}.social{margin-top:10px;font-size:14px}.social a{display:inline}.footer-note{font-size:13px;line-height:20px;color:#f6efe3b3;margin-top:10px;max-width:400px}.footer-label{font-size:11px;color:var(--gold);letter-spacing:.18em;text-transform:uppercase;font-weight:800;margin-bottom:8px}.footer-bar{margin-top:24px;background:var(--deep);color:var(--gold);text-align:center;font-family:'Cinzel',Georgia,serif;font-size:11px;line-height:18px;letter-spacing:.25em;text-transform:uppercase;padding:12px}
.test-tools{position:fixed;right:12px;bottom:12px;z-index:100;font-size:13px}.test-tools>button{background:var(--paper);color:var(--forest);border:1px solid var(--cream-dark);border-radius:30px;padding:7px 12px;box-shadow:0 3px 12px #0002}.test-tools:has(section:not([hidden]))>button{background:var(--forest);color:white}.test-tools section{position:absolute;right:0;bottom:44px;width:min(340px,calc(100vw - 24px));background:var(--paper);padding:20px;border:1px solid var(--cream-dark);border-radius:14px;box-shadow:0 12px 40px #0003}.test-tools section[hidden]{display:none}.test-tools h2{font-size:18px;line-height:24px;margin-bottom:8px}.test-tools p{margin:8px 0}.test-tools section button{border:0;border-radius:8px;background:var(--forest);color:white;padding:9px 12px;margin:6px 0}.test-tools a{display:block;color:var(--forest);font-weight:700;margin-top:8px}.test-note{color:var(--muted);font-size:12px}.test-tools.is-screenshot{display:none}
@media(max-width:900px){.desktop-nav{display:none}.menu-toggle{display:block}.header-row{padding:10px 16px;min-height:82px;gap:10px}.logo{width:58px;height:58px}.wordmark{height:58px;max-width:34vw}.gold{padding:8px 12px;font-size:11px;min-height:36px}.pets-bar{font-size:11px;letter-spacing:.025em;padding:6px 8px}.wrap{padding-top:32px}.page-title{font-size:30px}.highlights{grid-template-columns:repeat(2,minmax(0,1fr))}.footer-grid{gap:20px}.summary{margin-top:24px}.pad{padding:20px}}
@media(max-width:580px){.header-row{padding:10px 12px;gap:8px}.logo{width:48px;height:48px}.wordmark{height:52px;max-width:32vw}.header-actions{gap:6px}.gold{font-size:10px;padding:7px 10px}.menu-toggle{width:32px;height:34px}.wrap{padding:28px 16px 40px}.page-title{font-size:28px;line-height:1.3}.intro{font-size:15px;margin-top:12px}.notice-times{font-size:14px;line-height:22px}.notice-title{line-height:22px}.summary{grid-template-columns:1fr;gap:16px}.pad{padding:24px}.final-card{padding:22px}.final-card h2{font-size:25px}.schedule-section{margin-top:36px}.section-title{font-size:25px;line-height:33px}.section-intro{font-size:15px;line-height:23px}.table-banner{padding:16px}.table-banner .display{font-size:16px;line-height:23px}.highlights,.highlights.three{grid-template-columns:1fr 1fr;gap:10px}.highlights.three article:last-child{grid-column:1/-1}.highlights article{padding:16px 12px}.highlights h3{font-size:14px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bar{font-size:9px;letter-spacing:.15em}table{min-width:660px}.table-scroll{background:var(--paper)}tbody th{position:sticky;left:0;background:var(--paper);box-shadow:2px 0 3px #2a1a1210}tbody tr:nth-child(even) th{background:#faf6ed}thead th:first-child{position:sticky;left:0;background:inherit}.test-tools>button{font-size:11px}.footnote{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}@media print{.test-tools,.menu-toggle{display:none}.site-header{print-color-adjust:exact}.wrap{max-width:none}.schedule-card,.panel,.highlights article{break-inside:avoid}body{print-color-adjust:exact}}
/* Full-site extension. Visual decisions are measured from the supplied Sandbox screenshots.
   The approved Hours layout above is retained, not the old Vercel draft CSS. */
html{overflow-x:hidden}body{overflow-x:clip}.page-wrap{padding-top:56px;padding-bottom:56px}.page-wrap .page-title{color:var(--burgundy);line-height:1.2}.page-lead{font-size:16px;line-height:24px;max-width:52rem;margin-top:16px}.page-sublead{font-size:16px;line-height:24px;max-width:52rem;margin-top:12px}.soft-notice{padding:16px;background:#f1e4bf;border-radius:12px;line-height:24px;font-size:16px;margin-top:24px}.page-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px}.button-small{font-size:11px;padding:8px 16px;min-height:32px}.white-card{background:var(--paper);border-radius:16px;overflow:hidden;box-shadow:0 3px 5px #2a1a1224}.white-card .body{padding:20px}.white-card h2,.white-card h3{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:22px;line-height:30px;font-weight:500}.white-card p{font-size:16px;line-height:24px}.white-card .body>p{margin-top:8px}.white-card .body>.btn{margin-top:16px}.green-badge{display:inline-block;vertical-align:middle;font-family:'Source Sans 3',Arial,sans-serif;font-size:8px;line-height:12px;font-variant:normal;font-weight:800;letter-spacing:.06em;border-radius:10px;padding:1px 6px;background:var(--forest);color:var(--gold);text-transform:uppercase;white-space:nowrap}.green-badge::before{content:'◆';font-size:6px;margin-right:4px}
/* Original media URLs are separate from all layout code. Cropped reference posters support offline review. */
.media-frame{position:relative;overflow:hidden;background:var(--ink)}.media-frame>img,.media-frame>video{display:block;width:100%;height:100%;object-fit:cover}.media-frame>video{position:absolute;inset:0;z-index:1}.media-frame>.media-poster{position:absolute;inset:0}.media-frame>img.media-poster:only-child{position:relative}.media-toggle{position:absolute;right:10px;bottom:10px;z-index:3;border:1px solid #ffffff88;border-radius:30px;background:#000b;color:#fff;font-family:inherit;font-size:12px;padding:7px 11px;opacity:0;transition:opacity .15s}.media-frame:hover>.media-toggle,.media-frame:focus-within>.media-toggle,.media-frame.is-paused>.media-toggle{opacity:1}.media-frame.video-unavailable>.media-toggle{display:none}.feature-media{height:384px;margin-top:32px;border-radius:16px}.activities-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:32px}.activity-card{display:flex;flex-direction:column}.activity-card .media-frame{height:192px;flex:0 0 auto}.activity-card .body{flex:1}.activity-card h2{font-size:21px;line-height:28px}.day-page .soft-notice{margin-top:32px}
/* Employment */
.job-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:40px}.job-card{padding:24px}.job-card .job-number{color:var(--gold);font-family:'Cinzel',Georgia,serif;font-weight:500;font-size:40px;line-height:44px}.job-card h2{font-size:26px;line-height:34px;margin-top:8px}.job-card .job-description{margin-top:8px;color:var(--muted)}.job-card .job-fair{font-size:14px;line-height:20px;font-weight:700;margin-top:10px;min-height:20px}.job-card .btn{margin-top:20px}.employment-page .soft-notice{margin-top:32px}.missing-link-modal{border:0;border-radius:16px;padding:28px;max-width:min(480px,calc(100vw - 32px));background:var(--paper);color:var(--ink);box-shadow:0 20px 80px #0005}.missing-link-modal::backdrop{background:#0008}.missing-link-modal h2{font-size:23px;line-height:30px}.missing-link-modal p{margin:14px 0}.missing-link-modal button{border:0}
/* Escape rooms and fire pits */
.escape-band{display:flex;align-items:center;justify-content:space-between;gap:32px;padding:24px;background:var(--burgundy);color:var(--paper);border-radius:16px}.escape-band h1{font-size:36px;line-height:44px}.escape-band p{line-height:24px;margin-top:12px;max-width:50rem}.escape-logo-disc{width:96px;height:96px;flex:0 0 auto;border-radius:50%;background:var(--paper);display:flex;align-items:center;justify-content:center;padding:12px}.escape-logo-disc img{width:100%;height:100%;object-fit:contain}.stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:32px}.stat-card{padding:20px;box-shadow:0 2px 3px #2a1a121a}.stat-card h2{color:var(--burgundy);font-size:26px;line-height:32px}.stat-card p{margin-top:6px;color:var(--muted);font-size:14px;line-height:22px}.rentals-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:32px}.rental-card{padding:24px;box-shadow:0 2px 3px #2a1a1220}.rental-card h2{font-size:26px;line-height:34px}.rental-card .rental-price{font-family:'Cinzel',Georgia,serif;font-weight:500;font-variant:small-caps;color:var(--burgundy);font-size:36px;line-height:44px;margin-top:6px}.rental-card .rental-detail{color:var(--muted);margin-top:4px}
/* Homepage */
.home-hero{height:clamp(590px,54.7vw,840px);position:relative;background:var(--ink);color:var(--paper);isolation:isolate}.hero-background{position:absolute;inset:0;z-index:-2;background-position:center;background-size:cover}.hero-shade{position:absolute;inset:0;z-index:-1;background:linear-gradient(90deg,#2a1a12ce 0%,#2a1a1260 52%,#2a1a1215 100%)}.hero-inner{max-width:72rem;height:100%;margin:auto;padding:48px 16px;display:flex;justify-content:center;flex-direction:column;align-items:flex-start}.hero-eyebrow{font-size:11px;line-height:17px;letter-spacing:.12em;text-transform:uppercase;font-weight:800;padding:4px 10px;background:var(--gold);color:var(--deep);border-radius:4px}.home-hero h1{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-weight:500;font-size:76px;line-height:.95;max-width:12ch;margin-top:16px;white-space:pre-line}.hero-subhead{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:24px;line-height:32px;color:var(--gold);margin-top:16px}.hero-description{max-width:36rem;font-size:16px;line-height:26px;margin-top:16px}.hero-buttons{display:flex;flex-wrap:wrap;gap:8px;margin-top:32px}.burgundy-btn{background:var(--burgundy);color:var(--paper);padding:10px 20px;min-height:40px;text-transform:uppercase;font-size:13px}.ghost-btn{border:1px solid #ffffff66;color:var(--paper);padding:10px 20px;min-height:40px;text-transform:uppercase;font-size:13px}.home-film{background:var(--ink);padding:24px 16px}.home-film .media-frame{height:450px;max-width:1120px;margin:auto;border-radius:16px;background:#000}.home-film video,.home-film img{object-fit:contain}.grandparents{background:var(--forest);color:var(--paper);position:relative;overflow:hidden}.grandparents-inner{max-width:72rem;margin:auto;padding:48px 16px;min-height:416px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:center;position:relative}.grandparents .eyebrow{color:var(--gold)}.grandparents h2{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:44px;font-weight:500;line-height:.95;color:var(--gold);white-space:pre-line;margin-top:12px}.grandparents-dates{font-size:16px;line-height:24px;margin-top:20px}.grandparents-offer,.grandparents-maze{font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:24px;line-height:30px;margin-top:16px}.grandparents-maze{margin-top:0;color:var(--gold)}.grandparents .btn{margin-top:24px}.grandparents-watermark{position:absolute;top:50%;right:-100px;transform:translateY(-50%);font-family:'Cinzel',Georgia,serif;font-variant:small-caps;font-size:144px;line-height:.85;text-align:right;white-space:pre-line;color:#fffdf80b;pointer-events:none}.grandparents-art{height:312px;position:relative}.grandparents-circle{position:absolute;border-radius:50%;overflow:hidden;box-shadow:0 14px 28px #1b28094d}.grandparents-circle img{width:100%;height:100%;object-fit:cover}.grandparents-circle:first-child{width:208px;height:208px;right:112px;top:0;border:10px solid #4e6d38}.grandparents-circle:last-child{width:256px;height:256px;right:0;bottom:0;border:12px solid #5a7a42}.home-night-strip{background:var(--deep);color:var(--paper)}.home-night-inner{max-width:72rem;padding:48px 16px;margin:auto;display:grid;grid-template-columns:.86fr 1.14fr;gap:48px;align-items:center}.home-night-lockup{width:100%;height:208px;object-fit:contain}.home-night-inner .eyebrow{color:var(--gold)}.home-night-inner h2{font-size:36px;line-height:44px;margin-top:8px}.home-night-inner p:not(.eyebrow){font-size:16px;line-height:24px;margin-top:16px}.home-night-inner .page-actions{margin-top:24px}.home-plan{padding-top:64px;padding-bottom:64px}.home-plan .section-title{font-size:36px;line-height:44px}.plan-heading{text-align:center}.plan-heading .kicker{color:var(--burgundy)}.plan-heading .section-title{margin-top:8px}.plan-heading>p:last-child{font-size:16px;line-height:24px;max-width:50rem;margin:16px auto 0;color:var(--muted)}.home-plan-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px}.home-plan-card{display:flex;flex-direction:column}.home-plan-card .media-frame{height:208px}.home-plan-card .body{flex:1;display:flex;flex-direction:column;align-items:flex-start}.home-plan-card h3{font-size:26px;line-height:32px}.home-plan-card .body>p{font-size:16px;line-height:24px}.home-plan-card .plan-hours{font-size:14px!important;line-height:20px!important;font-weight:700;color:var(--burgundy)}.home-plan-card .btn{margin-top:auto}.home-plan-card .body>p:last-of-type{margin-bottom:16px}
/* Night page */
body[data-page='night']{background:#000;color:var(--paper)}.night-brand-hero{text-align:center;padding:24px 16px 0}.night-brand-logo{width:min(880px,92vw);height:auto;max-height:400px;object-fit:contain;margin:auto}.night-tagline{font-size:11px;line-height:17px;font-weight:800;letter-spacing:.22em;text-transform:uppercase;color:var(--gold);max-width:760px;margin:8px auto 0}.night-brand-hero>.btn{font-size:11px;letter-spacing:.16em;margin-top:24px}.night-content{max-width:72rem;margin:auto;padding:32px 16px 64px}.night-featuring{text-align:center;font-size:11px;line-height:17px;font-weight:800;letter-spacing:.25em;text-transform:uppercase;color:var(--gold)}.haunt-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:24px}.haunt-shortcuts a{height:192px;display:flex;align-items:center;justify-content:center;flex-direction:column;padding:20px;border:1px solid #55251f;background:#300b0b;border-radius:16px;text-decoration:none;gap:12px}.haunt-shortcuts img{width:100%;height:108px;object-fit:contain}.haunt-shortcuts span{font-size:11px;line-height:17px;color:var(--gold);text-transform:uppercase}.attractions-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:48px}.haunt-card{background:#030202;border:1px solid #48201b;border-radius:16px;overflow:hidden;box-shadow:0 18px 40px #6b1c1c13;scroll-margin-top:24px;display:flex;flex-direction:column}.haunt-card .media-frame{height:288px;flex-shrink:0;background:#000}.haunt-body{padding:24px;flex:1;display:flex;flex-direction:column;align-items:flex-start}.haunt-logo-slot{height:128px;margin:4px 0 20px;display:flex;align-items:center;justify-content:center;width:100%}.haunt-logo-slot img{max-width:320px;width:80%;max-height:128px;height:100%;object-fit:contain}.haunt-eyebrow{color:var(--gold);font-size:11px;line-height:17px;letter-spacing:.06em;text-transform:uppercase}.haunt-body h2{font-size:26px;line-height:32px;color:var(--gold);margin-top:4px}.haunt-hours{font-size:12px;line-height:18px;color:var(--gold);margin-top:6px}.haunt-detail{font-size:12px;line-height:18px;color:#a99c83;margin-top:4px}.haunt-description{font-size:15px;line-height:24px;color:#e1d5bf;margin:16px 0 20px}.haunt-body>.btn{margin-top:auto}.combo-panel{border:1px solid #6a4d18;border-radius:16px;padding:24px;margin-top:48px;background:#050402}.combo-panel h2{font-size:26px;line-height:34px;color:var(--gold)}.combo-panel p{font-size:15px;line-height:24px;margin-top:10px;color:#ddd0b9}.combo-panel strong{color:var(--gold);font-weight:700}.night-links{margin-top:24px}.night-links .btn{font-size:12px;text-transform:none;letter-spacing:0;min-height:36px;padding:8px 16px}.night-page footer{color:var(--cream)}
/* Pricing: the screenshot's stacked bars and cards, not a redesign into pricing tiers. */
.pricing-page .page-lead{max-width:58rem}.free-access{background:var(--paper);padding:24px;border-radius:16px;margin-top:28px}.free-access .kicker{color:var(--forest);font-size:11px}.free-access h2{font-size:26px;line-height:34px;color:var(--burgundy);margin-top:4px}.free-access p:last-child{font-size:14px;line-height:22px;margin-top:8px}.pricing-section{margin-top:48px}.pricing-banner{background:var(--forest);color:var(--paper);padding:20px;border-radius:12px}.pricing-banner .eyebrow{font-size:10px}.pricing-banner h2{font-size:23px;line-height:31px;font-weight:500;margin-top:4px}.pricing-banner p:last-child{font-size:13px;line-height:20px;margin-top:6px}.pricing-banner.night-pricing{background:var(--burgundy)}.price-card{margin-top:16px;background:var(--paper);border-radius:12px;overflow:hidden}.price-card-head{background:var(--forest);color:var(--paper);display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 20px}.price-card-head h3{font-size:21px;line-height:28px;font-weight:500;font-family:'Cinzel',Georgia,serif;font-variant:small-caps}.price-card-head .price{font-size:24px;line-height:30px;font-family:'Cinzel',Georgia,serif;font-weight:500;white-space:nowrap}.price-card.night-price .price-card-head{background:var(--burgundy)}.price-card-content{font-size:14px;line-height:22px;padding:16px 20px}.price-card-content p+p{margin-top:8px}.price-card-content ul{margin:8px 0;padding-left:20px}.price-card-content li{margin:3px 0}.price-card-content .btn{font-size:10px;min-height:28px;padding:6px 14px;margin-top:12px}.pricing-subtitle{font-size:23px;line-height:31px;margin-top:32px}.pricing-subtitle+p{font-size:14px;line-height:22px;margin-top:4px;color:var(--muted)}.discount-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:24px}.discount-card{padding:20px;border-radius:12px;background:#f1e4bf}.discount-card h3{font-size:18px;line-height:26px}.discount-card .discount-price{font-size:26px;line-height:34px;color:var(--burgundy)}.discount-card p:last-child{font-size:13px;line-height:21px;margin-top:4px}.pricing-footer-note{margin-top:32px;color:var(--muted);font-size:13px;line-height:20px}.outline-forest{border:1px solid var(--forest);color:var(--forest);padding:8px 16px}
/* Tools are deliberately outside the design, available only with ?manage=1. */
.site-tools[hidden]{display:none}.site-tools{position:fixed;right:14px;bottom:14px;z-index:100;color:var(--ink);font-size:13px}.site-tools>button{border:1px solid var(--cream-dark);background:var(--paper);color:var(--forest);border-radius:999px;padding:9px 14px;box-shadow:0 2px 14px #0002}.site-tools>section{width:min(360px,calc(100vw - 28px));background:var(--paper);padding:20px;border:1px solid var(--cream-dark);border-radius:14px;box-shadow:0 12px 40px #0004;position:absolute;bottom:48px;right:0}.site-tools h2{font-size:20px}.site-tools p{margin:10px 0;line-height:20px}.site-tools a{display:block;margin-top:10px;color:var(--forest);font-weight:700}.site-tools section button{border:0;border-radius:8px;padding:8px 12px;background:var(--forest);color:var(--paper)}.site-tools small{display:block;color:var(--muted);margin-top:10px}.route-loading{min-height:60vh}
@media(max-width:1100px) and (min-width:901px){.desktop-nav a{padding:8px 10px;font-size:13px}.desktop-nav>div{gap:6px}}
@media(max-width:900px){.page-wrap{padding-top:40px;padding-bottom:44px}.activities-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.job-grid{gap:12px}.job-card{padding:18px}.job-card h2{font-size:22px}.feature-media{height:330px}.home-hero{height:680px}.home-hero h1{font-size:64px}.grandparents-inner{gap:16px}.grandparents h2{font-size:36px}.grandparents-circle:first-child{width:180px;height:180px;right:65px}.grandparents-circle:last-child{width:200px;height:200px}.home-night-inner{gap:24px}.home-night-inner h2{font-size:30px}.home-plan-grid{gap:16px}.home-plan-card h3{font-size:23px}.haunt-shortcuts{gap:10px}.haunt-shortcuts a{height:150px;padding:14px}.haunt-shortcuts img{height:84px}.haunt-shortcuts span{font-size:9px}.attractions-grid{gap:16px}.haunt-card .media-frame{height:230px}.haunt-body{padding:20px}.haunt-body h2{font-size:24px}.night-brand-logo{max-width:760px}.price-card-head h3{font-size:19px}.home-film .media-frame{height:360px}}
@media(max-width:600px){.page-wrap{padding-top:30px;padding-bottom:40px}.page-wrap .page-title{font-size:28px;line-height:1.2}.page-lead,.page-sublead{font-size:15px;line-height:23px}.page-lead{margin-top:14px}.soft-notice{padding:14px;font-size:14px;line-height:22px}.activities-grid,.job-grid,.rentals-grid,.home-plan-grid,.attractions-grid{grid-template-columns:1fr}.activities-grid{margin-top:24px;gap:20px}.activity-card .media-frame{height:208px}.activity-card h2{font-size:22px}.white-card .body{padding:20px}.job-grid{margin-top:28px;gap:18px}.job-card{padding:24px}.job-card h2{font-size:26px}.job-card .job-number{font-size:34px;line-height:40px}.job-card .job-fair{min-height:0}.feature-media{height:230px;margin-top:24px}.escape-band{padding:20px;gap:14px;align-items:flex-start}.escape-band h1{font-size:27px;line-height:34px}.escape-band p{font-size:14px;line-height:22px}.escape-logo-disc{width:60px;height:60px;padding:8px}.stat-grid{grid-template-columns:1fr 1fr;gap:12px;margin-top:24px}.stat-card{padding:18px}.stat-card h2{font-size:23px;line-height:30px}.rentals-grid{margin-top:24px;gap:16px}.rental-card .rental-price{font-size:32px}.home-hero{height:610px}.hero-inner{padding:44px 20px}.home-hero h1{font-size:52px;max-width:11ch}.hero-eyebrow{font-size:9px;letter-spacing:.08em}.hero-subhead{font-size:20px;line-height:28px}.hero-description{font-size:15px;line-height:24px;max-width:27rem}.hero-buttons{gap:7px}.hero-buttons .btn{font-size:10px;padding:10px 12px}.hero-shade{background:linear-gradient(90deg,#2a1a12d9,#2a1a1240)}.home-film{padding:20px 16px}.home-film .media-frame{height:auto;aspect-ratio:16/9}.grandparents-inner{grid-template-columns:1fr;padding:36px 20px;min-height:0}.grandparents h2{font-size:38px}.grandparents-dates{font-size:15px;line-height:23px}.grandparents-art{height:245px;max-width:360px;width:100%;margin:12px auto 0}.grandparents-circle:first-child{width:180px;height:180px;right:115px}.grandparents-circle:last-child{width:210px;height:210px;right:10px}.grandparents-watermark{font-size:80px;right:-50px;top:63%}.home-night-inner{grid-template-columns:1fr;padding:32px 20px;gap:20px}.home-night-lockup{height:160px;max-width:360px;margin:auto}.home-night-inner h2{font-size:29px}.home-plan{padding-top:40px;padding-bottom:40px}.home-plan .section-title{font-size:29px;line-height:36px}.home-plan-grid{margin-top:28px;gap:22px}.home-plan-card .media-frame{height:212px}.home-plan-card .body>p{margin-bottom:12px}.home-plan-card .btn{margin-top:4px}.night-brand-hero{padding-top:24px}.night-brand-logo{width:100%;max-height:200px}.night-tagline{font-size:9px;letter-spacing:.13em;line-height:16px;max-width:330px;margin-top:14px}.night-brand-hero>.btn{font-size:10px;padding:10px 18px;margin-top:18px}.night-content{padding-top:28px;padding-bottom:40px}.night-featuring{font-size:9px;line-height:16px;letter-spacing:.16em;max-width:330px;margin:auto}.haunt-shortcuts{grid-template-columns:1fr 1fr;gap:12px;margin-top:18px}.haunt-shortcuts a{height:138px;padding:14px}.haunt-shortcuts img{height:78px}.attractions-grid{margin-top:28px;gap:24px}.haunt-card .media-frame{height:230px}.haunt-body{padding:22px}.haunt-logo-slot{height:105px;margin-bottom:18px}.haunt-logo-slot img{max-height:105px}.haunt-body h2{font-size:25px;line-height:32px}.haunt-hours,.haunt-detail{font-size:12px;line-height:19px}.haunt-description{font-size:15px;line-height:24px}.combo-panel{margin-top:28px;padding:20px}.combo-panel h2{font-size:24px}.combo-panel p{font-size:14px;line-height:23px}.night-links{gap:8px}.night-links .btn{font-size:11px;padding:8px 12px}.free-access{padding:20px;margin-top:24px}.free-access h2{font-size:24px}.pricing-section{margin-top:32px}.pricing-banner{padding:18px}.pricing-banner h2{font-size:20px;line-height:28px}.price-card-head{padding:12px 16px;align-items:flex-start;gap:10px}.price-card-head h3{font-size:18px;line-height:26px}.price-card-head .price{font-size:20px;line-height:26px}.price-card-content{padding:16px;font-size:14px;line-height:22px}.discount-grid{grid-template-columns:1fr;gap:12px}.pricing-subtitle{font-size:21px}.site-tools{right:10px;bottom:10px}.media-toggle{opacity:1;font-size:10px;padding:5px 8px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}.media-toggle{opacity:1}}@media print{.media-toggle,.site-tools{display:none!important}.activity-card,.price-card,.job-card{break-inside:avoid}.home-hero{height:560px}.attractions-grid{grid-template-columns:1fr 1fr}}

@media(min-width:601px){.price-card-content{font-size:16px;line-height:24px;padding:20px}.price-card-head{padding-top:12px;padding-bottom:12px}}

/* Homepage refinement 01: scoped to Home. Other page styles are untouched. */
body[data-page="home"] .home-hero h1 {
  font-variant:normal;
  text-transform:uppercase;
  font-size:76px;
  line-height:.95;
  max-width:14ch;
  margin-top:10px;
}
body[data-page="home"] .hero-inner {padding-bottom:68px;}
body[data-page="home"] .hero-description {line-height:24px;margin-top:12px;}
body[data-page="home"] .hero-subhead {
  font-variant:normal;
  text-transform:uppercase;
  font-size:23px;
  line-height:30px;
  margin-top:12px;
}
body[data-page="home"] .hero-buttons {margin-top:24px;}
/* The embedded reference fallback already contains the reference's dark shade.
   Apply the live CSS shade only after the original photograph has loaded. */
body[data-page="home"] .hero-background[data-reference-shaded="true"]:not([data-original-loaded="true"]) + .hero-shade {opacity:0;}
body[data-page="home"] .hero-background {background-position:center center;}
body[data-page="home"] .hero-background[data-original-loaded="true"] {background-position:center 20%;}
body[data-page="home"] .grandparents-inner {min-height:422px;}
body[data-page="home"] .grandparents h2 {
  text-transform:uppercase;
  font-variant:normal;
  font-size:44px;
  margin-top:8px;
  line-height:1.02;
}
body[data-page="home"] .grandparents-dates {margin-top:16px;}
body[data-page="home"] .grandparents-offer,
body[data-page="home"] .grandparents-maze {text-transform:uppercase;font-variant:normal;}
body[data-page="home"] .grandparents-watermark {
  text-transform:uppercase;
  font-variant:normal;
  right:-32px;
  font-size:128px;
  color:#fffdf80e;
}
body[data-page="home"] .grandparents-circle:first-child {right:104px;}
body[data-page="home"] .grandparents-circle:last-child {right:-12px;bottom:-4px;}
body[data-page="home"] .home-night-inner {
  padding-top:40px;
  padding-bottom:40px;
  grid-template-columns:.90fr 1.10fr;
  gap:48px;
}
body[data-page="home"] .home-night-lockup {height:214px;max-width:100%;object-fit:contain;}
body[data-page="home"] .home-night-inner h2 {font-size:36px;text-transform:uppercase;font-variant:normal;}
body[data-page="home"] .home-night-inner p:not(.eyebrow) {font-size:15px;line-height:24px;margin-top:12px;}
body[data-page="home"] .home-night-inner .page-actions {margin-top:20px;}
body[data-page="home"] .home-plan {padding-top:64px;padding-bottom:64px;}
body[data-page="home"] .home-plan .section-title {font-variant:normal;text-transform:uppercase;font-size:36px;}
body[data-page="home"] .home-plan-grid {margin-top:36px;}
body[data-page="home"] .home-plan-card h3 {font-size:26px;line-height:32px;}
body[data-page="home"] .home-plan-card .body>p {font-size:16px;line-height:23px;letter-spacing:-.22px;}
body[data-page="home"] .home-plan-card .plan-hours {font-size:12.5px!important;line-height:18px!important;letter-spacing:-.45px;white-space:nowrap;}
body[data-page="home"] .footer-grid {grid-template-columns:repeat(3,minmax(0,1fr));}
body[data-page="home"] .footer-note {font-size:14px;line-height:22px;}
body[data-page="home"] .footer-name {font-variant:normal;font-size:18px;}
@media(min-width:901px) {
  body[data-page="home"] .header-row,
  body[data-page="home"] .hero-inner,
  body[data-page="home"] .grandparents-inner,
  body[data-page="home"] .home-night-inner,
  body[data-page="home"] .home-plan {max-width:1164px;position:relative;left:6px;}
  body[data-page="home"] .home-film .media-frame {max-width:1132px;position:relative;left:6px;}
  body[data-page="home"] .header-row>a:nth-child(2) {transform:translateX(7px);}
}
@media(max-width:900px) {
  body[data-page="home"] .home-hero h1 {font-size:64px;}
  body[data-page="home"] .hero-inner {padding:40px 24px;}
  body[data-page="home"] .hero-background {background-position:43% center;}
  body[data-page="home"] .grandparents-inner {min-height:0;}
  body[data-page="home"] .grandparents h2 {font-size:38px;}
  body[data-page="home"] .grandparents-watermark {font-size:90px;}
  body[data-page="home"] .home-night-inner {grid-template-columns:1fr;gap:20px;padding:32px 24px;}
  body[data-page="home"] .home-night-lockup {max-width:420px;height:auto;margin:0 auto;}
  body[data-page="home"] .home-plan-card .plan-hours {white-space:normal;}
  body[data-page="home"] .footer-grid {grid-template-columns:1fr 1fr;}
  body[data-page="home"] .footer-grid>div:first-child {grid-column:1/-1;}
}
@media(max-width:580px) {
  body[data-page="home"] .home-hero h1 {font-size:48px;line-height:1.02;}
  body[data-page="home"] .hero-subhead {font-size:18px;line-height:26px;}
  body[data-page="home"] .hero-description {font-size:15px;line-height:23px;max-width:31rem;}
  body[data-page="home"] .hero-buttons {gap:8px;}
  body[data-page="home"] .home-hero {min-height:580px;}
  body[data-page="home"] .grandparents h2 {font-size:34px;}
  body[data-page="home"] .grandparents-offer,
  body[data-page="home"] .grandparents-maze {font-size:21px;}
  body[data-page="home"] .home-night-inner h2 {font-size:28px;line-height:36px;}
  body[data-page="home"] .home-plan .section-title {font-size:29px;}
  body[data-page="home"] .home-plan {padding-top:40px;padding-bottom:40px;}
}
/* Desktop typography alignment against the supplied 458px-wide full-page capture. */
@media(min-width:901px) {
  body[data-page="home"] .hero-eyebrow {border-radius:999px;transform:translateY(-10px);}
  body[data-page="home"] .home-hero h1 {transform:translateY(-18px);}
  body[data-page="home"] .hero-subhead {transform:translateY(-6px);}
  body[data-page="home"] .hero-description {font-size:17px;line-height:26px;}
  body[data-page="home"] .hero-buttons {margin-top:32px;}
  body[data-page="home"] .grandparents-watermark {font-size:120px;}
  body[data-page="home"] .home-night-inner {grid-template-columns:.88fr 1.12fr;}
  body[data-page="home"] .home-night-lockup {width:calc(100% - 20px);margin-left:20px;}
  body[data-page="home"] footer {padding-bottom:36px;}
}
/* Final alignment pass: identical card baselines and screenshot-scale navigation. */
body[data-page="home"] .home-plan-card .body {min-height:240px;}
body[data-page="home"] .home-plan-card .body>.btn {margin-top:auto;}
body[data-page="home"] .footer-name {font-variant:small-caps;font-size:20px;}
@media(min-width:901px) {
  body[data-page="home"] .desktop-nav>div {gap:6px;}
  body[data-page="home"] .desktop-nav a {font-size:13.5px;padding:8px 12px;}
  body[data-page="home"] .header-row>a:first-child {transform:translateX(8px);}
  body[data-page="home"] .header-actions>.gold {font-size:13px;}
  body[data-page="home"] .grandparents-watermark {font-size:132px;}
}
@media(max-width:900px){body[data-page="home"] .home-plan-card .body {min-height:0;}body[data-page="home"] .home-plan-card .body>.btn {margin-top:16px;}}

@media(max-width:900px){body[data-page="home"] .hero-background[data-original-loaded="true"] {background-position:43% center;}}

/* Revision 02 — the two requested pricing groups only. Two columns at every width. */
.pricing-page .price-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:16px;align-items:stretch}
.pricing-page .price-grid>.price-card{margin-top:0;min-width:0;display:flex;flex-direction:column}
.pricing-page .price-grid .price-card-head{align-items:flex-start}
.pricing-page .price-grid .price-card-head h3{flex:1;min-width:0}
.pricing-page .price-grid .price-card-content{flex:1}
@media(max-width:600px){.pricing-page .price-grid{gap:12px}.pricing-page .price-grid .price-card-head{flex-direction:column;gap:4px;padding:12px}.pricing-page .price-grid .price-card-content{padding:12px}}


/* CHANGE 03 — Night desktop yellow text readability */
@media (min-width:901px){
  body[data-page="night"] .night-tagline{
    font-size:20px;
    line-height:30px;
    letter-spacing:.14em;
    max-width:1100px;
  }
  body[data-page="night"] .night-featuring{
    font-size:20px;
    line-height:30px;
    letter-spacing:.15em;
  }
  body[data-page="night"] .haunt-shortcuts span{
    font-size:18px;
    line-height:26px;
    font-weight:700;
  }
  body[data-page="night"] .haunt-eyebrow{
    font-size:18px;
    line-height:26px;
    font-weight:700;
  }
  body[data-page="night"] .haunt-body h2{
    font-size:32px;
    line-height:40px;
  }
  body[data-page="night"] .haunt-hours{
    font-size:20px;
    line-height:28px;
    font-weight:600;
  }
  body[data-page="night"] .combo-panel h2{
    font-size:32px;
    line-height:40px;
  }
  body[data-page="night"] .combo-panel strong{
    font-size:18px;
    line-height:26px;
  }
}


/* CHANGE 05 — Hours desktop readability and three-card summary */
@media (min-width:901px){
  .hours-page .page-title{
    font-size:46px;
    line-height:1.2;
  }
  .hours-page .intro{
    font-size:20px;
    line-height:30px;
    margin-top:10px;
  }
  .hours-page .notice{
    padding:18px 22px;
  }
  .hours-page .notice-title{
    font-size:20px;
    line-height:28px;
  }
  .hours-page .notice-times{
    font-size:22px;
    line-height:30px;
  }
  .hours-page .notice-exception{
    font-size:17px;
    line-height:25px;
  }

  .hours-page .summary{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:18px;
    align-items:stretch;
  }
  .hours-page .panel,
  .hours-page .summary>.final-card{
    min-height:300px;
  }
  .hours-page .panel .pad{
    padding:28px;
  }
  .hours-page .panel .eyebrow,
  .hours-page .summary>.final-card .eyebrow{
    font-size:16px;
    line-height:24px;
    letter-spacing:.16em;
  }
  .hours-page .panel h2{
    font-size:26px;
    line-height:34px;
    margin-top:6px;
  }
  .hours-page .hours-time{
    font-size:42px;
    line-height:50px;
    margin-top:8px;
  }
  .hours-page .hours-detail{
    font-size:19px;
    line-height:28px;
    margin-top:14px;
  }
  .hours-page .panel-foot{
    font-size:16px;
    line-height:24px;
    padding:12px 14px;
    letter-spacing:.10em;
  }
  .hours-page .summary>.final-card{
    margin-top:0;
    padding:28px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .hours-page .summary>.final-card .final-dates{
    font-size:25px;
    line-height:34px;
    margin-top:8px;
  }
  .hours-page .summary>.final-card h2{
    font-size:30px;
    line-height:38px;
    margin-top:8px;
  }
  .hours-page .summary>.final-card .final-description{
    font-size:18px;
    line-height:27px;
    margin-top:12px;
  }

  .hours-page .schedule-section{
    margin-top:56px;
  }
  .hours-page .kicker{
    font-size:16px;
    line-height:24px;
  }
  .hours-page .section-title{
    font-size:36px;
    line-height:44px;
    margin-top:4px;
  }
  .hours-page .section-intro{
    font-size:19px;
    line-height:29px;
    max-width:56rem;
  }

  .hours-page .table-banner{
    padding:20px 24px;
  }
  .hours-page .table-banner .display{
    font-size:22px;
    line-height:30px;
  }
  .hours-page .table-banner p+p{
    font-size:17px;
    line-height:25px;
    margin-top:6px;
  }
  .hours-page table{
    font-size:17px;
  }
  .hours-page thead th{
    font-size:16px;
    line-height:24px;
    padding:15px 10px;
  }
  .hours-page tbody th{
    font-size:17px;
    line-height:25px;
  }
  .hours-page tbody th,
  .hours-page tbody td{
    padding:15px 16px;
    line-height:25px;
  }
  .hours-page .pill{
    font-size:15px;
    line-height:22px;
    padding:6px 12px;
  }

  .hours-page .final .in-table{
    padding:28px;
  }
  .hours-page .final .in-table .eyebrow{
    font-size:16px;
    line-height:24px;
  }
  .hours-page .final .in-table .final-dates{
    font-size:25px;
    line-height:34px;
  }
  .hours-page .final .in-table h2{
    font-size:30px;
    line-height:38px;
  }
  .hours-page .final .in-table .final-description{
    font-size:18px;
    line-height:27px;
  }

  .hours-page .highlights{
    gap:16px;
    margin-top:20px;
  }
  .hours-page .highlights article{
    padding:22px 18px;
  }
  .hours-page .highlights h3{
    font-size:18px;
    line-height:27px;
  }
  .hours-page .highlights p{
    font-size:16px;
    line-height:25px;
    margin-top:7px;
  }
  .hours-page .footnote{
    font-size:15px;
    line-height:23px;
    margin-top:16px;
  }

  body[data-page="hours"] footer .footer-name{
    font-size:22px;
  }
  body[data-page="hours"] footer .footer-label{
    font-size:15px;
    line-height:22px;
  }
  body[data-page="hours"] footer a{
    font-size:16px;
    line-height:25px;
  }
  body[data-page="hours"] footer .footer-note{
    font-size:15px;
    line-height:23px;
  }
  body[data-page="hours"] .footer-bar{
    font-size:14px;
    line-height:22px;
  }
}


/* Fire Pits booking pill */
.hours-page .hours-book-link{text-decoration:none;cursor:pointer;}
.hours-page .hours-book-link:hover{text-decoration:underline;}


/* Haunted Town Sunday inline closure note */
.hours-page .hours-cell-note{
  display:block;
  margin-top:6px;
  font-size:13px;
  line-height:18px;
  font-weight:700;
  color:var(--closed);
  white-space:nowrap;
}
@media (min-width:901px){
  .hours-page .hours-cell-note{
    font-size:14px;
    line-height:20px;
  }
}


/* CHANGE 06 — Hours schedule note cards maximum readability */
@media (min-width:901px){
  .hours-page .highlights{
    gap:18px;
    margin-top:24px;
  }
  .hours-page .highlights article{
    padding:30px 22px;
    min-height:170px;
    display:flex;
    flex-direction:column;
    justify-content:center;
    align-items:center;
  }
  .hours-page .highlights h3{
    font-size:24px;
    line-height:32px;
    font-weight:700;
  }
  .hours-page .highlights p{
    font-size:19px;
    line-height:29px;
    margin-top:10px;
    max-width:25rem;
  }
  .hours-page .footnote{
    font-size:18px;
    line-height:28px;
    margin-top:20px;
    font-weight:600;
  }
}


/* CHANGE 07 — Pricing compact multi-column layout */
.pricing-page .price-layout{
  display:grid;
  gap:16px;
  margin-top:16px;
  align-items:stretch;
}
.pricing-page .price-layout>.price-card,
.pricing-page .price-grid>.price-card{
  margin-top:0;
  min-width:0;
  display:flex;
  flex-direction:column;
}
.pricing-page .price-layout .price-card-content,
.pricing-page .price-grid .price-card-content{
  flex:1;
  display:flex;
  flex-direction:column;
}
.pricing-page .price-layout .price-card-content>.btn,
.pricing-page .price-grid .price-card-content>.btn{
  margin-top:auto;
  align-self:flex-start;
}
@media (min-width:1200px){
  .pricing-page .price-layout-day{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .pricing-page .price-layout-night{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .pricing-page .price-grid[data-price-group="singles"]{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:14px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head{
    display:block;
    padding:12px 14px;
    min-height:92px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head h3{
    font-size:17px;
    line-height:23px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head .price{
    font-size:23px;
    line-height:28px;
    margin-top:6px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-content{
    padding:14px;
    font-size:14px;
    line-height:21px;
  }
  .pricing-page .price-layout-day .price-card-head,
  .pricing-page .price-layout-night .price-card-head{
    padding:12px 16px;
  }
  .pricing-page .price-layout-day .price-card-head h3,
  .pricing-page .price-layout-night .price-card-head h3{
    font-size:19px;
    line-height:26px;
  }
  .pricing-page .price-layout-day .price-card-head .price,
  .pricing-page .price-layout-night .price-card-head .price{
    font-size:23px;
    line-height:28px;
  }
  .pricing-page .price-layout-day .price-card-content,
  .pricing-page .price-layout-night .price-card-content{
    padding:16px;
    font-size:15px;
    line-height:23px;
  }
  .pricing-page .price-layout-day .price-card-content ul{
    padding-left:18px;
    margin:8px 0;
  }
  .pricing-page .price-layout-day .price-card-content li{
    margin:2px 0;
  }
}
@media (min-width:901px) and (max-width:1199px){
  .pricing-page .price-layout-day{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .pricing-page .price-layout-night{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
  .pricing-page .price-grid[data-price-group="singles"]{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}
@media (max-width:900px){
  .pricing-page .price-layout-day,
  .pricing-page .price-layout-night{
    grid-template-columns:1fr;
  }
}
@media (max-width:600px){
  .pricing-page .price-grid[data-price-group="singles"],
  .pricing-page .price-grid[data-price-group="again"]{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* CHANGE 08 — Combo tickets three columns */
@media (min-width:1200px){
  .pricing-page .price-layout-combo{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .pricing-page .price-layout-combo .price-card-head{
    padding:12px 16px;
  }
  .pricing-page .price-layout-combo .price-card-head h3{
    font-size:18px;
    line-height:25px;
  }
  .pricing-page .price-layout-combo .price-card-head .price{
    font-size:23px;
    line-height:28px;
  }
  .pricing-page .price-layout-combo .price-card-content{
    padding:16px;
    font-size:15px;
    line-height:23px;
  }
}
@media (min-width:901px) and (max-width:1199px){
  .pricing-page .price-layout-combo{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:900px){
  .pricing-page .price-layout-combo{
    grid-template-columns:1fr;
  }
}


/* CHANGE 10 — Pricing readability and card polish */
@media (min-width:901px){
  .pricing-page .page-title{
    font-size:48px;
    line-height:1.15;
  }
  .pricing-page .page-lead{
    font-size:20px;
    line-height:30px;
    max-width:66rem;
    margin-top:12px;
  }

  .pricing-page .free-access{
    padding:28px;
    margin-top:30px;
  }
  .pricing-page .free-access .kicker{
    font-size:16px;
    line-height:23px;
  }
  .pricing-page .free-access h2{
    font-size:32px;
    line-height:40px;
    margin-top:5px;
  }
  .pricing-page .free-access p:last-child{
    font-size:18px;
    line-height:28px;
    margin-top:10px;
  }

  .pricing-page .pricing-section{
    margin-top:56px;
  }
  .pricing-page .pricing-banner{
    padding:24px 26px;
  }
  .pricing-page .pricing-banner .eyebrow{
    font-size:16px;
    line-height:23px;
    letter-spacing:.14em;
  }
  .pricing-page .pricing-banner h2{
    font-size:30px;
    line-height:38px;
    margin-top:5px;
  }
  .pricing-page .pricing-banner p:last-child{
    font-size:18px;
    line-height:28px;
    margin-top:8px;
  }

  .pricing-page .pricing-subtitle{
    font-size:32px;
    line-height:40px;
    margin-top:40px;
  }
  .pricing-page .pricing-subtitle+p{
    font-size:18px;
    line-height:28px;
    margin-top:7px;
  }

  .pricing-page .price-card{
    border-radius:14px;
  }
  .pricing-page .price-card-head{
    min-height:78px;
    padding:16px 18px;
    gap:14px;
  }
  .pricing-page .price-card-head h3{
    font-size:22px;
    line-height:29px;
    font-weight:500;
  }
  .pricing-page .price-card-head .price{
    font-size:30px;
    line-height:36px;
    font-weight:500;
  }
  .pricing-page .price-card-content{
    padding:20px;
    font-size:18px;
    line-height:28px;
  }
  .pricing-page .price-card-content p+p{
    margin-top:10px;
  }
  .pricing-page .price-card-content ul{
    margin:10px 0 12px;
    padding-left:22px;
  }
  .pricing-page .price-card-content li{
    margin:5px 0;
    font-size:17px;
    line-height:26px;
  }
  .pricing-page .price-card-content .button-small{
    font-size:14px;
    line-height:20px;
    padding:10px 18px;
    min-height:40px;
    margin-top:16px;
  }

  .pricing-page .discount-grid{
    gap:18px;
    margin-top:28px;
  }
  .pricing-page .discount-card{
    padding:26px;
  }
  .pricing-page .discount-card h3{
    font-size:24px;
    line-height:32px;
  }
  .pricing-page .discount-card .discount-price{
    font-size:36px;
    line-height:43px;
    margin-top:6px;
  }
  .pricing-page .discount-card p:last-child{
    font-size:18px;
    line-height:28px;
    margin-top:8px;
  }

  .pricing-page .pricing-footer-note{
    font-size:17px;
    line-height:26px;
    margin-top:38px;
  }
  .pricing-page .page-actions .btn{
    font-size:15px;
    min-height:44px;
    padding:11px 21px;
  }

  /* Daytime cards: large, balanced, readable */
  .pricing-page .price-layout-day .price-card-head{
    min-height:92px;
  }
  .pricing-page .price-layout-day .price-card-head h3{
    font-size:22px;
    line-height:29px;
  }
  .pricing-page .price-layout-day .price-card-head .price{
    font-size:29px;
    line-height:35px;
  }
  .pricing-page .price-layout-day .price-card-content{
    padding:20px;
    font-size:17px;
    line-height:27px;
  }
  .pricing-page .price-layout-day .price-card-content li{
    font-size:16.5px;
    line-height:25px;
  }

  /* Night cards */
  .pricing-page .price-layout-night .price-card-head{
    min-height:86px;
  }
  .pricing-page .price-layout-night .price-card-head h3{
    font-size:23px;
    line-height:30px;
  }
  .pricing-page .price-layout-night .price-card-head .price{
    font-size:30px;
    line-height:36px;
  }
  .pricing-page .price-layout-night .price-card-content{
    padding:21px;
    font-size:18px;
    line-height:28px;
  }

  /* Five-column singles: compact but still professional/readable */
  .pricing-page .price-grid[data-price-group="singles"]{
    align-items:stretch;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card{
    min-height:245px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head{
    min-height:112px;
    padding:16px;
    display:flex;
    flex-direction:column;
    align-items:flex-start;
    justify-content:space-between;
    gap:8px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head h3{
    font-size:19px;
    line-height:25px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head .price{
    font-size:29px;
    line-height:34px;
    margin-top:0;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-content{
    padding:16px;
    font-size:16px;
    line-height:24px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .button-small{
    font-size:13px;
    line-height:19px;
    padding:9px 14px;
    min-height:38px;
  }

  /* Want to try it again */
  .pricing-page .price-grid[data-price-group="again"] .price-card-head{
    min-height:82px;
  }
  .pricing-page .price-grid[data-price-group="again"] .price-card-head h3{
    font-size:22px;
    line-height:29px;
  }
  .pricing-page .price-grid[data-price-group="again"] .price-card-head .price{
    font-size:29px;
    line-height:35px;
  }
  .pricing-page .price-grid[data-price-group="again"] .price-card-content{
    font-size:18px;
    line-height:28px;
    padding:20px;
  }

  /* VIP / Combo cards */
  .pricing-page .price-layout-combo .price-card{
    min-height:360px;
  }
  .pricing-page .price-layout-combo .price-card-head{
    min-height:96px;
    padding:17px 18px;
  }
  .pricing-page .price-layout-combo .price-card-head h3{
    font-size:22px;
    line-height:29px;
  }
  .pricing-page .price-layout-combo .price-card-head .price{
    font-size:30px;
    line-height:36px;
  }
  .pricing-page .price-layout-combo .price-card-content{
    padding:20px;
    font-size:17px;
    line-height:27px;
  }
  .pricing-page .price-layout-combo .price-card-content li{
    font-size:16px;
    line-height:25px;
  }

  body[data-page="pricing"] footer .footer-name{
    font-size:22px;
  }
  body[data-page="pricing"] footer .footer-label{
    font-size:15px;
    line-height:22px;
  }
  body[data-page="pricing"] footer a{
    font-size:16px;
    line-height:25px;
  }
  body[data-page="pricing"] footer .footer-note{
    font-size:15px;
    line-height:23px;
  }
  body[data-page="pricing"] .footer-bar{
    font-size:14px;
    line-height:22px;
  }
}


/* CHANGE 11 — Escape Rooms readability and card polish */
@media (min-width:901px){
  .escape-page{
    padding-top:56px;
    padding-bottom:64px;
  }
  .escape-page .escape-band{
    padding:30px 32px;
    gap:36px;
    align-items:center;
  }
  .escape-page .escape-band>div:first-child{
    flex:1;
    min-width:0;
  }
  .escape-page .escape-band h1{
    font-size:46px;
    line-height:54px;
  }
  .escape-page .escape-band p{
    font-size:20px;
    line-height:31px;
    margin-top:14px;
    max-width:58rem;
  }
  .escape-page .escape-logo-disc{
    width:126px;
    height:126px;
    padding:14px;
  }

  .escape-page .feature-media{
    height:440px;
    margin-top:34px;
  }

  .escape-page .stat-grid{
    gap:18px;
    margin-top:34px;
  }
  .escape-page .stat-card{
    padding:28px 24px;
    min-height:160px;
    display:flex;
    flex-direction:column;
    justify-content:center;
  }
  .escape-page .stat-card h2{
    font-size:30px;
    line-height:38px;
  }
  .escape-page .stat-card p{
    margin-top:10px;
    font-size:18px;
    line-height:28px;
  }

  body[data-page="escape-rooms"] footer .footer-name{
    font-size:22px;
  }
  body[data-page="escape-rooms"] footer .footer-label{
    font-size:15px;
    line-height:22px;
  }
  body[data-page="escape-rooms"] footer a{
    font-size:16px;
    line-height:25px;
  }
  body[data-page="escape-rooms"] footer .footer-note{
    font-size:15px;
    line-height:23px;
  }
  body[data-page="escape-rooms"] .footer-bar{
    font-size:14px;
    line-height:22px;
  }
}
@media (min-width:701px) and (max-width:1100px){
  .escape-page .stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}


/* CHANGE 12 — Combo asymmetric stacked layout */
@media (min-width:1200px){
  .pricing-page .price-layout-combo{
    grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);
    grid-template-rows:auto auto;
    gap:16px;
    align-items:stretch;
  }
  .pricing-page .price-layout-combo>.price-card:nth-child(1){
    grid-column:1;
    grid-row:1 / span 2;
    min-height:100%;
  }
  .pricing-page .price-layout-combo>.price-card:nth-child(2){
    grid-column:2;
    grid-row:1;
    min-height:0;
  }
  .pricing-page .price-layout-combo>.price-card:nth-child(3){
    grid-column:2;
    grid-row:2;
    min-height:0;
  }
  .pricing-page .price-layout-combo>.price-card:nth-child(2) .price-card-content,
  .pricing-page .price-layout-combo>.price-card:nth-child(3) .price-card-content{
    min-height:190px;
  }
}


/* CHANGE 13 — Combo balanced split layout */
@media (min-width:1200px){
  .pricing-page .price-layout-combo{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    grid-template-rows:1fr 1fr;
    gap:16px;
    align-items:stretch;
  }

  .pricing-page .price-layout-combo>.price-card{
    min-height:0;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(1){
    grid-column:1;
    grid-row:1 / span 2;
    height:100%;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(2){
    grid-column:2;
    grid-row:1;
    height:100%;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(3){
    grid-column:2;
    grid-row:2;
    height:100%;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(2) .price-card-content,
  .pricing-page .price-layout-combo>.price-card:nth-child(3) .price-card-content{
    min-height:0;
  }

  .pricing-page .price-layout-combo .price-card-head{
    min-height:88px;
  }

  .pricing-page .price-layout-combo .price-card-content{
    padding:18px;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(2) .price-card-content,
  .pricing-page .price-layout-combo>.price-card:nth-child(3) .price-card-content{
    justify-content:center;
  }

  .pricing-page .price-layout-combo>.price-card:nth-child(2) .price-card-content>.btn,
  .pricing-page .price-layout-combo>.price-card:nth-child(3) .price-card-content>.btn{
    margin-top:14px;
  }
}


/* CHANGE 14 — Escape Rooms mobile header and larger video */
@media (max-width:600px){
  .escape-page .escape-band{
    padding:20px 18px;
    gap:16px;
    align-items:center;
    min-height:138px;
  }
  .escape-page .escape-band>div:first-child{
    flex:1;
    min-width:0;
  }
  .escape-page .escape-band h1{
    font-size:30px;
    line-height:1.16;
    margin:0;
  }
  .escape-page .escape-band p{
    display:none;
  }
  .escape-page .escape-logo-disc{
    width:76px;
    height:76px;
    padding:9px;
  }
  .escape-page .feature-media{
    height:310px;
    margin-top:20px;
    border-radius:16px;
  }
}


/* CHANGE 15 — Full mobile audit */
@media (max-width:600px){
  /* Global phone header/navigation */
  .header-row{
    min-height:86px;
    padding:10px 14px;
    gap:8px;
  }
  .logo{width:52px;height:52px}
  .wordmark{height:54px;max-width:34vw}
  .header-actions{gap:7px}
  .header-actions .gold{
    min-height:40px;
    padding:9px 12px;
    font-size:11.5px;
  }
  .menu-toggle{
    width:40px;
    height:40px;
    font-size:18px;
  }
  .pets-bar{
    padding:8px 10px;
    font-size:12px;
    line-height:18px;
    letter-spacing:.035em;
  }
  .mobile-nav{padding:8px 12px}
  .mobile-nav a{
    padding:11px 12px;
    font-size:15px;
    line-height:22px;
  }

  /* Shared page rhythm/readability */
  .page-wrap{
    padding:24px 16px 36px;
  }
  .page-wrap .page-title{
    font-size:32px;
    line-height:1.16;
  }
  .page-lead,.page-sublead{
    font-size:16px;
    line-height:25px;
  }
  .page-lead{margin-top:10px}
  .page-sublead{margin-top:8px}
  .soft-notice{
    padding:15px 16px;
    font-size:15px;
    line-height:23px;
  }
  .page-actions{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    width:100%;
  }
  .page-actions .btn{
    width:100%;
    min-height:44px;
    padding:11px 16px;
    font-size:13px;
  }

  /* Day Activities: readable cards without wasting vertical space */
  .day-page .activities-grid{
    gap:16px;
    margin-top:22px;
  }
  .day-page .activity-card .media-frame{
    height:190px;
  }
  .day-page .white-card .body{
    padding:18px;
  }
  .day-page .activity-card h2{
    font-size:23px;
    line-height:30px;
  }
  .day-page .activity-card .body>p{
    font-size:15.5px;
    line-height:23px;
  }
  .day-page .green-badge{
    font-size:9px;
    line-height:13px;
    padding:2px 7px;
  }
  .day-page .activity-card .btn{
    min-height:40px;
    font-size:12.5px;
    padding:9px 14px;
  }
  .day-page .soft-notice{margin-top:24px}

  /* Night Activities: mobile text had become too small */
  body[data-page="night"] .night-brand-hero{
    padding:20px 16px 0;
  }
  body[data-page="night"] .night-brand-logo{
    max-height:180px;
  }
  body[data-page="night"] .night-tagline{
    max-width:360px;
    margin-top:12px;
    font-size:13.5px;
    line-height:21px;
    letter-spacing:.08em;
  }
  body[data-page="night"] .night-brand-hero>.btn{
    min-height:42px;
    padding:10px 18px;
    font-size:12.5px;
    letter-spacing:.08em;
  }
  body[data-page="night"] .night-content{
    padding:24px 16px 38px;
  }
  body[data-page="night"] .night-featuring{
    max-width:360px;
    font-size:13.5px;
    line-height:21px;
    letter-spacing:.10em;
  }
  body[data-page="night"] .haunt-shortcuts{
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:18px;
  }
  body[data-page="night"] .haunt-shortcuts a{
    height:132px;
    padding:12px;
    gap:8px;
  }
  body[data-page="night"] .haunt-shortcuts img{
    height:76px;
  }
  body[data-page="night"] .haunt-shortcuts span{
    font-size:12.5px;
    line-height:18px;
    text-align:center;
  }
  body[data-page="night"] .attractions-grid{
    margin-top:24px;
    gap:20px;
  }
  body[data-page="night"] .haunt-card .media-frame{
    height:250px;
  }
  body[data-page="night"] .haunt-body{
    padding:20px;
  }
  body[data-page="night"] .haunt-logo-slot{
    height:92px;
    margin:0 0 14px;
  }
  body[data-page="night"] .haunt-logo-slot img{
    max-height:92px;
  }
  body[data-page="night"] .haunt-eyebrow{
    font-size:13px;
    line-height:20px;
  }
  body[data-page="night"] .haunt-body h2{
    font-size:26px;
    line-height:33px;
  }
  body[data-page="night"] .haunt-hours{
    font-size:14.5px;
    line-height:22px;
  }
  body[data-page="night"] .haunt-detail{
    font-size:14px;
    line-height:21px;
  }
  body[data-page="night"] .haunt-description{
    font-size:16px;
    line-height:25px;
    margin:14px 0 18px;
  }
  body[data-page="night"] .haunt-body>.btn{
    width:100%;
    min-height:44px;
    font-size:13px;
  }
  body[data-page="night"] .combo-panel{
    margin-top:24px;
    padding:18px;
  }
  body[data-page="night"] .combo-panel h2{
    font-size:25px;
    line-height:32px;
  }
  body[data-page="night"] .combo-panel p{
    font-size:15.5px;
    line-height:24px;
  }
  body[data-page="night"] .night-links{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    width:100%;
  }
  body[data-page="night"] .night-links .btn{
    width:100%;
    min-height:42px;
    padding:9px 10px;
    font-size:12px;
  }

  /* Hours: preserve horizontal schedules but make the cards around them easier to scan */
  .hours-page{
    padding:24px 16px 38px;
  }
  .hours-page .page-title{
    font-size:32px;
    line-height:1.16;
  }
  .hours-page .intro{
    margin-top:8px;
    font-size:16px;
    line-height:25px;
  }
  .hours-page .notice{
    margin-top:16px;
    padding:14px 15px;
  }
  .hours-page .notice-title{
    font-size:15px;
    line-height:22px;
  }
  .hours-page .notice-times{
    font-size:15px;
    line-height:23px;
  }
  .hours-page .notice-exception{
    font-size:12.5px;
    line-height:19px;
  }
  .hours-page .summary{
    gap:12px;
    margin-top:18px;
  }
  .hours-page .summary .final-card{
    margin-top:0;
  }
  .hours-page .pad{
    padding:20px;
  }
  .hours-page .panel h2{
    font-size:22px;
    line-height:29px;
  }
  .hours-page .hours-time{
    font-size:31px;
    line-height:38px;
  }
  .hours-page .hours-detail{
    font-size:15px;
    line-height:23px;
  }
  .hours-page .panel-foot{
    font-size:11.5px;
    line-height:18px;
  }
  .hours-page .final-card{
    padding:20px;
  }
  .hours-page .final-dates{
    font-size:20px;
    line-height:27px;
  }
  .hours-page .final-card h2{
    font-size:27px;
    line-height:34px;
  }
  .hours-page .final-description{
    font-size:15px;
    line-height:22px;
  }
  .hours-page .schedule-section{
    margin-top:32px;
  }
  .hours-page .section-title{
    font-size:27px;
    line-height:34px;
  }
  .hours-page .section-intro{
    margin:7px 0 15px;
    font-size:16px;
    line-height:24px;
  }
  .hours-page .table-banner{
    padding:15px 16px;
  }
  .hours-page .table-banner .display{
    font-size:17px;
    line-height:24px;
  }
  .hours-page .table-banner p+p{
    font-size:13.5px;
    line-height:20px;
  }
  .hours-page table{
    min-width:650px;
    font-size:13.5px;
  }
  .hours-page thead th{
    padding:11px 7px;
    font-size:13px;
  }
  .hours-page tbody th,
  .hours-page tbody td{
    padding:11px 10px;
    line-height:20px;
  }
  .hours-page .pill{
    font-size:11.5px;
    line-height:18px;
    padding:3px 8px;
  }
  .hours-page .highlights,
  .hours-page .highlights.three{
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:14px;
  }
  .hours-page .highlights.three article:last-child{
    grid-column:1/-1;
  }
  .hours-page .highlights article{
    padding:16px 11px;
    min-height:0;
  }
  .hours-page .highlights h3{
    font-size:16px;
    line-height:22px;
  }
  .hours-page .highlights p{
    font-size:14px;
    line-height:21px;
  }
  .hours-page .footnote{
    font-size:12.5px;
    line-height:19px;
  }

  /* Escape Rooms */
  .escape-page .escape-band{
    min-height:132px;
    padding:18px;
  }
  .escape-page .escape-band h1{
    font-size:29px;
    line-height:1.16;
  }
  .escape-page .escape-logo-disc{
    width:74px;
    height:74px;
  }
  .escape-page .feature-media{
    height:310px;
    margin-top:18px;
  }
  .escape-page .stat-grid{
    grid-template-columns:1fr 1fr;
    gap:10px;
    margin-top:20px;
  }
  .escape-page .stat-card{
    padding:16px;
  }
  .escape-page .stat-card h2{
    font-size:22px;
    line-height:28px;
  }
  .escape-page .stat-card p{
    font-size:14.5px;
    line-height:21px;
  }

  /* Fire Pits: two concise rental options fit cleanly side by side */
  .fire-page .feature-media{
    height:265px;
    margin-top:20px;
  }
  .fire-page .rentals-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
  }
  .fire-page .rental-card{
    padding:16px 14px;
  }
  .fire-page .rental-card h2{
    font-size:19px;
    line-height:25px;
  }
  .fire-page .rental-card .rental-price{
    font-size:27px;
    line-height:34px;
  }
  .fire-page .rental-card .rental-detail{
    font-size:14px;
    line-height:21px;
  }

  /* Pricing: keep the requested two-column compact groups; enlarge actual reading text */
  .pricing-page .free-access{
    margin-top:20px;
    padding:18px;
  }
  .pricing-page .free-access .kicker{
    font-size:12px;
    line-height:18px;
  }
  .pricing-page .free-access h2{
    font-size:26px;
    line-height:33px;
  }
  .pricing-page .free-access p:last-child{
    margin-top:7px;
    font-size:15.5px;
    line-height:23px;
  }
  .pricing-page .pricing-section{
    margin-top:30px;
  }
  .pricing-page .pricing-banner{
    padding:17px;
  }
  .pricing-page .pricing-banner .eyebrow{
    font-size:11.5px;
    line-height:18px;
  }
  .pricing-page .pricing-banner h2{
    font-size:22px;
    line-height:29px;
  }
  .pricing-page .pricing-banner p:last-child{
    font-size:15px;
    line-height:22px;
  }
  .pricing-page .price-layout{
    gap:12px;
  }
  .pricing-page .price-card{
    margin-top:12px;
  }
  .pricing-page .price-card-head{
    padding:13px 15px;
    gap:10px;
  }
  .pricing-page .price-card-head h3{
    font-size:18.5px;
    line-height:25px;
  }
  .pricing-page .price-card-head .price{
    font-size:24px;
    line-height:30px;
  }
  .pricing-page .price-card-content{
    padding:15px;
    font-size:15.5px;
    line-height:23px;
  }
  .pricing-page .price-card-content li{
    margin:4px 0;
    font-size:15px;
    line-height:22px;
  }
  .pricing-page .price-card-content .button-small{
    min-height:40px;
    padding:9px 13px;
    font-size:12.5px;
  }
  .pricing-page .pricing-subtitle{
    margin-top:28px;
    font-size:24px;
    line-height:31px;
  }
  .pricing-page .pricing-subtitle+p{
    font-size:15px;
    line-height:22px;
  }
  .pricing-page .price-grid[data-price-group="singles"],
  .pricing-page .price-grid[data-price-group="again"]{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:14px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card,
  .pricing-page .price-grid[data-price-group="again"] .price-card{
    margin-top:0;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head{
    min-height:0;
    padding:12px;
    gap:4px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head h3,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head h3{
    font-size:16px;
    line-height:22px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head .price,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head .price{
    font-size:24px;
    line-height:29px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-content,
  .pricing-page .price-grid[data-price-group="again"] .price-card-content{
    padding:12px;
    font-size:14.5px;
    line-height:21px;
  }
  .pricing-page .discount-grid{
    grid-template-columns:1fr;
    gap:10px;
    margin-top:20px;
  }
  .pricing-page .discount-card{
    padding:18px;
  }
  .pricing-page .discount-card h3{
    font-size:20px;
    line-height:27px;
  }
  .pricing-page .discount-card .discount-price{
    font-size:30px;
    line-height:36px;
  }
  .pricing-page .discount-card p:last-child{
    font-size:15px;
    line-height:22px;
  }
  .pricing-page .price-layout-combo{
    grid-template-columns:1fr;
  }
  .pricing-page .price-layout-combo .price-card{
    min-height:0;
  }
  .pricing-page .pricing-footer-note{
    margin-top:26px;
    font-size:14.5px;
    line-height:22px;
  }
  .pricing-page .page-actions{
    grid-template-columns:1fr 1fr;
  }
  .pricing-page .page-actions>*:last-child{
    grid-column:1/-1;
  }

  /* Employment */
  .employment-page .job-grid{
    gap:14px;
    margin-top:22px;
  }
  .employment-page .job-card{
    padding:20px;
  }
  .employment-page .job-card .job-number{
    font-size:28px;
    line-height:34px;
  }
  .employment-page .job-card h2{
    margin-top:4px;
    font-size:24px;
    line-height:31px;
  }
  .employment-page .job-description{
    font-size:15.5px;
    line-height:23px;
  }
  .employment-page .job-fair{
    font-size:14.5px;
    line-height:22px;
  }
  .employment-page .job-card .btn{
    width:100%;
    min-height:44px;
    font-size:13px;
    padding:10px 14px;
  }

  /* Footer: retain useful two-column navigation on phones */
  footer{
    padding:28px 16px 18px;
  }
  .footer-grid{
    grid-template-columns:1fr 1fr;
    gap:20px 16px;
  }
  .footer-grid>div:first-child{
    grid-column:1/-1;
  }
  .footer-name{
    font-size:20px;
    line-height:27px;
  }
  footer a{
    font-size:14.5px;
    line-height:22px;
  }
  .footer-note{
    font-size:14px;
    line-height:21px;
  }
  .footer-label{
    font-size:11.5px;
  }
  .footer-bar{
    margin-top:20px;
    font-size:10.5px;
    line-height:17px;
    letter-spacing:.12em;
  }
}


/* CHANGE 16 — Mobile Day and Night two-column activities */
@media (max-width:600px){
  /* Day Activities — efficient two-column phone grid */
  .day-page .activities-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:20px;
  }
  .day-page .activity-card{
    min-width:0;
  }
  .day-page .activity-card .media-frame{
    height:128px;
  }
  .day-page .white-card .body{
    padding:13px 12px 14px;
  }
  .day-page .activity-card h2{
    font-size:18px;
    line-height:24px;
  }
  .day-page .activity-card .body>p{
    margin-top:6px;
    font-size:13.5px;
    line-height:20px;
  }
  .day-page .green-badge{
    display:block;
    width:max-content;
    max-width:100%;
    margin-top:4px;
    font-size:8px;
    line-height:12px;
  }
  .day-page .activity-card .btn{
    width:100%;
    min-height:38px;
    padding:8px 9px;
    font-size:11.5px;
    white-space:normal;
    text-align:center;
  }

  /* Night Activities — compact two-column phone cards */
  body[data-page="night"] .attractions-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:22px;
  }
  body[data-page="night"] .haunt-card{
    min-width:0;
    border-radius:14px;
  }
  body[data-page="night"] .haunt-card .media-frame{
    height:145px;
  }
  body[data-page="night"] .haunt-body{
    padding:14px 12px 15px;
  }
  body[data-page="night"] .haunt-logo-slot{
    height:68px;
    margin:0 0 10px;
  }
  body[data-page="night"] .haunt-logo-slot img{
    width:92%;
    max-height:68px;
  }
  body[data-page="night"] .haunt-eyebrow{
    font-size:10.5px;
    line-height:16px;
  }
  body[data-page="night"] .haunt-body h2{
    font-size:18px;
    line-height:23px;
    margin-top:3px;
  }
  body[data-page="night"] .haunt-hours{
    margin-top:7px;
    font-size:12.5px;
    line-height:18px;
  }
  body[data-page="night"] .haunt-detail{
    margin-top:4px;
    font-size:11.5px;
    line-height:17px;
  }
  body[data-page="night"] .haunt-description{
    display:none;
  }
  body[data-page="night"] .haunt-body>.btn{
    width:100%;
    min-height:38px;
    margin-top:12px;
    padding:8px 8px;
    font-size:11px;
    line-height:16px;
    white-space:normal;
    text-align:center;
  }
}


/* CHANGE 17 — Employment mobile column layout */
@media (max-width:600px){
  .employment-page .job-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:12px;
    margin-top:20px;
    align-items:stretch;
  }

  .employment-page .job-card{
    min-width:0;
    padding:16px 14px;
    display:flex;
    flex-direction:column;
  }

  .employment-page .job-card:nth-child(3){
    grid-column:1 / -1;
  }

  .employment-page .job-card .job-number{
    font-size:24px;
    line-height:29px;
  }

  .employment-page .job-card h2{
    margin-top:3px;
    font-size:19px;
    line-height:25px;
  }

  .employment-page .job-description{
    margin-top:7px;
    font-size:13.5px;
    line-height:20px;
  }

  .employment-page .job-fair{
    margin-top:7px;
    font-size:13px;
    line-height:19px;
    min-height:0;
  }

  .employment-page .job-card .btn{
    width:100%;
    min-height:38px;
    padding:8px 10px;
    margin-top:auto;
    font-size:11.5px;
    white-space:normal;
    text-align:center;
  }

  .employment-page .job-card:nth-child(3){
    padding:17px 16px;
  }

  .employment-page .job-card:nth-child(3) h2{
    font-size:22px;
    line-height:28px;
  }

  .employment-page .job-card:nth-child(3) .job-description,
  .employment-page .job-card:nth-child(3) .job-fair{
    font-size:14.5px;
    line-height:21px;
  }
}


/* CHANGE 18 — Hours mobile summary organization */
@media (max-width:600px){
  .hours-page .summary{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
  }

  .hours-page .summary>.panel{
    min-width:0;
    border-radius:14px;
  }

  .hours-page .summary>.final-card{
    grid-column:1 / -1;
    margin-top:0;
    border-radius:14px;
  }

  .hours-page .summary .pad{
    padding:15px 13px 13px;
  }

  .hours-page .summary .eyebrow{
    font-size:9.5px;
    line-height:14px;
    letter-spacing:.14em;
  }

  .hours-page .summary .panel h2{
    margin-top:2px;
    font-size:16.5px;
    line-height:22px;
  }

  .hours-page .summary .hours-time{
    margin-top:3px;
    font-size:25px;
    line-height:30px;
  }

  .hours-page .summary .hours-detail{
    margin-top:5px;
    font-size:12.5px;
    line-height:18px;
  }

  .hours-page .summary .panel-foot{
    min-height:34px;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:6px 8px;
    font-size:9.5px;
    line-height:14px;
    letter-spacing:.08em;
  }

  .hours-page .summary>.final-card{
    padding:16px 17px;
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:16px;
    row-gap:2px;
    align-items:center;
  }

  .hours-page .summary>.final-card .eyebrow{
    grid-column:1 / -1;
  }

  .hours-page .summary>.final-card .final-dates{
    grid-column:1;
    grid-row:2 / span 2;
    font-size:21px;
    line-height:27px;
    white-space:nowrap;
  }

  .hours-page .summary>.final-card h2{
    grid-column:2;
    grid-row:2;
    margin-top:0;
    font-size:20px;
    line-height:25px;
  }

  .hours-page .summary>.final-card .final-description{
    grid-column:2;
    grid-row:3;
    margin-top:0;
    font-size:12.5px;
    line-height:18px;
  }
}


/* CHANGE 19 — Hours mobile tap-to-switch schedules */
.hours-mobile-schedule{display:none}
@media (max-width:600px){
  .hours-page .schedule-card .table-scroll{
    display:none;
  }

  .hours-page .hours-mobile-schedule{
    display:block;
    background:var(--paper);
  }

  .hours-page .hours-mobile-tabs{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:0;
    border-top:1px solid var(--cream-dark);
    border-bottom:1px solid var(--cream-dark);
    background:#f7f0e4;
  }

  .hours-page .hours-mobile-tabs button{
    min-width:0;
    min-height:48px;
    border:0;
    border-right:1px solid var(--cream-dark);
    background:transparent;
    color:var(--muted);
    padding:8px 5px;
    font:inherit;
    font-size:11.5px;
    line-height:15px;
    font-weight:800;
    text-align:center;
  }

  .hours-page .hours-mobile-tabs button:last-child{
    border-right:0;
  }

  .hours-page .schedule-card.day .hours-mobile-tabs button[aria-selected="true"]{
    background:var(--forest);
    color:var(--paper);
  }

  .hours-page .schedule-card.night .hours-mobile-tabs button[aria-selected="true"]{
    background:var(--burgundy);
    color:var(--paper);
  }

  .hours-page .schedule-card.final .hours-mobile-tabs button[aria-selected="true"]{
    background:var(--ink);
    color:var(--gold);
  }

  .hours-page .hours-mobile-panel[hidden]{
    display:none;
  }

  .hours-page .hours-mobile-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:12px;
    align-items:center;
    min-height:58px;
    padding:11px 14px;
    border-bottom:1px solid var(--cream-dark);
  }

  .hours-page .hours-mobile-row:nth-child(even){
    background:#faf6ed;
  }

  .hours-page .hours-mobile-name{
    min-width:0;
    font-size:15px;
    line-height:20px;
    font-weight:800;
    color:var(--ink);
  }

  .hours-page .hours-mobile-value{
    display:flex;
    flex-direction:column;
    align-items:flex-end;
    gap:4px;
    text-align:right;
  }

  .hours-page .hours-mobile-value .pill{
    font-size:12px;
    line-height:18px;
    padding:4px 9px;
  }

  .hours-page .hours-mobile-value .hours-cell-note{
    margin:0;
    max-width:110px;
    font-size:10px;
    line-height:14px;
    white-space:normal;
    text-align:right;
  }

  .hours-page .schedule-card.final .hours-mobile-tabs{
    border-top:1px solid #5a4435;
  }
}


/* CHANGE 20 — Hours mobile note-card readability */
@media (max-width:600px){
  .hours-page .highlights,
  .hours-page .highlights.three{
    gap:11px;
    margin-top:16px;
  }

  .hours-page .highlights article{
    min-height:150px;
    padding:20px 14px;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
  }

  .hours-page .highlights h3{
    font-size:18px;
    line-height:25px;
  }

  .hours-page .highlights p{
    margin-top:9px;
    font-size:16.5px;
    line-height:24px;
  }

  .hours-page .highlights.three article:last-child{
    min-height:124px;
    padding-left:20px;
    padding-right:20px;
  }

  .hours-page .footnote{
    margin-top:15px;
    font-size:14.5px;
    line-height:21px;
  }
}


/* CHANGE 21 — Hours mobile prominent season notice */
@media (max-width:600px){
  .hours-page .notice{
    margin-top:16px;
    padding:20px 18px 18px;
    background:var(--gold);
    color:var(--deep);
    border:2px solid var(--deep);
    border-radius:16px;
    box-shadow:0 10px 24px rgba(74,16,16,.20);
    text-align:center;
  }

  .hours-page .notice-title{
    font-size:19px;
    line-height:25px;
    font-weight:900;
    letter-spacing:.01em;
    text-transform:uppercase;
  }

  .hours-page .notice-times{
    margin-top:8px;
    font-size:17px;
    line-height:25px;
    font-weight:800;
  }

  .hours-page .notice-exception{
    display:inline-block;
    margin-top:12px;
    padding:6px 11px;
    background:var(--deep);
    color:var(--gold);
    border-radius:999px;
    font-size:13px;
    line-height:18px;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
  }
}


/* CHANGE 22 — Hours four-card season notice */
.notice-day-grid{display:none}

@media (min-width:601px){
  .hours-page .notice{
    margin-top:22px;
    padding:28px 28px 24px;
    background:var(--gold);
    color:var(--deep);
    border:2px solid var(--deep);
    border-radius:18px;
    box-shadow:0 12px 28px rgba(74,16,16,.16);
    text-align:center;
  }

  .hours-page .notice-title{
    font-size:26px;
    line-height:34px;
    font-weight:900;
    letter-spacing:.015em;
    text-transform:uppercase;
  }

  .hours-page .notice-times{
    display:none;
  }

  .hours-page .notice-day-grid{
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
    margin-top:20px;
  }

  .hours-page .notice-day-card{
    min-width:0;
    min-height:126px;
    padding:20px 16px;
    border-radius:16px;
    background:var(--paper);
    border:1px solid rgba(74,16,16,.14);
    box-shadow:0 6px 16px rgba(74,16,16,.11);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
  }

  .hours-page .notice-day-label{
    color:var(--burgundy);
    font-size:19px;
    line-height:25px;
    font-weight:900;
    letter-spacing:.035em;
    text-transform:uppercase;
  }

  .hours-page .notice-day-time{
    margin-top:6px;
    color:var(--forest-deep);
    font-size:24px;
    line-height:31px;
    font-weight:900;
  }

  .hours-page .notice-day-card-pumpkin .notice-day-time{
    font-size:19px;
    line-height:25px;
    text-transform:uppercase;
  }

  .hours-page .notice-exception{
    display:inline-block;
    margin-top:20px;
    padding:8px 16px;
    background:var(--deep);
    color:var(--gold);
    border-radius:999px;
    font-size:15px;
    line-height:20px;
    font-weight:900;
    letter-spacing:.07em;
    text-transform:uppercase;
  }
}

@media (max-width:600px){
  .hours-page .notice{
    padding:18px 16px 16px;
  }

  .hours-page .notice-title{
    font-size:18.5px;
    line-height:24px;
    margin-bottom:14px;
  }

  .hours-page .notice-times{
    display:none;
  }

  .hours-page .notice-day-grid{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
  }

  .hours-page .notice-day-card{
    min-width:0;
    min-height:96px;
    padding:14px 10px 12px;
    border-radius:14px;
    background:var(--paper);
    border:1px solid rgba(74,16,16,.12);
    box-shadow:0 5px 14px rgba(74,16,16,.10);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
  }

  .hours-page .notice-day-label{
    display:block;
    color:var(--burgundy);
    font-size:15px;
    line-height:20px;
    font-weight:900;
    letter-spacing:.025em;
    text-transform:uppercase;
  }

  .hours-page .notice-day-time{
    display:block;
    margin-top:4px;
    color:var(--forest-deep);
    font-size:19px;
    line-height:24px;
    font-weight:900;
  }

  .hours-page .notice-day-card-pumpkin .notice-day-time{
    font-size:15px;
    line-height:20px;
    text-transform:uppercase;
  }

  .hours-page .notice-exception{
    margin-top:12px;
  }
}


/* CHANGE 23 — Pricing mobile structural redesign */
@media (max-width:600px){
  /* Pricing page rhythm */
  .pricing-page{
    padding-top:24px;
    padding-bottom:38px;
  }

  .pricing-page .page-title{
    font-size:32px;
    line-height:1.12;
  }

  .pricing-page .page-lead{
    margin-top:9px;
    font-size:15.5px;
    line-height:23px;
  }

  /* Free-access callout: prominent but compact */
  .pricing-page .free-access{
    margin-top:18px;
    padding:16px 17px;
    border:1px solid rgba(61,90,42,.16);
    box-shadow:0 5px 14px rgba(42,26,18,.07);
  }

  .pricing-page .free-access .kicker{
    font-size:11px;
    line-height:16px;
    letter-spacing:.13em;
  }

  .pricing-page .free-access h2{
    margin-top:2px;
    font-size:24px;
    line-height:30px;
  }

  .pricing-page .free-access p:last-child{
    margin-top:6px;
    font-size:14.5px;
    line-height:21px;
  }

  /* Strong section banners */
  .pricing-page .pricing-section{
    margin-top:28px;
  }

  .pricing-page .pricing-banner{
    padding:15px 16px;
    border-radius:14px;
  }

  .pricing-page .pricing-banner .eyebrow{
    font-size:11px;
    line-height:16px;
    letter-spacing:.13em;
  }

  .pricing-page .pricing-banner h2{
    margin-top:3px;
    font-size:21px;
    line-height:27px;
  }

  .pricing-page .pricing-banner p:last-child{
    margin-top:5px;
    font-size:14px;
    line-height:20px;
  }

  /* Detailed daytime admission cards stay full-width */
  .pricing-page .price-layout-day{
    display:grid;
    grid-template-columns:1fr;
    gap:12px;
    margin-top:12px;
  }

  .pricing-page .price-layout-day .price-card{
    margin-top:0;
  }

  .pricing-page .price-layout-day .price-card-head{
    min-height:0;
    padding:13px 15px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:center;
    gap:10px;
  }

  .pricing-page .price-layout-day .price-card-head h3{
    font-size:19px;
    line-height:25px;
  }

  .pricing-page .price-layout-day .price-card-head .price{
    font-size:27px;
    line-height:32px;
  }

  .pricing-page .price-layout-day .price-card-content{
    padding:15px;
    font-size:15px;
    line-height:22px;
  }

  .pricing-page .price-layout-day .price-card-content ul{
    margin:8px 0 10px;
    padding-left:18px;
  }

  .pricing-page .price-layout-day .price-card-content li{
    margin:3px 0;
    font-size:14.5px;
    line-height:21px;
  }

  .pricing-page .price-layout-day .button-small{
    width:100%;
    min-height:40px;
    font-size:12px;
  }

  /* Subsections */
  .pricing-page .pricing-subtitle{
    margin-top:26px;
    font-size:23px;
    line-height:29px;
  }

  .pricing-page .pricing-subtitle+p{
    margin-top:3px;
    font-size:14.5px;
    line-height:21px;
  }

  /* Singles and Try Again: compact two-column tiles */
  .pricing-page .price-grid[data-price-group="singles"],
  .pricing-page .price-grid[data-price-group="again"]{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }

  .pricing-page .price-grid[data-price-group="singles"] .price-card,
  .pricing-page .price-grid[data-price-group="again"] .price-card{
    min-height:0;
    margin-top:0;
    border-radius:12px;
  }

  .pricing-page .price-grid[data-price-group="singles"] .price-card-head,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head{
    min-height:0;
    padding:11px;
    display:block;
  }

  .pricing-page .price-grid[data-price-group="singles"] .price-card-head h3,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head h3{
    font-size:15.5px;
    line-height:20px;
  }

  .pricing-page .price-grid[data-price-group="singles"] .price-card-head .price,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head .price{
    margin-top:5px;
    font-size:25px;
    line-height:29px;
  }

  .pricing-page .price-grid[data-price-group="singles"] .price-card-content,
  .pricing-page .price-grid[data-price-group="again"] .price-card-content{
    padding:11px;
    font-size:13.5px;
    line-height:19px;
  }

  .pricing-page .price-grid[data-price-group="singles"] .button-small,
  .pricing-page .price-grid[data-price-group="again"] .button-small{
    width:100%;
    min-height:36px;
    padding:7px 7px;
    font-size:10.5px;
    line-height:15px;
    white-space:normal;
    text-align:center;
  }

  /* Discounts: short cards belong side-by-side */
  .pricing-page .discount-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
  }

  .pricing-page .discount-card{
    min-width:0;
    padding:15px 13px;
  }

  .pricing-page .discount-card h3{
    font-size:17px;
    line-height:23px;
  }

  .pricing-page .discount-card .discount-price{
    margin-top:3px;
    font-size:28px;
    line-height:33px;
  }

  .pricing-page .discount-card p:last-child{
    margin-top:4px;
    font-size:13.5px;
    line-height:20px;
  }

  /* Night: two columns for quick comparison */
  .pricing-page .price-layout-night{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }

  .pricing-page .price-layout-night .price-card{
    min-width:0;
    margin-top:0;
    border-radius:12px;
  }

  .pricing-page .price-layout-night .price-card-head{
    min-height:0;
    padding:11px;
    display:block;
  }

  .pricing-page .price-layout-night .price-card-head h3{
    font-size:15.5px;
    line-height:20px;
  }

  .pricing-page .price-layout-night .price-card-head .price{
    margin-top:5px;
    font-size:25px;
    line-height:29px;
  }

  .pricing-page .price-layout-night .price-card-content{
    padding:11px;
    font-size:13.5px;
    line-height:20px;
  }

  .pricing-page .price-layout-night .button-small{
    width:100%;
    min-height:36px;
    padding:7px 7px;
    margin-top:9px;
    font-size:10.5px;
    line-height:15px;
    white-space:normal;
    text-align:center;
  }

  /* VIP full width; Double Dare + Triple Threat side-by-side */
  .pricing-page .price-layout-combo{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }

  .pricing-page .price-layout-combo>.price-card{
    min-height:0;
    min-width:0;
    margin-top:0;
    border-radius:12px;
  }

  .pricing-page .price-layout-combo>.price-card:first-child{
    grid-column:1/-1;
  }

  .pricing-page .price-layout-combo .price-card-head{
    min-height:0;
    padding:12px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    align-items:start;
    gap:8px;
  }

  .pricing-page .price-layout-combo .price-card-head h3{
    font-size:16px;
    line-height:21px;
  }

  .pricing-page .price-layout-combo .price-card-head .price{
    font-size:24px;
    line-height:29px;
  }

  .pricing-page .price-layout-combo .price-card-content{
    padding:12px;
    font-size:13.5px;
    line-height:20px;
  }

  .pricing-page .price-layout-combo>.price-card:first-child .price-card-content{
    font-size:14.5px;
    line-height:21px;
  }

  .pricing-page .price-layout-combo .price-card-content li{
    font-size:13.5px;
    line-height:20px;
    margin:3px 0;
  }

  .pricing-page .price-layout-combo .button-small{
    width:100%;
    min-height:36px;
    padding:7px 7px;
    font-size:10.5px;
    line-height:15px;
    white-space:normal;
    text-align:center;
  }

  /* Footer note + page actions */
  .pricing-page .pricing-footer-note{
    margin-top:24px;
    font-size:13.5px;
    line-height:20px;
  }

  .pricing-page .page-actions{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
    margin-top:18px;
  }

  .pricing-page .page-actions .btn{
    width:100%;
    min-height:40px;
    padding:8px 9px;
    font-size:11.5px;
  }

  .pricing-page .page-actions>*:first-child{
    grid-column:1/-1;
    min-height:44px;
    font-size:12.5px;
  }

  .pricing-page .page-actions>*:last-child{
    grid-column:auto;
  }
}


/* CHANGE 24 — Pricing mobile full visual hierarchy pass */
@media (max-width:600px){
  /* Overall page spacing */
  .pricing-page{
    padding-top:22px;
    padding-bottom:36px;
  }
  .pricing-page .page-title{
    text-align:center;
    font-size:33px;
    line-height:1.12;
  }
  .pricing-page .page-lead{
    max-width:36rem;
    margin:10px auto 0;
    text-align:center;
    font-size:15.5px;
    line-height:23px;
  }

  /* Free access card gets a cleaner hierarchy */
  .pricing-page .free-access{
    padding:17px 16px;
    border-radius:14px;
    text-align:center;
    border:1px solid rgba(61,90,42,.18);
    box-shadow:0 6px 16px rgba(42,26,18,.08);
  }
  .pricing-page .free-access .kicker{
    color:var(--forest);
    font-size:11.5px;
    line-height:17px;
    letter-spacing:.14em;
  }
  .pricing-page .free-access h2{
    margin-top:3px;
    color:var(--burgundy);
    font-size:25px;
    line-height:31px;
  }
  .pricing-page .free-access p:last-child{
    margin:7px auto 0;
    max-width:34rem;
    font-size:14.5px;
    line-height:21px;
  }

  /* Main Day / Night banners */
  .pricing-page .pricing-banner{
    text-align:center;
    padding:17px 15px;
    border-radius:15px;
    box-shadow:0 7px 18px rgba(42,26,18,.10);
  }
  .pricing-page .pricing-banner .eyebrow{
    font-size:11.5px;
    line-height:17px;
    letter-spacing:.15em;
  }
  .pricing-page .pricing-banner h2{
    margin-top:4px;
    font-size:22px;
    line-height:28px;
  }
  .pricing-page .pricing-banner p:last-child{
    margin:6px auto 0;
    max-width:32rem;
    font-size:14.5px;
    line-height:21px;
  }

  /* Day subsection banners: centered green title + light green support panel */
  .pricing-page #day-pricing .pricing-subtitle{
    margin:26px 0 0;
    padding:13px 14px 11px;
    background:var(--forest);
    color:var(--paper);
    border-radius:14px 14px 0 0;
    box-shadow:0 5px 14px rgba(42,63,28,.14);
    text-align:center;
    font-size:24px;
    line-height:30px;
    font-variant:normal;
    text-transform:uppercase;
    letter-spacing:.015em;
  }
  .pricing-page #day-pricing .pricing-subtitle+p{
    margin:0;
    padding:10px 14px 12px;
    background:#eef3e7;
    color:var(--forest-deep);
    border:1px solid #d8e2cd;
    border-top:0;
    border-radius:0 0 14px 14px;
    text-align:center;
    font-size:14.5px;
    line-height:21px;
    box-shadow:0 5px 14px rgba(42,63,28,.07);
  }

  /* Night / combo section hierarchy stays burgundy */
  .pricing-page #night-pricing .pricing-banner{
    background:var(--burgundy);
    color:var(--paper);
  }
  .pricing-page #combo-pricing{
    margin-top:30px;
  }
  .pricing-page #combo-pricing>.pricing-subtitle{
    margin:0;
    padding:14px 14px 12px;
    background:var(--burgundy);
    color:var(--paper);
    border-radius:14px;
    text-align:center;
    font-size:24px;
    line-height:30px;
    font-variant:normal;
    text-transform:uppercase;
    letter-spacing:.015em;
    box-shadow:0 7px 18px rgba(107,28,28,.16);
  }

  /* All pricing cards: stronger edges and cleaner density */
  .pricing-page .price-card{
    border:1px solid rgba(42,26,18,.10);
    box-shadow:0 5px 14px rgba(42,26,18,.08);
  }

  /* Day detailed cards */
  .pricing-page .price-layout-day{
    gap:11px;
  }
  .pricing-page .price-layout-day .price-card-head{
    background:var(--forest);
    color:var(--paper);
  }
  .pricing-page .price-layout-day .price-card-head h3{
    font-size:19px;
    line-height:24px;
  }
  .pricing-page .price-layout-day .price-card-head .price{
    color:var(--gold);
    font-size:28px;
    line-height:33px;
  }
  .pricing-page .price-layout-day .price-card-content{
    padding:14px 15px 15px;
    font-size:15px;
    line-height:22px;
  }
  .pricing-page .price-layout-day .price-card-content li{
    font-size:14.5px;
    line-height:21px;
  }

  /* Day Singles + Try Again compact cards */
  .pricing-page .price-grid[data-price-group="singles"],
  .pricing-page .price-grid[data-price-group="again"]{
    gap:10px;
    margin-top:12px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head{
    background:var(--forest);
    color:var(--paper);
    padding:12px 11px 11px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head h3,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head h3{
    font-size:16px;
    line-height:21px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-head .price,
  .pricing-page .price-grid[data-price-group="again"] .price-card-head .price{
    color:var(--gold);
    font-size:26px;
    line-height:30px;
  }
  .pricing-page .price-grid[data-price-group="singles"] .price-card-content,
  .pricing-page .price-grid[data-price-group="again"] .price-card-content{
    padding:11px;
    font-size:13.5px;
    line-height:19px;
  }

  /* Discounts become coordinated two-column gold cards */
  .pricing-page .discount-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:18px;
  }
  .pricing-page .discount-card{
    min-width:0;
    padding:15px 12px;
    border:1px solid #d8bf72;
    border-radius:13px;
    background:#f4e6b7;
    text-align:center;
    box-shadow:0 5px 13px rgba(93,66,17,.08);
  }
  .pricing-page .discount-card h3{
    font-size:17px;
    line-height:22px;
  }
  .pricing-page .discount-card .discount-price{
    margin-top:4px;
    color:var(--burgundy);
    font-size:28px;
    line-height:33px;
  }
  .pricing-page .discount-card p:last-child{
    margin-top:5px;
    font-size:13.5px;
    line-height:19px;
  }

  /* Night cards: two-column comparison with clear red headers */
  .pricing-page .price-layout-night{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }
  .pricing-page .price-layout-night .price-card{
    min-width:0;
    margin-top:0;
  }
  .pricing-page .price-layout-night .price-card-head{
    background:var(--burgundy);
    color:var(--paper);
    padding:12px 11px 11px;
    display:block;
  }
  .pricing-page .price-layout-night .price-card-head h3{
    font-size:16px;
    line-height:21px;
  }
  .pricing-page .price-layout-night .price-card-head .price{
    margin-top:5px;
    color:var(--gold);
    font-size:26px;
    line-height:30px;
  }
  .pricing-page .price-layout-night .price-card-content{
    padding:11px;
    font-size:13.5px;
    line-height:20px;
  }
  .pricing-page .price-layout-night .button-small{
    width:100%;
    min-height:37px;
    margin-top:9px;
    padding:7px 8px;
    font-size:10.5px;
    line-height:15px;
    white-space:normal;
    text-align:center;
  }

  /* VIP full-width, combo pair underneath */
  .pricing-page .price-layout-combo{
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:10px;
    margin-top:12px;
  }
  .pricing-page .price-layout-combo>.price-card:first-child{
    grid-column:1/-1;
  }
  .pricing-page .price-layout-combo .price-card-head{
    background:var(--burgundy);
    color:var(--paper);
  }
  .pricing-page .price-layout-combo .price-card-head h3{
    font-size:16px;
    line-height:21px;
  }
  .pricing-page .price-layout-combo .price-card-head .price{
    color:var(--gold);
    font-size:25px;
    line-height:30px;
  }
  .pricing-page .price-layout-combo>.price-card:first-child .price-card-head h3{
    font-size:18px;
    line-height:24px;
  }
  .pricing-page .price-layout-combo>.price-card:first-child .price-card-head .price{
    font-size:28px;
    line-height:33px;
  }
  .pricing-page .price-layout-combo .price-card-content{
    padding:11px;
    font-size:13.5px;
    line-height:20px;
  }
  .pricing-page .price-layout-combo>.price-card:first-child .price-card-content{
    padding:14px;
    font-size:14.5px;
    line-height:21px;
  }

  /* Final note + CTA hierarchy */
  .pricing-page .pricing-footer-note{
    margin:23px 0 0;
    padding:12px 13px;
    background:#eee4d4;
    border-radius:12px;
    text-align:center;
    font-size:13.5px;
    line-height:20px;
  }
  .pricing-page .page-actions{
    margin-top:16px;
    grid-template-columns:repeat(2,minmax(0,1fr));
    gap:9px;
  }
  .pricing-page .page-actions .btn{
    min-height:40px;
    font-size:11.5px;
  }
  .pricing-page .page-actions>*:first-child{
    grid-column:1/-1;
    min-height:45px;
    font-size:12.5px;
  }
}


/* CHANGE 25 — Fix mobile Nightmare on 9 hero logo crop */
@media (max-width:600px){
  body[data-page="night"] .night-brand-window{
    position:relative;
    width:min(100%,560px);
    max-width:560px;
    height:auto;
    aspect-ratio:auto;
    overflow:visible;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
  }

  body[data-page="night"] .night-brand-window>.night-brand-logo{
    position:static;
    display:block;
    width:100%;
    max-width:560px;
    height:auto;
    max-height:none;
    margin:0 auto;
    object-fit:contain;
    object-position:center;
  }
}


/* CHANGE 26 — Hours mobile nighttime color scheme */
@media (max-width:600px){
  /* Night schedule should read as Night, not inherit Day green */
  .hours-page .schedule-card.night .table-banner{
    background:var(--burgundy);
    color:var(--paper);
    border-color:#7f302c;
    box-shadow:0 7px 18px rgba(74,16,16,.14);
  }

  .hours-page .schedule-card.night .table-banner .display{
    color:var(--gold);
  }

  .hours-page .schedule-card.night .table-banner p+p{
    color:var(--paper);
  }

  .hours-page .schedule-card.night .hours-mobile-tabs{
    background:#f6ece7;
    border-color:#e3cfc5;
  }

  .hours-page .schedule-card.night .hours-mobile-tabs button{
    color:var(--deep);
    border-right-color:#e3cfc5;
  }

  .hours-page .schedule-card.night .hours-mobile-tabs button[aria-selected="true"]{
    background:var(--burgundy);
    color:var(--gold);
  }

  .hours-page .schedule-card.night .hours-mobile-value .pill.open{
    background:var(--burgundy);
    color:var(--gold);
  }

  .hours-page .schedule-card.night .hours-mobile-value .pill.partial{
    background:#f3dfaa;
    color:var(--deep);
  }

  .hours-page .schedule-card.night .hours-mobile-value .pill.closed{
    background:#f6e7e2;
    color:var(--burgundy);
  }

  .hours-page .schedule-card.night .hours-mobile-name{
    color:var(--deep);
  }
}
