:root { --ld-red:#d51a27; --ld-red-dark:#a90918; --ld-yellow:#fbc600; --ld-navy:#202b50; --ld-purple:#553b8e; --ld-white:#fff; --ld-ink:#141a32; --ld-max:1200px; }
html { scroll-behavior:smooth; }
.leandro-landing-template, .leandro-landing-template body { margin:0; padding:0; background:var(--ld-red); }
.leandro-landing-template body { overflow-x:hidden; }
.ld-landing, .ld-landing *, .ld-landing *::before, .ld-landing *::after { box-sizing:border-box; }
.ld-landing { position:relative; overflow:hidden; color:var(--ld-white); background:var(--ld-red); font-family:Arial,Helvetica,sans-serif; line-height:1.5; -webkit-font-smoothing:antialiased; }
.ld-landing::before { position:absolute; z-index:0; inset:0; content:""; pointer-events:none; background:radial-gradient(circle at 5% 20%,rgb(255 210 0/.12),transparent 20rem),radial-gradient(circle at 96% 38%,rgb(82 57 142/.22),transparent 22rem); }
.ld-landing > *, .ld-landing main { position:relative; z-index:1; }
.ld-visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.ld-skip-link { position:fixed; z-index:100000; top:.75rem; left:.75rem; transform:translateY(-180%); padding:.75rem 1rem; border-radius:.35rem; color:var(--ld-ink); background:var(--ld-yellow); font:700 1rem/1.2 Arial,Helvetica,sans-serif; transition:transform .16s ease; }
.ld-skip-link:focus { transform:translateY(0); }

.ld-site-header { display:grid; grid-template-columns:1fr auto 1fr; width:min(calc(100% - 2rem),var(--ld-max)); min-height:4.75rem; align-items:center; gap:1rem; margin:0 auto; padding:.75rem 0; }
.ld-site-nav { display:flex; align-items:center; justify-content:center; gap:clamp(.75rem,2vw,1.75rem); }
.ld-site-nav a { color:rgb(255 255 255/.9); font-size:.83rem; font-weight:800; letter-spacing:.03em; text-decoration:none; transition:color .15s ease; }
.ld-site-nav a:hover { color:var(--ld-yellow); }
.ld-site-header__donate { display:inline-flex; grid-column:3; justify-self:end; align-items:center; gap:.4rem; padding:.55rem .8rem; border:2px solid var(--ld-yellow); border-radius:.45rem; color:var(--ld-ink); background:var(--ld-yellow); font-size:.82rem; font-weight:900; text-decoration:none; white-space:nowrap; }
.ld-site-header--institutional { grid-template-columns:1fr; }.ld-site-header--institutional .ld-site-nav { justify-content:center; }

.ld-hero { width:min(calc(100% - 2rem),var(--ld-max)); margin:0 auto; padding:clamp(.8rem,2vw,1.5rem) 0 0; text-align:center; }
.ld-hero__logo { display:block; width:min(100%,25rem); height:auto; margin:0 auto -.45rem; filter:drop-shadow(0 .7rem 0 rgb(32 43 80/.22)); }
.ld-hero__grid { display:grid; grid-template-columns:minmax(0,.9fr) minmax(17rem,.86fr); align-items:end; gap:clamp(1rem,5vw,5rem); padding:clamp(2.25rem,5vw,4.5rem) clamp(1.25rem,3vw,2.5rem) 0; text-align:left; }
.ld-hero__copy { padding:clamp(1rem,4vw,3rem) 0; }
.ld-kicker { margin:0 0 .55rem; color:var(--ld-yellow); font-size:.8rem; font-weight:950; letter-spacing:.15em; line-height:1.25; text-transform:uppercase; }
.ld-hero__headline { max-width:8ch; margin:0; color:var(--ld-white); font-size:clamp(3rem,7.1vw,6.7rem); font-weight:950; letter-spacing:-.075em; line-height:.86; text-transform:uppercase; text-wrap:balance; }
.ld-hero__intro { max-width:34rem; margin:1.25rem 0 0; color:rgb(255 255 255/.93); font-size:clamp(1rem,1.65vw,1.2rem); font-weight:600; line-height:1.45; }
.ld-hero__actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.6rem; }
.ld-hero__portrait { position:relative; min-height:29rem; align-self:stretch; overflow:visible; }
.ld-hero__portrait img { position:absolute; bottom:0; left:50%; width:clamp(21rem,34vw,34rem); max-width:none; height:auto; transform:translateX(-50%); }

.ld-button { display:inline-flex; min-height:3.15rem; align-items:center; justify-content:center; gap:.5rem; padding:.78rem 1.05rem; border:2px solid transparent; border-radius:.6rem; font:900 .95rem/1.18 Arial,Helvetica,sans-serif; text-align:center; text-decoration:none; cursor:pointer; transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease; }
.ld-button:not(:disabled):hover { transform:translateY(-2px); }
.ld-button--yellow { color:var(--ld-ink); background:var(--ld-yellow); box-shadow:0 .3rem 0 var(--ld-red-dark); }
.ld-button--yellow:not(:disabled):hover { background:#ffda35; box-shadow:0 .42rem 0 var(--ld-red-dark); }
.ld-button--outline { border-color:rgb(255 255 255/.8); color:var(--ld-white); background:transparent; }
.ld-button--outline:hover { color:var(--ld-ink); background:var(--ld-white); }
.ld-button--white { color:var(--ld-navy); background:var(--ld-white); box-shadow:0 .3rem 0 var(--ld-purple); }
.ld-button:disabled, .ld-reset:disabled, .ld-range-control input:disabled { cursor:not-allowed; opacity:.5; }

.ld-section { width:min(calc(100% - 2rem),var(--ld-max)); margin:0 auto; padding:clamp(3.75rem,8vw,7rem) 0; }
.ld-section-heading { max-width:50rem; margin:0 auto 2rem; text-align:center; }
.ld-section-heading h2, .ld-bio h2, .ld-listening h2 { margin:0; color:var(--ld-navy); font-size:clamp(2.15rem,4.2vw,4rem); font-weight:950; letter-spacing:-.06em; line-height:.95; text-wrap:balance; }
.ld-section-heading p:last-child { margin:.9rem auto 0; color:rgb(32 43 80/.78); font-size:1.05rem; font-weight:600; }
.ld-section-heading--light h2 { color:var(--ld-white); }
.ld-section-heading--light p:last-child { color:rgb(255 255 255/.88); }

.ld-bio { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(18rem,.85fr); width:100%; max-width:none; min-height:34rem; align-items:stretch; gap:clamp(1.5rem,6vw,6rem); padding:clamp(3.25rem,7vw,6rem) max(1rem,calc((100% - var(--ld-max))/2)) 0; color:var(--ld-white); background:var(--ld-navy); border-bottom:1rem solid var(--ld-red); }
.ld-bio__photo { order:2; }.ld-bio__photo-field { position:relative; height:100%; min-height:53rem; overflow:hidden; background:transparent; }
.ld-bio__photo-field::before { position:absolute; inset:12% 12% 0; content:""; border-radius:999px 999px 0 0; background:rgb(82 57 142/.46); }
.ld-bio__photo img { position:absolute; z-index:1; right:-.5rem; bottom:0; left:auto; width:min(130%,34rem); max-width:none; height:auto; transform:none; }
.ld-bio__copy { align-self:center; max-width:38rem; padding:0 0 3rem; }.ld-bio h2 { color:var(--ld-white); }.ld-bio__copy p:not(.ld-kicker) { max-width:46rem; margin:.95rem 0 0; color:rgb(255 255 255/.9); font-size:1.02rem; font-weight:650; line-height:1.55; }
.ld-bio blockquote { margin:1.4rem 0 0; padding:1.05rem 0 1.05rem 1.1rem; border-left:.35rem solid var(--ld-yellow); color:var(--ld-yellow); font-size:1.2rem; font-weight:900; line-height:1.18; }

.ld-donation-feature { width:100%; padding:clamp(4rem,8vw,7rem) max(1.25rem,calc((100% - var(--ld-max))/2)); color:var(--ld-white); background:var(--ld-red); }.ld-donation-feature__inner { display:grid; grid-template-columns:minmax(16rem,.78fr) minmax(0,1.05fr); align-items:center; gap:clamp(2rem,8vw,8rem); width:min(100%,var(--ld-max)); margin:0 auto; }.ld-donation-feature__visual { display:block; width:min(100%,28rem); margin:0 auto; border-radius:.9rem; overflow:hidden; box-shadow:0 1rem 2.2rem rgb(0 0 0/.28); transition:transform .18s ease,box-shadow .18s ease; }.ld-donation-feature__visual:hover { transform:translateY(-.25rem); box-shadow:0 1.25rem 2.5rem rgb(0 0 0/.35); }.ld-donation-feature__visual img { display:block; width:100%; height:auto; }.ld-donation-feature__copy { max-width:37rem; }.ld-donation-feature__copy h2 { margin:.3rem 0 .8rem; color:var(--ld-white); font-size:clamp(2.65rem,5.5vw,5rem); font-weight:950; letter-spacing:-.065em; line-height:.9; }.ld-donation-feature__copy > p:not(.ld-kicker) { max-width:31rem; margin:0; color:rgb(255 255 255/.92); font-size:clamp(1.05rem,1.8vw,1.25rem); font-weight:650; line-height:1.48; }.ld-donation-feature__actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.6rem; }

.ld-trajectory { padding-top:1.5rem; }
.ld-timeline { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; max-width:66rem; padding:0; margin:0 auto; list-style:none; counter-reset:timeline; }
.ld-timeline li { position:relative; min-height:9rem; padding:1.1rem 1rem 1rem 1.25rem; border-top:5px solid var(--ld-yellow); border-radius:.3rem; color:var(--ld-white); background:var(--ld-navy); box-shadow:.38rem .38rem 0 var(--ld-purple); }
.ld-timeline strong { display:block; margin-bottom:.45rem; color:var(--ld-yellow); font-size:1.55rem; font-weight:950; letter-spacing:-.05em; line-height:1; }
.ld-timeline span { display:block; font-size:.92rem; font-weight:600; line-height:1.45; }

.ld-causes { width:100%; max-width:none; padding-right:max(1rem,calc((100% - var(--ld-max))/2)); padding-left:max(1rem,calc((100% - var(--ld-max))/2)); background:var(--ld-navy); }
.ld-cause-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; width:min(100%,var(--ld-max)); margin:0 auto; }
.ld-cause-card { min-height:15.5rem; padding:1.35rem; border:2px solid rgb(255 255 255/.2); border-radius:.8rem; background:rgb(255 255 255/.06); }
.ld-cause-card:nth-child(2n) { background:rgb(82 57 142/.5); }
.ld-cause-number { color:var(--ld-yellow); font-size:.85rem; font-weight:950; letter-spacing:.12em; }
.ld-cause-icon { display:grid; width:2.75rem; height:2.75rem; place-items:center; margin:1rem 0 .6rem; border:2px solid var(--ld-yellow); border-radius:50%; color:var(--ld-yellow); }.ld-cause-icon svg { width:1.35rem; height:1.35rem; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.9; }.ld-cause-card:first-child .ld-cause-icon svg,.ld-cause-card:nth-child(2) .ld-cause-icon svg { fill:currentColor; stroke:none; }
.ld-cause-card h3 { margin:.95rem 0 .55rem; color:var(--ld-white); font-size:1.55rem; font-weight:950; letter-spacing:-.04em; line-height:1; }
.ld-cause-card p { margin:0; color:rgb(255 255 255/.88); font-size:.94rem; font-weight:600; line-height:1.5; }

.ld-listening { width:100%; max-width:none; padding:clamp(4.5rem,9vw,7rem) 0 2rem; color:var(--ld-white); background:var(--ld-red); }
.ld-listening__intro { max-width:52rem; padding:0 1.25rem; margin:0 auto 2.5rem; text-align:center; }
.ld-listening h2 { color:var(--ld-white); }.ld-listening__intro > p:last-child { margin:1rem 0 0; color:rgb(255 255 255/.9); font-size:1.08rem; font-weight:600; }
.ld-listening__grid { width:100%; }
.ld-map-card { overflow:hidden; color:var(--ld-white); background:var(--ld-red); }
.ld-community-form h3 { margin:0; color:var(--ld-white); font-size:clamp(1.75rem,3vw,2.35rem); font-weight:950; letter-spacing:-.05em; line-height:.97; }
.ld-community-map { width:100%; height:clamp(42rem,88vh,72rem); background:var(--ld-red); }
.ld-map-status { min-height:2.4rem; padding:.7rem 1rem .25rem; margin:0; color:var(--ld-yellow); background:var(--ld-red); font-size:.83rem; font-weight:700; text-align:center; }
.ld-map-note { margin:0; padding:0 1rem .75rem; color:rgb(255 255 255/.78); background:var(--ld-red); font-size:.72rem; font-weight:600; text-align:center; }
.ld-map-status.is-active { color:var(--ld-yellow); }
.ld-community-map .leaflet-control-attribution { color:var(--ld-ink); font-size:.65rem; }
.ld-community-map .leaflet-control-attribution a { color:var(--ld-purple); }
.ld-map-pin { display:grid; width:2.05rem; height:2.05rem; place-items:center; border:3px solid var(--ld-white); border-radius:50% 50% 50% 0; color:var(--ld-navy); background:var(--ld-yellow); box-shadow:0 .18rem .45rem rgb(0 0 0/.28); font:950 .75rem/1 Arial,Helvetica,sans-serif; transform:rotate(-45deg); }
.ld-map-pin span { transform:rotate(45deg); }
.ld-map-pin--draft { color:var(--ld-white); background:var(--ld-red); }
.ld-map-popup h4 { margin:0 0 .3rem; color:var(--ld-navy); font:900 1rem/1.1 Arial,Helvetica,sans-serif; }.ld-map-popup p { margin:.25rem 0 0; font:600 .84rem/1.35 Arial,Helvetica,sans-serif; }
.ld-neighborhood-label { border:0!important; border-radius:0!important; color:var(--ld-navy)!important; background:transparent!important; box-shadow:none!important; font:900 .58rem/1 Arial,Helvetica,sans-serif!important; text-align:center; text-shadow:-1px -1px 0 rgb(255 255 255/.75),1px -1px 0 rgb(255 255 255/.75),-1px 1px 0 rgb(255 255 255/.75),1px 1px 0 rgb(255 255 255/.75); }.ld-neighborhood-label::before { display:none!important; }

.ld-listening__action { padding:1.25rem 1.25rem 0; text-align:center; }.ld-map-form-trigger { min-height:2.75rem; border-color:rgb(255 255 255/.7); font-size:.82rem; }.ld-community-dialog { width:min(calc(100% - 2rem),38rem); max-height:min(90vh,62rem); padding:0; border:0; border-radius:1rem; color:var(--ld-white); background:var(--ld-purple); box-shadow:0 1rem 3rem rgb(0 0 0/.45); }.ld-community-dialog::backdrop { background:rgb(7 22 43/.8); backdrop-filter:blur(4px); }.ld-community-dialog__inner { position:relative; padding:1.35rem; }.ld-community-dialog__close { position:absolute; top:.5rem; right:.65rem; width:2rem; height:2rem; border:0; border-radius:999px; color:var(--ld-white); background:rgb(255 255 255/.14); font:900 1.5rem/1 Arial,Helvetica,sans-serif; cursor:pointer; }.ld-community-form { color:var(--ld-white); }
.ld-form-intro { margin:.5rem 0 1rem; color:rgb(255 255 255/.84); font-size:.82rem; font-weight:600; }
.ld-community-form > label:not(.ld-consent-check):not(.ld-honeypot) { display:block; margin-top:.8rem; color:var(--ld-white); font-size:.84rem; font-weight:900; }
.ld-community-form label span { color:rgb(255 255 255/.78); font-size:.76rem; font-weight:600; }
.ld-community-form input:not([type="checkbox"]), .ld-community-form select, .ld-community-form textarea { display:block; width:100%; margin-top:.32rem; padding:.68rem .72rem; border:2px solid transparent; border-radius:.48rem; color:var(--ld-ink); background:var(--ld-white); font:600 .95rem/1.35 Arial,Helvetica,sans-serif; }
.ld-community-form input:focus, .ld-community-form select:focus, .ld-community-form textarea:focus { border-color:var(--ld-yellow); outline:3px solid rgb(251 198 0/.35); }
.ld-community-form textarea { resize:vertical; }
.ld-honeypot { position:absolute!important; left:-10000px!important; width:1px!important; height:1px!important; overflow:hidden!important; }
.ld-location-choice { min-height:1.25rem; margin:1rem 0 .65rem; color:var(--ld-yellow); font-size:.82rem; font-weight:800; }
.ld-consent-check { display:grid; grid-template-columns:1.15rem 1fr; gap:.65rem; align-items:start; margin:.6rem 0; color:var(--ld-white); font-size:.8rem; font-weight:600; line-height:1.4; }
.ld-consent-check input { width:1.05rem; height:1.05rem; margin-top:.1rem; accent-color:var(--ld-yellow); }
.ld-privacy-details { margin:.75rem 0 1rem; padding:.7rem; border:1px solid rgb(255 255 255/.28); border-radius:.5rem; color:rgb(255 255 255/.89); background:rgb(32 43 80/.24); font-size:.78rem; line-height:1.4; }
.ld-privacy-details summary { color:var(--ld-yellow); font-weight:900; cursor:pointer; }.ld-privacy-details p { margin:.7rem 0 0; }
.ld-community-submit { width:100%; }.ld-form-status { min-height:1.3rem; margin:.8rem 0 0; color:var(--ld-yellow); font-size:.84rem; font-weight:800; }.ld-form-status.is-error { color:#ffe0e3; }

.ld-participation { width:100%; max-width:none; padding-right:max(1rem,calc((100% - var(--ld-max))/2)); padding-left:max(1rem,calc((100% - var(--ld-max))/2)); background:linear-gradient(135deg,var(--ld-red-dark),var(--ld-red) 55%,#bf1322); }
.ld-actions { display:grid; grid-template-columns:minmax(0,1fr); align-items:stretch; gap:clamp(1.5rem,4vw,3.5rem); width:min(100%,72rem); margin:0 auto; }
.ld-panel { min-width:0; }.ld-panel__heading { margin-bottom:1.2rem; text-align:center; }.ld-panel__heading h3 { margin:0 0 .5rem; color:var(--ld-white); font-size:clamp(1.85rem,3vw,2.8rem); font-weight:950; letter-spacing:-.055em; line-height:.98; }.ld-panel__heading p:last-child { max-width:31rem; margin:0 auto; color:rgb(255 255 255/.9); font-size:1rem; font-weight:600; }
.ld-donation-link { display:flex; flex-direction:column; align-items:stretch; gap:1rem; color:inherit; text-decoration:none; }.ld-donation-card { display:block; width:min(100%,32rem); height:auto; margin:0 auto; border-radius:.85rem; box-shadow:0 .8rem 1.8rem rgb(0 0 0/.26); transition:transform .18s ease,box-shadow .18s ease; }.ld-donation-link:hover .ld-donation-card { transform:translateY(-.25rem); box-shadow:0 1.05rem 2.2rem rgb(0 0 0/.32); }
.ld-editor { display:grid; grid-template-columns:minmax(18rem,.86fr) minmax(20rem,1fr); align-items:start; gap:1rem 2rem; }.ld-editor > :not(.ld-canvas-wrap) { grid-column:2; }.ld-canvas-wrap { grid-row:span 7; position:relative; width:100%; aspect-ratio:1; margin:0; overflow:hidden; border:3px solid var(--ld-white); border-radius:.9rem; background:linear-gradient(45deg,#dfdfdf 25%,transparent 25%),linear-gradient(-45deg,#dfdfdf 25%,transparent 25%),linear-gradient(45deg,transparent 75%,#dfdfdf 75%),linear-gradient(-45deg,transparent 75%,#dfdfdf 75%),#f4f4f4; background-position:0 0,0 .75rem,.75rem -.75rem,-.75rem 0; background-size:1.5rem 1.5rem; box-shadow:0 .7rem 1.5rem rgb(0 0 0/.24); }.ld-canvas { display:block; width:100%; height:100%; cursor:grab; touch-action:none; }.ld-canvas.is-dragging { cursor:grabbing; }
.ld-canvas-placeholder { position:absolute; inset:50% auto auto 50%; display:flex; width:58%; min-height:8rem; transform:translate(-50%,-50%); flex-direction:column; align-items:center; justify-content:center; gap:.35rem; border:2px dashed rgb(255 255 255/.82); border-radius:50%; color:var(--ld-white); background:rgb(36 48 87/.75); font-size:clamp(.8rem,2vw,1rem); font-weight:800; pointer-events:none; }.ld-canvas-placeholder[hidden] { display:none; }.ld-canvas-placeholder__icon { font-size:clamp(2rem,6vw,3.25rem); font-weight:400; line-height:.9; }
.ld-file-button { position:relative; width:100%; overflow:hidden; touch-action:manipulation; }.ld-file-button:focus-within { outline:4px solid var(--ld-white); outline-offset:4px; }.ld-file-input { position:absolute; z-index:2; inset:0; width:100%; height:100%; margin:0; padding:0; border:0; opacity:0; cursor:pointer; font-size:1rem; }.ld-file-button > span { pointer-events:none; }
.ld-help,.ld-privacy,.ld-status { margin:0; font-size:.86rem; line-height:1.45; }.ld-help { color:rgb(255 255 255/.76); }.ld-privacy { padding:.75rem; border:1px solid rgb(251 198 0/.55); border-radius:.55rem; color:var(--ld-white); background:rgb(251 198 0/.08); }.ld-privacy span,.ld-status { color:var(--ld-yellow); font-weight:900; }.ld-status.is-error { color:#ffd6da; }
.ld-frame-picker { min-width:0; margin:0; padding:0; border:0; }.ld-frame-picker legend,.ld-adjustments__title { margin:0 0 .65rem; padding:0; color:var(--ld-yellow); font-size:.92rem; font-weight:900; }.ld-frame-list { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.65rem; }.ld-frame-option { min-width:0; padding:.35rem; border:2px solid transparent; border-radius:.65rem; color:var(--ld-white); background:rgb(255 255 255/.08); font:800 .78rem/1.2 Arial,Helvetica,sans-serif; cursor:pointer; transition:border-color .14s ease,background-color .14s ease,transform .14s ease; }.ld-frame-option:hover { transform:translateY(-2px); background:rgb(255 255 255/.14); }.ld-frame-option.is-selected { border-color:var(--ld-yellow); background:rgb(251 198 0/.14); }.ld-frame-option img { display:block; width:100%; height:auto; margin-bottom:.3rem; border-radius:.4rem; background:var(--ld-red); }
.ld-adjustments { padding:.85rem; border-radius:.65rem; background:rgb(255 255 255/.07); }.ld-range-control { display:grid; grid-template-columns:4rem minmax(0,1fr); align-items:center; gap:.75rem; margin-top:.65rem; color:var(--ld-white); font-size:.85rem; font-weight:800; }.ld-range-control input { width:100%; accent-color:var(--ld-yellow); }.ld-reset { margin-top:.85rem; padding:.25rem 0; border:0; border-bottom:1px solid currentColor; color:var(--ld-white); background:transparent; font:700 .84rem/1.2 Arial,Helvetica,sans-serif; cursor:pointer; }.ld-download { width:100%; }

.ld-footer { display:flex; position:relative; isolation:isolate; width:100%; min-height:min(52vw,42rem); margin:0; padding:2.5rem max(1rem,calc((100% - var(--ld-max))/2)); flex-direction:column; justify-content:flex-end; color:rgb(255 255 255/.9); background-color:var(--ld-red); background-image:linear-gradient(to bottom,rgb(222 21 37/.76),rgb(222 21 37/.34) 28%,rgb(222 21 37/.22)),url('../images/bg-footer.png?ver=1.0.6'); background-position:center; background-repeat:no-repeat; background-size:cover; background-blend-mode:multiply; font-size:.83rem; line-height:1.55; text-align:center; text-shadow:0 1px 4px rgb(0 0 0/.7); }.ld-footer__info p { margin:.15rem 0; }.ld-footer strong { color:var(--ld-yellow); }

/* Refinamentos das seções de campanha */
.ld-donation-feature { background:var(--ld-navy); }
.ld-bio { background:var(--ld-red); }.ld-bio__photo-field { overflow:visible; }.ld-bio__photo-field::before { display:none; }.ld-bio h2 { font-size:clamp(2rem,3.45vw,3.25rem); }.ld-bio__copy p:not(.ld-kicker) { font-size:.94rem; line-height:1.48; }.ld-bio blockquote { font-size:1.05rem; }
.ld-participation { color:var(--ld-navy); background:var(--ld-yellow); }.ld-participation .ld-section-heading--light h2,.ld-participation .ld-panel__heading h3 { color:var(--ld-navy); }.ld-participation .ld-section-heading--light p:last-child,.ld-participation .ld-panel__heading p:last-child,.ld-participation .ld-help,.ld-participation .ld-privacy,.ld-participation .ld-range-control { color:rgb(32 43 80/.9); }.ld-participation .ld-frame-picker legend,.ld-participation .ld-adjustments__title,.ld-participation .ld-privacy span,.ld-participation .ld-status { color:var(--ld-red-dark); }.ld-participation .ld-frame-option { color:var(--ld-navy); background:rgb(255 255 255/.5); }.ld-participation .ld-frame-option:hover { background:rgb(255 255 255/.76); }.ld-participation .ld-frame-option.is-selected { border-color:var(--ld-red); background:rgb(255 255 255/.76); }.ld-participation .ld-adjustments { background:rgb(32 43 80/.1); }.ld-participation .ld-reset { color:var(--ld-navy); }.ld-participation .ld-privacy { border-color:rgb(32 43 80/.3); background:rgb(255 255 255/.32); }.ld-participation .ld-file-button { grid-column:1!important; grid-row:8; align-self:start; }.ld-participation .ld-file-button:focus-within { outline-color:var(--ld-red); }
.ld-footer { background-color:#16264a; background-image:url('../images/bg-footer.png?ver=1.0.6'); background-blend-mode:normal; }

/* Paleta final e alinhamentos */
.ld-bio__photo img { bottom:-1rem; }
.ld-listening,.ld-listening .ld-map-card,.ld-listening .ld-community-map,.ld-listening .ld-map-status,.ld-listening .ld-map-note { background:var(--ld-purple); }
.ld-participation { color:var(--ld-white); background:var(--ld-red); }.ld-participation .ld-section-heading--light h2,.ld-participation .ld-panel__heading h3 { color:var(--ld-white); }.ld-participation .ld-section-heading--light p:last-child,.ld-participation .ld-panel__heading p:last-child,.ld-participation .ld-help,.ld-participation .ld-privacy,.ld-participation .ld-range-control { color:rgb(255 255 255/.9); }.ld-participation .ld-frame-picker legend,.ld-participation .ld-adjustments__title,.ld-participation .ld-privacy span,.ld-participation .ld-status { color:var(--ld-yellow); }.ld-participation .ld-frame-option { color:var(--ld-white); background:rgb(255 255 255/.08); }.ld-participation .ld-frame-option:hover { background:rgb(255 255 255/.14); }.ld-participation .ld-frame-option.is-selected { border-color:var(--ld-yellow); background:rgb(251 198 0/.14); }.ld-participation .ld-adjustments { background:rgb(255 255 255/.07); }.ld-participation .ld-reset { color:var(--ld-white); }.ld-participation .ld-privacy { border-color:rgb(251 198 0/.55); background:rgb(251 198 0/.08); }
.ld-footer { min-height:11rem; background:var(--ld-red); text-shadow:none; }

.ld-social-strip { width:100%; color:var(--ld-navy); background:var(--ld-yellow); }.ld-social-strip__inner { display:flex; width:min(100%,var(--ld-max)); min-height:4.5rem; padding:.8rem max(1.25rem,calc((100% - var(--ld-max))/2)); margin:0 auto; align-items:center; justify-content:center; gap:clamp(.8rem,3vw,2rem); font-weight:900; text-align:center; }.ld-social-strip a,.ld-social-strip__pending { display:inline-flex; align-items:center; gap:.3rem; color:var(--ld-navy); font-weight:950; text-decoration:none; }.ld-social-strip a::before,.ld-social-strip__pending::before { display:inline-grid; width:1.3rem; height:1.3rem; place-items:center; border:2px solid currentColor; border-radius:999px; content:"↗"; font-size:.72rem; line-height:1; }.ld-social-strip a:hover { text-decoration:underline; }
.ld-editor > .ld-editor__preview { grid-column:1; }.ld-editor > .ld-editor__controls { display:flex; grid-column:2; flex-direction:column; gap:1rem; }.ld-editor__preview { display:flex; min-width:0; flex-direction:column; gap:1rem; }.ld-editor__preview .ld-canvas-wrap { width:100%; }.ld-editor__preview .ld-file-button { grid-column:auto!important; grid-row:auto; margin:0; }
.ld-footer { min-height:0; aspect-ratio:1366/768; padding:1rem max(1rem,calc((100% - var(--ld-max))/2)) clamp(.9rem,2.5vw,1.75rem); background-color:var(--ld-red); background-image:linear-gradient(to bottom,var(--ld-red) 0%,rgb(211 26 39/.86) 8%,rgb(211 26 39/0) 30%),linear-gradient(to top,rgb(7 22 43/1) 0%,rgb(7 22 43/.9) 14%,rgb(7 22 43/0) 42%),url('../images/bg-footer.png?ver=1.0.6'); background-blend-mode:normal; text-shadow:0 1px 4px rgb(0 0 0/.7); }

.ld-social-strip__inner { min-height:3.35rem; padding:.5rem max(1rem,calc((100% - var(--ld-max))/2)); flex-wrap:nowrap; gap:clamp(.7rem,2vw,1.45rem); color:var(--ld-red); font-size:clamp(.72rem,1.25vw,.92rem); white-space:nowrap; overflow-x:auto; scrollbar-width:none; }.ld-social-strip__inner::-webkit-scrollbar { display:none; }.ld-social-strip__label { font-weight:950; }.ld-social-strip__link,.ld-social-strip__pending { gap:.35rem; color:var(--ld-red); font-weight:900; }.ld-social-strip a.ld-social-strip__link::before,.ld-social-strip span.ld-social-strip__pending::before { display:none; }.ld-social-strip__link svg { display:block; width:1.05rem; height:1.05rem; flex:0 0 auto; fill:none; stroke:currentColor; stroke-width:1.9; }
.ld-bio { align-items:start; padding-top:clamp(1.35rem,3vw,2.35rem); }.ld-bio__copy { align-self:start; padding-top:1.2rem; }

.ld-landing a:focus-visible,.ld-landing button:focus-visible,.ld-landing input:focus-visible,.ld-landing select:focus-visible,.ld-landing textarea:focus-visible { outline:3px solid var(--ld-yellow); outline-offset:3px; }
@media (max-width:760px) { .ld-site-header { width:calc(100% - 2.5rem); min-height:3.75rem; grid-template-columns:1fr; }.ld-site-nav { display:none; }.ld-site-header__donate { grid-column:1; font-size:.76rem; }.ld-hero { width:calc(100% - 2.5rem); padding-bottom:0; }.ld-hero__logo { width:min(100%,19.5rem); }.ld-hero__grid { grid-template-columns:1fr; gap:0; padding:2.5rem 1rem 0; text-align:center; }.ld-hero__copy { padding:0; }.ld-hero__headline { max-width:none; font-size:clamp(3.2rem,15vw,5.7rem); }.ld-hero__intro { margin-right:auto; margin-left:auto; }.ld-hero__actions { justify-content:center; }.ld-hero__portrait { min-height:25rem; margin-top:2rem; }.ld-hero__portrait img { width:28rem; }.ld-section { width:calc(100% - 2.5rem); padding:3.75rem 0; }.ld-bio { grid-template-columns:1fr; width:100%; gap:0; padding:3.25rem 1.25rem 0; }.ld-bio__copy { order:1; padding:0 0 1.3rem; text-align:left; }.ld-bio__photo { order:2; max-width:25rem; width:100%; margin:0 auto; }.ld-bio__photo-field { min-height:39rem; }.ld-bio__photo img { right:-.5rem; width:31rem; }.ld-bio blockquote { text-align:left; }.ld-donation-feature { padding:3.75rem 1.25rem; }.ld-donation-feature__inner { grid-template-columns:1fr; gap:2rem; }.ld-donation-feature__copy { text-align:center; }.ld-donation-feature__copy > p:not(.ld-kicker) { margin-right:auto; margin-left:auto; }.ld-donation-feature__actions { justify-content:center; }.ld-social-strip__inner { flex-wrap:wrap; gap:.7rem 1rem; }.ld-timeline,.ld-cause-grid { grid-template-columns:1fr; }.ld-timeline li { min-height:auto; }.ld-causes,.ld-participation { width:100%; padding-right:1.25rem; padding-left:1.25rem; }.ld-listening { width:100%; padding:3.75rem 0 1.5rem; }.ld-listening__grid,.ld-actions,.ld-editor { grid-template-columns:1fr; }.ld-editor > :not(.ld-canvas-wrap) { grid-column:auto; }.ld-canvas-wrap { grid-row:auto; width:min(100%,32rem); margin:0 auto; }.ld-community-map { min-height:0; height:65vh; }.ld-community-dialog { width:calc(100% - 1.25rem); }.ld-panel__heading h3 { font-size:2.2rem; }.ld-footer { min-height:30rem; aspect-ratio:auto; }.ld-neighborhood-label { font-size:.45rem!important; } }
@media (max-width:380px) { .ld-site-header,.ld-hero,.ld-section { width:calc(100% - 2rem); }.ld-site-header__donate { padding:.48rem .58rem; font-size:.68rem; }.ld-button { width:100%; }.ld-hero__actions { width:100%; }.ld-frame-option { font-size:.67rem; }.ld-canvas-wrap,.ld-community-map { width:100%; }.ld-community-map { height:20rem; } }
@media (max-width:760px) {
	.ld-landing { overflow-x:clip; }
	.ld-site-header { width:calc(100% - 2rem); min-height:4.5rem; padding:.65rem 0; }
	.ld-site-header__donate { justify-self:center; padding:.72rem 1.25rem; border-radius:.7rem; font-size:.9rem; box-shadow:0 .25rem 0 var(--ld-red-dark); }
	.ld-hero { width:calc(100% - 2rem); padding-top:.5rem; }
	.ld-hero__logo { width:min(100%,17rem); margin-bottom:0; }
	.ld-hero__grid { gap:0; padding:1.6rem 0 0; }
	.ld-hero__copy { width:100%; min-width:0; padding:0; }
	.ld-hero__headline { width:100%; max-width:100%; margin-right:0; margin-left:0; font-size:3rem; line-height:.88; letter-spacing:-.065em; overflow-wrap:anywhere; }
	.ld-hero__numberline { display:inline-block; white-space:nowrap; }
	.ld-hero__intro { width:100%; max-width:100%; margin-top:1rem; font-size:.98rem; white-space:normal!important; overflow-wrap:anywhere; word-break:break-word; }
	.ld-hero__actions { display:grid; width:100%; grid-template-columns:1fr; gap:.65rem; margin-top:1.25rem; }
	.ld-hero__actions .ld-button { width:100%; min-height:3rem; padding:.65rem .75rem; font-size:.83rem; }
	.ld-hero__portrait { display:flex; min-height:0; margin-top:1.15rem; align-items:flex-end; justify-content:center; overflow:visible; }
	.ld-hero__portrait img { position:relative; bottom:auto; left:auto; width:min(100%,21.5rem); max-width:100%; transform:none; }
	.ld-social-strip__inner { justify-content:flex-start; min-height:3.1rem; padding:.45rem 1rem; font-size:.72rem; }
	.ld-social-strip__label { display:none; }
	.ld-bio { padding:1.75rem 1.25rem 0; }
	.ld-bio__copy { padding-top:0; }
	.ld-bio h2 { font-size:clamp(2rem,10vw,2.75rem); }
	.ld-bio__copy p:not(.ld-kicker) { font-size:.92rem; }
	.ld-bio__photo-field { min-height:31rem; }
	.ld-bio__photo img { position:absolute; right:50%; bottom:0; width:28rem; max-width:none; transform:translateX(50%); }
	.ld-donation-feature__actions .ld-button { width:100%; }
	.ld-cause-grid { gap:.85rem; }
	.ld-cause-card { padding:1.35rem; }
	.ld-listening__intro { padding:0 1.25rem; }
	.ld-listening h2 { font-size:clamp(2rem,10vw,2.8rem); }
	.ld-community-map { height:54vh; min-height:24rem; }
	.ld-listening__action { padding-top:1rem; }
	.ld-participation { padding-top:3.25rem; }
	.ld-panel__heading { margin-bottom:1rem; }
	.ld-editor__controls { gap:.85rem; }
	.ld-frame-list { gap:.45rem; }
	.ld-frame-option { padding:.25rem; font-size:.68rem; }
	.ld-footer { min-height:30rem; padding-right:1rem; padding-left:1rem; }
}
@media (max-width:380px) { .ld-hero__actions .ld-button { flex-basis:100%; }.ld-social-strip__inner { gap:.55rem; font-size:.67rem; } }
/* Controles do mapa e isolamento da foto na versão mobile. */
.ld-community-map .leaflet-control-zoom { overflow:hidden; border:2px solid var(--ld-navy); border-radius:.65rem; box-shadow:0 .3rem .75rem rgb(0 0 0/.28); }
.ld-community-map .leaflet-control-zoom a { display:grid; width:2.6rem; height:2.6rem; place-items:center; border:0; color:var(--ld-navy); background:var(--ld-yellow); font:900 1.7rem/1 Arial,Helvetica,sans-serif; }
.ld-community-map .leaflet-control-zoom a + a { border-top:2px solid var(--ld-navy); }
.ld-community-map .leaflet-control-zoom a:hover,.ld-community-map .leaflet-control-zoom a:focus { color:var(--ld-white); background:var(--ld-red); }
/* Página do manifesto. */
.ld-manifesto { min-height:100vh; color:var(--ld-navy); background:#fff8eb; font-family:Arial,Helvetica,sans-serif; }.ld-manifesto__nav { background:var(--ld-red); }.ld-manifesto__nav .ld-site-header { margin:0 auto; }.ld-manifesto__hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(16rem,.65fr); gap:clamp(2rem,8vw,8rem); padding:clamp(4rem,8vw,8rem) max(1.25rem,calc((100% - 68rem)/2)); color:var(--ld-white); background:var(--ld-red); }.ld-manifesto h1,.ld-manifesto h2,.ld-manifesto h3 { margin:0; font-weight:950; letter-spacing:-.06em; }.ld-manifesto h1 { max-width:48rem; font-size:clamp(3.2rem,7vw,6.6rem); line-height:.87; }.ld-manifesto__lead { margin:1.2rem 0 .65rem; color:var(--ld-yellow); font-size:clamp(1.2rem,2vw,1.55rem); font-weight:900; }.ld-manifesto__hero > div > p:last-of-type { max-width:44rem; margin:.8rem 0 1.6rem; color:rgb(255 255 255/.93); font-size:1.08rem; font-weight:600; line-height:1.55; }.ld-manifesto__highlight { display:flex; align-self:end; padding:1.6rem; flex-direction:column; justify-content:flex-end; border:2px solid rgb(255 255 255/.72); border-radius:1.1rem; background:rgb(32 43 80/.22); }.ld-manifesto__highlight span { color:var(--ld-yellow); font-size:clamp(4.5rem,9vw,8rem); font-weight:950; letter-spacing:-.1em; line-height:.72; }.ld-manifesto__highlight p { margin:1rem 0 0; font-size:1rem; font-weight:800; line-height:1.35; }.ld-manifesto__section { padding:clamp(4rem,8vw,7rem) max(1.25rem,calc((100% - 68rem)/2)); }.ld-manifesto__section h2,.ld-manifesto__closing h2 { max-width:55rem; font-size:clamp(2.4rem,5vw,4.7rem); line-height:.92; }.ld-manifesto__prose { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1.25rem; margin-top:2rem; }.ld-manifesto__prose p { margin:0; padding:1.3rem; border-radius:.8rem; background:rgb(32 43 80/.07); font-size:1rem; font-weight:600; line-height:1.58; }.ld-manifesto__section--public { color:var(--ld-white); background:var(--ld-purple); }.ld-manifesto__method { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:1rem; margin-top:2rem; }.ld-manifesto__method article { padding:1.35rem; border:1px solid rgb(255 255 255/.28); border-radius:.8rem; background:rgb(255 255 255/.08); }.ld-manifesto__method h3 { color:var(--ld-yellow); font-size:1.35rem; }.ld-manifesto__method p { margin:.65rem 0 0; font-size:.94rem; font-weight:600; line-height:1.48; }.ld-manifesto__agenda { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; margin-top:2rem; }.ld-manifesto__agenda article { min-height:13rem; padding:1.35rem; border:2px solid rgb(32 43 80/.12); border-radius:.9rem; background:var(--ld-white); box-shadow:0 .35rem .8rem rgb(32 43 80/.08); }.ld-manifesto__agenda span { display:block; margin-bottom:1.7rem; color:var(--ld-red); font-size:.85rem; font-weight:950; letter-spacing:.08em; }.ld-manifesto__agenda h3 { font-size:1.45rem; line-height:.98; }.ld-manifesto__agenda p { margin:.7rem 0 0; color:rgb(32 43 80/.82); font-size:.91rem; font-weight:600; line-height:1.45; }.ld-manifesto__closing { padding:clamp(4rem,8vw,7rem) max(1.25rem,calc((100% - 68rem)/2)); color:var(--ld-white); background:var(--ld-navy); }.ld-manifesto__closing h2 { color:var(--ld-yellow); }.ld-manifesto__closing p:not(.ld-kicker) { max-width:42rem; margin:1rem 0 1.6rem; color:rgb(255 255 255/.9); font-size:1.1rem; font-weight:600; line-height:1.5; }.ld-manifesto__footer { padding:2rem 1rem; color:var(--ld-white); background:var(--ld-red); font-size:.8rem; font-weight:600; line-height:1.5; text-align:center; }.ld-manifesto__footer p { margin:.12rem 0; }.ld-manifesto__footer strong { color:var(--ld-yellow); }
.ld-manifesto-callout { width:100%; padding:clamp(3rem,6vw,5rem) max(1.25rem,calc((100% - var(--ld-max))/2)); color:var(--ld-navy); background:var(--ld-yellow); }.ld-manifesto-callout__inner { display:flex; width:min(100%,var(--ld-max)); margin:0 auto; align-items:center; justify-content:space-between; gap:2rem; }.ld-manifesto-callout h2 { margin:.2rem 0 .5rem; font-size:clamp(2.35rem,4vw,4rem); font-weight:950; letter-spacing:-.06em; line-height:.9; }.ld-manifesto-callout p:not(.ld-kicker) { max-width:38rem; margin:0; font-size:1rem; font-weight:650; line-height:1.45; }.ld-manifesto-callout .ld-kicker { color:var(--ld-red); }
.ld-manifesto-callout .ld-button--yellow { border-color:var(--ld-purple); color:var(--ld-white); background:var(--ld-purple); box-shadow:0 .3rem 0 var(--ld-red-dark); }.ld-manifesto-callout .ld-button--yellow:hover,.ld-manifesto-callout .ld-button--yellow:focus { color:var(--ld-white); background:#452d81; }
@media (max-width:760px) { .ld-manifesto__header { width:calc(100% - 2rem); min-height:4.5rem; }.ld-manifesto__header .ld-button { min-height:2.6rem; padding:.55rem .8rem; font-size:.75rem; }.ld-manifesto__hero { grid-template-columns:1fr; gap:1.5rem; padding:3.5rem 1.25rem; }.ld-manifesto h1 { font-size:clamp(3rem,15vw,4.4rem); }.ld-manifesto__highlight { min-height:13rem; }.ld-manifesto__section { padding:3.5rem 1.25rem; }.ld-manifesto__prose,.ld-manifesto__method,.ld-manifesto__agenda { grid-template-columns:1fr; }.ld-manifesto__prose { gap:.8rem; }.ld-manifesto__method { gap:.75rem; }.ld-manifesto__agenda article { min-height:0; }.ld-manifesto__agenda span { margin-bottom:.9rem; }.ld-manifesto__closing { padding:3.5rem 1.25rem; }.ld-manifesto-callout { padding:3rem 1.25rem; }.ld-manifesto-callout__inner { display:grid; grid-template-columns:1fr; gap:1.4rem; }.ld-manifesto-callout .ld-button { width:100%; } }
@media (max-width:760px) {
	.ld-bio { grid-template-areas:"copy" "photo"; }
	.ld-bio__copy { grid-area:copy; position:relative; z-index:1; }
	.ld-bio__photo { grid-area:photo; position:relative; z-index:0; width:100%; max-width:23rem; margin:1.25rem auto 0; }
	.ld-bio__photo-field { position:relative; display:block; height:31rem; min-height:0; overflow:hidden; }
	.ld-bio__photo img { position:absolute; right:50%; bottom:0; left:auto; width:28rem; max-width:none; transform:translateX(50%); }
	.ld-community-map .leaflet-control-zoom { margin:0 .75rem .75rem 0; }
	.ld-community-map .leaflet-control-zoom a { width:2.85rem; height:2.85rem; font-size:1.9rem; }
}
/* Direção institucional: base clara e sóbria, com vermelho reservado a detalhes. */
.leandro-landing-template,.leandro-landing-template body { background:#f4f6f8; }
.ld-landing { color:var(--ld-navy); background:#f4f6f8; }
.ld-landing::before { display:none; }

.ld-site-header--institutional { width:100%; max-width:none; min-height:4.5rem; padding:.75rem max(1.25rem,calc((100% - var(--ld-max))/2)); background:var(--ld-white); border-bottom:1px solid rgb(32 43 80/.12); }
.ld-site-header--institutional .ld-site-nav a { color:var(--ld-navy); }
.ld-site-header--institutional .ld-site-nav a:hover { color:var(--ld-purple); }

.ld-hero { width:100%; max-width:none; margin:0; padding:0; color:var(--ld-white); background:var(--ld-navy); }
.ld-hero__grid { width:min(calc(100% - 2.5rem),var(--ld-max)); margin:0 auto; }
.ld-hero__intro { color:rgb(255 255 255/.88); }
.ld-hero .ld-button--yellow { box-shadow:0 .3rem 0 #d5a900; }
.ld-hero .ld-button--outline:hover { color:var(--ld-navy); }

.ld-social-strip { border-bottom:1px solid rgb(32 43 80/.13); }
.ld-social-strip__inner,.ld-social-strip__link,.ld-social-strip__pending { color:var(--ld-navy); }

.ld-bio { color:var(--ld-navy); background:var(--ld-white); border-bottom:1px solid #e0e5eb; }
.ld-bio h2,.ld-bio__copy p:not(.ld-kicker) { color:var(--ld-navy); }
.ld-bio .ld-kicker { color:var(--ld-purple); }
.ld-bio__copy p:not(.ld-kicker) { color:rgb(32 43 80/.83); }
.ld-bio blockquote { border-color:var(--ld-purple); color:var(--ld-purple); }

.ld-causes { background:var(--ld-navy); }
.ld-cause-card,.ld-cause-card:nth-child(2n) { border-color:rgb(255 255 255/.16); background:rgb(255 255 255/.055); box-shadow:none; }
.ld-cause-card:nth-child(3n) { background:rgb(255 255 255/.1); }

.ld-manifesto-callout { color:var(--ld-navy); background:var(--ld-white); border-block:1px solid #dfe4eb; }
.ld-manifesto-callout .ld-kicker { color:var(--ld-purple); }
.ld-manifesto-callout .ld-button--yellow { border-color:var(--ld-purple); color:var(--ld-white); background:var(--ld-purple); box-shadow:0 .3rem 0 #362265; }
.ld-manifesto-callout .ld-button--yellow:hover,.ld-manifesto-callout .ld-button--yellow:focus { color:var(--ld-white); background:#442d7c; box-shadow:0 .42rem 0 #362265; }

.ld-listening,.ld-listening .ld-map-card,.ld-listening .ld-community-map,.ld-listening .ld-map-status,.ld-listening .ld-map-note { color:var(--ld-navy); background:#eef1f5; }
.ld-listening { border-bottom:1px solid #dde2e9; }
.ld-listening h2,.ld-listening__intro > p:last-child { color:var(--ld-navy); }
.ld-listening .ld-kicker,.ld-map-status,.ld-map-status.is-active { color:var(--ld-purple); }
.ld-map-note { color:rgb(32 43 80/.7); }
.ld-map-form-trigger { border-color:var(--ld-navy); color:var(--ld-white); background:var(--ld-navy); }
.ld-map-form-trigger:hover,.ld-map-form-trigger:focus { color:var(--ld-white); background:#303e6e; }
.ld-community-map .leaflet-control-zoom a:hover,.ld-community-map .leaflet-control-zoom a:focus { color:var(--ld-white); background:var(--ld-purple); }

.ld-footer { min-height:11rem; aspect-ratio:auto; padding:3rem max(1rem,calc((100% - var(--ld-max))/2)); color:rgb(255 255 255/.88); background:var(--ld-navy); background-image:none; text-shadow:none; }

.ld-manifesto { background:#f5f6f8; }
.ld-manifesto__nav { background:var(--ld-navy); }
.ld-manifesto__nav .ld-site-header { width:min(calc(100% - 2.5rem),var(--ld-max)); }
.ld-manifesto__nav .ld-site-header--institutional { background:transparent; border-bottom:0; }
.ld-manifesto__nav .ld-site-nav a { color:var(--ld-white); }
.ld-manifesto__nav .ld-site-nav a:hover { color:var(--ld-yellow); }
.ld-manifesto__hero { background:var(--ld-navy); }
.ld-manifesto__highlight { background:rgb(255 255 255/.06); }
.ld-manifesto__section { background:var(--ld-white); }
.ld-manifesto__prose p { background:#f4f6f8; }
.ld-manifesto__section--public { color:var(--ld-navy); background:#eef1f5; }
.ld-manifesto__section--public .ld-kicker,.ld-manifesto__section--public h2 { color:var(--ld-navy); }
.ld-manifesto__method article { border-color:#d6dce5; background:var(--ld-white); }
.ld-manifesto__method h3 { color:var(--ld-purple); }
.ld-manifesto__method p { color:rgb(32 43 80/.8); }
.ld-manifesto__agenda article { border-color:#dde2e9; box-shadow:0 .25rem .7rem rgb(32 43 80/.06); }
.ld-manifesto__agenda span { color:var(--ld-purple); }
.ld-manifesto__closing,.ld-manifesto__footer { background:var(--ld-navy); }

@media (max-width:760px) {
	.ld-site-header--institutional { width:100%; padding:.65rem 1rem; }
	.ld-hero { width:100%; }
	.ld-hero__grid { width:calc(100% - 2rem); }
	.ld-manifesto__nav .ld-site-header { width:calc(100% - 2rem); }
	.ld-footer { min-height:12rem; padding:2.5rem 1rem; }
}

/* Refinamento editorial da página principal. */
.ld-site-header--institutional { display:grid; grid-template-columns:auto 1fr; gap:2rem; }
.ld-site-brand { color:var(--ld-navy); font-size:1.08rem; font-weight:800; letter-spacing:-.035em; text-decoration:none; white-space:nowrap; }
.ld-site-brand strong { color:var(--ld-purple); font-weight:950; }
.ld-site-header--institutional .ld-site-nav { justify-content:flex-end; }
.ld-manifesto__nav .ld-site-brand { color:var(--ld-white); }
.ld-manifesto__nav .ld-site-brand strong { color:var(--ld-yellow); }

.ld-hero { overflow:hidden; background:linear-gradient(115deg,#172344 0%,var(--ld-navy) 63%,#283660 100%); }
.ld-hero__headline { max-width:9ch; font-size:clamp(2.85rem,5.8vw,5.7rem); letter-spacing:-.06em; line-height:.91; }
.ld-hero__intro { max-width:32rem; font-size:clamp(.98rem,1.45vw,1.12rem); font-weight:600; }
.ld-hero__portrait { min-height:31rem; }
.ld-hero__portrait img { width:clamp(20rem,26vw,24rem); }
.ld-hero .ld-button--yellow { color:var(--ld-navy); background:#e6ba16; box-shadow:0 .25rem 0 #b79200; }
.ld-hero .ld-button--yellow:hover { background:#f0c52a; box-shadow:0 .35rem 0 #b79200; }

.ld-social-strip { background:var(--ld-white); border-bottom:1px solid #dfe4eb; }
.ld-social-strip__inner { min-height:3.1rem; color:rgb(32 43 80/.78); font-size:.82rem; }
.ld-social-strip__link,.ld-social-strip__pending { color:var(--ld-purple); }

.ld-causes { color:var(--ld-navy); background:#f1f3f6; }
.ld-causes .ld-section-heading--light h2 { color:var(--ld-navy); }
.ld-causes .ld-section-heading--light p:last-child { color:rgb(32 43 80/.72); }
.ld-causes .ld-kicker { color:var(--ld-purple); }
.ld-cause-card,.ld-cause-card:nth-child(2n),.ld-cause-card:nth-child(3n) { border:1px solid #dbe1e9; background:var(--ld-white); box-shadow:none; }
.ld-cause-number,.ld-cause-icon { color:var(--ld-purple); }
.ld-cause-icon { border-color:var(--ld-purple); }
.ld-cause-card h3 { color:var(--ld-navy); }
.ld-cause-card p { color:rgb(32 43 80/.78); }

.ld-manifesto-callout { background:#f8f9fb; }
.ld-manifesto-callout__inner { padding:0; }
.ld-listening { background:#f8f9fb; }

@media (max-width:760px) {
	.ld-site-header--institutional { grid-template-columns:1fr; min-height:3.9rem; }
	.ld-site-brand { justify-self:center; }
	.ld-hero__headline { max-width:none; font-size:clamp(2.8rem,13vw,4.2rem); }
	.ld-social-strip__inner { justify-content:center; }
}

/* Abertura: vermelho institucional, com a nova marca como ponto focal. */
.ld-site-brand strong { color:var(--ld-red); }
.ld-hero { background:linear-gradient(120deg,#a90e1c 0%,var(--ld-red) 56%,#bd1826 100%); }
.ld-hero__grid { position:relative; }
.ld-hero__grid::after { position:absolute; inset:1.5rem 0 0 auto; width:1px; content:""; background:rgb(255 255 255/.3); }
.ld-hero .ld-kicker { color:#ffd54a; }
.ld-hero__brandmark { display:block; width:clamp(9.5rem,15vw,13.5rem); height:auto; margin:0 0 1rem; object-fit:contain; object-position:left center; }
.ld-hero__headline { max-width:9.7ch; font-size:clamp(2.55rem,5.15vw,4.95rem); letter-spacing:-.055em; line-height:.94; text-transform:none; }
.ld-hero__intro { max-width:31rem; color:rgb(255 255 255/.9); }
.ld-hero .ld-button--yellow { color:var(--ld-red-dark); background:var(--ld-white); box-shadow:0 .25rem 0 rgb(103 7 18/.44); }
.ld-hero .ld-button--yellow:hover { background:#f6f7f9; box-shadow:0 .35rem 0 rgb(103 7 18/.44); }
.ld-hero .ld-button--outline { border-color:rgb(255 255 255/.72); }
.ld-social-strip__link,.ld-social-strip__pending { color:var(--ld-red); }
.ld-bio .ld-kicker,.ld-causes .ld-kicker,.ld-manifesto-callout .ld-kicker,.ld-listening .ld-kicker { color:var(--ld-red); }
.ld-cause-number,.ld-cause-icon { color:var(--ld-red); }
.ld-cause-icon { border-color:var(--ld-red); }

@media (max-width:760px) {
	.ld-hero__grid::after { display:none; }
	.ld-hero__brandmark { width:10.5rem; margin-right:auto; margin-left:auto; }
	.ld-hero__headline { max-width:11ch; margin-right:auto; margin-left:auto; font-size:clamp(2.4rem,11vw,3.45rem); }
}

/* Logo no cabeçalho e nome como centro da abertura. */
.ld-site-brand { display:inline-flex; align-items:center; }
.ld-site-brand__logo { display:block; width:7.4rem; height:auto; }
.ld-landing > .ld-site-header { background:var(--ld-red); border-bottom-color:rgb(255 255 255/.22); }
.ld-landing > .ld-site-header .ld-site-nav a { color:var(--ld-white); }
.ld-landing > .ld-site-header .ld-site-nav a:hover { color:#ffd54a; }
.ld-hero { background:linear-gradient(120deg,#a90e1c 0%,var(--ld-red) 56%,#bd1826 100%); }
.ld-hero__brandmark { display:none; }
.ld-hero__headline { display:flex; max-width:none; flex-direction:column; gap:.04em; font-size:inherit; line-height:.8; text-transform:uppercase; }
.ld-hero__name { display:block; font-size:clamp(4.1rem,8.2vw,7.8rem); font-weight:950; letter-spacing:-.085em; }
.ld-hero__surname { display:block; font-size:clamp(2.85rem,5.2vw,5.2rem); font-weight:950; letter-spacing:-.075em; }
.ld-manifesto__nav .ld-site-brand__logo { width:7.2rem; }

@media (max-width:760px) {
	.ld-site-brand { justify-self:center; }
	.ld-site-brand__logo { width:6.8rem; }
	.ld-hero__headline { align-items:center; }
	.ld-hero__name { font-size:clamp(4rem,17vw,5.4rem); }
	.ld-hero__surname { font-size:clamp(2.65rem,11vw,3.55rem); }
}

/* Enquadramento compacto da biografia na tela grande. */
@media (min-width:761px) {
	.ld-bio { grid-template-columns:minmax(18rem,.85fr) minmax(0,1.15fr); min-height:0; align-items:start; }
	.ld-bio__copy { order:2; align-self:start; padding-top:2.1rem; padding-bottom:2.5rem; }
	.ld-bio__photo { order:1; align-self:start; }
	.ld-bio__photo-field { height:31rem; min-height:0; overflow:hidden; }
	.ld-bio__photo img { top:-.6rem; right:50%; bottom:auto; left:auto; width:min(112%,25rem); max-width:none; transform:translateX(50%); }
}

/* Espaçamento externo e enquadramento mais editorial. */
.ld-landing { padding:clamp(.7rem,1.65vw,1.45rem); background:#e9edf2; }
.ld-landing > .ld-site-header { border-radius:.9rem .9rem 0 0; }
.ld-hero { border-radius:0 0 .9rem .9rem; }
.ld-social-strip,.ld-bio,.ld-causes,.ld-manifesto-callout,.ld-listening,.ld-footer { margin-top:clamp(.7rem,1.4vw,1.2rem); border-radius:.9rem; overflow:hidden; }
.ld-footer { margin-bottom:0; }

@media (min-width:761px) {
	.ld-hero__portrait { min-height:28rem; overflow:hidden; }
	.ld-hero__portrait img { top:0; right:50%; bottom:auto; left:auto; width:24rem; transform:translateX(50%); }
	.ld-bio__photo-field { height:26rem; }
	.ld-bio__photo img { top:0; width:25rem; }
}

@media (max-width:760px) {
	.ld-landing { padding:.6rem; }
	.ld-social-strip,.ld-bio,.ld-causes,.ld-manifesto-callout,.ld-listening,.ld-footer { margin-top:.6rem; border-radius:.65rem; }
	.ld-hero__portrait { max-height:26rem; overflow:hidden; }
	.ld-hero__portrait img { top:0; bottom:auto; }
	.ld-bio__photo-field { height:27rem; min-height:0; }
	.ld-bio__photo img { top:0; bottom:auto; }
}
@media (prefers-reduced-motion:reduce) { *,*::before,*::after { scroll-behavior:auto!important; transition-duration:.01ms!important; animation-duration:.01ms!important; } }
