:root{--forest:#191918;--deep:#111110;--paper:#f4ecde;--ink:#22211f;--muted:#665b4e;--line:#d4c4ab;--gold:#c9aa7b;--mist:#e9ddc8;--sans:'Arial',Helvetica,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.7 var(--sans);-webkit-font-smoothing:antialiased}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:700;letter-spacing:-.055em;line-height:1.04}h1{font-size:clamp(3.3rem,6vw,6rem)}h2{font-size:clamp(2.3rem,4vw,4rem)}h3{font-size:1.6rem}em{font-family:Georgia,serif;font-weight:400;letter-spacing:-.04em}p{max-width:65ch}p+p{margin-top:1rem}a{color:inherit;text-decoration:none}button,input,textarea,select{font:inherit}button{cursor:pointer}img{display:block;max-width:100%;height:auto}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.eyebrow{font-size:12px;line-height:1.5;text-transform:uppercase;letter-spacing:.13em;font-weight:700;margin-bottom:22px;color:var(--muted)}.hometown{background:var(--forest);color:#e6d7bd;padding:8px 4%;display:flex;justify-content:space-between;font-size:12px;letter-spacing:.05em}.header{display:flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 4%;background:var(--paper);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:30}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:62px;height:62px;background:var(--forest);border-radius:50%;padding:3px}.brand>span{font-size:21px;font-weight:800;letter-spacing:-.035em;line-height:1}.brand small{display:block;font-size:10px;letter-spacing:.29em;margin-top:7px}.header nav{display:flex;align-items:center;gap:25px;font-size:13px;font-weight:600}.header nav a{white-space:nowrap;padding:10px 0}.header nav a[aria-current]{border-bottom:2px solid var(--forest)}.nav-cta{background:var(--forest);color:white;padding:13px 18px!important;border-radius:4px}.nav-cta .line-arrow{margin-left:12px}.menu-toggle{display:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;padding:16px 24px;min-height:54px;background:var(--forest);color:white;border:1px solid var(--forest);border-radius:4px;font-size:14px;font-weight:700;line-height:1.4}.button:hover,.nav-cta:hover{background:#39342e}.button.light{background:var(--gold);color:var(--deep);border-color:var(--gold)}.button.outline{background:transparent;color:var(--forest)}.text-link{display:inline-flex;align-items:center;gap:24px;padding:10px 0;border:0;border-bottom:1px solid currentColor;background:none;font-size:14px;font-weight:700}.line-arrow{display:inline-block;position:relative;width:22px;height:10px;flex:0 0 22px;vertical-align:middle;color:currentColor}.line-arrow:before{content:'';position:absolute;left:0;right:1px;top:5px;border-top:1px solid currentColor}.line-arrow:after{content:'';position:absolute;right:1px;top:1px;width:7px;height:7px;border-top:1px solid currentColor;border-right:1px solid currentColor;transform:rotate(45deg)}.skip{position:fixed;left:15px;top:-100px;background:white;padding:10px 20px;z-index:100}.skip:focus{top:10px}:focus-visible{outline:3px solid #a87e49;outline-offset:5px}.home-hero{display:grid;grid-template-columns:1fr 1.1fr;min-height:660px;background:var(--forest);color:var(--paper);padding:55px 4% 45px;gap:4%;align-items:center}.welcome-copy{padding:0 0 20px;position:relative}.hero-top .eyebrow{color:#ddc9a8;font-size:11px;margin-bottom:8px}.hero-top>span{display:inline-block;border:1px solid #8a765d;border-radius:30px;padding:7px 15px;font-size:12px;margin-bottom:35px;color:var(--gold)}.hero-content h1{font-size:clamp(3.1rem,5.5vw,5.7rem);line-height:1.02;letter-spacing:-.065em}.hero-content em{color:var(--gold)}.hero-bottom p{font-size:15px;color:#e0d0b6;margin:27px 0}.welcome-photo{align-self:stretch;display:flex;flex-direction:column;justify-content:center;position:relative;padding:18px 0}.welcome-photo img{width:100%;height:490px;object-fit:cover;border-radius:100px 5px 5px 5px;object-position:40% center}.welcome-photo figcaption{font-size:10px;letter-spacing:.15em;padding-top:18px;color:#d1bfa2}.trust-strip{background:var(--gold)}.trust-strip>.wrap{display:flex;justify-content:space-between;gap:20px}.trust-strip span{padding:18px 0;font-size:12px;font-weight:700}.intro{padding-block:85px;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:start}.intro h2{font-size:3.2rem}.intro>div:last-child{padding-top:38px}.intro p{color:var(--muted)}.intro .text-link{margin-top:18px}.craft-index{padding:40px;background:var(--mist);border-radius:8px}.craft-index>div{display:grid;grid-template-columns:repeat(4,1fr);gap:28px}.craft-index a{display:grid;grid-template-columns:25px 1fr;align-items:center;font-size:20px;font-weight:700;line-height:1.2}.craft-index img{grid-column:1/-1;width:100%;height:130px;object-fit:cover;margin-bottom:18px;border-radius:4px}.craft-index span{font-size:10px;color:var(--muted)}.craft-index small{grid-column:2;font-weight:400;font-size:12px;margin-top:8px;color:var(--muted)}.selected{padding-block:90px}.section-head{display:flex;justify-content:space-between;gap:25px;align-items:end;margin-bottom:35px}.editorial-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:25px}.project-image{overflow:hidden;position:relative;background:var(--mist);border-radius:5px}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.project-card:hover img{transform:scale(1.025)}.editorial-grid .project-image{height:320px}.editorial-grid .narrow{padding-top:55px}.editorial-grid .lower{padding-top:110px}.project-caption{display:flex;gap:13px;align-items:center;padding-top:18px}.project-caption .eyebrow{font-size:10px;margin-bottom:8px}.project-caption h3{font-size:21px;line-height:1.14;letter-spacing:-.035em}.project-no{font-size:12px;background:var(--mist);border-radius:50%;width:32px;height:32px;display:grid;place-items:center;flex-shrink:0}.project-arrow{margin-left:auto}.view-project{position:absolute;bottom:15px;right:15px;padding:7px 12px;background:var(--paper);font-size:12px;display:flex;align-items:center;gap:10px;opacity:0;transition:opacity .2s}.project-card a:hover .view-project,.project-card a:focus-visible .view-project{opacity:1}.brand-moment{background:var(--mist);padding-block:70px}.brand-moment>.wrap{display:grid;grid-template-columns:1fr 2fr;gap:20px 50px}.brand-moment p:not(.eyebrow){font-size:clamp(2.8rem,5.2vw,5rem);font-weight:700;line-height:1.05;letter-spacing:-.05em}.brand-moment p br{display:none}.brand-moment p em{color:#8a6e4d}.brand-note{grid-column:2;font-size:14px;margin-top:15px}.brand-note a{display:inline-flex;align-items:center;gap:20px;margin-top:15px;border-bottom:1px solid}.closing{display:grid;grid-template-columns:1fr auto;gap:20px 40px;align-items:center;padding-block:65px}.closing .eyebrow{grid-column:1/-1;margin:0}.closing h2{font-size:3.1rem}.closing h2 br{display:none}.closing .button{min-width:190px}footer{background:var(--deep);color:#e5d6bd;padding-block:10px;font-size:14px}.footer-top{display:grid;grid-template-columns:1fr 1fr;gap:45px;padding-block:45px}.footer-brand{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid #554b40;padding-bottom:30px}.footer-brand img{width:90px;height:90px}.footer-brand p{font-size:clamp(1.7rem,3vw,3rem);font-weight:700;line-height:1.12;letter-spacing:-.04em}.footer-top>div:nth-child(2){display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:8px 25px;max-width:430px}.footer-top h2{font-size:12px;letter-spacing:.12em;text-transform:uppercase;margin-bottom:18px;grid-column:1/-1;color:var(--gold)}.footer-top a{display:block;font-size:14px}.footer-top a:hover{text-decoration:underline}.footer-top>div:last-child a{padding-bottom:5px}.footer-top>div:last-child p{margin-top:12px}.contact-fax{display:block;font-size:12px;color:inherit;opacity:.8;margin-top:8px}.footer-bottom{display:flex;justify-content:space-between;gap:15px;border-top:1px solid #554b40;padding-block:20px;font-size:11px;color:#c7b598}.cab-cover{display:grid;grid-template-columns:.7fr 1fr;background:var(--forest);color:var(--paper);padding:55px 4%;gap:5%;align-items:center}.cab-heading.wrap,.room-detail.wrap{width:100%;margin:0}.cab-heading h1{font-size:4rem}.cab-heading .eyebrow{color:var(--gold)}.cab-heading>p:last-child{color:#ded0b9;margin-top:30px}.room-detail{display:grid;grid-template-columns:1fr .45fr;gap:15px;align-items:end}.room-detail>.room{grid-column:1/-1;width:100%;height:310px;object-fit:cover;border-radius:5px}.detail-inset{grid-column:2;margin-top:-75px;position:relative;border:7px solid var(--forest)}.detail-inset img{height:140px;width:100%;object-fit:cover}.detail-inset span{display:block;font-size:10px;margin-top:10px}.cab-services{padding-block:75px}.cab-services aside{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:45px}.cab-services aside>.eyebrow{grid-column:1/-1;margin:0}.service-rail{display:flex;flex-wrap:wrap;gap:10px;align-content:center;justify-content:end}.service-rail a{border:1px solid var(--line);padding:8px 13px;border-radius:25px;font-size:12px}.cab-services>div{display:grid;grid-template-columns:1fr 1fr;gap:30px 60px}.cab-services .lead{font-size:24px;line-height:1.35;font-weight:700}.cab-services>div>p{margin:0;color:var(--muted)}.service-copy{border-top:1px solid var(--line);padding-top:25px}.service-copy h3{margin-bottom:15px}.service-copy p{color:var(--muted)}.service-copy:last-child{grid-column:1/-1;max-width:650px}.dark-feature{background:var(--mist);padding-block:55px}.dark-feature>.wrap{display:grid;grid-template-columns:.7fr 1fr;gap:25px 6%;align-items:center}.dark-feature .eyebrow{grid-column:1/-1}.dark-feature .project-image{height:330px}.questions{padding-block:65px;display:grid;grid-template-columns:1fr 1.5fr;gap:6%;align-items:start}.questions h2{position:sticky;top:125px}.faqs details{background:var(--mist);border-radius:5px;margin-bottom:12px;padding:20px 24px}summary{display:flex;justify-content:space-between;gap:20px;cursor:pointer;font-weight:600;font-size:16px;list-style:none}summary::-webkit-details-marker{display:none}summary span{font-size:21px}details[open] summary span{transform:rotate(45deg)}details p{padding-top:18px;font-size:15px;color:var(--muted)}.object-hero{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center;padding-block:65px}.object-hero>div{order:2}.object-hero figure{order:1}.object-hero figure img{height:480px;width:100%;object-fit:cover;border-radius:5px 80px 5px 5px}.object-hero figcaption{font-size:11px;margin-top:15px;color:var(--muted)}.object-hero p:not(.eyebrow){color:var(--muted);margin-top:30px}.wood-chapters{display:grid;grid-template-columns:1fr 1fr;gap:30px}.wood-chapter{display:grid;grid-template-columns:35px 1fr;gap:20px;border:1px solid var(--line);padding:25px;border-radius:8px}.wood-chapter img{grid-column:1/-1;grid-row:1;height:220px;width:100%;object-fit:cover;border-radius:4px}.wood-chapter:first-child{grid-column:1/-1;grid-template-columns:35px 1fr 1.1fr;align-items:center;background:var(--forest);color:white}.wood-chapter:first-child img{grid-column:3;grid-row:1;height:320px}.wood-chapter h2{font-size:2rem;margin-bottom:20px}.wood-chapter p{font-size:15px}.wood-chapter .text-link{margin-top:20px}.chapter-number{font-size:12px;border-top:2px solid var(--gold);padding-top:10px}.showcase-intro{display:flex;align-items:center;justify-content:space-between;gap:50px;padding-block:60px}.showcase-intro h1{font-size:6rem}.showcase-intro h1 br{display:none}.showcase-intro>div:last-child{max-width:380px}.large-index{display:block;font-size:13px;letter-spacing:.1em;margin-bottom:20px}.showcase-intro p:not(.eyebrow){color:var(--muted)}.filters{display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--mist);padding:18px;border-radius:8px;margin-bottom:35px}.filters .eyebrow{margin:0 auto 0 0;font-size:10px}.filters button{background:transparent;border:0;border-radius:25px;padding:8px 14px;font-size:13px;color:var(--ink)}.filters button[aria-pressed=true]{background:var(--forest);color:white}.project-wall{display:grid;gap:35px}.project-wall .project-card>a{display:grid;grid-template-columns:1.6fr 1fr;align-items:stretch}.project-wall .project-image{height:390px;border-radius:7px 0 0 7px}.project-wall .project-caption{background:var(--mist);padding:35px;display:flex;flex-direction:column;align-items:start;justify-content:center;border-radius:0 7px 7px 0}.project-wall .project-caption h3{font-size:2.6rem}.project-wall .project-no{background:var(--forest);color:white;margin-bottom:30px}.project-wall .project-arrow{margin:20px 0 0}.project-wall .project-card:nth-child(even) .project-image{order:2;border-radius:0 7px 7px 0}.project-wall .project-card:nth-child(even) .project-caption{order:1;border-radius:7px 0 0 7px}.project-wall .project-card:nth-child(even)>a{grid-template-columns:1fr 1.6fr}.project-card[hidden]{display:none!important}.portfolio-note{font-size:12px;color:var(--muted);margin-top:30px}.case-title{padding-block:55px 35px}.case-title h1{max-width:1000px;font-size:4.5rem}.case-hero{position:relative;padding-inline:4%}.case-hero>img{width:100%;height:490px;object-fit:cover;border-radius:8px}.back-link{position:absolute;left:6%;bottom:25px;background:var(--paper);padding:10px 18px;border-radius:3px;font-size:13px}.case-story{padding-block:55px;display:grid;grid-template-columns:1fr 1fr;gap:8%}.case-story h2{font-size:2.4rem;line-height:1.15}.case-story>div:last-child>p{color:var(--muted)}dl{display:grid;grid-template-columns:110px 1fr;gap:15px;background:var(--mist);padding:25px;border-radius:5px;font-size:14px;margin:25px 0}dt{font-weight:700}dd{margin:0}.small-note{font-size:13px;color:var(--muted)}.case-gallery{display:flex;gap:25px}.zoom-image{flex:1;min-width:0;border:0;padding:0;position:relative;background:var(--mist);border-radius:5px;overflow:hidden}.zoom-image img{width:100%;max-height:650px;object-fit:contain}.zoom-image>span{position:absolute;bottom:15px;right:15px;background:var(--paper);padding:8px 14px;font-size:12px}.next-project{border-block:1px solid var(--line);padding-block:30px;margin-top:55px}.next-project a{display:flex;justify-content:space-between;align-items:center;gap:25px;font-size:2rem;font-weight:700;line-height:1.1;letter-spacing:-.04em}.family-cover{display:grid;grid-template-columns:1fr 1fr;background:var(--forest);color:white}.about-hero.wrap{width:100%;padding:55px 8%}.about-hero .eyebrow{color:var(--gold)}.about-hero h1{font-size:3.3rem}.about-hero h1 em{color:var(--gold)}.about-bottom{margin-top:35px}.about-number{display:block;font-size:65px;font-weight:700;line-height:1}.about-number small{display:block;font-size:10px;letter-spacing:.12em;margin:12px 0 25px}.about-bottom>p{font-size:15px;color:#d9c8ad}.about-panorama img{height:100%;width:100%;object-fit:cover}.about-story{padding-block:70px;display:grid;grid-template-columns:.8fr 1fr;gap:10%}.about-story p{color:var(--muted)}.about-story .text-link{margin-top:20px}.process-heading{padding-block:60px;text-align:center}.process-heading h1 br{display:none}.process-heading p{margin-inline:auto}.process-heading p:not(.eyebrow){margin-top:25px;color:var(--muted)}.measured-path{display:grid;grid-template-columns:repeat(4,1fr);gap:25px;padding-bottom:60px}.measured-path article{background:var(--mist);padding:25px;border-radius:6px;border-top:5px solid var(--forest)}.step-number{font-size:55px;line-height:1;font-weight:700;display:block;color:#a48a68;margin-bottom:35px}.measured-path .eyebrow{font-size:10px;min-height:30px}.measured-path h2{font-size:1.8rem;margin-bottom:20px}.measured-path p:not(.eyebrow){font-size:15px;color:var(--muted)}.prep{background:var(--forest);color:white;padding:40px;border-radius:8px}.prep .eyebrow{color:var(--gold)}.prep h2{font-size:2.6rem}.prep ul{display:grid;grid-template-columns:1fr 1fr;gap:15px 40px;margin-block:30px;padding-left:20px}.contact-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:5%;padding-block:60px;align-items:start}.contact-intro{background:var(--forest);color:white;padding:35px;border-radius:6px;position:sticky;top:115px}.contact-intro h1{font-size:3rem}.contact-intro .eyebrow{color:var(--gold)}.contact-intro>p{margin-top:25px;font-size:15px}.contact-details{margin-top:40px;border-top:1px solid #82715d;padding-top:25px}.contact-details h2{font-size:1.5rem;margin-bottom:15px}.contact-details a{display:block;font-size:14px;overflow-wrap:anywhere;margin-bottom:8px}.contact-details p{margin-top:15px;font-size:14px}.contact-details .small-note{color:#d9c8ae;font-size:13px}.brief-frame{padding:10px 0}.brief-frame h2{font-size:2.8rem;margin-bottom:20px}.brief-frame>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-bottom:25px}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}form label{display:block;font-size:13px;font-weight:600;margin-bottom:20px}form label small{font-weight:400;color:var(--muted)}input,select,textarea{display:block;width:100%;background:var(--mist);border:1px solid #bfae94;border-radius:4px;padding:12px;margin-top:8px;min-height:48px;font-size:16px;color:var(--ink)}textarea{resize:vertical}.photo-note{display:flex;gap:15px;background:var(--mist);padding:20px;border-radius:5px;margin-bottom:20px;font-size:14px}.photo-note>span{font-size:24px}.photo-note p{font-size:13px;color:var(--muted);margin-top:8px}form .button{width:100%;margin-top:22px}form .small-note a{text-decoration:underline}#form-status{font-size:14px;margin-top:15px}[hidden]{display:none!important}.legal{max-width:900px;padding-block:60px}.legal h1{font-size:3.8rem;margin-bottom:30px}.legal h2{font-size:1.8rem;margin:35px 0 20px}.legal a{text-decoration:underline}.not-found{padding-block:80px}.not-found p{margin-block:25px}.not-found .button{margin:10px 10px 10px 0}dialog{padding:55px 20px 20px;background:var(--deep);color:white;border:0;border-radius:5px;max-width:94vw;max-height:95svh;width:max-content}dialog::backdrop{background:#12100eea}dialog img{max-height:75svh;width:auto;object-fit:contain;margin:auto}dialog p{font-size:14px;margin-top:15px}.close-lightbox{position:absolute;right:15px;top:10px;color:white;background:none;border:1px solid #b4a085;padding:5px 12px}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(max-width:1100px){.header nav{gap:15px;font-size:12px}.brand>span{font-size:18px}.wrap{width:calc(100% - 60px)}.hero-content h1{font-size:4rem}.welcome-photo img{height:450px}.home-hero{min-height:610px}.cab-heading h1{font-size:3.2rem}.measured-path{grid-template-columns:1fr 1fr}.contact-intro{padding:25px}.contact-intro h1{font-size:2.7rem}.project-wall .project-caption h3{font-size:2.2rem}.about-hero h1{font-size:2.8rem}}
@media(max-width:950px){.menu-toggle{display:flex;gap:15px;background:var(--forest);color:white;border:0;padding:10px 15px;border-radius:4px;font-size:14px}.header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--paper);padding:15px 25px 30px;flex-direction:column;align-items:stretch;max-height:calc(100dvh - 95px);overflow:auto;gap:0;font-size:16px;border-bottom:1px solid var(--line)}.header nav.open{display:flex}.header nav>a{padding:13px 0;border-bottom:1px solid var(--line)}.header nav .nav-cta{margin-top:15px;text-align:center}.welcome-photo img{height:430px}.hero-content h1{font-size:3.3rem}.intro h2{font-size:2.6rem}.craft-index{padding:30px}.craft-index>div{gap:20px}.craft-index a{font-size:17px}.editorial-grid{grid-template-columns:1fr 1fr}.editorial-grid .lower{grid-column:1/-1;padding:0}.editorial-grid .lower .project-image{height:340px}.closing h2{font-size:2.5rem}.cab-cover{grid-template-columns:1fr 1fr}.room-detail>.room{height:380px}.room-detail{display:block}.detail-inset{width:50%;margin-left:auto}.contact-layout{grid-template-columns:1fr 1.3fr;gap:30px}.form-row{grid-template-columns:1fr;gap:0}.contact-details a{font-size:12px}.object-hero figure img{height:400px}}
@media(max-width:700px){.wrap{width:calc(100% - 36px)}.hometown{font-size:10px;padding:8px 18px;gap:15px}.header{padding:11px 18px;gap:15px}.brand img{width:48px;height:48px}.brand>span{font-size:17px}.brand small{font-size:8px}.home-hero{grid-template-columns:1fr;gap:25px;padding:35px 22px 25px;min-height:0}.hero-top .eyebrow{font-size:10px}.hero-top>span{margin-bottom:25px;font-size:11px}.hero-content h1{font-size:clamp(2.9rem,11vw,4.5rem)}.hero-bottom{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:23px}.hero-bottom p{font-size:13px;margin:0}.hero-bottom .button{padding:13px 18px;min-height:46px;font-size:13px}.welcome-copy{padding:0}.welcome-photo{padding:0}.welcome-photo img{height:260px;border-top-left-radius:55px;object-position:center}.welcome-photo figcaption{font-size:9px;padding-top:12px}.trust-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:0 12px}.trust-strip span{font-size:10px;padding:12px 0}.intro{grid-template-columns:1fr;gap:25px;padding-block:50px}.intro h2{font-size:2.6rem}.intro>div:last-child{padding:0}.eyebrow{font-size:10px;margin-bottom:18px}.craft-index{padding:23px}.craft-index>div{grid-template-columns:1fr 1fr;gap:25px 20px}.craft-index img{height:95px;margin-bottom:12px}.craft-index a{font-size:16px;grid-template-columns:20px 1fr}.craft-index small{font-size:10px}.selected{padding-block:55px}.section-head{display:block;margin-bottom:25px}.section-head h2{font-size:2.7rem}.section-head .text-link{margin-top:20px}.editorial-grid{gap:30px;grid-template-columns:1fr}.editorial-grid .narrow,.editorial-grid .lower{padding:0;grid-column:auto}.editorial-grid .project-image,.editorial-grid .lower .project-image{height:270px}.editorial-grid .narrow .project-image{height:330px}.project-caption h3{font-size:22px}.brand-moment{padding-block:45px}.brand-moment>.wrap{display:block}.brand-moment p:not(.eyebrow){font-size:2.8rem}.brand-note{margin-top:25px}.closing{display:block;padding-block:45px}.closing h2{font-size:2.5rem;margin:20px 0 25px}.closing .button{width:100%}.footer-top{grid-template-columns:1fr;gap:30px;padding-block:30px}.footer-brand{gap:20px;padding-bottom:25px}.footer-brand img{width:70px;height:70px}.footer-brand p{font-size:1.5rem}.footer-top>div:nth-child(2){max-width:none;gap:9px 25px}.footer-top>div:last-child{display:grid;grid-template-columns:1fr 1fr;gap:5px 15px;border-top:1px solid #554b40;padding-top:25px}.footer-top h2{font-size:11px;margin-bottom:12px}.footer-top>div:last-child a{font-size:12px}.footer-top>div:last-child a:nth-of-type(3){grid-column:1/-1;white-space:nowrap;font-size:14px;width:max-content}.footer-top>div:last-child p,.footer-top .contact-fax{grid-column:1/-1}.footer-top>div:last-child p{font-size:13px}.footer-bottom{font-size:10px}.footer-bottom>span:nth-child(2){display:none}.cab-cover{display:block;padding:35px 22px}.cab-heading h1{font-size:3.2rem}.cab-heading>p:last-child{font-size:15px;margin-top:20px}.room-detail{margin-top:30px!important}.room-detail>.room{height:270px}.detail-inset{margin-top:-60px;width:43%}.detail-inset img{height:100px}.cab-services{padding-block:45px}.cab-services aside{display:block}.cab-services aside h2{font-size:2.6rem;margin-top:20px}.service-rail{justify-content:start;margin-top:25px;gap:8px}.service-rail a{font-size:11px}.cab-services>div{grid-template-columns:1fr;gap:25px}.cab-services .lead{font-size:22px}.service-copy h3{font-size:1.7rem}.dark-feature{padding-block:40px}.dark-feature>.wrap{grid-template-columns:1fr;gap:20px}.dark-feature .eyebrow{margin:0}.dark-feature h2{font-size:2.6rem}.dark-feature .project-image{height:290px}.questions{grid-template-columns:1fr;gap:25px;padding-block:45px}.questions h2{position:static;font-size:2.7rem}.faqs details{padding:18px}.faqs summary{font-size:15px}.object-hero{display:flex;flex-direction:column;align-items:stretch;gap:30px;padding-block:40px}.object-hero>div{order:1}.object-hero figure{order:2}.object-hero h1{font-size:3.6rem}.object-hero h1 br{display:none}.object-hero figure img{height:350px;border-radius:5px 60px 5px 5px}.object-hero p:not(.eyebrow){margin-top:20px}.wood-chapters{grid-template-columns:1fr;gap:20px}.wood-chapter,.wood-chapter:first-child{grid-template-columns:25px 1fr;padding:20px;gap:15px}.wood-chapter:first-child img{grid-row:1;grid-column:1/-1;height:230px}.wood-chapter h2{font-size:1.9rem}.wood-chapter img{height:230px}.showcase-intro{display:block;padding-block:40px}.showcase-intro h1{font-size:3.8rem}.showcase-intro>div:last-child{margin-top:25px}.large-index{margin-bottom:12px;font-size:11px}.showcase-intro p:not(.eyebrow){font-size:15px}.filters{gap:8px;padding:15px}.filters .eyebrow{width:100%;margin-bottom:8px}.filters button{padding:7px 10px;font-size:12px}.project-wall{gap:25px}.project-wall .project-card>a,.project-wall .project-card:nth-child(even)>a{display:flex;flex-direction:column}.project-wall .project-image,.project-wall .project-card:nth-child(even) .project-image{order:1;height:280px;border-radius:6px 6px 0 0}.project-wall .project-caption,.project-wall .project-card:nth-child(even) .project-caption{order:2;padding:22px;display:grid;grid-template-columns:32px 1fr 22px;gap:15px;align-items:center;border-radius:0 0 6px 6px}.project-wall .project-no{margin:0}.project-wall .project-caption h3{font-size:1.55rem}.project-wall .project-arrow{margin:0}.case-title{padding-block:40px 25px}.case-title h1{font-size:3rem}.case-hero{padding-inline:18px}.case-hero>img{height:300px}.back-link{left:30px;bottom:15px;font-size:12px}.case-story{display:block;padding-block:40px}.case-story h2{font-size:2rem;margin-bottom:25px}.case-gallery{flex-direction:column}.next-project{margin-top:40px}.next-project a{font-size:1.7rem}.family-cover{display:block}.about-hero.wrap{padding:40px 22px}.about-hero h1{font-size:3rem}.about-bottom{display:grid;grid-template-columns:90px 1fr;gap:20px;align-items:center}.about-number{font-size:45px}.about-number small{font-size:8px;line-height:1.5}.about-bottom>p{font-size:13px}.about-panorama img{height:300px}.about-story{display:block;padding-block:45px}.about-story h2{font-size:2.6rem;margin-bottom:30px}.process-heading{padding-block:40px;text-align:left}.process-heading h1{font-size:3.1rem}.process-heading p:not(.eyebrow){font-size:15px}.measured-path{grid-template-columns:1fr;gap:20px;padding-bottom:40px}.measured-path article{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:22px}.step-number{font-size:40px;margin:0}.measured-path .eyebrow{min-height:0}.measured-path h2{font-size:1.7rem}.prep{padding:25px}.prep h2{font-size:2.3rem}.prep ul{grid-template-columns:1fr;gap:12px;font-size:15px}.contact-layout{grid-template-columns:1fr;gap:35px;padding-block:35px}.contact-intro{position:static;padding:25px}.contact-intro h1{font-size:3rem}.contact-details{margin-top:25px}.contact-details a{font-size:14px}.brief-frame h2{font-size:2.5rem}.legal{padding-block:40px}.legal h1{font-size:3rem}.legal h2{font-size:1.7rem}.not-found{padding-block:50px}.not-found h1{font-size:3rem}}
@media(max-width:360px){.hometown>a{font-size:9px}.footer-top>div:last-child{grid-template-columns:1fr}.footer-top>div:last-child a{grid-column:1}.footer-top>div:last-child a:nth-of-type(3){font-size:12px}.hero-content h1{font-size:2.9rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Official Black Oak identity: white seal on a solid black navigation strip. */
.header{background:#0b0b0a;color:#fff;border-bottom-color:#2d2923;padding-top:10px;padding-bottom:10px}
.brand{min-width:112px}
.brand img{width:82px;height:82px;background:transparent;border-radius:0;padding:0;object-fit:contain}
.header nav a[aria-current]{border-bottom-color:var(--gold)}
.nav-cta{background:var(--gold);border-color:var(--gold);color:#111110}
.nav-cta:hover{background:#dec39a}
@media(max-width:950px){
  .menu-toggle{background:var(--gold);color:#111110}
  .header nav{background:#0b0b0a;color:#fff;border-bottom-color:#2d2923}
  .header nav>a{border-bottom-color:#3e382f}
}
@media(max-width:700px){
  .header{padding-top:8px;padding-bottom:8px}
  .brand{min-width:74px}
  .brand img{width:64px;height:64px}
}

/* Responsive usability and accessibility audit — September 2026. */
html{font-size:100%;text-size-adjust:100%;-webkit-text-size-adjust:100%}
body{min-width:320px;overflow-x:clip}
main,header,footer,section,article,figure,form,.wrap,.header nav>*{min-width:0}
p,h1,h2,h3,a,button,dd,dt,label,summary{overflow-wrap:anywhere}
a,button,input,select,textarea,summary{-webkit-tap-highlight-color:rgba(196,164,122,.28)}
button,input,select,textarea{max-width:100%}
textarea{min-height:140px}
:focus-visible{outline:3px solid #9b6a2f;outline-offset:4px}
.header :focus-visible,footer :focus-visible,.contact-intro :focus-visible,.workshop-hero :focus-visible,.brand-moment :focus-visible,.prep :focus-visible,dialog :focus-visible{outline-color:#f2c98e}
.skip{font-size:16px;font-weight:700;min-height:44px;display:flex;align-items:center}
.brand,.menu-toggle,.header nav a,.button,.text-link,.filters button,.service-rail a,.footer-top a,.footer-bottom a,.back-link,.next-project a,.zoom-image,.close-lightbox,summary{min-height:44px}
.brand{min-width:82px}
.menu-toggle{align-items:center;justify-content:center;min-width:92px}
.header nav a,.footer-top a,.footer-bottom a{display:flex;align-items:center}
.filters button,.service-rail a{display:inline-flex;align-items:center;justify-content:center;font-size:14px}
.project-card>a,.zoom-image{display:block}
.zoom-image>span{font-size:14px;min-height:44px;display:flex;align-items:center}
.close-lightbox{font-size:16px;padding:8px 14px}
form,.brief-frame,.contact-layout>*{min-width:0}
input,select,textarea{line-height:1.5}
select{padding-right:42px}
.contact-details a,.footer-top>div:last-child a{word-break:normal;overflow-wrap:anywhere;white-space:normal}

@media(max-width:1100px){
  .header{gap:20px}
  .header nav{gap:11px;font-size:13px}
  .header nav a{padding-inline:3px}
  .nav-cta{padding-inline:14px!important}
}

@media(max-width:950px){
  body.menu-open{overflow:hidden}
  .header{position:sticky}
  .header nav{top:100%;max-height:calc(100dvh - 80px);overscroll-behavior:contain;padding:8px 24px max(24px,env(safe-area-inset-bottom))}
  .header nav>a{min-height:50px;padding:12px 4px}
  .header nav .nav-cta{min-height:50px;justify-content:center;padding-inline:18px!important}
}

@media(max-width:900px){
  .local-story{grid-template-columns:1fr}
  .local-photo img{height:auto;min-height:0;max-height:none;aspect-ratio:16/9}
  .cab-cover{grid-template-columns:1fr}
  .room-detail{margin-top:34px!important}
  .contact-layout{grid-template-columns:1fr;gap:48px}
  .contact-intro{position:static}
  .object-hero{gap:5%}
  .showcase-intro h1{font-size:clamp(3.5rem,10vw,5.5rem)}
  .project-wall .project-caption h3{font-size:clamp(1.8rem,4vw,2.2rem)}
}

@media(max-width:700px){
  .wrap,.local-story{width:calc(100% - 36px)}
  .hometown{align-items:center;line-height:1.45;letter-spacing:.02em}
  .hometown span,.hometown a{font-size:12px}
  .hometown a{min-height:44px;display:flex;align-items:center;text-align:right}
  .header{padding-inline:18px}
  .header nav{padding-inline:18px}
  .brand{min-width:64px}
  .menu-toggle{font-size:15px;padding:10px 14px}
  h1{font-size:clamp(2.5rem,12vw,3.25rem)}
  h2{font-size:clamp(2rem,9vw,2.7rem)}
  .workshop-panel h1,.cab-heading h1,.object-hero h1,.showcase-intro h1,.case-title h1,.about-hero h1,.process-heading h1,.contact-intro h1,.legal h1,.not-found h1{font-size:clamp(2.35rem,11vw,3rem)}
  .workshop-panel{margin-right:0}
  .trust-strip>.wrap{grid-template-columns:1fr}
  .trust-strip span{font-size:14px;min-height:44px;display:flex;align-items:center;padding-block:10px}
  .craft-index>div{grid-template-columns:1fr}
  .craft-index a{min-height:64px}
  .project-caption{align-items:flex-start}
  .project-caption h3{font-size:1.45rem}
  .project-arrow{padding-top:7px}
  .service-rail a{font-size:14px;padding:10px 14px}
  .filters{gap:10px}
  .filters button{padding:10px 14px}
  .project-wall .project-caption,.project-wall .project-card:nth-child(even) .project-caption{grid-template-columns:32px minmax(0,1fr) 22px}
  .project-wall .project-caption h3{font-size:1.45rem}
  .case-hero{padding-inline:18px}
  .back-link{position:static;display:inline-flex;margin-top:12px}
  dl{grid-template-columns:minmax(82px,auto) minmax(0,1fr);padding:20px;gap:12px}
  .next-project a{font-size:clamp(1.35rem,6vw,1.7rem)}
  .about-bottom{grid-template-columns:minmax(76px,90px) minmax(0,1fr)}
  .about-bottom>p{font-size:15px}
  .measured-path article{grid-template-columns:48px minmax(0,1fr)}
  .form-row{grid-template-columns:1fr}
  form label{font-size:15px}
  input,select,textarea{font-size:16px;min-height:50px;padding:13px}
  .photo-note{align-items:flex-start}
  .footer-top>div:nth-child(2){gap-inline:18px}
  .footer-top>div:nth-child(2) a,.footer-top>div:last-child a,.footer-top>div:last-child a:nth-of-type(3){min-height:44px;font-size:14px}
  .footer-bottom{font-size:12px}
  dialog{width:calc(100% - 24px);max-width:none;padding:58px 12px 18px}
  dialog img{max-width:100%;max-height:70svh}
}

@media(max-width:380px){
  .hometown span{display:none}
  .hometown{justify-content:flex-end}
  .footer-brand{align-items:flex-start}
  .footer-top>div:nth-child(2){grid-template-columns:1fr}
  .footer-top>div:last-child a,.footer-top>div:last-child a:nth-of-type(3){font-size:13px}
  dl{grid-template-columns:1fr}
}

@media(min-resolution:2dppx){
  img{image-rendering:auto}
}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
  .project-card:hover img{transform:none}
}

@media(forced-colors:active){
  :focus-visible{outline:3px solid Highlight}
  .filters button[aria-pressed=true]{border:2px solid ButtonText}
}

.project-caption h2{font-size:1.65rem;line-height:1.14;letter-spacing:-.035em}
.project-wall .project-caption h2{font-size:2.6rem}
@media(max-width:1100px){.project-wall .project-caption h2{font-size:2.2rem}}
@media(max-width:900px){.project-wall .project-caption h2{font-size:clamp(1.8rem,4vw,2.2rem)}}
@media(max-width:700px){.project-caption h2,.project-wall .project-caption h2{font-size:1.45rem}}

/* Showcase project titles use semantic h2 headings. */
.project-caption h2{font-size:1.65rem;line-height:1.14;letter-spacing:-.035em}
.project-wall .project-caption h2{font-size:2.6rem}
@media(max-width:1100px){.project-wall .project-caption h2{font-size:2.2rem}}
@media(max-width:900px){.project-wall .project-caption h2{font-size:clamp(1.8rem,4vw,2.2rem)}}
@media(max-width:700px){.project-caption h2,.project-wall .project-caption h2{font-size:1.45rem}}

/* East Tennessee story: simple maker details and honest project photography. */
.local-story{width:min(1320px,calc(100% - 96px));margin:85px auto;display:grid;grid-template-columns:1.05fr .95fr;background:#111110;color:#f4ecde;border-radius:6px;overflow:hidden}
.local-photo img{width:100%;height:100%;min-height:540px;object-fit:cover}
.local-copy{padding:clamp(40px,6vw,85px);align-self:center;position:relative}
.local-copy .eyebrow{color:#c9aa7b;margin-top:48px}
.local-copy h2{font-size:clamp(2.7rem,4.2vw,4.4rem)}
.local-copy h2 em{color:#c9aa7b}
.local-copy>p:not(.eyebrow){color:#ded0b9;margin-top:24px}
.local-copy .text-link{margin-top:26px;color:#f4ecde}
.maker-stamp{position:absolute;top:0;left:0;border:1px solid #8a765d;padding:10px 14px;font-size:10px;line-height:1.3;letter-spacing:.14em;color:#c9aa7b}
.local-story:before{content:'35.36° N / 84.29° W';position:absolute;display:none}
.hometown span:before{content:'TELLICO PLAINS · ';color:#c9aa7b;font-weight:700}
@media(max-width:900px){.local-story{grid-template-columns:1fr}.local-photo img{min-height:0;height:390px}.local-copy{padding:50px}.local-copy .eyebrow{margin-top:40px}}
@media(max-width:700px){.local-story{width:calc(100% - 36px);margin:55px auto}.local-photo img{height:280px}.local-copy{padding:34px 24px}.local-copy .eyebrow{margin-top:50px}.local-copy h2{font-size:2.7rem}.maker-stamp{font-size:9px}.hometown span:before{content:''}}

/* Let the navigation and home hero read as one continuous opening surface. */
.hometown,.header{background:var(--forest)}
.header{border-bottom-color:transparent}
@media(max-width:950px){.header nav{background:var(--forest)}}


/* Modern Appalachian Workshop */
:root{--forest:#171715;--deep:#171715;--paper:#f3eee5;--gold:#c4a47a}
h1,h2,h3{letter-spacing:-.035em}
em{font-style:normal}
.button,.nav-cta{border-radius:0}
.workshop-hero{position:relative;background:var(--forest);color:var(--paper);padding:0 4% 48px;display:grid;grid-template-columns:repeat(12,minmax(0,1fr))}
.workshop-hero>figure{grid-column:1/-1;grid-row:1;min-width:0}
.workshop-hero>figure img{width:100%;height:clamp(500px,69vh,800px);object-fit:cover;object-position:center;border-radius:0}
.workshop-panel{grid-column:1/8;grid-row:1;align-self:end;position:relative;background:var(--forest);padding:38px 42px 0 0;margin-bottom:-1px;max-width:710px}
.workshop-panel .eyebrow{font-size:13px;color:var(--gold);margin-bottom:18px}
.workshop-panel h1{font-size:clamp(2.5rem,3.8vw,4rem);line-height:1.1;font-weight:600}
.workshop-panel h1 em{color:var(--gold)}
.workshop-panel>p:not(.eyebrow){font-size:16px;color:#dfd3c2;margin-top:22px;max-width:46ch}
.workshop-actions{display:flex;flex-wrap:wrap;align-items:center;gap:20px 28px;margin-top:28px}
.workshop-actions .text-link{font-size:14px}
.trust-strip{background:var(--forest);color:#e3d6c4;border-top:1px solid #4c4438}
.trust-strip span{font-weight:400;font-size:13px;padding:20px 0}
.selected{padding-block:85px 55px}
.selected .section-head h2{font-size:clamp(2.4rem,4vw,3.5rem)}
.editorial-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.editorial-grid .wide{grid-column:1/-1}
.editorial-grid .narrow,.editorial-grid .lower{grid-column:auto;padding:0}
.editorial-grid .project-image{height:360px;border-radius:0}
.editorial-grid .wide .project-image{height:auto;aspect-ratio:2.2}
.editorial-grid .lower .project-image,.editorial-grid .narrow .project-image{height:360px}
.project-caption h3{font-size:1.65rem}
.craft-index{padding:32px 0 50px;border-radius:0;background:none;border-bottom:1px solid var(--line)}
.craft-index img{display:none}
.craft-index>div{gap:24px}
.craft-index a{font-size:22px;border-top:2px solid var(--gold);padding-top:20px}
.craft-index small{font-size:14px}
.intro{padding-block:75px 40px;gap:7%;grid-template-columns:1fr 1fr}
.intro h2{font-size:clamp(2.4rem,3.6vw,3.5rem)}
.intro>div:last-child{padding-top:0}
.local-story{margin:25px auto 85px;grid-template-columns:.8fr 1.2fr;border-radius:0;background:#e4d5bd;color:var(--ink)}
.local-photo img{min-height:470px;max-height:620px;object-fit:cover}
.local-copy{padding:48px 60px}
.local-copy h2{font-size:clamp(2.2rem,3.2vw,3.3rem)}
.local-copy .eyebrow,.local-copy h2 em{color:#665139}
.local-copy>p:not(.eyebrow){color:#4f463a;font-size:16px}
.local-copy .text-link{color:var(--ink)}
.maker-stamp{position:static;display:inline-block;color:#665139;font-size:12px;letter-spacing:.08em;padding:10px 0;border-width:0 0 1px}
.local-copy .eyebrow{margin-top:28px}
.brand-moment{padding-block:65px}
.brand-moment p:not(.eyebrow){font-size:clamp(2.3rem,4vw,3.8rem)}
.brand-note{font-size:16px}
.project-image,.project-wall .project-image,.project-wall .project-caption,.case-hero>img,.object-hero figure img,.room-detail>.room,.faqs details,.prep,.wood-chapter,.contact-intro{border-radius:0!important}
@media(max-width:900px){
.workshop-panel{grid-column:1/11;padding:28px 28px 0 0}
.workshop-hero>figure img{height:580px}
.local-story{grid-template-columns:1fr 1fr}
.local-copy{padding:35px}
.trust-strip>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}
}
@media(max-width:700px){
.workshop-hero{display:block;padding:0 18px 30px}
.workshop-hero>figure img{height:340px;object-position:53% center}
.workshop-panel{margin:-45px 16px 0 0;padding:25px 18px 0 0;max-width:none}
.workshop-panel h1{font-size:clamp(2rem,8.2vw,3rem);line-height:1.14}
.workshop-panel .eyebrow{font-size:12px}
.workshop-panel>p:not(.eyebrow){font-size:16px}
.workshop-actions{gap:14px;margin-top:23px;align-items:flex-start;flex-direction:column}
.workshop-actions .button{min-height:48px}
.trust-strip span{font-size:12px;padding:13px 0}
.selected{padding-block:50px 35px}
.editorial-grid{grid-template-columns:1fr;gap:28px}
.editorial-grid .wide{grid-column:auto}
.editorial-grid .wide .project-image{aspect-ratio:1.35}
.editorial-grid .narrow .project-image,.editorial-grid .lower .project-image{height:280px}
.craft-index{padding:20px 0 35px}
.craft-index a{font-size:18px}
.craft-index small{font-size:13px}
.intro{display:block;padding-block:45px 20px}
.intro>div:last-child{margin-top:25px}
.local-story{display:block;margin:20px auto 45px}
.local-photo img{height:320px;min-height:0;object-position:center 45%}
.local-copy{padding:28px 24px}
.local-copy h2{font-size:2.3rem}
.local-copy .eyebrow{margin-top:22px}
.brand-moment{padding-block:45px}
}

/* Airier small-screen rhythm: keep each idea and action comfortably separated. */
@media(max-width:700px){
  body{line-height:1.78}
  h1,h2,h3{line-height:1.12}
  .eyebrow{margin-bottom:20px}
  p+p{margin-top:1.35rem}
  .text-link{margin-top:8px}

  .workshop-hero{padding-bottom:42px}
  .workshop-hero>figure img{height:370px}
  .workshop-panel{margin-top:-30px;padding:30px 22px 8px 0}
  .workshop-panel>p:not(.eyebrow){margin-top:26px}
  .workshop-actions{margin-top:30px;gap:18px}
  .trust-strip>.wrap{row-gap:6px}
  .trust-strip span{padding-block:16px}

  .selected{padding-block:68px 58px}
  .section-head{margin-bottom:34px}
  .section-head .text-link{margin-top:26px}
  .editorial-grid{gap:42px}
  .project-caption{padding-top:20px}
  .project-caption .eyebrow{margin-bottom:10px}

  .craft-index{padding-block:32px 48px}
  .craft-index>div{gap:30px 20px}
  .craft-index a{padding-top:18px}
  .craft-index small{margin-top:10px;line-height:1.45}

  .intro{padding-block:62px 30px}
  .intro>div:last-child{margin-top:34px}
  .intro .text-link{margin-top:24px}
  .local-story{margin:28px auto 64px}
  .local-photo img{height:345px}
  .local-copy{padding:38px 24px 42px}
  .local-copy .eyebrow{margin-top:28px}
  .local-copy h2{margin-bottom:22px}
  .local-copy .text-link{margin-top:24px}
  .brand-moment{padding-block:60px}
  .brand-note{margin-top:32px}
  .closing{padding-block:60px}
  .closing h2{margin-block:24px 30px}

  .cab-cover{padding-block:48px}
  .cab-services{padding-block:58px}
  .cab-services aside h2{margin-top:24px}
  .service-rail{margin-top:30px;gap:10px}
  .service-copy{padding-top:30px}
  .service-copy p{margin-top:16px}
  .dark-feature{padding-block:52px}
  .questions{padding-block:58px;gap:32px}
  .faqs details{margin-bottom:16px;padding:22px}
  details p{padding-top:20px}

  .object-hero{gap:38px;padding-block:55px}
  .object-hero p:not(.eyebrow){margin-top:26px}
  .wood-chapters{gap:28px}
  .wood-chapter,.wood-chapter:first-child{padding:24px;gap:20px}
  .wood-chapter h2{margin-bottom:16px}
  .showcase-intro{padding-block:56px}
  .showcase-intro>div:last-child{margin-top:30px}
  .filters{margin-bottom:42px}
  .project-wall{gap:34px}
  .project-wall .project-caption,.project-wall .project-card:nth-child(even) .project-caption{padding:26px 22px}
  .case-title{padding-block:55px 34px}
  .case-story{padding-block:56px}
  .case-story h2{margin-bottom:30px}
  .case-gallery{gap:28px}
  .next-project{margin-top:55px;padding-block:36px}
  .about-hero.wrap{padding-block:55px}
  .about-story{padding-block:58px}
  .process-heading{padding-block:56px}
  .measured-path{gap:26px;padding-bottom:52px}
  .prep{padding:30px}
  .contact-layout{gap:44px;padding-block:50px}
  .contact-intro{padding:30px}
  .brief-frame h2{margin-bottom:24px}
  form label{margin-bottom:24px}
  .photo-note{margin-block:28px}
  .legal{padding-block:58px}

  .footer-top{gap:38px;padding-block:38px}
  .footer-brand{padding-bottom:30px}
  .footer-top>div:last-child{padding-top:30px;gap:10px 15px}
  .footer-bottom{padding-block:24px}
}

/* A consistent mobile footer: shared alignment, spacing, and type sizes. */
@media(max-width:700px){
  .footer-top{display:grid;grid-template-columns:minmax(0,1fr);gap:28px;padding-block:32px}
  .footer-brand{justify-content:flex-start;align-items:center;gap:22px;padding-bottom:28px}
  .footer-brand img{flex:0 0 64px;width:64px;height:64px}
  .footer-brand p{font-size:clamp(1.15rem,4.6vw,1.5rem);line-height:1.3;letter-spacing:-.02em}
  .footer-top h2{font-size:12px;line-height:1.5;margin:0 0 12px;letter-spacing:.12em}
  .footer-top>div:nth-child(2){grid-template-columns:repeat(2,minmax(0,1fr));gap:0 24px;max-width:none}
  .footer-top>div:nth-child(2) a{font-size:14px;line-height:1.5;min-height:40px;padding-block:9px}
  .footer-top>div:last-child{display:flex;flex-direction:column;align-items:flex-start;gap:0;border-top:1px solid #554b40;padding-top:28px}
  .footer-top>div:last-child a,.footer-top>div:last-child a:nth-of-type(3){font-size:14px;line-height:1.5;min-height:40px;padding-block:9px;width:auto;max-width:100%;white-space:nowrap}
  .footer-top .contact-fax{font-size:13px;line-height:1.6;margin-top:14px}
  .footer-top>div:last-child p{font-size:13px;line-height:1.6;margin-top:8px}
  .footer-bottom{align-items:center;flex-wrap:wrap;gap:10px 20px;padding-block:22px;font-size:11px;line-height:1.6}
}

/* Photo-specific focal points keep the cabinetry centered in every crop. */
img[src*="custom-cream-kitchen-cabinetry-island"]{object-position:50% 54%}
img[src*="contrasting-custom-kitchen-island"]{object-position:48% 55%}
img[src*="dark-wood-kitchen-cabinetry"]{object-position:68% 52%}
img[src*="custom-library-living-room-built-ins"]{object-position:50% 48%}
img[src*="custom-study-built-in-cabinetry"]{object-position:50% 44%}
img[src*="custom-wood-study-shelving"]{object-position:54% 45%}
img[src*="custom-wood-bathroom-vanity"]{object-position:55% 50%}
img[src*="custom-architectural-wood-millwork"]{object-position:58% 45%}
img[src*="ornamental-custom-wood-cabinet"]{object-position:50% 48%}

@media(max-width:700px){
  .workshop-hero>figure img{height:auto;aspect-ratio:1.38;object-fit:cover;object-position:50% 55%}
  .editorial-grid .wide .project-image{aspect-ratio:1.5}
  .editorial-grid .narrow .project-image{height:auto;aspect-ratio:1.08}
  .editorial-grid .lower .project-image{height:auto;aspect-ratio:1.32}
  .local-photo img{height:auto;max-height:none;aspect-ratio:4/5;object-fit:cover;object-position:50% 43%}
  .room-detail>.room{height:auto;aspect-ratio:1.32;object-fit:cover}
  .detail-inset img{height:auto;aspect-ratio:1.15;object-fit:cover}
  .object-hero figure img{height:auto;aspect-ratio:4/5;object-fit:cover}
  .wood-chapter img,.wood-chapter:first-child img{height:auto;aspect-ratio:1.15;object-fit:cover}
  .wood-chapter img[src*="custom-study-built-in-cabinetry"],.wood-chapter img[src*="custom-wood-study-shelving"],.wood-chapter img[src*="custom-wood-bathroom-vanity"]{aspect-ratio:4/5}
  .project-wall .project-image,.project-wall .project-card:nth-child(even) .project-image{height:auto;aspect-ratio:1.3}
  .project-wall .project-image:has(img[src*="custom-study-built-in-cabinetry"]),.project-wall .project-image:has(img[src*="custom-wood-bathroom-vanity"]){aspect-ratio:4/5}
  .case-hero>img{height:auto;max-height:none;object-fit:contain;background:var(--mist)}
  .case-gallery .zoom-image img{width:100%;height:auto;max-height:none;object-fit:contain}
  .about-panorama img{height:auto;aspect-ratio:1.28;object-fit:cover;object-position:50% 50%}
  .dark-feature .project-image{height:auto;aspect-ratio:1.3}
}
