/* GSE Universal 15px block and advertisement layout — homepage and 750 tools. */
.gse-ad-frame,.gse-ad-frame *{box-sizing:border-box}
.gse-ad-frame{--gse-block-gap:15px}
.gse-ad-unit{border:1px dashed #52657e;border-radius:12px;background:#0e1c2f;color:#a4b8d0;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;gap:12px;padding:12px;overflow:hidden;min-width:0}
.gse-ad-caption{font-size:11px;letter-spacing:1.5px}
.gse-ad-description{font-size:14px;font-variant-numeric:tabular-nums;font-weight:600}
.gse-ad-inline-slot{display:flex;justify-content:center;align-items:center;width:100%;min-width:0;margin:15px 0!important;padding:0}
.gse-ad-horizontal{width:728px;max-width:100%;height:90px;flex:none}
.gse-ad-mobile{width:300px;max-width:100%;height:120px;flex:none;display:none}
.gse-ad-frame>.sidebar,.gse-ad-frame>.category-ad-sidebar{display:none!important}
.gse-ad-frame>.gse-ad-primary{min-width:0;max-width:none;width:100%}
.gse-ad-primary>:is(.gse-dedicated-tool-faq,.gse-universal-faq,.faq,.card.faq){max-width:none!important;width:100%!important;margin:0!important;box-sizing:border-box}
.gse-ad-primary>.gse-ad-inline-slot + :is(.gse-dedicated-tool-faq,.gse-universal-faq,.faq,.card.faq){margin-top:0!important}
.gse-ad-primary>:is(.gse-dedicated-tool-faq,.gse-universal-faq,.faq,.card.faq)+:is(.gse-dedicated-tool-faq,.gse-universal-faq,.faq,.card.faq){margin-top:15px!important}
.gse-ad-rail-stack{display:flex;flex-direction:column;gap:15px;align-items:stretch;height:100%;width:300px;max-width:100%;margin:0;padding:0}
.gse-ad-rail-stack>.gse-ad-unit{width:300px!important;max-width:100%!important;flex-shrink:0}
.gse-ad-rail-stack>.gse-ad-fill{flex:1 1 auto;min-height:0}
@media(min-width:1121px){
 body>main>.gse-ad-frame,body>main>.site-columns.gse-ad-frame{display:grid!important;grid-template-columns:minmax(0,1fr) 300px!important;gap:15px!important;align-items:stretch!important;max-width:1386px;width:100%;margin:0 auto!important;padding:0!important}
 .gse-ad-frame>.gse-ad-rail{grid-column:2!important;grid-row:1!important;align-self:stretch!important;width:300px!important;min-width:300px!important;max-width:300px!important;padding:0!important;margin:0!important;display:block!important}
 .gse-ad-inline-slot>.gse-ad-horizontal{display:flex!important}
 .gse-ad-inline-slot>.gse-ad-mobile{display:none!important}
}
@media(max-width:1120px){
 body>main>.gse-ad-frame,body>main>.site-columns.gse-ad-frame{display:block!important;max-width:100%;width:100%;margin:0 auto!important}
 .gse-ad-frame>.gse-ad-rail{display:none!important}
 .gse-ad-inline-slot>.gse-ad-horizontal{display:none!important}
 .gse-ad-inline-slot>.gse-ad-mobile{display:flex!important}
}
@media(max-width:320px){.gse-ad-mobile{width:100%!important}}
/* Normalize external vertical margins at the tool / ad / FAQ boundary. */
.gse-ad-primary>.gse-ad-inline-slot{margin-block:15px!important}
.gse-ad-primary>.gse-ad-inline-slot+section{margin-top:0!important}
.gse-ad-primary>section:has(+.gse-ad-inline-slot){margin-bottom:0!important}
/* Keep the original global header/footer and remove artificial bottom spacing. */
body:has(main[data-gse-ad-layout="ready"])>main{padding-bottom:0!important;margin-bottom:0!important}
body:has(main[data-gse-ad-layout="ready"])>footer.site-footer{margin-top:0!important}
body:has(.gse-ad-frame:not(.gse-ad-home))>main>.ad-top,
body:has(.gse-ad-frame:not(.gse-ad-home))>main>.ad-slot:first-child{display:none!important}
/* Standard 15px spacing for directly adjacent homepage holder blocks. */
.gse-ad-home>.gse-ad-primary>.gse-ad-inline-slot{margin-block:15px!important}
