/* The workshop's more expressive, engraved-metal presentation. */
body{isolation:isolate}
.workshop-steam{position:fixed;inset:0;overflow:hidden;z-index:-1;pointer-events:none;contain:strict}
.workshop-steam span{position:absolute;bottom:-55%;left:-18%;width:65vw;max-width:900px;height:115vh;background:radial-gradient(ellipse at 48% 72%,#c0d6d129 0,transparent 28%),radial-gradient(ellipse at 64% 49%,#c1d4cd24 0,transparent 25%),radial-gradient(ellipse at 44% 25%,#a3c2bd1c 0,transparent 24%);filter:blur(23px);opacity:0;transform-origin:bottom center;animation:workshop-steam-rise 28s linear infinite;will-change:transform,opacity}
.workshop-steam span:nth-child(2){left:auto;right:-20%;animation-delay:-14s;animation-duration:34s;transform:scaleX(-1)}
.workshop-steam span:nth-child(3){left:22%;width:48vw;animation-delay:-8s;animation-duration:38s;opacity:.4}
@keyframes workshop-steam-rise{0%{transform:translate3d(-3%,20%,0) rotate(-8deg) scale(.8);opacity:0}18%{opacity:.65}55%{opacity:.5}100%{transform:translate3d(12%,-90%,0) rotate(13deg) scale(1.35);opacity:0}}
.electricity-paused .workshop-steam span{animation-play-state:paused}
@media(max-width:680px){.workshop-steam span{width:100vw;filter:blur(17px)}.workshop-steam span:nth-child(3){display:none}}
@media(prefers-reduced-motion:reduce){.workshop-steam{display:none}}
/* Fuller steam: rising plumes plus broad currents crossing the viewport. */
.workshop-steam span{background:radial-gradient(ellipse at 48% 72%,#d4e0db50 0,transparent 33%),radial-gradient(ellipse at 64% 49%,#becfc845 0,transparent 31%),radial-gradient(ellipse at 44% 25%,#b5c9c038 0,transparent 29%);filter:blur(27px)}
.workshop-steam span:nth-child(1){animation-delay:-9s}
.workshop-steam span:nth-child(3){left:28%;width:65vw}
.workshop-steam span:nth-child(n+4){width:120vw;max-width:none;height:60vh;bottom:auto;left:-55%;top:12%;background:radial-gradient(ellipse at 25% 52%,#d6e1d849 0,transparent 28%),radial-gradient(ellipse at 55% 42%,#c8d8cf50 0,transparent 31%),radial-gradient(ellipse at 80% 58%,#b7cec438 0,transparent 26%);animation:workshop-steam-flow 36s linear infinite;animation-delay:-12s}
.workshop-steam span:nth-child(5){top:42%;left:-30%;animation-duration:43s;animation-delay:-27s;animation-direction:reverse}
.workshop-steam span:nth-child(6){top:65%;left:-45%;animation-duration:32s;animation-delay:-5s}
@keyframes workshop-steam-flow{0%{transform:translate3d(-22%,8%,0) scale(.95);opacity:0}18%{opacity:.65}55%{opacity:.75}85%{opacity:.45}100%{transform:translate3d(65%,-22%,0) scale(1.18);opacity:0}}
.electricity-paused .workshop-steam span{animation-play-state:paused}
@media(max-width:680px){.workshop-steam span:nth-child(3),.workshop-steam span:nth-child(6){display:none}.workshop-steam span:nth-child(n+4){width:170vw;height:50vh;filter:blur(20px)}}
:root { --bg:#161716; --panel:#242523; --muted:#c3c1b8; --line:#71644b; }
body {
  background:
    radial-gradient(ellipse at 78% 12%,#326f8120,transparent 28%),
    radial-gradient(ellipse at 15% 25%,#8b5b2220,transparent 38%),
    repeating-linear-gradient(0deg,#ffffff02 0 1px,transparent 1px 4px),#161716;
}
.site-header { border-bottom:3px double #b48a4c; position:relative; }
.site-header:after { content:''; position:absolute; left:0; right:0; bottom:-9px; border-bottom:1px solid #57472e; pointer-events:none; }
.site-brand { color:#f0d5a2; letter-spacing:2px; }
.site-brand img { filter:drop-shadow(0 0 9px #69c8ff27); }
.site-header nav { gap:24px; }
.site-header nav a { font-size:14px; letter-spacing:1px; }
.site-header nav .nav-cta { border:1px solid #b38a4c; padding:13px 18px; background:linear-gradient(145deg,#4c3c26,#211f1a); box-shadow:inset 0 0 0 3px #0005,inset 0 0 0 4px #b38a4c35; }
.kicker { color:#e2bd7b; letter-spacing:2.3px; }
h1,h2 { text-shadow:0 3px 1px #0005; }
.hero-brand { padding-top:85px; position:relative; }
.hero-copy { border-left:3px double #987749; padding-left:30px; }
.hero-brand h1 { font-size:clamp(45px,4.7vw,67px); }
.hero-note { border-top:1px solid #8d76504d; padding-top:22px; max-width:420px; }
.hero-emblem figcaption { border-top:3px double #9a7942; padding-top:18px; color:#d2bb92; }
.page-intro { position:relative; margin-top:35px; padding:52px 55px 65px; border:1px solid #a9844855; background:linear-gradient(110deg,#382e202e,transparent 65%); }
.page-intro:before,.page-intro:after { content:''; position:absolute; width:105px; height:105px; background:url('assets/brass-corner.webp') left top/contain no-repeat; pointer-events:none; }
.page-intro:before { left:-9px; top:-9px; }
.page-intro:after { right:-9px; bottom:-9px; transform:rotate(180deg); }
.page-intro .kicker { padding-left:35px; }
.page-intro .intro-copy { margin-bottom:0; }
.frame {
  border:2px solid #9c7b45;
  background:linear-gradient(135deg,#ffffff06,transparent 55%),linear-gradient(0deg,#201f1b,#292a27);
  box-shadow:0 12px 25px #0003,inset 0 0 0 3px #100f0d,inset 0 0 0 4px #c6a76b80,inset 0 0 0 9px #100f0d50;
  padding:38px;
}
.frame:before,.frame:after { width:10px; height:10px; border:1px solid #ddbd7b; border-radius:50%; transform:none; background:radial-gradient(circle at 30% 25%,#eacf93,#9b6c2e 45%,#36281a 75%); box-shadow:0 2px 2px #0008; }
.frame:before { top:12px; left:12px; }.frame:after { bottom:12px; right:12px; }
.kit-icon { width:48px; height:48px; filter:drop-shadow(0 3px 3px #0006); }
.service-card .kit-icon { width:60px; height:60px; padding:0; border:0; background:none; box-shadow:none; }
.portfolio-label .kit-icon { width:32px; height:32px; }
.workshop-blueprint .process-emblem { width:88px; height:88px; margin:8px 0; object-fit:contain; filter:drop-shadow(0 4px 4px #0006); }
.card-top { margin-bottom:27px; }
.card-meta { border-top:1px solid #aa874645; padding-top:18px; }
.btn { position:relative; border:3px double #f5d69c; background:linear-gradient(#f0cf91 0%,#c5944a 48%,#b2813d 52%,#dcb573 100%); box-shadow:inset 0 0 0 2px #69461870,0 4px 0 #4b361d,0 6px 15px #0005; letter-spacing:.3px; }
.btn:hover { box-shadow:inset 0 0 0 2px #69461870,0 4px 0 #4b361d,0 0 24px #6ccaff35; }
.btn-secondary { color:#efc982; background:linear-gradient(#36352e,#1b1f1e); border-color:#ae8c50; box-shadow:inset 0 0 0 2px #0005,0 4px 0 #15130f; }
.btn-secondary:hover { box-shadow:inset 0 0 0 2px #0005,0 4px 0 #15130f,0 0 20px #6ccaff30; }
.btn:disabled { box-shadow:none; }
.section-tonal { background:linear-gradient(90deg,#382d2020,transparent 25%,transparent 75%,#382d2020),#1e211f; border-block:3px double #8a7045; position:relative; }
.portfolio-card { padding:12px 12px 22px; background:#242521; border:1px solid #9d7d47; box-shadow:inset 0 0 0 4px #0c0e0e,inset 0 0 0 5px #b38a4c50; }
.portfolio-label { padding:0 12px; }.portfolio-label h3 { color:#f2d29a; }
.preview { border:2px solid #b59a6b; box-shadow:0 2px 12px #0005; }
.own-project>div:last-child { border-left:3px double #9a7942; }
.step-number { display:inline-flex; align-items:center; justify-content:center; width:48px; height:48px; border:3px double #a88750; border-radius:50%; color:#f0cb87; background:linear-gradient(135deg,#3e382a,#1d211f); }
.steps-grid article { border-top:3px double #7b6642; }
.faq details { border-top:3px double #7b6642; }.faq details:last-child { border-bottom:3px double #7b6642; }
.process-strip li { border-bottom:3px double #75603e; }
.cta { position:relative; border-top:0; padding-top:110px; }
.cta:before { content:''; position:absolute; top:5px; left:10%; width:80%; height:80px; background:url('assets/brass-divider.webp') center/100% auto no-repeat; pointer-events:none; }
.site-footer { border-top:3px double #a98448; }
input,select,textarea { background:#121715; border-color:#a39376; box-shadow:inset 0 2px 5px #0005; }
.electric-card { border-top-color:var(--blue); }.blueprint-tile { background-image:linear-gradient(#6ccaff0c 1px,transparent 1px),linear-gradient(90deg,#6ccaff0c 1px,transparent 1px); background-size:24px 24px; }
@media(max-width:1100px){.site-header nav{gap:15px}.site-header nav a{font-size:14px}.site-header nav .nav-cta{padding:13px 12px}.hero-copy{padding-left:22px}.hero-brand{gap:30px}.frame{padding:32px}.hero-brand h1{font-size:54px}.portfolio-label{padding-inline:6px}.portfolio-label h3{font-size:21px}}
@media(max-width:940px){.site-header nav{gap:0}.site-header nav .nav-cta{margin-top:8px}.site-header nav a{font-size:14px}.hero-brand h1{font-size:45px}.hero-brand{gap:25px}.page-intro{padding:45px 40px 50px}.page-intro:before,.page-intro:after{width:85px;height:85px}.hero-copy .actions{gap:18px}.portfolio-label p{font-size:13px}}
@media(max-width:680px){.hero-brand{padding-top:55px;gap:38px}.hero-copy{border-left:0;padding-left:0}.hero-brand h1{font-size:clamp(40px,8.1vw,55px)}.page-intro{margin-top:25px;padding:50px 24px 45px}.page-intro:before,.page-intro:after{width:65px;height:65px;left:-6px;top:-6px}.page-intro:after{left:auto;top:auto;right:-6px;bottom:-6px}.page-intro .kicker{padding-left:8px;font-size:10px;letter-spacing:1.5px}.page-intro h1{font-size:40px}.frame{padding:30px}.own-project>div:last-child{border-left:0;border-top:3px double #9a7942}.portfolio-label{padding-inline:5px}.portfolio-label h3{font-size:20px}.cta{padding-top:85px}.cta:before{left:0;width:100%;height:65px}.site-brand{letter-spacing:1px}.card-meta{font-size:12px}}
@media(max-width:360px){.page-intro{padding-inline:20px}.page-intro h1{font-size:35px}.hero-brand h1{font-size:39px}.portfolio-label p{font-size:12px}.preview{padding:18px}.preview>p{font-size:36px}.preview-nav span{font-size:7px;max-width:85px}}
/* Decorative electrical filaments follow the brass perimeter without covering content. */
.electric-border-host { position:relative; }
.border-current { position:absolute; left:0; top:0; width:100%; height:100%; z-index:2; overflow:visible; pointer-events:none; fill:none; color:#80d9ff; }



.motion-toggle { background:transparent; border:1px solid #8b7957; color:var(--muted); padding:10px 14px; min-height:44px; font-size:12px; }
@media(prefers-reduced-motion:reduce){.border-current rect{animation:none!important;opacity:.45}.motion-toggle{display:none}}

.navigation-loading { position:fixed; right:24px; bottom:24px; z-index:50; display:flex; align-items:center; gap:13px; padding:12px 22px 12px 12px; max-width:calc(100vw - 32px); border:3px double #c59b57; background:#171d1ef5; box-shadow:0 8px 30px #0008,inset 0 0 0 3px #59432755; color:#f0d5a2; font-size:14px; pointer-events:none; }
.navigation-loading[hidden] { display:none; }
.navigation-loading svg { width:48px; height:48px; flex-shrink:0; }
.loading-gear { transform-origin:32px 32px; animation:loading-clockwork 2.8s linear infinite; }
.loading-gear polygon { fill:#88632e; stroke:#edc47c; stroke-width:1.5; }
.loading-gear circle { fill:#202927; stroke:#d0a158; stroke-width:2; }
.loading-gear path { stroke:#d0a158; stroke-width:3; }
.loading-core { fill:#a2e7ff; stroke:#4cabdc; stroke-width:2; filter:drop-shadow(0 0 4px #69d8ff); }
@keyframes loading-clockwork { to { transform:rotate(360deg); } }
@media(max-width:680px){.navigation-loading{right:16px;bottom:16px;}}
@media(prefers-reduced-motion:reduce){.loading-gear{animation:none!important;}}

/* Animate the large crest without spinning its lettering. */
.hero-emblem>img,.studio-emblem>img { animation:crest-hover 6s ease-in-out infinite; will-change:transform; }
@keyframes crest-hover {
  0%,100% { transform:translateY(0); filter:drop-shadow(0 12px 25px #0007) drop-shadow(0 0 3px #6ccaff20); }
  50% { transform:translateY(-8px); filter:drop-shadow(0 20px 28px #0006) drop-shadow(0 0 12px #6ccaff55); }
}
.electricity-paused .hero-emblem>img,.electricity-paused .studio-emblem>img { animation-play-state:paused; }
@media(prefers-reduced-motion:reduce){.hero-emblem>img,.studio-emblem>img{animation:none!important;will-change:auto;}}

.clockwork-logo { position:relative; width:100%; isolation:isolate; }
.clockwork-logo .crest-face { position:relative; display:block; width:100%; height:auto; z-index:1; }
.clockwork-logo .crest-rotor { position:absolute; width:80%; height:auto; aspect-ratio:1; left:10%; top:0; animation:gear-steady 30s linear infinite; transform-origin:center; will-change:transform; }
@keyframes gear-steady { to { transform:rotate(360deg); } }
.electricity-paused .crest-rotor { animation-play-state:paused; }
@media(prefers-reduced-motion:reduce){.clockwork-logo .crest-rotor{animation:none!important;will-change:auto;}}


.logo-filter-defs { position:absolute; width:0; height:0; overflow:hidden; pointer-events:none; }
.clockwork-logo .crest-face,.clockwork-logo .crest-rotor { filter:url(#living-logo-electricity); }
.electricity-paused .clockwork-logo .crest-face,.electricity-paused .clockwork-logo .crest-rotor { filter:none; }
@media(prefers-reduced-motion:reduce){.clockwork-logo .crest-face,.clockwork-logo .crest-rotor{filter:none;}}

/* All decorative electricity uses the same blue-selective, three-second ripple. */
.border-current path { stroke:#42aeff; stroke-width:1.65; fill:none; stroke-linecap:round; stroke-linejoin:round; }
.border-current .current-echo { stroke:#e4f8ff; stroke-width:.55; }
:is(.border-current,.ornament,.site-brand img,.loading-core),.page-intro:before,.page-intro:after,.cta:before { filter:url(#living-logo-electricity); }
.electricity-paused :is(.border-current,.ornament,.site-brand img,.loading-core),.electricity-paused .page-intro:before,.electricity-paused .page-intro:after,.electricity-paused .cta:before { filter:none; }
@media(prefers-reduced-motion:reduce){:is(.border-current,.ornament,.site-brand img,.loading-core),.page-intro:before,.page-intro:after,.cta:before{filter:none;}}

/* Responsive concept studies: distinct client directions within the portfolio. */
.study-toolbar { display:flex; justify-content:space-between; align-items:center; gap:20px; margin:35px 0 18px; }
.study-toolbar .kicker{margin-bottom:5px}.study-toolbar p{margin:0;font-size:13px}
.study-controls{display:flex;gap:8px}.study-controls button{min-height:44px;background:#202725;color:var(--ink);border:1px solid #8c7954;padding:10px 16px;font-size:13px}.study-controls button[aria-pressed=true]{background:var(--brass);color:#171c1d}
.study-preview{container-type:inline-size;max-width:100%;margin:0 auto;border:1px solid #b39e76;color:#283025;background:#eee9df;box-shadow:0 20px 50px #0004;overflow:hidden}
.study-preview.is-phone{max-width:390px}.study-nav,.study-end{padding:25px 32px;display:flex;justify-content:space-between;align-items:center;gap:20px;border-bottom:1px solid #28302535}.study-nav strong{font-size:21px;letter-spacing:2px}.study-nav a{font-size:13px;text-decoration:underline;text-underline-offset:5px;min-height:44px;display:flex;align-items:center}
.study-hero{display:grid;grid-template-columns:1fr 1.1fr;align-items:stretch}.study-hero>div{padding:50px 36px}.study-preview h2{font-size:clamp(35px,4.6cqw,62px);line-height:1.08;letter-spacing:-1.6px;color:inherit;text-shadow:none}.study-preview p{color:inherit;opacity:.9;line-height:1.7;font-size:15px}.study-eyebrow{font-size:10px!important;font-family:var(--sans);letter-spacing:1.5px;display:block;margin-bottom:22px}.study-hero img{width:100%;height:100%;min-height:400px;object-fit:cover}.study-link{display:inline-flex;gap:30px;align-items:center;background:#29372b;color:#fff9ed;padding:15px 20px;font-size:14px;margin-top:12px;min-height:48px}
.study-story{padding:48px 36px}.study-story>h3{font-family:var(--serif);font-size:34px;max-width:550px;line-height:1.2}.study-story>p{max-width:650px}.study-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:38px}.study-grid article{border-top:1px solid #28302550;padding-top:18px}.study-grid span{font-size:12px}.study-grid h4{font-family:var(--serif);font-weight:500;font-size:23px;margin:15px 0}.study-grid p{font-size:13px}.study-end{border-top:1px solid #28302535;border-bottom:0;font-size:11px}.fieldnote-study{background:#e3efc9;color:#173e2c}.fieldnote-study .study-nav strong{font-family:var(--serif);font-size:30px;letter-spacing:-1px}.fieldnote-study .study-story{background:#f5efdf}.fieldnote-study .study-link{background:#19442e}.case-summary{border-top:1px solid var(--line);padding:32px 0;margin:20px 0 35px}.case-summary p{max-width:800px}
.contact-email{display:block;color:var(--brass);font-size:clamp(15px,2vw,20px);overflow-wrap:anywhere;text-decoration:underline;text-underline-offset:5px;margin-bottom:24px}.contact-next{margin-top:35px}.contact-next ol{padding-left:22px;color:var(--muted);line-height:1.8}.contact-next li{margin-bottom:16px}.contact-next p{font-size:14px}
.preview.ironwood-preview{background:linear-gradient(90deg,#172014e8,#17201455),url('assets/ironwood-courtyard.webp') center/cover;color:#fff8e8}.preview.fieldnote-preview{background:linear-gradient(90deg,#163c27ee,#163c2755),url('assets/fieldnote-plants.webp') center/cover;color:#f3f8d9}.preview.ironwood-preview p,.preview.fieldnote-preview p,.preview.ironwood-preview em,.preview.fieldnote-preview em{color:inherit}.preview:after{display:none}
@container(max-width:600px){.study-hero{grid-template-columns:1fr}.study-hero>div{padding:32px 24px}.study-preview h2{font-size:39px}.study-hero img{min-height:0;height:270px}.study-story{padding:32px 24px}.study-grid{grid-template-columns:1fr;gap:12px}.study-nav,.study-end{padding:18px 24px;flex-wrap:wrap}.study-story>h3{font-size:29px}}
@media(max-width:680px){.study-toolbar{align-items:flex-start;flex-direction:column}.study-controls{width:100%}.study-controls button{flex:1}.case-details{gap:20px}}
.client-priorities{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;padding-block:30px;border-block:1px solid #88724860;margin-top:25px;margin-bottom:20px}.client-priorities strong{display:block;font-size:15px;color:var(--ink);margin-bottom:10px}.client-priorities span{font-size:13px;line-height:1.7;color:var(--muted);display:block}@media(max-width:680px){.client-priorities{grid-template-columns:1fr;gap:22px;padding-block:25px}}

/* Use the same engraved brass artwork as the main logo for loading feedback. */
.navigation-loading .loading-real-gear { width:56px; height:56px; display:block; object-fit:contain; flex-shrink:0; animation:gear-steady 6s linear infinite; filter:url(#living-logo-electricity); }
.electricity-paused .loading-real-gear { animation-play-state:paused; filter:none; }
@media(prefers-reduced-motion:reduce){.navigation-loading .loading-real-gear{animation:none!important;filter:none;}}

.navigation-loading .loading-emblem { position:relative; display:block; width:64px; height:64px; flex-shrink:0; }
.navigation-loading .loading-emblem .loading-real-gear { width:64px; height:64px; }
.loading-monogram { position:absolute; inset:21%; overflow:hidden; border-radius:50%; pointer-events:none; }
.loading-monogram img { position:absolute; width:220%; max-width:none; height:auto; left:-60%; top:-42%; }

.service-offers .service-card{padding:32px}.service-offers .service-fit{color:var(--brass);font-size:14px;line-height:1.7;margin-bottom:18px}.service-offers h4{font-size:14px;font-weight:600;margin:0 0 12px}.service-offers ul{padding-left:18px;margin:0 0 25px;color:var(--muted);font-size:14px;line-height:1.8}.service-offers li{margin-bottom:10px}.offer-action{margin-top:auto}.offer-action .card-meta{margin:0 0 20px}.offer-action .btn{width:100%;gap:12px;padding:15px 12px;font-size:13px}.offer-note{max-width:850px;font-size:14px;margin-top:30px}.offer-note a{color:var(--brass);text-decoration:underline;text-underline-offset:4px}@media(min-width:681px) and (max-width:1050px){.service-offers{grid-template-columns:1fr}.service-offers .service-card{padding:36px}.offer-action .btn{width:auto;padding-inline:24px}}

.project-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:28px 0 45px;padding:25px 0;border-block:1px solid var(--line)}.project-facts dt{font-size:11px;letter-spacing:1.4px;text-transform:uppercase;color:var(--brass);margin-bottom:10px}.project-facts dd{margin:0;font-size:15px;line-height:1.6}.proof-grid article{display:flex;flex-direction:column}.proof-grid .kit-icon{margin-bottom:24px}.proof-grid .inline-link{margin-top:auto}.proof-checks{max-width:900px}.proof-checks article{display:flex;gap:28px;padding:28px 0;border-top:1px solid var(--line)}.proof-checks article>span{font-family:var(--serif);font-size:32px;color:var(--brass)}.proof-checks p{margin-bottom:12px}@media(max-width:680px){.project-facts{grid-template-columns:1fr;gap:20px}.proof-checks article{gap:18px}}

/* A warm, approachable service-business direction. */
.sunday-study{background:#fcf7ed;color:#164c46}.sunday-study .study-nav strong{letter-spacing:-1px;font-size:27px}.sunday-study .study-nav strong span{font-size:11px;letter-spacing:0}.sunday-study .study-link{background:#164c46;color:#fffaf0;border:0;cursor:pointer}.sunday-study .study-story{background:#e5eee6}.study-choice{display:inline-flex;align-items:center;min-height:44px;text-decoration:underline;text-underline-offset:4px;font-size:14px}.sunday-request{padding:48px 36px;display:grid;grid-template-columns:1fr 1fr;gap:40px}.sunday-request h3{font-family:var(--serif);font-size:34px;line-height:1.2}.sunday-request .demo-disclosure{font-size:12px}.sunday-request fieldset{border:0;padding:0;margin:0;min-width:0}.sunday-request label{display:block;font-size:14px;margin-bottom:18px;color:#164c46}.sunday-request select{display:block;width:100%;min-height:48px;margin-top:8px;padding:10px;background:#fffdf7;color:#164c46;border:1px solid #537971;border-radius:0;font:inherit}.sunday-request #clean-result{font-weight:600;font-size:14px}.preview.sunday-preview{background:linear-gradient(90deg,#103f39ee,#103f3960),url('assets/sunday-kitchen.webp') center/cover;color:#fffaf0}.preview.sunday-preview p,.preview.sunday-preview em{color:inherit}
@container(max-width:600px){.sunday-request{grid-template-columns:1fr;padding:32px 24px;gap:20px}.sunday-request h3{font-size:29px}}
@media(min-width:1000px){.portfolio-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.portfolio-grid .preview p{font-size:37px}}
.tour-controls{border:0;padding:0;margin:28px 0;min-width:0}.tour-controls legend{font-size:13px;color:var(--brass);margin-bottom:12px}.tour-steps,.tour-widths{display:flex;flex-wrap:wrap;gap:10px}.tour-widths{margin-top:16px}.tour-controls button{min-height:44px;padding:11px 18px;background:#202725;border:1px solid #8c7954;color:var(--ink);font:inherit;font-size:13px;cursor:pointer}.tour-controls button[aria-pressed=true]{background:var(--brass);color:#171c1d}.tour-caption{max-width:800px;min-height:175px}.tour-note{font-size:12px;color:var(--muted)}.tour-screen{position:relative;width:100%;height:650px;overflow:hidden;border:1px solid var(--line);background:#090e12}.tour-screen iframe{position:absolute;top:0;left:0;width:100%;height:900px;border:0;transform-origin:top left;pointer-events:none}.tour-caption h3{font-size:25px}@media(max-width:680px){.tour-caption{min-height:0}.tour-controls button{flex:1}.tour-steps{display:grid;grid-template-columns:1fr}}

/* Distinct visual identities for the three fictional businesses. */
.study-preview h3,.study-preview h4{color:inherit;text-shadow:none}.ironwood-study .study-hero{position:relative;display:block;min-height:630px;isolation:isolate;background:#242c24;color:#fff8eb}.ironwood-study .study-hero>img{position:absolute;inset:0;height:100%;z-index:-2}.ironwood-study .study-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#172117e6,#17211710);z-index:-1}.ironwood-study .study-hero>div{max-width:690px;padding:90px 55px}.ironwood-study .study-hero h2{font-size:clamp(48px,6.8cqw,86px);font-weight:400}.ironwood-study .study-link{background:#f0e8d7;color:#263025}.ironwood-study .study-nav{background:#eeeadf}.architecture-feature{display:grid;grid-template-columns:1.2fr 1fr;background:#d9d6c8}.architecture-feature>img{width:100%;height:100%;min-height:430px;object-fit:cover;object-position:70% center}.architecture-feature>div{padding:50px 35px}.architecture-feature h3{font:400 42px/1.1 var(--serif)}.architecture-feature dl{border-top:1px solid #28302540;margin-top:32px}.architecture-feature dl>div{padding:15px 0;display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #28302540;font-size:12px}.architecture-feature dd{margin:0}.concept-small{font-size:11px!important;line-height:1.7;display:block;margin-top:20px}.concept-invitation{text-align:center;padding:65px 32px}.concept-invitation h3{font:400 clamp(34px,5cqw,58px)/1.1 var(--serif);margin:15px 0}.concept-invitation p{max-width:480px;margin:20px auto}.ironwood-study .concept-invitation{background:#26372d;color:#f3ecdd}
.fieldnote-study .study-hero{padding:26px;gap:12px;align-items:center;background:#d9edb7}.fieldnote-study .study-hero>div{padding:35px 20px}.fieldnote-study .study-hero>img{border-radius:48% 48% 12px 12px;height:500px;min-height:0;object-fit:cover}.fieldnote-study .study-hero h2{font-size:clamp(44px,6cqw,75px);font-weight:400;letter-spacing:-2px}.fieldnote-study .study-link{border-radius:30px}.fieldnote-study .study-grid article{border:1px solid #1e49352e;padding:25px;border-radius:55px 55px 8px 8px;background:#e6eccc}.plant-finder{padding:55px 36px;background:#244b37;color:#f4f0d8;display:grid;grid-template-columns:.9fr 1.1fr;gap:40px}.plant-finder h3{font:400 49px/1.1 var(--serif);margin:15px 0}.plant-options{display:flex;flex-wrap:wrap;gap:8px}.plant-options button{border:1px solid #c8d8a4;border-radius:25px;padding:12px 16px;min-height:44px;background:transparent;color:#f4f0d8;font:inherit;font-size:12px;cursor:pointer}.plant-options button[aria-pressed=true]{background:#d5eaa8;color:#193b2b}.plant-result{padding:25px 0 0;min-height:190px}.plant-number{font:italic 42px var(--serif);color:#c5df91}.plant-result h4{font:400 28px var(--serif);margin:12px 0}.fieldnote-study .concept-invitation{background:#e6b99b}
.sunday-study .study-hero{background:#f9f4e8}.sunday-study .study-hero>img{border-radius:0 0 0 100px}.sunday-study .study-hero h2{font-size:clamp(43px,5.8cqw,74px);font-weight:400}.sunday-study .study-link{border-radius:8px}.sunday-study .study-grid article{background:#fcf9f1;border:1px solid #164c4620;border-radius:14px;padding:25px;display:flex;flex-direction:column}.sunday-study .study-choice{margin-top:auto}.sunday-moment{display:grid;grid-template-columns:1fr 1fr;align-items:center;background:#eadcc3}.sunday-moment>div{padding:50px 36px}.sunday-moment h3{font:400 59px/1.04 var(--serif);margin:15px 0}.sunday-moment>img{width:100%;height:400px;object-fit:cover}.sunday-faq{padding:48px 36px}.sunday-faq h3{font:400 34px var(--serif)}.sunday-faq details{border-bottom:1px solid #164c4640;padding:18px 0;background:transparent}.sunday-faq summary{cursor:pointer;min-height:32px;font-size:15px;color:#164c46}.sunday-faq details p{max-width:760px;font-size:14px}.study-preview :is(a,button,summary,select):focus-visible{outline:3px solid currentColor;outline-offset:5px}.preview{transition:background-position .4s ease}.portfolio-card:hover .preview{background-position:55% center}
@container(max-width:600px){.ironwood-study .study-hero{min-height:550px}.ironwood-study .study-hero>div{padding:55px 24px}.ironwood-study .study-hero h2{font-size:49px}.architecture-feature,.plant-finder,.sunday-moment{grid-template-columns:1fr}.architecture-feature>img{min-height:0;height:280px}.architecture-feature>div,.plant-finder,.sunday-faq{padding:32px 24px}.architecture-feature h3{font-size:34px}.fieldnote-study .study-hero{padding:20px}.fieldnote-study .study-hero>div{padding:15px 4px}.fieldnote-study .study-hero>img{height:320px}.fieldnote-study .study-hero h2,.sunday-study .study-hero h2{font-size:45px}.plant-finder h3{font-size:39px}.sunday-moment>div{padding:32px 24px}.sunday-moment h3{font-size:45px}.sunday-moment>img{height:270px}.concept-invitation{padding:42px 24px}.study-grid{gap:18px}}
@media(prefers-reduced-motion:reduce){.preview{transition:none}}

/* Helpful business content without dense walls of copy. */
.prototype-info{padding:58px 36px;border-top:1px solid currentColor}.prototype-info>h3,.prototype-note h3{font:400 clamp(31px,4.2cqw,47px)/1.15 var(--serif);max-width:700px;margin:14px 0 22px}.prototype-info .info-intro{max-width:740px}.info-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px;margin-top:36px}.info-grid article{border-top:1px solid currentColor;padding-top:20px}.info-number{font:italic 29px var(--serif);opacity:.7}.info-grid h4{font:400 25px/1.2 var(--serif);margin:16px 0}.info-grid p{font-size:14px}.prototype-note{padding:48px 36px;background:#283a2e;color:#f8f0df}.prototype-note p{max-width:750px}.fieldnote-study .prototype-note{background:#ead1ad;color:#193d2b}.prototype-faq{background:#f5f0e5}.prototype-faq details{background:transparent;border-bottom:1px solid currentColor;padding:19px 0}.prototype-faq summary{color:inherit;cursor:pointer;font-size:16px;line-height:1.6;min-height:30px}.prototype-faq details p{max-width:780px;font-size:14px}.sunday-study .prototype-info{border-color:#164c4630}.sunday-study .info-grid article{border-color:#164c4640}.sunday-study .prototype-info:nth-of-type(even){background:#edf1e8}.fieldnote-study .prototype-info{border-color:#193d2b30}.ironwood-study .prototype-info{border-color:#283a2e30}
@container(max-width:600px){.prototype-info,.prototype-note{padding:35px 24px}.info-grid{grid-template-columns:1fr;gap:20px;margin-top:26px}.prototype-info>h3,.prototype-note h3{font-size:32px}.info-grid h4{font-size:24px}.prototype-faq summary{font-size:15px}}

.field-help{display:block;font-size:12px;color:var(--muted);margin-top:8px;font-weight:400}.inquiry-answers{max-width:1000px}.inquiry-answers details{padding:22px 0;border-bottom:1px solid var(--line)}.inquiry-answers summary{cursor:pointer;color:var(--ink);min-height:32px;line-height:1.6}.inquiry-answers details p{max-width:780px;margin-bottom:0}.contact-aside #email-copy-status{font-size:13px;line-height:1.6}.contact-aside #copy-email{font-size:13px}

:root:not(.js-ready) .study-controls,:root:not(.js-ready) .plant-options{display:none}.study-preview{color-scheme:light}

.inquiry-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}#delivery-status{margin-top:22px;line-height:1.7}#delivery-status:empty{display:none}#delivery-status:focus{outline:2px solid var(--blue);outline-offset:6px}

/* More active steam: quicker rising plumes and wider lateral travel. */
.workshop-steam span:nth-child(1){animation-duration:12s;animation-delay:-4s}
.workshop-steam span:nth-child(2){animation-duration:15s;animation-delay:-9s}
.workshop-steam span:nth-child(3){animation-duration:17s;animation-delay:-6s}
.workshop-steam span:nth-child(4){animation-duration:14s;animation-delay:-5s}
.workshop-steam span:nth-child(5){animation-duration:18s;animation-delay:-11s}
.workshop-steam span:nth-child(6){animation-duration:13s;animation-delay:-3s}
@keyframes workshop-steam-rise{0%{transform:translate3d(-12%,24%,0) rotate(-12deg) scale(.8);opacity:0}18%{opacity:.65}50%{transform:translate3d(10%,-35%,0) rotate(4deg) scale(1.1);opacity:.55}100%{transform:translate3d(30%,-105%,0) rotate(19deg) scale(1.4);opacity:0}}
@keyframes workshop-steam-flow{0%{transform:translate3d(-35%,18%,0) rotate(-4deg) scale(.9);opacity:0}18%{opacity:.65}50%{transform:translate3d(28%,-12%,0) rotate(3deg) scale(1.08);opacity:.75}85%{opacity:.45}100%{transform:translate3d(95%,-35%,0) rotate(-5deg) scale(1.25);opacity:0}}


/* Brighter steam with a modest 15 percent increase in travel speed. */
.workshop-steam span{background:radial-gradient(ellipse at 48% 72%,#d4e0db68 0,transparent 33%),radial-gradient(ellipse at 64% 49%,#becfc85a 0,transparent 31%),radial-gradient(ellipse at 44% 25%,#b5c9c049 0,transparent 29%)}
.workshop-steam span:nth-child(n+4){background:radial-gradient(ellipse at 25% 52%,#d6e1d85f 0,transparent 28%),radial-gradient(ellipse at 55% 42%,#c8d8cf68 0,transparent 31%),radial-gradient(ellipse at 80% 58%,#b7cec449 0,transparent 26%)}
.workshop-steam span:nth-child(1){animation-duration:10.4s}
.workshop-steam span:nth-child(2){animation-duration:13s}
.workshop-steam span:nth-child(3){animation-duration:14.8s}
.workshop-steam span:nth-child(4){animation-duration:12.2s}
.workshop-steam span:nth-child(5){animation-duration:15.7s}
.workshop-steam span:nth-child(6){animation-duration:11.3s}


/* Engraved blueprint and device illustrations are code-native, with no new downloads. */
.workshop-blueprint{margin:0 0 48px;padding:25px 28px;border:3px double #9a7c49;background:linear-gradient(#73b6c70b 1px,transparent 1px),linear-gradient(90deg,#73b6c70b 1px,transparent 1px),#13252bf2;background-size:20px 20px,20px 20px,auto;box-shadow:inset 0 0 35px #0005;position:relative}.workshop-blueprint figcaption{display:flex;justify-content:space-between;gap:14px;color:var(--brass);font-size:10px;letter-spacing:1.6px;border-bottom:1px solid #8f795555;padding-bottom:18px}.workshop-blueprint ol{list-style:none;padding:25px 0 15px;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.workshop-blueprint li{position:relative;display:flex;flex-direction:column;align-items:center;text-align:center}.workshop-blueprint li:not(:last-child):after{content:'→';position:absolute;right:-22px;top:58px;color:var(--brass);font-size:23px}.blueprint-index{font-size:10px;letter-spacing:2px;color:var(--brass)}.workshop-blueprint svg{width:104px;height:104px;color:#a0d7df}.draft-guides{opacity:.3;stroke-dasharray:3 4}.workshop-blueprint strong{font:500 23px var(--serif);color:#f2dfba;margin:8px 0}.workshop-blueprint li>span:last-child{color:#c0d0d1;font-size:12px;line-height:1.6}.workshop-blueprint>p{font-size:12px;text-align:center;margin:18px 0 0;padding-top:16px;border-top:1px solid #8f795555}
.device-stage{position:relative;aspect-ratio:1.12;overflow:hidden;background:radial-gradient(ellipse at 50% 48%,#53685b60,transparent 68%),repeating-linear-gradient(0deg,#a9c9b408 0 1px,transparent 1px 23px),#17221e;border-bottom:1px solid #88724870;--mock-bg:#eeeade;--mock-ink:#28382c}.device-fieldnote{background-color:#253627;--mock-bg:#deedbf;--mock-ink:#16412c}.device-sunday{background-color:#243936;--mock-bg:#fff8e9;--mock-ink:#164c46}.device-caption{position:absolute;left:7%;top:8%;font-size:8px;letter-spacing:1.4px;color:#cabc9f}.mock-desktop{position:absolute;left:6%;top:23%;width:82%;height:55%;padding:7px;background:linear-gradient(130deg,#a0804f,#423529 55%,#bd9a61);border:1px solid #c4a068;border-radius:9px;box-shadow:0 14px 25px #0007;transform:rotate(-3deg)}.mock-chrome{height:16%;display:flex;align-items:center;gap:3px;background:#182021;color:#dcd8cc;padding:0 6px;border-radius:3px 3px 0 0}.mock-chrome i{width:3px;height:3px;border-radius:50%;background:#b8a278}.mock-chrome span{font-size:6px;letter-spacing:1px;margin-left:auto}.mock-screen{display:grid;grid-template-columns:1fr 1fr;height:65%;background:var(--mock-bg);color:var(--mock-ink)}.mock-screen>div{padding:9% 9% 4%;display:flex;flex-direction:column}.mock-screen small{font-size:6px}.mock-screen strong{font:500 clamp(12px,1.25vw,19px)/1.15 var(--serif);margin:9% 0}.mock-screen b{font-size:5px;border-bottom:1px solid currentColor;align-self:flex-start}.mock-screen img{width:100%;height:100%;object-fit:cover;min-height:0}.mock-lines{height:19%;background:var(--mock-bg);display:flex;gap:8%;padding:4% 6%}.mock-lines i{flex:1;border-top:2px solid var(--mock-ink);opacity:.3}.mock-phone{position:absolute;right:6%;top:40%;width:25%;height:49%;border:3px solid #b99a67;background:var(--mock-bg);color:var(--mock-ink);border-radius:13px;box-shadow:0 8px 25px #0008;overflow:hidden;transform:rotate(5deg);padding-top:10px}.mock-speaker{position:absolute;top:3px;left:35%;width:30%;height:3px;background:#2b302c;border-radius:10px}.mock-phone small{font-size:5px;display:block;margin:7% 10%}.mock-phone strong{display:block;font:500 clamp(9px,.85vw,13px)/1.2 var(--serif);margin:8% 10%}.mock-phone img{width:100%;height:40%;object-fit:cover}.phone-lines{height:15%;margin:10%;border-block:2px solid #60705b40}.mock-base{position:absolute;left:15%;bottom:18%;width:43%;height:3%;border-radius:50%;background:#c3a57450;z-index:-1}.portfolio-card:hover .mock-desktop{transform:rotate(-1deg) translateY(-3px)}.mock-desktop{transition:transform .25s ease}
@media(max-width:680px){.workshop-blueprint{padding:20px}.workshop-blueprint figcaption{flex-direction:column}.workshop-blueprint ol{grid-template-columns:1fr 1fr;gap:25px 16px}.workshop-blueprint li:after{display:none}.mock-screen strong{font-size:17px}.mock-phone strong{font-size:12px}.device-stage{aspect-ratio:1.2}}
@media(prefers-reduced-motion:reduce){.mock-desktop{transition:none}}

/* Photographic machinery and translucent vapor stay outside the reading column. */
.starting-point{isolation:isolate;overflow:hidden;background:radial-gradient(ellipse at 10% 90%,#ad7d3433,transparent 52%),linear-gradient(90deg,#e2b56e06 1px,transparent 1px),linear-gradient(#e2b56e06 1px,transparent 1px),#1b211f;background-size:auto,38px 38px,38px 38px,auto}
.starting-point>.shell{position:relative;z-index:1}
.starting-point::before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#101715aa,#10171566),url("assets/starting-point-workbench.webp") center/cover no-repeat;pointer-events:none}
.starting-point::after{content:"";position:absolute;inset:20px;background:url("assets/brass-corner.webp") right top/180px auto no-repeat;opacity:.12;pointer-events:none}
.starting-point .detail-list{padding:20px 26px;background:linear-gradient(110deg,#151b1be8,#151b1bb8);border:1px solid #b68c4b40;box-shadow:inset 0 0 0 4px #171d1d,inset 0 0 0 5px #b68c4b18}
@media(max-width:680px){.starting-point::before{background-position:center,35% center}.starting-point::after{background-size:90px auto;opacity:.09}.starting-point .detail-list{padding:16px}.starting-point .split{gap:26px}}
.workshop-machinery{position:fixed;inset:0;z-index:-1;pointer-events:none;contain:strict}
.steam-engine{position:absolute;width:clamp(190px,18vw,340px);aspect-ratio:1/2;background:url("assets/workshop-engine.webp") center/contain no-repeat;opacity:.62;filter:saturate(.75)}
.steam-engine-left{left:-65px;bottom:-95px}
.steam-engine-right{right:-100px;bottom:-180px;transform:scaleX(-1);opacity:.44}
.engine-plume{position:absolute;display:block;width:115%;height:77%;left:30%;bottom:96%;background:url("assets/steam-wisp.webp") center bottom/100% 100% no-repeat;transform-origin:50% 100%;animation:engine-vapor 10s ease-in-out infinite;opacity:0;mask-image:linear-gradient(transparent,black 18%,black 85%,transparent)}
.plume-two{left:66%;bottom:91%;width:95%;height:65%;animation-duration:13s;animation-delay:-6s}
.steam-engine-right .plume-one{animation-delay:-4s}
.steam-engine-right .plume-two{animation-delay:-9s}
@keyframes engine-vapor{0%{transform:translate(-50%,8px) scale(.65,.8);opacity:0}20%{opacity:.52}55%{transform:translate(-56%,-24px) scale(1.08,1.12);opacity:.34}100%{transform:translate(-68%,-85px) scale(1.35,1.3);opacity:0}}
.electricity-paused .engine-plume{animation-play-state:paused}
@media(prefers-reduced-motion:reduce){.engine-plume{animation:none;transform:translateX(-50%);opacity:.15}}
@media(max-width:1400px){.steam-engine{opacity:.32}.steam-engine-right{right:-125px;opacity:.24}}
@media(max-width:900px){.steam-engine-left{width:175px;left:-90px;bottom:-60px;opacity:.19}.steam-engine-right{display:none}.engine-plume{animation-duration:14s}}

/* Fine secondary discharges remain close to the metal perimeter. */
.border-current .current-branches{stroke:#91d8ff;stroke-width:.65;opacity:.65}
