:root{--blue:#173f91;--deep:#12336c;--navy:#132d61;--blue-dark:#102b60;--yellow:#f5bb38;--yellow-light:#fff4d4;--sky:#eaf4fe;--cream:#fffbf2;--text:#263956;--muted:#64728a;--line:#e6edf4;--white:#fff;--shadow:0 24px 72px rgba(27,57,108,.12);--radius:24px;--width:1180px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:110px}
body{margin:0;font-family:'DM Sans',system-ui,-apple-system,'Segoe UI',sans-serif;color:var(--text);background:#fff;line-height:1.65;-webkit-font-smoothing:antialiased}
body,button,input,select,textarea{font-size:16px}
a{color:inherit;text-decoration:none}
button,input,select,textarea{font-family:inherit}
button{cursor:pointer}
img,svg{max-width:100%}
::selection{background:var(--yellow);color:var(--deep)}
:focus-visible{outline:3px solid #f4af20;outline-offset:4px}
.container{width:min(var(--width),calc(100% - 64px));margin:0 auto}
.section{padding:116px 0}
.skip-link{position:absolute;left:10px;top:-70px;z-index:101;background:white;color:var(--blue);padding:10px;border-radius:7px}.skip-link:focus{top:10px}
.announcement{height:39px;background:#0f306f;color:#fff;text-align:center;display:flex;justify-content:center;align-items:center;gap:9px;font-size:12px;font-weight:700;letter-spacing:.035em}
.announcement a{color:#ffe093;text-decoration:underline;text-underline-offset:3px}
.announcement-dot{height:7px;width:7px;border-radius:50%;background:var(--yellow);box-shadow:0 0 0 4px #ffffff22}
.site-header{z-index:50;position:sticky;top:0;background:#fffffff0;backdrop-filter:blur(18px);border-bottom:1px solid #e6edf58c}
.header-inner{height:90px;display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{display:flex;align-items:center;gap:12px;min-width:max-content;color:var(--blue)}
.brand img{height:52px;width:52px;display:block}
.brand-title{display:flex;flex-direction:column;font-family:Nunito,system-ui,sans-serif;letter-spacing:-.045em;font-size:18px;font-weight:700;line-height:1.06}
.brand-title strong{font-size:22px;font-weight:900}.brand-title small{margin-top:5px;letter-spacing:.03em;font-size:10px;color:#79859c;font-family:'DM Sans',sans-serif;font-weight:700;text-transform:uppercase}
.main-nav{display:flex;align-items:center;gap:29px;margin-left:auto}.main-nav a{font-size:13px;color:#475573;font-weight:700;transition:color .2s}.main-nav a:hover{color:#1d53b2}
.button{display:inline-flex;align-items:center;justify-content:center;gap:13px;border:2px solid transparent;border-radius:14px;padding:13px 22px;font-weight:800;font-size:13px;line-height:1.3;transition:transform .2s,background .2s,box-shadow .2s;white-space:nowrap;text-align:center}
.button:hover{transform:translateY(-2px)}.button-primary{background:var(--blue);color:#fff;box-shadow:0 8px 20px #173f9125}.button-primary:hover{background:#0b3078;box-shadow:0 10px 24px #173f9139}.button-lg{padding:17px 23px;font-size:14px;border-radius:14px}.button-ghost{color:var(--blue);border-color:#dce7f5;background:#ffffffab}.button-ghost:hover{border-color:#a3c1e7}.button-white{background:#fff;color:var(--blue);padding:17px 24px}.button-white:hover{background:#fff6dc}.button-outline{background:white;border-color:#dce5f1;color:var(--blue)}
.mobile-toggle{display:none;flex-direction:column;justify-content:center;gap:5px;width:42px;height:42px;border:1px solid #dee8f5;border-radius:10px;background:white;padding:10px}.mobile-toggle span{display:block;width:100%;height:2px;border-radius:2px;background:var(--blue)}
/* Hero */
.hero{position:relative;overflow:hidden;padding:102px 0 127px;background:linear-gradient(135deg,#f9fbff 0%,#f1f7ff 54%,#fbfdff 100%)}
.hero-ornament{position:absolute;border-radius:50%;pointer-events:none}.hero-ornament-1{width:780px;height:780px;background:radial-gradient(circle,#dfeeff 0%,#dcefff55 48%,transparent 70%);right:-175px;top:-290px}.hero-ornament-2{width:230px;height:230px;border:45px solid #ffdf892f;left:-160px;bottom:50px}
.hero-grid{position:relative;display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:46px}
.hero-copy{z-index:2;padding:12px 0 15px}.eyebrow{display:inline-flex;align-items:center;gap:11px;background:#e7f0fe;color:#174589;font-size:11px;font-weight:800;letter-spacing:.085em;text-transform:uppercase;border-radius:100px;padding:9px 15px}.sparkle{color:#edae21;font-size:16px;line-height:0}
h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Nunito,system-ui,sans-serif;color:var(--navy)}h1{font-size:clamp(46px,4.35vw,67px);line-height:1.105;font-weight:900;letter-spacing:-.057em;margin:23px 0 21px}h1 em,h2 em{font-style:normal;color:#2e64b9;position:relative}.hero-copy>p{font-size:17px;line-height:1.85;max-width:510px;color:#60718a;margin-bottom:27px}.hero-actions{display:flex;flex-wrap:wrap;gap:11px}.hero-note{margin-top:41px;display:flex;align-items:center;gap:15px;font-size:12px;line-height:1.65;color:#7b8799}.hero-note strong{font-weight:800;color:#354968}.hero-note-avatars{display:flex;padding-left:8px}.hero-note-avatars span{display:grid;place-items:center;width:36px;height:36px;margin-left:-8px;border:3px solid white;border-radius:50%;background:#f8ca56;color:#17438b;font-size:16px}.hero-note-avatars span:nth-child(2){background:#c3dcf4}.hero-note-avatars span:nth-child(3){background:#d7e6c0}
.hero-visual{position:relative;min-height:533px;display:flex;align-items:center;justify-content:center;isolation:isolate}.hero-visual-board{position:relative;width:100%;max-width:558px;aspect-ratio:1.04;border-radius:45% 43% 38% 44%/40% 41% 43% 38%;background:linear-gradient(137deg,#d1eaff,#b8dcfa 63%,#dfedff);box-shadow:inset 12px 16px 55px #ffffff95,0 36px 65px #2262ab20;overflow:hidden;transform:rotate(-3deg)}.hero-visual-board:before{content:"";position:absolute;inset:15px;border:2px dashed #ffffff85;border-radius:48% 49% 43% 44%;pointer-events:none}.school-illustration{position:absolute;inset:0;width:100%;height:100%;transform:rotate(3deg)}.sun{position:absolute;border-radius:50%;background:#fff8de;opacity:.7}.sun-big{width:120px;height:120px;right:28px;top:39px}.sun-small{width:22px;height:22px;left:74px;top:114px}.visual-wave{position:absolute;bottom:-41px;left:0;width:100%;height:90px;border-radius:50%;background:#f1d67a54}
.floating-card{display:flex;align-items:center;gap:12px;position:absolute;background:#fff;border:1px solid #fff9;padding:13px 16px;border-radius:16px;box-shadow:0 20px 35px #133a7429;z-index:3}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-family:Nunito,sans-serif;font-weight:900;font-size:12px;white-space:nowrap;color:var(--navy)}.floating-card small{font-size:11px;color:#8793a8}.floating-icon{border-radius:10px;background:#fff0c5;color:#e9a12d;display:grid;place-items:center;font-size:17px;width:39px;height:39px}.floating-icon-blue{background:#e9f1ff;color:var(--blue)}.floating-card-1{top:38px;left:-32px;transform:rotate(-7deg)}.floating-card-2{right:-28px;bottom:52px;transform:rotate(7deg)}.hero-bottom-arc{position:absolute;bottom:-89px;left:-4%;width:108%;height:140px;background:white;border-radius:50% 50% 0 0}
/* Stripe */
.trust-strip{position:relative;z-index:1;background:white;padding:6px 0 28px}.trust-inner{display:flex;justify-content:space-around;gap:30px;align-items:center}.trust-item{display:flex;gap:14px;align-items:center}.trust-item strong,.trust-item span:last-child{display:block}.trust-item strong{font-family:Nunito,sans-serif;color:#1d3c78;font-size:17px;font-weight:900;letter-spacing:-.018em}.trust-item div span{font-size:12px;color:#8b95a8}.trust-symbol{background:#f1f6fe;color:#3165b3;border-radius:13px;width:48px;height:48px;display:grid;place-items:center;font-size:24px}.trust-rule{height:41px;width:1px;background:#e3eaf2}
/* generic */
.section-kicker{color:#3065b2;display:inline-block;text-transform:uppercase;font-size:11px;letter-spacing:.16em;font-weight:900}.section-heading h2,.section-copy h2,.reasons-header h2,.enrollment-copy h2,.contact-info h2{font-size:clamp(33px,3.3vw,48px);line-height:1.22;font-weight:900;letter-spacing:-.052em;margin:13px 0 20px}.section-heading.center{text-align:center;max-width:750px;margin:0 auto 47px}.section-heading p{color:var(--muted);font-size:15px;line-height:1.9;margin:0}.section-copy p{color:var(--muted);font-size:15px;line-height:2;margin-bottom:16px}
/* About */
.about-section{background:#fff}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:105px;align-items:center}.about-art{min-height:425px;position:relative;display:grid;place-items:center}.about-art-main{width:92%;height:400px;background:#f1f6ff;border-radius:34px 120px 42px 36px;position:relative;overflow:hidden;box-shadow:0 23px 48px #1e4a9920;display:grid;place-items:center}.about-art-main:before{content:"";position:absolute;width:290px;height:290px;border:50px solid #dceaff;border-radius:50%;bottom:-106px;left:-87px}.about-art-main:after{content:"";position:absolute;width:150px;height:150px;border:28px solid #ffdfa242;border-radius:50%;top:-70px;right:-35px}.about-art-scribble{position:absolute;left:48px;top:37px;font-size:45px;color:#f2b63a}.about-art-quote{position:relative;width:73%;max-width:340px;z-index:1}.big-quote{color:#f3b738;font-size:110px;display:block;font-family:Georgia,serif;line-height:.8}.about-art-quote p{font-family:Nunito,sans-serif;font-weight:900;line-height:1.4;letter-spacing:-.04em;font-size:31px;color:var(--deep)}.about-art-quote em{color:#3b71c1;font-style:normal}.about-art-dots{position:absolute;bottom:24px;right:41px;display:flex;gap:7px}.about-art-dots i{width:9px;height:9px;background:#ffcb55;border-radius:50%}.about-art-dots i:nth-child(2){background:#80baed}.about-art-dots i:nth-child(3){background:#80bda5}.text-link{display:inline-flex;align-items:center;gap:11px;color:var(--blue);font-weight:800;font-size:14px;margin-top:15px;border-bottom:2px solid #b6cbea;padding-bottom:5px}.text-link:hover{color:#3571be}
/* levels */
.levels-section{background:#f7faff}.level-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.level-card{position:relative;min-height:452px;padding:28px 29px 26px;border-radius:24px;overflow:hidden;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s;border:1px solid #eaf0fa;background:white}.level-card:hover{transform:translateY(-7px);box-shadow:0 24px 42px #1d4a8b13}.level-card-yellow{background:#fffaf0}.level-card-blue{background:#edf5ff}.level-card-lilac{background:#f8f3fe}.level-top,.level-bottom{display:flex;align-items:center;justify-content:space-between}.level-tag{font-size:11px;text-transform:uppercase;letter-spacing:.115em;color:#32589a;font-weight:900}.level-arrow{border:1px solid #b7c9e7;display:grid;place-items:center;width:36px;height:36px;border-radius:50%;color:#2b56a0;font-size:18px}.level-icon{width:176px;height:176px;align-self:center;margin:8px 0 15px}.level-icon svg{width:100%;height:100%}.level-card h3{font-size:25px;line-height:1.2;letter-spacing:-.045em;font-weight:900;margin:0 0 14px}.level-card p{font-size:13px;color:#66748c;line-height:1.85;margin-bottom:26px}.level-bottom{margin-top:auto;padding-top:16px;border-top:1px solid #dfe8f2;font-weight:800;color:#3160ac;font-size:12px}
/* reasons */
.reasons-section{padding-bottom:120px}.reasons-header{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:48px}.reasons-header h2{margin-bottom:0}.reasons-header>p{max-width:320px;font-size:15px;color:var(--muted);line-height:1.85;margin-bottom:7px}.reasons-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.reason{padding:31px 30px 30px;min-height:258px;border-radius:20px;border:1px solid var(--line);background:#fff;transition:box-shadow .2s,transform .2s}.reason:hover{box-shadow:0 18px 38px #153c8010;transform:translateY(-4px)}.reason-icon{width:53px;height:53px;display:grid;place-items:center;border-radius:14px;font-family:Nunito,sans-serif;font-size:29px;margin-bottom:22px}.reason-icon-yellow{background:#fff2cc;color:#de9d1f}.reason-icon-blue{background:#e6efff;color:#245bad}.reason-icon-teal{background:#e9f4ed;color:#558d6c}.reason h3{margin:0 0 8px;font-size:19px;font-weight:900;letter-spacing:-.025em}.reason p{color:#7a8597;line-height:1.85;font-size:13px;margin-bottom:0}
/* spaces */
.spaces-section{background:var(--cream)}.space-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.space-card{background:white;border-radius:19px;overflow:hidden;border:1px solid #f3eadf;transition:transform .2s,box-shadow .2s}.space-card:hover{transform:translateY(-6px);box-shadow:0 20px 45px #173b7d13}.space-graphic{height:187px;position:relative;display:flex;align-items:end;justify-content:center;overflow:hidden}.space-graphic svg{width:100%;height:100%;object-fit:contain}.space-card-pool .space-graphic{background:#e0f7ff}.space-card-court .space-graphic{background:#e7edf9}.space-card-room .space-graphic{background:#eaf6ff}.space-card-play .space-graphic{background:#ecf6e9}.space-card-content{padding:21px 19px 23px}.space-card-content span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:#7386a4;font-weight:800}.space-card-content h3{font-size:18px;margin:7px 0 0;font-weight:900;letter-spacing:-.025em}.space-caption{text-align:center;margin:32px 0 0;color:#8a95a8;font-size:12px}
/* blue quote */
.story-section{position:relative;text-align:center;background:linear-gradient(130deg,#12356f,#204d9b 66%,#2c61b3);overflow:hidden;padding:105px 0 112px;color:white}.story-section:before,.story-section:after{content:"";position:absolute;border:70px solid #ffffff0b;border-radius:50%;width:450px;height:450px}.story-section:before{left:-195px;top:-135px}.story-section:after{right:-180px;bottom:-210px}.story-inner{position:relative;z-index:1;max-width:780px}.story-bloom{display:inline-grid;place-items:center;color:var(--yellow);font-size:41px;line-height:1;margin-bottom:8px}.story-inner>span{display:block;color:#c8daff;font-size:11px;font-weight:900;letter-spacing:.17em;margin:7px 0 18px}.story-inner h2{font-size:clamp(29px,3.5vw,46px);letter-spacing:-.045em;line-height:1.35;color:#fff;font-weight:900;margin:0 0 23px}.story-inner p{font-size:15px;color:#d6e4ff;line-height:1.95;max-width:670px;margin:0 auto 30px}
/* matrículas */
.enrollment-section{background:#fff}.enrollment-grid{display:grid;grid-template-columns:1fr .85fr;gap:100px;align-items:center}.enrollment-copy h2{max-width:550px}.enrollment-copy p{max-width:530px;color:var(--muted);font-size:15px;line-height:1.95}.enrollment-points{margin:25px 0 33px;display:grid;gap:12px;font-weight:700;font-size:14px;color:#47607d}.enrollment-points span{display:flex;align-items:center;gap:12px}.enrollment-points i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#e6f3e9;color:#498c63;font-weight:900;font-style:normal;font-size:14px}
.enrollment-panel{height:451px;background:#e7f0fe;border-radius:34px;position:relative;overflow:hidden;display:flex;align-items:center;flex-direction:column;justify-content:center;isolation:isolate;box-shadow:0 26px 55px #1e58a31c}.enrollment-panel:before{content:"";width:380px;height:380px;position:absolute;top:-210px;right:-110px;border-radius:50%;background:#c8ddff;z-index:-1}.enrollment-panel:after{content:"";width:360px;height:360px;position:absolute;left:-173px;bottom:-200px;border-radius:50%;background:#fff5d1;z-index:-1}.enrollment-label{font-size:16px;color:#2d5ca1;font-weight:900;letter-spacing:.19em}.enrollment-panel>strong{font-family:Nunito,sans-serif;font-size:clamp(130px,16vw,213px);color:#1c4b9a;letter-spacing:-.12em;line-height:1.4;font-weight:900;text-shadow:5px 7px #ffffff60}.enrollment-panel>strong span{color:#f2b635}.enrollment-swirl{position:absolute;width:520px;height:120px;border:8px solid #ffffff8a;border-radius:50%;transform:rotate(-20deg);top:189px;z-index:-1}.enrollment-panel-bottom{position:absolute;bottom:28px;left:30px;right:30px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid #bed1ed;padding-top:19px;color:#5277aa;font-weight:800;font-size:12px}.enrollment-panel-bottom span:last-child{color:#f1b636;font-size:30px;line-height:1}
/* contact */
.contact-section{background:#f7faff;padding-top:115px;padding-bottom:128px}.contact-grid{display:grid;grid-template-columns:.87fr 1fr;gap:105px;align-items:start}.contact-info>p{font-size:15px;line-height:1.95;color:var(--muted);margin-bottom:34px}.contact-detail{display:flex;gap:17px;align-items:start;margin:28px 0}.contact-icon{width:47px;height:47px;flex:0 0 47px;display:grid;place-items:center;border-radius:14px;background:#e3edfe;color:#2e63b1;font-size:25px}.contact-detail strong,.contact-detail span,.contact-detail a{display:block}.contact-detail strong{color:var(--deep);font-size:15px;margin:0 0 5px}.contact-detail span{color:#6c7d94;font-size:14px;line-height:1.7}.contact-detail a{color:var(--blue);font-weight:800;font-size:12px;margin:7px 0}.contact-box{background:white;border:1px solid #e8eef7;border-radius:27px;padding:37px;box-shadow:var(--shadow)}.form-step{color:#2a5baa;font-size:10px;font-weight:900;letter-spacing:.16em}.contact-box-heading h3{font-size:26px;line-height:1.32;letter-spacing:-.035em;font-weight:900;margin:11px 0 9px}.contact-box-heading p{font-size:13px;color:#7a879b;margin-bottom:22px}.contact-box form{display:flex;flex-direction:column}.contact-box label{font-size:12px;font-weight:800;color:#355071;margin:0 0 7px}.contact-box label span{font-weight:500;color:#9ca8b8}.contact-box input,.contact-box select,.contact-box textarea,.contact-result textarea{width:100%;appearance:none;outline:none;resize:vertical;border:1px solid #dfe7f1;border-radius:11px;background:#fbfcff;color:#334966;padding:13px 14px;margin:0 0 18px;font-size:13px;line-height:1.5;transition:border-color .15s,box-shadow .15s}.contact-box input:focus,.contact-box select:focus,.contact-box textarea:focus{border-color:#5b8fda;box-shadow:0 0 0 4px #8eb9f332}.contact-box input::placeholder,.contact-box textarea::placeholder{color:#a3adbd}.contact-box select{background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' fill='none' stroke='%235c759f' stroke-width='2' viewBox='0 0 24 24'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 15px center}.button-submit{width:100%;margin-top:1px;padding:16px}.form-note{font-size:10px;color:#8996a9;line-height:1.6;text-align:center;margin:12px 0 0}.contact-result{margin-top:18px;border-top:1px solid #e5ebf5;padding-top:22px}.contact-result[hidden]{display:none}.contact-result strong{color:var(--blue);font-size:17px}.contact-result p{font-size:13px;color:var(--muted)}.contact-result textarea{background:#f2f6ff}.contact-result button{font-size:12px;padding:10px 15px}.contact-result #copy-status{color:#397b53;font-size:12px;margin-left:10px;font-weight:700}
/* footer */
.site-footer{background:#102f69;color:#c8d8f4}.footer-main{padding:66px 0 60px;display:grid;grid-template-columns:1.65fr 1fr 1fr;gap:100px}.brand-footer{color:white}.brand-footer .brand-title small{color:#a7c0e8}.footer-brand p{font-size:12px;line-height:1.95;color:#b1c6e9;max-width:300px;margin:22px 0 0}.footer-col h3{font-family:'DM Sans',sans-serif;text-transform:uppercase;letter-spacing:.09em;color:white;font-size:12px;margin:5px 0 21px}.footer-col a{display:block;font-size:12px;color:#bfd0ee;margin:0 0 12px}.footer-col a:hover{color:#fff}.footer-bottom{border-top:1px solid #ffffff1b;padding:21px 0 25px;display:flex;justify-content:space-between;gap:20px;color:#a7bee2;font-size:11px}.footer-bottom span span:last-child{color:#ffd16e}
/* motion */
@media(prefers-reduced-motion:no-preference){[data-animate]{opacity:0;transform:translateY(24px);transition:opacity .65s ease,transform .65s ease}[data-animate].is-visible{opacity:1;transform:translateY(0)}.level-card[data-animate].is-visible:hover,.reason[data-animate].is-visible:hover,.space-card[data-animate].is-visible:hover{transform:translateY(-5px)}.level-grid [data-animate]:nth-child(2),.reasons-grid [data-animate]:nth-child(2),.space-grid [data-animate]:nth-child(2){transition-delay:75ms}.level-grid [data-animate]:nth-child(3),.reasons-grid [data-animate]:nth-child(3),.space-grid [data-animate]:nth-child(3){transition-delay:140ms}}
/* responsive */
@media(max-width:1100px){.container{width:min(var(--width),calc(100% - 52px))}.main-nav{gap:16px}.main-nav a{font-size:12px}.header-cta{padding:11px 15px}.hero-grid{gap:24px}.hero-actions{gap:9px}.hero-actions .button{font-size:12px;padding:15px 15px}.hero-visual{min-height:440px}.about-grid{gap:60px}.enrollment-grid{gap:55px}.contact-grid{gap:55px}}
@media(max-width:900px){.header-inner{height:76px}.header-cta{margin-left:auto}.main-nav{display:none;position:absolute;top:100%;right:18px;left:18px;border:1px solid #e4ebf6;border-radius:17px;box-shadow:0 17px 38px #162c5d23;background:#fff;padding:17px;flex-direction:column;align-items:stretch;gap:0}.main-nav.is-open{display:flex}.main-nav a{padding:12px 10px;font-size:14px}.mobile-toggle{display:flex}.hero{padding:73px 0 103px}.hero-grid{grid-template-columns:1fr 1fr}.hero-visual{min-height:375px}.floating-card-1{left:-14px}.floating-card-2{right:-8px}.floating-card{padding:9px}.floating-icon{width:31px;height:31px}.hero-note{margin-top:25px}.hero-copy>p{font-size:14px}.hero-visual-board{width:98%}h1{font-size:clamp(39px,5.1vw,54px)}.section{padding:84px 0}.about-grid{gap:50px}.about-art-main{height:350px}.about-art{min-height:365px}.reason{padding:23px 19px}.reasons-grid{gap:12px}.level-card{padding:24px 20px}.space-grid{grid-template-columns:repeat(2,1fr)}.space-graphic{height:190px}.enrollment-panel{height:400px}.contact-box{padding:25px}.footer-main{gap:45px}}
@media(max-width:700px){.container{width:calc(100% - 38px)}.announcement{height:39px;font-size:10px;padding:0 10px}.brand img{width:45px;height:45px}.brand-title{font-size:15px}.brand-title strong{font-size:19px}.brand-title small{font-size:9px}.header-cta{display:none}.header-inner{height:73px}.hero-grid,.about-grid,.enrollment-grid,.contact-grid{grid-template-columns:1fr}.hero{padding:59px 0 93px}.hero-grid{gap:15px}.hero-copy{text-align:left}.eyebrow{font-size:9px;letter-spacing:.055em}h1{font-size:clamp(41px,9.3vw,57px);line-height:1.13;margin:21px 0}.hero-copy>p{font-size:15px}.hero-visual{min-height:360px;margin:6px auto 0;width:100%;max-width:470px}.hero-visual-board{width:90%;height:auto;aspect-ratio:1.05}.floating-card-1{top:30px;left:1px}.floating-card-2{right:0;bottom:25px}.hero-note{margin-top:29px}.hero-bottom-arc{height:90px;bottom:-52px}.trust-strip{padding:7px 0 0}.trust-inner{display:grid;grid-template-columns:1fr 1fr;gap:19px}.trust-inner .trust-rule{display:none}.trust-item{gap:8px}.trust-item:last-child{grid-column:1/-1;padding-top:6px}.trust-symbol{width:39px;height:39px;font-size:20px;border-radius:10px}.trust-item strong{font-size:13px}.trust-item div span{font-size:10px}.section{padding:75px 0}.about-grid{gap:44px}.about-art{order:2;min-height:310px}.about-art-main{height:318px;width:95%}.about-art-quote p{font-size:26px}.section-copy{order:1}.section-heading h2,.section-copy h2,.reasons-header h2,.enrollment-copy h2,.contact-info h2{font-size:36px}.section-heading.center{margin-bottom:29px}.section-heading p,.section-copy p{font-size:14px}.level-grid{grid-template-columns:1fr;gap:17px}.level-card{min-height:0;padding:23px 26px}.level-card .level-icon{margin:0 auto 5px;height:145px;width:145px}.level-card p{margin-bottom:19px}.reasons-header{display:block;margin-bottom:30px}.reasons-header p{margin-top:13px;font-size:14px}.reasons-grid{grid-template-columns:1fr 1fr;gap:11px}.reason{padding:19px 15px;min-height:260px}.reason-icon{width:43px;height:43px;font-size:24px;margin-bottom:16px}.reason h3{font-size:16px}.reason p{font-size:12px}.space-grid{gap:12px}.space-graphic{height:140px}.space-card-content{padding:13px}.space-card-content h3{font-size:16px}.space-card-content span{font-size:9px}.story-section{padding:75px 0 80px}.story-inner h2{font-size:31px}.story-inner p{font-size:14px}.enrollment-grid{gap:36px}.enrollment-panel{height:350px;max-width:460px;width:100%;margin:0 auto}.enrollment-panel>strong{font-size:150px}.enrollment-swirl{top:146px}.enrollment-copy p{font-size:14px}.contact-grid{gap:29px}.contact-info>p{font-size:14px;margin-bottom:26px}.contact-box{padding:24px 18px;border-radius:20px}.contact-box-heading h3{font-size:24px}.footer-main{grid-template-columns:1fr 1fr;gap:36px;padding:48px 0}.footer-brand{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:5px}.footer-col h3{margin-bottom:14px}}
@media(max-width:400px){.container{width:calc(100% - 30px)}.hero-actions{flex-direction:column;align-items:stretch}.hero-actions .button{width:100%;justify-content:space-between}.hero-visual{min-height:305px}.floating-card strong{font-size:10px}.floating-card small{font-size:9px}.reason{min-height:282px}.reason h3{font-size:15px}.reason p{font-size:11px}.space-card-content h3{font-size:14px}.enrollment-panel>strong{font-size:132px}}

/* Identidade visual: brasão oficial da Escola Duas Irmãs */
.site-header .brand img{height:61px;width:61px;object-fit:contain;flex-shrink:0}
.site-footer .brand img{height:62px;width:62px;object-fit:contain;flex-shrink:0}
@media(max-width:700px){.site-header .brand img{height:47px;width:47px}.site-footer .brand img{height:58px;width:58px}}


/* Fotografias reais da fachada: visual mais reto e institucional. */
.hero-visual-board{
  aspect-ratio:1.16;
  border-radius:32px;
  background:#dbe9f5;
  box-shadow:0 32px 72px rgba(24,57,111,.18);
  transform:none;
  overflow:hidden;
}
.hero-visual-board::before{
  inset:12px;
  border:2px solid rgba(255,255,255,.68);
  border-radius:24px;
  z-index:2;
}
.hero-facade-photo{
  display:block;
  position:absolute;
  inset:0;
  width:100%;height:100%;
  object-fit:cover;
  object-position:50% 62%;
  transform:none;
  filter:saturate(1.04);
}
.about-facade-frame{display:flex;flex-direction:column;background:#fff;isolation:isolate;border-radius:28px;overflow:hidden;box-shadow:0 24px 50px rgba(24,57,111,.12);border:1px solid #e6edf6;height:auto}
.about-facade-frame::before{display:none}
.about-facade-frame::after{display:none}
.about-facade-photo{width:100%;display:block;height:auto;max-height:520px;object-fit:contain;object-position:center center;background:linear-gradient(180deg,#f8fbff 0%,#eef5fd 100%);padding:10px}
.about-facade-caption{
  position:static;
  padding:22px 24px 24px;
  background:#fff;
  color:#16315f;
}
.about-facade-caption span{display:block;font-size:10px;font-weight:900;letter-spacing:.14em;color:#2d67bc;margin-bottom:7px}
.about-facade-caption strong{display:block;font:900 24px/1.25 Nunito,system-ui,sans-serif;max-width:none}
@media(max-width:900px){
  .hero-visual-board{aspect-ratio:1.08}
  .about-facade-frame{display:flex;flex-direction:column;background:#fff;isolation:isolate;border-radius:28px;overflow:hidden;box-shadow:0 24px 50px rgba(24,57,111,.12);border:1px solid #e6edf6;height:auto}
}
@media(max-width:700px){
  .hero-visual-board{width:95%;aspect-ratio:1.15;border-radius:24px}
  .hero-visual-board::before{border-radius:18px}
  .hero-facade-photo{object-position:54% 64%}
  .about-facade-photo{width:100%;display:block;height:auto;max-height:520px;object-fit:contain;object-position:center center;background:linear-gradient(180deg,#f8fbff 0%,#eef5fd 100%);padding:10px}
  .about-facade-caption{padding:18px 18px 20px}
  .about-facade-caption strong{font-size:21px;max-width:270px}
}


/* Secretaria: fotografias originais enviadas pela escola. Sem retoques nos rostos. */
.reception-showcase{margin-top:75px;padding-top:72px;border-top:1px solid #e7e6e0}
.reception-intro{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-bottom:32px}
.reception-copy{max-width:760px}
.reception-copy h3{font-size:clamp(32px,3.2vw,46px);font-weight:900;line-height:1.2;letter-spacing:-.047em;margin:12px 0 13px}
.reception-copy h3 em{font-style:normal;color:#2e64b9}
.reception-copy p{color:var(--muted);font-size:15px;line-height:1.8;margin:0;max-width:660px}
.reception-highlight{width:129px;height:129px;flex:0 0 129px;background:#fff0c4;border:2px solid #f9d572;border-radius:32px 42px 36px 44px;transform:rotate(7deg);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#16407e}
.reception-highlight span{font-size:24px;color:#dc990d;line-height:1.1}
.reception-highlight strong{font:900 19px/1.2 Nunito,system-ui,sans-serif;margin-top:3px}
.reception-gallery{display:grid;grid-template-columns:1.15fr 1fr;gap:18px;align-items:stretch}
.reception-photo{position:relative;min-width:0;height:382px;overflow:hidden;margin:0;background:#dce7f2;border-radius:26px;box-shadow:0 19px 45px rgba(22,57,113,.12)}
.reception-photo-main{border-radius:26px 62px 26px 26px}
.reception-photo-side{border-radius:62px 26px 26px 26px}
.reception-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:50% 56%}
.reception-photo-main img{object-position:50% 55%}
.reception-photo-side img{object-position:50% 52%}
.reception-photo::after{content:"";position:absolute;inset:auto 0 0;height:100px;background:linear-gradient(0deg,rgba(6,30,70,.8),transparent);pointer-events:none}
.reception-photo figcaption{position:absolute;z-index:1;bottom:18px;left:25px;right:20px;font-weight:800;color:#fff;font-size:14px;letter-spacing:.005em}
@media(max-width:900px){.reception-showcase{margin-top:56px;padding-top:57px}.reception-photo{height:305px}.reception-highlight{width:108px;height:108px;flex-basis:108px}.reception-highlight strong{font-size:16px}}
@media(max-width:700px){.reception-showcase{margin-top:51px;padding-top:51px}.reception-intro{margin-bottom:24px;align-items:flex-start;gap:12px}.reception-copy h3{font-size:34px}.reception-copy p{font-size:14px}.reception-highlight{display:none}.reception-gallery{grid-template-columns:1fr;gap:15px}.reception-photo{height:auto;aspect-ratio:1.45;border-radius:22px 44px 22px 22px}.reception-photo-side{border-radius:44px 22px 22px 22px}.reception-photo figcaption{font-size:12px;left:18px;bottom:15px}}
@media(max-width:400px){.reception-photo{aspect-ratio:1.3}.reception-copy h3{font-size:31px}}


/* EDUCAÇÃO INFANTIL: fotos integrais, sem zoom ou corte forçado. */
.early-section{background:linear-gradient(180deg,#f0f7ff 0%,#f7faff 77%,#fff 100%);padding-top:94px;padding-bottom:99px}
.early-heading{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:34px}
.early-heading-copy{max-width:815px}
.early-heading h2{font-family:Nunito,system-ui,sans-serif;font-size:clamp(34px,4.1vw,53px);font-weight:900;letter-spacing:-.045em;line-height:1.15;margin:12px 0 17px;color:#17335e}
.early-heading h2 em{font-style:normal;color:#2d68bb}
.early-heading p{font-size:15px;color:#64728a;line-height:1.8;max-width:670px;margin:0}
.early-heading-symbol{height:98px;width:98px;flex:none;display:grid;place-items:center;background:#ffe7a9;color:#e5a11d;font-size:64px;border-radius:28px;transform:rotate(9deg)}
.early-gallery{display:grid;grid-template-columns:1fr 1fr;gap:22px;align-items:start}
.early-card{min-width:0;margin:0;background:#fff;border:1px solid #e5edf8;border-radius:25px;overflow:hidden;box-shadow:0 19px 45px rgba(22,57,113,.10)}
.early-image{width:100%;line-height:0;background:#e8f0fa}
.early-image img{display:block;width:100%;height:auto;aspect-ratio:4 / 3;object-fit:contain;object-position:center;transform:none;filter:none}
.early-card figcaption{padding:25px 28px 29px}
.early-card-label{display:block;font-size:10px;letter-spacing:.14em;color:#3870bc;font-weight:900;margin-bottom:7px}
.early-card strong{display:block;font:900 25px/1.25 Nunito,system-ui,sans-serif;letter-spacing:-.028em;color:#17335e}
.early-card figcaption p{font-size:13px;line-height:1.8;color:#687994;max-width:520px;margin:9px 0 0}
.early-link{display:flex;align-items:center;justify-content:space-between;gap:8px;text-decoration:none}
.early-link:hover{text-decoration:underline;text-underline-offset:4px}
.early-footer{display:flex;align-items:center;gap:14px;margin-top:30px;padding:25px 3px 0;border-top:1px solid #d9e6f6}
.early-star{display:grid;place-items:center;flex:none;width:36px;height:36px;border-radius:11px;background:#fff1d4;color:#e0a222;font-size:20px}
.early-footer p{margin:0;flex:1;font-size:13px;line-height:1.55;color:#5f7088}
.early-footer .text-link{white-space:nowrap;font-size:13px}
@media(max-width:900px){.early-section{padding-top:77px;padding-bottom:79px}.early-heading h2{font-size:clamp(31px,4.5vw,43px)}.early-heading-symbol{width:77px;height:77px;font-size:47px}.early-gallery{gap:16px}.early-card figcaption{padding:20px 21px 23px}.early-card strong{font-size:21px}}
@media(max-width:700px){.early-section{padding-top:67px;padding-bottom:68px}.early-heading{margin-bottom:25px}.early-heading-symbol{display:none}.early-heading h2{font-size:35px}.early-heading p{font-size:14px}.early-gallery{grid-template-columns:1fr;gap:19px}.early-card{border-radius:20px}.early-card figcaption{padding:19px 20px 23px}.early-card strong{font-size:23px}.early-footer{flex-wrap:wrap;gap:10px 12px}.early-footer .text-link{margin-left:48px}}


/* Seção Nossa História: fotografia e legenda sem selo sobreposto. */
.about-art {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: stretch;
  gap: 14px;
  min-height: 0;
}
.about-art-main {
  width: 100%;
  flex-shrink: 0;
}



@media (max-width:700px) {
  .about-art { gap: 11px; }
  .about-art-main { width: 100%; }
  
}


/* Fotografia real da quadra e piscina: sem zoom nem cortes */
.facilities-showcase{margin-top:72px;padding-top:67px;border-top:1px solid #e7e6e0}
.facilities-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:27px}
.facilities-heading>div{max-width:640px}
.facilities-heading h3{font-family:Nunito,system-ui,sans-serif;font-size:clamp(29px,3.2vw,43px);font-weight:900;line-height:1.18;letter-spacing:-.045em;margin:13px 0 0;color:var(--deep)}
.facilities-heading h3 em{font-style:normal;color:#3169b9}
.facilities-heading>p{width:300px;max-width:35%;font-size:14px;line-height:1.8;color:var(--muted);margin:0 0 4px}
.facilities-gallery{display:grid;grid-template-columns:minmax(0,.86fr) minmax(0,1.14fr);align-items:start;gap:22px}
.facility-photo-card{min-width:0;margin:0;overflow:hidden;background:#fff;border:1px solid #e4eaf4;border-radius:26px;box-shadow:0 17px 38px rgba(28,62,113,.085)}
.facility-photo-card img{width:100%;height:auto;display:block;object-fit:contain;object-position:center;transform:none;filter:none;background:#e8f1fb}
.facility-photo-card figcaption{padding:19px 23px 25px}
.facility-photo-card figcaption span{display:block;font-size:10px;letter-spacing:.12em;font-weight:900;color:#3670bc;margin-bottom:6px}
.facility-photo-card figcaption strong{display:block;color:var(--deep);font:900 24px/1.23 Nunito,system-ui,sans-serif}
.facility-photo-card figcaption p{font-size:13px;color:var(--muted);line-height:1.6;margin:9px 0 0}
.facility-pool-photo{margin-top:36px}
/* A equipe deve aparecer completa, inclusive quem está nas laterais. */
.team-section{background:#edf5ff;padding-top:94px;padding-bottom:105px}
.team-inner{max-width:1090px}
.team-heading{text-align:center;max-width:795px;margin:0 auto 35px}
.team-heading h2{font-size:clamp(33px,4.2vw,50px);font-weight:900;line-height:1.15;letter-spacing:-.048em;margin:15px 0 16px}
.team-heading h2 em{font-style:normal;color:#3672bd}
.team-heading p{font-size:15px;line-height:1.85;color:var(--muted);max-width:720px;margin:0 auto}
.team-photo{margin:0 auto;background:white;padding:10px 10px 0;max-width:1050px;overflow:hidden;border:1px solid #dbe6f4;border-radius:25px;box-shadow:0 20px 48px rgba(35,68,118,.12)}
.team-photo img{display:block;width:100%;height:auto;object-fit:contain;object-position:center;filter:none;transform:none;border-radius:16px 16px 0 0}
.team-photo figcaption{text-align:center;padding:16px 12px 18px;color:#23467f;font:800 14px/1.35 Nunito,system-ui,sans-serif}
.team-photo figcaption span{color:#e3a321;font-size:17px;margin-right:8px}
@media(max-width:900px){
 .facilities-heading{align-items:start;gap:25px}
 .facilities-heading>p{max-width:40%}
 .facilities-gallery{gap:15px}
 .facility-pool-photo{margin-top:20px}
 .team-section{padding-top:73px;padding-bottom:80px}
}
@media(max-width:700px){
 .facilities-showcase{margin-top:53px;padding-top:52px}
 .facilities-heading{display:block;margin-bottom:25px}
 .facilities-heading h3{font-size:35px}
 .facilities-heading>p{max-width:none;width:auto;margin:15px 0 0}
 .facilities-gallery{grid-template-columns:1fr;gap:19px}
 .facility-pool-photo{margin-top:0}
 .facility-photo-card{border-radius:20px}
 .facility-photo-card figcaption{padding:17px 20px 23px}
 .facility-photo-card figcaption strong{font-size:23px}
 .team-section{padding-top:65px;padding-bottom:71px}
 .team-heading{margin-bottom:24px}
 .team-heading h2{font-size:35px}
 .team-heading p{font-size:14px}
 .team-photo{border-radius:17px;padding:6px 6px 0}
 .team-photo img{border-radius:12px 12px 0 0}
 .team-photo figcaption{font-size:12px;padding:12px 8px 14px}
}


/* Canal oficial da secretaria: botão discreto, acessível e responsivo */
.whatsapp-float{position:fixed;right:23px;bottom:24px;z-index:75;display:flex;align-items:center;gap:10px;padding:13px 17px;background:#168a51;border:2px solid #fff;box-shadow:0 12px 32px rgba(10,70,49,.25);color:#fff;border-radius:999px;font:800 13px/1.1 Nunito,system-ui,sans-serif;transition:transform .15s ease,background .15s ease;white-space:nowrap}
.whatsapp-float:hover{background:#0b7240;transform:translateY(-2px)}
.whatsapp-float svg{flex-shrink:0}
.form-result-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px;align-items:center}
.form-result-actions .button{max-width:100%}
@media(max-width:700px){.whatsapp-float{right:15px;bottom:16px;padding:12px;gap:0}.whatsapp-float span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.whatsapp-float svg{width:29px;height:29px}}
@media(prefers-reduced-motion:reduce){.whatsapp-float{transition:none}}


/* Formulário de interesse em matrículas: visual acolhedor e fácil de usar. */
#interesse{scroll-margin-top:120px}
.interest-box{border:1px solid #dce8f7;box-shadow:0 28px 75px rgba(24,57,111,.13)}
.interest-box .contact-box-heading h3{font-size:29px;letter-spacing:-.043em;line-height:1.18;margin-top:12px}
.interest-box .contact-box-heading p{font-size:14px;line-height:1.75;max-width:510px;margin-bottom:26px}
.interest-box .form-step{background:#eef5ff;border-radius:999px;display:inline-flex;align-items:center;padding:7px 13px;letter-spacing:.1em}
.interest-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:13px;row-gap:4px}
.interest-fields .field{display:flex;flex-direction:column;min-width:0}
.interest-fields .field.full{grid-column:1/-1}
.interest-fields .field label{font-size:12px;line-height:1.5;margin-bottom:7px}
.interest-fields .field label b{font-size:13px;color:#2b67b9}
.interest-fields .field :is(input,select,textarea){min-width:0;font-size:14px;height:47px;padding:11px 14px;margin-bottom:14px;border-radius:12px}
.interest-fields .field textarea{height:auto;min-height:82px;resize:vertical;margin-bottom:10px}
.interest-fields .field select:disabled{background-color:#f0f3f7;color:#8794a7;cursor:not-allowed}
.interest-fields .field select{padding-right:34px;text-overflow:ellipsis}
.availability-note{display:flex;align-items:flex-start;gap:8px;color:#68768a;font-size:11px;line-height:1.65;margin:6px 0 16px;background:#f5f9ff;border-left:3px solid #82abe6;padding:11px 12px;border-radius:0 8px 8px 0}
.interest-box .button-submit{font-size:14px;white-space:normal;min-height:52px}
.interest-box .form-note{font-size:11px;line-height:1.65;max-width:450px;margin:14px auto 0}
.interest-box .contact-result{background:#f6faff;border:1px solid #d8e8fb;border-radius:17px;margin-top:26px;padding:21px}
.interest-box .contact-result strong{display:block;font:900 19px/1.35 Nunito,system-ui,sans-serif;color:#153e81;margin:8px 0}
.interest-box .contact-result p{line-height:1.7}
.interest-box .contact-result textarea{font-size:13px;color:#2e4569;background:#fff;resize:vertical;margin-bottom:5px}
.message-ready-icon{display:grid;place-items:center;background:#e1f4e8;color:#177448;border-radius:100%;width:33px;height:33px;font-size:19px;font-weight:800}
.interest-box .form-result-actions{gap:9px}
.interest-box .form-result-actions .button{flex:1;white-space:normal;padding:11px 12px;font-size:12px}
@media(max-width:900px){.interest-box .contact-box-heading h3{font-size:26px}}
@media(max-width:700px){.interest-box{padding:27px 20px;border-radius:24px}.interest-box .contact-box-heading h3{font-size:27px}.interest-fields{grid-template-columns:minmax(0,1fr) minmax(0,1fr);column-gap:11px}.interest-fields .field select{font-size:13px}}
@media(max-width:420px){.interest-fields{grid-template-columns:1fr}.interest-fields .field{grid-column:1/-1}.interest-box .form-result-actions{flex-direction:column}.interest-box .form-result-actions .button{width:100%}}
@media(max-width:360px){.reasons-grid{grid-template-columns:1fr}.reason{min-height:0}}
.whatsapp-float.is-paused{opacity:0;pointer-events:none;transform:translateY(12px)}


/* Agendamento de visita presencial — seção independente do interesse em matrícula. */
.visit-secondary-link{display:flex;align-items:center;gap:8px;width:fit-content;margin-top:19px;color:#21509b;font-size:13px;font-weight:800;text-decoration:underline;text-underline-offset:4px}
.visit-secondary-link:hover{color:#0a347e}
@media(min-width:901px) and (max-width:1280px){.main-nav{gap:15px}.main-nav a{font-size:12px}}
.visit-section{position:relative;overflow:hidden;background:linear-gradient(125deg,#fffaf1 0%,#fffdf8 48%,#f3f8ff 100%);padding-top:108px;padding-bottom:108px}
.visit-section::before{content:"";position:absolute;pointer-events:none;left:-170px;bottom:-270px;width:450px;height:450px;border-radius:50%;border:64px solid rgba(245,187,56,.095)}
.visit-grid{position:relative;display:grid;grid-template-columns:minmax(0,.94fr) minmax(0,1fr);gap:85px;align-items:center}
.visit-intro{max-width:565px}
.visit-intro h2{font-size:clamp(38px,3.65vw,51px);line-height:1.14;letter-spacing:-.053em;margin:17px 0 20px;font-weight:900}
.visit-intro>p{font-size:15px;color:#5d6f88;line-height:1.85;max-width:510px;margin-bottom:28px}
.visit-steps{display:flex;flex-direction:column;gap:0;margin:26px 0 23px}
.visit-step{display:flex;align-items:flex-start;gap:15px;padding:17px 0;border-top:1px solid #e8e5dc}
.visit-step>span{flex:none;width:42px;height:42px;display:grid;place-items:center;background:#fdf0c5;color:#a16c0d;border:1px solid #f4da93;border-radius:13px;font:900 14px/1 Nunito,sans-serif}
.visit-step strong{display:block;color:#163463;font-size:15px;font-weight:800;margin:1px 0 4px}
.visit-step p{font-size:13px;line-height:1.55;color:#758198;margin:0}
.visit-promise{display:flex;align-items:flex-start;gap:12px;background:#edf5ff;border:1px solid #d8e7f8;border-radius:17px;padding:17px 19px;margin-top:13px;max-width:510px}
.visit-promise>span{color:#e4ad31;font-size:22px;line-height:1}
.visit-promise p{font-size:12px;line-height:1.65;color:#5b7090;margin:0}
.visit-promise strong{font-size:13px;color:#214578}
.visit-form-card{position:relative;z-index:1;padding:34px 37px;background:#fff;border-radius:27px;border:1px solid #e5ecf5;box-shadow:0 22px 58px rgba(29,63,117,.12)}
.visit-form-card .contact-box-heading h3{font-size:30px;margin:10px 0 6px}
.visit-form-card .contact-box-heading p{font-size:14px;line-height:1.65;margin-bottom:23px}
.visit-form-card .interest-fields .field :is(input,select,textarea){margin-bottom:13px}
.visit-form-card .interest-fields input[type=date],.visit-form-card .interest-fields input[type=time]{background:#fbfcff;appearance:auto;color:#334966}
.visit-form-card .interest-fields input[type=date]::-webkit-calendar-picker-indicator,.visit-form-card .interest-fields input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:.73}
.visit-availability{font-size:11px;line-height:1.62;color:#5d6e87;background:#fff8e9;border:1px solid #f4e6be;border-radius:12px;padding:13px 14px;margin:7px 0 17px}
.visit-availability strong{color:#79591b}
.visit-form-card .contact-result{background:#f5f9ff;border:1px solid #d8e8fb;border-radius:17px;padding:20px;margin-top:24px}
.visit-form-card .contact-result textarea{background:#fff;font-size:13px;margin:10px 0 13px}
.visit-form-card .contact-result .form-result-actions{display:flex;gap:9px;flex-wrap:wrap}
.visit-form-card .contact-result .button{white-space:normal}
.visit-form-card #visit-copy-status{font-size:12px;color:#397b53;font-weight:700;display:block;margin-top:8px}
@media(max-width:1100px){.visit-grid{gap:34px}.visit-form-card{padding:29px}}
@media(max-width:900px){.visit-section{padding-top:82px;padding-bottom:88px}.visit-grid{grid-template-columns:1fr;gap:34px;max-width:700px}.visit-intro{max-width:none}.visit-steps{margin:21px 0}.visit-step{padding:12px 0}.visit-promise{max-width:none}}
@media(max-width:700px){.visit-section{padding-top:70px;padding-bottom:72px}.visit-grid{gap:26px}.visit-intro h2{font-size:36px}.visit-intro>p{font-size:14px;margin-bottom:19px}.visit-form-card{padding:25px 20px;border-radius:22px}.visit-form-card .contact-box-heading h3{font-size:26px}.visit-form-card .contact-result .form-result-actions{flex-direction:column}.visit-form-card .contact-result .button{width:100%}.visit-secondary-link{font-size:12px;line-height:1.5}}
@media(max-width:420px){.visit-form-card .interest-fields{grid-template-columns:1fr}.visit-form-card .interest-fields .field{grid-column:1/-1}.visit-intro h2{font-size:32px}}

/* Homenagem aos medalhistas – OBGP 2026.2 */
.honor-section{background:linear-gradient(180deg,#f8fbff 0%,#eff5ff 54%,#f7faff 100%);position:relative;overflow:hidden}
.honor-section::before{content:"";position:absolute;top:-160px;right:-125px;width:460px;height:460px;border:1px solid #dce9fc;border-radius:50%;box-shadow:0 0 0 63px #eaf3ff44,0 0 0 126px #edf5ff33;pointer-events:none}
.honor-wrap{position:relative;z-index:1}
.honor-heading{display:grid;grid-template-columns:minmax(0,1fr) 190px;align-items:center;gap:40px;margin-bottom:31px}
.honor-heading h2{font:900 clamp(37px,4.5vw,60px)/1.09 Nunito,system-ui,sans-serif;letter-spacing:-.05em;margin:13px 0 18px;color:#12356f}
.honor-heading h2 em{font-style:normal;color:#2c65b5}
.honor-heading-copy>p{max-width:750px;color:#556a85;font-size:15px;line-height:1.85;margin:0}
.honor-heading-copy>p strong{color:#1b4689}
.honor-seal{width:182px;height:182px;border-radius:50%;justify-self:end;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;text-align:center;background:radial-gradient(circle at 35% 28%,#fff7d1 0%,#ffeaaa 45%,#f0c85f 100%);border:7px solid #fff;outline:1px solid #f4d57e;box-shadow:0 20px 37px #2d4e8530;color:#163c7b;transform:rotate(5deg)}
.honor-seal::after{content:"";position:absolute;inset:9px;border:1px dashed #d8ac38;border-radius:50%}
.honor-seal-star{color:#cf9420;font-size:24px;line-height:1}
.honor-seal strong{font:900 35px/.95 Nunito,system-ui,sans-serif;letter-spacing:-.07em;position:relative;z-index:1}
.honor-seal>span:not(.honor-seal-star){font-size:12px;font-weight:900;letter-spacing:.12em;position:relative;z-index:1}
.honor-seal small{font-size:9px;line-height:1.2;letter-spacing:.08em;margin-top:9px;font-weight:800;position:relative;z-index:1}
.honor-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:15px;margin:31px 0 20px}
.honor-stat{background:#fff;border:1px solid #e4ebf5;border-radius:22px;padding:20px 16px 19px;box-shadow:0 16px 30px #1c457012;display:flex;align-items:center;flex-direction:column;gap:3px;text-align:center;min-width:0}
.honor-stat-icon{font-size:37px;line-height:1.3;filter:drop-shadow(0 5px 5px #284a6122)}
.honor-stat strong{font:900 37px/1.2 Nunito,system-ui,sans-serif;letter-spacing:-.04em;color:#153b7c}
.honor-stat small{font-size:11px;line-height:1.4;font-weight:800;color:#667996}
.honor-stat-gold{border-top:4px solid #ecbd43}.honor-stat-silver{border-top:4px solid #acbacc}.honor-stat-bronze{border-top:4px solid #d6a075}.honor-stat-certificate{border-top:4px solid #6aa4d6}
.honor-stat-certificate .honor-stat-icon{color:#3572bc;background:#e8f1ff;border-radius:50%;height:47px;width:47px;display:flex;justify-content:center;align-items:center;font-size:28px}
.honor-quote{display:flex;align-items:center;justify-content:center;gap:13px;background:#153b7e;color:#fff;padding:18px 25px;border-radius:18px;margin:20px 0 54px;box-shadow:0 19px 30px #133c7f16}
.honor-quote>span{color:#f8c74f;font-size:23px}
.honor-quote p{margin:0;font:800 clamp(14px,1.9vw,21px)/1.3 Nunito,system-ui,sans-serif;letter-spacing:-.015em;text-align:center}
.honor-list-heading h3{font:900 clamp(24px,3vw,35px)/1.2 Nunito,system-ui,sans-serif;letter-spacing:-.04em;color:#153a77;margin:10px 0 5px}
.honor-list-heading p{margin:0;color:#637a98;font-size:14px}
.honor-filters{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0 11px}
.honor-filter{border:1px solid #d9e4f4;background:#fff;color:#25477a;border-radius:999px;font-size:12px;font-weight:800;padding:11px 17px;line-height:1.15;transition:background .2s,color .2s,transform .2s;cursor:pointer}
.honor-filter:hover{transform:translateY(-1px);border-color:#5d8acb}
.honor-filter.is-selected{background:#17468d;border-color:#17468d;color:#fff;box-shadow:0 10px 20px #1f4c9230}
.honor-filter:focus-visible{outline:3px solid #edbc37;outline-offset:3px}
.honor-filter-status{font-size:11px;color:#6a7e9a;margin:0 0 18px;min-height:15px}
.honor-classes{display:grid;gap:14px}
.honor-class{background:#fff;border:1px solid #dfe8f6;border-radius:19px;box-shadow:0 10px 29px #1d43780d;overflow:hidden}
.honor-class[hidden]{display:none}
.honor-class-head{padding:21px 24px;display:flex;align-items:center;gap:22px;cursor:pointer;list-style:none}
.honor-class-head::-webkit-details-marker{display:none}
.honor-class-head:focus-visible{outline-offset:-4px}
.honor-class-year{color:#194985;font:900 23px/1.2 Nunito,system-ui,sans-serif;white-space:nowrap}
.honor-class-year small{font-size:14px}
.honor-class-detail{font-size:12px;color:#647895;line-height:1.5;flex:1}
.honor-class-toggle{font-size:26px;color:#2c62a2;line-height:1;transition:transform .2s}
.honor-class[open] .honor-class-toggle{transform:rotate(180deg)}
.honor-pupils{border-top:1px solid #edf1f7;padding:17px;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.honor-pupil{display:flex;align-items:center;gap:13px;background:#fbfcff;border:1px solid #edf0f6;border-radius:12px;padding:13px 14px;min-width:0}
.honor-pupil-symbol{width:44px;height:44px;flex:0 0 44px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#fff3ce;font-size:25px;line-height:1}
.honor-pupil-prata .honor-pupil-symbol{background:#f0f3f9}.honor-pupil-bronze .honor-pupil-symbol{background:#ffefe2}.honor-pupil-participacao .honor-pupil-symbol{background:#e8f2ff;color:#3779c5;font-size:22px}
.honor-pupil div{min-width:0;display:flex;flex-direction:column;gap:3px}
.honor-pupil strong{font:800 14px/1.22 Nunito,system-ui,sans-serif;color:#183b77;overflow-wrap:anywhere}
.honor-pupil div span{color:#647992;font-size:11px;line-height:1.25}
.honor-pupil-participacao{background:#f4f8ff;border-color:#dceafa}
.honor-footer{margin-top:25px;border:1px solid #dfebf7;background:#fff;border-radius:18px;padding:21px 25px;display:flex;gap:15px;align-items:flex-start}
.honor-footer-icon{display:grid;place-items:center;color:#fff;background:#2462ae;border-radius:12px;width:40px;height:40px;flex-shrink:0;font-size:20px}
.honor-footer p{margin:0;color:#5b7191;font-size:13px;line-height:1.7}
.honor-footer strong{color:#173b78}
@media(max-width:900px){.honor-heading{grid-template-columns:minmax(0,1fr) 142px;gap:17px}.honor-seal{width:140px;height:140px}.honor-seal strong{font-size:27px}.honor-seal small{font-size:8px}.honor-stat strong{font-size:32px}.honor-stat-icon{font-size:30px}}
@media(max-width:700px){.honor-section{padding:70px 0}.honor-heading{grid-template-columns:1fr;gap:17px}.honor-heading h2{font-size:43px}.honor-heading-copy>p{font-size:14px}.honor-seal{display:none}.honor-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:23px}.honor-stat{padding:15px 8px}.honor-stat strong{font-size:31px}.honor-stat small{font-size:10px}.honor-quote{margin-bottom:43px;padding:17px 12px}.honor-list-heading h3{font-size:27px}.honor-filter{padding:10px 13px;font-size:11px}.honor-class-head{padding:18px 14px;gap:9px;flex-wrap:wrap}.honor-class-year{font-size:21px}.honor-class-detail{font-size:11px;flex:1 1 170px}.honor-class-toggle{font-size:23px}.honor-pupils{grid-template-columns:1fr;padding:11px}.honor-pupil{padding:11px 12px}.honor-footer{padding:17px 16px}.honor-footer p{font-size:12px}}
@media(max-width:365px){.honor-class-detail{flex-basis:100%;order:3}.honor-class-toggle{margin-left:auto}}


/* Nossa Voz — mural participativo com publicações supervisionadas */
.voice-section{background:#fffdf8;position:relative;overflow:hidden}
.voice-section::before{content:"";position:absolute;right:-220px;top:-140px;width:620px;height:620px;border-radius:50%;background:radial-gradient(circle,#ffefd167,transparent 69%);pointer-events:none}
.voice-section .container{position:relative;z-index:1}
.voice-intro{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:57px}
.voice-intro-copy{max-width:780px}
.voice-intro h2{font-size:clamp(60px,6.4vw,96px);line-height:1.03;letter-spacing:-.068em;font-weight:900;margin:13px 0 17px}
.voice-intro h2 em{color:#285cb0}
.voice-title-star{display:inline-block;color:#f2b83b;font-size:.34em;margin-left:17px;vertical-align:top;transform:rotate(14deg)}
.voice-intro p{font-size:17px;max-width:690px;color:#65738a;line-height:1.78;margin:0}
.voice-intro-stamp{flex:0 0 170px;height:170px;display:flex;flex-direction:column;align-items:center;justify-content:center;border:2px dashed #e4b441;background:#fff4d5;border-radius:38px 45px 34px 46px;text-align:center;transform:rotate(8deg);box-shadow:0 15px 35px #b790391e;color:#1b417c}
.voice-intro-stamp span{font-size:20px;color:#d39b28;line-height:1.2}.voice-intro-stamp strong{font:900 19px/1.3 Nunito,system-ui,sans-serif;letter-spacing:.02em;padding:6px 0}
.voice-topic-heading{display:flex;gap:36px;align-items:end;justify-content:space-between;margin-bottom:24px}
.voice-topic-heading h3{font-size:clamp(24px,3vw,38px);line-height:1.2;letter-spacing:-.035em;margin:9px 0 0}
.voice-topic-heading p{color:#718098;max-width:370px;font-size:14px;margin:0 0 3px}
.voice-topic-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.voice-topic{appearance:none;cursor:pointer;display:flex;flex-direction:column;text-align:left;align-items:stretch;position:relative;min-width:0;padding:24px 24px 21px;background:#fff;border:2px solid #e2eaf5;border-radius:25px;box-shadow:0 12px 37px #153d8410;transition:border-color .22s,box-shadow .22s,transform .22s;font-family:inherit;color:inherit}
.voice-topic:hover{transform:translateY(-4px);box-shadow:0 18px 43px #153d8419}
.voice-topic.is-active{border-color:#2c5fb5;box-shadow:0 16px 43px #2454a32b}
.voice-topic:focus-visible{outline:3px solid #eeae21;outline-offset:4px}
.voice-topic-top{display:flex;justify-content:space-between;align-items:center;gap:10px}
.voice-topic-number{font-size:10px;letter-spacing:.095em;font-weight:900;color:#3769b7}
.voice-topic-arrow{width:31px;height:31px;display:grid;place-items:center;border-radius:10px;background:#eaf2ff;color:#2254a4;font-weight:800}
.voice-topic-graphic{display:flex;align-items:center;justify-content:center;height:132px;overflow:hidden;border-radius:17px;background:#e8f2ff;margin:14px 0 19px}
.voice-topic-graphic svg{height:115px;width:200px}
.voice-topic-authors .voice-topic-graphic{background:#f0eafd}
.voice-topic-curiosity .voice-topic-graphic{background:#fff2d8}
.voice-topic-title{font-family:Nunito,system-ui,sans-serif;font-size:23px;font-weight:900;letter-spacing:-.038em;color:#183b78;line-height:1.15}
.voice-topic-text{font-size:13px;line-height:1.65;color:#687891;margin:12px 0 20px;flex:1}
.voice-topic-bottom{font-size:12px;font-weight:900;color:#2a5eaf;display:flex;justify-content:space-between;align-items:center;gap:8px;border-top:1px solid #e9eef7;padding-top:15px}
.voice-content{margin:26px 0 72px;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,1fr);gap:16px;align-items:stretch}
.voice-content-main{padding:35px 39px 36px;border-radius:25px;background:#eaf2ff;min-width:0}
.voice-content-eyebrow{color:#275bad;font-size:11px;font-weight:900;letter-spacing:.11em}
.voice-content-main h3{font-size:clamp(28px,3vw,37px);line-height:1.18;letter-spacing:-.035em;margin:14px 0 10px}
.voice-content-main>p{font-size:14px;line-height:1.72;color:#586a84;max-width:600px;margin-bottom:20px}
.voice-pending{display:flex;align-items:center;gap:8px;color:#44649a;font-size:12px;font-weight:800;margin-bottom:21px}
.voice-pending-dot{background:#f2b944;width:8px;height:8px;border-radius:50%}
.voice-submit-link{white-space:normal}
.voice-content-side{padding:32px;border:1px solid #e4eaf4;background:#fff;border-radius:25px}
.voice-side-icon{height:53px;width:53px;background:#fff2d7;color:#d29a22;border-radius:15px;display:grid;place-items:center;font-size:31px;margin-bottom:18px}
.voice-content-side>strong{display:block;font:900 25px/1.24 Nunito,system-ui,sans-serif;color:#1b3a76}
.voice-content-side p{color:#68778e;font-size:13px;line-height:1.72;margin:10px 0 18px}
.voice-send-wrap{scroll-margin-top:110px;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:64px;align-items:start;padding:52px 0 0;border-top:1px solid #e7e9ef}
.voice-send-copy{padding:13px 0 0}
.voice-send-copy h3{font-size:clamp(35px,3.4vw,50px);line-height:1.15;letter-spacing:-.048em;margin:14px 0 17px}
.voice-send-copy h3 em{font-style:normal;color:#2e64b9}
.voice-send-copy>p:not(.voice-care){font-size:15px;line-height:1.75;color:#67778f;margin:0 0 26px}
.voice-steps{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:24px}
.voice-steps li{display:flex;align-items:start;gap:16px}
.voice-steps li>span{width:38px;height:38px;display:grid;place-items:center;flex:none;background:#eaf1ff;color:#2c5ead;font-weight:900;border-radius:12px}
.voice-steps li strong{display:block;color:#143873;font-size:14px;font-weight:900;margin:0 0 5px}
.voice-steps li p{font-size:12px;color:#718098;line-height:1.65;margin:0}
.voice-care{margin-top:28px;padding:16px 18px;border-left:3px solid #f0b53a;background:#fff6e4;font-size:12px;line-height:1.7;color:#735e32;border-radius:0 12px 12px 0}
.voice-form-card{padding:32px;background:#fff;border:1px solid #e2e9f3;border-radius:26px;box-shadow:0 25px 60px #1b4a8b16}
.voice-form-top h4{font:900 31px/1.2 Nunito,system-ui,sans-serif;color:#17396e;letter-spacing:-.04em;margin:10px 0}
.voice-form-top p{font-size:13px;color:#6a7891;line-height:1.6;margin:0 0 22px}
.voice-form-card .field label{font-size:12px}
.voice-form-card .field input,.voice-form-card .field select,.voice-form-card .field textarea{font-size:13px}
.voice-consent{display:flex;align-items:start;gap:10px;font-size:12px;line-height:1.6;font-weight:700;color:#4e6486;margin:19px 0 16px;cursor:pointer}
.voice-consent input{width:18px;height:18px;flex:0 0 18px;accent-color:#2856ac;margin:1px 0 0}
.voice-result{padding-top:22px;margin-top:22px;border-top:1px solid #e0e9f5}
.voice-result[hidden]{display:none}
.voice-result>strong{display:block;color:#17498e;margin:10px 0;font-size:16px}
.voice-result>p{font-size:12px;line-height:1.7;color:#64768f}
.voice-result textarea{width:100%;resize:vertical;min-height:210px;background:#f6f9ff;border:1px solid #d8e3f3;border-radius:12px;padding:13px;font-family:inherit;font-size:12px;color:#294569}
.voice-result .form-result-actions{margin-top:13px}
.voice-result #voice-copy-status{font-weight:800;color:#35754f;font-size:12px;margin-top:11px}
@media(min-width:901px) and (max-width:1280px){.main-nav{gap:12px}.main-nav a{font-size:11.6px}.header-inner{gap:13px}.header-cta{padding:12px 13px;font-size:12px}}
@media(max-width:900px){.voice-intro-stamp{flex-basis:130px;height:130px}.voice-intro-stamp strong{font-size:15px}.voice-send-wrap{gap:25px}.voice-topic-grid{gap:12px}.voice-topic{padding:17px}.voice-topic-title{font-size:20px}.voice-content{grid-template-columns:1.2fr 1fr}.voice-content-main{padding:28px}.voice-content-side{padding:27px}}
@media(max-width:700px){.voice-section{padding:78px 0}.voice-intro{margin-bottom:36px}.voice-intro h2{font-size:59px}.voice-intro p{font-size:14px}.voice-intro-stamp{display:none}.voice-topic-heading{display:block}.voice-topic-heading h3{font-size:28px}.voice-topic-heading p{margin-top:10px}.voice-topic-grid{grid-template-columns:1fr;gap:13px}.voice-topic{padding:17px 19px;display:grid;grid-template-columns:103px minmax(0,1fr);gap:0 15px}.voice-topic-top{grid-column:1/-1}.voice-topic-graphic{grid-column:1;grid-row:2/5;height:98px;width:103px;margin:12px 0 7px;border-radius:14px}.voice-topic-graphic svg{width:132px;height:89px}.voice-topic-title{grid-column:2;grid-row:2;align-self:end;font-size:20px;padding-top:13px}.voice-topic-text{grid-column:2;grid-row:3;margin:7px 0;font-size:12px;line-height:1.45}.voice-topic-bottom{grid-column:1/-1;font-size:11px;margin-top:5px;padding-top:12px}.voice-content{grid-template-columns:1fr;margin:19px 0 51px;gap:12px}.voice-content-main{padding:26px 22px}.voice-content-main h3{font-size:30px}.voice-content-side{padding:23px}.voice-send-wrap{grid-template-columns:1fr;gap:25px;padding-top:46px}.voice-send-copy{padding:0}.voice-send-copy h3{font-size:35px}.voice-steps{gap:17px}.voice-form-card{padding:23px 17px}.voice-form-top h4{font-size:27px}.voice-form-card .interest-fields{grid-template-columns:1fr}.voice-form-card .field{grid-column:1/-1}}
@media(max-width:400px){.voice-topic{grid-template-columns:88px minmax(0,1fr);gap:0 10px;padding:14px}.voice-topic-graphic{width:88px}.voice-topic-title{font-size:18px}.voice-topic-text{font-size:11px}.voice-intro h2{font-size:52px}.voice-content-main{padding:23px 18px}}


/* Nossa Voz – cadastro de alunos e painel de aprovação */
.portal{margin-top:38px;scroll-margin-top:110px;border-top:1px solid #e4e9f2;padding-top:65px}
.portal-titleline{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:33px}
.portal-titleline h3{font-size:clamp(34px,4vw,52px);line-height:1.12;letter-spacing:-.045em;margin:12px 0;color:#173b78;font-weight:900}
.portal-titleline h3 em{font-style:normal;color:#306ac0}
.portal-titleline p{max-width:680px;color:#61718b;font-size:15px;line-height:1.75;margin:0}
.portal-lock-mark{font-size:50px;background:#fff0c3;color:#dc9e20;border-radius:24px;display:grid;place-items:center;height:90px;width:90px;flex:0 0 90px;transform:rotate(6deg)}
.portal-grid{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:35px;align-items:start}
.portal-steps{border-radius:24px;background:#eaf2fe;padding:35px 30px}
.portal-overline,.portal-form-subtitle{display:block;font-size:10px;letter-spacing:.14em;color:#3467b7;font-weight:900}
.portal-step{display:flex;gap:15px;margin:23px 0}.portal-step>span{width:37px;height:37px;flex:0 0 37px;display:grid;place-items:center;background:#fff;border-radius:12px;color:#2560b6;font-weight:900;font-size:12px}
.portal-step strong{display:block;font-size:15px;color:#17396f}.portal-step p{font-size:12px;line-height:1.7;color:#667a96;margin:5px 0 0}

.portal-card{min-width:0;border:1px solid #e0e8f3;border-radius:25px;background:#fff;box-shadow:0 22px 60px #133e8115;padding:30px}
.portal-tabs{background:#edf3fe;border-radius:13px;display:grid;grid-template-columns:1fr 1fr;gap:5px;padding:5px;margin-bottom:27px}
.portal-tab{appearance:none;background:transparent;color:#4d6490;border:0;padding:12px 10px;font-size:13px;font-weight:900;border-radius:10px;cursor:pointer}
.portal-tab.is-active{background:#fff;color:#194a98;box-shadow:0 3px 12px #102d5e16}
.portal-form[hidden],.portal-private[hidden],.portal-message[hidden],.portal-unavailable[hidden],#portal-student-panel[hidden],#portal-admin-panel[hidden]{display:none!important}
.portal-form h4,.portal-private h4{font:900 29px/1.22 Nunito,system-ui,sans-serif;color:#183b79;margin:10px 0}
.portal-form>p:not(.portal-fineprint){font-size:13px;color:#728098;line-height:1.7;margin:0 0 23px}
.portal-form .field{display:flex;flex-direction:column;align-items:stretch;min-width:0;margin:0 0 17px}.portal-form .field label{font-size:12px;line-height:1.5;margin-bottom:7px}.portal-form .field :is(input,select,textarea){min-width:0;width:100%;box-sizing:border-box;font-size:14px;padding:12px 14px;border-radius:11px}.portal-form .field textarea{resize:vertical}.portal-form .field label b{color:#2a60b5}
.portal-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:14px}.portal-fields .field.full{grid-column:1/-1}
.portal-fields .field small{display:block;font-size:10px;color:#687994;line-height:1.5;margin-top:6px}
.portal-optional{font-weight:500;color:#8491a4;font-size:10px}
.portal-check{display:flex;gap:10px;align-items:flex-start;font-size:11px;line-height:1.7;color:#63728b;margin:9px 0 18px;cursor:pointer}.portal-check input{flex:0 0 18px;width:18px;height:18px;accent-color:#285bb4;margin:2px 0 0}
.portal-submit{width:100%;justify-content:space-between;white-space:normal;text-align:left}
.portal-fineprint{font-size:11px;line-height:1.75;color:#7a8698;margin-top:15px}
.portal-unavailable{background:#fff7e3;color:#715625;border:1px solid #efd796;border-radius:12px;padding:13px 15px;font-size:12px;line-height:1.65;margin-bottom:21px}
.portal-message{padding:12px 14px;margin:13px 0;background:#e7f5ee;border:1px solid #bbe4cc;color:#245d40;border-radius:12px;font-size:13px;line-height:1.65}
.portal-message.is-error{background:#fff1ed;border-color:#ffd1ca;color:#913b31}
.portal-profile{display:flex;align-items:start;justify-content:space-between;gap:10px;border-bottom:1px solid #e4eaf3;padding-bottom:17px;margin-bottom:20px}.portal-profile p{color:#70819c;font-size:13px}
.portal-private h5{color:#163875;font-size:20px;line-height:1.25;margin:24px 0 12px;font-family:Nunito,system-ui,sans-serif}
.portal-list{display:grid;gap:11px}.portal-entry{padding:14px 16px;background:#f6f9fe;border:1px solid #dfe7f4;border-radius:13px;overflow-wrap:anywhere}.portal-entry strong{display:block;color:#1b427f;font-size:13px;margin-bottom:5px}.portal-entry p{font-size:12px;color:#546781;margin:4px 0;white-space:pre-wrap}.portal-entry small{font-size:11px;color:#75839a}
.portal-entry .portal-actions{display:flex;gap:7px;flex-wrap:wrap;margin-top:10px}.portal-actions button{font-size:11px;font-weight:800;background:#2259a5;color:#fff;border:0;border-radius:8px;padding:9px 11px;cursor:pointer}.portal-actions button.reject{background:#fff;color:#a74343;border:1px solid #dfacac}
.portal-publications{margin-top:75px;padding-top:54px;border-top:1px solid #e4e8f2}.portal-publications h3{font-size:clamp(27px,3vw,39px);letter-spacing:-.035em;margin:10px 0 20px}
.portal-feed{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:17px}.portal-feed .portal-entry{background:#fff;min-height:175px;padding:22px}.portal-feed-empty{grid-column:1/-1;background:#eff5ff;border-radius:16px;padding:26px;color:#6b7d99;font-size:13px;text-align:center}
@media(max-width:900px){.portal-grid{grid-template-columns:1fr}.portal-steps{display:grid;grid-template-columns:1fr 1fr;gap:0 15px}.portal-overline{grid-column:1/-1}.portal-feed{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.portal{padding-top:51px}.portal-titleline{margin-bottom:25px}.portal-titleline h3{font-size:35px}.portal-titleline p{font-size:13px}.portal-lock-mark{display:none}.portal-card{padding:20px 16px}.portal-steps{padding:22px;display:block}.portal-fields{grid-template-columns:1fr}.portal-fields .field.full{grid-column:auto}.portal-tab{font-size:12px}.portal-feed{grid-template-columns:1fr}.portal-publications{margin-top:48px;padding-top:40px}.portal-form h4{font-size:26px}}


/* ───── Cantinho da Jabota: aprendizagem, curiosidades e desafios ───── */
.jabota-section{padding:98px 0 102px;background:#f7faff;position:relative;overflow:hidden}
.jabota-section::before{content:"";position:absolute;top:0;right:0;width:36%;height:390px;background:radial-gradient(circle at top right,#ffedb97d 0%,transparent 68%);pointer-events:none}
.jabota-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(310px,.84fr);border:1px solid #e3ebf8;box-shadow:0 25px 75px #17417414;border-radius:32px;min-height:420px;background:#fff;overflow:hidden;isolation:isolate}
.jabota-hero-copy{padding:68px 42px 65px 66px;z-index:2;display:flex;flex-direction:column;align-items:flex-start;justify-content:center}
.jabota-eyebrow{color:#2c60b0;font-weight:900;letter-spacing:.13em;font-size:10px;line-height:1.5}
.jabota-eyebrow span{color:#efb32b;font-size:19px;vertical-align:-2px;margin-right:7px}
.jabota-hero h2{color:#113878;font:900 clamp(45px,5.4vw,70px)/1.08 Nunito,system-ui,sans-serif;letter-spacing:-.055em;margin:19px 0 19px}
.jabota-hero h2 em{font-style:normal;color:#e2aa27}
.jabota-hero-copy>p{font-size:15px;line-height:1.85;color:#5e708b;max-width:565px;margin:0}
.jabota-mini-tags{display:flex;flex-wrap:wrap;gap:9px;margin:24px 0 24px}
.jabota-mini-tags span{background:#ecf3ff;border:1px solid #dce8fc;border-radius:999px;font-size:12px;font-weight:800;color:#264d8d;padding:8px 13px}
.jabota-scroll-link{font-size:14px;font-weight:900;color:#1f56a4;border-bottom:2px solid #eab83d;padding-bottom:5px}
.jabota-scroll-link span{margin-left:7px}
.jabota-portrait{position:relative;min-height:420px;background:#f5faff;display:flex;align-items:end;justify-content:center;overflow:hidden}
.jabota-portrait-halo{position:absolute;width:390px;height:390px;border-radius:50%;background:linear-gradient(135deg,#e6f0ff,#fff4d5);right:-23px;top:32px}
.jabota-portrait img{position:relative;display:block;object-fit:contain;width:100%;max-width:460px;max-height:440px;height:auto;mix-blend-mode:multiply;z-index:1}
.jabota-hello{position:absolute;right:16px;bottom:22px;z-index:3;color:#17447c;border:1px solid #dae7fa;background:#ffffffec;box-shadow:0 10px 27px #29558d22;padding:12px 14px;font:900 12px/1.5 Nunito,system-ui,sans-serif;border-radius:15px;transform:rotate(-2deg)}
.jabota-hello span{color:#ecb52c;margin-right:6px}
.jabota-activities-heading{text-align:center;max-width:730px;margin:72px auto 35px;scroll-margin-top:130px}
.jabota-activities-heading h3{font:900 clamp(29px,3.5vw,43px)/1.15 Nunito,system-ui,sans-serif;letter-spacing:-.04em;color:#173875;margin:13px 0}
.jabota-activities-heading p{font-size:14px;line-height:1.8;color:#738098;margin:0}
.jabota-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:19px;align-items:stretch}
.jabota-card{min-width:0;display:flex;flex-direction:column;align-items:stretch;background:white;border:1px solid #e2eaf4;border-radius:24px;padding:25px 23px 23px;box-shadow:0 16px 41px #143e7512}
.jabota-card-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:15px;font:900 27px/1 Nunito,system-ui,sans-serif;margin-bottom:17px;color:#285caa;background:#e9f1ff}
.jabota-card-facts .jabota-card-icon{color:#9d710e;background:#fff1c9}
.jabota-card-quiz .jabota-card-icon{color:#387b58;background:#e5f4e9}
.jabota-card-kicker{font-size:9px;letter-spacing:.16em;font-weight:900;color:#6079a1;line-height:1.5}
.jabota-card h4{font:900 25px/1.16 Nunito,system-ui,sans-serif;letter-spacing:-.04em;color:#153975;margin:8px 0 9px}
.jabota-card-lead{font-size:12px;line-height:1.7;color:#677891;margin:0 0 18px;min-height:62px}
.jabota-note{padding:21px 17px 16px;border-radius:17px;margin:0 0 18px;background:#f0f5ff;min-height:188px;position:relative}
.jabota-note-fact{background:#fff8e8}
.jabota-note-marker{position:absolute;right:13px;top:3px;color:#b4caea;font:900 52px/1 Nunito,system-ui,sans-serif}
.jabota-note-fact .jabota-note-marker{color:#f1d189}
.jabota-note strong{display:block;font-size:16px;color:#204c8e;font-weight:900;line-height:1.4;position:relative}
.jabota-note-fact strong{color:#7c5a13}
.jabota-note p{position:relative;font-size:13px;line-height:1.75;color:#5f7290;margin:10px 0 0}
.jabota-note-fact p{color:#756343}
.jabota-card-action{margin-top:auto;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px 14px;border:1px solid #cbdaf2;border-radius:12px;color:#1f4e9a;background:white;font-weight:900;font-size:12px;text-align:left;transition:background .18s,border-color .18s}
.jabota-card-action:hover{background:#eef4ff;border-color:#a9c7f4}
.jabota-card-action:focus-visible,.jabota-answer:focus-visible{outline:3px solid #f2b733;outline-offset:3px}
.jabota-quiz{padding:14px;background:#eff7f1;border-radius:17px;margin-bottom:18px;min-height:238px}
.jabota-question{display:block;color:#26513a;font-size:14px;line-height:1.5;margin-bottom:13px}
.jabota-answers{display:grid;gap:8px}
.jabota-answer{font-size:11px;line-height:1.45;min-height:36px;text-align:left;background:#fff;border:1px solid #d5e9db;color:#365944;border-radius:10px;padding:9px 11px;transition:background .18s}
.jabota-answer:hover:not(:disabled){background:#e3f5e9}
.jabota-answer.is-correct{background:#d1efdb;border-color:#73b88d;color:#235c39;font-weight:800}
.jabota-answer.is-incorrect{background:#fce7e3;border-color:#dba49b;color:#913e36}
.jabota-answer:disabled{cursor:default}
.jabota-feedback{font-size:11px;line-height:1.6;padding:11px 12px;border-radius:10px;background:#e0f1e7;color:#2f6849;margin:12px 0 0}
.jabota-feedback.is-error{background:#fff0e9;color:#8c5141}
.jabota-feedback[hidden]{display:none}
.jabota-bottom{display:flex;align-items:center;justify-content:center;gap:15px;max-width:760px;margin:32px auto 0;text-align:left}
.jabota-bottom-symbol{display:grid;place-items:center;font-size:30px;width:51px;height:51px;flex:none;border-radius:16px;background:#fff2d2;color:#d49d19}
.jabota-bottom p{color:#647792;font-size:12px;line-height:1.75;margin:0}
.jabota-bottom strong{color:#15417f;font-size:13px}
@media (min-width:901px) and (max-width:1160px){.main-nav{display:none}.mobile-toggle{display:flex}.header-cta{margin-left:auto}}
@media(max-width:1000px){.jabota-hero{grid-template-columns:1fr .84fr}.jabota-hero-copy{padding:44px 28px 43px 38px}.jabota-hero h2{font-size:clamp(39px,4.5vw,57px)}.jabota-portrait,.jabota-hero{min-height:385px}.jabota-portrait-halo{width:335px;height:335px}.jabota-card{padding:21px 17px 20px}.jabota-card h4{font-size:22px}}
@media(max-width:760px){.jabota-section{padding:72px 0 76px}.jabota-hero{display:flex;flex-direction:column;min-height:0;border-radius:24px}.jabota-hero-copy{padding:37px 24px 25px}.jabota-hero h2{font-size:clamp(40px,10vw,58px);margin:12px 0 17px}.jabota-hero-copy>p{font-size:14px}.jabota-mini-tags{margin:20px 0;gap:7px}.jabota-mini-tags span{font-size:10px;padding:7px 11px}.jabota-portrait{min-height:0;height:330px}.jabota-portrait img{height:330px;width:auto;max-width:100%}.jabota-portrait-halo{height:285px;width:285px;right:50%;transform:translateX(50%);top:15px}.jabota-hello{font-size:10px;right:12px;bottom:12px}.jabota-activities-heading{margin:52px auto 28px}.jabota-activities-heading h3{font-size:31px}.jabota-activities-heading p{font-size:13px}.jabota-cards{grid-template-columns:1fr;gap:14px;max-width:570px;margin:auto}.jabota-card{padding:23px}.jabota-card-lead{min-height:0}.jabota-note{min-height:0;padding:20px;margin-bottom:17px}.jabota-quiz{min-height:0}.jabota-card-action{font-size:13px}.jabota-bottom{margin-top:27px}}
@media(max-width:400px){.jabota-hero-copy{padding:32px 19px 23px}.jabota-hero h2{font-size:40px}.jabota-portrait{height:300px}.jabota-portrait img{height:300px}.jabota-card{padding:20px}.jabota-bottom{gap:10px}}

/* Correção da logo: exibir a marca sem fundo escuro aparente */
.brand img,.site-header .brand img,.site-footer .brand img{border-radius:50%;background:transparent;display:block}

/* Navegação entre páginas */
.main-nav a[aria-current="page"] { color: var(--blue, #164c8a); font-weight: 800; text-decoration: underline; text-underline-offset: 6px; }

.home-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.home-card{overflow:hidden;background:#fff;border:1px solid #e2e8f0;border-radius:24px;display:flex;flex-direction:column;box-shadow:0 12px 35px #123b9109}.home-card-image,.home-card-art{width:100%;height:180px;object-fit:cover}.home-jabota{object-fit:contain;background:#fff8dd;padding:14px}.home-card-art{display:grid;place-items:center;font-size:76px;background:#fff3ca;color:#123b91}.home-art-2{background:#e9efff}.home-card-body{padding:24px;display:flex;flex-direction:column;flex:1}.home-card h3{font-size:23px;line-height:1.25;margin:12px 0;color:#123b91}.home-card p{font-size:15px;line-height:1.7;margin-bottom:22px}.home-card .text-link{margin-top:auto}.home-enroll{padding:56px 0 64px;background:#fff6da}.home-enroll-inner{display:flex;align-items:center;gap:40px;justify-content:space-between}.home-enroll h2{font-size:clamp(28px,3vw,40px);line-height:1.2;color:#123b91;margin:12px 0}.home-enroll p{max-width:620px}.home-enroll-actions{display:flex;flex-direction:column;gap:12px;flex-shrink:0}@media(max-width:1100px){.home-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.home-cards{grid-template-columns:1fr}.home-enroll-inner{flex-direction:column;align-items:stretch}.home-card-image,.home-card-art{height:170px}.home-enroll-actions a{text-align:center}}

.home-facilities{background:#f4f8ff}.home-facilities .facilities-gallery{margin-top:0}.home-facilities-action{display:flex;justify-content:center;margin-top:30px}.home-facilities .facility-photo-card{margin:0}.home-facilities .facility-court-photo figcaption strong{font-size:24px}

.portal-attachments{display:grid;gap:16px;margin-top:16px}.portal-attachments figure{margin:0;min-width:0}.portal-attachments img,.portal-attachments video{display:block;width:100%;max-height:360px;object-fit:contain;border-radius:12px;background:#edf2fa}.portal-attachments figcaption{padding:8px 0;font-size:13px;overflow-wrap:anywhere}.portal-file-list{padding-left:20px;font-size:13px;overflow-wrap:anywhere}.portal-entry>p{white-space:pre-wrap}
/* Painel inspirado em portfólios escolares, com a identidade Duas Irmãs. */
body.admin-mode{background:#f3f6fc}.admin-mode .voice-section{padding:36px 0 60px}.admin-mode .voice-section>.container>:not(.portal){display:none}.admin-mode .portal{margin:0;padding:0;border:0}.admin-mode .portal-titleline,.admin-mode .portal-steps,.admin-mode .portal-publications{display:none}.admin-mode .portal-grid{display:block}.admin-mode .portal-card{padding:28px;border-radius:24px;box-shadow:0 12px 40px #123b9108}.admin-mode .portal-profile{align-items:center}.admin-mode .portal-profile h4{font-size:22px}.admin-mode .portal-profile p{margin:0}.admin-banner{display:flex;justify-content:space-between;align-items:start;gap:20px;padding:16px 0 28px}.admin-banner h2{font-size:clamp(27px,3vw,40px);line-height:1.15;color:#123b91;margin:12px 0}.admin-banner p{color:#65738c;font-size:14px;max-width:630px}.admin-private-badge{background:#eaf0ff;border:1px solid #d5e1ff;color:#234c91;padding:8px 12px;border-radius:20px;font-size:12px;white-space:nowrap}.admin-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:28px}.admin-stats>div{padding:22px;border:1px solid #e1e8f4;border-radius:18px;background:#f8faff}.admin-stats>div:first-child{background:#fff8df;border-color:#f4e8b8}.admin-stats span,.admin-stats small{display:block;font-size:12px;color:#67768e}.admin-stats strong{display:block;font:900 36px Nunito,sans-serif;color:#123b91;margin:6px 0}.admin-workspace{display:grid;grid-template-columns:205px minmax(0,1fr);gap:28px;border-top:1px solid #e6ebf4;padding-top:26px}.admin-sidebar{border-right:1px solid #e6ebf4;padding-right:20px}.admin-nav-label{font-size:10px;font-weight:800;letter-spacing:.13em;color:#8793a8}.admin-sidebar nav{display:grid;gap:7px;margin:15px 0 26px}.admin-sidebar nav button{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:13px 12px;border:0;border-radius:12px;background:transparent;color:#5f708d;font-family:inherit;font-size:14px;font-weight:700;text-align:left;cursor:pointer}.admin-sidebar nav button[aria-pressed=true]{background:#123b91;color:#fff}.admin-sidebar nav button span{font-size:11px;background:#ffffff30;border-radius:8px;padding:2px 7px}.admin-sidebar p{font-size:12px;line-height:1.7;color:#7b879a}.admin-sidebar>a{font-size:13px;font-weight:700;color:#123b91}.admin-content{min-width:0}.admin-toolbar{display:flex;align-items:start;justify-content:space-between;gap:12px;margin-bottom:20px}.admin-toolbar h3{font-size:24px;color:#123b91;margin:0 0 6px}.admin-toolbar p{font-size:13px;color:#718099;margin:0}.admin-toolbar .button{font-size:12px;flex-shrink:0;padding:10px 14px}.admin-filters{display:grid;grid-template-columns:minmax(0,1fr) 160px;gap:12px;margin-bottom:10px}.admin-filters label{display:block;font-size:11px;color:#6b7891;font-weight:700;margin-bottom:6px}.admin-filters input,.admin-filters select{width:100%;padding:11px 12px;border:1px solid #dce4f1;border-radius:10px;background:#fff;color:#23416b;font:inherit;font-size:13px}#admin-filter-status{font-size:12px;color:#7a879d;margin:8px 0 16px}.admin-content [hidden]{display:none!important}.admin-project-list{gap:22px}.admin-content .portal-entry{padding:24px;background:#fff;border:1px solid #dce4f0;border-radius:18px}.admin-content .portal-entry>strong{font:800 22px Nunito,sans-serif;margin:12px 0;color:#173c7d}.admin-content .portal-entry>p{font-size:15px;line-height:1.8;color:#3d4d66}.admin-content .portal-entry>small{display:block;padding:10px 0;border-bottom:1px solid #edf0f6;font-size:12px}.admin-status{display:inline-block;border-radius:20px;padding:5px 10px;background:#fff3cd;color:#916900;font-size:11px;font-weight:800}.admin-content .portal-review-summary{font-size:12px!important;color:#7c899b!important;margin-top:16px!important}.admin-content .portal-attachments{padding:12px;background:#f6f8fc;border-radius:14px}.admin-content .portal-attachments img,.admin-content .portal-attachments video{max-height:520px}.admin-reviewed{display:flex;align-items:start;gap:10px;padding:16px 0;font-size:12px;line-height:1.6;color:#5f6f88}.admin-reviewed input{width:17px;height:17px;flex-shrink:0;accent-color:#123b91;margin-top:2px}.admin-content .portal-actions{border-top:1px solid #edf0f6;padding-top:16px}.admin-content .portal-actions button{padding:12px 18px;font-size:13px}.admin-content .portal-actions button:disabled{opacity:.4;cursor:not-allowed}.admin-content .portal-actions button:focus-visible,.admin-sidebar button:focus-visible{outline:3px solid #f3c444;outline-offset:3px}
@media(max-width:800px){.admin-workspace{grid-template-columns:1fr;gap:18px}.admin-sidebar{border:0;padding:0}.admin-sidebar nav{grid-template-columns:repeat(3,minmax(0,1fr));margin:8px 0}.admin-sidebar p,.admin-sidebar>a,.admin-nav-label{display:none}.admin-stats{gap:8px}.admin-stats>div{padding:14px}.admin-stats span{font-size:11px}.admin-mode .portal-card{padding:18px}.admin-banner{display:block}.admin-private-badge{display:inline-block;margin-top:12px}.admin-toolbar{flex-wrap:wrap}.admin-content .portal-entry{padding:18px}}
@media(max-width:480px){.admin-stats{grid-template-columns:1fr}.admin-stats>div{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px}.admin-stats strong{grid-column:2;grid-row:1/3;font-size:28px;margin:0}.admin-filters{grid-template-columns:1fr}.admin-sidebar nav button{font-size:12px;padding:10px 7px}.admin-sidebar nav button span{padding:2px 5px}.admin-content .portal-actions button{flex:1}.admin-mode .portal-profile{flex-wrap:wrap}}

.portal-tabs[hidden]{display:none!important}.admin-mode .portal-card{overflow:visible}

.admin-status-published{background:#e4f5eb;color:#247246}@media(max-width:800px){.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}}
.admin-grade-group{border:1px solid #dfe6f2;border-radius:16px;background:#f7f9fd;overflow:hidden}.admin-grade-group>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px 20px;cursor:pointer;font-family:Nunito,sans-serif;font-weight:900;font-size:20px;color:#163c7c;list-style:none}.admin-grade-group>summary::-webkit-details-marker{display:none}.admin-grade-group>summary>span:first-child:before{content:'▸';display:inline-block;margin-right:10px;font-size:15px;transition:transform .15s}.admin-grade-group[open]>summary>span:first-child:before{transform:rotate(90deg)}.admin-grade-count{font-family:inherit;font-size:12px;font-weight:700;padding:5px 10px;border-radius:20px;background:#e6edfc;color:#375c99}.admin-grade-projects{display:grid;gap:16px;padding:0 16px 16px}.admin-grade-empty{font-size:13px;color:#74829a;margin:4px}.admin-grade-group>summary:focus-visible{outline:3px solid #f3c444;outline-offset:-4px}@media(max-width:480px){.admin-grade-group>summary{padding:15px;font-size:18px}.admin-grade-projects{padding:0 10px 10px}}
.jabota-admin-intro{display:flex;align-items:center;gap:18px;padding:20px;background:#fff7dc;border-radius:18px;margin-bottom:18px}.jabota-admin-intro img{object-fit:contain;flex-shrink:0}.jabota-admin-intro h4{font-size:22px!important;margin:0 0 8px!important}.jabota-admin-intro p{font-size:13px;line-height:1.7;margin:0;color:#64718b}#jabota-ai-status{background:#edf3ff;padding:16px;border-radius:12px;font-size:13px;line-height:1.7}.jabota-admin-actions{display:flex;gap:10px;flex-wrap:wrap;margin:16px 0}.jabota-admin-actions .button{font-size:12px;padding:12px 15px}.jabota-admin-actions button:disabled{opacity:.5;cursor:wait}.jabota-review-card{border:1px solid #dfe6f2;border-radius:16px;margin-top:16px;overflow:hidden}.jabota-review-card>summary{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:18px;cursor:pointer;background:#f5f8fd}.jabota-review-card>summary strong{font-size:16px;color:#183d7c}.jabota-review-card form{padding:20px}.jabota-review-card textarea{resize:vertical}#jabota-status-filter{margin-bottom:16px;width:100%;padding:12px;border:1px solid #dce4f1;border-radius:10px;background:#fff}#jabota-review-list{gap:0}@media(max-width:480px){.jabota-admin-intro{align-items:start;padding:14px}.jabota-admin-intro img{width:55px;height:55px}.jabota-review-card>summary{align-items:start;flex-direction:column}.jabota-review-card form{padding:14px}}
.jabota-public-filter{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:24px}.jabota-public-filter label{font-weight:800;color:#183d7c;font-size:14px}.jabota-public-filter select{padding:10px;border-radius:10px;border:1px solid #d9e2f1;background:#fff;color:#183d7c}.jabota-public-filter p{flex-basis:100%;font-size:12px;color:#73809a}.jabota-card-project{margin:24px 0;background:#f1f6ff}.jabota-card-project .text-link{margin-top:20px;display:inline-block}.jabota-card-project .jabota-note{margin-bottom:20px}
.project-feedback{padding:16px;background:#fff7dd;border:1px solid #eedc9f;border-radius:12px;line-height:1.7;color:#68552b!important;font-size:14px!important;white-space:pre-wrap;overflow-wrap:anywhere}.project-feedback[hidden],#password-reset-panel[hidden],#project-edit-banner[hidden]{display:none!important}.student-management-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}.student-management-actions .button{font-size:12px;padding:12px 15px}#student-reset-result code{display:block;overflow-wrap:anywhere;font-size:16px;padding:12px;background:#fff;border-radius:10px;margin:12px 0}#password-reset-panel{margin:20px 0;padding:20px;background:#f3f7ff;border:1px solid #dfe7f4;border-radius:16px}#student-status-filter{width:100%;padding:12px;border:1px solid #dce4f1;border-radius:10px;background:#fff;margin-bottom:16px}#portal-backup-list{margin-top:20px}.admin-project .field{margin-top:18px}.admin-project .field textarea{width:100%;padding:12px;border:1px solid #d6dfed;border-radius:10px;font:inherit}.admin-project .field label{display:block;font-size:12px;color:#6b7891;margin-bottom:8px}
@media(max-width:700px){html,body{max-width:100%;overflow-x:clip}input,select,textarea{font-size:16px!important}.portal-card,.admin-content,.portal-form,.contact-box{min-width:0}.portal-card input,.portal-card select,.portal-card textarea{max-width:100%}.portal-card input[type=file]{width:100%;font-size:13px!important}.portal-card input[type=file]::file-selector-button{padding:12px 10px;border:0;border-radius:8px;background:#e9efff;color:#173e84;margin-right:8px}.portal-profile>.button,.student-management-actions .button,.portal-actions button,.jabota-admin-actions .button{min-height:44px}.student-management-actions{flex-direction:column}.student-management-actions .button{width:100%}.admin-sidebar nav{grid-template-columns:repeat(2,minmax(0,1fr))}.admin-sidebar nav button{min-height:44px;white-space:normal}.portal-entry,.portal-entry small,.portal-entry p{overflow-wrap:anywhere}.portal-attachments img,.portal-attachments video{max-width:100%;height:auto}.project-feedback{padding:13px}#password-reset-panel{padding:16px}.admin-filters{grid-template-columns:1fr}.admin-toolbar>.button{width:100%}}
.portal-notification-bar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:14px 0 24px}.portal-notification-bar>span{font-size:12px;color:#6c7c96}.portal-notification-bar .button{min-height:44px;gap:10px}.notification-count{display:inline-flex;justify-content:center;align-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:20px;background:#123b91;color:#fff;font-size:12px}.notification-count[hidden],.notification-panel[hidden]{display:none!important}.notification-panel{border:1px solid #dce5f4;border-radius:18px;padding:20px;background:#f7faff;margin-bottom:26px;scroll-margin-top:100px}.notification-heading{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.notification-heading h5{margin:0!important}.notification-heading button{border:0;background:none;font:inherit;font-size:12px;cursor:pointer}.notification-heading button:disabled{opacity:.5;cursor:default}.notification-entry{background:white}.notification-unread{border-left:4px solid #f0bb37!important}.notification-entry p{font-size:14px;line-height:1.7}.notification-entry .portal-actions button{min-height:44px}#notification-error{font-size:13px;color:#a13a3a;white-space:pre-wrap}@media(max-width:480px){.notification-panel{padding:14px}.notification-heading{align-items:start;flex-direction:column}.notification-heading button{min-height:44px}.notification-entry .portal-actions{flex-direction:column}}

.project-editor-actions{display:flex;gap:12px;flex-wrap:wrap;margin:18px 0}.project-editor-actions>.button{flex:1;min-height:46px}.project-editor-actions>.portal-submit{margin:0}#portal-my-drafts .portal-entry{border-left:4px solid #8ba9df}@media(max-width:480px){.project-editor-actions{flex-direction:column}.project-editor-actions>.button{width:100%}}
.project-history{margin:18px 0;border:1px solid #dce5f2;border-radius:12px;background:#f7faff}.project-history>summary{padding:14px;cursor:pointer;color:#234d89;font-weight:800;font-size:13px;min-height:44px}.project-history ol{list-style:none;padding:0 18px 6px 28px;margin:0}.project-history li{position:relative;border-left:2px solid #d5e0f2;padding:0 0 20px 18px}.project-history li:before{content:'';position:absolute;width:10px;height:10px;border-radius:50%;background:#f0bb37;left:-6px;top:4px}.project-history li:last-child{padding-bottom:12px}.project-history li strong{font-size:14px!important;margin:0 0 6px!important}.project-history li small{display:block;font-size:11px;line-height:1.7;color:#6c7d97}.project-history li p{font-size:13px!important;line-height:1.7;color:#485c7b;white-space:pre-wrap;overflow-wrap:anywhere;margin:8px 0}.project-history>summary:focus-visible{outline:3px solid #f0bb37;outline-offset:2px}@media(max-width:480px){.project-history ol{padding-left:20px;padding-right:12px}.project-history li{padding-left:14px}}
.public-search{display:grid;grid-template-columns:minmax(180px,2fr) minmax(130px,1fr) minmax(160px,1.3fr);gap:14px;align-items:end;padding:22px;border:1px solid #dfe7f5;background:#f5f8ff;border-radius:18px;margin:24px 0 12px}.public-search label{display:block;font-size:12px;color:#556d94;font-weight:800;margin-bottom:8px}.public-search input,.public-search select{width:100%;min-width:0;padding:12px;border:1px solid #d3def0;border-radius:10px;background:#fff;color:#244779;font:inherit;font-size:14px;min-height:46px}.public-search-actions{grid-column:1/-1;display:flex;gap:10px;flex-wrap:wrap}.public-search-actions .button{min-height:44px}.public-pagination{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap;margin-top:24px}.public-pagination .button{min-height:44px}.public-pagination .button:disabled{opacity:.45;cursor:default}.public-pagination span,#public-search-status{font-size:13px;color:#6d7e99}#public-search-status{margin:12px 0 20px}.portal-feed[aria-busy=true]{opacity:.65}@media(max-width:700px){.public-search{grid-template-columns:1fr;padding:16px}.public-search-actions{flex-direction:column}.public-search-actions .button{width:100%}.public-pagination{gap:10px}.public-pagination .button{font-size:12px;padding:12px}.public-pagination span{font-size:12px}}

.honor-teacher{margin-top:12px;font-size:15px;color:#4a5b78}.honor-section-next{border-top:1px solid #dce9fc}
