/* ==========================================================================
   SILVER FILS INTERNATIONAL CO. W.L.L. - MAIN STYLESHEET
   Developed following DEVELOPMENT_GUIDELINES.md:
   - Primary Brand Color: #012B91
   - Pure custom CSS classes only (no Bootstrap utility classes)
   - Consistent naming conventions
   - Clean, maintainable, modular structure
   ========================================================================== */

/* --------------------------------------------------------------------------
   1. CSS Variables & Design System Tokens
   -------------------------------------------------------------------------- */
:root {
    /* Brand Color Palette */
    --color-primary: #012B91;
    --color-primary-dark: #001f6e;
    --color-accent-blue: #012B91;
    --color-accent-red: #dc2626;

    /* Typography Colors */
    --color-heading-dark: #0b1a30;
    --color-text-body: #4a5568;
    --color-text-muted: #64748b;
    --color-text-light: #ffffff;

    /* Neutrals & Surfaces */
    --color-bg-page: #ffffff;
    --color-bg-card: #ffffff;
    --color-bg-hover: #f8fafc;
    --color-border-light: #e2e8f0;
    --color-divider: #e9ecef;

    /* Typography Font Families */
    --font-primary: 'Plus Jakarta Sans', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
    --font-arabic: 'Cairo', 'Tajawal', 'Segoe UI', Tahoma, sans-serif;

    /* Shadows */
    --shadow-card: 0 10px 30px rgba(0, 0, 0, 0.08), 0 2px 6px rgba(0, 0, 0, 0.03);
    --shadow-btn: 0 4px 14px rgba(1, 43, 145, 0.22);
    --shadow-btn-hover: 0 6px 18px rgba(1, 43, 145, 0.32);

    /* Transitions */
    --transition-fast: 0.2s ease;
    --transition-base: 0.3s ease;
}

/* --------------------------------------------------------------------------
   2. Global Reset & Base Styles
   -------------------------------------------------------------------------- */
*,
*::before,
*::after {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
}

html {
    scroll-behavior: smooth;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

body {
    font-family: var(--font-primary);
    font-size: 16px;
    line-height: 1.5;
    color: var(--color-text-body);
    background-color: var(--color-bg-page);
    overflow-x: hidden;
}

a {
    color: inherit;
    text-decoration: none;
}

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

button {
    font-family: inherit;
    cursor: pointer;
    border: none;
    background: none;
}

/* --------------------------------------------------------------------------
   3. Site Header & Navigation
   -------------------------------------------------------------------------- */
.site-header {
    position: relative;
    width: 100%;
    background-color: var(--color-bg-page);
    border-bottom: 1px solid rgba(226, 232, 240, 0.6);
    z-index: 100;
}

.header-container {
    max-width: 1320px;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    padding-top: 14px;
    padding-bottom: 14px;
    display: flex;
    align-items: center;
    justify-content: space-between;
}

/* Brand Logo */
.brand-logo {
    display: flex;
    align-items: center;
    gap: 12px;
    text-decoration: none;
    transition: opacity var(--transition-fast);
}

.brand-logo:hover {
    opacity: 0.92;
}

.brand-logo-img {
    height: 46px;
    width: auto;
    object-fit: contain;
}

.brand-logo-text {
    display: flex;
    flex-direction: column;
    justify-content: center;
    line-height: 1.25;
}

.brand-arabic {
    font-family: var(--font-arabic);
    font-size: 13.5px;
    font-weight: 700;
    color: var(--color-primary);
    letter-spacing: -0.2px;
}

.brand-english {
    font-family: var(--font-primary);
    font-size: 11.5px;
    font-weight: 700;
    color: var(--color-primary);
    letter-spacing: 0.1px;
}

/* Header Navigation */
.header-navigation {
    display: flex;
    align-items: center;
    gap: 36px;
}

.nav-menu {
    display: flex;
    align-items: center;
    list-style: none;
    margin: 0;
    padding: 0;
    gap: 32px;
}

.nav-item {
    position: relative;
}

.nav-link {
    font-size: 14.5px;
    font-weight: 500;
    color: #4b5563;
    padding-top: 6px;
    padding-bottom: 6px;
    position: relative;
    display: inline-block;
    transition: color var(--transition-fast);
}

.nav-link:hover {
    color: var(--color-primary);
}

.nav-link.active {
    color: var(--color-primary);
    font-weight: 600;
}

.nav-link.active::after {
    content: '';
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 100%;
    height: 2.5px;
    background-color: var(--color-primary);
    border-radius: 2px;
}

/* Header CTA Button */
.header-cta-wrapper {
    display: flex;
    align-items: center;
}

.btn-quote {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    background-color: var(--color-primary);
    color: var(--color-text-light);
    font-size: 13.5px;
    font-weight: 600;
    padding: 10px 22px;
    border-radius: 6px;
    text-decoration: none;
    transition: all var(--transition-base);
}

.btn-quote:hover {
    background-color: var(--color-primary-dark);
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(1, 43, 145, 0.28);
    color: var(--color-text-light);
}

.btn-quote-chevron {
    transition: transform var(--transition-fast);
}

.btn-quote:hover .btn-quote-chevron {
    transform: translateX(2px);
}

/* Mobile Toggle Button */
.nav-toggle-btn {
    display: none;
    flex-direction: column;
    justify-content: space-between;
    width: 28px;
    height: 20px;
    background: transparent;
    border: none;
    padding: 0;
}

.toggle-bar {
    width: 100%;
    height: 2.5px;
    background-color: var(--color-primary);
    border-radius: 2px;
    transition: all var(--transition-base);
}

/* --------------------------------------------------------------------------
   4. Hero Section
   -------------------------------------------------------------------------- */
.hero-section {
    position: relative;
    width: 100%;
    min-height: 560px;
    background-image: url('../images/hero-section-bg.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding-top: 48px;
    padding-bottom: 0;
    margin-bottom: 115px;
}

.hero-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    flex-grow: 1;
    position: relative;
    z-index: 2;
}

.hero-main-row {
    align-items: center;
    flex-grow: 1;
    margin-bottom: 24px;
}

.hero-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 3;
}

.hero-content-wrapper {
    max-width: 530px;
}

/* Subheading / Tagline */
.hero-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

.tagline-bar {
    display: inline-block;
    width: 28px;
    height: 2.5px;
    background-color: var(--color-accent-red);
    border-radius: 2px;
    flex-shrink: 0;
}

.tagline-text {
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 2px;
    color: var(--color-primary);
    text-transform: uppercase;
}

/* Main Hero Heading */
.hero-title {
    font-size: 50px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 18px;
    letter-spacing: -0.6px;
}

.hero-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.hero-title-accent {
    display: block;
    color: var(--color-primary);
    margin-top: 4px;
}

/* Hero Description Paragraph */
.hero-description {
    font-size: 16.5px;
    line-height: 1.55;
    color: var(--color-text-body);
    margin-bottom: 30px;
    font-weight: 400;
    max-width: 480px;
}

/* CTA Buttons Group */
.hero-cta-group {
    display: flex;
    align-items: center;
    gap: 16px;
    margin-bottom: 36px;
    flex-wrap: wrap;
}

.btn-primary-hero {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background-color: var(--color-primary);
    color: var(--color-text-light);
    font-size: 14.5px;
    font-weight: 600;
    padding: 12.5px 26px;
    border-radius: 6px;
    border: 1.5px solid var(--color-primary);
    box-shadow: var(--shadow-btn);
    transition: all var(--transition-base);
}

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

.btn-secondary-hero {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    background-color: transparent;
    color: var(--color-primary);
    font-size: 14.5px;
    font-weight: 600;
    padding: 12.5px 26px;
    border-radius: 6px;
    border: 1.5px solid var(--color-primary);
    transition: all var(--transition-base);
}

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

.cta-chevron {
    transition: transform var(--transition-fast);
}

.btn-primary-hero:hover .cta-chevron,
.btn-secondary-hero:hover .cta-chevron {
    transform: translateX(3px);
}

/* Trust Badges */
.hero-trust-badges {
    display: flex;
    align-items: center;
    gap: 26px;
    flex-wrap: wrap;
}

.trust-badge-item {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--color-primary);
}

.trust-badge-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    flex-shrink: 0;
}

.trust-badge-label {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--color-primary);
    white-space: nowrap;
}

/* Hero Visual Column (Desktop) */
.hero-col-visual {
    position: relative;
}

.hero-mobile-visual-wrap {
    display: none;
}

/* --------------------------------------------------------------------------
   5. Bottom Floating Category Bar
   -------------------------------------------------------------------------- */
.hero-category-wrapper {
    max-width: 1192px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-top: 32px;
    margin-bottom: -50px;
    position: relative;
    z-index: 10;
}

.category-card {
    background-color: var(--color-bg-card);
    border-radius: 16px;
    box-shadow: 0 14px 38px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: stretch;
    border: 1px solid rgba(226, 232, 240, 0.9);
    min-height: 135px;
    overflow: hidden;
    backdrop-filter: blur(10px);
}

.category-card-item {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 16px;
    padding: 24px 20px;
    text-decoration: none;
    transition: all var(--transition-base);
    background-color: var(--color-bg-card);
}

.category-card-item:hover {
    background-color: var(--color-bg-hover);
    transform: translateY(-2px);
}

.category-item-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    transition: transform var(--transition-base);
    flex-shrink: 0;
}

.category-card-item:hover .category-item-icon {
    transform: scale(1.08);
}

.category-item-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-primary);
    white-space: nowrap;
    letter-spacing: -0.2px;
    font-family: var(--font-primary);
}

.category-card-divider {
    width: 1px;
    height: 48px;
    background-color: var(--color-border-light);
    align-self: center;
    flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   6. About Us Section
   -------------------------------------------------------------------------- */
.about-section {
    position: relative;
    width: 100%;
    min-height: 640px;
    background-image: url('../images/about-us-bg.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    display: flex;
    align-items: center;
    padding-top: 60px;
    padding-bottom: 60px;
    overflow: hidden;
}

.about-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.about-main-row {
    align-items: center;
    min-height: 480px;
}

.about-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 3;
}

.about-content-wrapper {
    max-width: 535px;
}

/* Subheading / Tagline */
.about-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

/* Main Heading */
.about-title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 20px;
    letter-spacing: -0.6px;
}

.about-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.about-title-accent {
    display: block;
    color: var(--color-primary);
    margin-top: 4px;
}

/* Description Paragraph */
.about-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 36px;
    font-weight: 400;
    max-width: 500px;
}

/* Feature Circles Row */
.about-features-row {
    display: flex;
    align-items: flex-start;
    gap: 32px;
}

.about-feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
}

.about-feature-circle {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background-color: #edf4ff;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(1, 43, 145, 0.08);
    transition: all var(--transition-base);
}

.about-feature-item:hover .about-feature-circle {
    transform: translateY(-3px);
    background-color: var(--color-primary);
    color: var(--color-text-light);
    box-shadow: 0 6px 18px rgba(1, 43, 145, 0.28);
}

.about-feature-label {
    font-size: 13px;
    font-weight: 700;
    line-height: 1.3;
    color: var(--color-primary);
    text-align: center;
    white-space: nowrap;
}

/* Visual Column on Desktop (Handled via background-image) */
.about-col-visual {
    position: relative;
}

.about-mobile-visual-wrap {
    display: none;
}

/* --------------------------------------------------------------------------
   7. Our Product Categories Section
   -------------------------------------------------------------------------- */
.products-section {
    background-color: var(--color-bg-page);
    padding-top: 80px;
    padding-bottom: 90px;
    position: relative;
    width: 100%;
}

.products-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.products-header-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 48px;
}

.products-tagline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.products-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
    text-align: center;
}

.products-title-dark {
    color: var(--color-heading-dark);
}

.products-title-accent {
    color: var(--color-primary);
}

.products-description {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-body);
    max-width: 740px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
}

/* Product Cards Grid & Layout */
.products-cards-row {
    row-gap: 32px;
}

.products-col {
    display: flex;
}

.product-card {
    background-color: var(--color-bg-card);
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    transition: all var(--transition-base);
}

.product-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(1, 43, 145, 0.12);
    border-color: rgba(1, 43, 145, 0.25);
}

.product-card-img-wrap {
    position: relative;
    width: 100%;
    height: 220px;
    overflow: hidden;
    background-color: #f1f5f9;
}

.product-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.product-card:hover .product-card-img {
    transform: scale(1.04);
}

/* Circular Badge Overlap */
.product-card-badge-container {
    position: relative;
    margin-top: -27px;
    padding-left: 20px;
    z-index: 5;
}

.product-card-badge {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background-color: #edf4ff;
    color: var(--color-primary);
    border: 4px solid #ffffff;
    box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all var(--transition-base);
}

.product-card:hover .product-card-badge {
    transform: scale(1.06);
    background-color: var(--color-primary);
    color: var(--color-text-light);
}

/* Card Body */
.product-card-body {
    padding: 16px 22px 24px 22px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.product-card-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 12px;
}

.product-card-text {
    font-size: 13.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 24px;
    min-height: 64px;
    font-weight: 400;
}

.btn-product-card {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    align-self: flex-start;
    margin-top: auto;
    padding: 9px 18px;
    border-radius: 6px;
    border: 1.5px solid var(--color-primary);
    color: var(--color-primary);
    background-color: transparent;
    font-size: 13.5px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-base);
}

.btn-product-card:hover {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    box-shadow: 0 4px 12px rgba(1, 43, 145, 0.22);
}

.btn-card-chevron {
    transition: transform var(--transition-fast);
}

.btn-product-card:hover .btn-card-chevron {
    transform: translateX(3px);
}

/* --------------------------------------------------------------------------
   8. Why Choose Us Section
   -------------------------------------------------------------------------- */
.why-choose-section {
    position: relative;
    width: 100%;
    min-height: 680px;
    background-image: url('../images/why-choose-us-bg.png');
    background-repeat: no-repeat;
    background-position: center bottom;
    background-size: cover;
    padding-top: 45px;
    padding-bottom: 85px;
    overflow: hidden;
}

.why-choose-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

/* Section Header (Centered) */
.why-header-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 28px;
}

.why-tagline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.why-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
    text-align: center;
}

.why-title-dark {
    color: var(--color-heading-dark);
}

.why-title-accent {
    color: var(--color-primary);
}

.why-description {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-body);
    max-width: 740px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
}

/* 3-Column Layout */
.why-main-row {
    align-items: center;
}

.why-col-left {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 20px;
}

.why-col-right {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: 20px;
}

.why-col-center {
    position: relative;
    min-height: 380px;
}

.why-mobile-visual-wrap {
    display: none;
}

/* Feature Cards */
.why-feature-card {
    background-color: var(--color-bg-card);
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
    padding: 18px 20px;
    width: 100%;
    max-width: 335px;
    display: flex;
    align-items: flex-start;
    gap: 16px;
    transition: all var(--transition-base);
}

.why-feature-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 12px 30px rgba(1, 43, 145, 0.1);
    border-color: rgba(1, 43, 145, 0.25);
}

.why-card-icon {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #edf4ff;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(1, 43, 145, 0.06);
    transition: all var(--transition-base);
}

.why-feature-card:hover .why-card-icon {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    transform: scale(1.05);
    box-shadow: 0 4px 14px rgba(1, 43, 145, 0.25);
}

.why-card-content {
    display: flex;
    flex-direction: column;
}

.why-card-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 5px;
}

.why-card-text {
    font-size: 12.5px;
    line-height: 1.55;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
}

/* --------------------------------------------------------------------------
   9. Industries We Serve Section
   -------------------------------------------------------------------------- */
.industries-section {
    background-color: var(--color-bg-page);
    padding-top: 70px;
    padding-bottom: 80px;
    position: relative;
    width: 100%;
    overflow: hidden;
}

.industries-container {
    max-width: 1360px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.industries-main-row {
    align-items: center;
    justify-content: space-between;
}

.industries-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.industries-content-wrapper {
    max-width: 550px;
}

/* Subheading / Tagline */
.industries-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

/* Main Section Heading */
.industries-title {
    font-size: 52px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
}

.industries-title-dark {
    color: var(--color-heading-dark);
}

.industries-title-accent {
    color: var(--color-primary);
}

/* Description Paragraph */
.industries-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 34px;
    max-width: 530px;
    font-weight: 400;
}

/* 2-Column Industries Grid */
.industries-grid-wrapper {
    display: flex;
    align-items: stretch;
    gap: 28px;
    width: 100%;
}

.industries-col-list {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.industries-grid-divider {
    width: 1px;
    background-color: var(--color-border-light);
    margin-top: 4px;
    margin-bottom: 4px;
    flex-shrink: 0;
}

.industry-item {
    display: flex;
    align-items: center;
    gap: 14px;
    text-decoration: none;
    transition: all var(--transition-fast);
}

.industry-item:hover .industry-label {
    color: var(--color-primary);
}

.industry-icon-badge {
    width: 46px;
    height: 46px;
    border-radius: 50%;
    background-color: #edf4ff;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(1, 43, 145, 0.06);
    transition: all var(--transition-base);
}

.industry-item:hover .industry-icon-badge {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    transform: scale(1.08);
    box-shadow: 0 4px 14px rgba(1, 43, 145, 0.25);
}

.industry-label {
    font-size: 14.5px;
    font-weight: 700;
    color: var(--color-heading-dark);
    line-height: 1.35;
    white-space: nowrap;
    transition: color var(--transition-fast);
}

/* Visual Column with Right Image */
.industries-col-visual {
    display: flex;
    align-items: center;
    justify-content: flex-end;
    position: relative;
}

.industries-artwork-wrap {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.industries-artwork-img {
    width: 100%;
    height: auto;
    max-width: 860px;
    object-fit: contain;
    filter: drop-shadow(0 12px 32px rgba(0, 0, 0, 0.06));
    transition: transform 0.4s ease;
}

.industries-artwork-wrap:hover .industries-artwork-img {
    transform: scale(1.02);
}

/* --------------------------------------------------------------------------
   10. Featured Products Section
   -------------------------------------------------------------------------- */
.featured-products-section {
    background-color: var(--color-bg-page);
    padding-top: 75px;
    padding-bottom: 90px;
    position: relative;
    width: 100%;
}

.featured-products-container {
    max-width: 1360px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

/* Section Header (Centered) */
.featured-header-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 34px;
}

.featured-tagline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.featured-title {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
    text-align: center;
}

.featured-title-dark {
    color: var(--color-heading-dark);
}

.featured-title-accent {
    color: var(--color-primary);
}

.featured-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
}

/* Category Filter Tabs Bar */
.featured-filters-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 32px;
    width: 100%;
}

.featured-tabs-group {
    display: flex;
    align-items: center;
    gap: 12px;
    flex-wrap: wrap;
}

.featured-tab-btn {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    padding: 10px 18px;
    border-radius: 9px;
    border: 1px solid transparent;
    background-color: #f1f5f9;
    color: #475569;
    font-size: 14px;
    font-weight: 600;
    line-height: 1;
    cursor: pointer;
    transition: all var(--transition-fast);
}

.featured-tab-btn .tab-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    transition: color var(--transition-fast);
}

.featured-tab-btn:hover {
    background-color: #e2e8f0;
    color: var(--color-heading-dark);
}

.featured-tab-btn.active {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    box-shadow: 0 4px 14px rgba(1, 43, 145, 0.22);
}

.featured-tab-btn.active .tab-icon {
    color: var(--color-text-light);
}

/* View All Products Button */
.btn-view-all-products {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 10px 22px;
    border-radius: 9px;
    border: 1.5px solid var(--color-primary);
    background-color: transparent;
    color: var(--color-primary);
    font-size: 14px;
    font-weight: 700;
    text-decoration: none;
    white-space: nowrap;
    transition: all var(--transition-fast);
}

.btn-view-all-products:hover {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    box-shadow: 0 4px 14px rgba(1, 43, 145, 0.22);
}

.btn-view-all-chevron {
    transition: transform var(--transition-fast);
}

.btn-view-all-products:hover .btn-view-all-chevron {
    transform: translateX(3px);
}

/* 5-Column Cards Grid */
.featured-cards-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    width: 100%;
}

.featured-product-card {
    background-color: var(--color-bg-card);
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.04);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: all var(--transition-base);
}

.featured-product-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 12px 28px rgba(1, 43, 145, 0.12);
    border-color: rgba(1, 43, 145, 0.25);
}

.featured-card-img-wrap {
    width: 100%;
    height: 195px;
    overflow: hidden;
    background-color: #f8fafc;
    position: relative;
}

.featured-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transition: transform 0.4s ease;
}

.featured-product-card:hover .featured-card-img {
    transform: scale(1.05);
}

.featured-card-body {
    padding: 18px 16px 20px 16px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    justify-content: space-between;
}

.featured-card-title {
    font-size: 17px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 8px;
    line-height: 1.3;
}

.featured-card-text {
    font-size: 13px;
    line-height: 1.5;
    color: var(--color-text-body);
    margin-top: 0;
    margin-bottom: 20px;
    font-weight: 400;
    min-height: 56px;
}

/* View Details Button */
.btn-featured-details {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10px 16px;
    border-radius: 8px;
    border: 1.5px solid var(--color-primary);
    background-color: #ffffff;
    color: var(--color-primary);
    font-size: 13.5px;
    font-weight: 700;
    text-decoration: none;
    transition: all var(--transition-fast);
}

.btn-featured-details:hover {
    background-color: var(--color-primary);
    color: var(--color-text-light);
    box-shadow: 0 4px 12px rgba(1, 43, 145, 0.25);
}

.btn-details-chevron {
    transition: transform var(--transition-fast);
}

.btn-featured-details:hover .btn-details-chevron {
    transform: translateX(3px);
}

/* --------------------------------------------------------------------------
   11. Our Supply Solutions Section
   -------------------------------------------------------------------------- */
.supply-solutions-section {
    background-color: var(--color-bg-page);
    padding-top: 80px;
    padding-bottom: 95px;
    position: relative;
    width: 100%;
}

.supply-solutions-container {
    max-width: 1360px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.supply-header-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 52px;
}

.supply-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.supply-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
}

.supply-title-dark {
    color: var(--color-heading-dark);
}

.supply-title-accent {
    color: #1351e6;
}

.supply-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    font-weight: 400;
}

/* 4 Solution Cards Row & Columns */
.supply-cards-row {
    margin-left: -12px;
    margin-right: -12px;
    row-gap: 24px;
}

.supply-col-card {
    padding-left: 12px;
    padding-right: 12px;
    display: flex;
}

/* Solution Card */
.supply-solution-card {
    width: 100%;
    background-color: var(--color-bg-card);
    border: 1px solid #edf1f7;
    border-radius: 16px;
    overflow: visible;
    display: flex;
    flex-direction: column;
    position: relative;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.04);
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}

.supply-solution-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 16px 36px rgba(1, 43, 145, 0.1);
    border-color: #cbd5e1;
}

/* Card Image Wrapper */
.supply-card-img-wrap {
    position: relative;
    width: 100%;
    height: 200px;
    border-radius: 15px 15px 0 0;
    overflow: visible;
}

.supply-card-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    border-radius: 15px 15px 0 0;
    display: block;
    transition: transform 0.4s ease;
}

.supply-solution-card:hover .supply-card-img {
    filter: brightness(1.02);
}

/* Badge Icon (overlaps bottom-left corner of image) */
.supply-card-badge {
    position: absolute;
    left: 20px;
    bottom: -22px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background-color: #ffffff;
    border: 1.5px solid #dbeafe;
    color: #1351e6;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 6px 16px rgba(1, 43, 145, 0.14);
    z-index: 3;
    transition: all var(--transition-base);
}

.supply-solution-card:hover .supply-card-badge {
    background-color: #1351e6;
    color: #ffffff;
    border-color: #1351e6;
    transform: scale(1.08);
    box-shadow: 0 8px 20px rgba(19, 81, 230, 0.3);
}

/* Card Body */
.supply-card-body {
    padding: 34px 22px 26px 22px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.supply-card-title {
    font-size: 18px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 1.3;
}

.supply-card-text {
    font-size: 13.5px;
    line-height: 1.58;
    color: #556275;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
}

/* --------------------------------------------------------------------------
   Commitment Banner (Bottom of Supply Solutions)
   -------------------------------------------------------------------------- */
.supply-commitment-banner {
    margin-top: 50px;
    background-color: #f8faff;
    border: 1px solid #e3eaf4;
    border-radius: 16px;
    padding: 28px 40px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);
}

/* Lead Block (Left) */
.commitment-lead-block {
    display: flex;
    flex-direction: column;
    justify-content: center;
    border-left: 3.5px solid var(--color-accent-red);
    padding-left: 18px;
    flex-shrink: 0;
    min-width: 200px;
}

.commitment-tagline {
    margin-bottom: 4px;
}

.commitment-tagline-text {
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.8px;
    color: #0b1a30;
    text-transform: uppercase;
}

.commitment-lead-title {
    font-size: 26px;
    font-weight: 800;
    line-height: 1.15;
    margin: 0;
    letter-spacing: -0.3px;
    display: flex;
    flex-direction: column;
}

.commitment-title-dark {
    color: var(--color-heading-dark);
}

.commitment-title-accent {
    color: #1351e6;
}

/* Features Grid (Middle) */
.commitment-features-grid {
    display: flex;
    align-items: flex-start;
    justify-content: space-around;
    flex-grow: 1;
    gap: 24px;
    padding-left: 10px;
    padding-right: 10px;
}

.commitment-feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    flex: 1;
}

.commitment-feature-circle {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #eaf1ff;
    color: #1351e6;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 8px rgba(1, 43, 145, 0.06);
    transition: all var(--transition-fast);
}

.commitment-feature-item:hover .commitment-feature-circle {
    background-color: #1351e6;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(19, 81, 230, 0.25);
}

.commitment-feature-label {
    font-size: 12.5px;
    font-weight: 700;
    color: #1a273a;
    line-height: 1.3;
    text-align: center;
}

/* CTA Wrapper (Right) */
.commitment-cta-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    flex-shrink: 0;
    max-width: 230px;
    text-align: center;
}

.btn-commitment-quote {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 13px 26px;
    border-radius: 9px;
    background-color: #1351e6;
    color: #ffffff;
    font-size: 14.5px;
    font-weight: 700;
    text-decoration: none;
    box-shadow: 0 4px 16px rgba(19, 81, 230, 0.28);
    transition: all var(--transition-fast);
}

.btn-commitment-quote:hover {
    background-color: #0b3cb8;
    box-shadow: 0 6px 20px rgba(19, 81, 230, 0.38);
    transform: translateY(-2px);
}

.btn-commitment-chevron {
    transition: transform var(--transition-fast);
}

.btn-commitment-quote:hover .btn-commitment-chevron {
    transform: translateX(3px);
}

.commitment-cta-subtext {
    font-size: 12px;
    line-height: 1.45;
    color: #64748b;
    margin-top: 8px;
    margin-bottom: 0;
    text-align: center;
}

/* --------------------------------------------------------------------------
   8. Clients and Partners Section
   -------------------------------------------------------------------------- */
.clients-section {
    background-color: var(--color-bg-page);
    padding-top: 80px;
    padding-bottom: 95px;
    position: relative;
    width: 100%;
}

.clients-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.clients-header-wrapper {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    margin-bottom: 44px;
}

.clients-tagline {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.clients-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
    text-align: center;
}

.clients-title-dark {
    color: var(--color-heading-dark);
}

.clients-title-accent {
    color: #0e33f1;
}

.clients-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    max-width: 720px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 0;
    text-align: center;
    font-weight: 400;
}

/* Clients Logo Grid (8 Columns on Desktop) */
.clients-logos-grid {
    display: grid;
    grid-template-columns: repeat(8, 1fr);
    gap: 16px;
    align-items: stretch;
    width: 100%;
}

/* Client Logo Card */
.client-logo-card {
    background-color: var(--color-bg-card);
    border: 1px solid #edf1f7;
    border-radius: 12px;
    min-height: 78px;
    padding: 12px 14px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02);
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
    cursor: default;
}

.client-logo-card:hover {
    transform: translateY(-3px);
    box-shadow: 0 8px 20px rgba(1, 43, 145, 0.08);
    border-color: #cbd5e1;
}

/* Client Logo Image */
.client-logo-img {
    max-width: 100%;
    max-height: 48px;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
    margin: 0 auto;
    transition: transform 0.25s ease, filter 0.25s ease;
}

.client-logo-card:hover .client-logo-img {
    transform: scale(1.05);
}

/* --------------------------------------------------------------------------
   9. Request a Quote Section
   -------------------------------------------------------------------------- */
.quote-section {
    position: relative;
    width: 100%;
    min-height: 660px;
    background-image: url('../images/Request-a-quote-bg.png');
    background-repeat: no-repeat;
    background-position: center center;
    background-size: 100% 100%;
    padding-top: 75px;
    padding-bottom: 75px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.section-anchor {
    display: block;
    position: relative;
    top: -80px;
    visibility: hidden;
}

.quote-container {
    max-width: 100%;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: clamp(24px, 5vw, 80px);
    padding-right: clamp(16px, 2.5vw, 36px);
    position: relative;
    z-index: 2;
}

.quote-main-row {
    align-items: center;
    justify-content: space-between;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
}

/* Left Content Column */
.quote-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
    max-width: 680px;
}

.quote-content-wrapper {
    max-width: 680px;
    width: 100%;
}

/* Tagline */
.quote-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 14px;
}

/* Main Heading */
.quote-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.16;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.5px;
    max-width: 540px;
}


.quote-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.quote-title-accent {
    display: block;
    color: #0e33f1;
    margin-top: 4px;
}

/* Description Paragraph */
.quote-description {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 32px;
    font-weight: 400;
    max-width: 500px;
}

/* 4 Feature Badges Row */
.quote-features-row {
    display: flex;
    align-items: flex-start;
    gap: 28px;
    margin-bottom: 38px;
}

.quote-feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 10px;
    flex: 1;
    max-width: 95px;
}

.quote-feature-circle {
    width: 54px;
    height: 54px;
    border-radius: 50%;
    background-color: #eaf1ff;
    color: #0e33f1;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(14, 51, 241, 0.08);
    transition: all var(--transition-base);
}

.quote-feature-item:hover .quote-feature-circle {
    transform: translateY(-3px);
    background-color: #0e33f1;
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(14, 51, 241, 0.28);
}

.quote-feature-label {
    font-size: 12.5px;
    font-weight: 700;
    color: #0b1a30;
    line-height: 1.3;
    text-align: center;
    white-space: nowrap;
}

/* Floating Contact Details Pill Card */
.quote-contact-pill {
    background-color: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 50px;
    padding: 11px 22px;
    display: inline-flex;
    align-items: center;
    gap: 14px;
    box-shadow: 0 14px 34px rgba(11, 26, 48, 0.10), 0 3px 10px rgba(0, 0, 0, 0.04);
    width: fit-content;
    max-width: 100%;
    position: relative;
    z-index: 4;
}

.contact-pill-item {
    display: flex;
    align-items: center;
    gap: 9px;
    text-decoration: none;
    color: inherit;
    flex-shrink: 0;
    transition: transform var(--transition-fast), opacity var(--transition-fast);
}

.contact-pill-item:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

.contact-pill-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: #eaf1ff;
    color: #0e33f1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 2px 8px rgba(14, 51, 241, 0.10);
}

.contact-pill-icon svg {
    width: 16px;
    height: 16px;
}

.contact-pill-info {
    display: flex;
    flex-direction: column;
    flex-shrink: 0;
}

.contact-pill-label {
    font-size: 10.5px;
    font-weight: 700;
    color: #64748b;
    line-height: 1.2;
    text-transform: uppercase;
    letter-spacing: 0.4px;
    white-space: nowrap;
}

.contact-pill-val {
    font-size: 13px;
    font-weight: 700;
    color: #0b1a30;
    line-height: 1.3;
    white-space: nowrap;
}

.contact-pill-divider {
    width: 1px;
    height: 26px;
    background-color: #e2e8f0;
    flex-shrink: 0;
}

/* Right Form Column - positioned at maximum right side */
.quote-col-form {
    display: flex;
    justify-content: flex-end;
    align-items: center;
    z-index: 2;
    margin-left: auto;
    padding-right: 0;
}

/* Form Card - reduced compact width */
.quote-form-card {
    background-color: #ffffff;
    border: 1px solid #edf1f7;
    border-radius: 16px;
    padding: 20px 18px 16px 18px;
    box-shadow: 0 16px 40px rgba(0, 0, 0, 0.08);
    width: 100%;
    max-width: 325px;
    position: relative;
    margin-left: auto;
    margin-right: 0;
}

.quote-form-header {
    margin-bottom: 12px;
}

.quote-form-title {
    font-size: 22px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 3px 0;
    letter-spacing: -0.3px;
}

.quote-form-title-dark {
    color: var(--color-heading-dark);
}

.quote-form-title-accent {
    color: #0e33f1;
}

.quote-form-subtitle {
    font-size: 11.5px;
    line-height: 1.35;
    color: #64748b;
    margin: 0;
}

/* Form Layout */
.quote-form {
    display: flex;
    flex-direction: column;
    gap: 9px;
}

.quote-form-row {
    display: flex;
    gap: 8px;
    width: 100%;
}

.quote-form-group {
    position: relative;
    flex: 1;
    min-width: 0;
    display: flex;
    align-items: center;
}

.quote-form-group.full-width {
    width: 100%;
}

.quote-input-icon {
    position: absolute;
    left: 10px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
    z-index: 2;
}

.quote-input-icon.textarea-icon {
    top: 11px;
    transform: none;
}

.quote-input,
.quote-select,
.quote-textarea {
    width: 100%;
    background-color: #ffffff;
    border: 1.5px solid #e2e8f0;
    border-radius: 8px;
    padding: 8px 10px 8px 32px;
    font-family: var(--font-primary);
    font-size: 12px;
    color: var(--color-heading-dark);
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.quote-input::placeholder,
.quote-textarea::placeholder {
    color: #94a3b8;
    font-weight: 500;
}

.quote-input:focus,
.quote-select:focus,
.quote-textarea:focus {
    border-color: #0e33f1;
    outline: none;
    box-shadow: 0 0 0 3px rgba(14, 51, 241, 0.12);
}

/* Select Dropdown */
.quote-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    padding-right: 24px;
    color: #94a3b8;
}

.quote-select:valid {
    color: var(--color-heading-dark);
}

.quote-select-chevron {
    position: absolute;
    right: 9px;
    top: 50%;
    transform: translateY(-50%);
    color: #94a3b8;
    pointer-events: none;
    display: flex;
    align-items: center;
    justify-content: center;
}

.quote-textarea {
    resize: vertical;
    min-height: 58px;
    padding-top: 8px;
}

/* Submit Button */
.btn-submit-quote {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 10.5px 16px;
    background-color: #0e33f1;
    color: #ffffff;
    font-family: var(--font-primary);
    font-size: 13.5px;
    font-weight: 700;
    border: none;
    border-radius: 8px;
    cursor: pointer;
    box-shadow: 0 4px 16px rgba(14, 51, 241, 0.28);
    transition: all var(--transition-fast);
    margin-top: 2px;
}

.btn-submit-quote:hover {
    background-color: #0b2cb8;
    transform: translateY(-2px);
    box-shadow: 0 6px 22px rgba(14, 51, 241, 0.38);
}

.btn-submit-quote:active {
    transform: translateY(0);
}

.btn-submit-chevron {
    transition: transform var(--transition-fast);
}

.btn-submit-quote:hover .btn-submit-chevron {
    transform: translateX(3px);
}

@keyframes spin {
    from {
        transform: rotate(0deg);
    }

    to {
        transform: rotate(360deg);
    }
}

/* --------------------------------------------------------------------------
   10. About Page Hero Section
   -------------------------------------------------------------------------- */
.about-hero-section {
    position: relative;
    width: 100%;
    min-height: 520px;
    background-image: url('../images/about-banner-bg.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    display: flex;
    align-items: center;
    padding-top: 60px;
    padding-bottom: 100px;
    overflow: hidden;
}

/* Contact Page Banner Section Specific Background */
.contact-hero-section,
#contact-hero {
    background-image: url('../images/contact-page-banner-bg.png');
    background-position: right center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Product Page Banner Section Specific Background */
.products-hero-section,
#products-hero {
    background-image: url('../images/product-banner-bg.png');
    background-position: right center;
    background-size: cover;
    background-repeat: no-repeat;
}

/* Industries Page Banner Section Specific Background */
.industries-hero-section,
#industries-hero {
    background-image: url('../images/industries-banner-bg.png');
    background-position: right center;
    background-size: cover;
    background-repeat: no-repeat;
}



.about-hero-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.about-hero-row {
    align-items: center;
}

.about-hero-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
}

.about-hero-content-wrapper {
    max-width: 530px;
}

/* Tagline */
.about-hero-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

/* Main Heading */
.about-hero-title {
    font-size: 50px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 18px;
    letter-spacing: -0.6px;
}

.about-hero-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.about-hero-title-accent {
    display: block;
    color: #0e33f1;
    margin-top: 4px;
}

/* Description Paragraph */
.about-hero-description {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
    max-width: 490px;
}

.about-hero-col-visual {
    position: relative;
}

.about-hero-mobile-visual-wrap {
    display: none;
}

/* --------------------------------------------------------------------------
   11. Company Statistics Section (About Page)
   -------------------------------------------------------------------------- */
.about-stats-section {
    position: relative;
    z-index: 10;
    margin-top: -50px;
    padding-bottom: 50px;
}

.about-stats-container {
    max-width: 1240px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.about-stats-card {
    background-color: var(--color-bg-card);
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 14px 38px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: center;
    padding: 18px 18px;
    backdrop-filter: blur(10px);
}

.about-stat-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 0 12px;
    transition: transform var(--transition-base);
}

.about-stat-item:hover {
    transform: translateY(-3px);
}

.about-stat-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 36px;
    margin-bottom: 8px;
    color: var(--color-primary);
    transition: transform var(--transition-base);
}

.about-stat-item:hover .about-stat-icon {
    transform: scale(1.08);
}

.about-stat-svg {
    width: 34px;
    height: 34px;
}

.about-stat-number {
    font-size: 28px;
    font-weight: 800;
    color: var(--color-heading-dark);
    line-height: 1.15;
    margin-bottom: 3px;
    letter-spacing: -0.5px;
    font-family: var(--font-primary);
}

.about-stat-label {
    font-size: 13.5px;
    font-weight: 500;
    color: var(--color-text-body);
    white-space: nowrap;
    line-height: 1.3;
    font-family: var(--font-primary);
}

.about-stat-divider {
    width: 1px;
    height: 48px;
    background-color: var(--color-border-light);
    flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   12. Our Story Section (About Page)
   -------------------------------------------------------------------------- */
.our-story-section {
    position: relative;
    padding-top: 30px;
    padding-bottom: 90px;
    background-color: var(--color-bg-light);
    overflow: hidden;
}

.our-story-container {
    max-width: 1300px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.our-story-row {
    align-items: center;
}

.our-story-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.our-story-content-wrapper {
    max-width: 540px;
}

/* Tagline */
.our-story-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

/* Main Heading */
.our-story-title {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.18;
    margin-top: 0;
    margin-bottom: 24px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.our-story-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.our-story-title-accent {
    display: block;
    color: var(--color-primary);
    margin-top: 4px;
}

/* Description Paragraphs */
.our-story-description p {
    font-size: 15.5px;
    line-height: 1.65;
    color: var(--color-text-body);
    margin-bottom: 18px;
    font-weight: 400;
    font-family: var(--font-primary);
}

.our-story-description p:last-child {
    margin-bottom: 0;
}

/* CTA Button */
.our-story-cta-wrap {
    margin-top: 30px;
}

.btn-our-story {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: var(--color-primary);
    color: var(--color-text-light);
    font-size: 15px;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none;
    box-shadow: var(--shadow-btn);
    transition: all var(--transition-base);
}

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

.btn-our-story-arrow {
    transition: transform var(--transition-fast);
}

.btn-our-story:hover .btn-our-story-arrow {
    transform: translateX(4px);
}

/* Image Column - Increased Height & Moved to Right */
.our-story-col-image {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.our-story-image-card {
    width: 100%;
    max-width: 820px;
    position: relative;
    margin-right: -45px;
    transition: transform var(--transition-base);
}

.our-story-image-card:hover {
    transform: translateY(-4px);
}

.our-story-img {
    width: 100%;
    height: 560px;
    min-height: 540px;
    max-height: 640px;
    display: block;
    object-fit: contain;
}

/* --------------------------------------------------------------------------
   13. Why Choose Us Section (About Page)
   -------------------------------------------------------------------------- */
.about-why-section {
    position: relative;
    padding-top: 40px;
    padding-bottom: 95px;
    background-color: var(--color-bg-light);
}

.about-why-container {
    max-width: 1240px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.about-why-header {
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
}

.about-why-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.about-why-title {
    font-size: 42px;
    font-weight: 800;
    color: var(--color-heading-dark);
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.about-why-subtitle {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* Feature Cards Grid */
.about-why-grid {
    row-gap: 24px;
}

.about-why-col {
    display: flex;
}

.about-why-card {
    background-color: var(--color-bg-card);
    border-radius: 18px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    padding: 38px 24px 34px 24px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    transition: all var(--transition-base);
}

.about-why-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 45px rgba(14, 51, 241, 0.09), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: rgba(14, 51, 241, 0.25);
}

/* Circular Icon Badge */
.about-why-icon-badge {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: radial-gradient(circle, #e9f1ff 0%, #edf4ff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary);
    margin-bottom: 22px;
    transition: transform var(--transition-base), background-color var(--transition-base);
}

.about-why-card:hover .about-why-icon-badge {
    transform: scale(1.08);
    background: radial-gradient(circle, #dde9ff 0%, #e8f1ff 100%);
}

.about-why-icon-svg {
    width: 36px;
    height: 36px;
}

/* Card Title */
.about-why-card-title {
    font-size: 19px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 12px;
    line-height: 1.3;
    font-family: var(--font-primary);
}

/* Card Description */
.about-why-card-desc {
    font-size: 14px;
    line-height: 1.55;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* --------------------------------------------------------------------------
   14. Our Values Section (About Page)
   -------------------------------------------------------------------------- */
.our-values-section {
    position: relative;
    padding-top: 60px;
    padding-bottom: 90px;
    background-color: #ffffff;
    background: radial-gradient(ellipse 65% 65% at 92% 70%, rgba(218, 235, 255, 0.45) 0%, rgba(238, 246, 255, 0.18) 50%, rgba(255, 255, 255, 0) 75%), #ffffff;
    overflow: hidden;
}

.our-values-container {
    max-width: 1280px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.our-values-row {
    align-items: center;
}

.our-values-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
}

.our-values-content-wrapper {
    max-width: 560px;
}

/* Tagline */
.our-values-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

/* Main Heading */
.our-values-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 22px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.our-values-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.our-values-title-accent {
    display: block;
    color: var(--color-primary);
    margin-top: 4px;
    white-space: nowrap;
}

/* Description Paragraph */
.our-values-description {
    font-size: 15.5px;
    line-height: 1.65;
    color: var(--color-text-body);
    margin-bottom: 28px;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 520px;
}

/* 4 Value Feature Badges Row */
.our-values-features-row {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: 22px;
    margin-bottom: 36px;
    width: 100%;
    max-width: 540px;
}

.our-values-feature-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: 8px;
    flex: 1;
    max-width: 125px;
}

.our-values-feature-circle {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background-color: #eaf2ff;
    color: var(--color-primary);
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 4px 14px rgba(14, 51, 241, 0.08);
    transition: all var(--transition-base);
    margin-bottom: 2px;
}

.our-values-feature-item:hover .our-values-feature-circle {
    transform: translateY(-3px);
    background-color: var(--color-primary);
    color: #ffffff;
    box-shadow: 0 8px 20px rgba(14, 51, 241, 0.28);
}

.our-values-feature-label {
    font-size: 14px;
    font-weight: 700;
    color: var(--color-heading-dark);
    line-height: 1.25;
    text-align: center;
    font-family: var(--font-primary);
    margin-bottom: 0;
}

.our-values-feature-desc {
    font-size: 12px;
    line-height: 1.45;
    color: var(--color-text-body);
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
    text-align: center;
    font-family: var(--font-primary);
}

/* CTA Button */
.our-values-cta-wrap {
    display: flex;
    align-items: center;
}

.btn-our-values {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: var(--color-primary);
    color: var(--color-text-light);
    font-size: 15px;
    font-weight: 600;
    padding: 13px 28px;
    border-radius: 8px;
    text-decoration: none;
    box-shadow: 0 6px 18px rgba(14, 51, 241, 0.28);
    transition: all var(--transition-base);
    font-family: var(--font-primary);
}

.btn-our-values:hover {
    background-color: var(--color-primary-dark);
    color: var(--color-text-light);
    transform: translateY(-2px);
    box-shadow: 0 10px 24px rgba(14, 51, 241, 0.38);
}

.btn-our-values-arrow {
    transition: transform var(--transition-fast);
}

.btn-our-values:hover .btn-our-values-arrow {
    transform: translateX(4px);
}

/* Image Column */
.our-values-col-image {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}

.our-values-image-card {
    width: 100%;
    max-width: 820px;
    position: relative;
    margin-right: -40px;
    transition: transform var(--transition-base);
}

.our-values-image-card:hover {
    transform: translateY(-4px);
}

.our-values-img {
    width: 100%;
    height: 600px;
    min-height: 560px;
    max-height: 680px;
    display: block;
    object-fit: contain;
    filter: drop-shadow(0 15px 35px rgba(14, 51, 241, 0.08));
}

/* --------------------------------------------------------------------------
   15. Facilities Section (About Page)
   -------------------------------------------------------------------------- */
.about-facilities-section {
    position: relative;
    padding-top: 70px;
    padding-bottom: 95px;
    background-color: var(--color-bg-light);
    overflow: hidden;
}

.about-facilities-container {
    max-width: 1240px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.about-facilities-header {
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
}

.about-facilities-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.about-facilities-title {
    font-size: 42px;
    font-weight: 800;
    color: var(--color-heading-dark);
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.about-facilities-subtitle {
    font-size: 16px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 760px;
    margin-left: auto;
    margin-right: auto;
}

/* Facilities Cards Grid */
.about-facilities-grid {
    row-gap: 28px;
}

.about-facilities-col {
    display: flex;
}

.about-facilities-card {
    background-color: var(--color-bg-card);
    border-radius: 18px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 10px 30px rgba(0, 0, 0, 0.03);
    display: flex;
    flex-direction: column;
    width: 100%;
    overflow: hidden;
    transition: all var(--transition-base);
}

.about-facilities-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 45px rgba(14, 51, 241, 0.09), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: rgba(14, 51, 241, 0.25);
}

/* Card Image Wrapper */
.about-facilities-img-wrap {
    width: 100%;
    height: 220px;
    overflow: hidden;
    position: relative;
    background-color: #f1f5f9;
}

.about-facilities-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.4s ease;
}

.about-facilities-card:hover .about-facilities-img {
    transform: scale(1.05);
}

/* Card Content Body */
.about-facilities-card-body {
    padding: 24px 26px 28px 26px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    text-align: left;
}

.about-facilities-card-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 1.3;
    font-family: var(--font-primary);
}

.about-facilities-card-desc {
    font-size: 14.5px;
    line-height: 1.55;
    color: var(--color-text-body);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* --------------------------------------------------------------------------
   16. Our Team Section (About Page)
   -------------------------------------------------------------------------- */
.our-team-section {
    position: relative;
    width: 100%;
    min-height: 560px;
    background-image: url('../images/our-team-bg.png');
    background-repeat: no-repeat;
    background-position: left center;
    background-size: cover;
    display: flex;
    align-items: center;
    padding-top: 70px;
    padding-bottom: 70px;
    overflow: hidden;
}

.our-team-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.our-team-row {
    align-items: center;
    min-height: 480px;
}

.our-team-col-visual {
    position: relative;
}

.our-team-mobile-visual-wrap {
    display: none;
}

.our-team-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
}

.our-team-content-wrapper {
    max-width: 530px;
    margin-left: auto;
    padding-left: 15px;
}

/* Tagline */
.our-team-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
}

/* Main Heading */
.our-team-title {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 20px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.our-team-title-dark {
    display: block;
    color: var(--color-heading-dark);
}

.our-team-title-accent {
    display: block;
    color: #0e33f1;
    margin-top: 4px;
}

/* Description Paragraph */
.our-team-description {
    font-size: 15.5px;
    line-height: 1.65;
    color: var(--color-text-body);
    margin-bottom: 30px;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 500px;
}

/* Features List */
.our-team-features-list {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.our-team-feature-item {
    display: flex;
    align-items: center;
    gap: 18px;
    transition: transform var(--transition-base);
}

.our-team-feature-item:hover {
    transform: translateX(4px);
}

.our-team-feature-icon {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background-color: #eaf1fd;
    border: 1.5px solid rgba(14, 51, 241, 0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0e33f1;
    flex-shrink: 0;
    transition: all var(--transition-base);
}

.our-team-feature-item:hover .our-team-feature-icon {
    background-color: #0e33f1;
    color: #ffffff;
    border-color: #0e33f1;
    box-shadow: 0 6px 16px rgba(14, 51, 241, 0.28);
    transform: scale(1.05);
}

.our-team-svg {
    width: 25px;
    height: 25px;
}

.our-team-feature-text {
    display: flex;
    flex-direction: column;
}

.our-team-feature-title {
    font-size: 17px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 3px;
    line-height: 1.3;
    font-family: var(--font-primary);
}

.our-team-feature-desc {
    font-size: 14px;
    line-height: 1.5;
    color: var(--color-text-muted);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* --------------------------------------------------------------------------
   17. About CTA Section (About Page)
   -------------------------------------------------------------------------- */
.about-cta-section {
    position: relative;
    width: 100%;
    min-height: 420px;
    background-image: url('../images/about-cta-bg.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    display: flex;
    align-items: center;
    padding-top: 45px;
    padding-bottom: 45px;
    overflow: hidden;
}

.about-cta-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.about-cta-row {
    align-items: center;
    min-height: auto;
}

.about-cta-col-content {
    display: flex;
    flex-direction: column;
    justify-content: center;
    z-index: 2;
}

.about-cta-content-wrapper {
    max-width: 550px;
}

/* Tagline */
.about-cta-tagline {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 12px;
}

/* Main Heading */
.about-cta-title {
    font-size: 42px;
    font-weight: 800;
    line-height: 1.15;
    margin-top: 0;
    margin-bottom: 15px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.about-cta-title-dark {
    color: var(--color-heading-dark);
}

.about-cta-title-row {
    display: block;
    margin-top: 3px;
}

.about-cta-title-accent {
    color: #0e33f1;
}

/* Description Paragraph */
.about-cta-description {
    font-size: 15px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-bottom: 22px;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 510px;
}

/* 3 Value Features Row */
.about-cta-features-row {
    display: flex;
    align-items: center;
    gap: 18px;
    margin-bottom: 24px;
}

.about-cta-feature-item {
    display: flex;
    align-items: center;
    gap: 10px;
    transition: transform var(--transition-base);
}

.about-cta-feature-item:hover {
    transform: translateY(-2px);
}

.about-cta-feature-icon {
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #eaf1fd;
    border: 1.5px solid rgba(14, 51, 241, 0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0e33f1;
    flex-shrink: 0;
    transition: all var(--transition-base);
}

.about-cta-feature-item:hover .about-cta-feature-icon {
    background-color: #0e33f1;
    color: #ffffff;
    border-color: #0e33f1;
    box-shadow: 0 5px 14px rgba(14, 51, 241, 0.28);
    transform: scale(1.05);
}

.about-cta-svg {
    width: 20px;
    height: 20px;
}

.about-cta-feature-text {
    display: flex;
    flex-direction: column;
}

.about-cta-feature-title {
    font-size: 14.5px;
    font-weight: 700;
    color: var(--color-heading-dark);
    line-height: 1.25;
    font-family: var(--font-primary);
}

.about-cta-feature-desc {
    font-size: 12px;
    line-height: 1.35;
    color: var(--color-text-muted);
    font-weight: 400;
    font-family: var(--font-primary);
    white-space: nowrap;
}

.about-cta-feature-divider {
    width: 1px;
    height: 32px;
    background-color: var(--color-border-light);
    flex-shrink: 0;
}

/* CTA Button */
.about-cta-btn-wrap {
    display: flex;
    align-items: center;
}

.btn-about-cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    background-color: #0052ff;
    color: var(--color-text-light);
    font-size: 14.5px;
    font-weight: 600;
    padding: 11px 26px;
    border-radius: 8px;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(0, 82, 255, 0.28);
    transition: all var(--transition-base);
}

.btn-about-cta:hover {
    background-color: #0041cb;
    color: var(--color-text-light);
    transform: translateY(-2px);
    box-shadow: 0 6px 20px rgba(0, 82, 255, 0.38);
}

.btn-about-cta-arrow {
    transition: transform var(--transition-fast);
}

.btn-about-cta:hover .btn-about-cta-arrow {
    transform: translateX(4px);
}

/* Visual Column */
.about-cta-col-visual {
    position: relative;
}

.about-cta-mobile-visual-wrap {
    display: none;
}

/* --------------------------------------------------------------------------
   18. Site Footer
   -------------------------------------------------------------------------- */
.site-footer {
    position: relative;
    width: 100%;
    background-color: #ffffff;
    overflow: hidden;
}

.site-footer-main {
    padding-top: 55px;
    padding-bottom: 25px;
    position: relative;
    z-index: 2;
}

.footer-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.footer-main-row {
    row-gap: 36px;
    align-items: stretch;
}

.footer-col {
    display: flex;
    flex-direction: column;
}

/* Brand Column */
.footer-col-brand {
    padding-right: 28px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.footer-brand-logo {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 12px;
    text-decoration: none;
    margin-bottom: 16px;
    width: 100%;
}

.footer-logo-img {
    height: 44px;
    width: auto;
    object-fit: contain;
    flex-shrink: 0;
}

.footer-logo-text {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
    gap: 3px;
    width: 100%;
}

.footer-brand-arabic {
    font-family: var(--font-arabic);
    font-size: 14px;
    font-weight: 700;
    color: #0b2885;
    line-height: 1.3;
    text-align: left;
    display: block;
    direction: rtl;
    unicode-bidi: plaintext;
    width: 100%;
}

.footer-brand-english {
    font-family: var(--font-primary);
    font-size: 12px;
    font-weight: 700;
    color: #0b1a3d;
    line-height: 1.3;
    text-align: left;
    display: block;
    width: 100%;
}

.footer-brand-desc {
    font-size: 13.5px;
    line-height: 1.6;
    color: #556477;
    margin-bottom: 20px;
    font-weight: 400;
    font-family: var(--font-primary);
    text-align: left;
    width: 100%;
}

/* Social Media Links */
.footer-social-links {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    gap: 10px;
    margin-top: 0;
    margin-bottom: 0;
    width: 100%;
}

.footer-social-btn {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: #edf3fc;
    color: #0050f0;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition: all var(--transition-base);
}

.footer-social-btn:hover {
    background-color: #0050f0;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 4px 12px rgba(0, 80, 240, 0.28);
}

/* Column Headings */
.footer-col-title {
    font-size: 17px;
    font-weight: 700;
    color: #0b1a30;
    margin-top: 0;
    margin-bottom: 8px;
    font-family: var(--font-primary);
    letter-spacing: -0.2px;
}

.footer-heading-bar {
    display: block;
    width: 28px;
    height: 2.5px;
    background-color: #0050f0;
    border-radius: 2px;
    margin-bottom: 20px;
}

/* Links List */
.footer-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 11px;
}

.footer-nav-link {
    font-size: 14px;
    color: #4b5568;
    text-decoration: none;
    transition: color var(--transition-fast), transform var(--transition-fast);
    font-weight: 500;
    display: inline-block;
    font-family: var(--font-primary);
    line-height: 1.4;
}

.footer-nav-link:hover {
    color: #0050f0;
    transform: translateX(3px);
}

/* Contact Column */
.footer-col-contact {
    display: flex;
    flex-direction: column;
}

.footer-contact-list {
    display: flex;
    flex-direction: column;
    gap: 14px;
    margin-bottom: 20px;
}

.footer-contact-item {
    display: flex;
    align-items: flex-start;
    gap: 12px;
}

.footer-contact-icon {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background-color: #edf3fc;
    color: #0050f0;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    margin-top: 2px;
}

.footer-contact-text {
    display: flex;
    flex-direction: column;
}

.footer-contact-label {
    font-size: 13.5px;
    font-weight: 700;
    color: #0b1a30;
    line-height: 1.35;
    font-family: var(--font-primary);
}

.footer-contact-sub {
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.35;
    font-family: var(--font-primary);
}

.footer-contact-link {
    font-size: 14px;
    font-weight: 700;
    color: #0b1a30;
    text-decoration: none;
    transition: color var(--transition-fast);
    font-family: var(--font-primary);
}

.footer-contact-link:hover {
    color: #0050f0;
}

/* Catalogue Button */
.footer-catalogue-btn-wrap {
    margin-top: auto;
    padding-top: 6px;
}

.btn-footer-catalogue {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 10px;
    background-color: #0038e2;
    color: #ffffff;
    font-size: 13.5px;
    font-weight: 600;
    padding: 12px 16px;
    border-radius: 8px;
    text-decoration: none;
    box-shadow: 0 4px 14px rgba(0, 56, 226, 0.25);
    transition: all var(--transition-base);
    width: 100%;
}

.btn-footer-catalogue:hover {
    background-color: #002ec7;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 6px 18px rgba(0, 56, 226, 0.35);
}

.btn-catalogue-doc-icon,
.btn-catalogue-chevron {
    flex-shrink: 0;
}

.btn-catalogue-text {
    flex-grow: 1;
    text-align: left;
}

/* Wave Curve */
.footer-wave-wrap {
    width: 100%;
    line-height: 0;
    margin-bottom: -1px;
    position: relative;
    z-index: 1;
}

.footer-wave-svg {
    width: 100%;
    height: 75px;
    display: block;
}

/* Bottom Bar */
.site-footer-bottom {
    background-color: #00206d;
    padding-top: 18px;
    padding-bottom: 22px;
    position: relative;
    z-index: 2;
}

.footer-bottom-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.footer-bottom-content {
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 14px;
}

.footer-copyright {
    font-size: 13.5px;
    color: rgba(255, 255, 255, 0.9);
    margin: 0;
    font-family: var(--font-primary);
}

.footer-legal-links {
    display: flex;
    align-items: center;
    gap: 14px;
}

.footer-legal-link {
    font-size: 13px;
    color: rgba(255, 255, 255, 0.85);
    text-decoration: none;
    transition: color var(--transition-fast);
    font-family: var(--font-primary);
}

.footer-legal-link:hover {
    color: #ffffff;
}

.footer-legal-divider {
    color: rgba(255, 255, 255, 0.35);
    font-size: 12px;
}

/* --------------------------------------------------------------------------
   17. Contact Page Main Section & Form Cards
   -------------------------------------------------------------------------- */
.contact-main-section {
    position: relative;
    padding-top: 80px;
    padding-bottom: 95px;
    background-color: #f8fafc;
}

.contact-main-container {
    max-width: 1280px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.contact-main-row {
    align-items: stretch;
}

.contact-col-form,
.contact-col-info {
    display: flex;
    flex-direction: column;
}

/* Left Card: Send Us a Message */
.contact-form-card {
    background-color: var(--color-bg-card);
    border-radius: 20px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 14px 40px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
    padding: 38px 42px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.contact-card-header {
    margin-bottom: 24px;
}

.contact-card-title {
    font-size: 28px;
    font-weight: 800;
    line-height: 1.2;
    margin: 0 0 6px 0;
    letter-spacing: -0.4px;
    font-family: var(--font-primary);
}

.contact-title-dark {
    color: var(--color-heading-dark);
}

.contact-title-accent {
    color: #0e33f1;
}

.contact-card-subtitle {
    font-size: 14.5px;
    line-height: 1.5;
    color: var(--color-text-muted);
    margin: 0;
    font-family: var(--font-primary);
}

/* Contact Form Elements */
.contact-form {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.contact-form-row {
    display: flex;
    gap: 16px;
    width: 100%;
}

.contact-form-group {
    flex: 1;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.contact-form-group-full {
    width: 100%;
}

.contact-label {
    font-size: 13.5px;
    font-weight: 600;
    color: var(--color-heading-dark);
    font-family: var(--font-primary);
    display: flex;
    align-items: center;
    gap: 3px;
}

.contact-req {
    color: var(--color-accent-red);
    font-weight: 700;
}

.contact-input,
.contact-select,
.contact-textarea {
    width: 100%;
    background-color: #ffffff;
    border: 1.5px solid var(--color-border-light);
    border-radius: 10px;
    padding: 11px 14px;
    font-family: var(--font-primary);
    font-size: 14px;
    color: var(--color-heading-dark);
    transition: border-color var(--transition-fast), box-shadow var(--transition-fast);
}

.contact-input::placeholder,
.contact-textarea::placeholder {
    color: #94a3b8;
    font-weight: 400;
}

.contact-input:focus,
.contact-select:focus,
.contact-textarea:focus {
    border-color: #0e33f1;
    outline: none;
    box-shadow: 0 0 0 3px rgba(14, 51, 241, 0.12);
}

.contact-select-wrap {
    position: relative;
    width: 100%;
}

.contact-select {
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    padding-right: 36px;
    color: #64748b;
}

.contact-select:valid {
    color: var(--color-heading-dark);
}

.contact-select-chevron {
    position: absolute;
    right: 14px;
    top: 50%;
    transform: translateY(-50%);
    color: #64748b;
    pointer-events: none;
}

.contact-textarea {
    resize: vertical;
    min-height: 108px;
    line-height: 1.5;
}

/* Submit Button */
.btn-contact-submit {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    width: 100%;
    padding: 13.5px 24px;
    background: linear-gradient(135deg, #012B91 0%, #0e33f1 100%);
    color: #ffffff;
    border-radius: 10px;
    font-size: 15px;
    font-weight: 700;
    font-family: var(--font-primary);
    border: none;
    cursor: pointer;
    transition: transform var(--transition-fast), box-shadow var(--transition-fast), background var(--transition-fast);
    box-shadow: 0 6px 18px rgba(14, 51, 241, 0.22);
    margin-top: 4px;
}

.btn-contact-submit:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(14, 51, 241, 0.32);
    background: linear-gradient(135deg, #001f6e 0%, #0c2ad4 100%);
}

.btn-contact-submit-arrow {
    transition: transform var(--transition-fast);
}

.btn-contact-submit:hover .btn-contact-submit-arrow {
    transform: translateX(4px);
}

/* Right Card: Contact Information */
.contact-info-card {
    background-color: var(--color-bg-card);
    background: radial-gradient(ellipse at 100% 75%, rgba(218, 235, 255, 0.5) 0%, rgba(240, 246, 255, 0.2) 50%, #ffffff 80%);
    border-radius: 20px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 14px 40px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
    padding: 38px 36px;
    height: 100%;
    display: flex;
    flex-direction: column;
}

.contact-info-list {
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.contact-info-item {
    display: flex;
    align-items: center;
    gap: 16px;
    padding: 4px 0;
}

.contact-info-badge {
    width: 48px;
    height: 48px;
    border-radius: 50%;
    background-color: #eaf1ff;
    color: #0e33f1;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    box-shadow: 0 4px 12px rgba(14, 51, 241, 0.08);
    transition: transform var(--transition-fast), background-color var(--transition-fast);
}

.contact-info-item:hover .contact-info-badge {
    transform: scale(1.06);
    background-color: #dbe8fe;
}

.contact-info-svg {
    width: 20px;
    height: 20px;
}

.contact-info-text {
    display: flex;
    flex-direction: column;
}

.contact-info-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin: 0 0 2px 0;
    font-family: var(--font-primary);
    line-height: 1.25;
}

.contact-info-desc {
    font-size: 13.5px;
    color: var(--color-text-muted);
    margin: 0;
    line-height: 1.4;
    font-family: var(--font-primary);
}

.contact-info-link {
    font-size: 13.5px;
    color: var(--color-text-muted);
    font-family: var(--font-primary);
    transition: color var(--transition-fast);
    line-height: 1.4;
    text-decoration: none;
}

.contact-info-link:hover {
    color: #0e33f1;
}

/* --------------------------------------------------------------------------
   18. Contact Page Map Section
   -------------------------------------------------------------------------- */
.contact-map-section {
    position: relative;
    padding-top: 0;
    padding-bottom: 90px;
    background-color: #f8fafc;
}

.contact-map-container {
    max-width: 1280px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.contact-map-card {
    position: relative;
    width: 100%;
    border-radius: 24px;
    overflow: hidden;
    background-color: #ffffff;
    border: 1px solid rgba(226, 232, 240, 0.95);
    box-shadow: 0 14px 40px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
}

.contact-map-frame-wrap {
    position: relative;
    width: 100%;
    height: 520px;
    background-color: #e2e8f0;
}

.contact-map-iframe {
    width: 100%;
    height: 100%;
    border: none;
    display: block;
}

/* Floating Office Information Card Overlay */
.contact-map-office-card {
    position: absolute;
    bottom: 32px;
    left: 32px;
    z-index: 10;
    max-width: 360px;
    width: calc(100% - 64px);
    background-color: #ffffff;
    border-radius: 18px;
    padding: 24px 26px;
    box-shadow: 0 16px 40px rgba(15, 23, 42, 0.14), 0 3px 12px rgba(15, 23, 42, 0.06);
    border: 1px solid rgba(226, 232, 240, 0.85);
    backdrop-filter: blur(8px);
}

.contact-map-office-header {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    margin-bottom: 20px;
}

.contact-map-office-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background-color: #eff6ff;
    color: #0e33f1;
    flex-shrink: 0;
}

.contact-map-office-svg {
    width: 26px;
    height: 26px;
}

.contact-map-office-info {
    display: flex;
    flex-direction: column;
}

.contact-map-office-title {
    font-size: 17px;
    font-weight: 700;
    color: #0f172a;
    margin-bottom: 4px;
    line-height: 1.3;
}

.contact-map-office-name {
    font-size: 13.5px;
    font-weight: 600;
    color: #475569;
    margin-bottom: 2px;
    line-height: 1.4;
}

.contact-map-office-city {
    font-size: 13.5px;
    font-weight: 400;
    color: #64748b;
    line-height: 1.4;
}

.contact-map-office-actions {
    display: flex;
}

.contact-map-directions-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 10px 24px;
    border-radius: 10px;
    border: 1.5px solid #0e33f1;
    background-color: #ffffff;
    color: #0e33f1;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-fast);
}

.contact-map-directions-btn:hover {
    background-color: #0e33f1;
    color: #ffffff;
    box-shadow: 0 6px 18px rgba(14, 51, 241, 0.25);
}

.contact-map-btn-arrow {
    width: 16px;
    height: 16px;
    transition: transform var(--transition-fast);
}

.contact-map-directions-btn:hover .contact-map-btn-arrow {
    transform: translateX(4px);
}

/* --------------------------------------------------------------------------
   19. Product Listing Page Features Section (Matching Attached Image)
   -------------------------------------------------------------------------- */
.product-features-section {
    position: relative;
    z-index: 10;
    margin-top: -50px;
    padding-bottom: 70px;
}

.product-features-container {
    max-width: 1240px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.product-features-card {
    background-color: #ffffff;
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 14px 38px rgba(14, 51, 241, 0.07), 0 3px 10px rgba(0, 0, 0, 0.03);
    display: flex;
    align-items: center;
    padding: 24px 20px;
    backdrop-filter: blur(10px);
}

.product-feature-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 4px 14px;
    transition: transform var(--transition-base);
}

.product-feature-item:hover {
    transform: translateY(-3px);
}

.product-feature-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    height: 42px;
    margin-bottom: 12px;
    color: #0e33f1;
    transition: transform var(--transition-base);
}

.product-feature-item:hover .product-feature-icon {
    transform: scale(1.08);
}

.product-feature-svg {
    width: 38px;
    height: 38px;
}

.product-feature-title {
    font-size: 15px;
    font-weight: 700;
    color: #0b1a3d;
    line-height: 1.35;
    margin: 0;
    font-family: var(--font-primary);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.product-feature-line {
    display: block;
    white-space: nowrap;
}

.product-feature-divider {
    width: 1px;
    height: 54px;
    background-color: var(--color-border-light);
    flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   20. Product Catalog & Filter Section (Matching Reference Image)
   -------------------------------------------------------------------------- */
.products-catalog-section {
    position: relative;
    width: 100%;
    background-color: #f8fafc;
    padding-top: 15px;
    padding-bottom: 95px;
}

.products-catalog-container {
    max-width: 1340px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.products-catalog-row {
    row-gap: 32px;
}

/* Left Sidebar Filters */
.products-sidebar-col {
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.catalog-filter-card {
    background-color: #ffffff;
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    padding: 22px 20px;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);
}

.catalog-filter-title {
    font-size: 16.5px;
    font-weight: 700;
    color: #0b1a3d;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.2px;
}

/* Category Filter List */
.catalog-category-list {
    display: flex;
    flex-direction: column;
    gap: 6px;
    list-style: none;
    padding: 0;
    margin: 0;
}

.catalog-category-item {
    width: 100%;
}

.catalog-category-link {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 10px 14px;
    border-radius: 10px;
    text-decoration: none;
    color: #475569;
    font-size: 13.5px;
    font-weight: 500;
    transition: all 0.2s ease;
    cursor: pointer;
}

.catalog-category-link:hover {
    background-color: #f1f5f9;
    color: #0b1a3d;
}

.catalog-category-link.active {
    background-color: #eff6ff;
    color: #0e33f1;
    font-weight: 700;
}

.catalog-category-left {
    display: flex;
    align-items: center;
    gap: 11px;
}

.catalog-category-icon {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 18px;
    height: 18px;
    color: inherit;
    flex-shrink: 0;
}

.catalog-category-right {
    display: flex;
    align-items: center;
    gap: 6px;
    font-size: 12.5px;
}

.catalog-category-count {
    color: #94a3b8;
    font-weight: 500;
}

.catalog-category-link.active .catalog-category-count {
    color: #0e33f1;
    font-weight: 700;
}

.catalog-category-arrow {
    width: 13px;
    height: 13px;
    color: #0e33f1;
}

/* Checkbox Filter List (Industries) */
.catalog-checkbox-list {
    display: flex;
    flex-direction: column;
    gap: 12px;
    list-style: none;
    padding: 0;
    margin: 0;
}

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

.catalog-checkbox-label {
    display: flex;
    align-items: center;
    gap: 11px;
    font-size: 13px;
    color: #475569;
    font-weight: 500;
    cursor: pointer;
    user-select: none;
    width: 100%;
    margin-bottom: 0;
}

.catalog-checkbox-input {
    appearance: none;
    -webkit-appearance: none;
    width: 17px;
    height: 17px;
    border: 1.5px solid #cbd5e1;
    border-radius: 4px;
    background-color: #ffffff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: all 0.2s ease;
    margin: 0;
    flex-shrink: 0;
}

.catalog-checkbox-input:checked {
    background-color: #0e33f1;
    border-color: #0e33f1;
    background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M12.207 4.793a1 1 0 0 1 0 1.414l-5 5a1 1 0 0 1-1.414 0l-2-2a1 1 0 0 1 1.414-1.414L6.5 9.086l4.293-4.293a1 1 0 0 1 1.414 0z'/%3E%3C/svg%3E");
    background-size: 100% 100%;
    background-repeat: no-repeat;
}

/* Price Range Slider */
.catalog-price-slider-wrap {
    position: relative;
    width: 100%;
    padding: 8px 0 14px 0;
}

.catalog-price-slider {
    width: 100%;
    -webkit-appearance: none;
    appearance: none;
    height: 5px;
    border-radius: 999px;
    background: #0e33f1;
    outline: none;
    cursor: pointer;
}

.catalog-price-slider::-webkit-slider-thumb {
    -webkit-appearance: none;
    appearance: none;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #0e33f1;
    border: 2.5px solid #ffffff;
    box-shadow: 0 2px 6px rgba(14, 51, 241, 0.4);
    cursor: pointer;
}

.catalog-price-slider::-moz-range-thumb {
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #0e33f1;
    border: 2.5px solid #ffffff;
    box-shadow: 0 2px 6px rgba(14, 51, 241, 0.4);
    cursor: pointer;
}

.catalog-price-values {
    display: flex;
    align-items: center;
    justify-content: space-between;
    font-size: 12.5px;
    font-weight: 600;
    color: #475569;
}

/* Right Content Area */
.products-content-col {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.catalog-top-toolbar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    width: 100%;
}

.catalog-search-box {
    position: relative;
    flex: 1;
    max-width: 580px;
}

.catalog-search-input {
    width: 100%;
    height: 46px;
    background-color: #ffffff;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 10px;
    padding: 0 46px 0 18px;
    font-size: 13.5px;
    color: #0b1a3d;
    outline: none;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.catalog-search-input:focus {
    border-color: #0e33f1;
    box-shadow: 0 0 0 3px rgba(14, 51, 241, 0.12);
}

.catalog-search-btn {
    position: absolute;
    right: 8px;
    top: 50%;
    transform: translateY(-50%);
    width: 32px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #0e33f1;
    border: none;
    background: transparent;
    cursor: pointer;
}

.catalog-sort-box {
    position: relative;
}

.catalog-sort-select {
    height: 46px;
    background-color: #ffffff;
    border: 1px solid rgba(226, 232, 240, 0.95);
    border-radius: 10px;
    padding: 0 36px 0 16px;
    font-size: 13.5px;
    font-weight: 500;
    color: #475569;
    cursor: pointer;
    outline: none;
    appearance: none;
    -webkit-appearance: none;
    background-image: url("data:image/svg+xml,%3Csvg width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%2364748b' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round' xmlns='http://www.w3.org/2000/svg'%3E%3Cpolyline points='6 9 12 15 18 9'%3E%3C/polyline%3E%3C/svg%3E");
    background-repeat: no-repeat;
    background-position: right 14px center;
}

.catalog-results-info {
    font-size: 13px;
    font-weight: 500;
    color: #64748b;
    margin-top: -6px;
    margin-bottom: 4px;
}

/* Products Grid */
.catalog-products-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 20px;
    width: 100%;
}

.catalog-product-card {
    background-color: #ffffff;
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    padding: 0;
    overflow: hidden;
    display: flex;
    flex-direction: column;
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
    box-shadow: 0 3px 12px rgba(0, 0, 0, 0.02);
    position: relative;
}

.catalog-product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 14px 30px rgba(14, 51, 241, 0.09), 0 3px 8px rgba(0, 0, 0, 0.03);
    border-color: rgba(14, 51, 241, 0.25);
}

.catalog-product-img-wrap {
    width: 100%;
    height: 180px;
    overflow: hidden;
    position: relative;
    margin: 0;
    padding: 0;
    background-color: #f8fafc;
}

.catalog-product-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform var(--transition-fast);
}

.catalog-product-card:hover .catalog-product-img {
    transform: scale(1.05);
}

.catalog-product-content {
    padding: 18px 16px 20px 16px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.catalog-product-name {
    font-size: 15px;
    font-weight: 700;
    color: #0b1a3d;
    margin: 0 0 6px 0;
    line-height: 1.35;
    font-family: var(--font-primary);
}

.catalog-product-desc {
    font-size: 12.5px;
    color: #64748b;
    line-height: 1.45;
    margin: 0 0 16px 0;
    flex-grow: 1;
    font-family: var(--font-primary);
}

.catalog-product-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    width: 100%;
    padding: 8px 14px;
    border-radius: 8px;
    border: 1.5px solid #0e33f1;
    background-color: #ffffff;
    color: #0e33f1;
    font-size: 13px;
    font-weight: 600;
    text-decoration: none;
    transition: all var(--transition-fast);
    cursor: pointer;
}

.catalog-product-btn:hover {
    background-color: #0e33f1;
    color: #ffffff;
    box-shadow: 0 4px 14px rgba(14, 51, 241, 0.22);
}

.catalog-product-btn-arrow {
    width: 13px;
    height: 13px;
    transition: transform var(--transition-fast);
}

.catalog-product-btn:hover .catalog-product-btn-arrow {
    transform: translateX(3px);
}

/* Pagination Bar */
.catalog-pagination-wrap {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    margin-top: 24px;
    padding-top: 16px;
}

.catalog-page-arrow {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid #e2e8f0;
    background-color: #ffffff;
    color: #0e33f1;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 14px;
    cursor: pointer;
    transition: all 0.2s ease;
}

.catalog-page-arrow:hover {
    border-color: #0e33f1;
    background-color: #eff6ff;
}

.catalog-page-num {
    width: 36px;
    height: 36px;
    border-radius: 8px;
    border: 1px solid transparent;
    background-color: transparent;
    color: #475569;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 13.5px;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.2s ease;
}

.catalog-page-num:hover {
    background-color: #f1f5f9;
    color: #0b1a3d;
}

.catalog-page-num.active {
    background-color: #0e33f1;
    color: #ffffff;
    font-weight: 700;
}

.catalog-page-ellipsis {
    font-size: 13.5px;
    color: #94a3b8;
    padding: 0 4px;
}

/* --------------------------------------------------------------------------
   21. Explore Our Categories Showcase Section (Products Page)
   -------------------------------------------------------------------------- */
.product-categories-section {
    position: relative;
    padding-top: 60px;
    padding-bottom: 50px;
    background-color: #ffffff;
}

.product-categories-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.product-categories-header {
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 44px;
}

.product-categories-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.product-tagline-bar {
    width: 26px;
    height: 3px;
    background-color: var(--color-accent, #e11d48);
    border-radius: 2px;
    display: inline-block;
}

.product-tagline-text {
    font-size: 13px;
    font-weight: 800;
    color: var(--color-primary, #0e33f1);
    letter-spacing: 0.8px;
    text-transform: uppercase;
    font-family: var(--font-primary);
}

.product-categories-title {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.product-cat-heading-dark {
    color: var(--color-heading-dark, #0b1a3d);
}

.product-cat-heading-accent {
    color: var(--color-primary, #0e33f1);
}

.product-categories-subtitle {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body, #64748b);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* 5 Category Cards Grid */
.product-categories-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 20px;
    width: 100%;
}

.product-category-card {
    background-color: #ffffff;
    border-radius: 14px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    overflow: hidden;
    display: flex;
    flex-direction: column;
    box-shadow: 0 4px 16px rgba(0, 0, 0, 0.03);
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}

.product-category-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 16px 36px rgba(14, 51, 241, 0.09), 0 4px 10px rgba(0, 0, 0, 0.03);
    border-color: rgba(14, 51, 241, 0.3);
}

.product-category-img-wrap {
    width: 100%;
    height: 170px;
    overflow: hidden;
    background-color: #f8fafc;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.product-category-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform var(--transition-base);
}

.product-category-card:hover .product-category-img {
    transform: scale(1.06);
}

.product-category-body {
    padding: 18px 16px 20px 16px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    flex-grow: 1;
}

.product-category-title {
    font-size: 16px;
    font-weight: 700;
    color: var(--color-heading-dark, #0b1a3d);
    margin: 0 0 10px 0;
    line-height: 1.35;
    font-family: var(--font-primary);
}

.product-category-link {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    color: var(--color-primary, #0e33f1);
    font-size: 13.5px;
    font-weight: 600;
    text-decoration: none;
    transition: color var(--transition-fast);
    font-family: var(--font-primary);
    cursor: pointer;
}

.product-category-link:hover {
    color: var(--color-primary-dark, #0b2cb8);
}

.product-category-arrow {
    width: 13px;
    height: 13px;
    transition: transform var(--transition-fast);
}

.product-category-card:hover .product-category-arrow {
    transform: translateX(4px);
}

/* --------------------------------------------------------------------------
   22. Why Choose Our Products Section (Products Page)
   -------------------------------------------------------------------------- */
.products-why-section {
    position: relative;
    padding-top: 70px;
    padding-bottom: 90px;
    background-color: #ffffff;
}

.products-why-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

/* Section Header (Centered) */
.products-why-header {
    text-align: center;
    max-width: 820px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 48px;
}

.products-why-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.products-why-tagline-bar {
    width: 26px;
    height: 3px;
    background-color: var(--color-accent, #e11d48);
    border-radius: 2px;
    display: inline-block;
}

.products-why-tagline-text {
    font-size: 13px;
    font-weight: 800;
    color: var(--color-primary, #0e33f1);
    letter-spacing: 0.8px;
    text-transform: uppercase;
    font-family: var(--font-primary);
}

.products-why-title {
    font-size: 40px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 14px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.products-why-title-dark {
    color: var(--color-heading-dark, #0b1a3d);
}

.products-why-title-accent {
    color: var(--color-primary, #0e33f1);
}

.products-why-subtitle {
    font-size: 15.5px;
    line-height: 1.6;
    color: var(--color-text-body, #64748b);
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* 4 Feature Cards Grid */
.products-why-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 24px;
    width: 100%;
}

.products-why-card {
    background-color: #ffffff;
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.95);
    padding: 42px 28px 38px 28px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    box-shadow: 0 4px 18px rgba(0, 0, 0, 0.03);
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}

.products-why-card:hover {
    transform: translateY(-6px);
    box-shadow: 0 18px 40px rgba(14, 51, 241, 0.09), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: rgba(14, 51, 241, 0.25);
}

.products-why-icon-badge {
    width: 76px;
    height: 76px;
    border-radius: 50%;
    background: radial-gradient(circle, #eaf1ff 0%, #edf4ff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    color: var(--color-primary, #0e33f1);
    margin-bottom: 24px;
    box-shadow: 0 4px 14px rgba(14, 51, 241, 0.08);
    transition: transform var(--transition-base), background var(--transition-base);
}

.products-why-card:hover .products-why-icon-badge {
    transform: scale(1.08);
    background: radial-gradient(circle, #dde9ff 0%, #e8f1ff 100%);
}

.products-why-icon-svg {
    width: 36px;
    height: 36px;
}

.products-why-card-title {
    font-size: 19px;
    font-weight: 700;
    color: var(--color-heading-dark, #0b1a3d);
    margin: 0 0 10px 0;
    line-height: 1.3;
    font-family: var(--font-primary);
}

.products-why-card-desc {
    font-size: 14px;
    line-height: 1.55;
    color: var(--color-text-body, #64748b);
    margin: 0;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 250px;
}

/* --------------------------------------------------------------------------
   23. Industries Showcase Section (Industries Page - Industries We Work With)
   -------------------------------------------------------------------------- */
.industries-showcase-section {
    position: relative;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 95px;
    background: linear-gradient(180deg, #fbfcfe 0%, #f4f7fb 100%);
    overflow: hidden;
}

.industries-showcase-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

/* Centered Section Header */
.industries-showcase-header {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    max-width: 780px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 54px;
}

.industries-showcase-tagline {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 12px;
    margin-bottom: 14px;
}

.industries-showcase-tagline-bar {
    width: 26px;
    height: 3px;
    background-color: var(--color-accent-red);
    border-radius: 2px;
    display: inline-block;
    flex-shrink: 0;
}

.industries-showcase-tagline-text {
    font-size: 13px;
    font-weight: 800;
    letter-spacing: 2px;
    color: var(--color-primary);
    text-transform: uppercase;
    font-family: var(--font-primary);
}

.industries-showcase-title {
    font-size: 44px;
    font-weight: 800;
    line-height: 1.2;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

.industries-showcase-title-dark {
    color: var(--color-heading-dark);
}

.industries-showcase-title-accent {
    color: var(--color-primary);
}

.industries-showcase-desc {
    font-size: 15.5px;
    line-height: 1.65;
    color: var(--color-text-body);
    margin-top: 0;
    margin-bottom: 0;
    max-width: 700px;
    font-weight: 400;
    font-family: var(--font-primary);
}

/* Industries Cards Grid */
.industries-showcase-row {
    row-gap: 32px;
}

.industries-showcase-col {
    display: flex;
}

/* Individual Card */
.industry-work-card {
    background-color: #ffffff;
    border-radius: 20px;
    border: 1px solid rgba(226, 232, 240, 0.85);
    box-shadow: 0 4px 20px rgba(11, 26, 48, 0.04);
    overflow: hidden;
    width: 100%;
    display: flex;
    flex-direction: column;
    transition: transform var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
}

.industry-work-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 18px 42px rgba(1, 43, 145, 0.1), 0 4px 12px rgba(0, 0, 0, 0.03);
    border-color: rgba(1, 43, 145, 0.22);
}

/* Card Image Box */
.industry-work-img-wrap {
    position: relative;
    width: 100%;
    aspect-ratio: 16 / 11;
    overflow: hidden;
    background-color: #f1f5f9;
}

.industry-work-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1);
}

.industry-work-card:hover .industry-work-img {
    transform: scale(1.06);
}

/* Card Body Content */
.industry-work-body {
    padding: 10px 26px 30px 26px;
    display: flex;
    flex-direction: column;
    flex-grow: 1;
    background-color: #ffffff;
    position: relative;
}

/* Overlapping Squircle Icon Badge Matching Attached Image */
.industry-work-badge {
    width: 62px;
    height: 62px;
    border-radius: 22px;
    border: 3.5px solid #ffffff;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.08);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-top: -41px;
    margin-bottom: 16px;
    flex-shrink: 0;
    position: relative;
    z-index: 3;
    transition: transform var(--transition-base), box-shadow var(--transition-base);
}

.industry-work-card:hover .industry-work-badge {
    transform: scale(1.08);
    box-shadow: 0 8px 22px rgba(0, 0, 0, 0.12);
}

.industry-work-badge-icon {
    width: 28px;
    height: 28px;
}

/* 9 Distinct Badge Tints Matching Reference Images */
.industry-work-badge--corporate {
    background-color: #e8f1fc;
    color: #012b91;
}

.industry-work-badge--hotels {
    background-color: #feeedb;
    color: #c2672a;
}

.industry-work-badge--restaurants {
    background-color: #d1fae5;
    color: #059669;
}

.industry-work-badge--healthcare {
    background-color: #fee2e2;
    color: #dc2626;
}

.industry-work-badge--manufacturing {
    background-color: #ede9fe;
    color: #7c3aed;
}

.industry-work-badge--education {
    background-color: #e8f1fc;
    color: #012b91;
}

.industry-work-badge--retail {
    background-color: #ffe4e6;
    color: #e11d48;
}

.industry-work-badge--transportation {
    background-color: #dcfce7;
    color: #10b981;
}

.industry-work-badge--events {
    background-color: #e0e7ff;
    color: #6366f1;
}

/* Card Title */
.industry-work-title {
    font-size: 20px;
    font-weight: 700;
    color: var(--color-heading-dark);
    margin-top: 0;
    margin-bottom: 10px;
    line-height: 1.3;
    font-family: var(--font-primary);
    transition: color var(--transition-fast);
}

.industry-work-card:hover .industry-work-title {
    color: var(--color-primary);
}

/* Card Description */
.industry-work-desc {
    font-size: 14.5px;
    line-height: 1.55;
    color: #64748b;
    margin-top: 0;
    margin-bottom: 0;
    font-weight: 400;
    font-family: var(--font-primary);
}


/* --------------------------------------------------------------------------
   24. Hygiene for Every Workspace Banner Section (Industries Page)
   -------------------------------------------------------------------------- */
.workspace-banner-section {
    position: relative;
    width: 100%;
    min-height: 480px;
    background-image: url('../images/Professional Cleaning Caddy in Industrial Corridor.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    display: flex;
    align-items: center;
    padding-top: 85px;
    padding-bottom: 85px;
    overflow: hidden;
}

/* Dark gradient overlay on the left side ensuring high text contrast while letting the caddy & cleaner shine on the right */
.workspace-banner-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, 
        rgba(5, 20, 52, 0.94) 0%, 
        rgba(5, 22, 58, 0.88) 38%, 
        rgba(5, 22, 58, 0.55) 65%, 
        rgba(5, 22, 58, 0.15) 85%, 
        rgba(5, 22, 58, 0.02) 100%
    );
    z-index: 1;
    pointer-events: none;
}

.workspace-banner-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
    position: relative;
    z-index: 2;
}

.workspace-banner-row {
    align-items: center;
}

.workspace-banner-col {
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.workspace-banner-content {
    max-width: 540px;
}

/* Tagline */
.workspace-banner-tagline {
    margin-bottom: 14px;
}

.workspace-banner-tagline-text {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2.4px;
    color: #60a5fa;
    text-transform: uppercase;
    font-family: var(--font-primary);
}

/* Title */
.workspace-banner-title {
    font-size: 48px;
    font-weight: 800;
    line-height: 1.15;
    color: #ffffff;
    margin-top: 0;
    margin-bottom: 18px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

/* Description */
.workspace-banner-desc {
    font-size: 16px;
    line-height: 1.65;
    color: #e2e8f0;
    margin-top: 0;
    margin-bottom: 30px;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 500px;
}

/* Button */
.workspace-banner-btn-wrap {
    display: flex;
    align-items: center;
}

.btn-workspace-quote {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 13px 30px;
    border-radius: 50px;
    background-color: #1ea1f2;
    color: #ffffff;
    font-size: 15px;
    font-weight: 700;
    font-family: var(--font-primary);
    text-decoration: none;
    box-shadow: 0 6px 20px rgba(30, 161, 242, 0.35);
    transition: transform var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base);
}

.btn-workspace-quote:hover {
    background-color: #0284c7;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(30, 161, 242, 0.45);
}

.btn-workspace-quote-arrow {
    transition: transform var(--transition-fast);
}

.btn-workspace-quote:hover .btn-workspace-quote-arrow {
    transform: translateX(4px);
}

/* --------------------------------------------------------------------------
   25. Industries Key Features Bar Section (Industries Page)
   -------------------------------------------------------------------------- */
.industry-features-section {
    position: relative;
    z-index: 10;
    margin-top: -50px;
    padding-bottom: 25px;
}

.industry-features-container {
    max-width: 1240px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.industry-features-card {
    background-color: #ffffff;
    border-radius: 16px;
    border: 1px solid rgba(226, 232, 240, 0.9);
    box-shadow: 0 12px 36px rgba(1, 43, 145, 0.07), 0 3px 10px rgba(0, 0, 0, 0.02);
    display: flex;
    align-items: center;
    padding: 26px 20px;
}

.industry-feature-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 4px 16px;
    transition: transform var(--transition-base);
}

.industry-feature-item:hover {
    transform: translateY(-3px);
}

.industry-feature-icon-badge {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: radial-gradient(circle, #eaf4ff 0%, #d8ecff 100%);
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
    color: var(--color-primary);
    box-shadow: 0 4px 14px rgba(1, 43, 145, 0.08);
    transition: transform var(--transition-base), background var(--transition-base);
}

.industry-feature-item:hover .industry-feature-icon-badge {
    transform: scale(1.08);
    background: radial-gradient(circle, #ddecff 0%, #cde5ff 100%);
}

.industry-feature-svg {
    width: 25px;
    height: 25px;
}

.industry-feature-title {
    font-size: 15px;
    font-weight: 700;
    color: var(--color-heading-dark);
    line-height: 1.35;
    margin: 0;
    font-family: var(--font-primary);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.industry-feature-line-top {
    font-weight: 700;
    color: var(--color-heading-dark);
    white-space: nowrap;
}

.industry-feature-line-bottom {
    font-weight: 500;
    color: var(--color-text-muted);
    font-size: 14px;
    white-space: nowrap;
}

.industry-feature-divider {
    width: 1px;
    height: 54px;
    background-color: var(--color-border-light);
    flex-shrink: 0;
}

/* --------------------------------------------------------------------------
   26. Find the Right Solution for Your Industry Section (Industries Page)
   -------------------------------------------------------------------------- */
.industry-solution-section {
    position: relative;
    width: 100%;
    padding-top: 80px;
    padding-bottom: 90px;
    background-color: #ffffff;
}

.industry-solution-container {
    max-width: 1320px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.industry-solution-card {
    position: relative;
    width: 100%;
    min-height: 380px;
    border-radius: 24px;
    overflow: hidden;
    background-image: url('../images/Professional Handshake with Blue Waves.png');
    background-repeat: no-repeat;
    background-position: right center;
    background-size: cover;
    border: 1px solid rgba(226, 232, 240, 0.85);
    box-shadow: 0 14px 40px rgba(11, 26, 48, 0.06), 0 2px 10px rgba(0, 0, 0, 0.02);
    display: flex;
    align-items: center;
}

/* Soft gradient on the left content side for readability across all screen widths */
.industry-solution-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, 
        rgba(255, 255, 255, 0.98) 0%, 
        rgba(250, 252, 255, 0.94) 40%, 
        rgba(245, 250, 255, 0.65) 60%, 
        rgba(255, 255, 255, 0) 80%
    );
    z-index: 1;
    pointer-events: none;
}

.industry-solution-row {
    position: relative;
    z-index: 2;
    width: 100%;
    margin: 0;
}

.industry-solution-col {
    padding: 56px 48px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.industry-solution-content {
    max-width: 500px;
}

/* Tagline */
.industry-solution-tagline {
    margin-bottom: 12px;
}

.industry-solution-tagline-text {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #64748b;
    text-transform: uppercase;
    font-family: var(--font-primary);
}

/* Title */
.industry-solution-title {
    font-size: 38px;
    font-weight: 800;
    line-height: 1.2;
    color: #0b1a30;
    margin-top: 0;
    margin-bottom: 16px;
    letter-spacing: -0.6px;
    font-family: var(--font-primary);
}

/* Description */
.industry-solution-desc {
    font-size: 15px;
    line-height: 1.6;
    color: #4a5568;
    margin-top: 0;
    margin-bottom: 28px;
    font-weight: 400;
    font-family: var(--font-primary);
    max-width: 450px;
}

/* Button */
.industry-solution-btn-wrap {
    display: flex;
    align-items: center;
}

.btn-solution-contact {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    padding: 12px 28px;
    border-radius: 50px;
    background-color: #012b91;
    color: #ffffff;
    font-size: 14.5px;
    font-weight: 700;
    font-family: var(--font-primary);
    text-decoration: none;
    box-shadow: 0 4px 16px rgba(1, 43, 145, 0.28);
    transition: transform var(--transition-base), background-color var(--transition-base), box-shadow var(--transition-base);
}

.btn-solution-contact:hover {
    background-color: #001f6e;
    color: #ffffff;
    transform: translateY(-2px);
    box-shadow: 0 8px 24px rgba(1, 43, 145, 0.38);
}

.btn-solution-contact-arrow {
    transition: transform var(--transition-fast);
}

.btn-solution-contact:hover .btn-solution-contact-arrow {
    transform: translateX(4px);
}

/* --------------------------------------------------------------------------
   27. Industry Value Pillars Section (5 Pillars - Industries Page)
   -------------------------------------------------------------------------- */
.industry-pillars-section {
    position: relative;
    width: 100%;
    padding-top: 75px;
    padding-bottom: 85px;
    background-color: #ffffff;
    overflow: hidden;
}

.industry-pillars-container {
    max-width: 1360px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    padding-left: 24px;
    padding-right: 24px;
}

.industry-pillars-wrapper {
    display: flex;
    align-items: stretch;
    justify-content: space-between;
    width: 100%;
}

.industry-pillar-item {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    padding: 10px 20px;
    transition: transform var(--transition-base);
}

.industry-pillar-item:hover {
    transform: translateY(-4px);
}

.industry-pillar-icon-badge {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background-color: #e8f1fc;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 22px;
    color: #012b91;
    border: 1.5px solid rgba(1, 43, 145, 0.12);
    box-shadow: 0 4px 18px rgba(1, 43, 145, 0.10);
    transition: transform var(--transition-base), background-color var(--transition-base), color var(--transition-base), box-shadow var(--transition-base), border-color var(--transition-base);
    flex-shrink: 0;
}

.industry-pillar-item:hover .industry-pillar-icon-badge {
    transform: scale(1.08);
    background-color: #012b91;
    color: #ffffff;
    border-color: #012b91;
    box-shadow: 0 8px 24px rgba(1, 43, 145, 0.28);
}

.industry-pillar-svg {
    width: 32px;
    height: 32px;
    transition: color var(--transition-base);
}

.industry-pillar-title {
    font-size: 19px;
    font-weight: 700;
    color: #012b91;
    line-height: 1.3;
    margin-top: 0;
    margin-bottom: 12px;
    font-family: var(--font-primary);
    min-height: 48px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center;
    transition: color var(--transition-fast);
}

.industry-pillar-item:hover .industry-pillar-title {
    color: #001f6e;
}

.industry-pillar-desc {
    font-size: 14.5px;
    line-height: 1.6;
    color: var(--color-text-body);
    margin-top: 0;
    margin-bottom: 0;
    font-family: var(--font-primary);
    font-weight: 400;
    max-width: 230px;
}

.industry-pillar-divider {
    width: 1px;
    height: 170px;
    background-color: rgba(1, 43, 145, 0.14);
    flex-shrink: 0;
    align-self: center;
}