:root{--ink:#071b45;--ink-2:#173367;--teal:#85611d;--mint:#c59b43;--orange:#d1a64d;--paper:#f9f7f1;--line:#e5dfd2;--body:#4e576a;--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:105px}body{margin:0;color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.container{width:min(calc(100% - 48px),var(--max));margin:auto}.skip{position:absolute;z-index:99;top:-100px;left:16px;background:#fff;padding:10px}.skip:focus{top:10px}.topbar{background:var(--ink);color:#e7e0d1;font-size:13px;letter-spacing:.02em}.topbar-inner{height:34px;display:flex;align-items:center;justify-content:space-between}.topbar a{color:#fff;font-weight:700}.site-header{background:#fff;position:sticky;top:0;z-index:20;box-shadow:0 1px 0 var(--line)}.nav-row{height:96px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand img{width:192px;height:auto}.site-nav{display:flex;align-items:center;gap:34px;font-size:14px;font-weight:700}.site-nav>a:not(.nav-cta):hover,.footer-links a:hover{color:var(--teal)}.nav-cta{background:var(--ink);color:#fff;padding:12px 19px;border-radius:5px;white-space:nowrap}.nav-cta:hover{background:var(--teal)}.menu-toggle{display:none}.hero{position:relative;min-height:600px;background:linear-gradient(90deg,rgba(5,16,48,.7),rgba(5,16,48,.12) 70%),url('hero.webp') center center/cover no-repeat;color:#fff;overflow:hidden}.hero-inner{min-height:600px;display:flex;align-items:center}.hero-content{max-width:665px;padding:64px 0 92px}.eyebrow{font-size:12px;letter-spacing:.18em;font-weight:800;color:var(--teal)}.eyebrow.light{color:#f3d487}.hero h1{font-size:clamp(42px,5.3vw,72px);letter-spacing:-.055em;line-height:1.08;margin:20px 0 20px;font-weight:800}.hero h1 em,.about h2 em{font-style:normal;color:#e1bc69}.hero p{max-width:540px;color:#e6e4e1;font-size:18px;line-height:1.7}.hero-actions,.contact-actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:51px;padding:12px 23px;border-radius:5px;font-size:14px;font-weight:800;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px)}.button-accent{background:var(--orange);color:#071b45}.button-accent:hover{background:#edcb7e}.text-link{font-size:14px;font-weight:700;border-bottom:1px solid #c1a967;padding-bottom:5px}.hero-caption{position:absolute;bottom:22px;right:max(24px,calc((100vw - var(--max))/2));font-size:11px;letter-spacing:.16em;color:#e5dfd1}.hero-caption span{padding:0 10px;color:var(--orange)}.trust-strip{border-bottom:1px solid var(--line);background:#fff}.trust-inner{min-height:84px;display:flex;align-items:center;justify-content:space-between;gap:20px;color:#596477;font-size:14px}.trust-inner strong{color:var(--ink);font-size:15px}.trust-inner span:before{content:'+';color:var(--teal);font-size:20px;margin-right:12px;font-weight:300}.section{padding:105px 0}.services{background:var(--paper)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:44px;margin-bottom:40px}.section-heading h2,.about h2,.contact-section h2{font-size:clamp(34px,3.7vw,52px);letter-spacing:-.045em;line-height:1.13;margin:13px 0 0}.section-heading p{max-width:355px;color:var(--body);margin:0 0 6px}.service-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service-card{min-height:327px;background:#fff;border:1px solid var(--line);padding:28px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}.service-card:hover{transform:translateY(-3px);box-shadow:0 15px 30px rgba(4,37,47,.08)}.service-card.featured{background:var(--ink);border-color:var(--ink);color:#fff}.service-index{font-size:11px;font-weight:800;letter-spacing:.14em;color:var(--teal)}.featured .service-index{color:#e8c978}.service-symbol{font-size:34px;color:var(--orange);height:65px;line-height:1;margin-top:18px}.service-card h3{font-size:22px;letter-spacing:-.035em;margin:0 0 7px;line-height:1.2}.service-card p{color:var(--body);font-size:15px;margin:0 0 23px;line-height:1.6}.featured p{color:#e1dfdc}.service-card a{font-size:13px;font-weight:800;color:var(--teal);margin-top:auto}.featured a{color:#edd18d}.showcase{background:#fff}.section-heading.compact{margin-bottom:34px}.showcase-grid{display:grid;grid-template-columns:1.45fr .85fr .85fr;gap:16px}.showcase-tile{position:relative;height:365px;overflow:hidden;background:#172950}.showcase-tile:after{content:'';position:absolute;inset:45% 0 0;background:linear-gradient(transparent,rgba(5,16,48,.84))}.showcase-tile img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.showcase-tile:hover img{transform:scale(1.04)}.tile-print img{object-position:center 45%}.tile-overlay{position:absolute;bottom:25px;left:25px;right:20px;color:#fff;z-index:1}.tile-overlay span{font-weight:800;font-size:11px;letter-spacing:.15em;color:#efd289}.tile-overlay h3{font-size:24px;line-height:1.15;margin:8px 0 0;letter-spacing:-.04em}.about{background:#f3f0e8}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.about h2{margin-bottom:52px}.about h2 em{color:var(--teal)}.year-block{border-top:1px solid #d2c6ad;padding-top:23px;display:flex;align-items:end;gap:20px}.year-block strong{font-size:64px;letter-spacing:-.07em;line-height:1}.year-block span{padding-bottom:7px;color:var(--body);font-size:14px}.about-copy{padding-top:23px;color:var(--body)}.about-copy p{margin:0 0 20px}.about-copy .lead{font-size:21px;line-height:1.5;color:var(--ink);font-weight:600}.values{border-top:1px solid #d2c6ad;margin-top:34px;padding-top:20px}.values h3{font-size:14px;color:var(--ink);margin:0 0 13px}.values ul{display:flex;flex-wrap:wrap;gap:10px;margin:0;padding:0;list-style:none}.values li{padding:6px 12px;border:1px solid #d4c7aa;border-radius:3px;font-size:13px;color:var(--ink)}.contact-section{background:var(--ink);color:#fff;padding:91px 0}.contact-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:90px}.contact-section h2{margin:15px 0}.contact-section p{color:#e3dfd5;font-size:18px;margin:0}.button-outline{border:1px solid #b7a36e;color:#fff}.button-outline:hover{background:#173367}.contact-details{font-style:normal;display:grid;gap:20px;border-left:1px solid #40516e;padding-left:44px}.contact-details div{display:flex;flex-direction:column;align-items:start}.contact-details small{color:#e5c778;font-size:11px;font-weight:800;letter-spacing:.14em;margin-bottom:7px}.contact-details a,.contact-details span{font-size:16px;line-height:1.55}.contact-details a:hover{text-decoration:underline}.site-footer{padding:40px 0;background:#fff}.footer-inner{display:flex;justify-content:space-between;align-items:end;gap:28px}.footer-brand img{width:180px}.footer-inner p{font-size:13px;color:var(--body);margin:8px 0 0}.footer-links{display:flex;gap:23px;font-size:13px;font-weight:700}.copyright{font-size:12px;color:var(--body)}
.service-card.construction{grid-column:1/-1;min-height:285px;background:linear-gradient(90deg,rgba(5,16,48,.91) 0%,rgba(5,16,48,.76) 42%,rgba(5,16,48,.12) 100%),url('construction.webp') center/cover no-repeat;color:#fff}.construction .service-index,.construction a{color:#edd18d}.construction p{max-width:510px;color:#f1eee6}.construction .service-symbol{height:48px}.construction h3{font-size:26px}.service-card.construction:hover{box-shadow:0 15px 30px rgba(5,16,48,.14)}@media(max-width:900px){.site-nav{gap:17px}.nav-cta{padding:10px}.brand img{width:170px}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.showcase-grid{grid-template-columns:1.2fr .8fr}.tile-parts{grid-column:span 2;height:270px}.about-grid,.contact-grid{gap:42px}.contact-details{padding-left:30px}}
@media(max-width:680px){.container{width:min(calc(100% - 36px),var(--max))}.topbar-inner{font-size:11px}.topbar-inner span{max-width:210px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav-row{height:78px}.brand img{width:162px}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:5px;border:0;background:transparent;padding:10px;cursor:pointer}.menu-toggle span{display:block;width:25px;height:2px;background:var(--ink)}.site-nav{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;padding:18px;box-shadow:0 13px 20px rgba(0,0,0,.11);flex-direction:column;align-items:stretch;gap:0}.site-nav.open{display:flex}.site-nav a{padding:11px 8px}.site-nav .nav-cta{text-align:center;margin-top:9px}.hero,.hero-inner{min-height:610px}.hero{background-position:61% center}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(5,16,48,.75),rgba(5,16,48,.43))}.hero-inner{position:relative}.hero-content{padding:62px 0 83px}.hero h1{font-size:clamp(42px,10vw,58px)}.hero p{font-size:16px}.hero-caption{right:18px;bottom:16px;font-size:9px}.trust-inner{padding:19px 0;display:grid;grid-template-columns:1fr 1fr;gap:8px;font-size:12px}.trust-inner strong{grid-column:span 2}.trust-inner span:before{margin-right:6px}.section{padding:72px 0}.section-heading{display:block}.section-heading p{margin-top:17px}.section-heading h2,.about h2,.contact-section h2{font-size:37px}.service-grid{grid-template-columns:1fr;gap:12px}.service-card.construction{background-position:60% center;background-image:linear-gradient(90deg,rgba(5,16,48,.94),rgba(5,16,48,.68)),url('construction.webp')}.service-card{min-height:275px}.service-symbol{height:52px}.showcase-grid{grid-template-columns:1fr}.showcase-tile,.tile-parts{height:300px;grid-column:auto}.about-grid,.contact-grid{grid-template-columns:1fr;gap:34px}.about h2{margin-bottom:30px}.about-copy{padding-top:0}.year-block strong{font-size:53px}.contact-section{padding:73px 0}.contact-details{border-left:0;border-top:1px solid #40516e;padding:25px 0 0}.footer-inner{align-items:start;flex-direction:column}.footer-links{flex-wrap:wrap}.hero-actions,.contact-actions{gap:17px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition-duration:.01ms!important}}
