/* 
 * Institute Page Styles - Nexra Corppe
 * Standardized with Precision Corporate Theme
 */

.inst-hero { 
    background: #0f172a; 
    background-image: 
        linear-gradient(to right, rgba(15,23,42,0.93) 40%, rgba(15,23,42,0.72) 100%),
        url('/images/institute-hero-bg-optimized.webp');
    background-size: cover;
    background-position: center center;
    background-repeat: no-repeat;
    padding: 12rem 0 8rem; 
    color: #fff; 
    border-bottom: 1px solid rgba(255,255,255,0.1); 
}

.inst-hero h1 { 
    font-size: clamp(3rem, 5vw, 5rem); 
    font-weight: 800; 
    line-height: 1.05; 
    letter-spacing: -0.04em; 
    color: #f8fafc; 
    margin-bottom: 1.5rem; 
    max-width: 800px; 
}

.inst-hero p { 
    font-size: 1.25rem; 
    color: #94a3b8; 
    max-width: 600px; 
    line-height: 1.6; 
}

.i-sm { 
    font-size: 0.875rem; 
    text-transform: uppercase; 
    letter-spacing: 0.1em; 
    color: #38bdf8; 
    font-weight: 700; 
    margin-bottom: 1.5rem; 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
}

.i-sm::after { 
    content: ''; 
    height: 1px; 
    width: 40px; 
    background: #38bdf8; 
}

/* Sections */
.i-section { padding: 8rem 0; background: #fff; }
.i-section-alt { padding: 8rem 0; background: #f8fafc; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; }

.i-sm-blue { 
    font-size: 0.875rem; 
    text-transform: uppercase; 
    letter-spacing: 0.1em; 
    color: #2563eb; 
    font-weight: 700; 
    margin-bottom: 1rem; 
    display: flex; 
    align-items: center; 
    gap: 1rem; 
}

.i-sm-blue::after { 
    content: ''; 
    height: 1px; 
    width: 40px; 
    background: #2563eb; 
}

.i-h2 { 
    font-size: clamp(2rem, 3.5vw, 3rem); 
    font-weight: 800; 
    color: #0f172a; 
    letter-spacing: -0.02em; 
    line-height: 1.1; 
    margin-bottom: 1rem; 
}

/* Course Cards */
.course-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 1.5rem; 
}

.course-card { 
    background: #fff; 
    border: 1px solid #e2e8f0; 
    border-radius: 12px; 
    overflow: hidden; 
    transition: all 0.3s ease; 
    display: flex; 
    flex-direction: column; 
    box-shadow: 0 4px 6px -1px rgba(0,0,0,0.05); 
}

.course-card:hover { 
    border-color: #38bdf8; 
    transform: translateY(-5px); 
    box-shadow: 0 20px 40px -10px rgba(56, 189, 248, 0.15); 
}

.course-card-head { 
    background: #0f172a; 
    padding: 2rem; 
    position: relative; 
    overflow: hidden; 
}

.course-card-badge { 
    display: inline-block; 
    font-size: 0.7rem; 
    text-transform: uppercase; 
    letter-spacing: 0.08em; 
    font-weight: 700; 
    padding: 0.25rem 0.75rem; 
    background: rgba(56, 189, 248, 0.15); 
    color: #38bdf8; 
    margin-bottom: 1rem; 
}

.course-card-head h3 { 
    font-size: 1.25rem; 
    font-weight: 700; 
    color: #f8fafc; 
    margin-bottom: 0.5rem; 
}

.course-card-head p { 
    font-size: 0.875rem; 
    color: #64748b; 
    line-height: 1.5; 
}

.course-card-body { padding: 2rem; flex: 1; }

.course-meta { display: flex; gap: 1.5rem; margin-bottom: 1.5rem; }

.course-meta span { 
    font-size: 0.8rem; 
    color: #64748b; 
    display: flex; 
    align-items: center; 
    gap: 0.4rem; 
}

.course-meta i { color: #2563eb; }

.course-skills { list-style: none; padding: 0; margin: 0 0 1.5rem; }

.course-skills li { 
    font-size: 0.875rem; 
    color: #475569; 
    padding: 0.4rem 0; 
    border-bottom: 1px solid #f1f5f9; 
    display: flex; 
    align-items: center; 
    gap: 0.5rem; 
}

.course-skills li::before { 
    content: '→'; 
    color: #2563eb; 
    font-weight: 700; 
}

.course-enroll { 
    display: block; 
    text-align: center; 
    padding: 0.875rem; 
    background: #2563eb; 
    color: #fff; 
    font-weight: 700; 
    font-size: 0.875rem; 
    text-transform: uppercase; 
    letter-spacing: 0.05em; 
    text-decoration: none; 
    transition: all 0.2s; 
}

.course-enroll:hover { background: #1d4ed8; }

/* Learn / Why Nexra Institute */
.learn-grid { 
    display: grid; 
    grid-template-columns: repeat(3, 1fr); 
    gap: 1px; 
    background: #e2e8f0; 
}

.learn-item { 
    background: #fff; 
    padding: 3rem 2.5rem; 
    transition: background 0.3s; 
}

.learn-item:hover { background: #0f172a; }
.learn-item:hover h3, .learn-item:hover p { color: #f8fafc !important; }

.learn-item i { 
    font-size: 2rem; 
    color: #2563eb; 
    margin-bottom: 1.5rem; 
    transition: color 0.3s; 
}

.learn-item:hover i { color: #38bdf8; }

.learn-item h3 { 
    font-size: 1.125rem; 
    font-weight: 700; 
    color: #0f172a; 
    margin-bottom: 0.75rem; 
}

.learn-item p { color: #64748b; font-size: 0.875rem; line-height: 1.6; }

/* Stats */
.inst-stat-grid { 
    display: grid; 
    grid-template-columns: repeat(4, 1fr); 
    gap: 2rem; 
    text-align: center;
}

.inst-stat-number {
    font-size: 3rem;
    font-weight: 800;
    color: #2563eb;
    margin-bottom: 0.25rem;
}

.inst-stat-label {
    color: #64748b;
    font-size: 0.8rem;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    font-weight: 600;
}

/* CTA */
.inst-cta { 
    background: #2563eb; 
    padding: 6rem 0; 
    text-align: center; 
}

.inst-cta h2 { 
    font-size: clamp(2rem, 4vw, 3.5rem); 
    font-weight: 800; 
    color: #fff; 
    margin-bottom: 1.5rem; 
    letter-spacing: -0.03em; 
}

.inst-cta p { 
    color: rgba(255,255,255,0.8); 
    font-size: 1.125rem; 
    max-width: 600px; 
    margin: 0 auto 3rem; 
}

.inst-cta-link { 
    background: #fff; 
    color: #2563eb; 
    display: inline-flex; 
    align-items: center; 
    justify-content: center; 
    padding: 1rem 2.5rem; 
    font-weight: 700; 
    text-decoration: none; 
    transition: all 0.2s; 
    gap: 0.75rem; 
    border-radius: 4px; 
}

.inst-cta-link:hover { 
    background: #f8fafc; 
}

/* Mobile Responsiveness */
@media (max-width: 1024px) {
    .course-grid { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 960px) {
    .inst-hero { padding: 8rem 0 4rem; }
    .i-section, .i-section-alt { padding: 5rem 0; }
    .learn-grid { grid-template-columns: 1fr 1fr; }
    .inst-stat-grid { grid-template-columns: 1fr 1fr; }
    
    .hero-action-row {
        justify-content: center;
    }
}

@media (max-width: 768px) {
    .course-grid, .learn-grid, .inst-stat-grid { grid-template-columns: 1fr; }
}

@media (max-width: 480px) {
    .inst-hero h1 { font-size: 2.25rem; }
    .hero-action-row { flex-direction: column; }
    .hero-action-row a { width: 100%; justify-content: center; }
    .inst-cta h2 { font-size: 1.75rem; }
    .inst-cta-link { width: 100%; }
}
