/* =========================================================
   PRIME PTFE INTERNATIONAL
   GLOBAL THEME
========================================================= */

:root {
    --prime-primary: #0b4ea2;
    --prime-primary-dark: #07366f;
    --prime-primary-light: #eaf3ff;

    --prime-secondary: #0f172a;
    --prime-secondary-soft: #1e293b;

    --prime-accent: #2f80ed;
    --prime-accent-light: #dbeafe;

    --prime-white: #ffffff;
    --prime-light: #f8fafc;
    --prime-light-blue: #f2f7fd;
    --prime-border: #dbe4ef;

    --prime-text: #243247;
    --prime-text-light: #64748b;
    --prime-heading: #0f172a;

    --prime-success: #15803d;
    --prime-danger: #dc2626;

    --prime-shadow-sm:
        0 8px 24px rgba(15, 23, 42, 0.06);

    --prime-shadow:
        0 18px 48px rgba(15, 23, 42, 0.1);

    --prime-shadow-lg:
        0 30px 70px rgba(2, 18, 43, 0.18);

    --prime-radius-sm: 8px;
    --prime-radius: 14px;
    --prime-radius-lg: 22px;

    --prime-transition:
        all 0.25s ease;
}

/* =========================================================
   RESET AND BASE
========================================================= */

* {
    box-sizing: border-box;
}

html {
    scroll-behavior: smooth;
}

body {
    margin: 0;
    background: var(--prime-white);
    color: var(--prime-text);
    font-family:
        "Inter",
        "Segoe UI",
        Arial,
        Helvetica,
        sans-serif;
    font-size: 15px;
    line-height: 1.65;
    overflow-x: hidden;
}

body,
button,
input,
textarea,
select {
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

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

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

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

button,
input,
select,
textarea {
    font: inherit;
}

button {
    border: 0;
}

ul,
ol {
    margin-top: 0;
}

::selection {
    background: var(--prime-primary);
    color: var(--prime-white);
}

/* =========================================================
   COMMON LAYOUT
========================================================= */

.prime-section {
    position: relative;
    padding: 80px 0;
}

.prime-home-products-layout {
    background:
        linear-gradient(
            180deg,
            #f8fbff 0%,
            #ffffff 32%,
            #ffffff 100%
        );
}

.min-vh-75 {
    min-height: 75vh;
}

.position-relative {
    position: relative;
}

.prime-heading-center {
    max-width: 760px;
    margin-right: auto;
    margin-left: auto;
}

.prime-section-title {
    margin: 0 0 17px;
    color: var(--prime-heading);
    font-size: clamp(28px, 4vw, 42px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.025em;
}

.prime-section-copy {
    margin: 0 0 16px;
    color: var(--prime-text-light);
    font-size: 16px;
    line-height: 1.8;
}

.prime-eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 12px;
    color: var(--prime-primary);
    font-size: 12px;
    font-weight: 800;
    letter-spacing: 0.15em;
    line-height: 1.2;
    text-transform: uppercase;
}

.prime-eyebrow::before {
    width: 24px;
    height: 2px;
    background: currentColor;
    content: "";
}

.prime-eyebrow-light {
    color: #bcd9ff;
}

/* =========================================================
   BUTTONS
========================================================= */

.btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 46px;
    padding: 11px 22px;
    border-radius: 9px;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.2;
    transition: var(--prime-transition);
}

.btn:focus,
.btn:active,
.btn:focus-visible {
    box-shadow: none !important;
}

.prime-btn-lg {
    min-height: 54px;
    padding: 15px 26px;
    border-radius: 11px;
}

.prime-btn-primary {
    border: 1px solid var(--prime-primary);
    background: var(--prime-primary);
    color: var(--prime-white);
    box-shadow:
        0 12px 26px rgba(11, 78, 162, 0.22);
}

.prime-btn-primary:hover {
    border-color: var(--prime-primary-dark);
    background: var(--prime-primary-dark);
    color: var(--prime-white);
    transform: translateY(-2px);
    box-shadow:
        0 16px 34px rgba(11, 78, 162, 0.3);
}

.prime-btn-dark {
    border: 1px solid var(--prime-secondary);
    background: var(--prime-secondary);
    color: var(--prime-white);
}

.prime-btn-dark:hover {
    border-color: var(--prime-primary);
    background: var(--prime-primary);
    color: var(--prime-white);
    transform: translateY(-2px);
}

.prime-btn-outline {
    border: 1px solid rgba(255, 255, 255, 0.42);
    background: rgba(255, 255, 255, 0.06);
    color: var(--prime-white);
    backdrop-filter: blur(8px);
}

.prime-btn-outline:hover {
    border-color: var(--prime-white);
    background: var(--prime-white);
    color: var(--prime-primary-dark);
    transform: translateY(-2px);
}

.prime-btn-outline-dark {
    border: 1px solid var(--prime-border);
    background: var(--prime-white);
    color: var(--prime-heading);
}

.prime-btn-outline-dark:hover {
    border-color: var(--prime-primary);
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    transform: translateY(-2px);
}

.prime-btn-light {
    border: 1px solid var(--prime-white);
    background: var(--prime-white);
    color: var(--prime-primary-dark);
}

.prime-btn-light:hover {
    border-color: #dbeafe;
    background: #eaf3ff;
    color: var(--prime-primary-dark);
    transform: translateY(-2px);
}

.prime-btn-outline-light {
    border: 1px solid rgba(255, 255, 255, 0.45);
    background: transparent;
    color: var(--prime-white);
}

.prime-btn-outline-light:hover {
    border-color: var(--prime-white);
    background: rgba(255, 255, 255, 0.12);
    color: var(--prime-white);
    transform: translateY(-2px);
}

/* =========================================================
   HOMEPAGE HERO
========================================================= */

.prime-hero {
    position: relative;
    isolation: isolate;
    min-height: 680px;
    overflow: hidden;
    background:
        radial-gradient(
            circle at 84% 18%,
            rgba(47, 128, 237, 0.34),
            transparent 24%
        ),
        radial-gradient(
            circle at 18% 76%,
            rgba(11, 78, 162, 0.35),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #041b3a 0%,
            #07366f 42%,
            #0b4ea2 100%
        );
    color: var(--prime-white);
}

.prime-hero::after {
    position: absolute;
    right: -160px;
    bottom: -240px;
    z-index: -1;
    width: 560px;
    height: 560px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 50%;
    content: "";
}

.prime-hero-grid {
    position: absolute;
    inset: 0;
    z-index: -3;
    opacity: 0.16;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.13) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.13) 1px,
            transparent 1px
        );
    background-size: 46px 46px;
    mask-image:
        linear-gradient(
            to bottom,
            rgba(0, 0, 0, 1),
            rgba(0, 0, 0, 0.15)
        );
}

.prime-hero-glow {
    position: absolute;
    z-index: -2;
    border-radius: 50%;
    filter: blur(18px);
    pointer-events: none;
}

.prime-hero-glow-one {
    top: 80px;
    right: 8%;
    width: 240px;
    height: 240px;
    background: rgba(78, 155, 255, 0.24);
}

.prime-hero-glow-two {
    bottom: 0;
    left: 2%;
    width: 320px;
    height: 320px;
    background: rgba(0, 160, 255, 0.13);
}

.prime-hero-content {
    max-width: 760px;
    padding: 72px 0;
}

.prime-hero-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 20px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #dcecff;
    font-size: 12px;
    font-weight: 750;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.prime-hero-kicker i {
    color: #7db8ff;
    font-size: 15px;
}

.prime-hero h1 {
    max-width: 760px;
    margin: 0 0 22px;
    color: var(--prime-white);
    font-size: clamp(42px, 6vw, 72px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.045em;
}

.prime-hero h1 span {
    display: inline;
    color: #8bc3ff;
}

.prime-hero-content > p {
    max-width: 670px;
    margin: 0 0 30px;
    color: rgba(255, 255, 255, 0.76);
    font-size: 18px;
    line-height: 1.8;
}

.prime-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 26px;
    margin-top: 28px;
}

.prime-hero-points span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.82);
    font-size: 13px;
    font-weight: 600;
}

.prime-hero-points i {
    color: #86c2ff;
    font-size: 16px;
}

/* =========================================================
   HERO CAPABILITIES PANEL
========================================================= */

.prime-hero-panel {
    position: relative;
    margin: 64px 0;
    padding: 28px;
    overflow: hidden;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: var(--prime-radius-lg);
    background:
        linear-gradient(
            155deg,
            rgba(255, 255, 255, 0.14),
            rgba(255, 255, 255, 0.055)
        );
    box-shadow:
        0 30px 70px rgba(0, 0, 0, 0.2);
    backdrop-filter: blur(16px);
}

.prime-hero-panel::before {
    position: absolute;
    top: -75px;
    right: -75px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    background: rgba(110, 182, 255, 0.14);
    content: "";
}

.prime-hero-panel-top {
    position: relative;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom:
        1px solid rgba(255, 255, 255, 0.12);
}

.prime-hero-panel-top span {
    display: block;
    margin-bottom: 4px;
    color: #a8cffc;
    font-size: 11px;
    font-weight: 750;
    letter-spacing: 0.1em;
    text-transform: uppercase;
}

.prime-hero-panel-top h4 {
    margin: 0;
    color: var(--prime-white);
    font-size: 24px;
    font-weight: 750;
}

.prime-hero-panel-top > i {
    display: grid;
    flex: 0 0 48px;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.09);
    color: #acd4ff;
    font-size: 23px;
}

.prime-capability {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 14px;
    padding: 17px 0;
}

.prime-capability + .prime-capability {
    border-top:
        1px solid rgba(255, 255, 255, 0.1);
}

.prime-capability-number {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 10px;
    background: rgba(139, 195, 255, 0.13);
    color: #9ecaff;
    font-size: 12px;
    font-weight: 800;
}

.prime-capability h5 {
    margin: 0 0 5px;
    color: var(--prime-white);
    font-size: 16px;
    font-weight: 700;
}

.prime-capability p {
    margin: 0;
    color: rgba(255, 255, 255, 0.67);
    font-size: 13px;
    line-height: 1.65;
}

.prime-panel-note {
    display: flex;
    align-items: center;
    gap: 10px;
    margin-top: 15px;
    padding: 13px 15px;
    border: 1px solid rgba(122, 189, 255, 0.22);
    border-radius: 10px;
    background: rgba(47, 128, 237, 0.12);
    color: #d6eaff;
    font-size: 13px;
    font-weight: 650;
}

.prime-panel-note i {
    color: #7fc0ff;
}

/* =========================================================
   TRUST STRIP
========================================================= */

.prime-trust-strip {
    position: relative;
    z-index: 5;
    border-bottom: 1px solid var(--prime-border);
    background: var(--prime-white);
    box-shadow:
        0 9px 24px rgba(15, 23, 42, 0.05);
}

.prime-trust-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
}

.prime-trust-item {
    display: flex;
    align-items: center;
    gap: 14px;
    min-height: 104px;
    padding: 22px 24px;
}

.prime-trust-item + .prime-trust-item {
    border-left: 1px solid var(--prime-border);
}

.prime-trust-icon {
    display: grid;
    flex: 0 0 44px;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 12px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 21px;
}

.prime-trust-item strong {
    display: block;
    margin-bottom: 2px;
    color: var(--prime-heading);
    font-size: 14px;
    font-weight: 750;
}

.prime-trust-item span {
    display: block;
    color: var(--prime-text-light);
    font-size: 12px;
    line-height: 1.5;
}

/* =========================================================
   INNER PAGE HERO
========================================================= */

.prime-page-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 78px 0;
    background:
        radial-gradient(
            circle at 85% 20%,
            rgba(91, 161, 255, 0.23),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #041b3a 0%,
            #07366f 55%,
            #0b4ea2 100%
        );
    color: var(--prime-white);
}

.prime-page-hero-pattern {
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: 0.17;
    background-image:
        radial-gradient(
            circle at center,
            rgba(255, 255, 255, 0.22) 1px,
            transparent 1.5px
        );
    background-size: 24px 24px;
}

.prime-page-hero h1 {
    margin: 5px 0 15px;
    color: var(--prime-white);
    font-size: clamp(34px, 5vw, 54px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.035em;
}

.prime-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.69);
    font-size: 13px;
}

.prime-breadcrumb a {
    color: #d9ecff;
}

.prime-breadcrumb a:hover {
    color: var(--prime-white);
}

.prime-breadcrumb i {
    font-size: 10px;
}

.prime-page-hero-icon {
    display: grid;
    width: 130px;
    height: 130px;
    margin-left: auto;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 30px;
    background: rgba(255, 255, 255, 0.08);
    color: rgba(255, 255, 255, 0.82);
    font-size: 60px;
    transform: rotate(-5deg);
    backdrop-filter: blur(12px);
}
/* =========================================================
   PRODUCT SIDEBAR
========================================================= */

.prime-product-sidebar {
    top: 92px;
}

.prime-sidebar {
    overflow: hidden;
    border: 1px solid var(--prime-border);
    border-radius: var(--prime-radius-lg);
    background: var(--prime-white);
    box-shadow: var(--prime-shadow);
}

.prime-sidebar-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    padding: 22px 22px 18px;
    border-bottom: 1px solid var(--prime-border);
    background:
        linear-gradient(
            135deg,
            #f8fbff 0%,
            #eef5ff 100%
        );
}

.prime-sidebar-label {
    display: block;
    margin-bottom: 3px;
    color: var(--prime-primary);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.13em;
    line-height: 1.2;
    text-transform: uppercase;
}

.prime-sidebar-header h5 {
    margin: 0;
    color: var(--prime-heading);
    font-size: 20px;
    font-weight: 800;
    line-height: 1.2;
}

.prime-sidebar-header-icon {
    display: grid;
    flex: 0 0 42px;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: var(--prime-primary);
    color: var(--prime-white);
    box-shadow:
        0 10px 24px rgba(11, 78, 162, 0.22);
    font-size: 18px;
}

/* =========================================================
   SIDEBAR SEARCH
========================================================= */

.prime-search {
    position: relative;
    padding: 18px 18px 12px;
}

.prime-search > i {
    position: absolute;
    top: 50%;
    left: 32px;
    z-index: 2;
    color: var(--prime-text-light);
    font-size: 15px;
    transform: translateY(-28%);
    pointer-events: none;
}

.prime-search input {
    width: 100%;
    height: 46px;
    padding: 10px 14px 10px 42px;
    border: 1px solid var(--prime-border);
    border-radius: 10px;
    outline: none;
    background: var(--prime-light);
    color: var(--prime-heading);
    font-size: 13px;
    transition: var(--prime-transition);
}

.prime-search input::placeholder {
    color: #94a3b8;
}

.prime-search input:focus {
    border-color: var(--prime-accent);
    background: var(--prime-white);
    box-shadow:
        0 0 0 4px rgba(47, 128, 237, 0.12);
}

.prime-product-count {
    padding: 0 18px 12px;
}

.prime-product-count span {
    display: block;
    color: var(--prime-text-light);
    font-size: 11px;
    font-weight: 650;
}

/* =========================================================
   SIDEBAR PRODUCT LIST
========================================================= */

.prime-product-list {
    max-height: 520px;
    overflow-y: auto;
    padding: 0 10px 12px;
    scrollbar-width: thin;
    scrollbar-color:
        rgba(11, 78, 162, 0.35)
        transparent;
}

.prime-product-list::-webkit-scrollbar {
    width: 5px;
}

.prime-product-list::-webkit-scrollbar-track {
    background: transparent;
}

.prime-product-list::-webkit-scrollbar-thumb {
    border-radius: 999px;
    background: rgba(11, 78, 162, 0.25);
}

.prime-product-list a {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    min-height: 46px;
    margin-bottom: 4px;
    padding: 11px 12px;
    border: 1px solid transparent;
    border-radius: 9px;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.35;
}

.prime-product-list a:hover {
    border-color: #d8e7f8;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    transform: translateX(2px);
}

.prime-product-list a.active {
    border-color: var(--prime-primary);
    background:
        linear-gradient(
            135deg,
            #63deac 100%
        );
    color: var(--prime-white);
    box-shadow:
        0 10px 22px rgba(11, 78, 162, 0.2);
}

.prime-product-list a > i {
    flex: 0 0 auto;
    font-size: 11px;
    opacity: 0.68;
}

.prime-product-list-name {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-width: 0;
}

.prime-product-list-dot {
    flex: 0 0 6px;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--prime-accent);
}

.prime-product-list a.active .prime-product-list-dot {
    background: var(--prime-white);
}

.prime-product-empty,
.prime-search-empty-message {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 8px;
    min-height: 120px;
    padding: 20px;
    color: var(--prime-text-light);
    text-align: center;
    font-size: 12px;
}

.prime-product-empty i,
.prime-search-empty-message i {
    color: #94a3b8;
    font-size: 25px;
}

/* =========================================================
   SIDEBAR FOOTER
========================================================= */

.prime-sidebar-footer {
    display: grid;
    grid-template-columns: 38px 1fr;
    gap: 12px;
    padding: 18px;
    border-top: 1px solid var(--prime-border);
    background: var(--prime-secondary);
    color: var(--prime-white);
}

.prime-sidebar-footer > i {
    display: grid;
    width: 38px;
    height: 38px;
    place-items: center;
    border-radius: 10px;
    background: rgba(255, 255, 255, 0.11);
    color: #9fcbff;
    font-size: 17px;
}

.prime-sidebar-footer div {
    min-width: 0;
}

.prime-sidebar-footer strong {
    display: block;
    margin-bottom: 3px;
    color: var(--prime-white);
    font-size: 12px;
    font-weight: 750;
}

.prime-sidebar-footer span {
    display: block;
    color: rgba(255, 255, 255, 0.65);
    font-size: 11px;
    line-height: 1.55;
}

.prime-sidebar-footer a {
    grid-column: 2;
    width: fit-content;
    color: #a9d1ff;
    font-size: 11px;
    font-weight: 750;
}

.prime-sidebar-footer a:hover {
    color: var(--prime-white);
}

/* =========================================================
   HOMEPAGE GALLERY
========================================================= */

.prime-home-gallery-card {
    overflow: hidden;
    border: 1px solid var(--prime-border);
    border-radius: var(--prime-radius-lg);
    background: var(--prime-white);
    box-shadow: var(--prime-shadow);
}

.prime-gallery-slide {
    position: relative;
    min-height: 510px;
    overflow: hidden;
    background: var(--prime-secondary);
}

.prime-gallery-image {
    width: 100%;
    height: 510px;
    object-fit: cover;
    object-position: center;
    transition:
        transform 6s ease,
        filter 0.3s ease;
}

.carousel-item.active .prime-gallery-image {
    transform: scale(1.045);
}

.prime-gallery-overlay {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            90deg,
            rgba(2, 18, 43, 0.88) 0%,
            rgba(2, 18, 43, 0.66) 43%,
            rgba(2, 18, 43, 0.18) 100%
        );
}

.prime-gallery-overlay::after {
    position: absolute;
    inset: 0;
    background:
        linear-gradient(
            180deg,
            transparent 50%,
            rgba(2, 18, 43, 0.4) 100%
        );
    content: "";
}

.prime-gallery-caption {
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 2;
    width: min(680px, 82%);
    padding: 42px 56px;
    transform: translateY(-50%);
}

.prime-gallery-label {
    display: inline-flex;
    align-items: center;
    margin-bottom: 14px;
    color: #a9d1ff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.prime-gallery-label::before {
    width: 24px;
    height: 2px;
    margin-right: 9px;
    background: currentColor;
    content: "";
}

.prime-gallery-caption h2 {
    margin: 0 0 16px;
    color: var(--prime-white);
    font-size: clamp(31px, 5vw, 50px);
    font-weight: 800;
    line-height: 1.1;
    letter-spacing: -0.035em;
}

.prime-gallery-caption p {
    max-width: 590px;
    margin: 0 0 24px;
    color: rgba(255, 255, 255, 0.75);
    font-size: 16px;
    line-height: 1.75;
}

.prime-home-gallery-card .carousel-indicators {
    right: auto;
    bottom: 20px;
    left: 54px;
    z-index: 3;
    justify-content: flex-start;
    margin: 0;
}

.prime-home-gallery-card .carousel-indicators [data-bs-target] {
    width: 28px;
    height: 4px;
    margin: 0 4px;
    border: 0;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.42);
    opacity: 1;
}

.prime-home-gallery-card .carousel-indicators .active {
    width: 46px;
    background: var(--prime-white);
}

.prime-home-gallery-card .carousel-control-prev,
.prime-home-gallery-card .carousel-control-next {
    top: auto;
    bottom: 22px;
    z-index: 4;
    width: 44px;
    height: 44px;
    opacity: 1;
}

.prime-home-gallery-card .carousel-control-prev {
    right: 70px;
    left: auto;
}

.prime-home-gallery-card .carousel-control-next {
    right: 20px;
}

.prime-gallery-control {
    display: grid;
    width: 40px;
    height: 40px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.25);
    border-radius: 10px;
    background: rgba(2, 18, 43, 0.45);
    color: var(--prime-white);
    font-size: 16px;
    backdrop-filter: blur(8px);
    transition: var(--prime-transition);
}

.prime-gallery-control:hover {
    border-color: rgba(255, 255, 255, 0.6);
    background: var(--prime-primary);
}

/* =========================================================
   CONTENT CARDS
========================================================= */

.prime-content-card {
    padding: 38px;
    border: 1px solid var(--prime-border);
    border-radius: var(--prime-radius-lg);
    background: var(--prime-white);
    box-shadow: var(--prime-shadow-sm);
}

.prime-feature-list {
    display: grid;
    gap: 13px;
}

.prime-feature-list > div {
    display: flex;
    align-items: flex-start;
    gap: 11px;
    color: var(--prime-text);
    font-size: 14px;
    line-height: 1.7;
}

.prime-feature-list i {
    display: grid;
    flex: 0 0 24px;
    width: 24px;
    height: 24px;
    margin-top: 1px;
    place-items: center;
    border-radius: 50%;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 13px;
    font-weight: 800;
}

.prime-feature-list strong {
    color: var(--prime-heading);
}

/* =========================================================
   ABOUT STAT PANEL
========================================================= */

.prime-about-stat-panel {
    overflow: hidden;
    border: 1px solid #cddff4;
    border-radius: 18px;
    background:
        linear-gradient(
            155deg,
            #eff6ff 0%,
            #ffffff 100%
        );
}

.prime-about-stat-main {
    display: flex;
    align-items: center;
    gap: 18px;
    padding: 28px;
    border-bottom: 1px solid #dce8f6;
    background:
        linear-gradient(
            135deg,
            #07366f 0%,
            #0b4ea2 100%
        );
    color: var(--prime-white);
}

.prime-about-stat-main > i {
    color: #99caff;
    font-size: 48px;
}

.prime-about-stat-main strong {
    display: block;
    margin-bottom: 2px;
    font-size: 32px;
    font-weight: 850;
    line-height: 1;
    letter-spacing: -0.03em;
}

.prime-about-stat-main span {
    display: block;
    color: rgba(255, 255, 255, 0.72);
    font-size: 12px;
}

.prime-about-stat-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
}

.prime-about-stat-grid > div {
    min-height: 116px;
    padding: 20px;
}

.prime-about-stat-grid > div:nth-child(odd) {
    border-right: 1px solid #dce8f6;
}

.prime-about-stat-grid > div:nth-child(-n + 2) {
    border-bottom: 1px solid #dce8f6;
}

.prime-about-stat-grid strong {
    display: block;
    margin-bottom: 7px;
    color: var(--prime-heading);
    font-size: 13px;
    font-weight: 800;
}

.prime-about-stat-grid span {
    display: block;
    color: var(--prime-text-light);
    font-size: 11px;
    line-height: 1.55;
}

/* =========================================================
   PRODUCT EXPERTISE CARDS
========================================================= */

.prime-product-card {
    position: relative;
    display: flex;
    min-height: 265px;
    flex-direction: column;
    padding: 25px;
    overflow: hidden;
    border: 1px solid var(--prime-border);
    border-radius: 16px;
    background: var(--prime-white);
    transition: var(--prime-transition);
}

.prime-product-card::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background:
        linear-gradient(
            90deg,
            var(--prime-primary),
            var(--prime-accent)
        );
    content: "";
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.prime-product-card::after {
    position: absolute;
    right: -50px;
    bottom: -60px;
    width: 145px;
    height: 145px;
    border-radius: 50%;
    background: var(--prime-primary-light);
    content: "";
    opacity: 0;
    transition: var(--prime-transition);
}

.prime-product-card:hover {
    border-color: #b8d3f2;
    box-shadow:
        0 20px 44px rgba(15, 23, 42, 0.1);
    transform: translateY(-5px);
}

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

.prime-product-card:hover::after {
    opacity: 0.7;
    transform: scale(1.08);
}

.prime-product-card-top {
    position: relative;
    z-index: 2;
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 15px;
    margin-bottom: 20px;
}

.prime-product-card-icon {
    display: grid;
    width: 54px;
    height: 54px;
    place-items: center;
    border-radius: 14px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 24px;
}

.prime-card-number {
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 850;
    letter-spacing: 0.08em;
}

.prime-product-card h3 {
    position: relative;
    z-index: 2;
    margin: 0 0 11px;
    color: var(--prime-heading);
    font-size: 18px;
    font-weight: 800;
    line-height: 1.35;
}

.prime-product-card p {
    position: relative;
    z-index: 2;
    margin: 0 0 20px;
    color: var(--prime-text-light);
    font-size: 13px;
    line-height: 1.75;
}

.prime-card-link {
    position: relative;
    z-index: 2;
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: auto;
    color: var(--prime-primary);
    font-size: 12px;
    font-weight: 800;
}

.prime-product-card:hover .prime-card-link {
    gap: 11px;
}

/* =========================================================
   BENEFIT CARDS
========================================================= */

.prime-benefit-card {
    height: 100%;
    min-height: 230px;
    padding: 24px;
    border: 1px solid var(--prime-border);
    border-radius: 15px;
    background:
        linear-gradient(
            180deg,
            #ffffff 0%,
            #f9fbfe 100%
        );
    transition: var(--prime-transition);
}

.prime-benefit-card:hover {
    border-color: #b8d3f2;
    box-shadow: var(--prime-shadow-sm);
    transform: translateY(-4px);
}

.prime-benefit-icon {
    display: grid;
    width: 50px;
    height: 50px;
    margin-bottom: 18px;
    place-items: center;
    border-radius: 13px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 22px;
}

.prime-benefit-card h4 {
    margin: 0 0 10px;
    color: var(--prime-heading);
    font-size: 16px;
    font-weight: 800;
}

.prime-benefit-card p {
    margin: 0;
    color: var(--prime-text-light);
    font-size: 13px;
    line-height: 1.7;
}

/* =========================================================
   INDUSTRY GRID
========================================================= */

.prime-industry-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}

.prime-industry-grid a {
    display: grid;
    grid-template-columns: 42px 1fr auto;
    align-items: center;
    gap: 12px;
    min-height: 74px;
    padding: 14px;
    border: 1px solid var(--prime-border);
    border-radius: 12px;
    background: var(--prime-white);
    color: var(--prime-heading);
    font-size: 12px;
    font-weight: 750;
}

.prime-industry-grid a > i:first-child {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 10px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 18px;
}

.prime-industry-grid a > i:last-child {
    color: #94a3b8;
    font-size: 12px;
}

.prime-industry-grid a:hover {
    border-color: var(--prime-primary);
    background: var(--prime-primary);
    color: var(--prime-white);
    box-shadow:
        0 14px 30px rgba(11, 78, 162, 0.18);
    transform: translateY(-3px);
}

.prime-industry-grid a:hover > i:first-child {
    background: rgba(255, 255, 255, 0.14);
    color: var(--prime-white);
}

.prime-industry-grid a:hover > i:last-child {
    color: var(--prime-white);
}
/* =========================================================
   PRODUCT PAGE SECTION
========================================================= */

.prime-product-page-section {
    background:
        linear-gradient(
            180deg,
            #f7fbff 0%,
            #ffffff 42%,
            #ffffff 100%
        );
}

/* =========================================================
   PRODUCT DETAIL CARD
========================================================= */

.prime-product-detail-card {
    padding: 34px;
    border: 1px solid var(--prime-border);
    border-radius: var(--prime-radius-lg);
    background: var(--prime-white);
    box-shadow: var(--prime-shadow);
}

.prime-product-info {
    min-width: 0;
}

.prime-product-title {
    margin: 0 0 18px;
    color: var(--prime-heading);
    font-size: clamp(30px, 4vw, 46px);
    font-weight: 820;
    line-height: 1.12;
    letter-spacing: -0.035em;
}

.prime-product-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 24px;
}

.prime-product-meta span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    min-height: 38px;
    padding: 8px 13px;
    border: 1px solid var(--prime-border);
    border-radius: 9px;
    background: var(--prime-light);
    color: var(--prime-text);
    font-size: 12px;
}

.prime-product-meta strong {
    color: var(--prime-heading);
    font-weight: 800;
}

/* =========================================================
   PRODUCT DESCRIPTION CONTENT
========================================================= */

.prime-product-content {
    color: var(--prime-text);
    font-size: 15px;
    line-height: 1.8;
}

.prime-product-content h1,
.prime-product-content h2,
.prime-product-content h3,
.prime-product-content h4,
.prime-product-content h5,
.prime-product-content h6 {
    margin: 26px 0 12px;
    color: var(--prime-heading);
    font-weight: 800;
    line-height: 1.3;
}

.prime-product-content h1 {
    font-size: 30px;
}

.prime-product-content h2 {
    font-size: 25px;
}

.prime-product-content h3 {
    font-size: 21px;
}

.prime-product-content h4,
.prime-product-content h5,
.prime-product-content h6 {
    font-size: 17px;
}

.prime-product-content p {
    margin: 0 0 16px;
}

.prime-product-content ul,
.prime-product-content ol {
    margin: 0 0 18px;
    padding-left: 21px;
}

.prime-product-content li {
    margin-bottom: 7px;
}

.prime-product-content strong {
    color: var(--prime-heading);
}

.prime-product-content a {
    color: var(--prime-primary);
    font-weight: 700;
}

.prime-product-content a:hover {
    color: var(--prime-primary-dark);
}

.prime-product-content img {
    height: auto;
    margin: 10px 0 18px;
    border-radius: 12px;
}

.prime-product-content table {
    width: 100%;
    margin: 22px 0;
    overflow: hidden;
    border-collapse: collapse;
    border: 1px solid var(--prime-border);
    border-radius: 10px;
    font-size: 13px;
}

.prime-product-content th,
.prime-product-content td {
    padding: 11px 13px;
    border: 1px solid var(--prime-border);
    text-align: left;
    vertical-align: top;
}

.prime-product-content th {
    background: var(--prime-primary-light);
    color: var(--prime-heading);
    font-weight: 800;
}

.prime-product-content tr:nth-child(even) td {
    background: #fbfdff;
}

.prime-product-content blockquote {
    margin: 22px 0;
    padding: 17px 20px;
    border-left: 4px solid var(--prime-primary);
    border-radius: 0 10px 10px 0;
    background: var(--prime-primary-light);
    color: var(--prime-heading);
}

/* =========================================================
   PRODUCT IMAGE GALLERY
========================================================= */

.prime-product-gallery {
    position: sticky;
    top: 96px;
}

.prime-product-main-wrap {
    position: relative;
    overflow: hidden;
    border: 1px solid var(--prime-border);
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            #f8fbff 0%,
            #eef5fb 100%
        );
}

.prime-product-main-wrap::before {
    display: block;
    padding-top: 100%;
    content: "";
}

.prime-product-main-img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 18px;
    object-fit: contain;
    object-position: center;
    transition:
        opacity 0.18s ease,
        transform 0.25s ease;
}

.prime-product-main-wrap:hover .prime-product-main-img {
    transform: scale(1.025);
}

.prime-product-main-img.prime-image-changing {
    opacity: 0.25;
}

.prime-image-zoom-btn {
    position: absolute;
    right: 14px;
    bottom: 14px;
    z-index: 2;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.65);
    border-radius: 11px;
    background: rgba(15, 23, 42, 0.76);
    color: var(--prime-white);
    font-size: 17px;
    box-shadow:
        0 12px 28px rgba(15, 23, 42, 0.2);
    backdrop-filter: blur(8px);
    transition: var(--prime-transition);
}

.prime-image-zoom-btn:hover {
    background: var(--prime-primary);
    color: var(--prime-white);
    transform: translateY(-2px);
}

/* =========================================================
   PRODUCT THUMBNAILS
========================================================= */

.prime-thumb-row {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 9px;
    margin-top: 12px;
}

.prime-thumb {
    position: relative;
    overflow: hidden;
    padding: 0;
    border: 2px solid transparent;
    border-radius: 10px;
    background: var(--prime-light);
    aspect-ratio: 1 / 1;
    cursor: pointer;
    transition: var(--prime-transition);
}

.prime-thumb::after {
    position: absolute;
    inset: 0;
    border-radius: inherit;
    background: rgba(11, 78, 162, 0);
    content: "";
    transition: var(--prime-transition);
}

.prime-thumb img {
    width: 100%;
    height: 100%;
    padding: 5px;
    object-fit: contain;
    background: var(--prime-white);
}

.prime-thumb:hover {
    border-color: #9fc5ef;
    transform: translateY(-2px);
}

.prime-thumb.active {
    border-color: var(--prime-primary);
    box-shadow:
        0 7px 18px rgba(11, 78, 162, 0.2);
}

.prime-thumb.active::after {
    box-shadow:
        inset 0 0 0 1px rgba(11, 78, 162, 0.12);
}

.prime-no-image {
    display: flex;
    min-height: 420px;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 13px;
    border: 1px dashed #bdcce0;
    border-radius: 18px;
    background:
        linear-gradient(
            145deg,
            #f8fbff,
            #eef5fb
        );
    color: var(--prime-text-light);
    text-align: center;
}

.prime-no-image i {
    color: #94a3b8;
    font-size: 52px;
}

.prime-no-image span {
    font-size: 13px;
    font-weight: 700;
}

/* =========================================================
   PRODUCT ACTION BOX
========================================================= */

.prime-product-action-box {
    display: grid;
    grid-template-columns: 46px 1fr auto;
    align-items: center;
    gap: 14px;
    margin-top: 28px;
    padding: 18px;
    border: 1px solid #cfe0f3;
    border-radius: 14px;
    background:
        linear-gradient(
            135deg,
            #f3f8ff 0%,
            #ffffff 100%
        );
}

.prime-product-action-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    background: var(--prime-primary);
    color: var(--prime-white);
    font-size: 20px;
}

.prime-product-action-content {
    min-width: 0;
}

.prime-product-action-content strong {
    display: block;
    margin-bottom: 3px;
    color: var(--prime-heading);
    font-size: 13px;
    font-weight: 800;
}

.prime-product-action-content span {
    display: block;
    color: var(--prime-text-light);
    font-size: 12px;
    line-height: 1.55;
}

/* =========================================================
   PRODUCT FEATURE GRID
========================================================= */

.prime-product-feature-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 14px;
}

.prime-product-feature-item {
    display: flex;
    align-items: flex-start;
    gap: 13px;
    min-height: 116px;
    padding: 20px;
    border: 1px solid var(--prime-border);
    border-radius: 14px;
    background: var(--prime-white);
    box-shadow: var(--prime-shadow-sm);
}

.prime-product-feature-icon {
    display: grid;
    flex: 0 0 43px;
    width: 43px;
    height: 43px;
    place-items: center;
    border-radius: 11px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 19px;
}

.prime-product-feature-item strong {
    display: block;
    margin-bottom: 5px;
    color: var(--prime-heading);
    font-size: 13px;
    font-weight: 800;
}

.prime-product-feature-item span {
    display: block;
    color: var(--prime-text-light);
    font-size: 11px;
    line-height: 1.6;
}

/* =========================================================
   PRODUCT CTA
========================================================= */

.prime-product-cta {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    overflow: hidden;
    padding: 38px;
    border-radius: var(--prime-radius-lg);
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(111, 180, 255, 0.28),
            transparent 27%
        ),
        linear-gradient(
            135deg,
            #041b3a 0%,
            #07366f 55%,
            #0b4ea2 100%
        );
    color: var(--prime-white);
    box-shadow: var(--prime-shadow-lg);
}

.prime-product-cta::before {
    position: absolute;
    right: -65px;
    bottom: -90px;
    z-index: -1;
    width: 250px;
    height: 250px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    border-radius: 50%;
    content: "";
}

.prime-product-cta-content {
    max-width: 680px;
}

.prime-product-cta h3 {
    margin: 0 0 12px;
    color: var(--prime-white);
    font-size: clamp(27px, 4vw, 38px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: -0.03em;
}

.prime-product-cta p {
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 14px;
    line-height: 1.75;
}

.prime-product-cta-actions {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 10px;
    min-width: 190px;
}

/* =========================================================
   RELATED PRODUCTS
========================================================= */

.prime-related-products {
    padding-top: 8px;
}

.prime-text-link {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: var(--prime-primary);
    font-size: 13px;
    font-weight: 800;
}

.prime-text-link:hover {
    gap: 12px;
    color: var(--prime-primary-dark);
}

.prime-related-product-card {
    display: grid;
    grid-template-columns: 44px 1fr auto;
    align-items: center;
    gap: 13px;
    min-height: 96px;
    padding: 17px;
    border: 1px solid var(--prime-border);
    border-radius: 14px;
    background: var(--prime-white);
    box-shadow: var(--prime-shadow-sm);
}

.prime-related-product-card:hover {
    border-color: var(--prime-primary);
    box-shadow:
        0 16px 34px rgba(15, 23, 42, 0.1);
    transform: translateY(-3px);
}

.prime-related-product-icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 11px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 20px;
}

.prime-related-product-content {
    min-width: 0;
}

.prime-related-product-content strong {
    display: block;
    margin-bottom: 4px;
    overflow: hidden;
    color: var(--prime-heading);
    font-size: 13px;
    font-weight: 800;
    line-height: 1.4;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.prime-related-product-content span {
    display: block;
    color: var(--prime-text-light);
    font-size: 11px;
}

.prime-related-product-card > i {
    color: #94a3b8;
    font-size: 13px;
}

.prime-related-product-card:hover > i {
    color: var(--prime-primary);
}

/* =========================================================
   PRODUCT IMAGE MODAL
========================================================= */

.prime-product-modal-content {
    position: relative;
    overflow: hidden;
    border: 0;
    border-radius: 18px;
    background: var(--prime-white);
    box-shadow:
        0 35px 90px rgba(2, 18, 43, 0.36);
}

.prime-product-modal-content .modal-body {
    display: flex;
    min-height: 620px;
    align-items: center;
    justify-content: center;
    padding: 36px;
    background:
        linear-gradient(
            145deg,
            #f7faff 0%,
            #eef4fa 100%
        );
}

.prime-modal-product-image {
    display: block;
    max-width: 100%;
    max-height: 78vh;
    object-fit: contain;
}

.prime-modal-close {
    position: absolute;
    top: 15px;
    right: 15px;
    z-index: 5;
    width: 42px;
    height: 42px;
    padding: 0;
    border-radius: 50%;
    background-color: rgba(15, 23, 42, 0.78);
    background-size: 13px;
    filter: invert(1);
    opacity: 1;
    box-shadow:
        0 10px 22px rgba(15, 23, 42, 0.2);
}

.prime-modal-close:hover {
    background-color: var(--prime-primary);
    opacity: 1;
    transform: rotate(90deg);
}

/* =========================================================
   BOOTSTRAP MODAL BACKDROP
========================================================= */

.modal-backdrop.show {
    opacity: 0.72;
}
/* =========================================================
   LARGE DESKTOP
========================================================= */

@media (min-width: 1400px) {
    .container {
        max-width: 1320px;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 540px;
    }

    .prime-gallery-slide {
        min-height: 540px;
    }

    .prime-product-list {
        max-height: 560px;
    }
}

/* =========================================================
   DESKTOP / SMALL LAPTOP
========================================================= */

@media (max-width: 1199.98px) {
    .prime-section {
        padding: 68px 0;
    }

    .prime-hero {
        min-height: auto;
    }

    .prime-hero h1 {
        font-size: clamp(40px, 5.6vw, 62px);
    }

    .prime-hero-panel {
        padding: 24px;
    }

    .prime-trust-item {
        padding: 20px 16px;
    }

    .prime-content-card {
        padding: 30px;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 470px;
    }

    .prime-gallery-slide {
        min-height: 470px;
    }

    .prime-gallery-caption {
        padding: 36px 44px;
    }

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

    .prime-product-action-box {
        grid-template-columns: 44px 1fr;
    }

    .prime-product-action-box .btn {
        grid-column: 1 / -1;
        width: 100%;
    }

    .prime-product-feature-grid {
        grid-template-columns: 1fr;
    }

    .prime-product-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .prime-product-cta-actions {
        width: 100%;
        min-width: 0;
        flex-direction: row;
    }

    .prime-product-cta-actions .btn {
        flex: 1;
    }
}

/* =========================================================
   TABLET
========================================================= */

@media (max-width: 991.98px) {
    .prime-section {
        padding: 58px 0;
    }

    .prime-home-products-layout .row,
    .prime-product-page-section .row {
        --bs-gutter-y: 28px;
    }

    .prime-hero {
        padding: 38px 0 58px;
    }

    .prime-hero-content {
        max-width: 100%;
        padding: 35px 0 10px;
        text-align: center;
    }

    .prime-hero-kicker {
        justify-content: center;
    }

    .prime-hero h1 {
        max-width: 900px;
        margin-right: auto;
        margin-left: auto;
        font-size: clamp(40px, 8vw, 62px);
    }

    .prime-hero-content > p {
        margin-right: auto;
        margin-left: auto;
    }

    .prime-hero-content .d-flex {
        justify-content: center;
    }

    .prime-hero-points {
        justify-content: center;
    }

    .prime-hero-panel {
        max-width: 680px;
        margin: 20px auto 0;
    }

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

    .prime-trust-item:nth-child(3) {
        border-left: 0;
        border-top: 1px solid var(--prime-border);
    }

    .prime-trust-item:nth-child(4) {
        border-top: 1px solid var(--prime-border);
    }

    .prime-product-sidebar {
        position: static !important;
        top: auto;
    }

    .prime-product-list {
        max-height: 350px;
    }

    .prime-sidebar-footer {
        grid-template-columns: 38px 1fr auto;
        align-items: center;
    }

    .prime-sidebar-footer a {
        grid-column: auto;
        white-space: nowrap;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 430px;
    }

    .prime-gallery-slide {
        min-height: 430px;
    }

    .prime-gallery-caption {
        width: 88%;
        padding: 34px 38px;
    }

    .prime-gallery-caption h2 {
        font-size: clamp(30px, 6vw, 44px);
    }

    .prime-content-card {
        padding: 28px;
    }

    .prime-about-stat-panel {
        max-width: 620px;
        margin: 0 auto;
    }

    .prime-product-gallery {
        position: static;
        top: auto;
    }

    .prime-product-detail-card {
        padding: 28px;
    }

    .prime-product-main-wrap {
        max-width: 620px;
        margin: 0 auto;
    }

    .prime-thumb-row {
        max-width: 620px;
        margin-right: auto;
        margin-left: auto;
    }

    .prime-product-cta {
        padding: 30px;
    }

    .prime-page-hero {
        padding: 64px 0;
    }
}

/* =========================================================
   MOBILE LANDSCAPE / SMALL TABLET
========================================================= */

@media (max-width: 767.98px) {
    body {
        font-size: 14px;
    }

    .prime-section {
        padding: 46px 0;
    }

    .prime-section-title {
        font-size: clamp(26px, 8vw, 36px);
    }

    .prime-section-copy {
        font-size: 15px;
    }

    .prime-hero {
        padding: 28px 0 48px;
    }

    .prime-hero-content {
        padding-top: 24px;
    }

    .prime-hero h1 {
        font-size: clamp(36px, 10vw, 50px);
        line-height: 1;
    }

    .prime-hero-content > p {
        font-size: 16px;
        line-height: 1.7;
    }

    .prime-hero-content .d-flex {
        flex-direction: column;
    }

    .prime-hero-content .btn {
        width: 100%;
    }

    .prime-hero-points {
        display: grid;
        gap: 10px;
        justify-content: stretch;
        text-align: left;
    }

    .prime-hero-points span {
        justify-content: center;
    }

    .prime-hero-panel {
        padding: 20px;
        border-radius: 18px;
    }

    .prime-hero-panel-top h4 {
        font-size: 21px;
    }

    .prime-capability {
        grid-template-columns: 38px 1fr;
    }

    .prime-trust-grid {
        grid-template-columns: 1fr;
    }

    .prime-trust-item,
    .prime-trust-item:nth-child(2),
    .prime-trust-item:nth-child(3),
    .prime-trust-item:nth-child(4) {
        border-top: 1px solid var(--prime-border);
        border-left: 0;
    }

    .prime-trust-item:first-child {
        border-top: 0;
    }

    .prime-trust-item {
        min-height: 88px;
        padding: 17px 18px;
    }

    .prime-page-hero {
        padding: 52px 0;
    }

    .prime-page-hero h1 {
        font-size: clamp(30px, 9vw, 42px);
    }

    .prime-breadcrumb {
        align-items: flex-start;
        font-size: 12px;
    }

    .prime-sidebar {
        border-radius: 16px;
    }

    .prime-sidebar-header {
        padding: 18px;
    }

    .prime-sidebar-header h5 {
        font-size: 18px;
    }

    .prime-product-list {
        max-height: 310px;
    }

    .prime-sidebar-footer {
        grid-template-columns: 38px 1fr;
    }

    .prime-sidebar-footer a {
        grid-column: 2;
    }

    .prime-home-gallery-card {
        border-radius: 16px;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 400px;
    }

    .prime-gallery-slide {
        min-height: 400px;
    }

    .prime-gallery-caption {
        top: auto;
        bottom: 54px;
        width: 100%;
        padding: 28px 24px;
        transform: none;
    }

    .prime-gallery-caption h2 {
        margin-bottom: 12px;
        font-size: clamp(27px, 8vw, 38px);
    }

    .prime-gallery-caption p {
        margin-bottom: 18px;
        font-size: 14px;
        line-height: 1.65;
    }

    .prime-gallery-caption .btn {
        min-height: 44px;
        padding: 10px 17px;
    }

    .prime-home-gallery-card .carousel-indicators {
        bottom: 17px;
        left: 20px;
    }

    .prime-home-gallery-card .carousel-control-prev,
    .prime-home-gallery-card .carousel-control-next {
        bottom: 14px;
    }

    .prime-home-gallery-card .carousel-control-prev {
        right: 62px;
    }

    .prime-home-gallery-card .carousel-control-next {
        right: 14px;
    }

    .prime-gallery-control {
        width: 36px;
        height: 36px;
    }

    .prime-content-card {
        padding: 22px;
        border-radius: 16px;
    }

    .prime-about-stat-main {
        padding: 22px;
    }

    .prime-about-stat-main strong {
        font-size: 28px;
    }

    .prime-about-stat-grid {
        grid-template-columns: 1fr;
    }

    .prime-about-stat-grid > div {
        min-height: auto;
        padding: 17px 20px;
        border-right: 0 !important;
        border-bottom: 1px solid #dce8f6;
    }

    .prime-about-stat-grid > div:last-child {
        border-bottom: 0;
    }

    .prime-product-card {
        min-height: auto;
        padding: 22px;
    }

    .prime-benefit-card {
        min-height: auto;
    }

    .prime-industry-grid {
        grid-template-columns: 1fr;
    }

    .prime-product-detail-card {
        padding: 20px;
        border-radius: 16px;
    }

    .prime-product-title {
        font-size: clamp(28px, 8vw, 38px);
    }

    .prime-product-main-wrap::before {
        padding-top: 88%;
    }

    .prime-thumb-row {
        grid-template-columns: repeat(4, 1fr);
    }

    .prime-product-action-box {
        grid-template-columns: 42px 1fr;
        padding: 15px;
    }

    .prime-product-action-box .btn {
        grid-column: 1 / -1;
    }

    .prime-product-feature-item {
        min-height: auto;
        padding: 17px;
    }

    .prime-product-cta {
        padding: 26px 22px;
        border-radius: 16px;
    }

    .prime-product-cta-actions {
        flex-direction: column;
    }

    .prime-related-product-content strong {
        white-space: normal;
    }

    .prime-product-modal-content .modal-body {
        min-height: 440px;
        padding: 28px 18px;
    }

    .prime-product-content {
        overflow-x: auto;
    }

    .prime-product-content table {
        min-width: 620px;
    }
}

/* =========================================================
   SMALL MOBILE
========================================================= */

@media (max-width: 575.98px) {
    .container {
        padding-right: 16px;
        padding-left: 16px;
    }

    .prime-eyebrow {
        font-size: 10px;
        letter-spacing: 0.12em;
    }

    .prime-btn-lg {
        min-height: 49px;
        padding: 13px 20px;
    }

    .prime-hero {
        padding-top: 18px;
    }

    .prime-hero-kicker {
        margin-bottom: 16px;
        padding: 7px 10px;
        font-size: 10px;
    }

    .prime-hero h1 {
        font-size: clamp(33px, 11vw, 44px);
        letter-spacing: -0.035em;
    }

    .prime-hero-content > p {
        font-size: 15px;
    }

    .prime-hero-panel {
        margin-top: 12px;
        padding: 18px;
    }

    .prime-hero-panel-top {
        margin-bottom: 12px;
        padding-bottom: 15px;
    }

    .prime-hero-panel-top > i {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
        font-size: 20px;
    }

    .prime-capability {
        padding: 14px 0;
    }

    .prime-trust-icon {
        width: 40px;
        height: 40px;
        flex-basis: 40px;
    }

    .prime-page-hero {
        padding: 42px 0;
    }

    .prime-sidebar-header {
        align-items: flex-start;
    }

    .prime-search {
        padding: 15px 14px 10px;
    }

    .prime-search > i {
        left: 28px;
    }

    .prime-product-count {
        padding-right: 14px;
        padding-left: 14px;
    }

    .prime-product-list {
        max-height: 285px;
        padding-right: 7px;
        padding-left: 7px;
    }

    .prime-product-list a {
        min-height: 44px;
        padding: 10px;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 370px;
    }

    .prime-gallery-slide {
        min-height: 370px;
    }

    .prime-gallery-caption {
        bottom: 48px;
        padding: 22px 18px;
    }

    .prime-gallery-caption h2 {
        font-size: clamp(25px, 9vw, 34px);
    }

    .prime-gallery-caption p {
        display: -webkit-box;
        overflow: hidden;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 3;
    }

    .prime-home-gallery-card .carousel-indicators [data-bs-target] {
        width: 20px;
    }

    .prime-home-gallery-card .carousel-indicators .active {
        width: 34px;
    }

    .prime-content-card {
        padding: 19px;
    }

    .prime-section-title {
        font-size: clamp(25px, 8.5vw, 33px);
    }

    .prime-about-stat-main {
        align-items: flex-start;
    }

    .prime-about-stat-main > i {
        font-size: 38px;
    }

    .prime-product-card-icon {
        width: 48px;
        height: 48px;
        font-size: 21px;
    }

    .prime-industry-grid a {
        min-height: 68px;
    }

    .prime-product-detail-card {
        padding: 16px;
    }

    .prime-product-main-wrap {
        border-radius: 14px;
    }

    .prime-product-main-img {
        padding: 10px;
    }

    .prime-image-zoom-btn {
        right: 10px;
        bottom: 10px;
        width: 40px;
        height: 40px;
    }

    .prime-thumb-row {
        grid-template-columns: repeat(4, 1fr);
        gap: 6px;
    }

    .prime-product-meta {
        display: grid;
        grid-template-columns: 1fr;
    }

    .prime-product-meta span {
        width: 100%;
    }

    .prime-product-action-box {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .prime-product-action-icon {
        margin: 0 auto;
    }

    .prime-product-action-box .btn {
        grid-column: auto;
    }

    .prime-product-feature-item {
        flex-direction: column;
    }

    .prime-product-cta {
        padding: 23px 18px;
    }

    .prime-product-cta h3 {
        font-size: clamp(25px, 8vw, 32px);
    }

    .prime-related-product-card {
        grid-template-columns: 40px 1fr auto;
        padding: 14px;
    }

    .prime-related-product-icon {
        width: 40px;
        height: 40px;
    }

    .prime-product-modal-content {
        border-radius: 12px;
    }

    .prime-product-modal-content .modal-body {
        min-height: 360px;
        padding: 25px 12px;
    }

    .prime-modal-close {
        top: 10px;
        right: 10px;
        width: 38px;
        height: 38px;
    }
}

/* =========================================================
   VERY SMALL MOBILE
========================================================= */

@media (max-width: 399.98px) {
    .prime-hero h1 {
        font-size: 25px;
    }

    .prime-hero-content > p {
        font-size: 14px;
    }

    .prime-gallery-slide,
    .prime-gallery-image {
        height: 350px;
    }

    .prime-gallery-slide {
        min-height: 350px;
    }

    .prime-gallery-caption {
        padding-right: 15px;
        padding-left: 15px;
    }

    .prime-gallery-caption h2 {
        font-size: 25px;
    }

    .prime-gallery-caption .btn {
        width: 100%;
    }

    .prime-home-gallery-card .carousel-control-prev,
    .prime-home-gallery-card .carousel-control-next {
        display: none;
    }

    .prime-thumb-row {
        grid-template-columns: repeat(3, 1fr);
    }

    .prime-product-title {
        font-size: 27px;
    }

    .prime-product-cta-actions .btn {
        width: 100%;
    }
}

/* =========================================================
   REDUCED MOTION
========================================================= */

@media (prefers-reduced-motion: reduce) {
    *,
    *::before,
    *::after {
        scroll-behavior: auto !important;
        transition-duration: 0.01ms !important;
        animation-duration: 0.01ms !important;
        animation-iteration-count: 1 !important;
    }

    .carousel-item.active .prime-gallery-image {
        transform: none;
    }
}

/* =========================================================
   PRINT
========================================================= */

@media print {
    .prime-hero,
    .prime-trust-strip,
    .prime-page-hero,
    .prime-sidebar,
    .prime-product-action-box,
    .prime-product-feature-grid,
    .prime-product-cta,
    .prime-related-products,
    .prime-image-zoom-btn,
    .prime-thumb-row,
    .modal,
    footer {
        display: none !important;
    }

    body {
        background: #ffffff;
        color: #000000;
    }

    .prime-section,
    .prime-product-page-section {
        padding: 0;
        background: #ffffff;
    }

    .prime-product-detail-card {
        padding: 0;
        border: 0;
        box-shadow: none;
    }

    .prime-product-content,
    .prime-product-content p,
    .prime-product-content td,
    .prime-product-content th {
        color: #000000;
    }
}

/* =========================================================
   ABOUT PAGE
========================================================= */

.prime-about-page {
    background: #ffffff;
}

/* =========================================================
   ABOUT HERO
========================================================= */

.prime-about-hero {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    padding: 88px 0;
    background:
        radial-gradient(
            circle at 88% 15%,
            rgba(65, 142, 244, 0.34),
            transparent 25%
        ),
        linear-gradient(
            135deg,
            #03182f 0%,
            #07366f 50%,
            #0b4ea2 100%
        );
    color: #ffffff;
}

.prime-about-hero-pattern {
    position: absolute;
    inset: 0;
    z-index: -3;
    opacity: 0.15;
    background-image:
        linear-gradient(
            rgba(255, 255, 255, 0.12) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(255, 255, 255, 0.12) 1px,
            transparent 1px
        );
    background-size: 46px 46px;
}

.prime-about-hero-glow {
    position: absolute;
    z-index: -2;
    border-radius: 50%;
    filter: blur(30px);
}

.prime-about-hero-glow-one {
    top: -80px;
    right: 4%;
    width: 340px;
    height: 340px;
    background: rgba(79, 158, 255, 0.18);
}

.prime-about-hero-glow-two {
    bottom: -160px;
    left: -80px;
    width: 420px;
    height: 420px;
    background: rgba(0, 126, 230, 0.15);
}

.prime-about-breadcrumb {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    color: rgba(255, 255, 255, 0.62);
    font-size: 12px;
}

.prime-about-breadcrumb a {
    color: #d9ebff;
}

.prime-about-breadcrumb a:hover {
    color: #ffffff;
}

.prime-about-breadcrumb i {
    font-size: 9px;
}

.prime-about-kicker {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 18px;
    padding: 8px 13px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.08);
    color: #c7e1ff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.1em;
    text-transform: uppercase;
    backdrop-filter: blur(10px);
}

.prime-about-hero-content h1 {
    max-width: 760px;
    margin: 0 0 23px;
    color: #ffffff;
    font-size: clamp(42px, 6vw, 68px);
    font-weight: 600;
    line-height: 1;
    letter-spacing: -0.045em;
}

.prime-about-hero-content h1 span {
    color: #8dc5ff;
}

.prime-about-hero-content > p {
    max-width: 690px;
    margin: 0 0 13px;
    color: rgba(255, 255, 255, 0.74);
    font-size: 16px;
    line-height: 1.78;
}

.prime-about-hero-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    margin-top: 30px;
}

.prime-about-hero-points {
    display: flex;
    flex-wrap: wrap;
    gap: 12px 24px;
    margin-top: 25px;
}

.prime-about-hero-points span {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    color: rgba(255, 255, 255, 0.79);
    font-size: 12px;
    font-weight: 650;
}

.prime-about-hero-points i {
    color: #8bc5ff;
}

/* =========================================================
   HERO PANEL
========================================================= */

.prime-about-hero-panel {
    padding: 28px;
    border: 1px solid rgba(255, 255, 255, 0.16);
    border-radius: 22px;
    background:
        linear-gradient(
            145deg,
            rgba(255, 255, 255, 0.14),
            rgba(255, 255, 255, 0.055)
        );
    box-shadow: 0 30px 70px rgba(0, 0, 0, 0.22);
    backdrop-filter: blur(18px);
}

.prime-about-panel-heading {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: 18px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.prime-about-panel-heading span {
    display: block;
    margin-bottom: 4px;
    color: #9ecaff;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.13em;
    text-transform: uppercase;
}

.prime-about-panel-heading h2 {
    margin: 0;
    color: #ffffff;
    font-size: 22px;
    font-weight: 800;
}

.prime-about-panel-icon {
    display: grid;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.1);
    color: #a9d2ff;
    font-size: 21px;
}

.prime-about-strength {
    display: grid;
    grid-template-columns: 44px 1fr;
    gap: 14px;
    padding: 16px 0;
}

.prime-about-strength + .prime-about-strength {
    border-top: 1px solid rgba(255, 255, 255, 0.1);
}

.prime-about-strength-icon {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 11px;
    background: rgba(117, 182, 255, 0.13);
    color: #9bcaff;
    font-size: 18px;
}

.prime-about-strength h3 {
    margin: 0 0 5px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 750;
}

.prime-about-strength p {
    margin: 0;
    color: rgba(255, 255, 255, 0.64);
    font-size: 12px;
    line-height: 1.65;
}

.prime-about-panel-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    margin-top: 16px;
    padding: 13px 14px;
    border: 1px solid rgba(115, 183, 255, 0.2);
    border-radius: 10px;
    background: rgba(47, 128, 237, 0.11);
    color: #d8ebff;
    font-size: 12px;
    line-height: 1.55;
}

/* =========================================================
   COMPANY INTRODUCTION
========================================================= */

.prime-about-intro-section {
    background: #ffffff;
}

.prime-about-image-card {
    position: relative;
    min-height: 510px;
    overflow: hidden;
    border-radius: 22px;
    background:
        radial-gradient(
            circle at 75% 20%,
            rgba(69, 147, 247, 0.23),
            transparent 25%
        ),
        linear-gradient(
            145deg,
            #061d3c,
            #0b4ea2
        );
    box-shadow: var(--prime-shadow-lg);
}

.prime-about-image-placeholder {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 18px;
    padding: 40px;
    color: #ffffff;
    text-align: center;
}

.prime-about-image-placeholder > i {
    color: rgba(255, 255, 255, 0.22);
    font-size: 130px;
}

.prime-about-image-placeholder strong {
    display: block;
    margin-bottom: 5px;
    font-size: 24px;
    font-weight: 800;
}

.prime-about-image-placeholder span {
    display: block;
    color: rgba(255, 255, 255, 0.64);
    font-size: 13px;
}

.prime-about-image-badge {
    position: absolute;
    right: 22px;
    bottom: 22px;
    left: 22px;
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 13px;
    padding: 18px;
    border: 1px solid rgba(255, 255, 255, 0.22);
    border-radius: 14px;
    background: rgba(3, 24, 47, 0.76);
    color: #ffffff;
    backdrop-filter: blur(13px);
}

.prime-about-image-badge-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    background: rgba(255, 255, 255, 0.1);
    color: #9bcaff;
    font-size: 20px;
}

.prime-about-image-badge strong {
    display: block;
    margin-bottom: 3px;
    font-size: 13px;
}

.prime-about-image-badge span {
    display: block;
    color: rgba(255, 255, 255, 0.65);
    font-size: 11px;
}

.prime-about-check-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 11px;
    margin-top: 25px;
}

.prime-about-check-item {
    display: flex;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    padding: 10px 12px;
    border: 1px solid var(--prime-border);
    border-radius: 10px;
    background: #f8fbff;
    color: var(--prime-heading);
    font-size: 12px;
    font-weight: 700;
}

.prime-about-check-item i {
    color: var(--prime-primary);
    font-size: 16px;
}

/* =========================================================
   CAPABILITIES
========================================================= */

.prime-about-capabilities-section {
    background: #f6f9fd;
}

.prime-about-capability-card {
    position: relative;
    height: 100%;
    min-height: 290px;
    padding: 26px;
    overflow: hidden;
    border: 1px solid var(--prime-border);
    border-radius: 17px;
    background: #ffffff;
    transition: var(--prime-transition);
}

.prime-about-capability-card::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background:
        linear-gradient(
            90deg,
            var(--prime-primary),
            var(--prime-accent)
        );
    content: "";
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
}

.prime-about-capability-card:hover {
    border-color: #b3d1f1;
    box-shadow: 0 20px 42px rgba(15, 23, 42, 0.09);
    transform: translateY(-5px);
}

.prime-about-capability-card:hover::before {
    transform: scaleX(1);
}

.prime-about-capability-number {
    position: absolute;
    top: 22px;
    right: 22px;
    color: #cbd5e1;
    font-size: 12px;
    font-weight: 850;
}

.prime-about-capability-icon {
    display: grid;
    width: 56px;
    height: 56px;
    margin-bottom: 24px;
    place-items: center;
    border-radius: 15px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 25px;
}

.prime-about-capability-card h3 {
    margin: 0 0 12px;
    color: var(--prime-heading);
    font-size: 18px;
    font-weight: 800;
}

.prime-about-capability-card p {
    margin: 0;
    color: var(--prime-text-light);
    font-size: 13px;
    line-height: 1.75;
}

/* =========================================================
   WHY CHOOSE US
========================================================= */

.prime-about-why-section {
    background:
        radial-gradient(
            circle at 10% 80%,
            rgba(54, 134, 240, 0.23),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #03182f,
            #07366f
        );
}

.prime-about-white-title {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: clamp(30px, 4vw, 44px);
    font-weight: 820;
    line-height: 1.16;
    letter-spacing: -0.03em;
}

.prime-about-white-copy {
    margin: 0 0 27px;
    color: rgba(255, 255, 255, 0.69);
    font-size: 15px;
    line-height: 1.8;
}

.prime-about-why-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.prime-about-why-card {
    display: grid;
    grid-template-columns: 46px 1fr;
    gap: 14px;
    min-height: 160px;
    padding: 21px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.075);
    backdrop-filter: blur(10px);
}

.prime-about-why-icon {
    display: grid;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 12px;
    background: rgba(129, 190, 255, 0.13);
    color: #9dccff;
    font-size: 20px;
}

.prime-about-why-card h3 {
    margin: 0 0 7px;
    color: #ffffff;
    font-size: 14px;
    font-weight: 750;
}

.prime-about-why-card p {
    margin: 0;
    color: rgba(255, 255, 255, 0.63);
    font-size: 12px;
    line-height: 1.65;
}

/* =========================================================
   INDUSTRIES
========================================================= */

.prime-about-industries-section {
    background: #ffffff;
}

.prime-about-industry-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 14px;
}

.prime-about-industry-card {
    min-height: 188px;
    padding: 23px;
    border: 1px solid var(--prime-border);
    border-radius: 15px;
    background:
        linear-gradient(
            180deg,
            #ffffff,
            #f8fbff
        );
    transition: var(--prime-transition);
}

.prime-about-industry-card > i {
    display: grid;
    width: 50px;
    height: 50px;
    margin-bottom: 20px;
    place-items: center;
    border-radius: 13px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 22px;
}

.prime-about-industry-card strong {
    display: block;
    margin-bottom: 7px;
    color: var(--prime-heading);
    font-size: 14px;
    font-weight: 800;
}

.prime-about-industry-card span {
    display: block;
    color: var(--prime-text-light);
    font-size: 11px;
    line-height: 1.6;
}

.prime-about-industry-card:hover {
    border-color: var(--prime-primary);
    background: var(--prime-primary);
    box-shadow: 0 17px 35px rgba(11, 78, 162, 0.2);
    transform: translateY(-5px);
}

.prime-about-industry-card:hover > i {
    background: rgba(255, 255, 255, 0.14);
    color: #ffffff;
}

.prime-about-industry-card:hover strong,
.prime-about-industry-card:hover span {
    color: #ffffff;
}

/* =========================================================
   MISSION / VISION / VALUES
========================================================= */

.prime-about-purpose-section {
    background: #f6f9fd;
}

.prime-about-purpose-card {
    height: 100%;
    min-height: 285px;
    padding: 29px;
    border: 1px solid var(--prime-border);
    border-radius: 17px;
    background: #ffffff;
    box-shadow: var(--prime-shadow-sm);
}

.prime-about-purpose-featured {
    border-color: var(--prime-primary);
    background:
        linear-gradient(
            145deg,
            #07366f,
            #0b4ea2
        );
    color: #ffffff;
    transform: translateY(-10px);
}

.prime-about-purpose-top {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 34px;
}

.prime-about-purpose-top span {
    color: #b6c4d5;
    font-size: 12px;
    font-weight: 850;
}

.prime-about-purpose-top i {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 13px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 21px;
}

.prime-about-purpose-card h3 {
    margin: 0 0 13px;
    color: var(--prime-heading);
    font-size: 21px;
    font-weight: 800;
}

.prime-about-purpose-card p {
    margin: 0;
    color: var(--prime-text-light);
    font-size: 13px;
    line-height: 1.8;
}

.prime-about-purpose-featured .prime-about-purpose-top span,
.prime-about-purpose-featured p {
    color: rgba(255, 255, 255, 0.68);
}

.prime-about-purpose-featured .prime-about-purpose-top i {
    background: rgba(255, 255, 255, 0.11);
    color: #a6d0ff;
}

.prime-about-purpose-featured h3 {
    color: #ffffff;
}

/* =========================================================
   PTFE INFORMATION
========================================================= */

.prime-about-ptfe-section {
    background: #ffffff;
}

.prime-about-temperature-card {
    display: flex;
    align-items: center;
    gap: 14px;
    margin-top: 25px;
    padding: 18px;
    border: 1px solid #cddff3;
    border-radius: 14px;
    background: #f2f7fd;
}

.prime-about-temperature-card > i {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border-radius: 12px;
    background: var(--prime-primary);
    color: #ffffff;
    font-size: 21px;
}

.prime-about-temperature-card span {
    display: block;
    margin-bottom: 3px;
    color: var(--prime-text-light);
    font-size: 11px;
}

.prime-about-temperature-card strong {
    display: block;
    color: var(--prime-heading);
    font-size: 22px;
    font-weight: 850;
}

.prime-about-disclaimer {
    margin: 13px 0 0;
    color: #7b8799;
    font-size: 10px;
    line-height: 1.6;
}

.prime-about-property-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 14px;
}

.prime-about-property-card {
    min-height: 190px;
    padding: 22px;
    border: 1px solid var(--prime-border);
    border-radius: 14px;
    background: #ffffff;
    transition: var(--prime-transition);
}

.prime-about-property-card > i {
    display: grid;
    width: 44px;
    height: 44px;
    margin-bottom: 17px;
    place-items: center;
    border-radius: 11px;
    background: var(--prime-primary-light);
    color: var(--prime-primary);
    font-size: 19px;
}

.prime-about-property-card h3 {
    margin: 0 0 8px;
    color: var(--prime-heading);
    font-size: 14px;
    font-weight: 800;
}

.prime-about-property-card p {
    margin: 0;
    color: var(--prime-text-light);
    font-size: 11px;
    line-height: 1.65;
}

.prime-about-property-card:hover {
    border-color: #b2d0f0;
    box-shadow: var(--prime-shadow-sm);
    transform: translateY(-4px);
}

/* =========================================================
   PTFE GRADES
========================================================= */

.prime-about-grades-section {
    background:
        radial-gradient(
            circle at 90% 10%,
            rgba(69, 147, 247, 0.22),
            transparent 28%
        ),
        linear-gradient(
            135deg,
            #03182f,
            #07366f
        );
}

.prime-about-grade-note {
    display: flex;
    align-items: flex-start;
    gap: 10px;
    padding: 14px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.07);
    color: rgba(255, 255, 255, 0.68);
    font-size: 11px;
    line-height: 1.6;
}

.prime-about-grade-note i {
    color: #9acaff;
}

.prime-about-grade-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 10px;
}

.prime-about-grade-item {
    display: grid;
    grid-template-columns: 35px 1fr;
    align-items: center;
    gap: 11px;
    min-height: 60px;
    padding: 12px 14px;
    border: 1px solid rgba(255, 255, 255, 0.14);
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.075);
}

.prime-about-grade-item span {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 9px;
    background: rgba(134, 196, 255, 0.13);
    color: #a8d2ff;
    font-size: 10px;
    font-weight: 850;
}

.prime-about-grade-item strong {
    color: #ffffff;
    font-size: 12px;
    font-weight: 700;
}

/* =========================================================
   FINAL CTA
========================================================= */

.prime-about-final-section {
    background: #ffffff;
}

.prime-about-final-cta {
    position: relative;
    isolation: isolate;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 35px;
    overflow: hidden;
    padding: 44px;
    border-radius: 22px;
    background:
        linear-gradient(
            135deg,
            #07366f,
            #0b4ea2
        );
    box-shadow: var(--prime-shadow-lg);
}

.prime-about-final-pattern {
    position: absolute;
    inset: 0;
    z-index: -1;
    opacity: 0.13;
    background-image:
        radial-gradient(
            circle,
            #ffffff 1px,
            transparent 1px
        );
    background-size: 22px 22px;
}

.prime-about-final-content {
    max-width: 720px;
}

.prime-about-final-content > span {
    display: block;
    margin-bottom: 8px;
    color: #a5d0ff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.prime-about-final-content h2 {
    margin: 0 0 13px;
    color: #ffffff;
    font-size: clamp(28px, 4vw, 40px);
    font-weight: 820;
    line-height: 1.17;
    letter-spacing: -0.03em;
}

.prime-about-final-content p {
    margin: 0;
    color: rgba(255, 255, 255, 0.69);
    font-size: 13px;
    line-height: 1.75;
}

.prime-about-final-actions {
    display: flex;
    flex: 0 0 auto;
    flex-direction: column;
    gap: 10px;
    min-width: 210px;
}

/* =========================================================
   ABOUT RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {
    .prime-about-industry-grid {
        grid-template-columns: repeat(2, 1fr);
    }

    .prime-about-final-cta {
        align-items: flex-start;
        flex-direction: column;
    }

    .prime-about-final-actions {
        width: 100%;
        flex-direction: row;
    }

    .prime-about-final-actions .btn {
        flex: 1;
    }
}

@media (max-width: 991.98px) {
    .prime-about-hero {
        padding: 65px 0;
    }

    .prime-about-hero-content {
        text-align: center;
    }

    .prime-about-breadcrumb,
    .prime-about-hero-actions,
    .prime-about-hero-points {
        justify-content: center;
    }

    .prime-about-hero-content > p {
        margin-right: auto;
        margin-left: auto;
    }

    .prime-about-hero-panel {
        max-width: 680px;
        margin: 0 auto;
    }

    .prime-about-image-card {
        max-width: 650px;
        min-height: 450px;
        margin: 0 auto;
    }

    .prime-about-purpose-featured {
        transform: none;
    }
}

@media (max-width: 767.98px) {
    .prime-about-hero {
        padding: 48px 0;
    }

    .prime-about-hero-content h1 {
        font-size: clamp(35px, 10vw, 48px);
    }

    .prime-about-hero-actions {
        flex-direction: column;
    }

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

    .prime-about-hero-points {
        display: grid;
        gap: 9px;
    }

    .prime-about-check-grid,
    .prime-about-why-grid,
    .prime-about-property-grid,
    .prime-about-grade-grid {
        grid-template-columns: 1fr;
    }

    .prime-about-industry-grid {
        grid-template-columns: 1fr;
    }

    .prime-about-industry-card {
        min-height: auto;
    }

    .prime-about-purpose-card {
        min-height: auto;
    }

    .prime-about-final-cta {
        padding: 28px 23px;
    }

    .prime-about-final-actions {
        flex-direction: column;
    }

    .prime-about-final-actions .btn {
        width: 100%;
    }
}

@media (max-width: 575.98px) {
    .prime-about-hero-panel {
        padding: 20px;
    }

    .prime-about-image-card {
        min-height: 390px;
    }

    .prime-about-image-placeholder > i {
        font-size: 90px;
    }

    .prime-about-image-placeholder strong {
        font-size: 20px;
    }

    .prime-about-image-badge {
        right: 14px;
        bottom: 14px;
        left: 14px;
        grid-template-columns: 40px 1fr;
        padding: 14px;
    }

    .prime-about-image-badge-icon {
        width: 40px;
        height: 40px;
    }

    .prime-about-capability-card {
        min-height: auto;
        padding: 22px;
    }

    .prime-about-why-card {
        min-height: auto;
        padding: 18px;
    }

    .prime-about-final-cta {
        padding: 24px 18px;
    }
}

/* =========================================================
   INDUSTRIES PAGE
========================================================= */

.prime-industries-page {
    background: #f7f9fc;
}

/* Hero */

.prime-industries-hero {
    padding: 68px 0;
    background:
        linear-gradient(
            135deg,
            #041b3a 0%,
            #07366f 55%,
            #0b4ea2 100%
        );
    color: #ffffff;
}

.prime-industries-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 25px;
    color: rgba(255, 255, 255, 0.65);
    font-size: 12px;
}

.prime-industries-breadcrumb a {
    color: #d7eaff;
}

.prime-industries-breadcrumb a:hover {
    color: #ffffff;
}

.prime-industries-breadcrumb i {
    font-size: 9px;
}

.prime-industries-hero-content {
    max-width: 850px;
}

.prime-industries-label {
    display: inline-block;
    margin-bottom: 12px;
    color: #9dccff;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.14em;
    text-transform: uppercase;
}

.prime-industries-hero h1 {
    margin: 0 0 18px;
    color: #ffffff;
    font-size: clamp(35px, 5vw, 54px);
    font-weight: 600;
    line-height: 1.12;
    letter-spacing: -0.035em;
}

.prime-industries-hero p {
    max-width: 760px;
    margin: 0;
    color: rgba(255, 255, 255, 0.72);
    font-size: 16px;
    line-height: 1.75;
}

/* Industry list */

.prime-industries-list {
    padding: 70px 0;
}

.prime-industry-item {
    padding: 34px;
    border: 1px solid #dbe4ef;
    border-radius: 18px;
    background: #ffffff;
    box-shadow: 0 14px 36px rgba(15, 23, 42, 0.06);
}

.prime-industry-item + .prime-industry-item {
    margin-top: 28px;
}

/* Image */

.prime-industry-image {
    position: relative;
    height: 350px;
    overflow: hidden;
    border-radius: 15px;
    background: #eef3f8;
}

.prime-industry-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.4s ease;
}

.prime-industry-item:hover .prime-industry-image img {
    transform: scale(1.035);
}

.prime-industry-number {
    position: absolute;
    top: 15px;
    left: 15px;
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, 0.35);
    border-radius: 11px;
    background: rgba(4, 27, 58, 0.78);
    color: #ffffff;
    font-size: 12px;
    font-weight: 800;
    backdrop-filter: blur(8px);
}

/* Content */

.prime-industry-content {
    padding: 8px 5px;
}

.prime-industry-heading {
    display: flex;
    align-items: flex-start;
    gap: 15px;
    margin-bottom: 14px;
}

.prime-industry-icon {
    display: grid;
    flex: 0 0 52px;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 13px;
    background: #eaf3ff;
    color: #0b4ea2;
    font-size: 23px;
}

.prime-industry-category {
    display: block;
    margin-bottom: 4px;
    color: #0b4ea2;
    font-size: 10px;
    font-weight: 800;
    letter-spacing: 0.12em;
    text-transform: uppercase;
}

.prime-industry-heading h2 {
    margin: 0;
    color: #0f172a;
    font-size: clamp(24px, 3vw, 32px);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.025em;
}

.prime-industry-subtitle {
    margin: 0 0 13px;
    color: #0b4ea2;
    font-size: 13px;
    font-weight: 700;
}

.prime-industry-description {
    margin: 0 0 22px;
    color: #64748b;
    font-size: 14px;
    line-height: 1.75;
}

.prime-industry-applications {
    margin-bottom: 20px;
    padding: 16px 18px;
    border-left: 3px solid #0b4ea2;
    border-radius: 0 10px 10px 0;
    background: #f4f8fd;
}

.prime-industry-applications span {
    display: block;
    margin-bottom: 4px;
    color: #0f172a;
    font-size: 11px;
    font-weight: 800;
    text-transform: uppercase;
}

.prime-industry-applications p {
    margin: 0;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
}

.prime-industry-benefits {
    display: flex;
    flex-wrap: wrap;
    gap: 9px;
}

.prime-industry-benefits span {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 11px;
    border: 1px solid #d7e4f3;
    border-radius: 999px;
    background: #ffffff;
    color: #334155;
    font-size: 11px;
    font-weight: 650;
}

.prime-industry-benefits i {
    color: #0b4ea2;
}

/* Responsive */

@media (max-width: 991.98px) {
    .prime-industries-hero {
        padding: 55px 0;
    }

    .prime-industries-list {
        padding: 50px 0;
    }

    .prime-industry-item {
        padding: 24px;
    }

    .prime-industry-image {
        height: 330px;
    }

    .prime-industry-content {
        padding: 0;
    }
}

@media (max-width: 767.98px) {
    .prime-industries-hero {
        padding: 45px 0;
    }

    .prime-industries-hero h1 {
        font-size: clamp(31px, 9vw, 42px);
    }

    .prime-industries-hero p {
        font-size: 14px;
    }

    .prime-industries-list {
        padding: 38px 0;
    }

    .prime-industry-item {
        padding: 18px;
        border-radius: 15px;
    }

    .prime-industry-item + .prime-industry-item {
        margin-top: 20px;
    }

    .prime-industry-image {
        height: 260px;
        border-radius: 12px;
    }

    .prime-industry-heading {
        gap: 12px;
    }

    .prime-industry-icon {
        width: 46px;
        height: 46px;
        flex-basis: 46px;
        font-size: 20px;
    }

    .prime-industry-heading h2 {
        font-size: 23px;
    }
}

@media (max-width: 575.98px) {
    .prime-industry-image {
        height: 220px;
    }

    .prime-industry-heading {
        flex-direction: column;
    }

    .prime-industry-benefits {
        display: grid;
        grid-template-columns: 1fr;
    }

    .prime-industry-benefits span {
        border-radius: 9px;
    }
}


/* =========================================================
   QUALITY PAGE - SIMPLE CLEAN DESIGN
========================================================= */

body {
    background: #f6f8fb;
}

/* Main section cards */

.ndp-card {
    border: 1px solid #dfe7f0;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 8px 24px rgba(15, 23, 42, 0.06);
}

/* =========================================================
   FIRST CARD / PAGE HEADER
========================================================= */

.container > .ndp-card:first-child {
    position: relative;
    overflow: hidden;
    border: 0;
    background: linear-gradient(
        135deg,
        #061d3c 0%,
        #0b4ea2 100%
    );
    box-shadow: 0 16px 38px rgba(6, 29, 60, 0.18);
}

.container > .ndp-card:first-child::after {
    position: absolute;
    top: -90px;
    right: -80px;
    width: 260px;
    height: 260px;
    border: 45px solid rgba(255, 255, 255, 0.05);
    border-radius: 50%;
    content: "";
}

.container > .ndp-card:first-child .row {
    position: relative;
    z-index: 1;
}

.ndp-kicker {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    padding: 7px 12px;
    border-radius: 50px;
    background: #eaf3ff;
    color: #0b4ea2;
    font-size: 11px;
    font-weight: 800;
    letter-spacing: 0.08em;
    text-transform: uppercase;
}

.container > .ndp-card:first-child .ndp-kicker {
    border: 1px solid rgba(255, 255, 255, 0.18);
    background: rgba(255, 255, 255, 0.1);
    color: #c7e3ff;
}

.ndp-page-title {
    color: #0f172a;
    font-size: clamp(34px, 5vw, 50px);
    font-weight: 800;
    line-height: 1.15;
    letter-spacing: -0.03em;
}

.container > .ndp-card:first-child .ndp-page-title {
    color: #ffffff;
}

.container > .ndp-card:first-child .ndp-muted {
    color: rgba(255, 255, 255, 0.75);
}

.container > .ndp-card:first-child .ndp-muted strong {
    color: #ffffff;
}

/* =========================================================
   TYPOGRAPHY
========================================================= */

.ndp-section-title {
    color: #0f172a;
    font-size: clamp(24px, 3vw, 32px);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.02em;
}

.ndp-muted {
    color: #64748b;
    line-height: 1.75;
}

.ndp-muted strong {
    color: #1e293b;
}

.ndp-quality-title,
.ndp-feature-title {
    color: #0f172a;
    font-weight: 800;
}

.ndp-quality-title {
    margin-bottom: 3px;
    font-size: 15px;
}

.ndp-feature-title {
    margin: 0 0 8px;
    font-size: 17px;
    line-height: 1.4;
}

/* =========================================================
   BUTTONS
========================================================= */

.ndp-btn-primary {
    min-height: 44px;
    padding: 10px 19px;
    border: 1px solid #0b4ea2;
    border-radius: 9px;
    background: #0b4ea2;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.25s ease;
}

.ndp-btn-primary:hover,
.ndp-btn-primary:focus {
    border-color: #073b7d;
    background: #073b7d;
    color: #ffffff;
    transform: translateY(-2px);
}

.container > .ndp-card:first-child .ndp-btn-primary {
    border-color: #ffffff;
    background: #ffffff;
    color: #07366f;
}

.container > .ndp-card:first-child .ndp-btn-primary:hover {
    border-color: #e7f2ff;
    background: #e7f2ff;
    color: #07366f;
}

.ndp-btn-soft {
    min-height: 44px;
    padding: 10px 19px;
    border: 1px solid #cbdbea;
    border-radius: 9px;
    background: #eff6ff;
    color: #0b4ea2;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.25s ease;
}

.ndp-btn-soft:hover,
.ndp-btn-soft:focus {
    border-color: #0b4ea2;
    background: #0b4ea2;
    color: #ffffff;
}

/* =========================================================
   QUALITY COMMITMENT BADGES
========================================================= */

.ndp-quality-badge {
    display: flex;
    align-items: center;
    gap: 15px;
    min-height: 82px;
    padding: 15px 17px;
    border: 1px solid #dde7f2;
    border-radius: 12px;
    background: #f8fbff;
    transition: all 0.25s ease;
}

.ndp-quality-badge:hover {
    border-color: #b5d0ec;
    background: #f1f7ff;
    transform: translateX(3px);
}

.ndp-quality-ico {
    display: grid;
    flex: 0 0 46px;
    width: 46px;
    height: 46px;
    place-items: center;
    border-radius: 11px;
    background: #e4f0ff;
    color: #0b4ea2;
    font-size: 20px;
}

/* =========================================================
   QUALITY PILL
========================================================= */

.ndp-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 8px 12px;
    border: 1px solid #d7e4f2;
    border-radius: 50px;
    background: #f3f8fe;
    color: #475569;
    font-size: 11px;
    font-weight: 700;
}

.ndp-pill i {
    color: #0b4ea2;
}

/* =========================================================
   QUALITY PILLAR CARDS
========================================================= */

.ndp-feature {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    min-height: 175px;
    padding: 22px;
    border: 1px solid #dfe7f0;
    border-radius: 14px;
    background: #ffffff;
    transition: all 0.25s ease;
}

.ndp-feature:hover {
    border-color: #b7d0eb;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
    transform: translateY(-3px);
}

.ndp-feature-ico {
    display: grid;
    flex: 0 0 50px;
    width: 50px;
    height: 50px;
    place-items: center;
    border-radius: 13px;
    background: #eaf3ff;
    color: #0b4ea2;
    font-size: 22px;
}

/* =========================================================
   CHECK LIST
========================================================= */

.ndp-list-check {
    margin: 0;
    padding: 0;
    list-style: none;
}

.ndp-list-check li {
    position: relative;
    margin-bottom: 8px;
    padding-left: 23px;
    color: #64748b;
    font-size: 13px;
    line-height: 1.6;
}

.ndp-list-check li:last-child {
    margin-bottom: 0;
}

.ndp-list-check li::before {
    position: absolute;
    top: 1px;
    left: 0;
    color: #0b4ea2;
    font-family: "bootstrap-icons";
    font-size: 15px;
    content: "\f26a";
}

/* =========================================================
   FINAL CARD
========================================================= */

.container > .ndp-card:last-child {
    border-color: #cfe0f2;
    background: linear-gradient(
        135deg,
        #f3f8fe 0%,
        #ffffff 100%
    );
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {
    .container > .ndp-card:first-child {
        text-align: center;
    }

    .container > .ndp-card:first-child .text-lg-end {
        text-align: center !important;
    }

    .ndp-feature {
        min-height: auto;
    }
}

@media (max-width: 767.98px) {
    .container {
        padding-right: 16px;
        padding-left: 16px;
    }

    .ndp-card {
        border-radius: 14px;
    }

    .ndp-page-title {
        font-size: 34px;
    }

    .ndp-section-title {
        font-size: 25px;
    }

    .ndp-quality-badge {
        align-items: flex-start;
        min-height: auto;
    }

    .ndp-feature {
        padding: 18px;
    }

    .container > .ndp-card:last-child .text-lg-end {
        display: flex;
        flex-wrap: wrap;
        gap: 9px;
    }

    .container > .ndp-card:last-child .btn {
        flex: 1;
        margin-right: 0 !important;
    }
}

@media (max-width: 575.98px) {
    .ndp-page-title {
        font-size: 31px;
    }

    .ndp-feature {
        flex-direction: column;
    }

    .ndp-quality-ico,
    .ndp-feature-ico {
        width: 44px;
        height: 44px;
        flex-basis: 44px;
        font-size: 19px;
    }

    .container > .ndp-card:first-child .btn {
        width: 100%;
    }

    .container > .ndp-card:last-child .text-lg-end {
        display: grid;
        grid-template-columns: 1fr;
    }

    .container > .ndp-card:last-child .btn {
        width: 100%;
    }
}


/*=========================================================
  DOWNLOADS PAGE
=========================================================*/

/* Breadcrumb */

.ndp-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:28px;
    font-size:13px;
}

.ndp-bc-link{
    color:#0b4ea2;
    font-weight:600;
    text-decoration:none;
}

.ndp-bc-link:hover{
    color:#083b7d;
}

.ndp-bc-sep{
    color:#94a3b8;
}

.ndp-bc-current{
    color:#64748b;
    font-weight:600;
}

/* Download Cards */

.ndp-card{
    border:1px solid #dde6ef;
    border-radius:16px;
    background:#fff;
    box-shadow:0 8px 24px rgba(15,23,42,.06);
    transition:.30s;
}

.ndp-card:hover{
    transform:translateY(-4px);
    box-shadow:0 16px 34px rgba(15,23,42,.09);
}

/* Icon */

.ndp-dl-ico{
    width:64px;
    height:64px;
    border-radius:14px;
    background:#eef5ff;
    color:#0b4ea2;
    display:flex;
    align-items:center;
    justify-content:center;
    flex-shrink:0;
}

.ndp-dl-ico i{
    font-size:30px;
}

/* Heading */

.ndp-card h5{
    margin-bottom:6px;
    font-size:20px;
    font-weight:700;
    color:#0f172a;
}

/* Text */

.ndp-muted{
    color:#64748b;
    line-height:1.7;
}

/* Pills */

.ndp-pill{
    display:inline-flex;
    align-items:center;
    gap:6px;
    padding:7px 12px;
    border-radius:30px;
    border:1px solid #d8e3ef;
    background:#f4f8fc;
    color:#334155;
    font-size:12px;
    font-weight:600;
}

.ndp-pill i{
    color:#0b4ea2;
}

/* Buttons */

.ndp-btn-primary{
    border-radius:8px;
    padding:10px 18px;
    font-size:13px;
    font-weight:600;
    border:none;
    background:#0b4ea2;
    color:#fff;
    transition:.25s;
}

.ndp-btn-primary:hover{
    background:#083b7d;
    color:#fff;
}

.ndp-btn-soft{
    border-radius:8px;
    padding:10px 18px;
    font-size:13px;
    font-weight:600;
    background:#eef5ff;
    border:1px solid #c9def4;
    color:#0b4ea2;
    transition:.25s;
}

.ndp-btn-soft:hover{
    background:#0b4ea2;
    border-color:#0b4ea2;
    color:#fff;
}

/* Code */

code{
    padding:3px 8px;
    border-radius:5px;
    background:#f3f4f6;
    color:#dc2626;
    font-size:12px;
}

/* Footer Card */

.container>.ndp-card:last-child{
    background:linear-gradient(135deg,#f8fbff,#ffffff);
    border-color:#d7e3ef;
}

/* Responsive */

@media(max-width:991px){

    .text-end{
        width:100%;
        margin-top:18px;
    }

    .text-end .d-flex{
        justify-content:flex-start!important;
    }

}

@media(max-width:576px){

    .ndp-card{
        padding:22px!important;
    }

    .ndp-dl-ico{
        width:54px;
        height:54px;
    }

    .ndp-dl-ico i{
        font-size:24px;
    }

    .ndp-card h5{
        font-size:18px;
    }

    .text-end .btn{
        width:100%;
    }

    .text-end .d-flex{
        flex-direction:column;
        width:100%;
    }
}



/* =========================================================
   PRODUCT RANGE PAGE
========================================================= */

html {
    scroll-behavior: smooth;
}

.ndp-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    font-size: 13px;
}

.ndp-bc-link {
    color: #0b4ea2;
    font-weight: 700;
    text-decoration: none;
}

.ndp-bc-link:hover {
    color: #07366f;
}

.ndp-bc-sep {
    color: #94a3b8;
}

.ndp-bc-current {
    color: #64748b;
    font-weight: 600;
}

/* =========================================================
   LEFT CATEGORY SIDEBAR
========================================================= */

.ndp-sticky-col {
    position: sticky;
    top: 95px;
}

.ndp-side-nav {
    border: 1px solid #dce6f0;
    border-radius: 15px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.ndp-sidebar-title {
    color: #0f172a;
    font-size: 18px;
    font-weight: 800;
}

.ndp-side-nav .ndp-pill {
    padding: 6px 10px;
    border: 1px solid #d4e3f3;
    background: #eef6ff;
    color: #0b4ea2;
    font-size: 10px;
}

.ndp-navlist {
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 16px;
}

.ndp-navitem {
    display: flex;
    align-items: center;
    gap: 11px;
    min-height: 46px;
    padding: 11px 13px;
    border: 1px solid transparent;
    border-radius: 10px;
    color: #475569;
    font-size: 13px;
    font-weight: 650;
    line-height: 1.4;
    text-decoration: none;
    transition: all 0.25s ease;
}

.ndp-navitem:hover {
    border-color: #d5e3f1;
    background: #f4f8fd;
    color: #0b4ea2;
}

.ndp-navitem.active {
    border-color: #0b4ea2;
    background: #0b4ea2;
    color: #ffffff;
    box-shadow: 0 8px 18px rgba(11, 78, 162, 0.18);
}

.ndp-dot {
    flex: 0 0 8px;
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #b7c3d1;
}

.ndp-navitem:hover .ndp-dot {
    background: #0b4ea2;
}

.ndp-navitem.active .ndp-dot {
    background: #ffffff;
}

/* =========================================================
   PRODUCT SECTIONS
========================================================= */

.ndp-range-section {
    scroll-margin-top: 110px;
}

.ndp-range-section + .ndp-range-section {
    margin-top: 34px;
}

.ndp-section-head {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 15px;
    padding: 0 3px;
}

.ndp-section-icon {
    display: grid;
    flex: 0 0 54px;
    width: 54px;
    height: 54px;
    place-items: center;
    border: 1px solid #d4e4f4;
    border-radius: 14px;
    background: #edf5ff;
    font-size: 25px;
}

.ndp-section-title {
    color: #0f172a;
    font-size: clamp(23px, 3vw, 31px);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.025em;
}

.ndp-muted {
    color: #64748b;
    line-height: 1.65;
}

/* Section container */

.ndp-range-section > .ndp-card {
    border: 1px solid #dce6f0;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 9px 26px rgba(15, 23, 42, 0.055);
}

/* =========================================================
   PRODUCT GRID
========================================================= */

.ndp-range-grid {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

/* =========================================================
   PRODUCT ITEM
========================================================= */

.ndp-range-item2 {
    display: grid;
    grid-template-columns: 52px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    min-height: 116px;
    padding: 17px;
    border: 1px solid #dde6ef;
    border-radius: 13px;
    background: #ffffff;
    transition:
        border-color 0.25s ease,
        box-shadow 0.25s ease,
        transform 0.25s ease,
        background 0.25s ease;
}

.ndp-range-item2:hover {
    border-color: #a9c8e9;
    background: #fbfdff;
    box-shadow: 0 12px 27px rgba(15, 23, 42, 0.08);
    transform: translateY(-3px);
}

.ndp-ri-ico {
    display: grid;
    width: 52px;
    height: 52px;
    place-items: center;
    border-radius: 13px;
    background: #eaf3ff;
    color: #0b4ea2;
    font-size: 23px;
    transition: all 0.25s ease;
}

.ndp-range-item2:hover .ndp-ri-ico {
    background: #0b4ea2;
    color: #ffffff;
}

.ndp-ri-body {
    min-width: 0;
}

.ndp-ri-title {
    margin-bottom: 5px;
    color: #0f172a;
    font-size: 15px;
    font-weight: 800;
    line-height: 1.35;
}

.ndp-ri-body .small {
    font-size: 11.5px;
    line-height: 1.55;
}

/* =========================================================
   SMALL OUTLINE BUTTON
========================================================= */

.ndp-btn-outline-sm {
    flex-shrink: 0;
    min-width: 105px;
    padding: 8px 12px;
    border: 1px solid #bdd2e9;
    border-radius: 8px;
    background: #ffffff;
    color: #0b4ea2;
    font-size: 11px;
    font-weight: 750;
    white-space: nowrap;
    transition: all 0.25s ease;
}

.ndp-btn-outline-sm:hover,
.ndp-btn-outline-sm:focus {
    border-color: #0b4ea2;
    background: #0b4ea2;
    color: #ffffff;
}

/* =========================================================
   OPTIONAL CATEGORY VARIATION
========================================================= */

#molded .ndp-section-icon,
#engineered .ndp-section-icon,
#fasteners .ndp-section-icon,
#gaskets .ndp-section-icon,
#filled .ndp-section-icon,
#custom .ndp-section-icon {
    background: #eef6ff;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 1199.98px) {
    .ndp-range-grid {
        grid-template-columns: 1fr;
    }

    .ndp-range-item2 {
        min-height: 108px;
    }
}

@media (max-width: 991.98px) {
    .ndp-sticky-col {
        position: static;
    }

    .ndp-side-nav {
        margin-bottom: 10px;
    }

    .ndp-navlist {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .ndp-navitem {
        justify-content: center;
        text-align: center;
    }

    .ndp-range-section + .ndp-range-section {
        margin-top: 28px;
    }
}

@media (max-width: 767.98px) {
    .ndp-navlist {
        display: flex;
        flex-direction: row;
        gap: 8px;
        overflow-x: auto;
        padding-bottom: 5px;
        scrollbar-width: thin;
    }

    .ndp-navitem {
        flex: 0 0 auto;
        min-height: 42px;
        padding: 9px 12px;
        white-space: nowrap;
    }

    .ndp-section-head {
        align-items: flex-start;
    }

    .ndp-section-icon {
        width: 48px;
        height: 48px;
        flex-basis: 48px;
        font-size: 21px;
    }

    .ndp-section-title {
        font-size: 23px;
    }

    .ndp-range-item2 {
        grid-template-columns: 46px minmax(0, 1fr);
        min-height: auto;
        padding: 15px;
    }

    .ndp-ri-ico {
        width: 46px;
        height: 46px;
        font-size: 20px;
    }

    .ndp-btn-outline-sm {
        grid-column: 1 / -1;
        width: 100%;
        min-height: 40px;
    }
}

@media (max-width: 575.98px) {
    .ndp-side-nav {
        padding: 16px !important;
    }

    .ndp-sidebar-title {
        font-size: 16px;
    }

    .ndp-range-section > .ndp-card {
        padding: 14px !important;
    }

    .ndp-section-head {
        gap: 11px;
    }

    .ndp-section-icon {
        width: 43px;
        height: 43px;
        flex-basis: 43px;
        border-radius: 11px;
        font-size: 19px;
    }

    .ndp-section-title {
        font-size: 21px;
    }

    .ndp-range-item2 {
        gap: 11px;
        border-radius: 11px;
    }

    .ndp-ri-title {
        font-size: 14px;
    }

    .ndp-ri-body .small {
        font-size: 11px;
    }
}


/*=========================================================
    PRODUCTS PAGE
=========================================================*/

body{
    background:#f7f9fc;
}

/*---------------------------------------------------------
Breadcrumb
---------------------------------------------------------*/

.ndp-breadcrumb{
    display:flex;
    align-items:center;
    gap:8px;
    margin-bottom:25px;
    font-size:13px;
}

.ndp-bc-link{
    color:#0b4ea2;
    font-weight:600;
    text-decoration:none;
}

.ndp-bc-link:hover{
    color:#07366f;
}

.ndp-bc-current{
    color:#64748b;
}

.ndp-bc-sep{
    color:#94a3b8;
}

/*---------------------------------------------------------
Filter
---------------------------------------------------------*/

.ndp-filter-row{
    display:flex;
    flex-wrap:wrap;
    gap:10px;
}

.ndp-filter-pill{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    padding:10px 18px;
    border-radius:30px;
    border:1px solid #d9e4ef;
    background:#fff;
    color:#334155;
    text-decoration:none;
    font-size:13px;
    font-weight:600;
    transition:.25s;
}

.ndp-filter-pill:hover{
    border-color:#0b4ea2;
    color:#0b4ea2;
    background:#eef5ff;
}

.ndp-filter-pill.active{
    background:#0b4ea2;
    border-color:#0b4ea2;
    color:#fff;
}

/*---------------------------------------------------------
Product Card
---------------------------------------------------------*/

.ndp-product-card{
    height:100%;
}

.ndp-product-thumb{
    position:relative;
    width:100%;
    overflow:hidden;
    border:none;
    border-radius:16px;
    background:#fff;
    padding:0;
    cursor:pointer;
    box-shadow:0 10px 26px rgba(15,23,42,.07);
    transition:.30s;
}

.ndp-product-thumb:hover{
    transform:translateY(-6px);
    box-shadow:0 18px 40px rgba(15,23,42,.13);
}

.ndp-product-thumb img{
    width:100%;
    height:270px;
    object-fit:cover;
    transition:.4s;
}

.ndp-product-thumb:hover img{
    transform:scale(1.06);
}

/*---------------------------------------------------------
Overlay
---------------------------------------------------------*/

.ndp-product-overlay{
    position:absolute;
    left:0;
    right:0;
    bottom:0;
    padding:18px;
    background:linear-gradient(
        to top,
        rgba(6,29,60,.92),
        rgba(6,29,60,.25),
        transparent
    );
    color:#fff;
}

.ndp-product-name{
    display:block;
    font-size:18px;
    font-weight:700;
    margin-bottom:5px;
}

.ndp-product-meta{
    display:flex;
    align-items:center;
    justify-content:space-between;
    font-size:12px;
    opacity:.9;
}

/*---------------------------------------------------------
Modal
---------------------------------------------------------*/

.ndp-modal{
    border:none;
    border-radius:18px;
    overflow:hidden;
}

.ndp-modal .modal-header{
    border-bottom:1px solid #eef2f7;
    padding:18px 25px;
}

.ndp-modal .modal-body{
    padding:28px;
}

.ndp-modal-imgframe{
    background:#f8fafc;
    border-radius:16px;
    overflow:hidden;
    border:1px solid #e5edf6;
}

.ndp-modal-imgframe img{
    width:100%;
    max-height:500px;
    object-fit:contain;
    display:block;
    background:#fff;
}

/*---------------------------------------------------------
Thumbnails
---------------------------------------------------------*/

.ndp-modal-thumbs{
    display:flex;
    flex-wrap:wrap;
    gap:12px;
}

.ndp-thumb-btn{
    width:80px;
    height:80px;
    padding:4px;
    border:2px solid #dde7f0;
    border-radius:10px;
    background:#fff;
    cursor:pointer;
    transition:.25s;
}

.ndp-thumb-btn img{
    width:100%;
    height:100%;
    object-fit:cover;
    border-radius:6px;
}

.ndp-thumb-btn:hover{
    border-color:#0b4ea2;
}

.ndp-thumb-btn.active{
    border-color:#0b4ea2;
    box-shadow:0 0 0 3px rgba(11,78,162,.12);
}

/*---------------------------------------------------------
Buttons
---------------------------------------------------------*/

.ndp-btn-primary{
    background:#0b4ea2;
    border:1px solid #0b4ea2;
    color:#fff;
    border-radius:8px;
    padding:10px 18px;
    font-weight:600;
}

.ndp-btn-primary:hover{
    background:#083b7d;
    border-color:#083b7d;
    color:#fff;
}

.ndp-btn-soft{
    background:#eef5ff;
    border:1px solid #d2e4f7;
    color:#0b4ea2;
    border-radius:8px;
    padding:10px 18px;
    font-weight:600;
}

.ndp-btn-soft:hover{
    background:#0b4ea2;
    border-color:#0b4ea2;
    color:#fff;
}

/*---------------------------------------------------------
Product Details Card
---------------------------------------------------------*/

.ndp-modal .ndp-card{
    border:1px solid #e2e8f0;
    border-radius:16px;
    background:#fff;
    box-shadow:none;
}

.ndp-muted{
    color:#64748b;
    line-height:1.7;
}

/*---------------------------------------------------------
Responsive
---------------------------------------------------------*/

@media(max-width:1200px){

    .ndp-product-thumb img{
        height:240px;
    }

}

@media(max-width:992px){

    .ndp-product-thumb img{
        height:220px;
    }

}

@media(max-width:768px){

    .ndp-filter-row{
        flex-wrap:nowrap;
        overflow:auto;
        padding-bottom:8px;
    }

    .ndp-filter-pill{
        white-space:nowrap;
        flex:none;
    }

    .ndp-product-thumb img{
        height:190px;
    }

    .ndp-product-name{
        font-size:15px;
    }

    .ndp-modal .modal-body{
        padding:18px;
    }

    .ndp-thumb-btn{
        width:65px;
        height:65px;
    }

}

@media(max-width:576px){

    .ndp-product-thumb img{
        height:165px;
    }

    .ndp-product-overlay{
        padding:14px;
    }

    .ndp-product-name{
        font-size:14px;
    }

    .ndp-product-meta{
        font-size:11px;
    }

}


/* =========================================================
   CONTACT PAGE
========================================================= */

/* Breadcrumb */

.ndp-breadcrumb {
    display: flex;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
    font-size: 13px;
}

.ndp-bc-link {
    color: #0b4ea2;
    font-weight: 700;
    text-decoration: none;
}

.ndp-bc-link:hover {
    color: #07366f;
}

.ndp-bc-sep {
    color: #94a3b8;
}

.ndp-bc-current {
    color: #64748b;
    font-weight: 600;
}

/* =========================================================
   CONTACT TILES
========================================================= */

.ndp-tile {
    height: 100%;
    padding: 22px;
    border: 1px solid #dce6f0;
    border-radius: 14px;
    background: #ffffff;
    box-shadow: 0 8px 22px rgba(15, 23, 42, 0.05);
    transition: all 0.25s ease;
}

.ndp-tile:hover {
    border-color: #b5cde7;
    box-shadow: 0 12px 28px rgba(15, 23, 42, 0.08);
    transform: translateY(-3px);
}

.ndp-tile-ico {
    display: grid;
    width: 48px;
    height: 48px;
    margin-bottom: 15px;
    place-items: center;
    border-radius: 12px;
    background: #eaf3ff;
    color: #0b4ea2;
    font-size: 21px;
}

.ndp-tile-title {
    margin-bottom: 7px;
    color: #0f172a;
    font-size: 17px;
    font-weight: 800;
}

.ndp-link {
    color: #0b4ea2;
    font-weight: 700;
    text-decoration: none;
}

.ndp-link:hover {
    color: #07366f;
    text-decoration: underline;
}

/* =========================================================
   QUOTE FORM CARD
========================================================= */

#quote .ndp-card {
    height: 100%;
    border: 1px solid #dce6f0;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.ndp-section-title {
    color: #0f172a;
    font-size: clamp(25px, 3vw, 34px);
    font-weight: 800;
    line-height: 1.25;
    letter-spacing: -0.025em;
}

.ndp-pill {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    padding: 7px 11px;
    border: 1px solid #d4e2f1;
    border-radius: 50px;
    background: #f2f7fd;
    color: #475569;
    font-size: 11px;
    font-weight: 700;
}

.ndp-pill i {
    color: #0b4ea2;
}

/* =========================================================
   FORM FIELDS
========================================================= */

.ndp-input {
    min-height: 48px;
    border: 1px solid #d5e0eb;
    border-radius: 9px;
    background: #ffffff;
    color: #0f172a;
    font-size: 13px;
    box-shadow: none;
    transition: all 0.2s ease;
}
.ndp-input2 {
    min-height: 48px;
    border: 1px solid #d5e0eb;
    border-radius: 9px;
    color: #0f172a;
    font-size: 13px;
    box-shadow: none;
    transition: all 0.2s ease;
}

textarea.ndp-input {
    min-height: 145px;
    padding-top: 13px;
    resize: vertical;
}

.ndp-input::placeholder {
    color: #94a3b8;
}

.ndp-input:hover {
    border-color: #b8cce1;
}

.ndp-input:focus {
    border-color: #0b4ea2;
    box-shadow: 0 0 0 3px rgba(11, 78, 162, 0.1);
}

.form-select.ndp-input {
    cursor: pointer;
}

input[type="file"].ndp-input {
    padding: 8px 10px;
}

input[type="file"].ndp-input::file-selector-button {
    margin: -8px 12px -8px -10px;
    padding: 12px 15px;
    border: 0;
    border-right: 1px solid #d5e0eb;
    background: #eef5fd;
    color: #0b4ea2;
    font-size: 12px;
    font-weight: 700;
    cursor: pointer;
}

.ndp-label {
    color: #334155;
    font-size: 12px;
}

.form-text {
    margin-top: 7px;
    font-size: 11px;
}

/* =========================================================
   BUTTON
========================================================= */

.ndp-btn-primary {
    min-height: 46px;
    padding: 10px 21px;
    border: 1px solid #0b4ea2;
    border-radius: 9px;
    background: #0b4ea2;
    color: #ffffff;
    font-size: 13px;
    font-weight: 700;
    transition: all 0.25s ease;
}

.ndp-btn-primary:hover,
.ndp-btn-primary:focus {
    border-color: #073b7d;
    background: #073b7d;
    color: #ffffff;
    transform: translateY(-2px);
}

/* =========================================================
   FORM MESSAGE
========================================================= */

#contactMsg {
    min-height: 20px;
    padding-top: 3px;
    font-weight: 600;
}

#contactMsg.text-success {
    color: #15803d !important;
}

#contactMsg.text-danger {
    color: #dc2626 !important;
}

/* =========================================================
   MAP
========================================================= */

.ndp-map-head {
    border-bottom: 1px solid #dce6f0;
    background: #f8fbff;
    color: #0f172a;
}

.ndp-map-head .fw-bold {
    display: flex;
    align-items: center;
    gap: 8px;
}

.ndp-map-head i {
    color: #0b4ea2;
}

.ndp-card.overflow-hidden {
    border: 1px solid #dce6f0;
    border-radius: 16px;
    background: #ffffff;
    box-shadow: 0 10px 28px rgba(15, 23, 42, 0.06);
}

.ndp-card iframe {
    width: 100%;
    height: 100%;
    min-height: 360px;
}

/* =========================================================
   COMMON TEXT
========================================================= */

.ndp-muted {
    color: #64748b;
    line-height: 1.7;
}

/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 991.98px) {
    #quote .ndp-card {
        height: auto;
    }

    .ndp-card iframe {
        min-height: 320px;
    }
}

@media (max-width: 767.98px) {
    .ndp-tile {
        padding: 19px;
    }

    #quote .ndp-card {
        padding: 24px !important;
    }

    .ndp-section-title {
        font-size: 27px;
    }

    .ndp-card iframe {
        min-height: 290px;
    }
}

@media (max-width: 575.98px) {
    .ndp-tile {
        display: grid;
        grid-template-columns: 44px minmax(0, 1fr);
        column-gap: 13px;
        padding: 17px;
    }

    .ndp-tile-ico {
        grid-row: 1 / 3;
        width: 44px;
        height: 44px;
        margin-bottom: 0;
        font-size: 19px;
    }

    .ndp-tile-title {
        align-self: end;
        margin-bottom: 2px;
        font-size: 16px;
    }

    .ndp-tile .ndp-muted,
    .ndp-tile .small {
        grid-column: 2;
    }

    #quote .ndp-card {
        padding: 20px !important;
    }

    #quote .d-flex.align-items-center.justify-content-between {
        align-items: flex-start !important;
    }

    .ndp-section-title {
        font-size: 24px;
    }

    .ndp-input {
        min-height: 46px;
    }

    textarea.ndp-input {
        min-height: 130px;
    }

    .ndp-btn-primary {
        width: 100%;
    }

    .ndp-map-head {
        padding: 14px 17px !important;
    }

    .ndp-map-head .small {
        width: 100%;
    }

    .ndp-card iframe {
        min-height: 260px;
    }
}


















:root {
    --prime-blue: #435a88;
    --prime-blue-dark: #24365c;
    --prime-blue-deep: #172746;
    --prime-blue-light: #edf2fb;
    --prime-accent: #7890be;
    --prime-ink: #16213a;
    --prime-muted: #65718a;
    --prime-border: #dfe5ef;
    --prime-white: #ffffff;
    --prime-soft: #f6f8fc;
    --prime-shadow: 0 18px 50px rgba(28, 48, 85, .10);
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; color: var(--prime-ink); background: #fff; font-family: Inter, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; line-height: 1.65; }
a { color: inherit; text-decoration: none; }

.prime-topbar { background: var(--prime-blue-deep); color: rgba(255,255,255,.82); padding: 8px 0; font-size: 13px; }
.prime-topbar a { color: rgba(255,255,255,.88); }
.prime-navbar { background: rgba(255,255,255,.96); border-bottom: 1px solid rgba(67,90,136,.12); box-shadow: 0 8px 26px rgba(28,48,85,.06); backdrop-filter: blur(12px); }
.prime-logo { width: 245px; height: 78px; object-fit: contain; object-position: left center; }
.prime-navbar .nav-link { position: relative; padding: 31px 12px !important; color: #34415b; font-size: 14px; font-weight: 650; }
.prime-navbar .nav-link:hover, .prime-navbar .nav-link.active { color: var(--prime-blue); }
.prime-navbar .nav-link::after { content: ''; position: absolute; left: 12px; right: 12px; bottom: 21px; height: 2px; background: var(--prime-blue); transform: scaleX(0); transition: .25s; }
.prime-navbar .nav-link:hover::after, .prime-navbar .nav-link.active::after { transform: scaleX(1); }

.prime-btn-primary, .prime-btn-dark, .prime-btn-light, .prime-btn-outline { border-radius: 7px; padding: 12px 20px; font-weight: 700; transition: .25s ease; }
.prime-btn-primary { background: var(--prime-blue); border: 1px solid var(--prime-blue); color: #fff; }
.prime-btn-primary:hover { background: var(--prime-blue-dark); border-color: var(--prime-blue-dark); color: #fff; transform: translateY(-2px); }
.prime-btn-outline { border: 1px solid rgba(255,255,255,.65); color: #fff; }
.prime-btn-outline:hover { background: #fff; color: var(--prime-blue-dark); }
.prime-btn-dark { background: var(--prime-blue-deep); border: 1px solid var(--prime-blue-deep); color: #fff; }
.prime-btn-dark:hover { background: var(--prime-blue); color: #fff; }
.prime-btn-light { background: #fff; color: var(--prime-blue-dark); border: 1px solid #fff; }
.prime-btn-light:hover { background: transparent; color: #fff; }
.prime-btn-lg { padding: 14px 24px; }

.prime-hero { position: relative; overflow: hidden; background: linear-gradient(120deg, #152541 0%, #314a76 58%, #536b99 100%); color: #fff; }
.prime-hero::after { content: ''; position: absolute; width: 620px; height: 620px; border: 100px solid rgba(255,255,255,.045); border-radius: 50%; right: -210px; top: -220px; }
.prime-hero-grid { position: absolute; inset: 0; opacity: .12; background-image: linear-gradient(rgba(255,255,255,.25) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.25) 1px, transparent 1px); background-size: 48px 48px; mask-image: linear-gradient(to right, transparent, #000); }
.min-vh-75 { min-height: 690px; }
.prime-hero-kicker { display: inline-flex; align-items: center; gap: 8px; padding: 8px 13px; border: 1px solid rgba(255,255,255,.24); background: rgba(255,255,255,.08); border-radius: 30px; font-size: 13px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.prime-hero h1 { max-width: 800px; margin: 22px 0; font-size: clamp(42px, 5.3vw, 76px); line-height: 1; font-weight: 600; letter-spacing: -.045em; }
.prime-hero h1 span { color: #b9c9e8; }
.prime-hero > .container p { max-width: 720px; font-size: 18px; color: rgba(255,255,255,.78); }
.prime-hero-points { display: flex; flex-wrap: wrap; gap: 20px; margin-top: 32px; font-size: 14px; color: rgba(255,255,255,.86); }
.prime-hero-points i { color: #cbd8f0; margin-right: 6px; }
.prime-hero-panel { position: relative; z-index: 2; padding: 30px; border: 1px solid rgba(255,255,255,.18); background: rgba(12,28,54,.48); box-shadow: 0 30px 70px rgba(6,19,42,.3); backdrop-filter: blur(15px); }
.prime-hero-panel-top { display: flex; justify-content: space-between; padding-bottom: 18px; margin-bottom: 7px; border-bottom: 1px solid rgba(255,255,255,.16); text-transform: uppercase; font-size: 12px; letter-spacing: .12em; font-weight: 700; }
.prime-capability { display: flex; gap: 18px; padding: 20px 0; border-bottom: 1px solid rgba(255,255,255,.12); }
.prime-capability > span { color: #9fb2d8; font-size: 13px; font-weight: 800; }
.prime-capability h5 { margin: 0 0 5px; font-size: 17px; }
.prime-capability p { margin: 0; font-size: 13px !important; color: rgba(255,255,255,.65) !important; }
.prime-panel-note { margin-top: 22px; padding: 12px 14px; background: rgba(255,255,255,.09); font-size: 13px; }

.prime-trust-strip { background: #fff; border-bottom: 1px solid var(--prime-border); }
.prime-trust-grid { display: grid; grid-template-columns: repeat(4, 1fr); }
.prime-trust-grid > div { padding: 28px 30px; border-right: 1px solid var(--prime-border); }
.prime-trust-grid > div:last-child { border-right: 0; }
.prime-trust-grid strong, .prime-trust-grid span { display: block; }
.prime-trust-grid strong { color: var(--prime-blue); font-size: 22px; }
.prime-trust-grid span { color: var(--prime-muted); font-size: 13px; }

.prime-section { padding: 95px 0; }
.prime-section-soft { background: var(--prime-soft); }
.prime-eyebrow { display: inline-block; margin-bottom: 12px; color: var(--prime-blue); font-size: 12px; font-weight: 800; text-transform: uppercase; letter-spacing: .16em; }
.prime-eyebrow-light { color: #c8d5ed; }
.prime-section-title { margin: 0; max-width: 770px; font-size: clamp(34px, 4vw, 52px); line-height: 1.15; font-weight: 800; letter-spacing: -.035em; }
.prime-section-copy { margin: 0; color: var(--prime-muted); font-size: 16px; }
.prime-heading-center { max-width: 760px; margin: 0 auto 50px; }
.prime-heading-center .prime-section-copy { margin-top: 18px; }

.prime-product-card { position: relative; display: block; height: 100%; padding: 34px; border: 1px solid var(--prime-border); background: #fff; overflow: hidden; transition: .28s ease; }
.prime-product-card::before { content: ''; position: absolute; left: 0; bottom: 0; width: 100%; height: 4px; background: var(--prime-blue); transform: scaleX(0); transform-origin: left; transition: .28s; }
.prime-product-card:hover { border-color: #b7c4dc; transform: translateY(-7px); box-shadow: var(--prime-shadow); }
.prime-product-card:hover::before { transform: scaleX(1); }
.prime-product-card-icon { display: inline-grid; place-items: center; width: 54px; height: 54px; background: var(--prime-blue-light); color: var(--prime-blue); font-size: 25px; }
.prime-card-number { position: absolute; right: 26px; top: 22px; color: #dbe2ef; font-size: 34px; font-weight: 800; }
.prime-product-card h3 { margin: 24px 0 12px; font-size: 22px; font-weight: 750; }
.prime-product-card p { min-height: 52px; color: var(--prime-muted); font-size: 14px; }
.prime-card-link { color: var(--prime-blue); font-size: 14px; font-weight: 750; }

.prime-about-visual { position: relative; min-height: 490px; background: linear-gradient(145deg, var(--prime-blue-deep), var(--prime-blue)); overflow: hidden; }
.prime-about-visual::before { content: ''; position: absolute; inset: 0; background: radial-gradient(circle at 80% 20%, rgba(255,255,255,.15), transparent 35%); }
.prime-visual-main { position: absolute; left: 12%; top: 13%; color: rgba(255,255,255,.14); font-size: 250px; line-height: 1; }
.prime-visual-main span { position: absolute; left: 70px; top: 98px; color: #fff; font-size: 42px; font-weight: 800; letter-spacing: .1em; }
.prime-visual-card { position: absolute; right: 0; bottom: 0; width: 65%; padding: 28px; background: #fff; box-shadow: -20px -20px 60px rgba(8,20,41,.18); }
.prime-visual-card strong, .prime-visual-card span { display: block; }
.prime-visual-card strong { color: var(--prime-blue); font-size: 19px; }
.prime-visual-card span { color: var(--prime-muted); font-size: 13px; }
.prime-visual-dots { position: absolute; right: 30px; top: 32px; width: 110px; height: 110px; background-image: radial-gradient(rgba(255,255,255,.45) 1.5px, transparent 1.5px); background-size: 12px 12px; }
.prime-feature-list { display: grid; gap: 15px; margin-top: 28px; }
.prime-feature-list > div { display: flex; gap: 12px; color: var(--prime-muted); }
.prime-feature-list i { display: inline-grid; place-items: center; flex: 0 0 28px; height: 28px; background: var(--prime-blue-light); color: var(--prime-blue); border-radius: 50%; }

.prime-industry-grid { display: grid; grid-template-columns: repeat(4, 1fr); border-top: 1px solid var(--prime-border); border-left: 1px solid var(--prime-border); }
.prime-industry-grid a { display: grid; grid-template-columns: 36px 1fr auto; align-items: center; gap: 14px; min-height: 108px; padding: 24px; border-right: 1px solid var(--prime-border); border-bottom: 1px solid var(--prime-border); transition: .25s; }
.prime-industry-grid a > i:first-child { color: var(--prime-blue); font-size: 24px; }
.prime-industry-grid a > i:last-child { color: #aab4c6; }
.prime-industry-grid a:hover { background: var(--prime-blue); color: #fff; }
.prime-industry-grid a:hover i { color: #fff !important; }

.prime-process-section { padding: 95px 0; background: var(--prime-blue-deep); color: #fff; }
.prime-process-section h2 { margin: 0; font-size: clamp(34px,4vw,52px); font-weight: 800; letter-spacing: -.035em; }
.prime-process-section p { margin: 0; color: rgba(255,255,255,.67); }
.prime-process-card { height: 100%; padding: 28px; border: 1px solid rgba(255,255,255,.15); background: rgba(255,255,255,.04); }
.prime-process-card > span { color: #9fb4dc; font-size: 13px; font-weight: 800; }
.prime-process-card h4 { margin: 45px 0 12px; font-size: 19px; }
.prime-process-card p { font-size: 14px; }

.prime-cta-strip { padding: 65px 0; background: var(--prime-blue); color: #fff; }
.prime-cta-strip h2 { margin: 0 0 12px; font-size: clamp(30px,4vw,46px); font-weight: 800; letter-spacing: -.03em; }
.prime-cta-strip p { color: rgba(255,255,255,.76); }
.prime-footer { padding: 75px 0 25px; background: #101d35; color: rgba(255,255,255,.67); }
.prime-footer-logo { width: 240px; max-height: 85px; object-fit: contain; object-position: left; }
.prime-footer h5 { margin-bottom: 20px; color: #fff; font-size: 15px; }
.prime-footer .col-lg-2 > a, .prime-footer .col-lg-3 > a { display: block; margin-bottom: 10px; font-size: 14px; }
.prime-footer a:hover { color: #fff; }
.prime-socials { display: flex; gap: 10px; margin-top: 20px; }
.prime-socials a { display: grid; place-items: center; width: 38px; height: 38px; border: 1px solid rgba(255,255,255,.18); color: #fff; }
.prime-contact-row { display: flex; align-items: flex-start; gap: 10px; margin-bottom: 13px; font-size: 14px; }
.prime-contact-row i { color: #9fb4dc; margin-top: 2px; }
.prime-footer-bottom { display: flex; justify-content: space-between; gap: 20px; margin-top: 55px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); font-size: 13px; }

.prime-page-hero { padding: 75px 0; background: linear-gradient(120deg, #172746, #435a88); color: #fff; }
.prime-page-hero h1 { margin: 0 0 15px; font-size: clamp(36px,5vw,58px); font-weight: 600; }
.prime-breadcrumb { display: flex; align-items: center; gap: 9px; font-size: 13px; color: rgba(255,255,255,.7); }
.prime-breadcrumb a { color: #fff; }
.prime-sidebar { top: 130px; padding: 24px; border: 1px solid var(--prime-border); background: #fff; }
.prime-sidebar h5 { margin-bottom: 17px; color: var(--prime-blue-dark); font-weight: 800; text-transform: uppercase; font-size: 14px; letter-spacing: .08em; }
.prime-search { display: flex; align-items: center; gap: 8px; padding: 10px 12px; background: var(--prime-soft); border: 1px solid var(--prime-border); }
.prime-search input { width: 100%; border: 0; outline: 0; background: transparent; font-size: 13px; }
.prime-product-list { display: grid; margin-top: 14px; }
.prime-product-list a { display: flex; justify-content: space-between; align-items: center; padding: 11px 4px; border-bottom: 1px solid var(--prime-border); color: var(--prime-muted); font-size: 13px; }
.prime-product-list a.active, .prime-product-list a:hover { color: var(--prime-blue); font-weight: 700; }
.prime-product-detail-card { padding: 38px; border: 1px solid var(--prime-border); box-shadow: var(--prime-shadow); }
.prime-product-main-img { width: 100%; aspect-ratio: 1/1; object-fit: contain; border: 1px solid var(--prime-border); background: #fff; }
.prime-thumb-row { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 12px; }
.prime-thumb { width: 64px; height: 64px; padding: 3px; border: 1px solid var(--prime-border); background: #fff; }
.prime-thumb.active { border-color: var(--prime-blue); }
.prime-thumb img { width: 100%; height: 100%; object-fit: cover; }
.prime-no-image { display: grid; place-items: center; align-content: center; gap: 12px; aspect-ratio: 1/1; background: var(--prime-soft); color: var(--prime-muted); }
.prime-no-image i { font-size: 44px; }
.prime-product-title { font-size: 38px; font-weight: 800; }
.prime-product-meta { display: flex; gap: 12px; margin: 20px 0; }
.prime-product-meta span { padding: 8px 12px; background: var(--prime-soft); font-size: 13px; }
.prime-product-meta strong { margin-right: 8px; color: var(--prime-blue); }
.prime-product-content { color: var(--prime-muted); }

@media (max-width: 1199px) {
    .prime-logo { width: 205px; }
    .prime-navbar .nav-link { padding-left: 8px !important; padding-right: 8px !important; font-size: 13px; }
}
@media (max-width: 991px) {
    .prime-logo { width: 190px; height: 66px; }
    .prime-navbar .nav-link { padding: 11px 0 !important; }
    .prime-navbar .nav-link::after { display: none; }
    .prime-navbar .navbar-collapse { padding: 10px 0 22px; }
    .min-vh-75 { min-height: auto; padding: 85px 0; }
    .prime-trust-grid, .prime-industry-grid { grid-template-columns: repeat(2, 1fr); }
    .prime-trust-grid > div:nth-child(2) { border-right: 0; }
    .prime-trust-grid > div { border-bottom: 1px solid var(--prime-border); }
    .prime-about-visual { min-height: 420px; }
}
@media (max-width: 767px) {
    .prime-section, .prime-process-section { padding: 70px 0; }
    .prime-hero h1 { font-size: 40px; }
    .prime-hero > .container p { font-size: 16px; }
    .prime-hero-panel { padding: 22px; }
    .prime-trust-grid, .prime-industry-grid { grid-template-columns: 1fr; }
    .prime-trust-grid > div { border-right: 0; }
    .prime-industry-grid { border-right: 1px solid var(--prime-border); }
    .prime-about-visual { min-height: 360px; }
    .prime-visual-main { font-size: 190px; }
    .prime-visual-main span { left: 50px; top: 75px; font-size: 32px; }
    .prime-footer-bottom { flex-direction: column; }
    .prime-product-detail-card { padding: 22px; }
}


/* =========================================================
   QUALITY CLICKABLE BADGES
========================================================= */

.ndp-quality-badge-btn {
  border: 0;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease;
}

.ndp-quality-badge-btn:hover {
  transform: translateY(-2px);
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.08);
}

.ndp-quality-badge-btn:focus {
  outline: none;
}

.ndp-quality-badge-btn:focus-visible {
  outline: 2px solid rgba(111, 15, 52, 0.35);
  outline-offset: 3px;
}

.ndp-quality-arrow {
  flex: 0 0 35px;
  width: 35px;
  height: 35px;
  margin-left: auto;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 50%;
  background: rgba(111, 15, 52, 0.08);
  color: #6f0f34;

  font-size: 14px;

  transition:
    transform 0.25s ease,
    background 0.25s ease,
    color 0.25s ease;
}

.ndp-quality-badge-btn:hover .ndp-quality-arrow {
  transform: translateX(4px);
  background: #6f0f34;
  color: #ffffff;
}


/* =========================================================
   QUALITY MODAL
========================================================= */

.ndp-quality-modal {
  --bs-modal-width: 760px;
}

.ndp-quality-modal .modal-dialog {
  padding: 15px;
}

.ndp-quality-modal .modal-content {
  overflow: hidden;

  border: 0;
  border-radius: 22px;

  background: #ffffff;

  box-shadow:
    0 30px 80px rgba(0, 0, 0, 0.22);
}


/* Modal Header */

.ndp-quality-modal-header {
  position: relative;

  display: flex;
  align-items: center;
  gap: 18px;

  padding: 30px 70px 30px 30px;

  color: #ffffff;

  background:
    linear-gradient(
      135deg,
      #3F5481 0%,
      #3F5481 100%
    );
}

.ndp-quality-modal-header::after {
  content: "";

  position: absolute;
  top: -60px;
  right: 60px;

  width: 170px;
  height: 170px;

  border-radius: 50%;

  background: rgba(255, 255, 255, 0.05);

  pointer-events: none;
}


/* Icon */

.ndp-quality-modal-icon {
  position: relative;
  z-index: 1;

  flex: 0 0 60px;

  width: 60px;
  height: 60px;

  display: flex;
  align-items: center;
  justify-content: center;

  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 15px;

  background: rgba(255, 255, 255, 0.11);

  color: #ffffff;

  font-size: 26px;
}


/* Kicker */

.ndp-quality-modal-kicker {
  position: relative;
  z-index: 1;

  display: block;

  margin-bottom: 4px;

  color: rgba(255, 255, 255, 0.72);

  font-size: 11px;
  font-weight: 700;

  letter-spacing: 1.3px;
  text-transform: uppercase;
}


/* Title */

.ndp-quality-modal-title {
  position: relative;
  z-index: 1;

  margin: 0;

  color: #ffffff;

  font-size: 26px;
  font-weight: 700;

  line-height: 1.3;
}


/* Close */

.ndp-quality-modal-header .btn-close {
  position: absolute;

  z-index: 5;

  top: 20px;
  right: 20px;

  width: 32px;
  height: 32px;

  margin: 0;
  padding: 0;

  border-radius: 50%;

  background-color: rgba(255, 255, 255, 0.12);

  filter: invert(1);

  opacity: 0.9;
}

.ndp-quality-modal-header .btn-close:hover {
  background-color: rgba(255, 255, 255, 0.20);
  opacity: 1;
}


/* Modal Content */

.ndp-quality-modal-body {
  padding: 32px 35px 36px;
}

.ndp-quality-modal-body p {
  margin: 0 0 18px;

  color: #59616d;

  font-size: 16px;
  line-height: 1.85;
}

.ndp-quality-modal-body strong {
  color: #343b45;
}


/* Separator */

.ndp-modal-separator {
  width: 100%;
  height: 1px;

  margin: 28px 0;

  background: #e8eaed;
}


/* Sub Heading */

.ndp-modal-subheading {
  display: flex;
  align-items: center;
  gap: 14px;

  margin-bottom: 18px;
}

.ndp-modal-subheading-icon {
  flex: 0 0 45px;

  width: 45px;
  height: 45px;

  display: flex;
  align-items: center;
  justify-content: center;

  border-radius: 12px;

  background: rgba(111, 15, 52, 0.08);

  color: #6f0f34;

  font-size: 19px;
}

.ndp-modal-subheading span {
  display: block;

  margin-bottom: 2px;

  color: #8a929c;

  font-size: 10px;
  font-weight: 700;

  letter-spacing: 1px;
  text-transform: uppercase;
}

.ndp-modal-subheading h3 {
  margin: 0;

  color: #252c35;

  font-size: 19px;
  font-weight: 700;
}


/* =========================================================
   RESPONSIVE
========================================================= */

@media (max-width: 575.98px) {

  .ndp-quality-modal .modal-dialog {
    margin: 8px;
    padding: 0;
  }

  .ndp-quality-modal-header {
    gap: 13px;

    padding:
      24px
      48px
      24px
      20px;
  }

  .ndp-quality-modal-icon {
    flex-basis: 48px;

    width: 48px;
    height: 48px;

    border-radius: 12px;

    font-size: 21px;
  }

  .ndp-quality-modal-kicker {
    font-size: 9px;
  }

  .ndp-quality-modal-title {
    font-size: 19px;
  }

  .ndp-quality-modal-header .btn-close {
    top: 14px;
    right: 14px;
  }

  .ndp-quality-modal-body {
    padding: 24px 22px 28px;
  }

  .ndp-quality-modal-body p {
    font-size: 15px;
    line-height: 1.75;
  }

  .ndp-quality-arrow {
    flex-basis: 31px;

    width: 31px;
    height: 31px;

    font-size: 12px;
  }

}