:root{--bg:#fcfafc;--ink:#26113d;--muted:#70647d;--purple:#cc1aff;--bright:#cc1aff;--pink:#f97bd1;--lilac:#f1e9fb;--mint:#5ad7f6;--line:#ebe5f1;--shadow:0 26px 75px rgba(32,9,57,.16);--container:1180px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:85px}
body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,'Segoe UI',Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input,select{font:inherit}
a{color:inherit;text-decoration:none}
button{cursor:pointer}
img{max-width:100%}
.container{width:min(var(--container),calc(100% - 68px));margin-inline:auto}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.skip-link{position:absolute;left:16px;top:-100px;padding:12px 16px;background:white;z-index:99}
.skip-link:focus{top:12px}
.pride-line{height:5px;background:linear-gradient(90deg,#f36fa8 0 17%,#dc30eb 17% 34%,#7c36da 34% 51%,#55cfe0 51% 68%,#72ceab 68% 84%,#ffd75b 84%)}
.topbar{background:#fff;position:sticky;top:0;z-index:40;box-shadow:0 2px 15px rgba(31,13,54,.055)}
.nav-inner{min-height:86px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.brand{display:inline-flex;align-items:center;gap:12px;min-width:0}
.brand-symbol{width:62px;height:58px;display:block;position:relative;flex-shrink:0}
.brand-symbol img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;z-index:1}
.brand-fallback{position:absolute;inset:0;display:grid;place-items:center;font-size:34px;border-radius:14px;background:linear-gradient(145deg,#f6b1e2,#c523ed,#5bdbed)}
.brand-type{display:flex;flex-direction:column;line-height:1.04;letter-spacing:-.8px}
.brand-type strong{font-size:17px;font-weight:900}
.brand-type strong:first-child{color:#8b21c1}
.brand-type small{font-size:7.5px;letter-spacing:1.65px;font-weight:900;margin-top:6px;color:#74518c}
.nav-links{display:flex;align-items:center;gap:31px}
.nav-links>a{font-size:13px;font-weight:750;color:#574663;transition:color .2s}
.nav-links>a:hover{color:#a51cd6}
.nav-links .nav-cta{padding:14px 21px;border-radius:10px;background:var(--ink);color:#fff;box-shadow:0 6px 15px rgba(36,15,59,.13)}
.nav-cta span{margin-left:16px}
.mobile-nav-cta{display:none}
.hero{background:radial-gradient(circle at 29% 29%,#3e1b5e 0,#27113f 52%,#210e3a 100%);color:#fff;position:relative;overflow:hidden;padding:84px 0 117px;isolation:isolate}
.hero-orb{position:absolute;border-radius:50%;filter:blur(5px);pointer-events:none;z-index:-1}
.orb-one{width:550px;height:550px;background:radial-gradient(circle,#7b2aca99,#55108618 68%,transparent 72%);top:-280px;left:-110px}
.orb-two{width:610px;height:610px;background:radial-gradient(circle,#7b34a566,#55108611 68%,transparent 73%);bottom:-400px;right:2%}
.hero-lines{position:absolute;right:-140px;top:20px;width:430px;height:430px;border:1px solid #ffffff12;border-radius:50%;box-shadow:0 0 0 55px #ffffff05,0 0 0 110px #ffffff04;pointer-events:none}
.hero-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(400px,.89fr);gap:78px;align-items:center;position:relative}
.hero-content{padding-top:4px}
.kicker{font-size:10px;letter-spacing:2.3px;font-weight:850;color:#ffd5f6;display:flex;align-items:center;gap:11px;margin-bottom:27px}
.kicker-dot{width:8px;height:8px;border-radius:50%;background:#ff91d4;box-shadow:0 0 0 5px #ff91d42c}
h1,h2,h3,p{margin-top:0}
.hero h1{font-size:clamp(52px,5.1vw,77px);font-weight:900;line-height:1.064;letter-spacing:-4.4px;max-width:660px;margin-bottom:27px}
.hero h1 em,.section h2 em,.final-cta h2 em,.login-card h1 em,.dash-title h1 em,.privacy-page h1 em{font-style:normal;background:linear-gradient(110deg,#fa93c8,#e35df4 52%,#82e7f0);background-clip:text;-webkit-background-clip:text;color:transparent}
.hero .period{color:#f58ddd}
.hero-lead{font-size:19px;line-height:1.55;font-weight:420;max-width:540px;margin-bottom:16px;color:#fff}
.hero-lead strong{color:#ffc5f2;font-weight:800}
.hero-description{font-size:14px;line-height:1.9;color:#ccbdd7;max-width:520px;margin-bottom:29px}
.hero-points{display:flex;flex-wrap:wrap;gap:11px;margin-bottom:35px}
.hero-points span{display:inline-flex;align-items:center;gap:8px;color:#efe7f9;font-size:11px;font-weight:700;padding:10px 12px;border:1px solid #ffffff2d;border-radius:7px;background:#ffffff0c}
.hero-points i{font-size:13px;font-style:normal;color:#72ebd9}
.hero-aux-link{display:inline-flex;align-items:center;gap:14px;font-weight:750;font-size:13px;color:#f0d5fd;border-bottom:1px solid #f0d5fd7c;padding-bottom:6px}
.hero-aux-link:hover{color:white;border-color:white}
.hero-aux-link span{font-size:20px}
.rainbow-brush{width:140px;height:9px;display:flex;transform:rotate(-8deg);gap:0;margin-top:59px;opacity:.95;border-radius:20px;overflow:hidden}
.rainbow-brush span{flex:1;background:#f56dba}.rainbow-brush span:nth-child(2){background:#d520f0}.rainbow-brush span:nth-child(3){background:#8234de}.rainbow-brush span:nth-child(4){background:#6ad7ea}.rainbow-brush span:nth-child(5){background:#90eac5}.rainbow-brush span:nth-child(6){background:#ffda7c}
.signup-wrap{position:relative}
.signup-card{background:#fff;color:var(--ink);border-radius:20px;padding:36px 40px 31px;position:relative;z-index:1;box-shadow:0 38px 110px #08031655,0 1px 0 #ffffff50 inset}
.signup-card::before{content:'';height:8px;position:absolute;left:0;right:0;top:0;border-radius:20px 20px 0 0;background:linear-gradient(90deg,#f270c4,#ce24ed,#7c34d6,#51d4e5)}
.card-step{font-size:10px;color:#a32fbb;letter-spacing:1.5px;font-weight:900;display:flex;align-items:center;justify-content:space-between}
.starburst{font-size:27px;color:#d84ae7}
.signup-card h2{font-size:32px;line-height:1.13;letter-spacing:-1.6px;max-width:370px;margin:12px 0 10px;font-weight:880}
.signup-card h2 span{color:#ae2cdd}
.signup-card>p{font-size:13px;color:#7a6f83;line-height:1.6;margin-bottom:25px}
.signup-card form>label:not(.consent-box){display:block;font-size:11px;font-weight:800;margin:0 0 8px;color:#352544}
.signup-card form>label:not(.consent-box) span{color:#ba2be3}
.signup-card input:not([type=checkbox]),.login-card input,.filter-bar input,.filter-bar select{width:100%;height:47px;border:1px solid #e4ddeb;border-radius:9px;background:#fdfcff;color:var(--ink);padding:0 14px;outline:0;transition:border-color .2s,box-shadow .2s}
.signup-card input:not([type=checkbox]):focus,.login-card input:focus,.filter-bar input:focus,.filter-bar select:focus{border-color:#b155d9;box-shadow:0 0 0 3px #ba63e923}
.signup-card input:not([type=checkbox]){margin-bottom:16px;font-size:13px}
.signup-card input::placeholder{color:#a49cad}
.consent-box{display:flex;align-items:flex-start;gap:9px;margin:2px 0 20px;cursor:pointer}
.consent-box input{accent-color:#9e27d8;flex:0 0 auto;margin-top:4px;width:16px;height:16px}
.consent-box span{color:#756b7d;line-height:1.6;font-size:10px}
.consent-box a{color:#8922c1;text-decoration:underline;font-weight:700;text-underline-offset:2px}
.btn-primary{display:flex;align-items:center;justify-content:space-between;gap:14px;background:linear-gradient(110deg,#a323e3,#ca28ed);border:0;border-radius:10px;color:#fff;font-size:12px;font-weight:900;letter-spacing:.75px;padding:13px 14px 13px 23px;min-height:51px;box-shadow:0 9px 22px #b136e537;transition:transform .2s,filter .2s}
.btn-primary:hover{transform:translateY(-2px);filter:saturate(1.2)}
.btn-primary:disabled{opacity:.65;cursor:wait}
.signup-card .btn-primary{width:100%}
.button-arrow{background:#ffffff28;width:32px;height:30px;display:grid;place-items:center;border-radius:7px;font-size:18px}
.form-footer{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:15px;color:#a196a9;font-size:10px;font-weight:550}
.form-footer svg{width:13px;height:13px}
.form-deco{position:absolute;color:#f97cce;z-index:0}
.deco-first{font-size:66px;top:-47px;right:-36px;transform:rotate(-20deg)}
.deco-second{font-size:46px;bottom:-36px;left:-38px;color:#54dfec}
.honeypot{position:absolute!important;width:1px;height:1px;overflow:hidden;left:-9999px;opacity:0}
.notice{border-radius:9px;padding:11px 14px;margin:12px 0 18px;font-size:12px;font-weight:650;line-height:1.5}
.notice[hidden]{display:none}
.notice.success{color:#125a39;background:#dff7e8;border:1px solid #aee2bd}
.notice.error{color:#a01944;background:#ffebf0;border:1px solid #fcc5d5}
.hero-cut{position:absolute;bottom:-2px;left:0;width:100%;height:70px;background:var(--bg);clip-path:polygon(0 100%,100% 100%,100% 2%,0 100%)}
.section{padding:103px 0}
.intro{background:var(--bg);padding-top:109px;padding-bottom:113px}
.intro-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}
.section-tag{font-size:10px;font-weight:900;letter-spacing:2px;color:#a72cc7;display:inline-flex;align-items:center;gap:9px;margin-bottom:20px}
.section-tag>span{width:7px;height:7px;background:#bc47d4;transform:rotate(45deg)}
.section h2{font-size:clamp(37px,3.65vw,52px);line-height:1.12;letter-spacing:-2.3px;font-weight:880;margin-bottom:0}
.intro .section h2,.intro h2{max-width:490px}
.section h2 em{background-image:linear-gradient(110deg,#a721e2,#e16bba)}
.intro-copy{border-left:3px solid #d34aea;padding-left:32px}
.intro-copy p{font-size:15px;color:#63586a;line-height:1.85;margin:0 0 15px}
.intro-copy strong{color:#3c214f}
.intro-copy a{display:inline-block;margin-top:11px;font-size:13px;font-weight:850;color:#9631c0}
.intro-copy a span{margin-left:8px}
.benefits{background:#f4eff9}
.section-center{text-align:center;max-width:750px;margin:0 auto 49px}
.section-center h2{margin:0 auto 15px}
.section-center>p{font-size:15px;color:#817587;line-height:1.7;max-width:570px;margin:0 auto}
.benefits-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.benefit-card{border:1px solid #e9e0ee;background:white;border-radius:17px;overflow:hidden;box-shadow:0 12px 24px #3919540d;transition:transform .25s,box-shadow .25s}
.benefit-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px #3919541a}
.benefit-image{position:relative;height:215px;overflow:hidden;background:linear-gradient(145deg,#7a21c6,#df66b7)}
.benefit-image img{width:100%;height:100%;object-fit:cover;position:relative;z-index:1;display:block;transition:transform .5s}
.benefit-card:hover .benefit-image img{transform:scale(1.055)}
.benefit-image img.load-failed,.portrait img.load-failed,.brand-symbol img.load-failed{display:none}
.benefit-number{z-index:2;position:absolute;left:19px;top:19px;background:#fff;box-shadow:0 2px 10px #0002;padding:9px 12px;font-size:11px;font-weight:900;border-radius:6px;color:#9637bc}
.image-formation{background:linear-gradient(145deg,#2c173f,#47a7c5)}.image-mentoring{background:linear-gradient(145deg,#f9b7a2,#9b41ce)}.image-community{background:linear-gradient(145deg,#f575b8,#57cef0)}
.benefit-body{padding:30px 27px 34px;position:relative}
.benefit-icon{width:40px;height:40px;border-radius:11px;background:#f6eafa;color:#a52bd3;display:grid;place-items:center;font-size:23px;font-weight:800;margin-bottom:17px}
.benefit-body h3{font-size:19px;letter-spacing:-.6px;line-height:1.24;margin-bottom:12px;min-height:47px}
.benefit-body p{font-size:13px;color:#786e80;line-height:1.85;margin:0}
.statement{background:#31134d;color:#fff;padding:54px 0}
.statement-inner{display:flex;align-items:center;gap:26px;justify-content:space-between}
.statement .sparkle{font-size:55px;color:#f67bcf;line-height:1}
.statement p{font-size:24px;line-height:1.4;letter-spacing:-.6px;margin:0;max-width:660px;flex:1;font-weight:400}
.statement p strong{color:#f89cdb}
.statement-button{display:inline-flex;gap:25px;align-items:center;background:#fff;color:#4d195f;border-radius:9px;padding:16px 20px;font-size:12px;font-weight:850;white-space:nowrap}
.statement-button span{font-size:20px}
.team{background:#fff}
.team-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:23px;max-width:1050px;margin-inline:auto}
.team-card{background:#fff;border:1px solid #ede7f0;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #31144d0b}
.portrait{position:relative;aspect-ratio:1 / .93;background:linear-gradient(140deg,#d9b9ee,#b344c7);overflow:hidden}
.portrait img{width:100%;height:100%;object-fit:cover;object-position:center 33%;display:block;position:relative;z-index:1}
.portrait-1{background:linear-gradient(130deg,#eaafd5,#7c37c2)}.portrait-2{background:linear-gradient(130deg,#acdcd2,#502171)}.portrait-3{background:linear-gradient(130deg,#ffcca8,#cf74c5)}.portrait-4{background:linear-gradient(130deg,#d89cc4,#c7ace9)}
.portrait-letter{position:absolute;inset:0;display:grid;place-items:center;font-size:130px;font-weight:900;color:#ffffff88}
.team-copy{padding:23px 20px 28px}
.team-copy h3{font-size:18px;line-height:1.2;letter-spacing:-.6px;margin-bottom:7px}
.team-role{font-size:11px;color:#a32bc7;font-weight:850;display:block;line-height:1.4;min-height:31px}
.team-copy p{font-size:11.5px;line-height:1.75;color:#796f81;margin:11px 0 0}
.partners{background:#f8f4fb;padding-top:82px;padding-bottom:97px}
.partners .section-center{margin-bottom:35px}
.partners-grid{max-width:760px;margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:23px}
.partner{min-height:169px;background:#fff;border:1px solid #e8dced;border-radius:15px;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:23px;padding:21px;text-align:center}
.partner-label{font-weight:850;color:#96879e;font-size:10px;letter-spacing:1.1px}
.itau-mark{font-weight:1000;color:#fff;font-family:'Arial Rounded MT Bold',Arial,sans-serif;letter-spacing:-4px;background:#fa5c20;border-radius:22px;font-size:40px;line-height:1.05;padding:7px 21px 11px}
.itau-mark span{font-size:24px;letter-spacing:-2px}
.diversidade-mark{display:flex;align-items:center;gap:10px;text-align:left;color:#2e174b;font-size:13px;line-height:1.1}
.diversidade-mark .plus{font-weight:800;color:#f1862e;font-size:54px;line-height:1}
.diversidade-mark strong{display:block;color:#7233c1;font-size:20px}
.final-cta{background:radial-gradient(circle at 80% 40%,#6f2498 0,#371451 45%,#26103f 100%);padding:69px 0 77px;color:#fff}
.final-inner{display:flex;align-items:center;justify-content:space-between;gap:40px}
.final-inner>div{max-width:750px}
.section-tag.light{color:#fad7ff}
.section-tag.light>span{background:#fb88d9}
.final-cta h2{font-size:clamp(35px,3.5vw,48px);line-height:1.12;letter-spacing:-1.6px;margin-bottom:18px}
.final-cta p{font-size:15px;color:#d9c9e4;margin:0}
.final-button{display:inline-flex;white-space:nowrap;gap:30px;align-items:center;background:#fff;color:#4c185f;padding:17px 22px;border-radius:9px;font-weight:900;font-size:13px}
.final-button span{font-size:20px}
footer{background:#1b0b2c;color:#bca8d1;padding:34px 0}
.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:22px;flex-wrap:wrap}
.footer-brand{display:flex;flex-direction:column;gap:5px}.footer-brand strong{color:#fff;font-size:13px;letter-spacing:.6px}.footer-brand span{font-size:11px}
.footer-links{display:flex;gap:22px;flex-wrap:wrap}.footer-links a{font-size:12px;color:#d4c7df}.footer-links a:hover{color:#fff}
.footer-inner>p{font-size:11px;color:#9783a8;margin:0}
/* Privacy */
.privacy-header{padding:34px 0}
.back-link{font-size:13px;font-weight:800;color:#8935b4}
.privacy-page{max-width:780px;padding:55px 0 90px}
.privacy-page h1{font-size:clamp(42px,5vw,65px);letter-spacing:-2.5px;line-height:1.1;margin-bottom:14px}
.privacy-page .privacy-updated{font-size:12px;color:#9a8fa0;margin-bottom:36px}
.privacy-page h2{font-size:20px;letter-spacing:-.5px;margin:36px 0 9px}
.privacy-page p{font-size:15px;line-height:1.86;color:#695a74}
.privacy-page p a{color:#9221c4;text-decoration:underline}
.privacy-cta{display:inline-flex;margin-top:30px}
/* Admin */
.admin-body{background:radial-gradient(circle at 30% 0,#f9eaff,#f8f4fb 48%,#eee1f8)}
.login-shell{width:min(520px,calc(100% - 32px));margin:75px auto 90px}
.login-shell>.back-link{display:inline-block;margin-bottom:23px}
.login-card{background:#fff;border:1px solid #eddfef;border-radius:22px;padding:45px 45px 40px;box-shadow:var(--shadow)}
.admin-symbol{display:grid;place-items:center;width:62px;height:62px;background:#f3e3fa;border-radius:19px;font-size:31px;margin-bottom:25px}
.login-card h1{font-size:41px;letter-spacing:-1.8px;line-height:1.15;margin-bottom:15px}
.login-card>p{font-size:14px;color:#7f7188;line-height:1.8;margin-bottom:31px}
.login-card label{font-size:12px;font-weight:800;display:block;margin-bottom:9px}
.login-card input{margin-bottom:18px}
.login-card .btn-primary{width:100%}
.login-card small{display:block;color:#9a8fa0;text-align:center;margin-top:25px}
.dashboard-body{background:#f7f4fa}
.dashboard-header{background:#fff;border-bottom:1px solid #e9e2ee}
.dashboard-nav{min-height:80px;display:flex;justify-content:space-between;align-items:center}
.dash-brand{display:flex;align-items:center;font-size:27px;gap:13px}
.dash-brand span{display:block;font-size:13px;line-height:1.1;letter-spacing:-.3px;font-weight:900;color:#842cbd}
.dash-brand strong{display:block;color:#2d143e}
.dashboard-actions{display:flex;align-items:center;gap:25px}
.dashboard-actions>a{font-weight:750;color:#7e528e;font-size:12px}
.logout-btn{border:1px solid #ddcde8;background:white;color:#794c91;padding:11px 19px;border-radius:9px;font-size:12px;font-weight:850}
.dashboard-main{padding-top:55px;padding-bottom:85px}
.dash-title{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:33px}
.dash-title h1{font-size:clamp(36px,3.4vw,49px);letter-spacing:-2px;margin-bottom:10px}
.dash-title p{color:#85758b;font-size:13px;margin:0}
.export-button{white-space:nowrap;min-width:190px}
.stats-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px;margin-bottom:33px}
.stat-card{background:#fff;border:1px solid #ebe1f0;border-radius:15px;min-height:153px;padding:25px 25px 22px;box-shadow:0 6px 18px #32184809}
.stat-card>span{font-size:12px;font-weight:800;color:#6b5b77;display:block}
.stat-card strong{display:block;font-size:43px;letter-spacing:-2px;margin:7px 0 4px;color:#27113d}
.stat-card small{font-size:11px;color:#9b90a1}
.stat-card.purple{background:#55207c;border-color:#55207c}
.stat-card.purple>span,.stat-card.purple strong{color:white}.stat-card.purple small{color:#e0c9ee}
.table-panel{background:white;border:1px solid #e9e1ed;border-radius:17px;overflow:hidden;box-shadow:0 9px 32px #27113d0a}
.table-top{padding:30px 29px 17px}
.table-top h2{font-size:20px;letter-spacing:-.5px;margin-bottom:5px}
.table-top p{font-size:12px;color:#988c9e;margin:0}
.filter-bar{padding:0 29px 26px;display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.filter-bar input{max-width:450px;flex:1 1 260px}
.filter-bar select{max-width:215px;flex:1 1 170px}
.small-btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid #d9c4e9;border-radius:8px;padding:11px 14px;color:#673289;background:#f7effc;font-size:11px;font-weight:850;white-space:nowrap}
.small-btn:hover{background:#eeddf6}
.filter-btn{height:47px;padding-inline:23px;background:#56207e;color:white;border-color:#56207e}
.filter-btn:hover{background:#71339e}
.clear-link{font-size:12px;font-weight:800;color:#9b6aae}
.table-scroll{width:100%;overflow-x:auto}
.table-scroll table{width:100%;border-collapse:collapse;min-width:910px;text-align:left}
.table-scroll thead{background:#f8f3fb}
.table-scroll th{font-size:10px;text-transform:uppercase;letter-spacing:1px;color:#9883a6;font-weight:900;padding:17px 20px}
.table-scroll td{padding:19px 20px;font-size:12px;color:#63516b;vertical-align:middle;border-top:1px solid #efeaf2}
.table-scroll td a{color:#6b2b9c}
.person-name{font-size:12px;font-weight:850;color:#32194c;display:block;margin-bottom:4px}
.person-date{font-size:11px;color:#9c90a2;display:block;margin-top:5px;white-space:nowrap}
.status-badge{display:inline-block;border-radius:99px;padding:7px 10px;font-size:10px;white-space:nowrap;font-weight:850}
.status-novo{color:#8b37ba;background:#f1e5fb}.status-em_contato{color:#83600e;background:#fff0c9}.status-aprovado{color:#197d5a;background:#dff6e9}.status-arquivado{color:#777;background:#eeeeee}
.status-form{display:flex;gap:7px;align-items:center}
.status-form select{max-width:123px;border:1px solid #e6daed;border-radius:7px;padding:9px 4px;font-size:10px;color:#594466;background:#fff}
.status-form button{padding:9px 11px;font-size:10px}
.delete-btn{font-size:10px;font-weight:850;color:#c03960;background:#fff0f3;border:1px solid #facbdb;border-radius:7px;padding:10px}
.delete-btn:hover{background:#ffe0e8}
.empty-state{text-align:center!important;color:#a092a6!important;padding:40px!important}
.pagination{display:flex;justify-content:flex-end;align-items:center;gap:14px;padding:20px 29px;color:#95869e;font-size:11px;border-top:1px solid #eee7f1}
.dashboard-note{font-size:12px;color:#81718a;line-height:1.7;margin-top:22px}
.dash-footer{font-size:11px;text-align:center;color:#a092ab;padding:0 0 40px}
@media(max-width:1100px){.container{width:min(var(--container),calc(100% - 48px))}.hero-grid{gap:36px;grid-template-columns:1fr 420px}.hero h1{font-size:62px}.signup-card{padding-inline:30px}.nav-links{gap:19px}.team-grid{gap:15px}.team-copy{padding:20px 15px}.team-role{min-height:42px}.intro-grid{gap:55px}}
@media(max-width:850px){.nav-links{display:none}.mobile-nav-cta{display:inline-flex;gap:11px;align-items:center;border-radius:9px;background:#31144a;color:white;padding:12px 16px;font-size:12px;font-weight:850}.hero{padding:65px 0 111px}.hero-grid{grid-template-columns:1fr;gap:57px}.hero-content{max-width:700px}.hero h1{max-width:670px;font-size:clamp(48px,8.5vw,74px)}.signup-wrap{width:min(550px,100%);margin-inline:auto}.rainbow-brush{display:none}.intro-grid{grid-template-columns:1fr;gap:34px}.benefits-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.team-role{min-height:unset}.statement-inner{flex-wrap:wrap}.statement .sparkle{display:none}.statement p{flex-basis:60%}.final-inner{align-items:flex-start;flex-direction:column}.stats-grid{grid-template-columns:repeat(2,1fr)}.dashboard-header .dashboard-nav{min-height:70px}}
@media(max-width:560px){html{scroll-padding-top:75px}.container{width:calc(100% - 36px)}.nav-inner{min-height:70px}.brand-symbol{width:45px;height:45px}.brand-type strong{font-size:13px}.brand-type small{font-size:6px;letter-spacing:1px}.mobile-nav-cta{font-size:10px;padding:11px 12px}.hero{padding:48px 0 88px}.kicker{font-size:9px;letter-spacing:1.3px;margin-bottom:19px}.hero h1{font-size:clamp(45px,11.3vw,60px);letter-spacing:-2.7px;margin-bottom:21px}.hero-lead{font-size:17px}.hero-description{font-size:13px}.hero-points{gap:8px}.hero-points span{padding:8px 10px;font-size:10px}.signup-card{padding:29px 23px 25px;border-radius:17px}.signup-card h2{font-size:30px}.card-step{font-size:8px}.form-deco{display:none}.hero-cut{height:45px}.section{padding:73px 0}.intro{padding-top:75px}.section h2{font-size:37px;letter-spacing:-1.6px}.intro-copy{padding-left:20px}.intro-copy p{font-size:13px}.section-center{margin-bottom:36px}.benefits-grid,.team-grid,.partners-grid{grid-template-columns:1fr}.benefit-image{height:205px}.benefit-body h3{min-height:0}.team-grid{max-width:380px;margin-inline:auto;gap:22px}.portrait{aspect-ratio:1.1}.team-copy{padding:21px 23px}.team-copy p{font-size:12px}.statement{padding:42px 0}.statement-inner{display:block}.statement p{font-size:23px;margin-bottom:25px}.partners-grid{max-width:320px}.final-cta{padding:55px 0}.final-cta h2{font-size:37px}.final-button{width:100%;justify-content:space-between}.footer-inner{flex-direction:column;align-items:flex-start;gap:23px}.footer-links{gap:15px}.login-shell{margin:38px auto 60px}.login-card{padding:33px 22px}.login-card h1{font-size:36px}.dashboard-nav{gap:10px}.dash-brand{font-size:20px}.dash-brand span{font-size:10px}.dashboard-actions{gap:10px}.dashboard-actions>a{display:none}.dashboard-main{padding-top:38px}.dash-title{display:block}.dash-title h1{font-size:38px}.dash-title .export-button{margin-top:20px;max-width:230px}.stats-grid{gap:10px}.stat-card{min-height:132px;padding:19px}.stat-card strong{font-size:38px}.table-top{padding:22px 16px}.filter-bar{padding:0 16px 20px}.filter-bar input,.filter-bar select{max-width:100%;flex-basis:100%}.pagination{flex-wrap:wrap;justify-content:center}.privacy-page{padding-top:35px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Oficial: identidade visual e logos institucionais fornecidas pelo Orgulho */
.brand-official-logo{display:block;width:225px;max-width:100%;height:auto;object-fit:contain}
.topbar .nav-links{gap:24px}
.footer-brand img{width:200px;max-width:100%;height:auto;display:block;filter:brightness(0) invert(1)}
.footer-brand span{color:#cba9de}
.institutions-section{background:#f8f5fb;overflow:hidden;padding-top:82px;padding-bottom:88px;border-top:1px solid #efe3f6}
.institutions-header{display:flex;justify-content:space-between;align-items:center;gap:32px;margin-bottom:38px}
.institutions-header>div{max-width:730px}
.institutions-header h2{font-size:clamp(36px,4vw,53px);letter-spacing:-2.2px;line-height:1.12;margin-bottom:16px}
.institutions-header p{font-size:15px;line-height:1.7;color:#75677f;max-width:550px;margin:0}
.institutions-header-symbol{width:125px;height:125px;display:block;opacity:.22;transform:rotate(-7deg);flex-shrink:0}
.institutions-header-symbol img{width:100%;height:100%;object-fit:contain}
.institutions-carousel{position:relative;width:100%;overflow:hidden;mask-image:linear-gradient(90deg,transparent 0%,#000 5%,#000 95%,transparent 100%);-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 5%,#000 95%,transparent 100%);padding:8px 0 18px}
.institutions-track{display:flex;width:max-content;align-items:stretch;animation:institutions-marquee 65s linear infinite;will-change:transform}
.institutions-group{display:flex;gap:18px;flex:none;padding-right:18px}
.institution-card{flex:0 0 188px;width:188px;display:flex;flex-direction:column;gap:8px;background:#fff;border:1px solid #e8dbef;border-radius:16px;padding:13px 12px 14px;box-shadow:0 7px 22px rgba(69,24,96,.055)}
.institution-card-image{width:100%;height:90px;display:flex;align-items:center;justify-content:center}
.institution-card-image img{width:100%;height:100%;object-fit:contain;display:block}
.institution-card-category{text-align:center;font-size:10px;line-height:1.25;color:#744a87;letter-spacing:.4px;font-weight:800;margin:auto 0 0}
.institutions-carousel:hover .institutions-track,.institutions-carousel:focus-within .institutions-track{animation-play-state:paused}
@keyframes institutions-marquee{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.institutions-footnote{display:flex;align-items:flex-start;gap:10px;color:#74647e;font-size:12px;line-height:1.6;margin-top:21px}
.partner-accent-dot{flex:0 0 8px;width:8px;height:8px;background:#cc1aff;transform:rotate(45deg);margin-top:5px}
@media(max-width:850px){.institutions-header-symbol{width:100px;height:100px}.institutions-track{animation-duration:58s}}
@media(max-width:560px){.brand-official-logo{width:162px}.institutions-section{padding-top:66px;padding-bottom:62px}.institutions-header{margin-bottom:27px}.institutions-header h2{font-size:37px}.institutions-header p{font-size:13px}.institutions-header-symbol{display:none}.institutions-carousel{mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}.institution-card{flex-basis:155px;width:155px;min-height:140px}.institution-card-image{height:85px}.institutions-group{gap:12px;padding-right:12px}}
@media(prefers-reduced-motion:reduce){.institutions-track{animation:none;transform:none}.institutions-carousel{overflow-x:auto;scrollbar-width:thin;mask-image:none;-webkit-mask-image:none}.institutions-group[aria-hidden="true"]{display:none}}
.footer-brand img{box-sizing:content-box;background:#fff;filter:none;border-radius:7px;padding:7px}


/* Contatos oficiais, ODS e segunda etapa do cadastro (2026-10-13). */
.oe-ods-section{padding:64px 0 68px;background:#fff;text-align:center;border-top:1px solid #f0e6f8}
.oe-ods-section h2{font-size:clamp(24px,3.2vw,37px);line-height:1.2;letter-spacing:-1px;margin:0 0 30px;color:#9728c7}
.oe-ods-grid{display:flex;flex-wrap:wrap;gap:15px;align-items:center;justify-content:center}
.oe-ods-tile{width:min(114px,22vw);aspect-ratio:1;border-radius:8px;overflow:hidden;box-shadow:0 5px 17px rgba(36,16,68,.1);display:flex;align-items:center;justify-content:center;background:#f8f1fc;color:#55256f;font-weight:700;font-size:14px}
.oe-ods-tile img{display:block;width:100%;height:100%;object-fit:contain}
.oe-ods-tile span{padding:8px}
.oe-footer-contacts{padding-top:23px;padding-bottom:32px;border-top:1px solid rgba(255,255,255,.15);margin-top:22px}
.oe-footer-contacts h2{font-size:14px;color:#fff;margin:0 0 14px}
.oe-social-list{display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:10px}
.oe-footer-contacts .oe-social-list{justify-content:flex-start}
.oe-social-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;font-size:12px;font-weight:650;padding:9px 12px;border-radius:9px;border:1px solid rgba(255,255,255,.22);color:#fff;min-height:42px;transition:background .2s,transform .2s}
.oe-social-link:hover{background:rgba(255,255,255,.14);transform:translateY(-2px)}
.oe-social-link:focus-visible,.oe-modal a:focus-visible,.oe-modal button:focus-visible{outline:3px solid #60d9eb;outline-offset:3px}
.oe-social-link svg{height:17px;width:17px;flex:none;fill:currentColor}
.oe-social-link svg[fill="none"]{fill:none}
.oe-modal[hidden]{display:none}
.oe-modal{position:fixed;inset:0;z-index:9999;display:grid;place-items:center;overflow-y:auto;background:rgba(22,7,37,.75);padding:20px}
.oe-modal-open{overflow:hidden}
.oe-modal-panel{position:relative;max-width:640px;width:100%;max-height:calc(100vh - 44px);overflow-y:auto;padding:40px 35px 32px;border:1px solid #e7daf1;border-radius:18px;background:#fff;box-shadow:0 22px 75px rgba(17,5,35,.35);color:#2d173f}
.oe-modal-panel h2{font-size:clamp(25px,4vw,36px);line-height:1.18;letter-spacing:-1.1px;color:#9c2acb;margin:0 32px 19px 0}
.oe-modal-panel p{font-size:15px;line-height:1.7;margin:0 0 22px}
.oe-modal-close{position:absolute;right:18px;top:15px;border:0;border-radius:50%;background:#f6e7fb;color:#592b70;width:38px;height:38px;font-size:27px;line-height:1}
.oe-modal-cta{display:flex;align-items:center;justify-content:center;gap:10px;background:linear-gradient(105deg,#974dda,#cc1aff);color:#fff;font-size:15px;font-weight:800;text-align:center;border-radius:12px;padding:18px;margin:8px 0 30px}
.oe-modal-cta:hover{filter:brightness(1.08)}
.oe-modal-social-title{font-weight:800!important;margin-bottom:12px!important}
.oe-social-list-modal{justify-content:flex-start;gap:8px}
.oe-social-list-modal .oe-social-link{border-color:#e7d7ef;color:#67327c;background:#fbf7fd;font-size:11px;padding:8px 10px}
.oe-social-list-modal .oe-social-link:hover{background:#f1e2f8}
.oe-modal-mail{margin:22px 0 0!important;font-size:13px!important;overflow-wrap:anywhere}
.oe-modal-mail a{color:#8739c3;text-decoration:underline}
@media(max-width:620px){.oe-modal-panel{padding:34px 19px 25px}.oe-modal{padding:12px}.oe-social-link span{font-size:11px}.oe-footer-contacts .oe-social-list{justify-content:center}.oe-footer-contacts h2{text-align:center}.oe-ods-section{padding:45px 0}.oe-ods-grid{gap:9px}.oe-ods-tile{width:calc((100% - 27px)/4)}}
@media(prefers-reduced-motion:reduce){.oe-social-link{transition:none}}

/* Revisão visual do rodapé: marca à esquerda, ícones ao lado, privacidade à direita. */
footer .footer-inner{
  display:grid;
  grid-template-columns:minmax(175px,220px) minmax(0,1fr) minmax(125px,210px);
  grid-template-areas:
    "brand socials copyright"
    "brand socials privacy";
  align-items:center;column-gap:28px;row-gap:8px;
}
footer .footer-brand{grid-area:brand}
footer .oe-footer-social{
  grid-area:socials;
  display:flex;justify-content:flex-start;align-items:center;
  flex-wrap:wrap;gap:8px;
}
footer .oe-footer-social .oe-social-link{
  width:36px;height:36px;min-width:36px;min-height:36px;
  padding:0;border:1px solid rgba(255,255,255,.18);
  border-radius:10px;background:rgba(255,255,255,.04);
  color:#fff;transition:background .2s ease,transform .2s ease;
}
footer .oe-footer-social .oe-social-link svg{width:19px;height:19px}
footer .oe-footer-social .oe-social-link:hover{background:rgba(255,255,255,.16);transform:translateY(-2px)}
footer .oe-footer-social .oe-social-link:focus-visible,footer .oe-footer-privacy:focus-visible{outline:3px solid #f97bd1;outline-offset:3px}
footer .footer-inner>p{grid-area:copyright;text-align:right;line-height:1.5}
footer .oe-footer-privacy{grid-area:privacy;justify-self:end;align-self:end;color:#fff;font-size:12px;font-weight:700;text-decoration:underline;text-underline-offset:4px}
footer .oe-footer-privacy:hover{color:#f97bd1}
.oe-ods-tile{width:min(128px,22vw);background:#fff}
.oe-ods-tile img{width:100%;height:100%;object-fit:contain}
@media(max-width:900px){
  footer .footer-inner{
    grid-template-columns:minmax(160px,220px) minmax(0,1fr);
    grid-template-areas:"brand socials" "copyright privacy";
    align-items:center;row-gap:17px;
  }
  footer .footer-inner>p{text-align:left}
}
@media(max-width:540px){
  footer .footer-inner{
    grid-template-columns:minmax(0,1fr) auto;
    grid-template-areas:"brand brand" "socials socials" "copyright privacy";
    column-gap:12px;row-gap:17px;
    align-items:start;
  }
  footer .oe-footer-social{gap:7px}
  footer .oe-footer-social .oe-social-link{width:34px;height:34px;min-width:34px;min-height:34px}
  footer .footer-inner>p{font-size:10px}
  footer .oe-footer-privacy{font-size:11px;align-self:start}
  .oe-ods-tile{width:calc((100% - 27px)/4)}
}

/* Título acima das logos sociais, mantendo-as ao lado da marca. */
footer .oe-footer-social .oe-footer-social-heading{
  flex:0 0 100%;width:100%;
  margin:0 0 4px;padding:0;
  color:#fff;font-size:14px;font-weight:700;
  line-height:1.35;text-align:left;
}
