.studios-page{background:#fcfbf8;color:#292b29;text-align:left;padding-bottom:50px}
.studios-heading{padding-top:48px;padding-bottom:36px}
.studios-eyebrow{font-size:13px;text-transform:uppercase;letter-spacing:.12em;color:#866324;font-weight:600;margin:0 0 10px}
.studios-heading h1{font-size:clamp(34px,4.5vw,56px);font-weight:300;line-height:1.2;max-width:950px}
.studios-intro{font-size:21px;line-height:1.65;max-width:740px;margin:20px 0}
.studios-small{font-size:14px!important;line-height:1.5!important;color:#62665f}
.studios-heading .button{margin-top:20px;white-space:normal}
.studios-map-section{padding-top:28px;padding-bottom:28px;border-top:1px solid #dedbcd;scroll-margin-top:90px}
.studios-map-section h2{font-size:32px}
.studios-map-section>p{max-width:920px;line-height:1.6;margin-top:12px}
.studio-list-skip{display:inline-block;padding:10px 0;text-decoration:underline;color:#075405}
.studio-map-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;margin-top:16px;align-items:start}
#studio-map{height:clamp(440px,52vw,680px);z-index:0;background:#e6e8e2;border-radius:3px}
.studio-map-placeholder{padding:24px}
.studio-map-help{margin-top:10px}
.studio-map-legend{padding:18px;background:#f1eee5;border-radius:3px}
.studio-legend-heading h3{font-size:21px;line-height:1.3;margin:0}
#studio-map-reset{font:inherit;font-size:14px;text-decoration:underline;color:#075405;background:none;border:0;padding:8px 0;cursor:pointer}
.studio-map-legend ol{padding:0;margin:12px 0 0;list-style:none}
.studio-map-legend li+li{margin-top:3px}
.studio-map-legend a{display:flex;align-items:center;gap:9px;padding:7px 5px;font-size:14px;line-height:1.4;color:#294426;border-radius:3px}
.studio-map-legend a:hover,.studio-map-legend a[aria-current]{background:#e1e5d4}
.studio-legend-number{display:flex;align-items:center;justify-content:center;flex:0 0 25px;height:25px;border-radius:50%;background:#075405;color:#fff;font-size:12px;font-weight:600}
.studio-list{scroll-margin-top:100px}
.studio-row{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:30px;padding:24px 0;border-top:1px solid #dedbcd;scroll-margin-top:90px}
.studio-details h2{font-size:26px;line-height:1.25;margin:5px 0 10px;overflow-wrap:anywhere}
.studio-description{font-size:16px;line-height:1.55}
.studio-features{display:flex;flex-wrap:wrap;gap:6px;margin:12px 0;padding:0;list-style:none}
.studio-features li{font-size:12px;background:#eeeadd;border-radius:3px;padding:4px 8px}
.studio-details>.studios-small{margin-top:10px}
.studio-photos{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
.studio-photos figure{margin:0;min-width:0}
.studio-photos img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;background:#eeeadd}
.studio-image-link{display:block;cursor:zoom-in}
.studio-visual-actions{display:flex;align-items:baseline;justify-content:space-between;flex-wrap:wrap;gap:8px 16px;margin-top:10px}
.studio-official,.studio-show-map{font-size:14px;color:#075405;text-decoration:underline;line-height:1.5}
.studio-show-map{margin-left:auto;text-align:right}
.studio-row.is-selected{outline:2px solid #9cae87;outline-offset:7px}
.studio-pin{display:flex!important;align-items:center;justify-content:center;width:30px!important;height:30px!important;border-radius:50%;background:#075405;color:#fff;border:2px solid #fff;font-weight:700;box-shadow:0 2px 6px #0005}
.studio-pin.is-selected{background:#936c22}
.studios-page a:focus-visible,.studios-page button:focus-visible,.studio-details h2:focus{outline:3px solid #075405!important;outline-offset:3px}
.studios-rights{border-top:1px solid #dedbcd;padding-top:24px}
.studios-rights>p{max-width:850px;font-size:15px;line-height:1.7}
.studios-rights h2{font-size:26px;margin-bottom:16px}
.studio-source-links{display:flex;flex-wrap:wrap;gap:10px 24px;list-style:none;padding:0;margin:20px 0 26px}
.studio-source-links a{color:#075405;text-decoration:underline}
.studio-image-link[hidden],.studio-image-fallback[hidden],#studio-map-reset[hidden],.studio-lightbox [hidden]{display:none!important}
.studio-image-fallback{display:block;min-height:100px;padding:12px;background:#eeeadd;color:#075405;text-decoration:underline;font-size:13px}
/* Keep server-rendered rows visible if scripts are unavailable. */
.preloader{display:none!important}
.rd-navbar-nav .rd-nav-link:focus-visible{outline:3px solid #075405!important;outline-offset:-3px;background:#edf2e7}
html.studio-lightbox-open{overflow:hidden}
.studio-lightbox{border:0;padding:24px;margin:0;width:100vw;max-width:none;height:100dvh;max-height:none;background:transparent;color:#fff;overflow:auto}
.studio-lightbox:not([open]){display:none}
.studio-lightbox[open]{display:flex;align-items:center;justify-content:center}
.studio-lightbox::backdrop{background:rgba(16,20,16,.93)}
.studio-lightbox-frame{width:min(1100px,100%);min-width:0}
.studio-lightbox-header{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:12px}
.studio-lightbox-header h2{font-size:22px;font-weight:400;line-height:1.3;color:#fff}
.studio-lightbox button{display:flex;align-items:center;justify-content:center;flex:0 0 44px;width:44px;height:44px;border:1px solid #aaa9;background:#2228;border-radius:50%;color:#fff;font:400 34px/1 sans-serif;cursor:pointer}
.studio-lightbox button:focus-visible{outline:3px solid #ebb85e!important;outline-offset:3px}
.studio-lightbox button:disabled{opacity:.35;cursor:default}
.studio-lightbox-stage{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:16px}
.studio-lightbox-image{display:flex;align-items:center;justify-content:center;min-height:140px}
.studio-lightbox-image img{display:block;width:auto;height:auto;max-width:100%;max-height:calc(100dvh - 210px);object-fit:contain;touch-action:pan-y}
.studio-lightbox-error{font-size:16px;text-align:center;color:#fff}
.studio-lightbox-caption{text-align:center;margin-top:12px;font-size:13px;line-height:1.5}
.studio-lightbox-caption p{margin:4px 0;color:#ddd}
@media(max-width:991px){
 .studio-map-layout{grid-template-columns:minmax(0,1fr) 230px;gap:16px}
 .studio-map-legend{padding:14px}
}
@media(max-width:767px){
 .studios-heading{padding-top:30px;padding-bottom:28px}
 .studios-intro{font-size:19px}
 .studios-map-section h2{font-size:28px}
 .studio-map-layout{grid-template-columns:1fr}
 #studio-map{height:420px}
 .studio-map-legend ol{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3px 8px}
 .studio-map-legend li+li{margin-top:0}
 .studio-map-legend a{font-size:13px;padding:7px 2px;gap:6px;overflow-wrap:anywhere}
 .studio-legend-heading{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:10px}
 .studio-row{grid-template-columns:1fr;gap:14px;padding:20px 0}
 .studio-details{grid-row:1}
 .studio-details h2{font-size:24px}
 .studio-photos{gap:6px}
 .studio-photos img{aspect-ratio:1}
 .studio-row.is-selected{outline-offset:3px}
 .studio-visual-actions{gap:8px}
 .studio-official,.studio-show-map{font-size:13px}
 .studio-lightbox{padding:14px}
 .studio-lightbox-header h2{font-size:18px}
 .studio-lightbox-stage{grid-template-columns:36px minmax(0,1fr) 36px;gap:6px}
 .studio-lightbox-stage button{width:36px;height:44px;font-size:30px}
 .studio-lightbox-image img{max-height:calc(100dvh - 200px)}
 .studio-lightbox-caption{font-size:12px}
}
@media(prefers-reduced-motion:reduce){.studios-page *,.studio-lightbox *{scroll-behavior:auto!important;transition:none!important}}
