:root{--navy:#172331;--deep:#101a24;--orange:#c55021;--orange-light:#f89a65;--ink:#202b34;--muted:#626c75;--line:#dce1e4;--soft:#f3f5f5;--white:#fff;--width:1220px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font:16px/1.65 Arial,Helvetica,sans-serif}img{max-width:100%;object-fit:cover;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{border-radius:0}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.08;letter-spacing:-.045em}h2{font-size:clamp(2.3rem,4.4vw,4rem);font-weight:600}h2 em{font-weight:400;font-style:normal;color:var(--muted)}h3{font-size:1.7rem;font-weight:600}p+p{margin-top:20px}ul{padding:0;list-style:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--orange);outline-offset:5px}input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--orange);outline-offset:2px}.wrap{width:min(var(--width),calc(100% - 80px));margin:auto}.section{padding:100px 0}.kicker{font-size:13px;font-weight:700;letter-spacing:.15em;text-transform:uppercase;color:var(--orange);margin-bottom:22px;display:flex;align-items:center;gap:12px}.kicker:before{content:"";height:2px;width:24px;background:currentColor}.kicker.light{color:var(--orange-light)}.lead{font-size:1.25rem;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:26px;min-height:56px;padding:14px 24px;background:var(--orange);color:#fff;border:1px solid var(--orange);font-size:14px;font-weight:700;transition:background .2s,transform .2s}.button:hover{background:#a94119;transform:translateY(-2px)}.button span{font-size:23px;line-height:1}.button.small{min-height:46px;padding:10px 17px;font-size:13px}.text-link{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid currentColor;padding:9px 0;font-size:14px;font-weight:700}.text-link span{font-size:22px;transition:transform .2s}.text-link:hover span{transform:translate(3px,-3px)}.skip-link{position:fixed;top:-80px;left:20px;z-index:100;background:#fff;padding:14px}.skip-link:focus{top:10px}.topbar{background:var(--navy);color:#dde3e8;font-size:12px}.topbar .wrap{display:flex;align-items:center;gap:28px;min-height:36px}.topbar span{margin-right:auto}.site-header{background:#fffffff5;position:sticky;top:0;z-index:30;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-inner{min-height:88px;display:flex;align-items:center;gap:25px;justify-content:space-between}.brand{display:flex;align-items:center;gap:10px;flex-shrink:0}.brand>span{font-size:24px;font-weight:800;letter-spacing:.045em;line-height:1.1}.brand strong{display:block;font-size:11px;letter-spacing:.25em;margin-top:4px}.desktop-nav{display:flex;gap:25px;align-items:center}.desktop-nav a{font-size:13px;font-weight:700;padding:15px 0}.desktop-nav a:hover{color:var(--orange)}.mobile-menu{display:none;position:relative}.mobile-menu summary{list-style:none;font-weight:700;display:flex;gap:14px;align-items:center}.mobile-menu summary::-webkit-details-marker{display:none}.mobile-menu nav{position:absolute;right:0;top:48px;background:#fff;box-shadow:0 15px 50px #17233125;width:260px;padding:20px;display:grid}.mobile-menu nav a{padding:12px;border-bottom:1px solid var(--line)}.hero{position:relative;min-height:660px;height:min(760px,calc(100svh - 124px));color:#fff;background:var(--navy);display:flex;align-items:center;overflow:hidden}.slides,.hero-shade{position:absolute;top:0;right:0;bottom:0;left:0}.slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;transition:opacity 1.4s ease;object-position:center 55%}.slide.active{opacity:1;animation:drift 8s ease-out both}.hero.paused .slide{animation-play-state:paused}@keyframes drift{0%{transform:scale(1.08)}to{transform:scale(1.01)}}.hero-shade{background:linear-gradient(90deg,#0b1527b8,#0b152763 55%,#0b15271a),linear-gradient(0deg,#101a24a6,transparent 40%)}.hero-content{position:relative;z-index:2;padding:60px 0 130px}.hero h1{font-size:clamp(2.9rem,5.3vw,5rem);font-weight:600;line-height:1.16;max-width:1040px}.hero h1 em{font-style:normal;background:var(--orange);padding:0 .12em;box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero-description{margin-top:30px;font-size:18px;line-height:1.7;max-width:640px;text-shadow:0 1px 6px #0006}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:34px}.hero-bottom{position:absolute;left:0;right:0;bottom:30px;z-index:3;display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff4d;padding-top:20px;font-size:14px}.slider-controls{display:flex;align-items:center;gap:12px}.slider-controls button{min-width:44px;min-height:44px;border:1px solid #ffffff80;background:#17233170;color:#fff;padding:8px 12px;font-size:14px}.slider-controls button:hover{background:var(--orange)}.slide-count{padding:0 8px;color:#ffffffba;font-size:13px}.slide-count b{color:#fff}.assurance-strip{background:var(--navy);color:#fff}.assurance-strip .wrap{display:grid;grid-template-columns:repeat(3,1fr)}.assurance-strip p{margin:0;display:flex;gap:18px;align-items:center;padding:25px 15px;border-right:1px solid #ffffff26;font-size:14px}.assurance-strip p:first-child{padding-left:0}.assurance-strip p:last-child{border:0}.assurance-strip span{color:var(--orange-light);font-size:12px;letter-spacing:.08em}.intro-layout{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:start}.intro-copy>p:not(.lead){color:var(--muted)}.intro-copy .text-link{margin-top:20px}.company-images{margin-top:60px;display:grid;grid-template-columns:1.6fr 1fr}.wide-photo{position:relative;min-height:430px;overflow:hidden}.wide-photo img{width:100%;height:100%;position:absolute;top:0;right:0;bottom:0;left:0}.wide-photo figcaption{position:absolute;bottom:24px;left:26px;background:#fff;padding:10px 17px;font-size:14px}.company-note{padding:52px;background:var(--soft);display:flex;flex-direction:column;align-items:start}.company-note h3{font-size:clamp(2rem,3.3vw,3.3rem);line-height:1.15}.company-note>p:not(.kicker){margin-top:24px;color:var(--muted)}.company-note .text-link{margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:8%;margin-bottom:50px}.section-heading>p{max-width:430px;color:var(--muted);flex:1}.section-heading>div{flex:1}.services-section{background:var(--soft)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.service-card{background:#fff}.service-image{position:relative;aspect-ratio:1.65;overflow:hidden}.service-image img{width:100%;height:100%;transition:transform .9s ease}.service-card:hover .service-image img{transform:scale(1.045)}.image-number{position:absolute;bottom:0;left:0;background:var(--navy);color:#fff;font-size:12px;letter-spacing:.12em;padding:13px 22px}.service-body{padding:34px}.service-body h3{font-size:2.1rem}.service-body>p{margin-top:17px;color:var(--muted);min-height:54px}.service-body ul{border-top:1px solid var(--line);padding-top:18px;margin:25px 0 18px}.service-body li{padding:6px 0;display:flex;gap:12px}.service-body li:before{content:"—";color:var(--orange)}.service-body .text-link{width:100%;justify-content:space-between}.projects-section{padding-bottom:0}.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.project-tile{position:relative;min-height:520px;color:#fff;overflow:hidden;display:flex;align-items:end}.project-tile>img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;transition:transform .8s ease}.project-tile:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(transparent 15%,#101a24d9)}.project-tile>div{position:relative;z-index:2;padding:36px;width:100%}.project-tile p{font-size:12px;letter-spacing:.14em;margin-bottom:20px}.project-tile h3{font-size:clamp(1.8rem,2.9vw,2.8rem);line-height:1.15}.project-tile span{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #ffffff50;padding-top:22px;margin-top:26px;font-size:14px;gap:12px}.project-tile b{font-size:24px;font-weight:400}.project-tile:hover img{transform:scale(1.055)}.commitments{background:var(--navy);color:#fff}.commitments-layout{display:grid;grid-template-columns:1.1fr .9fr;gap:12%;align-items:center}.commitments h2 em{color:#aebbc7}.commitments .lead{margin-top:30px;color:#c4cdd4;max-width:540px}.commitment-lines{margin-top:35px}.commitment-lines p{margin:0;border-bottom:1px solid #ffffff26;padding:18px 0;display:flex;gap:20px;font-size:16px}.commitment-lines span{font-size:12px;color:var(--orange-light)}.insurance-card{position:relative;background:#fff;color:var(--ink);padding:46px;border-top:5px solid var(--orange)}.insurance-symbol{position:absolute;right:35px;top:34px;font-size:30px;color:var(--orange)}.insurance-card h3{font-size:3.3rem}.insurance-card>p:not(.kicker){margin-top:25px;color:var(--muted)}.insurance-tags{display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.insurance-tags span{font-size:13px;background:var(--soft);padding:5px 11px}.process-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid var(--line)}.process-grid article{padding:30px 26px 0 0;margin-right:26px;border-right:1px solid var(--line)}.process-grid article:last-child{border:0;margin-right:0;padding-right:0}.process-grid article>span{color:var(--orange);font-size:14px;font-weight:700}.process-grid h3{font-size:1.4rem;line-height:1.25;margin:35px 0 18px}.process-grid p{color:var(--muted)}.region-section{display:grid;grid-template-columns:1fr 1fr;background:var(--soft)}.region-photo{position:relative;min-height:580px}.region-photo img{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%}.region-copy{padding:65px clamp(28px,5vw,85px)}.region-copy>p:not(.kicker){margin-top:25px;color:var(--muted)}.departments{display:grid;grid-template-columns:1fr 1fr;gap:10px 20px;margin:30px 0 0}.departments li{font-size:14px;display:flex;gap:12px;align-items:center;border-bottom:1px solid var(--line);padding:9px 0}.departments b{color:var(--orange);font-size:12px}.faq-layout{display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.faq-list details{border-top:1px solid var(--line);padding:22px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{font-weight:700;font-size:16px;display:flex;justify-content:space-between;gap:18px;list-style:none;line-height:1.5}.faq-list summary::-webkit-details-marker{display:none}.faq-list summary:after{content:"+";color:var(--orange);font-size:24px;line-height:1}.faq-list details[open] summary:after{content:"−"}.faq-list details p{color:var(--muted);margin-top:18px}.faq-list details a{text-decoration:underline}.contact-section{background:var(--navy);color:#fff}.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:10%}.contact-copy h2 em{color:var(--orange-light)}.contact-copy>p:not(.kicker){margin-top:25px;color:#c4cdd4}.contact-detail{display:block;padding:22px 0;border-bottom:1px solid #ffffff29}.contact-detail small{display:block;color:#b6c1cb;font-size:13px;margin-bottom:5px}.contact-detail strong{font-weight:500;font-size:clamp(1.15rem,2.2vw,1.8rem);overflow-wrap:anywhere}.contact-copy .company-id{font-size:14px;line-height:1.8}.quote-form{padding:36px;background:#fff;color:var(--ink)}.quote-form>p{color:var(--muted);font-size:14px;margin:14px 0 24px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.quote-form label{font-size:14px;font-weight:700;display:block;margin:0 0 20px}.quote-form input,.quote-form select,.quote-form textarea{display:block;width:100%;border:1px solid #c9d1d7;background:var(--soft);padding:12px;color:var(--ink);font-size:16px;margin-top:8px;border-radius:0;min-width:0}.quote-form textarea{resize:vertical}.quote-form .button{width:100%}.quote-form .form-note{font-size:13px;margin:17px 0 0}.quote-form .form-status{font-size:14px;color:var(--orange);margin:15px 0 0}.quote-form noscript a{text-decoration:underline}footer{background:var(--deep);color:#b7c0c9;padding:65px 0 0}.footer-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1.3fr;gap:40px}.footer-grid>div{display:flex;align-items:start;flex-direction:column;gap:10px;font-size:14px}.footer-brand{color:#fff}.footer-grid h3{font-size:13px;letter-spacing:.09em;text-transform:uppercase;color:#fff;margin-bottom:12px}.footer-grid p{margin-top:16px}.footer-grid a{overflow-wrap:anywhere}.footer-grid a:hover{color:#fff}.footer-bottom{margin-top:50px;border-top:1px solid #ffffff20;display:flex;gap:20px;justify-content:space-between;padding:25px 0;font-size:12px}.mobile-contact{display:none}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal-ready.is-visible{opacity:1;transform:none}@media(min-width:1500px){.hero h1{font-size:5.5rem}.hero{height:760px}}@media(max-width:1100px){.desktop-nav{gap:16px}.desktop-nav a{font-size:12px}.header-cta{display:none}.commitments-layout,.contact-layout{gap:6%}.company-note{padding:35px}.project-tile>div{padding:25px}.region-copy{padding:45px 30px}.footer-grid{gap:25px}.insurance-card{padding:32px}}@media(max-width:800px){.wrap{width:calc(100% - 40px)}.section{padding:70px 0}.topbar a:first-of-type{display:none}.header-inner{min-height:76px}.desktop-nav{display:none}.mobile-menu{display:block}.hero{height:auto;min-height:700px}.hero h1{font-size:clamp(2.6rem,7vw,4.2rem)}.hero-content{padding:85px 0 170px}.hero-bottom{bottom:22px;gap:18px;align-items:start;flex-direction:column}.hero-description{font-size:16px}.assurance-strip p{font-size:12px;gap:10px;padding:20px 12px}.intro-layout,.commitments-layout,.contact-layout,.faq-layout{grid-template-columns:1fr;gap:38px}.section-heading{align-items:start;gap:24px;flex-direction:column}.section-heading>p{max-width:600px}.company-images{grid-template-columns:1.25fr 1fr}.wide-photo{min-height:440px}.company-note h3{font-size:2.2rem}.service-body{padding:24px}.service-body h3{font-size:1.8rem}.service-body>p{min-height:0}.project-grid{grid-template-columns:1fr}.project-tile{min-height:420px}.project-tile h3{font-size:2.7rem}.project-tile>div{padding:35px}.project-tile span{max-width:450px}.projects-section{padding-bottom:0}.commitments-layout{gap:45px}.insurance-card{max-width:640px}.process-grid{grid-template-columns:1fr 1fr;gap:30px 0}.process-grid article:nth-child(2){border:0}.region-section{grid-template-columns:1fr}.region-photo{min-height:350px}.region-copy{padding:50px 30px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px}.footer-bottom{flex-wrap:wrap}.quote-form{padding:30px}}@media(max-width:540px){.wrap{width:calc(100% - 36px)}.topbar{font-size:11px}.topbar .wrap{gap:10px}.brand>span{font-size:21px}.brand img{width:40px;height:40px}.brand strong{font-size:10px}.hero{min-height:750px}.hero-content{padding:60px 0 185px}.hero h1{font-size:clamp(2.2rem,9.1vw,3.3rem);line-height:1.23}.hero h1 em{padding:0 .06em}.hero .kicker{font-size:11px}.hero-actions{flex-direction:column;align-items:start;gap:16px}.hero-actions .button{width:100%;justify-content:space-between}.hero-bottom>span{font-size:12px}.slider-controls{gap:8px}.hero-shade{background:linear-gradient(90deg,#101a24bc,#101a2465),linear-gradient(0deg,#101a24b3,transparent)}.assurance-strip .wrap{grid-template-columns:1fr}.assurance-strip p,.assurance-strip p:first-child{border-right:0;border-bottom:1px solid #ffffff26;padding:13px 0;font-size:14px}.section{padding:58px 0}.company-images{grid-template-columns:1fr;margin-top:35px}.wide-photo{min-height:340px}.company-note{padding:30px}.service-grid{grid-template-columns:1fr;gap:24px}.service-image{aspect-ratio:1.5}.service-body{padding:25px}.project-tile{min-height:410px}.projects-section{padding-bottom:0}.process-grid{grid-template-columns:1fr}.process-grid article{border-right:0;margin:0;padding:24px 0;border-bottom:1px solid var(--line)}.process-grid article:nth-child(2){border-bottom:1px solid var(--line)}.process-grid h3{margin-top:18px}.process-grid h3 br{display:none}.process-grid{gap:0}.insurance-card h3{font-size:2.8rem}.departments{grid-template-columns:1fr}.region-photo{min-height:300px}.region-copy{padding:40px 22px}.form-row{grid-template-columns:1fr;gap:0}.quote-form{padding:25px}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-grid>div:first-child,.footer-grid>div:last-child{grid-column:1/-1}.footer-bottom{display:grid;gap:10px;padding-bottom:85px}.mobile-contact{position:fixed;bottom:0;left:0;right:0;z-index:40;display:grid;grid-template-columns:1fr 1.5fr;padding-bottom:env(safe-area-inset-bottom);background:var(--orange);box-shadow:0 -4px 24px #17233126}.mobile-contact a{padding:16px 12px;color:#fff;text-align:center;font-size:14px;font-weight:700}.mobile-contact a:first-child{background:var(--navy)}html{scroll-padding-top:95px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.slide.active{transform:none}.reveal-ready{opacity:1;transform:none}.project-tile:hover img,.service-card:hover img{transform:none}}.brand:has(.original-logo){background:#172331;padding:7px 12px;border-radius:3px;flex-shrink:0}.brand .original-logo{width:180px;height:56px;object-fit:contain}.footer-brand:has(.original-logo){padding:0}.legal-links{display:flex;flex-wrap:wrap;gap:14px 28px;border-top:1px solid #dce0e3;padding:24px 0;font-size:13px}.legal-page{background:#f6f4ef}.legal-layout{max-width:1000px;padding-top:55px;padding-bottom:85px}.page-hero{padding:40px 0 30px;border-bottom:1px solid #d9dbda}.page-hero h1{font-size:clamp(32px,5vw,58px);line-height:1.12;margin:0 0 20px;letter-spacing:-.035em}.page-hero p{max-width:720px;color:#59616b}.legal-content{max-width:780px;padding-top:25px;line-height:1.8;overflow-wrap:anywhere}.legal-content h2{font-size:24px;line-height:1.3;letter-spacing:-.02em;margin:36px 0 14px}.legal-content p{margin:0 0 18px}.legal-content ul{padding-left:24px;margin-bottom:20px}.legal-content a{text-decoration:underline;text-underline-offset:3px}.legal-updated{border-top:1px solid #d9dbda;padding-top:24px;margin-top:40px!important;color:#59616b;font-size:14px}@media(max-width:600px){.brand .original-logo{width:140px;height:44px}.legal-layout{padding-top:32px;padding-bottom:55px}.page-hero{padding-top:30px}.legal-links{flex-direction:column;gap:12px}}.turnstile{min-height:65px;margin:0 0 20px}.quote-success{display:flex;flex-direction:column;align-items:start;justify-content:center;border-top:5px solid var(--orange)}.quote-success-icon{display:grid;place-items:center;width:56px;height:56px;border-radius:50%;background:var(--orange);color:#fff;font-size:26px;margin-bottom:28px}.quote-success h3{font-size:clamp(1.8rem,3vw,2.6rem);line-height:1.15;outline:none}.quote-form.quote-success>p{font-size:16px;margin:20px 0 0;line-height:1.7}.quote-success strong{color:var(--ink);overflow-wrap:anywhere}.quote-success .text-link{margin-top:30px;background:none;border:0;border-bottom:1px solid currentColor;color:var(--ink);cursor:pointer;padding:9px 0}
