/* Shared hierarchy for the five-page LiftLab site. */
.skip-link { position:fixed; top:-100px; left:20px; z-index:2000; background:#f5f4f0; color:#111; padding:12px 20px; }
.skip-link:focus { top:20px; }
.nav-links a[aria-current="page"],.mobile-menu a[aria-current="page"] { color:#fff; text-decoration:underline; text-underline-offset:7px; }
.nav-links { gap:25px; }
.page-intro { background:#111210; color:#f0eee7; padding:170px 6vw 60px; }
.page-intro .section-label { color:#a4a99f; margin-bottom:32px; }
.page-intro h1 { font-size:clamp(76px,10vw,144px); font-weight:500; line-height:.94; letter-spacing:-.065em; }
.page-intro h1 em,.home-studio h2 em { font-family:Georgia,'Times New Roman',serif; font-weight:400; }
.page-intro-bottom { display:flex; justify-content:space-between; align-items:end; gap:40px; margin-top:40px; padding-top:25px; border-top:1px solid #ffffff30; }
.page-intro-bottom>p { max-width:350px; color:#b3b7ae; font-size:16px; line-height:1.7; }
.chapter-nav { display:flex; gap:8px 22px; flex-wrap:wrap; justify-content:flex-end; }
.chapter-nav a { display:inline-flex; align-items:center; min-height:44px; font:11px ui-monospace,monospace; color:#d4d8cd; }
.chapter-nav a:hover { color:white; }
.home-studio { background:#ecebe4; color:#191d17; padding:88px 6vw; }
.home-studio-grid { display:grid; grid-template-columns:1.1fr .9fr; align-items:center; gap:70px; }
.home-room-photo { display:block; position:relative; overflow:hidden; padding:18px 18px 0; background:#f6f5f1; border:1px solid #dcdcd3; }
.home-room-photo img { display:block; width:100%; height:auto; aspect-ratio:1.18; object-fit:cover; object-position:50% 34%; filter:saturate(.22) brightness(1.15) contrast(.93); }
.home-room-photo>span { display:flex; justify-content:space-between; align-items:center; gap:14px; min-height:56px; padding:12px 0; color:#53584f; font:10px/1.5 ui-monospace,monospace; }
.home-room-photo:hover>span { color:#141910; }
.home-studio h2 { font-size:clamp(46px,5.6vw,80px); line-height:1.02; letter-spacing:-.06em; margin-bottom:25px; font-weight:500; }
.home-studio p:not(.section-label) { font-size:16px; line-height:1.7; max-width:330px; color:#5a6156; }
.text-link { display:inline-flex; align-items:center; min-height:48px; margin-top:25px; font-size:13px; border-bottom:1px solid currentColor; }
.home-directory { background:#ecebe4; color:#1b2119; padding:0 6vw 70px; }
.home-directory a { display:grid; grid-template-columns:.65fr 1.3fr 40px; align-items:center; gap:20px; border-top:1px solid #3335; padding:26px 0; }
.home-directory a:last-child { border-bottom:1px solid #3335; }
.home-directory a>span { font:10px ui-monospace,monospace; text-transform:uppercase; letter-spacing:.06em; color:#686e61; }
.home-directory h2 { font-size:clamp(28px,3.5vw,48px); font-weight:500; letter-spacing:-.045em; }
.home-directory b { font-size:28px; font-weight:400; transition:transform .2s; }
.home-directory a:hover b { transform:translate(3px,-3px); }
.footer { padding:65px 6vw 40px; }
.footer-signoff { max-width:1180px; margin:0 auto; }
.footer-signoff>a { font-size:clamp(40px,5vw,70px); }
.footer-bottom { max-width:1180px; margin:55px auto 0; border-top:1px solid #ffffff30; padding-top:24px; display:flex; gap:20px 35px; justify-content:space-between; align-items:center; flex-wrap:wrap; color:#b5baaf; font-size:11px; }
.footer-logo { font-size:32px; letter-spacing:-.065em; font-weight:600; color:#f0eee7; }
.footer-bottom .footer-links { display:flex; gap:20px; flex-wrap:wrap; }
.footer-bottom a { display:inline-flex; align-items:center; min-height:44px; }
.footer-bottom small { font-size:10px; }
.inner-page #studio { padding-top:36px; background:#111210; }
.inner-page #studio .studio-gallery { margin-top:0; }
.inner-page #equipment { padding-top:65px; padding-bottom:65px; }
.inner-page #services .services-intro { position:static; }
.inner-page #network .split-head,.inner-page #djs .split-head { align-items:start; }
.inner-page #network,.inner-page #djs { background:#ecebe4; }
.page-artists #network .section-title { font-size:clamp(34px,4vw,52px); }
.page-artists #djs { padding-top:20px; }
.page-artists #label { border-top:1px solid #ccc; }
.page-artists #reaction { padding-top:65px; }
.page-artists #reaction .container { border-top:0; padding-top:0; }
.remote-cover { background:#111210; padding:0 6vw 55px; position:relative; margin:0; }
.remote-cover img { display:block; width:100%; max-width:1180px; height:420px; object-fit:cover; object-position:center 48%; margin:auto; }
.remote-cover figcaption { max-width:1180px; margin:12px auto 0; color:#a7aca1; font:9px ui-monospace,monospace; letter-spacing:.1em; }
.page-mix-master #remote { padding-top:50px; }
.page-mix-master #remote .remote-grid { margin-top:0; }
.file-guide { background:#ecebe4; color:#161b14; padding:80px 6vw; }
.file-guide-grid { display:grid; grid-template-columns:1fr 1fr; gap:80px; margin-top:35px; }
.file-guide p { line-height:1.8; font-size:16px; max-width:480px; }
.page-contact #contact { padding-top:55px; padding-bottom:65px; }
.page-contact #contact .section-title { font-size:32px; }
.event-disclosure { padding:0 0 60px; }
.event-disclosure>details { border-top:1px solid #ffffff30; border-bottom:1px solid #ffffff30; }
.event-disclosure>details>summary { padding:25px 0; list-style:none; cursor:pointer; font-size:18px; display:flex; justify-content:space-between; gap:20px; }
.event-disclosure>details>summary::-webkit-details-marker { display:none; }
.event-disclosure>details[open]>summary>span { transform:rotate(45deg); }
.event-disclosure #events { padding:25px 0 50px; }
.event-disclosure .events-grid { margin-top:30px; }
.event-disclosure #events .section-title { font-size:38px; }
@media(max-width:980px) {
 .page-intro { padding:135px 24px 42px; }
 .page-intro-bottom { display:block; margin-top:28px; }
 .chapter-nav { justify-content:flex-start; margin-top:20px; gap:8px 22px; }
 .home-studio-grid { gap:35px; }
 .home-studio { padding:60px 24px; }
 .home-directory { padding:0 24px 55px; }
 .event-disclosure { width:calc(100% - 48px); }
 .file-guide-grid { gap:40px; }
 .footer-bottom { gap:15px 24px; }
 .footer { padding-bottom:100px; }
 .page-contact .footer { padding-bottom:35px; }
}
@media(max-width:600px) {
 .page-intro h1 { font-size:clamp(65px,17vw,98px); }
 .page-intro-bottom>p { font-size:14px; }
 .home-studio-grid { grid-template-columns:1fr; }
 .home-room-photo { padding:12px 12px 0; }
 .home-room-photo>span { font-size:9px; min-height:48px; gap:8px; }
 .home-studio h2 { font-size:55px; }
 .home-directory a { grid-template-columns:1fr 30px; gap:8px; padding:22px 0; }
 .home-directory a>span { grid-column:1 / -1; }
 .home-directory h2 { font-size:32px; }
 .footer-signoff { gap:25px; }
 .footer-bottom { display:block; margin-top:30px; }
 .footer-bottom .footer-links { gap:0 20px; margin:15px 0; }
 .footer-bottom small { display:block; margin-top:15px; }
 .remote-cover { padding:0 24px 35px; }
 .remote-cover img { height:290px; }
 .file-guide { padding:55px 24px; }
 .file-guide-grid { grid-template-columns:1fr; gap:24px; }
 .event-disclosure>details>summary { font-size:15px; }
 .page-contact #contact { padding-top:36px; }
}
@media(prefers-reduced-motion:reduce) { .home-room-photo img,.home-directory b { transition:none; } }
