/* Readable supporting text across the public site and lobby preview. */
body{--copy-size:20px;--support-size:17px;--label-size:15px}
:is(.gallery-room,#line-closing,footer) p,
#room-noel #about p,#room-noel .creed>div>span:not(.n),
#room-studio .studio-index p,#room-studio .studio-panel p,
#line .line-benefit p,.closing-benefit-copy,.sec-head p,
.strip .v,.strip .v small,.step p,.sys p,.tcard p,.tcat-note,
.roster .v,.roster .v small,.facts .v,.works-note{
 font-size:var(--copy-size)!important;line-height:1.85!important;
 color:#e2dbe8;opacity:1;letter-spacing:.015em;
}
#room-noel .creed>div{align-items:start;gap:18px}
#room-noel .creed>div>span:not(.n){min-width:0}
#room-noel .creed>div{padding-top:22px;padding-bottom:22px}
:is(.preview-caption,.approach-caption,.line-link-caption,.tool-benefit),
#line .line-link-caption,.audience-stat>span,.facts,
.process-visual figcaption span,.line-list li,.tlist li,
#filmstrip .strip-heading p,.work-intent,.lb-caption{
 font-size:var(--support-size)!important;line-height:1.8!important;opacity:1;color:#d9d0e1;
}
#room-films .strip-card span{font-size:var(--support-size)!important;line-height:1.6!important}
.card h3,.tcard h4{font-size:22px!important;line-height:1.6!important}
:is(.mono,.chapter-kicker,.room-brand,.card .badge,.card .dur,.card .tag,.tcard .tk,.tcard .st,.facts .k,.strip .k,.roster .k,.step .idx,.tcat-h .d,.visual-note),
#filmstrip .strip-heading .mono{font-size:var(--label-size)!important;letter-spacing:.08em;line-height:1.6}
:is(.btn,.chip,.room-action,.chapter-details summary,.all-films,.studio-tabs button,.image-expand),
#filmstrip #stripPause,#filmstrip .all-films,#readStory strong,#closeStory,
footer .footer-links a,.profile-socials a{font-size:var(--support-size)!important;line-height:1.6;min-height:44px}
.gallery-directory a,header nav a{font-size:16px!important;letter-spacing:.03em}
#catalogDisclosure .archive-label small{font-size:var(--support-size)!important}
.line-receive-flow,#line .line-receive-flow{font-size:var(--support-size)!important}
.facts>div,.roster>div{grid-template-columns:minmax(105px,.28fr) 1fr;gap:16px}
.facts .v,.roster .v,.tcard{min-width:0;overflow-wrap:anywhere}
.work-copy{min-width:0}.works-note{flex-wrap:wrap}
.card .meta{align-items:start;flex-wrap:wrap;gap:12px}
.studio-tabs button{height:auto;white-space:normal;text-align:left}
.sec-head p{max-width:600px}
@media(max-width:700px){
 body{--copy-size:18px;--support-size:16px;--label-size:14px}
 .card h3,.tcard h4{font-size:20px!important}
 .gallery-directory>div{gap:8px;overflow-x:auto}
 .gallery-directory a{font-size:16px!important;flex-shrink:0}
 .gallery-directory small{display:none}
 .strip-heading{flex-wrap:wrap}
 #filmstrip #stripPause{margin-left:auto}
 .facts>div,.roster>div{grid-template-columns:1fr;gap:4px}
 .tcat-h{flex-wrap:wrap;gap:10px}.tcat-h .d{margin-left:0;text-align:left}
 .line-receive-flow{flex-wrap:wrap}
 .room-action{white-space:normal;width:max-content;max-width:90%;text-align:center}
}
#about .facts .fv{font-size:var(--copy-size)!important;line-height:1.85;overflow-wrap:anywhere}
#about .facts .fk{font-size:var(--label-size)!important;letter-spacing:.08em}
#siteEntry p{font-size:var(--copy-size)!important}
#siteEntry small{font-size:var(--support-size)!important}
#siteEnter,#hdr button{font-size:var(--support-size)!important}
@media(max-width:700px){.studio-tabs{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:8px 16px!important}.studio-tabs button{width:100%;padding:12px 0!important;word-break:keep-all;overflow-wrap:normal}.studio-tabs small{display:none}}
