/*
 Theme Name:   Woodmart Child
 Description:  Woodmart Child Theme
 Author:       XTemos
 Author URI:   http://xtemos.com
 Template:     woodmart
 Version:      1.0.0
 Text Domain:  woodmart
*/







/* =========================================
   SANIVARI CONTACT FORM — WPFORMS 20701
   ========================================= */

#wpforms-20701 {
  --sv-navy: #062e4b;
  --sv-yellow: #ffbe19;
  --sv-text: #465568;
  --sv-muted: #68788a;
  --sv-border: #dce5ed;

  width: 100%;
  max-width: 100%;
  margin: 0 !important;
  padding: clamp(22px, 4vw, 44px) !important;
  position: relative;
  isolation: isolate;
  border: 1px solid #e3eaf0;
  border-radius: 22px;
  background:
    radial-gradient(
      ellipse at top right,
      rgba(255, 190, 25, 0.09),
      transparent 45%
    ),
    #ffffff;
  box-shadow:
    0 20px 55px rgba(6, 46, 75, 0.06),
    0 3px 10px rgba(6, 46, 75, 0.025);
  color: var(--sv-text);
  font-family: inherit;
  box-sizing: border-box;
}

#wpforms-20701 *,
#wpforms-20701 *::before,
#wpforms-20701 *::after {
  box-sizing: border-box;
}

/* Small brand accent */

#wpforms-20701::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 32px;
  width: 76px;
  height: 4px;
  border-radius: 0 0 6px 6px;
  background: var(--sv-yellow);
  pointer-events: none;
}

#wpforms-20701 #wpforms-form-20701 {
  margin: 0 !important;
}

/* Optional WPForms title and description */

#wpforms-20701 .wpforms-title {
  margin: 0 0 12px !important;
  color: var(--sv-navy) !important;
  font-family: inherit !important;
  font-size: clamp(25px, 3vw, 34px) !important;
  font-weight: 750 !important;
  line-height: 1.2 !important;
  letter-spacing: -0.7px;
}

#wpforms-20701 .wpforms-description {
  margin: 0 0 28px !important;
  color: var(--sv-muted) !important;
  font-size: 15px !important;
  line-height: 1.75 !important;
}

/* Field layout */

#wpforms-20701 .wpforms-field-container {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 24px;
  align-items: start;
}

#wpforms-20701 .wpforms-field-container::before,
#wpforms-20701 .wpforms-field-container::after {
  display: none !important;
}

#wpforms-20701 .wpforms-field-container > .wpforms-field {
  float: none !important;
  clear: none !important;
  width: auto !important;
  min-width: 0;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Subject, message and privacy span both columns */

#wpforms-20701 #wpforms-20701-field_6-container,
#wpforms-20701 #wpforms-20701-field_7-container,
#wpforms-20701 #wpforms-20701-field_8-container {
  grid-column: 1 / -1;
}

/* Preserve hidden anti-spam fields.
   Do not delete these fields from the form. */

#wpforms-20701 #wpforms-20701-field_9-container,
#wpforms-20701 #wpforms-20701-field_NaN-container,
#wpforms-20701 .wpforms-field-hp {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  min-width: 0 !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  pointer-events: none !important;
}

/* Labels */

#wpforms-20701 .wpforms-field-label {
  display: block;
  margin: 0 0 9px !important;
  padding: 0 !important;
  color: var(--sv-navy) !important;
  font-family: inherit !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
}

#wpforms-20701 .wpforms-required-label {
  margin-left: 3px;
  color: #b53b28 !important;
}

/* Text fields, email, dropdown and message */

#wpforms-20701 input[type="text"],
#wpforms-20701 input[type="email"],
#wpforms-20701 input[type="tel"],
#wpforms-20701 input[type="url"],
#wpforms-20701 select,
#wpforms-20701 textarea {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  height: 54px;
  min-height: 54px;
  margin: 0 !important;
  padding: 14px 16px !important;
  border: 1px solid var(--sv-border) !important;
  border-radius: 10px !important;
  background-color: #f8fafc !important;
  color: var(--sv-navy) !important;
  font-family: inherit !important;
  font-size: 16px !important;
  font-weight: 400 !important;
  line-height: 1.5 !important;
  box-shadow: none !important;
  transition:
    border-color 0.2s ease,
    background-color 0.2s ease,
    box-shadow 0.2s ease;
}

#wpforms-20701 input::placeholder,
#wpforms-20701 textarea::placeholder {
  color: #758394 !important;
  opacity: 1;
}

/* Dropdown arrow */

#wpforms-20701 select {
  -webkit-appearance: none !important;
  appearance: none !important;
  padding-right: 44px !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='18' height='18' viewBox='0 0 24 24' fill='none' stroke='%23062e4b' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: right 15px center !important;
  background-size: 18px !important;
  cursor: pointer;
}

#wpforms-20701 select option {
  background: #ffffff;
  color: var(--sv-navy);
}

/* Message area */

#wpforms-20701 textarea {
  height: 175px !important;
  min-height: 150px !important;
  resize: vertical;
}

/* Hover and keyboard focus */

#wpforms-20701 input[type="text"]:hover,
#wpforms-20701 input[type="email"]:hover,
#wpforms-20701 input[type="tel"]:hover,
#wpforms-20701 input[type="url"]:hover,
#wpforms-20701 select:hover,
#wpforms-20701 textarea:hover {
  border-color: #aebfcd !important;
}

#wpforms-20701 input[type="text"]:focus,
#wpforms-20701 input[type="email"]:focus,
#wpforms-20701 input[type="tel"]:focus,
#wpforms-20701 input[type="url"]:focus,
#wpforms-20701 select:focus,
#wpforms-20701 textarea:focus {
  outline: 2px solid var(--sv-navy) !important;
  outline-offset: 2px !important;
  border-color: var(--sv-navy) !important;
  background-color: #ffffff !important;
  box-shadow: 0 0 0 5px rgba(255, 190, 25, 0.14) !important;
}

/* Help text */

#wpforms-20701 .wpforms-field-description {
  margin: 8px 0 0 !important;
  padding: 0 !important;
  color: var(--sv-muted) !important;
  font-size: 12px !important;
  line-height: 1.65 !important;
}

/* Privacy panel */

#wpforms-20701 #wpforms-20701-field_8-container {
  padding: 20px !important;
  border: 1px solid #e5eaf0;
  border-radius: 12px;
  background: #f6f9fc;
}

#wpforms-20701 #wpforms-20701-field_8-container fieldset {
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

#wpforms-20701 #wpforms-20701-field_8-container legend {
  float: none !important;
  width: 100%;
  margin-bottom: 12px !important;
}

#wpforms-20701 #wpforms-20701-field_8 {
  margin: 0 !important;
  padding: 0 !important;
  list-style: none !important;
}

#wpforms-20701 #wpforms-20701-field_8 > li {
  display: flex !important;
  align-items: flex-start;
  gap: 11px;
  margin: 0 !important;
  padding: 0 !important;
}

#wpforms-20701 #wpforms-20701-field_8 input[type="checkbox"] {
  -webkit-appearance: auto !important;
  appearance: auto !important;
  position: static !important;
  flex: 0 0 19px;
  width: 19px !important;
  height: 19px !important;
  min-height: 19px !important;
  margin: 3px 0 0 !important;
  padding: 0 !important;
  accent-color: var(--sv-navy);
  opacity: 1 !important;
  cursor: pointer;
}

#wpforms-20701 #wpforms-20701-field_8 input[type="checkbox"]:focus-visible {
  outline: 2px solid var(--sv-navy) !important;
  outline-offset: 3px;
}

#wpforms-20701 #wpforms-20701-field_8 .wpforms-field-label-inline {
  display: block !important;
  flex: 1;
  min-width: 0;
  margin: 0 !important;
  padding: 0 !important;
  color: var(--sv-text) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  cursor: pointer;
}

/* Remove decorative checkbox marks from theme styles */

#wpforms-20701 #wpforms-20701-field_8 .wpforms-field-label-inline::before,
#wpforms-20701 #wpforms-20701-field_8 .wpforms-field-label-inline::after {
  display: none !important;
}

#wpforms-20701 #wpforms-20701-field_8-description {
  margin-top: 10px !important;
}

#wpforms-20701 .wpforms-field-description a {
  color: var(--sv-navy) !important;
  font-weight: 700;
  text-decoration: underline !important;
  text-underline-offset: 3px;
}

#wpforms-20701 .wpforms-field-description a:hover {
  text-decoration-thickness: 2px !important;
}

/* Submit area */

#wpforms-20701 .wpforms-submit-container {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 14px;
  margin: 26px 0 0 !important;
  padding: 0 !important;
  clear: both;
}

#wpforms-20701 #wpforms-submit-20701 {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  width: auto;
  min-width: 210px;
  min-height: 54px;
  height: auto !important;
  margin: 0 !important;
  padding: 16px 30px !important;
  border: 1px solid var(--sv-yellow) !important;
  border-radius: 10px !important;
  background: var(--sv-yellow) !important;
  color: var(--sv-navy) !important;
  font-family: inherit !important;
  font-size: 15px !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  text-decoration: none !important;
  box-shadow: 0 7px 18px rgba(255, 190, 25, 0.2) !important;
  cursor: pointer;
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

#wpforms-20701 #wpforms-submit-20701:hover {
  border-color: var(--sv-navy) !important;
  background: var(--sv-navy) !important;
  color: #ffffff !important;
  box-shadow: 0 9px 22px rgba(6, 46, 75, 0.16) !important;
  transform: translateY(-2px);
}

#wpforms-20701 #wpforms-submit-20701:focus-visible {
  outline: 2px solid var(--sv-navy) !important;
  outline-offset: 4px !important;
}

#wpforms-20701 #wpforms-submit-20701:active {
  transform: translateY(0);
}

#wpforms-20701 #wpforms-submit-20701:disabled {
  opacity: 0.65;
  cursor: wait;
  transform: none;
  box-shadow: none !important;
}

#wpforms-20701 .wpforms-submit-spinner {
  flex: 0 0 auto;
  width: 24px !important;
  height: 24px !important;
  margin: 0 !important;
}

/* Validation feedback */

#wpforms-20701 input.wpforms-error,
#wpforms-20701 select.wpforms-error,
#wpforms-20701 textarea.wpforms-error,
#wpforms-20701 input[aria-invalid="true"],
#wpforms-20701 select[aria-invalid="true"],
#wpforms-20701 textarea[aria-invalid="true"] {
  border-color: #c34236 !important;
  background-color: #fffafa !important;
}

#wpforms-20701 label.wpforms-error,
#wpforms-20701 em.wpforms-error {
  display: block;
  margin: 7px 0 0 !important;
  color: #b52e24 !important;
  font-size: 12px !important;
  font-style: normal !important;
  font-weight: 500 !important;
  line-height: 1.6 !important;
}

#wpforms-20701 .wpforms-error-container {
  margin-bottom: 22px !important;
  padding: 16px 18px !important;
  border: 1px solid #efc6c2 !important;
  border-radius: 10px !important;
  background: #fff6f5 !important;
  color: #9b2920 !important;
}

/* AJAX and standard success messages */

#wpforms-20701 .wpforms-confirmation-container-full,
#wpforms-confirmation-20701 {
  margin: 0 !important;
  padding: 26px !important;
  border: 1px solid #bcdccf !important;
  border-left: 4px solid #267452 !important;
  border-radius: 12px !important;
  background: #f0faf5 !important;
  color: #234d3d !important;
  font-family: inherit;
  line-height: 1.8;
}

#wpforms-20701 .wpforms-confirmation-container-full h3,
#wpforms-confirmation-20701 h3 {
  margin: 0 0 10px !important;
  color: var(--sv-navy, #062e4b) !important;
  font-size: 23px !important;
  line-height: 1.35 !important;
}

#wpforms-20701 .wpforms-confirmation-container-full p,
#wpforms-confirmation-20701 p {
  margin: 0 0 10px !important;
  font-size: 15px !important;
}

#wpforms-20701 .wpforms-confirmation-container-full p:last-child,
#wpforms-confirmation-20701 p:last-child {
  margin-bottom: 0 !important;
}

/* Mobile */

@media (max-width: 767px) {
  #wpforms-20701 {
    padding: 26px 20px !important;
    border-radius: 16px;
  }

  #wpforms-20701::before {
    left: 22px;
    width: 58px;
  }

  #wpforms-20701 .wpforms-field-container {
    grid-template-columns: minmax(0, 1fr);
    gap: 21px;
  }

  #wpforms-20701 .wpforms-field-label {
    font-size: 13px !important;
  }

  #wpforms-20701 input[type="text"],
  #wpforms-20701 input[type="email"],
  #wpforms-20701 input[type="tel"],
  #wpforms-20701 input[type="url"],
  #wpforms-20701 select,
  #wpforms-20701 textarea {
    font-size: 16px !important;
    border-radius: 9px !important;
  }

  #wpforms-20701 textarea {
    height: 160px !important;
  }

  #wpforms-20701 #wpforms-20701-field_8-container {
    padding: 16px !important;
  }

  #wpforms-20701 .wpforms-submit-container {
    margin-top: 22px !important;
  }

  #wpforms-20701 #wpforms-submit-20701 {
    width: 100% !important;
    min-width: 0;
  }

  #wpforms-20701 .wpforms-submit-spinner {
    margin-inline: auto !important;
  }
}

/* Respect reduced-motion preferences */

@media (prefers-reduced-motion: reduce) {
  #wpforms-20701 input,
  #wpforms-20701 select,
  #wpforms-20701 textarea,
  #wpforms-20701 #wpforms-submit-20701 {
    transition: none !important;
    transform: none !important;
  }
}


/* =========================================
   SANIVARI CONTACT DETAILS
   ========================================= */

.custom_address {
  --sca-navy: #062e4b;
  --sca-yellow: #ffbe19;
  --sca-text: #465568;
  --sca-border: #e3eaf0;

  display: flex !important;
  flex-direction: column !important;
  align-items: stretch !important;
  gap: 16px !important;
  min-width: 0;
  padding: 0 !important;
  font-family: inherit;
}

.custom_address,
.custom_address *,
.custom_address *::before,
.custom_address *::after {
  box-sizing: border-box;
}

/* Contact cards */

.custom_address > .elementor-widget-wd_title {
  width: 100% !important;
  margin: 0 !important;
}

.custom_address > .elementor-widget-wd_title
> .elementor-widget-container {
  position: relative;
  min-height: 112px;
  padding: 24px 24px 24px 92px;
  border: 1px solid var(--sca-border);
  border-radius: 16px;
  background: #ffffff;
  box-shadow: 0 8px 26px rgba(6, 46, 75, 0.035);
  transition:
    border-color 0.2s ease,
    box-shadow 0.2s ease,
    transform 0.2s ease;
}

.custom_address > .elementor-widget-wd_title:hover
> .elementor-widget-container {
  border-color: #e7c66e;
  box-shadow: 0 12px 30px rgba(6, 46, 75, 0.07);
  transform: translateY(-2px);
}

/* Reset WoodMart spacing */

.custom_address .title-wrapper,
.custom_address .liner-continer,
.custom_address .title-after_title {
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
}

.custom_address .liner-continer {
  display: block !important;
}

.custom_address .woodmart-title-container {
  display: block !important;
  margin: 0 0 7px !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--sca-navy) !important;
  font-family: inherit !important;
  font-size: 17px !important;
  font-weight: 750 !important;
  line-height: 1.4 !important;
  letter-spacing: -0.2px;
  text-transform: none !important;
}

/* Remove decorative theme lines */

.custom_address .woodmart-title-container::before,
.custom_address .woodmart-title-container::after,
.custom_address .liner-continer::before,
.custom_address .liner-continer::after {
  display: none !important;
}

.custom_address .title-after_title,
.custom_address .title-after_title p {
  margin: 0 !important;
  color: var(--sca-text) !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  line-height: 1.85 !important;
  overflow-wrap: anywhere;
}

.custom_address .title-after_title a {
  color: var(--sca-navy) !important;
  text-decoration: none;
}

.custom_address .title-after_title a:hover {
  text-decoration: underline;
  text-underline-offset: 4px;
}

/* Icon backgrounds */

.custom_address > .elementor-widget-wd_title
> .elementor-widget-container::before {
  content: "";
  position: absolute;
  top: 25px;
  left: 22px;
  width: 49px;
  height: 49px;
  border: 1px solid #ffe19a;
  border-radius: 14px;
  background: linear-gradient(145deg, #fff7df, #ffedb7);
  pointer-events: none;
}

/* SVG icons */

.custom_address > .elementor-widget-wd_title
> .elementor-widget-container::after {
  content: "";
  position: absolute;
  top: 38px;
  left: 35px;
  width: 23px;
  height: 23px;
  background-color: var(--sca-navy);
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-position: center;
  mask-position: center;
  -webkit-mask-size: contain;
  mask-size: contain;
  pointer-events: none;
}

/* Email icon */

.custom_address .elementor-element-540fdde
> .elementor-widget-container::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='5' width='18' height='14' rx='2'/%3E%3Cpath d='m3 6 9 7 9-7'/%3E%3C/svg%3E");
}

/* Location icon */

.custom_address .elementor-element-188dd12
> .elementor-widget-container::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 11-8 11S4 16 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M20 10c0 6-8 11-8 11S4 16 4 10a8 8 0 1 1 16 0Z'/%3E%3Ccircle cx='12' cy='10' r='2.5'/%3E%3C/svg%3E");
}

/* Phone icon */

.custom_address .elementor-element-6f99de3
> .elementor-widget-container::after {
  -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 2 .7 2.9a2 2 0 0 1-.5 2.1L8 10a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c.9.3 1.9.6 2.9.7a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
  mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2.1 4.2 2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 2 .7 2.9a2 2 0 0 1-.5 2.1L8 10a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.5c.9.3 1.9.6 2.9.7a2 2 0 0 1 1.7 2Z'/%3E%3C/svg%3E");
}

/* Social heading: a simpler section divider */

.custom_address .elementor-element-a393533
> .elementor-widget-container {
  min-height: 0;
  margin-top: 8px;
  padding: 20px 0 0;
  border: 0;
  border-top: 1px solid var(--sca-border);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  transform: none;
}

.custom_address .elementor-element-a393533:hover
> .elementor-widget-container {
  border-color: var(--sca-border);
  box-shadow: none;
  transform: none;
}

.custom_address .elementor-element-a393533
> .elementor-widget-container::before,
.custom_address .elementor-element-a393533
> .elementor-widget-container::after {
  display: none;
}

.custom_address .elementor-element-a393533
.woodmart-title-container {
  margin-bottom: 0 !important;
  font-size: 15px !important;
}

/* Social buttons */

.custom_address .elementor-widget-wd_social_buttons {
  width: 100%;
  margin: 0 !important;
}

.custom_address .wd-social-icons {
  display: flex !important;
  align-items: center;
  justify-content: flex-start;
  flex-wrap: wrap;
  gap: 11px;
  margin: 0 !important;
  padding: 0 !important;
}

.custom_address .wd-social-icons .wd-social-icon {
  display: inline-flex !important;
  flex: 0 0 46px;
  align-items: center;
  justify-content: center;
  width: 46px !important;
  height: 46px !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid var(--sca-border) !important;
  border-radius: 12px !important;
  background: #ffffff !important;
  color: var(--sca-navy) !important;
  text-decoration: none !important;
  box-shadow: 0 4px 12px rgba(6, 46, 75, 0.035);
  transition:
    background-color 0.2s ease,
    border-color 0.2s ease,
    color 0.2s ease,
    transform 0.2s ease,
    box-shadow 0.2s ease;
}

.custom_address .wd-social-icon .wd-icon,
.custom_address .wd-social-icon .wd-icon::before {
  color: inherit !important;
  font-size: 18px !important;
  line-height: 1 !important;
}

.custom_address .wd-social-icons .wd-social-icon:hover {
  border-color: var(--sca-yellow) !important;
  background: var(--sca-yellow) !important;
  color: var(--sca-navy) !important;
  box-shadow: 0 7px 16px rgba(255, 190, 25, 0.2);
  transform: translateY(-3px);
}

.custom_address a:focus-visible {
  outline: 2px solid var(--sca-navy);
  outline-offset: 4px;
}

/* Mobile */

@media (max-width: 767px) {
  .custom_address {
    gap: 13px !important;
  }

  .custom_address > .elementor-widget-wd_title
  > .elementor-widget-container {
    min-height: 100px;
    padding: 20px 18px 20px 78px;
    border-radius: 13px;
  }

  .custom_address > .elementor-widget-wd_title
  > .elementor-widget-container::before {
    top: 21px;
    left: 17px;
    width: 44px;
    height: 44px;
    border-radius: 12px;
  }

  .custom_address > .elementor-widget-wd_title
  > .elementor-widget-container::after {
    top: 33px;
    left: 29px;
    width: 20px;
    height: 20px;
  }

  .custom_address .woodmart-title-container {
    font-size: 16px !important;
  }

  .custom_address .title-after_title,
  .custom_address .title-after_title p {
    font-size: 13px !important;
    line-height: 1.8 !important;
  }

  .custom_address .elementor-element-a393533
  > .elementor-widget-container {
    min-height: 0;
    padding: 18px 0 0;
    border-radius: 0;
  }
}

@media (prefers-reduced-motion: reduce) {
  .custom_address > .elementor-widget-wd_title
  > .elementor-widget-container,
  .custom_address .wd-social-icons .wd-social-icon {
    transition: none !important;
    transform: none !important;
  }
}



/* Uniform contact card spacing */
.custom_address {
  gap: 16px !important;
  margin: 0 !important;
  padding: 0 !important;
}

.custom_address > .elementor-widget {
  margin: 0 !important;
}

.custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
> .elementor-widget-container {
  display: grid;
  grid-template-columns: 49px minmax(0, 1fr);
  align-items: start;
  column-gap: 20px;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 24px !important;
}

/* Place icon and content within the same padded area */
.custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
> .elementor-widget-container::before {
  position: static !important;
  grid-column: 1;
  grid-row: 1;
  width: 49px;
  height: 49px;
}

.custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
> .elementor-widget-container::after {
  position: static !important;
  grid-column: 1;
  grid-row: 1;
  align-self: start;
  justify-self: center;
  width: 23px;
  height: 23px;
  margin-top: 13px;
}

.custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
> .elementor-widget-container > .title-wrapper {
  grid-column: 2;
  grid-row: 1;
  min-width: 0;
  margin: 0 !important;
}

/* Consistent spacing before social links */
.custom_address .elementor-element-a393533
> .elementor-widget-container {
  margin: 0 !important;
  padding: 24px 0 0 !important;
}

@media (max-width: 767px) {
  .custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
  > .elementor-widget-container {
    grid-template-columns: 44px minmax(0, 1fr);
    column-gap: 16px;
    padding: 20px !important;
  }

  .custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
  > .elementor-widget-container::before {
    width: 44px;
    height: 44px;
  }

  .custom_address > .elementor-widget-wd_title:not(.elementor-element-a393533)
  > .elementor-widget-container::after {
    width: 20px;
    height: 20px;
    margin-top: 12px;
  }
}


/* Sanivari footer contact information */
.elementor-widget-icon-list.contact_info {
  margin: 0 !important;
  padding: 0 !important;
  width: 100%;
}

.elementor-widget-icon-list.contact_info,
.elementor-widget-icon-list.contact_info * {
  box-sizing: border-box;
}

.elementor-widget-icon-list.contact_info .elementor-icon-list-items {
  display: flex !important;
  flex-direction: column;
  gap: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  list-style: none;
}

.elementor-widget-icon-list.contact_info .elementor-icon-list-item {
  display: flex !important;
  align-items: flex-start !important;
  gap: 13px;
  margin: 0 !important;
  padding: 0 !important;
  border: 0 !important;
}

/* Remove Elementor list dividers */
.elementor-widget-icon-list.contact_info .elementor-icon-list-item::after {
  display: none !important;
}

/* Also supports links added through Elementor */
.elementor-widget-icon-list.contact_info .elementor-icon-list-item > a {
  display: flex !important;
  align-items: flex-start !important;
  gap: 13px;
  width: 100%;
  margin: 0 !important;
  padding: 0 !important;
  text-decoration: none !important;
}

/* Icons */
.elementor-widget-icon-list.contact_info .elementor-icon-list-icon {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  flex: 0 0 32px;
  width: 32px;
  height: 32px;
  margin: 0 !important;
  padding: 8px !important;
  border: 1px solid rgba(255, 190, 25, 0.2);
  border-radius: 8px;
  background: rgba(255, 190, 25, 0.08);
  color: #ffbe19 !important;
}

.elementor-widget-icon-list.contact_info .elementor-icon-list-icon svg {
  display: block;
  width: 15px !important;
  height: 15px !important;
  margin: 0 !important;
  fill: #ffbe19 !important;
}

.elementor-widget-icon-list.contact_info .elementor-icon-list-icon i {
  color: #ffbe19 !important;
  font-size: 15px !important;
}

/* Contact text */
.elementor-widget-icon-list.contact_info .elementor-icon-list-text {
  flex: 1;
  min-width: 0;
  margin: 0 !important;
  padding: 3px 0 0 !important;
  color: #d0d4da !important;
  font-family: inherit;
  font-size: 14px !important;
  font-weight: 400;
  line-height: 1.85 !important;
  overflow-wrap: anywhere;
  transition: color 0.2s ease;
}

.elementor-widget-icon-list.contact_info a:hover .elementor-icon-list-text {
  color: #ffbe19 !important;
}

.elementor-widget-icon-list.contact_info a:focus-visible {
  outline: 2px solid #ffbe19;
  outline-offset: 5px;
  border-radius: 4px;
}

@media (max-width: 767px) {
  .elementor-widget-icon-list.contact_info .elementor-icon-list-items {
    gap: 16px !important;
  }

  .elementor-widget-icon-list.contact_info .elementor-icon-list-text {
    font-size: 13px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .elementor-widget-icon-list.contact_info .elementor-icon-list-text {
    transition: none;
  }
}




/* Match card heights within each desktop row */
.svc .svc-grid {
  align-items: stretch;
}

.svc .svc-card {
  display: flex;
  flex-direction: column;
}

.svc .svc-hero {
  flex: 0 0 205px;
}

.svc .svc-card-footer {
  margin-top: auto;
}

@media (max-width: 767px) {
  .svc .svc-hero {
    flex-basis: 190px;
  }
}



/* Equal-height cards within each row */
.svc .svc-grid {
  align-items: stretch !important;
}

.svc .svc-grid > .svc-card {
  display: flex !important;
  flex-direction: column !important;
  height: 100%;
}

.svc .svc-card > .svc-hero {
  flex: 0 0 205px !important;
}

.svc .svc-card > .svc-card-footer {
  margin-top: auto !important;
}

@media (max-width: 767px) {
  .svc .svc-card > .svc-hero {
    flex-basis: 190px !important;
  }
}




/* =========================================
   SANIVARI HOMEPAGE HERO — TEXT SECTION ONLY
   ========================================= */

.section_eday .elementor-element-fdf5e21 {
  position: relative;
  isolation: isolate;
  overflow: hidden;

  display: flex;
  align-items: center;
  justify-content: center;

  width: 100%;
  min-height: 350px;
  margin: 0 !important;
  padding: 70px 28px 78px !important;

  background-color: #062e4b !important;
  background-image:
    radial-gradient(
      ellipse at 12% 15%,
      rgba(255, 190, 25, 0.16),
      transparent 42%
    ),
    radial-gradient(
      ellipse at 88% 85%,
      rgba(43, 130, 178, 0.23),
      transparent 48%
    ),
    linear-gradient(
      125deg,
      #041e33 0%,
      #062e4b 55%,
      #0a3c59 100%
    ) !important;

  border: 0 !important;
  border-radius: 0 !important;
}

/* Subtle decorative rings */
.section_eday .elementor-element-fdf5e21::before {
  content: "";
  position: absolute;
  top: -170px;
  right: -110px;
  width: 460px;
  height: 460px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 50%;
  box-shadow:
    0 0 0 55px rgba(255, 255, 255, 0.025),
    0 0 0 110px rgba(255, 255, 255, 0.018);
  z-index: -1;
  pointer-events: none;
}

/* Small yellow accent */
.section_eday .elementor-element-fdf5e21::after {
  content: "";
  position: absolute;
  bottom: 31px;
  left: 50%;
  width: 54px;
  height: 4px;
  border-radius: 10px;
  background: #ffbe19;
  transform: translateX(-50%);
  pointer-events: none;
}

/* Keep the title widget centred */
.section_eday .elementor-element-fdf5e21
.elementor-element-a879305 {
  width: 100%;
  max-width: 1050px;
  margin: 0 auto !important;
}

.section_eday .elementor-element-fdf5e21
.elementor-element-a879305 > .elementor-widget-container {
  margin: 0 !important;
  padding: 0 !important;
}

.section_eday .elementor-element-fdf5e21 .title-wrapper {
  margin: 0 !important;
  padding: 0 !important;
  text-align: center !important;
}

.section_eday .elementor-element-fdf5e21 .liner-continer {
  display: block !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Main heading */
.section_eday .elementor-element-fdf5e21
.woodmart-title-container {
  display: block !important;
  width: 100%;
  max-width: 1000px;
  margin: 0 auto !important;
  padding: 0 !important;

  color: #ffffff !important;
  font-family: inherit !important;
  font-size: clamp(36px, 4.6vw, 72px) !important;
  font-weight: 750 !important;
  line-height: 1.12 !important;
  letter-spacing: -0.045em !important;
  text-align: center !important;
  text-transform: none !important;
  text-wrap: balance;

  border: 0 !important;
  text-shadow: 0 3px 20px rgba(0, 0, 0, 0.12);
}

/* Remove WoodMart title decorations */
.section_eday .elementor-element-fdf5e21
.woodmart-title-container::before,
.section_eday .elementor-element-fdf5e21
.woodmart-title-container::after,
.section_eday .elementor-element-fdf5e21
.liner-continer::before,
.section_eday .elementor-element-fdf5e21
.liner-continer::after {
  display: none !important;
}

/* Supporting text */
.section_eday .elementor-element-fdf5e21 .title-after_title {
  max-width: 650px;
  margin: 23px auto 0 !important;
  padding: 0 !important;
}

.section_eday .elementor-element-fdf5e21 .title-after_title,
.section_eday .elementor-element-fdf5e21 .title-after_title p {
  color: #dce8f1 !important;
  font-family: inherit !important;
  font-size: clamp(15px, 1.25vw, 18px) !important;
  font-weight: 400 !important;
  line-height: 1.8 !important;
  letter-spacing: 0 !important;
  text-align: center !important;
  text-wrap: pretty;
}

.section_eday .elementor-element-fdf5e21 .title-after_title p {
  margin: 0 !important;
}

/* Optional emphasis if you bold text in Elementor */
.section_eday .elementor-element-fdf5e21
.title-after_title strong {
  color: #ffdc75 !important;
  font-weight: 600;
}

/* Gentle entrance; no continuous animation */
@media (prefers-reduced-motion: no-preference) {
  .section_eday .elementor-element-fdf5e21
  .elementor-element-a879305 {
    animation: sanivariHeroReveal 0.65s ease-out both;
  }
}

@keyframes sanivariHeroReveal {
  from {
    opacity: 0;
    transform: translateY(12px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

/* Tablet */
@media (max-width: 1024px) {
  .section_eday .elementor-element-fdf5e21 {
    min-height: 310px;
    padding: 58px 26px 70px !important;
  }

  .section_eday .elementor-element-fdf5e21
  .woodmart-title-container {
    max-width: 760px;
    font-size: clamp(36px, 5.5vw, 56px) !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .section_eday .elementor-element-fdf5e21 {
    min-height: 280px;
    padding: 45px 22px 62px !important;
  }

  .section_eday .elementor-element-fdf5e21
  .woodmart-title-container {
    font-size: clamp(32px, 7.8vw, 46px) !important;
    line-height: 1.16 !important;
    letter-spacing: -0.035em !important;
  }

  .section_eday .elementor-element-fdf5e21
  .title-after_title {
    max-width: 440px;
    margin-top: 18px !important;
  }

  .section_eday .elementor-element-fdf5e21
  .title-after_title p {
    font-size: 15px !important;
    line-height: 1.75 !important;
  }

  .section_eday .elementor-element-fdf5e21::before {
    top: -120px;
    right: -160px;
    width: 320px;
    height: 320px;
  }

  .section_eday .elementor-element-fdf5e21::after {
    bottom: 25px;
    width: 44px;
  }
}



/* =========================================
   SANIVARI — WOODMART PAGE TITLE
   ========================================= */

.wd-page-title.page-title {
  position: relative;
  isolation: isolate;
  overflow: hidden;

  margin: 0 0 32px !important;
  padding: 42px 0 !important;
  min-height: 165px;

  border: 0 !important;
  background:
    radial-gradient(
      ellipse at 10% 20%,
      rgba(255, 190, 25, 0.12),
      transparent 40%
    ),
    radial-gradient(
      ellipse at 90% 90%,
      rgba(40, 131, 180, 0.22),
      transparent 48%
    ),
    linear-gradient(
      120deg,
      #041e33 0%,
      #062e4b 55%,
      #0a3c59 100%
    ) !important;

  color: #ffffff;
  text-align: left !important;
}

/* Hide the original orange background image */
.wd-page-title.page-title > .wd-page-title-bg {
  display: none !important;
}

/* Decorative rings */
.wd-page-title.page-title::before {
  content: "";
  position: absolute;
  top: -230px;
  right: -60px;
  width: 480px;
  height: 480px;
  border: 1px solid rgba(255, 255, 255, 0.09);
  border-radius: 50%;
  background: transparent;
  box-shadow:
    0 0 0 45px rgba(255, 255, 255, 0.025),
    0 0 0 90px rgba(255, 255, 255, 0.018);
  pointer-events: none;
  z-index: 0;
}

/* Restrained yellow bottom accent */
.wd-page-title.page-title::after {
  content: "";
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  height: 3px;
  background: linear-gradient(
    90deg,
    #ffbe19 0%,
    #ffbe19 18%,
    rgba(255, 190, 25, 0.12) 55%,
    transparent 100%
  );
  pointer-events: none;
}

/* Preserve WoodMart's container width */
.wd-page-title.page-title > .container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 13px;
}

/* Page heading */
.wd-page-title.page-title .entry-title.title {
  display: block;
  margin: 0 !important;
  padding: 0 !important;

  color: #ffffff !important;
  font-family: inherit !important;
  font-size: clamp(30px, 3.2vw, 46px) !important;
  font-weight: 750 !important;
  line-height: 1.15 !important;
  letter-spacing: -0.035em !important;
  text-align: left !important;
  text-transform: none !important;
  overflow-wrap: anywhere;
}

/* Breadcrumb trail */
.wd-page-title.page-title .wd-breadcrumbs {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;

  margin: 0 !important;
  padding: 0 !important;

  color: #d6e1eb !important;
  font-family: inherit;
  font-size: 13px !important;
  font-weight: 400;
  line-height: 1.7;
}

/* Breadcrumb links */
.wd-page-title.page-title .wd-breadcrumbs a {
  color: #d6e1eb !important;
  text-decoration: none;
  transition: color 0.2s ease;
}

.wd-page-title.page-title .wd-breadcrumbs a:hover {
  color: #ffdc75 !important;
}

.wd-page-title.page-title .wd-breadcrumbs a:focus-visible {
  outline: 2px solid #ffbe19;
  outline-offset: 4px;
  border-radius: 2px;
}

/* Separator */
.wd-page-title.page-title .wd-breadcrumbs .wd-delimiter {
  margin: 0 !important;
  color: #ffbe19 !important;
  font-size: 12px;
}

/* Current page */
.wd-page-title.page-title .wd-breadcrumbs .wd-last {
  color: #ffffff !important;
  font-weight: 600;
}

/* Tablet */
@media (max-width: 1024px) {
  .wd-page-title.page-title {
    min-height: 145px;
    padding: 35px 0 !important;
    margin-bottom: 26px !important;
  }
}

/* Mobile */
@media (max-width: 767px) {
  .wd-page-title.page-title {
    min-height: 128px;
    padding: 30px 0 !important;
    margin-bottom: 22px !important;
  }

  .wd-page-title.page-title > .container {
    gap: 10px;
  }

  .wd-page-title.page-title .entry-title.title {
    font-size: clamp(28px, 7vw, 36px) !important;
  }

  .wd-page-title.page-title .wd-breadcrumbs {
    gap: 8px;
    font-size: 12px !important;
  }

  .wd-page-title.page-title::before {
    top: -145px;
    right: -130px;
    width: 320px;
    height: 320px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .wd-page-title.page-title .wd-breadcrumbs a {
    transition: none;
  }
}





/* =========================================
   SANIVARI — PRODUCT DESCRIPTION
   ========================================= */

.prod_desc {
  --spd-navy: #062e4b;
  --spd-text: #465568;
  --spd-border: #e3eaf0;

  min-width: 0;
  padding: clamp(20px, 3vw, 36px) !important;
  border: 1px solid var(--spd-border);
  border-radius: 18px;
  background: #fff !important;
}

.prod_desc,
.prod_desc * {
  box-sizing: border-box;
}

.prod_desc .wd-single-content,
.prod_desc .wd-single-content > .elementor-widget-container {
  min-width: 0;
  width: 100%;
}

/* Comfortable reading width */
.prod_desc .wd-single-content > .elementor-widget-container {
  max-width: 1000px;
  margin-inline: auto;
  color: var(--spd-text);
  font-size: 15px;
  line-height: 1.85;
}

/* Description text */
.prod_desc .wd-single-content p {
  margin: 0 0 20px;
  color: var(--spd-text);
  font-size: 15px;
  line-height: 1.85;
  overflow-wrap: anywhere;
}

.prod_desc .wd-single-content strong {
  color: var(--spd-navy);
  font-weight: 650;
}

.prod_desc .wd-single-content h2,
.prod_desc .wd-single-content h3,
.prod_desc .wd-single-content h4 {
  margin: 28px 0 15px;
  color: var(--spd-navy);
  font-family: inherit;
  font-weight: 700;
  line-height: 1.45;
  overflow-wrap: anywhere;
}

.prod_desc .wd-single-content h2 {
  font-size: clamp(20px, 2vw, 25px);
}

.prod_desc .wd-single-content h3 {
  font-size: 20px;
}

.prod_desc .wd-single-content h4 {
  font-size: 18px;
}

.prod_desc .wd-single-content ul,
.prod_desc .wd-single-content ol {
  margin: 0 0 24px;
  padding-inline-start: 23px;
}

.prod_desc .wd-single-content li {
  margin-bottom: 10px;
  padding-inline-start: 4px;
  line-height: 1.85;
}

.prod_desc .wd-single-content li::marker {
  color: #a67200;
}

/* All description images:
   preserve proportions and prevent overflow */
.prod_desc .wd-single-content img {
  display: block !important;
  float: none !important;
  clear: both;
  max-width: 100% !important;
  height: auto !important;
  margin: 26px auto !important;
  padding: 12px !important;
  border: 1px solid var(--spd-border);
  border-radius: 12px;
  background: #f8fafc;
  box-shadow: 0 5px 18px rgba(6, 46, 75, 0.035);
}

/* Wide product banners */
.prod_desc .wd-single-content
img[src*="SX970"] {
  width: 100% !important;
  max-width: 970px !important;
}

/* Small instruction images:
   equal square frames without cropping */
.prod_desc .wd-single-content
p.ql-align-center > img {
  width: 244px !important;
  height: 244px !important;
  max-width: 100% !important;
  object-fit: contain !important;
  padding: 12px !important;
  margin: 0 auto !important;
  background: #fff;
}

/* Consistent instruction-image spacing */
.prod_desc .wd-single-content p.ql-align-center {
  margin: 28px 0 15px !important;
  padding: 0 !important;
  text-align: center;
}

/* Captions following instruction images */
.prod_desc .wd-single-content
p.ql-align-center + p:not(.ql-align-center) {
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
  font-size: 14px;
  line-height: 1.8;
}

/* Images sharing a paragraph with text:
   keep text below the image with breathing room */
.prod_desc .wd-single-content p > img:not(:only-child) {
  margin-top: 26px !important;
  margin-bottom: 22px !important;
}

/* Linked images */
.prod_desc .wd-single-content a:has(> img) {
  display: block;
}

/* Main Description heading */
.prod_desc .elementor-element-2f22a65 .title-wrapper {
  margin-bottom: 20px !important;
}

.prod_desc .elementor-element-2f22a65
.woodmart-title-container {
  margin: 0 !important;
  color: var(--spd-navy) !important;
  font-size: 25px !important;
  font-weight: 700 !important;
}

/* Links */
.prod_desc .wd-single-content a {
  color: var(--spd-navy);
  text-decoration: underline;
  text-underline-offset: 3px;
}

.prod_desc .wd-single-content a:hover {
  color: #805900;
}

.prod_desc a:focus-visible {
  outline: 2px solid #976600;
  outline-offset: 3px;
}

/* Additional information */
.prod_desc .wd-single-attrs {
  margin-top: 24px;
  padding-top: 24px;
  border-top: 1px solid var(--spd-border);
}

.prod_desc .wd-single-attrs .wd-el-title {
  color: var(--spd-navy);
  font-size: 20px;
  line-height: 1.4;
}

.prod_desc .shop_attributes {
  width: 100%;
  margin-bottom: 0;
}

.prod_desc .shop_attributes th,
.prod_desc .shop_attributes td {
  padding: 14px 16px;
  font-size: 14px;
  line-height: 1.7;
}

/* Mobile */
@media (max-width: 767px) {
  .prod_desc {
    padding: 20px 16px !important;
    border-radius: 13px;
  }

  .prod_desc .wd-single-content p,
  .prod_desc .wd-single-content li {
    font-size: 14px;
    line-height: 1.8;
  }

  .prod_desc .wd-single-content img {
    margin: 22px auto !important;
    padding: 8px !important;
    border-radius: 9px;
  }

  .prod_desc .wd-single-content
  p.ql-align-center > img {
    width: 220px !important;
    height: 220px !important;
    padding: 10px !important;
    margin: 0 auto !important;
  }

  .prod_desc .wd-single-content
  p.ql-align-center + p:not(.ql-align-center) {
    text-align: left;
    margin-bottom: 24px;
  }

  .prod_desc .shop_attributes th,
  .prod_desc .shop_attributes td {
    padding: 11px;
    font-size: 12px;
  }
}



p.hh-product-source {
    display: none;
}



/* =========================================
   SANIVARI SEARCH — REPLACEMENT CSS
   ========================================= */

.elementor-element.section_search_prod {
  --ssp-navy: #062e4b;
  --ssp-yellow: #ffbe19;
  --ssp-border: #dfe7ee;

  position: relative;
  width: 100%;
  min-width: 0;
  margin: 0 !important;
  font-family: inherit;
}

.section_search_prod,
.section_search_prod * {
  box-sizing: border-box;
}

.section_search_prod > .elementor-widget-container {
  padding: 24px;
  border: 1px solid #e5ebf0;
  border-radius: 18px;
  background: #fff;
  box-shadow: 0 8px 28px rgba(6,46,75,.045);
  overflow: visible !important;
}

/* Heading */

.section_search_prod > .elementor-widget-container > h5 {
  margin: 0 0 15px !important;
  padding: 0 !important;
  color: var(--ssp-navy);
  font-family: inherit;
  font-size: 22px;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -.3px;
}

.section_search_prod .wd-search-form {
  position: relative;
  width: 100%;
  min-width: 0;
}

/* Stable desktop layout */

.section_search_prod form.searchform {
  position: relative;
  display: grid !important;
  grid-template-columns: minmax(0, 1fr) 225px 116px;
  align-items: center;
  gap: 8px;

  width: 100%;
  height: auto !important;
  min-height: 62px;
  margin: 0 !important;
  padding: 6px !important;

  border: 1px solid var(--ssp-border) !important;
  border-radius: 11px !important;
  background: #f7f9fc !important;
  box-shadow: none !important;
  overflow: visible !important;

  transition:
    border-color .2s ease,
    box-shadow .2s ease;
}

.section_search_prod form.searchform:focus-within {
  border-color: #6c8aa0 !important;
  box-shadow: 0 0 0 3px rgba(6,46,75,.07) !important;
}

/* Search input */

.section_search_prod form.searchform > input.s {
  grid-column: 1;
  grid-row: 1;

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 48px !important;
  margin: 0 !important;
  padding: 0 38px 0 14px !important;

  border: 0 !important;
  border-radius: 7px !important;
  background: transparent !important;
  color: var(--ssp-navy) !important;

  font-family: inherit;
  font-size: 16px !important;
  line-height: normal;
  box-shadow: none !important;
}

.section_search_prod input.s::placeholder {
  color: #738292;
  opacity: 1;
}

.section_search_prod input.s:focus {
  outline: none;
}

/* Clear button:
   reserve space inside the input column */

.section_search_prod form.searchform > .wd-clear-search {
  position: absolute !important;
  inset-inline-start: auto !important;
  inset-inline-end: 366px !important;
  top: 50% !important;
  bottom: auto !important;
  width: 28px;
  height: 28px;
  margin: 0 !important;
  transform: translateY(-50%) !important;
  z-index: 2;
}

/* Category selector: one divider only */

.section_search_prod form.searchform > .wd-search-cat {
  position: relative;
  grid-column: 2;
  grid-row: 1;

  width: 100% !important;
  min-width: 0 !important;
  max-width: none !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 !important;

  border: 0 !important;
  border-inline-start: 1px solid #dce4ec !important;
  background: transparent !important;
}

.section_search_prod .wd-search-cat::before,
.section_search_prod .wd-search-cat::after,
.section_search_prod .wd-search-cat-btn::before {
  display: none !important;
}

.section_search_prod .wd-search-cat-btn {
  display: flex !important;
  align-items: center;
  justify-content: space-between;
  gap: 10px;

  width: 100%;
  min-width: 0;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 13px !important;

  border: 0 !important;
  background: transparent !important;
  color: var(--ssp-navy) !important;

  font-family: inherit;
  font-size: 13px !important;
  font-weight: 600 !important;
  line-height: 1.5;
  text-transform: none !important;
  cursor: pointer;
}

.section_search_prod .wd-search-cat-btn > span {
  display: block;
  min-width: 0;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

/* Submit: text only, removing the cramped theme icon */

.section_search_prod form.searchform > button.searchsubmit {
  position: static !important;
  grid-column: 3;
  grid-row: 1;

  display: flex !important;
  align-items: center;
  justify-content: center;

  width: 100% !important;
  min-width: 0 !important;
  height: 48px !important;
  min-height: 48px !important;
  margin: 0 !important;
  padding: 0 16px !important;

  border: 1px solid var(--ssp-yellow) !important;
  border-radius: 8px !important;
  background: var(--ssp-yellow) !important;
  color: var(--ssp-navy) !important;

  font-family: inherit;
  font-size: 14px !important;
  font-weight: 700 !important;
  line-height: 1.4;
  text-transform: none !important;
  box-shadow: none !important;

  transition:
    background-color .2s ease,
    border-color .2s ease,
    color .2s ease;
}

.section_search_prod button.searchsubmit::before,
.section_search_prod button.searchsubmit::after,
.section_search_prod button.searchsubmit > span::before,
.section_search_prod button.searchsubmit > span::after {
  content: none !important;
  display: none !important;
}

.section_search_prod button.searchsubmit > span {
  position: static !important;
  display: inline !important;
  width: auto !important;
  height: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: visible !important;
  clip: auto !important;
  clip-path: none !important;
  color: inherit !important;
  font-size: inherit !important;
  line-height: inherit !important;
  opacity: 1 !important;
  visibility: visible !important;
}

.section_search_prod button.searchsubmit:hover {
  border-color: var(--ssp-navy) !important;
  background: var(--ssp-navy) !important;
  color: #fff !important;
}

/* Category dropdown:
   WoodMart still controls visibility */

.section_search_prod .wd-dropdown-search-cat {
  top: 100% !important;
  inset-inline-start: 0 !important;
  inset-inline-end: auto !important;

  width: 290px !important;
  max-width: calc(100vw - 48px);
  max-height: min(340px, 50vh) !important;
  margin-top: 12px;
  padding: 8px !important;

  overflow-y: auto;
  overscroll-behavior: contain;
  border: 1px solid #e1e8ef;
  border-radius: 11px !important;
  background: #fff !important;
  color: var(--ssp-navy);
  box-shadow: 0 14px 32px rgba(6,46,75,.12);
  scrollbar-width: thin;
  z-index: 350;
}

.section_search_prod .wd-dropdown-search-cat .wd-sub-menu {
  margin: 0 !important;
  padding: 0 !important;
}

.section_search_prod .wd-dropdown-search-cat li {
  margin: 0 !important;
}

.section_search_prod .wd-dropdown-search-cat a {
  display: block;
  padding: 10px 11px !important;
  border-radius: 6px;
  color: var(--ssp-navy) !important;
  font-size: 13px !important;
  font-weight: 400;
  line-height: 1.5;
  text-decoration: none;
}

.section_search_prod .wd-dropdown-search-cat a:hover,
.section_search_prod .wd-dropdown-search-cat a:focus-visible {
  background: #fff3cd !important;
}

.section_search_prod .wd-dropdown-search-cat .children {
  margin: 0 0 0 12px !important;
  padding: 0 0 0 8px !important;
  border-left: 1px solid #e5ebf0;
}

/* AJAX results */

.section_search_prod .wd-search-results-wrapper {
  position: relative;
  z-index: 340;
}

.section_search_prod .wd-search-results {
  margin-top: 9px;
  border: 1px solid #e1e8ef;
  border-radius: 11px !important;
  background: #fff !important;
  color: var(--ssp-navy);
  box-shadow: 0 14px 32px rgba(6,46,75,.12);
}

.section_search_prod .wd-search-results .wd-scroll-content {
  max-height: min(420px, 55vh);
  overscroll-behavior: contain;
  scrollbar-width: thin;
}

.section_search_prod .autocomplete-suggestion {
  padding: 12px 15px !important;
  border-bottom: 1px solid #edf1f5;
}

.section_search_prod .autocomplete-suggestion:hover,
.section_search_prod .autocomplete-selected {
  background: #f5f8fb !important;
}

.section_search_prod .suggestion-thumb img {
  width: 54px;
  height: 54px;
  padding: 4px;
  border: 1px solid #e7edf2;
  border-radius: 7px;
  background: #fff;
  object-fit: contain;
}

.section_search_prod .suggestion-title {
  color: var(--ssp-navy);
  font-size: 13px;
  font-weight: 600;
  line-height: 1.5;
}

.section_search_prod .wd-search-results .price {
  color: var(--ssp-navy);
  font-size: 13px;
  font-weight: 700;
}

/* Keyboard focus */

.section_search_prod button:focus-visible,
.section_search_prod a:focus-visible,
.section_search_prod [tabindex="0"]:focus-visible {
  outline: 2px solid #976600 !important;
  outline-offset: 2px;
}

/* Tablet */

@media (min-width: 768px) and (max-width: 1024px) {
  .section_search_prod form.searchform {
    grid-template-columns: minmax(0, 1fr) 180px 100px;
  }

  .section_search_prod form.searchform > .wd-clear-search {
    inset-inline-end: 305px !important;
  }
}

/* Mobile */

@media (max-width: 767px) {
  .section_search_prod > .elementor-widget-container {
    padding: 18px 14px;
    border-radius: 13px;
  }

  .section_search_prod > .elementor-widget-container > h5 {
    margin-bottom: 12px !important;
    font-size: 20px;
  }

  .section_search_prod form.searchform {
    grid-template-columns: minmax(0, 1fr) 84px;
    gap: 6px;
  }

  .section_search_prod form.searchform > input.s {
    grid-column: 1;
    grid-row: 1;
    padding-left: 9px !important;
    padding-right: 32px !important;
    font-size: 16px !important;
  }

  .section_search_prod form.searchform > button.searchsubmit {
    grid-column: 2;
    grid-row: 1;
    padding: 0 10px !important;
    font-size: 12px !important;
  }

  .section_search_prod form.searchform > .wd-search-cat {
    grid-column: 1 / -1;
    grid-row: 2;
    height: auto !important;
    padding-top: 5px !important;
    border: 0 !important;
    border-top: 1px solid #dfe7ee !important;
  }

  .section_search_prod .wd-search-cat-btn {
    height: 42px !important;
    padding: 0 9px !important;
    font-size: 12px !important;
  }

  .section_search_prod form.searchform > .wd-clear-search {
    top: 30px !important;
    inset-inline-end: 98px !important;
  }

  .section_search_prod .wd-dropdown-search-cat {
    width: 100% !important;
    max-width: 100%;
    margin-top: 7px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .section_search_prod form.searchform,
  .section_search_prod button.searchsubmit {
    transition: none !important;
  }
}



