/* Original listing artwork stays uncropped. No synthetic title replaces a real cover. */
.interior-page .product-image-cover{aspect-ratio:3/2;padding:0;display:grid;place-items:center;background:#efe5da;border-radius:8px;text-decoration:none;isolation:isolate}
.interior-page .product-image-cover::after{display:none}
.product-image-cover>img{width:100%;height:100%;object-fit:contain;transform:none;transition:transform .6s var(--ease);display:block}
.product-image-cover:focus-visible{outline-offset:-5px;outline-color:#f9db90}
a.product-image-cover:hover>img{transform:scale(1.025)}
.product-image-cover.cover-maths{background:#071332}.product-image-cover.cover-science{background:#12223b}.product-image-cover.cover-social{background:#19151c}.product-image-cover.cover-english{background:#070c1b}
.interior-page .concept-cover{position:relative;background:#efe3d3}
.concept-label{position:absolute;left:12px;bottom:12px;padding:6px 9px;border-radius:20px;background:#fcf5eced;color:#554953;font-size:8px;letter-spacing:.07em;line-height:1.4;border:1px solid #c9b5ac7a}
.product-hero-media{position:relative;margin:0;min-width:0;width:100%;transform:perspective(1100px) rotateY(-5deg) rotateZ(1deg)}
.product-hero-media>img{width:100%;height:auto;object-fit:contain;border-radius:12px;border:1px solid #8f718760;box-shadow:5px 24px 40px #56405c2b}
.product-hero-media figcaption{font-size:9px;color:#625366;text-align:center;line-height:1.7;margin-top:16px}
@media(min-width:1101px){.interior-page:has(.product-hero-media) .hero-inner{grid-template-columns:1fr 1.12fr;gap:7%}}
@media(max-width:760px){.product-hero-media{max-width:600px;margin:22px auto 0;transform:none}.product-hero-media>img{border-radius:9px}.product-hero-media figcaption{font-size:9px}.concept-label{font-size:8px}}
@media(prefers-reduced-motion:reduce){a.product-image-cover:hover>img{transform:none}.product-image-cover>img{transition:none}}

/* A visible front-row response for mouse, keyboard focus and touch selection. */
.interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card{position:relative;overflow:visible;isolation:isolate;z-index:0;transform-origin:center center}
.interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;z-index:-1;opacity:0;box-shadow:0 0 0 2px #b97790,0 7px 0 #d5afbe,0 27px 38px -12px #69415780;transition:opacity .25s ease}
.interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card:is(:hover,:focus-within,:active){z-index:5;border-color:#b97790}
.interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card:is(:hover,:focus-within,:active)::after{opacity:1}
@media(prefers-reduced-motion:no-preference){
  .interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card:is(:hover,:focus-within,:active):not(.will-enter){transform:perspective(1100px) translateY(-12px) rotateX(3deg) rotateY(-2deg) scale(1.035)}
  .interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card:is(:hover,:focus-within,:active) .product-image-cover{transform:perspective(700px) translateY(-3px) rotateY(-5deg) rotateX(3deg) scale(1.025)}
}
@media(max-width:760px) and (prefers-reduced-motion:no-preference){
  .interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card:is(:hover,:focus-within,:active):not(.will-enter){transform:translateY(-6px) scale(1.015)}
}
@media(prefers-reduced-motion:reduce){
  .interior-page:is(.atelier-products,.atelier-cbse-x) .all-subjects>.card::after{transition:none}
}
