@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@500;600;700;800&display=swap');

:root { --home-ink:#172820; --home-green:#0f5c42; --home-deep:#073b2b; --home-lime:#d6ee6b; --home-cream:#f5f2e9; --home-orange:#ef8b4a; --home-line:rgba(23,40,32,.14); }
.home-page { overflow:hidden; color:var(--home-ink); background:#fff; font-family:'DM Sans',sans-serif; }
.home-page *, .home-page *::before, .home-page *::after { box-sizing:border-box; }
.home-container { width:min(1180px,calc(100% - 40px)); margin-inline:auto; }
.home-page h1,.home-page h2,.home-page h3 { font-family:'Manrope',sans-serif; letter-spacing:-.035em; }
.home-page h2 { max-width:760px; margin:.3rem 0 1rem; font-size:clamp(2rem,4.2vw,4.15rem); line-height:1.05; }
.home-page p { line-height:1.65; }
.home-kicker { margin:0; color:var(--home-green); font-size:.72rem; font-weight:800; letter-spacing:.14em; text-transform:uppercase; }
.home-button { display:inline-flex; min-height:50px; padding:.8rem 1.3rem; border:1px solid var(--home-green); border-radius:999px; align-items:center; justify-content:center; color:#fff; background:var(--home-green); font-weight:700; text-decoration:none; transition:.25s ease; }
.home-button:hover,.home-button:focus-visible { color:#fff; background:var(--home-deep); transform:translateY(-2px); box-shadow:0 10px 24px rgba(7,59,43,.2); }
.home-button--light { color:var(--home-deep); border-color:#fff; background:#fff; }
.home-button--light:hover,.home-button--light:focus-visible { color:var(--home-deep); background:var(--home-lime); border-color:var(--home-lime); }
.home-text-link { display:inline-flex; gap:.55rem; align-items:center; color:#fff; font-weight:700; text-underline-offset:5px; }
.home-text-link span { transition:transform .2s; }.home-text-link:hover span { transform:translateX(4px); }
.home-text-link--dark { color:var(--home-green); }
.home-section-heading { margin-bottom:3rem; }.home-section-heading--center { max-width:760px; margin-inline:auto; text-align:center; }.home-section-heading--center h2 { margin-inline:auto; }.home-section-heading--center>p:last-child { max-width:580px; margin-inline:auto; color:#5b6c63; }
.home-section-heading--split { display:flex; gap:4rem; align-items:end; justify-content:space-between; }.home-section-heading--split>p { max-width:400px; margin-bottom:1.3rem; color:#5b6c63; }

.home-hero { display:grid; position:relative; min-height:100svh; color:#fff; background:linear-gradient(120deg,#3b6a54,#b8a77c); isolation:isolate; place-items:stretch; }
.home-hero__video,.home-hero__backdrop { position:absolute; z-index:-2; inset:0; width:100%; height:100%; object-fit:cover; }
.home-hero__backdrop { z-index:-1; background:linear-gradient(90deg,rgba(4,28,45,.8),rgba(10,28,28,.34) 45%,rgba(55,17,7,.48)),linear-gradient(180deg,rgba(0,0,0,.25) 0%,transparent 30%,rgba(0,0,0,.16) 58%,rgba(3,15,25,.86) 100%); }
.home-hero__content { display:grid; width:min(1440px,calc(100% - 64px)); min-height:100svh; margin-inline:auto; padding:clamp(8.5rem,17vh,11.5rem) 0 clamp(2.2rem,5vh,4.2rem); align-content:end; grid-template-rows:1fr auto; }
.home-hero__identity { display:flex; align-self:center; align-items:center; flex-direction:column; text-align:center; text-shadow:0 3px 18px rgba(0,0,0,.5); }
.home-hero__logo { display:block; width:clamp(150px,13vw,220px); height:auto; margin-bottom:.15rem; filter:drop-shadow(0 10px 22px rgba(0,0,0,.35)); }
.home-hero h1 { max-width:none; margin:-.05em 0 0; color:#fff; font-size:clamp(4.4rem,7.5vw,7.7rem); font-weight:500; letter-spacing:.035em; line-height:.88; }
.home-hero__identity>p { margin:.5rem 0 0; color:#fff; font-size:clamp(1rem,1.65vw,1.65rem); line-height:1.2; }
.home-hero__identity>p strong { color:#fff; background:linear-gradient(90deg,#f4bf19,#ef8b4a 48%,#65c6d4); background-clip:text; font-size:1.08em; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }
.home-hero__divider { display:flex; width:min(270px,55vw); gap:.9rem; align-items:center; margin:1.45rem 0 .35rem; color:#f4bf19; }
.home-hero__divider span { height:2px; flex:1; background:linear-gradient(90deg,#2775b8,#f4bf19,#ef8b4a); opacity:.9; }
.home-hero__divider span:last-child { background:linear-gradient(90deg,#ef8b4a,#07864f,#2775b8); }
.home-hero__divider svg { width:27px; height:27px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.home-hero__identity .home-hero__motto { margin:0; font-size:clamp(.82rem,1vw,1rem); }
.home-hero__pillars { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); margin-top:clamp(1.5rem,4vh,3rem); }
.home-hero__pillar { --pillar-accent:#f4bf19; --pillar-surface:rgba(244,191,25,.17); display:grid; min-width:0; grid-template-columns:76px 1fr; gap:1rem; padding:0 clamp(1rem,2vw,2.1rem); align-items:center; border-right:1px solid rgba(255,255,255,.23); }
.home-hero__pillar,.home-principle,.home-stat,.home-chart-card { color:inherit; text-decoration:none; }
.home-hero__pillar:focus-visible,.home-principle:focus-visible,.home-stat:focus-visible,.home-chart-card:focus-visible { outline:3px solid #f4bf19; outline-offset:4px; }
.home-hero__pillar:nth-child(1) { --pillar-accent:#f4bf19; --pillar-surface:rgba(244,191,25,.18); }
.home-hero__pillar:nth-child(2) { --pillar-accent:#65c6d4; --pillar-surface:rgba(39,117,184,.2); }
.home-hero__pillar:nth-child(3) { --pillar-accent:#ef8b4a; --pillar-surface:rgba(239,139,74,.19); }
.home-hero__pillar:nth-child(4) { --pillar-accent:#63bd72; --pillar-surface:rgba(7,134,79,.2); }
.home-hero__pillar:first-child { padding-left:0; }.home-hero__pillar:last-child { padding-right:0; border-right:0; }
.home-hero__pillar-icon { display:grid; width:72px; aspect-ratio:1; border-radius:20px; color:var(--pillar-accent); background:var(--pillar-surface); box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--pillar-accent) 28%,transparent); place-items:center; backdrop-filter:blur(5px); }
.home-hero__pillar-icon svg { width:46px; height:46px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:2.5; }
.home-hero__pillar strong,.home-hero__pillar small { display:block; }
.home-hero__pillar strong { margin-bottom:.3rem; color:var(--pillar-accent); font-size:.86rem; letter-spacing:.035em; text-transform:uppercase; }
.home-hero__pillar small { color:#fff; font-size:.82rem; line-height:1.65; }

.home-principles { position:relative; padding:clamp(4.5rem,8vw,7rem) 0 clamp(5rem,8vw,7.5rem); background:#fffdf7; }
.home-principles::before,.home-principles::after { position:absolute; top:5%; width:42px; height:82%; border-radius:0 45px 45px 0; background:linear-gradient(180deg,#07864f,#16a17b); content:""; }
.home-principles::before { left:0; }.home-principles::after { right:0; border-radius:45px 0 0 45px; background:linear-gradient(180deg,#f4bf19,#ef8b4a); }
.home-principles .home-section-heading { margin-bottom:1.5rem; }
.home-principles .home-section-heading--center { max-width:920px; }
.home-principles .home-section-heading--center::before,.home-principles .home-section-heading--center::after { display:inline-block; width:140px; height:2px; margin:0 2rem .25rem; background:linear-gradient(90deg,#f4bf19,#07864f,#2775b8); content:""; }
.home-principles .home-section-heading--center::after { background:linear-gradient(90deg,#2775b8,#07864f,#ef8b4a); }
.home-principles .home-kicker { display:inline-block; color:#078064; }
.home-principles h2 { max-width:none; margin:.8rem auto 0; color:#102650; font-size:clamp(2.2rem,4vw,4rem); }
.home-principles__grid { display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(1.5rem,5vw,5.5rem); }
.home-principle { text-align:center; }
.home-principle__media { position:relative; width:100%; max-width:190px; aspect-ratio:.68; margin:0 auto 2.5rem; border-radius:95px; background-image:image-set(url("../../../media/img/optimized/principles-strip-960-iiIDNMT.webp") 1x,url("../../../media/img/optimized/principles-strip-1600-r_jv_Qi.webp") 2x); background-repeat:no-repeat; background-size:400% 100%; box-shadow:0 14px 34px rgba(16,38,80,.12); }
.home-principle__media--1 { background-position:0 center; }.home-principle__media--2 { background-position:33.333% center; }.home-principle__media--3 { background-position:66.666% center; }.home-principle__media--4 { background-position:100% center; }
.home-principle__badge { display:grid; position:absolute; bottom:-32px; left:50%; width:72px; height:72px; border:5px solid #fffdf7; border-radius:50%; color:#fff; background:var(--principle-color); place-content:center; transform:translateX(-50%); box-shadow:0 7px 18px rgba(16,38,80,.16); }
.home-principle:nth-child(1) { --principle-color:#07864f; }.home-principle:nth-child(2) { --principle-color:#b6a900; }.home-principle:nth-child(3) { --principle-color:#e86d25; }.home-principle:nth-child(4) { --principle-color:#176fc0; }
.home-principle__badge strong,.home-principle__badge small { display:block; line-height:1; }.home-principle__badge strong { font-size:1rem; }.home-principle__badge small { margin-top:.28rem; font-size:1.15rem; }
.home-principle h3 { margin:.4rem 0; color:var(--principle-color); font-size:1.2rem; }.home-principle p { max-width:245px; margin:.55rem auto 0; color:#33415e; font-size:.84rem; }
.media-slot { display:grid; position:relative; overflow:hidden; color:#fff; background:linear-gradient(145deg,#6d9b83,#183f32); place-items:center; }.media-slot::after { position:absolute; background:linear-gradient(120deg,transparent,rgba(255,255,255,.2),transparent); content:""; inset:0; transform:translateX(-100%); transition:transform .8s; }.is-visible .media-slot::after,.media-slot:hover::after { transform:translateX(100%); }.media-slot--2 { background:linear-gradient(145deg,#d8bf7e,#58704a); }.media-slot--3 { background:linear-gradient(145deg,#d99161,#60473c); }.media-slot--4 { background:linear-gradient(145deg,#68aaca,#204f67); }

.home-about { position:relative; padding:clamp(4rem,7vw,6.5rem) 0; background:linear-gradient(110deg,#f3faff,#e6f3ff 64%,#fff9e9); overflow:hidden; }.home-about::before { position:absolute; bottom:-70px; left:-55px; width:190px; height:320px; border:1px solid #07864f; border-radius:0 100px 0 0; content:""; opacity:.55; }.home-about::after { position:absolute; right:3%; bottom:8%; width:110px; height:110px; background:radial-gradient(circle,#f4bf19 2px,transparent 3px) 0 0/22px 22px; content:""; opacity:.9; }
.home-about__grid { display:grid; position:relative; z-index:1; grid-template-columns:.82fr 1.18fr; gap:clamp(3rem,6vw,6rem); align-items:center; }
.home-about__content .home-kicker { color:#176fc0; }.home-about__content h2 { color:#102650; font-size:clamp(2.2rem,3.8vw,3.8rem); }.home-about__content h2 span { color:#07864f; background:linear-gradient(90deg,#07864f,#176fc0); background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }.home-about__content>p:not(.home-kicker) { color:#263650; }.home-about__content .home-button { margin-top:1.2rem; background:linear-gradient(90deg,#07864f,#0c9c78); }
.home-about__video { position:relative; min-height:410px; border-radius:1.75rem; background:#176fc0; box-shadow:22px 22px 0 #176fc0; overflow:hidden; }.home-about__video>img { display:block; position:absolute; width:100%; height:100%; object-fit:cover; inset:0; }.home-about__video::after { position:absolute; background:linear-gradient(180deg,transparent 52%,rgba(5,24,58,.93) 80%); content:""; inset:0; pointer-events:none; }.home-about__video>div { position:absolute; z-index:2; right:0; bottom:0; left:0; padding:1.15rem 1.7rem 1.2rem 5.5rem; color:#fff; }.home-about__video>div::before { position:absolute; top:50%; left:1.7rem; width:40px; height:40px; border-radius:50%; background:#f4bf19; content:"▣"; color:#102650; line-height:40px; text-align:center; transform:translateY(-50%); }.home-about__video strong,.home-about__video small { display:block; }.home-about__video small { margin-top:.2rem; color:#f4bf19; }.home-play { display:grid; position:absolute; z-index:3; top:50%; left:50%; width:78px; height:78px; padding-left:6px; border:0; border-radius:50%; color:#102650; background:linear-gradient(135deg,#f4bf19,#d6ee6b); cursor:pointer; place-items:center; transform:translate(-50%,-50%); transition:.25s; }.home-play:hover,.home-play.is-playing { transform:translate(-50%,-50%) scale(1.08); box-shadow:0 0 0 12px rgba(244,191,25,.22); }

.home-impact { position:relative; padding:clamp(4.5rem,8vw,7.5rem) 0; color:#102650; background-image:linear-gradient(rgba(255,255,255,.91),rgba(248,251,249,.86)),image-set(url("../../../media/img/optimized/principles-strip-960-iiIDNMT.webp") 1x,url("../../../media/img/optimized/principles-strip-1600-r_jv_Qi.webp") 2x); background-position:center,66.666% center; background-size:auto,cover; background-repeat:no-repeat; overflow:hidden; }
.home-impact::before { position:absolute; top:16%; right:-55px; width:190px; height:230px; border:2px solid #07864f; border-bottom:0; border-radius:100px 100px 0 0; content:""; opacity:.55; }.home-impact::after { position:absolute; right:2%; bottom:7%; width:100px; height:150px; background:radial-gradient(circle,#176fc0 2px,transparent 3px) 0 0/24px 24px; content:""; }
.home-impact .home-container { position:relative; z-index:1; }.home-impact .home-kicker { color:#078064; }.home-impact .home-section-heading { align-items:center; }.home-impact .home-section-heading h2 { color:#102650; font-size:clamp(2.7rem,5vw,5.2rem); }.home-impact .home-section-heading h2 span { color:#07864f; }.home-impact .home-section-heading>p { max-width:440px; padding-bottom:2rem; color:#263650; border-bottom:2px solid; border-image:linear-gradient(90deg,#07864f 55%,#f4bf19 55%) 1; font-size:1.05rem; }
.home-stats { display:grid; grid-template-columns:repeat(4,1fr); overflow:hidden; margin:3rem 0 2rem; border:1px solid rgba(16,38,80,.12); border-radius:1rem; background:rgba(255,255,255,.72); box-shadow:0 16px 45px rgba(16,38,80,.07); backdrop-filter:blur(12px); }.home-stat { --stat-color:#07864f; display:grid; grid-template-columns:68px 1fr; gap:1rem; padding:1.7rem; align-items:center; border-right:1px solid rgba(16,38,80,.1); text-align:left; }.home-stat:nth-child(2) { --stat-color:#9dbc0d; }.home-stat:nth-child(3) { --stat-color:#ef7100; }.home-stat:nth-child(4) { --stat-color:#0755ae; }.home-stat:last-child { border:0; }.home-stat i { display:grid; width:62px; height:62px; border-radius:50%; color:#fff; background:var(--stat-color); font:normal 2rem 'Manrope'; place-items:center; }.home-stat strong { display:block; color:var(--stat-color); font:700 clamp(2rem,3.5vw,3.5rem) 'Manrope'; letter-spacing:-.07em; line-height:.9; }.home-stat small { font-size:.45em; }.home-stat p { margin:.55rem 0 0; color:#263650; font-size:.78rem; line-height:1.25; }
.home-chart-grid { display:grid; grid-template-columns:1fr 1fr; gap:1rem; }.home-chart-card { display:grid; grid-template-columns:170px 1fr; gap:2rem; padding:1.8rem 2rem; border:1px solid rgba(16,38,80,.1); border-radius:1rem; align-items:center; background:rgba(240,249,244,.87); box-shadow:0 12px 34px rgba(16,38,80,.06); backdrop-filter:blur(12px); }.home-chart-card:nth-child(2) { background:rgba(255,246,233,.9); }.home-chart-card h3 { margin:.65rem 0; color:#102650; font-size:1.4rem; }.home-chart-card ul { display:flex; gap:.5rem .8rem; margin:1rem 0 0; padding:0; flex-wrap:wrap; color:#087052; font-size:.72rem; list-style:none; }.home-chart-card ul li { padding:.38rem .75rem; border-radius:999px; background:rgba(7,134,79,.09); }.home-chart-card:nth-child(2) ul { color:#dc610d; }.home-chart-card:nth-child(2) ul li { background:rgba(239,139,74,.11); }.home-donut { display:grid; position:relative; width:155px; aspect-ratio:1; border-radius:50%; background:conic-gradient(#aee622 0 var(--part-a),#0bbf76 var(--part-a) var(--part-b),#075a46 var(--part-b)); place-items:center; transform:rotate(-70deg); }.home-donut::before { width:62%; aspect-ratio:1; border-radius:50%; background:#f5faf7; content:""; }.home-donut span { position:absolute; color:#10382f; font:700 1.65rem 'Manrope'; transform:rotate(70deg); }.home-donut--orange { background:conic-gradient(#ffd42a 0 var(--part-a),#ffad09 var(--part-a) var(--part-b),#ef6f18 var(--part-b)); }.home-donut--orange::before { background:#fff8ee; }.home-impact__action { display:grid; grid-template-columns:70px 1fr auto; gap:1.2rem; margin:1rem auto 0; padding:1.2rem 2.4rem; align-items:center; border-radius:2.5rem; color:#fff; background:linear-gradient(90deg,#075a46,#007254); box-shadow:0 18px 40px rgba(7,90,70,.2); }.home-impact__action>span { color:#f4bf19; font-size:3rem; text-align:center; }.home-impact__action p { margin:0; }.home-impact__action .home-button { min-width:190px; color:#102650; border:0; background:linear-gradient(90deg,#d6ee6b,#f4bf19); }.home-impact__action .home-button span { margin-left:1rem; }

.home-campaigns { padding:clamp(5rem,9vw,8rem) 0; background:#eef3ef; }.home-carousel { display:grid; position:relative; width:100%; max-width:100vw; grid-template-columns:54px minmax(0,1fr) 54px; gap:1rem; align-items:center; overflow:hidden; }.home-carousel__track { display:flex; width:100%; min-width:0; max-width:100%; overflow-x:auto; gap:2rem; padding:2.5rem max(20px,calc((100vw - 950px)/2)); scroll-snap-type:x mandatory; scrollbar-width:none; }.home-carousel__track::-webkit-scrollbar { display:none; }.home-campaign { display:grid; width:min(760px,76vw); min-width:min(760px,76vw); max-width:min(760px,76vw); flex:0 0 min(760px,76vw); grid-template-columns:.8fr 1.2fr; overflow:hidden; border-radius:1.5rem; background:#fff; box-shadow:0 20px 55px rgba(15,92,66,.1); opacity:.55; scroll-snap-align:center; transform:scale(.9); transition:.35s ease; }.home-campaign.is-active { opacity:1; transform:scale(1); }.home-campaign__media { min-height:390px; }.home-campaign__body { min-width:0; padding:clamp(1.5rem,4vw,3rem); }.home-campaign h3 { margin:.4rem 0; font-size:clamp(1.6rem,3vw,2.5rem); }.home-progress { overflow:hidden; height:10px; margin:1.5rem 0 .7rem; border-radius:10px; background:#e5e9e6; }.home-progress span { display:block; width:var(--progress); height:100%; border-radius:inherit; background:linear-gradient(90deg,var(--home-lime),#70b55a); }.home-campaign__meta { display:flex; gap:2rem; margin-bottom:1.5rem; }.home-campaign__meta small,.home-campaign__meta strong { display:block; }.home-campaign__meta small { color:#76837c; }.home-carousel__control { width:48px; height:48px; border:1px solid var(--home-line); border-radius:50%; color:var(--home-green); background:#fff; cursor:pointer; }.home-carousel__control--prev { justify-self:end; }.home-campaigns__footer { text-align:center; }

.home-programs { position:relative; padding:clamp(5rem,9vw,8rem) 0; background:radial-gradient(circle at 8% 28%,rgba(214,238,107,.25),transparent 25%),radial-gradient(circle at 92% 12%,rgba(39,117,184,.14),transparent 28%),linear-gradient(145deg,#f8fcff,#fffdf7 52%,#f4fbf7); overflow:hidden; }.home-programs::before { position:absolute; top:-75px; right:-45px; width:210px; height:180px; border:2px solid rgba(39,117,184,.3); border-radius:0 0 0 95px; content:""; }.home-programs .home-section-heading { margin-bottom:2.2rem; }.home-programs .home-section-heading::before,.home-programs .home-section-heading::after { display:inline-block; width:90px; height:2px; margin:0 1.5rem .2rem; background:linear-gradient(90deg,#07864f,#f4bf19); content:""; }.home-programs .home-section-heading::after { background:linear-gradient(90deg,#2775b8,#ef8b4a); }.home-programs .home-section-heading .home-kicker { display:inline-block; color:#087052; }.home-programs .home-section-heading>p:last-child { color:#33415e; }.home-programs h2 { max-width:none; color:#102650; }
.home-programs__grid { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:.75rem; }.home-program { --program-color:#07864f; position:relative; min-width:0; overflow:hidden; border:1px solid rgba(16,38,80,.11); border-radius:1.25rem; background:rgba(255,255,255,.85); box-shadow:0 14px 35px rgba(16,38,80,.06); transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s,border-color .35s; }.home-program:nth-child(2) { --program-color:#91b800; }.home-program:nth-child(3) { --program-color:#e86d25; }.home-program:nth-child(4) { --program-color:#185fc1; }.home-program:nth-child(5) { --program-color:#e9b600; }.home-program:hover,.home-program:focus-within { z-index:2; border-color:color-mix(in srgb,var(--program-color) 38%,transparent); box-shadow:0 24px 55px rgba(16,38,80,.14); transform:translateY(-8px); }.home-program__media { position:relative; overflow:hidden; min-height:250px; }.home-program__media::after { position:absolute; background:linear-gradient(180deg,transparent 68%,rgba(16,38,80,.17)); content:""; inset:0; }.home-program__media img { display:block; width:100%; height:100%; min-height:250px; object-fit:cover; transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s; }.home-program:hover .home-program__media img,.home-program:focus-within .home-program__media img { filter:saturate(1.08); transform:scale(1.08); }.home-program__body { position:relative; min-height:315px; padding:3.5rem 1.15rem 1.2rem; }.home-program__meta { display:flex; position:absolute; top:-34px; right:1rem; left:1rem; align-items:center; justify-content:space-between; }.home-program__meta strong,.home-program__meta span { display:grid; width:58px; height:58px; border:5px solid #fff; border-radius:50%; place-items:center; }.home-program__meta strong { color:#fff; background:var(--program-color); font:700 1.05rem 'Manrope'; }.home-program__meta span { color:var(--program-color); background:color-mix(in srgb,var(--program-color) 10%,#fff); font-size:1.5rem; }.home-program h3 { min-height:54px; margin:0; color:#102650; font-size:1.05rem; line-height:1.25; }.home-program p { min-height:145px; color:#33415e; font-size:.74rem; line-height:1.65; }.home-program a { display:flex; gap:.4rem; align-items:center; color:var(--program-color); font-size:.75rem; font-weight:800; text-decoration:none; }.home-program a i { display:grid; width:25px; height:25px; border-radius:50%; color:#fff; background:var(--program-color); font-style:normal; place-items:center; transition:transform .25s,rotate .25s; }.home-program a:hover i,.home-program a:focus-visible i { transform:translateX(5px); rotate:-45deg; }.home-programs__action { display:grid; width:min(680px,100%); grid-template-columns:45px 1fr auto; gap:1rem; margin:3rem auto 0; padding:.9rem 1.4rem; align-items:center; border:1px solid rgba(16,38,80,.08); border-radius:999px; color:#102650; background:rgba(255,253,247,.85); box-shadow:0 12px 35px rgba(16,38,80,.06); }.home-programs__action>span { color:#07864f; font-size:2.2rem; }.home-programs__action p { margin:0; font-size:.82rem; }.home-programs__action a { display:flex; gap:.7rem; padding:.75rem 1rem; align-items:center; border-radius:999px; color:#fff; background:linear-gradient(90deg,#075a46,#07864f); font-size:.78rem; font-weight:800; text-decoration:none; }.home-programs__action a i { font-style:normal; transition:transform .25s,rotate .25s; }.home-programs__action a:hover i,.home-programs__action a:focus-visible i { transform:translateX(5px); rotate:-45deg; }
.home-publications { position:relative; padding:clamp(5rem,9vw,8rem) 0; background:radial-gradient(circle at 18% 82%,rgba(7,134,79,.13),transparent 24%),radial-gradient(circle at 88% 18%,rgba(244,191,25,.18),transparent 23%),linear-gradient(120deg,#fffdf7,#f6fbf9 50%,#fff9ed); overflow:hidden; }.home-publications::after { position:absolute; right:-35px; bottom:-55px; width:160px; height:160px; border:2px solid rgba(232,109,37,.35); border-radius:80px 0 0; content:""; }.home-publications__grid { display:grid; position:relative; z-index:1; grid-template-columns:.52fr 1.48fr; gap:clamp(3rem,6vw,6rem); align-items:start; }.home-publications h2 { color:#102650; font-size:clamp(3rem,5vw,5rem); }.home-publications h2 span { display:block; color:#07864f; }.home-publications__grid>div:first-child>p:not(.home-kicker) { max-width:300px; color:#33415e; }.home-publications .home-text-link { margin-top:1.2rem; color:#07674f; }.home-publications .home-text-link span { display:inline-grid; transition:transform .25s,rotate .25s; }.home-publications .home-text-link:hover span { transform:translateX(6px); rotate:-45deg; }
.home-notices { display:grid; gap:.7rem; }.home-notices article { --notice-color:#07864f; display:grid; grid-template-columns:118px minmax(0,1fr) 44px; gap:1.4rem; min-height:128px; padding:0 1.2rem 0 0; align-items:center; border:1px solid rgba(16,38,80,.1); border-radius:1rem; background:rgba(255,255,255,.82); box-shadow:0 10px 30px rgba(16,38,80,.05); transition:transform .3s,border-color .3s,box-shadow .3s; }.home-notices article:nth-child(2) { --notice-color:#91b800; }.home-notices article:nth-child(3) { --notice-color:#e86d25; }.home-notices article:hover { border-color:color-mix(in srgb,var(--notice-color) 35%,transparent); box-shadow:0 18px 42px rgba(16,38,80,.11); transform:translateX(6px); }.home-notices time { display:grid; height:100%; padding:1rem .6rem; color:var(--notice-color); border-radius:1rem 0 0 1rem; background:color-mix(in srgb,var(--notice-color) 9%,#fff); font-size:.72rem; font-weight:800; text-align:center; place-content:center; }.home-notices time span { display:grid; width:52px; height:52px; margin:0 auto .6rem; border-radius:50%; background:color-mix(in srgb,var(--notice-color) 12%,#fff); font-size:1.8rem; place-items:center; }.home-notices time strong { white-space:nowrap; }.home-notices h3,.home-notices p { margin:0 0 .45rem; }.home-notices h3 { color:#102650; font-size:1rem; }.home-notices p { color:#526078; font-size:.78rem; }.home-notices small { color:var(--notice-color); font-size:.68rem; }.home-notices>a,.home-notices article>a { display:grid; width:38px; height:38px; border-radius:50%; color:#fff; background:var(--notice-color); text-decoration:none; place-items:center; transition:transform .25s,rotate .25s,box-shadow .25s; }.home-notices article>a:hover,.home-notices article>a:focus-visible { box-shadow:0 8px 20px color-mix(in srgb,var(--notice-color) 35%,transparent); transform:scale(1.12); rotate:-45deg; }
.home-news { padding:clamp(5rem,9vw,8rem) 0; }.home-news__grid { display:grid; grid-template-columns:1.35fr 1fr 1fr; gap:1.25rem; }.home-news-card { overflow:hidden; border-bottom:1px solid var(--home-line); }.home-news-card--featured { grid-row:span 2; }.home-news-card__media { min-height:170px; }.home-news-card--featured .home-news-card__media { min-height:430px; }.home-news-card__body { padding:1.2rem 0; }.home-news-card h3 { margin:.35rem 0; font-size:1.18rem; }.home-news-card--featured h3 { font-size:1.75rem; }.home-news-card h3 a { color:inherit; text-decoration:none; }.home-news-card__body>p:not(.home-kicker) { color:#65736c; font-size:.9rem; }.home-news-card time { color:#79877f; font-size:.75rem; }
.home-closing { position:relative; min-height:680px; padding:clamp(5rem,8vw,8rem) 0 clamp(9rem,13vw,12rem); color:#102650; background:radial-gradient(circle at 12% 20%,rgba(244,191,25,.26),transparent 28%),radial-gradient(circle at 88% 32%,rgba(39,117,184,.18),transparent 31%),linear-gradient(125deg,#fff9e8 0%,#fffdf8 43%,#edf7ff 100%); overflow:hidden; isolation:isolate; }.home-closing::before { position:absolute; z-index:0; top:14%; left:-55px; width:150px; height:150px; border-radius:50%; background:linear-gradient(145deg,#f4bf19,#ef8b4a); content:""; box-shadow:0 0 60px rgba(244,191,25,.22); }.home-closing::after { position:absolute; z-index:0; top:10%; left:1.5%; width:82px; height:120px; background:radial-gradient(circle,#07864f 2px,transparent 3px) 0 0/22px 22px; content:""; opacity:.5; }.home-closing__grid { display:grid; position:relative; z-index:2; grid-template-columns:.95fr 1.05fr; gap:clamp(2.5rem,5vw,6rem); align-items:center; }.home-closing__content { text-align:center; }.home-closing .home-kicker { display:inline-flex; gap:1.2rem; align-items:center; color:#087052; }.home-closing .home-kicker::before,.home-closing .home-kicker::after { width:64px; height:2px; background:linear-gradient(90deg,#07864f,#f4bf19); content:""; }.home-closing .home-kicker::after { background:linear-gradient(90deg,#2775b8,#ef8b4a); }.home-closing h2 { max-width:700px; margin:1.3rem auto 1.8rem; color:#102650; font-size:clamp(2.6rem,4.4vw,4.5rem); line-height:1.08; }.home-closing h2 span,.home-closing h2 strong { color:#07864f; background:linear-gradient(90deg,#07864f 0%,#2775b8 88%); background-clip:text; font-weight:inherit; -webkit-background-clip:text; -webkit-text-fill-color:transparent; }.home-closing h2 strong { background-image:linear-gradient(90deg,#ef7100,#f4bf19); }.home-closing__divider { display:flex; width:min(500px,88%); gap:1rem; align-items:center; margin:0 auto 1.8rem; color:#176fc0; }.home-closing__divider span { height:2px; flex:1; background:linear-gradient(90deg,#07864f,#2775b8); }.home-closing__divider span:last-child { background:linear-gradient(90deg,#f4bf19,#ef7100); }.home-closing__divider svg { width:34px; height:34px; fill:none; stroke:url('#closing-gradient'); stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.7; }.home-closing__text { max-width:590px; margin:0 auto 2rem; color:#44526d; font-size:1rem; }.home-closing .home-button { gap:1.2rem; min-width:290px; border:0; background:linear-gradient(90deg,#075a46,#07864f 60%,#176fc0); box-shadow:0 14px 32px rgba(7,90,70,.2); }.home-closing .home-button span { display:grid; width:35px; height:35px; margin:-.35rem -.7rem -.35rem 0; border-radius:50%; color:#102650; background:linear-gradient(135deg,#d6ee6b,#f4bf19); font-size:1.35rem; place-items:center; transition:transform .25s,rotate .25s; }.home-closing .home-button:hover span,.home-closing .home-button:focus-visible span { transform:translateX(4px); rotate:-45deg; }.home-closing__visual { position:relative; min-height:520px; overflow:hidden; border-radius:48% 52% 34% 66% / 32% 27% 73% 68%; background:#f4bf19; box-shadow:0 24px 60px rgba(16,38,80,.15); }.home-closing__visual::after { position:absolute; border:2px solid rgba(255,255,255,.42); border-radius:inherit; content:""; inset:18px; pointer-events:none; }.home-closing__visual img { display:block; position:absolute; width:100%; height:100%; object-fit:cover; object-position:center; inset:0; transition:transform .8s cubic-bezier(.2,.8,.2,1); }.home-closing__visual:hover img { transform:scale(1.035); }.home-closing__wave { position:absolute; z-index:3; right:-8%; bottom:-19%; left:-8%; height:310px; border-radius:48% 52% 0 0 / 44% 55% 0 0; background:linear-gradient(100deg,#07864f 0%,#0b9b77 35%,#2775b8 72%,#1762aa 100%); transform:rotate(-2deg); box-shadow:0 -10px 45px rgba(7,134,79,.12); }.home-closing__wave::before { position:absolute; top:-42px; right:-4%; width:58%; height:120px; border-radius:50% 50% 0 0; background:linear-gradient(90deg,#f4bf19,#ef8b4a 45%,#2775b8); content:""; opacity:.9; }.home-closing__lines { position:absolute; z-index:1; top:-35px; right:-35px; width:260px; height:190px; border:2px solid #f4bf19; border-radius:0 0 0 110px; opacity:.75; }.home-closing__lines::before,.home-closing__lines::after { position:absolute; border:2px solid #2775b8; border-radius:inherit; content:""; inset:15px; }.home-closing__lines::after { border-color:#07864f; inset:31px; }

[data-reveal] { opacity:0; transform:translateY(34px); transition:opacity .7s ease var(--delay,0ms),transform .7s cubic-bezier(.2,.7,.2,1) var(--delay,0ms); }[data-reveal].is-visible { opacity:1; transform:none; }
@keyframes scroll-line { 0%,100%{transform:scaleY(.35);transform-origin:top}50%{transform:scaleY(1);transform-origin:top} }

body.public-home-shell .public-header { position:fixed; z-index:60; top:0; left:0; width:100%; color:#fff; border:0; background:linear-gradient(180deg,rgba(0,0,0,.48) 0%,rgba(0,0,0,.2) 62%,transparent 100%); backdrop-filter:none; transition:background .28s ease,border-color .28s ease,box-shadow .28s ease; }
body.public-home-shell .public-brand { color:#fff; }
body.public-home-shell .public-brand small { color:rgba(255,255,255,.86); text-shadow:0 1px 3px rgb(0 0 0 / 35%); transition:color .28s ease,text-shadow .28s ease; }
body.public-home-shell .public-navigation>:nth-child(1) { --menu-color:linear-gradient(135deg,rgb(116 191 25 / 92%),rgb(62 157 24 / 92%)); }
body.public-home-shell .public-navigation>:nth-child(2) { --menu-color:linear-gradient(135deg,rgb(9 169 103 / 92%),rgb(5 116 77 / 92%)); }
body.public-home-shell .public-navigation>:nth-child(3) { --menu-color:linear-gradient(135deg,rgb(255 211 42 / 94%),rgb(235 169 0 / 94%)); }
body.public-home-shell .public-navigation>:nth-child(4) { --menu-color:linear-gradient(135deg,rgb(241 61 148 / 92%),rgb(202 23 109 / 92%)); }
body.public-home-shell .public-navigation>:nth-child(5) { --menu-color:linear-gradient(135deg,rgb(133 62 185 / 92%),rgb(87 36 134 / 92%)); }
body.public-home-shell .public-navigation>:nth-child(6) { --menu-color:linear-gradient(135deg,rgb(49 139 211 / 92%),rgb(20 91 169 / 92%)); }
body.public-home-shell .public-navigation>:nth-child(7) { --menu-color:linear-gradient(135deg,rgb(243 130 39 / 94%),rgb(213 75 15 / 94%)); }
body.public-home-shell .public-navigation>a,body.public-home-shell .public-nav-group>summary { color:#fff; text-shadow:0 1px 2px rgb(0 0 0 / 22%); }
body.public-home-shell .public-navigation>a,body.public-home-shell .public-nav-group>summary { box-sizing:border-box; height:42px; min-height:42px; padding-block:0; }

body.public-home-shell .public-header.is-past-hero { border-bottom:1px solid rgb(7 134 79 / 18%); background:linear-gradient(110deg,rgb(239 250 245 / 97%),rgb(255 249 224 / 97%) 42%,rgb(239 246 255 / 97%) 76%,rgb(255 241 232 / 97%)); box-shadow:0 8px 28px rgb(16 38 80 / 9%); backdrop-filter:blur(8px); }
body.public-home-shell .public-header.is-past-hero .public-brand { color:#164e3d; }
body.public-home-shell .public-header.is-past-hero .public-brand small { color:#52685f; text-shadow:none; }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(1) { --menu-color:linear-gradient(135deg,#74bf19,#3e9d18); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(2) { --menu-color:linear-gradient(135deg,#09a967,#05744d); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(3) { --menu-color:linear-gradient(135deg,#ffd32a,#eba900); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(4) { --menu-color:linear-gradient(135deg,#f13d94,#ca176d); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(5) { --menu-color:linear-gradient(135deg,#853eb9,#572486); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(6) { --menu-color:linear-gradient(135deg,#318bd3,#145ba9); }
body.public-home-shell .public-header.is-past-hero .public-navigation>:nth-child(7) { --menu-color:linear-gradient(135deg,#f38227,#d54b0f); }
body.public-home-shell .public-header.is-past-hero .public-navigation>a,
body.public-home-shell .public-header.is-past-hero .public-nav-group>summary { text-shadow:none; }

@media (max-width:900px) {
  .home-section-heading--split { display:block; }.home-principles__grid { grid-template-columns:repeat(2,1fr); }.home-about__grid,.home-publications__grid { grid-template-columns:1fr; }.home-about__video { min-height:430px; }.home-stats { grid-template-columns:repeat(2,1fr); }.home-stat:nth-child(2) { border-right:0; }.home-stat:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.18); }.home-chart-grid { grid-template-columns:1fr; }.home-programs__grid { grid-template-columns:repeat(2,1fr); }.home-program,.home-program:nth-child(4) { grid-column:auto; }.home-program:last-child { grid-column:1/-1; }.home-news__grid { grid-template-columns:1fr 1fr; }.home-news-card--featured { grid-column:1/-1; grid-row:auto; }.home-news-card--featured .home-news-card__media { min-height:360px; }
  .home-hero__content { width:min(100% - 36px,760px); padding-top:8rem; }
  .home-hero__logo { width:clamp(130px,22vw,180px); }
  .home-hero__pillars { grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem 0; }
  .home-hero__pillar { grid-template-columns:62px 1fr; padding:0 1.25rem; }
  .home-hero__pillar:nth-child(2) { border-right:0; }
  .home-hero__pillar:nth-child(3) { padding-left:0; }
  .home-hero__pillar-icon { width:58px; border-radius:16px; }
  .home-hero__pillar-icon svg { width:38px; height:38px; }
  .home-principles .home-section-heading--center::before,.home-principles .home-section-heading--center::after { width:70px; margin-inline:1rem; }
  .home-about__video { width:calc(100% - 22px); }
  .home-stat:nth-child(2) { border-right:0; }.home-stat:nth-child(-n+2) { border-bottom:1px solid rgba(16,38,80,.1); }
  .home-impact__action { grid-template-columns:55px 1fr auto; padding-inline:1.5rem; }
  body.public-home-shell .public-menu-toggle { color:#fff; border-color:rgba(255,255,255,.5); background:rgba(7,59,43,.5); }
  body.public-home-shell .public-header.is-past-hero .public-menu-toggle { color:#172820; border-color:#b9c9c2; background:#fff; }
}
@media (max-width:960px) { body.public-home-shell .public-navigation>a,body.public-home-shell .public-nav-group>summary { height:46px; min-height:46px; } }
@media (max-width:620px) {
  .home-container { width:min(100% - 28px,1180px); }.home-page h2 { font-size:2rem; }.home-hero__content { width:calc(100% - 24px); min-height:100svh; padding:7rem 0 1.25rem; }.home-hero__identity { align-self:center; }.home-hero__logo { width:118px; }.home-hero h1 { font-size:clamp(3.35rem,18vw,4.6rem); }.home-hero__identity>p { font-size:.9rem; }.home-hero__divider { margin-top:.9rem; }.home-hero__identity .home-hero__motto { font-size:.72rem; }.home-hero__pillars { gap:.85rem 0; margin-top:1.2rem; }.home-hero__pillar { grid-template-columns:46px 1fr; gap:.65rem; padding:0 .65rem; }.home-hero__pillar:nth-child(3) { padding-left:0; }.home-hero__pillar-icon { width:44px; border-radius:12px; }.home-hero__pillar-icon svg { width:29px; height:29px; }.home-hero__pillar strong { margin-bottom:.15rem; font-size:.66rem; }.home-hero__pillar small { font-size:.64rem; line-height:1.35; }.home-principles::before,.home-principles::after { width:20px; }.home-principles .home-section-heading--center::before,.home-principles .home-section-heading--center::after { width:35px; margin-inline:.45rem; }.home-principles__grid { gap:2.5rem .7rem; }.home-principle__media { max-width:135px; margin-bottom:2.2rem; }.home-principle__badge { width:62px; height:62px; bottom:-28px; }.home-principle p { display:block; font-size:.72rem; }.home-about__video { min-height:300px; border-radius:1.25rem; box-shadow:12px 12px 0 #176fc0; }.home-about__video>div { padding:.9rem .8rem .9rem 4.5rem; }.home-about__video>div::before { left:1rem; }.home-play { width:62px;height:62px; }.home-stats { margin:2.5rem 0; }.home-stat { padding:1.3rem .5rem; }.home-stat strong { font-size:2.6rem; }.home-stat p { font-size:.8rem; }.home-chart-card { grid-template-columns:1fr; }.home-donut { width:150px; margin:auto; }.home-impact__action { gap:1rem; align-items:flex-start; flex-direction:column; }.home-carousel { display:block; }.home-carousel__track { gap:1rem; padding:1.5rem 7vw 2rem; }.home-campaign { width:86vw; min-width:86vw; max-width:86vw; flex-basis:86vw; grid-template-columns:1fr; }.home-campaign__media { min-height:210px; }.home-campaign__body { padding:1.3rem; }.home-carousel__control { display:none; }.home-programs__grid,.home-news__grid { grid-template-columns:1fr; }.home-program:last-child { grid-column:auto; }.home-program { display:grid; grid-template-columns:115px 1fr; }.home-program__media { min-height:100%; }.home-program p { min-height:0; }.home-news-card--featured { grid-column:auto; }.home-news-card--featured .home-news-card__media { min-height:250px; }.home-notices article { grid-template-columns:78px 1fr 34px; gap:.7rem; }.home-notices p { display:none; }
}
@media (max-width:620px) {
  .home-impact::before,.home-impact::after { display:none; }
  .home-impact .home-section-heading>p { padding-bottom:1rem; font-size:.9rem; }
  .home-stat { grid-template-columns:48px 1fr; gap:.7rem; padding:1rem .75rem; }
  .home-stat i { width:44px; height:44px; font-size:1.35rem; }
  .home-stat strong { font-size:2rem; }
  .home-stat p { font-size:.68rem; }
  .home-chart-card { padding:1.4rem; text-align:center; }
  .home-chart-card ul { justify-content:center; }
  .home-impact__action { grid-template-columns:1fr; padding:1.5rem; text-align:center; border-radius:1.5rem; }
  .home-impact__action>span { line-height:1; }
  .home-impact__action .home-button { width:100%; min-width:0; }
}

@media (max-width:900px) {
  .home-closing { min-height:0; padding:5rem 0 10rem; }
  .home-closing__grid { grid-template-columns:1fr; }
  .home-closing__content { position:relative; z-index:2; }
  .home-closing__visual { width:min(680px,100%); min-height:430px; margin-inline:auto; }
  .home-closing__wave { bottom:-235px; height:330px; }
}

@media (max-width:620px) {
  .home-closing { padding:4.5rem 0 7.5rem; }
  .home-closing::before { top:4%; left:-70px; width:120px; height:120px; }
  .home-closing::after,.home-closing__lines { opacity:.35; }
  .home-closing .home-kicker { gap:.6rem; font-size:.63rem; }
  .home-closing .home-kicker::before,.home-closing .home-kicker::after { width:32px; }
  .home-closing h2 { margin-top:1rem; font-size:clamp(2.15rem,11vw,3rem); }
  .home-closing__divider { margin-bottom:1.25rem; }
  .home-closing__text { font-size:.88rem; }
  .home-closing .home-button { width:100%; min-width:0; }
  .home-closing__visual { min-height:340px; border-radius:48% 52% 36% 64% / 27% 27% 73% 73%; }
  .home-closing__visual img { object-position:58% center; }
  .home-closing__wave { bottom:-260px; height:325px; }
}
@media (prefers-reduced-motion:reduce) { .home-page * { scroll-behavior:auto!important; animation:none!important; transition:none!important; } [data-reveal] { opacity:1; transform:none; } }

/* Refinamentos de largura, gráficos interativos e grade editorial */
body.public-home-shell { overflow-x:hidden; }
body.public-home-shell .public-header { box-sizing:border-box; right:0; width:100%; max-width:100vw; }
body.public-home-shell .public-navigation { min-width:0; }

.home-chart-card { position:relative; outline:none; transition:border-color .3s,background .3s,transform .3s,box-shadow .3s; }
.home-chart-card--center { width:calc(50% - .75rem); grid-column:1/-1; justify-self:center; }
.home-chart-card:hover,.home-chart-card:focus-visible { border-color:rgba(7,134,79,.3); box-shadow:0 24px 60px rgba(16,38,80,.14); transform:translateY(-6px); }
.home-donut { position:relative; transition:filter .3s,scale .3s; }
.home-donut>span { z-index:1; }
.home-donut--blue { background:conic-gradient(#12c7d8 0 var(--part-a),#0784ca var(--part-a) var(--part-b),#315f9f var(--part-b)); }.home-donut--blue::before { background:#f1f7fd; }
.home-chart-card:hover .home-donut,.home-chart-card:focus-visible .home-donut { filter:drop-shadow(0 12px 24px rgba(0,0,0,.25)); scale:1.05; }
.home-chart-tooltip { position:absolute; z-index:3; top:50%; left:50%; width:max-content; max-width:210px; padding:.75rem .9rem; border:1px solid rgba(255,255,255,.18); border-radius:.75rem; color:#fff; background:rgba(5,35,26,.95); box-shadow:0 12px 35px rgba(0,0,0,.3); opacity:0; pointer-events:none; transform:translate(-50%,-35%) rotate(70deg); transition:opacity .25s,transform .25s; }
.home-chart-tooltip strong,.home-chart-tooltip small { display:block; }.home-chart-tooltip small { margin-top:.2rem; color:rgba(255,255,255,.68); }
.home-chart-card:hover .home-chart-tooltip,.home-chart-card:focus-visible .home-chart-tooltip { opacity:1; transform:translate(-50%,-50%) rotate(70deg); }

@media (min-width:1000px) {
  .home-program,.home-program:nth-child(4),.home-program:last-child { min-width:0; grid-column:auto; }
}
@media (min-width:621px) and (max-width:999px) {
  .home-chart-card--center { width:100%; grid-column:auto; }
  .home-programs__grid { display:flex; flex-wrap:wrap; justify-content:center; }
  .home-program,.home-program:nth-child(4),.home-program:last-child { width:calc(33.333% - .7rem); flex:0 0 calc(33.333% - .7rem); }
  .home-program:nth-last-child(-n+2) { flex-basis:calc(50% - .5rem); }
}
@media (max-width:620px) { .home-chart-card--center { width:100%; grid-column:auto; } }

@media (max-width:620px) {
  .home-programs .home-section-heading::before,.home-programs .home-section-heading::after { width:32px; margin-inline:.45rem; }
  .home-program { grid-template-columns:118px minmax(0,1fr); }
  .home-program__media,.home-program__media img { min-height:100%; }
  .home-program__body { min-height:0; padding:3.2rem 1rem 1rem; }
  .home-program__meta { top:-28px; }.home-program__meta strong,.home-program__meta span { width:48px; height:48px; border-width:4px; }
  .home-program h3 { min-height:0; font-size:.98rem; }.home-program p { font-size:.69rem; line-height:1.45; }
  .home-programs__action { grid-template-columns:1fr; padding:1.2rem; border-radius:1.25rem; text-align:center; }.home-programs__action>span { line-height:1; }.home-programs__action a { justify-content:center; }
  .home-notices article { grid-template-columns:78px minmax(0,1fr) 34px; gap:.75rem; min-height:118px; padding-right:.65rem; }
  .home-notices time { padding:.6rem .25rem; }.home-notices time span { width:40px; height:40px; font-size:1.35rem; }.home-notices time strong { font-size:.62rem; }
  .home-notices h3 { font-size:.86rem; }.home-notices p { display:block; font-size:.68rem; line-height:1.35; }.home-notices small { font-size:.61rem; }
  .home-notices article>a { width:31px; height:31px; }
}

.home-campaign__media { width:100%; height:100%; object-fit:cover; }
.home-campaign__deadline { margin:.9rem 0; color:#56665d; font-size:.86rem; }.home-campaign__deadline strong { color:var(--home-ink); }
.home-carousel__empty,.home-inline-empty { width:min(720px,calc(100vw - 40px)); margin:auto; padding:2rem; border:1px dashed var(--home-line); border-radius:1rem; color:#65736c; background:rgba(255,255,255,.55); text-align:center; }.home-carousel__empty strong,.home-inline-empty strong { color:var(--home-ink); }
.home-news-card__media { display:block; width:100%; object-fit:cover; }

/* Ajustes finais das frentes de atuação e dos editais */
.home-programs {
  background-image:linear-gradient(135deg,rgba(245,252,250,.91),rgba(255,252,242,.9) 48%,rgba(237,247,255,.92)),image-set(url("../../../media/img/optimized/about-children-720-Zai_cIV.webp") 1x,url("../../../media/img/optimized/about-children-1600-SjIHXJZ.webp") 2x);
  background-position:center,center 42%;
  background-size:auto,cover;
  background-repeat:no-repeat;
  background-attachment:fixed;
}
.home-program__media { width:100%; height:260px; min-height:260px; }
.home-program__media img { width:100%; height:100%; min-height:0; object-fit:cover; object-position:center; }
.home-publications {
  background:radial-gradient(circle at 12% 22%,rgba(7,134,79,.28),transparent 29%),radial-gradient(circle at 88% 16%,rgba(244,191,25,.35),transparent 31%),radial-gradient(circle at 76% 88%,rgba(232,109,37,.2),transparent 28%),linear-gradient(125deg,#edfaf4 0%,#fff8df 48%,#eaf5ff 100%);
}
.home-notices time span { width:62px; height:62px; }
.home-notices time span svg { width:35px; height:35px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.8; }
.home-notices time small { display:block; margin-top:.28rem; color:#526078; font-size:.64rem; font-weight:700; }
.home-notices article>a { width:44px; height:44px; font-size:1.45rem; font-weight:800; }

@media (max-width:620px) {
  .home-programs { background-attachment:scroll; }
  .home-program__media { height:auto; min-height:230px; }
  .home-program__media img { position:absolute; inset:0; }
  .home-notices time span { width:46px; height:46px; }
  .home-notices time span svg { width:27px; height:27px; }
  .home-notices article>a { width:34px; height:34px; font-size:1.15rem; }
}

/* Chamadas de doação e acesso completo às campanhas */
.home-campaign__free-value { display:grid; grid-template-columns:36px 1fr; gap:.7rem; margin:0 0 1.2rem; padding:.75rem; align-items:center; border-radius:.85rem; color:#264c3e; background:#f1f8f3; }
.home-campaign__free-value>span:first-child { color:#e86d25; font-size:1.8rem; line-height:1; text-align:center; }
.home-campaign__free-value strong,.home-campaign__free-value small { display:block; }.home-campaign__free-value strong { color:#0f5c42; font-size:.82rem; }.home-campaign__free-value small { margin-top:.12rem; color:#5e7067; font-size:.69rem; line-height:1.35; }
.home-campaign--all { grid-template-columns:.85fr 1.15fr; color:#fff; background:linear-gradient(135deg,#063f31,#08775a 58%,#176fc0); }
.home-campaign--all__art { display:grid; position:relative; min-height:390px; color:#102650; background:radial-gradient(circle at 28% 25%,rgba(255,255,255,.45),transparent 26%),linear-gradient(145deg,#f4bf19,#d6ee6b 50%,#65c6d4); place-content:center; isolation:isolate; }
.home-campaign--all__art::before,.home-campaign--all__art::after { position:absolute; border:2px solid rgba(255,255,255,.55); border-radius:50%; content:""; inset:12%; }.home-campaign--all__art::after { inset:24%; }
.home-campaign--all__art span { z-index:1; font:800 clamp(3.5rem,7vw,6rem) 'Manrope'; letter-spacing:-.08em; }.home-campaign--all__art i { position:absolute; z-index:1; right:20%; bottom:22%; font:800 2.2rem 'Manrope'; }
.home-campaign--all__body { display:flex; padding:clamp(1.7rem,4vw,3rem); justify-content:center; flex-direction:column; }.home-campaign--all__body .home-kicker { color:#f4bf19; }.home-campaign--all__body h3 { margin:.55rem 0 1rem; color:#fff; }.home-campaign--all__body p:not(.home-kicker) { color:rgba(255,255,255,.78); }.home-campaign--all__body .home-button { width:max-content; margin-top:1rem; color:#102650; border:0; background:linear-gradient(90deg,#f4bf19,#d6ee6b); }.home-campaign--all__body .home-button span { margin-left:.7rem; transition:transform .25s,rotate .25s; }.home-campaign--all__body .home-button:hover span { transform:translateX(6px); rotate:-45deg; }
.home-campaigns__donation-note { display:grid; position:relative; grid-template-columns:72px 1fr auto; gap:1.2rem; margin-top:2.5rem; padding:1.4rem 1.7rem; align-items:center; border-radius:1.4rem; color:#fff; background:linear-gradient(105deg,#063f31,#07864f 55%,#176fc0); box-shadow:0 20px 48px rgba(7,90,70,.2); overflow:hidden; }.home-campaigns__donation-note::after { position:absolute; right:15%; width:180px; height:180px; border:1px solid rgba(255,255,255,.15); border-radius:50%; content:""; }.home-campaigns__donation-icon { z-index:1; color:#f4bf19; font-size:3.8rem; line-height:1; text-align:center; }.home-campaigns__donation-note>div { z-index:1; }.home-campaigns__donation-note strong { color:#fff; font:700 clamp(1.15rem,2vw,1.55rem) 'Manrope'; }.home-campaigns__donation-note p { margin:.25rem 0 0; color:rgba(255,255,255,.76); font-size:.85rem; }.home-campaigns__donation-note>a { display:flex; z-index:1; gap:.7rem; padding:.85rem 1.2rem; align-items:center; border-radius:999px; color:#102650; background:linear-gradient(90deg,#f4bf19,#d6ee6b); font-weight:800; text-decoration:none; }.home-campaigns__donation-note>a span { transition:transform .25s,rotate .25s; }.home-campaigns__donation-note>a:hover span,.home-campaigns__donation-note>a:focus-visible span { transform:translateX(6px); rotate:-45deg; }

@media (max-width:620px) {
  .home-campaign--all { grid-template-columns:1fr; }.home-campaign--all__art { min-height:210px; }.home-campaign--all__body { padding:1.4rem; }.home-campaign--all__body .home-button { width:100%; }
  .home-campaigns__donation-note { grid-template-columns:1fr; padding:1.4rem; text-align:center; }.home-campaigns__donation-icon { font-size:3rem; }.home-campaigns__donation-note>a { justify-content:center; }
}

/* Grade das sete notícias mais recentes */
.home-news { position:relative; padding:clamp(5rem,9vw,8rem) 0; background:radial-gradient(circle at 8% 18%,rgba(7,134,79,.2),transparent 25%),radial-gradient(circle at 92% 78%,rgba(232,109,37,.16),transparent 26%),radial-gradient(circle at 78% 12%,rgba(244,191,25,.16),transparent 22%),linear-gradient(135deg,#f2faf7,#fffdf7 48%,#edf6ff); overflow:hidden; }
.home-news::before { position:absolute; top:-55px; left:-50px; width:150px; height:260px; border-radius:0 0 80px; background:linear-gradient(180deg,#07864f,#075a46); content:""; }.home-news::after { position:absolute; right:2%; bottom:4%; width:110px; height:150px; background:radial-gradient(circle,#f4bf19 2px,transparent 3px) 0 0/23px 23px; content:""; opacity:.8; }
.home-news .home-container { position:relative; z-index:1; }.home-news .home-section-heading { align-items:center; }.home-news .home-section-heading h2 { max-width:none; color:#102650; }.home-news .home-section-heading h2 span { color:#07864f; }.home-news .home-section-heading>div>p:last-child { max-width:530px; margin:.7rem 0 0; color:#526078; }.home-news__all { display:flex; gap:1rem; min-width:230px; padding:.85rem 1.2rem; align-items:center; justify-content:center; border:1px solid #07674f; border-radius:999px; color:#075a46; font-weight:800; text-decoration:none; }.home-news__all span { font-size:1.2rem; transition:transform .25s,rotate .25s; }.home-news__all:hover span,.home-news__all:focus-visible span { transform:translateX(6px); rotate:-45deg; }
.home-news__grid { display:grid; grid-template-columns:1.55fr repeat(3,minmax(0,1fr)); grid-auto-rows:minmax(285px,auto); gap:1rem; }.home-news-card { display:grid; min-width:0; overflow:hidden; grid-template-rows:150px 1fr; border:1px solid rgba(16,38,80,.1); border-radius:1.2rem; background:rgba(255,255,255,.9); box-shadow:0 14px 36px rgba(16,38,80,.07); transition:transform .35s,border-color .35s,box-shadow .35s; }.home-news-card:hover,.home-news-card:focus-within { border-color:rgba(7,134,79,.3); box-shadow:0 24px 52px rgba(16,38,80,.14); transform:translateY(-7px); }.home-news-card--featured { grid-row:span 2; grid-template-rows:330px 1fr; }.home-news-card__media { display:block; position:relative; overflow:hidden; min-height:0; background:linear-gradient(145deg,#6d9b83,#183f32); }.home-news-card__media::after { position:absolute; background:linear-gradient(180deg,transparent 65%,rgba(16,38,80,.2)); content:""; inset:0; }.home-news-card__media img { display:block; width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.2,.8,.2,1),filter .4s; }.home-news-card:hover .home-news-card__media img,.home-news-card:focus-within .home-news-card__media img { filter:saturate(1.08); transform:scale(1.06); }.home-news-card__media>span { display:grid; height:100%; color:#fff; font:800 2rem 'Manrope'; place-items:center; }
.home-news-card__body { display:flex; min-height:0; padding:1rem 1.1rem 1.15rem; flex-direction:column; }.home-news-card--featured .home-news-card__body { padding:1.5rem 1.7rem; }.home-news-card__body time { color:#07864f; font-size:.69rem; font-weight:800; }.home-news-card__body time::before { margin-right:.4rem; content:"◷"; }.home-news-card h3,.home-news-card--featured h3 { margin:.65rem 0 .55rem; color:#102650; font-size:.98rem; line-height:1.35; }.home-news-card--featured h3 { font-size:clamp(1.35rem,2vw,1.8rem); }.home-news-card h3 a { color:inherit; text-decoration:none; }.home-news-card__body>p { display:-webkit-box; margin:0 0 1rem; color:#526078; font-size:.74rem; line-height:1.55; overflow:hidden; -webkit-box-orient:vertical; -webkit-line-clamp:3; }.home-news-card--featured .home-news-card__body>p { font-size:.9rem; -webkit-line-clamp:4; }.home-news-card__more { display:flex; gap:.7rem; margin-top:auto; align-items:center; color:#07864f; font-size:.78rem; font-weight:800; text-decoration:none; }.home-news-card__more span { transition:transform .25s,rotate .25s; }.home-news-card__more:hover span,.home-news-card__more:focus-visible span { transform:translateX(6px); rotate:-45deg; }

@media (max-width:999px) {
  .home-news__grid { grid-template-columns:repeat(2,minmax(0,1fr)); grid-auto-rows:auto; }.home-news-card--featured { grid-column:1/-1; grid-row:auto; grid-template-columns:1fr 1fr; grid-template-rows:minmax(300px,auto); }.home-news-card--featured .home-news-card__media { min-height:300px; }
}
@media (max-width:620px) {
  .home-news::before { width:22px; }.home-news::after { display:none; }.home-news .home-section-heading { display:grid; gap:1.2rem; }.home-news__all { width:100%; min-width:0; }.home-news__grid { grid-template-columns:1fr; }.home-news-card,.home-news-card--featured { grid-column:auto; grid-template-columns:115px minmax(0,1fr); grid-template-rows:minmax(190px,auto); }.home-news-card__media,.home-news-card--featured .home-news-card__media { min-height:190px; }.home-news-card__body,.home-news-card--featured .home-news-card__body { padding:1rem; }.home-news-card h3,.home-news-card--featured h3 { font-size:.92rem; }.home-news-card__body>p,.home-news-card--featured .home-news-card__body>p { font-size:.69rem; -webkit-line-clamp:3; }.home-news-card__more { font-size:.72rem; }
}

/* Fundos fixos e correção da mídia principal */
.home-news {
  background:linear-gradient(125deg,rgba(224,248,238,.92) 0%,rgba(255,246,205,.9) 45%,rgba(224,240,255,.94) 100%),radial-gradient(circle at 10% 18%,#07864f 0%,transparent 34%),radial-gradient(circle at 88% 78%,#e86d25 0%,transparent 32%);
  background-attachment:fixed;
}
.home-news-card--featured .home-news-card__media { height:330px; min-height:330px; }
.home-publications {
  background:linear-gradient(120deg,rgba(220,248,236,.9),rgba(255,241,184,.88) 48%,rgba(218,237,255,.92)),radial-gradient(circle at 12% 25%,#07864f,transparent 35%),radial-gradient(circle at 85% 18%,#f4bf19,transparent 34%),radial-gradient(circle at 80% 90%,#e86d25,transparent 32%);
  background-attachment:fixed;
}

@media (max-width:999px) {
  .home-news-card--featured .home-news-card__media { height:auto; min-height:300px; }
}
@media (max-width:620px) {
  .home-news,.home-publications { background-attachment:scroll; }
  .home-news-card--featured .home-news-card__media { min-height:190px; }
}

.home-campaigns {
  position:relative;
  background-image:linear-gradient(125deg,rgba(236,247,241,.9),rgba(255,249,221,.84) 48%,rgba(229,242,255,.9)),image-set(url("../../../media/img/optimized/campaigns-background-720-4UTbkv2.webp") 1x,url("../../../media/img/optimized/campaigns-background-1600-L-YpURi.webp") 2x);
  background-position:center;
  background-size:auto,cover;
  background-repeat:no-repeat;
  background-attachment:fixed;
  background-clip:border-box;
  isolation:isolate;
  overflow:hidden;
}
.home-campaigns::before {
  position:absolute;
  background:radial-gradient(circle at 12% 30%,rgba(7,134,79,.2),transparent 30%),radial-gradient(circle at 88% 72%,rgba(232,109,37,.18),transparent 28%);
  content:"";
  inset:0;
  pointer-events:none;
}
.home-campaigns>* { position:relative; z-index:1; }

@media (max-width:620px) {
  .home-campaigns { background-position:center; }
}

.home-programs {
  background-attachment:fixed;
  background-clip:border-box;
  isolation:isolate;
}
@media (max-width:620px) {
  .home-programs { background-attachment:fixed; }
}

.home-impact {
  background-attachment:fixed;
  background-clip:border-box;
  isolation:isolate;
}
@media (max-width:620px) {
  .home-impact { background-attachment:fixed; }
}

/* Ondas finais completas, sem interrupção nas laterais. */
.home-closing__wave {
  right:-3%;
  bottom:-175px;
  left:-3%;
  width:auto;
  height:350px;
  border-radius:50% 50% 0 0 / 24% 30% 0 0;
  background:linear-gradient(100deg,#f4bf19 0%,#ffad16 38%,#ef7100 72%,#e75025 100%);
  box-shadow:0 -10px 45px rgba(239,113,0,.14);
  transform:none;
}
.home-closing__wave::before {
  top:72px;
  right:0;
  left:0;
  width:100%;
  height:320px;
  border-radius:50% 50% 0 0 / 28% 35% 0 0;
  background:linear-gradient(100deg,#05724f 0%,#0ba477 36%,#258bc0 70%,#1762aa 100%);
  box-shadow:0 -12px 38px rgba(7,134,79,.18);
  opacity:1;
}

@media (max-width:900px) {
  .home-closing__wave { bottom:-190px; height:330px; }
  .home-closing__wave::before { top:62px; height:300px; }
}

@media (max-width:620px) {
  .home-closing__wave { right:-12%; bottom:-205px; left:-12%; height:300px; }
  .home-closing__wave::before { top:52px; height:280px; }
}

/* Campanhas: progresso mais legível em todas as larguras. */
.home-progress {
  height:17px;
  border-radius:999px;
}

@media (max-width:620px) {
  .home-principles::before,.home-principles::after {
    width:12px;
  }
  .home-principles>.home-container {
    width:calc(100% - 72px);
  }
  .home-principles .home-section-heading--center {
    width:100%;
    max-width:290px;
  }
  .home-principles #principios-title {
    max-width:270px;
    margin-inline:auto;
    font-size:1.8rem;
  }
  .home-principles__grid {
    width:100%;
    gap:2.5rem .8rem;
  }
  .home-principle p {
    max-width:135px;
  }
  .home-carousel {
    position:relative;
  }
  .home-carousel__control {
    display:grid;
    position:absolute;
    z-index:6;
    top:50%;
    width:44px;
    height:44px;
    border:2px solid rgb(255 255 255 / 85%);
    color:#fff;
    background:linear-gradient(135deg,#07864f,#176fc0);
    box-shadow:0 9px 24px rgb(16 38 80 / 28%);
    place-items:center;
    transform:translateY(-50%);
  }
  .home-carousel__control--prev {
    left:7px;
  }
  .home-carousel__control--next {
    right:7px;
  }
  .home-carousel__control:active {
    transform:translateY(-50%) scale(.94);
  }
  .home-progress {
    height:18px;
  }
  .home-program__body {
    padding:4.55rem .9rem 1rem;
  }
  .home-program__meta {
    top:.7rem;
    right:.8rem;
    left:.8rem;
  }
  .home-program__meta strong,.home-program__meta span {
    width:50px;
    height:50px;
    border-width:3px;
  }
  .home-program h3 {
    min-height:0;
    margin:0 0 .55rem;
  }
}

@media (max-width:960px) {
  body.public-home-shell .public-menu-toggle,
  body.public-home-shell .public-header.is-past-hero .public-menu-toggle {
    color:#fff;
    border-color:rgb(255 255 255 / 55%);
    background:linear-gradient(135deg,#087a52 0%,#087e98 44%,#176fc0 72%,#f4bf19 145%);
  }
  body.public-home-shell .public-menu-toggle::before,
  body.public-home-shell .public-header.is-past-hero .public-menu-toggle::before {
    background:linear-gradient(135deg,#ef7100 0%,#e52c82 48%,#663097 100%);
  }
}

/* Microinterações editoriais da home. */
.home-hero__pillar {
  position:relative;
  overflow:hidden;
  border-radius:1.25rem;
  transition:transform .35s cubic-bezier(.2,.8,.2,1),background .35s,box-shadow .35s;
}
.home-hero__pillar::after {
  position:absolute;
  top:-70%;
  left:-45%;
  width:32%;
  height:240%;
  background:linear-gradient(90deg,transparent,rgb(255 255 255 / 35%),transparent);
  content:"";
  pointer-events:none;
  transform:rotate(18deg) translateX(-250%);
  transition:transform .75s ease;
}
.home-hero__pillar:hover,.home-hero__pillar:focus-within {
  background:rgb(255 255 255 / 9%);
  box-shadow:0 16px 34px rgb(0 0 0 / 18%);
  transform:translateY(-7px);
}
.home-hero__pillar:hover::after,.home-hero__pillar:focus-within::after { transform:rotate(18deg) translateX(650%); }
.home-hero__pillar-icon { transition:transform .4s cubic-bezier(.2,.8,.2,1),background .35s; }
.home-hero__pillar:hover .home-hero__pillar-icon { background:color-mix(in srgb,var(--pillar-accent) 28%,transparent); transform:rotate(-5deg) scale(1.1); }

.home-principle { transition:transform .4s cubic-bezier(.2,.8,.2,1); }
.home-principle h3 { font-size:1.35rem; transition:color .3s,transform .3s; }
.home-principle p { max-width:265px; font-size:.95rem; }
.home-principle__media { transition:transform .5s cubic-bezier(.2,.8,.2,1),border-radius .5s,box-shadow .5s; }
.home-principle__badge { transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .4s; }
.home-principle:hover { transform:translateY(-9px); }
.home-principle:hover .home-principle__media { border-radius:72px 72px 105px 105px; box-shadow:0 24px 48px rgb(16 38 80 / 18%); transform:scale(1.035); }
.home-principle:hover .home-principle__badge { box-shadow:0 12px 25px color-mix(in srgb,var(--principle-color) 40%,transparent); transform:translateX(-50%) rotate(8deg) scale(1.1); }
.home-principle:hover h3 { transform:translateY(3px); }

.home-about::before { animation:home-about-frame 8s ease-in-out infinite alternate; }
.home-about::after { animation:home-about-dots 10s linear infinite; }
.home-about__content { position:relative; }
.home-about__content::before {
  position:absolute;
  z-index:-1;
  top:-1.4rem;
  left:-1.5rem;
  width:82px;
  height:82px;
  border-radius:24px;
  background:linear-gradient(135deg,rgb(244 191 25 / 20%),rgb(239 113 0 / 10%));
  content:"";
  transform:rotate(-12deg);
  transition:transform .6s,opacity .6s;
}
.home-about__content:hover::before { opacity:.75; transform:rotate(8deg) scale(1.18); }
.home-about__content h2 span { background-size:200% 100%; transition:background-position .8s ease; }
.home-about__content:hover h2 span { background-position:100% center; }
.home-about__video>video { display:block; position:absolute; width:100%; height:100%; object-fit:cover; inset:0; }
.home-about__video::after { display:none; }
@keyframes home-about-frame { to { border-radius:80px 20px 80px 20px; transform:translate(18px,-12px) rotate(3deg); } }
@keyframes home-about-dots { to { background-position:44px 22px; } }

.home-impact .home-section-heading h2 span {
  background:linear-gradient(90deg,#07864f,#176fc0,#ef7100,#07864f) 0 0/250% 100%;
  background-clip:text;
  -webkit-background-clip:text;
  -webkit-text-fill-color:transparent;
  animation:home-gradient-text 7s linear infinite;
}
.home-stat { position:relative; overflow:hidden; transition:transform .35s,background .35s,box-shadow .35s; }
.home-stat::after { position:absolute; right:-35px; bottom:-35px; width:80px; height:80px; border-radius:50%; background:color-mix(in srgb,var(--stat-color) 14%,transparent); content:""; transition:transform .4s; }
.home-stat:hover { z-index:2; background:rgb(255 255 255 / 92%); box-shadow:0 18px 34px rgb(16 38 80 / 13%); transform:translateY(-7px); }
.home-stat:hover::after { transform:scale(1.7); }
.home-stat i { transition:transform .4s cubic-bezier(.2,.8,.2,1),box-shadow .35s; }
.home-stat:hover i { box-shadow:0 10px 24px color-mix(in srgb,var(--stat-color) 34%,transparent); transform:rotate(-8deg) scale(1.1); }
.home-impact__action>span { animation:home-heartbeat 2.2s ease-in-out infinite; }

.home-carousel__track { cursor:grab; scroll-behavior:smooth; }
.home-carousel__track.is-dragging { cursor:grabbing; scroll-behavior:auto; scroll-snap-type:none; user-select:none; }
.home-carousel__track.is-dragging * { pointer-events:none; }
.home-campaign__media { transition:filter .45s,transform .65s cubic-bezier(.2,.8,.2,1); }
.home-campaign.is-active:hover .home-campaign__media { filter:saturate(1.1); transform:scale(1.025); }

.home-publications h2 span,.home-news .home-section-heading h2 span { background:linear-gradient(90deg,#07864f,#176fc0,#ef7100,#07864f) 0 0/250% 100%; background-clip:text; -webkit-background-clip:text; -webkit-text-fill-color:transparent; transition:background-position .8s; }
.home-publications:hover h2 span,.home-news:hover .home-section-heading h2 span { background-position:100% center; }
.home-notices article time span { transition:transform .4s,box-shadow .4s; }
.home-notices article:hover time span { box-shadow:0 9px 20px color-mix(in srgb,var(--notice-color) 28%,transparent); transform:rotate(8deg) scale(1.1); }
.home-programs__action>span,.home-campaigns__donation-icon { animation:home-heartbeat 2.4s ease-in-out infinite; }
.home-closing__lines { animation:home-lines-float 7s ease-in-out infinite alternate; }
.home-closing__divider svg { animation:home-heartbeat 2.4s ease-in-out infinite; }

@keyframes home-gradient-text { to { background-position:250% center; } }
@keyframes home-heartbeat { 0%,70%,100% { transform:scale(1); } 78% { transform:scale(1.12); } 86% { transform:scale(.98); } 92% { transform:scale(1.08); } }
@keyframes home-lines-float { to { transform:translate(-18px,16px); } }

@media (max-width:620px) {
  .home-principle h3 { font-size:1.12rem; }
  .home-principle p { max-width:145px; font-size:.82rem; line-height:1.5; }
  .home-hero__pillar:hover,.home-hero__pillar:focus-within,.home-principle:hover { transform:none; }
}

@media (prefers-reduced-motion:reduce) {
  .home-about::before,.home-about::after,.home-impact .home-section-heading h2 span,.home-impact__action>span,.home-programs__action>span,.home-campaigns__donation-icon,.home-closing__lines,.home-closing__divider svg { animation:none!important; }
}

/* Escala tipográfica secundária: títulos principais permanecem inalterados. */
.home-page .home-kicker { font-size:.82rem; }
.home-page .home-button,.home-page .home-text-link { font-size:.96rem; }
.home-section-heading--center>p:last-child,.home-section-heading--split>p { font-size:1.05rem; }
.home-hero__identity>p { font-size:clamp(1.08rem,1.75vw,1.72rem); }
.home-hero__identity .home-hero__motto { font-size:clamp(.94rem,1.08vw,1.08rem); }
.home-hero__pillar strong { font-size:.96rem; }
.home-hero__pillar small { font-size:.9rem; }
.home-principle h3 { font-size:1.45rem; }
.home-principle p { font-size:1.04rem; }
.home-about__content>p:not(.home-kicker) { font-size:1.08rem; }
.home-stat p { font-size:.9rem; }
.home-chart-card h3 { font-size:1.52rem; }
.home-chart-card ul { font-size:.82rem; }
.home-chart-tooltip strong { font-size:.86rem; }
.home-chart-tooltip small { font-size:.76rem; }
.home-impact__action p { font-size:1.02rem; }
.home-campaign__body>p:not(.home-kicker),.home-campaign--all__body>p:not(.home-kicker) { font-size:1rem; }
.home-campaign__meta small { font-size:.8rem; }
.home-campaign__meta strong { font-size:1rem; }
.home-campaign__free-value strong { font-size:.94rem; }
.home-campaign__free-value small { font-size:.8rem; }
.home-campaigns__donation-note strong { font-size:clamp(1.22rem,2vw,1.62rem); }
.home-campaigns__donation-note p { font-size:.95rem; }
.home-program h3 { font-size:1.16rem; }
.home-program p { font-size:.84rem; }
.home-program a { font-size:.84rem; }
.home-programs__action p { font-size:.92rem; }
.home-programs__action a { font-size:.86rem; }
.home-publications__grid>div:first-child>p:not(.home-kicker) { font-size:1.02rem; }
.home-notices h3 { font-size:1.1rem; }
.home-notices p { font-size:.87rem; }
.home-notices small,.home-notices time { font-size:.76rem; }
.home-news .home-section-heading>div>p:last-child { font-size:1.04rem; }
.home-news__all { font-size:.94rem; }
.home-news-card h3,.home-news-card--featured h3 { font-size:1.08rem; }
.home-news-card--featured h3 { font-size:clamp(1.48rem,2.1vw,1.92rem); }
.home-news-card__body>p { font-size:.84rem; }
.home-news-card--featured .home-news-card__body>p { font-size:1rem; }
.home-news-card__body time { font-size:.77rem; }
.home-news-card__more { font-size:.87rem; }
.home-closing__text { font-size:1.08rem; }

@media (max-width:620px) {
  .home-page .home-kicker { font-size:.72rem; }
  .home-page .home-button,.home-page .home-text-link { font-size:.9rem; }
  .home-section-heading--center>p:last-child,.home-section-heading--split>p { font-size:.94rem; }
  .home-hero__identity>p { font-size:1rem; }
  .home-hero__identity .home-hero__motto { font-size:.8rem; }
  .home-hero__pillar strong { font-size:.74rem; }
  .home-hero__pillar small { font-size:.72rem; }
  .home-principle h3 { font-size:1.2rem; }
  .home-principle p { font-size:.88rem; }
  .home-about__content>p:not(.home-kicker) { font-size:1rem; }
  .home-stat p { font-size:.76rem; }
  .home-chart-card h3 { font-size:1.28rem; }
  .home-impact__action p { font-size:.94rem; }
  .home-campaign__body>p:not(.home-kicker),.home-campaign--all__body>p:not(.home-kicker) { font-size:.92rem; }
  .home-program h3 { font-size:1.05rem; }
  .home-program p { font-size:.79rem; }
  .home-program a { font-size:.8rem; }
  .home-notices h3 { font-size:1rem; }
  .home-news-card h3,.home-news-card--featured h3 { font-size:1rem; }
  .home-news-card__body>p,.home-news-card--featured .home-news-card__body>p { font-size:.78rem; }
  .home-news-card__more { font-size:.8rem; }
  .home-closing__text { font-size:.96rem; }
}

.home-program__media picture,
.home-closing__visual picture {
  display:block;
  width:100%;
  height:100%;
}
