/* Shared first-screen contract. Content reflows; no viewport-height clipping. */
.cb-tophead-title,.cb-entrylist-header{font-size:clamp(36px,4.6vw,64px);line-height:1.1}
.cb-tophead-title h1,.cb-tophead-title h2,.cb-entrylist-header h1{font-size:inherit;line-height:inherit;overflow-wrap:break-word}
html body .cb-about-hero h1,html body .sv-hero h1,html body .inv-hero h1{font-size:clamp(38px,4.6vw,64px);line-height:1.08;letter-spacing:-.05em}
html body .contact-opening h1,html body .mobile-studio .ms-hero h1{font-size:clamp(36px,4vw,56px);line-height:1.1}
.editorial-article:not(.cb-journal) h1,.editorial-intro h1{font-size:clamp(32px,3.7vw,50px);line-height:1.14}
.cb-about-hero{padding-top:118px}
.cb-about-hero__copy{padding-bottom:40px}
.cb-about-hero h1{margin:20px 0 26px}
.cb-about-lead{font-size:20px!important;line-height:1.5!important}
html body .sv-hero{padding-top:116px}
html body .sv-hero h1{margin:24px 0 28px}
html body .inv-hero{padding-top:116px}
.editorial-article:not(.cb-journal){padding-top:112px}
.editorial-intro{padding-top:112px}
.cb-tophead-title,.cb-tophead-header,.cb-entrylist-header,.cb-about-hero__copy,.ms-hero-copy,.contact-opening__left{min-width:0;max-width:100%}
.cb-tophead-title h1,.cb-tophead-title h2,.cb-about-hero h1,.sv-hero h1,.inv-hero h1,.ms-hero h1,.contact-opening h1{height:auto;max-height:none;overflow-wrap:break-word}
/* Keep the full original cover in every blog placement, including hover. */
.codebro-blog .cb-entry-thumbnail,#blog .cb-entry-thumbnail{border-radius:4px;aspect-ratio:16/9;height:auto!important;padding:0!important}
.codebro-blog .cb-entry-thumbnail picture,#blog .cb-entry-thumbnail picture{display:block;width:100%;height:auto}
.codebro-blog .cb-entry-thumbnail img,#blog .cb-entry-thumbnail img,.jr-related img{height:auto!important;aspect-ratio:16/9;object-fit:contain!important;transform:none!important}
@media(max-width:900px){
 .cb-about-hero__grid{grid-template-columns:minmax(0,1fr) minmax(0,.7fr);gap:32px}
}
@media(max-width:767px){
 .cb-tophead-title,.cb-entrylist-header{font-size:clamp(30px,8.8vw,42px)}
 html body .cb-about-hero h1,html body .sv-hero h1,html body .inv-hero h1,html body .contact-opening h1,html body .mobile-studio .ms-hero h1{font-size:clamp(32px,8.8vw,42px);line-height:1.13}
 .editorial-article:not(.cb-journal) h1,.editorial-intro h1{font-size:clamp(28px,7.8vw,36px);line-height:1.15}
 html body .cb-about-hero,html body .sv-hero,html body .inv-hero{padding-top:100px}
 .cb-about-hero__copy{padding-bottom:0}
 .cb-about-lead{font-size:18px!important}
 .editorial-article:not(.cb-journal),.editorial-intro{padding-top:100px}
}
