.nvy-faq{position:relative;padding:62px 7vw 72px;background:#000;color:#fff;overflow:hidden;text-align:center}
.nvy-faq:before{display:none}
.faq-badge{position:relative;width:min(188px,39vw);aspect-ratio:1.55;margin:0 auto 38px;display:grid;place-items:center}
.faq-badge svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.faq-badge rect{fill:none;stroke:rgba(255,255,255,.75);stroke-width:1.2;stroke-dasharray:1100;stroke-dashoffset:1100;transition:stroke-dashoffset 2.2s cubic-bezier(.76,0,.24,1)}
.nvy-faq.in .faq-badge rect{stroke-dashoffset:0}
.faq-badge:before{content:'';position:absolute;inset:-6%;border-radius:22px;border:1px solid rgba(255,255,255,.55);filter:blur(10px);opacity:0;transition:opacity 1.6s 1s}
.nvy-faq.in .faq-badge:before{opacity:.6}
.faq-orbit{position:absolute;inset:0;animation:faqorbit 16s linear infinite;opacity:0;transition:opacity 1s 1.8s}
.nvy-faq.in .faq-orbit{opacity:1}
.faq-orbit i{position:absolute;left:50%;top:-4px;width:8px;height:8px;margin-left:-4px;border-radius:50%;background:#fff;box-shadow:0 0 18px 4px rgba(255,255,255,.55)}
@keyframes faqorbit{to{transform:rotate(360deg)}}
.faq-badge h2{position:relative;margin:0;font:700 clamp(32px,4.5vw,48px)/1 var(--sans);letter-spacing:-.04em;opacity:0;transform:scale(.92);filter:blur(8px);transition:opacity 1.2s .5s,transform 1.2s .5s cubic-bezier(.16,1,.3,1),filter 1.2s .5s}
.nvy-faq.in .faq-badge h2{opacity:1;transform:none;filter:none}
.faq-items{max-width:1300px;margin:0 auto;text-align:left;opacity:0;transform:translateY(15px);transition:opacity 1s 1.1s,transform 1s 1.1s cubic-bezier(.16,1,.3,1)}
.nvy-faq.in .faq-items{opacity:1;transform:none}
.faq-it{border-bottom:1px solid rgba(255,255,255,.85)}
.faq-it:first-child{border-top:0}
.faq-btn{width:100%;display:flex;align-items:center;justify-content:space-between;gap:30px;padding:20px 18px;font:500 clamp(16px,1.7vw,24px)/1.2 var(--sans);letter-spacing:-.02em;text-align:left;cursor:pointer;transition:padding .45s,opacity .3s}
.faq-btn:hover{padding-left:34px}
.faq-btn:focus-visible{outline:2px solid #fff;outline-offset:-2px}
.faq-chev{flex:none;width:22px;height:22px;transition:transform .5s cubic-bezier(.76,0,.24,1)}
.faq-chev path{fill:none;stroke:#fff;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.faq-it.open .faq-chev{transform:rotate(180deg)}
.faq-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .55s cubic-bezier(.76,0,.24,1)}
.faq-it.open .faq-body{grid-template-rows:1fr}
.faq-body>div{overflow:hidden}
.faq-body p{margin:0;padding:0 18px 24px;max-width:78ch;font:500 clamp(14px,1.2vw,17px)/1.55 var(--sans);color:rgba(255,255,255,.88);opacity:0;transform:translateY(8px);transition:opacity .5s .1s,transform .5s .1s}
.faq-it.open .faq-body p{opacity:1;transform:none}
.faq-cta{margin-top:80px;display:flex;justify-content:center}
.faq-cta a{display:inline-block;padding:20px 44px;border:1px solid #fff;border-radius:999px;font:500 clamp(15px,1.4vw,20px) var(--sans);text-transform:uppercase;letter-spacing:.04em;box-shadow:0 0 30px -6px rgba(255,255,255,.4),inset 0 0 20px -12px rgba(255,255,255,.5);transition:background .4s,color .4s,box-shadow .4s}
.faq-cta a:hover{background:#fff;color:#000;box-shadow:0 0 50px -4px rgba(255,255,255,.55)}
@media(max-width:700px){.nvy-faq{padding:64px 20px 76px}.faq-badge{margin-bottom:38px}.faq-btn{padding:18px 6px}.faq-btn:hover{padding-left:6px}.faq-body p{padding:0 6px 22px}}
@media(prefers-reduced-motion:reduce){.faq-items{opacity:1;transform:none;transition:none}.faq-badge rect{stroke-dashoffset:0;transition:none}.faq-orbit{animation:none;opacity:0}.faq-badge h2{opacity:1;transform:none;filter:none;transition:none}.faq-body,.faq-body p,.faq-chev{transition-duration:.01ms}}
