/* Carnaby & Oak — targeted client direction. All prior brand colours remain intact.
   The birthday CTA typography is the reference: large Instrument Serif and one-line,
   gently tilted Gochi Hand set BELOW/right without overlapping glyphs. */
:root { --co-editorial-serif:clamp(51px,5.55vw,91px); --co-editorial-hand:clamp(24px,2.25vw,34px); }
body.compact-rhythm main .co-overlay-title,
body.compact-rhythm main .co-overlay-title.co-overlay-title,
body.compact-rhythm main .co-overlay-title.co-long-hand,
body.compact-rhythm main .co-display.co-overlay-title {
  font-family:'Instrument Serif',Georgia,serif!important;
  font-size:var(--co-editorial-serif)!important;
  font-weight:400!important;
  letter-spacing:-.052em!important;
  line-height:.91!important;
  text-align:left!important;
  padding:0!important;
  margin:0 0 20px!important;
  width:max-content!important;
  max-width:100%!important;
  overflow:visible!important;
}
body.compact-rhythm main .co-overlay-title>.hand,
body.compact-rhythm main .co-overlay-title.co-long-hand>.hand,
body.compact-rhythm main .co-overlay-title.co-overlay-title>span.hand.hand,
body.compact-rhythm main .co-overlay-title.co-overlay-title.co-long-hand>span.hand.hand {
  position:relative!important;inset:auto!important;float:none!important;
  display:block!important;width:max-content!important;max-width:100%!important;
  margin:clamp(12px,1.3vw,18px) 0 0 auto!important;
  padding:0 3px 4px!important;white-space:nowrap!important;
  font-family:'Gochi Hand',cursive!important;line-height:1.16!important;
  font-weight:400!important;letter-spacing:0!important;
  font-size:var(--co-fitted-hand,var(--co-editorial-hand))!important;
  color:var(--teal)!important;
  text-align:right!important;transform:rotate(-3deg)!important;transform-origin:75% 50%!important;
}
/* Preserve contrast on photo, dark and yellow surfaces */
body.compact-rhythm main .mood-copy .co-overlay-title {color:#fff!important;font-size:clamp(42px,4.5vw,72px)!important;}
body.compact-rhythm main .mood-copy .co-overlay-title>.hand,
body.compact-rhythm main .wine .co-overlay-title>.hand,
body.compact-rhythm main .join-copy .co-overlay-title>.hand,
body.compact-rhythm main .birthday-shell .co-overlay-title>.hand {color:var(--yellow)!important;}
body.compact-rhythm main .birthday-landing-copy .co-overlay-title>.hand,
body.compact-rhythm main :is(.co-birthday-pricing,.co-birthday-addons,.co-birthday-faq) .co-overlay-title>.hand {color:var(--teal)!important;}
body.birthday-page main .birthday-landing-copy h1.co-master-title {
  font-size:clamp(56px,6vw,99px)!important;line-height:.89!important;margin:12px 0 24px!important;
}
body.birthday-page main .birthday-landing-copy .co-master-title>.hand {font-size:clamp(23px,2.35vw,37px)!important;}
body.compact-rhythm main .birthday-details-head .co-overlay-title,
body.compact-rhythm main .co-birthday-section-head .co-overlay-title,
body.compact-rhythm main .co-spotlight-head .co-overlay-title,
body.compact-rhythm main .co-section-intro .co-overlay-title {font-size:var(--co-editorial-serif)!important;}
/* Give handwriting consistent bottom breathing room, without large empty section gaps. */
body.compact-rhythm main :is(.co-birthday-section-head,.co-spotlight-head,.co-section-intro,.birthday-details-head) {
  margin-bottom:clamp(19px,2.1vw,28px)!important;
}
body.compact-rhythm main .co-birthday-section-head>p,
body.compact-rhythm main .co-spotlight-head>.co-spotlight-cue {align-self:end!important;margin:0 0 18px!important;font-size:14px!important;text-align:right!important;}
body.compact-rhythm main .co-birthday-section-head,
body.compact-rhythm main .co-spotlight-head {display:grid!important;grid-template-columns:minmax(0,1fr) minmax(150px,240px)!important;column-gap:22px!important;align-items:end!important;}
body.compact-rhythm main .co-simple-eyebrow{margin:0 0 14px;}
body.compact-rhythm main #life-at-the-club .co-simple-eyebrow{margin-bottom:17px;}
body.compact-rhythm main #life-at-the-club {background:var(--paper2);}
body.compact-rhythm main .co-offers .co-simple-eyebrow {margin-bottom:14px;}
/* The carousel panels remain the original approved components. */
body.compact-rhythm main .co-ways,
body.compact-rhythm main .co-spotlight {overflow:visible!important;padding:0!important;height:auto;position:relative;isolation:isolate;}
body.compact-rhythm main .co-ways {background:#f7e9e6!important;}
body.compact-rhythm main .co-spotlight {background:var(--paper)!important;}
body.compact-rhythm main [data-vertical-rail]>.co-scroll-pin {
  position:sticky;top:var(--co-rail-top,76px);box-sizing:border-box;
  height:calc(100svh - var(--co-rail-top,76px));min-height:470px;
  display:flex;flex-direction:column;justify-content:center;
  padding:clamp(12px,2.3vw,30px) var(--pad) clamp(16px,2.1vw,30px);
  width:100%;max-width:100%;overflow:hidden;
}
body.compact-rhythm main [data-vertical-rail] .co-scroll-pin .co-spotlight-head,
body.compact-rhythm main [data-vertical-rail] .co-scroll-pin .co-section-intro {flex:0 0 auto;margin-bottom:clamp(18px,2vw,25px)!important;}
body.compact-rhythm main [data-vertical-rail] .co-spotlight-track,
body.compact-rhythm main [data-vertical-rail] .co-activity-track {flex:0 0 auto;overflow-x:auto!important;overflow-y:hidden!important;scroll-snap-type:none!important;scroll-behavior:auto!important;scrollbar-width:none!important;overscroll-behavior-x:contain;}
body.compact-rhythm main [data-vertical-rail] .co-spotlight-track::-webkit-scrollbar,
body.compact-rhythm main [data-vertical-rail] .co-activity-track::-webkit-scrollbar {display:none;}
body.compact-rhythm main [data-vertical-rail] .co-spotlight-track {padding-bottom:4px!important;}
body.compact-rhythm main [data-vertical-rail] .co-spotlight-card {min-height:clamp(260px,32svh,390px);}
body.compact-rhythm main [data-vertical-rail] .co-activity-card{min-height:0;}
body.compact-rhythm main [data-vertical-rail] .co-activity-img {aspect-ratio:1.8/1;}
body.compact-rhythm main [data-vertical-rail] .co-ways-toolbar {flex:0 0 auto;}
body.compact-rhythm main [data-vertical-rail] .co-way-footer {flex:0 0 auto;margin-top:12px;}
/* Hero: keep the existing four photographs and enlarge their whole collage only. */
@media(min-width:1081px){
 body.compact-rhythm main .garden-hero .hero-grid {grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(18px,3vw,46px);}
 body.compact-rhythm main .garden-hero .hero-collage {min-height:min(80vh,830px);width:100%;}
}
/* Navbar — same 76/66px heights. Logo hangs over the lower edge before scrolling,
   then moves left and shrinks into the bar while links gather on the right. */
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] {height:76px!important;display:grid!important;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)!important;align-items:center!important;overflow:visible!important;transition:background .26s ease,box-shadow .26s ease!important;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-left {grid-area:1/1;justify-content:flex-start;display:flex;min-width:0;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .brand {grid-area:1/2;justify-self:center!important;z-index:3;position:relative;transform:translateY(72%) scale(1.22);transform-origin:center center;transition:transform .34s cubic-bezier(.22,1,.36,1),justify-self .34s ease!important;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-right {grid-area:1/3;justify-content:flex-end;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-combined {gap:clamp(10px,1.6vw,23px)!important;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-separator{display:none!important;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled {grid-template-columns:auto minmax(0,1fr) auto!important;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .brand {grid-area:1/1;justify-self:start!important;transform:translateY(0) scale(.78);transform-origin:left center;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .nav-left {grid-area:1/2;justify-content:flex-end;margin-left:22px;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .nav-right {grid-area:1/3;}
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .nav-left a,
body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .nav-right a{white-space:nowrap;}
/* Keep the original drop shoe motion untouched; add a small venue photo under the scribble. */
.play-shoes-hero .play-shoes-added-photo {position:absolute;right:clamp(45px,5.5vw,100px);top:clamp(142px,15vw,215px);z-index:2;width:clamp(145px,16vw,258px);aspect-ratio:1.36/1;overflow:hidden;border:7px solid #fffaf1;border-radius:18px;box-shadow:0 18px 35px rgba(67,30,37,.16);transform:rotate(7deg);pointer-events:none;margin:0;}
.play-shoes-hero .play-shoes-added-photo img {display:block;width:100%;height:100%;object-fit:cover;}
/* FAQ accordion: whole row clickable. '+' becomes '−' when expanded. */
body.birthday-page main .co-faq-list {border-top:1px solid rgba(99,55,60,.28);width:100%;}
body.birthday-page main .co-faq-item {border-bottom:1px solid rgba(99,55,60,.28);background:transparent;}
body.birthday-page main .co-faq-item summary {display:flex;align-items:center;justify-content:space-between;gap:24px;cursor:pointer;list-style:none;padding:21px clamp(8px,2vw,26px);font-family:'Instrument Serif',serif;font-size:clamp(28px,3vw,45px);line-height:1.05;font-weight:400;color:var(--wine);}
body.birthday-page main .co-faq-item summary::-webkit-details-marker{display:none;}
body.birthday-page main .co-faq-item summary:focus-visible{outline:2px solid var(--teal);outline-offset:2px;}
body.birthday-page main .co-faq-toggle {flex:0 0 42px;width:42px;height:42px;display:grid;place-items:center;border:1px solid rgba(122,32,62,.22);border-radius:50%;background:#fffaf1;font-family:'DM Sans',sans-serif;font-size:29px;line-height:1;color:var(--wine);}
body.birthday-page main .co-faq-item[open] .co-faq-toggle{background:var(--yellow);}
body.birthday-page main .co-faq-item[open] .co-faq-toggle::before{content:'−';}
body.birthday-page main .co-faq-item[open] .co-faq-toggle{font-size:0;}
body.birthday-page main .co-faq-item[open] .co-faq-toggle::before{font-size:30px;}
body.birthday-page main .co-faq-answer {padding:0 clamp(8px,2vw,26px) 20px;max-width:810px;}
body.birthday-page main .co-faq-answer p{font-size:clamp(15px,1.3vw,18px);line-height:1.55;margin:0;color:var(--ink);}
body.birthday-page main #birthday-play {scroll-margin-top:85px;}
/* Original birthday elastic is intentionally kept and moved last. */
body.birthday-page main #birthday-play .birthday-section {padding-bottom:clamp(30px,4vw,64px)!important;}
@media(max-width:1080px){
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-left{gap:12px;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-right{gap:7px;}
}
@media(max-width:760px){
 :root{--co-editorial-serif:clamp(46px,12.7vw,66px);--co-editorial-hand:clamp(19px,5.3vw,27px);}
 body.compact-rhythm main .co-overlay-title>.hand,
 body.compact-rhythm main .co-overlay-title.co-overlay-title>span.hand.hand {margin-top:11px!important;}
 body.compact-rhythm main .co-birthday-section-head,body.compact-rhythm main .co-spotlight-head {display:block!important;}
 body.compact-rhythm main .co-birthday-section-head>p,body.compact-rhythm main .co-spotlight-head>.co-spotlight-cue {text-align:left!important;margin:8px 0 0!important;}
 body.compact-rhythm main [data-vertical-rail]>.co-scroll-pin{min-height:0;height:calc(100svh - 66px);padding:15px 16px 20px;}
 body.compact-rhythm main [data-vertical-rail] .co-spotlight-card{min-height:clamp(230px,38svh,360px);}
 body.compact-rhythm main [data-vertical-rail] .co-activity-img{aspect-ratio:1.6/1;}
 body.compact-rhythm main .birthday-landing-copy h1.co-master-title{font-size:clamp(51px,12.6vw,70px)!important;}
 body.birthday-page main .co-birthday-section-head{margin-bottom:20px!important;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] {height:66px!important;grid-template-columns:auto minmax(0,1fr) auto!important;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-left{display:none!important;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .brand{grid-area:1/2;transform:translateY(70%) scale(1.16);}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .nav-right{grid-area:1/3;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled{grid-template-columns:auto 1fr auto!important;}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .brand{grid-area:1/1;transform:translateY(0) scale(.72);}
 body.compact-rhythm .site-nav[data-carnaby-fluid-nav].is-scrolled .nav-right{grid-area:1/3;}
 .play-shoes-hero .play-shoes-added-photo{top:clamp(110px,30vw,170px);right:20px;width:clamp(110px,35vw,175px);border-width:5px;transform:rotate(6deg);z-index:2;}
 body.birthday-page main .co-faq-item summary {font-size:clamp(26px,7.7vw,36px);padding:17px 3px;gap:14px;}
 body.birthday-page main .co-faq-toggle {width:34px;height:34px;flex-basis:34px;font-size:24px;}
}
@media(prefers-reduced-motion:reduce){body.compact-rhythm .site-nav[data-carnaby-fluid-nav] .brand{transition:none!important;}}
