/* ══════════════════════════════════════════════
   FAQ v2 — numbered dark accordion cards with a gradient edge, rotating +/×
   icon and smooth height reveal (inspired by 21st.dev accordion components).
   Applied at runtime by faq-v2.js to every FAQ markup variant on the site.
   ══════════════════════════════════════════════ */
.fv-list{display:flex !important;flex-direction:column;gap:.9rem !important;counter-reset:fv}
.fv-item{position:relative;counter-increment:fv;border-radius:20px !important;padding:0 !important;margin:0 !important;border:1px solid rgba(255,85,85,.12) !important;background:#fffdf8 !important;box-shadow:0 10px 30px -18px rgba(120,40,30,.35) !important;opacity:0;transform:translateY(18px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1),box-shadow .35s,border-color .35s;transition-delay:calc(var(--i,0) * 60ms)}
.fv-list.fv-in .fv-item{opacity:1;transform:none}
\.fv-item::before{content:"";position:absolute;z-index:2;left:0;top:14px;bottom:14px;width:4px;border-radius:0 4px 4px 0;background:linear-gradient(180deg,#ff5555,#ff9a6b);transform:scaleY(0);transition:transform .45s cubic-bezier(.22,1,.36,1);pointer-events:none}
.fv-item.fv-open::before{transform:scaleY(1)}
.fv-item:hover{border-color:rgba(255,85,85,.35) !important;box-shadow:0 16px 36px -18px rgba(255,85,85,.45) !important}
.fv-item.fv-open{border-color:rgba(255,85,85,.4) !important;box-shadow:0 22px 50px -24px rgba(255,85,85,.5) !important}
.fv-card{position:relative;border-radius:19px;background:transparent;overflow:hidden}
.fv-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff1ea 0%,#fffaf3 60%);opacity:0;transition:opacity .4s}
.fv-item.fv-open .fv-card::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(120deg,#fff1ea 0%,#fffaf3 60%);opacity:0;transition:opacity .4s}

/* question row */
.fv-item .fv-q{position:relative;z-index:1;display:flex !important;align-items:center;gap:1rem;width:100%;margin:0 !important;padding:1.25rem 1.3rem 1.25rem 1.2rem !important;background:none !important;border:0 !important;cursor:pointer;text-align:left;font-family:var(--font-body,"Nunito",sans-serif) !important;font-size:1.02rem !important;font-weight:800 !important;line-height:1.4 !important;color:#1a1214 !important;letter-spacing:0 !important;text-transform:none !important}
.fv-item .fv-q::before{content:counter(fv,decimal-leading-zero);flex-shrink:0;width:42px;height:42px;border-radius:12px;display:grid;place-items:center;font-family:var(--font-display,"Unbounded",sans-serif);font-size:.78rem;font-weight:800;color:#ff5555;background:#fff0ec;border:1px solid rgba(255,85,85,.2);transition:background .3s,color .3s}
.fv-item.fv-open .fv-q::before{background:linear-gradient(135deg,#ff5555,#ff8a5c);color:#fff;border-color:transparent}
.fv-item .fv-q::after{display:none !important}
.fv-qt{flex:1}
.fv-item .faq-icon,.fv-item .faq-arrow{display:none !important}
.fv-ic{position:relative;z-index:1;flex-shrink:0;width:36px;height:36px;border-radius:50%;background:#fff;border:1px solid rgba(26,18,20,.12);transition:transform .45s cubic-bezier(.34,1.5,.64,1),background .3s,border-color .3s}
.fv-ic::before,.fv-ic::after{content:"";position:absolute;left:50%;top:50%;width:13px;height:2px;margin:-1px 0 0 -6.5px;border-radius:2px;background:#1a1214;transition:background .3s}
.fv-item.fv-open .fv-ic::before,.fv-item.fv-open .fv-ic::after{background:#fff}
.fv-ic::after{transform:rotate(90deg)}
.fv-item:hover .fv-ic{border-color:rgba(255,85,85,.5)}
.fv-item.fv-open .fv-ic{transform:rotate(135deg);background:#ff5555;border-color:#ff5555}

/* answer: grid-rows height animation */
.fv-item .fv-a{display:grid !important;grid-template-rows:0fr;max-height:none !important;height:auto !important;overflow:visible !important;opacity:1 !important;margin:0 !important;padding:0 !important;border:0 !important;background:none !important;transition:grid-template-rows .45s cubic-bezier(.22,1,.36,1) !important}
.fv-item.fv-open .fv-a{grid-template-rows:1fr}
.fv-a-in{overflow:hidden;min-height:0}
.fv-a-pad{position:relative;z-index:1;margin:0 1.3rem 1.3rem calc(1.2rem + 42px + 1rem);padding:1rem 0 0;border-top:1px dashed rgba(255,85,85,.25);font-family:var(--font-body,"Nunito",sans-serif);font-size:.95rem;line-height:1.75;color:#5a4b4d;opacity:0;transform:translateY(-6px);transition:opacity .35s ease,transform .45s cubic-bezier(.22,1,.36,1)}
.fv-item.fv-open .fv-a-pad{opacity:1;transform:none;transition-delay:.1s}
.fv-a-pad *{color:inherit !important;font-size:inherit !important;line-height:inherit !important;max-height:none !important;padding:0 !important;margin:0;border:0 !important;background:none !important;box-shadow:none !important}
.fv-a-pad p+p{margin-top:.7rem}
.fv-a-pad strong,.fv-a-pad b{color:#1a1214 !important}
.fv-a-pad a{color:#e8434f !important;text-decoration:underline}

@media (max-width:640px){
  .fv-item .fv-q{gap:.75rem;padding:1rem !important;font-size:.95rem !important}
  .fv-item .fv-q::before{width:34px;height:34px;border-radius:10px;font-size:.7rem}
  .fv-ic{width:30px;height:30px}
  .fv-a-pad{margin:0 1rem 1.1rem 1rem;font-size:.9rem}
}
@media (prefers-reduced-motion:reduce){
  .fv-item,.fv-item .fv-a,.fv-a-pad,.fv-ic{transition:none !important}
  .fv-item{opacity:1;transform:none}
}

/* win over page-level FAQ rules */
.fv-item.fv-open .fv-q::before{color:#fff !important;background:linear-gradient(135deg,#ff5555,#ff8a5c) !important;border-color:transparent !important}
.fv-item.fv-item::before{display:block !important;content:"" !important;position:absolute !important;z-index:3 !important;left:0 !important;right:auto !important;top:14px !important;bottom:14px !important;width:4px !important;height:auto !important;opacity:1 !important;border-radius:0 4px 4px 0 !important;background:linear-gradient(180deg,#ff5555,#ff9a6b) !important;transform:scaleY(0);transition:transform .45s cubic-bezier(.22,1,.36,1) !important}
.fv-item.fv-item.fv-open::before{transform:scaleY(1)}
.fv-item.fv-open .fv-card::after{opacity:1}
