
/* San Diego News Today — static staging polish (news / publisher) */
:root {
  --sdnt-ink: #1a1a1a;
  --sdnt-muted: #5c6570;
  --sdnt-accent: #c41230;
  --sdnt-accent-2: #8b0e22;
  --sdnt-soft: #f4f5f7;
  --sdnt-line: #e2e5ea;
  --sdnt-white: #ffffff;
  --sdnt-radius: 8px;
  --sdnt-shadow: 0 6px 18px rgba(26, 26, 26, 0.08);
}

html { scroll-behavior: smooth; }
body {
  color: var(--sdnt-ink);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}

.sdnt-static-note {
  max-width: 1100px;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Soften WP chrome / empty widgets */
#wpadminbar,
.widget:empty,
.bs-login:empty {
  display: none !important;
}

/* Header / logo alignment */
.site-header,
.header-style-2,
.header-inner {
  background: var(--sdnt-white) !important;
  border-bottom: 1px solid var(--sdnt-line);
}
.site-header .img-logo,
.header-inner .img-logo,
a.logo img,
.site-branding img {
  max-height: 56px;
  width: auto;
  height: auto;
  display: block;
  object-fit: contain;
}
.header-inner {
  display: flex;
  align-items: center;
  gap: 1rem;
}

/* Story listing cards / thumbs — keep aspect, hide broken gaps */
/* (do not touch .img-cont position: modern-grid/slider hero layers are absolutely positioned by the theme) */
.listing-item .img-holder,
.bs-listing .img-holder {
  overflow: hidden;
  background-color: var(--sdnt-soft);
  border-radius: var(--sdnt-radius);
}
.listing-item .img-holder img,
.listing-item .img-cont img,
.bs-listing .img-holder img,
.img-holder img {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  background: var(--sdnt-soft);
}
/* Card aspect comes from the theme's .img-holder:before padding-top per slot; no aspect-ratio override */

/* Hide empty broken image boxes (failed loads leave alt-only gaps) */
img[src=""],
img:not([src]),
img[src*="{&quot;baseurl"],
img[src*="baseurl"] {
  display: none !important;
}

/* Card / listing polish */
.listing-item,
.listing-item-blog,
.listing-item-1,
.listing-item-2,
.listing-item-3,
.listing-item-4 {
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
.listing-item:hover,
.listing-item-blog:hover {
  transform: translateY(-2px);
}
.listing-item .title,
.listing-item .item-title,
.listing-item h2 a,
.listing-item h3 a {
  color: var(--sdnt-ink) !important;
  text-decoration: none !important;
  letter-spacing: -0.01em;
}
.listing-item .title:hover,
.listing-item .item-title:hover,
.listing-item h2 a:hover,
.listing-item h3 a:hover {
  color: var(--sdnt-accent) !important;
}

/* Main content readability */
.content-main-wrap,
.bs-vc-content,
.single-container,
.site-content {
  max-width: 1200px;
}
.post-content img,
.entry-content img,
.single-post-content img {
  max-width: 100%;
  height: auto;
  border-radius: 6px;
}

/* Accent links */
a { color: var(--sdnt-accent); }
a:hover { color: var(--sdnt-accent-2); }

/* Disabled forms stay non-interactive */
form.sdnt-disabled,
form.sdnt-disabled button,
form.sdnt-disabled input[type="submit"] {
  opacity: 0.85;
  pointer-events: none;
  cursor: not-allowed;
}

/* Pagination / footer tidy */
.bs-pagination a,
.btn-bs-pagination {
  border-radius: 999px !important;
}
.site-footer {
  border-top: 1px solid var(--sdnt-line);
  margin-top: 2rem;
}

@media (max-width: 768px) {
  .site-header .img-logo,
  .header-inner .img-logo,
  a.logo img {
    max-height: 44px;
  }
}

/* card thumbs: publisher lazy-loads data-src into background-image on a.img-holder */
a.img-holder, .img-holder, a.img-cont, .img-cont {
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: var(--sdnt-soft, #f4f5f7);
}
.listing-item-tb-1 .img-holder, .listing-item-tb-2 .img-holder { border-radius: 6px; }

/* modern-grid / slider overlay cards: keep theme white titles over images */
.listing-mg-item .title,
.listing-mg-item .title a,
.listing-mg-item h2 a,
.listing-mg-item .post-meta,
.listing-mg-item .post-meta a,
.listing-mg-item .post-meta b,
.bs-slider-item .title a {
  color: #fff !important;
  text-shadow: 0 1px 3px rgba(0,0,0,0.55);
}
.listing-mg-item .title a:hover { color: #ffd9de !important; }
