:root{--bg:#123c65;--fg:#f3f7fb;--muted:#c0d3e3;--line:#6d90ae;--accent:#fff;background:var(--bg)}
body{background-color:var(--bg);background-image:url('./blueprint-grid.svg')}
.stage{background-color:var(--bg);background-image:url('./blueprint-grid.svg')}
.stage::before{content:'';position:absolute;inset:13px;border:1px solid #cedfed44;pointer-events:none;z-index:-1}
.site-header{padding-top:29px}.brand-symbol{border:1px solid #ebf5ff;background:transparent;color:white}.brand-ltd{color:#c2d6e8}.contact-link{border-color:#c0d3e3}.contact-link span{color:#fff}
.stage-caption{top:15.5%;color:#c6dbea;left:42%;padding:10px 0;border-top:1px solid #d9eafa50;border-bottom:1px solid #d9eafa50}
#car-scene{left:31%;top:24%;width:69%;height:53%;}.hero h1 span{color:#bed5e9}.hero p.hero-intro{color:#d4e3ef}
.chapter h2{color:#f3f7fb;}.chapter p:not(.eyebrow){color:#d5e3ef}.eyebrow{color:#f3f7fb;}
.function-context{border-color:#8baac175}.function-context dt{color:#eef5fc;}.function-context dd{color:#c3d8e9}.text-link{border-color:#c6deed}.text-link span{color:#fff}.scroll-cue>span{border-color:#daeaff99;color:#fff}
.scene-tools{left:42%;bottom:14.5%;color:#c6dbea;gap:15px}.scene-tools button{color:white;border-color:#d3e7f8}
.part-label{display:none}.pin{width:5px;height:5px;border-color:white}.part-label .pin{display:none}
.annotation-lines{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;overflow:visible;color:#fff;z-index:1}
.annotation-lines>path{stroke:#f5faff;stroke-width:1;fill:none;opacity:.82;stroke-linejoin:round;stroke-linecap:round}
.annotation-lines #dimension-line{stroke-width:.7;opacity:.5}.annotation-lines text{fill:#c7ddec;text-anchor:middle}
.hand-note{position:absolute;color:#fff;max-width:230px;pointer-events:none;z-index:2;white-space:pre-line;transform:rotate(-4deg);opacity:0}
.note-two{transform:rotate(3deg);}
.drawing-note{bottom:13%;color:#c9ddeb}.drawing-note>span{color:#abc7dd}.title-block{border:1px solid #b9d7ec99;text-align:left;margin-bottom:6px;min-width:245px}.title-block span{display:block;padding:3px 10px;border-bottom:1px solid #b9d7ec70;}.title-block span:last-child{border:0}.title-block b{float:right}
.chapter-nav{border-color:#b7d5ea66}.chapter-nav a{color:#a4c3db}.chapter-nav a span{color:#aac8dd}.chapter-nav a[aria-current]{color:#fff}.chapter-nav a[aria-current] span{color:#fff}.progress-line span{background:#fff}
.workshop{background:#163f66;color:#f3f7fb;border-top:1px solid #a4c6df;border-bottom:1px solid #a4c6df}.workshop .eyebrow{color:#d3e4f1}.workshop-intro{color:#dae7f1}.service-list details,.service-list details:last-child{border-color:#91b2cb77}.service-list summary .mono{color:#bdd4e4}.service-list details p{color:#cadce9}.marques{border-color:#91b2cb77}.marques span{color:#a4c0d5}
.contact{background:transparent;color:#f3f7fb}.contact .eyebrow{color:#d3e4f1}.phone-link{border-color:#d2e3f0}.contact .text-link{border-color:#d2e3f0}.contact .text-link span{color:#fff}.contact a:focus-visible,.workshop summary:focus-visible{outline-color:#fff}footer{border-top:1px solid #91b2cb66;color:#c9deed;background:#113556}
.scene-unavailable .annotation-lines,.scene-unavailable .hand-note{display:none}.scene-unavailable .scene-loading{background:var(--bg);color:white}
@media(min-width:1500px){.scene-tools{gap:22px}}
@media(max-width:1100px){.drawing-note{bottom:18%;right:var(--pad)}.title-block{min-width:205px}.scene-tools{bottom:14%;left:42%}.hand-note{max-width:185px}}
@media(max-width:760px){.stage::before{inset:9px}.stage-caption{top:15%;left:var(--pad);right:var(--pad);padding:7px 0}.hero-visible .stage-caption{top:34%}#car-scene{left:0;top:25%;height:32%;width:100%}.hero-visible #car-scene{top:42%;height:29%}.hand-note{max-width:165px;}.note-two{display:none}.annotation-lines #leader-two{display:none}.annotation-lines #dimension-line,.annotation-lines #dimension-label{display:none}.hero-visible .scene-tools{top:72%}.scene-tools{top:56%;left:auto;right:var(--pad);bottom:auto;gap:15px}.chapter:not(.hero) .chapter-copy{background:var(--bg)}.chapter p:not(.eyebrow){color:#d5e3ef}.function-context dd{color:#c4daeb}.drawing-note{display:none}.part-label{display:none}.contact{background-color:var(--bg)}footer{background-color:#113556}}
.drawing-note>a{display:inline-block;color:#d1e5f4;text-decoration:underline;text-underline-offset:4px}
.chapter .flow-paths{display:block;margin-top:17px;border-top:1px solid #8baac175;padding-top:12px}.chapter .flow-paths p{margin:5px 0;color:#dbe9f4}.flow-paths b{display:block;color:#fff;}
.drawing-reference{position:relative;z-index:3;background:#123c65;padding:25px var(--pad);border-top:1px solid #a4c6df;color:#dbe9f4}.drawing-reference summary{display:flex;justify-content:space-between;cursor:pointer;list-style:none}.drawing-reference summary::-webkit-details-marker{display:none}.drawing-reference details[open] summary span{transform:rotate(45deg)}.reference-content{max-width:900px;margin:25px 0 10px;}.reference-content p{margin:0 0 18px}.reference-links{padding-left:20px}.reference-links li{margin:9px 0}.reference-links a{text-decoration:underline;text-underline-offset:4px;}
@media(max-width:760px){.function-context dt:nth-of-type(2),.function-context dd:nth-of-type(2){display:block}.drawing-reference{padding-top:22px;padding-bottom:22px}}
@media print{body,.stage,.workshop,.contact,.drawing-reference{background:white;color:#123c65}.annotation-lines,.hand-note{display:none}}

/* Original workshop artwork, reversed lettering for the blue masthead. */
.site-header{position:fixed;inset:0 0 auto;padding:16px var(--pad);background:var(--bg) url('./blueprint-grid.svg');border-bottom:1px solid #91b2cb55}
.brand-mark{display:block;width:220px;height:auto;overflow:visible}
.header-details{text-align:right}
.header-location{font-family:var(--type-drawing);font-size:.75rem;font-weight:400;letter-spacing:0;line-height:1.5;margin:0 0 7px;color:var(--muted)}
.stage-caption{top:max(15.5%,140px)}
.contact{background:var(--bg)}
.site-header nav a{padding:12px 0}
.workshop{padding-top:80px}
.section-heading h2{margin-bottom:45px}
.contact{padding-top:75px;padding-bottom:75px}
@media(max-width:760px){
  .site-header{padding:16px var(--pad)}
  .brand-mark{width:176px}
  .header-location{display:none}
  .site-header nav{gap:18px}
  .stage-caption{top:max(15%,112px)}
  .hero-visible .stage-caption{top:34%}
  .workshop{padding-top:54px}
  .section-heading h2{margin-bottom:30px}
  .contact{padding-top:50px;padding-bottom:50px}
}
@media print{.site-header{display:none}}

/* Exterior study: the ink recedes before it reaches the service descriptions. */
.workshop{isolation:isolate;overflow:hidden}
/* Fixed drawing height keeps the camera framing independent of open service rows. */
.workshop-drawing{position:absolute;z-index:-1;pointer-events:none;overflow-anchor:none;left:-7%;top:100px;width:85%;height:640px;opacity:.4;mask-image:linear-gradient(to right,#000 0%,#000 24%,#0009 53%,transparent 85%);-webkit-mask-image:linear-gradient(to right,#000 0%,#000 24%,#0009 53%,transparent 85%)}
.workshop-drawing canvas{display:block;width:100%;height:100%}
.workshop-callout{position:absolute;left:0;top:100px;width:100%;height:640px;pointer-events:none;color:#f3f7fb}
.workshop-callout[hidden]{display:none}
.workshop-hand-note{position:absolute;left:var(--pad);font-family:var(--type-note);font-size:1.625rem;font-weight:400;line-height:1.2;white-space:nowrap;transform:rotate(-4deg);transform-origin:left center}
.workshop-note-arrow{position:absolute;inset:0;width:100%;height:100%;overflow:visible;fill:none;stroke:currentColor;stroke-width:1.35;stroke-linecap:round;stroke-linejoin:round}
.workshop-arrow-stroke{opacity:.85}
@media(max-width:760px){.workshop-drawing{left:-18%;top:130px;width:140%;height:420px;opacity:.26;mask-image:linear-gradient(to right,#000 5%,#0008 45%,transparent 80%);-webkit-mask-image:linear-gradient(to right,#000 5%,#0008 45%,transparent 80%)}}
@media(max-width:760px){.workshop-callout{top:130px;height:420px}.workshop-hand-note{font-size:1.5rem}}
@media print{.workshop-drawing,.workshop-callout{display:none}.workshop-overview{min-height:0!important}}
