/* ============================================================
   Agon101 Course Page — fitness theme
   Scoped under .ash-course-page
   ============================================================ */
.ash-course-page{
	--accent:#FF4D2E; --accent-d:#E0381B;
	--ink:#15151A; --dark:#16161B; --dark-2:#1F1F26; --dark-line:#2C2C34;
	--surface:#fff; --tint:#FFF1ED; --line:#ECE7E4; --muted:#7c756f; --muted-d:#9a948e;
	font-family:'Poppins','Montserrat',-apple-system,sans-serif;
	color:var(--ink);
	width:100%;
}
.ash-course-page *{box-sizing:border-box;}
.ash-course-page .ash-i{display:inline-flex;width:1em;height:1em;}
.ash-course-page .ash-i svg{width:100%;height:100%;display:block;}
.ash-cp-dim{color:var(--muted);font-weight:400;}

/* ---------- Hero ---------- */
.ash-cp-hero{background:var(--dark);color:#fff;padding:48px clamp(16px,4vw,64px);}
.ash-cp-hero-inner{max-width:1280px;margin:0 auto;}
.ash-cp-breadcrumb{font-size:12px;font-weight:600;letter-spacing:.05em;text-transform:uppercase;color:var(--muted-d);margin-bottom:16px;}
.ash-cp-breadcrumb a{color:var(--accent);text-decoration:none;}
.ash-cp-breadcrumb span{margin:0 7px;}
.ash-cp-cats{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:14px;}
.ash-cp-cat{background:var(--accent);color:#fff;font-size:11px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;padding:4px 12px;border-radius:6px;}
.ash-cp-title{margin:0;font-size:clamp(28px,4vw,44px);line-height:1.1;font-weight:700;letter-spacing:-.01em;color:#fff;}
.ash-cp-meta{display:flex;flex-wrap:wrap;gap:22px;margin-top:20px;font-size:14px;color:#D8D3CE;}
.ash-cp-meta-i{display:inline-flex;align-items:center;gap:7px;}
.ash-cp-meta-i .ash-i{font-size:17px;color:var(--accent);}
.ash-cp-rating{font-weight:600;color:#fff;}

/* ---------- Grid ---------- */
.ash-cp-grid{max-width:1280px;margin:0 auto;padding:36px clamp(16px,4vw,64px) 64px;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:40px;align-items:start;}

/* ---------- Main ---------- */
.ash-cp-media{border-radius:18px;overflow:hidden;background:#000;margin-bottom:32px;}
.ash-cp-media img,.ash-cp-media video,.ash-cp-media iframe{width:100%;display:block;aspect-ratio:16/9;object-fit:cover;border:0;}
.ash-cp-media .tutor-video-player{border-radius:18px;overflow:hidden;}

.ash-cp-section{margin-bottom:40px;}
.ash-cp-h2{font-size:13px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--ink);margin:0 0 18px;position:relative;padding-left:14px;}
.ash-cp-h2::before{content:"";position:absolute;left:0;top:1px;bottom:1px;width:4px;border-radius:4px;background:var(--accent);}
.ash-cp-prose{font-size:16px;line-height:1.75;color:#3a332e;}
.ash-cp-prose p{margin:0 0 16px;}

.ash-cp-checklist{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:12px 24px;}
.ash-cp-checklist li{display:flex;align-items:flex-start;gap:10px;font-size:15px;line-height:1.5;color:#3a332e;}
.ash-cp-checklist .ash-i{font-size:14px;color:#fff;background:var(--accent);width:20px;height:20px;border-radius:6px;padding:3px;flex-shrink:0;margin-top:1px;}

.ash-cp-bullets{margin:0;padding-left:20px;font-size:15px;line-height:1.7;color:#3a332e;}
.ash-cp-bullets li{margin-bottom:8px;}
.ash-cp-bullets li::marker{color:var(--accent);}

/* ---------- Curriculum ---------- */
.ash-cp-curriculum-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:16px;flex-wrap:wrap;}
.ash-cp-curriculum-head .ash-cp-h2{margin:0;}
.ash-cp-accordion{border:1px solid var(--line);border-radius:16px;overflow:hidden;}
.ash-cp-topic + .ash-cp-topic{border-top:1px solid var(--line);}
.ash-cp-topic-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--surface);border:none;cursor:pointer;text-align:left;padding:16px 18px;color:var(--ink);font-family:inherit;}
.ash-cp-topic-head:hover{background:var(--tint);}
.ash-cp-topic-title{font-size:14px;font-weight:600;line-height:1.35;}
.ash-cp-topic-meta{display:flex;align-items:center;gap:8px;font-size:12px;color:var(--muted);flex-shrink:0;}
.ash-cp-chev{font-size:17px;transition:transform .25s ease;}
.ash-cp-topic.is-open .ash-cp-chev{transform:rotate(180deg);}
.ash-cp-lessons{list-style:none;margin:0;padding:0;max-height:0;overflow:hidden;transition:max-height .3s ease;background:#FBFAF9;}
.ash-cp-topic.is-open .ash-cp-lessons{max-height:2000px;}
.ash-cp-lesson + .ash-cp-lesson{border-top:1px solid var(--line);}
.ash-cp-lesson a,.ash-cp-lesson span.ash-cp-lesson-row,.ash-cp-lesson > span,.ash-cp-lesson > a{display:flex;align-items:center;gap:12px;padding:12px 18px;text-decoration:none;color:var(--ink);}
.ash-cp-lesson-ic{width:24px;height:24px;border-radius:7px;background:#fff;border:1px solid var(--line);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--accent);}
.ash-cp-lesson-ic .ash-i{font-size:13px;}
.ash-cp-lesson-title{flex:1;font-size:14px;line-height:1.35;}
.ash-cp-lesson-dur{font-size:12px;color:var(--muted);flex-shrink:0;}
.ash-cp-lesson-lock{color:var(--muted-d);font-size:14px;flex-shrink:0;}
.ash-cp-lesson-lock .ash-i{font-size:14px;}
.ash-cp-preview{font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--accent);background:var(--tint);padding:3px 8px;border-radius:5px;flex-shrink:0;}
.ash-cp-lesson:not(.is-locked) > a:hover{background:var(--tint);}
.ash-cp-lesson:not(.is-locked) .ash-cp-lesson-title{color:var(--ink);}
.ash-cp-lesson.is-locked{cursor:default;}
.ash-cp-lesson.is-locked .ash-cp-lesson-title{color:var(--muted);}

/* ---------- Sidebar / enroll card ---------- */
.ash-cp-sidebar{position:sticky;top:24px;}
.ash-cp-enroll-card{}

/* Restyle Tutor's reused entry box to match the theme */
.ash-cp-enroll-card .tutor-card,
.ash-cp-enroll-card .tutor-sidebar-card{
	border:1px solid var(--line)!important;border-radius:18px!important;box-shadow:0 12px 34px rgba(21,21,26,.08)!important;background:#fff!important;overflow:hidden;
}
.ash-cp-enroll-card .tutor-card-body{padding:22px!important;}
.ash-cp-enroll-card .tutor-card-footer{padding:18px 22px!important;border-top:1px solid var(--line)!important;background:#FBFAF9;}

/* Buttons → orange. Keep Tutor classes (JS hooks) but recolor. */
.ash-cp-enroll-card .tutor-btn-primary,
.ash-cp-enroll-card .tutor-enroll-course-button{
	background:var(--accent)!important;border-color:var(--accent)!important;color:#fff!important;
	border-radius:10px!important;font-weight:700!important;letter-spacing:.02em;text-transform:uppercase;font-size:14px!important;
}
.ash-cp-enroll-card .tutor-btn-primary:hover,
.ash-cp-enroll-card .tutor-enroll-course-button:hover{background:var(--accent-d)!important;border-color:var(--accent-d)!important;}
.ash-cp-enroll-card .tutor-btn-outline-primary{
	background:transparent!important;border:1.5px solid var(--accent)!important;color:var(--accent)!important;border-radius:10px!important;font-weight:700!important;text-transform:uppercase;font-size:13px!important;
}
.ash-cp-enroll-card .tutor-btn-outline-primary:hover{background:var(--tint)!important;}

/* Price */
.ash-cp-enroll-card .tutor-course-single-pricing .tutor-fs-4,
.ash-cp-enroll-card .price,
.ash-cp-enroll-card .tutor-course-price{color:var(--ink)!important;font-weight:700!important;}

/* Progress bar → orange */
.ash-cp-enroll-card .tutor-progress-bar{--tutor-progress-bar-background:var(--tint);}
.ash-cp-enroll-card .tutor-progress-value{background:var(--accent)!important;}
.ash-cp-enroll-card .tutor-color-success,
.ash-cp-enroll-card .tutor-icon-purchase-mark{color:var(--accent)!important;}

/* Meta list icons */
.ash-cp-enroll-card .tutor-card-footer .tutor-ul li [class^="tutor-icon-"]{color:var(--accent)!important;}

/* ---------- Reused instructor / review blocks ---------- */
.ash-cp-reuse .tutor-course-details-widget-title,
.ash-cp-reuse h2,.ash-cp-reuse h3{font-family:inherit;}
.ash-cp-reuse .tutor-btn-primary{background:var(--accent)!important;border-color:var(--accent)!important;border-radius:10px!important;}
.ash-cp-reuse .tutor-ratings-stars [class*="star"]{color:var(--accent)!important;}

/* ---------- Responsive ---------- */
@media (max-width:980px){
	.ash-cp-grid{grid-template-columns:1fr;}
	.ash-cp-sidebar{position:static;order:-1;}
	.ash-cp-enroll-card{max-width:480px;}
}
@media (max-width:560px){
	.ash-cp-hero{padding:32px 18px;}
	.ash-cp-meta{gap:14px;font-size:13px;}
	.ash-cp-checklist{grid-template-columns:1fr;}
}

/* ============================================================
   Tabbed body
   ============================================================ */
.ash-cp-tabs{margin-top:4px;}
.ash-cp-tabnav{
	display:flex;gap:4px;border-bottom:1px solid var(--line);
	overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch;
}
.ash-cp-tabnav::-webkit-scrollbar{display:none;}
.ash-cp-tab{
	position:relative;display:inline-flex;align-items:center;gap:8px;white-space:nowrap;
	background:none;border:none;cursor:pointer;font-family:inherit;
	font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;
	color:var(--muted);padding:14px 18px;border-bottom:2px solid transparent;margin-bottom:-1px;
	transition:color .18s ease;
}
.ash-cp-tab .ash-i{font-size:17px;color:var(--muted);transition:color .18s ease;}
.ash-cp-tab:hover{color:var(--ink);}
.ash-cp-tab:hover .ash-i{color:var(--accent);}
.ash-cp-tab.is-active{color:var(--ink);border-bottom-color:var(--accent);}
.ash-cp-tab.is-active .ash-i{color:var(--accent);}
.ash-cp-tab-badge{
	font-size:10px;font-weight:700;line-height:1;color:#fff;background:var(--accent);
	padding:3px 7px;border-radius:99px;letter-spacing:0;
}

.ash-cp-panels{padding-top:28px;}
.ash-cp-panel{display:none;animation:agonFade .25s ease;}
.ash-cp-panel.is-active{display:block;}
@keyframes agonFade{from{opacity:0;transform:translateY(8px);}to{opacity:1;transform:none;}}

.ash-cp-block{margin-bottom:36px;}
.ash-cp-block:last-child{margin-bottom:0;}

/* Tabs on mobile: keep them swipeable, tighten padding */
@media (max-width:560px){
	.ash-cp-tab{padding:12px 14px;font-size:12px;}
	.ash-cp-tab .ash-i{font-size:16px;}
}

.ash-cp-empty-note{padding:32px;text-align:center;color:var(--muted);background:var(--tint);border-radius:14px;font-size:15px;}
