
 :root{
  --ink:#032656;--ink-2:#013580;--muted:#5a6876;--paper:#f8fafc;--white:#fff;
  --brand-blue:#064994;--brand-blue-bright:#0b65b8;--brand-green:#6aa324;--brand-green-bright:#78b82a;
  --teal:var(--brand-green);--teal-dark:#3f7310;--mint:#edf7e5;--coral:var(--brand-blue-bright);--sand:#eef3f8;
  --line:rgba(3,38,86,.14);--shadow:0 24px 70px rgba(3,38,86,.11);--radius:28px;--radius-sm:18px;
  --max:1180px;--ease:cubic-bezier(.2,.8,.2,1)
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--paper)}
body{margin:0;color:var(--ink);background:var(--paper);font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;line-height:1.55;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img,svg{display:block;max-width:100%}
button,input,select,textarea{font:inherit}
button{cursor:pointer}
::selection{background:var(--teal);color:white}
.skip-link{position:fixed;left:16px;top:-80px;z-index:9999;background:var(--ink);color:white;padding:12px 16px;border-radius:12px}.skip-link:focus{top:16px}
.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.section{padding:92px 0}.section-sm{padding:64px 0}.section-tight{padding:42px 0}
.eyebrow{display:inline-flex;align-items:center;gap:9px;font-size:.77rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--teal-dark)}
.eyebrow:before{content:"";width:24px;height:2px;background:currentColor;border-radius:99px}
h1,h2,h3,p{margin-top:0}h1,h2,h3{letter-spacing:-.035em;line-height:1.02}
h1{font-size:clamp(3.25rem,7vw,6.7rem);font-weight:830;margin-bottom:24px;max-width:950px}
h2{font-size:clamp(2.35rem,4.5vw,4.35rem);font-weight:820;margin-bottom:22px}
h3{font-size:1.35rem;font-weight:780;margin-bottom:10px}.lead{font-size:clamp(1.08rem,1.7vw,1.3rem);line-height:1.65;color:var(--muted);max-width:720px}
.small{font-size:.9rem;color:var(--muted)}
.kicker{font-size:clamp(1.3rem,2vw,1.75rem);color:var(--muted);line-height:1.5;max-width:780px}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;padding:0 22px;border-radius:999px;border:1px solid transparent;font-weight:780;transition:transform .2s var(--ease),box-shadow .2s var(--ease),background .2s var(--ease)}
.btn:hover{transform:translateY(-2px)}.btn:focus-visible,.nav-link:focus-visible,.service-card:focus-visible{outline:3px solid rgba(106,163,36,.35);outline-offset:3px}
.btn-primary{background:linear-gradient(135deg,var(--ink),var(--brand-blue));color:white;box-shadow:0 12px 25px rgba(3,38,86,.22)}.btn-primary:hover{background:linear-gradient(135deg,var(--brand-blue),var(--ink-2))}
.btn-teal{background:linear-gradient(135deg,var(--brand-green),var(--brand-green-bright));color:var(--ink);box-shadow:0 12px 25px rgba(106,163,36,.25)}.btn-teal:hover{background:var(--brand-green-bright)}
.btn-ghost{border-color:var(--line);background:rgba(255,255,255,.6)}.btn-ghost:hover{background:white}
.btn svg,.text-link svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.text-link{display:inline-flex;align-items:center;gap:8px;font-weight:800;color:var(--ink)}.text-link:hover{gap:12px}
.header{position:sticky;top:0;z-index:100;border-bottom:1px solid transparent;background:rgba(248,250,252,.82);backdrop-filter:blur(16px);transition:.2s}.header.scrolled{border-color:var(--line);box-shadow:0 8px 30px rgba(3,38,86,.05)}
.nav{height:78px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;font-weight:900;letter-spacing:-.04em}.brand-mark{width:43px;height:43px;border-radius:14px;background:var(--ink);color:white;display:grid;place-items:center;font-size:.92rem;letter-spacing:-.07em;box-shadow:inset 0 0 0 1px rgba(255,255,255,.14)}.brand-copy{line-height:1}.brand-copy strong{display:block;font-size:1.03rem}.brand-copy span{display:block;font-size:.72rem;color:var(--muted);font-weight:720;letter-spacing:.02em;margin-top:4px}
.nav-links{display:flex;align-items:center;gap:28px}.nav-link{font-size:.94rem;font-weight:700;color:#3f536b}.nav-link:hover,.nav-link[aria-current="page"]{color:var(--ink)}.nav-actions{display:flex;align-items:center;gap:10px}.menu-button{display:none;border:1px solid var(--line);background:white;border-radius:14px;width:46px;height:46px;place-items:center}.menu-button span,.menu-button:before,.menu-button:after{content:"";display:block;width:20px;height:2px;background:var(--ink);border-radius:2px;transition:.2s}.menu-button span{margin:4px auto}.menu-button:before,.menu-button:after{margin:auto}
.mobile-menu{display:none}
.hero{position:relative;overflow:hidden;padding:74px 0 64px;min-height:750px;display:flex;align-items:center}.hero:before{content:"";position:absolute;right:-180px;top:-120px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle at 35% 35%,rgba(106,163,36,.22),rgba(106,163,36,0) 67%);pointer-events:none}.hero:after{content:"";position:absolute;left:-240px;bottom:-280px;width:700px;height:700px;border-radius:50%;background:radial-gradient(circle at 60% 50%,rgba(6,89,168,.10),rgba(6,89,168,0) 64%);pointer-events:none}.hero-grid{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);gap:60px;align-items:center}.hero h1 em{font-style:normal;color:var(--teal-dark)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin:34px 0 32px}.microproof{display:flex;flex-wrap:wrap;gap:20px;color:#3f555f;font-size:.9rem;font-weight:700}.microproof span{display:flex;align-items:center;gap:7px}.microproof i{width:7px;height:7px;border-radius:99px;background:var(--teal);display:block}
.hero-orbit{position:relative;aspect-ratio:1/1;min-height:500px}.orbit-disc{position:absolute;inset:8%;border-radius:50%;background:linear-gradient(145deg,#052b64,#032656 62%);box-shadow:0 50px 90px rgba(3,38,86,.24);overflow:hidden}.orbit-disc:before{content:"";position:absolute;inset:17%;border:1px solid rgba(255,255,255,.14);border-radius:50%}.orbit-disc:after{content:"";position:absolute;width:220px;height:220px;right:-60px;top:20px;border-radius:50%;background:radial-gradient(circle,rgba(106,163,36,.8),rgba(106,163,36,0) 68%);filter:blur(3px)}.orbit-center{position:absolute;inset:0;display:grid;place-items:center;text-align:center;color:white;z-index:2}.orbit-center strong{font-size:clamp(4.2rem,8vw,7rem);font-weight:920;letter-spacing:-.09em;line-height:.8}.orbit-center span{display:block;margin-top:18px;text-transform:uppercase;letter-spacing:.16em;font-size:.7rem;font-weight:800;color:#d7e7f6}.orbit-pill{position:absolute;z-index:3;background:white;border:1px solid var(--line);box-shadow:var(--shadow);border-radius:18px;padding:13px 16px;font-size:.83rem;font-weight:800;display:flex;align-items:center;gap:10px;color:var(--ink);text-decoration:none;white-space:nowrap;cursor:pointer;animation:float 6s ease-in-out infinite;transition:background .2s var(--ease),border-color .2s var(--ease),box-shadow .2s var(--ease)}.orbit-pill .mini-dot{width:10px;height:10px;border-radius:50%;background:var(--teal);transition:background .2s var(--ease)}.orbit-pill:hover{background:#f7fbf3;border-color:rgba(106,163,36,.45);box-shadow:0 22px 42px rgba(3,38,86,.18)}.orbit-pill:hover .mini-dot{background:var(--coral)}.orbit-pill:focus-visible{outline:3px solid rgba(106,163,36,.38);outline-offset:4px}.orbit-homes{left:-2%;top:20%}.orbit-endlease{right:-1%;top:30%;animation-delay:-1.5s}.orbit-airbnb{right:-4%;top:52%;animation-delay:-2.3s}.orbit-workplaces{left:5%;bottom:19%;animation-delay:-3s}.orbit-property{right:6%;bottom:8%;animation-delay:-4.5s}.orbit-badge{position:absolute;right:14%;top:7%;z-index:4;width:82px;height:82px;border-radius:50%;background:var(--coral);display:grid;place-items:center;text-align:center;font-size:.68rem;line-height:1.1;font-weight:900;text-transform:uppercase;letter-spacing:.05em;transform:rotate(9deg);box-shadow:0 18px 30px rgba(6,89,168,.25)}
@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-8px)}}
.trust-strip{border-block:1px solid var(--line);background:rgba(255,255,255,.48)}.trust-grid{display:grid;grid-template-columns:repeat(4,1fr)}.trust-item{padding:26px 24px;border-right:1px solid var(--line)}.trust-item:last-child{border-right:0}.trust-item strong{display:block;font-size:1rem;margin-bottom:3px}.trust-item span{font-size:.84rem;color:var(--muted)}
.section-head{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}.section-head>div:first-child{max-width:760px}.section-head .lead{margin-bottom:0}
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:290px;background:white;border:1px solid var(--line);border-radius:var(--radius);padding:28px;display:flex;flex-direction:column;transition:transform .25s var(--ease),box-shadow .25s var(--ease),border-color .25s}.service-card:hover{transform:translateY(-6px);box-shadow:var(--shadow);border-color:rgba(106,163,36,.35)}.service-card .icon{width:48px;height:48px;border-radius:15px;background:var(--mint);display:grid;place-items:center;margin-bottom:34px;color:var(--teal-dark)}.icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}.service-card p{color:var(--muted);font-size:.94rem}.service-card .text-link{margin-top:auto}.service-card:after{content:"";position:absolute;right:20px;top:20px;width:8px;height:8px;border-radius:50%;background:var(--coral);opacity:0;transform:scale(.4);transition:.2s}.service-card:hover:after{opacity:1;transform:scale(1)}
.panel{background:var(--ink);color:white;border-radius:38px;padding:56px;position:relative;overflow:hidden}.panel:after{content:"";position:absolute;width:420px;height:420px;right:-130px;top:-150px;border-radius:50%;background:radial-gradient(circle,rgba(106,163,36,.4),rgba(106,163,36,0) 70%)}.panel .eyebrow{color:#cce5a7}.panel .lead,.panel .kicker{color:#d8e2ec}.panel-grid{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:center;position:relative;z-index:1}.standard-list{display:grid;gap:14px}.standard-item{display:grid;grid-template-columns:50px 1fr;gap:16px;align-items:start;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.10);padding:18px;border-radius:20px}.standard-item .icon{width:50px;height:50px;border-radius:15px;background:rgba(106,163,36,.15);display:grid;place-items:center;color:#cce5a7}.standard-item h3{font-size:1.08rem;margin-bottom:4px;letter-spacing:-.02em}.standard-item p{font-size:.88rem;color:#b9c8d8;margin-bottom:0}
.climate-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:28px;align-items:stretch}.climate-card{background:linear-gradient(145deg,#edf7e5,#f6faf0);border-radius:34px;padding:38px;min-height:420px;display:flex;flex-direction:column;justify-content:space-between}.climate-visual{height:210px;position:relative}.sun{width:110px;height:110px;border-radius:50%;background:var(--coral);position:absolute;right:14%;top:0;box-shadow:0 0 0 24px rgba(6,89,168,.08)}.horizon{position:absolute;left:0;right:0;bottom:0;height:95px;border-radius:50% 50% 20px 20px;background:var(--teal);clip-path:polygon(0 54%,15% 42%,29% 58%,42% 35%,61% 53%,80% 29%,100% 47%,100% 100%,0 100%)}.climate-content{background:white;border:1px solid var(--line);border-radius:34px;padding:42px}.climate-points{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:28px}.climate-point{border-top:1px solid var(--line);padding-top:16px}.climate-point strong{display:block;margin-bottom:5px}.climate-point p{color:var(--muted);font-size:.91rem;margin:0}
.split-card{display:grid;grid-template-columns:1fr 1fr;background:white;border:1px solid var(--line);border-radius:36px;overflow:hidden;min-height:520px}.split-copy{padding:54px}.split-copy ul{list-style:none;padding:0;margin:28px 0;display:grid;gap:12px}.split-copy li{display:flex;gap:10px;align-items:flex-start;color:#40545f}.split-copy li .icon{color:var(--teal-dark);flex:0 0 auto;margin-top:1px}.split-copy li .icon svg{width:19px;height:19px}.split-visual{position:relative;background:var(--sand);padding:38px;display:flex;align-items:center;justify-content:center;overflow:hidden}.workflow{width:100%;max-width:430px;display:grid;gap:14px;position:relative;z-index:2}.workflow-row{background:white;border-radius:20px;padding:18px 18px;box-shadow:0 12px 35px rgba(3,38,86,.08);display:flex;align-items:center;gap:14px}.workflow-num{width:38px;height:38px;border-radius:12px;background:var(--ink);color:white;display:grid;place-items:center;font-weight:850}.workflow-row strong{display:block;font-size:.95rem}.workflow-row span{display:block;color:var(--muted);font-size:.79rem;margin-top:2px}.split-visual:before{content:"";position:absolute;width:320px;height:320px;border-radius:50%;background:rgba(106,163,36,.25);right:-80px;bottom:-110px}
.quote-wrap{background:#f1f7eb;border:1px solid rgba(106,163,36,.18);border-radius:40px;padding:54px}.quote-grid{display:grid;grid-template-columns:.78fr 1.22fr;gap:54px}.quote-copy{padding-top:10px}.quote-copy .quote-meta{display:grid;gap:15px;margin-top:28px}.quote-meta div{display:flex;gap:11px;align-items:flex-start}.quote-meta .icon{width:34px;height:34px;border-radius:11px;background:white;display:grid;place-items:center;color:var(--teal-dark);box-shadow:0 6px 16px rgba(3,38,86,.06)}.quote-meta .icon svg{width:17px;height:17px}.quote-meta strong{display:block;font-size:.92rem}.quote-meta span{display:block;font-size:.82rem;color:var(--muted)}
.quote-form{background:white;border-radius:28px;padding:28px;border:1px solid var(--line);box-shadow:0 18px 50px rgba(3,38,86,.08)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}.field label{font-size:.79rem;font-weight:800;color:#344b56}.field input,.field select,.field textarea{width:100%;border:1px solid #d8e1eb;background:#fbfcfd;color:var(--ink);border-radius:14px;padding:13px 14px;outline:none;transition:.15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--teal);box-shadow:0 0 0 4px rgba(106,163,36,.10)}.field textarea{min-height:110px;resize:vertical}.form-actions{display:flex;gap:12px;align-items:center;justify-content:space-between;margin-top:16px}.form-note{font-size:.76rem;color:var(--muted);max-width:280px}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;overflow:hidden!important}
.faq{display:grid;grid-template-columns:.7fr 1.3fr;gap:60px}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0}summary{list-style:none;cursor:pointer;font-weight:780;padding:22px 44px 22px 0;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:"+";position:absolute;right:8px;top:18px;font-size:1.6rem;font-weight:400;color:var(--teal-dark)}details[open] summary:after{content:"–"}details p{color:var(--muted);padding:0 44px 22px 0;margin:0;font-size:.94rem}
.cta-band{background:var(--coral);border-radius:36px;padding:48px;display:flex;align-items:center;justify-content:space-between;gap:40px}.cta-band h2{font-size:clamp(2rem,4vw,3.5rem);max-width:700px;margin:0}.cta-band .btn{background:var(--ink);color:white;white-space:nowrap}
.footer{background:var(--ink);color:white;margin-top:90px;padding:64px 0 30px}.footer-grid{display:grid;grid-template-columns:1.2fr .8fr .8fr .8fr;gap:40px}.footer .brand-copy span{color:#b5c5d6}.footer p,.footer a{color:#aebfc5}.footer a:hover{color:white}.footer h3{font-size:.9rem;letter-spacing:.02em;margin-bottom:16px}.footer-links{display:grid;gap:10px;font-size:.87rem}.footer-bottom{border-top:1px solid rgba(255,255,255,.11);margin-top:48px;padding-top:22px;display:flex;justify-content:space-between;gap:20px;color:#9fb2c6;font-size:.78rem}.footer-note{max-width:430px;font-size:.85rem;line-height:1.7;color:#aebfc5}.footer .brand-mark{background:white;color:var(--ink)}
.mobile-cta{display:none}
.page-hero{padding:74px 0 62px;position:relative;overflow:hidden}.page-hero:after{content:"";position:absolute;right:-120px;top:-170px;width:460px;height:460px;border-radius:50%;background:radial-gradient(circle,rgba(106,163,36,.18),rgba(106,163,36,0) 70%)}.page-hero h1{font-size:clamp(3rem,6vw,5.8rem);max-width:980px}.breadcrumb{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted);margin-bottom:28px}.breadcrumb a:hover{color:var(--ink)}.breadcrumb i{opacity:.4}.page-hero-grid{display:grid;grid-template-columns:1fr .62fr;gap:50px;align-items:end}.page-summary{background:white;border:1px solid var(--line);border-radius:26px;padding:28px;box-shadow:var(--shadow)}.page-summary .summary-tag{font-size:.72rem;font-weight:850;text-transform:uppercase;letter-spacing:.11em;color:var(--teal-dark);margin-bottom:16px}.summary-list{display:grid;gap:12px}.summary-list div{display:flex;gap:9px;font-size:.9rem;color:#40545f}.summary-list .icon{color:var(--teal-dark);flex:0 0 auto}.summary-list .icon svg{width:18px;height:18px}.content-grid{display:grid;grid-template-columns:1fr 360px;gap:60px;align-items:start}.prose{font-size:1.02rem}.prose p,.prose li{color:#4e626c}.prose h2{font-size:clamp(2rem,4vw,3.15rem);margin-top:60px}.prose h3{font-size:1.3rem;margin-top:30px}.prose ul{padding-left:20px}.prose li{margin:8px 0}.prose .callout{background:var(--mint);border-radius:24px;padding:26px;margin:30px 0}.prose .callout strong{display:block;font-size:1.05rem;margin-bottom:6px}.prose .callout p{margin:0;color:#4b6476}.side-card{position:sticky;top:104px;background:var(--ink);color:white;border-radius:28px;padding:30px}.side-card h3{font-size:1.45rem}.side-card p{color:#c0cfdd;font-size:.91rem}.side-card .btn{width:100%;margin-top:8px;background:var(--teal);color:var(--ink)}.side-card .mini-list{display:grid;gap:10px;margin:22px 0}.side-card .mini-list div{display:flex;gap:9px;font-size:.84rem;color:#d2dde7}.side-card .mini-list .icon{color:#7be0d5}.related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.mini-card{background:white;border:1px solid var(--line);border-radius:22px;padding:22px;transition:.2s}.mini-card:hover{transform:translateY(-4px);box-shadow:0 16px 40px rgba(3,38,86,.08)}.mini-card span{font-size:.75rem;font-weight:820;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark)}.mini-card h3{font-size:1.12rem;margin:10px 0 8px}.mini-card p{font-size:.84rem;color:var(--muted);margin:0}.areas{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.area-pill{border:1px solid var(--line);background:white;border-radius:999px;padding:8px 12px;font-size:.8rem;color:#40545f}
.services-index-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.services-index-grid .service-card{min-height:260px}
.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:60px;align-items:center}.about-mark{aspect-ratio:1;border-radius:40px;background:var(--ink);display:grid;place-items:center;position:relative;overflow:hidden;color:white}.about-mark strong{font-size:clamp(6rem,13vw,10rem);letter-spacing:-.1em;position:relative;z-index:2}.about-mark:before{content:"";position:absolute;width:70%;height:70%;border-radius:50%;border:1px solid rgba(255,255,255,.13)}.about-mark:after{content:"";position:absolute;width:60%;height:60%;border-radius:50%;background:radial-gradient(circle,rgba(106,163,36,.75),transparent 66%);right:-20%;top:-15%}
.contact-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:44px}.contact-card{background:var(--ink);color:white;border-radius:30px;padding:34px}.contact-card p{color:#c1cfdb}.contact-card .contact-line{display:flex;gap:12px;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.1)}.contact-card .contact-line:last-child{border-bottom:0}.contact-card .icon{color:#7be0d5}.contact-card .contact-line strong{display:block;font-size:.88rem}.contact-card .contact-line span{color:#bac9d7;font-size:.84rem}
.privacy{max-width:780px}.privacy h2{font-size:1.8rem;margin-top:38px}.privacy p,.privacy li{color:#4e626c}
.reveal{opacity:0;transform:translateY(18px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.orbit-pill{animation:none}.btn,.service-card{transition:none}}
@media(max-width:980px){.nav-links{display:none}.nav-actions .btn-ghost{display:none}.menu-button{display:grid}.mobile-menu{position:fixed;left:20px;right:20px;top:86px;background:white;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:var(--shadow);z-index:120}.mobile-menu.open{display:grid}.mobile-menu a{padding:13px 12px;border-radius:12px;font-weight:750}.mobile-menu a:hover{background:var(--paper)}.hero{padding-top:45px}.hero-grid{grid-template-columns:1fr}.hero-orbit{max-width:600px;width:100%;margin:0 auto}.service-grid{grid-template-columns:repeat(2,1fr)}.panel-grid,.climate-grid,.split-card,.quote-grid,.faq,.about-grid,.contact-grid,.page-hero-grid,.content-grid{grid-template-columns:1fr}.side-card{position:static}.footer-grid{grid-template-columns:1fr 1fr}.trust-grid{grid-template-columns:1fr 1fr}.trust-item:nth-child(2){border-right:0}.trust-item:nth-child(-n+2){border-bottom:1px solid var(--line)}.section-head{align-items:start;flex-direction:column}.split-visual{min-height:430px}.page-summary{max-width:620px}.related-grid{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.container{width:min(100% - 28px,var(--max))}.section{padding:70px 0}.section-sm{padding:52px 0}.nav{height:70px}.brand-copy span{display:none}.nav-actions>.btn{display:none}.hero{min-height:auto;padding:46px 0 48px}.hero h1{font-size:clamp(3.15rem,16vw,4.7rem)}.hero-grid{gap:35px}.hero-orbit{min-height:390px}.orbit-disc{inset:8%}.orbit-pill{font-size:.70rem;padding:10px 12px;gap:7px}.orbit-pill .mini-dot{width:8px;height:8px}.orbit-homes{left:0;top:14%}.orbit-endlease{right:0;top:28%}.orbit-airbnb{right:-1%;top:49%;font-size:.66rem;padding:9px 10px}.orbit-workplaces{left:1%;bottom:18%}.orbit-property{right:2%;bottom:5%}.orbit-badge{width:70px;height:70px;right:8%;top:4%;font-size:.6rem}.service-grid,.services-index-grid,.related-grid{grid-template-columns:1fr}.service-card{min-height:250px}.panel{padding:34px 24px;border-radius:28px}.panel-grid{gap:32px}.climate-card,.climate-content{padding:28px;border-radius:26px}.climate-points{grid-template-columns:1fr}.split-copy{padding:34px 26px}.split-visual{padding:26px;min-height:390px}.quote-wrap{padding:28px 18px;border-radius:28px}.quote-grid{gap:30px}.quote-form{padding:22px 18px}.form-grid{grid-template-columns:1fr}.field.full{grid-column:auto}.form-actions{align-items:stretch;flex-direction:column}.form-actions .btn{width:100%}.faq{gap:30px}.cta-band{padding:32px 24px;flex-direction:column;align-items:flex-start}.footer{padding-bottom:95px}.footer-grid{grid-template-columns:1fr}.footer-bottom{flex-direction:column}.trust-item{padding:20px 16px}.page-hero{padding:48px 0}.page-hero h1{font-size:clamp(2.8rem,14vw,4.4rem)}.page-hero-grid{gap:28px}.content-grid{gap:34px}.mobile-cta{display:flex;position:fixed;left:10px;right:10px;bottom:10px;z-index:95;background:rgba(3,38,86,.94);backdrop-filter:blur(16px);padding:8px;border-radius:18px;box-shadow:0 14px 40px rgba(3,38,86,.28);gap:8px}.mobile-cta .btn{flex:1;min-height:48px}.mobile-cta .btn:first-child{background:white;color:var(--ink)}.mobile-cta .btn:last-child{background:var(--teal);color:var(--ink)}.about-mark{border-radius:28px}}


/* ===== DPN v2: broader residential + short-stay + commercial positioning ===== */
:root{--lime:#d7edb9;--blue-soft:#e4eef8;--peach:#eef5e7;--teal-soft:#edf7e5;--lav:#e8eff7}
.nav{height:82px}.nav-links{gap:20px}.nav-link{font-size:.88rem}.btn-nav{min-height:46px;padding-inline:19px}.mobile-menu-cta{background:var(--ink)!important;color:#fff!important;text-align:center;margin-top:5px}
.hero-v2{position:relative;overflow:hidden;padding:72px 0 72px;min-height:710px;display:flex;align-items:center;background:linear-gradient(180deg,#f8fafc 0%,#f5f8fb 100%)}
.hero-v2:before{content:"";position:absolute;right:-120px;top:-220px;width:680px;height:680px;border-radius:50%;background:radial-gradient(circle at 45% 45%,rgba(106,163,36,.19),rgba(106,163,36,0) 68%);pointer-events:none}.hero-v2:after{content:"";position:absolute;left:-260px;bottom:-330px;width:720px;height:720px;border-radius:50%;background:radial-gradient(circle,rgba(6,89,168,.08),transparent 66%);pointer-events:none}
.hero-v2-grid{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,.92fr);gap:72px;align-items:center}.hero-v2 h1{font-size:clamp(3.5rem,6.2vw,6.2rem);max-width:760px;margin-bottom:26px}.hero-v2 h1 em{font-style:normal;color:var(--teal-dark)}.hero-v2 .kicker{font-size:clamp(1.18rem,1.65vw,1.45rem);max-width:720px}.btn-lg{min-height:56px;padding-inline:25px}.hero-proof-row{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.hero-proof-row>span{display:flex;align-items:center;gap:8px;background:rgba(255,255,255,.72);border:1px solid var(--line);border-radius:999px;padding:8px 12px;font-size:.78rem;font-weight:790;color:#344b56}.hero-proof-row .icon{width:24px;height:24px;background:var(--mint);border-radius:8px;display:grid;place-items:center;color:var(--teal-dark)}.hero-proof-row .icon svg{width:14px;height:14px}
.service-board{background:var(--ink);border-radius:36px;padding:22px;box-shadow:0 42px 90px rgba(3,38,86,.22);position:relative;overflow:hidden}.service-board:before{content:"";position:absolute;width:330px;height:330px;border-radius:50%;right:-160px;top:-130px;background:radial-gradient(circle,rgba(106,163,36,.38),transparent 68%)}.service-board-top{position:relative;z-index:1;display:flex;align-items:end;justify-content:space-between;gap:20px;color:#fff;padding:6px 6px 20px}.service-board-top span{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;color:#cce5a7}.service-board-top strong{font-size:1rem;letter-spacing:-.02em}.service-board-grid{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:10px}.board-card{min-height:122px;background:#fff;border-radius:20px;padding:17px;display:flex;align-items:flex-start;gap:13px;transition:.2s var(--ease);border:1px solid rgba(255,255,255,.16)}.board-card:hover{transform:translateY(-3px);box-shadow:0 14px 32px rgba(0,0,0,.16)}.board-card .icon{flex:0 0 auto;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:var(--mint);color:var(--teal-dark)}.board-card .icon svg{width:21px;height:21px}.board-card span{display:block;font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.08em;color:var(--teal-dark);margin-bottom:5px}.board-card strong{display:block;font-size:.98rem;line-height:1.1;letter-spacing:-.025em}.board-card small{display:block;margin-top:7px;color:var(--muted);font-size:.72rem}.board-home{background:#f7faf3}.board-move{background:#f3f7fc}.board-stay{background:#f4f8fd}.board-work{background:#f6f8fc}.board-property{grid-column:1/-1;min-height:104px;background:#f6faf4}.service-board-footer{position:relative;z-index:1;color:#b9c8d8;font-size:.72rem;font-weight:760;display:flex;align-items:center;gap:8px;padding:16px 7px 2px}.live-dot{width:7px;height:7px;border-radius:50%;background:var(--teal);box-shadow:0 0 0 5px rgba(106,163,36,.12)}
.scope-strip{border-block:1px solid var(--line);background:#fff}.scope-grid{display:grid;grid-template-columns:repeat(6,1fr)}.scope-grid a{padding:20px 18px;border-right:1px solid var(--line);transition:.2s}.scope-grid a:first-child{border-left:1px solid var(--line)}.scope-grid a:hover{background:var(--mint)}.scope-grid strong{display:block;font-size:.86rem}.scope-grid span{display:block;color:var(--muted);font-size:.73rem;margin-top:3px}
.service-grid-v2 .service-card{min-height:360px}.service-card-featured{background:linear-gradient(145deg,#fff,#f6faf1)}.service-type{display:inline-flex;width:max-content;font-size:.7rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--teal-dark);margin-bottom:12px}.card-points{list-style:none;padding:0;margin:10px 0 20px;display:flex;flex-wrap:wrap;gap:7px}.card-points li{font-size:.72rem;background:var(--paper);border:1px solid var(--line);border-radius:999px;padding:6px 9px;color:#50657b}.service-card .arrow-icon,.btn .arrow-icon,.text-link .arrow-icon{display:inline-flex}.arrow-icon svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.service-finder{display:grid;grid-template-columns:.78fr 1.22fr;gap:50px;background:#fff;border:1px solid var(--line);border-radius:38px;padding:48px;box-shadow:0 24px 70px rgba(3,38,86,.07)}.service-finder-copy h2{font-size:clamp(2.2rem,4vw,3.6rem)}.finder-ui{display:grid;grid-template-columns:.78fr 1.22fr;gap:14px;background:var(--paper);border-radius:28px;padding:14px}.finder-tabs{display:grid;gap:8px}.finder-tab{border:1px solid transparent;background:transparent;text-align:left;border-radius:14px;padding:12px 14px;color:#3f555f;font-size:.82rem;font-weight:760}.finder-tab:hover{background:#fff}.finder-tab.active{background:var(--ink);color:#fff;box-shadow:0 9px 20px rgba(3,38,86,.15)}.finder-result{background:#fff;border:1px solid var(--line);border-radius:20px;padding:24px;display:flex;flex-direction:column;align-items:flex-start}.finder-label{font-size:.68rem;font-weight:850;text-transform:uppercase;letter-spacing:.1em;color:var(--teal-dark)}.finder-result h3{font-size:1.55rem;margin:12px 0 10px}.finder-result p{color:var(--muted);font-size:.9rem;margin-bottom:22px}.finder-result .btn{margin-top:auto}
.facility-explainer{display:grid;grid-template-columns:1.05fr .95fr;gap:58px;background:linear-gradient(145deg,#042c60,#032656);color:#fff;border-radius:38px;padding:56px;position:relative;overflow:hidden}.facility-explainer:after{content:"";position:absolute;right:-120px;bottom:-180px;width:430px;height:430px;border-radius:50%;background:radial-gradient(circle,rgba(106,163,36,.32),transparent 67%)}.facility-explainer .eyebrow{color:#c7e89a}.facility-explainer .lead{color:#d8e2ec}.explainer-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.explainer-pills span{border:1px solid rgba(255,255,255,.13);background:rgba(255,255,255,.06);border-radius:999px;padding:8px 11px;font-size:.76rem;color:#e3eaf2}.facility-lanes{position:relative;z-index:1;display:grid;gap:10px}.facility-lane{display:grid;grid-template-columns:48px 1fr;gap:15px;background:rgba(255,255,255,.065);border:1px solid rgba(255,255,255,.11);border-radius:20px;padding:18px}.lane-num{width:48px;height:48px;border-radius:15px;background:rgba(106,163,36,.14);display:grid;place-items:center;color:#b8dc82;font-weight:900;font-size:.77rem}.facility-lane strong{font-size:1.05rem}.facility-lane p{margin:5px 0 0;color:#b9c8d8;font-size:.86rem}
.quote-wrap-v2{background:linear-gradient(145deg,#f4f8f0,#f0f4f8)}.quote-form-head{display:flex;justify-content:space-between;gap:15px;align-items:end;border-bottom:1px solid var(--line);padding-bottom:17px;margin-bottom:20px}.quote-form-head span{font-size:.72rem;text-transform:uppercase;letter-spacing:.1em;font-weight:850;color:var(--teal-dark)}.quote-form-head strong{font-size:1rem}.cta-band-v2{background:linear-gradient(135deg,var(--coral),#0b65b8)}.cta-band-v2>div{max-width:760px}.cta-band-v2 .eyebrow{color:#052b64;margin-bottom:12px}.cta-band-v2 h2{margin:0}
.footer-service-pills{display:flex;flex-wrap:wrap;gap:6px;margin-top:18px}.footer-service-pills span{border:1px solid rgba(255,255,255,.12);border-radius:999px;padding:6px 9px;font-size:.68rem;color:#c2d0de}
.services-index-grid-v2{grid-template-columns:repeat(2,1fr)}.service-index-hero h1{max-width:1000px}
@media(max-width:1120px){.nav-links{display:none}.nav-actions .btn-nav{display:none}.menu-button{display:grid}.mobile-menu{position:fixed;left:20px;right:20px;top:90px;background:white;border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:var(--shadow);z-index:120}.mobile-menu.open{display:grid}.mobile-menu a{padding:12px;border-radius:12px;font-weight:750}.hero-v2-grid{grid-template-columns:1fr;gap:45px}.service-board{max-width:760px}.scope-grid{grid-template-columns:repeat(3,1fr)}.scope-grid a:nth-child(3){border-right:1px solid var(--line)}.scope-grid a:nth-child(-n+3){border-bottom:1px solid var(--line)}.service-finder,.facility-explainer{grid-template-columns:1fr}}
@media(max-width:760px){.hero-v2{padding:48px 0 45px;min-height:auto}.hero-v2 h1{font-size:clamp(3rem,13vw,4.6rem)}.hero-v2-grid{gap:34px}.hero-proof-row{gap:7px}.hero-proof-row>span{font-size:.72rem}.service-board{padding:14px;border-radius:28px}.service-board-top{align-items:flex-start;flex-direction:column;gap:4px;padding:6px 5px 14px}.service-board-grid{grid-template-columns:1fr}.board-card,.board-property{grid-column:auto;min-height:auto}.scope-grid{grid-template-columns:repeat(2,1fr)}.scope-grid a:nth-child(-n+4){border-bottom:1px solid var(--line)}.scope-grid a:nth-child(odd){border-left:1px solid var(--line)}.service-finder{padding:28px 20px;border-radius:28px;gap:28px}.finder-ui{grid-template-columns:1fr}.finder-tabs{grid-template-columns:1fr 1fr}.finder-tab{text-align:center;padding:10px 8px}.facility-explainer{padding:34px 24px;border-radius:28px;gap:34px}.services-index-grid-v2{grid-template-columns:1fr}.quote-form-head{align-items:flex-start;flex-direction:column}.cta-band-v2{gap:24px}}
@media(max-width:480px){.finder-tabs{grid-template-columns:1fr}.hero-proof-row>span{flex:1 1 calc(50% - 7px)}.scope-grid a{padding:16px 12px}.scope-grid strong{font-size:.8rem}.scope-grid span{font-size:.68rem}}
/* =========================================================
   DPN V2 HERO — BRAND ORBIT + SERVICE BOARD STACK
   ========================================================= */

.hero-v2-visual {
    width: 100%;
    max-width: 560px;
    margin-left: auto;
    display: flex;
    flex-direction: column;
    align-items: stretch;
    gap: 14px;
}


/* ---------- Compact DPN brand orbit ---------- */

.hero-v2-visual .hero-orbit-compact {
    position: relative;
    width: 100%;
    max-width: 440px;
    height: 330px;
    min-height: 0;
    aspect-ratio: auto;
    margin: 0 auto;
}

.hero-v2-visual .hero-orbit-compact .orbit-disc {
    width: 270px;
    height: 270px;
    inset: auto;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}

.hero-v2-visual .hero-orbit-compact .orbit-disc::after {
    width: 150px;
    height: 150px;
    right: -40px;
    top: 5px;
}

.hero-v2-visual .hero-orbit-compact .orbit-center strong {
    font-size: 4.8rem;
}

.hero-v2-visual .hero-orbit-compact .orbit-center span {
    margin-top: 12px;
    font-size: .53rem;
}


/* ---------- Floating labels ---------- */

.hero-v2-visual .hero-orbit-compact .orbit-pill {
    padding: 10px 14px;
    border-radius: 15px;
    font-size: .72rem;
    gap: 8px;
    white-space: nowrap;
}

.hero-v2-visual .hero-orbit-compact .orbit-pill .mini-dot {
    width: 7px;
    height: 7px;
}

.hero-v2-visual .hero-orbit-compact .orbit-pill:hover {
    background: #f7fbf3;
    border-color: rgba(13, 183, 165, .45);
    box-shadow: 0 18px 36px rgba(7, 27, 44, .18);
}

.hero-v2-visual .hero-orbit-compact .orbit-pill:focus-visible {
    outline: 3px solid rgba(13, 183, 165, .38);
    outline-offset: 3px;
}


/* Balanced radial service navigation */
.hero-v2-visual .hero-orbit-compact .orbit-homes {
    left: 4%;
    top: 14%;
}

.hero-v2-visual .hero-orbit-compact .orbit-endlease {
    right: -4%;
    top: 25%;
    animation-delay: -1.5s;
}

.hero-v2-visual .hero-orbit-compact .orbit-airbnb {
    right: -9%;
    top: 52%;
    animation-delay: -2.3s;
}

.hero-v2-visual .hero-orbit-compact .orbit-workplaces {
    left: 0;
    bottom: 9%;
    animation-delay: -3s;
}

.hero-v2-visual .hero-orbit-compact .orbit-property {
    right: 7%;
    bottom: 5%;
    animation-delay: -4.5s;
}

/* ---------- Built for Darwin badge ---------- */

.hero-v2-visual .hero-orbit-compact .orbit-badge {
    width: 64px;
    height: 64px;
    right: 15%;
    top: 0;
    font-size: .5rem;
    box-shadow: 0 12px 24px rgba(255, 106, 91, .24);
}


/* =========================================================
   COMPACT SERVICE BOARD FOR HERO
   ========================================================= */

.hero-v2-visual .service-board {
    width: 100%;
    padding: 17px;
    border-radius: 28px;
    box-shadow: 0 28px 65px rgba(7, 27, 44, .19);
}

.hero-v2-visual .service-board-top {
    padding: 3px 4px 13px;
}

.hero-v2-visual .service-board-top span {
    font-size: .64rem;
}

.hero-v2-visual .service-board-top strong {
    font-size: .9rem;
}

.hero-v2-visual .service-board-grid {
    gap: 8px;
}

.hero-v2-visual .board-card {
    min-height: 86px;
    padding: 12px;
    border-radius: 16px;
    gap: 10px;
}

.hero-v2-visual .board-card .icon {
    width: 34px;
    height: 34px;
    border-radius: 10px;
}

.hero-v2-visual .board-card .icon svg {
    width: 17px;
    height: 17px;
}

.hero-v2-visual .board-card span {
    font-size: .57rem;
    margin-bottom: 3px;
}

.hero-v2-visual .board-card strong {
    font-size: .82rem;
}

.hero-v2-visual .board-card small {
    font-size: .62rem;
    margin-top: 4px;
}

.hero-v2-visual .board-property {
    min-height: 76px;
}

.hero-v2-visual .service-board-footer {
    padding: 11px 5px 0;
    font-size: .65rem;
}


/* =========================================================
   DESKTOP HERO BALANCE
   ========================================================= */

@media (min-width: 1121px) {

    .hero-v2 {
        padding-top: 55px;
        padding-bottom: 55px;
    }

    .hero-v2-grid {
        grid-template-columns:
            minmax(0, 1.08fr)
            minmax(450px, .82fr);

        gap: 60px;
        align-items: center;
    }
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width: 1120px) {

    .hero-v2-visual {
        max-width: 680px;
        margin: 0 auto;
    }

    .hero-v2-visual .hero-orbit-compact {
        max-width: 470px;
        height: 345px;
    }

    .hero-v2-visual .service-board {
        max-width: 680px;
        margin: 0 auto;
    }
}


/* =========================================================
   MOBILE
   ========================================================= */

@media (max-width: 760px) {

    .hero-v2-visual {
        gap: 10px;
    }

    .hero-v2-visual .hero-orbit-compact {
        width: 100%;
        max-width: 380px;
        height: 295px;
        min-height: 0;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-disc {
        width: 230px;
        height: 230px;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-center strong {
        font-size: 4rem;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-center span {
        font-size: .48rem;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-badge {
        width: 56px;
        height: 56px;
        right: 17%;
        top: 1%;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-homes {
        left: 3%;
        top: 12%;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-endlease {
        right: -1%;
        top: 24%;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-airbnb {
        right: -3%;
        top: 50%;
        font-size: .64rem;
        padding: 8px 10px;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-workplaces {
        left: 0;
        bottom: 10%;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-property {
        right: 5%;
        bottom: 4%;
    }

    .hero-v2-visual .service-board {
        padding: 14px;
        border-radius: 24px;
    }

    /* On mobile keep cards vertical for readability */
    .hero-v2-visual .service-board-grid {
        grid-template-columns: 1fr;
    }

    .hero-v2-visual .board-card,
    .hero-v2-visual .board-property {
        grid-column: auto;
        min-height: auto;
    }
}


/* Very small phones */

@media (max-width: 420px) {

    .hero-v2-visual .hero-orbit-compact {
        height: 272px;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-disc {
        width: 210px;
        height: 210px;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-center strong {
        font-size: 3.6rem;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-pill {
        font-size: .62rem;
        padding: 8px 9px;
    }

    .hero-v2-visual .hero-orbit-compact .orbit-airbnb {
        right: -2%;
        top: 49%;
        font-size: .58rem;
        padding: 7px 8px;
    }
}

/* =========================================================
   DPN BADGE IDENTITY — BLUE + GREEN BRAND SYSTEM
   ========================================================= */
.brand{gap:11px;letter-spacing:-.03em}
.brand-badge{width:54px;height:54px;object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 6px 14px rgba(3,38,86,.15))}
.brand-copy strong{color:var(--ink);font-size:1.04rem}
.brand-copy span{color:var(--muted)}
.footer .brand-copy strong{color:#fff}
.footer .brand-badge{width:62px;height:62px;filter:drop-shadow(0 8px 20px rgba(0,0,0,.22))}
.header{background:rgba(248,250,252,.90)}
.header.scrolled{box-shadow:0 8px 30px rgba(3,38,86,.08)}
.nav-link:hover,.nav-link[aria-current="page"]{color:var(--brand-blue)}

.hero-v2{background:linear-gradient(180deg,#fbfcfe 0%,#f5f8fb 58%,#f8fafc 100%)}
.hero-v2:before{background:radial-gradient(circle at 45% 45%,rgba(106,163,36,.18),rgba(106,163,36,0) 68%)}
.hero-v2:after{background:radial-gradient(circle,rgba(6,89,168,.11),transparent 66%)}
.hero-v2 h1 em{color:var(--teal-dark)}
.hero-proof-row .icon{background:var(--mint);color:var(--teal-dark)}

.orbit-disc{background:linear-gradient(145deg,#064994,#032656 68%);box-shadow:0 50px 90px rgba(3,38,86,.28)}
.orbit-disc:after{background:radial-gradient(circle,rgba(120,184,42,.78),rgba(120,184,42,0) 68%)}
.orbit-logo{width:76%;height:76%;object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.16))}
.orbit-badge{background:var(--brand-green)!important;color:var(--ink);box-shadow:0 18px 30px rgba(106,163,36,.28)!important}
.orbit-pill .mini-dot,.live-dot{background:var(--brand-green)}
.orbit-pill:hover .mini-dot{background:var(--brand-blue-bright)}

.service-board{background:linear-gradient(150deg,#032656,#064994);box-shadow:0 42px 90px rgba(3,38,86,.24)}
.service-board:before{background:radial-gradient(circle,rgba(120,184,42,.34),transparent 68%)}
.service-board-top span{color:#d8efb7}
.service-card:hover{border-color:rgba(106,163,36,.52)}
.service-card:after{background:var(--brand-blue-bright)}

.panel,.side-card,.footer{background:linear-gradient(145deg,#032656,#013580)}
.panel:after,.facility-explainer:after{background:radial-gradient(circle,rgba(120,184,42,.32),transparent 70%)}
.panel .eyebrow,.facility-explainer .eyebrow{color:#d8efb7}
.standard-item .icon{background:rgba(120,184,42,.15);color:#d8efb7}

.climate-card{background:linear-gradient(145deg,#edf7e5,#f4f8f0)}
.sun{background:var(--brand-blue-bright);box-shadow:0 0 0 24px rgba(6,89,168,.08)}
.horizon{background:linear-gradient(90deg,var(--brand-green),var(--brand-green-bright))}
.quote-wrap,.quote-wrap-v2{background:linear-gradient(145deg,#f1f7eb,#eef4fa);border-color:rgba(106,163,36,.22)}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--brand-green);box-shadow:0 0 0 4px rgba(106,163,36,.13)}

.cta-band-v2{background:linear-gradient(135deg,#064994,#013580)}
.cta-band-v2 .eyebrow{color:#d8efb7}
.cta-band-v2 h2{color:#fff}
.cta-band-v2 .btn{background:linear-gradient(135deg,var(--brand-green),var(--brand-green-bright));color:var(--ink);box-shadow:0 12px 28px rgba(0,0,0,.16)}
.cta-band-v2 .btn:hover{background:var(--brand-green-bright)}

.about-mark{background:linear-gradient(145deg,#f8fafc,#eef4fa);border:1px solid var(--line);box-shadow:var(--shadow)}
.about-mark:before,.about-mark:after{display:none}
.about-badge{width:min(82%,440px);height:auto;filter:drop-shadow(0 22px 34px rgba(3,38,86,.18))}

.mobile-cta{background:rgba(3,38,86,.95)!important;box-shadow:0 14px 40px rgba(3,38,86,.30)!important}
.mobile-cta .btn:last-child{background:var(--brand-green)!important;color:var(--ink)!important}

::selection{background:var(--brand-blue);color:#fff}
.btn:focus-visible,.nav-link:focus-visible,.service-card:focus-visible,.orbit-pill:focus-visible,.brand:focus-visible,.finder-tab:focus-visible,
input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{
  outline:3px solid var(--brand-green-bright);outline-offset:3px
}

@media(max-width:650px){
  .brand-badge{width:48px;height:48px}
  .footer .brand-badge{width:58px;height:58px}
}

/* =========================================================
   DPN FINAL — PREMIUM BLUE / GREEN / WHITE BRAND SYSTEM
   ========================================================= */
:root{
  --dpn-navy:#032656;
  --dpn-blue:#064994;
  --dpn-blue-2:#0b65b8;
  --dpn-green:#6aa324;
  --dpn-green-2:#86bd32;
  --dpn-green-dark:#477b16;
  --dpn-blue-pale:#eef5fc;
  --dpn-blue-soft:#dceaf8;
  --dpn-green-pale:#f2f8e9;
  --dpn-green-soft:#e2efcf;
  --dpn-white:#ffffff;
  --dpn-ink:#032656;
}
html,body{background:#fff;color:var(--dpn-ink)}
body{
  background:
    radial-gradient(circle at 100% 0%,rgba(11,101,184,.045),transparent 26rem),
    radial-gradient(circle at 0 34%,rgba(106,163,36,.04),transparent 24rem),
    #fff;
}
/* crisp brand line under the sticky header */
.header,.header.scrolled{background:rgba(255,255,255,.96);border-bottom:0}
.header::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:3px;
  background:linear-gradient(90deg,var(--dpn-blue) 0 69%,var(--dpn-green) 69% 100%);
  opacity:.94
}
.header.scrolled{box-shadow:0 12px 30px rgba(3,38,86,.10)}
.brand-badge{width:60px;height:60px;filter:drop-shadow(0 6px 14px rgba(3,38,86,.16))}
.brand-copy strong{color:var(--dpn-navy)}
.nav-link{color:#354d69}
.nav-link:hover,.nav-link[aria-current="page"]{color:var(--dpn-blue)}
.btn-nav{background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2))!important;color:#fff!important;box-shadow:0 11px 22px rgba(106,163,36,.24)!important}
.btn-nav:hover{background:linear-gradient(135deg,var(--dpn-green-dark),var(--dpn-green))!important}

/* HEROES — unmistakably DPN */
.hero-v2,.page-hero{
  position:relative;
  background:
    radial-gradient(circle at 88% 13%,rgba(106,163,36,.19),transparent 25rem),
    radial-gradient(circle at 7% 96%,rgba(6,73,148,.16),transparent 29rem),
    linear-gradient(135deg,#ffffff 0%,#f2f7fc 57%,#f4f9ec 100%);
  border-bottom:0;
  overflow:hidden
}
.hero-v2::before,.page-hero::before{
  content:"";position:absolute;right:-80px;top:-160px;width:430px;height:430px;border-radius:50%;
  background:linear-gradient(145deg,rgba(6,73,148,.12),rgba(106,163,36,.10));pointer-events:none
}
.hero-v2::after,.page-hero::after{
  content:"";position:absolute;left:0;right:0;bottom:0;height:6px;
  background:linear-gradient(90deg,var(--dpn-blue) 0 74%,var(--dpn-green) 74% 100%);
  pointer-events:none
}
.hero-v2 h1 em{color:var(--dpn-green-dark)}
.hero-v2 .btn-primary,.page-hero .btn-primary{
  background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2));
  color:#fff;box-shadow:0 14px 28px rgba(106,163,36,.24)
}
.hero-v2 .btn-primary:hover,.page-hero .btn-primary:hover{background:linear-gradient(135deg,var(--dpn-green-dark),var(--dpn-green))}
.hero-v2 .btn-ghost,.page-hero .btn-ghost{background:#fff;border-color:rgba(3,38,86,.14);color:var(--dpn-navy)}
.eyebrow{color:var(--dpn-green-dark)}
.eyebrow:before{background:linear-gradient(90deg,var(--dpn-blue),var(--dpn-green))}
.breadcrumb{color:#61738a}
.breadcrumb i{color:var(--dpn-green)}

/* Hero badge/orbit */
.orbit-disc{
  background:
    radial-gradient(circle at 73% 24%,rgba(134,189,50,.26),transparent 9rem),
    linear-gradient(145deg,#064994 0%,#032656 72%);
  box-shadow:0 42px 82px rgba(3,38,86,.29),inset 0 0 0 1px rgba(255,255,255,.08)
}
.orbit-disc:before{border-color:rgba(255,255,255,.18)}
.orbit-disc:after{background:radial-gradient(circle,rgba(134,189,50,.75),rgba(134,189,50,0) 68%)}
.orbit-logo{width:80%;height:80%}
.orbit-pill{border-color:rgba(3,38,86,.11);box-shadow:0 16px 38px rgba(3,38,86,.12)}
.orbit-pill .mini-dot{background:var(--dpn-green)}
.orbit-badge{background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2))!important;color:#fff!important}

/* ALL PAGE BANDS — visible blue/green/white rhythm, still premium */
main > section.section,main > section.section-sm,main > section.section-tight{border:0}
main > section.section:nth-of-type(3n+1),main > section.section-sm:nth-of-type(3n+1){background:#fff}
main > section.section:nth-of-type(3n+2),main > section.section-sm:nth-of-type(3n+2){background:linear-gradient(180deg,#f3f8fd,#eaf3fb)}
main > section.section:nth-of-type(3n),main > section.section-sm:nth-of-type(3n){background:linear-gradient(180deg,#f7faF2,#eef6e3)}
main > section.section-tight{background:linear-gradient(180deg,#eef5fc,#f4f9ec)}

/* Strong blue navigation/service table strip */
.scope-strip{
  background:
    radial-gradient(circle at 90% 15%,rgba(134,189,50,.24),transparent 17rem),
    linear-gradient(105deg,var(--dpn-navy),var(--dpn-blue) 66%,var(--dpn-blue-2));
  border:0;box-shadow:0 20px 46px rgba(3,38,86,.15)
}
.scope-grid a{color:#fff;border-color:rgba(255,255,255,.14);background:transparent}
.scope-grid a:first-child{border-left-color:rgba(255,255,255,.14)}
.scope-grid strong{color:#fff}
.scope-grid span{color:#d9e7f4}
.scope-grid a:hover{background:rgba(134,189,50,.14)}
.scope-grid a:hover strong{color:#eef8df}
.trust-strip{background:linear-gradient(90deg,#eaf3fb 0%,#fff 50%,#eef6e3 100%);border-color:rgba(3,38,86,.08)}
.trust-item{border-color:rgba(3,38,86,.09)}

/* Service cards — coloured top bars make the system visible */
.service-card,.mini-card,.page-summary,.split-card,.workflow-row,.area-pill,.faq-list details,.quote-form,.service-finder,.finder-result,.climate-content{
  position:relative;border:1px solid rgba(3,38,86,.10);box-shadow:0 14px 34px rgba(3,38,86,.06)
}
.service-card{overflow:hidden;background:linear-gradient(145deg,#fff,#f3f8fd)}
.service-card::before,.mini-card::before{
  content:"";position:absolute;left:0;right:0;top:0;height:5px;background:linear-gradient(90deg,var(--dpn-blue),var(--dpn-blue-2))
}
.service-grid .service-card:nth-child(2n),.services-index-grid .service-card:nth-child(2n),.services-index-grid-v2 .service-card:nth-child(2n){background:linear-gradient(145deg,#fff,#f4f9ec)}
.service-grid .service-card:nth-child(2n)::before,.services-index-grid .service-card:nth-child(2n)::before,.services-index-grid-v2 .service-card:nth-child(2n)::before{background:linear-gradient(90deg,var(--dpn-green-dark),var(--dpn-green-2))}
.service-card .icon{background:linear-gradient(145deg,#fff,#e4eef9);color:var(--dpn-blue);border:1px solid rgba(6,73,148,.12)}
.service-card:nth-child(2n) .icon{background:linear-gradient(145deg,#fff,#e4f0d1);color:var(--dpn-green-dark);border-color:rgba(106,163,36,.16)}
.service-card:hover,.mini-card:hover{transform:translateY(-5px);border-color:rgba(106,163,36,.34);box-shadow:0 22px 50px rgba(3,38,86,.12)}

/* Homepage service board */
.service-board{
  background:
    radial-gradient(circle at 91% 5%,rgba(134,189,50,.28),transparent 18rem),
    linear-gradient(150deg,#032656 0%,#064994 74%,#0b65b8 100%);
  box-shadow:0 34px 72px rgba(3,38,86,.23)
}
.service-board-top span{color:#dff0bf}
.board-card{border:1px solid rgba(3,38,86,.08);box-shadow:0 8px 18px rgba(3,38,86,.05)}
.board-home,.board-property{background:linear-gradient(145deg,#fff,#eef6e3)}
.board-move,.board-stay,.board-work{background:linear-gradient(145deg,#fff,#eaf3fb)}

/* Service page summary becomes a premium navy/green feature */
.page-summary{
  background:
    radial-gradient(circle at 90% 5%,rgba(134,189,50,.24),transparent 13rem),
    linear-gradient(145deg,#032656,#064994 86%);
  color:#fff;border:1px solid rgba(255,255,255,.10);box-shadow:0 28px 62px rgba(3,38,86,.22)
}
.page-summary .summary-tag{color:#dff1bc}
.summary-list div{color:#fff;border-color:rgba(255,255,255,.10)}
.summary-list .icon{color:#bfe27f}

/* Tables / lists / informational blocks */
.prose .callout{background:linear-gradient(135deg,#f5f9ed,#edf5fd);border:1px solid rgba(106,163,36,.18);border-left:5px solid var(--dpn-green);box-shadow:0 10px 26px rgba(3,38,86,.05)}
.mini-card{overflow:hidden;background:linear-gradient(145deg,#fff,#f1f6fc)}
.related-grid .mini-card:nth-child(2n){background:linear-gradient(145deg,#fff,#f4f9ec)}
.related-grid .mini-card:nth-child(2n)::before{background:linear-gradient(90deg,var(--dpn-green-dark),var(--dpn-green-2))}
.workflow-row{background:linear-gradient(145deg,#fff,#f1f6fc)}
.workflow-row:nth-child(2n){background:linear-gradient(145deg,#fff,#f5f9ed)}
.workflow-num{background:linear-gradient(145deg,var(--dpn-blue),var(--dpn-navy));color:#fff}
.area-pill{background:linear-gradient(135deg,#fff,#edf5fd)}
.area-pill:nth-child(2n){background:linear-gradient(135deg,#fff,#f0f7e7)}

/* Finder, forms and quote system */
.service-finder,.quote-wrap,.quote-wrap-v2{
  background:
    radial-gradient(circle at 92% 8%,rgba(106,163,36,.13),transparent 17rem),
    linear-gradient(145deg,#fff 0%,#edf5fd 60%,#f4f9ec 100%);
  border:1px solid rgba(3,38,86,.10);box-shadow:0 24px 58px rgba(3,38,86,.08)
}
.finder-ui{background:linear-gradient(145deg,#e8f2fb,#edf6e3);border:1px solid rgba(3,38,86,.07)}
.finder-result{background:#fff}
.finder-tab.active{background:linear-gradient(135deg,var(--dpn-blue),var(--dpn-navy));color:#fff}
.quote-form{background:#fff;border-top:5px solid var(--dpn-blue)}
.quote-form::after{content:"";position:absolute;top:-5px;right:0;width:28%;height:5px;background:var(--dpn-green)}
.field input,.field select,.field textarea{background:#fbfdff;border-color:#cbdbea}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--dpn-green);box-shadow:0 0 0 4px rgba(106,163,36,.12)}
.quote-form .btn-primary{background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2));color:#fff}

/* FAQ — alternating blue / green premium cards */
.faq-list{border-top:0;display:grid;gap:12px}
.faq-list details{background:linear-gradient(145deg,#fff,#eef5fc);border-radius:18px;padding:0 18px;border-left:4px solid var(--dpn-blue)}
.faq-list details:nth-child(2n){background:linear-gradient(145deg,#fff,#f2f8e9);border-left-color:var(--dpn-green)}
.faq-list details[open]{border-color:rgba(106,163,36,.34);border-left-color:var(--dpn-green);box-shadow:0 15px 34px rgba(3,38,86,.08)}

/* Dark premium brand panels */
.panel,.facility-explainer,.side-card,.contact-card,.cta-band-v2,.footer{
  background:
    radial-gradient(circle at 90% 7%,rgba(134,189,50,.21),transparent 18rem),
    linear-gradient(145deg,#021d43 0%,#032656 52%,#064994 128%);
  color:#fff
}
.panel,.facility-explainer{box-shadow:0 30px 70px rgba(3,38,86,.18)}
.panel .eyebrow,.facility-explainer .eyebrow,.side-card .eyebrow,.contact-card .eyebrow{color:#dff0bf}
.standard-item,.facility-lane{background:rgba(255,255,255,.065);border-color:rgba(255,255,255,.12)}
.side-card .btn,.cta-band-v2 .btn{background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2));color:#fff}
.footer-service-pills span{background:rgba(255,255,255,.05);border-color:rgba(208,235,168,.20)}

/* About page — badge is a true visual anchor */
.about-mark{
  background:
    radial-gradient(circle at 78% 15%,rgba(134,189,50,.25),transparent 15rem),
    linear-gradient(145deg,#032656,#064994 82%);
  border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 64px rgba(3,38,86,.20)
}
.about-badge{width:min(84%,460px);filter:drop-shadow(0 24px 38px rgba(0,0,0,.25))}
.about-brand-inline{
  background:linear-gradient(145deg,#fff,#edf5fd 58%,#f2f8e9 100%);
  border:1px solid rgba(3,38,86,.10);border-left:5px solid var(--dpn-green);
  box-shadow:0 12px 28px rgba(3,38,86,.06)
}
.about-brand-inline img{width:86px;height:86px}

/* climate / split visual blocks */
.climate-card{background:linear-gradient(145deg,#eef6e3,#dfeec9);border:1px solid rgba(106,163,36,.16)}
.climate-content{background:linear-gradient(145deg,#fff,#eef5fc)}
.split-card{background:linear-gradient(145deg,#fff,#f1f6fc)}
.split-visual{background:linear-gradient(145deg,#dceaf8,#e7f1d8)}
.sun{background:var(--dpn-blue-2);box-shadow:0 0 0 24px rgba(11,101,184,.09)}
.horizon{background:linear-gradient(90deg,var(--dpn-green-dark),var(--dpn-green-2))}

/* buttons and focus */
.btn-primary{background:linear-gradient(135deg,var(--dpn-navy),var(--dpn-blue));color:#fff}
.btn-primary:hover{background:linear-gradient(135deg,var(--dpn-blue),var(--dpn-blue-2))}
.btn:focus-visible,.nav-link:focus-visible,.service-card:focus-visible,.orbit-pill:focus-visible,.brand:focus-visible,.finder-tab:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid var(--dpn-green-2);outline-offset:3px}
.mobile-cta{background:rgba(3,38,86,.97)!important}
.mobile-cta .btn:last-child{background:linear-gradient(135deg,var(--dpn-green),var(--dpn-green-2))!important;color:#fff!important}

@media(max-width:1120px){.mobile-menu{background:linear-gradient(155deg,#fff,#eef5fc);border-top:4px solid var(--dpn-green)}}
@media(max-width:760px){
  .brand-badge{width:52px;height:52px}
  .page-summary{margin-top:10px}
  main > section.section:nth-of-type(3n+2),main > section.section-sm:nth-of-type(3n+2){background:#eef5fc}
  main > section.section:nth-of-type(3n),main > section.section-sm:nth-of-type(3n){background:#f2f8e9}
  .about-brand-inline img{width:68px;height:68px}
}


/* =========================================================
   DPN FINAL — PRODUCTION POLISH
   ========================================================= */
.about-brand-inline{display:flex;align-items:center;gap:16px;margin:24px 0 28px;padding:16px 18px;border-radius:22px}
.about-brand-inline img{object-fit:contain;flex:0 0 auto;filter:drop-shadow(0 10px 20px rgba(3,38,86,.13))}
.about-brand-inline strong{display:block;font-size:1rem;color:var(--dpn-navy);margin-bottom:3px}
.about-brand-inline span{display:block;font-size:.92rem;color:var(--muted);line-height:1.5}
.brand-badge{object-fit:contain}
.quote-form{position:relative}
.form-note a{text-decoration:underline;text-underline-offset:2px;font-weight:750}
.form-note a:hover{color:var(--dpn-blue)}
.privacy{max-width:860px}
.privacy h2{font-size:clamp(1.55rem,2.8vw,2.2rem);margin-top:38px;margin-bottom:12px}
.privacy h2:first-child{margin-top:0}
.privacy p,.privacy li{color:#465a70}
.privacy ul{padding-left:20px}
.privacy-updated{display:inline-flex;padding:8px 12px;border-radius:999px;background:var(--dpn-blue-pale);color:var(--dpn-blue);font-size:.78rem;font-weight:800;margin-bottom:30px}
.thank-you-card{max-width:820px;margin-inline:auto;text-align:center;background:linear-gradient(145deg,#fff,#edf5fc 58%,#f2f8e9);border:1px solid rgba(3,38,86,.10);border-radius:38px;padding:clamp(36px,7vw,72px);box-shadow:0 28px 70px rgba(3,38,86,.10)}
.thank-you-badge{width:132px;height:132px;object-fit:contain;margin:0 auto 24px;filter:drop-shadow(0 16px 26px rgba(3,38,86,.16))}
.thank-you-card h1{font-size:clamp(2.7rem,6vw,4.8rem);max-width:none}
.thank-you-card .lead{margin:0 auto 28px}
.thank-you-actions{display:flex;justify-content:center;flex-wrap:wrap;gap:12px}
.contact-card .contact-line strong{color:#fff}
.contact-card .contact-line span{color:#d7e5f2}
.service-card h3,.mini-card h3{color:var(--dpn-navy)}
.footer .brand-copy span{color:#c7d6e6}
.footer a:hover{color:#dff0bf}
.footer-bottom{border-top-color:rgba(255,255,255,.10)}
/* Reduce motion for users who request it */
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
@media(max-width:760px){.about-brand-inline{padding:13px 14px;gap:12px}.about-brand-inline img{width:68px!important;height:68px!important}.thank-you-card{border-radius:28px}.thank-you-actions .btn{width:100%}}


/* Production form/contact refinements */
.form-note a,.contact-line a,.thank-you-card a:not(.btn),.prose a[href^="mailto:"]{color:var(--dpn-blue);font-weight:750;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.contact-card .contact-line a{color:#fff;text-decoration-color:rgba(255,255,255,.55)}
.quote-form button[disabled]{opacity:.72;cursor:wait;transform:none!important}
