/*
Theme Name: e-novision Theme
Theme URI: https://e-novision.ch
Author: e-novision
Author URI: https://e-novision.ch
Description: Thème WP e-novision
Version: 1.0
License: GNU General Public License v2 or later
Text Domain: theme-enovision
*/


html 
{
  font-size: 14px;
}
body
{
    margin: 0;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
}

body.error404
{
  background-color: #d1d1d1;
}
.container-404
{
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;

  height: 60vh;
}
body.error404 .container-404 h1 
{
  font-family: var(--e-global-typography-secondary-font-family), Sans-serif;
  font-size: var(--e-global-typography-secondary-font-size);
  font-weight: var(--e-global-typography-secondary-font-weight);
  line-height: var(--e-global-typography-secondary-line-height);
  color: var(--e-global-color-primary);

  margin-bottom: 15px;
}

/* SINGLE ARTICLE STYLE WYSIWIG */
.elementor-widget-text-editor h2
{
  font-size: var(--e-global-typography-50cf0d1-font-size);

  font-family: var(--e-global-typography-50cf0d1-font-family), Sans-serif;
  font-weight: var(--e-global-typography-50cf0d1-font-weight);
  line-height: var(--e-global-typography-50cf0d1-line-height);
  letter-spacing: var(--e-global-typography-50cf0d1-letter-spacing);

  margin-bottom: 15px;
}

.elementor-widget-text-editor h3
{
  font-size: var(--e-global-typography-cffcd45-font-size);

  font-family: var(--e-global-typography-cffcd45-font-family), Sans-serif;
  font-weight: var(--e-global-typography-cffcd45-font-weight);
  line-height: var(--e-global-typography-cffcd45-line-height);
  letter-spacing: var(--e-global-typography-cffcd45-letter-spacing);

  margin-bottom: 10px;
}

.elementor-widget-text-editor h4 
{
  font-size: var(--e-global-typography-1027ade-font-size);

  font-family: var(--e-global-typography-1027ade-font-family), Sans-serif;
  font-weight: var(--e-global-typography-1027ade-font-weight);
  line-height: var(--e-global-typography-1027ade-line-height);
  letter-spacing: var(--e-global-typography-1027ade-letter-spacing);

  margin-bottom: 10px;
}


/* Header menu -------------- */
ul.elementor-nav-menu
{
  position: relative;
}
ul.elementor-nav-menu li
{
  position: unset;
}
ul.elementor-nav-menu ul.sub-menu[aria-expanded="true"]
{
  width: 100% !important;
  border: 1px solid #e6e6e6 !important;
  background-color: #fff !important;
  border-radius: 5px !important;
  box-shadow: 0px 5px 15px #0000000f !important;
  display: flex !important;
  flex-wrap: wrap !important;
  min-width: 500px !important;
  left: 50% !important;
  transform: translateX(-50%) !important;
  padding: 10px !important;
  gap: 10px !important;
}
ul.elementor-nav-menu ul.sub-menu li
{
  width: calc(50% - 5px);
}
ul.elementor-nav-menu ul.sub-menu li a
{
  border: 0;
  padding: 10px !important; 
  border-radius: 5px !important;
  display: flex;
  flex-direction: column;
  align-items: flex-start; 
}
ul.elementor-nav-menu ul.sub-menu li a span
{
  font-size: var(--e-global-typography-40d709d-font-size); 
  white-space: normal;
  line-height: 1.2rem;
  color: #a8a8a8;
  padding-top: 5px;
}


/* STICKY MENU */
header .elementor-sticky
{
  transition: padding .3s; 
  min-height: 70px;
}

@media screen and (max-width: 600px)
{
  header .elementor-sticky
  {
    transition: padding .3s; 
    min-height: 60px;
  }
}

header .elementor-sticky.elementor-sticky--effects 
{
  box-shadow: 0px 6px 21px -8px rgb(0 0 0 / 20%);
  background-color: #ffffff !important;
}
header .elementor-sticky.elementor-sticky--effects .e-con-inner
{
  padding: 10px;
  transition: all .3s;
}
header .elementor-sticky.elementor-sticky--effects .e-con-inner > .e-flex
{
  column-gap: 20px;
}



header .elementor-sticky.elementor-sticky--effects .elementor-widget-image img
{
  content:url("/wp-content/uploads/2026/03/logo_steiger_small.png");
  height: 30px;
}

header .elementor-sticky.elementor-sticky--effects a, header .elementor-sticky.elementor-sticky--effects p, header .elementor-sticky.elementor-sticky--effects svg
{
  color: #000 !important;
  border-color: #000 !important;
  fill: #000 !important;
} 
header .elementor-sticky.elementor-sticky--effects p
{
  font-size: clamp(10px, 7px + 0.5vw, 14px) !important;
}
header .elementor-sticky.elementor-sticky--effects a.elementor-icon
{
  font-size: 20px !important; 
}



















