/* Shared geometry for paid community banners and first-party house creatives. */
/* Override the older two-column .ad-slot layout only for these banner shells. */
.ad-slot.external-ad-shell{box-sizing:border-box;display:block;grid-template-columns:none;gap:0;width:100%;max-width:min(100%,var(--ad-slot-width,728px));margin:1.5rem auto;clear:both;text-align:center}
.ad-slot-label{display:block;margin:0 0 6px;color:inherit;opacity:.62;font:500 10px/1.3 ui-sans-serif,system-ui,sans-serif;letter-spacing:.08em;text-align:center}
.ad-slot-current{box-sizing:border-box;max-width:100%;overflow-x:auto;container:ad-banner-area/inline-size;scrollbar-width:thin}
.ad-slot-current>[data-ad-attempt]:not([hidden]){visibility:visible}
.ad-slot-current>[data-ad-attempt][hidden]{display:none!important}
.nine-ad-banner{box-sizing:border-box;position:relative;display:block;width:min(100%,var(--ad-width,728px));max-width:100%;margin-inline:auto;overflow:hidden;text-decoration:none!important;isolation:isolate}
.nine-house-ad{--house-ink:#2c4343;--house-paper:#f6f3dc;--house-border:#d4d9b9;display:grid;grid-template-columns:118px minmax(0,1fr) auto;align-items:center;gap:12px;min-height:var(--ad-height,90px);padding:6px 21px 6px 9px;border:1px solid var(--house-border);border-radius:12px;background:var(--house-paper);color:var(--house-ink)!important;text-align:left;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.2;transition:border-color .16s ease,box-shadow .16s ease}
.nine-house-shark{--house-ink:#253e59;--house-paper:#e5f3f1;--house-border:#bfd8d4}
.nine-house-robot{--house-ink:#504064;--house-paper:#f0ebfa;--house-border:#d4c9e7}
.nine-house-ad:hover{border-color:var(--house-ink);box-shadow:0 3px 13px #00000012}
.nine-house-ad:focus-visible,.nine-hosted-ad:focus-visible{outline:3px solid #7259cc;outline-offset:4px}
.nine-house-ad .nine-house-art{display:block;min-width:0;height:76px;align-self:center}
.nine-house-ad .nine-house-art svg{display:block;width:100%;height:100%;max-height:none;overflow:visible}
.nine-house-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.nine-house-ad .nine-house-kicker{display:block;color:var(--house-ink);font-size:9px;line-height:1.1;font-weight:750;letter-spacing:.14em;opacity:.7}
.nine-house-ad .nine-house-title{display:block;margin:0;color:var(--house-ink);font-size:28px;font-weight:850;letter-spacing:-1px;line-height:1.02}
.nine-house-ad .nine-house-line{display:block;margin:0;color:var(--house-ink);font-size:12px;line-height:1.3;font-weight:500;opacity:.9}
.nine-house-ad .nine-house-action{display:inline-flex;align-items:center;justify-content:center;gap:11px;border:1px solid currentColor;border-radius:7px;padding:9px 11px;color:var(--house-ink);font-size:11px;font-weight:750;white-space:nowrap}
.nine-house-action>span{font-size:17px;line-height:1}
.nine-house-ad.nine-ad-rectangle{grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:10px;padding:14px 18px;text-align:center}
.nine-house-ad.nine-ad-rectangle .nine-house-art{height:98px;width:152px}
.nine-house-ad.nine-ad-rectangle .nine-house-copy{gap:5px}
.nine-house-ad.nine-ad-rectangle .nine-house-title{font-size:29px}
.nine-house-ad.nine-ad-rectangle .nine-house-action{padding:8px 13px}
.nine-house-ad.nine-ad-compact{grid-template-columns:82px minmax(0,1fr);gap:7px;padding:9px 11px 9px 5px}
.nine-house-ad.nine-ad-compact .nine-house-art{height:76px;grid-row:1/3}
.nine-house-ad.nine-ad-compact .nine-house-title{font-size:24px;letter-spacing:-.7px}
.nine-house-ad.nine-ad-compact .nine-house-kicker{font-size:8px;letter-spacing:.08em}
.nine-house-ad.nine-ad-compact .nine-house-line{font-size:11px}
.nine-house-ad.nine-ad-compact .nine-house-action{justify-self:start;padding:0;border:0;font-size:10px}
.nine-house-ad.nine-ad-tall{grid-template-columns:minmax(0,1fr);align-content:center;justify-items:center;gap:27px;padding:26px 12px;text-align:center}
.nine-house-ad.nine-ad-tall .nine-house-art{width:min(100%,180px);height:160px}
.nine-house-ad.nine-ad-tall .nine-house-copy{gap:12px}
.nine-house-ad.nine-ad-tall .nine-house-title{font-size:31px;line-height:1.05;letter-spacing:-.8px}
.nine-house-ad.nine-ad-tall .nine-house-line{max-width:160px;font-size:13px;line-height:1.4}
.nine-house-ad.nine-ad-tall .nine-house-kicker{line-height:1.5}
.nine-house-ad.nine-ad-tall .nine-house-action{gap:6px;padding:9px 7px;font-size:10px}
/* Small skyscrapers and short banners need their own proportions, not clipped art. */
.nine-house-ad.nine-ad-tall-compact{gap:12px;padding:12px 8px}
.nine-house-ad.nine-ad-tall-compact .nine-house-art{width:118px;height:90px}
.nine-house-ad.nine-ad-tall-compact .nine-house-copy{gap:7px}
.nine-house-ad.nine-ad-tall-compact .nine-house-title{font-size:25px;line-height:1.04}
.nine-house-ad.nine-ad-tall-compact .nine-house-kicker{font-size:8px;letter-spacing:.08em;line-height:1.25}
.nine-house-ad.nine-ad-tall-compact .nine-house-line{font-size:11px;line-height:1.25}
.nine-house-ad.nine-ad-tall-compact .nine-house-action{padding:7px 6px;font-size:9px}
.nine-house-ad.nine-ad-short{grid-template-columns:48px minmax(0,1fr) auto;gap:6px;height:var(--ad-height,50px);min-height:var(--ad-height,50px);padding:4px 8px;border-radius:8px}
.nine-house-ad.nine-ad-short .nine-house-art{grid-row:auto;height:calc(var(--ad-height,50px) - 10px)}
.nine-house-ad.nine-ad-short .nine-house-copy{gap:2px}
.nine-house-ad.nine-ad-short .nine-house-kicker{font-size:7.5px;letter-spacing:.07em;line-height:1.1}
.nine-house-ad.nine-ad-short .nine-house-title{font-size:20px;line-height:1.02;letter-spacing:-.65px;white-space:nowrap}
.nine-house-ad.nine-ad-short .nine-house-line{display:none}
.nine-house-ad.nine-ad-short .nine-house-action{justify-self:end;gap:5px;padding:4px 0;border:0;font-size:10px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard{grid-template-columns:190px minmax(0,1fr) auto;gap:24px;padding:24px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-art{height:170px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-copy{gap:8px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-title{font-size:38px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-line{font-size:15px}
.nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-action{padding:12px 15px;font-size:12px}
.nine-hosted-ad{aspect-ratio:var(--ad-ratio,728/90);background:#10141c;border-radius:8px}
.nine-hosted-ad [data-hosted-ad-image]{display:block;width:100%;height:100%;max-width:100%;max-height:100%;margin:0;object-fit:contain;border:0;border-radius:0}
@media(max-width:620px){
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact){grid-template-columns:83px minmax(0,1fr);gap:7px;padding:8px 12px 8px 5px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-art{height:74px;grid-row:1/3}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-title{font-size:24px;letter-spacing:-.7px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-action{justify-self:start;padding:0;border:0;font-size:10px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-line{font-size:11px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard{grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:8px;padding:14px;text-align:center}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-art{grid-row:auto;width:126px;height:92px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-copy{gap:5px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-title{font-size:28px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-action{justify-self:center;padding:7px 10px;border:1px solid currentColor}
}
@container ad-banner-area (max-width:620px){
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact){grid-template-columns:83px minmax(0,1fr);gap:7px;padding:8px 12px 8px 5px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-art{height:74px;grid-row:1/3}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-title{font-size:24px;letter-spacing:-.7px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-action{justify-self:start;padding:0;border:0;font-size:10px}
 .nine-house-ad.nine-ad-wide:not(.nine-ad-compact) .nine-house-line{font-size:11px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard{grid-template-columns:minmax(0,1fr);justify-items:center;align-content:center;gap:8px;padding:14px;text-align:center}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-art{grid-row:auto;width:126px;height:92px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-copy{gap:5px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-title{font-size:28px}
 .nine-house-ad.nine-ad-wide.nine-ad-billboard .nine-house-action{justify-self:center;padding:7px 10px;border:1px solid currentColor}
}
@media(prefers-reduced-motion:reduce){.nine-house-ad{transition:none}}

/* Public image placeholders use the library's exact size group. */
.nine-house-image{aspect-ratio:var(--ad-ratio,728/90);background:#10141c;border-radius:0;line-height:0;padding:0;border:0}
.nine-house-image>img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;margin:0;border:0;border-radius:0}
.nine-house-image>img[hidden]{display:none}
.nine-house-image-concept{display:grid;grid-template-rows:minmax(0,1fr) auto}
.nine-house-image-label{display:flex;align-items:center;justify-content:space-between;gap:6px;padding:3px 6px;background:#122132;color:#fff;font:700 11px/1.25 system-ui,sans-serif;white-space:nowrap}
.nine-house-image-label>span{font-weight:500}
.nine-house-image:focus-visible{outline:3px solid #7259cc;outline-offset:4px}
.nine-house-image-fallback:not([hidden]){position:absolute;inset:0;display:flex;flex-direction:column;gap:8px;justify-content:center;align-items:center;text-align:center;color:#fff;background:#16355a;font:600 14px/1.2 system-ui,sans-serif}
.nine-house-image-fallback strong{font-size:clamp(16px,4vw,30px)}
.nine-house-image>img[hidden]{display:none!important}

/* 1404: side inventory lives in actual columns, never over content/navigation. */
.site-ad-layout{display:contents}
.site-ad-rail{display:none;min-width:0;position:relative;z-index:1;padding-top:24px}
.site-ad-rail-left{grid-column:1;grid-row:1}
.site-ad-rail-right{grid-column:3;grid-row:1}
.site-ad-rail .ad-slot.external-ad-shell{margin:0;max-width:100%}
.site-ad-rail .ad-slot-current{overflow:clip}
.site-ad-layout:not(:has(>.site-ad-rail-left .ad-slot)){--rail-left:0px!important}
.site-ad-layout:not(:has(>.site-ad-rail-right .ad-slot)){--rail-right:0px!important}
@media print{.site-ad-layout{display:contents!important}.site-ad-rail{display:none!important}}

/* 1405: footer height follows the active creative, not an unused fixed-height allocation. */
.site-ad-footer{display:flow-root;min-height:0;padding:0;margin:0}
.site-ad-footer:not(:has(.ad-slot,.google-ad-privacy button:not([hidden]))){display:none}
.site-ad-footer .ad-slot.external-ad-shell{min-height:0;height:auto;margin-block:12px 4px;padding-block:0}
.site-main:has(>.site-ad-footer .ad-slot){padding-bottom:12px}
.google-ad-privacy:not(:has(button:not([hidden]))){display:none}
.ad-slot.external-ad-shell[data-ad-placement="bottom"] .ad-slot-current{min-height:0;height:auto}
.ad-slot.external-ad-shell[data-ad-placement="bottom"] .ad-slot-current>[data-ad-attempt]{min-height:0;height:auto}

/* One managed vignette, outside page columns. Close is always available outside provider content. */
[data-ad-vignette][hidden]{display:none!important}
.nine-ad-vignette{box-sizing:border-box;position:fixed;inset:0;width:min(472px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);height:fit-content;margin:auto;padding:12px;border:1px solid #45546b;border-radius:12px;background:#101b2c;color:#eef4ff;box-shadow:0 18px 70px #0008;overflow:auto;font:400 14px/1.35 system-ui,sans-serif}
.nine-ad-vignette:not([open]){display:none}
.nine-ad-vignette::backdrop{background:#050b17a8}
.nine-ad-vignette-toolbar{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:0 0 10px}
.nine-ad-vignette-toolbar>span{font-size:12px;color:#bdc9dc}
.nine-ad-vignette-toolbar>button{box-sizing:border-box;min-height:44px;min-width:84px;padding:9px 12px;border:1px solid #7b8ba2;border-radius:7px;background:#22324a;color:#fff;font:700 14px/1.2 system-ui,sans-serif;cursor:pointer}
.nine-ad-vignette-toolbar>button:focus-visible{outline:3px solid #83ccff;outline-offset:2px}
.nine-ad-vignette-status{margin:0 0 8px;font-size:12px;color:#bdc9dc}
.nine-ad-vignette-status[hidden]{display:none!important}
.nine-ad-vignette-stage{display:flow-root;min-width:0;min-height:0;margin:0;padding:0;text-align:center}
.nine-ad-vignette-stage>iframe[data-ad-vignette-frame]{display:block;width:100%;max-width:100%;height:min(360px,calc(100dvh - 150px));margin:0;border:0;background:transparent}
.nine-ad-vignette-stage>.nine-ad-banner{max-width:100%;margin:0 auto}
@media print{.nine-ad-vignette{display:none!important}}
