/* Shared dark photographic overlay; the approved holiday component is isolated and unchanged. */
.gs-hero:before,.gs-home .gs-hero:before{background:linear-gradient(90deg,rgba(25,4,67,.92),rgba(25,4,67,.6) 46%,rgba(25,4,67,.04) 88%)!important}
.gs-source-main #gs-school-preview .gs-hero:before{background:linear-gradient(90deg,rgba(25,4,67,.92),rgba(25,4,67,.55) 54%,rgba(25,4,67,.12))!important}
.gs-source-main .hero-shade{background:linear-gradient(90deg,rgba(25,4,67,.95),rgba(25,4,67,.83) 33%,rgba(25,4,67,.3) 65%,rgba(25,4,67,.06))!important}
.gs-source-main .hero-bottom{background:rgba(25,4,67,.66)!important}
body{--product:#0aaddf;--product-soft:#eaf8fd;--product-ink:#140936;--product-highlight:#54d7ff}
body[data-product-theme=orange]{--product:#ffa901;--product-soft:#fff3df;--product-ink:#140936;--product-highlight:#ffa901}
body[data-product-theme=green]{--product:#00d200;--product-soft:#effbea;--product-ink:#140936;--product-highlight:#00d200}
body[data-product-theme=pink]{--product:#d200a7;--product-soft:#fcecf8;--product-ink:#fff;--product-highlight:#ff79dc}
/* Product accents, separate from the global navigation/footer and unchanged approved camp pages. */
body:not([data-page-kind=camp]):not([data-page-kind=event]) .gs-generic .gs-btn{background:var(--product);color:var(--product-ink)}
body:not([data-page-kind=camp]):not([data-page-kind=event]) .gs-generic .gs-related{background:var(--product-soft);border-top-color:var(--product)}
body:not([data-page-kind=camp]):not([data-page-kind=event]) .gs-generic .gs-section-pale{background:var(--product-soft)}
body[data-page-kind=school] .gs-source-main #gs-school-preview .gs-button:not(.outline){background:var(--product)!important;border-color:var(--product)!important;color:var(--product-ink)!important}
body[data-page-kind=school] .gs-source-main #gs-school-preview .gs-hero h1 em{color:var(--product-highlight)!important}
body[data-page-kind=school] .gs-source-main #gs-school-preview .gs-quick{border-top-color:var(--product)!important}
body[data-page-kind=membership] .gs-source-main .hero h1 em{color:var(--product-highlight)!important}
body[data-page-kind=membership] .gs-source-main .hero .hero-price{background:var(--product)!important;color:var(--product-ink)!important}
body[data-page-kind=membership] .gs-source-main .hero .hero-price strong{color:var(--product-ink)!important}
body[data-page-kind=membership] .gs-source-main .hero .button:not(.outline){background:var(--product)!important;color:var(--product-ink)!important}
body[data-page-kind=membership] .gs-source-main .last-call{background:var(--product)!important;color:var(--product-ink)!important}
body[data-page-kind=membership] .gs-source-main .chapter.purple{background:#140936!important;color:white!important}
body[data-page-kind=membership] .gs-source-main .chapter.purple p{color:white!important}
body[data-page-kind=membership] .gs-source-main .chapter.purple h2 em{color:var(--product-highlight)!important}
body[data-route="/groups"] .gs-home .gs-section-blue{background:#d200a7;color:white}
body[data-route="/groups"] .gs-home .gs-section-blue p,body[data-route="/groups"] .gs-home .gs-section-blue h2,body[data-route="/groups"] .gs-home .gs-section-blue .gs-eyebrow{color:white}
body[data-route="/groups"] .gs-home .gs-section-blue .gs-btn{background:white!important;color:#140936!important}
.gs-card[href="/memberships/kids-club/"],.gs-card[href^="/parties/"]{border-bottom:4px solid #ffa901}
.gs-card[href="/memberships/the-waterfront-membership/"],.gs-card[href="/land-activities/climbing/"]{border-bottom:4px solid #00d200}
.gs-card[href="/memberships/the-paddle-club/"],.gs-card[href^="/paddlesports/"]{border-bottom:4px solid #0aaddf}
.gs-card[href="/memberships/the-social-club/"],.gs-card[href="/land-activities/axe-throwing/"]{border-bottom:4px solid #d200a7}
.gs-card[href="/land-activities/archery/"]{border-bottom:4px solid #ffa901}
/* A light footer separates it from product-coloured closing sections and reveals the transparent bubble logo. */
.gs-site-footer{background:#f0f9fd!important;color:#140936!important;border-top:1px solid #d4eaf1}
.gs-site-footer h3,.gs-site-footer p,.gs-site-footer a,.gs-footer-bottom{color:#140936!important}
.gs-site-footer .gs-footer-brand{background:transparent!important;padding:0!important;border-radius:0!important}
.gs-site-footer .gs-footer-brand img{background:transparent!important;object-fit:contain}
/* Exact supplied transparent white bubble logo, with its blank canvas cropped by the layout. */
.gs-site-footer{background:#140936!important;color:white!important;border-top:0!important}
.gs-site-footer h3{color:#54d7ff!important}.gs-site-footer p,.gs-site-footer a,.gs-footer-bottom{color:white!important}.gs-footer-bottom{border-top-color:#ffffff35!important}
.gs-site-footer .gs-footer-brand{display:block!important;width:230px!important;height:116px!important;max-width:100%!important;position:relative!important;overflow:hidden!important;background:transparent!important;padding:0!important;margin:0 0 10px!important}
.gs-site-footer .gs-footer-brand img{display:block!important;width:230px!important;height:230px!important;max-width:none!important;object-fit:contain!important;position:absolute!important;left:0!important;top:50%!important;transform:translateY(-50%)!important;margin:0!important;background:transparent!important}
body[data-page-kind=venue] .gs-source-main .hero:after{background:linear-gradient(90deg,rgba(25,4,67,.92),rgba(25,4,67,.55) 58%,rgba(25,4,67,.12))!important}
