.cc-single-course,
.cc-single-school,
.cc-listing-page,
.cc-reviews-page{box-sizing:border-box;width:100%;min-width:0;max-width:1100px;margin:0 auto;padding:20px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;color:#333;}
.cc-breadcrumbs ol{display:flex;flex-wrap:wrap;list-style:none;padding:0;margin:0 0 20px;font-size:13px;}
.cc-breadcrumbs li:not(:last-child)::after{content:" / ";margin:0 6px;color:#999;}
.cc-breadcrumbs a{color:#3366cc;text-decoration:none;}
.cc-section{margin:40px 0;padding:25px 0;border-bottom:1px solid #eee;}
.cc-section h2{font-size:22px;margin-bottom:20px;}
.cc-course-header{background:#f8f9fa;padding:30px;border-radius:12px;margin-bottom:30px;}
.cc-course-header__main{display:flex;align-items:center;gap:15px;margin-bottom:15px;flex-wrap:wrap;}
.cc-course-school-logo img{border-radius:8px;}
.cc-course-title{font-size:28px;margin:10px 0;}
.cc-course-subtitle{font-size:16px;color:#555;line-height:1.5;}
.cc-course-meta{display:flex;gap:30px;margin:20px 0;flex-wrap:wrap;}
.cc-meta-label{display:block;font-size:12px;color:#999;text-transform:uppercase;}
.cc-meta-value{font-size:16px;font-weight:600;}
.cc-rating-badge{display:inline-block;background:#4caf50;color:#fff;padding:4px 10px;border-radius:6px;font-weight:bold;font-size:16px;}
.cc-tag{display:inline-block;background:#e8f0fe;padding:4px 10px;border-radius:4px;font-size:13px;margin:3px 4px 3px 0;}
.cc-tag-link{display:inline-block;background:#e8f0fe;padding:6px 14px;border-radius:20px;font-size:13px;margin:4px;text-decoration:none;color:#3366cc;transition:background 0.2s;}
.cc-tag-link:hover{background:#d0e1fd;}
.cc-course-price-block{margin-top:20px;padding-top:20px;border-top:1px solid #ddd;}
.cc-price-current{font-size:28px;font-weight:bold;color:#222;}
.cc-price-old{font-size:18px;text-decoration:line-through;color:#999;margin-left:10px;}
.cc-price-installment{font-size:16px;color:#555;margin-top:5px;}
.cc-promo-code, .cc-promo-block{background:#fffde7;border:1px dashed #ffc107;padding:10px 15px;border-radius:6px;margin:10px 0;display:inline-block;}
.cc-btn{display:inline-block;padding:10px 24px;border-radius:8px;font-size:14px;font-weight:600;text-decoration:none;cursor:pointer;transition:all 0.2s;border:1px solid #ddd;background:#fff;color:#333;}
.cc-btn-primary{background:#3366cc;color:#fff;border-color:#3366cc;}
.cc-btn-primary:hover{background:#2255bb;color:#fff;}
.cc-btn-large{padding:14px 40px;font-size:16px;}
.cc-proscons{display:flex;gap:30px;flex-wrap:wrap;}
.cc-pros, .cc-cons{flex:1;min-width:250px;}
.cc-pros ul li::before{content:"✓ ";color:#4caf50;}
.cc-cons ul li::before{content:"✗ ";color:#f44336;}
.cc-pros ul, .cc-cons ul{list-style:none;padding:0;}
.cc-pros ul li, .cc-cons ul li{padding:4px 0;}
.cc-course-nav{position:sticky;top:0;background:#fff;border-bottom:1px solid #eee;z-index:100;padding:10px 0;}
.cc-course-nav ul{display:flex;gap:20px;list-style:none;padding:0;margin:0;overflow-x:auto;}
.cc-course-nav a{text-decoration:none;color:#555;font-size:14px;white-space:nowrap;padding:5px 0;}
.cc-course-nav a:hover{color:#3366cc;}
.cc-program-module{padding:15px;margin:10px 0;background:#f9f9f9;border-left:3px solid #3366cc;border-radius:4px;}
.cc-program-module h4{margin:0 0 8px;}
.cc-expert{display:flex;gap:15px;align-items:center;margin-top:20px;padding:15px;background:#f0f7ff;border-radius:8px;}
.cc-expert-photo{border-radius:50%;width:50px;height:50px;}
.cc-faq-item{border-bottom:1px solid #eee;padding:15px 0;}
.cc-faq-question{cursor:pointer;font-size:16px;margin:0;}
.cc-faq-answer{margin-top:10px;color:#555;}
.cc-review-card{border:1px solid #e0e0e0;border-radius:10px;padding:20px;margin:15px 0;background:#fff;}
.cc-review-header{display:flex;gap:15px;align-items:center;flex-wrap:wrap;margin-bottom:12px;}
.cc-review-city{color:#999;font-size:13px;}
.cc-review-date{color:#999;font-size:13px;}
.cc-review-rating{color:#ff9800;font-weight:bold;}
.cc-review-section{margin:10px 0;line-height:1.5;}
.cc-review-actions{display:flex;gap:15px;margin-top:10px;font-size:14px;}
.cc-course-card{border:1px solid #e0e0e0;border-radius:12px;padding:20px;margin:15px 0;background:#fff;transition:box-shadow 0.2s;}
.cc-course-card:hover{box-shadow:0 4px 16px rgba(0, 0, 0, 0.08);}
.cc-card-header{display:flex;gap:10px;align-items:center;margin-bottom:10px;}
.cc-card-school-logo{border-radius:6px;}
.cc-card-school-name{font-weight:600;font-size:14px;}
.cc-card-school-rating{background:#4caf50;color:#fff;padding:2px 6px;border-radius:4px;font-size:12px;font-weight:bold;}
.cc-card-reviews{color:#999;font-size:12px;}
.cc-card-title{margin:0 0 8px;font-size:18px;}
.cc-card-title a{color:#222;text-decoration:none;}
.cc-card-title a:hover{color:#3366cc;}
.cc-info-icon{font-size:14px;text-decoration:none;margin-left:5px;vertical-align:middle;}
.cc-card-description{font-size:14px;color:#555;margin:0 0 12px;line-height:1.5;}
.cc-card-meta{display:flex;gap:15px;flex-wrap:wrap;margin-bottom:12px;}
.cc-card-meta-item{font-size:13px;color:#666;}
.cc-card-price{margin:12px 0;}
.cc-card-monthly{font-size:18px;font-weight:bold;color:#222;}
.cc-card-price-value{font-size:14px;color:#666;margin-left:10px;}
.cc-card-discount{background:#ff5722;color:#fff;padding:2px 8px;border-radius:4px;font-size:12px;font-weight:bold;margin-left:5px;}
.cc-card-price-free{font-size:18px;font-weight:bold;color:#4caf50;}
.cc-card-promo{background:#fffde7;border:1px dashed #ffc107;padding:5px 10px;border-radius:4px;display:inline-block;font-size:13px;margin:5px 0;}
.cc-promo-label{font-size:11px;text-transform:uppercase;color:#999;margin-right:5px;}
.cc-card-proscons{font-size:13px;margin:10px 0;}
.cc-card-pros ul, .cc-card-cons ul{list-style:none;padding:0;margin:4px 0;}
.cc-card-pros li::before{content:"✓ ";color:#4caf50;}
.cc-card-cons li::before{content:"✗ ";color:#f44336;}
.cc-card-actions{margin-top:15px;}
.cc-courses-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(300px, 1fr));gap:20px;}
.cc-who-fits-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:20px;}
.cc-teachers-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(250px, 1fr));gap:15px;}
.cc-teacher-card{display:flex;gap:12px;align-items:center;padding:10px;background:#f9f9f9;border-radius:8px;}
.cc-teacher-photo{border-radius:50%;width:50px;height:50px;}
.cc-spec-table, .cc-salary-table, .cc-courses-table{width:100%;border-collapse:collapse;margin:15px 0;}
.cc-spec-table th, .cc-spec-table td,
.cc-salary-table th, .cc-salary-table td,
.cc-courses-table th, .cc-courses-table td{padding:10px 15px;border:1px solid #eee;text-align:left;}
.cc-spec-table th, .cc-salary-table th, .cc-courses-table th{background:#f5f5f5;font-weight:600;}
.cc-reviews-page{display:flex;gap:30px;}
.cc-reviews-main{flex:1;}
.cc-sidebar{width:300px;flex-shrink:0;}
.cc-reviews-stats{display:flex;gap:15px;align-items:center;margin:15px 0;}
.cc-mini-card{display:flex;gap:10px;align-items:center;padding:10px;border-bottom:1px solid #eee;}
.cc-mini-card a{color:#333;text-decoration:none;font-size:13px;}
.cc-school-header{display:flex;gap:20px;align-items:center;margin-bottom:20px;}
.cc-school-logo{border-radius:12px;}
.cc-school-info-block{display:flex;gap:15px;align-items:center;background:#f8f9fa;padding:20px;border-radius:10px;margin-bottom:20px;}
.cc-cta-bottom{text-align:center;padding:30px;margin:30px 0;}
.cc-gallery{display:flex;gap:10px;flex-wrap:wrap;}
.cc-gallery img{border-radius:8px;max-height:150px;object-fit:cover;}
.cc-pagination{margin:30px 0;text-align:center;}
.cc-pagination .page-numbers{padding:8px 14px;margin:0 3px;border:1px solid #ddd;border-radius:4px;text-decoration:none;color:#333;}
.cc-pagination .page-numbers.current{background:#3366cc;color:#fff;border-color:#3366cc;}
.cc-promo-inline{font-size:13px;color:#ff9800;}
@media (max-width: 768px) {
.cc-reviews-page{flex-direction:column;}
.cc-sidebar{width:100%;}
.cc-proscons{flex-direction:column;}
.cc-course-meta{flex-direction:column;gap:10px;}
.cc-course-header{padding:15px;}
} :root{--cc-primary:#3366cc;--cc-primary-hover:#2255bb;--cc-primary-50:#e8f0fe;--cc-primary-100:#d0e1fd;--cc-green:#4caf50;--cc-green-bg:#e9f7ea;--cc-red:#f44336;--cc-orange:#ff9800;--cc-accent:#ff5722;--cc-promo-bg:#fffde7;--cc-promo-bd:#ffc107;--cc-ink:#1a1a2e;--cc-muted:#777;--cc-line:#e6e8ec;--cc-bg-soft:#f8f9fa;--cc-r-sm:6px;--cc-r-md:8px;--cc-r-lg:12px;--cc-sh-2:0 4px 16px rgba(16,24,40,.08);--cc-sh-3:0 8px 28px rgba(16,24,40,.12);}
.cc-course-v2{max-width:1200px;}
.cc-course-main{min-width:0;}
.cc-offer-bar{max-width:340px;margin-bottom:24px;}
.cc-offer-bar .cc-offer{position:static;}
@media(max-width:600px){
.cc-offer-bar{max-width:none;}
} .cc-hero{background:var(--cc-bg-soft);border-radius:var(--cc-r-lg);padding:28px 30px;margin-bottom:24px;}
.cc-hero__top{display:flex;align-items:center;gap:14px;flex-wrap:wrap;font-size:14px;color:#444;}
.cc-hero__logo{border-radius:var(--cc-r-md);}
.cc-hero__school{font-weight:600;color:var(--cc-primary);text-decoration:none;}
.cc-hero__rating{display:inline-flex;align-items:center;gap:6px;}
.cc-hero__rating b{color:var(--cc-ink);}
.cc-updated{color:var(--cc-muted);font-size:13px;margin-left:auto;}
.cc-course-v2 .cc-course-title{font-size:30px;line-height:1.2;margin:14px 0 8px;color:var(--cc-ink);}
.cc-course-subtitle{font-size:16px;color:#555;line-height:1.5;margin:0;}
.cc-badges{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.cc-badge{display:inline-flex;align-items:center;gap:6px;background:var(--cc-green-bg);color:#256029;border-radius:20px;padding:5px 12px;font-size:13px;font-weight:600;}
.cc-badge--start{background:#fff3e0;color:#a85600;}
.cc-badge--sale{background:#ffebe6;color:#c4320a;}
.cc-stars{position:relative;display:inline-block;font-size:15px;letter-spacing:2px;line-height:1;}
.cc-stars__off{color:#dcdfe4;}
.cc-stars__on{position:absolute;left:0;top:0;overflow:hidden;white-space:nowrap;color:var(--cc-orange);}
.cc-factbar{display:grid;grid-template-columns:repeat(auto-fit,minmax(130px,1fr));gap:1px;background:var(--cc-line);border:1px solid var(--cc-line);border-radius:var(--cc-r-lg);overflow:hidden;margin:0 0 24px;}
.cc-fact{background:#fff;padding:14px 16px;}
.cc-fact span{display:block;font-size:11px;text-transform:uppercase;letter-spacing:.04em;color:var(--cc-muted);}
.cc-fact b{font-size:15px;color:var(--cc-ink);}
@media(max-width:767px){.cc-factbar{grid-template-columns:1fr 1fr;}}
.cc-course-tags{margin:0 0 20px;}
.cc-tag--tool{background:#f0f0f5;}
.cc-course-v2 .cc-section{border-bottom:none;border-top:1px solid var(--cc-line);margin:0;padding:28px 0;}
.cc-course-v2 .cc-section:first-of-type{border-top:none;}
.cc-course-v2 .cc-section h2{font-size:24px;font-weight:800;color:var(--cc-ink);letter-spacing:-.01em;}
.cc-course-v2 p,.cc-course-v2 li{line-height:1.65;}
.cc-editorial-head{display:flex;align-items:center;gap:16px;justify-content:space-between;}
.cc-ring{--p:0;width:72px;height:72px;border-radius:50%;flex:none;background:conic-gradient(var(--cc-green) calc(var(--p)*1%),#e8eaed 0);display:grid;place-items:center;}
.cc-ring__hole{width:56px;height:56px;border-radius:50%;background:#fff;display:grid;place-items:center;line-height:1;}
.cc-ring__hole b{font-size:20px;color:var(--cc-ink);}
.cc-ring__hole small{color:var(--cc-muted);}
.cc-verdict{margin-top:14px;padding:12px 16px;background:var(--cc-primary-50);border-radius:var(--cc-r-md);}
.cc-expert-label{display:block;color:var(--cc-green);font-weight:600;font-size:12px;}
.cc-module{border:1px solid var(--cc-line);border-radius:var(--cc-r-md);margin:8px 0;overflow:hidden;}
.cc-module>summary{display:flex;align-items:center;gap:12px;padding:14px 16px;cursor:pointer;font-weight:600;color:var(--cc-ink);list-style:none;}
.cc-module>summary::-webkit-details-marker{display:none;}
.cc-module>summary::after{content:"＋";margin-left:auto;color:var(--cc-primary);font-size:18px;}
.cc-module[open]>summary::after{content:"−";}
.cc-module__n{width:26px;height:26px;border-radius:50%;background:var(--cc-primary-50);color:var(--cc-primary);display:grid;place-items:center;font-size:13px;flex:none;}
.cc-module__body{padding:0 16px 16px 54px;color:#555;line-height:1.6;}
.cc-inline-cta{margin-top:18px;text-align:center;}
.cc-rsummary{display:grid;grid-template-columns:160px 1fr;gap:24px;align-items:center;background:var(--cc-bg-soft);border-radius:var(--cc-r-lg);padding:20px;margin-bottom:20px;}
.cc-rsummary__score{text-align:center;}
.cc-rsummary__score b{font-size:42px;line-height:1;color:var(--cc-ink);display:block;}
.cc-rsummary__score span{display:block;color:var(--cc-muted);font-size:13px;margin-top:4px;}
.cc-rbar{display:grid;grid-template-columns:32px 1fr 32px;align-items:center;gap:8px;margin:3px 0;font-size:13px;}
.cc-rbar i{display:block;height:8px;background:#e8eaed;border-radius:4px;overflow:hidden;}
.cc-rbar b{display:block;height:100%;background:var(--cc-orange);}
.cc-rbar em{color:var(--cc-muted);font-style:normal;text-align:right;}
@media(max-width:767px){.cc-rsummary{grid-template-columns:1fr;text-align:center;}}
.cc-review-pros{color:#1d6b2a;}
.cc-review-cons{color:#9a2820;}
.cc-offer{background:#fff;border:1px solid var(--cc-line);border-radius:var(--cc-r-lg);box-shadow:var(--cc-sh-2);padding:20px;position:sticky;top:88px;}
.cc-offer__mo{font-size:26px;font-weight:800;color:var(--cc-ink);}
.cc-offer__full{margin-top:4px;color:var(--cc-muted);font-size:14px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.cc-offer__full b{color:var(--cc-ink);font-size:16px;font-weight:700;}
.cc-offer__full s{color:#aaa;}
.cc-badge-discount{background:var(--cc-accent);color:#fff;border-radius:var(--cc-r-sm);padding:2px 8px;font-size:12px;font-weight:700;}
.cc-offer__promo{background:var(--cc-promo-bg);border:1px dashed var(--cc-promo-bd);border-radius:var(--cc-r-md);padding:8px 12px;margin:14px 0;font-size:13px;display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.cc-copy{border:0;background:none;cursor:pointer;font:inherit;padding:0;}
.cc-copy code{font-family:monospace;font-weight:700;color:var(--cc-ink);border-bottom:1px dotted #bbb;}
.cc-copy.is-copied::after{content:" ✓";color:var(--cc-green);}
.cc-btn-block{display:block;width:100%;text-align:center;box-sizing:border-box;}
.cc-offer .cc-btn-primary{padding:14px;font-size:16px;margin:6px 0 14px;}
.cc-offer__trust{list-style:none;padding:0;margin:0;display:grid;gap:6px;font-size:13px;color:#444;}
.cc-offer__note{margin:12px 0 0;font-size:12px;color:var(--cc-muted);text-align:center;}
.cc-carousel{display:grid;grid-auto-flow:column;grid-auto-columns:300px;gap:20px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:10px;}
.cc-carousel>.cc-course-card{scroll-snap-align:start;margin:0;}
.cc-mobile-cta{display:none;}
@media(max-width:767px){
.cc-mobile-cta{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:200;gap:12px;align-items:center;justify-content:space-between;background:#fff;border-top:1px solid var(--cc-line);box-shadow:0 -4px 16px rgba(16,24,40,.12);padding:10px 16px;transform:translateY(100%);transition:transform .25s ease;}
.cc-mobile-cta.is-visible{transform:translateY(0);}
.cc-mobile-cta .cc-btn{padding:12px 22px;white-space:nowrap;}
.cc-mobile-cta__price b{font-size:17px;color:var(--cc-ink);}
body.cc-has-mobilecta{padding-bottom:72px;}
.cc-course-v2 .cc-course-title{font-size:24px;}
} .cc-listing-intro{color:#555;line-height:1.6;margin:0 0 24px;}
.cc-offline-schools .cc-branches{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px;}
.cc-branch-card{display:flex;gap:12px;border:1px solid var(--cc-line);border-radius:var(--cc-r-lg);padding:14px;background:#fff;}
.cc-branch-card img{border-radius:var(--cc-r-md);flex:none;}
.cc-branch-name{font-weight:600;color:var(--cc-primary);text-decoration:none;}
.cc-branch-rating{color:var(--cc-orange);font-size:13px;margin-left:6px;}
.cc-branch-addr,.cc-branch-phone{font-size:13px;color:#555;margin-top:4px;}
.cc-city-links{display:flex;flex-wrap:wrap;gap:6px 14px;list-style:none;padding:0;}
.cc-city-links a{color:var(--cc-primary);text-decoration:none;font-size:14px;}
.cc-cities-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:24px;}
.cc-cities-group{display:flex;gap:12px;}
.cc-cities-letter{font-size:22px;font-weight:800;color:var(--cc-primary-100);flex:none;}
.cc-cities-group ul{list-style:none;padding:0;margin:0;}
.cc-cities-group a{color:#333;text-decoration:none;font-size:14px;line-height:1.9;}
.cc-cities-group a:hover{color:var(--cc-primary);}