@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@300;400;500;600&family=Playfair+Display:ital,wght@0,500;1,500&display=swap');
:root{--navy:#0c2e4f;--blue:#245f92;--sky:#b9d7ed;--ice:#eaf4fa;--cream:#faf8f4;--ink:#17222b;--muted:#64727d;--line:#d9e1e5;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--sans);font-weight:300}a{color:inherit;text-decoration:none}p{line-height:1.75}h1,h2,h3,p{margin-top:0}h1,h2{font-family:var(--serif);font-weight:500}h1{font-size:clamp(3.4rem,8vw,7.8rem);line-height:.93;letter-spacing:-.04em}h1 em,h2 em{color:var(--blue);font-weight:500}h2{font-size:clamp(2.2rem,4vw,4.3rem);line-height:1.05}.site-header{height:94px;padding:0 5vw;display:flex;align-items:center;border-bottom:1px solid rgba(12,46,79,.12);gap:3rem;position:relative;z-index:10}.brand{margin-right:auto}.brand span{display:block;font-family:var(--serif);font-size:2rem;color:var(--navy);font-style:italic}.brand small{font-size:.56rem;letter-spacing:.25em}.site-header nav{display:flex;gap:2rem;font-size:.82rem}.site-header nav a:hover,.text-link:hover{color:var(--blue)}.header-cta{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;border-bottom:1px solid var(--navy);padding-bottom:5px}.menu{display:none;background:none;border:0}.hero{min-height:calc(100vh - 94px);display:grid;grid-template-columns:1.05fr .95fr}.hero-copy{padding:10vh 5vw 8vh 8vw;display:flex;flex-direction:column;justify-content:center}.hero-copy h1{margin:.15em 0 .28em}.lead{font-size:clamp(1rem,1.5vw,1.22rem);max-width:610px;color:#43525d}.eyebrow{text-transform:uppercase;letter-spacing:.2em;font-size:.68rem;font-weight:600;color:var(--blue)}.actions{display:flex;align-items:center;gap:2rem;margin-top:1.5rem}.btn{display:inline-block;border:0;background:var(--navy);color:white;padding:1rem 1.45rem;font:500 .73rem var(--sans);letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.btn:hover{background:var(--blue)}.text-link{font-size:.85rem;font-weight:500}.placeholder{background:linear-gradient(145deg,#dcecf6,#9fc7e3);display:flex;align-items:center;justify-content:center;text-align:center;color:rgba(12,46,79,.65);letter-spacing:.16em;font-size:.72rem;min-height:300px}.placeholder small{letter-spacing:.08em;opacity:.8}.section{padding:9rem max(6vw,calc((100vw - 1280px)/2))}.intro{text-align:center}.intro h2{max-width:850px;margin:0 auto 2rem}.wide-copy{max-width:720px;margin:auto;color:var(--muted)}.feature-grid{padding-top:2rem;display:grid;grid-template-columns:repeat(3,1fr);gap:5rem}.feature-grid article{border-top:1px solid var(--line);padding-top:2rem}.feature-grid .num,.services article>span{color:var(--blue);font-size:.7rem;letter-spacing:.15em}.feature-grid h3{font:500 1.7rem var(--serif);margin-top:2.2rem}.feature-grid p{color:var(--muted)}.cta{background:var(--navy);color:white;display:flex;align-items:center;justify-content:space-between}.cta h2{margin:0}.cta .eyebrow{color:var(--sky)}.btn-light{background:white;color:var(--navy)}.page-head{padding:10rem 8vw 6rem}.page-head h1{margin:.2em 0}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center;padding-top:2rem}.portrait{aspect-ratio:4/5}.story p{color:var(--muted)}.story .text-link{display:inline-block;margin-top:1rem}.quote{text-align:center;background:var(--ice)}blockquote{font:italic 500 clamp(2rem,5vw,4.5rem)/1.15 var(--serif);max-width:950px;margin:0 auto 1rem;color:var(--navy)}.services{padding-top:1rem}.services article{display:grid;grid-template-columns:90px 1fr;border-top:1px solid var(--line);padding:3rem 0;max-width:1000px;margin:auto}.services h2{font-size:2.5rem;margin-bottom:.5rem}.services p{color:var(--muted);max-width:650px}.center-call{text-align:center;background:var(--ice)}.center-call p{max-width:650px;margin:0 auto 2rem}.gallery{padding-top:1rem;display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:230px;gap:1.2rem}.gallery>div{min-height:0}.g1{grid-column:span 7;grid-row:span 2}.g2{grid-column:span 5}.g3{grid-column:span 5}.g4{grid-column:span 4;grid-row:span 2}.g5{grid-column:span 4;grid-row:span 2}.g6{grid-column:span 4;grid-row:span 2}.contact-layout{padding-top:1rem;display:grid;grid-template-columns:.8fr 1.2fr;gap:8vw}.contact-info h2{font-size:2.6rem}.contact-info>p{color:var(--muted)}dl{margin-top:3rem}dt{text-transform:uppercase;letter-spacing:.16em;color:var(--blue);font-size:.62rem;font-weight:600;margin-top:1.6rem}dd{margin:.4rem 0;font-size:1.05rem}.contact-form{background:white;padding:3rem;box-shadow:0 15px 60px rgba(12,46,79,.06)}label{display:block;text-transform:uppercase;letter-spacing:.12em;font-size:.62rem;font-weight:600;color:var(--navy);margin-bottom:1.4rem}input,select,textarea{width:100%;margin-top:.55rem;border:0;border-bottom:1px solid #bac7ce;background:transparent;padding:.8rem .1rem;font:300 1rem var(--sans);color:var(--ink);outline:none;text-transform:none;letter-spacing:0}textarea{border:1px solid #bac7ce;padding:1rem;resize:vertical}input:focus,select:focus,textarea:focus{border-color:var(--blue)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.hp{position:absolute;left:-9999px}.form-note{font-size:.72rem;color:var(--muted);margin-top:1.3rem}footer{background:#081f34;color:#d9e6ee;padding:5rem 6vw;display:grid;grid-template-columns:2fr 1fr 1.4fr 1fr;gap:4rem;font-size:.78rem}footer .footer-brand span{font:italic 2.5rem var(--serif);color:white}footer h4{text-transform:uppercase;letter-spacing:.16em;color:#8db9d7;font-size:.65rem}footer a{display:block;margin:.65rem 0}footer p{color:#9fb0bc}.fine{color:#728794;line-height:1.8}
@media(max-width:800px){.site-header{height:76px;padding:0 5vw}.site-header nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--cream);padding:2rem 6vw;flex-direction:column;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.header-cta{display:none}.menu{display:block;width:36px;height:36px}.menu span{display:block;width:22px;height:1px;background:var(--navy);margin:6px}.hero{grid-template-columns:1fr}.hero-copy{padding:12vh 7vw 8vh}.hero-photo{min-height:60vh}.section{padding:6rem 7vw}.feature-grid{grid-template-columns:1fr;gap:2rem}.cta{align-items:flex-start;flex-direction:column;gap:2rem}.page-head{padding:7rem 7vw 4rem}.split,.contact-layout{grid-template-columns:1fr;gap:4rem}.gallery{grid-template-columns:1fr;grid-auto-rows:330px}.gallery>div{grid-column:auto;grid-row:auto}.field-row{grid-template-columns:1fr}.contact-form{padding:2rem 1.4rem}.services article{grid-template-columns:45px 1fr}footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}}@media(max-width:480px){h1{font-size:3.2rem}.actions{align-items:flex-start;flex-direction:column;gap:1.4rem}.gallery{grid-auto-rows:260px}footer{grid-template-columns:1fr}.footer-brand{grid-column:auto}}