@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap";:root{--navy:#101f2b;--ink:#172b38;--gold:#b79a63;--cream:#f7f5f0;--muted:#6e777c;--line:#dedfd9;--serif:"Libre Caslon Display",Georgia,serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:35px}body{background:var(--cream);color:var(--ink);margin:0;font-family:DM Sans,Arial,sans-serif;font-size:14px;line-height:1.75}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.5;cursor:wait}:is(a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible){outline:3px solid var(--gold);outline-offset:5px}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;font-family:var(--serif)}h2{letter-spacing:-1.2px;font-size:clamp(36px,4vw,54px);line-height:1.13}h2 em{color:#8a7652;font-style:normal}p{color:var(--muted)}.container{width:min(1180px,100% - 112px);margin:auto}.section{padding:100px 0}.eyebrow{letter-spacing:2.1px;color:#8b754e;margin-bottom:22px;font-size:10px;font-weight:600;display:block}.eyebrow.light{color:#d3be95}.header{background:var(--cream);z-index:20;border-bottom:1px solid var(--line);position:relative}.header-dark{background:var(--navy);color:#f5f2eb;border-color:#ffffff18}.header-inner{justify-content:space-between;align-items:center;height:100px;display:flex}.brand{align-items:center;gap:12px;line-height:1;display:flex}.brand img{border-radius:50%;width:48px;height:48px}.brand b{letter-spacing:3px;font-size:29px;font-weight:500}.brand small{letter-spacing:1.5px;margin-top:8px;font-size:7.5px;display:block}.nav{align-items:center;gap:32px;font-size:12px;display:flex}.nav a{transition:color .2s}.nav a:hover{color:var(--gold)}.nav-contact{border:1px solid #ad956266;align-items:center;gap:20px;padding:11px 18px;display:flex}.menu-toggle{color:inherit;background:0 0;border:0;padding:10px;display:none}.hero-wrap{background:var(--navy);color:#f5f2eb}.hero{min-height:665px;position:relative;overflow:hidden}.hero-image{background:linear-gradient(90deg,#101f2bf5 0%,#101f2be8 30%,#101f2b55 60%,#101f2b10),url(/assets/architecture.png) 50% 43%/cover no-repeat;position:absolute;inset:0}.hero-content{padding-top:72px;padding-bottom:26px;position:relative}.hero .eyebrow{align-items:center;gap:12px;display:flex}.hero .eyebrow span{background:var(--gold);width:28px;height:1px}h1{letter-spacing:-1.2px;max-width:720px;margin:27px 0;font-size:clamp(48px,5.8vw,79px);line-height:1.03}h1 em{color:#d1ba8c;font-style:normal}.hero-description{color:#c0c6c9;font-size:14px;line-height:1.9}.hero-actions{align-items:center;gap:32px;margin-top:35px;display:flex}.button{border:1px solid #0000;justify-content:center;align-items:center;gap:26px;min-height:49px;padding:14px 23px;font-size:12px;font-weight:500;display:inline-flex}.gold{color:#152430;background:#c2a777}.gold:hover{background:#d7bd8c}.text-link,.line-link{align-items:center;gap:21px;font-size:12px;display:inline-flex}.text-link{color:#e2e4e3}.line-link{border-bottom:1px solid var(--gold);padding-bottom:8px;font-weight:500}.explore{letter-spacing:2px;color:#b7c0c6;align-items:center;gap:12px;margin-top:50px;font-size:8px;display:inline-flex}.explore>span{border:1px solid #ffffff40;border-radius:50%;place-items:center;width:32px;height:32px;display:grid}.hero-caption{letter-spacing:3px;writing-mode:vertical-rl;color:#e2ddd0;font-size:9px;position:absolute;bottom:32px;right:33px}.principles-bar{background:#142532;border-top:1px solid #ffffff1a}.principles-bar>.container{grid-template-columns:repeat(3,1fr);padding:24px 0;display:grid}.principles-bar span{letter-spacing:.2px;border-right:1px solid #ffffff20;justify-content:center;align-items:center;gap:14px;font-size:12px;display:flex}.principles-bar span:last-child{border:0}.principles-bar svg{color:#baa071;stroke-width:1.3px;width:21px}.about{grid-template-columns:1fr 1fr;gap:80px;display:grid}.about-copy{padding-top:8px}.about-copy p{margin-bottom:18px}.about-copy .line-link{margin-top:8px}.practices{background:#efeee8}.section-heading{justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px;display:flex}.section-heading>p{max-width:370px;font-size:13px}.areas-grid{border-top:1px solid #cfd2cc;border-left:1px solid #cfd2cc;grid-template-columns:repeat(3,1fr);display:grid}.area-card{text-align:left;color:var(--ink);background:0 0;border:1px solid #cfd2cc;border-top:0;border-left:0;flex-direction:column;padding:30px;transition:background .2s;display:flex}.area-card:hover{background:#faf9f5}.area-top{color:#927e58;justify-content:space-between;align-items:center;margin-bottom:30px;display:flex}.area-top span{color:#8e9799;font-size:10px}.area-card h3{max-width:270px;min-height:65px;font-size:27px;line-height:1.2}.area-card p{max-width:260px;margin:14px 0 25px;font-size:12px}.area-more{justify-content:space-between;margin-top:auto;font-size:10px;font-weight:500;display:flex}.more-areas{align-items:start;gap:25px;margin-top:28px;font-size:11px;display:flex}.more-areas>span{color:#33434c;white-space:nowrap}.more-areas p{font-size:11px}.approach{background:var(--navy);color:var(--cream);position:relative}.approach-grid{grid-template-columns:1fr 1fr;gap:110px;display:grid}.approach h2 em,.contact h2 em{color:#c6ad7d}.approach p{color:#a9b4bb;max-width:390px;margin-top:23px;font-size:13px}.outline{color:#e3d2b1;border-color:#b69c6677;margin-top:32px}.steps{margin:0;padding:0;list-style:none}.steps li{border-bottom:1px solid #ffffff1f;gap:24px;padding:24px 0;display:flex}.steps li:first-child{padding-top:0}.steps li>span{font-family:var(--serif);color:#bda474;font-size:24px}.steps h3{font-size:28px;line-height:1.2}.steps p{margin-top:9px;font-size:12px}.team-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.team-card{border-top:1px solid var(--line);border-bottom:1px solid var(--line);align-items:center;gap:28px;padding:32px 0;display:flex}.team-initials{color:#8e7b59;width:124px;height:124px;font:38px var(--serif);background:#eae7de;flex-shrink:0;place-items:center;display:grid}.team-card .eyebrow{margin:0 0 12px;font-size:8px}.team-card h3{margin-bottom:13px;font-size:30px}.team-card a{color:#727a7d;align-items:center;gap:14px;font-size:11px;display:flex}.journal{background:#efeee8}.empty-journal{border-top:1px solid #cfd2cc;border-bottom:1px solid #cfd2cc;align-items:center;gap:30px;padding:32px 0;display:flex}.empty-journal>svg{color:#9d895f;flex-shrink:0}.empty-journal h3{font-size:27px}.empty-journal p{margin-top:6px;font-size:12px}.empty-journal>a{margin-left:auto}.contact{color:var(--cream);background:#1b2e3b}.contact-grid{grid-template-columns:1.05fr 1fr;align-items:center;gap:90px;display:grid}.contact p{color:#b8c0c5;margin-top:23px;font-size:13px}.contact-mail{border-bottom:1px solid #ffffff30;padding:28px 0;display:block;position:relative}.contact-mail>span{letter-spacing:2px;color:#ccb489;align-items:center;gap:12px;font-size:9px;display:flex}.contact-mail strong{font-family:var(--serif);margin-top:10px;font-size:38px;font-weight:400;display:block}.contact-mail>svg{color:#c7b086;position:absolute;top:77px;right:0}.location{color:#d6dadb;align-items:center;gap:12px;margin-top:24px;font-size:12px;display:flex}.contact .contact-note{margin-top:10px;font-size:10px}footer{color:#c7ccce;background:#101e29}.footer-top{justify-content:space-between;align-items:center;padding:36px 0;display:flex}.footer-top p{font-family:var(--serif);color:#b6b9b5;font-size:21px}.footer-top>a:last-child{align-items:center;gap:10px;font-size:11px;display:flex}.footer-bottom{color:#8d9ba4;border-top:1px solid #ffffff15;justify-content:space-between;padding:20px 0;font-size:9px;display:flex}.footer-bottom>div{gap:25px;display:flex}.footer-bottom a{align-items:center;gap:5px;display:inline-flex}.area-dialog{background:var(--cream);width:calc(100% - 36px);max-width:600px;color:var(--ink);border:0;padding:50px}.area-dialog::backdrop{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#071724b8}.area-dialog h2{margin-bottom:20px;font-size:40px}.area-dialog p{font-size:14px}.area-dialog ul{margin:22px 0 30px;padding-left:18px}.dialog-close{color:var(--ink);background:0 0;border:0;position:absolute;top:15px;right:15px}.page-heading{background:#efeee8;padding:75px 0}.page-heading h1{margin:0 0 20px;font-size:65px}.post-grid{grid-template-columns:repeat(3,1fr);gap:25px;display:grid}.post-card{background:#f8f7f3;border:1px solid #d4d7d0;flex-direction:column;padding:30px;transition:transform .2s;display:flex}.post-card:hover{transform:translateY(-4px)}.post-card h3{margin-bottom:18px;font-size:29px;line-height:1.2}.post-card p{font-size:12px}.post-bottom{border-top:1px solid var(--line);justify-content:space-between;align-items:center;margin-top:30px;padding-top:20px;font-size:10px;display:flex}.filter-row{flex-wrap:wrap;gap:10px;margin-bottom:32px;display:flex}.filter-row button{border:1px solid var(--line);color:var(--ink);background:0 0;padding:8px 15px;font-size:11px}.filter-row button.active{background:var(--navy);color:#fff}.search-input{border:1px solid var(--line);min-width:260px;max-width:100%;color:var(--ink);background:#fff;padding:14px 18px}.article{max-width:760px;margin:auto;padding:70px 0 90px}.article h1{margin:25px 0;font-size:58px;line-height:1.1}.article-meta{color:var(--muted);border-bottom:1px solid var(--line);flex-wrap:wrap;gap:15px;padding:20px 0;font-size:11px;display:flex}.article-body{white-space:pre-wrap;overflow-wrap:anywhere;color:#47545c;margin-top:35px;font-size:16px;line-height:1.95}.article-disclaimer{border-top:1px solid var(--line);margin-top:40px;padding-top:25px;font-size:11px}.admin-page{background:#f1f2ee;min-height:100vh}.admin-top{background:var(--navy);color:#fff;justify-content:space-between;align-items:center;padding:22px 35px;display:flex}.admin-top>div{align-items:center;gap:20px;font-size:12px;display:flex}.admin-main{max-width:1250px;margin:auto;padding:48px 35px}.admin-title{justify-content:space-between;align-items:center;margin-bottom:35px;display:flex}.admin-title h1{margin:0;font-size:44px}.admin-title p{margin-top:8px;font-size:12px}.admin-button{border:1px solid var(--line);color:var(--ink);background:#fff;align-items:center;gap:8px;padding:10px 17px;font-size:12px;display:inline-flex}.admin-button.primary{background:var(--navy);color:#fff;border-color:var(--navy)}.admin-button.danger{color:#ae3939}.login-card{border:1px solid var(--line);background:#fff;max-width:430px;margin:75px auto;padding:40px}.login-card h1{margin:0 0 12px;font-size:40px;line-height:1.15}.login-card p{margin-bottom:25px;font-size:12px}.field{flex-direction:column;gap:7px;margin-bottom:18px;display:flex}.field>span,.field>label{color:#4f5d64;font-size:11px;font-weight:600}.field input,.field textarea,.field select{color:var(--ink);background:#fff;border:1px solid #cdd3d0;border-radius:2px;width:100%;padding:11px 12px}.field textarea{resize:vertical}.login-card .admin-button{justify-content:center;width:100%}.notice{color:#584b32;background:#ece5d5;border-left:3px solid #a68c56;margin:16px 0;padding:12px 16px;font-size:12px}.notice.error{color:#8e3425;background:#fbe8e5;border-color:#b45645}.admin-stats{gap:18px;margin-bottom:30px;display:flex}.admin-stat{border:1px solid var(--line);background:#fff;flex:1;padding:20px 25px}.admin-stat b{font:35px var(--serif);display:block}.admin-stat span{color:var(--muted);font-size:11px}.admin-list{border:1px solid var(--line);background:#fff}.admin-row{border-bottom:1px solid var(--line);align-items:center;gap:20px;padding:24px;display:flex}.admin-row:last-child{border:0}.admin-row .row-info{flex:1;min-width:0}.admin-row h3{overflow-wrap:anywhere;font-family:inherit;font-size:15px;font-weight:500}.admin-row p{margin-top:6px;font-size:10px}.badge{color:#8a6b2c;white-space:nowrap;background:#eee7d8;padding:4px 9px;font-size:9px}.badge.published{color:#396648;background:#e4eee6}.editor-layout{grid-template-columns:minmax(0,1fr) 280px;gap:25px;display:grid}.editor-paper,.editor-side{border:1px solid var(--line);background:#fff;padding:30px}.editor-paper .title-input{font-family:var(--serif);font-size:35px}.editor-paper textarea.body-input{min-height:420px;line-height:1.9}.editor-side{height:fit-content}.editor-actions{flex-direction:column;gap:10px;display:flex}.editor-actions button{justify-content:center}.preview-body{white-space:pre-wrap;overflow-wrap:anywhere;color:#48565f;line-height:1.9}.preview-title{overflow-wrap:anywhere;font-size:44px;line-height:1.15}.empty-admin{text-align:center;padding:60px 30px}.empty-admin h3{font-size:28px}.empty-admin p{margin:10px 0 22px;font-size:12px}.password-row{display:flex;position:relative}.password-row input{padding-right:45px}.password-row button{color:#65747c;background:0 0;border:0;position:absolute;top:9px;right:8px}.login-foot{text-align:center;color:var(--muted);margin-top:20px;font-size:10px}.article-back{align-items:center;gap:8px;font-size:11px;display:inline-flex}.search-bar{justify-content:space-between;align-items:center;gap:15px;margin-bottom:25px;display:flex}@media (min-width:1500px){.hero{min-height:720px}.hero-content{padding-top:95px}.hero-image{background-position:50% 48%}}@media (max-width:1050px){.container{width:calc(100% - 64px)}.nav{gap:18px;font-size:11px}.header-inner{height:88px}.hero{min-height:650px}.hero-content{padding-top:70px}.about,.approach-grid,.contact-grid{gap:45px}.area-card{padding:24px}.team-card{gap:20px}.team-initials{width:80px;height:110px;font-size:30px}.team-card h3{font-size:25px}.team-card a{font-size:10px}.contact-mail strong{font-size:31px}.section{padding:78px 0}}@media (max-width:760px){.container{width:calc(100% - 40px)}.header-inner{height:82px}.brand img{width:42px;height:42px}.brand b{font-size:25px}.brand small{font-size:6.5px}.menu-toggle{display:block}.nav{background:var(--navy);color:#fff;border-top:1px solid #ffffff20;padding:25px;display:none;position:absolute;top:82px;left:0;right:0;box-shadow:0 18px 30px #0004}.nav-open{flex-direction:column;align-items:stretch;gap:0;display:flex}.nav>a{padding:13px 8px;font-size:14px}.nav-contact{justify-content:space-between;margin-top:15px}.hero{min-height:650px}.hero-image{background-image:linear-gradient(90deg,#101f2bef,#101f2ba8),url(/assets/architecture.png);background-position:65%}.hero-content{padding-top:56px;padding-bottom:30px}.hero .eyebrow{letter-spacing:1.4px;font-size:8px}h1{letter-spacing:-1px;margin:28px 0;font-size:58px;line-height:1.06}.hero-description{max-width:330px;font-size:13px}.hero-actions{flex-direction:column;align-items:start;gap:25px;margin-top:28px}.explore{margin-top:34px}.hero-caption{display:none}.principles-bar>.container{grid-template-columns:1fr;padding:10px 0}.principles-bar span{border-bottom:1px solid #ffffff12;border-right:0;justify-content:flex-start;padding:13px;font-size:11px}.principles-bar svg{width:17px}.section{padding:62px 0}.about,.approach-grid,.contact-grid{grid-template-columns:1fr;gap:32px}h2{font-size:41px}.eyebrow{margin-bottom:18px;font-size:9px}.section-heading{margin-bottom:30px;display:block}.section-heading>p,.section-heading>.line-link{margin-top:24px}.areas-grid{grid-template-columns:repeat(2,1fr)}.area-card{padding:20px}.area-card h3{min-height:60px;font-size:24px}.area-card p{margin-bottom:20px;font-size:11px}.area-top{margin-bottom:22px}.area-more{font-size:9px}.more-areas{display:block}.more-areas p{margin-top:7px}.team-grid{grid-template-columns:1fr;gap:10px}.team-card h3{font-size:29px}.team-initials{width:100px}.team-card a{font-size:11px}.empty-journal{align-items:start;gap:17px}.empty-journal h3{font-size:25px}.empty-journal p{font-size:11px}.empty-journal>svg{width:25px}.contact-mail strong{font-size:36px}.footer-top{flex-direction:column;align-items:start;gap:25px}.footer-bottom{flex-direction:column;gap:18px}.post-grid{grid-template-columns:1fr}.page-heading{padding:50px 0}.page-heading h1{font-size:48px}.article{padding:45px 0}.article h1{font-size:43px}.article-body{font-size:15px}.search-bar{flex-direction:column;align-items:stretch}.area-dialog{padding:40px 25px}.area-dialog h2{font-size:34px}.admin-top{padding:18px 20px}.admin-top>div{gap:10px}.admin-main{padding:32px 20px}.admin-title{align-items:start;gap:15px}.admin-title h1{font-size:35px}.admin-title .admin-button{white-space:nowrap;font-size:10px}.admin-stats{gap:8px}.admin-stat{padding:14px}.admin-stat b{font-size:28px}.admin-stat span{font-size:9px}.admin-row{flex-wrap:wrap;gap:12px;padding:18px}.admin-row .row-info{flex-basis:75%}.editor-layout{grid-template-columns:1fr}.editor-paper,.editor-side{padding:20px}.login-card{margin:45px 20px;padding:28px}.editor-paper .title-input{font-size:27px}.editor-actions{flex-flow:wrap}.preview-title{font-size:35px}}@media (max-width:380px){h1{font-size:50px}.areas-grid{grid-template-columns:1fr}.area-card h3{min-height:0}.hero{min-height:660px}.contact-mail strong{font-size:29px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}@media (max-width:760px){.hero h1{font-size:46px;line-height:1.12}.hero{min-height:640px}}@media (max-width:380px){.hero h1{font-size:42px}}.contact-form-wrap{margin-top:65px}.contact-form{color:#172b38;background:#f7f5f0;max-width:760px;padding:38px}.contact-form h3,.contact-success h3{font-size:32px;line-height:1.2}.contact-form>p{color:#6e777c;margin:8px 0 23px;font-size:12px}.contact-form label{flex-direction:column;gap:7px;margin-bottom:16px;display:flex}.contact-form label span{font-size:11px;font-weight:600}.contact-form input,.contact-form textarea{color:#172b38;background:#fff;border:1px solid #cbd0cb;border-radius:0;width:100%;padding:12px}.contact-form textarea{resize:vertical}.form-pair{grid-template-columns:1fr 1fr;gap:20px;display:grid}.contact-form .form-privacy{margin:0 0 20px;font-size:10px}.contact-form .form-error{color:#9a3026;margin:0 0 20px}.form-error a{text-decoration:underline}.contact-form .form-honeypot{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.contact-success{color:#172b38;background:#f7f5f0;gap:20px;max-width:760px;padding:40px;display:flex}.contact-success>svg{color:#8a7652;flex:none}.contact-success p{color:#6e777c;margin:10px 0}.contact-success button{color:#172b38;background:0 0;border:0;align-items:center;gap:10px;padding:0;display:flex}.contact-form button:disabled{opacity:.6}@media (max-width:760px){.contact-form-wrap{margin-top:40px}.contact-form{padding:25px}.form-pair{grid-template-columns:1fr;gap:0}}.contact-mail .mail-entry{font:clamp(22px,2.6vw,35px) var(--serif);overflow-wrap:anywhere;justify-content:space-between;align-items:center;gap:10px;margin-top:15px;display:flex}.mail-entry svg{color:#c7b086;flex:none}.footer-emails{gap:8px;font-size:11px;display:grid}.footer-emails a{align-items:center;gap:10px;display:flex}@media (max-width:380px){.contact-mail .mail-entry{font-size:20px}}
