/*
 * Home page – courses listing styles + full-screen hero slideshow (pure CSS)
 */
 @import url('courses.css');

 /* ========== Full-screen hero – CSS-only crossfade (5 slides × 6s ≈ 30s loop) ========== */
 .hero-section.home-hero--carousel {
     position: relative;
     width: 100%;
     height: 100dvh;
     min-height: 600px;
     display: flex;
     align-items: center;
     justify-content: center;
     overflow: hidden;
     border-bottom-left-radius: 40px;
     border-bottom-right-radius: 40px;
     background-color: #000;
 }
 
 .home-hero__slides {
     position: absolute;
     top: 0;
     left: 0;
     width: 100%;
     height: 100%;
     z-index: 0;
     overflow: hidden;
 }
 
 .home-hero__slide {
     position: absolute;
     inset: 0;
     background-size: cover;
     background-position: center;
     background-repeat: no-repeat;
     opacity: 0;
     animation: homeHeroCrossfade 30s ease-in-out infinite;
 }
 
 .home-hero__slide:nth-child(1) {
     animation-delay: 0s;
 }
 
 .home-hero__slide:nth-child(2) {
     animation-delay: 6s;
 }
 
 .home-hero__slide:nth-child(3) {
     animation-delay: 12s;
 }
 
 .home-hero__slide:nth-child(4) {
     animation-delay: 18s;
 }
 
 .home-hero__slide:nth-child(5) {
     animation-delay: 24s;
 }
 
 @keyframes homeHeroCrossfade {
     0% {
         opacity: 0;
     }
     2% {
         opacity: 1;
     }
     18% {
         opacity: 1;
     }
     20% {
         opacity: 0;
     }
     100% {
         opacity: 0;
     }
 }
 
 @media (prefers-reduced-motion: reduce) {
     .home-hero__slide {
         animation: none;
         opacity: 0;
     }
 
     .home-hero__slide:first-child {
         opacity: 1;
     }
 }
 
 .hero-overlay {
     position: absolute;
     inset: 0;
     background: linear-gradient(to bottom, rgba(0, 0, 0, 0.6) 0%, rgba(0, 0, 0, 0.2) 40%, rgba(0, 0, 0, 0.85) 100%);
     z-index: 1;
     pointer-events: none;
 }
 
 .hero-content.home-hero__content {
     position: relative;
     z-index: 2;
     width: 100%;
     margin-top: 80px;
     display: flex;
     flex-direction: column;
     align-items: center;
     justify-content: center;
 }
 
 .home-hero__container {
     display: flex;
     flex-direction: column;
     align-items: center;
     width: 100%;
     padding-left: 1rem;
     padding-right: 1rem;
     box-sizing: border-box;
 }
 
 .home-hero__actions {
     display: flex;
     flex-wrap: wrap;
     gap: 0.75rem;
     justify-content: center;
     margin-bottom: 1.5rem;
 }
 
 .home-hero__btn-primary {
     padding: 15px 40px !important;
     font-size: 1.1rem;
     box-shadow: 0 8px 20px rgba(55, 189, 138, 0.4);
 }
 
 .home-hero__btn-secondary {
     background: rgba(255, 255, 255, 0.1);
     backdrop-filter: blur(10px);
     -webkit-backdrop-filter: blur(10px);
     color: #ffffff;
     border-color: rgba(255, 255, 255, 0.3);
     padding: 15px 40px;
     font-size: 1.1rem;
 }
 
 .home-hero__trust-text {
     text-align: left;
 }
 
 .home-hero__trust-line {
     display: flex;
     align-items: center;
     gap: 0.25rem;
     margin-bottom: 0.25rem;
     font-size: 0.95rem;
     line-height: 1.1;
 }
 
 .home-hero__trust-strong {
     color: #ffffff;
     font-weight: 700;
 }
 
 .home-hero__trust-meta {
     font-size: 0.85rem;
     color: #d1d5db;
     line-height: 1.1;
 }
 
 .home-hero__trust-meta--muted {
     color: #9ca3af;
     font-size: 0.85rem;
 }
 
 @media (max-width: 575px) {
     .hero-action-buttons {
         flex-direction: column;
         width: 100%;
         padding: 0 15px;
     }
 }
 
 .trust-pill {
     background: rgba(10, 10, 10, 0.65);
     backdrop-filter: blur(16px);
     -webkit-backdrop-filter: blur(16px);
     padding: 12px 25px 12px 15px;
     border-radius: 50px;
     border: 1px solid rgba(255, 255, 255, 0.15);
     transition: all 0.3s ease;
 }
 
 .home-hero__trust-pill {
     display: flex;
     align-items: center;
     gap: 0.75rem;
 }
 
 .hero-section.home-hero--carousel .trust-pill .trust-avatars {
     display: flex;
 }
 
 .hero-section.home-hero--carousel .trust-pill .trust-avatars img {
     width: 40px;
     height: 40px;
     border-radius: 50%;
     border: 2px solid #1a1a1a;
     margin-left: -15px;
     object-fit: cover;
 }
 
 .hero-section.home-hero--carousel .trust-pill .trust-avatars img:first-child {
     margin-left: 0;
 }
 
 @media (max-width: 575px) {
     .trust-pill {
         flex-direction: column;
         border-radius: 25px;
         padding: 15px 20px;
         text-align: center;
         gap: 10px !important;
     }
 
     .home-hero__trust-text {
         text-align: center;
     }
 
     .home-hero__trust-pill {
         justify-content: center;
     }
 
     .trust-pill .trust-avatars {
         margin-left: 15px;
     }
 }
 
 @media (max-width: 991px) {
     .hero-section.home-hero--carousel {
         min-height: 100dvh;
         min-height: 600px;
         height: 100dvh;
         padding-top: 0 !important;
         padding-bottom: 0 !important;
     }
 }
 
 /* What Our Students Say — dynamic testimonials */
 .home-testimonial-stars-filled {
     color: var(--brand-color);
 }
 
 .home-testimonial-stars-empty {
     color: var(--text-secondary);
     opacity: 0.45;
 }
 
 .home-testimonial-avatar-fallback {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     width: 48px;
     height: 48px;
     min-width: 48px;
     border-radius: 50%;
     background: rgba(55, 189, 138, 0.15);
     border: 1px solid rgba(55, 189, 138, 0.35);
     color: var(--brand-color);
     font-weight: 700;
     font-size: 1.1rem;
     line-height: 1;
 }
 
 /* Testimonials: first 3 visible, rest via Load more */
 .home-testimonials-block {
     width: 100%;
 }
 
 .home-testimonials-load-wrap {
     display: flex;
     justify-content: center;
     margin-top: 2rem;
     padding-top: 0.5rem;
 }
 
 .home-testimonials-load-more {
     display: inline-flex;
     align-items: center;
     justify-content: center;
     gap: 0.5rem;
     padding: 0.85rem 1.75rem;
     font-size: 0.95rem;
     font-weight: 600;
     letter-spacing: 0.02em;
     border-radius: 999px;
     border: 1px solid rgba(255, 255, 255, 0.14);
     background: rgba(255, 255, 255, 0.04);
     color: var(--text-primary);
     cursor: pointer;
     transition: border-color 0.25s ease, background 0.25s ease, box-shadow 0.25s ease, transform 0.2s ease;
     box-shadow: 0 4px 24px rgba(0, 0, 0, 0.2);
 }
 
 .home-testimonials-load-more:hover {
     border-color: rgba(55, 189, 138, 0.45);
     background: rgba(55, 189, 138, 0.08);
     box-shadow: 0 8px 32px rgba(0, 0, 0, 0.25);
 }
 
 .home-testimonials-load-more:focus-visible {
     outline: 2px solid var(--brand-color);
     outline-offset: 3px;
 }
 
 .home-testimonials-load-more:active {
     transform: scale(0.98);
 }
 
 .home-testimonials-load-more__meta {
     font-size: 0.85rem;
     font-weight: 500;
     color: var(--brand-color);
     opacity: 0.95;
 }
 
 .home-testimonials-load-more__icon {
     font-size: 0.75rem;
     opacity: 0.85;
     transition: transform 0.25s ease;
 }
 
 .home-testimonials-load-more:hover .home-testimonials-load-more__icon {
     transform: translateY(2px);
 }
 