.content-prose h2, .content-prose h3 { margin-top: 1.4rem; font-weight: 800; }
.content-prose p, .content-prose li { color: #334155; line-height: 1.7; }
.content-prose ul { padding-left: 1.2rem; }

.container .shadow-sm { box-shadow: 0 10px 28px rgba(15,23,42,.06) !important; }
.rounded-4 { border-radius: 1rem !important; }

/* Theme helpers */
.vipn-surface{
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text);
  border-radius: 1.25rem;
}

.vipn-on-surface{ color: var(--text) !important; }
.vipn-muted{ color: var(--muted) !important; }

.vipn-mutedlink{
  color: var(--muted) !important;
}
.vipn-mutedlink:hover{
  color: var(--text) !important;
  text-decoration: underline;
  text-decoration-color: rgba(255,255,255,.25);
}

.vipn-titlelink{
  color: var(--text) !important;
}
.vipn-titlelink:hover{
  color: var(--text) !important;
  text-decoration: underline;
  text-decoration-color: rgba(255,255,255,.25);
}

/* Badge (theme-aware) */
.vipn-badge{
  display: inline-flex;
  align-items: center;
  padding: .35rem .55rem;
  border-radius: 999px;
  font-size: .72rem;
  font-weight: 900;
  letter-spacing: .06em;
  text-transform: uppercase;
  background: rgba(255,255,255,.10);
  border: 1px solid rgba(255,255,255,.12);
  color: rgba(255,255,255,.92);
}
html[data-theme="light"] .vipn-badge{
  background: rgba(11,27,54,.08);
  border-color: rgba(9,30,66,.12);
  color: rgba(11,27,54,.90);
}

/* CTA button (keep Bootstrap button sizing) */
.vipn-btn-cta{
  background: var(--yellow, #ffcc00) !important;
  color: #0b1b36 !important;
  border: none !important;
}
.vipn-btn-cta:hover{
  background: var(--yellowHover, #f2c200) !important;
}

/* Hero styling */
.vipn-hero{ overflow: hidden; }

.vipn-hero__lead{
  background:
    radial-gradient(700px 420px at 20% 0%, rgba(52,109,255,.18), transparent 60%),
    radial-gradient(600px 360px at 90% 10%, rgba(255,204,0,.10), transparent 55%),
    linear-gradient(180deg, rgba(255,255,255,.04), transparent 45%);
}

.vipn-hero__img{ object-fit: cover; }

.vipn-hero__side{
  background: rgba(255,255,255,.03);
  border-left: 1px solid var(--border);
}
html[data-theme="light"] .vipn-hero__side{
  background: rgba(11,27,54,.03);
}

.vipn-section-title{
  color: var(--muted);
  font-weight: 900;
  letter-spacing: .08em;
}

/* List group items theme-safe */
.vipn-listgroup .vipn-listgroup__item{
  background: transparent !important;
  border: 0 !important;
  color: var(--text) !important;
}
.vipn-listgroup .vipn-listgroup__item:hover{
  background: var(--surface2) !important;
  border-radius: 12px;
  padding-left: .5rem !important;
  padding-right: .5rem !important;
}

/* Widget spacing */
.vipn-widget{ padding: 14px; }

/* Card-news styling */
.vipn-cardnews{ border-radius: 1.25rem; }
.vipn-cardnews:hover{
  transform: translateY(-1px);
  transition: transform .12s ease, box-shadow .12s ease;
  box-shadow: var(--shadowStrong);
}

/* Trending list */
.vipn-trending{ display: grid; gap: 10px; }
.vipn-trending__item{
  padding-bottom: 10px;
  border-bottom: 1px solid var(--border);
}
.vipn-trending__item:last-child{ border-bottom: 0; padding-bottom: 0; }

/* Smaller input option */
.vipn-input--sm{
  padding: 10px 12px;
  border-radius: 14px;
  font-size: .9rem;
}

/* Navbar surface */
.vipn-navbar{
  background: var(--surface);
  border-bottom: 1px solid var(--border);
  backdrop-filter: blur(10px);
}

.vipn-logo{
  width: 28px; height: 28px;
  display: inline-flex; align-items: center; justify-content: center;
  border-radius: 10px;
  background: var(--surface2);
  border: 1px solid var(--border);
  font-weight: 900;
  color: var(--text);
}

.vipn-brand-text{
  font-weight: 800;
  color: var(--text);
  letter-spacing: .2px;
}

.vipn-link{
  color: var(--muted) !important;
  border-radius: 999px;
  padding: .45rem .75rem !important;
}
.vipn-link:hover{ color: var(--text) !important; background: var(--surface2); }
.vipn-link.active{ color: var(--text) !important; background: var(--surface2); font-weight: 800; }

.vipn-cta{
  background: var(--yellow, #ffcc00) !important;
  color: #0b1b36 !important;
  border: 0 !important;
  border-radius: 999px !important;
  padding: .45rem .75rem !important;
  font-weight: 800;
}
.vipn-cta:hover{ filter: brightness(.95); }

.vipn-icon-btn{
  border-radius: 999px !important;
  border: 1px solid var(--border) !important;
  background: var(--surface2) !important;
  color: var(--text) !important;
  width: 38px;
  height: 34px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
}

/* Footer surface */
.vipn-footer{
  background: var(--surface);
  border-top: 1px solid var(--border);
}


/* v3.9.62: public advertising intake form */
.vipn-adrequest{padding:clamp(18px,3vw,28px);border-radius:24px;box-shadow:0 20px 55px rgba(15,23,42,.07)}
.vipn-adrequest__form{display:block}.vipn-adrequest__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.vipn-adrequest__wide{grid-column:1/-1}.vipn-adrequest label{display:block;font-weight:800;color:var(--vipn-ink,#0f172a);font-size:.92rem;margin-bottom:7px}.vipn-adrequest input,.vipn-adrequest select,.vipn-adrequest textarea{width:100%;border:1px solid rgba(15,23,42,.14);border-radius:16px;background:#fff;color:#0f172a;padding:12px 14px;box-shadow:0 8px 20px rgba(15,23,42,.04);outline:none}.vipn-adrequest input:focus,.vipn-adrequest select:focus,.vipn-adrequest textarea:focus{border-color:#0d6efd;box-shadow:0 0 0 4px rgba(13,110,253,.12)}.vipn-adrequest__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-top:18px}.vipn-adrequest__alert{border-radius:18px;padding:14px 16px;font-weight:800;margin-bottom:18px}.vipn-adrequest__alert--success{background:#ecfdf5;border:1px solid #a7f3d0;color:#065f46}.vipn-adrequest__alert--danger{background:#fef2f2;border:1px solid #fecaca;color:#991b1b}@media(max-width:760px){.vipn-adrequest__grid{grid-template-columns:1fr}.vipn-adrequest{padding:18px}}
