:root{
--navy:#12254d;--navy2:#091936;--green:#07552f;--green2:#138844;
--gold:#f5a623;--orange:#ffad25;--white:#fff;--off:#f7f5ef;
--ink:#12213b;--muted:#6c7480;--line:#dfe3e8;--max:1220px
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Poppins,sans-serif;color:var(--ink);background:var(--off);line-height:1.6;overflow-x:hidden}
a{text-decoration:none;color:inherit}img{display:block;width:100%}
button,input,textarea{font:inherit}.container{width:min(calc(100% - 40px),var(--max));margin:auto}
.section{padding:110px 0}.section-tag{font-size:12px;font-weight:500;letter-spacing:.16em;color:var(--gold);margin-bottom:16px}
.header{position:fixed;z-index:100;top:0;left:0;width:100%;background:rgba(9,25,54,.93);backdrop-filter:blur(14px);transition:.3s}
.header.scrolled{box-shadow:0 10px 35px #0003}.header-inner{height:70px;max-width:1400px;padding:0 35px;margin:auto;display:flex;align-items:center;gap:30px}
.mini-brand{display:flex;flex-direction:column;line-height:1;color:#fff;min-width:145px}.mini-brand span{font-size:18px;font-weight:900;letter-spacing:-.04em}.mini-brand b{color:var(--gold)}.mini-brand small{font-size:9px;letter-spacing:.13em;color:var(--gold);margin-top:6px}
.desktop-nav{display:flex;align-items:center;justify-content:center;gap:22px;flex:1}.desktop-nav a{font-size:12px;font-weight:800;color:#fff;opacity:.88;transition:.2s}.desktop-nav a:hover{color:var(--gold)}
.header-cta{background:var(--gold);color:var(--navy);font-size:11px;font-weight:900;padding:14px 19px;letter-spacing:.08em}.menu-button{display:none;background:none;border:0}.menu-button i{display:block;width:25px;height:2px;background:#fff;margin:5px}.mobile-nav{display:none}

.hero{min-height:850px;background:var(--navy);position:relative;overflow:hidden;color:#fff;padding-top:82px}
.hero-bg-grid{position:absolute;inset:0;background-image:linear-gradient(#fff04 1px,transparent 1px),linear-gradient(90deg,#fff04 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(90deg,#000,transparent 80%);opacity:.4}
.hero-curves{position:absolute;inset:0;overflow:hidden}.curve{position:absolute;border-radius:50%;transform:rotate(-42deg)}.curve-green{width:1100px;height:500px;left:-600px;top:-250px;border:45px solid var(--green)}.curve-gold{width:1080px;height:480px;left:-600px;top:-220px;border:34px solid var(--gold)}.curve-white{width:1060px;height:460px;left:-600px;top:-195px;border:17px solid #fff}
.hero-content{width:min(calc(100% - 40px),1200px);margin:auto;min-height:720px;display:grid;grid-template-columns:1.05fr .95fr;align-items:center;position:relative;z-index:2}
.hero-copy{padding-top:40px}.hero-kicker{font-size:12px;font-weight:900;letter-spacing:.18em;color:#fff;opacity:.8;margin-bottom:20px}
.hero h1{font-family:Poppins,sans-serif;font-size:clamp(58px,7vw,100px);line-height:.9;font-weight:600;letter-spacing:-.025em}.hero h1 em{color:var(--gold);font-style:italic}
.candidate-lockup{margin-top:35px}.candidate-name{font-size:clamp(52px,6vw,82px);font-weight:900;letter-spacing:-.06em;line-height:.9}.candidate-name strong{color:var(--gold)}.candidate-handle{font-size:clamp(21px,2.2vw,30px);font-weight:800;margin-top:10px;letter-spacing:-.03em}
.candidate-number{margin-top:25px;display:flex;align-items:center;gap:17px;flex-wrap:wrap}.candidate-number strong{font-size:clamp(58px,7vw,94px);line-height:.8;color:var(--gold);letter-spacing:.08em;font-weight:900}.candidate-number span{font-size:18px;letter-spacing:.1em}.candidate-number b{font-size:24px;color:#54b847;font-weight:900;font-style:italic}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:35px}.button{border:0;display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 23px;font-size:15px;font-weight:600;letter-spacing:.09em;cursor:pointer;transition:.25s}.button:hover{transform:translateY(-3px)}.button-gold{background:var(--gold);color:var(--navy)}.button-line{border:1px solid #fff8;color:#fff;background:#fff0}.button-line:hover{background:#fff;color:var(--navy)}.button-dark{background:var(--navy);color:#fff}
.hero-person{height:720px;align-self:end;position:relative;display:flex;align-items:flex-end;justify-content:center}.hero-person img{width:100%;max-width:600px;height:auto;max-height:720px;object-fit:contain;object-position:center bottom;position:relative;z-index:2;border:0;filter:none}.person-glow{position:absolute;width:550px;height:550px;border-radius:50%;background:#fff1;bottom:30px;right:0}.person-caption{position:absolute;right:0;bottom:35px;z-index:3;display:flex;gap:7px;flex-direction:column;align-items:flex-end}.person-caption span{font-size:9px;font-weight:900;letter-spacing:.13em;padding:6px 9px;background:#12254dcc}
.hero-bottom{position:absolute;z-index:4;bottom:0;left:0;right:0;height:60px;background:var(--green);display:flex;justify-content:center;align-items:center;gap:18px;font-size:12px;font-weight:900;letter-spacing:.12em}.hero-bottom .line{height:1px;width:60px;background:#fff8}

.intro-strip{background:var(--gold);color:var(--navy);padding:34px 0}.strip-inner{display:grid;grid-template-columns:1fr 1.4fr auto;gap:45px;align-items:center}.strip-title small{font-size:9px;font-weight:900;letter-spacing:.2em}.strip-title strong{display:block;font-size:29px;line-height:1.05;margin-top:3px}.strip-inner p{font-size:16px;font-weight:600;max-width:560px}.arrow-link{font-size:12px;font-weight:900;letter-spacing:.1em;white-space:nowrap}.arrow-link span{font-size:17px;margin-left:6px}

.story{background:var(--off)}.story-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px;align-items:center}.story-photo{position:relative;padding:0 25px 25px 0}.story-photo img{height:620px;object-fit:cover;position:relative;z-index:2}.photo-frame{position:absolute;inset:25px 0 0 25px;border:10px solid var(--gold)}.photo-label{position:absolute;z-index:3;left:0;bottom:5px;background:var(--green);color:#fff;padding:11px 15px;font-size:9px;font-weight:900;letter-spacing:.13em}.story-copy h2,.section-intro h2,.formation h2,.leadership h2,.news h2,.response h2,.join h2{font-family:Poppins,sans-serif;font-size:clamp(40px,6vw,78px);line-height:.9;font-weight:600;letter-spacing:-.025em}.story-copy h2 span,.section-intro h2 span,.formation h2 span,.leadership h2 span,.news h2 span,.response h2 span,.join h2 span{color:var(--green)}.story-copy>p:not(.section-tag){font-size:16px;color:#000;max-width:640px;margin-top:18px}.story-stats{display:grid;grid-template-columns:repeat(3,1fr);margin-top:35px;border-top:1px solid var(--line);padding-top:25px;gap:20px}.story-stats strong{display:block;font-size:35px;color:var(--green);line-height:1}.story-stats span{font-size:11px;font-weight:800;color:#000;display:block;margin-top:5px}

.timeline-section{background:#fff}.section-intro{max-width:700px;margin-bottom:65px}.timeline{max-width:900px;margin:auto;position:relative}.timeline:before{content:"";position:absolute;left:115px;top:0;bottom:0;width:2px;background:var(--gold)}.timeline-item{display:grid;grid-template-columns:90px 50px 1fr;gap:25px;padding:0 0 42px}.timeline-item time{text-align:right;color:var(--green);font-weight:400;font-size:13px}.timeline-item .dot{width:13px;height:13px;border-radius:50%;background:var(--gold);border:3px solid #fff;box-shadow:0 0 0 1px var(--gold);z-index:2;margin:3px auto}.timeline-item h3{font-size:22px}.timeline-item p{font-size:15px;color:#000;margin-top:5px}

.formation{background:var(--navy);color:#fff}.formation-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:80px;align-items:center}.formation h2{color:#fff}.formation h2 span{color:var(--gold)}.formation-copy>p:not(.section-tag){color:#fffc;max-width:530px;margin-top:20px;font-size:16px}.formation-list{margin-top:35px}.formation-list div{display:flex;align-items:center;gap:18px;border-top:1px solid #fff2;padding:14px 0}.formation-list b{color:var(--gold);font-size:10px}.formation-list span{font-size:15px;font-weight:700}.formation-image{position:relative}.formation-image img{height:580px;object-fit:cover;filter:saturate(.85)}.image-note{position:absolute;left:-25px;bottom:25px;background:var(--gold);color:var(--navy);padding:15px 18px;font-size:9px;font-weight:900;line-height:1.3}

.leadership{background:var(--gold)}.leadership-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.leadership h2{color:var(--navy)}.leadership h2 span{color:var(--green)}.leadership-copy>p:not(.section-tag){font-size:16px;color:#000000;margin-top:18px;max-width:600px}.quote-card{background:var(--navy);color:#fff;padding:60px 50px;position:relative;min-height:330px;display:flex;flex-direction:column;justify-content:center}.quote-mark{font-family:serif;color:var(--gold);font-size:100px;line-height:.4;position:absolute;top:30px}.quote-card p{font-family:Poppins,sans-serif;font-size:42px;line-height:1}.quote-card strong{font-family:Poppins,sans-serif;font-size:44px;line-height:.95;color:var(--gold);margin-top:7px}

.results{background:#fff}.centered{margin-inline:auto;text-align:center}.result-mosaic{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-auto-rows:280px;gap:8px}.result-card{position:relative;padding:30px;color:#fff;background:linear-gradient(180deg,#0000 20%,#000b),var(--bg) center/cover;display:flex;flex-direction:column;justify-content:flex-end;overflow:hidden;transition:.3s}.result-card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#0000,#0009);z-index:0}.result-card>*{position:relative;z-index:1}.result-card:hover{transform:translateY(-5px)}.result-card span{position:absolute;top:25px;left:25px;color:var(--gold);font-size:11px;font-weight:900}.result-card h3{font-size:27px;text-transform:uppercase;line-height:1}.result-card p{font-size:14px;margin-top:5px;max-width:310px}.card-large{grid-row:span 2}.result-green{background:var(--green)}.result-gold{background:var(--gold);color:var(--navy)}.result-gold span{color:var(--navy)}

.concept{background:var(--gold);overflow:hidden;text-align:center;position:relative}.concept-inner{position:relative;z-index:2}.concept .section-tag{color:var(--navy)}.concept h2{font-family:Poppins,sans-serif;font-size:clamp(45px,8vw,108px);line-height:.82;color:var(--navy);font-weight:600}.concept h2 em{color:var(--green);font-style:italic}.concept-points{display:flex;justify-content:center;gap:0;margin-top:50px}.concept-points div{padding:12px 25px;border-left:1px solid #12254d55;font-size:12px}.concept-points div:last-child{border-right:1px solid #12254d55}.concept-points b{display:block}.concept-points span{opacity:.75}.concept-curves{position:absolute;width:900px;height:300px;border:35px solid var(--green);border-radius:50%;left:-300px;bottom:-250px;transform:rotate(-18deg)}

.platform{background:var(--navy);color:#fff}.platform h2{color:#fff}.platform h2 span{color:var(--gold)}.platform-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:7px}.platform-card{height:270px;padding:25px;position:relative;overflow:hidden;background:var(--bg,#1b355f);background-image:linear-gradient(180deg,#0000,#000b),var(--bg);background-size:cover;background-position:center;transition:.3s}.platform-card:before{content:"";position:absolute;inset:0;background:#12254d66;transition:.3s}.platform-card:hover{transform:translateY(-6px)}.platform-card:hover:before{background:#07552fbb}.platform-card>*{position:relative;z-index:1}.platform-card span{font-size:10px;font-weight:900;color:var(--gold)}.platform-card h3{position:absolute;bottom:25px;left:25px;font-size:24px;line-height:1.05}.p1{background-image:url('../images/bandeira-cidade.jpg')}.p2{background-image:url('../images/bandeira-saude.jpg')}.p3{background-image:url('../images/bandeira-mulheres.jpg')}.p4{background-image:url('../images/bandeira-meio.jpg')}.p5{background-image:url('../images/bandeira-emprego.jpg')}.p6{background-image:url('../images/bandeira-educacao.jpg')}.p7{background-image:url('../images/bandeira-servidores.jpg')}.p8{background-image:url('../images/bandeira-gestao.jpg')}

.news{background:var(--off)}.section-heading-row{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.news-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.news-card{background:#fff}.news-image{overflow:hidden}.news-image img{height:250px;object-fit:cover;transition:.5s}.news-card:hover img{transform:scale(1.04)}.news-content{padding:22px}.news-content small{font-size:12px;font-weight:600;color:var(--green);letter-spacing:.12em}.news-content h3{font-family:Poppins,sans-serif;font-size:29px;line-height:1;margin-top:8px}.news-content p{font-size:14px;color:#333;margin-top:10px}.news-content a{display:inline-block;margin-top:20px;font-size:13px;font-weight:500;color:var(--green)}

.response{background:var(--navy);color:#fff}.response-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:start}.response h2{font-size:clamp(58px,7vw,90px)}.response h2 span{color:var(--gold)}.response-copy>p:not(.section-tag){color:#fffc;font-size:16px;margin-top:22px;max-width:540px}.response-badge{display:inline-flex;flex-direction:column;margin-top:35px;padding:14px 17px;border-left:4px solid var(--gold);background:#fff0}.response-badge strong{color:var(--gold)}.response-badge span{font-size:12px;letter-spacing:.1em;margin-top:3px}.campaign-form{background:#fff;padding:35px;color:var(--navy)}.campaign-form label{font-size:15px;font-weight:500;display:block;margin-bottom:17px}.campaign-form input,.campaign-form textarea{display:block;width:100%;border:1px solid #96a5bf;background:#fff;color:var(--navy);padding:12px;margin-top:6px;outline:0}.campaign-form input:focus,.campaign-form textarea:focus{border-color:var(--green)}.campaign-form textarea{min-height:95px;resize:vertical}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:15px}.campaign-form small{display:block;color:#000;font-size:15px;margin-bottom:18px}

.join{background:var(--gold);position:relative;overflow:hidden}.join-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:start;position:relative;z-index:2}.join h2{font-size:clamp(60px,7vw,90px)}.join h2 span{color:var(--green)}.join-copy>p:last-child{margin-top:20px}.join-form{display:flex;flex-direction:column;gap:8px}.check{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid #12254d8c;font-size:15px;font-weight:400;cursor:pointer}.check input{width:17px;height:17px;accent-color:var(--green)}.join-form input:not([type=checkbox]){border:1px solid #12254db8;background:#fff8;padding:14px;outline:0}.join-shape{position:absolute;width:700px;height:350px;border:35px solid var(--green);border-radius:50%;right:-350px;bottom:-250px}

.footer{background:var(--navy2);color:#fff;padding:70px 0 20px}.footer-top{display:flex;justify-content:space-between;gap:50px;padding-bottom:45px}.footer-brand strong{font-size:29px;letter-spacing:-.05em}.footer-brand b{color:var(--gold)}.footer-brand>span{display:block;color:var(--gold);font-size:18px;font-weight:900;letter-spacing:.18em}.footer-brand p{margin-top:18px;color:#fff9;font-size:12px}.footer-social{text-align:right}.footer-social>strong{color:var(--gold);font-size:20px}.footer-social div{display:flex;gap:16px;margin-top:14px}.footer-social a{font-size:17px;font-weight:300}.footer-legal{border-top:1px solid #fff2;padding:22px 0;display:flex;gap:20px;flex-wrap:wrap;color:#fff7;font-size:9px}.footer-legal p{width:100%;color:var(--gold);font-weight:700}.footer-bottom{border-top:1px solid #fff2;padding-top:17px;display:flex;justify-content:space-between;color:#fff;font-size:14px}

.reveal{opacity:0;transform:translateY(25px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}

@media(max-width:1050px){.desktop-nav{gap:11px}.desktop-nav a{font-size:8px}.hero-content{grid-template-columns:1fr .85fr}.platform-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:820px){.desktop-nav,.header-cta{display:none}.menu-button{display:block;margin-left:auto}.mobile-nav{display:flex;flex-direction:column;position:absolute;top:70px;right:0;width:min(340px,90vw);padding:20px 28px;background:var(--navy2);transform:translateX(100%);transition:.3s}.mobile-nav.open{transform:none}.mobile-nav a{padding:13px 0;color:#fff;border-bottom:1px solid #fff1;font-size:18px;font-weight:500}.hero{min-height:950px}.hero-content{grid-template-columns:1fr;align-content:center}.hero-person{height:420px;position:absolute;right:-70px;bottom:50px;width:55%;opacity:.75}.hero-copy{position:relative;z-index:5}.story-grid,.formation-grid,.leadership-grid,.response-grid,.join-grid{grid-template-columns:1fr;gap:55px}.result-mosaic{grid-template-columns:1fr 1fr}.card-large{grid-row:span 1}.news-grid{grid-template-columns:1fr}.strip-inner{grid-template-columns:1fr;gap:15px}.concept-points{flex-direction:column;align-items:center}.concept-points div{border:0!important}.footer-top{flex-direction:column}.footer-social{text-align:left}.timeline:before{left:88px}.timeline-item{grid-template-columns:70px 35px 1fr}}
@media(max-width:560px){.container{width:calc(100% - 30px)}.header-inner{padding:0 15px;height:70px}.mobile-nav{top:70px}.hero{padding-top:70px;min-height:900px}.hero-content{width:calc(100% - 30px)}.hero h1{font-size:59px}.candidate-name{font-size:55px}.candidate-number strong{font-size:58px}.candidate-number span{font-size:12px}.hero-person{width:72%;right:-65px;bottom:45px}.person-caption{display:none}.hero-bottom{font-size:7px;gap:8px}.hero-bottom .line{width:25px}.section{padding:75px 0}.story-photo img,.formation-image img{height:430px}.story-stats{gap:10px; text-align: center}.story-stats strong{font-size:27px}.story-stats span{font-size:8px}.timeline-section .section-intro{margin-bottom:45px}.timeline:before{left:5px}.timeline-item{grid-template-columns:18px 1fr;gap:15px}.timeline-item time{grid-column:2;text-align:left}.timeline-item .dot{grid-column:1;grid-row:1 / span 2}.timeline-item>div:last-child{grid-column:2}.result-mosaic,.platform-grid{grid-template-columns:1fr}.result-card,.platform-card{height:250px}.form-two{grid-template-columns:1fr}.campaign-form{padding:22px}.footer-bottom{flex-direction:column;gap:5px}}

/* ===== LEITURA E HIERARQUIA VISUAL ===== */
body{font-size:16px}
.header-inner{height:92px}
.header-logo{width:145px;height:auto;max-height:72px;object-fit:contain;object-position:left center}
.desktop-nav a{font-size:12px;letter-spacing:.025em}
.header-cta{font-size:11px;padding:15px 21px}
.hero h1{font-weight:800}.hero-kicker{font-size:13px}
.candidate-handle{font-size:32px}
.candidate-number span{font-size:22px;font-weight:600}
.hero-bottom{height:64px;font-size:12px;letter-spacing:.12em}
.person-caption span{font-size:10px}
.story-copy>p:not(.section-tag),.formation-copy>p:not(.section-tag),.leadership-copy>p:not(.section-tag),.response-copy>p:not(.section-tag),.join-copy>p:last-child,.timeline-item p,.result-card p,.news-content p,.platform-card p{font-size:16px;line-height:1.75}
.story-copy h2,.section-intro h2,.formation h2,.leadership h2,.news h2,.response h2,.join h2{font-weight:800}
.section-tag{font-size:13px}.story-stats span{font-size:14px;font-weight:400}
.timeline-item h3{font-size:23px;font-weight:700}.timeline-item time{font-size:15px}.timeline-item{padding-bottom:48px}
.formation-list span{font-size:15px}.result-card h3{font-size:31px;font-weight:800}.result-card p{font-size:15px}
.platform-card h3{font-size:25px;font-weight:800}.news-content h3{font-family:Poppins,sans-serif;font-size:24px;font-weight:800;line-height:1.15}.news-content p{font-size:14px}
.quote-card p,.quote-card strong{font-family:Poppins,sans-serif;font-weight:800}.quote-card p{font-size:38px}.quote-card strong{font-size:38px}
.concept-points div{font-size:21px}.footer-brand p{font-size:15px}.footer-legal{font-size:13px}
.intro-strip{padding:42px 0}.strip-title small{font-size:11px}.strip-title strong{font-size:28px}.strip-inner p{font-size:16px;line-height:1.65}
.hero-person{height:clamp(520px,72vh,760px)}.hero-person img{max-width:640px;width:min(100%,640px)}
.person-glow{width:min(45vw,560px);height:min(45vw,560px)}
@media(max-width:820px){
 .header-inner{height:82px}.header-logo{width:125px}.hero{padding-top:82px}.hero-bottom{height:58px;font-size:10px}
 .hero-person{height:430px;width:58%;right:-45px;bottom:45px}.candidate-handle{font-size:25px}.candidate-number span{font-size:18px}
 .story-copy>p:not(.section-tag),.formation-copy>p:not(.section-tag),.leadership-copy>p:not(.section-tag),.response-copy>p:not(.section-tag),.join-copy>p:last-child,.timeline-item p,.result-card p,.news-content p,.platform-card p{font-size:15px}
 .timeline-item h3{font-size:22px}
}
@media(max-width:560px){
 .header-inner{height:72px}.header-logo{width:108px}.hero{padding-top:72px}.hero h1{font-size:54px}.hero-kicker{font-size:10px}
 .candidate-handle{font-size:22px}.candidate-number strong{font-size:57px}.candidate-number span{font-size:14px}
 .hero-bottom{font-size:8px;letter-spacing:.08em}.hero-bottom .line{width:20px}.hero-person{height:370px;width:68%;right:-45px;bottom:45px;opacity:.92}
 .intro-strip{padding:32px 0}.strip-title strong{font-size:24px}.strip-inner p{font-size:15px}
 .story-copy>p:not(.section-tag),.formation-copy>p:not(.section-tag),.leadership-copy>p:not(.section-tag),.response-copy>p:not(.section-tag),.join-copy>p:last-child,.timeline-item p,.result-card p,.news-content p,.platform-card p{font-size:15px}
 .story-stats span{font-size:10px}.timeline-item h3{font-size:18px}.timeline-item time{font-size:13px}
}

/* ===== AJUSTE FINAL: HEADER COMPACTO + LEITURA ===== */
:root{--navy:#192442;--navy2:#101d37}
.header-inner{height:70px!important;gap:26px!important}
.mini-brand{min-width:150px;gap:3px}
.mini-brand img{display:block;width:142px;height:auto;max-height:31px;object-fit:contain;object-position:left center}
.mini-brand small{font-size:9px!important;line-height:1;color:var(--gold);margin-top:3px!important}
.desktop-nav{gap:20px!important}
.desktop-nav a{font-size:11px!important;white-space:nowrap}
.header-cta{font-size:10px!important;padding:12px 17px!important}

/* tipografia uniforme */
body{font-family:Poppins,sans-serif!important}
.hero h1,.story-copy h2,.section-intro h2,.formation h2,.leadership h2,.news h2,.response h2,.join h2,.quote-card p,.quote-card strong,.concept h2,.candidate-name{font-family:Poppins,sans-serif!important}

/* faixa inferior do hero */
.hero-bottom{height:58px!important;font-size:12px!important;letter-spacing:.12em!important}
.hero-bottom .line{width:75px!important}

/* faixa amarela */
.intro-strip{padding:38px 0!important}
.strip-title strong{font-size:30px!important;line-height:1.03!important}
.strip-inner p{font-size:16px!important;line-height:1.65!important}
.arrow-link{font-size:12px!important}

/* textos gerais */
.story-copy>p:not(.section-tag),
.formation-copy>p:not(.section-tag),
.leadership-copy>p:not(.section-tag),
.response-copy>p:not(.section-tag),
.join-copy>p:last-child{font-size:16px!important;line-height:1.75!important}
.story-stats span{font-size:14px!important}
.timeline-item h3{font-size:22px!important}
.timeline-item p{font-size:17px!important;line-height:1.7!important}
.timeline-item time{font-size:20px!important}
.result-card p,.news-content p,.platform-card p{font-size:15px!important;line-height:1.65!important}
.result-card h3{font-size:29px!important}
.platform-card h3{font-size:23px!important}
.news-content h3{font-family:Poppins,sans-serif!important;font-size:23px!important}
.section-tag{font-size:15px!important}

/* foto oficial em alta resolução, integrada ao azul da identidade */
.hero-person{height:720px!important;overflow:hidden}
.hero-person img{width:min(100%,620px)!important;max-width:620px!important;height:auto!important;max-height:none!important;object-fit:contain!important;filter:none!important}
.person-glow{display:none!important}

@media(max-width:1050px){
 .desktop-nav{gap:13px!important}
 .desktop-nav a{font-size:10px!important}
 .header-cta{padding:11px 14px!important}
}
@media(max-width:820px){
 .header-inner{height:68px!important}
 .mobile-nav{top:68px!important}
 .mini-brand img{width:125px;max-height:29px}
 .hero{padding-top:68px!important}
 .hero-person{height:430px!important;width:58%!important;right:-45px!important;bottom:45px!important;opacity:1!important}
 .hero-person img{width:100%!important}
 .hero-bottom{height:54px!important;font-size:10px!important}
 .strip-title strong{font-size:28px!important}
 .timeline-item p{font-size:15px!important}
}
@media(max-width:560px){
 .header-inner{height:66px!important}
 .mobile-nav{top:66px!important}
 .mini-brand img{width:108px;max-height:25px}
 .mini-brand small{font-size:12px!important}
 .hero{padding-top:66px!important}
 .hero-person{height:370px!important;width:68%!important;right:-45px!important;bottom:42px!important}
 .hero-bottom{height:50px!important;font-size:8px!important;letter-spacing:.07em!important}
 .hero-bottom .line{width:22px!important}
 .strip-title strong{font-size:25px!important}
 .strip-inner p{font-size:15px!important}
 .story-copy>p:not(.section-tag),.formation-copy>p:not(.section-tag),.leadership-copy>p:not(.section-tag),.response-copy>p:not(.section-tag),.join-copy>p:last-child{font-size:15px!important}
 .timeline-item h3{font-size:19px!important}
 .timeline-item p{font-size:14px!important}
 .result-card p,.news-content p,.platform-card p{font-size:14px!important}
}

/* ===== AJUSTE DO HERO PARA O FORMATO DA ARTE ===== */
.hero{
  height:711px;
  min-height:711px;
  padding-top:70px;
}
.hero-content{
  width:min(calc(100% - 80px),1320px);
  min-height:0;
  height:641px;
  grid-template-columns:1.05fr .95fr;
  align-items:center;
}
.hero-copy{
  padding-top:0;
  transform:translateY(-2px);
}
.hero-kicker{
  font-size:11px;
  margin-bottom:14px;
}
.hero h1{
  font-size:clamp(54px,5.4vw,82px);
  line-height:.92;
}
.candidate-lockup{margin-top:24px}
.candidate-name{font-size:clamp(50px,4.8vw,72px)}
.candidate-handle{font-size:clamp(19px,1.8vw,25px);margin-top:8px}
.candidate-number{margin-top:22px;gap:15px}
.candidate-number strong{font-size:clamp(55px,5.2vw,80px)}
.candidate-number span{font-size:16px}
.candidate-number b{font-size:21px}
.hero-actions{margin-top:26px; margin-bottom: 140px;}
.hero-person{
  height:641px;
  align-self:center;
  display:flex;
  align-items:center;
  justify-content:center;
}
.photo-placeholder{
  width:min(34vw,500px);
  height:min(34vw,500px);
  min-width:340px;
  min-height:340px;
  max-width:500px;
  max-height:500px;
  border-radius:50%;
  background:rgba(255,255,255,.055);
  border:1px solid rgba(255,255,255,.035);
  display:flex;
  align-items:flex-end;
  justify-content:center;
  overflow:hidden;
  position:relative;
}
.photo-placeholder:after{
  content:"";
  position:absolute;
  inset:8%;
  border-radius:50%;
  border:1px solid rgba(255,255,255,.035);
}
.photo-placeholder span{
  position:relative;
  z-index:2;
  margin-bottom:25px;
  color:rgba(255,255,255,.18);
  font-size:9px;
  font-weight:800;
  letter-spacing:.16em;
}
.hero-person .person-caption{
  right:0;
  bottom:35px;
}
.hero-bottom{
  height:48px;
  font-size:13px;
  gap:22px;
}
.hero-bottom .line{width:75px}

/* menu permanece compacto */
.header-inner{height:70px}
.desktop-nav{gap:19px}
.desktop-nav a{font-size:11px}

@media(max-width:1050px){
  .hero{height:720px;min-height:720px}
  .hero-content{height:650px}
  .hero-person{height:650px}
  .photo-placeholder{min-width:300px;min-height:300px}
}
@media(max-width:820px){
  .hero{
    height:auto;
    min-height:820px;
    padding-top:70px;
  }
  .hero-content{
    height:auto;
    min-height:750px;
  }
  .hero-person{
    height:380px;
    position:absolute;
    right:-45px;
    bottom:45px;
    width:50%;
    opacity:.9;
  }
  .photo-placeholder{
    width:310px;
    height:310px;
    min-width:0;
    min-height:0;
  }
  .hero-copy{position:relative;z-index:5}
}
@media(max-width:560px){
  .hero{min-height:790px}
  .hero-content{min-height:720px}
  .hero-person{
    width:58%;
    height:310px;
    right:-35px;
    bottom:38px;
  }
  .photo-placeholder{width:235px;height:235px}
  .hero h1{font-size:51px}
  .candidate-name{font-size:48px}
  .candidate-number strong{font-size:55px}
  .hero-bottom{font-size:7px;height:42px}
  .hero-bottom .line{width:25px}
}


/* =========================================================
   HERO FINAL — COMPOSIÇÃO COMPACTA E CONTROLADA
   ========================================================= */
.header{height:72px}
.header-inner{height:72px;max-width:1380px;padding:0 28px;gap:28px}
.mini-brand{width:155px;min-width:155px}
.mini-brand img{width:150px;height:auto;max-height:46px;object-fit:contain;object-position:left center}
.mini-brand small{font-size:8px;margin-top:3px}
.desktop-nav{gap:22px}
.desktop-nav a{font-size:12px;line-height:1.1}
.header-cta{padding:13px 18px;font-size:10px}

.hero{height:710px;min-height:710px;padding-top:72px}
.hero-bg-grid{display:none}
.hero-content{width:min(calc(100% - 56px),1240px);height:638px;min-height:638px;grid-template-columns:58% 42%;align-items:center}
.hero-copy{padding-top:0;max-width:720px}
.hero-kicker{font-size:11px;margin-bottom:18px}
.hero h1{font-size:clamp(58px,5.1vw,78px);line-height:.88;max-width:650px}
.candidate-lockup{margin-top:20px}
.candidate-name{font-size:clamp(48px,4.7vw,66px)}
.candidate-handle{font-size:22px;margin-top:5px}
.candidate-number{margin-top:17px;gap:13px}
.candidate-number strong{font-size:clamp(58px,5.8vw,76px)}
.candidate-number span{font-size:17px;letter-spacing:.04em}
.candidate-number b{font-size:22px}
.hero-actions{margin-top:20px}
.hero-actions .button{min-height:48px}

.hero-person{height:638px;align-self:end;display:flex;align-items:center;justify-content:center;position:relative}
.photo-placeholder{width:min(32vw,500px);height:min(32vw,500px);min-width:330px;min-height:330px;border-radius:50%;background:#ffffff08;border:1px solid #ffffff12;box-shadow:inset 0 0 0 1px #ffffff08;display:grid;place-items:center;position:relative}
.photo-placeholder:before{content:"";position:absolute;inset:10px;border:1px solid #ffffff0d;border-radius:50%}
.photo-placeholder span{font-size:10px;font-weight:800;letter-spacing:.12em;color:#ffffff45}
.hero-person img{display:none}
.person-caption{right:15px;bottom:55px}
.person-caption span{font-size:9px;padding:5px 8px}

.hero-bottom{height:50px;font-size:10px;letter-spacing:.11em;gap:16px}
.hero-bottom .line{width:50px}

@media(max-width:1100px){
  .desktop-nav{gap:14px}
  .desktop-nav a{font-size:10px}
  .hero-content{grid-template-columns:56% 44%}
  .hero h1{font-size:clamp(52px,5.8vw,74px)}
  .candidate-name{font-size:clamp(46px,5vw,64px)}
  .candidate-number strong{font-size:64px}
}

@media(max-width:820px){
  .header{height:70px}
  .header-inner{height:70px;padding:0 16px}
  .mini-brand{width:145px;min-width:145px}
  .mini-brand img{width:140px;max-height:42px}
  .mobile-nav{top:70px}

  .hero{height:auto;min-height:0;padding-top:70px}
  .hero-curves{display:none}
  .hero-content{width:100%;height:auto;min-height:0;display:flex;flex-direction:column;align-items:stretch;padding:0 15px 34px}
  .hero-person{order:1;width:100%;height:250px;min-height:250px;margin:0 0 6px;display:flex;align-items:center;justify-content:center}
  .photo-placeholder{width:210px;height:210px;min-width:210px;min-height:210px}
  .person-caption{display:none}
  .hero-copy{order:2;padding:0 15px;max-width:none}
  .hero-kicker{font-size:10px;margin-bottom:15px}
  .hero h1{font-size:clamp(50px,14vw,68px);line-height:.87}
  .candidate-lockup{margin-top:27px}
  .candidate-name{font-size:clamp(47px,13vw,62px)}
  .candidate-handle{font-size:19px}
  .candidate-number strong{font-size:clamp(54px,15vw,70px)}
  .candidate-number span{font-size:14px}
  .candidate-number b{font-size:19px}
  .hero-actions{flex-direction:column;align-items:flex-start;margin-top:26px}
  .hero-actions .button{width:170px}
  .hero-bottom{position:relative;bottom:auto;height:48px;font-size:7px;gap:9px}
  .hero-bottom .line{width:24px}
}

@media(max-width:560px){
  .hero-person{height:225px;min-height:225px}
  .photo-placeholder{width:190px;height:190px;min-width:190px;min-height:190px}
  .hero h1{font-size:clamp(48px,14.5vw,65px)}
  .candidate-name{font-size:clamp(45px,13vw,59px)}
  .candidate-number strong{font-size:clamp(51px,15vw,66px)}
}


/* =========================================================
   FOTO OFICIAL NO CÍRCULO DO HERO
   ========================================================= */
.photo-placeholder{
  background:#fff;
  border:7px solid #fff;
  overflow:hidden;
  box-shadow:0 0 0 1px rgba(255,255,255,.18), 0 18px 45px rgba(0,0,0,.14);
  margin-bottom: 140px;
}
.photo-placeholder:before{display:none!important}
.photo-placeholder img{
  display:block!important;
  width:100%!important;
  height:100%!important;
  max-width:none!important;
  max-height:none!important;
  object-fit:cover!important;
  object-position:center 17%!important;
  filter:none!important;
  position:relative!important;
  z-index:1!important;
}
.photo-placeholder span{display:none!important}

@media(max-width:820px){
  .photo-placeholder{
    border-width:5px;
  }
  .photo-placeholder img{
    object-position:center 15%!important;
  }
}

/* FOTO DA FORMAÇÃO: enquadramento da nova imagem */
.formation-image img{object-position:center center;}
@media(max-width:820px){.formation-image img{object-position:center center;}}


/* ===== GRID FINAL: EXPERIÊNCIA QUE VIROU RESULTADO ===== */
.result-mosaic{
  grid-template-columns:1.3fr 1fr 1fr;
  grid-template-rows:280px 280px;
  grid-auto-rows:280px;
  gap:8px;
}
.result-mosaic .card-large:first-child{
  grid-column:1;
  grid-row:1 / span 2;
}
.result-mosaic .result-card:nth-child(2){grid-column:2;grid-row:1}
.result-mosaic .result-card:nth-child(3){grid-column:3;grid-row:1}
.result-mosaic .result-card:nth-child(4){grid-column:2;grid-row:2}
.result-mosaic .result-card:nth-child(5){grid-column:3;grid-row:2}
.result-mosaic .result-card:nth-child(6){
  grid-column:1;
  grid-row:3;
}

@media(max-width:820px){
  .result-mosaic{grid-template-columns:1fr 1fr;grid-template-rows:auto;grid-auto-rows:250px}
  .result-mosaic .card-large:first-child,
  .result-mosaic .result-card:nth-child(2),
  .result-mosaic .result-card:nth-child(3),
  .result-mosaic .result-card:nth-child(4),
  .result-mosaic .result-card:nth-child(5),
  .result-mosaic .result-card:nth-child(6){grid-column:auto;grid-row:auto}
}

@media(max-width:560px){
  .result-mosaic{grid-template-columns:1fr;grid-auto-rows:250px}
}

/* ===== CORREÇÃO DA GRID DE REALIZAÇÕES =====
   O CREA-DF fecha a terceira linha da composição inteira,
   evitando o card órfão e mantendo todos os blocos alinhados. */
.result-mosaic{
  grid-template-columns:1.3fr 1fr 1fr;
  grid-template-rows:280px 280px 280px;
  grid-auto-rows:280px;
  gap:8px;
}
.result-mosaic .card-large:first-child{
  grid-column:1;
  grid-row:1 / span 2;
}
.result-mosaic .result-card:nth-child(2){
  grid-column:2;
  grid-row:1;
}
.result-mosaic .result-card:nth-child(3){
  grid-column:3;
  grid-row:1;
}
.result-mosaic .result-card:nth-child(4){
  grid-column:2;
  grid-row:2;
}
.result-mosaic .result-card:nth-child(5){
  grid-column:3;
  grid-row:2;
}
.result-mosaic .result-card:nth-child(6){
  grid-column:1 / -1;
  grid-row:3;
}

@media(max-width:820px){
  .result-mosaic{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
    grid-auto-rows:250px;
  }
  .result-mosaic .card-large:first-child,
  .result-mosaic .result-card:nth-child(2),
  .result-mosaic .result-card:nth-child(3),
  .result-mosaic .result-card:nth-child(4),
  .result-mosaic .result-card:nth-child(5),
  .result-mosaic .result-card:nth-child(6){
    grid-column:auto;
    grid-row:auto;
  }
}

@media(max-width:560px){
  .result-mosaic{
    grid-template-columns:1fr;
    grid-auto-rows:250px;
  }
}

/* ===== GRID FINAL DEFINITIVA: TODOS OS CARDS IGUAIS ===== */
.result-mosaic{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  grid-template-rows:repeat(2, 280px);
  grid-auto-rows:280px;
  gap:8px;
}

.result-mosaic .result-card,
.result-mosaic .card-large{
  grid-column:auto !important;
  grid-row:auto !important;
  height:auto;
  min-height:0;
}

@media(max-width:820px){
  .result-mosaic{
    grid-template-columns:repeat(2, 1fr);
    grid-template-rows:auto;
    grid-auto-rows:250px;
  }

  .result-mosaic .result-card,
  .result-mosaic .card-large{
    grid-column:auto !important;
    grid-row:auto !important;
  }
}

@media(max-width:560px){
  .result-mosaic{
    grid-template-columns:1fr;
    grid-auto-rows:250px;
  }
}

/* ===== REALIZAÇÕES: CARDS COM ÍCONES BRANCOS ===== */
.result-mosaic{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  grid-template-rows:repeat(2,280px);
  grid-auto-rows:280px;
  gap:8px;
}
.result-mosaic .result-card,
.result-mosaic .card-large{
  grid-column:auto !important;
  grid-row:auto !important;
  height:auto;
  min-height:0;
  position:relative;
  overflow:hidden;
  background-image:none !important;
  color:#fff !important;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:30px;
}
.result-mosaic .result-card::before{display:none !important;}
.result-mosaic .result-card .result-number{
  position:absolute;
  top:28px;
  left:30px;
  color:#ffab19 !important;
  font-size:12px;
  font-weight:900;
  line-height:1;
}
.result-mosaic .result-icon{
  position:absolute;
  top:auto;
  bottom:112px;
  left:50%;
  transform:translateX(-50%);
  width:88px;
  height:88px;
  color:#fff !important;
  opacity:.95;
  transition:transform .35s ease, opacity .35s ease;
}
.result-mosaic .result-icon svg{width:100%;height:100%;display:block;}
.result-mosaic .result-card:hover .result-icon{
  transform:translateX(-50%) scale(1.08);
  opacity:1;
}
.result-mosaic .result-card h3{
  position:relative;
  z-index:2;
  margin:0 0 5px;
  color:#fff !important;
  font-size:29px;
  line-height:1;
  text-transform:uppercase;
}
.result-mosaic .result-card p{
  position:relative;
  z-index:2;
  margin:0;
  color:#fff !important;
  font-size:15px;
  line-height:1.5;
  max-width:330px;
}
.result-metro{background:#102a5c !important;}
.result-ciclovias{background:#c68a13 !important;}
.result-slu{background:#006b3c !important;}
.result-habitacao{background:#006b3c !important;}
.result-ceb{background:#1b3b78 !important;}
.result-crea{background:#c68a13 !important;}

@media(max-width:820px){
  .result-mosaic{grid-template-columns:repeat(2,1fr);grid-template-rows:auto;grid-auto-rows:250px;}
  .result-mosaic .result-card,.result-mosaic .card-large{grid-column:auto !important;grid-row:auto !important;}
}
@media(max-width:560px){
  .result-mosaic{grid-template-columns:1fr;grid-auto-rows:250px;}
  .result-mosaic .result-card{padding:24px;}
  .result-mosaic .result-card .result-number{top:23px;left:24px;}
  .result-mosaic .result-icon{width:72px;height:72px;bottom:105px;}
  .result-mosaic .result-card h3{font-size:25px;}
  .result-mosaic .result-card p{font-size:14px;}
}

/* =========================================================
   BANDEIRAS — IMAGENS INDIVIDUAIS COM OVERLAY DA IDENTIDADE
   ========================================================= */
.platform-card{
  position:relative;
  isolation:isolate;
  background-size:cover;
  background-position:center;
  background-repeat:no-repeat;
  color:#fff;
}

.platform-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:var(--card-overlay);
  opacity:.72;
  transition:opacity .3s ease;
}

.platform-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:0;
  background:linear-gradient(180deg,rgba(0,0,0,.08) 0%,rgba(0,0,0,.58) 100%);
  pointer-events:none;
}

.platform-card:hover::before{
  opacity:.62;
}

.platform-card > *{
  position:relative;
  z-index:2;
}

.platform-card span{
  color:var(--gold);
}

.platform-card h3{
  color:#fff;
}

/* Cores intercaladas para evitar cores iguais lado a lado */
.platform-card.p1{
  --card-overlay:#07552f;
  background-image:url('../images/cidades-e-infra.jpg');
}

.platform-card.p2{
  --card-overlay:#c68a13;
  background-image:url('../images/saude.jpg');
}

.platform-card.p3{
  --card-overlay:#12254d;
  background-image:url('../images/mulheres.jpg');
}

.platform-card.p4{
  --card-overlay:#07552f;
  background-image:url('../images/meio-ambiente.jpg');
}

.platform-card.p5{
  --card-overlay:#c68a13;
  background-image:url('../images/emprego-e-empreendedorismo.jpg');
  background-color:#c68a13;
}

.platform-card.p6{
  --card-overlay:#12254d;
  background-image:url('../images/educacao-ciencia-e-tecnologia.jpg');
}

.platform-card.p7{
  --card-overlay:#07552f;
  background-image:url('../images/profissionais-e-servidores.jpg');
}

.platform-card.p8{
  --card-overlay:#c68a13;
  background-image:url('../images/gestao-publica.jpg');
}

@media(max-width:820px){
  .platform-card::before{opacity:.72;}
}


/* ===== STATUS DOS FORMULÁRIOS ===== */
.form-status{
  min-height:18px;
  margin:0 0 14px;
  font-size:12px;
  font-weight:700;
  line-height:1.4;
}
.form-status.success{color:#07552f}
.form-status.error{color:#b42318}
.campaign-form button:disabled,
.join-form button:disabled{opacity:.65;cursor:wait;transform:none}

/* =========================================================
   HERO MOBILE — FOTO ACIMA DO TEXTO, SEM ESPAÇO VAZIO
   ========================================================= */
@media (max-width:820px){
  .hero{
    height:auto!important;
    min-height:0!important;
    padding-top:70px!important;
    overflow:hidden;
  }

  .hero-content{
    width:100%!important;
    height:auto!important;
    min-height:0!important;
    padding:0 15px 30px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }

  .hero-person{
    order:1!important;
    position:relative!important;
    top:auto!important;
    right:auto!important;
    bottom:auto!important;
    left:auto!important;
    width:100%!important;
    height:320px!important;
    min-height:320px!important;
    margin:0!important;
    padding:0!important;
    opacity:1!important;
    display:flex!important;
    align-items:flex-start!important;
    justify-content:center!important;
    overflow:visible!important;
  }

  .photo-placeholder{
    width:300px!important;
    height:300px!important;
    min-width:300px!important;
    min-height:300px!important;
    max-width:300px!important;
    max-height:300px!important;
    margin:0!important;
    border:5px solid #fff!important;
    border-radius:50%!important;
    background:#fff!important;
    box-shadow:0 8px 24px rgba(0,0,0,.14)!important;
  }

  .photo-placeholder img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    object-position:center 15%!important;
  }

  .hero-copy{
    order:2!important;
    position:relative!important;
    z-index:5!important;
    padding:0 15px!important;
    margin:0!important;
    max-width:none!important;
  }

  .hero-kicker{
    margin:0 0 15px!important;
    font-size:10px!important;
    line-height:1.2!important;
  }

  .hero h1{
    margin:0!important;
    font-size:clamp(48px,14.5vw,50px)!important;
    line-height:.88!important;
    letter-spacing:-.045em!important;
  }

  .candidate-lockup{margin-top:25px!important}
  .candidate-name{font-size:clamp(45px,13vw,59px)!important}
  .candidate-handle{font-size:18px!important;margin-top:7px!important}
  .candidate-number{margin-top:18px!important}
  .candidate-number strong{font-size:clamp(51px,15vw,66px)!important}
  .candidate-number span{font-size:14px!important}
  .candidate-number b{font-size:18px!important}

  .hero-actions{
    margin-top:24px!important;
    margin-bottom:0!important;
    flex-direction:column!important;
    align-items:flex-start!important;
  }

  .hero-actions .button{width:235px!important}

  .hero-bottom{
    position:relative!important;
    bottom:auto!important;
    height:48px!important;
    font-size:13px!important;
    gap:9px!important;
  }

  .hero-bottom .line{width:24px!important}
  .person-caption{display:none!important}
}

@media (max-width:560px){
  .hero-person{
    height:315px!important;
    min-height:315px!important;
  }

  .photo-placeholder{
    width:300px!important;
    height:300px!important;
    min-width:300px!important;
    min-height:300px!important;
    max-width:300px!important;
    max-height:300px!important;
    flex:0 0 300px!important;
  }
}


/* =========================================================
   CORREÇÃO FINAL — CARDS DE REALIZAÇÕES NO MOBILE
   Evita que o conteúdo do Metrô-DF e dos demais cards
   fique cortado ou sobreposto.
   ========================================================= */
@media (max-width:560px){
  .result-mosaic{
    display:grid!important;
    grid-template-columns:1fr!important;
    grid-auto-rows:250px!important;
    gap:8px!important;
  }

  .result-mosaic .result-card,
  .result-mosaic .card-large{
    width:100%!important;
    height:250px!important;
    min-height:250px!important;
    max-height:none!important;
    padding:24px!important;
    overflow:hidden!important;
    position:relative!important;
    display:flex!important;
    flex-direction:column!important;
    justify-content:flex-end!important;
  }

  .result-mosaic .result-card .result-number{
    top:23px!important;
    left:24px!important;
    z-index:4!important;
  }

  .result-mosaic .result-icon{
    top:50px!important;
    bottom:auto!important;
    left:50%!important;
    width:68px!important;
    height:68px!important;
    transform:translateX(-50%)!important;
    z-index:3!important;
  }

  .result-mosaic .result-card:hover .result-icon{
    transform:translateX(-50%)!important;
  }

  .result-mosaic .result-card h3{
    position:relative!important;
    z-index:4!important;
    margin:0 0 5px!important;
  }

  .result-mosaic .result-card p{
    position:relative!important;
    z-index:4!important;
    margin:0!important;
  }
}
