/* COMPILED FROM scss/faqs.scss — DO NOT EDIT DIRECTLY (CodeKit regenerates this) */

/* ============================= FAQ HERO ============================= */

.faq-hero { text-align: center; padding-top: 6em; padding-bottom: 4.5em; }
.faq-hero .faq-hero-inner { margin-left: auto; margin-right: auto; max-width: 840px; }
.faq-hero h1 { margin-bottom: 1em; line-height: 1.4em; font-size: clamp(3rem, 6vw, 6rem); font-weight: bold; }
.faq-hero p { font-weight: normal; line-height: 1.6em; margin-bottom: 1.5em; font-size: clamp(1.5rem, 3vw, 2.5rem); color: #666; }

/* LIVE SEARCH BOX */
.faq-search { position: relative; margin-left: auto; margin-right: auto; max-width: 620px; margin-top: 3em; }
.faq-search .faq-search-input { display: block; box-sizing: border-box; font-size: clamp(1rem, 1.25vw, 1.25rem); width: 100%; padding: 1.1em 3em 1.1em 1.5em; border: 2px solid #ddd; border-radius: 50px; outline: none; color: #222; background: #fff; }
.faq-search .faq-search-input:focus { border-color: #666; }
.faq-search .faq-search-input::placeholder { color: #888; }
.faq-search .faq-search-clear { position: absolute; cursor: pointer; text-align: center; display: none; top: 50%; right: 1.1em; width: 1.6em; height: 1.6em; margin-top: -0.8em; line-height: 1.55em; color: #888; font-size: 1.4em; }
.faq-search .faq-search-clear:hover { color: #222; }
.faq-search .faq-search-clear.show { display: block; }

/* ============================= FAQ LIST ============================= */

.faqs { padding-bottom: 6em; }

/* CONTROL BAR — EXPAND / COLLAPSE ALL */
.faq-bar { display: flex; flex-wrap: wrap; justify-content: flex-end; margin-left: auto; margin-right: auto; max-width: 960px; margin-bottom: 1.5em; }
.faq-toggle-all { cursor: pointer; font-size: clamp(0.875rem, 1vw, 1rem); text-transform: uppercase; padding: 0.7em 1.4em; border: 1px solid #ddd; border-radius: 50px; background: #fff; color: #666; font-weight: bold; letter-spacing: 0.05em; }
.faq-toggle-all:hover { border-color: #666; color: #222; }

/* GROUPS */
.faq-groups { margin-left: auto; margin-right: auto; max-width: 960px; }
.faq-group { margin-bottom: 3em; }
.faq-group .faq-cat-toggle { display: flex; align-items: center; justify-content: space-between; cursor: pointer; font-size: clamp(1.5rem, 3vw, 2.5rem); width: 100%; margin-bottom: 0.4em; border: none; background: none; text-align: left; font-family: inherit; color: #222; font-weight: bold; }
.faq-group .faq-cat-toggle:hover { color: #666; }
.faq-group .faq-cat-count { font-size: clamp(0.875rem, 1vw, 1rem); text-align: center; min-width: 2.4em; padding: 0.25em 0.7em; margin-left: 1em; border-radius: 50px; background: #eee; color: #666; font-weight: normal; }

/* ITEMS */
.faq-item { border-top: 1px solid #ddd; }
.faq-item:last-child { border-bottom: 1px solid #ddd; }
.faq-item .faq-q { display: flex; align-items: center; justify-content: space-between; cursor: pointer; font-size: clamp(1rem, 1.25vw, 1.25rem); width: 100%; padding: 1.1em 0; border: none; background: none; text-align: left; font-family: inherit; color: #222; font-weight: bold; }

/* PLUS / MINUS ICON — CSS TRANSFORM (GPU-FRIENDLY) */
.faq-item .faq-icon { display: block; position: relative; flex: 0 0 auto; width: 18px; height: 18px; margin-left: 1em; }
.faq-item .faq-icon:before,
.faq-item .faq-icon:after { display: block; content: ""; position: absolute; top: 50%; left: 0; width: 100%; height: 2px; margin-top: -1px; background: #666; transition: transform 280ms cubic-bezier(0.445, 0.05, 0.55, 0.95); }
.faq-item .faq-icon:after { transform: rotate(90deg); }

/* ANSWER — THE LONE DIV THAT SLIDES (slideToggle ANIMATES ITS PADDING TOO) */
.faq-item .faq-a { font-weight: normal; line-height: 1.6em; font-size: clamp(1rem, 1.25vw, 1.25rem); display: none; padding-bottom: 1.4em; color: #666; }
.faq-item .faq-a p { margin-bottom: 1em; }
.faq-item .faq-a a { color: #666; text-decoration: underline; }
.faq-item .faq-a ul,
.faq-item .faq-a ol { margin: 0 0 1em 1.4em; }
.faq-item .faq-a li { list-style: disc; margin-bottom: 0.4em; }

/* OPEN STATE — ROTATE THE VERTICAL BAR FLAT TO FORM A MINUS */
.faq-item.is-open .faq-icon:after { transform: rotate(0deg); }
.faq-item.is-open .faq-q { color: #666; }

/* EMPTY / NO-RESULTS STATES */
.faq-empty,
.faq-noresults { text-align: center; font-weight: normal; line-height: 1.6em; margin-bottom: 1.5em; font-size: clamp(1.5rem, 3vw, 2.5rem); padding-top: 3em; padding-bottom: 3em; color: #666; }
.faq-noresults.hidden { display: none; }
