/* =====================================================================
   Course DETAIL page — editorial reskin  ·  "The Prospectus"
   Pairs with editorial-theme.css (body.editorial). Replaces course-template.css
   + legacy. One clear CTA path, transparent pricing, editorial curriculum.
   Preserves all payment hooks (.enrollment-option/.price/.enroll-btn[data-plan-
   type]/[data-india-only]) + accordion/tab JS classes.
   ===================================================================== */

#background-canvas{display:none !important}
body.editorial .section{opacity:1 !important;transform:none !important}
/* old template animated bg lived on body::before — neutralised by removing its CSS */

/* shared section frame */
.course-hero,.enrollment-cta-section,.program-overview-section,.course-tabs-section,
.cd-duration,.cd-testimonials,.faq-section,.related-courses-section,.related-blogs-section,
.cd-final-cta,.success-metrics-section,.why-this-course-section{
  width:100%;max-width:var(--container);margin-inline:auto;padding-inline:1.5rem;position:relative;
}

/* shared headings used across generated sections */
.course-tabs-section h2,.program-overview-section .section-title,.cd-testimonials h2,
.faq-section h2,.related-courses-section h2,.related-blogs-section h2,.cd-final-cta h2{
  font-family:var(--font-display);font-weight:600;color:var(--ink);letter-spacing:-.02em;line-height:1.12;
}
.subsection-title{font-family:var(--font-display);font-weight:600;font-size:clamp(1.25rem,2.4vw,1.6rem);color:var(--ink);margin:0 0 1.1rem}

/* =====================  HERO  ===================== */
.course-hero{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(1.6rem,4vw,3rem);align-items:center;padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(1.5rem,3vw,2.5rem)}
.course-hero-content{min-width:0}
.course-category{display:inline-block;font-family:var(--font-mono);font-size:.72rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin-bottom:1rem}
.course-hero-title{font-family:var(--font-display);font-weight:600;font-size:clamp(2.1rem,4.4vw,3.3rem);line-height:1.05;letter-spacing:-.03em;color:var(--ink);-webkit-text-fill-color:var(--ink);margin:0 0 1rem}
.course-hero-subtitle{color:var(--muted);font-size:1.12rem;line-height:1.6;margin:0 0 1.5rem;max-width:36ch}
.course-meta-badges{display:flex;flex-wrap:wrap;gap:.6rem;margin-bottom:1.7rem}
.meta-badge{display:inline-flex;align-items:center;gap:.45rem;background:var(--surface);border:1px solid var(--line);border-radius:9px;padding:.5rem .85rem;font-family:var(--font-mono);font-size:.78rem;color:var(--ink-soft);line-height:1.3}
.meta-badge svg{width:15px;height:15px;color:var(--amber);flex-shrink:0;stroke-width:2}
.meta-badge.certification{background:var(--amber-tint);border-color:rgba(180,83,9,.25);color:var(--amber-deep)}

/* CTA — one clear path: primary Enrol + secondary Book Demo, then quiet resource links */
.hero-cta-row{display:flex;flex-direction:column;gap:.9rem;align-items:flex-start}
.cd-primary-cta{display:flex;flex-wrap:wrap;gap:.7rem;width:100%}
body.editorial .cd-btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:var(--amber);color:#fff;border:1px solid var(--amber);border-radius:12px;padding:.95rem 1.8rem;font-family:var(--font-body);font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;transition:background .2s,transform .2s}
body.editorial .cd-btn-primary:hover{background:var(--amber-deep);transform:translateY(-1px)}
body.editorial .cd-btn-secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;background:transparent;color:var(--ink);border:1px solid var(--ink);border-radius:12px;padding:.95rem 1.6rem;font-family:var(--font-body);font-weight:600;font-size:1rem;text-decoration:none;cursor:pointer;transition:background .2s,color .2s}
body.editorial .cd-btn-secondary:hover{background:var(--ink);color:var(--paper)}
.cd-btn-primary svg,.cd-btn-secondary svg{width:17px;height:17px}
/* quiet resource links (was 5 rainbow buttons) — now one subtle row */
.hero-resource-links{display:flex;flex-wrap:wrap;gap:.3rem 1.3rem;margin-top:.2rem}
body.editorial .download-curriculum-btn,body.editorial .hero-proof-btn{display:inline-flex;align-items:center;gap:.4rem;background:none !important;border:none !important;box-shadow:none !important;padding:.3rem 0 !important;color:var(--muted) !important;font-family:var(--font-mono) !important;font-size:.8rem !important;font-weight:500 !important;letter-spacing:.01em;text-decoration:none;cursor:pointer;transition:color .2s;border-radius:0 !important;transform:none !important}
body.editorial .download-curriculum-btn:hover,body.editorial .hero-proof-btn:hover{color:var(--amber) !important;transform:none !important}
.download-curriculum-btn svg,.hero-proof-btn svg{width:14px;height:14px;color:currentColor}
.hero-proof-btn .hp-arrow{display:none}

.course-hero-image{min-width:0}
.course-hero-image img{width:100%;border-radius:18px;border:1px solid var(--line);display:block;box-shadow:var(--shadow-md)}
.course-hero-image svg{width:100%;height:auto}

/* =====================  DURATION NOTE (rewritten clean)  ===================== */
.cd-duration{padding-top:1rem;padding-bottom:1rem}
.cd-duration-card{display:flex;gap:1.2rem;background:var(--paper-2);border:1px solid var(--line);border-radius:18px;padding:clamp(1.4rem,3vw,2rem)}
.cd-duration-icon{flex-shrink:0;width:46px;height:46px;border-radius:12px;background:var(--amber-tint);color:var(--amber);display:flex;align-items:center;justify-content:center}
.cd-duration-icon svg{width:24px;height:24px}
.cd-duration h3{font-family:var(--font-display);font-weight:600;font-size:1.3rem;color:var(--ink);margin:0 0 .6rem}
.cd-duration p{color:var(--muted);line-height:1.7;margin:0 0 1rem}
.cd-duration p strong{color:var(--ink)}
.cd-duration-opts{display:grid;grid-template-columns:1fr 1fr;gap:.9rem;margin-bottom:1.1rem}
.cd-duration-opt{background:var(--surface);border:1px solid var(--line);border-radius:11px;padding:.9rem 1rem}
.cd-duration-opt span{display:block}
.cd-duration-opt .k{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin-bottom:.25rem}
.cd-duration-opt .v{font-weight:600;color:var(--ink);font-size:.95rem}
.cd-duration-contact{background:var(--amber-tint);border:1px solid rgba(180,83,9,.18);border-radius:11px;padding:1rem 1.1rem;color:var(--ink-soft);font-size:.92rem;line-height:1.6;margin:0}
.cd-duration-contact a{color:var(--amber-deep);font-weight:600;text-decoration:none}

/* =====================  ENROLLMENT / PRICING (clear + transparent)  ===================== */
.enrollment-cta-section{padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem);scroll-margin-top:80px}
.enrollment-cta-container{background:var(--surface);border:1px solid var(--line);border-radius:22px;padding:clamp(1.8rem,4vw,2.8rem);box-shadow:var(--shadow-sm)}
.enrollment-cta-text{text-align:center;margin-bottom:2rem}
.enrollment-cta-text h2{font-family:var(--font-display);font-weight:600;font-size:clamp(1.7rem,3.4vw,2.4rem);color:var(--ink);margin:0 0 .5rem;letter-spacing:-.02em}
.enrollment-cta-text h2::after{content:"";display:block;width:46px;height:3px;border-radius:3px;background:var(--amber);margin:.9rem auto 0}
.enrollment-cta-text p{color:var(--muted);max-width:560px;margin:1rem auto 0;line-height:1.7}
.enrollment-options{display:grid;grid-template-columns:repeat(3,1fr);gap:1.3rem;align-items:stretch;max-width:920px;margin:0 auto}
.enrollment-option{position:relative;display:flex;flex-direction:column;text-align:center;background:var(--paper-2);border:1px solid var(--line);border-radius:16px;padding:1.9rem 1.5rem;transition:transform .25s,box-shadow .25s,border-color .25s}
.enrollment-option:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}
.enrollment-option.featured{background:var(--surface);border:1.5px solid var(--amber);box-shadow:0 24px 50px -30px rgba(180,83,9,.5)}
.enrollment-option h4{font-family:var(--font-display);font-weight:600;font-size:1.2rem;color:var(--ink);margin:0 0 .7rem}
.enrollment-option .price{font-family:var(--font-display);font-weight:600;font-size:2rem;color:var(--ink);line-height:1.1;margin:0 0 .3rem;background:none;-webkit-text-fill-color:var(--ink)}
.enrollment-option .class-info{color:var(--muted);font-size:.86rem;line-height:1.5;margin:0 0 1.5rem;flex:1}
.recommended-badge{position:absolute !important;top:-.8rem !important;left:50% !important;right:auto !important;transform:translateX(-50%) !important;background:var(--amber) !important;color:#fff !important;font-family:var(--font-body) !important;font-size:.66rem !important;font-weight:700 !important;letter-spacing:.08em !important;text-transform:uppercase;padding:.34rem .9rem !important;border-radius:40px !important;white-space:nowrap}
body.editorial .enroll-btn{display:block;width:100%;text-align:center;padding:.85rem 1rem;border-radius:11px;font-family:var(--font-body);font-weight:600;font-size:.95rem;text-decoration:none;cursor:pointer;transition:background .2s,color .2s,border-color .2s;margin-top:auto}
body.editorial .enroll-btn.primary{background:var(--amber);color:#fff;border:1px solid var(--amber)}
body.editorial .enroll-btn.primary:hover{background:var(--amber-deep)}
body.editorial .enroll-btn.outline{background:transparent;color:var(--ink);border:1px solid var(--ink)}
body.editorial .enroll-btn.outline:hover{background:var(--ink);color:var(--paper)}

/* international pricing (rewritten to classes) */
.cd-intl{max-width:720px;margin:2.6rem auto 0}
.cd-intl-head{display:flex;align-items:center;justify-content:center;gap:.7rem;margin-bottom:1.4rem}
.cd-intl-globe{width:42px;height:42px;border-radius:50%;background:var(--ink);color:var(--paper);display:flex;align-items:center;justify-content:center}
.cd-intl-globe svg{width:22px;height:22px}
.cd-intl-head h3{font-family:var(--font-display);font-weight:600;font-size:1.35rem;color:var(--ink);margin:0}
.cd-intl-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.3rem;max-width:560px;margin:0 auto}
.cd-intl-card{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.6rem 1.3rem;text-align:center}
.cd-intl-card.rec{border:1.5px solid var(--amber)}
.cd-intl-badge{position:absolute;top:-.7rem;left:50%;transform:translateX(-50%);background:var(--amber);color:#fff;font-family:var(--font-body);font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.3rem .8rem;border-radius:40px;white-space:nowrap}
.cd-intl-label{font-family:var(--font-mono);font-size:.72rem;text-transform:uppercase;letter-spacing:.08em;color:var(--muted);margin-bottom:.4rem}
.cd-intl-price{font-family:var(--font-display);font-weight:600;font-size:2rem;color:var(--ink);line-height:1.1}
.cd-intl-per{color:var(--muted);font-size:.85rem;margin-top:.2rem}
.cd-intl-note{font-size:.74rem;color:var(--muted);margin-top:.6rem;padding-top:.6rem;border-top:1px solid var(--line-2)}
body.editorial .cd-intl-btn{display:inline-block;margin-top:1rem;padding:.6rem 1.5rem;border-radius:10px;font-weight:600;font-size:.85rem;text-decoration:none;cursor:pointer;background:var(--amber);color:#fff;border:1px solid var(--amber);transition:background .2s}
body.editorial .cd-intl-btn:hover{background:var(--amber-deep)}
body.editorial .cd-intl-card.rec .cd-intl-btn{background:transparent;color:var(--ink);border-color:var(--ink)}
body.editorial .cd-intl-card.rec .cd-intl-btn:hover{background:var(--ink);color:var(--paper)}
.cd-intl-more{text-align:center;font-size:.85rem;color:var(--muted);margin-top:1.25rem}
body.editorial .cd-intl-more a{color:var(--amber);font-weight:600;text-decoration:none}

/* =====================  PROGRAM OVERVIEW  ===================== */
.program-overview-section{padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(1.5rem,3vw,2.5rem)}
.program-overview-container{max-width:860px;margin:0 auto}
.program-overview-section .section-title{font-size:clamp(1.8rem,3.6vw,2.6rem);text-align:center;margin:0 0 .4rem}
.program-overview-section .section-title::after{content:"";display:block;width:48px;height:3px;border-radius:3px;background:var(--amber);margin:1rem auto 1.8rem}
.overview-description{color:var(--ink-soft);font-size:1.08rem;line-height:1.8;margin-bottom:2.4rem}
.overview-description p{margin:0 0 1.1rem}
.differentiators-container,.learning-path-container,.career-outcomes-container{margin-bottom:2.4rem}
.differentiators-list{list-style:none;display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.8rem;margin:0;padding:0}
.differentiators-list li{position:relative;display:flex;gap:.7rem;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:.9rem 1.1rem;color:var(--ink-soft);font-size:.95rem;line-height:1.55}
.differentiators-list .check-icon{color:var(--amber);font-weight:700;flex-shrink:0}
.differentiators-list li svg{display:none}
.support-icon,.guarantee-icon,.why-highlight-icon{color:var(--amber)}
.learning-path-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.learning-path-item{background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:1.3rem 1.2rem}
.learning-path-item h4,.learning-path-item strong{color:var(--ink);font-family:var(--font-display);font-weight:600}
.learning-path-item p,.learning-path-item span{color:var(--muted);font-size:.92rem;line-height:1.6}
.career-outcomes-timeline{position:relative;display:flex;flex-direction:column;gap:1rem;padding-left:1.6rem}
.career-outcomes-timeline::before{content:"";position:absolute;left:5px;top:6px;bottom:6px;width:2px;background:var(--line)}
.career-outcome{position:relative;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:1rem 1.2rem;color:var(--ink-soft);line-height:1.6}
.career-outcome::before{content:"";position:absolute;left:-1.6rem;top:1.3rem;width:11px;height:11px;border-radius:50%;background:var(--amber);box-shadow:0 0 0 4px var(--paper)}
.career-outcome strong,.career-outcome h4{color:var(--ink)}

/* =====================  TABS + CURRICULUM ACCORDION  ===================== */
.course-tabs-section{padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem)}
.course-tabs-wrapper{max-width:920px;margin:0 auto}
.course-tabs-container{position:relative;display:flex;flex-wrap:wrap;gap:.3rem;background:var(--paper-2);border:1px solid var(--line);border-radius:14px;padding:.4rem;margin-bottom:2rem}
.course-tab-button{flex:1;min-width:140px;position:relative;z-index:1;background:none;border:none;cursor:pointer;padding:.7rem 1rem;border-radius:10px;font-family:var(--font-body);font-size:.92rem;font-weight:600;color:var(--muted);transition:color .2s}
.course-tab-button:hover{color:var(--ink)}
.course-tab-button.active{color:var(--paper)}
.course-tab-glider{position:absolute;z-index:0;top:.4rem;bottom:.4rem;background:var(--ink);border-radius:10px;transition:transform .3s cubic-bezier(.4,0,.2,1),width .3s}
.course-tab-content{display:none}
.course-tab-content.active{display:block;animation:cdfade .35s ease both}
@keyframes cdfade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
.course-tab-content h2{font-size:clamp(1.5rem,3vw,2rem);text-align:center;margin:0 0 .4rem}
.curriculum-intro,.tab-intro{color:var(--muted);text-align:center;max-width:560px;margin:.7rem auto 2rem;line-height:1.7}

.curriculum-accordion{display:flex;flex-direction:column;gap:.8rem}
.phase-section{border:1px solid var(--line);border-radius:14px;overflow:hidden;background:var(--surface)}
.phase-header{display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.3rem;cursor:pointer;background:var(--paper-2);transition:background .2s}
.phase-header:hover{background:var(--amber-tint)}
.phase-section.active>.phase-header{background:var(--amber-tint)}
.phase-icon{font-size:1.2rem;flex-shrink:0}
.phase-info{flex:1;min-width:0}
.phase-title{font-family:var(--font-display);font-weight:600;font-size:1.08rem;color:var(--ink);margin:0}
.phase-description{color:var(--muted);font-size:.86rem;margin:.2rem 0 0;line-height:1.5}
.expand-icon{flex-shrink:0;color:var(--amber);transition:transform .25s;font-size:.9rem}
.phase-section.active>.phase-header .expand-icon,.month-section.active>.month-header .expand-icon,.week-section.active>.week-header .expand-icon{transform:rotate(180deg)}
.phase-content,.month-content,.week-content{max-height:0;overflow:hidden;transition:max-height .35s ease}
/* JS adds .active + resizes parents; the clicked section's own expand is CSS-driven */
.phase-section.active>.phase-content{max-height:14000px}
.month-section.active>.month-content{max-height:9000px}
.week-section.active>.week-content{max-height:5000px}
.phase-content{padding:0 1rem}
.month-section{border:1px solid var(--line-2);border-radius:11px;overflow:hidden;margin:.7rem 0;background:var(--paper-2)}
.month-section:first-child{margin-top:.9rem}
.month-section:last-child{margin-bottom:.9rem}
.month-header{display:flex;align-items:center;gap:.8rem;padding:.85rem 1.1rem;cursor:pointer}
.month-header:hover{background:var(--surface)}
.month-icon{flex-shrink:0}
.month-info{flex:1;min-width:0}
.month-title{font-weight:600;color:var(--ink);font-size:.98rem;margin:0}
.month-weeks{font-family:var(--font-mono);font-size:.72rem;color:var(--muted)}
.month-content{padding:0 .8rem}
.week-section{border:1px solid var(--line-2);border-radius:9px;overflow:hidden;margin:.6rem 0;background:var(--surface)}
.week-header{display:flex;align-items:center;gap:.7rem;padding:.75rem 1rem;cursor:pointer}
.week-header:hover{background:var(--paper-2)}
.week-icon{flex-shrink:0}
.week-title{font-weight:600;color:var(--ink-soft);font-size:.92rem;margin:0;flex:1}
.week-content{padding:0 1rem}
.topics-section,.projects-section,.practice-section,.assessment-section{margin:.9rem 0}
.topics-list,.projects-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.4rem}
.topics-list li,.projects-list li{position:relative;padding-left:1.3rem;color:var(--ink-soft);font-size:.9rem;line-height:1.5}
.topics-list li::before{content:"▸";position:absolute;left:0;color:var(--amber)}
.projects-list li::before{content:"◆";position:absolute;left:0;color:var(--amber);font-size:.7rem;top:.15rem}
.topics-hidden{display:none}
.topics-hidden.show{display:flex}
body.editorial .show-more-btn{background:none;border:none;color:var(--amber);font-family:var(--font-mono);font-size:.78rem;font-weight:600;cursor:pointer;padding:.3rem 0;margin-top:.3rem}
.practice-section,.assessment-section{border-radius:10px;padding:.8rem 1rem;font-size:.9rem;line-height:1.6}
.practice-section{background:var(--paper-2);border-left:3px solid var(--amber);color:var(--ink-soft)}
.assessment-section{background:var(--amber-tint);border-left:3px solid var(--amber-deep);color:var(--ink-soft)}
.practice-section strong,.assessment-section strong,.topics-section strong,.projects-section strong{color:var(--ink)}

/* projects / technologies / career tab boxes */
.weekly-structure-box,.certification-box,.support-section,.prerequisites-box,.who-is-this-for-box,
.career-paths-box,.salary-expectations-box,.guarantees-box,.projects-overview{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:1.5rem 1.6rem;margin-bottom:1.3rem}
.course-tab-content h3{font-family:var(--font-display);font-weight:600;font-size:1.2rem;color:var(--ink);margin:0 0 1rem}
.skills-mastered-grid,.support-grid,.audience-grid,.salary-grid,.weekly-breakdown,.certification-details{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}
.skill-category,.support-item,.audience-item,.salary-item,.weekly-item,.certification-item,.prerequisite-item,.career-path-item,.guarantee-item{background:var(--paper-2);border:1px solid var(--line);border-radius:12px;padding:1.1rem 1.2rem;color:var(--ink-soft);font-size:.92rem;line-height:1.6}
.skill-category h4,.support-item h4,.audience-item h4,.salary-item h4,.weekly-item strong,.certification-item strong,.prerequisite-item strong,.career-path-item strong,.guarantee-item strong{color:var(--ink);font-family:var(--font-display);font-weight:600;display:block;margin-bottom:.3rem}
.prerequisites-list,.career-paths-list,.guarantees-list{display:flex;flex-direction:column;gap:.7rem}

/* =====================  TESTIMONIALS (new)  ===================== */
.cd-testimonials{padding-top:clamp(2.5rem,5vw,4rem);padding-bottom:clamp(2rem,4vw,3rem);text-align:center}
.cd-testimonials h2{font-size:clamp(1.8rem,3.6vw,2.6rem);margin:0 0 .4rem}
.cd-testimonials .cd-tm-sub{color:var(--muted);margin:.9rem auto 0;max-width:520px;line-height:1.7}
.cd-tm-rating{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:.86rem;color:var(--ink-soft);background:var(--surface);border:1px solid var(--line);border-radius:40px;padding:.5rem 1.1rem;margin-top:1.3rem}
.cd-tm-rating .stars{color:var(--amber);letter-spacing:.05em}
.cd-tm-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.4rem;margin-top:2.2rem;text-align:left}
.cd-tm-card{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:1.6rem}
.cd-tm-stars{color:var(--amber);font-size:.95rem;letter-spacing:.08em;margin-bottom:.8rem}
.cd-tm-quote{color:var(--ink-soft);line-height:1.7;font-size:.96rem;margin:0 0 1.2rem}
.cd-tm-person{display:flex;align-items:center;gap:.8rem}
.cd-tm-person img{width:44px;height:44px;border-radius:50%;object-fit:cover;border:1px solid var(--line)}
.cd-tm-avatar{width:44px;height:44px;border-radius:50%;background:var(--amber-tint);color:var(--amber-deep);display:flex;align-items:center;justify-content:center;font-family:var(--font-display);font-weight:600;font-size:1.15rem;flex-shrink:0}
.cd-tm-name{font-weight:600;color:var(--ink);font-size:.92rem}
.cd-tm-role{font-family:var(--font-mono);font-size:.74rem;color:var(--muted)}
body.editorial .cd-tm-google{display:inline-flex;align-items:center;gap:.5rem;margin-top:1.8rem;color:var(--ink);font-weight:600;font-size:.9rem;text-decoration:none;border-bottom:1px solid var(--amber);padding-bottom:2px}
body.editorial .cd-tm-google:hover{color:var(--amber)}

/* =====================  FAQ  ===================== */
.faq-section{max-width:820px;padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem)}
.faq-section h2{text-align:center;font-size:clamp(1.7rem,3.4vw,2.4rem);margin:0 0 1.8rem}
.faq-section h2::after{content:"";display:block;width:46px;height:3px;border-radius:3px;background:var(--amber);margin:.9rem auto 0}
.faq-container,.faq-list{display:flex;flex-direction:column;gap:.8rem}
.faq-item{background:var(--surface);border:1px solid var(--line);border-radius:12px;overflow:hidden;transition:border-color .2s}
.faq-item.active{border-color:rgba(180,83,9,.4)}
.faq-question{width:100%;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:none;border:none;cursor:pointer;text-align:left;padding:1.15rem 1.4rem;font-family:var(--font-display);font-weight:600;font-size:1.04rem;color:var(--ink)}
.faq-toggle-icon{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;color:var(--amber);transition:transform .25s;font-size:1.1rem}
.faq-item.active .faq-toggle-icon{transform:rotate(180deg)}
.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--muted);line-height:1.7}
.faq-item.active .faq-answer{max-height:600px}
.faq-answer p,.faq-answer{padding:0}
.faq-item.active .faq-answer{padding:0 1.4rem 1.3rem}

/* =====================  RELATED  ===================== */
.related-courses-section,.related-blogs-section{padding-top:clamp(2rem,4vw,3rem);padding-bottom:clamp(2rem,4vw,3rem)}
.related-courses-section h2,.related-blogs-section h2{text-align:center;font-size:clamp(1.6rem,3vw,2.1rem);margin:0 0 1.8rem}
.related-courses-grid,.related-blogs-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;max-width:var(--container);margin:0 auto}
.related-courses-grid a,.related-blogs-grid a,.related-course-card,.related-blog-card{display:flex;flex-direction:column;background:var(--surface);border:1px solid var(--line);border-radius:16px;overflow:hidden;text-decoration:none;transition:transform .25s,box-shadow .25s,border-color .25s}
.related-courses-grid a:hover,.related-blogs-grid a:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:rgba(180,83,9,.4)}
.related-courses-grid img,.related-blogs-grid img{width:100%;aspect-ratio:16/9;object-fit:cover;display:block;border-bottom:1px solid var(--line)}
.related-courses-grid h3,.related-blogs-grid h3,.related-courses-grid h4,.related-blogs-grid h4{font-family:var(--font-display);font-weight:600;font-size:1.1rem;color:var(--ink);margin:0;padding:1.1rem 1.3rem .3rem}
.related-courses-grid p,.related-blogs-grid p{color:var(--muted);font-size:.9rem;line-height:1.6;padding:0 1.3rem 1.2rem;margin:0}

/* =====================  FINAL CTA (new)  ===================== */
.cd-final-cta{text-align:center;padding-top:clamp(3rem,6vw,4.5rem);padding-bottom:clamp(3rem,6vw,4.5rem)}
.cd-final-cta-inner{background:var(--ink);border-radius:24px;padding:clamp(2.5rem,5vw,4rem) clamp(1.5rem,4vw,3rem)}
.cd-final-cta h2{color:#fff;font-size:clamp(1.8rem,3.6vw,2.6rem);margin:0 0 .8rem}
.cd-final-cta p{color:rgba(251,248,242,.72);max-width:540px;margin:0 auto 1.8rem;line-height:1.7;font-size:1.05rem}
.cd-final-cta-row{display:flex;flex-wrap:wrap;gap:.8rem;justify-content:center}
body.editorial .cd-final-cta .cd-btn-primary{background:var(--amber);border-color:var(--amber)}
body.editorial .cd-final-cta .cd-btn-secondary{background:transparent;color:var(--paper);border-color:rgba(251,248,242,.4)}
body.editorial .cd-final-cta .cd-btn-secondary:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}

/* =====================  share button (editorial)  ===================== */
.share-button-container{display:inline-block;position:relative;z-index:50;margin-top:.3rem}
body.editorial .share-button{display:inline-flex;align-items:center;gap:.45rem;background:none;color:var(--muted);border:none;padding:.3rem 0;font-family:var(--font-mono);font-weight:500;font-size:.8rem;cursor:pointer;transition:color .2s}
body.editorial .share-button:hover{color:var(--amber)}
.share-button .share-icon{width:14px;height:14px}
.share-dropdown{position:absolute;top:calc(100% + 8px);left:0;background:var(--surface);border:1px solid var(--line);border-radius:13px;box-shadow:var(--shadow-md);padding:.4rem;min-width:190px;opacity:0;visibility:hidden;transform:translateY(8px);transition:opacity .2s,visibility .2s,transform .2s;z-index:99999}
.share-dropdown.active,.share-dropdown.show,.share-dropdown.open{opacity:1;visibility:visible;transform:none}
body.editorial .share-option{display:flex;align-items:center;gap:.7rem;padding:.55rem .75rem;border-radius:9px;color:var(--ink-soft);text-decoration:none;font-size:.88rem;cursor:pointer;background:none;border:none;width:100%;text-align:left;font-family:var(--font-body)}
body.editorial .share-option:hover{background:var(--amber-tint);color:var(--amber)}
.share-option svg{width:16px;height:16px;flex-shrink:0}
.share-toast{position:fixed;bottom:2rem;left:50%;transform:translateX(-50%) translateY(20px);background:var(--ink);color:var(--paper);padding:.8rem 1.2rem;border-radius:12px;opacity:0;transition:.3s;z-index:99999;box-shadow:var(--shadow-md);font-size:.9rem}
.share-toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* =====================  international contact modal override  ===================== */
#intl-contact-modal{background:rgba(28,24,20,.55) !important}
#intl-contact-modal>div,#intl-contact-modal .intl-modal-card{background:var(--surface) !important;border:1px solid var(--line) !important;color:var(--ink) !important}

/* =====================================================================
   Overrides for the generator's 4 embedded <style> blocks (dark/purple).
   They use plain selectors (0,1,0); body.editorial-scoped rules (0,2,1) win.
   ===================================================================== */
/* ---- FAQ ---- */
body.editorial .faq-section{background:none !important;border:none !important;box-shadow:none !important;max-width:820px;padding:clamp(2rem,4vw,3rem) 1.5rem !important}
body.editorial .faq-section::before,body.editorial .faq-section::after{display:none !important}
body.editorial .faq-container{background:none !important;border:none !important;box-shadow:none !important;padding:0 !important;max-width:820px}
body.editorial .faq-header{text-align:center;margin-bottom:1.8rem}
body.editorial .faq-badge{display:inline-block;background:var(--amber-tint) !important;color:var(--amber-deep) !important;border:none !important;font-family:var(--font-mono) !important;font-size:.7rem !important;font-weight:600 !important;letter-spacing:.12em !important;text-transform:uppercase;padding:.35rem .8rem !important;border-radius:6px !important;box-shadow:none !important;margin-bottom:1rem}
body.editorial .faq-title{font-family:var(--font-display) !important;color:var(--ink) !important;background:none !important;-webkit-text-fill-color:var(--ink) !important;font-size:clamp(1.7rem,3.4vw,2.4rem) !important}
body.editorial .faq-title::after{content:"";display:block;width:46px;height:3px;border-radius:3px;background:var(--amber);margin:.9rem auto 0}
body.editorial .faq-subtitle{color:var(--muted) !important}
body.editorial .faq-item{background:var(--surface) !important;border:1px solid var(--line) !important;box-shadow:none !important;backdrop-filter:none !important}
body.editorial .faq-item:hover,body.editorial .faq-item.active{border-color:rgba(180,83,9,.4) !important}
body.editorial .faq-question{background:none !important;color:var(--ink) !important}
body.editorial .faq-question-text{color:var(--ink) !important;font-family:var(--font-display) !important}
body.editorial .faq-answer,body.editorial .faq-answer *{color:var(--muted) !important}
body.editorial .faq-toggle-icon{background:var(--amber-tint) !important;color:var(--amber) !important;border:none !important}
body.editorial .faq-cta{background:var(--paper-2) !important;border:1px solid var(--line) !important}
body.editorial .faq-cta *{color:var(--ink-soft) !important}
body.editorial .faq-contact-btn{background:var(--amber) !important;color:#fff !important;border:1px solid var(--amber) !important;-webkit-text-fill-color:#fff !important}

/* ---- related courses / blogs (.il-*) ---- */
body.editorial .il-section{background:var(--paper-2) !important;border-top:1px solid var(--line) !important;border-bottom:1px solid var(--line) !important;padding:clamp(3rem,5vw,4rem) 1.5rem !important}
body.editorial .il-section::before,body.editorial .il-section::after{display:none !important}
body.editorial .il-container{max-width:var(--container);margin-inline:auto}
body.editorial .il-header{text-align:center;margin-bottom:2rem}
body.editorial .il-badge,body.editorial .il-badge--blog{background:var(--amber-tint) !important;color:var(--amber-deep) !important;border:none !important;font-family:var(--font-mono) !important;font-size:.68rem !important;letter-spacing:.12em !important;text-transform:uppercase;padding:.35rem .8rem !important;border-radius:6px !important}
body.editorial .il-title{font-family:var(--font-display) !important;color:var(--ink) !important;background:none !important;-webkit-text-fill-color:var(--ink) !important}
body.editorial .il-subtitle{color:var(--muted) !important}
body.editorial .il-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-top:2rem}
body.editorial .il-card{background:var(--surface) !important;border:1px solid var(--line) !important;border-radius:16px !important;overflow:hidden;box-shadow:none !important}
body.editorial .il-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md) !important;border-color:rgba(180,83,9,.4) !important}
body.editorial .il-card__image-wrap{background:var(--paper-2) !important}
body.editorial .il-card__category{background:var(--ink) !important;color:var(--paper) !important;-webkit-text-fill-color:var(--paper) !important}
body.editorial .il-card__level,body.editorial .il-card__read-time{background:var(--amber) !important;color:#fff !important;-webkit-text-fill-color:#fff !important}
body.editorial .il-card__title{font-family:var(--font-display) !important;color:var(--ink) !important;-webkit-text-fill-color:var(--ink) !important}
body.editorial .il-card__desc{color:var(--muted) !important}
body.editorial .il-card__link,body.editorial .il-card__link--blog{color:var(--amber) !important;-webkit-text-fill-color:var(--amber) !important}

/* ---- why this course ---- */
body.editorial .why-this-course-section{background:none !important;padding:clamp(2.5rem,5vw,4rem) 1.5rem !important;max-width:var(--container);margin-inline:auto}
body.editorial .why-this-course-section::before{display:none !important}
body.editorial .why-course-header{text-align:center;margin-bottom:2rem}
body.editorial .why-course-badge{background:var(--amber-tint) !important;color:var(--amber-deep) !important;border:none !important;font-family:var(--font-mono) !important;letter-spacing:.1em;text-transform:uppercase}
body.editorial .why-course-title{font-family:var(--font-display) !important;color:var(--ink) !important;background:none !important;-webkit-text-fill-color:var(--ink) !important}
body.editorial .why-course-text,body.editorial .why-highlight-text{color:var(--ink-soft) !important}
body.editorial .why-course-highlights{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem}
body.editorial .why-highlight{background:var(--surface) !important;border:1px solid var(--line) !important;box-shadow:none !important}
body.editorial .why-highlight-icon{background:var(--amber-tint) !important;color:var(--amber) !important;-webkit-text-fill-color:var(--amber) !important}

/* ---- success metrics ---- */
body.editorial .success-metrics-section{background:var(--ink) !important;border-radius:24px;padding:clamp(2.5rem,5vw,4rem) 1.5rem !important;max-width:var(--container);margin:2rem auto !important}
body.editorial .success-metrics-section::before{display:none !important}
body.editorial .success-metrics-header{text-align:center;margin-bottom:2rem}
body.editorial .success-badge{background:rgba(251,248,242,.12) !important;color:var(--paper) !important;-webkit-text-fill-color:var(--paper) !important;border:none !important;font-family:var(--font-mono) !important;letter-spacing:.1em;text-transform:uppercase}
body.editorial .success-title{font-family:var(--font-display) !important;color:#fff !important;background:none !important;-webkit-text-fill-color:#fff !important}
body.editorial .success-metrics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1.2rem;margin-top:1.5rem}
body.editorial .success-metric-card{background:rgba(251,248,242,.06) !important;border:1px solid rgba(251,248,242,.14) !important;box-shadow:none !important}
body.editorial .success-metric-value{font-family:var(--font-display) !important;color:#E0A158 !important;background:none !important;-webkit-text-fill-color:#E0A158 !important}
body.editorial .success-metric-label{color:rgba(251,248,242,.72) !important}

/* =====================  responsive  ===================== */
@media (max-width:880px){
  .course-hero{grid-template-columns:1fr}
  .course-hero-image{order:-1;max-width:480px}
  .enrollment-options{grid-template-columns:1fr;max-width:420px}
  .cd-intl-grid{grid-template-columns:1fr;max-width:340px}
  .cd-duration-opts{grid-template-columns:1fr}
}
@media (max-width:560px){
  .course-tab-button{min-width:calc(50% - .3rem)}
}
