/* Backgrounds occupy no document space. Glass does not change content geometry. */
body.ambient-enabled{isolation:isolate;--text-heading:#203e32;--text-body:#263f36;--text-note:#354b41}
.ambient-scene{position:fixed;inset:0;z-index:-1;pointer-events:none;overflow:hidden;height:100vh;height:100lvh;background:#f7f4eb}
.ambient-scene img,.ambient-scene canvas{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ambient-scene:after{content:'';position:absolute;inset:0;background:rgba(255,254,248,.025)}
.ambient-scene canvas{opacity:0}.ambient-scene canvas.ready{opacity:1}
.ambient-enabled:not(.ambient-off) .sec-white,.ambient-enabled:not(.ambient-off) .sec-cream,.ambient-enabled:not(.ambient-off) .sec-pink{background:rgba(255,253,246,.04)}
.ambient-enabled:not(.ambient-off) .ambient-glass{background:var(--glass-surface)!important;-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);box-shadow:var(--glass-edge);border-radius:var(--radius-lg,20px)}
.ambient-enabled:not(.ambient-off) .ambient-glass-copy{position:relative;isolation:isolate;background:transparent!important;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.ambient-enabled:not(.ambient-off) .ambient-glass-copy:before{content:'';position:absolute;inset:-14px -10px;z-index:-1;pointer-events:none;border-radius:18px;background:var(--glass-surface);-webkit-backdrop-filter:var(--glass-filter);backdrop-filter:var(--glass-filter);box-shadow:var(--glass-edge)}
.ambient-enabled .hero-accent,.ambient-enabled .sec-tag,.ambient-enabled .sec-title,.ambient-enabled .hero-title{color:#305e51}
.ambient-enabled .sec-desc,.ambient-enabled .hero-subtitle,.ambient-enabled .choice-body,.ambient-enabled .note{color:#223d30}
.ambient-enabled .kitten-body,.ambient-enabled .parent-body{background:rgba(255,255,255,.24)}
.ambient-enabled .page-hero{border-radius:0!important}
.ambient-enabled .wave-divider{opacity:.55}
body.ambient-off .ambient-scene{visibility:hidden}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ambient-enabled:not(.ambient-off) .ambient-glass,.ambient-enabled:not(.ambient-off) .ambient-glass-copy:before{background:rgba(255,255,250,.89)!important}}
@media(prefers-reduced-motion:reduce){.ambient-scene canvas{display:none}}
@media print{.ambient-scene{display:none}.ambient-glass,.ambient-glass-copy:before{box-shadow:none!important;backdrop-filter:none!important}}

.ambient-enabled:not(.ambient-off) .ambient-glass .ambient-glass{background:rgba(255,255,255,.15)!important;-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:inset 0 0 0 1px rgba(255,255,255,.36)}
.ambient-enabled .hero-accent,.ambient-enabled .hero-accent .char{-webkit-text-fill-color:#305e51!important;background:none!important;color:#305e51!important}

/* A local reading veil protects small copy without whitening the whole section. */
.ambient-enabled:not(.ambient-off) .ambient-glass-copy:before{background:linear-gradient(135deg,rgba(255,255,255,.46),rgba(255,255,255,.32))}
.ambient-enabled .kitten-price{color:#24583c}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.ambient-enabled:not(.ambient-off) .ambient-glass-copy:before{background:rgba(255,255,250,.94)}}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.ambient-enabled:not(.ambient-off) .ambient-glass-copy:before{background:rgba(255,255,250,.92)}}

/* Service and reading pages keep their original geometry and foreground photos. */
.ambient-enabled:not(.ambient-off) :is(.service-hero,.service-section.is-white,.service-final-cta,.booking-hero,.blog-hero,.guide-hub){background:transparent}
.ambient-enabled:not(.ambient-off) :is(.service-table thead th,.guide-quick-start a){background:rgba(242,250,245,.32)}
.ambient-enabled:not(.ambient-off) .service-heading{background:transparent!important}
.ambient-enabled:not(.ambient-off) .service-hero-inner>.ambient-glass-copy:before{inset:-18px -10px}
.ambient-enabled:not(.ambient-off) :is(.service-final-cta,.booking-hero .container,.blog-hero,.blog-cat-heading):before{left:0;right:0}
.ambient-enabled:not(.ambient-off) :is(.service-table,.guide-card-body,.gal-caption){background:rgba(255,255,255,.20)}
.ambient-enabled:not(.ambient-off) :is(.service-proof,.booking-input,.booking-select,.booking-textarea,#blogSearch){background:rgba(255,255,255,.60)!important}
.ambient-enabled:not(.ambient-off) :is(.service-hero-inner,.service-heading,.service-price-card,.service-info-card,.service-table-wrap,.guide-card,.blog-card,.booking-form-card){color:var(--text-body)}
.ambient-enabled:not(.ambient-off) :is(.blog-cat-tag,.blog-card-cat,.guide-card-title){color:#285944}
.ambient-enabled:not(.ambient-off) :is(.blog-card-desc,.guide-card-desc){color:#354b41}
.ambient-enabled:not(.ambient-off) :is(.booking-form-card,.guide-figure figcaption){background:linear-gradient(135deg,rgba(255,255,255,.60),rgba(255,255,255,.42))!important}
.ambient-enabled:not(.ambient-off) .guide-figure figcaption :is(strong,small,span){color:#294638}
.ambient-enabled:not(.ambient-off) .experience-photo figcaption{color:#294638}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 .ambient-enabled:not(.ambient-off) :is(.service-proof,.booking-input,.booking-select,.booking-textarea,#blogSearch){background:rgba(255,255,250,.96)!important}
 .ambient-enabled:not(.ambient-off) :is(.booking-form-card,.guide-figure figcaption){background:rgba(255,255,250,.96)!important}
}
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){
 .ambient-enabled:not(.ambient-off) :is(.booking-form-card,.guide-figure figcaption,.service-proof,.booking-input,.booking-select,.booking-textarea,#blogSearch){background:rgba(255,255,250,.96)!important}
}

/* Information stays legible over every frame; the surrounding scene remains visible. */
.ambient-enabled:not(.ambient-off) :is(.hero-content,.page-hero,.kit-filters,.kit-discovery-bar,.filter-bar,.kittens-toolbar,.service-table-wrap,.service-care-details,.booking-form-card,.booking-sidebar .info-card,.faq-item) {
 background:rgba(255,254,248,.88)!important;
}
.ambient-enabled:not(.ambient-off) :is(.sec-header,.service-heading,.booking-hero .container,.guide-hub-header).ambient-glass-copy:before {
 background:rgba(255,254,248,.88);
}
.ambient-enabled:not(.ambient-off) :is(.kitten-body,.parent-body,.guide-card-body,.gal-caption) {background:rgba(255,254,248,.92)}
.ambient-enabled:not(.ambient-off) :is(.booking-input,.booking-select,.booking-textarea,#blogSearch) {background:rgba(255,255,255,.96)!important}
.ambient-enabled:not(.ambient-off) :is(.booking-form-card,.service-table-wrap,.kit-filters) :is(label,p,td,th) {color:#263f36}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){
 .ambient-enabled:not(.ambient-off) :is(.ambient-glass,.hero-content,.page-hero,.kit-filters,.filter-bar,.kittens-toolbar,.service-table-wrap,.service-care-details,.booking-form-card,.booking-sidebar .info-card,.faq-item,.kitten-body,.parent-body,.guide-card-body,.gal-caption),
 .ambient-enabled:not(.ambient-off) .ambient-glass-copy:before {background:rgba(255,254,248,.98)!important}
}
/* Detail pages use the same scene without covering the real kitten photographs. */
.ambient-enabled[data-ambient-page="kitten-detail"] .kitten-detail-section{background:transparent}
.ambient-enabled[data-ambient-page="kitten-detail"] .kitten-detail-info{padding:20px;background:rgba(255,254,248,.76)!important}
.ambient-enabled[data-ambient-page="kitten-detail"] .breadcrumb{background:rgba(255,254,248,.64);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}
.ambient-enabled[data-ambient-page="kitten-detail"] .kitten-detail-info :is(h1,h2,h3,p,li,dt,dd){color:#263f36}
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more){.ambient-enabled[data-ambient-page="kitten-detail"] .kitten-detail-info{background:rgba(255,254,248,.98)!important}}
