:root{--red:#e32127;--ink:#191919;--paper:#f7f6f3;--line:#d9d5cd;--serif:'Instrument Serif',Georgia,serif;--sans:'Manrope',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}.site-header{height:82px;padding:14px 6vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(247,246,243,.96);backdrop-filter:blur(12px);z-index:10}.brand img{display:block;width:205px}.site-header nav{display:flex;align-items:center;gap:28px;font-size:.82rem;font-weight:700}.header-cta,.button{display:inline-flex;align-items:center;justify-content:center;background:var(--red);color:#fff;padding:15px 22px;font-weight:700}.hero{min-height:calc(100svh - 82px);padding:10vh 7vw 7vh;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden}.eyebrow{margin:0 0 18px;color:var(--red);font-size:.73rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.hero h1,.section-heading h2,.services>h2,.contact h2{font-family:var(--serif);font-weight:400;line-height:.94;margin:0}.hero h1{font-size:clamp(4.2rem,7.6vw,9rem);max-width:1200px;position:relative;z-index:1}.hero-bottom{display:grid;grid-template-columns:1fr auto;gap:40px;align-items:end;margin-top:48px;position:relative;z-index:1}.hero-bottom p{max-width:590px;font-size:1.08rem;color:#57544f;margin:0}.hero-mark{position:absolute;right:-2vw;bottom:-18vw;font-family:var(--serif);font-size:72vw;line-height:.7;color:rgba(227,33,39,.055);pointer-events:none}.section-pad{padding:100px 7vw}.section-heading{display:grid;grid-template-columns:28% 1fr;align-items:start;margin-bottom:65px}.section-heading h2,.services>h2,.contact h2{font-size:clamp(3.4rem,5vw,6rem);max-width:920px}.model-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}.model-grid article{padding:32px 32px 10px 0;border-right:1px solid var(--line)}.model-grid article+article{padding-left:32px}.model-grid article:last-child{border-right:0}.model-grid span,.service-list span,.process li>span{color:var(--red);font-size:.75rem;font-weight:700}.model-grid h3,.service-list h3{font-family:var(--serif);font-weight:400;font-size:2.25rem;line-height:1;margin:18px 0}.model-grid p,.service-list p,.process p{color:#666}.dark{background:var(--ink);color:white}.services>h2{max-width:800px;margin-bottom:60px}.service-list{border-top:1px solid #474747}.service-list article{display:grid;grid-template-columns:7% 42% 1fr;gap:20px;padding:28px 0;border-bottom:1px solid #474747;align-items:start}.service-list h3{font-size:2.6rem;margin:0}.service-list p{color:#bbb;margin:3px 0}.process ol{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}.process li{display:grid;grid-template-columns:8% 36% 1fr;padding:24px 0;border-bottom:1px solid var(--line)}.process strong{font-family:var(--serif);font-size:1.8rem;font-weight:400}.process p{margin:5px 0}.process aside{margin:38px 0 0 auto;max-width:760px;border-left:3px solid var(--red);padding-left:22px;color:#666;font-size:.88rem}.contact{display:grid;grid-template-columns:1fr auto;gap:8vw;align-items:end;background:#dedbd4}.contact>div>p:last-child{max-width:700px;color:#5f5c57}.contact .button{margin-bottom:10px}footer{padding:42px 7vw;background:var(--ink);color:#bbb;display:grid;grid-template-columns:1fr 1fr 1fr;gap:25px;align-items:center}footer img{width:215px;filter:brightness(0) invert(1)}footer p{margin:0;text-align:center}footer a{text-align:right}@media(max-width:900px){.site-header nav a:not(.header-cta){display:none}.hero h1{font-size:clamp(3.8rem,10vw,6rem)}.hero-bottom,.section-heading,.contact{grid-template-columns:1fr}.model-grid{grid-template-columns:1fr}.model-grid article,.model-grid article+article{padding:28px 0;border-right:0;border-bottom:1px solid var(--line)}.service-list article{grid-template-columns:10% 1fr}.service-list p{grid-column:2}.process li{grid-template-columns:12% 1fr}.process li p{grid-column:2}footer{grid-template-columns:1fr}footer p,footer a{text-align:left}}@media(max-width:560px){.site-header{padding:12px 5vw}.brand img{width:180px}.header-cta{display:none}.hero{padding:8vh 6vw}.hero h1{font-size:3.55rem}.hero-bottom{margin-top:34px}.section-pad{padding:72px 6vw}.section-heading h2,.services>h2,.contact h2{font-size:3rem}.service-list h3{font-size:2rem}}
