/* ============================================
   Responsive Styles — Mobile-First (min-width)
   Karissa Subedi Career Consultancy Services
   ============================================ */

/* ── Small (≥576px) ─────────────────────────── */
@media (min-width: 576px) {
    .navbar-brand .brand-text {
        display: flex;
        flex-direction: column;
        margin-left: 10px;
    }

    .hero-content h1 {
        font-size: 2rem;
    }

    .hero-actions {
        flex-direction: row;
    }

    .hero-actions .btn-gold,
    .hero-actions .btn-outline-white {
        text-align: center;
    }

    .section-title {
        font-size: 1.65rem;
    }

    .page-hero h1 {
        font-size: 2rem;
    }

    .contact-details-card,
    .contact-form-card {
        padding: 36px 28px;
    }

    .values-grid {
        gap: 16px;
    }

    .value-badge {
        padding: 22px 18px;
    }

    .value-badge h6 {
        font-size: 0.95rem;
    }

    .btn-gold {
        font-size: 0.88rem;
        padding: 14px 32px;
    }

    .btn-outline-gold {
        font-size: 0.88rem;
        padding: 13px 32px;
    }

    .btn-outline-white {
        font-size: 0.88rem;
        padding: 13px 32px;
    }
}

/* ── Medium (≥768px) ────────────────────────── */
@media (min-width: 768px) {
    h1 { font-size: 2.25rem; }
    h2 { font-size: 1.75rem; }
    h3 { font-size: 1.5rem; }

    .section-padding {
        padding: 60px 0;
    }

    .section-padding-sm {
        padding: 48px 0;
    }

    .section-title {
        font-size: 1.75rem;
    }

    .gold-divider {
        width: 60px;
        margin-bottom: 2rem;
    }

    .hero-section {
        min-height: 85vh;
    }

    .hero-content h1 {
        font-size: 2.5rem;
    }

    .hero-content .hero-subtitle {
        font-size: 1.05rem;
    }

    .hero-gold-bar {
        width: 80px;
        height: 4px;
        margin-bottom: 2rem;
    }

    .hero-actions {
        gap: 16px;
    }

    .page-hero {
        padding: 110px 0 50px;
    }

    .page-hero h1 {
        font-size: 2.25rem;
    }

    .why-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin-top: 2.5rem;
    }

    .why-card {
        padding: 28px 24px;
    }

    .services-grid {
        grid-template-columns: repeat(2, 1fr);
        gap: 20px;
        margin-top: 2.5rem;
    }

    .service-card {
        padding: 32px 24px;
    }

    .service-card .service-number {
        font-size: 2.25rem;
    }

    .services-full-grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-top: 2.5rem;
    }

    .service-full-card {
        padding: 32px 28px;
    }

    .sessions-grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-top: 2.5rem;
    }

    .session-card {
        padding: 36px 32px;
    }

    .session-card h3 {
        font-size: 1.25rem;
    }

    .mission-vision-grid {
        grid-template-columns: 1fr 1fr;
        gap: 24px;
        margin-top: 2.5rem;
    }

    .mission-card,
    .vision-card {
        padding: 36px 32px;
    }

    .values-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 20px;
        margin-top: 2.5rem;
    }

    .value-badge {
        padding: 24px 20px;
    }

    .value-badge h6 {
        font-size: 1rem;
    }

    .contact-details-card {
        padding: 40px 36px;
        height: 100%;
    }

    .contact-details-card h3 {
        font-size: 1.5rem;
    }

    .contact-details-card .tagline {
        margin-bottom: 2rem;
    }

    .contact-form-card {
        padding: 40px 36px;
    }

    .contact-form-card h3 {
        font-size: 1.5rem;
        margin-bottom: 2rem;
    }

    .form-group-custom {
        margin-bottom: 1.5rem;
    }

    .closing-cta-section h2 {
        font-size: 1.75rem;
    }

    .closing-cta-section p {
        font-size: 1.05rem;
        margin-bottom: 2rem;
    }

    .closing-cta-section::before {
        width: 500px;
        height: 500px;
    }

    .site-footer {
        padding: 48px 0 0;
    }

    .footer-gold-divider {
        margin-top: 32px;
    }

    .footer-brand .footer-logo-mark {
        width: 44px;
        height: 44px;
        margin-bottom: 1rem;
    }

    .footer-brand .footer-company-name {
        font-size: 1rem;
    }

    .footer-brand .footer-tagline {
        font-size: 0.88rem;
    }

    .footer-heading {
        font-size: 0.95rem;
        margin-bottom: 1.25rem;
    }

    .footer-links a {
        font-size: 0.9rem;
    }

    .footer-links li {
        margin-bottom: 0.625rem;
    }

    .footer-copyright {
        font-size: 0.82rem;
    }

    .footer-bottom {
        padding: 20px 0;
    }

    .intro-section .intro-text {
        font-size: 1.05rem;
    }

    .section-subtitle {
        font-size: 1.05rem;
    }
}

/* ── Large (≥992px) ─────────────────────────── */
@media (min-width: 992px) {
    .navbar-inner {
        height: 72px;
        padding: 0 24px;
    }

    .page-content {
        padding-top: 72px;
    }

    .navbar-brand .brand-monogram {
        width: 40px;
        height: 40px;
    }

    .navbar-brand .brand-text {
        margin-left: 12px;
    }

    .navbar-brand .brand-name {
        font-size: 0.95rem;
    }

    .navbar-brand .brand-tagline {
        font-size: 0.68rem;
    }

    /* Show desktop nav, hide hamburger */
    .navbar-nav-links {
        display: flex;
    }

    .navbar-cta .btn-gold {
        display: inline-block;
    }

    .navbar-toggle-btn {
        display: none;
    }

    .section-padding {
        padding: 80px 0;
    }

    .section-padding-sm {
        padding: 56px 0;
    }

    .section-title {
        font-size: 2rem;
    }

    .hero-section {
        min-height: 88vh;
        padding: 0;
    }

    .hero-content h1 {
        font-size: 3rem;
    }

    .hero-content .hero-subtitle {
        font-size: 1.1rem;
        margin-bottom: 2.5rem;
    }

    .page-hero {
        padding: 110px 0 60px;
    }

    .page-hero h1 {
        font-size: 2.5rem;
    }

    .why-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 28px;
        margin-top: 3rem;
    }

    .why-card {
        padding: 32px 28px;
    }

    .why-card .why-icon {
        width: 44px;
        height: 44px;
    }

    .why-card .why-icon i {
        font-size: 1.1rem;
    }

    .why-card h5 {
        font-size: 1.05rem;
    }

    .services-grid {
        grid-template-columns: repeat(3, 1fr);
        gap: 24px;
        margin-top: 3rem;
    }

    .service-card {
        padding: 36px 28px;
    }

    .service-card .service-number {
        font-size: 2.5rem;
        margin-bottom: 1rem;
    }

    .service-card h5 {
        font-size: 1rem;
    }

    .service-full-card {
        padding: 36px 32px;
    }

    .service-full-card h4 {
        font-size: 1.2rem;
    }

    .session-card {
        padding: 40px 36px;
    }

    .session-card h3 {
        font-size: 1.35rem;
        margin-bottom: 1rem;
    }

    .session-card p {
        font-size: 0.98rem;
    }

    .mission-card,
    .vision-card {
        padding: 40px 36px;
    }

    .contact-details-card {
        padding: 48px 40px;
    }

    .contact-details-card h3 {
        font-size: 1.6rem;
    }

    .contact-details-card .tagline {
        font-size: 0.88rem;
    }

    .contact-detail-item {
        gap: 16px;
        margin-bottom: 1.5rem;
    }

    .contact-form-card {
        padding: 48px 40px;
    }

    .contact-form-card h3 {
        font-size: 1.6rem;
    }

    .closing-cta-section h2 {
        font-size: 2rem;
    }

    .site-footer {
        padding: 64px 0 0;
    }

    .site-footer .row > [class*="col-"] {
        margin-bottom: 0;
    }

    .footer-gold-divider {
        margin-top: 48px;
    }
}

/* ── Extra Large (≥1200px) ──────────────────── */
@media (min-width: 1200px) {
    h1 { font-size: 3rem; }
    h2 { font-size: 2.25rem; }
    h3 { font-size: 1.75rem; }

    .section-padding {
        padding: 90px 0;
    }

    .section-padding-sm {
        padding: 60px 0;
    }

    .section-title {
        font-size: 2.25rem;
    }

    .hero-content h1 {
        font-size: 3.5rem;
    }

    .page-hero h1 {
        font-size: 2.75rem;
    }

    .services-full-grid {
        gap: 28px;
        margin-top: 3rem;
    }

    .sessions-grid {
        gap: 28px;
        margin-top: 3rem;
    }

    .mission-vision-grid {
        gap: 28px;
        margin-top: 3rem;
    }

    .closing-cta-section h2 {
        font-size: 2.25rem;
    }
}
