/* CARE360 v0.3.8 — Mobile/card containment and collision safeguards.
 * Fixes #23 and #24. The original logo files and their aspect ratios are not modified.
 * Only the card containers and decorative pseudo-elements change. */

/* Partner logos: image dimensions MUST resolve against a fixed, bounded visual box.
 * A percentage max-height against a grid auto-row was the root of unbounded intrinsic images. */
.site main .care360-partners-card{min-width:0;box-sizing:border-box;align-items:flex-start}
.site main .care360-partners-card>div{min-width:0;max-width:100%;overflow-wrap:break-word;position:relative;z-index:1}
.site main .care360-partners-card-logo{box-sizing:border-box;flex:0 0 auto;min-width:0;overflow:hidden!important;position:relative;isolation:isolate;align-items:center;justify-content:center}
.site main .care360-partners-card-logo img{
 display:block!important;position:static!important;max-width:100%!important;
 max-height:72px!important;width:auto!important;height:auto!important;
 object-fit:contain!important;transform:none!important;flex:none;min-width:0;
}
@media(max-width:760px){
 .site main .care360-partners-card{display:flex!important;flex-direction:column!important;gap:18px!important;align-items:stretch!important;padding:clamp(18px,5vw,25px)!important}
 .site main .care360-partners-card-logo{width:100%!important;max-width:100%!important;height:132px!important;max-height:132px!important;min-height:132px!important;padding:14px!important;display:flex!important}
 .site main .care360-partners-card-logo img{max-width:100%!important;max-height:102px!important;width:auto!important;height:auto!important;object-fit:contain!important}
 .site main .care360-partners-card h3{overflow-wrap:break-word;font-size:clamp(21px,5vw,27px)}
 .site main .care360-partners-card p{overflow-wrap:break-word}
}
/* Home: constrain only the exact mobile content rows. No global overflow:hidden
   masking; flex items must be allowed to shrink within their available space. */
@media(max-width:760px){
 body.home .site main .hero .wrap{box-sizing:border-box!important;max-width:100%!important;width:calc(100% - 32px)!important;min-width:0!important;margin-inline:auto!important;display:flex!important;flex-direction:column-reverse!important;gap:0!important;padding:0 0 45px!important}
 body.home .site main .hero .reveal{box-sizing:border-box!important;min-width:0!important;width:100%!important;max-width:100%!important;flex:0 1 auto!important;padding:24px 0 20px!important;margin:0!important}
 body.home .site main .hero :is(h1,p,.eyebrow,.hero-actions){box-sizing:border-box;min-width:0;max-width:100%;overflow-wrap:normal}
 body.home .site main .hero h1{font-size:clamp(32px,8vw,47px)!important;line-height:1.12!important;letter-spacing:-.045em!important;overflow-wrap:break-word}
 body.home .site main .hero-actions{display:grid!important;grid-template-columns:minmax(0,1fr)!important;gap:10px!important;min-width:0!important;width:100%!important}
 body.home .site main .hero-actions>a.btn{display:flex!important;box-sizing:border-box!important;max-width:100%!important;width:100%!important;min-width:0!important;min-height:54px;padding:13px 16px!important;align-items:center!important;justify-content:space-between!important;white-space:normal!important;overflow-wrap:break-word!important}
 body.home .site main .hero-actions>a.btn>span{position:static!important;flex:none!important;margin-left:auto!important;line-height:1.1!important}
 body.home .site main .hero .hero-visual.care360-photo-hero{width:100%!important;max-width:100%!important;min-width:0!important}
}
/* Decorative rings are decorative, not allowed to overlap any content. */
body.home .site main .skill:before,
body.home .site main .skill:after{content:none!important;display:none!important}
body.home .site main .skill{isolation:isolate;min-width:0}
body.home .site main .skill :is(.glyph,h3,p){position:relative;z-index:1}
/* Text remains readable on constrained widths and aligns inside boundaries. */
@media(max-width:480px){
 body.home .site main .bar .line{gap:9px;min-width:0}
 body.home .site main .bar .line span{min-width:0;overflow-wrap:break-word}
 body.page .site main .care360-news-tabs{max-width:100%;min-width:0}
 body.page .site main .care360-news-tabs a{min-width:0}
}
/* Avoid compressed landscape/mobile cards in the Partners two-column step. */
@media(min-width:761px) and (max-width:1200px){
 .site main .care360-partners-card{gap:12px}
 .site main .care360-partners-card-logo{width:84px!important;min-width:84px!important;max-width:84px!important;height:90px!important;min-height:90px!important}
 .site main .care360-partners-card-logo img{max-height:62px!important}
}
/* Keep the genuine footer consortium logos visually contained without cropping. */
.site footer .care360-partner-strip img{object-fit:contain;max-width:100%;height:auto}

/* Semantic footer headings (H2 instead of H4) without a visual redesign. */
.site footer .care360-footer-heading{color:#fff;font-size:15px;line-height:1.4;font-weight:800;margin:0 0 10px;font-family:var(--f-body);letter-spacing:.06em;text-transform:uppercase}
