/**
*********  VARIABLES  *********
*/
:root {
  --accentColor: #000000;
  --secondColor: #faaf18;
  --whiteColor: #ffffff;
  --greyColor: #3f3f3f;
  --blueSecondary: #819dbc;

  --layout-width: 1800px;
}

/**
*********  NORMALIZE  *********
*/
*,
*::after,
*::before {
  box-sizing: border-box;
}
html,
body {
  font-size: 16px;
}

/**
*********  THEME GLOBAL  *********
*/
::selection {
  background: var(--accentColor);
  color: var(--whiteColor);
}

#top .inside,
.header .inside,
#footer .inside,
#bottom .inside,
body.sidebar #container,
.mod_article:not(.fullwidth) > .container,
.fullwidth.boxed-content .contentwrap,
.smallwidth .contentwrap,
.boxed-content .contentwrap,
.autogrid_wrapper.article,
.ce_text_image_bar .inside,
.ce_headerimage .ce_headerimage_inside,
.ce_video_background .ce_video_background_inside,
#offcanvas-top .offcanvas-top-inside,
.ce_calltoaction .ce_calltoaction_inside,
.mod_breadcrumb .mod_breadcrumb_inside,
.mod_pageimage .container,
.ce_easy_slider .swiper-inside .swiper-inside-wrap {
  max-width: var(--layout-width);
  width: calc(100% - (140px));
  margin-left: auto;
  margin-right: auto;
}
.bg-accent {
  background-color: var(--accentColor);
}
.bg-gray {
  background-color: var(--greyColor);
}

body {
  font-family: "futura-pt", sans-serif;
  font-weight: normal;
}
body,
#container {
  color: var(--whiteColor);
  background-color: var(--accentColor);
}
h1 {
  color: var(--whiteColor);
}
h2 {
  font-size: 4.375rem;
  font-weight: 400;
}
.mod_article .autogrid_row.bg_white {
  background-color: var(--whiteColor);
  color: black;
  border-radius: 20px;
  margin: 0;
  padding: 120px 102px;
}
/**
*********  HEADER  *********
*/
.header {
  position: absolute;
  background: transparent;
  line-height: initial;
}

.header .inside {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  height: 100px;
  gap: 68px;
}
.mainmenu {
  height: auto;
  float: none;
  display: flex;
  align-items: center;
  justify-content: flex-start;
  width: 100%;
}
.mainmenu ul {
  position: relative;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr auto;
  justify-content: flex-start;
  gap: 20px;
  align-items: center;
  width: 100%;
  gap: 40px;
}
.mainmenu ul li {
  margin-left: 0;
  margin-right: 0;
}

.mainmenu ul li.active strong,
.mainmenu ul li a {
  text-transform: none;
  padding: 0;
  font-weight: normal;
  font-size: 1rem;
  font-weight: 400;
  color: black;
  margin: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 16px;
  border-radius: 10px;
  background-color: rgba(255, 255, 255, 0.2);
  line-height: initial;
}
.mainmenu ul li a svg {
  transition: all 0.25s ease-in-out;
}
.mainmenu ul li a:hover {
  background-color: rgba(255, 255, 255, 0.6);
}
.mainmenu ul ul li a {
  background-color: rgba(255, 255, 255, 0.4);
}
.mainmenu ul li.contact a {
  color: black;
  background: var(--whiteColor);
  padding: 10px 34px;
  border-radius: 10px;
}
.mainmenu ul li:not(.submenu):hover > a svg {
  transform: rotate(90deg);
}
.mainmenu ul li.submenu:hover > a svg {
  transform: rotate(180deg);
}
.mainmenu ul li.contact a svg {
  display: none;
}
.mainmenu ul ul {
  flex-direction: column;
  align-items: flex-start;
  background-color: transparent;
  gap: 4px;
  padding: 4px 0 0 0;
  box-shadow: none;
  width: 100%;
}
.mainmenu ul li:hover > ul {
  display: flex;
}
.mainmenu ul ul li,
.mainmenu ul ul li a {
  width: 100%;
}
.mainmenu ul:after {
  display: none !important;
}
.mainmenu .hide-menu-desktop {
  display: none;
}

/**
*********  FOOTER  *********
*/
.article-footer {
  background: var(--accentColor);
}
.article-footer p,
.article-footer p a,
.article-footer li,
.article-footer li a,
.article-footer div {
  color: var(--whiteColor);
}
.article-footer .headline {
  text-transform: uppercase;
  font-size: 1.125rem;
  font-weight: 700;
  line-height: normal;
}
.article-footer li a {
  font-size: 1rem;
  font-weight: 400;
  line-height: 25px;
}
.article-footer .column-logo {
  margin-top: -60px;
}
.article-footer .logos {
  margin-bottom: 2rem;
}
.article-footer .content-hyperlink a {
  font-size: 1rem;
  font-weight: 450;
  text-align: center;
}
.article-footer .content-hyperlink .svg {
  display: none;
}
.article-footer .mod_subscribe {
  background: var(--blueSecondary);
  padding: 12px 20px;
}
.article-footer .mod_subscribe .widget.widget-text {
  min-width: 0;
}
.article-footer .mod_subscribe input.text {
  padding: 0;
  height: 30px;
  color: var(--blueSecondary);
  font-size: 1rem;
  font-weight: 450;
  line-height: normal;
  background: #efefef;
}
.article-footer .mod_subscribe input.submit[type="submit"],
.article-footer .mod_subscribe button.submit[type="submit"] {
  color: var(--whiteColor);
  text-align: center;
  font-size: 0.875rem;
  font-weight: 450;
  line-height: normal;
  background: var(--accentColor);
  text-transform: uppercase;
  height: 30px;
  padding: 0;
}
.article-footer .mod_subscribe h2 {
  color: var(--whiteColor);
  font-size: 1.435rem;
  font-weight: 700;
  line-height: normal;
}
#bottom {
  background: var(--accentColor);
}
.bandeau-copyright {
  text-align: right;
}
.bandeau-copyright,
.bandeau-copyright span,
#bottom .inside .bandeau-copyright a {
  color: var(--whiteColor);
}
.bandeau-copyright span,
#bottom .inside .bandeau-copyright a {
  margin: 0px 5px;
}

/**
*********  BTN  *********
*/
.content-hyperlink a {
  font-size: 1rem;
  font-weight: 400;
  width: max-content;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 40px;
  border-radius: 10px;
  padding: 10px 16px;
  background-color: var(--whiteColor);
  color: black;
}
.content-hyperlink.txt-color-accent a {
  background-color: var(--secondColor);
}
.content-hyperlink.txt-color-second a {
  background-color: black;
  color: var(--whiteColor);
}
.content-hyperlink.txt-color-second a svg path {
  fill: white;
}
.content-hyperlink.h-align-right {
  display: flex;
  justify-content: flex-end;
}
.content-hyperlink.h-align-center a {
  margin: auto;
}
/**
*********  SLIDER  *********
*/
#slider h1 {
  margin-bottom: 90px;
}
#slider {
  color: var(--whiteColor);
}

/**
*********  RSCE Container col  *********
*/
.ce_rsce_container_col.col_50 {
  display: flex;
  gap: 28px;
}
