/*
 Theme Name: Profice
 Theme URI: https://proficegroup.com
 Description: Custom lightweight theme ported from the Profice Liquid storefront design. Fast, no page builder.
 Author: Anuj Vyas
 Version: 1.0.0
 Text Domain: profice
*/

/* ═══════ DESIGN TOKENS ═══════ */
    :root {
        --primary: #005C75;
        --primary-hover: #004A5E;
        --primary-light: #008AA8;
        --primary-dark: #002B36;
        --secondary: #BE1300;
        --secondary-hover: #9E1000;
        --bg-dark: #0A1922;
        --hero-bg: #00222B;
        --hero-bg-gradient: linear-gradient(135deg, var(--hero-bg) 0%, var(--primary) 100%);
        --white: #FFFFFF;
        --gray-50: #F7F9FA;
        --gray-100: #F0F0F0;
        --gray-200: #E4E8EB;
        --gray-300: #D1D7DC;
        --gray-400: #9DA3A7;
        --gray-500: #6A6F73;
        --gray-600: #4A4A4A;
        --gray-700: #3E4143;
        --gray-900: #1C1D1F;
        --star: #E59819;
        --success: #28A745;
        --font-heading: 'Montserrat', sans-serif;
        --font-body: 'Inter', sans-serif;
        --radius-sm: 4px;
        --radius-md: 8px;
        --radius-lg: 12px;
    }
    *, *::before, *::after { margin:0; padding:0; box-sizing:border-box; }
    html { scroll-behavior:smooth; -webkit-font-smoothing:antialiased; }
    body { font-family:var(--font-body); color:var(--gray-900); background:var(--white); line-height:1.5; display:flex; flex-direction:column; min-height:100vh; }
    a { text-decoration:none; color:inherit; }
    img { max-width:100%; height:auto; display:block; }
    button { border:none; background:none; cursor:pointer; font:inherit; }
    ul { list-style:none; }
    h1,h2,h3,h4 { font-family:var(--font-heading); color:var(--gray-900); }
    .container { max-width:1340px; margin:0 auto; padding:0 24px; }
    .text-secondary { color: var(--secondary); }

    /* ═══════ NAVBAR ═══════ */
    .navbar { background:var(--white); border-bottom:1px solid var(--gray-200); position:sticky; top:0; z-index:100; box-shadow:0 2px 4px rgba(0,0,0,0.04); overflow:visible; }
    .nav-inner { position:relative; display:flex; align-items:center; height:74px; gap:18px; }
    .nav-logo { flex-shrink:0; display:flex; align-items:center; }
    .logo-img { height:38px; object-fit:contain; }
    .nav-links { display:flex; align-items:center; gap:4px; flex-shrink:0; }
    .nav-link { position:relative; display:inline-flex; align-items:center; gap:6px; font-size:0.875rem; font-weight:500; color:var(--gray-700); padding:9px 12px; border-radius:8px; transition:color .15s,background .15s; white-space:nowrap; }
    .nav-link::after { content:''; position:absolute; bottom:4px; left:50%; transform:translateX(-50%); width:0; height:2px; background:var(--primary); transition:width .2s ease; border-radius:2px; }
    .nav-link:hover::after { width:50%; }
    .nav-link:hover { color:var(--primary); background:var(--gray-50); }
    /* Highlighted primary action (Find Courses) */
    .nav-link--highlight { background:var(--primary); color:var(--white); font-weight:600; padding:9px 18px; box-shadow:0 2px 8px rgba(0,92,117,0.18); }
    .nav-link--highlight:hover { background:var(--primary-hover); color:var(--white); box-shadow:0 4px 12px rgba(0,92,117,0.28); }
    .nav-link--highlight::after { display:none; }
    .nav-link--highlight .chev { font-size:0.6rem; transition:transform .3s; }
    .nav-link--highlight.active .chev { transform:rotate(180deg); }
    /* Offers link */
    .nav-link--offer { color:var(--secondary); font-weight:700; }
    .nav-link--offer i { font-size:0.72rem; }
    .nav-link--offer::after { background:var(--secondary); }
    .nav-link--offer:hover { color:var(--secondary-hover); background:rgba(190,19,0,0.06); }
    /* Search */
    .nav-search { flex:1; max-width:460px; position:relative; }
    .nav-search input { width:100%; height:44px; padding:0 16px 0 42px; border:1px solid var(--gray-300); border-radius:100px; font-size:0.875rem; color:var(--gray-900); background:var(--gray-50); outline:none; transition:border-color .15s,box-shadow .15s,background .15s; }
    .nav-search input::placeholder { color:var(--gray-400); }
    .nav-search input:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(0,92,117,0.08); background:var(--white); }
    .search-icon { position:absolute; left:16px; top:50%; transform:translateY(-50%); color:var(--gray-400); font-size:0.85rem; pointer-events:none; }
    .nav-search-results { position:absolute; top:calc(100% + 8px); left:0; right:0; background:var(--white); border:1px solid var(--gray-200); border-radius:14px; box-shadow:0 16px 40px rgba(0,0,0,0.12); overflow:hidden auto; max-height:380px; display:none; z-index:300; padding:6px; }
    .nav-search-results.open { display:block; }
    .nav-search-item { display:flex; align-items:center; gap:12px; padding:11px 14px; font-size:0.875rem; color:var(--gray-700); border-radius:8px; transition:background .12s,color .12s; }
    .nav-search-item:hover { background:var(--gray-50); color:var(--primary); }
    .nav-search-item i { color:var(--gray-400); font-size:0.8rem; flex-shrink:0; }
    .nav-search-item span { overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .nav-search-empty { padding:16px 14px; font-size:0.85rem; color:var(--gray-400); text-align:center; }
    /* Phone block */
    .nav-actions { display:flex; align-items:center; gap:8px; flex-shrink:0; }
    .nav-phone { display:flex; align-items:center; gap:11px; padding:6px 10px 6px 6px; border-radius:10px; transition:background .15s; }
    .nav-phone:hover { background:var(--gray-50); }
    .nav-phone-icon { width:38px; height:38px; border-radius:50%; background:rgba(0,92,117,0.08); color:var(--primary); display:flex; align-items:center; justify-content:center; font-size:0.9rem; flex-shrink:0; transition:background .15s,color .15s; }
    .nav-phone:hover .nav-phone-icon { background:var(--primary); color:var(--white); }
    .nav-phone-info { display:flex; flex-direction:column; line-height:1.25; }
    .nav-phone-label { font-size:0.68rem; color:var(--gray-400); font-weight:600; text-transform:uppercase; letter-spacing:0.6px; }
    .nav-phone-number { font-size:0.95rem; font-weight:800; color:var(--gray-900); font-family:var(--font-heading); white-space:nowrap; letter-spacing:-0.01em; }
    .mobile-toggle { display:none; flex-direction:column; gap:4px; padding:6px; }
    .mobile-toggle span { width:18px; height:2px; background:var(--gray-700); border-radius:2px; transition:all .2s; }

    /* ═══════ MEGA DROPDOWN ═══════ */
    .nav-dropdown-wrap { position:static; }
    .nav-dropdown-trigger { display:inline-flex; align-items:center; cursor:pointer; }
    .nav-dropdown-trigger.active .chev { transform:rotate(180deg); }
    .mega-dropdown { position:absolute; top:calc(100% + 10px); left:50%; transform:translateX(-50%) translateY(-8px); width:min(900px, calc(100vw - 48px)); background:var(--white); border-radius:16px; box-shadow:0 24px 64px rgba(0,0,0,0.14),0 0 0 1px rgba(0,0,0,0.05); display:flex; opacity:0; visibility:hidden; pointer-events:none; transition:opacity .22s ease, transform .22s ease; z-index:200; overflow:hidden; }
    .mega-dropdown.open { opacity:1; visibility:visible; pointer-events:auto; transform:translateX(-50%) translateY(0); }
    /* Partners sidebar */
    .mega-partners-list { width:220px; flex-shrink:0; background:var(--gray-50); padding:12px 0; border-right:1px solid var(--gray-200); max-height:440px; overflow-y:auto; }
    .mega-partners-list-header { padding:8px 16px 12px; font-size:0.68rem; font-weight:700; color:var(--gray-400); text-transform:uppercase; letter-spacing:0.8px; }
    .mega-partner-item { display:flex; align-items:center; gap:12px; padding:9px 16px; font-size:0.85rem; font-weight:500; color:var(--gray-700); cursor:pointer; transition:background .12s,color .12s; text-decoration:none; border-left:3px solid transparent; min-height:44px; }
    .mega-partner-item:hover { background:rgba(0,92,117,0.04); color:var(--primary); }
    .mega-partner-item.active { background:var(--white); color:var(--primary); border-left-color:var(--primary); font-weight:600; }
    .mega-partner-logo-wrap { width:36px; height:28px; flex-shrink:0; display:flex; align-items:center; justify-content:center; }
    .mega-partner-logo-wrap img { max-width:36px; max-height:24px; width:auto; height:auto; object-fit:contain; }
    .mega-partner-avatar { width:32px; height:32px; border-radius:8px; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); color:var(--white); display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); font-size:0.72rem; font-weight:800; flex-shrink:0; }
    .mega-partner-name { flex:1; line-height:1.3; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    /* Courses panel */
    .mega-courses-panel { flex:1; padding:24px 28px; max-height:440px; overflow-y:auto; min-width:0; }
    .mega-courses-group { display:none; }
    .mega-courses-group.active { display:block; animation:fadeInMega .18s ease; }
    @keyframes fadeInMega { from{opacity:0;transform:translateX(6px)} to{opacity:1;transform:translateX(0)} }
    .mega-group-header { display:flex; align-items:center; gap:12px; margin-bottom:16px; }
    .mega-group-logo { height:28px; max-width:100px; object-fit:contain; }
    .mega-courses-group h3 { font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--gray-900); }
    .mega-courses-grid { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
    .mega-course-card { padding:12px 14px; border:1px solid var(--gray-200); border-radius:10px; transition:border-color .2s,box-shadow .2s,transform .15s; text-decoration:none; display:block; }
    .mega-course-card:hover { border-color:var(--primary); box-shadow:0 4px 12px rgba(0,92,117,0.1); transform:translateY(-2px); }
    .mega-course-card h4 { font-family:var(--font-heading); font-size:0.85rem; font-weight:700; color:var(--gray-900); margin-bottom:6px; line-height:1.35; }
    .mega-course-meta { display:flex; gap:10px; font-size:0.72rem; color:var(--gray-400); }
    .mega-course-meta span { display:flex; align-items:center; gap:4px; }
    .mega-course-meta i { font-size:0.62rem; }

    /* ═══════ TOP STRIP ═══════ */
    .top-strip { background:var(--primary); color:var(--white); padding:12px 0; position:relative; z-index:110; order:-1; }
    .strip-inner { display:flex; align-items:center; justify-content:center; gap:16px; }
    .strip-text { font-size:0.82rem; font-weight:400; text-align:center; }
    .strip-text strong { font-weight:700; }
    .strip-text a { color:var(--white); text-decoration:underline; text-underline-offset:2px; font-weight:600; }
    .strip-close { color:var(--white); font-size:1rem; padding:4px; opacity:0.7; transition:opacity .15s; flex-shrink:0; }
    .strip-close:hover { opacity:1; }
    .top-strip.hidden { display:none; }

    /* ═══════ SECTION COMMON ═══════ */
    .section-title { font-family:var(--font-heading); font-size:1.65rem; font-weight:800; color:var(--gray-900); margin-bottom:6px; letter-spacing:-0.02em; }
    .section-desc { font-size:0.95rem; color:var(--gray-500); margin-bottom:24px; }

    /* ═══════ HOMEPAGE HERO ═══════ */
    .hero-home { background:var(--gray-50); padding:0; }
    .hero-banner { position:relative; max-width:1340px; margin:0 auto; height:400px; overflow:hidden; border-radius:6px; }
    .hero-image-area { position:absolute; inset:0; }
    .css-hero-pattern { position:absolute; inset:0; background-color:var(--gray-50); background-image:repeating-linear-gradient(-15deg,rgba(0,92,117,0.06) 0px,rgba(0,92,117,0.06) 1px,transparent 1px,transparent 40px),repeating-linear-gradient(75deg,rgba(0,92,117,0.04) 0px,rgba(0,92,117,0.04) 2px,transparent 2px,transparent 80px),radial-gradient(circle at 0% 0%,rgba(0,92,117,0.20) 0%,transparent 70%),radial-gradient(circle at 100% 100%,rgba(190,19,0,0.15) 0%,transparent 70%),radial-gradient(circle at 50% 50%,rgba(0,138,168,0.10) 0%,transparent 100%); overflow:hidden; }
    .brand-symbol { position:absolute; right:25%; top:-10%; height:120%; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:30px; z-index:1; }
    .symbol-slash { width:160px; height:60%; background-color:rgba(0,92,117,0.25); backdrop-filter:blur(8px); border:1px solid rgba(0,92,117,0.20); transform:skewX(-15deg); box-shadow:12px 12px 30px rgba(0,92,117,0.15); }
    .symbol-dot { width:140px; height:140px; background-color:rgba(190,19,0,0.25); backdrop-filter:blur(8px); border:1px solid rgba(190,19,0,0.20); border-radius:50%; transform:translateX(-40px); box-shadow:12px 12px 30px rgba(190,19,0,0.15); }
    .hero-card { position:absolute; z-index:3; left:48px; top:50%; transform:translateY(-50%); background:var(--white); padding:32px; max-width:660px; border-radius:var(--radius-md); box-shadow:0 12px 40px rgba(0,0,0,0.08); }
    .hero-title { font-family:var(--font-heading); font-size:2.6rem; font-weight:800; color:var(--gray-900); line-height:1.15; margin-bottom:16px; letter-spacing:-0.02em; }
    .hero-desc { font-size:1.05rem; color:var(--gray-700); line-height:1.6; margin-bottom:32px; }
    .hero-trust-metrics { display:flex; align-items:center; gap:12px; margin-top:32px; padding-top:24px; border-top:1px solid var(--gray-200); flex-wrap:nowrap; }
    .trust-metric { display:flex; align-items:center; gap:8px; flex-shrink:0; }
    .trust-divider { width:1px; height:36px; background:var(--gray-200); }
    .trust-info { display:flex; flex-direction:column; gap:2px; white-space:nowrap; }
    .gradient-text { background:linear-gradient(135deg,var(--primary),var(--secondary)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; display:inline-block; }
    .trust-val-group { display:flex; align-items:center; gap:6px; }
    .trust-val { font-family:var(--font-heading); font-size:1.1rem; font-weight:800; color:var(--gray-900); line-height:1; letter-spacing:-0.02em; }
    .trust-label { font-size:0.7rem; color:var(--gray-500); font-weight:600; text-transform:uppercase; letter-spacing:0.5px; }
    .avatar-stack { display:flex; align-items:center; padding-right:4px; flex-shrink:0; }
    .avatar-stack img, .avatar-more { width:38px; height:38px; border-radius:50%; border:2px solid var(--white); object-fit:cover; margin-left:-14px; box-shadow:0 4px 10px rgba(0,0,0,0.08); transition:transform .3s,box-shadow .3s; position:relative; background-color:var(--gray-200); }
    .avatar-stack img:hover, .avatar-more:hover { transform:translateY(-6px) scale(1.05); z-index:10; box-shadow:0 8px 16px rgba(0,92,117,0.15); }
    .avatar-stack img:first-child { margin-left:0; }
    .avatar-more { background:linear-gradient(135deg,var(--primary),var(--primary-light)); color:var(--white); display:flex; align-items:center; justify-content:center; font-size:0.85rem; font-weight:700; cursor:default; }
    .trust-stars { color:#FACC15; font-size:1rem; display:flex; gap:2px; }
    .trust-icon { display:flex; align-items:center; justify-content:center; width:32px; height:32px; background:rgba(190,19,0,0.1); color:var(--secondary); border-radius:50%; font-size:1.1rem; }

    /* ═══════ TOOLS SHOWCASE ═══════ */
    .premium-tools-showcase { position:absolute; right:48px; top:50%; transform:translateY(-50%); background:rgba(255,255,255,0.65); backdrop-filter:blur(24px); border:1px solid rgba(255,255,255,0.8); border-radius:24px; padding:28px; width:360px; box-shadow:0 24px 48px rgba(0,0,0,0.08),inset 0 0 0 1px rgba(255,255,255,0.6); z-index:2; overflow:hidden; }
    .tools-showcase-header { display:flex; align-items:center; justify-content:center; margin-bottom:24px; }
    .tools-small-headline { display:inline-flex; align-items:center; gap:8px; background:linear-gradient(135deg,rgba(0,92,117,0.1),rgba(0,92,117,0.03)); border:1px solid rgba(0,92,117,0.2); padding:8px 16px; border-radius:100px; }
    .tools-small-headline i { color:var(--primary); font-size:0.8rem; }
    .tools-small-headline span { font-family:var(--font-heading); font-weight:800; font-size:0.75rem; color:var(--primary-dark); text-transform:uppercase; letter-spacing:1px; }
    .tools-grid-showcase { display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
    .tool-flip-container { perspective:1000px; height:50px; }
    .tool-flipper { position:relative; width:100%; height:100%; transform-style:preserve-3d; animation:flipAnimation 6s infinite ease-in-out; }
    .tool-flip-container.delay-0 .tool-flipper { animation-delay:0s; }
    .tool-flip-container.delay-1 .tool-flipper { animation-delay:1s; }
    .tool-flip-container.delay-2 .tool-flipper { animation-delay:2s; }
    .tool-flip-container.delay-3 .tool-flipper { animation-delay:3s; }
    .tool-flip-container.delay-4 .tool-flipper { animation-delay:4s; }
    .tool-flip-container.delay-5 .tool-flipper { animation-delay:5s; }
    @keyframes flipAnimation { 0%,35%{transform:rotateX(0deg)} 45%,85%{transform:rotateX(180deg)} 95%,100%{transform:rotateX(360deg)} }
    .tool-badge { display:flex; align-items:center; gap:10px; background:rgba(255,255,255,0.9); padding:12px 14px; border-radius:14px; border:1px solid rgba(0,0,0,0.03); }
    .tool-badge.front, .tool-badge.back { position:absolute; inset:0; backface-visibility:hidden; -webkit-backface-visibility:hidden; }
    .tool-badge.back { transform:rotateX(180deg); }
    .tool-badge img { width:24px; height:24px; object-fit:contain; }
    .tool-name { font-size:0.8rem; font-weight:600; color:var(--gray-700); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }

    /* ═══════ COURSE CARDS ═══════ */
    .courses-section { padding:56px 0 64px; background:var(--white); }
    .category-tabs { display:flex; gap:0; border-bottom:1px solid var(--gray-200); margin-bottom:28px; overflow-x:auto; }
    .cat-tab { font-size:0.85rem; font-weight:600; color:var(--gray-500); padding:8px 16px; margin-right:8px; white-space:nowrap; border-radius:20px; border:1px solid transparent; transition:all .2s; margin-bottom:12px; }
    .cat-tab:hover { color:var(--gray-900); background:var(--gray-50); border-color:var(--gray-200); }
    .cat-tab.active { color:var(--white); background:var(--primary); border-color:var(--primary); box-shadow:0 4px 10px rgba(0,92,117,0.2); }
    .course-cards { display:grid; grid-template-columns:repeat(auto-fill,minmax(240px,1fr)); gap:20px; }
    .course-card { border:1px solid var(--gray-200); border-radius:var(--radius-lg); overflow:hidden; transition:box-shadow .3s,transform .3s,border-color .3s; display:flex; flex-direction:column; background:var(--white); }
    .course-card:hover { box-shadow:0 12px 30px rgba(0,92,117,0.12); transform:translateY(-4px); border-color:var(--primary-light); }
    .card-top { position:relative; height:110px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:10px; overflow:hidden; background:var(--gray-50); border-bottom:1px solid var(--gray-200); }
    .card-partner-logo { max-height:52px; max-width:140px; width:auto; object-fit:contain; }
    .card-partner-initials { width:52px; height:52px; border-radius:12px; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); color:var(--white); display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); font-size:1.1rem; font-weight:800; letter-spacing:0.5px; }
    .card-partner-name-chip { font-size:0.68rem; font-weight:700; color:var(--primary); text-transform:uppercase; letter-spacing:0.6px; background:rgba(0,92,117,0.08); padding:2px 8px; border-radius:20px; max-width:160px; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
    .card-badge-label { position:absolute; top:8px; right:8px; background:#ECEB98; color:var(--gray-900); font-size:0.65rem; font-weight:700; padding:3px 8px; border-radius:var(--radius-sm); }
    .card-bottom { padding:14px 16px 16px; display:flex; flex-direction:column; gap:8px; flex:1; }
    .card-name { font-family:var(--font-heading); font-size:0.92rem; font-weight:700; color:var(--gray-900); line-height:1.35; display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }
    .card-meta-line { display:flex; gap:14px; font-size:0.75rem; color:var(--gray-400); }
    .card-meta-line span { display:flex; align-items:center; gap:4px; }
    .card-meta-line i { font-size:0.65rem; }
    .card-footer-row { display:flex; align-items:center; justify-content:space-between; margin-top:auto; padding-top:10px; border-top:1px solid var(--gray-100); }
    .card-rating { display:flex; align-items:center; gap:4px; font-size:0.8rem; font-weight:700; color:var(--gray-900); }
    .card-rating i { color:var(--star); font-size:0.7rem; }
    .card-rating--muted { color:var(--gray-400); font-weight:500; }
    .card-rating--muted i { color:var(--gray-300); }
    .rating-count { font-weight:400; color:var(--gray-400); font-size:0.75rem; }
    .card-price { font-size:0.82rem; color:var(--gray-500); display:flex; align-items:baseline; gap:6px; }
    .card-price strong { color:var(--gray-900); font-weight:800; font-family:var(--font-heading); font-size:0.95rem; }
    .card-price-old { text-decoration:line-through; color:var(--gray-400); font-size:0.78rem; }
    .card-price-new { color:var(--secondary)!important; font-weight:800; font-family:var(--font-heading); font-size:1rem; }
    .card-sale-badge { position:absolute; top:8px; left:8px; z-index:2; background:var(--secondary); color:var(--white); font-size:0.68rem; font-weight:800; padding:3px 9px; border-radius:var(--radius-sm); letter-spacing:0.3px; box-shadow:0 2px 6px rgba(190,19,0,0.3); }
    .course-card--sale { border-color:rgba(190,19,0,0.25); }
    .course-card--sale:hover { border-color:var(--secondary); box-shadow:0 12px 30px rgba(190,19,0,0.14); }

    /* ═══════ OFFERS SECTION (split promo + carousel) ═══════ */
    .offers-section { padding:48px 0 56px; background:var(--white); }
    .offers-promo-layout { position:relative; display:flex; align-items:stretch; background:var(--white); border:1px solid var(--gray-200); border-radius:24px; box-shadow:0 24px 60px rgba(0,43,54,0.1); overflow:hidden; }
    /* Left panel */
    .offers-promo-panel { flex:0 0 44%; max-width:44%; padding:52px 48px; background:radial-gradient(circle at 12% 12%,rgba(0,138,168,0.14) 0%,transparent 45%),linear-gradient(150deg,#eef5f7 0%,#d7e7ec 100%); position:relative; }
    .offers-promo-panel::before { content:''; position:absolute; inset:0; background-image:repeating-linear-gradient(0deg,rgba(0,92,117,0.045) 0 1px,transparent 1px 42px),repeating-linear-gradient(90deg,rgba(0,92,117,0.045) 0 1px,transparent 1px 42px); pointer-events:none; }
    .offers-promo-panel::after { content:''; position:absolute; top:0; right:-1px; width:80px; height:100%; background:linear-gradient(90deg,transparent,var(--white)); pointer-events:none; z-index:2; }
    .offers-promo-panel > * { position:relative; z-index:3; }
    .offers-promo-eyebrow { display:inline-flex; align-items:center; gap:8px; color:var(--secondary); font-size:0.78rem; font-weight:800; text-transform:uppercase; letter-spacing:1.6px; margin-bottom:20px; }
    .offers-promo-eyebrow::before { content:''; width:24px; height:2px; background:var(--secondary); border-radius:2px; }
    .offer-timer { display:flex; align-items:center; gap:9px; margin-bottom:30px; }
    .offer-timer-box { background:linear-gradient(180deg,#ffffff,#f3f7f8); border:1px solid rgba(255,255,255,0.9); border-radius:14px; box-shadow:0 6px 18px rgba(0,43,54,0.1); padding:12px 14px; display:flex; align-items:baseline; gap:3px; min-width:62px; justify-content:center; }
    .offer-timer-num { font-family:var(--font-heading); font-size:1.55rem; font-weight:800; color:var(--gray-900); line-height:1; letter-spacing:-0.02em; }
    .offer-timer-label { font-size:0.72rem; font-weight:700; color:var(--gray-400); }
    .offer-timer-sep { color:var(--gray-300); font-weight:800; font-size:1.1rem; }
    .offers-promo-title { font-family:var(--font-heading); font-size:2.7rem; font-weight:800; color:var(--gray-900); line-height:1.08; letter-spacing:-0.03em; margin-bottom:10px; }
    .offers-promo-subtitle { font-family:var(--font-heading); font-size:1.35rem; font-weight:700; color:var(--primary); margin-bottom:18px; }
    .offers-promo-desc { font-size:1rem; color:var(--gray-600); line-height:1.65; margin-bottom:32px; max-width:430px; }
    .offers-promo-cta { display:inline-flex; align-items:center; gap:10px; background:var(--secondary); color:var(--white); font-family:var(--font-heading); font-weight:700; font-size:1.05rem; padding:16px 34px; border-radius:12px; box-shadow:0 10px 26px rgba(190,19,0,0.32); transition:transform .2s,background .2s,box-shadow .3s; }
    .offers-promo-cta:hover { background:var(--secondary-hover); transform:translateY(-2px); box-shadow:0 14px 34px rgba(190,19,0,0.42); }
    .offers-promo-cta i { transition:transform .2s; }
    .offers-promo-cta:hover i { transform:translateX(4px); }
    /* Right carousel */
    .offers-carousel-wrap { position:relative; flex:1; min-width:0; display:flex; align-items:center; }
    .offers-carousel-wrap::after { content:''; position:absolute; top:0; right:0; width:60px; height:100%; background:linear-gradient(90deg,transparent,var(--white)); pointer-events:none; z-index:4; }
    .offers-carousel { display:flex; gap:20px; overflow-x:auto; scroll-behavior:smooth; scroll-snap-type:x mandatory; scroll-padding-left:36px; padding:40px 36px; scrollbar-width:none; -ms-overflow-style:none; }
    .offers-carousel::-webkit-scrollbar { display:none; }
    .offers-carousel .course-card { flex:0 0 256px; width:256px; scroll-snap-align:start; }
    .offers-nav { position:absolute; top:50%; transform:translateY(-50%); width:48px; height:48px; border-radius:50%; background:var(--white); box-shadow:0 6px 20px rgba(0,43,54,0.18); display:flex; align-items:center; justify-content:center; color:var(--primary); font-size:0.95rem; z-index:6; cursor:pointer; border:1px solid var(--gray-100); transition:background .2s,color .2s,transform .2s,box-shadow .2s; }
    .offers-nav:hover { background:var(--primary); color:var(--white); transform:translateY(-50%) scale(1.08); box-shadow:0 10px 26px rgba(0,92,117,0.3); }
    .offers-nav-prev { left:8px; display:none; }
    .offers-nav-next { right:14px; }
    @media(max-width:900px){
        .offers-promo-layout{flex-direction:column; border-radius:20px}
        .offers-promo-panel{flex-basis:auto;max-width:none;padding:36px 28px}
        .offers-promo-panel::after{display:none}
        .offers-promo-title{font-size:2rem}
        .offers-nav-prev{left:8px}
    }
    /* Shared countdown pill (offers hero) */
    .offers-countdown { display:inline-flex; align-items:center; gap:8px; background:var(--white); border:1px solid rgba(190,19,0,0.2); color:var(--secondary); font-weight:700; font-size:0.9rem; padding:10px 16px; border-radius:10px; box-shadow:0 4px 12px rgba(190,19,0,0.08); white-space:nowrap; }
    .offers-countdown i { font-size:0.95rem; }

    /* ═══════ OFFERS LANDING HERO (branded) ═══════ */
    .olh { position:relative; overflow:hidden; background:var(--hero-bg); color:var(--white); padding:56px 0 0; }
    .olh-bg { position:absolute; inset:0; z-index:0; background:radial-gradient(circle at 82% 18%,rgba(0,138,168,0.4) 0%,transparent 52%),radial-gradient(circle at 12% 95%,rgba(190,19,0,0.22) 0%,transparent 50%),linear-gradient(135deg,var(--hero-bg) 0%,var(--primary-dark) 100%); }
    .olh-bg::after { content:''; position:absolute; inset:0; background-image:repeating-linear-gradient(0deg,rgba(255,255,255,0.03) 0 1px,transparent 1px 46px),repeating-linear-gradient(90deg,rgba(255,255,255,0.03) 0 1px,transparent 1px 46px); }
    .olh-inner { position:relative; z-index:1; display:grid; grid-template-columns:1.1fr 0.9fr; gap:56px; align-items:center; padding-bottom:48px; }
    /* Left */
    .olh-urgency { display:inline-flex; align-items:center; gap:9px; background:rgba(190,19,0,0.15); border:1px solid rgba(190,19,0,0.4); color:#FF8A7A; font-size:0.76rem; font-weight:800; text-transform:uppercase; letter-spacing:0.8px; padding:8px 16px; border-radius:100px; margin-bottom:22px; }
    .olh-urgency-dot { width:8px; height:8px; border-radius:50%; background:var(--secondary); box-shadow:0 0 0 0 rgba(190,19,0,0.6); animation:olhPulse 1.8s infinite; }
    @keyframes olhPulse { 0%{box-shadow:0 0 0 0 rgba(255,90,71,0.6)} 70%{box-shadow:0 0 0 10px rgba(255,90,71,0)} 100%{box-shadow:0 0 0 0 rgba(255,90,71,0)} }
    .olh-title { font-family:var(--font-heading); color:var(--white); font-size:3rem; font-weight:800; line-height:1.08; letter-spacing:-0.025em; margin-bottom:18px; }
    .olh-title-accent { color:#FFD33D; }
    .olh-sub { font-size:1.08rem; color:rgba(255,255,255,0.78); line-height:1.65; max-width:520px; margin-bottom:28px; }
    .olh-timer-wrap { margin-bottom:28px; }
    .olh-timer-label { display:inline-flex; align-items:center; gap:7px; font-size:0.78rem; font-weight:600; color:rgba(255,255,255,0.6); text-transform:uppercase; letter-spacing:0.6px; margin-bottom:10px; }
    .olh-timer.offer-timer { gap:10px; }
    .olh-timer .offer-timer-box { flex-direction:column; gap:2px; min-width:64px; padding:10px 8px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.14); box-shadow:none; }
    .olh-timer .offer-timer-num { color:var(--white); font-size:1.6rem; }
    .olh-timer .offer-timer-label { color:rgba(255,255,255,0.55); font-size:0.62rem; text-transform:uppercase; letter-spacing:0.5px; }
    .olh-actions { display:flex; gap:14px; flex-wrap:wrap; margin-bottom:34px; }
    .olh-btn { display:inline-flex; align-items:center; gap:10px; padding:15px 28px; border-radius:10px; font-family:var(--font-heading); font-weight:700; font-size:1rem; transition:transform .2s,box-shadow .3s,background .2s; }
    .olh-btn-primary { background:var(--secondary); color:var(--white); box-shadow:0 8px 24px rgba(190,19,0,0.4); }
    .olh-btn-primary:hover { background:var(--secondary-hover); transform:translateY(-2px); box-shadow:0 12px 32px rgba(190,19,0,0.5); }
    .olh-btn-ghost { background:rgba(255,255,255,0.1); color:var(--white); border:1px solid rgba(255,255,255,0.3); }
    .olh-btn-ghost:hover { background:rgba(255,255,255,0.18); transform:translateY(-2px); }
    .olh-stats { display:flex; gap:0; flex-wrap:wrap; }
    .olh-stat { display:flex; flex-direction:column; gap:3px; padding-right:32px; margin-right:32px; border-right:1px solid rgba(255,255,255,0.15); }
    .olh-stat:last-child { border-right:none; margin-right:0; padding-right:0; }
    .olh-stat strong { font-family:var(--font-heading); font-size:1.6rem; font-weight:800; color:var(--white); line-height:1; letter-spacing:-0.02em; }
    .olh-stat span { font-size:0.74rem; color:rgba(255,255,255,0.6); font-weight:600; text-transform:uppercase; letter-spacing:0.5px; }
    /* Right: deal card */
    .olh-right { display:flex; justify-content:center; }
    .olh-deal { position:relative; width:100%; max-width:380px; background:var(--white); color:var(--gray-900); border-radius:18px; padding:28px; box-shadow:0 30px 70px rgba(0,0,0,0.35); }
    .olh-deal-ribbon { position:absolute; top:-14px; left:24px; display:inline-flex; align-items:center; gap:6px; background:var(--secondary); color:var(--white); font-size:0.72rem; font-weight:800; text-transform:uppercase; letter-spacing:0.6px; padding:6px 14px; border-radius:100px; box-shadow:0 6px 16px rgba(190,19,0,0.4); }
    .olh-deal-partner { display:flex; align-items:center; gap:10px; margin:10px 0 14px; }
    .olh-deal-partner img { height:30px; max-width:110px; object-fit:contain; }
    .olh-deal-partner span { font-size:0.72rem; font-weight:700; color:var(--primary); text-transform:uppercase; letter-spacing:0.5px; }
    .olh-deal-title { font-family:var(--font-heading); font-size:1.35rem; font-weight:800; color:var(--gray-900); line-height:1.25; margin-bottom:12px; }
    .olh-deal-meta { display:flex; flex-wrap:wrap; gap:14px; font-size:0.8rem; color:var(--gray-500); margin-bottom:18px; }
    .olh-deal-meta span { display:inline-flex; align-items:center; gap:5px; }
    .olh-deal-meta i { color:var(--star); font-size:0.72rem; }
    .olh-deal-pricing { display:flex; align-items:baseline; gap:12px; margin-bottom:6px; }
    .olh-deal-old { text-decoration:line-through; color:var(--gray-400); font-size:1.1rem; }
    .olh-deal-new { font-family:var(--font-heading); font-size:2.4rem; font-weight:800; color:var(--gray-900); line-height:1; letter-spacing:-0.02em; }
    .olh-deal-save { display:inline-flex; align-items:center; gap:6px; background:rgba(40,167,69,0.1); color:var(--success); font-size:0.82rem; font-weight:700; padding:5px 12px; border-radius:8px; margin-bottom:18px; }
    .olh-deal-cta { display:flex; align-items:center; justify-content:center; gap:8px; width:100%; padding:15px; background:var(--primary); color:var(--white); font-family:var(--font-heading); font-weight:700; font-size:1.02rem; border-radius:10px; transition:background .2s,transform .2s; }
    .olh-deal-cta:hover { background:var(--primary-hover); transform:translateY(-2px); }
    .olh-deal-guarantee { display:flex; align-items:center; justify-content:center; gap:7px; font-size:0.8rem; color:var(--gray-500); margin-top:14px; }
    .olh-deal-guarantee i { color:var(--primary); }
    .olh-deal--empty { text-align:center; padding:40px 28px; }
    .olh-deal--empty > i { font-size:2.4rem; color:var(--primary); margin-bottom:14px; }
    .olh-deal--empty h3 { font-family:var(--font-heading); font-size:1.3rem; margin-bottom:8px; }
    .olh-deal--empty p { color:var(--gray-500); font-size:0.92rem; margin-bottom:20px; }
    /* Trust strip */
    .olh-trust { position:relative; z-index:1; border-top:1px solid rgba(255,255,255,0.12); padding:24px; display:flex; align-items:center; gap:28px; flex-wrap:wrap; }
    .olh-trust-label { font-size:0.74rem; font-weight:700; color:rgba(255,255,255,0.5); text-transform:uppercase; letter-spacing:0.8px; flex-shrink:0; }
    .olh-trust-logos { display:flex; align-items:center; gap:32px; flex-wrap:wrap; flex:1; }
    .olh-trust-logos img { height:30px; max-width:96px; object-fit:contain; filter:brightness(0) invert(1); opacity:0.6; transition:opacity .2s; }
    .olh-trust-logos img:hover { opacity:1; }
    @media(max-width:900px){
        .olh-inner { grid-template-columns:1fr; gap:36px; }
        .olh-title { font-size:2.2rem; }
        .olh-right { justify-content:flex-start; }
        .olh-deal { max-width:none; }
    }

    /* ═══════ SEARCH RESULTS PAGE ═══════ */
    .search-section { padding:48px 0 64px; min-height:50vh; }
    .search-head { margin-bottom:28px; }
    .search-eyebrow { display:inline-flex; align-items:center; gap:6px; font-size:0.72rem; font-weight:800; color:var(--primary); text-transform:uppercase; letter-spacing:1px; background:rgba(0,92,117,0.08); padding:5px 12px; border-radius:100px; margin-bottom:12px; }
    .search-head .section-desc { margin-bottom:0; }
    .search-empty { text-align:center; padding:56px 24px; max-width:480px; margin:0 auto; }
    .search-empty > i { font-size:2.4rem; color:var(--gray-300); margin-bottom:18px; }
    .search-empty h3 { font-family:var(--font-heading); font-size:1.25rem; color:var(--gray-900); margin-bottom:10px; }
    .search-empty p { color:var(--gray-500); margin-bottom:22px; }
    .search-empty-cta { display:inline-flex; align-items:center; gap:8px; background:var(--primary); color:var(--white); font-weight:600; padding:12px 24px; border-radius:10px; transition:background .2s,transform .2s; }
    .search-empty-cta:hover { background:var(--primary-hover); transform:translateY(-2px); }

    /* ═══════ COURSE CATALOGUE ═══════ */
    .catalog-section { padding:48px 0 64px; min-height:60vh; }
    .catalog-head { max-width:720px; margin-bottom:26px; }
    .catalog-eyebrow { display:inline-block; font-size:0.72rem; font-weight:800; color:var(--primary); text-transform:uppercase; letter-spacing:1.2px; background:rgba(0,92,117,0.08); padding:5px 12px; border-radius:100px; margin-bottom:12px; }
    .catalog-head .section-title { font-size:2rem; }
    .catalog-head .section-desc { margin-bottom:0; }
    .catalog-toolbar { display:flex; gap:14px; align-items:center; margin-bottom:18px; flex-wrap:wrap; }
    .catalog-search { position:relative; flex:1; min-width:240px; }
    .catalog-search i { position:absolute; left:16px; top:50%; transform:translateY(-50%); color:var(--gray-400); font-size:0.85rem; pointer-events:none; }
    .catalog-search input { width:100%; height:46px; padding:0 16px 0 42px; border:1px solid var(--gray-300); border-radius:10px; font-size:0.9rem; color:var(--gray-900); background:var(--gray-50); outline:none; transition:border-color .15s,box-shadow .15s,background .15s; }
    .catalog-search input:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(0,92,117,0.08); background:var(--white); }
    .catalog-sort { position:relative; display:flex; align-items:center; }
    .catalog-sort > i { position:absolute; left:14px; color:var(--gray-400); font-size:0.85rem; pointer-events:none; z-index:1; }
    .catalog-sort select { height:46px; padding:0 38px 0 38px; border:1px solid var(--gray-300); border-radius:10px; font-size:0.9rem; font-weight:600; color:var(--gray-700); background-color:var(--white); cursor:pointer; outline:none; appearance:none; -webkit-appearance:none; background-image:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%236A6F73' stroke-width='3'><path d='M6 9l6 6 6-6'/></svg>"); background-repeat:no-repeat; background-position:right 14px center; }
    .catalog-sort select:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(0,92,117,0.08); }
    .catalog-filters { display:flex; gap:10px; flex-wrap:wrap; margin-bottom:28px; }
    .catalog-chip { display:inline-flex; align-items:center; gap:7px; padding:8px 16px; border:1px solid var(--gray-200); border-radius:100px; background:var(--white); font-size:0.85rem; font-weight:600; color:var(--gray-600); cursor:pointer; transition:background .18s,color .18s,border-color .18s,box-shadow .18s; }
    .catalog-chip:hover { border-color:var(--primary); color:var(--primary); }
    .catalog-chip.active { background:var(--primary); border-color:var(--primary); color:var(--white); box-shadow:0 4px 12px rgba(0,92,117,0.2); }
    .catalog-chip-count { font-size:0.72rem; font-weight:700; background:rgba(0,0,0,0.06); padding:1px 7px; border-radius:100px; }
    .catalog-chip.active .catalog-chip-count { background:rgba(255,255,255,0.22); }
    .catalog-empty { text-align:center; padding:56px 24px; }
    .catalog-empty > i { font-size:2.4rem; color:var(--gray-300); margin-bottom:16px; }
    .catalog-empty h3 { font-family:var(--font-heading); font-size:1.25rem; color:var(--gray-900); margin-bottom:8px; }
    .catalog-empty p { color:var(--gray-500); }

    /* ═══════ COURSE CONVERSION CTA ═══════ */
    .course-cta { position:relative; background:var(--hero-bg); color:var(--white); padding:72px 0; overflow:hidden; }
    .course-cta-bg { position:absolute; inset:0; z-index:0; background:radial-gradient(circle at 85% 30%,rgba(0,138,168,0.35) 0%,transparent 55%),radial-gradient(circle at 10% 90%,rgba(190,19,0,0.18) 0%,transparent 55%),linear-gradient(135deg,var(--hero-bg) 0%,var(--primary-dark) 100%); }
    .course-cta-bg::after { content:''; position:absolute; inset:0; background-image:repeating-linear-gradient(0deg,rgba(255,255,255,0.03) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,rgba(255,255,255,0.03) 0 1px,transparent 1px 44px); }
    .course-cta-inner { position:relative; z-index:1; display:grid; grid-template-columns:1.3fr 1fr; gap:56px; align-items:center; }
    .course-cta-badge { display:inline-block; background:var(--secondary); color:var(--white); font-size:0.72rem; font-weight:800; text-transform:uppercase; letter-spacing:1px; padding:7px 16px; border-radius:6px; margin-bottom:20px; }
    .course-cta-title { font-family:var(--font-heading); color:var(--white); font-size:2.7rem; font-weight:800; line-height:1.12; letter-spacing:-0.02em; margin-bottom:20px; }
    .course-cta-desc { color:rgba(255,255,255,0.78); font-size:1.02rem; line-height:1.65; max-width:560px; }
    .course-cta-desc p { margin-bottom:14px; }
    .course-cta-desc strong { color:var(--white); }
    .course-cta-prices { display:flex; gap:40px; flex-wrap:wrap; margin:30px 0; }
    .cta-price-item { padding-left:16px; border-left:3px solid rgba(255,255,255,0.3); }
    .cta-price-item.accent-red { border-left-color:var(--secondary); }
    .cta-price-item.accent-teal { border-left-color:var(--primary-light); }
    .cta-price-name { font-family:var(--font-heading); font-weight:700; font-size:1.05rem; margin-bottom:8px; }
    .accent-red .cta-price-name { color:#FF5E4D; }
    .accent-teal .cta-price-name { color:#3FC2DE; }
    .cta-price-values { display:flex; align-items:baseline; gap:10px; }
    .cta-price-old { text-decoration:line-through; color:rgba(255,255,255,0.5); font-size:1rem; }
    .cta-price-now { font-family:var(--font-heading); font-size:2rem; font-weight:800; color:var(--white); line-height:1; letter-spacing:-0.02em; }
    .cta-price-tax { display:block; font-size:0.8rem; color:rgba(255,255,255,0.55); margin-top:6px; }
    .course-cta-trust { display:flex; gap:28px; flex-wrap:wrap; margin-top:6px; }
    .course-cta-trust span { display:inline-flex; align-items:center; gap:7px; font-size:0.9rem; font-weight:600; color:rgba(255,255,255,0.85); }
    .course-cta-trust i { color:#FFD33D; }
    /* Form card */
    .course-cta-form-card { background:var(--white); border-radius:16px; border-top:5px solid var(--secondary); padding:32px; box-shadow:0 24px 60px rgba(0,0,0,0.3); }
    .course-cta-form-title { font-family:var(--font-heading); font-size:1.6rem; font-weight:800; color:var(--primary); text-align:center; margin-bottom:6px; }
    .course-cta-form-sub { font-size:0.9rem; color:var(--gray-500); text-align:center; margin-bottom:22px; line-height:1.5; }
    .course-cta-form-card .enquiry-note { color:var(--gray-500); }
    .course-cta-form-card .enquiry-note i { color:var(--primary); }
    @media(max-width:900px){
        .course-cta { padding:52px 0; }
        .course-cta-inner { grid-template-columns:1fr; gap:36px; }
        .course-cta-title { font-size:2rem; }
    }

    /* ═══════ FOOTER ═══════ */
    .site-footer { position:relative; background:var(--primary-dark); color:rgba(255,255,255,0.72); margin-top:auto; font-size:0.9rem; border-top:1px solid rgba(255,255,255,0.08); }
    .site-footer::before { content:''; position:absolute; inset:0; z-index:0; pointer-events:none; background-image:repeating-linear-gradient(0deg,rgba(255,255,255,0.025) 0 1px,transparent 1px 44px),repeating-linear-gradient(90deg,rgba(255,255,255,0.025) 0 1px,transparent 1px 44px); }
    .site-footer > * { position:relative; z-index:1; }
    .footer-cta { background:rgba(255,255,255,0.04); border-bottom:1px solid rgba(255,255,255,0.1); }
    .footer-cta-inner { display:flex; align-items:center; justify-content:space-between; gap:32px; padding:36px 24px; flex-wrap:wrap; }
    .footer-cta-title { font-family:var(--font-heading); color:var(--white); font-size:1.6rem; font-weight:800; letter-spacing:-0.02em; margin-bottom:6px; }
    .footer-cta-text { color:rgba(255,255,255,0.88); font-size:0.98rem; max-width:560px; line-height:1.55; }
    .footer-cta-actions { display:flex; gap:12px; flex-shrink:0; flex-wrap:wrap; }
    .footer-cta-btn { display:inline-flex; align-items:center; gap:8px; padding:14px 24px; border-radius:10px; font-family:var(--font-heading); font-weight:700; font-size:0.95rem; transition:transform .2s,box-shadow .3s,background .2s; white-space:nowrap; }
    .footer-cta-btn--primary { background:var(--secondary); color:var(--white); box-shadow:0 8px 22px rgba(190,19,0,0.35); }
    .footer-cta-btn--primary:hover { background:var(--secondary-hover); transform:translateY(-2px); }
    .footer-cta-btn--ghost { background:rgba(255,255,255,0.12); color:var(--white); border:1px solid rgba(255,255,255,0.35); }
    .footer-cta-btn--ghost:hover { background:rgba(255,255,255,0.22); transform:translateY(-2px); }
    .footer-main { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:40px; padding:56px 24px 40px; }
    .footer-logo { display:inline-block; margin-bottom:16px; }
    .footer-logo img { height:36px; object-fit:contain; filter:brightness(0) invert(1); }
    .footer-logo-text { font-family:var(--font-heading); font-weight:800; font-size:1.4rem; color:var(--white); }
    .footer-about { line-height:1.65; margin-bottom:20px; max-width:340px; color:rgba(255,255,255,0.62); }
    .footer-contact { display:flex; flex-direction:column; gap:10px; margin-bottom:20px; }
    .footer-contact li { display:flex; align-items:center; gap:10px; color:rgba(255,255,255,0.8); }
    .footer-contact i { color:var(--primary-light); width:16px; text-align:center; flex-shrink:0; }
    .footer-contact a:hover { color:var(--white); text-decoration:underline; }
    .footer-social { display:flex; gap:10px; }
    .footer-social a { width:38px; height:38px; border-radius:50%; background:rgba(255,255,255,0.08); color:rgba(255,255,255,0.85); display:flex; align-items:center; justify-content:center; transition:background .2s,transform .2s,color .2s; }
    .footer-social a:hover { background:var(--primary-light); color:var(--white); transform:translateY(-3px); }
    .footer-col-title { font-family:var(--font-heading); color:var(--white); font-size:0.95rem; font-weight:700; margin-bottom:18px; text-transform:uppercase; letter-spacing:0.5px; }
    .footer-links { display:flex; flex-direction:column; gap:11px; }
    .footer-links a { color:rgba(255,255,255,0.65); transition:color .15s,padding-left .15s; display:inline-block; }
    .footer-links a:hover { color:var(--white); padding-left:4px; }
    .footer-bottom { border-top:1px solid rgba(255,255,255,0.1); }
    .footer-bottom-inner { display:flex; align-items:center; justify-content:space-between; gap:16px; padding:20px 24px; flex-wrap:wrap; }
    .footer-copy { color:rgba(255,255,255,0.55); font-size:0.85rem; }
    .footer-legal { display:flex; gap:24px; flex-wrap:wrap; }
    .footer-legal a { color:rgba(255,255,255,0.55); font-size:0.85rem; transition:color .15s; }
    .footer-legal a:hover { color:var(--white); }
    @media(max-width:900px){ .footer-main{grid-template-columns:1fr 1fr; gap:32px} .footer-brand{grid-column:1 / -1} }
    @media(max-width:560px){
        .footer-main{grid-template-columns:1fr}
        .footer-cta-inner{flex-direction:column; align-items:flex-start}
        .footer-cta-actions{width:100%}
        .footer-cta-btn{flex:1; justify-content:center}
        .footer-bottom-inner{flex-direction:column; align-items:flex-start; gap:10px}
    }
    @media(max-width:600px){
        .olh-title{font-size:1.9rem}
        .olh-stat{padding-right:20px;margin-right:20px}
        .olh-deal-new{font-size:2rem}
    }

    /* ═══════ COURSES BY PARTNER ═══════ */
    .cbp-section { padding:56px 0 64px; background:var(--white); }
    .cbp-head { margin-bottom:8px; }
    .cbp-head .section-desc { margin-bottom:0; }
    .cbp-tabs { display:flex; gap:6px; flex-wrap:wrap; align-items:center; margin:22px 0 28px; padding-bottom:14px; border-bottom:1px solid var(--gray-200); }
    .cbp-tab { padding:9px 20px; border:none; border-radius:100px; background:transparent; font-family:var(--font-body); font-size:0.92rem; font-weight:600; color:var(--gray-600); cursor:pointer; white-space:nowrap; transition:background .18s,color .18s,box-shadow .18s; }
    .cbp-tab:hover { color:var(--primary); background:var(--gray-50); }
    .cbp-tab.active { background:var(--primary); color:var(--white); box-shadow:0 6px 16px rgba(0,92,117,0.22); }
    .cbp-explore-card { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:14px; text-align:center; border:2px dashed var(--gray-300); border-radius:var(--radius-lg); padding:24px; background:var(--gray-50); min-height:240px; transition:border-color .2s,background .2s,transform .2s; }
    .cbp-explore-card[hidden] { display:none; }
    .cbp-explore-card:hover { border-color:var(--primary); background:rgba(0,92,117,0.04); transform:translateY(-4px); }
    .cbp-explore-icon { width:56px; height:56px; border-radius:50%; background:rgba(0,92,117,0.1); color:var(--primary); display:flex; align-items:center; justify-content:center; font-size:1.4rem; }
    .cbp-explore-text { font-family:var(--font-heading); font-size:1rem; font-weight:700; color:var(--gray-900); line-height:1.4; }
    .cbp-explore-link { display:inline-flex; align-items:center; gap:6px; color:var(--primary); font-weight:700; font-size:0.9rem; }
    .cbp-empty { text-align:center; padding:40px 0; color:var(--gray-500); }
    .cbp-foot { display:flex; justify-content:center; margin-top:32px; }
    .cbp-viewall { display:inline-flex; align-items:center; gap:8px; padding:13px 28px; border:1.5px solid var(--primary); color:var(--primary); border-radius:10px; font-family:var(--font-heading); font-weight:700; font-size:0.95rem; transition:background .2s,color .2s,transform .2s; }
    .cbp-viewall:hover { background:var(--primary); color:var(--white); transform:translateY(-2px); }
    .cbp-viewall i { transition:transform .2s; }
    .cbp-viewall:hover i { transform:translateX(4px); }

    /* ═══════ PARTNERS MARQUEE ═══════ */
    .partners-section { padding:48px 0 52px; background:var(--white); }
    .partners-head { margin-bottom:28px; max-width:680px; }
    .partners-eyebrow { display:inline-block; font-size:0.72rem; font-weight:800; color:var(--primary); text-transform:uppercase; letter-spacing:1.2px; background:rgba(0,92,117,0.08); padding:5px 12px; border-radius:100px; margin-bottom:12px; }
    .partners-head .section-desc { margin-bottom:0; }
    .partners-marquee { position:relative; overflow:hidden; -webkit-mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); mask-image:linear-gradient(90deg,transparent,#000 7%,#000 93%,transparent); }
    .partners-track { display:flex; gap:14px; width:max-content; animation:partnerScroll 60s linear infinite; }
    .partners-marquee:hover .partners-track { animation-play-state:paused; }
    @keyframes partnerScroll { from{transform:translateX(0)} to{transform:translateX(-50%)} }
    .partner-chip { display:flex; align-items:center; gap:12px; flex-shrink:0; background:var(--white); border:1px solid var(--gray-200); border-radius:100px; padding:10px 22px 10px 14px; transition:border-color .2s,box-shadow .2s; }
    .partner-chip:hover { border-color:var(--primary-light); box-shadow:0 6px 18px rgba(0,92,117,0.1); }
    .partner-chip-logo { height:30px; width:64px; display:flex; align-items:center; justify-content:center; flex-shrink:0; }
    .partner-chip-logo img { max-height:28px; max-width:64px; width:auto; object-fit:contain; filter:grayscale(100%); opacity:0.72; transition:filter .2s,opacity .2s; }
    .partner-chip:hover .partner-chip-logo img { filter:grayscale(0); opacity:1; }
    .partner-chip-mono { width:34px; height:34px; border-radius:9px; background:linear-gradient(135deg,var(--primary),var(--primary-dark)); color:var(--white); display:flex; align-items:center; justify-content:center; font-family:var(--font-heading); font-size:0.78rem; font-weight:800; flex-shrink:0; }
    .partner-chip-name { font-size:0.86rem; font-weight:600; color:var(--gray-600); white-space:nowrap; }
    .partner-chip:hover .partner-chip-name { color:var(--primary); }
    @media (prefers-reduced-motion: reduce) {
        .partners-track { animation:none; flex-wrap:wrap; width:auto; justify-content:center; }
        .partners-track [data-dup] { display:none; }
    }

    /* ═══════ WHY CHOOSE ═══════ */
    .why-choose-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:24px; }
    @media(max-width:992px){ .why-choose-grid{grid-template-columns:repeat(2,1fr)} }
    @media(max-width:576px){ .why-choose-grid{grid-template-columns:1fr} }
    .why-card { background:var(--white); border:1px solid rgba(0,0,0,0.08); border-radius:var(--radius-lg); padding:2.5rem 1.5rem; text-align:center; }
    .why-icon { width:64px; height:64px; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.8rem; margin:0 auto 1.5rem; }
    .why-title { font-family:var(--font-heading); font-size:1.15rem; font-weight:700; color:var(--gray-900); margin-bottom:1rem; }
    .why-desc { font-size:0.95rem; color:var(--gray-600); line-height:1.5; }

    /* ═══════ POSTER CARDS ═══════ */
    .poster-card { display:flex; align-items:stretch; flex-wrap:wrap; }
    .poster-graphic { padding:4rem 2rem; border-right:1px solid rgba(0,0,0,0.05); }
    .poster-text-content { padding:4rem 4rem 4rem 2rem; }
    .poster-left-content { padding:4rem 2rem 4rem 4rem; }
    .poster-right-stats { padding:4rem 4rem 4rem 2rem; }
    @media(max-width:992px){ .poster-graphic,.poster-text-content,.poster-left-content,.poster-right-stats{padding:3rem 2rem!important} .poster-graphic{border-right:none;border-bottom:1px solid rgba(0,0,0,0.05)} }
    .cyber-stat-card:hover { transform:translateX(10px); background:rgba(255,255,255,0.15)!important; }

    /* ═══════ TESTIMONIALS ═══════ */
    .testimonials-section { padding:0; }
    .testimonials-section h2 { color:var(--gray-900); margin-bottom:2.5rem; font-size:2.2rem; font-family:var(--font-heading); font-weight:800; text-align:left; }
    .testimonials-grid { display:grid; grid-template-columns:1fr 1fr; gap:2rem; }
    .testimonial-card { background:#FFF; border:1px solid rgba(0,0,0,0.08); border-radius:12px; padding:2.5rem; display:flex; flex-direction:column; height:100%; box-shadow:0 4px 15px rgba(0,0,0,0.03); transition:transform .3s,box-shadow .3s; }
    .testimonial-card:hover { transform:translateY(-5px); box-shadow:0 12px 30px rgba(0,0,0,0.08); }
    .testimonial-content-wrapper { display:flex; gap:1.2rem; flex-grow:1; }
    .quote-icon { font-size:2rem; color:rgba(0,92,117,0.15); margin-top:-5px; }
    .testimonial-text { font-size:1.05rem; color:var(--gray-700); line-height:1.6; margin-bottom:1rem; }
    .testimonial-divider { border:none; border-top:1px solid rgba(0,0,0,0.06); margin:2rem 0 1.5rem; }
    .testimonial-footer { display:flex; justify-content:space-between; align-items:center; }
    .testimonial-author { display:flex; align-items:center; gap:15px; }
    .author-avatar { width:55px; height:55px; border-radius:50%; object-fit:cover; border:2px solid var(--white); box-shadow:0 4px 10px rgba(0,0,0,0.1); }
    .author-info { display:flex; flex-direction:column; }
    .author-name { font-weight:700; color:var(--gray-900); font-size:1.05rem; }
    .author-location { font-size:0.85rem; color:var(--gray-500); }
    .author-position-badge { font-size:0.8rem; color:var(--primary); background-color:rgba(0,92,117,0.08); padding:4px 10px; border-radius:6px; margin-top:6px; font-weight:600; display:inline-block; align-self:flex-start; }
    .testimonial-company-logo { height:35px; object-fit:contain; }
    @media(max-width:992px){ .testimonials-grid{grid-template-columns:1fr} }

    /* ═══════ FAQ ═══════ */
    .faq-section { padding:0; }
    .faq-section h2 { color:var(--gray-900); margin-bottom:2.5rem; font-size:2.2rem; font-family:var(--font-heading); font-weight:800; text-align:left; }
    .accordion { margin-top:20px; }
    .accordion-item { border:1px solid rgba(0,0,0,0.08); border-radius:12px; margin-bottom:15px; overflow:hidden; box-shadow:0 4px 15px rgba(0,0,0,0.02); }
    .accordion-header { width:100%; text-align:left; padding:1.2rem 1.5rem; background-color:var(--white); border:none; font-family:var(--font-heading); font-size:1.1rem; font-weight:700; color:var(--gray-900); cursor:pointer; display:flex; justify-content:space-between; align-items:center; transition:background-color .3s; }
    .accordion-header:hover, .accordion-header.active { background-color:var(--gray-50); color:var(--primary); }
    .accordion-content { max-height:0; overflow:hidden; transition:max-height .3s ease-out,padding .3s; background-color:var(--gray-50); }
    .accordion-item.active .accordion-content { padding:1.5rem; border-top:1px solid rgba(0,0,0,0.05); max-height:2000px; }
    .accordion-content p { color:var(--gray-700); line-height:1.6; margin:0; }

    /* ═══════ PRICE BANNER ═══════ */
    .price-highlight-banner { margin-top:3rem; background:linear-gradient(to right,rgba(0,92,117,0.03),rgba(190,19,0,0.03)); border:1px solid rgba(0,92,117,0.1); border-radius:var(--radius-lg); padding:2rem 2.5rem; display:flex; align-items:center; gap:1.5rem; width:100%; }
    .phb-icon { width:56px; height:56px; border-radius:50%; background:rgba(190,19,0,0.1); color:var(--secondary); display:flex; align-items:center; justify-content:center; font-size:1.5rem; flex-shrink:0; }
    .phb-content h3 { font-family:var(--font-heading); font-size:1.25rem; font-weight:700; color:var(--gray-900); margin-bottom:0.5rem; }
    .phb-content p { font-size:1rem; color:var(--gray-700); line-height:1.5; margin:0; }

    /* ═══════ COURSE DETAIL HERO ═══════ */
    .hero-course { background-color:var(--hero-bg); background-image:var(--hero-bg-gradient); color:var(--white); padding:40px 0 80px; position:relative; overflow:hidden; }
    .hero-pattern { position:absolute; top:0; left:0; width:100%; height:100%; overflow:hidden; z-index:0; pointer-events:none; }
    .stripe-bg { position:absolute; top:0; right:0; width:150vw; height:100%; max-width:2000px; }
    .wave { animation-timing-function:ease-in-out; animation-iteration-count:infinite; animation-direction:alternate; }
    .wave1 { animation-name:waveMotion1; animation-duration:12s; }
    .wave2 { animation-name:waveMotion2; animation-duration:15s; }
    .wave3 { animation-name:waveMotion3; animation-duration:18s; }
    .wave4 { animation-name:waveMotion1; animation-duration:10s; animation-delay:-5s; }
    @keyframes waveMotion1 { 0%{transform:translateY(0) scaleY(1)} 100%{transform:translateY(-30px) scaleY(1.05)} }
    @keyframes waveMotion2 { 0%{transform:translateY(0) scaleY(1)} 100%{transform:translateY(40px) scaleY(0.95)} }
    @keyframes waveMotion3 { 0%{transform:translateY(0) scaleX(1)} 100%{transform:translateY(-20px) scaleX(1.02)} }
    .hero-container { position:relative; z-index:1; }
    .breadcrumbs { font-size:0.9rem; margin-top:15px; margin-bottom:30px; color:#A0AAB2; }
    .breadcrumbs a { color:#A0AAB2; text-decoration:none; }
    .breadcrumbs a:hover { color:var(--white); text-decoration:underline; }
    .breadcrumbs i { font-size:0.7rem; margin:0 8px; }
    .breadcrumbs span { color:var(--white); font-weight:500; }
    .hero-text { width:calc(100% - 420px); flex:0 0 auto; }
    .hero-course h1 { color:var(--white); font-size:3.2rem; font-weight:800; line-height:1.2; margin-bottom:20px; }
    .tagline { font-size:1.2rem; color:#E0E0E0; margin-bottom:30px; max-width:90%; }
    .hero-stats { display:flex; gap:25px; margin-bottom:35px; }
    .stat { display:flex; align-items:center; gap:8px; font-size:0.95rem; font-weight:500; }
    .stat i { color:#FFC107; }
    .hero-badges { display:flex; gap:30px; margin-top:40px; align-items:center; }
    .badge-item { display:flex; flex-direction:column; gap:6px; }
    .badge-label { font-size:0.75rem; color:#A0AAB2; text-transform:uppercase; letter-spacing:1px; font-weight:600; }
    .badge-item img { height:50px; object-fit:contain; background:#FFF; padding:10px 15px; border-radius:8px; box-shadow:0 4px 15px rgba(0,0,0,0.2); }
    .hero-content { display:flex; justify-content:space-between; align-items:center; gap:40px; margin-top:30px; }
    .hero-info-box { width:380px; flex:0 0 auto; background:rgba(255,255,255,0.05); backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,0.15); border-radius:16px; padding:25px; box-shadow:0 8px 32px rgba(0,0,0,0.2); }
    /* Hero price card (relocated pricing) */
    .hero-price-card { width:380px; flex:0 0 auto; background:var(--white); border-radius:16px; padding:22px; box-shadow:0 20px 50px rgba(0,0,0,0.25); border-top:5px solid var(--secondary); }
    .hero-price-card .btn-primary { font-size:1.05rem; padding:14px; }
    .hero-price-card .price-guarantee { text-align:center; margin-top:12px; font-size:0.85rem; color:var(--gray-500); }
    .hero-price-card .price-guarantee i { margin-right:5px; color:var(--primary); }
    .info-grid { display:grid; grid-template-columns:1fr 1fr; gap:16px; }
    .info-item { display:flex; align-items:flex-start; gap:12px; }
    .delivery-item, .score-item { grid-column:span 2; }
    .info-item i { color:var(--secondary); font-size:1.1rem; margin-top:2px; background:rgba(255,255,255,0.95); width:34px; height:34px; display:flex; align-items:center; justify-content:center; border-radius:10px; box-shadow:0 2px 8px rgba(0,0,0,0.15); flex-shrink:0; }
    .info-text { display:flex; flex-direction:column; }
    .info-text .label { font-size:0.75rem; color:#A0AAB2; text-transform:uppercase; letter-spacing:0.5px; margin-bottom:3px; font-weight:600; }
    .info-text .value { font-size:0.95rem; font-weight:600; color:var(--white); line-height:1.3; }
    .info-text .value small { font-size:0.75rem; font-weight:400; opacity:0.8; display:block; margin-top:2px; }
    .info-divider { grid-column:span 2; text-align:center; position:relative; margin:15px 0 5px; }
    .info-divider::before { content:''; position:absolute; top:50%; left:0; right:0; height:1px; background:rgba(255,255,255,0.15); z-index:1; }
    .info-divider span { position:relative; z-index:2; background:var(--hero-bg); padding:4px 12px; font-size:0.75rem; color:var(--white); font-weight:700; text-transform:uppercase; letter-spacing:1px; border-radius:20px; border:1px solid rgba(255,255,255,0.1); }

    /* ═══════ COURSE DETAIL LAYOUT ═══════ */
    .main-layout { display:flex; gap:40px; margin-top:-40px; padding-bottom:80px; position:relative; z-index:2; }
    .content-left { width:calc(100% - 420px); flex:0 0 auto; }
    .sidebar-right { width:380px; flex:0 0 auto; }
    .section-card { background-color:var(--white); border-radius:12px; padding:40px; margin-bottom:30px; box-shadow:0 4px 20px rgba(0,0,0,0.05); }
    .section-card h2 { font-size:1.8rem; margin-bottom:20px; color:var(--primary); }
    .section-card p { margin-bottom:15px; font-size:1.05rem; color:#4A4A4A; }

    /* Key Features */
    .key-features-list { display:flex; flex-direction:column; gap:30px; margin-top:25px; }
    .key-feature { display:flex; gap:20px; align-items:flex-start; }
    .feature-icon { background-color:#E8F1F3; color:var(--primary); width:60px; height:60px; border-radius:12px; display:flex; align-items:center; justify-content:center; font-size:1.8rem; flex-shrink:0; transition:transform .3s,background-color .3s; }
    .key-feature:hover .feature-icon { transform:translateY(-3px); background-color:var(--primary); color:#FFF; }
    .feature-content h3 { font-size:1.3rem; margin-bottom:12px; color:var(--primary); }
    .feature-content ul { list-style-type:none; padding:0; }
    .feature-content li { margin-bottom:10px; color:#4A4A4A; display:flex; align-items:flex-start; gap:10px; font-size:1.05rem; }
    .feature-content li::before { content:"\f00c"; font-family:"Font Awesome 6 Free"; font-weight:900; color:var(--success); margin-top:4px; font-size:0.9rem; }

    /* Learning Grid */
    .learning-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:25px; margin-top:25px; }
    .learning-item { border:1px solid #E0E0E0; border-radius:8px; padding:20px; transition:transform .3s,box-shadow .3s; }
    .learning-item:hover { transform:translateY(-5px); box-shadow:0 10px 20px rgba(0,0,0,0.08); border-color:var(--primary); }
    .learning-item i { font-size:2rem; color:var(--primary); margin-bottom:15px; }
    .learning-item h3 { font-size:1.2rem; margin-bottom:10px; }
    .learning-item p { font-size:0.95rem; margin-bottom:0; }

    /* Tools Grid (course detail) */
    .tools-grid-detail { display:grid; grid-template-columns:repeat(auto-fit,minmax(90px,1fr)); gap:30px 15px; margin-top:25px; }
    .tool-item { display:flex; flex-direction:column; align-items:center; gap:12px; padding:15px 10px; border-radius:12px; transition:transform .3s,background-color .3s,box-shadow .3s; }
    .tool-item:hover { transform:translateY(-5px); background-color:#F8F9FA; box-shadow:0 8px 24px rgba(0,0,0,0.05); }
    .tool-item img { width:48px; height:48px; object-fit:contain; }
    .tool-item span { font-size:0.8rem; color:var(--gray-900); text-align:center; font-weight:600; }

    /* Custom Accordion */
    .custom-header { padding:20px 24px!important; }
    .header-left { display:flex; align-items:center; gap:12px; }
    .header-number { font-family:var(--font-heading); font-weight:800; font-size:1.2rem; color:var(--primary); opacity:0.4; min-width:28px; }
    .header-icon { color:var(--primary); font-size:1.1rem; }
    .header-text { font-size:1.1rem; }
    .toggle-icon { color:var(--gray-400); transition:transform .3s; }
    .accordion-item.active .toggle-icon { transform:rotate(45deg); }

    /* Check & Bullet Lists */
    .check-list { list-style:none; padding:0; }
    .check-list li { padding:8px 0; color:#4A4A4A; display:flex; align-items:flex-start; gap:10px; }
    .check-list li::before { content:"\f00c"; font-family:"Font Awesome 6 Free"; font-weight:900; color:var(--success); margin-top:3px; font-size:0.85rem; flex-shrink:0; }
    .bullet-list { padding-left:20px; }
    .bullet-list li { margin-bottom:10px; color:#4A4A4A; }

    /* Package Grid */
    .package-grid { display:grid; grid-template-columns:1fr 1fr; gap:20px; margin-top:15px; }
    @media(max-width:768px){ .package-grid{grid-template-columns:1fr} }
    .package-card { border:1px solid #E0E0E0; border-radius:12px; padding:24px; position:relative; }
    .package-card.featured { border-color:var(--primary); box-shadow:0 4px 20px rgba(0,92,117,0.1); }
    .package-badge { position:absolute; top:-12px; left:20px; background:var(--primary); color:#FFF; font-size:0.75rem; font-weight:700; padding:4px 12px; border-radius:20px; }
    .package-card h4 { font-size:1.15rem; margin-bottom:15px; color:var(--primary); }
    .certifications { margin-top:15px; padding-top:15px; border-top:1px solid #E0E0E0; font-size:0.9rem; color:#4A4A4A; }

    /* Partner Highlight */
    .partner-highlight { display:flex; gap:15px; align-items:flex-start; background:#F0F7F9; border:1px solid rgba(0,92,117,0.15); border-radius:12px; padding:20px 24px; }
    .partner-highlight i { color:var(--primary); font-size:1.5rem; margin-top:2px; }
    .partner-highlight strong { display:block; margin-bottom:4px; color:var(--primary); font-size:1.05rem; }
    .partner-highlight p { margin:0; font-size:0.95rem; color:#4A4A4A; }

    /* Career Section */
    .career-tabs { display:flex; gap:8px; margin-bottom:24px; flex-wrap:wrap; }
    .career-tab { padding:10px 20px; border:1px solid #E0E0E0; border-radius:8px; font-size:0.9rem; font-weight:600; color:#666; transition:all .3s; }
    .career-tab.active { background:var(--primary); color:#FFF; border-color:var(--primary); }
    .career-content-wrapper { position:relative; }
    .career-content { display:none; }
    .career-content.active { display:flex; gap:40px; flex-wrap:wrap; animation:fadeIn .3s ease; }
    .career-left { flex:1.5; min-width:300px; }
    .career-right { flex:1; min-width:200px; }
    .role-desc { font-size:1.05rem; color:#4A4A4A; line-height:1.6; margin-bottom:20px; }
    .hiring-heading { font-size:1rem; color:var(--gray-900); margin-bottom:12px; }
    .hiring-logos { display:flex; gap:20px; flex-wrap:wrap; align-items:center; }
    .company-logo { height:28px; object-fit:contain; opacity:0.7; transition:opacity .3s; }
    .company-logo:hover { opacity:1; }
    .salary-chart { display:flex; align-items:flex-end; gap:20px; height:180px; padding:20px 0; }
    .bar-group { display:flex; flex-direction:column; align-items:center; gap:8px; flex:1; }
    .bar { width:100%; border-radius:8px 8px 0 0; transition:height .6s ease; }
    .min-salary .bar { background:linear-gradient(to top,#E8F1F3,#B8D8E0); }
    .avg-salary .bar { background:linear-gradient(to top,var(--primary),var(--primary-light)); }
    .max-salary .bar { background:linear-gradient(to top,#FFE8E5,var(--secondary)); }
    .salary-val { font-family:var(--font-heading); font-weight:800; font-size:1.1rem; color:var(--gray-900); }
    .salary-label { font-size:0.8rem; color:#666; font-weight:600; }

    /* Sidebar Enquiry Form */
    .enquiry-card { border-top-color:var(--primary); scroll-margin-top:90px; }
    .enquiry-head { margin-bottom:20px; }
    .enquiry-title { font-family:var(--font-heading); font-size:1.3rem; font-weight:800; color:var(--gray-900); margin-bottom:6px; }
    .enquiry-subtitle { font-size:0.9rem; color:var(--gray-500); line-height:1.5; }
    .enquiry-form { display:flex; flex-direction:column; gap:12px; }
    .form-field { position:relative; display:flex; align-items:center; }
    .form-field > i { position:absolute; left:14px; top:15px; color:var(--gray-400); font-size:0.85rem; pointer-events:none; }
    .form-field input, .form-field textarea { width:100%; padding:13px 14px 13px 38px; border:1px solid var(--gray-300); border-radius:8px; font-family:var(--font-body); font-size:0.9rem; color:var(--gray-900); background:var(--gray-50); outline:none; transition:border-color .15s,box-shadow .15s,background .15s; }
    .form-field--area { display:block; }
    .form-field textarea { padding-left:14px; resize:vertical; min-height:72px; }
    .form-field input::placeholder, .form-field textarea::placeholder { color:var(--gray-400); }
    .form-field input:focus, .form-field textarea:focus { border-color:var(--primary); box-shadow:0 0 0 3px rgba(0,92,117,0.08); background:var(--white); }
    .enquiry-form .btn-primary { font-size:1.05rem; margin-top:4px; }
    .enquiry-note { display:flex; align-items:center; justify-content:center; gap:6px; font-size:0.78rem; color:var(--gray-400); margin-top:4px; }
    .enquiry-success { text-align:center; padding:24px 8px; }
    .enquiry-success > i { font-size:2.6rem; color:var(--success); margin-bottom:12px; }
    .enquiry-success h4 { font-family:var(--font-heading); font-size:1.2rem; color:var(--gray-900); margin-bottom:6px; }
    .enquiry-success p { font-size:0.9rem; color:var(--gray-500); }
    /* Sidebar Course Info card */
    .info-card { background:var(--white); border:1px solid var(--gray-200); border-radius:12px; padding:24px; margin-top:24px; box-shadow:0 4px 20px rgba(0,0,0,0.04); }
    .info-card-title { font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--gray-900); margin-bottom:14px; }
    .info-card-list { display:flex; flex-direction:column; }
    .info-card-list li { display:flex; align-items:center; justify-content:space-between; gap:12px; padding:10px 0; border-bottom:1px solid var(--gray-100); font-size:0.9rem; }
    .info-card-list li:last-child { border-bottom:none; }
    .info-card-list span { color:var(--gray-500); }
    .info-card-list strong { color:var(--gray-900); font-weight:700; text-align:right; }

    /* Sidebar Sticky Card */
    .sticky-card { position:sticky; top:40px; background-color:var(--white); border-radius:12px; padding:30px; box-shadow:0 10px 30px rgba(0,0,0,0.1); border-top:5px solid var(--secondary); max-height:calc(100vh - 80px); overflow-y:auto; }
    .card-header { display:flex; justify-content:center; align-items:center; margin-bottom:20px; width:100%; }
    .lowest-price-tag { background-color:#FFEBEE; color:var(--secondary); padding:8px 12px; border-radius:6px; font-size:0.85rem; font-weight:700; text-transform:uppercase; text-align:center; width:100%; letter-spacing:0.5px; }
    .offer-ribbon { background:var(--secondary); color:var(--white); padding:9px 12px; border-radius:6px; font-size:0.85rem; font-weight:800; text-transform:uppercase; text-align:center; width:100%; letter-spacing:0.5px; box-shadow:0 4px 12px rgba(190,19,0,0.25); }
    .offer-ribbon i { margin-right:5px; }
    .price-card-label { display:block; font-size:0.72rem; font-weight:700; color:var(--gray-400); text-transform:uppercase; letter-spacing:0.6px; margin-bottom:8px; }
    .pricing-tabs { display:flex; gap:6px; background:#F0F2F5; border-radius:10px; padding:4px; margin-bottom:12px; }
    .pricing-tab { flex:1; min-width:0; padding:8px 8px; border:none; background:transparent; border-radius:7px; cursor:pointer; transition:background .2s,box-shadow .2s; font-family:var(--font-heading); display:flex; flex-direction:column; align-items:center; gap:3px; }
    .pricing-tab.active { background:#FFF; box-shadow:0 2px 6px rgba(0,0,0,0.1); }
    .ptab-name { font-size:0.8rem; font-weight:700; color:var(--gray-500); line-height:1.2; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; max-width:100%; }
    .pricing-tab.active .ptab-name { color:var(--primary); }
    .ptab-badge { font-size:0.62rem; font-weight:800; background:var(--secondary); color:var(--white); padding:1px 7px; border-radius:100px; letter-spacing:0.2px; }
    .pricing-content { display:none; background:#F8F9FA; padding:14px 16px; border-radius:10px; border:1px solid #E8ECEE; border-left:4px solid var(--primary); }
    .pricing-content.active { display:block; }
    .price-main { display:flex; align-items:baseline; gap:10px; flex-wrap:wrap; }
    .price-now { font-family:var(--font-heading); font-size:2rem; font-weight:800; color:var(--gray-900); line-height:1; letter-spacing:-0.02em; }
    .price-was { text-decoration:line-through; color:var(--gray-400); font-size:1.05rem; }
    .price-meta { display:flex; align-items:center; justify-content:space-between; gap:10px; margin-top:8px; flex-wrap:wrap; }
    .tax-info { font-size:0.74rem; color:var(--gray-500); font-weight:500; }
    .price-save { display:inline-flex; align-items:center; gap:5px; font-size:0.76rem; font-weight:800; color:var(--secondary); background:rgba(190,19,0,0.08); padding:3px 9px; border-radius:100px; }
    .price-lowest { display:inline-flex; align-items:center; gap:5px; font-size:0.74rem; font-weight:700; color:var(--primary); }
    .features-list { list-style:none; margin:16px 0 18px; }
    .features-list li { margin-bottom:12px; display:flex; align-items:center; gap:10px; color:#4A4A4A; font-weight:500; }
    .features-list i { color:var(--success); }
    .features-list--compact { display:grid; grid-template-columns:1fr 1fr; gap:9px 14px; margin:14px 0 18px; }
    .features-list--compact li { margin-bottom:0; font-size:0.84rem; gap:7px; }
    .features-list--compact i { font-size:0.78rem; }
    .btn-primary { display:block; width:100%; padding:16px; background-color:var(--secondary); color:var(--white); border:none; border-radius:8px; font-family:var(--font-heading); font-size:1.2rem; font-weight:700; cursor:pointer; transition:background-color .3s,transform .2s; text-transform:uppercase; letter-spacing:0.5px; text-align:center; text-decoration:none; }
    .btn-primary:hover { background-color:#9D0F00; transform:translateY(-2px); box-shadow:0 4px 12px rgba(190,19,0,0.3); }

    /* Profice Grid */
    .profice-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(250px,1fr)); gap:25px; margin-top:25px; }
    .profice-item { border:1px solid #D1D9E0; border-radius:8px; padding:20px; background-color:#FAFAFA; }
    .profice-item i { font-size:2rem; color:var(--primary); margin-bottom:15px; }
    .profice-item h3 { font-size:1.2rem; margin-bottom:10px; }
    .profice-item p { font-size:0.95rem; margin-bottom:0; color:#4A4A4A; }

    /* ═══════ ALL YOU NEED TO KNOW ═══════ */
    .ayntk-section { background:var(--gray-50); }
    .ayntk-section h2 { color:var(--primary); font-size:1.8rem; margin-bottom:24px; }
    .ayntk-accordion { display:flex; flex-direction:column; gap:14px; }
    .ayntk-item { border-radius:12px; overflow:hidden; background:var(--white); border-left:4px solid var(--primary); box-shadow:0 2px 8px rgba(0,0,0,0.04); transition:box-shadow .3s; }
    .ayntk-item:hover { box-shadow:0 4px 16px rgba(0,0,0,0.07); }
    .ayntk-item--exam { border-left-color:var(--secondary); }
    .ayntk-header { width:100%; display:flex; align-items:center; gap:14px; padding:18px 24px; background:transparent; border:none; cursor:pointer; font-family:var(--font-body); transition:background .2s; }
    .ayntk-header:hover { background:var(--gray-50); }
    .ayntk-number { font-family:var(--font-heading); font-weight:800; font-size:1.2rem; color:var(--primary); opacity:0.5; min-width:28px; flex-shrink:0; }
    .ayntk-number--accent { color:var(--secondary); }
    .ayntk-icon { font-size:1.1rem; color:var(--primary); flex-shrink:0; }
    .ayntk-icon--accent { color:var(--secondary); }
    .ayntk-title { font-family:var(--font-heading); font-size:1.05rem; font-weight:700; color:var(--gray-900); flex:1; text-align:left; }
    .ayntk-title--accent { color:var(--secondary); }
    .ayntk-toggle { color:var(--gray-400); font-size:0.9rem; transition:transform .3s; flex-shrink:0; }
    .ayntk-item.active .ayntk-toggle { transform:rotate(45deg); }
    .ayntk-item.active .ayntk-header { background:var(--gray-50); }
    .ayntk-content { max-height:0; overflow:hidden; transition:max-height .35s ease-out, padding .35s; }
    .ayntk-item.active .ayntk-content { max-height:1200px; padding:0 24px 24px 66px; }
    .ayntk-content p, .ayntk-content ul, .ayntk-content ol { color:var(--gray-700); font-size:1rem; line-height:1.7; margin-bottom:8px; }
    .ayntk-content ul, .ayntk-content ol { padding-left:20px; }
    .ayntk-content li { margin-bottom:6px; }
    .ayntk-partner-note { display:flex; gap:16px; align-items:flex-start; background:rgba(190,19,0,0.04); border:1px solid rgba(190,19,0,0.15); border-radius:12px; padding:20px 24px; margin-top:24px; }
    .ayntk-partner-note > i { color:var(--secondary); font-size:1.4rem; margin-top:2px; flex-shrink:0; }
    .ayntk-partner-note strong { display:block; margin-bottom:4px; color:var(--secondary); font-family:var(--font-heading); font-size:1.05rem; font-weight:700; }
    .ayntk-partner-note p { margin:0; font-size:0.95rem; color:var(--gray-700); line-height:1.5; }

    /* ═══════ RESPONSIVE ═══════ */
    @media(max-width:1024px){
        .hero-banner{height:350px}
        .hero-card{left:32px;max-width:380px;padding:28px}
        .hero-title{font-size:1.6rem}
        .premium-tools-showcase{display:none}
        .hero-text{width:100%}
        .hero-content{flex-direction:column}
        .hero-info-box{width:100%}
        .hero-price-card{width:100%}
        .main-layout{flex-direction:column}
        .content-left{width:100%}
        .sidebar-right{width:100%}
    }
    @media(max-width:768px){
        .nav-links{display:none}
        .nav-search{max-width:none}
        .mobile-toggle{display:flex}
        .nav-phone-info{display:none}
        .nav-phone{padding:6px}
        .hero-banner{height:auto}
        .hero-image-area{position:relative;height:220px}
        .hero-card{position:relative;left:auto;top:auto;transform:none;max-width:100%;border-radius:0;box-shadow:none;padding:24px}
        .course-cards{grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
        .hero-course h1{font-size:2rem}
    }
    @media(max-width:480px){
        .strip-text{font-size:0.75rem}
        .hero-title{font-size:1.4rem}
        .course-cards{grid-template-columns:1fr}
    }

/* ════════════════════════════════════════════════════════════
   WordPress conflict hardening
   `body.profice .x` (specificity 0,2,1) beats flat plugin rules
   like `.btn-primary` / `.container` / `.hero-text` (0,1,0).
   ════════════════════════════════════════════════════════════ */
body.profice .container { max-width:1340px; width:100%; }
body.profice .btn-primary { background-color:var(--secondary); color:var(--white); }
body.profice .btn-primary:hover { background-color:var(--secondary-hover); }
body.profice .hero-course h1 { font-size:3.2rem; line-height:1.2; color:var(--white); }
body.profice .hero-content { display:flex; justify-content:space-between; align-items:center; gap:40px; }
body.profice .hero-text { width:calc(100% - 420px); flex:0 0 auto; }
body.profice .hero-info-box,
body.profice .hero-price-card { width:380px; flex:0 0 auto; }
body.profice .breadcrumbs { display:block; }
body.profice .breadcrumbs span { color:var(--white); }
@media(max-width:1024px){
    body.profice .hero-content { flex-direction:column; }
    body.profice .hero-text,
    body.profice .hero-info-box,
    body.profice .hero-price-card { width:100%; }
    body.profice .hero-course h1 { font-size:2rem; }
}

/* page background + pricing tab (plugin conflict overrides) */
body.profice { background:#FFFFFF; }
body.profice .pricing-tabs { background:#F0F2F5; }
body.profice .pricing-tab { background:transparent; box-shadow:none; }
body.profice .pricing-tab.active { background:#FFFFFF; box-shadow:0 2px 6px rgba(0,0,0,.1); }
body.profice .pricing-tab .ptab-name { color:var(--gray-500); }
body.profice .pricing-tab.active .ptab-name { color:var(--primary); }

/* overlap course body over hero (force past plugin margin resets) */
body.profice .main-layout { margin-top:-40px !important; position:relative; z-index:2; }
