.kbs-announcement {
  background: linear-gradient(90deg, rgba(216,163,58,0.18), rgba(247,201,91,0.08), rgba(216,163,58,0.18));
  border-bottom: 1px solid var(--kbs-border);
  color: var(--kbs-bright-gold);
  font-size: 0.92rem;
  text-align: center;
  padding: 0.55rem 1rem;
}
.kbs-announcement p { margin: 0; }
.kbs-site-header {
  position: sticky;
  top: 0;
  z-index: 20;
  padding: 0.85rem clamp(1rem, 4vw, 3rem);
  background: rgba(2,8,20,0.88);
  border-bottom: 1px solid var(--kbs-border);
  backdrop-filter: blur(16px);
}
.kbs-site-header .wp-block-navigation__responsive-container-open { color: var(--kbs-ivory); }
.kbs-header-brand { min-width: min(360px, 42vw); }
.kbs-site-title { color: var(--kbs-ivory); font-size: clamp(1rem, 2vw, 1.35rem); font-weight: 800; margin: 0; }
.kbs-header-brand:has(.custom-logo-link) .kbs-site-title { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
.kbs-header-cta { white-space: nowrap; }
.kbs-hero { position: relative; }
.kbs-hero::after {
  content: "";
  position: absolute;
  inset: auto 0 0 0;
  height: 11rem;
  background: linear-gradient(180deg, transparent, var(--kbs-midnight));
  pointer-events: none;
}
.kbs-hero-grid { width: min(1180px, calc(100% - 32px)); margin: 0 auto; position: relative; z-index: 2; }
.kbs-eyebrow {
  color: var(--kbs-bright-gold);
  text-transform: uppercase;
  letter-spacing: 0.12em;
  font-size: 0.78rem;
  font-weight: 700;
  margin-bottom: 1rem;
}
.kbs-hero-title { font-size: clamp(2.7rem, 5vw, 5.75rem); max-width: 11ch; margin: 0; }
.kbs-hero-copy { color: var(--kbs-muted); font-size: clamp(1.05rem, 2vw, 1.35rem); max-width: 52rem; }
.kbs-trust { color: var(--kbs-bright-gold); font-weight: 700; }
.kbs-hero-portrait {
  border: 1px solid var(--kbs-border);
  box-shadow: var(--kbs-shadow);
  background: radial-gradient(circle at 60% 22%, rgba(247,201,91,0.22), transparent 42%), rgba(255,247,230,0.05);
  overflow: hidden;
  border-radius: 8px;
  aspect-ratio: 4 / 5;
  display: grid;
  place-items: center;
}
.kbs-hero-portrait img { width: 100%; height: 100%; object-fit: cover; }
.kbs-band { padding: clamp(56px, 8vw, 110px) clamp(1rem, 4vw, 3rem); position: relative; }
.kbs-band > * { max-width: 1180px; margin-left: auto; margin-right: auto; }
.kbs-card-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(170px, 1fr));
  gap: 1rem;
}
.kbs-card-grid > .wp-block-column,
.kbs-service-card,
.kbs-remedy-card,
.kbs-faq details,
.kbs-youtube-card {
  border: 1px solid var(--kbs-border);
  border-radius: 8px;
  background: var(--kbs-panel);
  padding: 1.2rem;
  box-shadow: 0 18px 48px rgba(0, 0, 0, 0.2);
}
.kbs-card-grid h3, .kbs-service-card h3 { color: var(--kbs-bright-gold); margin-top: 0; }
.kbs-gold-button .wp-block-button__link,
.kbs-button,
button.kbs-button,
input[type="submit"].kbs-button {
  background: linear-gradient(135deg, var(--kbs-bright-gold), var(--kbs-saffron));
  border: 0;
  border-radius: 999px;
  color: #1b1204;
  cursor: pointer;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-weight: 800;
  min-height: 44px;
  padding: 0.8rem 1.3rem;
  text-decoration: none;
}
.is-style-outline .wp-block-button__link {
  border-color: var(--kbs-border);
  color: var(--kbs-ivory);
}
.kbs-grid,
.kbs-services-grid,
.kbs-remedies-grid,
.kbs-video-grid,
.kbs-post-grid .wp-block-post-template {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 1rem;
}
.kbs-round-image img { border-radius: 8px; border: 1px solid var(--kbs-border); box-shadow: var(--kbs-shadow); }
.kbs-form,
.kbs-booking-form,
.kbs-payment-box {
  display: grid;
  gap: 0.85rem;
  padding: 1.2rem;
  border: 1px solid var(--kbs-border);
  border-radius: 8px;
  background: rgba(255,247,230,0.055);
}
.kbs-form label,
.kbs-booking-form label,
.kbs-payment-box label { display: grid; gap: 0.35rem; color: var(--kbs-ivory); font-weight: 700; }
.kbs-form input,
.kbs-form textarea,
.kbs-form select,
.kbs-booking-form input,
.kbs-booking-form textarea,
.kbs-booking-form select,
.kbs-payment-box input,
.kbs-payment-box textarea {
  width: 100%;
  background: rgba(2,8,20,0.72);
  border: 1px solid var(--kbs-border);
  border-radius: 8px;
  color: var(--kbs-ivory);
  min-height: 44px;
  padding: 0.75rem 0.85rem;
}
.kbs-footer {
  padding: clamp(42px, 7vw, 72px) clamp(1rem, 4vw, 3rem);
  border-top: 1px solid var(--kbs-border);
  background: #020814;
}
.kbs-footer-note { color: var(--kbs-muted); font-size: 0.9rem; }
@media (max-width: 780px) {
  .kbs-site-header { gap: 0.75rem; }
  .kbs-header-brand { min-width: 0; }
  .kbs-site-header .wp-block-buttons { display: none; }
  .kbs-hero { min-height: auto !important; padding: 48px 0; }
  .kbs-hero-title { max-width: 100%; }
}
