:root{--ink:#17211d;--cream:#f4f0e7;--paper:#fbfaf6;--sage:#b8c9bb;--line:rgba(23,33,29,.2)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}.site-header{height:88px;padding:0 clamp(24px,5vw,76px);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--paper)}.logo-link{display:flex;align-items:center;gap:14px;width:max-content}.logo-link img{display:block;width:58px;height:58px;object-fit:contain;border-radius:50%}.logo-link span{font-size:15px;font-weight:800;letter-spacing:.16em;white-space:nowrap}nav{display:flex;gap:30px;font-size:13px;letter-spacing:.06em}nav a:hover{opacity:.55}.hero{min-height:670px;padding:clamp(70px,9vw,130px) clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:60px;align-items:center;background:var(--cream)}.eyebrow,.section-label{margin:0 0 30px;font-size:11px;font-weight:700;letter-spacing:.2em;text-transform:uppercase}h1{margin:0;max-width:850px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(58px,8.4vw,126px);font-weight:400;line-height:.91;letter-spacing:-.055em}.intro{max-width:560px;margin:42px 0 28px;font-size:clamp(17px,2vw,21px);line-height:1.65}.text-link{display:inline-flex;gap:12px;padding-bottom:7px;border-bottom:1px solid var(--ink);font-size:13px;font-weight:700}.hero-mark{aspect-ratio:1;display:grid;place-items:center;border-radius:50%;overflow:hidden}.hero-mark img{display:block;width:100%;height:100%;object-fit:cover;border-radius:50%}.home-intro,.about-page{padding:clamp(80px,10vw,150px) clamp(24px,7vw,110px);display:grid;grid-template-columns:1fr 2.5fr;gap:60px;border-top:1px solid var(--line)}.home-intro h2,.about-page h2{margin:0;max-width:850px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,5vw,72px);font-weight:400;line-height:1.08;letter-spacing:-.035em}.home-intro div>p,.about-page div>p{max-width:720px;margin:38px 0 0;font-size:17px;line-height:1.8;color:#47524d}.highlight-strip{padding:0 clamp(24px,7vw,110px) 100px;display:grid;grid-template-columns:repeat(4,1fr)}.highlight-strip div{padding:25px 18px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);font-family:Georgia,serif;font-size:20px}.highlight-strip span{display:block;margin-bottom:24px;font-family:Arial,sans-serif;font-size:10px;opacity:.5}.page-hero{min-height:520px;padding:clamp(80px,10vw,140px) clamp(24px,7vw,110px);display:flex;flex-direction:column;justify-content:flex-end;background:var(--cream)}.page-hero h1{max-width:1050px;font-size:clamp(52px,7vw,104px)}.about-hero{background:var(--sage)}.services-page{padding:clamp(70px,9vw,130px) clamp(24px,7vw,110px);background:var(--ink);color:var(--paper)}.service-list{border-top:1px solid rgba(255,255,255,.28)}.service-list article{display:grid;grid-template-columns:70px minmax(180px,.8fr) 1.5fr;gap:30px;padding:34px 0;border-bottom:1px solid rgba(255,255,255,.28);align-items:start}.service-list span{font-size:11px;opacity:.55}.service-list h2{margin:0;font-family:Georgia,serif;font-size:28px;font-weight:400}.service-list p{max-width:620px;margin:0;line-height:1.75;color:#cbd1ce}.contact-hero{background:#d8ddd7}.contact-page{padding:clamp(75px,9vw,135px) clamp(24px,7vw,110px);display:grid;grid-template-columns:minmax(0,.9fr) minmax(360px,1.1fr);gap:clamp(55px,9vw,140px)}.contact-details h2{margin:0;max-width:560px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(40px,5vw,66px);font-weight:400;line-height:1.08;letter-spacing:-.035em}.contact-details>p:not(.section-label){max-width:520px;margin:32px 0;color:#47524d;font-size:17px;line-height:1.75}.contact-email{display:inline-block;padding-bottom:6px;border-bottom:1px solid var(--ink);font-weight:700}.contact-form{display:grid;gap:24px;padding:clamp(28px,4vw,52px);background:var(--cream);border:1px solid var(--line)}.contact-form label{display:grid;gap:9px;font-size:12px;font-weight:700;letter-spacing:.06em}.contact-form input,.contact-form textarea{width:100%;padding:10px;border:1px solid var(--line);border-radius:0;background:var(--paper);box-shadow:none;font:inherit}.contact-form input{height:48px}.contact-form textarea{min-height:150px;resize:vertical}.contact-form button,.contact-success button{min-width:150px;height:48px;padding:0 20px;border:0;border-radius:0;background:var(--ink);color:var(--paper);cursor:pointer}.contact-form button:disabled{opacity:.55}.form-note,.form-notice{margin:0;color:#65706b;font-size:11px;line-height:1.55}.form-notice:empty{display:none}.contact-success{display:none;flex-direction:column;align-items:flex-start;justify-content:center;min-height:520px;padding:clamp(32px,5vw,64px);background:var(--cream);border:1px solid var(--line)}.contact-success.active{display:flex}.success-mark{display:grid;place-items:center;width:54px;height:54px;margin-bottom:34px;border-radius:50%;background:var(--ink);color:var(--paper);font-size:25px}.contact-success h2{max-width:540px;margin:10px 0 18px;font-family:Georgia,serif;font-size:clamp(32px,4vw,52px);font-weight:400;line-height:1.05}.contact-success>p:not(.section-label){max-width:540px;margin:0 0 34px;color:#54605b;font-size:16px;line-height:1.7}footer{min-height:210px;padding:55px clamp(24px,7vw,110px);display:grid;grid-template-columns:1fr 1fr auto;gap:35px;align-items:end;background:var(--sage);font-size:12px}.footer-brand{font-size:17px;font-weight:800;letter-spacing:.12em}.footer-email{display:inline-block;margin-top:15px;border-bottom:1px solid currentColor}.footer-legal{display:grid;gap:8px;text-align:right}footer p{margin:0;line-height:1.6}@media(max-width:760px){.site-header{height:74px}.logo-link{gap:9px}.logo-link img{width:48px;height:48px}.logo-link span{font-size:12px;letter-spacing:.1em}nav{gap:14px;font-size:11px}.hero{min-height:auto;grid-template-columns:1fr;gap:65px;padding-top:85px}.hero-mark{width:min(50vw,240px);justify-self:center}.home-intro,.about-page{grid-template-columns:1fr;gap:24px}.highlight-strip{grid-template-columns:1fr 1fr}.service-list article{grid-template-columns:42px 1fr;gap:15px}.service-list p{grid-column:2}.contact-page{grid-template-columns:1fr}footer{grid-template-columns:1fr;align-items:start}.footer-legal{text-align:left}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
