/* Modern single-course page. */
.course-page-body { background: #fff; }
.course-page { color: var(--lb-navy); }
.course-hero-modern {
  padding: clamp(2.5rem, 6vw, 5.25rem) 0;
  background: radial-gradient(circle at 8% 18%, rgba(76, 175, 80, 0.15), transparent 23rem), linear-gradient(145deg, #f5faf6, #eef3f5);
}
.course-breadcrumb { display: flex; gap: .55rem; align-items: center; margin-bottom: 2rem; color: #687772; font-size: .86rem; }
.course-breadcrumb a { color: var(--lb-green-dark); font-weight: 700; text-decoration: none; }
.course-eyebrow, .course-section-kicker, .course-purchase-level {
  display: inline-flex; gap: .4rem; align-items: center; color: var(--lb-green-dark); font-size: .76rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase;
}
.course-eyebrow { padding: .45rem .7rem; background: rgba(76, 175, 80, .12); border-radius: 999px; }
.course-eyebrow .material-icons { font-size: 1rem; }
.course-hero-copy h1 { max-width: 48rem; margin: 1rem 0 0; color: var(--lb-navy); font-size: clamp(2.35rem, 5vw, 4.25rem); font-weight: 850; letter-spacing: -.045em; line-height: 1.04; }
.course-lead { max-width: 45rem; margin: 1.25rem 0 0; color: #53645e; font-size: clamp(1.05rem, 2vw, 1.28rem); line-height: 1.65; }
.course-primary-cta { box-shadow: 0 .7rem 1.5rem rgba(46, 125, 50, .2); }
.course-hero-benefits { display: flex; flex-wrap: wrap; gap: .75rem 1.25rem; padding: 0; margin: 1.7rem 0 0; color: #52615c; list-style: none; font-size: .9rem; font-weight: 700; }
.course-hero-benefits li { display: inline-flex; gap: .35rem; align-items: center; }
.course-hero-benefits .material-icons { color: var(--lb-green-dark); font-size: 1.15rem; }
.course-purchase-card { position: sticky; top: 6.5rem; padding: clamp(1.25rem, 3vw, 1.75rem); background: #fff; border: 1px solid rgba(38, 50, 56, .09); border-radius: 1.25rem; box-shadow: 0 1.4rem 3.4rem rgba(38, 50, 56, .16); }
.course-cover-wrap { display: grid; place-items: center; min-height: 13rem; margin: -.35rem -.35rem 1.25rem; padding: 1.15rem; background: linear-gradient(145deg, #edf6ef, #e2ece6); border-radius: .95rem; }
.course-cover-wrap img { width: min(100%, 14rem); border-radius: .55rem; box-shadow: 0 .9rem 1.8rem rgba(38, 50, 56, .2); }
.course-purchase-card h2 { margin: .45rem 0 .7rem; color: var(--lb-navy); font-size: 1.45rem; font-weight: 800; }
.course-price { display: flex; gap: .75rem; align-items: baseline; margin-bottom: 1rem; }
.course-price strong { color: var(--lb-green-dark); font-size: 2rem; }
.course-price span { color: #76837f; font-size: .88rem; }
.course-purchase-includes { display: grid; gap: .55rem; padding: 0; margin: 0 0 1rem; list-style: none; font-size: .91rem; }
.course-purchase-includes li { display: flex; gap: .45rem; align-items: center; }
.course-purchase-includes .material-icons { color: var(--lb-green-dark); font-size: 1.1rem; }
.course-ecwid-buy { min-height: 3rem; }
.course-payment-note, .course-delivery-note { margin: .8rem 0 0; color: #67756f; font-size: .78rem; line-height: 1.45; }
.course-payment-note { display: flex; gap: .3rem; align-items: center; }
.course-payment-note .material-icons { font-size: 1rem; }
.course-trust-strip { color: #fff; background: var(--lb-navy); }
.course-trust-strip .row > div { display: grid; place-items: center; padding: 1.3rem .8rem; text-align: center; }
.course-trust-strip .row > div + div { border-left: 1px solid rgba(255, 255, 255, .12); }
.course-trust-strip strong { font-size: 1.25rem; }
.course-trust-strip span { color: rgba(255, 255, 255, .7); font-size: .78rem; }
.course-method-card { position: relative; padding: 1.6rem; background: #fff; border: 1px solid rgba(38, 50, 56, .09); border-radius: 1rem; box-shadow: 0 .75rem 1.8rem rgba(38, 50, 56, .08); }
.course-method-card > span { position: absolute; top: 1rem; right: 1rem; color: rgba(38, 50, 56, .22); font-size: .8rem; font-weight: 900; }
.course-method-card > .material-icons { display: grid; place-items: center; width: 3rem; height: 3rem; margin-bottom: 1rem; color: #fff; background: var(--lb-green-dark); border-radius: .75rem; }
.course-method-card h3 { color: var(--lb-navy); font-size: 1.12rem; font-weight: 800; }
.course-method-card p { margin-bottom: 0; color: #5d6d67; line-height: 1.65; }
.course-included-visual { position: relative; min-height: 18rem; overflow: hidden; background: #dcefe1; border-radius: 1.25rem; box-shadow: 0 .9rem 2rem rgba(38, 50, 56, .12); }
.course-included-photo { display: block; width: 100%; height: 18rem; object-fit: cover; object-position: center; }
.course-included-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; margin-top: 1.5rem; }
.course-included-grid > div { display: grid; grid-template-columns: auto 1fr; gap: .2rem .65rem; padding: 1rem; background: #fff; border: 1px solid rgba(38, 50, 56, .08); border-radius: .85rem; }
.course-included-grid .material-icons { grid-row: 1 / 3; color: var(--lb-green-dark); }
.course-included-grid strong { color: var(--lb-navy); font-size: .92rem; }
.course-included-grid span { color: #687772; font-size: .8rem; line-height: 1.45; }
.course-curriculum { display: grid; gap: 1.25rem; max-width: 64rem; margin: 0 auto; }
.course-curriculum-stage { overflow: hidden; background: #f8faf9; border: 1px solid rgba(38, 50, 56, .1); border-radius: 1.05rem; }
.course-stage-heading { display: grid; grid-template-columns: auto 1fr auto; gap: .35rem .8rem; align-items: center; padding: .85rem 1rem; color: #fff; background: var(--lb-navy); }
.course-stage-heading span { padding: .3rem .55rem; color: #173326; background: #a5d6a7; border-radius: 999px; font-size: .7rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.course-stage-heading h3 { margin: 0; color: #fff; font-size: 1.05rem; font-weight: 800; }
.course-stage-heading small { color: rgba(255, 255, 255, .7); font-size: .76rem; font-weight: 700; }
.course-unit-list { display: grid; }
.course-unit + .course-unit { border-top: 1px solid rgba(38, 50, 56, .09); }
.course-unit summary { display: grid; grid-template-columns: 4.5rem 1fr auto 1.2rem; gap: .65rem; align-items: center; padding: .8rem 1rem; color: var(--lb-navy); cursor: pointer; list-style: none; }
.course-unit summary::-webkit-details-marker { display: none; }
.course-unit summary::after { content: "+"; color: var(--lb-green-dark); font-size: 1.25rem; font-weight: 600; line-height: 1; text-align: center; }
.course-unit[open] summary::after { content: "−"; }
.course-unit summary:hover { background: rgba(76, 175, 80, .06); }
.course-unit-number { color: var(--lb-green-dark); font-size: .74rem; font-weight: 900; text-transform: uppercase; }
.course-unit summary strong { font-size: .92rem; }
.course-unit-range { color: #74817c; font-size: .75rem; font-weight: 700; }
.course-lesson-list { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: .45rem 1.5rem; padding: 0 1rem 1rem 6.15rem; margin: 0; color: #53645e; list-style-position: inside; font-size: .82rem; }
.course-lesson-list li::marker { color: var(--lb-green-dark); font-weight: 800; }
.course-lesson-sample-link { display: inline-flex; flex-wrap: wrap; gap: .35rem .45rem; align-items: center; max-width: calc(100% - 1.1rem); padding: .18rem .28rem; margin: -.18rem -.28rem; color: var(--lb-navy); border-radius: .4rem; font-weight: 750; text-decoration: none; }
.course-lesson-sample-link:hover, .course-lesson-sample-link:focus-visible { color: var(--lb-green-dark); background: rgba(76, 175, 80, .08); text-decoration: none; }
.course-lesson-sample-link:focus-visible { outline: 2px solid rgba(46, 125, 50, .26); outline-offset: 2px; }
.course-lesson-sample-badge { display: inline-flex; flex: 0 0 auto; gap: .1rem; align-items: center; padding: .18rem .38rem; color: #fff; background: var(--lb-green-dark); border-radius: 999px; font-size: .6rem; font-weight: 850; line-height: 1; text-transform: uppercase; }
.course-lesson-sample-badge .material-icons { font-size: .78rem; }
.course-free-preview-section { scroll-margin-top: 5rem; }
.course-preview-header { max-width: 47rem; margin: 0 auto 1.5rem; text-align: center; }
.course-preview-header p { margin: .65rem 0 0; color: #65736e; line-height: 1.65; }
.course-preview-list { display: grid; gap: .65rem; max-width: 58rem; margin: 0 auto; }
.course-preview-item { overflow: hidden; background: #fff; border: 1px solid rgba(38, 50, 56, .1); border-radius: .9rem; box-shadow: 0 .45rem 1.25rem rgba(38, 50, 56, .06); }
.course-preview-item[id] { scroll-margin-top: 6rem; }
.course-preview-item:target { border-color: rgba(46, 125, 50, .5); box-shadow: 0 .65rem 1.5rem rgba(46, 125, 50, .13); }
.course-preview-item summary { display: grid; grid-template-columns: 9.5rem 1fr auto 1.2rem; gap: .75rem; align-items: center; padding: .9rem 1rem; color: var(--lb-navy); cursor: pointer; list-style: none; }
.course-preview-item summary::-webkit-details-marker { display: none; }
.course-preview-item summary::after { content: "+"; color: var(--lb-green-dark); font-size: 1.25rem; line-height: 1; text-align: center; }
.course-preview-item[open] summary::after { content: "−"; }
.course-preview-item summary:hover { background: rgba(76, 175, 80, .06); }
.course-preview-position { display: flex; gap: .45rem; align-items: center; }
.course-preview-position > span { padding: .24rem .5rem; color: #173326; background: #dcefe1; border-radius: 999px; font-size: .68rem; font-weight: 900; letter-spacing: .04em; text-transform: uppercase; }
.course-preview-position small { color: #687772; font-size: .7rem; font-weight: 800; white-space: nowrap; }
.course-preview-item summary strong { font-size: .92rem; }
.course-preview-item summary .material-icons { color: #82908b; font-size: 1.2rem; }
.course-preview-player { padding: 0 1rem 1rem; border-top: 1px solid rgba(38, 50, 56, .08); }
.course-preview-player .spreaker-player { display: block; padding-top: 1rem; }
.course-self-hosted-player { display: grid; grid-template-columns: auto 1fr; gap: .7rem .85rem; align-items: center; margin-top: 1rem; padding: 1rem; background: linear-gradient(145deg, #f7faf8, #edf6ef); border: 1px solid rgba(46, 125, 50, .16); border-radius: .9rem; box-shadow: 0 .45rem 1.2rem rgba(38, 50, 56, .06); }
.course-self-hosted-player-icon { display: grid; place-items: center; width: 2.5rem; height: 2.5rem; color: #fff; background: var(--lb-green-dark); border-radius: 50%; font-size: 1.25rem; }
.course-self-hosted-player-copy { display: grid; gap: .1rem; }
.course-self-hosted-player-copy strong { color: var(--lb-navy); font-size: .88rem; }
.course-self-hosted-player-copy span { color: #65736e; font-size: .72rem; line-height: 1.4; }
.course-self-hosted-player audio { grid-column: 1 / -1; display: block; width: 100%; height: 2.5rem; }
.course-self-hosted-player audio.course-audio-enhanced { display: none; }
.course-audio-main-controls { grid-column: 1 / -1; display: grid; grid-template-columns: auto 1fr; gap: 1rem; align-items: center; padding: .75rem; background: #fff; border: 1px solid rgba(38, 50, 56, .08); border-radius: .75rem; }
.course-audio-main-controls[hidden] { display: none; }
.course-audio-play { display: grid; place-items: center; width: 3.75rem; height: 3.75rem; padding: 0; color: #fff; background: var(--lb-green-dark); border: 0; border-radius: 50%; box-shadow: 0 .55rem 1.15rem rgba(46, 125, 50, .25); cursor: pointer; transition: transform .16s ease, background-color .16s ease, box-shadow .16s ease; }
.course-audio-play:hover { background: #256c2a; box-shadow: 0 .7rem 1.35rem rgba(46, 125, 50, .3); transform: translateY(-1px); }
.course-audio-play:focus-visible { outline: 3px solid rgba(46, 125, 50, .25); outline-offset: 3px; }
.course-audio-play .material-icons { font-size: 2.15rem; }
.course-audio-progress-wrap { display: grid; grid-template-columns: 1fr auto; gap: .35rem .75rem; align-items: center; min-width: 0; }
.course-audio-progress-wrap input[type="range"] { width: 100%; margin: 0; accent-color: var(--lb-green-dark); cursor: pointer; }
.course-audio-progress-wrap span { color: #5f6f69; font-size: .7rem; font-variant-numeric: tabular-nums; white-space: nowrap; }
.course-audio-tools { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: .5rem; justify-content: flex-end; align-items: center; }
.course-audio-skip { display: inline-flex; gap: .3rem; align-items: center; padding: .38rem .6rem; color: var(--lb-navy); background: #fff; border: 1px solid rgba(38, 50, 56, .16); border-radius: .5rem; font: inherit; font-size: .72rem; font-weight: 750; cursor: pointer; }
.course-audio-skip:hover, .course-audio-skip:focus-visible { color: var(--lb-green-dark); background: #edf6ef; border-color: var(--lb-green-dark); }
.course-audio-skip .material-icons { font-size: 1.05rem; }
.course-audio-speed { display: inline-flex; gap: .4rem; align-items: center; margin: 0 0 0 .15rem; color: #53645e; font-size: .72rem; font-weight: 750; }
.course-audio-speed select { min-width: 4.5rem; padding: .38rem 1.5rem .38rem .55rem; color: var(--lb-navy); background-color: #fff; border: 1px solid rgba(38, 50, 56, .2); border-radius: .5rem; font: inherit; cursor: pointer; }
.course-audio-speed select:focus-visible { border-color: var(--lb-green-dark); outline: 2px solid rgba(46, 125, 50, .18); outline-offset: 1px; }
.course-preview-actions { display: flex; justify-content: flex-end; margin-top: .75rem; }
.course-preview-actions .btn { display: inline-flex; gap: .35rem; align-items: center; font-weight: 750; }
.course-preview-actions .material-icons { font-size: 1rem; }
.course-final-cta { padding: clamp(2.5rem, 5vw, 4rem) 0; color: #fff; background: linear-gradient(135deg, var(--lb-navy), #34474e); }
.course-final-cta .container { display: flex; gap: 2rem; justify-content: space-between; align-items: center; }
.course-final-cta .course-section-kicker { color: #a5d6a7; }
.course-final-cta h2 { margin: .35rem 0; color: #fff; }
.course-final-cta p { margin: 0; color: rgba(255, 255, 255, .72); }
@media (max-width: 991.98px) { .course-purchase-card { position: static; max-width: 34rem; margin: 0 auto; } }
@media (max-width: 767.98px) {
  .course-trust-strip .row > div:nth-child(3) { border-left: 0; }
  .course-trust-strip .row > div:nth-child(n + 3) { border-top: 1px solid rgba(255, 255, 255, .12); }
  .course-included-grid { grid-template-columns: 1fr; }
  .course-lesson-list { padding-left: 1rem; }
  .course-final-cta .container { align-items: flex-start; flex-direction: column; }
  .course-self-hosted-player { grid-template-columns: auto 1fr; }
  .course-audio-tools { grid-column: 1 / -1; justify-content: flex-start; }
}
@media (max-width: 419.98px) {
  .course-audio-main-controls { grid-template-columns: 1fr; justify-items: center; }
  .course-audio-progress-wrap { width: 100%; }
  .course-audio-skip { flex: 1 1 calc(50% - .25rem); justify-content: center; }
  .course-audio-speed { width: 100%; justify-content: space-between; margin-left: 0; }
}
@media (max-width: 575.98px) {
  .course-hero-modern { padding-top: 1.75rem; }
  .course-hero-copy h1 { font-size: 2.35rem; }
  .course-hero-benefits { display: grid; grid-template-columns: 1fr; }
  .course-included-visual { min-height: 13rem; }
  .course-included-photo { height: 13rem; }
  .course-stage-heading { grid-template-columns: auto 1fr; }
  .course-stage-heading small { grid-column: 2; }
  .course-unit summary { grid-template-columns: 3.8rem 1fr 1rem; }
  .course-unit-range { display: none; }
  .course-lesson-list { grid-template-columns: 1fr; }
  .course-preview-item summary { grid-template-columns: 6.2rem 1fr 1rem; }
  .course-preview-item summary .material-icons { display: none; }
  .course-preview-position { align-items: flex-start; flex-direction: column; gap: .15rem; }
}

/* Shared Spanish multi-volume redesign. */
.course-modern-page { color: var(--lb-navy); }
.course-modern-hero { padding: clamp(2.5rem,6vw,5rem) 0; background: radial-gradient(circle at 8% 18%,rgba(76,175,80,.15),transparent 23rem),linear-gradient(145deg,#f5faf6,#eef3f5); }
.course-modern-hero h1 { max-width: 48rem; margin: 1rem 0; color: var(--lb-navy); font-size: clamp(2.35rem,5vw,4.1rem); font-weight: 850; letter-spacing: -.045em; line-height: 1.04; }
.course-kicker { display: inline-flex; color: var(--lb-green-dark); font-size: .76rem; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.course-modern-hero .lead { color: #53645e; line-height: 1.65; }
.course-hero-actions { display:flex; flex-wrap:wrap; gap:.75rem; margin-top:1.5rem; }
.course-trust-list { display:flex; flex-wrap:wrap; gap:.8rem 1.2rem; padding:0; margin:1.5rem 0 0; list-style:none; font-size:.9rem; font-weight:700; }
.course-trust-list li { display:inline-flex; gap:.35rem; align-items:center; }
.course-trust-list .material-icons { color:var(--lb-green-dark); font-size:1.15rem; }
.course-hero-cover { width:min(100%,17rem); border-radius:.7rem; box-shadow:0 1.2rem 2.7rem rgba(38,50,56,.22); }
.course-hero-price { display:flex; justify-content:center; gap:.5rem; align-items:baseline; margin-top:1rem; }
.course-hero-price strong { color:var(--lb-green-dark); font-size:2rem; }
.course-hero-price span { color:#687772; font-size:.82rem; }
.course-modern-section { padding:clamp(3rem,6vw,5rem) 0; }
.course-modern-section-soft { background:#f5f8f6; }
.course-section-heading { max-width:48rem; margin:0 auto 2rem; }
.course-section-heading h2 { margin:.4rem 0 .65rem; color:var(--lb-navy); font-weight:850; }
.course-section-heading p { color:#65736e; line-height:1.65; }
.course-product-card { position:relative; display:flex; flex-direction:column; padding:1.2rem; background:#fff; border:1px solid rgba(38,50,56,.1); border-radius:1.1rem; box-shadow:0 .8rem 2rem rgba(38,50,56,.09); }
.course-product-card-featured { border:2px solid var(--lb-green-dark); }
.course-product-badge { position:absolute; z-index:2; top:.75rem; right:.75rem; padding:.35rem .65rem; color:#163524; background:#a5d6a7; border-radius:999px; font-size:.68rem; font-weight:900; text-transform:uppercase; }
.course-product-card > img { width:100%; height:13rem; padding:.5rem; object-fit:contain; background:linear-gradient(145deg,#edf6ef,#e5eee8); border-radius:.7rem; }
.course-product-card h3 { margin:1rem 0 .65rem; font-size:1.15rem; font-weight:850; }
.course-product-card ul { display:grid; gap:.35rem; padding:0; margin:0 0 1rem; color:#65736e; list-style:none; font-size:.8rem; }
.course-product-price { display:flex; gap:.55rem; align-items:baseline; margin-top:auto; margin-bottom:.75rem; }
.course-product-price strong { color:var(--lb-green-dark); font-size:1.7rem; }
.course-product-price del { color:#84908c; }
.course-product-card .ecsp { min-height:0; }
.course-product-card .ecsp-title,.course-product-card .ecsp [itemprop="offers"],.course-product-card .ecsp [itemprop="brand"] { display:none; }
.course-curriculum .accordion-item { overflow:hidden; border-radius:.9rem; }
.course-curriculum .accordion-button { color:var(--lb-navy); font-weight:800; }
.course-preview-card { padding:1rem; background:#fff; border:1px solid rgba(38,50,56,.1); border-radius:.9rem; box-shadow:0 .45rem 1.25rem rgba(38,50,56,.06); }
.course-preview-card h3 { margin:.25rem 0 .75rem; font-size:1.05rem; }
.course-preview-volume { color:var(--lb-green-dark); font-size:.72rem; font-weight:900; text-transform:uppercase; }
.course-preview-actions { gap:.5rem; flex-wrap:wrap; }
.course-faq { max-width:55rem; }
.course-final-cta .container { display:block; }
.course-final-cta .course-kicker { color:#a5d6a7; }
@media(max-width:575.98px){.course-modern-hero h1{font-size:2.35rem}.course-trust-list{display:grid}.course-product-card>img{height:11rem}.course-preview-actions{justify-content:flex-start}.course-preview-actions .btn{width:100%;justify-content:center}}


/* Transitional multi-volume course collection. */
.course-current-hero-card {
  position: relative; display: grid; grid-template-columns: minmax(7.5rem, 10rem) 1fr; gap: 1.25rem; align-items: center;
  padding: 1.35rem; background: #fff; border: 1px solid rgba(38, 50, 56, .09); border-radius: 1.25rem;
  box-shadow: 0 1.4rem 3.4rem rgba(38, 50, 56, .16);
}
.course-current-hero-card img { width: 100%; border-radius: .55rem; box-shadow: 0 .8rem 1.7rem rgba(38, 50, 56, .2); }
.course-current-hero-card h2 { margin: .25rem 0; color: var(--lb-navy); font-size: 1.45rem; font-weight: 850; }
.course-current-hero-card p { margin: 0 0 .65rem; color: #687772; font-size: .82rem; }
.course-current-hero-card > div > span { color: var(--lb-green-dark); font-size: .7rem; font-weight: 900; letter-spacing: .06em; text-transform: uppercase; }
.course-current-hero-card strong { display: block; margin-bottom: .8rem; color: var(--lb-green-dark); font-size: 1.7rem; }
.course-current-hero-card strong small { color: #76837f; font-size: .72rem; font-weight: 500; }
.course-recommended-badge {
  display: inline-flex; align-items: center; width: fit-content; padding: .35rem .65rem; color: #163524; background: #a5d6a7;
  border-radius: 999px; font-size: .68rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase;
}
.course-current-hero-card > .course-recommended-badge { position: absolute; top: .9rem; right: .9rem; }
.course-option-card {
  position: relative; overflow: hidden; display: flex; flex-direction: column; background: #fff;
  border: 1px solid rgba(38, 50, 56, .1); border-radius: 1.1rem; box-shadow: 0 .8rem 2rem rgba(38, 50, 56, .09);
}
.course-option-card > img { width: 100%; height: 14rem; padding: 1.2rem; object-fit: contain; background: linear-gradient(145deg, #edf6ef, #e5eee8); }
.course-option-content { display: flex; flex: 1; flex-direction: column; padding: 1.25rem; }
.course-option-range { color: var(--lb-green-dark); font-size: .72rem; font-weight: 900; letter-spacing: .05em; text-transform: uppercase; }
.course-option-card h3 { margin: .35rem 0 .65rem; color: var(--lb-navy); font-size: 1.25rem; font-weight: 850; }
.course-option-card p { color: #5f6f69; font-size: .86rem; line-height: 1.6; }
.course-option-card ul { display: grid; gap: .35rem; padding: 0; margin: auto 0 1rem; list-style: none; color: #65736e; font-size: .76rem; }
.course-option-card li { display: flex; gap: .35rem; align-items: center; }
.course-option-card li .material-icons { color: var(--lb-green-dark); font-size: 1rem; }
.course-option-price { display: flex; gap: .55rem; align-items: baseline; margin-bottom: .75rem; }
.course-option-price strong { color: var(--lb-green-dark); font-size: 1.7rem; }
.course-option-price span { color: #76837f; font-size: .75rem; }
.course-option-recommended { border: 2px solid var(--lb-green-dark); }
.course-option-recommended > .course-recommended-badge { position: absolute; z-index: 2; top: .75rem; right: .75rem; }
.course-option-card .course-ecwid-buy { margin-top: auto; }
.course-current-curriculum { gap: .75rem; }
.course-current-curriculum .course-unit { overflow: hidden; background: #f8faf9; border: 1px solid rgba(38, 50, 56, .1); border-radius: .9rem; }
.course-current-curriculum .course-unit + .course-unit { border-top: 1px solid rgba(38, 50, 56, .1); }
@media (max-width: 575.98px) {
  .course-current-hero-card { grid-template-columns: 6.5rem 1fr; gap: .85rem; padding: 1rem; }
  .course-current-hero-card > .course-recommended-badge { position: static; grid-column: 1 / -1; }
  .course-current-hero-card h2 { font-size: 1.15rem; }
  .course-current-hero-card strong { font-size: 1.4rem; }
  .course-option-card > img { height: 12rem; }
}

/* Mobile preview player: keep the active sample available while browsing. */
.course-audio-sticky-shell[hidden] { display: none; }
@media (max-width: 767.98px) {
  body.has-course-audio-sticky { padding-bottom: calc(11.25rem + env(safe-area-inset-bottom)); }
  .course-audio-sticky-shell {
    position: fixed; z-index: 2050; right: 0; bottom: 0; left: 0;
    padding: .45rem .6rem calc(.45rem + env(safe-area-inset-bottom));
    background: #f7faf8; border-top: 3px solid var(--lb-green-dark);
    box-shadow: 0 -1rem 2.5rem rgba(38, 50, 56, .2);
  }
  .course-audio-sticky-close {
    position: absolute; z-index: 2; top: .55rem; right: max(.7rem, env(safe-area-inset-right));
    display: grid; place-items: center; width: 2rem; height: 2rem; padding: 0;
    color: var(--lb-navy); background: #fff; border: 1px solid rgba(38, 50, 56, .16);
    border-radius: 50%; cursor: pointer;
  }
  .course-audio-sticky-close:focus-visible { outline: 3px solid rgba(46, 125, 50, .25); outline-offset: 2px; }
  .course-audio-sticky-close .material-icons { font-size: 1.15rem; }
  .course-self-hosted-player.is-mobile-sticky {
    display: grid; grid-template-columns: 1fr; gap: .4rem; width: min(100%, 44rem);
    margin: 0 auto; padding: .15rem 2.45rem .15rem .15rem;
    background: transparent; border: 0; border-radius: 0; box-shadow: none;
  }
  .course-self-hosted-player.is-mobile-sticky .course-self-hosted-player-icon { display: none; }
  .course-self-hosted-player.is-mobile-sticky .course-self-hosted-player-copy { padding-right: .25rem; }
  .course-self-hosted-player.is-mobile-sticky .course-self-hosted-player-copy strong { font-size: .8rem; }
  .course-self-hosted-player.is-mobile-sticky .course-self-hosted-player-copy span { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
  .course-self-hosted-player.is-mobile-sticky .course-audio-main-controls {
    grid-column: 1; display: grid; grid-template-columns: auto 1fr; gap: .65rem;
    padding: .4rem .5rem; border-radius: .65rem;
  }
  .course-self-hosted-player.is-mobile-sticky .course-audio-play { width: 3rem; height: 3rem; }
  .course-self-hosted-player.is-mobile-sticky .course-audio-play .material-icons { font-size: 1.8rem; }
  .course-self-hosted-player.is-mobile-sticky .course-audio-progress-wrap { width: 100%; }
  .course-self-hosted-player.is-mobile-sticky .course-audio-tools {
    grid-column: 1; display: flex; flex-wrap: nowrap; gap: .4rem; justify-content: flex-start;
  }
  .course-self-hosted-player.is-mobile-sticky .course-audio-skip {
    flex: 0 0 2.45rem; justify-content: center; width: 2.45rem; height: 2.25rem; padding: 0;
  }
  .course-self-hosted-player.is-mobile-sticky .course-audio-skip > span:last-child { display: none; }
  .course-self-hosted-player.is-mobile-sticky .course-audio-speed {
    display: flex; flex: 1 1 auto; width: auto; justify-content: flex-end; margin-left: 0;
  }
  .course-self-hosted-player.is-mobile-sticky .course-audio-speed select { min-width: 4.25rem; }
  .course-audio-sticky-placeholder { height: 0; }
}
@media (max-width: 359.98px) {
  .course-self-hosted-player.is-mobile-sticky .course-audio-speed > span { position: absolute; overflow: hidden; width: 1px; height: 1px; clip: rect(0 0 0 0); white-space: nowrap; }
}
@media (max-width: 767.98px) and (prefers-reduced-motion: no-preference) {
  .course-audio-sticky-shell:not([hidden]) { animation: course-audio-sticky-in .2s ease-out; }
}
@keyframes course-audio-sticky-in { from { opacity: 0; transform: translateY(1rem); } to { opacity: 1; transform: translateY(0); } }
