/* ================================================================
   responsive.css — Media Query Styles
   All base styles are in custom.css
   ================================================================ */
 
/* ── Breakpoints used:
   @media (max-width: 1024px)  — Large tablet
   @media (max-width: 960px)   — Tablet
   @media (max-width: 900px)   — Tablet/small
   @media (max-width: 800px)   — Small tablet
   @media (max-width: 640px)   — Large mobile
   @media (max-width: 600px)   — Mobile
   @media (max-width: 520px)   — Small mobile
   @media (max-width: 480px)   — Small mobile
   @media (max-width: 400px)   — Extra small
   @media (max-width: 380px)   — Extra small
── */

/* ── Large tablet / small desktop (≤1100px) ── */
@media (max-width: 1100px) {
  .classes-grid {
    grid-template-columns: repeat(3, 1fr);
  }
 
  /* Row 1: all three take 1 column each */
  .classes-grid .class-card:nth-child(1) { grid-column: span 1; }
  .classes-grid .class-card:nth-child(2) { grid-column: span 1; }
  .classes-grid .class-card:nth-child(3) { grid-column: span 1; }
    .subjects-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
}
@media (max-width: 1024px) {
   .why-row { gap: 40px; }
  .collage { height: 440px; }
  .features-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}


 
@media (max-width: 960px) {
  .hero-container {
    grid-template-columns: 1fr;
    gap: 48px;
    padding: 0 32px;
    text-align: center;
  }
 
  .hero-content {
            align-items: flex-start;
  }
 
  .hero-desc {
    max-width: 560px;
  }
 
  .deco-book {
    left: 32px;
    bottom: 32px;
  }
 
  .hero-visual {
    max-width: 520px;
    margin: 0 auto;
    width: 100%;
  }
  .classes-section {
    padding: 48px 0 60px;
  }
 
  .classes-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
 
  /* All cards: 1 column span */
  .classes-grid .class-card:nth-child(n) {
    grid-column: span 1;
  }
 
  .card-title {
    font-size: 18px;
  }
   .premium-wrapper{
        flex-direction:column;
        padding:30px;
        gap:40px;
    }

    .course-card{
        width:100%;
        max-width:500px;
    }

    .premium-content{
        text-align:center;
    }

    .premium-content p{
        margin-left:auto;
        margin-right:auto;
    }
    .premium-btn a{
  display: block;
  text-align: center;
}

}

@media (max-width: 900px) {
.mission-row {
    grid-template-columns: 1fr;
  }
  .vision-card { min-height: 260px; }
 
  .values-grid {
    grid-template-columns: repeat(2, 1fr);
  }
 
  .why-row {
    grid-template-columns: 1fr;
    gap: 56px;
  }
 
  .collage {
    height: 400px;
    max-width: 500px;
    margin: 0 auto;
  }
 
  .why-content {
    transform: translateY(28px);
  }
  .hero-row {
    flex-direction: column;
    align-items: flex-start;
    gap: 48px;
  }
 
  .hero-content {
    max-width: 100%;
  }
 
  .hero-image-wrap {
    width: 260px;
    height: 260px;
    align-self: center;
    display: none;
  }
 
  .image-card {
    width: 240px;
    height: 240px;
  }
 
  .yellow-blob {
    width: 220px;
    height: 220px;
  }
  .cards-grid {
    grid-template-columns: 1fr;
    max-width: 100%;
    margin-left: auto;
    margin-right: auto;
    gap: 24px;
  }
 
  .card--center {
    box-shadow: none;
  }
   .cards-wrapper {
    grid-template-columns: 1fr;
    max-width: 480px;
    margin: 0 auto;
    gap: 20px;
  }
 
  .card--center {
    padding: 32px 28px;
  }

  .cards-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
  }
 
  .card {
    padding: 24px 22px 28px 22px;
  }
 
  .card-title {
    font-size: 16px;
  }
 
  .card-desc {
    font-size: 13px;
  }
  .lp-page-title {
    font-size: 26px;
  }
 
  .lp-video-thumb {
    height: 380px;
  }
 
  .lp-about-box {
    padding: 28px 28px 24px;
  }
 
  .lp-meta-row {
    gap: 0;
    padding: 16px 20px;
  }
 
  .lp-meta-value {
    font-size: 14px;
  }
  .main-layout {
    grid-template-columns: 1fr;
  }

  .sidebar {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  }


}

@media (max-width: 800px) {

   .login-card {
    grid-template-columns: 1fr;
    border-radius: 20px;
    min-height: unset;
  }
 
  .left-panel {
    padding: 36px 28px 36px;
    border-radius: 0;
  }
 
  .left-image-wrap {
    max-width: 200px;
    margin-bottom: 20px;
  }
 
  .left-title {
    font-size: 20px;
  }
 
  .right-panel {
    padding: 36px 28px 32px;
  }
  }




/* ── Tablet (≤768px) ── */
@media (max-width: 768px) {
  .container {
    padding: 0 24px;
  }
 
  .subjects-section {
    padding: 48px 0 60px;
  }
 
  .subjects-grid {
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
  }
 
  .card-title {
    font-size: 19px;
  }
 
  .card-desc {
    font-size: 13px;
  }
 
  .subject-card {
    padding: 22px 18px 20px;
    gap: 12px;
  }
 
  .card-icon-wrap {
    width: 52px;
    height: 52px;
  }
 
  .card-icon-wrap svg {
    width: 24px;
    height: 24px;
  }
  .quiz-question{
        font-size: 19px;
  }
  .options-grid{
        grid-template-columns: 1fr;
        gap: 10px;
  }
  .option-box{
        font-size: 15px;
  }
  .quiz-card{
        padding:40px 20px;
        border-radius:20px;
    }

    .icon-box img{
        width:50px;
        height:50px;
    }

    .quiz-card h2{
        font-size:28px;
        line-height:1.4;
    }

    .quiz-card p{
        font-size:15px;
        line-height:1.7;
        margin-bottom:25px;
    }

    .quiz-card button{
        width:100%;
        max-width:250px;
        padding:15px 25px;
        font-size:16px;
    }
     .premium-wrapper{
        border-radius:25px;
        padding:25px;
    }

    .course-image{
        height:220px;
    }

    .course-content h3{
        font-size:20px;
    }

    .course-content li{
        font-size:16px;
    }

    .premium-content h2{
        font-size:26px;
    }

    .premium-content p{
        font-size:16px;
        line-height:1.7;
    }

    .price{
        font-size:35px;
    }

    .year{
        font-size:16px;
    }
    .premium-btn{
      margin-top: 10px;
    }
}



@media (max-width: 700px) {

 
  .lp-page-title {
    font-size: 22px;
    margin-bottom: 20px;
  }
 
  /* Tabs scroll horizontally */
  .lp-tabs {
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    gap: 0;
  }
 
  .lp-tabs::-webkit-scrollbar {
    display: none;
  }
 
  .lp-tab {
    font-size: 13px;
    padding: 10px 16px 12px;
    white-space: nowrap;
  }
 
  .lp-tab-divider {
    margin-bottom: 20px;
  }
 
  /* Video */
  .lp-video-wrap {
    border-radius: 14px;
  }
 
  .lp-video-thumb {
    height: 260px;
  }
 
  .lp-play-btn {
    width: 58px;
    height: 58px;
  }
 
  .lp-play-btn svg {
    width: 22px;
    height: 22px;
  }
 
  /* About box */
  .lp-about-box {
    padding: 22px 20px 20px;
    border-radius: 16px;
    margin-bottom: 28px;
  }
 
  .lp-about-title {
    font-size: 19px;
  }
 
  .lp-about-text {
    font-size: 13.5px;
    margin-bottom: 20px;
  }
 
  /* Meta row — stack into single column */
  .lp-meta-row {
    grid-template-columns: 1fr;
    gap: 0;
    padding: 0;
    background: transparent;
    border: none;
    border-radius: 0;
    display: flex;
    flex-direction: column;
  }
 
  .lp-meta-item {
    padding: 14px 0;
    border-bottom: 1.5px solid #e8edf7;
  }
 
  .lp-meta-item:last-child {
    border-bottom: none;
    padding-bottom: 0;
  }
 
  .lp-meta-divider {
    display: none;
  }
 
  /* Resources */
  .lp-resources-title {
    font-size: 19px;
    margin-bottom: 14px;
  }
 
  .lp-resources-grid {
    grid-template-columns: 1fr;
    gap: 12px;
  }
 
  .lp-resource-card {
    padding: 16px 18px;
    border-radius: 14px;
  }
}

@media (max-width: 640px) {


 .container {
    padding: 0 20px;
  }
 
  .why-section,
  .classes-section {
    padding: 56px 0 64px;
  }
 
  .features-grid {
    grid-template-columns: 1fr 1fr;
    gap: 16px;
    margin-top: 32px;
  }
 
  .feature-card {
    padding: 28px 16px 24px;
    gap: 12px;
  }
 
  .icon-wrap {
    width: 52px;
    height: 52px;
  }
 
  .icon-wrap svg {
    width: 22px;
    height: 22px;
  }
 
  .feature-title {
    font-size: 14px;
  }
 
  .feature-desc {
    font-size: 12px;
  }
 
  .section-sub br {
    display: none;
  }
 
  .card-body {
    padding: 22px 20px;
  }



}


 
@media (max-width: 600px) {
  .hero {
    padding: 60px 0 80px;
  }
 
  .hero-container {
    padding: 0 20px;
    gap: 36px;
  }
 
  .hero-title {
    font-size: 2rem;
  }
 
  .hero-actions {
    justify-content: center;
  }
 
  .btn {
    padding: 12px 24px;
    font-size: 0.875rem;
  }
 
  .deco-cap svg {
    width: 52px;
    height: 52px;
  }
 
  .badge-students {
    bottom: -8px;
    left: 0px;
    padding: 14px 18px;
  }
 
  .badge-students .stat-number {
    font-size: 1.4rem;
  }
 
  .deco-book {
    display: none;
  }
  .classes-section {
    padding: 36px 0 48px;
  }
 
  .classes-grid {
    grid-template-columns: 1fr 1fr;
    gap: 14px;
  }
 
  .class-card {
    padding: 18px 16px 0;
    border-radius: 14px;
    gap: 8px;
  }
 
  .card-icon-wrap {
    width: 42px;
    height: 42px;
    border-radius: 10px;
  }
 
  .card-icon-wrap svg {
    width: 20px;
    height: 20px;
  }
 
  .card-bg-icon {
    width: 56px;
    height: 56px;
  }
 
  .card-label {
    font-size: 10px;
  }
 
  .card-title {
    font-size: 15px;
  }
 
  .card-subjects {
    font-size: 11px;
    gap: 5px;
  }
 
  .card-btn {
    font-size: 12px;
    padding: 10px 14px;
  }
 
  .card-footer-bar {
    margin: 8px -16px 0;
  }
  .page-wrap-login{
  padding: 40px 0;
}
 .container { padding: 0 20px; }
 
  .mission-section,
  .why-section { padding: 56px 0 64px; }
 
  .mission-card { padding: 28px 22px; }
  .mission-title { font-size: 22px; }
 
  .values-grid {
    grid-template-columns: 1fr 1fr;
    gap: 14px;
  }
 
  .value-card { padding: 22px 16px; }
  .value-title { font-size: 14px; }
 
  .collage { height: 320px; display: none; }
  .float-card { display: none; }
 
  .why-title { font-size: 24px; }
  .why-intro { font-size: 14px; }
   .container {
    padding: 0 20px;
  }
 
  .hero-inner {
    padding: 40px 0 48px;
  }
 
  .hero-title {
    font-size: 28px;
  }
 
  .hero-sub {
    font-size: 14px;
  }
 
  .hero-image-wrap {
    width: 220px;
    height: 220px;
  }
 
  .image-card {
    width: 200px;
    height: 200px;
    border-radius: 18px;
  }
 
  .yellow-blob {
    width: 185px;
    height: 185px;
  }
  .cta-banner {
    padding: 44px 24px;
    gap: 16px;
    border-radius: 16px;
  }
 
  .cta-title {
    font-size: 26px;
  }
 
  .cta-subtitle {
    font-size: 13px;
  }
 
  .cta-subtitle br {
    display: none;
  }
 
  .cta-btn {
    padding: 14px 40px;
    font-size: 15px;
  }
   .chapter-header {
    padding: 20px;
  }

  .chapter-price {
    text-align: left;
  }

  .options-grid {
    grid-template-columns: 1fr;
  }

  .sidebar {
    grid-template-columns: 1fr;
  }

  .quiz-panel {
    padding: 20px;
  }

  .congrats-card {
    padding: 36px 24px 32px;
  }

  .chapter-price {
    text-align: left;
  }

  .review-options {
    grid-template-columns: 1fr;
  }

  .sidebar {
    grid-template-columns: 1fr;
  }

  .review-card {
    padding: 20px;
  }
}

/* ── Large mobile (≤580px): single column ── */
@media (max-width: 580px) {
  .container {
    padding: 0 16px;
  }
 
  .subjects-section {
    padding: 36px 0 48px;
  }
 
  .subjects-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
 
  .subject-card {
    padding: 24px 20px 20px;
    border-radius: 16px;
  }
 
  .card-title {
    font-size: 20px;
  }
 
  .card-desc {
    font-size: 14px;
  }
 
  .card-btn {
    font-size: 13px;
    padding: 10px 20px;
  }
 
  .card-tag {
    font-size: 12px;
    padding: 8px 16px;
  }
   .cta-section{
    padding: 48px 20px;
  }
    .testimonials-section{
      padding: 48px 0 60px;
      
    }
      .cards-grid {
    grid-template-columns: 1fr;
    gap: 16px;
  }
 
  .card {
    padding: 22px 20px 26px 20px;
    border-radius: 16px;
  }
 
  .card-icon {
    width: 60px;
    height: 60px;
    margin-bottom: 18px;
  }
 
  .icon-badge {
    width: 60px;
    height: 60px;
    font-size: 20px;
  }
 
  .card-title {
    font-size: 15.5px;
    margin-bottom: 10px;
  }
 
  .card-desc {
    font-size: 13px;
    margin-bottom: 22px;
  }
 
  .card-btn {
    padding: 13px 18px;
    font-size: 13.5px;
  }
  #chapter{
  padding: 40px 0 0;
}

  .lp-breadcrumb {
    font-size: 12px;
  }
 
  .lp-page-title {
    font-size: 20px;
    letter-spacing: 0;
  }
 
  .lp-video-thumb {
    height: 210px;
  }
 
  .lp-play-btn {
    width: 52px;
    height: 52px;
  }
 
  .lp-play-btn svg {
    width: 18px;
    height: 18px;
  }
 
  .lp-module-tag {
    font-size: 10px;
    padding: 4px 12px;
  }
 
  .lp-about-title {
    font-size: 17px;
  }
 
  .lp-about-text {
    font-size: 13px;
    line-height: 1.75;
  }
 
  .lp-meta-label {
    font-size: 10px;
  }
 
  .lp-meta-value {
    font-size: 14px;
  }
 
  .lp-resource-icon {
    width: 42px;
    height: 42px;
    border-radius: 10px;
  }
 
  .lp-resource-name {
    font-size: 13.5px;
  }
 
  .lp-resource-meta {
    font-size: 12px;
  }
  #chapter-details{
    padding: 48px 0px;
  }
}

/* ── Small mobile (≤480px) ── */
@media (max-width: 480px) {
  .classes-grid {
    grid-template-columns: 1fr;
  }
 
  .classes-grid .class-card:nth-child(n) {
    grid-column: span 1;
  }
 
  .class-card {
    padding: 20px 20px 0;
  }
 
  .card-footer-bar {
    margin: 10px -20px 0;
  }
  body {
    padding: 24px 12px;
  }
 
  .right-panel {
    padding: 28px 20px 28px;
  }
 
  .form-title {
    font-size: 22px;
  }
 
  .login-card {
    border-radius: 16px;
  }
 
  .bg-icon { display: none; }
  .card-title {
    font-size: 14.5px;
  }
 
  .card-btn {
    font-size: 13px;
    padding: 12px 16px;
  }
  .values-grid { grid-template-columns: 1fr; }
  .features-grid {
    grid-template-columns: 1fr;
  }
  .container {
    padding: 0 16px;
  }
 
  .section-title {
    font-size: 24px;
    margin-bottom: 32px;
  }
 
  .card {
    padding: 24px 20px;
    border-radius: 16px;
  }
 
  .stars {
    font-size: 20px;
  }
 
  .review {
    font-size: 13px;
  }
 
  .avatar {
    width: 44px;
    height: 44px;
  }
   .lp-page-title {
    font-size: 18px;
  }
 
  .lp-video-thumb {
    height: 185px;
  }
 
  .lp-about-title {
    font-size: 16px;
  }
 
  .lp-about-text {
    font-size: 12.5px;
  }
 
  .lp-resources-title {
    font-size: 17px;
  }
 
  .lp-tab {
    font-size: 12px;
    padding: 9px 13px 11px;
  }
  .quiz-question{
            font-size: 17px;
            line-height: 1.3;
  }
  .option-box{
    padding: 12px 24px;
  }
  .progress-counter, .progress-counter .current{
    font-size: 20px;
  }
  .quiz-card h2{
        font-size:24px;
    }

    .quiz-card p{
        font-size:14px;
    }

    .quiz-card button{
        font-size:15px;
    }
     .premium-content h2{
        font-size:26px;
    }

    .pricing-box{
        width:100%;
    }

    .price-row{
        justify-content:center;
    }

    .course-content{
        padding:20px;
    }
}
 
@media (max-width: 380px) {
  .hero-title { font-size: 1.75rem; }
  .hero-actions { flex-direction: column; width: 100%; }
  .btn { width: 100%; }
  .card-icon-wrap {
    width: 46px;
    height: 46px;
  }
 
  .card-title {
    font-size: 18px;
  }
 
  .card-footer--tags {
    gap: 8px;
  }
    .cta-title {
    font-size: 22px;
  }
 
  .cta-banner {
    padding: 36px 18px;
  }
  .card-title {
    font-size: 14.5px;
  }
 
  .card-btn {
    font-size: 13px;
    padding: 12px 16px;
  }
}















 

 

 



 
