:root {
    --sf-navy: #0B3A4A;
    --sf-teal: #1F7A8C;
    --sf-aqua: #2FA4A9;
    --sf-green: #6CC24A;
    --sf-orange: #F39C3D;
    --sf-soft: #F4F6F7;
    --sf-white: #FFFFFF;
    --sf-text: #14213D;
    --sf-muted: #64748B;
    --sf-line: #E5E7EB;

    --sf-radius-sm: 12px;
    --sf-radius-md: 18px;
    --sf-radius-lg: 28px;
    --sf-shadow-sm: 0 10px 24px rgba(15, 23, 42, 0.08);
    --sf-shadow-md: 0 18px 44px rgba(15, 23, 42, 0.12);
    --sf-shadow-lg: 0 30px 80px rgba(15, 23, 42, 0.16);
}

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

.sf-section-soft {
    background: var(--sf-soft);
}

.sf-container {
    max-width: 1180px;
    margin: 0 auto;
    padding: 0 18px;
}

.sf-title {
    max-width: 760px;
    margin: 0 auto 38px;
    text-align: center;
}

.sf-title-kicker {
    color: var(--sf-orange);
    font-weight: 900;
    text-transform: uppercase;
    font-size: 13px;
    letter-spacing: 1px;
}

.sf-title h2 {
    color: var(--sf-navy);
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
    letter-spacing: -0.8px;
}

.sf-title p {
    color: var(--sf-muted);
    line-height: 1.7;
    margin: 0;
}

.sf-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    border-radius: 999px;
    padding: 13px 22px;
    font-weight: 900;
    border: 0;
    cursor: pointer;
    transition: all .22s ease;
}

.sf-btn:hover {
    transform: translateY(-2px);
}

.sf-btn-primary {
    background: var(--sf-orange);
    color: #fff;
    box-shadow: 0 12px 28px rgba(243, 156, 61, .28);
}

.sf-btn-dark {
    background: var(--sf-navy);
    color: #fff;
}

.sf-btn-light {
    background: #fff;
    color: var(--sf-navy);
    border: 1px solid var(--sf-line);
}

.sf-card {
    background: #fff;
    border: 1px solid var(--sf-line);
    border-radius: var(--sf-radius-lg);
    padding: 26px;
    box-shadow: var(--sf-shadow-sm);
    transition: all .22s ease;
}

.sf-card:hover {
    transform: translateY(-5px);
    box-shadow: var(--sf-shadow-md);
}

.sf-grid-2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.sf-grid-3 {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.sf-grid-4 {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
}

.sf-badge {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    border-radius: 999px;
    padding: 8px 12px;
    background: #fff;
    border: 1px solid #fed7aa;
    color: var(--sf-navy);
    font-size: 12px;
    font-weight: 900;
}

.sf-glass {
    background: rgba(255, 255, 255, .82);
    backdrop-filter: blur(14px);
    border: 1px solid rgba(255, 255, 255, .45);
    box-shadow: var(--sf-shadow-md);
}

@media (max-width: 960px) {
    .sf-grid-2,
    .sf-grid-3,
    .sf-grid-4 {
        grid-template-columns: 1fr 1fr;
    }

    .sf-section {
        padding: 64px 0;
    }

    .sf-title h2 {
        font-size: 32px;
    }
}

@media (max-width: 560px) {
    .sf-grid-2,
    .sf-grid-3,
    .sf-grid-4 {
        grid-template-columns: 1fr;
    }

    .sf-section {
        padding: 52px 0;
    }

    .sf-container {
        padding: 0 16px;
    }

    .sf-btn {
        width: 100%;
    }
}

/* SFIMS Frontend Hero V2 */
.sf-hero-v2 {
    position: relative;
    overflow: hidden;
    background:
        radial-gradient(circle at 12% 18%, rgba(243, 156, 61, .18), transparent 30%),
        radial-gradient(circle at 88% 12%, rgba(47, 164, 169, .16), transparent 32%),
        linear-gradient(135deg, #fff8f1 0%, #ffffff 52%, #f0fdfa 100%);
}

.sf-hero-v2::before {
    content: "";
    position: absolute;
    right: -160px;
    top: 80px;
    width: 520px;
    height: 520px;
    border-radius: 50%;
    background: rgba(243, 156, 61, .12);
}

.sf-hero-grid {
    position: relative;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    gap: 46px;
    align-items: center;
    min-height: 680px;
    padding: 70px 0;
}

.sf-hero-content h1 {
    font-size: 60px;
    line-height: 1.04;
    margin: 0 0 20px;
    color: var(--sf-navy);
    letter-spacing: -1.9px;
}

.sf-hero-content h1 span {
    color: var(--sf-orange);
}

.sf-hero-content p {
    font-size: 18px;
    color: #475569;
    line-height: 1.78;
    margin: 0 0 28px;
    max-width: 680px;
}

.sf-hero-kicker {
    background: rgba(255, 255, 255, .88);
    border-color: #fed7aa;
}

.sf-hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.sf-hero-badges {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 22px;
}

.sf-hero-badges span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    background: rgba(255,255,255,.86);
    border: 1px solid #fed7aa;
    color: var(--sf-navy);
    border-radius: 999px;
    padding: 9px 12px;
    font-size: 12px;
    font-weight: 900;
    box-shadow: 0 10px 24px rgba(243, 156, 61, .08);
}

.sf-hero-panel {
    position: relative;
}

.sf-hero-dashboard {
    position: relative;
    border-radius: 34px;
    padding: 24px;
    min-height: 470px;
}

.sf-hero-dashboard::after {
    content: "";
    position: absolute;
    right: 28px;
    bottom: 28px;
    width: 180px;
    height: 180px;
    border-radius: 42px;
    background: linear-gradient(135deg, rgba(11, 58, 74, .10), rgba(47, 164, 169, .14));
    z-index: 0;
}

.sf-hero-dashboard-head,
.sf-hero-metrics,
.sf-hero-progress-card,
.sf-hero-workflow {
    position: relative;
    z-index: 1;
}

.sf-hero-dashboard-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}

.sf-hero-dashboard-head strong {
    display: block;
    color: var(--sf-navy);
    font-size: 18px;
}

.sf-hero-dashboard-head small {
    display: block;
    color: var(--sf-muted);
    margin-top: 5px;
}

.sf-hero-dashboard-head span {
    background: #dcfce7;
    color: #166534;
    border-radius: 999px;
    padding: 7px 11px;
    font-size: 12px;
    font-weight: 900;
}

.sf-hero-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin-bottom: 18px;
}

.sf-hero-metrics div {
    background: #fff;
    border: 1px solid var(--sf-line);
    border-radius: 20px;
    padding: 16px 12px;
    box-shadow: var(--sf-shadow-sm);
}

.sf-hero-metrics b {
    display: block;
    color: var(--sf-orange);
    font-size: 30px;
    line-height: 1;
}

.sf-hero-metrics span {
    display: block;
    color: var(--sf-muted);
    font-size: 11px;
    font-weight: 900;
    margin-top: 8px;
    text-transform: uppercase;
    letter-spacing: .4px;
}

.sf-hero-progress-card {
    background: linear-gradient(135deg, var(--sf-navy), var(--sf-teal));
    color: #fff;
    border-radius: 24px;
    padding: 22px;
    display: flex;
    justify-content: space-between;
    gap: 20px;
    align-items: center;
    margin-bottom: 20px;
    box-shadow: var(--sf-shadow-md);
}

.sf-hero-progress-card strong,
.sf-hero-progress-card small {
    display: block;
    color: #fff;
}

.sf-hero-progress-card small {
    margin-top: 6px;
    color: #dbeafe;
}

.sf-hero-progress-card a {
    background: #fff;
    color: var(--sf-navy);
    border-radius: 999px;
    padding: 10px 16px;
    font-weight: 900;
    white-space: nowrap;
}

.sf-hero-workflow {
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
}

.sf-hero-workflow span {
    background: #fff;
    border: 1px solid var(--sf-line);
    border-radius: 16px;
    padding: 13px 16px;
    color: var(--sf-navy);
    font-weight: 900;
    box-shadow: 0 8px 18px rgba(15,23,42,.05);
}

@media (max-width: 960px) {
    .sf-hero-grid {
        grid-template-columns: 1fr;
        min-height: auto;
        padding: 56px 0;
    }

    .sf-hero-content h1 {
        font-size: 44px;
    }
}

@media (max-width: 560px) {
    .sf-hero-grid {
        padding: 38px 0;
        gap: 26px;
    }

    .sf-hero-content h1 {
        font-size: 34px;
        letter-spacing: -1px;
    }

    .sf-hero-content p {
        font-size: 15px;
        line-height: 1.65;
    }

    .sf-hero-actions .sf-btn {
        width: 100%;
    }

    .sf-hero-dashboard {
        padding: 18px;
        border-radius: 24px;
        min-height: auto;
    }

    .sf-hero-metrics {
        grid-template-columns: 1fr;
    }

    .sf-hero-progress-card {
        flex-direction: column;
        align-items: flex-start;
    }
}

/* SFIMS Frontend Mockup Inspired Hero */
.sf-ngo-hero {
    background: #fff;
    position: relative;
    overflow: hidden;
}

.sf-ngo-hero-grid {
    display: grid;
    grid-template-columns: 1fr 1.05fr;
    min-height: 520px;
    align-items: center;
    gap: 28px;
    padding: 42px 18px 0;
}

.sf-ngo-kicker {
    color: #ff7a00;
    font-size: 14px;
    font-weight: 900;
    letter-spacing: .8px;
    margin-bottom: 14px;
}

.sf-ngo-hero-content h1 {
    color: #111827;
    font-size: 56px;
    line-height: 1.08;
    margin: 0 0 18px;
    letter-spacing: -1.4px;
    font-weight: 900;
}

.sf-ngo-hero-content h1 span {
    color: #ff7a00;
}

.sf-ngo-hero-content p {
    color: #64748b;
    font-size: 17px;
    line-height: 1.7;
    margin: 0 0 24px;
    max-width: 560px;
}

.sf-ngo-hero-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

.sf-ngo-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    padding: 14px 22px;
    font-weight: 900;
    font-size: 14px;
    transition: all .22s ease;
}

.sf-ngo-btn:hover {
    transform: translateY(-2px);
}

.sf-ngo-btn-primary {
    background: #ff7a00;
    color: #fff;
    box-shadow: 0 12px 28px rgba(255, 122, 0, .28);
}

.sf-ngo-btn-light {
    background: #fff7ed;
    color: #ff7a00;
    border: 1px solid #fed7aa;
}

.sf-ngo-hero-image-wrap {
    height: 520px;
    border-radius: 0 0 0 70px;
    overflow: hidden;
    background: #fff4e8;
    position: relative;
}

.sf-ngo-hero-image {
    width: 100%;
    height: 100%;
    background-size: cover;
    background-position: center;
}

.sf-ngo-hero-image-wrap:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(255,255,255,.08), rgba(255,122,0,.08));
}

.sf-ngo-trust-strip {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    background: #fff;
    border: 1px solid #f1e7dd;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .06);
    border-radius: 0 0 18px 18px;
    overflow: hidden;
    margin-top: 0;
}

.sf-ngo-trust-strip div {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 18px 22px;
    border-right: 1px solid #f1e7dd;
}

.sf-ngo-trust-strip div:last-child {
    border-right: 0;
}

.sf-ngo-trust-strip b {
    color: #ff7a00;
    font-size: 24px;
}

.sf-ngo-trust-strip strong {
    color: #111827;
    font-size: 14px;
    display: block;
}

.sf-ngo-trust-strip span {
    color: #64748b;
    font-size: 12px;
    display: block;
}

.sf-ngo-feature-grid {
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    background: #fff;
    border: 1px solid #f1e7dd;
    border-radius: 18px;
    margin: 28px 0;
    overflow: hidden;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
}

.sf-ngo-feature-grid div {
    padding: 24px 16px;
    text-align: center;
    border-right: 1px solid #f1e7dd;
}

.sf-ngo-feature-grid div:last-child {
    border-right: 0;
}

.sf-ngo-feature-grid b {
    display: block;
    color: #ff7a00;
    font-size: 30px;
    margin-bottom: 12px;
}

.sf-ngo-feature-grid strong {
    display: block;
    color: #111827;
    font-size: 14px;
    margin-bottom: 8px;
}

.sf-ngo-feature-grid span {
    display: block;
    color: #64748b;
    font-size: 12px;
    line-height: 1.45;
}

@media (max-width: 960px) {
    .sf-ngo-hero-grid {
        grid-template-columns: 1fr;
        padding-top: 34px;
    }

    .sf-ngo-hero-image-wrap {
        height: 360px;
        border-radius: 28px;
    }

    .sf-ngo-feature-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sf-ngo-trust-strip {
        grid-template-columns: 1fr;
    }

    .sf-ngo-trust-strip div {
        border-right: 0;
        border-bottom: 1px solid #f1e7dd;
    }
}

@media (max-width: 560px) {
    .sf-ngo-hero-content h1 {
        font-size: 36px;
    }

    .sf-ngo-hero-content p {
        font-size: 15px;
    }

    .sf-ngo-btn {
        width: 100%;
    }

    .sf-ngo-feature-grid {
        grid-template-columns: 1fr;
    }

    .sf-ngo-feature-grid div {
        border-right: 0;
        border-bottom: 1px solid #f1e7dd;
    }
}

/* SFIMS Premium Statistics Band */
.sf-premium-stats {
    background: #ffffff;
    padding: 24px 0 36px;
}

.sf-premium-stats-card {
    background: linear-gradient(135deg, #ff7a00, #ff9f1c);
    border-radius: 24px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    box-shadow: 0 22px 55px rgba(255, 122, 0, .22);
    position: relative;
}

.sf-premium-stats-card:before {
    content: "";
    position: absolute;
    left: -80px;
    top: -120px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255,255,255,.16);
}

.sf-premium-stats-card:after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -110px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(255,255,255,.13);
}

.sf-premium-stat {
    position: relative;
    z-index: 1;
    padding: 28px 22px;
    text-align: center;
    color: #fff;
    border-right: 1px solid rgba(255,255,255,.22);
}

.sf-premium-stat:last-child {
    border-right: 0;
}

.sf-premium-stat span {
    display: inline-flex;
    background: rgba(255,255,255,.15);
    border: 1px solid rgba(255,255,255,.22);
    padding: 6px 10px;
    border-radius: 999px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .4px;
}

.sf-premium-stat b {
    display: block;
    font-size: 46px;
    line-height: 1;
    margin: 14px 0 8px;
    color: #fff;
    font-weight: 900;
    letter-spacing: -1px;
}

.sf-premium-stat small {
    display: block;
    color: rgba(255,255,255,.9);
    font-size: 13px;
    font-weight: 700;
    line-height: 1.45;
}

@media (max-width: 960px) {
    .sf-premium-stats-card {
        grid-template-columns: repeat(2, 1fr);
    }

    .sf-premium-stat:nth-child(2) {
        border-right: 0;
    }

    .sf-premium-stat:nth-child(1),
    .sf-premium-stat:nth-child(2) {
        border-bottom: 1px solid rgba(255,255,255,.22);
    }
}

@media (max-width: 560px) {
    .sf-premium-stats {
        padding: 18px 0 28px;
    }

    .sf-premium-stats-card {
        grid-template-columns: 1fr;
        border-radius: 18px;
    }

    .sf-premium-stat {
        border-right: 0;
        border-bottom: 1px solid rgba(255,255,255,.22);
    }

    .sf-premium-stat:last-child {
        border-bottom: 0;
    }

    .sf-premium-stat b {
        font-size: 36px;
    }
}

/* SFIMS Premium Programs Section */
.sf-programs-section {
    background: #fff8f1;
    padding: 78px 0;
    position: relative;
    overflow: hidden;
}

.sf-programs-section:before {
    content: "";
    position: absolute;
    left: -120px;
    top: 80px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255, 122, 0, .08);
}

.sf-programs-head {
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
    margin-bottom: 34px;
}

.sf-programs-kicker {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-programs-head h2 {
    color: #111827;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 10px;
    letter-spacing: -0.8px;
}

.sf-programs-head p {
    color: #64748b;
    line-height: 1.7;
    max-width: 690px;
    margin: 0;
}

.sf-programs-head-link {
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 13px 20px;
    font-weight: 900;
    white-space: nowrap;
    box-shadow: 0 12px 28px rgba(255, 122, 0, .24);
}

.sf-programs-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.sf-program-card {
    background: #fff;
    border: 1px solid #f1e7dd;
    border-radius: 22px;
    padding: 22px;
    min-height: 285px;
    display: flex;
    flex-direction: column;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
    transition: all .22s ease;
    position: relative;
    overflow: hidden;
}

.sf-program-card:after {
    content: "";
    position: absolute;
    right: -42px;
    top: -42px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #fff4e8;
}

.sf-program-card:hover {
    transform: translateY(-6px);
    border-color: #fed7aa;
    box-shadow: 0 24px 58px rgba(255, 122, 0, .14);
}

.sf-program-card-top,
.sf-program-card h3,
.sf-program-card p,
.sf-program-meta,
.sf-program-actions {
    position: relative;
    z-index: 1;
}

.sf-program-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 18px;
}

.sf-program-icon {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: linear-gradient(135deg, #ff7a00, #ff9f1c);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    box-shadow: 0 14px 28px rgba(255, 122, 0, .22);
}

.sf-program-ribbon {
    background: #fff7ed;
    color: #ff7a00;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    padding: 6px 10px;
    font-size: 11px;
    font-weight: 900;
}

.sf-program-card h3 {
    color: #111827;
    font-size: 20px;
    margin: 0 0 10px;
}

.sf-program-card p {
    color: #64748b;
    line-height: 1.6;
    margin: 0 0 16px;
    font-size: 14px;
}

.sf-program-meta {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: auto;
    padding-top: 12px;
}

.sf-program-meta span {
    background: #fff7ed;
    color: #9a3412;
    border: 1px solid #fed7aa;
    border-radius: 999px;
    padding: 7px 10px;
    font-size: 11px;
    font-weight: 900;
}

.sf-program-actions {
    margin-top: 18px;
}

.sf-program-actions a {
    display: inline-flex;
    color: #ff7a00;
    font-weight: 900;
    font-size: 14px;
}

@media (max-width: 1100px) {
    .sf-programs-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}

@media (max-width: 860px) {
    .sf-programs-head {
        flex-direction: column;
        align-items: flex-start;
    }

    .sf-programs-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .sf-programs-section {
        padding: 54px 0;
    }

    .sf-programs-head h2 {
        font-size: 30px;
    }

    .sf-programs-head-link {
        width: 100%;
        text-align: center;
    }

    .sf-programs-grid {
        grid-template-columns: 1fr;
    }
}

/* SFIMS Premium CTA Section */
.sf-premium-cta-section {
    background: #ffffff;
    padding: 54px 0;
}

.sf-premium-cta {
    background: linear-gradient(135deg, #ff7a00, #ff9f1c);
    border-radius: 30px;
    padding: 44px;
    display: grid;
    grid-template-columns: 1.35fr .65fr;
    gap: 24px;
    align-items: center;
    position: relative;
    overflow: hidden;
    box-shadow: 0 24px 62px rgba(255, 122, 0, .22);
}

.sf-premium-cta:before {
    content: "";
    position: absolute;
    left: -70px;
    bottom: -90px;
    width: 240px;
    height: 240px;
    border-radius: 50%;
    background: rgba(255,255,255,.16);
}

.sf-premium-cta:after {
    content: "";
    position: absolute;
    right: -70px;
    top: -90px;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255,255,255,.13);
}

.sf-premium-cta-content,
.sf-premium-cta-actions {
    position: relative;
    z-index: 1;
}

.sf-premium-cta-content span {
    display: inline-flex;
    background: rgba(255,255,255,.16);
    border: 1px solid rgba(255,255,255,.25);
    color: #fff;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-bottom: 12px;
}

.sf-premium-cta h2 {
    color: #fff;
    font-size: 38px;
    line-height: 1.16;
    margin: 0 0 12px;
    letter-spacing: -.8px;
}

.sf-premium-cta p {
    color: rgba(255,255,255,.92);
    line-height: 1.7;
    margin: 0;
    max-width: 760px;
}

.sf-premium-cta-badges {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.sf-premium-cta-badges b {
    display: inline-flex;
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.22);
    color: #fff;
    border-radius: 999px;
    padding: 8px 12px;
    font-size: 12px;
}

.sf-premium-cta-actions {
    display: grid;
    gap: 12px;
    justify-items: stretch;
}

.sf-premium-cta-actions a {
    border-radius: 999px;
    padding: 14px 20px;
    text-align: center;
    font-weight: 900;
    transition: all .22s ease;
}

.sf-premium-cta-actions a:hover {
    transform: translateY(-2px);
}

.sf-premium-cta-primary {
    background: #fff;
    color: #ff7a00;
    box-shadow: 0 12px 28px rgba(15, 23, 42, .12);
}

.sf-premium-cta-light {
    background: rgba(255,255,255,.14);
    color: #fff;
    border: 1px solid rgba(255,255,255,.28);
}

@media (max-width: 860px) {
    .sf-premium-cta {
        grid-template-columns: 1fr;
        padding: 34px;
    }

    .sf-premium-cta-actions {
        justify-items: start;
        grid-template-columns: repeat(2, minmax(160px, 1fr));
    }
}

@media (max-width: 560px) {
    .sf-premium-cta-section {
        padding: 40px 0;
    }

    .sf-premium-cta {
        padding: 26px 20px;
        border-radius: 22px;
    }

    .sf-premium-cta h2 {
        font-size: 28px;
    }

    .sf-premium-cta-actions {
        grid-template-columns: 1fr;
    }
}

/* SFIMS Premium Impact Section */
.sf-impact-section {
    background: #fff;
    padding: 82px 0;
    position: relative;
    overflow: hidden;
}

.sf-impact-section:before {
    content: "";
    position: absolute;
    right: -120px;
    top: 70px;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: rgba(255, 122, 0, .08);
}

.sf-impact-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    gap: 34px;
    align-items: center;
}

.sf-impact-photo {
    min-height: 520px;
    border-radius: 34px;
    background-size: cover;
    background-position: center;
    overflow: hidden;
    position: relative;
    box-shadow: 0 24px 62px rgba(15, 23, 42, .12);
}

.sf-impact-photo:before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17,24,39,.04), rgba(17,24,39,.72));
}

.sf-impact-photo-overlay {
    position: absolute;
    left: 28px;
    right: 28px;
    bottom: 28px;
    color: #fff;
}

.sf-impact-photo-overlay span {
    display: inline-flex;
    width: 64px;
    height: 64px;
    border-radius: 20px;
    background: #ff7a00;
    color: #fff;
    align-items: center;
    justify-content: center;
    font-weight: 900;
    font-size: 26px;
    margin-bottom: 16px;
    box-shadow: 0 14px 30px rgba(255, 122, 0, .25);
}

.sf-impact-photo-overlay h2 {
    color: #fff;
    font-size: 36px;
    line-height: 1.16;
    margin: 0 0 10px;
}

.sf-impact-photo-overlay p {
    color: rgba(255,255,255,.92);
    line-height: 1.65;
    margin: 0;
}

.sf-impact-kicker {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-impact-content h2 {
    color: #111827;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
    letter-spacing: -.8px;
}

.sf-impact-content > p {
    color: #64748b;
    line-height: 1.75;
    margin: 0 0 22px;
}

.sf-impact-metrics {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 12px;
    margin: 24px 0;
}

.sf-impact-metrics div {
    background: #fff8f1;
    border: 1px solid #fed7aa;
    border-radius: 20px;
    padding: 18px 14px;
}

.sf-impact-metrics b {
    color: #ff7a00;
    display: block;
    font-size: 30px;
    line-height: 1;
    margin-bottom: 8px;
}

.sf-impact-metrics span {
    color: #64748b;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
}

.sf-impact-cards {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.sf-impact-card {
    background: #fff;
    border: 1px solid #f1e7dd;
    border-radius: 20px;
    padding: 18px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
    transition: all .22s ease;
}

.sf-impact-card:hover {
    transform: translateY(-4px);
    border-color: #fed7aa;
    box-shadow: 0 22px 48px rgba(255, 122, 0, .12);
}

.sf-impact-card strong {
    display: block;
    color: #111827;
    margin-bottom: 7px;
    font-size: 16px;
}

.sf-impact-card span {
    display: block;
    color: #64748b;
    line-height: 1.55;
    font-size: 13px;
}

@media (max-width: 960px) {
    .sf-impact-grid {
        grid-template-columns: 1fr;
    }

    .sf-impact-photo {
        min-height: 380px;
    }
}

@media (max-width: 560px) {
    .sf-impact-section {
        padding: 54px 0;
    }

    .sf-impact-photo {
        min-height: 280px;
        border-radius: 24px;
    }

    .sf-impact-photo-overlay {
        left: 20px;
        right: 20px;
        bottom: 20px;
    }

    .sf-impact-photo-overlay h2,
    .sf-impact-content h2 {
        font-size: 28px;
    }

    .sf-impact-metrics,
    .sf-impact-cards {
        grid-template-columns: 1fr;
    }
}

/* SFIMS Premium Testimonials */
.sf-testimonials-section {
    background: #fff8f1;
    padding: 78px 0;
    position: relative;
    overflow: hidden;
}

.sf-testimonials-head {
    max-width: 760px;
    margin: 0 auto 34px;
    text-align: center;
}

.sf-testimonials-head span {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-testimonials-head h2 {
    color: #111827;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
}

.sf-testimonials-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-testimonials-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.sf-testimonial-card {
    background: #fff;
    border: 1px solid #f1e7dd;
    border-radius: 24px;
    padding: 24px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
    transition: all .22s ease;
    position: relative;
    overflow: hidden;
}

.sf-testimonial-card:before {
    content: "“";
    position: absolute;
    right: 22px;
    top: 8px;
    font-size: 78px;
    line-height: 1;
    color: #fed7aa;
    font-family: serif;
}

.sf-testimonial-card:hover {
    transform: translateY(-6px);
    border-color: #fed7aa;
    box-shadow: 0 24px 58px rgba(255, 122, 0, .14);
}

.sf-testimonial-top {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-bottom: 18px;
    position: relative;
    z-index: 1;
}

.sf-testimonial-top img {
    width: 62px;
    height: 62px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #fff4e8;
}

.sf-testimonial-top strong {
    display: block;
    color: #111827;
    font-size: 16px;
}

.sf-testimonial-top small {
    display: block;
    color: #64748b;
    margin-top: 4px;
    font-weight: 700;
}

.sf-testimonial-card p {
    color: #64748b;
    line-height: 1.7;
    margin: 0 0 18px;
    position: relative;
    z-index: 1;
}

.sf-testimonial-rating {
    color: #ff7a00;
    font-weight: 900;
    letter-spacing: 2px;
    position: relative;
    z-index: 1;
}

@media (max-width: 960px) {
    .sf-testimonials-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 560px) {
    .sf-testimonials-section {
        padding: 54px 0;
    }

    .sf-testimonials-head h2 {
        font-size: 30px;
    }

    .sf-testimonials-grid {
        grid-template-columns: 1fr;
    }
}

/* VERIFIED INTERN PROFILE */

.sf-testimonial-user{
    flex:1;
}

.sf-testimonial-user strong{
    display:block;
    color:#111827;
    font-size:17px;
    font-weight:800;
}

.sf-testimonial-user small{
    display:block;
    color:#64748b;
    font-size:13px;
    line-height:1.55;
    margin-top:3px;
}

.sf-testimonial-badge{
    display:inline-flex;
    align-items:center;
    gap:6px;
    margin-top:10px;
    padding:6px 12px;
    border-radius:999px;
    background:#ecfdf5;
    color:#047857;
    border:1px solid #a7f3d0;
    font-size:11px;
    font-weight:800;
}

.sf-testimonial-domain,
.sf-testimonial-batch{
    display:inline-flex;
    align-items:center;
    margin-top:12px;
    margin-right:8px;
    padding:8px 12px;
    border-radius:999px;
    background:#fff7ed;
    border:1px solid #fed7aa;
    color:#9a3412;
    font-size:12px;
    font-weight:700;
}

.sf-testimonial-rating{
    margin-top:18px;
    color:#ff7a00;
    font-size:18px;
    font-weight:900;
    letter-spacing:2px;
}

.sf-testimonial-top{
    display:flex;
    align-items:flex-start;
    gap:16px;
    margin-bottom:18px;
}

.sf-testimonial-top img{
    width:72px;
    height:72px;
    border-radius:50%;
    object-fit:cover;
    border:4px solid #fff4e8;
    box-shadow:0 10px 24px rgba(255,122,0,.12);
}


/* SFIMS Verified Intern Testimonial Cards */
.sf-testimonial-user{flex:1}
.sf-testimonial-user strong{display:block;color:#111827;font-size:17px;font-weight:900}
.sf-testimonial-user small{display:block;color:#64748b;font-size:13px;line-height:1.55;margin-top:3px}
.sf-testimonial-badge{display:inline-flex;margin-top:10px;padding:6px 12px;border-radius:999px;background:#ecfdf5;color:#047857;border:1px solid #a7f3d0;font-size:11px;font-weight:900}
.sf-testimonial-profile-meta{display:flex;gap:8px;flex-wrap:wrap;margin:12px 0 16px}
.sf-testimonial-profile-meta span{display:inline-flex;padding:8px 12px;border-radius:999px;background:#fff7ed;border:1px solid #fed7aa;color:#9a3412;font-size:12px;font-weight:800}
.sf-testimonial-rating{color:#ff7a00;font-size:18px;font-weight:900;letter-spacing:2px}
.sf-testimonial-top img{width:72px;height:72px;border-radius:50%;object-fit:cover;border:4px solid #fff4e8;box-shadow:0 10px 24px rgba(255,122,0,.12)}

/* SFIMS Premium Partners Section */
.sf-partners-section {
    background: #ffffff;
    padding: 78px 0;
    position: relative;
    overflow: hidden;
}

.sf-partners-head {
    max-width: 780px;
    margin: 0 auto 34px;
    text-align: center;
}

.sf-partners-head span {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-partners-head h2 {
    color: #111827;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
}

.sf-partners-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-partners-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
}

.sf-partner-card {
    min-height: 118px;
    background: #fff8f1;
    border: 1px solid #fed7aa;
    border-radius: 20px;
    padding: 18px 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    color: #111827;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
    transition: all .22s ease;
}

.sf-partner-card:hover {
    transform: translateY(-5px);
    background: #ffffff;
    box-shadow: 0 22px 48px rgba(255, 122, 0, .13);
}

.sf-partner-card img {
    max-width: 130px;
    max-height: 62px;
    object-fit: contain;
    margin-bottom: 10px;
}

.sf-partner-card strong {
    display: block;
    font-size: 15px;
    font-weight: 900;
}

.sf-partner-card span {
    display: block;
    color: #64748b;
    font-size: 12px;
    font-weight: 700;
    margin-top: 6px;
    line-height: 1.45;
}

.sf-partners-cta {
    margin-top: 26px;
    background: linear-gradient(135deg, #111827, #0B3A4A);
    border-radius: 24px;
    padding: 26px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    color: #fff;
    box-shadow: 0 20px 48px rgba(17, 24, 39, .16);
}

.sf-partners-cta strong {
    display: block;
    color: #fff;
    font-size: 20px;
    margin-bottom: 6px;
}

.sf-partners-cta span {
    color: #cbd5e1;
    line-height: 1.6;
}

.sf-partners-cta a {
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 13px 20px;
    font-weight: 900;
    white-space: nowrap;
}

@media (max-width: 960px) {
    .sf-partners-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .sf-partners-cta {
        flex-direction: column;
        align-items: flex-start;
    }
}

@media (max-width: 560px) {
    .sf-partners-section {
        padding: 54px 0;
    }

    .sf-partners-head h2 {
        font-size: 30px;
    }

    .sf-partners-grid {
        grid-template-columns: 1fr;
    }

    .sf-partners-cta a {
        width: 100%;
        text-align: center;
    }
}

/* SFIMS Premium Recognition Section */
.sf-recognition-section {
    background: #fff8f1;
    padding: 78px 0;
    position: relative;
    overflow: hidden;
}

.sf-recognition-head {
    max-width: 820px;
    margin: 0 auto 34px;
    text-align: center;
}

.sf-recognition-head span {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-recognition-head h2 {
    color: #111827;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
}

.sf-recognition-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-recognition-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 18px;
}

.sf-recognition-card {
    background: #fff;
    border: 1px solid #f1e7dd;
    border-radius: 22px;
    padding: 24px;
    box-shadow: 0 14px 34px rgba(15, 23, 42, .05);
    transition: all .22s ease;
    position: relative;
    overflow: hidden;
}

.sf-recognition-card:after {
    content: "";
    position: absolute;
    right: -40px;
    top: -40px;
    width: 110px;
    height: 110px;
    border-radius: 50%;
    background: #fff4e8;
}

.sf-recognition-card:hover {
    transform: translateY(-6px);
    border-color: #fed7aa;
    box-shadow: 0 24px 58px rgba(255, 122, 0, .14);
}

.sf-recognition-icon,
.sf-recognition-card h3,
.sf-recognition-card p {
    position: relative;
    z-index: 1;
}

.sf-recognition-icon {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    background: linear-gradient(135deg, #ff7a00, #ff9f1c);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 900;
    margin-bottom: 18px;
    box-shadow: 0 14px 28px rgba(255, 122, 0, .22);
}

.sf-recognition-card h3 {
    color: #111827;
    font-size: 19px;
    margin: 0 0 10px;
}

.sf-recognition-card p {
    color: #64748b;
    line-height: 1.65;
    margin: 0;
    font-size: 14px;
}

@media (max-width: 960px) {
    .sf-recognition-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 560px) {
    .sf-recognition-section {
        padding: 54px 0;
    }

    .sf-recognition-head h2 {
        font-size: 30px;
    }

    .sf-recognition-grid {
        grid-template-columns: 1fr;
    }
}

/* SFIMS Recognition V2 - Timeline Layout */
.sf-recognition-v2 {
    background: linear-gradient(135deg, #fff8f1 0%, #ffffff 58%, #fff4e8 100%);
    padding: 84px 0;
    position: relative;
    overflow: hidden;
}

.sf-recognition-v2:before {
    content: "";
    position: absolute;
    left: -120px;
    top: 90px;
    width: 300px;
    height: 300px;
    border-radius: 50%;
    background: rgba(255,122,0,.09);
}

.sf-recognition-v2-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: .9fr 1.1fr;
    gap: 42px;
    align-items: center;
}

.sf-recognition-v2-left span {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-recognition-v2-left h2 {
    color: #111827;
    font-size: 44px;
    line-height: 1.12;
    margin: 10px 0 14px;
    letter-spacing: -1px;
}

.sf-recognition-v2-left p {
    color: #64748b;
    line-height: 1.75;
    margin: 0 0 24px;
}

.sf-recognition-certificate {
    background: #111827;
    border-radius: 24px;
    padding: 22px;
    color: #fff;
    display: flex;
    justify-content: space-between;
    gap: 18px;
    align-items: center;
    box-shadow: 0 22px 54px rgba(17,24,39,.18);
}

.sf-recognition-certificate small {
    display: block;
    color: #cbd5e1;
    margin-bottom: 6px;
    font-weight: 700;
}

.sf-recognition-certificate strong {
    color: #fff;
    font-size: 20px;
}

.sf-recognition-certificate a {
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 12px 18px;
    font-weight: 900;
    white-space: nowrap;
}

.sf-recognition-timeline {
    position: relative;
    display: grid;
    gap: 16px;
}

.sf-recognition-timeline:before {
    content: "";
    position: absolute;
    left: 31px;
    top: 28px;
    bottom: 28px;
    width: 3px;
    background: linear-gradient(#ff7a00, #fed7aa);
    border-radius: 999px;
}

.sf-recognition-step {
    position: relative;
    display: grid;
    grid-template-columns: 66px 1fr;
    gap: 16px;
    background: rgba(255,255,255,.92);
    border: 1px solid #f1e7dd;
    border-radius: 24px;
    padding: 20px;
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
    transition: all .22s ease;
}

.sf-recognition-step:hover {
    transform: translateX(6px);
    border-color: #fed7aa;
    box-shadow: 0 24px 58px rgba(255,122,0,.14);
}

.sf-recognition-step-icon {
    width: 64px;
    height: 64px;
    border-radius: 20px;
    background: linear-gradient(135deg, #ff7a00, #ff9f1c);
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
    font-weight: 900;
    position: relative;
    z-index: 2;
    box-shadow: 0 14px 28px rgba(255,122,0,.22);
}

.sf-recognition-step h3 {
    color: #111827;
    margin: 0 0 8px;
    font-size: 19px;
}

.sf-recognition-step p {
    color: #64748b;
    margin: 0;
    line-height: 1.6;
    font-size: 14px;
}

@media (max-width: 960px) {
    .sf-recognition-v2-grid {
        grid-template-columns: 1fr;
    }

    .sf-recognition-v2-left h2 {
        font-size: 36px;
    }
}

@media (max-width: 560px) {
    .sf-recognition-v2 {
        padding: 54px 0;
    }

    .sf-recognition-v2-left h2 {
        font-size: 30px;
    }

    .sf-recognition-certificate {
        flex-direction: column;
        align-items: flex-start;
    }

    .sf-recognition-certificate a {
        width: 100%;
        text-align: center;
    }

    .sf-recognition-step {
        grid-template-columns: 1fr;
    }

    .sf-recognition-timeline:before {
        display: none;
    }
}

/* SFIMS Premium FAQ Section */
.sf-faq-section {
    background: #ffffff;
    padding: 82px 0;
    position: relative;
    overflow: hidden;
}

.sf-faq-grid {
    display: grid;
    grid-template-columns: .85fr 1.15fr;
    gap: 34px;
    align-items: start;
}

.sf-faq-panel {
    background: linear-gradient(135deg, #111827, #0B3A4A);
    color: #fff;
    border-radius: 30px;
    padding: 34px;
    position: sticky;
    top: 110px;
    overflow: hidden;
    box-shadow: 0 24px 62px rgba(17, 24, 39, .18);
}

.sf-faq-panel:before {
    content: "";
    position: absolute;
    right: -80px;
    top: -90px;
    width:200px;
    height: 220px;
    border-radius: 50%;
    background: rgba(255,122,0,.22);
}

.sf-faq-panel > * {
    position: relative;
    z-index: 1;
}

.sf-faq-panel span {
    display: inline-flex;
    color: #ff9f1c;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-faq-panel h2 {
    color: #fff;
    font-size: 38px;
    line-height: 1.16;
    margin: 10px 0 14px;
}

.sf-faq-panel p {
    color: #cbd5e1;
    line-height: 1.7;
    margin: 0;
}

.sf-faq-help {
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 22px;
    padding: 20px;
    margin-top: 26px;
}

.sf-faq-help strong {
    display: block;
    color: #fff;
    margin-bottom: 8px;
    font-size: 18px;
}

.sf-faq-help small {
    display: block;
    color: #dbeafe;
    line-height: 1.55;
    margin-bottom: 16px;
}

.sf-faq-help div {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
}

.sf-faq-help a {
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 10px 14px;
    font-size: 12px;
    font-weight: 900;
}

.sf-faq-help a:last-child {
    background: rgba(255,255,255,.14);
    border: 1px solid rgba(255,255,255,.22);
}

.sf-faq-list {
    display: grid;
    gap: 14px;
}

.sf-faq-item {
    background: #fff8f1;
    border: 1px solid #fed7aa;
    border-radius: 20px;
    padding: 0;
    overflow: hidden;
    box-shadow: 0 12px 30px rgba(15,23,42,.04);
}

.sf-faq-item summary {
    list-style: none;
    cursor: pointer;
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 14px;
    align-items: center;
    padding: 20px;
}

.sf-faq-item summary::-webkit-details-marker {
    display: none;
}

.sf-faq-item summary span {
    width: 42px;
    height: 42px;
    border-radius: 14px;
    background: #ff7a00;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.sf-faq-item summary strong {
    color: #111827;
    font-size: 16px;
}

.sf-faq-item p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
    padding: 0 20px 20px 82px;
}

.sf-faq-item[open] {
    background: #fff;
    box-shadow: 0 20px 48px rgba(255,122,0,.11);
}

@media (max-width: 960px) {
    .sf-faq-grid {
        grid-template-columns: 1fr;
    }

    .sf-faq-panel {
        position: relative;
        top: auto;
    }
}

@media (max-width: 560px) {
    .sf-faq-section {
        padding: 54px 0;
    }

    .sf-faq-panel {
        padding: 26px 20px;
        border-radius: 24px;
    }

    .sf-faq-panel h2 {
        font-size: 30px;
    }

    .sf-faq-item summary {
        grid-template-columns: 1fr;
        gap: 10px;
    }

    .sf-faq-item p {
        padding: 0 20px 20px;
    }
}

/* FAQ Student Visual */
.sf-faq-student-card {
    position: relative;
    z-index: 1;
    margin-top: 24px;
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.16);
    border-radius: 24px;
    padding: 16px;
    display: grid;
    grid-template-columns: 118px 1fr;
    gap: 16px;
    align-items: center;
}

.sf-faq-student-image {
    height: 138px;
    border-radius: 22px;
    background-size: cover;
    background-position: center;
    box-shadow: 0 18px 36px rgba(0,0,0,.18);
    border: 3px solid rgba(255,255,255,.18);
}

.sf-faq-student-note {
    background: #ffffff;
    color: #111827;
    border-radius: 18px;
    padding: 14px;
    position: relative;
    box-shadow: 0 14px 28px rgba(0,0,0,.12);
}

.sf-faq-student-note:before {
    content: "";
    position: absolute;
    left: -9px;
    top: 28px;
    border-top: 9px solid transparent;
    border-bottom: 9px solid transparent;
    border-right: 10px solid #ffffff;
}

.sf-faq-student-note strong {
    display: block;
    color: #111827;
    font-size: 15px;
    margin-bottom: 4px;
}

.sf-faq-student-note small {
    display: block;
    color: #64748b;
    line-height: 1.5;
    font-weight: 700;
}

@media (max-width: 560px) {
    .sf-faq-student-card {
        grid-template-columns: 1fr;
    }

    .sf-faq-student-image {
        height: 220px;
    }

    .sf-faq-student-note:before {
        left: 28px;
        top: -18px;
        border-left: 9px solid transparent;
        border-right: 9px solid transparent;
        border-bottom: 10px solid #ffffff;
        border-top: 0;
    }
}

/* =========================
   FAQ Illustration
========================= */

.sf-faq-illustration{
    position:relative;
    height:430px;
    display:flex;
    justify-content:center;
    align-items:flex-end;
    margin-top:28px;
}

.sf-faq-blob{
    position:absolute;
    width:320px;
    height:320px;
    border-radius:50%;
    background:linear-gradient(135deg,#ff7a00,#ffb347);
    opacity:.15;
    filter:blur(10px);
}

.sf-faq-person{
    position:relative;
    z-index:2;
    max-height:400px;
    max-width:100%;
    object-fit:contain;
}

.sf-faq-bubble{
    position:absolute;
    top:60px;
    right:0;
    width:200px;
    background:#fff;
    border-radius:18px;
    padding:16px;
    box-shadow:0 20px 45px rgba(0,0,0,.12);
    z-index:3;
}

.sf-faq-bubble strong{
    display:block;
    color:#111827;
    margin-bottom:6px;
}

.sf-faq-bubble small{
    color:#64748b;
    line-height:1.6;
}

.sf-faq-floating{
    position:absolute;
    background:#fff;
    border-radius:999px;
    padding:10px 16px;
    font-size:13px;
    font-weight:800;
    box-shadow:0 10px 28px rgba(0,0,0,.10);
    z-index:3;
}

.sf-faq-floating-1{
    left:0;
    top:90px;
}

.sf-faq-floating-2{
    right:25px;
    bottom:60px;
}

@media(max-width:991px){

.sf-faq-illustration{
height:320px;
margin-top:30px;
}

.sf-faq-bubble{
position:relative;
top:auto;
right:auto;
margin-top:18px;
width:100%;
}

}


/* FAQ Illustration Visibility Fix */
.sf-faq-panel {
    overflow: visible !important;
}

.sf-faq-illustration {
    min-height: 430px !important;
    display: flex !important;
    visibility: visible !important;
    opacity: 1 !important;
}

.sf-faq-person {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    width: auto !important;
    height: auto !important;
    max-height: 400px !important;
    max-width: 100% !important;
    object-fit: contain !important;
}

.sf-faq-person[src=""] {
    display: none !important;
}

/* SFIMS FAQ V3 Mockup Style */
.sf-faq-v3 {
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 100%);
    padding: 86px 0;
    overflow: hidden;
}

.sf-faq-v3-head {
    text-align: center;
    max-width: 850px;
    margin: 0 auto 30px;
}

.sf-faq-v3-head span {
    color: #ff7a00;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 1px;
    font-size: 13px;
}

.sf-faq-v3-head h2 {
    color: #0B3A4A;
    font-size: 48px;
    line-height: 1.12;
    margin: 8px 0 10px;
    letter-spacing: -1px;
}

.sf-faq-v3-head h2 b {
    color: #ff7a00;
}

.sf-faq-v3-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-faq-v3-shell {
    background: #ffffff;
    border: 1px solid #eef2f7;
    border-radius: 34px;
    display: grid;
    grid-template-columns: .95fr 1.05fr;
    overflow: hidden;
    box-shadow: 0 28px 80px rgba(15, 23, 42, .08);
}

.sf-faq-v3-visual {
    background: linear-gradient(135deg, #fff8f1, #ffffff);
    min-height: 680px;
    position: relative;
    padding: 34px;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    overflow: hidden;
}

.sf-faq-v3-shape {
    position: absolute;
    width: 430px;
    height: 430px;
    border-radius: 50%;
    background: linear-gradient(135deg, #ff7a00, #ffb347);
    opacity: .88;
    bottom: 120px;
    left: 50%;
    transform: translateX(-50%);
}

.sf-faq-v3-person {
    position: relative;
    z-index: 2;
    max-height: 560px;
    max-width: 92%;
    object-fit: contain;
    filter: drop-shadow(0 24px 40px rgba(15,23,42,.16));
}

.sf-faq-v3-chip {
    position: absolute;
    z-index: 3;
    background: #fff;
    border-radius: 18px;
    padding: 14px 18px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
    border: 1px solid #f1e7dd;
}

.sf-faq-v3-chip strong {
    display: block;
    color: #0B3A4A;
    font-size: 14px;
}

.sf-faq-v3-chip small {
    color: #64748b;
    font-weight: 700;
}

.sf-faq-v3-chip-1 {
    left: 42px;
    top: 150px;
}

.sf-faq-v3-chip-2 {
    left: 42px;
    bottom: 210px;
}

.sf-faq-v3-bubble {
    position: absolute;
    z-index: 3;
    right: 34px;
    top: 110px;
    width:200px;
    background: #fff;
    border-radius: 24px;
    padding: 18px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .12);
}

.sf-faq-v3-bubble strong {
    color: #ff7a00;
    display: block;
    margin-bottom: 8px;
}

.sf-faq-v3-bubble small {
    color: #334155;
    line-height: 1.55;
}

.sf-faq-v3-support {
    position: absolute;
    z-index: 4;
    left: 34px;
    right: 34px;
    bottom: 34px;
    background: rgba(255,255,255,.94);
    border: 1px solid #f1e7dd;
    border-radius: 24px;
    padding: 22px;
    box-shadow: 0 18px 42px rgba(15, 23, 42, .10);
}

.sf-faq-v3-support strong {
    display: block;
    color: #0B3A4A;
    font-size: 18px;
}

.sf-faq-v3-support small {
    display: block;
    color: #64748b;
    line-height: 1.6;
    margin-top: 6px;
}

.sf-faq-v3-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    margin-top: 16px;
}

.sf-faq-v3-actions a {
    background: #ff7a00;
    color: #fff;
    border-radius: 12px;
    padding: 12px 18px;
    font-weight: 900;
}

.sf-faq-v3-actions a:last-child {
    background: #fff;
    color: #ff7a00;
    border: 1px solid #fed7aa;
}

.sf-faq-v3-list {
    background: #f8fafc;
    padding: 34px;
    display: grid;
    gap: 14px;
    align-content: start;
}

.sf-faq-v3-item {
    background: #fff;
    border-radius: 18px;
    border: 1px solid #eef2f7;
    overflow: hidden;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .04);
}

.sf-faq-v3-item summary {
    list-style: none;
    cursor: pointer;
    display: grid;
    grid-template-columns: 58px 1fr 42px;
    gap: 14px;
    align-items: center;
    padding: 18px 20px;
}

.sf-faq-v3-item summary::-webkit-details-marker {
    display: none;
}

.sf-faq-v3-item summary span {
    background: #fff4e8;
    color: #ff7a00;
    border-radius: 14px;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 900;
}

.sf-faq-v3-item summary strong {
    color: #0B3A4A;
    font-size: 16px;
}

.sf-faq-v3-item summary b {
    background: #fff4e8;
    color: #ff7a00;
    border-radius: 50%;
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sf-faq-v3-item[open] summary b {
    content: "-";
}

.sf-faq-v3-item p {
    padding: 0 20px 20px 92px;
    margin: 0;
    color: #64748b;
    line-height: 1.7;
}

.sf-faq-v3-contact {
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 20px;
    padding: 20px;
    display: flex;
    justify-content: space-between;
    gap: 16px;
    align-items: center;
}

.sf-faq-v3-contact strong {
    display: block;
    color: #0B3A4A;
    margin-bottom: 5px;
}

.sf-faq-v3-contact small {
    color: #64748b;
}

.sf-faq-v3-contact a {
    border: 1px solid #ff7a00;
    color: #ff7a00;
    background: #fff;
    border-radius: 12px;
    padding: 12px 18px;
    font-weight: 900;
    white-space: nowrap;
}

@media (max-width: 960px) {
    .sf-faq-v3-shell {
        grid-template-columns: 1fr;
    }

    .sf-faq-v3-visual {
        min-height: 620px;
    }
}

@media (max-width: 560px) {
    .sf-faq-v3 {
        padding: 54px 0;
    }

    .sf-faq-v3-head h2 {
        font-size: 32px;
    }

    .sf-faq-v3-visual,
    .sf-faq-v3-list {
        padding: 20px;
    }

    .sf-faq-v3-visual {
        min-height: 560px;
    }

    .sf-faq-v3-shape {
        width: 300px;
        height: 300px;
    }

    .sf-faq-v3-bubble,
    .sf-faq-v3-chip {
        display: none;
    }

    .sf-faq-v3-support {
        left: 20px;
        right: 20px;
        bottom: 20px;
    }

    .sf-faq-v3-item summary {
        grid-template-columns: 48px 1fr;
    }

    .sf-faq-v3-item summary b {
        display: none;
    }

    .sf-faq-v3-item p {
        padding: 0 20px 20px;
    }

    .sf-faq-v3-contact {
        flex-direction: column;
        align-items: flex-start;
    }

    .sf-faq-v3-contact a {
        width: 100%;
        text-align: center;
    }
}

/* FAQ V3 Layout Final Polish */
.sf-faq-v3 {
    padding: 92px 0 !important;
}

.sf-faq-v3-shell {
    max-width: 1180px;
    margin: 0 auto;
    grid-template-columns: 1fr 1.15fr !important;
    border-radius: 34px !important;
    align-items: stretch;
}

.sf-faq-v3-visual {
    min-height: 640px !important;
    padding: 34px 34px 220px !important;
}

.sf-faq-v3-shape {
    width: 390px !important;
    height: 390px !important;
    bottom: 190px !important;
}

.sf-faq-v3-person {
    max-height: 420px !important;
    max-width: 86% !important;
    align-self: center !important;
    margin-bottom: 70px !important;
}

.sf-faq-v3-chip-1 {
    left: 34px !important;
    top: 120px !important;
}

.sf-faq-v3-chip-2 {
    left: 34px !important;
    bottom: 250px !important;
}

.sf-faq-v3-bubble {
    right: 28px !important;
    top: 115px !important;
    width: 205px !important;
}

.sf-faq-v3-support {
    left: 34px !important;
    right: 34px !important;
    bottom: 34px !important;
}

.sf-faq-v3-list {
    padding: 34px !important;
    gap: 13px !important;
}

.sf-faq-v3-item summary {
    padding: 17px 18px !important;
}

.sf-faq-v3-item p {
    padding: 0 20px 18px 92px !important;
}

@media (max-width: 960px) {
    .sf-faq-v3-shell {
        grid-template-columns: 1fr !important;
    }

    .sf-faq-v3-visual {
        min-height: 660px !important;
    }
}

@media (max-width: 560px) {
    .sf-faq-v3-shell {
        border-radius: 24px !important;
    }

    .sf-faq-v3-visual {
        min-height: 560px !important;
        padding: 24px 20px 210px !important;
    }

    .sf-faq-v3-person {
        max-height: 330px !important;
        max-width: 95% !important;
        margin-bottom: 90px !important;
    }

    .sf-faq-v3-shape {
        width: 280px !important;
        height: 280px !important;
        bottom: 210px !important;
    }

    .sf-faq-v3-support {
        left: 18px !important;
        right: 18px !important;
        bottom: 18px !important;
    }
}

/* FAQ V3 Clean Image Final Fix */
.sf-faq-v3-visual {
    background: linear-gradient(135deg, #fff8f1, #ffffff) !important;
    min-height: 620px !important;
    padding: 24px !important;
    align-items: center !important;
    justify-content: center !important;
}

.sf-faq-v3-shape,
.sf-faq-v3-chip,
.sf-faq-v3-bubble {
    display: none !important;
}

.sf-faq-v3-person {
    max-height: none !important;
    max-width: 100% !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
    object-fit: contain !important;
    border-radius: 24px !important;
    box-shadow: 0 24px 62px rgba(15,23,42,.10) !important;
    background: #fff !important;
}

.sf-faq-v3-support {
    position: absolute !important;
    left: 34px !important;
    right: 34px !important;
    bottom: 34px !important;
    background: rgba(255,255,255,.94) !important;
    backdrop-filter: blur(10px);
}

.sf-faq-v3-list {
    padding: 34px !important;
}

@media (max-width: 960px) {
    .sf-faq-v3-visual {
        min-height: auto !important;
        padding: 20px !important;
    }

    .sf-faq-v3-support {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin-top: 18px !important;
    }
}

@media (max-width: 560px) {
    .sf-faq-v3-person {
        border-radius: 18px !important;
    }
}

/* SFIMS Premium Media Section */
.sf-media-section {
    background: #f8fafc;
    padding: 78px 0;
    position: relative;
    overflow: hidden;
}

.sf-media-head {
    max-width: 820px;
    margin: 0 auto 34px;
    text-align: center;
}

.sf-media-head span {
    color: #ff7a00;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-media-head h2 {
    color: #0B3A4A;
    font-size: 40px;
    line-height: 1.18;
    margin: 8px 0 12px;
}

.sf-media-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-media-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 22px;
}

.sf-media-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    padding: 26px;
    min-height: 230px;
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
    transition: all .22s ease;
    position: relative;
    overflow: hidden;
}

.sf-media-card:after {
    content: "";
    position: absolute;
    right: -40px;
    top: -40px;
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: #fff4e8;
}

.sf-media-card:hover {
    transform: translateY(-6px);
    border-color: #fed7aa;
    box-shadow: 0 24px 58px rgba(255,122,0,.14);
}

.sf-media-featured {
    background: linear-gradient(135deg, #fff8f1, #ffffff);
    border-color: #fed7aa;
}

.sf-media-badge,
.sf-media-card h3,
.sf-media-card p,
.sf-media-card span {
    position: relative;
    z-index: 1;
}

.sf-media-badge {
    display: inline-flex;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    color: #ff7a00;
    border-radius: 999px;
    padding: 7px 11px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    margin-bottom: 16px;
}

.sf-media-card h3 {
    color: #0B3A4A;
    font-size: 20px;
    line-height: 1.3;
    margin: 0 0 10px;
}

.sf-media-card p {
    color: #64748b;
    line-height: 1.65;
    margin: 0 0 18px;
    font-size: 14px;
}

.sf-media-card span {
    color: #ff7a00;
    font-weight: 900;
    font-size: 13px;
}

@media (max-width: 960px) {
    .sf-media-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media (max-width: 560px) {
    .sf-media-section {
        padding: 54px 0;
    }

    .sf-media-head h2 {
        font-size: 30px;
    }

    .sf-media-grid {
        grid-template-columns: 1fr;
    }
}

/* SFIMS Media V2 Mockup Style */
.sf-media-v2 {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
    padding: 88px 0;
    position: relative;
    overflow: hidden;
}

.sf-media-v2:before,
.sf-media-v2:after {
    content: "";
    position: absolute;
    border-radius: 50%;
    background: #fff4e8;
    opacity: .9;
}

.sf-media-v2:before {
    width:200px;
    height: 220px;
    left: -90px;
    top: -80px;
}

.sf-media-v2:after {
    width: 280px;
    height: 280px;
    right: -120px;
    bottom: -90px;
}

.sf-media-v2-head {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin: 0 auto 38px;
    text-align: center;
}

.sf-media-v2-head span {
    color: #ff7a00;
    font-size: 14px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
}

.sf-media-v2-head h2 {
    color: #0B3A4A;
    font-size: 48px;
    line-height: 1.12;
    margin: 8px 0 12px;
    letter-spacing: -1px;
}

.sf-media-v2-head h2 b {
    color: #ff7a00;
}

.sf-media-v2-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-media-v2-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.sf-media-v2-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 24px;
    overflow: hidden;
    box-shadow: 0 16px 40px rgba(15, 23, 42, .07);
    transition: all .22s ease;
}

.sf-media-v2-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 28px 68px rgba(255, 122, 0, .15);
}

.sf-media-v2-featured {
    border-color: #ff7a00;
}

.sf-media-v2-image {
    height: 220px;
    background-size: cover;
    background-position: center;
    position: relative;
}

.sf-media-v2-image:after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg, rgba(17,24,39,.08), rgba(17,24,39,.28));
}

.sf-media-v2-image span {
    position: absolute;
    z-index: 1;
    top: 18px;
    left: 18px;
    background: #ff7a00;
    color: #fff;
    border-radius: 12px;
    padding: 10px 14px;
    font-size: 12px;
    font-weight: 900;
    text-transform: uppercase;
    box-shadow: 0 14px 28px rgba(255,122,0,.22);
}

.sf-media-v2-body {
    padding: 24px;
}

.sf-media-v2-body small {
    color: #64748b;
    font-weight: 800;
}

.sf-media-v2-body h3 {
    color: #0B3A4A;
    font-size: 22px;
    line-height: 1.28;
    margin: 12px 0 10px;
}

.sf-media-v2-body p {
    color: #64748b;
    line-height: 1.65;
    margin: 0 0 18px;
}

.sf-media-v2-body a {
    color: #ff7a00;
    font-weight: 900;
}

.sf-media-v2-strip {
    position: relative;
    z-index: 1;
    margin-top: 30px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 22px;
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    overflow: hidden;
    box-shadow: 0 14px 34px rgba(15,23,42,.05);
}

.sf-media-v2-strip div {
    padding: 22px 18px;
    display: grid;
    grid-template-columns: 48px 1fr;
    gap: 12px;
    align-items: center;
    border-right: 1px solid #fed7aa;
}

.sf-media-v2-strip div:last-child {
    border-right: 0;
}

.sf-media-v2-strip b {
    width: 46px;
    height: 46px;
    border-radius: 16px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sf-media-v2-strip strong {
    color: #0B3A4A;
    display: block;
    font-size: 15px;
}

.sf-media-v2-strip span {
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.sf-media-v2-cta {
    text-align: center;
    margin-top: 30px;
}

.sf-media-v2-cta a {
    display: inline-flex;
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 15px 28px;
    font-weight: 900;
    box-shadow: 0 16px 36px rgba(255,122,0,.24);
}

@media (max-width: 960px) {
    .sf-media-v2-grid,
    .sf-media-v2-strip {
        grid-template-columns: 1fr 1fr;
    }

    .sf-media-v2-strip div:nth-child(2) {
        border-right: 0;
    }

    .sf-media-v2-strip div:nth-child(1),
    .sf-media-v2-strip div:nth-child(2) {
        border-bottom: 1px solid #fed7aa;
    }
}

@media (max-width: 560px) {
    .sf-media-v2 {
        padding: 54px 0;
    }

    .sf-media-v2-head h2 {
        font-size: 32px;
    }

    .sf-media-v2-grid,
    .sf-media-v2-strip {
        grid-template-columns: 1fr;
    }

    .sf-media-v2-strip div {
        border-right: 0;
        border-bottom: 1px solid #fed7aa;
    }

    .sf-media-v2-strip div:last-child {
        border-bottom: 0;
    }
}

/* SFIMS Media V3 Focused Fix */
.sf-media-v3 {
    background: linear-gradient(180deg,#ffffff 0%,#f8fafc 100%);
    padding: 90px 0;
    position: relative;
    overflow: hidden;
}

.sf-media-v3-head {
    max-width: 860px;
    margin: 0 auto 38px;
    text-align: center;
}

.sf-media-v3-head span {
    color: #ff7a00;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: .9px;
    font-size: 14px;
}

.sf-media-v3-head h2 {
    color: #0B3A4A;
    font-size: 46px;
    line-height: 1.12;
    margin: 8px 0 12px;
}

.sf-media-v3-head h2 b {
    color: #ff7a00;
}

.sf-media-v3-head p {
    color: #64748b;
    line-height: 1.7;
    margin: 0;
}

.sf-media-v3-grid {
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 24px;
}

.sf-media-v3-card {
    background: #fff;
    border: 1px solid #eef2f7;
    border-radius: 26px;
    overflow: hidden;
    box-shadow: 0 18px 46px rgba(15,23,42,.07);
    transition: all .22s ease;
}

.sf-media-v3-card:hover {
    transform: translateY(-7px);
    box-shadow: 0 30px 72px rgba(255,122,0,.15);
}

.sf-media-v3-featured {
    border-color: #ff7a00;
}

.sf-media-v3-visual {
    height: 235px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sf-media-v3-visual:before {
    content: "";
    position: absolute;
    width: 260px;
    height: 260px;
    border-radius: 50%;
    background: rgba(255,255,255,.22);
    right: -80px;
    bottom: -90px;
}

.sf-media-v3-visual-1 {
    background: linear-gradient(135deg,#0B3A4A,#1F7A8C);
}

.sf-media-v3-visual-2 {
    background: linear-gradient(135deg,#ff7a00,#ffb347);
}

.sf-media-v3-visual-3 {
    background: linear-gradient(135deg,#111827,#0B3A4A);
}

.sf-media-v3-visual span {
    position: absolute;
    left: 18px;
    top: 18px;
    z-index: 2;
    background: #fff;
    color: #ff7a00;
    border-radius: 999px;
    padding: 9px 13px;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
}

.sf-media-v3-icon {
    position: relative;
    z-index: 1;
    width: 112px;
    height: 112px;
    border-radius: 32px;
    background: rgba(255,255,255,.18);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 56px;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,.22);
    backdrop-filter: blur(10px);
}

.sf-media-v3-body {
    padding: 26px;
}

.sf-media-v3-body small {
    color: #64748b;
    font-weight: 800;
}

.sf-media-v3-body h3 {
    color: #0B3A4A;
    font-size: 22px;
    line-height: 1.28;
    margin: 12px 0 10px;
}

.sf-media-v3-body p {
    color: #64748b;
    line-height: 1.65;
    margin: 0 0 20px;
}

.sf-media-v3-body a {
    color: #ff7a00;
    font-weight: 900;
}

.sf-media-v3-strip {
    margin-top: 30px;
    background: #fff7ed;
    border: 1px solid #fed7aa;
    border-radius: 24px;
    display: grid;
    grid-template-columns: repeat(4,1fr);
    overflow: hidden;
    box-shadow: 0 16px 38px rgba(15,23,42,.06);
}

.sf-media-v3-strip div {
    padding: 24px 20px;
    display: grid;
    grid-template-columns: 54px 1fr;
    gap: 14px;
    align-items: center;
    border-right: 1px solid #fed7aa;
}

.sf-media-v3-strip div:last-child {
    border-right: 0;
}

.sf-media-v3-strip b {
    width: 52px;
    height: 52px;
    border-radius: 18px;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}

.sf-media-v3-strip strong {
    color: #0B3A4A;
    display: block;
    font-size: 15px;
}

.sf-media-v3-strip span {
    color: #64748b;
    font-size: 13px;
    line-height: 1.45;
}

.sf-media-v3-cta {
    text-align: center;
    margin-top: 32px;
}

.sf-media-v3-cta a {
    display: inline-flex;
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 15px 30px;
    font-weight: 900;
    box-shadow: 0 16px 36px rgba(255,122,0,.24);
}

@media(max-width:960px){
    .sf-media-v3-grid,
    .sf-media-v3-strip {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width:560px){
    .sf-media-v3 {
        padding: 54px 0;
    }

    .sf-media-v3-head h2 {
        font-size: 32px;
    }

    .sf-media-v3-grid,
    .sf-media-v3-strip {
        grid-template-columns: 1fr;
    }

    .sf-media-v3-strip div {
        border-right: 0;
        border-bottom: 1px solid #fed7aa;
    }
}

/* Rollback active media section to V2 */
.sf-media-v3 {
    display: none !important;
}


/* ===== MEDIA FINAL CLEAN ===== */

.sf-media-v2-grid{
display:grid;
grid-template-columns:repeat(3,1fr);
gap:28px;
margin-top:42px;
margin-bottom:42px;
}

.sf-media-v2-card{
border-radius:24px;
overflow:hidden;
background:#fff;
border:1px solid #edf2f7;
box-shadow:0 18px 45px rgba(15,23,42,.08);
transition:.3s;
}

.sf-media-v2-card:hover{
transform:translateY(-8px);
box-shadow:0 30px 60px rgba(255,122,0,.18);
}

.sf-media-v2-image{
height:220px;
background-size:cover;
background-position:center;
}

.sf-media-v2-body{
padding:24px;
}

.sf-media-v2-body h3{
font-size:25px;
line-height:1.3;
margin:12px 0;
color:#0B3A4A;
}

.sf-media-v2-body p{
line-height:1.8;
color:#64748b;
margin-bottom:18px;
}

.sf-media-v2-body a{
color:#ff7a00;
font-weight:800;
text-decoration:none;
}

.sf-media-v2-cta{
margin-top:8px;
text-align:center;
}

.sf-media-v2-cta a{
display:inline-flex;
align-items:center;
justify-content:center;
padding:18px 42px;
border-radius:999px;
background:#ff7a00;
color:#fff;
font-weight:800;
text-decoration:none;
box-shadow:0 18px 40px rgba(255,122,0,.25);
transition:.25s;
}

.sf-media-v2-cta a:hover{
transform:translateY(-2px);
}

@media(max-width:991px){

.sf-media-v2-grid{
grid-template-columns:1fr;
}

}

/* Verify Certificate + Partner Premium Section */
.sf-verify-partner-v2 {
    background: #ffffff;
    padding: 86px 0;
}

.sf-verify-partner-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 28px;
}

.sf-vp-card {
    border-radius: 34px;
    padding: 42px;
    min-height: 720px;
    position: relative;
    overflow: hidden;
    box-shadow: 0 28px 78px rgba(15,23,42,.10);
}

.sf-vp-certificate {
    background: radial-gradient(circle at 90% 0%, rgba(255,255,255,.08), transparent 28%), linear-gradient(135deg,#071b33,#0B3A4A);
    color: #fff;
}

.sf-vp-partner {
    background: linear-gradient(135deg,#ffffff,#fff8f1);
    border: 1px solid #f1e7dd;
}

.sf-vp-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
    color: #fff;
    border-radius: 12px;
    padding: 12px 16px;
    font-weight: 900;
    text-transform: uppercase;
    font-size: 13px;
    margin-bottom: 34px;
}

.sf-vp-badge-light {
    background: #fff4e8;
    color: #ff7a00;
    border-color: #fed7aa;
}

.sf-vp-cert-top,
.sf-vp-partner-top {
    display: grid;
    grid-template-columns: 1fr 220px;
    gap: 24px;
    align-items: center;
}

.sf-vp-card h2 {
    font-size: 46px;
    line-height: 1.12;
    margin: 0 0 18px;
    letter-spacing: -1px;
}

.sf-vp-certificate h2 {
    color: #fff;
}

.sf-vp-card h2 span {
    color: #ff7a00;
}

.sf-vp-card p {
    font-size: 17px;
    line-height: 1.75;
    margin: 0;
}

.sf-vp-certificate p {
    color: #dbeafe;
}

.sf-vp-partner p {
    color: #334155;
}

.sf-vp-certificate-art {
    position: relative;
    height: 230px;
}

.sf-vp-paper {
    position: absolute;
    right: 10px;
    top: 0;
    width:200px;
    height: 210px;
    background: #fff;
    color: #0B3A4A;
    border-radius: 16px;
    padding: 24px 18px;
    transform: rotate(-4deg);
    box-shadow: 0 20px 45px rgba(0,0,0,.22);
}

.sf-vp-paper strong {
    display: block;
    text-transform: uppercase;
    font-size: 18px;
    text-align: center;
}

.sf-vp-paper small {
    display: block;
    text-align: center;
    margin-bottom: 22px;
    font-weight: 800;
}

.sf-vp-paper div {
    height: 8px;
    background: #e5e7eb;
    border-radius: 999px;
    margin: 10px 0;
}

.sf-vp-paper b {
    display: inline-flex;
    margin-top: 18px;
    background: #111827;
    color: #fff;
    width: 44px;
    height: 44px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    font-size: 12px;
}

.sf-vp-shield {
    position: absolute;
    right: -8px;
    bottom: 22px;
    width: 82px;
    height: 82px;
    background: linear-gradient(135deg,#22c55e,#16a34a);
    border-radius: 28px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
    font-size: 44px;
    font-weight: 900;
    box-shadow: 0 18px 38px rgba(34,197,94,.28);
}

.sf-vp-feature-list {
    border-top: 1px solid rgba(255,255,255,.16);
    border-bottom: 1px solid rgba(255,255,255,.16);
    margin: 34px 0;
    padding: 28px 0;
    display: grid;
    gap: 24px;
}

.sf-vp-feature-list div,
.sf-vp-partner-list div {
    display: grid;
    grid-template-columns: 68px 1fr;
    gap: 16px;
    align-items: center;
}

.sf-vp-feature-list b,
.sf-vp-partner-list b {
    width: 58px;
    height: 58px;
    border-radius: 18px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sf-vp-feature-list b {
    background: rgba(255,255,255,.10);
    color: #fff;
    font-size: 24px;
}

.sf-vp-feature-list strong,
.sf-vp-partner-list strong {
    display: block;
    font-size: 20px;
    margin-bottom: 6px;
}

.sf-vp-feature-list small {
    color: #dbeafe;
    font-size: 15px;
}

.sf-vp-main-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 18px 42px;
    font-size: 18px;
    font-weight: 900;
    box-shadow: 0 20px 42px rgba(255,122,0,.28);
}

.sf-vp-trust,
.sf-vp-partner-trust {
    margin-top: 22px;
    font-size: 16px;
}

.sf-vp-trust {
    color: #dbeafe;
}

.sf-vp-trust span,
.sf-vp-partner-trust span {
    color: #ff7a00;
}

.sf-vp-building {
    width: 210px;
    height: 210px;
    border-radius: 50%;
    background: #fff4e8;
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    padding-bottom: 36px;
}

.sf-vp-building-roof {
    position: absolute;
    top: 58px;
    width: 130px;
    height: 42px;
    background: #ffb347;
    clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

.sf-vp-building-body {
    width: 150px;
    height: 82px;
    background: #ffd4a3;
    border-radius: 10px 10px 0 0;
    display: flex;
    gap: 16px;
    justify-content: center;
    align-items: flex-end;
    padding-bottom: 16px;
}

.sf-vp-building-body i {
    width: 22px;
    height: 54px;
    background: #b45309;
    border-radius: 6px 6px 0 0;
}

.sf-vp-partner-list {
    border-top: 1px solid #e5e7eb;
    border-bottom: 1px solid #e5e7eb;
    margin: 34px 0;
    padding: 28px 0;
    display: grid;
    gap: 22px;
}

.sf-vp-partner-list b {
    background: #fff4e8;
    color: #ff7a00;
    font-size: 24px;
}

.sf-vp-partner-list strong {
    color: #0B3A4A;
}

.sf-vp-partner-list small {
    color: #475569;
    font-size: 15px;
}

.sf-vp-partner-btn {
    margin-left: 50%;
    transform: translateX(-50%);
}

.sf-vp-partner-trust {
    color: #334155;
    text-align: center;
}

@media(max-width: 1100px) {
    .sf-verify-partner-grid {
        grid-template-columns: 1fr;
    }

    .sf-vp-card {
        min-height: auto;
    }
}

@media(max-width: 560px) {
    .sf-verify-partner-v2 {
        padding: 54px 0;
    }

    .sf-vp-card {
        padding: 26px 20px;
        border-radius: 24px;
    }

    .sf-vp-cert-top,
    .sf-vp-partner-top {
        grid-template-columns: 1fr;
    }

    .sf-vp-card h2 {
        font-size: 34px;
    }

    .sf-vp-main-btn,
    .sf-vp-partner-btn {
        width: 100%;
        margin-left: 0;
        transform: none;
    }

    .sf-vp-feature-list div,
    .sf-vp-partner-list div {
        grid-template-columns: 54px 1fr;
    }
}

/* Verify Partner V2 Final Balance Fix */
.sf-verify-partner-v2 {
    padding: 90px 0 !important;
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
}

.sf-verify-partner-grid {
    max-width: 1180px !important;
    margin: 0 auto !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 28px !important;
    align-items: stretch !important;
}

.sf-vp-card {
    min-height: 760px !important;
    padding: 46px !important;
    display: flex !important;
    flex-direction: column !important;
    justify-content: space-between !important;
}

.sf-vp-card h2 {
    font-size: 48px !important;
    line-height: 1.08 !important;
    margin-bottom: 20px !important;
}

.sf-vp-card p {
    font-size: 18px !important;
    line-height: 1.7 !important;
}

.sf-vp-cert-top,
.sf-vp-partner-top {
    grid-template-columns: 1fr 260px !important;
    gap: 28px !important;
    align-items: center !important;
}

.sf-vp-certificate-art {
    height: 270px !important;
}

.sf-vp-paper {
    width: 205px !important;
    height: 250px !important;
    right: 18px !important;
    top: 2px !important;
    padding: 28px 22px !important;
    border-radius: 20px !important;
    transform: rotate(-4deg) !important;
}

.sf-vp-shield {
    right: -4px !important;
    bottom: 12px !important;
    width: 96px !important;
    height: 96px !important;
    border-radius: 30px !important;
    font-size: 52px !important;
}

.sf-vp-feature-list,
.sf-vp-partner-list {
    margin: 34px 0 !important;
    padding: 30px 0 !important;
    gap: 26px !important;
}

.sf-vp-feature-list div,
.sf-vp-partner-list div {
    grid-template-columns: 74px 1fr !important;
    gap: 18px !important;
}

.sf-vp-feature-list b,
.sf-vp-partner-list b {
    width: 64px !important;
    height: 64px !important;
    border-radius: 22px !important;
    font-size: 27px !important;
}

.sf-vp-feature-list strong,
.sf-vp-partner-list strong {
    font-size: 21px !important;
}

.sf-vp-feature-list small,
.sf-vp-partner-list small {
    font-size: 15px !important;
    line-height: 1.55 !important;
}

.sf-vp-main-btn {
    width: 70% !important;
    margin: 0 auto !important;
    padding: 20px 32px !important;
    font-size: 19px !important;
    border-radius: 999px !important;
}

.sf-vp-partner-btn {
    margin-left: auto !important;
    margin-right: auto !important;
    transform: none !important;
}

.sf-vp-trust,
.sf-vp-partner-trust {
    text-align: center !important;
    margin-top: 22px !important;
    font-size: 17px !important;
}

.sf-vp-building {
    width: 240px !important;
    height: 240px !important;
    margin-left: auto !important;
    box-shadow: inset 0 0 0 1px rgba(255,122,0,.08) !important;
}

.sf-vp-building-roof {
    top: 62px !important;
    width: 150px !important;
    height: 50px !important;
}

.sf-vp-building-body {
    width: 170px !important;
    height: 94px !important;
}

.sf-vp-building-body i {
    width: 26px !important;
    height: 62px !important;
}

@media(max-width:1100px) {
    .sf-verify-partner-grid {
        grid-template-columns: 1fr !important;
    }

    .sf-vp-card {
        min-height: auto !important;
    }
}

@media(max-width:560px) {
    .sf-vp-card {
        padding: 28px 20px !important;
    }

    .sf-vp-card h2 {
        font-size: 34px !important;
    }

    .sf-vp-cert-top,
    .sf-vp-partner-top {
        grid-template-columns: 1fr !important;
    }

    .sf-vp-main-btn {
        width: 100% !important;
    }
}

/* Verify + Partner Compact Final */
.sf-vp-compact{
    background:#ffffff;
    padding:58px 0 46px;
}

.sf-vp-compact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
    max-width:1180px;
    margin:0 auto;
}

.sf-vpc-card{
    border-radius:28px;
    padding:32px;
    min-height:560px;
    display:flex;
    flex-direction:column;
    justify-content:space-between;
    overflow:hidden;
    position:relative;
    box-shadow:0 22px 58px rgba(15,23,42,.10);
}

.sf-vpc-dark{
    background:radial-gradient(circle at 95% 0%,rgba(255,255,255,.10),transparent 28%),linear-gradient(135deg,#06192e,#0B3A4A);
    color:#fff;
}

.sf-vpc-light{
    background:linear-gradient(135deg,#ffffff,#fff8f1);
    border:1px solid #f1e7dd;
}

.sf-vpc-top{
    display:grid;
    grid-template-columns:1fr 190px;
    gap:18px;
    align-items:center;
}

.sf-vpc-badge{
    display:inline-flex;
    background:rgba(255,255,255,.12);
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
    border-radius:12px;
    padding:10px 14px;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    margin-bottom:20px;
}

.sf-vpc-badge-light{
    background:#fff4e8;
    color:#ff7a00;
    border-color:#fed7aa;
}

.sf-vpc-card h2{
    font-size:36px;
    line-height:1.08;
    margin:0 0 12px;
    letter-spacing:-.8px;
}

.sf-vpc-dark h2{color:#fff}
.sf-vpc-card h2 span{color:#ff7a00}

.sf-vpc-card p{
    margin:0;
    font-size:15px;
    line-height:1.65;
}

.sf-vpc-dark p{color:#dbeafe}
.sf-vpc-light p{color:#334155}

.sf-vpc-cert-art{
    height:190px;
    position:relative;
}

.sf-vpc-paper{
    position:absolute;
    right:8px;
    top:6px;
    width:145px;
    height:175px;
    background:#fff;
    color:#0B3A4A;
    border-radius:16px;
    padding:18px 15px;
    transform:rotate(-4deg);
    box-shadow:0 18px 38px rgba(0,0,0,.20);
}

.sf-vpc-paper strong{
    display:block;
    text-align:center;
    text-transform:uppercase;
    font-size:14px;
}

.sf-vpc-paper small{
    display:block;
    text-align:center;
    font-weight:800;
    font-size:11px;
    margin:4px 0 14px;
}

.sf-vpc-paper i{
    display:block;
    height:6px;
    background:#e5e7eb;
    border-radius:999px;
    margin:8px 0;
}

.sf-vpc-paper b{
    display:inline-flex;
    margin-top:10px;
    width:38px;
    height:38px;
    background:#111827;
    color:#fff;
    border-radius:8px;
    align-items:center;
    justify-content:center;
    font-size:11px;
}

.sf-vpc-cert-art em{
    position:absolute;
    right:-2px;
    bottom:14px;
    width:68px;
    height:68px;
    border-radius:22px;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    color:#fff;
    font-style:normal;
    font-size:38px;
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 16px 34px rgba(34,197,94,.28);
}

.sf-vpc-features{
    display:grid;
    gap:14px;
    margin:24px 0;
    padding:22px 0;
}

.sf-vpc-features-dark{
    grid-template-columns:repeat(3,1fr);
    border-top:1px solid rgba(255,255,255,.14);
    border-bottom:1px solid rgba(255,255,255,.14);
}

.sf-vpc-features-light{
    grid-template-columns:repeat(2,1fr);
    border-top:1px solid #e5e7eb;
    border-bottom:1px solid #e5e7eb;
}

.sf-vpc-features div{
    text-align:left;
}

.sf-vpc-features b{
    width:48px;
    height:48px;
    border-radius:16px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    margin-bottom:10px;
}

.sf-vpc-features-dark b{background:rgba(255,255,255,.10)}
.sf-vpc-features-light b{background:#fff4e8;color:#ff7a00}

.sf-vpc-features strong{
    display:block;
    font-size:15px;
    line-height:1.3;
    margin-bottom:5px;
}

.sf-vpc-features small{
    display:block;
    font-size:12px;
    line-height:1.45;
}

.sf-vpc-features-dark small{color:#dbeafe}
.sf-vpc-features-light strong{color:#0B3A4A}
.sf-vpc-features-light small{color:#64748b}

.sf-vpc-btn{
    width:64%;
    margin:0 auto;
    display:flex;
    align-items:center;
    justify-content:center;
    background:#ff7a00;
    color:#fff;
    border-radius:999px;
    padding:15px 24px;
    font-size:16px;
    font-weight:900;
    box-shadow:0 18px 36px rgba(255,122,0,.25);
}

.sf-vpc-btn-light{width:58%}

.sf-vpc-trust{
    margin-top:16px;
    text-align:center;
    color:#dbeafe;
    font-size:14px;
}

.sf-vpc-trust span{
    color:#ff7a00;
    margin:0 5px;
}

.sf-vpc-trust-light{
    color:#334155;
}

.sf-vpc-building{
    width:180px;
    height:180px;
    border-radius:50%;
    background:#fff4e8;
    position:relative;
    display:flex;
    align-items:flex-end;
    justify-content:center;
    padding-bottom:30px;
}

.sf-vpc-roof{
    position:absolute;
    top:48px;
    width:120px;
    height:42px;
    background:#ffb347;
    clip-path:polygon(50% 0,100% 100%,0 100%);
}

.sf-vpc-pillars{
    width:135px;
    height:76px;
    background:#ffd4a3;
    border-radius:10px 10px 0 0;
    display:flex;
    gap:14px;
    align-items:flex-end;
    justify-content:center;
    padding-bottom:12px;
}

.sf-vpc-pillars i{
    width:20px;
    height:50px;
    background:#b45309;
    border-radius:6px 6px 0 0;
}

@media(max-width:1000px){
    .sf-vp-compact-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:560px){
    .sf-vp-compact{
        padding:44px 0 34px;
    }

    .sf-vpc-card{
        padding:24px 18px;
        min-height:auto;
    }

    .sf-vpc-top{
        grid-template-columns:1fr;
    }

    .sf-vpc-card h2{
        font-size:30px;
    }

    .sf-vpc-features-dark,
    .sf-vpc-features-light{
        grid-template-columns:1fr;
    }

    .sf-vpc-btn,
    .sf-vpc-btn-light{
        width:100%;
    }
}

/* ===== Verify Partner Compact Height Fix ===== */

.sf-vp-compact{
    padding:40px 0 !important;
}

.sf-vpc-card{
    min-height:500px !important;
    padding:24px !important;
}

.sf-vpc-top{
    grid-template-columns:1fr 150px !important;
    gap:14px !important;
}

.sf-vpc-card h2{
    font-size:31px !important;
    margin-bottom:8px !important;
}

.sf-vpc-card p{
    font-size:14px !important;
    line-height:1.55 !important;
}

.sf-vpc-cert-art{
    height:145px !important;
}

.sf-vpc-paper{
    width:118px !important;
    height:145px !important;
    padding:14px !important;
}

.sf-vpc-paper strong{
    font-size:12px !important;
}

.sf-vpc-paper small{
    font-size:9px !important;
    margin-bottom:10px !important;
}

.sf-vpc-paper i{
    height:4px !important;
    margin:5px 0 !important;
}

.sf-vpc-paper b{
    width:28px !important;
    height:28px !important;
    font-size:9px !important;
}

.sf-vpc-cert-art em{
    width:52px !important;
    height:52px !important;
    font-size:28px !important;
}

.sf-vpc-building{
    width:145px !important;
    height:145px !important;
}

.sf-vpc-roof{
    top:38px !important;
    width:95px !important;
}

.sf-vpc-pillars{
    width:105px !important;
    height:58px !important;
}

.sf-vpc-pillars i{
    width:15px !important;
    height:36px !important;
}

.sf-vpc-features{
    margin:16px 0 !important;
    padding:16px 0 !important;
    gap:12px !important;
}

.sf-vpc-features b{
    width:38px !important;
    height:38px !important;
    font-size:18px !important;
    margin-bottom:6px !important;
}

.sf-vpc-features strong{
    font-size:13px !important;
}

.sf-vpc-features small{
    font-size:11px !important;
    line-height:1.35 !important;
}

.sf-vpc-btn,
.sf-vpc-btn-light{
    width:58% !important;
    padding:12px 20px !important;
    font-size:15px !important;
}

.sf-vpc-trust{
    margin-top:10px !important;
    font-size:13px !important;
}


/* Premium Verify Section Icons */

.sf-vpc-features b i{
    font-size:18px;
    line-height:1;
}

.sf-vpc-badge i{
    margin-right:8px;
}

.sf-vpc-btn i{
    margin-right:10px;
}

.sf-vpc-trust i{
    color:#22c55e;
    margin-right:6px;
}

.sf-vpc-features-dark b{
    background:rgba(255,255,255,.12);
    color:#fff;
}

.sf-vpc-features-light b{
    background:#fff3e6;
    color:#ff7a00;
}


/* Verify Partner SVG Icon Fix */
.sf-vpc-features b {
    color: inherit !important;
}

.sf-vpc-features b svg {
    width: 20px !important;
    height: 20px !important;
    display: block !important;
    stroke: currentColor !important;
    fill: none !important;
    stroke-width: 2.4 !important;
    stroke-linecap: round !important;
    stroke-linejoin: round !important;
}

.sf-vpc-features-dark b {
    color: #ffffff !important;
}

.sf-vpc-features-light b {
    color: #ff7a00 !important;
}

/* SFIMS Premium Footer */
.sf-footer {
    background: radial-gradient(circle at 10% 0%, rgba(255,122,0,.16), transparent 28%), linear-gradient(135deg, #071b33, #0B3A4A);
    color: #fff;
    padding: 44px 0 0;
}

.sf-footer-trust {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-bottom: 30px;
}

.sf-footer-trust span {
    background: rgba(255,255,255,.10);
    border: 1px solid rgba(255,255,255,.15);
    border-radius: 999px;
    padding: 9px 13px;
    font-size: 12px;
    font-weight: 800;
    color: #e2e8f0;
}

.sf-footer-grid {
    display: grid;
    grid-template-columns: 1.35fr .85fr 1.05fr .85fr 1.1fr;
    gap: 28px;
    padding: 30px 0 36px;
}

.sf-footer h3,
.sf-footer h4 {
    color: #fff;
    margin: 0 0 16px;
}

.sf-footer h3 {
    font-size: 24px;
}

.sf-footer h4 {
    font-size: 16px;
}

.sf-footer p {
    color: #cbd5e1;
    line-height: 1.7;
    margin: 0 0 10px;
    font-size: 14px;
}

.sf-footer a {
    display: block;
    color: #cbd5e1;
    margin-bottom: 10px;
    font-size: 14px;
    transition: .2s;
}

.sf-footer a:hover {
    color: #ff9f1c;
    transform: translateX(3px);
}

.sf-footer-badges {
    display: flex;
    gap: 8px;
    flex-wrap: wrap;
    margin-top: 18px;
}

.sf-footer-badges span {
    background: rgba(255,122,0,.14);
    color: #fed7aa;
    border: 1px solid rgba(255,122,0,.22);
    border-radius: 999px;
    padding: 7px 10px;
    font-size: 11px;
    font-weight: 900;
}

.sf-footer-contact {
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.13);
    border-radius: 22px;
    padding: 20px;
}

.sf-footer-actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin-top: 16px;
}

.sf-footer-actions a {
    margin: 0;
    background: #ff7a00;
    color: #fff;
    border-radius: 999px;
    padding: 10px 14px;
    font-weight: 900;
}

.sf-footer-actions a:last-child {
    background: rgba(255,255,255,.12);
    border: 1px solid rgba(255,255,255,.18);
}

.sf-footer-bottom {
    border-top: 1px solid rgba(255,255,255,.13);
    display: flex;
    justify-content: space-between;
    gap: 18px;
    padding: 20px 0;
    color: #cbd5e1;
    font-size: 13px;
}

@media(max-width: 1100px) {
    .sf-footer-grid {
        grid-template-columns: 1fr 1fr;
    }
}

@media(max-width: 560px) {
    .sf-footer {
        padding-top: 34px;
    }

    .sf-footer-grid {
        grid-template-columns: 1fr;
        gap: 22px;
    }

    .sf-footer-bottom {
        flex-direction: column;
    }
}

/* SFIMS Footer V2 Premium */
.sf-footer-v2{
    background:linear-gradient(135deg,#06192e,#0b3a4a);
    color:#fff;
    padding:38px 0 0;
}

.sf-footer-trust-v2{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    overflow:hidden;
    margin-bottom:42px;
    background:rgba(255,255,255,.04);
}

.sf-footer-trust-v2 div{
    padding:18px 16px;
    display:grid;
    grid-template-columns:34px 1fr;
    gap:10px;
    border-right:1px solid rgba(255,255,255,.14);
}

.sf-footer-trust-v2 div:last-child{border-right:0}
.sf-footer-trust-v2 i{color:#ff7a00;font-style:normal;font-size:24px}
.sf-footer-trust-v2 strong{display:block;color:#fff;font-size:14px}
.sf-footer-trust-v2 span{display:block;color:#cbd5e1;font-size:12px;margin-top:3px}

.sf-footer-main-v2{
    display:grid;
    grid-template-columns:1.35fr .85fr 1.05fr .9fr 1.25fr;
    gap:36px;
    padding-bottom:34px;
}

.sf-footer-logo-v2{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
}

.sf-footer-logo-v2 span{
    color:#ff7a00;
    font-size:46px;
}

.sf-footer-logo-v2 h3{
    color:#fff;
    font-size:30px;
    margin:0;
    line-height:1;
}

.sf-footer-logo-v2 small{
    color:#ff7a00;
    font-weight:800;
}

.sf-footer-v2 p{
    color:#dbeafe;
    line-height:1.7;
    font-size:14px;
}

.sf-footer-v2 h4{
    color:#fff;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin:0 0 22px;
    font-size:18px;
    position:relative;
}

.sf-footer-v2 h4:after{
    content:"";
    display:block;
    width:54px;
    height:3px;
    background:#ff7a00;
    margin-top:12px;
}

.sf-footer-v2 a{
    display:block;
    color:#dbeafe;
    margin-bottom:13px;
    font-size:15px;
    transition:.2s;
}

.sf-footer-v2 a:hover{
    color:#ff9f1c;
    transform:translateX(4px);
}

.sf-footer-mini-v2{
    display:grid;
    grid-template-columns:52px 1fr;
    gap:14px;
    align-items:center;
    margin-top:18px;
}

.sf-footer-mini-v2 b{
    width:46px;
    height:46px;
    border-radius:50%;
    border:1px solid #ff7a00;
    color:#ff7a00;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:21px;
}

.sf-footer-mini-v2 strong{
    display:block;
    color:#fff;
    font-size:14px;
}

.sf-footer-mini-v2 span{
    color:#cbd5e1;
    font-size:13px;
}

.sf-footer-contact-v2 p{
    margin-bottom:12px;
}

.sf-footer-stay-title{
    margin-top:26px!important;
}

.sf-footer-subscribe-v2{
    display:flex;
    margin:16px 0 18px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:10px;
    overflow:hidden;
}

.sf-footer-subscribe-v2 input{
    flex:1;
    background:transparent;
    border:0;
    padding:13px 14px;
    color:#fff;
    outline:none;
}

.sf-footer-subscribe-v2 input::placeholder{
    color:#94a3b8;
}

.sf-footer-subscribe-v2 button{
    width:56px;
    border:0;
    background:#ff7a00;
    color:#fff;
    font-size:18px;
    cursor:pointer;
}

.sf-footer-social-v2{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.sf-footer-social-v2 a{
    width:42px;
    height:42px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    font-weight:900;
}

.sf-footer-cta-v2{
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    display:grid;
    grid-template-columns:1fr 1fr;
    overflow:hidden;
    margin-bottom:26px;
    background:rgba(255,255,255,.04);
}

.sf-footer-cta-box-v2{
    display:grid;
    grid-template-columns:78px 1fr 180px;
    gap:18px;
    align-items:center;
    padding:24px;
    border-right:1px solid rgba(255,255,255,.14);
}

.sf-footer-cta-box-v2:last-child{border-right:0}

.sf-footer-cta-box-v2 b{
    width:64px;
    height:64px;
    border-radius:50%;
    background:rgba(255,255,255,.08);
    color:#ff7a00;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:30px;
}

.sf-footer-cta-box-v2 strong{
    display:block;
    color:#fff;
    font-size:16px;
    margin-bottom:6px;
}

.sf-footer-cta-box-v2 span{
    color:#cbd5e1;
    font-size:14px;
    line-height:1.55;
}

.sf-footer-cta-box-v2 a{
    border:1px solid #ff7a00;
    color:#ff9f1c;
    border-radius:999px;
    padding:12px 18px;
    text-align:center;
    font-weight:900;
    margin:0;
}

.sf-footer-bottom-v2{
    border-top:1px solid rgba(255,255,255,.12);
    padding:20px 0;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:18px;
    color:#cbd5e1;
    font-size:13px;
}

.sf-footer-bottom-v2 b{color:#ff9f1c}
.sf-footer-bottom-v2 a{
    display:inline;
    margin:0;
    font-size:13px;
}

@media(max-width:1100px){
    .sf-footer-trust-v2{grid-template-columns:repeat(3,1fr)}
    .sf-footer-main-v2{grid-template-columns:1fr 1fr}
    .sf-footer-cta-v2{grid-template-columns:1fr}
    .sf-footer-cta-box-v2{border-right:0;border-bottom:1px solid rgba(255,255,255,.14)}
    .sf-footer-bottom-v2{grid-template-columns:1fr}
}

@media(max-width:560px){
    .sf-footer-trust-v2{grid-template-columns:1fr}
    .sf-footer-main-v2{grid-template-columns:1fr}
    .sf-footer-cta-box-v2{grid-template-columns:1fr}
}

/* =========================
   SFIMS Footer V3 - Layout
========================= */

.sf-footer-v3{
    background:linear-gradient(135deg,#06192e 0%,#073154 55%,#0b3a4a 100%);
    color:#fff;
    padding:36px 0 0;
    position:relative;
    overflow:hidden;
}

.sf-footer-v3:before{
    content:"";
    position:absolute;
    right:-120px;
    top:-120px;
    width:320px;
    height:320px;
    border-radius:50%;
    background:rgba(255,122,0,.08);
}

.sf-footer-v3 .container{
    position:relative;
    z-index:1;
}

.sf-footer-v3-trust{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    background:rgba(255,255,255,.045);
    overflow:hidden;
    margin-bottom:42px;
}

.sf-footer-v3-trust div{
    padding:18px 16px;
    display:grid;
    grid-template-columns:34px 1fr;
    gap:10px;
    align-items:center;
    border-right:1px solid rgba(255,255,255,.14);
}

.sf-footer-v3-trust div:last-child{
    border-right:0;
}

.sf-footer-v3-trust span{
    color:#ff7a00;
    font-size:23px;
    line-height:1;
}

.sf-footer-v3-trust strong{
    display:block;
    color:#fff;
    font-size:14px;
    font-weight:900;
    line-height:1.25;
}

.sf-footer-v3-trust small{
    display:block;
    color:#cbd5e1;
    font-size:12px;
    margin-top:3px;
    line-height:1.35;
}

.sf-footer-v3-main{
    display:grid;
    grid-template-columns:1.35fr .85fr 1.05fr .9fr 1.25fr;
    gap:36px;
    padding:8px 0 38px;
}

.sf-footer-v3-logo{
    display:flex;
    align-items:center;
    gap:14px;
    margin-bottom:20px;
}

.sf-footer-v3-logo > span{
    color:#ff7a00;
    font-size:48px;
    line-height:1;
}

.sf-footer-v3-logo strong{
    display:block;
    color:#fff;
    font-size:30px;
    line-height:1;
    letter-spacing:-.5px;
}

.sf-footer-v3-logo small{
    display:block;
    color:#ff9f1c;
    font-size:13px;
    font-weight:900;
    margin-top:5px;
}

.sf-footer-v3-about p{
    color:#dbeafe;
    line-height:1.75;
    font-size:15px;
    margin:0;
}

.sf-footer-v3 h4{
    color:#fff;
    text-transform:uppercase;
    letter-spacing:.6px;
    margin:0 0 22px;
    font-size:18px;
    position:relative;
}

.sf-footer-v3 h4:after{
    content:"";
    display:block;
    width:54px;
    height:3px;
    border-radius:999px;
    background:#ff7a00;
    margin-top:12px;
}

.sf-footer-v3 a{
    display:block;
    color:#dbeafe;
    margin-bottom:13px;
    font-size:15px;
    line-height:1.35;
    transition:.2s ease;
}

.sf-footer-v3 a:hover{
    color:#ff9f1c;
    transform:translateX(4px);
}

.sf-footer-v3-col a:before{
    content:"›";
    color:#ff7a00;
    margin-right:9px;
    font-weight:900;
}

.sf-footer-v3-contact p{
    color:#dbeafe;
    line-height:1.6;
    font-size:14px;
    margin:0 0 12px;
}

.sf-footer-v3-form{
    display:flex;
    border:1px solid rgba(255,255,255,.16);
    border-radius:10px;
    overflow:hidden;
    margin:16px 0 18px;
    background:rgba(255,255,255,.04);
}

.sf-footer-v3-form input{
    flex:1;
    min-width:0;
    background:transparent;
    border:0;
    outline:none;
    padding:13px 14px;
    color:#fff;
}

.sf-footer-v3-form input::placeholder{
    color:#94a3b8;
}

.sf-footer-v3-form button{
    width:52px;
    border:0;
    background:#ff7a00;
    color:#fff;
    font-size:18px;
    cursor:pointer;
}

.sf-footer-v3-social{
    display:flex;
    gap:9px;
    flex-wrap:nowrap;
    align-items:center;
}

.sf-footer-v3-social a{
    width:34px;
    height:34px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    font-size:13px;
    font-weight:900;
    color:#fff;
    background:rgba(255,255,255,.05);
}

.sf-footer-v3-social a:hover{
    transform:translateY(-2px);
    color:#fff;
    background:#ff7a00;
    border-color:#ff7a00;
}


/* =========================
   SFIMS Footer V3 - CTA
========================= */

.sf-footer-v3-cta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:22px;
    margin:12px 0 34px;
}

.sf-footer-v3-cta > div{
    display:grid;
    grid-template-columns:68px 1fr auto;
    gap:18px;
    align-items:center;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.12);
    border-radius:18px;
    padding:22px 24px;
    transition:.25s ease;
}

.sf-footer-v3-cta > div:hover{
    transform:translateY(-3px);
    border-color:rgba(255,122,0,.45);
    box-shadow:0 18px 45px rgba(0,0,0,.18);
}

.sf-footer-v3-cta b{
    width:60px;
    height:60px;
    border-radius:18px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:28px;
    background:rgba(255,122,0,.14);
    color:#ff9f1c;
}

.sf-footer-v3-cta strong{
    display:block;
    color:#fff;
    font-size:17px;
    margin-bottom:6px;
}

.sf-footer-v3-cta span{
    display:block;
    color:#cbd5e1;
    font-size:14px;
    line-height:1.55;
}

.sf-footer-v3-cta a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    white-space:nowrap;
    padding:12px 20px;
    border-radius:999px;
    background:#ff7a00;
    color:#fff;
    font-size:14px;
    font-weight:800;
    margin:0;
}

.sf-footer-v3-cta a:hover{
    background:#ff8f1f;
    transform:none;
}

/* =========================
   Bottom
========================= */

.sf-footer-v3-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding:22px 0;
    display:grid;
    grid-template-columns:1fr auto auto;
    gap:20px;
    align-items:center;
    color:#cbd5e1;
    font-size:13px;
}

.sf-footer-v3-bottom strong{
    color:#ff9f1c;
}

.sf-footer-v3-bottom span:last-child{
    display:flex;
    gap:16px;
    flex-wrap:wrap;
    justify-content:flex-end;
}

.sf-footer-v3-bottom span:last-child a{
    display:inline-block;
    margin:0;
    color:#cbd5e1;
    font-size:13px;
}

.sf-footer-v3-bottom span:last-child a:hover{
    color:#ff9f1c;
    transform:none;
}

/* =========================
   Responsive
========================= */

@media(max-width:1200px){

    .sf-footer-v3-main{
        grid-template-columns:1fr 1fr;
    }

    .sf-footer-v3-about{
        grid-column:1/-1;
    }

    .sf-footer-v3-trust{
        grid-template-columns:repeat(3,1fr);
    }

}

@media(max-width:900px){

    .sf-footer-v3-cta{
        grid-template-columns:1fr;
    }

    .sf-footer-v3-cta > div{
        grid-template-columns:60px 1fr;
    }

    .sf-footer-v3-cta a{
        grid-column:1/-1;
        margin-top:10px;
        width:200px;
    }

    .sf-footer-v3-bottom{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-v3-bottom span:last-child{
        justify-content:center;
    }

}

@media(max-width:640px){

    .sf-footer-v3-main{
        grid-template-columns:1fr;
        gap:28px;
    }

    .sf-footer-v3-trust{
        grid-template-columns:1fr;
    }

    .sf-footer-v3-trust div{
        border-right:0;
        border-bottom:1px solid rgba(255,255,255,.12);
    }

    .sf-footer-v3-trust div:last-child{
        border-bottom:0;
    }

    .sf-footer-v3-social{
        gap:8px;
    }

    .sf-footer-v3-social a{
        width:30px;
        height:30px;
        font-size:12px;
    }

    .sf-footer-v3-cta > div{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-v3-cta b{
        margin:0 auto;
    }

    .sf-footer-v3-cta a{
        width:100%;
    }

}


/* =========================
   SFIMS Footer V3 - Final Polish
========================= */

.sf-footer-v3{
    padding-top:34px !important;
}

.sf-footer-v3-trust{
    min-height:82px !important;
    margin-bottom:38px !important;
}

.sf-footer-v3-trust div{
    padding:20px 18px !important;
}

.sf-footer-v3-trust span{
    font-size:28px !important;
}

.sf-footer-v3-trust strong{
    font-size:15px !important;
}

.sf-footer-v3-trust small{
    font-size:12.5px !important;
}

.sf-footer-v3-main{
    gap:34px !important;
    padding-bottom:34px !important;
}

.sf-footer-v3-logo > span{
    font-size:54px !important;
}

.sf-footer-v3-logo strong{
    font-size:34px !important;
}

.sf-footer-v3-logo small{
    font-size:14px !important;
}

.sf-footer-v3-about p{
    max-width:340px !important;
    font-size:15px !important;
    line-height:1.85 !important;
}

.sf-footer-v3 h4{
    font-size:17px !important;
    margin-bottom:20px !important;
}

.sf-footer-v3 h4:after{
    width:48px !important;
    height:3px !important;
}

.sf-footer-v3 a{
    font-size:14.5px !important;
    margin-bottom:11px !important;
}

.sf-footer-v3-col a:before{
    content:"›" !important;
    color:#ff7a00 !important;
    margin-right:9px !important;
}

.sf-footer-v3-contact p{
    font-size:14px !important;
    margin-bottom:10px !important;
}

.sf-footer-v3-form{
    height:44px !important;
    border-radius:9px !important;
}

.sf-footer-v3-form input{
    padding:0 13px !important;
}

.sf-footer-v3-form button{
    width:48px !important;
}

.sf-footer-v3-social{
    gap:8px !important;
}

.sf-footer-v3-social a{
    width:32px !important;
    height:32px !important;
    font-size:12px !important;
}

.sf-footer-v3-cta{
    margin-top:8px !important;
    margin-bottom:28px !important;
    gap:18px !important;
}

.sf-footer-v3-cta > div{
    padding:20px 22px !important;
    grid-template-columns:58px 1fr 160px !important;
    gap:16px !important;
}

.sf-footer-v3-cta b{
    width:52px !important;
    height:52px !important;
    font-size:24px !important;
}

.sf-footer-v3-cta strong{
    font-size:16px !important;
}

.sf-footer-v3-cta span{
    font-size:13px !important;
}

.sf-footer-v3-cta a{
    padding:11px 16px !important;
    font-size:13.5px !important;
}

.sf-footer-v3-bottom{
    padding:18px 0 !important;
}

.sf-footer-v3-bottom strong{
    color:#ff9f1c !important;
}

@media(max-width:900px){
    .sf-footer-v3-cta > div{
        grid-template-columns:54px 1fr !important;
    }
}

@media(max-width:640px){
    .sf-footer-v3-about p{
        max-width:100% !important;
    }

    .sf-footer-v3-social{
        flex-wrap:wrap !important;
    }
}


/* Remove Trust Strip */

.sf-footer-v3-trust{
    display:none !important;
}

.sf-footer-v3{
    padding-top:50px !important;
}

.sf-footer-v3-main{
    padding-top:10px !important;
}


/* SFIMS Footer V4 */
.sf-footer-v4{
    background:linear-gradient(135deg,#06192e,#0b3a4a);
    color:#fff;
    padding:58px 0 0;
}

.sf-footer-v4-main{
    display:grid;
    grid-template-columns:1.35fr .85fr 1.05fr .9fr 1.25fr;
    gap:34px;
    padding-bottom:34px;
}

.sf-footer-v4-logo img{
    max-width:280px;
    height:auto;
    display:block;
    margin-bottom:22px;
}

.sf-footer-v4-logo strong{
    display:block;
    color:#fff;
    font-size:28px;
    margin-bottom:18px;
}

.sf-footer-v4-about p{
    color:#e2e8f0;
    line-height:1.85;
    font-size:15px;
    text-align:justify;
    margin:0;
}

.sf-footer-v4 h4{
    color:#fff;
    text-transform:uppercase;
    font-size:18px;
    margin:0 0 22px;
}

.sf-footer-v4 h4:after{
    content:"";
    display:block;
    width:50px;
    height:3px;
    background:#ff7a00;
    margin-top:12px;
    border-radius:999px;
}

.sf-footer-v4 a{
    display:block;
    color:#dbeafe;
    font-size:15px;
    margin-bottom:12px;
    transition:.2s;
}

.sf-footer-v4 a:hover{
    color:#ff9f1c;
    transform:translateX(4px);
}

.sf-footer-v4-col a:before{
    content:"›";
    color:#ff7a00;
    margin-right:9px;
    font-weight:900;
}

.sf-footer-v4-contact p{
    color:#dbeafe;
    font-size:14px;
    margin:0 0 11px;
    line-height:1.6;
}

.sf-footer-v4-form{
    display:flex;
    height:44px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:9px;
    overflow:hidden;
    margin:16px 0 18px;
}

.sf-footer-v4-form input{
    flex:1;
    min-width:0;
    background:transparent;
    border:0;
    outline:none;
    color:#fff;
    padding:0 14px;
}

.sf-footer-v4-form button{
    width:48px;
    border:0;
    background:#ff7a00;
    color:#fff;
    cursor:pointer;
}

.sf-footer-v4-social{
    display:flex;
    gap:8px;
    flex-wrap:nowrap;
}

.sf-footer-v4-social a{
    width:32px;
    height:32px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    font-size:12px;
    font-weight:900;
}

.sf-footer-v4-cta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-bottom:28px;
}

.sf-footer-v4-cta>div{
    display:grid;
    grid-template-columns:58px 1fr 160px;
    gap:16px;
    align-items:center;
    background:rgba(255,255,255,.05);
    border:1px solid rgba(255,255,255,.13);
    border-radius:18px;
    padding:20px 22px;
}

.sf-footer-v4-cta b{
    width:52px;
    height:52px;
    border-radius:16px;
    background:rgba(255,122,0,.14);
    color:#ff9f1c;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:24px;
}

.sf-footer-v4-cta strong{
    display:block;
    color:#fff;
    font-size:16px;
    margin-bottom:5px;
}

.sf-footer-v4-cta span{
    color:#cbd5e1;
    font-size:13px;
    line-height:1.5;
}

.sf-footer-v4-cta a{
    background:#ff7a00;
    color:#fff;
    border-radius:999px;
    padding:11px 16px;
    text-align:center;
    font-weight:900;
    margin:0;
}

.sf-footer-v4-bottom{
    border-top:1px solid rgba(255,255,255,.12);
    padding:18px 0;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:18px;
    color:#cbd5e1;
    font-size:13px;
}

.sf-footer-v4-bottom strong{
    color:#ff9f1c;
}

.sf-footer-v4-bottom span:last-child{
    display:flex;
    gap:14px;
    justify-content:flex-end;
    flex-wrap:wrap;
}

.sf-footer-v4-bottom a{
    display:inline;
    margin:0;
    font-size:13px;
}

@media(max-width:1100px){
    .sf-footer-v4-main{
        grid-template-columns:1fr 1fr;
    }

    .sf-footer-v4-about{
        grid-column:1/-1;
    }

    .sf-footer-v4-cta{
        grid-template-columns:1fr;
    }

    .sf-footer-v4-bottom{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-v4-bottom span:last-child{
        justify-content:center;
    }
}

@media(max-width:640px){
    .sf-footer-v4-main{
        grid-template-columns:1fr;
    }

    .sf-footer-v4-cta>div{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-v4-cta b{
        margin:0 auto;
    }

    .sf-footer-v4-cta a{
        width:100%;
    }
}

/* FINAL BLACK FOOTER */
.sf-footer-final{
    background:#050505 !important;
    color:#fff;
    padding:48px 0 0;
}

.sf-footer-final-main{
    display:grid;
    grid-template-columns:1.35fr .85fr 1.05fr .9fr 1.25fr;
    gap:34px;
    padding-bottom:34px;
}

.sf-footer-final-logo img{
    max-width:200px;
    height:auto;
    display:block;
    margin-bottom:22px;
}

.sf-footer-final-logo strong{
    display:block;
    color:#fff;
    font-size:24px;
    margin-bottom:18px;
}

.sf-footer-final-about p{
    color:#e5e7eb;
    line-height:1.85;
    font-size:15px;
    text-align:justify;
    margin:0;
    max-width:340px;
}

.sf-footer-final h4{
    color:#fff;
    text-transform:uppercase;
    font-size:17px;
    margin:0 0 20px;
}

.sf-footer-final h4:after{
    content:"";
    display:block;
    width:48px;
    height:3px;
    background:#ff7a00;
    margin-top:11px;
    border-radius:999px;
}

.sf-footer-final a{
    display:block;
    color:#e5e7eb;
    font-size:14.5px;
    margin-bottom:11px;
    transition:.2s;
}

.sf-footer-final a:hover{
    color:#ff9f1c;
    transform:translateX(4px);
}

.sf-footer-final-col a:before{
    content:"›";
    color:#ff7a00;
    margin-right:9px;
    font-weight:900;
}

.sf-footer-final-contact p{
    color:#e5e7eb;
    font-size:14px;
    margin:0 0 10px;
    line-height:1.6;
}

.sf-footer-final .stay-title{
    margin-top:24px;
}

.sf-footer-final-form{
    display:flex;
    height:44px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:9px;
    overflow:hidden;
    margin:15px 0 18px;
    background:rgba(255,255,255,.03);
}

.sf-footer-final-form input{
    flex:1;
    min-width:0;
    background:transparent;
    border:0;
    outline:none;
    color:#fff;
    padding:0 14px;
}

.sf-footer-final-form input::placeholder{
    color:#9ca3af;
}

.sf-footer-final-form button{
    width:48px;
    border:0;
    background:#ff7a00;
    color:#fff;
    cursor:pointer;
}

.sf-footer-final-social{
    display:flex;
    gap:8px;
    flex-wrap:nowrap;
}

.sf-footer-final-social a{
    width:32px;
    height:32px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.22);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    font-size:12px;
    font-weight:900;
    color:#fff;
}

.sf-footer-final-social a:hover{
    background:#ff7a00;
    border-color:#ff7a00;
    transform:translateY(-2px);
}

.sf-footer-final-cta{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin:6px 0 26px;
}

.sf-footer-final-cta>div{
    display:grid;
    grid-template-columns:56px 1fr 150px;
    gap:16px;
    align-items:center;
    background:rgba(255,255,255,.04);
    border:1px solid rgba(255,255,255,.14);
    border-radius:16px;
    padding:18px 20px;
}

.sf-footer-final-cta b{
    width:50px;
    height:50px;
    border-radius:15px;
    background:rgba(255,122,0,.14);
    color:#ff9f1c;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:23px;
}

.sf-footer-final-cta strong{
    display:block;
    color:#fff;
    font-size:15.5px;
    margin-bottom:5px;
}

.sf-footer-final-cta span{
    color:#d1d5db;
    font-size:13px;
    line-height:1.5;
}

.sf-footer-final-cta a{
    background:#ff7a00;
    color:#fff;
    border-radius:999px;
    padding:10px 14px;
    text-align:center;
    font-weight:900;
    margin:0;
    font-size:13px;
}

.sf-footer-final-bottom{
    border-top:1px solid rgba(255,255,255,.14);
    padding:17px 0;
    display:grid;
    grid-template-columns:1fr 1fr 1fr;
    gap:18px;
    color:#d1d5db;
    font-size:13px;
}

.sf-footer-final-bottom strong{
    color:#ff9f1c;
}

.sf-footer-final-bottom span:last-child{
    display:flex;
    gap:14px;
    justify-content:flex-end;
    flex-wrap:wrap;
}

.sf-footer-final-bottom a{
    display:inline;
    margin:0;
    font-size:13px;
}

@media(max-width:1100px){
    .sf-footer-final-main{
        grid-template-columns:1fr 1fr;
    }

    .sf-footer-final-about{
        grid-column:1/-1;
    }

    .sf-footer-final-cta{
        grid-template-columns:1fr;
    }

    .sf-footer-final-bottom{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-final-bottom span:last-child{
        justify-content:center;
    }
}

@media(max-width:640px){
    .sf-footer-final-main{
        grid-template-columns:1fr;
    }

    .sf-footer-final-about p{
        max-width:100%;
    }

    .sf-footer-final-cta>div{
        grid-template-columns:1fr;
        text-align:center;
    }

    .sf-footer-final-cta b{
        margin:0 auto;
    }

    .sf-footer-final-cta a{
        width:100%;
    }

    .sf-footer-final-social{
        flex-wrap:wrap;
    }
}

/* Footer without Get In Touch */

.sf-footer-final-main{
    grid-template-columns:1.45fr .85fr 1fr .9fr 1fr !important;
}

.sf-footer-final .stay-title{
    margin-top:0 !important;
}


/* ===== Footer Follow Us ===== */

.sf-footer-final-main{
    grid-template-columns:1.45fr .9fr 1fr .95fr .9fr !important;
    align-items:start;
}

.sf-footer-follow-text{
    color:#d1d5db;
    font-size:14px;
    line-height:1.8;
    margin:0 0 24px;
    text-align:left;
}

.sf-footer-final-social{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
}

.sf-footer-final-social a{
    width:38px;
    height:38px;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.18);
    display:flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    font-size:15px;
    transition:.25s;
    background:rgba(255,255,255,.03);
}

.sf-footer-final-social a:hover{
    background:#ff7a00;
    border-color:#ff7a00;
    color:#fff;
    transform:translateY(-3px);
}


/* ===== SFIMS Footer - Stentorian Services Reference Style ===== */

.sf-footer-services-style{
    background:#071f2b !important;
    color:#fff;
    padding:56px 0 0;
}

.sf-footer-top-actions{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:26px;
}

.sf-footer-top-actions a{
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    padding:11px 18px;
    color:#fff;
    font-weight:800;
    font-size:13px;
    background:rgba(255,255,255,.04);
}

.sf-footer-top-actions a:last-child{
    background:#ff7a00;
    border-color:#ff7a00;
}

.sf-footer-services-grid{
    display:grid;
    grid-template-columns:1.55fr .9fr .95fr .95fr 1fr;
    gap:42px;
    border-top:1px solid rgba(255,255,255,.10);
    padding-top:42px;
}

.sf-footer-logo-img img{
    max-width:200px;
    height:auto;
    display:block;
    margin-bottom:22px;
}

.sf-footer-logo-img strong{
    display:block;
    color:#fff;
    font-size:23px;
    margin-bottom:22px;
}

.sf-footer-services-style h4{
    color:#fff;
    font-size:17px;
    text-transform:uppercase;
    letter-spacing:.7px;
    margin:0 0 22px;
    position:relative;
}

.sf-footer-services-style h4:before{
    content:"";
    display:inline-block;
    width:3px;
    height:28px;
    background:#ff7a00;
    margin-right:10px;
    vertical-align:middle;
}

.sf-footer-col h4:before{
    display:none;
}

.sf-footer-col h4:after{
    content:"";
    display:block;
    width:100%;
    max-width:160px;
    height:2px;
    background:#ff7a00;
    margin-top:12px;
}

.sf-footer-about p{
    color:#cbd5e1;
    font-size:14.5px;
    line-height:1.85;
    text-align:justify;
    margin:0 0 22px;
}

.sf-footer-services-style a{
    display:block;
    color:#e5e7eb;
    font-size:14.5px;
    margin-bottom:13px;
    transition:.2s ease;
}

.sf-footer-services-style a:hover{
    color:#ff9f1c;
    transform:translateX(4px);
}

.sf-footer-social-small{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
}

.sf-footer-social-small a{
    width:34px;
    height:34px;
    border-radius:8px;
    background:rgba(255,255,255,.08);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0;
    color:#fff;
    font-size:13px;
    font-weight:900;
}

.sf-footer-social-small a:hover{
    background:#ff7a00;
    transform:translateY(-2px);
}

.sf-footer-contact-strip{
    margin-top:36px;
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:18px;
    border-top:1px solid rgba(255,255,255,.10);
    padding-top:28px;
}

.sf-footer-contact-strip div{
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.10);
    border-radius:16px;
    padding:18px;
    display:grid;
    grid-template-columns:42px 1fr;
    gap:12px;
    align-items:center;
}

.sf-footer-contact-strip b{
    width:38px;
    height:38px;
    border-radius:50%;
    background:#0b3a4a;
    color:#ff9f1c;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
}

.sf-footer-contact-strip span{
    display:block;
    color:#94a3b8;
    font-size:12px;
    margin-bottom:3px;
}

.sf-footer-contact-strip strong{
    color:#e5e7eb;
    font-size:13.5px;
    line-height:1.4;
}

.sf-footer-bottom-services{
    margin-top:26px;
    border-top:1px solid rgba(255,255,255,.10);
    padding:18px 0;
    display:flex;
    justify-content:space-between;
    gap:18px;
    color:#cbd5e1;
    font-size:13px;
}

@media(max-width:1100px){
    .sf-footer-services-grid{
        grid-template-columns:1fr 1fr;
    }

    .sf-footer-about{
        grid-column:1/-1;
    }

    .sf-footer-contact-strip{
        grid-template-columns:1fr;
    }

    .sf-footer-bottom-services{
        flex-direction:column;
        text-align:center;
    }
}

@media(max-width:640px){
    .sf-footer-services-style{
        padding-top:38px;
    }

    .sf-footer-top-actions{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:26px;
}

    .sf-footer-services-grid{
        grid-template-columns:1fr;
        gap:28px;
    }

    .sf-footer-logo-img img{
        max-width:200px;
    }
}

/* ===== Footer Top Logo ===== */

.sf-footer-top-actions{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:26px;
}

.sf-footer-top-logo img{
    width:200px;
    height:auto;
    display:block;
}

.sf-footer-top-buttons{
    display:flex;
    gap:10px;
}

.sf-footer-about{
    padding-top:4px;
}

@media(max-width:768px){

    .sf-footer-top-actions{
    display:flex;
    justify-content:space-between;
    align-items:center;
    gap:16px;
    margin-bottom:26px;
}

    .sf-footer-top-logo img{
        width:180px;
    }

    .sf-footer-top-buttons{
    display:flex;
    gap:10px;
}

}


/* ===== Remove Footer Contact Strip ===== */

.sf-footer-contact-strip{
    display:none !important;
}

.sf-footer-bottom-services{
    margin-top:32px !important;
    border-top:1px solid rgba(255,255,255,.10);
}


/* ===== About SFIMS Heading ===== */

.sf-footer-about h4{
    color:#ffffff;
    font-size:17px;
    text-transform:uppercase;
    margin:0 0 22px;
    position:relative;
    letter-spacing:.6px;
}

.sf-footer-about h4::before{
    display:none !important;
}

.sf-footer-about h4::after{
    content:"";
    display:block;
    width:150px;
    height:2px;
    background:#ff7a00;
    border-radius:50px;
    margin-top:12px;
}

.sf-footer-about p{
    margin-top:18px;
}


/* Footer SVG Social Icons */
.sf-footer-social-small a svg{
    width:16px;
    height:16px;
    display:block;
    fill:currentColor;
    stroke:none;
}

.sf-footer-social-small a[aria-label="Instagram"] svg,
.sf-footer-social-small a[aria-label="YouTube"] svg{
    fill:none;
    stroke:currentColor;
    stroke-width:2;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.sf-footer-social-small a{
    color:#ffffff !important;
}

.sf-footer-social-small a:hover{
    color:#ffffff !important;
    background:#ff7a00 !important;
}

/* =========================================================
   SFIMS Frontend Responsive Polish
   Desktop / Tablet / Mobile
========================================================= */

/* Global overflow protection */
html,
body {
    max-width: 100%;
    overflow-x: hidden;
}

img,
svg,
video {
    max-width: 100%;
}

.container {
    max-width: 1180px;
    width: 100%;
}

/* Desktop polish */
@media (min-width: 1201px) {
    .sf-media-v2-grid,
    .sf-programs-grid,
    .sf-testimonials-grid {
        align-items: stretch;
    }

    .sf-footer-services-grid {
        align-items: flex-start;
    }
}

/* Tablet landscape */
@media (max-width: 1100px) {
    .hero-grid,
    .impact-grid,
    .sf-recognition-v2-grid,
    .sf-faq-v3-shell,
    .sf-verify-partner-grid,
    .sf-vp-compact-grid {
        grid-template-columns: 1fr !important;
    }

    .hero-grid {
        min-height: auto !important;
        padding-top: 40px !important;
    }

    .hero-visual {
        max-width: 760px;
        margin: 0 auto;
    }

    .grid-4,
    .sf-media-v2-grid,
    .sf-testimonials-grid,
    .sf-partners-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .stats-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    .stat:nth-child(2) {
        border-right: 0 !important;
    }

    .sf-footer-services-grid {
        grid-template-columns: 1fr 1fr !important;
        gap: 30px !important;
    }

    .sf-footer-about {
        grid-column: 1 / -1;
    }

    .sf-footer-top-actions {
        align-items: center !important;
    }

    .sf-footer-contact-strip {
        grid-template-columns: 1fr !important;
    }
}

/* Tablet portrait */
@media (max-width: 900px) {
    .section,
    .sf-section,
    .sf-media-v2,
    .sf-faq-v3,
    .sf-verify-partner-v2,
    .sf-vp-compact {
        padding-top: 58px !important;
        padding-bottom: 58px !important;
    }

    .title h2,
    .sf-title h2,
    .sf-media-v2-head h2,
    .sf-faq-v3-head h2,
    .sf-recognition-v2-left h2 {
        font-size: 34px !important;
        line-height: 1.18 !important;
    }

    .hero h1 {
        font-size: 44px !important;
        line-height: 1.08 !important;
    }

    .hero-actions,
    .sf-vpc-features-dark,
    .sf-vpc-features-light {
        gap: 12px !important;
    }

    .sf-vpc-top,
    .sf-vp-cert-top,
    .sf-vp-partner-top {
        grid-template-columns: 1fr !important;
    }

    .sf-vpc-card,
    .sf-vp-card {
        min-height: auto !important;
    }

    .sf-footer-bottom-services {
        flex-direction: column !important;
        text-align: center !important;
    }
}

/* Mobile */
@media (max-width: 640px) {
    .container {
        padding-left: 16px !important;
        padding-right: 16px !important;
    }

    .section,
    .sf-section,
    .sf-media-v2,
    .sf-faq-v3,
    .sf-vp-compact {
        padding-top: 46px !important;
        padding-bottom: 46px !important;
    }

    .hero-grid {
        padding-top: 26px !important;
        padding-bottom: 28px !important;
        gap: 24px !important;
    }

    .hero h1 {
        font-size: 34px !important;
        line-height: 1.12 !important;
        letter-spacing: -0.5px !important;
    }

    .hero p {
        font-size: 15px !important;
        line-height: 1.65 !important;
    }

    .hero-actions .btn,
    .sf-btn,
    .sf-vpc-btn,
    .sf-vpc-btn-light,
    .sf-media-v2-cta a {
        width: 100% !important;
        justify-content: center !important;
    }

    .hero-badges {
        gap: 8px !important;
    }

    .grid-2,
    .grid-3,
    .grid-4,
    .sf-grid-2,
    .sf-grid-3,
    .sf-grid-4,
    .sf-media-v2-grid,
    .sf-testimonials-grid,
    .sf-partners-grid,
    .sf-recognition-grid,
    .impact-cards,
    .stats-grid {
        grid-template-columns: 1fr !important;
    }

    .stat {
        border-right: 0 !important;
        border-bottom: 1px solid rgba(255,255,255,.25) !important;
        padding: 18px !important;
    }

    .stat:last-child {
        border-bottom: 0 !important;
    }

    .sf-media-v2-image {
        height: 190px !important;
    }

    .sf-media-v2-body h3 {
        font-size: 21px !important;
    }

    .sf-faq-v3-shell {
        border-radius: 24px !important;
    }

    .sf-faq-v3-visual {
        min-height: auto !important;
        padding: 18px !important;
    }

    .sf-faq-v3-person {
        width: 100% !important;
        max-height: none !important;
        margin: 0 !important;
    }

    .sf-faq-v3-support {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin-top: 16px !important;
    }

    .sf-vpc-card {
        padding: 22px 18px !important;
        border-radius: 22px !important;
    }

    .sf-vpc-features-dark,
    .sf-vpc-features-light {
        grid-template-columns: 1fr !important;
    }

    .sf-footer-top-actions {
        flex-direction: column !important;
        align-items: flex-start !important;
        gap: 18px !important;
    }

    .sf-footer-top-logo img {
        width: 200px !important;
    }

    .sf-footer-top-buttons {
        width: 100%;
        display: grid !important;
        grid-template-columns: 1fr 1fr;
        gap: 10px !important;
    }

    .sf-footer-top-buttons a {
        text-align: center;
        padding: 10px 12px !important;
    }

    .sf-footer-services-grid {
        grid-template-columns: 1fr !important;
        gap: 26px !important;
    }

    .sf-footer-about p {
        text-align: left !important;
    }

    .sf-footer-social-small {
        flex-wrap: wrap !important;
    }

    .sf-footer-bottom-services {
        margin-top: 20px !important;
        padding: 16px 0 !important;
    }
}

/* Small mobile */
@media (max-width: 420px) {
    .hero h1 {
        font-size: 30px !important;
    }

    .title h2,
    .sf-media-v2-head h2,
    .sf-faq-v3-head h2 {
        font-size: 28px !important;
    }

    .sf-footer-top-buttons {
        grid-template-columns: 1fr !important;
    }

    .sf-footer-top-logo img {
        width: 185px !important;
    }
}


/* ===== FAQ Mobile Final Fix ===== */
@media (max-width: 640px) {

    .sf-faq-v3 {
        padding: 42px 0 !important;
    }

    .sf-faq-v3-head {
        margin-bottom: 22px !important;
        padding: 0 4px !important;
    }

    .sf-faq-v3-head h2 {
        font-size: 28px !important;
        line-height: 1.15 !important;
    }

    .sf-faq-v3-head p {
        font-size: 14px !important;
        line-height: 1.65 !important;
    }

    .sf-faq-v3-shell {
        display: block !important;
        border-radius: 20px !important;
        overflow: hidden !important;
    }

    .sf-faq-v3-visual {
        display: block !important;
        min-height: auto !important;
        padding: 14px !important;
        background: #fff8f1 !important;
    }

    .sf-faq-v3-person {
        display: block !important;
        width: 100% !important;
        height: auto !important;
        max-height: 320px !important;
        object-fit: contain !important;
        margin: 0 auto !important;
        border-radius: 18px !important;
        box-shadow: 0 14px 32px rgba(15,23,42,.10) !important;
    }

    .sf-faq-v3-shape,
    .sf-faq-v3-chip,
    .sf-faq-v3-bubble {
        display: none !important;
    }

    .sf-faq-v3-support {
        position: relative !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        margin: 14px 0 0 !important;
        padding: 16px !important;
        border-radius: 16px !important;
    }

    .sf-faq-v3-actions {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 10px !important;
    }

    .sf-faq-v3-actions a {
        width: 100% !important;
        text-align: center !important;
    }

    .sf-faq-v3-list {
        padding: 14px !important;
        gap: 10px !important;
        background: #f8fafc !important;
    }

    .sf-faq-v3-item {
        border-radius: 16px !important;
    }

    .sf-faq-v3-item summary {
        grid-template-columns: 42px 1fr !important;
        gap: 10px !important;
        padding: 14px !important;
    }

    .sf-faq-v3-item summary span {
        width: 38px !important;
        height: 38px !important;
        border-radius: 12px !important;
        font-size: 13px !important;
    }

    .sf-faq-v3-item summary strong {
        font-size: 14px !important;
        line-height: 1.35 !important;
    }

    .sf-faq-v3-item summary b {
        display: none !important;
    }

    .sf-faq-v3-item p {
        padding: 0 14px 14px 66px !important;
        font-size: 13.5px !important;
        line-height: 1.65 !important;
    }

    .sf-faq-v3-contact {
        margin-top: 4px !important;
        padding: 16px !important;
        border-radius: 16px !important;
    }
}

@media (max-width: 420px) {
    .sf-faq-v3-person {
        max-height: 260px !important;
    }

    .sf-faq-v3-item p {
        padding-left: 14px !important;
    }
}


/* =========================================================
   Apply Page Premium Phase 1
========================================================= */

.sf-apply-premium-hero{
    background:linear-gradient(135deg,#fff8f1 0%,#ffffff 58%,#fff3e4 100%);
    padding:72px 0 42px;
    position:relative;
    overflow:hidden;
}

.sf-apply-premium-hero:before{
    content:"";
    position:absolute;
    right:-120px;
    top:-90px;
    width:360px;
    height:360px;
    border-radius:50%;
    background:rgba(255,122,0,.10);
}

.sf-apply-premium-hero .container{
    position:relative;
    z-index:1;
}

.sf-apply-hero-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:34px;
    align-items:center;
}

.sf-apply-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#fff;
    border:1px solid #fed7aa;
    color:#ff7a00;
    border-radius:999px;
    padding:9px 14px;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.6px;
    margin-bottom:18px;
}

.sf-apply-premium-hero h1{
    color:#0B3A4A;
    font-size:52px;
    line-height:1.08;
    letter-spacing:-1px;
    margin:0 0 16px;
}

.sf-apply-premium-hero h1 span{
    color:#ff7a00;
}

.sf-apply-premium-hero p{
    color:#64748b;
    font-size:17px;
    line-height:1.75;
    margin:0;
    max-width:760px;
}

.sf-apply-hero-badges{
    display:flex;
    gap:10px;
    flex-wrap:wrap;
    margin-top:22px;
}

.sf-apply-hero-badges span{
    background:#fff;
    border:1px solid #fed7aa;
    color:#0B3A4A;
    border-radius:999px;
    padding:9px 13px;
    font-size:12px;
    font-weight:900;
}

.sf-apply-hero-card{
    background:#fff;
    border:1px solid #fee2c2;
    border-radius:28px;
    padding:28px;
    box-shadow:0 22px 58px rgba(15,23,42,.08);
}

.sf-apply-hero-card h3{
    color:#0B3A4A;
    margin:0 0 12px;
    font-size:22px;
}

.sf-apply-hero-card ul{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:12px;
}

.sf-apply-hero-card li{
    display:flex;
    gap:10px;
    align-items:flex-start;
    color:#475569;
    line-height:1.55;
    font-size:14px;
}

.sf-apply-hero-card li b{
    color:#ff7a00;
}

.sf-apply-stepper-wrap{
    background:#fff;
    border-bottom:1px solid #eef2f7;
    box-shadow:0 12px 30px rgba(15,23,42,.04);
}

.sf-apply-stepper{
    display:grid;
    grid-template-columns:repeat(5,1fr);
    gap:12px;
    padding:22px 0;
}

.sf-apply-step{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:16px;
    padding:14px;
    display:flex;
    gap:11px;
    align-items:center;
}

.sf-apply-step b{
    width:34px;
    height:34px;
    border-radius:12px;
    background:#fff4e8;
    color:#ff7a00;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    flex:0 0 auto;
}

.sf-apply-step strong{
    display:block;
    color:#0B3A4A;
    font-size:13px;
    line-height:1.2;
}

.sf-apply-step small{
    display:block;
    color:#64748b;
    font-size:11px;
    margin-top:3px;
}

.sf-apply-step:first-child{
    background:#fff8f1;
    border-color:#fed7aa;
}

.sf-apply-page-shell{
    background:#f8fafc;
    padding:42px 0 70px;
}

.sf-apply-layout{
    display:grid;
    grid-template-columns:1fr 340px;
    gap:28px;
    align-items:start;
}

.sf-apply-main-card{
    background:#fff;
    border:1px solid #eef2f7;
    border-radius:28px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
    overflow:hidden;
}

.sf-apply-main-card-title{
    padding:24px 28px;
    border-bottom:1px solid #eef2f7;
    background:#ffffff;
}

.sf-apply-main-card-title h2{
    margin:0 0 6px;
    color:#0B3A4A;
    font-size:26px;
}

.sf-apply-main-card-title p{
    margin:0;
    color:#64748b;
    line-height:1.6;
    font-size:14px;
}

.sf-apply-sidebar{
    display:grid;
    gap:18px;
    position:sticky;
    top:90px;
}

.sf-apply-side-card{
    background:#fff;
    border:1px solid #eef2f7;
    border-radius:24px;
    padding:22px;
    box-shadow:0 14px 34px rgba(15,23,42,.05);
}

.sf-apply-side-card h3{
    color:#0B3A4A;
    margin:0 0 12px;
    font-size:19px;
}

.sf-apply-side-card p,
.sf-apply-side-card li{
    color:#64748b;
    font-size:14px;
    line-height:1.65;
}

.sf-apply-side-card ul{
    margin:0;
    padding-left:18px;
}

@media(max-width:1000px){
    .sf-apply-hero-grid,
    .sf-apply-layout{
        grid-template-columns:1fr;
    }

    .sf-apply-sidebar{
        position:relative;
        top:auto;
    }

    .sf-apply-stepper{
        grid-template-columns:repeat(2,1fr);
    }
}

@media(max-width:560px){
    .sf-apply-premium-hero{
        padding:46px 0 30px;
    }

    .sf-apply-premium-hero h1{
        font-size:34px;
    }

    .sf-apply-premium-hero p{
        font-size:15px;
    }

    .sf-apply-stepper{
        grid-template-columns:1fr;
        padding:16px 0;
    }

    .sf-apply-page-shell{
        padding:28px 0 46px;
    }

    .sf-apply-main-card-title{
        padding:20px;
    }
}

/* Apply Page V2 Hero + Stepper */
.apply-v2-hero{
    background:linear-gradient(135deg,#fff8f1 0%,#fff 58%,#fff3e4 100%);
    padding:58px 0 36px;
    position:relative;
    overflow:hidden;
}

.apply-v2-hero:before{
    content:"";
    position:absolute;
    right:-120px;
    top:-120px;
    width:330px;
    height:330px;
    border-radius:50%;
    background:rgba(245,130,32,.12);
}

.apply-v2-hero .wrap{
    position:relative;
    z-index:1;
}

.apply-v2-hero-grid{
    display:grid;
    grid-template-columns:1.2fr .8fr;
    gap:28px;
    align-items:center;
}

.apply-v2-kicker{
    display:inline-flex;
    background:#fff;
    border:1px solid #fed7aa;
    color:#f58220;
    border-radius:999px;
    padding:8px 13px;
    font-size:12px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:14px;
}

.apply-v2-hero h1{
    color:#0b2f44;
    font-size:48px;
    line-height:1.08;
    margin:0 0 14px;
    font-weight:900;
}

.apply-v2-hero h1 span{
    color:#f58220;
}

.apply-v2-hero p{
    color:#64748b;
    font-size:16px;
    line-height:1.75;
    margin:0;
}

.apply-v2-badges{
    display:flex;
    gap:9px;
    flex-wrap:wrap;
    margin-top:20px;
}

.apply-v2-badges span{
    background:#fff;
    border:1px solid #fed7aa;
    color:#0b2f44;
    border-radius:999px;
    padding:8px 12px;
    font-size:12px;
    font-weight:900;
}

.apply-v2-journey{
    background:#fff;
    border:1px solid #fee2c2;
    border-radius:24px;
    padding:24px;
    box-shadow:0 18px 45px rgba(15,23,42,.08);
}

.apply-v2-journey h3{
    color:#0b2f44;
    margin:0 0 14px;
    font-size:21px;
    font-weight:900;
}

.apply-v2-journey ul{
    list-style:none;
    margin:0;
    padding:0;
    display:grid;
    gap:12px;
}

.apply-v2-journey li{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:10px;
    align-items:start;
    color:#475569;
    line-height:1.5;
    font-size:14px;
}

.apply-v2-journey li b{
    color:#f58220;
    font-weight:900;
}

.apply-v2-progress{
    background:#fff;
    border-bottom:1px solid #eef2f7;
    box-shadow:0 10px 24px rgba(15,23,42,.04);
}

.apply-v2-progress-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:10px;
    padding:18px 0;
}

.apply-v2-progress-grid div{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:15px;
    padding:12px 10px;
    text-align:center;
    font-size:12px;
    font-weight:900;
    color:#334155;
}

.apply-v2-progress-grid div.active{
    background:#fff7ed;
    border-color:#fed7aa;
    color:#0b2f44;
}

.apply-v2-progress-grid b{
    width:28px;
    height:28px;
    border-radius:10px;
    background:#fff3e4;
    color:#f58220;
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 6px;
}

.apply-v2-progress-grid span{
    display:block;
}

@media(max-width:900px){
    .apply-v2-hero-grid{
        grid-template-columns:1fr;
    }

    .apply-v2-progress-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:560px){
    .apply-v2-hero{
        padding:42px 0 26px;
    }

    .apply-v2-hero h1{
        font-size:32px;
    }

    .apply-v2-progress-grid{
        grid-template-columns:1fr 1fr;
    }
}

/* =========================================================
   Apply Page V2 Phase 2 - Form + Sidebar Polish
========================================================= */

body .main{
    max-width:1180px !important;
    margin:42px auto !important;
    padding:0 18px !important;
    display:grid !important;
    grid-template-columns:340px 1fr !important;
    gap:28px !important;
    align-items:start !important;
}

.side{
    border-radius:28px !important;
    overflow:hidden !important;
    position:sticky !important;
    top:90px !important;
}

.side-head{
    background:linear-gradient(135deg,#071f2b,#0b3a4a) !important;
    padding:30px !important;
}

.side-head h1{
    font-size:30px !important;
}

.side-body{
    padding:24px !important;
}

.step{
    background:#f8fafc !important;
    border:1px solid #e5e7eb !important;
    border-radius:18px !important;
    padding:14px !important;
    margin-bottom:12px !important;
}

.step:hover{
    border-color:#fed7aa !important;
    background:#fff8f1 !important;
}

.side-trust{
    margin-top:22px !important;
}

.side-trust div{
    border-radius:16px !important;
}

.payment-info-card{
    margin-top:22px !important;
    border-radius:22px !important;
}

.form-card{
    border-radius:30px !important;
    overflow:hidden !important;
}

.form-head{
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
    padding:30px 34px !important;
}

.form-head h2{
    font-size:30px !important;
}

.apply-progress{
    display:none !important;
}

.form-body{
    padding:30px !important;
    background:#ffffff !important;
}

.form-section-card{
    border-radius:24px !important;
    padding:26px !important;
    margin-bottom:24px !important;
    border:1px solid #e8edf3 !important;
    background:#ffffff !important;
    box-shadow:0 14px 34px rgba(15,23,42,.045) !important;
}

.form-section-card:hover{
    border-color:#fed7aa !important;
    box-shadow:0 20px 46px rgba(245,130,32,.09) !important;
}

.section-title{
    font-size:18px !important;
    padding-bottom:14px !important;
    margin-bottom:22px !important;
    color:#0b2f44 !important;
}

.dot{
    width:13px !important;
    height:13px !important;
    background:#f58220 !important;
}

.form-control{
    min-height:46px !important;
    border-radius:14px !important;
    border:1px solid #dbe3ef !important;
    padding:12px 14px !important;
}

select.form-control{
    cursor:pointer !important;
}

label{
    font-size:14px !important;
    font-weight:800 !important;
    color:#334155 !important;
}

.hint{
    font-size:12px !important;
    color:#64748b !important;
    line-height:1.5 !important;
}

.form-section-card .border.rounded{
    border-radius:20px !important;
    border-color:#fed7aa !important;
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
}

.form-section-card .btn-primary{
    background:#0b3a4a !important;
    border-color:#0b3a4a !important;
    border-radius:999px !important;
    padding:11px 18px !important;
    font-weight:900 !important;
}

.submit-bar{
    background:#f8fafc !important;
    border-radius:24px !important;
    padding:22px !important;
}

.submit-bar .btn-orange,
.submit-bar button[type="submit"],
button.btn-orange{
    background:#f58220 !important;
    border-radius:999px !important;
    padding:14px 28px !important;
    font-weight:900 !important;
    border:0 !important;
}

input[type="file"].form-control{
    padding:10px !important;
    background:#f8fafc !important;
}

.alert{
    border-radius:18px !important;
}

@media(max-width:1000px){
    body .main{
        grid-template-columns:1fr !important;
    }

    .side{
        position:relative !important;
        top:auto !important;
    }
}

@media(max-width:560px){
    body .main{
        margin:28px auto !important;
        padding:0 16px !important;
        gap:20px !important;
    }

    .side-head{
        padding:24px !important;
    }

    .side-head h1{
        font-size:26px !important;
    }

    .form-head{
        padding:24px 20px !important;
    }

    .form-head h2{
        font-size:24px !important;
    }

    .form-body{
        padding:18px !important;
    }

    .form-section-card{
        padding:18px !important;
        border-radius:20px !important;
    }

    .submit-bar{
        display:block !important;
    }

    .submit-bar button,
    .submit-bar .btn,
    .submit-bar a{
        width:100% !important;
        margin-top:10px !important;
    }
}


/* =========================================================
   Apply Page V2 Phase 2 - Form + Sidebar Polish
========================================================= */

body .main{
    max-width:1180px !important;
    margin:42px auto !important;
    padding:0 18px !important;
    display:grid !important;
    grid-template-columns:340px 1fr !important;
    gap:28px !important;
    align-items:start !important;
}

.side{
    border-radius:28px !important;
    overflow:hidden !important;
    position:sticky !important;
    top:90px !important;
}

.side-head{
    background:linear-gradient(135deg,#071f2b,#0b3a4a) !important;
    padding:30px !important;
}

.side-head h1{
    font-size:30px !important;
}

.side-body{
    padding:24px !important;
}

.step{
    background:#f8fafc !important;
    border:1px solid #e5e7eb !important;
    border-radius:18px !important;
    padding:14px !important;
    margin-bottom:12px !important;
}

.step:hover{
    border-color:#fed7aa !important;
    background:#fff8f1 !important;
}

.side-trust{
    margin-top:22px !important;
}

.side-trust div{
    border-radius:16px !important;
}

.payment-info-card{
    margin-top:22px !important;
    border-radius:22px !important;
}

.form-card{
    border-radius:30px !important;
    overflow:hidden !important;
}

.form-head{
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
    padding:30px 34px !important;
}

.form-head h2{
    font-size:30px !important;
}

.apply-progress{
    display:none !important;
}

.form-body{
    padding:30px !important;
    background:#ffffff !important;
}

.form-section-card{
    border-radius:24px !important;
    padding:26px !important;
    margin-bottom:24px !important;
    border:1px solid #e8edf3 !important;
    background:#ffffff !important;
    box-shadow:0 14px 34px rgba(15,23,42,.045) !important;
}

.form-section-card:hover{
    border-color:#fed7aa !important;
    box-shadow:0 20px 46px rgba(245,130,32,.09) !important;
}

.section-title{
    font-size:18px !important;
    padding-bottom:14px !important;
    margin-bottom:22px !important;
    color:#0b2f44 !important;
}

.dot{
    width:13px !important;
    height:13px !important;
    background:#f58220 !important;
}

.form-control{
    min-height:46px !important;
    border-radius:14px !important;
    border:1px solid #dbe3ef !important;
    padding:12px 14px !important;
}

select.form-control{
    cursor:pointer !important;
}

label{
    font-size:14px !important;
    font-weight:800 !important;
    color:#334155 !important;
}

.hint{
    font-size:12px !important;
    color:#64748b !important;
    line-height:1.5 !important;
}

.form-section-card .border.rounded{
    border-radius:20px !important;
    border-color:#fed7aa !important;
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
}

.form-section-card .btn-primary{
    background:#0b3a4a !important;
    border-color:#0b3a4a !important;
    border-radius:999px !important;
    padding:11px 18px !important;
    font-weight:900 !important;
}

.submit-bar{
    background:#f8fafc !important;
    border-radius:24px !important;
    padding:22px !important;
}

.submit-bar .btn-orange,
.submit-bar button[type="submit"],
button.btn-orange{
    background:#f58220 !important;
    border-radius:999px !important;
    padding:14px 28px !important;
    font-weight:900 !important;
    border:0 !important;
}

input[type="file"].form-control{
    padding:10px !important;
    background:#f8fafc !important;
}

.alert{
    border-radius:18px !important;
}

@media(max-width:1000px){
    body .main{
        grid-template-columns:1fr !important;
    }

    .side{
        position:relative !important;
        top:auto !important;
    }
}

@media(max-width:560px){
    body .main{
        margin:28px auto !important;
        padding:0 16px !important;
        gap:20px !important;
    }

    .side-head{
        padding:24px !important;
    }

    .side-head h1{
        font-size:26px !important;
    }

    .form-head{
        padding:24px 20px !important;
    }

    .form-head h2{
        font-size:24px !important;
    }

    .form-body{
        padding:18px !important;
    }

    .form-section-card{
        padding:18px !important;
        border-radius:20px !important;
    }

    .submit-bar{
        display:block !important;
    }

    .submit-bar button,
    .submit-bar .btn,
    .submit-bar a{
        width:100% !important;
        margin-top:10px !important;
    }
}


/* =========================================================
   Apply Page V2 Phase 3 - Form Experience
========================================================= */

/* MeriPehchaan verification card */
.form-section-card .border.rounded:has(.btn-primary){
    border:1px solid #fed7aa !important;
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
    box-shadow:0 14px 34px rgba(245,130,32,.08) !important;
}

.form-section-card .badge.bg-success{
    background:#16a34a !important;
    border-radius:999px !important;
    padding:7px 11px !important;
}

.form-section-card .badge.bg-secondary{
    background:#64748b !important;
    border-radius:999px !important;
    padding:7px 11px !important;
}

/* Better row spacing */
.form-section-card .row{
    row-gap:4px;
}

/* Inputs and selects premium */
.form-control::placeholder{
    color:#94a3b8 !important;
}

textarea.form-control{
    min-height:110px !important;
    resize:vertical;
}

/* File uploader premium style */
input[type="file"].form-control{
    border:2px dashed #fed7aa !important;
    background:#fff8f1 !important;
    min-height:58px !important;
    cursor:pointer !important;
}

input[type="file"].form-control:hover{
    border-color:#f58220 !important;
}

/* Section cards different subtle tones */
.form-section-card:nth-of-type(1){
    background:linear-gradient(135deg,#ffffff,#fffaf5) !important;
}

.form-section-card:nth-of-type(2){
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
}

.form-section-card:nth-of-type(3),
.form-section-card:nth-of-type(4),
.form-section-card:nth-of-type(5){
    background:#ffffff !important;
}

/* Payment card */
.payment-info-card{
    background:linear-gradient(135deg,#071f2b,#0b3a4a) !important;
    border:0 !important;
    color:#fff !important;
}

.payment-info-card h3{
    color:#fff !important;
}

.payment-info-card p{
    color:#dbeafe !important;
}

.payment-info-grid div{
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.14) !important;
}

.payment-info-grid b{
    color:#f58220 !important;
}

.payment-info-grid span{
    color:#fff !important;
}

/* Submit area premium */
.submit-bar{
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
    border:1px solid #fed7aa !important;
    box-shadow:0 14px 34px rgba(245,130,32,.08) !important;
}

.submit-bar strong,
.submit-bar b{
    color:#0b2f44 !important;
}

.submit-bar p,
.submit-bar small,
.submit-bar span{
    color:#64748b !important;
}

.submit-bar button,
.submit-bar .btn-orange{
    min-width:220px !important;
    box-shadow:0 14px 30px rgba(245,130,32,.24) !important;
}

/* Declaration/checkbox areas */
.form-check,
.form-check-label{
    color:#334155 !important;
}

.form-check-input:checked{
    background-color:#f58220 !important;
    border-color:#f58220 !important;
}

/* Focus polish */
.form-control:focus,
.form-check-input:focus{
    border-color:#f58220 !important;
    box-shadow:0 0 0 .18rem rgba(245,130,32,.15) !important;
}

/* Sidebar guide compact */
.side .payment-info-card{
    margin-bottom:0 !important;
}

.side-trust div{
    transition:.2s ease;
}

.side-trust div:hover{
    transform:translateY(-2px);
}

/* Mobile form cards */
@media(max-width:560px){
    .form-section-card .row > [class*="col-"]{
        margin-bottom:12px !important;
    }

    input[type="file"].form-control{
        min-height:52px !important;
    }

    .form-section-card .border.rounded{
        padding:16px !important;
    }

    .form-section-card .d-flex{
        display:block !important;
    }

    .form-section-card .d-flex .btn{
        width:100% !important;
        margin-top:14px !important;
    }
}


/* Apply Page Footer Override */
body .sf-footer-services-style a,
body .sf-footer-services-style a:hover,
body .sf-footer-services-style a:focus,
body .sf-footer-services-style a:active {
    text-decoration: none !important;
}

body .sf-footer-services-style .sf-footer-col a,
body .sf-footer-services-style .sf-footer-about a,
body .sf-footer-services-style .sf-footer-social-small a,
body .sf-footer-services-style .sf-footer-top-actions a,
body .sf-footer-services-style .sf-footer-bottom-services a {
    text-decoration: none !important;
}

body .sf-footer-services-style .sf-footer-col h4:after {
    text-decoration: none !important;
}

body .public-footer {
    display: none !important;
}


/* =========================================================
   Track Application Page Premium Phase 1
========================================================= */

body .page{
    max-width:1180px !important;
    margin:48px auto !important;
    padding:0 18px !important;
}

body .hero-card,
body .status-card{
    background:linear-gradient(135deg,#071f2b,#0b3a4a) !important;
    border-radius:30px !important;
    box-shadow:0 22px 58px rgba(15,23,42,.10) !important;
}

body .track-card,
body .detail-card{
    border-radius:30px !important;
    box-shadow:0 22px 58px rgba(15,23,42,.08) !important;
}

body .track-head,
body .detail-head{
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
    border-bottom:1px solid #fed7aa !important;
}

body .track-head h2,
body .detail-head h2{
    color:#0b2f44 !important;
}

body .badge,
body .badge-soft{
    background:rgba(255,255,255,.14) !important;
    border:1px solid rgba(255,255,255,.24) !important;
    color:#fff !important;
}

body .step{
    border-radius:18px !important;
    transition:.2s ease !important;
}

body .step:hover{
    transform:translateY(-2px);
}

body .track-body,
body .detail-body{
    background:#fff !important;
}

body .form-control{
    min-height:48px !important;
    border-radius:14px !important;
}

body .actions .btn-orange,
body .actions .btn-navy,
body .btn-orange,
body .btn-navy{
    text-decoration:none !important;
    border-radius:999px !important;
    min-height:46px !important;
    padding:13px 24px !important;
    font-weight:900 !important;
}

body .trust-card,
body .info,
body .next-action,
body .remarks{
    border-radius:20px !important;
}

body .status-pill{
    padding:9px 14px !important;
    border-radius:999px !important;
}

body .public-footer{
    display:none !important;
}

/* Premium footer compatibility on Track pages */
body .sf-footer-services-style a,
body .sf-footer-services-style a:hover,
body .sf-footer-services-style a:focus,
body .sf-footer-services-style a:active{
    text-decoration:none !important;
}

body .sf-footer-services-style{
    margin-top:56px !important;
}

/* Track mobile polish */
@media(max-width:900px){
    body .page{
        grid-template-columns:1fr !important;
        margin:32px auto !important;
    }

    body .hero-card,
    body .status-card,
    body .track-card,
    body .detail-card{
        border-radius:24px !important;
    }

    body .hero-card,
    body .status-card{
        padding:30px !important;
    }
}

@media(max-width:560px){
    body .page{
        padding:0 16px !important;
        margin:24px auto !important;
    }

    body .hero-card,
    body .status-card{
        padding:24px !important;
    }

    body .track-head,
    body .detail-head,
    body .track-body,
    body .detail-body{
        padding:22px !important;
    }

    body .actions{
        display:grid !important;
        grid-template-columns:1fr !important;
    }

    body .actions a,
    body .actions button{
        width:100% !important;
        justify-content:center !important;
    }
}


/* =========================================================
   Track Page Apply-Style Hero Final
========================================================= */

body .page{
    max-width:1180px !important;
    margin:38px auto 0 !important;
    padding:0 18px !important;
    display:grid !important;
    grid-template-columns:1.35fr .95fr !important;
    gap:24px !important;
    align-items:stretch !important;
}

body .hero-card{
    background:
        radial-gradient(circle at 82% 28%, rgba(47,164,169,.28), transparent 34%),
        linear-gradient(135deg,#06192e 0%,#0b3a4a 100%) !important;
    border-radius:30px !important;
    padding:46px 42px !important;
    min-height:520px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:space-between !important;
    overflow:hidden !important;
}

body .hero-card .badge{
    width:max-content !important;
    background:rgba(255,255,255,.12) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#fff !important;
    padding:10px 16px !important;
    border-radius:999px !important;
    font-size:13px !important;
}

body .hero-card h1{
    font-size:48px !important;
    line-height:1.08 !important;
    letter-spacing:-1px !important;
    max-width:680px !important;
    margin-bottom:18px !important;
}

body .hero-card h1::after{
    content:"";
    display:block;
    width:110px;
    height:4px;
    border-radius:999px;
    background:#f58220;
    margin-top:18px;
}

body .hero-card p{
    max-width:620px !important;
    font-size:17px !important;
    line-height:1.75 !important;
    color:#dbeafe !important;
}

body .hero-card .steps{
    display:grid !important;
    grid-template-columns:repeat(3,1fr) !important;
    gap:14px !important;
    margin-top:34px !important;
}

body .hero-card .step{
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.13) !important;
    border-radius:18px !important;
    padding:17px !important;
    display:block !important;
}

body .hero-card .step:nth-child(4){
    grid-column:1 / -1 !important;
    display:grid !important;
    grid-template-columns:42px 1fr !important;
    align-items:center !important;
}

body .hero-card .num{
    width:38px !important;
    height:38px !important;
    border-radius:14px !important;
    background:#fff !important;
    color:#f58220 !important;
    margin-bottom:12px !important;
}

body .hero-card .step b{
    font-size:14px !important;
}

body .hero-card .step span{
    font-size:13px !important;
    color:#dbeafe !important;
}

body .track-card{
    border-radius:30px !important;
    background:#fff !important;
    border:1px solid #eef2f7 !important;
    box-shadow:0 24px 64px rgba(15,23,42,.10) !important;
    overflow:hidden !important;
}

body .track-head{
    padding:34px 34px 24px !important;
    background:linear-gradient(135deg,#ffffff,#fff8f1) !important;
}

body .track-head h2{
    font-size:36px !important;
    line-height:1.08 !important;
    margin-bottom:8px !important;
}

body .track-body{
    padding:32px 34px 34px !important;
}

body .track-body label{
    font-size:14px !important;
    font-weight:900 !important;
    color:#0b2f44 !important;
}

body .track-body .form-control{
    min-height:54px !important;
    border-radius:16px !important;
    border:1px solid #dbe3ef !important;
    font-size:15px !important;
}

body .actions{
    display:grid !important;
    grid-template-columns:1fr 1fr !important;
    gap:14px !important;
    margin-top:22px !important;
}

body .actions .btn-orange,
body .actions .btn-navy{
    width:100% !important;
    min-height:52px !important;
    justify-content:center !important;
    font-size:15px !important;
}

body .trust{
    margin-top:24px !important;
    gap:12px !important;
}

body .trust-card{
    padding:14px 16px !important;
    border-radius:18px !important;
    background:linear-gradient(135deg,#fff8f1,#ffffff) !important;
}

body .trust-card b{
    width:34px !important;
    height:34px !important;
    border-radius:12px !important;
    background:#f58220 !important;
}

@media(max-width:1000px){
    body .page{
        grid-template-columns:1fr !important;
    }

    body .hero-card{
        min-height:auto !important;
    }
}

@media(max-width:640px){
    body .page{
        margin:24px auto 0 !important;
        padding:0 16px !important;
    }

    body .hero-card{
        padding:28px 22px !important;
        border-radius:24px !important;
    }

    body .hero-card h1{
        font-size:34px !important;
    }

    body .hero-card p{
        font-size:15px !important;
    }

    body .hero-card .steps{
        grid-template-columns:1fr !important;
    }

    body .hero-card .step:nth-child(4){
        grid-column:auto !important;
        display:block !important;
    }

    body .track-head,
    body .track-body{
        padding:24px 20px !important;
    }

    body .track-head h2{
        font-size:28px !important;
    }

    body .actions{
        grid-template-columns:1fr !important;
    }
}


/* =========================================================
   Track Application Premium Page
========================================================= */

.sf-track-premium-page{
    background:linear-gradient(180deg,#fff8f1 0%,#ffffff 45%,#f8fafc 100%);
    overflow:hidden;
}

.sf-track-hero{
    padding:42px 0 0;
    position:relative;
}

.sf-track-hero:before{
    content:"";
    position:absolute;
    right:-120px;
    top:20px;
    width:380px;
    height:380px;
    border-radius:50%;
    background:rgba(245,130,32,.13);
}

.sf-track-hero-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1.1fr .65fr .85fr;
    gap:24px;
    align-items:center;
    background:#ffffff;
    border:1px solid #fee2c2;
    border-radius:32px;
    padding:44px;
    box-shadow:0 24px 70px rgba(15,23,42,.08);
}

.sf-track-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    background:#fff8f1;
    border:1px solid #fed7aa;
    color:#f58220;
    border-radius:999px;
    padding:9px 14px;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:18px;
}

.sf-track-hero-content h1{
    color:#0b2f44;
    font-size:56px;
    line-height:1.05;
    letter-spacing:-1.4px;
    margin:0 0 18px;
    font-weight:900;
}

.sf-track-hero-content h1 span{
    color:#f58220;
    display:block;
}

.sf-track-hero-content p{
    color:#475569;
    font-size:17px;
    line-height:1.75;
    max-width:620px;
    margin:0;
}

.sf-track-trust-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-top:34px;
}

.sf-track-trust-row div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:10px;
    align-items:center;
    border-right:1px solid #e5e7eb;
}

.sf-track-trust-row div:last-child{
    border-right:0;
}

.sf-track-trust-row b{
    color:#f58220;
    font-size:28px;
}

.sf-track-trust-row strong{
    display:block;
    color:#0b2f44;
    font-size:14px;
    font-weight:900;
}

.sf-track-trust-row small{
    display:block;
    color:#64748b;
    font-size:12px;
    margin-top:3px;
}

.sf-track-illustration{
    position:relative;
    min-height:330px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.sf-track-illustration:before{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    border-radius:50%;
    background:#fff3e4;
}

.sf-track-clip{
    position:relative;
    z-index:2;
    width:150px;
    height:210px;
    background:#ffffff;
    border:8px solid #0b3a4a;
    border-radius:18px;
    box-shadow:0 22px 50px rgba(15,23,42,.16);
    padding:45px 18px 18px;
}

.sf-track-clip-top{
    position:absolute;
    top:-28px;
    left:50%;
    transform:translateX(-50%);
    width:72px;
    height:42px;
    background:#6b7280;
    border-radius:18px 18px 8px 8px;
}

.sf-track-line{
    height:10px;
    background:#e2e8f0;
    border-radius:999px;
    margin-bottom:18px;
}

.sf-track-line.short{
    width:70%;
}

.sf-track-check{
    position:absolute;
    left:-18px;
    top:58px;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#2fa4a9;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
}

.sf-track-check.second{
    top:125px;
}

.sf-track-glass{
    position:absolute;
    right:28px;
    bottom:70px;
    width:118px;
    height:118px;
    border:14px solid rgba(31,122,140,.72);
    border-radius:50%;
    z-index:3;
}

.sf-track-glass:after{
    content:"";
    position:absolute;
    right:-50px;
    bottom:-38px;
    width:72px;
    height:16px;
    border-radius:999px;
    background:#1f7a8c;
    transform:rotate(45deg);
}

.sf-track-plane{
    position:absolute;
    top:58px;
    right:18px;
    z-index:4;
    color:#f58220;
    font-size:42px;
    transform:rotate(-18deg);
}

.sf-track-search-card{
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 24px 64px rgba(15,23,42,.10);
}

.sf-track-search-icon{
    width:58px;
    height:58px;
    border-radius:50%;
    background:#eef6ff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:25px;
    margin-bottom:16px;
}

.sf-track-search-card h2{
    color:#0b2f44;
    font-size:30px;
    margin:0 0 6px;
    font-weight:900;
}

.sf-track-search-card p{
    color:#64748b;
    margin:0 0 22px;
}

.sf-track-field{
    margin-bottom:18px;
}

.sf-track-field label{
    display:block;
    color:#0b2f44;
    font-size:14px;
    font-weight:900;
    margin-bottom:8px;
}

.sf-track-field label span{
    color:#f58220;
}

.sf-track-field .form-control{
    min-height:52px;
    border-radius:14px;
    border:1px solid #dbe3ef;
    padding:13px 15px;
}

.sf-track-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}

.sf-track-actions button,
.sf-track-actions a{
    min-height:52px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    text-decoration:none;
}

.sf-track-actions button{
    background:#f58220;
    color:#fff;
    border:0;
}

.sf-track-actions a{
    background:#071f2b;
    color:#fff;
}

.sf-track-safe{
    margin-top:18px;
    text-align:center;
    color:#64748b;
    font-size:13px;
}

.sf-track-process{
    background:#ffffff;
    border-bottom:1px solid #eef2f7;
    padding:18px 0;
    box-shadow:0 10px 32px rgba(15,23,42,.04);
}

.sf-track-process-grid{
    display:grid;
    grid-template-columns:repeat(6,1fr);
    gap:14px;
}

.sf-track-process-grid div{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:18px;
    padding:16px;
    display:grid;
    grid-template-columns:50px 1fr;
    gap:10px;
    align-items:center;
}

.sf-track-process-grid div.active{
    background:#fff8f1;
    border-color:#fed7aa;
}

.sf-track-process-grid b{
    width:44px;
    height:44px;
    border-radius:50%;
    background:#fff3e4;
    color:#f58220;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:18px;
    font-weight:900;
}

.sf-track-process-grid span{
    color:#0b2f44;
    font-size:13px;
    font-weight:900;
    line-height:1.35;
}

.sf-track-info{
    padding:44px 0 60px;
}

.sf-track-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
}

.sf-track-info-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
}

.sf-track-info-card.dark{
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    color:#fff;
}

.sf-track-info-card h2{
    color:#0b2f44;
    font-size:26px;
    margin:0 0 14px;
    font-weight:900;
}

.sf-track-info-card.dark h2{
    color:#fff;
}

.sf-track-info-card p{
    color:#64748b;
    line-height:1.7;
}

.sf-track-info-card.dark p{
    color:#dbeafe;
}

.sf-track-benefits{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:16px;
    margin-top:28px;
}

.sf-track-benefits div{
    text-align:center;
    border-right:1px solid rgba(255,255,255,.16);
}

.sf-track-benefits div:last-child{
    border-right:0;
}

.sf-track-benefits b{
    width:54px;
    height:54px;
    border-radius:50%;
    background:rgba(255,255,255,.12);
    display:flex;
    align-items:center;
    justify-content:center;
    margin:0 auto 10px;
    font-size:22px;
}

.sf-track-benefits span{
    color:#fff;
    font-weight:900;
    font-size:13px;
    line-height:1.45;
}

.sf-track-note-list{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:13px;
}

.sf-track-note-list li{
    color:#334155;
    line-height:1.55;
    display:flex;
    gap:10px;
}

.sf-track-note-list li:before{
    content:"✓";
    color:#16a34a;
    font-weight:900;
}

.sf-track-help-box{
    margin-top:24px;
    background:#fff8f1;
    border:1px solid #fed7aa;
    border-radius:18px;
    padding:18px;
}

.sf-track-help-box b{
    display:block;
    color:#0b2f44;
    margin-bottom:5px;
}

.sf-track-help-box span{
    color:#64748b;
}

@media(max-width:1100px){
    .sf-track-hero-grid{
        grid-template-columns:1fr;
    }

    .sf-track-illustration{
        display:none;
    }

    .sf-track-process-grid{
        grid-template-columns:repeat(3,1fr);
    }
}

@media(max-width:760px){
    .sf-track-hero{
        padding-top:24px;
    }

    .sf-track-hero-grid{
        padding:24px;
        border-radius:24px;
    }

    .sf-track-hero-content h1{
        font-size:36px;
    }

    .sf-track-trust-row,
    .sf-track-info-grid,
    .sf-track-benefits{
        grid-template-columns:1fr;
    }

    .sf-track-trust-row div,
    .sf-track-benefits div{
        border-right:0;
        border-bottom:1px solid #e5e7eb;
        padding-bottom:12px;
    }

    .sf-track-benefits div{
        border-bottom:1px solid rgba(255,255,255,.16);
    }

    .sf-track-process-grid{
        grid-template-columns:1fr 1fr;
    }

    .sf-track-actions{
        grid-template-columns:1fr;
    }
}

@media(max-width:480px){
    .sf-track-process-grid{
        grid-template-columns:1fr;
    }

    .sf-track-search-card,
    .sf-track-info-card{
        padding:22px;
        border-radius:22px;
    }
}


/* ===== Public Header Fix for Track/Apply/Verify Pages ===== */

.topbar{
    background:#f58220 !important;
    color:#fff !important;
    font-size:13px !important;
    padding:8px 0 !important;
}

.wrap{
    max-width:1180px !important;
    margin:0 auto !important;
    padding:0 18px !important;
}

.topbar .wrap,
.header .wrap{
    display:flex !important;
    justify-content:space-between !important;
    align-items:center !important;
    gap:15px !important;
}

.topbar a{
    color:#fff !important;
    text-decoration:none !important;
    font-weight:800 !important;
    margin-left:18px !important;
}

.header{
    background:#fff !important;
    box-shadow:0 8px 25px rgba(15,23,42,.08) !important;
    position:relative !important;
    z-index:50 !important;
}

.header .wrap{
    padding:15px 18px !important;
}

.brand{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    color:#0b2f44 !important;
    text-decoration:none !important;
    font-weight:900 !important;
}

.brand img{
    width:auto !important;
    height:52px !important;
    max-width:260px !important;
    object-fit:contain !important;
    display:block !important;
}

.brand small{
    display:block !important;
    color:#64748b !important;
    font-size:12px !important;
    font-weight:700 !important;
}

.navlinks,
.public-menu{
    display:flex !important;
    align-items:center !important;
    gap:22px !important;
}

.navlinks a,
.public-menu a{
    color:#0b2f44 !important;
    text-decoration:none !important;
    font-weight:800 !important;
    font-size:15px !important;
    margin:0 !important;
}

.navlinks a:hover,
.public-menu a:hover{
    color:#f58220 !important;
}

.public-menu-toggle{
    display:none !important;
    background:#0b2f44 !important;
    color:#fff !important;
    border:0 !important;
    border-radius:12px !important;
    width:42px !important;
    height:40px !important;
    font-size:22px !important;
    font-weight:900 !important;
}

@media(max-width:900px){
    .topbar .wrap{
        display:block !important;
        text-align:left !important;
    }

    .topbar a{
        margin-left:0 !important;
        margin-right:14px !important;
    }

    .header .wrap{
        position:relative !important;
    }

    .brand img{
        height:44px !important;
        max-width:220px !important;
    }

    .public-menu-toggle{
        display:inline-flex !important;
        align-items:center !important;
        justify-content:center !important;
    }

    .navlinks,
    .public-menu{
        display:none !important;
    }

    .public-header.nav-open .public-menu{
        display:flex !important;
        position:absolute !important;
        left:18px !important;
        right:18px !important;
        top:76px !important;
        background:#fff !important;
        border:1px solid #e5e7eb !important;
        border-radius:20px !important;
        box-shadow:0 20px 50px rgba(15,23,42,.15) !important;
        padding:18px 22px !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        gap:10px !important;
        z-index:100 !important;
    }

    .public-header.nav-open .public-menu a{
        width:100% !important;
        padding:8px 0 !important;
        font-size:15px !important;
    }
}

@media(max-width:560px){
    .brand img{
        height:40px !important;
        max-width:190px !important;
    }

    .topbar{
        font-size:12px !important;
    }
}


/* =========================================================
   Verify Certificate Premium Form Page
========================================================= */

.sf-verify-premium-page{
    background:linear-gradient(180deg,#fff8f1 0%,#ffffff 48%,#f8fafc 100%);
    overflow:hidden;
}

.sf-verify-hero{
    padding:42px 0 0;
    position:relative;
}

.sf-verify-hero:before{
    content:"";
    position:absolute;
    right:-120px;
    top:20px;
    width:380px;
    height:380px;
    border-radius:50%;
    background:rgba(245,130,32,.13);
}

.sf-verify-hero-grid{
    position:relative;
    z-index:1;
    display:grid;
    grid-template-columns:1.1fr .65fr .85fr;
    gap:24px;
    align-items:center;
    background:#ffffff;
    border:1px solid #fee2c2;
    border-radius:32px;
    padding:44px;
    box-shadow:0 24px 70px rgba(15,23,42,.08);
}

.sf-verify-kicker{
    display:inline-flex;
    background:#fff8f1;
    border:1px solid #fed7aa;
    color:#f58220;
    border-radius:999px;
    padding:9px 14px;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:18px;
}

.sf-verify-hero-content h1{
    color:#0b2f44;
    font-size:56px;
    line-height:1.05;
    letter-spacing:-1.4px;
    margin:0 0 18px;
    font-weight:900;
}

.sf-verify-hero-content h1 span{
    color:#f58220;
    display:block;
}

.sf-verify-hero-content p{
    color:#475569;
    font-size:17px;
    line-height:1.75;
    max-width:620px;
    margin:0;
}

.sf-verify-trust-row{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:16px;
    margin-top:34px;
}

.sf-verify-trust-row div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:10px;
    align-items:center;
    border-right:1px solid #e5e7eb;
}

.sf-verify-trust-row div:last-child{
    border-right:0;
}

.sf-verify-trust-row b{
    color:#f58220;
    font-size:28px;
}

.sf-verify-trust-row strong{
    display:block;
    color:#0b2f44;
    font-size:14px;
    font-weight:900;
}

.sf-verify-trust-row small{
    display:block;
    color:#64748b;
    font-size:12px;
    margin-top:3px;
}

.sf-verify-illustration{
    position:relative;
    min-height:330px;
    display:flex;
    align-items:center;
    justify-content:center;
}

.sf-verify-illustration:before{
    content:"";
    position:absolute;
    width:250px;
    height:250px;
    border-radius:50%;
    background:#fff3e4;
}

.sf-verify-cert-art{
    position:relative;
    z-index:2;
    width:175px;
    min-height:235px;
    background:#fff;
    border:7px solid #0b3a4a;
    border-radius:20px;
    box-shadow:0 22px 50px rgba(15,23,42,.16);
    padding:30px 22px;
    transform:rotate(-4deg);
}

.sf-verify-cert-art h3{
    color:#0b2f44;
    text-align:center;
    margin:0;
    font-size:20px;
    font-weight:900;
}

.sf-verify-cert-art span{
    display:block;
    text-align:center;
    color:#64748b;
    font-weight:800;
    font-size:12px;
    margin-bottom:22px;
}

.sf-verify-cert-art i{
    display:block;
    height:8px;
    background:#e2e8f0;
    border-radius:999px;
    margin:10px 0;
}

.sf-verify-cert-art b{
    display:flex;
    width:48px;
    height:48px;
    border-radius:10px;
    background:#111827;
    color:#fff;
    align-items:center;
    justify-content:center;
    margin-top:22px;
    font-size:13px;
}

.sf-verify-seal{
    position:absolute;
    right:36px;
    bottom:60px;
    z-index:3;
    width:78px;
    height:78px;
    border-radius:26px;
    background:linear-gradient(135deg,#22c55e,#16a34a);
    color:#fff;
    font-size:44px;
    font-weight:900;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:0 18px 40px rgba(34,197,94,.25);
}

.sf-verify-search-card{
    background:#ffffff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 24px 64px rgba(15,23,42,.10);
}

.sf-verify-search-icon{
    width:58px;
    height:58px;
    border-radius:50%;
    background:#eef6ff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:25px;
    margin-bottom:16px;
}

.sf-verify-search-card h2{
    color:#0b2f44;
    font-size:30px;
    margin:0 0 6px;
    font-weight:900;
}

.sf-verify-search-card p{
    color:#64748b;
    margin:0 0 22px;
}

.sf-verify-field{
    margin-bottom:18px;
}

.sf-verify-field label{
    display:block;
    color:#0b2f44;
    font-size:14px;
    font-weight:900;
    margin-bottom:8px;
}

.sf-verify-field label span{
    color:#f58220;
}

.sf-verify-field input{
    width:100%;
    min-height:52px;
    border-radius:14px;
    border:1px solid #dbe3ef;
    padding:13px 15px;
    outline:none;
}

.sf-verify-field input:focus{
    border-color:#f58220;
    box-shadow:0 0 0 .18rem rgba(245,130,32,.15);
}

.sf-verify-actions{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
    margin-top:22px;
}

.sf-verify-actions button,
.sf-verify-actions a{
    min-height:52px;
    border-radius:999px;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    text-decoration:none;
}

.sf-verify-actions button{
    background:#f58220;
    color:#fff;
    border:0;
}

.sf-verify-actions a{
    background:#071f2b;
    color:#fff;
}

.sf-verify-safe{
    margin-top:18px;
    text-align:center;
    color:#64748b;
    font-size:13px;
}

.sf-verify-info{
    padding:44px 0 60px;
}

.sf-verify-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:24px;
}

.sf-verify-info-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
}

.sf-verify-info-card.dark{
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    color:#fff;
}

.sf-verify-info-card h2{
    color:#0b2f44;
    font-size:26px;
    margin:0 0 14px;
    font-weight:900;
}

.sf-verify-info-card.dark h2{
    color:#fff;
}

.sf-verify-info-card p{
    color:#64748b;
    line-height:1.7;
}

.sf-verify-info-card.dark p{
    color:#dbeafe;
}

.sf-verify-steps{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin-top:24px;
}

.sf-verify-steps div{
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    padding:18px;
}

.sf-verify-steps b{
    width:42px;
    height:42px;
    border-radius:14px;
    background:#fff;
    color:#f58220;
    display:flex;
    align-items:center;
    justify-content:center;
    margin-bottom:10px;
}

.sf-verify-steps span{
    color:#fff;
    font-size:13px;
    font-weight:900;
    line-height:1.4;
}

.sf-verify-info-card ul{
    list-style:none;
    padding:0;
    margin:0;
    display:grid;
    gap:13px;
}

.sf-verify-info-card li{
    color:#334155;
    line-height:1.55;
    display:flex;
    gap:10px;
}

.sf-verify-info-card li:before{
    content:"✓";
    color:#16a34a;
    font-weight:900;
}

.sf-verify-help-box{
    margin-top:24px;
    background:#fff8f1;
    border:1px solid #fed7aa;
    border-radius:18px;
    padding:18px;
}

.sf-verify-help-box b{
    display:block;
    color:#0b2f44;
    margin-bottom:5px;
}

.sf-verify-help-box span{
    color:#64748b;
}

@media(max-width:1100px){
    .sf-verify-hero-grid{
        grid-template-columns:1fr;
    }

    .sf-verify-illustration{
        display:none;
    }
}

@media(max-width:760px){
    .sf-verify-hero{
        padding-top:24px;
    }

    .sf-verify-hero-grid{
        padding:24px;
        border-radius:24px;
    }

    .sf-verify-hero-content h1{
        font-size:36px;
    }

    .sf-verify-trust-row,
    .sf-verify-info-grid,
    .sf-verify-steps{
        grid-template-columns:1fr;
    }

    .sf-verify-trust-row div{
        border-right:0;
        border-bottom:1px solid #e5e7eb;
        padding-bottom:12px;
    }

    .sf-verify-actions{
        grid-template-columns:1fr;
    }
}

@media(max-width:480px){
    .sf-verify-search-card,
    .sf-verify-info-card{
        padding:22px;
        border-radius:22px;
    }
}


/* Certificate Verification Result Premium */
.sf-cert-result-page{
    background:linear-gradient(180deg,#fff8f1 0%,#ffffff 46%,#f8fafc 100%);
}

.sf-cert-result-hero{
    padding:44px 0 0;
}

.sf-cert-result-hero-inner{
    display:grid;
    grid-template-columns:1fr 260px;
    gap:30px;
    align-items:center;
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    border-radius:32px;
    padding:44px;
    color:#fff;
    box-shadow:0 24px 70px rgba(15,23,42,.12);
}

.sf-cert-result-hero.invalid .sf-cert-result-hero-inner{
    background:linear-gradient(135deg,#3b0a0a,#7f1d1d);
}

.sf-cert-result-kicker{
    display:inline-flex;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.20);
    border-radius:999px;
    padding:9px 14px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:18px;
}

.sf-cert-result-hero h1{
    font-size:48px;
    line-height:1.08;
    font-weight:900;
    margin:0 0 16px;
}

.sf-cert-result-hero p{
    color:#dbeafe;
    font-size:17px;
    line-height:1.75;
    max-width:720px;
    margin:0;
}

.sf-cert-result-id{
    display:inline-flex;
    margin-top:22px;
    background:#fff;
    color:#f58220;
    border-radius:999px;
    padding:12px 18px;
    font-weight:900;
}

.sf-cert-result-seal{
    text-align:center;
}

.sf-cert-result-seal div{
    width:128px;
    height:128px;
    border-radius:38px;
    background:#fff;
    color:#16a34a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:76px;
    font-weight:900;
    margin:0 auto 14px;
}

.sf-cert-result-hero.invalid .sf-cert-result-seal div{
    color:#dc2626;
}

.sf-cert-result-seal span{
    font-weight:900;
    color:#fff;
}

.sf-cert-result-section{
    padding:38px 0 62px;
}

.sf-cert-result-grid{
    display:grid;
    grid-template-columns:1.4fr .8fr;
    gap:24px;
}

.sf-cert-result-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
}

.sf-cert-result-card h2{
    color:#0b2f44;
    font-size:26px;
    font-weight:900;
    margin:0 0 22px;
}

.sf-cert-result-card.dark{
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    color:#fff;
}

.sf-cert-result-card.dark h2{
    color:#fff;
}

.sf-cert-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.sf-cert-info-grid div{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:18px;
    padding:17px;
}

.sf-cert-info-grid label{
    display:block;
    color:#64748b;
    font-size:13px;
    font-weight:900;
    margin-bottom:5px;
}

.sf-cert-info-grid strong{
    color:#0f172a;
}

.sf-cert-green{
    color:#16a34a !important;
}

.sf-cert-trust-list{
    display:grid;
    gap:14px;
}

.sf-cert-trust-list div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:12px;
    align-items:center;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    padding:16px;
}

.sf-cert-trust-list b{
    width:38px;
    height:38px;
    border-radius:50%;
    background:#16a34a;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.sf-cert-trust-list span{
    color:#fff;
    font-weight:900;
}

.sf-cert-confirmation{
    margin-top:24px;
    background:linear-gradient(135deg,#fff8f1,#ffffff);
    border:1px solid #fed7aa;
    border-radius:28px;
    padding:26px;
    display:grid;
    grid-template-columns:1fr auto;
    gap:24px;
    align-items:center;
}

.sf-cert-confirmation h3{
    color:#0b2f44;
    font-weight:900;
    margin:0 0 8px;
}

.sf-cert-confirmation p{
    color:#475569;
    line-height:1.7;
    margin:0;
}

.sf-cert-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.sf-cert-actions.center{
    justify-content:center;
    margin-top:22px;
}

.sf-cert-actions a{
    background:#f58220;
    color:#fff;
    border-radius:999px;
    padding:13px 22px;
    font-weight:900;
    text-decoration:none;
}

.sf-cert-actions a:last-child{
    background:#071f2b;
}

.sf-cert-invalid-card{
    max-width:820px;
    margin:0 auto;
    text-align:center;
}

.sf-cert-invalid-card p{
    color:#64748b;
    line-height:1.7;
}

@media(max-width:900px){
    .sf-cert-result-hero-inner,
    .sf-cert-result-grid,
    .sf-cert-confirmation{
        grid-template-columns:1fr;
    }

    .sf-cert-result-seal{
        text-align:left;
    }

    .sf-cert-result-seal div{
        margin-left:0;
    }

    .sf-cert-info-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:560px){
    .sf-cert-result-hero{
        padding-top:24px;
    }

    .sf-cert-result-hero-inner{
        padding:26px;
        border-radius:24px;
    }

    .sf-cert-result-hero h1{
        font-size:34px;
    }

    .sf-cert-result-card{
        padding:22px;
        border-radius:22px;
    }

    .sf-cert-actions{
        display:grid;
        grid-template-columns:1fr;
    }

    .sf-cert-actions a{
        text-align:center;
    }
}


/* =========================================================
   Homepage Final Polish - Reference Standard
========================================================= */

body{
    text-rendering:optimizeLegibility;
}

.hero{
    background:linear-gradient(135deg,#fff8f1 0%,#ffffff 58%,#fff3e4 100%) !important;
}

.hero-grid{
    min-height:620px !important;
    padding:48px 0 !important;
}

.hero h1{
    letter-spacing:-1.4px !important;
}

.hero p{
    max-width:680px !important;
}

.hero-actions .btn{
    min-height:52px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.hero-badges span{
    transition:.2s ease !important;
}

.hero-badges span:hover{
    transform:translateY(-2px);
    border-color:#f58220 !important;
}

.title,
.sf-title,
.sf-media-v2-head,
.sf-faq-v3-head{
    max-width:820px;
    margin-left:auto;
    margin-right:auto;
}

.title h2,
.sf-title h2,
.sf-media-v2-head h2,
.sf-faq-v3-head h2{
    letter-spacing:-.8px !important;
}

.section,
.sf-section{
    position:relative;
}

.card,
.program-card,
.stat,
.media-card,
.recognition-card,
.testimonial-card,
.partner-card,
.sf-media-v2-card,
.sf-faq-v3-item,
.sf-vpc-card{
    transition:.22s ease !important;
}

.program-card:hover,
.media-card:hover,
.recognition-card:hover,
.testimonial-card:hover,
.partner-card:hover,
.sf-media-v2-card:hover,
.sf-vpc-card:hover{
    transform:translateY(-4px);
}

.sf-programs-head-link,
.sf-media-v2-cta a,
.sf-premium-cta-primary,
.sf-premium-cta-secondary,
.sf-vpc-btn,
.sf-vpc-btn-light{
    min-height:48px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.sf-footer-services-style{
    margin-top:0 !important;
}

/* Consistent section rhythm */
@media(min-width:961px){
    .section,
    .sf-section,
    .sf-media-v2,
    .sf-faq-v3,
    .sf-vp-compact{
        padding-top:72px !important;
        padding-bottom:72px !important;
    }
}

/* Tablet polish */
@media(max-width:960px){
    .hero-grid{
        min-height:auto !important;
        padding:40px 0 34px !important;
    }

    .title h2,
    .sf-title h2,
    .sf-media-v2-head h2,
    .sf-faq-v3-head h2{
        font-size:34px !important;
        line-height:1.16 !important;
    }
}

/* Mobile polish */
@media(max-width:640px){
    .hero-grid{
        padding:28px 0 26px !important;
    }

    .hero h1{
        font-size:34px !important;
        line-height:1.12 !important;
        letter-spacing:-.6px !important;
    }

    .hero p{
        font-size:15px !important;
        line-height:1.65 !important;
    }

    .title,
    .sf-title,
    .sf-media-v2-head,
    .sf-faq-v3-head{
        text-align:left !important;
    }

    .title h2,
    .sf-title h2,
    .sf-media-v2-head h2,
    .sf-faq-v3-head h2{
        font-size:28px !important;
        line-height:1.18 !important;
    }

    .hero-actions .btn,
    .sf-programs-head-link,
    .sf-media-v2-cta a,
    .sf-premium-cta-primary,
    .sf-premium-cta-secondary{
        width:100% !important;
    }
}


/* =========================================================
   Application Success Premium Page
========================================================= */

.sf-success-page{
    background:linear-gradient(180deg,#fff8f1 0%,#ffffff 46%,#f8fafc 100%);
}

.sf-success-hero{
    padding:44px 0 0;
}

.sf-success-hero-inner{
    display:grid;
    grid-template-columns:1fr 250px;
    gap:30px;
    align-items:center;
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    border-radius:32px;
    padding:44px;
    color:#fff;
    box-shadow:0 24px 70px rgba(15,23,42,.12);
}

.sf-success-kicker{
    display:inline-flex;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.20);
    border-radius:999px;
    padding:9px 14px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.5px;
    margin-bottom:18px;
}

.sf-success-hero h1{
    font-size:48px;
    line-height:1.08;
    font-weight:900;
    margin:0 0 16px;
    max-width:820px;
}

.sf-success-hero p{
    color:#dbeafe;
    font-size:17px;
    line-height:1.75;
    max-width:720px;
    margin:0;
}

.sf-success-app-id{
    display:inline-flex;
    margin-top:22px;
    background:#fff;
    color:#f58220;
    border-radius:999px;
    padding:13px 20px;
    font-weight:900;
    font-size:18px;
}

.sf-success-check{
    text-align:center;
}

.sf-success-check div{
    width:128px;
    height:128px;
    border-radius:38px;
    background:#fff;
    color:#16a34a;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:76px;
    font-weight:900;
    margin:0 auto 14px;
}

.sf-success-check span{
    font-weight:900;
    color:#fff;
}

.sf-success-section{
    padding:38px 0 62px;
}

.sf-success-grid{
    display:grid;
    grid-template-columns:1.35fr .85fr;
    gap:24px;
}

.sf-success-card{
    background:#fff;
    border:1px solid #e5e7eb;
    border-radius:28px;
    padding:30px;
    box-shadow:0 18px 45px rgba(15,23,42,.06);
}

.sf-success-card h2{
    color:#0b2f44;
    font-size:26px;
    font-weight:900;
    margin:0 0 22px;
}

.sf-success-card.dark{
    background:linear-gradient(135deg,#071f2b,#0b3a4a);
    color:#fff;
}

.sf-success-card.dark h2{
    color:#fff;
}

.sf-success-info-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:16px;
}

.sf-success-info-grid div{
    background:#f8fafc;
    border:1px solid #e5e7eb;
    border-radius:18px;
    padding:17px;
}

.sf-success-info-grid label{
    display:block;
    color:#64748b;
    font-size:13px;
    font-weight:900;
    margin-bottom:5px;
}

.sf-success-info-grid strong{
    color:#0f172a;
}

.sf-success-steps{
    display:grid;
    gap:14px;
}

.sf-success-steps div{
    display:grid;
    grid-template-columns:42px 1fr;
    gap:12px;
    align-items:center;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    border-radius:18px;
    padding:16px;
}

.sf-success-steps b{
    width:38px;
    height:38px;
    border-radius:50%;
    background:#f58220;
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
}

.sf-success-steps span{
    color:#fff;
    font-weight:900;
}

.sf-success-note{
    margin-top:24px;
    background:linear-gradient(135deg,#fff8f1,#ffffff);
    border:1px solid #fed7aa;
    border-radius:28px;
    padding:26px;
    display:grid;
    grid-template-columns:1fr auto;
    gap:24px;
    align-items:center;
}

.sf-success-note h3{
    color:#0b2f44;
    font-weight:900;
    margin:0 0 8px;
}

.sf-success-note p{
    color:#475569;
    line-height:1.7;
    margin:0;
}

.sf-success-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
}

.sf-success-actions a{
    background:#f58220;
    color:#fff;
    border-radius:999px;
    padding:13px 22px;
    font-weight:900;
    text-decoration:none;
}

.sf-success-actions a:nth-child(2),
.sf-success-actions a:nth-child(3){
    background:#071f2b;
}

@media(max-width:900px){
    .sf-success-hero-inner,
    .sf-success-grid,
    .sf-success-note{
        grid-template-columns:1fr;
    }

    .sf-success-check{
        text-align:left;
    }

    .sf-success-check div{
        margin-left:0;
    }

    .sf-success-info-grid{
        grid-template-columns:1fr;
    }
}

@media(max-width:560px){
    .sf-success-hero{
        padding-top:24px;
    }

    .sf-success-hero-inner{
        padding:26px;
        border-radius:24px;
    }

    .sf-success-hero h1{
        font-size:34px;
    }

    .sf-success-card{
        padding:22px;
        border-radius:22px;
    }

    .sf-success-actions{
        display:grid;
        grid-template-columns:1fr;
    }

    .sf-success-actions a{
        text-align:center;
    }
}


/* SFIMS Public Programs Listing Page */
.sf-programs-page {
    background: #f6f9fc;
    color: #102033;
    overflow: hidden;
}

.sf-programs-page-container {
    width: min(1180px, calc(100% - 32px));
    margin: 0 auto;
}

.sf-programs-page-hero {
    position: relative;
    padding: 96px 0 76px;
    background:
        radial-gradient(circle at 12% 18%, rgba(47, 164, 169, 0.26), transparent 34%),
        radial-gradient(circle at 86% 12%, rgba(108, 194, 74, 0.18), transparent 32%),
        linear-gradient(135deg, #071f2f 0%, #0b3a4a 48%, #123f4f 100%);
    color: #ffffff;
}

.sf-programs-page-hero:after {
    content: "";
    position: absolute;
    inset: auto -10% -80px -10%;
    height: 160px;
    background: #f6f9fc;
    transform: rotate(-2deg);
    transform-origin: center;
}

.sf-programs-page-hero-grid {
    position: relative;
    z-index: 2;
    display: grid;
    grid-template-columns: minmax(0, 1.35fr) minmax(320px, 0.65fr);
    gap: 42px;
    align-items: center;
}

.sf-programs-page-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 9px 14px;
    border: 1px solid rgba(255,255,255,0.18);
    border-radius: 999px;
    background: rgba(255,255,255,0.08);
    color: #c8fbff;
    font-weight: 800;
    font-size: 13px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sf-programs-page-hero h1 {
    margin: 20px 0 16px;
    max-width: 820px;
    font-size: clamp(38px, 5vw, 68px);
    line-height: 1.02;
    letter-spacing: -0.055em;
    font-weight: 900;
}

.sf-programs-page-hero p {
    max-width: 720px;
    margin: 0;
    color: rgba(255,255,255,0.78);
    font-size: 18px;
    line-height: 1.75;
}

.sf-programs-page-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.sf-programs-primary-btn,
.sf-programs-secondary-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 50px;
    padding: 0 22px;
    border-radius: 999px;
    font-weight: 900;
    text-decoration: none;
    transition: 0.25s ease;
}

.sf-programs-primary-btn {
    background: linear-gradient(135deg, #f39c3d, #ffb15c);
    color: #102033;
    box-shadow: 0 16px 34px rgba(243, 156, 61, 0.24);
}

.sf-programs-secondary-btn {
    color: #ffffff;
    border: 1px solid rgba(255,255,255,0.22);
    background: rgba(255,255,255,0.07);
}

.sf-programs-primary-btn:hover,
.sf-programs-secondary-btn:hover {
    transform: translateY(-2px);
    text-decoration: none;
}

.sf-programs-page-hero-card {
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 30px;
    padding: 30px;
    background: rgba(255,255,255,0.10);
    box-shadow: 0 28px 80px rgba(0,0,0,0.24);
    backdrop-filter: blur(18px);
}

.sf-programs-page-hero-card span {
    color: #c8fbff;
    font-weight: 800;
    text-transform: uppercase;
    font-size: 12px;
    letter-spacing: 0.08em;
}

.sf-programs-page-hero-card strong {
    display: block;
    margin-top: 12px;
    font-size: 72px;
    line-height: 1;
    letter-spacing: -0.06em;
}

.sf-programs-page-hero-card p {
    margin-top: 12px;
    font-size: 15px;
}

.sf-programs-page-hero-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
    margin-top: 24px;
}

.sf-programs-page-hero-stats div {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.10);
}

.sf-programs-page-hero-stats b,
.sf-programs-page-hero-stats small {
    display: block;
}

.sf-programs-page-hero-stats b {
    font-size: 24px;
}

.sf-programs-page-hero-stats small {
    margin-top: 4px;
    color: rgba(255,255,255,0.70);
}

.sf-programs-toolbar {
    position: relative;
    z-index: 3;
    display: grid;
    grid-template-columns: minmax(280px, 0.85fr) minmax(0, 1.15fr);
    gap: 20px;
    margin-top: -28px;
    padding: 22px;
    border: 1px solid rgba(11, 58, 74, 0.08);
    border-radius: 28px;
    background: rgba(255,255,255,0.94);
    box-shadow: 0 22px 70px rgba(11, 58, 74, 0.11);
}

.sf-programs-search-wrap label,
.sf-programs-filter-wrap span {
    display: block;
    margin-bottom: 10px;
    color: #456072;
    font-size: 13px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.sf-programs-search-wrap input {
    width: 100%;
    min-height: 52px;
    border: 1px solid rgba(11, 58, 74, 0.12);
    border-radius: 18px;
    padding: 0 16px;
    color: #102033;
    background: #f8fbfd;
    outline: none;
    font-weight: 700;
}

.sf-programs-search-wrap input:focus {
    border-color: rgba(47, 164, 169, 0.55);
    box-shadow: 0 0 0 4px rgba(47, 164, 169, 0.10);
}

.sf-programs-filter-pills {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.sf-programs-filter-pills button {
    min-height: 42px;
    border: 1px solid rgba(11, 58, 74, 0.10);
    border-radius: 999px;
    padding: 0 15px;
    color: #274457;
    background: #f8fbfd;
    font-weight: 850;
    cursor: pointer;
    transition: 0.2s ease;
}

.sf-programs-filter-pills button.active,
.sf-programs-filter-pills button:hover {
    color: #ffffff;
    border-color: #0b3a4a;
    background: #0b3a4a;
}

.sf-programs-listing-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    padding: 46px 0 80px;
}

.sf-program-listing-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 100%;
    padding: 24px;
    border: 1px solid rgba(11, 58, 74, 0.08);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 18px 55px rgba(11, 58, 74, 0.08);
    transition: 0.25s ease;
}

.sf-program-listing-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 26px 76px rgba(11, 58, 74, 0.14);
}

.sf-program-listing-card[hidden] {
    display: none;
}

.sf-program-listing-card-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    margin-bottom: 16px;
}

.sf-program-listing-card-top span,
.sf-program-listing-card-top em {
    display: inline-flex;
    align-items: center;
    min-height: 30px;
    border-radius: 999px;
    padding: 0 11px;
    font-size: 12px;
    font-weight: 900;
    font-style: normal;
}

.sf-program-listing-card-top span {
    color: #0b3a4a;
    background: rgba(47, 164, 169, 0.11);
}

.sf-program-listing-card-top em {
    color: #6a3b04;
    background: rgba(243, 156, 61, 0.14);
}

.sf-program-listing-card h2 {
    margin: 0 0 12px;
    color: #102033;
    font-size: 24px;
    line-height: 1.2;
    letter-spacing: -0.03em;
    font-weight: 950;
}

.sf-program-listing-card p {
    margin: 0;
    color: #5a7283;
    font-size: 15px;
    line-height: 1.7;
}

.sf-program-listing-meta {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
    margin: 22px 0;
}

.sf-program-listing-meta div {
    padding: 13px;
    border-radius: 18px;
    background: #f6f9fc;
}

.sf-program-listing-meta small,
.sf-program-listing-meta strong {
    display: block;
}

.sf-program-listing-meta small {
    color: #718696;
    font-size: 11px;
    font-weight: 900;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.sf-program-listing-meta strong {
    margin-top: 4px;
    color: #102033;
    font-size: 14px;
    font-weight: 950;
}

.sf-program-listing-eligibility {
    margin-top: auto;
    padding: 15px;
    border-radius: 20px;
    background: linear-gradient(135deg, rgba(11, 58, 74, 0.05), rgba(47, 164, 169, 0.08));
}

.sf-program-listing-eligibility small,
.sf-program-listing-eligibility span {
    display: block;
}

.sf-program-listing-eligibility small {
    margin-bottom: 5px;
    color: #0b3a4a;
    font-size: 11px;
    font-weight: 950;
    text-transform: uppercase;
    letter-spacing: 0.06em;
}

.sf-program-listing-eligibility span {
    color: #415b6d;
    font-size: 14px;
    line-height: 1.55;
}

.sf-program-listing-footer {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(11, 58, 74, 0.08);
}

.sf-program-listing-footer a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 42px;
    padding: 0 16px;
    border-radius: 999px;
    color: #ffffff;
    background: #0b3a4a;
    font-size: 14px;
    font-weight: 950;
    text-decoration: none;
    white-space: nowrap;
    transition: 0.2s ease;
}

.sf-program-listing-footer a:hover {
    background: #f39c3d;
    color: #102033;
    text-decoration: none;
}

.sf-program-listing-footer span {
    color: #718696;
    font-size: 12px;
    font-weight: 800;
    text-align: right;
}

.sf-programs-empty-state {
    margin: 46px 0 80px;
    padding: 46px 24px;
    border: 1px dashed rgba(11, 58, 74, 0.20);
    border-radius: 28px;
    background: #ffffff;
    text-align: center;
}

.sf-programs-empty-state strong {
    display: block;
    color: #102033;
    font-size: 24px;
    font-weight: 950;
}

.sf-programs-empty-state p {
    margin: 10px auto 0;
    max-width: 520px;
    color: #5a7283;
}

.sf-programs-empty-state a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 44px;
    margin-top: 18px;
    padding: 0 18px;
    border-radius: 999px;
    color: #ffffff;
    background: #0b3a4a;
    font-weight: 900;
    text-decoration: none;
}

@media (max-width: 1080px) {
    .sf-programs-page-hero-grid,
    .sf-programs-toolbar {
        grid-template-columns: 1fr;
    }

    .sf-programs-listing-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 680px) {
    .sf-programs-page-container {
        width: min(100% - 22px, 1180px);
    }

    .sf-programs-page-hero {
        padding: 72px 0 62px;
    }

    .sf-programs-page-hero h1 {
        font-size: 38px;
    }

    .sf-programs-page-hero p {
        font-size: 16px;
    }

    .sf-programs-page-actions,
    .sf-program-listing-footer {
        flex-direction: column;
        align-items: stretch;
    }

    .sf-programs-primary-btn,
    .sf-programs-secondary-btn,
    .sf-program-listing-footer a {
        width: 100%;
    }

    .sf-programs-page-hero-card {
        padding: 22px;
        border-radius: 24px;
    }

    .sf-programs-page-hero-card strong {
        font-size: 54px;
    }

    .sf-programs-toolbar {
        padding: 16px;
        border-radius: 22px;
    }

    .sf-programs-listing-grid {
        grid-template-columns: 1fr;
        padding: 32px 0 64px;
    }

    .sf-program-listing-card {
        padding: 20px;
        border-radius: 24px;
    }

    .sf-program-listing-meta {
        grid-template-columns: 1fr;
    }

    .sf-program-listing-footer span {
        text-align: center;
    }
}

/* SFIMS Programs Listing V2 Polish */
.sf-programs-page-hero {
    padding: 78px 0 64px;
}

.sf-programs-page-hero h1 {
    max-width: 780px;
}

.sf-programs-trust-strip {
    position: relative;
    z-index: 4;
    margin-top: -18px;
}

.sf-programs-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}

.sf-programs-trust-grid div {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 70px;
    padding: 16px 18px;
    border: 1px solid rgba(11, 58, 74, 0.08);
    border-radius: 22px;
    background: #ffffff;
    box-shadow: 0 18px 46px rgba(11, 58, 74, 0.08);
}

.sf-programs-trust-grid b {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: #102033;
    background: #ffb15c;
    font-weight: 950;
    flex-shrink: 0;
}

.sf-programs-trust-grid span {
    color: #102033;
    font-weight: 950;
    line-height: 1.25;
}

.sf-programs-section-head {
    margin: 48px 0 22px;
    text-align: center;
}

.sf-programs-section-head span {
    display: inline-flex;
    color: #f39c3d;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sf-programs-section-head h2 {
    margin: 8px 0 8px;
    color: #102033;
    font-size: clamp(30px, 4vw, 46px);
    line-height: 1.08;
    letter-spacing: -0.04em;
    font-weight: 950;
}

.sf-programs-section-head p {
    max-width: 720px;
    margin: 0 auto;
    color: #5a7283;
    font-size: 16px;
    line-height: 1.7;
}

.sf-programs-toolbar {
    margin-top: 0;
}

.sf-programs-search-box {
    display: flex;
    align-items: center;
    gap: 10px;
    min-height: 54px;
    border: 1px solid rgba(11, 58, 74, 0.12);
    border-radius: 18px;
    padding: 0 14px;
    background: #f8fbfd;
}

.sf-programs-search-box span {
    color: #0b3a4a;
    font-size: 22px;
    font-weight: 950;
}

.sf-programs-search-box input {
    border: 0 !important;
    box-shadow: none !important;
    background: transparent !important;
    padding: 0 !important;
}

.sf-programs-result-count {
    display: block;
    margin-top: 8px;
    color: #718696;
    font-weight: 850;
}

.sf-programs-filter-pills button {
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.sf-programs-filter-pills button small {
    min-width: 24px;
    height: 24px;
    border-radius: 999px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(11, 58, 74, 0.08);
    color: inherit;
    font-size: 11px;
    font-weight: 950;
}

.sf-programs-filter-pills button.active small,
.sf-programs-filter-pills button:hover small {
    background: rgba(255,255,255,0.18);
}

.sf-programs-listing-grid {
    align-items: stretch;
    min-height: 380px;
}

.sf-program-listing-card {
    overflow: hidden;
}

.sf-program-listing-card:before {
    content: "";
    position: absolute;
    inset: 0 0 auto 0;
    height: 5px;
    background: linear-gradient(90deg, #f39c3d, #2fa4a9);
}

.sf-program-listing-card h2 {
    min-height: 58px;
}

.sf-program-listing-card p {
    min-height: 78px;
}

.sf-program-listing-meta div {
    min-height: 72px;
}

.sf-program-listing-footer {
    margin-top: 18px;
}

.sf-program-listing-footer a {
    box-shadow: 0 12px 24px rgba(11, 58, 74, 0.14);
}

.sf-programs-empty-state {
    box-shadow: 0 18px 55px rgba(11, 58, 74, 0.08);
}

@media (max-width: 1080px) {
    .sf-programs-trust-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 680px) {
    .sf-programs-page-hero {
        padding: 58px 0 52px;
    }

    .sf-programs-trust-grid {
        grid-template-columns: 1fr;
    }

    .sf-programs-section-head {
        margin-top: 34px;
        text-align: left;
    }

    .sf-programs-section-head h2 {
        font-size: 30px;
    }

    .sf-program-listing-card h2,
    .sf-program-listing-card p {
        min-height: auto;
    }
}

/* Fix Programs Hero CTA clipping */
.sf-programs-page-hero {
    padding-bottom: 92px !important;
}

.sf-programs-page-actions {
    position: relative;
    z-index: 5;
    margin-bottom: 10px;
}

@media (max-width: 680px) {
    .sf-programs-page-hero {
        padding-bottom: 76px !important;
    }
}

/* SFIMS Public Program Details Page */
.sf-program-detail-page {
    background: #f6f9fc;
    color: #102033;
    overflow: hidden;
}

.sf-program-detail-hero {
    padding: 76px 0 92px;
    background:
        radial-gradient(circle at 10% 20%, rgba(47, 164, 169, 0.24), transparent 34%),
        radial-gradient(circle at 90% 10%, rgba(243, 156, 61, 0.17), transparent 32%),
        linear-gradient(135deg, #071f2f 0%, #0b3a4a 54%, #123f4f 100%);
    color: #ffffff;
}

.sf-program-detail-hero-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(320px, 0.75fr);
    gap: 38px;
    align-items: center;
}

.sf-program-detail-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    color: rgba(255,255,255,0.70);
    font-size: 14px;
    font-weight: 800;
}

.sf-program-detail-breadcrumb a {
    color: #c8fbff;
    text-decoration: none;
}

.sf-program-detail-breadcrumb strong {
    color: rgba(255,255,255,0.86);
}

.sf-program-detail-hero h1 {
    margin: 20px 0 16px;
    max-width: 850px;
    font-size: clamp(38px, 5vw, 66px);
    line-height: 1.02;
    letter-spacing: -0.055em;
    font-weight: 950;
}

.sf-program-detail-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255,255,255,0.78);
    font-size: 18px;
    line-height: 1.75;
}

.sf-program-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 30px;
}

.sf-program-detail-summary {
    border: 1px solid rgba(255,255,255,0.16);
    border-radius: 30px;
    padding: 28px;
    background: rgba(255,255,255,0.10);
    box-shadow: 0 28px 80px rgba(0,0,0,0.24);
    backdrop-filter: blur(18px);
}

.sf-program-detail-summary > span {
    display: block;
    margin-bottom: 18px;
    color: #c8fbff;
    font-size: 12px;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sf-program-detail-summary-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.sf-program-detail-summary-grid div,
.sf-program-detail-deadline {
    padding: 16px;
    border-radius: 20px;
    background: rgba(255,255,255,0.10);
}

.sf-program-detail-summary-grid small,
.sf-program-detail-summary-grid strong,
.sf-program-detail-deadline small,
.sf-program-detail-deadline strong {
    display: block;
}

.sf-program-detail-summary-grid small,
.sf-program-detail-deadline small {
    color: rgba(255,255,255,0.70);
    font-size: 11px;
    font-weight: 950;
    letter-spacing: 0.06em;
    text-transform: uppercase;
}

.sf-program-detail-summary-grid strong,
.sf-program-detail-deadline strong {
    margin-top: 5px;
    color: #ffffff;
    font-size: 16px;
    font-weight: 950;
}

.sf-program-detail-deadline {
    margin-top: 14px;
}

.sf-program-detail-trust {
    position: relative;
    z-index: 2;
    margin-top: -34px;
}

.sf-program-detail-body {
    padding: 54px 0 82px;
}

.sf-program-detail-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.25fr) minmax(310px, 0.75fr);
    gap: 24px;
    align-items: start;
}

.sf-program-detail-content-card,
.sf-program-detail-side-card {
    border: 1px solid rgba(11,58,74,0.08);
    border-radius: 28px;
    background: #ffffff;
    box-shadow: 0 18px 55px rgba(11, 58, 74, 0.08);
}

.sf-program-detail-content-card {
    padding: 34px;
}

.sf-program-detail-label {
    display: inline-flex;
    margin-bottom: 10px;
    color: #f39c3d;
    font-size: 13px;
    font-weight: 950;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.sf-program-detail-content-card h2,
.sf-program-detail-side-card h3 {
    margin: 0 0 14px;
    color: #102033;
    font-weight: 950;
    letter-spacing: -0.035em;
}

.sf-program-detail-content-card h2 {
    font-size: clamp(28px, 3vw, 42px);
}

.sf-program-detail-side-card h3 {
    font-size: 26px;
}

.sf-program-detail-content,
.sf-program-detail-side-card p {
    color: #516b7d;
    font-size: 16px;
    line-height: 1.85;
}

.sf-program-detail-side-card {
    padding: 28px;
    position: sticky;
    top: 24px;
}

.sf-program-detail-side-actions {
    display: grid;
    gap: 12px;
    margin-top: 24px;
}

.sf-program-detail-side-actions a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    border-radius: 999px;
    padding: 0 18px;
    color: #ffffff;
    background: #0b3a4a;
    font-weight: 950;
    text-decoration: none;
}

.sf-program-detail-side-actions a + a {
    color: #0b3a4a;
    background: #fff7ed;
    border: 1px solid #fed7aa;
}

.sf-program-detail-related {
    margin-top: 26px;
}

.sf-program-listing-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}

.sf-program-listing-actions a.outline {
    color: #0b3a4a;
    background: #ffffff;
    border: 1px solid rgba(11,58,74,0.16);
    box-shadow: none;
}

.sf-program-listing-actions a.outline:hover {
    color: #102033;
    background: #fff7ed;
}

@media (max-width: 1080px) {
    .sf-program-detail-hero-grid,
    .sf-program-detail-layout {
        grid-template-columns: 1fr;
    }

    .sf-program-detail-side-card {
        position: static;
    }
}

@media (max-width: 680px) {
    .sf-program-detail-hero {
        padding: 58px 0 74px;
    }

    .sf-program-detail-hero h1 {
        font-size: 36px;
    }

    .sf-program-detail-actions,
    .sf-program-listing-actions {
        flex-direction: column;
        align-items: stretch;
    }

    .sf-program-detail-actions a,
    .sf-program-listing-actions a {
        width: 100%;
    }

    .sf-program-detail-summary,
    .sf-program-detail-content-card,
    .sf-program-detail-side-card {
        border-radius: 24px;
        padding: 22px;
    }

    .sf-program-detail-summary-grid {
        grid-template-columns: 1fr;
    }

    .sf-program-detail-body {
        padding: 44px 0 64px;
    }
}

/* ===== Verify Partner Button Final Alignment Fix ===== */
@media (min-width: 769px) {
    .sf-vp-compact .sf-vpc-btn,
    .sf-vp-compact .sf-vpc-btn-light {
        width: 320px !important;
        max-width: 320px !important;
        min-width: 320px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        display: flex !important;
        justify-content: center !important;
        align-items: center !important;
        text-align: center !important;
    }
}

@media (max-width: 768px) {
    .sf-vp-compact .sf-vpc-btn,
    .sf-vp-compact .sf-vpc-btn-light {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }
}


/* ===== Verify Partner Button Vertical Alignment Fix ===== */
@media (min-width: 769px) {
    .sf-vp-compact .sf-vpc-card {
        display: flex !important;
        flex-direction: column !important;
    }

    .sf-vp-compact .sf-vpc-features {
        margin-bottom: 24px !important;
    }

    .sf-vp-compact .sf-vpc-btn,
    .sf-vp-compact .sf-vpc-btn-light {
        margin-top: auto !important;
        margin-bottom: 0 !important;
    }

    .sf-vp-compact .sf-vpc-trust,
    .sf-vp-compact .sf-vpc-trust-light {
        margin-top: 14px !important;
    }
}

/* ===== Public Media Center ===== */
.sf-media-page-hero{
    padding:90px 0 70px;
    background:linear-gradient(135deg,#073645,#0b5563);
    color:#fff;
}
.sf-media-page-hero span,
.sf-media-detail-hero span{
    display:inline-flex;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    font-weight:800;
    text-transform:uppercase;
    letter-spacing:.8px;
    font-size:12px;
    margin-bottom:18px;
}
.sf-media-page-hero h1{
    max-width:880px;
    font-size:52px;
    line-height:1.08;
    font-weight:900;
    margin-bottom:18px;
}
.sf-media-page-hero p{
    max-width:760px;
    color:#dbeafe;
    font-size:18px;
    line-height:1.7;
}
.sf-media-search{
    margin-top:32px;
    max-width:720px;
    display:flex;
    gap:12px;
    background:#fff;
    padding:10px;
    border-radius:20px;
}
.sf-media-search input{
    flex:1;
    border:0;
    outline:0;
    padding:14px 16px;
    font-size:15px;
}
.sf-media-search button{
    border:0;
    border-radius:14px;
    background:#ff7a00;
    color:#fff;
    padding:0 28px;
    font-weight:900;
}
.sf-media-page-content{
    padding:70px 0;
    background:#f8fafc;
}
.sf-media-featured{
    display:grid;
    grid-template-columns:1.1fr .9fr;
    gap:0;
    overflow:hidden;
    border-radius:30px;
    background:#fff;
    box-shadow:0 24px 70px rgba(15,23,42,.10);
    margin-bottom:42px;
}
.sf-media-featured-image{
    min-height:360px;
    background-size:cover;
    background-position:center;
}
.sf-media-featured-content{
    padding:44px;
}
.sf-media-featured-content span{
    color:#ff7a00;
    font-weight:900;
    text-transform:uppercase;
    font-size:13px;
}
.sf-media-featured-content h2{
    font-size:36px;
    line-height:1.15;
    font-weight:900;
    color:#0b3a4a;
    margin:12px 0;
}
.sf-media-featured-content p{
    color:#64748b;
    line-height:1.75;
}
.sf-media-featured-content a,
.sf-media-read-more,
.sf-media-empty a{
    color:#ff7a00;
    font-weight:900;
    text-decoration:none;
}
.sf-media-layout{
    display:grid;
    grid-template-columns:280px 1fr;
    gap:30px;
}
.sf-media-sidebar-card{
    background:#fff;
    border-radius:22px;
    padding:22px;
    box-shadow:0 16px 42px rgba(15,23,42,.08);
    position:sticky;
    top:90px;
}
.sf-media-sidebar-card h3{
    font-size:20px;
    font-weight:900;
    color:#0b3a4a;
    margin-bottom:16px;
}
.sf-media-sidebar-card a{
    display:block;
    padding:12px 14px;
    border-radius:12px;
    color:#334155;
    text-decoration:none;
    font-weight:700;
}
.sf-media-sidebar-card a.active,
.sf-media-sidebar-card a:hover{
    background:#fff4e8;
    color:#ff7a00;
}
.sf-media-page-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.sf-media-page-card{
    background:#fff;
    border-radius:24px;
    overflow:hidden;
    box-shadow:0 16px 42px rgba(15,23,42,.08);
}
.sf-media-page-image{
    height:210px;
    display:block;
    background-size:cover;
    background-position:center;
    position:relative;
}
.sf-media-page-image span{
    position:absolute;
    left:18px;
    top:18px;
    background:#ff7a00;
    color:#fff;
    padding:7px 12px;
    border-radius:999px;
    font-size:12px;
    font-weight:900;
}
.sf-media-page-card-body{
    padding:24px;
}
.sf-media-page-card-body small{
    color:#64748b;
    font-weight:700;
}
.sf-media-page-card-body h3{
    margin:10px 0;
    font-size:22px;
    line-height:1.25;
    font-weight:900;
}
.sf-media-page-card-body h3 a{
    color:#0b3a4a;
    text-decoration:none;
}
.sf-media-page-card-body p{
    color:#64748b;
    line-height:1.65;
}
.sf-media-empty{
    background:#fff;
    border-radius:28px;
    padding:70px 30px;
    text-align:center;
    box-shadow:0 16px 42px rgba(15,23,42,.08);
}
.sf-media-empty-icon{
    font-size:54px;
    margin-bottom:16px;
}
.sf-media-empty h2{
    font-weight:900;
    color:#0b3a4a;
}
.sf-media-empty p{
    max-width:620px;
    margin:12px auto 20px;
    color:#64748b;
}
.sf-media-detail-hero{
    padding:80px 0 62px;
    background:linear-gradient(135deg,#073645,#0b5563);
    color:#fff;
}
.sf-media-detail-hero a{
    color:#ffb347;
    font-weight:900;
    text-decoration:none;
    display:inline-block;
    margin-bottom:22px;
}
.sf-media-detail-hero h1{
    max-width:940px;
    font-size:50px;
    line-height:1.12;
    font-weight:900;
}
.sf-media-detail-hero p{
    color:#dbeafe;
}
.sf-media-detail-body{
    padding:70px 0;
    background:#f8fafc;
}
.sf-media-detail-image{
    height:460px;
    border-radius:30px;
    background-size:cover;
    background-position:center;
    box-shadow:0 24px 70px rgba(15,23,42,.12);
    margin-bottom:34px;
}
.sf-media-detail-content{
    max-width:900px;
    margin:0 auto;
    background:#fff;
    border-radius:28px;
    padding:44px;
    box-shadow:0 16px 42px rgba(15,23,42,.08);
}
.sf-media-detail-excerpt{
    font-size:20px;
    line-height:1.7;
    color:#0b3a4a;
    font-weight:700;
    margin-bottom:24px;
}
.sf-media-richtext{
    color:#334155;
    font-size:17px;
    line-height:1.85;
}
.sf-media-related{
    margin-top:56px;
}
.sf-media-related h2{
    font-size:34px;
    font-weight:900;
    color:#0b3a4a;
    margin-bottom:22px;
}
.sf-media-pagination{
    margin-top:30px;
}
@media(max-width:960px){
    .sf-media-page-hero h1,
    .sf-media-detail-hero h1{
        font-size:38px;
    }
    .sf-media-featured,
    .sf-media-layout{
        grid-template-columns:1fr;
    }
    .sf-media-page-grid{
        grid-template-columns:1fr 1fr;
    }
    .sf-media-sidebar-card{
        position:relative;
        top:auto;
    }
}
@media(max-width:640px){
    .sf-media-page-hero,
    .sf-media-detail-hero{
        padding:58px 0 44px;
    }
    .sf-media-page-hero h1,
    .sf-media-detail-hero h1{
        font-size:32px;
    }
    .sf-media-search{
        flex-direction:column;
    }
    .sf-media-search button{
        padding:14px;
    }
    .sf-media-page-grid{
        grid-template-columns:1fr;
    }
    .sf-media-featured-content,
    .sf-media-detail-content{
        padding:26px;
    }
    .sf-media-detail-image{
        height:260px;
    }
}


/* ===== Media Category Filter Chips ===== */
.sf-media-filter-chips{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
    margin:0 0 30px;
}
.sf-media-filter-chips a{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:11px 16px;
    border-radius:999px;
    background:#fff;
    color:#334155;
    text-decoration:none;
    font-weight:800;
    box-shadow:0 10px 28px rgba(15,23,42,.07);
    border:1px solid rgba(15,23,42,.06);
}
.sf-media-filter-chips a span{
    min-width:24px;
    height:24px;
    padding:0 8px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:#f1f5f9;
    color:#64748b;
    font-size:12px;
}
.sf-media-filter-chips a.active,
.sf-media-filter-chips a:hover{
    background:#ff7a00;
    color:#fff;
}
.sf-media-filter-chips a.active span,
.sf-media-filter-chips a:hover span{
    background:rgba(255,255,255,.20);
    color:#fff;
}
@media(max-width:640px){
    .sf-media-filter-chips{
        gap:8px;
    }
    .sf-media-filter-chips a{
        width:100%;
        justify-content:space-between;
    }
}


/* ===== Public Footer Visibility Fix For Media Pages ===== */
.public-footer{
    display:block !important;
    background:#073645 !important;
    color:#ffffff !important;
    padding:60px 0 22px !important;
    margin-top:0 !important;
}
.public-footer .wrap{
    max-width:1200px !important;
    margin:0 auto !important;
    padding:0 20px !important;
}
.public-footer-grid{
    display:grid !important;
    grid-template-columns:1.4fr .8fr .8fr 1fr !important;
    gap:30px !important;
}
.public-footer h3{
    color:#ffffff !important;
    font-size:18px !important;
    font-weight:900 !important;
    margin-bottom:14px !important;
}
.public-footer p,
.public-footer a{
    color:#dbeafe !important;
    text-decoration:none !important;
    display:block !important;
    margin-bottom:9px !important;
    line-height:1.6 !important;
}
.public-footer a:hover{
    color:#ffb347 !important;
}
.footer-brand-badges{
    display:flex !important;
    flex-wrap:wrap !important;
    gap:8px !important;
    margin-top:16px !important;
}
.footer-brand-badges span{
    background:rgba(255,255,255,.10) !important;
    color:#ffffff !important;
    border-radius:999px !important;
    padding:7px 11px !important;
    font-size:12px !important;
    font-weight:800 !important;
}
.footer-contact-card{
    background:rgba(255,255,255,.08) !important;
    border-radius:20px !important;
    padding:22px !important;
}
.footer-actions{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    margin-top:14px !important;
}
.footer-actions a{
    border-radius:999px !important;
    padding:10px 14px !important;
    text-align:center !important;
    font-weight:900 !important;
}
.footer-actions .apply{
    background:#ff7a00 !important;
    color:#fff !important;
}
.footer-actions .verify{
    background:rgba(255,255,255,.12) !important;
    color:#fff !important;
}
.public-footer-copy{
    border-top:1px solid rgba(255,255,255,.12) !important;
    margin-top:34px !important;
    padding-top:20px !important;
    color:#cbd5e1 !important;
    font-size:14px !important;
}
@media(max-width:900px){
    .public-footer-grid{
        grid-template-columns:1fr 1fr !important;
    }
}
@media(max-width:640px){
    .public-footer-grid{
        grid-template-columns:1fr !important;
    }
}


/* =====================================================
   GLOBAL PUBLIC FOOTER ENABLE
   Fix: overrides older body .public-footer { display:none }
===================================================== */

html body .public-footer{
    display:block !important;
    visibility:visible !important;
    opacity:1 !important;
}

html body .public-footer *{
    visibility:visible !important;
}


/* ===== Public Information Pages ===== */
.sf-page-hero{
    padding:90px 0 70px;
    background:linear-gradient(135deg,#073645,#0b5563);
    color:#fff;
}
.sf-page-label{
    display:inline-flex;
    padding:8px 14px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.8px;
    font-size:12px;
    margin-bottom:18px;
}
.sf-page-hero h1{
    max-width:920px;
    font-size:52px;
    line-height:1.08;
    font-weight:900;
    margin-bottom:18px;
}
.sf-page-hero p{
    max-width:780px;
    color:#dbeafe;
    font-size:18px;
    line-height:1.7;
}
.sf-section{
    padding:70px 0;
    background:#f8fafc;
}
.sf-section .container{
    max-width:1050px;
    background:#fff;
    border-radius:28px;
    padding:46px;
    box-shadow:0 18px 50px rgba(15,23,42,.08);
}
.sf-section h2{
    color:#0b3a4a;
    font-weight:900;
    margin:26px 0 12px;
}
.sf-section h2:first-child{
    margin-top:0;
}
.sf-section p,
.sf-section li{
    color:#475569;
    font-size:17px;
    line-height:1.8;
}
.sf-page-cta{
    padding:70px 0;
    background:#fff4e8;
    text-align:center;
}
.sf-page-cta h2{
    color:#0b3a4a;
    font-weight:900;
    font-size:38px;
}
.sf-page-cta p{
    color:#475569;
    margin:12px auto 24px;
    max-width:680px;
}
@media(max-width:640px){
    .sf-page-hero h1{font-size:34px;}
    .sf-section .container{padding:28px;}
}

/* ===== Public Contact Page ===== */
.sf-contact-section{
    padding:80px 0;
    background:#f8fafc;
}
.sf-contact-grid{
    display:grid;
    grid-template-columns:1.15fr .85fr;
    gap:32px;
    align-items:stretch;
}
.sf-contact-info,
.sf-contact-panel,
.sf-contact-map-card{
    background:#fff;
    border-radius:30px;
    padding:42px;
    box-shadow:0 22px 60px rgba(15,23,42,.08);
}
.sf-contact-info > span,
.sf-contact-map-card span{
    color:#ff7a00;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.8px;
}
.sf-contact-info h2,
.sf-contact-panel h3,
.sf-contact-map-card h2{
    color:#0b3a4a;
    font-weight:900;
    margin:10px 0 14px;
}
.sf-contact-info p,
.sf-contact-panel p,
.sf-contact-map-card p{
    color:#64748b;
    line-height:1.75;
}
.sf-contact-cards{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:18px;
    margin-top:28px;
}
.sf-contact-card{
    border:1px solid #e2e8f0;
    border-radius:22px;
    padding:20px;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
}
.sf-contact-card b{
    display:block;
    color:#0b3a4a;
    font-size:16px;
    margin-bottom:10px;
}
.sf-contact-card a{
    color:#ff7a00;
    font-weight:900;
    text-decoration:none;
}
.sf-contact-panel{
    background:linear-gradient(135deg,#073645,#0b5563);
    color:#fff;
}
.sf-contact-panel h3{
    color:#fff;
    font-size:30px;
}
.sf-contact-panel p{
    color:#dbeafe;
}
.sf-contact-actions{
    display:grid;
    gap:12px;
    margin:26px 0;
}
.sf-contact-actions a{
    display:flex;
    justify-content:space-between;
    align-items:center;
    padding:14px 18px;
    border-radius:16px;
    background:rgba(255,255,255,.12);
    color:#fff;
    text-decoration:none;
    font-weight:900;
}
.sf-contact-actions a:hover{
    background:#ff7a00;
}
.sf-contact-note{
    border-top:1px solid rgba(255,255,255,.18);
    padding-top:20px;
}
.sf-contact-note strong,
.sf-contact-note span{
    display:block;
}
.sf-contact-note span{
    color:#dbeafe;
    margin-top:6px;
}
.sf-contact-map-section{
    padding:0 0 80px;
    background:#f8fafc;
}
.sf-contact-map-card{
    display:grid;
    grid-template-columns:.9fr 1.1fr;
    gap:24px;
    align-items:center;
}
.sf-contact-map-placeholder{
    min-height:260px;
    border-radius:24px;
    background:linear-gradient(135deg,#dbeafe,#fff7ed);
    border:1px dashed #94a3b8;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.sf-contact-map-placeholder strong{
    color:#0b3a4a;
    font-size:24px;
    font-weight:900;
}
.sf-contact-map-placeholder small{
    color:#64748b;
    margin-top:8px;
}
@media(max-width:900px){
    .sf-contact-grid,
    .sf-contact-map-card{
        grid-template-columns:1fr;
    }
    .sf-contact-cards{
        grid-template-columns:1fr;
    }
}
@media(max-width:640px){
    .sf-contact-info,
    .sf-contact-panel,
    .sf-contact-map-card{
        padding:28px;
        border-radius:24px;
    }
}

/* ===== Public Success Stories Page ===== */
.sf-success-section{
    padding:80px 0;
    background:#f8fafc;
}
.sf-success-head{
    text-align:center;
    max-width:780px;
    margin:0 auto 42px;
}
.sf-success-head span,
.sf-success-impact span{
    color:#ff7a00;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.8px;
}
.sf-success-head h2,
.sf-success-impact h2{
    color:#0b3a4a;
    font-size:42px;
    font-weight:900;
    margin:10px 0 12px;
}
.sf-success-head p,
.sf-success-impact p{
    color:#64748b;
    line-height:1.75;
}
.sf-success-grid{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:24px;
}
.sf-success-card{
    background:#fff;
    border-radius:28px;
    padding:32px;
    box-shadow:0 20px 55px rgba(15,23,42,.08);
    border:1px solid #eef2f7;
}
.sf-success-avatar{
    width:58px;
    height:58px;
    border-radius:18px;
    background:linear-gradient(135deg,#ff7a00,#ffb347);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    font-weight:900;
    margin-bottom:18px;
}
.sf-success-stars{
    color:#ff7a00;
    font-weight:900;
    margin-bottom:14px;
}
.sf-success-card h3{
    color:#0b3a4a;
    font-weight:900;
    margin-bottom:12px;
}
.sf-success-card p{
    color:#64748b;
    line-height:1.75;
}
.sf-success-card strong,
.sf-success-card small{
    display:block;
}
.sf-success-card strong{
    color:#0f172a;
    margin-top:18px;
}
.sf-success-card small{
    color:#64748b;
}
.sf-success-impact{
    padding:80px 0;
    background:#fff;
}
.sf-success-impact-grid{
    display:grid;
    grid-template-columns:1fr 1.1fr;
    gap:32px;
    align-items:center;
}
.sf-success-metrics{
    display:grid;
    grid-template-columns:repeat(2,1fr);
    gap:18px;
}
.sf-success-metrics div{
    background:linear-gradient(135deg,#073645,#0b5563);
    color:#fff;
    border-radius:26px;
    padding:30px;
    box-shadow:0 20px 55px rgba(15,23,42,.10);
}
.sf-success-metrics strong{
    display:block;
    font-size:38px;
    font-weight:900;
    color:#ffb347;
}
.sf-success-metrics small{
    color:#dbeafe;
    font-weight:800;
}
.sf-success-process{
    padding:80px 0;
    background:#f8fafc;
}
.sf-success-steps{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:18px;
}
.sf-success-steps div{
    background:#fff;
    border-radius:24px;
    padding:26px;
    box-shadow:0 16px 45px rgba(15,23,42,.07);
}
.sf-success-steps b{
    color:#ff7a00;
    font-size:14px;
}
.sf-success-steps strong{
    display:block;
    color:#0b3a4a;
    font-size:18px;
    font-weight:900;
    margin:10px 0;
}
.sf-success-steps p{
    color:#64748b;
    line-height:1.65;
}
@media(max-width:1000px){
    .sf-success-grid,
    .sf-success-impact-grid,
    .sf-success-steps{
        grid-template-columns:1fr;
    }
}
@media(max-width:640px){
    .sf-success-head h2,
    .sf-success-impact h2{
        font-size:32px;
    }
    .sf-success-metrics{
        grid-template-columns:1fr;
    }
}

/* ===== Public FAQ Page ===== */
.sf-faq-page-section{
    padding:80px 0;
    background:#f8fafc;
}
.sf-faq-page-layout{
    display:grid;
    grid-template-columns:300px 1fr;
    gap:30px;
    align-items:start;
}
.sf-faq-page-sidebar{
    position:sticky;
    top:100px;
    background:#fff;
    border-radius:26px;
    padding:26px;
    box-shadow:0 20px 55px rgba(15,23,42,.08);
}
.sf-faq-page-sidebar h3{
    color:#0b3a4a;
    font-weight:900;
    margin-bottom:18px;
}
.sf-faq-page-sidebar a{
    display:block;
    color:#475569;
    text-decoration:none;
    padding:12px 14px;
    border-radius:14px;
    font-weight:800;
}
.sf-faq-page-sidebar a:hover{
    background:#fff4e8;
    color:#ff7a00;
}
.sf-faq-page-content{
    display:grid;
    gap:24px;
}
.sf-faq-page-group{
    background:#fff;
    border-radius:28px;
    padding:34px;
    box-shadow:0 20px 55px rgba(15,23,42,.08);
}
.sf-faq-page-group > span{
    color:#ff7a00;
    font-size:13px;
    font-weight:900;
    text-transform:uppercase;
    letter-spacing:.8px;
}
.sf-faq-page-group h2{
    color:#0b3a4a;
    font-weight:900;
    margin:8px 0 22px;
}
.sf-faq-page-group details{
    border:1px solid #e2e8f0;
    border-radius:18px;
    padding:18px 20px;
    margin-bottom:14px;
    background:linear-gradient(180deg,#ffffff,#f8fafc);
}
.sf-faq-page-group summary{
    cursor:pointer;
    color:#0f172a;
    font-weight:900;
    list-style:none;
}
.sf-faq-page-group summary::-webkit-details-marker{
    display:none;
}
.sf-faq-page-group p{
    color:#64748b;
    line-height:1.75;
    margin:14px 0 0;
}
@media(max-width:900px){
    .sf-faq-page-layout{
        grid-template-columns:1fr;
    }
    .sf-faq-page-sidebar{
        position:relative;
        top:auto;
    }
}
@media(max-width:640px){
    .sf-faq-page-group{
        padding:24px;
    }
}

/* ===== Dynamic Legal Pages ===== */
.sf-legal-content{
    color:#334155;
    line-height:1.85;
}
.sf-legal-content h2,
.sf-legal-content h3{
    color:#0b3a4a;
    font-weight:900;
    margin-top:28px;
}
.sf-legal-content p,
.sf-legal-content li{
    font-size:16px;
    color:#475569;
}
.sf-legal-content ul,
.sf-legal-content ol{
    padding-left:22px;
}
