@font-face{font-family:Display;src:url('fonts/display.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Text;src:url('fonts/text.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
:root{--lime:#DBFB47;--blue:#3222E3;--paper:#FAFAF7;--ink:#151515;--line:#b4b4a8;--space:clamp(24px,5vw,80px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-color:var(--blue) var(--lime)}body{margin:0;background:var(--paper);color:var(--ink);font-family:Text,Arial,sans-serif;font-size:18px;line-height:1.55}::selection{background:var(--blue);color:white}a{color:inherit;text-underline-offset:5px;min-height:44px;display:inline-flex;align-items:center}a:hover{text-decoration-thickness:3px}button,summary{font:inherit;cursor:pointer;min-height:44px}button,a,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--blue);outline-offset:5px}.blue a:focus-visible,.blue button:focus-visible,.site-footer a:focus-visible{outline-color:var(--lime)}button:disabled{cursor:not-allowed;opacity:.45}h1,h2,h3,h4,p,figure,dl{margin:0}h1,h2{font-family:Display,Georgia,serif;font-weight:400;line-height:1.07;text-wrap:balance}h1{font-size:clamp(42px,6.6vw,96px);letter-spacing:-.025em}h2{font-size:clamp(30px,4vw,58px);letter-spacing:-.02em}h3{font-size:24px;line-height:1.25}h4{font-size:19px}p{max-width:67ch}p+p{margin-top:16px}h2+p,h3+p,h4+p{margin-top:20px}p+a{margin-top:16px}ul{padding-left:23px}li+li{margin-top:10px}img{display:block;max-width:100%;height:auto}button{border:1px solid var(--ink);background:transparent;padding:10px 16px;color:var(--ink)}button:hover:not(:disabled){background:var(--lime)}.button{padding:14px 24px;min-height:52px;background:var(--blue);color:white;text-decoration:none;justify-content:center;font-weight:bold}.button:hover{background:var(--ink)}.button.light{background:var(--lime);color:var(--ink)}.button.light:hover{background:white}.skip{position:absolute;top:-150px;left:16px;z-index:10;background:var(--paper);padding:12px}.skip:focus{top:12px}.site-header{display:flex;align-items:center;justify-content:space-between;background:var(--lime);padding:20px var(--space);border-bottom:1px solid var(--ink);position:relative;z-index:4;gap:20px}.wordmark{font-family:Display,Georgia,serif;font-size:28px;line-height:1.1;display:block;text-decoration:none}.wordmark span{display:block;font-family:Text,Arial,sans-serif;font-size:14px;margin-top:7px}.directory{position:static;border:0}.directory summary{border:1px solid var(--ink);padding:10px 20px;display:list-item;list-style-position:inside;white-space:nowrap}.directory[open] summary{background:var(--ink);color:var(--lime)}.mega{position:absolute;top:100%;left:0;width:100%;background:var(--paper);border-bottom:2px solid var(--ink);padding:30px var(--space);display:grid;grid-template-columns:1fr 1fr 1fr;gap:36px}.mega h2{font:700 18px Text,Arial,sans-serif;margin-bottom:12px}.mega a{display:flex;border-top:1px solid var(--line);padding:10px 0;text-decoration:none}.mega a:hover{color:var(--blue)}.demo{font-size:14px;margin-top:18px;max-width:none}.poster{background:var(--lime);padding:36px var(--space) 0}.poster h1{max-width:1080px;margin:auto}.poster>.demo{max-width:1080px;margin:18px auto 26px}.poster-stage{display:grid;grid-template-columns:minmax(140px,1fr) minmax(0,3.25fr) minmax(140px,1fr);gap:28px;align-items:center;max-width:1000px;margin:auto}.poster-stage>.object-photo{grid-column:2;grid-row:1}.object-photo img{width:100%;aspect-ratio:4/3;object-fit:cover}.object-photo figcaption{font-size:12px;line-height:1.5;padding:10px 0 18px}.stage-index{grid-column:1;grid-row:1;align-self:stretch;padding-top:36px}.stage-index h2,.stage-note h2{font-family:Text,Arial,sans-serif;font-size:19px;font-weight:bold;letter-spacing:0}.stage-index a{border-top:1px solid var(--ink);display:flex;flex-direction:column;align-items:start;justify-content:center;min-height:84px;text-decoration:none;margin-top:14px}.stage-index a span{font-size:13px}.stage-note{grid-column:3;grid-row:1}.stage-note p{font-size:16px}.stage-note a{font-weight:bold}.blue{background:var(--blue);color:white}.feature{padding:60px var(--space);display:grid;grid-template-columns:1.3fr 1fr;gap:9vw}.feature h2{font-size:clamp(40px,5.5vw,78px)}.feature p{max-width:43ch}.service-stub{border-top:1px solid white;padding-top:18px}.service-stub dl{display:grid;grid-template-columns:1fr 1fr;margin:28px 0;gap:12px}.service-stub dd{margin:0;text-align:right}.practical,.process,.question-strip,.close,.menu-sheet,.detail-intro,.measurement,.studio-stage,.work-wall,.prep-list,.people-sheet,.review-sheet,.faq-layout,.contact-sheet,.credential-strip,.profile-sheet{padding:80px var(--space)}.practical{display:grid;grid-template-columns:1fr 1.5fr;gap:8vw}.wide-facts>div{border-top:1px solid var(--ink);display:grid;grid-template-columns:1fr 2fr;gap:28px;padding:20px 0}.wide-facts dt{font-weight:bold}.wide-facts dd{margin:0}.process{background:var(--lime);display:grid;grid-template-columns:1fr 1.5fr;gap:8vw}.process ol{margin:0;padding-left:28px}.process li{padding-left:18px;margin-bottom:30px}.process li:last-child{margin-bottom:0}.process li::marker{font-size:24px}.question-strip{max-width:1100px;margin:auto}.question-strip h2{margin-bottom:30px}details:not(.directory){border-bottom:1px solid var(--ink)}details:not(.directory) summary{padding:18px 32px 18px 0;font-weight:bold}details:not(.directory) p{padding:0 0 24px}.question-strip>a{margin-top:22px}.close{background:var(--lime)}.close p{margin-top:24px}.close a{margin-top:24px}.site-footer{padding:48px var(--space);background:var(--ink);color:var(--paper);display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:48px;font-size:15px}.footer-brand{font-family:Display,Georgia,serif;font-size:28px;text-decoration:none}.site-footer p{margin-top:8px}.site-footer nav a,.identity a{display:flex;min-height:44px}.lime{background:var(--lime)}.page-title{padding:45px var(--space) 60px}.page-title>p{max-width:55ch;margin-top:22px}.page-title>.demo{margin-top:16px}.menu-sheet article{display:grid;grid-template-columns:2fr 1fr;gap:10vw;padding:40px 0;border-top:1px solid var(--ink)}.menu-sheet article:first-child{padding-top:0;border-top:0}.menu-sheet article:last-child{padding-bottom:0}.menu-sheet h2{font-size:46px}.menu-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.menu-sheet dd{margin:0;text-align:right;font-size:24px}.split{padding:70px var(--space);display:grid;grid-template-columns:1fr 1fr;gap:10vw}.split .button{margin-top:26px}.detail-intro{display:grid;grid-template-columns:1.45fr 1fr;gap:8vw}.detail-intro h2{font-size:36px}.appointment-note{padding:32px;align-self:start}.appointment-note .button{margin-top:24px}.measurement{display:grid;grid-template-columns:1.2fr 1fr 1fr;background:var(--lime);gap:36px;align-items:center}.measurement h2{font-size:44px}.fallback{font-size:15px}.reference-drawing svg{display:block;width:100%;height:auto;max-height:540px}.strand{fill:none;stroke:var(--blue);stroke-width:45;stroke-linecap:round}.ruler{stroke:var(--ink);stroke-width:1}.ruler text{stroke:none;font:18px Text,Arial,sans-serif;fill:var(--ink)}#start-marker,#end-marker{stroke:var(--ink);stroke-width:2;fill:var(--ink)}#start-marker text,#end-marker text{stroke:none;font:22px Display,Georgia,serif}.measure-controls h3{font-size:26px}.measure-controls>p{font-size:15px}.endpoint{border-top:1px solid var(--ink);padding:16px 0;margin-top:18px;display:grid;grid-template-columns:1fr 1fr;gap:10px}.endpoint h4{grid-column:1/-1}.measure-controls button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.measure-controls button:hover:not(:disabled){background:var(--paper)}output{display:block;padding:18px 0;font-weight:bold;font-size:24px;font-variant-numeric:tabular-nums}.studio-stage{display:grid;grid-template-columns:1.6fr 1fr;gap:6vw;align-items:center}.studio-stage h2{font-size:42px}.work-wall{background:var(--blue);color:white}.work-wall>.photo-slot{max-width:1000px;margin:36px auto 0}.photo-slot{margin:0}.photo-space{min-height:280px;background:var(--paper);border:1px dashed var(--ink);color:var(--ink);padding:32px;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center;gap:12px}.photo-space strong{font-size:25px}.photo-space span{font-size:16px}.photo-slot figcaption{font-size:15px;padding:16px 0;line-height:1.65}.photo-slot#owner-photo .photo-space{aspect-ratio:3/4}.photo-slot#team-photo .photo-space{aspect-ratio:16/9}.photo-slot#work-photo .photo-space{aspect-ratio:4/3}.prep-list{display:grid;grid-template-columns:1fr 1.5fr;gap:10vw}.prep-list ol{margin:0;padding-left:25px}.prep-list li{padding-left:20px;padding-bottom:28px;border-bottom:1px solid var(--line)}.prep-list li+li{padding-top:20px}.people-sheet{background:var(--lime)}.owner-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:7vw;align-items:center;margin-top:38px}.owner-story h3{font-family:Display,Georgia,serif;font-size:36px}.owner-story h4{margin-top:36px}.team-row{display:grid;grid-template-columns:1.4fr 1fr;gap:7vw;margin-top:65px;align-items:center}.review-sheet{display:grid;grid-template-columns:1fr 1fr;gap:24px 7vw}.review-sheet>p{grid-column:1;max-width:40ch}.review-placeholder{grid-column:2;grid-row:1/3;align-self:center;border-top:1px solid var(--ink);border-bottom:1px solid var(--ink);padding:28px 0}.faq-layout{display:grid;grid-template-columns:1fr 1.4fr;gap:8vw}.faq-layout h2{font-size:40px}.faq-layout details:first-child{border-top:1px solid var(--ink)}.contact-sheet{display:grid;grid-template-columns:1.2fr 1fr;gap:8vw}.contact-main h2{margin-bottom:22px}.contact-link{display:flex;font-size:clamp(20px,2.6vw,36px);min-height:58px;overflow-wrap:anywhere}.contact-main>p{font-size:16px;margin-top:24px}.contact-main h3{margin-top:36px}.contact-facts>div{border-top:1px solid var(--ink);padding:20px 0}.contact-facts dt{font-weight:bold}.contact-facts dd{margin:10px 0 0}.credential-strip{background:var(--blue);color:white}.credential-strip p{margin-top:22px}.profile-sheet dl{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:35px}.profile-sheet dl>div{border-top:1px solid var(--ink);padding-top:16px}.profile-sheet dt{font-weight:bold}.profile-sheet dd{margin:12px 0 0}.missing{padding:80px var(--space);min-height:70vh}.missing p{margin-top:24px}.missing a{margin:28px 24px 0 0}
[hidden]{display:none!important}
@media(min-width:1600px){.poster h1{font-size:96px}}
@media(max-width:1050px){.poster-stage{grid-template-columns:1fr 3fr;gap:24px}.stage-note{grid-column:1/-1;grid-row:2;display:grid;grid-template-columns:1fr 2fr auto;gap:24px;align-items:start;padding-bottom:28px}.stage-note p{margin:0}.stage-note a{margin:0}.measurement{grid-template-columns:1fr 1fr}.measure-copy{grid-column:1/-1}.measurement h2 br{display:none}.measure-copy p{max-width:70ch}.site-footer{grid-template-columns:1fr 1fr}.site-footer nav{grid-column:1/-1;display:flex;gap:24px}.feature{gap:50px}.menu-sheet article{gap:40px}}
@media(max-width:760px){body{font-size:17px}.site-header{padding:18px 20px}.wordmark{font-size:22px}.wordmark span{font-size:12px}.directory summary{font-size:15px;padding:10px}.mega{grid-template-columns:1fr;gap:24px;padding:24px}.poster{padding:32px 20px 0}.poster h1{font-size:clamp(44px,9.6vw,72px)}.poster-stage{display:flex;flex-direction:column;gap:0;align-items:stretch}.poster-stage>.object-photo{order:0;margin:0 -20px}.poster .object-photo figcaption{padding:10px 20px 20px}.stage-index{order:1;padding:10px 0 25px}.stage-index h2{font-size:22px}.stage-index a{min-height:64px;flex-direction:row;justify-content:space-between;align-items:center;gap:16px;margin-top:6px}.stage-note{order:2;display:block;padding:25px 0 32px;border-top:1px solid var(--ink)}.stage-note p{margin-top:12px}.stage-note a{margin-top:10px}.feature,.practical,.process,.detail-intro,.studio-stage,.prep-list,.owner-layout,.team-row,.faq-layout,.contact-sheet,.split{grid-template-columns:1fr;gap:32px}.feature,.practical,.process,.question-strip,.close,.menu-sheet,.detail-intro,.measurement,.studio-stage,.work-wall,.prep-list,.people-sheet,.review-sheet,.faq-layout,.contact-sheet,.credential-strip,.profile-sheet,.split{padding:48px 24px}.feature h2{font-size:44px}.wide-facts>div{grid-template-columns:1fr;gap:10px}.process ol{padding-left:25px}.page-title{padding:34px 24px 42px}.page-title h1{font-size:clamp(42px,9.5vw,68px)}.menu-sheet article{grid-template-columns:1fr;gap:22px;padding:32px 0}.menu-sheet h2{font-size:36px}.menu-sheet dl{border-top:1px dashed var(--line);padding-top:18px}.measurement{grid-template-columns:1fr;gap:26px}.measure-copy{grid-column:auto}.measurement h2{font-size:36px}.reference-drawing{max-width:340px;justify-self:center;width:100%}.measure-controls{width:100%}.endpoint button{min-height:48px}.owner-layout{margin-top:30px}.owner-story h3{font-size:30px}.team-row{margin-top:44px}.photo-space{min-height:230px;padding:22px}.photo-slot#owner-photo{max-width:400px}.photo-slot#work-photo .photo-space{aspect-ratio:4/3}.review-sheet{display:block}.review-sheet>p{margin-top:24px}.review-placeholder{margin-top:30px}.site-footer{grid-template-columns:1fr;padding:40px 24px;gap:26px}.site-footer nav{grid-column:auto;display:block}.profile-sheet dl{grid-template-columns:1fr}.contact-link{font-size:24px}.appointment-note{padding:24px}.missing{padding:54px 24px}.missing h1{font-size:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Reserved image slots must not derive width from their minimum height. */
.photo-slot,.photo-space{width:100%;min-width:0}.owner-layout>*,.team-row>*,.studio-stage>*{min-width:0}
