/* HUUN Product FAQ rc57 — Pearl Glass, isolated from the approved carousel.
 * Same questions, category keys, transport markers and native <details> UI.
 * A static pearl surface gives depth without a large live backdrop blur.
 */
@font-face {
    font-family:"Outfit";
    font-style:normal;
    font-weight:100 900;
    font-display:swap;
    src:url("../modules/huun-technical-data/assets/fonts/outfit-latin-wght-normal.woff2") format("woff2");
}

/* Public placement remains tab-only; Elementor has its own preview marker. */
:is(.elementor-widget-huun-product-faq,.elementor-widget-huun-carport-faq).hfq-tab-source,
.huun-product-faq[data-hfq-placement="tab"] {display:none!important;}
#hpd-faq :is(.elementor-widget-huun-product-faq,.elementor-widget-huun-carport-faq).hfq-tab-source,
#hpd-faq .huun-product-faq[data-hfq-placement="tab"] {display:block!important;}
:is(.elementor-widget-huun-product-faq,.elementor-widget-huun-carport-faq) {
    width:100%;max-width:100%;min-width:0;align-self:stretch;
}
:is(.elementor-widget-huun-product-faq,.elementor-widget-huun-carport-faq) > .elementor-widget-container {min-width:0;max-width:100%;}
.hfq-source-empty {display:none!important;}

.huun-product-faq.huun-equa-faq {
    --hfq-ink:#083251;
    --hfq-body:#526979;
    --hfq-muted:#647b8b;
    --hfq-line:rgba(8,50,81,.13);
    --hfq-line-strong:rgba(8,50,81,.23);
    --hfq-shell-radius:24px;
    --hfq-panel-radius:20px;
    --hfq-item-radius:14px;
    --hfq-small-radius:11px;
    --hfq-inset:clamp(18px,2vw,30px);
    --hfq-layout-gap:clamp(18px,2vw,28px);
    --hfq-item-gap:10px;
    --hfq-question-pad:18px;
    --hfq-plus:32px;
    position:relative;
    display:block;
    box-sizing:border-box;
    width:100%;max-width:100%;min-width:0;
    margin:0!important;padding:0!important;border:0;
    background:none;color:var(--hfq-ink);
    font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
    font-synthesis:none;line-height:1.65;text-align:left;
    isolation:isolate;container:huun-product-faq / inline-size;
}
.huun-product-faq.huun-equa-faq *,
.huun-product-faq.huun-equa-faq *::before,
.huun-product-faq.huun-equa-faq *::after {box-sizing:border-box;}
.huun-product-faq.huun-equa-faq :is(h2,h3,h4,p,span,button,summary,li,a,th,td,strong,em) {
    font-family:"Outfit",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif!important;
}
.huun-product-faq.huun-equa-faq [hidden] {display:none!important;}

/* Match HUUN's rounded light stage; never break out of the page gutters.
 * Do not clip this ancestor: the topic navigation must be able to stick. */
.huun-product-faq.huun-equa-faq :is(.huun-faq-shell,.huun-faq-shell-editor) {
    display:block;position:relative;
    width:100%;max-width:100%;min-width:0;margin:0!important;
    padding:var(--hfq-inset);
    border:1px solid rgba(8,50,81,.11);
    border-radius:var(--hfq-shell-radius);
    background:linear-gradient(135deg,#f8fafc 0%,#edf4f8 52%,#f8fafc 100%);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.96),0 8px 28px rgba(8,50,81,.045);
}
.huun-product-faq.huun-equa-faq .huun-faq-layout {
    display:grid;
    grid-template-columns:clamp(220px,22%,280px) minmax(0,1fr);
    align-items:start;gap:var(--hfq-layout-gap);
    min-width:0;margin:0;padding:0;
}
.huun-product-faq.huun-equa-faq .huun-faq-sidebar {
    position:sticky;
    top:var(--hpd-top,96px);
    align-self:start;
    width:100%;min-width:0;margin:0;padding:0;z-index:1;
}
.huun-product-faq.huun-equa-faq .huun-faq-content {
    display:block;min-width:0;width:100%;margin:0;padding:0;background:none;border:0;
}

/* Topic navigation: same navy active surface as the product dock. */
.huun-product-faq.huun-equa-faq .huun-faq-filter-wrap {
    position:relative;width:100%;min-width:0;
    padding:9px;border:1px solid var(--hfq-line);
    border-radius:var(--hfq-panel-radius);
    background:linear-gradient(145deg,rgba(255,255,255,.97),rgba(239,246,250,.93));
    box-shadow:inset 0 1px 0 #fff,0 5px 18px rgba(8,50,81,.035);
}
.huun-product-faq.huun-equa-faq .huun-faq-filter {
    display:flex;flex-direction:column;align-items:stretch;gap:4px;
    width:100%;max-width:100%;min-width:0;
    margin:0;padding:0;overflow:visible;
}
.huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn {
    -webkit-appearance:none!important;appearance:none!important;
    display:flex!important;align-items:center!important;justify-content:flex-start!important;
    flex:0 0 auto;width:100%!important;min-width:0!important;
    min-height:44px!important;height:auto!important;
    margin:0!important;padding:11px 13px!important;
    border:1px solid transparent!important;border-radius:var(--hfq-small-radius)!important;
    background:transparent!important;color:var(--hfq-body)!important;
    box-shadow:none!important;transform:none!important;
    font-size:14px!important;font-weight:500!important;line-height:1.4!important;
    letter-spacing:0!important;text-align:left!important;text-transform:none!important;
    white-space:normal!important;overflow-wrap:anywhere;
    cursor:pointer;touch-action:manipulation;
    transition:background-color .16s ease,border-color .16s ease,color .16s ease;
}
.huun-product-faq.huun-equa-faq .huun-faq-filter-btn::before,
.huun-product-faq.huun-equa-faq .huun-faq-filter-btn::after {content:none!important;}
.huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn.is-active {
    border-color:rgba(8,50,81,.92)!important;
    background:linear-gradient(135deg,#174b68,#083251)!important;color:#fff!important;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.2),0 3px 9px rgba(8,50,81,.12)!important;
}
.huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn:focus-visible {
    outline:2px solid #28709a!important;outline-offset:2px!important;
}
.huun-product-faq.huun-equa-faq .huun-faq-filter-progress {display:none;}

/* Categories have a restrained translucent shell; questions carry the focus. */
.huun-product-faq.huun-equa-faq .huun-faq-group {
    display:block;position:relative;min-width:0;width:100%;
    margin:0 0 20px!important;padding:20px;
    scroll-margin-top:calc(var(--hpd-top,96px) + 12px);
    border:1px solid var(--hfq-line);
    border-radius:var(--hfq-panel-radius);
    background:linear-gradient(150deg,rgba(255,255,255,.78),rgba(248,251,253,.53));
    box-shadow:inset 0 1px 0 #fff,0 4px 16px rgba(8,50,81,.025);
}
.huun-product-faq.huun-equa-faq .huun-faq-group:last-child {margin-bottom:0!important;}
.huun-product-faq.huun-equa-faq .huun-faq-group-head {
    display:flex;align-items:center;gap:12px;
    min-width:0;min-height:30px;margin:1px 0 18px;padding:0 2px;
}
.huun-product-faq.huun-equa-faq .huun-faq-group-head::before {
    content:"";display:block;flex:0 0 3px;width:3px;height:22px;
    border-radius:3px;background:linear-gradient(180deg,#466f89,#083251);
}
.huun-product-faq.huun-equa-faq .huun-faq-group-head h3 {
    min-width:0;margin:0!important;padding:0!important;
    color:var(--hfq-ink)!important;font-size:22px!important;
    font-weight:600!important;line-height:1.25!important;
    letter-spacing:-.025em!important;text-transform:none!important;
    overflow-wrap:anywhere;
}
.huun-product-faq.huun-equa-faq .huun-faq-list {
    display:grid;grid-template-columns:minmax(0,1fr);gap:var(--hfq-item-gap);
    width:100%;min-width:0;margin:0;padding:0;
}
.huun-product-faq.huun-equa-faq .huun-faq-item {
    display:block;position:relative;width:100%;min-width:0;margin:0!important;padding:0!important;
    overflow:hidden;border:1px solid var(--hfq-line);
    border-radius:var(--hfq-item-radius);
    background:linear-gradient(125deg,rgba(255,255,255,.99),rgba(250,252,253,.97));
    box-shadow:inset 0 1px 0 #fff,0 2px 7px rgba(8,50,81,.018);
    transition:border-color .16s ease,box-shadow .16s ease;
}
.huun-product-faq.huun-equa-faq .huun-faq-item[open] {
    border-color:var(--hfq-line-strong);
    background:linear-gradient(135deg,#fff,#f8fbfd);
    box-shadow:inset 0 1px 0 #fff,0 5px 14px rgba(8,50,81,.045);
}
.huun-product-faq.huun-equa-faq .huun-faq-item summary {
    display:grid;grid-template-columns:minmax(0,1fr) var(--hfq-plus);
    align-items:center;gap:16px;
    min-height:66px;margin:0!important;padding:15px var(--hfq-question-pad)!important;
    list-style:none;cursor:pointer;touch-action:manipulation;
    border:0;border-radius:0;background:transparent;box-shadow:none;
    color:var(--hfq-ink)!important;font-size:16px!important;
    font-weight:500!important;line-height:1.5!important;
    letter-spacing:-.01em;text-transform:none;overflow-wrap:anywhere;
}
.huun-product-faq.huun-equa-faq .huun-faq-item summary > span:first-child {min-width:0;}
.huun-product-faq.huun-equa-faq .huun-faq-item summary::before,
.huun-product-faq.huun-equa-faq .huun-faq-item summary::after {content:none!important;}
.huun-product-faq.huun-equa-faq .huun-faq-item summary::-webkit-details-marker {display:none;}
.huun-product-faq.huun-equa-faq .huun-faq-item summary::marker {content:"";}
.huun-product-faq.huun-equa-faq .huun-faq-item summary:focus-visible {
    outline:2px solid #28709a;outline-offset:-4px;border-radius:var(--hfq-item-radius);
}
.huun-product-faq.huun-equa-faq .huun-faq-plus {
    position:relative;display:block;flex:none;
    width:var(--hfq-plus);height:var(--hfq-plus);min-width:var(--hfq-plus);
    margin:0;padding:0;border:1px solid rgba(8,50,81,.12);
    border-radius:10px;color:var(--hfq-ink);
    background:linear-gradient(145deg,#fff,#e7f0f6);
    box-shadow:inset 0 1px 0 #fff;
    transition:background-color .16s ease,border-color .16s ease;
}
.huun-product-faq.huun-equa-faq .huun-faq-plus::before,
.huun-product-faq.huun-equa-faq .huun-faq-plus::after {
    content:"";position:absolute;left:50%;top:50%;width:11px;height:1.5px;
    border-radius:2px;background:currentColor;transform:translate(-50%,-50%);
}
.huun-product-faq.huun-equa-faq .huun-faq-plus::after {transform:translate(-50%,-50%) rotate(90deg);}
.huun-product-faq.huun-equa-faq .huun-faq-item[open] .huun-faq-plus {
    background:linear-gradient(135deg,#174b68,#083251);border-color:#083251;color:#fff;
    box-shadow:inset 0 1px 0 rgba(255,255,255,.2);
}
.huun-product-faq.huun-equa-faq .huun-faq-item[open] .huun-faq-plus::after {opacity:0;}
.huun-product-faq.huun-equa-faq .huun-faq-answer {
    display:block;min-width:0;margin:0 var(--hfq-question-pad)!important;
    padding:18px 0 22px!important;
    border:0;border-top:1px solid rgba(8,50,81,.09);
    color:var(--hfq-body);font-size:15px;line-height:1.75;
    overflow-wrap:anywhere;
}
.huun-product-faq.huun-equa-faq .huun-faq-answer p {margin:0!important;padding:0!important;color:inherit;line-height:inherit;font-size:inherit;}
.huun-product-faq.huun-equa-faq .huun-faq-answer p + p {margin-top:12px!important;}
.huun-product-faq.huun-equa-faq .huun-faq-answer strong {font-weight:600;color:var(--hfq-ink);}
.huun-product-faq.huun-equa-faq .huun-faq-answer :is(ul,ol) {margin:12px 0;padding-left:22px;}
.huun-product-faq.huun-equa-faq .huun-faq-answer li + li {margin-top:6px;}
.huun-product-faq.huun-equa-faq .huun-faq-answer a {color:var(--hfq-ink);text-decoration:underline;text-underline-offset:3px;}
.huun-product-faq.huun-equa-faq .huun-faq-answer a:focus-visible {outline:2px solid #28709a;outline-offset:3px;}

/* Retain the supplied tables. Only the table region scrolls on small screens. */
.huun-product-faq.huun-equa-faq .huun-faq-table-wrap {
    width:100%;max-width:100%;min-width:0;
    margin:16px 0 0;padding:0;overflow-x:auto;overscroll-behavior-x:contain;
    border:1px solid var(--hfq-line);border-radius:12px;
    background:#fff;scrollbar-width:thin;scrollbar-color:#b0c5d3 #eff5f8;
}
.huun-product-faq.huun-equa-faq .huun-faq-table-wrap:focus-visible {outline:2px solid #28709a;outline-offset:3px;}
.huun-product-faq.huun-equa-faq .huun-faq-table {
    width:100%;min-width:700px;max-width:none;margin:0!important;
    border:0;border-collapse:separate;border-spacing:0;background:#fff;color:var(--hfq-body);
}
.huun-product-faq.huun-equa-faq .huun-faq-load-table {min-width:650px;}
.huun-product-faq.huun-equa-faq .huun-faq-table :is(th,td) {
    padding:13px 15px;border:0;border-bottom:1px solid rgba(8,50,81,.09);
    text-align:left;vertical-align:top;white-space:nowrap;font-size:13px;line-height:1.55;
}
.huun-product-faq.huun-equa-faq .huun-faq-table th {
    background:linear-gradient(180deg,#f4f8fb,#eaf2f7);color:var(--hfq-ink);font-weight:600;
}
.huun-product-faq.huun-equa-faq .huun-faq-load-table th {white-space:normal;}
.huun-product-faq.huun-equa-faq .huun-faq-table tbody tr:nth-child(even) {background:#f8fbfd;}
.huun-product-faq.huun-equa-faq .huun-faq-table tbody tr:last-child td {border-bottom:0;}
.huun-product-faq.huun-equa-faq .huun-faq-answer .huun-faq-note {
    margin:0!important;padding:13px 15px!important;border-top:1px solid var(--hfq-line);
    background:#f1f6fa;color:var(--hfq-muted);font-size:12px;line-height:1.65;
}
.huun-product-faq.huun-equa-faq .huun-faq-answer .huun-faq-load-footnote {margin-top:14px!important;}

/* Keep all editor-only content out of the public tab. */
.huun-product-faq.huun-equa-faq .hfq-editor-note {display:none;}
.huun-product-faq.huun-equa-faq[data-hfq-placement="editor"] .hfq-editor-note {
    display:block;margin:0 0 16px;padding:14px 18px;border:1px dashed #b6ccda;
    border-radius:14px;background:#f1f7fb;color:#526979;font-size:13px;line-height:1.6;
}
.huun-product-faq.huun-equa-faq .hfq-editor-note strong {font-weight:600;color:#083251;}
.huun-product-faq.huun-equa-faq .hfq-empty {padding:24px;border:1px dashed #bfd2e0;border-radius:16px;color:#526979;}

@media(hover:hover) {
    .huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn:not(.is-active):hover {
        border-color:rgba(8,50,81,.11)!important;background:rgba(232,241,247,.82)!important;color:var(--hfq-ink)!important;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-item:not([open]):hover {
        border-color:rgba(8,50,81,.22);box-shadow:inset 0 1px 0 #fff,0 4px 11px rgba(8,50,81,.035);
    }
}

/* Container-aware: also works inside Elementor's narrower edit canvas. */
@container huun-product-faq (max-width:820px) {
    .huun-product-faq.huun-equa-faq .huun-faq-layout {display:block;}
    .huun-product-faq.huun-equa-faq .huun-faq-sidebar {position:static;top:auto;margin:0 0 18px;}
    .huun-product-faq.huun-equa-faq .huun-faq-filter-wrap {padding:8px;border-radius:16px;}
    .huun-product-faq.huun-equa-faq .huun-faq-filter {
        flex-direction:row;flex-wrap:nowrap;align-items:center;gap:6px;
        overflow-x:auto;overflow-y:hidden;padding:2px 2px 6px;
        scrollbar-width:none;scroll-padding-inline:2px;overscroll-behavior-x:contain;
        -webkit-overflow-scrolling:touch;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-filter::-webkit-scrollbar {display:none;}
    .huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn {
        flex:0 0 auto!important;width:auto!important;min-width:max-content!important;
        min-height:44px!important;padding:10px 13px!important;font-size:13px!important;white-space:nowrap!important;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-filter-progress {
        display:block;position:relative;width:100%;height:2px;margin:4px 0 0;
        overflow:hidden;border-radius:4px;background:#dce7ee;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-filter-progress span {
        position:absolute;top:0;left:0;display:block;width:34%;height:100%;
        border-radius:inherit;background:#7a9ab0;transform:translateX(0);
    }
}
@container huun-product-faq (max-width:560px) {
    .huun-product-faq.huun-equa-faq :is(.huun-faq-shell,.huun-faq-shell-editor) {
        --hfq-question-pad:14px;--hfq-plus:30px;
        padding:12px;border-radius:20px;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-group {
        padding:13px 10px 10px;border-radius:16px;margin-bottom:14px!important;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-group-head {gap:10px;margin-bottom:14px;padding:0 3px;}
    .huun-product-faq.huun-equa-faq .huun-faq-group-head h3 {font-size:20px!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-item summary {gap:10px;font-size:15px!important;min-height:62px;padding-block:14px!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-answer {font-size:14.5px;line-height:1.72;padding:15px 0 18px!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-table :is(th,td) {padding:11px 13px;}
    .huun-product-faq.huun-equa-faq .huun-faq-sidebar {margin-bottom:14px;}
}
/* Conservative responsive fallback for browsers without container queries. */
@supports not (container-type:inline-size) {
    @media(max-width:900px) {
        .huun-product-faq.huun-equa-faq .huun-faq-layout {grid-template-columns:200px minmax(0,1fr);gap:18px;}
    }
    @media(max-width:700px) {
        .huun-product-faq.huun-equa-faq .huun-faq-layout {display:block;}
        .huun-product-faq.huun-equa-faq .huun-faq-sidebar {position:static;margin-bottom:16px;}
        .huun-product-faq.huun-equa-faq .huun-faq-filter {flex-direction:row;overflow-x:auto;gap:6px;}
        .huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn {width:auto!important;min-width:max-content!important;white-space:nowrap!important;}
        .huun-product-faq.huun-equa-faq :is(.huun-faq-shell,.huun-faq-shell-editor) {padding:12px;border-radius:20px;}
        .huun-product-faq.huun-equa-faq .huun-faq-group {padding:12px;}
    }
}
@media(prefers-reduced-motion:reduce) {
    .huun-product-faq.huun-equa-faq * {transition:none!important;scroll-behavior:auto!important;}
}
@media(prefers-reduced-transparency:reduce) {
    .huun-product-faq.huun-equa-faq :is(.huun-faq-shell,.huun-faq-shell-editor) {background:#f1f6fa;}
    .huun-product-faq.huun-equa-faq :is(.huun-faq-group,.huun-faq-filter-wrap,.huun-faq-item) {background:#fff;}
}
@media(forced-colors:active) {
    .huun-product-faq.huun-equa-faq :is(.huun-faq-shell,.huun-faq-shell-editor,.huun-faq-filter-wrap,.huun-faq-group,.huun-faq-item,.huun-faq-table-wrap,.huun-faq-plus) {
        background:Canvas!important;color:CanvasText;border-color:CanvasText;box-shadow:none;
    }
    .huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn {color:ButtonText!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-filter .huun-faq-filter-btn.is-active {background:Highlight!important;color:HighlightText!important;border-color:Highlight!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-item summary,
    .huun-product-faq.huun-equa-faq .huun-faq-group-head h3 {color:CanvasText!important;}
    .huun-product-faq.huun-equa-faq .huun-faq-answer {color:CanvasText;}
    .huun-product-faq.huun-equa-faq .huun-faq-item[open] .huun-faq-plus {background:Highlight!important;color:HighlightText;}
    .huun-product-faq.huun-equa-faq .huun-faq-filter-progress span {background:Highlight;}
    .huun-product-faq.huun-equa-faq :is(a,button,summary):focus-visible {outline-color:Highlight!important;}
}

/* rc112: native FAQ tabs share the same available width even when Elementor
   retained boxed source containers. Only wrappers containing our FAQ qualify. */
#hpd-faq :is(.e-con,.e-con-inner,.elementor-container,.elementor-column,.elementor-column-wrap,.elementor-widget-wrap):has(.huun-product-faq) {
    --container-max-width:100%;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    box-sizing:border-box;
}
