/*!
 * Themeasy — FAQ Accordion Widget Styles
 *
 * Editorial FAQ list: 1px dividers, large question typography, optional
 * leading counters (pure CSS counters) and a morphing plus/minus or rotating
 * chevron indicator, optionally seated on a background shape (circle by
 * default). Items stack in a flex column, so the gap between them is a
 * single token. Panels collapse with the CSS grid 0fr/1fr technique —
 * height-accurate motion with zero JS measurement. Collapse only engages
 * when JS has enhanced the widget (`--js`) or in the editor (`--static`);
 * with no JS every answer stays visible.
 *
 * Public tokens (--tms-*) are consumed — never private (--themeasy-*).
 *
 * @author Themeasy
 * @link https://themeasy.co
 * @since 1.0.0
 */
.tms-faq-accordion{--tms-faq-accordion-divider-color:var(--tms-border-color,#e5e7eb);--tms-faq-accordion-duration:.4s;--tms-faq-accordion-ease:cubic-bezier(.65, 0, .35, 1);--tms-faq-accordion-pad:1.5rem;--tms-faq-accordion-gap:1.25rem;--tms-faq-accordion-number-width:2.5rem;--tms-faq-accordion-item-gap:0px;--tms-faq-accordion-icon-thickness:2px;--tms-faq-accordion-icon-color:var(--tms-heading-color,#11131a);--tms-faq-accordion-icon-open-color:var(--tms-faq-accordion-icon-color);--tms-faq-accordion-node-size:2.5em;--tms-faq-accordion-node-bg:transparent;--tms-faq-accordion-node-open-bg:var(--tms-faq-accordion-node-bg);--tms-faq-accordion-node-border-color:currentColor;--tms-faq-accordion-node-open-border-color:var(--tms-faq-accordion-node-border-color);row-gap:var(--tms-faq-accordion-item-gap);border-top:1px solid var(--tms-faq-accordion-divider-color);counter-reset:tms-faq;flex-direction:column;width:100%;display:flex}.tms-faq-accordion--indicator-shaped{--tms-faq-accordion-node-bg:var(--tms-surface-color,#f8f9fa);--tms-faq-accordion-node-open-bg:var(--tms-primary-color,#2563eb);--tms-faq-accordion-node-open-border-color:var(--tms-faq-accordion-node-open-bg);--tms-faq-accordion-icon-open-color:var(--tms-white-color,#fff)}.tms-faq-accordion .tms-faq-accordion__item{counter-increment:tms-faq;position:relative}.tms-faq-accordion .tms-faq-accordion__item:after{content:"";left:0;right:0;background-color:var(--tms-faq-accordion-divider-color);pointer-events:none;height:1px;position:absolute;bottom:0}.tms-faq-accordion{--tms-faq-accordion-divider-rest:var(--tms-faq-accordion-divider-color)}.tms-faq-accordion--item-bordered .tms-faq-accordion__item--open:after{background-color:var(--tms-faq-accordion-divider-rest)}.tms-faq-accordion .tms-faq-accordion__header{font-size:inherit;line-height:inherit;margin:0}.tms-faq-accordion .tms-faq-accordion__trigger{align-items:center;gap:var(--tms-faq-accordion-gap);width:100%;padding:var(--tms-faq-accordion-pad) 0;box-shadow:none;color:inherit;font:inherit;text-align:start;cursor:pointer;background:0 0;border:0;margin:0;display:flex}.tms-faq-accordion .tms-faq-accordion__number{min-width:var(--tms-faq-accordion-number-width);color:var(--tms-muted-color,#6c757d);font-family:var(--tms-accent-font);letter-spacing:.08em;flex:none;font-size:.875rem;font-weight:600;line-height:1.2}.tms-faq-accordion .tms-faq-accordion__number:before{content:counter(tms-faq, decimal-leading-zero)}.tms-faq-accordion .tms-faq-accordion__question{color:var(--tms-heading-color,#11131a);transition:color var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease);flex:auto;font-size:clamp(1.125rem,1vw + .75rem,1.375rem);font-weight:600;line-height:1.35}.tms-faq-accordion .tms-faq-accordion__trigger:hover .tms-faq-accordion__question{color:var(--tms-primary-color,#2563eb)}.tms-faq-accordion .tms-faq-accordion__icon{box-sizing:border-box;width:1em;height:1em;color:var(--tms-faq-accordion-icon-color);transition:color var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease), background-color var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease), border-color var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease);flex:none;justify-content:center;align-items:center;font-size:1rem;line-height:1;display:inline-flex;position:relative}.tms-faq-accordion .tms-faq-accordion__item--open .tms-faq-accordion__icon{color:var(--tms-faq-accordion-icon-open-color)}.tms-faq-accordion--indicator-shaped .tms-faq-accordion__icon{width:var(--tms-faq-accordion-node-size);height:var(--tms-faq-accordion-node-size);background-color:var(--tms-faq-accordion-node-bg);border-color:var(--tms-faq-accordion-node-border-color);border-radius:50%}.tms-faq-accordion--indicator-shaped .tms-faq-accordion__item--open .tms-faq-accordion__icon{background-color:var(--tms-faq-accordion-node-open-bg);border-color:var(--tms-faq-accordion-node-open-border-color)}.tms-faq-accordion--indicator-plus .tms-faq-accordion__icon:before,.tms-faq-accordion--indicator-plus .tms-faq-accordion__icon:after{content:"";width:1em;height:var(--tms-faq-accordion-icon-thickness);transition:rotate var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease);background-color:currentColor;border-radius:999px;position:absolute;top:50%;left:50%;translate:-50% -50%}.tms-faq-accordion--indicator-plus .tms-faq-accordion__icon:after{rotate:90deg}.tms-faq-accordion--indicator-plus .tms-faq-accordion__item--open .tms-faq-accordion__icon:before,.tms-faq-accordion--indicator-plus .tms-faq-accordion__item--open .tms-faq-accordion__icon:after{rotate:180deg}.tms-faq-accordion .tms-faq-accordion__chevron{fill:none;stroke:currentColor;width:1em;height:1em;stroke-width:var(--tms-faq-accordion-icon-thickness);transition:transform var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease)}.tms-faq-accordion--indicator-chevron .tms-faq-accordion__item--open .tms-faq-accordion__chevron{transform:rotate(180deg)}.tms-faq-accordion .tms-faq-accordion__panel{transition:grid-template-rows var(--tms-faq-accordion-duration) var(--tms-faq-accordion-ease);grid-template-rows:1fr;display:grid}.tms-faq-accordion .tms-faq-accordion__body{visibility:visible;min-height:0;transition:visibility;overflow:hidden}.tms-faq-accordion--js .tms-faq-accordion__item:not(.tms-faq-accordion__item--open) .tms-faq-accordion__panel,.tms-faq-accordion--static .tms-faq-accordion__item:not(.tms-faq-accordion__item--open) .tms-faq-accordion__panel{grid-template-rows:0fr}.tms-faq-accordion--js .tms-faq-accordion__item:not(.tms-faq-accordion__item--open) .tms-faq-accordion__body,.tms-faq-accordion--static .tms-faq-accordion__item:not(.tms-faq-accordion__item--open) .tms-faq-accordion__body{visibility:hidden;transition:visibility 0s var(--tms-faq-accordion-duration)}.tms-faq-accordion .tms-faq-accordion__answer{padding-bottom:var(--tms-faq-accordion-pad);color:var(--tms-body-color,#4a4f5a);font-size:1rem;line-height:1.6}.tms-faq-accordion--numbered .tms-faq-accordion__answer{padding-inline-start:calc(var(--tms-faq-accordion-number-width) + var(--tms-faq-accordion-gap))}.tms-faq-accordion .tms-faq-accordion__answer>:first-child{margin-top:0}.tms-faq-accordion .tms-faq-accordion__answer>:last-child{margin-bottom:0}@media (max-width:767px){.tms-faq-accordion{--tms-faq-accordion-pad:1.125rem;--tms-faq-accordion-gap:.875rem;--tms-faq-accordion-number-width:2rem}}.tms-faq-accordion .tms-faq-accordion__trigger:focus-visible{outline:2px solid var(--tms-primary-color,#2563eb);outline-offset:4px;border-radius:2px}@media (prefers-reduced-motion:reduce){.tms-faq-accordion .tms-faq-accordion__panel,.tms-faq-accordion .tms-faq-accordion__body,.tms-faq-accordion .tms-faq-accordion__question,.tms-faq-accordion .tms-faq-accordion__icon,.tms-faq-accordion .tms-faq-accordion__chevron,.tms-faq-accordion .tms-faq-accordion__icon:before,.tms-faq-accordion .tms-faq-accordion__icon:after{transition-duration:.01ms!important}}