/**
 * Visaka Divines — global responsive / layout fixes (after Nicepage CSS).
 * Sections: home hero, home product strip, product list/detail, marketing PDPs, desktop rhythm.
 */

/* -------------------------------------------------------------------------- */
/* Full-width image heroes (index + hub pages)                                */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  #carousel_9cab.u-section-1,
  #sec-rose-hero.u-section-1,
  #sec-tanjore-hero.u-section-1,
  #sec-garlands-hero.u-section-1 {
    background-size: cover !important;
    background-position: center center !important;
    min-height: clamp(22rem, 55vh, 32rem);
  }

  #carousel_9cab .u-sheet-1,
  #sec-rose-hero .u-sheet-1,
  #sec-tanjore-hero .u-sheet-1,
  #sec-garlands-hero .u-sheet-1 {
    position: relative;
    isolation: isolate;
    min-height: auto !important;
    padding-top: 1.5rem;
    padding-bottom: 2rem;
  }

  /* Full-bleed rounded panel behind hero copy (replaces old display:none that removed mobile contrast) */
  #carousel_9cab .u-shape-1,
  #sec-rose-hero .u-shape-1,
  #sec-tanjore-hero .u-shape-1,
  #sec-garlands-hero .u-shape-1 {
    display: block !important;
    position: absolute;
    left: 0.75rem;
    right: 0.75rem;
    top: 0.65rem;
    bottom: 0.65rem;
    width: auto !important;
    height: auto !important;
    margin: 0 !important;
    z-index: 0;
    pointer-events: none;
    border-radius: 14px;
  }

  #carousel_9cab .vd-home-hero-eyebrow,
  #carousel_9cab .vd-home-hero-actions,
  #carousel_9cab .u-text-1,
  #carousel_9cab .u-text-2,
  #sec-rose-hero .u-text-1,
  #sec-rose-hero .u-text-2,
  #sec-tanjore-hero .u-text-1,
  #sec-tanjore-hero .u-text-2,
  #sec-garlands-hero .u-text-1,
  #sec-garlands-hero .u-text-2 {
    position: relative !important;
    z-index: 1;
    width: 100% !important;
    max-width: 100%;
    margin-left: 0 !important;
    margin-right: 0 !important;
    margin-top: 0 !important;
    padding-left: 1.25rem !important;
    padding-right: 1.25rem !important;
    box-sizing: border-box;
  }

  #sec-rose-hero .u-text-1,
  #sec-rose-hero .u-text-2,
  #sec-tanjore-hero .u-text-1,
  #sec-tanjore-hero .u-text-2,
  #sec-garlands-hero .u-text-1,
  #sec-garlands-hero .u-text-2 {
    max-width: 42rem;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  #carousel_9cab .vd-home-hero-eyebrow,
  #carousel_9cab .vd-home-hero-actions,
  #carousel_9cab .u-text-1,
  #sec-rose-hero .u-text-1,
  #sec-tanjore-hero .u-text-1,
  #sec-garlands-hero .u-text-1 {
    margin-bottom: 0.75rem !important;
    padding-top: 0.35rem;
  }

  #carousel_9cab .vd-home-hero-eyebrow {
    margin-bottom: 0.5rem !important;
    padding-top: 0.25rem !important;
  }

  #carousel_9cab .vd-home-hero-actions {
    margin-top: 1rem !important;
    margin-bottom: 0 !important;
    padding-bottom: 0.35rem !important;
  }

  #sec-rose-hero .u-btn-1,
  #sec-tanjore-hero .u-btn-1,
  #sec-garlands-hero .u-btn-1 {
    position: relative;
    z-index: 1;
    margin-left: auto !important;
    margin-right: auto !important;
    margin-top: 0.5rem !important;
    display: inline-block;
    max-width: calc(100% - 2.5rem);
    box-sizing: border-box;
  }

  #sec-rose-hero .u-sheet-1,
  #sec-tanjore-hero .u-sheet-1,
  #sec-garlands-hero .u-sheet-1 {
    text-align: center;
  }

  #sec-rose-hero .u-text-1,
  #sec-tanjore-hero .u-text-1,
  #sec-garlands-hero .u-text-1,
  #sec-rose-hero .u-text-2,
  #sec-tanjore-hero .u-text-2,
  #sec-garlands-hero .u-text-2 {
    text-align: left;
  }
}

@media (max-width: 575px) {
  #carousel_9cab.u-section-1,
  #sec-rose-hero.u-section-1,
  #sec-tanjore-hero.u-section-1,
  #sec-garlands-hero.u-section-1 {
    min-height: clamp(20rem, 50vh, 28rem);
  }

  #carousel_9cab .u-text-1,
  #sec-rose-hero .u-text-1,
  #sec-tanjore-hero .u-text-1,
  #sec-garlands-hero .u-text-1 {
    font-size: 1.35rem !important;
    line-height: 1.25 !important;
  }

  #carousel_9cab .u-text-2,
  #sec-rose-hero .u-text-2,
  #sec-tanjore-hero .u-text-2,
  #sec-garlands-hero .u-text-2 {
    font-size: 0.9375rem !important;
  }

  #carousel_9cab .vd-home-hero-eyebrow {
    font-size: 0.6875rem !important;
    letter-spacing: 0.06em;
  }
}

/* -------------------------------------------------------------------------- */
/* Tanjore hub — “Browse by Deity” reuses .u-section-3; Carnation template CSS sets  */
/* min-heights for a 3-column product grid (e.g. 6374px on tablet), causing a giant   */
/* blank gap below the buttons. Reset height for this section only.                 */
/* -------------------------------------------------------------------------- */
#sec-tanjore-deities.u-section-3,
#sec-tanjore-deities .u-sheet-1 {
  min-height: auto !important;
}

/* -------------------------------------------------------------------------- */
/* Home — product strip (#sec-8b3c only; avoids other pages’ .u-section-4)     */
/* -------------------------------------------------------------------------- */
@media (max-width: 1199px) {
  #sec-8b3c .u-list-1 {
    overflow: visible;
  }

  #sec-8b3c .u-repeater-1 {
    overflow: visible;
  }

  #sec-8b3c .u-image-2,
  #sec-8b3c .u-image-3,
  #sec-8b3c .u-image-4 {
    margin-top: 0 !important;
  }
}

@media (max-width: 767px) {
  #sec-8b3c .u-sheet-1 {
    min-height: auto !important;
  }

  #sec-8b3c .u-list-1 {
    margin-bottom: 2rem;
  }
}

/* -------------------------------------------------------------------------- */
/* Product list — products/products.php (Product-List-Template)               */
/* -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .u-section-1 .u-repeater-1 .u-image-1,
  .u-section-1 .u-repeater-1 .u-image-2,
  .u-section-1 .u-repeater-1 .u-image-3,
  .u-section-1 .u-repeater-1 .u-image-4,
  .u-section-1 .u-repeater-1 .u-image-5,
  .u-section-1 .u-repeater-1 .u-image-6 {
    height: 280px !important;
    max-height: 72vw;
    object-fit: cover;
  }
}

@media (max-width: 575px) {
  .u-section-1 .u-repeater-1 .u-image-1,
  .u-section-1 .u-repeater-1 .u-image-2,
  .u-section-1 .u-repeater-1 .u-image-3,
  .u-section-1 .u-repeater-1 .u-image-4,
  .u-section-1 .u-repeater-1 .u-image-5,
  .u-section-1 .u-repeater-1 .u-image-6 {
    height: 240px !important;
    max-height: 70vw;
  }
}

/* -------------------------------------------------------------------------- */
/* Product detail — products/*.php (Product-Details-Template)                 */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .u-section-1 .u-gallery-1 {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media (max-width: 767px) {
  .u-section-1 .u-gallery-1 {
    width: 100% !important;
    height: auto !important;
    min-height: 240px;
    box-sizing: border-box;
  }

  .u-section-1 .u-product-1 {
    min-height: auto !important;
  }

  .u-section-1 .u-sheet-1 {
    min-height: auto !important;
  }

  .u-section-1 .u-text-1,
  .u-section-1 .u-product-price-1,
  .u-section-1 .u-text-2,
  .u-section-1 .u-btn-1 {
    margin-right: 0 !important;
    max-width: 100%;
    box-sizing: border-box;
  }
}

@media (max-width: 575px) {
  .u-section-1 .u-gallery-1 {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Marketing / legacy PDP pages — stack gallery + text (section 2 product)    */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .u-section-2 .u-product-1 {
    min-height: auto !important;
    height: auto !important;
  }

  .u-section-2 .u-gallery-1 {
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 280px;
    margin-left: auto !important;
    margin-right: auto !important;
  }

  .u-section-2 .u-text-1,
  .u-section-2 .u-text-2,
  .u-section-2 .u-text-3,
  .u-section-2 .u-product-price-1,
  .u-section-2 .u-btn-1 {
    margin-left: 0 !important;
    margin-right: auto !important;
    margin-top: 1rem !important;
    width: 100% !important;
    max-width: 100% !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    box-sizing: border-box;
    padding-left: 1rem;
    padding-right: 1rem;
  }

  .u-section-2 .u-text-1 {
    margin-top: 1.25rem !important;
  }
}

@media (max-width: 575px) {
  .u-section-2 .u-text-1 {
    font-size: 1.65rem !important;
    line-height: 1.2 !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Desktop — home index vertical rhythm (scoped so hub/PDP pages unchanged)    */
/* -------------------------------------------------------------------------- */
@media (min-width: 992px) {
  body.vd-home .u-section-2 .u-layout-wrap-1 {
    margin-top: 36px !important;
    margin-bottom: 36px !important;
  }

  body.vd-home #sec-8b3c .u-list-1 {
    margin-top: 16px !important;
    margin-bottom: 16px !important;
  }

  body.vd-home .u-section-6 .u-layout-wrap-1 {
    margin-top: 28px !important;
    margin-bottom: 28px !important;
  }

  body.vd-home .u-section-6 .u-sheet-1 {
    min-height: 520px !important;
  }

  body.vd-home .u-section-8 .u-sheet-1 {
    min-height: 560px !important;
  }

  body.vd-home .u-section-2 .u-sheet-1 {
    min-height: 480px !important;
  }

  #carousel_9cab .u-sheet-1,
  #sec-rose-hero .u-sheet-1,
  #sec-tanjore-hero .u-sheet-1,
  #sec-garlands-hero .u-sheet-1 {
    min-height: 520px !important;
  }
}

/* Prevent horizontal spill from wide Nicepage blocks on small viewports */
@media (max-width: 767px) {
  .u-body .u-sheet,
  .u-body .u-sheet-1 {
    overflow-x: hidden;
  }
}

/* -------------------------------------------------------------------------- */
/* Home page — Visaka Divines (body.vd-home): typography, sections, CTAs      */
/* -------------------------------------------------------------------------- */
body.vd-home {
  font-family: "Poppins", "Open Sans", system-ui, sans-serif;
}

body.vd-home .vd-home-section-label {
  font-family: "Poppins", sans-serif;
  font-size: 0.75rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: #6b2d3c;
  margin: 0 0 0.5rem;
}

body.vd-home .vd-home-section-label--center {
  text-align: center;
}

body.vd-home .vd-home-section-label--on-dark {
  color: rgba(255, 255, 255, 0.92);
  text-shadow: 0 1px 2px rgba(0, 0, 0, 0.25);
}

body.vd-home .vd-home-inline-link {
  color: inherit;
  text-decoration: underline;
  text-underline-offset: 0.15em;
  font-weight: 600;
}

body.vd-home .vd-home-inline-link:hover {
  text-decoration-thickness: 2px;
}

/* Hero */
body.vd-home .vd-home-hero .u-text-1 {
  font-family: "Cormorant Garamond", "Times New Roman", serif;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: 0.02em;
}

body.vd-home .vd-home-hero-eyebrow {
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #4a3f38;
  margin: 0;
  max-width: 36rem;
}

body.vd-home .vd-home-hero-actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.75rem 1rem;
  max-width: 40rem;
}

body.vd-home .vd-home-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.35rem;
  padding: 0.75rem 1.35rem;
  font-family: "Poppins", sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  line-height: 1.2;
  text-decoration: none;
  border-radius: 999px;
  border: 2px solid transparent;
  transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
}

body.vd-home .vd-home-btn:focus-visible {
  outline: 2px solid #b8860b;
  outline-offset: 3px;
}

body.vd-home .vd-home-btn-primary {
  background: #6b2d3c;
  color: #fff;
  box-shadow: 0 4px 14px rgba(107, 45, 60, 0.35);
}

body.vd-home .vd-home-btn-primary:hover {
  background: #5a2633;
  color: #fff;
}

body.vd-home .vd-home-btn-secondary {
  background: rgba(255, 255, 255, 0.95);
  color: #3d2f28;
  border-color: rgba(107, 45, 60, 0.35);
}

body.vd-home .vd-home-btn-secondary:hover {
  border-color: #6b2d3c;
  background: #fff;
}

@media (min-width: 992px) {
  body.vd-home .vd-home-hero-actions {
    max-width: none;
  }
}

/* Mission */
body.vd-home .vd-home-mission-title {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.75rem, 3vw, 2.35rem);
  font-weight: 600;
  color: #3d2f28;
  margin: 0 0 0.75rem;
  line-height: 1.2;
}

body.vd-home .vd-home-mission-body {
  line-height: 1.65;
  max-width: 38rem;
}

body.vd-home .vd-home-mission-img {
  box-shadow: 0 12px 40px rgba(61, 47, 40, 0.18);
  border: 4px solid #fff;
}

body.vd-home .vd-home-mission-cta {
  border-radius: 999px !important;
  margin-top: 0.5rem;
}

/* Artisan band */
body.vd-home .vd-home-artisan {
  position: relative;
  background-size: cover !important;
  background-position: center !important;
}

body.vd-home .vd-home-artisan::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(250, 248, 245, 0.88) 0%, rgba(250, 248, 245, 0.72) 45%, rgba(107, 45, 60, 0.12) 100%);
  pointer-events: none;
}

body.vd-home .vd-home-artisan .u-sheet-1 {
  position: relative;
  z-index: 1;
  padding-top: 2.5rem;
  padding-bottom: 2.5rem;
}

body.vd-home .vd-home-artisan-title {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.6);
}

body.vd-home .vd-home-artisan-sub {
  font-family: "Poppins", sans-serif;
  font-size: 1.05rem;
  color: #4a3f38;
  margin: 0.5rem auto 0;
  max-width: 28rem;
  line-height: 1.5;
}

/* Product cards — two-column grid */
body.vd-home #sec-8b3c .u-list-1 {
  position: relative;
}

body.vd-home #sec-8b3c .u-gallery-nav {
  display: none !important;
}

body.vd-home #sec-8b3c .u-repeater-1 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.75rem 2rem;
  width: 100% !important;
  min-height: 0 !important;
}

body.vd-home #sec-8b3c .u-repeater-item {
  width: auto !important;
  flex: none !important;
}

body.vd-home #sec-8b3c .u-container-layout-1,
body.vd-home #sec-8b3c .u-container-layout-2 {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  padding: 1.25rem 1rem 1.5rem !important;
  background: #faf8f5;
  border-radius: 16px;
  box-shadow: 0 8px 28px rgba(61, 47, 40, 0.08);
  border: 1px solid rgba(107, 45, 60, 0.08);
  height: 100%;
  box-sizing: border-box;
}

body.vd-home #sec-8b3c .u-image-1,
body.vd-home #sec-8b3c .u-image-2 {
  border-radius: 12px !important;
  object-fit: cover;
  aspect-ratio: 4 / 3;
  width: 100% !important;
  height: auto !important;
  max-height: 280px;
}

body.vd-home .vd-home-products-heading {
  font-family: "Cormorant Garamond", serif;
  font-weight: 600;
  margin-top: 0.25rem !important;
}

body.vd-home .vd-home-products-lead {
  font-family: "Poppins", sans-serif;
  text-align: center;
  max-width: 40rem;
  margin: 0.75rem auto 1.5rem;
  color: #4a3f38;
  line-height: 1.6;
  font-size: 1rem;
}

body.vd-home .vd-home-card-title {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 1.35rem !important;
  font-weight: 600 !important;
  margin-top: 1rem !important;
  margin-bottom: 0.35rem !important;
}

body.vd-home .vd-home-card-desc {
  font-family: "Poppins", sans-serif;
  font-size: 0.9rem;
  line-height: 1.55;
  color: #5c524c;
  text-align: center;
  margin: 0 0 1rem;
  flex-grow: 1;
}

body.vd-home .vd-home-card-btn {
  margin-top: auto !important;
  align-self: center;
}

body.vd-home .vd-home-btn-icon {
  margin-left: 0.35rem;
}

@media (max-width: 767px) {
  body.vd-home #sec-8b3c .u-repeater-1 {
    grid-template-columns: 1fr;
    gap: 1.25rem;
  }
}

/* Custom garland CTA band */
body.vd-home .vd-home-cta-band {
  background-size: cover !important;
  background-position: center !important;
}

body.vd-home .vd-home-cta-card {
  box-shadow: 0 16px 48px rgba(61, 47, 40, 0.12) !important;
  border: 1px solid rgba(107, 45, 60, 0.08) !important;
}

body.vd-home .vd-home-cta-title {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 600 !important;
  font-size: clamp(1.5rem, 2.5vw, 2rem) !important;
  color: #3d2f28 !important;
  margin-top: 0.25rem !important;
}

body.vd-home .vd-home-cta-body {
  line-height: 1.65 !important;
  max-width: 40rem;
}

body.vd-home .vd-home-cta-btn {
  border-radius: 999px !important;
  text-transform: none !important;
  letter-spacing: 0.02em !important;
}

/* Values / three columns */
body.vd-home .vd-home-values {
  background: linear-gradient(180deg, #fff 0%, #faf8f5 100%);
}

body.vd-home .vd-home-values-heading {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 600 !important;
  max-width: 36rem;
  margin-left: auto !important;
  margin-right: auto !important;
  line-height: 1.25 !important;
}

body.vd-home .vd-home-value-cell .u-container-layout {
  padding: 1.25rem 1rem !important;
}

body.vd-home .vd-home-value-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.25rem;
  font-weight: 600;
  color: #6b2d3c;
  margin: 0 0 0.5rem;
  text-align: center;
}

body.vd-home .vd-home-value-text {
  line-height: 1.6 !important;
  color: #4a3f38 !important;
}

body.vd-home .vd-home-values-cta {
  border-radius: 999px !important;
  margin-top: 0.5rem !important;
}

/* Lotus + WhatsApp */
body.vd-home .vd-home-collab-title {
  font-family: "Cormorant Garamond", serif !important;
  font-weight: 600 !important;
  line-height: 1.2 !important;
}

body.vd-home .vd-home-collab-body {
  line-height: 1.65 !important;
  max-width: 32rem;
}

body.vd-home .vd-home-wa-link {
  display: inline-block;
  margin-top: 0.5rem;
  border-radius: 12px;
  overflow: hidden;
  box-shadow: 0 8px 24px rgba(37, 211, 102, 0.2);
  transition: box-shadow 0.2s ease, transform 0.2s ease;
}

body.vd-home .vd-home-wa-link:hover {
  box-shadow: 0 12px 32px rgba(37, 211, 102, 0.28);
  transform: translateY(-2px);
}

body.vd-home .vd-home-wa-link:focus-visible {
  outline: 2px solid #25d366;
  outline-offset: 4px;
}

body.vd-home .vd-home-wa-link img {
  display: block;
  max-width: min(100%, 380px);
  height: auto;
}

/* Testimonials */
body.vd-home .vd-home-testimonials {
  position: relative;
  background-size: cover !important;
  background-position: center !important;
}

body.vd-home .vd-home-testimonials::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(160deg, rgba(61, 47, 40, 0.55) 0%, rgba(107, 45, 60, 0.45) 100%);
  pointer-events: none;
}

body.vd-home .vd-home-testimonials .u-sheet-1 {
  position: relative;
  z-index: 1;
}

body.vd-home .vd-home-testimonials-heading {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.65rem, 3vw, 2.25rem);
  font-weight: 600;
  color: #fff;
  text-align: center;
  margin: 0.25rem 0 1.5rem;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.25);
}

body.vd-home .vd-home-testimonials .u-layout-cell-1,
body.vd-home .vd-home-testimonials .u-layout-cell-4,
body.vd-home .vd-home-testimonials .u-layout-cell-5 {
  box-shadow: 0 12px 36px rgba(0, 0, 0, 0.12);
  border: 1px solid rgba(255, 255, 255, 0.65) !important;
}

body.vd-home .vd-home-testimonials .u-text-1,
body.vd-home .vd-home-testimonials .u-text-3,
body.vd-home .vd-home-testimonials .u-text-5 {
  font-family: "Poppins", sans-serif !important;
  font-style: italic;
  color: #4a3f38 !important;
  line-height: 1.55 !important;
}

/* Contact form block */
body.vd-home .vd-home-contact {
  background: linear-gradient(180deg, #faf8f5 0%, #fff 55%);
}

body.vd-home .vd-home-contact-heading {
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.65rem, 3vw, 2.1rem);
  font-weight: 600;
  text-align: center;
  color: #3d2f28;
  margin: 0.25rem 0 0.5rem;
}

body.vd-home .vd-home-contact-lead {
  font-family: "Poppins", sans-serif;
  text-align: center;
  max-width: 32rem;
  margin: 0 auto 1.25rem;
  color: #5c524c;
  line-height: 1.55;
  font-size: 0.975rem;
}

body.vd-home .vd-home-contact .u-form-1 {
  box-shadow: 0 16px 48px rgba(61, 47, 40, 0.1) !important;
  border: 1px solid rgba(107, 45, 60, 0.08) !important;
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
}

body.vd-home .vd-home-contact .u-form-1 .u-label {
  font-family: "Poppins", sans-serif;
  font-weight: 500;
}

body.vd-home .vd-home-contact .u-field-label a {
  color: #6b2d3c;
  font-weight: 600;
  text-underline-offset: 0.12em;
}

body.vd-home .vd-home-contact .u-field-label a:hover {
  text-decoration-thickness: 2px;
}

body.vd-home .vd-home-contact .u-btn-submit {
  border-radius: 999px !important;
  font-family: "Poppins", sans-serif !important;
  font-weight: 600 !important;
}

/* Fixed social bar — TikTok SVG contrast */
body.vd-home #sec-7e5c .icon-bar .tiktok svg {
  width: 1.15em;
  height: 1.15em;
  fill: currentColor;
  vertical-align: middle;
}

/* ==========================================================================
 * HOME V2 — Index revamp + site-wide mobile polish (Apr 2026)
 * Scoped via body.vd-home where risk of bleed exists; header/footer fixes
 * are global on purpose so every page benefits.
 * ========================================================================== */

/* -------------------------------------------------------------------------- */
/* Global — prevent viewport overflow on narrow viewports only. Avoid forcing */
/* overflow on desktop because Nicepage uses off-canvas menu panels that need */
/* to scroll horizontally during open/close transitions.                      */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  html, body { overflow-x: hidden; }
}

/* Respect notches on mobile browsers */
@supports (padding: max(0px)) {
  @media (max-width: 991px) {
    body.vd-home section {
      padding-left: max(0px, env(safe-area-inset-left));
      padding-right: max(0px, env(safe-area-inset-right));
    }
  }
}

/* -------------------------------------------------------------------------- */
/* Header — mobile hamburger alignment + readable dropdown                    */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .u-header .u-sheet-1 {
    padding-left: 16px !important;
    padding-right: 16px !important;
    min-height: 64px !important;
  }
  .u-header .u-logo .u-logo-image-1 {
    max-height: 44px !important;
    width: auto !important;
  }
  .u-header .u-hamburger-link {
    min-width: 44px;
    min-height: 44px;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
  }
  .u-header .u-nav-3 .u-nav-link {
    padding: 14px 20px !important;
    font-size: 1rem !important;
    letter-spacing: 0.02em;
  }
}

/* -------------------------------------------------------------------------- */
/* Footer — readable 3-column → stacked; tap-friendly links                   */
/* -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  .u-footer .u-sheet-1 {
    padding: 28px 20px !important;
  }
  .u-footer .u-layout-row {
    display: block !important;
  }
  .u-footer .u-layout-cell-1,
  .u-footer .u-layout-cell-2,
  .u-footer .u-layout-cell-3 {
    width: 100% !important;
    min-width: 0 !important;
    padding: 14px 0 !important;
  }
  .u-footer .u-container-layout {
    padding: 0 !important;
  }
  .u-footer .u-text-1,
  .u-footer .u-text-6,
  .u-footer .u-text-10 {
    margin-bottom: 10px !important;
  }
  .u-footer .u-button-link {
    padding: 6px 0 !important;
    display: inline-block !important;
    min-height: 32px;
  }
  .u-footer .u-social-icons {
    justify-content: center !important;
    margin-top: 18px !important;
  }
  .u-footer .u-logo {
    margin-left: auto !important;
    margin-right: auto !important;
    display: block !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Home hero — trust row directly under CTAs                                  */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-trust-row {
  list-style: none;
  padding: 18px 0 0;
  display: flex;
  flex-wrap: wrap;
  gap: 12px 28px;
  margin: 22px 0 0;
  border-top: 1px solid rgba(74, 63, 56, 0.18);
  max-width: 42rem;
  opacity: 1 !important;
  transform: none !important;
}

body.vd-home .vd-home-trust-item {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #3d2f28;
  line-height: 1.3;
}

body.vd-home .vd-home-trust-item svg {
  width: 18px;
  height: 18px;
  flex: none;
  color: #6b2d3c;
}

body.vd-home .vd-home-trust-item strong {
  font-weight: 700;
}

@media (max-width: 767px) {
  body.vd-home .vd-home-trust-row {
    gap: 10px 18px;
    margin-top: 18px;
    padding-top: 14px;
    justify-content: center;
  }
  body.vd-home .vd-home-trust-item {
    font-size: 0.75rem;
  }
}

@media (max-width: 575px) {
  body.vd-home .vd-home-hero-actions {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
    margin-top: 1rem !important;
  }
  body.vd-home .vd-home-btn {
    width: 100%;
    justify-content: center;
  }
}

/* -------------------------------------------------------------------------- */
/* Mission — framed image, refined rhythm, mobile stack                       */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-mission-img {
  max-width: 320px;
  margin: 0 auto;
  display: block;
}

@media (max-width: 991px) {
  body.vd-home .vd-home-mission .u-layout-row {
    display: flex !important;
    flex-direction: column !important;
  }
  body.vd-home .vd-home-mission .u-layout-cell-1,
  body.vd-home .vd-home-mission .u-layout-cell-2 {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 20px !important;
  }
  body.vd-home .vd-home-mission .u-container-layout-1,
  body.vd-home .vd-home-mission .u-container-layout-2 {
    padding: 18px 0 !important;
    text-align: center;
  }
  body.vd-home .vd-home-mission-img {
    max-width: 260px;
  }
  body.vd-home .vd-home-mission-body {
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.vd-home .vd-home-mission-cta {
    margin-left: auto !important;
    margin-right: auto !important;
    display: inline-block;
  }
}

/* -------------------------------------------------------------------------- */
/* Artisan band — decorative divider + richer subtitle                        */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-artisan .u-sheet-1 {
  padding-top: 3rem !important;
  padding-bottom: 3rem !important;
}

body.vd-home .vd-home-artisan-title {
  position: relative;
  padding-bottom: 0.75rem;
  margin-bottom: 0.5rem !important;
}

body.vd-home .vd-home-artisan-title::after {
  content: "";
  display: block;
  width: 56px;
  height: 2px;
  margin: 0.9rem auto 0;
  background: linear-gradient(90deg, transparent, #b8860b 30%, #b8860b 70%, transparent);
}

body.vd-home .vd-home-artisan-sub {
  font-style: italic;
  color: #4a3f38;
}

@media (max-width: 575px) {
  body.vd-home .vd-home-artisan .u-sheet-1 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  body.vd-home .vd-home-artisan-title {
    font-size: 1.6rem !important;
  }
  body.vd-home .vd-home-artisan-sub {
    font-size: 0.95rem;
    padding: 0 1rem;
  }
}

/* -------------------------------------------------------------------------- */
/* Product cards — richer cards, gold accent on Tanjore                       */
/* -------------------------------------------------------------------------- */
body.vd-home #sec-8b3c .u-container-layout-1,
body.vd-home #sec-8b3c .u-container-layout-2 {
  padding: 1.5rem 1.25rem 1.75rem !important;
  border: 1px solid rgba(107, 45, 60, 0.1);
  transition: transform 0.25s ease, box-shadow 0.25s ease;
}

body.vd-home #sec-8b3c .u-list-item:hover .u-container-layout-1,
body.vd-home #sec-8b3c .u-list-item:hover .u-container-layout-2 {
  transform: translateY(-4px);
  box-shadow: 0 16px 40px rgba(61, 47, 40, 0.14);
}

body.vd-home #sec-8b3c .u-container-layout-2 {
  background: linear-gradient(180deg, #fbf6ee 0%, #faf8f5 100%) !important;
}

body.vd-home #sec-8b3c .u-container-layout-2::before {
  content: "";
  display: block;
  width: 44px;
  height: 2px;
  margin: 0 auto 0.75rem;
  background: linear-gradient(90deg, transparent, #b8860b, transparent);
  order: -1;
}

body.vd-home .vd-home-card-btn {
  padding: 0.7rem 1.35rem !important;
  font-family: "Poppins", sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.9rem !important;
  letter-spacing: 0.02em !important;
  border-radius: 999px !important;
  transition: background-color 0.2s ease, color 0.2s ease, transform 0.2s ease;
}

body.vd-home .vd-home-card-btn:hover {
  transform: translateY(-1px);
}

@media (max-width: 575px) {
  body.vd-home #sec-8b3c .u-sheet-1 {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
  body.vd-home #sec-8b3c .u-repeater-1 {
    gap: 1rem !important;
  }
  body.vd-home #sec-8b3c .u-image-1,
  body.vd-home #sec-8b3c .u-image-2 {
    max-height: 220px;
  }
  body.vd-home .vd-home-card-title {
    font-size: 1.2rem !important;
  }
  body.vd-home .vd-home-card-desc {
    font-size: 0.875rem;
  }
}

/* -------------------------------------------------------------------------- */
/* CTA band — custom garland card mobile tuning                               */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-cta-card {
  padding: 1.75rem 1.5rem !important;
  max-width: 520px;
}

body.vd-home .vd-home-cta-card .u-container-layout-1 {
  padding: 0 !important;
}

@media (max-width: 767px) {
  body.vd-home .vd-home-cta-band .u-sheet-1 {
    padding: 2.5rem 1rem !important;
    min-height: auto !important;
  }
  body.vd-home .vd-home-cta-card {
    margin: 0 auto !important;
    width: 100% !important;
    max-width: 100% !important;
    padding: 1.5rem 1.25rem !important;
  }
  body.vd-home .vd-home-cta-title {
    font-size: 1.4rem !important;
    line-height: 1.3 !important;
  }
  body.vd-home .vd-home-cta-body {
    font-size: 0.95rem;
    line-height: 1.55 !important;
  }
  body.vd-home .vd-home-cta-btn {
    display: inline-block;
    width: 100%;
    text-align: center;
  }
}

/* -------------------------------------------------------------------------- */
/* Values — numbered accents via CSS, equal heights, mobile stack             */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-values .u-sheet-1 {
  padding-top: 3.5rem !important;
  padding-bottom: 3.5rem !important;
}

body.vd-home .vd-home-value-cell {
  position: relative;
  background: #fff;
  border-radius: 18px;
  border: 1px solid rgba(107, 45, 60, 0.08);
  box-shadow: 0 8px 28px rgba(61, 47, 40, 0.06);
  margin: 0 12px;
  overflow: hidden;
}

body.vd-home .vd-home-value-cell::before {
  counter-increment: vd-value;
  content: "0" counter(vd-value);
  position: absolute;
  top: 14px;
  right: 18px;
  font-family: "Cormorant Garamond", serif;
  font-size: 2rem;
  font-weight: 700;
  line-height: 1;
  color: rgba(107, 45, 60, 0.12);
  pointer-events: none;
}

body.vd-home .vd-home-values-grid {
  counter-reset: vd-value;
}

body.vd-home .vd-home-value-cell .u-container-layout {
  padding: 1.75rem 1.25rem !important;
  text-align: left !important;
}

body.vd-home .vd-home-value-title {
  text-align: left !important;
  font-size: 1.3rem !important;
  color: #3d2f28 !important;
  position: relative;
  padding-bottom: 0.55rem;
  margin-bottom: 0.75rem !important;
}

body.vd-home .vd-home-value-title::after {
  content: "";
  display: block;
  width: 32px;
  height: 2px;
  background: #b8860b;
  margin-top: 0.5rem;
}

body.vd-home .vd-home-value-text {
  text-align: left !important;
  font-size: 0.95rem !important;
}

@media (max-width: 991px) {
  body.vd-home .vd-home-values .u-layout-row {
    display: flex !important;
    flex-direction: column !important;
    gap: 14px;
  }
  body.vd-home .vd-home-value-cell {
    width: 100% !important;
    min-width: 0 !important;
    margin: 0 !important;
  }
}

@media (max-width: 575px) {
  body.vd-home .vd-home-values .u-sheet-1 {
    padding: 2.5rem 1rem !important;
  }
  body.vd-home .vd-home-values-heading {
    font-size: 1.55rem !important;
  }
  body.vd-home .vd-home-value-cell::before {
    font-size: 1.55rem;
    top: 12px;
    right: 14px;
  }
  body.vd-home .vd-home-value-cell .u-container-layout {
    padding: 1.4rem 1.1rem !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Collab / WhatsApp — hide Nicepage decorative shapes on mobile, tighten     */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-collab .u-shape-1,
body.vd-home .vd-home-collab .u-shape-2 {
  opacity: 0.5;
}

@media (max-width: 991px) {
  body.vd-home .vd-home-collab .u-layout-row {
    display: flex !important;
    flex-direction: column !important;
  }
  body.vd-home .vd-home-collab .u-layout-cell-1,
  body.vd-home .vd-home-collab .u-layout-cell-2 {
    width: 100% !important;
    min-width: 0 !important;
    padding: 0 20px !important;
  }
  body.vd-home .vd-home-collab .u-layout-cell-1 .u-container-layout {
    min-height: 220px !important;
    padding: 1rem !important;
  }
  body.vd-home .vd-home-collab .u-image-1 {
    max-width: 220px !important;
    margin: 0 auto !important;
  }
  body.vd-home .vd-home-collab .u-container-layout-2 {
    padding: 1.25rem 1rem 2rem !important;
    text-align: center;
  }
  body.vd-home .vd-home-collab-title,
  body.vd-home .vd-home-collab-body {
    text-align: center !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body.vd-home .vd-home-collab .vd-home-section-label {
    text-align: center;
  }
  body.vd-home .vd-home-collab .u-shape-1,
  body.vd-home .vd-home-collab .u-shape-2 {
    display: none !important;
  }
}

@media (max-width: 575px) {
  body.vd-home .vd-home-collab-title {
    font-size: 1.5rem !important;
  }
  body.vd-home .vd-home-wa-link img {
    max-width: 260px;
  }
}

/* -------------------------------------------------------------------------- */
/* Testimonials — clean 3-card grid (replaces broken staggered layout)        */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-testimonials .u-sheet-1 {
  padding: 3.5rem 1.5rem !important;
  min-height: auto !important;
}

body.vd-home .vd-home-testimonials .u-shape-1 {
  display: none !important;
}

body.vd-home .vd-testimonial-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  max-width: 1100px;
  margin: 1.5rem auto 0;
  opacity: 1 !important;
  transform: none !important;
}

body.vd-home .vd-testimonial-card {
  opacity: 1 !important;
  transform: none !important;
}

body.vd-home .vd-testimonial-card {
  background: rgba(255, 255, 255, 0.98);
  border-radius: 18px;
  border: 1px solid rgba(255, 255, 255, 0.75);
  box-shadow: 0 14px 40px rgba(0, 0, 0, 0.16);
  padding: 1.75rem 1.5rem 1.5rem;
  display: flex;
  flex-direction: column;
  position: relative;
}

body.vd-home .vd-testimonial-card::before {
  content: "\201C";
  position: absolute;
  top: 6px;
  left: 18px;
  font-family: "Cormorant Garamond", serif;
  font-size: 4.5rem;
  line-height: 1;
  color: rgba(184, 134, 11, 0.22);
  pointer-events: none;
}

body.vd-home .vd-testimonial-quote {
  font-family: "Poppins", sans-serif;
  font-style: italic;
  font-size: 0.975rem;
  line-height: 1.6;
  color: #3d2f28;
  margin: 0 0 1.25rem;
  flex-grow: 1;
  position: relative;
  z-index: 1;
}

body.vd-home .vd-testimonial-meta {
  display: flex;
  align-items: center;
  gap: 12px;
  padding-top: 1rem;
  border-top: 1px solid rgba(107, 45, 60, 0.12);
}

body.vd-home .vd-testimonial-avatar {
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: linear-gradient(135deg, #6b2d3c, #8a3a4d);
  color: #fff;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: "Cormorant Garamond", serif;
  font-size: 1.2rem;
  font-weight: 700;
  flex: none;
}

body.vd-home .vd-testimonial-name {
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-size: 0.925rem;
  color: #3d2f28;
  line-height: 1.2;
  margin: 0;
}

body.vd-home .vd-testimonial-date {
  font-family: "Poppins", sans-serif;
  font-size: 0.75rem;
  color: #7a6e66;
  margin: 2px 0 0;
}

body.vd-home .vd-testimonial-stars {
  display: flex;
  gap: 2px;
  margin-bottom: 0.75rem;
}

body.vd-home .vd-testimonial-stars svg {
  width: 15px;
  height: 15px;
  fill: #b8860b;
}

@media (max-width: 991px) {
  body.vd-home .vd-testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    max-width: 680px;
  }
}

@media (max-width: 640px) {
  body.vd-home .vd-testimonial-grid {
    grid-template-columns: 1fr;
    gap: 1rem;
    max-width: 480px;
  }
  body.vd-home .vd-testimonial-card {
    padding: 1.5rem 1.25rem 1.25rem;
  }
  body.vd-home .vd-home-testimonials .u-sheet-1 {
    padding: 2.5rem 1rem !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Contact form — hide Nicepage shapes on mobile; polish inputs               */
/* -------------------------------------------------------------------------- */
body.vd-home .vd-home-contact .u-form-1 .u-input {
  padding: 12px 14px !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.95rem !important;
  background: #fff !important;
  color: #3d2f28 !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.vd-home .vd-home-contact .u-form-1 .u-input:focus {
  outline: none !important;
  border-color: #6b2d3c !important;
  box-shadow: 0 0 0 3px rgba(107, 45, 60, 0.12) !important;
}

body.vd-home .vd-home-contact .u-form-1 .u-btn-submit {
  padding: 12px 28px !important;
  letter-spacing: 0.02em;
}

@media (max-width: 767px) {
  body.vd-home .vd-home-contact .u-shape-1,
  body.vd-home .vd-home-contact .u-shape-2,
  body.vd-home .vd-home-contact .u-image-1 {
    display: none !important;
  }
  body.vd-home .vd-home-contact .u-sheet-1 {
    padding: 2.5rem 1rem !important;
    min-height: auto !important;
  }
  body.vd-home .vd-home-contact .u-form-1 {
    width: 100% !important;
    max-width: 100% !important;
  }
  body.vd-home .vd-home-contact .u-form-1 .u-inner-form {
    padding: 22px !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Fixed social rail — constrain on desktop, hide on small viewports          */
/* -------------------------------------------------------------------------- */
body.vd-home #sec-7e5c {
  position: relative;
  padding: 0 !important;
  min-height: 0 !important;
}

body.vd-home #sec-7e5c .icon-bar {
  left: 0;
  z-index: 40;
  box-shadow: 2px 0 10px rgba(0, 0, 0, 0.15);
  border-radius: 0 8px 8px 0;
  overflow: hidden;
}

body.vd-home #sec-7e5c .icon-bar a {
  padding: 12px !important;
  font-size: 1rem !important;
  min-width: 40px;
  min-height: 40px;
  display: flex !important;
  align-items: center;
  justify-content: center;
}

@media (max-width: 991px) {
  body.vd-home #sec-7e5c .icon-bar {
    display: none !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Home — section vertical rhythm re-balance for mobile                       */
/* -------------------------------------------------------------------------- */
@media (max-width: 767px) {
  body.vd-home section:not(.vd-home-hero) .u-sheet-1 {
    padding-top: 2.25rem !important;
    padding-bottom: 2.25rem !important;
  }
  body.vd-home .vd-home-section-label {
    font-size: 0.7rem;
  }
  body.vd-home .vd-home-products-heading,
  body.vd-home .vd-home-values-heading,
  body.vd-home .vd-home-testimonials-heading,
  body.vd-home .vd-home-contact-heading {
    font-size: 1.55rem !important;
    line-height: 1.22 !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Hub / category pages — generic mobile guard-rails                          */
/* Covers Visaka-Garlands, Visaka-Tanjore-Paintings-USA, Visaka-Floral-        */
/* Collection, Visaka-Garland-Products, etc.                                  */
/* -------------------------------------------------------------------------- */
@media (max-width: 991px) {
  .u-body:not(.vd-home) .u-layout-row > .u-layout-cell {
    width: 100% !important;
    min-width: 0 !important;
  }
  .u-body:not(.vd-home) .u-image.u-image-contain,
  .u-body:not(.vd-home) .u-image.u-image-round {
    max-width: 100% !important;
    height: auto !important;
  }
  .u-body:not(.vd-home) .u-container-layout {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

@media (max-width: 767px) {
  .u-body:not(.vd-home) .u-section-1 .u-sheet-1,
  .u-body:not(.vd-home) .u-section-2 .u-sheet-1,
  .u-body:not(.vd-home) .u-section-3 .u-sheet-1 {
    min-height: auto !important;
  }
  /* Hub hero text full-width on mobile */
  .u-body:not(.vd-home) .u-section-1 .u-text-1 {
    font-size: clamp(1.6rem, 6vw, 2rem) !important;
    line-height: 1.2 !important;
  }
  .u-body:not(.vd-home) .u-section-1 .u-text-2 {
    font-size: 0.95rem !important;
    line-height: 1.55 !important;
  }
}

/* -------------------------------------------------------------------------- */
/* Reduced-motion                                                             */
/* -------------------------------------------------------------------------- */
@media (prefers-reduced-motion: reduce) {
  body.vd-home *,
  body.vd-home *::before,
  body.vd-home *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ==========================================================================
 * SHARED PRODUCT COLLECTION GRID — used on Visaka Garlands + Tanjore hubs.
 * Applied via `body.vd-product-collection`; page-specific accents live below
 * (see `body.vd-tanjore-hub` overrides).
 * ========================================================================== */
body.vd-product-collection .vd-garlands-grid-section {
  padding: 72px 24px 56px;
  background: #fbf7f2;
}

body.vd-product-collection .vd-garlands-grid-sheet {
  max-width: 1180px;
  margin: 0 auto;
}

body.vd-product-collection .vd-garlands-grid-head {
  text-align: center;
  max-width: 720px;
  margin: 0 auto 2.5rem;
}

body.vd-product-collection .vd-garlands-grid-eyebrow {
  display: inline-block;
  margin: 0 0 0.65rem;
  padding: 0.3rem 0.9rem;
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #6b2b3a;
  background: rgba(141, 44, 63, 0.08);
  border-radius: 999px;
}

body.vd-product-collection .vd-garlands-grid-title {
  margin: 0 0 0.75rem;
  font-family: "Montserrat", "Raleway", sans-serif;
  font-weight: 700;
  font-size: clamp(1.65rem, 3.6vw, 2.35rem);
  line-height: 1.2;
  color: #6b2b3a;
}

body.vd-product-collection .vd-garlands-grid-lede {
  margin: 0;
  font-size: 1rem;
  line-height: 1.65;
  color: #4a3f38;
}

body.vd-product-collection .vd-garland-grid {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 1.75rem;
}

body.vd-product-collection .vd-garland-card {
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border: 1px solid rgba(74, 63, 56, 0.08);
  border-radius: 14px;
  overflow: hidden;
  box-shadow: 0 2px 10px rgba(31, 20, 12, 0.04);
  transition: transform 0.25s ease, box-shadow 0.25s ease, border-color 0.25s ease;
  height: 100%;
}

body.vd-product-collection .vd-garland-card:hover,
body.vd-product-collection .vd-garland-card:focus-within {
  transform: translateY(-3px);
  box-shadow: 0 14px 28px rgba(31, 20, 12, 0.10);
  border-color: rgba(141, 44, 63, 0.25);
}

body.vd-product-collection .vd-garland-card-media {
  display: block;
  width: 100%;
  aspect-ratio: 4 / 3;
  background: #f1ece6 center / cover no-repeat;
  overflow: hidden;
  position: relative;
}

@supports not (aspect-ratio: 4 / 3) {
  body.vd-product-collection .vd-garland-card-media {
    padding-top: 75%;
    height: 0;
  }
  body.vd-product-collection .vd-garland-card-media img {
    position: absolute;
    inset: 0;
  }
}

body.vd-product-collection .vd-garland-card-media img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform 0.45s ease;
}

body.vd-product-collection .vd-garland-card:hover .vd-garland-card-media img,
body.vd-product-collection .vd-garland-card:focus-within .vd-garland-card-media img {
  transform: scale(1.05);
}

body.vd-product-collection .vd-garland-card-body {
  padding: 1.1rem 1.2rem 1.3rem;
  display: flex;
  flex-direction: column;
  gap: 0.55rem;
  flex: 1;
}

body.vd-product-collection .vd-garland-card-title {
  margin: 0;
  font-family: "Montserrat", "Raleway", sans-serif;
  font-weight: 700;
  font-size: 1.08rem;
  line-height: 1.3;
  color: #3a1e25;
}

body.vd-product-collection .vd-garland-card-title a {
  color: inherit;
  text-decoration: none;
  background-image: linear-gradient(currentColor, currentColor);
  background-size: 0 1px;
  background-repeat: no-repeat;
  background-position: 0 100%;
  transition: background-size 0.3s ease;
}

body.vd-product-collection .vd-garland-card-title a:hover,
body.vd-product-collection .vd-garland-card-title a:focus {
  background-size: 100% 1px;
}

body.vd-product-collection .vd-garland-card-desc {
  margin: 0;
  font-size: 0.92rem;
  line-height: 1.55;
  color: #5a4a42;
  flex: 1;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

body.vd-product-collection .vd-garland-card-cta {
  align-self: flex-start;
  margin-top: 0.25rem;
  padding: 0.5rem 0;
  font-size: 0.9rem;
  font-weight: 600;
  color: #8d2c3f;
  text-decoration: none;
  letter-spacing: 0.01em;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
}

body.vd-product-collection .vd-garland-card-cta span {
  transition: transform 0.25s ease;
}

body.vd-product-collection .vd-garland-card-cta:hover span,
body.vd-product-collection .vd-garland-card-cta:focus span {
  transform: translateX(4px);
}

body.vd-product-collection .vd-garland-card-cta:focus {
  outline: 2px solid rgba(141, 44, 63, 0.5);
  outline-offset: 3px;
  border-radius: 2px;
}

body.vd-product-collection .vd-garlands-grid-footnote {
  margin: 2.5rem auto 0;
  max-width: 720px;
  text-align: center;
  font-size: 0.95rem;
  color: #5a4a42;
  line-height: 1.6;
}

body.vd-product-collection .vd-garlands-grid-footnote a {
  color: #8d2c3f;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

@media (max-width: 767px) {
  body.vd-product-collection .vd-garlands-grid-section {
    padding: 48px 16px 40px;
  }
  body.vd-product-collection .vd-garland-grid {
    gap: 1.25rem;
    grid-template-columns: repeat(auto-fill, minmax(240px, 1fr));
  }
  body.vd-product-collection .vd-garland-card-body {
    padding: 0.95rem 1rem 1.1rem;
  }
  body.vd-product-collection .vd-garlands-grid-footnote {
    margin-top: 1.75rem;
  }
}

@media (max-width: 479px) {
  body.vd-product-collection .vd-garland-grid {
    grid-template-columns: 1fr;
  }
}

/* --------------------------------------------------------------------------
 * TANJORE HUB — deeper, gold-accented palette.
 * Inherits all product-card structure; only tones are re-tinted here.
 * -------------------------------------------------------------------------- */
body.vd-tanjore-hub .vd-garlands-grid-section {
  background: #fbf6ec;
}

body.vd-tanjore-hub .vd-garlands-grid-eyebrow {
  color: #8a6317;
  background: rgba(166, 124, 44, 0.12);
}

body.vd-tanjore-hub .vd-garlands-grid-title {
  color: #3a2410;
}

body.vd-tanjore-hub .vd-garland-card {
  border-color: rgba(166, 124, 44, 0.18);
}

body.vd-tanjore-hub .vd-garland-card:hover,
body.vd-tanjore-hub .vd-garland-card:focus-within {
  border-color: rgba(166, 124, 44, 0.45);
  box-shadow: 0 14px 28px rgba(74, 50, 14, 0.12);
}

body.vd-tanjore-hub .vd-garland-card-media {
  background: #f0e7d3 center / cover no-repeat;
}

/* Tanjore cards frame the image (contain) rather than crop — paintings are
 * rectangular artworks and shouldn't be clipped. */
body.vd-tanjore-hub .vd-garland-card-media img {
  object-fit: cover;
}

body.vd-tanjore-hub .vd-garland-card-title {
  color: #2a1a08;
}

body.vd-tanjore-hub .vd-garland-card-cta,
body.vd-tanjore-hub .vd-garlands-grid-footnote a {
  color: #a67c2c;
}

body.vd-tanjore-hub .vd-garland-card-cta:focus {
  outline-color: rgba(166, 124, 44, 0.5);
}

/* Subtle gold top-edge on each Tanjore card for a framed-art feel. */
body.vd-tanjore-hub .vd-garland-card::before {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(90deg, #d4a949 0%, #a67c2c 50%, #d4a949 100%);
}

/* ==========================================================================
 * V3 REVAMP (Apr 2026) — hero desktop rebuild, bigger product cards,
 * modern header/nav, fat footer. Appended last so it wins specificity battles
 * against nicepage.css / index.css without needing !important spam everywhere.
 * ========================================================================== */

/* --------------------------------------------------------------------------
 * HERO V3 — Nicepage's generated index.css applies huge negative margins
 * (e.g. margin-top: -609px; margin-right: 763px) to squeeze the H1 into a
 * narrow column overlapping a decorative shape. That collapses the hero copy
 * into a broken, stacked-on-top-of-itself look on real desktop viewports.
 * Below we reset those to a clean single flex column, give it a soft backdrop
 * panel, and let the hero breathe.
 * -------------------------------------------------------------------------- */
@media (min-width: 992px) {
  body.vd-home #carousel_9cab.u-section-1 {
    background-size: cover !important;
    background-position: center 30% !important;
    min-height: clamp(28rem, 62vh, 40rem);
    padding: 0;
  }

  body.vd-home #carousel_9cab .u-sheet-1 {
    position: relative;
    min-height: clamp(28rem, 62vh, 40rem) !important;
    max-width: 1180px;
    margin: 0 auto;
    padding: 3.5rem 2rem;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 1rem;
  }

  /* Reposition the decorative rounded panel into a soft backdrop behind the
   * copy column — it used to free-float. Now it anchors the text. Uses
   * top/bottom anchoring so the panel auto-sizes to fit the copy column. */
  body.vd-home #carousel_9cab .u-shape-1 {
    position: absolute !important;
    left: 1.25rem !important;
    right: auto !important;
    top: 2rem !important;
    bottom: 2rem !important;
    transform: none !important;
    width: min(680px, 66%) !important;
    height: auto !important;
    margin: 0 !important;
    border-radius: 18px !important;
    background: rgba(255, 250, 244, 0.94) !important;
    box-shadow: 0 18px 60px rgba(61, 47, 40, 0.18) !important;
    z-index: 0 !important;
    pointer-events: none;
  }

  /* Reset Nicepage's absolute negative-margin positioning for the headline
   * group. All hero copy elements become flow-positioned inside .u-sheet-1. */
  body.vd-home #carousel_9cab .vd-home-hero-eyebrow,
  body.vd-home #carousel_9cab .u-text-1,
  body.vd-home #carousel_9cab .u-text-2,
  body.vd-home #carousel_9cab .vd-home-hero-actions,
  body.vd-home #carousel_9cab .vd-home-trust-row {
    position: relative !important;
    z-index: 1 !important;
    margin: 0 !important;
    max-width: min(620px, 62%) !important;
    width: auto !important;
    padding: 0 1.75rem !important;
    box-sizing: border-box;
  }

  body.vd-home #carousel_9cab .vd-home-hero-eyebrow {
    margin: 0 0 0.35rem 0 !important;
    padding-top: 0.5rem !important;
  }

  body.vd-home #carousel_9cab .u-text-1 {
    font-size: clamp(2rem, 3.4vw, 3rem) !important;
    line-height: 1.12 !important;
    margin-bottom: 0.85rem !important;
  }

  body.vd-home #carousel_9cab .u-text-2 {
    font-size: 1.0625rem !important;
    line-height: 1.65 !important;
    margin-bottom: 1.25rem !important;
  }

  body.vd-home #carousel_9cab .vd-home-hero-actions {
    margin-bottom: 1.25rem !important;
    max-width: min(620px, 62%) !important;
    flex-wrap: wrap;
  }

  body.vd-home #carousel_9cab .vd-home-hero-actions .vd-home-btn {
    flex: 0 1 auto;
    white-space: nowrap;
  }

  body.vd-home #carousel_9cab .vd-home-trust-row {
    margin-top: 0.25rem !important;
    padding-bottom: 0.5rem !important;
  }
}

/* Very wide viewports — don't let the copy column hug the left edge. */
@media (min-width: 1400px) {
  body.vd-home #carousel_9cab .u-sheet-1 {
    padding-left: 3.5rem;
  }
  body.vd-home #carousel_9cab .u-shape-1 {
    left: 2.5rem !important;
  }
}

/* Animation safety net — Nicepage's customAnimationIn sets opacity:0 initially
 * and relies on JS to reveal. If that JS is delayed/blocked, the hero copy
 * disappears. Force opacity:1 on all hero content elements. Do NOT force
 * transform:none on cards — they have :hover transforms we want to keep. */
body.vd-home #carousel_9cab .vd-home-hero-eyebrow,
body.vd-home #carousel_9cab .u-text-1,
body.vd-home #carousel_9cab .u-text-2,
body.vd-home #carousel_9cab .vd-home-hero-actions,
body.vd-home #carousel_9cab .vd-home-hero-actions a,
body.vd-home #carousel_9cab .vd-home-trust-row,
body.vd-home #carousel_9cab .vd-home-trust-item {
  opacity: 1 !important;
  transform: none !important;
  visibility: visible !important;
}

body.vd-home .u-section-4 .u-list-item,
body.vd-home .u-section-4 .u-image-1,
body.vd-home .u-section-4 .u-image-2 {
  opacity: 1 !important;
  visibility: visible !important;
}

/* --------------------------------------------------------------------------
 * HOME PRODUCT CARDS V2 — section 4 ("Visaka Garlands & Tanjore Paintings").
 * Previously rendered as tiny 253x168 fixed images inside narrow cards.
 * Now: full-width media with a strong 4:3 frame, generous padding, and a
 * clear CTA. Image takes visual priority; text supports it.
 * -------------------------------------------------------------------------- */
body.vd-home .u-section-4 .u-sheet-1 {
  min-height: 0 !important;
  padding: 4rem 1.25rem !important;
}

body.vd-home .vd-home-product-list {
  margin-top: 2rem !important;
}

body.vd-home .u-section-4 .u-repeater-1 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  grid-auto-columns: unset !important;
  gap: 2rem !important;
  min-height: 0 !important;
  max-width: 1080px;
  margin: 0 auto;
}

body.vd-home .u-section-4 .u-list-item {
  margin: 0 !important;
  padding: 0 !important;
}

body.vd-home .u-section-4 .u-container-layout {
  padding: 0 !important;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 4px 18px rgba(31, 20, 12, 0.07);
  border: 1px solid rgba(74, 63, 56, 0.08);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
  height: 100%;
}

body.vd-home .u-section-4 .u-container-layout:hover {
  transform: translateY(-4px);
  box-shadow: 0 18px 40px rgba(31, 20, 12, 0.12);
}

/* The image itself: full-bleed across the card, strong 4:3 ratio, cover crop. */
body.vd-home .u-section-4 .u-image-1,
body.vd-home .u-section-4 .u-image-2 {
  width: 100% !important;
  height: auto !important;
  min-height: 0 !important;
  aspect-ratio: 4 / 3;
  object-fit: cover !important;
  display: block !important;
  margin: 0 !important;
  --radius: 0;
  border-radius: 0 !important;
  background: #f1ece6;
  transition: transform 0.45s ease;
}

body.vd-home .u-section-4 .u-container-layout:hover .u-image-1,
body.vd-home .u-section-4 .u-container-layout:hover .u-image-2 {
  transform: scale(1.04);
}

/* Title, body and CTA sit in a padded block below the image. */
body.vd-home .u-section-4 .vd-home-card-title {
  font-family: "Cormorant Garamond", "Times New Roman", serif;
  font-size: 1.6rem !important;
  font-weight: 600 !important;
  color: #3a1e25 !important;
  margin: 1.25rem 1.5rem 0.5rem !important;
  line-height: 1.25 !important;
  text-align: left !important;
}

body.vd-home .u-section-4 .vd-home-card-desc {
  font-family: "Poppins", sans-serif;
  font-size: 0.975rem;
  line-height: 1.6;
  color: #5a4a42;
  margin: 0 1.5rem 1.25rem !important;
  text-align: left !important;
  flex: 1;
}

body.vd-home .u-section-4 .vd-home-card-btn {
  align-self: flex-start !important;
  margin: 0 1.5rem 1.5rem !important;
  padding: 0.7rem 1.3rem !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em;
  min-height: 0 !important;
  height: auto !important;
}

/* Tablet: keep 2-up but tighten. */
@media (max-width: 991px) {
  body.vd-home .u-section-4 .u-repeater-1 {
    gap: 1.25rem !important;
  }
  body.vd-home .u-section-4 .vd-home-card-title {
    font-size: 1.35rem !important;
    margin: 1rem 1.1rem 0.4rem !important;
  }
  body.vd-home .u-section-4 .vd-home-card-desc {
    margin: 0 1.1rem 1rem !important;
  }
  body.vd-home .u-section-4 .vd-home-card-btn {
    margin: 0 1.1rem 1.1rem !important;
  }
}

/* Phone: stack. Override Nicepage's stray margin-top: -414px left over from
 * the old gallery layout. */
@media (max-width: 575px) {
  body.vd-home .u-section-4 .u-repeater-1 {
    grid-template-columns: 1fr !important;
    gap: 1.25rem !important;
  }
  body.vd-home .u-section-4 .u-image-1,
  body.vd-home .u-section-4 .u-image-2,
  body.vd-home .u-section-4 .u-image-3,
  body.vd-home .u-section-4 .u-image-4 {
    margin-top: 0 !important;
    aspect-ratio: 5 / 4;
  }
}

/* Collection hubs (Garlands + Tanjore grids) — bigger image frame, same
 * CSS class for reuse. Overrides earlier 4:3 with a taller 4:5 portrait
 * frame so the flower / painting is the hero of each card. */
body.vd-product-collection .vd-garland-card-media {
  aspect-ratio: 4 / 5;
}

@supports not (aspect-ratio: 4 / 5) {
  body.vd-product-collection .vd-garland-card-media {
    padding-top: 125%;
  }
}

body.vd-product-collection .vd-garland-card {
  border: 1px solid rgba(74, 63, 56, 0.06);
  border-radius: 16px;
  box-shadow: 0 6px 20px rgba(31, 20, 12, 0.06);
}

body.vd-product-collection .vd-garland-card:hover,
body.vd-product-collection .vd-garland-card:focus-within {
  box-shadow: 0 20px 40px rgba(31, 20, 12, 0.14);
}

body.vd-product-collection .vd-garland-card-body {
  padding: 1.25rem 1.35rem 1.5rem;
  gap: 0.6rem;
}

body.vd-product-collection .vd-garland-card-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.3rem;
  font-weight: 600;
}

body.vd-product-collection .vd-garland-card-desc {
  font-size: 0.94rem;
  line-height: 1.6;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  overflow: hidden;
}

/* Tighten the grid so the richer cards breathe. */
body.vd-product-collection .vd-garland-grid {
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2rem 1.75rem;
}

@media (max-width: 767px) {
  body.vd-product-collection .vd-garland-grid {
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
    gap: 1.25rem;
  }
}

@media (max-width: 479px) {
  body.vd-product-collection .vd-garland-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 1rem;
  }
  body.vd-product-collection .vd-garland-card-body {
    padding: 0.9rem 0.85rem 1rem;
    gap: 0.35rem;
  }
  body.vd-product-collection .vd-garland-card-title {
    font-size: 1.05rem;
  }
  body.vd-product-collection .vd-garland-card-desc {
    font-size: 0.84rem;
    line-height: 1.5;
  }
  body.vd-product-collection .vd-garland-card-cta {
    font-size: 0.82rem;
  }
}

/* --------------------------------------------------------------------------
 * SITE HEADER V2 — keep the Nicepage hamburger/offcanvas markup intact
 * (its JS needs the u-* classes) but re-skin for a cleaner, more modern feel.
 * The wrapper is already .u-header#sec-643f in components/site-header.php.
 * -------------------------------------------------------------------------- */
.u-header#sec-643f {
  background: #ffffff !important;
  border-bottom: 1px solid rgba(74, 63, 56, 0.08);
  box-shadow: 0 1px 0 rgba(255, 255, 255, 0.8), 0 2px 18px rgba(31, 20, 12, 0.04);
  position: sticky;
  top: 0;
  z-index: 100;
  padding: 0.4rem 0;
}

.u-header#sec-643f .u-sheet-1 {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 1rem;
  min-height: 0 !important;
  padding: 0.35rem 1rem !important;
  max-width: 1280px;
  margin: 0 auto !important;
}

/* Logo — contained, never hero-sized; nuke Nicepage's 30px margins */
.u-header#sec-643f .u-logo,
.u-header#sec-643f .u-image-1 {
  flex: 0 0 auto;
  width: auto !important;
  height: auto !important;
  max-width: 220px;
  margin: 0 !important;
}
.u-header#sec-643f .u-logo img,
.u-header#sec-643f .u-logo-image-1 {
  display: block;
  height: 44px !important;
  width: auto !important;
  max-width: 100%;
}

/* Nav wrapper — reset Nicepage's offset margins and display:table so it sits
 * inside the flex row. Nicepage applies `.u-menu { display: table }` which
 * otherwise forces the nav below the logo. */
.u-header#sec-643f .u-menu-1 {
  margin: 0 !important;
  width: auto !important;
  flex: 0 1 auto;
  display: flex !important;
  align-items: center;
  white-space: normal !important;
}

/* Desktop nav — the horizontal list */
.u-header#sec-643f .u-nav-1 {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.25rem 0.4rem;
  margin: 0;
  padding: 0;
}

.u-header#sec-643f .u-nav-1 > li {
  list-style: none;
  margin: 0;
}

.u-header#sec-643f .u-nav-1 .u-nav-link {
  display: inline-flex;
  align-items: center;
  position: relative;
  padding: 0.55rem 0.85rem !important;
  font-family: "Poppins", sans-serif;
  font-size: 0.875rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  color: #3d2f28 !important;
  text-decoration: none;
  border-radius: 6px;
  transition: color 0.2s ease, background-color 0.2s ease;
}

.u-header#sec-643f .u-nav-1 .u-nav-link::after {
  content: "";
  position: absolute;
  left: 0.85rem;
  right: 0.85rem;
  bottom: 0.35rem;
  height: 1.5px;
  background: #8d2c3f;
  transform: scaleX(0);
  transform-origin: center;
  transition: transform 0.25s ease;
}

.u-header#sec-643f .u-nav-1 .u-nav-link:hover,
.u-header#sec-643f .u-nav-1 .u-nav-link:focus-visible {
  color: #8d2c3f !important;
  background: rgba(141, 44, 63, 0.05);
}

.u-header#sec-643f .u-nav-1 .u-nav-link:hover::after,
.u-header#sec-643f .u-nav-1 .u-nav-link:focus-visible::after {
  transform: scaleX(1);
}

.u-header#sec-643f .u-nav-1 .u-nav-link:focus-visible {
  outline: 2px solid rgba(141, 44, 63, 0.45);
  outline-offset: 2px;
}

/* Hide the mobile hamburger on desktop — the horizontal menu is enough. */
@media (min-width: 768px) {
  .u-header#sec-643f .menu-collapse {
    display: none !important;
  }
  /* Force the desktop nav visible — Nicepage's default media-query matrix
   * hides .u-nav-container in several ranges; our sticky header needs it
   * shown everywhere from 768px up. */
  .u-header#sec-643f .u-nav-container {
    display: flex !important;
    align-items: center;
  }
  .u-header#sec-643f .u-nav-container-collapse {
    display: none !important;
  }
}

/* Below MD: hide the desktop nav, let the hamburger shine */
@media (max-width: 767px) {
  .u-header#sec-643f .u-nav-container {
    display: none !important;
  }
  .u-header#sec-643f .menu-collapse {
    display: flex !important;
    align-items: center;
  }
  .u-header#sec-643f .u-hamburger-link {
    padding: 0.5rem !important;
    border-radius: 8px;
    color: #3d2f28 !important;
  }
  .u-header#sec-643f .u-hamburger-link:hover {
    background: rgba(141, 44, 63, 0.08);
    color: #8d2c3f !important;
  }
  .u-header#sec-643f .u-sheet-1 {
    padding: 0.25rem 0.75rem;
  }
  .u-header#sec-643f .u-logo img {
    height: 40px;
  }
}

/* Offcanvas mobile menu — readable, generous tap targets */
.u-header#sec-643f .u-sidenav .u-popupmenu-items .u-nav-link {
  font-family: "Poppins", sans-serif;
  font-size: 1.05rem;
  font-weight: 500;
  letter-spacing: 0.01em;
  padding: 1rem 1.25rem !important;
  color: #ffffff !important;
  display: block;
  border-bottom: 1px solid rgba(255, 255, 255, 0.08);
  text-align: left !important;
}

.u-header#sec-643f .u-sidenav .u-popupmenu-items .u-nav-link:hover,
.u-header#sec-643f .u-sidenav .u-popupmenu-items .u-nav-link:focus-visible {
  background: rgba(255, 255, 255, 0.06);
  color: #f7d7a1 !important;
}

/* Add a little top padding on the first nav section of every page so hero
 * content doesn't sit flush against the sticky header. */
body.vd-home section.u-section-1,
body.vd-product-collection .vd-garlands-hero,
body.vd-product-collection section.u-section-1 {
  scroll-margin-top: 70px;
}

/* --------------------------------------------------------------------------
 * FAT FOOTER V2 — scoped to .vd-fat-footer which replaces the legacy
 * .u-footer#sec-a5d5 markup. Large multi-column layout with brand block,
 * link columns, contact card, social strip, and legal bar.
 * -------------------------------------------------------------------------- */
.vd-fat-footer {
  background: linear-gradient(180deg, #8d2c3f 0%, #6d1f30 100%);
  color: #f5e9dc;
  padding: 0;
  margin: 0;
  position: relative;
}

.vd-fat-footer::before {
  content: "";
  display: block;
  height: 3px;
  background: linear-gradient(90deg, #d4a949 0%, #f7d7a1 50%, #d4a949 100%);
}

.vd-fat-footer a {
  color: #e9dfd7;
  text-decoration: none;
  transition: color 0.2s ease;
}

.vd-fat-footer a:hover,
.vd-fat-footer a:focus-visible {
  color: #f7d7a1;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.vd-fat-footer a:focus-visible {
  outline: 2px solid rgba(247, 215, 161, 0.55);
  outline-offset: 3px;
  border-radius: 2px;
}

.vd-fat-footer__inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 3.5rem 1.5rem 2rem;
}

.vd-fat-footer__grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.3fr;
  gap: 2.5rem 2rem;
  align-items: flex-start;
}

.vd-fat-footer__col h4 {
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: #f7d7a1;
  margin: 0 0 1.25rem;
}

.vd-fat-footer__brand-logo {
  display: inline-block;
  margin-bottom: 1rem;
}
.vd-fat-footer__brand-logo img {
  display: block;
  height: 52px;
  width: auto;
  filter: brightness(1.1);
}

.vd-fat-footer__brand-tagline {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.15rem;
  font-style: italic;
  line-height: 1.5;
  color: #f0e3d5;
  margin: 0 0 1.1rem;
  max-width: 28rem;
}

.vd-fat-footer__brand-body {
  font-family: "Poppins", sans-serif;
  font-size: 0.9rem;
  line-height: 1.65;
  color: #f0e3d5;
  opacity: 0.82;
  margin: 0 0 1.25rem;
  max-width: 28rem;
}

.vd-fat-footer__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  list-style: none;
  padding: 0;
  margin: 0;
}

.vd-fat-footer__badges li {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  background: rgba(247, 215, 161, 0.08);
  border: 1px solid rgba(247, 215, 161, 0.18);
  border-radius: 999px;
  font-size: 0.75rem;
  font-weight: 500;
  letter-spacing: 0.02em;
  color: #f0e3d5;
}

.vd-fat-footer__badges svg {
  width: 0.85rem;
  height: 0.85rem;
  flex-shrink: 0;
  color: #f7d7a1;
}

.vd-fat-footer__links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.6rem;
}

.vd-fat-footer__links a {
  font-family: "Poppins", sans-serif;
  font-size: 0.92rem;
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  line-height: 1.4;
}

.vd-fat-footer__links a::before {
  content: "›";
  color: #f7d7a1;
  font-weight: 700;
  transition: transform 0.2s ease, color 0.2s ease;
  display: inline-block;
}

.vd-fat-footer__links a:hover::before,
.vd-fat-footer__links a:focus-visible::before {
  transform: translateX(3px);
  color: #ffffff;
}

.vd-fat-footer__contact {
  font-style: normal;
  line-height: 1.6;
  font-family: "Poppins", sans-serif;
}

.vd-fat-footer__contact-row {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  margin-bottom: 1rem;
  font-size: 0.9rem;
  color: #e9dfd7;
}

.vd-fat-footer__contact-row:last-child {
  margin-bottom: 0;
}

.vd-fat-footer__contact-row svg {
  flex-shrink: 0;
  width: 1.1rem;
  height: 1.1rem;
  color: #f7d7a1;
  margin-top: 0.15rem;
}

.vd-fat-footer__contact-row strong {
  display: block;
  color: #f0e3d5;
  font-weight: 600;
  margin-bottom: 0.1rem;
  font-size: 0.95rem;
}

.vd-fat-footer__contact-row span {
  color: rgba(240, 227, 213, 0.8);
  font-size: 0.875rem;
}

.vd-fat-footer__contact-row a {
  color: #f0e3d5;
  font-weight: 500;
}

.vd-fat-footer__social {
  display: flex;
  flex-wrap: wrap;
  gap: 0.6rem;
  margin-top: 1.1rem;
  list-style: none;
  padding: 0;
}

.vd-fat-footer__social a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: rgba(247, 215, 161, 0.1);
  border: 1px solid rgba(247, 215, 161, 0.18);
  color: #f0e3d5;
  transition: background-color 0.2s ease, transform 0.2s ease, border-color 0.2s ease;
}

.vd-fat-footer__social a:hover,
.vd-fat-footer__social a:focus-visible {
  background: #f7d7a1;
  border-color: #f7d7a1;
  color: #6d1f30;
  transform: translateY(-2px);
  text-decoration: none;
}

.vd-fat-footer__social a:hover img,
.vd-fat-footer__social a:focus-visible img {
  filter: none;
  opacity: 1;
}

.vd-fat-footer__social svg,
.vd-fat-footer__social img {
  width: 18px;
  height: 18px;
  display: block;
  fill: currentColor;
}

.vd-fat-footer__social img {
  filter: brightness(0) invert(1);
  opacity: 0.9;
}

.vd-fat-footer__bottom {
  border-top: 1px solid rgba(247, 215, 161, 0.22);
  margin-top: 2.5rem;
  padding: 1.5rem 0 0;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem 1.5rem;
  font-family: "Poppins", sans-serif;
  font-size: 0.82rem;
  color: rgba(240, 227, 213, 0.7);
}

.vd-fat-footer__bottom-links {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-wrap: wrap;
  gap: 0.35rem 1rem;
}

.vd-fat-footer__bottom a {
  color: rgba(240, 227, 213, 0.85);
}

.vd-fat-footer__bottom a:hover,
.vd-fat-footer__bottom a:focus-visible {
  color: #f7d7a1;
}

/* Responsive stack */
@media (max-width: 1023px) {
  .vd-fat-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 2.5rem 2rem;
  }
  .vd-fat-footer__col--brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 575px) {
  .vd-fat-footer__inner {
    padding: 2.5rem 1.25rem 1.5rem;
  }
  .vd-fat-footer__grid {
    grid-template-columns: 1fr;
    gap: 2rem;
  }
  .vd-fat-footer__bottom {
    flex-direction: column;
    align-items: flex-start;
    text-align: left;
  }
}

/* The fat footer now carries the social icons — hide the legacy fixed
 * left-edge social rail entirely so it doesn't overlap content or footer. */
body.vd-home #sec-7e5c,
body.vd-home .icon-bar {
  display: none !important;
}

/* Logo in fat footer — the site logo image is on a white background and
 * can look washed out on the dark footer. A subtle light treatment keeps
 * brand letters legible against the maroon gradient (#8d2c3f → #6d1f30). */
.vd-fat-footer__brand-logo {
  display: inline-block;
  padding: 0.5rem 0.85rem;
  background: rgba(255, 255, 255, 0.94);
  border-radius: 10px;
  margin-bottom: 1.25rem;
}

.vd-fat-footer__brand-logo img {
  filter: none;
  height: 44px;
  width: auto;
  display: block;
}

/* ==========================================================================
 * V4 SECTION FIXES (Apr 2026) — aggressive resets for home page sections
 * that were still inheriting Nicepage's fixed pixel widths and negative
 * margins after the V3 pass. Every rule is scoped to body.vd-home and
 * targets the section id or the vd- wrapper class for clean portability.
 * ========================================================================== */

/* -----------------------------------------------------------------
 * SECTION 4 — Product cards (home). Force big card images, proper
 * 2-column grid at desktop, 1-column at mobile, override Nicepage's
 * fixed image sizing that shows tiny thumbnails on production.
 * ----------------------------------------------------------------- */
body.vd-home #sec-8b3c.u-section-4 {
  padding: 4rem 1rem !important;
  background: #fffaf4 !important;
}

body.vd-home #sec-8b3c .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.vd-home #sec-8b3c .vd-home-products-heading {
  text-align: center;
  margin: 0.5rem 0 0.75rem !important;
  font-size: clamp(1.75rem, 3.2vw, 2.5rem);
  font-family: "Cormorant Garamond", serif;
  color: #5b1a29;
}

body.vd-home #sec-8b3c .vd-home-products-lead {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 2.5rem !important;
  color: #5c4a42;
  font-size: 1rem;
  line-height: 1.55;
}

body.vd-home #sec-8b3c .vd-home-product-list,
body.vd-home #sec-8b3c .u-list-1 {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: none !important;
}

body.vd-home #sec-8b3c .u-repeater-1 {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 2rem !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.vd-home #sec-8b3c .u-list-item {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  min-height: 0 !important;
  background: #ffffff !important;
  border: 1px solid rgba(74, 63, 56, 0.1) !important;
  border-radius: 18px !important;
  box-shadow: 0 12px 32px rgba(61, 47, 40, 0.08) !important;
  overflow: hidden !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-8b3c .u-list-item:hover {
  transform: translateY(-4px);
  box-shadow: 0 20px 50px rgba(61, 47, 40, 0.14) !important;
}

body.vd-home #sec-8b3c .u-list-item .u-container-layout {
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: 100% !important;
  min-height: 0 !important;
}

/* The product image — force it to dominate the card at a 4:3 ratio. */
body.vd-home #sec-8b3c .u-list-item .u-image,
body.vd-home #sec-8b3c .u-image-1,
body.vd-home #sec-8b3c .u-image-2 {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 3 !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 0 !important;
  overflow: hidden !important;
  transition: transform 0.4s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-8b3c .u-list-item:hover .u-image-1,
body.vd-home #sec-8b3c .u-list-item:hover .u-image-2 {
  transform: scale(1.04);
}

body.vd-home #sec-8b3c .vd-home-card-title {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.5rem !important;
  font-weight: 600;
  color: #5b1a29 !important;
  text-align: left !important;
  margin: 1.25rem 1.5rem 0.5rem !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
}

body.vd-home #sec-8b3c .vd-home-card-desc {
  font-family: "Poppins", sans-serif;
  font-size: 0.9375rem;
  line-height: 1.55;
  color: #5c4a42;
  text-align: left !important;
  margin: 0 1.5rem 1.25rem !important;
  padding: 0 !important;
  flex: 1 1 auto;
}

body.vd-home #sec-8b3c .vd-home-card-btn {
  align-self: flex-start !important;
  margin: 0 1.5rem 1.5rem !important;
  padding: 0.7rem 1.4rem !important;
  font-size: 0.9375rem !important;
  font-weight: 600;
  letter-spacing: 0.02em;
  background: #8d2c3f !important;
  color: #ffffff !important;
  border-radius: 999px !important;
  border: none !important;
  text-transform: none !important;
  display: inline-flex !important;
  align-items: center;
  gap: 0.5rem;
  width: auto !important;
  min-width: 0 !important;
  max-width: max-content !important;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.vd-home #sec-8b3c .vd-home-card-btn:hover,
body.vd-home #sec-8b3c .vd-home-card-btn:focus-visible {
  background: #6d1f30 !important;
  transform: translateX(2px);
}

body.vd-home #sec-8b3c .vd-home-btn-icon {
  display: inline-flex;
  width: 1em;
  height: 1em;
}

/* Hide the gallery prev/next arrows — 2 static cards don't need them. */
body.vd-home #sec-8b3c .u-gallery-nav {
  display: none !important;
}

@media (max-width: 767px) {
  body.vd-home #sec-8b3c {
    padding: 2.5rem 1rem !important;
  }
  body.vd-home #sec-8b3c .u-repeater-1 {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
  }
  body.vd-home #sec-8b3c .u-list-item .u-image,
  body.vd-home #sec-8b3c .u-image-1,
  body.vd-home #sec-8b3c .u-image-2 {
    aspect-ratio: 5 / 4 !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 5 — Bespoke Garlands CTA band. Live site shows a tiny
 * copy card crammed into a half-empty parallax background. Fix by
 * centering the card, giving it sensible width and padding, resetting
 * Nicepage's fixed 792px width and 295px right margin on the H3.
 * ----------------------------------------------------------------- */
body.vd-home #sec-c677.u-section-5 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
}

body.vd-home #sec-c677.u-section-5::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    135deg,
    rgba(255, 250, 244, 0.35) 0%,
    rgba(255, 250, 244, 0.15) 50%,
    rgba(141, 44, 63, 0.18) 100%
  );
  pointer-events: none;
  z-index: 0;
}

body.vd-home #sec-c677.u-section-5 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

/* Card itself — reset Nicepage's width:792px, margin:59px 0 59px auto.
 * We center it and let it size to content with sensible max-width. */
body.vd-home #sec-c677.u-section-5 .u-group-1,
body.vd-home #sec-c677.u-section-5 .vd-home-cta-card {
  width: 100% !important;
  max-width: 640px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 0 0 auto !important;
  padding: 0 !important;
  background: rgba(255, 252, 248, 0.97) !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 60px rgba(61, 47, 40, 0.18) !important;
  border: 1px solid rgba(74, 63, 56, 0.06);
}

body.vd-home #sec-c677.u-section-5 .u-container-layout-1 {
  padding: 2.5rem 2.25rem !important;
}

body.vd-home #sec-c677.u-section-5 .vd-home-section-label {
  margin: 0 0 0.75rem !important;
  padding: 0 !important;
  color: #8d2c3f;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-home #sec-c677.u-section-5 .vd-home-cta-title,
body.vd-home #sec-c677.u-section-5 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.6rem, 3vw, 2.25rem) !important;
  font-style: normal !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: #5b1a29 !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  text-align: left !important;
}

body.vd-home #sec-c677.u-section-5 .vd-home-cta-body,
body.vd-home #sec-c677.u-section-5 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  font-style: normal !important;
  line-height: 1.6 !important;
  color: #4a3f38 !important;
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
  text-align: left !important;
}

body.vd-home #sec-c677.u-section-5 .vd-home-cta-btn,
body.vd-home #sec-c677.u-section-5 .u-btn-1 {
  display: inline-flex !important;
  align-items: center;
  background: #8d2c3f !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.8rem 1.75rem !important;
  margin: 0 !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  text-decoration: none !important;
  width: auto !important;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.vd-home #sec-c677.u-section-5 .vd-home-cta-btn:hover,
body.vd-home #sec-c677.u-section-5 .u-btn-1:hover {
  background: #6d1f30 !important;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  body.vd-home #sec-c677.u-section-5 {
    padding: 3rem 1rem !important;
  }
  body.vd-home #sec-c677.u-section-5 .u-group-1,
  body.vd-home #sec-c677.u-section-5 .vd-home-cta-card {
    margin: 0 auto !important;
    max-width: 100% !important;
  }
  body.vd-home #sec-c677.u-section-5 .u-container-layout-1 {
    padding: 1.75rem 1.5rem !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 6 — Why families choose us. Force 3-column grid with
 * consistent card styling; override Nicepage's width:841px on H2
 * and the cell-min-heights that were causing row wrap.
 * ----------------------------------------------------------------- */
body.vd-home #sec-cf26.u-section-6 {
  padding: 5rem 1rem !important;
  background: linear-gradient(180deg, #ffffff 0%, #fdf6ee 100%) !important;
}

body.vd-home #sec-cf26.u-section-6 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-section-label {
  text-align: center;
  display: block;
  margin: 0 0 1rem !important;
  color: #8d2c3f;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-values-heading,
body.vd-home #sec-cf26.u-section-6 .u-text-1 {
  width: auto !important;
  max-width: 720px !important;
  margin: 0 auto 2.5rem !important;
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.75rem, 3.4vw, 2.75rem) !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  text-align: center !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* Reset Nicepage's layout-wrap and force grid of 3 equal cells. We ONLY
 * apply grid to .u-layout-row (the direct parent of cells). Applying it
 * to both .u-layout and .u-layout-row would nest and squash columns. */
body.vd-home #sec-cf26.u-section-6 .u-layout-wrap-1,
body.vd-home #sec-cf26.u-section-6 .u-layout {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: none !important;
}

body.vd-home #sec-cf26.u-section-6 .u-layout-row {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.5rem !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.vd-home #sec-cf26.u-section-6 .u-layout-cell,
body.vd-home #sec-cf26.u-section-6 .u-layout-cell-1,
body.vd-home #sec-cf26.u-section-6 .u-layout-cell-2,
body.vd-home #sec-cf26.u-section-6 .u-layout-cell-3 {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  flex: unset !important;
  background: #ffffff !important;
  border: 1px solid rgba(74, 63, 56, 0.1) !important;
  border-radius: 14px !important;
  box-shadow: 0 8px 24px rgba(61, 47, 40, 0.06) !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-cf26.u-section-6 .u-layout-cell:hover {
  transform: translateY(-3px);
  box-shadow: 0 14px 36px rgba(61, 47, 40, 0.10) !important;
}

body.vd-home #sec-cf26.u-section-6 .u-container-layout,
body.vd-home #sec-cf26.u-section-6 .u-container-layout-1,
body.vd-home #sec-cf26.u-section-6 .u-container-layout-2,
body.vd-home #sec-cf26.u-section-6 .u-container-layout-3 {
  padding: 1.75rem 1.5rem !important;
  height: 100% !important;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-value-title {
  font-family: "Cormorant Garamond", serif !important;
  font-size: 1.375rem !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 0.75rem !important;
  padding: 0 0 0.5rem !important;
  border-bottom: 2px solid rgba(141, 44, 63, 0.25);
  display: inline-block;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-value-text,
body.vd-home #sec-cf26.u-section-6 .u-text-2,
body.vd-home #sec-cf26.u-section-6 .u-text-3,
body.vd-home #sec-cf26.u-section-6 .u-text-4 {
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  line-height: 1.6 !important;
  color: #5c4a42 !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-values-cta,
body.vd-home #sec-cf26.u-section-6 .u-btn-1 {
  display: inline-flex !important;
  align-items: center;
  margin: 2.5rem auto 0 !important;
  padding: 0.8rem 1.75rem !important;
  background: transparent !important;
  color: #8d2c3f !important;
  border: 2px solid #8d2c3f !important;
  border-radius: 999px !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  transition: background 0.2s ease, color 0.2s ease;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-cf26.u-section-6 .vd-home-values-cta:hover {
  background: #8d2c3f !important;
  color: #ffffff !important;
}

@media (max-width: 991px) {
  body.vd-home #sec-cf26.u-section-6 .u-layout-row {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  }
}

@media (max-width: 575px) {
  body.vd-home #sec-cf26.u-section-6 {
    padding: 3rem 1rem !important;
  }
  body.vd-home #sec-cf26.u-section-6 .u-layout-row {
    grid-template-columns: 1fr !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 9 — Send us a message. Kill the decorative floating garland
 * image and shape blobs that were overlapping the form, and center
 * the form card cleanly. Live site showed a peach garland photo
 * bleeding over the form at -542px negative margin.
 * ----------------------------------------------------------------- */
body.vd-home #sec-6b40.u-section-9 {
  padding: 5rem 1rem !important;
  background: linear-gradient(180deg, #fdf6ee 0%, #fffaf4 100%) !important;
}

body.vd-home #sec-6b40.u-section-9 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
}

/* Kill the decorative garland image and blob/circle shapes. These were
 * the source of the overlap shown on the production screenshot. */
body.vd-home #sec-6b40.u-section-9 .u-image-1,
body.vd-home #sec-6b40.u-section-9 .u-shape-1,
body.vd-home #sec-6b40.u-section-9 .u-shape-2 {
  display: none !important;
}

body.vd-home #sec-6b40.u-section-9 .vd-home-section-label {
  text-align: center;
  display: block;
  margin: 0 0 1rem !important;
  color: #8d2c3f;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-home #sec-6b40.u-section-9 .vd-home-contact-heading {
  text-align: center;
  margin: 0 auto 0.75rem !important;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.75rem, 3.4vw, 2.5rem);
  font-weight: 600;
  color: #5b1a29;
  line-height: 1.2;
}

body.vd-home #sec-6b40.u-section-9 .vd-home-contact-lead {
  text-align: center;
  margin: 0 auto 2.5rem !important;
  max-width: 560px;
  color: #5c4a42;
  font-size: 1rem;
  line-height: 1.55;
}

/* Form card — center, remove Nicepage's negative top margin, add
 * card styling consistent with the rest of the page. */
body.vd-home #sec-6b40.u-section-9 .u-form-1 {
  width: 100% !important;
  max-width: 620px !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #ffffff !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 48px rgba(61, 47, 40, 0.10) !important;
  border: 1px solid rgba(74, 63, 56, 0.08);
  position: relative;
  z-index: 2;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-inner-form {
  padding: 2.25rem !important;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-label {
  font-family: "Poppins", sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 500;
  color: #4a3f38;
  margin-bottom: 0.35rem;
  display: block;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-input {
  width: 100% !important;
  padding: 0.7rem 0.9rem !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  color: #3d2f28;
  background: #fffaf4 !important;
  border: 1.5px solid rgba(74, 63, 56, 0.18) !important;
  border-radius: 10px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-input:focus {
  outline: none !important;
  border-color: #8d2c3f !important;
  box-shadow: 0 0 0 3px rgba(141, 44, 63, 0.15) !important;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-form-group {
  margin-bottom: 1rem !important;
}

body.vd-home #sec-6b40.u-section-9 .u-form-agree .u-field-label {
  font-size: 0.875rem;
  color: #5c4a42;
}

body.vd-home #sec-6b40.u-section-9 .u-form-agree .u-field-label a {
  color: #8d2c3f;
  text-decoration: underline;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-btn-submit,
body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-btn-1 {
  background: #8d2c3f !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.85rem 2.5rem !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  width: auto !important;
  min-width: 160px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-btn-submit:hover,
body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-btn-1:hover {
  background: #6d1f30 !important;
  transform: translateY(-1px);
}

@media (max-width: 575px) {
  body.vd-home #sec-6b40.u-section-9 {
    padding: 3rem 1rem !important;
  }
  body.vd-home #sec-6b40.u-section-9 .u-form-1 .u-inner-form {
    padding: 1.5rem !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 7 — Let's plan / WhatsApp collab band. On the live site
 * this section was rendering as a tall empty white band between Why
 * Families and Testimonials. Force a clean 2-column grid with the
 * lotus-petals image on the left and the WhatsApp copy+CTA on the right.
 * ----------------------------------------------------------------- */
body.vd-home #sec-12da.u-section-7 {
  padding: 4rem 1rem !important;
  min-height: 0 !important;
  background: #ffffff !important;
}

body.vd-home #sec-12da.u-section-7 .u-layout-wrap-1,
body.vd-home #sec-12da.u-section-7 .u-layout {
  display: block !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.vd-home #sec-12da.u-section-7 .u-layout-row {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
  gap: 2.5rem !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.vd-home #sec-12da.u-section-7 .u-layout-cell,
body.vd-home #sec-12da.u-section-7 .u-layout-cell-1,
body.vd-home #sec-12da.u-section-7 .u-layout-cell-2 {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  flex: unset !important;
  background: transparent !important;
  padding: 0 !important;
  position: relative;
}

body.vd-home #sec-12da.u-section-7 .u-container-layout,
body.vd-home #sec-12da.u-section-7 .u-container-layout-1,
body.vd-home #sec-12da.u-section-7 .u-container-layout-2 {
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

/* Hide the Nicepage decorative blob and circle — the lotus image is
 * the star of this cell and the shapes only clutter the layout. */
body.vd-home #sec-12da.u-section-7 .u-shape-1,
body.vd-home #sec-12da.u-section-7 .u-shape-2 {
  display: none !important;
}

body.vd-home #sec-12da.u-section-7 .u-image-1 {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 380px !important;
  height: auto !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-12da.u-section-7 .vd-home-section-label {
  margin: 0 0 0.75rem !important;
  padding: 0 !important;
  color: #25d366;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-home #sec-12da.u-section-7 .vd-home-collab-title {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.6rem, 3vw, 2.25rem) !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  text-align: left !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-12da.u-section-7 .vd-home-collab-body {
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
  color: #4a3f38 !important;
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
  text-align: left !important;
  max-width: 560px;
}

body.vd-home #sec-12da.u-section-7 .vd-home-wa-link {
  display: inline-block;
  margin: 0;
  padding: 0;
  transition: transform 0.2s ease;
}

body.vd-home #sec-12da.u-section-7 .vd-home-wa-link:hover {
  transform: translateY(-2px);
}

body.vd-home #sec-12da.u-section-7 .vd-home-wa-link img,
body.vd-home #sec-12da.u-section-7 .u-image-2 {
  display: block;
  width: auto !important;
  max-width: 280px !important;
  height: auto !important;
}

@media (max-width: 767px) {
  body.vd-home #sec-12da.u-section-7 {
    padding: 3rem 1rem !important;
  }
  body.vd-home #sec-12da.u-section-7 .u-layout-row {
    grid-template-columns: 1fr !important;
    gap: 1.5rem !important;
    text-align: center;
  }
  body.vd-home #sec-12da.u-section-7 .u-image-1 {
    max-width: 220px !important;
  }
  body.vd-home #sec-12da.u-section-7 .vd-home-collab-title,
  body.vd-home #sec-12da.u-section-7 .vd-home-collab-body {
    text-align: center !important;
  }
  body.vd-home #sec-12da.u-section-7 .vd-home-wa-link img,
  body.vd-home #sec-12da.u-section-7 .u-image-2 {
    margin: 0 auto !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 8 — Testimonials. Promote the sub-title and tweak the grid
 * to handle 6 real reviews cleanly (was 3 dummy). Also override
 * Nicepage's u-section-8 min-heights so content sizes to the grid.
 * ----------------------------------------------------------------- */
body.vd-home #sec-a1aa.u-section-8 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background-attachment: scroll !important;
  background-position: center center !important;
  position: relative;
}

body.vd-home #sec-a1aa.u-section-8::before {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(
    180deg,
    rgba(26, 16, 20, 0.72) 0%,
    rgba(61, 47, 40, 0.78) 100%
  );
  z-index: 0;
  pointer-events: none;
}

body.vd-home #sec-a1aa.u-section-8 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

body.vd-home #sec-a1aa.u-section-8 .vd-home-section-label--on-dark {
  text-align: center;
  display: block;
  color: #f5d4c8;
  margin: 0 0 1rem !important;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-home #sec-a1aa.u-section-8 .vd-home-testimonials-heading {
  text-align: center;
  margin: 0 auto 0.75rem !important;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.75rem, 3.4vw, 2.75rem);
  font-weight: 600;
  color: #ffffff;
  line-height: 1.15;
}

body.vd-home #sec-a1aa.u-section-8 .vd-home-testimonials-sub {
  text-align: center;
  max-width: 640px;
  margin: 0 auto 2.5rem !important;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  line-height: 1.55;
  color: rgba(255, 245, 235, 0.85);
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  width: 100%;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-card {
  background: rgba(255, 252, 248, 0.97) !important;
  border-radius: 16px !important;
  padding: 1.75rem 1.5rem !important;
  margin: 0 !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18) !important;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-stars {
  display: flex;
  gap: 0.15rem;
  color: #e4a42b;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-stars svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-quote {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.0625rem;
  line-height: 1.55;
  color: #3d2f28;
  margin: 0;
  padding: 0;
  font-style: italic;
  quotes: "\201C" "\201D";
  position: relative;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-meta {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(74, 63, 56, 0.12);
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-avatar {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #8d2c3f 0%, #b94a5e 100%);
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-size: 1rem;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-name {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #3d2f28;
}

body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-date {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  color: #8a756a;
}

@media (max-width: 991px) {
  body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  body.vd-home #sec-a1aa.u-section-8 {
    padding: 3rem 1rem !important;
  }
  body.vd-home #sec-a1aa.u-section-8 .vd-testimonial-grid {
    grid-template-columns: 1fr;
  }
}

/* ==========================================================================
 * V5 ABOUT PAGE REVAMP (Apr 2026) — aggressive, body-scoped overrides for
 * About-Visaka-Divines.php so the page picks up the new cream/maroon system
 * instead of Nicepage's stock grey hero, dummy reviews, and floating-blob
 * contact form. Every rule is scoped to body.vd-about so we never clash
 * with the home page even when section IDs overlap (sec-c677, carousel_9cab).
 * ========================================================================== */

/* -----------------------------------------------------------------
 * Page base — cream background, sensible scroll padding for sticky hdr
 * ----------------------------------------------------------------- */
body.vd-about {
  background: #fffaf4;
  font-family: "Poppins", sans-serif;
  color: #3d2f28;
  overflow-x: hidden;
}

body.vd-about section {
  scroll-margin-top: 80px;
}

/* -----------------------------------------------------------------
 * SECTION 1 — Hero. Nicepage pins the H1 with margin:-183px 357px... on
 * top of a fixed .u-shape-1. Reset to a flex layout with soft cream
 * backdrop anchored left, copy sized to content.
 * ----------------------------------------------------------------- */
body.vd-about #carousel_9cab.u-section-1 {
  padding: 6rem 1rem 5rem !important;
  min-height: 0 !important;
  background-image: linear-gradient(
      90deg,
      rgba(255, 250, 244, 0.97) 0%,
      rgba(255, 250, 244, 0.94) 40%,
      rgba(255, 250, 244, 0.55) 70%,
      rgba(141, 44, 63, 0.18) 100%
    ),
    url("images/Indian-Cultural-Weddings-Garlands.jpg") !important;
  background-size: cover, cover !important;
  background-position: center 30%, center 30% !important;
  background-repeat: no-repeat, no-repeat !important;
  background-attachment: scroll, scroll !important;
  position: relative;
}

body.vd-about #carousel_9cab.u-section-1 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

/* Nicepage's .u-shape-1 was a positioned rectangle behind the H1 — hide
 * it now that the ::before gradient does the job cleanly. */
body.vd-about #carousel_9cab.u-section-1 .u-shape-1 {
  display: none !important;
}

body.vd-about #carousel_9cab.u-section-1 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(2rem, 4.5vw, 3.25rem) !important;
  line-height: 1.1 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 1.25rem !important;
  padding: 0 !important;
  max-width: 680px !important;
  width: auto !important;
  text-align: left !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #carousel_9cab.u-section-1 .u-text-1 .u-text-custom-color-2 {
  color: #8d2c3f !important;
  font-style: italic;
}

body.vd-about #carousel_9cab.u-section-1 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 1.0625rem !important;
  line-height: 1.65 !important;
  color: #4a3f38 !important;
  margin: 0 !important;
  padding: 0 !important;
  max-width: 620px !important;
  width: auto !important;
  text-align: left !important;
  opacity: 1 !important;
  visibility: visible !important;
}

@media (max-width: 767px) {
  body.vd-about #carousel_9cab.u-section-1 {
    padding: 4rem 1rem 3rem !important;
    background-image: linear-gradient(
        180deg,
        rgba(255, 250, 244, 0.94) 0%,
        rgba(255, 250, 244, 0.82) 100%
      ),
      url("images/Indian-Cultural-Weddings-Garlands.jpg") !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 2 — Expanding Cultural Experiences. Copy card on parallax.
 * Similar fix pattern to home's bespoke section.
 * ----------------------------------------------------------------- */
body.vd-about #sec-c677.u-section-2 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background-size: cover !important;
  background-position: center center !important;
  position: relative;
}

body.vd-about #sec-c677.u-section-2 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

body.vd-about #sec-c677.u-section-2 .u-group-1 {
  width: 100% !important;
  max-width: 680px !important;
  min-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  background: rgba(255, 252, 248, 0.97) !important;
  border-radius: 22px !important;
  box-shadow: 0 20px 60px rgba(61, 47, 40, 0.18) !important;
  border: 1px solid rgba(74, 63, 56, 0.06);
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #sec-c677.u-section-2 .u-container-layout-1 {
  padding: 2.5rem 2.25rem !important;
}

body.vd-about #sec-c677.u-section-2 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.6rem, 3vw, 2.25rem) !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  text-align: left !important;
}

body.vd-about #sec-c677.u-section-2 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
  color: #4a3f38 !important;
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
  text-align: left !important;
  font-style: normal !important;
}

body.vd-about #sec-c677.u-section-2 .u-btn-1 {
  display: inline-flex !important;
  align-items: center !important;
  background: #8d2c3f !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.8rem 1.75rem !important;
  margin: 0 !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  text-transform: none !important;
  text-decoration: none !important;
  width: auto !important;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.vd-about #sec-c677.u-section-2 .u-btn-1:hover {
  background: #6d1f30 !important;
  transform: translateY(-1px);
}

@media (max-width: 767px) {
  body.vd-about #sec-c677.u-section-2 {
    padding: 3rem 1rem !important;
  }
  body.vd-about #sec-c677.u-section-2 .u-container-layout-1 {
    padding: 1.75rem 1.5rem !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 3 — "Original Designs by a Mastermind" heading strip.
 * Clean typography on soft cream, drop the heavy parallax.
 * ----------------------------------------------------------------- */
body.vd-about #sec-b45c.u-section-3 {
  padding: 4rem 1rem !important;
  background: linear-gradient(180deg, #fffaf4 0%, #fdf6ee 100%) !important;
  background-image: linear-gradient(180deg, #fffaf4 0%, #fdf6ee 100%) !important;
  min-height: 0 !important;
  text-align: center;
}

body.vd-about #sec-b45c.u-section-3 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.vd-about #sec-b45c.u-section-3 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.75rem, 3.4vw, 2.5rem) !important;
  line-height: 1.2 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 0.5rem !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #sec-b45c.u-section-3 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: #8d2c3f !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-align: center !important;
  width: 100% !important;
  max-width: none !important;
  float: none !important;
  opacity: 1 !important;
  visibility: visible !important;
}

/* -----------------------------------------------------------------
 * SECTION 4 — Testimonials grid (replaces old 3-card Nicepage layout)
 * Mirrors the home page testimonials treatment — dark overlay, cream
 * cards with star rating, quote, avatar, name, relative date.
 * ----------------------------------------------------------------- */
body.vd-about #carousel_f10d.u-section-4 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background-image: linear-gradient(
      180deg,
      rgba(91, 26, 41, 0.82) 0%,
      rgba(61, 47, 40, 0.85) 100%
    ),
    url("images/india-pollachi-flowers-pink.jpg") !important;
  background-size: cover, cover !important;
  background-position: center center, center center !important;
  background-repeat: no-repeat, no-repeat !important;
  background-attachment: scroll, scroll !important;
  position: relative;
}

/* The big white .u-shape-1 rectangle behind the testimonials was a
 * Nicepage paint layer — kill it, the gradient overlay is enough. */
body.vd-about #carousel_f10d.u-section-4 .u-shape-1 {
  display: none !important;
}

body.vd-about #carousel_f10d.u-section-4 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
  z-index: 1;
}

body.vd-about #carousel_f10d.u-section-4 .vd-home-section-label--on-dark {
  text-align: center;
  display: block;
  color: #f5d4c8;
  margin: 0 0 1rem !important;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  font-weight: 600;
  letter-spacing: 0.14em;
  text-transform: uppercase;
}

body.vd-about #carousel_f10d.u-section-4 .vd-home-testimonials-heading {
  text-align: center;
  margin: 0 auto 0.75rem !important;
  font-family: "Cormorant Garamond", serif;
  font-size: clamp(1.75rem, 3.4vw, 2.75rem);
  font-weight: 600;
  color: #ffffff;
  line-height: 1.15;
}

body.vd-about #carousel_f10d.u-section-4 .vd-home-testimonials-sub {
  text-align: center;
  max-width: 680px;
  margin: 0 auto 2.5rem !important;
  font-family: "Poppins", sans-serif;
  font-size: 1rem;
  line-height: 1.55;
  color: rgba(255, 245, 235, 0.88);
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1.5rem;
  width: 100%;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-card {
  background: rgba(255, 252, 248, 0.97) !important;
  border-radius: 16px !important;
  padding: 1.75rem 1.5rem !important;
  margin: 0 !important;
  box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18) !important;
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-stars {
  display: flex;
  gap: 0.15rem;
  color: #e4a42b;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-stars svg {
  width: 1rem;
  height: 1rem;
  fill: currentColor;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-quote {
  font-family: "Cormorant Garamond", serif;
  font-size: 1.0625rem;
  line-height: 1.55;
  color: #3d2f28;
  margin: 0;
  padding: 0;
  font-style: italic;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-meta {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  margin: 0;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(74, 63, 56, 0.12);
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-avatar {
  flex: 0 0 auto;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 2.5rem;
  height: 2.5rem;
  border-radius: 50%;
  background: linear-gradient(135deg, #8d2c3f 0%, #b94a5e 100%);
  color: #ffffff;
  font-family: "Poppins", sans-serif;
  font-weight: 600;
  font-size: 1rem;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-name {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 0.9375rem;
  font-weight: 600;
  color: #3d2f28;
}

body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-date {
  margin: 0;
  font-family: "Poppins", sans-serif;
  font-size: 0.8125rem;
  color: #8a756a;
}

@media (max-width: 991px) {
  body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 575px) {
  body.vd-about #carousel_f10d.u-section-4 {
    padding: 3rem 1rem !important;
  }
  body.vd-about #carousel_f10d.u-section-4 .vd-testimonial-grid {
    grid-template-columns: 1fr;
  }
}

/* -----------------------------------------------------------------
 * SECTION 5 — "Crafting Original Designs". Image + copy card on cream.
 * ----------------------------------------------------------------- */
body.vd-about #sec-9647.u-section-5 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background: #ffffff !important;
}

body.vd-about #sec-9647.u-section-5 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 820px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
}

/* Kill Nicepage's decorative blob shapes and the oversized background
 * garland png (which is 1.2MB and was absolutely positioned). Cleaner
 * to show copy on a card than fight the broken image crop. */
body.vd-about #sec-9647.u-section-5 .u-shape-1,
body.vd-about #sec-9647.u-section-5 .u-shape-2,
body.vd-about #sec-9647.u-section-5 .u-image-1 {
  display: none !important;
}

body.vd-about #sec-9647.u-section-5 .u-group-1 {
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: #ffffff !important;
  box-shadow: 0 14px 38px rgba(61, 47, 40, 0.08) !important;
  border: 1px solid rgba(74, 63, 56, 0.06);
  border-radius: 22px !important;
  min-height: 0 !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #sec-9647.u-section-5 .u-container-layout-1 {
  padding: 2.5rem 2.25rem !important;
  text-align: center;
}

body.vd-about #sec-9647.u-section-5 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.75rem, 3.4vw, 2.5rem) !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 1.25rem !important;
  padding: 0 !important;
  text-align: center !important;
}

body.vd-about #sec-9647.u-section-5 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.7 !important;
  color: #4a3f38 !important;
  margin: 0 auto !important;
  padding: 0 !important;
  max-width: 640px;
  text-align: center !important;
  font-style: normal !important;
}

@media (max-width: 767px) {
  body.vd-about #sec-9647.u-section-5 {
    padding: 3rem 1rem !important;
  }
  body.vd-about #sec-9647.u-section-5 .u-container-layout-1 {
    padding: 1.75rem 1.5rem !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 6 — "Join us in crafting your Perfect Arrangement". Lotus
 * image + copy + WhatsApp CTA. Same 2-col pattern as home's collab.
 * ----------------------------------------------------------------- */
body.vd-about #sec-f0ca.u-section-6 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background: linear-gradient(180deg, #fffaf4 0%, #fdf6ee 100%) !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-layout-wrap-1,
body.vd-about #sec-f0ca.u-section-6 .u-layout {
  display: block !important;
  width: 100% !important;
  max-width: 1120px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-layout-row {
  display: grid !important;
  grid-template-columns: minmax(0, 0.9fr) minmax(0, 1.1fr) !important;
  gap: 2.5rem !important;
  align-items: center !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-layout-cell,
body.vd-about #sec-f0ca.u-section-6 .u-layout-cell-1,
body.vd-about #sec-f0ca.u-section-6 .u-layout-cell-2 {
  width: 100% !important;
  max-width: none !important;
  min-height: 0 !important;
  flex: unset !important;
  background: transparent !important;
  padding: 0 !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-container-layout,
body.vd-about #sec-f0ca.u-section-6 .u-container-layout-1,
body.vd-about #sec-f0ca.u-section-6 .u-container-layout-2 {
  padding: 0 !important;
  height: auto !important;
  min-height: 0 !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-shape-1,
body.vd-about #sec-f0ca.u-section-6 .u-shape-2 {
  display: none !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-image-1 {
  position: static !important;
  display: block !important;
  width: 100% !important;
  max-width: 380px !important;
  height: auto !important;
  margin: 0 auto !important;
  object-fit: contain !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-text-1 {
  font-family: "Cormorant Garamond", serif !important;
  font-size: clamp(1.6rem, 3vw, 2.25rem) !important;
  line-height: 1.15 !important;
  font-weight: 600 !important;
  color: #5b1a29 !important;
  margin: 0 0 1rem !important;
  padding: 0 !important;
  text-align: left !important;
}

body.vd-about #sec-f0ca.u-section-6 .u-text-2 {
  font-family: "Poppins", sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.65 !important;
  color: #4a3f38 !important;
  margin: 0 0 1.5rem !important;
  padding: 0 !important;
  text-align: left !important;
  max-width: 560px;
}

body.vd-about #sec-f0ca.u-section-6 .u-image-2 {
  display: block !important;
  width: auto !important;
  max-width: 280px !important;
  height: auto !important;
  margin: 0;
  transition: transform 0.2s ease;
}

body.vd-about #sec-f0ca.u-section-6 .u-image-2:hover {
  transform: translateY(-2px);
}

@media (max-width: 767px) {
  body.vd-about #sec-f0ca.u-section-6 {
    padding: 3rem 1rem !important;
  }
  body.vd-about #sec-f0ca.u-section-6 .u-layout-row {
    grid-template-columns: 1fr !important;
    text-align: center;
  }
  body.vd-about #sec-f0ca.u-section-6 .u-image-1 {
    max-width: 220px !important;
  }
  body.vd-about #sec-f0ca.u-section-6 .u-text-1,
  body.vd-about #sec-f0ca.u-section-6 .u-text-2 {
    text-align: center !important;
  }
  body.vd-about #sec-f0ca.u-section-6 .u-image-2 {
    margin: 0 auto !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 7 — Contact form. Kill the floating garland image and shape
 * blobs that overlap the form. Center a clean cream form card.
 * ----------------------------------------------------------------- */
body.vd-about #sec-1ca5.u-section-7 {
  padding: 5rem 1rem !important;
  min-height: 0 !important;
  background: linear-gradient(180deg, #fdf6ee 0%, #fffaf4 100%) !important;
}

body.vd-about #sec-1ca5.u-section-7 .u-sheet-1 {
  min-height: 0 !important;
  max-width: 720px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative;
}

/* Kill the decorative garland image and blob/circle shapes. */
body.vd-about #sec-1ca5.u-section-7 .u-image-1,
body.vd-about #sec-1ca5.u-section-7 .u-shape-1,
body.vd-about #sec-1ca5.u-section-7 .u-shape-2 {
  display: none !important;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 {
  width: 100% !important;
  max-width: 620px !important;
  height: auto !important;
  margin: 0 auto !important;
  padding: 0 !important;
  background: #ffffff !important;
  border-radius: 18px !important;
  box-shadow: 0 16px 48px rgba(61, 47, 40, 0.10) !important;
  border: 1px solid rgba(74, 63, 56, 0.08);
  position: relative;
  z-index: 2;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-inner-form {
  padding: 2.25rem !important;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-label {
  font-family: "Poppins", sans-serif !important;
  font-size: 0.875rem !important;
  font-weight: 500;
  color: #4a3f38;
  margin-bottom: 0.35rem;
  display: block;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-input {
  width: 100% !important;
  padding: 0.7rem 0.9rem !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  color: #3d2f28;
  background: #fffaf4 !important;
  border: 1.5px solid rgba(74, 63, 56, 0.18) !important;
  border-radius: 10px !important;
  transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-input:focus {
  outline: none !important;
  border-color: #8d2c3f !important;
  box-shadow: 0 0 0 3px rgba(141, 44, 63, 0.15) !important;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-form-group {
  margin-bottom: 1rem !important;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-agree .u-field-label {
  font-size: 0.875rem;
  color: #5c4a42;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-agree .u-field-label a {
  color: #8d2c3f;
  text-decoration: underline;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-btn-submit,
body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-btn-1 {
  background: #8d2c3f !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 999px !important;
  padding: 0.85rem 2.5rem !important;
  font-family: "Poppins", sans-serif !important;
  font-size: 0.9375rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  width: auto !important;
  min-width: 160px;
  cursor: pointer;
  transition: background 0.2s ease, transform 0.2s ease;
}

body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-btn-submit:hover,
body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-btn-1:hover {
  background: #6d1f30 !important;
  transform: translateY(-1px);
}

@media (max-width: 575px) {
  body.vd-about #sec-1ca5.u-section-7 {
    padding: 3rem 1rem !important;
  }
  body.vd-about #sec-1ca5.u-section-7 .u-form-1 .u-inner-form {
    padding: 1.5rem !important;
  }
}

/* -----------------------------------------------------------------
 * SECTION 8 — Legacy fixed-left social rail. Fat footer owns socials
 * now, so hide the entire column and its font-awesome CSS fallout.
 * ----------------------------------------------------------------- */
body.vd-about #sec-ea73,
body.vd-about #sec-ea73 .icon-bar,
body.vd-about .icon-bar {
  display: none !important;
}

/* Safety net — any remaining Nicepage "animation opacity 0" states on
 * About-page hero/copy blocks should be visible. */
body.vd-about [data-animation-name] {
  opacity: 1 !important;
  visibility: visible !important;
}

/* ==========================================================================
   V8 - ANTI-EMPTY-SPACE AUDIT (2026-04-17)
   --------------------------------------------------------------------------
   Nicepage's generated CSS routinely carries enormous `min-height` values
   (544px - 6374px) on sections and sheets. Those values were calibrated for
   the ORIGINAL full-bleed editor layout. When we later simplified a section
   (e.g. turning a 3-column image hub into two CTA buttons, replacing a
   product grid with a simpler one, or hiding a legacy fixed-position
   icon-bar), the stale min-heights leave behind huge blank slabs under the
   content. This block neutralises every such zombie section on every live,
   user-facing page.
   --------------------------------------------------------------------------
   Rule of thumb: only sections whose markup we actively reshaped are
   overridden here. Legitimate full-bleed heroes keep their Nicepage
   min-heights (they need that height for the parallax background image).
   ========================================================================== */

/* --- Visaka-Garlands.php --------------------------------------------------
   "Explore" CTA row is just an <h2> + two buttons now. The original
   Nicepage layout was a 3-column image category grid, so the CSS still
   asks for 872px desktop / 6374px tablet. Collapse to content height. */
body.vd-garlands-hub #sec-garlands-categories,
body.vd-garlands-hub #sec-garlands-categories .u-sheet-1 {
  min-height: 0 !important;
}

/* --- Visaka-Garlands.php & Visaka-Tanjore-Paintings-USA.php ---------------
   Both pages share Visaka-Carnation-Garlands.css which hard-codes
   .u-section-4 .u-sheet-1 min-height to 544px / 400px / 790px across
   breakpoints. Our FAQ sections are shorter than that reserve, so there
   is a visible gap below the last question. Let content size the sheet. */
body.vd-garlands-hub #sec-garlands-faq,
body.vd-garlands-hub #sec-garlands-faq .u-sheet-1,
body.vd-tanjore-hub #sec-tanjore-faq,
body.vd-tanjore-hub #sec-tanjore-faq .u-sheet-1 {
  min-height: 0 !important;
}

/* --- Visaka-Garlands.php & Visaka-Tanjore-Paintings-USA.php ---------------
   About / intro sheets: copy only, no imagery. Kill stale padding reserve
   so the section hugs its content at every breakpoint. */
body.vd-garlands-hub #sec-garlands-about,
body.vd-garlands-hub #sec-garlands-about .u-sheet-1,
body.vd-tanjore-hub #sec-tanjore-about,
body.vd-tanjore-hub #sec-tanjore-about .u-sheet-1 {
  min-height: 0 !important;
}

/* --- Contact.php ----------------------------------------------------------
   sec-60c1 (u-section-4) is the legacy fixed-position social icon rail.
   Every child is position:fixed, so the section itself has zero content
   in the document flow - but Contact.css reserves 420px+ for it. Hide
   the whole rail; the fat footer owns social links now. */
body #sec-60c1,
body #sec-60c1 .icon-bar {
  display: none !important;
}

/* --- Contact.php: map section --------------------------------------------
   Contact.css gives .u-section-3 a 773px min-height from the original
   map layout. The iframe inside has no intrinsic height, so we cap the
   section and force the map wrapper to a sensible, responsive height. */
body #sec-610c.u-section-3 {
  min-height: 0 !important;
  padding: 0 !important;
}
body #sec-610c.u-section-3 .u-map-1,
body #sec-610c.u-section-3 .embed-responsive {
  min-height: 420px !important;
  height: 420px !important;
}
body #sec-610c.u-section-3 .embed-responsive iframe {
  width: 100% !important;
  height: 100% !important;
  border: 0 !important;
  display: block !important;
}
@media (max-width: 767px) {
  body #sec-610c.u-section-3 .u-map-1,
  body #sec-610c.u-section-3 .embed-responsive {
    min-height: 320px !important;
    height: 320px !important;
  }
}

/* --- thank-you-page.php ---------------------------------------------------
   Thank-You-Template.css sets .u-section-1 min-height to 800px. The page
   contains a headline plus two short paragraphs (~180px). Kill the
   reservation and add breathing-room padding instead. */
body #sec-0898.u-section-1,
body #sec-0898.u-section-1 .u-sheet-1 {
  min-height: 0 !important;
}
body #sec-0898.u-section-1 {
  padding: 64px 20px !important;
}
@media (max-width: 575px) {
  body #sec-0898.u-section-1 {
    padding: 40px 16px !important;
  }
}

/* --- Site-wide sanity: any legacy fixed-position ".icon-bar" host section
   should never claim flow space (same pattern as sec-60c1 / sec-7e5c).
   This guards us against future pages accidentally inheriting the same
   zombie markup. */
body .u-section-4:has(> .u-custom-html-1 .icon-bar),
body .u-section-10:has(> .u-custom-html-1 .icon-bar) {
  display: none !important;
}

/* ==========================================================================
   V9 - EDITORIAL HERO (Garlands + Tanjore hub pages)
   --------------------------------------------------------------------------
   The Nicepage-generated hero (u-shape-1 translucent pink card + off-centre
   KoHo h1 set to --animation-custom_in-opacity: 0) rendered as a faded,
   boxed placeholder on top of a busy photographic background - the h1 was
   nearly invisible. This block replaces the entire hero interior with an
   editorial, full-bleed layout: photographic background, cinematic dark
   gradient for readability, display serif headline, brand-accent rule,
   two-tier CTAs, and at-a-glance trust facts. Scoped only to the two
   hub pages so no other section is affected.
   --------------------------------------------------------------------------
   Notes:
   - We keep the outer Nicepage classes (skrollable u-parallax lazyload) so
     Nicepage's own JS still resolves data-bg to background-image on
     intersection; we just ignore every other legacy class inside.
   - The heroes opt in via `.vd-hero-modern` on the <section>; per-page
     accent colours live on .vd-hero-garlands and .vd-hero-tanjore.
   ========================================================================== */

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern {
  /* Reset Nicepage's min-heights / sheet paddings and go full-bleed. */
  position: relative !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-start !important;
  min-height: clamp(30rem, 78vh, 46rem) !important;
  padding: clamp(4rem, 10vh, 8rem) clamp(1.25rem, 5vw, 4rem) !important;
  margin: 0 !important;
  overflow: hidden !important;
  isolation: isolate;
  /* Make the background image cover the whole section regardless of the
     original Nicepage inline sizing; Nicepage still paints `data-bg` onto
     background-image after lazyload, so we only set placement. */
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
  background-color: #1b0a10 !important; /* fallback while lazy-bg loads */
  color: #fff !important;
}

/* Cinematic dark gradient overlay so the headline reads on any image. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__overlay,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__overlay {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background:
    /* soft vignette anchoring the corners */
    radial-gradient(ellipse at 30% 40%,
      rgba(20, 7, 12, 0.00) 0%,
      rgba(20, 7, 12, 0.35) 55%,
      rgba(20, 7, 12, 0.75) 100%),
    /* left-to-right reading gradient */
    linear-gradient(100deg,
      rgba(28, 10, 18, 0.88) 0%,
      rgba(28, 10, 18, 0.62) 38%,
      rgba(28, 10, 18, 0.20) 68%,
      rgba(28, 10, 18, 0.00) 100%);
}

/* Tanjore uses a warmer, gold-anchored gradient so the deity artwork stays
   vibrant while the left copy panel remains legible. */
body.vd-tanjore-hub #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__overlay {
  background:
    radial-gradient(ellipse at 28% 48%,
      rgba(25, 12, 5, 0.00) 0%,
      rgba(25, 12, 5, 0.30) 55%,
      rgba(25, 12, 5, 0.70) 100%),
    linear-gradient(100deg,
      rgba(34, 14, 6, 0.90) 0%,
      rgba(34, 14, 6, 0.60) 40%,
      rgba(34, 14, 6, 0.15) 70%,
      rgba(34, 14, 6, 0.00) 100%);
}

/* Inner wrapper centers content to a max column. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__inner,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__inner {
  position: relative;
  z-index: 1;
  width: 100%;
  max-width: 1240px;
  margin: 0 auto;
  padding: 0;
  display: flex;
  align-items: center;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__content,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__content {
  width: 100%;
  max-width: 38rem;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

/* Eyebrow: small-caps trust/location tag with a hand-drawn dot accent. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__eyebrow,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 0.65rem;
  margin: 0 !important;
  padding: 0.45rem 0.9rem 0.45rem 0.75rem !important;
  align-self: flex-start;
  font-family: "Poppins", "Raleway", system-ui, sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  color: #f6e7ce !important;
  background: rgba(255, 255, 255, 0.08) !important;
  border: 1px solid rgba(246, 231, 206, 0.35) !important;
  border-radius: 999px !important;
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__eyebrow-mark,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__eyebrow-mark {
  width: 0.5rem;
  height: 0.5rem;
  border-radius: 50%;
  background: #e8b659;
  box-shadow: 0 0 0 3px rgba(232, 182, 89, 0.22);
  flex: 0 0 auto;
}

body.vd-tanjore-hub #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__eyebrow-mark {
  background: #f2c95c;
  box-shadow: 0 0 0 3px rgba(242, 201, 92, 0.28);
}

/* Display headline in Cormorant Garamond - editorial, elegant, high-impact.
   Override every Nicepage inheritance path. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__title {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: none !important;
  font-family: "Cormorant Garamond", "Palanquin Dark", Georgia, serif !important;
  font-weight: 600 !important;
  font-style: normal !important;
  font-size: clamp(2.5rem, 5.5vw, 4.6rem) !important;
  line-height: 1.02 !important;
  letter-spacing: -0.01em !important;
  color: #ffffff !important;
  text-shadow: 0 2px 24px rgba(0, 0, 0, 0.45);
  text-align: left !important;
  /* Neutralise any stale Nicepage animation starts so we never render an
     invisible headline even before JS runs. */
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  --animation-custom_in-opacity: 1 !important;
}

/* Second line of the headline - italicised script accent in the brand gold. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title-accent,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__title-accent {
  display: block;
  margin-top: 0.15em;
  font-style: italic;
  font-weight: 500;
  font-size: 0.66em;
  color: #f0cf86;
  letter-spacing: 0.005em;
}

body.vd-tanjore-hub #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__title-accent {
  color: #f5d486;
}

/* Lede paragraph - readable Poppins with a calmer weight + colour. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__lede,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__lede {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
  max-width: 34rem !important;
  font-family: "Poppins", "Raleway", system-ui, sans-serif !important;
  font-weight: 400 !important;
  font-size: clamp(1rem, 1.25vw, 1.1875rem) !important;
  line-height: 1.65 !important;
  color: rgba(255, 255, 255, 0.92) !important;
  text-shadow: 0 1px 12px rgba(0, 0, 0, 0.35);
  opacity: 1 !important;
  visibility: visible !important;
  transform: none !important;
  --animation-custom_in-opacity: 1 !important;
}

/* CTA row: primary filled button + ghost/outline secondary. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__actions,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 0.9rem 1rem;
  margin: 0.5rem 0 0;
  padding: 0;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.95rem 1.6rem !important;
  font-family: "Poppins", "Raleway", system-ui, sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.95rem !important;
  letter-spacing: 0.01em;
  line-height: 1 !important;
  text-decoration: none !important;
  border-radius: 999px !important;
  border: 1.5px solid transparent !important;
  transition:
    transform 0.2s ease,
    box-shadow 0.2s ease,
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease;
  white-space: nowrap;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--primary,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--primary {
  background: linear-gradient(135deg, #9c1432 0%, #7b0a20 100%) !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.10) !important;
  box-shadow:
    0 12px 28px -12px rgba(0, 0, 0, 0.55),
    0 2px 6px rgba(0, 0, 0, 0.25);
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--primary:hover,
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--primary:focus-visible,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--primary:hover,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--primary:focus-visible {
  transform: translateY(-2px);
  box-shadow:
    0 18px 34px -12px rgba(0, 0, 0, 0.65),
    0 3px 10px rgba(0, 0, 0, 0.30);
  outline: 0;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--ghost,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--ghost {
  background: transparent !important;
  color: #fff !important;
  border-color: rgba(255, 255, 255, 0.55) !important;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--ghost:hover,
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta--ghost:focus-visible,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--ghost:hover,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta--ghost:focus-visible {
  background: rgba(255, 255, 255, 0.12) !important;
  border-color: rgba(255, 255, 255, 0.85) !important;
  outline: 0;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta-arrow,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta-arrow {
  display: inline-block;
  transition: transform 0.2s ease;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta:hover .vd-hero-modern__cta-arrow,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta:hover .vd-hero-modern__cta-arrow {
  transform: translateX(3px);
}

/* At-a-glance trust chips under the CTAs. */
body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__facts,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__facts {
  list-style: none !important;
  margin: 1.25rem 0 0 !important;
  padding: 0 !important;
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem 1.4rem;
  font-family: "Poppins", "Raleway", system-ui, sans-serif;
  font-size: 0.82rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.78);
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__facts li,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__facts li {
  position: relative;
  padding-left: 1.1rem;
}

body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__facts li::before,
body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__facts li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.45rem;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background: #e8b659;
}

body.vd-tanjore-hub #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__facts li::before {
  background: #f2c95c;
}

/* Responsive: tablet - slightly tighter padding, keep left-anchored copy. */
@media (max-width: 991px) {
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern {
    min-height: clamp(26rem, 65vh, 36rem) !important;
    padding: clamp(3rem, 8vh, 5rem) clamp(1.5rem, 4vw, 2.5rem) !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__content,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__content {
    max-width: 34rem;
    gap: 1.1rem;
  }
}

/* Responsive: mobile - keep the editorial left-anchored composition, soften the
   gradient so the photo breathes behind the copy, tighten type. */
@media (max-width: 640px) {
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern {
    min-height: clamp(26rem, 82vh, 38rem) !important;
    padding: 2.75rem 1.25rem !important;
    align-items: flex-end !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__overlay,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__overlay {
    background:
      linear-gradient(180deg,
        rgba(22, 9, 14, 0.15) 0%,
        rgba(22, 9, 14, 0.45) 40%,
        rgba(22, 9, 14, 0.88) 100%);
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__content,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__content {
    max-width: 100%;
    gap: 1rem;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__title {
    font-size: clamp(2.1rem, 9vw, 3rem) !important;
    line-height: 1.05 !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title-accent,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__title-accent {
    font-size: 0.7em;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__lede,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__lede {
    max-width: none !important;
    font-size: 0.98rem !important;
    line-height: 1.55 !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__eyebrow,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__eyebrow {
    font-size: 0.65rem !important;
    letter-spacing: 0.14em !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__cta,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__cta {
    flex: 1 1 auto;
    min-width: 11rem;
    justify-content: center;
    padding: 0.9rem 1.25rem !important;
    font-size: 0.9rem !important;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__facts,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern .vd-hero-modern__facts {
    font-size: 0.68rem !important;
    gap: 0.4rem 1rem;
  }
}

/* Garlands-only one-line headline (tablet + desktop).
   "Indian Wedding & Pooja Garlands" was breaking onto two lines because the
   content column was capped at 38rem. Widen the column and retune the title
   clamp so the text fits on a single line from 768px up; the italic
   "in Illinois" accent stays on its own line because it's display:block.
   Mobile (<= 640px) keeps its own clamp and natural wrapping. */
@media (min-width: 768px) {
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__content {
    max-width: 62rem;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title {
    font-size: clamp(2.3rem, 4.2vw, 3.7rem) !important;
    letter-spacing: -0.015em !important;
    white-space: nowrap;
  }

  /* Lede and accent line should still wrap inside the wider column. */
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__title-accent,
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__lede {
    white-space: normal;
  }

  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern .vd-hero-modern__lede {
    max-width: 36rem !important;
  }
}

/* Respect the user's motion preference. */
@media (prefers-reduced-motion: reduce) {
  body.vd-garlands-hub #sec-garlands-hero.vd-hero-modern *,
  body.vd-tanjore-hub  #sec-tanjore-hero.vd-hero-modern * {
    transition: none !important;
    animation: none !important;
  }
}

/* Breadcrumb UI: components/vd-breadcrumbs.css (loaded by site-breadcrumbs.php) */

