/* Desktop layout repair: explicit containers prevent historical grid rules leaking in. */
body[data-concept=flow] .intro-copy h2,
body[data-concept=flow] .gallery-heading h2,
body[data-concept=flow] .metric strong,
body[data-concept=flow] .metric.primary strong,
body[data-concept=flow] .metric strong .count-value{font-weight:800}
body[data-concept=flow] .metric{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:18px;padding:40px 8%;container-type:inline-size}
body[data-concept=flow] .metric.primary{padding:55px 6%}
body[data-concept=flow] .metric p{max-width:none;margin:0;font-size:18px}
body[data-concept=flow] .metric strong{display:flex;align-items:baseline;gap:8px;white-space:nowrap;max-width:100%;font-size:clamp(38px,20cqw,90px)}
body[data-concept=flow] .metric.primary strong{font-size:clamp(70px,23cqw,240px)}
body[data-concept=flow] .metric strong>span:not(.count-value){display:inline;flex:none;margin:0;font-size:18px;font-weight:600;line-height:1.3}
body[data-concept=flow] .metric strong>.count-value{display:inline;min-width:0}
body[data-concept=flow] .gallery-search .filters button[aria-pressed=true]{color:#fff}
body[data-concept=play] .story-bubble{min-width:0;max-width:100%;box-sizing:border-box}
body[data-concept=play] .story-bubble :is(h2,p){position:static;transform:none;max-width:100%;width:auto;word-break:keep-all;overflow-wrap:break-word}
body[data-concept=play] .story-bubble{border-radius:64px;padding:clamp(35px,4vw,65px)}
body[data-concept=play] .project-scene{display:block}
body[data-concept=flow] .contact-grid>div:first-child{grid-row:auto}
@media(min-width:761px){
body :is(p,button,input,a,label,small,.eyebrow,.results-meta,.location-number,.place-hint,.period,.footer-bottom){font-size:max(16px,1em)}
body .period{font-size:18px}
body .metric>p{font-size:18px}
body .review-tools :is(a,button){font-size:16px}
body .contact-grid :is(p,.eyebrow),body[data-concept=flow] .contact-grid p:not(.eyebrow){font-size:16px}
body .filters button,body[data-concept=flow] .gallery-search .filters button{font-size:16px}
body[data-concept=flow] .location-row p,body .place-card p,body .place-card small{font-size:16px}
body[data-concept=play] .story-bubble h2{font-size:clamp(32px,3.5vw,58px)}
body[data-concept=play] .story-bubble{width:64%;margin-right:0}
body[data-concept=play] .project-bubble{margin-left:0}
body[data-concept=play] .intro-person{width:32%;left:1%;z-index:2}
body[data-concept=play] .project-person{width:30%;right:1%;z-index:2}
}
@media(max-width:760px){
body[data-concept=flow] .metric{padding:28px 20px;gap:12px}
body[data-concept=flow] .metric.primary{padding:38px 20px}
body[data-concept=flow] .metric p{font-size:15px}
body[data-concept=flow] .metric strong{font-size:clamp(30px,22cqw,65px)}
body[data-concept=flow] .metric.primary strong{font-size:23cqw}
body[data-concept=flow] .metric strong>span:not(.count-value){font-size:13px}
body[data-concept=play] .story-bubble{border-radius:35px}
}
@media(min-width:761px){
body[data-concept=flow] .hero-copy-v4 .cta,body[data-concept=flow] .contact-grid .eyebrow{font-size:16px}
body[data-concept=flow] .period{font-size:18px}
}
@media(min-width:761px){
body[data-concept=play] .map-selection,body[data-concept=play] .place-info p,body[data-concept=play] .contact-grid .eyebrow{font-size:16px}
}
