@charset "utf-8";
:root{--paper:#f4f2ec;--ink:#232722;--muted:#666b62;--line:#d4d5cc;--accent:#bd4c2b;--dark:#242b25}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}img{display:block;width:100%;object-fit:cover}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.wrap{width:min(1320px,calc(100% - 100px));margin:auto}.header{display:flex;justify-content:space-between;align-items:center;min-height:112px;border-bottom:1px solid var(--line);gap:30px}.brand{display:flex;align-items:center;gap:15px}.brand-mark{font-size:27px;font-weight:900;letter-spacing:-2px;border:2px solid var(--ink);padding:8px 6px;position:relative}.brand-mark>span{color:var(--accent);font-size:23px;margin-left:3px}.brand-name{font-size:17px;letter-spacing:1px;font-weight:800}.brand-name small{display:block;font-size:9px;letter-spacing:1.6px;margin-top:6px}nav{display:flex;align-items:center;gap:31px;font-size:13px;font-weight:600}nav a:hover,.text-link:hover{color:var(--accent)}.nav-contact{padding:13px 0 13px 24px;border-left:1px solid var(--line)}.nav-contact span{margin-left:18px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.03fr 1fr;gap:45px;padding-top:56px;padding-bottom:55px;align-items:center}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;line-height:1.6;margin:0 0 27px}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--accent);margin-right:7px}h1{font-size:clamp(48px,5.35vw,78px);letter-spacing:-4px;line-height:1.02;margin:0 0 25px;font-weight:750}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--accent)}.intro{font-size:16px;line-height:1.75;color:var(--muted);max-width:420px;margin-bottom:30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:var(--accent);color:white;padding:18px 23px;font-size:13px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#993c22;transform:translateY(-2px)}.button span{font-size:20px}.hero-note{display:flex;justify-content:space-between;font-family:monospace;font-size:9px;gap:12px;border-top:1px solid var(--line);padding-top:20px;margin-top:40px;color:var(--muted)}.hero-image{margin:0;position:relative;background:var(--dark)}.hero-image>img{height:540px;object-position:52% center;filter:saturate(.75)}.hero-image:after{content:'';position:absolute;inset:0 0 45px;background:linear-gradient(180deg,rgba(0,0,0,.25),transparent 45%);pointer-events:none}.image-label{position:absolute;z-index:1;left:26px;top:27px;color:white;font-size:12px;line-height:1.4;letter-spacing:2px;font-weight:700}.hero-image figcaption{display:flex;justify-content:space-between;gap:12px;padding:18px;color:#eeeee5;font-size:9px;letter-spacing:1px}.hero-image b{color:#df8259;margin-left:14px}.capability-strip{background:var(--dark);color:#eceee4}.capability-strip .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-block:24px;font-size:10px;letter-spacing:1.4px;font-weight:600}.capability-strip i{color:#d87950;font-size:22px;font-style:normal}.section{padding-top:95px;padding-bottom:95px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:38px;gap:30px}h2{font-size:clamp(36px,3.7vw,53px);line-height:1.09;letter-spacing:-2px;margin:0}.section-heading .eyebrow{margin-bottom:18px}.section-heading>p{font-size:14px;line-height:1.8;color:var(--muted);margin:0}.project-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:25px;align-items:start}.project{border:0;background:none;text-align:left;padding:0;cursor:pointer;width:100%}.project-photo{display:block;position:relative;overflow:hidden;background:#d7d6ca}.project-photo img{height:320px;filter:saturate(.75);transition:transform .4s}.project-large .project-photo img{height:410px}.project:hover img{transform:scale(1.035)}.view{position:absolute;left:15px;bottom:15px;padding:10px;background:var(--paper);font-size:11px;opacity:0;transition:opacity .2s}.project:hover .view,.project:focus-visible .view{opacity:1}.project-meta{display:flex;justify-content:space-between;padding-top:18px;gap:10px}.project-meta small{display:block;font-size:9px;letter-spacing:1.5px;color:var(--muted);margin-bottom:9px}.project-meta strong{font-size:16px;font-weight:600}.project-arrow{font-size:24px}.services{background:#e8e9e1;border-block:1px solid var(--line)}.service-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px}.service-intro{max-width:380px;line-height:1.8;color:var(--muted);font-size:15px;margin:25px 0}.text-link{display:inline-flex;gap:24px;border-bottom:1px solid var(--ink);padding-bottom:8px;font-size:13px;font-weight:600}.service-list{border-top:1px solid #bfc3b8}.service-list details{border-bottom:1px solid #bfc3b8}.service-list summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:18px;padding:24px 0;font-size:19px;letter-spacing:-.4px}.service-list summary::-webkit-details-marker{display:none}.service-list summary>span{font-size:10px;letter-spacing:0;color:var(--muted)}.service-list summary b{margin-left:auto;font-size:23px;font-weight:400;color:var(--accent)}details[open] summary b{transform:rotate(45deg)}.service-list details p{margin:0 32px 25px;max-width:390px;color:var(--muted);font-size:14px;line-height:1.8}.story{display:grid;grid-template-columns:1fr 1fr;gap:85px;align-items:center}.story-image{position:relative}.story-image img{height:500px;filter:saturate(.6)}.story-stamp{position:absolute;left:-15px;bottom:27px;background:var(--dark);color:var(--paper);padding:20px 24px;font-size:11px;line-height:1.6;letter-spacing:1.5px;transform:rotate(-4deg)}.story-copy h2{margin-bottom:26px}.story-copy>p:not(.eyebrow){color:var(--muted);font-size:14px;line-height:1.9}.story-copy .story-lead{font-size:18px!important;color:var(--ink)!important;line-height:1.6!important}.signature{display:block;font-family:Georgia,serif;font-style:italic;font-size:21px;margin-top:30px}.contact{background:var(--accent);color:#fff5e8;padding:65px 0 75px}.contact .eyebrow{opacity:.8;margin-bottom:22px}.contact-main{display:flex;align-items:center;justify-content:space-between;gap:40px}.contact h2{font-size:clamp(45px,5.3vw,75px);letter-spacing:-3px}.contact em{color:#fff5e8}.contact-main p{font-size:15px;line-height:1.8;margin-top:0}.button-dark{background:var(--dark)}.button-dark:hover{background:#151b16}.contact-secondary{display:block;font-size:12px;margin-top:20px;text-decoration:underline;text-underline-offset:4px}footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:25px;padding-top:38px;padding-bottom:20px}.footer-brand{font-size:18px;font-weight:800;letter-spacing:-.5px}.footer-brand span{display:block;font-size:8px;letter-spacing:1.5px;font-weight:400;margin-top:8px}footer>div{display:flex;gap:25px;font-size:11px}.preview-note{width:100%;border-top:1px solid var(--line);padding-top:16px;color:var(--muted);font-size:10px;line-height:1.6}dialog{border:0;padding:0;background:var(--paper);color:var(--ink);width:min(1050px,92vw);max-height:92vh}dialog::backdrop{background:rgba(15,20,16,.86)}dialog>img{height:auto;max-height:73vh;object-fit:contain;background:#181e19}.close{position:absolute;right:12px;top:12px;width:42px;height:42px;background:var(--paper);border:0;cursor:pointer;font-size:21px}.lightbox-caption{padding:20px;display:flex;align-items:center;justify-content:space-between;gap:20px}.lightbox-caption h2{font-size:22px;letter-spacing:-.5px}.lightbox-caption span{font-size:9px;letter-spacing:1px}.skip{position:fixed;top:-100px;left:12px;background:var(--paper);padding:12px;z-index:20}.skip:focus{top:10px}body.modal-open{overflow:hidden}
@media(min-width:1550px){.hero{gap:75px}.hero-image>img{height:600px}}
@media(max-width:1050px){.wrap{width:calc(100% - 56px)}nav{gap:18px;font-size:12px}.hero{gap:30px}h1{letter-spacing:-2.5px}.hero-image>img{height:490px}.hero-note{flex-direction:column;gap:5px}.project-grid{gap:18px}.project-photo img{height:270px}.project-large .project-photo img{height:350px}.service-layout,.story{gap:40px}.service-list summary{font-size:17px}.capability-strip .wrap{font-size:8px;letter-spacing:1px}}
@media(max-width:760px){.wrap{width:calc(100% - 40px)}.header{min-height:85px;position:relative}.brand-mark{font-size:23px;padding:5px}.brand-name{font-size:14px}.brand-name small{font-size:8px}.menu-toggle{display:flex;gap:18px;background:none;border:1px solid var(--line);padding:10px;font-size:12px;align-items:center}.menu-toggle span{font-size:18px}nav{display:none;position:absolute;top:84px;left:-20px;right:-20px;background:var(--paper);z-index:5;padding:20px;border-bottom:1px solid var(--line);align-items:stretch;font-size:15px}nav.is-open{display:flex;flex-direction:column}nav a{padding:12px 0}.nav-contact{border-left:0;border-top:1px solid var(--line)}.hero{grid-template-columns:1fr;padding-top:36px;padding-bottom:30px;gap:30px}.eyebrow{font-size:9px;margin-bottom:20px}h1{font-size:clamp(44px,10vw,72px);letter-spacing:-2.8px}.intro{font-size:15px;max-width:480px}.hero-note{flex-direction:row;margin-top:28px;font-size:8px}.hero-image>img{height:420px}.hero-image figcaption{font-size:8px;padding:16px}.capability-strip .wrap{flex-wrap:wrap;justify-content:center;gap:14px;font-size:8px;padding-block:18px}.capability-strip i{font-size:15px}.capability-strip i:last-of-type{display:none}.section{padding-block:60px}.section-heading{display:block}.section-heading>p{margin-top:20px;font-size:13px}.section-heading>p br{display:none}h2{font-size:39px;letter-spacing:-1.8px}.project-grid{grid-template-columns:1fr 1fr;gap:30px 18px}.project-large{grid-column:1/-1}.project-large .project-photo img{height:400px}.project-photo img{height:240px}.project-meta strong{font-size:14px}.project-meta small{font-size:8px}.service-layout,.story{grid-template-columns:1fr;gap:35px}.service-intro{max-width:none}.service-list summary{font-size:18px}.story-image img{height:420px}.story-stamp{left:-8px}.story-copy .eyebrow{font-size:8px}.contact{padding:45px 0}.contact-main{display:block}.contact h2{font-size:55px;margin-bottom:30px}.contact-main p br{display:none}.contact-main p{max-width:320px}footer{align-items:flex-start}footer>div{gap:20px;flex-wrap:wrap}.lightbox-caption{display:block}.lightbox-caption span{display:block;margin-top:10px}}
@media(max-width:420px){.hero-image>img{height:340px}.hero-note{font-size:7px}.project-photo img{height:190px}.project-large .project-photo img{height:330px}.contact h2{font-size:48px}.brand-name{font-size:12px}.brand-name small{font-size:7px}.hero-image figcaption{letter-spacing:.5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Dark workshop theme */
:root{--paper:#050505;--ink:#f5f5f5;--muted:#b9b9b9;--line:#8b8b8b;--accent:#ebd826;--dark:#111}body{background:#050505}.header{border-bottom-color:#eee}.hero-image,.project-photo,.story-image{border:1px solid #eee}.hero-image figcaption,.capability-strip{background:#111}.services{background:#0b0b0b}.service-list,.service-list details{border-color:#999}.contact{background:#111;border-block:1px solid white;color:var(--ink)}.contact em{color:var(--accent)}.button{background:var(--accent);color:#080808}.button:hover{background:#f2e76b}.button-dark{background:var(--accent)}.story-stamp{color:var(--accent);border:1px solid var(--accent)}.hero-image>img,.project-photo img,.story-image img{filter:none}.hero-image b,.capability-strip i{color:var(--accent)}.gallery-section{border-top:1px solid #aaa}.gallery-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin:28px 0}.gallery-tabs{display:flex;gap:8px}.gallery-tabs button,.gallery-more,.gallery-nav button,.gallery-open{background:#0b0b0b;color:white;border:1px solid #ddd;padding:12px 18px;cursor:pointer}.gallery-tabs button[aria-pressed=true]{background:#fff;color:#000}.gallery-count{margin-left:auto;color:var(--muted);font-size:12px}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.gallery-card{min-width:0;background:#0b0b0b;border:1px solid #ddd;padding:0;color:white;text-align:left;cursor:pointer}.gallery-card img{aspect-ratio:4/3;object-fit:cover}.gallery-card:hover,.gallery-card:focus-visible{border-color:var(--accent);outline-color:var(--accent)}.gallery-card span{display:flex;justify-content:space-between;padding:14px;font-size:13px}.gallery-card small{color:var(--accent)}.gallery-more{display:block;margin:30px auto 0}.gallery-description{color:var(--muted);font-size:14px;line-height:1.8;max-width:740px}.gallery-notice{padding:14px 18px;border-left:2px solid var(--accent);background:#111;font-size:12px;color:#ccc;line-height:1.6}.gallery-nav{display:flex;align-items:center;justify-content:space-between;padding:12px 20px;gap:12px;border-top:1px solid #888}.gallery-position{font-size:12px;color:#ccc}dialog{border:1px solid white;background:#050505}dialog video{display:block;width:100%;max-height:70vh;background:black}dialog .close{background:#000;color:white;border:1px solid white;z-index:2}.gallery-error{padding:15px;color:#ffbf75}.gallery-grid [hidden],[hidden]{display:none!important}.gallery-open{display:inline-block;font-size:12px;padding:10px}.lightbox-caption{padding-right:65px}.lightbox-caption h2{color:white}.lightbox-caption span{color:#ccc}
@media(max-width:1050px){nav{gap:15px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media(max-width:760px){.gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.gallery-card span{padding:10px;font-size:11px}.gallery-count{width:100%;margin-left:0}.gallery-nav{padding:12px;flex-wrap:wrap}.gallery-nav button{padding:10px}.gallery-position{font-size:11px}.gallery-open{font-size:11px}.gallery-toolbar{margin-top:20px}}

/* Original CNC by TME logo, displayed without cropping or distortion. */
.brand-logo{width:86px;height:86px;object-fit:contain;flex-shrink:0}.brand{flex-shrink:0}.header{padding-block:12px}
@media(max-width:1050px) and (min-width:761px){.brand-name{font-size:13px}.brand-name small{font-size:8px}.brand{gap:10px}.brand-logo{width:72px;height:72px}.header{gap:18px}nav{gap:12px;font-size:11px}.nav-contact{padding-left:12px}.nav-contact span{margin-left:8px}}
@media(max-width:760px){.brand-logo{width:62px;height:62px}.header{min-height:90px;padding-block:12px}nav{top:89px}.brand{gap:12px}}
.media-description{white-space:pre-line;padding:0 20px 20px;margin:0;color:var(--muted);font-size:14px;line-height:1.7}.gallery-card>span{gap:12px;line-height:1.5}.gallery-card small{flex-shrink:0}.gallery-grid>p{grid-column:1/-1}.gallery-notice{border-left-color:var(--line)}

/* A fixed window; only the photographs inside it pan and crossfade. */
.hero-viewport{position:relative;height:540px;overflow:hidden;background:#111}.hero-slide{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity 1.3s ease;transform:scale(1.12);pointer-events:none}.hero-slide.is-active{opacity:1;z-index:1}.hero-slide.is-active,.hero-slide.is-leaving{animation:workshop-pan 10s linear both}.hero-slide:nth-child(even){animation-direction:reverse}.hero-slideshow:after{inset:0 0 46px;z-index:2}.hero-slideshow .image-label{z-index:3;pointer-events:none}.hero-slide-controls{position:absolute;bottom:62px;right:16px;z-index:4;display:flex;gap:6px}.hero-slide-controls button{min-width:44px;min-height:44px;padding:8px 12px;background:rgba(0,0,0,.8);border:1px solid #fff;color:#fff;cursor:pointer;font-size:12px}.hero-slide-controls button:hover{color:var(--accent);border-color:var(--accent)}.hero-slideshow.is-paused .hero-slide{animation-play-state:paused}.hero-slideshow figcaption{position:relative;z-index:3;min-height:46px;align-items:center}.hero-slide-count{white-space:nowrap}
@keyframes workshop-pan{from{transform:scale(1.14) translate(-2%,1%)}to{transform:scale(1.23) translate(2%,-1%)}}
@media(min-width:1550px){.hero-viewport{height:600px}}@media(max-width:1050px){.hero-viewport{height:490px}}@media(max-width:760px){.hero-viewport{height:420px}}@media(max-width:420px){.hero-viewport{height:340px}}
@media(prefers-reduced-motion:reduce){.hero-slide.is-active,.hero-slide.is-leaving{animation:none;transform:none}.hero-slide{transition:none}}

/* Header navigation labels. */
.header nav a{text-transform:uppercase}

.image-label-top{display:block;white-space:nowrap}.image-label-reality{display:flex;justify-content:space-between;letter-spacing:0}
.contact-form{margin-top:45px;border:1px solid #ddd;padding:28px;max-width:900px}.contact-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.contact-form label{display:block;font-size:13px;line-height:1.5;margin-bottom:20px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:8px;padding:14px;background:#050505;color:white;border:1px solid #999;font:inherit;border-radius:0}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.contact-form textarea{resize:vertical}.contact-form .button{border:0;cursor:pointer}.contact-form button:disabled{opacity:.55;cursor:wait}.contact-form #contact-status{font-size:13px;line-height:1.6;margin-bottom:0}.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}#contact-retry{margin-top:12px;padding:10px;border:1px solid white;background:#111;color:white;cursor:pointer}@media(max-width:760px){.contact-fields{grid-template-columns:1fr;gap:0}.contact-form{padding:20px}}
.workshop-tools{border-block:1px solid #aaa;background:#080808}.tool-intro,.tool-heading p{font-size:14px;line-height:1.8;color:var(--muted);max-width:800px}.tool-tabs,.tool-actions{display:flex;flex-wrap:wrap;gap:10px;margin:25px 0}.tool-tabs button,.tool-secondary{background:#111;color:#fff;border:1px solid #ddd;min-height:44px;padding:12px 18px;cursor:pointer;font:inherit;font-size:13px}.tool-tabs button[aria-pressed=true]{background:var(--accent);color:#000;border-color:var(--accent)}.tool-heading{margin:35px 0 22px}.tool-heading h3{font-size:25px;letter-spacing:-.6px;margin:0 0 12px}.tool-layout{display:grid;grid-template-columns:1.2fr 1fr;gap:40px;align-items:start}.tool-fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}.workshop-tools label{display:block;font-size:13px;line-height:1.6}.workshop-tools input,.workshop-tools select,.workshop-tools textarea{display:block;width:100%;margin-top:8px;min-height:48px;padding:12px;background:#050505;color:#fff;border:1px solid #aaa;border-radius:0;font:inherit;font-size:16px}.workshop-tools select{color-scheme:dark}.workshop-tools input:focus,.workshop-tools select:focus,.workshop-tools textarea:focus{outline:2px solid var(--accent);outline-offset:2px}.workshop-tools button:disabled{opacity:.5;cursor:not-allowed}.workshop-tools .button{border:0;cursor:pointer}.tool-note{font-size:12px;color:var(--muted);line-height:1.8}.estimate-summary{border:1px solid white;padding:25px;background:#111}.estimate-summary output{display:block;font-size:36px;color:var(--accent);letter-spacing:-1px}.estimate-summary ul{padding:0;list-style:none}.estimate-summary li{display:flex;justify-content:space-between;gap:20px;border-bottom:1px solid #555;padding:14px 0;font-size:12px;line-height:1.7}.estimate-summary li strong{white-space:nowrap}.workshop-tools [role=status]{font-size:13px;line-height:1.7}.tool-help{border:1px solid #aaa;padding:16px;margin-bottom:25px}.tool-help summary{cursor:pointer;font-size:13px;min-height:28px}.orientation-diagrams{display:grid;grid-template-columns:1fr 1fr;gap:20px}.orientation-diagrams figure{margin:20px 0 0}.orientation-diagrams figcaption{font-size:12px;padding-top:10px}.code-result{margin-top:35px;border:1px solid white;padding:25px}.code-result textarea{font-family:Consolas,monospace;white-space:pre;line-height:1.6;resize:vertical}.workshop-tools form{min-width:0}#gcode-result-summary{font-size:12px;color:var(--muted)}
@media(min-width:761px) and (max-width:1200px){.header{flex-wrap:wrap;padding-bottom:20px}.header nav{flex-wrap:wrap}.tool-layout{gap:25px}}
@media(max-width:760px){.tool-layout,.tool-fields,.orientation-diagrams{grid-template-columns:1fr}.tool-layout{gap:25px}.tool-tabs button{flex:1}.tool-actions .button,.tool-actions .tool-secondary{flex:1;justify-content:center}.code-result,.estimate-summary{padding:18px}.estimate-summary output{font-size:30px}.tool-heading h3{font-size:23px}}

.header nav{min-width:0;flex-wrap:wrap;justify-content:flex-end}.header nav a{white-space:nowrap}#estimates .tool-heading,#gcode .tool-heading{margin-top:30px}
.faq-section{border-top:1px solid #aaa}.faq-list{margin-top:28px}.faq-list details{border:1px solid #ddd;margin-bottom:12px;background:#080808}.faq-list summary{padding:20px;cursor:pointer;font-size:clamp(16px,2vw,21px);font-weight:600;overflow-wrap:anywhere}.faq-list summary::marker{color:var(--accent)}.faq-list summary:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.faq-list details[open]{border-color:var(--accent)}.faq-answer{padding:0 22px 20px;color:var(--muted);font-size:16px;line-height:1.8;overflow-wrap:anywhere}.faq-answer p{margin:0 0 16px}.faq-answer p:last-child{margin-bottom:0}.faq-answer ul,.faq-answer ol{padding-left:24px}
@media(max-width:760px){
  html{scroll-padding-top:calc(96px + env(safe-area-inset-top,0px))}
  .header.wrap{position:sticky;top:0;z-index:10;width:100%;min-height:76px;padding:calc(8px + env(safe-area-inset-top,0px)) 20px 8px;background:rgba(5,5,5,.92);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid #ddd;box-shadow:0 5px 18px rgba(0,0,0,.4)}
  .header .brand-logo{width:52px;height:52px}
  .header .menu-toggle{min-height:44px;padding:10px 14px;border-color:var(--accent);color:var(--accent);background:rgba(0,0,0,.65)}
  .header .menu-toggle[aria-expanded=true]{background:var(--accent);color:#050505}
  .header nav{top:100%;left:0;right:0;padding:12px 20px 20px;gap:4px;background:rgba(5,5,5,.97);border-bottom:1px solid var(--accent);max-height:calc(100vh - 96px - env(safe-area-inset-top,0px));max-height:calc(100dvh - 96px - env(safe-area-inset-top,0px));overflow-y:auto;overscroll-behavior:contain;box-shadow:0 12px 18px rgba(0,0,0,.5)}
  .header nav a{display:block;min-height:44px;padding:12px 8px;white-space:normal}
}
.guide-step{margin:30px 0;border-top:1px solid #777;padding-top:26px}.guide-step h3,#gcode-settings>h3{font-size:25px;margin:0 0 14px;scroll-margin-top:16px}.guide-cards{display:grid;gap:18px}.guide-orientations{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-operations{grid-template-columns:repeat(3,minmax(0,1fr))}.guide-card{min-width:0;border:1px solid #ddd;background:#0b0b0b;color:#fff;text-align:left;padding:0;cursor:pointer}.guide-card img{width:100%;height:auto;object-fit:contain}.guide-card>span{display:block;padding:18px}.guide-card strong{display:block;font-size:20px}.guide-card small{display:block;color:var(--muted);font-size:13px;line-height:1.6;margin-top:8px}.guide-card:hover,.guide-card[aria-pressed=true]{border-color:var(--accent)}.guide-card[aria-pressed=true]>span{box-shadow:inset 0 3px var(--accent)}.guide-card:hover strong{color:var(--accent)}.guide-selection{display:flex;align-items:center;justify-content:space-between;gap:16px;border:1px solid var(--accent);background:#111;padding:16px 20px}.guide-selection p{margin:0;color:var(--accent);font-size:17px}#gcode-settings{border-top:1px solid #777;padding-top:28px;margin-top:28px}.workshop-tools .gcode-help-link{display:inline-block;margin-left:12px;color:var(--accent);text-decoration:underline;text-underline-offset:4px;font-size:13px;line-height:32px;min-height:32px}#gcode-help-viewer{width:min(1100px,94vw);padding:20px;overflow:auto;border:1px solid #fff}#gcode-help-viewer .gcode-help-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}#gcode-help-viewer h2{font-size:23px;letter-spacing:-.5px}#gcode-help-viewer img{width:100%;height:auto;max-height:none;object-fit:contain}#gcode-help-viewer .tool-note{font-size:13px;line-height:1.7;color:var(--muted)}#gcode-help-viewer .tool-secondary{flex-shrink:0}#gcode-help-viewer .text-link{font-size:13px}
@media(max-width:760px){.guide-orientations,.guide-operations{grid-template-columns:1fr}.guide-selection{align-items:flex-start;flex-direction:column}.guide-card>span{padding:16px}.guide-step h3,#gcode-settings>h3{font-size:23px}#gcode-help-viewer{padding:14px}#gcode-help-viewer h2{font-size:19px}.workshop-tools .gcode-help-link{min-height:44px;line-height:44px}}
.gcode-field{min-width:0}.gcode-field-hint{display:block;margin-top:8px;font-size:12px;line-height:1.65;color:var(--muted);white-space:pre-line;overflow-wrap:anywhere}
#cnc_services>h3{font-size:24px;line-height:1.35;margin:0;padding:24px 0;border-bottom:1px solid #999}#cnc_services summary>.service-name{font-size:inherit;letter-spacing:inherit;color:inherit;flex:1}#cnc_services .service-name b{font-size:inherit;font-weight:700;margin:0;color:inherit;transform:none}


.build-progress{border-top:1px solid var(--line)}.build-progress-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px;margin-top:24px}.build-progress-card{min-width:0;border:1px solid #bbb;background:#0b0b0b;padding:18px}.build-card-heading{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px}.build-card-heading h3{font-size:20px;margin:0}.build-count{color:var(--muted);font-size:12px;white-space:nowrap}.build-stage{position:relative;aspect-ratio:4/3;background:#050505;overflow:hidden;border:1px solid #555;display:grid;place-items:center}.build-stage .build-progress-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:0;transition:opacity .6s ease;transform:none}.build-stage .build-progress-photo.is-visible{opacity:1}.build-empty{color:var(--muted);font-size:14px;text-align:center;padding:20px}.build-caption{font-size:13px;color:var(--muted);min-height:2.8em;line-height:1.4;margin:14px 0}.build-progress-tools{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.build-progress-tools button{background:#111;color:var(--accent);border:1px solid #999;padding:11px 15px;min-height:44px;cursor:pointer;font-size:13px}.build-progress-tools button:disabled{opacity:.4;cursor:default}.build-progress-tools [role=status]{font-size:13px;color:var(--muted)}@media(max-width:700px){.build-progress-grid{grid-template-columns:1fr;gap:20px}.build-progress-card{padding:14px}}@media(prefers-reduced-motion:reduce){.build-stage .build-progress-photo{transition:none}}
.build-progress.build-unpublished::before{content:'ADMIN PREVIEW - hidden from visitors';display:block;color:var(--accent);border:1px dashed var(--accent);padding:12px;margin-bottom:24px;font:700 12px Arial,sans-serif}

.build-caption:empty{display:none}


.build-play-note{font-size:13px;color:var(--muted);margin:14px 0}.build-progress-tools [data-build-toggle]{background:var(--accent);color:#080808;border-color:var(--accent)}.build-play-note:empty{display:none}


.build-stage .build-progress-video{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#050505}

.build-card-heading{flex-wrap:wrap}.build-card-heading h3{margin-right:auto}.build-details-toggle{color:var(--accent);background:#111;border:1px solid var(--accent);padding:9px 12px;min-height:44px;font:inherit;font-size:13px;cursor:pointer}.build-details-toggle:hover,.build-details-toggle:focus-visible{background:var(--accent);color:#080808}.build-details{border:1px solid var(--accent);padding:16px;margin:0 0 16px;color:#eee;font-size:14px;line-height:1.65;overflow-wrap:anywhere}.build-details p:first-child{margin-top:0}.build-details p:last-child{margin-bottom:0}
