:root{--ink:#2A1E18;--paper:#FCF4E3;--pale:#FFFAF0;--gray:#F2E8D8;--muted:#71604F;--line:rgba(22,22,18,.2);--gutter:clamp(22px,5.25vw,92px);--width:1680px;--ease:cubic-bezier(.22,.7,.18,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Geologica,Arial,sans-serif;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased}img{display:block;max-width:100%;height:auto}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}::selection{background:#A38252;color:var(--ink)}.visually-hidden{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:fixed;z-index:100;top:8px;left:8px;padding:12px 18px;background:#fff;transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}:focus-visible{outline:2px solid #563728;outline-offset:4px}
.utility-bar{height:30px;display:flex;justify-content:space-between;align-items:center;padding-inline:var(--gutter);border-bottom:1px solid var(--line);font-size:10px;line-height:1;letter-spacing:.015em}.utility-bar p{margin:0}.utility-bar>div{height:100%;display:flex;align-items:center}.utility-bar a{height:100%;display:flex;align-items:center;padding-inline:clamp(12px,2.2vw,30px);border-left:1px solid var(--line)}.utility-bar a:last-child{margin-right:calc(var(--gutter)*-1);border-right:1px solid var(--line)}.utility-bar a:hover,.main-nav a:hover{opacity:.62}.main-nav-wrap{height:76px;padding-inline:var(--gutter);display:grid;grid-template-columns:minmax(125px,1fr) auto minmax(180px,1fr);align-items:center;gap:32px;background:var(--paper)}.brand{display:block;width:clamp(120px,13.5vw,182px)}.brand img{width:100%;height:auto}.main-nav{display:flex;align-items:center;gap:clamp(20px,3.1vw,50px);font-size:15px}.main-nav a{display:flex;align-items:center;gap:12px;white-space:nowrap;transition:opacity .2s}.main-nav a span{font-size:13px}.nav-cta{justify-self:end;display:inline-flex;min-height:44px;align-items:center;gap:22px;padding:0 22px;border:1px solid var(--ink);border-radius:99px;font-size:13px;white-space:nowrap;transition:background .2s,color .2s}.nav-cta:hover{background:var(--ink);color:var(--paper)}.menu-toggle{display:none}
.hero{position:relative;isolation:isolate;overflow:hidden;background:var(--paper)}.hero__stage{height:min(740px,calc(100svh - 106px));min-height:570px;max-height:800px;position:relative;margin-inline:auto;overflow:hidden}.hero__wordmark{position:absolute;left:50%;top:10%;width:min(88%,1460px);transform:translateX(-50%);mix-blend-mode:multiply}.hero__table{position:absolute;z-index:2;right:24%;bottom:-2.5%;width:clamp(540px,58vw,940px);max-height:86%;object-fit:contain;filter:drop-shadow(0 24px 16px rgba(44,35,24,.14));animation:table-arrive .95s var(--ease) both}.hero__copy{position:absolute;z-index:3;left:var(--gutter);bottom:13%;width:min(25vw,340px)}.hero__copy p{font-size:12px;letter-spacing:.14em;margin:0 0 14px}.pill{min-height:44px;display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:0 18px;border-radius:99px;font-size:13px;transition:transform .2s var(--ease),background .2s,color .2s}.pill:hover{transform:translateY(-2px)}.pill--dark{background:var(--ink);color:#FFFAF0}.pill--dark:hover{background:#563728}.hero-card{position:absolute;z-index:3;top:48%;right:var(--gutter);transform:translateY(-50%);width:clamp(140px,15vw,205px);padding:7px;border:1.5px solid var(--ink);border-radius:15px;background:var(--paper);box-shadow:0 5px 18px #2A1E1815;transition:transform .35s var(--ease)}.hero-card:hover{transform:translateY(calc(-50% - 5px))}.hero-card img{aspect-ratio:1.12;object-fit:cover;border-radius:8px}.hero-card span{display:flex;justify-content:space-between;align-items:center;padding:9px 5px 5px;font-size:11px}.hero-card b{font-size:15px;font-weight:400}.hero-pager{min-height:59px;position:absolute;z-index:4;bottom:0;left:0;right:0;display:flex;align-items:center;gap:clamp(16px,3vw,42px);padding-inline:var(--gutter);border-top:1px solid rgba(22,22,18,.34);background:rgba(245,234,214,.92);backdrop-filter:blur(12px);font-size:10px;letter-spacing:.055em}.hero-pager a{height:58px;display:flex;align-items:center;gap:8px;white-space:nowrap;opacity:.64}.hero-pager a:hover,.hero-pager a:first-of-type{opacity:1}.hero-pager a b{font-size:10px}.hero-pager__arrows{padding-right:15px;border-right:1px solid var(--line);font-size:17px}.hero-pager__down{margin-left:auto;width:28px;height:28px!important;justify-content:center;border:1px solid var(--line);border-radius:50%;font-size:15px;opacity:1!important}
.eyebrow{font-size:10px;font-weight:500;letter-spacing:.14em;line-height:1.4;margin:0 0 22px}.section-lines{position:relative}.section-lines:before,.section-lines:after{position:absolute;top:0;bottom:0;width:1px;background:var(--line);content:"";pointer-events:none}.section-lines:before{left:var(--gutter)}.section-lines:after{right:var(--gutter)}.mission{padding:clamp(82px,10vw,150px) calc(var(--gutter) + 5.6vw) clamp(88px,10vw,146px)}.mission>.eyebrow{margin-bottom:36px}.mission__body{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(48px,9vw,150px);align-items:start}.mission h2,.projects h2,.collection h2,.focus h2,.contact-band h2,.made h2{margin:0;font-size:clamp(46px,7vw,104px);font-weight:300;letter-spacing:-.075em;line-height:.98}.mission__body>div{max-width:580px;padding-top:12px}.mission__body>div>p{max-width:560px}.mission__lead{margin:0 0 20px;font-size:clamp(19px,2.15vw,29px);font-weight:300;line-height:1.35;letter-spacing:-.035em}.text-link{display:inline-flex;align-items:center;gap:24px;margin-top:16px;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:12px;font-weight:500}.text-link span{font-size:16px}.text-link:hover{opacity:.62}
.made{min-height:620px;display:grid;grid-template-columns:1.08fr .92fr;background:var(--ink);color:var(--paper)}.made__image{position:relative;min-height:620px;overflow:hidden}.made__image:after{position:absolute;inset:35% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.45));content:""}.made__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.75)}.made__image span{position:absolute;z-index:1;bottom:24px;left:var(--gutter);font-size:10px;letter-spacing:.14em}.made__copy{max-width:710px;padding:clamp(60px,8vw,126px) clamp(36px,8vw,135px) clamp(60px,8vw,126px) clamp(40px,7vw,110px)}.made__copy .eyebrow{color:#D9CBB4}.made h2{font-size:clamp(56px,7vw,104px)}.made__copy>p:not(.eyebrow){max-width:480px;margin:30px 0 22px;color:#E7DCC9;font-size:15px}.text-link--light{border-color:#A38252}
.projects{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(50px,8vw,128px);align-items:center;padding:clamp(90px,10vw,148px) calc(var(--gutter) + 5.5vw)}.projects h2{font-size:clamp(54px,6.5vw,92px)}.projects__intro{max-width:450px;margin:28px 0 34px}.project-list{border-top:1px solid var(--line)}.project-list a{min-height:57px;display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);font-size:13px;transition:padding .22s var(--ease)}.project-list a:hover{padding-inline:10px}.project-list a span{font-size:17px}.projects__image{position:relative;display:block;overflow:hidden;min-height:480px;background:#A38252}.projects__image img{width:100%;height:100%;min-height:480px;object-fit:cover;transition:transform .7s var(--ease)}.projects__image:hover img{transform:scale(1.035)}.projects__image>span{position:absolute;right:18px;bottom:18px;display:flex;align-items:center;gap:20px;padding:13px 17px;background:var(--paper);font-size:10px;letter-spacing:.05em}.projects__image b{font-size:15px;font-weight:400}
.collection{display:grid;grid-template-columns:.78fr 1.22fr;gap:clamp(52px,8vw,130px);padding:clamp(88px,10vw,146px) calc(var(--gutter) + 5.5vw);background:#F5EAD6}.collection__heading{max-width:460px}.collection h2{font-size:clamp(52px,6.2vw,88px)}.collection__heading>p:last-child{max-width:365px;margin-top:24px}.category-list{align-self:center;border-top:1px solid var(--line)}.category-list>a{min-height:95px;display:grid;grid-template-columns:36px 1.2fr .85fr 28px;align-items:center;gap:20px;border-bottom:1px solid var(--line);transition:padding .22s var(--ease),background .2s}.category-list>a:hover{padding-inline:12px;background:#FCF4E366}.category-list__number,.category-list__detail{font-size:10px;color:var(--muted);letter-spacing:.04em}.category-list__name{font-size:clamp(18px,2.1vw,27px);font-weight:300;letter-spacing:-.04em}.category-list__arrow{font-size:20px;text-align:right}
.duo{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:12px;background:var(--paper)}.duo-card{min-height:570px;position:relative;isolation:isolate;overflow:hidden;background:#222}.duo-card--workshop>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.duo-card--workshop:hover>img{transform:scale(1.04)}.duo-card__shade{position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.05),rgba(0,0,0,.65))}.duo-card__text{position:absolute;left:clamp(28px,5vw,76px);bottom:clamp(38px,5vw,76px);right:clamp(28px,5vw,76px);display:flex;flex-direction:column;align-items:flex-start;color:var(--paper)}.duo-card__text small{font-size:10px;letter-spacing:.15em}.duo-card__text strong{display:block;margin:24px 0;font-size:clamp(42px,5.2vw,75px);font-weight:300;letter-spacing:-.075em;line-height:.98}.duo-card__text em{font-style:normal;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:12px}.duo-card--method{background:#D9CBB4;color:var(--ink)}.duo-card--method .duo-card__text{bottom:auto;top:clamp(44px,7vw,100px);max-width:600px}.duo-card--method .duo-card__text p{max-width:400px;margin:0 0 28px;font-size:15px}.duo-card--method .duo-card__text a{padding-bottom:6px;border-bottom:1px solid;font-size:12px}.duo-card__index{position:absolute;right:clamp(28px,5vw,76px);bottom:clamp(25px,4vw,56px);font-size:10px;letter-spacing:.12em}
.focus{padding:clamp(90px,10vw,145px) calc(var(--gutter) + 5.5vw)}.focus__heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.focus h2{font-size:clamp(55px,6.3vw,90px)}.focus__heading .text-link{margin-bottom:9px}.product-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.product-card{display:block;min-width:0}.product-card__image{position:relative;aspect-ratio:1.22;overflow:hidden;background:#FCF4E3}.product-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .65s var(--ease)}.product-card:hover .product-card__image img{transform:scale(1.035)}.product-card__image>span{position:absolute;left:13px;top:13px;padding:6px 9px;background:#FCF4E3d9;font-size:10px}.product-card__caption{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:12px 14px;border:1px solid var(--ink);border-top:0}.product-card__caption h3{margin:0 0 4px;font-size:15px;font-weight:500}.product-card__caption p{margin:0;color:var(--muted);font-size:11px}.product-card__caption>b{font-size:18px;font-weight:400}.product-card:hover .product-card__caption{background:var(--ink);color:var(--paper)}.product-card:hover .product-card__caption p{color:#D9CBB4}
.contact-band{display:grid;grid-template-columns:1.1fr .9fr;align-items:end;gap:50px;padding:clamp(65px,8vw,108px) calc(var(--gutter) + 5.5vw);background:#F0E7D8}.contact-band .eyebrow{margin-bottom:20px}.contact-band h2{font-size:clamp(48px,6.5vw,92px)}.contact-band>div:last-child{max-width:440px;padding-bottom:4px}.contact-band>div:last-child>p{margin:0 0 23px}.site-footer{padding:74px var(--gutter) 0;background:#2A1E18;color:var(--paper)}.footer-top{max-width:var(--width);margin:auto;display:grid;grid-template-columns:1.8fr 1fr 1.15fr 1.15fr;gap:clamp(35px,6vw,100px);padding-bottom:68px}.footer-brand{display:flex;align-items:center;gap:23px;align-self:start}.footer-brand img{width:148px;filter:invert(1);mix-blend-mode:screen}.footer-brand span{font-size:11px;line-height:1.5;color:#D9CBB4}.footer-col{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-col h2{margin:0 0 11px;color:#D9CBB4;font-size:9px;font-weight:500;letter-spacing:.14em}.footer-col a{font-size:12px}.footer-col a:hover,.footer-bottom a:hover{opacity:.6}.footer-contact-link{padding-bottom:7px;border-bottom:1px solid #71604F}.footer-bottom{min-height:49px;max-width:var(--width);margin:auto;display:flex;justify-content:space-between;align-items:center;gap:20px;border-top:1px solid #ffffff35;color:#D9CBB4;font-size:9px;letter-spacing:.08em}.footer-bottom a{color:var(--paper);font-size:11px;letter-spacing:0}
[data-reveal]{opacity:1;transform:none}.has-motion [data-reveal]{opacity:0;transform:translateY(20px);transition:opacity .65s var(--ease),transform .65s var(--ease)}.has-motion [data-reveal].is-visible{opacity:1;transform:translateY(0)}@keyframes table-arrive{from{opacity:0;transform:translateY(26px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:1050px){.main-nav-wrap{grid-template-columns:150px 1fr auto;gap:20px}.main-nav{gap:22px}.nav-cta{padding-inline:15px}.hero__table{right:21%;width:65vw}.hero-card{width:145px}.mission{padding-inline:calc(var(--gutter) + 2vw)}.mission__body{gap:50px}.made{grid-template-columns:1fr 1fr}.made__copy{padding-inline:clamp(34px,5vw,70px)}.projects,.collection{padding-inline:calc(var(--gutter) + 2vw);gap:55px}.projects__image,.projects__image img{min-height:410px}.duo-card{min-height:480px}.duo-card__text strong{font-size:clamp(42px,5.5vw,65px)}.footer-top{grid-template-columns:1.5fr 1fr 1fr 1fr;gap:30px}}
@media(max-width:760px){html{scroll-padding-top:72px}.utility-bar{height:27px;font-size:9px}.utility-bar>div a{padding-inline:10px}.main-nav-wrap{position:relative;height:69px;grid-template-columns:1fr auto auto;gap:12px}.brand{width:128px}.menu-toggle{display:flex;align-items:center;gap:10px;min-height:44px;padding:0 8px;border:0;background:none;font-size:10px;text-transform:uppercase;letter-spacing:.08em}.menu-toggle i,.menu-toggle i:after{display:block;width:22px;height:1px;background:currentColor}.menu-toggle i{position:relative}.menu-toggle i:after{position:absolute;top:6px;content:""}.menu-toggle[aria-expanded=true] i{transform:rotate(45deg)}.menu-toggle[aria-expanded=true] i:after{top:0;transform:rotate(-90deg)}.main-nav{display:none;position:absolute;z-index:20;top:100%;left:0;right:0;padding:14px var(--gutter) 22px;background:var(--paper);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.main-nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.main-nav a{min-height:48px;justify-content:space-between;border-bottom:1px solid var(--line)}.nav-cta{min-height:39px;padding-inline:12px;gap:10px;font-size:10px}.hero__stage{height:calc(100svh - 96px);min-height:580px;max-height:720px}.hero__wordmark{top:18%;width:110%;max-width:none;left:52%}.hero__table{width:min(92vw,650px);right:9%;bottom:13%;max-height:64%}.hero-card{top:55%;right:5%;width:110px;padding:5px;border-radius:11px}.hero-card img{aspect-ratio:1}.hero-card span{padding:6px 3px 3px;font-size:9px}.hero__copy{left:var(--gutter);bottom:12%;width:56%;}.hero__copy p{font-size:9px;line-height:1.4;letter-spacing:.11em}.pill{min-height:40px;padding-inline:14px;gap:18px;font-size:11px}.hero-pager{min-height:50px;gap:clamp(13px,4vw,23px);padding-inline:var(--gutter);overflow:auto}.hero-pager a{height:49px;font-size:8px}.hero-pager__arrows{display:none}.hero-pager__down{display:none!important}.mission{padding:70px calc(var(--gutter) + 5px) 74px}.mission>.eyebrow{margin-bottom:23px}.mission__body{grid-template-columns:1fr;gap:24px}.mission h2,.projects h2,.collection h2,.focus h2{font-size:clamp(47px,12vw,74px)}.mission__body>div{padding-top:0}.mission__lead{font-size:21px}.made{grid-template-columns:1fr}.made__image{min-height:62vw;max-height:470px}.made__copy{padding:54px var(--gutter) 64px}.made h2{font-size:clamp(58px,13vw,84px)}.projects{grid-template-columns:1fr;gap:32px;padding:70px calc(var(--gutter) + 4px)}.projects__intro{margin:18px 0 22px}.projects__image,.projects__image img{min-height:70vw;max-height:520px}.collection{grid-template-columns:1fr;gap:26px;padding:68px calc(var(--gutter) + 4px)}.collection h2{font-size:clamp(48px,12vw,72px)}.collection__heading>p:last-child{margin-top:15px}.category-list>a{min-height:78px;grid-template-columns:28px 1fr 24px;gap:9px}.category-list__detail{display:none}.category-list__name{font-size:18px}.duo{grid-template-columns:1fr;gap:9px;padding:9px}.duo-card{min-height:440px}.duo-card--method{min-height:380px}.duo-card__text strong{font-size:clamp(48px,12vw,70px)}.focus{padding:70px calc(var(--gutter) + 4px)}.focus__heading{align-items:flex-start;margin-bottom:25px}.focus h2{font-size:58px}.focus__heading .text-link{margin-top:6px;font-size:10px;gap:9px}.product-grid{grid-template-columns:1fr;gap:20px}.product-card__image{aspect-ratio:1.2}.product-card__caption{min-height:70px}.contact-band{grid-template-columns:1fr;gap:24px;padding:58px calc(var(--gutter) + 4px)}.contact-band h2{font-size:clamp(48px,11vw,72px)}.contact-band>div:last-child{max-width:none}.site-footer{padding:50px var(--gutter) 0}.footer-top{grid-template-columns:1fr 1fr;gap:32px 20px;padding-bottom:42px}.footer-brand{grid-column:1/-1}.footer-brand img{width:130px}.footer-col h2{font-size:8px}.footer-col a{font-size:11px}.footer-bottom{min-height:56px;flex-wrap:wrap;justify-content:space-between;padding-block:13px;font-size:8px}.footer-bottom>span:last-child{display:none}}
@media(max-width:390px){.utility-bar p{max-width:45%;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.utility-bar>div a:first-child{display:none}.main-nav-wrap{gap:5px}.brand{width:112px}.nav-cta{padding-inline:9px;font-size:9px}.hero__stage{min-height:540px}.hero__table{right:4%;width:98vw;bottom:15%}.hero-card{width:94px;right:4%}.hero__copy{width:66%;bottom:11%}.hero-pager{gap:12px;padding-inline:16px}.hero-pager a{font-size:7px}.hero-pager a b{font-size:8px}.category-list__name{font-size:16px}.footer-bottom{font-size:7px}}
@media(max-width:390px){.main-nav-wrap{grid-template-columns:minmax(0,1fr) auto auto}.nav-cta{width:36px;min-width:36px;justify-content:center;padding:0;font-size:0}.nav-cta span{font-size:15px}.utility-bar>div a:last-child{padding-inline:8px;font-size:0}.utility-bar>div a:last-child span{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.has-motion [data-reveal]{opacity:1;transform:none}}

.page-intro{padding:clamp(78px,10vw,145px) calc(var(--gutter) + 5.5vw) 28px}.page-intro>.eyebrow{margin-bottom:28px}.page-intro__row{display:grid;grid-template-columns:1.08fr .92fr;align-items:end;gap:clamp(40px,8vw,130px);padding-bottom:clamp(52px,7vw,96px)}.page-intro h1{margin:0;font-size:clamp(70px,11.5vw,164px);font-weight:300;letter-spacing:-.09em;line-height:.82}.page-intro__row>p{max-width:500px;margin:0 0 5px;font-size:clamp(16px,1.7vw,22px);font-weight:300;line-height:1.45}.page-intro__meta{display:flex;justify-content:space-between;gap:20px;padding-top:13px;border-top:1px solid var(--line);font-size:9px;letter-spacing:.12em;color:var(--muted)}.catalog-section{padding:35px calc(var(--gutter) + 5.5vw) 120px}.catalog-controls{display:grid;grid-template-columns:1fr 230px auto;gap:12px;align-items:center;margin-bottom:20px}.search-field,.filter-field{min-height:50px;display:flex;align-items:center;gap:12px;padding:0 15px;border:1px solid var(--line)}.search-field input,.filter-field select{width:100%;height:48px;border:0;outline:0;background:transparent;color:var(--ink);font:inherit;font-size:12px}.search-field b{font-size:23px;font-weight:300}.filter-field select{cursor:pointer}.catalog-controls>p{min-width:100px;text-align:right;font-size:11px;color:var(--muted)}.catalog-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.catalog-card{min-width:0}.catalog-card__open{width:100%;display:block;padding:0;border:1px solid var(--line);background:transparent;text-align:left;cursor:pointer}.catalog-card__open:hover{background:var(--ink);color:var(--paper)}.catalog-card__image{position:relative;display:block;aspect-ratio:1.16;background:#F2E7D5;overflow:hidden}.catalog-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .6s var(--ease)}.catalog-card__open:hover img{transform:scale(1.035)}.catalog-card__image i{position:absolute;left:12px;top:12px;padding:5px 8px;background:#FCF4E3de;color:var(--ink);font-size:10px;font-style:normal}.catalog-card__caption{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:12px;padding:12px 14px}.catalog-card__caption strong,.catalog-card__caption small{display:block}.catalog-card__caption strong{font-size:14px;font-weight:500}.catalog-card__caption small{margin-top:4px;font-size:10px;color:var(--muted)}.catalog-card__open:hover .catalog-card__caption small{color:#D9CBB4}.catalog-card__caption>b{font-size:18px;font-weight:400}.catalog-empty{padding:50px 0;text-align:center}.catalog-empty[hidden]{display:none}.catalog-empty h2{font-size:32px;font-weight:300}.product-dialog{width:min(1040px,calc(100vw - 28px));max-width:none;max-height:calc(100svh - 28px);padding:0;border:0;background:var(--paper);color:var(--ink)}.product-dialog::backdrop{background:#2A1E18db;backdrop-filter:blur(3px)}.dialog-close{position:absolute;z-index:1;top:12px;right:12px;width:42px;height:42px;border:1px solid var(--line);border-radius:50%;background:var(--paper);font-size:27px;line-height:1;cursor:pointer}.product-dialog__layout{display:grid;grid-template-columns:1fr 1fr;min-height:560px}.product-dialog__layout>img{width:100%;height:100%;min-height:560px;max-height:calc(100svh - 28px);object-fit:cover;background:#F2E9D7}.product-dialog__copy{align-self:center;padding:clamp(28px,5vw,65px)}.product-dialog__copy .eyebrow{color:var(--muted)}.product-dialog__copy h2{margin:0 0 24px;font-size:clamp(38px,5vw,66px);font-weight:300;letter-spacing:-.07em;line-height:1}.product-dialog dl{margin:0 0 25px}.product-dialog dl>div{padding:14px 0;border-top:1px solid var(--line)}.product-dialog dt{margin-bottom:5px;color:var(--muted);font-size:10px;text-transform:uppercase;letter-spacing:.1em}.product-dialog dd{margin:0;font-size:13px;line-height:1.5}.dialog-note{margin:18px 0 0;color:var(--muted);font-size:10px}.story-feature{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:clamp(42px,8vw,125px);padding:35px calc(var(--gutter) + 5.5vw) 120px}.story-feature>img{width:100%;aspect-ratio:1.2;object-fit:cover}.story-feature>div{max-width:520px}.story-feature h2,.process-heading h2,.contact-layout h2{margin:0;font-size:clamp(50px,7vw,100px);font-weight:300;letter-spacing:-.075em;line-height:.97}.story-feature>div>p:not(.eyebrow){max-width:440px;margin-top:28px}.process-section{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(45px,8vw,130px);padding:clamp(78px,9vw,130px) calc(var(--gutter) + 5.5vw);background:#F5EAD6}.process-heading{align-self:start}.process-steps{display:grid;grid-template-columns:1fr 1fr;gap:0 25px}.process-steps article{min-height:185px;padding:14px 0 24px;border-top:1px solid var(--line)}.process-steps article>span{font-size:10px;color:var(--muted)}.process-steps h3{margin:24px 0 8px;font-size:20px;font-weight:400;letter-spacing:-.035em}.process-steps p{max-width:290px;margin:0;font-size:12px;color:#71604F}.project-mosaic{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:10px var(--gutter) clamp(80px,10vw,140px)}.project-tile{position:relative;isolation:isolate;min-height:410px;overflow:hidden;background:#222}.project-tile--wide{grid-column:span 2;min-height:620px}.project-tile>img{position:absolute;z-index:-2;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s var(--ease)}.project-tile:hover>img{transform:scale(1.035)}.project-tile:after{position:absolute;z-index:-1;inset:30% 0 0;background:linear-gradient(transparent,#000a);content:""}.project-tile>div{position:absolute;left:clamp(24px,4vw,60px);bottom:clamp(28px,4vw,56px);color:var(--paper)}.project-tile>div>span{font-size:9px;letter-spacing:.14em}.project-tile h2{margin:14px 0;font-size:clamp(34px,5vw,68px);font-weight:300;letter-spacing:-.065em;line-height:.98}.project-tile a{display:inline-block;padding-bottom:5px;border-bottom:1px solid;font-size:11px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:clamp(50px,9vw,145px);padding:45px calc(var(--gutter) + 5.5vw) clamp(80px,10vw,145px)}.contact-layout__intro{max-width:470px}.contact-layout__intro>p:last-child{margin-top:26px;font-size:14px}.inquiry-form{display:grid;gap:18px}.inquiry-form label{display:grid;gap:9px;font-size:11px}.inquiry-form input,.inquiry-form textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:0;background:transparent;color:var(--ink);font:inherit;font-size:13px;resize:vertical}.inquiry-form input{height:49px}.inquiry-form .pill{justify-self:start;border:0;cursor:pointer}.form-status{margin:0;color:var(--muted);font-size:10px}.contact-photo{position:relative;height:min(50vw,580px);min-height:330px;overflow:hidden}.contact-photo>img{width:100%;height:100%;object-fit:cover}.contact-photo>div{position:absolute;left:var(--gutter);right:var(--gutter);bottom:18px;display:flex;justify-content:space-between;color:#fff;font-size:9px;letter-spacing:.12em;text-shadow:0 1px 8px #000}
@media(max-width:760px){.page-intro{padding:60px calc(var(--gutter) + 4px) 22px}.page-intro__row{grid-template-columns:1fr;gap:23px;padding-bottom:40px}.page-intro h1{font-size:clamp(68px,17vw,112px)}.page-intro__row>p{font-size:16px}.page-intro__meta{font-size:7px;letter-spacing:.08em}.catalog-section{padding:26px calc(var(--gutter) + 4px) 75px}.catalog-controls{grid-template-columns:1fr auto;gap:9px}.search-field{grid-column:1/-1}.filter-field{min-width:0}.catalog-controls>p{min-width:70px}.catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.catalog-card__caption{min-height:69px;padding:9px}.catalog-card__caption strong{font-size:11px}.catalog-card__caption small{font-size:8px;line-height:1.3}.product-dialog__layout{grid-template-columns:1fr}.product-dialog__layout>img{height:42vh;min-height:250px;max-height:400px}.product-dialog__copy{padding:28px 24px 34px}.product-dialog__copy h2{font-size:44px}.story-feature{grid-template-columns:1fr;gap:32px;padding:25px calc(var(--gutter) + 4px) 75px}.story-feature>img{aspect-ratio:1.3}.story-feature h2,.process-heading h2,.contact-layout h2{font-size:clamp(50px,12vw,76px)}.process-section{grid-template-columns:1fr;gap:32px;padding:65px calc(var(--gutter) + 4px)}.process-steps{gap:0 14px}.process-steps article{min-height:178px}.process-steps h3{font-size:16px}.process-steps p{font-size:10px}.project-mosaic{gap:8px;padding:8px var(--gutter) 75px}.project-tile{min-height:320px}.project-tile--wide{min-height:450px}.project-tile>div{left:20px;right:15px;bottom:23px}.project-tile h2{font-size:clamp(30px,8vw,48px)}.contact-layout{grid-template-columns:1fr;gap:32px;padding:25px calc(var(--gutter) + 4px) 70px}.contact-photo{height:65vw;min-height:260px}.contact-photo>div{font-size:7px}}
@media(max-width:420px){.catalog-grid{grid-template-columns:1fr}.catalog-card__image{aspect-ratio:1.2}.catalog-controls{grid-template-columns:1fr}.catalog-controls>p{text-align:left}.process-steps{grid-template-columns:1fr}.process-steps article{min-height:145px}.project-tile{min-height:280px}.project-tile--wide{min-height:370px}.project-tile h2{font-size:34px}.contact-photo>div{gap:16px}.contact-photo>div span:last-child{text-align:right}}

@media(min-width:761px){.hero__wordmark{top:3%;width:min(92%,1520px)}.hero__table{right:24%;bottom:-9%;width:clamp(500px,51vw,830px)}.mission h2{font-size:clamp(60px,6.2vw,90px)}}

/* Reference-matched header and Woodcraft hero: small source mark, typeset wordmark, foreground furniture. */
.brand{width:52px;height:52px;display:flex;align-items:center}.brand img{width:100%;height:100%;object-fit:contain}
.hero__wordmark{z-index:1;left:50%;top:12%;width:100%;margin:0;transform:translateX(-50%);text-align:center;font-size:clamp(112px,23vw,440px);font-weight:700;line-height:.82;letter-spacing:-.085em;white-space:nowrap;color:#2A1E18;mix-blend-mode:normal}
.hero__table{left:50%;right:auto;bottom:-8%;width:clamp(600px,70vw,1320px);max-height:90%;transform:translateX(-50%)}
.mission{padding-top:clamp(70px,7.2vw,105px);padding-bottom:clamp(70px,7.2vw,105px)}.mission h2{font-size:clamp(68px,7.3vw,112px)}
.collection{padding-top:clamp(70px,7.2vw,105px);padding-bottom:clamp(70px,7.2vw,105px)}.projects{padding-top:clamp(76px,7.8vw,112px);padding-bottom:clamp(76px,7.8vw,112px)}.focus{padding-top:clamp(68px,7vw,100px);padding-bottom:clamp(68px,7vw,100px)}
@media(max-width:760px){.brand{width:43px;height:43px}.hero__wordmark{top:19%;width:100%;font-size:clamp(58px,19.5vw,104px);letter-spacing:-.08em}.hero__table{left:50%;right:auto;bottom:14%;width:112vw;max-height:68%;transform:translateX(-50%)}.mission{padding-top:58px;padding-bottom:62px}.mission h2{font-size:clamp(64px,16vw,98px)}.collection,.projects,.focus{padding-top:62px;padding-bottom:64px}}
@media(max-width:390px){.brand{width:39px;height:39px}.hero__wordmark{font-size:clamp(54px,19vw,74px)}.hero__table{width:115vw;bottom:24%}.hero__copy{bottom:11%}}
@media(min-width:761px){.hero__wordmark{top:11%}.hero__table{width:clamp(660px,70vw,1400px);bottom:-9%}}
@keyframes table-arrive{from{opacity:0;transform:translate(-50%,26px)}to{opacity:1;transform:translate(-50%,0)}}

/* DVO page rhythm: ruled editorial panels, horizontal category rail, dark company block. */
.dvo-mission{min-height:350px;display:grid;grid-template-columns:1fr 2fr 1fr;grid-template-rows:auto 1fr;column-gap:5vw;padding:54px var(--gutter) 58px}
.dvo-mission>.eyebrow{grid-column:1/2;grid-row:1;margin:0}
.dvo-mission__copy{grid-column:1/3;grid-row:2;max-width:850px;align-self:center;padding-top:20px}
.dvo-mission__copy p{margin:0 0 18px;font-size:clamp(20px,2.05vw,27px);line-height:1.38;font-weight:300;letter-spacing:-.035em}
.dvo-mission__copy p+p{max-width:750px;font-size:clamp(15px,1.45vw,19px);line-height:1.52}
.dvo-mission__rule{position:absolute;top:42px;bottom:42px;left:66.65%;width:1px;background:var(--line)}
.dvo-triptych{display:grid;grid-template-columns:1fr 1.04fr 1fr;min-height:395px;gap:0;background:#F5EAD6}
.dvo-triptych__intro{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(28px,4vw,58px);background:#F5EAD6}
.dvo-triptych__intro h2{margin:0;font-size:clamp(38px,4vw,58px);font-weight:400;letter-spacing:-.075em;line-height:.98}
.dvo-triptych__intro>p:not(.eyebrow){max-width:350px;margin:20px 0;font-size:13px;line-height:1.55}
.dvo-triptych__dark{position:relative;display:flex;flex-direction:column;justify-content:space-between;min-height:395px;overflow:hidden;padding:clamp(22px,3vw,42px);background:#2A1E18;color:#FFFAF0}
.dvo-triptych__dark:before{position:absolute;inset:0;background:linear-gradient(180deg,#2A1E1855,transparent 36%,#14130f99);content:""}
.dvo-triptych__dark img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.79;transition:transform .7s var(--ease)}
.dvo-triptych__dark:hover img{transform:scale(1.035)}
.dvo-triptych__dark .eyebrow,.dvo-triptych__dark>b{position:relative;z-index:1}
.dvo-triptych__dark>b{font-size:clamp(22px,2.5vw,34px);line-height:1.08;font-weight:400;letter-spacing:-.04em}
.dvo-triptych__product{display:flex;flex-direction:column;justify-content:center;padding:clamp(22px,3vw,42px);background:#FCF4E3}
.dvo-triptych__product img{width:100%;height:250px;object-fit:cover;background:#EEE4D3}
.dvo-triptych__product>span{display:flex;justify-content:space-between;align-items:center;padding-top:13px;font-size:13px}
.dvo-triptych__product i{font-size:19px;font-style:normal}
.outline-link{display:inline-flex;align-items:center;justify-content:space-between;gap:22px;min-height:39px;padding:0 12px;border:1px solid currentColor;font-size:10px;letter-spacing:.04em;transition:background .2s,color .2s}
.outline-link:hover{background:var(--ink);color:var(--paper)}.outline-link--light:hover{background:var(--paper);color:var(--ink)}
.dvo-categories{padding:clamp(54px,6vw,82px) var(--gutter) 70px;background:#F5EAD6}
.dvo-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;margin-bottom:28px}
.dvo-section-head h2,.dvo-method h2,.dvo-news h2{margin:0;font-size:clamp(35px,4vw,56px);font-weight:400;letter-spacing:-.065em;line-height:1.02}
.dvo-section-head .eyebrow{margin-bottom:13px}
.dvo-slider-controls{display:flex;gap:8px;padding-bottom:2px}
.dvo-slider-controls button{width:38px;height:38px;border:1px solid var(--ink);border-radius:50%;background:transparent;font-size:17px;cursor:pointer;transition:background .2s,color .2s}
.dvo-slider-controls button:hover{background:var(--ink);color:var(--paper)}
.dvo-category-track{display:grid;grid-auto-columns:calc((100% - 42px)/4);grid-auto-flow:column;gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding-bottom:5px}
.dvo-category-track::-webkit-scrollbar{display:none}
.dvo-category-card{display:flex;flex-direction:column;min-width:0;scroll-snap-align:start}
.dvo-category-card img{width:100%;aspect-ratio:1.52;object-fit:cover;background:#EEE4D3;transition:filter .3s,transform .6s var(--ease)}
.dvo-category-card:hover img{filter:saturate(.88);transform:scale(1.015)}
.dvo-category-card strong{margin-top:13px;font-size:15px;font-weight:500}
.dvo-category-card p{margin:4px 0 12px;color:#71604F;font-size:10px;line-height:1.4}
.dvo-category-card>span{display:flex;justify-content:space-between;align-items:center;min-height:32px;margin-top:auto;padding:0 9px;border:1px solid var(--line);font-size:8px;letter-spacing:.08em}
.dvo-category-card>span b{font-size:14px;font-weight:400}
.dvo-company{display:grid;grid-template-columns:.78fr 1.22fr;min-height:465px;background:#2A1E18;color:#FCF4E3}
.dvo-company__copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(40px,6vw,85px) clamp(28px,5.2vw,75px)}
.dvo-company__copy .eyebrow{color:#D9CBB4}
.dvo-company h2{margin:0;font-size:clamp(45px,5vw,70px);line-height:.98;font-weight:400;letter-spacing:-.075em}
.dvo-company__copy>p:not(.eyebrow){max-width:390px;margin:20px 0 23px;color:#E7DCC9;font-size:13px;line-height:1.55}
.dvo-company>img{width:100%;height:100%;min-height:465px;object-fit:cover}
.dvo-method{display:grid;grid-template-columns:.86fr 1.14fr 1.45fr;min-height:360px;background:#EEE4D3}
.dvo-method__title,.dvo-method__copy{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;padding:clamp(30px,4vw,58px)}
.dvo-method__title{background:#E7DCC9}
.dvo-method__title .eyebrow{margin-bottom:15px}
.dvo-method__title h2{font-size:clamp(30px,3.25vw,46px)}
.dvo-method__copy{align-items:flex-start;gap:13px}
.dvo-method__copy p{max-width:360px;margin:0;font-size:13px;line-height:1.55}
.dvo-method__copy .outline-link{margin-top:6px}
.dvo-method>img{width:100%;height:100%;min-height:360px;object-fit:cover}
.dvo-news{display:grid;grid-template-columns:.75fr 2.25fr;gap:clamp(35px,6vw,82px);padding:clamp(55px,6.5vw,90px) var(--gutter);border-top:1px solid var(--line);background:var(--paper)}
.dvo-news__intro{display:flex;flex-direction:column;align-items:flex-start}
.dvo-news__intro .eyebrow{margin-bottom:15px}
.dvo-news__intro>p:not(.eyebrow){max-width:250px;margin:18px 0 20px;font-size:12px;line-height:1.55}
.dvo-news__cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.dvo-news-card{display:flex;flex-direction:column;min-width:0}
.dvo-news-card>img{width:100%;aspect-ratio:1.28;object-fit:cover;background:#EEE4D3;transition:filter .25s}
.dvo-news-card:hover>img{filter:contrast(1.06)}
.dvo-news-card>small{margin-top:13px;font-size:8px;color:#71604F;letter-spacing:.05em}
.dvo-news-card>strong{margin-top:8px;font-size:15px;line-height:1.35;font-weight:500}
.dvo-news-card>span{margin-top:12px;padding-top:8px;border-top:1px solid var(--line);font-size:9px}
.dvo-contact{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:#EEE4D3}
.dvo-contact>div{min-height:235px;padding:clamp(26px,3.6vw,50px);border-right:1px solid var(--line)}
.dvo-contact>div:last-child{border-right:0}
.dvo-contact h2{margin:0;font-size:clamp(34px,4vw,54px);font-weight:400;letter-spacing:-.06em;line-height:1}
.dvo-contact>div>p:not(.eyebrow){max-width:340px;margin:15px 0 22px;font-size:12px;line-height:1.5}
.dvo-contact .eyebrow{margin-bottom:13px}
.dvo-footer{padding:54px var(--gutter) 0;background:#F8F0E1;color:var(--ink)}
.dvo-footer .footer-top{grid-template-columns:1.65fr 1fr 1fr 1fr;gap:clamp(20px,4vw,55px);padding-bottom:43px}
.dvo-footer .footer-brand img{filter:none;mix-blend-mode:normal;width:115px}
.dvo-footer .footer-brand span,.dvo-footer .footer-col h2{color:#71604F}
.dvo-footer .footer-col a{font-size:11px}
.dvo-footer .footer-bottom{border-color:var(--line);color:#71604F}
.dvo-footer .footer-bottom a{color:var(--ink)}
@media(max-width:900px){.dvo-category-track{grid-auto-columns:calc((100% - 28px)/3)}.dvo-method{grid-template-columns:.9fr 1.1fr}.dvo-method>img{grid-column:1/-1;height:290px;min-height:0}.dvo-company{grid-template-columns:.9fr 1.1fr}.dvo-news{grid-template-columns:.62fr 1.38fr;gap:28px}.dvo-news__cards{gap:9px}.dvo-triptych{grid-template-columns:1fr 1fr}.dvo-triptych__intro{min-height:335px}.dvo-triptych__product{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:24px;padding:24px 5vw}.dvo-triptych__product img{height:210px}.dvo-triptych__product>span{padding:0}}
@media(max-width:650px){.dvo-mission{min-height:0;display:block;padding:42px var(--gutter) 44px}.dvo-mission__rule{display:none}.dvo-mission>.eyebrow{margin-bottom:23px}.dvo-mission__copy{padding:0}.dvo-mission__copy p{font-size:20px}.dvo-mission__copy p+p{font-size:14px}.dvo-triptych{grid-template-columns:1fr}.dvo-triptych__intro{min-height:300px;padding:30px var(--gutter)}.dvo-triptych__dark{min-height:320px}.dvo-triptych__product{grid-column:auto;display:flex;padding:25px var(--gutter)}.dvo-triptych__product img{height:auto;max-height:320px;aspect-ratio:1.25}.dvo-triptych__product>span{width:100%;padding-top:12px}.dvo-categories{padding:43px var(--gutter) 48px}.dvo-section-head{margin-bottom:20px}.dvo-section-head h2,.dvo-method h2,.dvo-news h2{font-size:36px}.dvo-category-track{grid-auto-columns:minmax(0,1fr);grid-auto-columns:78%;gap:10px;margin-right:calc(var(--gutter)*-1);padding-right:var(--gutter);scroll-padding-left:0}.dvo-category-card img{aspect-ratio:1.42}.dvo-company{grid-template-columns:1fr}.dvo-company__copy{padding:42px var(--gutter)}.dvo-company>img{height:60vw;min-height:255px;max-height:390px}.dvo-method{grid-template-columns:1fr}.dvo-method__title,.dvo-method__copy{padding:34px var(--gutter)}.dvo-method>img{grid-column:auto;height:62vw;min-height:240px;max-height:370px}.dvo-news{grid-template-columns:1fr;gap:23px;padding:44px var(--gutter)}.dvo-news__intro{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:18px}.dvo-news__intro .eyebrow,.dvo-news__intro h2,.dvo-news__intro>p{grid-column:1}.dvo-news__intro .outline-link{grid-column:2;grid-row:2/span 2;align-self:end;margin-bottom:2px}.dvo-news__intro>p:not(.eyebrow){margin:9px 0 0}.dvo-news__cards{grid-template-columns:1fr;gap:18px}.dvo-news-card{display:grid;grid-template-columns:42% 1fr;grid-template-rows:auto 1fr auto;column-gap:13px;align-items:start}.dvo-news-card>img{grid-column:1;grid-row:1/4;aspect-ratio:1.08;height:100%;max-height:145px}.dvo-news-card>small{grid-column:2;grid-row:1;margin-top:2px;font-size:7px}.dvo-news-card>strong{grid-column:2;grid-row:2;margin-top:6px;font-size:13px}.dvo-news-card>span{grid-column:2;grid-row:3;margin-top:6px;padding-top:6px;font-size:8px}.dvo-contact{grid-template-columns:1fr}.dvo-contact>div{min-height:0;padding:27px var(--gutter);border-right:0;border-bottom:1px solid var(--line)}.dvo-contact>div:last-child{border-bottom:0}.dvo-contact>div>p:not(.eyebrow){margin:10px 0 15px}.dvo-footer{padding:38px var(--gutter) 0}.dvo-footer .footer-top{grid-template-columns:1fr 1fr;gap:28px 16px}.dvo-footer .footer-brand{grid-column:1/-1}}
@media(max-width:360px){.dvo-section-head{gap:4px}.dvo-section-head h2{font-size:30px}.dvo-slider-controls{gap:4px}.dvo-slider-controls button{width:30px;height:30px}}
@media (min-width:761px) and (max-width:820px){.main-nav-wrap{grid-template-columns:52px minmax(0,1fr) auto;gap:12px}.brand{width:42px;height:42px}.main-nav{gap:clamp(9px,1.55vw,14px);font-size:12px}.main-nav a{gap:5px}.nav-cta{min-height:40px;padding-inline:12px;gap:9px;font-size:11px}}
@media (min-width:761px) and (max-width:820px){.hero__table{left:calc(50% + 100px);right:auto}.hero__copy{width:clamp(160px,20vw,190px)}.hero__copy .pill{gap:10px;padding-inline:12px;font-size:11px}}
@media(max-width:760px){.hero-card{width:clamp(128px,30vw,178px);padding:7px;border-radius:13px}.hero-card img{aspect-ratio:1.12}.hero-card span{font-size:10px;padding:8px 4px 4px}.hero__copy .pill{min-height:46px;padding-inline:17px;gap:22px;font-size:12px}}
@media(max-width:390px){.utility-bar>div{display:none}.nav-cta{width:auto;min-width:0;justify-content:center;padding-inline:9px;gap:5px;font-size:9px}.nav-cta span{font-size:10px}.hero-card{width:clamp(104px,32vw,124px);right:4%;padding:5px}.hero-card span{font-size:9px;padding:6px 3px 3px}.hero__copy .pill{min-height:42px;padding-inline:14px;gap:14px;font-size:11px}}
.product-dialog__layout{min-height:0}.product-dialog__media{display:flex;min-width:0;min-height:0;flex-direction:column;background:#F2E9D7}.product-dialog__media>img{width:100%;height:min(72svh,760px);min-height:400px;max-height:calc(100svh - 98px);flex:1;object-fit:contain}.product-dialog__thumbs{display:flex;gap:8px;overflow-x:auto;padding:10px 12px;background:var(--paper);scrollbar-width:thin}.product-dialog__thumbs:empty{display:none}.product-dialog__thumbs button{flex:0 0 72px;width:72px;height:58px;padding:2px;border:1px solid var(--line);background:#F2E9D7;cursor:pointer}.product-dialog__thumbs button[aria-pressed="true"]{border:2px solid var(--ink)}.product-dialog__thumbs img{width:100%;height:100%;object-fit:cover}.product-dialog__copy{min-width:0}
@media(max-width:760px){.product-dialog__media>img{height:42svh;min-height:250px;max-height:400px}.product-dialog__thumbs button{flex-basis:62px;width:62px;height:50px}}

/* Deliberate motion: one entrance sequence, scroll reveals, responsive menu, and image feedback. */
.hero__wordmark{animation:hero-wordmark-in .85s cubic-bezier(.2,.72,.2,1) both}
.hero__copy{animation:hero-copy-in .7s .2s cubic-bezier(.2,.72,.2,1) both}
.hero-card{animation:hero-card-in .72s .34s cubic-bezier(.2,.72,.2,1) both}
.hero-pager{animation:hero-pager-in .55s .3s ease-out both}
@keyframes hero-wordmark-in{from{opacity:0;transform:translate(-50%,18px)}to{opacity:1;transform:translate(-50%,0)}}
@keyframes hero-copy-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@keyframes hero-card-in{from{opacity:0;transform:translate(12px,calc(-50% + 8px))}to{opacity:1;transform:translate(0,-50%)}}
@keyframes hero-pager-in{from{opacity:0}to{opacity:1}}
.catalog-card{animation:catalog-card-in .48s calc(var(--card-index,0)*35ms) cubic-bezier(.2,.72,.2,1) both}
@keyframes catalog-card-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
.catalog-card__open{transition:background .25s,color .25s,border-color .25s,transform .25s var(--ease)}
.catalog-card__open:hover{transform:translateY(-3px)}
.catalog-card__caption>b,.hero-card b,.category-list__arrow{transition:transform .25s var(--ease)}
.catalog-card__open:hover .catalog-card__caption>b,.hero-card:hover b,.category-list>a:hover .category-list__arrow{transform:translate(3px,-3px)}
.product-dialog[open]{animation:dialog-in .32s cubic-bezier(.2,.72,.2,1) both}
.product-dialog[open]::backdrop{animation:backdrop-in .25s ease-out both}
@keyframes dialog-in{from{opacity:0;transform:translateY(15px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes backdrop-in{from{opacity:0}to{opacity:1}}
.product-dialog__media>img{transition:opacity .18s ease}
.product-dialog__media>img.is-changing{opacity:.38}
@media(max-width:760px){.main-nav{display:flex!important;flex-direction:column;align-items:stretch;gap:0;visibility:hidden;opacity:0;transform:translateY(-8px);pointer-events:none;transition:opacity .22s ease,transform .22s var(--ease),visibility .22s}.main-nav.is-open{visibility:visible;opacity:1;transform:translateY(0);pointer-events:auto}.menu-toggle i,.menu-toggle i:after{transition:transform .22s var(--ease),top .22s var(--ease)}}
@media(prefers-reduced-motion:reduce){.hero__wordmark,.hero__copy,.hero-card,.hero-pager,.catalog-card,.product-dialog[open],.product-dialog[open]::backdrop{animation:none!important}}

/* Keep the workshop process heading compact beside its numbered steps. */
@media(min-width:1101px){.process-section{grid-template-columns:1fr 1fr;gap:clamp(32px,4vw,58px)}.process-heading h2{font-size:clamp(42px,3.5vw,52px)}}
@media(min-width:761px) and (max-width:1100px){.process-section{grid-template-columns:1fr;gap:28px}.process-heading h2{font-size:clamp(50px,7vw,72px)}}
@media(min-width:761px) and (max-width:820px){.site-footer:not(.dvo-footer) .footer-top{grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.site-footer:not(.dvo-footer) .footer-brand{grid-column:1/-1;display:flex;align-items:center;gap:22px}}


/* Mobile and tablet alignment repair */
html,body{width:100%;max-width:100%;overflow-x:clip}
.site-header,.main-nav-wrap{min-width:0;max-width:100%}
@media (min-width:761px) and (max-width:1100px){
  .main-nav-wrap{grid-template-columns:42px minmax(0,1fr) auto;gap:clamp(8px,1.3vw,14px);padding-inline:clamp(16px,4vw,32px)}
  .brand{width:42px;height:42px}
  .main-nav{min-width:0;justify-content:center;gap:clamp(8px,1.25vw,14px);font-size:clamp(11px,1.25vw,13px)}
  .main-nav a{gap:4px}
  .nav-cta{min-height:40px;padding-inline:clamp(9px,1.35vw,14px);gap:8px;font-size:clamp(10px,1.1vw,12px)}
}
@media(max-width:760px){
  .main-nav-wrap{width:100%;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);gap:4px;padding-inline:clamp(12px,4vw,20px)}
  .brand{grid-column:1;justify-self:start;width:43px;height:43px}
  .menu-toggle{grid-column:2;justify-self:center;white-space:nowrap}
  .nav-cta{grid-column:3;justify-self:end;min-width:0}
  .main-nav{left:0;right:0;max-width:100vw}
  .hero,.hero__stage{width:100%;max-width:100vw}
  .hero__wordmark{left:50%;width:100%;max-width:100%;font-size:clamp(48px,16.8vw,92px);letter-spacing:-.085em}
  .hero__table{left:50%;right:auto;width:min(100vw,560px);max-width:100vw;bottom:20%;max-height:64%;transform:translateX(-50%)}
  .hero__copy{bottom:8%;width:min(64%,280px);z-index:4}
}
@media(max-width:390px){
  .main-nav-wrap{gap:2px;padding-inline:12px}
  .nav-cta{width:36px;min-width:36px;height:36px;justify-content:center;padding:0;font-size:0}
  .nav-cta span{font-size:15px}
  .hero__wordmark{font-size:clamp(45px,16.5vw,64px)}
  .hero__table{width:100vw;bottom:20%}
}

/* Keep the entire mobile hero and its CTA inside short first-screen viewports. */
@media(max-width:760px) and (max-height:700px){
  .hero__stage{height:calc(100svh - 68px);min-height:0;max-height:720px}
  .hero__wordmark{top:12%;font-size:clamp(45px,16.8vw,74px)}
  .hero__table{width:min(100vw,560px);bottom:24%;max-height:57%}
  .hero-card{top:47%}
  .hero__copy{bottom:60px;width:min(64%,280px)}
}
@media(max-width:760px) and (max-height:600px){
  .hero__wordmark{top:7%;font-size:clamp(42px,15vw,68px)}
  .hero__table{width:min(88vw,480px);bottom:26%;max-height:53%}
  .hero-card{top:42%;width:clamp(96px,25vw,112px)}
  .hero__copy{bottom:57px}
}

/* Brandbook alignment: Cormorant for display type, Times for reading text. */
:root{
  --ink:#2a1e18;
  --paper:#fcf4e3;
  --pale:#fffaf0;
  --gray:#f2e8d8;
  --muted:#71604f;
  --line:rgba(42,30,24,.2);
  --brown:#563728;
  --wood:#a38252;
  --olive:#77765a;
}
body{font-family:"Times New Roman",Times,serif;font-size:16px;line-height:1.58}
h1,h2,h3,.hero__wordmark{font-family:"Cormorant Garamond",Georgia,serif!important;letter-spacing:-.015em!important;line-height:1.08!important}
h1,h2,h3{font-weight:500}
.hero__wordmark{font-weight:600;line-height:.98!important;letter-spacing:-.025em!important}
.main-nav-wrap,.hero__stage{width:min(100%,calc(var(--width) + 2 * var(--gutter)));margin-inline:auto}
.main-nav-wrap{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}
.brand{justify-self:start;transform:translateX(-5px)}
.dvo-triptych__dark,.dvo-company{background-color:var(--ink)}
.dvo-triptych__product,.dvo-categories,.dvo-footer{background-color:var(--paper)}
.dvo-method{background-color:#eee4d3}
.dvo-method__title{position:relative;isolation:isolate;overflow:hidden;background-color:#f5ead6}
.dvo-method__title:before{position:absolute;z-index:-1;inset:0;background:url("assets/images/brand-pattern.webp") center/cover no-repeat;mix-blend-mode:multiply;opacity:.28;content:"";pointer-events:none}
.dvo-method__title>*{position:relative}
.dvo-category-card strong,.dvo-category-card p,.dvo-news-card,.dvo-contact,.catalog-card,.page-intro,.contact-layout,.process-section{font-family:"Times New Roman",Times,serif}
.eyebrow,.utility-bar,.hero-pager,.nav-cta,.main-nav,.pill,.outline-link,.catalog-controls,.catalog-card__caption small,.page-intro__meta,.footer-col h2,.footer-bottom{font-family:"Times New Roman",Times,serif}
.hero__copy p{line-height:1.45}
.dvo-mission__copy p,.dvo-triptych__intro>p:not(.eyebrow),.dvo-method__copy p,.dvo-company__copy>p:not(.eyebrow),.dvo-news__intro>p:not(.eyebrow),.dvo-contact>div>p:not(.eyebrow){line-height:1.62}
.mission__lead,.dvo-mission__copy p{line-height:1.48}
.dvo-triptych__intro h2,.dvo-company h2,.dvo-section-head h2,.dvo-method h2,.dvo-news h2,.dvo-contact h2{line-height:1.08}
@media(max-width:760px){.brand{transform:none}.main-nav-wrap{width:100%}.hero__stage{width:100%}}
@media(prefers-reduced-motion:reduce){.hero__wordmark,.hero__table,.hero__copy,.hero-card,.hero-pager,.catalog-card{animation:none!important}}
/* Keep project titles readable on changing wood and resin photographs. */
.project-tile:after{inset:0;background:linear-gradient(180deg,rgba(42,30,24,.2) 0%,rgba(42,30,24,.38) 40%,rgba(24,16,12,.78) 100%)}
.project-tile>div{text-shadow:0 2px 14px rgba(0,0,0,.42)}
.project-tile>div>span,.project-tile a{text-shadow:0 1px 8px rgba(0,0,0,.5)}
@media(max-width:650px){.project-mosaic{grid-template-columns:1fr;gap:10px}.project-tile,.project-tile--wide{grid-column:auto;min-height:clamp(380px,110vw,470px)}}
@media(max-width:420px){.project-tile,.project-tile--wide{min-height:clamp(360px,112vw,430px)}}
@media(min-width:761px){.page-intro__row{grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr)}.page-intro h1{font-size:clamp(64px,9vw,120px)}}


/* 2026-10-12: oversized live-edge hero asset, aligned to the supplied reference. */
.hero__wordmark{top:3%;width:100%;font-size:clamp(118px,17vw,330px);line-height:.78!important;letter-spacing:-.045em!important;text-align:center;white-space:nowrap}
.hero__table{left:auto;right:-3%;bottom:-8%;width:min(88vw,1650px);max-width:none;height:auto;max-height:110%;object-fit:contain;filter:drop-shadow(0 22px 18px rgba(44,35,24,.16));transform:none}
.contact-phone{display:inline-flex;align-items:center;margin-top:20px;padding-bottom:3px;border-bottom:1px solid var(--line);font-size:clamp(22px,2.7vw,30px);line-height:1.2;letter-spacing:.015em;transition:opacity .2s}
.contact-phone:hover{opacity:.65}
@media(max-width:760px){.hero__wordmark{top:13%;left:50%;width:max-content;max-width:none;font-size:clamp(54px,16.5vw,88px);line-height:.82!important;letter-spacing:-.06em!important}.hero__table{left:50%;right:auto;bottom:15%;width:min(140vw,760px);max-width:none;max-height:64%;transform:translateX(-50%)}}
@media(max-width:390px){.hero__wordmark{font-size:clamp(48px,16vw,64px)}.hero__table{width:min(142vw,600px);bottom:18%}}
@keyframes hero-slab-in{from{opacity:0}to{opacity:1}}
.hero__table{animation:hero-slab-in .95s var(--ease) both}

/* Desktop hero fills exactly one viewport while preserving the reference composition across aspect ratios. */
@media(min-width:761px){.hero__stage{height:min(1000px,calc(100svh - 76px));min-height:0;max-height:none}.hero__wordmark{top:3%;font-size:min(17vw,35svh,330px)}.hero__table{width:min(88vw,160svh,1650px);bottom:-8%}}

/* Desktop hero tracks the viewport height so the title, product and pager stay in one screen. */
@media(min-width:761px){.hero__stage{height:calc(100svh - 76px);min-height:0;max-height:none;container-type:size}.hero__wordmark{font-size:min(21.7vw,42svh,600px)}.hero__table{width:min(88vw,140cqh);bottom:-8%}}
@media(min-width:761px) and (max-height:740px){.hero__table{width:min(88vw,135cqh)}}
@media(min-width:761px) and (max-height:680px){.hero-card{top:58%}}
@media(min-width:761px) and (min-height:1000px){.hero__table{width:min(88vw,140cqh)}}

/* 2026-10-15: warm palette, consistent pattern, measured spacing and photo separation. */
:root{--gray:#f2e8d8;--line:rgba(42,30,24,.22)}
.dvo-triptych{background:#f5ead6}
.dvo-method{background:#eadcc7}
.dvo-method__title{background:#e4d2b9}
.dvo-method__title:before{opacity:.5;mix-blend-mode:multiply}
.process-section{position:relative;isolation:isolate;overflow:hidden;background:#563728;color:#fcf4e3}
.process-section:before{position:absolute;z-index:-1;inset:0;background:url("assets/images/brand-pattern-dark.webp") center/cover no-repeat;opacity:.45;mix-blend-mode:normal;content:"";pointer-events:none}
.process-section .eyebrow,.process-section article>span{color:#e5d3b8}
.process-section article{border-color:#ffffff38}
.process-section p{color:#e8dbc8}
.dvo-contact{background:#f2e7d5}
.dvo-contact>div:nth-child(2){position:relative;isolation:isolate;overflow:hidden;background:#2a1e18;color:#fcf4e3}
.dvo-contact>div:nth-child(2):before{position:absolute;z-index:-1;inset:0;background:url("assets/images/brand-pattern-dark.webp") center/cover no-repeat;opacity:.45;mix-blend-mode:normal;content:"";pointer-events:none}
.dvo-contact>div:nth-child(2) .eyebrow{color:#e5d3b8}
.dvo-contact>div:nth-child(2) .outline-link:hover{background:#fcf4e3;color:#2a1e18}
.dvo-contact>div{border-color:#56372835}
.dvo-footer{background:#2a1e18!important;color:#fcf4e3!important}
.dvo-footer .footer-brand img{filter:brightness(0) saturate(100%) invert(92%) sepia(12%) saturate(375%) hue-rotate(341deg) brightness(103%) contrast(92%);mix-blend-mode:normal}
.dvo-footer .footer-brand span,.dvo-footer .footer-col h2,.dvo-footer .footer-bottom{color:#e5d3b8}
.dvo-footer .footer-bottom{border-color:#ffffff38}
.dvo-footer .footer-bottom a{color:#fcf4e3}
.project-tile>div>span{font-size:11px;letter-spacing:.12em}
.page-intro{padding-top:clamp(48px,6vw,88px)}
@media(min-width:761px) and (max-width:820px){
  .hero__table{left:auto;right:-17%;width:min(70vw,112cqh);bottom:-5%;}
  .hero__copy{left:5.25vw;bottom:10%;width:220px;z-index:4}
  .hero__copy p{max-width:220px;font-size:11px;letter-spacing:.11em}
}
.footer-brand img{filter:brightness(0) saturate(100%) invert(92%) sepia(12%) saturate(375%) hue-rotate(341deg) brightness(103%) contrast(92%);mix-blend-mode:normal}
@media(min-width:761px) and (max-width:820px){.hero__table{right:-35%;width:min(94vw,145cqh);bottom:-6%}}
@media(min-width:761px) and (max-width:820px){.hero__table{right:-40%;width:min(103vw,145cqh);bottom:3%}}
.dvo-contact>div:nth-child(2):before{inset:-12%;background-size:180% auto;opacity:.45;mix-blend-mode:normal}
.dvo-contact>div:nth-child(2)>*{position:relative;z-index:1}
.dvo-contact>div:nth-child(2):before{opacity:.45;mix-blend-mode:normal}

/* 2026-10-15: walnut navigation from the supplied brand asset. */
.site-header{position:relative;z-index:30;background:#2a1e18 url("assets/images/nav-walnut.webp") center/cover no-repeat;color:#fcf4e3}
.main-nav-wrap{background:transparent}
.brand img{filter:brightness(0) saturate(100%) invert(92%) sepia(12%) saturate(375%) hue-rotate(341deg) brightness(103%) contrast(92%)}
.main-nav a:hover{opacity:.76}
.nav-cta{border-color:#e8d9c1;color:#fcf4e3;background:rgba(42,30,24,.22)}
.nav-cta:hover{background:#fcf4e3;color:#2a1e18}
.menu-toggle{color:#fcf4e3}
@media(max-width:760px){
  .main-nav{background:#2a1e18 url("assets/images/nav-walnut.webp") center/cover no-repeat;border-color:#e8d9c14d;color:#fcf4e3}
  .main-nav a{border-color:#e8d9c14d}
}
.home-page .site-header{background:var(--paper);color:var(--ink)}
.home-page .main-nav-wrap{background:var(--paper)}
.home-page .brand img{filter:none}
.home-page .nav-cta{border-color:var(--ink);color:var(--ink);background:transparent}
.home-page .nav-cta:hover{background:var(--ink);color:var(--paper)}
.home-page .menu-toggle{color:var(--ink)}
@media(max-width:760px){
  .home-page .main-nav{background:var(--paper);border-color:var(--line);color:var(--ink)}
  .home-page .main-nav a{border-color:var(--line)}
}
/* Project overlines stay readable over photographs and match the supplied 11–12 px reference. */
.project-tile>div>span{font-size:12px}

/* 2026-10-15: full-height walnut navigation with the soft irregular edge
   from the approved reference. The cream shape is an overlay, not a crop. */
body:not(.home-page) .site-header{height:clamp(116px,7.05vw,144px);isolation:isolate}
body:not(.home-page) .site-header::after{position:absolute;z-index:1;right:0;bottom:0;left:0;height:42px;content:"";pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 1440 48' preserveAspectRatio='none'%3E%3Cpath fill='%23FCF4E3' d='M0 20 C65 24 92 12 153 18 S247 35 315 26 S408 12 476 19 S566 33 637 25 S735 13 803 21 S898 36 968 27 S1057 11 1127 19 S1224 34 1290 26 S1380 17 1440 21 L1440 48 L0 48 Z'/%3E%3C/svg%3E");background-size:100% 100%;background-repeat:no-repeat}
body:not(.home-page) .site-header .main-nav-wrap{position:relative;z-index:2;height:100%}
@media(max-width:760px){body:not(.home-page) .site-header{height:92px}body:not(.home-page) .site-header::after{height:27px}}
.home-page .site-header{height:auto;isolation:auto}
.home-page .site-header::after{display:none}
