/* ============================================================
   CONCEPT D — HEADER & FOOTER
   Loaded on every URL.

   The site's own Elementor header and footer templates are kept
   exactly as they are. Every menu item, every link, every URL and
   every word stays. Only colour, type and spacing change.
   ============================================================ */

/* ------------------------------------------------------------
   HEADER
   ------------------------------------------------------------ */
.elementor-location-header{
  background:#0D0C0A!important;
  border-bottom:1px solid rgba(255,255,255,.12);
  position:relative;
  z-index:50;
}
/* Header sections get a SOLID surface, never transparent.
   The header's container 656b291 is sticky (the site's original
   setting: sticky top on desktop, tablet and mobile). When Elementor
   detaches it on scroll it leaves the .elementor-location-header
   wrapper behind, so any transparency shows the page through it. */
.elementor-location-header .elementor-section,
.elementor-location-header .e-con,
.elementor-location-header .elementor-column,
.elementor-location-header .elementor-sticky--active,
.elementor-location-header .elementor-sticky--effects,
.elementor-element-656b291{
  background-image:none!important;
  background-color:#0D0C0A!important;
}
/* Inner wrappers stay transparent so the surface reads as one band. */
.elementor-location-header .e-con-inner,
.elementor-location-header .elementor-widget-wrap{
  background-color:transparent!important;
}
.elementor-element-656b291.elementor-sticky--active{
  box-shadow:0 1px 0 rgba(255,255,255,.12), 0 10px 30px -18px rgba(0,0,0,.8);
}
.elementor-location-header .elementor-background-overlay{ opacity:0!important; }

/* Menu */
.elementor-location-header .elementor-nav-menu a,
.elementor-location-header .elementor-item,
.elementor-location-header .e-n-menu-title-text{
  font-family:'Rubik',system-ui,sans-serif!important;
  font-weight:500!important;
  font-size:15.5px!important;
  letter-spacing:0!important;
  color:#BDB6AC!important;
  fill:#BDB6AC!important;
}
.elementor-location-header .elementor-item:hover,
.elementor-location-header .elementor-item.elementor-item-active,
.elementor-location-header .e-n-menu-title:hover .e-n-menu-title-text{
  color:#fff!important;
}
/* Brand underline on hover, replacing the default highlight. */
.elementor-location-header .elementor-item{
  position:relative;
  padding-block:8px!important;
}
.elementor-location-header .elementor-item::after{
  content:'';
  position:absolute;
  inset-block-end:0; inset-inline-start:0;
  width:0; height:2px;
  background:#A1CB3D;
  transition:width .26s cubic-bezier(.2,.8,.3,1);
}
.elementor-location-header .elementor-item:hover::after{ width:100%; }

/* Dropdown / mega panels sit on the dark surface too. */
.elementor-location-header .elementor-nav-menu--dropdown,
.elementor-location-header .e-n-menu-content,
.elementor-location-header .sub-menu{
  background-color:#191714!important;
  border-radius:0!important;
}
.elementor-location-header .sub-menu a{ color:#BDB6AC!important; }
.elementor-location-header .sub-menu a:hover{ color:#A1CB3D!important; }

/* Search field */
.elementor-location-header input[type="search"],
.elementor-location-header .elementor-search-form__input{
  background:rgba(255,255,255,.06)!important;
  border:1px solid rgba(255,255,255,.14)!important;
  border-radius:0!important;
  color:#F7F4EE!important;
  font-family:'Rubik',sans-serif!important;
}
.elementor-location-header .elementor-search-form__input::placeholder{ color:#8A8278!important; }

/* Buttons in the header */
.elementor-location-header .elementor-button{
  border-radius:0!important;
  font-family:'Rubik',sans-serif!important;
  font-weight:700!important;
  background-color:#A1CB3D!important;
  color:#121607!important;
  box-shadow:none!important;
}
.elementor-location-header .elementor-button:hover{ background-color:#B4E046!important; }

/* Phone number reads as data */
.elementor-location-header a[href^="tel:"]{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;
  font-weight:700!important;
  letter-spacing:-.04em!important;
}

/* ------------------------------------------------------------
   FOOTER
   The footer sections carry photo backgrounds with a dark overlay
   on top. An earlier rule zeroed those overlays, which left the
   photograph at full strength and the text unreadable. The photos
   are replaced with flat surfaces instead.
   ------------------------------------------------------------ */
.elementor-location-footer{
  background:#000!important;
  position:relative;
  z-index:2;
}
.elementor-location-footer .elementor-section,
.elementor-location-footer .e-con,
.elementor-location-footer .elementor-column{
  background-image:none!important;
}
/* Restore overlays to fully opaque dark wherever one still exists,
   so nothing can bleed through. */
.elementor-location-footer .elementor-background-overlay{
  opacity:1!important;
  background-image:none!important;
  background-color:transparent!important;
}

/* The lead form band keeps concept D's brand green. */
.elementor-location-footer .elementor-section:has(.elementor-form),
.elementor-location-footer .e-con:has(.elementor-form){
  background-color:#A1CB3D!important;
}
.elementor-location-footer .elementor-form{ background:transparent; }
.elementor-location-footer :is(h1,h2,h3,h4,.elementor-heading-title){
  font-family:'Rubik',sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.03em!important;
  color:#fff!important;
}
.elementor-location-footer .elementor-section:has(.elementor-form) :is(h2,h3,.elementor-heading-title){
  color:#121607!important;
}

/* Footer links keep their text and URLs, and take the new colours. */
.elementor-location-footer,
.elementor-location-footer .elementor-widget-text-editor,
.elementor-location-footer li,
.elementor-location-footer p{
  font-family:'Rubik',sans-serif!important;
  color:#8A8278!important;
  letter-spacing:0!important;
}
.elementor-location-footer a{ color:#8A8278!important; transition:color .2s; }
.elementor-location-footer a:hover{ color:#A1CB3D!important; }
.elementor-location-footer .elementor-icon-list-icon svg,
.elementor-location-footer .elementor-icon-list-icon i{ color:#A1CB3D!important; fill:#A1CB3D!important; }

.elementor-location-footer a[href^="tel:"]{
  font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;
  font-weight:700!important;
  letter-spacing:-.045em!important;
  color:#fff!important;
}

/* Footer form fields match the homepage treatment. */
.elementor-location-footer .elementor-field-textual{
  background:transparent!important;
  border:0!important;
  border-bottom:2px solid rgba(18,22,7,.4)!important;
  border-radius:0!important;
  color:#121607!important;
  font-weight:600!important;
}
.elementor-location-footer .elementor-field-textual::placeholder{ color:rgba(18,22,7,.45)!important; }
.elementor-location-footer .elementor-field-group > label{ color:#1C2409!important; font-weight:700!important; }
.elementor-location-footer .elementor-button[type="submit"]{
  background-color:#0D0C0A!important;
  color:#F7F4EE!important;
  border-radius:0!important;
}

/* Social icons */
.elementor-location-footer .elementor-social-icon{
  background-color:transparent!important;
  border:1px solid rgba(255,255,255,.14);
  border-radius:0!important;
  transition:background-color .2s,border-color .2s;
}
.elementor-location-footer .elementor-social-icon:hover{
  background-color:#A1CB3D!important;
  border-color:#A1CB3D!important;
}
.elementor-location-footer .elementor-social-icon i,
.elementor-location-footer .elementor-social-icon svg{ color:#fff!important; fill:#fff!important; }
.elementor-location-footer .elementor-social-icon:hover i,
.elementor-location-footer .elementor-social-icon:hover svg{ color:#121607!important; fill:#121607!important; }

/* ------------------------------------------------------------
   FLOATING SIDE BUTTONS  (container 04cbdc2, in the footer template)
   צור קשר / סניפים / קבלנים / הצעת מחיר
   side-buttons.js toggles .yz-on-light depending on what is behind
   each button. Default is white; on white/bone surfaces it is black.
   Selectors are prefixed with the footer location so they outrank
   the footer link colour above.
   ------------------------------------------------------------ */
.elementor-location-footer .yz-sb,
.elementor-location-footer .yz-sb .elementor-widget-container,
.elementor-location-footer .yz-sb .elementor-icon-box-wrapper{
  border-color:rgba(255,255,255,.55)!important;
  transition:border-color .2s;
}
.elementor-location-footer .yz-sb .elementor-icon-box-title,
.elementor-location-footer .yz-sb .elementor-icon-box-title a,
.elementor-location-footer .yz-sb .elementor-icon-box-description{
  color:#fff!important;
  font-family:'Rubik',sans-serif!important;
  font-weight:600!important;
  letter-spacing:0!important;
  transition:color .2s;
}
/* Icons can be inline SVG, an icon font or an <img>; a filter recolours
   all three the same way. */
.elementor-location-footer .yz-sb .elementor-icon,
.elementor-location-footer .yz-sb .elementor-icon-box-icon img{
  filter:brightness(0) invert(1);
  transition:filter .2s;
}

/* On light surfaces: black. */
.elementor-location-footer .yz-sb.yz-on-light,
.elementor-location-footer .yz-sb.yz-on-light .elementor-widget-container,
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon-box-wrapper{
  border-color:rgba(13,12,10,.55)!important;
}
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon-box-title,
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon-box-title a,
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon-box-description{
  color:#0D0C0A!important;
}
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon,
.elementor-location-footer .yz-sb.yz-on-light .elementor-icon-box-icon img{
  filter:brightness(0);
}

/* Side buttons: no box fill on any page. On inner pages each button's
   own container carried a dark fill, so they looked different from the
   homepage and the white/black switching had nothing to read against. */
.elementor-element-04cbdc2 .e-con,
.elementor-element-04cbdc2 .elementor-widget-icon-box,
.elementor-element-04cbdc2 .elementor-widget-container{
  background-color:transparent!important;
  background-image:none!important;
}

/* Mobile header call button: the mono display size overflowed its
   green box. Text unchanged, only sized to fit. */
@media (max-width:767px){
  .elementor-location-header a[href^="tel:"],
  .elementor-location-header a[href^="tel:"] *{
    font-size:16px!important;
    line-height:1.2!important;
    white-space:nowrap!important;
  }
}

/* Header call button: centre the phone icon on the text line. The icon
   carried an offset sized for the original larger icon, which left it
   ~12px above the number once the button was resized. */
.elementor-location-header a[href^="tel:"] .elementor-button-content-wrapper{
  align-items:center!important;
  gap:8px!important;
}
.elementor-location-header a[href^="tel:"] .elementor-button-icon,
.elementor-location-header a[href^="tel:"] .elementor-button-icon i,
.elementor-location-header a[href^="tel:"] .elementor-button-icon svg{
  margin:0!important;
  top:auto!important;
  transform:none!important;
  line-height:1!important;
  align-self:center!important;
}
.elementor-location-header a[href^="tel:"] .elementor-button-icon i{ display:inline-block!important; }

/* ------------------------------------------------------------
   MOBILE / TABLET MENU PANEL
   The nested menu's dropdown panel was white with light-grey text and
   partly transparent, so page content showed through below the last
   item. Black panel, white items. Items, order and links unchanged.
   ------------------------------------------------------------ */
@media (max-width:1024px){
  .elementor-location-header .e-n-menu-wrapper,
  .elementor-location-header .e-n-menu-heading,
  .elementor-location-header .e-n-menu-item,
  .elementor-location-header .e-n-menu-title,
  .elementor-location-header .e-n-menu-title-container,
  .elementor-location-header .e-n-menu-content,
  .elementor-location-header .e-n-menu-content > .e-con,
  .elementor-location-header .elementor-nav-menu--dropdown{
    background-color:#0D0C0A!important;
    background-image:none!important;
  }
  .elementor-location-header .e-n-menu-wrapper{
    box-shadow:0 24px 40px -20px rgba(0,0,0,.8)!important;
  }
  .elementor-location-header .e-n-menu-item{
    border-bottom:1px solid rgba(255,255,255,.1)!important;
  }
  .elementor-location-header .e-n-menu-title-text,
  .elementor-location-header .e-n-menu-title a,
  .elementor-location-header .e-n-menu-content a,
  .elementor-location-header .e-n-menu-content .elementor-heading-title,
  .elementor-location-header .elementor-nav-menu--dropdown a{
    color:#fff!important;
    font-size:17px!important;
    font-weight:600!important;
  }
  .elementor-location-header .e-n-menu-title:hover .e-n-menu-title-text,
  .elementor-location-header .e-n-menu-title.e-current .e-n-menu-title-text,
  .elementor-location-header .e-n-menu-content a:hover{
    color:#A1CB3D!important;
  }
  /* Dropdown chevrons */
  .elementor-location-header .e-n-menu-dropdown-icon,
  .elementor-location-header .e-n-menu-dropdown-icon i,
  .elementor-location-header .e-n-menu-dropdown-icon svg{
    color:#fff!important;
    fill:#fff!important;
  }
  /* The underline-on-hover is a desktop affordance. */
  .elementor-location-header .elementor-item::after{ display:none!important; }
}

@media (max-width:1024px){
  /* Group label inside an open submenu, e.g. "כל סוגי העצים" */
  .elementor-location-header .e-n-menu-content .elementor-heading-title,
  .elementor-location-header .e-n-menu-content .elementor-heading-title a{
    color:#A1CB3D!important;
    font-size:14px!important;
    font-weight:700!important;
    letter-spacing:.02em!important;
  }
  /* Sub-items: one step lighter than the top level */
  .elementor-location-header .e-n-menu-content a:not(.elementor-heading-title a),
  .elementor-location-header .e-n-menu-content .elementor-icon-list-text{
    color:#D9D3C9!important;
    font-size:16px!important;
    font-weight:400!important;
  }
  .elementor-location-header .e-n-menu-content{
    padding-inline-start:12px!important;
  }
}

/* ============================================================
   GLOBAL COLOUR SWAP
   The site's Elementor kit (971) defines the palette as CSS custom
   properties on .elementor-kit-971. Overriding them here re-colours
   every widget that uses a global colour, on every page, without
   editing the kit:
     secondary  #534C46 (old grey)   -> #0D0C0A (new black)
     95b8ac3    #32C6F7 (waze blue)  -> #A1CB3D (brand green)
   Primary / accent stay #A1CB3D, which is already the new green.
   ============================================================ */
body.elementor-kit-971,
.elementor-kit-971{
  --e-global-color-secondary:#0D0C0A!important;
  --e-global-color-95b8ac3:#A1CB3D!important;
}

/* The three places that hard-code the old grey instead of the global. */
/* Header search box (#796E64) */
.elementor-977 .elementor-element-ad27194 .elementor-search-form__container,
.elementor-977 .elementor-element-ad27194 input[type="search"].elementor-search-form__input{
  background-color:#191714!important;
}
/* Contact page form panel overlay */
.elementor-32 .elementor-element-fc52567::before{ background-color:#0D0C0A!important; }
/* "הצעת מחיר" popup overlay */
.elementor-2949 .elementor-element-6057e9e::before{ background-color:#0D0C0A!important; }

/* ============================================================
   BRANCH / MAP CARDS — every page
   (product + category already had this; now contact-us and any
   other page with the branch block). Navigate = solid green,
   phone = outlined, both full width, stacked.
   ============================================================ */
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not([data-elementor-type="single-page"]):not([data-elementor-type="single-post"]) > .e-parent:has(.elementor-widget-google_maps){
  background-color:#191714!important;
  background-image:none!important;
}
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not([data-elementor-type="single-page"]):not([data-elementor-type="single-post"]) > .e-parent:has(.elementor-widget-google_maps) > .elementor-widget-heading .elementor-heading-title,
.elementor:not([data-elementor-type="header"]):not([data-elementor-type="footer"]):not([data-elementor-type="single-page"]):not([data-elementor-type="single-post"]) > .e-parent:has(.elementor-widget-google_maps) > .e-con-inner > .elementor-widget-heading .elementor-heading-title{
  color:#fff!important;
  font-family:'Rubik',sans-serif!important;
  font-weight:900!important;
  letter-spacing:-.035em!important;
}
.e-con:has(> .elementor-widget-google_maps),
.e-con:has(> .e-con-inner > .elementor-widget-google_maps){
  background-color:transparent!important;
  background-image:none!important;
  border:1px solid rgba(255,255,255,.12)!important;
  border-radius:0!important;
  transition:border-color .25s, background-color .25s;
}
.e-con:has(> .elementor-widget-google_maps):hover{
  border-color:#A1CB3D!important;
  background-color:#0D0C0A!important;
}
.e-con:has(> .elementor-widget-google_maps)::before{ display:none!important; }
.e-con:has(> .elementor-widget-google_maps) .elementor-heading-title{
  color:#fff!important;
  font-family:'Rubik',sans-serif!important;
  font-weight:800!important;
}
.e-con:has(> .elementor-widget-google_maps) iframe{
  border-radius:0!important;
  filter:grayscale(.35) contrast(1.05);
  transition:filter .3s;
}
.e-con:has(> .elementor-widget-google_maps):hover iframe{ filter:none; }

/* Buttons stacked, full width */
.e-con:has(> .elementor-widget-google_maps) .e-con:has(> .elementor-widget-button){
  flex-direction:column!important;
  gap:10px!important;
  width:100%!important;
}
.e-con:has(> .elementor-widget-google_maps) .elementor-widget-button{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 auto!important;
}
.e-con:has(> .elementor-widget-google_maps) .elementor-button{
  width:100%!important;
  justify-content:center!important;
  border-radius:0!important;
  box-shadow:none!important;
  font-family:'Rubik',sans-serif!important;
  font-weight:700!important;
  font-size:16px!important;
  padding:14px 16px!important;
  white-space:nowrap!important;
  background-color:transparent!important;
  color:#fff!important;
  border:1.5px solid rgba(255,255,255,.3)!important;
  transition:background-color .2s, color .2s, border-color .2s!important;
}
.e-con:has(> .elementor-widget-google_maps) .elementor-button:hover{ border-color:#A1CB3D!important; color:#A1CB3D!important; }
/* Navigate: solid green. Identified by link (waze / maps) or by being first. */
.e-con:has(> .elementor-widget-google_maps) a.elementor-button[href*="waze"],
.e-con:has(> .elementor-widget-google_maps) a.elementor-button[href*="maps"],
.e-con:has(> .elementor-widget-google_maps) .elementor-widget-button:first-child .elementor-button{
  background-color:#A1CB3D!important;
  color:#121607!important;
  border-color:#A1CB3D!important;
}
.e-con:has(> .elementor-widget-google_maps) a.elementor-button[href*="waze"]:hover,
.e-con:has(> .elementor-widget-google_maps) .elementor-widget-button:first-child .elementor-button:hover{
  background-color:#B4E046!important;
  border-color:#B4E046!important;
  color:#121607!important;
}
/* Phone is never the green one, even if it comes first. */
.e-con:has(> .elementor-widget-google_maps) a.elementor-button[href^="tel:"]{
  background-color:transparent!important;
  color:#fff!important;
  border-color:rgba(255,255,255,.3)!important;
}
.e-con:has(> .elementor-widget-google_maps) .elementor-button *{
  color:inherit!important;
  fill:currentColor!important;
}

/* Contact form submit: dark text on the green button. */
.elementor-32 .elementor-element-05d31ce .elementor-button[type="submit"],
.elementor-32 .elementor-element-05d31ce .elementor-button[type="submit"] *{
  color:#121607!important;
  font-weight:700!important;
}
