/* Canonical spacing roles. Loaded last; applies to every current and future #app page.
   No route classes. Hero, app-promo and editorial-frame roles retain approved geometry. */
:root{
 --layout-section-block:32px;--layout-section-inline:6%;--layout-heading-gap:22px;
 --layout-intro-start:32px;--layout-intro-end:24px;--layout-breadcrumb-gap:16px;
 --layout-grid-column:27px;--layout-grid-row:0px;--layout-card-row:28px;
 --layout-card-media-gap:16px;--layout-card-title-gap:10px;--layout-card-copy-gap:12px;
 --layout-content-gap:24px;--layout-reading-block:32px;
 --layout-trust-start:20px;--layout-trust-pad:18px;--layout-trust-heading:22px;--layout-trust-logos:16px;
 --layout-press-block:32px;--layout-press-note:16px;--layout-press-disclaimer:20px;
}
#app .section:not(.app-band){padding-block:var(--layout-section-block);padding-inline:var(--layout-section-inline);border-top:0}
#app .page-hero{padding-top:var(--layout-intro-start);padding-bottom:var(--layout-intro-end);padding-inline:var(--layout-section-inline)}
#app .page-hero .breadcrumb{margin-bottom:var(--layout-breadcrumb-gap)}
#app .section-head{margin-bottom:var(--layout-heading-gap)}
#app .article{padding-block:var(--layout-reading-block)}
#app .grid{column-gap:var(--layout-grid-column);row-gap:var(--layout-grid-row)}
#app .grid>.content-card,#app .grid>.podcast-home-card,#app .grid>.business-card,#app .grid>.team-card,#app .grid>.committee-card,#app .grid>.journey,#app .grid>.card{margin-bottom:0}
#app .grid>.journey{border-top:0;padding-top:0}
#app .content-card .card-media{margin-bottom:var(--layout-card-media-gap)}
#app .content-card .card-title{margin-bottom:var(--layout-card-title-gap)}
#app .content-card .card-category,#app .content-card .card-excerpt,#app .content-card .card-details{margin-bottom:var(--layout-card-copy-gap)}
#app .content-card .card-metadata{margin-bottom:var(--layout-card-title-gap)}
#app .content-card .card-details:empty,#app .content-card .card-metadata:empty{margin:0;padding:0;height:0}
#app .stack-gap{margin-top:var(--layout-content-gap)}
#app .reading-separator{border:0;border-top:1px solid var(--line);margin:var(--layout-content-gap) 0}
/* Component roles, not page-specific overrides. */
#app .trust-partners{margin-top:var(--layout-trust-start);padding-top:var(--layout-trust-pad);border-top:0}
#app .trust-partners .section-head{margin-bottom:var(--layout-trust-heading)}
#app .trust-partners .logos{margin:var(--layout-trust-logos) 0}
#app .trust-partners .micro{margin-bottom:0}
#app .section.press-section{padding-block:var(--layout-press-block)}
#app .press-section .press-disclaimer{margin-bottom:var(--layout-press-disclaimer)}
#app .press-section>.micro{margin-top:var(--layout-press-note);margin-bottom:0}
@media(min-width:761px){
 #app .grid:not(.two)>*:nth-last-child(n+4),#app .grid.two>*:nth-last-child(n+3){margin-bottom:var(--layout-card-row)}
}
@media(max-width:760px){
 :root{--layout-section-block:24px;--layout-heading-gap:18px;--layout-intro-start:24px;--layout-intro-end:20px;--layout-breadcrumb-gap:14px;--layout-grid-column:35px;--layout-grid-row:35px;--layout-reading-block:24px;--layout-trust-heading:18px;--layout-press-block:24px}
}
