/*
 Theme Name:     Divi-child
 Theme URI:
 Description:      Divi-child Theme
 Author:		Josep
 Author URI:
 Template:       Divi
 Version:        1.0.0
 License:
 License URI:
 Tags:
 Text Domain:
*/
/*************************************************
* construccio
* tipografia
* general
* header
* home
* empresa
* serveis
* area privada
* contacte
* blog
* RGPD
* footer
*************************************************/
/************* construccio **********************/
@media (min-width: 981px) {
  .page__construccio {
    height: 100vh; } }

@media (max-width: 490px) {
  .construccio__contacte > .et_pb_text_inner {
    max-width: 286px;
    margin: auto; } }

/*****************************/
/************ tipografia *************/
body {
  color: #FFFFE6;
  line-height: 1.4em;
  font-weight: 400; }

h1, .h1 {
  font-size: 50px;
  font-weight: 500;
  font-style: italic;
  color: #FFFFE6; }

h2, .h2 {
  font-size: 30px;
  font-weight: 700;
  color: #FFFFE6; }

h3, .h3 {
  font-size: 23px;
  color: #FFFFE6;
  font-weight: 700; }

.footer__title {
  font-size: 18px;
  font-weight: 700;
  color: #FFFFE6; }

.cookies-per-purpose {
  color: #0B0B0B; }

@media (max-width: 480px) {
  h1, .h1 {
    font-size: 38px; } }

/************ general ***************/
#main-content {
  background-color: transparent; }

.et_pb_section {
  background-color: #0B0B0B; }

.centrar-columnes {
  -ms-flex-align: center;
      align-items: center; }

.et_pb_button {
  padding: 20px 60px;
  font-size: 18px;
  font-weight: 700; }
  .et_pb_button:hover {
    padding: 20px 60px; }
    .et_pb_button:hover::after {
      display: none; }

.et_pb_module .et_pb_button:hover {
  padding: 20px 60px;
  border: 1px solid #FFFFE6; }

.et_pb_button.btn-gris-transp-blanc {
  background-color: transparent;
  border: 1px solid #FFFFE6;
  border-radius: 10px;
  color: #ffffff; }
  .et_pb_button.btn-gris-transp-blanc:hover {
    background-color: #FFFFE6;
    color: #0B0B0B; }

.title-linea-lateral::before, .title-linea-lateral::after {
  position: absolute;
  top: 50%;
  width: 170px;
  height: 1px;
  background: #FFFFE6;
  content: ''; }

.title-linea-lateral::before {
  margin-left: -224px; }

.title-linea-lateral::after {
  margin-left: 52px; }

.et_multi_view_image__loaded {
  animation: multi-view-image-fade 1.5s; }

@media (max-width: 980px) {
  .invertir-columnes {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-direction: column-reverse;
        flex-direction: column-reverse; } }

@media (max-width: 767px) {
  .title-linea-lateral::before, .title-linea-lateral::after {
    content: none; } }

/************ header ****************/
header#main-header .container.et_menu_container {
  width: 100%;
  max-width: 100%;
  padding: 0 50px; }
  header#main-header .container.et_menu_container #et-top-navigation {
    font-weight: 400; }
    header#main-header .container.et_menu_container #et-top-navigation #top-menu.nav li.menu-item ul.sub-menu {
      width: 270px;
      border: 1px solid #FFFFE6;
      border-top: 3px solid #FFFFE6; }
      header#main-header .container.et_menu_container #et-top-navigation #top-menu.nav li.menu-item ul.sub-menu li.menu-item {
        width: 100%;
        padding: 6px 0; }
        header#main-header .container.et_menu_container #et-top-navigation #top-menu.nav li.menu-item ul.sub-menu li.menu-item a {
          width: 100%; }
    header#main-header .container.et_menu_container #et-top-navigation #top-menu.nav li.current-menu-item > a,
    header#main-header .container.et_menu_container #et-top-navigation #top-menu.nav li.current-menu-ancestor > a {
      color: #ffffff;
      opacity: 0.6; }
  header#main-header .container.et_menu_container .navigation-right {
    display: -ms-flexbox;
    display: flex;
    font-size: 14px;
    font-weight: 400; }
    header#main-header .container.et_menu_container .navigation-right .wpml-ls-statics-shortcode_actions {
      width: 120px; }
      header#main-header .container.et_menu_container .navigation-right .wpml-ls-statics-shortcode_actions li {
        padding-bottom: 20px; }
        header#main-header .container.et_menu_container .navigation-right .wpml-ls-statics-shortcode_actions li a {
          background-color: transparent;
          border: none; }
        header#main-header .container.et_menu_container .navigation-right .wpml-ls-statics-shortcode_actions li ul.wpml-ls-sub-menu {
          padding: 20px;
          border: 1px solid #FFFFE6;
          border-top: 3px solid #FFFFE6;
          background-color: #0B0B0B; }
          header#main-header .container.et_menu_container .navigation-right .wpml-ls-statics-shortcode_actions li ul.wpml-ls-sub-menu li {
            padding-bottom: 0; }
    header#main-header .container.et_menu_container .navigation-right a {
      color: #ffffff; }
      header#main-header .container.et_menu_container .navigation-right a:not(:last-child) {
        margin-right: 30px; }
      header#main-header .container.et_menu_container .navigation-right a:hover {
        opacity: 0.7;
        transition: all 0.4s ease-in-out; }

@media (max-width: 1300px) {
  header#main-header .container.et_menu_container {
    padding: 0 30px; }
    header#main-header .container.et_menu_container #et-top-navigation #top-menu li a {
      font-size: 14px; } }

@media (max-width: 1160px) {
  header#main-header .container.et_menu_container {
    padding: 0 10px; }
    header#main-header .container.et_menu_container #et-top-navigation #top-menu li {
      padding-right: 11px; } }

@media (max-width: 1040px) {
  header#main-header .container.et_menu_container #et-top-navigation #top-menu li {
    padding-right: 6px; } }

@media (min-width: 981px) {
  #top-header {
    display: none; }
  header#main-header .container.et_menu_container #et-top-navigation {
    padding-left: 0 !important;
    float: left; }
  header#main-header .container.et_menu_container .logo_container {
    width: 150px;
    left: 50%;
    top: 50%;
    -ms-transform: translate(-69px, -50%);
        transform: translate(-69px, -50%); }
  header#main-header .container.et_menu_container .navigation-right {
    float: right;
    padding-top: 30px;
    transition: all 0.4s ease-in-out; }
  header#main-header.et-fixed-header .container.et_menu_container .navigation-right {
    padding-top: 17px; } }

@media (max-width: 980px) {
  #top-header {
    position: absolute;
    top: 0;
    width: 100%; }
    #top-header .container {
      width: 100%;
      max-width: 100%;
      padding: 0 30px; }
      #top-header .container #et-secondary-nav {
        display: -ms-flexbox;
        display: flex; }
        #top-header .container #et-secondary-nav li {
          font-weight: 400; }
          #top-header .container #et-secondary-nav li:not(:last-child) {
            margin-right: 20px; }
          #top-header .container #et-secondary-nav li a {
            color: #ffffff; }
  header#main-header .container.et_menu_container {
    padding: 0 30px; }
    header#main-header .container.et_menu_container .navigation-right {
      display: none; }
    header#main-header .container.et_menu_container #et-top-navigation #et_mobile_nav_menu .mobile_menu_bar::before {
      color: #ffffff; }
    header#main-header .container.et_menu_container #et-top-navigation .et_mobile_menu {
      border-color: #FFFFE6; }
    header#main-header .container.et_menu_container .logo_container {
      width: 150px; }
      header#main-header .container.et_menu_container .logo_container #logo {
        max-width: 100%;
        max-height: 62%; } }

/************** home *******************/
.et_pb_section.home__header {
  height: 92vh;
  padding: 0;
  background-size: contain; }
  .et_pb_section.home__header .et_pb_row {
    height: 100%;
    -ms-flex-align: center;
        align-items: center;
    padding: 0 50px; }
    .et_pb_section.home__header .et_pb_row p {
      font-size: 100px;
      line-height: 90px; }

.home__coneixnos .home__coneixnos-text {
  padding: 113px 0; }
  .home__coneixnos .home__coneixnos-text .et_pb_text {
    max-width: 787px;
    padding: 0 30px; }
    .home__coneixnos .home__coneixnos-text .et_pb_text h1 {
      margin-bottom: 30px; }
    .home__coneixnos .home__coneixnos-text .et_pb_text a {
      font-family: "Playfair Display", Georgia, "Times New Roman", serif;
      font-size: 30px;
      font-style: italic;
      font-weight: 700;
      color: #FFFFE6; }
      .home__coneixnos .home__coneixnos-text .et_pb_text a:hover {
        opacity: 0.7;
        transition: all 0.4s ease-in-out; }
  .home__coneixnos .home__coneixnos-text .et_pb_button_module_wrapper {
    max-width: 787px;
    padding: 0 30px; }

.home__serveis .et_pb_row:not(.home__serveis_row) {
  padding: 6px 0 50px; }

.home__serveis .home__serveis-row:not(.serveis__row) .et_pb_column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  column-gap: 50px;
  row-gap: 50px; }

.home__serveis .home__serveis-row .et_pb_column .home__serveis-item {
  justify-self: center;
  width: -webkit-fit-content;
  width: fit-content;
  max-height: 98%;
  border-radius: 10px; }
  .home__serveis .home__serveis-row .et_pb_column .home__serveis-item .et_pb_main_blurb_image {
    margin-bottom: 0; }
  .home__serveis .home__serveis-row .et_pb_column .home__serveis-item .et_pb_blurb_container {
    position: absolute;
    width: 100%;
    bottom: 0;
    left: 50%;
    -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
    padding: 0 10px; }
    .home__serveis .home__serveis-row .et_pb_column .home__serveis-item .et_pb_blurb_container h3 {
      font-family: "Montserrat", Helvetica, Arial, Lucida, sans-serif;
      font-size: 18px;
      font-weight: 700; }

.home__confiar .home_confiar-row .et_pb_column {
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[4];
      grid-template-columns: repeat(4, 1fr);
  column-gap: 50px; }
  .home__confiar .home_confiar-row .et_pb_column .home__confiar-numero {
    margin-top: -58px;
    margin-bottom: 20px;
    font-family: "Playfair Display", Georgia, "Times New Roman", serif;
    font-style: italic;
    font-size: 300px;
    line-height: 232px;
    text-align: right;
    border-bottom: 15px solid #FFFFE6;
    overflow: hidden; }
  .home__confiar .home_confiar-row .et_pb_column .footer__title {
    padding-bottom: 14px; }

.home__contacte .home__contacte-mapa:not(.contacte__contacte-mapa) .et_pb_column:first-child {
  border-top: 1px solid #FFFFE6;
  border-bottom: 1px solid #FFFFE6; }

.home__contacte .home__contacte-dades {
  margin-top: -360px;
  -ms-flex-align: center;
      align-items: center; }

@media (max-width: 1300px) {
  .et_pb_section.home__header .et_pb_row {
    padding: 0 30px; } }

@media (max-width: 1160px) {
  .et_pb_section.home__header .et_pb_row {
    padding: 0 10px; } }

@media (max-width: 1050px) {
  .home__contacte .home__contacte-mapa .et_pb_column:first-child {
    width: 43%; }
  .home__contacte .home__contacte-mapa .et_pb_column:nth-child(2) {
    width: 57%; } }

@media (max-width: 980px) {
  .et_pb_section.home__header {
    height: auto;
    padding: 50px 0; }
    .et_pb_section.home__header .et_pb_row {
      padding: 0 30px; }
      .et_pb_section.home__header .et_pb_row p {
        font-size: 90px;
        line-height: 1em; }
  .home__coneixnos .home__coneixnos-text {
    padding: 70px 0; }
  .home__serveis .home__serveis-row:not(.home__serveis_row) .et_pb_column {
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
  .home__confiar .home_confiar-row .et_pb_column {
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); }
  .home__contacte .home__contacte-mapa .et_pb_column:nth-child(2) {
    width: 100%; } }

@media (max-width: 767px) {
  .et_pb_section.home__header .et_pb_row p {
    font-size: 70px; }
  .home__coneixnos .home__coneixnos-text {
    padding: 50px 0; }
  .home__serveis .home__serveis-row .et_pb_column {
    column-gap: 40px;
    row-gap: 40px; } }

@media (max-width: 480px) {
  .et_pb_section.home__header .et_pb_row p {
    font-size: 50px; }
  .home__serveis .home__serveis-row:not(.home__serveis_row) .et_pb_column {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr; }
  .home__confiar .home_confiar-row .et_pb_column {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr; } }

/************* empresa *****************/
.empresa__timelines .et_pb_row .et_pb_blurb {
  margin-left: -22px; }

.empresa__timelines .et_pb_row .et_pb_blurb.timeline-list {
  margin-left: -12px; }

.empresa__timelines .et_pb_row h2 {
  font-weight: 400; }

@media (max-width: 980px) {
  .empresa__timelines .et_pb_row .et_pb_column {
    border-left: 2px solid #FFFFE6;
    box-shadow: -2px 0px 0px 0px #FFFFE6; } }

/************* serveis *****************/
.serveis__seccio-cuadricula {
  width: 80%;
  max-width: 1260px;
  margin: auto;
  display: -ms-grid;
  display: grid;
  -ms-grid-columns: (1fr)[3];
      grid-template-columns: repeat(3, 1fr);
  column-gap: 50px;
  row-gap: 60px; }
  .serveis__seccio-cuadricula .et_pb_row {
    width: 100%;
    max-width: 300px; }
    .serveis__seccio-cuadricula .et_pb_row .et_pb_blurb img {
      margin-bottom: -4px; }

@media (max-width: 980px) {
  .serveis__seccio-cuadricula {
    -ms-grid-columns: (1fr)[2];
        grid-template-columns: repeat(2, 1fr); } }

@media (max-width: 480px) {
  .serveis__seccio-cuadricula {
    -ms-grid-columns: 1fr;
        grid-template-columns: 1fr; } }

/********* area privada ****************/
@media (min-width: 981px) {
  .page-id-46 #main-header {
    background-color: transparent; }
  .page-id-46 #main-header.et-fixed-header {
    background-color: #0B0B0B; }
  .et_pb_section.page__area-privada {
    margin-top: -80px;
    padding-top: 110px;
    padding-bottom: 0;
    height: 100vh; } }

@media (max-width: 980px) {
  .area-privada__row-items .et_pb_column:not(:last-child) {
    margin-bottom: 50px; } }

/************* contacte ****************/
.contacte__formulari .formulari-contacte-item input, .contacte__formulari .formulari-contacte-item textarea {
  width: 100%;
  padding: 12px;
  background-color: transparent;
  color: #FFFFE6;
  font-size: 15px; }
  .contacte__formulari .formulari-contacte-item input:focus, .contacte__formulari .formulari-contacte-item textarea:focus {
    font-weight: 400;
    color: #FFFFE6; }

.contacte__formulari .formulari-captcha {
  margin: 15px 0; }

.contacte__formulari .et_pb_toggle {
  margin-bottom: 15px; }
  .contacte__formulari .et_pb_toggle .et_pb_toggle_title {
    cursor: pointer; }
  .contacte__formulari .et_pb_toggle .et_pb_toggle_content {
    padding: 10px;
    border: 1px solid #FFFFE6;
    font-size: 13px; }

.contacte__formulari .compte-usuari .wpcf7-list-item, .contacte__formulari .your-consent .wpcf7-list-item {
  margin-left: 0; }
  .contacte__formulari .compte-usuari .wpcf7-list-item input, .contacte__formulari .your-consent .wpcf7-list-item input {
    margin-left: 0; }
  .contacte__formulari .compte-usuari .wpcf7-list-item a, .contacte__formulari .your-consent .wpcf7-list-item a {
    color: #FFFFE6;
    font-weight: 700; }
    .contacte__formulari .compte-usuari .wpcf7-list-item a:hover, .contacte__formulari .your-consent .wpcf7-list-item a:hover {
      text-decoration: underline; }

.contacte__formulari .et_contact_bottom_container input {
  background-color: #0B0B0B;
  color: #FFFFE6;
  border: 1px solid #FFFFE6;
  border-radius: 10px; }
  .contacte__formulari .et_contact_bottom_container input:hover {
    background-color: #FFFFE6;
    color: #0B0B0B; }

.mapa-vinyes h3 {
  color: #0B0B0B; }

/************* blog *****************/
.blog-grid .et_pb_blog_grid .et_pb_post {
  background-color: #0B0B0B; }

/************* RGPD *****************/
body:not(.et-tb).page-id-1091 #main-content .container, body:not(.et-tb-has-header) #main-content .container {
  padding-bottom: 58px;
}
.page-id-1091 h1,
.rgpd-container {
  max-width: 800px;
  margin: auto;
}
.page-id-1091 h1 {
  margin-bottom: 30px;
}
.rgpd-container {
  font-size: 18px;
  line-height: 1.4;
}

/************* footer ******************/
footer #footer-widgets {
  font-weight: 400; }
  footer #footer-widgets .footer-widget {
    width: 23.5%; }
    footer #footer-widgets .footer-widget:not(:last-child) {
      margin-right: 2%; }
    footer #footer-widgets .footer-widget li {
      padding-left: 0; }
      footer #footer-widgets .footer-widget li::before {
        display: none; }

footer #footer-bottom #footer-info {
  width: 100%;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  font-size: 12px;
  font-weight: 400;
  color: #ffffff; }
  footer #footer-bottom #footer-info a {
    font-weight: 600;
    color: #ffffff; }

@media (max-width: 880px) {
  footer #footer-bottom #footer-info {
    -ms-flex-direction: column;
        flex-direction: column; } }
