/* AI/ML opt page only. Do not load on common opt or ACE opt courses. */
.pricing_by_course{margin-bottom:60px;}
.course-finder-section{background:#f9fafb;padding:80px 0 0;}
.course-finder-layout{display:flex;align-items:center;justify-content:space-between;gap:48px;}
.course-finder-image{flex:0 0 480px;max-width:480px;}
.course-finder-image img{width:100%;height:auto;display:block;}
.course-finder-content{flex:1;min-width:0;}
.courses-detail-main h2.course-finder-title{font-weight:700;font-size:46px;line-height:60px;color:#101828;margin:0 0 16px 0;max-width:620px;}
.course-finder-desc{font-size:18px;line-height:29.25px;color:#4a5565;margin:0;}
.course-finder-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:32px;}
.course-finder-card{border-radius:16px;padding:32px;display:flex;flex-direction:column;align-items:center;justify-content:flex-start;min-height:140px;}
.course-finder-card img{width:48px;height:48px;display:block;}
.course-finder-card-label{font-weight:500;font-size:16px;line-height:24px;color:#101828;margin-top:16px;text-align:center;white-space:nowrap;}
.course-finder-card--coding{background:#fdf2f8;}
.course-finder-card--python{background:#faf5ff;}
.course-finder-card--aiml{background:#f0fdfa;}
.course-finder-cta{display:flex;align-items:center;justify-content:center;margin-top:28px;width:100%;height:56px;background:#e9604a;border-radius:9999px;text-decoration:none;color:#fff;font-weight:500;font-size:18px;box-shadow:0px 10px 15px rgba(0,0,0,0.1),0px 4px 6px rgba(0,0,0,0.1);cursor:pointer;font-family: 'Avenir LT Pro 55 Roman';}
/* --- On-page quiz (no navigation) --- */
 .course-finder-quiz{display:none;background:#f9fafb;padding:80px 0 0;}
.course-finder-quiz-layout{display:flex;align-items:flex-end;justify-content:space-between;gap:128px;}
.course-finder-quiz-left{flex:0 0 480px;max-width:480px;position:sticky;top:24px;}
.course-finder-quiz-left img{width:100%;height:auto;display:block;}
.course-finder-quiz-right{flex:1;min-width:0;}
.courses-detail-main h2.cfq-title{font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:46px;line-height:60px;color:#1a1a2e;margin:0 0 16px 0;text-align:left;}
.cfq-desc{font-size:18px;line-height:29.25px;color:#6b6b6b;margin:0;max-width:720px;}
.cfq-options{margin-top:24px;display:grid;gap:20px;}
.cfq-option{width:100%;height:76px;padding:0 26px;border-radius:16px;border:2px solid #e0e0e0;background:#ffffff;cursor:pointer;display:flex;align-items:center;position:relative;font-size:16px;color:#1a1a2e;box-shadow:0px 1px 2px rgba(0,0,0,0.05);text-align:left;font-family: 'Avenir LT Pro';}
.cfq-option.active{border-color:#ff69b4;}
.cfq-option-dot{position:absolute;left:14px;top:-4px;width:8px;height:8px;border-radius:999px;background:#ff69b4;display:none;}
.cfq-option.active .cfq-option-dot{display:block;}
.cfq-next{width:100%;height:56px;border:none;background:#e9604a;border-radius:9999px;cursor:pointer;color:#ffffff;font-weight:500;font-size:18px;box-shadow:0px 10px 15px rgba(0,0,0,0.1),0px 4px 6px rgba(0,0,0,0.1);margin-top:40px;font-family: 'Avenir LT Pro 55 Roman';}
.cfq-next[disabled]{opacity:0.65;cursor:not-allowed;}
.cfq-counter{margin-top:12px;color:#e9604a;font-size:16px;font-weight:800;text-align:center;margin-bottom:30px;}
.cfq-result-card{background:#ffffff;border-radius:20px;padding:28px 24px;box-shadow:0 1px 45px 0 rgba(0,0,0,0.05);margin-bottom:80px;}
.cfq-badge{display:inline-block;background:#FFE8E3;color:#E9604A;border-radius:999px;padding:6px 24px;font-size:14px;font-weight:500;margin-bottom:12px;}
.cfq-result-title{font-family:'Josefin Sans',sans-serif;font-weight:700;font-size:32px;line-height:1.2;color:#101828;margin:12px 0;}
.cfq-result-text{font-size:16px;line-height:1.5;color:#4a5565;margin:0;}
.cfq-result-lead{font-size:16px;line-height:1.6;color:#4a5565;margin:0 0 12px 0;}
.cfq-result-bullets{margin-top:10px;margin-bottom:30px;display:flex;flex-direction:column;gap:12px;}
.cfq-bullet-row{display:flex;align-items:flex-start;gap:12px;}
.cfq-bullet-icon{width:20px;height:20px;border-radius:999px;background:#e9604a;color:#fff;display:inline-flex;justify-content:center;align-items:center;font-size:12px;flex:0 0 20px;margin-top:2px;}
.cfq-bullet-text{font-size:15px;line-height:1.5;color:#4a5565;}
.cfq-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px;}
.cfq-actions .cfq-btn-secondary,.cfq-actions .cfq-btn-primary{flex:1 1 220px;min-width:220px;}
.cfq-btn-secondary{border:1px solid #e5e7eb;background:#ffffff;color:#6B6B6B;border-radius:9999px;padding:12px 18px;cursor:pointer;font-weight:700;font-family: 'Avenir LT Pro 55 Roman';font-size:14px;}
.cfq-btn-primary{border:none;background:#e9604a;color:#fff;border-radius:9999px;padding:12px 18px;cursor:pointer;font-weight:700;font-family: 'Avenir LT Pro 55 Roman';font-size:14px;}

@media (max-width:767px){
.courses-detail-main h2.course-finder-title, .courses-detail-main h2.cfq-title{font-size: 36px;text-align: center;line-height: normal;}
.course-finder-desc, .cfq-desc{text-align: center;}
}
@media (max-width:767px){
.course-finder-layout{flex-direction:column; gap:24px;}
.course-finder-image{flex:0 0 auto; max-width:320px; width:100%;}
.course-finder-title{font-size:30px; line-height:38px;}
.course-finder-cards{grid-template-columns:1fr; gap:12px;}
.course-finder-card{min-height:110px;flex-direction:row;justify-content:center;gap:12px;}
.course-finder-cta{max-width:100%;}

.course-finder-quiz-layout{flex-direction:column; gap:24px; padding:0;}
.course-finder-quiz-left{position:relative; top:auto; flex:0 0 auto; max-width:100%;}
.cfq-title{font-size:30px; line-height:38px;}
.cfq-actions .cfq-btn-secondary,
.cfq-actions .cfq-btn-primary{flex:1 1 100%;min-width:0;}
.course-finder-card-label{margin-top: 0;}
.cfq-option{height:64px;font-size: 14px;}
.cfq-result-card{margin-bottom:30px;}
.courses-detail-main h2.course-finder-title, .courses-detail-main h2.cfq-title { font-size: 24px;text-align: center;line-height: normal;}
.course-finder-desc, .cfq-desc {text-align: center;font-size: 14px;line-height: 1.6;} 
.cfq-result-lead{font-size: 14px;}
}
/* Hero: text left, image right. Image is first in DOM for LCP, so reverse on desktop. */
.ai-ml-hero.ps-hero .container{display:flex;flex-direction:row-reverse;align-items:center;justify-content:space-between;gap:24px;position:relative;padding:48px 24px 0}
.ai-ml-hero.ps-hero .hero-left{width:58%;flex:1 1 58%;position:relative;z-index:1}
.ai-ml-hero.ps-hero .hero-right{width:42%;flex:0 1 42%;max-width:520px;position:relative!important;right:auto!important;left:auto!important;top:auto!important;bottom:auto!important;display:flex;justify-content:center;margin:0}
.ai-ml-hero.ps-hero .hero-right img{width:100%;height:auto;display:block}
.ai-ml-hero .new-design-btn{display:flex!important;flex-direction:column!important;align-items:flex-start;gap:0}
.ai-ml-hero .new-design-btn>a.btn{width:auto}
.ai-ml-hero .new-design-btn .hero-pricing-block{display:block!important;width:100%;margin-top:8px}
.ai-ml-hero .new-design-btn .hero-pricing-block p{display:block}
@media (max-width:1199px){
	.ai-ml-hero.ps-hero .container{flex-direction:column;align-items:center;padding:40px 24px 24px;text-align:center}
	.ai-ml-hero.ps-hero .hero-left,.ai-ml-hero.ps-hero .hero-right{width:100%;flex:none}
	.ai-ml-hero.ps-hero .hero-right{max-width:400px;margin:0 auto 8px}
	.ai-ml-hero.ps-hero .hero-left{max-width:640px}
	.ai-ml-hero.ps-hero h1,.ai-ml-hero.ps-hero .title-key{text-align:center}
	.ai-ml-hero.ps-hero .title-key{width:100%}
	.ai-ml-hero .new-design-btn{align-items:center;width:100%}
	.ai-ml-hero .new-design-btn .hero-pricing-block{text-align:center}
}
@media (max-width:767px){
	.ai-ml-hero.ps-hero .container{padding:24px 16px 20px}
	.ai-ml-hero.ps-hero .hero-right{max-width:280px;margin:0 auto 12px;position:static!important}
	.ai-ml-hero .new-design-btn{align-items:stretch}
	.ai-ml-hero .new-design-btn>a.btn{width:100%;justify-content:center}
	.ai-ml-hero .fixedOnMobile .hero-pricing-block{width:100%;text-align:center;margin-top:8px}
}
.hero-pricing-line {
	font-weight: 700!important;
	color: #111!important;
	margin-bottom: 0px!important;
}
.hero-pricing-gst {
	color: #888!important;
	font-weight: 400!important;
	font-size: 0.95em!important;
	margin-top: 0!important;
	margin-bottom: 0!important;
	line-height: 15px;
}
.fixedOnMobile .hero-pricing-gst:first-child {
	padding-top: 8px !important;
}
@media (max-width: 767px) {
	.new-design-btn .hero-pricing-gst:first-child {
		padding-top: 16px !important;
	}
}
/* KidSAFE seal — same placement as Art & Craft / course detail heroes */
.ps-hero .hero-img-seal-wrap{position:relative;width:100%;}
.ps-hero .hero-img-seal-wrap #ksp-seals{position:absolute !important;bottom:24px;right:-8px;width:160px;height:auto;cursor:pointer;z-index:3;}
@media (max-width:767px){
	.ps-hero .hero-img-seal-wrap #ksp-seals{bottom:8px;right:0;width:112px;height:auto;}
	.ps-hero .hero-img-seal-wrap #ksp-seals iframe,.ps-hero .hero-img-seal-wrap #ksp-seals img{width:112px!important;height:auto!important;border-radius:0!important;}
}

section.faqs .faq-accordion ul li>a i.fa,
section.faqs .faq-accordion ul li>a i.plus-icon,
section.faqs .faq-accordion ul li>a i.minus-icon{display:none!important}

/* Parents-say carousel before Slick boots (opt layout loads Slick lazily). */
.reviewFromParents.online-coding-parents-say .parents-say-carousel:not(.slick-initialized){
	display:flex;margin:0;padding:0;list-style:none;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch;
}
.reviewFromParents.online-coding-parents-say .parents-say-carousel:not(.slick-initialized) .parents-say-slide{
	flex:0 0 33.333%;max-width:33.333%;scroll-snap-align:start;box-sizing:border-box;
}
@media (max-width:1024px){
	.reviewFromParents.online-coding-parents-say .parents-say-carousel:not(.slick-initialized) .parents-say-slide{flex-basis:50%;max-width:50%;}
}
@media (max-width:767px){
	.reviewFromParents.online-coding-parents-say .parents-say-carousel:not(.slick-initialized) .parents-say-slide{flex-basis:100%;max-width:100%;}
}

/* Parents-say visuals (moved from lp-coding-theme-v5 so that file is not render-blocking here). */
.reviewFromParents.online-coding-parents-say{padding:60px 0;background:#fcfbff;}
.reviewFromParents.online-coding-parents-say .container{padding:0 24px;}
.reviewFromParents.online-coding-parents-say .parents-say-title{margin:0 0 40px 0;font-weight:700;font-size:clamp(26px,3vw,36px);line-height:1.3;color:#212121;font-family:'Avenir LT Pro',sans-serif;text-align:left;}
.reviewFromParents.online-coding-parents-say .parents-say-slider{position:relative;}
.reviewFromParents.online-coding-parents-say .parents-say-carousel{margin:0;padding:0;list-style:none;}
.reviewFromParents.online-coding-parents-say .parents-say-slide{margin:0 12px;outline:none;}
.reviewFromParents.online-coding-parents-say .parents-say-card{background:#FFFEE6;border-radius:24px;padding:28px 24px;display:flex;flex-direction:column;min-height:280px;}
.reviewFromParents.online-coding-parents-say .parents-say-head{display:flex;align-items:flex-start;gap:16px;margin-bottom:20px;position:relative;}
.reviewFromParents.online-coding-parents-say .parents-say-img-wrap{flex-shrink:0;position:relative;z-index:2;margin-top:-6px;}
.reviewFromParents.online-coding-parents-say .parents-say-img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:3px solid #f5f5d6;box-shadow:0 2px 8px rgba(0,0,0,0.1), 0 0 0 1px rgba(243,156,18,0.2);}
.reviewFromParents.online-coding-parents-say .parents-say-meta{flex:1;min-width:0;}
.reviewFromParents.online-coding-parents-say .parents-say-name{margin:0;font-weight:700;font-size:18px;line-height:normal;color:#212121;}
.reviewFromParents.online-coding-parents-say .parents-say-location-stars{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin:0;}
.reviewFromParents.online-coding-parents-say .parents-say-location{margin:0;font-weight:400;font-size:15px;color:#555;display:inline-flex;align-items:center;gap:6px;}
.reviewFromParents.online-coding-parents-say .parents-say-location .fa-map-marker{color:#e53935;font-size:14px;}
.reviewFromParents.online-coding-parents-say .parents-say-stars{display:inline-flex;align-items:center;gap:2px;font-size:16px;color:#FBBC05;}
.reviewFromParents.online-coding-parents-say .parents-say-text{flex:1;min-width:0;}
.reviewFromParents.online-coding-parents-say .parents-say-text p{margin:0;font-weight:400;font-size:15px;line-height:1.6;color:#333;text-align:left;}
.reviewFromParents.online-coding-parents-say .parents-say-text .toggle-review{font-weight:600;color:#328EEA;text-decoration:none;margin-top:0;display:inline-block;line-height:normal;}
.reviewFromParents.online-coding-parents-say .parents-say-text .toggle-review:hover{text-decoration:underline;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-prev,
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-next{width:44px;height:44px;z-index:2;border-radius:50%;background:#fff;box-shadow:0 2px 12px rgba(0,0,0,0.12);border:1px solid #E0E0E0;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-prev:hover,
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-next:hover{background:#F5F5F5;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-prev{left:0;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-next{right:0;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-prev:before,
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-next:before{color:#328EEA;font-size:18px;}
.reviewFromParents.online-coding-parents-say .parents-say-slider .slick-dots{bottom:-36px;}
@media (max-width:767px){
	.reviewFromParents.online-coding-parents-say{padding:30px 0;}
	.reviewFromParents.online-coding-parents-say .parents-say-title{margin-bottom:28px;font-size:clamp(24px,4vw,28px);text-align:center;}
	.reviewFromParents.online-coding-parents-say .parents-say-card{min-height:260px;}
}
