:root{--ink:#17384a;--ochre:#c96c32;--mist:#eef3f4;--text:#26343b;--line:#d9e1e3;--white:#fff;--shadow:0 18px 50px rgba(23,56,74,.12);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;color:var(--text);background:#fff;font-size:16px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;line-height:1.7}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:Georgia,"Times New Roman",serif;color:var(--ink);line-height:1.12;margin:0 0 .8rem}h1{font-size:clamp(2.7rem,7vw,5.7rem);letter-spacing:-.04em}h2{font-size:clamp(2rem,4.3vw,3.65rem);letter-spacing:-.025em}h3{font-size:1.45rem}p{margin:.2rem 0 1.2rem}.site-header{height:84px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(1.1rem,5vw,5rem);position:sticky;top:0;z-index:20;background:rgba(255,255,255,.94);backdrop-filter:blur(16px);border-bottom:1px solid rgba(23,56,74,.08)}.brand{display:flex;gap:.85rem;align-items:center;text-decoration:none;font-family:Georgia,serif;font-size:1.2rem;color:var(--ink);font-weight:700;line-height:1.15}.brand small{display:block;font:500 .68rem/1.2 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:#6f7d82;margin-top:.2rem}.brand-mark{width:43px;height:43px;display:grid;place-items:center;border-radius:50% 50% 50% 15%;background:var(--ochre);color:#fff;font:700 .8rem/1 Inter,sans-serif;transform:rotate(-8deg)}nav{display:flex;align-items:center;gap:1.8rem}nav a{text-decoration:none;font-weight:700;color:var(--ink);font-size:.93rem}.nav-cta{background:var(--ochre);color:#fff!important;padding:.75rem 1.1rem;border-radius:999px}.menu{display:none}.page-hero{min-height:680px;position:relative;display:grid;align-items:end;background-image:var(--hero);background-size:cover;background-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(9,28,42,.89) 0%,rgba(9,28,42,.68) 42%,rgba(9,28,42,.08) 75%)}.hero-copy{position:relative;color:#fff;width:min(790px,90%);padding:clamp(3.5rem,7vw,7rem) clamp(1.1rem,6vw,6.5rem)}.hero-copy h1,.hero-copy p{color:#fff}.hero-copy>p:not(.eyebrow){font-size:clamp(1.05rem,2vw,1.35rem);max-width:660px}.eyebrow{text-transform:uppercase;letter-spacing:.17em;font-weight:800;font-size:.76rem;color:var(--ochre);margin-bottom:1rem}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--ochre);color:#fff;text-decoration:none;border:0;border-radius:999px;padding:.9rem 1.35rem;font:800 .95rem/1 Inter,sans-serif;cursor:pointer;transition:.2s}.button:hover{transform:translateY(-2px);box-shadow:0 10px 30px rgba(201,108,50,.27)}.button.outline{background:transparent;color:var(--ink);border:2px solid var(--ink)}.button.light{background:#fff;color:var(--ink)}.section,.intro{padding:clamp(4.5rem,8vw,8rem) clamp(1.1rem,7vw,7rem);max-width:1500px;margin:auto}.lead,.lede{font-size:1.2rem;max-width:850px;color:#53656d}.split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2.5rem,6vw,6rem);align-items:center}.split img{border-radius:6px 80px 6px 6px;box-shadow:var(--shadow);aspect-ratio:4/3;object-fit:cover}.text-link{color:var(--ochre);font-weight:800;text-decoration:none}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:1.15rem;margin-top:2.6rem}.card{border:1px solid var(--line);border-radius:20px;padding:1.65rem;background:#fff;text-decoration:none;transition:.2s;display:block}.card:hover{transform:translateY(-5px);box-shadow:var(--shadow);border-color:transparent}.card b{color:var(--ochre);font-size:.9rem}.card .icon{margin-bottom:1rem}.icon{width:34px;height:34px;stroke:var(--ochre);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.season-section{max-width:1500px;margin:auto;background:var(--ink);color:#fff;display:grid;grid-template-columns:1.35fr 1fr}.season-section img{height:100%;min-height:480px;object-fit:cover}.season-copy{padding:clamp(3rem,6vw,6rem)}.season-copy h2{color:#fff}.mini-grid{display:grid;gap:.8rem;margin-top:2rem}.mini-grid span{display:flex;gap:.75rem;align-items:center;border-top:1px solid rgba(255,255,255,.2);padding-top:.8rem}.mini-grid .icon{flex:0 0 auto}.local{display:flex;align-items:end;justify-content:space-between;gap:2rem}.local>div{max-width:850px}.faq-list{max-width:980px}.faq-list details{border-top:1px solid var(--line);padding:1.25rem 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;color:var(--ink);font-weight:800;font-size:1.08rem;list-style-position:outside}.faq-list p{padding:.8rem 2rem 0 0;color:#53656d}.cta{max-width:1500px;margin:0 auto 5rem;background:var(--ochre);color:#fff;padding:clamp(2.5rem,5vw,5rem);display:flex;align-items:end;justify-content:space-between;gap:2rem;border-radius:8px}.cta h2,.cta .eyebrow{color:#fff}.cta p{max-width:750px}.ochre-panel{background:#f7ece5;padding:clamp(2rem,4vw,3.5rem);border-radius:6px 60px 6px 6px}.ochre-panel li,.ticks li{margin:.7rem 0}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-top:2.5rem}.steps article{padding:1.8rem;background:var(--mist)}.steps b{color:var(--ochre);font-size:1.7rem}.alt{max-width:none;background:var(--mist);padding-left:max(clamp(1.1rem,7vw,7rem),calc((100vw - 1500px)/2 + 7rem));padding-right:max(clamp(1.1rem,7vw,7rem),calc((100vw - 1500px)/2 + 7rem))}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem 4rem}.place-dot{display:block;width:16px;height:16px;background:var(--ochre);border-radius:50% 50% 50% 10%;margin-bottom:1.2rem}.feature-card{display:grid;grid-template-columns:1.3fr 1fr;gap:0;background:var(--mist);margin-top:2rem}.feature-card img{height:100%;object-fit:cover}.feature-card div{padding:clamp(2rem,5vw,5rem);align-self:center}.article{max-width:850px;margin:auto;padding:clamp(4rem,8vw,8rem) 1.2rem}.article h2{font-size:2.1rem;margin-top:3rem}.article li{margin:.6rem 0}.simple-hero{background:var(--ink);color:#fff;padding:clamp(5rem,10vw,9rem) clamp(1.2rem,12vw,12rem)}.simple-hero h1{color:#fff}.form-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,7vw,7rem);align-items:start}form{padding:clamp(1.5rem,4vw,3rem);background:var(--mist);display:grid;gap:1rem;border-radius:6px 50px 6px 6px}label{font-weight:800;color:var(--ink);font-size:.93rem}input,select,textarea{display:block;width:100%;margin-top:.4rem;border:1px solid #b7c3c7;background:#fff;border-radius:8px;padding:.85rem;font:inherit;color:var(--text)}textarea{resize:vertical}.consent{display:flex;gap:.75rem;align-items:start;font-weight:500}.consent input{width:auto;margin-top:.25rem}.form-note,.fine,.muted{font-size:.85rem;color:#6f7d82}.form-note{margin:0}.legal-copy{min-height:380px}footer{background:#102b3a;color:#dce4e7;padding:5rem clamp(1.1rem,7vw,7rem) 2rem}.footer-grid{max-width:1500px;margin:auto;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:4rem}.footer-grid h2{font:800 .8rem/1 Inter,sans-serif;text-transform:uppercase;letter-spacing:.15em;color:#d99567}.footer-grid a{display:block;text-decoration:none;margin:.5rem 0}.footer-brand{font-family:Georgia,serif;font-size:2rem;color:#fff}.legal{max-width:1500px;margin:3rem auto 0;border-top:1px solid rgba(255,255,255,.15);padding-top:1.5rem;display:flex;justify-content:space-between;font-size:.82rem}.legal a{color:#fff}
@media(max-width:900px){.menu{display:block;background:none;border:1px solid var(--line);padding:.55rem .7rem;border-radius:8px;color:var(--ink);font-weight:800}nav{display:none;position:absolute;top:83px;left:0;right:0;background:#fff;padding:1rem 1.2rem 1.4rem;flex-direction:column;align-items:stretch;border-bottom:1px solid var(--line)}nav.open{display:flex}.site-header{height:74px}.brand small{display:none}.page-hero{min-height:610px}.hero-shade{background:linear-gradient(0deg,rgba(9,28,42,.93),rgba(9,28,42,.3))}.hero-copy{padding-bottom:4rem}.split,.season-section,.form-layout,.feature-card{grid-template-columns:1fr}.cards{grid-template-columns:1fr 1fr}.season-section img{min-height:320px}.local,.cta{align-items:flex-start;flex-direction:column}.steps{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}}
@media(max-width:600px){h1{font-size:2.85rem}.cards,.two-col,.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}.section,.intro{padding-top:4rem;padding-bottom:4rem}.cta{margin-bottom:0;border-radius:0}.legal{flex-direction:column;gap:.75rem}.brand{font-size:1rem}.brand-mark{width:38px;height:38px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button,.card{transition:none}}

/* Premium editorial layer */
body{background:linear-gradient(180deg,#fff 0,#fff 68%,#f5f8f9 100%)}
.site-header:after{content:"";position:absolute;left:clamp(1rem,5vw,5rem);right:clamp(1rem,5vw,5rem);bottom:-1px;height:1px;background:linear-gradient(90deg,transparent,var(--ochre),transparent);opacity:.35}
.page-hero{isolation:isolate;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-8vw;bottom:-15vw;width:42vw;height:42vw;border:1px solid rgba(255,255,255,.18);border-radius:50%;box-shadow:0 0 0 5vw rgba(255,255,255,.025),0 0 0 10vw rgba(255,255,255,.018);z-index:-0}
.hero-copy{z-index:2}.hero-copy h1{text-wrap:balance;text-shadow:0 3px 30px rgba(0,0,0,.28)}
.intro{position:relative}.intro:before{content:"01";position:absolute;left:2vw;top:4rem;font:700 clamp(4rem,10vw,9rem)/1 Georgia,serif;color:rgba(201,108,50,.075);pointer-events:none}
.card{position:relative;overflow:hidden;min-height:250px}.card:after{content:"";position:absolute;right:-30px;bottom:-45px;width:100px;height:100px;border:1px solid rgba(201,108,50,.18);border-radius:50%;transition:.25s}.card:hover:after{transform:scale(1.4);background:rgba(201,108,50,.06)}
.season-section{position:relative;box-shadow:0 26px 70px rgba(23,56,74,.18)}.season-section:before{content:"SEASONS";position:absolute;right:2rem;bottom:.2rem;font:700 clamp(2rem,7vw,7rem)/1 Inter,sans-serif;letter-spacing:.08em;color:rgba(255,255,255,.035);z-index:1}.season-copy{position:relative;z-index:2}
.mist-section{max-width:1500px;margin:0 auto;display:grid;grid-template-columns:.85fr 1.15fr;background:linear-gradient(135deg,#d8e3e7,#eef3f4 58%,#c4d3d9);overflow:hidden;box-shadow:0 24px 70px rgba(23,56,74,.12)}
.mist-copy{padding:clamp(3rem,6vw,6rem);align-self:center;position:relative}.mist-copy:before{content:"";position:absolute;inset:8% 8%;background:radial-gradient(circle at 25% 35%,rgba(255,255,255,.8),transparent 48%);filter:blur(24px);pointer-events:none}.mist-copy>*{position:relative}.mist-copy h2{color:#294b5e;text-wrap:balance}.mist-copy p:not(.eyebrow){color:#465c67}.mist-section img{height:100%;min-height:540px;object-fit:cover;filter:saturate(.72) contrast(.96)}
.editorial-intro{max-width:1320px}.article-list{margin-top:3.5rem;border-top:1px solid var(--line)}.article-card{display:grid;grid-template-columns:110px 1fr;gap:2rem;padding:2.2rem 0;text-decoration:none;border-bottom:1px solid var(--line);transition:.2s}.article-card:hover{padding-left:1rem;background:linear-gradient(90deg,rgba(238,243,244,.85),transparent)}.article-card h2{font-size:clamp(1.65rem,3vw,2.65rem);margin-bottom:.5rem}.article-card p{max-width:850px}.article-card b{color:var(--ochre)}.article-no{font:700 2.8rem/1 Georgia,serif;color:rgba(201,108,50,.65);padding-top:.4rem}
.long-article{max-width:940px;background:#fff;margin-top:-4rem;position:relative;z-index:3;padding:clamp(3rem,7vw,7rem);box-shadow:0 28px 80px rgba(23,56,74,.12)}.long-article .lede:first-letter{float:left;font:700 4.7rem/.8 Georgia,serif;color:var(--ochre);padding:.15rem .6rem 0 0}.long-article section{padding-top:.3rem}.long-article section+section{border-top:1px solid var(--line);margin-top:2.6rem}.long-article h2{font-size:clamp(1.75rem,3vw,2.5rem);margin-top:2.6rem}.article-nav{display:flex;justify-content:space-between;gap:1rem;margin-top:3.5rem;padding-top:1.5rem;border-top:2px solid var(--ochre)}.article-nav a{font-weight:800;color:var(--ink);text-decoration:none}
.faq-list details{background:linear-gradient(90deg,rgba(238,243,244,.7),transparent);padding:1.25rem 1rem}.faq-list details[open]{background:#f4f7f8;border-left:3px solid var(--ochre)}
@media(max-width:900px){.mist-section{grid-template-columns:1fr}.mist-section img{min-height:360px}.article-card{grid-template-columns:70px 1fr}.long-article{margin-top:0;box-shadow:none}}
@media(max-width:600px){.article-card{grid-template-columns:1fr;gap:.4rem}.article-no{font-size:1.8rem}.article-nav{flex-direction:column}.mist-copy{padding:3.2rem 1.2rem}}

/* Alternating twilight and steam atmosphere */
.section:has(> .cards),.section:has(> .steps){
  max-width:none;
  padding-left:max(clamp(1.1rem,7vw,7rem),calc((100vw - 1500px)/2 + 7rem));
  padding-right:max(clamp(1.1rem,7vw,7rem),calc((100vw - 1500px)/2 + 7rem));
  background-image:linear-gradient(105deg,rgba(221,231,235,.92),rgba(239,244,246,.78) 48%,rgba(190,207,215,.88)),url('/assets/steam-mist-background.webp');
  background-size:cover;
  background-position:center;
  position:relative;
  overflow:hidden;
}
.section:has(> .cards):before,.section:has(> .steps):before{
  content:"";
  position:absolute;
  width:34rem;height:34rem;
  right:-15rem;top:-19rem;
  border-radius:50%;
  background:rgba(255,255,255,.28);
  filter:blur(28px);
  pointer-events:none;
}
.section:has(> .cards)>*,.section:has(> .steps)>*{position:relative;z-index:1}
.section:has(> .cards) .card{background:rgba(255,255,255,.93);border-color:rgba(255,255,255,.75);box-shadow:0 12px 34px rgba(23,56,74,.10);backdrop-filter:blur(5px)}
.section:has(> .cards) .card:hover{background:#fff;box-shadow:0 22px 55px rgba(23,56,74,.17)}
.section:has(> .steps) .steps article{background:rgba(255,255,255,.88);box-shadow:0 12px 34px rgba(23,56,74,.09);backdrop-filter:blur(5px)}
.page-hero[style*="misty-orange-morning"] .hero-shade{background:linear-gradient(90deg,rgba(13,39,54,.88),rgba(24,57,72,.60) 46%,rgba(34,66,78,.12) 78%)}
.page-hero[style*="twilight-established-home"] .hero-shade{background:linear-gradient(90deg,rgba(8,25,38,.92),rgba(12,35,49,.67) 45%,rgba(8,25,38,.12) 78%)}
@media(max-width:700px){.section:has(> .cards),.section:has(> .steps){padding-left:1.1rem;padding-right:1.1rem}.page-hero{background-position:62% center}}

/* Accessible navigation dropdowns */
.nav-group{position:relative}.nav-parent{display:flex;align-items:center;gap:.18rem}.drop-toggle{border:0;background:transparent;color:var(--ink);font:800 1rem/1 Inter,sans-serif;padding:.45rem .25rem;cursor:pointer;transition:transform .2s}.nav-group:hover .drop-toggle,.nav-group:focus-within .drop-toggle,.nav-group.open .drop-toggle{transform:rotate(180deg)}
.dropdown{position:absolute;top:calc(100% + 1rem);left:-1rem;width:270px;padding:.7rem;background:rgba(255,255,255,.97);border:1px solid rgba(23,56,74,.1);border-radius:12px;box-shadow:0 22px 60px rgba(12,36,50,.2);opacity:0;visibility:hidden;transform:translateY(-8px);transition:.18s;z-index:40;backdrop-filter:blur(14px)}
.dropdown:before{content:"";position:absolute;left:0;right:0;top:-1.1rem;height:1.1rem}.dropdown a{display:block;padding:.68rem .75rem;border-radius:7px;font-size:.86rem;line-height:1.25}.dropdown a:hover,.dropdown a:focus{background:#eaf0f2;color:var(--ochre)}.dropdown .drop-all{color:var(--ochre);border-bottom:1px solid var(--line);border-radius:7px 7px 0 0;margin-bottom:.35rem}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown,.nav-group.open .dropdown{opacity:1;visibility:visible;transform:none}

/* Hazy photographic footer */
footer{position:relative;isolation:isolate;background-image:linear-gradient(rgba(31,55,59,.88),rgba(14,38,43,.95)),url('/assets/steam-mist-background.webp');background-size:cover;background-position:center;color:#edf2f3;overflow:hidden}
footer:before{content:"";position:absolute;inset:0;background:linear-gradient(115deg,rgba(48,72,75,.26),rgba(7,31,36,.7));z-index:-1}
.footer-grid,.legal{position:relative}.footer-grid a{color:#fff}.footer-grid p,.legal{color:#dbe3e6}.footer-grid h2{color:#e2a175}

@media(max-width:900px){nav .nav-group{width:100%}.nav-parent{justify-content:space-between}.nav-parent>a{flex:1}.drop-toggle{width:44px;height:38px;border:1px solid var(--line);border-radius:7px}.dropdown{position:static;width:100%;padding:.25rem 0 .4rem 1rem;border:0;border-radius:0;box-shadow:none;background:#f3f6f7;opacity:1;visibility:visible;transform:none;display:none;margin-top:.35rem;backdrop-filter:none}.nav-group:hover .dropdown,.nav-group:focus-within .dropdown{display:none}.nav-group.open .dropdown{display:block}.dropdown:before{display:none}.dropdown a{padding:.6rem .75rem}}

/* Cold blue-hour hero treatment: softly veiled, never brochure-bright */
.page-hero{background-image:linear-gradient(110deg,rgba(164,190,199,.09),rgba(23,58,69,.18)),var(--hero);background-color:#183b49;background-blend-mode:soft-light,normal}
.page-hero .hero-shade{background:linear-gradient(90deg,rgba(7,25,36,.93) 0%,rgba(10,34,46,.76) 43%,rgba(15,46,57,.29) 78%,rgba(20,50,59,.18) 100%)}
.page-hero:before{content:"";position:absolute;inset:-12%;background:radial-gradient(ellipse at 72% 62%,rgba(213,226,229,.15),transparent 36%),linear-gradient(172deg,transparent 18%,rgba(195,212,217,.10) 48%,transparent 68%);filter:blur(16px);opacity:.82;pointer-events:none;z-index:1}
.page-hero[style*="repair-copper-twilight"]{background-position:58% center}
.page-hero[style*="heat-pump-blue-hour"]{background-position:58% center}
.page-hero[style*="orange-cold-twilight"]{background-position:center}

/* Muted ochre/tan interface palette; photographic warmth remains unchanged */
:root{--ochre:#ae8752}
.button:hover{box-shadow:0 10px 30px rgba(174,135,82,.28)}
.intro:before{color:rgba(174,135,82,.08)}
.card:after{border-color:rgba(174,135,82,.20)}
.card:hover:after{background:rgba(174,135,82,.07)}
.article-no{color:rgba(174,135,82,.72)}
.footer-grid h2{color:#d6b889}
