/* Final responsive control rules, loaded after the shared theme. */
body{--control-glow:#d397f5;--control-lit:#fff5ff}body.workshop{--control-glow:#eac777;--control-lit:#fff4d0}
body :is(.button,.button.secondary,.menu-toggle,.review-toggle,.atmosphere>summary,.lightbox-navigation button,.atmosphere-panel button,.gallery-tabs button,.collection-tab,.project-back,.project-paging button,.drawer-project-controls button,.tray-view-toggle,.project-selections a){background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
body :is(button,.button,.atmosphere>summary):is([aria-pressed=true],[aria-selected=true],[aria-expanded=true]),body .atmosphere[open]>summary{color:var(--control-lit)!important;text-shadow:0 0 6px var(--control-glow),0 0 16px var(--control-glow)}
body :is(button,.button,summary,select):focus-visible{outline:2px solid var(--control-glow)!important;outline-offset:4px}
.collection-bar{background:transparent!important;box-shadow:none!important;border-radius:0!important}.collection-bar:before{display:none!important}
.collection-tabs{flex-wrap:wrap;gap:16px!important}.collection-tab{flex:0 1 auto!important;min-width:90px!important}
.mobile-collection-picker{display:none}
@media(max-width:720px){
.collection-bar{display:block;padding:0!important;min-height:0}
.collection-bar.has-mobile-picker .collection-tabs{display:none!important}
.mobile-collection-picker{display:flex;flex-direction:column;gap:8px;width:100%;font-size:13px;letter-spacing:.06em}
.mobile-collection-picker select{width:100%;max-width:100%;min-height:48px;padding:10px 12px;font:inherit;font-size:17px;color:#eee1f5;background:#171222;border:1px solid #bca2d466;border-radius:4px;color-scheme:dark}
}

/* Observatory selections change immediately, without movement. */
.collection-tab,.collection-tab [data-collection-label],.collection-active-title,.category-constellation{transition:none!important;animation:none!important}
.collection-tab [data-collection-label],.collection-active-title{transform:none!important}
.collection-tab[aria-pressed=true] .collection-active-title{color:#fff5ff;text-shadow:0 0 6px #d397f5,0 0 16px #d397f5}

/* Phone cabinet: centered furniture, square drawers, one door, readable lists. */
@media(max-width:720px){
body.workshop .workbench{width:100%!important;max-width:100%!important;padding-inline:24px!important;box-sizing:border-box;margin-inline:auto!important}
body.workshop .cabinet-shell{width:100%!important;max-width:400px!important;min-width:0!important;aspect-ratio:2 / 3!important;margin:0 auto!important;box-sizing:border-box;transform:none!important}
body.workshop .cabinet-shell:before{inset:-7px;border-width:8px}
body.workshop .cabinet-shell>.compact-cabinet{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;grid-template-rows:repeat(3,minmax(0,1fr))!important;width:100%!important;max-width:100%!important;height:100%!important;margin:0!important;padding:8px!important;gap:8px!important;box-sizing:border-box}
body.workshop .cabinet-shell .cabinet-drawer{width:100%!important;height:100%!important;min-height:0!important;padding:0!important;aspect-ratio:auto!important;background-size:100% 100%!important}
body.workshop .cabinet-shell .cabinet-drawer>summary{min-height:0!important;height:100%!important;padding:12px 5px 40px!important;box-sizing:border-box}
body.workshop .cabinet-shell .drawer-label{width:94%!important;min-height:0;padding:5px 3px!important}
body.workshop .cabinet-shell .drawer-label .drawer-title{font-size:clamp(21px,6vw,29px)!important;white-space:normal;line-height:1.05}
body.workshop .cabinet-shell .drawer-category{font-size:7px!important}
body.workshop .cabinet-shell .cabinet-doors .door-right{display:none!important}
body.workshop .cabinet-shell .cabinet-doors .door-left{left:0;width:100%!important;transform-origin:left center}
body.workshop .cabinet-shell .cabinet-doors .door-left .door-art{width:200%;left:0;object-fit:fill}
body.workshop .project-cabinet-dialog{width:calc(100% - 24px);max-width:calc(100% - 24px);max-height:88dvh;margin:auto;padding:18px;box-sizing:border-box;overflow:auto}
body.workshop .project-cabinet-dialog .tray-view-toggle{display:none!important}
body.workshop .project-cabinet-dialog .project-tray{width:100%!important;max-width:100%!important;aspect-ratio:auto!important;height:auto!important;filter:none!important;margin:0!important}
body.workshop .project-cabinet-dialog :is(.tray-material,.tray-object){display:none!important}
body.workshop .project-cabinet-dialog .tray-compartments{position:static!important;display:flex!important;flex-direction:column!important;gap:12px;transform:none!important;width:100%!important;height:auto!important;padding:0!important}
body.workshop .project-cabinet-dialog .tray-project{position:static!important;display:block!important;width:100%!important;height:auto!important;min-height:56px;transform:none!important}
body.workshop .project-cabinet-dialog .tray-paper{display:flex!important;flex-direction:row!important;justify-content:space-between!important;align-items:center;gap:14px;width:100%!important;min-height:56px;height:auto!important;padding:12px!important;box-sizing:border-box;transform:none!important;text-align:left}
body.workshop .project-cabinet-dialog .tray-paper>span{font-family:inherit;font-size:17px!important;line-height:1.35;min-width:0;overflow-wrap:break-word}
body.workshop .project-cabinet-dialog .tray-paper small{font-size:13px;white-space:nowrap;flex-shrink:0;margin:0}
}

@media(max-width:720px){
body .atmosphere{right:10px!important;bottom:max(10px,env(safe-area-inset-bottom))!important;max-width:calc(100vw - 20px)!important}
body .atmosphere>summary{display:grid!important;place-items:center;width:44px!important;height:44px!important;min-width:44px!important;min-height:44px!important;padding:0!important;margin-left:auto;font-size:25px!important;letter-spacing:0!important;background:none!important;text-shadow:0 0 8px var(--control-glow)}
body .atmosphere-panel{max-width:calc(100vw - 28px)!important;max-height:65dvh;overflow:auto;box-sizing:border-box}
body:has(dialog[open]) .atmosphere{display:none!important}
body.workshop .cabinet-shell .cabinet-drawer{margin:0!important}
body.workshop .cabinet-shell .drawer-label{min-width:0!important}
}

/* Main navigation changes type instantly; only the current page is script. */
body .site-nav .nav-destination,body .site-nav .nav-label,body .site-nav .nav-overline{transition:none!important;animation:none!important}
body .site-nav .nav-destination:not([aria-current="page"]) .nav-label{font-family:inherit!important;font-size:14px!important;letter-spacing:.14em!important;text-transform:uppercase!important;text-shadow:none!important}
body .site-nav .nav-destination:not([aria-current="page"]){text-shadow:none!important}
body .site-nav .nav-destination:not([aria-current="page"]) .nav-overline{max-height:0!important;opacity:0!important}
body .site-nav .nav-destination[aria-current="page"] .nav-label{font-family:Allura,cursive!important;letter-spacing:0!important;text-transform:none!important;text-shadow:0 0 8px var(--control-glow),0 0 18px var(--control-glow)}
@media(max-width:720px){body .site-nav.open .nav-destination:not([aria-current="page"]) .nav-label{font-size:16px!important}body .site-nav.open .nav-destination[aria-current="page"] .nav-label{font-size:36px!important}}

/* Use the phone width for service selection rather than nested gutters. */
@media(max-width:720px){
body main.contact-intake-page{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important;margin-inline:auto!important;padding-inline:0!important;box-sizing:border-box}
body main.contact-intake-page .service-intake{width:100%!important;max-width:100%!important;min-width:0!important;padding:0!important;margin:0!important;grid-template-columns:minmax(0,1fr)!important}
body main.contact-intake-page .intake-package-column{width:100%!important;max-width:100%!important;min-width:0!important;padding:18px!important;margin:0!important;box-sizing:border-box}
body main.contact-intake-page .intake-workspace{width:100%!important;max-width:100%!important;min-width:0!important;padding:0 6px!important;box-sizing:border-box}
body main.contact-intake-page .form-field :is(input,select,textarea){width:100%!important;max-width:100%!important;min-width:0!important;box-sizing:border-box;font-size:16px;padding-inline:12px}
body main.contact-intake-page .form-field select{padding-right:30px}
body main.contact-intake-page .intake-package-info h2{font-size:clamp(30px,8.5vw,38px);line-height:1.15;overflow-wrap:normal}
}

.site-header a.brand .header-wordmark{display:block;width:fit-content;font-size:1.25em;transform:scaleX(1.12);transform-origin:left center;letter-spacing:.25em;padding-right:.5em}
@media(max-width:720px){.site-header a.brand .header-wordmark{transform:scaleX(1.08);letter-spacing:.18em;padding-right:.3em}}
