/*
  Oloropa core-page Alabaster Linen refactor
  Scope: serenity-homes.php/html, services.php, about.php, contact.php, booking.php
  Purpose: normalize the main content wrapper to Alabaster Linen (#FDFBF7),
  reuse the Day-to-Night Residence Mood Switcher warm taupe/grey surface for
  the Residence Fit Assurance band, and make support-page cards harmonize with
  the lighter public palette without bringing back green casts.
*/
:root{
  --ol-alabaster-linen:#FDFBF7;
  --ol-alabaster-ink:#2B211A;
  --ol-alabaster-earth:#4A3B32;
  --ol-alabaster-muted:rgba(43,33,26,.70);
  --ol-alabaster-line:rgba(43,33,26,.12);
  --ol-alabaster-gold:#D4A373;
  --ol-alabaster-soft:linear-gradient(365deg,#FDFBF7 0%,#FDFBF7 100%);
  --ol-alabaster-card:linear-gradient(365deg,rgba(253,251,247,.96) 0%,rgba(253,251,247,.90) 100%);
  --ol-alabaster-lift:linear-gradient(365deg,rgba(255,255,255,.70) 0%,rgba(253,251,247,.94) 100%);
  --ol-daynight-mood-surface:linear-gradient(365deg,#514940 0%,#8C8376 52%,#D2CBBD 100%);
}

/* Main-content wrapper: keep all core public pages on Alabaster Linen. */
body[data-oloropa-page="serenity-homes.html"],
body[data-oloropa-page="serenity-homes.php"],
body[data-oloropa-page="services.php"],
body[data-oloropa-page="about.php"],
body[data-oloropa-page="contact.php"],
body[data-oloropa-page="booking.php"]{
  background:var(--ol-alabaster-soft)!important;
  background-color:var(--ol-alabaster-linen)!important;
  color:var(--ol-alabaster-ink)!important;
}

body[data-oloropa-page="serenity-homes.html"] main#main-content,
body[data-oloropa-page="serenity-homes.php"] main#main-content,
body[data-oloropa-page="services.php"] main#main-content,
body[data-oloropa-page="about.php"] main#main-content,
body[data-oloropa-page="contact.php"] main#main-content,
body[data-oloropa-page="booking.php"] main#main-content{
  background:var(--ol-alabaster-soft)!important;
  background-color:var(--ol-alabaster-linen)!important;
  color:var(--ol-alabaster-ink)!important;
  overflow-x:clip!important;
}

/* Serenity Homes: sampled Day-to-Night warm taupe/grey mood surface reused on Residence Fit Assurance. */
body[data-oloropa-page="serenity-homes.html"] .sh7-atelier-main,
body[data-oloropa-page="serenity-homes.php"] .sh7-atelier-main{
  background:var(--ol-alabaster-soft)!important;
  color:var(--ol-alabaster-ink)!important;
}

body[data-oloropa-page="serenity-homes.html"] .sh7-section:not(.sh7-hero):not(.sh7-night):not(#residence-fit-assurance-section),
body[data-oloropa-page="serenity-homes.php"] .sh7-section:not(.sh7-hero):not(.sh7-night):not(#residence-fit-assurance-section),
body[data-oloropa-page="serenity-homes.html"] .sh7-sand,
body[data-oloropa-page="serenity-homes.php"] .sh7-sand,
body[data-oloropa-page="serenity-homes.html"] .sh7-memory,
body[data-oloropa-page="serenity-homes.php"] .sh7-memory{
  background:var(--ol-alabaster-soft)!important;
  background-color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="serenity-homes.html"] .sh7-night,
body[data-oloropa-page="serenity-homes.php"] .sh7-night,
body[data-oloropa-page="serenity-homes.html"] #residence-fit-assurance-section,
body[data-oloropa-page="serenity-homes.php"] #residence-fit-assurance-section{
  background:var(--ol-daynight-mood-surface)!important;
  background-color:#8C8376!important;
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="serenity-homes.html"] #residence-fit-assurance-section .sh7-section-head h2,
body[data-oloropa-page="serenity-homes.php"] #residence-fit-assurance-section .sh7-section-head h2,
body[data-oloropa-page="serenity-homes.html"] #residence-fit-assurance-section .sh7-section-head p,
body[data-oloropa-page="serenity-homes.php"] #residence-fit-assurance-section .sh7-section-head p{
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="serenity-homes.html"] .sh7-assurance-grid article,
body[data-oloropa-page="serenity-homes.php"] .sh7-assurance-grid article{
  background:linear-gradient(365deg,rgba(253,251,247,.16) 0%,rgba(253,251,247,.08) 100%)!important;
  border-color:rgba(253,251,247,.22)!important;
  color:var(--ol-alabaster-linen)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

body[data-oloropa-page="serenity-homes.html"] .sh7-residence-card,
body[data-oloropa-page="serenity-homes.html"] .sh7-feature-card,
body[data-oloropa-page="serenity-homes.html"] .sh7-service-card,
body[data-oloropa-page="serenity-homes.html"] .sh7-fit-row,
body[data-oloropa-page="serenity-homes.html"] .sh7-fit-card-grid article,
body[data-oloropa-page="serenity-homes.php"] .sh7-residence-card,
body[data-oloropa-page="serenity-homes.php"] .sh7-feature-card,
body[data-oloropa-page="serenity-homes.php"] .sh7-service-card,
body[data-oloropa-page="serenity-homes.php"] .sh7-fit-row,
body[data-oloropa-page="serenity-homes.php"] .sh7-fit-card-grid article{
  background:var(--ol-alabaster-card)!important;
  border-color:var(--ol-alabaster-line)!important;
  color:var(--ol-alabaster-ink)!important;
}

/* Shared support pages: body/main stay Alabaster; child sections use quiet ivory surfaces. */
body[data-oloropa-page="services.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="about.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="contact.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="booking.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="services.php"] .sp-section.sand,
body[data-oloropa-page="about.php"] .sp-section.sand,
body[data-oloropa-page="contact.php"] .sp-section.sand,
body[data-oloropa-page="booking.php"] .sp-section.sand,
body[data-oloropa-page="services.php"] .cct-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="about.php"] .cct-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="contact.php"] .cct-section:not(.sp-hero):not(.earth-video):not(.dark),
body[data-oloropa-page="booking.php"] .cct-section:not(.sp-hero):not(.earth-video):not(.dark){
  background:var(--ol-alabaster-soft)!important;
  background-color:var(--ol-alabaster-linen)!important;
  color:var(--ol-alabaster-ink)!important;
}

body[data-oloropa-page="services.php"] .sp-section.dark,
body[data-oloropa-page="about.php"] .sp-section.dark,
body[data-oloropa-page="contact.php"] .sp-section.dark,
body[data-oloropa-page="booking.php"] .sp-section.dark{
  background:var(--ol-daynight-mood-surface)!important;
  background-color:#8C8376!important;
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="services.php"] .sp-section.earth-video,
body[data-oloropa-page="about.php"] .sp-section.earth-video,
body[data-oloropa-page="contact.php"] .sp-section.earth-video,
body[data-oloropa-page="booking.php"] .sp-section.earth-video{
  background:var(--ol-daynight-mood-surface)!important;
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="services.php"] .sp-section.earth-video::after,
body[data-oloropa-page="about.php"] .sp-section.earth-video::after,
body[data-oloropa-page="contact.php"] .sp-section.earth-video::after,
body[data-oloropa-page="booking.php"] .sp-section.earth-video::after{
  background:linear-gradient(365deg,rgba(81,73,64,.90),rgba(81,73,64,.66) 52%,rgba(210,203,189,.24))!important;
}

body[data-oloropa-page="services.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::before,
body[data-oloropa-page="services.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::after,
body[data-oloropa-page="about.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::before,
body[data-oloropa-page="about.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::after,
body[data-oloropa-page="contact.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::before,
body[data-oloropa-page="contact.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::after,
body[data-oloropa-page="booking.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::before,
body[data-oloropa-page="booking.php"] .sp-section:not(.sp-hero):not(.earth-video):not(.dark)::after{
  background:transparent!important;
  opacity:0!important;
}

body[data-oloropa-page="services.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card),
body[data-oloropa-page="about.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card),
body[data-oloropa-page="contact.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card),
body[data-oloropa-page="booking.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card){
  background:var(--ol-alabaster-card)!important;
  border-color:var(--ol-alabaster-line)!important;
  color:var(--ol-alabaster-ink)!important;
  box-shadow:0 18px 48px rgba(43,33,26,.09)!important;
  backdrop-filter:blur(14px)!important;
  -webkit-backdrop-filter:blur(14px)!important;
}

body[data-oloropa-page="services.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(h2,h3,h4,strong,b,label),
body[data-oloropa-page="about.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(h2,h3,h4,strong,b,label),
body[data-oloropa-page="contact.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(h2,h3,h4,strong,b,label),
body[data-oloropa-page="booking.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(h2,h3,h4,strong,b,label){
  color:var(--ol-alabaster-earth)!important;
}

body[data-oloropa-page="services.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(p,li,span,small,em),
body[data-oloropa-page="about.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(p,li,span,small,em),
body[data-oloropa-page="contact.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(p,li,span,small,em),
body[data-oloropa-page="booking.php"] :is(.sp-card,.sp-step,.cct-tool-card,.cct-trust-card,.phase7-tool-panel,.phase7-service-card,.phase7-method-card,.phase7-reason-card,.phase7-channel-card,.phase7-result-card,.ol-cal-panel,.ol-cal-source-card) :is(p,li,span,small,em){
  color:var(--ol-alabaster-muted)!important;
}

body[data-oloropa-page="services.php"] :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="about.php"] :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="contact.php"] :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="booking.php"] :is(.sp-head h2,.cct-head h2){
  color:var(--ol-alabaster-earth)!important;
}

body[data-oloropa-page="services.php"] :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="about.php"] :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="contact.php"] :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="booking.php"] :is(.sp-head>p,.cct-head>p){
  color:var(--ol-alabaster-muted)!important;
}

body[data-oloropa-page="services.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="about.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="contact.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="booking.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head h2,.cct-head h2),
body[data-oloropa-page="services.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="about.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="contact.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head>p,.cct-head>p),
body[data-oloropa-page="booking.php"] :is(.sp-section.dark,.sp-section.earth-video) :is(.sp-head>p,.cct-head>p){
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="services.php"] .cct-final-cta .sp-inner,
body[data-oloropa-page="about.php"] .cct-final-cta .sp-inner,
body[data-oloropa-page="contact.php"] .cct-final-cta .sp-inner,
body[data-oloropa-page="booking.php"] .cct-final-cta .sp-inner{
  background:var(--ol-daynight-mood-surface)!important;
  border:1px solid rgba(253,251,247,.24)!important;
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="services.php"] .cct-final-cta .sp-inner :is(h2,p),
body[data-oloropa-page="about.php"] .cct-final-cta .sp-inner :is(h2,p),
body[data-oloropa-page="contact.php"] .cct-final-cta .sp-inner :is(h2,p),
body[data-oloropa-page="booking.php"] .cct-final-cta .sp-inner :is(h2,p){
  color:var(--ol-alabaster-linen)!important;
}

body[data-oloropa-page="services.php"] :is(input,select,textarea),
body[data-oloropa-page="about.php"] :is(input,select,textarea),
body[data-oloropa-page="contact.php"] :is(input,select,textarea),
body[data-oloropa-page="booking.php"] :is(input,select,textarea){
  background:var(--ol-alabaster-lift)!important;
  border-color:var(--ol-alabaster-line)!important;
  color:var(--ol-alabaster-ink)!important;
}

body[data-oloropa-page="services.php"] .sp-btn,
body[data-oloropa-page="about.php"] .sp-btn,
body[data-oloropa-page="contact.php"] .sp-btn,
body[data-oloropa-page="booking.php"] .sp-btn,
body[data-oloropa-page="serenity-homes.html"] .sh7-actions a,
body[data-oloropa-page="serenity-homes.php"] .sh7-actions a{
  background:var(--ol-alabaster-gold)!important;
  color:var(--ol-alabaster-ink)!important;
}

body[data-oloropa-page="services.php"] .sp-btn.ghost,
body[data-oloropa-page="about.php"] .sp-btn.ghost,
body[data-oloropa-page="contact.php"] .sp-btn.ghost,
body[data-oloropa-page="booking.php"] .sp-btn.ghost{
  background:var(--ol-alabaster-card)!important;
  color:var(--ol-alabaster-earth)!important;
  border:1px solid var(--ol-alabaster-line)!important;
}

@media (max-width:760px){
  body[data-oloropa-page="services.php"] .sp-section,
  body[data-oloropa-page="about.php"] .sp-section,
  body[data-oloropa-page="contact.php"] .sp-section,
  body[data-oloropa-page="booking.php"] .sp-section,
  body[data-oloropa-page="serenity-homes.html"] .sh7-section,
  body[data-oloropa-page="serenity-homes.php"] .sh7-section{
    background-size:auto!important;
  }
}
