
/* Carnaby & Oak: restorations and requested bottom-right tilted Gochi overlays.
   Overrides layout only for editorial headings and NEW rails; preserves approved UI interactions. */
body.compact-rhythm main .co-overlay-title{position:relative!important;display:block!important;width:max-content;max-width:100%!important;overflow:visible!important;padding-bottom:clamp(20px,2.6vw,38px)!important;margin-bottom:clamp(8px,1.2vw,18px)!important;text-align:left!important;isolation:isolate}
body.compact-rhythm main .co-overlay-title > .hand{position:absolute!important;z-index:2!important;right:0!important;bottom:0!important;left:auto!important;top:auto!important;display:block!important;width:max-content;max-width:min(88vw,100%);margin:0!important;margin-left:0!important;font-family:'Gochi Hand',cursive!important;font-size:clamp(21px,3.1vw,43px)!important;font-weight:400!important;line-height:.98!important;letter-spacing:0!important;text-align:right!important;color:var(--teal)!important;transform:translate(2%,12%) rotate(-5deg)!important;transform-origin:right center!important;white-space:normal}
body.compact-rhythm main .co-overlay-title.co-long-hand>.hand{font-size:clamp(18px,2.55vw,32px)!important;max-width:95%}
body.compact-rhythm main .wine .co-overlay-title>.hand,body.compact-rhythm main .birthday-shell .co-overlay-title>.hand,body.compact-rhythm main .join-copy .co-overlay-title>.hand{color:var(--yellow)!important}
body.compact-rhythm main .birthday-landing-copy .co-overlay-title>.hand{color:#ef603d!important}
body.compact-rhythm main .co-overlay-title .hand + br{display:none}
/* Same title and body roles everywhere; no new display typefaces or one-off weights. */
body.compact-rhythm main :is(.co-spotlight-head h2,.co-birthday-section-head h2){font-family:'Instrument Serif',serif!important;font-size:var(--co-section-title,clamp(46px,5.2vw,75px))!important;font-weight:400!important;line-height:.91!important;letter-spacing:-.044em!important;color:var(--wine)!important;margin:0!important;text-align:left!important}
body.compact-rhythm main :is(.co-spotlight,.co-birthday-visit,.co-birthday-pricing,.co-birthday-addons,.co-birthday-faq) :is(p,li){font-family:'DM Sans',sans-serif;font-weight:400;line-height:1.45}
body.compact-rhythm .co-spotlight{background:#fffaf1;overflow:hidden}
.co-spotlight-head,.co-birthday-section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin:0 0 18px}
.co-spotlight-head>div,.co-birthday-section-head>div{min-width:0}
.co-spotlight-head .eyebrow,.co-birthday-section-head .eyebrow{display:block;margin-bottom:12px!important}
.co-spotlight-cue,.co-birthday-section-head>p{flex:0 0 200px;font-size:12px;color:var(--wine);text-align:right;margin:0 0 7px}
.co-spotlight-track,.co-birthday-scroll{display:flex;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;scrollbar-width:thin;padding:0 0 15px;scroll-padding-left:1px;}
.co-spotlight-card{flex:0 0 clamp(250px,26vw,345px);scroll-snap-align:start;border-radius:22px;overflow:hidden;position:relative;min-height:clamp(235px,25vw,315px);color:white}
.co-spotlight-card img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.co-spotlight-card:after{content:"";position:absolute;inset:0;background:linear-gradient(transparent 33%,rgba(40,18,29,.74))}
.co-spotlight-card>span{position:absolute;z-index:1;bottom:20px;left:20px;right:20px;display:grid;gap:7px}
.co-spotlight-card strong{font-family:'Instrument Serif',serif;font-size:clamp(34px,3.2vw,45px);font-weight:400;line-height:.94;letter-spacing:-.035em}
.co-spotlight-card small{font-size:13px}
/* Homepage: compact editorial rhythm, keep a glimpse of the next section on desktop. */
body.compact-rhythm main .co-offers .co-section-intro{margin-bottom:20px!important}
body.compact-rhythm main .co-offers .co-offer-image{aspect-ratio:1.65/1}
body.compact-rhythm main .co-offers .co-offer-body{padding:14px 18px 17px}
body.compact-rhythm main .co-offers .co-offer-body p{margin-bottom:10px!important}
body.compact-rhythm main #life-at-the-club .section-head{display:block!important;margin-bottom:14px!important}
body.compact-rhythm main #life-at-the-club .section-head .eyebrow{display:block;margin-bottom:12px!important}
body.compact-rhythm main #life-at-the-club .mood-grid[data-featured]{height:clamp(310px,32vw,410px)!important}
body.compact-rhythm main .co-ways .co-section-intro{margin-bottom:16px!important}
body.compact-rhythm main .co-ways .co-activity-img{aspect-ratio:1.8/1}
/* Birthday: original playful hero and elastic stay intact, compact cards show the next preview. */
body.birthday-page .birthday-landing-hero{min-height:clamp(455px,57svh,560px)}
body.birthday-page .birthday-landing-art{min-height:310px}
body.birthday-page .birthday-section{padding-top:clamp(28px,3vw,40px)!important;padding-bottom:clamp(28px,3vw,40px)!important}
body.birthday-page .birthday-shell{min-height:0;padding:clamp(22px,3.5vw,48px)}
body.birthday-page .birthday-details-head{display:block;margin-bottom:16px!important}
body.birthday-page .birthday-details-head .eyebrow{display:block;margin-bottom:12px!important}
body.birthday-page .birthday-detail-grid article{min-height:155px}
body.birthday-page .birthday-detail-grid h3{margin:14px 0 8px!important}
body.birthday-page main :is(.co-birthday-visit,.co-birthday-pricing,.co-birthday-addons,.co-birthday-faq){overflow:hidden}
body.birthday-page main .co-birthday-visit{background:#f8f0e5}
body.birthday-page main .co-birthday-pricing{background:#fffaf1}
body.birthday-page main .co-birthday-addons{background:#f8ece5}
body.birthday-page main .co-birthday-faq{background:#fffaf1}
.co-birthday-visit-layout{display:grid;grid-template-columns:.55fr 1fr;gap:15px;max-height:310px}
.co-birthday-visit-photo{position:relative;margin:0;overflow:hidden;border-radius:22px;min-height:270px}
.co-birthday-visit-photo img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.co-birthday-visit-photo figcaption{position:absolute;bottom:16px;left:18px;transform:rotate(-5deg);background:var(--yellow);border-radius:999px;padding:10px 15px;font-family:'Gochi Hand',cursive;font-size:21px}
.co-birthday-visit-info{display:grid;grid-template-columns:1fr 1fr;gap:15px}
.co-birthday-visit-box{padding:clamp(18px,2vw,30px);background:#efe3d5;border-radius:22px;display:flex;flex-direction:column;justify-content:center}
.co-birthday-visit-box.peach{background:#e8b1a9}
.co-birthday-visit-box h3{font-family:'Instrument Serif',serif;font-size:clamp(32px,3.8vw,56px);font-weight:400;line-height:.94;color:var(--wine);margin:0 0 15px}
.co-birthday-time-pills{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0}
.co-birthday-time-pills span{display:inline-flex;align-items:center;background:var(--yellow);padding:11px 14px;border-radius:999px;font-size:14px;font-weight:700}
.co-birthday-visit-box p{font-size:13px;margin:0}
.co-birthday-card{scroll-snap-align:start;flex:0 0 clamp(255px,32vw,395px);border-radius:23px;min-width:0;position:relative;overflow:hidden}
.co-birthday-price-card{padding:20px 22px 16px;background:#e9b4b0;display:flex;flex-direction:column;align-items:flex-start;min-height:390px}
.co-birthday-price-card.wine{background:var(--wine);color:#fff}
.co-birthday-price-card .eyebrow{margin-bottom:10px}
.co-birthday-price-card h3{font-family:'Instrument Serif',serif;font-weight:400;font-size:clamp(36px,3.4vw,52px);line-height:1;margin:2px 0 4px}
.co-birthday-price{font-family:'Instrument Serif',serif;font-size:clamp(51px,5vw,73px);line-height:1;white-space:nowrap}
.co-birthday-price small{font-family:'DM Sans',sans-serif;font-size:13px;font-weight:700}
.co-birthday-price-card p,.co-birthday-price-card li{font-size:12px;line-height:1.38}
.co-birthday-price-card p{margin:8px 0}
.co-birthday-divider{border-bottom:1px solid currentColor;opacity:.5;width:100%;margin:8px 0}
.co-birthday-price-card .co-contents-label{font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}
.co-birthday-price-card ul{margin:4px 0 10px;padding-left:16px}
.co-birthday-price-card li{margin-bottom:3px}
.co-birthday-foot{margin-top:auto;background:#fff9ef;color:#2d2522;padding:10px 14px;border-radius:16px;font-size:12px;font-weight:700}
.co-birthday-price-photo{background:#f4d9df}
.co-birthday-price-photo img{position:absolute;width:100%;height:100%;object-fit:cover;inset:0}
.co-birthday-price-photo p{position:absolute;left:20px;bottom:10px;color:#fff;font-family:'Instrument Serif',serif!important;font-size:clamp(40px,5vw,70px);line-height:.84;text-shadow:0 2px 10px #35212e}
.co-birthday-price-photo span{font-family:'Gochi Hand',cursive;font-size:.55em;color:#f5c83d}
.co-birthday-addon{padding:30px 22px 18px;min-height:290px;border-radius:120px 120px 24px 24px;display:flex;flex-direction:column;align-items:center;text-align:center}
.co-birthday-addon.sky{background:#80a7d6}.co-birthday-addon.peach{background:#efb083}.co-birthday-addon.lime{background:#b8d875}.co-birthday-addon.blush{background:#eab4b0}.co-birthday-addon.yellow{background:var(--yellow)}
.co-birthday-addon h3{font-family:'Instrument Serif',serif;font-size:clamp(32px,3vw,45px);font-weight:400;line-height:.94;margin:0 0 14px}
.co-birthday-addon p{font-size:13px;max-width:28ch;margin:0 auto 14px}
.co-birthday-addon strong{background:#2d2622;border-radius:999px;color:#fff;padding:9px 14px;font-size:12px;margin-top:auto}
.co-birthday-faq-card{background:#f1e7d8;padding:22px 24px;min-height:220px}
.co-birthday-faq-card h3{font-family:'Instrument Serif',serif;font-size:clamp(30px,2.9vw,44px);font-weight:400;line-height:1;color:var(--wine);margin:0 0 12px}
.co-birthday-faq-card p{font-size:13px;margin:0}
@media(max-width:850px){
 .co-spotlight-head,.co-birthday-section-head{display:block}
 .co-spotlight-cue,.co-birthday-section-head>p{display:block;text-align:left;max-width:none;margin:8px 0 14px}
 .co-birthday-visit-layout{grid-template-columns:1fr;max-height:none}
 .co-birthday-visit-photo{min-height:180px}
 .co-birthday-visit-info{grid-template-columns:1fr 1fr}
 .co-birthday-visit-box{padding:16px}
 .co-birthday-time-pills{margin:12px 0}
 .co-birthday-visit-box h3{font-size:32px!important}
}
@media(max-width:760px){
 body.compact-rhythm main .co-overlay-title{padding-bottom:28px!important;margin-bottom:9px!important}
 body.compact-rhythm main .co-overlay-title>.hand{font-size:clamp(19px,6.3vw,27px)!important;max-width:93%;transform:translate(1%,9%) rotate(-5deg)!important}
 body.compact-rhythm main .co-overlay-title.co-long-hand>.hand{font-size:clamp(17px,5.2vw,23px)!important}
 body.compact-rhythm .co-spotlight-track,.co-birthday-scroll{gap:11px;padding-bottom:12px}
 .co-spotlight-card{flex-basis:79vw;min-height:270px}
 .co-birthday-card{flex-basis:80vw}
 body.birthday-page .birthday-landing-hero{min-height:0;gap:12px!important}
 body.birthday-page .birthday-landing-art{min-height:215px}
 body.birthday-page .birthday-detail-grid{display:flex;overflow-x:auto;gap:11px;scroll-snap-type:x mandatory;padding-bottom:12px}
 body.birthday-page .birthday-detail-grid article{flex:0 0 80vw;scroll-snap-align:start;min-height:175px}
 .co-birthday-visit-info{grid-template-columns:1fr}
 .co-birthday-visit-photo{min-height:205px}
 .co-birthday-visit-box{min-height:130px}
 .co-birthday-addon{min-height:300px}
 body.compact-rhythm main #life-at-the-club .mood-grid[data-featured]{height:auto!important}
}
@media(prefers-reduced-motion:reduce){.co-spotlight-track,.co-birthday-scroll{scroll-behavior:auto!important}}

/* Mobile: horizontal peek cards rather than tall stacks. All desktop interactions unchanged. */
@media(max-width:760px){
 body.compact-rhythm main .co-offers .co-offer-grid{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:11px;padding-bottom:12px}
 body.compact-rhythm main .co-offers .co-offer-card{display:flex!important;flex:0 0 80vw;scroll-snap-align:start;min-height:0;max-width:330px}
 body.compact-rhythm main .co-offers .co-offer-image{height:175px!important;min-height:175px!important;aspect-ratio:auto!important}
 body.compact-rhythm main .co-offers .co-offer-body{padding:14px!important}
 body.compact-rhythm main #life-at-the-club .mood-grid[data-featured]{display:flex!important;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;gap:11px;height:330px!important;min-height:0}
 body.compact-rhythm main #life-at-the-club .mood-grid .mood-stack{display:contents!important}
 body.compact-rhythm main #life-at-the-club .mood-grid .mood-card{position:relative;display:block!important;flex:0 0 80vw;max-width:330px;height:315px!important;min-height:315px!important;scroll-snap-align:start}
 body.compact-rhythm main #life-at-the-club .mood-grid .mood-card .mood-copy{bottom:20px;left:20px;right:20px}
 body.compact-rhythm main .co-birthday-visit-layout{display:flex;gap:11px;overflow-x:auto;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;-webkit-overflow-scrolling:touch;max-height:none;padding-bottom:12px}
 body.compact-rhythm main .co-birthday-visit-layout .co-birthday-visit-photo{flex:0 0 80vw;height:220px;min-height:220px;scroll-snap-align:start}
 body.compact-rhythm main .co-birthday-visit-layout .co-birthday-visit-info{display:contents}
 body.compact-rhythm main .co-birthday-visit-layout .co-birthday-visit-box{flex:0 0 80vw;min-height:220px;height:220px;scroll-snap-align:start}
}
/* Keep the tilted handwriting on the serif baseline, never on supporting copy or CTAs. */
body.compact-rhythm main .co-overlay-title.co-long-hand{padding-bottom:clamp(36px,3.7vw,54px)!important;margin-bottom:clamp(18px,2vw,26px)!important}
body.birthday-page .birthday-shell .co-overlay-title{padding-bottom:clamp(42px,4.5vw,60px)!important;margin-bottom:clamp(14px,1.8vw,24px)!important}
body.birthday-page .birthday-shell .co-overlay-title>.hand{bottom:10px!important;transform:translate(3%,-5%) rotate(-5deg)!important}
body.birthday-page .birthday-final-inner{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;grid-template-rows:auto auto!important;align-items:end!important;gap:10px 26px!important}
body.birthday-page .birthday-final-inner>.eyebrow{grid-column:1/-1}
body.birthday-page .birthday-final-inner>.co-overlay-title{grid-column:1;min-width:0;margin:0!important}
body.birthday-page .birthday-final-inner>a{grid-column:2;grid-row:2;align-self:end;margin:0}
@media(max-width:760px){
 body.compact-rhythm main .co-overlay-title.co-long-hand{padding-bottom:42px!important;margin-bottom:20px!important}
 body.birthday-page .birthday-shell .co-overlay-title{padding-bottom:48px!important;margin-bottom:18px!important}
 body.birthday-page .birthday-shell .co-overlay-title>.hand{bottom:12px!important}
 body.birthday-page .birthday-final-inner{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important}
 body.birthday-page .birthday-final-inner>.co-overlay-title{margin-bottom:12px!important}
 body.compact-rhythm main .co-birthday-section-head>p{margin:18px 0 12px!important}
}
/* QA adjustment: keep lettering ABOVE the following paragraph, while visibly overlapping the serif title's lower-right. */
body.compact-rhythm main .co-overlay-title>.hand{bottom:clamp(13px,1.4vw,20px)!important;transform:translate(1%,0) rotate(-5deg)!important}
body.birthday-page .birthday-shell .co-overlay-title>.hand{bottom:18px!important;transform:translate(1%,-2%) rotate(-5deg)!important}
@media(max-width:760px){
 body.compact-rhythm main .co-overlay-title>.hand{bottom:14px!important;transform:translate(1%,0) rotate(-5deg)!important}
 body.birthday-page .birthday-shell .co-overlay-title>.hand{bottom:19px!important;transform:translate(1%,-2%) rotate(-5deg)!important}
}
/* Reveal the beginning of the next homepage section on phones; preserve the four-photo collage. */
@media(max-width:760px){
 body.compact-rhythm main .garden-hero .hero-collage{min-height:clamp(245px,66vw,290px)!important;margin-top:4px!important}
 body.compact-rhythm main .garden-hero .hero-grid{padding-top:18px!important;padding-bottom:16px!important;gap:16px!important}
}
