/*
Theme Name: ToolBoxAI Child
Theme URI: https://toolboxai.modeltheme.com/
Template: toolboxai
Author: ModelTheme
Author URI: https://modeltheme.com/
Description: AI Tools SaaS Platform Theme
Version: 1.0
Text Domain: toolboxai
Tags: custom-header, custom-menu, featured-images, post-formats, sticky-post
*/
/* Theme customization starts here
------------------------------------------------------- */

/* Match the official ToolboxAI demo navigation typography and dropdown rhythm. */
@media (min-width: 992px) {
    /* The active header uses the theme's primary-menu builder, not always the
       navigation1 wrapper. Keep every desktop header variant readable. */
    .site-header .builder-item--primary-menu .nav-menu-desktop .menu > li > a,
    .site-header .builder-item--navigation1 .nav-menu-desktop .menu > li > a,
    .site-header .builder-item--navigation2 .nav-menu-desktop .menu > li > a,
    .site-header .nav-menu-desktop .primary-menu-ul > li > a,
    .header-main .nav-menu-desktop .primary-menu-ul > li > a {
        visibility: visible !important;
        opacity: 1 !important;
        color: #17131c !important;
        -webkit-text-fill-color: #17131c !important;
    }

    .site-header .nav-menu-desktop .primary-menu-ul > li > a span,
    .header-main .nav-menu-desktop .primary-menu-ul > li > a span {
        color: inherit !important;
        -webkit-text-fill-color: inherit !important;
    }

    .site-header .nav-menu-desktop .primary-menu-ul > li > a:hover,
    .site-header .nav-menu-desktop .primary-menu-ul > li.current-menu-item > a,
    .site-header .nav-menu-desktop .primary-menu-ul > li.current-menu-ancestor > a,
    .header-main .nav-menu-desktop .primary-menu-ul > li > a:hover {
        color: #a044fa !important;
        -webkit-text-fill-color: #a044fa !important;
    }

    #site-navigation-main-desktop .primary-menu-ul > li > a {
        color: #17131c !important;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-weight: 500;
        line-height: 35px;
    }

    #site-navigation-main-desktop .primary-menu-ul > li > a:visited {
        color: #17131c !important;
    }

    #site-navigation-main-desktop .primary-menu-ul > li > a:hover,
    #site-navigation-main-desktop .primary-menu-ul > li.current-menu-item > a,
    #site-navigation-main-desktop .primary-menu-ul > li.current-menu-ancestor > a {
        color: #a044fa !important;
    }

    #site-navigation-main-desktop .primary-menu-ul > li > a .caret,
    #site-navigation-main-desktop .primary-menu-ul > li > a i {
        color: currentColor !important;
    }

    #site-navigation-main-desktop ul.sub-menu {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    #site-navigation-main-desktop ul.sub-menu li > a {
        color: #17131c !important;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-weight: 500;
        line-height: 27.2px;
    }

    #site-navigation-main-desktop ul.sub-menu li > a:hover {
        color: #a044fa !important;
    }

    #site-navigation-main-desktop ul.sub-menu > li {
        border-bottom: 1px solid #fff !important;
    }
}

/* Discover mobile grid: keep each tool card and its CTA inside the viewport. */
@media only screen and (max-width: 767px) {
    body.page-template-find-tools-template .mt-tool-wrapper,
    body.page-template-find-tools-template .toolboxsaas-results-content-wrapper,
    body.page-template-find-tools-template #toolboxsaas-ajax-results,
    body.page-template-find-tools-template #filter-results,
    body.page-template-find-tools-template .filter-matches-grid.row {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    body.page-template-find-tools-template .filter-matches-grid.row {
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    body.page-template-find-tools-template .filter-matches-grid.row > .mt-users-grid-col {
        flex: 0 0 100%;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0;
        padding-right: 0;
        padding-left: 0;
        box-sizing: border-box;
    }

    body.page-template-find-tools-template .mt-users-grid-wrap,
    body.page-template-find-tools-template .mt-users-grid-wrap > .d-flex.gap-15.mt-3 {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        box-sizing: border-box;
    }

    body.page-template-find-tools-template .mt-users-grid-wrap > .d-flex.gap-15.mt-3 {
        display: flex !important;
        gap: 0 !important;
    }

    body.page-template-find-tools-template .mt-users-grid-wrap > .d-flex.gap-15.mt-3 > .toolbox-button-external {
        display: flex !important;
        flex: 1 1 0%;
        align-items: center;
        justify-content: center;
        width: auto !important;
        max-width: 100%;
        min-width: 0;
        margin-right: 0 !important;
        margin-left: 0 !important;
        box-sizing: border-box;
    }

    body.page-template-find-tools-template .mt-users-grid-wrap > .d-flex.gap-15.mt-3 > .toolbox-button-external i {
        flex: 0 0 auto;
        margin-left: 8px !important;
    }

    body.page-template-find-tools-template .mt-users-grid-img,
    body.page-template-find-tools-template .toolbox-right-image,
    body.page-template-find-tools-template .mt-users-grid-wrap p {
        min-width: 0;
        max-width: 100%;
        overflow-wrap: anywhere;
    }
}

/* Pricing plans: align the Choose Plan buttons with the site brand. */
.toolboxsaas-pricing-plan .mtsub-title-metas a.button.ppfa-buy-plan {
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #8d35e4 0%, #a044fa 100%) !important;
    box-shadow: 0 8px 20px rgba(141, 53, 228, .22) !important;
    color: #fff !important;
    font-family: inherit !important;
    font-weight: 700 !important;
    text-shadow: none !important;
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease !important;
}

.toolboxsaas-pricing-plan .mtsub-title-metas a.button.ppfa-buy-plan:hover,
.toolboxsaas-pricing-plan .mtsub-title-metas a.button.ppfa-buy-plan:focus {
    color: #fff !important;
    filter: brightness(1.06);
    transform: translateY(-2px);
    box-shadow: 0 11px 24px rgba(141, 53, 228, .3) !important;
}

.toolboxsaas-pricing-plan .mtsub-title-metas a.button.ppfa-buy-plan:focus-visible {
    outline: 3px solid rgba(160, 68, 250, .28) !important;
    outline-offset: 3px;
}

/* Pricing: keep the featured-plan badge readable as two complete words. */
.toolboxsas-plan-image span.toolboxsaas-toptier-badge {
    top: -2px;
    right: -32px;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    padding: 6px;
    border-radius: 8px;
    background: #a044fa;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    line-height: 1.08;
    text-align: center;
    text-transform: none;
    white-space: normal;
    word-break: keep-all;
    overflow-wrap: normal;
    box-shadow: 0 8px 20px rgba(60, 49, 91, .24);
}

/* Pricing CTA: use the same compact rectangular button language as the site header. */
.fpai-pricing-trust .fpai-btn {
    min-height: 48px;
    padding: 14px 20px;
    border: 0;
    border-radius: 5px;
    font-size: 16px;
    font-weight: 600;
    line-height: 20px;
    box-shadow: none;
}

.fpai-pricing-trust .fpai-btn-primary,
.fpai-pricing-trust .fpai-btn-primary:hover {
    background: #fff;
    color: #3c315b;
}

.fpai-pricing-trust .fpai-btn-secondary,
.fpai-pricing-trust .fpai-btn-secondary:hover {
    background: #3c315b;
    color: #fff;
}

.fpai-pricing-trust .fpai-btn:focus-visible {
    outline: 3px solid rgba(255, 255, 255, .55);
    outline-offset: 3px;
}

.fpai-registration-consent {
    margin-top: 14px;
    font-size: 14px;
    line-height: 1.55;
}

.fpai-registration-consent input[type="checkbox"] {
    margin-right: 7px;
}

/* The imported Contact page contained placeholder social-profile links. */
.page-id-6401 .elementor-element-649b10d {
    display: none;
}

/* Homepage: primary AI-tool comparison feature. */
.fpai-home-compare {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(420px, .95fr);
    gap: 54px;
    align-items: center;
    max-width: 1380px;
    margin: 0 auto;
    padding: 54px 60px;
    overflow: hidden;
    border: 1px solid rgba(148, 58, 239, .15);
    border-radius: 28px;
    background:
        radial-gradient(circle at 90% 10%, rgba(169, 66, 247, .18), transparent 34%),
        linear-gradient(135deg, #faf7ff 0%, #f5efff 48%, #fff 100%);
    box-shadow: 0 22px 65px rgba(77, 25, 116, .09);
}

.fpai-home-compare__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    margin-bottom: 14px;
    padding: 8px 13px;
    border-radius: 999px;
    background: rgba(145, 48, 233, .1);
    color: #7d20c4;
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.fpai-home-compare__content h2 {
    max-width: 650px;
    margin: 0 0 15px;
    color: #17131e;
    font-size: clamp(31px, 3.1vw, 48px);
    line-height: 1.1;
    letter-spacing: -.035em;
}

.fpai-home-compare__content > p {
    max-width: 650px;
    margin: 0 0 25px;
    color: #62596b;
    font-size: 17px;
    line-height: 1.65;
}

.fpai-home-compare__steps {
    display: grid;
    gap: 12px;
    margin-bottom: 27px;
}

.fpai-home-compare__steps > div {
    display: flex;
    align-items: center;
    gap: 13px;
}

.fpai-home-compare__steps strong {
    display: grid;
    flex: 0 0 34px;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: 50%;
    background: #fff;
    color: #8e2add;
    box-shadow: 0 5px 15px rgba(88, 29, 130, .12);
}

.fpai-home-compare__steps span {
    display: flex;
    flex-wrap: wrap;
    gap: 3px 8px;
    color: #716779;
    font-size: 14px;
}

.fpai-home-compare__steps b {
    color: #211a27;
    font-size: 15px;
}

.fpai-home-compare__cta {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    min-height: 52px;
    padding: 13px 24px;
    border-radius: 999px;
    background: linear-gradient(135deg, #a23bf4 0%, #7419bc 100%);
    color: #fff !important;
    box-shadow: 0 11px 25px rgba(126, 31, 196, .24);
    font-size: 15px;
    font-weight: 800;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease;
}

.fpai-home-compare__cta:hover {
    transform: translateY(-2px);
    box-shadow: 0 15px 30px rgba(126, 31, 196, .3);
}

.fpai-home-compare__preview {
    padding: 22px;
    border: 1px solid rgba(134, 52, 199, .15);
    border-radius: 22px;
    background: rgba(255, 255, 255, .92);
    box-shadow: 0 24px 60px rgba(72, 25, 105, .13);
    transform: rotate(1deg);
}

.fpai-home-compare__preview-head,
.fpai-home-compare__row,
.fpai-home-compare__signals {
    display: grid;
    align-items: center;
}

.fpai-home-compare__preview-head {
    grid-template-columns: 1fr auto;
    padding-bottom: 14px;
    border-bottom: 1px solid #eee7f3;
    color: #27202d;
    font-size: 14px;
    font-weight: 800;
}

.fpai-home-compare__preview-head span:last-child {
    padding: 5px 9px;
    border-radius: 999px;
    background: #f4eaff;
    color: #8123c7;
    font-size: 11px;
}

.fpai-home-compare__tools {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 12px;
    padding: 19px 6px;
}

.fpai-home-compare__tools > div {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 9px;
}

.fpai-home-compare__logo {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 12px;
    background: linear-gradient(135deg, #9d38ed, #6c15b0);
    color: #fff;
    font-weight: 900;
}

.fpai-home-compare__logo--alt {
    background: linear-gradient(135deg, #3f1761, #a73cf7);
}

.fpai-home-compare__versus {
    color: #a197aa;
    font-size: 11px;
    font-weight: 900;
}

.fpai-home-compare__row {
    grid-template-columns: 1.1fr 1fr 1fr;
    gap: 8px;
    min-height: 46px;
    padding: 10px 6px;
    border-top: 1px solid #f0eaf4;
    color: #766d7d;
    font-size: 12px;
}

.fpai-home-compare__row b {
    color: #302737;
    font-size: 12px;
    text-align: center;
}

.fpai-home-compare__signals {
    grid-template-columns: repeat(3, 1fr);
    gap: 7px;
    margin-top: 10px;
}

.fpai-home-compare__signals span {
    padding: 8px 6px;
    border-radius: 9px;
    background: #f7f2fb;
    color: #5e5267;
    font-size: 11px;
    text-align: center;
}

.fpai-home-compare__signals i {
    margin-right: 3px;
    color: #8f29d8;
}

@media (max-width: 1024px) {
    .fpai-home-compare {
        grid-template-columns: 1fr;
        gap: 36px;
        padding: 42px;
    }

    .fpai-home-compare__preview {
        max-width: 650px;
        transform: none;
    }
}

@media (max-width: 600px) {
    .fpai-home-compare {
        gap: 28px;
        padding: 30px 20px;
        border-radius: 20px;
    }

    .fpai-home-compare__content h2 {
        font-size: 30px;
    }

    .fpai-home-compare__content > p {
        font-size: 15px;
    }

    .fpai-home-compare__steps span {
        display: grid;
    }

    .fpai-home-compare__preview {
        padding: 15px;
    }

    .fpai-home-compare__tools {
        gap: 7px;
    }

    .fpai-home-compare__tools > div {
        display: grid;
        justify-items: center;
        font-size: 12px;
    }

    .fpai-home-compare__row {
        grid-template-columns: .8fr 1fr 1fr;
    }

    .fpai-home-compare__signals {
        grid-template-columns: 1fr;
    }
}

/* Keep the complete header visible while the visitor scrolls. */
.site-header-inner,
#masthead-inner,
.header-main,
.header-main .header--row-inner,
.cb-row--desktop,
.cb-row--desktop .row-v2-main {
    height: 82px !important;
    min-height: 82px !important;
}

.sticky-wrapper.is-sticky .site-header-inner {
    z-index: 9998 !important;
    background: #fff;
    box-shadow: 0 8px 24px rgba(23, 19, 28, 0.08);
}

@media (max-width: 991px) {
    .site-header-inner,
    #masthead-inner,
    .header-main,
    .header-main .header--row-inner,
    .cb-row--mobile,
    .cb-row--mobile .row-v2-main {
        height: 72px !important;
        min-height: 72px !important;
    }
}

@media (min-width: 783px) {
    body.admin-bar .sticky-wrapper.is-sticky .site-header-inner {
        top: 32px !important;
    }
}

@media (max-width: 782px) {
    body.admin-bar .sticky-wrapper.is-sticky .site-header-inner {
        top: 46px !important;
    }
}

/* Brand lockup: the final search/tool icon plus crisp, responsive text. */
.site-header .logo.logo-image a {
    display: inline-flex;
    align-items: center;
    color: #17131c;
    font-family: "Inter", sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: -0.45px;
    text-decoration: none;
    white-space: nowrap;
    transform: scale(1.06);
    transform-origin: left center;
}

.site-header .logo.logo-image a::before {
    content: "Find the Perfect";
    order: 2;
    margin-left: 9px;
}

.site-header .logo.logo-image a::after {
    content: "AI";
    order: 3;
    margin-left: 4px;
    color: #a044fa;
}

.site-header .logo.logo-image img {
    order: 1;
    width: 50px !important;
    height: 50px !important;
    max-width: none !important;
    object-fit: contain;
    transform: none !important;
}

@media (min-width: 1500px) {
    .cb-row--desktop .builder-item--logo {
        margin-right: 38px !important;
    }

    .cb-row--desktop .logo.logo-image a {
        font-size: 22px;
    }

    .cb-row--desktop .logo.logo-image img {
        width: 56px !important;
        height: 56px !important;
    }
}

/* Keep the complete desktop header on one line at common laptop widths. */
@media (min-width: 992px) and (max-width: 1499px) {
    .cb-row--desktop .builder-item--logo {
        margin-right: 26px !important;
    }

    #site-navigation-main-desktop .primary-menu-ul > li > a {
        padding-left: 8px !important;
        padding-right: 8px !important;
    }

    .cb-row--desktop .toolboxai-builder-btn {
        padding-left: 19px !important;
        padding-right: 19px !important;
        white-space: nowrap;
    }
}

@media (max-width: 575px) {
    .cb-row--mobile .logo.logo-image a {
        font-size: 15px;
        letter-spacing: -0.35px;
        transform: scale(1.05);
        transform-origin: left center;
    }

    .cb-row--mobile .logo.logo-image a::before {
        display: inline;
        margin-left: 8px;
    }

    .cb-row--mobile .logo.logo-image a::after {
        display: inline;
        margin-left: 3px;
    }

    .cb-row--mobile .logo.logo-image img {
        width: 46px !important;
        height: 46px !important;
        transform: none !important;
    }
}

@media (max-width: 370px) {
    .cb-row--mobile .logo.logo-image a {
        font-size: 13px;
        transform: scale(1.03);
    }

    .cb-row--mobile .logo.logo-image img {
        width: 42px !important;
        height: 42px !important;
    }
}

/* Footer branding built from the final search/tool icon and the site name. */
.site-footer .fpa-footer-brand {
    display: flex;
    align-items: center;
    gap: 12px;
    margin-bottom: 16px;
    text-decoration: none;
}

.site-footer .fpa-footer-brand img {
    width: 72px;
    height: 72px;
    object-fit: contain;
}

.site-footer .fpa-footer-brand strong {
    color: #17131c;
    font-family: "Inter", sans-serif;
    font-size: 24px;
    font-weight: 700;
    line-height: 1.15;
}

.site-footer .fpa-footer-brand strong span {
    color: #a044fa;
}

.site-footer .widget_text p {
    max-width: 360px;
    font-weight: 500 !important;
}

/* Improve footer readability without changing the existing font sizes. */
.site-footer .widget_nav_menu a,
.site-footer .menu a,
.site-footer .footer-copyright {
    font-weight: 500 !important;
}

/* Footer link columns: show clean text labels without decorative arrows. */
.site-footer .widget_nav_menu .menu > li::before,
.site-footer .widget_nav_menu .menu > li > a::before {
    content: none !important;
    display: none !important;
}

.site-footer .widget_nav_menu .menu > li,
.site-footer .widget_nav_menu .menu > li > a {
    padding-left: 0 !important;
}

.site-footer .widget_nav_menu .menu > li {
    margin-left: 0 !important;
    margin-inline-start: 0 !important;
}

/* Footer CTA: same visual language as the header, with a quieter footprint. */
.site-footer .toolboxai-footer-btn {
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    gap: 9px;
    min-width: 190px;
    padding: 13px 24px !important;
    border: 0 !important;
    border-radius: 12px !important;
    background: linear-gradient(135deg, #8d35e4 0%, #a044fa 100%) !important;
    box-shadow: 0 8px 20px rgba(141, 53, 228, .2);
    color: #fff !important;
    font-weight: 700 !important;
    text-decoration: none !important;
    transition: transform .2s ease, box-shadow .2s ease, filter .2s ease;
}

.site-footer .toolboxai-footer-btn i {
    display: none;
}

.site-footer .toolboxai-footer-btn::before {
    content: "+";
    color: #fff;
    font-size: 22px;
    font-weight: 700;
    line-height: 1;
}

.site-footer .toolboxai-footer-btn:hover,
.site-footer .toolboxai-footer-btn:focus {
    color: #fff !important;
    filter: brightness(1.06);
    transform: translateY(-2px);
    box-shadow: 0 11px 24px rgba(141, 53, 228, .28);
}

.site-footer .toolboxai-footer-btn:focus-visible {
    outline: 3px solid rgba(160, 68, 250, .28) !important;
    outline-offset: 3px;
}

/* Keep the parent theme's compact account dropdown, but restore its original
   left-to-right starting edge instead of inheriting the centered header text. */
.builder-item--my_account #dropdown-user-profile > ul {
    text-align: left;
}

.builder-item--my_account #dropdown-user-profile.open > ul {
    z-index: 1000;
}

.builder-item--my_account #dropdown-user-profile > ul > li {
    display: block !important;
    width: 100%;
    margin: 0;
}

.builder-item--my_account #dropdown-user-profile > ul > li > a {
    display: block !important;
    width: 100%;
    text-align: left;
    white-space: nowrap;
}

.woocommerce-MyAccount-navigation ul > li > a {
    font-weight: 500 !important;
}

.woocommerce-MyAccount-navigation ul > li.is-active > a,
.woocommerce-MyAccount-navigation ul > li.current-menu-item > a {
    font-weight: 600 !important;
}

/* Login CTA: clearly signal when both required credentials are filled. */
.woocommerce form.woocommerce-form-login .woocommerce-form-login__submit {
    background: #e8e5ec !important;
    box-shadow: none !important;
    color: #fff !important;
    cursor: default;
    transition: background .2s ease, box-shadow .2s ease, transform .2s ease !important;
}

.woocommerce form.woocommerce-form-login .woocommerce-form-login__submit.fpai-login-ready {
    background: linear-gradient(135deg, #8d35e4 0%, #a044fa 100%) !important;
    box-shadow: 0 8px 20px rgba(141, 53, 228, .24) !important;
    color: #fff !important;
    cursor: pointer;
}

.woocommerce form.woocommerce-form-login .woocommerce-form-login__submit.fpai-login-ready:hover,
.woocommerce form.woocommerce-form-login .woocommerce-form-login__submit.fpai-login-ready:focus {
    background: linear-gradient(135deg, #7c2dce 0%, #9638ef 100%) !important;
    box-shadow: 0 11px 24px rgba(141, 53, 228, .31) !important;
    transform: translateY(-1px);
}

/* About page: transparent, role-based explanation of how the directory works. */
.fpai-workflow-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: 24px;
    width: 100%;
}

.fpai-workflow-card {
    min-height: 280px;
    padding: 34px 28px 30px;
    border: 1px solid rgba(160, 68, 250, .12);
    border-radius: 18px;
    background: linear-gradient(180deg, #fbf9ff 0%, #f5f2ff 100%);
    box-shadow: 0 12px 32px rgba(60, 49, 91, .07);
}

.fpai-workflow-icon {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 70px;
    height: 70px;
    margin-bottom: 30px;
    border-radius: 18px;
    background: linear-gradient(135deg, #8d35e4 0%, #a044fa 100%);
    box-shadow: 0 9px 22px rgba(141, 53, 228, .22);
    color: #fff;
    font-size: 28px;
}

.fpai-workflow-card h3 {
    margin: 0 0 12px;
    color: #17131c;
    font-size: 22px;
    font-weight: 700;
    line-height: 1.3;
}

.fpai-workflow-card p {
    margin: 0;
    color: #5f5868;
    font-size: 15px;
    font-weight: 500;
    line-height: 1.6;
}

@media (max-width: 1024px) {
    .fpai-workflow-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 575px) {
    .fpai-workflow-grid {
        grid-template-columns: 1fr;
        gap: 16px;
    }

    .fpai-workflow-card {
        min-height: 0;
        padding: 28px 24px;
    }
}

/* Full brand logo on the WooCommerce login / registration presentation. */
.page-template-template-fullscreen-account .toolboxsaas-site-name {
    width: min(620px, 84%);
    aspect-ratio: 3 / 1;
    margin: 18px auto 0 !important;
    overflow: hidden;
    background: url("/wp-content/uploads/2026/08/find-the-perfect-ai-search-logo-transparent.png") center / contain no-repeat;
    color: transparent !important;
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: -9999px;
}

@media (max-width: 767px) {
    .page-template-template-fullscreen-account .toolboxsaas-site-name {
        width: min(440px, 88%);
        margin-top: 12px !important;
    }
}

/* Matching brand lockup in the signed-in customer dashboard top bar. */
.page-template-template-fullscreen-account .toolboxsaas-brand-icon a {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    color: #fff;
    font-family: "Inter", sans-serif;
    font-size: 20px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.page-template-template-fullscreen-account .toolboxsaas-brand-icon a::after {
    content: "Find the Perfect AI";
}

.page-template-template-fullscreen-account .toolboxsaas-brand-icon img {
    width: 50px !important;
    height: 50px !important;
    object-fit: contain;
}

/* FPA compact hero trial (2026-08-15).
 * Original Elementor spacing is preserved in hero-layout-backup-20260815.txt.
 * Only desktop vertical whitespace is reduced; content, background and curves
 * remain unchanged.
 */
@media (min-width: 1025px) {
    .elementor-1633 .elementor-element.elementor-element-0843065 > .elementor-element-populated {
        padding-top: 30px !important;
        padding-bottom: 20px !important;
    }

    .elementor-1633 .elementor-element.elementor-element-323b2ce {
        --padding-top: 20px !important;
        --padding-bottom: 0px !important;
    }

    .elementor-1633 .elementor-element.elementor-element-481ed60,
    .elementor-1633 .elementor-element.elementor-element-481ed60 > .elementor-background-overlay {
        border-radius: 0 0 40px 40px;
    }
}

/* Restore the Home 3 hero artwork lost by the demo importer. */
.elementor-25487 .elementor-element.elementor-element-acdfe9e:not(.elementor-motion-effects-element-type-background),
.elementor-25487 .elementor-element.elementor-element-acdfe9e > .elementor-motion-effects-container > .elementor-motion-effects-layer {
    background-image: url("/wp-content/uploads/2025/09/home-header3.jpg") !important;
    background-position: center right !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
}

/* AI Categories directory */
.fpai-categories-page {
    --fpai-purple: #a044fa;
    --fpai-purple-dark: #3c315b;
    --fpai-ink: #17131c;
    --fpai-muted: #6f6a78;
    --fpai-border: #e9e4f0;
    overflow: hidden;
    background: #fff;
    color: var(--fpai-ink);
    font-family: "Inter", sans-serif;
}

.fpai-cat-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.fpai-cat-hero {
    position: relative;
    isolation: isolate;
    padding: 66px 0 82px;
    overflow: hidden;
    border-bottom-right-radius: 48px;
    border-bottom-left-radius: 48px;
    background:
        linear-gradient(115deg, rgba(255, 255, 255, .95), rgba(247, 238, 255, .9)),
        url("/wp-content/uploads/2025/09/home-header3.jpg") center / cover no-repeat;
}

.fpai-cat-hero::after {
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    content: "";
    background: linear-gradient(90deg, transparent, rgba(160, 68, 250, .35), transparent);
}

.fpai-cat-orb {
    position: absolute;
    z-index: -1;
    border-radius: 999px;
    filter: blur(3px);
    pointer-events: none;
}

.fpai-cat-orb--one {
    top: -190px;
    right: 6%;
    width: 430px;
    height: 430px;
    background: radial-gradient(circle, rgba(160, 68, 250, .17), transparent 68%);
}

.fpai-cat-orb--two {
    bottom: -200px;
    left: 3%;
    width: 390px;
    height: 390px;
    background: radial-gradient(circle, rgba(90, 122, 255, .12), transparent 70%);
}

.fpai-cat-hero__inner {
    text-align: center;
}

.fpai-cat-breadcrumb {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 8px;
    margin-bottom: 26px;
    color: #77717f;
    font-size: 14px;
}

.fpai-cat-breadcrumb a {
    color: var(--fpai-purple-dark);
}

.fpai-cat-eyebrow,
.fpai-cat-kicker {
    display: inline-flex;
    align-items: center;
    color: var(--fpai-purple);
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.fpai-cat-eyebrow::before,
.fpai-cat-eyebrow::after {
    width: 24px;
    height: 1px;
    margin: 0 10px;
    content: "";
    background: currentColor;
}

.fpai-cat-hero h1 {
    max-width: 850px;
    margin: 16px auto 14px;
    color: var(--fpai-purple-dark);
    font-size: clamp(42px, 5vw, 66px);
    font-weight: 750;
    line-height: 1.08;
    letter-spacing: -.045em;
}

.fpai-cat-hero__inner > p {
    max-width: 730px;
    margin: 0 auto;
    color: var(--fpai-muted);
    font-size: 18px;
    line-height: 1.7;
}

.fpai-cat-hero__actions {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 12px;
    margin-top: 30px;
}

.fpai-cat-hero__primary,
.fpai-cat-hero__secondary {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    gap: 11px;
    min-height: 54px;
    padding: 0 23px;
    border-radius: 12px;
    font-size: 15px;
    font-weight: 750;
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.fpai-cat-hero__primary,
.fpai-cat-hero__primary:visited {
    background: linear-gradient(135deg, #8f32e8, #a944ff);
    box-shadow: 0 12px 28px rgba(160, 68, 250, .25);
    color: #fff !important;
}

.fpai-cat-hero__secondary,
.fpai-cat-hero__secondary:visited {
    border: 1px solid rgba(60, 49, 91, .16);
    background: rgba(255, 255, 255, .82);
    box-shadow: 0 10px 26px rgba(39, 24, 63, .06);
    color: var(--fpai-purple-dark) !important;
}

.fpai-cat-hero__primary:hover,
.fpai-cat-hero__secondary:hover {
    transform: translateY(-2px);
}

.fpai-cat-proof {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 28px;
    color: #746d7d;
    font-size: 13px;
}

.fpai-cat-proof span {
    white-space: nowrap;
}

.fpai-cat-proof strong {
    color: var(--fpai-purple-dark);
    font-size: 15px;
    font-weight: 800;
}

.fpai-cat-proof > i {
    width: 4px;
    height: 4px;
    border-radius: 50%;
    background: rgba(160, 68, 250, .55);
}

.fpai-cat-directory {
    padding: 90px 0 110px;
    background:
        radial-gradient(circle at 100% 0%, rgba(160, 68, 250, .055), transparent 28%),
        #fff;
}

.fpai-cat-heading {
    display: flex;
    justify-content: space-between;
    align-items: flex-end;
    gap: 40px;
    margin-bottom: 36px;
}

.fpai-cat-heading h2 {
    margin: 8px 0 0;
    color: var(--fpai-purple-dark);
    font-size: clamp(32px, 4vw, 46px);
    font-weight: 750;
    line-height: 1.15;
    letter-spacing: -.035em;
}

.fpai-cat-heading__aside {
    max-width: 440px;
}

.fpai-cat-heading__aside > p {
    margin: 0;
    color: var(--fpai-muted);
    font-size: 15px;
    line-height: 1.7;
}

.fpai-cat-results {
    display: inline-flex;
    align-items: center;
    gap: 7px;
    margin-top: 13px;
    color: var(--fpai-purple);
    font-size: 12px;
    font-weight: 700;
}

.fpai-cat-results::before {
    width: 7px;
    height: 7px;
    border-radius: 50%;
    background: currentColor;
    box-shadow: 0 0 0 4px rgba(160, 68, 250, .1);
    content: "";
}

.fpai-cat-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
    align-items: start;
}

.fpai-cat-card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    padding: 26px;
    overflow: hidden;
    border: 1px solid var(--fpai-border);
    border-radius: 24px;
    background: linear-gradient(145deg, #fff 0%, #fbf7ff 100%);
    box-shadow: 0 16px 45px rgba(43, 25, 65, .06);
    transition: transform .25s ease, border-color .25s ease, box-shadow .25s ease;
}

.fpai-cat-card::before {
    position: absolute;
    top: -80px;
    right: -80px;
    width: 180px;
    height: 180px;
    border-radius: 50%;
    content: "";
    background: radial-gradient(circle, rgba(160, 68, 250, .09), transparent 68%);
    pointer-events: none;
}

.fpai-cat-card:hover {
    transform: translateY(-5px);
    border-color: rgba(160, 68, 250, .34);
    box-shadow: 0 22px 55px rgba(72, 40, 103, .1);
}

.fpai-cat-card[hidden] {
    display: none;
}

.fpai-cat-card__top,
.fpai-cat-card__title-row,
.fpai-cat-card__children a,
.fpai-cat-card__all {
    display: flex;
    align-items: center;
}

.fpai-cat-card__top {
    justify-content: space-between;
    margin-bottom: 19px;
}

.fpai-cat-card__icon {
    display: grid;
    place-items: center;
    width: 50px;
    height: 50px;
    border: 1px solid rgba(160, 68, 250, .14);
    border-radius: 15px;
    background: linear-gradient(145deg, #f4eaff, #fff);
    color: var(--fpai-purple);
    font-size: 20px;
}

.fpai-cat-card__number {
    color: #c4bdca;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: .1em;
}

.fpai-cat-card__title-row {
    justify-content: space-between;
    align-items: flex-start;
    gap: 12px;
}

.fpai-cat-card h3 {
    margin: 0;
    font-size: 23px;
    font-weight: 720;
    line-height: 1.3;
}

.fpai-cat-card h3 a {
    color: var(--fpai-purple-dark);
}

.fpai-cat-card__count {
    flex: 0 0 auto;
    padding: 6px 9px;
    border-radius: 999px;
    background: #f2e7fe;
    color: #8d35e4;
    font-size: 12px;
    font-weight: 700;
    white-space: nowrap;
}

.fpai-cat-card__description {
    min-height: 54px;
    margin: 10px 0 19px;
    color: var(--fpai-muted);
    font-size: 16px;
    line-height: 1.7;
}

.fpai-cat-card__children {
    display: flex;
    flex-direction: column;
    flex: 1;
    border-top: 1px solid #eeeaf2;
}

.fpai-cat-card__children a {
    justify-content: space-between;
    gap: 12px;
    min-height: 47px;
    padding: 10px 2px;
    border-bottom: 1px solid #f0edf3;
    color: #494250;
    font-size: 15px;
    font-weight: 600;
    transition: color .18s ease, padding .18s ease;
}

.fpai-cat-card__children a:hover {
    padding-left: 5px;
    color: var(--fpai-purple);
}

.fpai-cat-card__children small {
    display: grid;
    place-items: center;
    min-width: 34px;
    height: 28px;
    padding: 0 7px;
    border-radius: 8px;
    background: #f6f3f8;
    color: #827a88;
    font-size: 12px;
}

.fpai-cat-card__all {
    justify-content: space-between;
    gap: 15px;
    margin-top: 19px;
    color: var(--fpai-purple) !important;
    font-size: 15px;
    font-weight: 700;
}

.fpai-cat-card__all:visited,
.fpai-cat-card__all:hover,
.fpai-cat-card__all:focus {
    color: var(--fpai-purple) !important;
}

.fpai-cat-card__all i {
    transition: transform .2s ease;
}

.fpai-cat-card__all:hover i {
    transform: translateX(4px);
}

.fpai-cat-no-results,
.fpai-cat-empty {
    padding: 65px 30px;
    border: 1px dashed #d8cbe5;
    border-radius: 22px;
    background: #fcfaff;
    text-align: center;
}

.fpai-cat-no-results i {
    margin-bottom: 15px;
    color: var(--fpai-purple);
    font-size: 30px;
}

.fpai-cat-no-results h3 {
    margin: 0 0 8px;
    color: var(--fpai-purple-dark);
}

.fpai-cat-no-results p {
    margin: 0;
    color: var(--fpai-muted);
}

.fpai-cat-cta {
    padding: 72px 0;
    background:
        radial-gradient(circle at 12% 18%, rgba(160, 68, 250, .22), transparent 28%),
        #17101f;
}

.fpai-cat-cta__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 36px;
}

.fpai-cat-cta h2 {
    max-width: 680px;
    margin: 10px 0 8px;
    color: #fff;
    font-size: clamp(30px, 4vw, 44px);
    font-weight: 750;
    line-height: 1.14;
    letter-spacing: -.035em;
}

.fpai-cat-cta p {
    margin: 0;
    color: #bdb4c7;
}

.fpai-cat-cta__button {
    display: inline-flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 12px;
    padding: 16px 24px;
    border-radius: 12px;
    background: linear-gradient(135deg, #8f32e8, #a944ff);
    box-shadow: 0 12px 30px rgba(160, 68, 250, .3);
    color: #fff !important;
    font-weight: 700;
    transition: transform .2s ease, box-shadow .2s ease;
}

.fpai-cat-cta__button:hover {
    transform: translateY(-2px);
    box-shadow: 0 16px 36px rgba(160, 68, 250, .4);
}

@media (max-width: 1024px) {
    .fpai-cat-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .fpai-cat-heading {
        align-items: flex-start;
        flex-direction: column;
        gap: 15px;
    }

    .fpai-cat-heading__aside {
        max-width: 620px;
    }
}

@media (max-width: 680px) {
    .fpai-cat-container {
        width: min(100% - 28px, 1180px);
    }

    .fpai-cat-hero {
        padding: 48px 0 60px;
        border-bottom-right-radius: 30px;
        border-bottom-left-radius: 30px;
    }

    .fpai-cat-hero h1 {
        font-size: 39px;
    }

    .fpai-cat-hero__inner > p {
        font-size: 16px;
    }

    .fpai-cat-hero__actions {
        align-items: stretch;
        flex-direction: column;
        width: 100%;
    }

    .fpai-cat-hero__primary,
    .fpai-cat-hero__secondary {
        width: 100%;
    }

    .fpai-cat-proof {
        gap: 9px 12px;
        font-size: 12px;
    }

    .fpai-cat-proof > i {
        display: none;
    }

    .fpai-cat-directory {
        padding: 65px 0 80px;
    }

    .fpai-cat-grid {
        grid-template-columns: 1fr;
    }

    .fpai-cat-card {
        padding: 22px;
    }

    .fpai-cat-card__description {
        min-height: 0;
    }

    .fpai-cat-cta {
        padding: 58px 0;
    }

    .fpai-cat-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* Slightly stronger body copy on individual tool pages. */
.single-toolbox-tool .toolboxsaas-description-block,
.single-toolbox-tool .toolboxsaas-description-block p {
    font-weight: 500;
}

.single-toolbox-tool .toolboxsaas-pros-list h3,
.single-toolbox-tool .toolboxsaas-cons-list h3,
.single-toolbox-tool .toolboxsaas-pros-list li,
.single-toolbox-tool .toolboxsaas-cons-list li {
    font-weight: 500;
}

/* Make the Sponsored Tools save state obvious to customers. */
.toolbox-sponsor-form button[type="submit"] {
    min-width: 96px;
    border: 0;
    border-radius: 999px;
    background: #e9e6ed;
    color: #fff;
    cursor: not-allowed;
    opacity: 1;
    transition: background-color .2s ease, box-shadow .2s ease, transform .2s ease;
}

.toolbox-sponsor-form button[type="submit"]:not(:disabled) {
    background: linear-gradient(135deg, #8f32e8, #a944ff);
    box-shadow: 0 8px 20px rgba(160, 68, 250, .3);
    color: #fff;
    cursor: pointer;
}

.toolbox-sponsor-form button[type="submit"]:not(:disabled):hover {
    background: linear-gradient(135deg, #7e25d3, #9736ec);
    transform: translateY(-1px);
}

/* Top Bar sponsorship: 50% taller and clickable across the full banner. */
.toolboxsaas-top-bar .toolboxsaas-bar-inner {
    padding: 0;
}

.toolboxsaas-top-bar .toolboxsaas-top-carousel,
.toolboxsaas-top-bar .owl-stage-outer,
.toolboxsaas-top-bar .owl-stage,
.toolboxsaas-top-bar .owl-item {
    min-height: 54px;
}

/* Visible fallback while Owl Carousel is still loading. */
.toolboxsaas-top-bar .toolboxsaas-top-carousel.owl-carousel:not(.owl-loaded) {
    display: block !important;
    min-height: 54px;
}

.toolboxsaas-top-bar .toolboxsaas-top-carousel.owl-carousel:not(.owl-loaded) > .fpai-topbar-link {
    display: none;
}

.toolboxsaas-top-bar .toolboxsaas-top-carousel.owl-carousel:not(.owl-loaded) > .fpai-topbar-link:first-child {
    display: flex;
}

.toolboxsaas-top-bar .fpai-topbar-link {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: nowrap;
    gap: 8px;
    overflow: hidden;
    width: 100%;
    min-height: 54px;
    padding: 12px 24px;
    color: #fff !important;
    text-decoration: none !important;
    cursor: pointer;
}

.toolboxsaas-top-bar .toolboxsaas-sponsored-tag,
.toolboxsaas-top-bar .fpai-topbar-tool-title {
    flex: 0 0 auto;
}

.toolboxsaas-top-bar .toolboxsaas-sponsored-short {
    min-width: 0;
    max-width: min(760px, calc(100vw - 420px));
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.toolboxsaas-top-bar .fpai-topbar-link:focus-visible {
    outline: 3px solid rgba(255, 255, 255, .9);
    outline-offset: -4px;
}

@media (max-width: 680px) {
    .toolboxsaas-top-bar .fpai-topbar-link {
        gap: 8px;
        padding-inline: 14px;
        text-align: center;
    }

    .toolboxsaas-top-bar .toolboxsaas-sponsored-short {
        display: none !important;
    }
}

/* Keep the sponsored bar visible above the header without making it sticky. */
body .toolboxsaas-top-bar {
    position: relative;
    z-index: 510;
    display: block;
    width: 100%;
}

/* Mobile/tablet dropdown menu: opaque, contained, and layered above page content. */
@media (max-width: 1099px) {
    body.menu_sidebar_dropdown .site-header,
    body.menu_sidebar_dropdown .site-header-inner,
    body.menu_sidebar_dropdown .sticky-wrapper {
        overflow: visible;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar {
        position: absolute !important;
        top: 100% !important;
        right: 0;
        left: 0;
        z-index: 999900 !important;
        width: 100%;
        height: 0 !important;
        max-height: 0;
        overflow: hidden !important;
        border-top: 1px solid #eee9f4;
        background: #fff;
        box-shadow: 0 18px 38px rgba(28, 17, 43, .14);
        opacity: 0;
        transition: opacity .2s ease, max-height .28s ease;
    }

    body.menu_sidebar_dropdown.is-menu-sidebar .header-menu-sidebar {
        height: auto !important;
        max-height: calc(100vh - 126px);
        overflow-x: hidden !important;
        overflow-y: auto !important;
        opacity: 1;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar-bg,
    body.menu_sidebar_dropdown .header-menu-sidebar-inner,
    body.menu_sidebar_dropdown .nav-menu-mobile {
        box-sizing: border-box;
        max-width: none;
        width: 100%;
        margin: 0;
        padding-right: 0 !important;
        padding-left: 0 !important;
        background: #fff;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu {
        box-sizing: border-box;
        display: flex;
        flex-direction: column;
        max-width: calc(100% - 24px);
        width: calc(100% - 24px);
        margin: 0 !important;
        padding: 8px 0 12px;
        transform: translateX(12px);
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu > li {
        box-sizing: border-box;
        width: 100%;
        margin: 0;
        border-bottom: 1px solid #f0ecf4;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu > li:last-child {
        border-bottom: 0;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu li > a {
        display: flex;
        align-items: center;
        min-height: 48px;
        padding: 11px 20px !important;
        border: 0 !important;
        background: #fff;
        color: #211b28 !important;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.35;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu li > a:hover,
    body.menu_sidebar_dropdown .nav-menu-mobile .menu li > a:focus {
        background: #faf6ff;
        color: #9334e6 !important;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu .sub-menu {
        position: static !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 4px 0 8px !important;
        border: 0 !important;
        background: #faf7ff !important;
        box-shadow: none !important;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .menu .sub-menu li > a {
        min-height: 42px;
        padding: 9px 34px !important;
        background: #faf7ff;
        font-size: 14px;
        font-weight: 500;
    }

    body.menu_sidebar_dropdown .nav-menu-mobile .nav-toggle-icon {
        margin-left: auto;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button {
        box-sizing: border-box;
        width: calc(100% - 24px);
        margin: 0 12px;
        padding: 0 !important;
        border-top: 1px solid #f0ecf4;
        border-bottom: 1px solid #f0ecf4;
        background: #fff;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button .item--inner {
        width: 100%;
        margin: 0;
        padding: 0;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button .item--button {
        box-sizing: border-box;
        display: flex;
        align-items: center;
        gap: 9px;
        width: 100%;
        min-height: 48px;
        margin: 0;
        padding: 11px 20px !important;
        border: 0 !important;
        border-radius: 0;
        background: #fff !important;
        box-shadow: none !important;
        color: #211b28 !important;
        font-family: "Inter", sans-serif;
        font-size: 16px;
        font-weight: 700;
        line-height: 1.35;
        text-align: left;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button .item--button:hover,
    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button .item--button:focus {
        background: #faf6ff !important;
        color: #9334e6 !important;
    }

    body.menu_sidebar_dropdown .header-menu-sidebar .mobile-item--button .item--button i {
        flex: 0 0 auto;
        margin: 0;
        color: #a044fa;
        font-size: 15px;
        line-height: 1;
    }
}

/* Sponsored Tools: four cards per row on desktop. */

/* Tool cards: make secondary descriptions slightly stronger and easier to read. */
.mt-users-grid-wrap p.truncate-2-lines,
.toolboxsaas_sponsored_tools_widget p.truncate-2-lines,
.toolbox-posts-carousel-item .post-excerpt,
.toolboxsaas-search-tool-description {
    font-weight: 500 !important;
}

/* Single tool header: make the short tool description easier to read. */
.single-toolbox-tool .toolbox-about-me-inner-content > p.mt-2.text-body-secondary {
    font-weight: 500 !important;
}

/* Tool FAQs: strengthen answers while keeping questions visually heavier. */
.single-toolbox-tool #faq #accordion-qas .accordion-body {
    color: #6f6878 !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1.55 !important;
}

.single-toolbox-tool #faq #accordion-qas .accordion-button {
    font-weight: 600 !important;
}

/* Match the open FAQ state to the soft pink sponsored-card label. */
.single-toolbox-tool #faq #accordion-qas .accordion-button:not(.collapsed) {
    background: linear-gradient(90deg, #f4ebff, #faf7ff) !important;
    color: #2f2840 !important;
    box-shadow: none !important;
}

@media (min-width: 1200px) {
    body.home .toolboxsaas_sponsored_tools_widget .users-grid-wrapper > .mt-users-grid-col {
        flex: 0 0 25%;
        width: 25%;
        max-width: 25%;
    }
}

@media (min-width: 768px) and (max-width: 1199px) {
    body.home .toolboxsaas_sponsored_tools_widget .users-grid-wrapper > .mt-users-grid-col {
        flex: 0 0 50%;
        width: 50%;
        max-width: 50%;
    }
}

@media (max-width: 767px) {
    body.home .toolboxsaas_sponsored_tools_widget .users-grid-wrapper > .mt-users-grid-col {
        flex: 0 0 100%;
        width: 100%;
        max-width: 100%;
    }
}

/* Single-tool sidebar: sponsored listings are a compact vertical list. */
body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode {
    width: 100%;
    margin: 0;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .users-grid-wrapper {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 14px;
    margin: 0;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .mt-users-grid-col {
    width: 100%;
    max-width: 100%;
    padding: 0;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .mt-users-grid-wrap {
    min-height: 0;
    margin: 0 !important;
    padding: 16px !important;
    overflow: hidden;
    background: #fff;
    border: 1px solid #e8e1f1 !important;
    border-radius: 16px !important;
    box-shadow: 0 8px 24px rgba(42, 24, 72, .06);
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .sponsored-tool {
    position: static;
    width: auto;
    height: 32px;
    margin: -16px -16px 14px !important;
    padding: 5px 12px;
    background: linear-gradient(90deg, #f4ebff, #faf7ff);
    color: #9334e6;
    border-radius: 0;
    font-size: 14px;
    line-height: 22px;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .mt-users-grid-img {
    display: grid !important;
    grid-template-columns: 58px minmax(0, 1fr);
    gap: 13px;
    align-items: center;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .mt-users-grid-img > a {
    display: grid;
    place-items: center;
    width: 58px;
    height: 58px;
    padding: 6px;
    overflow: hidden;
    background: #f8f4ff;
    border-radius: 13px;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .mt-users-grid-img img {
    width: 46px !important;
    height: 46px !important;
    max-width: 46px !important;
    object-fit: contain;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .toolbox-right-image {
    min-width: 0;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .toolboxsaas-average-rating-stars {
    margin: 0 0 3px;
    color: #a044fa;
    font-size: 15px;
    line-height: 1;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode h4 {
    display: block !important;
    margin: 0 !important;
    font-size: 17px;
    line-height: 1.3;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode h4 a {
    display: -webkit-box;
    overflow: hidden;
    color: #17131c;
    text-decoration: none;
    overflow-wrap: anywhere;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode p.truncate-2-lines {
    display: -webkit-box;
    margin: 12px 0 0;
    overflow: hidden;
    color: #6f6878;
    font-size: 14px;
    line-height: 1.55;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

body.single-toolbox-tool .fpai-sponsored-actions {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 10px;
    margin-top: 16px;
    text-align: center;
}

body.single-toolbox-tool .fpai-sponsored-more,
body.single-toolbox-tool .fpai-sponsored-all {
    appearance: none;
    border: 0;
    background: transparent;
    color: #8f32e6;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.4;
    text-decoration: none;
}

body.single-toolbox-tool .fpai-sponsored-more {
    display: none;
    padding: 7px 16px;
    border: 1px solid #e3d2f6;
    border-radius: 999px;
    cursor: pointer;
}

body.single-toolbox-tool .fpai-sponsored-more__close {
    display: none;
}

body.single-toolbox-tool .fpai-sponsored-all {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

body.single-toolbox-tool .fpai-sponsored-all:hover,
body.single-toolbox-tool .fpai-sponsored-more:hover {
    color: #6414ad;
}

@media (max-width: 767px) {
    body.single-toolbox-tool .toolboxsaas_sponsored_tools_widget.sponsored_tools_shortcode .users-grid-wrapper {
        gap: 12px;
    }

    body.single-toolbox-tool .fpai-single-sponsored:not(.is-expanded) .fpai-sponsored-card:nth-child(n+3) {
        display: none;
    }

    body.single-toolbox-tool .fpai-sponsored-more {
        display: inline-flex;
    }

    body.single-toolbox-tool .fpai-single-sponsored.is-expanded .fpai-sponsored-more__open {
        display: none;
    }

    body.single-toolbox-tool .fpai-single-sponsored.is-expanded .fpai-sponsored-more__close {
        display: inline;
    }
}

/* Single-tool login prompt: accessible dialog and explicit close action. */
body.fpai-login-modal-open {
    overflow: hidden;
}

#toolboxsaas-login-modal {
    padding: 16px;
    opacity: 0;
    transition: opacity .18s ease;
}

#toolboxsaas-login-modal.is-visible {
    opacity: 1;
}

#toolboxsaas-login-modal .fpai-login-dialog {
    position: relative;
    width: min(500px, 100%);
    max-height: calc(100vh - 32px);
    overflow: auto;
    border-radius: 12px;
    box-shadow: 0 24px 70px rgba(20, 8, 35, .32);
}

#toolboxsaas-login-modal .fpai-login-dialog .toolboxsaas-modal-header,
#toolboxsaas-login-modal .fpai-login-dialog .toolboxsaas-modal-content {
    width: 100%;
    max-width: none;
}

#toolboxsaas-login-modal button.fpai-login-modal-close {
    position: absolute;
    z-index: 2;
    top: 15px !important;
    right: 33px !important;
    display: grid;
    place-items: center;
    width: 28px;
    height: 28px;
    margin: 0;
    padding: 0;
    border: 0;
    border-radius: 0;
    background: transparent !important;
    color: #17131c;
    font-size: 22px;
    line-height: 1;
    box-shadow: none !important;
    outline: none !important;
}

#toolboxsaas-login-modal button.fpai-login-modal-close:hover,
#toolboxsaas-login-modal button.fpai-login-modal-close:focus-visible {
    background: transparent !important;
    color: #17131c;
    opacity: 1;
    box-shadow: none !important;
    outline: none !important;
}

@media (min-width: 576px) {
    #toolboxsaas-login-modal button.fpai-login-modal-close {
        top: 27px !important;
        right: 24px !important;
    }
}

/* Single-tool Show More / Show Less buttons follow the primary site style. */
body.single-toolbox-tool #description .toolboxsaas-read-more-button,
body.single-toolbox-tool #faq .toolboxsaas-read-more-button {
    min-height: 42px;
    margin-top: 30px;
    padding: 10px 24px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #a044fa 0%, #8b2ce7 100%) !important;
    color: #fff !important;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.35;
    box-shadow: 0 8px 18px rgba(142, 44, 231, .2);
    transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}

body.single-toolbox-tool #description .toolboxsaas-read-more-button:hover,
body.single-toolbox-tool #description .toolboxsaas-read-more-button:focus,
body.single-toolbox-tool #faq .toolboxsaas-read-more-button:hover,
body.single-toolbox-tool #faq .toolboxsaas-read-more-button:focus {
    background: linear-gradient(135deg, #8b2ce7 0%, #6f1bc2 100%) !important;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 10px 22px rgba(111, 27, 194, .26);
}

body.single-toolbox-tool #description .toolboxsaas-read-more-button:focus-visible,
body.single-toolbox-tool #faq .toolboxsaas-read-more-button:focus-visible {
    outline: 3px solid rgba(160, 68, 250, .25);
    outline-offset: 3px;
}

body.single-toolbox-tool #description .toolboxsaas-read-more-button:active,
body.single-toolbox-tool #faq .toolboxsaas-read-more-button:active {
    transform: translateY(0);
    box-shadow: 0 5px 12px rgba(111, 27, 194, .2);
}

#reviews .fpai-review-login {
    margin-top: 12px;
    padding: 9px 18px;
    border: 0;
    border-radius: 999px;
    background: linear-gradient(135deg, #8b2ce7, #a044fa);
    color: #fff;
    font-size: 14px;
    font-weight: 700;
    cursor: pointer;
}

#reviews .fpai-review-login:hover {
    filter: brightness(.94);
}

@media (max-width: 575px) {
    #toolboxsaas-login-modal {
        align-items: flex-start;
        padding: 10px;
    }

    #toolboxsaas-login-modal .fpai-login-dialog {
        width: 100%;
        max-height: calc(100vh - 20px);
    }

    #toolboxsaas-login-modal .toolboxsaas-modal-header,
    #toolboxsaas-login-modal .toolboxsaas-modal-content {
        padding: 24px 20px;
    }
}

/* Discover sidebar: show the 21 main categories only. */
.mt-tool-search .checkbox-children,
.mt-tool-search .toolboxsaas-more-categories-filter {
    display: none !important;
}

/* Discover category hover in the site's purple brand palette. */
.search-field-wrap .checkbox-wrapper .checkbox-tile:hover {
    border-color: rgba(160, 68, 250, .45) !important;
    background: #f5ecff !important;
    color: #a044fa !important;
}

/* Selected categories: use a purple checkmark instead of a purple tile. */
.search-field-wrap .checkbox-wrapper .checkbox-input:checked + .checkbox-tile {
    border-color: transparent !important;
    background: transparent !important;
    color: inherit !important;
    font-weight: inherit !important;
}

.search-field-wrap .checkbox-wrapper .checkbox-input:checked + .checkbox-tile::before {
    border-color: #a044fa !important;
    background-color: #fff !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 256 256'%3E%3Cpolyline points='216 72 104 184 48 128' fill='none' stroke='%23a044fa' stroke-linecap='round' stroke-linejoin='round' stroke-width='32'/%3E%3C/svg%3E") !important;
}

.search-field-wrap .checkbox-input:checked + .checkbox-tile .toolboxsaas-filter-count {
    background: #f2f2f2 !important;
    color: #777 !important;
}

/* Shared trust and policy page design, aligned with the About Us visual system. */
.fpai-trust-page {
    --fpai-purple: #a044fa;
    --fpai-purple-dark: #3c315b;
    --fpai-ink: #17131c;
    --fpai-muted: #6f6a78;
    --fpai-border: #e9e4f0;
    overflow: hidden;
    color: var(--fpai-ink);
    font-family: "Inter", sans-serif;
}

.fpai-trust-container {
    width: min(1180px, calc(100% - 40px));
    margin-inline: auto;
}

.fpai-trust-hero {
    position: relative;
    isolation: isolate;
    padding: 78px 0 88px;
    overflow: hidden;
    border-radius: 0 0 48px 48px;
    background:
        linear-gradient(115deg, rgba(255,255,255,.95), rgba(247,238,255,.9)),
        url("/wp-content/uploads/2025/09/home-header3.jpg") center / cover no-repeat;
}

.fpai-trust-hero::after {
    position: absolute;
    z-index: -1;
    right: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    content: "";
    background: linear-gradient(90deg, transparent, rgba(160,68,250,.38), transparent);
}

.fpai-trust-orb {
    position: absolute;
    z-index: -1;
    border-radius: 50%;
    pointer-events: none;
}

.fpai-trust-orb--one {
    top: -210px;
    right: 3%;
    width: 470px;
    height: 470px;
    background: radial-gradient(circle, rgba(160,68,250,.18), transparent 68%);
}

.fpai-trust-orb--two {
    bottom: -220px;
    left: 2%;
    width: 420px;
    height: 420px;
    background: radial-gradient(circle, rgba(92,72,190,.12), transparent 70%);
}

.fpai-trust-hero__inner {
    text-align: center;
}

.fpai-trust-breadcrumb {
    display: flex;
    justify-content: center;
    gap: 9px;
    margin-bottom: 24px;
    color: #77717f;
    font-size: 14px;
}

.fpai-trust-breadcrumb a {
    color: var(--fpai-purple-dark);
    font-weight: 600;
}

.fpai-trust-kicker {
    color: var(--fpai-purple);
    font-size: 13px;
    font-weight: 750;
    letter-spacing: .13em;
    text-transform: uppercase;
}

.fpai-trust-hero h1 {
    max-width: 920px;
    margin: 15px auto 16px;
    color: var(--fpai-purple-dark);
    font-size: clamp(42px, 5vw, 66px);
    font-weight: 760;
    line-height: 1.08;
    letter-spacing: -.045em;
}

.fpai-trust-hero__inner > p {
    max-width: 780px;
    margin: 0 auto;
    color: var(--fpai-muted);
    font-size: 18px;
    line-height: 1.7;
}

.fpai-trust-updated {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-top: 27px;
    padding: 9px 15px;
    border: 1px solid rgba(160,68,250,.15);
    border-radius: 999px;
    background: rgba(255,255,255,.8);
    color: #746d7d;
    font-size: 12px;
}

.fpai-trust-content {
    padding: 88px 0 100px;
    background: radial-gradient(circle at 100% 0%, rgba(160,68,250,.055), transparent 26%), #fff;
}

.fpai-trust-layout {
    display: grid;
    grid-template-columns: 300px minmax(0, 1fr);
    gap: 34px;
    align-items: start;
}

.fpai-trust-aside,
.fpai-trust-article {
    border: 1px solid var(--fpai-border);
    border-radius: 24px;
    background: #fff;
    box-shadow: 0 16px 45px rgba(43,25,65,.06);
}

.fpai-trust-aside {
    position: sticky;
    top: 115px;
    padding: 28px;
    background: linear-gradient(145deg, #fff, #fbf7ff);
}

.fpai-trust-aside__icon {
    display: grid;
    place-items: center;
    width: 52px;
    height: 52px;
    margin-bottom: 20px;
    border-radius: 16px;
    background: linear-gradient(145deg, #f0ddff, #fff);
    color: var(--fpai-purple);
    font-size: 21px;
}

.fpai-trust-aside h2 {
    margin: 0 0 10px;
    color: var(--fpai-purple-dark);
    font-size: 22px;
    font-weight: 750;
    line-height: 1.25;
}

.fpai-trust-aside p {
    margin: 0 0 19px;
    color: var(--fpai-muted);
    font-size: 14px;
    line-height: 1.7;
}

.fpai-trust-aside a {
    color: var(--fpai-purple);
    font-size: 13px;
    font-weight: 700;
}

.fpai-trust-article {
    padding: clamp(30px, 5vw, 58px);
}

.fpai-trust-article > :first-child {
    margin-top: 0 !important;
}

.fpai-trust-article h2 {
    margin: 44px 0 13px;
    color: var(--fpai-purple-dark);
    font-size: clamp(25px, 3vw, 32px);
    font-weight: 750;
    line-height: 1.2;
    letter-spacing: -.025em;
}

.fpai-trust-article h3 {
    margin: 28px 0 10px;
    color: var(--fpai-ink);
    font-size: 19px;
    font-weight: 700;
}

.fpai-trust-article p,
.fpai-trust-article li {
    color: #5e5865;
    font-size: 16px;
    line-height: 1.85;
}

.fpai-trust-article ul,
.fpai-trust-article ol {
    margin: 14px 0 24px;
    padding-left: 22px;
}

.fpai-trust-article li {
    margin-bottom: 8px;
}

.fpai-trust-article a {
    color: var(--fpai-purple);
    text-decoration: underline;
    text-underline-offset: 3px;
}

.fpai-trust-article .fpai-policy-note {
    margin: 30px 0;
    padding: 20px 22px;
    border-left: 4px solid var(--fpai-purple);
    border-radius: 0 14px 14px 0;
    background: #f8f1ff;
}

.fpai-trust-cta {
    padding: 72px 0;
    background: #17101f;
}

.fpai-trust-cta__inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 35px;
}

.fpai-trust-cta h2 {
    margin: 10px 0 8px;
    color: #fff;
    font-size: clamp(30px, 4vw, 44px);
    font-weight: 750;
}

.fpai-trust-cta p {
    margin: 0;
    color: #bdb4c7;
}

.fpai-trust-button {
    flex: 0 0 auto;
    padding: 16px 24px;
    border-radius: 12px;
    background: linear-gradient(135deg, #8f32e8, #a944ff);
    box-shadow: 0 12px 30px rgba(160,68,250,.3);
    color: #fff !important;
    font-weight: 700;
}

@media (max-width: 900px) {
    .fpai-trust-layout {
        grid-template-columns: 1fr;
    }

    .fpai-trust-aside {
        position: static;
    }
}

@media (max-width: 680px) {
    .fpai-trust-container {
        width: min(100% - 28px, 1180px);
    }

    .fpai-trust-hero {
        padding: 52px 0 62px;
        border-radius: 0 0 30px 30px;
    }

    .fpai-trust-hero h1 {
        font-size: 39px;
    }

    .fpai-trust-hero__inner > p {
        font-size: 16px;
    }

    .fpai-trust-content {
        padding: 62px 0 72px;
    }

    .fpai-trust-article {
        padding: 26px 22px;
    }

    .fpai-trust-cta__inner {
        align-items: flex-start;
        flex-direction: column;
    }
}
@media only screen and (max-width: 767px) {
    .mt-users-grid-wrap {
        cursor: pointer;
    }
}

/* Keep accessibility-only labels off-screen until they receive keyboard focus. */
.screen-reader-text {
    position: absolute !important;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    clip-path: inset(50%);
    border: 0;
    white-space: nowrap;
}

.skip-link.screen-reader-text:focus {
    top: 5px;
    left: 5px;
    z-index: 100000;
    display: block;
    width: auto;
    height: auto;
    padding: 14px 20px;
    margin: 0;
    overflow: visible;
    clip: auto !important;
    clip-path: none;
    border-radius: 6px;
    background: #ffffff;
    box-shadow: 0 5px 20px rgba(31, 15, 45, .22);
    color: #64149f;
    font-size: 14px;
    font-weight: 700;
    line-height: 1.3;
    text-decoration: none;
    white-space: normal;
}



/* Restore the original homepage hero subtitle presentation. */
html body.home .elementor-element-74bf30e p.fpai-home-hero-copy {
    margin: 0 !important;
    color: #6A6B76 !important;
    -webkit-text-fill-color: #6A6B76 !important;
    font-family: "Inter", Arial, sans-serif !important;
    font-size: 18px !important;
    font-style: normal !important;
    font-weight: 600 !important;
    line-height: 28px !important;
    letter-spacing: normal !important;
}

html body.home .elementor-element-74bf30e .fpai-home-hero-stat {
    color: #A044FA !important;
    -webkit-text-fill-color: #A044FA !important;
    font: inherit !important;
    font-weight: 700 !important;
}

@media (max-width: 767px) {
    html body.home .elementor-element-74bf30e p.fpai-home-hero-copy {
        font-size: 17px !important;
        line-height: 26px !important;
    }
}
