.ca-hero{background:linear-gradient(90deg,rgba(0,40,70,.92),rgba(0,55,90,.48)),url("") center/cover; background-color:#063b5b;color:#fff;padding:58px 5%;min-height:360px;display:flex;align-items:center}.ca-hero-inner{width:min(100%,900px)}.ca-eyebrow{font-size:15px;font-weight:700;letter-spacing:.3px;margin-bottom:16px}.ca-hero h1{font-size:48px;line-height:1.04;margin:0 0 18px;font-weight:750;color:#fff}.ca-hero p{font-size:17px;line-height:1.5;margin:0 0 24px;max-width:760px;color:#fff}.ca-search{display:flex;gap:6px;background:#fff;padding:4px;border-radius:12px;max-width:900px;box-shadow:0 8px 25px rgba(0,0,0,.18)}.ca-search input{flex:1;border:0!important;outline:0!important;background:#fff!important;font-size:16px;padding:13px 16px;color:#17324d;min-width:0}.ca-search button{border:0;border-radius:9px;background:#f33d3d;color:#fff;font-weight:700;padding:0 30px;cursor:pointer}.ca-section{padding:30px 3%;max-width:1300px;margin:auto}.ca-section-head{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:16px}.ca-section-head h2{font-size:28px;margin:0;color:#082c49}.ca-section-head a{color:#005db8;font-weight:700;text-decoration:none}.ca-categories{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px}.ca-category{min-height:110px;background:#f5faff;border:1px solid #dceaf5;border-radius:10px;padding:22px 12px;text-decoration:none;display:flex;flex-direction:column;justify-content:center;text-align:center;color:#082c49}.ca-category strong{font-size:16px}.ca-category span{font-size:13px;margin-top:7px;color:#62768a}.ca-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.ca-card{border:1px solid #dce5ec;border-radius:12px;background:#fff;overflow:hidden;box-shadow:0 2px 8px rgba(10,40,70,.04);display:flex;flex-direction:column}.ca-card-brand{height:32px;padding:10px 14px 0;font-weight:800;color:#1760a5;font-size:16px}.ca-card-image{height:205px;display:flex;align-items:center;justify-content:center;padding:12px}.ca-card-image img{max-width:100%;max-height:190px;object-fit:contain}.ca-no-image{font-size:12px;color:#9aa7b3;background:#f2f5f7;padding:30px;border-radius:8px}.ca-card-body{padding:0 14px 14px}.ca-card h3{font-size:16px;line-height:1.3;margin:6px 0;color:#0a3150}.ca-card h3 a{color:inherit;text-decoration:none}.ca-type,.ca-part{font-size:13px;color:#5d7184;margin-top:5px}.ca-badges{display:flex;flex-wrap:wrap;gap:5px;margin:10px 0}.ca-badge{font-size:11px;padding:4px 8px;border-radius:5px;background:#e8f3ff;color:#075aa0;font-weight:700}.ca-btn{display:block;text-align:center;text-decoration:none;border-radius:22px;padding:10px 12px;margin-top:8px;font-weight:700;font-size:13px}.ca-btn-primary{background:#f33d3d;color:#fff}.ca-btn-outline{border:1px solid #a9bdcd;color:#0a3150;background:#fff}.ca-pagination{margin-top:25px}.ca-pagination ul{display:flex;justify-content:center;gap:7px;list-style:none;padding:0}.ca-pagination a,.ca-pagination span{padding:7px 11px;border:1px solid #d9e2e9;border-radius:6px;text-decoration:none}.ca-empty{padding:35px;text-align:center;background:#f6f9fb;border-radius:10px;color:#506476}.ca-benefits{max-width:1300px;margin:0 auto 28px;padding:25px 3%;background:#eef8ff;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.ca-benefits div{display:flex;gap:13px;align-items:center;border-right:1px solid #cfe1ee}.ca-benefits div:last-child{border:0}.ca-benefits strong{font-size:24px;color:#0a4f82}.ca-benefits span{font-size:13px;color:#34566f}.ca-cta{max-width:1300px;margin:0 auto 35px;padding:30px 4%;background:#043b62;color:#fff;border-radius:0;display:flex;justify-content:space-between;align-items:center;gap:25px}.ca-cta>div{display:flex;align-items:center;gap:20px}.ca-cta h2{margin:0 0 6px;color:#fff}.ca-cta p{margin:0;color:#d9e9f4;line-height:1.5}.ca-cta>a{background:#f33d3d;color:#fff;text-decoration:none;padding:14px 24px;border-radius:25px;font-weight:700;white-space:nowrap}.ca-cta-icon{font-size:38px}.ca-single{max-width:1200px;margin:50px auto;padding:0 20px;display:grid;grid-template-columns:1fr 1fr;gap:50px}.ca-single-image{min-height:400px;display:flex;align-items:center;justify-content:center;border:1px solid #e1e8ee;border-radius:12px;padding:20px}.ca-single-image img{max-width:100%;height:auto;max-height:500px;object-fit:contain}.ca-single-info h1{font-size:38px;color:#082c49;margin:8px 0 20px}.ca-single-desc{margin:20px 0;line-height:1.7;color:#42586b}@media(max-width:1000px){.ca-categories{grid-template-columns:repeat(4,1fr)}.ca-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:700px){.ca-hero{padding:40px 20px}.ca-hero h1{font-size:36px}.ca-hero p{font-size:15px}.ca-search{flex-direction:column;background:transparent;padding:0}.ca-search input,.ca-search button{height:50px;border-radius:9px}.ca-categories{grid-template-columns:repeat(2,1fr)}.ca-grid{grid-template-columns:1fr}.ca-benefits{grid-template-columns:1fr 1fr}.ca-benefits div{border-right:0}.ca-cta{flex-direction:column;align-items:flex-start}.ca-single-info h1{font-size:30px}}/* FORCE SINGLE PRODUCT 2-COLUMN DESKTOP */
@media (min-width:1001px){

    .ca-single{
        display:grid !important;
        grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
        gap:50px !important;
        max-width:1200px !important;
        margin:50px auto !important;
        padding:0 20px !important;
    }

    .ca-single-image{
        grid-column:1 !important;
        width:auto !important;
    }

    .ca-single-info{
        grid-column:2 !important;
        width:auto !important;
    }

}
/* =========================================
   PRODUCT DESCRIPTION - FULL WIDTH FIX
   ========================================= */

.ca-product-description{
    width:100vw !important;
    max-width:100vw !important;
    margin-top:50px !important;
    margin-left:calc(50% - 50vw) !important;
    margin-right:0 !important;
    padding:50px 0 !important;
    box-sizing:border-box !important;
}

.ca-description-inner{
    width:100% !important;
    max-width:1200px !important;
    margin:0 auto !important;
    padding:0 30px !important;
    box-sizing:border-box !important;
}

.ca-description-label{
    margin-bottom:30px !important;
}

.ca-product-description p{
    width:100% !important;
    max-width:none !important;
    margin-left:0 !important;
    margin-right:0 !important;
}

.ca-product-description h1,
.ca-product-description h2,
.ca-product-description h3,
.ca-product-description h4,
.ca-product-description h5,
.ca-product-description h6{
    width:100% !important;
    max-width:none !important;
}

.ca-product-description ul,
.ca-product-description ol{
    width:100% !important;
    max-width:none !important;
}.ca-product-description blockquote{
    margin:30px 0 !important;
    padding:0 !important;
    border-left:none !important;
    background:transparent !important;
    font-style:italic;
}

.ca-product-description blockquote p{
    margin:0 !important;
    padding:0 !important;
}/* =========================================================
   PRODUCT DESCRIPTION – PROFESSIONAL B2B STYLE
   ========================================================= */

.ca-product-description{
    width:100%;
    box-sizing:border-box;
    margin:45px 0 0;
    padding:55px 0 65px;
    background:#f5f9fc;
    border-top:1px solid #e7eef4;
}

.ca-description-inner{
    max-width:1080px;
    margin:0 auto;
    padding:0 30px;
    box-sizing:border-box;
}

/* Label */
.ca-description-label{
    margin:0 0 28px;
    font-size:14px;
    line-height:1.4;
    font-weight:700;
    letter-spacing:1.2px;
    color:#0067a8;
    text-transform:uppercase;
}

/* Main description text */
.ca-product-description .ca-description-inner > p{
    margin:0 0 22px;
    font-size:18px;
    line-height:1.7;
    color:#24445f;
}

/* Headings inside product description */
.ca-product-description .ca-description-inner h2{
    margin:32px 0 14px;
    font-size:26px;
    line-height:1.3;
    color:#003f6b;
}

.ca-product-description .ca-description-inner h3{
    margin:28px 0 12px;
    font-size:21px;
    line-height:1.4;
    color:#003f6b;
}

/* Lists */
.ca-product-description .ca-description-inner ul,
.ca-product-description .ca-description-inner ol{
    margin:12px 0 25px;
    padding-left:25px;
}

.ca-product-description .ca-description-inner li{
    margin-bottom:8px;
    font-size:17px;
    line-height:1.6;
    color:#24445f;
}

/* Emphasis / italic information */
.ca-product-description .ca-description-inner blockquote{
    margin:28px 0;
    padding:18px 25px;
    border-left:3px solid #dfe8ef;
    background:transparent;
    color:#536b7d;
    font-size:16px;
    line-height:1.7;
}

/* Links */
.ca-product-description .ca-description-inner a{
    color:#0067a8;
    text-decoration:none;
}

.ca-product-description .ca-description-inner a:hover{
    text-decoration:underline;
}

/* Images inside description */
.ca-product-description .ca-description-inner img{
    max-width:100%;
    height:auto;
    display:block;
    margin:25px auto;
}

/* Mobile */
@media(max-width:700px){

    .ca-product-description{
        margin-top:30px;
        padding:40px 0 50px;
    }

    .ca-description-inner{
        padding:0 20px;
    }

    .ca-description-label{
        margin-bottom:20px;
        font-size:13px;
    }

    .ca-product-description .ca-description-inner > p{
        font-size:16px;
        line-height:1.65;
        margin-bottom:18px;
    }

    .ca-product-description .ca-description-inner h2{
        font-size:22px;
    }

    .ca-product-description .ca-description-inner h3{
        font-size:19px;
    }

    .ca-product-description .ca-description-inner li{
        font-size:16px;
    }

}
/* =========================================================
   CENTRAL AUTOMATION
   PRODUCT SEARCH & SEARCH RESULTS
   Responsive Grid
   ========================================================= */


/* ---------------------------------------------------------
   1. SEARCH AREA
   --------------------------------------------------------- */

.ca-product-search {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    box-sizing: border-box;
}


/* Search form */

.ca-product-search-form {
    width: 100%;
    display: flex;
    align-items: stretch;
    gap: 0;
    margin: 0 auto 40px;
    box-sizing: border-box;
}


/* Search input */

.ca-product-search-form input[type="search"],
.ca-product-search-form input[type="text"] {
    flex: 1 1 auto;
    min-width: 0;
    height: 56px;
    padding: 0 20px;

    border: 1px solid #d9e0e8;
    border-right: none;

    border-radius: 8px 0 0 8px;

    background: #ffffff;
    color: #172033;

    font-size: 16px;
    font-weight: 400;

    outline: none;
    box-sizing: border-box;

    transition:
        border-color 0.2s ease,
        box-shadow 0.2s ease;
}


/* Search input focus */

.ca-product-search-form input[type="search"]:focus,
.ca-product-search-form input[type="text"]:focus {
    border-color: #172a46;
    box-shadow: 0 0 0 2px rgba(23, 42, 70, 0.08);
}


/* Search button */

.ca-product-search-form button,
.ca-product-search-form input[type="submit"] {
    flex: 0 0 130px;

    height: 56px;

    padding: 0 24px;

    border: none;
    border-radius: 0 8px 8px 0;

    background: #ff2f2f;
    color: #ffffff;

    font-size: 16px;
    font-weight: 700;

    cursor: pointer;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}


/* Search button hover */

.ca-product-search-form button:hover,
.ca-product-search-form input[type="submit"]:hover {
    background: #e62525;
}


/* ---------------------------------------------------------
   2. SEARCH RESULTS HEADER
   --------------------------------------------------------- */

.ca-product-search h2,
.ca-product-search .ca-search-results-title {
    width: 100%;
    margin: 0 0 28px;

    display: flex;
    align-items: baseline;
    justify-content: flex-start;
    gap: 12px;

    color: #172033;

    font-size: 30px;
    line-height: 1.2;
    font-weight: 700;
}


/* Product count */

.ca-product-search h2 span,
.ca-product-search .ca-search-count {
    color: #7a8494;

    font-size: 15px;
    font-weight: 400;
}


/* ---------------------------------------------------------
   3. RESULTS GRID
   --------------------------------------------------------- */

.ca-product-search .ca-product-grid,
.ca-product-search .products,
.ca-product-search .ca-products-grid {
    width: 100%;

    display: grid;

    grid-template-columns:
        repeat(4, minmax(0, 1fr));

    gap: 28px;

    align-items: stretch;

    box-sizing: border-box;
}


/* ---------------------------------------------------------
   4. PRODUCT CARD
   --------------------------------------------------------- */

.ca-product-search .ca-product-card,
.ca-product-search .product-card {
    width: 100%;
    min-width: 0;

    display: flex;
    flex-direction: column;

    overflow: hidden;

    background: #ffffff;

    border: 1px solid #e1e6ed;
    border-radius: 12px;

    box-shadow:
        0 4px 14px rgba(20, 35, 55, 0.06);

    transition:
        transform 0.2s ease,
        box-shadow 0.2s ease,
        border-color 0.2s ease;
}


/* Card hover */

.ca-product-search .ca-product-card:hover,
.ca-product-search .product-card:hover {
    transform: translateY(-4px);

    border-color: #d2d9e3;

    box-shadow:
        0 12px 28px rgba(20, 35, 55, 0.12);
}


/* ---------------------------------------------------------
   5. PRODUCT IMAGE
   --------------------------------------------------------- */

.ca-product-search .ca-product-card img,
.ca-product-search .product-card img {
    display: block;

    width: 100%;
    height: 230px;

    object-fit: contain;

    padding: 14px;

    background: #ffffff;

    box-sizing: border-box;
}


/* Image link */

.ca-product-search .ca-product-card > a:first-child,
.ca-product-search .product-card > a:first-child {
    display: block;

    width: 100%;

    background: #ffffff;

    overflow: hidden;
}


/* ---------------------------------------------------------
   6. CARD CONTENT
   --------------------------------------------------------- */

.ca-product-search .ca-product-card-content,
.ca-product-search .product-card-content {
    display: flex;
    flex-direction: column;

    flex: 1;

    padding: 20px;
}


/* Brand */

.ca-product-search .ca-product-brand,
.ca-product-search .product-brand {
    margin: 0 0 10px;

    color: #6d7787;

    font-size: 13px;
    line-height: 1.3;

    font-weight: 700;

    text-transform: uppercase;
    letter-spacing: 0.04em;
}


/* Product title */

.ca-product-search .ca-product-card h3,
.ca-product-search .product-card h3 {
    margin: 0 0 14px;

    color: #14233b;

    font-size: 19px;
    line-height: 1.35;

    font-weight: 700;
}


/* Product title link */

.ca-product-search .ca-product-card h3 a,
.ca-product-search .product-card h3 a {
    color: inherit;
    text-decoration: none;
}


/* Product title hover */

.ca-product-search .ca-product-card h3 a:hover,
.ca-product-search .product-card h3 a:hover {
    color: #e62525;
}


/* ---------------------------------------------------------
   7. PART NUMBER
   --------------------------------------------------------- */

.ca-product-search .ca-product-part,
.ca-product-search .product-part {
    margin: 0 0 10px;

    color: #667085;

    font-size: 14px;
    line-height: 1.5;
}


.ca-product-search .ca-product-part strong,
.ca-product-search .product-part strong {
    color: #26364d;
}


/* ---------------------------------------------------------
   8. PRODUCT TYPE
   --------------------------------------------------------- */

.ca-product-search .ca-product-type,
.ca-product-search .product-type {
    margin: 0 0 18px;

    color: #667085;

    font-size: 14px;
    line-height: 1.5;
}


/* ---------------------------------------------------------
   9. VIEW PRODUCT BUTTON
   --------------------------------------------------------- */

.ca-product-search .ca-product-card .ca-product-button,
.ca-product-search .product-card .ca-product-button,
.ca-product-search .ca-product-card a.button,
.ca-product-search .product-card a.button {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 44px;

    margin-top: auto;

    padding: 10px 18px;

    border: none;
    border-radius: 6px;

    background: #14233b;
    color: #ffffff;

    font-size: 14px;
    line-height: 1.2;

    font-weight: 700;

    text-decoration: none;

    transition:
        background 0.2s ease,
        transform 0.2s ease;
}


/* Button hover */

.ca-product-search .ca-product-card .ca-product-button:hover,
.ca-product-search .product-card .ca-product-button:hover,
.ca-product-search .ca-product-card a.button:hover,
.ca-product-search .product-card a.button:hover {
    background: #ff2f2f;
    color: #ffffff;

    transform: translateY(-1px);
}


/* ---------------------------------------------------------
   10. NO RESULTS
   --------------------------------------------------------- */

.ca-product-search .ca-no-results,
.ca-product-search .no-results {
    width: 100%;

    padding: 35px 25px;

    margin: 10px 0 0;

    border: 1px solid #e1e6ed;
    border-radius: 10px;

    background: #f8fafc;

    color: #667085;

    text-align: center;

    font-size: 16px;
}


/* ---------------------------------------------------------
   11. SEARCH RESULTS SPACING
   --------------------------------------------------------- */

.ca-product-search .ca-search-results,
.ca-product-search .search-results {
    width: 100%;
    box-sizing: border-box;
}


/* ---------------------------------------------------------
   12. TABLET
   --------------------------------------------------------- */

@media (max-width: 1024px) {

    .ca-product-search {
        max-width: 100%;
        padding-left: 24px;
        padding-right: 24px;
    }

    .ca-product-search .ca-product-grid,
    .ca-product-search .products,
    .ca-product-search .ca-products-grid {
        grid-template-columns:
            repeat(3, minmax(0, 1fr));

        gap: 22px;
    }

    .ca-product-search .ca-product-card img,
    .ca-product-search .product-card img {
        height: 210px;
    }

}


/* ---------------------------------------------------------
   13. MOBILE / SMALL TABLET
   --------------------------------------------------------- */

@media (max-width: 767px) {

    .ca-product-search {
        padding-left: 18px;
        padding-right: 18px;
    }


    /* Search form */

    .ca-product-search-form {
        flex-direction: column;
        gap: 10px;

        margin-bottom: 32px;
    }


    .ca-product-search-form input[type="search"],
    .ca-product-search-form input[type="text"] {
        width: 100%;
        height: 52px;

        border: 1px solid #d9e0e8;
        border-radius: 7px;

        font-size: 15px;
    }


    .ca-product-search-form button,
    .ca-product-search-form input[type="submit"] {
        width: 100%;
        height: 52px;

        flex: none;

        border-radius: 7px;
    }


    /* Results heading */

    .ca-product-search h2,
    .ca-product-search .ca-search-results-title {
        display: block;

        font-size: 25px;

        margin-bottom: 22px;
    }


    .ca-product-search h2 span,
    .ca-product-search .ca-search-count {
        display: block;

        margin-top: 6px;

        font-size: 14px;
    }


    /* Grid */

    .ca-product-search .ca-product-grid,
    .ca-product-search .products,
    .ca-product-search .ca-products-grid {
        grid-template-columns: 1fr;

        gap: 20px;
    }


    /* Card image */

    .ca-product-search .ca-product-card img,
    .ca-product-search .product-card img {
        height: 240px;
    }


    /* Card */

    .ca-product-search .ca-product-card-content,
    .ca-product-search .product-card-content {
        padding: 18px;
    }


    /* Title */

    .ca-product-search .ca-product-card h3,
    .ca-product-search .product-card h3 {
        font-size: 18px;
    }

}


/* ---------------------------------------------------------
   14. VERY SMALL MOBILE
   --------------------------------------------------------- */

@media (max-width: 480px) {

    .ca-product-search {
        padding-left: 14px;
        padding-right: 14px;
    }


    .ca-product-search .ca-product-card img,
    .ca-product-search .product-card img {
        height: 220px;
    }


    .ca-product-search .ca-product-card-content,
    .ca-product-search .product-card-content {
        padding: 16px;
    }


    .ca-product-search .ca-product-card h3,
    .ca-product-search .product-card h3 {
        font-size: 17px;
    }

}


/* =========================================================
   END — PRODUCT SEARCH CSS
   ========================================================= */
/* =========================================================
   CENTRAL AUTOMATION
   PRODUCT SEARCH RESULTS + PRODUCT CARD
   ========================================================= */

/* ---------------------------------------------------------
   PRODUCT SEARCH RESULTS WRAPPER
   --------------------------------------------------------- */

.ca-product-search-results {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 20px 70px;
    box-sizing: border-box;
}


/* ---------------------------------------------------------
   SEARCH RESULTS HEADING
   --------------------------------------------------------- */

.ca-search-results-heading {
    width: 100%;
    margin: 0 0 30px;
    color: #10213b;
    line-height: 1.3;
}

.ca-search-results-heading strong {
    display: inline-block;
    margin-right: 8px;
    color: #10213b;
    font-size: 30px;
    font-weight: 700;
}

.ca-search-results-heading span {
    color: #667085;
    font-size: 15px;
}


/* ---------------------------------------------------------
   PRODUCT GRID
   --------------------------------------------------------- */

/*
 * Semua .ca-card di dalam hasil pencarian
 * otomatis menjadi grid.
 *
 * Desktop  : 4 kolom
 * Laptop   : 3 kolom
 * Tablet   : 2 kolom
 * Mobile   : 1 kolom
 */

.ca-product-search-results {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 28px;
    align-items: stretch;
}


/*
 * Heading harus mengambil seluruh lebar.
 */

.ca-product-search-results .ca-search-results-heading {
    grid-column: 1 / -1;
}


/* ---------------------------------------------------------
   PRODUCT CARD
   --------------------------------------------------------- */

.ca-product-search-results .ca-card {
    width: 100%;
    max-width: none;
    margin: 0;
    padding: 0;

    display: flex;
    flex-direction: column;

    background: #ffffff;
    border: 1px solid #e3e8ef;
    border-radius: 12px;

    overflow: hidden;
    box-sizing: border-box;

    box-shadow: 0 5px 20px rgba(16, 33, 59, 0.07);

    transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
}


/* Hover card */

.ca-product-search-results .ca-card:hover {
    transform: translateY(-5px);

    border-color: #d2dbe7;

    box-shadow:
        0 14px 35px rgba(16, 33, 59, 0.13);
}


/* ---------------------------------------------------------
   PRODUCT IMAGE
   --------------------------------------------------------- */

.ca-product-search-results .ca-card-image {
    display: block;

    width: 100%;
    height: 230px;

    overflow: hidden;

    background: #f6f8fa;

    text-decoration: none;
}


.ca-product-search-results .ca-card-image img {
    display: block;

    width: 100%;
    height: 100%;

    padding: 12px;

    box-sizing: border-box;

    object-fit: contain;
    object-position: center;

    background: #f6f8fa;

    transition: transform 0.3s ease;
}


.ca-product-search-results .ca-card:hover .ca-card-image img {
    transform: scale(1.04);
}


/* ---------------------------------------------------------
   NO IMAGE
   --------------------------------------------------------- */

.ca-product-search-results .ca-no-image {
    display: flex;

    align-items: center;
    justify-content: center;

    width: 100%;
    height: 100%;

    padding: 20px;

    box-sizing: border-box;

    color: #8a94a6;

    font-size: 13px;
    font-weight: 600;

    text-align: center;

    background: #f6f8fa;
}


/* ---------------------------------------------------------
   PRODUCT BODY
   --------------------------------------------------------- */

.ca-product-search-results .ca-card-body {
    display: flex;
    flex-direction: column;

    flex: 1;

    min-height: 245px;

    padding: 20px;

    box-sizing: border-box;
}


/* ---------------------------------------------------------
   BRAND
   --------------------------------------------------------- */

.ca-product-search-results .ca-card-brand {
    margin: 0 0 9px;

    color: #667085;

    font-size: 12px;
    line-height: 1.3;

    font-weight: 700;

    letter-spacing: 0.8px;

    text-transform: uppercase;
}


/* ---------------------------------------------------------
   PRODUCT TITLE
   --------------------------------------------------------- */

.ca-product-search-results .ca-card-body h3 {
    margin: 0 0 13px;
    padding: 0;

    color: #10213b;

    font-size: 17px;
    line-height: 1.4;

    font-weight: 700;
}


.ca-product-search-results .ca-card-body h3 a {
    color: inherit;
    text-decoration: none;
}


.ca-product-search-results .ca-card-body h3 a:hover {
    color: #e92f34;
}


/* ---------------------------------------------------------
   PRODUCT TYPE
   --------------------------------------------------------- */

.ca-product-search-results .ca-type {
    margin: 0 0 8px;

    color: #526174;

    font-size: 14px;
    line-height: 1.5;
}


/* ---------------------------------------------------------
   PART NUMBER
   --------------------------------------------------------- */

.ca-product-search-results .ca-part {
    margin: 0 0 14px;

    color: #667085;

    font-size: 13px;
    line-height: 1.5;
}


.ca-product-search-results .ca-part strong {
    color: #344054;
    font-weight: 700;
}


/* ---------------------------------------------------------
   SOLUTION BADGES
   --------------------------------------------------------- */

.ca-product-search-results .ca-badges {
    display: flex;
    flex-wrap: wrap;

    gap: 6px;

    margin: 0 0 18px;
}


.ca-product-search-results .ca-badge {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    min-height: 24px;

    padding: 4px 8px;

    box-sizing: border-box;

    border-radius: 5px;

    background: #eef2f6;

    color: #344054;

    font-size: 10px;
    line-height: 1.2;

    font-weight: 700;

    letter-spacing: 0.2px;

    text-transform: uppercase;
}


/* ---------------------------------------------------------
   CARD BUTTONS
   --------------------------------------------------------- */

.ca-product-search-results .ca-card-body .ca-btn {
    display: inline-flex;

    align-items: center;
    justify-content: center;

    width: 100%;
    min-height: 44px;

    padding: 10px 14px;

    box-sizing: border-box;

    border-radius: 6px;

    font-size: 13px;
    line-height: 1.2;

    font-weight: 700;

    text-align: center;

    text-decoration: none;

    transition:
        background 0.2s ease,
        color 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;
}


/* Primary button */

.ca-product-search-results .ca-btn-primary {
    margin-top: auto;

    background: #10213b;
    color: #ffffff;

    border: 1px solid #10213b;
}


.ca-product-search-results .ca-btn-primary:hover {
    background: #1c355a;
    color: #ffffff;

    transform: translateY(-1px);
}


/* Outline button */

.ca-product-search-results .ca-btn-outline {
    margin-top: 8px;

    background: #ffffff;
    color: #10213b;

    border: 1px solid #cbd5e1;
}


.ca-product-search-results .ca-btn-outline:hover {
    background: #f3f6f9;

    color: #10213b;

    border-color: #10213b;
}


/* =========================================================
   LAPTOP
   3 COLUMNS
   ========================================================= */

@media (max-width: 1100px) {

    .ca-product-search-results {
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 24px;
    }

}


/* =========================================================
   TABLET
   2 COLUMNS
   ========================================================= */

@media (max-width: 767px) {

    .ca-product-search-results {
        grid-template-columns: repeat(2, minmax(0, 1fr));

        gap: 20px;

        padding-left: 15px;
        padding-right: 15px;
    }


    .ca-product-search-results .ca-card-image {
        height: 210px;
    }


    .ca-product-search-results .ca-card-body {
        min-height: 230px;
        padding: 17px;
    }


    .ca-product-search-results .ca-card-body h3 {
        font-size: 16px;
    }

}


/* =========================================================
   MOBILE
   1 COLUMN
   ========================================================= */

@media (max-width: 520px) {

    .ca-product-search-results {
        grid-template-columns: 1fr;

        gap: 22px;
    }


    .ca-product-search-results .ca-card-image {
        height: 240px;
    }


    .ca-product-search-results .ca-card-body {
        min-height: auto;
        padding: 18px;
    }


    .ca-product-search-results .ca-card-body h3 {
        font-size: 17px;
    }

}


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

@media (max-width: 380px) {

    .ca-product-search-results {
        padding-left: 12px;
        padding-right: 12px;
    }


    .ca-product-search-results .ca-card-image {
        height: 220px;
    }

}