/*
 * Playgrounds Adventure — Coffee & Play Brand Layer
 * Theme integration v1.0.51
 * Visual authority: Playgrounds Adventure Web Brand Guidelines v1.0 (2026)
 * Scope: visual styling only. Existing content hierarchy, templates, booking flows,
 * dynamic data contracts and responsive structure remain unchanged.
 */

:root{
  /* Playgrounds Adventure brand */
  --pa-red:#7F1313;
  --pa-mint:#96BFAF;
  --pa-coral:#F16744;
  --pa-vanilla:#E9DFC6;
  --pa-espresso:#3B241C;
  --pa-mocha:#6B4332;
  --pa-latte:#C9A789;
  --pa-cappuccino:#E3CFB8;
  --pa-cream:#F7F1E5;
  --pa-card:#FFF9EF;
  --pa-border:#D8C8B5;

  /* Shared semantic aliases used by the legacy theme */
  --brand-primary:var(--pa-red);
  --brand-secondary:var(--pa-mint);
  --brand-background:var(--pa-cream);
  --brand-panel:var(--pa-vanilla);
  --brand-accent:var(--pa-coral);
  --bato-cream:var(--pa-cream);
  --bato-paper:var(--pa-card);
  --bato-ink:var(--pa-espresso);
  --bato-muted:var(--pa-mocha);
  --bato-coral:var(--pa-red);
  --bato-coral-dark:var(--pa-coral);
  --bato-orange:var(--pa-coral);
  --bato-peach:var(--pa-vanilla);
  --bato-yellow:var(--pa-vanilla);
  --bato-sage:var(--pa-mint);
  --bato-mint:var(--pa-mint);
  --bato-blue:var(--pa-cappuccino);
  --bato-line:rgba(59,36,28,.12);
  --bato-shadow:0 8px 30px rgba(59,36,28,.08);
  --bato-display:'Poppins',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --bato-display-font:'Poppins',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  --bato-radius:28px;
}

html{background:var(--pa-cream)}
body.bato-public-site,
body{background:var(--pa-cream);color:var(--pa-espresso);font-family:'Poppins',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif}
::selection{background:var(--pa-mint);color:var(--pa-espresso)}

/* Typography — same sizing/structure, new brand color hierarchy. */
.bato-hero h1,.bato-inner-hero h1,.bato-intro h2,.bato-section-heading h2,.bato-split-copy h2,.bato-birthday-copy h2,.bato-cafe-grid h2,.bato-visit-grid h2,
.bato-event-card h3,.bato-event-price strong,.bato-quick-grid strong,.bato-photo-placeholder strong,.bato-hero-marquee div,.bato-footer-brand h2,.bato-final-cta h2,
.bato-editorial-note-card h2,.bato-legal-public-hero h1,.bato-legal-rich-content h2,.bato-legal-rich-content h3{
  font-family:'Poppins',ui-sans-serif,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  color:var(--pa-red);
}
.bato-eyebrow,.bato-kicker{color:var(--pa-coral);font-weight:800;letter-spacing:.16em}
.bato-lead,.bato-body-copy,.bato-section-heading>p{color:var(--pa-mocha)}

/* Header — warm cream surface, Espresso navigation, Coffee Red action. */
.bato-site-header{padding:0;background:var(--pa-cream);position:sticky;top:0}
.bato-site-header.is-scrolled{padding-top:0}
.bato-nav-shell,.bato-site-header.is-scrolled .bato-nav-shell{
  width:min(1480px,calc(100vw - 40px));min-height:86px;margin:auto;padding:12px 0;
  background:transparent;border:0;border-radius:0;box-shadow:none;backdrop-filter:none;
  grid-template-columns:minmax(180px,240px) 1fr auto;
}
.bato-brand img{max-height:58px;max-width:220px}
.bato-main-nav a,.bato-nav-account{color:var(--pa-espresso);font-weight:600}
.bato-main-nav a:after{background:var(--pa-red);bottom:-7px}
.bato-language-switch{color:var(--pa-espresso)}
.bato-language-switch a{color:var(--pa-mocha)}
.bato-language-switch a.is-active{color:var(--pa-red)}
.bato-menu-toggle span{background:var(--pa-espresso)}
.bato-nav-book{background:var(--pa-red)!important;color:var(--pa-cream)!important;box-shadow:0 10px 24px rgba(127,19,19,.16)!important}
.bato-nav-book:hover{background:var(--pa-coral)!important;color:#fff!important}

/* Core buttons */
.bato-btn{font-family:inherit;font-weight:700;letter-spacing:.01em;box-shadow:none}
.bato-btn-primary{background:var(--pa-red);color:var(--pa-cream);box-shadow:0 10px 24px rgba(127,19,19,.16)}
.bato-btn-primary:hover{background:var(--pa-coral);color:#fff}
.bato-btn-dark{background:var(--pa-espresso);color:var(--pa-cream)}
.bato-btn-dark:hover{background:var(--pa-mocha);color:#fff}
.bato-btn-light{background:var(--pa-vanilla);color:var(--pa-red)}
.bato-btn-light:hover{background:var(--pa-cream);color:var(--pa-red)}
.bato-text-link{color:var(--pa-red);border-bottom-color:rgba(127,19,19,.28)}

/* Hero — keep geometry; recolor to Coffee & Play palette. */
.bato-hero{min-height:820px;padding:96px 0 90px;background:var(--pa-cream)}
.bato-hero.has-media:before{background:linear-gradient(90deg,rgba(247,241,229,.99) 0%,rgba(247,241,229,.96) 39%,rgba(247,241,229,.45) 62%,rgba(247,241,229,.08) 78%),var(--hero-image) center/cover no-repeat}
.bato-hero-grid{min-height:620px;grid-template-columns:minmax(0,1fr) minmax(420px,.88fr);gap:68px}
.bato-hero h1{font-size:clamp(58px,6.2vw,104px);line-height:.98;letter-spacing:-.045em;font-weight:800;margin:24px 0;max-width:900px}
.bato-lead{font-size:18px;line-height:1.65;max-width:640px}
.bato-hero-visual{height:590px;border-radius:46px;background:var(--pa-mint);box-shadow:var(--bato-shadow)}
.bato-photo-placeholder{border-color:rgba(127,19,19,.18);color:var(--pa-red)}
.bato-float-card{background:var(--pa-vanilla);border:0;box-shadow:0 16px 40px rgba(59,36,28,.12);color:var(--pa-espresso)}
.bato-mini-icon{background:var(--pa-cream);color:var(--pa-coral)}
.shape-a{background:rgba(150,191,175,.28)}.shape-b{background:rgba(233,223,198,.62)}.shape-c{background:rgba(127,19,19,.06)}
.bato-live-dot{background:var(--pa-mint);box-shadow:0 0 0 6px rgba(150,191,175,.22)}
.bato-hero-marquee{background:var(--pa-espresso);color:var(--pa-cream)}
.bato-hero-marquee div{font-size:20px;font-weight:700;letter-spacing:.03em;color:var(--pa-cream)}.bato-hero-marquee i{color:var(--pa-coral)}

/* Information strip */
.bato-quick-strip{background:var(--pa-vanilla);border-bottom:0}
.bato-quick-grid article{border-right-color:rgba(59,36,28,.12)}
.bato-quick-grid article>span{color:var(--pa-coral);font-family:inherit;font-weight:700}
.bato-quick-grid small,.bato-quick-grid p{color:var(--pa-mocha)}.bato-quick-grid strong{font-size:22px;font-weight:700;color:var(--pa-espresso)}

/* Section rhythm */
.bato-section{padding:clamp(78px,8vw,118px) 0}
.bato-intro{padding:clamp(90px,9vw,132px) 0}
.bato-intro h2,.bato-section-heading h2,.bato-split-copy h2,.bato-birthday-copy h2,.bato-cafe-grid h2,.bato-visit-grid h2{font-weight:750;letter-spacing:-.04em;line-height:1.04}
.bato-intro{background:var(--pa-cream)}
.bato-play-section{background:var(--pa-cream)}
.bato-grownups{background:var(--pa-mint)}
.bato-memberships-section{background:var(--pa-vanilla)}
.bato-upcoming-events{background:var(--pa-cream)}
.bato-birthday-section{background:var(--pa-mint)}
.bato-cafe-strip{background:var(--pa-espresso);color:var(--pa-cream)}
.bato-gallery-section{background:var(--pa-cream)}
.bato-visit-section{background:var(--pa-cream)}

/* Open Play cards */
.bato-price-grid{gap:22px}
.bato-price-card{border-radius:28px;box-shadow:none;border:1px solid rgba(59,36,28,.10)}
.bato-price-card.baby{background:var(--pa-vanilla)}
.bato-price-card.child{background:var(--pa-mint)}
.bato-price-content{color:var(--pa-espresso)}
.bato-price-card .bubble.two{background:var(--pa-coral)}
.bato-price-card .arch,.bato-price-card .bubble.one,.bato-price-card .bubble.three{background:rgba(255,255,255,.34)}
.bato-chip{background:var(--pa-red);color:var(--pa-cream)}

/* Split / benefits / memberships */
.bato-split-card,.bato-benefit-card,.bato-location-card{border-color:rgba(59,36,28,.12);box-shadow:none}
.bato-benefit-card{background:var(--pa-card)}
.bato-benefit-card:nth-child(even){background:var(--pa-vanilla)}
.bato-benefit-media-card{background:var(--pa-red)}
.bato-benefit-media-copy,.bato-benefit-media-copy h3,.bato-benefit-media-copy p{color:var(--pa-cream)}

/* Events */
.bato-event-card,.bato-event-card-premium{background:var(--pa-card);border:1px solid rgba(59,36,28,.12);box-shadow:0 8px 30px rgba(59,36,28,.08)}
.bato-event-card:hover,.bato-event-card-premium:hover{border-color:rgba(127,19,19,.24);box-shadow:0 14px 36px rgba(59,36,28,.12)}
.bato-event-media{background:linear-gradient(145deg,var(--pa-mint),var(--pa-coral))}
.bato-event-type{color:var(--pa-red);background:var(--pa-vanilla)}
.bato-event-status{background:var(--pa-cream);color:var(--pa-espresso);border:1px solid rgba(59,36,28,.12)}
.bato-event-card-premium .bato-event-meta span{background:var(--pa-cream);color:var(--pa-espresso)}
.bato-event-date-tile{background:var(--pa-vanilla);color:var(--pa-red)}
.bato-event-date-tile strong{font-family:inherit;font-weight:750}
.bato-event-premium-cta{background:var(--pa-red);color:var(--pa-cream);box-shadow:none}
.bato-event-card-premium:hover .bato-event-premium-cta{background:var(--pa-coral);color:#fff;box-shadow:none}
.bato-event-card-premium .bato-event-card-bottom{border-top-color:rgba(59,36,28,.12)}
.bato-event-description{color:var(--pa-mocha)}
.bato-event-action-panel{background:linear-gradient(145deg,var(--pa-vanilla) 0%,var(--pa-cream) 100%)}
.bato-event-action-eyebrow{color:var(--pa-red)}

/* Birthday + Café */
.bato-birthday-card{background:var(--pa-mint);color:var(--pa-espresso);box-shadow:none}
.bato-birthday-card h2,.bato-birthday-card h3{color:var(--pa-red)}
.bato-birthday-card p{color:var(--pa-espresso)}
.bato-birthday-art{background:var(--pa-red)}
.party-sun,.party-star{background:var(--pa-coral)}
.bato-cafe-strip h2,.bato-cafe-strip h3,.bato-cafe-strip p,.bato-cafe-grid h2{color:var(--pa-cream)}
.bato-cafe-note{background:var(--pa-vanilla);color:var(--pa-espresso)}
.bato-placeholder-coffee{background:var(--pa-red);color:var(--pa-cream)}

/* Gallery */
.bato-gallery-tile{border-radius:24px;box-shadow:none;background:var(--pa-mint)}
.bato-gallery-tile:nth-child(2n){background:var(--pa-vanilla)}

/* Visit */
.bato-location-card{background:var(--pa-vanilla)}
.bato-live-map{border-color:rgba(59,36,28,.14);box-shadow:none}
.bato-map-pin{background:var(--pa-coral);color:#fff}

/* Final CTA */
.bato-final-cta{background:var(--pa-red);color:var(--pa-cream)}
.bato-final-cta h2,.bato-final-cta small,.bato-final-cta p{color:var(--pa-cream)}

/* Footer — Espresso provides the cafe anchor. */
.bato-site-footer{background:var(--pa-espresso);color:var(--pa-cream)}
.bato-footer-main,.bato-footer-bottom{border-color:rgba(233,223,198,.18)}
.bato-footer-brand h2{color:var(--pa-cream);font-weight:750;letter-spacing:-.035em}
.bato-footer-brand p,.bato-footer-links span{color:var(--pa-cappuccino)}
.bato-footer-links small{color:var(--pa-coral)}
.bato-footer-links a{color:var(--pa-cream)}
.bato-footer-links a:hover{color:var(--pa-mint)}
.bato-footer-powered a{color:var(--pa-cream)}

/* Inner pages / legal */
.bato-inner-hero,.bato-legal-public-hero{background:var(--pa-vanilla)}
.bato-legal-public-page{background:var(--pa-cream)}
.bato-legal-public-document,.bato-editorial-note-card{background:var(--pa-card);border-color:rgba(59,36,28,.12);box-shadow:none}
.bato-legal-rich-content{color:var(--pa-espresso)}

/* Public Open Play / forms */
.bato-public-open-play-shell{background:var(--pa-card);border-color:rgba(59,36,28,.10);box-shadow:var(--bato-shadow)}
.bato-public-open-play-copy p,.bato-public-play-slot small,.bato-public-open-play-selection small,.bato-public-open-play-note{color:var(--pa-mocha)}
.bato-public-open-play-prices span,.bato-public-open-play-picker{background:var(--pa-vanilla)}
.bato-public-open-play-picker input,.bato-public-play-slot{background:var(--pa-cream);color:var(--pa-espresso);border-color:var(--pa-border)}
.bato-public-play-slot:hover,.bato-public-play-slot.is-selected{border-color:var(--pa-red);box-shadow:0 0 0 3px rgba(127,19,19,.08)}
.bato-public-play-slot.is-selected{background:rgba(150,191,175,.32)}

/* Cookie surfaces */
.dilly-cookie-banner,.dilly-cookie-dialog{background:var(--pa-cream)!important;border-color:rgba(59,36,28,.14)!important}
.dilly-cookie-copy h2,.dilly-cookie-dialog h2{font-family:'Poppins',ui-sans-serif,sans-serif;color:var(--pa-red)!important;font-weight:700}
.dilly-cookie-copy p,.dilly-cookie-option p{color:var(--pa-mocha)!important}
.dilly-cookie-btn.is-primary{background:var(--pa-red);color:var(--pa-cream);box-shadow:none}
.dilly-cookie-btn.is-primary:hover{background:var(--pa-coral);color:#fff}
.dilly-cookie-btn.is-secondary{background:var(--pa-vanilla);color:var(--pa-red)}
.dilly-cookie-fab{background:var(--pa-vanilla);color:var(--pa-red)}

/* Accessibility / focus */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--pa-red);outline-offset:3px}

@media(max-width:1100px){
  .bato-main-nav{gap:22px}
  .bato-nav-shell{grid-template-columns:190px 1fr auto}
  .bato-hero-grid{grid-template-columns:1fr 420px;gap:38px}
}
@media(max-width:900px){
  .bato-site-header{position:sticky}
  .bato-nav-shell{min-height:74px;padding:8px 0}
  .bato-main-nav{background:var(--pa-espresso);border-top:1px solid rgba(233,223,198,.16);box-shadow:0 22px 45px rgba(59,36,28,.18)}
  .bato-main-nav a{color:var(--pa-cream)}
  .bato-hero{padding-top:54px;min-height:auto}
  .bato-hero-grid{grid-template-columns:1fr;min-height:0}
  .bato-hero-visual{height:480px;max-width:680px;width:100%;margin:auto}
  .bato-hero.has-media:before{background:linear-gradient(180deg,rgba(247,241,229,.98) 0%,rgba(247,241,229,.9) 48%,rgba(247,241,229,.2) 76%),var(--hero-image) center/cover no-repeat}
}
@media(max-width:640px){
  :root{--bato-container:min(100% - 32px,1480px)}
  .bato-nav-shell{width:calc(100vw - 28px);grid-template-columns:1fr auto}
  .bato-brand img{max-width:170px;max-height:48px}
  .bato-nav-actions{gap:8px}.bato-nav-account{display:none}
  .bato-hero{padding:42px 0 72px}
  .bato-hero h1{font-size:clamp(48px,14vw,68px);line-height:1}
  .bato-lead{font-size:17px}
  .bato-hero-actions{align-items:flex-start;gap:14px;flex-direction:column}
  .bato-hero-visual{height:380px;border-radius:30px}
  .bato-float-socks{left:14px;bottom:20px}.bato-float-age{right:14px;top:20px}
  .bato-section{padding:68px 0}.bato-intro{padding:76px 0}
  .bato-intro h2,.bato-section-heading h2,.bato-split-copy h2,.bato-birthday-copy h2,.bato-cafe-grid h2,.bato-visit-grid h2{font-size:clamp(38px,11vw,54px)}
  .bato-price-card{border-radius:22px}
  .bato-footer-main{padding-top:64px}
}


/* v1.0.55 — branded header fallback when no Custom Logo is configured */
.bato-brand-lockup{display:inline-flex;align-items:center;gap:12px;min-width:0}
.bato-brand-mascot{display:block;width:44px;height:44px;object-fit:contain;flex:0 0 44px}
.bato-brand-lockup .bato-wordmark{display:grid;grid-template-columns:1fr auto;grid-template-rows:auto auto;column-gap:7px;align-items:start;line-height:1}
.bato-brand-lockup .bato-wordmark strong{grid-column:1;grid-row:1 / span 2;font-family:'Poppins',ui-sans-serif,sans-serif;font-size:clamp(19px,1.5vw,27px);line-height:.98;letter-spacing:-.035em;color:var(--pa-espresso);max-width:180px}
.bato-brand-lockup .bato-wordmark small{grid-column:2;grid-row:1 / span 2;align-self:center;font-family:'Poppins',ui-sans-serif,sans-serif;font-size:10px;line-height:1.05;letter-spacing:.12em;text-transform:uppercase;color:var(--pa-mocha);max-width:48px}
.bato-brand .bato-custom-logo{display:block;max-height:58px;width:auto;max-width:230px;object-fit:contain}
@media (max-width:720px){
  .bato-brand-lockup{gap:8px}
  .bato-brand-mascot{width:36px;height:36px;flex-basis:36px}
  .bato-brand-lockup .bato-wordmark strong{font-size:18px;max-width:138px}
  .bato-brand-lockup .bato-wordmark small{font-size:8px;max-width:40px}
}
