/* Generated from the Modern core product value pattern. */
/* Modern 0.2.0 product value pattern. Palette and type come from core tokens. */
:where(.academy) .product-includes { margin-block: 16px; padding: 18px 20px; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface-card); }
:where(.academy) .product-includes h3, .product-includes h4 { font: var(--text-body); font-weight: 500; margin: 0 0 12px; letter-spacing: normal; }
:where(.academy) .product-includes ul { margin: 0; padding-left: 20px; display: grid; gap: 10px; color: var(--text-secondary); }
:where(.academy) .product-includes li::marker { color: var(--signal-text); }
:where(.academy) .product-includes p { font: var(--text-small); color: var(--text-secondary); margin: 16px 0 0; }
:where(.academy) .product-resource-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; }
:where(.academy) .product-resource { min-width: 0; border: 1px solid var(--border); border-radius: var(--radius); background: var(--surface-card); padding: 28px; }
:where(.academy) .product-resource .meta { display: inline-block; padding: 6px 10px; border-radius: var(--radius-sm); background: var(--product-violet); margin-bottom: 24px; color: var(--text-primary); }
:where(.academy) .product-resource h3 { margin: 0 0 16px; }
:where(.academy) .product-resource p { color: var(--text-secondary); margin: 0; }
:where(.academy) .product-resource ul { padding-left: 20px; display: grid; gap: 8px; margin-bottom: 0; }
body:has(.product-purchase) { padding-bottom: calc(132px + env(safe-area-inset-bottom,0px)); }
:where(.academy) .product-purchase { position: fixed; z-index: 20; bottom: calc(12px + env(safe-area-inset-bottom,0px)); left: 20px; right: 20px; max-width: 1184px; margin-inline: auto; display: flex; align-items: center; justify-content: space-between; gap: 20px; padding: 16px 20px; border: 1px solid var(--border-strong); border-radius: var(--radius-lg); background: var(--surface-card); color: var(--text-primary); box-shadow: 0 8px 32px rgb(9 9 11 / .12); }
:where(.academy) .product-purchase[hidden] { display: none; }
:where(.academy) .product-purchase__copy { min-width: 0; }
:where(.academy) .product-purchase__name { display: block; font-weight: 500; overflow-wrap: anywhere; }
:where(.academy) .product-purchase__terms { display: block; color: var(--text-secondary); font: var(--text-small); margin-top: 4px; }
:where(.academy) .product-purchase__action { flex: none; display: inline-flex; align-items: center; justify-content: center; min-height: 48px; padding: 12px 24px; border-radius: var(--radius-pill); background: var(--signal-text); color: var(--text-on-chrome); text-decoration: none; font-weight: 500; }
:where(.academy) .product-purchase__action:hover { background: var(--text-primary); }
body:has(dialog[open], [aria-modal="true"]:not([hidden])) .product-purchase { visibility: hidden; }
@media(max-width:767px) { .product-resource-grid { grid-template-columns: minmax(0,1fr); } .product-resource { padding: 24px; } }
@media(max-width:479px) { .product-purchase { left: 12px; right: 12px; gap: 12px; padding: 14px; border-radius: var(--radius); } .product-purchase__name { font: var(--text-small); font-weight: 500; } .product-purchase__action { padding-inline: 16px; font: var(--text-small); font-weight: 500; max-width: 50%; text-align: center; } }
@media print { .product-purchase { display: none; } body:has(.product-purchase) { padding-bottom: 0; } }

.academy .academy-product-hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:56px;align-items:center}.academy .academy-product-card-art{margin:-32px -32px 24px;align-self:stretch}.academy .academy-product-card-art .product-stage{border-radius:0;min-height:408px}.academy .academy-track-card:has(.academy-product-card-art){overflow:hidden}.academy .academy-track-card:has(.academy-product-card-art) .product-includes{margin-top:20px}.academy .academy-product-hero .product-stage{margin:0}.academy .academy-track-card .product-includes li{font-size:14px;line-height:20px}.academy .academy-track-card .product-includes h4{font-size:16px;line-height:22px}
@media(max-width:991px){.academy .academy-product-hero-grid{gap:32px}.academy .academy-product-card-art{margin:-24px -24px 24px}}@media(max-width:700px){.academy .academy-product-hero-grid{grid-template-columns:minmax(0,1fr)}}

.academy .academy-product-hero .product-caption{color:var(--text-secondary-on-chrome)}
