/* Design upgrade B (11-07): the forest/orange world carries on past the hero. Loaded last. */
:root{--np-deep:#16211d;--np-moss:#1f3a2f;--np-moss2:#244536;--np-glow:rgba(255,154,77,.20);--snow:#fffdf7}

/* hero: one big Call, the season slider is a show, not a control */
.season{display:none!important}
.up-call{display:flex!important;margin-top:22px}
.btn.big{font-size:18px;padding:17px 26px;min-height:58px;box-shadow:0 14px 34px rgba(255,154,77,.28)}
.btn.p{background:#ffb27a;color:#16211d}
.np-urgent{color:#ffe3c9;font-weight:600;margin-top:12px}
.np-bar .acts .o{display:inline-flex}

/* screen 2: seasons in colour, every card readable */
.sintro,.seasons{background:radial-gradient(120% 70% at 85% 0%,var(--np-glow),transparent 60%),linear-gradient(180deg,var(--np-moss) 0%,#1a3128 100%)}
.sintro h2{color:var(--snow)}
.sintro h2::after{content:"";display:block;width:64px;height:5px;border-radius:3px;background:#ff9a4d;margin-top:18px}
.chap .box,.chap.act .box{opacity:1;transform:none;background:linear-gradient(160deg,#27493a,#1d372c);border:1px solid rgba(255,178,122,.45);box-shadow:0 24px 50px rgba(5,12,9,.45)}
.chap .k{color:#ffb27a}
.chap h3{color:var(--snow)}
.chap p{color:#e4ebe6}
.chap .row{margin:0}
.chap img.th{filter:none} /* drop-shadow here paints a black tile in WebKit */

/* services stay peach (the light scene), no "Book" on cards */
.card{cursor:default}
.card .go{font-weight:500}
.np-fix header p{color:#22322b}

/* steps: thermostat-dial numbers on moss */
.up-steps{background:radial-gradient(90% 60% at 10% 100%,var(--np-glow),transparent 65%),var(--np-moss);color:var(--snow);padding:100px 4vw}
.up-steps .k{color:#ffb27a}
.up-steps h2{font:600 clamp(38px,5.5vw,80px)/.95 Jak,sans-serif;letter-spacing:-.03em;margin:10px 0 34px}
.up-steps ol{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:14px;counter-reset:st;margin:0;padding:0}
.up-steps li{counter-increment:st;position:relative;background:#16211d;border:1px solid rgba(255,178,122,.35);border-radius:24px;padding:84px 22px 24px;line-height:1.45}
.up-steps li::before{content:counter(st);position:absolute;left:22px;top:20px;width:50px;height:50px;border-radius:50%;display:grid;place-items:center;font:600 22px Jak,sans-serif;color:#fff;background:radial-gradient(circle at 35% 30%,#3a3f44,#0c0e10 70%);box-shadow:inset 0 0 0 3px #d9a273,0 8px 18px rgba(0,0,0,.4)}
.up-steps li b{display:block;font:600 21px/1.15 Jak,sans-serif;margin-bottom:8px;color:var(--snow)}
.up-steps li span{color:#dbe4de}
.up-row{margin-top:26px;display:flex}

/* helper keeps the colour */
.np-help{background:linear-gradient(180deg,#1a3128,var(--np-deep))}
.chip{background:#244536;border-color:#3d6150;color:#f2f6f3}
.answer{background:#1d372c;border-color:#3d6150}
.answer ol{color:#e4ebe6}
.answer .btn{margin-top:4px}

/* trust: snow scene + the one quiet call-back form */
.np-trust dt{color:#4f5b54}
.up-cb{margin-top:34px;padding:22px;border-radius:22px;background:#16211d;color:var(--snow);display:grid;gap:12px;max-width:440px}
.up-cb h3{font:600 24px Jak,sans-serif;letter-spacing:-.01em}
.up-cb label{display:grid;gap:6px;font-size:14px;color:#dbe4de}
.up-cb input{background:#1f3a2f;border:1px solid #3d6150;border-radius:14px;padding:14px;color:#fff;font:16px Ins,sans-serif}
.up-cb input:focus{outline:2px solid #ffb27a;border-color:transparent}
.up-cb .btn{justify-content:center;min-height:52px}
.up-cb .pg-err{color:#ffb4a6;font-size:14px;min-height:0}
.up-cb .pg-sent{font-size:17px;line-height:1.45}
footer{color:#b9c4bd}
footer a{color:#e4ebe6}

/* inner pages */
.pg-hero .row .btn.p{min-height:52px}

@media (max-width:900px){
  .copy{bottom:28px}
  .np-hero{height:auto;min-height:calc(100svh - 100px)}
  .tstat{top:16px}
  .lead{font-size:16px}
  .up-call .btn{width:100%;justify-content:center}
  .np-urgent{min-height:44px}
  .chap{min-height:auto;padding:14px 0}
  .seasons .stick{position:relative;top:0;height:46vh}
  .chapters{padding:18px 4vw 40px}
  .chap .box{backdrop-filter:none;-webkit-backdrop-filter:none}
  .up-steps,.np-help,.np-trust,.np-fix,.sintro{padding-top:64px;padding-bottom:64px}
  .sintro{padding-bottom:26px}
  .up-steps ol{grid-template-columns:1fr}
  .up-row .btn{width:100%;justify-content:center;min-height:56px;font-size:17px}
  .pg-hero .row .btn,.pg-cta .row .btn{width:100%;justify-content:center;min-height:56px}
  .pg-cta .row{width:100%}
}
@media (max-width:900px){
  .dial{width:38vw}
  .dial .out{display:none}
  .dial .mode{font-size:10px;letter-spacing:.14em}
}
.rev cite,.rev .note{color:#56625b}
#callback{scroll-margin-top:90px}
@media (max-width:900px){.dial{width:32vw}.tstat{top:10px}.dial .mode{font-size:9px}}
@media (max-width:900px){.dial .mode{font-size:8.5px;letter-spacing:.05em;margin-top:2px}.dial .num{font-size:40px}}
/* final pass 1107-155512: hero eyebrow readable over snow; the forest world carries on to the end (snow only on cards) */
.np-hero .copy .k{color:#ffb27a;background:rgba(22,33,29,.78);display:inline-block;padding:6px 10px;border-radius:8px;letter-spacing:.16em;text-shadow:none}
.np-trust{background:radial-gradient(90% 60% at 90% 0%,var(--np-glow),transparent 60%),var(--np-deep);color:var(--snow)}
.np-trust h2{color:var(--snow)}
.np-trust dt{color:#ffb27a}
.np-trust dd,.np-trust dd a{color:#e4ebe6}
.np-trust .up-cb{background:var(--np-moss);border:1px solid rgba(255,178,122,.35)}
.np-trust .rev blockquote{background:var(--snow);color:#16211d}
.np-trust .rev .note{color:#b9c4bd}
.np-trust .rev cite{color:#56625b}
