/*
 * DWall Custom Overrides
 * 1. White navbar
 * 2. Image fixes — ensures all new images display correctly regardless of aspect ratio
 */

/* ================================================
   BASE — remove any horizontal overflow/gap
   ================================================ */
html, body {
  overflow-x: hidden !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

.page-wrapper {
  overflow-x: hidden !important;
  width: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Force topbar and header to truly span full viewport width */
.topbar-one,
.main-header,
.main-slider-one,
.main-slider-one .main-slider-one__item {
  width: 100% !important;
  max-width: 100% !important;
  left: 0 !important;
  right: 0 !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
}

/* Kill the ::before pseudo-element that extends 600% left — moved to navbar section below */

/* ================================================
   WHITE NAVBAR — header + nav links
   ================================================ */

/* Main header background: white — override ALL variants */
.main-header,
.main-header__inner,
.main-header--three,
.main-header--three .main-header__inner {
  background-color: #ffffff !important;
}

/* Logo area — force white, all screen sizes */
.main-header__logo,
.main-header--three .main-header__logo {
  background-color: #ffffff !important;
  min-height: 60px !important;
}

/* Kill the ::before pseudo that extends 600% left with dark color */
.main-header__inner::before,
.main-header--three .main-header__inner::before {
  display: none !important;
  content: none !important;
  width: 0 !important;
  background: none !important;
}

/* Kill ::after triangle on header */
.main-header::after,
.main-header--three::after {
  border-top-color: #ffffff !important;
  display: none !important;
}

/* Nav links: dark text */
.main-menu .main-menu__list > li > a {
  color: #2a2826 !important;
}

/* Active / hover nav link: brand orange */
.main-menu .main-menu__list > li.current > a,
.main-menu .main-menu__list > li:hover > a {
  color: var(--wallpi-base, #d18548) !important;
  text-shadow: none !important;
}

/* Hamburger lines (mobile): dark */
.mobile-nav__btn span {
  background-color: #2a2826 !important;
}

/* "Request Book" button on white header: use brand color */
.main-header__btn {
  background-color: var(--wallpi-base, #d18548) !important;
  color: #ffffff !important;
  border-color: var(--wallpi-base, #d18548) !important;
}
.main-header__btn::before {
  background-color: var(--wallpi-base, #d18548) !important;
}
.main-header__btn::after {
  background-color: #2a2826 !important;
}
.main-header__btn:hover {
  color: #ffffff !important;
}

/* Sticky cloned header stays white on scroll */
.sticky-header--cloned.main-header,
.sticky-header--cloned .main-header__inner,
.sticky-header--cloned .main-header__logo {
  background-color: #ffffff !important;
  box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
}
.sticky-header--cloned .main-header__inner::before {
  display: none !important;
}

/* Topbar above nav — keep it dark for contrast */
.topbar-one {
  background-color: #2a2826;
}

/* Topbar text and links — force white so they're visible on dark bg */
.topbar-one,
.topbar-one p,
.topbar-one span,
.topbar-one a,
.topbar-one li,
.topbar-one .topbar-one__info__item,
.topbar-one .topbar-one__quick_call,
.topbar-one .topbar-one__quick_call span,
.topbar-one .topbar-one__info__icon,
.topbar-one i {
  color: #ffffff !important;
}
.topbar-one a:hover {
  color: var(--wallpi-base, #d18548) !important;
}
.topbar-one .topbar-one__social a {
  color: #cccccc !important;
}
.topbar-one .topbar-one__social a:hover {
  color: var(--wallpi-base, #d18548) !important;
}

/* ================================================
   FORCE DESKTOP NAV — always show full menu
   ================================================ */
.main-header__nav {
  display: block !important;
}
.main-menu .main-menu__list {
  display: flex !important;
  align-items: center !important;
  flex-wrap: nowrap !important;
  list-style: none !important;
  margin: 0 !important;
  padding: 0 !important;
}
/* Hide mobile hamburger button on all sizes */
.mobile-nav__btn {
  display: none !important;
}

/* ================================================
   STATIC BANNER — full viewport height, no carousel
   ================================================ */

/* Section fills full screen */
.main-slider-one {
  position: relative;
  overflow: hidden;
  width: 100%;
  display: block;
}

/* Item — full width, 630px tall */
.main-slider-one .main-slider-one__item {
  position: relative;
  z-index: 3;
  height: 630px;
  min-height: 630px;
  width: 100%;
  display: flex;
  align-items: center;
  background-color: #1a110a;
  padding-top: 0;
  padding-bottom: 0;
}

/* Background image — cover, full bleed */
.main-slider-one .main-slider-one__bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  background-size: cover !important;
  background-position: center center !important;
  background-repeat: no-repeat !important;
}

/* Force text animations to show (no JS carousel triggering them) */
.main-slider-one .main-slider-one__content.active-item .main-slider-one__tag-title,
.main-slider-one .main-slider-one__content .main-slider-one__tag-title {
  opacity: 1 !important;
  transform: translateY(0) !important;
  transition: none !important;
  visibility: visible !important;
}

.main-slider-one .main-slider-one__content.active-item .main-slider-one__title,
.main-slider-one .main-slider-one__content .main-slider-one__title {
  opacity: 1 !important;
  transform: translateX(0) !important;
  transition: none !important;
  visibility: visible !important;
  overflow: visible !important;
}

/* Remove the white wipe box that covers the title text */
.main-slider-one .main-slider-one__title::after {
  display: none !important;
  content: none !important;
}

.main-slider-one .main-slider-one__content.active-item .main-slider-one__btn,
.main-slider-one .main-slider-one__content .main-slider-one__btn {
  opacity: 1 !important;
  transform: none !important;
  transition: none !important;
  visibility: visible !important;
}

/* Button — inline, not full-width */
.main-slider-one .hero-btn {
  display: inline-flex !important;
  width: auto !important;
}

/* Shape icon bottom-right */
.main-slider-one .main-slider-one__shope {
  position: absolute;
  bottom: 0;
  right: 0;
  z-index: 3;
  pointer-events: none;
}

/* ================================================
   FEATURE SECTION — enforce consistent card height
   ================================================ */
.feature-one__item__img img {
  width: 100% !important;
  height: 280px !important;
  min-height: 280px !important;
  max-height: 280px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.feature-one__item__circle_img img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 50% !important;
}

/* ================================================
   ABOUT SECTION (home page) — main + inner images
   ================================================ */
.about-one__image__wrap__main {
  width: 100% !important;
  height: 520px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 991px) {
  .about-one__image__wrap__main {
    height: 400px !important;
  }
}

@media (max-width: 767px) {
  .about-one__image__wrap__main {
    height: 320px !important;
    max-height: 320px !important;
    min-height: 320px !important;
  }
}

.about-one__image__wrap__inner_img {
  width: 100% !important;
  height: 220px !important;
  max-height: 220px !important;
  min-height: 220px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   ABOUT PAGE (about-two) — main + circle images
   ================================================ */
.about-two__imagecol__image {
  width: 100% !important;
  min-height: 480px !important;
  max-height: 480px !important;
  overflow: hidden !important;
}

.about-two__imagecol__image > img {
  width: 100% !important;
  height: 100% !important;
  min-height: 480px !important;
  max-height: 480px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 991px) {
  .about-two__imagecol__image,
  .about-two__imagecol__image > img {
    min-height: 350px !important;
    max-height: 350px !important;
  }
}

/* Small circle image on about page */
.about-two__imagecol__imagesmall {
  overflow: hidden !important;
}

.about-two__imagecol__imagesmall > img {
  width: 268px !important;
  height: 268px !important;
  object-fit: cover !important;
  object-position: center center !important;
  border-radius: 50% !important;
}

/* ================================================
   SERVICES SECTION — card images
   ================================================ */
.service-one__item__image > img {
  width: 100% !important;
  height: 280px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 767px) {
  .service-one__item__image > img {
    height: 260px !important;
    max-height: 260px !important;
    min-height: 260px !important;
  }
}

/* Services page (--two variant): images inside absolute info panel */
.service-one--two .service-one__item__image > img {
  width: 100% !important;
  height: 320px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   FEEDBACK SECTION — right side image
   ================================================ */
.services-feedback-one__image > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* About page feedback variant: main + left/right shape images */
.services-feedback-one--two .services-feedback-one__mainimage {
  width: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

.services-feedback-one--two .services-feedback-one__leftshape > img,
.services-feedback-one--two .services-feedback-one__rightshape > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   CLIENT STRIP — side thumbnail image
   ================================================ */
.services-client-one__image > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

/* ================================================
   PROJECT / PORTFOLIO — gallery cards
   ================================================ */
.project-one__item__image > img {
  width: 100% !important;
  height: 380px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

@media (max-width: 1200px) {
  .project-one__item__image > img {
    height: 320px !important;
  }
}

@media (max-width: 767px) {
  .project-one__item__image > img {
    height: 260px !important;
  }
}

/* ================================================
   CONSULTATION SECTION — main + circle images
   ================================================ */
.consultation-one__colimg__image__mainimg > img {
  width: 100% !important;
  height: 600px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

@media (max-width: 991px) {
  .consultation-one__colimg__image__mainimg > img {
    height: 490px !important;
  }
}

@media (max-width: 480px) {
  .consultation-one__colimg__image__mainimg > img {
    height: 380px !important;
  }
}

.consultation-one__colimg__image__circlemediam > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

.consultation-one__colimg__image__circlesmall > img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   BLOG CARDS — post thumbnail images
   ================================================ */
.blog-card__image > img {
  width: 100% !important;
  height: 260px !important;
  object-fit: cover !important;
  object-position: center center !important;
  display: block !important;
}

/* ================================================
   FOOTER BLOG THUMBNAILS
   ================================================ */
.footer-widget__col__content__post-img img {
  width: 100% !important;
  height: 70px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   WHY-CHOOSE (about page) — feature items
   ================================================ */
.why-choose-one__feature .feature-one__item__img img {
  width: 100% !important;
  height: 260px !important;
  min-height: 260px !important;
  max-height: 260px !important;
  object-fit: cover !important;
  object-position: center center !important;
}

/* ================================================
   TESTIMONIAL AVATARS — keep circular cropping
   ================================================ */
.testimonials-card__image img {
  width: 70px !important;
  height: 70px !important;
  object-fit: cover !important;
  object-position: center top !important;
  border-radius: 50% !important;
}

/* ================================================
   LOGO — size and position
   ================================================ */
.main-header__logo img,
.footer-widget__col__content__logo img,
.logo-box img {
  object-fit: contain !important;
  max-height: 80px !important;
  width: auto !important;
}

/* ================================================
   NAV — reduce height / padding
   ================================================ */
.main-header__logo {
  min-height: 70px !important;
  margin-left: 10px !important;
}

@media (min-width: 768px) {
  .main-header__logo {
    min-height: 70px !important;
    width: 200px !important;
    margin-left: 10px !important;
  }
}

.main-header__logo img {
  max-width: 160px !important;
  max-height: 70px !important;
  width: auto !important;
  object-fit: contain !important;
  margin-left: 10px !important;
}

.main-header__inner {
  min-height: 70px !important;
}

.main-menu .main-menu__list > li {
  padding-top: 18px !important;
  padding-bottom: 18px !important;
}

.main-header__right {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* ================================================
   HIDE BROKEN SHAPE PSEUDO-ELEMENTS
   (shapes/ folder not present in this build)
   ================================================ */

/* Feedback section left/right decorative shapes */
.services-feedback-one__shapeleft,
.services-feedback-one__shaperight {
  display: none !important;
}

/* Consultation section bg shape */
.consultation-one__bg {
  background-image: none !important;
}

/* About page left/right shape backgrounds */
.why-choose-one--aboutpage__shapeleft,
.why-choose-one--aboutpage__shaperight {
  display: none !important;
}

/* Remove broken ::before / ::after pseudo-elements that reference missing shapes */
.about-two__contentcol::before,
.about-one__image__wrap__inner_shape-top::after,
.about-one__image__wrap__inner_shape-left::after,
.about-one__image__wrap__shape-top::after,
.about-one__image__wrap__shape-right::after,
.about-one__image__wrap__shape-bottom::after,
.feature-one__item__circle_img::before,
.feature-one__item__circle_img::after,
.services-feedback-one__image::before {
  background-image: none !important;
  display: none !important;
}

/* Consultation background image wrapper */
.consultation-one__contentwrap__bg {
  background-image: none !important;
}

/* Project hover overlay bg */
.project-one__item__bg.hover--bg {
  background-image: none !important;
  background-color: var(--wallpi-base, #d18548) !important;
}

/* Team member images — section hidden if no team images */
.team-one {
  display: none !important;
}

/* ================================================
   REMOVE CSS MASK (requires missing shapes folder)
   ================================================ */

/* about-one main image uses a mask-image from shapes folder — remove it */
.about-one__image__wrap__main {
  -webkit-mask-image: none !important;
  mask-image: none !important;
  border-radius: 12px !important;
}

/* services-feedback --two uses mask on main image */
.services-feedback-one--two .services-feedback-one__mainimage {
  -webkit-mask-image: none !important;
  mask-image: none !important;
  border-radius: 12px !important;
}

/* services-feedback --two left/right shape masks */
.services-feedback-one--two .services-feedback-one__leftshape,
.services-feedback-one--two .services-feedback-one__rightshape {
  -webkit-mask-image: none !important;
  mask-image: none !important;
}

/* about-two small circle rotating border (uses missing shape) */
.about-two__imagecol__imagesmall::after {
  background-image: none !important;
  display: none !important;
}

/* ================================================
   ABOUT CIRCLE BADGE — logo image fix
   ================================================ */
.about-one__image__wrap__circle > img {
  width: 80px !important;
  height: 80px !important;
  object-fit: contain !important;
  border-radius: 0 !important;
}

/* ================================================
   PRODUCTS NAV DROPDOWN — Clean Light Design
   ================================================ */

/* Caret on Products link */
.main-menu__list > li.dropdown > a::after {
  content: "\f107";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: 9px;
  margin-left: 6px;
  display: inline-block;
  transition: transform 0.3s ease;
  vertical-align: middle;
}
.main-menu__list > li.dropdown:hover > a::after {
  transform: rotate(180deg);
}
.main-menu__list > li.dropdown:hover > a {
  color: var(--wallpi-base, #d18548) !important;
}

/* Parent positioning */
.main-menu__list > li.dropdown {
  position: relative;
}

/* Dropdown panel — white, soft shadow, 3 columns */
.main-menu__list > li.dropdown > ul {
  position: absolute;
  top: calc(100% + 6px);
  right: -120px;
  left: auto;
  transform: none;
  width: 560px;
  background: #ffffff;
  border-top: 3px solid var(--wallpi-base, #d18548);
  border-radius: 0 0 12px 12px;
  box-shadow: 0 16px 48px rgba(0, 0, 0, 0.12);
  z-index: 9999;
  padding: 16px 16px 12px;
  list-style: none;
  margin: 0;
  display: none;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 6px;
}
.main-menu__list > li.dropdown > ul::before {
  content: "Our Products";
  grid-column: 1 / -1;
  display: block;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: 2.5px;
  text-transform: uppercase;
  color: var(--wallpi-base, #d18548);
  padding: 0 4px 10px;
  border-bottom: 1px solid #f0ede8;
  margin-bottom: 6px;
}

/* Small triangle pointer */
.main-menu__list > li.dropdown > ul::after {
  content: "";
  position: absolute;
  top: -7px;
  right: 130px;
  left: auto;
  transform: none;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 7px solid var(--wallpi-base, #d18548);
}

/* Show on hover */
.main-menu__list > li.dropdown:hover > ul {
  display: grid !important;
  animation: lightDropIn 0.2s ease forwards;
}

@keyframes lightDropIn {
  from { opacity: 0; transform: translateY(-6px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Each link */
.main-menu__list > li.dropdown > ul > li {
  display: flex;
}
.main-menu__list > li.dropdown > ul > li > a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  color: #444 !important;
  font-size: 13px;
  font-weight: 500;
  border-radius: 7px;
  border: 1px solid transparent;
  text-decoration: none;
  transition: background 0.18s ease, color 0.18s ease, border-color 0.18s ease;
  white-space: nowrap;
  background: #fafafa;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 40px;
  line-height: 1.3;
  width: 100%;
}

/* Small orange dot */
.main-menu__list > li.dropdown > ul > li > a::before {
  content: "";
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--wallpi-base, #d18548);
  flex-shrink: 0;
  opacity: 0.5;
  transition: opacity 0.2s, transform 0.2s;
}

/* Hover — soft warm tint */
.main-menu__list > li.dropdown > ul > li > a:hover {
  background: #fff5ec;
  border-color: #f0d5b8;
  color: var(--wallpi-base, #d18548) !important;
}
.main-menu__list > li.dropdown > ul > li > a:hover::before {
  opacity: 1;
  transform: scale(1.4);
}

/* ================================================
   PRODUCT CARDS — Light, airy gallery tiles
   ================================================ */

/* Hide shop-only elements */
.product__item__link,
.product__item__btn-sale,
.product__item__price,
.product__item__ratings {
  display: none !important;
}

/* Card */
.product__item {
  border-radius: 12px;
  overflow: hidden;
  background: #ffffff;
  box-shadow: 0 2px 16px rgba(0, 0, 0, 0.07);
  transition: transform 0.32s ease, box-shadow 0.32s ease;
}
.product__item:hover {
  transform: translateY(-5px);
  box-shadow: 0 14px 40px rgba(209, 133, 72, 0.16);
}

/* Image */
.product__item__img {
  overflow: hidden;
  position: relative;
  width: 100%;
  height: 240px;
}
.product__item__img > img {
  display: block;
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: center;
  transition: transform 0.42s ease;
}
.product__item:hover .product__item__img > img {
  transform: scale(1.06);
}

/* Thin orange bottom edge on image */
.product__item__img::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: var(--wallpi-base, #d18548);
  transform: scaleX(0);
  transform-origin: left;
  transition: transform 0.32s ease;
}
.product__item:hover .product__item__img::after {
  transform: scaleX(1);
}

/* Title area — clean white */
.product__item__content {
  padding: 0 !important;
  background: #ffffff;
}
.product__item__wrap {
  padding: 0 !important;
}
.product__item__price-title {
  width: 100% !important;
}
.product__item__title {
  font-size: 14px !important;
  font-weight: 600 !important;
  text-align: center !important;
  padding: 14px 16px !important;
  margin: 0 !important;
  color: #2a2826 !important;
  letter-spacing: 0.2px;
  border-top: 1px solid #f5f0eb;
  transition: color 0.2s;
}
.product__item__title a {
  color: #2a2826 !important;
  text-decoration: none;
}
.product__item:hover .product__item__title {
  color: var(--wallpi-base, #d18548) !important;
}
.product__item:hover .product__item__title a {
  color: var(--wallpi-base, #d18548) !important;
}


/* ================================================
   PRODUCTS PAGE — grid spacing & section padding
   ================================================ */
.product-one {
  padding: 60px 0 80px;
}
.product-one .row.gutter-y-30 {
  row-gap: 30px !important;
}
/* Ensure all cards same height */
.product-one .col-md-6.col-lg-4 {
  display: flex;
  flex-direction: column;
}
.product-one .product__item {
  flex: 1;
  display: flex;
  flex-direction: column;
}
.product-one .product__item__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

/* Responsive — 2 cols on tablet, 1 col on mobile */
@media (max-width: 991px) {
  .product__item__img,
  .product__item__img > img {
    height: 220px !important;
  }
}
@media (max-width: 575px) {
  .product__item__img,
  .product__item__img > img {
    height: 200px !important;
  }
  .main-menu__list > li.dropdown > ul {
    width: calc(100vw - 20px) !important;
    right: -10px !important;
    grid-template-columns: 1fr 1fr !important;
  }
}

/* ================================================
   GALLERY PAGE
   ================================================ */

.dwall-gallery {
  padding: 60px 0 80px;
  background: #f9f7f5;
}

/* ── Filter tabs ── */
.dwall-gallery__filters {
  margin-bottom: 40px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 8px;
}
.dwall-filter-btn {
  display: inline-block;
  padding: 8px 20px;
  font-size: 13px;
  font-weight: 600;
  color: #555;
  background: #ffffff;
  border: 1.5px solid #e0d9d1;
  border-radius: 30px;
  cursor: pointer;
  transition: all 0.22s ease;
  letter-spacing: 0.3px;
}
.dwall-filter-btn:hover,
.dwall-filter-btn.active {
  background: var(--wallpi-base, #d18548);
  border-color: var(--wallpi-base, #d18548);
  color: #ffffff;
  box-shadow: 0 4px 14px rgba(209,133,72,0.28);
}

/* ── Grid ── */
.dwall-gallery__grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 10px;
}

@media (max-width: 1199px) {
  .dwall-gallery__grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 767px) {
  .dwall-gallery__grid { grid-template-columns: repeat(2, 1fr); gap: 6px; }
}
@media (max-width: 480px) {
  .dwall-gallery__grid { grid-template-columns: 1fr 1fr; gap: 5px; }
}

/* ── Each tile ── */
.dwall-gallery__item {
  position: relative;
  overflow: hidden;
  border-radius: 8px;
  background: #eee;
  aspect-ratio: 1 / 1;
}

.dwall-gallery__link {
  display: block;
  width: 100%;
  height: 100%;
  position: relative;
}

.dwall-gallery__link img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform 0.4s ease;
}

/* ── Hover overlay ── */
.dwall-gallery__overlay {
  position: absolute;
  inset: 0;
  background: rgba(209, 133, 72, 0.75);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
  opacity: 0;
  transition: opacity 0.3s ease;
}
.dwall-gallery__overlay i {
  font-size: 24px;
  color: #ffffff;
}
.dwall-gallery__overlay span {
  font-size: 12px;
  font-weight: 600;
  color: #ffffff;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  background: rgba(0,0,0,0.2);
  padding: 3px 10px;
  border-radius: 20px;
}

.dwall-gallery__item:hover .dwall-gallery__overlay {
  opacity: 1;
}
.dwall-gallery__item:hover img {
  transform: scale(1.06);
}

/* Inner pages consistent white header nav text */
.main-header--three .main-menu .main-menu__list > li > a {
  color: #2a2826 !important;
}

/* ================================================
   FOOTER — 3 equal columns (About | Quick Access | Our Products)
   ================================================ */
.main-footer__top .row {
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: flex-start !important;
}

.footer-widget__col {
  width: 33.333% !important;
  padding-right: 40px !important;
  box-sizing: border-box !important;
}

.footer-widget__col--about {
  width: 33.333% !important;
}

.footer-widget__col--links {
  width: 33.333% !important;
}

.footer-widget__col--products {
  width: 33.333% !important;
  padding-right: 0 !important;
}

/* Responsive — 2 cols on tablet, 1 col on mobile */
@media (max-width: 991px) {
  .footer-widget__col,
  .footer-widget__col--about,
  .footer-widget__col--links,
  .footer-widget__col--products {
    width: 50% !important;
  }
}

@media (max-width: 575px) {
  .footer-widget__col,
  .footer-widget__col--about,
  .footer-widget__col--links,
  .footer-widget__col--products {
    width: 100% !important;
    padding-right: 0 !important;
  }
}

/* ================================================
   HEADER SOCIAL ICONS
   ================================================ */
.main-header__social a {
  color: #2a2826 !important;
  font-size: 15px;
  transition: color 0.2s ease;
}
.main-header__social a:hover {
  color: var(--wallpi-base, #d18548) !important;
}

/* ================================================
   PRODUCT DETAIL PAGES
   ================================================ */
.product-detail-section {
  padding: 70px 0 80px;
  background: #f9f7f5;
}

.product-detail__gallery-item {
  position: relative;
  overflow: hidden;
  border-radius: 10px;
  aspect-ratio: 4/3;
  margin-bottom: 20px;
}
.product-detail__gallery-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.4s ease;
  display: block;
}
.product-detail__gallery-item:hover img {
  transform: scale(1.06);
}
.product-detail__gallery-overlay {
  position: absolute;
  inset: 0;
  background: rgba(209,133,72,0.7);
  display: flex;
  align-items: center;
  justify-content: center;
  opacity: 0;
  transition: opacity 0.3s ease;
  font-size: 24px;
  color: #fff;
}
.product-detail__gallery-item:hover .product-detail__gallery-overlay {
  opacity: 1;
}

/* ================================================
   Products Page — clickable cards with hover overlay
   ================================================ */
a.product__item__link {
  display: block;
  text-decoration: none !important;
  color: inherit !important;
}
a.product__item__link:hover .product__item__title {
  color: var(--wallpi-base, #d18548) !important;
}
a.product__item__link .product__item {
  position: relative;
  overflow: hidden;
  border-radius: 12px;
  transition: box-shadow 0.3s ease, transform 0.3s ease;
  box-shadow: 0 4px 16px rgba(0,0,0,0.08);
}
a.product__item__link:hover .product__item {
  box-shadow: 0 8px 30px rgba(0,0,0,0.16);
  transform: translateY(-4px);
}
.product__item__hover-btn {
  position: absolute;
  bottom: -50px;
  left: 0;
  right: 0;
  background: rgba(209,133,72,0.92);
  color: #fff;
  text-align: center;
  padding: 12px;
  font-size: 14px;
  font-weight: 600;
  transition: bottom 0.3s ease;
  z-index: 2;
}
.product__item__hover-btn span {
  color: #fff;
}
a.product__item__link:hover .product__item__hover-btn {
  bottom: 0;
}
.product__item__img {
  position: relative;
  overflow: hidden;
}

/* ================================================
   Product cards — CSS-only fade-in (no WOW.js dependency)
   ================================================ */
@keyframes dwallFadeUp {
  from { opacity: 0; transform: translateY(30px); }
  to   { opacity: 1; transform: translateY(0); }
}
.dwall-product-card {
  visibility: visible !important;
  opacity: 1 !important;
  animation: dwallFadeUp 0.6s ease both;
  animation-delay: var(--delay, 0s);
}
/* Force product items visible even if WOW hides them */
.product__item {
  visibility: visible !important;
  opacity: 1 !important;
}

/* ================================================
   Products page — full-bleed image cards (no pink bg, no padding)
   ================================================ */
.product-one .product__item__img {
  padding: 0 !important;
  background-color: #f5f5f5 !important;
  border-radius: 12px 12px 0 0 !important;
  height: 240px;
  overflow: hidden;
}
.product-one .product__item__img img {
  min-height: unset !important;
  max-height: unset !important;
  width: 100% !important;
  height: 240px !important;
  object-fit: cover !important;
  padding: 0 !important;
}
.product-one .product__item {
  border-radius: 12px !important;
  box-shadow: 0 4px 20px rgba(0,0,0,0.08);
  background: #fff !important;
}
.product-one .product__item__content {
  padding: 16px 20px !important;
}
.product-one .product__item__title {
  font-size: 16px !important;
  font-weight: 600 !important;
  color: #2a2826 !important;
  margin: 0 !important;
  text-align: center !important;
}
