/* ==========================================================================
   SDB — Missão Dom Bosco
   Integração SDB — Design System v4.8.4
   Versão do plugin: 1.8.4

   Princípio: o plugin mantém .sdb-mdb-* como escopo funcional e consome
   tokens/utilities/primitives do DS. Componentes completos só são usados
   quando o HTML cumpre contrato.
   ========================================================================== */

.sdb-mdb{
    --mdb-primary:var(--sdb-mdb-color-primary,#f26722);
    --mdb-primary-dark:var(--sdb-mdb-color-primary-dark,#e24b00);
    --mdb-primary-soft:var(--sdb-mdb-color-primary-soft,#ffe0ce);
    --mdb-primary-bg:var(--sdb-mdb-color-primary-bg,#ffe7d8);
    --mdb-title:var(--sdb-mdb-color-text,var(--sdb-color-title,#364048));
    --mdb-text:var(--sdb-mdb-color-text-soft,var(--sdb-color-text,#6b7785));
    --mdb-muted:var(--sdb-mdb-color-text-soft,var(--sdb-color-muted,#8e9aa7));
    --mdb-border:color-mix(in srgb,var(--sdb-mdb-color-primary-soft,#ffe0ce) 54%,#f1f1f1);
    --mdb-surface:var(--sdb-mdb-color-surface,var(--sdb-color-surface,#fff));
    --mdb-surface-soft:color-mix(in srgb,var(--sdb-mdb-color-primary-bg,#ffe7d8) 30%,#fff);
    --mdb-surface-strong:color-mix(in srgb,var(--sdb-mdb-color-primary-soft,#ffe0ce) 62%,#fff);
    --mdb-background:color-mix(in srgb,var(--sdb-mdb-color-primary-bg,#ffe7d8) 44%,#fff);
    --mdb-on-primary:var(--sdb-color-on-primary,#fff);
    --mdb-font-title:var(--sdb-mdb-font-title,var(--sdb-font-heading,Arial,sans-serif));
    --mdb-font-body:var(--sdb-font-body,Arial,sans-serif);
    --mdb-font-meta:var(--sdb-font-meta,var(--sdb-font-body,Arial,sans-serif));
    --mdb-weight-regular:var(--sdb-font-weight-regular,400);
    --mdb-weight-medium:var(--sdb-font-weight-medium,500);
    --mdb-weight-semibold:var(--sdb-font-weight-semibold,600);
    --mdb-weight-bold:var(--sdb-font-weight-bold,700);
    --mdb-radius-sm:var(--sdb-radius-sm,var(--sdb-shape-sm,6px));
    --mdb-radius:var(--sdb-mdb-card-radius,var(--sdb-mdb-radius-card,var(--sdb-radius-md,var(--sdb-shape-md,12px))));
    --mdb-radius-lg:var(--sdb-radius-lg,var(--sdb-shape-lg,20px));
    --mdb-radius-pill:var(--sdb-radius-pill,var(--sdb-shape-pill,999px));
    --mdb-shadow-card:var(--sdb-mdb-card-shadow,var(--sdb-mdb-shadow-card,var(--sdb-shadow-card,var(--sdb-elevation-2,0 10px 24px rgba(31,42,54,.08)))));
    --mdb-shadow-card-hover:var(--sdb-mdb-card-shadow-hover,var(--sdb-elevation-3,var(--mdb-shadow-card)));
    --mdb-shadow-element:var(--sdb-shadow-element,var(--sdb-elevation-1,0 4px 12px rgba(31,42,54,.05)));
    --mdb-space-sm:var(--sdb-space-sm,.75rem);
    --mdb-space-md:var(--sdb-space-md,1.25rem);
    --mdb-space-lg:var(--sdb-space-lg,2rem);
    --mdb-card-padding:var(--sdb-mdb-card-padding,var(--sdb-card-padding,1.5rem));
    --mdb-card-gap:var(--sdb-mdb-card-gap,var(--sdb-space-md,1.25rem));
    --mdb-site-width:var(--sdb-layout-max-width-site,1920px);
    --mdb-content-width:var(--sdb-layout-max-width-content,1320px);
    --mdb-reading-width:var(--sdb-layout-max-width-reading,860px);
    --mdb-title-hero:var(--sdb-mdb-title-hero,var(--sdb-editorial-title-featured,clamp(2.2rem,4vw,4.5rem)));
    --mdb-title-card:var(--sdb-mdb-title-card,var(--sdb-editorial-title-md,1.35rem));
    --mdb-progress-bg:color-mix(in srgb,var(--mdb-primary-bg) 52%,#fff);
    --mdb-progress-fill:var(--sdb-mdb-progress-fill,linear-gradient(90deg,var(--mdb-primary),var(--mdb-primary-dark)));
    --mdb-progress-height:var(--sdb-mdb-progress-height,var(--sdb-progress-height,10px));
    --mdb-progress-radius:var(--sdb-mdb-progress-radius,var(--sdb-radius-pill,999px));
    --mdb-focus-ring:0 0 0 3px rgba(242,103,34,.24);
    --mdb-touch-target:var(--sdb-touch-target-min,44px);
    --mdb-interactive-transition:var(--sdb-motion-safe-transition,var(--sdb-interactive-transition,background-color 180ms ease,color 180ms ease,border-color 180ms ease,box-shadow 180ms ease,transform 180ms ease));
    --mdb-hover-transform:var(--sdb-motion-transform-hover,translateY(-1px));
    --mdb-overlay:var(--sdb-mdb-color-overlay,linear-gradient(180deg,rgba(0,0,0,.08),rgba(31,42,54,.76)));
    --mdb-badge-bg:rgba(31,42,54,.76);
    --mdb-badge-text:#fff;
    --mdb-info-box-bg:color-mix(in srgb,var(--mdb-primary-bg) 28%,#fff);
    --mdb-metric-value:var(--sdb-mdb-metric-value,var(--mdb-primary));
    --mdb-metric-label:var(--sdb-mdb-metric-label,var(--mdb-muted));
    --mdb-tab-bg:color-mix(in srgb,var(--mdb-primary-bg) 22%,#fff);
    --mdb-tab-active-bg:var(--sdb-mdb-tab-active-bg,var(--mdb-primary));
    --mdb-tab-active-text:var(--sdb-mdb-tab-active-text,#fff);
    --mdb-tab-text:var(--mdb-title);
    --mdb-tab-hover-bg:color-mix(in srgb,var(--mdb-primary-bg) 52%,#fff);
    --mdb-state-completed-bg:var(--mdb-title);
    --mdb-state-completed-text:#fff;
    --mdb-state-completed-border:var(--mdb-title);

    color:var(--mdb-text);
    font-family:var(--mdb-font-body);
    font-size:18px;
    line-height:var(--sdb-line-height-body,1.65);
}

.sdb-mdb *,
.sdb-mdb *::before,
.sdb-mdb *::after{box-sizing:border-box;}

.sdb-mdb a{text-decoration:none;}
.sdb-mdb a:focus-visible,
.sdb-mdb button:focus-visible{outline:0;box-shadow:var(--mdb-focus-ring);}

.sdb-mdb h1,
.sdb-mdb h2,
.sdb-mdb h3,
.sdb-mdb-card-title,
.sdb-mdb-button,
.sdb-mdb-pill,
.sdb-mdb-status-pill,
.sdb-mdb-filters [data-filter]{
    font-family:var(--mdb-font-title);
}

.sdb-mdb-container{
    width:100%;
    max-width:var(--mdb-content-width);
    margin-inline:auto;
    padding-inline:24px;
}

/* ==========================================================================
   Fallbacks escopados para remover moldura do Kingster/GoodLayers nos CPTs MDB
   ========================================================================== */
body.is-mdb-projeto .kingster-page-title-wrap,
body.single-mdb_projeto .kingster-page-title-wrap,
body.is-mdb-projeto .kingster-page-title-container,
body.single-mdb_projeto .kingster-page-title-container,
body.is-mdb-projeto .kingster-page-title-content,
body.single-mdb_projeto .kingster-page-title-content,
body.is-mdb-projeto .kingster-page-title-overlay,
body.single-mdb_projeto .kingster-page-title-overlay,
body.is-mdb-projeto .kingster-page-title,
body.single-mdb_projeto .kingster-page-title,
body.single-mdb_campanha .kingster-page-title-wrap,
body.single-mdb_campanha .kingster-page-title-container,
body.single-mdb_campanha .kingster-page-title-content,
body.single-mdb_campanha .kingster-page-title-overlay,
body.single-mdb_campanha .kingster-page-title,
body.single-mdb_campanha .kingster-single-article-head,
body.single-mdb_campanha .kingster-single-article-title,
body.single-mdb_campanha .kingster-single-article-thumbnail,
body.single-mdb_campanha .kingster-single-social-share,
body.single-mdb_campanha .gdlr-core-social-share-wrap,
body.single-mdb_campanha .kingster-single-related-post-wrap,
body.single-mdb_campanha .kingster-single-nav-area,
body.single-mdb_campanha .kingster-blog-info-wrapper{
    display:none!important;
    height:0!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
}

body.is-mdb-projeto .kingster-content-area,
body.single-mdb_projeto .kingster-content-area,
body.single-mdb_campanha .kingster-content-area,
body.single-mdb_campanha .kingster-page-builder-body,
body.single-mdb_campanha .gdlr-core-page-builder-body{padding-top:0!important;}

body.single-mdb_campanha .kingster-sidebar-area,
body.single-mdb_campanha .gdlr-core-pbf-sidebar-right,
body.single-mdb_campanha .gdlr-core-sidebar-item{display:none!important;}

body.single-mdb_campanha .gdlr-core-pbf-sidebar-content{width:100%!important;max-width:none!important;}

/* ==========================================================================
   Hero de projeto — tokens + utilities de layout, sem aplicar sdb-cause-hero
   ========================================================================== */
.sdb-mdb-single{width:100%;max-width:none;margin:0 auto;padding:0;}

.sdb-mdb-hero-impact{
    width:100%;
    max-width:var(--mdb-site-width);
    margin-inline:auto;
    margin-bottom:clamp(34px,4vw,56px);
    padding:clamp(56px,7vw,110px) 0;
    overflow:hidden;
    border-bottom-left-radius:var(--mdb-radius);
    border-bottom-right-radius:var(--mdb-radius);
    background:
        radial-gradient(circle at 88% 12%,rgba(242,103,34,.09) 0 18%,transparent 18.4%),
        radial-gradient(circle at 0% 24%,rgba(242,103,34,.08) 0 18%,transparent 18.4%),
        linear-gradient(135deg,var(--mdb-primary-bg),rgba(255,255,255,.96) 58%,var(--mdb-primary-soft));
    box-shadow:var(--mdb-shadow-element);
}

.sdb-mdb-hero-grid{
    display:grid;
    grid-template-columns:minmax(0,.95fr) minmax(420px,.88fr);
    gap:clamp(32px,5vw,80px);
    align-items:center;
}
.sdb-mdb-hero-copy,
.sdb-mdb-hero-media{min-width:0;max-width:100%;}

.sdb-mdb-kicker{
    display:block;
    margin-bottom:10px;
    color:var(--mdb-primary);
    font-family:var(--mdb-font-meta);
    font-size:var(--sdb-type-label-md-size,.875rem);
    font-weight:var(--mdb-weight-semibold);
    letter-spacing:.14em;
    text-transform:uppercase;
}

.sdb-mdb-hero-labels{display:flex;gap:10px;align-items:center;flex-wrap:wrap;margin-bottom:22px;}

.sdb-mdb-hero h1{
    max-width:840px;
    margin:0 0 clamp(26px,3.4vw,42px)!important;
    color:var(--mdb-title)!important;
    font-size:var(--mdb-title-hero)!important;
    line-height:1.04!important;
    letter-spacing:-.045em;
    font-weight:var(--mdb-weight-bold)!important;
}

.sdb-mdb-hero-facts{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:14px;
    max-width:680px;
    margin:0 0 22px;
}

.sdb-mdb-hero-fact{
    min-height:76px;
    margin:0;
    padding:18px 20px;
    border:1px solid color-mix(in srgb,var(--mdb-primary-soft) 70%,#fff);
    border-radius:var(--mdb-radius);
    background:var(--mdb-info-box-bg);
    box-shadow:var(--mdb-shadow-element);
}

.sdb-mdb-hero-fact dt{
    margin:0 0 6px;
    color:var(--mdb-muted);
    font-family:var(--mdb-font-meta);
    font-size:.78rem;
    font-weight:var(--mdb-weight-bold);
    letter-spacing:.08em;
    text-transform:uppercase;
}

.sdb-mdb-hero-fact dd{margin:0;color:var(--mdb-title);font-weight:var(--mdb-weight-semibold);}

.sdb-mdb-hero-donation{
    max-width:680px;
    padding:26px 28px;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius-lg);
    background:var(--mdb-surface);
    box-shadow:var(--mdb-shadow-card);
}

.sdb-mdb-hero-media{
    position:relative;
    margin:0;
    border-radius:var(--mdb-radius-lg);
    background:var(--mdb-surface);
    box-shadow:28px 28px 0 color-mix(in srgb,var(--mdb-primary-soft) 60%,transparent);
}

.sdb-mdb-hero-media img{
    display:block;
    width:100%;
    aspect-ratio:16/10;
    object-fit:cover;
    border-radius:var(--mdb-radius-lg);
    box-shadow:var(--mdb-shadow-card);
}

.sdb-mdb-gallery-toggle{
    position:absolute;
    left:22px;
    bottom:22px;
    border:0;
    border-radius:var(--mdb-radius-pill);
    padding:10px 16px;
    background:var(--mdb-surface);
    color:var(--mdb-title);
    font-family:var(--mdb-font-title);
    font-weight:var(--mdb-weight-bold);
    cursor:pointer;
}

/* ==========================================================================
   Progress — adapter escopado MDB, sem herdar layout estrutural DS
   ========================================================================== */
.sdb-mdb-progress{display:grid;gap:10px;}
.sdb-mdb-progress-values{display:flex;gap:4px;align-items:baseline;justify-content:space-between;color:var(--mdb-title);font-size:1rem;}
.sdb-mdb-progress-amount{display:inline-flex;align-items:baseline;gap:.28em;flex-wrap:wrap;}
.sdb-mdb-progress-raised{color:var(--mdb-metric-value);font-family:var(--mdb-font-title);font-size:1.06rem;font-weight:var(--mdb-weight-bold);letter-spacing:-.015em;}
.sdb-mdb-progress-goal{color:var(--mdb-title);font-weight:var(--mdb-weight-semibold);opacity:.86;}
.sdb-mdb-card-progress .sdb-mdb-progress-raised{font-size:1.08rem;}
.sdb-mdb-card-progress .sdb-mdb-progress-goal{font-size:.92rem;}
.sdb-mdb-progress-bar{
    width:100%;
    height:var(--mdb-progress-height);
    overflow:hidden;
    border-radius:var(--mdb-progress-radius);
    background:var(--mdb-progress-bg);
}
.sdb-mdb-progress-bar span,
.sdb-mdb-progress-fill{
    display:block;
    height:100%;
    border-radius:var(--mdb-progress-radius);
    background:var(--mdb-progress-fill);
}

/* Guardrail MDB: nunca herdar progress track verde/success do DS. */
.sdb-mdb .sdb-mdb-progress-bar{background:color-mix(in srgb,var(--mdb-primary-bg) 52%,#fff)!important;}
.sdb-mdb .sdb-mdb-progress-fill,
.sdb-mdb .sdb-mdb-progress-bar > span{background:var(--mdb-progress-fill)!important;}

/* ==========================================================================
   Botões e CTAs
   ========================================================================== */
.sdb-mdb-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:max(46px,var(--mdb-touch-target));
    border-radius:var(--mdb-radius);
    padding:12px 24px;
    font-weight:var(--mdb-weight-bold);
    line-height:1.2;
    transition:var(--mdb-interactive-transition);
}
.sdb-mdb-button:hover{transform:var(--mdb-hover-transform);}
.sdb-mdb-button-primary{background:var(--mdb-primary);color:var(--mdb-on-primary)!important;border:1px solid var(--mdb-primary);}
.sdb-mdb-button-primary:hover{background:var(--mdb-primary-dark);border-color:var(--mdb-primary-dark);color:var(--mdb-on-primary)!important;}
.sdb-mdb-button-dark{background:var(--mdb-title);color:var(--mdb-surface)!important;border:1px solid var(--mdb-title);}
.sdb-mdb-button-outline,
.sdb-mdb-button-secondary{background:var(--mdb-surface);color:var(--mdb-primary)!important;border:1px solid var(--mdb-primary);}
.sdb-mdb-button-outline:hover,
.sdb-mdb-button-secondary:hover{background:var(--mdb-primary-bg);color:var(--mdb-primary-dark)!important;border-color:var(--mdb-primary-dark);}

/* ==========================================================================
   Badges / estados
   ========================================================================== */
.sdb-mdb-pill,
.sdb-mdb-status-pill,
.sdb-mdb-campaign-status{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:var(--mdb-radius-pill);
    padding:8px 15px;
    font-size:.75rem;
    font-weight:var(--mdb-weight-bold);
    letter-spacing:.06em;
    line-height:1;
    text-transform:uppercase;
}
.sdb-mdb-pill{background:var(--mdb-badge-bg);color:var(--mdb-badge-text);box-shadow:0 6px 18px rgba(31,42,54,.16);}
.sdb-mdb-hero-pill{background:var(--mdb-surface);color:var(--mdb-primary);border:1px solid var(--mdb-primary-soft);box-shadow:var(--mdb-shadow-element);}
.sdb-mdb-status-pill{background:var(--mdb-state-completed-bg)!important;color:var(--mdb-state-completed-text)!important;border:1px solid var(--mdb-state-completed-border)!important;box-shadow:0 8px 18px rgba(31,42,54,.08);}
.sdb-mdb-status-pill-hero{background:var(--mdb-title)!important;color:#fff!important;border-color:var(--mdb-title)!important;box-shadow:var(--mdb-shadow-element);}


.sdb-mdb .sdb-mdb-status-pill,
.sdb-mdb .sdb-mdb-status-pill.sdb-status-badge,
.sdb-mdb .sdb-mdb-status-pill.sdb-status-badge--completed,
.sdb-mdb .sdb-status-badge--completed,
.sdb-mdb .sdb-status-badge--active,
.sdb-mdb .sdb-status-badge--open,
.sdb-mdb .sdb-status-badge--success{
    background:var(--mdb-state-completed-bg)!important;
    color:var(--mdb-state-completed-text)!important;
    border-color:var(--mdb-state-completed-border)!important;
}
.sdb-mdb .sdb-mdb-status-pill-hero,
.sdb-mdb .sdb-mdb-status-pill-hero.sdb-status-badge,
.sdb-mdb .sdb-mdb-status-pill-hero.sdb-status-badge--completed{
    background:var(--mdb-title)!important;
    color:#fff!important;
    border-color:var(--mdb-title)!important;
}
.sdb-mdb .sdb-mdb-pill.sdb-tag-on-image{
    background:rgba(31,42,54,.76)!important;
    color:#fff!important;
}
.sdb-mdb .sdb-mdb-hero-pill.sdb-tag-on-image,
.sdb-mdb .sdb-mdb-hero-pill{
    background:var(--mdb-surface)!important;
    color:var(--mdb-primary)!important;
    border-color:var(--mdb-primary-soft)!important;
}

/* Guardrail MDB: bloquear tokens/classes success/open verdes herdados do DS. */
.sdb-mdb .sdb-mdb-status-pill,
.sdb-mdb .sdb-mdb-status-pill-hero,
.sdb-mdb .sdb-status-badge--completed,
.sdb-mdb .sdb-status-badge--success,
.sdb-mdb .sdb-status-badge--open,
.sdb-mdb .sdb-status-badge--active{
    background:var(--mdb-title)!important;
    color:#fff!important;
    border-color:var(--mdb-title)!important;
}
.sdb-mdb .sdb-mdb-hero-pill,
.sdb-mdb .sdb-mdb-hero-pill.sdb-tag-on-image{
    background:#fff!important;
    color:var(--mdb-primary)!important;
    border-color:var(--mdb-primary-soft)!important;
}

/* ==========================================================================
   Página individual — conteúdo
   ========================================================================== */
.sdb-mdb-layout{
    display:grid;
    grid-template-columns:minmax(0,1fr) 360px;
    gap:clamp(32px,4vw,56px);
    align-items:start;
}

.sdb-mdb-main{min-width:0;}

.sdb-mdb-gallery{
    display:grid;
    grid-template-columns:repeat(3,1fr);
    gap:14px;
    margin:0 0 34px;
}
.sdb-mdb-gallery[hidden]{display:none;}
.sdb-mdb-gallery img{width:100%;height:170px;object-fit:cover;border-radius:var(--mdb-radius);box-shadow:var(--mdb-shadow-element);}

.sdb-mdb-content-section{
    max-width:var(--mdb-reading-width);
    margin:0 0 clamp(34px,4vw,52px);
    position:relative;
    padding-left:56px;
}
.sdb-mdb-content-section::before{
    position:absolute;
    left:0;
    top:0;
    width:36px;
    height:36px;
    display:grid;
    place-items:center;
    border-radius:var(--mdb-radius-pill);
    background:var(--mdb-primary-bg);
    color:var(--mdb-primary);
    font-family:FontAwesome;
    font-size:16px;
}
.sdb-mdb-icon-target::before{content:'\f140';}
.sdb-mdb-icon-people::before{content:'\f0c0';}
.sdb-mdb-icon-heart::before{content:'\f004';}
.sdb-mdb-icon-route::before{content:'\f1d8';}
.sdb-mdb-content-section h2{
    margin:0 0 18px!important;
    color:var(--mdb-title)!important;
    font-size:clamp(1.35rem,2vw,1.85rem)!important;
    line-height:1.22!important;
    letter-spacing:.01em;
    text-transform:uppercase;
}
.sdb-mdb-text p{margin:0 0 18px;}
.sdb-mdb-completed-note{
    margin:14px 0 18px;
    padding:14px 16px;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius);
    background:var(--mdb-background);
    color:var(--mdb-title);
    font-weight:var(--mdb-weight-semibold);
}
.sdb-mdb-actions-bottom{display:flex;gap:12px;flex-wrap:wrap;margin:44px 0 70px;}

/* ==========================================================================
   Sidebar institucional
   ========================================================================== */
.sdb-mdb-sidebar{
    position:sticky;
    top:100px;
    padding:30px;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius);
    background:var(--mdb-background);
    box-shadow:var(--mdb-shadow-element);
}
.sdb-mdb-sidebar .sdb-mdb-button{width:100%;margin-bottom:12px;}
.sdb-mdb-sidebar hr{border:0;border-top:1px solid var(--mdb-border);margin:25px 0;}
.sdb-mdb-sidebar h3{margin:0 0 12px!important;color:var(--mdb-primary)!important;font-size:1.2rem!important;}
.sdb-mdb-sidebar p{font-size:.95rem;line-height:1.55;}
.sdb-mdb-sidebar strong{color:var(--mdb-primary);}
.sdb-mdb-social{display:flex;gap:10px;}
.sdb-mdb-social a{color:var(--mdb-primary);}

/* ==========================================================================
   Shortcodes — filtros, grelha, cards e lista
   ========================================================================== */
.sdb-mdb-shortcode{width:100%;}
.sdb-mdb-shortcode .sdb-mdb-card[hidden]{display:none!important;}
.sdb-mdb-grid{display:grid;gap:var(--sdb-card-gap,30px);}
.sdb-mdb-cols-1{grid-template-columns:1fr;}
.sdb-mdb-cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.sdb-mdb-cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.sdb-mdb-cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}


.sdb-mdb-filters{
    display:flex;
    flex-wrap:nowrap;
    gap:8px;
    align-items:center;
    width:min(100%,820px);
    margin:0 0 34px;
    padding:10px;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius-lg);
    background:var(--mdb-tab-bg);
    box-shadow:var(--mdb-shadow-element);
}
.sdb-mdb-filters [data-filter]{
    position:relative;
    flex:1 1 0;
    border:1px solid transparent;
    border-radius:var(--mdb-radius-pill);
    background:transparent;
    color:var(--mdb-tab-text);
    cursor:pointer;
    font-weight:var(--mdb-weight-bold);
    min-height:var(--mdb-touch-target);
    padding:13px 22px;
    text-align:center;
    text-transform:uppercase;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    letter-spacing:.055em;
    transition:var(--mdb-interactive-transition);
}
.sdb-mdb-filters [data-filter]:hover{background:var(--mdb-tab-hover-bg);color:var(--mdb-primary-dark);}
.sdb-mdb-filters [data-filter].is-active{background:var(--mdb-tab-active-bg);color:var(--mdb-tab-active-text);box-shadow:0 8px 22px rgba(242,103,34,.20);}


.sdb-mdb-card{
    display:flex!important;
    flex-direction:column!important;
    position:relative;
    overflow:hidden;
    min-width:0;
    padding:0!important;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius);
    background:var(--mdb-surface);
    box-shadow:var(--mdb-shadow-card);
    transition:var(--mdb-interactive-transition);
}
.sdb-mdb-card:hover{transform:var(--mdb-hover-transform);box-shadow:var(--mdb-shadow-card-hover);}
.sdb-mdb-card-media{
    display:block!important;
    position:relative;
    width:100%!important;
    max-width:none!important;
    min-height:320px;
    margin:0!important;
    overflow:hidden;
    color:var(--mdb-on-primary)!important;
    border-radius:calc(var(--mdb-radius) - 1px) calc(var(--mdb-radius) - 1px) 0 0;
}
.sdb-mdb-card-media::after{content:'';position:absolute;inset:0;background:var(--mdb-overlay);}
.sdb-mdb-card-media img{display:block;width:100%;height:320px;object-fit:cover;border-radius:0!important;box-shadow:none!important;transition:transform var(--sdb-motion-duration-slow,280ms) var(--sdb-motion-easing-standard,ease);}
.sdb-mdb-card:hover .sdb-mdb-card-media img{transform:scale(1.035);}
.sdb-mdb-card .sdb-mdb-pill{position:absolute;top:20px;left:20px;z-index:2;}
.sdb-mdb-card .sdb-mdb-status-pill{position:absolute;top:20px;right:20px;z-index:2;}
.sdb-mdb-card-title{
    position:absolute;
    left:24px;
    right:24px;
    bottom:26px;
    z-index:2;
    color:var(--sdb-color-on-image,#fff);
    font-size:clamp(1.38rem,1.65vw,1.8rem);
    font-weight:var(--mdb-weight-bold);
    line-height:1.08;
    letter-spacing:-.035em;
    text-shadow:0 2px 12px rgba(0,0,0,.32);
    overflow-wrap:normal;
    word-break:normal;
    hyphens:none;
    text-wrap:balance;
}
.sdb-mdb-cols-2 .sdb-mdb-card-title{font-size:clamp(1.75rem,2.5vw,2.3rem);}
.sdb-mdb-cols-3 .sdb-mdb-card-title{font-size:clamp(1.45rem,2vw,1.95rem);}
.sdb-mdb-cols-4 .sdb-mdb-card-title{font-size:clamp(1.26rem,1.45vw,1.58rem);}
.sdb-mdb-card-progress{width:100%!important;flex:1 1 auto!important;padding:20px 24px 24px;background:linear-gradient(180deg,var(--mdb-surface),color-mix(in srgb,var(--mdb-surface) 84%,var(--mdb-primary-bg)));}
.sdb-mdb-card-progress .sdb-mdb-progress{gap:9px;}
.sdb-mdb-card-progress .sdb-mdb-progress-bar{margin:0;height:8px;}
.sdb-mdb-card.is-completed .sdb-mdb-card-media::after{background:linear-gradient(to bottom,rgba(31,42,54,.14),rgba(31,42,54,.78));}

.sdb-mdb-list{display:grid;gap:38px;}
.sdb-mdb-list-item{
    display:grid;
    grid-template-columns:minmax(0,1fr) minmax(360px,1fr);
    gap:42px;
    align-items:stretch;
    padding:34px;
    border:1px solid var(--mdb-border);
    border-radius:var(--mdb-radius);
    background:var(--mdb-surface);
    box-shadow:var(--mdb-shadow-card);
}
.sdb-mdb-list-item h3{margin:22px 0 12px!important;font-size:clamp(2rem,3vw,2.55rem)!important;line-height:1.12!important;}
.sdb-mdb-list-item h3 a{color:var(--mdb-title)!important;}
.sdb-mdb-list-item h3 a:hover{color:var(--mdb-primary)!important;}
.sdb-mdb-list-media img{display:block;width:100%;height:330px;object-fit:cover;border-radius:var(--mdb-radius);box-shadow:var(--mdb-shadow-element);}

.sdb-mdb-load-more-wrap{display:flex;justify-content:center;margin:34px 0 0;}
.sdb-mdb-load-more{
    border:1px solid var(--mdb-primary);
    border-radius:var(--mdb-radius-pill);
    background:var(--mdb-surface);
    color:var(--mdb-primary);
    cursor:pointer;
    font-family:var(--mdb-font-title);
    font-weight:var(--mdb-weight-bold);
    min-height:var(--mdb-touch-target);
    padding:12px 28px;
    transition:var(--mdb-interactive-transition);
}

.sdb-mdb-load-more:hover{background:var(--mdb-primary);color:var(--mdb-on-primary);}

/* ==========================================================================
   Campanhas — listagem editorial, sem processar donativos
   ========================================================================== */
.sdb-mdb-campaign-list{
    display:grid!important;
    gap:42px!important;
    max-width:var(--mdb-content-width);
    margin:0 auto;
    padding:10px 24px 70px;
}
.sdb-mdb-campaign-item{
    position:relative;
    display:grid!important;
    grid-template-columns:minmax(360px,42%) minmax(0,1fr)!important;
    gap:0!important;
    align-items:stretch!important;
    min-height:360px;
    overflow:hidden;
    border:1px solid color-mix(in srgb,var(--mdb-primary-soft) 50%,var(--mdb-border));
    border-radius:var(--mdb-radius-lg)!important;
    background:radial-gradient(circle at 100% 0%,rgba(242,103,34,.10),transparent 36%),var(--mdb-surface)!important;
    box-shadow:var(--mdb-shadow-card)!important;
    transition:var(--mdb-interactive-transition);
}
.sdb-mdb-campaign-item:hover{transform:var(--mdb-hover-transform);box-shadow:var(--sdb-elevation-3,var(--mdb-shadow-card))!important;}
.sdb-mdb-campaign-media{position:relative;display:block;min-height:360px;overflow:hidden;background:var(--mdb-background);}
.sdb-mdb-campaign-media img{display:block;width:100%;height:100%!important;min-height:360px;object-fit:cover;border-radius:0!important;box-shadow:none!important;transition:transform var(--sdb-motion-duration-slow,280ms) var(--sdb-motion-easing-standard,ease);}
.sdb-mdb-campaign-item:hover .sdb-mdb-campaign-media img{transform:scale(1.035);}
.sdb-mdb-campaign-media-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 32%,rgba(242,103,34,.30) 100%);pointer-events:none;}
.sdb-mdb-campaign-content{display:flex;flex-direction:column;justify-content:center;margin:0!important;padding:46px 56px!important;}
.sdb-mdb-campaign-meta-row{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:18px;}
.sdb-mdb-campaign-status{background:var(--mdb-primary);color:var(--mdb-on-primary);} 
.sdb-mdb-campaign-areas{color:var(--mdb-muted);font-size:.9rem;font-weight:var(--mdb-weight-semibold);}
.sdb-mdb-campaign-item h3{max-width:760px;margin:0 0 18px!important;font-size:clamp(2rem,3.2vw,3.25rem)!important;line-height:1.04!important;letter-spacing:-.035em;font-weight:var(--mdb-weight-bold)!important;}
.sdb-mdb-campaign-item h3 a{color:var(--mdb-title)!important;}
.sdb-mdb-campaign-item h3 a:hover{color:var(--mdb-primary)!important;}
.sdb-mdb-campaign-item p{max-width:680px;margin:0 0 28px;color:var(--mdb-text);font-size:18px;line-height:var(--sdb-line-height-body,1.65);}
.sdb-mdb-campaign-progress{max-width:560px;margin:4px 0 28px;}
.sdb-mdb-campaign-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:2px;}
.sdb-mdb-campaign-actions .sdb-mdb-button{min-width:150px;}
.sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(360px,42%)!important;}
.sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even) .sdb-mdb-campaign-media{order:2;}
.sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even) .sdb-mdb-campaign-content{order:1;}
.sdb-mdb-campaign-count-1 .sdb-mdb-campaign-item{min-height:430px;}
.sdb-mdb-campaign-count-1 .sdb-mdb-campaign-media,
.sdb-mdb-campaign-count-1 .sdb-mdb-campaign-media img{min-height:430px;}

/* ==========================================================================
   Relacionados
   ========================================================================== */

.sdb-mdb-related{margin:28px 0 76px;}
.sdb-mdb-related-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin:0 0 24px;}
.sdb-mdb-related-eyebrow{display:block;color:var(--mdb-primary);font-family:var(--mdb-font-meta);font-size:.75rem;font-weight:var(--mdb-weight-bold);letter-spacing:.12em;text-transform:uppercase;}
.sdb-mdb-related h2{margin:3px 0 0!important;color:var(--mdb-title)!important;font-size:clamp(1.35rem,2vw,1.85rem)!important;font-weight:var(--mdb-weight-bold)!important;text-transform:none!important;letter-spacing:-.02em;}
.sdb-mdb-related-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;}
.sdb-mdb-related-card{display:block!important;overflow:hidden;border:1px solid var(--mdb-border);border-radius:var(--mdb-radius);background:var(--mdb-surface);box-shadow:var(--mdb-shadow-card);transition:var(--mdb-interactive-transition);}
.sdb-mdb-related-card:hover{transform:var(--mdb-hover-transform);box-shadow:var(--mdb-shadow-card-hover);}
.sdb-mdb-related-link{display:flex!important;flex-direction:column!important;height:100%;color:inherit!important;}
.sdb-mdb-related-media{position:relative;display:block!important;width:100%!important;margin:0;overflow:hidden;background:var(--mdb-primary-bg);}
.sdb-mdb-related-media img{display:block;width:100%!important;height:150px;object-fit:cover;border-radius:0!important;box-shadow:none!important;transition:transform var(--sdb-motion-duration-slow,280ms) var(--sdb-motion-easing-standard,ease);}
.sdb-mdb-related-card:hover .sdb-mdb-related-media img{transform:scale(1.035);}
.sdb-mdb-related-body{padding:16px 18px 18px;}
.sdb-mdb-related-meta{display:block;margin:0 0 8px;color:var(--mdb-primary);font-family:var(--mdb-font-meta);font-size:.78rem;font-weight:var(--mdb-weight-semibold);font-style:normal;letter-spacing:.035em;}
.sdb-mdb-related h3{margin:0!important;color:var(--mdb-title)!important;font-size:1.02rem!important;line-height:1.22!important;letter-spacing:.01em;text-transform:none;font-weight:var(--mdb-weight-bold)!important;}
.sdb-mdb-related-card:hover h3{color:var(--mdb-primary-dark)!important;}


/* Guardrail DS 4.8.4: o plugin consome tokens, mas não herda layout
   estrutural de componentes DS em cards/listagens porque o HTML MDB é adapter. */
.sdb-mdb .sdb-mdb-grid{display:grid!important;grid-auto-flow:row!important;align-items:stretch!important;}
.sdb-mdb .sdb-mdb-grid > .sdb-mdb-card{display:flex!important;flex-direction:column!important;}
.sdb-mdb .sdb-mdb-card-media{align-self:stretch!important;flex:0 0 auto!important;}
.sdb-mdb .sdb-mdb-card-progress{align-self:stretch!important;}
.sdb-mdb .sdb-mdb-related-grid{display:grid!important;grid-auto-flow:row!important;align-items:stretch!important;}
.sdb-mdb .sdb-mdb-related-card{min-width:0!important;}
.sdb-mdb .sdb-mdb-related-body{min-width:0!important;}

/* ==========================================================================
   Responsivo
   ========================================================================== */
@media(max-width:1100px){
    .sdb-mdb-hero-grid,
    .sdb-mdb-layout{grid-template-columns:1fr;}
    .sdb-mdb-sidebar{position:static;}
    .sdb-mdb-related-grid,
    .sdb-mdb-cols-4,
    .sdb-mdb-cols-3{grid-template-columns:repeat(2,minmax(0,1fr));}
}

@media(max-width:1024px){
    .sdb-mdb-campaign-list{padding-inline:18px;}
    .sdb-mdb-campaign-item,
    .sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even){grid-template-columns:1fr!important;}
    .sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even) .sdb-mdb-campaign-media,
    .sdb-mdb-campaign-list .sdb-mdb-campaign-item:nth-child(even) .sdb-mdb-campaign-content{order:initial;}
    .sdb-mdb-campaign-content{padding:34px 30px!important;}
    .sdb-mdb-campaign-media,
    .sdb-mdb-campaign-media img{min-height:280px;}
}

@media(max-width:768px){
    .sdb-mdb{font-size:16px;}
    .sdb-mdb-filters{display:grid;grid-template-columns:1fr;gap:8px;padding:8px;}
    .sdb-mdb-filters [data-filter]{width:100%;}
    .sdb-mdb-container{padding-inline:18px;}
    .sdb-mdb-hero-impact{padding:38px 0;margin-bottom:32px;border-radius:0 0 var(--mdb-radius) var(--mdb-radius);}
    .sdb-mdb-hero h1{font-size:clamp(2rem,12vw,3rem)!important;}
    .sdb-mdb-hero-facts{grid-template-columns:1fr;}
    .sdb-mdb-hero-donation{padding:22px;}
    .sdb-mdb-hero-media{box-shadow:14px 14px 0 color-mix(in srgb,var(--mdb-primary-soft) 65%,transparent);}
    .sdb-mdb-gallery{grid-template-columns:1fr 1fr;}
    .sdb-mdb-content-section{padding-left:46px;}
    .sdb-mdb-actions-bottom{flex-direction:column;}
    .sdb-mdb-actions-bottom .sdb-mdb-button{width:100%;}
    .sdb-mdb-cols-2,
    .sdb-mdb-cols-3,
    .sdb-mdb-cols-4,
    .sdb-mdb-related-grid{grid-template-columns:1fr;}
    .sdb-mdb-list-item{grid-template-columns:1fr;padding:24px;}
    .sdb-mdb-list-media{order:-1;}
    .sdb-mdb-list-media img{height:240px;}
    .sdb-mdb-card-media,
    .sdb-mdb-card-media img{min-height:260px;height:260px;}
    .sdb-mdb-card-title{font-size:1.55rem;}
    .sdb-mdb-related-media img{height:180px;}
    .sdb-mdb-campaign-list{gap:28px!important;padding-bottom:45px;}
    .sdb-mdb-campaign-item{min-height:0;border-radius:var(--mdb-radius)!important;}
    .sdb-mdb-campaign-media,
    .sdb-mdb-campaign-media img,
    .sdb-mdb-campaign-count-1 .sdb-mdb-campaign-media,
    .sdb-mdb-campaign-count-1 .sdb-mdb-campaign-media img{min-height:230px;}
    .sdb-mdb-campaign-content{padding:28px 24px!important;}
    .sdb-mdb-campaign-item h3{font-size:1.9rem!important;}
    .sdb-mdb-campaign-item p{font-size:1rem;}
    .sdb-mdb-campaign-actions{flex-direction:column;}
    .sdb-mdb-campaign-actions .sdb-mdb-button{width:100%;}
}

/* ==========================================================================
   Filter panels — server-rendered fallbacks
   ========================================================================== */
.sdb-mdb-filter-panel[hidden]{display:none!important;}
.sdb-mdb-filter-panel{display:block;}

.sdb-mdb-filters [data-filter]{text-decoration:none!important;}
.sdb-mdb-filters [data-filter]:focus-visible{outline:none;box-shadow:var(--mdb-focus-ring);}

/* v1.9.0 — Métrica discreta de número de donativos */
.sdb-mdb-progress-donations{
    display:inline-flex;
    align-items:center;
    color:var(--mdb-muted);
    font-size:.92rem;
    font-weight:var(--mdb-weight-semibold);
    white-space:nowrap;
}
.sdb-mdb-card-progress .sdb-mdb-progress-values{
    align-items:flex-start;
}
.sdb-mdb-card-progress .sdb-mdb-progress-donations{
    font-size:.86rem;
}
@media(max-width:640px){
    .sdb-mdb-progress-values{
        flex-wrap:wrap;
    }
    .sdb-mdb-progress-donations{
        white-space:normal;
    }
}
