:root{--navy:#1d3e5c;--ink:#142d44;--blue:#397fa6;--sky:#eaf4f9;--line:#d7e4ec;--muted:#53697a;--white:#fff;--radius:6px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}a{color:inherit}button,input,select,textarea{font:inherit}button{color:inherit}img{max-width:100%;height:auto}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #2f7aa2;outline-offset:4px}[hidden]{display:none!important}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;top:-100px;left:20px;background:#fff;padding:12px;z-index:10}.skip-link:focus{top:12px}
.site-header{max-width:1440px;min-height:148px;border-bottom:1px solid #e5eef4;margin:auto;padding:12px 5%;display:flex;align-items:center;justify-content:space-between;gap:30px}.brand{display:block;flex:0 0 184px;width:184px;line-height:0}
/* Frame the supplied logo's white margins without changing the original artwork. */
.brand-mark{display:block;position:relative;width:100%;aspect-ratio:900/620;overflow:hidden}
.brand-mark img{position:absolute;display:block;width:156.333333%;max-width:none;height:auto;left:-29.333333%;top:-18.709677%}
.site-header nav{display:flex;gap:30px;font-size:.9rem;font-weight:600}.site-header nav a{text-decoration:none}.site-header nav a:hover{color:var(--blue)}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:26px;text-decoration:none;border:1px solid var(--navy);border-radius:var(--radius);background:var(--navy);color:#fff;padding:16px 23px;font-weight:650;cursor:pointer;transition:background .2s,transform .2s;line-height:1.5}.button:hover{background:#2d5776;transform:translateY(-1px)}.button-small{font-size:.9rem;padding:12px 18px}.button span{font-size:1.25rem}
.hero{max-width:1440px;margin:auto;padding:44px 5% 62px;display:grid;grid-template-columns:1.06fr 1fr;gap:6%;align-items:center;min-height:600px}.eyebrow{font-size:.8rem;font-weight:750;letter-spacing:.13em;color:var(--blue);margin:0 0 24px}h1{font-size:clamp(2.7rem,4.3vw,4.1rem);font-weight:650;letter-spacing:-.055em;line-height:1.1;margin:0 0 28px}h1 span{color:var(--blue)}.hero-intro{max-width:470px;font-size:1.08rem;color:var(--muted);line-height:1.75}.hero-actions{display:flex;align-items:center;gap:25px;margin-top:31px;flex-wrap:wrap}.text-link{font-weight:650;text-underline-offset:5px}.text-link:hover{color:var(--blue)}.hero-note{font-size:.875rem;color:var(--muted);max-width:400px;margin-top:25px}.hero-visual{position:relative;padding:0 0 32px}.hero-photo{height:470px;border-radius:110px 6px 6px 6px;overflow:hidden;background:var(--sky)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:48% center;display:block}.area-stamp{position:absolute;left:-30px;bottom:56px;background:var(--navy);color:#fff;padding:22px 27px;display:flex;align-items:center;gap:18px;border-radius:4px;box-shadow:0 12px 30px #112c4315}.area-stamp strong{font-size:2.25rem;font-weight:650;letter-spacing:-.05em}.area-stamp span{font-size:.875rem;line-height:1.5}.visual-caption{text-align:right;font-size:.75rem;color:var(--muted);margin:12px 0 0}.trust-strip{border-block:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding:22px max(5%,calc((100vw - 1296px)/2));font-size:.875rem;font-weight:600;background:#f6fafc}.trust-strip span{display:flex;gap:10px;align-items:center}.trust-strip span:before{content:'✓';color:var(--blue);font-weight:800}
.section{max-width:1440px;margin:auto;padding:94px 5%}h2{font-size:clamp(2rem,3.1vw,2.85rem);line-height:1.15;font-weight:650;letter-spacing:-.045em;margin:0 0 25px}h3{line-height:1.3;font-weight:650}.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:end;margin-bottom:45px}.section-heading h2{margin:0}.section-heading>p{max-width:480px;color:var(--muted);margin:0 0 3px}.diagnostics-layout{display:grid;grid-template-columns:.9fr 1.75fr;gap:54px}.dpe-card{padding:34px;background:var(--sky);border-radius:var(--radius);display:flex;flex-direction:column;align-items:flex-start}.service-kicker{font-size:.8rem;font-weight:750;color:var(--blue);letter-spacing:.12em}.dpe-card h3{font-size:1.6rem;letter-spacing:-.025em;margin:14px 0}.dpe-card>p{color:var(--muted);font-size:.95rem;margin-top:0}.energy-bars{display:flex;flex-direction:column;gap:5px;width:100%;margin:16px 0 19px}.energy-bars span{display:block;width:var(--w);background:var(--bar);height:25px;line-height:25px;padding-left:12px;clip-path:polygon(0 0,calc(100% - 12px) 0,100% 50%,calc(100% - 12px) 100%,0 100%);font-size:.875rem;font-weight:800;color:#122b40}.energy-bars span:first-child,.energy-bars span:last-child{color:#fff}.dpe-card .dpe-scope{font-size:.875rem;margin-top:auto;margin-bottom:18px}.dpe-card .text-link{font-size:.875rem}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 36px}.service-item{display:flex;gap:17px;padding:23px 0;border-bottom:1px solid var(--line)}.service-item:nth-child(-n+2){padding-top:10px}.service-number{font-size:.75rem;font-weight:650;color:var(--blue);padding-top:5px}.service-item h3{font-size:1.125rem;margin:0 0 9px}.service-item p{margin:0;font-size:.93rem;line-height:1.65;color:var(--muted)}.service-help{margin-top:40px;padding:23px 0 0;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center}.service-help p{margin:0;color:var(--muted)}.service-help a{font-size:.93rem}
.approach-section{background:var(--navy);color:#fff}.approach-inner{max-width:1440px;margin:auto;padding:85px 5%;display:grid;grid-template-columns:1fr .9fr;gap:12%}.approach-section .eyebrow{color:#b5dff4}.approach-intro p:not(.eyebrow){color:#d4e3ed;font-size:.97rem}.approach-intro .approach-lead{font-size:1.15rem!important;color:#fff!important}.signature{display:flex;flex-direction:column;border-top:1px solid #ffffff2b;padding-top:24px;margin-top:28px}.signature strong{font-size:1.2rem}.signature span{font-size:.875rem;color:#c2d9e8;margin-top:3px}.steps{padding-top:5px}.steps article{display:grid;grid-template-columns:40px 1fr;gap:17px;padding:24px 0;border-bottom:1px solid #ffffff2b}.steps article:first-child{padding-top:0}.steps article:last-child{border:0;padding-bottom:0}.steps article>span{font-size:.8rem;color:#a8d4eb;padding-top:4px}.steps h3{margin:0 0 9px;font-size:1.15rem}.steps p{margin:0;color:#c6d9e7;font-size:.95rem}
.sector-section{display:grid;grid-template-columns:1.1fr 1fr;gap:12%;align-items:center}.sector-copy>p:not(.eyebrow){color:var(--muted)}.sector-copy strong{color:var(--ink);font-weight:600}.towns{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.towns span{border:1px solid var(--line);border-radius:3px;padding:7px 11px;font-size:.875rem;background:#fbfdfe}.sector-note{font-size:.9rem}.sector-mark{background:var(--sky);border:1px solid var(--line);padding:42px 44px;border-radius:6px 100px 6px 6px}.sector-department{font-size:.8rem;letter-spacing:.14em;font-weight:650;color:var(--blue)}.distance-number{font-size:8.7rem;font-weight:650;letter-spacing:-.07em;line-height:1.1;margin-top:20px}.distance-number>span{font-size:2.4rem;letter-spacing:-.04em;margin-left:15px;font-weight:450;color:var(--blue)}.distance-subtitle{font-size:1.1rem;color:var(--muted)}.sector-baseline{border-top:1px solid #b9d4e4;margin-top:30px;padding-top:24px;display:flex;gap:17px;align-items:center;font-size:.93rem}.location-symbol{font-size:2rem;color:var(--blue)}.sector-baseline strong{font-weight:600}
.faq-section{border-top:1px solid var(--line);display:grid;grid-template-columns:.8fr 1.3fr;gap:10%;padding-top:70px;padding-bottom:80px}.faq-list details{border-bottom:1px solid var(--line)}.faq-list details:first-child{border-top:1px solid var(--line)}summary{list-style:none;cursor:pointer}summary::-webkit-details-marker{display:none}.faq-list summary{padding:22px 0;font-size:1rem;font-weight:600;display:flex;justify-content:space-between;gap:20px;align-items:center}.faq-list summary>span{font-size:1.3rem;color:var(--blue);flex-shrink:0;line-height:1}.faq-list details[open] summary>span{transform:rotate(45deg)}.faq-list details>p{color:var(--muted);font-size:.95rem;margin:0 35px 25px 0}
.quote-section{background:#eaf4f9;border-block:1px solid var(--line)}.quote-inner{max-width:1440px;margin:auto;padding:85px 5%;display:grid;grid-template-columns:.78fr 1.25fr;gap:10%;align-items:start}.quote-intro{padding-top:10px}.quote-intro h2{font-size:clamp(2.7rem,4.1vw,3.7rem)}.quote-intro>p:not(.eyebrow){color:var(--muted);max-width:350px}.contact-block{display:flex;align-items:flex-start;flex-direction:column;gap:8px;margin-top:40px}.contact-block>span{font-size:.9rem;color:var(--muted)}.contact-phone{font-size:1.8rem;letter-spacing:-.02em;font-weight:650;text-decoration:none}.contact-email{font-size:.95rem;text-underline-offset:4px;overflow-wrap:anywhere}.quote-note{border-top:1px solid #bed7e6;margin-top:34px;padding-top:25px;font-size:.875rem;max-width:340px}.quote-note strong{font-weight:650}.quote-note p{color:var(--muted);margin:7px 0 0}.quote-form-wrap{background:#fff;border:1px solid var(--line);padding:36px;border-radius:6px;box-shadow:0 10px 28px #1d3e5c05;min-width:0}.form-intro{margin:0 0 20px;color:var(--muted);font-size:.8rem}fieldset{border:0;padding:0;margin:0;min-width:0}legend{font-weight:600;font-size:.875rem;margin-bottom:12px}.project-field{display:flex;gap:12px;margin-bottom:23px}.radio-choice{position:relative;flex:1;display:flex;gap:10px;align-items:center;cursor:pointer;background:#f9fcfd;border:1px solid var(--line);border-radius:4px;padding:11px 14px;font-size:.95rem}.radio-choice:has(input:checked){border-color:var(--blue);background:var(--sky);color:var(--navy)}input[type=radio],input[type=checkbox]{accent-color:var(--navy);width:17px;height:17px;flex:0 0 17px;margin:0;cursor:pointer}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:19px 18px}.form-grid>label{font-size:.875rem;font-weight:600;display:flex;flex-direction:column;gap:7px;min-width:0}.form-grid input,.form-grid select,.form-grid textarea{width:100%;min-width:0;max-width:100%;padding:11px 12px;border:1px solid #cbd9e2;border-radius:4px;background:#fff;color:var(--ink);font-size:1rem;font-weight:400;line-height:1.5}.form-grid input::placeholder,.form-grid textarea::placeholder{color:#72808d;opacity:1;font-size:.9rem}.form-grid select{padding-right:23px}.form-grid textarea{resize:vertical;min-height:95px}.full-width{grid-column:1/-1}.diagnostic-picker{margin-top:22px}.diagnostic-picker summary{display:flex;align-items:center;gap:6px;font-size:.875rem;color:var(--navy);flex-wrap:wrap}.diagnostic-picker summary>span:last-child{margin-left:auto;font-size:1.15rem}.diagnostic-picker[open] summary>span:last-child{transform:rotate(45deg)}.optional{color:var(--muted);font-size:.8rem}.checkbox-grid{padding-top:20px;display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.checkbox-grid label{font-size:.875rem;display:flex;gap:8px;align-items:center;cursor:pointer}.form-divider{height:1px;background:var(--line);margin:26px 0}.form-privacy{font-size:.8rem;line-height:1.7;color:var(--muted);margin-top:22px}.inline-button{padding:0;background:none;border:0;text-decoration:underline;text-underline-offset:3px;color:inherit;cursor:pointer;font-size:inherit;text-align:inherit}.inline-button:hover{color:var(--blue)}.quote-submit{width:100%;margin-top:4px;justify-content:space-between}.email-explainer{text-align:center;font-size:.8rem;margin-bottom:0;color:var(--muted)}.quote-result:focus{outline:0}.quote-result .eyebrow{font-size:.75rem;margin-bottom:14px}.quote-result h3{font-size:1.8rem;letter-spacing:-.025em;margin:0 0 15px}.quote-result>p:not(.eyebrow){color:var(--muted);font-size:.95rem}.quote-result>a.button{width:100%;margin:12px 0 28px;gap:16px}.prepared-label{display:block;font-size:.875rem;font-weight:600;margin-bottom:8px}#prepared-message{padding:15px;border:1px solid var(--line);border-radius:4px;width:100%;font-size:.875rem;line-height:1.7;background:#f7fbfd;color:var(--ink);resize:vertical}.result-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:16px;font-size:.875rem}.secondary-button{background:#fff;border:1px solid var(--line);border-radius:4px;padding:9px 13px;cursor:pointer}.secondary-button:hover{border-color:var(--blue)}.send-help,.not-sent{font-size:.8rem!important}.send-help a{overflow-wrap:anywhere}.not-sent{padding-top:14px;border-top:1px solid var(--line)}.copy-status{font-size:.8rem!important;min-height:1.5em}
.site-footer{max-width:1440px;margin:auto;padding:50px 5% 25px}.footer-main{display:grid;grid-template-columns:.85fr 1.1fr 1fr;gap:35px;align-items:center;padding-bottom:32px}.footer-brand{display:block;width:148px;max-width:100%;text-decoration:none;line-height:0}.footer-main p{font-size:.9rem;color:var(--muted);margin:0}.footer-main>div{display:flex;align-items:flex-start;flex-direction:column;gap:6px;font-size:.9rem;overflow-wrap:anywhere}.footer-main>div a{text-decoration:none}.footer-main>div a:hover{text-decoration:underline}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:.75rem;color:var(--muted);flex-wrap:wrap}
dialog{width:min(610px,calc(100% - 36px));padding:45px;border:1px solid var(--line);border-radius:8px;color:var(--ink);max-height:85vh;overflow-y:auto}dialog::backdrop{background:#10273899}dialog h2{font-size:2rem}dialog p:not(.eyebrow){font-size:.95rem;color:var(--muted)}dialog a{overflow-wrap:anywhere}.dialog-close{position:absolute;right:13px;top:9px;background:none;border:0;font-size:1.8rem;width:40px;height:40px;cursor:pointer;color:var(--muted)}dialog .privacy-small{font-size:.8rem!important;border-top:1px solid var(--line);padding-top:20px}

/* Restrained motion and clear interaction states. */
.button .button-label-full,.button .button-label-short{font-size:inherit}
.button-label-short{display:none}
.site-header nav a{position:relative;padding-block:5px;transition:color .2s ease}
.site-header nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--blue);transform:scaleX(0);transform-origin:left;transition:transform .24s ease}
.site-header nav a:focus-visible::after{transform:scaleX(1)}
.button{transition:background .22s ease,transform .22s ease,box-shadow .22s ease}
.button>span[aria-hidden="true"]:not(.button-label-short),.text-link>span{transition:transform .22s ease}
.text-link>span{display:inline-block}
.brand,.footer-brand{transition:filter .25s ease}
.hero-photo{box-shadow:0 18px 45px #1d3e5c0c;transition:box-shadow .4s ease}
.hero-photo img{transition:transform .65s cubic-bezier(.22,.61,.36,1)}
.dpe-card{border:1px solid #dcebf3;transition:box-shadow .3s ease,border-color .3s ease}
.service-item{transition:border-color .25s ease}
.service-item h3,.service-number{transition:color .25s ease}
.faq-list summary{transition:color .2s ease}
.faq-list summary>span,.diagnostic-picker summary>span:last-child{transition:transform .22s ease}
.form-grid input,.form-grid select,.form-grid textarea{transition:border-color .2s ease,box-shadow .2s ease}
.form-grid input:focus,.form-grid select:focus,.form-grid textarea:focus{border-color:var(--blue);box-shadow:0 0 0 3px #397fa612}
.radio-choice{transition:background .2s ease,border-color .2s ease}
@media(hover:hover) and (pointer:fine){
  .site-header nav a:hover::after{transform:scaleX(1)}
  .brand:hover,.footer-brand:hover{filter:brightness(1.08)}
  .button:hover{box-shadow:0 6px 16px #1d3e5c20}
  .button:hover>span[aria-hidden="true"]:not(.button-label-short),.text-link:hover>span{transform:translate(2px,-2px)}
  .hero-photo:hover{box-shadow:0 20px 45px #1d3e5c16}
  .hero-photo:hover img{transform:scale(1.025)}
  .dpe-card:hover{border-color:#b4d4e5;box-shadow:0 12px 28px #1d3e5c0c}
  .service-item:hover{border-color:var(--blue)}
  .service-item:hover h3,.faq-list summary:hover{color:var(--blue)}
  .service-item:hover .service-number{color:var(--navy)}
}
@media(prefers-reduced-motion:no-preference){
  .hero-copy>.eyebrow,.hero-copy>h1,.hero-intro,.hero-actions,.hero-note,.hero-visual{animation:arrive .65s cubic-bezier(.22,.61,.36,1) both}
  .hero-copy>h1{animation-delay:.06s}.hero-intro{animation-delay:.12s}.hero-actions{animation-delay:.18s}.hero-note{animation-delay:.24s}.hero-visual{animation-delay:.12s;animation-duration:.8s}
  .faq-list details[open]>p,dialog[open]{animation:arrive .22s ease both}
}
@keyframes arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:reduce){
  .hero-photo:hover img,.button:hover,.button:hover>span[aria-hidden="true"]:not(.button-label-short),.text-link:hover>span{transform:none}
}
@media(min-width:1600px){.hero{padding-top:55px;padding-bottom:75px}}
@media(max-width:1100px){.site-header nav{gap:20px;font-size:.85rem}.site-header{gap:20px}.hero{gap:5%;min-height:540px}.hero-actions{gap:16px}.hero-photo{height:450px}.area-stamp{left:-15px;padding:16px 20px}.diagnostics-layout{gap:30px;grid-template-columns:.95fr 1.6fr}.dpe-card{padding:26px}.service-grid{gap:0 25px}.approach-inner{gap:8%}.quote-inner{gap:7%;grid-template-columns:.8fr 1.35fr}.quote-form-wrap{padding:28px}.sector-section{gap:8%}.sector-mark{padding:35px}.section{padding-block:76px}}
@media(max-width:900px){.site-header nav{gap:14px;font-size:.8rem}.brand{width:158px;flex-basis:158px}.button-small{font-size:.8rem;gap:13px;padding:11px 14px}.hero{grid-template-columns:1fr 1fr}.hero-photo{height:430px}.hero-actions .button{padding:14px 18px;font-size:.95rem}.hero-actions .text-link{font-size:.95rem}.trust-strip{font-size:.79rem;gap:15px}.section-heading{gap:7%}.diagnostics-layout{grid-template-columns:1fr 1.5fr;gap:26px}.service-grid{grid-template-columns:1fr}.service-item{padding:17px 0}.service-item:nth-child(2){padding-top:17px}.dpe-card{align-self:start;position:sticky;top:20px}.dpe-card h3{font-size:1.4rem}.approach-inner{gap:7%}.sector-section{gap:6%}.sector-mark{padding:29px}.distance-number{font-size:7rem}.quote-inner{grid-template-columns:1fr;gap:32px}.quote-intro{display:grid;grid-template-columns:1fr 1fr;gap:0 30px;align-items:start}.quote-intro .eyebrow{grid-column:1/-1}.quote-intro h2{grid-column:1}.quote-intro>p:not(.eyebrow){grid-column:1;margin-top:0}.contact-block{grid-column:2;grid-row:2;margin-top:0}.quote-note{grid-column:2;grid-row:3;margin-top:0}.quote-form-wrap{padding:35px}.footer-main{grid-template-columns:.6fr 1.2fr 1.2fr;gap:25px}.footer-main>div{font-size:.8rem}}
@media(max-width:760px){html{scroll-padding-top:20px}.site-header{min-height:90px;padding:8px 6%;gap:12px;flex-wrap:wrap;position:relative}.brand{width:142px;flex-basis:142px}.site-header nav{display:none;order:4;flex-basis:100%;flex-direction:column;gap:0;border-top:1px solid var(--line);font-size:1rem;padding:10px 0}.site-header nav.is-open{display:flex}.site-header nav a{padding:11px 0}.menu-toggle{display:block;margin-left:auto;border:0;background:none;font-size:.875rem;padding:10px 6px;cursor:pointer}.button-small{font-size:.78rem;padding:10px 12px;gap:8px}.button-small .button-arrow{display:none}.button-small .button-label-full{display:none}.button-small .button-label-short{display:inline}.hero{grid-template-columns:1fr;padding:35px 6% 30px;gap:32px;min-height:0}.eyebrow{font-size:.75rem;margin-bottom:20px}h1{font-size:clamp(2.55rem,9.5vw,3.8rem);max-width:540px;margin-bottom:22px;letter-spacing:-.045em}.hero-intro{font-size:1rem;max-width:530px}.hero-actions{margin-top:26px;gap:23px}.hero-actions .button{font-size:.95rem;padding:15px 19px}.hero-note{margin-top:22px;margin-bottom:0}.hero-photo{height:370px;border-top-left-radius:70px}.hero-visual{padding-bottom:23px}.area-stamp{left:-10px;bottom:48px}.trust-strip{padding:22px 6%;display:grid;grid-template-columns:1fr 1fr;font-size:.875rem;gap:18px}.section{padding:60px 6%}h2{font-size:2.3rem}.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:30px}.section-heading>p{font-size:.95rem}.diagnostics-layout{grid-template-columns:1fr;gap:28px}.dpe-card{position:static;padding:28px}.dpe-card h3{font-size:1.5rem;max-width:370px}.dpe-card>p{max-width:520px}.energy-bars{width:75%;margin:10px 0 18px}.energy-bars span{height:21px;line-height:21px;font-size:.8rem}.service-grid{grid-template-columns:1fr 1fr;gap:0 24px}.service-item{padding:21px 0;gap:10px}.service-item:nth-child(2){padding-top:10px}.service-item h3{font-size:1.05rem}.service-item p{font-size:.9rem}.service-number{font-size:.7rem}.service-help{flex-direction:column;align-items:flex-start;gap:12px;margin-top:26px;font-size:.95rem}.approach-inner{padding:60px 6%;grid-template-columns:1fr;gap:45px}.approach-intro{max-width:550px}.steps article{padding:22px 0}.sector-section{grid-template-columns:1fr;gap:25px}.sector-mark{padding:32px}.distance-number{font-size:7rem;margin-top:10px}.sector-baseline{margin-top:22px;padding-top:19px}.faq-section{grid-template-columns:1fr;gap:10px;padding-top:50px}.faq-list summary{font-size:.95rem;padding-block:20px}.quote-inner{padding:55px 6%;gap:28px}.quote-intro{display:block}.quote-intro h2{font-size:2.75rem}.quote-intro>p:not(.eyebrow){max-width:500px}.contact-block{margin-top:26px;gap:5px}.contact-phone{font-size:1.6rem}.quote-note{margin-top:25px;padding-top:18px;max-width:none}.quote-form-wrap{padding:26px 22px}.form-grid{gap:18px 15px}.form-grid>label{font-size:.81rem}.form-grid input,.form-grid select,.form-grid textarea{padding:11px 10px}.form-grid input::placeholder{font-size:.83rem}.form-intro{font-size:.75rem}.form-privacy,.email-explainer{font-size:.8rem}.checkbox-grid{grid-template-columns:repeat(3,1fr);gap:15px 12px}.checkbox-grid label{font-size:.8rem}.site-footer{padding:35px 6% 25px}.footer-main{grid-template-columns:1fr;gap:22px}.footer-main>div{font-size:.9rem}.footer-bottom{flex-direction:column;gap:12px}.footer-bottom button{align-self:flex-start}dialog{padding:38px 25px 25px}}
@media(max-width:400px){.site-header{gap:8px;padding-inline:5%}.brand{width:126px;flex-basis:126px}.button-small{font-size:.75rem;padding:10px}.menu-toggle{font-size:.8rem}.hero-photo{height:310px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:.875rem}.hero-actions .button{font-size:.875rem;gap:14px}.trust-strip{gap:16px 10px;font-size:.78rem}.service-grid{grid-template-columns:1fr}.service-item:nth-child(2){padding-top:21px}.service-item{gap:16px}.quote-form-wrap{padding:25px 18px}.form-grid{grid-template-columns:1fr}.checkbox-grid{grid-template-columns:1fr 1fr}.form-grid>label{font-size:.875rem}.contact-email{font-size:.875rem}.radio-choice{padding:11px}.sector-mark{padding:28px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Direct quote submission: preserve the established form layout. */
.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;pointer-events:none}
.quote-submit:disabled{opacity:.7;cursor:wait;transform:none}
.quote-status{font-size:.875rem;line-height:1.6;margin:18px 0 0;color:var(--muted);overflow-wrap:anywhere}
.quote-status:empty{display:none}
.quote-status[data-state="error"]{color:#923b2b;border-left:3px solid #b35643;padding:10px 12px;background:#fff6f2}
.quote-fallback{display:flex;align-items:center;flex-wrap:wrap;gap:12px 18px;margin-top:16px;font-size:.875rem}
.quote-fallback .secondary-button{flex-basis:100%}
.quote-result .secondary-button{margin-top:15px}

.property-address{margin-top:22px}
.address-help{font-size:.875rem;color:var(--muted);margin:10px 0 0;line-height:1.5}

/* Legal pages reuse the website typography and colors. */
.footer-links{display:flex;flex-wrap:wrap;align-items:center;gap:12px 24px;font-size:.875rem}.footer-links a{text-underline-offset:4px}.footer-links .inline-button{font-size:inherit}
.legal-header{min-height:128px}.legal-header .brand{flex-basis:160px;width:160px}.legal-content{max-width:900px;margin:0 auto;padding:64px 32px 80px;overflow-wrap:anywhere}.legal-content h1{font-size:clamp(2.1rem,5vw,3.4rem);line-height:1.16;letter-spacing:-.04em}.legal-date{color:var(--muted);font-size:.875rem;margin:16px 0 32px}.legal-content h2{font-size:1.55rem;line-height:1.3;letter-spacing:-.025em;margin:38px 0 16px;scroll-margin-top:30px}.legal-content p{margin:0 0 18px}.legal-content a{text-underline-offset:4px}.legal-draft{background:var(--sky);border-left:3px solid var(--blue);padding:18px 22px;margin-bottom:34px;line-height:1.6}.legal-draft p{margin:6px 0 0;font-size:.9375rem}.legal-facts{margin:20px 0 24px}.legal-facts>div{display:grid;grid-template-columns:185px 1fr;gap:20px;padding:13px 0;border-bottom:1px solid var(--line)}.legal-facts dt{font-weight:650}.legal-facts dd{margin:0;min-width:0}.legal-toc{display:flex;gap:10px 22px;flex-wrap:wrap;border-block:1px solid var(--line);padding:18px 0;margin:28px 0;font-size:.9375rem}.withdrawal-form{border-top:1px solid var(--line);margin-top:42px;padding-top:8px}.writing-line{border-bottom:1px dotted var(--muted);height:20px;max-width:650px}.legal-footer{display:flex;justify-content:space-between;gap:24px;align-items:center}.legal-footer p{margin:0;font-size:.875rem}
@media(max-width:640px){.legal-header{gap:16px;flex-wrap:wrap;padding:14px 6%}.legal-header .brand{width:130px;flex-basis:130px}.legal-header>.text-link{font-size:.875rem}.legal-header>.button{width:100%}.legal-content{padding:38px 6% 55px}.legal-facts>div{grid-template-columns:1fr;gap:4px}.legal-content h2{font-size:1.35rem}.legal-draft{padding:16px}.legal-footer{align-items:flex-start;flex-direction:column}.footer-links{gap:12px 20px}}
@media print{.legal-page .site-header,.legal-page .site-footer,.legal-page .skip-link,.legal-page .legal-toc{display:none}.legal-content{max-width:none;padding:0;font-size:10pt;line-height:1.45;color:#000}.legal-content h1{font-size:22pt}.legal-content h2{font-size:14pt;break-after:avoid}.legal-content p{orphans:3;widows:3}.legal-content a{color:#000}.legal-facts>div{break-inside:avoid}.withdrawal-form{break-before:page;border:0}.legal-draft{border:1px solid #777;background:#fff}}
