/* ============================================
   PREMIUM PRODUCT PAGE - 2025 UI/UX DESIGN
   ============================================ */

/* CSS Variables */
:root {
    --ph-font: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
    --ph-text: #1a1f36;
    --ph-text-secondary: #3c4257;
    --ph-text-muted: #697386;
    --ph-bg: #ffffff;
    --ph-bg-soft: #f8fafc;
    --ph-bg-section: #f8fafc;
    --ph-border: #e2e8f0;
    --ph-primary: #0ea5e9;
    --ph-primary-dark: #0284c7;
    --ph-accent: #10b981;
    --ph-accent-soft: rgba(16, 185, 129, 0.1);
    --ph-gradient-hero: linear-gradient(135deg, #f0f9ff 0%, #e0f2fe 30%, #f0fdf4 70%, #ecfdf5 100%);
    --ph-shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);
    --ph-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.06), 0 2px 4px -1px rgba(0, 0, 0, 0.04);
    --ph-shadow-lg: 0 20px 40px -12px rgba(0, 0, 0, 0.1);
    --ph-radius: 16px;
    --ph-radius-sm: 12px;
    --ph-container: min(1440px, 94vw);
}

/* Base Styles */
.ph-container {
    max-width: var(--ph-container);
    margin: 0 auto;
    padding: 0 clamp(20px, 5vw, 40px);
}

/* =====================
   PREMIUM HERO SECTION 2025
   ===================== */
.hero-ultra {
    position: relative;
    padding: clamp(110px, 14vh, 170px) 0 clamp(160px, 18vh, 240px);
    background: linear-gradient(180deg, #061220 0%, #0d243d 35%, #0a1e35 70%, #081a2e 100%);
    overflow: hidden;
}

/* Background Effects */
.hero-ultra-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.hero-ultra-gradient {
    position: absolute;
    inset: 0;
    background: 
        radial-gradient(ellipse 120% 60% at 50% 0%, rgba(14, 165, 233, 0.18) 0%, transparent 55%),
        radial-gradient(ellipse 80% 50% at 15% 90%, rgba(6, 182, 212, 0.1) 0%, transparent 50%),
        radial-gradient(ellipse 70% 45% at 85% 85%, rgba(16, 185, 129, 0.08) 0%, transparent 50%);
}

.hero-ultra-glow {
    position: absolute;
    top: 35%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 900px;
    height: 500px;
    background: radial-gradient(ellipse, rgba(14, 165, 233, 0.1) 0%, transparent 65%);
    filter: blur(80px);
    animation: hero-glow-pulse 8s ease-in-out infinite;
}

@keyframes hero-glow-pulse {
    0%, 100% { opacity: 0.8; transform: translate(-50%, -50%) scale(1); }
    50% { opacity: 1; transform: translate(-50%, -50%) scale(1.05); }
}

.hero-ultra-mesh {
    position: absolute;
    inset: 0;
    background-image: 
        linear-gradient(rgba(255, 255, 255, 0.02) 1px, transparent 1px),
        linear-gradient(90deg, rgba(255, 255, 255, 0.02) 1px, transparent 1px);
    background-size: 60px 60px;
    opacity: 0.5;
}

/* Container */
.hero-ultra-container {
    position: relative;
    z-index: 2;
    max-width: 940px;
    margin: 0 auto;
    padding: 0 clamp(24px, 6vw, 48px);
}

/* Content */
.hero-ultra-content {
    text-align: center;
}

/* Badge */
.hero-ultra-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 12px 26px 12px 16px;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.12) 0%, rgba(6, 182, 212, 0.08) 100%);
    border: 1px solid rgba(34, 211, 238, 0.2);
    border-radius: 50px;
    margin-bottom: 36px;
    position: relative;
    overflow: hidden;
}

.hero-ultra-badge::before {
    content: '';
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, transparent 0%, rgba(255, 255, 255, 0.08) 50%, transparent 100%);
    transform: translateX(-100%);
    animation: badge-shimmer 3s ease-in-out infinite;
}

@keyframes badge-shimmer {
    0% { transform: translateX(-100%); }
    100% { transform: translateX(100%); }
}

.hero-ultra-badge-dot {
    width: 10px;
    height: 10px;
    background: linear-gradient(135deg, #22d3ee 0%, #10b981 100%);
    border-radius: 50%;
    box-shadow: 0 0 16px rgba(34, 211, 238, 0.7), 0 0 30px rgba(34, 211, 238, 0.4);
    animation: pulse-dot 2s ease-in-out infinite;
    position: relative;
    z-index: 1;
}

@keyframes pulse-dot {
    0%, 100% { opacity: 1; transform: scale(1); box-shadow: 0 0 16px rgba(34, 211, 238, 0.7), 0 0 30px rgba(34, 211, 238, 0.4); }
    50% { opacity: 0.8; transform: scale(0.9); box-shadow: 0 0 10px rgba(34, 211, 238, 0.5), 0 0 20px rgba(34, 211, 238, 0.3); }
}

.hero-ultra-badge span {
    font: 700 14px/1 var(--ph-font);
    color: #7dd3fc;
    text-transform: uppercase;
    letter-spacing: 2.5px;
    position: relative;
    z-index: 1;
}

/* Title */
.hero-ultra-title {
    margin: 0 0 32px;
}

.hero-ultra-main {
    display: block;
    font: 800 clamp(40px, 5.8vw, 70px)/1.15 var(--ph-font);
    background: linear-gradient(180deg, #ffffff 0%, #e0f2fe 50%, #bae6fd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -1.5px;
    margin-bottom: 18px;
    padding-bottom: 6px;
    filter: drop-shadow(0 4px 20px rgba(14, 165, 233, 0.15));
}

.hero-ultra-sub {
    display: block;
    font: 500 clamp(19px, 2.4vw, 26px)/1.5 var(--ph-font);
    color: #94a3b8;
    letter-spacing: 0.3px;
}

/* Description */
.hero-ultra-desc {
    font: 400 clamp(17px, 1.9vw, 20px)/1.9 var(--ph-font);
    color: #94a3b8;
    max-width: min(100%, var(--lead-measure, 1040px));
    margin: 0 auto 50px;
    letter-spacing: 0.2px;
}

.hero-ultra-desc b {
    font-family: inherit;
    font-weight: 700;
    color: #ffffff;
}

/* Course Includes */
.hero-ultra-includes {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 22px;
}

.hero-ultra-includes-label {
    font: 700 14px/1 var(--ph-font);
    color: #9fc3dd;
    text-transform: uppercase;
    letter-spacing: 0.18em;
}

.hero-ultra-includes-list {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 14px;
}

.hero-ultra-include {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 20px;
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.04) 0%, rgba(255, 255, 255, 0.02) 100%);
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 14px;
    transition: all 0.35s cubic-bezier(0.4, 0, 0.2, 1);
    -webkit-backdrop-filter: blur(4px);
    backdrop-filter: blur(4px);
}

.hero-ultra-include:hover {
    background: linear-gradient(135deg, rgba(255, 255, 255, 0.08) 0%, rgba(255, 255, 255, 0.04) 100%);
    border-color: rgba(34, 211, 238, 0.3);
    transform: translateY(-4px);
    box-shadow: 0 12px 32px rgba(0, 0, 0, 0.25), 0 0 0 1px rgba(34, 211, 238, 0.1);
}

.hero-ultra-include-icon {
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, rgba(34, 211, 238, 0.2) 0%, rgba(16, 185, 129, 0.15) 100%);
    border-radius: 10px;
    flex-shrink: 0;
    border: 1px solid rgba(34, 211, 238, 0.15);
}

.hero-ultra-include-icon svg {
    width: 18px;
    height: 18px;
    color: #22d3ee;
}

.hero-ultra-include:nth-child(1) .hero-ultra-include-icon { background: linear-gradient(135deg, rgba(59, 130, 246, 0.2) 0%, rgba(99, 102, 241, 0.15) 100%); border-color: rgba(59, 130, 246, 0.2); }
.hero-ultra-include:nth-child(1) .hero-ultra-include-icon svg { color: #60a5fa; }

.hero-ultra-include:nth-child(2) .hero-ultra-include-icon { background: linear-gradient(135deg, rgba(16, 185, 129, 0.2) 0%, rgba(34, 197, 94, 0.15) 100%); border-color: rgba(16, 185, 129, 0.2); }
.hero-ultra-include:nth-child(2) .hero-ultra-include-icon svg { color: #34d399; }

.hero-ultra-include:nth-child(3) .hero-ultra-include-icon { background: linear-gradient(135deg, rgba(251, 191, 36, 0.2) 0%, rgba(245, 158, 11, 0.15) 100%); border-color: rgba(251, 191, 36, 0.2); }
.hero-ultra-include:nth-child(3) .hero-ultra-include-icon svg { color: #fbbf24; }

.hero-ultra-include:nth-child(4) .hero-ultra-include-icon { background: linear-gradient(135deg, rgba(34, 211, 238, 0.2) 0%, rgba(6, 182, 212, 0.15) 100%); border-color: rgba(34, 211, 238, 0.2); }
.hero-ultra-include:nth-child(4) .hero-ultra-include-icon svg { color: #22d3ee; }


.hero-ultra-include span {
    font: 600 14px/1.3 var(--ph-font);
    color: #e2e8f0;
    white-space: nowrap;
}

/* On desktop the strip breaks out of the text column so all four
   chips sit on one line, centred under the description. From 1100px
   up the row always has room; below that the chips wrap naturally. */
@media (min-width: 1100px) {
    .hero-ultra-includes {
        position: relative;
        left: 50%;
        transform: translateX(-50%);
        width: min(1100px, calc(100vw - 64px));
    }

    .hero-ultra-includes-list {
        flex-wrap: nowrap;
    }
}

/* Premium Curved Transition */
.hero-ultra-transition {
    position: absolute;
    bottom: -1px;
    left: 0;
    right: 0;
    z-index: 3;
    line-height: 0;
    pointer-events: none;
}

.hero-ultra-transition svg {
    width: 100%;
    height: clamp(80px, 12vw, 160px);
    display: block;
}

/* Responsive */
@media (max-width: 768px) {
    .hero-ultra {
        padding: 100px 0 110px;
    }
    
    .hero-ultra-badge {
        padding: 10px 20px 10px 14px;
        margin-bottom: 28px;
    }
    
    .hero-ultra-badge span {
        font-size: 14px;
        letter-spacing: 2px;
    }
    
    .hero-ultra-main {
        font-size: 36px;
        letter-spacing: -0.5px;
    }
    
    .hero-ultra-sub {
        font-size: 18px;
    }
    
    .hero-ultra-desc {
        font-size: 16px;
        margin-bottom: 40px;
    }
    
    .hero-ultra-includes-list {
        flex-wrap: wrap;
        gap: 10px;
    }
    
    .hero-ultra-include {
        padding: 12px 16px;
    }
    
    .hero-ultra-include-icon {
        width: 32px;
        height: 32px;
    }
    
    .hero-ultra-include-icon svg {
        width: 16px;
        height: 16px;
    }
    
    .hero-ultra-include span {
        font-size: 14px;
    }
    
}

@media (max-width: 480px) {
    .hero-ultra {
        padding: 90px 0 100px;
    }
    
    .hero-ultra-badge {
        padding: 8px 16px 8px 12px;
        gap: 10px;
    }
    
    .hero-ultra-badge-dot {
        width: 8px;
        height: 8px;
    }
    
    .hero-ultra-main {
        font-size: 30px;
    }
    
    .hero-ultra-sub {
        font-size: 16px;
    }
    
    .hero-ultra-desc {
        font-size: 15px;
        line-height: 1.8;
    }
    
    .hero-ultra-includes {
        gap: 0;
    }
    
    .hero-ultra-includes-label {
        display: none;
    }
    
    .hero-ultra-includes-list {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 2px;
        width: auto;
        max-width: 300px;
        margin: 0 auto;
        background: rgba(255, 255, 255, 0.04);
        border: 1px solid rgba(255, 255, 255, 0.08);
        border-radius: 16px;
        padding: 6px;
        -webkit-backdrop-filter: blur(8px);
        backdrop-filter: blur(8px);
    }
    
    .hero-ultra-include {
        padding: 10px 8px;
        gap: 7px;
        border-radius: 12px;
        border: none;
        background: none;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        justify-content: center;
        transition: background 0.2s ease;
    }
    
    .hero-ultra-include:hover {
        background: rgba(255, 255, 255, 0.06);
        transform: none;
        box-shadow: none;
    }
    
    .hero-ultra-include-icon {
        width: 7px;
        height: 7px;
        border-radius: 50%;
        border: none;
        min-width: 7px;
        flex-shrink: 0;
    }
    
    .hero-ultra-include-icon svg {
        display: none;
    }
    
    .hero-ultra-include:nth-child(1) .hero-ultra-include-icon { background: #60a5fa; box-shadow: 0 0 6px rgba(96, 165, 250, 0.5); }
    .hero-ultra-include:nth-child(2) .hero-ultra-include-icon { background: #34d399; box-shadow: 0 0 6px rgba(52, 211, 153, 0.5); }
    .hero-ultra-include:nth-child(3) .hero-ultra-include-icon { background: #fbbf24; box-shadow: 0 0 6px rgba(251, 191, 36, 0.5); }
    .hero-ultra-include:nth-child(4) .hero-ultra-include-icon { background: #22d3ee; box-shadow: 0 0 6px rgba(34, 211, 238, 0.5); }
    
    .hero-ultra-include span {
        font-size: 14px;
        font-weight: 500;
        white-space: normal;
        text-align: center;
        color: #cbd5e1;
        letter-spacing: 0.2px;
    }
    
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .hero-ultra-include {
        transition: none;
    }
    
    .hero-ultra-badge-dot {
        animation: none;
    }
    
    .hero-ultra-badge::before {
        animation: none;
    }
    
    .hero-ultra-glow {
        animation: none;
    }
}

/* =====================
   PREMIUM FEATURES SECTION
   ===================== */
.pf-section {
    position: relative;
    background: linear-gradient(180deg, #ffffff 0%, #f8fbff 40%, #f0f7ff 100%);
    padding: clamp(40px, 6vw, 60px) 0;
    overflow: hidden;
}

.pf-bg-pattern {
    position: absolute;
    inset: 0;
    background: 
        radial-gradient(ellipse 80% 50% at 0% 0%, rgba(14, 165, 233, 0.04) 0%, transparent 50%),
        radial-gradient(ellipse 60% 40% at 100% 100%, rgba(6, 182, 212, 0.03) 0%, transparent 50%);
    pointer-events: none;
}

.pf-container {
    position: relative;
    z-index: 1;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 clamp(20px, 5vw, 40px);
}

/* Section Header */
.pf-header {
    text-align: center;
    margin-bottom: clamp(40px, 6vw, 60px);
}

.pf-label {
    display: inline-block;
    padding: 8px 18px;
    background: linear-gradient(135deg, rgba(14, 165, 233, 0.1) 0%, rgba(16, 185, 129, 0.1) 100%);
    border: 1px solid rgba(14, 165, 233, 0.2);
    border-radius: 50px;
    font: 700 14px/1 var(--ph-font);
    color: #0284c7;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin-bottom: 20px;
}

.pf-title {
    font: 800 clamp(28px, 4vw, 44px)/1.2 var(--ph-font);
    color: var(--ph-text);
    letter-spacing: -0.5px;
    margin: 0 0 clamp(18px, 2.5vw, 28px);
    max-width: 860px;
    margin-left: auto;
    margin-right: auto;
    text-wrap: balance;
}

.pf-subtitle {
    font: 500 clamp(17px, 2vw, 20px)/1.75 var(--ph-font);
    color: var(--ph-text-secondary);
    max-width: min(100%, var(--lead-measure, 1040px));
    margin: 0 auto clamp(12px, 2vw, 20px);
    text-wrap: pretty;
}

/* Main Feature Cards */
.pf-main-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
    margin-bottom: 40px;
}

@media (max-width: 1024px) {
    .pf-main-grid {
        grid-template-columns: 1fr;
        gap: 20px;
    }
}

.pf-card {
    position: relative;
    background: #ffffff;
    border-radius: 24px;
    padding: clamp(28px, 4vw, 40px);
    border: 1px solid rgba(226, 232, 240, 0.8);
    box-shadow: 
        0 4px 6px -1px rgba(0, 0, 0, 0.05),
        0 10px 15px -3px rgba(0, 0, 0, 0.05);
    overflow: hidden;
    transition: all 0.4s cubic-bezier(0.4, 0, 0.2, 1);
}

.pf-card:hover {
    transform: translateY(-8px);
    box-shadow: 
        0 20px 25px -5px rgba(0, 0, 0, 0.08),
        0 10px 10px -5px rgba(0, 0, 0, 0.04);
}

.pf-card-glow {
    position: absolute;
    top: -50%;
    left: -50%;
    width: 200%;
    height: 200%;
    opacity: 0;
    transition: opacity 0.4s ease;
    pointer-events: none;
}

.pf-card:hover .pf-card-glow {
    opacity: 1;
}

/* Card Color Variants */
.pf-card-blue {
    border-top: 4px solid #0ea5e9;
}
.pf-card-blue .pf-card-glow {
    background: radial-gradient(circle at 30% 30%, rgba(14, 165, 233, 0.08) 0%, transparent 50%);
}
.pf-card-blue .pf-card-icon {
    background: linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);
    color: #0284c7;
}
.pf-card-blue .pf-card-value {
    color: #0284c7;
}

.pf-card-emerald {
    border-top: 4px solid #10b981;
}
.pf-card-emerald .pf-card-glow {
    background: radial-gradient(circle at 30% 30%, rgba(16, 185, 129, 0.08) 0%, transparent 50%);
}
.pf-card-emerald .pf-card-icon {
    background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
    color: #059669;
}
.pf-card-emerald .pf-card-value {
    color: #059669;
}

.pf-card-amber {
    border-top: 4px solid #f59e0b;
}
.pf-card-amber .pf-card-glow {
    background: radial-gradient(circle at 30% 30%, rgba(245, 158, 11, 0.08) 0%, transparent 50%);
}
.pf-card-amber .pf-card-icon {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    color: #d97706;
}
.pf-card-amber .pf-card-value {
    color: #d97706;
}

.pf-card-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    margin-bottom: 24px;
}

.pf-card-icon svg {
    width: 32px;
    height: 32px;
}

.pf-card-content {
    position: relative;
    z-index: 1;
}

.pf-card-value {
    display: block;
    font: 800 clamp(36px, 4vw, 48px)/1 var(--ph-font);
    letter-spacing: -1px;
    margin-bottom: 8px;
}

.pf-card-title {
    font: 700 clamp(18px, 2vw, 22px)/1.3 var(--ph-font);
    color: var(--ph-text);
    margin: 0 0 12px;
}

.pf-card-desc {
    font: 500 clamp(15px, 1.6vw, 17px)/1.7 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 0;
}

.pf-card-badge {
    position: absolute;
    top: 20px;
    right: 20px;
    padding: 6px 14px;
    background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 100%);
    color: white;
    font: 700 12.5px/1 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 0.04em;
    border-radius: 50px;
    box-shadow: 0 4px 10px -4px rgba(2, 132, 199, 0.5);
}

.pf-badge-gold {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

/* Secondary Features Grid */
.pf-secondary-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 40px;
}

@media (max-width: 1024px) {
    .pf-secondary-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 640px) {
    .pf-secondary-grid {
        grid-template-columns: 1fr;
    }
}

.pf-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #ffffff 0%, #fafcff 100%);
    border: 1px solid rgba(226, 232, 240, 0.8);
    border-radius: 16px;
    transition: all 0.3s ease;
}

.pf-item:hover {
    background: #ffffff;
    border-color: transparent;
    box-shadow: 
        0 8px 16px -4px rgba(0, 0, 0, 0.08),
        0 0 0 1px rgba(14, 165, 233, 0.1);
    transform: translateY(-2px);
}

.pf-item-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 14px;
    transition: transform 0.3s ease;
}

.pf-item:hover .pf-item-icon {
    transform: scale(1.05);
}

.pf-item-icon svg {
    width: 26px;
    height: 26px;
}

/* Icon Color Variants */
.pf-icon-sky {
    background: linear-gradient(135deg, #e0f2fe 0%, #bae6fd 100%);
    color: #0284c7;
}
.pf-icon-violet {
    background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%);
    color: #7c3aed;
}
.pf-icon-rose {
    background: linear-gradient(135deg, #ffe4e6 0%, #fecdd3 100%);
    color: #e11d48;
}
.pf-icon-teal {
    background: linear-gradient(135deg, #ccfbf1 0%, #99f6e4 100%);
    color: #0d9488;
}
.pf-icon-orange {
    background: linear-gradient(135deg, #ffedd5 0%, #fed7aa 100%);
    color: #ea580c;
}
.pf-icon-indigo {
    background: linear-gradient(135deg, #e0e7ff 0%, #c7d2fe 100%);
    color: #4f46e5;
}

.pf-item-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.pf-item-text strong {
    font: 700 clamp(15px, 1.6vw, 17px)/1.3 var(--ph-font);
    color: var(--ph-text);
}

.pf-item-text span {
    font: 500 clamp(14.5px, 1.4vw, 15.5px)/1.5 var(--ph-font);
    color: #4c5f76;
}

/* Trust Banner */
.pf-trust-banner {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: clamp(24px, 4vw, 48px);
    padding: clamp(24px, 4vw, 36px) clamp(20px, 4vw, 40px);
    background: linear-gradient(135deg, #ffffff 0%, #fafcff 100%);
    border: 1px solid rgba(14, 165, 233, 0.1);
    border-radius: 20px;
    box-shadow: 
        0 4px 6px -1px rgba(0, 0, 0, 0.03),
        inset 0 1px 0 rgba(255, 255, 255, 0.8);
    flex-wrap: wrap;
}

.pf-trust-item {
    display: flex;
    align-items: center;
    gap: 14px;
}

.pf-trust-icon {
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

.pf-trust-icon svg {
    width: 26px;
    height: 26px;
}

.pf-trust-green {
    background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%);
    color: #059669;
}

.pf-trust-blue {
    background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%);
    color: #2563eb;
}

.pf-trust-amber {
    background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%);
    color: #d97706;
}

.pf-trust-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.pf-trust-text strong {
    font: 700 clamp(15px, 1.6vw, 17px)/1.3 var(--ph-font);
    color: var(--ph-text);
}

.pf-trust-text span {
    font: 500 clamp(14.5px, 1.4vw, 15.5px)/1.4 var(--ph-font);
    color: #4c5f76;
}

.pf-trust-divider {
    width: 1px;
    height: 48px;
    background: linear-gradient(180deg, transparent 0%, var(--ph-border) 50%, transparent 100%);
}

@media (max-width: 900px) {
    .pf-trust-banner {
        flex-direction: column;
        gap: 20px;
        text-align: center;
    }
    
    .pf-trust-item {
        flex-direction: column;
        gap: 10px;
    }
    
    .pf-trust-text {
        align-items: center;
    }
    
    .pf-trust-divider {
        width: 80px;
        height: 1px;
        background: linear-gradient(90deg, transparent 0%, var(--ph-border) 50%, transparent 100%);
    }
}

/* Reduced Motion */
@media (prefers-reduced-motion: reduce) {
    .pf-card,
    .pf-item,
    .pf-item-icon,
    .ed-btn,
    .ed-btn svg,
    .ed-feature {
        transition: none;
    }
    
    .pf-card:hover,
    .pf-item:hover,
    .ed-btn:hover {
        transform: none;
    }
    
    .ed-btn:hover svg {
        transform: none;
    }
}

/* Employer Dashboard Panel */
.ed-panel {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0;
    max-width: 1200px;
    margin: 36px auto -28px;
    padding: 0;
    border-radius: 28px;
    overflow: hidden;
    border: 1px solid #dbe7f3;
    box-shadow: 0 30px 64px -48px rgba(12, 50, 80, 0.55);
}

.ed-panel-left {
    position: relative;
    padding: clamp(32px, 4vw, 48px);
    background: linear-gradient(150deg, #0c1e33 0%, #0e2b40 55%, #0c3038 100%);
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}

.ed-panel-left::before {
    content: "";
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        radial-gradient(46% 64% at 92% 4%, rgba(16, 185, 129, 0.18) 0%, transparent 70%),
        radial-gradient(40% 58% at 4% 96%, rgba(14, 165, 233, 0.14) 0%, transparent 70%);
}

.ed-panel-left > * {
    position: relative;
    z-index: 1;
}

.ed-badge {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 16px 7px 10px;
    background: rgba(52, 211, 153, 0.12);
    border: 1px solid rgba(52, 211, 153, 0.2);
    border-radius: 100px;
    font: 700 14px/1 var(--ph-font);
    color: #6ee7b7;
    width: fit-content;
}

.ed-badge svg {
    width: 16px;
    height: 16px;
    color: #34d399;
}

.ed-title {
    font: 800 clamp(24px, 3vw, 32px)/1.15 var(--ph-font);
    color: #f8fafc;
    letter-spacing: -0.02em;
    margin: 0;
    text-wrap: balance;
}

.ed-desc {
    font: 400 clamp(16px, 1.6vw, 17.5px)/1.7 var(--ph-font);
    color: #c6daea;
    margin: 0;
    max-width: 100%;
    text-wrap: pretty;
}

.ed-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 16px 30px;
    background: linear-gradient(135deg, #10b981 0%, #047857 100%);
    color: #ffffff;
    font: 700 16px/1 var(--ph-font);
    border-radius: 15px;
    text-decoration: none;
    border: none;
    cursor: pointer;
    transition: transform 0.2s ease-out, box-shadow 0.2s ease-out;
    width: fit-content;
    box-shadow: 0 16px 30px -14px rgba(16, 185, 129, 0.75);
    margin-top: 4px;
}

.ed-btn svg {
    width: 18px;
    height: 18px;
    transition: transform 0.2s ease-out;
}

.ed-btn:hover {
    color: #ffffff;
    box-shadow: 0 22px 38px -16px rgba(16, 185, 129, 0.85);
    transform: translateY(-2px);
}

.ed-btn:focus-visible {
    outline: 3px solid #7dd3fc;
    outline-offset: 3px;
}

.ed-btn:hover svg { transform: translateX(4px); }

.ed-panel-right {
    padding: clamp(28px, 3.5vw, 44px);
    background: #ffffff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    gap: 20px;
}

.ed-feature {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    padding: 16px 18px;
    border-radius: 16px;
    border: 1px solid transparent;
    transition: all 0.25s ease;
}

.ed-feature:hover {
    background: #f8fafc;
    border-color: #e2e8f0;
}

.ed-feature-icon {
    flex-shrink: 0;
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

.ed-feature-icon svg {
    width: 22px;
    height: 22px;
}

.ed-fi-blue { background: linear-gradient(135deg, #dbeafe 0%, #bfdbfe 100%); color: #2563eb; }
.ed-fi-blue svg { color: #2563eb; }
.ed-fi-emerald { background: linear-gradient(135deg, #d1fae5 0%, #a7f3d0 100%); color: #059669; }
.ed-fi-emerald svg { color: #059669; }
.ed-fi-amber { background: linear-gradient(135deg, #fef3c7 0%, #fde68a 100%); color: #d97706; }
.ed-fi-amber svg { color: #d97706; }
.ed-fi-violet { background: linear-gradient(135deg, #ede9fe 0%, #ddd6fe 100%); color: #7c3aed; }
.ed-fi-violet svg { color: #7c3aed; }

.ed-feature-text {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0;
}

.ed-feature-text strong {
    font: 700 clamp(15.5px, 1.5vw, 17px)/1.3 var(--ph-font);
    color: #0b1f33;
}

.ed-feature-text span {
    font: 400 clamp(14.5px, 1.4vw, 15.5px)/1.55 var(--ph-font);
    color: #44566c;
}

@media (max-width: 900px) {
    .ed-panel {
        grid-template-columns: 1fr;
    }
    
    .ed-panel-left {
        align-items: center;
        text-align: center;
        padding: 32px 24px;
    }
    
    .ed-title { font-size: 24px; }
    .ed-desc { max-width: 100%; font-size: 16px; }
    .ed-panel-right { padding: 24px 20px; }
    .ed-feature { padding: 14px 16px; }
    .ed-feature-icon { width: 40px; height: 40px; border-radius: 10px; }
    .ed-feature-icon svg { width: 20px; height: 20px; }
}

@media (max-width: 480px) {
    .ed-panel {
        margin-top: 32px;
        border-radius: 18px;
    }
    
    .ed-panel-left { padding: 28px 20px; gap: 16px; }
    .ed-title { font-size: 22px; }
    .ed-desc { font-size: 16px; }
    .ed-btn { font-size: 15.5px; padding: 15px 28px; }
    .ed-panel-right { padding: 20px 16px; }
    .ed-feature { padding: 12px 14px; gap: 12px; }
    .ed-feature-icon { width: 38px; height: 38px; }
    .ed-feature-text strong { font-size: 15px; }
    .ed-feature-text span { font-size: 14px; }
}

/* =====================
   CONTENT SECTION
   ===================== */
.ph-content {
    background: linear-gradient(180deg, #f0f7ff 0%, #f5f9fc 30%, #f8fafc 60%, #fafbfc 100%);
    padding: clamp(32px, 5vw, 50px) 0;
    position: relative;
}

.ph-content::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 200px;
    background: linear-gradient(180deg, rgba(14, 165, 233, 0.02) 0%, transparent 100%);
    pointer-events: none;
}

/* =====================
   COURSE INTRO SECTION - PREMIUM 2025
   ===================== */
.course-intro {
    background: #ffffff;
    border-radius: 28px;
    padding: clamp(40px, 5vw, 60px);
    margin-bottom: 24px;
    border: 1px solid #e2e8f0;
    box-shadow: 
        0 1px 3px rgba(0, 0, 0, 0.04),
        0 8px 32px rgba(0, 0, 0, 0.06);
}

/* Top Section */
.course-intro-top {
    text-align: center;
    margin-bottom: 40px;
}

.course-intro-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 28px;
    background: linear-gradient(145deg, #0ea5e9 0%, #0284c7 100%);
    color: #ffffff;
    font: 800 14px/1 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border-radius: 50px;
    margin-bottom: 28px;
    box-shadow: 0 6px 20px rgba(14, 165, 233, 0.4);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.15);
}

.course-intro-badge svg {
    width: 20px;
    height: 20px;
}

.course-intro-title {
    font: 800 clamp(30px, 3.5vw, 44px)/1.15 var(--ph-font);
    color: #0f172a;
    margin: 0 0 clamp(18px, 2.5vw, 28px);
    letter-spacing: -0.5px;
    text-wrap: balance;
}

.course-intro-subtitle {
    font: 500 clamp(18px, 2vw, 22px)/1.75 var(--ph-font);
    color: #334155;
    max-width: min(100%, var(--lead-measure, 1040px));
    margin: 0 auto;
    text-wrap: pretty;
}

/* Body Text */
.course-intro-body {
    max-width: 980px;
    margin: 0 auto 40px;
    text-align: center;
}

.course-intro-lead {
    font: 600 clamp(18px, 2vw, 21px)/1.75 var(--ph-font);
    color: #1e293b;
    margin: 0 0 20px;
    text-wrap: balance;
}

.course-intro-text {
    font: 500 clamp(16px, 1.7vw, 18px)/1.8 var(--ph-font);
    color: #475569;
    margin: 0 0 18px;
    text-wrap: pretty;
}

.course-intro-text:last-child {
    margin-bottom: 0;
}

/* Stats Cards */
.course-intro-stats {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin-bottom: 40px;
}

.course-stat {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 24px 28px;
    border-radius: 20px;
    transition: all 0.3s ease;
}

.course-stat:hover {
    transform: translateY(-4px);
}

.course-stat-time {
    background: linear-gradient(145deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid #93c5fd;
}
.course-stat-time:hover {
    box-shadow: 0 12px 32px rgba(59, 130, 246, 0.15);
}

.course-stat-cert {
    background: linear-gradient(145deg, #f0fdf4 0%, #dcfce7 100%);
    border: 1px solid #86efac;
}
.course-stat-cert:hover {
    box-shadow: 0 12px 32px rgba(34, 197, 94, 0.15);
}

.course-stat-device {
    background: linear-gradient(145deg, #f5f3ff 0%, #ede9fe 100%);
    border: 1px solid #c4b5fd;
}
.course-stat-device:hover {
    box-shadow: 0 12px 32px rgba(139, 92, 246, 0.15);
}

.course-stat-icon {
    flex-shrink: 0;
    width: 56px;
    height: 56px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06);
}

.course-stat-icon svg {
    width: 28px;
    height: 28px;
}

.course-stat-time .course-stat-icon svg { color: #2563eb; }
.course-stat-cert .course-stat-icon svg { color: #16a34a; }
.course-stat-device .course-stat-icon svg { color: #7c3aed; }

.course-stat-info {
    flex: 1;
}

.course-stat-value {
    display: block;
    font: 700 clamp(17px, 1.8vw, 20px)/1.3 var(--ph-font);
    color: #0f172a;
    margin-bottom: 4px;
}

.course-stat-label {
    display: block;
    font: 500 clamp(14px, 1.4vw, 16px)/1.4 var(--ph-font);
    color: #475569;
}

/* Features Section */
.course-intro-features {
    background: linear-gradient(145deg, #f8fafc 0%, #f1f5f9 100%);
    border: 1px solid #e2e8f0;
    border-radius: 24px;
    padding: clamp(32px, 4vw, 44px);
    margin-bottom: 32px;
}

.course-features-title {
    display: flex;
    align-items: center;
    gap: 14px;
    font: 700 clamp(20px, 2.2vw, 26px)/1.3 var(--ph-font);
    color: #0f172a;
    margin: 0 0 32px;
    padding-bottom: 24px;
    border-bottom: 2px solid #e2e8f0;
}

.course-features-title svg {
    flex-shrink: 0;
    width: 36px;
    height: 36px;
    color: #0ea5e9;
}

.course-features-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
}

.course-feature {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 18px 22px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 14px;
    transition: all 0.3s ease;
}

.course-feature:hover {
    border-color: #22c55e;
    box-shadow: 0 4px 16px rgba(34, 197, 94, 0.1);
    transform: translateX(4px);
}

.course-feature-check {
    flex-shrink: 0;
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #dcfce7 0%, #bbf7d0 100%);
    border-radius: 10px;
}

.course-feature-check svg {
    width: 18px;
    height: 18px;
    color: #15803d;
}

.course-feature span {
    font: 600 clamp(15px, 1.6vw, 17px)/1.4 var(--ph-font);
    color: #1e293b;
}

/* Trust Footer */
.course-intro-trust {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 24px;
    padding: 28px;
    background: linear-gradient(145deg, #f0fdf4 0%, #ecfdf5 100%);
    border: 1px solid #86efac;
    border-radius: 18px;
}

.course-trust-badges {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.course-trust-badge {
    padding: 10px 18px;
    font: 800 13px/1.4 var(--ph-font);
    border-radius: 8px;
    letter-spacing: 0.5px;
    text-align: center;
}

.course-trust-hsa {
    background: linear-gradient(145deg, #22c55e 0%, #16a34a 100%);
    color: #ffffff;
    box-shadow: 0 3px 10px rgba(34, 197, 94, 0.3);
}

.course-trust-qqi {
    background: linear-gradient(145deg, #2563eb 0%, #1d4ed8 100%);
    color: #ffffff;
    box-shadow: 0 3px 10px rgba(37, 99, 235, 0.3);
}

.course-trust-text {
    font: 600 clamp(15px, 1.6vw, 18px)/1.4 var(--ph-font);
    color: #166534;
}

/* Responsive */
@media (max-width: 900px) {
    .course-intro-stats {
        grid-template-columns: 1fr;
        gap: 16px;
    }
    
    .course-features-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .course-intro {
        padding: 32px 24px;
        border-radius: 22px;
    }
    
    .course-stat {
        padding: 20px 22px;
    }
    
    .course-intro-features {
        padding: 28px 22px;
    }
    
    .course-intro-trust {
        flex-direction: column;
        gap: 16px;
        text-align: center;
        padding: 24px 20px;
    }
}

/* Cards */
.ph-card {
    background: var(--ph-bg);
    border: 1px solid var(--ph-border);
    border-radius: var(--ph-radius);
    padding: clamp(28px, 4vw, 44px);
    box-shadow: var(--ph-shadow);
    margin-bottom: 28px;
}

.ph-card-badge {
    display: inline-flex;
    padding: 8px 16px;
    background: linear-gradient(135deg, var(--ph-primary) 0%, var(--ph-primary-dark) 100%);
    color: white;
    font: 700 13px/1 var(--ph-font);
    border-radius: 50px;
    margin-bottom: 20px;
    letter-spacing: 0.5px;
    text-transform: uppercase;
}

.ph-badge-teal {
    background: linear-gradient(135deg, #14b8a6 0%, #0d9488 100%);
}

.ph-badge-blue {
    background: linear-gradient(135deg, #3b82f6 0%, #2563eb 100%);
}

.ph-badge-green {
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
}

.ph-badge-orange {
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
}

.ph-card-title {
    font: 800 clamp(26px, 3vw, 34px)/1.25 var(--ph-font);
    color: var(--ph-text);
    margin: 0 0 20px;
    letter-spacing: -0.3px;
}

.ph-card-title-sm {
    font: 800 clamp(22px, 2.5vw, 28px)/1.25 var(--ph-font);
    color: var(--ph-text);
    margin: 0 0 16px;
    letter-spacing: -0.2px;
}

.ph-card-body p {
    font: 500 clamp(17px, 1.8vw, 19px)/1.85 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 0 0 18px;
}

.ph-card-body p:last-child {
    margin-bottom: 0;
}

.ph-card-body strong {
    color: var(--ph-text);
    font-weight: 700;
}

.ph-card-intro {
    font: 500 clamp(17px, 1.8vw, 19px)/1.8 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 0 0 20px;
}

.ph-card-note {
    font: 500 clamp(16px, 1.6vw, 18px)/1.8 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 28px 0 0;
    padding: 20px 24px;
    background: var(--ph-bg-soft);
    border-radius: var(--ph-radius-sm);
    border-left: 4px solid var(--ph-primary);
}

/* Highlight Box */
.ph-highlight-box {
    display: flex;
    gap: 16px;
    padding: 20px 24px;
    background: linear-gradient(135deg, #eff6ff 0%, #f0f9ff 100%);
    border: 1px solid #bfdbfe;
    border-radius: var(--ph-radius-sm);
    margin: 24px 0;
}

.ph-highlight-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: white;
    border-radius: 10px;
}

.ph-highlight-icon svg {
    width: 22px;
    height: 22px;
    color: var(--ph-primary);
}

.ph-highlight-box p {
    font: 600 clamp(16px, 1.6vw, 18px)/1.75 var(--ph-font);
    color: #1e40af;
    margin: 0;
}

.ph-highlight-box strong {
    color: #1e3a8a;
    font-weight: 700;
}

/* Checklist */
.ph-checklist {
    list-style: none;
    margin: 24px 0 0;
    padding: 0;
    display: grid;
    gap: 14px;
}

.ph-checklist li {
    display: flex;
    align-items: flex-start;
    gap: 14px;
    padding: 16px 18px;
    background: var(--ph-bg-soft);
    border: 1px solid var(--ph-border);
    border-radius: var(--ph-radius-sm);
    font: 600 clamp(16px, 1.6vw, 18px)/1.7 var(--ph-font);
    color: var(--ph-text);
}

.ph-checklist-compact li {
    padding: 12px 14px;
    font-size: clamp(15px, 1.5vw, 17px);
}

.ph-check {
    flex-shrink: 0;
    width: 24px;
    height: 24px;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 50%;
    position: relative;
    box-shadow: 0 0 0 4px rgba(16, 185, 129, 0.15);
}

.ph-check::after {
    content: '';
    position: absolute;
    top: 50%;
    left: 50%;
    width: 10px;
    height: 6px;
    border: 2px solid white;
    border-top: none;
    border-right: none;
    transform: translate(-50%, -60%) rotate(-45deg);
}

/* --- Intro: headline + at a glance --- */
/* At a glance panel */
/* --- Module track --- */
/* Final module - full width finish line */
/* --- Outcomes --- */
/* --- Closing CTA --- */
/* --- Responsive --- */
/* --- Intro: headline + at a glance --- */
/* At a glance panel */
/* --- Module track --- */
/* Final module - full width finish line */
/* --- Outcomes --- */
/* --- Closing CTA --- */
/* --- Responsive --- */
/* --- Intro: headline + at a glance --- */
/* At a glance panel */
/* --- Module track --- */
/* Final module - full width finish line */
/* --- Outcomes --- */
/* --- Closing CTA --- */
/* --- Responsive --- */
/* Two Column Layout (Legacy) */
.ph-two-col {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
    margin-bottom: 28px;
}

@media (max-width: 900px) {
    .ph-two-col {
        grid-template-columns: 1fr;
    }
}

/* Card with Icon */
.ph-card-icon {
    width: 64px;
    height: 64px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, var(--ph-primary) 0%, var(--ph-primary-dark) 100%);
    border-radius: 16px;
    margin-bottom: 20px;
}

.ph-card-icon svg {
    width: 32px;
    height: 32px;
    color: white;
}

/* =====================
   TARGET AUDIENCE SECTION - PREMIUM 2025
   ===================== */
.target-section {
    position: relative;
    background:
        radial-gradient(ellipse 55% 60% at 8% 0%, rgba(16, 185, 129, 0.055) 0%, transparent 62%),
        radial-gradient(ellipse 50% 55% at 94% 100%, rgba(59, 130, 246, 0.05) 0%, transparent 60%),
        linear-gradient(178deg, #ffffff 0%, #fbfdff 55%, #f7fafd 100%);
    border: 1px solid #e2ebf5;
    border-radius: 32px;
    padding: clamp(40px, 6vw, 68px) clamp(22px, 4.5vw, 60px);
    margin-bottom: 24px;
    box-shadow:
        0 1px 2px rgba(13, 42, 68, 0.04),
        0 12px 32px rgba(13, 42, 68, 0.05),
        0 32px 80px rgba(13, 42, 68, 0.06);
    overflow: hidden;
}

.target-section::before {
    content: '';
    position: absolute;
    top: 0;
    left: 8%;
    right: 8%;
    height: 1px;
    background: linear-gradient(90deg, transparent, rgba(13, 148, 136, 0.35) 30%, rgba(59, 130, 246, 0.3) 70%, transparent);
}

.target-section > * {
    position: relative;
}

/* Header */
.target-header {
    text-align: center;
    margin-bottom: clamp(34px, 5vw, 48px);
}

/* Shared badge identity: deep emerald green with gold accents. */
.target-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 11px 20px 11px 16px;
    border-radius: 999px;
    background: linear-gradient(140deg, #04352a 0%, #075e45 55%, #0b7d54 100%);
    border: 1px solid rgba(216, 181, 87, 0.65);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 1px 2px rgba(6, 63, 48, 0.25),
        0 14px 28px -18px rgba(6, 63, 48, 0.95);
    font: 700 14px/1 var(--ph-font);
    letter-spacing: 0.1em;
    text-transform: uppercase;
    color: #f8e7ab;
    margin-bottom: 22px;
}

.target-badge svg {
    width: 17px;
    height: 17px;
    color: #eccb62;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.target-title {
    font: 800 clamp(30px, 3.4vw, 42px)/1.14 var(--ph-font);
    color: #0b1f33;
    margin: 0 0 clamp(16px, 2.2vw, 22px);
    letter-spacing: -0.02em;
    text-wrap: balance;
}

.target-desc {
    font: 500 clamp(17px, 1.5vw, 19px)/1.75 var(--ph-font);
    color: #35465e;
    margin: 0 auto;
    max-width: min(100%, 980px);
    text-wrap: pretty;
}

/* Industry Grid */
.target-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 18px;
    margin-bottom: clamp(28px, 4vw, 40px);
}

.target-card {
    position: relative;
    background: #ffffff;
    border: 1px solid #e3ecf6;
    border-radius: 22px;
    padding: 30px 24px 28px;
    text-align: center;
    overflow: hidden;
    box-shadow: 0 1px 2px rgba(13, 42, 68, 0.04), 0 6px 18px rgba(13, 42, 68, 0.04);
    transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
}

.target-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 4px;
    background: linear-gradient(90deg, var(--tc-a), var(--tc-b));
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.35s ease;
}

.target-card:hover {
    transform: translateY(-5px);
    border-color: var(--tc-line);
    box-shadow: 0 2px 4px rgba(13, 42, 68, 0.04), 0 18px 44px var(--tc-glow);
}

.target-card:hover::before {
    transform: scaleX(1);
}

.target-card-icon {
    width: 68px;
    height: 68px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 20px;
    margin: 0 auto 18px;
    background: linear-gradient(150deg, var(--tc-bg1) 0%, var(--tc-bg2) 100%);
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.65), 0 6px 16px var(--tc-glow);
    transition: transform 0.25s ease;
}

.target-card:hover .target-card-icon {
    transform: scale(1.07);
}

.target-card-icon svg {
    width: 32px;
    height: 32px;
    color: var(--tc-ink);
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Color Variants */
.target-card-blue   { --tc-a: #3b82f6; --tc-b: #06b6d4; --tc-ink: #1d4ed8; --tc-bg1: #eff6ff; --tc-bg2: #dbeafe; --tc-line: #bedbff; --tc-glow: rgba(59, 130, 246, 0.14); }
.target-card-amber  { --tc-a: #f59e0b; --tc-b: #f97316; --tc-ink: #b45309; --tc-bg1: #fffbeb; --tc-bg2: #fef3c7; --tc-line: #fde68a; --tc-glow: rgba(217, 119, 6, 0.14); }
.target-card-rose   { --tc-a: #ec4899; --tc-b: #f43f5e; --tc-ink: #be185d; --tc-bg1: #fdf2f8; --tc-bg2: #fce7f3; --tc-line: #f9c6dd; --tc-glow: rgba(219, 39, 119, 0.14); }
.target-card-violet { --tc-a: #8b5cf6; --tc-b: #6366f1; --tc-ink: #6d28d9; --tc-bg1: #f5f3ff; --tc-bg2: #ede9fe; --tc-line: #d8ccfa; --tc-glow: rgba(124, 58, 237, 0.14); }
.target-card-teal   { --tc-a: #14b8a6; --tc-b: #0ea5e9; --tc-ink: #0f766e; --tc-bg1: #f0fdfa; --tc-bg2: #ccfbf1; --tc-line: #a8ebdd; --tc-glow: rgba(13, 148, 136, 0.14); }
.target-card-green  { --tc-a: #22c55e; --tc-b: #10b981; --tc-ink: #15803d; --tc-bg1: #f0fdf4; --tc-bg2: #dcfce7; --tc-line: #b5ecc8; --tc-glow: rgba(22, 163, 74, 0.14); }

.target-card-title {
    font: 700 clamp(18px, 1.7vw, 20px)/1.3 var(--ph-font);
    color: #0b1f33;
    letter-spacing: -0.01em;
    margin: 0 0 8px;
    text-wrap: balance;
}

.target-card-desc {
    font: 500 clamp(15px, 1.3vw, 16px)/1.6 var(--ph-font);
    color: #44566c;
    margin: 0;
    text-wrap: pretty;
}

/* Bottom Stats */
.target-stats {
    box-sizing: border-box;
    display: flex;
    align-items: stretch;
    gap: 14px;
    padding: 14px;
    background: linear-gradient(135deg, #f0faf5 0%, #eef5fd 100%);
    border: 1px solid #dbe9f3;
    border-radius: 24px;
    max-width: 100%;
}

.target-stat {
    box-sizing: border-box;
    display: flex;
    align-items: center;
    gap: 15px;
    flex: 1;
    min-width: 0;
    padding: 16px 20px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid #e3edf6;
    border-radius: 16px;
    box-shadow: 0 1px 2px rgba(13, 42, 68, 0.04);
    transition: transform 0.25s ease, box-shadow 0.25s ease;
}

.target-stat:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 28px rgba(13, 42, 68, 0.08);
}

.target-stat-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 15px;
}

.target-stat-icon svg {
    width: 25px;
    height: 25px;
    color: #ffffff;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.target-stat-green {
    background: linear-gradient(140deg, #34d399 0%, #059669 100%);
    box-shadow: 0 6px 14px rgba(16, 185, 129, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.target-stat-blue {
    background: linear-gradient(140deg, #38bdf8 0%, #0369a1 100%);
    box-shadow: 0 6px 14px rgba(14, 165, 233, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.target-stat-violet {
    background: linear-gradient(140deg, #a78bfa 0%, #6d28d9 100%);
    box-shadow: 0 6px 14px rgba(139, 92, 246, 0.3), inset 0 1px 0 rgba(255, 255, 255, 0.28);
}

.target-stat-content {
    flex: 1;
    min-width: 0;
}

.target-stat-title {
    display: block;
    font: 700 clamp(16px, 1.5vw, 17.5px)/1.3 var(--ph-font);
    color: #0b1f33;
    margin-bottom: 3px;
}

.target-stat-desc {
    display: block;
    font: 500 clamp(14px, 1.3vw, 15.5px)/1.45 var(--ph-font);
    color: #4c5f76;
}

@media (prefers-reduced-motion: reduce) {
    .target-card,
    .target-card::before,
    .target-card-icon,
    .target-stat {
        transition: none;
    }
    .target-card:hover,
    .target-stat:hover {
        transform: none;
    }
    .target-card:hover .target-card-icon {
        transform: none;
    }
}

/* =====================
   CERTIFICATION EXAM - PREMIUM 2025
   ===================== */
.cert-exam {
    background: linear-gradient(160deg, #ffffff 0%, #f0fdf4 40%, #ecfdf5 100%);
    border-radius: 28px;
    padding: clamp(36px, 5vw, 56px);
    margin-bottom: 24px;
    border: 1px solid rgba(34, 197, 94, 0.12);
    box-shadow: 
        0 1px 2px rgba(0, 0, 0, 0.02),
        0 4px 16px rgba(34, 197, 94, 0.06),
        0 16px 48px rgba(34, 197, 94, 0.04);
    position: relative;
    overflow: hidden;
}

.cert-exam::before {
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 400px;
    height: 400px;
    background: radial-gradient(circle, rgba(34, 197, 94, 0.06) 0%, transparent 70%);
    pointer-events: none;
}

/* Header */
.cert-exam-header {
    display: flex;
    align-items: flex-start;
    gap: clamp(20px, 3vw, 32px);
    margin-bottom: clamp(32px, 4vw, 48px);
    position: relative;
}

.cert-exam-icon-wrap {
    flex-shrink: 0;
}

.cert-exam-icon {
    width: 72px;
    height: 72px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(145deg, #22c55e 0%, #15803d 100%);
    border-radius: 20px;
    box-shadow: 
        0 4px 12px rgba(34, 197, 94, 0.35),
        0 8px 24px rgba(34, 197, 94, 0.2);
}

.cert-exam-icon svg {
    width: 36px;
    height: 36px;
    color: #ffffff;
}

.cert-exam-header-text {
    flex: 1;
}

.cert-exam-label {
    display: inline-block;
    font: 700 14px/1 var(--ph-font);
    color: #f8e7ab;
    text-transform: uppercase;
    letter-spacing: 0.1em;
    margin-bottom: 14px;
    padding: 11px 20px;
    background: linear-gradient(140deg, #04352a 0%, #075e45 55%, #0b7d54 100%);
    border: 1px solid rgba(216, 181, 87, 0.65);
    border-radius: 999px;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.14),
        0 1px 2px rgba(6, 63, 48, 0.25),
        0 14px 28px -18px rgba(6, 63, 48, 0.95);
}

.cert-exam-title {
    font: 800 clamp(26px, 3vw, 38px)/1.15 var(--ph-font);
    color: #0f172a;
    margin: 0 0 clamp(16px, 2vw, 24px);
    letter-spacing: -0.5px;
    text-wrap: balance;
}

.cert-exam-desc {
    font: 500 clamp(16px, 1.7vw, 18px)/1.75 var(--ph-font);
    color: #475569;
    margin: 0;
    max-width: 960px;
    text-wrap: pretty;
}

/* Main Stats */
.cert-exam-stats {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 20px;
    margin-bottom: 28px;
}

.cert-exam-stat {
    display: flex;
    align-items: center;
    gap: clamp(16px, 2vw, 24px);
    padding: clamp(24px, 3vw, 32px);
    border-radius: 20px;
    transition: all 0.3s ease;
}

.cert-exam-stat:hover {
    transform: translateY(-3px);
}

.cert-exam-stat-primary {
    background: linear-gradient(145deg, #eff6ff 0%, #dbeafe 100%);
    border: 1px solid rgba(59, 130, 246, 0.2);
    box-shadow: 0 4px 20px rgba(59, 130, 246, 0.1);
}

.cert-exam-stat-primary:hover {
    box-shadow: 0 8px 32px rgba(59, 130, 246, 0.15);
}

.cert-exam-stat-success {
    background: linear-gradient(145deg, #f0fdf4 0%, #dcfce7 100%);
    border: 1px solid rgba(34, 197, 94, 0.2);
    box-shadow: 0 4px 20px rgba(34, 197, 94, 0.1);
}

.cert-exam-stat-success:hover {
    box-shadow: 0 8px 32px rgba(34, 197, 94, 0.15);
}

.cert-exam-stat-visual {
    flex-shrink: 0;
    text-align: center;
    min-width: 100px;
}

.cert-exam-stat-big {
    display: block;
    font: 800 clamp(42px, 5vw, 56px)/1 var(--ph-font);
    letter-spacing: -2px;
}

.cert-exam-stat-primary .cert-exam-stat-big {
    color: #1d4ed8;
}

.cert-exam-stat-success .cert-exam-stat-big {
    color: #15803d;
}

.cert-exam-stat-unit {
    display: block;
    font: 600 clamp(14px, 1.4vw, 15px)/1 var(--ph-font);
    margin-top: 6px;
}

.cert-exam-stat-primary .cert-exam-stat-unit {
    color: #2563eb;
}

.cert-exam-stat-success .cert-exam-stat-unit {
    color: #16a34a;
}

.cert-exam-stat-info {
    flex: 1;
}

.cert-exam-stat-info strong {
    display: block;
    font: 700 clamp(16px, 1.7vw, 19px)/1.3 var(--ph-font);
    color: #0f172a;
    margin-bottom: 6px;
}

.cert-exam-stat-info p {
    font: 500 clamp(14px, 1.5vw, 16px)/1.55 var(--ph-font);
    color: #475569;
    margin: 0;
}

/* Benefits Row */
.cert-exam-benefits {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 16px;
    margin-bottom: 28px;
}

.cert-exam-benefit {
    display: flex;
    align-items: center;
    gap: 14px;
    padding: 18px 20px;
    background: #ffffff;
    border: 1px solid #e2e8f0;
    border-radius: 16px;
    transition: all 0.3s ease;
}

.cert-exam-benefit:hover {
    border-color: #cbd5e1;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.06);
    transform: translateY(-2px);
}

.cert-exam-benefit-icon {
    flex-shrink: 0;
    width: 46px;
    height: 46px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 12px;
}

.cert-exam-benefit-icon svg {
    width: 22px;
    height: 22px;
}

.cert-benefit-teal {
    background: linear-gradient(145deg, #ccfbf1 0%, #99f6e4 100%);
}
.cert-benefit-teal svg { color: #0d9488; }

.cert-benefit-blue {
    background: linear-gradient(145deg, #dbeafe 0%, #bfdbfe 100%);
}
.cert-benefit-blue svg { color: #2563eb; }

.cert-benefit-violet {
    background: linear-gradient(145deg, #ede9fe 0%, #ddd6fe 100%);
}
.cert-benefit-violet svg { color: #7c3aed; }

.cert-exam-benefit-text {
    flex: 1;
    min-width: 0;
}

.cert-exam-benefit-text strong {
    display: block;
    font: 700 clamp(15px, 1.5vw, 16.5px)/1.3 var(--ph-font);
    color: #0f172a;
    margin-bottom: 3px;
}

.cert-exam-benefit-text span {
    display: block;
    font: 500 clamp(14px, 1.3vw, 15px)/1.45 var(--ph-font);
    color: #4a5b74;
}

/* Success Banner */
.cert-exam-success {
    position: relative;
    padding: 24px 28px;
    background: linear-gradient(145deg, #22c55e 0%, #16a34a 100%);
    border-radius: 18px;
    overflow: hidden;
}

.cert-exam-success-glow {
    position: absolute;
    top: -50%;
    right: -10%;
    width: 200px;
    height: 200px;
    background: radial-gradient(circle, rgba(255, 255, 255, 0.2) 0%, transparent 70%);
    pointer-events: none;
}

.cert-exam-success-content {
    display: flex;
    align-items: center;
    gap: 18px;
    position: relative;
    z-index: 1;
}

.cert-exam-success-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.2);
    border-radius: 14px;
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
}

.cert-exam-success-icon svg {
    width: 28px;
    height: 28px;
    color: #ffffff;
}

.cert-exam-success-text {
    flex: 1;
}

.cert-exam-success-text strong {
    display: block;
    font: 700 clamp(17px, 1.8vw, 20px)/1.3 var(--ph-font);
    color: #ffffff;
    margin-bottom: 4px;
}

.cert-exam-success-text span {
    display: block;
    font: 500 clamp(14px, 1.5vw, 16px)/1.5 var(--ph-font);
    color: rgba(255, 255, 255, 0.9);
}

/* Responsive */
@media (max-width: 900px) {
    .cert-exam-stats {
        grid-template-columns: 1fr;
    }
    
    .cert-exam-benefits {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .cert-exam {
        padding: 28px 22px;
        border-radius: 22px;
    }
    
    .cert-exam-header {
        flex-direction: column;
        gap: 16px;
    }
    
    .cert-exam-icon {
        width: 60px;
        height: 60px;
        border-radius: 16px;
    }
    
    .cert-exam-icon svg {
        width: 30px;
        height: 30px;
    }
    
    .cert-exam-stat {
        flex-direction: column;
        text-align: center;
        padding: 24px 20px;
    }
    
    .cert-exam-stat-visual {
        min-width: auto;
    }
    
    .cert-exam-stat-info {
        text-align: center;
    }
    
    .cert-exam-success-content {
        flex-direction: column;
        text-align: center;
        gap: 14px;
    }
}

/* =====================
   VIDEO/PRACTICAL SECTION - PREMIUM 2025
   ===================== */
.video-section {
    background: linear-gradient(135deg, #fffbeb 0%, #fef9c3 30%, #fefce8 100%);
    border-radius: 24px;
    padding: clamp(32px, 5vw, 48px);
    margin-bottom: 48px;
    border: 1px solid rgba(251, 191, 36, 0.3);
    box-shadow: 
        0 1px 3px rgba(0, 0, 0, 0.02),
        0 8px 24px rgba(245, 158, 11, 0.08);
}

.video-top {
    text-align: center;
    margin-bottom: clamp(32px, 5vw, 40px);
}

.video-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 12px 24px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #ffffff;
    font: 700 14px/1 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border-radius: 50px;
    margin-bottom: 24px;
    box-shadow: 0 4px 14px rgba(245, 158, 11, 0.4);
}

.video-badge svg {
    width: 18px;
    height: 18px;
}

.video-title {
    font: 800 clamp(28px, 3.2vw, 40px)/1.2 var(--ph-font);
    color: #0f172a;
    margin: 0 0 14px;
    letter-spacing: -0.5px;
}

.video-subtitle {
    font: 500 clamp(17px, 1.8vw, 20px)/1.6 var(--ph-font);
    color: #57534e;
    margin: 0;
}

.video-note {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 16px;
    padding: 12px 20px;
    background: linear-gradient(145deg, #ffffff 0%, #eff6ff 100%);
    border: 1px solid #60a5fa;
    border-radius: 12px;
    font: 600 clamp(14px, 1.5vw, 15px)/1.5 var(--ph-font);
    color: #1e40af;
}

/* Timeline Steps */
.video-timeline {
    max-width: 700px;
    margin: 0 auto 32px;
}

.video-step {
    display: flex;
    gap: 20px;
    position: relative;
}

.video-step-marker {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
}

.video-step-marker span {
    width: 44px;
    height: 44px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: #ffffff;
    font: 800 17px/1 var(--ph-font);
    border-radius: 50%;
    box-shadow: 0 4px 12px rgba(245, 158, 11, 0.4);
    position: relative;
    z-index: 1;
}

.video-step-marker span svg {
    width: 20px;
    height: 20px;
}

.video-step-line {
    width: 3px;
    flex: 1;
    min-height: 30px;
    background: linear-gradient(180deg, #f59e0b 0%, #fbbf24 100%);
    margin: 8px 0;
    border-radius: 2px;
}

.video-step-last .video-step-line {
    display: none;
}

.video-step-last .video-step-marker span {
    background: linear-gradient(135deg, #22c55e 0%, #15803d 100%);
    box-shadow: 0 4px 12px rgba(34, 197, 94, 0.4);
}

.video-step-content {
    display: flex;
    gap: 16px;
    padding-bottom: 28px;
    flex: 1;
}

.video-step-last .video-step-content {
    padding-bottom: 0;
}

.video-step-icon {
    flex-shrink: 0;
    width: 52px;
    height: 52px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(251, 191, 36, 0.35);
    border-radius: 14px;
    box-shadow: 0 2px 8px rgba(245, 158, 11, 0.1);
}

.video-step-icon svg {
    width: 26px;
    height: 26px;
    color: #b45309;
}

.video-step-icon-success {
    background: rgba(34, 197, 94, 0.12);
    border-color: rgba(34, 197, 94, 0.35);
}

.video-step-icon-success svg {
    color: #15803d;
}

.video-step-text {
    flex: 1;
}

.video-step-text strong {
    display: block;
    font: 700 clamp(17px, 1.8vw, 20px)/1.35 var(--ph-font);
    color: #0f172a;
    margin-bottom: 8px;
}

.video-step-text p {
    font: 500 clamp(15px, 1.6vw, 17px)/1.65 var(--ph-font);
    color: #44403c;
    margin: 0;
}

/* Info Row */
.video-info-row {
    display: flex;
    justify-content: center;
    gap: 16px;
    flex-wrap: wrap;
}

.video-info-card {
    display: flex;
    align-items: center;
    gap: 12px;
    padding: 16px 26px;
    background: rgba(255, 255, 255, 0.92);
    border: 1px solid rgba(251, 191, 36, 0.35);
    border-radius: 50px;
    transition: all 0.3s ease;
}

.video-info-card:hover {
    background: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 16px rgba(245, 158, 11, 0.18);
}

.video-info-card svg {
    width: 22px;
    height: 22px;
    color: #b45309;
}

.video-info-card span {
    font: 600 15px/1 var(--ph-font);
    color: #78350f;
}

@media (max-width: 768px) {
    .video-step-content {
        flex-direction: column;
        gap: 12px;
    }
    
    .video-step-icon {
        width: 48px;
        height: 48px;
    }
    
    .video-step-text strong {
        font-size: 17px;
    }
    
    .video-step-text p {
        font-size: 15px;
    }
    
    .video-info-row {
        flex-direction: column;
        align-items: center;
    }
    
    .video-info-card {
        width: 100%;
        max-width: 300px;
        justify-content: center;
    }
}

@media (max-width: 480px) {
    .video-section {
        padding: 24px 16px;
        border-radius: 18px;
    }
    
    .video-top {
        margin-bottom: 24px;
    }
    
    .video-badge {
        padding: 8px 18px;
        font-size: 14px;
    }
    
    .video-title {
        font-size: 22px;
    }
    
    .video-desc {
        font-size: 15px;
    }
    
    .video-step {
        gap: 12px;
    }
    
    .video-step-marker span {
        width: 36px;
        height: 36px;
        font-size: 14px;
    }
    
    .video-step-text strong {
        font-size: 15px;
    }
    
    .video-step-text p {
        font-size: 14px;
        color: #44403c;
    }
    
    .video-info-card {
        padding: 12px 16px;
        font-size: 14px;
    }
}


/* Target Section Responsive */
@media (max-width: 1024px) {
    .target-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}

@media (max-width: 768px) {
    .target-section {
        padding: 34px 20px;
        border-radius: 24px;
    }
    
    .target-header {
        margin-bottom: 30px;
    }
    
    .target-title {
        font-size: 27px;
        line-height: 1.2;
    }
    
    .target-desc {
        font-size: 16.5px;
    }
    
    .target-grid {
        grid-template-columns: 1fr;
        gap: 14px;
    }
    
    .target-card {
        padding: 24px 20px;
    }
    
    .target-card-icon {
        width: 60px;
        height: 60px;
        border-radius: 18px;
        margin-bottom: 15px;
    }
    
    .target-card-icon svg {
        width: 29px;
        height: 29px;
    }
    
    .target-card-title {
        font-size: 17.5px;
    }
    
    .target-card-desc {
        font-size: 15.5px;
    }
    
    .target-stats {
        flex-direction: column;
        gap: 10px;
        padding: 12px;
        border-radius: 20px;
    }
    
    .target-stat {
        width: 100%;
        padding: 14px 16px;
    }
    
    .target-stat-icon {
        width: 48px;
        height: 48px;
    }
    
    .target-stat-title {
        font-size: 16px;
    }
    
    .target-stat-desc {
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    .target-section {
        padding: 28px 16px;
        border-radius: 20px;
    }
    
    .target-title {
        font-size: 24px;
    }
    
    .target-card {
        padding: 22px 18px;
        border-radius: 18px;
    }
    
    .target-card-icon {
        width: 54px;
        height: 54px;
        border-radius: 16px;
    }
    
    .target-card-icon svg {
        width: 26px;
        height: 26px;
    }
}

/* Industry Grid (Legacy) */
.ph-industry-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 16px;
    margin-top: 28px;
}

.ph-industry {
    display: flex;
    flex-direction: column;
    padding: 20px;
    background: var(--ph-bg-soft);
    border: 1px solid var(--ph-border);
    border-radius: var(--ph-radius-sm);
    text-align: center;
    transition: all 0.25s ease;
}

.ph-industry:hover {
    background: var(--ph-bg);
    box-shadow: var(--ph-shadow);
    transform: translateY(-2px);
}

.ph-industry-icon {
    font-size: 32px;
    margin-bottom: 12px;
}

.ph-industry strong {
    font: 700 16px/1.3 var(--ph-font);
    color: var(--ph-text);
    margin-bottom: 4px;
}

.ph-industry span {
    font: 500 14px/1.4 var(--ph-font);
    color: var(--ph-text-muted);
}

/* Assessment Info */
.ph-assessment-info {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 20px;
    margin: 28px 0;
}

@media (max-width: 768px) {
    .ph-assessment-info {
        grid-template-columns: 1fr;
    }
}

.ph-assessment-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px;
    background: var(--ph-bg-soft);
    border: 1px solid var(--ph-border);
    border-radius: var(--ph-radius-sm);
}

.ph-assessment-number {
    font: 800 clamp(28px, 3vw, 36px)/1 var(--ph-font);
    color: var(--ph-primary);
    min-width: 60px;
    text-align: center;
}

.ph-assessment-text {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ph-assessment-text strong {
    font: 700 16px/1.3 var(--ph-font);
    color: var(--ph-text);
}

.ph-assessment-text span {
    font: 500 14px/1.4 var(--ph-font);
    color: var(--ph-text-muted);
}

/* Practical Section */
.ph-card-practical {
    background: linear-gradient(135deg, #fffbeb 0%, #fef3c7 30%, #fff7ed 100%);
    border-color: #fcd34d;
}

.ph-practical-header {
    margin-bottom: 32px;
}

.ph-steps-title {
    font: 700 clamp(18px, 2vw, 22px)/1.3 var(--ph-font);
    color: var(--ph-text);
    margin: 0 0 24px;
}

.ph-steps {
    display: grid;
    gap: 20px;
}

.ph-step {
    display: flex;
    gap: 18px;
    padding: 24px;
    background: rgba(255, 255, 255, 0.8);
    border: 1px solid rgba(251, 191, 36, 0.3);
    border-radius: var(--ph-radius-sm);
}

.ph-step-number {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    color: white;
    font: 800 18px/1 var(--ph-font);
    border-radius: 12px;
}

.ph-step-content {
    flex: 1;
}

.ph-step-content strong {
    display: block;
    font: 700 clamp(17px, 1.8vw, 19px)/1.3 var(--ph-font);
    color: var(--ph-text);
    margin-bottom: 8px;
}

.ph-step-content p {
    font: 500 clamp(16px, 1.6vw, 18px)/1.75 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 0;
}

.ph-step-content ul {
    margin: 12px 0 0;
    padding-left: 20px;
}

.ph-step-content li {
    font: 500 clamp(15px, 1.5vw, 17px)/1.7 var(--ph-font);
    color: var(--ph-text-secondary);
    margin-bottom: 6px;
}

.ph-muted {
    color: var(--ph-text-muted);
}

.ph-practical-note {
    display: flex;
    gap: 16px;
    padding: 20px 24px;
    background: rgba(255, 255, 255, 0.9);
    border: 1px solid rgba(16, 185, 129, 0.3);
    border-radius: var(--ph-radius-sm);
    margin-top: 28px;
}

.ph-note-icon {
    flex-shrink: 0;
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background: linear-gradient(135deg, #10b981 0%, #059669 100%);
    border-radius: 10px;
}

.ph-note-icon svg {
    width: 22px;
    height: 22px;
    color: white;
}

.ph-practical-note p {
    font: 500 clamp(16px, 1.6vw, 18px)/1.75 var(--ph-font);
    color: var(--ph-text-secondary);
    margin: 0;
}

.ph-success-note {
    font: 600 clamp(16px, 1.6vw, 18px)/1.8 var(--ph-font);
    color: #92400e;
    margin: 24px 0 0;
    padding: 16px 20px;
    background: rgba(251, 191, 36, 0.15);
    border-radius: var(--ph-radius-sm);
    text-align: center;
}

/* =====================
   CERTIFICATE SECTION V2
   ===================== */
.certv2 {
    background:
        linear-gradient(168deg, #ffffff 0%, #fffcf5 25%, #fdf8eb 50%, #faf3e0 80%, #f7edd5 100%);
    border-radius: 28px;
    padding: clamp(36px, 5vw, 56px);
    margin-bottom: 48px;
    border: 1px solid rgba(195, 160, 50, 0.14);
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.02),
        0 4px 12px rgba(180, 150, 50, 0.06),
        0 12px 36px rgba(170, 140, 40, 0.05),
        0 24px 64px rgba(160, 130, 30, 0.03);
    position: relative;
    overflow: hidden;
}

.certv2::before {
    content: '';
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 60% 50% at 10% 15%, rgba(218, 185, 70, 0.08) 0%, transparent 70%),
        radial-gradient(ellipse 50% 60% at 90% 85%, rgba(195, 155, 45, 0.06) 0%, transparent 70%),
        radial-gradient(circle at 50% 0%, rgba(255, 248, 225, 0.5) 0%, transparent 40%);
    pointer-events: none;
}

.certv2::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: 1px;
    background: linear-gradient(90deg, transparent 5%, rgba(210, 175, 60, 0.25) 30%, rgba(230, 200, 90, 0.35) 50%, rgba(210, 175, 60, 0.25) 70%, transparent 95%);
    pointer-events: none;
}

/* Header - Centered */
.certv2-top {
    text-align: center;
    margin-bottom: clamp(32px, 4vw, 48px);
    position: relative;
}

.certv2-label {
    display: inline-block;
    font: 700 14px/1 var(--ph-font);
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 1.8px;
    margin-bottom: 18px;
    padding: 11px 26px;
    background: linear-gradient(135deg, #9a7518, #b8922a, #d4ad38, #c9a22a, #a88020);
    border-radius: 50px;
    box-shadow:
        0 2px 6px rgba(170, 130, 30, 0.3),
        0 6px 20px rgba(170, 130, 30, 0.15),
        inset 0 1px 0 rgba(255, 255, 255, 0.3),
        inset 0 -1px 0 rgba(0, 0, 0, 0.06);
    position: relative;
    overflow: hidden;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.12);
}

.certv2-label::after {
    content: '';
    position: absolute;
    top: 0;
    left: -100%;
    width: 50%;
    height: 100%;
    background: linear-gradient(
        105deg,
        transparent 30%,
        rgba(255, 255, 255, 0.45) 50%,
        transparent 70%
    );
    animation: certv2Shimmer 7s ease-in-out infinite;
}

@keyframes certv2Shimmer {
    0%, 80% { left: -100%; }
    100% { left: 200%; }
}

.certv2-title {
    font: 800 clamp(26px, 3vw, 38px)/1.2 var(--ph-font);
    color: #1c1608;
    margin: 0 0 clamp(18px, 2.5vw, 28px);
    letter-spacing: -0.5px;
    text-wrap: balance;
}

.certv2-desc {
    font: 500 clamp(17px, 1.8vw, 20px)/1.75 var(--ph-font);
    color: #3d3520;
    margin: 0 auto;
    max-width: min(100%, var(--lead-measure, 1040px));
    text-wrap: pretty;
}

/* Features Grid */
.certv2-features {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 16px;
    margin-top: clamp(32px, 4vw, 44px);
}

.certv2-feat {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 20px 22px;
    background: rgba(255, 255, 255, 0.92);
    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);
    border: 1px solid rgba(210, 180, 80, 0.12);
    border-radius: 16px;
    box-shadow: 0 2px 8px rgba(180, 150, 50, 0.04);
    transition: all 0.25s ease;
}

.certv2-feat:hover {
    background: rgba(255, 255, 255, 1);
    border-color: rgba(210, 180, 80, 0.2);
    box-shadow: 0 4px 20px rgba(180, 150, 50, 0.1);
    transform: translateY(-2px);
}

.certv2-feat-icon {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.certv2-feat-icon svg {
    width: 22px;
    height: 22px;
}

.certv2-feat-icon--blue { background: linear-gradient(145deg, #e8f0fe, #d4e4fd); color: #2558b8; }
.certv2-feat-icon--green { background: linear-gradient(145deg, #dcf5e8, #bbedd5); color: #0a7b52; }
.certv2-feat-icon--purple { background: linear-gradient(145deg, #eeebfd, #dfd9fb); color: #5b30c5; }
.certv2-feat-icon--amber { background: linear-gradient(145deg, #fdf0c8, #fbe4a0); color: #a5600e; }

.certv2-feat-text {
    display: flex;
    flex-direction: column;
    gap: 3px;
    min-width: 0;
}

.certv2-feat-text strong {
    font: 700 17px/1.25 var(--ph-font);
    color: #1a1206;
}

.certv2-feat-text span {
    font: 500 15px/1.45 var(--ph-font);
    color: #3d3225;
}

/* Certificate Image */
.certv2-showcase {
    position: relative;
    z-index: 1;
    max-width: 860px;
    margin: 0 auto;
}

.certv2-frame {
    position: relative;
    background: #ffffff;
    border-radius: 20px;
    padding: clamp(12px, 2vw, 22px);
    box-shadow:
        0 1px 3px rgba(0, 0, 0, 0.03),
        0 6px 20px rgba(180, 150, 50, 0.08),
        0 16px 48px rgba(170, 140, 40, 0.06);
    border: 1px solid rgba(200, 170, 60, 0.15);
}

.certv2-frame::before {
    content: '';
    position: absolute;
    inset: -3px;
    background: linear-gradient(150deg, rgba(218, 185, 70, 0.2) 0%, rgba(200, 165, 50, 0.14) 40%, rgba(180, 145, 35, 0.08) 100%);
    border-radius: 23px;
    z-index: -1;
}

.certv2-frame img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 14px;
}

/* Floating Accreditation Pills: both carry the gold ring of the
   site identity, CPD in deep Irish emerald with a gold medallion,
   RoSPA in its own recognisable red, refined to match. */
.certv2-pill {
    position: absolute;
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 14px 26px 14px 14px;
    color: #ffffff;
    font: 700 16px/1 var(--ph-font);
    letter-spacing: 0.02em;
    border-radius: 100px;
    white-space: nowrap;
    z-index: 3;
    animation: certv2Float 5s ease-in-out infinite;
}

.certv2-pill svg {
    width: 18px;
    height: 18px;
    padding: 9px;
    background: rgba(255, 255, 255, 0.97);
    border-radius: 50%;
    box-sizing: content-box;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.12);
}

.certv2-pill-qqi,
.certv2-pill-cpd {
    top: 20px;
    right: -20px;
    background: linear-gradient(140deg, #04352a 0%, #075e45 55%, #0b7d54 100%);
    border: 1px solid rgba(216, 181, 87, 0.65);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.16),
        0 4px 12px rgba(4, 53, 42, 0.35),
        0 14px 32px -12px rgba(4, 53, 42, 0.6);
}

.certv2-pill-qqi,
.certv2-pill-cpd svg {
    background: linear-gradient(140deg, #f0d98e 0%, #d9b23e 100%);
    color: #04352a;
    stroke: #04352a;
    box-shadow: 0 2px 8px rgba(122, 89, 12, 0.4);
}

.certv2-pill-rospa {
    bottom: 28px;
    left: -20px;
    background: linear-gradient(140deg, #dc2626 0%, #b91c1c 55%, #7f1d1d 100%);
    border: 1px solid rgba(216, 181, 87, 0.55);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, 0.2),
        0 4px 12px rgba(153, 27, 27, 0.35),
        0 14px 32px -12px rgba(153, 27, 27, 0.6);
    animation-delay: 0.8s;
}

.certv2-pill-rospa svg { color: #b91c1c; stroke: #b91c1c; }

@keyframes certv2Float {
    0%, 100% { transform: translateY(0); }
    50% { transform: translateY(-5px); }
}

/* Responsive */
@media (max-width: 768px) {
    .certv2 { padding: 32px 22px; border-radius: 22px; }
    .certv2-features { grid-template-columns: 1fr 1fr; gap: 12px; }
    .certv2-feat { padding: 16px 18px; }
    .certv2-feat-icon { width: 42px; height: 42px; border-radius: 12px; }
    .certv2-feat-icon svg { width: 20px; height: 20px; }
    .certv2-frame { padding: 12px; border-radius: 18px; }
    .certv2-frame::before { border-radius: 21px; }
    .certv2-frame img { border-radius: 12px; }
    .certv2-pill { font-size: 15px; padding: 12px 22px 12px 12px; gap: 10px; }
    .certv2-pill svg { width: 16px; height: 16px; padding: 8px; }
    .certv2-pill-qqi,
.certv2-pill-cpd { top: 12px; right: -12px; }
    .certv2-pill-rospa { bottom: 16px; left: -12px; }
}

@media (max-width: 480px) {
    .certv2 { padding: 24px 20px; border-radius: 20px; }
    .certv2-title { font-size: clamp(22px, 5.5vw, 28px); }
    .certv2-desc { font-size: 16px; }
    .certv2-features { grid-template-columns: 1fr; gap: 10px; margin-bottom: 24px; }
    .certv2-feat { padding: 14px 16px; border-radius: 14px; }
    .certv2-feat-icon { width: 40px; height: 40px; border-radius: 10px; }
    .certv2-feat-icon svg { width: 18px; height: 18px; }
    .certv2-feat-text strong { font-size: 15px; }
    .certv2-feat-text span { font-size: 14px; }
    .certv2-frame { padding: 8px; border-radius: 14px; }
    .certv2-frame::before { border-radius: 17px; }
    .certv2-frame img { border-radius: 10px; }
    .certv2-pill { font-size: 14px; padding: 10px 18px 10px 10px; gap: 8px; }
    .certv2-pill svg { width: 14px; height: 14px; padding: 7px; }
    .certv2-pill-qqi,
.certv2-pill-cpd { top: -18px; right: 8px; }
    .certv2-pill-rospa { bottom: -18px; left: 8px; }
}

@media (prefers-reduced-motion: reduce) {
    .cert-exam-stat,
    .cert-exam-benefit,
    .certv2-feat {
        transition: none;
    }

    .cert-exam-stat:hover,
    .cert-exam-benefit:hover,
    .certv2-feat:hover {
        transform: none;
    }

    .certv2-label::after {
        animation: none;
    }

    .certv2-pill {
        animation: none;
    }
}

/* =====================
   REVIEWS SECTION
   ===================== */
.ph-reviews {
    background: linear-gradient(165deg, #fffbeb 0%, #fef3c7 40%, #fff7ed 100%);
    padding: clamp(60px, 8vw, 100px) clamp(20px, 5vw, 60px);
    position: relative;
    overflow: hidden;
}

.ph-reviews::before {
    content: '';
    position: absolute;
    inset: 0;
    background: 
        radial-gradient(ellipse at 20% 30%, rgba(251, 191, 36, 0.12) 0%, transparent 50%),
        radial-gradient(ellipse at 80% 70%, rgba(245, 158, 11, 0.08) 0%, transparent 50%);
    pointer-events: none;
}

.ph-reviews-inner {
    max-width: 1200px;
    margin: 0 auto;
    position: relative;
    z-index: 1;
}

.ph-reviews-header {
    text-align: center;
    margin-bottom: 40px;
}

.ph-reviews-badge {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: linear-gradient(135deg, #f59e0b 0%, #d97706 100%);
    border-radius: 50px;
    margin-bottom: 20px;
    box-shadow: 0 4px 15px rgba(245, 158, 11, 0.35);
}

.ph-reviews-badge svg {
    width: 18px;
    height: 18px;
    color: white;
    fill: white;
}

.ph-reviews-badge span {
    font: 600 14px/1 var(--ph-font);
    color: white;
    letter-spacing: 0.5px;
}

.ph-reviews-title {
    font: 700 clamp(28px, 3.5vw, 42px)/1.25 var(--ph-font);
    color: #78350f;
    margin: 0 0 clamp(18px, 2.5vw, 28px);
    letter-spacing: -0.3px;
    text-wrap: balance;
}

.ph-reviews-subtitle {
    font: 500 clamp(16px, 1.8vw, 19px)/1.75 var(--ph-font);
    color: #92400e;
    max-width: min(100%, var(--lead-measure, 1040px));
    margin: 0 auto clamp(12px, 2vw, 20px);
}


.ph-reviews-widget {
    margin-bottom: clamp(30px, 4vw, 50px);
}

.ph-trust-row {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: clamp(16px, 4vw, 40px);
    flex-wrap: wrap;
}

.ph-trust-item {
    display: flex;
    align-items: center;
    gap: 10px;
    padding: 14px 22px;
    background: white;
    border-radius: 50px;
    box-shadow: 0 4px 16px rgba(120, 53, 15, 0.06);
    border: 1px solid rgba(251, 191, 36, 0.2);
    transition: all 0.3s ease;
}

.ph-trust-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(245, 158, 11, 0.15);
    border-color: #fbbf24;
}

.ph-trust-item svg {
    width: 22px;
    height: 22px;
    color: #f59e0b;
}

.ph-trust-item span {
    font: 600 16px/1 var(--ph-font);
    color: #78350f;
}

/* =====================
   ADDITIONAL RESPONSIVE
   ===================== */
@media (max-width: 768px) {
    .ph-industry-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    
    .ph-trust-row {
        gap: 12px;
    }
    
    .ph-trust-item {
        padding: 12px 18px;
    }
    
    .ph-trust-item span {
        font-size: 15px;
    }
}

@media (max-width: 480px) {
    .ph-card {
        padding: 24px 20px;
    }
    
    .ph-industry-grid {
        grid-template-columns: 1fr;
    }
    
    .ph-step {
        flex-direction: column;
        gap: 14px;
    }
    
    .ph-reviews {
        padding: 48px 20px;
    }
    
    .ph-reviews-title {
        font-size: 26px;
    }
    
    .ph-trust-item {
        flex: 1 1 100%;
        justify-content: center;
    }
}

/* =====================
   INFO SECTION - PREMIUM 2025
   ===================== */
.info-section {
    background: linear-gradient(180deg, #f8fafc 0%, #ffffff 50%, #f8fafc 100%);
    padding: clamp(64px, 8vw, 100px) clamp(20px, 5vw, 60px);
    border-top: 1px solid #e2e8f0;
}

.info-container {
    max-width: 1200px;
    margin: 0 auto;
}

/* Header */
.info-header {
    text-align: center;
    margin-bottom: clamp(48px, 6vw, 72px);
}

.info-badge {
    display: inline-flex;
    align-items: center;
    gap: 12px;
    padding: 16px 32px;
    background: linear-gradient(145deg, #0ea5e9 0%, #0284c7 100%);
    color: #ffffff;
    font: 800 15px/1 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 1.5px;
    border-radius: 50px;
    margin-bottom: 28px;
    box-shadow: 0 6px 24px rgba(14, 165, 233, 0.4);
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.2);
}

.info-badge svg {
    width: 22px;
    height: 22px;
}

.info-title {
    font: 800 clamp(32px, 4vw, 48px)/1.15 var(--ph-font);
    color: #0f172a;
    margin: 0 0 clamp(20px, 2.5vw, 30px);
    letter-spacing: -0.5px;
    text-wrap: balance;
}

.info-subtitle {
    font: 500 clamp(18px, 2vw, 22px)/1.75 var(--ph-font);
    color: #1e293b;
    max-width: min(100%, var(--lead-measure, 1040px));
    margin: 0 auto clamp(12px, 2vw, 20px);
    text-wrap: pretty;
}

/* Info Grid */
.info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

/* Info Cards */
.info-card {
    background: #ffffff;
    border: 2px solid #e2e8f0;
    border-radius: 20px;
    padding: 32px;
    transition: all 0.3s ease;
}

.info-card:hover {
    border-color: #cbd5e1;
    transform: translateY(-4px);
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
}

/* Card Top */
.info-card-top {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 18px;
}

.info-card-num {
    flex-shrink: 0;
    width: 48px;
    height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    font: 800 18px/1 var(--ph-font);
    color: #ffffff;
    border-radius: 14px;
}

/* Number Colors */
.info-num-blue { background: linear-gradient(145deg, #3b82f6 0%, #2563eb 100%); box-shadow: 0 4px 12px rgba(59, 130, 246, 0.35); }
.info-num-teal { background: linear-gradient(145deg, #14b8a6 0%, #0d9488 100%); box-shadow: 0 4px 12px rgba(20, 184, 166, 0.35); }
.info-num-green { background: linear-gradient(145deg, #22c55e 0%, #16a34a 100%); box-shadow: 0 4px 12px rgba(34, 197, 94, 0.35); }
.info-num-amber { background: linear-gradient(145deg, #f59e0b 0%, #d97706 100%); box-shadow: 0 4px 12px rgba(245, 158, 11, 0.35); }
.info-num-violet { background: linear-gradient(145deg, #8b5cf6 0%, #7c3aed 100%); box-shadow: 0 4px 12px rgba(139, 92, 246, 0.35); }
.info-num-rose { background: linear-gradient(145deg, #f43f5e 0%, #e11d48 100%); box-shadow: 0 4px 12px rgba(244, 63, 94, 0.35); }
.info-num-cyan { background: linear-gradient(145deg, #06b6d4 0%, #0891b2 100%); box-shadow: 0 4px 12px rgba(6, 182, 212, 0.35); }
.info-num-indigo { background: linear-gradient(145deg, #6366f1 0%, #4f46e5 100%); box-shadow: 0 4px 12px rgba(99, 102, 241, 0.35); }
.info-num-sky { background: linear-gradient(145deg, #0ea5e9 0%, #0284c7 100%); box-shadow: 0 4px 12px rgba(14, 165, 233, 0.35); }
.info-num-orange { background: linear-gradient(145deg, #f97316 0%, #ea580c 100%); box-shadow: 0 4px 12px rgba(249, 115, 22, 0.35); }

.info-card-title {
    font: 700 clamp(19px, 2vw, 22px)/1.35 var(--ph-font);
    color: #0f172a;
    margin: 0;
    flex: 1;
}

.info-card-text {
    font: 500 clamp(15px, 1.6vw, 17px)/1.8 var(--ph-font);
    color: #334155;
    margin: 0;
}

/* Responsive */
@media (max-width: 900px) {
    .info-grid {
        grid-template-columns: 1fr;
    }
}

@media (max-width: 640px) {
    .info-section {
        padding: 48px 20px;
    }
    
    .info-header {
        margin-bottom: 36px;
    }
    
    .info-badge {
        padding: 12px 24px;
        font-size: 14px;
    }
    
    .info-title {
        font-size: 28px;
    }
    
    .info-subtitle {
        font-size: 16px;
    }
    
    .info-card {
        padding: 24px 20px;
    }
    
    .info-card-top {
        flex-direction: column;
        gap: 12px;
    }
    
    .info-card-num {
        width: 42px;
        height: 42px;
        font-size: 15px;
        border-radius: 12px;
    }
    
    .info-card-title {
        font-size: 18px;
    }
    
    .info-card-text {
        font-size: 15px;
        line-height: 1.7;
    }
}

/* Extra small screens */
@media (max-width: 400px) {
    .info-section {
        padding: 40px 20px;
    }
    
    .info-card {
        padding: 22px 18px;
    }
    
    .info-title {
        font-size: 24px;
    }
    
    .info-subtitle {
        font-size: 15px;
    }
}

/* Print Styles */
@media print {
    .hero-premium {
        display: none;
    }
    
    .pf-section {
        padding: 20px 0;
    }
    
    .ph-reviews {
        display: none;
    }
    
    .ph-card {
        box-shadow: none;
        border: 1px solid #ddd;
        page-break-inside: avoid;
    }
}

/* Hide Elfsight widget title */
.WidgetTitle__Header-sc-c581efe-2,
.iAmBWe {
    display: none !important;
}


/* ============================================
   HERO CTA BUTTON - Register for Certification
   ============================================ */
.hero-ultra-cta {
    margin-top: clamp(32px, 5vh, 48px);
    display: flex;
    justify-content: center;
}

.hero-ultra-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 68px;
    padding: 8px clamp(28px, 4vw, 40px);
    background: linear-gradient(135deg, #c84d00 0%, #e86610 52%, #ff8a2d 100%);
    border: 2px solid rgba(255, 255, 255, 0.42);
    border-radius: 48px;
    color: #ffffff;
    text-decoration: none;
    cursor: pointer;
    box-shadow: 0 8px 24px -6px rgba(200, 77, 0, 0.5), 0 4px 10px -4px rgba(0, 0, 0, 0.3);
    position: relative;
    overflow: hidden;
    transition: background 0.45s ease, transform 0.3s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    transform: translateY(0);
    -webkit-font-smoothing: antialiased;
}

.hero-ultra-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, rgba(255,255,255,0) 10%, rgba(255,255,255,0.45) 45%, rgba(255,255,255,0.7) 50%, rgba(255,255,255,0.45) 55%, rgba(255,255,255,0) 90%);
    transform: translateX(-150%) skewX(-20deg);
    opacity: 1;
    pointer-events: none;
    border-radius: inherit;
    animation: hero-btn-auto-shine 8s cubic-bezier(.55,.25,.3,1) infinite;
    animation-delay: 3s;
}

.hero-ultra-btn:hover::before {
    animation: hero-btn-shine 1.4s cubic-bezier(.55,.25,.3,1) forwards;
}

@keyframes hero-btn-shine {
    0% { transform: translateX(-150%) skewX(-20deg); }
    100% { transform: translateX(150%) skewX(-20deg); }
}

@keyframes hero-btn-auto-shine {
    0%, 84% { transform: translateX(-150%) skewX(-20deg); }
    92% { transform: translateX(150%) skewX(-20deg); }
    100% { transform: translateX(-150%) skewX(-20deg); }
}

.hero-ultra-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 42px -12px rgba(200, 77, 0, 0.6), 0 10px 20px -6px rgba(0, 0, 0, 0.35);
    border-color: rgba(255, 255, 255, 0.62);
}

.hero-ultra-btn:active {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px -10px rgba(200, 77, 0, 0.55);
}

.hero-ultra-btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.5), 0 8px 24px -6px rgba(200, 77, 0, 0.5);
}

.hero-ultra-btn-text {
    position: relative;
    z-index: 1;
    font: 600 clamp(15px, 1.6vw, 19px)/1.3 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 1.4px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

.hero-ultra-btn-icon {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    opacity: 0.92;
    transition: transform 0.4s cubic-bezier(.4,.2,.2,1), opacity 0.35s ease;
}

.hero-ultra-btn:hover .hero-ultra-btn-icon {
    transform: translateX(6px) scale(1.05);
    opacity: 1;
}

.hero-ultra-btn-mobile { display: none; }

@media (max-width: 640px) {
    .hero-ultra-cta {
        margin-top: 28px;
        padding: 0 20px;
    }
    .hero-ultra-btn {
        width: auto;
        max-width: 320px;
        min-height: 58px;
        padding: 14px 32px;
    }
    .hero-ultra-btn-desktop { display: none; }
    .hero-ultra-btn-mobile { display: inline; }
    .hero-ultra-btn-icon {
        display: none;
    }
}

/* ============================================
   BOTTOM CTA - Motivational Section
   ============================================ */
.cta-invest {
    position: relative;
    overflow: hidden;
    padding: clamp(56px, 9vh, 96px) 0;
    background: linear-gradient(180deg, #061220 0%, #0a1e35 50%, #0d243d 100%);
}

.cta-invest-bg {
    position: absolute;
    inset: 0;
    pointer-events: none;
}

.cta-invest-gradient {
    position: absolute;
    inset: 0;
    background:
        radial-gradient(ellipse 100% 80% at 50% 50%, rgba(14, 165, 233, 0.1) 0%, transparent 55%),
        radial-gradient(ellipse 70% 50% at 80% 70%, rgba(232, 102, 16, 0.05) 0%, transparent 50%);
}

.cta-invest-orb {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
}

.cta-invest-orb-1 {
    top: 20%;
    left: 10%;
    width: 350px;
    height: 350px;
    background: radial-gradient(circle, rgba(14, 165, 233, 0.07) 0%, transparent 70%);
}

.cta-invest-orb-2 {
    bottom: 10%;
    right: 10%;
    width: 300px;
    height: 300px;
    background: radial-gradient(circle, rgba(232, 102, 16, 0.05) 0%, transparent 70%);
}

.cta-invest-inner {
    position: relative;
    z-index: 2;
    max-width: 960px;
    margin: 0 auto;
    padding: 0 clamp(24px, 6vw, 48px);
}

.cta-invest-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.cta-invest-quote-wrapper {
    position: relative;
    margin-bottom: clamp(28px, 4vh, 40px);
    padding: 0 20px;
}

.cta-invest-quote-mark {
    width: 40px;
    height: 40px;
    color: rgba(14, 165, 233, 0.22);
    margin-bottom: 14px;
}

.cta-invest-quote {
    display: block;
    font: 500 clamp(17px, 2.4vw, 26px)/1.5 var(--ph-font);
    color: #ffffff;
    letter-spacing: 0.2px;
    margin: 0 0 12px;
    font-style: italic;
    text-shadow: 0 2px 12px rgba(0, 0, 0, 0.3);
    text-wrap: balance;
}

.cta-invest-author {
    font: 500 clamp(14px, 1.5vw, 16px)/1.4 var(--ph-font);
    color: rgba(148, 163, 184, 0.7);
    font-style: normal;
    letter-spacing: 0.5px;
}

.cta-invest-title {
    font: 800 clamp(24px, 3.5vw, 38px)/1.2 var(--ph-font);
    background: linear-gradient(180deg, #ffffff 0%, #e0f2fe 60%, #bae6fd 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    letter-spacing: -0.3px;
    margin: 0 0 clamp(24px, 3.5vh, 36px);
    filter: drop-shadow(0 2px 8px rgba(14, 165, 233, 0.12));
    text-wrap: balance;
}

.cta-invest-perks {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: clamp(16px, 3vw, 32px);
    margin-bottom: clamp(28px, 4vh, 40px);
    flex-wrap: wrap;
}

.cta-invest-perk {
    display: flex;
    align-items: center;
    gap: 9px;
}

.cta-invest-perk svg {
    width: 20px;
    height: 20px;
    color: #22d3ee;
    flex-shrink: 0;
}

.cta-invest-perk span {
    font: 600 clamp(13px, 1.4vw, 15px)/1.3 var(--ph-font);
    color: rgba(255, 255, 255, 0.8);
    letter-spacing: 0.3px;
}

.cta-invest-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    min-height: 72px;
    padding: 10px clamp(32px, 5vw, 48px);
    background: linear-gradient(135deg, #c84d00 0%, #e86610 52%, #ff8a2d 100%);
    border: 2px solid rgba(255, 255, 255, 0.42);
    border-radius: 48px;
    color: #ffffff;
    text-decoration: none;
    cursor: pointer;
    box-shadow: 0 10px 30px -8px rgba(200, 77, 0, 0.5), 0 4px 12px -4px rgba(0, 0, 0, 0.3);
    position: relative;
    overflow: hidden;
    transition: background 0.45s ease, transform 0.3s ease, box-shadow 0.35s ease, border-color 0.35s ease;
    transform: translateY(0);
    margin-bottom: 20px;
    -webkit-font-smoothing: antialiased;
}

.cta-invest-btn::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(110deg, rgba(255,255,255,0) 10%, rgba(255,255,255,0.45) 45%, rgba(255,255,255,0.7) 50%, rgba(255,255,255,0.45) 55%, rgba(255,255,255,0) 90%);
    transform: translateX(-150%) skewX(-20deg);
    opacity: 1;
    pointer-events: none;
    border-radius: inherit;
    animation: cta-btn-auto-shine 8s cubic-bezier(.55,.25,.3,1) infinite;
    animation-delay: 7s;
}

.cta-invest-btn:hover::before {
    animation: cta-btn-shine 1.4s cubic-bezier(.55,.25,.3,1) forwards;
}

@keyframes cta-btn-shine {
    0% { transform: translateX(-150%) skewX(-20deg); }
    100% { transform: translateX(150%) skewX(-20deg); }
}

@keyframes cta-btn-auto-shine {
    0%, 84% { transform: translateX(-150%) skewX(-20deg); }
    92% { transform: translateX(150%) skewX(-20deg); }
    100% { transform: translateX(-150%) skewX(-20deg); }
}

.cta-invest-btn:hover {
    transform: translateY(-4px);
    box-shadow: 0 20px 42px -12px rgba(200, 77, 0, 0.6), 0 10px 20px -6px rgba(0, 0, 0, 0.35);
    border-color: rgba(255, 255, 255, 0.62);
}

.cta-invest-btn:active {
    transform: translateY(-1px);
    box-shadow: 0 10px 24px -10px rgba(200, 77, 0, 0.55);
}

.cta-invest-btn:focus-visible {
    outline: none;
    box-shadow: 0 0 0 4px rgba(255, 255, 255, 0.5), 0 10px 30px -8px rgba(200, 77, 0, 0.5);
}

.cta-invest-btn-text {
    position: relative;
    z-index: 1;
    font: 600 clamp(16px, 1.8vw, 20px)/1.3 var(--ph-font);
    text-transform: uppercase;
    letter-spacing: 1.4px;
    text-shadow: 0 1px 2px rgba(0, 0, 0, 0.35);
}

.cta-invest-btn-arrow {
    position: relative;
    z-index: 1;
    flex-shrink: 0;
    opacity: 0.92;
    transition: transform 0.4s cubic-bezier(.4,.2,.2,1), opacity 0.35s ease;
}

.cta-invest-btn:hover .cta-invest-btn-arrow {
    transform: translateX(6px) scale(1.05);
    opacity: 1;
}

.cta-invest-sub {
    font: 500 clamp(11px, 1.2vw, 13px)/1.4 var(--ph-font);
    color: rgba(148, 163, 184, 0.6);
    letter-spacing: 0.3px;
    margin: 0;
}

.cta-invest-btn-mobile { display: none; }

@media (max-width: 640px) {
    .cta-invest {
        padding: 44px 0;
    }
    .cta-invest-quote {
        font-size: 17px;
    }
    .cta-invest-btn {
        width: auto;
        max-width: 320px;
        min-height: 58px;
        padding: 14px 32px;
    }
    .cta-invest-btn-desktop { display: none; }
    .cta-invest-btn-mobile { display: inline; }
    .cta-invest-btn-arrow {
        display: none;
    }
}
