@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Libre+Caslon+Display&display=swap');
:root{--ivory:#f5f2e9;--green:#243e34;--ink:#28372e;--muted:#73766c;--line:#d5d5c9;--brass:#a18a59;--oak:#b59875;--oxblood:#643b39}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font-family:'DM Sans',Arial,sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:2px solid var(--brass);outline-offset:6px}.skip{position:absolute;left:20px;top:-80px;z-index:5;background:var(--green);color:white;padding:10px}.skip:focus{top:10px}.wrap{max-width:1480px;margin:auto;padding:0 6vw}header{height:113px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:14px}.brand svg{width:38px;height:44px;flex-shrink:0}.wordmark{font-family:'Libre Caslon Display',Georgia,serif;font-size:31px;line-height:.9;letter-spacing:1.6px}.wordmark small{display:block;font-family:'DM Sans',Arial,sans-serif;font-size:8px;letter-spacing:3.4px;margin-top:9px}nav{display:flex;align-items:center;gap:31px;font-size:12px}nav a{padding:8px 0}nav a[aria-current=page]{border-bottom:1px solid var(--green)}.login{border:1px solid #adb4a9;padding:10px 17px!important;margin-left:12px}.login span{padding-left:12px}.eyebrow{text-transform:uppercase;letter-spacing:2.7px;font-size:10px;font-weight:500}.hero{display:grid;grid-template-columns:1.2fr .8fr;gap:8vw;align-items:center;padding:78px 0 82px;min-height:660px}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.02;margin:0}h1{font-size:clamp(64px,7.2vw,108px);letter-spacing:-2px;margin:24px 0 28px}h1 em,h2 em{font-weight:400;color:var(--oxblood)}.intro{max-width:440px;color:#62695f;font-size:15px;line-height:1.8}.text-link{display:inline-flex;gap:45px;align-items:center;font-size:12px;border-bottom:1px solid var(--green);padding:13px 0 10px;margin-top:19px}.text-link span{font-size:21px;line-height:1}.art{background:var(--green);position:relative;aspect-ratio:.86;display:flex;align-items:center;justify-content:center;overflow:hidden}.art svg{width:81%;height:83%;color:#b8a986}.art-label{position:absolute;left:26px;right:26px;bottom:20px;display:flex;justify-content:space-between;color:#d2d7ca;font-size:8px;letter-spacing:2.3px;text-transform:uppercase}.art:before{content:'';position:absolute;inset:14px;border:1px solid #b8a98630}.focus{border-top:1px solid var(--line);padding:32px 0 70px}.focus-head{display:flex;justify-content:space-between;align-items:start;gap:40px;margin-bottom:35px}.focus-head p{max-width:380px;font-size:13px;margin:0;color:#73766c}.services{display:grid;grid-template-columns:repeat(3,1fr)}.service{padding:12px 28px 10px 0;border-right:1px solid var(--line)}.service+.service{padding-left:30px}.service:last-child{border:0}.number{font-size:10px;color:var(--muted);display:block;margin-bottom:25px}.service h3{font-size:30px;margin-bottom:15px}.service p{font-size:13px;color:#73766c;max-width:290px}.service a{font-size:11px;display:inline-block;margin-top:10px}.service a span{margin-left:20px}.band{background:#e9e5d9;margin:0 -6vw;padding:55px 6vw;display:flex;justify-content:space-between;align-items:center;gap:30px}.band h2{font-size:38px;max-width:550px}.band .eyebrow{color:#747263}footer{padding:29px 0 30px;display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#7a7d72;gap:20px}.footer-links{display:flex;gap:26px}.page-head{padding:82px 0 68px;border-bottom:1px solid var(--line)}.page-head h1{max-width:930px;font-size:clamp(60px,7vw,98px)}.page-head .intro{max-width:560px}.page-grid{display:grid;grid-template-columns:.7fr 1.3fr;gap:12vw;padding:65px 0 90px}.page-grid h2{font-size:43px}.rows article{border-bottom:1px solid var(--line);padding:0 0 27px;margin-bottom:30px}.rows article:last-child{margin:0}.rows h3{font-size:31px;margin:0 0 13px}.rows p{color:#6e7468;max-width:540px;font-size:14px}.material-row{display:grid;grid-template-columns:repeat(4,1fr);height:120px;margin-top:30px}.swatch{display:flex;align-items:end;padding:13px;font-size:9px;letter-spacing:1.4px;text-transform:uppercase}.portal{min-height:65vh;max-width:660px;margin:auto;text-align:center;padding:90px 0}.portal h1{font-size:80px}.portal p{max-width:380px;margin:25px auto;color:var(--muted)}.portal-icon{font-size:25px;color:var(--brass)}.menu-toggle{display:none}.note{font-size:11px!important}.mobile-only{display:none}@media(min-width:1480px){.band{margin:0;padding-left:50px;padding-right:50px}}@media(max-width:800px){.wrap{padding:0 6vw}header{height:92px;flex-wrap:wrap;position:relative}.wordmark{font-size:27px}.brand svg{width:31px}.menu-toggle{display:block;border:0;background:none;font-size:11px;text-transform:uppercase;letter-spacing:1px;padding:10px 0 10px 15px}nav{display:none;width:100%;padding:25px;background:var(--ivory);position:absolute;top:91px;left:0;z-index:4;border:1px solid var(--line);flex-direction:column;align-items:stretch;gap:12px}nav.open{display:flex}.login{margin:8px 0 0;text-align:center}.hero{padding:46px 0 48px;gap:40px;min-height:0;grid-template-columns:1fr}h1{font-size:70px}.art{aspect-ratio:1.3;max-height:440px}.focus-head{display:block}.focus-head p{margin-top:20px}.services{grid-template-columns:1fr}.service,.service+.service{padding:24px 0;border:0;border-bottom:1px solid var(--line)}.number{margin-bottom:14px}.service p{max-width:100%}.band{display:block;padding-top:40px;padding-bottom:40px}.band .eyebrow{margin-top:25px}.band h2{font-size:34px}.page-head{padding:50px 0}.page-head h1{font-size:65px}.page-grid{grid-template-columns:1fr;gap:35px;padding:45px 0 60px}.material-row{height:100px}.swatch{font-size:8px;padding:8px}footer{align-items:start;flex-direction:column;gap:13px}.portal{padding-top:65px}.portal h1{font-size:60px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
dialog{border:1px solid var(--line);background:var(--ivory);color:var(--ink);width:min(440px,calc(100vw - 32px));padding:46px 38px 24px;max-height:90vh;box-shadow:0 20px 100px #10271c30}dialog::backdrop{background:#14291f80;backdrop-filter:blur(5px)}dialog h2{font-size:48px;margin:20px 0 10px}.dialog-intro{color:var(--muted);font-size:13px;margin-bottom:30px}.dialog-close{position:absolute;top:12px;right:18px;border:0;background:none;color:var(--ink);font-size:26px;cursor:pointer}dialog label{display:block;font-size:11px;margin:18px 0 8px}dialog input{width:100%;border:1px solid #c6cabe;background:#faf8f2;padding:13px;font:inherit;font-size:13px;border-radius:0}dialog input:focus{outline:1px solid var(--green);outline-offset:2px}.sign-in{width:100%;padding:13px 16px;background:var(--green);color:var(--ivory);border:0;display:flex;justify-content:space-between;cursor:pointer;margin-top:25px;font-size:12px}.login-message{font-size:12px;color:var(--oxblood);min-height:20px;margin:15px 0 0}button[data-login]{cursor:pointer}
.contact-email{font-size:clamp(15px,2.2vw,28px);gap:20px;overflow-wrap:anywhere}.contact-email span{flex-shrink:0}@media(min-width:801px) and (max-width:1050px){nav{gap:18px;font-size:11px}.login{margin-left:0;padding:10px!important}.wordmark{font-size:27px}.brand{gap:9px}}
