/* AHD course poster — one branded "product card" per course/bundle/assessment.
   Used on /shop and on each product page. Markup:
   <figure class="ahd-poster [ahd-poster--wide]">
     <img class="ahd-poster-photo" …>  <img class="ahd-poster-logo" …>
     <span class="ahd-poster-badge">24 LESSONS</span>
     <figcaption><span class="ahd-poster-kicker">…</span><b class="ahd-poster-name">…</b>
       <span class="ahd-poster-line">…</span></figcaption>
   </figure> */
.ahd-poster{position:relative;margin:0;aspect-ratio:4/5;overflow:hidden;background:#121110;color:#fff;
  border-radius:14px;isolation:isolate;box-shadow:0 14px 34px rgba(18,18,18,.22);
  border-bottom:6px solid #9e1b32}
.ahd-poster--wide{aspect-ratio:16/11;border-radius:0;box-shadow:none}
.ahd-poster-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2}
.ahd-poster::before{content:"";position:absolute;inset:0;z-index:-1;
  background:linear-gradient(180deg,rgba(12,10,8,.55) 0%,rgba(12,10,8,.05) 28%,rgba(12,10,8,.15) 48%,rgba(12,10,8,.92) 80%,rgba(12,10,8,.97) 100%)}
.ahd-poster::after{content:"";position:absolute;inset:8px;border:1px solid rgba(201,174,126,.55);border-radius:9px;pointer-events:none}
.ahd-poster--wide::after{border-radius:4px}
.ahd-poster-logo{position:absolute;top:16px;left:16px;width:30%;max-width:118px;height:auto;
  filter:drop-shadow(0 4px 10px rgba(0,0,0,.55))}
.ahd-poster-badge{position:absolute;top:18px;right:18px;background:#9e1b32;color:#fff;font:900 10px/1 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.14em;padding:7px 9px;border-radius:999px;text-transform:uppercase;box-shadow:0 4px 12px rgba(0,0,0,.35)}
.ahd-poster figcaption{position:absolute;left:18px;right:18px;bottom:18px}
.ahd-poster-kicker{display:block;font:900 10px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;letter-spacing:.2em;color:#c9ae7e;text-transform:uppercase}
.ahd-poster b.ahd-poster-name{display:block;margin:6px 0 0;font-family:Anton,Impact,"Arial Narrow Bold",sans-serif;font-weight:400;
  font-size:clamp(20px,10.5cqi,40px);line-height:.98;letter-spacing:.01em;text-transform:uppercase;color:#fff;
  text-wrap:balance;text-shadow:0 2px 14px rgba(0,0,0,.6)}
.ahd-poster{container-type:inline-size}
.ahd-poster--wide b.ahd-poster-name{font-size:clamp(24px,8.2cqi,36px)}
.ahd-poster-line{display:flex;align-items:center;gap:8px;margin-top:10px;font:800 11px/1.2 system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.06em;color:#e3d3b2}
.ahd-poster-line::before{content:"";flex:0 0 26px;height:3px;background:#9e1b32;border-radius:2px}

/* Shop cards: poster sits flush on top of the card. */
.train-card .ahd-poster{border-bottom-width:5px}
/* Product pages: poster leads the buy box. */
.cp-price.has-poster .cp-poster{width:100%;max-width:300px;margin:0 auto}
@media (min-width:760px){
  .cp-price.has-poster{grid-template-columns:270px 1fr!important;column-gap:32px;align-items:center}
  .cp-price.has-poster .cp-poster{grid-row:1 / span 3;max-width:none}
  .cp-price.has-poster>:not(.cp-poster){grid-column:2}
}
.ahd-poster-logo--wide{width:42%;max-width:150px}
/* Inside the /swing-analysis option card */
.cp-poster-inline{margin:4px 0 12px!important;max-width:260px!important;aspect-ratio:4/5}
