/* =========================================
   SOLUTION DETAIL PAGE SPECIFIC STYLES
   ========================================= */

/* Hero Overrides */
.solution-detail-hero {
    padding-top: 65px; /* Naikkan sedikit (kurangi padding atas) */
    padding-bottom: 60px; /* Padding bawah normal */
    min-height: auto; /* Hilangkan min-height 100vh agar tidak memanjang ke bawah */
    display: block; /* Hilangkan flexbox agar jadi section biasa */
}
.solution-detail-hero .hero-container {
    max-width: 1380px; /* Atur lebar container keseluruhan jadi lebih lebar */
}
.solution-detail-hero .hero-content {
    max-width: 900px; /* Lebarkan lagi teksnya! */
}

/* Fix Hero Buttons to exactly match Our Solution */
.solution-detail-hero .hero-actions .btn {
    border-radius: var(--radius-md) !important; /* 16px */
    padding: 12px 24px !important;
    font-size: 0.95rem !important;
}
.solution-detail-hero .hero-actions .btn-primary {
    background-color: var(--primary) !important;
    color: var(--text-light) !important;
}
.solution-detail-hero .hero-actions .btn-primary:hover {
    background-color: var(--primary-hover) !important;
    transform: translateY(-2px) !important;
    box-shadow: var(--shadow-lg) !important;
}
.solution-detail-hero .hero-actions .btn-secondary {
    background-color: transparent !important;
    color: var(--bg-dark) !important; /* Deep Green #042D68 */
    border: 1.5px solid var(--bg-dark) !important;
}
.solution-detail-hero .hero-actions .btn-secondary:hover {
    background-color: var(--primary-light) !important;
    transform: translateY(-2px) !important;
}

/* Pain Points Section */
.solution-detail-pain-section {
    background-color: transparent;
    padding: 10px 0;
}
.solution-detail-pain-section .solution-container {
    background-color: #FFFFFF;
    border: 2px solid #FFE9D1;
    border-radius: 24px;
    padding: 18px 22px 22px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.02);
}
.pain-section-header {
    margin-bottom: 12px;
}
.pain-section-title {
    font-size: 1.8rem;
    color: var(--primary); /* Solid Red */
    font-weight: 700;
    margin: 0;
    padding: 0;
    line-height: 1.15;
}
.pain-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 12px;
}
.pain-card {
    background-color: #FFF6ED;
    border-radius: 16px;
    border: 2px solid #FFE9D1;
    padding: 14px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.03);
    position: relative;
    display: flex;
    flex-direction: column;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    will-change: transform;
}

.pain-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 24px rgba(255, 233, 209, 0.95);
}
.pain-image-wrapper {
    position: relative;
    height: 148px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 10px;
}
.pain-number {
    position: absolute;
    top: 0;
    left: 0;
    background-color: var(--primary); /* Red */
    color: white;
    width: 32px;
    height: 32px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    font-weight: 700;
    font-size: 0.9rem;
    z-index: 2;
}
.pain-main-img {
    max-height: 132px;
    object-fit: contain;
}
.pain-content {
    flex-grow: 1;
    display: grid;
    grid-template-rows: auto auto;
    align-content: start;
    gap: 8px;
}
.pain-emoji {
    position: absolute;
    bottom: -10px;
    right: -10px;
    width: 40px;
    height: 40px;
    z-index: 2;
}
.pain-title {
    font-size: 1rem;
    font-weight: 700;
    color: #042D68;
    margin: 0;
    line-height: 1.32;
    display: flex;
    align-items: flex-start;
}
.pain-desc {
    font-size: 0.86rem;
    color: #042D68;
    line-height: 1.42;
    margin: 0;
}

/* Benefits Section */
.solution-detail-benefits-section {
    background-color: transparent;
    padding: 10px 0 22px;
}
.solution-detail-benefits-section .solution-container {
    background-color: #FFFFFF;
    border: 2px solid #FFE9D1;
    border-radius: 24px;
    padding: 18px 22px 22px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.02);
}
.benefits-section-header {
    margin-bottom: 12px;
}
.benefits-section-title {
    font-size: 1.8rem;
    color: var(--primary); /* Solid Red */
    font-weight: 700;
    margin: 0;
    padding: 0;
    line-height: 1.15;
}
.benefits-grid {
    display: grid;
    grid-template-columns: repeat(6, minmax(0, 1fr));
    gap: 12px;
}
.benefit-card {
    background-color: #FFF6ED;
    border-radius: 16px;
    border: 2px solid #FFE9D1;
    padding: 12px;
    box-shadow: 0 4px 12px rgba(0,0,0,0.03);
    position: relative;
    display: flex;
    flex-direction: column;
    min-height: 126px;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    will-change: transform;
}

.benefit-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 24px rgba(255, 233, 209, 0.95);
}
.benefit-header {
    display: flex;
    align-items: flex-start;
    gap: 8px;
    margin-bottom: 8px;
    min-height: 58px;
}
.benefit-icon {
    width: 40px;
    height: 40px;
    object-fit: contain;
    margin-right: 0;
    flex-shrink: 0;
    margin-top: 2px;
}
.benefit-title {
    font-size: 0.9rem;
    font-weight: 700;
    color: #042D68;
    line-height: 1.24;
}
.benefit-desc {
    font-size: 0.86rem;
    color: #042D68;
    line-height: 1.42;
    margin: 0;
}

/* Responsive adjustments */
@media (max-width: 992px) {
    .pain-grid {
        grid-template-columns: repeat(2, 1fr);
    }
    .benefits-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 576px) {
    .pain-grid {
        grid-template-columns: 1fr;
    }
    .benefits-grid {
        grid-template-columns: 1fr;
    }
    .pain-section-title, .benefits-section-title {
        font-size: 1.5rem;
    }
}

/* Trust Section */
.solution-detail-trust-section {
    background-color: transparent;
    padding: 4px 0 20px 0; /* Sedikit dinaikkan lagi (top padding dikurangi) */
}
.solution-detail-trust-section .solution-container {
    background-color: #DB5D00; /* Dark Red */
    padding: 24px 32px 32px 32px; /* Top padding dikurangi sedikit banget lagi agar teksnya naik */
    color: #FFFFFF;
    border-radius: 24px; /* Bulatkan semua sudut */
    box-shadow: 0 10px 30px rgba(0,0,0,0.02);
}
.trust-section-header {
    margin-bottom: 24px; /* Disamakan dengan header atasnya */
    padding: 0; 
}
.trust-section-title {
    font-size: 1.8rem; /* Sedikit dikecilkan */
    color: #FFFFFF;
    font-weight: 700;
    margin: 0;
    padding: 0;
}
.trust-content-wrapper {
    display: flex;
    align-items: stretch; /* Agar tinggi sama untuk border */
    padding: 0 10px;
}
.trust-mascot-col {
    flex: 0 0 180px; /* Fixed width for mascot */
    display: flex;
    justify-content: center;
    align-items: center;
    border-right: 1.5px dotted rgba(255, 255, 255, 0.4); /* Garis batas putus-putus */
    padding-right: 16px;
}
    justify-content: center;
}
.trust-mascot-img {
    max-width: 100%;
    height: auto;
    object-fit: contain;
}
.trust-grid-col {
    flex: 1;
    display: flex;
}
.trust-grid {
    display: flex;
    flex: 1;
    justify-content: space-between;
    align-items: stretch; /* Agar border penuh dari atas ke bawah */
}
.trust-card {
    flex: 1;
    min-width: 0; /* Allow text to wrap instead of overflowing */
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 0 12px;
    border-right: 1.5px dotted rgba(255, 255, 255, 0.4); /* Garis batas antar card */
    gap: 8px; /* Jarak antara ikon dan teks */
    justify-content: flex-start; /* Rata atas agar ikon sejajar horizontal sempurna */
}
.trust-card:last-child {
    border-right: none; /* Card terakhir tidak ada border kanan */
}
.trust-icon {
    width: 44px; /* Ikon dibesarkan sedikit */
    height: 44px;
    object-fit: contain;
    flex-shrink: 0; /* Mencegah ikon menyusut */
}
.trust-title {
    font-size: 0.8rem; /* Dikecilkan agar muat banyak kolom */
    font-weight: 700;
    line-height: 1.3;
}
.trust-desc {
    font-size: 0.8rem;
    color: #FFD2CD; /* Light pinkish text for description */
    line-height: 1.4;
    margin: 0;
}

/* Detail Solution gets its own trust layout, separated from Our Solution. */
.solution-detail-trust-widget-section .solution-container {
    padding: 28px 32px 30px;
}

.solution-detail-trust-widget-section .trust-section-header {
    margin-bottom: 22px;
}

.solution-detail-trust-widget-section .trust-section-title {
    font-size: 1.9rem;
    line-height: 1.15;
}

.solution-detail-trust-widget-section .trust-content-wrapper {
    display: grid;
    grid-template-columns: 210px minmax(0, 1fr);
    align-items: stretch;
    gap: 26px;
    padding: 0;
}

.solution-detail-trust-widget-section .trust-mascot-col {
    flex: none;
    min-width: 0;
    border-right: 1.5px dotted rgba(255, 255, 255, 0.32);
    padding: 0 24px 0 0;
    margin: 0;
    align-items: center;
}

.solution-detail-trust-widget-section .trust-mascot-img {
    width: min(100%, 190px);
}

.solution-detail-trust-widget-section .trust-grid-col {
    display: block;
    min-width: 0;
}

.solution-detail-trust-widget-section .trust-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 14px;
    align-items: stretch;
    justify-content: stretch;
}

.solution-detail-trust-widget-section .trust-card {
    flex: none;
    min-width: 0;
    padding: 14px 12px;
    gap: 8px;
    border: 1px solid rgba(255, 255, 255, 0.18);
    border-radius: 14px;
    background: rgba(255, 255, 255, 0.06);
    box-sizing: border-box;
    justify-content: flex-start;
}

.solution-detail-trust-widget-section .trust-card:nth-child(3n) {
    border-right: 1px solid rgba(255, 255, 255, 0.18);
}

.solution-detail-trust-widget-section .trust-card:last-child {
    border-right: 1px solid rgba(255, 255, 255, 0.18);
}

.solution-detail-trust-widget-section .trust-icon {
    width: 46px;
    height: 46px;
}

.solution-detail-trust-widget-section .trust-title {
    font-size: 0.9rem;
    line-height: 1.25;
}

.solution-detail-trust-widget-section .trust-desc {
    font-size: 0.82rem;
    line-height: 1.38;
}

/* Responsive adjustments for Trust */
@media (max-width: 1100px) {
    .trust-card {
        flex: 1 1 20%;
    }

    .solution-detail-trust-widget-section .trust-content-wrapper {
        grid-template-columns: 190px minmax(0, 1fr);
    }

    .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}
@media (max-width: 768px) {
    .trust-content-wrapper {
        flex-direction: column;
    }
    .trust-mascot-col {
        flex: 0 0 auto;
        margin-bottom: 30px;
    }
    .trust-card {
        flex: 1 1 30%;
    }

    .solution-detail-trust-widget-section .trust-content-wrapper {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .solution-detail-trust-widget-section .trust-mascot-col {
        border-right: 0;
        border-bottom: 1.5px dotted rgba(255, 255, 255, 0.4);
        padding: 0 0 18px;
        justify-content: center;
    }

    .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}
@media (max-width: 480px) {
    .trust-card {
        flex: 1 1 45%;
    }
    .solution-detail-trust-section {
        margin: 0;
        border-radius: 0;
    }

    .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: 1fr;
    }

}

/* Memaksa wrapper bawaan Elementor agar tidak mengunci tinggi */
.elementor-widget-wibu_solution_detail_products,
.elementor-widget-wibu_solution_detail_products .elementor-widget-container {
    height: auto !important;
    min-height: min-content !important;
    overflow: visible !important;
}

/* Products Recommendation Section */
.solution-detail-products-section {
    background-color: transparent;
    padding: 20px 0;
    height: auto !important; /* Paksa agar selalu mengikuti isi konten */
    min-height: min-content !important;
    overflow: visible !important;
}
.solution-detail-products-section .solution-container {
    background-color: #FFFFFF;
    border: 2px solid #FFE9D1;
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.02);
    height: auto !important; /* Paksa agar pembungkus memanjang ke bawah otomatis */
    min-height: min-content !important;
    display: block !important; /* Kembalikan ke block agar tidak ada flex stretching */
    overflow: visible !important;
}
.products-section-header {
    margin-bottom: 24px;
    padding: 0;
}
.products-section-title {
    font-size: 2rem;
    color: var(--primary); /* Solid Red */
    font-weight: 700;
    margin: 0;
    padding: 0;
}
.products-rec-grid {
    display: grid;
    grid-template-columns: repeat(5, 1fr);
    gap: 16px;
    align-content: start; /* Mencegah baris kartu menyebar ke bawah jika tinggi container ditarik oleh Elementor */
    align-items: stretch;
}
/* Menyembunyikan tag <p> atau <br> kosong yang mungkin disuntikkan oleh WordPress wpautop dan merusak urutan grid */
.products-rec-grid > p,
.products-rec-grid > br {
    display: none !important;
}
.product-rec-card {
    background-color: #FFF6ED;
    border-radius: 16px;
    border: 2px solid #FFE9D1;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    will-change: transform;
}

.product-rec-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 24px rgba(255, 233, 209, 0.95);
}
.product-rec-img-wrapper {
    flex: 0 0 50px;
}
.product-rec-img {
    width: 100%;
    height: auto;
    object-fit: contain;
}
.product-rec-content {
    flex: 1;
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.product-rec-title {
    font-size: 0.9rem;
    font-weight: 700;
    color: #1A1A1A;
    margin: 0;
}
.product-rec-tags {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
}
.product-tag {
    font-size: 0.65rem;
    font-weight: 600;
    padding: 2px 8px;
    border: 1px solid;
    border-radius: 12px;
    display: inline-block;
}
@media (max-width: 1200px) {
    .products-rec-grid {
        grid-template-columns: repeat(4, 1fr);
    }
}
@media (max-width: 992px) {
    .products-rec-grid {
        grid-template-columns: repeat(3, 1fr);
    }
}
@media (max-width: 768px) {
    .products-rec-grid {
        grid-template-columns: repeat(2, 1fr);
    }
}
@media (max-width: 480px) {
    .products-rec-grid {
        grid-template-columns: 1fr;
    }
}

/* CTA Form Section */
.solution-detail-cta-section {
    background-color: transparent;
    padding: 16px 0 0;
    position: relative;
}
.cta-decorative-line {
    display: none !important; /* Dihapus sesuai permintaan */
}
.solution-detail-cta-section .solution-container {
    background-color: #DB5D00;
    border-radius: 24px;
    padding: 32px; /* Disamakan dengan trust container */
    color: #FFFFFF;
    box-shadow: 0 10px 30px rgba(0,0,0,0.1);
}

body.parent-pageid-166 .main-footer {
    margin-top: 34px;
}

body.parent-pageid-166 .solution-detail-cta-section {
    padding-bottom: 0;
}
.cta-wrapper {
    display: flex;
    gap: 24px; /* Dikurangi agar kolom kanan lebih luas */
    align-items: center;
}
.cta-left-col {
    flex: 0 0 40%; /* Dikecilkan sedikit agar kolom kanan muat 1 baris */
    display: flex;
    flex-direction: row; /* Berdampingan */
    align-items: center;
    gap: 16px; /* Gap teks dan maskot disesuaikan */
    min-width: 0; /* Cegah flex overflow */
}
.cta-mascot-img {
    width: 155px; /* Dibesarkan lagi */
    flex: 0 0 155px;
    height: auto;
    object-fit: contain;
    margin-top: -30px; /* Panjangkan ke atas (ditarik naik) */
    margin-left: -20px; /* Geser ke kiri */
}
.cta-left-content {
    flex: 1;
    min-width: 0; /* Penting agar teks panjang bisa di-wrap dan tidak bablas ke kanan */
}
.cta-left-content h2 {
    font-size: 1.4rem; /* Sesuai desain */
    font-weight: 700;
    margin: 0 0 8px 0;
    line-height: 1.3;
    color: #FFFFFF;
}
.cta-left-content p {
    font-size: 0.85rem;
    opacity: 0.9;
    margin: 0;
    line-height: 1.4;
}
.cta-right-col {
    flex: 1;
    min-width: 0; /* Cegah flex overflow */
}
.custom-solution-form {
    display: flex;
    flex-direction: column;
    gap: 16px;
}
.form-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* 3 Kolom presisi */
    gap: 16px;
}
.form-group {
    display: flex;
    flex-direction: column;
    gap: 6px;
}
.form-group label {
    font-size: 0.75rem;
    font-weight: 500;
    color: #FFFFFF;
}
.form-control {
    width: 100%;
    padding: 10px 12px;
    border-radius: 8px;
    border: none;
    font-size: 0.85rem;
    color: #333;
    background-color: #FFFFFF;
}
.solution-cta-select {
    position: relative;
    width: 100%;
}
.solution-cta-select-trigger {
    text-align: left;
    cursor: pointer;
    appearance: none;
    position: relative;
}
.solution-cta-select-trigger::after {
    content: "\f107";
    font-family: "Font Awesome 6 Free", "Font Awesome 5 Free";
    font-weight: 900;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    color: #777;
    pointer-events: none;
}
.solution-cta-select.is-open .solution-cta-select-trigger::after {
    transform: translateY(-50%) rotate(180deg);
}
.solution-cta-select-menu {
    position: absolute;
    top: calc(100% + 6px);
    left: 0;
    right: 0;
    z-index: 30;
    max-height: 190px;
    overflow-y: auto;
    display: none;
    background: #fff;
    border: 1px solid #E8D6C5;
    border-radius: 8px;
    box-shadow: 0 14px 30px rgba(0, 0, 0, 0.16);
    padding: 6px;
}
.solution-cta-business-select .solution-cta-select-menu,
.solution-cta-simple-select .solution-cta-select-menu {
    max-height: none;
    overflow-y: visible;
}
.solution-cta-select.is-open .solution-cta-select-menu {
    display: block;
}
.solution-cta-select-menu button {
    width: 100%;
    border: 0;
    background: transparent;
    color: #333;
    text-align: left;
    padding: 9px 10px;
    border-radius: 6px;
    font-size: 0.85rem;
    cursor: pointer;
}
.solution-cta-select-menu button:hover {
    background: #FFF6ED;
    color: #DB5D00;
}
.form-footer-row {
    display: grid;
    grid-template-columns: repeat(3, 1fr); /* Samakan persis dengan form-row 3 kolom */
    gap: 16px;
    align-items: center;
    margin-top: 4px;
}
.form-benefits {
    grid-column: span 2; /* Rentangkan memakan 2 kolom kiri */
    display: flex;
    gap: 6px; /* Dirapatkan agar muat 1 baris */
    font-size: 0.65rem;
    color: #F8B4A6;
    font-weight: 600;
    flex-wrap: wrap;
}
.form-benefits span {
    display: flex;
    align-items: center;
    gap: 4px;
}
.form-benefits i,
.form-benefits svg {
    width: 1em;
    height: 1em;
    font-size: 1em;
    color: #FFFFFF;
    fill: currentColor;
    flex: 0 0 auto;
}
.form-submit-wrapper {
    display: flex;
    justify-content: stretch;
}
.btn-submit-cta {
    width: 100%;
    background-color: #FFFFFF;
    color: #DB5D00;
    border: none;
    padding: 10px 16px;
    border-radius: 8px; /* Disamakan dengan input box */
    font-size: 0.85rem;
    font-weight: 700;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: all 0.3s ease;
}
.btn-submit-cta i {
    background-color: #DB5D00;
    color: #FFFFFF;
    border-radius: 50%;
    padding: 4px;
    font-size: 0.7rem;
}
.btn-submit-cta:hover {
    background-color: #FFF6ED;
    transform: translateY(-2px);
}
@media (max-width: 992px) {
    .cta-wrapper {
        flex-direction: column;
    }
    .cta-left-col {
        flex: none;
        width: 100%;
        text-align: center;
        align-items: center;
    }
    .form-footer-row {
        display: flex; /* Kembali ke flex untuk layar kecil */
        flex-direction: column;
        gap: 20px;
    }
    .form-benefits {
        flex-wrap: wrap;
        justify-content: center;
    }
}
@media (max-width: 768px) {
    .form-row {
        flex-direction: column;
    }
}



/* =========================================================
   NEW ROCK SOLID PRODUCT REC LAYOUT
   ========================================================= */

.elementor-widget-wibu_solution_detail_products,
.elementor-widget-wibu_solution_detail_products .elementor-widget-container {
    height: auto !important;
    min-height: min-content !important;
    overflow: visible !important;
}

/* Detail products now follows the Our Solution suggested-products layout. */
.solution-detail-products-recommendation {
    background: transparent;
    padding: 12px 0 20px;
}

.solution-detail-products-recommendation .solution-container {
    padding-top: 0;
}

.solution-detail-products-recommendation .solution-products-shell {
    background: #FFFFFF;
    border: 1px solid #FFE0BE;
    border-radius: 18px;
    padding: 18px;
    box-shadow: 0 12px 30px rgba(255, 183, 93, 0.12);
}

.solution-detail-products-recommendation .solution-products-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 18px;
    margin-bottom: 16px;
}

.solution-detail-products-recommendation .solution-products-heading {
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
}

.solution-detail-products-recommendation .solution-products-step {
    width: 26px;
    height: 26px;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    background: #FE6C01;
    color: #FFFFFF;
    font-size: 0.85rem;
    font-weight: 800;
    flex: 0 0 auto;
}

.solution-detail-products-recommendation .solution-products-title {
    margin: 0;
    color: #042D68;
    font-size: 1.8rem;
    font-weight: 800;
    line-height: 1.15;
}

.solution-detail-products-recommendation .solution-products-badge {
    background: #F5E7D2;
    color: #5C4A35;
    border-radius: 999px;
    padding: 7px 12px;
    font-size: 0.78rem;
    font-weight: 800;
    white-space: nowrap;
}

.solution-detail-products-recommendation .solution-products-helper {
    display: flex;
    align-items: center;
    gap: 8px;
    color: #042D68;
    font-size: 0.82rem;
    font-weight: 700;
    text-align: right;
}

.solution-detail-products-recommendation .solution-products-carousel {
    position: relative;
    overflow: visible;
}

.solution-detail-products-recommendation .solution-products-track {
    --visible-products: 5;
    --product-gap: 12px;
    display: flex;
    gap: var(--product-gap);
    overflow-x: auto;
    scroll-snap-type: x mandatory;
    scroll-behavior: smooth;
    scrollbar-width: none;
    padding: 10px 1px 20px;
    margin: -10px 0 -10px;
}

.solution-detail-products-recommendation .solution-products-track::-webkit-scrollbar {
    display: none;
}

.solution-detail-products-recommendation .solution-products-track.count-1 { --visible-products: 1; }
.solution-detail-products-recommendation .solution-products-track.count-2 { --visible-products: 2; }
.solution-detail-products-recommendation .solution-products-track.count-3 { --visible-products: 3; }
.solution-detail-products-recommendation .solution-products-track.count-4 { --visible-products: 4; }

.solution-detail-products-recommendation .solution-product-card {
    background: #FFFFFF;
    border: 1px solid #F3E2CE;
    border-radius: 12px;
    padding: 0;
    min-height: 270px;
    overflow: hidden;
    flex: 0 0 calc((100% - (var(--product-gap) * (var(--visible-products) - 1))) / var(--visible-products));
    scroll-snap-align: start;
    display: flex;
    flex-direction: column;
    color: inherit;
    text-decoration: none;
    transition: transform 0.2s ease, box-shadow 0.2s ease;
}

.solution-detail-products-recommendation .solution-product-card:hover {
    transform: translateY(-4px);
    box-shadow: 0 16px 30px rgba(255, 183, 93, 0.28);
}

.solution-detail-products-recommendation .solution-product-image {
    width: 100%;
    aspect-ratio: 1.12 / 1;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 14px;
    overflow: hidden;
    border-radius: 12px 12px 0 0;
    background: #F6F8F8;
    box-shadow: 0 4px 10px rgba(255, 233, 209, 0.35);
}

.solution-detail-products-recommendation .solution-product-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.solution-detail-products-recommendation .solution-product-card h3 {
    color: #042D68;
    font-size: 0.98rem;
    font-weight: 800;
    margin: 0 12px 12px;
    min-height: 2.45em;
}

.solution-detail-products-recommendation .solution-product-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 6px;
    margin-top: auto;
    padding: 0 12px 14px;
}

.solution-detail-products-recommendation .solution-product-tags span {
    background: #EEF5FF;
    border-radius: 6px;
    padding: 6px 8px;
    font-size: 0.72rem;
    font-weight: 800;
}

.solution-detail-products-recommendation .solution-product-tags span:nth-child(2n) {
    background: #EFF9FF;
}

.solution-detail-products-recommendation .solution-product-tags .tag-primary {
    background: #EFF9FF;
}

.solution-detail-products-recommendation .solution-product-tags .tag-secondary {
    background: #EEF5FF;
}

.solution-detail-products-recommendation .solution-products-arrow {
    position: absolute;
    top: 50%;
    z-index: 4;
    width: 38px;
    height: 38px;
    border: 1px solid #F3D8BE;
    border-radius: 50%;
    background: #FFFFFF;
    color: #FE6C01;
    display: none;
    place-items: center;
    box-shadow: 0 10px 24px rgba(0, 0, 0, 0.1);
    cursor: pointer;
    transform: translateY(-50%);
}

.solution-detail-products-recommendation .solution-products-carousel.has-arrows .solution-products-arrow,
.solution-detail-products-recommendation [data-detail-products-carousel].has-arrows .solution-products-arrow {
    display: grid !important;
    align-items: center;
    justify-items: center;
}

.solution-detail-products-recommendation .solution-products-arrow:hover {
    background: #FE6C01;
    color: #FFFFFF;
}

.solution-detail-products-recommendation .solution-products-arrow-prev {
    left: -19px;
}

.solution-detail-products-recommendation .solution-products-arrow-next {
    right: -19px;
}

body.parent-pageid-166 .solution-detail-products-recommendation [data-detail-products-carousel].has-arrows .solution-products-arrow {
    display: grid !important;
}

.solution-detail-products-recommendation .solution-products-note {
    margin-top: 14px;
    background: #FFF7EA;
    border: 1px solid #FFE0BE;
    border-radius: 10px;
    padding: 12px 14px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 16px;
}

.solution-detail-products-recommendation .solution-products-note-text {
    display: flex;
    align-items: center;
    gap: 10px;
    color: #042D68;
    font-size: 0.85rem;
    font-weight: 700;
}

.solution-detail-products-recommendation .solution-products-note-text i {
    width: 22px;
    height: 22px;
    border: 1px solid #FFC881;
    border-radius: 50%;
    display: inline-grid;
    place-items: center;
    color: #F39A22;
    font-size: 0.75rem;
    flex: 0 0 auto;
}

.solution-detail-products-recommendation .solution-products-cta {
    min-width: 170px;
    height: 44px;
    border: 1px solid #FE6C01;
    border-radius: 8px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    color: #FE6C01;
    background: #FFFFFF;
    text-decoration: none;
    font-size: 0.88rem;
    font-weight: 800;
}

.solution-detail-products-recommendation .solution-products-cta:hover {
    background: #FE6C01;
    color: #FFFFFF;
}

@media (max-width: 768px) {
    .solution-detail-products-recommendation .solution-products-header,
    .solution-detail-products-recommendation .solution-products-note {
        flex-direction: column;
        align-items: flex-start;
    }

    .solution-detail-products-recommendation .solution-products-heading {
        flex-wrap: wrap;
    }

    .solution-detail-products-recommendation .solution-products-helper {
        width: 100%;
        text-align: left;
        justify-content: space-between;
    }

    .solution-detail-products-recommendation .solution-products-track {
        --visible-products: 2;
    }

    .solution-detail-products-recommendation .solution-products-cta {
        width: 100%;
    }
}

@media (max-width: 576px) {
    .solution-detail-products-recommendation .solution-products-shell {
        padding: 16px;
        border-radius: 14px;
    }

    .solution-detail-products-recommendation .solution-products-track {
        --visible-products: 1;
    }

    .solution-detail-products-recommendation .solution-product-card {
        min-height: 0;
    }

    .solution-detail-products-recommendation .solution-product-image {
        aspect-ratio: 1.18 / 1;
    }

    .solution-detail-products-recommendation .solution-products-title {
        font-size: 1.2rem;
    }

    .solution-detail-products-recommendation .solution-products-badge {
        display: none !important;
    }

    .solution-detail-products-recommendation .solution-products-carousel.has-arrows .solution-products-arrow,
    .solution-detail-products-recommendation [data-detail-products-carousel] .solution-products-arrow {
        display: grid !important;
        width: 38px;
        height: 38px;
        top: 50%;
    }

    .solution-detail-products-recommendation .solution-products-arrow-prev {
        left: -18px;
    }

    .solution-detail-products-recommendation .solution-products-arrow-next {
        right: -18px;
    }
}

.wibu-rec-section {
    background-color: transparent;
    padding: 20px 0;
    height: auto !important;
    overflow: visible !important;
}

.wibu-rec-container {
    max-width: 1300px;
    margin: 0 auto;
    background-color: #FFFFFF;
    border: 2px solid #FFE9D1;
    border-radius: 24px;
    padding: 32px;
    box-shadow: 0 10px 30px rgba(0,0,0,0.02);
    display: block !important;
    height: auto !important;
    overflow: visible !important;
}

.wibu-rec-header {
    margin-bottom: 24px;
    padding: 0;
}

.wibu-rec-header-title {
    font-size: 2rem;
    color: var(--primary); /* Solid Red */
    font-weight: 700;
    margin: 0;
    padding: 0;
}

.wibu-rec-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    gap: 16px;
    align-items: stretch;
}

.wibu-rec-grid-3 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.wibu-rec-grid-4 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.wibu-rec-grid-5 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
}

.wibu-rec-grid-3.wibu-rec-count-7 .wibu-rec-card:last-child {
    grid-column: 2;
}

.wibu-rec-card {
    background-color: #FFF6ED;
    border-radius: 16px;
    border: 2px solid #FFE9D1;
    padding: 16px;
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    box-sizing: border-box;
    margin: 0 !important;
    transition: transform 0.3s ease, box-shadow 0.3s ease, border-color 0.3s ease;
    will-change: transform;
}

.wibu-rec-card:hover {
    transform: translateY(-5px);
    box-shadow: 0 14px 24px rgba(255, 233, 209, 0.95);
}

.wibu-rec-img-wrap {
    flex: 0 0 78px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.wibu-rec-img {
    width: 100%;
    max-height: 78px;
    height: auto;
    object-fit: contain;
    border-radius: 4px;
}

.wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-card {
    gap: 22px;
    padding: 20px 22px;
}

.wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-img-wrap {
    flex-basis: 104px;
}

.wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-img {
    max-height: 104px;
}

.wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-item-title {
    font-size: 1.08rem !important;
}

.wibu-rec-content {
    display: flex;
    flex-direction: column;
    gap: 8px;
    flex-grow: 1;
}

.wibu-rec-item-title {
    font-size: 1rem !important;
    color: #333333;
    font-weight: 700;
    margin: 0;
    line-height: 1.2;
}

.wibu-rec-tags {
    display: flex;
    flex-direction: column;
    gap: 6px;
    align-items: flex-start;
}

.wibu-rec-tag {
    font-size: 0.75rem;
    font-weight: 600;
    padding: 2px 8px;
    border-radius: 12px;
    border: 1px solid;
    display: inline-block;
    white-space: nowrap;
}

@media (max-width: 1200px) {
    .wibu-rec-grid,
    .wibu-rec-grid-5 {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}
@media (max-width: 992px) {
    .wibu-rec-grid,
    .wibu-rec-grid-4,
    .wibu-rec-grid-5 {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .wibu-rec-grid-3.wibu-rec-count-7 .wibu-rec-card:last-child {
        grid-column: 2;
    }
}
@media (max-width: 768px) {
    .wibu-rec-grid,
    .wibu-rec-grid-3,
    .wibu-rec-grid-4,
    .wibu-rec-grid-5 {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .wibu-rec-grid-3.wibu-rec-count-7 .wibu-rec-card:last-child {
        grid-column: 1 / -1;
        max-width: calc(50% - 8px);
        width: 100%;
        justify-self: center;
    }

    .wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-card {
        gap: 16px;
        padding: 16px;
    }

    .wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-img-wrap {
        flex-basis: 82px;
    }

    .wibu-rec-grid-3.wibu-rec-count-6 .wibu-rec-img {
        max-height: 82px;
    }
}
@media (max-width: 480px) {
    .wibu-rec-grid,
    .wibu-rec-grid-3,
    .wibu-rec-grid-4,
    .wibu-rec-grid-5 {
        grid-template-columns: 1fr;
    }

    .wibu-rec-grid-3.wibu-rec-count-7 .wibu-rec-card:last-child {
        grid-column: auto;
        max-width: none;
        justify-self: stretch;
    }
}

@media (max-width: 768px) {
    html:has(body.parent-pageid-166),
    body.parent-pageid-166,
    body.parent-pageid-166 #page,
    body.parent-pageid-166 .site,
    body.parent-pageid-166 .elementor,
    body.parent-pageid-166 .elementor-section,
    body.parent-pageid-166 .elementor-container,
    body.parent-pageid-166 .elementor-column,
    body.parent-pageid-166 .elementor-widget-wrap,
    body.parent-pageid-166 .elementor-widget,
    body.parent-pageid-166 .elementor-widget-container {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
        overflow-x: clip !important;
    }

    body.parent-pageid-166 .solution-detail-hero {
        margin-top: 0 !important;
        padding-top: 52px !important;
        padding-bottom: 18px !important;
        overflow: visible !important;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-container,
    body.parent-pageid-166 .solution-detail-hero .hero-content,
    body.parent-pageid-166 .solution-detail-hero .hero-mascot,
    body.parent-pageid-166 .solution-detail-hero .mascot-wrapper,
    body.parent-pageid-166 .solution-container,
    body.parent-pageid-166 .wibu-rec-container,
    body.parent-pageid-166 .trust-content-wrapper,
    body.parent-pageid-166 .cta-wrapper {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        box-sizing: border-box !important;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-title {
        font-size: 2.3rem !important;
        line-height: 1.08 !important;
        margin-bottom: 20px !important;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-subtitle {
        max-width: 620px !important;
        margin-left: auto !important;
        margin-right: auto !important;
        margin-bottom: 34px !important;
        font-size: 1.15rem !important;
        line-height: 1.65 !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs {
        width: 100% !important;
        max-width: 100% !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        flex-wrap: wrap !important;
        gap: 8px !important;
        margin: 0 auto 18px !important;
        overflow: visible !important;
        scrollbar-width: none;
        white-space: normal !important;
        text-align: center !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs::-webkit-scrollbar {
        display: none;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs a,
    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs .current {
        flex: 0 0 auto !important;
        max-width: 100% !important;
        font-size: 0.84rem !important;
        line-height: 1.25 !important;
        white-space: normal !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs .current {
        flex-basis: 100% !important;
        text-align: center !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs .sep {
        flex: 0 0 auto !important;
        font-size: 0.8rem !important;
        line-height: 1 !important;
    }

    body.parent-pageid-166 .solution-detail-pain-section,
    body.parent-pageid-166 .solution-detail-benefits-section,
    body.parent-pageid-166 .solution-detail-trust-section,
    body.parent-pageid-166 .solution-detail-products-section,
    body.parent-pageid-166 .solution-detail-cta-section,
    body.parent-pageid-166 .wibu-rec-section {
        overflow-x: clip !important;
        padding-left: 16px !important;
        padding-right: 16px !important;
        box-sizing: border-box !important;
    }

    body.parent-pageid-166 .solution-container,
    body.parent-pageid-166 .wibu-rec-container {
        padding: 22px 18px !important;
        border-radius: 18px !important;
        overflow: visible !important;
    }

    body.parent-pageid-166 .pain-section-header {
        margin-bottom: 12px !important;
    }

    body.parent-pageid-166 .pain-section-title {
        font-size: 1.45rem !important;
        line-height: 1.18 !important;
    }

    body.parent-pageid-166 .pain-content {
        grid-template-rows: auto auto;
        gap: 10px;
    }

    body.parent-pageid-166 .pain-image-wrapper {
        height: 140px;
        margin-bottom: 10px;
    }

    body.parent-pageid-166 .pain-main-img {
        max-height: 125px;
    }

    body.parent-pageid-166 .pain-card {
        padding: 15px 14px !important;
    }

    body.parent-pageid-166 .solution-detail-pain-section .solution-container {
        padding: 18px 14px !important;
    }

    body.parent-pageid-166 .solution-detail-benefits-section .solution-container {
        padding: 18px 14px !important;
    }

    body.parent-pageid-166 .benefits-section-header {
        margin-bottom: 12px !important;
    }

    body.parent-pageid-166 .benefits-section-title {
        font-size: 1.45rem !important;
        line-height: 1.18 !important;
    }

    body.parent-pageid-166 .benefit-card {
        min-height: 0 !important;
        padding: 15px 14px !important;
    }

    body.parent-pageid-166 .benefit-header {
        min-height: 0 !important;
        margin-bottom: 8px !important;
        gap: 10px !important;
        align-items: flex-start !important;
    }

    body.parent-pageid-166 .benefit-icon {
        width: 40px !important;
        height: 40px !important;
    }

    body.parent-pageid-166 .benefit-title {
        font-size: 0.95rem !important;
        line-height: 1.26 !important;
    }

    body.parent-pageid-166 .benefit-desc {
        font-size: 0.86rem !important;
        line-height: 1.42 !important;
    }

    body.parent-pageid-166 .solution-detail-trust-section .solution-container {
        overflow: hidden !important;
        padding: 24px 18px !important;
    }

    body.parent-pageid-166 .trust-section-title {
        font-size: 1.55rem !important;
        line-height: 1.18 !important;
    }

    body.parent-pageid-166 .trust-content-wrapper {
        display: grid !important;
        grid-template-columns: 1fr !important;
        gap: 18px !important;
        padding: 0 !important;
    }

    body.parent-pageid-166 .trust-mascot-col {
        border-right: 0 !important;
        border-bottom: 1.5px dotted rgba(255, 255, 255, 0.35) !important;
        padding: 0 0 18px !important;
        margin: 0 !important;
        justify-content: center !important;
    }

    body.parent-pageid-166 .trust-mascot-img {
        width: min(250px, 76vw) !important;
        margin: 0 auto !important;
    }

    body.parent-pageid-166 .trust-grid-col {
        display: block !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    body.parent-pageid-166 .trust-grid {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 0 !important;
        width: 100% !important;
        min-width: 0 !important;
    }

    body.parent-pageid-166 .trust-card {
        min-width: 0 !important;
        width: 100% !important;
        padding: 16px 10px !important;
        border-right: 0 !important;
        border-bottom: 1.5px dotted rgba(255, 255, 255, 0.35) !important;
        box-sizing: border-box !important;
    }

    body.parent-pageid-166 .trust-card:nth-child(odd) {
        border-right: 1.5px dotted rgba(255, 255, 255, 0.35) !important;
    }

    body.parent-pageid-166 .trust-card:nth-last-child(-n + 2) {
        border-bottom: 0 !important;
    }

    body.parent-pageid-166 .trust-title {
        font-size: 0.84rem !important;
    }

    body.parent-pageid-166 .trust-desc {
        font-size: 0.76rem !important;
        line-height: 1.35 !important;
    }

    body.parent-pageid-166 .hero-actions {
        flex-wrap: nowrap !important;
        justify-content: center !important;
        gap: 12px !important;
        width: 100% !important;
    }

    body.parent-pageid-166 .hero-actions .btn {
        flex: 1 1 0 !important;
        min-width: 0 !important;
        white-space: normal !important;
        text-align: center !important;
    }

    body.parent-pageid-166 .mascot-img,
    body.parent-pageid-166 .trust-mascot-img,
    body.parent-pageid-166 .cta-mascot-img {
        max-width: 100% !important;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-mascot {
        margin-top: 22px !important;
        margin-bottom: 0 !important;
        overflow: visible !important;
    }

    body.parent-pageid-166 .solution-detail-hero .mascot-wrapper {
        overflow: visible !important;
    }

    body.parent-pageid-166 .solution-detail-hero .mascot-img {
        width: min(100%, 360px) !important;
        max-height: none !important;
        margin: 0 auto !important;
        transform: none !important;
        object-fit: contain !important;
    }
}

@media (max-width: 480px) {
    body.parent-pageid-166 .solution-detail-hero {
        padding-top: 46px !important;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-title {
        font-size: 2.3rem !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs {
        justify-content: center !important;
        gap: 7px !important;
    }

    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs a,
    body.parent-pageid-166 .solution-detail-hero .solution-breadcrumbs .current {
        font-size: 0.8rem !important;
    }

    body.parent-pageid-166 .solution-detail-pain-section,
    body.parent-pageid-166 .solution-detail-benefits-section,
    body.parent-pageid-166 .solution-detail-trust-section,
    body.parent-pageid-166 .solution-detail-products-section,
    body.parent-pageid-166 .solution-detail-cta-section,
    body.parent-pageid-166 .wibu-rec-section {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    body.parent-pageid-166 .trust-grid {
        grid-template-columns: 1fr !important;
    }

    body.parent-pageid-166 .trust-card,
    body.parent-pageid-166 .trust-card:nth-child(odd),
    body.parent-pageid-166 .trust-card:nth-last-child(-n + 2) {
        border-right: 0 !important;
        border-bottom: 1.5px dotted rgba(255, 255, 255, 0.35) !important;
    }

    body.parent-pageid-166 .trust-card:last-child {
        border-bottom: 0 !important;
    }
}

@media (min-width: 769px) {
    body.parent-pageid-166 .solution-detail-pain-section,
    body.parent-pageid-166 .solution-detail-benefits-section,
    body.parent-pageid-166 .solution-detail-trust-section,
    body.parent-pageid-166 .solution-detail-products-section,
    body.parent-pageid-166 .solution-detail-cta-section,
    body.parent-pageid-166 .wibu-rec-section {
        padding-left: 24px;
        padding-right: 24px;
    }

    body.parent-pageid-166 .solution-container,
    body.parent-pageid-166 .wibu-rec-container {
        width: 100%;
        max-width: 1300px;
        margin-left: auto;
        margin-right: auto;
        box-sizing: border-box;
    }

    body.parent-pageid-166 .solution-detail-hero .hero-container {
        max-width: 1380px;
        margin-left: auto;
        margin-right: auto;
    }
}

/* Final scoped layout guard: Detail Solution Trust must not inherit Our Solution compact row. */
body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
    display: grid !important;
    grid-template-columns: 210px minmax(0, 1fr) !important;
    gap: 26px !important;
    padding: 0 !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
    display: grid !important;
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 14px !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-card {
    padding: 14px 12px !important;
    gap: 8px !important;
    border: 1px solid rgba(255, 255, 255, 0.18) !important;
    border-radius: 14px !important;
    background: rgba(255, 255, 255, 0.06) !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-icon {
    width: 46px !important;
    height: 46px !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-title {
    font-size: 0.9rem !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-desc {
    font-size: 0.82rem !important;
}

@media (max-width: 1100px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
        grid-template-columns: 190px minmax(0, 1fr) !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 768px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
        grid-template-columns: 1fr !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-col {
        border-right: 0 !important;
        border-bottom: 1.5px dotted rgba(255, 255, 255, 0.35) !important;
        padding: 0 0 18px !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 480px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: 1fr !important;
    }
}

/* Shared Our Solution detail trust panel: stronger visual balance. */
body.parent-pageid-166 .solution-detail-trust-widget-section .solution-container {
    padding: 24px 28px 26px !important;
    overflow: hidden;
    position: relative;
    border-radius: 18px;
    background-image:
        linear-gradient(135deg, rgba(255, 255, 255, 0.035), transparent 42%),
        linear-gradient(315deg, rgba(96, 15, 10, 0.15), transparent 38%);
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-section-header {
    margin-bottom: 14px !important;
    position: relative;
    z-index: 2;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
    grid-template-columns: minmax(260px, 0.9fr) minmax(0, 3.1fr) !important;
    gap: 18px !important;
    align-items: stretch !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-col {
    min-height: 292px;
    padding: 0 !important;
    margin: 0 !important;
    overflow: hidden;
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    border: 1px solid rgba(255, 255, 255, 0.14) !important;
    border-radius: 14px;
    background: rgba(110, 18, 12, 0.2);
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-col::before {
    content: '';
    position: absolute;
    inset: 18px 18px auto auto;
    width: 110px;
    height: 78px;
    opacity: 0.35;
    background-image: radial-gradient(circle, rgba(255, 255, 255, 0.65) 1.2px, transparent 1.4px);
    background-size: 12px 12px;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-col::after {
    content: '';
    position: absolute;
    left: 50%;
    bottom: -82px;
    width: 260px;
    height: 260px;
    border: 30px solid rgba(255, 255, 255, 0.055);
    border-radius: 50%;
    transform: translateX(-50%);
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-img {
    width: 300px !important;
    max-width: 118% !important;
    max-height: 284px;
    position: relative;
    z-index: 2;
    object-fit: contain;
    object-position: center bottom;
    filter: drop-shadow(0 12px 16px rgba(67, 12, 8, 0.24));
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 12px !important;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-card {
    min-height: 140px;
    padding: 13px 10px !important;
    gap: 7px !important;
    justify-content: center !important;
    background: rgba(255, 255, 255, 0.075) !important;
    transition: transform 0.25s ease, background-color 0.25s ease, box-shadow 0.25s ease;
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-card:hover {
    transform: translateY(-3px);
    background: rgba(255, 255, 255, 0.11) !important;
    box-shadow: 0 10px 20px rgba(74, 12, 8, 0.13);
}

body.parent-pageid-166 .solution-detail-trust-widget-section .trust-icon {
    width: 50px !important;
    height: 50px !important;
}

@media (max-width: 1100px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
        grid-template-columns: minmax(230px, 0.85fr) minmax(0, 3.15fr) !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 768px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .solution-container {
        padding: 20px 16px !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-content-wrapper {
        grid-template-columns: 1fr !important;
        gap: 12px !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-col {
        min-height: 205px;
        border-bottom: 1px solid rgba(255, 255, 255, 0.14) !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-mascot-img {
        width: 250px !important;
        max-height: 205px;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 480px) {
    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-grid {
        grid-template-columns: 1fr !important;
    }

    body.parent-pageid-166 .solution-detail-trust-widget-section .trust-card {
        min-height: 118px;
    }
}

/* Compact interactive solution finder for all business detail pages. */
.wibu-detail-pairs { padding:18px 24px; font-family:'Nunito',sans-serif; }
.wibu-detail-pairs * { box-sizing:border-box; }
.wibu-detail-pairs .wdp-container { max-width:1300px; margin:auto; padding:20px; background:#fff; border:1px solid #dce7f0; border-radius:22px; }
.wibu-detail-pairs h2 { margin:0 0 18px; color:#07336e; font:400 25px/1.25 'Momo Trust Display',sans-serif; }
.wdp-workspace { display:grid; grid-template-columns:250px minmax(0,1fr) 270px; gap:18px; align-items:start; }
.wdp-tabs { display:grid; gap:8px; }
.wdp-tabs button { display:flex; align-items:center; gap:10px; padding:14px 12px; min-height:62px; width:100%; text-align:left; border:1px solid #e2eaf0; border-radius:12px; background:#f7f9fc; color:#07336e; font:800 15px/1.3 'Nunito',sans-serif; cursor:pointer; }
.wdp-tabs button>span { font-size:12px; color:#ed7100; }
.wdp-tabs button>b { margin-left:auto; }
.wdp-tabs button[aria-selected=true] { background:#07336e; border-color:#07336e; color:#fff; }
.wdp-tabs button:focus-visible,.wdp-products a:focus-visible { outline:3px solid #ff7900; outline-offset:3px; }
.wdp-panels { display:grid; background:#f0f9ff; border-radius:16px; padding:12px 16px; }
.wdp-panel { grid-area:1/1; min-width:0; }
.wdp-panel[hidden] { display:block !important; visibility:hidden; pointer-events:none; }
.wdp-visuals { display:flex; justify-content:center; align-items:center; gap:6px; }
.wdp-art { display:block; width:150px; height:150px; flex:0 1 150px; background-size:400% 200%; background-repeat:no-repeat; }
.wdp-arrow { color:#ff7100; font-size:26px; }
.wdp-problem { padding:8px 0 10px; border-bottom:1px solid #dceaf3; }
.wdp-resolution { padding-top:10px; }
.wdp-panel p { margin:3px 0 0; font-size:15px; line-height:1.45; color:#526476; }
.wdp-panel div>span:not(.wdp-art):not(.wdp-arrow) { font-size:11px; font-weight:900; text-transform:uppercase; color:#607183; }
.wdp-resolution p { color:#07336e; font-weight:800; }
.wdp-panel .wdp-resolution>span { color:#087aaf !important; }
.wdp-products h3 { font:800 17px/1.3 'Nunito',sans-serif; margin:0 0 10px; color:#07336e; }
.wdp-product-grid { display:grid; grid-template-columns:1fr 1fr; gap:8px; }
.wdp-product-grid a { display:flex; flex-direction:column; align-items:center; padding:8px; border:1px solid #e2eaf1; border-radius:10px; text-decoration:none; color:#07336e; text-align:center; font-size:12px; font-weight:800; line-height:1.3; }
.wdp-product-grid img { width:100%; height:76px; object-fit:contain; margin-bottom:5px; }
.wdp-products .wdp-catalog { display:block; margin-top:10px; font-size:13px; font-weight:800; color:#df6500; text-decoration:none; }
@media(max-width:1100px) { .wdp-workspace { grid-template-columns:210px minmax(0,1fr); } .wdp-products { grid-column:1/-1; } .wdp-product-grid { grid-template-columns:repeat(4,1fr); } }
@media(max-width:600px) { .wibu-detail-pairs { padding:12px 16px; } .wibu-detail-pairs .wdp-container { padding:12px; } .wibu-detail-pairs h2 { font-size:21px; } .wdp-workspace { grid-template-columns:1fr; gap:12px; } .wdp-tabs { grid-template-columns:1fr 1fr; gap:6px; } .wdp-tabs button { font-size:12px; padding:9px; min-height:58px; gap:6px; } .wdp-tabs button>b { display:none; } .wdp-art { width:125px; height:125px; flex-basis:125px; } .wdp-product-grid { grid-template-columns:1fr 1fr; } }

/* All business needs stay visible without tabs or hidden panels. */
.wibu-detail-pairs .wdp-workspace { grid-template-columns:minmax(0,1fr) 240px; gap:14px; }
.wibu-detail-pairs .wdp-panels { display:grid; grid-template-columns:1fr 1fr; gap:12px; padding:0; background:none; border-radius:0; }
.wibu-detail-pairs .wdp-panel { grid-area:auto; padding:12px 14px; border:1px solid #dceaf3; border-radius:14px; background:#f1f9ff; }
.wibu-detail-pairs .wdp-point-title { margin:0 0 6px; color:#07336e; font:800 16px/1.3 'Nunito',sans-serif; }
.wibu-detail-pairs .wdp-art { width:112px; height:112px; flex-basis:112px; }
.wibu-detail-pairs .wdp-problem { padding:4px 0 8px; }
.wibu-detail-pairs .wdp-resolution { padding-top:8px; }
.wibu-detail-pairs .wdp-panel p { font-size:14px; line-height:1.4; }
.wibu-detail-pairs .wdp-products { padding:12px; background:#fafbfd; border:1px solid #e2eaf0; border-radius:14px; }
@media(max-width:1100px) { .wibu-detail-pairs .wdp-workspace { grid-template-columns:1fr; } .wibu-detail-pairs .wdp-products { grid-column:auto; } }
@media(max-width:600px) { .wibu-detail-pairs .wdp-panels { grid-template-columns:1fr; gap:10px; } .wibu-detail-pairs .wdp-art { width:120px; height:120px; flex-basis:120px; } }

/* Full-width compact cards and a product strip eliminate the empty sidebar. */
.wibu-detail-pairs .wdp-workspace { display:block; }
.wibu-detail-pairs .wdp-panels { grid-template-columns:1fr 1fr; gap:10px; }
.wibu-detail-pairs .wdp-panel { display:grid; grid-template-columns:150px minmax(0,1fr); column-gap:12px; padding:12px; align-content:start; }
.wibu-detail-pairs .wdp-point-title { grid-column:1/-1; margin-bottom:8px; }
.wibu-detail-pairs .wdp-visuals { grid-column:1; grid-row:2/4; flex-direction:column; gap:0; align-self:center; }
.wibu-detail-pairs .wdp-art { width:100px; height:100px; flex:0 0 100px; }
.wibu-detail-pairs .wdp-arrow { display:none; }
.wibu-detail-pairs .wdp-problem { grid-column:2; grid-row:2; padding:8px 0; }
.wibu-detail-pairs .wdp-resolution { grid-column:2; grid-row:3; padding-top:8px; }
.wibu-detail-pairs .wdp-products { display:flex; align-items:center; gap:14px; margin-top:12px; padding:10px 12px; }
.wibu-detail-pairs .wdp-products h3 { flex:0 0 140px; margin:0; font-size:15px; }
.wibu-detail-pairs .wdp-product-grid { flex:1; grid-template-columns:repeat(4,minmax(0,1fr)); gap:8px; }
.wibu-detail-pairs .wdp-product-grid a { flex-direction:row; gap:8px; padding:6px; text-align:left; background:#fff; }
.wibu-detail-pairs .wdp-product-grid img { width:52px; height:58px; margin:0; }
.wibu-detail-pairs .wdp-products .wdp-catalog { margin:0; white-space:nowrap; }
@media(min-width:901px) { .wibu-detail-pairs .wdp-visuals { flex-direction:row; } .wibu-detail-pairs .wdp-panel { grid-template-columns:210px minmax(0,1fr); } }
@media(max-width:900px) { .wibu-detail-pairs .wdp-products { flex-wrap:wrap; } .wibu-detail-pairs .wdp-product-grid { flex-basis:100%; order:3; } .wibu-detail-pairs .wdp-products .wdp-catalog { margin-left:auto; } .wibu-detail-pairs .wdp-panel { grid-template-columns:100px minmax(0,1fr); } }
@media(max-width:600px) { .wibu-detail-pairs .wdp-panels { grid-template-columns:1fr; } .wibu-detail-pairs .wdp-product-grid { grid-template-columns:1fr 1fr; } .wibu-detail-pairs .wdp-panel { padding:10px; column-gap:10px; } }

/* Keep the heading with its copy; illustrations span the compact card. */
.wibu-detail-pairs .wdp-container { padding:16px; }
.wibu-detail-pairs h2 { margin-bottom:12px; }
.wibu-detail-pairs .wdp-panel { column-gap:10px; padding:12px; }
.wibu-detail-pairs .wdp-point-title { grid-column:2; grid-row:1; margin:0 0 4px; }
.wibu-detail-pairs .wdp-visuals { grid-row:1/4; }
.wibu-detail-pairs .wdp-problem { padding:2px 0 6px; }
.wibu-detail-pairs .wdp-resolution { padding-top:6px; }
@media(max-width:600px) {
 .wibu-detail-pairs .wdp-container { padding:10px; }
 .wibu-detail-pairs .wdp-panel { padding:10px; grid-template-columns:90px minmax(0,1fr); }
 .wibu-detail-pairs .wdp-art { width:90px; height:90px; flex-basis:90px; }
}

/* Paired comparison rows: one illustration beside each sentence. */
.wibu-detail-pairs .wdp-comparison-head { display:grid; grid-template-columns:1fr 1fr; padding:8px 14px; gap:24px; color:#07336e; font-size:14px; font-weight:900; }
.wibu-detail-pairs .wdp-comparison-head span:first-child { color:#d76100; }
.wibu-detail-pairs .wdp-comparison { border:1px solid #dce7f0; border-radius:12px; overflow:hidden; }
.wibu-detail-pairs .wdp-comparison-row { display:grid; grid-template-columns:1fr 1fr; }
.wibu-detail-pairs .wdp-comparison-row + .wdp-comparison-row { border-top:1px solid #dce7f0; }
.wibu-detail-pairs .wdp-compare-cell { display:flex; align-items:center; gap:14px; padding:4px 16px; background:#fffaf5; }
.wibu-detail-pairs .wdp-compare-cell.is-solution { background:#eff9ff; border-left:1px solid #dce7f0; }
.wibu-detail-pairs .wdp-compare-art { display:block; flex:0 0 100px; width:100px; height:100px; background-size:400% 200%; background-repeat:no-repeat; }
.wibu-detail-pairs .wdp-compare-cell p { margin:0; color:#526476; font-size:15px; line-height:1.4; }
.wibu-detail-pairs .wdp-compare-cell.is-solution p { color:#07336e; font-weight:800; }
.wibu-detail-pairs .wdp-mobile-label { display:none; }
@media(max-width:700px) {
 .wibu-detail-pairs .wdp-comparison-head { display:none; }
 .wibu-detail-pairs .wdp-comparison-row { grid-template-columns:1fr; }
 .wibu-detail-pairs .wdp-compare-cell { padding:5px 8px; gap:10px; }
 .wibu-detail-pairs .wdp-compare-cell.is-solution { border-left:0; }
 .wibu-detail-pairs .wdp-compare-art { width:84px; height:84px; flex-basis:84px; }
 .wibu-detail-pairs .wdp-compare-cell p { font-size:14px; }
 .wibu-detail-pairs .wdp-mobile-label { display:block; font-size:10px; font-weight:900; text-transform:uppercase; color:#d76100; margin-bottom:3px; }
 .wibu-detail-pairs .is-solution .wdp-mobile-label { color:#087aaf; }
}

/* Dense comparison rows sized to the short copy. */
.wibu-detail-pairs .wdp-comparison-head { padding:5px 10px; }
.wibu-detail-pairs .wdp-compare-cell { padding:3px 10px; gap:10px; }
.wibu-detail-pairs .wdp-compare-art { width:68px; height:68px; flex-basis:68px; }
.wibu-detail-pairs .wdp-compare-cell p { font-size:15px; line-height:1.35; }
.wibu-detail-pairs .wdp-container { padding:12px; }
.wibu-detail-pairs h2 { margin-bottom:8px; }
@media(max-width:700px) {
 .wibu-detail-pairs .wdp-compare-cell { padding:6px 8px; gap:8px; }
 .wibu-detail-pairs .wdp-compare-cell p { font-size:14px; }
}

/* Wibu brand colors give the compact comparison a stronger frame. */
.wibu-detail-pairs .wdp-container {
 background:linear-gradient(115deg,#07336e 0%,#094681 70%,#08638f 100%);
 border-color:#164f85;
 box-shadow:0 8px 22px rgba(7,51,110,.12);
}
.wibu-detail-pairs h2 { color:#fff; }
.wibu-detail-pairs .wdp-comparison-head { color:#fff; }
.wibu-detail-pairs .wdp-comparison-head span:first-child { color:#ffb665; }
.wibu-detail-pairs .wdp-comparison { border-color:rgba(255,255,255,.5); }
.wibu-detail-pairs .wdp-compare-cell { background:#fff0df; }
.wibu-detail-pairs .wdp-compare-cell.is-solution { background:#dff4ff; }
.wibu-detail-pairs .wdp-comparison-row:nth-child(even) .is-challenge { background:#fff7ed; }
.wibu-detail-pairs .wdp-comparison-row:nth-child(even) .is-solution { background:#ecf9ff; }
.wibu-detail-pairs .wdp-compare-cell p { color:#354c63; }
.wibu-detail-pairs .wdp-compare-cell.is-solution p { color:#07336e; }

/* Match the footer CTA orange gradient and decorative sparkles. */
.wibu-detail-pairs .wdp-container {
 position:relative; isolation:isolate; overflow:hidden;
 background:radial-gradient(ellipse at 46% 110%,#ffb571 0,transparent 65%),linear-gradient(115deg,#FE6C01 0%,#ff8426 58%,#FE6C01 100%);
 border-color:#ff963e; box-shadow:0 8px 22px rgba(254,108,1,.16);
}
.wibu-detail-pairs .wdp-container::before {
 content:''; position:absolute; width:330px; height:330px; border:1px solid #ffffff55;
 box-shadow:0 0 0 20px #ffffff12,0 0 0 44px #ffffff0c; border-radius:50%;
 top:-265px; left:65%; z-index:-1; pointer-events:none;
}
.wibu-detail-pairs .wdp-container::after {
 content:'\2726  \2727'; position:absolute; right:22px; top:9px; font-size:30px;
 letter-spacing:9px; color:#fff5e6; z-index:-1; pointer-events:none;
}
.wibu-detail-pairs .wdp-comparison-head,
.wibu-detail-pairs .wdp-comparison-head span:first-child { color:#042d68; }
.wibu-detail-pairs h2 { padding-right:85px; }
@media(max-width:700px) {
 .wibu-detail-pairs h2 { padding-right:28px; }
 .wibu-detail-pairs .wdp-container::after { right:7px; font-size:20px; letter-spacing:0; }
}

/* Warm neutral content matches the orange CTA frame. */
.wibu-detail-pairs .wdp-compare-cell,
.wibu-detail-pairs .wdp-comparison-row:nth-child(even) .is-challenge { background:#fff7ed; }
.wibu-detail-pairs .wdp-compare-cell.is-solution,
.wibu-detail-pairs .wdp-comparison-row:nth-child(even) .is-solution { background:#fffefd; }
.wibu-detail-pairs .wdp-comparison,
.wibu-detail-pairs .wdp-comparison-row + .wdp-comparison-row,
.wibu-detail-pairs .wdp-compare-cell.is-solution { border-color:#f1dfcd; }

/* Clearer column headings without increasing row spacing. */
.wibu-detail-pairs .wdp-comparison-head { font-size:19px; line-height:1.3; font-weight:900; padding:7px 10px; }
@media(max-width:700px) {
 .wibu-detail-pairs .wdp-mobile-label { font-size:13px; line-height:1.3; }
}

/* Match Home / How to Order: 32px between panels, 24px on phones. */
body.parent-pageid-166 [data-elementor-type="wp-page"] { --widgets-spacing:0px; }
body.parent-pageid-166 [data-elementor-type="wp-page"] > .elementor-element,
body.parent-pageid-166 [data-elementor-type="wp-page"] > .elementor-element > .e-con-inner {
 row-gap:0 !important; padding-top:0 !important; padding-bottom:0 !important;
 margin-top:0 !important; margin-bottom:0 !important;
}
body.parent-pageid-166 [data-elementor-type="wp-page"] > .e-con:not(:has(.elementor-widget)) { display:none; }
body.parent-pageid-166 [data-elementor-type="wp-page"] .elementor-widget { margin-top:0 !important; margin-bottom:0 !important; }
body.parent-pageid-166 .wibu-detail-pairs,
body.parent-pageid-166 .solution-detail-products-recommendation,
body.parent-pageid-166 .solution-detail-trust-section,
body.parent-pageid-166 .wibu-quote-section {
 padding-top:16px !important; padding-bottom:16px !important;
 margin-top:0 !important; margin-bottom:0 !important;
}
body.parent-pageid-166 .solution-detail-hero { padding-bottom:16px !important; margin-bottom:0 !important; }
body.parent-pageid-166 .wibu-site-footer { margin-top:0; }
@media(max-width:600px) {
 body.parent-pageid-166 .wibu-detail-pairs,
 body.parent-pageid-166 .solution-detail-products-recommendation,
 body.parent-pageid-166 .solution-detail-trust-section,
 body.parent-pageid-166 .wibu-quote-section { padding-top:12px !important; padding-bottom:12px !important; }
 body.parent-pageid-166 .solution-detail-hero { padding-bottom:12px !important; }
}
body.parent-pageid-166 .solution-detail-products-recommendation > .solution-container {
 padding-top:0 !important; padding-bottom:0 !important; margin-top:0 !important; margin-bottom:0 !important;
}

/* One shared content rail for all eight solution detail pages. */
body.parent-pageid-166 [data-elementor-type="wp-page"] > .e-con {
 padding-left:0 !important; padding-right:0 !important; max-width:none !important; width:100% !important;
}
body.parent-pageid-166 .wibu-detail-pairs,
body.parent-pageid-166 .solution-detail-products-recommendation,
body.parent-pageid-166 .solution-detail-trust-section,
body.parent-pageid-166 .wibu-quote-section {
 box-sizing:border-box; width:100%; padding-left:24px !important; padding-right:24px !important;
}
body.parent-pageid-166 .wdp-container,
body.parent-pageid-166 .solution-detail-products-recommendation > .solution-container,
body.parent-pageid-166 .solution-detail-trust-section > .solution-container,
body.parent-pageid-166 .wibu-quote-panel {
 box-sizing:border-box; width:100% !important; max-width:1300px !important; margin-left:auto !important; margin-right:auto !important;
}
body.parent-pageid-166 .solution-detail-products-recommendation > .solution-container { padding-left:0 !important; padding-right:0 !important; }
body.parent-pageid-166 .solution-products-shell { width:100%; box-sizing:border-box; }
@media(max-width:600px) {
 body.parent-pageid-166 .wibu-detail-pairs,
 body.parent-pageid-166 .solution-detail-products-recommendation,
 body.parent-pageid-166 .solution-detail-trust-section,
 body.parent-pageid-166 .wibu-quote-section { padding-left:16px !important; padding-right:16px !important; }
}

/* Keep the official Wibu mascot contained in the hero. */
body.parent-pageid-166 .solution-detail-hero .hero-mascot,
body.parent-pageid-166 .solution-detail-hero .mascot-wrapper { position:relative; transform:none !important; height:auto !important; min-height:0 !important; }
body.parent-pageid-166 .solution-detail-hero .mascot-img { position:relative !important; inset:auto !important; display:block; width:min(100%,420px) !important; max-width:420px !important; height:auto !important; max-height:440px; object-fit:contain; margin:0 auto; transform:none !important; }
@media(max-width:600px) { body.parent-pageid-166 .solution-detail-hero .mascot-img { max-width:260px !important; max-height:270px; } }

/* Compact mobile introduction shared by the eight business solution pages. */
@media(max-width:767px) {
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) { padding:18px 16px 16px !important; min-height:0 !important; height:auto !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-container { position:relative; display:block !important; padding:0 !important; gap:0 !important; min-height:0 !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-content { width:100% !important; max-width:none !important; text-align:left !important; padding:0 !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .solution-breadcrumbs { display:flex; flex-wrap:wrap; justify-content:flex-start; padding:0 70px 0 0 !important; margin:0 0 12px !important; min-height:58px; align-content:center; font-size:11px !important; gap:4px; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-title { font-size:28px !important; line-height:1.18 !important; text-align:left !important; margin:0 0 12px !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-subtitle { font-size:14px !important; line-height:1.5 !important; text-align:left !important; margin:0 0 16px !important; max-width:none !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-actions { display:flex !important; flex-direction:row !important; gap:8px !important; margin:0 !important; justify-content:flex-start; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-actions .btn { flex:1; min-width:0 !important; min-height:42px; padding:10px 8px !important; font-size:12px !important; gap:7px !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-mascot { position:absolute !important; top:0 !important; right:0 !important; left:auto !important; width:60px !important; margin:0 !important; padding:0 !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .mascot-wrapper { width:60px !important; margin:0 !important; padding:0 !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .mascot-img { width:60px !important; max-width:60px !important; height:60px !important; object-fit:contain; }
}

/* Mobile solution heroes no longer reserve space for a mascot. */
@media(max-width:767px) {
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-mascot { display:none !important; }
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .solution-breadcrumbs { padding:0 !important; min-height:0 !important; margin:0 0 12px !important; }
}

/* Two recommendations per mobile view, with compact card proportions. */
@media(max-width:767px) {
 body .solution-detail-products-recommendation .solution-products-track { --visible-products:2; --product-gap:10px; }
 body .solution-detail-products-recommendation .solution-product-card { min-width:0; min-height:0; }
 body .solution-detail-products-recommendation .solution-product-image { aspect-ratio:1; margin-bottom:8px; }
 body .solution-detail-products-recommendation .solution-product-card h3 { font-size:13px; line-height:1.35; padding:0 10px; }
}

/* Center mobile hero headings across all business solution detail pages. */
@media(max-width:767px) {
 body.parent-pageid-166 .solution-detail-hero:not(.has-page-banner-slider) .hero-title { text-align:center !important; }
}

/* Keep desktop detail CTAs aligned with their live copy at every laptop width. */
@media (min-width:769px) {
 body #solution-detail.solution-detail-hero:not(.has-page-banner-slider) .hero-container {
  position:relative!important;
  inset:auto!important;
  width:85%!important;
  max-width:none!important;
  margin:0 auto!important;
  padding:0!important;
  box-sizing:border-box;
  transform:none!important;
 }
 body #solution-detail.solution-detail-hero:not(.has-page-banner-slider) .hero-content {
  min-width:0;
 }
 body #solution-detail.solution-detail-hero:not(.has-page-banner-slider) .hero-actions {
  position:relative!important;
  inset:auto!important;
  transform:none!important;
  translate:none!important;
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-start!important;
  margin-left:0!important;
  margin-right:0!important;
 }
}
