:root{--blue:#064fae;--ink:#15191d;--muted:#58616a;--paper:#fff;--line:#dbe0e5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:white;font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #75aef8;outline-offset:5px}header{height:100px;padding:0 5%;display:flex;align-items:center;justify-content:space-between;background:white}.brand{display:flex;align-items:center;gap:15px;line-height:1.2;font-weight:700;letter-spacing:2px;font-size:19px}.brand img{width:64px;height:64px}.brand-small{display:block;font-size:13px;letter-spacing:5px;margin-top:5px}nav{display:flex;gap:32px;font-size:14px}.header-call{font-size:14px;font-weight:bold;border-left:1px solid var(--line);padding-left:30px}.header-call span{display:block;font-weight:normal;font-size:14px}.hero{position:relative;min-height:680px;height:calc(100svh - 100px);max-height:950px;background:#102233;color:white}.hero>img{width:100%;height:100%;position:absolute;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(4,14,26,.75),rgba(4,14,26,.12)),linear-gradient(0deg,rgba(4,14,26,.55),transparent 45%)}.hero-copy{position:absolute;left:7%;top:21%;max-width:780px}.eyebrow{font-size:12px;letter-spacing:2.5px;font-weight:700;margin:0 0 22px}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.09;letter-spacing:-1.5px;margin:0}h1{font-size:clamp(44px,5.9vw,88px)}h2{font-size:clamp(36px,4vw,58px)}.hero-description{margin:25px 0 30px;font-size:17px;line-height:1.7}.actions{display:flex;gap:14px;flex-wrap:wrap}.button{display:inline-flex;padding:15px 23px;background:var(--blue);color:white;font-size:14px;font-weight:bold;align-items:center;justify-content:center;border:1px solid var(--blue)}.button:hover{background:#073f89}.button.outline{background:transparent;border-color:#ffffff9c}.button.outline:hover{background:#ffffff22}.hero-bottom{position:absolute;bottom:35px;left:7%;right:7%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:1.5px}.hero-bottom a{border-bottom:1px solid white;padding-bottom:6px}.intro,.work,.services,.approach{padding:95px 7%}.intro>.eyebrow{color:var(--blue)}.intro>div{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.intro p:not(.eyebrow){color:var(--muted);max-width:540px;margin:8px 0}.work{background:#f3f5f7}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:45px;margin-bottom:44px}.section-heading>p{max-width:360px;color:var(--muted);margin:0}.section-heading .eyebrow{color:var(--blue)}figure{margin:0}.photo{display:block;width:100%;padding:0;border:0;cursor:zoom-in;background:#e4e8ec;overflow:hidden}.photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s}.photo:hover img{transform:scale(1.025)}.feature .photo{height:550px}.feature figcaption{display:flex;justify-content:space-between;font-size:12px;letter-spacing:1px;padding:18px 0 32px}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:30px 24px}.gallery .photo{height:310px}.gallery figcaption{font-size:14px;padding-top:12px}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line)}.service-grid article{padding:30px 28px 0 0}.service-grid article+article{padding-left:24px;border-left:1px solid var(--line)}.service-grid span{color:var(--blue);font-size:12px}h3{font-size:21px;line-height:1.35;font-weight:500;margin:20px 0 12px}.service-grid p{font-size:15px;color:var(--muted)}.approach{background:#13202c;color:white;display:grid;grid-template-columns:1fr 1fr;gap:100px}.approach .eyebrow{color:#8bb9f5}.approach>div>p:not(.eyebrow){color:#bdc9d4;max-width:470px}.approach ol{list-style:none;padding:0;margin:0}.approach li{display:flex;gap:28px;padding:24px 0;border-bottom:1px solid #ffffff25}.approach li>span{color:#8bb9f5;font-size:14px;padding-top:7px}.approach h3{margin:0 0 10px}.approach li p{color:#bdc9d4;font-size:15px;margin:0}.contact{padding:95px 7%;display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}.contact .eyebrow{color:var(--blue)}.contact-copy>p{color:var(--muted)}.phone{display:block;font-size:28px;color:var(--blue);margin:25px 0}.text-link{font-size:14px;border-bottom:1px solid var(--blue);color:var(--blue);padding-bottom:5px}.form-box{border:1px solid var(--line);padding:35px;background:#f7f9fb}.form-box h3{margin:0 0 10px;font-size:26px}.form-box>p{color:var(--muted);font-size:14px;margin-bottom:28px}.form-box iframe{width:100%;border:0;min-height:600px}footer{padding:35px 7%;border-top:1px solid var(--line);display:flex;align-items:center;gap:30px;font-size:12px}footer>span:first-child{font-weight:bold;letter-spacing:1px}footer>span:last-child{margin-left:auto;color:var(--muted)}footer p{color:var(--muted)}dialog{border:0;background:#10202c;color:white;padding:30px;max-width:94vw;max-height:94svh}dialog::backdrop{background:#000d}dialog img{max-width:85vw;max-height:76svh;object-fit:contain;display:block}dialog p{margin:12px 0 0}#close{position:absolute;right:5px;top:0;font-size:30px;line-height:1;background:none;border:0;color:white;cursor:pointer;padding:5px 10px}@media(max-width:950px){nav{gap:18px}.brand{font-size:15px}.brand-small{font-size:11px}.hero{min-height:620px}.intro>div,.approach,.contact{gap:40px}.service-grid{grid-template-columns:repeat(2,1fr)}.service-grid article:nth-child(3){border-left:0;padding-left:0}.gallery .photo{height:240px}.feature .photo{height:420px}}@media(max-width:650px){header{height:82px;padding:0 5%}.brand img{width:49px;height:49px}.brand{gap:10px;font-size:13px;letter-spacing:1px}.brand-small{letter-spacing:3px;font-size:10px}nav{display:none}.header-call{padding-left:14px;font-size:13px}.header-call span{font-size:12px}.hero{height:720px;min-height:0;max-height:none}.hero>img{object-position:53%}.hero-copy{top:20%;left:6%;right:6%}.hero-copy>.eyebrow{font-size:10px;letter-spacing:1.3px}h1{font-size:47px}.hero-description{font-size:15px}.hero-bottom{left:6%;right:6%;font-size:10px;gap:20px;align-items:end}.hero-bottom span{max-width:160px}.intro,.work,.services,.approach,.contact{padding:64px 6%}.intro>div,.approach,.contact{grid-template-columns:1fr;gap:32px}.section-heading{display:block}.section-heading>p{margin-top:22px}.feature .photo{height:280px}.feature figcaption{display:block;font-size:10px}.feature figcaption span{display:block}.gallery{grid-template-columns:repeat(2,1fr);gap:23px 14px}.gallery .photo{height:220px}.gallery figcaption{font-size:12px}.service-grid article{padding-right:14px}.service-grid article+article{padding-left:14px}.service-grid h3{font-size:19px}.service-grid p{font-size:14px}.form-box{padding:24px 15px}.contact{gap:45px}footer{flex-wrap:wrap;gap:12px 20px}footer p{margin:0}footer>span:last-child{margin-left:0;flex-basis:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.photo img{transition:none}}

.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.project-cover{height:390px}.project-info{padding:24px 0}.project-info .eyebrow{font-size:11px;color:var(--blue);margin-bottom:12px}.project-info h3{font-family:Georgia,serif;font-size:30px;margin:0 0 12px}.project-info>p:not(.eyebrow){color:var(--muted);font-size:15px;max-width:450px}.gallery-link{border:0;border-bottom:1px solid var(--blue);background:none;color:var(--blue);padding:8px 0;font-size:14px;cursor:pointer}.continued-care{border-top:1px solid var(--line);padding-top:25px;margin-top:30px;color:var(--muted);font-size:14px}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px}.gallery-controls button{border:1px solid #ffffff80;color:white;background:transparent;padding:10px 16px;cursor:pointer;font-size:14px}.gallery-controls p{font-size:14px;text-align:center}dialog img{max-height:72svh;width:85vw}@media(max-width:650px){.project-grid{grid-template-columns:1fr;gap:30px}.project-cover{height:300px}.project-info h3{font-size:27px}.gallery-controls{gap:8px}.gallery-controls button{padding:9px;font-size:12px}.gallery-controls p{font-size:12px}.hero-copy>.eyebrow{max-width:290px;line-height:1.8}.contact h2{font-size:40px}.service-grid h3{font-size:18px}}

.project-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.project-cover{height:350px}.project-info h3{font-size:27px}@media(max-width:950px){.project-cover{height:290px}.project-info h3{font-size:23px}}@media(max-width:650px){.project-grid{grid-template-columns:1fr}.project-cover{height:360px}.project-info h3{font-size:28px}}

.project-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}.project-cover{height:390px}.project-info h3{font-size:28px}@media(max-width:950px){.project-cover{height:330px}}@media(max-width:650px){.project-grid{grid-template-columns:1fr}.project-cover{height:360px}}

.project-grid>.project:last-child:nth-child(odd){grid-column:1 / -1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px;align-items:center}@media(max-width:650px){.project-grid>.project:last-child:nth-child(odd){display:block}}

[hidden]{display:none!important}dialog video{display:block;width:85vw;max-width:85vw;max-height:72svh;object-fit:contain;background:#000}

.team-clips{grid-column:1 / -1;display:flex;justify-content:center;gap:28px}.team-clips figure{width:240px;max-width:calc(50% - 14px);margin:0}.team-clips video{display:block;width:100%;aspect-ratio:9 / 16;background:#0d1720;object-fit:contain}.team-clips figcaption{padding-top:14px;color:#bdc9d4;font-size:14px;text-align:center}@media(max-width:650px){.team-clips{gap:16px}.team-clips figure{max-width:calc(50% - 8px)}.team-clips figcaption{font-size:12px}}

.social-links{padding:80px 7%;display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:center;background:#f4f5f5}.social-actions{display:flex;flex-direction:column;align-items:flex-start;gap:22px}.social-actions a{border-bottom:1px solid var(--blue);padding-bottom:8px;color:var(--blue);font-size:15px}@media(max-width:650px){.social-links{grid-template-columns:1fr;padding:60px 7%;gap:30px}}

.instagram-section{padding:80px 7%;overflow:hidden}.instagram-section>.section-heading{align-items:center}.instagram-section .text-link{font-size:14px;white-space:normal}@media(max-width:650px){.instagram-section{padding:60px 7%}.instagram-section>.section-heading{align-items:flex-start;gap:24px}}

.google-review-widget{width:100%;max-width:420px;min-width:0}.social-actions{min-width:0}

.hero-copy h1{font-size:clamp(40px,5.1vw,76px)}@media(max-width:650px){.hero-copy h1{font-size:clamp(36px,8vw,46px)}}

/* Keep the approved phone layout; group the introduction copy on desktop. */
@media(max-width:650px){.intro-copy{display:contents}}
@media(min-width:651px){
 .intro,.work,.services,.approach,.contact,.instagram-section,.social-links{padding-inline:max(7%,calc((100vw - 1440px)/2))}
 .intro>div{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,6vw,80px)}
 .intro-copy{display:block;max-width:640px;min-width:0}
 .intro .intro-copy>p{max-width:none;margin:0 0 22px}
 .intro .intro-copy>p:last-child{margin-bottom:0}
 .section-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(32px,5vw,64px);align-items:end}
 .section-heading>div,.section-heading>p{min-width:0}
 .section-heading>p{max-width:480px}
 .approach{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,6vw,80px)}
 .approach>div,.approach>ol{min-width:0}
 .approach>div>p:not(.eyebrow){max-width:580px}
 .contact{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(32px,6vw,80px)}
 .contact-copy,.form-box{min-width:0}
 .social-links{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(32px,5vw,64px)}
 .social-links>div,.service-grid>article,.project-grid>.project,.project-info{min-width:0}
 .instagram-section>.section-heading{align-items:center}
 .instagram-section>.section-heading>.text-link{justify-self:end;text-align:right}
}

/* Minimal project captions */
.project-info{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px 0}.project-info .eyebrow{margin:0}.project-info .gallery-link{margin:0;flex-shrink:0}

