/* the side column's "right" reveal starts 40px out — wider than the gutter below ~1330px,
   which made the page scroll sideways until it slid in; clip (not hidden) keeps it sticky */
.cc_b3eorip4_AjvqLwAn8o .sg-faq { overflow-x: clip; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__grid { display: grid; grid-template-columns: minmax(0, 1fr); gap: clamp(28px, 5vw, 80px); align-items: start; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--side .sg-faq__grid { grid-template-columns: minmax(0, 1.7fr) minmax(260px, 1fr); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__main { min-width: 0; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__empty { padding: 28px; text-align: center; border: 1.5px dashed var(--sg-line-strong); border-radius: var(--sg-r-card); }

/* each item is its own one-item Accordion: draw the separators here, once */
.cc_b3eorip4_AjvqLwAn8o .sg-faq--lines .sg-faq__list { border-top: 1px solid var(--sg-line); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--lines .sg-faq__list .sg-acc--lines .sg-acc__item:first-child { border-top: 0; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--cards .sg-faq__list { display: grid; gap: 10px; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--cards .sg-faq__list .sg-acc--lines .sg-acc__item, .cc_b3eorip4_AjvqLwAn8o .sg-faq--cards .sg-faq__list .sg-acc--lines .sg-acc__item:first-child {
  border: 0; border-radius: var(--sg-r-card); background: var(--sg-surface-2); padding-inline: 20px;
  transition: background var(--sg-t-mid), box-shadow var(--sg-t-mid);
}
.cc_b3eorip4_AjvqLwAn8o .sg-faq--cards .sg-faq__list .sg-acc__item.is-open { background: #fff; box-shadow: var(--sg-shadow-1); }

/* ---------- question icons: optional round badge ---------- */
.cc_b3eorip4_AjvqLwAn8o .sg-faq--badge .sg-acc__icon {
  width: 40px; height: 40px; padding: 10px; border-radius: 50%;
  background: color-mix(in srgb, var(--sg-accent) 18%, transparent);
  color: var(--sg-text, var(--sg-ink)); opacity: 1;
}

/* ---------- section-level icon motion (items with their own setting keep it; keyframes in SgFaqItem) ---------- */
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-float .sg-fq:not(.has-motion) .sg-acc__icon { animation: cc_b3eorip4_AjvqLwAn8o_sg-fq-float calc(3200ms * var(--sg-speed, 1)) var(--sg-ease-in-out) infinite; animation-delay: calc(var(--sg-i, 0) * -500ms); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-pulse .sg-fq:not(.has-motion) .sg-acc__icon { animation: cc_b3eorip4_AjvqLwAn8o_sg-fq-beat calc(2400ms * var(--sg-speed, 1)) var(--sg-ease-in-out) infinite; animation-delay: calc(var(--sg-i, 0) * 300ms); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-wiggle .sg-fq:not(.has-motion) .sg-acc__icon { animation: cc_b3eorip4_AjvqLwAn8o_sg-fq-wiggle calc(3200ms * var(--sg-speed, 1)) ease-in-out infinite; animation-delay: calc(var(--sg-i, 0) * 400ms); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-spin .sg-fq:not(.has-motion) .sg-acc__icon { animation: cc_b3eorip4_sg-spin calc(9s * var(--sg-speed, 1)) linear infinite; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-bounce .sg-fq:not(.has-motion) .sg-acc__icon { transform-origin: 50% 100%; animation: cc_b3eorip4_AjvqLwAn8o_sg-fq-bounce calc(2800ms * var(--sg-speed, 1)) ease-in-out infinite; animation-delay: calc(var(--sg-i, 0) * 180ms); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq--m-ripple .sg-fq:not(.has-motion) .sg-acc__icon { border-radius: 50%; animation: cc_b3eorip4_AjvqLwAn8o_sg-fq-ripple calc(2600ms * var(--sg-speed, 1)) var(--sg-ease-out) infinite; animation-delay: calc(var(--sg-i, 0) * 450ms); }

/* staggered entrance */
.cc_b3eorip4_AjvqLwAn8o [data-sg-motion="on"] .sg-faq__list[data-sg-reveal] .sg-fq {
  opacity: 0; transform: translate3d(0, 18px, 0);
  transition: opacity var(--sg-t-slow) var(--sg-ease-out), transform var(--sg-t-slow) var(--sg-ease-out);
  transition-delay: calc(var(--sg-i, 0) * 70ms * var(--sg-speed, 1));
}
.cc_b3eorip4_AjvqLwAn8o [data-sg-motion="on"] .sg-faq__list[data-sg-in] .sg-fq { opacity: 1; transform: none; }

/* side column */
.cc_b3eorip4_AjvqLwAn8o .sg-faq__side { position: sticky; top: calc(var(--sg-sticky-top, 0px) + 24px); display: grid; overflow: hidden; border-radius: var(--sg-r-card); background: var(--sg-surface-2); color: var(--sg-ink); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__img { border-radius: 0; }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__side-body { display: grid; justify-items: start; gap: 14px; padding: clamp(22px, 3vw, 36px); }
.cc_b3eorip4_AjvqLwAn8o .sg-faq__side-icon {
  display: grid; place-items: center; width: 48px; height: 48px; border-radius: 50%; background: var(--sg-ink); color: #fff;
  animation: cc_b3eorip4_sg-float calc(3600ms * var(--sg-speed, 1)) var(--sg-ease-in-out) infinite;
}
.cc_b3eorip4_AjvqLwAn8o .sg-faq__side-text { color: var(--sg-ink-2); }

@media (max-width: 1023px) {
  .cc_b3eorip4_AjvqLwAn8o .sg-faq--side .sg-faq__grid { grid-template-columns: minmax(0, 1fr); }
  .cc_b3eorip4_AjvqLwAn8o .sg-faq__side { position: static; }
}
@media (prefers-reduced-motion: reduce) {
  .cc_b3eorip4_AjvqLwAn8o .sg-faq__side-icon, .cc_b3eorip4_AjvqLwAn8o .sg-faq .sg-acc__icon { animation: none !important; }
  .cc_b3eorip4_AjvqLwAn8o [data-sg-motion="on"] .sg-faq__list[data-sg-reveal] .sg-fq { opacity: 1; transform: none; transition: none; }
}

/* own copies: the build renames keyframes per bundle, so section-level rules cannot reach the ones in SgFaqItem */
@keyframes cc_b3eorip4_AjvqLwAn8o_sg-fq-float { 0%, 100% { transform: translateY(0); } 50% { transform: translateY(-4px); } }
@keyframes cc_b3eorip4_AjvqLwAn8o_sg-fq-beat { 0%, 100% { transform: scale(1); } 45% { transform: scale(1.16); } 60% { transform: scale(0.97); } }
@keyframes cc_b3eorip4_AjvqLwAn8o_sg-fq-wiggle { 0%, 60%, 100% { transform: rotate(0); } 70% { transform: rotate(-12deg); } 80% { transform: rotate(10deg); } 90% { transform: rotate(-5deg); } }
@keyframes cc_b3eorip4_AjvqLwAn8o_sg-fq-bounce {
  0%, 50%, 100% { transform: translateY(0) scale(1, 1); }
  10% { transform: translateY(0) scale(1.08, 0.92); }
  25% { transform: translateY(-6px) scale(0.96, 1.04); }
  40% { transform: translateY(0) scale(1.05, 0.95); }
}
@keyframes cc_b3eorip4_AjvqLwAn8o_sg-fq-ripple {
  0% { box-shadow: 0 0 0 0 color-mix(in srgb, var(--sg-accent) 55%, transparent); }
  75%, 100% { box-shadow: 0 0 0 12px color-mix(in srgb, var(--sg-accent) 0%, transparent); }
}
