@import url("https://fonts.googleapis.com/css2?family=Anybody:wdth,wght@82,650;95,780&family=IBM+Plex+Sans:wght@400;500;600&display=swap");:root{--ink:#17201b;--spruce:#244a3d;--ash:#eef1e8;--sawdust:#d9b56f;--blueprint:#315d7c;--chalk:#f8faf3;--line:rgba(23,32,27,.18);--shadow:0 24px 70px rgba(23,32,27,.16);--font-display:"Anybody",system-ui,sans-serif;--font-body:"IBM Plex Sans",system-ui,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--ash);font-family:var(--font-body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible{outline:3px solid var(--sawdust);outline-offset:5px}.site-shell{min-height:100vh;overflow:hidden}.topbar{position:absolute;inset:0 0 auto;z-index:10;display:flex;align-items:center;justify-content:space-between;gap:24px;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:24px 0}.wordmark{display:grid;grid-gap:0;gap:0;font-family:var(--font-display);font-size:clamp(1.05rem,2vw,1.45rem);font-weight:780;line-height:.9;letter-spacing:0;text-transform:uppercase}.wordmark span:last-child{color:var(--blueprint);transform:translateX(18px)}.nav-links{display:flex;align-items:center;gap:clamp(14px,3vw,34px);font-size:.92rem;font-weight:600}.nav-links a{padding:8px 0;border-bottom:2px solid transparent}.nav-links a:hover{border-color:var(--blueprint)}.hero{position:relative;display:grid;grid-template-columns:minmax(0,1.04fr) minmax(280px,.68fr);align-items:center;grid-gap:clamp(36px,7vw,92px);gap:clamp(36px,7vw,92px);min-height:92vh;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:132px 0 72px}.grain-map{position:absolute;inset:10% auto auto -12%;width:min(54vw,620px);aspect-ratio:1.35;pointer-events:none;opacity:.82}.grain-map span{position:absolute;inset:var(--inset,0);border:2px solid rgba(49,93,124,.2);border-radius:48% 52% 43% 57%/54% 39% 61% 46%;transform:rotate(var(--rotate,-8deg))}.grain-map span:nth-child(2){--inset:11%;--rotate:5deg;border-color:rgba(36,74,61,.18)}.grain-map span:nth-child(3){--inset:23%;--rotate:-18deg;border-color:hsla(40,58%,64%,.5)}.hero-copy{position:relative;z-index:2;max-width:760px}.eyebrow{margin:0 0 18px;color:var(--blueprint);font-size:.82rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--font-display);font-weight:780;line-height:.98;letter-spacing:0}h1{max-width:12ch;margin-bottom:28px;font-size:clamp(3.1rem,8.4vw,7.25rem)}.lead{max-width:650px;margin-bottom:34px;font-size:clamp(1.05rem,1.8vw,1.28rem)}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 18px;border:2px solid var(--ink);font-weight:700;transition:transform .18s ease,background-color .18s ease,color .18s ease}.button:hover{transform:translateY(-2px)}.button.primary{color:var(--chalk);background:var(--ink)}.button.secondary{color:var(--ink);background:transparent}.joinery-panel{position:relative;min-height:520px;border-left:10px solid var(--spruce)}.wood-block{position:absolute;width:72%;height:42%;background:repeating-linear-gradient(90deg,#c8954d 0 11px,#d7aa65 11px 20px,#b9783f 20px 26px);box-shadow:var(--shadow)}.block-a{top:15%;right:0;-webkit-clip-path:polygon(0 0,100% 0,100% 70%,72% 70%,72% 100%,0 100%);clip-path:polygon(0 0,100% 0,100% 70%,72% 70%,72% 100%,0 100%)}.block-b{right:18%;bottom:12%;background:repeating-linear-gradient(0deg,#7f8d71 0 10px,#94a083 10px 18px,#6d7a61 18px 24px);-webkit-clip-path:polygon(0 0,30% 0,30% 30%,100% 30%,100% 100%,0 100%);clip-path:polygon(0 0,30% 0,30% 30%,100% 30%,100% 100%,0 100%)}.measure-line{position:absolute;inset:8% 14% auto auto;width:2px;height:78%;background:var(--blueprint)}.measure-line:after,.measure-line:before{content:"";position:absolute;left:50%;width:54px;height:2px;background:var(--blueprint);transform:translateX(-50%)}.measure-line:before{top:0}.measure-line:after{bottom:0}.content-section{display:grid;grid-template-columns:.72fr 1.28fr;grid-gap:clamp(28px,5vw,70px);gap:clamp(28px,5vw,70px);width:min(1180px,calc(100% - 40px));margin:0 auto;padding:76px 0 90px;border-top:2px solid var(--line)}.section-heading h2{max-width:12ch;margin-bottom:0;font-size:clamp(2.2rem,4.6vw,4.6rem)}.service-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:16px;gap:16px}.service-card{min-height:230px;padding:24px;color:var(--chalk);background:var(--spruce)}.service-card:nth-child(2){background:var(--blueprint)}.service-card:nth-child(3){color:var(--ink);background:var(--sawdust)}.service-card:nth-child(4){background:var(--ink)}.service-number{display:block;margin-bottom:36px;font-family:var(--font-display);font-size:.85rem;font-weight:780}.service-card h3{margin-bottom:14px;font-size:clamp(1.35rem,2.5vw,2rem)}.service-card p{margin-bottom:0;font-size:.98rem}.footer{display:flex;align-items:flex-end;justify-content:space-between;gap:28px;width:min(1180px,calc(100% - 40px));margin:0 auto;padding:34px 0 42px;border-top:2px solid var(--ink)}.footer p{margin-bottom:0}.footer-title{font-family:var(--font-display);font-size:1.35rem;font-weight:780}.disclaimer{max-width:360px;color:rgba(23,32,27,.72);font-size:.92rem;text-align:right}@media (max-width:820px){.topbar{position:relative;width:min(100% - 28px,1180px);padding:18px 0 0}.nav-links{gap:12px;font-size:.84rem}.hero{grid-template-columns:1fr;width:min(100% - 28px,1180px);min-height:auto;padding:64px 0 54px}h1{max-width:10ch;font-size:clamp(3rem,17vw,5.4rem)}.grain-map{inset:5% auto auto -35%;width:112vw}.joinery-panel{min-height:310px;border-left-width:7px}.content-section{grid-template-columns:1fr;width:min(100% - 28px,1180px);padding:54px 0 64px}.section-heading h2{max-width:11ch}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.footer{flex-direction:column;align-items:flex-start;width:min(100% - 28px,1180px)}.disclaimer{text-align:left}}@media (max-width:560px){.topbar{align-items:flex-start}.nav-links{flex-direction:column;align-items:flex-end;gap:2px}.hero-actions{flex-direction:column;align-items:stretch}.button{width:100%}}@media (prefers-reduced-motion:reduce){*,:after,:before{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}