.video-placeholder{display:none!important;padding:18px!important}
.video-preview{position:relative;display:block;flex:none}.video-preview img{width:150px;height:100px;object-fit:cover;filter:saturate(1.08) contrast(1.04) brightness(1.03)}.video-preview .play-mark{position:absolute;inset:50% auto auto 50%;transform:translate(-50%,-50%);background:rgba(37,37,31,.72)}.video-link{display:inline-block;margin-top:12px;color:var(--paper);font:11px 'DM Mono',monospace;text-decoration:underline;text-underline-offset:4px}
.video-placeholder>img{width:150px;height:100px;object-fit:cover}
.maker-gallery{margin-top:92px}.maker-gallery-head{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:28px}.maker-gallery-head h3{font:42px/1 'Playfair Display',serif;margin:0}.maker-gallery-head>p{max-width:300px;color:#e7eadf;line-height:1.5;font-size:13px}.maker-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.maker-grid figure{margin:0;position:relative;overflow:hidden;background:#354a36;aspect-ratio:4/3}.maker-grid figure:first-child{grid-column:span 2}.maker-grid img{display:block;width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.03);transition:transform .5s ease,filter .5s ease}.maker-grid figure:nth-child(1) img{object-position:center 58%}.maker-grid figure:nth-child(2) img{object-position:center 48%}.maker-grid figure:nth-child(3) img{object-position:center 52%}.maker-grid figure:nth-child(4) img{object-position:center 45%}.maker-grid figure:nth-child(5) img{object-position:center 48%}.maker-grid figure:hover img{transform:scale(1.04);filter:saturate(1.15) contrast(1.05)}.maker-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:15px 16px;background:linear-gradient(transparent,rgba(18,25,19,.9));font:10px 'DM Mono',monospace;letter-spacing:.08em;color:#fff}.maker-gallery-head .eyebrow{color:#e7c474}
@media(max-width:800px){.maker-gallery{margin-top:62px}.maker-gallery-head{display:block}.maker-gallery-head h3{font-size:34px;line-height:1.05}.maker-gallery-head>p{margin-top:18px}.maker-grid{grid-template-columns:1fr;gap:12px}.maker-grid figure,.maker-grid figure:first-child{grid-column:span 1;aspect-ratio:4/3}.maker-grid figcaption{padding:12px 13px;font-size:9px}}

/* The maker space runs as a quiet, continuous film strip. Every frame keeps the table-saw image proportion. */
.maker-gallery{overflow:hidden}.maker-grid{display:block;overflow:hidden}.maker-track{display:flex;width:max-content;gap:16px;animation:maker-strip-scroll 48s linear infinite;will-change:transform}.maker-track:hover{animation-play-state:paused}.maker-track figure,.maker-track figure:first-child{flex:0 0 clamp(280px,31vw,440px);width:clamp(280px,31vw,440px);grid-column:auto;aspect-ratio:4/3}.maker-track img{object-fit:cover}.maker-track figcaption{font-size:10px}
@keyframes maker-strip-scroll{from{transform:translateX(0)}to{transform:translateX(calc(-50% - 8px))}}
@media(max-width:800px){.maker-track{gap:12px;animation-duration:38s}.maker-track figure,.maker-track figure:first-child{flex-basis:78vw;width:78vw;aspect-ratio:4/3}.maker-track figcaption{font-size:9px}}
.image-lightbox{position:fixed;inset:0;z-index:50;display:grid;place-items:center;padding:28px;background:rgba(25,25,20,.86);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.image-lightbox.is-open{opacity:1;visibility:visible}.image-lightbox img{display:block;max-width:min(92vw,1100px);max-height:88vh;width:auto;height:auto;object-fit:contain;box-shadow:0 20px 80px rgba(0,0,0,.38)}.image-lightbox button{position:absolute;top:22px;right:24px;border:1px solid rgba(255,255,255,.65);background:rgba(37,37,31,.7);color:#fff;padding:9px 13px;font:12px 'DM Mono',monospace;cursor:pointer}.image-lightbox figcaption{margin-top:12px;text-align:center;color:#fff;font:11px 'DM Mono',monospace}.image-lightbox figure{margin:0;max-width:94vw;text-align:center}
.custom-order-modal{position:fixed;inset:0;z-index:60;display:grid;place-items:center;padding:20px;background:rgba(25,25,20,.72);opacity:0;visibility:hidden;transition:opacity .2s ease,visibility .2s ease}.custom-order-modal.is-open{opacity:1;visibility:visible}.custom-order-card{position:relative;width:min(520px,100%);padding:34px;background:#f7f1e5;color:#25251f;box-shadow:0 24px 90px rgba(0,0,0,.28)}.custom-order-card h3{font:32px/1.05 'Playfair Display',serif;margin:0 0 24px}.custom-order-card form{display:grid;gap:16px}.custom-order-card label{display:grid;gap:7px;font:11px 'DM Mono',monospace;letter-spacing:.08em}.custom-order-card select{width:100%;border:1px solid rgba(37,37,31,.3);background:#fffaf0;padding:12px;color:#25251f;font:14px 'DM Sans',sans-serif}.custom-order-card .button{border:0;cursor:pointer;justify-content:center}.custom-order-close{position:absolute!important;top:14px!important;right:14px!important;color:#25251f!important;background:transparent!important;border-color:rgba(37,37,31,.3)!important}
/* Tactile workshop layer: wood, tools, motion and the share offer. */
body{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M8 25L23 10' stroke='%2325251f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M7 11l6 6' stroke='%23b55f32' stroke-width='6' stroke-linecap='round'/%3E%3Cpath d='M16 8l9 9' stroke='%23b55f32' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E") 4 4, auto}
a,button,.photo,.tool-tab{cursor:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='32' height='32' viewBox='0 0 32 32'%3E%3Cpath d='M8 25L23 10' stroke='%2325251f' stroke-width='4' stroke-linecap='round'/%3E%3Cpath d='M7 11l6 6' stroke='%23b55f32' stroke-width='6' stroke-linecap='round'/%3E%3Cpath d='M16 8l9 9' stroke='%23b55f32' stroke-width='6' stroke-linecap='round'/%3E%3C/svg%3E") 4 4, pointer}
.nav-menu-toggle{display:none;border:0;background:none;padding:10px;width:42px;height:42px}
.nav-menu-toggle span{display:block;height:2px;background:var(--ink);margin:5px 0;width:21px;transition:transform .25s ease,opacity .25s ease}
.toolbench{padding:130px 0 150px}
.toolbench-head{display:flex;justify-content:space-between;align-items:end;gap:50px;margin-bottom:46px}
.toolbench-head h2{font-size:clamp(48px,6vw,76px)}
.toolbench-head>p{max-width:330px;color:#65715a;line-height:1.6;margin:0 0 4px;font-size:15px}
.toolbench-shell{background:#304631;color:#f7f1e5;padding:28px;position:relative;overflow:hidden;box-shadow:14px 14px 0 rgba(181,95,50,.22)}
.toolbench-shell:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(13,26,16,.72),rgba(13,26,16,.2)),url("assets/wood-grains-strip.png") center/cover;opacity:.34;pointer-events:none}
.toolbench-shell>*{position:relative}
.tool-tabs{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid rgba(247,241,229,.26)}
.tool-tab{appearance:none;border:0;border-right:1px solid rgba(247,241,229,.18);background:transparent;color:#f7f1e5;text-align:left;padding:14px 16px 18px;min-height:94px;transition:background .25s ease,color .25s ease,transform .25s ease}
.tool-tab:last-child{border-right:0}.tool-tab:hover,.tool-tab.is-active{background:#e5a13c;color:#25251f;transform:translateY(-4px)}
.tool-tab span{display:block;color:#efc276;font:10px 'DM Mono',monospace;margin-bottom:15px}.tool-tab.is-active span,.tool-tab:hover span{color:#25251f}.tool-tab strong{display:block;font:18px/1.05 'Playfair Display',serif;font-weight:500}.tool-tab small{display:block;margin-top:8px;font:10px 'DM Mono',monospace;opacity:.74}
.tool-stage{display:grid;grid-template-columns:1.08fr .92fr;gap:50px;align-items:center;padding:36px 0 30px}.tool-stage-image{height:360px;overflow:hidden;background:#1d2e22;border:1px solid rgba(247,241,229,.2)}.tool-stage-image img{width:100%;height:100%;object-fit:cover;display:block;filter:saturate(.9) contrast(1.05);transition:opacity .22s ease,transform .5s ease}.tool-stage-image img.is-changing{opacity:.25;transform:scale(1.04)}
.tool-copy h3{font:clamp(36px,4vw,56px)/.98 'Playfair Display',serif;font-weight:500;margin:0 0 20px}.tool-copy>p:not(.eyebrow){max-width:430px;line-height:1.65;font-size:16px;color:#e7eadf}.tool-copy .eyebrow{color:#efc276;margin-bottom:15px}.tool-tip{border-top:1px solid rgba(247,241,229,.3);margin-top:30px;padding-top:16px}.tool-tip span,.toolbench-foot span{font:10px 'DM Mono',monospace;letter-spacing:.12em;color:#efc276}.tool-tip p{margin:8px 0 0;font-size:13px;line-height:1.5;color:#e7eadf}.toolbench-foot{display:flex;justify-content:space-between;gap:20px;border-top:1px solid rgba(247,241,229,.26);padding-top:17px}.toolbench-foot p{margin:0;font:12px 'DM Mono',monospace;color:#e7eadf}
.final-cta{background-color:#4b2d1d;background-image:linear-gradient(90deg,rgba(34,23,17,.88),rgba(72,40,24,.55)),url("assets/wood-grains-strip.png");background-size:cover;background-position:center;position:relative;overflow:hidden}.final-cta:after{content:"";position:absolute;inset:auto 0 0;height:12px;background:linear-gradient(90deg,#bc6a3b 25%,#8b241c 25% 50%,#dcae68 50% 75%,#5f4633 75%)}
.final-cta-inner{display:grid;grid-template-columns:1fr auto;align-items:center;gap:50px;position:relative;z-index:1}.final-cta h2{max-width:820px}.final-cta-actions{display:grid;justify-items:start;gap:12px}.final-cta-actions .button{white-space:nowrap}.share-button{background:#e5a13c;color:#25251f;border:1px solid #e5a13c;font-weight:600}.share-button:hover{background:#f5c36d}.share-note{max-width:260px;margin:0;color:#f3dfc4;font:11px/1.5 'DM Mono',monospace}.share-status{min-height:17px;margin:0;color:#f7e3bd;font:11px 'DM Mono',monospace}
.grain-legend{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.grain-legend span{border:1px solid rgba(247,241,229,.55);padding:8px 10px;color:#fff2dc;font:10px 'DM Mono',monospace;letter-spacing:.1em;background:rgba(38,22,13,.22)}
@media (prefers-reduced-motion: reduce){*,*:before,*:after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
@media(max-width:800px){body{cursor:auto}a,button,.photo,.tool-tab{cursor:pointer}.nav-menu-toggle{display:block}.nav nav{display:none;position:absolute;top:76px;left:16px;right:16px;background:#f7f1e5;border:1px solid rgba(37,37,31,.2);box-shadow:0 14px 30px rgba(37,37,31,.16);padding:8px;z-index:20}.nav.nav-open nav{display:grid;gap:0}.nav.nav-open nav a{padding:13px 12px;font:12px 'DM Mono',monospace;border-bottom:1px solid rgba(37,37,31,.1)}.nav.nav-open nav a:last-child{border-bottom:0}.nav.nav-open .nav-menu-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}.nav.nav-open .nav-menu-toggle span:nth-child(2){opacity:0}.nav.nav-open .nav-menu-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.toolbench{padding:86px 0 100px}.toolbench-head{display:block;margin-bottom:30px}.toolbench-head>p{margin-top:22px;font-size:14px}.toolbench-shell{padding:14px;box-shadow:8px 8px 0 rgba(181,95,50,.2)}.tool-tabs{grid-template-columns:repeat(2,1fr)}.tool-tab{border-bottom:1px solid rgba(247,241,229,.18);min-height:88px;padding:12px}.tool-tab:nth-child(2){border-right:0}.tool-tab strong{font-size:16px}.tool-stage{grid-template-columns:1fr;gap:24px;padding:22px 0}.tool-stage-image{height:250px}.tool-copy h3{font-size:38px}.tool-copy>p:not(.eyebrow){font-size:14px}.toolbench-foot{display:block}.toolbench-foot p{margin-top:10px;line-height:1.5}.final-cta{padding:80px 0}.final-cta-inner{grid-template-columns:1fr;gap:34px}.final-cta-actions{justify-items:stretch}.final-cta-actions .button{justify-content:center}.grain-legend{gap:7px}.grain-legend span{font-size:9px;padding:7px 8px}}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.is-visible{opacity:1;transform:none}.gallery .product:nth-child(3n+2){transition-delay:.08s}.gallery .product:nth-child(3n){transition-delay:.16s}
.photo{position:relative}.angle-toggle{position:absolute;right:14px;bottom:14px;display:inline-flex;align-items:center;gap:7px;border:1px solid rgba(37,37,31,.28);background:rgba(247,241,229,.92);color:var(--ink);padding:8px 10px;box-shadow:0 4px 0 rgba(37,37,31,.12);font:10px 'DM Mono',monospace;letter-spacing:.03em;cursor:pointer;transition:transform .2s ease,background .2s ease}.angle-toggle:hover{transform:translateY(-2px);background:#fffaf0}.angle-toggle b{font-weight:400;text-transform:uppercase;color:var(--wood)}.spec-link{grid-column:2;display:inline-block;margin-top:10px;color:var(--wood);font:11px 'DM Mono',monospace;text-decoration:underline;text-underline-offset:4px}.spec-link:hover{color:var(--ink)}
