/*
  Mon Habitat Senior — UI theme 2026
  Visual layer only: no interaction, form flow or business logic is changed here.
*/
:root{
  --navy-950:#071827;
  --navy-900:#0b2035;
  --navy-800:#17354d;
  --navy-700:#294b62;
  --blue-700:#234a63;
  --blue-600:#315a72;
  --blue-500:#52798d;
  --blue-300:#b8c9d0;
  --blue-soft:#e9eef0;
  --blue-line:#cdd9dd;
  --sage-700:#8b673b;
  --sage-600:#b88b55;
  --sage-soft:#f1e6d5;
  --sage-line:#dfc8a8;
  --ice-50:#faf7f1;
  --ice-100:#f0e9de;
  --ice-200:#ddd2c3;
  --cool-line:#ddd2c3;
  --text:#24313a;
  --muted:#5b6870;
  --muted-light:#5f6b72;
  --muted-2:#5f6b72;
  --white:#fffdf8;
  --accent:#b88b55;
  --radius:14px;
  --shadow-lg:0 34px 74px -34px rgba(7,24,39,.42);
  --shadow-md:0 18px 42px -28px rgba(7,24,39,.34);
  --font:"Manrope","Segoe UI",sans-serif;
  --display:"Newsreader","Iowan Old Style","Palatino Linotype",Georgia,serif;
}

html{background:#071827}
body{
  background:#f6f2ea;
  color:var(--text);
  font-family:var(--font);
  line-height:1.72;
  letter-spacing:-.005em;
  overflow-x:clip;
}
body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  pointer-events:none;
  display:none;
  opacity:0;
  background-image:linear-gradient(rgba(11,32,53,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(11,32,53,.04) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(to bottom,transparent 0,#000 18%,#000 82%,transparent 100%);
}
::selection{background:#d9c09c;color:#071827}
img{filter:saturate(1.025) contrast(1.035)}
.container{max-width:1220px;padding-inline:28px}
h1,h2,.section-title,.form-title,.p-hero h1,.c-hero h1,.l-hero h1,.a-hero h1{
  font-family:var(--display);
  font-weight:600;
  letter-spacing:-.035em;
}
h3,h4,h5{letter-spacing:-.018em}
p{letter-spacing:-.006em}
a,button,input,select,textarea,summary{font-family:var(--font)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid #315a72;
  outline-offset:4px;
}
.field label,.c-field label,.apply-field label{font-size:13px;letter-spacing:.045em}

/* Shared navigation */
.header{
  border-bottom:1px solid rgba(11,32,53,.12);
  background:rgba(248,245,239,.9);
  backdrop-filter:blur(18px) saturate(1.1);
}
.header.scrolled{
  background:rgba(248,245,239,.96);
  box-shadow:0 16px 40px -34px rgba(7,24,39,.7);
}
.header-inner{height:78px}
.header-logo{gap:12px}
.header-logo img,.footer-brand img{
  border-radius:0;
  filter:none;
}
.header-logo img{
  width:54px;
  height:54px;
  padding:4px;
  object-fit:contain;
  border:1px solid rgba(184,139,85,.28);
  border-radius:9px;
  background:#fbf7ef;
}
.header-logo .logo-text{display:block;font-size:24px;line-height:1;color:var(--navy-900)}
.footer-brand span{display:none}
.header-logo .logo-text,.footer-brand span{
  font-family:var(--display);
  font-size:24px;
  font-weight:600;
  letter-spacing:-.035em;
}
.header-logo .logo-text b,.footer-brand span b{color:var(--sage-600)}
.header-nav{gap:36px}
.header-nav a{
  color:#50645d;
  font-size:13px;
  font-weight:700;
  letter-spacing:.015em;
}
.header-nav a:hover{color:var(--navy-900)}
.header-cta{gap:12px}

.page-partners .header:not(.scrolled) .header-logo,
.page-contact .header:not(.scrolled) .header-logo,
.page-legal .header:not(.scrolled) .header-logo,
.page-article .header:not(.scrolled) .header-logo{
  padding:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}

/* Custom monochrome icon language */
.ui-icon{display:inline-block;width:1.15em;height:1.15em;flex:none;color:currentColor;vertical-align:-.18em}
.hero-badge{gap:9px;padding-left:0}
.hero-badge::before{display:none}
.hero-badge .ui-icon{width:18px;height:18px}
.avatar-token{
  width:34px;
  height:34px;
  margin-left:0;
  display:grid;
  place-items:center;
  border:1px solid rgba(216,191,165,.52);
  border-radius:5px;
  color:#ead6bf;
  background:rgba(255,255,255,.06);
  box-shadow:none;
}
.avatar-token:first-child{margin-left:0}
.avatar-token:nth-child(2),.avatar-token:nth-child(3){background:rgba(255,255,255,.06)}
.avatar-token .ui-icon{width:18px;height:18px}
.hero-avatars{gap:6px}
.hero-proof{padding-left:16px;border-left:1px solid rgba(216,191,165,.42)}
.hero-proof-text .stars{display:none}
.opt .ico{filter:none;color:var(--navy-900)}
.opt .ico .ui-icon{width:21px;height:21px}
.story-loc,.project-loc,.rp-loc,.price-unlock,.form-trust,.congrats,.testi-tag,.aids-note{display:flex;align-items:center;gap:7px}
.story-loc .ui-icon,.project-loc .ui-icon,.rp-loc .ui-icon{width:14px;height:14px}
.price-unlock .ui-icon{width:12px;height:12px}
.form-trust .ui-icon{width:14px;height:14px;color:var(--sage-700)}
.congrats .ui-icon{width:20px;height:20px}
.aid-ico .ui-icon{width:25px;height:25px;color:var(--navy-900)}
.aids-note>.ui-icon{width:19px;height:19px;color:var(--sage-700);margin-top:2px}
.testi-tag .ui-icon{width:14px;height:14px}
.testi-monogram{
  width:46px;
  height:46px;
  flex:none;
  display:grid;
  place-items:center;
  border:1px solid #c9b9a7;
  border-radius:7px;
  color:var(--navy-900);
  background:#eee5d9;
  font-family:var(--display);
  font-size:15px;
  font-weight:600;
}

/* Buttons — tactile, architectural and easy to target */
.btn{
  min-height:50px;
  border-radius:7px;
  font-size:14.5px;
  font-weight:800;
  letter-spacing:.005em;
  box-shadow:none;
  transition:transform .18s ease,box-shadow .18s ease,background .18s ease,border-color .18s ease,color .18s ease;
}
.btn-accent,.btn-next{
  color:#fff;
  background:var(--navy-900);
  border:1px solid var(--navy-900);
  box-shadow:0 12px 28px -18px rgba(7,24,39,.75);
}
.btn-accent:hover,.btn-next:hover{
  background:#17354d;
  border-color:#17354d;
  transform:translateY(-2px);
  box-shadow:0 18px 34px -20px rgba(7,24,39,.78);
}
.btn-ghost,.btn-outline-dark{
  background:transparent;
  color:var(--navy-900);
  border:1px solid rgba(11,32,53,.28);
}
.btn-ghost:hover,.btn-outline-dark:hover{background:var(--navy-900);border-color:var(--navy-900);color:#fff}
.btn-sm{min-height:44px;padding:11px 20px}

/* Shared editorial rhythm */
.section{padding-block:112px}
.section.tight{padding-block:88px}
.bg-ice,.testis,.aids{background:#eee8de}
.bg-navy{background:var(--navy-900)}
.section-blob::before{background:none!important}
.eyebrow,.hero-badge{
  border:0;
  border-radius:0;
  padding:0 0 0 30px;
  background:transparent;
  color:var(--sage-700);
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
  position:relative;
}
.eyebrow::before,.hero-badge::before{
  content:"";
  position:absolute;
  left:0;
  top:50%;
  width:20px;
  height:1px;
  background:currentColor;
}
.eyebrow.on-navy{background:transparent;border:0;color:#dbc7b2}
.section-title{font-size:clamp(34px,4vw,52px);line-height:1.05;color:var(--navy-900);margin-bottom:20px}
.section-sub{font-size:16px;line-height:1.8;color:var(--muted);max-width:650px}
.section.bg-navy .section-title{color:#fbf7ef}
.section.bg-navy .section-sub{color:rgba(248,245,237,.72)}

/* Home hero */
.page-home .hero{
  min-height:calc(100vh - 78px);
  background:var(--navy-950);
}
.page-home .hero-media img{object-position:center center;filter:saturate(.94) contrast(1.06)}
.page-home .hero-media::before{
  background:linear-gradient(90deg,rgba(7,24,39,.95) 0%,rgba(7,24,39,.88) 30%,rgba(7,24,39,.4) 59%,rgba(7,24,39,.04) 80%);
  mix-blend-mode:normal;
}
.page-home .hero-media::after{
  background:linear-gradient(180deg,rgba(7,24,39,.05) 60%,rgba(7,24,39,.34) 100%);
}
.page-home .hero-content{max-width:670px;padding:118px 0 126px}
.page-home .hero-badge{color:#e0cdb9;margin-bottom:30px}
.page-home .hero h1{
  max-width:650px;
  color:#fffaf2;
  font-size:clamp(48px,5.8vw,72px);
  line-height:.98;
  text-wrap:balance;
}
.page-home .hero h1 .accent{color:#d8bfa5}
.page-home .hero-sub{color:rgba(255,250,242,.8);font-size:17px;line-height:1.75;max-width:555px}
.page-home .hero-sub strong,.page-home .hero-proof-text b{color:#fffaf2}
.page-home .hero-proof-text{color:rgba(255,250,242,.68)}
.page-home .hero-avatars img{border-color:#0b2035;filter:saturate(.96) contrast(1.03)}
.hero-proof-text .stars,.testi .stars{color:#c49a6c!important}

/* Trust bars */
.trust-bar,.trust-strip{
  background:#e9e2d7;
  border:0;
  border-bottom:1px solid #d8d0c3;
}
.trust-grid,.trust-strip-grid{padding:30px 0}
.trust-item,.trust-strip-item{border-color:#d4ccbf}
.trust-item svg,.trust-strip-item svg{color:var(--sage-700)}
.trust-item span,.trust-strip-item span{color:var(--navy-900);font-size:12.5px}

/* Home: fewer repeated card silhouettes */
.solutions-grid{grid-template-columns:1.2fr 1fr 1fr;gap:18px;margin-top:54px}
.solution-card{
  border-radius:12px;
  border:1px solid #d9d1c4;
  background:#f9f6f0;
  box-shadow:none;
}
.solution-card:first-child{background:var(--navy-900);border-color:var(--navy-900)}
.solution-card:first-child h3,.solution-card:first-child p{color:#fffaf2}
.solution-card:first-child p{color:rgba(255,250,242,.68)}
.solution-card:first-child .link-arrow{color:#dbc3aa}
.solution-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.solution-illust,.solution-card.soon .solution-illust{height:190px;background:#e9e2d6}
.solution-card:first-child .solution-illust{background:#17354d}
.solution-illust svg{filter:saturate(.88) contrast(1.03)}
.solution-body{padding:28px 28px 32px;gap:14px}
.solution-card h3{font-size:19px;color:var(--navy-900)}
.solution-status,.learn-tag,.story-badge,.project-badge,.partner-badges span,.testi-tag,.aid-tag{
  border-radius:4px!important;
  letter-spacing:.06em;
}
.solution-status.live,.partner-badges span{background:#e4ebee;color:var(--navy-900)}
.solution-status.soon{background:#e8e2d8;color:#68766f}

.bg-comment{background:#e8e1d6}
.steps-flow{margin-top:68px;gap:26px}
.steps-flow::before{top:23px;left:6%;right:6%;height:1px;background:#bda88f;opacity:.65}
.step-flow-item{text-align:left;padding:0 20px 0 0}
.step-flow-icon{width:58px;height:58px;margin:0 0 32px}
.step-flow-icon::after{inset:-9px;border-radius:7px;background:#f7f3ec!important;border:1px solid #d9d0c2;box-shadow:none}
.step-flow-num{
  top:-17px;
  right:auto;
  left:45px;
  width:28px;
  height:28px;
  border-radius:4px;
  background:var(--sage-700);
  box-shadow:none;
}
.step-flow-item h3{font-size:16px;color:var(--navy-900)}
.step-flow-item p{margin:0;max-width:240px;color:var(--muted)}

.why-grid,.promise-grid{grid-template-columns:1.06fr .94fr;gap:82px}
.why-img,.promise-img{border-radius:10px;box-shadow:none;overflow:visible}
.why-img::before,.promise-img::before{
  content:"";
  position:absolute;
  inset:18px -18px -18px 18px;
  z-index:-1;
  border:1px solid #a98b6f;
}
.why-img img,.promise-img img{height:500px;border-radius:10px;filter:saturate(.93) contrast(1.025)}
.why-badge,.promise-img-tag{
  left:24px;
  bottom:24px;
  border-radius:6px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(250,247,240,.94);
  box-shadow:none;
}
.why-badge small,.promise-img-tag small{color:var(--sage-700)}
.checklist{gap:18px}
.checklist li{font-size:15px}
.checklist .ck{
  width:24px;
  height:24px;
  border-radius:4px;
  background:var(--navy-900);
  border-color:var(--navy-900);
  color:#fff;
}

.network-grid{gap:80px}
.network-map{background:#e9e2d7;border:1px solid #d6cec1;border-radius:10px;box-shadow:none;padding:34px}
.network-map img{filter:sepia(.06) saturate(.82) hue-rotate(158deg) contrast(1.04)}
.map-pin-dot{background:var(--sage-700)}
.map-pin-text{border-radius:4px;background:rgba(249,246,239,.94);box-shadow:none}
.network-stats{gap:0;border-top:1px solid #d4ccbf;border-bottom:1px solid #d4ccbf}
.network-stat{background:transparent;border:0;border-right:1px solid #d4ccbf;border-radius:0;padding:22px 10px}
.network-stat:last-child{border-right:0}
.network-stat b{font-family:var(--display);font-size:30px;font-weight:600}

.partner-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
  margin-top:52px;
  border:0;
  align-items:stretch;
}
.partner-card{
  display:flex;
  flex-direction:column;
  gap:14px;
  border:1px solid #d5cdc0;
  border-radius:10px;
  box-shadow:0 18px 42px -34px rgba(7,24,39,.48);
  background:#f9f6f0;
  padding:34px 30px 38px;
  transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
}
.partner-card:last-child{border-right:1px solid #d5cdc0}
.partner-card:hover{transform:translateY(-3px);background:#fffaf3;box-shadow:0 22px 48px -34px rgba(7,24,39,.58)}
.partner-logo{
  display:flex;
  align-items:center;
  height:64px;
  width:100%;
  padding:10px 12px;
  border:1px solid #ddd4c7;
  border-radius:6px;
  background:#fbf7ef;
}
.partner-logo img{
  width:150px;
  max-width:100%;
  height:42px;
  max-height:42px!important;
  object-fit:contain;
  object-position:left center;
  filter:saturate(1.08) contrast(1.08);
  mix-blend-mode:normal;
  opacity:1;
}
.page-partners .partner-card h3{font-size:16.5px;color:var(--navy-900)}
.page-partners .partner-card .role{font-size:12px;color:var(--sage-700);font-weight:700;margin-top:2px}
.page-partners .partner-card p{font-size:13px;color:var(--muted);font-weight:500;line-height:1.55}
.page-partners .partner-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:auto}
.page-partners .partner-badges span{font-size:11px;font-weight:700;padding:5px 10px}

.stories-grid,.projects{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.story-card,.project{
  border-radius:10px;
  border:1px solid #d7cec1;
  background:#faf7f1;
  box-shadow:none;
}
.story-card:nth-child(2),.project:nth-child(2),.story-card:nth-child(3),.project:nth-child(3){margin-top:0}
.story-card:hover,.project:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.story-img,.project-img{height:240px}
.story-img img,.project-img img{filter:saturate(.94) contrast(1.035)}
.story-body,.project-body{padding:26px}
.story-loc,.project-loc{color:var(--sage-700)}
.sfact,.pdata{background:#f0ebe3;border-color:#dfd7ca;border-radius:5px}
.story-price,.project-price{
  background:#e6ece7;
  border-color:#cbd7cf;
  border-radius:5px;
  color:var(--navy-900);
}
.story-price b,.project-price b,.price-unlock{color:var(--navy-900)}
.story-price b,.project-price b{
  font-family:var(--display);
  font-size:17px;
  font-weight:600;
  letter-spacing:-.02em;
}
.price-unlock{color:var(--sage-700);letter-spacing:.015em}
.price-blur{filter:none!important;user-select:auto;pointer-events:auto}

.engage{background:#0b2035}
.engage::before{background:linear-gradient(90deg,transparent 0,rgba(193,160,126,.08) 50%,transparent 100%)}
.engage-inner{text-align:center;margin:0 auto;max-width:900px;padding:18px clamp(26px,6vw,84px) 0;position:relative}
.engage-inner::before{content:"“";position:absolute;left:50%;top:-58px;transform:translateX(-50%);font-family:var(--display);font-size:112px;line-height:1;color:#b79777}
.engage blockquote{font-family:var(--display);font-size:clamp(27px,3.2vw,40px);font-weight:500;line-height:1.36;margin-inline:auto}
.engage-sign{color:#d7c0aa;text-align:center}

.learn-grid{grid-template-columns:1.25fr 1fr 1fr 1fr;gap:14px}
.learn-card{border-radius:9px;border-color:#d8d0c4;background:#f9f6f0;box-shadow:none}
.learn-card:first-child{background:#e7e0d5}
.learn-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md)}
.learn-illust{height:165px}
.learn-card .learn-illust{background:#e9e2d7!important}
.learn-card:nth-child(even) .learn-illust{background:#e3eaeb!important}
.learn-illust svg{filter:saturate(1.02) contrast(1.08)}
.learn-tag{background:#e4ebee;color:var(--navy-900)}

.faq-grid{gap:0;border-top:1px solid #d8d0c4}
.faq-item{border:0;border-bottom:1px solid #d8d0c4;border-radius:0;background:transparent}
.faq-item summary{padding:24px 8px;font-size:15px}
.faq-item summary .plus{border-radius:4px;background:transparent;border:1px solid #bfb4a5;color:var(--navy-900)}
.faq-item[open] summary .plus{background:var(--navy-900)}

.final-cta{
  border-radius:10px;
  padding:78px 46px;
  background:var(--navy-900);
  box-shadow:none;
  border:1px solid rgba(255,255,255,.08);
}
.final-cta::before{
  background:linear-gradient(90deg,transparent,rgba(185,150,115,.09),transparent),linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px);
  background-size:auto,68px 68px,68px 68px;
}
.final-cta h2{font-size:clamp(34px,4vw,52px);font-weight:600}
.final-cta p{color:rgba(255,250,242,.72)}
.final-checks{color:rgba(255,250,242,.62)}
.final-checks span::before{color:#c9ac8f}

/* Installation page */
.page-installation .hero{
  min-height:calc(100vh - 78px);
  background:#071827 url("/assets/hero-installation-premium-v2.jpg") no-repeat center/cover;
}
.page-installation .hero::before{
  background:linear-gradient(90deg,rgba(7,24,39,.95) 0%,rgba(7,24,39,.82) 37%,rgba(7,24,39,.24) 64%,rgba(7,24,39,.03) 100%);
}
.page-installation .hero-grid{grid-template-columns:1fr .9fr;gap:70px;padding-block:76px 90px}
.page-installation .hero h1{font-size:clamp(46px,5vw,66px);line-height:1;color:#fffaf2;font-family:var(--display);font-weight:600}
.page-installation .hero h1 .accent{background:none;color:#d8bfa5}
.page-installation .hero-sub{color:rgba(255,250,242,.78);line-height:1.75}
.page-installation .hero-badge{color:#dcc5ad}
.page-installation .form-card{
  max-width:470px;
  padding:36px 34px 30px;
  border-radius:10px;
  border:1px solid rgba(255,255,255,.55);
  background:rgba(250,247,240,.96);
  backdrop-filter:blur(16px);
  box-shadow:0 32px 80px -38px rgba(0,0,0,.7);
}
.page-installation .form-card::before{left:0;right:auto;top:0;bottom:0;width:4px;height:auto;border-radius:0;background:var(--sage-700)}
.form-title{font-size:29px;line-height:1.05;color:var(--navy-900)}
.progress-track{height:4px;background:#dbd3c6}
.progress-fill{background:var(--sage-700)}
.form-progress-top .pct{color:var(--sage-700)}
.step-question{font-size:16px;color:var(--navy-900)}
.opt{
  border:1px solid #d7cfc2;
  background:#f5f1e9;
  border-radius:7px;
  padding:14px 15px;
}
.opt:hover{border-color:#8c7965;background:#fffdf8}
.opt.selected{border-color:var(--navy-900);background:#e6edef;box-shadow:0 0 0 2px rgba(11,32,53,.11)}
.opt .ico{border-radius:5px;background:#ebe5dc;border-color:#d8d0c4}
.opt .ico{filter:none;color:var(--navy-900)}
.field input,.apply-field input,.apply-field select,.apply-field textarea,.c-field input,.c-field select,.c-field textarea{
  min-height:50px;
  border-radius:6px;
  border-color:#d6cec1;
  background:#f4f0e8;
}
.field input:focus,.apply-field input:focus,.apply-field select:focus,.apply-field textarea:focus,.c-field input:focus,.c-field select:focus,.c-field textarea:focus{
  border-color:var(--navy-900);
  background:#fffdf9;
  box-shadow:0 0 0 3px rgba(11,32,53,.1);
}
.ticker{background:#6e4b34;padding:14px 0}
.ticker-item{color:#f0e2d3}
.stats-wrap{background:linear-gradient(180deg,#6e4b34 50%,transparent 50%)}
.stats{background:#f8f5ee;border-radius:9px;border-color:#d6cec0;box-shadow:none;padding:38px 20px}
.stat{border-color:#d6cec0}
.stat-num{font-family:var(--display);font-weight:600;font-size:38px;color:var(--navy-900)}
.stat-num .hl{color:var(--sage-700)}
.promise{background:#eee8de}
.aid-grid{grid-template-columns:1.25fr 1fr 1fr 1fr;gap:14px}
.aid-card{border-radius:9px;border-color:#d7cfc2;background:#f9f6f0;box-shadow:none;padding:28px 24px}
.aid-card.featured{background:var(--navy-900);border-color:var(--navy-900);box-shadow:none}
.aid-card.featured h3,.aid-card.featured p{color:#fffaf2}
.aid-card.featured p{color:rgba(255,250,242,.66)}
.aid-card.featured .aid-rate{color:#d9b997}
.aid-card.featured .aid-ico{background:rgba(255,255,255,.1)}
.aid-card .aid-rate{color:var(--sage-700);font-family:var(--display);font-weight:600;font-size:29px}
.aid-card .aid-tag{background:#d8b584;color:#0b2035}
.testi-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.testi{border-radius:9px;border-color:#d6cec1;background:#f9f6f0;box-shadow:none;padding:30px}
.testi:nth-child(2),.testi:nth-child(3){transform:none}
.testi:hover{transform:translateY(-2px)}
.testi .stars{display:none}
.testi-foot img{filter:saturate(.95) contrast(1.03);box-shadow:none}
.testi-tag{background:#e6edef!important;color:var(--navy-900)!important;border-color:#cdd9dd!important}
.page-installation .footer{margin-top:104px}
.mobile-cta{background:rgba(248,245,239,.96);border-color:#d7cfc2}

/* Secondary-page transparent headers */
.page-partners .header,.page-contact .header,.page-legal .header,.page-article .header{
  background:transparent;
  border-bottom-color:rgba(255,255,255,.12);
}
.page-partners .header.scrolled,.page-contact .header.scrolled,.page-legal .header.scrolled,.page-article .header.scrolled{
  background:rgba(248,245,239,.96);
  border-bottom-color:#d9d1c4;
  padding:0;
}
.page-partners .header:not(.scrolled) .header-logo .logo-text,
.page-contact .header:not(.scrolled) .header-logo .logo-text,
.page-legal .header:not(.scrolled) .header-logo .logo-text,
.page-article .header:not(.scrolled) .header-logo .logo-text{color:#fffaf2}
.page-partners .header:not(.scrolled) .header-nav a,
.page-contact .header:not(.scrolled) .header-nav a,
.page-legal .header:not(.scrolled) .header-nav a,
.page-article .header:not(.scrolled) .header-nav a{color:rgba(255,250,242,.76)}

.p-hero{
  min-height:64vh;
  background:#071827 url("/assets/artisan-detail-premium-v2.jpg") no-repeat center 42%/cover;
}
.p-hero::before{background:linear-gradient(90deg,rgba(7,24,39,.93),rgba(7,24,39,.64) 48%,rgba(7,24,39,.28)),linear-gradient(180deg,transparent 55%,rgba(7,24,39,.54));}
.p-hero-inner{max-width:760px;padding:185px 0 92px}
.p-hero h1{font-size:clamp(45px,5.5vw,64px);line-height:1}
.p-hero p{line-height:1.75}
.featured-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.rp-card{border-radius:9px;border-color:#d8d0c3;background:#f9f6f0;box-shadow:none;padding:28px}
.rp-card:nth-child(2),.rp-card:nth-child(3),.rp-card:nth-child(4){transform:none}
.rp-card:hover{transform:translateY(-2px)}
.rp-avatar{border-radius:6px;background:var(--navy-900);color:#f3e5d5}
.rp-photo{display:flex;align-items:center;gap:12px}
.rp-photo .rp-avatar{display:block;width:82px;height:82px;border-radius:8px;object-fit:cover;object-position:center;box-shadow:0 8px 20px -14px rgba(7,24,39,.7)}
.rp-type{color:var(--sage-700)}
.rp-soon{
  grid-column:1 / -1;
  display:grid;
  grid-template-columns:auto minmax(190px,.7fr) minmax(280px,1.3fr);
  align-items:center;
  column-gap:24px;
  background:var(--navy-900);
  border:1px solid var(--navy-900);
  color:#fffaf2;
  box-shadow:0 18px 40px -30px rgba(7,24,39,.7);
}
.rp-soon .rp-avatar{background:#d8b584;color:var(--navy-900)}
.rp-soon .rp-avatar .ui-icon{width:25px;height:25px}
.rp-soon h3{color:#fffaf2}
.rp-soon p{color:rgba(255,250,242,.72)}
.rp-soon:hover{background:#102b44}
.quality-band{background:var(--navy-900)}
.quality-band p{font-family:var(--display);font-size:clamp(28px,3.4vw,42px);font-weight:500;line-height:1.35}
.quality-band .accent-word{color:#d6b99b}
.icon-grid{gap:0;border-block:1px solid rgba(255,255,255,.15)}
.icon-card,.section.bg-navy .icon-card{border:0;border-right:1px solid rgba(255,255,255,.15);border-radius:0;background:transparent;padding:32px 20px}
.icon-card:last-child{border-right:0}
.icon-card .ic,.section.bg-navy .icon-card .ic{border-radius:5px;background:#e7e0d5;color:var(--navy-900)}
.section.bg-navy .icon-card h4{color:#fffaf2}
.apply-wrap,.c-card{
  border-radius:10px;
  border-color:#d8d0c3;
  background:#faf7f1;
  box-shadow:var(--shadow-md);
}

.c-hero,.l-hero{
  background:var(--navy-900);
  padding:188px 0 108px;
}
.c-hero::before,.l-hero::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.03) 1px,transparent 1px),radial-gradient(circle at 78% 18%,rgba(181,145,108,.16),transparent 32%);
  background-size:72px 72px,72px 72px,auto;
}
.c-hero h1,.l-hero h1{font-size:clamp(45px,5.2vw,62px);line-height:1}
.c-card{margin-top:-58px;padding:50px}
.c-alt a{color:var(--sage-700);border-color:var(--sage-700)}
.l-wrap{background:#faf7f1;border-color:#d7cfc2;border-radius:9px;box-shadow:none}
.l-wrap h2{font-family:var(--display);font-weight:600;color:var(--navy-900)}

/* Editorial articles */
.a-hero{padding:184px 0 94px;background-color:#071827;background-size:cover;background-position:center}
.article-aides .a-hero{background-image:url("/assets/project-limestone-premium-v2.jpg")}
.article-economies .a-hero{background-image:url("/assets/project-pine-premium-v2.jpg")}
.article-douche .a-hero{background-image:url("/assets/hero-installation-premium-v2.jpg")}
.article-moment .a-hero{background-image:url("/assets/hero-home-premium-v2.jpg")}
.a-hero::before{background:linear-gradient(90deg,rgba(7,24,39,.92),rgba(7,24,39,.55) 58%,rgba(7,24,39,.24)),linear-gradient(180deg,transparent 48%,rgba(7,24,39,.72))}
.a-hero-inner{max-width:880px}
.a-hero h1{font-size:clamp(42px,5.2vw,62px);line-height:1.02;text-wrap:balance}
.a-hero-kicker{color:#dbc4ac}
.a-hero-kicker .dot{background:#b38e6c;border-radius:1px}
.a-meta-avatar{border-radius:5px;background:#d3ad78;color:#0b2035}
.a-shell{padding:76px 0 56px;background:#f6f2ea}
.a-grid{grid-template-columns:minmax(0,720px) 310px;gap:74px}
.a-toc{border-radius:8px;border-color:#d8d0c3;background:#faf7f1;box-shadow:none;padding-inline:28px}
.a-toc-head{border-color:#ddd5c8}
.a-toc-count{border-radius:4px;background:#ebe5dc}
.a-toc-list a{border-radius:5px}
.a-toc-list a .num{border-radius:4px;background:#e8e1d6}
.a-toc-list a.active{background:#e6edef;color:var(--navy-900)}
.a-toc-list a.active .num{background:var(--navy-900)}
.a-lead{font-family:var(--display);font-size:25px;line-height:1.52;font-weight:500;color:var(--navy-900)}
.a-body p,.a-body li{color:#3f5049;line-height:1.86}
.a-body h2{font-family:var(--display);font-size:clamp(28px,3vw,36px);font-weight:600;line-height:1.12}
.a-body h2::after{width:54px;height:1px;background:var(--sage-700)}
.a-table-wrap{border-color:#d8d0c3;border-radius:7px}
table.a-table th{background:var(--navy-900)}
table.a-table td{border-color:#ddd5c8}
table.a-table tr:nth-child(even) td{background:#f0ebe3}
table.a-table td.hl{color:var(--sage-700)}
.a-check{background:#f0ebe3;border-color:#d8d0c3;border-radius:7px}
.a-check .ck{border-radius:4px;background:var(--navy-900)}
.a-callout,.a-callout-navy{border-left-color:var(--sage-700);background:#ebe4d9;border-radius:0 7px 7px 0}
.a-callout p,.a-callout-navy p{color:#3e554c}
.a-author,.a-disclaimer{background:#eee8de;border-color:#d7cfc2;border-radius:7px}
.a-author .avatar{border-radius:5px;background:var(--navy-900)}
.a-cta-inline,.a-side-card{border-radius:8px;background:var(--navy-900);box-shadow:none}
.a-side-card::before{background:linear-gradient(135deg,transparent,rgba(183,148,112,.1))}
.a-side-eyebrow,.a-side-stat{color:#d1b294}
.a-side-trust{border-radius:7px;border-color:#d8d0c3;background:#faf7f1}
.a-side-trust svg{color:var(--sage-700)}
.faq-list .faq-item{background:transparent}

/* Footer */
.footer{
  background:#071827;
  color:#99aaa3;
  padding:84px 0 34px;
}
.footer-top{gap:42px;padding-bottom:60px;border-color:rgba(255,255,255,.1)}
.footer-brand{
  width:236px;
  min-height:74px;
  padding:7px 12px;
  border-radius:7px;
  background:#f5f0e7;
}
.footer-brand img{width:210px;height:64px;object-fit:contain}
.footer-desc{color:#91a29b;line-height:1.8}
.footer-col h5{color:#b69473;font-size:10px;letter-spacing:.16em}
.footer-col a{color:#c7d1cc}
.footer-col a:hover{color:#fffaf2}
.footer-legal,.footer-copy,.footer-copy a{color:#71857d}

/* Deliberate hierarchy for active and forthcoming services */
@media(min-width:1081px){
  .solutions-grid{grid-template-columns:1.34fr .83fr .83fr;align-items:start}
}
.solution-card.soon{background:#eee8de;border-color:#d7cec1;box-shadow:none}
.solution-card.soon .solution-illust{height:132px;background:#e4e9e8}
.solution-card.soon .solution-illust svg{width:92px;height:92px;filter:saturate(.72) contrast(1.08)}
.solution-card.soon .solution-body{padding:22px 24px 25px;gap:9px}
.solution-status.soon{background:#ddd5c8;color:var(--navy-800)}

/* A calmer availability signal than the original generic green pulse */
.page-installation .header-note .dot{
  background:var(--sage-600);
  box-shadow:0 0 0 4px rgba(184,139,85,.2);
  animation:none;
}

@media(max-width:1080px){
  .solutions-grid{grid-template-columns:1fr 1fr}
  .solution-card:first-child{grid-column:1 / -1}
  .stories-grid,.projects,.testi-grid{grid-template-columns:1fr 1fr}
  .story-card:nth-child(3),.project:nth-child(3),.testi:nth-child(3){margin-top:0;transform:none}
  .aid-grid{grid-template-columns:1fr 1fr}
  .featured-grid{grid-template-columns:1fr 1fr}
  .rp-soon{grid-column:1 / -1}
  .rp-card{transform:none!important}
}

@media(max-width:980px){
  .container{padding-inline:22px}
  .section{padding-block:76px}
  .section.tight{padding-block:64px}
  .page-home .hero{min-height:780px}
  .page-home .hero-media::before{background:linear-gradient(180deg,rgba(7,24,39,.72),rgba(7,24,39,.66) 55%,rgba(7,24,39,.84))}
  .page-home .hero-content{padding:80px 0 88px;text-align:left}
  .page-home .hero-sub{margin-inline:0}
  .page-home .hero-cta-row{justify-content:flex-start}
  .page-home .hero-proof{justify-content:flex-start}
  .page-installation .hero::before{background:linear-gradient(180deg,rgba(7,24,39,.73),rgba(7,24,39,.6) 48%,rgba(7,24,39,.85))}
  .page-installation .hero-grid{grid-template-columns:1fr;gap:44px;padding-block:64px 72px}
  .page-installation .form-card{justify-self:start}
  .why-grid,.promise-grid,.network-grid{grid-template-columns:1fr;gap:52px}
  .why-img img,.promise-img img{height:390px}
  .learn-grid{grid-template-columns:1fr 1fr}
  .partner-grid{grid-template-columns:1fr;gap:18px}
  .partner-card,.partner-card:last-child{border:1px solid #d5cdc0}
  .a-grid{grid-template-columns:1fr;gap:50px}
  .page-partners .header-nav,
  .page-contact .header-nav,
  .page-legal .header-nav,
  .page-article .header-nav{display:none}
}

@media(max-width:760px){
  .header-inner{height:68px}
  .header-logo img{width:46px;height:46px}
  .header-logo .logo-text{font-size:20px}
  .section-title{font-size:36px}
  .page-home .hero{min-height:720px}
  .page-home .hero h1,.page-installation .hero h1{font-size:44px}
  .page-home .hero-media img{object-position:64% center}
  .hero-cta-row .btn{width:100%;white-space:normal;text-align:center}
  .trust-grid,.trust-strip-grid{gap:18px 0}
  .solutions-grid,.stories-grid,.projects,.testi-grid,.aid-grid,.featured-grid,.learn-grid{grid-template-columns:1fr}
  .rp-soon{display:block;grid-column:auto}
  .solution-card:first-child{grid-column:auto}
  .story-card,.story-card:nth-child(2),.project,.project:nth-child(2),.testi,.testi:nth-child(2){margin-top:0;transform:none}
  .steps-flow{grid-template-columns:1fr;gap:40px}
  .steps-flow::before{display:block;left:29px;right:auto;top:0;bottom:0;width:1px;height:auto}
  .step-flow-item{padding-left:92px;min-height:80px}
  .step-flow-icon{position:absolute;left:0;top:8px;width:54px;height:54px}
  .step-flow-num{left:45px;top:-2px}
  .why-img::before,.promise-img::before{inset:12px -8px -12px 12px}
  .network-stats{grid-template-columns:1fr 1fr 1fr}
  .engage-inner{padding:16px 20px 0}
  .engage-inner::before{left:50%;top:-42px;transform:translateX(-50%);font-size:76px}
  .final-cta{padding:58px 24px}
  .c-hero,.l-hero{padding:150px 0 82px}
  .c-card,.apply-wrap{padding:32px 24px}
  .a-hero{padding:150px 0 68px}
  .a-hero h1{font-size:40px}
  .a-grid{padding-inline:20px}
}

@media(max-width:480px){
  .container{padding-inline:18px}
  body{font-size:15px}
  .header{overflow:hidden}
  .header .container{padding-inline:14px}
  .header-inner{gap:8px}
  .header-logo{min-width:0;gap:7px}
  .header-logo img{width:38px;height:38px;flex:none;padding:3px}
  .header-logo .logo-text{font-size:14px;white-space:nowrap}
  .header-cta{min-width:0;flex:none}
  .header .btn-sm{width:158px;min-height:40px;padding:8px 9px;font-size:11px;line-height:1.2;white-space:normal;text-align:center}
  .page-home .hero-content,.page-installation .hero-copy{width:calc(100vw - 36px);max-width:calc(100vw - 36px)}
  .page-home .hero-sub,.page-installation .hero-sub{width:100%;max-width:100%}
  .page-home .hero-proof,.page-installation .hero-proof{max-width:100%;flex-wrap:wrap}
  .page-home .hero-proof-text,.page-installation .hero-proof-text{max-width:calc(100vw - 118px)}
  .page-home .hero h1,.page-installation .hero h1{font-size:38px}
  .page-home .hero-sub,.page-installation .hero-sub{font-size:15px}
  .page-installation .form-card{padding:30px 20px 24px}
  .form-title{font-size:26px}
  .section-title{font-size:32px}
  .why-img img,.promise-img img{height:310px}
  .network-stats{grid-template-columns:1fr}
  .network-stat{border-right:0;border-bottom:1px solid #d4ccbf}
  .network-stat:last-child{border-bottom:0}
  .final-cta h2{font-size:34px}
  .footer{padding:64px 0 28px}
  .footer-top{gap:30px;padding-bottom:42px}
  .footer-col h5{font-size:11.5px}
  .footer-col a{margin-bottom:10px}
}

@media(min-width:981px) and (min-height:1100px){
  .page-home .hero,.page-installation .hero{min-height:920px}
}

@media(hover:none){
  .solution-card:hover,.learn-card:hover,.story-card:hover,.project:hover,.rp-card:hover{transform:none}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}
  .reveal{opacity:1!important;transform:none!important}
}
