.site-header{position:sticky;top:0;z-index:10;background:#edf0edf5;backdrop-filter:blur(16px);border-bottom:1px solid #263b4415}.site-header nav a{position:relative}.site-header nav a:after{content:'';height:1px;width:0;position:absolute;bottom:3px;left:0;background:var(--ink);transition:width .2s}.site-header nav a:hover:after{width:100%}.header-contact{transition:background .2s,color .2s}.header-contact:hover{background:var(--ink);color:var(--paper)}.showroom{height:calc(100svh - 120px);min-height:600px}.showroom-copy{padding-top:60px}.showroom-word{font-size:clamp(65px,9vw,135px);bottom:105px}.hero-project{font-size:11px;color:white;background:none;border:0;border-bottom:1px solid #fff7;padding:12px 0;min-height:44px}.showroom-bottom{align-items:center}.case-summary{display:block;font-size:12px;color:var(--muted);line-height:1.9;margin-top:28px}.project-caption>span{transition:transform .2s}.project:hover .project-caption>span{transform:translate(3px,-3px)}.photo-open{border:1px solid #fff8;backdrop-filter:blur(8px)}.photo img{height:330px}.featured .photo img{height:470px}.prepare{border-bottom:1px solid #5e7275;padding:0 0 25px;margin-bottom:10px}.prepare>span{font-size:13px}.prepare ul{list-style:none;margin:20px 0;padding:0;display:grid;gap:13px;color:#bdcdc6;font-size:12px}.prepare li{display:flex;gap:13px;line-height:1.7}.prepare li:before{content:'↗';color:var(--paper)}.prepare small{font-size:10px;color:#bdcdc6}.contact-options>p{line-height:1.9}.close{border-bottom:1px solid var(--line);width:100%;text-align:right}.project-facts dd{line-height:1.6;word-break:keep-all}.dialog-copy>#dialog-description{min-height:50px}.case-mail-note{font-size:10px!important;color:var(--muted);margin-top:12px!important}.case-navigation{display:flex;justify-content:space-between;align-items:center;gap:15px;border-top:1px solid var(--line);padding-top:20px;margin-top:25px}.case-navigation button{background:none;border:0;min-height:44px;font-size:12px;padding:10px 0}.case-navigation button:hover{color:#526b5e}.case-navigation span{font-size:11px;color:var(--muted)}dialog{overscroll-behavior:contain}.modal-open .mobile-contact{visibility:hidden}summary{min-height:28px}.concept-bar span:last-child{font-size:9px;letter-spacing:0}
@media(max-width:1000px){.showroom-copy{max-width:640px}.showroom h1{font-size:49px}.showroom-word{font-size:90px}.case-summary{font-size:11px;margin-top:20px}}
@media(max-width:600px){html{scroll-padding-top:90px}.site-header{height:74px}.site-header nav{top:74px}.showroom{height:calc(100svh - 106px);min-height:635px}.showroom-copy{padding:40px 7% 0}.showroom h1{font-size:36px;letter-spacing:-1.4px}.showroom-copy>p:not(.eyebrow){font-size:13px;line-height:1.9}.showroom-word{font-size:41px;letter-spacing:-1.6px;right:7%;bottom:155px;white-space:nowrap}.showroom-bottom{bottom:70px;gap:18px}.showroom-bottom small{font-size:8px}.showroom-bottom p{font-size:10px;line-height:1.7}.hero-project{font-size:10px;flex-shrink:0}.concept-bar span:last-child{font-size:8px}.case-summary{display:none}.project.featured .photo img,.project .photo img{height:300px}.contact-options{margin-top:35px}.prepare{padding-bottom:22px}.mobile-contact{box-shadow:0 -3px 18px #13252e10}.mobile-contact a{font-size:13px;min-height:56px}.case-navigation{gap:8px}.case-navigation button{font-size:11px}.dialog-copy{padding:24px}dialog{max-height:88svh}.dialog-copy h2{font-size:26px}.project-facts{gap:18px}.case-mail-note{line-height:1.8!important}}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
/* Keep mobile consultation actions in page flow so they never cover section text. */
@media(max-width:600px){.mobile-contact{position:static;display:grid;grid-template-columns:1fr 1.5fr;margin:0;padding:16px 7%;gap:10px;background:var(--paper);border:0;border-bottom:1px solid var(--line);box-shadow:none}.mobile-contact a{display:flex;align-items:center;justify-content:center;min-height:52px;padding:15px 10px;line-height:1.4;font-size:13px;border:1px solid var(--line);border-radius:3px}.mobile-contact a:last-child{border-color:var(--ink)}.showroom-bottom{bottom:28px}.showroom-word{bottom:115px}.showroom{min-height:600px;height:calc(100svh - 106px)}footer{padding-bottom:40px}.modal-open .mobile-contact{visibility:visible}}
/* Desktop content stays centered on wide displays; photography remains full bleed. */
@media(min-width:1100px){
  :root{--content-gutter:max(64px,calc((100vw - 1200px)/2));--header-gutter:max(48px,calc((100vw - 1280px)/2))}
  .concept-bar,.site-header,footer{padding-left:var(--header-gutter);padding-right:var(--header-gutter)}
  .projects,.intro-section,.detail,.making,.contact{padding-left:var(--content-gutter);padding-right:var(--content-gutter)}
  .intro-section{grid-template-columns:250px minmax(0,1fr);gap:50px}
  .intro-section>div:last-child{grid-template-columns:minmax(0,1.7fr) minmax(0,1fr);gap:35px}
  .intro-section h2{font-size:32px}
  .detail,.making,.contact{gap:72px}
  .showroom-copy{max-width:none;width:calc(var(--content-gutter) + 680px);padding-left:var(--content-gutter);padding-right:0}
  .showroom h1{font-size:62px;max-width:680px}
  .showroom-bottom{left:var(--content-gutter);right:var(--content-gutter)}
  .showroom-word{right:var(--content-gutter);font-size:110px}
  .section-head>p{max-width:280px}
}

@media(max-width:600px){.featured .project-caption{justify-content:space-between}}
/* Readable body copy and controls across desktop and mobile. */
.site-header nav{font-size:15px}.header-contact,.hero-action,.hero-project,.text-link{font-size:15px}.eyebrow,.project-caption small,.journal small,.showroom-bottom small{font-size:12px;letter-spacing:1.4px}
.showroom-copy>p:not(.eyebrow){font-size:18px}.showroom-bottom p{font-size:15px}
.intro-section p:not(.eyebrow),.section-head>p,.project-caption p,.case-summary,.project-note>p,.detail-copy>p:not(.eyebrow),details p,.making-intro,.contact p,.prepare ul{font-size:16px;line-height:1.85}
.filters button,.photo-open,summary,.prepare>span,.contact-options small{font-size:15px}.prepare small,.contact-options>p,.detail-photo span,footer p,footer>a:not(.brand),footer small{font-size:13px;line-height:1.8}.journal h3{font-size:21px}.case-navigation button{font-size:14px}.case-mail-note{font-size:13px!important}
@media(max-width:600px){
.showroom-copy>p:not(.eyebrow){font-size:16px}.showroom .eyebrow{font-size:11px}.showroom-bottom small{font-size:10px}.showroom-bottom p,.hero-project{font-size:12px}.showroom-bottom{gap:12px}.hero-project{flex-shrink:1;text-align:right}
.intro-section p:not(.eyebrow),.section-head>p,.project-caption p,.project-note>p,.detail-copy>p:not(.eyebrow),details p,.making-intro,.contact p,.prepare ul{font-size:15px}
.mobile-contact a,.filters button,.photo-open,summary,.text-link{font-size:14px}.project-caption small,.journal small{font-size:11px}.journal h3{font-size:19px}.case-navigation button{font-size:13px}
}
@media(min-width:601px){.showroom{height:calc(100svh - 88px)}}@media(max-width:600px){.showroom{height:calc(100svh - 74px)}}
footer{flex-wrap:wrap;align-items:flex-start}.footer-info{flex:1;min-width:260px}.footer-info p{margin:0 0 16px}.footer-contacts{display:flex;flex-wrap:wrap;gap:12px 28px}.footer-contacts a{font-size:15px;line-height:1.8}.footer-contacts span{color:#a8bab2;margin-right:12px;font-size:13px}footer>small{flex-basis:100%}@media(max-width:600px){.footer-info{flex-basis:100%;min-width:0}.footer-contacts{flex-direction:column;gap:8px}.footer-contacts a{font-size:14px}}
.footer-address{font-style:normal;font-size:15px;line-height:1.8;margin-bottom:12px}@media(max-width:600px){.footer-address{font-size:14px;word-break:keep-all}}
