@import url("https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Nunito+Sans:wght@400;500;600;700;800&display=swap");
@import url("https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.2/css/all.min.css");

:root {
  --blue: #153e75;
  --blue-soft: #e7f0fb;
  --green: #426FA8;
  --green-soft: #e8f4ee;
  --orange: #d97706;
  --gold-soft: #fff4dc;
  --light-bg: #eef4f1;
  --card-border: #cfdbe4;
  --text-main: #17212b;
  --text-muted: #596b7a;
  --shadow-soft: 0 10px 26px rgba(21, 62, 117, 0.11);
}

html {
  min-height: 100%;
  background:
    radial-gradient(
      circle at top left,
      rgba(217, 119, 6, 0.15),
      transparent 30rem
    ),
    radial-gradient(
      circle at top right,
      rgba(66,111,168, 0.13),
      transparent 28rem
    ),
    linear-gradient(135deg, #f9fbf7 0%, #eef4f1 48%, #e7f0fb 100%);
}

body {
  font-family: "Nunito Sans", Arial, sans-serif;
  background: transparent;
  color: var(--text-main);
}

img {
  -webkit-user-drag: none;
  -webkit-user-select: none;
  user-select: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-family: "Libre Baskerville", Georgia, serif;
}

body.container,
body .container {
  background: rgba(255, 255, 255, 0.92);
}

.container {
  max-width: 1180px;
}

.navbar {
  border-bottom: 1px solid var(--card-border);
  box-shadow: 0 2px 10px rgba(30, 60, 114, 0.06);
}

.navbar .nav-link {
  align-items: center;
  color: var(--blue);
  display: inline-flex;
  font-size: 0.92rem;
  gap: 0.35rem;
  font-weight: 500;
}

.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: var(--green);
}

.navbar-brand {
  align-items: center;
  color: var(--blue);
  display: inline-flex;
  gap: 0.4rem;
  font-family: "Libre Baskerville", Georgia, serif;
}

.dropdown-menu {
  border-color: var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
}

.dropdown-menu.show {
  display: block !important;
}

.navbar-collapse.show {
  display: block !important;
}

@media (min-width: 992px) {
  .navbar .dropdown:hover > .dropdown-menu,
  .navbar .dropdown:focus-within > .dropdown-menu {
    display: block;
  }
}

.dropdown-item {
  align-items: center;
  color: var(--blue);
  display: flex;
  font-size: 0.92rem;
  gap: 0.45rem;
}

.navbar .nav-link i:not(.youtube-icon),
.navbar-brand i,
.dropdown-item i {
  color: var(--green);
  font-size: 0.88em;
  min-width: 1em;
}

.dropdown-item:hover,
.dropdown-item:focus {
  background: var(--green-soft);
  color: var(--green);
}

.youtube-link {
  align-items: center;
  display: inline-flex;
  gap: 0.35rem;
}

.youtube-icon {
  align-items: center;
  background: #cf2e2e;
  border-radius: 50%;
  color: #ffffff;
  display: inline-flex;
  font-size: 0.65rem;
  height: 20px;
  justify-content: center;
  line-height: 1;
  width: 20px;
}

.header img {
  border-radius: 8px;
  object-fit: cover;
  width: 100%;
}

section {
  margin-bottom: 18px;
}

.page-band {
  background-image:
    linear-gradient(rgba(255, 252, 246, 0.92), rgba(248, 252, 249, 0.92)),
    url("../../images/thumbs/background1.webp");
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  border: 1px solid var(--card-border);
  border-radius: 8px;
}

.page-intro-card {
  background: linear-gradient(135deg, #ffffff, #fbfaf6);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: none;
  margin: 0.65rem 0 1rem;
  padding: 0.95rem 1.2rem;
}

.page-intro-card h1,
.page-intro-card h2 {
  color: #0f172a;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.45rem, 2.15vw, 1.95rem);
  font-weight: 800;
  line-height: 1.18;
  margin: 0 0 0.35rem;
}

.page-intro-card p {
  color: #465672 !important;
  font-size: 0.95rem;
  margin: 0;
}

.mhv-page-hero {
  background:
    linear-gradient(135deg, rgba(21, 62, 117, 0.94), rgba(66,111,168, 0.92)),
    url("../../activities/thumbs/hs_1.webp") center / cover no-repeat;
  border-radius: 8px;
  color: #ffffff;
  margin: 0.65rem 0 1rem;
  padding: clamp(1.2rem, 3vw, 2rem);
}

.mhv-page-hero .page-kicker,
.mhv-page-hero .activities-kicker {
  color: #f7d78c;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.08em;
  margin-bottom: 0.45rem;
  text-transform: uppercase;
}

.mhv-page-hero h1,
.mhv-page-hero h2 {
  color: #ffffff;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  font-weight: 700;
  line-height: 1.15;
  margin: 0 0 0.7rem;
}

.mhv-page-hero p {
  color: rgba(255, 255, 255, 0.9) !important;
  font-size: 1rem;
  margin: 0;
  max-width: 780px;
}

.content-card,
.border.rounded,
.border.rounded-3,
.event-box,
.accordion-item {
  background: rgba(255, 255, 255, 0.96);
  border-color: var(--card-border) !important;
  border-radius: 8px !important;
  box-shadow: var(--shadow-soft);
}

.section-title,
h2,
h3,
h4,
h5 {
  font-family: "Libre Baskerville", Georgia, serif;
  font-weight: 600;
  color: var(--text-main);
}

.page-band h2,
.page-band h3,
.page-band h4,
.page-band h5,
.section-title {
  font-family: "Libre Baskerville", Georgia, serif;
}

.about-title {
  align-items: center;
  background:
    linear-gradient(
      135deg,
      rgba(255, 244, 220, 0.98),
      rgba(245, 176, 65, 0.55)
    ),
    repeating-linear-gradient(
      135deg,
      rgba(255, 255, 255, 0.22) 0 6px,
      rgba(255, 255, 255, 0) 6px 14px
    );
  border: 1px solid rgba(217, 119, 6, 0.35);
  border-left: 5px solid var(--orange);
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(217, 119, 6, 0.12);
  color: var(--blue);
  display: inline-flex;
  line-height: 1.25;
  padding: 0.45rem 0.85rem;
}

.founder-strip {
  overflow: hidden;
}

.founder-profile {
  align-items: center;
  background: rgba(255, 255, 255, 0.94);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 1rem;
  grid-template-columns: 124px 1fr;
  padding: 1rem;
}

.founder-profile-img {
  aspect-ratio: 1 / 1;
  border: 4px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 8px 22px rgba(21, 62, 117, 0.16);
  height: auto;
  object-fit: cover;
  width: 124px;
}

.founder-profile h3,
.founder-profile h5,
.founder-profile h6 {
  color: #2457d6;
  font-size: clamp(0.98rem, 1.28vw, 1.12rem);
  font-weight: 800;
  line-height: 1.22;
  margin-bottom: 0.25rem;
  white-space: nowrap;
}

.home-page .page-band {
  margin-bottom: 0.85rem;
}

.home-page .page-band.py-4 {
  padding-bottom: 1rem !important;
  padding-top: 1rem !important;
}

.home-page .page-band.px-3 {
  padding-left: 0.9rem !important;
  padding-right: 0.9rem !important;
}

.home-page .content-card.p-4,
.home-page .visit-card.p-4 {
  padding: 1rem !important;
}

.founder-profile p {
  margin-bottom: 0.2rem;
}

.founder-years {
  color: #c73535;
  font-weight: 600;
}

.founder-role {
  color: var(--text-main);
  font-size: 1.05rem;
  font-weight: 700;
}

.founder-note {
  color: #334155;
  font-style: italic;
  line-height: 1.45;
}

.content-card hr,
.page-band hr {
  display: none;
}

.btn-outline-primary {
  border-color: var(--blue);
  color: var(--blue);
}

.btn-outline-primary:hover {
  background: var(--blue);
  border-color: var(--blue);
}

.btn-outline-success {
  border-color: var(--green);
  color: var(--green);
}

.btn-outline-success:hover {
  background: var(--green);
  border-color: var(--green);
}

.visit-card {
  background:
    linear-gradient(
      135deg,
      rgba(255, 244, 220, 0.92),
      rgba(232, 244, 238, 0.96)
    ),
    radial-gradient(
      circle at top right,
      rgba(66,111,168, 0.16),
      transparent 12rem
    );
  border: 1px solid #d9c48a !important;
  border-left: 5px solid var(--orange) !important;
}

.visit-heading {
  align-items: center;
  display: flex;
  gap: 0.75rem;
}

.visit-heading h5 {
  color: var(--green);
  font-weight: 700;
}

.visit-heading small {
  color: var(--text-muted);
}

.visit-icon,
.info-icon {
  align-items: center;
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 auto;
  font-weight: 700;
  justify-content: center;
}

.visit-icon {
  background: var(--green);
  color: #ffffff;
  height: 42px;
  width: 42px;
}

.visit-info-list {
  display: grid;
  gap: 0.85rem;
}

.visit-action-stack {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.visit-info-row {
  align-items: flex-start;
  display: flex;
  gap: 0.65rem;
}

.info-icon {
  background: #ffffff;
  border: 1px solid #dfbd7a;
  color: var(--orange);
  font-size: 0.8rem;
  height: 26px;
  margin-top: 0.05rem;
  width: 26px;
}

.list-group-item {
  border-color: #e5eaf0;
}

.list-group-item strong {
  color: var(--text-main);
}

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

.address-map-card {
  position: relative;
  width: 100%;
  height: 280px; /* 🔥 REQUIRED */
  border-radius: 14px;
  overflow: hidden;

  background-image: url("../../images/map-visakhapatnam.png");
  background-size: cover; /* 🔥 REQUIRED */
  background-position: center;
  background-repeat: no-repeat;

  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}

.address-overlay {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;

  background: linear-gradient(
    to top,
    rgba(255, 255, 255, 0.96),
    rgba(255, 255, 255, 0.85),
    rgba(255, 255, 255, 0.6)
  );

  padding: 10px 10px;
}

.address-map-card h5 {
  color: #1e3c72;
  margin-bottom: 6px;
}

.address-map-card p {
  font-size: 1rem;
  line-height: 1.5;
  color: #333;
}

.address-meta {
  font-size: 0.85rem;
  color: #555;
}

.btn-map {
  margin-top: 4px;
  background: #1e3c72;
  color: #fff;
  padding: 6px 10px;
  border-radius: 6px;
  text-decoration: none;
}

/* Set fixed height for carousel */
#demo .carousel-inner {
  height: 400px;
  border-radius: 8px;
  overflow: hidden;
}

/* Make images fill the container */
#demo .carousel-item {
  background:
    linear-gradient(rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.08)),
    var(--carousel-bg) center / cover no-repeat;
  height: 400px;
  overflow: hidden;
  position: relative;
}

#demo .carousel-item::before {
  background: var(--carousel-bg) center / cover no-repeat;
  content: "";
  filter: blur(22px);
  inset: -28px;
  opacity: 0.62;
  position: absolute;
  transform: scale(1.05);
}

#demo .carousel-item img {
  height: 400px;
  width: 100%;
  object-fit: contain;
  object-position: center;
  position: relative;
  z-index: 1;
}

.compact-list {
  display: grid;
  gap: 0.75rem;
}

.service-row {
  align-items: center;
  background: linear-gradient(135deg, #ffffff, var(--green-soft));
  border: 1px solid #dce8df;
  border-radius: 8px;
  display: flex;
  gap: 0.75rem;
  padding: 0.7rem;
}

.service-row img {
  border-radius: 8px;
  flex: 0 0 auto;
  height: 42px;
  object-fit: cover;
  width: 42px;
}

.service-row strong,
.event-summary strong {
  display: block;
  font-size: 0.92rem;
  line-height: 1.25;
}

.service-row small,
.event-summary small,
.empty-state span {
  color: var(--text-muted);
  display: block;
  font-size: 0.78rem;
  line-height: 1.35;
}

.upcoming-event-list {
  display: grid;
  gap: 0.75rem;
}

.home-event-window {
  display: grid;
  gap: 0.85rem;
}

.home-event-group {
  display: grid;
  gap: 0.65rem;
}

.home-event-group-label {
  align-items: center;
  color: var(--green);
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 800;
  gap: 0.45rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.today-event-card {
  align-items: flex-start;
  background:
    linear-gradient(135deg, rgba(255, 244, 220, 0.96), rgba(232, 244, 238, 0.98));
  border: 1px solid #d9c48a;
  border-left: 5px solid var(--orange);
  border-radius: 8px;
  display: flex;
  gap: 0.75rem;
  padding: 0.8rem;
}

.today-event-icon {
  align-items: center;
  background: #ffffff;
  border: 1px solid #dfbd7a;
  border-radius: 50%;
  color: var(--orange);
  display: inline-flex;
  flex: 0 0 38px;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.upcoming-event-card {
  align-items: flex-start;
  background: linear-gradient(135deg, #ffffff, var(--blue-soft));
  border: 1px solid #d8e4f2;
  border-radius: 8px;
  display: flex;
  gap: 0.75rem;
  padding: 0.75rem;
}

.event-date-pill {
  background: var(--blue);
  border-radius: 8px;
  color: #ffffff;
  flex: 0 0 54px;
  padding: 0.35rem 0.25rem;
  text-align: center;
}

.event-date-pill span {
  display: block;
  font-size: 0.68rem;
  text-transform: uppercase;
}

.event-date-pill strong {
  display: block;
  font-size: 1.2rem;
  line-height: 1.1;
}

.event-summary {
  min-width: 0;
}

.empty-state {
  align-items: center;
  background: linear-gradient(135deg, var(--gold-soft), #ffffff);
  border: 1px dashed #dfbd7a;
  border-radius: 8px;
  color: var(--text-main);
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 160px;
  padding: 1rem;
  text-align: center;
}

.event-empty {
  min-height: 240px;
}

.home-event-alert {
  align-items: center;
  background:
    linear-gradient(135deg, rgba(21, 62, 117, 0.96), rgba(66,111,168, 0.94));
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  color: #ffffff;
  display: grid;
  gap: 0.75rem;
  grid-template-columns: auto 1fr auto;
  margin: 0.75rem 0 1rem;
  padding: 0.75rem 0.9rem;
  transition: opacity 0.32s ease, transform 0.32s ease;
}

.home-event-alert.is-hiding {
  opacity: 0;
  transform: translateY(-8px);
}

.home-event-alert-icon {
  align-items: center;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 50%;
  color: #f7d78c;
  display: inline-flex;
  height: 38px;
  justify-content: center;
  width: 38px;
}

.home-event-alert-body {
  display: grid;
  gap: 0.1rem;
  min-width: 0;
}

.home-event-alert-body strong {
  color: #f7d78c;
  font-size: 0.82rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.home-event-alert-body span {
  overflow-wrap: anywhere;
}

.home-event-alert-link {
  background: #ffffff;
  border-radius: 8px;
  color: var(--blue);
  font-weight: 800;
  padding: 0.45rem 0.75rem;
  text-decoration: none;
}

.home-event-alert-link:hover,
.home-event-alert-link:focus {
  background: var(--gold-soft);
  color: var(--green);
}

.founder-card {
  background: #ffffff;
  border-radius: 16px;
  padding: 24px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.15);
}

.founder-img {
  width: 120px;
  height: 140px;
  object-fit: cover;
  border-radius: 10%;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.25);
}

.founder-text p {
  font-size: 0.95rem;
  line-height: 1.6;
}

/* SERVICES */
.services-section {
  background: var(--light-bg);
}

.service-card {
  background: #ffffff;
  border-radius: 14px;
  padding: 14px 16px;
  box-shadow: 0 6px 16px rgba(0, 0, 0, 0.12);
  height: 100%;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.service-card:hover {
  transform: translateY(-3px);
  box-shadow: 0 10px 22px rgba(0, 0, 0, 0.18);
}

.service-img {
  width: 54px;
  height: 54px;
  object-fit: cover;
  border-radius: 50%;
  margin-right: 12px;
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.2);
}

.service-text h6 {
  font-weight: 600;
  color: #1e3c72;
}

.service-text p {
  font-size: 0.9rem;
  color: #444;
}

/* VISIT */
.visit-section {
  background: var(--green);
  color: #fff;
  padding: 40px 0;
}

/* FOUNDERS */
.founder-card {
  background: #fff;
  border-radius: 16px;
  padding: 25px;
  box-shadow: 0 8px 22px rgba(0, 0, 0, 0.15);
}

/* ABOUT / EVENTS */
.about-events {
  background: var(--light-bg);
}

/* FOOTER */
.footer {
  background:
    linear-gradient(135deg, var(--blue), #1f4d89);
  border-top: 4px solid var(--green);
  color: #ffffff;
  margin-top: 24px;
  padding: 0.85rem 1rem;
  border-radius: 0 0 8px 8px;
}

.footer-content {
  align-items: center;
  display: flex;
  gap: 0.85rem;
  justify-content: space-between;
}

.footer p {
  color: rgba(255, 255, 255, 0.9);
  font-size: 0.86rem;
  font-weight: 700;
  margin-bottom: 0;
}

.activities-page > .container > .p-4.bg-light img.img-fluid,
.activities-page .accordion-body img.img-fluid {
  aspect-ratio: 4 / 3;
  height: auto !important;
  max-height: 220px;
  object-fit: cover;
  width: 100% !important;
}

.divine-masters-page img.img-fluid {
  aspect-ratio: 3 / 4;
  height: auto !important;
  max-height: 230px;
  object-fit: cover;
  width: auto !important;
}

.activities-page .col-6,
.activities-page .col-md-4 {
  margin-bottom: 0.75rem;
}

.activities-page .page-intro-card {
  margin-bottom: 0.65rem;
}

.activities-page .header {
  margin-bottom: 0;
}

.activities-page > .container > .p-4.bg-light {
  background: #ffffff !important;
  border: 1px solid #d8e1ec !important;
  border-radius: 8px !important;
  box-shadow: 0 5px 14px rgba(21, 62, 117, 0.07);
  margin-bottom: 0.75rem !important;
  padding: 0.85rem !important;
}

.activities-page > .container > .p-4.bg-light h4 {
  color: #10213d;
  font-size: 1rem;
  font-weight: 900;
  margin-bottom: 0.1rem !important;
}

.activities-page > .container > .p-4.bg-light p {
  font-size: 0.84rem;
  margin-bottom: 0.65rem !important;
}

.activities-page > .container > .p-4.bg-light br {
  display: none;
}

.activities-page > .container > .p-4.bg-light .row,
.activities-page .accordion-body .row {
  --bs-gutter-x: 0.65rem;
  --bs-gutter-y: 0.65rem;
  margin-bottom: 0;
}

.activities-page .accordion {
  display: grid;
  gap: 0.55rem;
  margin-top: 0.85rem;
}

.activities-page .accordion-item {
  background: #ffffff;
  border: 1px solid #d8e1ec !important;
  border-radius: 8px !important;
  box-shadow: 0 5px 14px rgba(21, 62, 117, 0.07);
  margin-bottom: 0 !important;
  overflow: hidden;
}

.activities-page .accordion-button {
  background: #ffffff;
  color: #10213d;
  font-size: 0.92rem;
  font-weight: 900;
  padding: 0.72rem 0.9rem;
}

.activities-page .accordion-button:not(.collapsed) {
  background: #dceaff;
  box-shadow: none;
  color: #153e75;
}

.activities-page .accordion-button:focus {
  border-color: #adc6e7;
  box-shadow: 0 0 0 0.16rem rgba(21, 62, 117, 0.12);
}

.activities-page .accordion-body {
  background: #ffffff;
  padding: 0.75rem 0.85rem 0.85rem !important;
}

.activities-page .accordion-body br {
  display: none;
}

.activities-page .list-group {
  margin-bottom: 0.7rem !important;
}

.activities-page .list-group-item {
  color: #253449;
  font-size: 0.88rem;
  padding: 0.42rem 0.3rem;
}

.activities-page > .container > .p-4.bg-light img.img-fluid,
.activities-page .accordion-body img.img-fluid {
  aspect-ratio: 16 / 9;
  border: 1px solid #dde6ef;
  border-radius: 6px !important;
  box-shadow: none;
  height: 185px !important;
  max-height: none !important;
  object-fit: cover;
  width: 100% !important;
}

.activities-panel-page {
  background: #f4f7f4;
}

.activities-panels-main {
  display: grid;
  gap: 1.25rem;
  padding: 1rem 0 2rem;
}

.activities-hero {
  background:
    linear-gradient(135deg, rgba(21, 62, 117, 0.94), rgba(66,111,168, 0.92)),
    url("../../activities/thumbs/hs_1.webp") center / cover no-repeat;
  border-radius: 8px;
  color: #ffffff;
  padding: clamp(1.2rem, 3vw, 2rem);
}

.activities-hero h1 {
  color: #ffffff;
  font-size: clamp(1.8rem, 4vw, 2.8rem);
  margin-bottom: 0.7rem;
}

.activities-hero p {
  color: rgba(255, 255, 255, 0.9);
  max-width: 760px;
}

.activities-kicker,
.activity-label {
  color: #426FA8;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 0.35rem;
  text-transform: uppercase;
}

.activities-hero .activities-kicker {
  color: #f7d78c;
}

.activity-panel-stack {
  display: grid;
  gap: 1.15rem;
}

.activity-panel {
  background: #ffffff;
  border: 1px solid rgba(38, 57, 77, 0.12);
  border-radius: 8px;
  box-shadow: 0 14px 34px rgba(38, 57, 77, 0.08);
  overflow: hidden;
}

.activity-panel-heading {
  background: #153e75;
  color: #ffffff;
  padding: 0.9rem 1rem;
}

.activity-panel-heading span {
  display: block;
  color: rgba(255, 255, 255, 0.82);
  font-size: 0.76rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  margin-bottom: 0.25rem;
  text-transform: uppercase;
}

.activity-panel-heading h2 {
  align-items: center;
  color: #ffffff;
  display: flex;
  font-size: clamp(1.25rem, 2.4vw, 1.75rem);
  gap: 0.65rem;
  margin: 0;
}

.activity-panel-heading h2 i {
  align-items: center;
  background: rgba(255, 255, 255, 0.14);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 2.1rem;
  font-size: 1rem;
  height: 2.1rem;
  justify-content: center;
  width: 2.1rem;
}

.activity-panel-primary .activity-panel-heading {
  background: #1f6fb2;
}

.activity-panel-info .activity-panel-heading {
  background: #16718c;
}

.activity-panel-success .activity-panel-heading {
  background: #426FA8;
}

.activity-panel-warning .activity-panel-heading {
  background: #9a6a16;
}

.activity-panel-danger .activity-panel-heading {
  background: #a43f48;
}

.activity-panel-light .activity-panel-heading {
  background: #eaf3e8;
  color: #26394d;
}

.activity-panel-light .activity-panel-heading h2,
.activity-panel-light .activity-panel-heading span {
  color: #26394d;
}

.activity-panel-light .activity-panel-heading h2 i {
  background: rgba(21, 62, 117, 0.08);
  border-color: rgba(21, 62, 117, 0.12);
}

.activity-panel-secondary .activity-panel-heading {
  background: #516173;
}

.activity-panel-body {
  display: grid;
  gap: clamp(1rem, 3vw, 1.4rem);
  grid-template-columns: minmax(240px, 0.72fr) minmax(0, 1.28fr);
  padding: clamp(1rem, 3vw, 1.35rem);
}

.activity-panel-copy p {
  color: #405163;
  line-height: 1.7;
  margin-bottom: 1rem;
}

.activity-paragraph-list {
  display: grid;
  gap: 0.85rem;
  grid-column: 1 / -1;
}

.activity-detail-paragraph {
  color: #405163;
  line-height: 1.75;
  margin: 0;
}

.activity-detail-paragraph strong {
  color: #153e75;
  font-weight: 700;
}

.activity-facts {
  display: grid;
  gap: 0.55rem;
}

.activity-facts span,
.activity-text-list span {
  background: #f6faf6;
  border: 1px solid rgba(66,111,168, 0.16);
  border-radius: 8px;
  color: #26394d;
  padding: 0.65rem 0.75rem;
}

.activity-facts strong {
  color: #153e75;
  display: inline;
  font-size: 0.98rem;
  margin-left: 0.2rem;
  white-space: nowrap;
}

.activity-photo-grid {
  align-items: start;
  display: grid;
  gap: 0.8rem;
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.activity-photo-grid figure {
  align-self: start;
  background: #f8faf9;
  border: 1px solid rgba(38, 57, 77, 0.1);
  border-radius: 8px;
  margin: 0;
  overflow: hidden;
}

.activity-photo-grid img {
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  object-position: top center;
  width: 100%;
}

.activity-photo-button {
  background: transparent;
  border: 0;
  cursor: zoom-in;
  display: block;
  padding: 0;
  width: 100%;
}

.activity-photo-button:focus-visible {
  outline: 3px solid rgba(21, 62, 117, 0.35);
  outline-offset: 3px;
}

.activity-photo-modal .modal-content {
  background: #f8faf9;
  border: 0;
  border-radius: 8px;
}

.activity-photo-modal .modal-body {
  align-items: center;
  background: #111827;
  display: flex;
  justify-content: center;
  min-height: min(70vh, 720px);
  padding: 1rem;
  position: relative;
}

.activity-modal-image {
  display: block;
  max-height: 72vh;
  max-width: 100%;
  object-fit: contain;
}

.activity-modal-nav {
  align-items: center;
  background: rgba(255, 255, 255, 0.9);
  border: 0;
  border-radius: 999px;
  color: #153e75;
  display: flex;
  font-size: 2rem;
  height: 2.75rem;
  justify-content: center;
  line-height: 1;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 2.75rem;
  z-index: 2;
}

.activity-modal-prev {
  left: 1rem;
}

.activity-modal-next {
  right: 1rem;
}

.activity-photo-modal .modal-footer {
  align-items: center;
  justify-content: space-between;
}

.activity-modal-caption {
  color: #26394d;
  font-weight: 600;
  margin: 0;
}

.activity-modal-count {
  color: #516173;
  font-size: 0.92rem;
  font-weight: 700;
}

.activity-text-list {
  display: grid;
  gap: 0.75rem;
}

.event-box .d-flex {
  gap: 0.75rem;
}

.event-box h5 {
  overflow-wrap: anywhere;
}

.date-box {
  flex: 0 0 auto;
}

.gallery-image {
  min-height: 120px;
}

.modal-body img {
  max-width: 100%;
}

.teaching-ticker-card {
  align-items: center;
  background:
    linear-gradient(135deg, rgba(255, 244, 220, 0.98), rgba(232, 244, 238, 0.98)),
    url("../../images/thumbs/background1.webp");
  background-position: center;
  background-size: cover;
  border: 1px solid #d9c48a;
  border-left: 6px solid var(--orange);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  display: grid;
  gap: 1rem;
  grid-template-columns: 230px 1fr;
  margin: 0.75rem 0 1rem;
  overflow: hidden;
  padding: 0.85rem 1rem;
}

.teaching-ticker-title {
  color: var(--blue);
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.25;
  white-space: nowrap;
}

.teaching-ticker-window {
  background: rgba(255, 255, 255, 0.88);
  border: 1px solid rgba(66,111,168, 0.18);
  border-radius: 8px;
  overflow: hidden;
  padding: 0.5rem 0;
}

.teaching-ticker-text {
  animation: teachingScroll 28s linear infinite;
  color: #334155;
  display: inline-block;
  font-size: 1rem;
  font-weight: 700;
  line-height: 1.4;
  min-width: 100%;
  padding-left: 100%;
  white-space: nowrap;
}

@keyframes teachingScroll {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}

.footer-feedback-link {
  background: #ffffff;
  border: 1px solid rgba(255, 255, 255, 0.78);
  border-radius: 8px;
  color: var(--blue);
  display: inline-flex;
  font-weight: 800;
  line-height: 1;
  padding: 0.5rem 0.9rem;
  text-decoration: none;
}

.footer-feedback-link:hover,
.footer-feedback-link:focus {
  background: var(--gold-soft);
  color: var(--green);
}

.feedback-page-card {
  max-width: 680px;
}

.rating-input {
  direction: rtl;
  display: inline-flex;
  gap: 0.15rem;
}

.rating-input input {
  position: absolute;
  opacity: 0;
}

.rating-input label {
  color: #cbd5e1;
  cursor: pointer;
  font-size: 2rem;
  line-height: 1;
}

.rating-input label:hover,
.rating-input label:hover ~ label,
.rating-input input:checked ~ label {
  color: #d97706;
}

.review-stats {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem;
}

.review-stats span {
  background: #ffffff;
  border: 1px solid var(--card-border);
  border-radius: 8px;
  padding: 0.65rem 0.85rem;
}

.review-grid,
.press-grid,
.drkss-gallery-grid,
.person-gallery-grid {
  display: grid;
  gap: 0.75rem;
}

.review-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.review-card,
.press-card {
  background: #ffffff;
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.review-card {
  padding: 1rem;
}

.review-stars {
  color: #d97706;
  font-size: 1.15rem;
  margin-bottom: 0.65rem;
}

.review-card p {
  color: #334155;
  line-height: 1.6;
}

.review-card time,
.press-card time {
  color: var(--text-muted);
  font-size: 0.82rem;
}

.press-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.press-documents {
  background: rgba(255, 255, 255, 0.74);
  border: 1px solid var(--card-border);
  border-radius: 8px;
  padding: 1rem;
}

.press-document-list {
  display: grid;
  gap: 0.75rem;
}

.press-document-card {
  align-items: center;
  background: #ffffff;
  border: 1px solid #d8e4f2;
  border-left: 5px solid var(--blue);
  border-radius: 8px;
  box-shadow: 0 6px 16px rgba(21, 62, 117, 0.08);
  display: grid;
  gap: 1rem;
  grid-template-columns: 64px 1fr auto;
  padding: 0.85rem;
}

.press-document-icon {
  align-items: center;
  background: var(--blue-soft);
  border: 1px solid #c7d8eb;
  border-radius: 8px;
  color: var(--blue);
  display: flex;
  font-size: 0.9rem;
  font-weight: 800;
  height: 64px;
  justify-content: center;
  width: 64px;
}

.press-document-body h3 {
  color: var(--blue);
  font-size: 1rem;
  margin-bottom: 0.2rem;
}

.press-image-button,
.gallery-tile {
  background: none;
  border: 0;
  display: block;
  padding: 0;
  width: 100%;
}

.press-image-button img,
.gallery-tile img {
  aspect-ratio: 4 / 3;
  display: block;
  object-fit: cover;
  width: 100%;
}

.press-pdf {
  align-items: center;
  aspect-ratio: 4 / 3;
  background: linear-gradient(135deg, var(--blue-soft), #ffffff);
  color: var(--blue);
  display: flex;
  font-size: 2rem;
  font-weight: 800;
  justify-content: center;
}

.press-card-body {
  padding: 1rem;
}

.press-card h2 {
  color: var(--blue);
  font-size: 1rem;
  margin-bottom: 0.3rem;
}

.drkss-gallery-grid,
.person-gallery-grid {
  grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
}

.gallery-tile {
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  overflow: hidden;
}

.person-gallery-grid .gallery-tile {
  aspect-ratio: 1 / 1;
  height: auto !important;
  min-height: 0;
}

.person-gallery-grid .gallery-tile img {
  aspect-ratio: 1 / 1;
  height: 100% !important;
  max-height: none !important;
  object-fit: cover;
  width: 100%;
}

.prayer-panel {
  background: #ffffff;
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  max-width: 540px;
  padding: 1.25rem;
}

.telugu-text {
  font-family: "Anek Telugu", "Nirmala UI", sans-serif;
}

.patient-faq-intro {
  margin-bottom: 1rem;
}

.patient-faq-quick-list {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.patient-faq-quick-list span {
  align-items: center;
  background: linear-gradient(135deg, #ffffff, var(--green-soft));
  border: 1px solid #dce8df;
  border-radius: 8px;
  color: #26394d;
  display: flex;
  gap: 0.55rem;
  padding: 0.7rem;
}

.patient-faq-quick-list i {
  color: var(--green);
  flex: 0 0 auto;
}

.patient-faq-grid {
  display: grid;
  gap: 1rem;
  margin-bottom: 1.25rem;
}

.patient-faq-toolbar {
  margin-bottom: 1rem;
}

.patient-faq-panel {
  background: #ffffff;
  border: 1px solid var(--card-border);
  border-radius: 8px;
  box-shadow: var(--shadow-soft);
  margin-bottom: 1.25rem;
  overflow: hidden;
}

.patient-faq-panel-head {
  align-items: center;
  background: linear-gradient(135deg, #ffffff, var(--green-soft));
  display: flex;
  gap: 1rem;
  justify-content: space-between;
  border-bottom: 1px solid #dce8df;
  padding: 1rem 1.1rem;
}

.patient-faq-panel-head h2 {
  color: var(--blue);
  font-size: clamp(1.25rem, 2.4vw, 1.65rem);
  margin: 0.1rem 0 0.25rem;
}

.patient-faq-bilingual-title {
  align-items: baseline;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 0.55rem;
}

.patient-faq-bilingual-title .telugu-text {
  font-size: 1.08em;
}

.faq-heading-divider {
  color: #9aa8b7;
  font-weight: 400;
}

.patient-faq-panel-head p {
  color: var(--text-muted);
  margin: 0;
}

.patient-faq-group-head {
  background:
    linear-gradient(135deg, rgba(21, 62, 117, 0.94), rgba(66,111,168, 0.9));
  color: #ffffff;
  padding: 0.75rem 1rem;
}

.patient-faq-group-head > span {
  color: #f7d78c;
  display: block;
  font-size: 0.72rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  margin-bottom: 0.18rem;
  text-transform: uppercase;
}

.patient-faq-group-head h2 {
  align-items: center;
  color: #ffffff;
  display: flex;
  font-size: clamp(1.05rem, 2vw, 1.35rem);
  gap: 0.55rem;
  margin: 0;
}

.patient-faq-group-head h2 i {
  align-items: center;
  background: rgba(255, 255, 255, 0.16);
  border: 1px solid rgba(255, 255, 255, 0.22);
  border-radius: 50%;
  display: inline-flex;
  flex: 0 0 2rem;
  font-size: 0.9rem;
  height: 2rem;
  justify-content: center;
  width: 2rem;
}
.faq-language-toggle {
  align-items: center;
  background: #ffffff;
  border: 1px solid #d8e4f2;
  border-radius: 8px;
  display: inline-flex;
  gap: 0.25rem;
  padding: 0.25rem;
}

.faq-language-toggle button {
  background: transparent;
  border: 0;
  border-radius: 6px;
  color: var(--blue);
  font-weight: 900;
  line-height: 1;
  padding: 0.55rem 0.75rem;
}

.faq-language-toggle button.is-active {
  background: var(--blue);
  color: #ffffff;
}

.patient-faq-page.faq-language-english .faq-lang-te,
.patient-faq-page.faq-language-telugu .faq-lang-en {
  display: none !important;
}

.patient-faq-page.faq-language-telugu .accordion-button,
.patient-faq-page.faq-language-telugu .accordion-body {
  font-family: "Anek Telugu", "Nirmala UI", sans-serif;
}

.patient-faq-page.faq-language-telugu .accordion-button {
  font-size: 1.16rem;
}

.patient-faq-panel .accordion-item {
  border-left: 0 !important;
  border-right: 0 !important;
  border-radius: 0 !important;
  box-shadow: none;
}

.patient-faq-panel .accordion-button {
  color: #10213d;
  display: grid;
  font-family: "Nunito Sans", Arial, sans-serif;
  font-weight: 800;
  gap: 0.1rem;
  padding: 0.75rem 1rem;
  text-align: left;
}

.patient-faq-panel .accordion-button:not(.collapsed) {
  background: #f2f8f6;
  color: var(--blue);
}

.patient-faq-panel .accordion-button .faq-lang-en,
.faq-answer-block.faq-lang-en p {
  font-size: calc(1rem + 2pt);
}

.faq-question-te {
  color: #173f68;
  font-size: calc(1.08rem + 4pt);
  font-weight: 800;
  line-height: 1.2;
}

.patient-faq-panel .accordion-body {
  color: #405163;
  line-height: 1.65;
  padding: 0.85rem 1rem 1rem;
}

.faq-answer-block {
  display: grid;
  gap: 0.1rem;
}

.faq-answer-block + .faq-answer-block {
  border-top: 1px solid #e5ece6;
  margin-top: 0.75rem;
  padding-top: 0.75rem;
}

.faq-answer-block span {
  display: none;
}

.faq-answer-block p {
  margin: 0;
}

.faq-answer-block.telugu-text {
  color: #26394d;
  font-size: calc(1.15rem + 4pt);
  font-weight: 400;
  line-height: 1.45;
}

.faq-answer-block.telugu-text span {
  font-family: "Nunito Sans", Arial, sans-serif;
  font-size: 0.76rem;
}

.faq-language-key {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  gap: 0.45rem;
}

.faq-language-key span {
  background: #ffffff;
  border: 1px solid #cfdceb;
  border-radius: 999px;
  color: var(--blue);
  font-size: 0.82rem;
  font-weight: 900;
  padding: 0.42rem 0.7rem;
}

.faq-language-key span.telugu-text {
  background: #f2f8f6;
  border-color: #E0E7F1;
  color: var(--green);
  font-size: 1rem;
}

.faq-category-divider {
  color: rgba(255, 255, 255, 0.55);
  font-weight: 400;
}

.patient-faq-paired-list {
  display: grid;
}

.patient-faq-pair {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.patient-faq-pair + .patient-faq-pair {
  border-top: 1px solid #dfe7e2;
}

.patient-faq-language-column {
  min-width: 0;
  padding: 1rem 1.1rem 1.1rem;
}

.patient-faq-language-column + .patient-faq-language-column {
  border-left: 1px solid #dfe7e2;
}

.patient-faq-language-column h3 {
  color: #10213d;
  font-family: "Nunito Sans", Arial, sans-serif;
  font-size: 1.08rem;
  font-weight: 900;
  line-height: 1.35;
  margin: 0.35rem 0 0.55rem;
}

.patient-faq-language-column p {
  color: #405163;
  line-height: 1.65;
  margin: 0;
}

.patient-faq-language-column.faq-column-telugu {
  background: linear-gradient(135deg, #fbfefc, #f3f9f5);
}

.patient-faq-language-column.faq-column-telugu h3 {
  color: #173f68;
  font-family: "Anek Telugu", "Nirmala UI", sans-serif;
  font-size: 1.25rem;
  line-height: 1.35;
}

.patient-faq-language-column.faq-column-telugu p {
  color: #26394d;
  font-size: 1.12rem;
  line-height: 1.6;
}

.faq-language-label {
  color: var(--green);
  display: block;
  font-family: "Nunito Sans", Arial, sans-serif;
  font-size: 0.7rem;
  font-weight: 900;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.faq-column-telugu .faq-language-label {
  font-family: "Anek Telugu", "Nirmala UI", sans-serif;
  font-size: 0.86rem;
  letter-spacing: 0;
}

@media (max-width: 767.98px) {
  .patient-faq-panel-head {
    align-items: flex-start;
    flex-direction: column;
  }

  .patient-faq-group-head h2 {
    align-items: flex-start;
    flex-wrap: wrap;
  }

  .patient-faq-pair {
    grid-template-columns: 1fr;
  }

  .patient-faq-language-column + .patient-faq-language-column {
    border-left: 0;
    border-top: 1px solid #dfe7e2;
  }
}

@media (max-width: 991.98px) {
  #demo .carousel-inner,
  #demo .carousel-item,
  #demo .carousel-item img {
    height: 330px;
  }

  .content-card,
  .border.rounded,
  .border.rounded-3 {
    margin-bottom: 0.75rem;
  }

  .header img {
    height: 210px !important;
  }

  .founder-profile {
    grid-template-columns: 118px 1fr;
  }

  .founder-profile-img {
    width: 118px;
  }
}

@media (max-width: 767.98px) {
  .activity-panel-body {
    grid-template-columns: 1fr;
  }

  .mhv-page-hero {
    margin-top: 0.55rem;
    padding: 1rem;
  }

  .mhv-page-hero h1,
  .mhv-page-hero h2 {
    font-size: 1.75rem;
    line-height: 1.2;
  }

  .mhv-page-hero p {
    font-size: 0.95rem;
  }

  .activity-photo-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  body.container {
    padding-left: 10px;
    padding-right: 10px;
  }

  #demo .carousel-inner,
  #demo .carousel-item,
  #demo .carousel-item img {
    height: 260px;
  }

  .header img {
    height: 150px !important;
    object-position: center;
  }

  .page-band {
    padding-left: 0.85rem !important;
    padding-right: 0.85rem !important;
  }

  .founder-card,
  .content-card,
  .accordion-body,
  .card-body {
    padding: 1rem !important;
  }

  h1 {
    font-size: 1.55rem;
  }

  h2 {
    font-size: 1.35rem;
  }

  h3,
  h4 {
    font-size: 1.15rem;
  }

  .list-group-item {
    padding-left: 0.6rem;
    padding-right: 0.6rem;
  }

  .event-box .d-flex {
    align-items: flex-start !important;
  }

  .teaching-ticker-card {
    grid-template-columns: 1fr;
    gap: 0.55rem;
  }

  .teaching-ticker-title {
    text-align: center;
  }

  .founder-profile {
    align-items: flex-start;
    grid-template-columns: 96px 1fr;
    padding: 1rem;
  }

  .founder-profile-img {
    width: 96px;
  }

  .founder-role {
    font-size: 1rem;
  }

  .date-box {
    width: 74px !important;
    min-width: 74px;
    padding-left: 0.35rem;
    padding-right: 0.35rem;
  }

  .activities-page > .container > .p-4.bg-light img.img-fluid,
  .activities-page .accordion-body img.img-fluid {
    height: 150px !important;
    max-height: none !important;
  }

  .review-grid,
  .press-grid,
  .drkss-gallery-grid,
  .person-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .press-document-card {
    grid-template-columns: 56px 1fr;
  }

  .press-document-card .btn {
    grid-column: 1 / -1;
  }

  .divine-masters-page img.img-fluid {
    max-height: 210px;
  }

  .patient-faq-quick-list {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 575.98px) {
  .activity-photo-grid {
    grid-template-columns: 1fr;
  }

  .activity-panel-heading h2 {
    align-items: flex-start;
    font-size: 1.14rem;
    gap: 0.5rem;
    line-height: 1.3;
  }

  .activity-panel-heading h2 i {
    flex-basis: 1.85rem;
    height: 1.85rem;
    width: 1.85rem;
  }

  .activity-facts strong {
    white-space: normal;
  }

  .activities-page > .container > .p-4.bg-light img.img-fluid,
  .activities-page .accordion-body img.img-fluid {
    height: 135px !important;
  }

  .page-intro-card {
    margin-bottom: 0.75rem;
    padding: 0.8rem 0.9rem;
  }

  .home-event-alert {
    align-items: flex-start;
    grid-template-columns: auto 1fr;
  }

  .home-event-alert-link {
    grid-column: 1 / -1;
    text-align: center;
  }
}

@media (max-width: 575.98px) {
  .navbar-nav {
    padding-top: 0.5rem;
  }

  .navbar .nav-link {
    display: flex;
    padding: 0.55rem 0;
  }

  .row {
    --bs-gutter-x: 0.85rem;
  }

  #demo .carousel-inner,
  #demo .carousel-item,
  #demo .carousel-item img {
    height: 230px;
  }

  .header img {
    height: 118px !important;
  }

  .mhv-page-hero h1,
  .mhv-page-hero h2 {
    font-size: 1.55rem;
  }

  .footer-content {
    gap: 0.5rem;
  }

  .rounded-circle.img-fluid {
    max-height: 150px;
    object-fit: cover;
    width: auto !important;
  }

  .founder-profile {
    text-align: center;
    grid-template-columns: 1fr;
  }

  .founder-profile h3,
  .founder-profile h5,
  .founder-profile h6 {
    white-space: normal;
  }

  .founder-profile-img {
    justify-self: center;
    width: 118px;
  }

  .gallery-image {
    min-height: 110px;
  }

  .review-grid,
  .press-grid,
  .drkss-gallery-grid {
    grid-template-columns: 1fr;
  }

  .person-gallery-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .modal-dialog {
    margin: 0.75rem;
  }

  .footer {
    font-size: 0.78rem;
  }

  .footer-content {
    align-items: center;
    flex-direction: column;
    gap: 0.55rem;
    text-align: center;
  }

  .visit-action-stack {
    grid-template-columns: 1fr;
  }
}

.person-slideshow-gallery {
  display: grid;
  gap: 1rem;
}

.person-slideshow-stage {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(15, 23, 42, 0.12);
  border-radius: 8px;
  background: #101820;
}

.person-slide {
  display: none;
  margin: 0;
}

.person-slide.is-active {
  display: block;
}

.person-slide img {
  display: block;
  width: 100%;
  height: min(68vh, 680px);
  min-height: 360px;
  object-fit: contain;
  background: #101820;
}

.person-slide-count {
  position: absolute;
  top: 0.75rem;
  left: 0.75rem;
  z-index: 2;
  padding: 0.25rem 0.6rem;
  border-radius: 999px;
  background: rgba(16, 24, 32, 0.72);
  color: #fff;
  font-size: 0.85rem;
  line-height: 1.4;
}

.person-slide figcaption {
  margin: 0;
  padding: 0.85rem 1rem;
  background: #fff;
  color: #2f3a45;
  font-weight: 600;
  text-align: center;
}

.person-slide-nav {
  position: absolute;
  top: 50%;
  z-index: 3;
  display: grid;
  width: 2.75rem;
  height: 2.75rem;
  place-items: center;
  border: 0;
  border-radius: 50%;
  background: rgba(255, 255, 255, 0.9);
  color: #101820;
  font-size: 2rem;
  line-height: 1;
  transform: translateY(-50%);
  transition: background-color 0.2s ease, transform 0.2s ease;
}

.person-slide-nav:hover,
.person-slide-nav:focus-visible {
  background: #fff;
  transform: translateY(-50%) scale(1.04);
}

.person-slide-prev {
  left: 0.85rem;
}

.person-slide-next {
  right: 0.85rem;
}

.person-slide-thumbs {
  display: grid;
  grid-auto-columns: minmax(92px, 132px);
  grid-auto-flow: column;
  gap: 0.65rem;
  overflow-x: auto;
  padding: 0.25rem 0.1rem 0.55rem;
  scrollbar-width: thin;
}

.person-slide-thumb {
  overflow: hidden;
  aspect-ratio: 4 / 3;
  border: 3px solid transparent;
  border-radius: 7px;
  background: #fff;
  padding: 0;
  box-shadow: 0 8px 22px rgba(15, 23, 42, 0.12);
  cursor: pointer;
}

.person-slide-thumb.is-active {
  border-color: #1f6fb2;
}

.person-slide-thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 767.98px) {
  .person-slide img {
    height: 62vh;
    min-height: 260px;
  }

  .person-slide-nav {
    width: 2.35rem;
    height: 2.35rem;
    font-size: 1.55rem;
  }

  .person-slide-thumbs {
    grid-auto-columns: minmax(76px, 100px);
  }
}


/* Homepage requested refinements 2026-07-09 */
.home-page .founder-profile {
  grid-template-columns: 150px 1fr;
  min-height: 190px;
}

.home-page .founder-profile-img {
  aspect-ratio: auto;
  border-radius: 50%;
  height: 172px;
  width: 128px;
}

.home-page .founder-note {
  max-width: 610px;
}

.about-services-grid {
  display: grid;
  gap: 0.7rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
}

.about-services-grid .service-row {
  min-height: 64px;
  padding: 0.58rem 0.65rem;
}

.about-services-grid .service-row img {
  height: 40px;
  width: 40px;
}

.home-events-card {
  display: flex;
  flex-direction: column;
}

.home-events-head {
  align-items: stretch;
  display: flex;
  gap: 0.65rem;
}

.home-events-head .about-title {
  flex: 1 1 auto;
  min-width: 0;
}

.home-events-head .btn {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  justify-content: center;
  min-width: 76px;
  padding-left: 0.85rem;
  padding-right: 0.85rem;
}

.home-page #demo .carousel-inner,
.home-page #demo .carousel-item,
.home-page #demo .carousel-item img {
  height: 480px;
}

.home-page #demo .carousel-control-prev,
.home-page #demo .carousel-control-next {
  opacity: 1;
  width: 3.6rem;
}

.home-page #demo .carousel-control-prev-icon,
.home-page #demo .carousel-control-next-icon {
  background-color: rgba(21, 62, 117, 0.78);
  background-size: 54% 54%;
  border: 1px solid rgba(255, 255, 255, 0.72);
  border-radius: 50%;
  box-shadow: 0 8px 20px rgba(15, 23, 42, 0.22);
  height: 2.5rem;
  width: 2.5rem;
}

.teaching-ticker-window {
  overflow: visible;
  padding: 0.62rem 0.85rem;
}

.teaching-ticker-text {
  animation: none;
  display: block;
  min-width: 0;
  padding-left: 0;
  white-space: normal;
}

@media (max-width: 991.98px) {
  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 390px;
  }

  .home-page .founder-profile {
    grid-template-columns: 136px 1fr;
    min-height: 176px;
  }

  .home-page .founder-profile-img {
    height: 158px;
    width: 118px;
  }
}

@media (max-width: 767.98px) {
  .about-services-grid {
    grid-template-columns: 1fr;
  }

  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 310px;
  }

  .home-events-head {
    align-items: stretch;
  }
}

@media (max-width: 575.98px) {
  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 250px;
  }

  .home-page .founder-profile-img {
    height: 158px;
    width: 118px;
  }

  .home-events-head {
    flex-direction: column;
  }

  .home-events-head .btn {
    width: 100%;
  }
}


/* Homepage About/Visit polish 2026-07-09 */
.home-about-visit-row {
  align-items: stretch !important;
}

.home-about-card,
.home-page .visit-card {
  min-height: 100%;
}

.home-about-card {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.98), rgba(248, 252, 249, 0.96)),
    url("../../images/thumbs/background1.webp") center / cover no-repeat;
}

.home-about-layout {
  min-height: 100%;
}

.home-about-layout > .col-md-8 {
  display: flex;
  flex-direction: column;
}

.home-about-layout p {
  color: #051f3d;
  font-size: 0.98rem;
  line-height: 1.58;
}

.home-about-media {
  display: grid;
  gap: 0.85rem;
}

.home-clinic-image {
  border: 1px solid rgba(21, 62, 117, 0.12);
  box-shadow: 0 10px 24px rgba(21, 62, 117, 0.12);
  display: block;
  object-fit: cover;
  width: 100%;
}

.home-clinic-figure {
  margin: 0;
  min-width: 0;
}

.home-clinic-figure figcaption {
  color: #607286;
  font-size: 0.72rem;
  font-weight: 700;
  line-height: 1.35;
  padding-top: 0.35rem;
  text-align: center;
}

/* Preserve the clinic photograph's native proportions for a sharper display. */
.home-page .home-clinic-figure .home-clinic-image-primary {
  aspect-ratio: 4 / 3;
  height: auto;
  max-height: none;
  min-height: 0;
  object-fit: cover;
  object-position: center;
}

@media (min-width: 768px) {
  .home-about-layout > .home-about-copy {
    flex: 0 0 60%;
    max-width: 60%;
  }

  .home-about-layout > .home-about-media {
    flex: 0 0 40%;
    max-width: 40%;
  }
}

.home-clinic-image-primary {
  aspect-ratio: 5 / 4;
  object-position: top center;
}

.home-clinic-image-secondary {
  aspect-ratio: 16 / 9;
  object-position: center;
}

.home-about-card .about-services-grid {
  margin-top: auto !important;
  padding-top: 0.35rem;
}

.home-about-card .service-row {
  background: linear-gradient(135deg, #ffffff, rgba(232, 244, 238, 0.98));
  border-color: rgba(66,111,168, 0.18);
  box-shadow: 0 6px 15px rgba(21, 62, 117, 0.07);
}

.home-about-card .service-row img {
  background: #ffffff;
  border: 1px solid rgba(21, 62, 117, 0.08);
  box-shadow: 0 4px 10px rgba(21, 62, 117, 0.1);
}

.home-page .visit-card {
  border-left-width: 6px !important;
  box-shadow: 0 16px 34px rgba(21, 62, 117, 0.13);
}

.home-page .visit-card .about-title {
  min-height: 44px;
}

.home-page .visit-info-list {
  gap: 1rem;
}

.home-page .visit-info-row {
  background: rgba(255, 255, 255, 0.42);
  border: 1px solid rgba(217, 119, 6, 0.12);
  border-radius: 8px;
  padding: 0.68rem 0.72rem;
}

.home-page .visit-info-row p {
  line-height: 1.5;
}

.home-page .visit-action-stack {
  margin-top: auto !important;
  padding-top: 1rem !important;
}

@media (max-width: 767.98px) {
  .home-about-media {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-clinic-image-primary,
  .home-clinic-image-secondary {
    aspect-ratio: 4 / 3;
  }
}

@media (max-width: 575.98px) {
  .home-about-media {
    grid-template-columns: 1fr;
  }
}


/* Homepage About/Visit fit refinements 2026-07-09 */
.home-about-card .about-title,
.home-page .visit-card .about-title {
  margin-bottom: 1rem !important;
}

.home-about-layout {
  align-items: start !important;
}

.home-about-layout > .col-md-8 {
  align-items: flex-start;
  min-width: 0;
}

.home-about-layout > .col-md-8 > p {
  margin-bottom: 1rem !important;
}

.home-about-layout > .col-md-8 > .btn {
  align-self: flex-start;
  min-width: 128px;
  padding-left: 1rem;
  padding-right: 1rem;
}

.home-about-card .about-services-grid {
  margin-top: 1.15rem !important;
  padding-top: 0;
  width: 100%;
}

.home-about-card .service-row {
  min-height: 58px;
  padding: 0.52rem 0.62rem;
}

.home-about-card .service-row strong {
  font-size: 0.88rem;
}

.home-about-card .service-row small {
  font-size: 0.76rem;
}

.home-about-card .service-row img {
  height: 38px;
  width: 38px;
}

.home-about-media {
  align-content: start;
  gap: 0.7rem;
}

.home-clinic-image-primary {
  aspect-ratio: 4 / 3;
}

.home-clinic-image-secondary {
  aspect-ratio: 16 / 9;
}

.home-page .visit-info-row {
  padding: 0.58rem 0.65rem;
}

.home-page .visit-info-row p {
  font-size: 0.96rem;
}

@media (min-width: 768px) {
  .home-about-layout > .col-md-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
  }

  .home-about-media {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
  }
}

@media (max-width: 767.98px) {
  .home-about-layout > .col-md-8 > .btn {
    width: 100%;
  }
}


/* Homepage About single-image/services trial 2026-07-09 */
.home-about-card {
  display: flex;
  flex-direction: column;
}

.home-about-card .about-title {
  margin-bottom: 1rem !important;
}

.home-about-layout {
  align-items: stretch !important;
  min-height: 0;
}

.home-about-copy {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  min-width: 0;
}

.home-about-copy p {
  color: #051f3d;
  font-size: 0.96rem;
  line-height: 1.55;
  margin-bottom: 0.9rem !important;
}

.home-about-copy .btn {
  align-self: flex-start;
  min-width: 132px;
  padding-left: 1rem;
  padding-right: 1rem;
}

.home-about-media {
  align-content: stretch;
  display: grid;
  gap: 0;
}

.home-clinic-image-primary {
  aspect-ratio: auto;
  height: 100%;
  max-height: 260px;
  min-height: 220px;
  object-fit: cover;
  object-position: top center;
}

.home-about-card .about-services-grid {
  display: grid;
  gap: 0.65rem;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  margin-top: 1rem !important;
  padding-top: 0;
  width: 100%;
}

.home-about-card .service-row {
  gap: 0.55rem;
  min-height: 58px;
  padding: 0.5rem 0.55rem;
}

.home-about-card .service-row img {
  height: 36px;
  width: 36px;
}

.home-about-card .service-row strong {
  font-size: 0.8rem;
  line-height: 1.18;
}

.home-about-card .service-row small {
  font-size: 0.68rem;
  line-height: 1.2;
}

.home-page .visit-card {
  justify-content: flex-start !important;
}

.home-page .visit-card .about-title {
  margin-bottom: 1rem !important;
  min-height: 0;
}

.home-page .visit-info-list {
  gap: 0.68rem;
}

.home-page .visit-info-row {
  background: rgba(255, 255, 255, 0.5);
  padding: 0.55rem 0.62rem;
}

.home-page .visit-info-row p {
  font-size: 0.94rem;
  line-height: 1.45;
}

.home-page .visit-action-stack {
  margin-top: auto !important;
  padding-top: 0.8rem !important;
}

@media (max-width: 1199.98px) {
  .home-about-card .about-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 767.98px) {
  .home-clinic-image-primary {
    aspect-ratio: 16 / 9;
    height: auto;
    max-height: none;
    min-height: 0;
  }

  .home-about-card .about-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .home-about-copy .btn {
    width: 100%;
  }
}

@media (max-width: 575.98px) {
  .home-about-card .about-services-grid {
    grid-template-columns: 1fr;
  }
}


/* Homepage service emphasis and medium columns 2026-07-09 */
.home-about-card .service-row strong {
  color: #062f63;
  font-weight: 900;
}

.home-about-card .service-row small {
  color: #234F86;
  font-weight: 800;
}

@media (min-width: 768px) and (max-width: 991.98px) {
  .home-about-visit-row {
    --bs-gutter-x: 1rem;
  }

  .home-about-card,
  .home-page .visit-card {
    padding: 0.85rem !important;
  }

  .home-about-copy p {
    font-size: 0.88rem;
    line-height: 1.45;
  }

  .home-clinic-image-primary {
    max-height: 230px;
    min-height: 205px;
  }

  .home-about-card .about-services-grid {
    gap: 0.5rem;
  }

  .home-about-card .service-row {
    gap: 0.4rem;
    padding: 0.45rem;
  }

  .home-about-card .service-row img {
    height: 32px;
    width: 32px;
  }

  .home-about-card .service-row strong {
    font-size: 0.72rem;
  }

  .home-about-card .service-row small {
    font-size: 0.62rem;
  }

  .home-page .visit-info-row p {
    font-size: 0.86rem;
  }
}


/* Homepage heading and founder photo balance 2026-07-09 */
.home-page .about-title {
  font-size: 0.98rem;
  font-weight: 800;
  line-height: 1.22;
  min-height: 38px;
}

/* Branded 404 page aligned with the homepage visual system */
.error-page .header {
  margin-bottom: 0;
}

.error-home-shell {
  align-items: center;
  background:
    radial-gradient(circle at 10% 10%, rgba(217, 119, 6, 0.12), transparent 22rem),
    radial-gradient(circle at 90% 90%, rgba(66,111,168, 0.12), transparent 24rem),
    linear-gradient(135deg, #f8fbff, #f4faf6);
  border: 1px solid rgba(21, 62, 117, 0.12);
  border-radius: 12px;
  display: flex;
  justify-content: center;
  min-height: clamp(430px, 64vh, 650px);
  overflow: hidden;
  padding: clamp(1rem, 4vw, 3rem);
}

.error-home-card {
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(21, 62, 117, 0.14);
  border-radius: 12px;
  box-shadow: 0 22px 55px rgba(21, 62, 117, 0.14);
  display: grid;
  grid-template-columns: minmax(240px, 0.78fr) minmax(0, 1.22fr);
  margin: 0;
  max-width: 900px;
  overflow: hidden;
  width: 100%;
}

.error-home-visual {
  align-items: center;
  background:
    radial-gradient(circle at 85% 15%, rgba(255, 225, 168, 0.18), transparent 12rem),
    linear-gradient(145deg, #153e75, #234F86);
  color: #fff;
  display: flex;
  flex-direction: column;
  justify-content: center;
  min-height: 390px;
  padding: 2rem;
  text-align: center;
}

.error-home-mark {
  border: 1px solid rgba(255, 225, 168, 0.72);
  color: #ffe1a8;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 0.78rem;
  font-weight: 800;
  letter-spacing: 0.16em;
  padding: 0.55rem 0.7rem;
}

.error-home-visual strong {
  color: #fff;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(4.8rem, 10vw, 7.2rem);
  line-height: 1;
  margin: 1.1rem 0;
  text-shadow: 0 10px 28px rgba(0, 0, 0, 0.2);
}

.error-home-visual > span:last-child {
  color: rgba(255, 255, 255, 0.72);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.15em;
  text-transform: uppercase;
}

.error-home-content {
  align-self: center;
  padding: clamp(2rem, 6vw, 4.5rem);
}

.error-home-kicker {
  color: #426FA8 !important;
  font-size: 0.72rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  margin-bottom: 0.7rem;
  text-transform: uppercase;
}

.error-home-content h1 {
  color: #153e75;
  font-size: clamp(2rem, 5vw, 3.3rem);
  font-weight: 800;
  line-height: 1.12;
  margin-bottom: 1rem;
}

.error-home-content > p:not(.error-home-kicker) {
  color: #596b7a;
  line-height: 1.75;
  margin-bottom: 1.5rem;
}

.error-home-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.7rem;
}

.error-home-links {
  border-top: 1px solid rgba(21, 62, 117, 0.12);
  display: flex;
  flex-wrap: wrap;
  gap: 0.65rem 1.1rem;
  margin-top: 1.6rem;
  padding-top: 1.1rem;
}

.error-home-links a {
  color: #234F86;
  font-size: 0.8rem;
  font-weight: 800;
  text-decoration: none;
}

.error-home-links a:hover,
.error-home-links a:focus {
  color: #153e75;
  text-decoration: underline;
}

@media (max-width: 767.98px) {
  .error-home-shell {
    min-height: 0;
    padding: 0.8rem;
  }

  .error-home-card {
    grid-template-columns: 1fr;
  }

  .error-home-visual {
    min-height: 205px;
    padding: 1.35rem;
  }

  .error-home-visual strong {
    font-size: 4rem;
    margin: 0.65rem 0;
  }

  .error-home-content {
    padding: 1.7rem 1.25rem 2rem;
    text-align: center;
  }

  .error-home-actions,
  .error-home-links {
    justify-content: center;
  }
}

.home-page .about-title strong,
.home-page .about-title b {
  font-size: inherit;
  font-weight: inherit;
  line-height: inherit;
}

.home-events-head .about-title {
  margin-bottom: 0 !important;
}

.home-page .founder-profile {
  grid-template-columns: 166px 1fr;
}

.home-page .founder-profile-img {
  height: 184px;
  width: 142px;
}

@media (max-width: 991.98px) {
  .home-page .founder-profile {
    grid-template-columns: 148px 1fr;
  }

  .home-page .founder-profile-img {
    height: 168px;
    width: 130px;
  }
}

@media (max-width: 575.98px) {
  .home-page .about-title {
    font-size: 0.94rem;
    min-height: 36px;
  }

  .home-page .founder-profile {
    grid-template-columns: 1fr;
  }

  .home-page .founder-profile-img {
    height: 158px;
    width: 122px;
  }
}


/* Homepage About/Visit compact row polish 2026-07-09 */
.home-page .home-about-visit-band.py-4 {
  padding-top: 0.55rem !important;
  padding-bottom: 0.75rem !important;
}

.home-about-visit-row {
  margin-top: 0 !important;
}

.home-about-card,
.home-page .visit-card {
  padding: 0.78rem !important;
}

.home-about-card .about-title,
.home-page .visit-card .about-title {
  margin-bottom: 0.8rem !important;
  min-height: 34px;
  padding-bottom: 0.34rem;
  padding-top: 0.34rem;
}

.home-about-layout {
  --bs-gutter-x: 1rem;
}

.home-about-copy p {
  line-height: 1.48;
  margin-bottom: 0.78rem !important;
}

.home-about-copy .btn {
  padding-bottom: 0.42rem;
  padding-top: 0.42rem;
}

.home-clinic-image-primary {
  max-height: 240px;
  min-height: 210px;
}

.home-about-card .about-services-grid {
  gap: 0.55rem;
  margin-top: 0.75rem !important;
}

.home-about-card .service-row {
  align-items: center;
  gap: 0.48rem;
  min-height: 52px;
  padding: 0.42rem 0.5rem;
}

.home-about-card .service-row img {
  height: 34px;
  width: 34px;
}

.home-about-card .service-row strong {
  font-size: 0.76rem;
  line-height: 1.15;
}

.home-about-card .service-row small {
  font-size: 0.66rem;
  line-height: 1.16;
}

.home-page .visit-card > div:first-child > .mb-3 {
  margin-bottom: 0.72rem !important;
}

.home-page .visit-info-list {
  gap: 0.58rem;
}

.home-page .visit-info-row {
  padding: 0.48rem 0.58rem;
}

.home-page .visit-action-stack {
  padding-top: 0.65rem !important;
}

@media (max-width: 991.98px) {
  .home-about-card,
  .home-page .visit-card {
    padding: 0.68rem !important;
  }

  .home-about-card .service-row strong {
    font-size: 0.7rem;
  }

  .home-about-card .service-row small {
    font-size: 0.61rem;
  }
}


/* Modern soft clinical homepage pass 2026-07-09 */
.home-page {
  background:
    linear-gradient(180deg, rgba(255, 255, 255, 0.96), rgba(246, 251, 255, 0.94)),
    radial-gradient(circle at top left, rgba(66,111,168, 0.08), transparent 28rem);
  color: #08233f;
}

.home-page .header {
  background: linear-gradient(180deg, #ffffff 0%, #f3f9ff 100%);
  border: 1px solid rgba(21, 62, 117, 0.12);
  border-radius: 10px;
  box-shadow: 0 12px 30px rgba(21, 62, 117, 0.1);
  margin: 0.7rem 0 1rem;
  overflow: hidden;
  padding: 0.55rem;
}

.home-page .navbar {
  background: rgba(255, 255, 255, 0.86) !important;
  border: 1px solid rgba(21, 62, 117, 0.1);
  border-radius: 8px;
  box-shadow: none;
  margin-bottom: 0.55rem;
}

.home-page .header > .mt-2 {
  background: #ffffff;
  border-radius: 10px;
  box-shadow: inset 0 0 0 1px rgba(21, 62, 117, 0.08);
  margin-top: 0.65rem !important;
  overflow: hidden;
}

.home-page .header img {
  border-radius: 10px;
  height: 285px !important;
  object-fit: cover;
  object-position: center;
}

.home-page .teaching-ticker-card {
  background: #ffffff;
  border: 1px solid rgba(21, 62, 117, 0.12);
  border-left: 4px solid var(--green);
  box-shadow: none;
  grid-template-columns: 190px 1fr;
  margin: 0.55rem 0 0;
  padding: 0.55rem 0.65rem;
}

.home-page .teaching-ticker-title {
  color: #0b3a70;
  font-size: 0.82rem;
}

.home-page .teaching-ticker-window {
  background: #f7fbf9;
  border-color: rgba(66,111,168, 0.14);
  padding: 0.42rem 0.7rem;
}

.home-page .teaching-ticker-text {
  color: #234F86;
  font-size: 0.82rem;
  font-weight: 800;
}

.home-page .page-band {
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
  margin-bottom: 0.95rem;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.home-page .content-card,
.home-page .founder-profile,
.home-page .visit-card,
.home-page .border.rounded,
.home-page .border.rounded-3 {
  background: rgba(255, 255, 255, 0.98);
  border: 1px solid rgba(21, 62, 117, 0.12) !important;
  border-radius: 10px !important;
  box-shadow: 0 12px 28px rgba(21, 62, 117, 0.09);
}

.home-page .about-title {
  background: linear-gradient(135deg, #fff8e8, #ffe1a8);
  border: 1px solid rgba(217, 119, 6, 0.28);
  border-left: 4px solid #d97706;
  border-radius: 8px;
  box-shadow: none;
  color: #0b3a70;
  letter-spacing: 0;
}

.home-page .founder-strip .row {
  --bs-gutter-x: 1rem;
}

.home-page .founder-profile {
  background:
    linear-gradient(135deg, rgba(255, 255, 255, 0.99), rgba(248, 252, 255, 0.98));
  gap: 1.05rem;
  min-height: 204px;
  padding: 1.05rem;
  position: relative;
}

.home-page .founder-profile::before {
  background: linear-gradient(180deg, #426FA8, #153e75);
  border-radius: 10px 0 0 10px;
  content: "";
  inset: 0 auto 0 0;
  position: absolute;
  width: 4px;
}

.home-page .founder-profile-img {
  border: 5px solid #ffffff;
  box-shadow: 0 12px 28px rgba(21, 62, 117, 0.16);
}

.home-page .founder-profile h5 {
  color: #0b55d9;
  font-size: 1.08rem;
  line-height: 1.24;
  margin-bottom: 0.32rem;
}

.home-page .founder-years {
  color: #c73535;
  font-size: 0.82rem;
  font-weight: 800;
}

.home-page .founder-role {
  color: #08233f;
  font-size: 0.95rem;
  font-weight: 900;
}

.home-page .founder-note {
  color: #2f4a63;
  font-size: 0.86rem;
  font-style: normal;
  line-height: 1.55;
}

.home-page .home-about-visit-band.py-4 {
  padding-top: 0.25rem !important;
}

.home-about-card,
.home-page .visit-card {
  background: #ffffff;
}

.home-about-copy p {
  color: #17324c;
}

.home-about-copy .btn,
.home-page .visit-action-stack .btn,
.home-events-head .btn,
.home-gallery-link {
  border-radius: 7px;
  font-weight: 900;
  letter-spacing: 0;
}

.home-about-card .service-row {
  background: linear-gradient(135deg, #ffffff, #eef8f2);
  border: 1px solid rgba(66,111,168, 0.18);
  box-shadow: 0 8px 18px rgba(66,111,168, 0.08);
}

.home-about-card .service-row img {
  border-radius: 9px;
}

.home-about-card .service-row strong {
  color: #0b3a70;
}

.home-about-card .service-row small {
  color: #426FA8;
}

.home-page .visit-card {
  border-left: 4px solid #426FA8 !important;
}

.home-page .visit-info-row {
  background: #ffffff;
  border: 1px solid rgba(21, 62, 117, 0.1);
  box-shadow: 0 8px 18px rgba(21, 62, 117, 0.05);
}

.home-page .info-icon {
  background: #fff8e8;
  border-color: rgba(217, 119, 6, 0.24);
  color: #d97706;
}

.home-page .home-gallery-events-band {
  padding-top: 0.2rem !important;
}

.home-gallery-card {
  background: #ffffff;
  padding: 0.75rem;
}

.home-gallery-head,
.home-events-head {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  justify-content: space-between;
  margin-bottom: 0.72rem !important;
}

.home-gallery-head .about-title,
.home-events-head .about-title {
  flex: 1 1 auto;
  margin: 0 !important;
}

.home-gallery-link {
  align-items: center;
  border: 1px solid rgba(66,111,168, 0.45);
  color: #426FA8;
  display: inline-flex;
  flex: 0 0 auto;
  font-size: 0.78rem;
  justify-content: center;
  padding: 0.4rem 0.7rem;
  text-decoration: none;
}

.home-gallery-link:hover,
.home-gallery-link:focus {
  background: #426FA8;
  color: #ffffff;
}

.home-page #demo .carousel-inner,
.home-page #demo .carousel-item,
.home-page #demo .carousel-item img {
  border-radius: 9px;
}

.home-page #demo .carousel-indicators {
  bottom: 0.35rem;
  margin-bottom: 0;
}

.home-page #demo .carousel-indicators [data-bs-target] {
  background-color: #426FA8;
  border-radius: 999px;
  height: 7px;
  opacity: 0.35;
  width: 7px;
}

.home-page #demo .carousel-indicators .active {
  opacity: 1;
  width: 22px;
}

.home-events-card {
  background: #ffffff;
}

.upcoming-event-card {
  background: #ffffff;
  border: 1px solid rgba(21, 62, 117, 0.12);
  border-left: 4px solid #153e75;
  box-shadow: 0 8px 18px rgba(21, 62, 117, 0.06);
}

.event-date-pill {
  background: linear-gradient(180deg, #153e75, #0f2d55);
  border-radius: 7px;
}

.home-page .footer {
  background: #153e75;
  border-top: 3px solid #426FA8;
  border-radius: 8px;
  margin-top: 1rem;
  padding: 0.58rem 0.78rem;
}

.home-page .footer p {
  font-size: 0.74rem;
}

.home-page .footer-feedback-link {
  border-radius: 6px;
  font-size: 0.72rem;
  padding: 0.38rem 0.7rem;
}

@media (max-width: 991.98px) {
  .home-page .header img {
    height: 230px !important;
  }

  .home-page .teaching-ticker-card {
    grid-template-columns: 1fr;
  }
}

@media (max-width: 767.98px) {
  .home-page .header {
    padding: 0.45rem;
  }

  .home-page .header img {
    height: 175px !important;
  }

  .home-gallery-head,
  .home-events-head {
    align-items: stretch;
    flex-direction: column;
  }

  .home-gallery-link,
  .home-events-head .btn {
    width: 100%;
  }
}


/* Final homepage spacing/nav/photo polish 2026-07-09 */
.home-page .navbar {
  background: linear-gradient(135deg, #ffffff 0%, #eef6ff 100%) !important;
  border-color: rgba(21, 62, 117, 0.16);
  box-shadow: 0 8px 20px rgba(21, 62, 117, 0.06);
}

.home-page .navbar-brand {
  color: #0b3a70;
}

.home-page .navbar .nav-link {
  color: #123a5f;
  font-weight: 800;
}

.home-page .navbar .nav-link:hover,
.home-page .navbar .nav-link:focus {
  color: #426FA8;
}

.home-page .teaching-ticker-card {
  background: linear-gradient(135deg, #f3fbf6 0%, #ffffff 100%);
  border-color: rgba(66,111,168, 0.2);
  border-left-color: #426FA8;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.72);
}

.home-page .teaching-ticker-title {
  color: #426FA8;
}

.home-page .teaching-ticker-window {
  background: #ffffff;
}

.home-page .founder-profile-img {
  border-radius: 16px;
  height: 178px;
  width: 142px;
}

.home-page .home-gallery-events-band.py-4 {
  padding-bottom: 0.55rem !important;
  padding-top: 0.1rem !important;
}

.home-page .home-gallery-events-band .row {
  --bs-gutter-x: 1.25rem;
  --bs-gutter-y: 0.75rem;
}

.home-gallery-card,
.home-events-card {
  padding: 0.62rem !important;
}

.home-gallery-head,
.home-events-head {
  margin-bottom: 0.46rem !important;
}

.home-gallery-head .about-title,
.home-events-head .about-title {
  min-height: 34px;
  padding-bottom: 0.34rem;
  padding-top: 0.34rem;
}

.home-gallery-link,
.home-events-head .btn {
  min-height: 34px;
  padding-bottom: 0.32rem;
  padding-top: 0.32rem;
}

.home-page #demo .carousel-inner,
.home-page #demo .carousel-item,
.home-page #demo .carousel-item img {
  height: 430px;
}

.home-page #demo .carousel-indicators {
  bottom: 0.18rem;
}

.home-page #demo .carousel-control-prev,
.home-page #demo .carousel-control-next {
  width: 3rem;
}

.home-page #demo .carousel-control-prev-icon,
.home-page #demo .carousel-control-next-icon {
  height: 2.2rem;
  width: 2.2rem;
}

.home-events-card .upcoming-event-list {
  gap: 0.55rem;
}

.home-events-card .upcoming-event-card {
  padding: 0.58rem;
}

@media (max-width: 991.98px) {
  .home-page .founder-profile-img {
    border-radius: 14px;
    height: 160px;
    width: 128px;
  }

  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 350px;
  }
}

@media (max-width: 575.98px) {
  .home-page .founder-profile-img {
    height: 150px;
    width: 120px;
  }

  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 245px;
  }
}


/* Homepage navbar event-gradient polish 2026-07-09 */
.home-page .navbar {
  background: linear-gradient(135deg, rgba(21, 62, 117, 0.96), rgba(66,111,168, 0.94)) !important;
  border-color: rgba(255, 255, 255, 0.18);
  box-shadow: 0 10px 24px rgba(21, 62, 117, 0.18);
}

.home-page .navbar-brand,
.home-page .navbar .nav-link {
  color: #ffffff !important;
}

.home-page .navbar .nav-link {
  font-weight: 800;
}

.home-page .navbar .nav-link:hover,
.home-page .navbar .nav-link:focus,
.home-page .navbar-brand:hover,
.home-page .navbar-brand:focus {
  color: #f7d78c !important;
}

.home-page .navbar .nav-link i:not(.youtube-icon),
.home-page .navbar-brand i {
  color: #f7d78c;
}

.home-page .navbar-toggler {
  border-color: rgba(255, 255, 255, 0.45);
}

.home-page .navbar-toggler:focus {
  box-shadow: 0 0 0 0.16rem rgba(247, 215, 140, 0.35);
}

.home-page .navbar .dropdown-menu {
  border-color: rgba(21, 62, 117, 0.14);
}

.home-page .youtube-icon {
  background: #ffffff;
  color: #cf2e2e;
}


/* Global navbar and saffron teachings polish 2026-07-09 */
.navbar {
  background: linear-gradient(135deg, rgba(21, 62, 117, 0.96), rgba(66,111,168, 0.94)) !important;
  border: 1px solid rgba(255, 255, 255, 0.18);
  border-radius: 8px;
  box-shadow: 0 10px 24px rgba(21, 62, 117, 0.18);
}

.navbar-brand,
.navbar .nav-link {
  color: #ffffff !important;
  font-weight: 800;
}

.navbar-brand:hover,
.navbar-brand:focus,
.navbar .nav-link:hover,
.navbar .nav-link:focus {
  color: #f7d78c !important;
}

.navbar .nav-link i:not(.youtube-icon) {
  color: #f7d78c;
}

.navbar-toggler {
  border-color: rgba(255, 255, 255, 0.45);
}

.navbar-toggler:focus {
  box-shadow: 0 0 0 0.16rem rgba(247, 215, 140, 0.35);
}

.dropdown-menu {
  border-color: rgba(21, 62, 117, 0.14);
}

.youtube-icon {
  background: #ffffff;
  color: #cf2e2e;
}

.teaching-ticker-card {
  background: linear-gradient(135deg, #fff7e6 0%, #ffd18a 100%);
  border: 1px solid rgba(217, 119, 6, 0.34);
  border-left: 5px solid #d97706;
  box-shadow: 0 8px 20px rgba(217, 119, 6, 0.12);
}

.teaching-ticker-title {
  color: #7a3b00;
}

.teaching-ticker-window {
  background: rgba(255, 255, 255, 0.74);
  border-color: rgba(217, 119, 6, 0.22);
}

.teaching-ticker-text {
  color: #5c3100;
}


/* Strong saffron teachings override 2026-07-09 */
.teaching-ticker-card,
.home-page .teaching-ticker-card {
  background: linear-gradient(135deg, #fff3d6 0%, #ffc46b 100%);
  border: 1px solid rgba(217, 119, 6, 0.42);
  border-left: 5px solid #d97706;
  box-shadow: 0 8px 20px rgba(217, 119, 6, 0.14);
}

.teaching-ticker-title,
.home-page .teaching-ticker-title {
  color: #7a3b00;
}

.teaching-ticker-window,
.home-page .teaching-ticker-window {
  background: rgba(255, 255, 255, 0.78);
  border-color: rgba(217, 119, 6, 0.28);
}

.teaching-ticker-text,
.home-page .teaching-ticker-text {
  color: #5c3100;
}

.home-events-card .home-event-alert-inline {
  margin: 0.75rem 0 0;
}

/* Gallery/events final alignment 2026-07-09 */
.home-page .home-gallery-events-band .row {
  align-items: stretch;
}

.home-page .home-gallery-card,
.home-page .home-events-card {
  display: flex;
  flex-direction: column;
  padding: 0.72rem !important;
}

.home-page .home-gallery-head,
.home-page .home-events-head {
  align-items: center;
  display: flex;
  gap: 0.75rem;
  margin-bottom: 0.68rem !important;
}

.home-page .home-gallery-head .about-title,
.home-page .home-events-head .about-title {
  flex: 1 1 auto;
  min-height: 38px;
  padding-bottom: 0.4rem;
  padding-top: 0.4rem;
}

.home-page .home-gallery-link,
.home-page .home-events-head .btn {
  align-items: center;
  display: inline-flex;
  flex: 0 0 auto;
  justify-content: center;
  min-height: 38px;
}

.home-page .home-events-card .upcoming-event-list {
  display: grid;
  gap: 0.72rem;
  margin-bottom: 0.85rem;
}

.home-page .home-events-card .home-event-alert-inline {
  margin: auto 0 0 !important;
}

/* Gallery/events compact spacing 2026-07-09 */
.home-page .home-gallery-events-band .row {
  --bs-gutter-x: 1.25rem !important;
  --bs-gutter-y: 0.75rem !important;
}

.home-page .home-gallery-card,
.home-page .home-events-card {
  padding: 0.55rem !important;
}

.home-page #demo .carousel-inner,
.home-page #demo .carousel-item,
.home-page #demo .carousel-item img {
  height: 410px;
}

.home-page #demo .carousel-indicators {
  display: none !important;
}

@media (max-width: 991.98px) {
  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 330px;
  }
}

@media (max-width: 575.98px) {
  .home-page #demo .carousel-inner,
  .home-page #demo .carousel-item,
  .home-page #demo .carousel-item img {
    height: 225px;
  }
}

/* Homepage row gap reduction 2026-07-09 */
.home-page section,
.home-page .page-band {
  margin-bottom: 2pt !important;
}

.home-page .page-band.py-4,
.home-page .founder-strip.py-4,
.home-page .home-about-visit-band.py-4,
.home-page .home-gallery-events-band.py-4 {
  padding-top: 2pt !important;
  padding-bottom: 2pt !important;
}

.home-page .founder-strip .row,
.home-page .home-about-visit-band .row,
.home-page .home-gallery-events-band .row {
  --bs-gutter-y: 2pt !important;
}

.home-page .founder-strip {
  padding-top: 2pt !important;
}

.home-page .footer {
  margin-top: 2pt !important;
}

/* Visit/footer/profile refinements 2026-07-09 */
.home-page .visit-card {
  background:
    linear-gradient(180deg, rgba(255, 248, 232, 0.88), rgba(255, 255, 255, 0.98)) !important;
  border-left: 0 !important;
  box-shadow: 0 14px 30px rgba(21, 62, 117, 0.1) !important;
  position: relative;
}

.home-page .visit-card::before {
  background: linear-gradient(90deg, #d97706, #426FA8, #153e75);
  border-radius: 8px 8px 0 0;
  content: "";
  height: 4px;
  inset: 0 0 auto 0;
  position: absolute;
}

.home-page .visit-card .about-title {
  background: linear-gradient(135deg, #fff8e8 0%, #ffffff 100%);
  border-color: rgba(66,111,168, 0.22);
  border-left-color: #426FA8;
  color: #153e75;
}

.home-page .visit-info-row {
  background: rgba(255, 255, 255, 0.82) !important;
  border-color: rgba(66,111,168, 0.16) !important;
  box-shadow: 0 8px 18px rgba(21, 62, 117, 0.06) !important;
}

.home-page .visit-info-row:first-child {
  background: linear-gradient(135deg, #ffffff 0%, #f3fbf6 100%) !important;
}

.home-page .visit-card .info-icon {
  background: #ffffff;
  border-color: rgba(66,111,168, 0.28);
  color: #426FA8;
}

.home-page .founder-profile-img {
  justify-self: center;
}

.home-page .footer p {
  font-size: 0.86rem;
  letter-spacing: 0.01em;
}

.home-page .footer-feedback-link {
  font-size: 0.78rem;
}

/* Gallery featured cards and teaching gap 2026-07-09 */
.teaching-ticker-card {
  gap: 0.45rem;
  grid-template-columns: max-content 1fr;
  padding-left: 0.72rem;
  padding-right: 0.72rem;
}

.teaching-ticker-title {
  margin-right: 0.25rem;
}

.featured-gallery-card {
  display: grid;
  grid-template-columns: 168px 1fr;
  min-height: 190px;
}

.featured-gallery-cover {
  height: 100%;
  min-height: 190px;
  object-fit: cover;
  width: 100%;
}

.gallery-cover {
  background: #ffffff;
  aspect-ratio: 16 / 10;
  display: block;
  height: 230px;
  object-fit: contain;
  object-position: center;
  width: 100%;
}

.featured-gallery-content {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  justify-content: space-between;
  padding: 1rem;
}

.featured-gallery-content h3 {
  color: var(--blue);
  font-family: "Libre Baskerville", Georgia, serif;
  font-weight: 800;
}

.featured-gallery-content p {
  color: #2f4a63;
}

.featured-gallery-count {
  background: #f3fbf6;
  border: 1px solid rgba(66,111,168, 0.18);
  border-radius: 999px;
  color: #426FA8;
  display: inline-flex;
  font-size: 0.78rem;
  font-weight: 800;
  padding: 0.22rem 0.62rem;
}

@media (max-width: 767.98px) {
  .teaching-ticker-card {
    grid-template-columns: 1fr;
  }

  .featured-gallery-card {
    grid-template-columns: 1fr;
  }

  .featured-gallery-cover {
    height: 210px;
    min-height: 0;
  }

  .gallery-cover {
  background: #ffffff;
    height: 210px;
  }
}

/* Gallery event panel and compact teachings 2026-07-09 */
.header .teaching-ticker-card,
.home-page .header .teaching-ticker-card {
  align-items: center;
  display: flex !important;
  gap: 0.55rem !important;
  grid-template-columns: none !important;
  padding: 0.52rem 0.72rem !important;
}

.header .teaching-ticker-title,
.home-page .header .teaching-ticker-title {
  background: rgba(255, 255, 255, 0.36);
  border: 1px solid rgba(122, 59, 0, 0.16);
  border-radius: 7px;
  flex: 0 0 auto;
  line-height: 1.1;
  margin: 0 !important;
  padding: 0.42rem 0.58rem;
}

.header .teaching-ticker-window,
.home-page .header .teaching-ticker-window {
  flex: 1 1 auto;
  min-width: 0;
  padding: 0.42rem 0.68rem !important;
}

.events-gallery-panel {
  background: rgba(255, 255, 255, 0.96);
  border: 1px solid rgba(21, 62, 117, 0.12);
  border-radius: 8px;
  box-shadow: 0 12px 28px rgba(21, 62, 117, 0.08);
  margin-bottom: 1rem;
  padding: 1rem;
}

.events-gallery-panel-head {
  align-items: flex-end;
  border-bottom: 1px solid rgba(21, 62, 117, 0.1);
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
}

.events-gallery-panel-head h2 {
  color: var(--blue);
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.2rem;
  font-weight: 800;
  margin: 0;
}

.events-gallery-panel-head p {
  color: #52657a;
  margin: 0.25rem 0 0;
}

@media (max-width: 767.98px) {
  .header .teaching-ticker-card,
  .home-page .header .teaching-ticker-card {
    align-items: stretch;
    flex-direction: column;
  }

  .header .teaching-ticker-title,
  .home-page .header .teaching-ticker-title {
    text-align: center;
  }

  .events-gallery-panel {
    padding: 0.8rem;
  }
}

/* Public page compact rows except profile pages 2026-07-09 */
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) section {
  margin-bottom: 0.45rem !important;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) main.py-3,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) main.my-3,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .prayer-panels.my-3,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .master-ek-panels.my-3 {
  margin-top: 0.35rem !important;
  margin-bottom: 0.45rem !important;
  padding-top: 0.35rem !important;
  padding-bottom: 0.35rem !important;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .page-band.p-4,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) main.page-band.p-4,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) section.page-band.py-4 {
  padding-top: 0.75rem !important;
  padding-bottom: 0.75rem !important;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) section.page-band.px-3 {
  padding-left: 0.75rem !important;
  padding-right: 0.75rem !important;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .row.g-4,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .row.gy-4 {
  --bs-gutter-y: 0.75rem;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .row.g-4,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .row.gx-4 {
  --bs-gutter-x: 1rem;
}

body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .content-card .p-4,
body:not(.home-page):not(.about-page):not(.master-ek-page):not(.sastry-page) .content-card.p-4 {
  padding: 0.9rem !important;
}

/* Master EK teachings option 3 saffron 2026-07-09 */
.header .teaching-ticker-card,
.home-page .header .teaching-ticker-card {
  align-items: center;
  background:
    radial-gradient(circle at 94% 58%, rgba(245, 139, 19, 0.12) 0 8%, transparent 9%),
    linear-gradient(135deg, #fffaf0 0%, #fffdf8 55%, #fff6e6 100%) !important;
  border: 1px solid rgba(245, 139, 19, 0.72) !important;
  border-left: 1px solid rgba(245, 139, 19, 0.72) !important;
  border-radius: 8px !important;
  box-shadow: 0 9px 22px rgba(217, 119, 6, 0.12) !important;
  display: flex !important;
  gap: 0.9rem !important;
  grid-template-columns: none !important;
  margin: 0.58rem 0 0.72rem !important;
  min-height: 86px;
  overflow: hidden;
  padding: 0.78rem 1.05rem !important;
  position: relative;
}

.header .teaching-ticker-card::after,
.home-page .header .teaching-ticker-card::after {
  background:
    linear-gradient(22deg, transparent 0 44%, rgba(245, 139, 19, 0.42) 45% 47%, transparent 48%),
    radial-gradient(ellipse at 28% 48%, rgba(245, 139, 19, 0.26) 0 18%, transparent 19%),
    radial-gradient(ellipse at 48% 42%, rgba(245, 139, 19, 0.24) 0 16%, transparent 17%),
    radial-gradient(ellipse at 66% 35%, rgba(245, 139, 19, 0.22) 0 14%, transparent 15%);
  content: "";
  height: 58px;
  opacity: 0.72;
  pointer-events: none;
  position: absolute;
  right: 1rem;
  top: 50%;
  transform: translateY(-50%) rotate(-8deg);
  width: 152px;
}

.header .teaching-ticker-icon,
.home-page .header .teaching-ticker-icon {
  align-items: center;
  background: linear-gradient(135deg, #ff9d1c 0%, #f07600 100%);
  border: 5px solid #ffffff;
  border-radius: 50%;
  box-shadow: 0 10px 24px rgba(217, 119, 6, 0.24);
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 74px;
  font-size: 1.95rem;
  height: 74px;
  justify-content: center;
  position: relative;
  z-index: 1;
}

.header .teaching-ticker-title,
.home-page .header .teaching-ticker-title {
  background: transparent !important;
  border: 0 !important;
  color: #b65300 !important;
  flex: 0 0 auto;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1.08rem, 2vw, 1.58rem) !important;
  font-weight: 800;
  line-height: 1.18;
  margin: 0 !important;
  padding: 0 !important;
  position: relative;
  white-space: nowrap;
  z-index: 1;
}

.header .teaching-ticker-divider,
.home-page .header .teaching-ticker-divider {
  align-self: center;
  background: rgba(245, 139, 19, 0.58);
  flex: 0 0 1px;
  height: 48px;
  position: relative;
  z-index: 1;
}

.header .teaching-ticker-window,
.home-page .header .teaching-ticker-window {
  background: transparent !important;
  border: 0 !important;
  flex: 1 1 auto;
  min-width: 0;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

.header .teaching-ticker-text,
.home-page .header .teaching-ticker-text {
  animation: none !important;
  color: #202936 !important;
  display: -webkit-box !important;
  font-size: clamp(0.96rem, 1.4vw, 1.18rem);
  font-weight: 800;
  line-height: 1.38;
  max-width: calc(100% - 9.5rem);
  min-width: 0 !important;
  overflow: hidden;
  padding-left: 0 !important;
  text-overflow: ellipsis;
  white-space: normal !important;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

@media (max-width: 991.98px) {
  .header .teaching-ticker-card,
  .home-page .header .teaching-ticker-card {
    gap: 0.72rem !important;
  }

  .header .teaching-ticker-card::after,
  .home-page .header .teaching-ticker-card::after {
    opacity: 0.32;
    width: 96px;
  }

  .header .teaching-ticker-icon,
  .home-page .header .teaching-ticker-icon {
    flex-basis: 58px;
    font-size: 1.45rem;
    height: 58px;
  }

  .header .teaching-ticker-text,
  .home-page .header .teaching-ticker-text {
    max-width: 100%;
  }
}

@media (max-width: 767.98px) {
  .header .teaching-ticker-card,
  .home-page .header .teaching-ticker-card {
    align-items: flex-start;
    flex-direction: row !important;
    flex-wrap: wrap;
    min-height: 0;
  }

  .header .teaching-ticker-divider,
  .home-page .header .teaching-ticker-divider {
    display: none;
  }

  .header .teaching-ticker-window,
  .home-page .header .teaching-ticker-window {
    flex-basis: 100%;
    padding-left: calc(58px + 0.72rem) !important;
  }
}

/* Teaching bar leaf polish 2026-07-09 */
.header .teaching-ticker-card,
.home-page .header .teaching-ticker-card {
  min-height: 70px;
  padding-bottom: 0.55rem !important;
  padding-top: 0.55rem !important;
}

.header .teaching-ticker-card::after,
.home-page .header .teaching-ticker-card::after {
  background: none;
  border-bottom: 5px solid rgba(245, 139, 19, 0.3);
  border-radius: 50%;
  box-shadow:
    18px -7px 0 -6px rgba(245, 139, 19, 0.32),
    34px -15px 0 -8px rgba(245, 139, 19, 0.24),
    50px -22px 0 -10px rgba(245, 139, 19, 0.18),
    -18px 7px 0 -6px rgba(245, 139, 19, 0.32),
    -34px 15px 0 -8px rgba(245, 139, 19, 0.24),
    -50px 22px 0 -10px rgba(245, 139, 19, 0.18);
  height: 52px;
  opacity: 0.76;
  right: 1.35rem;
  transform: translateY(-50%) rotate(13deg);
  width: 138px;
}

.header .teaching-ticker-icon,
.home-page .header .teaching-ticker-icon {
  flex-basis: 62px;
  font-size: 1.55rem;
  height: 62px;
}

.header .teaching-ticker-title,
.home-page .header .teaching-ticker-title {
  font-size: clamp(1.02rem, 1.75vw, 1.42rem) !important;
}

.header .teaching-ticker-divider,
.home-page .header .teaching-ticker-divider {
  height: 40px;
}

.header .teaching-ticker-text,
.home-page .header .teaching-ticker-text {
  font-weight: 400;
}

@media (max-width: 991.98px) {
  .header .teaching-ticker-icon,
  .home-page .header .teaching-ticker-icon {
    flex-basis: 54px;
    font-size: 1.3rem;
    height: 54px;
  }
}

/* Master E.K. Daily Wisdom typography and language treatment */
.header .teaching-ticker-card,
.home-page .header .teaching-ticker-card {
  background: transparent !important;
  border: 1px solid rgba(210, 126, 35, 0.58) !important;
  box-shadow: none !important;
  display: block !important;
  min-inline-size: 0;
  overflow: visible;
  padding: 0.3rem clamp(1rem, 2vw, 1.5rem) 0.85rem !important;
}

.header .teaching-ticker-card::after,
.home-page .header .teaching-ticker-card::after {
  content: none;
}

.header .teaching-ticker-legend,
.home-page .header .teaching-ticker-legend {
  align-items: center;
  background: transparent;
  color: #a34d08;
  display: inline-flex;
  float: none;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(0.92rem, 1.45vw, 1.15rem);
  font-weight: 700;
  gap: 0.55rem;
  line-height: 1.25;
  margin: 0 0 0.15rem 0.35rem;
  padding: 0 0.55rem;
  width: auto;
}

.header .teaching-ticker-legend-icon,
.home-page .header .teaching-ticker-legend-icon {
  align-items: center;
  background: linear-gradient(135deg, #f49a2f, #d96c08);
  border-radius: 50%;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 30px;
  font-size: 0.78rem;
  height: 30px;
  justify-content: center;
  width: 30px;
}

.header .teaching-ticker-heading,
.home-page .header .teaching-ticker-heading {
  flex: 0 0 auto;
  position: relative;
  text-align: left;
  z-index: 1;
}

.header .teaching-ticker-kicker,
.home-page .header .teaching-ticker-kicker {
  color: #8c5a24;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  margin-top: 0.22rem;
  text-transform: uppercase;
}

.header .teaching-ticker-window,
.home-page .header .teaching-ticker-window {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: clamp(0.65rem, 1.5vw, 1rem);
  justify-content: center;
  min-height: 54px;
  padding-inline: clamp(1rem, 3vw, 2.5rem) !important;
  text-align: center;
}

.header .teaching-quote-icon,
.home-page .header .teaching-quote-icon {
  color: rgba(205, 113, 20, 0.35);
  flex: 0 0 auto;
  font-size: clamp(0.85rem, 1.4vw, 1.05rem);
}

.header .teaching-ticker-divider,
.home-page .header .teaching-ticker-divider {
  opacity: 0.42;
}

.header .teaching-ticker-text,
.home-page .header .teaching-ticker-text {
  -webkit-box-orient: initial;
  -webkit-line-clamp: unset;
  color: #263241 !important;
  display: block !important;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: clamp(1rem, 1.45vw, 1.22rem);
  font-style: italic;
  font-weight: 400;
  line-height: 1.55;
  max-width: 100%;
  overflow: visible;
  text-align: center;
  text-overflow: clip;
}

.header .teaching-ticker-text-telugu,
.home-page .header .teaching-ticker-text-telugu {
  font-family: "NTR", "Noto Sans Telugu", sans-serif;
  font-size: clamp(1.25rem, 1.8vw, 1.55rem);
  font-style: normal;
  line-height: 1.45;
}

.header .teaching-ticker-attribution,
.home-page .header .teaching-ticker-attribution {
  color: #9a4f12;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 0.72rem;
  font-weight: 700;
  margin-top: 0.28rem;
  text-align: center;
}

@media (max-width: 767.98px) {
  .header .teaching-ticker-card,
  .home-page .header .teaching-ticker-card {
    padding: 0.25rem 0.75rem 0.75rem !important;
  }

  .header .teaching-ticker-legend,
  .home-page .header .teaching-ticker-legend {
    font-size: 0.9rem;
    margin-left: 0.15rem;
    padding-inline: 0.4rem;
  }

  .header .teaching-ticker-legend-icon,
  .home-page .header .teaching-ticker-legend-icon {
    flex-basis: 26px;
    font-size: 0.7rem;
    height: 26px;
    width: 26px;
  }

  .header .teaching-ticker-window,
  .home-page .header .teaching-ticker-window {
    gap: 0.55rem;
    min-height: 62px;
    padding: 0.4rem 0.2rem 0.1rem !important;
  }

  .header .teaching-ticker-text,
  .home-page .header .teaching-ticker-text {
    font-size: 1.05rem;
    line-height: 1.55;
  }

  .header .teaching-ticker-text-telugu,
  .home-page .header .teaching-ticker-text-telugu {
    font-size: 1.34rem;
    line-height: 1.45;
  }
}

/* Visit Us soft #234f86 nature panel 2026-07-09 */
.home-page .visit-card {
  background:
    radial-gradient(circle at 92% 9%, rgba(66,111,168, 0.14) 0 9%, transparent 10%),
    linear-gradient(145deg, #f8fff7 0%, #ffffff 48%, #eef8ef 100%) !important;
  border: 1px solid rgba(66,111,168, 0.32) !important;
  border-left: 1px solid rgba(66,111,168, 0.32) !important;
  border-radius: 8px !important;
  box-shadow: 0 14px 30px rgba(66,111,168, 0.14) !important;
  overflow: hidden;
  padding: 0.9rem !important;
  position: relative;
}

.home-page .visit-card::before {
  background:
    radial-gradient(ellipse at 60% 18%, rgba(66,111,168, 0.78) 0 16%, transparent 17%),
    radial-gradient(ellipse at 42% 42%, rgba(66,111,168, 0.7) 0 14%, transparent 15%),
    linear-gradient(135deg, transparent 0 45%, rgba(66,111,168, 0.72) 46% 48%, transparent 49%);
  border-radius: 0;
  content: "";
  height: 48px;
  inset: 0.78rem 0.86rem auto auto;
  position: absolute;
  transform: rotate(-18deg);
  width: 64px;
}

.home-page .visit-card .about-title {
  background: transparent !important;
  border: 0 !important;
  color: #234F86 !important;
  font-size: 1.16rem;
  margin-bottom: 0.78rem !important;
  min-height: 0;
  padding: 0.25rem 0 0.5rem !important;
  position: relative;
  z-index: 1;
}

.home-page .visit-card .about-title::after {
  background: rgba(66,111,168, 0.12);
  content: "";
  height: 1px;
  inset: auto -0.9rem 0 -0.9rem;
  position: absolute;
}

.home-page .visit-info-list {
  gap: 0.58rem;
}

.home-page .visit-info-row {
  align-items: center;
  background: rgba(242, 248, 239, 0.82) !important;
  border: 1px solid rgba(66,111,168, 0.08) !important;
  border-radius: 7px !important;
  box-shadow: none !important;
  gap: 0.7rem;
  padding: 0.56rem 0.68rem !important;
}

.home-page .visit-info-row:first-child {
  align-items: flex-start;
  background: rgba(255, 255, 255, 0.72) !important;
  border-color: rgba(66,111,168, 0.14) !important;
}

.home-page .visit-info-row p {
  color: #10243a;
  font-size: 0.92rem;
  line-height: 1.42;
}

.home-page .visit-card .info-icon {
  background: #ffffff;
  border: 1px solid rgba(66,111,168, 0.18);
  box-shadow: 0 5px 14px rgba(66,111,168, 0.1);
  color: #426FA8;
  flex-basis: 28px;
  height: 28px;
  width: 28px;
}

.home-page .visit-action-stack {
  gap: 0.7rem;
  padding-top: 0.8rem !important;
}

.home-page .visit-action-stack .btn {
  border-radius: 7px;
  font-weight: 900;
  min-height: 36px;
}

.home-page .visit-action-stack .btn-outline-primary {
  background: #ffffff;
  border-color: rgba(66,111,168, 0.42);
  color: #234F86;
}

.home-page .visit-action-stack .btn-outline-primary:hover,
.home-page .visit-action-stack .btn-outline-primary:focus {
  background: #f2f8ef;
  color: #234F86;
}

.home-page .visit-action-stack .btn-outline-success {
  background: linear-gradient(135deg, #426FA8, #234F86);
  border-color: #426FA8;
  color: #ffffff;
}

.home-page .visit-action-stack .btn-outline-success:hover,
.home-page .visit-action-stack .btn-outline-success:focus {
  background: linear-gradient(135deg, #234F86, #234F86);
  border-color: #234F86;
  color: #ffffff;
}

/* Visit Us saffron circle polish 2026-07-09 */
.home-page .visit-card {
  background:
    radial-gradient(circle at 92% 10%, rgba(217, 119, 6, 0.16) 0 11%, transparent 12%),
    linear-gradient(145deg, #fffaf0 0%, #ffffff 48%, #fff2d8 100%) !important;
  border-color: rgba(217, 119, 6, 0.34) !important;
  box-shadow: 0 14px 30px rgba(217, 119, 6, 0.13) !important;
}

.home-page .visit-card::before {
  display: none !important;
}

.home-page .visit-card .about-title {
  align-items: center;
  color: #9a4a00 !important;
  display: flex;
  justify-content: space-between;
  padding-right: 0.15rem !important;
}

.home-page .visit-title-icon {
  align-items: center;
  background: #fff4dc;
  border: 1px solid rgba(217, 119, 6, 0.24);
  border-radius: 50%;
  color: #d97706;
  display: inline-flex;
  font-size: 1rem;
  height: 2rem;
  justify-content: center;
  width: 2rem;
}

.home-page .visit-card .about-title::after {
  background: rgba(217, 119, 6, 0.16);
}

.home-page .visit-info-row {
  background: rgba(255, 248, 232, 0.7) !important;
  border-color: rgba(217, 119, 6, 0.14) !important;
}

.home-page .visit-info-row:first-child {
  background: rgba(255, 255, 255, 0.76) !important;
  border-color: rgba(217, 119, 6, 0.18) !important;
}

.home-page .visit-card .info-icon {
  border-color: rgba(217, 119, 6, 0.24);
  box-shadow: 0 5px 14px rgba(217, 119, 6, 0.1);
  color: #d97706;
}

.home-page .visit-action-stack {
  align-items: center;
  gap: 0.62rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  padding-top: 0.72rem !important;
}

.home-page .visit-action-stack .btn {
  align-items: center;
  display: inline-flex;
  font-size: 0.82rem;
  justify-content: center;
  line-height: 1.15;
  min-height: 34px;
  padding: 0.42rem 0.58rem;
  white-space: nowrap;
}

.home-page .visit-action-stack .btn i {
  flex: 0 0 auto;
}

.home-page .visit-action-stack .btn-outline-primary {
  border-color: rgba(217, 119, 6, 0.48);
  color: #9a4a00;
}

.home-page .visit-action-stack .btn-outline-primary:hover,
.home-page .visit-action-stack .btn-outline-primary:focus {
  background: #fff4dc;
  border-color: #d97706;
  color: #7a3b00;
}

.home-page .visit-action-stack .btn-outline-success {
  background: linear-gradient(135deg, #e58a12, #c86400);
  border-color: #d97706;
  color: #ffffff;
}

.home-page .visit-action-stack .btn-outline-success:hover,
.home-page .visit-action-stack .btn-outline-success:focus {
  background: linear-gradient(135deg, #c86400, #9a4a00);
  border-color: #c86400;
  color: #ffffff;
}


/* Shared mobile responsive pass 2026-07-09 */
.site-banner {
  background: #ffffff;
  overflow: hidden;
}

.site-banner img {
  display: block;
  height: auto !important;
  max-height: none;
  object-fit: contain;
  width: 100%;
}

.header .site-banner img {
  height: auto !important;
  object-fit: contain !important;
  object-position: center center;
  width: 100% !important;
}

@media (max-width: 991.98px) {
  body.container {
    max-width: 100%;
    padding-left: 0.75rem;
    padding-right: 0.75rem;
  }

  .navbar {
    border-radius: 0;
  }

  .navbar-collapse {
    max-height: calc(100vh - 76px);
    overflow-x: hidden;
    overflow-y: auto;
  }

  .navbar-nav {
    gap: 0.15rem;
    padding: 0.65rem 0 0.85rem;
  }

  .navbar .nav-link {
    border-radius: 7px;
    display: flex;
    justify-content: space-between;
    min-height: 42px;
    padding: 0.62rem 0.8rem;
    width: 100%;
  }

  .navbar .dropdown-menu {
    background: rgba(255, 255, 255, 0.96);
    border-radius: 7px;
    box-shadow: none;
    margin: 0 0 0.35rem;
    padding: 0.25rem;
    position: static;
    width: 100%;
  }

  .dropdown-item {
    border-radius: 6px;
    min-height: 38px;
    padding: 0.55rem 0.85rem;
    white-space: normal;
  }
}

@media (max-width: 575.98px) {
  body.container,
  body .container,
  .container,
  .container-fluid {
    padding-left: 0.65rem;
    padding-right: 0.65rem;
  }

  .site-banner {
    border-radius: 6px;
  }

  .site-banner img {
    border-radius: 6px;
  }

  .page-band,
  .content-card {
    overflow-wrap: anywhere;
  }
}

/* Mobile navbar alignment and submenu fix 2026-07-09 */
@media (max-width: 991.98px) {
  .navbar .container-fluid {
    align-items: flex-start;
  }

  .navbar-collapse {
    width: 100%;
  }

  .navbar-nav,
  .navbar-nav.ms-auto {
    align-items: stretch !important;
    margin-left: 0 !important;
    width: 100%;
  }

  .navbar .nav-item {
    width: 100%;
  }

  .navbar .nav-link,
  .home-page .navbar .nav-link {
    align-items: center !important;
    display: flex !important;
    gap: 0.65rem !important;
    justify-content: flex-start !important;
    text-align: left !important;
    width: 100% !important;
  }

  .navbar .nav-link i:not(.youtube-icon),
  .navbar .youtube-icon {
    flex: 0 0 1.35rem;
    margin: 0 !important;
    min-width: 1.35rem;
    text-align: center;
  }

  .navbar .dropdown-toggle::after {
    margin-left: 0.45rem !important;
  }

  .navbar .dropdown-menu {
    display: block !important;
    margin: -0.1rem 0 0.35rem 2rem !important;
    max-width: calc(100% - 2rem);
    max-height: none !important;
    opacity: 1 !important;
    transform: none !important;
    visibility: visible !important;
    width: calc(100% - 2rem);
  }

  .navbar .dropdown-item {
    color: #153e75 !important;
    font-size: 0.94rem;
    font-weight: 800;
    justify-content: flex-start;
    text-align: left;
  }
}

.navbar-collapse.is-open {
  display: block !important;
}



/* Remove the outer frame around the shared header and banner. */
.home-page .header { border: 0 !important; }




/* Compact 2x2 About MHV services */
.home-about-card .about-services-grid {
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 0.45rem;
  margin-top: 0.55rem !important;
}
.home-about-card .service-row {
  gap: 0.5rem;
  min-height: 44px;
  padding: 0.3rem 0.45rem;
}
.home-about-card .service-row img {
  height: 32px;
  width: 32px;
}
.home-about-card .service-row strong {
  font-size: 0.92rem;
  line-height: 1.08;
}
.home-about-card .service-row small {
  font-size: 0.76rem;
  line-height: 1.08;
}
@media (max-width: 575.98px) {
  .home-about-card .about-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
  .home-about-card .service-row {
    gap: 0.35rem;
    padding: 0.28rem 0.35rem;
  }
  .home-about-card .service-row img {
    height: 28px;
    width: 28px;
  }
  .home-about-card .service-row strong { font-size: 0.8rem; }
  .home-about-card .service-row small { font-size: 0.68rem; }
}

/* Unified homepage About MHV and Visit the Clinic panel */
.home-about-visit-panel {
  background: #ffffff;
  border: 1px solid rgba(21, 62, 117, 0.16);
  border-radius: 10px;
  box-shadow: 0 10px 24px rgba(21, 62, 117, 0.08);
  overflow: hidden;
}

.home-about-visit-heading {
  align-items: center;
  background: linear-gradient(90deg, #fff8e8, #f4faf6);
  border-bottom: 1px solid rgba(66,111,168, 0.14);
  display: flex;
  gap: 0.7rem;
  padding: 0.7rem 0.9rem;
}

.home-about-visit-heading-icon {
  align-items: center;
  background: #426FA8;
  border-radius: 50%;
  color: #ffffff;
  display: inline-flex;
  flex: 0 0 36px;
  height: 36px;
  justify-content: center;
  width: 36px;
}

.home-about-visit-heading span:not(.home-about-visit-heading-icon) {
  color: #8a6422;
  display: block;
  font-size: 0.65rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-about-visit-heading h1 {
  color: #153e75;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.16rem;
  font-weight: 800;
  margin: 0.08rem 0 0;
}

.home-about-visit-grid {
  align-items: stretch;
  display: grid;
  grid-template-areas: "copy media visit";
  grid-template-columns: minmax(0, 1.4fr) minmax(210px, 0.9fr) minmax(260px, 1fr);
}

.home-about-unified-copy {
  align-items: flex-start;
  display: flex;
  flex-direction: column;
  grid-area: copy;
  padding: clamp(0.9rem, 1.7vw, 1.15rem);
}

.home-about-unified-copy p {
  color: #17324c;
  line-height: 1.6;
  margin: 0 0 0.7rem;
}

.home-about-unified-copy .btn {
  margin-top: 0.2rem;
  min-width: 125px;
}

.home-about-unified-media {
  background: #f4f8f6;
  border-left: 1px solid rgba(21, 62, 117, 0.1);
  grid-area: media;
  margin: 0;
  min-height: 215px;
  overflow: hidden;
  position: relative;
}

.home-about-unified-media img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%;
}

.home-about-unified-media figcaption {
  background: linear-gradient(transparent, rgba(8, 35, 63, 0.82));
  bottom: 0;
  color: #ffffff;
  font-size: 0.7rem;
  font-weight: 700;
  left: 0;
  padding: 1.5rem 0.65rem 0.5rem;
  position: absolute;
  right: 0;
  text-align: center;
}

.home-visit-unified {
  background: #fffaf0;
  border-left: 1px solid rgba(210, 126, 35, 0.2);
  display: flex;
  flex-direction: column;
  grid-area: visit;
  padding: clamp(0.85rem, 1.6vw, 1.05rem);
}

.home-visit-unified h3 {
  color: #8d4309;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.02rem;
  font-weight: 800;
  margin: 0 0 0.6rem;
}

.home-visit-unified h3 i {
  color: #d17b22;
  margin-right: 0.35rem;
}

.home-visit-unified-details {
  display: grid;
  gap: 0.5rem;
}

.home-visit-unified-details p {
  color: #243d55;
  line-height: 1.38;
  margin: 0;
  padding-left: 1.35rem;
  position: relative;
}

.home-visit-unified-details p i {
  color: #c87522;
  left: 0;
  position: absolute;
  top: 0.25rem;
}

.home-visit-unified-details .home-visit-address {
  border-bottom: 1px solid rgba(210, 126, 35, 0.16);
  font-weight: 600;
  padding-bottom: 0.55rem;
  padding-left: 0;
}

.home-visit-unified-actions {
  display: grid;
  gap: 0.55rem;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  margin-top: auto;
  padding-top: 0.65rem;
}

.home-visit-unified-actions .btn {
  align-items: center;
  display: inline-flex;
  font-weight: 800;
  justify-content: center;
  white-space: nowrap;
}

@media (max-width: 991.98px) {
  .home-about-visit-grid {
    grid-template-areas:
      "copy media"
      "visit visit";
    grid-template-columns: minmax(0, 1.25fr) minmax(230px, 0.75fr);
  }

  .home-visit-unified {
    border-left: 0;
    border-top: 1px solid rgba(210, 126, 35, 0.2);
  }
}

@media (max-width: 575.98px) {
  .home-about-visit-grid {
    grid-template-areas:
      "media"
      "copy"
      "visit";
    grid-template-columns: 1fr;
  }

  .home-about-unified-media {
    border-left: 0;
    min-height: 210px;
  }

  .home-about-unified-copy .btn {
    width: 100%;
  }

  .home-visit-unified {
    border-top: 1px solid rgba(210, 126, 35, 0.2);
  }

  .home-visit-unified-actions {
    grid-template-columns: 1fr;
  }
}

.home-services-band {
  padding-bottom: 0.45rem;
  padding-top: 0.45rem;
}

.home-services-panel {
  background: linear-gradient(135deg, #f8fcf9, #fffdf7);
  border: 1px solid rgba(66,111,168, 0.18);
  border-radius: 10px;
  box-shadow: 0 9px 22px rgba(21, 62, 117, 0.07);
  padding: 0.9rem;
}

.home-services-heading {
  align-items: end;
  border-bottom: 1px solid rgba(66,111,168, 0.13);
  display: flex;
  gap: 0.7rem;
  justify-content: space-between;
  margin-bottom: 0.75rem;
  padding-bottom: 0.55rem;
}

.home-services-heading h2 {
  color: #153e75;
  font-family: "Libre Baskerville", Georgia, serif;
  font-size: 1.1rem;
  font-weight: 800;
  margin: 0;
}

.home-services-kicker {
  color: #8a6422;
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.home-services-band .about-services-grid {
  gap: 0.7rem;
  grid-template-columns: 1.08fr 1.24fr 0.88fr 0.8fr;
  margin: 0 !important;
}

.home-services-band .service-row {
  background: #ffffff;
  border-color: rgba(66,111,168, 0.2);
  box-shadow: 0 6px 14px rgba(66,111,168, 0.06);
  gap: 0.55rem;
  min-height: 64px;
  padding: 0.52rem;
}

.home-services-band .service-row img {
  height: 38px;
  width: 38px;
}

.home-services-band .service-row > div {
  min-width: 0;
}

.home-services-band .service-row strong {
  color: #0b3a70;
  font-size: 0.96rem;
  font-weight: 900;
  line-height: 1.22;
  white-space: nowrap;
}

.home-services-band .service-row small {
  color: #234F86;
  font-size: 0.8rem;
  font-weight: 800;
  line-height: 1.3;
  white-space: nowrap;
}

@media (max-width: 991.98px) {
  .home-services-band .about-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575.98px) {
  .home-services-heading {
    align-items: flex-start;
    flex-direction: column-reverse;
    gap: 0.25rem;
  }

  .home-services-band .about-services-grid {
    grid-template-columns: 1fr;
  }
}

.home-whats-new-band{background:linear-gradient(135deg,#f5faf7 0%,#fffaf0 100%);border-bottom:1px solid rgba(66,111,168,.12);border-top:1px solid rgba(66,111,168,.12);margin:10px 0;padding-bottom:24px!important;padding-top:22px!important}.home-whats-new-head{align-items:end;display:flex;gap:1rem;justify-content:space-between;margin:0 auto 16px;max-width:1320px}.home-whats-new-kicker{color:#9a6a19;display:block;font-size:.7rem;font-weight:800;letter-spacing:.14em;margin-bottom:3px;text-transform:uppercase}.home-whats-new-head h2{color:#234F86;font-family:"Libre Baskerville",Georgia,serif;font-size:clamp(1.65rem,3vw,2.25rem);font-weight:700;margin:0}.home-whats-new-meta{align-items:center;color:#234F86;display:flex;font-size:.76rem;gap:.9rem}.home-whats-new-meta i{color:#426FA8;margin-right:4px}.home-update-grid{display:grid;gap:14px;grid-template-columns:repeat(4,minmax(0,1fr));margin:0 auto;max-width:1320px}.home-update-card{background:#fff;border:1px solid #dce7e2;border-radius:12px;box-shadow:0 8px 22px rgba(35,79,134,.07);display:flex;flex-direction:column;min-height:210px;overflow:hidden;padding:15px;position:relative;transition:box-shadow .2s,transform .2s}.home-update-card:before{background:#426FA8;content:"";height:3px;inset:0 0 auto;position:absolute}.home-update-card.home-update-gallery:before{background:#d0952e}.home-update-card.home-update-newsletter:before{background:#386fa4}.home-update-card:hover{box-shadow:0 14px 30px rgba(35,79,134,.13);transform:translateY(-3px)}.home-update-top{align-items:center;display:flex;gap:.6rem;justify-content:space-between;margin:2px 0 12px}.home-update-type{align-items:center;background:#e7f1ed;border-radius:99px;color:#234F86;display:inline-flex;font-size:.66rem;font-weight:800;gap:5px;letter-spacing:.06em;padding:5px 8px;text-transform:uppercase}.home-update-gallery .home-update-type{background:#fff3dc;color:#8c5b09}.home-update-newsletter .home-update-type{background:#eaf2fa;color:#285b8a}.home-update-top time{color:#426FA8;font-size:.69rem;font-weight:700}.home-update-card h3{color:#234F86;font-size:1.02rem;font-weight:800;line-height:1.35;margin:0 0 8px}.home-update-card p{color:#234F86;display:-webkit-box;font-size:.82rem;line-height:1.55;margin:0 0 14px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:3}.home-update-card>a{align-items:center;color:#234F86;display:flex;font-size:.76rem;font-weight:800;gap:6px;margin-top:auto;text-decoration:none}.home-update-card>a i{font-size:.65rem;transition:transform .2s}.home-update-card>a:hover i{transform:translateX(3px)}@media(max-width:1100px){.home-update-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:600px){.home-whats-new-band{padding:18px 12px!important}.home-whats-new-head{align-items:flex-start;flex-direction:column}.home-whats-new-meta{font-size:.7rem}.home-update-grid{grid-template-columns:1fr}.home-update-card{min-height:0}}

.home-whats-new-band{padding-bottom:18px!important;padding-top:18px!important}.home-update-grid{display:block;max-width:1320px}.home-update-row{border-bottom:1px solid rgba(66,111,168,.16);padding:11px 4px 12px 15px;position:relative}.home-update-row:last-child{border-bottom:0}.home-update-row:before{background:#426FA8;border-radius:99px;content:"";height:6px;left:1px;position:absolute;top:18px;width:6px}.home-update-row.home-update-gallery:before{background:#d0952e}.home-update-row.home-update-newsletter:before{background:#386fa4}.home-update-title{color:#1b5c94;display:inline-block;font-size:.94rem;font-weight:800;line-height:1.35;margin-bottom:3px;text-decoration:none}.home-update-title:hover,.home-update-title:focus{color:#234F86;text-decoration:underline}.home-update-line{align-items:center;color:#c24f3c;display:flex;font-size:.7rem;font-weight:700;gap:8px;margin-bottom:3px}.home-update-line span{align-items:center;display:inline-flex;gap:5px}.home-update-line time:before{content:"·";margin-right:8px}.home-update-row p{color:#234F86;display:-webkit-box;font-size:.82rem;line-height:1.45;margin:0;max-width:1050px;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:1}.home-update-row[lang="te"],.home-update-row[lang="te"] .home-update-title,.home-update-row[lang="te"] p{font-family:"Anek Telugu","Nirmala UI",sans-serif}.home-update-row[lang="te"] .home-update-title{font-size:1.02rem;font-weight:600}.home-update-row[lang="te"] p{font-size:.9rem;line-height:1.55}@media(max-width:600px){.home-whats-new-head{margin-bottom:8px}.home-update-row{padding-bottom:10px;padding-top:10px}.home-update-row p{-webkit-line-clamp:2}.home-update-line{flex-wrap:wrap}}

.home-update-pagination{align-items:center;border-top:1px solid rgba(66,111,168,.16);display:flex;gap:1rem;justify-content:space-between;margin-top:8px;padding:12px 4px 0 15px}.home-update-pagination>span{color:#426FA8;font-size:.72rem;font-weight:700}.home-update-pagination>div{align-items:center;display:flex;flex-wrap:wrap;gap:5px}.home-update-pagination a{align-items:center;border:1px solid #E0E7F1;border-radius:6px;color:#234F86;display:inline-flex;font-size:.72rem;font-weight:800;gap:5px;justify-content:center;min-height:30px;min-width:30px;padding:5px 8px;text-decoration:none}.home-update-pagination a:hover,.home-update-pagination a:focus{background:#e7f1ed;border-color:#234F86}.home-update-pagination a.active{background:#234F86;border-color:#234F86;color:#fff;pointer-events:none}@media(max-width:600px){.home-update-pagination{align-items:flex-start;flex-direction:column}.home-update-pagination>div{width:100%}}

.home-whats-new-band{border:1px solid rgba(66,111,168,.28)!important;border-radius:12px;margin:12px 8px;overflow:hidden}.home-whats-new-head{border-bottom:1px solid rgba(66,111,168,.22);padding-bottom:12px}.home-update-pagination button{align-items:center;background:#fff;border:1px solid #E0E7F1;border-radius:6px;color:#234F86;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.72rem;font-weight:800;gap:5px;justify-content:center;min-height:30px;min-width:30px;padding:5px 8px}.home-update-pagination button:hover,.home-update-pagination button:focus{background:#e7f1ed;border-color:#234F86}.home-update-pagination button.active{background:#234F86;border-color:#234F86;color:#fff}.home-update-pagination button:disabled{cursor:not-allowed;opacity:.42}@media(max-width:600px){.home-whats-new-band{margin:10px 6px}}

.home-update-row{border-bottom:0!important}

/* Tighter Gallery and Upcoming Events desktop gutter */
.home-page .home-gallery-events-band .row {
  --bs-gutter-x: 0.65rem !important;
}

/* Final About MHV column sizing: keep the 60/40 layout from wrapping. */
@media (min-width: 768px) {
  .home-about-layout > .home-about-copy {
    flex: 0 0 60% !important;
    max-width: 60% !important;
    width: 60% !important;
  }

  .home-about-layout > .home-about-media {
    flex: 0 0 40% !important;
    max-width: 40% !important;
    width: 40% !important;
  }
}

@media (max-width: 767.98px) {
  .home-about-layout > .home-about-copy,
  .home-about-layout > .home-about-media {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    width: 100% !important;
  }
}

/* Give the desktop navigation a little more breathing room. */
@media (min-width: 992px) {
  .header .navbar-nav {
    gap: 0.15rem;
  }

  .header .navbar .nav-link {
    padding-left: 0.55rem !important;
    padding-right: 0.55rem !important;
  }
}
