@charset "UTF-8";
:root{--paper:#f5f2eb;--ink:#363a30;--muted:#707368;--line:#d8d8cc;--accent:#77664c;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:5px}img{display:block;width:100%;object-fit:cover}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-.045em;line-height:1.08}h1{font-size:clamp(48px,5.6vw,88px)}h2{font-size:clamp(36px,3.6vw,56px)}h3{font-family:var(--serif);font-size:28px;line-height:1.18;letter-spacing:-.025em}p{color:var(--muted)}p+p{margin-top:18px}em{font-weight:400;color:var(--accent)}.header{max-width:1600px;margin:auto;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font:48px/.95 var(--serif);letter-spacing:-3px}.brand span{display:block;font:8px/1 Arial,sans-serif;letter-spacing:2px;margin-top:12px}.header nav{display:flex;align-items:center;gap:36px;font-size:13px}.header nav a{padding:10px 0}.header nav a:hover,.text-link:hover{color:var(--accent)}.nav-contact{border-bottom:1px solid var(--ink)}.nav-contact span{margin-left:30px}.menu-button{display:none}.hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:44% 56%;padding:38px 5% 0;gap:0}.hero-copy{padding:50px 8% 54px 0;display:flex;flex-direction:column}.eyebrow{font-size:10px;letter-spacing:2px;font-weight:600;color:var(--accent);margin-bottom:24px}.hero h1{margin:30px 0 45px}.hero-bottom{max-width:310px}.hero-bottom p{font-size:16px;margin-bottom:32px}.button{display:inline-flex;gap:35px;align-items:center;justify-content:space-between;background:var(--ink);color:var(--paper);font-size:12px;padding:17px 23px;border:1px solid var(--ink);cursor:pointer;transition:background .2s}.button:hover{background:#515743}.button span{font-size:20px;line-height:1}.hero-photo{position:relative;margin-left:12px}.hero-photo img{height:590px;object-position:46% 52%}.hero-photo figcaption{display:flex;justify-content:space-between;padding:10px 0;font-size:10px;color:var(--muted)}.hero-photo figcaption span{font-size:9px}.section{max-width:1440px;margin:0 auto;padding:95px 5%}.intro{display:grid;grid-template-columns:36% 64%;padding-top:105px;padding-bottom:100px}.intro>.eyebrow{padding-top:12px}.intro p:not(.eyebrow){max-width:580px;margin-top:28px}.offering{border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:75px}.offering p:not(.eyebrow){margin-top:25px}.detail-photo{margin-top:40px}.detail-photo img{height:265px}.detail-photo figcaption,.caption{font-size:10px;line-height:1.5;color:var(--muted);margin-top:10px}.service-list{padding-top:35px}.service-list a{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);padding:28px 0;font-family:var(--serif);font-size:35px;letter-spacing:-1px}.service-list a:first-child{border-top:1px solid var(--line)}.service-list a span:last-child{font-family:Arial;font-size:24px;color:var(--accent)}.service-list a:hover{padding-left:12px;background:#ebe8df}.material{display:grid;grid-template-columns:1fr 1fr;background:#e8e6dc;max-width:1600px;margin:auto}.material-copy{padding:75px 12%}.material-copy p:not(.eyebrow){margin-top:27px;max-width:430px}.material>img{height:100%;max-height:610px;object-position:15% 50%}.swatches{display:flex;gap:18px;margin-top:35px}.swatches span{font-size:10px;min-width:55px}.swatches span:before{content:'';display:block;background:var(--tone);width:55px;height:55px;border:1px solid #00000012;margin-bottom:10px}.material small{display:block;font-size:9px;color:var(--muted);margin-top:20px}.section-title{display:flex;align-items:end;justify-content:space-between;margin-bottom:45px;gap:25px}.text-link{font-size:12px;border-bottom:1px solid var(--ink);padding-bottom:7px;display:inline-block}.journal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:50px}.journal-item{border-top:1px solid var(--line);padding-top:24px}.journal-item .eyebrow{margin-bottom:16px}.journal-item>p:not(.eyebrow){font-size:14px;margin:20px 0;min-height:88px}.journal-item h3 a:hover{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}.contact-band{background:#3e463b;color:var(--paper);padding:70px 8%;display:grid;grid-template-columns:1fr 1fr;gap:10%;max-width:1600px;margin:auto}.contact-band p{color:#d4d7cb}.contact-band .eyebrow{color:#d4c2a3}.contact-band>div:last-child{align-self:center;max-width:400px}.contact-band .button{background:var(--paper);color:var(--ink);margin-top:30px}.contact-band .button:hover{background:#e0d9c9}footer{padding:55px 5% 20px;max-width:1600px;margin:auto}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:45px}.footer-top>p{font-size:14px}.footer-top>a:last-child{font-size:20px;font-family:var(--serif)}.footer-bottom{display:flex;justify-content:space-between;font-size:10px;color:var(--muted);border-top:1px solid var(--line);padding-top:20px}.mobile-contact{display:none}.skip{position:absolute;top:-100px;left:10px;background:var(--ink);color:white;padding:10px;z-index:30}.skip:focus{top:10px}.breadcrumb{max-width:1440px;margin:auto;padding:26px 5% 0;font-size:11px;color:var(--muted);display:flex;gap:15px}.page-title{max-width:1440px;padding:65px 5% 70px;margin:auto}.page-title h1{max-width:920px;font-size:clamp(44px,5vw,72px)}.page-title>p:not(.eyebrow){max-width:590px;font-size:18px;margin-top:30px}.page-title .button{margin-top:30px}.service-overview{padding-top:10px;display:grid;grid-template-columns:1fr 1fr;gap:50px 80px}.service-overview article{border-top:1px solid var(--line);padding-top:30px}.service-overview h2{font-size:38px}.service-overview p{margin:22px 0}.reading-layout{display:grid;grid-template-columns:240px 1fr;gap:10%;padding-top:15px}.reading-layout aside>a{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.prose{max-width:730px}.prose section{margin-bottom:45px}.prose h2{font-size:34px;margin-bottom:20px}.prose p{line-height:1.85}.prose details{border-top:1px solid var(--line);padding:20px 0}.prose summary{cursor:pointer;font-weight:600;font-size:15px}.prose details p{margin-top:15px}.related{border-top:1px solid var(--line);padding-top:28px;margin-top:35px}.related a{display:block;margin:10px 0;color:var(--accent);text-decoration:underline;text-underline-offset:5px}.article{max-width:800px;margin:auto;padding:65px 5% 95px;box-sizing:content-box}.article h1{font-size:clamp(42px,5vw,68px)}.article .lead{font-size:20px;margin-top:30px}.byline{font-size:12px;margin:25px 0 55px}.about{display:grid;grid-template-columns:1fr 1fr;gap:8%;padding-top:0}.about img{height:500px}.about .button{margin-top:25px}.contact-layout{display:grid;grid-template-columns:1fr 1fr;gap:12%;padding-top:10px}.contact-layout h2{font-size:34px;margin-bottom:25px}.big-phone{display:block;font-family:var(--serif);font-size:34px;margin-bottom:20px}.contact-layout .text-link{margin:20px 0}.muted{font-size:13px;max-width:300px}form{padding:35px;background:#eae7de}form label{display:block;font-size:12px;margin:20px 0}input,textarea,select{display:block;width:100%;border:1px solid #b7b8ab;border-radius:0;background:var(--paper);color:var(--ink);padding:12px;margin-top:7px;font-size:15px;resize:vertical}form .button{margin-top:20px;width:100%}a,button{touch-action:manipulation}
@media(min-width:1600px){.hero-photo img{height:660px}}
@media(max-width:1000px){.header nav{gap:22px}.hero-copy{padding-top:28px}.hero h1{font-size:64px;margin:25px 0 35px}.hero-photo img{height:520px}.hero-photo figcaption{display:block}.hero-photo figcaption span{display:block}.material-copy{padding:55px 8%}.material h2{font-size:40px}.service-list a{font-size:28px}.swatches{gap:10px}.journal-grid{gap:25px}.reading-layout{grid-template-columns:180px 1fr;gap:7%}}
@media(max-width:700px){body{font-size:15px}.header{padding:22px 6%;position:relative}.brand{font-size:42px}.brand span{font-size:7px;letter-spacing:1.6px}.menu-button{display:flex;gap:15px;align-items:center;background:none;border:0;color:var(--ink);font-size:13px;padding:10px 0}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:25px 6%;z-index:10;border-bottom:1px solid var(--line)}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:6px}.header nav a{padding:12px}.hero{display:flex;flex-direction:column;padding:0}.hero-copy{padding:38px 6% 36px}.eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:18px}.hero h1{font-size:62px;margin:8px 0 22px}.hero-bottom{max-width:100%}.hero-bottom p{max-width:320px;font-size:15px;margin-bottom:25px}.hero-photo{margin:0}.hero-photo img{height:380px;object-position:center}.hero-photo figcaption{display:flex;padding:9px 6%;font-size:9px;gap:10px}.hero-photo figcaption span{font-size:8px}.section{padding:58px 6%}.intro{display:block}.intro>.eyebrow{padding-top:0}.intro h2{font-size:37px}.intro p:not(.eyebrow){margin-top:22px}.offering{display:flex;flex-direction:column;gap:12px}.offering h2 br{display:none}.offering h2{font-size:38px}.offering .detail-photo{display:none}.offering p:not(.eyebrow){margin-top:20px}.service-list{padding-top:20px}.service-list a{font-size:29px;padding:21px 0}.material{display:flex;flex-direction:column}.material-copy{padding:55px 6%}.material h2{font-size:38px}.material>img{height:320px}.swatches{gap:24px}.section-title{display:block;margin-bottom:30px}.section-title .text-link{margin-top:23px}.journal-grid{grid-template-columns:1fr;gap:35px}.journal-item h3{font-size:29px}.journal-item>p:not(.eyebrow){min-height:0;margin:16px 0}.contact-band{grid-template-columns:1fr;gap:25px;padding:52px 6%}.contact-band h2{font-size:46px}.contact-band .button{margin-top:25px}footer{padding:45px 6% 95px}.footer-top{flex-direction:column;align-items:start;gap:30px;padding-bottom:32px}.footer-bottom{flex-wrap:wrap;gap:15px}.mobile-contact{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:12;background:var(--paper);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom)}.mobile-contact a{width:50%;text-align:center;padding:15px 5px;font-size:12px}.mobile-contact a:last-child{background:var(--ink);color:var(--paper)}.breadcrumb{padding:24px 6% 0;font-size:10px}.page-title{padding:38px 6% 45px}.page-title h1{font-size:46px}.page-title>p:not(.eyebrow){font-size:17px;margin-top:25px}.service-overview{grid-template-columns:1fr;gap:40px;padding-top:0}.service-overview h2{font-size:32px}.reading-layout{display:flex;flex-direction:column;padding-top:0}.reading-layout aside{order:2;margin-top:50px}.prose h2{font-size:30px}.article{padding:38px 6% 55px}.article h1{font-size:43px}.article .lead{font-size:18px}.about,.contact-layout{grid-template-columns:1fr;gap:38px;padding-top:0}.about img{height:330px}.contact-layout h2{font-size:30px}.big-phone{font-size:32px}form{padding:26px 22px}.swatches span{min-width:45px}.swatches span:before{width:45px;height:45px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.faq-answer{border-top:1px solid var(--line);padding-top:22px}.faq-answer h3{font:600 16px/1.5 Arial,sans-serif;letter-spacing:0;margin-bottom:12px}
.reading-contents{border-block:1px solid var(--line);padding:18px 0;margin:0 0 38px;background:transparent}
.contents-toggle{cursor:pointer;font-size:14px;font-weight:600;padding:4px 0;width:100%;display:flex;justify-content:space-between;background:transparent;color:var(--ink);border:0;text-align:left}
.reading-contents nav{padding-top:18px}.reading-contents ul{list-style:none;padding:0;margin:0;columns:2;column-gap:28px}
.reading-contents li{break-inside:avoid;margin:0 0 12px;font-size:13px;line-height:1.5}
.reading-contents a{display:inline-block;text-decoration:none!important}.reading-contents a:hover{text-decoration:underline!important}
.long-form{max-width:72ch;overflow-wrap:break-word}
.legal-links{display:flex;flex-wrap:wrap;gap:12px 26px;margin-bottom:24px;font-size:12px}.legal-links button,.cookie-links a{color:inherit}.legal-links button{border:0;padding:0;background:none;cursor:pointer;font:inherit}
.cookie-fab{position:fixed;bottom:18px;left:18px;z-index:25;width:46px;height:46px;border:1px solid var(--line);border-radius:50%;background:var(--paper);color:var(--ink);display:grid;place-items:center;box-shadow:0 3px 16px #0002;cursor:pointer}
.cookie-dialog{box-sizing:border-box;width:min(520px,calc(100% - 32px));max-height:85dvh;overflow:auto;padding:35px;border:1px solid var(--line);background:var(--paper);color:var(--ink);margin:auto;box-shadow:0 18px 70px #0003}
.cookie-dialog::backdrop{background:#17201b66}.cookie-dialog h2{font-size:38px;margin-bottom:22px}.cookie-dialog p{font-size:14px;line-height:1.7}.cookie-dialog .eyebrow{font-size:10px}.cookie-close{position:absolute;top:10px;right:13px;border:0;background:none;font-size:26px;color:var(--ink);cursor:pointer;padding:0 8px}
.cookie-dialog details{margin-top:20px;border-block:1px solid var(--line);padding:14px 0}.cookie-dialog summary{cursor:pointer;font-size:13px}.cookie-dialog details p{margin-top:12px;font-size:12px}
.cookie-links{display:flex;gap:20px;flex-wrap:wrap;margin:22px 0}.cookie-links a{font-size:12px;text-decoration:underline;text-underline-offset:3px}
.cookie-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px}.cookie-actions button{font-size:13px;background:var(--ink);color:var(--paper);border:1px solid var(--ink);padding:13px 10px;cursor:pointer}.cookie-actions button:hover{background:#515743}.cookie-status{margin-top:14px!important;font-size:12px!important}.cookie-status:empty{display:none}
@media(max-width:700px){.cookie-fab{bottom:calc(74px + env(safe-area-inset-bottom));left:12px}.cookie-dialog{padding:30px 22px}.cookie-dialog h2{font-size:33px}}
.long-form h2{margin:52px 0 23px;scroll-margin-top:24px;font-size:clamp(28px,3vw,38px);line-height:1.2}
.long-form h2:first-child{margin-top:0}.long-form h3{margin:32px 0 14px;font-size:24px;line-height:1.35;scroll-margin-top:24px}
.long-form p{margin:0 0 20px;line-height:1.85}.long-form a{text-decoration:underline;text-underline-offset:3px}
.long-form ul{padding-left:22px;margin:24px 0;color:var(--muted)}.long-form li{margin:0 0 12px;line-height:1.75}
@media(max-width:700px){.reading-contents ul{columns:1}.long-form h2{margin-top:40px}.long-form p{font-size:16px;line-height:1.8}}

.company-details{border-top:1px solid #ffffff30;padding:24px 0;max-width:850px;font-size:13px;line-height:1.7;overflow-wrap:anywhere}.company-details p{margin:0 0 8px}.company-details a{color:inherit}
