:root{--green:#009440;--yellow:#FFCB00;--blue:#302681;--white:#FFFFFF;--ink:#252843;--muted:#60677f;--line:#dfe3ef;--bg:#f7f9fc;font-family:Arial,Helvetica,sans-serif;color:var(--ink);background:var(--bg);font-synthesis:none}*{box-sizing:border-box}body{margin:0;min-height:100vh}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:var(--blue)}[hidden]{display:none!important}:focus-visible{outline:3px solid var(--yellow);outline-offset:4px}.shell{width:min(650px,calc(100% - 40px));margin:0 auto;position:relative;z-index:1;padding:28px 0 25px;min-height:100vh}.decoration{position:fixed;pointer-events:none;z-index:0;opacity:.16}.yellow{width:230px;height:230px;background:var(--yellow);border-radius:50%;left:-115px;top:-90px;opacity:.55}.green{width:290px;height:290px;background:var(--green);border-radius:50%;right:-160px;top:-110px;opacity:.35}.green:after{content:'';position:absolute;width:60px;height:60px;background:var(--blue);border-radius:7px;left:35px;bottom:35px}.blue{width:200px;height:170px;background:var(--blue);border-radius:25px;bottom:-100px;left:-90px;transform:rotate(15deg);opacity:.12}.bottom-green{width:220px;height:220px;background:var(--green);bottom:-170px;right:-100px;border-radius:50%}.top{display:flex;justify-content:space-between;align-items:center;height:67px;margin-bottom:18px}#back{background:none;border:0;color:var(--muted);font-size:17px;padding:12px 0;min-height:48px}.mini-brand{width:135px;display:block;height:80px;overflow:hidden}.mini-brand img{width:100%;height:100%;object-fit:contain}#progress{height:7px;border-radius:20px;background:#e2e5f0;overflow:hidden}#progress span{display:block;background:var(--green);height:100%;border-radius:20px;transition:width .25s}#step-count{font-size:10px;letter-spacing:1.5px;color:var(--muted);margin:12px 0 0;text-align:right}#screen{outline:none;padding:40px 0 15px}h1,h2,h3{color:var(--blue);letter-spacing:-1.1px}h1{font-size:36px;line-height:1.16;margin:0 0 18px;font-weight:750}h2{font-size:23px;line-height:1.3}p{line-height:1.55}.eyebrow{font-size:12px;letter-spacing:3px;font-weight:700;color:var(--blue);margin:0 0 14px}.lead{font-size:17px;color:var(--muted);line-height:1.55;margin:0 0 28px}.logo{display:block;width:min(360px,88%);height:auto;margin:-30px auto 18px}.intro h1{font-size:43px;letter-spacing:-1.6px}.alert{border:2px solid var(--yellow);background:#ffcb0018;border-radius:17px;padding:18px 22px;font-size:16px;font-weight:700;color:var(--blue);line-height:1.5;margin:24px 0}.intro .alert{text-align:center}.card{background:var(--white);border:1px solid var(--line);border-radius:23px;padding:28px;box-shadow:0 10px 35px -25px #30268128}.benefits h2{display:flex;align-items:center;gap:12px;margin:0 0 18px;font-size:21px}.badge{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#00944012;color:var(--green);flex-shrink:0;font-size:22px}.benefits ul{padding:0;margin:0;list-style:none}.benefits li{display:flex;align-items:center;gap:17px;padding:18px 0;border-bottom:1px solid #eef0f6;font-size:16px;line-height:1.4}.benefits li:last-child{border:0;padding-bottom:4px}.list-icon{background:var(--blue);color:white;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;flex-shrink:0}.note{background:#30268108;border:1px solid #30268112;border-radius:17px;padding:18px 22px;display:flex;gap:16px;align-items:center;margin:20px 0;font-size:15px;line-height:1.5}.note .badge{background:white;color:var(--blue)}.button{border:0;background:var(--green);color:white;display:flex;align-items:center;justify-content:center;text-align:center;width:100%;padding:20px 24px;min-height:64px;border-radius:16px;font-size:18px;font-weight:700;margin-top:25px;box-shadow:0 12px 25px -16px #009440aa;text-decoration:none;line-height:1.3}.button:hover{filter:brightness(.94)}.button:focus-visible{outline-color:var(--blue)}.button.secondary{color:var(--blue);background:white;border:2px solid var(--blue);box-shadow:none}.button:disabled{background:#cbd2e0;cursor:not-allowed;box-shadow:none}.assurances{display:flex;justify-content:space-around;gap:15px;text-align:center;margin:34px 0 18px;font-size:12px;font-weight:600;line-height:1.5}.assurances .badge{display:grid;margin:0 auto 10px}.assurances>div:nth-child(3) .badge{background:#ffcb0025;color:var(--blue)}.field{display:block;margin:27px 0;font-size:12px;font-weight:700;letter-spacing:.35px;color:var(--muted);text-transform:uppercase}.field input,.field select{display:block;width:100%;padding:18px;border:1px solid var(--line);border-radius:15px;min-height:62px;margin-top:11px;background:white;color:var(--ink);font-size:17px;letter-spacing:0;font-weight:400;text-transform:none}.field input::placeholder{color:#8993aa}.field input:focus,.field select:focus{outline:2px solid var(--blue);outline-offset:3px}.field input[aria-invalid=true],.field select[aria-invalid=true]{border-color:#ad2525}.field input:disabled{background:#f9fafc;color:#a2abc0}.field input[type=date],.field input[type=time]{max-width:100%;min-width:0}.error{display:block;color:#ad2525;font-size:12px;line-height:1.5;margin-top:9px;text-transform:none;letter-spacing:0}.hint{font-size:13px;line-height:1.6;color:var(--muted);margin-top:12px}fieldset{border:0;padding:0;margin:27px 0}legend{font-size:12px;text-transform:uppercase;font-weight:700;color:var(--muted);line-height:1.6;letter-spacing:.25px;margin-bottom:12px}.choice{display:flex;align-items:center;justify-content:space-between;gap:14px;background:white;border:1px solid var(--line);border-radius:15px;min-height:62px;margin:10px 0;padding:18px;font-size:17px;font-weight:600;cursor:pointer}.choice input{width:22px;height:22px;accent-color:var(--green);flex-shrink:0}.choice:has(input:checked){border-color:var(--green);background:#00944008}.check{display:flex;gap:12px;align-items:flex-start;font-size:14px;line-height:1.6;margin:22px 0}.check input{width:20px;height:20px;flex-shrink:0;margin-top:3px;accent-color:var(--green)}.term p{font-size:18px;line-height:1.65;margin-top:0}.term strong{color:var(--blue)}.term ul{padding-left:22px;line-height:1.8;font-size:17px}.term li::marker{color:var(--green)}.term .alert{margin-bottom:0;font-size:17px}.pill{display:inline-block;border-radius:30px;padding:9px 15px;background:#ffcb0029;color:#6c5600;font-size:11px;font-weight:700;letter-spacing:.8px;margin-bottom:20px}.schedule-card{margin:20px 0;padding:22px}.schedule-card h2{font-size:17px;margin:0 0 15px;letter-spacing:0}.periods{display:flex;flex-wrap:wrap;gap:10px}.periods label{border:1px solid var(--line);border-radius:12px;padding:12px 15px;cursor:pointer;min-height:48px;font-size:15px;display:flex;align-items:center;gap:8px}.periods input{accent-color:var(--green)}.periods label:has(input:checked){background:#0094400c;border-color:var(--green)}.review{padding:0;overflow:hidden}.review-row{padding:20px 24px;border-bottom:1px solid #edf0f7;display:flex;justify-content:space-between;gap:18px;align-items:start}.review-row:last-child{border:0}.review-label{display:block;font-size:11px;font-weight:700;letter-spacing:.6px;color:var(--muted);margin:0 0 8px;text-transform:uppercase}.review-value{font-size:17px;line-height:1.5;font-weight:600;overflow-wrap:anywhere}.edit{background:none;border:0;color:var(--blue);font-size:12px;font-weight:700;text-transform:uppercase;min-height:44px;flex-shrink:0;padding:8px 0;align-self:center}.student-title{background:#00944009;padding:17px 24px;display:flex;justify-content:space-between;align-items:center;color:var(--blue);font-weight:700}.remove{background:none;border:0;color:#9a2d2d;min-height:44px;font-size:12px}.ready-icon{width:65px;height:65px;background:#00944012;color:var(--green);font-size:30px;border-radius:50%;display:grid;place-items:center;margin:0 0 25px}textarea{width:100%;min-height:180px;resize:vertical;border:1px solid var(--line);border-radius:12px;padding:15px;font:15px/1.6 Arial;color:var(--ink);background:white}.honeypot{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}footer{text-align:center;margin:35px auto 0;font-size:11px;color:var(--muted);line-height:1.6;padding:20px 0}footer nav{display:flex;justify-content:center;gap:25px}footer button{background:none;border:0;font-size:11px;color:var(--blue);padding:12px 0;min-height:44px}.prototype{font-size:10px;opacity:.8}dialog{width:calc(100% - 40px);max-width:620px;border:1px solid var(--line);border-radius:20px;padding:30px;color:var(--ink);max-height:85vh}dialog::backdrop{background:#17174799}dialog p{font-size:14px;line-height:1.8}.close{float:right;background:none;border:0;font-size:28px;color:var(--blue);width:44px;height:44px}.skip{position:absolute;top:-90px;background:white;padding:15px;z-index:5}.skip:focus{top:0}body[data-step="0"] .top{display:none}body[data-step="0"] #step-count{display:none}body[data-step="0"] #screen{padding-top:20px}body[data-step="0"] #progress{margin:4px 0 15px;background:repeating-linear-gradient(90deg,#dfe3e9 0,#dfe3e9 calc(16.666% - 8px),transparent calc(16.666% - 8px),transparent 16.666%)}body[data-step="0"] #progress span{width:calc(16.666% - 8px)!important;background:var(--blue)}@media(min-width:1000px){.shell{padding-top:40px}body[data-step="0"] .shell{max-width:600px}.yellow{left:calc(50% - 580px)}.green{right:calc(50% - 600px)}.blue{left:calc(50% - 550px)}.bottom-green{right:calc(50% - 580px)}.logo{width:340px;margin-top:-25px;margin-bottom:15px}}@media(max-width:600px){.shell{width:calc(100% - 40px);padding-top:18px}.top{height:54px;margin-bottom:20px}.mini-brand{width:115px;height:70px}#back{font-size:15px}#screen{padding-top:30px}h1{font-size:29px;letter-spacing:-.8px}.intro h1{font-size:35px;letter-spacing:-1.1px}.lead{font-size:16px}.logo{width:290px;margin:-15px auto 12px}.eyebrow{font-size:10px;letter-spacing:2.2px}.card{padding:22px;border-radius:20px}.benefits h2{font-size:18px}.benefits li{font-size:15px;gap:12px}.alert{font-size:14px;padding:15px}.note{font-size:14px;padding:16px}.button{min-height:60px;font-size:17px;padding:18px;margin-top:23px}.field{font-size:11px;margin:24px 0}.field input,.field select{font-size:16px;min-height:58px;padding:16px}.choice{font-size:16px;min-height:60px;padding:16px}legend{font-size:11px}.term p{font-size:16px}.term ul{font-size:15px}.term .alert{font-size:15px}.review{padding:0}.review-row{padding:18px;gap:12px}.review-value{font-size:16px}.student-title{padding:12px 18px}.assurances{font-size:11px;gap:10px}.yellow{width:170px;height:170px;left:-105px;top:-80px}.green{width:190px;height:190px;right:-115px;top:-80px}.green:after{width:36px;height:36px;left:18px;bottom:25px}.hint{font-size:12px}.periods{gap:8px}.periods label{font-size:14px;padding:11px}.schedule-card{padding:20px}.eyebrow{margin-bottom:14px}}@media(prefers-reduced-motion:reduce){*{transition:none!important;scroll-behavior:auto!important}}

.button{font-size:19px}#add-student,#skip-time,#restart{background:var(--white);color:var(--blue);border:2px solid var(--blue);box-shadow:none}

/* V3 — fontes locais, acabamento e movimento. Cores da marca preservadas. */
@font-face{font-family:Inter;src:url('assets/fonts/inter-variable.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
@font-face{font-family:Jakarta;src:url('assets/fonts/jakarta-variable.woff2') format('woff2');font-weight:400 800;font-style:normal;font-display:swap}
:root{font-family:Inter,Arial,sans-serif}
h1,h2,h3,.button,.student-title{font-family:Jakarta,Inter,sans-serif}
h1{font-weight:800;letter-spacing:-1.4px;line-height:1.2}.intro h1{font-weight:800;line-height:1.18}.lead{line-height:1.7}.eyebrow{font-size:11px;letter-spacing:2.8px}#screen{isolation:isolate}#flow-header{position:relative}.top{height:74px}.mini-brand{width:145px;height:90px}.logo{width:350px;max-width:90%;margin-top:-20px;margin-bottom:24px}#step-count{font-size:10px;font-weight:600;letter-spacing:1.6px;margin-top:14px}#progress{height:6px;background:#3026810e}#progress span{transition:width .42s cubic-bezier(.2,.8,.2,1)}
.card{border-color:#30268112;box-shadow:0 5px 12px #30268103,0 18px 45px -32px #30268135;border-radius:24px}.benefits h2{font-weight:750;letter-spacing:-.6px;line-height:1.45}.benefits li{padding:20px 0}.list-icon{width:38px;height:38px;background:var(--blue)}.ui-icon{display:block;width:22px;height:22px;flex-shrink:0}.badge .ui-icon{width:23px;height:23px}.list-icon .ui-icon{width:20px;height:20px}.note{border-color:#3026810e;background:#30268105}.note .badge{width:43px;height:43px}.alert{border-width:1.5px;background:#ffcb0010;line-height:1.6}.pill{display:inline-flex;gap:8px;align-items:center}.pill .ui-icon{width:17px;height:17px}.button{position:relative;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:0 4px 8px #00944012,0 13px 25px -15px #00944066;font-size:19px;font-weight:800;min-height:66px;border-radius:17px}.button:active{transform:translateY(1px) scale(.988);box-shadow:0 2px 5px #00944012}.button:disabled{transform:none;filter:none}.field{letter-spacing:.7px;font-size:11px}.field input,.field select,textarea{font-family:Inter,Arial,sans-serif;transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}.field input:hover:not(:disabled),.field select:hover{border-color:#30268145}.field input:focus,.field select:focus,textarea:focus{border-color:var(--blue);outline:2px solid #30268118;outline-offset:2px;box-shadow:0 0 0 5px #30268107}.choice{font-size:16px;font-weight:600;transition:background .2s ease,border-color .2s ease,box-shadow .2s ease,transform .18s ease}.choice:has(input:checked){box-shadow:0 0 0 1px var(--green),0 5px 15px #00944007;background:#00944005}.choice input,.periods input{appearance:none;background:white;width:24px;height:24px;border:1.5px solid #cbd0df;border-radius:50%;display:grid;place-content:center;margin:0;transition:background .16s ease,border-color .16s ease}.choice input:checked,.periods input:checked{border-color:var(--green);background:var(--green)}.choice input:after,.periods input:after{content:'';width:9px;height:5px;border:solid white;border-width:0 0 2px 2px;transform:rotate(-45deg) scale(0);transition:transform .18s ease}.choice input:checked:after,.periods input:checked:after{transform:rotate(-45deg) scale(1)}.periods label{transition:border-color .18s ease,background .18s ease}.review-row{transition:background .18s ease}.review-label{font-size:10px;letter-spacing:1px}.review-value{font-weight:600;line-height:1.6}.edit{font-size:11px;letter-spacing:.4px}.student-title{font-size:14px}.ready-icon{box-shadow:0 0 0 9px #00944005;margin-bottom:32px}.ready-icon .ui-icon{width:32px;height:32px}.ready-icon path{stroke-dasharray:24;stroke-dashoffset:0;animation:draw-check .5s ease-out both}.check{font-size:13px;line-height:1.8}.term p{line-height:1.8}.hint{line-height:1.8}.assurances{font-size:11px;font-weight:600;line-height:1.65}.assurances .badge{width:46px;height:46px}.decoration{transition:opacity .5s ease;will-change:auto}body:not([data-step="0"]) .decoration{opacity:.07}body[data-step="0"] .yellow{animation:drift-yellow 16s ease-in-out infinite alternate}body[data-step="0"] .green{animation:drift-green 19s ease-in-out infinite alternate}body[data-step="0"] .bottom-green{animation:drift-green 22s ease-in-out infinite alternate}body[data-step="0"] .blue{animation:drift-blue 20s ease-in-out infinite alternate}.intro .benefits,.intro .note,.intro .assurances{animation:reveal-card .5s ease-out both}.intro .note{animation-delay:.08s}.intro .assurances{animation-delay:.14s}#motion-toggle{font-size:10px;color:var(--muted)}footer nav{flex-wrap:wrap;gap:8px 24px}dialog[open]{animation:reveal-card .2s ease-out}
@keyframes drift-yellow{from{transform:translate(0,0)}to{transform:translate(22px,16px)}}
@keyframes drift-green{from{transform:translate(0,0) rotate(0)}to{transform:translate(-14px,20px) rotate(7deg)}}
@keyframes drift-blue{from{transform:translate(0,0) rotate(15deg)}to{transform:translate(18px,-15px) rotate(22deg)}}
@keyframes reveal-card{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}
@keyframes draw-check{from{stroke-dashoffset:24}to{stroke-dashoffset:0}}
@media(hover:hover){.button:not(:disabled):hover{transform:translateY(-2px);box-shadow:0 7px 10px #00944010,0 18px 28px -15px #00944080}.choice:hover{border-color:#00944077}.review-row:hover{background:#30268102}.edit:hover{color:var(--green)}#back:hover{color:var(--blue)}}
@media(max-width:600px){.top{height:62px}.mini-brand{width:128px;height:82px}.logo{width:300px;margin-top:-14px;margin-bottom:20px}h1{font-size:28px;letter-spacing:-1px}.intro h1{font-size:33px;letter-spacing:-1.2px;line-height:1.25}.eyebrow{font-size:9px;letter-spacing:2px}.lead{font-size:15px;line-height:1.75}.benefits h2{font-size:17px;gap:10px}.benefits li{font-size:14px;line-height:1.6;gap:13px}.card{border-radius:21px}.button{font-size:19px;min-height:62px}.choice{font-size:15px}.review-value{font-size:15px}.term p{font-size:15px}.field input,.field select{font-size:16px}.assurances{font-size:10px}.review{padding:0}}
body[data-motion="off"] *,body[data-motion="off"] *:before,body[data-motion="off"] *:after{animation:none!important;transition:none!important}
@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.button:hover,.button:active{transform:none!important}}
