/* ─── COURSE DETAIL ─── */
.cd-hero{background:linear-gradient(135deg,var(--emerald-900) 0%,var(--emerald-700) 100%);color:var(--cream-100);padding:140px 0 64px;position:relative;overflow:hidden}
.cd-hero::before{content:"";position:absolute;top:-100px;right:-100px;width:500px;height:500px;border-radius:50%;background:radial-gradient(circle,rgba(201,162,74,.2),transparent 70%)}
.cd-hero .container{position:relative;z-index:1}
.cd-grid{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;margin-top:32px}
.cd-meta{display:flex;flex-wrap:wrap;gap:16px;margin-bottom:24px;font-size:13px}
.cd-meta span{padding:6px 14px;background:rgba(247,241,230,.08);border:1px solid rgba(247,241,230,.18);border-radius:var(--r-pill);color:rgba(247,241,230,.85)}
.cd-hero h1{font-size:clamp(36px,4.5vw,64px);max-width:800px}
.cd-hero p.intro{color:rgba(247,241,230,.75);font-size:18px;margin-top:24px;max-width:680px;line-height:1.55}
.cd-buy{background:rgba(247,241,230,.06);backdrop-filter:blur(20px);border:1px solid rgba(247,241,230,.15);border-radius:var(--r-xl);padding:32px}
.cd-buy .price{font-family:var(--f-display);font-size:48px;color:var(--gold-400);font-weight:300}
.cd-buy .price-sub{font-size:13px;color:rgba(247,241,230,.5);margin-bottom:24px}
.cd-buy .delivery-pick{display:grid;gap:8px;margin-bottom:16px}
.cd-buy .dlv-opt{padding:14px 16px;border:1.5px solid rgba(247,241,230,.2);border-radius:var(--r-md);background:rgba(247,241,230,.04);cursor:pointer;display:flex;justify-content:space-between;align-items:center;font-size:14px;color:var(--cream-100);transition:all .25s}
.cd-buy .dlv-opt:hover{border-color:var(--gold-500)}
.cd-buy .dlv-opt.active{background:rgba(201,162,74,.12);border-color:var(--gold-500)}
.cd-buy .dlv-opt small{color:rgba(247,241,230,.55);font-size:12px;display:block;margin-top:4px}
.cd-buy .btn{width:100%;justify-content:center;margin-top:8px}

.cd-content{display:grid;grid-template-columns:1.4fr 1fr;gap:64px;margin-top:96px}
.cd-section{margin-bottom:48px}
.cd-section h2{font-size:32px;margin-bottom:16px;color:var(--emerald-900)}
.cd-section p{font-size:16px;color:var(--ink-700);line-height:1.65;margin-bottom:12px}
.cd-modules{display:grid;gap:8px;margin-top:16px}
.cd-mod{background:var(--white);border:1px solid var(--ink-100);border-radius:var(--r-md);padding:20px 24px;display:flex;justify-content:space-between;align-items:center;cursor:pointer;transition:all .25s}
.cd-mod:hover{border-color:var(--gold-500);box-shadow:var(--shadow-soft)}
.cd-mod .num{font-family:var(--f-display);color:var(--gold-700);font-size:18px;margin-right:16px}
.cd-mod .ttl{flex:1;font-weight:600;color:var(--emerald-900);font-size:15px}
.cd-mod .dur{font-size:13px;color:var(--ink-500)}
.cd-side{position:sticky;top:100px;height:fit-content}
.cd-side-card{background:var(--white);border:1px solid var(--ink-100);border-radius:var(--r-lg);padding:24px;margin-bottom:16px}
.cd-side-card h5{margin-bottom:16px;color:var(--emerald-900)}
.cd-side-card .row{display:flex;justify-content:space-between;font-size:14px;padding:8px 0;border-bottom:1px solid var(--ink-100)}
.cd-side-card .row:last-child{border-bottom:none}
.cd-side-card .row .lbl{color:var(--ink-500)}
.cd-side-card .row .val{color:var(--ink-900);font-weight:600}
@media (max-width:900px){.cd-grid,.cd-content{grid-template-columns:1fr}.cd-side{position:static}}
