
/* =========================================================
   UNIFIED RESIDENTIAL PROTECTION DESIGN SYSTEM
   SecureSociety + SecureScore
   CEO/CMO rebuild: warm residential premium, controlled emerald/gold,
   icon-first, operational storytelling, no dark-heavy dashboard.
   ========================================================= */

:root{
  --rp-bg:#FBFAF6;
  --rp-stone:#F5F6F1;
  --rp-mist:#EEF3EC;
  --rp-card:#FFFFFF;
  --rp-ink:#14231E;
  --rp-soft:#60736C;
  --rp-emerald:#0F5B4D;
  --rp-emerald-2:#0D7A63;
  --rp-action:#14B88A;
  --rp-gold:#B78A2C;
  --rp-gold-2:#D2A84A;
  --rp-gold-dark:#8E6B18;
  --rp-line:rgba(20,35,30,.10);
  --rp-line-emerald:rgba(15,91,77,.16);
  --rp-shadow:0 18px 50px rgba(20,35,30,.10);
  --rp-soft-shadow:0 10px 30px rgba(20,35,30,.07);
}

html,body{
  max-width:100%;
  overflow-x:hidden!important;
}

body{
  background:
    radial-gradient(circle at 16% -8%,rgba(15,91,77,.10),transparent 32%),
    linear-gradient(180deg,var(--rp-bg) 0%,var(--rp-stone) 52%,#FFFFFF 100%)!important;
  color:var(--rp-ink)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"SF Pro Display","Segoe UI",Arial,sans-serif!important;
  letter-spacing:-.01em;
}

.mobileTop,.top{
  background:rgba(251,250,246,.92)!important;
  border-bottom:1px solid var(--rp-line)!important;
  box-shadow:0 8px 30px rgba(20,35,30,.07)!important;
  backdrop-filter:blur(20px)!important;
}

.brand img,.logoBox,.heroVisual>img{
  background:linear-gradient(145deg,#07110F,#123024)!important;
  border:1px solid rgba(183,138,44,.34)!important;
  box-shadow:0 12px 34px rgba(20,35,30,.14)!important;
}

.brand h1{
  color:var(--rp-ink)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:950!important;
  letter-spacing:-.05em!important;
}
.brand p{
  color:var(--rp-emerald)!important;
  letter-spacing:.14em!important;
  font-weight:900!important;
}

.menuBtn{
  background:#FFFFFF!important;
  color:var(--rp-emerald)!important;
  border:1px solid var(--rp-line-emerald)!important;
  box-shadow:var(--rp-soft-shadow)!important;
}

.drawer,.scoreDrawer{
  background:#FFFFFF!important;
  border:1px solid var(--rp-line)!important;
  box-shadow:var(--rp-shadow)!important;
}
.drawer a,.scoreDrawer a{color:var(--rp-ink)!important}
.drawer a:hover,.scoreDrawer a:hover{background:var(--rp-mist)!important;color:var(--rp-emerald)!important}

.hero{
  background:
    radial-gradient(circle at 8% 8%,rgba(15,91,77,.08),transparent 35%),
    linear-gradient(135deg,#FFFFFF 0%,#FBFAF6 58%,#F7F0DC 100%)!important;
  border:1px solid rgba(20,35,30,.08)!important;
  box-shadow:var(--rp-shadow)!important;
  color:var(--rp-ink)!important;
}

.hero h2,.big,h2.big{
  color:var(--rp-ink)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  font-weight:950!important;
  letter-spacing:-.055em!important;
  text-shadow:none!important;
  opacity:1!important;
}
.hero h2:after,.big:after{
  color:var(--rp-emerald-2)!important;
  letter-spacing:-.04em!important;
}
.hero p,.lead{
  color:var(--rp-soft)!important;
  font-weight:650!important;
  line-height:1.65!important;
  opacity:1!important;
}

.chips span,.pills span{
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(20,35,30,.10)!important;
  color:var(--rp-ink)!important;
  box-shadow:0 8px 22px rgba(20,35,30,.06)!important;
  opacity:1!important;
}
.chips span:nth-child(2),.chips span:nth-child(3),
.pills span:nth-child(2),.pills span:nth-child(3){
  background:#FFF8E8!important;
  border-color:rgba(183,138,44,.24)!important;
  color:var(--rp-gold-dark)!important;
}

.goldBtn{
  background:linear-gradient(135deg,var(--rp-emerald),var(--rp-action))!important;
  color:#FFFFFF!important;
  border:0!important;
  box-shadow:0 14px 34px rgba(15,91,77,.22)!important;
}
.darkBtn,.ghost{
  background:#FFFFFF!important;
  color:var(--rp-emerald)!important;
  border:1px solid var(--rp-line-emerald)!important;
  box-shadow:0 10px 26px rgba(20,35,30,.06)!important;
}

.warning,.rolePanel,.features,.pilot,.integrationSection,.liveFlow,
.card,.feature,.metric,.riskPulse,.contactBlock,.qCard,.reportHero,.resultConversionBand,
.roleCard,.featureGrid article,.integrationCard,.scenarioCard,.statusGrid div,
.stage4-panel,.phase3-proof-card,.stage4-icon-card,.stage4-risk-bar,.meter,.simCard,.riskCard,.module,.threatCard{
  background:rgba(255,255,255,.92)!important;
  color:var(--rp-ink)!important;
  border:1px solid var(--rp-line)!important;
  box-shadow:var(--rp-soft-shadow)!important;
}

.warning h3,.sectionTitle h2,.pilot h2,.roleCard h3,.featureGrid b,.integrationCard b,.scenarioCard b,
.feature h3,.riskPulse b,.resultHero h1,.qCard h1,.stage4-panel h2,.stage4-panel h3,
.phase3-proof-card b,.metric strong,.miniCards b,.stage4-risk-top,.threatCard b,.module b,.simCard b{
  color:var(--rp-ink)!important;
  font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif!important;
  text-shadow:none!important;
  opacity:1!important;
}
.warning p,.sectionTitle p,.pilot p,.roleCard p,.roleCard li,.featureGrid p,.integrationCard p,.scenarioCard p,
.feature p,.riskPulse span,.metric small,.qCard p,.resultHero>p,.stage4-panel p,.phase3-proof-card span,
.threatCard p,.module span,.simCard p,.small{
  color:var(--rp-soft)!important;
  opacity:1!important;
  line-height:1.62!important;
}

.sectionTitle span,.pilot span,.category,.statusGrid span{
  color:var(--rp-emerald)!important;
}
.statusGrid b,.metric b{color:var(--rp-ink)!important}

.ss-action-hub,.phase3-proof-strip,.stage4-icon-grid,.riskCards,.grid4{
  gap:18px!important;
}
.ss-action-tile{
  background:#FFFFFF!important;
  border:1px solid var(--rp-line)!important;
  color:var(--rp-ink)!important;
  box-shadow:var(--rp-soft-shadow)!important;
}
.ss-action-icon,.stage4-icon,.feature i{
  background:var(--rp-mist)!important;
  color:var(--rp-emerald)!important;
  border:1px solid rgba(15,91,77,.10)!important;
}
.ss-action-tile b{color:var(--rp-ink)!important}
.ss-action-tile small{color:var(--rp-soft)!important}

.ss-live-card,.score-intel-main,.stage4-panel.dark{
  background:
    radial-gradient(circle at 20% 0%,rgba(183,138,44,.10),transparent 34%),
    linear-gradient(145deg,#07110F,#123024)!important;
  color:#FFFFFF!important;
  border:1px solid rgba(183,138,44,.26)!important;
  box-shadow:0 22px 54px rgba(20,35,30,.18)!important;
}
.ss-live-card h3,.score-intel-main h3,.stage4-panel.dark h3{color:#FFFFFF!important}
.ss-live-card p,.score-intel-main p,.stage4-panel.dark p{color:#DCEAE4!important}
.ss-feed div,.score-intel-list div,.stage4-flow div{
  background:rgba(255,255,255,.08)!important;
  border:1px solid rgba(255,255,255,.12)!important;
  color:#FFFFFF!important;
}

.ss-health-card,.score-readiness,.stage4-cta-band{
  background:linear-gradient(135deg,#FFFDF6,#FFF8E8)!important;
  border:1px solid rgba(183,138,44,.20)!important;
  color:var(--rp-ink)!important;
  box-shadow:var(--rp-soft-shadow)!important;
}
.ss-health-card b,.score-readiness b,.stage4-report-score{
  color:var(--rp-ink)!important;
}
.ss-health-card p,.score-readiness p,.stage4-cta-band p{
  color:#6A571D!important;
}

.stage4-report-score{
  background:#FFF8E8!important;
  border-color:var(--rp-gold)!important;
}

input,select,textarea{
  background:#FFFFFF!important;
  color:var(--rp-ink)!important;
  border:1px solid rgba(20,35,30,.14)!important;
  box-shadow:0 8px 20px rgba(20,35,30,.04)!important;
  border-radius:18px!important;
}
input::placeholder,textarea::placeholder{color:#82918C!important}

/* Elegant form treatment: no ugly dark blocks */
.contactBlock,#request-review,.pilotForm,.leadForm,#reviewForm{
  background:#FFFFFF!important;
  color:var(--rp-ink)!important;
  border-color:var(--rp-line)!important;
}
.leadForm{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:14px!important;
}
.leadForm button{
  grid-column:auto!important;
  justify-self:start!important;
  min-width:220px!important;
  width:auto!important;
}
#contactInfo,.leadForm input[placeholder*="Phone"]{
  grid-column:1/-1!important;
  max-width:560px!important;
}

.rp-hero-kicker{
  display:flex;
  gap:10px;
  align-items:center;
  color:var(--rp-emerald);
  font-weight:950;
  margin-bottom:10px;
}
.rp-family-proof{
  margin:20px auto;
  display:grid;
  grid-template-columns:1.1fr .9fr;
  gap:18px;
}
.rp-family-card{
  background:#FFFFFF;
  border:1px solid var(--rp-line);
  box-shadow:var(--rp-shadow);
  border-radius:32px;
  padding:28px;
}
.rp-family-card h2{
  margin:0 0 10px;
  color:var(--rp-ink);
  font-size:34px;
  line-height:1.1;
  letter-spacing:-.04em;
}
.rp-family-card p{
  color:var(--rp-soft);
  line-height:1.62;
  margin:0;
}
.rp-family-grid{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:12px;
  margin-top:18px;
}
.rp-mini{
  border:1px solid var(--rp-line);
  border-radius:20px;
  padding:14px;
  background:var(--rp-stone);
}
.rp-mini b{display:block;color:var(--rp-ink);margin-bottom:4px}
.rp-mini span{color:var(--rp-soft);font-size:13px;line-height:1.4}
.rp-mini.gold{
  background:#FFF8E8;
  border-color:rgba(183,138,44,.22);
}

@media(max-width:980px){
  body{padding-bottom:96px!important}
  .topActions{display:none!important}
  .hero,.card,.warning,.rolePanel,.features,.pilot,.integrationSection,.liveFlow,.contactBlock,#request-review,.stage4-cta-band,.rp-family-card{
    border-radius:26px!important;
    padding:18px!important;
  }
  .hero h2,.big,h2.big{
    font-size:32px!important;
    line-height:1.08!important;
    letter-spacing:-.045em!important;
  }
  .hero p,.lead{
    font-size:15px!important;
    line-height:1.6!important;
  }
  .chips,.pills{
    grid-template-columns:1fr!important;
  }
  .rp-family-proof{
    grid-template-columns:1fr;
    gap:12px;
  }
  .rp-family-card h2{font-size:25px}
  .rp-family-grid{grid-template-columns:1fr}
  .leadForm{
    grid-template-columns:1fr!important;
  }
  .leadForm button{
    width:100%!important;
    justify-self:stretch!important;
  }
  #contactInfo,.leadForm input[placeholder*="Phone"]{
    max-width:none!important;
  }
}
@media(max-width:420px){
  .hero h2,.big,h2.big{font-size:29px!important}
}
