/* Image framing audit: keep complete scenes and stable intrinsic proportions. */
body.asas-home .topic-grid>.topic-card .topic-art{height:auto;aspect-ratio:3/2;object-fit:contain;background:var(--sky);border-radius:12px}
body.guide-scan .article-body .article-hero{height:auto;max-height:320px;aspect-ratio:3/2;object-fit:contain;background:var(--sky)}
body.asas-home .scenario-image img{object-position:50% 35%}
.narrative-article .editorial-figure img{height:auto;aspect-ratio:3/2;object-fit:contain;background:var(--sky)}
.editorial-photo img{object-position:50% 35%}
body.asas-home .editorial-card>a{grid-template-columns:1fr 1.05fr}
body.asas-home .editorial-card .editorial-photo{height:100%;aspect-ratio:auto;min-height:0;background:var(--sky)}
body.asas-home .editorial-card .editorial-photo img{width:100%;height:100%;object-fit:contain;background:var(--sky)}
.editorial-grid .editorial-photo{height:auto!important;aspect-ratio:3/2}
.editorial-grid .editorial-photo img{object-fit:contain;background:var(--sky)}
@media(max-width:750px){body.guide-scan .article-body .article-hero{max-height:230px}body.asas-home .scenario-image img{object-position:50% 30%}}
@media(prefers-reduced-motion:no-preference){body.asas-home .topic-card:hover .topic-art{scale:1}}

@media(max-width:750px){body.asas-home .editorial-card>a{grid-template-columns:1fr}body.asas-home .editorial-card .editorial-photo{height:auto;aspect-ratio:3/2;min-height:0}}

/* These reviewed story illustrations already carry their own illustration label. */
.editorial-photo:has(img[src$="ward-calls-illustration.webp"])>span,.editorial-photo:has(img[src$="school-bus-illustration.webp"])>span,.editorial-photo:has(img[src$="threads-commitment.webp"])>span,.editorial-photo:has(img[src$="threads-hospital-folder.webp"])>span,.editorial-photo:has(img[src$="threads-phone-envelope.webp"])>span,.editorial-photo:has(img[src$="asas-story-hospital-reception.webp"])>span,.editorial-photo:has(img[src$="asas-story-surrender-desk.webp"])>span,.editorial-photo:has(img[src$="asas-story-couple-laptop.webp"])>span,.editorial-photo:has(img[src$="asas-story-bank-woman.webp"])>span,.editorial-photo:has(img[src$="asas-story-senior-paperwork.webp"])>span,.editorial-photo:has(img[src$="asas-story-cafe-questions.webp"])>span{display:none}

/* Large illustrations dissolve into their actual surface; text stays fully opaque. */
body.asas-home{--home-gap:40px}
body.asas-home .hero{padding-top:18px}
body.asas-home .hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.12fr);gap:20px;align-items:center}
body.asas-home .hero-copy{padding-bottom:16px}
body.asas-home .hero-copy>.eyebrow{margin-bottom:12px}
body.asas-home .hero-copy h1{margin-bottom:16px}
body.asas-home .hero .lead{margin-bottom:14px;line-height:1.6}
body.asas-home .hero-needs{margin:14px 0 8px}
body.asas-home .hero-need-context{min-height:0;margin:8px 0 12px}
body.asas-home .hero-stage{padding:0;align-self:center}
body.asas-home .hero-art{height:clamp(480px,47vw,600px);min-height:0;background:transparent;border-radius:0;overflow:hidden;isolation:isolate}
body.asas-home .hero-art>img{object-fit:cover;object-position:center 40%}
body.asas-home .hero-art::after{content:'';position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,var(--sky),transparent 18%,transparent 94%,var(--sky)),linear-gradient(0deg,var(--sky) 3%,transparent 38%),linear-gradient(180deg,var(--sky),transparent 12%);z-index:1}
body.asas-home .hero .photo-caption{z-index:2;left:24px;right:16px;bottom:6px;padding:22px 0 8px;background:none;backdrop-filter:none;border:0;border-radius:0;box-shadow:none}
body.asas-home .hero .photo-caption p{font-size:20px!important;line-height:1.4}
body.asas-home .hero-pathways{padding-block:12px}
body.asas-home .section-heading{margin-bottom:20px;gap:24px}
body.asas-home .benefit-intro{margin:16px 0;padding:12px 0;gap:20px}
body.asas-home .benefit-intro p{margin-top:4px}
body.asas-home .product-count{margin:10px 0 0}
.product-carousel-controls{margin:4px 0 8px}
.product-section .product-grid .product-photo,.guide-products .product-grid .product-photo{position:relative;display:block;padding:0;height:200px;background:var(--white);overflow:hidden}
.product-section .product-grid .product-photo img,.guide-products .product-grid .product-photo img{width:100%;height:100%;object-fit:contain;object-position:center;background:var(--white);border-radius:0;mask-image:linear-gradient(to bottom,#000 65%,transparent 100%)}
.product-photo>span{position:absolute;left:18px;right:18px;bottom:4px;z-index:1;color:var(--accent);font-size:13px;background:var(--white);width:fit-content;padding:2px 6px;border-radius:4px}
.product-section .product-grid .product-card-body,.guide-products .product-grid .product-card-body{padding-top:10px}
body:not(.asas-home) .page-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:24px;padding-block:20px;margin-bottom:16px}
body:not(.asas-home) .page-hero .article-hero{height:auto;aspect-ratio:3/2;border-radius:0;object-fit:contain;background:transparent;mask-image:linear-gradient(to bottom,#000 70%,transparent 100%)}
.quote-visual img{height:220px;border-radius:0;mask-image:linear-gradient(to bottom,#000 72%,transparent 100%)}
/* Keep story illustrations and their embedded attribution intact. */
body.asas-home .editorial-copy{padding:24px}
body.asas-home .editorial-controls{margin-bottom:12px}
body.asas-home .planning-workspace{padding:24px}
body.asas-home .planning-choices{margin-bottom:20px}
body.asas-home .planning-intro{margin-bottom:16px;padding-bottom:12px}
body.asas-home .scenario-content{padding:24px}
body.asas-home .scenario-tabs{margin-bottom:18px}
body.asas-home .scenario-actions{margin-top:16px}
body.asas-home .faq-list summary{padding-block:14px}
@media(prefers-reduced-motion:no-preference){
 .product-carousel-controls button{transition:background-color .18s,border-color .18s,transform .18s}
 .product-carousel-controls button:active:not(:disabled){transform:scale(.94)}
 .product-expand>summary>span,.guide-detail>summary>span{transition:transform .24s cubic-bezier(.16,1,.3,1)}
}
@media(max-width:750px){
 body.asas-home{--home-gap:28px}
 body.asas-home .hero{padding-top:20px}
 body.asas-home .hero-grid{grid-template-columns:1fr;gap:12px}
 body.asas-home .hero-copy{padding:0}
 body.asas-home .hero-stage{margin-inline:-12px}
 body.asas-home .hero-art{height:340px}
 body.asas-home .hero-art::after{background:linear-gradient(90deg,var(--sky),transparent 10%,transparent 90%,var(--sky)),linear-gradient(0deg,var(--sky) 2%,transparent 40%),linear-gradient(180deg,var(--sky),transparent 10%)}
 body.asas-home .hero .photo-caption{left:20px;right:20px;bottom:0;padding-bottom:8px}
 body.asas-home .hero .photo-caption p{font-size:18px!important}
 body.asas-home .hero-pathways a{padding-block:8px}
 body.asas-home .section-heading{margin-bottom:16px}
 body.asas-home .benefit-intro{gap:10px;margin-block:12px}
 .product-section .product-grid .product-photo,.guide-products .product-grid .product-photo{height:180px}
 body:not(.asas-home) .page-hero{grid-template-columns:1fr;gap:12px;padding-block:16px;margin-bottom:12px}
 body:not(.asas-home) .page-hero .article-hero{height:auto;aspect-ratio:3/2}
 body.asas-home .planning-workspace{padding:20px 16px}
 body.asas-home .scenario-content{padding:22px 18px}
}
@supports(mask-composite:intersect){
 .product-section .product-grid .product-photo img,.guide-products .product-grid .product-photo img{mask-image:linear-gradient(to bottom,#000 65%,transparent 100%),linear-gradient(to right,transparent,#000 12%,#000 88%,transparent);mask-composite:intersect}
}
@media(max-width:750px){
 .product-carousel-controls{display:grid;grid-template-columns:minmax(0,1fr) 46px 46px;gap:8px;margin:8px 0}
 .product-carousel-controls[hidden]{display:none}
 .product-carousel-hint{grid-column:1/-1;width:auto;margin:0}
 .product-carousel-position{grid-column:1;margin:0}
}

@supports(mask-composite:intersect){body:not(.asas-home) .page-hero .article-hero{mask-image:linear-gradient(to bottom,#000 65%,transparent),linear-gradient(to right,transparent,#000 8%,#000 92%,transparent);mask-composite:intersect}}
