@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;450;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--ink:#153c34;--paper:#faf8f2;--gold:#e4c583;--muted:#53655f;--line:#cdd5ce}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:17px;line-height:1.65}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #b88320;outline-offset:6px}header{max-width:1440px;margin:auto;min-height:120px;padding:24px 6%;display:flex;align-items:center;justify-content:space-between;gap:24px}.brand{font-family:'Libre Caslon Display',Georgia,serif;font-size:48px;line-height:1;letter-spacing:-2px}.brand span{display:block;font-family:'DM Sans',sans-serif;font-size:12px;letter-spacing:1.5px;text-transform:uppercase;margin-top:12px}nav{display:flex;align-items:center;gap:38px;font-size:15px}nav a:hover,.text-link:hover{text-decoration:underline;text-underline-offset:5px}.nav-contact{border:1px solid var(--ink);padding:11px 20px}.nav-contact span{margin-left:18px}.hero{background:var(--ink);color:var(--paper);position:relative;overflow:hidden}.hero-inner{max-width:1440px;margin:auto;padding:65px 6% 26px;position:relative;z-index:1}.eyebrow{text-transform:uppercase;font-size:12px;font-weight:600;letter-spacing:2px;margin:0 0 28px}.hero .eyebrow{color:var(--gold)}h1,h2{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-2px;margin:0}h1{font-size:clamp(58px,7.9vw,116px);max-width:1050px}em{font-weight:400}.hero h1 em{color:var(--gold)}.hero-bottom{display:flex;align-items:center;gap:65px;margin-top:34px}.hero-bottom p{max-width:535px;font-size:18px;color:#e2e8e2}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:17px 25px;font-size:16px;font-weight:600;transition:transform .2s;white-space:nowrap}.button:hover{transform:translateY(-3px)}.gold{background:var(--gold);color:var(--ink)}.dark{background:var(--ink);color:white}.hero-foot{display:flex;justify-content:space-between;border-top:1px solid #4c6960;margin-top:40px;padding-top:20px;font-size:13px;color:#c6d3cb}.side-word{position:absolute;right:-30px;top:40px;writing-mode:vertical-rl;font-family:Georgia,serif;font-size:160px;color:#ffffff05;pointer-events:none}.wrap{max-width:1280px;margin:0 auto;padding-left:40px;padding-right:40px}.intro{padding-top:90px;padding-bottom:75px;display:grid;grid-template-columns:1fr 1fr;column-gap:90px}.intro .eyebrow{grid-column:1/-1}.intro h2{font-size:52px}.intro>p:last-child{margin:0;color:var(--muted);max-width:500px}.section-heading{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:25px 0}.section-heading>p:last-child{margin:0;font-size:14px;line-height:1.45}.service-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.service{padding:42px}.resolution{background:#e5ebe4}.preparation{background:#efeadd}.number{font-size:12px;text-transform:uppercase;letter-spacing:1.6px}.service h2{font-size:66px;margin:32px 0 24px}.service>p{color:#43594f;max-width:430px;min-height:112px}.service ul{padding:0;list-style:none;margin:30px 0}.service li{border-top:1px solid #bcc9bd;padding:13px 0;font-size:15px}.service a{display:flex;justify-content:space-between;border-bottom:1px solid;padding-bottom:8px;font-weight:500;font-size:15px}.about{display:grid;grid-template-columns: .8fr 1.2fr;gap:90px;padding-top:110px;padding-bottom:110px;align-items:center}.portrait-block{max-width:385px;background:#e2c88d;padding:35px 35px 20px}.portrait-block img{display:block;width:100%;height:auto;aspect-ratio:1;object-fit:cover;filter:grayscale(100%)}.portrait-block>p{font-size:23px;line-height:1.3;margin:24px 0 0;font-family:'Libre Caslon Display',Georgia,serif}.portrait-block span{display:block;font-family:'DM Sans',sans-serif;font-size:13px;margin-top:7px}.about h2{font-size:54px}.about-copy>p:not(.eyebrow){color:var(--muted)}.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:6px;font-size:15px}.process{background:#e5ebe4;padding:75px 0 80px}.process h2{font-size:56px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:50px}.steps article{border-top:1px solid #9aad9e;padding-top:20px}.steps span{font-family:'Libre Caslon Display',Georgia,serif;font-size:35px}.steps h3{font-size:19px;font-weight:500;margin:15px 0}.steps p{font-size:16px;color:var(--muted);margin:0}.contact{padding-top:90px;padding-bottom:95px;display:grid;grid-template-columns:1fr 1fr;gap:0 90px}.contact .eyebrow{grid-column:1/-1}.contact h2{font-size:76px}.contact>div>p:first-child{margin:0 0 24px}.small{font-size:13px;max-width:400px;color:var(--muted);line-height:1.5;margin-top:22px}footer{background:var(--ink);color:var(--paper);padding:45px max(6%,calc((100% - 1200px)/2));display:flex;justify-content:space-between;align-items:center;gap:30px}footer p{font-size:14px;line-height:1.5}footer>div{font-size:15px;text-align:right}.skip{position:absolute;top:-80px;left:10px;background:white;padding:12px;z-index:10}.skip:focus{top:10px}@media(max-width:760px){header{min-height:100px;padding:20px 6%}.brand{font-size:40px}.brand span{font-size:10px;letter-spacing:1px}nav{gap:0}nav>a:not(.nav-contact){display:none}.nav-contact{font-size:14px;padding:10px}.nav-contact span{margin-left:8px}.hero-inner{padding:48px 6% 24px}.hero-bottom{display:block;margin-top:25px}.hero-bottom p{font-size:17px}.hero-bottom .button{margin-top:14px}.hero-foot{gap:20px;font-size:12px}.wrap{padding-left:6%;padding-right:6%}.intro{display:block;padding-top:55px;padding-bottom:50px}.intro h2{font-size:43px;margin-bottom:24px}.service-grid,.about,.steps,.contact{grid-template-columns:1fr}.service{padding:30px}.service h2{font-size:58px}.service>p{min-height:0}.section-heading>p:last-child{font-size:12px}.about{gap:40px;padding-top:65px;padding-bottom:65px}.portrait-block{max-width:330px}.about h2{font-size:45px}.process{padding:55px 0}.process h2{font-size:44px}.steps{gap:32px;margin-top:35px}.contact{padding-top:60px;padding-bottom:60px;gap:26px}.contact .eyebrow{margin:0}.contact h2{font-size:64px}footer{align-items:flex-start;flex-wrap:wrap;padding:35px 6%}footer>div{text-align:left}.eyebrow{font-size:12px;letter-spacing:1.4px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
