.gmb{--gmb-accent:var(--ast-global-color-0,#222);--gmb-contrast:#fff;width:100%;font-family:inherit;color:inherit;box-sizing:border-box;scroll-margin-top:2rem}.gmb *{box-sizing:border-box}.gmb .gmb-heading{margin:0 0 1rem;font-family:inherit}.gmb .gmb-items{display:grid;grid-template-columns:repeat(var(--gmb-columns,3),minmax(0,1fr));gap:var(--gmb-gap,24px)}.gmb .gmb-card{min-width:0;margin:0;display:flex;flex-direction:column;gap:14px}.gmb .gmb-cover{position:relative;aspect-ratio:var(--gmb-ratio,16/9);overflow:hidden;border-radius:var(--gmb-radius,0);background:#e8e8e8}.gmb .gmb-image-link,.gmb .gmb-image,.gmb .gmb-placeholder{display:block;width:100%;height:100%;margin:0}.gmb .gmb-image{object-fit:cover}.gmb .gmb-badges{position:absolute;top:12px;left:12px;right:12px;display:flex;flex-wrap:wrap;gap:5px;z-index:2;pointer-events:none}.gmb .gmb-badges a{pointer-events:auto;display:inline-block;max-width:100%;overflow-wrap:anywhere;padding:4px 8px;background:var(--gmb-accent);color:var(--gmb-contrast);font-family:inherit;font-size:.75em;font-weight:600;line-height:1.45;text-decoration:none;border-radius:2px}.gmb .gmb-body{display:flex;flex-direction:column;align-items:flex-start;gap:10px;min-width:0;flex:1}.gmb .gmb-title{font-family:inherit;font-size:1.3em;line-height:1.25;font-weight:700;margin:0;overflow-wrap:anywhere}.gmb .gmb-title a{color:inherit;text-decoration:none}.gmb .gmb-title a:hover{text-decoration:underline;text-underline-offset:.15em}.gmb .gmb-meta{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:.8em;line-height:1.5;opacity:.8}.gmb .gmb-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:var(--gmb-lines,3);overflow:hidden;line-height:1.55;margin:0;max-height:calc(var(--gmb-lines,3)*1.55em);overflow-wrap:anywhere}.gmb .gmb-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}.gmb .gmb-tab,.gmb .gmb-page{display:inline-flex;align-items:center;justify-content:center;padding:8px 13px;min-height:42px;border:1px solid currentColor;color:inherit;text-decoration:none;font:inherit;line-height:1.45;border-radius:var(--gmb-radius,0)}.gmb .gmb-tab[aria-current],.gmb .gmb-page[aria-current]{background:var(--gmb-accent);border-color:var(--gmb-accent);color:var(--gmb-contrast)}.gmb .gmb-button{display:inline-flex;align-items:center;justify-content:center;background:var(--gmb-accent);color:var(--gmb-contrast);padding:10px 18px;min-height:44px;font-family:inherit;font-size:inherit;line-height:1.5;text-align:center;text-decoration:none;border-radius:var(--gmb-radius,0);overflow-wrap:anywhere}.gmb .gmb-read{margin-top:auto}.gmb .gmb-pagination{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:var(--gmb-gap,24px);padding-top:8px}.gmb .gmb-wide .gmb-prev,.gmb .gmb-wide .gmb-next{flex:1 1 25%}.gmb .gmb-button:hover,.gmb .gmb-badges a:hover{filter:brightness(.88)}.gmb a:focus-visible{outline:3px solid currentColor;outline-offset:3px}.gmb [aria-disabled=true]{opacity:.6;cursor:wait}.gmb .gmb-sr{position:absolute!important;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.gmb--featured .gmb-card:first-child{grid-column:1/-1;display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:var(--gmb-gap,24px)}.gmb--featured .gmb-card:first-child .gmb-title{font-size:1.8em}.gmb--list .gmb-items{grid-template-columns:1fr}.gmb--list .gmb-card{display:grid;grid-template-columns:minmax(100px,30%) minmax(0,1fr);align-items:start;gap:var(--gmb-gap,24px)}.gmb--overlay .gmb-card{display:grid;position:relative;overflow:hidden;border-radius:var(--gmb-radius,0);background:#252525;color:#fff;gap:0}.gmb--overlay .gmb-cover,.gmb--overlay .gmb-body{grid-area:1/1}.gmb--overlay .gmb-cover{height:100%;min-height:300px}.gmb--overlay .gmb-body{position:relative;align-self:stretch;justify-content:flex-end;padding:100px 20px 20px;background:linear-gradient(transparent,rgba(0,0,0,.9));pointer-events:none}.gmb--overlay .gmb-body a{pointer-events:auto}.gmb--overlay .gmb-read{margin-top:0}@media(max-width:900px){.gmb .gmb-items{grid-template-columns:repeat(min(var(--gmb-columns,3),2),minmax(0,1fr))}.gmb--list .gmb-items{grid-template-columns:1fr}}@media(max-width:600px){.gmb .gmb-items{grid-template-columns:1fr}.gmb--featured .gmb-card:first-child,.gmb--list .gmb-card{display:flex;flex-direction:column;align-items:stretch}.gmb--featured .gmb-card:first-child .gmb-title{font-size:1.3em}.gmb .gmb-wide .gmb-prev,.gmb .gmb-wide .gmb-next{flex-basis:100%}}
/* Whole-card borders, shared by every layout. Zero width preserves existing cards. */
.gmb .gmb-card{border:var(--gmb-border-width,0px) var(--gmb-border-style,solid) var(--gmb-border-color,#ccc);border-radius:var(--gmb-radius,0)}
.gmb-framed:not(.gmb--overlay) .gmb-body{padding:12px}
.gmb--overlay .gmb-body{background:linear-gradient(180deg,transparent 25%,rgba(0,0,0,var(--gmb-overlay,.85)) 100%)}
/* Native CSS grid: each group has one large tile and two smaller ones. */
.gmb--tiles .gmb-items{grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);grid-auto-rows:minmax(var(--gmb-tile-height,220px),auto)}
.gmb--tiles .gmb-card:nth-child(3n+1){grid-row:span 2}
.gmb--tiles .gmb-card{isolation:isolate;min-height:var(--gmb-tile-height,220px)}
.gmb--tiles .gmb-cover{position:absolute;inset:0;aspect-ratio:auto;min-height:0;height:100%;border-radius:0}
.gmb--tiles .gmb-body{padding:110px 18px 18px;min-height:var(--gmb-tile-height,220px)}
.gmb--tiles .gmb-title{font-size:1.3em}
.gmb--tiles .gmb-card:nth-child(3n+1) .gmb-title{font-size:1.9em}
.gmb--tiles .gmb-card:only-child{grid-column:1/-1;grid-row:auto;min-height:calc(var(--gmb-tile-height,220px)*1.5)}
@media(max-width:600px){.gmb--tiles .gmb-items{grid-template-columns:1fr;grid-auto-rows:auto}.gmb--tiles .gmb-card:nth-child(3n+1){grid-row:auto}.gmb--tiles .gmb-card:nth-child(3n+1) .gmb-title{font-size:1.5em}}

/* Opt-in title decoration override, including theme hover styles. Focus outline stays visible. */
.gmb.gmb-no-title-underline .gmb-title,.gmb.gmb-no-title-underline .gmb-title a,.gmb.gmb-no-title-underline .gmb-title a:hover,.gmb.gmb-no-title-underline .gmb-title a:focus{ text-decoration:none!important;border-bottom:0!important;box-shadow:none!important;background-image:none!important }

/* Optional content colors stay local to this block. Cover layouts retain their gradient. */
.gmb.gmb-content-colored:not(.gmb--overlay) .gmb-body{background:var(--gmb-content-background);padding:12px;align-self:stretch;border-radius:var(--gmb-radius,0)}
.gmb.gmb-content-colored.gmb--overlay .gmb-body{background:linear-gradient(180deg,transparent 25%,rgba(var(--gmb-content-rgb),var(--gmb-overlay,.85)) 100%)}
.gmb.gmb-content-text-colored .gmb-body{color:var(--gmb-content-text)}
.gmb.gmb-content-text-colored .gmb-title,.gmb.gmb-content-text-colored .gmb-title a,.gmb.gmb-content-text-colored .gmb-meta,.gmb.gmb-content-text-colored .gmb-excerpt{color:var(--gmb-content-text)}

/* Image fit is independent of the card layout; fill intentionally permits distortion. */
.gmb .gmb-image{object-fit:var(--gmb-image-fit,cover);object-position:center;width:100%;height:100%;max-height:none}
/* Join only the image/body seam. The gap between separate cards remains unchanged. */
.gmb.gmb-joined:not(.gmb--overlay) .gmb-card{gap:0;overflow:hidden}
.gmb.gmb-joined.gmb-content-colored:not(.gmb--overlay) .gmb-card{background:var(--gmb-content-background)}
.gmb.gmb-joined:not(.gmb--overlay) .gmb-cover,.gmb.gmb-joined:not(.gmb--overlay) .gmb-body{border-radius:0}
.gmb.gmb-joined:not(.gmb--overlay) .gmb-body{padding:12px;align-self:stretch}
/* Side-by-side layouts: remove intrinsic image height from grid sizing. */
@media(min-width:601px){
.gmb.gmb-image-full-height.gmb--list .gmb-card,.gmb.gmb-image-full-height.gmb--featured .gmb-card:first-child{align-items:stretch}
.gmb.gmb-image-full-height.gmb--list .gmb-cover,.gmb.gmb-image-full-height.gmb--featured .gmb-card:first-child .gmb-cover{position:relative;align-self:stretch;aspect-ratio:auto;min-height:180px;height:auto}
.gmb.gmb-image-full-height.gmb--list .gmb-image-link,.gmb.gmb-image-full-height.gmb--featured .gmb-card:first-child .gmb-image-link{position:absolute;inset:0}
}
