@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap');
:root{--ink:#102e3d;--blue:#154558;--accent:#bb915e;--paper:#f8f7f3;--line:#d9ddd8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 'DM Sans',sans-serif}h1,h2,h3{font-family:'Plus Jakarta Sans',sans-serif;line-height:1.15;letter-spacing:-.04em}h1{font-size:clamp(2.6rem,6vw,5.7rem);margin:0 0 24px}h2{font-size:clamp(2rem,4vw,3.65rem);margin:0 0 24px}h3{font-size:1.38rem}p{max-width:68ch}a{color:inherit}img{max-width:100%;display:block}.wrap{width:min(1200px,calc(100% - 48px));margin:auto}.top{height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font:700 18px 'Plus Jakarta Sans'}.brand img{width:58px;height:48px;object-fit:contain}.nav{display:flex;align-items:center;gap:32px}.nav a{text-decoration:none;font-size:14px;font-weight:700}.nav a:hover,.nav a[aria-current]{color:#9b6d38}.menu{display:none}.button{display:inline-flex;align-items:center;justify-content:center;padding:15px 23px;background:var(--ink);color:white;text-decoration:none;border:1px solid var(--ink);font-weight:700;font-size:14px;transition:.2s}.button:hover{background:#286078}.button.alt{background:transparent;color:var(--ink)}.button.alt:hover{background:#e8eee9}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-size:12px;font-weight:800;color:#9b6d38}.hero{padding:50px 0 90px;display:grid;grid-template-columns:1fr .83fr;align-items:center;gap:6vw}.hero p{font-size:19px;color:#526269}.hero .actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.hero-photo{height:600px;object-fit:cover;object-position:50% 20%;border-radius:180px 180px 4px 4px}.visual-caption{font-size:12px;color:#687981;margin-top:10px}.section{padding:100px 0}.section.light{background:#fff}.section.dark{background:var(--ink);color:white}.section.dark .eyebrow{color:#d1ab79}.section-intro{max-width:730px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:5vw;align-items:center}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.grid4{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.feature{border-top:1px solid var(--line);padding:24px 0}.feature span{font-size:12px;color:#a8773a;font-weight:800}.feature h3{margin:10px 0}.card{border:1px solid var(--line);padding:30px;background:#fff}.card p{color:#526269}.dark .card{background:#194052;border-color:#466171;color:white}.dark .card p{color:#d2dde1}.portrait-wide{width:100%;height:510px;object-fit:cover}.quote{font-size:15px}.quote:before{content:'“';font:700 60px 'Plus Jakarta Sans';line-height:.8;color:var(--accent);display:block}.quote strong{display:block;margin-top:20px}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.project{background:white;border:1px solid var(--line)}.project img{width:100%;height:230px;object-fit:cover}.project div{padding:20px}.project small{color:#9b6d38;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.project h3{margin:8px 0}.project p{margin:0;font-size:14px}.footer{background:#0d2a39;color:#edf2f3;padding:60px 0 25px}.footer-grid{display:flex;justify-content:space-between;gap:30px}.footer a{color:#edf2f3;text-decoration:none;margin-right:18px}.footer small{color:#b8c7cd}.note{background:#edf1ee;padding:22px;border-left:3px solid var(--accent)}.page-hero{padding:80px 0;background:#e9efed}.page-hero p{font-size:19px}.contact{background:#dbe6e4;padding:76px 0}.contact h2{max-width:700px}ul{padding-left:22px}li{margin:8px 0}@media(max-width:800px){.wrap{width:min(100% - 34px,1200px)}.top{height:70px}.menu{display:block;border:0;background:none;font-size:25px;color:var(--ink)}.nav{display:none;position:absolute;top:70px;left:0;right:0;background:var(--paper);padding:18px 24px 26px;z-index:10;box-shadow:0 12px 24px #102e3d22;flex-direction:column;align-items:flex-start;gap:16px}.nav.open{display:flex}.hero,.grid2{grid-template-columns:1fr}.hero{padding:38px 0 60px;gap:32px}.hero-photo{height:480px}.grid3,.projects,.grid4{grid-template-columns:1fr}.section{padding:65px 0}.portrait-wide{height:330px}.footer-grid{display:block}.page-hero{padding:60px 0}}