*,*::before,*::after{margin:0;padding:0;box-sizing:border-box;}
:root{--navy:#080f1c;--navy2:#0d1829;--accent:#2970e8;--accent-l:#5b93f0;--white:#fff;--off:#f0f4f9;--text:#3d5068;--muted:#6b7f96;--border:#dde4ef;--border-d:rgba(255,255,255,0.07);--green:#22c55e;}
body{overflow-x:hidden;font-family:'Manrope',sans-serif;background:var(--navy);color:var(--white);-webkit-font-smoothing:antialiased;min-height:100vh;}
nav{position:fixed;top:0;left:0;right:0;z-index:300;height:70px;display:flex;align-items:center;padding:0 48px;background:var(--navy);justify-content:space-between;border-bottom:1px solid var(--border-d);}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none;}.nav-logo img{height:36px;}.nav-logo-text{font-size:.88rem;font-weight:800;color:var(--white);}
.nav-links{display:flex;gap:36px;list-style:none;align-items:center;}.nav-links a{font-size:.8rem;font-weight:500;color:rgba(255,255,255,.5);text-decoration:none;transition:color .15s;}.nav-links a:hover{color:rgba(255,255,255,.95);}
.nav-right{display:flex;align-items:center;gap:24px;}
.nav-phone{font-size:.85rem;font-weight:700;color:var(--white);text-decoration:none;display:flex;align-items:center;gap:7px;}
.nav-phone::before{content:'';width:7px;height:7px;border-radius:50%;background:var(--green);display:inline-block;box-shadow:0 0 0 2px rgba(34,197,94,.25);animation:lp 2s infinite;}
@keyframes lp{0%,100%{box-shadow:0 0 0 2px rgba(34,197,94,.25);}50%{box-shadow:0 0 0 5px rgba(34,197,94,.1);}}
.nav-cta{background:var(--accent);color:var(--white);font-size:.8rem;font-weight:700;padding:9px 22px;border-radius:3px;text-decoration:none;}

/* QUIZ WRAPPER */
.quiz-wrap{min-height:100vh;padding-top:70px;display:flex;align-items:center;justify-content:center;padding-bottom:60px;}
.quiz-inner{width:100%;max-width:680px;padding:40px 24px;}

/* INTRO */
.intro{text-align:center;padding:60px 20px;}
.intro-tag{font-size:.72rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-l);margin-bottom:16px;}
.intro h1{font-family:'Bebas Neue',sans-serif;font-size:clamp(2.8rem,7vw,5.5rem);color:var(--white);letter-spacing:.02em;line-height:.92;margin-bottom:20px;}
.intro p{font-size:.97rem;color:rgba(255,255,255,.5);line-height:1.75;max-width:460px;margin:0 auto 36px;}
.intro-meta{display:flex;align-items:center;justify-content:center;gap:24px;margin-bottom:40px;flex-wrap:wrap;}
.intro-meta-item{display:flex;align-items:center;gap:8px;font-size:.8rem;color:rgba(255,255,255,.4);}
.intro-meta-item::before{content:'';width:6px;height:6px;border-radius:50%;background:var(--accent-l);flex-shrink:0;}
.btn-start{display:inline-block;background:var(--accent);color:var(--white);font-size:1rem;font-weight:800;letter-spacing:.04em;padding:16px 48px;border-radius:4px;border:none;cursor:pointer;font-family:'Manrope',sans-serif;transition:background .15s;}
.btn-start:hover{background:#1a5cd4;}

/* PROGRESS */
.quiz-progress{margin-bottom:36px;}
.progress-bar-wrap{height:4px;background:rgba(255,255,255,.08);border-radius:2px;margin-bottom:10px;}
.progress-bar-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .4s ease;}
.progress-meta{display:flex;justify-content:space-between;font-size:.74rem;color:rgba(255,255,255,.3);}

/* QUESTION */
.question{display:none;animation:fadeUp .4s ease both;}
@keyframes fadeUp{from{opacity:0;transform:translateY(16px);}to{opacity:1;transform:none;}}
.question.active{display:block;}

.q-num{font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-l);margin-bottom:12px;}
.q-text{font-family:'Bebas Neue',sans-serif;font-size:clamp(1.8rem,4vw,2.8rem);color:var(--white);letter-spacing:.02em;line-height:1.0;margin-bottom:8px;}
.q-sub{font-size:.88rem;color:rgba(255,255,255,.4);margin-bottom:32px;line-height:1.6;}

.answers{display:flex;flex-direction:column;gap:10px;}
.answer-btn{display:flex;align-items:center;gap:16px;padding:18px 22px;border:1px solid rgba(255,255,255,.1);border-radius:6px;background:rgba(255,255,255,.03);cursor:pointer;transition:all .2s;text-align:left;font-family:'Manrope',sans-serif;width:100%;}
.answer-btn:hover{border-color:rgba(41,112,232,.6);background:rgba(41,112,232,.08);}
.answer-btn.selected{border-color:var(--accent);background:rgba(41,112,232,.15);}
.answer-icon{font-size:1.4rem;width:36px;text-align:center;flex-shrink:0;}
.answer-text{}
.answer-title{font-size:.93rem;font-weight:700;color:var(--white);}
.answer-desc{font-size:.78rem;color:rgba(255,255,255,.4);margin-top:3px;line-height:1.4;}

.q-nav{display:flex;justify-content:space-between;align-items:center;margin-top:28px;}
.btn-back-q{background:none;border:none;color:rgba(255,255,255,.3);font-family:'Manrope',sans-serif;font-size:.85rem;font-weight:500;cursor:pointer;transition:color .15s;padding:0;}
.btn-back-q:hover{color:rgba(255,255,255,.7);}
.btn-next-q{background:var(--accent);color:var(--white);border:none;padding:12px 28px;border-radius:4px;font-family:'Manrope',sans-serif;font-size:.88rem;font-weight:700;cursor:pointer;transition:background .15s;}
.btn-next-q:hover{background:#1a5cd4;}
.btn-next-q:disabled{background:rgba(255,255,255,.1);color:rgba(255,255,255,.3);cursor:not-allowed;}

/* RESULT */
.result{display:none;animation:fadeUp .5s ease both;}
.result.active{display:block;}
.result-top{text-align:center;margin-bottom:36px;}
.result-top .res-tag{font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent-l);margin-bottom:14px;}
.result-top h2{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,5vw,3.5rem);color:var(--white);letter-spacing:.02em;line-height:1.0;margin-bottom:10px;}
.result-top p{font-size:.93rem;color:rgba(255,255,255,.5);max-width:480px;margin:0 auto;line-height:1.7;}

.recommended-services{display:flex;flex-direction:column;gap:14px;margin-bottom:32px;}
.rec-card{border:1px solid rgba(255,255,255,.08);border-radius:6px;padding:24px 24px;background:var(--navy2);display:flex;align-items:flex-start;gap:18px;transition:border-color .2s;}
.rec-card:first-child{border-color:rgba(41,112,232,.5);background:rgba(41,112,232,.08);}
.rec-card:hover{border-color:rgba(41,112,232,.4);}
.rec-icon{font-size:1.6rem;flex-shrink:0;width:44px;text-align:center;}
.rec-body{}
.rec-primary-label{font-size:.62rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--accent-l);margin-bottom:6px;}
.rec-body h3{font-size:1rem;font-weight:700;color:var(--white);margin-bottom:6px;}
.rec-body p{font-size:.85rem;color:rgba(255,255,255,.45);line-height:1.65;}
.rec-body a{display:inline-block;margin-top:12px;font-size:.8rem;font-weight:700;color:var(--accent-l);text-decoration:none;border-bottom:1px solid rgba(91,147,240,.3);padding-bottom:1px;transition:border-color .15s;}
.rec-body a:hover{border-color:var(--accent-l);}

.result-actions{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:8px;}
.btn-res-p{display:block;background:var(--accent);color:var(--white);font-size:.9rem;font-weight:800;padding:15px;border-radius:4px;text-decoration:none;text-align:center;transition:background .15s;}
.btn-res-p:hover{background:#1a5cd4;}
.btn-res-s{display:block;border:1px solid rgba(255,255,255,.15);color:var(--white);font-size:.9rem;font-weight:500;padding:15px;border-radius:4px;text-decoration:none;text-align:center;transition:border-color .15s;}
.btn-res-s:hover{border-color:rgba(255,255,255,.5);}
.btn-restart{display:block;text-align:center;margin-top:20px;font-size:.8rem;color:rgba(255,255,255,.3);cursor:pointer;background:none;border:none;font-family:'Manrope',sans-serif;transition:color .15s;}
.btn-restart:hover{color:rgba(255,255,255,.6);}

footer{background:var(--navy2);padding:48px 80px 28px;border-top:1px solid var(--border-d);}
.footer-bottom{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;}
.footer-bottom p{font-size:.74rem;color:rgba(255,255,255,.15);}
.footer-bottom a{color:rgba(255,255,255,.26);text-decoration:none;}

@media(max-width:1024px){nav{padding:0 28px;}.nav-links{display:none;}.quiz-inner{padding:36px 20px;}}
@media(max-width:640px){.form-grid-2{grid-template-columns:1fr;}.result-actions{grid-template-columns:1fr;}.intro-meta{flex-direction:column;gap:10px;}}