@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#23382f;--paper:#f5f2e9;--accent:#b6583b;--muted:#64716a;--line:#d7dbd0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}header{display:flex;justify-content:space-between;align-items:center;padding:25px 5vw;border-bottom:1px solid var(--line);gap:25px}.brand{display:flex;align-items:center;gap:12px;font-family:'Manrope',Arial,sans-serif;font-weight:800;letter-spacing:2px;line-height:1.2}.brand small{font-family:Arial,sans-serif;display:block;font-size:8px;letter-spacing:1.4px;margin-top:8px;font-weight:400}.monogram{font-size:32px;letter-spacing:-3px;padding-right:6px}nav{display:flex;align-items:center;gap:30px;font-size:13px}.button{background:var(--ink);color:#fff;padding:16px 24px;display:inline-flex;align-items:center;justify-content:space-between;gap:30px;border:0;font:600 14px 'DM Sans',Arial;cursor:pointer}.button:hover{background:#365344;text-decoration:none}.button.small{padding:11px 17px;font-size:12px}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:5vw;padding:65px 5vw 75px;max-width:1600px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:700;margin:0 0 26px}.hero h1{font:600 clamp(52px,6.4vw,100px)/1.02 'Manrope',Arial;letter-spacing:-5px;margin:0 0 27px}.hero h1 em{font-style:normal;color:var(--accent)}.intro{font-size:17px;max-width:430px;margin:0 0 30px}.location{font-size:11px;letter-spacing:1px;margin-top:23px}.plan{background:var(--ink);color:#e8e0ce;padding:25px 25px 15px;display:flex;flex-direction:column;justify-content:space-between}.plan svg{width:100%;max-height:530px}.plan-top,.plan-foot{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1.4px}.plan-foot{font-size:7px;padding-top:18px}.section{padding:75px 5vw;border-top:1px solid var(--line)}h2{font:500 clamp(30px,3.6vw,53px)/1.13 'Manrope',Arial;letter-spacing:-2px;margin:0 0 30px}h3{font:600 24px/1.3 'Manrope',Arial;letter-spacing:-.6px}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:30px}.section-head h2{width:60%}.services{display:grid;grid-template-columns:repeat(2,1fr);gap:35px;margin-top:25px}.services article{padding-top:25px;border-top:2px solid var(--ink)}.services p{font-size:15px;max-width:350px;color:var(--muted)}.services a{font-size:13px;font-weight:700}.number{font-size:10px;letter-spacing:1.5px}.process{background:#e8ecdf;display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.muted{color:var(--muted)}.process>div>p:last-child{max-width:300px}.process ol{padding:0;margin:0;list-style:none}.process li{display:flex;gap:25px;border-bottom:1px solid #c6cebe;padding:0 0 25px;margin-bottom:25px}.process li:last-child{border:0;margin-bottom:0;padding-bottom:0}.process li>span{font-size:12px;color:var(--accent);padding-top:6px}.process h3{margin:0 0 9px;font-size:21px}.process li p{font-size:14px;margin:0;color:var(--muted)}.team-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:45px}.initials{border:1px solid var(--line);font-size:28px;display:flex;align-items:center;justify-content:center;width:70px;height:70px}.team h3{font-size:21px;margin:20px 0 5px}.team p{font-size:13px;margin:5px 0}.team a{font-size:12px;overflow-wrap:anywhere}.inquiry{display:grid;grid-template-columns:1fr 1fr;gap:8vw;background:var(--ink);color:var(--paper)}.inquiry>div>p{max-width:390px}.inquiry h2{font-size:clamp(42px,4vw,64px)}.email{display:inline-block;color:#f1b194;font-size:18px;margin:15px 0}.fine{font-size:11px;line-height:1.7;opacity:.8}.inquiry label{font-size:12px;display:block;margin-bottom:16px}input,select,textarea{display:block;width:100%;margin-top:6px;padding:12px;border:1px solid #809183;background:#fff;color:#23382f;font:14px 'DM Sans',Arial;border-radius:0}textarea{resize:vertical}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry .button{background:#e9bc99;color:var(--ink);width:100%}.text-button{background:none;border:0;color:var(--paper);text-decoration:underline;padding:12px 0;cursor:pointer}.inquiry #status{font-size:12px;max-width:400px}details{border-top:1px solid var(--line);padding:20px 0}summary{cursor:pointer;font-size:17px}details p{max-width:650px;color:var(--muted);font-size:14px}footer{padding:35px 5vw;display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:11px;border-top:1px solid var(--line)}:focus-visible{outline:3px solid #dd9c72;outline-offset:4px}.privacy{max-width:760px;margin:60px auto;padding:0 25px}.privacy h1{font-size:44px}.privacy h2{font-size:23px;letter-spacing:-.5px;margin-top:35px}@media(max-width:850px){header{padding:20px 6vw}nav>a:not(.button){display:none}.brand small{display:none}.hero{grid-template-columns:1fr;padding:45px 6vw;gap:35px}.hero h1{letter-spacing:-3px;font-size:66px}.plan svg{max-height:430px}.section{padding:50px 6vw}.section-head{display:block}.section-head h2{width:100%}.services,.team-grid{grid-template-columns:1fr;gap:35px}.services p{max-width:none}.process,.inquiry{grid-template-columns:1fr;gap:35px}.team-grid{margin-top:25px}.team-grid article{border-top:1px solid var(--line);padding-top:20px}.team-grid .initials{float:left;margin-right:20px}.team-grid h3{margin-top:0}.team-grid article{min-height:110px}footer{flex-wrap:wrap}.plan-foot{font-size:6px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.inquiry fieldset{border:1px solid #809183;margin:6px 0 22px;padding:16px}.inquiry legend{font-size:12px;padding:0 6px}.inquiry .check-label{display:flex;align-items:center;gap:10px;margin:8px 0}.check-label input{width:18px;height:18px;margin:0;flex:none}.success-prompt{color:#f1b194;font-size:16px} @media(max-width:480px){.form-row{grid-template-columns:1fr;gap:0}}

.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.inquiry button:disabled{opacity:.6;cursor:wait}.inquiry #status{padding:12px 0}.inquiry #status[data-state="success"]{color:#d8efc4;font-size:15px}.inquiry #status[data-state="error"]{color:#ffcfb7;font-size:14px}
