.faq-section{background:var(--bg-card);padding:clamp(4.5rem,8vw,7rem) 24px;position:relative;overflow:hidden}.faq-section:before{content:"";background:linear-gradient(90deg, transparent, var(--border-accent), transparent);height:1px;position:absolute;top:0;left:0;right:0}.faq-container{z-index:1;width:100%;max-width:1280px;margin:0 auto;position:relative}.faq-header{text-align:left;max-width:760px;margin:0 0 clamp(2.25rem,5vw,3.75rem)}.faq-label{color:var(--text-muted);letter-spacing:.16em;align-items:center;gap:.7rem;margin:0 0 1rem;display:flex}.faq-label>span{background:var(--accent-bright);border-radius:1px;flex:none;width:5px;height:5px;rotate:45deg}.faq-header h2{color:var(--accent);font-family:var(--font-display);letter-spacing:-.015em;text-wrap:balance;margin:0;font-size:clamp(1.95rem,3.6vw,2.7rem);font-weight:600;line-height:1.08}.faq-title-highlight{white-space:nowrap;display:inline-block;position:relative}.faq-title-highlight em{font-style:italic;font-weight:600}.faq-title-highlight svg{width:106%;height:.27em;position:absolute;bottom:-.12em;left:-3%;overflow:visible}.faq-title-highlight path{fill:none;stroke:var(--accent-bright);stroke-width:4.5px;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:0}@keyframes faq-title-underline{to{stroke-dashoffset:0}}.faq-header h2 .highlight{color:var(--accent-bright)}.faq-description{max-width:62ch;color:var(--text-secondary);font-family:var(--font-body);margin:1rem 0 0;font-size:clamp(.95rem,1.5vw,1.06rem);font-weight:400;line-height:1.7}.faq-list{border-top:1px solid var(--border-subtle);border-bottom:1px solid var(--border-subtle);width:100%;max-width:none;margin:0}.faq-item{border-bottom:1px solid var(--border-subtle);background:0 0;margin:0;transition:background-color .18s;position:relative;overflow:hidden}.faq-item>summary{list-style:none}.faq-item>summary::-webkit-details-marker{display:none}.faq-item:last-child{border-bottom:0}.faq-item:before{content:"";background:var(--accent-bright);transform-origin:50%;width:2px;transition:scale .18s;position:absolute;inset:16% auto 16% 0;scale:1 0}.faq-item:hover,.faq-item[open]{background:var(--bg-secondary)}.faq-item:hover:before,.faq-item:focus-within:before,.faq-item[open]:before{scale:1}.faq-question{width:100%;color:var(--text-primary);cursor:pointer;text-align:left;background:0 0;border:0;grid-template-columns:54px minmax(0,1fr) 38px;align-items:center;gap:1rem;padding:1.35rem 1rem;display:grid}.faq-question:focus-visible{outline:2px solid var(--accent-bright);outline-offset:-4px}.faq-num{color:var(--text-muted);font-family:var(--font-display);font-variant-numeric:tabular-nums;letter-spacing:normal;font-size:.88rem;font-style:italic;font-weight:400;line-height:1;transition:color .18s}.faq-title{color:var(--accent);font-family:var(--font-display);letter-spacing:-.01em;font-size:clamp(1.02rem,1.8vw,1.22rem);font-weight:600;line-height:1.2}.faq-toggle{border:1px solid var(--border-accent);background:var(--bg-card);width:34px;height:34px;color:var(--accent);font-family:var(--font-body);border-radius:50%;place-items:center;font-size:1.15rem;font-weight:500;line-height:1;transition:transform .24s,background-color .18s,color .18s,border-color .18s;display:grid}.faq-item:hover .faq-num,.faq-item[open] .faq-num{color:var(--accent-bright)}.faq-item:hover .faq-toggle{border-color:var(--accent-bright)}.faq-item[open] .faq-toggle{border-color:var(--accent-bright);background:var(--accent-bright);color:var(--color-on-accent);transform:rotate(45deg)}.faq-answer{visibility:hidden;grid-template-rows:0fr;transition:grid-template-rows .36s cubic-bezier(.2,.75,.25,1),visibility 0s linear .36s;display:grid}.faq-item[open] .faq-answer{visibility:visible;grid-template-rows:1fr;transition:grid-template-rows .36s cubic-bezier(.2,.75,.25,1),visibility linear}.faq-answer-inner{min-height:0;overflow:hidden}.faq-answer-inner p{width:100%;max-width:none;color:var(--text-secondary);font-family:var(--font-body);margin:0;padding:0 4.25rem 1.5rem 5rem;font-size:.95rem;font-weight:400;line-height:1.7}.faq-answer-inner strong{color:var(--accent);font-weight:600}.faq-cta{border:1px solid var(--border-subtle);background:var(--bg-secondary);justify-content:space-between;align-items:center;gap:2rem;max-width:960px;margin-top:2rem;padding:1.4rem 1.5rem;display:flex}.faq-cta h3{color:var(--accent);font-family:var(--font-display);margin:0;font-size:1.15rem;font-weight:600}.faq-cta p{color:var(--text-secondary);flex:1;margin:0;font-size:.88rem;line-height:1.55}.faq-cta .btn-primary{border:1px solid var(--accent-bright);background:var(--btn-bg);min-height:44px;box-shadow:var(--btn-shadow);color:var(--btn-text);font-family:var(--font-body);border-radius:8px;flex:none;justify-content:center;align-items:center;gap:.55rem;padding:.8rem 1.2rem;font-size:.9rem;font-weight:600;text-decoration:none;transition:transform .18s,background-color .18s,box-shadow .18s;display:inline-flex}.faq-cta .btn-primary:hover,.faq-cta .btn-primary:focus-visible{background:var(--btn-bg-hover);box-shadow:var(--btn-shadow-hover);transform:translateY(-2px)}@media (max-width:768px){.faq-section{padding:4rem 20px}.faq-header{margin-bottom:2.25rem}.faq-question{grid-template-columns:40px minmax(0,1fr) 34px;gap:.7rem;padding:1.15rem .6rem}.faq-toggle{width:31px;height:31px}.faq-answer-inner p{padding:0 2.7rem 1.25rem 3.25rem;font-size:.9rem}.faq-cta{flex-direction:column;align-items:flex-start;gap:.75rem}}@media (max-width:480px){.faq-section{padding-inline:16px}.faq-question{grid-template-columns:30px minmax(0,1fr) 32px;gap:.55rem;padding-inline:.35rem}.faq-title{font-size:1rem}.faq-answer-inner p{padding-left:2.25rem;padding-right:1rem}}@media (prefers-reduced-motion:reduce){.faq-title-highlight path{stroke-dashoffset:0;animation:none}.faq-item,.faq-item:before,.faq-num,.faq-toggle,.faq-answer,.faq-cta .btn-primary{transition-duration:.01ms!important}}
