/* ══════════════════════════════════════════════════════
   COURSE TABLE — v2 design
   Visible grid lines on every cell + a strong, clearly
   visible box-shadow around the whole table card.
   ══════════════════════════════════════════════════════ */

.course-page-wrap{
  max-width:1300px;
  margin:0 auto;
}

/* Outer card: carries the shadow (kept OUTSIDE the clipped
   inner wrapper so the shadow isn't cut off) */
.course-table-shadow{
  border-radius:14px;
  box-shadow: 0 16px 40px rgba(11,31,82,.22), 0 4px 10px rgba(11,31,82,.10);
}

/* Inner wrapper: clips corners + handles horizontal scroll on mobile */
.course-table-wrap{
  margin-top:28px;
  border-radius:14px;
  overflow:hidden;
  border:1px solid #c7cfe0;
  background:#fff;
}

.course-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  font-family:'Sora',sans-serif;
  background:#fff;
}

/* ── HEADER ── */
.course-table thead th{
  background:#0b2158;
  color:#fff;
  font-family:'Poppins',sans-serif;
  font-weight:600;
  font-size:13.5px;
  text-transform:uppercase;
  letter-spacing:.3px;
  padding:16px 16px;
  text-align:center;
  border:1px solid #1e3d7b;
  border-top:none;
}
.course-table thead tr:first-child th{ border-top:3px solid #d41f16 }

/* Red accent strip under the header row */
.course-table thead tr:last-child th{
  border-bottom:3px solid #d41f16;
}

/* ── BODY CELLS: visible grid ── */
.course-table tbody td{
  padding:13px 16px;
  font-size:13.5px;
  color:#2d3a55;
  text-align:center;
  vertical-align:middle;
  background:#fff;
  border:1px solid #d8deea;
  border-top:none;
}
.course-table tbody tr:first-child td{
  border-top:1px solid #d8deea;
}

.course-table tbody td:nth-child(2){
  text-align:left;
  line-height:1.55;
}

/* Serial number column */
.course-table tbody td:first-child{
  font-weight:700;
  color:#1a3a7c;
  background:#f7f9ff;
}

/* Merged "Course Offered At" column */
.course-table tbody td[rowspan]{
  font-weight:700;
  color:#1a3a7c;
  background:#eef3fd;
  border-left:2px solid #c7cfe0;
}

/* Zebra striping for readability */
.course-table tbody tr:nth-child(even) td:not([rowspan]):not(:first-child){
  background:#f5f8ff;
}

/* Row hover */
.course-table tbody tr:hover td:not([rowspan]){
  background:#e3ecff;
}

/* ── TITLE ROW (optional section heading spanning the full table) ── */
.course-table thead th.table-title{
  background:#0b2158;
  text-transform:none;
  font-family:'Poppins',sans-serif;
  font-size:17px;
  font-weight:700;
  letter-spacing:normal;
  padding:14px 16px;
  border-bottom:3px solid #d41f16;
}

/* ── MODIFIERS for tables shaped differently from the default
     (no serial-number column, long-text column isn't #2) ── */

/* Use when column 1 is a label like "Type/Task", not a serial number */
.course-table.no-index tbody td:first-child{
  font-weight:600;
  color:#2d3a55;
  background:#fff;
}
.course-table.no-index tbody tr:nth-child(even) td:first-child{
  background:#f5f8ff;
}

/* Use when the long descriptive text lives in column 5 instead of
   column 2 (e.g. a "LIMITATION" column) — add class="label-col-5" */
.course-table.label-col-5 tbody td:nth-child(2){
  text-align:center;
}
.course-table.label-col-5 tbody td:nth-child(5){
  text-align:left;
  line-height:1.55;
}

@media (max-width:767px){
  .course-table-wrap{ overflow-x:auto; }
  .course-table{ min-width:760px; }
}





  /* ── SECTION HEADING ── */
        .vm-label{
            font-family:'Poppins', sans-serif;
            font-size:13px;
            font-weight:700;
            letter-spacing:1px;
            text-transform:uppercase;
            color:#d41f16;
            margin-bottom:8px;
        }
     .vm-title {
    font-family: 'Poppins', sans-serif;
    font-size: clamp(20px, 2.8vw, 30px);
    font-weight: 700;
    color: #0b1f52;
    line-height: 1.3;
    margin-bottom: -19px;
    /* padding: 27px; */
    text-align: center;
    padding: 15px;
}
        .vm-title strong{ font-weight:800; }
        .vm-rule{
    width: 60px;
    height: 3px;
    border-radius: 2px;
    background: #b80c14;
    margin: 12px 0 40px;
    text-align: center;
    margin: auto;
    margin-top: 6px;
    margin-bottom: 31px;
        }
        /* ── DIRECTOR-STYLE TEAM CARD ── */
        .director-card{
            background:#ffffff;
            border:1.5px solid #c5d4f0;
            border-radius:5px;
            overflow:hidden;
            transition:transform .25s ease, box-shadow .25s ease;
            height:100%;
        }
        .director-card:hover{
            transform:translateY(-6px);
            box-shadow:0 18px 48px rgba(11,31,82,0.13);
        }
        .card-avatar-wrap{
            background:#aed0ee;
            padding:32px 20px 24px;
            display:flex;
            flex-direction:column;
            align-items:center;
        }
        .avatar-circle{
            width:130px;
            height:130px;
            border-radius:50%;
            /*border:3px solid #d41f16;*/
            object-fit: contain;
    background: white;
        }
        .card-body-custom{
            padding:18px 22px 28px;
            text-align:center;
        }
        .director-name{
            font-family:'Poppins', sans-serif;
            font-size:15.5px;
            font-weight:700;
            color:#0b1f52;
            line-height:1.35;
            margin-bottom:8px;
        }
        .director-role-badge{
            display:inline-block;
            background:#eef3fd;
            color:#1b48c4;
            font-family:'Sora', sans-serif;
            font-size:13px;
            font-weight:600;
            letter-spacing:0.3px;
            padding:5px 14px;
            border-radius:20px;
            border:1px solid #c5d4f0;
            line-height:1.4;
        }
        .card-divider{
            width:36px;
            height:2px;
            background:#d41f16;
            border-radius:2px;
            margin:16px auto 14px;
        }
        .card-detail{
            font-family:'Sora', sans-serif;
            font-size:12.5px;
            color:#5a6378;
            line-height:1.7;
            text-align:left;
        }
        .card-detail strong{ color:#0b1f52; font-family:'Poppins', sans-serif; font-weight:600; }
        /* ── GRID ── */
        .delhi-grid{
            display:flex;
            flex-wrap:wrap;
            gap:24px;
            justify-content:center;
        }
        .delhi-col{
            flex:0 0 calc(33.333% - 16px);
            max-width:calc(33.333% - 16px);
        }
        @media (max-width:991px){
            .delhi-col{ flex:0 0 calc(50% - 12px); max-width:calc(50% - 12px); }
        }
        @media (max-width:575px){
            .delhi-col{ flex:0 0 100%; max-width:100%; }
        }
        .delhi-intro{ text-align:justify; }
        .delhi-section{ padding:8px 0 64px; }
        /* ── SCROLL REVEAL ── */
        [data-sr]{
            opacity:0;
            transform:translateY(24px);
            transition:opacity .55s ease, transform .55s ease;
        }
        [data-sr].in{ opacity:1; transform:none; text-align:center; }
        [data-sr][data-d="1"]{ transition-delay:.08s; }
        [data-sr][data-d="2"]{ transition-delay:.16s; }
        [data-sr][data-d="3"]{ transition-delay:.24s; }
        [data-sr][data-d="4"]{ transition-delay:.32s; }
        [data-sr][data-d="5"]{ transition-delay:.40s; }
        [data-sr][data-d="6"]{ transition-delay:.48s; }
        
        
        
        
        
        
        
        
        
        
        
        
        
        
         .training-card{

    background:#fff;

    border-radius:18px;

    overflow:hidden;

    border:1px solid #d9e4f6;

    box-shadow:0 12px 35px rgba(11,31,82,.14);

    transition:.3s;

    height:100%;

    position:relative;
}

.training-card:hover{

    transform:translateY(-6px);

    box-shadow:0 22px 45px rgba(11,31,82,.18);

}


.training-header{

    height:200px;

    background:linear-gradient(180deg, #dceeff 0%, #a7d2ec 100%);


    position:relative;

}


/* optional decorative leaves */

.training-header:before{

    content:"";

    position:absolute;

    left:18px;

    top:24px;

    width:70px;

    height:70px;

    opacity:.18;

    background-image: radial-gradient(#004eda 1.2px, transparent 1.2px);
    background-size:10px 10px;

}

.training-image{

    position:absolute;

    left:50%;

    bottom:10px;

    transform:translateX(-50%);

}


.training-image img {
    width: 145px;
    height: 160px;
    border-radius: 50%;
    object-fit: fill;
    box-shadow: 0 5px 18px rgba(0, 0, 0, .18);
}


.image-user-icon{

    position:absolute;

    left:50%;

    bottom:-29px;

    transform:translateX(-50%);

    width:42px;

    height:42px;

    border-radius:50%;

    background:#5da7e7;

    color:#fff;

    display:flex;

    align-items:center;

    justify-content:center;

    border:4px solid #fff;

    font-size:15px;

}


.training-body{

    padding:18px 28px 28px;

}


.training-name{

    font-family:Poppins;

    font-weight:700;

    color:#132c63;

    font-size:15.5px;

    text-align:center;

    margin-bottom:14px;

}


.training-designation {
      display: revert;
    align-items: center;
    justify-content: center;
    gap: 8px;
    background: #e7f2ff;
    color: #3d7ac5;
    border-radius: 30px;
    font-family: Sora;
    font-weight: 600;
    font-size: 13px;
    border: solid #d6e8fb;
    width: 100%;
        white-space: normal;
    line-height: 1.3;
    padding: 6px 14px;
}


.training-divider{

    width:55px;

    height:2px;

    background:#d5dceb;

    margin:20px auto 24px;

}


.info-item{

    display:flex;

    align-items:flex-start;

    gap:16px;

    margin-bottom:22px;

}


.info-icon{

    width:48px;

    height:48px;

    min-width:48px;

    border-radius:50%;

    background:#edf5ff;

    display:flex;

    align-items:center;

    justify-content:center;

}


.info-icon i{

    color:#0b1f52;

    font-size:20px;

}


.info-content {
    font-family: Sora, sans-serif;
    color: #777777;
    font-size: 12.5px;
    line-height: 1.7;
    text-align:left;
}


.info-content h6{

    margin:0 0 6px;

    font-family:Poppins;

    color:#1b4f9f;

    font-size:15px;

    font-weight:700;

}

/*Six month training css*/
        .pt-wrap{ padding:35px 0 72px;  }
        .pt-intro{
            background:#eef3fd;
            border:1px solid #c5d4f0;
            border-left:4px solid #1b48c4;
            border-radius:6px;
            padding:22px 26px;
            margin:22px 0 40px;
        }
        .pt-intro p{
            font-family:'Sora', sans-serif;
            font-size:14.5px;
            line-height:1.75;
            color:#33405a;
            margin:0;
            text-align:justify;
        }

        /* accordion shell — keep theme's toggle plugin classes/behaviour, just restyle */
        .pt-accordion .toggle{
            background:#fff;
            border:1.5px solid #c5d4f0;
            border-radius:6px;
            margin-bottom:16px;
            overflow:hidden;
            transition:box-shadow .2s ease;
        }
        .pt-accordion .toggle:hover{ box-shadow:0 10px 26px -16px rgba(11,31,82,0.25); }
        .pt-accordion .toggle-title{
            display:flex;
            align-items:center;
            gap:12px;
            font-family:'Poppins', sans-serif;
            font-weight:700;
            font-size:15px;
            color:#0b1f52 !important;
            padding:18px 22px;
            text-decoration:none !important;
            background:#f7f9fd;
            border-bottom:1px solid #e3e9f6;
        }
        .pt-accordion .toggle-title .pt-num{
            flex:0 0 26px;
            width:26px; height:26px;
            border-radius:50%;
            background:#0b1f52;
            color:#fff;
            font-size:12px;
            display:flex;
            align-items:center;
            justify-content:center;
            font-weight:700;
        }
        .pt-accordion .toggle-content{
            padding:24px 26px 28px;
            font-family:'Sora', sans-serif;
            font-size:14px;
            color:#3d4a63;
            line-height:1.75;
        }
        .pt-accordion .toggle-content p{ text-align:justify; }
        .pt-accordion .toggle-content b{ color:#0b1f52; font-family:'Poppins', sans-serif; }

        /* location cards for section 1 */
        .pt-loc-grid{
            display:grid;
            grid-template-columns:repeat(auto-fit, minmax(230px, 1fr));
            gap:14px;
            margin-top:16px;
        }
        .pt-loc-card{
            background:#f7f9fd;
            border:1px solid #dfe6f5;
            border-radius:6px;
            padding:14px 16px;
            display:flex;
            gap:12px;
            align-items:flex-start;
        }
        .pt-loc-card i{
            color:#d41f16;
            font-size:15px;
            margin-top:2px;
        }
        .pt-loc-card .pt-loc-city{
            font-family:'Poppins', sans-serif;
            font-weight:700;
            font-size:13.5px;
            color:#0b1f52;
            display:block;
            margin-bottom:2px;
        }
        .pt-loc-card .pt-loc-shop{
            font-size:12.5px;
            color:#5a6378;
        }

        /* eligibility */
        .pt-elig-list{ list-style:none; padding:0; margin:14px 0 0; }
        .pt-elig-list li{
            display:flex;
            gap:12px;
            padding:12px 0;
            border-top:1px dashed #d6dfef;
        }
        .pt-elig-list li:first-child{ border-top:none; }
        .pt-elig-badge{
            flex:0 0 24px;
            width:24px; height:24px;
            border-radius:50%;
            background:#eef3fd;
            border:1px solid #c5d4f0;
            color:#1b48c4;
            font-family:'Poppins', sans-serif;
            font-weight:700;
            font-size:11.5px;
            display:flex;
            align-items:center;
            justify-content:center;
        }
        .pt-and{
            text-align:center;
            font-family:'Poppins', sans-serif;
            font-weight:700;
            font-size:11.5px;
            letter-spacing:0.12em;
            color:#d41f16;
            margin:2px 0;
        }
        .pt-download-btn{
            display:inline-flex;
            align-items:center;
            gap:10px;
            background:#0b1f52;
            color:#fff !important;
            font-family:'Poppins', sans-serif;
            font-weight:600;
            font-size:13px;
            padding:11px 20px;
            border-radius:4px;
            text-decoration:none !important;
            margin-top:16px;
            transition:background .15s ease;
        }
        .pt-download-btn:hover{ background:#1b48c4; }

        /* timeline */
        .pt-timeline{
            list-style:none;
            padding:0;
            margin:18px 0 0;
            position:relative;
        }
        .pt-timeline::before{
            content:'';
            position:absolute;
            left:11px; top:6px; bottom:6px;
            width:2px;
            background:#d6dfef;
        }
        .pt-timeline li{
            position:relative;
            padding:0 0 24px 38px;
        }
        .pt-timeline li:last-child{ padding-bottom:0; }
        .pt-timeline li::before{
            content:'';
            position:absolute;
            left:4px; top:3px;
            width:16px; height:16px;
            border-radius:50%;
            background:#fff;
            border:3px solid #d41f16;
            z-index:1;
        }
        .pt-timeline .pt-step-label{
            font-size:13.5px;
            color:#3d4a63;
        }
        .pt-timeline .pt-step-date{
            display:block;
            font-family:'Poppins', sans-serif;
            font-weight:700;
            font-size:13.5px;
            color:#0b1f52;
            margin-top:3px;
        }
        .pt-timeline .pt-step-note{
            font-size:13px;
            color:#5a6378;
            font-style:italic;
        }

        /* location table */
        .pt-table-wrap{ overflow-x:auto; margin-top:16px; }
        table.pt-table{
            width:100%;
            border-collapse:collapse;
            font-size:13.5px;
        }
        table.pt-table thead th{
            background:#0b1f52;
            color:#fff;
            font-family:'Poppins', sans-serif;
            font-weight:600;
            font-size:12.5px;
            text-transform:uppercase;
            letter-spacing:0.04em;
            padding:12px 16px;
            text-align:left;
        }
        table.pt-table tbody td{
            padding:14px 16px;
            border-bottom:1px solid #e3e9f6;
            vertical-align:top;
            color:#3d4a63;
        }
        table.pt-table tbody tr:nth-child(even){ background:#f7f9fd; }
        table.pt-table tbody tr:hover{ background:#eef3fd; }
        table.pt-table td:first-child{
            font-family:'Poppins', sans-serif;
            font-weight:600;
            color:#0b1f52;
            width:32%;
        }

        /* fee cards */
        .pt-fee-grid{
            display:grid;
            grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
            gap:18px;
            margin-top:16px;
        }
        .pt-fee-card{
            background:#f7f9fd;
            border:1px solid #dfe6f5;
            border-radius:6px;
            padding:20px 22px;
        }
        .pt-fee-card .pt-fee-label{
            font-family:'Poppins', sans-serif;
            font-size:12px;
            font-weight:700;
            letter-spacing:0.08em;
            text-transform:uppercase;
            color:#d41f16;
            margin-bottom:8px;
        }
        .pt-fee-card .pt-fee-amount{
            font-family:'Poppins', sans-serif;
            font-size:26px;
            font-weight:800;
            color:#0b1f52;
            line-height:1.2;
        }
        .pt-fee-card .pt-fee-note{
            font-size:12.5px;
            color:#5a6378;
            margin-top:6px;
        }