:root{--motion-short:220ms;--motion-scene:650ms}.section-heading{max-width:840px;margin-bottom:34px}.section-heading .eyebrow{margin-bottom:14px}.section-heading>p:last-child{color:var(--muted);max-width:68ch}.secondary{padding:11px 18px;background:#f0dfbd;border:1px solid #8d6a40;color:#402a1b;font-size:.9rem;min-height:44px;box-shadow:inset 0 0 0 3px #b9996440}.secondary:hover{background:#e3c698}.actions{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-top:22px}.actions .text-button{margin:0;padding:10px}.segmented{display:flex;gap:6px;flex-wrap:wrap}.segmented button,.carving-steps button{min-width:45px;min-height:44px;padding:8px 17px;border:1px solid #a58659;background:#edddbf;color:#49321e;font-size:.9rem}.segmented button[aria-pressed=true],.carving-steps button[aria-pressed=true]{background:#422c1c;color:#f1dfbf;border-color:#422c1c}.technical-sheet{background:linear-gradient(#f6ecd8e8,#f6ecd8e8),url('/assets/grain.webp');border:1px solid #ab895757;box-shadow:inset 0 0 0 7px #c6a6771c;overflow:hidden}.technical-sheet svg{display:block;width:100%;height:auto;overflow:visible}.technical-sheet svg text{font:14px 'DM Sans',Arial,sans-serif;fill:#654a2d}.technical-sheet .dim-line{stroke:#886e49;stroke-width:1;fill:none}.technical-sheet .drawing-label{font-size:12px;letter-spacing:2px}.technical-sheet .table-geometry{animation:geometry-clarify .35s ease-out}.technical-sheet.invalid{opacity:.48}.planner-toolbar{display:flex;gap:20px;justify-content:space-between;align-items:center;margin-bottom:18px}.planner-toolbar .fine{margin:0;max-width:310px}.planner-note{border-left:3px solid #b18b52;padding:8px 20px;font-size:.85rem;color:var(--muted);margin-top:15px}.planner #drawing-caption{padding:12px 0 0;margin:0}.cost-details{margin-top:18px}.cost-details .spec-row{font-size:.8rem}.cost-details dl{margin:14px 0}.brief-panel #print-brief{width:100%;margin:15px 0}.handoff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:27px}.handoff-grid article{border-top:2px solid #b2905d;padding-top:22px}.handoff-grid p{font-size:.95rem;color:var(--muted)}.notebook-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}.notebook-grid article{border:1px solid #b99a6650;padding:30px;background:#e9d2ad66}.notebook-grid article>span{font-size:.75rem;letter-spacing:.15em;color:#866337}.notebook-grid h3{font:500 2rem/1.13 'Cormorant Garamond',Georgia,serif;margin:22px 0}.notebook-grid p{font-size:.95rem;color:var(--muted)}.notebook-grid a{font-size:.9rem}.source-line{font-size:.8rem;color:var(--muted);margin-top:25px;max-width:100%}.collect-study{margin-top:22px}.collect-study[aria-pressed=true]{background:#604326;color:#f6e6ca}.cabinet-study{display:grid;grid-template-columns:1.4fr 1fr;gap:40px;align-items:center}.cabinet-study h3{font:500 2.6rem/1.1 'Cormorant Garamond',Georgia,serif}.cabinet-study svg text{font-size:13px}.cabinet-study #cabinet-doors{opacity:1;transition:opacity var(--motion-scene),transform var(--motion-scene);transform-origin:360px 190px}.cabinet-study.interior-open #cabinet-doors{opacity:0;transform:scaleX(.96)}.compare-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.compare-grid article{border:1px solid #a5804b66;background:#f0dfbd66;padding:26px;position:relative}.compare-grid article.in-dossier{box-shadow:inset 0 3px #755332}.compare-grid h3{font:500 2.8rem 'Cormorant Garamond',Georgia,serif;margin-bottom:12px}.compare-grid dt{font-size:.75rem;letter-spacing:.09em;text-transform:uppercase;color:#81623a;margin-top:15px}.compare-grid dd{margin:7px 0 18px;font-size:.94rem}.dossier-panel{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;background:#39281c;color:#e8d4b4;padding:35px;margin-top:32px;border:7px solid #957147}.dossier-panel .actions{align-content:center;justify-content:flex-start;margin-top:0}.dossier-panel p{font-size:.95rem}.dossier-panel h3{font:500 2.5rem 'Cormorant Garamond',Georgia,serif;margin-bottom:10px}.dossier-panel .button{background:#d9bc88;color:#362516;border-color:#d9bc88}.dossier-panel .text-button{color:#e3cdad}.dossier-panel #dossier-list{font-size:.9rem;color:#d3ad72}.joint-layout{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:45px}.joint-layout h3{font:500 2.6rem/1.1 'Cormorant Garamond',Georgia,serif}.joint-scene{min-width:0}.joint-scene #joint-rail{transition:transform 850ms cubic-bezier(.22,.65,.2,1)}.joint-scene[data-joint-stage="1"] #joint-rail{filter:drop-shadow(0 0 7px #f6d893)}.joint-scene[data-joint-stage="3"] .joinery-guides{opacity:.4}.joinery-guides{transition:opacity .4s}.tool-links{font-size:.85rem;margin-top:25px}.linear-process{padding:20px 0}.linear-process ol{display:grid;grid-template-columns:1fr 1fr;gap:25px 55px;padding-left:25px;margin:26px 0}.linear-process li{padding-left:8px;break-inside:avoid}.linear-process h3{font:500 1.7rem/1.15 'Cormorant Garamond',Georgia,serif}.linear-process p{font-size:.94rem}.material-lab{display:grid;grid-template-columns:1fr 1fr;gap:7vw;align-items:center}.sample-stage{height:420px;position:relative;overflow:hidden;background:#9a713d;padding:14px;border:1px solid #785230;box-shadow:0 14px 28px #5a3b2329;--light-x:35%}.sample-stage img{width:100%;height:100%;object-fit:cover;transition:opacity var(--motion-short)}.sample-label{position:absolute;bottom:30px;left:30px;padding:8px 16px;background:#35271bdf;color:#ecd5b1;font-size:.9rem;letter-spacing:.1em}.sample-sheen{position:absolute;inset:14px;pointer-events:none;background:linear-gradient(115deg,transparent 25%,#fff8dd3a 48%,transparent 68%);background-size:250% 100%;background-position:var(--light-x) 50%;mix-blend-mode:screen;opacity:.35;transition:opacity .3s}.sample-stage[data-finish="1"] .sample-sheen{opacity:.55}.sample-stage[data-finish="2"] .sample-sheen{opacity:.85}.material-lab label{display:block;font-size:.9rem;font-weight:500;margin:20px 0 9px}.material-lab select{margin-bottom:15px}.material-lab .fine{margin-top:18px}.material-lab input[type=range]{padding:0;accent-color:#74502b;min-height:40px;background:transparent;border:0}.material-lab #finish-note{min-height:100px;margin-top:15px;color:var(--muted)}.tool-observatory{display:grid;grid-template-columns:1.5fr 1fr;gap:35px;align-items:center}.tool-map{position:relative;padding:8px;background:#7e5730;box-shadow:0 10px 25px #4d301723}.tool-map img{width:100%;height:auto}.tool-map button{position:absolute;left:var(--x);top:var(--y);transform:translate(-50%,-50%);height:36px;width:36px;border-radius:50%;border:1px solid #f0d4a2;background:#382617e8;color:#f1d6a9;box-shadow:0 0 0 5px #3522153a;transition:box-shadow .25s,background .25s;font-size:.85rem}.tool-map button[aria-pressed=true]{background:#f0cd8e;color:#3a281a;box-shadow:0 0 0 8px #f0cd8e35}.tool-inspector h3{font:500 2.7rem/1.1 'Cormorant Garamond',Georgia,serif}.tool-picker{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:27px}.tool-picker button{padding:12px 15px;text-align:left;border:1px solid #ae8b565c;background:#e7cfaa;color:#4a331e;font-size:.9rem;min-height:48px}.tool-picker button[aria-pressed=true]{background:#513720;color:#f1dfbc}.tool-grid .selected-tool{border-bottom:3px solid #9e753e}.tool-grid article{scroll-margin-top:35px}.sculpture-lab{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center}.sculpture-image{position:relative;padding:9px;background:#815b32;overflow:hidden}.sculpture-image img{width:100%;aspect-ratio:1.5;object-fit:cover}.sculpture-image .frame-change{animation:carve-frame .5s ease-out}.stage-badge{position:absolute;bottom:25px;left:25px;background:#302117da;color:#ead1a8;padding:8px 14px;font-size:.8rem;letter-spacing:.16em}.sculpture-lab h3{font:500 2.8rem/1.1 'Cormorant Garamond',Georgia,serif}.carving-steps{display:flex;gap:7px;margin-top:25px}.sculpture-lab #carving-description{min-height:135px}.sculpture-lab .fine{margin-top:20px}.deluxe-addition.has-entered .section-heading{animation:section-settle .7s ease-out}.hero-copy{animation:section-settle .85s ease-out}.hero-photo img{animation:atelier-arrival 1.3s ease-out}.hero-photo figcaption{animation:section-settle .9s .15s both}.wood-row details[open] p{animation:section-settle .3s ease-out}button:disabled{opacity:.45;cursor:not-allowed}.brief-panel .secondary:disabled{transform:none}.technical-sheet text{paint-order:stroke;stroke:#f4e8d0;stroke-width:3px;stroke-linejoin:round}.technical-sheet .drawing-label{stroke:none}@keyframes geometry-clarify{from{opacity:.5}to{opacity:1}}@keyframes carve-frame{from{opacity:.6;transform:scale(1.01)}to{opacity:1;transform:scale(1)}}@keyframes section-settle{from{opacity:.6;transform:translateY(9px)}to{opacity:1;transform:translateY(0)}}@keyframes atelier-arrival{from{transform:scale(1.035);filter:brightness(.88)}to{transform:scale(1);filter:brightness(1)}}
@media(min-width:1050px){body[data-route=bespoke] .builder{position:relative}body[data-route=bespoke] .planner{max-width:none;padding:25px 0 20px;border:0;grid-column:1/-1}body[data-route=bespoke] .planner .section-heading{margin-bottom:15px}body[data-route=bespoke] .planner .section-heading h2{font-size:2.3rem}.planner .section-heading .eyebrow{display:none}.planner .section-heading>p:last-child{font-size:.9rem}.planner .technical-sheet{max-width:950px;margin:auto}}
@media(max-width:960px){.handoff-grid{grid-template-columns:1fr 1fr}.joint-layout,.cabinet-study,.sculpture-lab,.tool-observatory{gap:25px;grid-template-columns:1fr 1fr}.tool-picker{grid-template-columns:repeat(2,1fr)}.notebook-grid{gap:20px}.notebook-grid article{padding:23px}.compare-grid{gap:16px}.compare-grid article{padding:20px}.sample-stage{height:370px}.dossier-panel{gap:20px}.sculpture-lab h3,.joint-layout h3,.cabinet-study h3{font-size:2.3rem}}
@media(max-width:650px){.section-heading{margin-bottom:25px}.section-heading h2{font-size:2.8rem}.notebook-grid,.compare-grid,.dossier-panel,.cabinet-study,.joint-layout,.sculpture-lab,.tool-observatory,.material-lab,.handoff-grid{grid-template-columns:1fr}.notebook-grid{gap:20px}.notebook-grid article{padding:25px}.notebook-grid h3{font-size:2.25rem}.notebook-grid p{font-size:1rem}.planner-toolbar{align-items:flex-start;flex-direction:column;gap:14px}.planner-toolbar .fine{max-width:none}.planner-note{font-size:.9rem;padding-left:16px}.technical-sheet svg text{font-size:17px}.technical-sheet .drawing-label{font-size:14px}.technical-sheet{margin:0 -2vw}.cost-details .spec-row{font-size:.85rem}.cost-details summary{font-size:1rem}.dossier-panel{padding:25px;border-width:5px}.dossier-panel .actions{gap:10px}.dossier-panel .button,.dossier-panel .secondary{width:100%;text-align:center}.compare-grid article{padding:24px}.linear-process ol{grid-template-columns:1fr;gap:24px}.linear-process p{font-size:1rem}.joint-layout .technical-sheet{margin-bottom:8px}.sample-stage{height:340px}.material-lab{gap:24px}.material-lab #finish-note{min-height:0}.tool-observatory{gap:28px}.tool-picker{grid-template-columns:1fr 1fr;gap:8px}.tool-picker button{font-size:.85rem;padding:12px}.tool-map button{width:34px;height:34px}.sculpture-lab{gap:26px}.sculpture-lab #carving-description{min-height:0}.carving-steps button{min-width:44px;padding:8px 13px}.carving-steps{gap:8px}.handoff-grid p{font-size:1rem}.section-heading>p{font-size:1rem}.sample-stage img{object-fit:cover}.actions .secondary{padding:10px 15px}.sculpture-lab .actions{gap:10px}}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important}.hero-photo figcaption{opacity:1;transform:none}}
@media print{body[data-print] main>*{display:none!important}body[data-print=brief] .builder{display:block!important;padding:0}body[data-print=brief] .brief-panel{display:block!important;border:0;box-shadow:none;padding:0}body[data-print=brief] .brief-panel:before{content:'OAK & CHISEL / HEARTH / MODEL 1.1';font:20pt Georgia;display:block;margin-bottom:20px}body[data-print=brief] .brief-panel button,body[data-print=brief] .brief-panel #carried-choice{display:none!important}body[data-print=brief] .cost-details{display:block}body[data-print=brief] .cost-details>*{display:block!important}body[data-print=dossier] #design-dossier{display:block!important;border:0;padding:0}body[data-print=dossier] .compare-grid{display:block}body[data-print=dossier] .compare-grid article{display:none}body[data-print=dossier] .compare-grid article.in-dossier{display:block;border:1px solid #aaa;background:white;box-shadow:none;margin-bottom:15px;break-inside:avoid}body[data-print=dossier] .dossier-panel{display:none}body[data-print] .section-heading .eyebrow{display:none}body[data-print] header,body[data-print] footer{display:none!important}*{animation:none!important;transition:none!important}}
.builder-output{min-width:0}.builder-output .planner{padding:0 0 28px;border:0;max-width:none}.builder-output .planner .section-heading{margin-bottom:17px}.builder-output .planner h2{font-size:2.2rem}.builder-output .planner .eyebrow,.builder-output .planner .section-heading>p:last-child{display:none}.builder-output .planner-toolbar{align-items:flex-start;flex-direction:column;gap:12px}.builder-output .planner-note{font-size:.8rem}.builder-output .planner .technical-sheet{margin:0}.builder-output .brief-panel{margin-top:8px}@media(min-width:961px){#builder-form{position:sticky;top:25px}}@media print{body[data-print=brief] .builder-output{display:block}body[data-print=brief] .builder-output>.planner{display:none!important}}
.technical-sheet svg text{font-size:20px}.technical-sheet .drawing-label{font-size:14px}.cabinet-study svg text{font-size:20px}#drawing-caption{font-size:.9rem}.technical-sheet svg{min-width:0}@media(max-width:650px){.technical-sheet svg text{font-size:26px}.technical-sheet .drawing-label{font-size:18px}.joint-scene svg text{font-size:22px}.cabinet-study svg text{font-size:24px}}
/* Keep instructional labels fully readable after assembly; only guide lines recede. */
.joint-scene[data-joint-stage="3"] .joinery-guides{opacity:1}.joint-scene[data-joint-stage="3"] .joinery-guides path{opacity:.45}
