/*
Theme Name: BizCheck
Author: Wong Ing Sing
Description: A simple assessment theme for BizCheck organizational health.
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: bizcheck
*/
/* Base Styles */
/* ==========================================================================
   CSS Variables (Custom Properties)
   ========================================================================== */
:root {
    /* Colors */
    --primary: #1a4b8c;
    --primary-dark: #0d3a73;
    --secondary: #ff6b35;
    --secondary-light: #ff8c5a;
    --light: #f8f9fa;
    --dark: #212529;
    --gray: #6c757d;
    --light-gray: #e9ecef;
    --border: #dee2e6;

    /* Spacing */
    --space-xs: 0.25rem;
    --space-sm: 0.5rem;
    --space-md: 1rem;
    --space-lg: 1.5rem;
    --space-xl: 2rem;
    --space-xxl: 3rem;

    /* Typography */
    --font-size-sm: 0.875rem;
    --font-size-base: 1rem;
    --font-size-lg: 1.125rem;
    --font-size-xl: 1.25rem;
    --font-size-xxl: 1.5rem;
    --font-size-xxxl: 2rem;

    /* Effects */
    --shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    --radius: 8px;
    --transition: all 0.3s ease;
}

/* ==========================================================================
   Reset and Base Styles
   ========================================================================== */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
    line-height: 1.6;
    color: var(--dark);
    background-color: #f5f7fa;
}

a {
    text-decoration: none;
    color: var(--primary);
    transition: var(--transition);
}

a:hover {
    color: var(--secondary);
}

img {
    max-width: 100%;
    height: auto;
}

ul,
ol {
    list-style-position: inside;
}

p {
    text-align: justify;
    font-size: 16px;
}

h3 {
    font-size: 22px;
}

/* ==========================================================================
   Typography
   ========================================================================== */
h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: var(--space-lg);
}

h1 {
    font-size: var(--font-size-xxxl);
    color: var(--primary);
}

h2 {
    font-size: var(--font-size-xxl);
    color: var(--primary);
}

h3 {
    font-size: var(--font-size-xl);
    color: var(--primary);
}

p {
    margin-bottom: var(--space-md);
    font-size: var(--font-size-base);
}

/* ==========================================================================
   Layout Components
   ========================================================================== */
.container {
    width: 100%;
    max-width: 1200px;
    margin: 0px auto;
    padding: 10px;
}

section {
    padding: 20px;
}

/* Forgot Password Link */
.forgot-password {
    font-size: 14px;
    color: #007bff;
    text-decoration: none;
}

.forgot-password:hover {
    text-decoration: underline;
}

/* Register Link */
.register-link {
    background-color: #0078d7;
    /* soft Microsoft blue */
    color: white;
    border: none;
    padding: 10px 20px;
    border-radius: 6px;
    cursor: pointer;
    font-size: 14px;
    transition: background-color 0.3s ease;
}

.register-link:hover {
    background-color: #005a9e;
}

.back-link {
    display: block;
    margin-top: 10px;
    color: #0078d7;
    text-decoration: none;
}

.back-link:hover {
    text-decoration: underline;
}

.btn-login {
    background-color: #f8f9fa;
    border: 1px solid #333;
    color: #000;
    padding: 6px 14px;
    border-radius: 4px;
    font-size: 13px;
    cursor: pointer;
    transition: all 0.3s ease;
}

.btn-login:hover {
    background-color: #e6e6e6;
    border-color: #000;
}

.tool-card {
    background: white;
    border-radius: 10px;
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
    padding: 40px;
    flex: 1;
    min-width: 300px;
    max-width: 500px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.section-title {
    text-align: center;
    margin-bottom: 60px;
}

.section-title h2 {
    font-size: 2.5rem;
    color: var(--primary);
    margin-bottom: 15px;
}

.section-title p {
    color: var(--text-light);
    max-width: 700px;
    margin: 0 auto;
}



.tool-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.12);
}

.tool-icon {
    width: 80px;
    height: 80px;
    background: var(--primary);
    color: white;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    font-size: 2rem;
}

.tool-card.horizon .tool-icon {
    background: var(--secondary);
}

.tool-card.navigator .tool-icon {
    background: var(--accent);
}

.tool-card h3 {
    font-size: 1.8rem;
    margin-bottom: 15px;
    text-align: center;
    color: var(--primary);
}

.tool-card p {
    color: var(--text-light);
    margin-bottom: 20px;
}

.tool-features {
    list-style-type: none;
    margin: 25px 0;
}

.tool-features li {
    padding: 8px 0;
    position: relative;
    padding-left: 25px;
}

.tool-features li:before {
    content: "✓";
    color: var(--accent);
    position: absolute;
    left: 0;
    font-weight: bold;
}

.tool-question {
    background: rgba(52, 152, 219, 0.1);
    padding: 15px;
    border-radius: 8px;
    margin: 20px 0;
    font-style: italic;
    border-left: 4px solid var(--secondary);
}

.cta-section {
    background: var(--light gray);
    text-align: center;
    padding: 80px 0;
}

.cta-section h2 {
    font-size: 22px;
    margin-bottom: 20px;
}

.cta-section p {
    max-width: 700px;
    margin: 0 auto 30px;
}

.gain-list {
    display: flex;
    flex-direction: column;
    gap: 25px;
    padding: 10px;
}

.gain-item {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    background: #fff;
    border-radius: 8px;
    overflow: hidden;
    padding: 10px;
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.05);
    margin-bottom: 10px;
}

.gain-content h3 {
    margin: 0 0 10px 0;
    color: #004080;
    font-size: 1.2rem;
}

/* Title background bar */
.gain-header {
    display: flex;
    align-items: center;
    gap: 15px;
    width: 100%;
    background: linear-gradient(90deg, #1e88e5, #0d47a1);
    padding: 12px 18px;
    box-sizing: border-box;
    /* ensures equal width including padding */
    color: #fff;
}

.gain-header h3 {
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    margin: 0;
}

/* Paragraph content */
.gain-body {
    padding: 10px;
    color: #333;
    line-height: 1.7;
    text-align: justify;
}

.gain-body strong {
    color: #0d47a1;
}

.gain-icon {
    font-size: 2rem;
    color: #fff;
    flex-shrink: 0;
}

.work-item {
    display: flex;
    background: #fff;
    justify-content: space-between;
    gap: 30px;
    padding: 20px;
    border-radius: 8px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
    margin-bottom: 20px;
}

.work-text {
    flex: 1;
    width: 50%;
    line-height: 1.7;
}

.work-content h3 {
    margin: 0 0 10px 0;
    color: #004080;
    font-size: 1.2rem;
}

.work-content p {
    text-align: justify;
}

.work-image {
    flex: 1;
    width: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}

.work-image img {
    width: 100%;
    height: 363px;
    max-width: 400px;
    border-radius: 10px;
    object-fit: cover;
}

.subsection-list {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 30px;
    margin: auto;
}

.subsection-item {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    background: #fff;
    padding: 20px;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.05);
}

.subsection-icon {
    font-size: 2rem;
    color: #004080;
    flex-shrink: 0;
}

.subsection i {
    font-size: 2rem;
    color: #004080;
    margin-right: 15px;
}

.subsection-header {
    display: flex;
    gap: 12px;
    background: linear-gradient(90deg, #1e88e5, #0d47a1);
    color: #fff;
    padding: 16px 22px;
}

.subsection-header i {
    font-size: 1.6rem;
    color: #fff;

}

.subsection-header h3 {
    font-weight: 700;
    margin: 0;
    color: #fff;
}

.subsection-content p {
    margin-bottom: 10px;
    text-align: justify;
}

.subsection-content ul {
    list-style: none;
    padding-left: 0;
    margin: 15px 0;
}

.subsection-content ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
    line-height: 1.5;
    color: #1a1a1a;
}

.subsection-content ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    top: 0;
    color: #004080;
    /* BizCheck blue */
    font-size: 1.2rem;
    font-weight: bold;
}

/* FLEX LAYOUT */
.subsection-sector-flex {
    display: flex;
    margin: 20px;
    align-items: center;
    justify-content: space-between;
    gap: 50px;
    flex-wrap: wrap;
}

/* TEXT AREA */
.subsection-sector-text {
    flex: 1 1 45%;
}

.subsection-sector-text h2 {
    color: #1a3d7c;
    font-size: 2rem;
    margin-bottom: 20px;
    font-weight: 700;
}

.subsection-sector-text p {
    color: #333;
    line-height: 1.6;
    font-size: 1rem;
    margin-bottom: 15px;
}

.subsection-sector-text ul {
    list-style: none;
    padding-left: 0;
    margin: 15px 0;
}

.subsection-sector-text ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
    line-height: 1.5;
    color: #1a1a1a;
}

.subsection-sector-text ul li::before {
    content: "✔";
    position: absolute;
    left: 0;
    top: 0;
    color: #ff6b3c;
    font-weight: bold;
}

/* IMAGE AREA */
.sector-image {
    flex: 1 1 45%;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
}

.sector-image img {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 10px;
    transition: transform 0.4s ease;
}

.sector-image img:hover {
    transform: scale(1.05);
}

.subheading {
    color: #004080;
    font-size: 1.5rem;
    margin-top: 40px;
    text-align: center;
}

.cta-buttons {
    display: flex;
    justify-content: center;
    gap: 20px;
    margin-top: 30px;
    flex-wrap: wrap;
}

.cta-btn {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 10px 20px;
    background: #004080;
    color: #fff;
    text-decoration: none;
    border-radius: 6px;
    transition: background 0.3s;
}

.cta-btn:hover {
    background: #002d5c;
}

/* FAQ */
.faq-section {
    background-image: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/Give-me-a-FAQ-background-with-a-dark-color-3.jpg');
    background-size: fill;
    background-position: center;
    margin-bottom: 20px;
    padding: 20px;
    position: relative;
}

.faq-section::before {
    content: "";
    position: absolute;
    inset: 0;
    z-index: 0;
}

.faq-section h1 {
    position: relative;
    color: #fff;
    z-index: 1;
}

.faq-item {
    background-color: #fff;
    border-radius: 8px;
    box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
    margin-bottom: 20px;
    padding: 20px;
    transition: transform 0.2s;
}

.faq-item:hover {
    transform: translateY(-2px);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.15);
}

.faq-question {
    cursor: pointer;
    font-weight: bold;
    font-size: 22px;
    position: relative;
    padding-right: 30px;
    color: #003366;
}

.faq-question::after {
    content: "\f078";
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    position: absolute;
    right: 0;
    top: 0;
    font-size: 16px;
    transition: transform 0.3s ease;
}

.faq-question.active::after {
    transform: rotate(180deg);
}

.faq-answer {
    display: none;
    margin-top: 15px;
    color: #555;
    font-size: 16px;
}

/* WhatsApp Floating Button */
.whatsapp-float {
    position: fixed;
    width: 60px;
    height: 60px;
    bottom: 40px;
    right: 40px;
    background-color: #25D366;
    color: white;
    border-radius: 50%;
    text-align: center;
    font-size: 30px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
    z-index: 100;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    animation: pulse 2s infinite;
    transition: all 0.3s ease;
}

.whatsapp-float:hover {
    transform: scale(1.1);
    background-color: #1ebc57;
}

/* WhatsApp Pulse Animation */
@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0.6);
    }

    70% {
        box-shadow: 0 0 0 15px rgba(37, 211, 102, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(37, 211, 102, 0);
    }
}

/* Scroll-to-Top Button */
#scrollTopBtn {
    position: fixed;
    bottom: 40px;
    right: 110px;
    /* Adjusted to sit beside WhatsApp */
    width: 50px;
    height: 50px;
    border: none;
    border-radius: 50%;
    background: #f5f8fc;
    color: #333;
    font-size: 18px;
    cursor: pointer;
    opacity: 0;
    visibility: hidden;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);
    transition: all 0.3s ease;
    z-index: 99;
}

/* Show Button when scrolling */
#scrollTopBtn.show {
    opacity: 1;
    visibility: visible;
}

/* Hover effect */
#scrollTopBtn:hover {
    background: #0d47a1;
    color: white;
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(13, 71, 161, 0.3);
}


/* ==========================================================================
   Buttons
   ========================================================================== */
.btn {
    display: inline-block;
    padding: var(--space-md) var(--space-xl);
    background-color: var(--primary);
    color: white;
    border: none;
    border-radius: var(--radius);
    font-weight: 600;
    font-size: var(--font-size-base);
    cursor: pointer;
    transition: var(--transition);
    text-align: center;
}

.btn:hover {
    background-color: var(--primary-dark);
    transform: translateY(-2px);
    box-shadow: var(--shadow);
}

.btn-secondary {
    background-color: var(--secondary);
}

.btn-secondary:hover {
    background-color: var(--secondary-light);
}

.btn-large {
    padding: 20px;
    font-size: 16px;
}

/* ==========================================================================
   Header & Navigation
   ========================================================================== */
/* Header Styles */
/* === HEADER CONTAINER === */
.header-container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    background: #0F1C2E;
    color: #ffffff;
    padding: 12px 40px;
    position: sticky;
    top: 0;
    z-index: 1000;
}

/* === LOGO === */
.logo {
    flex: 0 0 auto;
    /* prevent shrinking */
}

.logo img {
    height: 100px;
    width: auto;
    display: block;
}

/* === MAIN NAVIGATION === */
.main-nav {
    flex: 1;
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 1;
    transition: all 0.3s ease;
}

.nav-links {
    display: flex;
    list-style: none;
    gap: 40px;
    margin: 0;
    padding: 0;
}

.nav-links li {
    position: relative;
}

.nav-links a {
    color: #ffffff;
    font-size: 22px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    padding: 6px 10px;
}

.nav-links a:hover {
    color: #4A90E2;
    background: #ffffff;
}

/* === DROPDOWN MENU === */
.dropdown-menu {
    display: none;
    position: absolute;
    top: 38px;
    left: 0;
    background: #0F1C2E;
    border: 1px solid #1E2A3A;
    min-width: 220px;
    border-radius: 6px;
    z-index: 999;
}

/* Show on hover */
.dropdown:hover .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

/* Show when clicked (adds .active class) */
.dropdown.active .dropdown-menu {
    display: block;
    opacity: 1;
    transform: translateY(0);
}

.dropdown-menu li a {
    display: block;
    color: #ffffff;
    padding: 10px;
    font-size: 16px;
}

.dropdown-menu li a:hover {
    background: #4A90E2;
    color: #fff;
}

/* === HEADER CTA (Login / Profile / Logout Buttons) === */
.header-cta {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 12px;
}

.btn-register {
    border: 1px solid #4A90E2;
    color: #4A90E2;
    background: transparent;
    padding: 6px 16px;
    border-radius: 6px;
    text-decoration: none;
    font-weight: 500;
    transition: 0.3s ease;
    font-size: 22px;
}

.btn-register:hover {
    background: #4A90E2;
    color: #fff;
}

/* === MOBILE MENU BUTTON === */
.mobile-menu {
    display: none;
    font-size: 28px;
    color: white;
    cursor: pointer;
    transition: transform 0.3s ease, color 0.3s ease;
}

/* ====== HAMBURGER ACTIVE STATE ====== */
.mobile-menu.open i {
    transform: rotate(90deg);
    color: #4A90E2;
}

/* === LOGIN MODAL POPUP === */
.login-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0, 0, 0, 0.6);
    justify-content: center;
    align-items: center;
    z-index: 9999;
}

.login-modal.active {
    display: flex;
}

.login-content {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    width: 90%;
    max-width: 400px;
    position: relative;
}

.login-content p {
    color: #000;
}

.close-login {
    position: absolute;
    top: 15px;
    right: 15px;
    background: none;
    border: none;
    font-size: 20px;
    cursor: pointer;

}

.input-box {
    position: relative;
    margin-bottom: 15px;
}

.input-box i {
    position: absolute;
    top: 12px;
    left: 10px;
    color: #888;
}

.input-box input {
    width: 100%;
    padding: 10px 10px 10px 35px;
    border: 1px solid #ccc;
    border-radius: 6px;
}

.login-btn {
    width: 100%;
    background: #0d47a1;
    color: #fff;
    padding: 10px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
}

.login-message {
    background: #fdecea;
    border: 1px solid #f5c6cb;
    padding: 10px;
    border-radius: 5px;
    margin-top: 12px;
    color: #b71c1c;
}

/* --- User Dropdown --- */
/* === Profile Dropdown === */
.user-dropdown {
    position: relative;
    display: inline-block;
}

.dropbtn {
    background: none;
    border: none;
    color: #ff5722;
    /* orange like your theme */
    font-weight: 600;
    font-size: 22px;
    cursor: pointer;
    display: flex;
    align-items: center;
    gap: 6px;
}

.dropbtn i {
    font-size: 18px;
}

.dropdown-menu {
    display: none;
    position: absolute;
    right: 0;
    top: 110%;
    background-color: #0a192f;
    border: 1px solid #1b2940;
    border-radius: 8px;
    list-style: none;
    padding: 8px 0;
    min-width: 180px;
    z-index: 9999;
    box-shadow: 0 4px 10px rgba(0, 0, 0, 0.25);
}

.dropdown-menu li {
    border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.dropdown-menu li:last-child {
    border-bottom: none;
}

.dropdown-menu a {
    color: #fff;
    text-decoration: none;
    padding: 10px 15px;
    display: block;
    transition: background 0.3s ease;
}

.dropdown-menu a:hover {
    background: rgba(255, 255, 255, 0.1);
}

/* Show dropdown when hovered or focused */
.user-dropdown:hover .dropdown-menu,
.user-dropdown:focus-within .dropdown-menu {
    display: block;
}

/* Mobile */
@media (max-width: 768px) {
    .dropdown-menu {
        position: static;
        box-shadow: none;
        border: none;
        background: transparent;
    }

    .dropdown-menu a {
        color: #ffcc80;
        padding: 8px 10px;
    }
}

/* ==========================================================================
   Hero Section
   ========================================================================== */

/* Personality Types Section */
.types-section {
    background-color: white;
}

.section-header {
    text-align: center;
    margin-bottom: 50px;
}

.section-header p {
    max-width: 700px;
    margin: 0 auto;
    color: var(--text-light);
}

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

.type-card {
    background-color: white;
    border-radius: var(--radius);
    padding: 25px;
    text-align: center;
    box-shadow: var(--shadow);
    transition: transform 0.3s;
}

.type-card:hover {
    transform: translateY(-5px);
}

.type-icon {
    font-size: 2.5rem;
    margin-bottom: 15px;
    color: var(--primary);
}

.type-card h3 {
    margin-bottom: 10px;
}

/* ==========================================================================
   Intro Section
   ========================================================================== */
/* Intro Section */
/* -----------------------------------
   INDEX INTRO SECTION
----------------------------------- */
.index-intro {
    padding: 80px 20px;
    background: linear-gradient(180deg, #f9fbfd 0%, #eef4fa 100%);
}

/* Container */
.index-intro-content {
    display: flex;
    flex-direction: column;
    gap: 60px;
    max-width: 1200px;
    margin: 0 auto;
}

/* Card */
.index-intro-box {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    background: #fff;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.index-intro-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(13, 71, 161, 0.15);
}

/* Alternate version */
.index-intro-box.reverse {
    flex-direction: row-reverse;
}

/* Image section */
.index-intro-bg {
    flex: 1;
    background-size: cover;
    background-position: center;
    min-height: 320px;
    position: relative;
}

.index-intro-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    transition: background 0.3s ease;
}

/* Text section */
.index-intro-text {
    flex: 1;
    padding: 60px 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

/* Headings */
.index-intro-text h1 {
    font-weight: 700;
    color: #0d47a1;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.index-intro-text i {
    color: #ff6b3c;
    font-size: 1.4rem;
}

/* Paragraphs */
.index-intro-text p {
    line-height: 1.7;
    color: #333;
    margin-bottom: 25px;
}

/* Lists */
.index-intro-text ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.index-intro-text ul li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 20px;
    color: #333;
    line-height: 1.6;
}

.index-intro-text ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #ff6b3c;
    font-weight: bold;
}


/* Responsive layout */
@media (max-width: 768px) {

    .index-intro-box,
    .index-intro-box.reverse {
        flex-direction: column;
    }

    .index-intro-text {
        padding: 30px 25px;
    }

    .index-intro-bg {
        height: 250px;
    }
}


/* CTA button */
.btn.btn-large {
    display: inline-block;
    background: linear-gradient(135deg, #0d47a1, #1565c0);
    color: #fff;
    font-weight: 600;
    padding: 12px 28px;
    border-radius: 6px;
    text-decoration: none;
    transition: all 0.3s ease;
    width: fit-content;
}

.btn.btn-large:hover {
    background: linear-gradient(135deg, #1565c0, #0d47a1);
    box-shadow: 0 4px 12px rgba(13, 71, 161, 0.3);
}

/* Responsive */
@media (max-width: 768px) {
    .intro-bg {
        height: 240px;
    }

    .intro-text {
        padding: 25px 20px;
    }

    .intro-text h3 {
        font-size: 1.3rem;
    }
}


.intro-title {
    text-align: center;
    font-size: 2.5rem;
    /* bigger font */
    margin-bottom: 40px;
    color: #1a3d7c;
    /* brand color */
}

.bizcheck-section {
    background-size: cover;
    background-position: center;
    text-align: left;
    padding: 20px;
    position: relative;
    margin: 20px;
}

.bizcheck-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 50, 0.65);
    /* dark overlay for readability */
    z-index: 0;
}

.bizcheck-section p {
    font-size: 16px;

}

.bizcheck-section h1,
.bizcheck-section p {
    position: relative;
    color: #fff;
    z-index: 1;
}

/* Flex wrapper for the cards */
.intro-content {
    display: flex;
    justify-content: center;
    gap: 30px;
    flex-wrap: wrap;
    /* stack on smaller screens */
}

/* Individual boxes */
.intro-box {
    padding: 25px 20px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    margin: 20px;
    max-width: 600px;
    flex: 1 1 300px;
    /* responsive width */
}

/* Box headings */
.intro-box h3 {
    font-size: 22px;
    margin-bottom: 15px;
    color: #1a3d7c;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Icon inside heading */
.intro-icon {
    color: #ff6b3c;
    /* accent color */
    font-size: 1.6rem;
}

/* Paragraphs inside boxes */
.intro-box p {
    font-size: 1rem;
    line-height: 1.6;
    color: #333;
}

/* List inside boxes */
.intro-box ul {
    padding-left: 20px;
    margin: 0;
}

.intro-box ul li {
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 8px;
}

.intro-section {
    display: flex;
    align-items: stretch;
    justify-content: center;
    min-height: 350px;
    border-radius: 12px;
    overflow: hidden;

    box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);
}

.intro-section-text h1,
.intro-section-text p {
    color: #fff;
}

.intro-section-text {
    flex: 1;
    background-color: #1a3d7c;
    padding: 20px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.intro-section-image {
    flex: 1;
    background-image: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/WhatsApp-Image-2024-11-18-at-11.36.48.jpeg');
    /* Replace with your humanology image */
    background-size: cover;
    background-position: center;
}

.intro-section-text h1,
.intro-section-text p {
    color: #fff;
}

.intro-section-text {
    flex: 1;
    background-color: #1a3d7c;
    padding: 20px 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.intro-section-image {
    flex: 1;
    background-image: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/WhatsApp-Image-2024-11-18-at-11.36.48.jpeg');
    /* Replace with your humanology image */
    background-size: cover;
    background-position: center;
}



/* Container */
.bizcheck-horizon {
    background: #f8f9fa;
    padding: 50px 20px;
    border-radius: 12px;
    margin: 40px 0;
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.1);
    font-family: Arial, sans-serif;
    color: #333;
}

.bizcheck-horizon h2 {
    color: #2e7d32;
    font-size: 32px;
    margin-bottom: 20px;
}

.bizcheck-horizon p {
    line-height: 1.6;
    margin-bottom: 20px;
}

/* Horizon Stages */
.horizon-stages {
    display: flex;
    justify-content: space-between;
    gap: 20px;
    flex-wrap: wrap;
    margin-top: 30px;
}

.stage {
    flex: 1;
    background: #fff;
    text-align: center;
    padding: 25px 15px;
    border-radius: 12px;
    transition: transform 0.3s, box-shadow 0.3s;
    border-top: 5px solid transparent;
}

.stage:hover {
    transform: translateY(-8px);
    box-shadow: 0 12px 25px rgba(0, 0, 0, 0.15);
}

.stage .icon {
    font-size: 40px;
    margin-bottom: 15px;
}

.stage h3 {
    font-size: 24px;
    margin-bottom: 10px;
    color: #2e7d32;
}

/* Stage colors */
.start-up {
    border-top-color: #ffcc00;
}

.grow {
    border-top-color: #28a745;
}

.fly {
    border-top-color: #007bff;
}

/* Call to action */
.horizon-cta {
    text-align: center;
    margin-top: 30px;
}

.btn-primary {
    background-color: #2e7d32;
    color: #fff;
    text-decoration: none;
    padding: 12px 25px;
    border-radius: 8px;
    font-weight: bold;
    transition: background 0.3s;
}

.btn-primary:hover {
    background-color: #1b4d23;
}

.horizon-steps-container {
    display: flex;
    flex-direction: column;
    gap: 30px;
    max-width: 900px;
    margin: 0 auto;
}

/* INDIVIDUAL STEP */
.horizon-step-box {
    flex: 1 1 calc(33% - 25px);
    background: #fff;
    padding: 25px;
    border-radius: 10px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    border-top: 5px solid #558b2f;
    margin-bottom: 10px;
}

.horizon-step-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

/* ICON */
.horizon-step-icon {
    background: #1a3d7c;
    color: #fff;
    font-size: 1.8rem;
    width: 60px;
    height: 60px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    flex-shrink: 0;
}

/* TEXT CONTENT */
.horizon-step-content h3 {
    color: #1a3d7c;
    margin-bottom: 10px;
    font-size: 1.3rem;
}

.horizon-step-content h3 span {
    color: #ff6b3c;
    font-weight: 700;
}

.horizon-step-content p {
    color: #333;
    line-height: 1.6;
    margin-bottom: 10px;
    text-align: justify;
}

.horizon-step-content ul {
    list-style: none;
    padding-left: 0;
    margin: 10px 0;
}

.horizon-step-content ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
}

.horizon-step-content ul li::before {
    color: #1a3d7c;
    position: absolute;
    left: 0;
    top: 0;

}

.get-started {
    position: relative;
    background: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/Create-an-back-ground-image-of-a-city-skyline-at-dusk-I-will-have-a-green-title-and-white-word.jpg');
    background-size: cover;
    background-position: center;
    color: white;
    text-align: center;
    padding: 100px 20px;
    overflow: hidden;
}

.get-started::before {
    content: "";
    position: absolute;
    background: rgba(0, 0, 0, 0.75);
    transition: background 0.3s ease;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.started-overlay {
    position: relative;

    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.started-overlay h1 {
    color: #ffff;
}

.get-started h2 {
    font-size: 3rem;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.get-started p {
    font-size: 1.2rem;
    color: #e0f2f1;
}

/* Navigator Section Styling */
/* ===============================
   BizCheck Navigator Sections
================================= */

.navigator-section {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 80px 0;
    flex-wrap: wrap;
}

/* Shared container styling */
.navigator-container {
    flex: 1;
    padding: 40px;
    line-height: 1.8;
    max-width: 600px;
    z-index: 2;
}

.navigator-section h2 {
    margin-bottom: 20px;
    position: relative;
}

.navigator-section h2::after {
    content: "";
    width: 60px;
    height: 4px;
    display: block;
    margin-top: 10px;
    border-radius: 2px;
}

/* Paragraphs */
.navigator-section p {
    margin-bottom: 20px;
    text-align: justify;
}

/*Result Horizon*/
/* Base */
/* === Card base === */
.result-card {
    background: #fff;
    border-radius: 14px;
    box-shadow: 0 6px 18px rgba(2, 6, 23, .08);
    border: 1px solid rgba(2, 6, 23, .06);
    overflow: hidden;
}

/* accent bar using CSS variable */
.result-card {
    --accent: #64748B;
}

/* default */
.result-card::before {
    content: "";
    display: block;
    height: 6px;
    background: var(--accent);
}

/* header */
.result-card .card-head {
    padding: 20px;
}

.result-card h3 {
    margin: 0;
    line-height: 1.35;
    color: #0f172a;
}

/* meta row (score + level) */
.result-card .card-meta {
    display: flex;
    gap: 10px;
    align-items: center;
    padding: 0 20px 12px;
    flex-wrap: wrap;
}

.score-badge {
    font-weight: 700;
    padding: 4px 10px;
    border-radius: 999px;
    background: #f1f5f9;
    color: #0f172a;
}

.level-pill {
    padding: 4px 10px;
    border-radius: 999px;
    background: rgba(16, 185, 129, .12);
    color: #065f46;
    font-weight: 600;
}

/* divider */
.result-card .card-divider {
    height: 1px;
    background: rgba(2, 6, 23, .06);
    margin: 0 20px;
}

/* body */
.result-card .card-body {
    padding: 20px;
    text-align: justify;
}

.result-card p {
    margin: 0 0 10px;
    color: #111827;
}

.result-card p strong {
    color: #0f172a;
}

/* list styling */
.result-card ul {
    margin: 8px 0 12px 1.2rem;
}

.result-card ul li::marker {
    color: var(--accent);
    font-weight: 700;
}

/* score progress (optional) */
.result-card .progress {
    height: 8px;
    border-radius: 999px;
    background: #f1f5f9;
    overflow: hidden;
    margin: 6px 0 0;
}

.result-card .progress>span {
    display: block;
    height: 100%;
    width: 0%;
    background: var(--accent);
    transition: width .4s ease;
}

/* hover */
.result-card:hover {
    box-shadow: 0 10px 24px rgba(2, 6, 23, .12);
}


/* grid layout for all cards */
.results-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 18px;
}
/* === Per-section accents (match your earlier mapping) === */
.result-leadership {
    --accent: #0B5FFF;
    background: #F0F7FF;
}

.result-strategy {
    --accent: #6D28D9;
    background: #F5F3FF;
}

.result-finance {
    --accent: #0E7490;
    background: #ECFEFF;
}

.result-ops {
    --accent: #16A34A;
    background: #F0FDF4;
}

.result-people {
    --accent: #EA580C;
    background: #FFF7ED;
}

.result-marketing {
    --accent: #E11D48;
    background: #FFF1F2;
}

.result-compliance {
    --accent: #334155;
    background: #F1F5F9;
}

.result-results {
    --accent: #D97706;
    background: #FFFBEB;
}
/* Icon inherits section accent color */
.result-card i {
    color: var(--accent);
    transition: color 0.3s ease;
}

.result-score-bar {
  width: 100%;
  height: 10px;
  background: #e5e7eb; /* light gray base */
  border-radius: 6px;
  overflow: hidden;
  margin-top: 6px;
  position: relative;
}

.result-score-fill {
  height: 100%;
  background: var(--accent);
  border-radius: 6px 0 0 6px;
  transition: width 0.6s ease;
}

.result-score-percent {
  margin-top: 4px;
  font-size: 13px;
  color: #555;
}

/* ===============================
   LIGHT SECTION (What is BizCheck Navigator)
================================= */
.navigator-light {
    background: linear-gradient(180deg, #f9fbfd 0%, #f1f6fb 100%);
    color: #1a1a1a;
}

.navigator-light h2 {
    color: #0d47a1;
}

.navigator-light h2::after {
    background: #ff6b3c;
}

/* Add half image on the RIGHT */
.navigator-light .navigator-image {
    flex: 1;
    height: 400px;
    background: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/Copy-of-20250422_171621-scaled.jpg') center/cover no-repeat;
    border-radius: 0 12px 12px 0;
}

/* ===============================
   DARK SECTION (Why It Matters)
================================= */
.navigator-dark {
    background: linear-gradient(90deg, rgba(13, 71, 161, 0.95), rgba(26, 35, 126, 0.95));
    color: #fff;
    flex-direction: row-reverse;
    /* image on left for variety */
}

.navigator-dark h2 {
    color: #ffffff;
}

.navigator-dark h2::after {
    background: #ff6b3c;
}

/* Add half image on the LEFT */
.navigator-dark .navigator-image {
    flex: 1;
    height: 400px;
    background: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/1750766294332.jpg') center/cover no-repeat;

    background-blend-mode: overlay;
}

/* ===============================
   Responsive Design
================================= */
@media (max-width: 768px) {
    .navigator-section {
        flex-direction: column;
    }

    .navigator-container {
        padding: 30px 20px;
        text-align: center;
    }

    .navigator-image {
        width: 100%;
        height: 250px;
        border-radius: 0;
    }

    .navigator-section h2::after {
        margin: 10px auto;
    }
}

.navigator-intro {
    padding: 80px 20px;
    background: linear-gradient(180deg, #f9fbfd 0%, #eef4fa 100%);
}

/* Container */
.navigator-intro-content {
    display: flex;
    flex-direction: column;
    gap: 60px;
    margin: 0 auto;
}

/* Card */
.navigator-intro-box {
    display: flex;
    flex-direction: row;
    align-items: stretch;
    min-height: 450px;
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.08);
    transition: all 0.3s ease;
}

.navigator-intro-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(13, 71, 161, 0.15);
}

/* Alternate version */
.navigator-intro-box.reverse {
    flex-direction: row-reverse;
}

/* Image section */
.navigator-intro-bg {
    flex: 1;
    background-size: cover;
    background-position: center;
    max-height: 400px;
    position: relative;
}

.navigator-intro-bg::after {
    content: "";
    position: absolute;
    inset: 0;
    transition: background 0.3s ease;
}

/* Text section */
.navigator-intro-text {
    flex: 1;
    padding: 60px 50px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    text-align: left;
}

.navigator-intro-text.S1 {
    background: #4A90E2;

}

.navigator-intro-text.S2 {
    background: #4CD4A9;

}

.navigator-intro-text.S3 {
    background: #A6C543;
}

.navigator-intro-text.S1 h1 {
    color: #FFFFFF;

}

.navigator-intro-text.S2 h1 {
    color: #FFFFFF;

}

.navigator-intro-text.S3 h1 {
    color: #FFFFFF;
}

.navigator-intro-text.S1 p,
.navigator-intro-text.S1 li {
    color: #E8F1FB;

}

.navigator-intro-text.S2 p,
.navigator-intro-text.S2 li {
    color: #1E3A2F;

}

.navigator-intro-text.S3 p,
.navigator-intro-text.S3 li {
    color: #38420A;
}

/* Headings */
.navigator-intro-text h1 {
    font-weight: 700;
    color: #0d47a1;
    display: flex;
    align-items: center;
    gap: 10px;
    margin-bottom: 20px;
}

.navigator-intro-text i {
    color: #ff6b3c;
}

/* Paragraphs */
.navigator-intro-text p {
    line-height: 1.7;
    color: #333;
    margin-bottom: 25px;
}

/* Lists */
.navigator-intro-text ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.navigator-intro-text ul li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 20px;
    ;
    line-height: 1.6;
}

.navigator-intro-text ul li::before {
    content: "•";
    position: absolute;
    left: 0;
    color: #000000;
    font-weight: bold;
}


/* Responsive layout */
@media (max-width: 768px) {

    .navigator-intro-box,
    .navigator-intro-box.reverse {
        flex-direction: column;
    }

    .navigator-intro-text {
        padding: 30px 25px;
    }

    .navigator-intro-bg {
        height: 250px;
    }
}

/* ==============================
   PILLAR SECTION STYLING
============================== */

.pillar-card {
    border-radius: 12px;
    padding: 40px 50px;
    margin: 30px 0;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
    font-family: 'Inter', sans-serif;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-align: left;
}

.pillar-card.P1 {
    background: linear-gradient(180deg, #0D2B4C 0%, #173E6B 100%);

}

.pillar-card.P2 {
    background: linear-gradient(180deg, #0E3A2E 0%, #15644F 100%);
}

.pillar-card.P3 {
    background: linear-gradient(180deg, #073D44 0%, #0E6570 100%);

}

.pillar-card.P4 {
    background: linear-gradient(180deg, #2C3E13 0%, #44651F 100%);
}

.pillar-card.P5 {
    background: linear-gradient(180deg, #4C3B00 0%, #7A630A 100%);
}

.pillar-card.P6 {
    background: linear-gradient(180deg, #4B2300 0%, #7A3C0B 100%);
}

.pillar-card.P7 {
    background: linear-gradient(180deg, #4C0C0C 0%, #7A1E1E 100%);
}

.pillar-card.P1 p,
.pillar-card.P1 ul,
.pillar-card.P1 li {
    color: #C8D8F0;
}

.pillar-card.P2 p,
.pillar-card.P2 ul,
.pillar-card.P2 li {
    color: #D2EFE0;
}

.pillar-card.P3 p,
.pillar-card.P3 ul,
.pillar-card.P3 li {
    color: #CFF4F7;
}

.pillar-card.P4 p,
.pillar-card.P4 ul,
.pillar-card.P4 li {
    color: #E8F4D8;
}

.pillar-card.P5 p,
.pillar-card.P5 ul,
.pillar-card.P5 li {
    color: #F5EAB3;
}

.pillar-card.P6 p,
.pillar-card.P6 ul,
.pillar-card.P6 li {
    color: #FFE1C0;
}

.pillar-card.P7 p,
.pillar-card.P7 ul,
.pillar-card.P7 li {
    color: #FFD6D6;
}

.pillar-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.08);
}

.pillar-card h2 {
    color: #ffffff;
    margin-bottom: 20px;
    position: relative;
}

.pillar-card h3 {
    color: #ffffff;
}

.pillar-card h2::after {
    content: "";
    width: 70px;
    height: 4px;
    background: #ffffff;
    display: block;
    margin-top: 10px;
    border-radius: 3px;
}

.pillar-card p {
    line-height: 1.7;
    text-align: justify;
    margin-bottom: 15px;
}

.pillar-card strong {
    color: #ffffff;
}

.pillar-card ul {
    margin-left: 20px;
    line-height: 1.7;
}

.pillar-card ul li {
    margin-bottom: 8px;
    list-style: none;
    position: relative;
    padding-left: 20px;
}

.pillar-card ul li::before {
    content: "•";
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
}
/* ===== Result Navigator Styling ===== */
.result-pillar-card {
    border-radius: 14px;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.06);
    transition: all 0.3s ease;
    padding: 25px;
    background: #fff;
}

.result-pillar-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 10px 25px rgba(0, 0, 0, 0.08);
}

/* ===== Pillar Gradient Themes (light, soft tones) ===== */
.result-pillar-card.result-P1 {
  background: linear-gradient(180deg, #E8F0FA 0%, #DCE8F5 100%);
  border-left: 6px solid #0D2B4C;
  --accent: #0D2B4C;
}

.result-pillar-card.result-P2 {
  background: linear-gradient(180deg, #E6F3ED 0%, #D7EBE1 100%);
  border-left: 6px solid #0E3A2E;
  --accent: #0E3A2E;
}

.result-pillar-card.result-P3 {
  background: linear-gradient(180deg, #E6F7F9 0%, #D6F0F2 100%);
  border-left: 6px solid #0E6570;
  --accent: #0E6570;
}

.result-pillar-card.result-P4 {
  background: linear-gradient(180deg, #EEF6E2 0%, #E0F0CD 100%);
  border-left: 6px solid #44651F;
  --accent: #44651F;
}

.result-pillar-card.result-P5 {
  background: linear-gradient(180deg, #FFF9E5 0%, #FFF3CC 100%);
  border-left: 6px solid #7A630A;
  --accent: #7A630A;
}

.result-pillar-card.result-P6 {
  background: linear-gradient(180deg, #FFF0E6 0%, #FFE2CC 100%);
  border-left: 6px solid #7A3C0B;
  --accent: #7A3C0B;
}

.result-pillar-card.result-P7 {
  background: linear-gradient(180deg, #FDECEC 0%, #F9D6D6 100%);
  border-left: 6px solid #7A1E1E;
  --accent: #7A1E1E;
}

/* === Icon Styling === */
.result-pillar-card i {
  font-size: 24px;
  margin-right: 8px;
  color: var(--accent);
}

/* === Score Bar Styling === */
.result-pillar-score-bar {
  width: 100%;
  height: 10px;
  background: rgba(0, 0, 0, 0.08);
  border-radius: 6px;
  overflow: hidden;
  margin-top: 8px;
  position: relative;
}

.result-pillar-score-fill {
  height: 100%;
  background: var(--accent);
  border-radius: 6px 0 0 6px;
  transition: width 0.6s ease;
}

.result-pillar-score-percent {
  margin-top: 6px;
  font-size: 13px;
  color: #333;
  font-weight: 600;
}

/* ===== Typography (dark content) ===== */
.result-pillar-card h2 {
    color: #000000;
    margin-bottom: 18px;
    position: relative;
}

.result-pillar-card h2::after {
    content: "";
    width: 70px;
    height: 3px;
    background: #555;
    display: block;
    margin-top: 8px;
    border-radius: 2px;
}

.result-pillar-card h3 {
    color: #000000;
    margin-top: 15px;
}

.result-pillar-card p,
.result-pillar-card ul,
.result-pillar-card li {
    color: #333;
    line-height: 1.7;
}

.result-pillar-card strong {
    color: #000;
}

/* ===== List Formatting ===== */
.result-pillar-card ul {
    margin-left: 18px;
    padding-left: 0;
}

.result-pillar-card ul li {
    margin-bottom: 8px;
    list-style: none;
    position: relative;
    padding-left: 20px;
}

.result-pillar-card ul li::before {
    content: "•";
    font-weight: bold;
    color: #444;
    position: absolute;
    left: 0;
    top: 0;
}

/* Subheading styles (Tagline, Why it matters, etc.) */
.pillar-subtitle {
    font-weight: 700;
    color: #0d47a1;
    margin-top: 25px;
    margin-bottom: 10px;
    gap: 8px;
}

.pillar-subtitle i {
    color: #ff6b3c;
    font-size: 1.2rem;
}

/* Responsive */
@media (max-width: 768px) {
    .pillar-card {
        padding: 25px 20px;
    }
}

/* SECTION STYLING */
.navigator-benefits {
    background: linear-gradient(180deg, #f9fbfd 0%, #e7f0fb 100%);
    padding: 80px 20px;
    text-align: center;
    font-family: 'Inter', sans-serif;
}

.navigator-benefits h2 {
    font-size: 2rem;
    color: #0d47a1;
    margin-bottom: 20px;
}

.navigator-benefits p {
    max-width: 900px;
    margin: 0 auto 40px;
    color: #222;
    line-height: 1.7;
    text-align: justify;
}

.value-title {
    font-weight: 700;
    color: #0d47a1;
    margin-bottom: 30px;
}

/* GRID LAYOUT */
.value-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));
    gap: 25px;
    justify-content: center;
    margin: 0 auto;
}

/* VALUE CARD */
.value-card {
    position: relative;
    background: #fff;
    border-radius: 12px;
    overflow: hidden;
    cursor: pointer;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
    height: 200px;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    perspective: 1000px;
}

.value-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 24px rgba(0, 0, 0, 0.1);
}

/* FRONT + BACK SIDES */
.value-front,
.value-back {
    position: absolute;
    inset: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 20px;
    transition: transform 0.6s ease;
    backface-visibility: hidden;
    border-radius: 12px;
}

/* FRONT */
.value-front {
    background: linear-gradient(135deg, #0d47a1 0%, #1565c0 100%);
    color: #fff;
}

.value-front h4 {
    font-size: 20px;
    line-height: 1.4;
    font-weight: 500;
}

/* BACK (appears on hover) */
.value-back {
    background: #ffffff;
    color: #222;
    transform: rotateY(180deg);
    font-size: 0.95rem;
    line-height: 1.6;
}

/* HOVER FLIP EFFECT */
.value-card:hover .value-front {
    transform: rotateY(180deg);
}

.value-card:hover .value-back {
    transform: rotateY(360deg);
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .value-grid {
        grid-template-columns: 1fr;
    }

    .value-card {
        height: 220px;
    }
}

/* SECTION WRAPPER */
.local-examples {
    background: linear-gradient(180deg, #f9fbfd 0%, #eef5fb 100%);
    padding: 70px 20px;
    text-align: center;
    font-family: 'Inter', sans-serif;
}

/* TITLE */
.local-examples h2 {
    color: #0d47a1;
    font-size: 22px;
    font-weight: 700;
    margin-bottom: 40px;
    position: relative;
}

.local-examples h3::after {
    content: "";
    display: block;
    width: 60px;
    height: 4px;
    background: #ff6b3c;
    border-radius: 3px;
    margin: 10px auto 0;
}

/* GRID LAYOUT */
.example-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
    gap: 25px;
    max-width: 1100px;
    margin: 0 auto;
}

/* CARD */
.example-card {
    background: #ffffff;
    border-radius: 12px;
    box-shadow: 0 6px 16px rgba(0, 0, 0, 0.08);
    padding: 30px 25px;
    text-align: left;
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.example-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.1);
}

/* ICON */
.example-icon {
    font-size: 2rem;
    color: #0d47a1;
    margin-bottom: 15px;
}

/* HEADINGS */
.example-card h4 {
    font-size: 1.2rem;
    font-weight: 700;
    color: #0d47a1;
    margin-bottom: 10px;
}

/* PARAGRAPH */
.example-card p {
    color: #333;
    line-height: 1.6;
    font-size: 0.95rem;
    text-align: justify;
}

/* HOVER EFFECT: Highlight Color Overlay */
.example-card::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(135deg, rgba(13, 71, 161, 0.1), rgba(255, 107, 60, 0.08));
    opacity: 0;
    transition: opacity 0.4s ease;
    border-radius: 12px;
}

.example-card:hover::before {
    opacity: 1;
}

/* RESPONSIVE */
@media (max-width: 768px) {
    .local-examples h3 {
        font-size: 1.5rem;
    }

    .example-card {
        padding: 25px 20px;
    }
}

.why-card {
    background: linear-gradient(180deg, #e9f3fc 0%, #f5f9ff 100%);
    border-radius: 12px;
    padding: 40px 50px;
    margin: 30px 0;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.05);
    font-family: 'Inter', sans-serif;
    transition: transform 0.3s ease, box-shadow 0.3s ease;
    text-align: left;
}

.why-card ul {
    margin-left: 20px;
    line-height: 1.7;
}

.why-card ul li {
    margin-bottom: 8px;
    list-style: none;
    position: relative;
    padding-left: 20px;
}

.why-card ul li::before {
    content: "•";
    color: #ff6b3c;
    font-weight: bold;
    position: absolute;
    left: 0;
    top: 0;
}


/* ======== Title Banner ======== */
.title-banner {
    position: relative;
    background: url('https://bizcheck.hba.com.my/wp-content/uploads/2025/10/Give-me-a-FAQ-background-with-a-dark-color.jpg');
    background-size: cover;
    background-position: center;
    color: white;
    text-align: center;
    padding: 100px 20px;
    overflow: hidden;
}

.title-banner::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 1;
}

.banner-overlay {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.title-banner h1 {
    font-size: 3rem;
    font-weight: 800;
    letter-spacing: 1px;
    margin-bottom: 10px;
    text-transform: uppercase;
}

.title-banner p {
    font-size: 1.2rem;
    color: #e0f2f1;
}

.why-it-matters {
    background: #f9fafc;
    padding: 60px 20px;
}

.section-title {
    color: #2e7d32;
    font-size: 2.2rem;
    text-align: center;
    margin-bottom: 25px;
    font-weight: 700;
}

.intro-text {
    text-align: center;
    color: #333;
    line-height: 1.7;
    margin-bottom: 15px;
    font-size: 1.05rem;
}

/* General Section */
.why-it-matters {
    background: #f9fafc;
    padding: 70px 20px;
}

/* Title + Intro */
.section-title {
    color: #2e7d32;
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 30px;
    font-weight: 700;
}

.intro-text {
    text-align: center;
    color: #333;
    line-height: 1.7;
    margin-bottom: 15px;
    font-size: 1.05rem;
}

/* Grid Layout */
.info-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 30px;
    margin-top: 40px;
}

.info-section {
    background: #fff;
    padding: 30px;
    border-radius: 12px;
    box-shadow: 0 4px 15px rgba(0, 0, 0, 0.05);
    transition: 0.3s;
}

.info-section:hover {
    transform: translateY(-6px);
    box-shadow: 0 6px 20px rgba(0, 0, 0, 0.1);
}

.info-section h3 {
    font-size: 1.5rem;
    margin-bottom: 15px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.info-section ul {
    list-style: none;
    padding-left: 0;
}

.info-section ul li {
    line-height: 1.7;
    margin-bottom: 10px;
    padding-left: 25px;
    position: relative;
}

.info-section ul li::before {
    content: "✔";
    position: absolute;
    left: 0;
    font-size: 1rem;
}

.risks {
    border-top: 6px solid #b71c1c;
}

.risks h3 {
    color: #b71c1c;
}

.risks ul li::before {
    color: #b71c1c;
}

.benefits {
    border-top: 6px solid #2e7d32;
}

.benefits h3 {
    color: #2e7d32;
}

.benefits ul li::before {
    color: #2e7d32;
}

/* --- Self-Check Page Styles --- */

/* Container styling */
.self-check-container {
    max-width: 900px;
    margin: 0 auto;
    padding: 50px 20px;
    font-family: 'Segoe UI', Arial, sans-serif;
    line-height: 1.7;
    color: #333;
}

/* Headings */
.self-check-container h2 {
    font-size: 2.5rem;
    color: #1a3d7c;
    /* Brand color */
    text-align: center;
    margin-bottom: 30px;
}

.self-check-container h3 {
    font-size: 1.6rem;
    color: #004080;
    margin-top: 30px;
    margin-bottom: 15px;
}

/* Paragraphs */
.self-check-container p {
    font-size: 1.05rem;
    margin-bottom: 20px;
}

/* Emphasis within paragraphs */
.self-check-container strong {
    color: #004080;
    font-weight: 600;
}

/* Optional: add subtle blockquote style for key points */
.self-check-container p strong+span {
    display: block;
    margin-top: 10px;
    font-style: italic;
    color: #555;
}

/* Lists for areas or steps (if added later) */
.self-check-container ul {
    padding-left: 25px;
    margin-bottom: 20px;
}

.self-check-container ul li {
    margin-bottom: 10px;
    font-size: 1rem;
}

/* Responsive adjustments */
@media (max-width: 768px) {
    .self-check-container {
        padding: 30px 15px;
    }

    .self-check-container h2 {
        font-size: 2rem;
    }

    .self-check-container h3 {
        font-size: 1.4rem;
    }

    .self-check-container p,
    .self-check-container ul li {
        font-size: 1rem;
    }
}


/* ==========================================================================
   Assessment Preview Section
   ========================================================================== */
.assessment-preview {
    background-color: #ffff;
    text-align: center;
}

.assessment-preview h1 {
    margin-bottom: var(--space-lg);
}

.assessment-preview p {
    max-width: 600px;
}

/* Container Layout for Cards */
.assessment-cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 25px;
    margin-top: 40px;
    justify-items: center;
}

/* Fix Card Sizing */
.assessment-card {
    width: 100%;
    height: 500px;
    border-radius: 12px;
    overflow: hidden;
    position: relative;
    cursor: pointer;
    perspective: 1000px;
    box-shadow: 0 6px 15px rgba(0, 0, 0, 0.1);
    transition: transform 0.3s ease;
    background-color: #000;
    /* Prevent white gaps before image loads */
}

.assessment-card:hover {
    transform: translateY(-6px);
}

.assessment-section {
    background-size: cover;
    background-position: center;
    text-align: center;
    padding: 20px;
    position: relative;
    margin: 20px;
}

.assessment-section::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 50, 0.65);
    /* dark overlay for readability */
    z-index: 0;
}

.assessment-section p {
    font-size: 16px;

}

.assessment-section h2,
.assessment-section p {
    position: relative;
    color: #fff;
    z-index: 1;
}

/* Ensure front image fills the card */
.card-front {
    height: 100%;
    width: 100%;
    background: var(--bg) center center / cover no-repeat;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: white;
    position: absolute;
    top: 0;
    left: 0;
    border-radius: inherit;
    overflow: hidden;
}

/* Add dark overlay to enhance text visibility */
.card-front::before {
    content: "";
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.4);
    z-index: 1;
}

/* Make sure icons and text are above overlay */
.card-front>* {
    position: relative;
    z-index: 2;
}

.assessment-icon {
    font-size: 5rem;
    color: #fff;
    margin-bottom: 10px;
}

.card-front h3 {
    font-size: 22px;
    color: #fff;
    font-weight: 700;
    margin-top: 10px;
}

/* BACK (Hover Content) */
.card-back {
    background: #fff;
    color: #333;
    padding: 25px;
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    width: 100%;
    transform: rotateY(180deg);
    text-align: justify;
    border-radius: inherit;
    display: flex;
    align-items: center;
    justify-content: center;
    backface-visibility: hidden;
}

/* Flip Transition */
.assessment-card:hover .card-front {
    transform: rotateY(180deg);
}

.assessment-card:hover .card-back {
    transform: rotateY(360deg);
}


.scale-info {
    background-color: var(--light);
    padding: 25px;
    border-radius: var(--radius);
    margin-bottom: 40px;
    box-shadow: var(--shadow);
}

.scale-info h3 {
    margin-top: 0;
    color: var(--secondary);
}

.scale-definitions {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 15px;
    margin-top: 20px;
}

.scale-item {
    display: flex;
    align-items: center;
}

.scale-number {
    display: inline-block;
    width: 30px;
    height: 30px;
    background-color: var(--primary);
    color: white;
    border-radius: 50%;
    text-align: center;
    line-height: 30px;
    margin-right: 15px;
    font-weight: bold;
}

/* ==========================================================================
   Question Styles
   ========================================================================== */
.question-group {
    margin-bottom: 40px;
    padding: 25px;
    border: 1px solid var(--border);
    border-radius: var(--radius);
    background-color: white;
    box-shadow: var(--shadow);
}

.question {
    margin-bottom: 25px;
    padding-bottom: 20px;
    border-bottom: 1px dashed var(--border);
}

.question:last-child {
    border-bottom: none;
}

.question-text {
    font-weight: 600;
    margin-bottom: 15px;
    font-size: 1.1rem;
}

.rating-scale {
    display: flex;
    justify-content: space-between;
    max-width: 600px;
    margin-top: 15px;
}

.rating-option {
    display: flex;
    flex-direction: column;
    align-items: center;
    cursor: pointer;
    padding: 8px;
    border-radius: var(--radius);
    transition: all 0.2s;
}

.rating-option:hover {
    background-color: var(--light-gray);
}

.rating-option.selected {
    background-color: var(--primary);
    color: white;
}

.rating-number {
    font-size: 1.2rem;
    font-weight: bold;
    margin-bottom: 5px;
}

.rating-label {
    font-size: 0.85rem;
    text-align: center;
    max-width: 100px;
}

/* Results Section */
.results {
    background-color: var(--light);
    display: none;
    padding: 40px;
    border-radius: var(--radius);
    margin-top: 40px;
    box-shadow: var(--shadow);
}

.results h2 {
    color: var(--secondary);
    border-bottom: none;
}

.pillar-score {
    margin-bottom: 30px;
}

.score-bar {
    height: 30px;
    background-color: #e0e0e0;
    border-radius: 15px;
    margin: 10px 0;
    overflow: hidden;
}

.score-fill {
    height: 100%;
    background: linear-gradient(90deg, var(--secondary) 0%, var(--secondary-light) 100%);
    border-radius: 15px;
    transition: width 0.5s ease-in-out;
    display: flex;
    align-items: center;
    justify-content: flex-end;
    padding-right: 15px;
    color: white;
    font-weight: bold;
}

.recommendations {
    margin-top: 40px;
}

.recommendation-item {
    background-color: white;
    padding: 20px;
    border-radius: var(--radius);
    margin-bottom: 15px;
    box-shadow: 0 2px 5px rgba(0, 0, 0, 0.05);
}

.custom-questionnaire {
    max-width: 900px;
    margin: 40px auto;
    padding: 30px;
    background: #eaf6ea;
    border-radius: 10px;
    font-family: sans-serif;
}

.custom-questionnaire h1,
.custom-questionnaire h2 {
    color: #2a7a2a;
}

.question-block {
    margin-bottom: 40px;
}

.question-options {
    display: flex;
    flex-direction: column;
    gap: 10px;
    margin-top: 10px;
}

.question-options label {
    background: #fff;
    border: 2px solid #2a7a2a;
    border-radius: 6px;
    padding: 12px 16px;
    cursor: pointer;
    transition: background 0.3s, border-color 0.3s;
    font-weight: 500;
}

.question-options input[type="radio"] {
    display: none;
}

.question-options input[type="radio"]:checked+span {
    background: #2a7a2a;
    color: white;
    border-color: #2a7a2a;
}

.question-options span {
    display: block;
    width: 100%;
}

input[type="submit"] {
    background-color: #176617;
    color: white;
    padding: 12px 24px;
    border: none;
    border-radius: 6px;
    cursor: pointer;
    font-weight: bold;
    font-size: 16px;
}

input[type="submit"]:hover {
    background-color: #135413;
}

/* ==========================================================================
   Features & Form Section
   ========================================================================== */
.features-form {
    background-color: white;
}

.features-form-content {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--space-xxl);
}

.features {
    background-color: var(--light);
    padding: var(--space-xxl);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.features h2 {
    margin-bottom: var(--space-xl);
    display: flex;
    align-items: center;
}

.features h2 i {
    margin-right: var(--space-md);
    color: var(--secondary);
}

.features ul {
    list-style: none;
    margin-left: 0;
}

.features li {
    margin-bottom: var(--space-md);
    padding-left: var(--space-xl);
    position: relative;
}

.features li:before {
    content: "✓";
    position: absolute;
    left: 0;
    color: var(--secondary);
    font-weight: bold;
}

.form {
    background-color: var(--light);
    padding: var(--space-xxl);
    border-radius: var(--radius);
    box-shadow: var(--shadow);
}

.form h2 {
    margin-bottom: var(--space-xl);
    display: flex;
    align-items: center;
}

.form h2 i {
    margin-right: var(--space-md);
    color: var(--secondary);
}

/* Form Group */
.form-group {
    margin-bottom: 24px;
    text-align: left;
    position: relative;
}

.form-group label {
    display: block;
    margin-bottom: 8px;
    color: #444;
    font-weight: 600;
    font-size: 14px;
    display: flex;
    align-items: center;
}

.form-group label i {
    margin-right: 8px;
    color: var(--primary);
}


.input-wrapper i {
    position: absolute;
    left: 15px;
    top: 50%;
    transform: translateY(-50%);
    color: #999;
    font-size: 16px;
}

.form-group input,
.form-group textarea,
.form-group select {
    width: 100%;
    padding: 20px;
    border: 2px solid #e6e9f0;
    border-radius: 10px;
    font-size: 15px;
    background: #fafbff;
    transition: all 0.3s;
}

.form-group input .zoom {
    justify-content: left;
}

.form-group input:focus {
    border-color: var(--primary);
    outline: none;
    box-shadow: 0 0 0 4px rgba(67, 97, 238, 0.15);
    background: white;
}

.form-group input.error {
    border-color: #e63946;
}

.form-group input.valid {
    border-color: #2a9d8f;
}

.error-message {
    color: #e63946;
    font-size: 13px;
    margin-top: 6px;
    font-weight: 500;
    text-align: left;
    display: none;
}

/* ==========================================================================
   Footer
   ========================================================================== */
footer {
    background-color: var(--dark);
    color: white;
    padding: 60px 0 30px;
}

.footer-content {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 40px;
    margin-bottom: 40px;
}

.footer-column h3 {
    font-size: 1.6rem;
    margin-bottom: 25px;
    margin-top: 15px;
    color: white;
}

.footer-column p {
    font-size: 1.2rem;
    margin-bottom: 25px;
    color: white;
}

.footer-links {
    list-style: none;
}

.footer-links li {
    margin-bottom: 12px;
}

.footer-links a {
    color: #b0b7c3;
}

.footer-links a:hover {
    color: white;
}

.social-links {
    display: flex;
    gap: 15px;
    margin-top: 20px;
}

.social-links a {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    background-color: rgba(255, 255, 255, 0.1);
    border-radius: 50%;
    color: white;
    transition: all 0.3s;
}

.social-links a:hover {
    background-color: var(--secondary);
    transform: translateY(-3px);
}

.copyright {
    text-align: center;
    padding-top: 30px;
    border-top: 1px solid rgba(255, 255, 255, 0.1);
    color: #b0b7c3;
    font-size: 0.9rem;
}

/* Blog Section */
.client-success {
    padding: 50px 20px;
    background: #f9f9f9;
}

.client-success .container {
    max-width: 1200px;
    margin: auto;
}

.client-success h2 {
    text-align: center;
    margin-bottom: 40px;
    font-size: 2rem;
}

/* Cards Grid */
.cards {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));
    gap: 30px;
}

.card {
    background: #fff;
    padding: 20px;
    border-radius: 10px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.1);
}

.card h3 {
    margin-top: 0;
    color: #1565c0;
}

.card p {
    margin-bottom: 10px;
    line-height: 1.5;
}

.card a {
    display: inline-block;
    margin-top: 10px;
    color: #1565c0;
    text-decoration: none;
    font-weight: bold;
}

.card a:hover {
    text-decoration: underline;
}

.card .date {
    margin-top: 15px;
    font-size: 0.85rem;
    color: #999;
}

/* Pagination */
#pagination {
    text-align: center;
    margin-top: 30px;
}

#pagination button {
    margin: 0 5px;
    padding: 8px 12px;
    border: 1px solid #1976d2;
    border-radius: 5px;
    cursor: pointer;
    background: #fff;
    color: #1976d2;
    font-weight: bold;
    transition: all 0.3s ease;
}

#pagination button.active,
#pagination button:hover {
    background: #1976d2;
    color: #fff;
}

.blog-content {
    padding: 50px 20px;
    background: #f9f9f9;
}

.blog-content .container {
    max-width: 900px;
    margin: auto;
}

.blog-content h1 {
    text-align: center;
    margin-bottom: 30px;
    font-size: 2.5rem;
}

.blog-content h2 {
    margin-top: 40px;
    color: #1565c0;
}

.blog-content p,
.blog-content ul {
    line-height: 1.7;
    margin-bottom: 20px;
}

.blog-content ul li {
    margin-bottom: 10px;
}


/* Mobile View  (≤768px) */
@media (max-width: 768px) {

    /* ====== Header & Navigation ====== */
    .header-container {
        flex-wrap: wrap;
        padding: 10px 20px;
    }

    .logo img {
        height: 100px;
    }

    .header-cta {
        width: 100%;
        justify-content: center;
        margin-top: 10px;
    }

    .btn-register {
        flex: 1;
        text-align: center;
        min-width: 130px;
    }

    .mobile-menu {
        position: absolute;
        right: 20px;
        top: 20px;
    }

    .main-nav {
        display: none;
        opacity: 0;
        visibility: hidden;
        transform: translateY(-15px);
        transition: all 0.3s ease-in-out;
    }

    .main-nav.active {
        display: block;
        position: absolute;
        top: 70px;
        left: 0;
        width: 100%;
        background: #0F1C2E;
        text-align: center;
        padding: 20px 0;
        border-top: 1px solid #1E2A3A;
        opacity: 1;
        visibility: visible;
        transform: translateY(0);
    }

    .nav-links {
        flex-direction: column;
        gap: 15px;
    }

    /* === MOBILE MENU PROFESSIONAL LOOK === */
    /* Reset dropdowns for vertical layout */
    .dropdown-menu {
        position: static;
        display: none;
        background: none;
        border: none;
        box-shadow: none;
        padding-left: 20px;
    }

    /* When dropdown is opened */
    .dropdown.active .dropdown-menu {
        display: block;
        animation: fadeInDown 0.3s ease forwards;
    }

    /* Style links in mobile mode */
    .nav-links a {
        font-size: 18px;
        padding: 12px 20px;
        color: #ffffff;
        display: block;
        border-radius: 0;
    }

    .nav-links a:hover {
        background: #1a2b46;
        color: #4A90E2;
    }

    /* Top-level menu styling */
    .nav-links>li {
        border-bottom: 1px solid #1E2A3A;
    }

    /* Dropdown submenu items */
    .dropdown-menu li a {
        font-size: 16px;
        color: #ccc;
        padding: 10px 25px;
    }

    .dropdown-menu li a:hover {
        color: #fff;
        background: #2a3c58;
    }

    /* Submenu animation */
    @keyframes fadeInDown {
        from {
            opacity: 0;
            transform: translateY(-8px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .nav-links li {
        margin: 5px 0;
        opacity: 0;
        animation: fadeSlideIn 0.4s ease forwards;

    }


    /* Stagger animation delay for nicer feel */
    .main-nav.active .nav-links li:nth-child(1) {
        animation-delay: 0.05s;
    }

    .main-nav.active .nav-links li:nth-child(2) {
        animation-delay: 0.1s;
    }

    .main-nav.active .nav-links li:nth-child(3) {
        animation-delay: 0.15s;
    }

    .main-nav.active .nav-links li:nth-child(4) {
        animation-delay: 0.2s;
    }

    .main-nav.active .nav-links li:nth-child(5) {
        animation-delay: 0.25s;
    }

    @keyframes fadeSlideIn {
        from {
            opacity: 0;
            transform: translateY(-10px);
        }

        to {
            opacity: 1;
            transform: translateY(0);
        }
    }

    .desktop-only {
        display: none;
    }

    .mobile-only {
        display: block;
        border-top: 1px solid #1E2A3A;
        margin-top: 15px;
        padding-top: 10px;
    }

    .mobile-only a {
        display: block;
        padding: 10px 15px;
        color: #4A90E2;
        border: 1px solid #4A90E2;
        margin: 8px 50px;
        border-radius: 6px;
        text-decoration: none;
    }

    .mobile-only a:hover {
        background: #4A90E2;
        color: #fff;
    }

    .mobile-menu {
        display: block;
    }

    .user-dropdown-menu {
        position: static;
        box-shadow: none;
        border: none;
        background: transparent;
    }

    .user-dropdown-menu a {
        padding: 8px 10px;
        color: #ffcc80;
    }


    /* ====== Intro & Section Texts ====== */
    section {
        padding: 25px 10px;
    }

    h1 {
        font-size: 1.8rem;
    }

    h2 {
        font-size: 1.4rem;
    }

    h3 {
        font-size: 1.2rem;
    }

    p {
        font-size: 1rem;
    }

    /* ====== Cards & Grids ====== */
    .types-grid,
    .info-grid,
    .features-form-content,
    .gain-item,
    .subsection-list {
        grid-template-columns: 1fr !important;
        flex-direction: column;
    }

    .tool-card {
        max-width: 100%;
        padding: 25px 20px;
    }

    .gain-header {
        flex-direction: column;
        align-items: flex-start;
    }

    .work-item {
        flex-direction: column;
        align-items: center;
    }

    .work-text,
    .work-image {
        width: 100%;
    }

    .work-image img {
        max-width: 100%;
        height: auto;
    }

    /* ====== Pillars, Navigator, and BizCheck Horizon ====== */
    .navigator-section,
    .navigator-intro-box,
    .navigator-intro-box.reverse,
    .bizcheck-horizon .horizon-stages {
        flex-direction: column !important;
    }

    .navigator-container,
    .navigator-intro-text {
        padding: 25px 20px;
        text-align: center;
    }

    .navigator-image {
        height: 220px;
        border-radius: 0;
    }

    .pillar-card {
        padding: 25px 20px;
    }

    .horizon-stages {
        flex-direction: column;
    }

    .stage {
        width: 100%;
    }

    /* ====== Forms ====== */
    .features-form-content {
        display: flex;
        flex-direction: column;
    }

    .form,
    .features {
        padding: 20px;
    }

    .form-group input,
    .form-group textarea,
    .form-group select {
        padding: 12px 12px 12px 38px;
        font-size: 0.95rem;
    }

    /* ====== CTA & Buttons ====== */
    .cta-section {
        padding: 40px 20px;
    }

    .cta-buttons {
        flex-direction: column;
        align-items: center;
    }

    .cta-btn {
        width: 80%;
        justify-content: center;
    }

    /* ====== Title Banner & Get Started ====== */
    .title-banner,
    .get-started {
        padding: 60px 15px;
    }

    .title-banner h1,
    .get-started h2 {
        font-size: 2rem;
    }

    .title-banner p,
    .get-started p {
        font-size: 1rem;
    }

    /* ====== Self Check & Blog Content ====== */
    .self-check-container {
        padding: 30px 15px;
    }

    .blog-content .container {
        padding: 0;
    }

    .blog-content h1 {
        font-size: 1.8rem;
    }

    .blog-content h2 {
        font-size: 1.3rem;
    }

    /* ====== Footer ====== */
    footer {
        padding: 40px 15px 20px;
    }

    .footer-content {
        grid-template-columns: 1fr;
        gap: 25px;
    }

    .footer-column h3 {
        font-size: 1.2rem;
    }

    .footer-column p {
        font-size: 0.95rem;
    }

    .social-links {
        justify-content: center;
    }

    .copyright {
        font-size: 0.8rem;
    }

    /* ====== Floating Buttons ====== */
    #scrollTopBtn {
        right: 20px;
        bottom: 80px;
    }

    .whatsapp-float {
        right: 20px;
        bottom: 20px;
    }

}