/*
Theme Name: Salient Child Theme
Description: This is a custom child theme for Salient
Theme URI:   https://themeforest.net/item/salient-responsive-multipurpose-theme/4363266
Author: ThemeNectar
Author URI:  https://themeforest.net/user/themenectar
Template: salient
Version: 1.0
*/




/* =========================
    CONTACT FORM 7
   ========================= */

.dc-form-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 20px 24px;
  margin-top: 10px;
}

.dc-form-field {
  width: 100%;
}

.dc-form-field-full {
  grid-column: 1 / -1;
}

.dc-form-field label {
  display: block;
  margin-bottom: 10px;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: #2c2723;
}

.dc-form-field a {
  color: #2c2723;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.dc-form-field a:hover {
  color: #8c6b45;
}

.dc-form-grid .wpcf7-form-control-wrap {
  display: block;
}

.dc-form-grid input[type="text"],
.dc-form-grid input[type="email"],
.dc-form-grid input[type="tel"],
.dc-form-grid select,
.dc-form-grid textarea {
  width: 100%;
  min-height: 54px;
  padding: 0 16px;
  border: 1px solid rgba(44, 39, 35, 0.14);
  background: #fff;
  color: #2c2723;
  font-size: 16px;
  line-height: 1.4;
  border-radius: 0;
  box-shadow: none;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease;
}

.dc-form-grid textarea {
  min-height: 160px;
  padding: 16px;
  resize: vertical;
}

.dc-form-grid input[type="text"]:focus,
.dc-form-grid input[type="email"]:focus,
.dc-form-grid input[type="tel"]:focus,
.dc-form-grid select:focus,
.dc-form-grid textarea:focus {
  border-color: #b8946d;
  outline: none;
  box-shadow: 0 0 0 3px rgba(184, 148, 109, 0.10);
}

.dc-form-grid input[readonly] {
  background: #f7f3ed;
  color: #6d655e;
}

/* Select */
.dc-form-grid select {
  appearance: none;
  -webkit-appearance: none;
  background-image:
    linear-gradient(45deg, transparent 50%, #6d655e 50%),
    linear-gradient(135deg, #6d655e 50%, transparent 50%);
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px);
  background-size: 6px 6px, 6px 6px;
  background-repeat: no-repeat;
  padding-right: 42px;
}

/* Acceptance */
.dc-form-consent .wpcf7-form-control-wrap {
  margin-top: 12px;
}

.dc-form-consent .wpcf7-acceptance {
  display: block;
}

.dc-form-consent .wpcf7-list-item {
  margin: 0;
  display: block;
}

.dc-form-consent .wpcf7-list-item label {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  margin-bottom: 0;
  font-size: 15px;
  line-height: 1.7;
  letter-spacing: 0;
  text-transform: none;
  font-weight: 400;
  color: #5f574f;
}

.dc-form-consent input[type="checkbox"] {
  width: 18px;
  height: 18px;
  margin: 3px 0 0;
  accent-color: #8c6b45;
  flex: 0 0 18px;
}

/* Radio consenso */
.dc-form-consent .wpcf7-radio {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
  margin-top: 12px;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item {
  margin: 0;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item label {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  min-height: 52px;
  padding: 0 18px;
  border: 1px solid rgba(44, 39, 35, 0.14);
  background: #fff;
  cursor: pointer;
  transition: all 0.25s ease;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item label:hover {
  border-color: #b8946d;
  background: #fbf7f1;
}

.dc-form-consent .wpcf7-radio input[type="radio"] {
  margin: 0;
  accent-color: #8c6b45;
}

/* Submit */
.dc-form-grid .wpcf7-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  padding: 0 28px;
  border: 1px solid #b8946d;
  background: #b8946d;
  color: #fff;
  font-size: 12px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  border-radius: 0;
  cursor: pointer;
  transition: all 0.25s ease;
}

.dc-form-grid .wpcf7-submit:hover {
  background: #a27d56;
  border-color: #a27d56;
}

.dc-form-grid .wpcf7-spinner {
  margin: 14px 0 0 12px;
}

.dc-form-grid .wpcf7-not-valid-tip {
  margin-top: 8px;
  font-size: 13px;
  color: #b42318;
}

.dc-form-grid .wpcf7-response-output {
  margin: 24px 0 0 !important;
  padding: 12px 16px !important;
  border: 1px solid rgba(44, 39, 35, 0.14);
  font-size: 14px;
  line-height: 1.6;
}

@media only screen and (max-width: 767px) {
  .dc-form-grid {
    grid-template-columns: 1fr;
    gap: 18px;
  }

  .dc-form-consent .wpcf7-radio {
    flex-direction: column;
  }

  .dc-form-consent .wpcf7-radio .wpcf7-list-item label {
    width: 100%;
    min-height: auto;
    padding: 14px 16px;
  }

  .dc-form-grid .wpcf7-submit {
    width: 100%;
  }
}

@media only screen and (max-width: 999px) {
  .dc-form-grid {
    gap: 14px !important;
  }

  .dc-form-field label {
    text-transform: none;
    letter-spacing: 0.02em;
    font-weight: 500;
  }
}



/* =========================
   DE CESARE - HEADER MOBILE
   Salient
   ========================= */
@media only screen and (max-width: 999px) {

  /* Header shell */
  body #header-outer,
  body #header-secondary-outer {
    background: #f8f4ee !important;
    box-shadow: none !important;
    border-bottom: 1px solid rgba(44, 39, 35, 0.08);
  }

  body #header-space {
    height: 82px !important;
  }

  body #header-outer #top {
    padding: 0 18px !important;
  }

  body #header-outer #top > .container,
  body #header-outer #top > .container-fluid {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
  }

  /* Mobile header row */
  body #header-outer .nectar-mobile-only.mobile-header {
    display: block !important;
    width: 100% !important;
  }

  body #header-outer .nectar-mobile-only.mobile-header .inner,
  body #header-outer .mobile-header .inner {
    min-height: 82px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px;
  }

  /* Left / center / right areas */
  body #header-outer .mobile-header .left-side,
  body #header-outer .mobile-header .center-side,
  body #header-outer .mobile-header .right-side {
    display: flex !important;
    align-items: center !important;
  }

  body #header-outer .mobile-header .left-side,
  body #header-outer .mobile-header .right-side {
    flex: 0 0 auto;
    min-width: 44px;
  }

  body #header-outer .mobile-header .center-side {
    flex: 1 1 auto;
    justify-content: center !important;
    text-align: center;
  }

  /* Logo */
  body #header-outer #logo,
  body #header-outer .mobile-header #logo {
    margin: 0 auto !important;
    text-align: center !important;
  }

  body #header-outer #logo img,
  body #header-outer .mobile-header #logo img {
    max-height: 54px !important;
    width: auto !important;
  }

  /* Hide clutter on mobile if present */
  body #header-outer #social-in-menu,
  body #header-outer header#top nav,
  body #header-outer .span_9 > .button,
  body #header-outer .span_9 > .buttons,
  body #header-outer .span_9 > .sf-menu {
    display: none !important;
  }

  /* Mobile icons */
  body #header-outer #top .slide-out-widget-area-toggle,
  body #header-outer #top .mobile-search,
  body #header-outer #top #mobile-cart-link {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body #header-outer #top .slide-out-widget-area-toggle a,
  body #header-outer #top .mobile-search a,
  body #header-outer #top #mobile-cart-link a {
    width: 42px !important;
    height: 42px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
  }

  body #header-outer #top .slide-out-widget-area-toggle i,
  body #header-outer #top .mobile-search i,
  body #header-outer #top #mobile-cart-link i,
  body #header-outer .mobile-search .icon-salient-search {
    font-size: 20px !important;
    color: #2c2723 !important;
  }

  /* Hamburger lines */
  body #header-outer #top .slide-out-widget-area-toggle a .lines,
  body #header-outer #top .slide-out-widget-area-toggle a .lines:before,
  body #header-outer #top .slide-out-widget-area-toggle a .lines:after,
  body #header-outer #top .slide-out-widget-area-toggle a .lines-button:after {
    background-color: #2c2723 !important;
  }

  /* Prevent weird left squeeze */
  body #header-outer .col.span_3,
  body #header-outer .col.span_9,
  body #header-outer .span_3,
  body #header-outer .span_9 {
    width: auto !important;
    float: none !important;
    position: static !important;
  }

  /* Off canvas panel */
  body #slide-out-widget-area,
  body .off-canvas-menu-container,
  body .off-canvas-menu-container.mobile-only {
    background: #f8f4ee !important;
  }

  body #slide-out-widget-area .inner-wrap,
  body .off-canvas-menu-container .inner-wrap {
    padding: 88px 26px 30px !important;
  }

  /* Off canvas links */
  body #slide-out-widget-area .menuwrapper li a,
  body #slide-out-widget-area .off-canvas-menu-container li a,
  body .off-canvas-menu-container li a {
    color: #2c2723 !important;
    font-size: 24px !important;
    line-height: 1.25 !important;
    font-weight: 400 !important;
    letter-spacing: -0.01em !important;
    padding: 10px 0 !important;
  }

  body #slide-out-widget-area .menuwrapper li li a,
  body .off-canvas-menu-container .sub-menu li a {
    font-size: 17px !important;
    line-height: 1.55 !important;
    color: #6d655e !important;
    padding: 8px 0 !important;
  }

  /* Dropdown toggles */
  body #slide-out-widget-area .menu-item-has-children > a,
  body .off-canvas-menu-container .menu-item-has-children > a {
    padding-right: 34px !important;
  }

  /* Search / close icon in panel */
  body #slide-out-widget-area .close-wrap .close-line,
  body .off-canvas-menu-container .close-line {
    background-color: #2c2723 !important;
  }

  /* Small phones */
  @media only screen and (max-width: 480px) {
    body #header-space {
      height: 76px !important;
    }

    body #header-outer .nectar-mobile-only.mobile-header .inner,
    body #header-outer .mobile-header .inner {
      min-height: 76px !important;
    }

    body #header-outer #logo img,
    body #header-outer .mobile-header #logo img {
      max-height: 48px !important;
    }

    body #slide-out-widget-area .menuwrapper li a,
    body #slide-out-widget-area .off-canvas-menu-container li a,
    body .off-canvas-menu-container li a {
      font-size: 21px !important;
    }
  }
}

/* =========================
   FIX SELECT ORARIO RICONTATTO
   ========================= */

.dc-form-grid select,
.dc-form-grid .wpcf7-form-control.wpcf7-select {
  width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  padding: 0 44px 0 16px !important;
  border: 1px solid rgba(44, 39, 35, 0.14) !important;
  background-color: #fff !important;
  color: #2c2723 !important;
  font-size: 16px !important;
  line-height: 54px !important;
  border-radius: 10px !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image:
    linear-gradient(45deg, transparent 50%, #7a736c 50%),
    linear-gradient(135deg, #7a736c 50%, transparent 50%) !important;
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}

.dc-form-grid select option,
.dc-form-grid .wpcf7-form-control.wpcf7-select option {
  color: #2c2723;
  background: #fff;
}


/* =========================
   DE CESARE - FIX CONSENSI + SELECT
   ========================= */

.dc-form-consent {
  margin-top: 4px;
}

.dc-form-consent .dc-field-title {
  display: block;
  margin: 0 0 12px !important;
  font-size: 13px;
  line-height: 1.5;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  font-weight: 600;
  color: #6f6a64;
}

.dc-form-consent a {
  color: #2c2723;
  text-decoration: underline;
  text-underline-offset: 3px;
}

.dc-form-consent a:hover {
  color: #8c6b45;
}

/* Checkbox obbligatorio */
.dc-form-consent .wpcf7-checkbox {
  display: block;
  margin-top: 4px;
}

.dc-form-consent .wpcf7-checkbox .wpcf7-list-item {
  display: block;
  margin: 0 !important;
}

.dc-form-consent .wpcf7-checkbox .wpcf7-list-item label {
  display: flex !important;
  align-items: flex-start !important;
  gap: 10px !important;
  margin: 0 !important;
  font-size: 15px !important;
  line-height: 1.65 !important;
  font-weight: 400 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
  color: #5f574f !important;
}

.dc-form-consent .wpcf7-checkbox input[type="checkbox"] {
  width: 18px !important;
  height: 18px !important;
  margin: 3px 0 0 !important;
  accent-color: #8c6b45;
  flex: 0 0 18px;
}

/* Radio consenso */
.dc-form-consent .wpcf7-radio {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 14px !important;
  margin-top: 4px !important;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item {
  margin: 0 !important;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item label {
  display: inline-flex !important;
  align-items: center !important;
  gap: 10px !important;
  min-height: 54px !important;
  padding: 0 18px !important;
  border: 1px solid rgba(44, 39, 35, 0.14) !important;
  background: #fff !important;
  color: #5f574f !important;
  cursor: pointer !important;
  transition: all .25s ease !important;
}

.dc-form-consent .wpcf7-radio .wpcf7-list-item label:hover {
  border-color: #b8946d !important;
  background: #fbf7f1 !important;
}

.dc-form-consent .wpcf7-radio input[type="radio"] {
  margin: 0 !important;
  accent-color: #8c6b45;
}

/* Select ricontatto: sfondo bianco e spaziatura corretta */
.dc-form-field select,
.dc-form-field .wpcf7-select {
  width: 100% !important;
  height: 54px !important;
  min-height: 54px !important;
  margin-top: 0 !important;
  padding: 0 44px 0 16px !important;
  border: 1px solid rgba(44, 39, 35, 0.14) !important;
  border-radius: 10px !important;
  background-color: #fff !important;
  color: #2c2723 !important;
  font-size: 16px !important;
  line-height: 1.2 !important;
  box-shadow: none !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  -moz-appearance: none !important;
  background-image:
    linear-gradient(45deg, transparent 50%, #7a736c 50%),
    linear-gradient(135deg, #7a736c 50%, transparent 50%) !important;
  background-position:
    calc(100% - 20px) calc(50% - 3px),
    calc(100% - 14px) calc(50% - 3px) !important;
  background-size: 6px 6px, 6px 6px !important;
  background-repeat: no-repeat !important;
}

.dc-form-field .wpcf7-form-control-wrap {
  display: block;
}

.dc-form-field label + .wpcf7-form-control-wrap,
.dc-form-field .dc-field-title + .wpcf7-form-control-wrap,
.dc-form-field .dc-field-title + .wpcf7-checkbox,
.dc-form-field .dc-field-title + .wpcf7-radio {
  margin-top: 0 !important;
}

.dc-form-field select option,
.dc-form-field .wpcf7-select option {
  background: #fff;
  color: #2c2723;
}

/* Mobile */
@media only screen and (max-width: 999px) {
  .dc-form-consent .wpcf7-radio {
    flex-direction: column !important;
    gap: 10px !important;
  }

  .dc-form-consent .wpcf7-radio .wpcf7-list-item,
  .dc-form-consent .wpcf7-radio .wpcf7-list-item label {
    width: 100% !important;
  }

  .dc-form-consent .wpcf7-radio .wpcf7-list-item label {
    min-height: auto !important;
    padding: 14px 16px !important;
  }

	
/* Global footer Alveare Ossolano */
/* Footer globale Salient - targeting via ID */
#alveare-global-footer {
  color: #eadfcd;
}

#alveare-global-footer .footer-logo-alveare img,
#alveare-global-footer .logo-bianco-footer img,
#alveare-global-footer img[src*="logo2026.png"] {
  filter: brightness(0) invert(1) grayscale(1) contrast(1.22) !important;
  opacity: 0.98;
  display: block;
}

#alveare-global-footer h1,
#alveare-global-footer h2,
#alveare-global-footer h3,
#alveare-global-footer h4,
#alveare-global-footer h5,
#alveare-global-footer h6,
#alveare-global-footer .vc_custom_heading,
#alveare-global-footer strong {
  color: #fff6e8 !important;
}

#alveare-global-footer a,
#alveare-global-footer .footer-link {
  color: #f3eadb !important;
  text-decoration: none !important;
  transition: color .25s ease, opacity .25s ease;
  opacity: 0.92;
}

#alveare-global-footer a:hover,
#alveare-global-footer a:focus,
#alveare-global-footer .footer-link:hover,
#alveare-global-footer .footer-link:focus {
  color: #d9b36c !important;
  opacity: 1;
}

#alveare-global-footer .wpb_wrapper p,
#alveare-global-footer .wpb_wrapper div,
#alveare-global-footer .wpb_wrapper span,
#alveare-global-footer .wpb_text_column {
  line-height: 1.8;
}

#alveare-global-footer .wpb_content_element {
  margin-bottom: 14px;
}

@media only screen and (max-width: 999px) {
  #alveare-global-footer {
    text-align: left;
  }

  #alveare-global-footer .footer-logo-alveare img,
  #alveare-global-footer .logo-bianco-footer img,
  #alveare-global-footer img[src*="logo2026.png"] {
    max-width: 180px;
  }
}
	
	