/* Escola Up4 | redesign limpo v2026-10-19
   Escopo estrito ao conteúdo: não modifica topbar nem .site-header. */
body{background:#fff}
main#topo{background:#fff;color:#0F172A;overflow:hidden}
main#topo section{box-sizing:border-box}
main#topo .wrap{width:min(1140px,calc(100% - 56px));margin-inline:auto}
main#topo .hero{background:#fff!important;border-bottom:1px solid #eff0f5;padding:0!important}
main#topo .hero .wrap{min-height:440px;padding:45px 0 36px;display:grid;grid-template-columns:minmax(0,.93fr) minmax(0,1.07fr);gap:46px;align-items:center}
main#topo .hero-content{min-width:0;position:relative;z-index:1}
main#topo .kicker,main#topo .eyebrow{color:#7B3CFF;letter-spacing:.16em;font-size:10px;font-weight:800}
main#topo .hero h1{font-size:clamp(42px,4.7vw,64px);line-height:1.08;margin:14px 0 20px;letter-spacing:-.065em;font-weight:800;color:#0B0F1A}
main#topo .hero h1 span{color:#7B3CFF}
main#topo .hero .subhead{font-size:15px;line-height:1.7;color:#475569;max-width:460px;margin:0 0 26px}
main#topo .action-row{display:flex;gap:12px;flex-wrap:wrap}
main#topo .action-row .btn{min-height:45px;border-radius:9px;background:#7B3CFF;color:#fff;padding:12px 20px}
main#topo .action-row .btn-outline{background:#fff;color:#0F172A;border:1px solid #9E74F8}
main#topo .hero-graphic{display:flex;min-height:0;align-items:center;justify-content:center;overflow:visible;isolation:auto}
main#topo .hero-art{display:block;width:100%;max-width:540px;height:auto;object-fit:contain;box-shadow:none}
main#topo .proof{background:#fff;border-bottom:1px solid #eff0f5}
main#topo .proof .wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));padding:17px 0;gap:0}
main#topo .proof-item{display:flex;align-items:center;justify-content:center;gap:12px;min-width:0;padding:6px 14px;border-right:1px solid #E7E9F0}
main#topo .proof-item:last-child{border-right:0}
main#topo .proof-item strong{font-size:12px;color:#0B0F1A}
main#topo .proof-item small{font-size:10px}
main#topo .proof-icon{font-size:24px;color:#7B3CFF;background:none}
main#topo .learning,main#topo .library,main#topo .practice{background:#fff!important;padding:18px 0 0}
main#topo .learning>.wrap,main#topo .library>.wrap,main#topo .practice>.wrap{border:1px solid #E5E8F0;border-radius:18px;background:#fff;padding:32px 36px;box-shadow:none}
main#topo .section-top{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:25px;min-width:0}
main#topo .section-top>div{min-width:0}
main#topo .section-top h2{color:#0B0F1A;font-size:clamp(27px,2.8vw,34px);line-height:1.15;margin:7px 0 11px;letter-spacing:-.045em}
main#topo .section-desc{color:#647084;font-size:13px;max-width:680px;line-height:1.6}
main#topo .learning .section-top{position:relative;padding-right:175px;min-height:125px}
main#topo .journey-visual{position:absolute;right:0;top:0;width:160px;height:125px;display:flex;align-items:center;justify-content:center;overflow:hidden}
main#topo .journey-visual img{width:100%;height:100%;object-fit:contain}
main#topo .learning-grid.journey-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:0;padding:6px 0 0}
main#topo .journey-grid .learn{display:flex;flex-direction:column;align-items:center;text-align:center;min-width:0;min-height:144px;padding:8px 7px;border:0;border-right:1px solid #E8EAF2;border-radius:0;box-shadow:none;transform:none;overflow-wrap:break-word}
main#topo .journey-grid .learn:last-child{border-right:0}
main#topo .journey-grid .learn:before{display:none}
main#topo .journey-grid .learn .no{display:grid;place-items:center;border:2px solid #7B3CFF;border-radius:100%;width:32px;height:32px;background:#fff;color:#7B3CFF;font-size:11px;letter-spacing:0}
main#topo .journey-grid .learn .ic{font-size:24px;color:#0B0F1A;margin:12px 0 7px}
main#topo .journey-grid .learn h3{color:#0B0F1A;font-size:12px;line-height:1.35;margin:0 0 7px}
main#topo .journey-grid .learn p{color:#647084;font-size:10px;line-height:1.55;margin:0}
main#topo .library .books{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
main#topo .library .book{display:flex;flex-direction:column;min-width:0;padding:11px;background:#fff;border:1px solid #E8EAF1;border-radius:12px;box-shadow:none;transform:none}
main#topo .library .cover.cover-approved{display:flex;align-items:center;justify-content:center;width:100%;height:190px;min-height:190px;padding:5px;background:#fff!important;overflow:hidden;border-radius:9px}
main#topo .cover.cover-approved:after{display:none}
main#topo .cover.cover-approved img{width:100%;height:100%;max-height:180px;object-fit:contain}
main#topo .book-info{padding:13px 5px 5px;flex:1;min-width:0;display:flex;flex-direction:column}
main#topo .book-info h3{font-size:15px;line-height:1.3;margin:0 0 7px;color:#0B0F1A}
main#topo .book-info p{font-size:11px;line-height:1.6;margin:0 0 12px;min-height:0;color:#647084}
main#topo .book-info .meta{font-size:10px;flex-wrap:wrap;margin-top:auto;margin-bottom:12px}
main#topo .book-info .btn{min-height:38px;width:100%;padding:9px 10px;background:#7B3CFF;color:#fff;font-size:11px;border-radius:8px}
main#topo .lock-note{font-size:11px;margin-top:15px;color:#667084}
main#topo .practice .pract-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
main#topo .practice .chat-demo,main#topo .practice .lesson{min-width:0;border:1px solid #E7E8F0;border-radius:13px;background:#FCFBFF;color:#0B0F1A;padding:22px}
main#topo .practice .chat-head{font-size:12px;padding-bottom:12px}
main#topo .practice .message{font-size:12px;line-height:1.55;margin:12px 0;padding:11px;overflow-wrap:anywhere}
main#topo .practice .lesson{display:flex;flex-direction:column;justify-content:space-between}
main#topo .practice .lesson h2{font-size:23px;color:#0B0F1A;margin:12px 0}
main#topo .practice .lesson p{color:#536075;font-size:13px;line-height:1.65}
main#topo .practice .copy-chat{border:1px solid #7B3CFF;background:#fff;color:#5A22C8;border-radius:8px;padding:10px 14px;align-self:flex-start;margin-top:18px}
main#topo .final-cta{padding:30px 0;background:#fff!important}
main#topo .final-banner{display:flex;justify-content:space-between;align-items:center;gap:22px;background:#F8F5FF!important;border:1px solid #E4DCFA;border-radius:15px;padding:27px 30px;color:#0B0F1A}
main#topo .final-banner h2{font-size:27px;margin:7px 0;color:#0B0F1A}
main#topo .final-banner p{font-size:13px;color:#5D687A}
main#topo .final-banner .btn{background:#7B3CFF;color:#fff}
main#topo .school-signature{background:#fff!important;padding:0;border-top:1px solid #E7E9F0}
main#topo .school-signature-inner{width:min(1140px,calc(100% - 56px));margin:auto;display:grid;grid-template-columns:240px 1.15fr .85fr;gap:28px;align-items:center}
main#topo .school-signature-mascot{height:180px;display:flex;justify-content:center;align-items:center;overflow:hidden;background:#fff!important}
main#topo .school-signature-mascot img{width:100%;height:170px;object-fit:contain}
main#topo .school-signature h2{font-size:clamp(22px,2.4vw,29px);color:#0B0F1A;margin:8px 0}
main#topo .school-signature p,main#topo .school-signature blockquote{font-size:12px;color:#536075;line-height:1.7}
main#topo .school-signature blockquote{border-left:2px solid #7B3CFF;padding-left:22px}
@media(max-width:1050px){
 main#topo .hero .wrap{gap:20px}
 main#topo .learning-grid.journey-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
 main#topo .journey-grid .learn{border:1px solid #E8EAF2;border-radius:10px;padding:13px 8px}
 main#topo .library .books{grid-template-columns:repeat(2,minmax(0,1fr))}
 main#topo .school-signature-inner{grid-template-columns:190px 1fr}
 main#topo .school-signature blockquote{grid-column:1/-1;margin-bottom:20px}
}
@media(max-width:700px){
 main#topo .wrap,main#topo .school-signature-inner{width:calc(100% - 32px)}
 main#topo .hero .wrap{grid-template-columns:1fr;min-height:0;padding:39px 0 22px;gap:15px}
 main#topo .hero h1{font-size:clamp(39px,9vw,54px)}
 main#topo .hero-art{max-height:290px}
 main#topo .proof .wrap{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:10px}
 main#topo .proof-item:nth-child(2){border-right:0}
 main#topo .learning>.wrap,main#topo .library>.wrap,main#topo .practice>.wrap{padding:24px 17px}
 main#topo .learning .section-top{padding-right:0;min-height:0}
 main#topo .journey-visual{display:none}
 main#topo .learning-grid.journey-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 main#topo .practice .pract-grid{grid-template-columns:1fr}
 main#topo .final-banner{flex-direction:column;align-items:flex-start;padding:23px}
 main#topo .school-signature-inner{grid-template-columns:1fr;gap:0;padding-bottom:20px}
 main#topo .school-signature-mascot{height:150px}
 main#topo .school-signature-mascot img{height:145px}
 main#topo .school-signature blockquote{grid-column:auto;margin:10px 0 0}
}
@media(max-width:440px){
 main#topo .library .books{grid-template-columns:1fr}
 main#topo .library .cover.cover-approved{height:230px;min-height:230px}
 main#topo .cover.cover-approved img{max-height:220px}
}
