@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Montserrat:wght@600;700;800&display=swap');
:root{--ink:#17202a;--muted:#66717c;--blue:#173d63;--red:#d44a3e;--pale:#f3f5f7;--line:#e5e9ed}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}.site-header{height:auto;min-height:82px;padding:16px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;gap:24px;border-bottom:1px solid var(--line);background:#fff}.brand{display:flex;align-items:center;gap:10px;font:800 25px Montserrat,sans-serif;letter-spacing:-1px}.brand-mark{display:grid;place-items:center;width:43px;height:43px;background:var(--blue);color:white;font-size:15px;letter-spacing:0}.accent{color:var(--red)}.brand small{display:block;font:600 9px 'DM Sans',sans-serif;letter-spacing:1.2px;color:var(--muted)}nav{display:flex;align-items:center;gap:28px;font-size:14px;font-weight:600}nav a:hover{color:var(--red)}.nav-cta{padding:10px 18px;background:var(--blue);color:white}.nav-cta:hover{color:white!important;background:var(--red)}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:510px;background:var(--pale)}.hero-copy{padding:80px 7vw;align-self:center}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;color:var(--red)}h1,h2,h3{font-family:Montserrat,Arial,sans-serif;line-height:1.18;letter-spacing:-1px}h1{font-size:clamp(38px,5vw,62px);margin:16px 0}h1 span{color:var(--blue)}.hero-copy>p:not(.eyebrow){max-width:480px;color:var(--muted);font-size:17px}.hero-photo{min-height:420px}.hero-photo img{width:100%;height:100%;object-fit:cover;display:block}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.button{display:inline-block;padding:13px 21px;background:var(--red);color:white;font-weight:700;font-size:14px;border:1px solid var(--red)}.button:hover{background:#b83a31}.button-outline{background:transparent;color:var(--blue);border-color:var(--blue)}.button-outline:hover{background:var(--blue);color:white}.intro{text-align:center;padding:75px 24px 38px;max-width:780px;margin:auto}.intro h2,.section-heading h2{font-size:clamp(28px,3vw,40px);margin:10px 0}.intro>p:last-child{color:var(--muted)}.services{padding:28px 7vw 85px;display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.services article{padding:28px;background:#fff;border:1px solid var(--line)}.service-icon{font:700 13px Montserrat;color:var(--red)}.services h3{font-size:19px}.services p{color:var(--muted);font-size:14px}.gallery-section{padding:75px 7vw;background:var(--pale)}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:25px;margin-bottom:28px}.section-heading>p{max-width:320px;color:var(--muted);font-size:14px}.gallery{display:grid;grid-template-columns:1.35fr 1fr;grid-template-rows:230px 230px;gap:16px}.gallery figure{margin:0;position:relative;overflow:hidden;background:#dfe4e8}.gallery figure img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .4s}.gallery figure:hover img{transform:scale(1.035)}.gallery-large{grid-row:span 2}.gallery figcaption{position:absolute;bottom:0;left:0;right:0;padding:13px 18px;color:white;font-weight:700;background:linear-gradient(transparent,rgba(0,0,0,.65))}.contact-band{padding:45px 7vw;background:var(--blue);color:white;display:flex;align-items:center;justify-content:space-between;gap:25px}.contact-band .eyebrow{color:#ffaaa2}.contact-band h2{font-size:clamp(23px,3vw,34px);margin:7px 0}.contact-band p{margin:5px 0;color:#d8e1e9}.button-light{background:white;border-color:white;color:var(--blue);white-space:nowrap}.button-light:hover{background:#e9eef2;color:var(--blue)}footer{padding:35px 7vw;background:#111a22;color:#d8e0e6;text-align:center;font-size:13px}footer p{margin:5px}.footer-brand{font:800 25px Montserrat;color:white}footer small{display:block;margin-top:20px;color:#9eabb6}.subpage{padding:75px 8vw;min-height:65vh}.subpage h1{font-size:48px}.subpage>p{color:var(--muted)}.note{margin-top:35px;padding:18px;background:var(--pale);max-width:650px;font-size:14px}.contact-details{display:grid;grid-template-columns:1fr 1.3fr;gap:35px;margin-top:35px;max-width:1000px}.contact-details h2{font-size:24px}.contact-details p{color:var(--muted)}.contact-details iframe{width:100%;height:330px;border:0}
@media(max-width:760px){.site-header{align-items:flex-start;flex-direction:column;padding:15px 22px}nav{width:100%;gap:15px;flex-wrap:wrap;font-size:13px}.hero{grid-template-columns:1fr}.hero-copy{padding:55px 25px}.hero-photo{min-height:270px}.services{grid-template-columns:1fr;padding:20px 24px 55px}.gallery-section{padding:55px 24px}.section-heading{display:block}.gallery{grid-template-columns:1fr;grid-template-rows:240px 200px 200px}.gallery-large{grid-row:auto}.contact-band{align-items:flex-start;flex-direction:column;padding:38px 24px}.contact-details{grid-template-columns:1fr}.subpage{padding:55px 24px}}
