
/* readable menu: solid white pill */
header .glass{background:rgba(255,255,255,.96)!important;backdrop-filter:saturate(1.4) blur(14px);-webkit-backdrop-filter:saturate(1.4) blur(14px);border:1px solid rgba(0,0,0,.06)}
header nav a:not([href$="#booking"]){color:oklch(13% .01 270)!important;font-weight:500}
header nav a[href$="#booking"]{color:#fff!important}

/* ---- test-build additions (Claude) ---- */
[style*="opacity: 0"]{opacity:1!important;transform:none!important}
.cpbx-hero{position:relative;background:oklch(13% .01 270);color:#fff;overflow:hidden;height:calc(100svh);min-height:640px;max-height:980px}
.cpbx-hero .ph{position:absolute;top:0;right:0;bottom:0;width:55%}
.cpbx-hero .ph img{width:100%;height:100%;object-fit:cover;object-position:50% 28%;filter:brightness(1.12) contrast(1.05) saturate(1.15)}
.cpbx-hero .ph:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,oklch(13% .01 270) 0%,oklch(13% .01 270 / .85) 9%,rgba(10,10,14,.35) 17%,rgba(0,0,0,0) 26%)}
.cpbx-hero .in{position:relative;z-index:2;height:100%;max-width:none;margin:0;padding:104px 2.5rem 48px clamp(24px,6vw,110px);display:flex;align-items:center}
.cpbx-hero .copy{max-width:min(37rem,40vw)}
.cpbx-eyebrow{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.cpbx-hero h1{font-family:var(--font-display);font-weight:700;letter-spacing:-.015em;line-height:1.1;font-size:clamp(2.05rem,3.1vw,2.9rem);margin-top:12px}
.cpbx-rule{display:block;height:3px;width:18rem;border-radius:9999px;margin-top:12px;background:linear-gradient(90deg,#b794f6 0%,#67e8f9 50%,#f0abfc 100%);opacity:.7}
.cpbx-hero p.sub{margin-top:18px;font-size:1.06rem;line-height:1.65;color:rgba(255,255,255,.88);max-width:34rem}
.cpbx-prices{margin-top:24px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.cpbx-prices a{display:flex;justify-content:space-between;align-items:baseline;gap:10px;padding:12px 16px;border-radius:14px;border:1px solid rgba(255,255,255,.22);background:rgba(255,255,255,.07);backdrop-filter:blur(8px);transition:background .2s,border-color .2s}
.cpbx-prices a:hover{background:rgba(255,255,255,.14);border-color:rgba(255,255,255,.45)}
.cpbx-prices span{font-size:.82rem;line-height:1.25;color:rgba(255,255,255,.82)}
.cpbx-prices b{font-family:var(--font-display);font-size:1.2rem;font-weight:700;letter-spacing:-.01em;white-space:nowrap}
.cpbx-prices i{font-style:normal;font-size:.72rem;color:rgba(255,255,255,.6);margin-right:4px}
.cpbx-acts{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}
.cpbx-btn{display:inline-flex;align-items:center;gap:8px;border-radius:9999px;padding:14px 28px;font-size:.875rem;font-weight:600;transition:transform .2s,background .2s}
.cpbx-btn.solid{background:#fff;color:oklch(13% .01 270);box-shadow:0 12px 30px -10px rgba(0,0,0,.5)}.cpbx-btn.solid:hover{transform:scale(1.04)}
.cpbx-btn.glass{border:1px solid rgba(255,255,255,.4);background:rgba(255,255,255,.1);color:#fff;backdrop-filter:blur(10px)}.cpbx-btn.glass:hover{background:rgba(255,255,255,.2)}
.cpbx-note{margin-top:18px;font-size:.84rem;color:rgba(255,255,255,.7)}.cpbx-note a{color:#fff;border-bottom:1px solid rgba(255,255,255,.4)}
.cpbx-stars{color:#fcd34d;letter-spacing:2px;margin-right:8px}
@media (max-width:1100px) and (min-width:861px){.cpbx-hero .copy{max-width:42vw}.cpbx-prices{grid-template-columns:1fr}}
@media (max-width:860px){
 .cpbx-hero .copy{max-width:none}
 .cpbx-hero{height:auto;max-height:none;min-height:0}
 .cpbx-hero .ph{position:relative;top:0;width:100%;height:96vw;max-height:560px}
 .cpbx-hero .ph img{object-position:50% 40%}
 .cpbx-hero .ph:after{background:linear-gradient(180deg,rgba(0,0,0,0) 55%,oklch(13% .01 270) 100%)}
 .cpbx-hero .in{padding:0 1.5rem 44px;margin-top:-40px}
 .cpbx-hero h1{font-size:2.25rem}
}
/* experience card price */
.cpbx-cardprice{margin-top:8px;font-size:.95rem;color:rgba(255,255,255,.92)}.cpbx-cardprice b{font-family:var(--font-display);font-size:1.35rem;font-weight:700;margin-right:6px}
/* borough pricing */
.cpbx-sec{background:oklch(99% 0 0);padding:88px 0 96px}
.cpbx-wrap{max-width:80rem;margin:0 auto;padding:0 1.5rem}
.cpbx-kicker{font-size:11px;letter-spacing:.3em;text-transform:uppercase;color:oklch(13% .01 270 / .5)}
.cpbx-h2{font-family:var(--font-display);font-size:clamp(2.4rem,4.4vw,3.75rem);line-height:1.05;letter-spacing:-.02em;margin-top:16px}
.cpbx-lead{margin-top:16px;max-width:42rem;color:oklch(45% .02 270);font-size:1.05rem;line-height:1.7}
.cpbx-boro{margin-top:48px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
.cpbx-boro a{position:relative;display:block;aspect-ratio:4/5;border-radius:1.5rem;overflow:hidden;background:oklch(96% .005 280);color:#fff}
.cpbx-boro img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 1.4s ease-out}
.cpbx-boro a:hover img{transform:scale(1.08)}
.cpbx-boro a:after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,oklch(13% .01 270 / .88),oklch(13% .01 270 / .15) 55%,transparent)}
.cpbx-boro .t{position:absolute;left:0;right:0;bottom:0;z-index:2;padding:24px}
.cpbx-boro h3{font-family:var(--font-display);font-size:1.7rem;letter-spacing:-.01em;line-height:1.1}
.cpbx-boro .p{margin-top:6px;font-family:var(--font-display);font-size:2rem;font-weight:700}
.cpbx-boro .p small{font-family:var(--font-sans);font-size:.8rem;font-weight:500;opacity:.75;margin-right:4px}
.cpbx-boro .d{margin-top:4px;font-size:.86rem;color:rgba(255,255,255,.78)}
.cpbx-more{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.cpbx-more>div{border:1px solid oklch(92% .005 270);border-radius:1.5rem;padding:26px 28px;background:#fff}
.cpbx-more h4{font-family:var(--font-display);font-size:1.35rem;letter-spacing:-.01em}
.cpbx-more .p{font-family:var(--font-display);font-size:1.6rem;font-weight:700;margin-top:6px}
.cpbx-more p{margin-top:6px;color:oklch(45% .02 270);font-size:.92rem;line-height:1.6}
.cpbx-more ul{margin-top:8px;display:grid;gap:6px;font-size:.92rem;color:oklch(45% .02 270)}
.cpbx-more li{display:flex;justify-content:space-between;gap:12px}.cpbx-more li b{color:oklch(13% .01 270)}
.cpbx-fine{margin-top:22px;font-size:.85rem;color:oklch(45% .02 270)}
@media (max-width:1000px){.cpbx-boro{grid-template-columns:repeat(2,minmax(0,1fr))}.cpbx-more{grid-template-columns:1fr}}
@media (max-width:520px){.cpbx-boro a{aspect-ratio:4/4.4}}
/* mobile menu (static build) */
.cpbx-mpanel{display:none;position:fixed;top:72px;left:16px;right:16px;z-index:60;background:#fff;border-radius:1.5rem;box-shadow:0 20px 50px -10px rgba(0,0,0,.25);padding:14px}
.cpbx-mpanel.open{display:grid}.cpbx-mpanel a{padding:12px 14px;font-size:.95rem}
.cpbx-mpanel a.cta{margin-top:6px;text-align:center;border-radius:9999px;background:oklch(13% .01 270);color:#fff;font-weight:600}
