*{margin:0;padding:0;box-sizing:border-box}
:root{
  --navy:#0D2B4E;--teal:#1D9E75;--gold:#C8780A;
  --bg:#F5F7FA;--bg2:#EEF2F7;--white:#fff;
  --text:#1A1A1A;--text2:#595959;--text3:#9E9E9E;--err:#C00000;
}
body{font-family:'Inter',sans-serif;background:#fff;color:var(--text);line-height:1.6;overflow-x:hidden}
.page{display:none;animation:fadeIn .35s ease}
.page.active{display:block}
@keyframes fadeIn{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* NAV */
nav{background:var(--navy);padding:0 5%;display:flex;align-items:center;justify-content:space-between;position:sticky;top:0;z-index:200;min-height:62px}
.logo{font-size:22px;font-weight:900;color:#fff;letter-spacing:-0.5px;flex-shrink:0;cursor:pointer}
.logo span{color:var(--teal)}
.nav-toggle{display:flex;background:rgba(255,255,255,0.07);border-radius:8px;padding:4px;gap:2px}
.nav-toggle button{background:none;border:none;padding:7px 16px;border-radius:6px;font-size:13px;font-weight:600;cursor:pointer;font-family:'Inter',sans-serif;color:rgba(255,255,255,0.55);transition:all .2s;white-space:nowrap}
.nav-toggle button.active-tab{background:var(--teal);color:#fff}
.nav-toggle button:not(.active-tab):hover{color:#fff;background:rgba(255,255,255,0.08)}
.nav-cta{background:var(--teal);color:#fff;border:none;padding:9px 20px;border-radius:8px;font-weight:700;font-size:13px;cursor:pointer;font-family:'Inter',sans-serif;white-space:nowrap;flex-shrink:0}
.nav-cta:hover{background:#18886a}
.nav-cta.gold{background:var(--gold)}.nav-cta.gold:hover{background:#a8650a}

/* HERO */
.hero{padding:76px 5% 88px;text-align:center;position:relative;overflow:hidden}
.hero-pro{background:var(--navy)}
.hero-cli{background:linear-gradient(160deg,#0a2240 0%,#0D2B4E 100%)}
.hero::before,.hero::after{content:'';position:absolute;border-radius:50%;pointer-events:none}
.hero::before{top:-60px;right:-80px;width:380px;height:380px;background:rgba(29,158,117,0.06)}
.hero::after{bottom:-80px;left:-60px;width:280px;height:280px;background:rgba(200,120,10,0.05)}
.hero-tagline{font-size:14px;font-weight:700;color:var(--teal);letter-spacing:.5px;margin-bottom:14px;font-style:italic;position:relative;z-index:1}
.hero-badge{display:inline-block;background:rgba(29,158,117,0.15);color:var(--teal);border:1px solid rgba(29,158,117,0.3);border-radius:20px;padding:6px 18px;font-size:13px;font-weight:600;margin-bottom:26px;letter-spacing:.5px;position:relative;z-index:1}
.hero h1{font-size:clamp(30px,5vw,56px);font-weight:900;color:#fff;line-height:1.15;margin-bottom:18px;max-width:780px;margin-left:auto;margin-right:auto;position:relative;z-index:1}
.accent{color:var(--teal)}.accent-gold{color:var(--gold)}
.hero p{font-size:clamp(15px,2vw,19px);color:rgba(255,255,255,0.7);max-width:560px;margin:0 auto 36px;line-height:1.75;position:relative;z-index:1}
.btn-primary{background:var(--teal);color:#fff;border:none;padding:17px 40px;border-radius:10px;font-size:17px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;transition:transform .15s,background .15s;display:inline-block}
.btn-primary:hover{background:#18886a;transform:translateY(-1px)}
.btn-switch{display:inline-block;margin-top:18px;padding:12px 26px;border:1.5px solid rgba(255,255,255,0.28);border-radius:10px;color:rgba(255,255,255,0.8);font-size:14px;font-weight:600;cursor:pointer;background:rgba(255,255,255,0.06);font-family:'Inter',sans-serif;transition:all .2s}
.btn-switch:hover{background:rgba(255,255,255,0.12);border-color:rgba(255,255,255,0.5);color:#fff}

/* MOCKUPS */
.mockup-row{display:flex;gap:16px;justify-content:center;margin-top:48px;flex-wrap:wrap;position:relative;z-index:1}
.mock-card{background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.1);border-radius:16px;padding:20px;min-width:196px;text-align:left}
.mk-label{font-size:11px;color:rgba(255,255,255,0.4);text-transform:uppercase;letter-spacing:1px;margin-bottom:6px}
.mk-name{font-size:15px;font-weight:700;color:#fff;margin-bottom:10px}
.score-big{font-size:42px;font-weight:900;color:var(--gold)}
.score-level{display:inline-block;background:rgba(200,120,10,0.2);color:var(--gold);border-radius:6px;padding:3px 10px;font-size:12px;font-weight:700;margin-left:8px;vertical-align:middle}
.mk-row{display:flex;align-items:center;gap:8px;margin-top:8px}
.mk-bar{flex:1;height:6px;background:rgba(255,255,255,0.1);border-radius:3px;overflow:hidden}
.mk-fill{height:100%;border-radius:3px;background:var(--teal)}
.mk-val{font-size:12px;color:rgba(255,255,255,0.5);min-width:36px;text-align:right}
.verified-seal{display:inline-flex;align-items:center;gap:5px;background:rgba(29,158,117,0.15);border:1px solid rgba(29,158,117,0.3);border-radius:6px;padding:4px 10px;font-size:12px;color:var(--teal);font-weight:700;margin-top:10px}
.rank-badge{background:rgba(29,158,117,0.12);border:1px solid rgba(29,158,117,0.25);border-radius:8px;padding:9px 13px;display:flex;align-items:center;gap:10px;margin-bottom:8px}
.rank-num{font-size:26px;font-weight:900;color:var(--teal)}
.rank-text{font-size:12px;color:rgba(255,255,255,0.65);line-height:1.4}
.mock-search-bar{background:rgba(255,255,255,0.08);border:1px solid rgba(255,255,255,0.14);border-radius:10px;padding:13px 16px;color:rgba(255,255,255,0.85);font-size:14px;display:flex;align-items:center;gap:10px;margin-bottom:14px}
.mock-search-bar .ph{color:rgba(255,255,255,0.3)}
.mock-prof{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.09);border-radius:11px;padding:13px 15px;display:flex;align-items:center;gap:12px;margin-bottom:8px}
.mock-avatar{width:42px;height:42px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:13px;font-weight:800;flex-shrink:0}
.mock-prof-name{font-size:13px;font-weight:700;color:#fff}
.mock-prof-meta{font-size:11px;color:rgba(255,255,255,0.45);margin-top:2px}
.mock-badge{display:inline-block;border-radius:5px;padding:2px 7px;font-size:10px;font-weight:700}
.mock-verified-s{font-size:11px;color:var(--teal);background:rgba(29,158,117,0.12);border-radius:5px;padding:2px 7px;white-space:nowrap;flex-shrink:0}
.pos-tag{font-size:12px;font-weight:800;color:var(--gold);min-width:20px;flex-shrink:0}

/* SECTIONS */
section{padding:68px 5%}
.section-label{font-size:12px;font-weight:700;color:var(--teal);letter-spacing:2px;text-transform:uppercase;margin-bottom:12px}
h2.section-title{font-size:clamp(24px,4vw,38px);font-weight:900;color:var(--navy);line-height:1.2;margin-bottom:14px}
.section-sub{font-size:16px;color:var(--text2);line-height:1.75;text-align:justify}

/* PROBLEM */
.problem-bg{background:var(--bg)}
.problem-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px;margin-top:40px}
.prob-card{background:#fff;border-radius:14px;padding:26px;border-left:4px solid var(--teal)}
.prob-card.red{border-left-color:var(--err)}
.prob-icon{font-size:26px;margin-bottom:12px}
.prob-card h3{font-size:15px;font-weight:800;color:var(--navy);margin-bottom:7px}
.prob-card p{font-size:13px;color:var(--text2);line-height:1.65}

/* HOW / STEPS (reusable) */
.steps{display:flex;gap:0;margin-top:48px;flex-wrap:wrap}
.step{flex:1;min-width:175px;text-align:center;padding:0 18px;position:relative}
.step:not(:last-child)::after{content:'→';position:absolute;right:-10px;top:24px;font-size:20px;color:var(--text3)}
.step-num{width:52px;height:52px;border-radius:50%;background:var(--navy);color:#fff;font-size:18px;font-weight:900;display:flex;align-items:center;justify-content:center;margin:0 auto 14px}
.step-num.teal{background:var(--teal)}
.step h3{font-size:14px;font-weight:800;color:var(--navy);margin-bottom:7px}
.step p{font-size:13px;color:var(--text2);line-height:1.6}
.step .seal{display:inline-block;background:rgba(29,158,117,0.1);color:var(--teal);border-radius:5px;padding:2px 8px;font-size:11px;font-weight:700;margin-top:5px}

/* VERIFICATION FLOW SECTION */
.verify-bg{background:linear-gradient(180deg,#fff 0%,#EFFAF5 100%)}
.verify-bg .step-num{background:var(--teal)}

/* SCORE */
.score-dark{background:var(--navy)}
.score-dark h2.section-title{color:#fff}
.score-dark .section-label{color:var(--gold)}
.score-dark .section-sub{color:rgba(255,255,255,0.62)}
.score-split{display:flex;gap:18px;margin-top:36px;flex-wrap:wrap}
.split-block{flex:1;min-width:230px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.14);border-radius:16px;padding:26px 24px}
.split-pct{font-size:42px;font-weight:900;color:var(--gold);margin-bottom:6px;line-height:1}
.split-pct.teal-pct{color:var(--teal)}
.split-title{font-size:15px;font-weight:800;color:#fff;margin-bottom:10px}
.split-desc{font-size:13px;color:rgba(255,255,255,0.6);line-height:1.65;text-align:left}
.levels{display:flex;gap:9px;margin-top:36px;flex-wrap:wrap}
.level-pill{flex:1;min-width:110px;border-radius:12px;padding:18px 14px;text-align:center;border:1px solid rgba(255,255,255,0.1)}
.level-score{font-size:10px;color:rgba(255,255,255,0.45);margin-bottom:4px}
.level-name{font-size:13px;font-weight:800;color:#fff;margin-bottom:5px}
.level-dot{width:11px;height:11px;border-radius:50%;margin:5px auto 0}
.score-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:14px;margin-top:36px}
.sc-card{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:13px;padding:22px 18px}
.sc-num{font-size:32px;font-weight:900;margin-bottom:4px}
.sc-level{font-size:14px;font-weight:800;color:#fff;margin-bottom:8px}
.sc-dot{width:10px;height:10px;border-radius:50%;display:inline-block;margin-right:5px;vertical-align:middle}
.sc-desc{font-size:12px;color:rgba(255,255,255,0.55);line-height:1.6}

/* DIFF */
.diff-table{width:100%;border-collapse:collapse;margin-top:36px;font-size:14px}
.diff-table th{padding:13px 18px;text-align:left;font-size:12px;font-weight:700;letter-spacing:.5px}
.diff-table th:first-child{color:var(--text3);background:var(--bg2)}
.diff-table th:last-child{color:#fff;background:var(--navy);border-radius:8px 8px 0 0}
.diff-table td{padding:11px 18px;border-bottom:1px solid var(--bg2)}
.diff-table td:last-child{color:var(--navy);font-weight:700;background:rgba(29,158,117,0.05)}
.checkmark{color:var(--teal)}.crossmark{color:var(--text3)}

/* QUIZ */
.quiz-bg{background:linear-gradient(135deg,#0D2B4E 0%,#0a2240 100%);padding:68px 5%}
.quiz-wrapper{max-width:660px;margin:0 auto}
.quiz-header{text-align:center;margin-bottom:44px}
.quiz-header h2{font-size:clamp(22px,4vw,32px);font-weight:900;color:#fff;line-height:1.3;margin-bottom:10px}
.quiz-header p{color:rgba(255,255,255,0.55);font-size:15px}
.progress-bar{background:rgba(255,255,255,0.1);border-radius:4px;height:4px;margin-bottom:36px;overflow:hidden}
.progress-fill{height:100%;background:var(--teal);border-radius:4px;transition:width .4s ease}
.question-card{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:18px;padding:32px}
.q-number{font-size:11px;color:var(--teal);font-weight:700;letter-spacing:1px;margin-bottom:9px}
.q-text{font-size:clamp(16px,3vw,20px);font-weight:800;color:#fff;margin-bottom:24px;line-height:1.4}
.options{display:flex;flex-direction:column;gap:9px}
.option-btn{background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.11);border-radius:10px;padding:13px 16px;color:rgba(255,255,255,0.82);font-size:14px;font-weight:500;cursor:pointer;text-align:left;font-family:'Inter',sans-serif;transition:all .2s}
.option-btn:hover{background:rgba(29,158,117,0.15);border-color:var(--teal);color:#fff}
.option-btn.selected{background:rgba(29,158,117,0.2);border-color:var(--teal);color:#fff}
.option-btn.other-fade{opacity:.4}
.q-nav{display:flex;justify-content:space-between;align-items:center;margin-top:22px}
.q-back{background:none;border:none;color:rgba(255,255,255,0.4);font-size:13px;cursor:pointer;font-family:'Inter',sans-serif;padding:7px 0}
.q-back:hover{color:#fff}
.q-next{background:var(--teal);color:#fff;border:none;padding:11px 26px;border-radius:8px;font-weight:700;font-size:14px;cursor:pointer;font-family:'Inter',sans-serif}
.q-next:disabled{opacity:.32;cursor:not-allowed}
.q-next:not(:disabled):hover{background:#18886a}
.reveal-card{background:rgba(255,255,255,0.05);border:1px solid rgba(29,158,117,0.3);border-radius:18px;padding:40px 32px;text-align:center}
.reveal-card h2{font-size:clamp(20px,4vw,28px);font-weight:900;color:#fff;line-height:1.35;margin-bottom:14px}
.reveal-card p{color:rgba(255,255,255,0.68);font-size:15px;line-height:1.75;margin-bottom:9px}
.reveal-divider{border:none;border-top:1px solid rgba(255,255,255,0.1);margin:24px 0}
.reveal-highlight{font-size:17px;font-weight:800;color:#fff;margin-bottom:5px}
.reveal-sub{color:rgba(255,255,255,0.5);font-size:13px;margin-bottom:24px}
.cta-big{background:var(--teal);color:#fff;border:none;padding:18px 44px;border-radius:12px;font-size:17px;font-weight:900;cursor:pointer;font-family:'Inter',sans-serif;width:100%;display:block;transition:background .2s,transform .15s}
.cta-big:hover{background:#18886a;transform:translateY(-1px)}
.urgency{font-size:12px;color:rgba(255,255,255,0.4);margin-top:11px}

/* FORM */
.form-bg{background:var(--bg);padding:76px 5%}
.form-wrapper{max-width:580px;margin:0 auto}
.form-header{text-align:center;margin-bottom:40px}
.form-group{margin-bottom:18px}
.form-group label{display:block;font-size:13px;font-weight:700;color:var(--navy);margin-bottom:6px}
.form-group input,.form-group select{width:100%;padding:13px 15px;border:1.5px solid #D0D8E4;border-radius:10px;font-size:14px;font-family:'Inter',sans-serif;color:var(--text);background:#fff;outline:none;transition:border .2s}
.form-group input:focus,.form-group select:focus{border-color:var(--teal)}
.form-group input::placeholder{color:var(--text3)}
.checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:7px}
.check-item{display:flex;align-items:center;gap:9px;padding:9px 13px;border:1.5px solid #D0D8E4;border-radius:8px;cursor:pointer;transition:border .2s,background .2s;user-select:none}
.check-item:hover{border-color:var(--teal);background:#f0faf6}
.check-item input[type=checkbox]{width:15px;height:15px;accent-color:var(--teal);cursor:pointer}
.check-item span{font-size:13px;color:var(--text);font-weight:500}
.form-submit{background:var(--navy);color:#fff;border:none;padding:17px;border-radius:12px;font-size:16px;font-weight:900;cursor:pointer;width:100%;font-family:'Inter',sans-serif;margin-top:6px;transition:background .2s}
.form-submit:hover{background:#0a2240}
.form-note{text-align:center;font-size:12px;color:var(--text3);margin-top:13px;line-height:1.6}
.switch-cta-banner{background:rgba(29,158,117,0.08);border:1px solid rgba(29,158,117,0.2);border-radius:10px;padding:18px 22px;text-align:center;margin-top:28px;font-size:14px;color:var(--text2)}
.switch-cta-banner button{background:none;border:none;color:var(--teal);font-weight:700;cursor:pointer;font-size:14px;font-family:'Inter',sans-serif;text-decoration:underline}
.outra-cidade-wrap{display:none;margin-top:8px}
.outra-cidade-wrap.visible{display:block}

/* MODAL */
.modal-overlay{position:fixed;inset:0;background:rgba(0,0,0,0.65);z-index:999;display:flex;align-items:center;justify-content:center;padding:20px;animation:fadeIn .25s ease}
.modal-box{background:#fff;border-radius:20px;padding:44px 36px;max-width:460px;width:100%;text-align:center;position:relative;animation:slideUp .3s ease}
@keyframes slideUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}
.m-icon{font-size:54px;margin-bottom:18px}
.modal-box h3{font-size:22px;font-weight:900;color:var(--navy);margin-bottom:14px;line-height:1.3}
.modal-box p{font-size:15px;color:var(--text2);line-height:1.75;margin-bottom:6px}
.modal-note{font-size:13px;color:var(--text3);margin-top:16px;padding-top:16px;border-top:1px solid var(--bg2);line-height:1.6}
.modal-close{background:var(--navy);color:#fff;border:none;padding:14px 36px;border-radius:10px;font-size:15px;font-weight:800;cursor:pointer;font-family:'Inter',sans-serif;margin-top:24px;width:100%;transition:background .2s}
.modal-close:hover{background:#0a2240}

/* FOOTER */
footer{background:var(--navy);padding:40px 5%;text-align:center}
.foot-logo{font-size:20px;font-weight:900;color:#fff;margin-bottom:10px;cursor:pointer}
.foot-logo span{color:var(--teal)}
.foot-tagline{color:var(--teal);font-size:13px;font-weight:700;margin-bottom:6px;font-style:italic}
.foot-sub{color:rgba(255,255,255,0.45);font-size:13px;margin-bottom:16px}
.foot-links{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-bottom:20px}
.foot-links a{color:rgba(255,255,255,0.42);font-size:12px;text-decoration:none}
.foot-links a:hover{color:rgba(255,255,255,0.8)}
.foot-switch{display:inline-block;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.12);border-radius:8px;padding:11px 22px;font-size:13px;color:rgba(255,255,255,0.65);cursor:pointer;font-family:'Inter',sans-serif;margin-bottom:20px;transition:all .2s}
.foot-switch:hover{background:rgba(255,255,255,0.1);color:#fff}
