/* APOTAC FINAL RESPONSIVE / LAYOUT SAFETY LAYER
 * Keeps existing content intact while normalising desktop, tablet and mobile layout.
 */
html,body{width:100%;max-width:100%;overflow-x:hidden!important}
body{min-width:320px}
*,*:before,*:after{box-sizing:border-box}
img,svg,video,iframe{max-width:100%;height:auto}
table{max-width:100%;display:block;overflow-x:auto}
.site-main{width:100%;max-width:100%;min-width:0;overflow-x:clip}
.container{width:min(1180px,calc(100% - 40px));max-width:100%;min-width:0}
section,article,aside,header,footer,main,nav,div{min-width:0}

/* Header */
.site-header{width:100%;overflow:visible}
.header-inner{width:min(1180px,calc(100% - 40px));max-width:100%;min-width:0}
.primary-nav{min-width:0}
.primary-nav ul{flex-wrap:wrap}

/* Main course pages */
.main-course-page{width:100%;max-width:100%;overflow-x:clip}
.course-hero{width:100%;overflow:hidden}
.course-hero-grid{grid-template-columns:minmax(0,1.08fr) minmax(320px,.92fr)}
.course-hero-copy,.course-hero-panel{min-width:0}
.course-hero h1,.course-lead,.course-hero-panel,.course-snapshot{max-width:100%}
.course-hero-panel{overflow:hidden}
.course-snapshot{grid-template-columns:repeat(2,minmax(0,1fr))}
.course-city-bar{width:100%;overflow:hidden}
.course-city-inner{min-width:0}
.course-city-inner select{min-width:0;width:min(320px,100%)}
.benefit-grid,.project-grid,.curriculum-grid,.career-grid{min-width:0}
.benefit-grid>*,.project-grid>*,.curriculum-grid>*,.career-grid>*{min-width:0}
.curriculum-item p,.course-benefit p,.project-card p,.faq-grid p{overflow-wrap:anywhere}

/* Existing city landing pages - content remains unchanged */
.apotac-city-main{width:100%!important;max-width:100%!important;min-width:0!important;overflow-x:clip!important}
.apotac-city-main>div{width:100%;max-width:100%;min-width:0;overflow-x:clip}
.apotac-city-main [class*="container"],[class*="-page"] [class*="container"]{max-width:100%;min-width:0}
.apotac-city-main [class*="grid"]{min-width:0}
.apotac-city-main [class*="grid"]>*{min-width:0;max-width:100%}
.apotac-city-main h1,.apotac-city-main h2,.apotac-city-main h3,.apotac-city-main p,.apotac-city-main a,.apotac-city-main span{overflow-wrap:anywhere}
.apotac-city-main img,.apotac-city-main iframe,.apotac-city-main video{max-width:100%!important}
.apotac-city-main table{width:100%!important;max-width:100%!important;overflow-x:auto}

/* Remove accidental fixed widths that commonly create right-side scrollbars. */
.apotac-city-main [style*="width: 100vw"],
.apotac-city-main [style*="width:100vw"]{width:100%!important;max-width:100%!important}

/* Desktop */
@media (min-width:1101px){
  .course-hero-grid{gap:64px}
  .course-hero{padding-top:82px;padding-bottom:76px}
}

/* Tablet */
@media (max-width:1100px){
  .header-inner{gap:16px}
  .primary-nav ul{gap:2px}
  .primary-nav a{padding:9px 10px}
  .course-hero-grid{grid-template-columns:minmax(0,1fr);gap:36px}
  .course-hero-copy{max-width:820px}
  .course-hero-panel{max-width:720px;width:100%;margin:0 auto}
  .benefit-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .project-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .career-grid{grid-template-columns:minmax(0,1fr)}
  .course-city-inner{align-items:flex-start}
}

/* Small tablet / large phone */
@media (max-width:800px){
  .container,.header-inner{width:min(100% - 32px,1180px)}
  .section{padding:68px 0}
  .course-hero{padding:62px 0 55px}
  .course-hero h1{font-size:clamp(38px,9vw,54px);letter-spacing:-.045em}
  .course-lead{font-size:17px;line-height:1.7}
  .course-hero-panel{padding:28px;border-radius:24px}
  .course-hero-panel>strong{font-size:27px}
  .course-city-inner{flex-direction:column;align-items:stretch;gap:14px}
  .course-city-inner select{width:100%;min-width:0}
  .curriculum-grid,.benefit-grid,.project-grid{grid-template-columns:1fr}
  .curriculum-item{min-height:0!important}
  .popular-course-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

/* Mobile */
@media (max-width:650px){
  .container,.header-inner{width:calc(100% - 28px)}
  .header-inner{min-height:68px}
  .site-brand img{width:132px;max-height:42px}
  .header-actions .btn{display:none}
  .menu-toggle{display:block}
  .primary-nav{display:none}
  .primary-nav.is-open{display:block}
  .hero{padding:56px 0 50px}
  .hero h1{font-size:42px}
  .hero-grid,.split,.contact-grid{grid-template-columns:1fr}
  .cards,.blog-grid{grid-template-columns:1fr}
  .stats-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .course-hero h1{font-size:40px}
  .course-snapshot{grid-template-columns:1fr}
  .course-hero-panel{padding:24px}
  .benefit-grid,.project-grid,.popular-course-grid{grid-template-columns:1fr!important}
  .section-head{margin-bottom:34px}
  .section-head h2{font-size:32px}
  .cta-box{flex-direction:column;align-items:flex-start}
}

/* Very small screens */
@media (max-width:380px){
  .container,.header-inner{width:calc(100% - 24px)}
  .course-hero h1{font-size:35px}
  .course-hero-panel{padding:20px}
  .btn{width:100%}
  .hero-actions .btn{width:100%}
}


/* -------------------------------------------------------------------------
   DATA ANALYTICS CITY PAGES - MOBILE RESPONSIVE PATCH
   Uses the existing Data Analytics city-page design (including Noida)
   without changing desktop styling.
   ------------------------------------------------------------------------- */
@media (max-width: 900px){
  .apotac-city-main [class^="da-"][class$="-page"]{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow-x:clip!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-container{
    width:min(100% - 32px,1180px)!important;
    max-width:100%!important;
    min-width:0!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero{
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:32px!important;
    width:100%!important;
    max-width:100%!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-grid > *{
    min-width:0!important;
    max-width:100%!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero h1{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-copy{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-card{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-meta{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-stat-grid,
  .apotac-city-main [class^="da-"][class$="-page"] .da-benefits,
  .apotac-city-main [class^="da-"][class$="-page"] .da-curriculum,
  .apotac-city-main [class^="da-"][class$="-page"] .da-projects,
  .apotac-city-main [class^="da-"][class$="-page"] .da-career{
    min-width:0!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-benefits,
  .apotac-city-main [class^="da-"][class$="-page"] .da-projects{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-curriculum{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] img,
  .apotac-city-main [class^="da-"][class$="-page"] iframe,
  .apotac-city-main [class^="da-"][class$="-page"] video{
    max-width:100%!important;
  }
}

@media (max-width: 650px){
  .apotac-city-main [class^="da-"][class$="-page"]{
    width:100%!important;
    max-width:100%!important;
    overflow-x:clip!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-container{
    width:calc(100% - 28px)!important;
    max-width:100%!important;
    padding-left:0!important;
    padding-right:0!important;
  }

  /* Mobile-friendly hero */
  .apotac-city-main [class^="da-"][class$="-page"] .da-hero{
    padding:54px 0 46px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-grid{
    grid-template-columns:minmax(0,1fr)!important;
    gap:28px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero h1{
    font-size:clamp(34px,10vw,42px)!important;
    line-height:1.1!important;
    letter-spacing:-1.2px!important;
    margin-bottom:16px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-copy{
    font-size:16px!important;
    line-height:1.7!important;
    margin-bottom:22px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-actions{
    width:100%!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:10px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-actions .da-btn{
    width:100%!important;
    max-width:100%!important;
    min-height:50px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-trust{
    gap:8px!important;
    margin-top:22px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-trust span{
    max-width:100%!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-card{
    padding:22px!important;
    border-radius:20px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-card h3{
    font-size:22px!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-meta{
    grid-template-columns:minmax(0,1fr)!important;
    gap:9px!important;
    margin:18px 0!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-meta div{
    min-width:0!important;
    padding:12px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-meta small,
  .apotac-city-main [class^="da-"][class$="-page"] .da-meta strong{
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-section{
    padding:58px 0!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-section-head{
    margin-bottom:32px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-section-head h2,
  .apotac-city-main [class^="da-"][class$="-page"] .da-career h2,
  .apotac-city-main [class^="da-"][class$="-page"] .da-seo-box h2{
    font-size:clamp(28px,8vw,36px)!important;
    line-height:1.18!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-section-head p,
  .apotac-city-main [class^="da-"][class$="-page"] .da-seo-box p{
    font-size:15px!important;
    line-height:1.75!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-stat-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:8px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-stat{
    min-width:0!important;
    padding:8px 4px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-stat strong{
    font-size:24px!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-stat span{
    font-size:12px!important;
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-benefits,
  .apotac-city-main [class^="da-"][class$="-page"] .da-curriculum,
  .apotac-city-main [class^="da-"][class$="-page"] .da-projects{
    grid-template-columns:minmax(0,1fr)!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-benefit,
  .apotac-city-main [class^="da-"][class$="-page"] .da-module,
  .apotac-city-main [class^="da-"][class$="-page"] .da-project{
    min-width:0!important;
    max-width:100%!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-module{
    gap:12px!important;
    padding:18px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-module > div{
    min-width:0!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-module h3,
  .apotac-city-main [class^="da-"][class$="-page"] .da-module p,
  .apotac-city-main [class^="da-"][class$="-page"] .da-benefit h3,
  .apotac-city-main [class^="da-"][class$="-page"] .da-benefit p,
  .apotac-city-main [class^="da-"][class$="-page"] .da-project h3,
  .apotac-city-main [class^="da-"][class$="-page"] .da-project p{
    overflow-wrap:anywhere!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-career{
    grid-template-columns:minmax(0,1fr)!important;
    gap:32px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-cta{
    padding:58px 0!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-cta h2{
    font-size:clamp(28px,8vw,36px)!important;
    line-height:1.18!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-cta p{
    font-size:15px!important;
    line-height:1.7!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-btn{
    max-width:100%!important;
    white-space:normal!important;
    text-align:center!important;
  }
}

@media (max-width:380px){
  .apotac-city-main [class^="da-"][class$="-page"] .da-container{
    width:calc(100% - 24px)!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero{
    padding-top:46px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero h1{
    font-size:33px!important;
  }

  .apotac-city-main [class^="da-"][class$="-page"] .da-hero-card{
    padding:18px!important;
  }
}
