/* Final site theme: loaded after page CSS for visual consistency. */
:root {
  --font-display: "Fraunces", Georgia, serif;
  --font-body: "DM Sans", system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
  --text-xs: 0.72rem;
  --text-sm: 0.8rem;
  --text-base: 0.9rem;
  --text-lg: 1rem;
  --text-xl: 1.15rem;
  --text-2xl: 1.45rem;
  --text-3xl: clamp(1.8rem, 3vw, 2.35rem);
  --theme-bg: var(--bs-light, #f8f9fa);
  --theme-surface: #ffffff;
  --theme-heading: #18352a;
  --theme-ink: var(--bs-body-color, #212529);
  --theme-muted: var(--bs-secondary-color, #6c757d);
  --theme-line: var(--bs-border-color, #dee2e6);
  --theme-green: var(--bs-success, #56cc9d);
  --theme-green-dark: #2f8568;
  --theme-green-soft: rgba(86, 204, 157, 0.14);
  --theme-accent: var(--bs-warning, #ffce67);
  --theme-accent-dark: #a87812;
  --theme-danger: var(--bs-danger, #ff7851);
  --theme-info: var(--bs-info, #6cc3d5);
  --theme-ring: rgba(86, 204, 157, 0.2);
  --theme-shadow-sm: 0 8px 22px rgba(25, 46, 32, 0.06);
  --theme-shadow-md: 0 16px 40px rgba(25, 46, 32, 0.1);
}

html,
body {
  background: var(--theme-bg);
}

body {
  font-family: var(--font-body);
  color: var(--theme-ink);
  font-size: 15px;
  line-height: 1.55;
}

.bg-primary,
.btn-primary,
.btn-success,
.submit-btn,
.pd-btn--call,
.pd-btn--enquire:hover,
.search-hero__control button {
  --bs-btn-bg: var(--theme-green);
  --bs-btn-border-color: var(--theme-green);
  --bs-btn-hover-bg: var(--theme-green-dark);
  --bs-btn-hover-border-color: var(--theme-green-dark);
}

.main-content {
  background: linear-gradient(180deg, #fbfcfa 0%, var(--theme-bg) 40%, #ffffff 100%);
}

.text-primary,
.text-success {
  color: var(--theme-green) !important;
}

.text-warning {
  color: var(--theme-accent-dark) !important;
}

.border-primary,
.border-success {
  border-color: var(--theme-green) !important;
}

.alert-success,
.badge.bg-success {
  background: var(--theme-green-soft) !important;
  color: var(--theme-green-dark) !important;
  border-color: rgba(86, 204, 157, 0.28) !important;
}

.badge.bg-warning {
  background: rgba(255, 206, 103, 0.22) !important;
  color: var(--theme-accent-dark) !important;
}

h1,
h2,
h3,
h4,
h5,
h6,
.heading,
.blog-hedding,
.form-heading,
.cat-hero__title,
.cat-section-title,
.sub-hero__title,
.pd-info__title,
.pd-related__title,
.contact-hero__heading,
.section-title,
.hhedding {
  font-family: var(--font-display);
  color: var(--theme-heading);
  letter-spacing: 0;
  line-height: 1.12;
}

.cat-hero__title,
.cat-section-title,
.sub-hero__title,
.pd-info__title,
.pd-related__title,
.contact-hero__heading,
.blog-hedding,
.hhedding {
  font-size: var(--text-3xl);
}

p,
li,
td,
.blog-intro,
.spinfo,
.cat-hero__desc,
.sub-hero__desc,
.prod-card__desc,
.subcat-card__desc,
.pd-info__desc,
.blog-entry__desc,
.video-card__body p,
.contact-hero__sub,
.product-desc,
.highlight-text,
.search-card p,
.about-website-card-text,
.aboutus-content-container p,
.five-for-five-text-content p,
.our-brands-content-container > p {
  color: var(--theme-muted);
  line-height: 1.48;
  text-align: justify;
  text-justify: inter-word;
}

a {
  text-decoration: none;
}

a:hover {
  color: var(--theme-green);
}

.btn,
.pd-btn,
.submit-btn,
.nav-btn,
.view-btn-custom,
.pagination__link,
.search-sort__link,
.cat-empty__back,
.sub-empty__back {
  border-radius: 8px;
  font-family: var(--font-body);
  font-weight: 700;
  letter-spacing: 0;
  min-height: 40px;
  box-shadow: none;
}

.btn-success,
.btn-primary,
.submit-btn,
.pd-btn--call,
.pd-btn--enquire:hover,
.search-hero__control button {
  background: var(--theme-green);
  border-color: var(--theme-green);
  color: #ffffff;
}

.btn-success:hover,
.btn-primary:hover,
.submit-btn:hover,
.pd-btn--call:hover,
.search-hero__control button:hover {
  background: var(--theme-green-dark);
  border-color: var(--theme-green-dark);
  color: #ffffff;
  transform: translateY(-1px);
}

.btn-outline,
.btn-outline-light,
.pd-btn--enquire {
  background: #ffffff;
  border: 1px solid var(--theme-line);
  color: var(--theme-green);
}

.btn-outline:hover,
.btn-outline-light:hover,
.pd-btn--enquire:hover {
  background: var(--theme-green-soft);
  border-color: #b9d7c1;
  color: var(--theme-green-dark);
}

input,
select,
textarea,
.form-control,
.form-select,
.sub-sort-select,
.site-search,
.phone-form input {
  border-radius: 8px;
  border-color: var(--theme-line);
  color: var(--theme-ink);
  background-color: #ffffff;
}

input:focus,
select:focus,
textarea:focus,
.form-control:focus,
.form-select:focus,
.sub-sort-select:focus,
.site-search:focus-within,
.phone-form input:focus {
  border-color: #82b991;
  box-shadow: 0 0 0 4px var(--theme-ring);
  outline: 0;
}

header {
  background: rgba(255, 255, 255, 0.94);
  border-bottom: 1px solid rgba(223, 231, 223, 0.82);
  box-shadow: 0 8px 26px rgba(25, 46, 32, 0.07);
}

.top-header {
  background: linear-gradient(90deg, var(--theme-green-dark), var(--theme-green));
}

.logo h3 {
  font-family: var(--font-display);
  color: var(--theme-green-dark);
  letter-spacing: 0;
}

.desktop-menu a {
  color: #3f4b43;
  border-radius: 8px;
}

.desktop-menu a:hover,
.desktop-menu a.active-link {
  color: var(--theme-green-dark);
  background: var(--theme-green-soft);
}

.site-search {
  box-shadow: var(--theme-shadow-sm);
}

.site-search button {
  color: var(--theme-green);
  background: #f2f7f2;
}

.hamburger,
.close-btn {
  border-radius: 8px;
}

.sidebar {
  background: #fbfcfa;
  border-right-color: var(--theme-line);
  box-shadow: 8px 0 26px rgba(25, 46, 32, 0.06);
}

.sidebar h2 {
  background: #f1f6f1;
  color: var(--theme-heading);
}

.sidebar .main_cat_link,
.sidebar .main_cat_toggle {
  min-height: 44px;
}

.sidebar .main_cat_link {
  color: #25382b;
  font-weight: 700;
}

.sidebar .main_cat_row:hover,
.sidebar .sub_cat:hover,
.mobile-menu a:hover,
.mobile-main-cat:hover,
.mobile-main-cat.open {
  background: var(--theme-green-soft);
}

.sidebar .dic1,
.mobile-sub-list {
  border-color: var(--theme-line);
  box-shadow: var(--theme-shadow-md);
}

.card,
.site-card,
.info-card,
.blog-entry,
.video-card,
.topic-card,
.search-card,
.subcat-card,
.prod-card,
.product-card1,
.product-card-custom,
.pd-gallery__main,
.pd-info__pricing,
.pd-specs,
.pd-rel-card,
.contact-form-wrap,
.info-visual,
.core-message-card,
.grid-item.card {
  background: var(--theme-surface);
  border: 1px solid var(--theme-line);
  border-radius: 8px;
  box-shadow: var(--theme-shadow-sm);
}

.card:hover,
.site-card:hover,
.info-card:hover,
.blog-entry:hover,
.video-card:hover,
.topic-card:hover,
.search-card:hover,
.subcat-card:hover,
.prod-card:hover,
.product-card1:hover,
.product-card-custom:hover,
.pd-rel-card:hover,
.core-message-card:hover {
  box-shadow: var(--theme-shadow-md);
}

.cat-breadcrumb,
.sub-breadcrumb,
.pd-breadcrumb {
  background: #ffffff;
  border-bottom: 1px solid var(--theme-line);
}

.cat-breadcrumb ol,
.sub-breadcrumb ol,
.pd-breadcrumb ol {
  font-size: var(--text-xs);
}

.cat-breadcrumb a,
.sub-breadcrumb a,
.pd-breadcrumb a {
  color: var(--theme-green);
}

.cat-breadcrumb .active,
.sub-breadcrumb .active,
.pd-breadcrumb .active {
  color: var(--theme-muted);
}

.cat-hero,
.contact-hero,
.kcenter-hero,
.who-are-we-banner,
.search-hero {
  background: linear-gradient(135deg, rgba(18, 70, 43, 0.96), rgba(38, 100, 63, 0.9));
}

.sub-hero,
.pd-main,
.cat-section,
.sub-section,
.pd-related,
.video-blog-page,
.contact-page,
.kcenter-main,
.info-section {
  background: linear-gradient(180deg, #fbfcfa 0%, var(--theme-bg) 100%);
}

.cat-hero__content {
  padding-block: 44px;
}

.sub-hero__container {
  align-items: center;
  gap: 34px;
  padding-block: 34px;
}

.sub-hero__content {
  text-align: center;
  max-width: 760px;
  margin: 0 auto;
}

.sub-hero__media {
  justify-content: center;
}

.sub-hero__image,
.sub-hero__placeholder {
  max-width: 380px;
}

.sub-toolbar {
  border-bottom: 1px solid var(--theme-line);
  box-shadow: var(--theme-shadow-sm);
}

.prod-card__name,
.subcat-card__name,
.product-card1__name,
.search-card h3,
.video-card__body h3,
.core-message-card h3 {
  color: var(--theme-heading);
  font-family: var(--font-body);
  font-weight: 800;
}

.prod-card__price,
.product-card1__price,
.search-card__price strong,
.pd-price,
.pd-rel-card__body span {
  color: var(--theme-green);
  font-weight: 800;
}

.prod-card__discount,
.pd-discount,
.search-card__discount,
.product-card1__discount {
  background: var(--theme-danger);
  color: #ffffff;
  border-radius: 6px;
  letter-spacing: 0;
  box-shadow: none;
}

.pd-info {
  gap: 14px;
}

.pd-info__pricing {
  padding: 10px 14px;
}

.pd-price {
  font-size: var(--text-xl);
}

.pd-mrp,
.prod-card__mrp {
  color: #9aa49d;
}

.pd-tag,
.wa-badge,
.info-badge {
  border-radius: 8px;
  background: var(--theme-green-soft);
  color: var(--theme-green);
  border-color: #c9ddce;
}

.contact-grid,
.cat-container,
.sub-container,
.pd-container,
.video-blog-page .container {
  max-width: 1160px;
}

.contact-hero {
  box-shadow: var(--theme-shadow-md);
}

.field-group label,
.sub-sort-label,
.info-card__label {
  color: var(--theme-heading);
  font-weight: 800;
}

.footer {
  background: linear-gradient(135deg, #18352a, var(--theme-green-dark));
  color: rgba(255, 255, 255, 0.9);
  padding: 28px 20px;
}

.footer-title,
.location-heading,
.contact-heading,
.services-heading {
  font-family: var(--font-display);
  color: #ffffff;
  letter-spacing: 0;
}

.footer a,
.footer p,
.footer li {
  color: rgba(255, 255, 255, 0.86);
}

.footer a:hover,
.social-icon:hover,
.address-link:hover,
.contact-link:hover,
.service-link:hover {
  color: #c7e8cf;
}

.social-icon,
.contact-icon-wrapper {
  background: rgba(255, 255, 255, 0.1);
  border-radius: 8px;
}

@media (max-width: 991px) {
  .sidebar {
    box-shadow: none;
  }
}

@media (max-width: 767px) {
  body {
    font-size: 14.5px;
  }

  .cat-hero__content,
  .sub-hero__container,
  .pd-main,
  .cat-section,
  .sub-section,
  .pd-related,
  .contact-page,
  .video-blog-page {
    padding-block: 24px;
  }

  .sub-hero__media {
    order: -1;
  }

  .sub-hero__image,
  .sub-hero__placeholder {
    max-width: min(100%, 340px);
  }

  .prod-card,
  .subcat-card,
  .product-card1,
  .video-card,
  .info-card {
    box-shadow: 0 6px 18px rgba(25, 46, 32, 0.07);
  }
}

/* Polished, colorful refinements */
.section-eyebrow,
.page-eyebrow,
.contact-hero__eyebrow,
.info-card__label,
.sub-sort-label,
.flyout-card__heading {
  color: var(--theme-accent);
  font-family: var(--font-body);
  font-size: var(--text-xs);
  font-weight: 800;
  text-transform: uppercase;
}

.heading,
.terrace-section .heading,
.blog-hedding,
.cat-section-title,
.pd-related__title {
  position: relative;
  margin-bottom: 26px;
}

.heading::after,
.terrace-section .heading::after,
.blog-hedding::after,
.cat-section-title::after,
.pd-related__title::after {
  content: "";
  display: block;
  width: 58px;
  height: 3px;
  margin: 12px auto 0;
  border-radius: 999px;
  background: linear-gradient(90deg, var(--theme-green), var(--theme-accent));
}

.cat-section-title::after,
.pd-related__title::after {
  margin-left: 0;
}

.custom-carousel {
  background: #edf5ec;
  border-bottom: 1px solid var(--theme-line);
}

.carousel-container {
  background:
    linear-gradient(90deg, rgba(18, 70, 43, 0.08), transparent 28%, rgba(184, 135, 43, 0.08));
}

.carousel-btn,
.nav-btn {
  background: rgba(255, 255, 255, 0.94);
  color: var(--theme-green-dark);
  border: 1px solid rgba(223, 231, 223, 0.9);
  box-shadow: var(--theme-shadow-sm);
}

.carousel-btn:hover,
.nav-btn:hover {
  background: var(--theme-green);
  color: #ffffff;
}

.carousel-dot {
  width: 24px;
  height: 6px;
  border-radius: 999px;
  background: rgba(18, 70, 43, 0.35);
}

.carousel-dot.active {
  background: var(--theme-accent);
}

.info-section,
.terrace-categories,
.terrace-section,
.cat-section,
.sub-section,
.pd-related,
.video-blog-page,
.contact-page {
  position: relative;
}

.terrace-categories {
  background: #ffffff;
}

.terrace-section,
.pd-related {
  background: linear-gradient(180deg, #eef6ef 0%, #ffffff 100%);
}

.info-section {
  background:
    linear-gradient(180deg, #fffdf8 0%, #f2f7f1 100%);
}

.info-visual {
  padding: 10px;
  background: #ffffff;
}

.info-badge {
  box-shadow: var(--theme-shadow-sm);
}

.core-message-grid {
  gap: 14px;
}

.core-message-card {
  border-top: 3px solid var(--theme-green);
}

.core-message-card:nth-child(2) {
  border-top-color: var(--theme-accent);
}

.core-message-card:nth-child(3) {
  border-top-color: var(--theme-info);
}

.core-message-card .material-icons,
.info-card__icon,
.subcat-card__arrow,
.contact-icon-wrapper {
  color: var(--theme-green);
  background: var(--theme-green-soft);
}

.product-card .card-link,
.product-card1,
.prod-card,
.subcat-card,
.pd-rel-card,
.search-card,
.video-card {
  overflow: hidden;
}

.product-card .card-link,
.product-card1,
.prod-card,
.subcat-card,
.pd-rel-card {
  transition:
    transform 0.18s ease,
    border-color 0.18s ease,
    box-shadow 0.18s ease;
}

.product-card .card-link:hover,
.product-card1:hover,
.prod-card:hover,
.subcat-card:hover,
.pd-rel-card:hover {
  border-color: #b8d9c0;
  transform: translateY(-4px);
}

.product-card .card-body,
.product-card1__body,
.prod-card__body,
.subcat-card__body,
.pd-rel-card__body,
.video-card__body {
  background: #ffffff;
}

.product-card .product-title,
.product-card1__name,
.prod-card__name,
.subcat-card__name {
  font-size: var(--text-base);
  line-height: 1.28;
}

.product-card .product-desc,
.product-card1__desc,
.prod-card__desc,
.subcat-card__desc {
  font-size: var(--text-sm);
}

.product-card1__pricing,
.prod-card__pricing {
  border-top: 1px solid #edf2ed;
  padding-top: 8px;
}

.product-card1__price,
.prod-card__price {
  font-size: 0.84rem;
}

.product-card1__mrp,
.prod-card__mrp {
  font-size: 0.64rem;
}

.cat-hero,
.contact-hero,
.kcenter-hero,
.who-are-we-banner,
.search-hero {
  border-bottom: 4px solid rgba(184, 135, 43, 0.65);
}

.cat-hero__title,
.contact-hero__heading,
.kcenter-hero h1,
.who-are-we-banner h1,
.search-hero h1 {
  color: #ffffff;
  text-shadow: 0 2px 14px rgba(0, 0, 0, 0.22);
}

.cat-hero__desc,
.contact-hero__sub,
.kcenter-hero p,
.search-hero p {
  color: rgba(255, 255, 255, 0.9);
}

.sub-hero {
  border-bottom: 1px solid var(--theme-line);
}

.sub-hero__image,
.pd-gallery__main {
  background: #edf5ec;
}

.pd-gallery__main {
  width: min(100%, 390px);
}

.pd-info__title {
  max-width: 760px;
}

.pd-info__pricing {
  width: fit-content;
  max-width: 100%;
}

.pd-price {
  font-size: 1.05rem;
}

.pd-discount,
.prod-card__discount,
.product-card1__discount {
  font-size: 0.5rem;
  padding: 3px 6px;
}

.blog-entry {
  padding: 24px;
}

.blog-entry__heading,
.video-card__body h3,
.form-heading {
  font-family: var(--font-display);
  color: var(--theme-heading);
}

.video-card__media {
  background: #edf5ec;
}

.contact-grid {
  gap: 22px;
}

.contact-form-wrap {
  padding: 24px;
}

.info-card {
  border-left: 3px solid var(--theme-green);
}

.info-card:nth-child(2) {
  border-left-color: var(--theme-accent);
}

.info-card:nth-child(3) {
  border-left-color: var(--theme-info);
}

.submit-btn {
  min-height: 44px;
}

.footer {
  border-top: 4px solid rgba(184, 135, 43, 0.8);
}

.footer-divider,
.location-heading,
.contact-heading,
.services-heading {
  border-color: rgba(255, 255, 255, 0.18);
}

@media (max-width: 767px) {
  .heading::after,
  .terrace-section .heading::after,
  .blog-hedding::after,
  .cat-section-title::after,
  .pd-related__title::after {
    margin-left: auto;
    margin-right: auto;
  }

  .contact-form-wrap,
  .blog-entry {
    padding: 18px;
  }

  .pd-info__pricing {
    width: 100%;
  }
}

/* Home intro readability */
.main-content .info-section {
  background:
    linear-gradient(135deg, rgba(250, 255, 250, 0.94), rgba(232, 244, 234, 0.92)),
    url("https://organicmandya.com/cdn/shop/articles/generated-image29_3e38b090-c64d-4421-8eec-ad34ba0f29be.jpg?v=1782366318&width=1200") center / cover;
}

.main-content .info-section .section-eyebrow {
  background: rgba(86, 204, 157, 0.18);
  border: 1px solid rgba(86, 204, 157, 0.32);
  color: #1c684d;
  text-shadow: none;
}

.main-content .info-section .hhedding {
  color: #18352a;
  text-shadow: none;
}

.main-content .info-section .spinfo {
  color: #30463a;
  font-size: clamp(1rem, 1.45vw, 1.12rem);
  font-weight: 500;
  line-height: 1.58;
}

.main-content .info-section .core-message-card p {
  color: #4e6357;
}
