/* Native Elementor accordion: keep its roles, panels, keyboard and open state. */
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-accordion-item {
    border:0 !important; border-bottom:1px solid #202020 !important; border-radius:0 !important;
    background:#070707 !important; box-shadow:none !important; margin:0 !important;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-title {
    position:relative; display:flex; align-items:center; gap:20px; min-height:68px; box-sizing:border-box;
    padding:22px 48px 22px 0 !important; border:0 !important; background:transparent !important;
    color:#eee !important; font-family:Manrope,sans-serif !important; font-size:14px !important;
    font-weight:500 !important; line-height:1.7 !important; text-align:left; cursor:pointer;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-accordion-title {
    color:inherit !important; font:inherit !important; text-decoration:none !important;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-title:hover,
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-title.elementor-active {
    color:#ff6a16 !important;
}
/* The decorative sign is independent of whichever icon is configured in Elementor. */
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion-icon { display:none !important; }
body.txf-accordion-style .elementor-widget-accordion .elementor-tab-title::after {
    content:'+'; position:absolute; right:0; top:50%; transform:translateY(-50%); display:grid; place-items:center;
    width:28px; height:28px; border-radius:50%; background:#161616; color:#eee;
    font-family:Arial,sans-serif; font-size:18px; font-weight:400; line-height:1;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-tab-title.elementor-active::after {
    content:'\2212'; background:#26180f; color:#ff6a16;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-content {
    padding:0 48px 24px 0 !important; border:0 !important; background:#070707 !important; color:#bdbdbd !important;
    font-family:Manrope,sans-serif !important; font-size:13px !important; font-weight:400 !important; line-height:1.9 !important;
}
body.txf-accordion-style .elementor-widget-accordion .elementor-tab-content p:last-child { margin-bottom:0; }
body.txf-accordion-style .elementor-widget-accordion .elementor-tab-content a { color:#ff8a43; }
body.txf-accordion-style .elementor-widget-accordion .elementor-tab-title:focus-visible {
    outline:2px solid #ff6a16; outline-offset:3px;
}

/* Current Elementor nested accordion uses native details/summary. */
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion { gap:0 !important; }
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item {
    border:0 !important; border-bottom:1px solid #202020 !important; border-radius:0 !important; background:#070707 !important;
}
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item-title {
    position:relative; min-height:68px; padding:22px 48px 22px 0 !important; border:0 !important;
    background:transparent !important; color:#eee !important; list-style:none;
}
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item-title-text {
    color:inherit !important; font:500 14px/1.7 Manrope,sans-serif !important;
}
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item-title-icon { display:none !important; }
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item-title::after {
    content:'+'; position:absolute; right:0; top:50%; transform:translateY(-50%); display:grid; place-items:center;
    width:28px; height:28px; border-radius:50%; background:#161616; color:#eee; font:400 18px/1 Arial,sans-serif;
}
body.txf-accordion-style .elementor-widget-n-accordion details[open] > summary { color:#ff6a16 !important; }
body.txf-accordion-style .elementor-widget-n-accordion details[open] > summary::after { content:'\2212'; color:#ff6a16; background:#26180f; }
body.txf-accordion-style .elementor-widget-n-accordion .e-n-accordion-item > [role='region'] {
    padding:0 48px 24px 0 !important; border:0 !important; background:#070707 !important; color:#bdbdbd; font:400 13px/1.9 Manrope,sans-serif;
}
body.txf-accordion-style .elementor-widget-n-accordion summary:focus-visible { outline:2px solid #ff6a16; outline-offset:3px; }

/* Full FAQ page only: the shared widget styles above also work on other pages. */
body.txf-faq-page, body.txf-faq-page .site-content { background:#070707; }
.txf-faq-hero { background:#101010 url('../images/triplex-faq-background.jpg') center / cover no-repeat; padding:30px 0 56px; }
.txf-faq-container { box-sizing:border-box; width:100%; max-width:1400px; margin-inline:auto; padding-inline:28px; }
.txf-breadcrumb { display:flex; gap:10px; align-items:center; margin-bottom:32px; color:#b5b5b5; font:400 11px/1.6 Manrope,sans-serif; }
.txf-breadcrumb a { color:#b5b5b5; text-decoration:none; }
.txf-eyebrow { display:inline-block; border:1px solid #703717; border-radius:20px; color:#ff9a58; padding:4px 10px; font-size:10px; margin-bottom:14px; }
.txf-faq-hero h1 { margin:0; color:#fff; font-family:var(--heading-font,'Arial Narrow',sans-serif); font-size:clamp(30px,4vw,46px); font-weight:800; line-height:1.15; text-transform:uppercase; letter-spacing:-.7px; }
.txf-faq-hero h1 span { color:#ff5b00; }
body.txf-faq-page #primary.content-area { padding:60px 24px 72px; background:#070707; }
body.txf-faq-page #primary > .theme-container { max-width:1400px; }
/* Cancel the supplied demo section's stretched inline width and white background. */
body.txf-faq-page .directorist-faq.elementor-section { width:100% !important; left:0 !important; padding:0 !important; background:#070707 !important; }
body.txf-faq-page .directorist-faq > .elementor-container { max-width:990px !important; }
body.txf-faq-page .directorist-faq .elementor-widget-wrap { padding:0 !important; }
/* The demo title is duplicated by the page hero; keep the stored widget editable. */
body.txf-faq-page .directorist-faq .elementor-inner-section:has(.elementor-widget-wpwaxtheme-title) { display:none; }
body.txf-faq-page .directorist-faq .elementor-widget-accordion { margin-bottom:0; }
@media(max-width:767px) {
    .txf-faq-hero { padding:24px 0 36px; background-position:60% center; }
    .txf-faq-container { padding-inline:18px; }
    .txf-breadcrumb { margin-bottom:26px; }
    body.txf-faq-page #primary.content-area { padding:30px 18px 45px; }
    body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-title { min-height:64px; padding:19px 40px 19px 0 !important; font-size:13px !important; }
    body.txf-accordion-style .elementor-widget-accordion .elementor-accordion .elementor-tab-content { padding-right:8px !important; }
}
