/**
 * If using a CSS pre-processor, tell it to overwrite this file. If not, place
 * your custom CSS modifications here.
 */

html {font-size: 100%;}
body {margin: 0; padding: 0; font-family: 'Montserrat', sans-serif;}
body.navbar-is-fixed-top {margin-top:0;}
body.path-node {padding: 160px 0 0 0;}
body.path-node article {
  padding: 0 40px;
  margin: 0 0 80px 0;
}

header.navbar.navbar-default {background:white; border:0; border-radius:0; border-bottom: 2px solid rgb(224, 43, 32); margin: 0;}
body.path-frontpage header.navbar.navbar-default{display: none;}
header.navbar .navbar-header {}
header.navbar .navbar-header a.logo {height: 100px; width: auto; margin: 0;}
header.navbar .navbar-header a.logo img {height: 100%; width: auto;}

nav#block-therace-main-menu {}

.main-container {
  padding:0;
  overflow:hidden;
}
h1.page-header {
  color: rgb(224,43,32);
  font-weight: 600;
  margin:0 0 40px 0;
  border: 0;
  padding: 0 40px;
}

/* LANG SWITCHER */
.langSwitch {
  position: absolute;
  top: 0;
  right: 40px;
  z-index: 99;
  display: block;
  width: 200px;
}
ul.links {
  list-style: none;
  margin:0;
  padding:0;
}
ul.links li {
  display: inline-block;
}
ul.links li a.language-link {
  color: rgba(0,0,0,1);
  padding: 5px 10px;
  display: inline-block;
  background: rgba(255,255,255,0.9);
  -webkit-border-bottom-right-radius: 3px;
  -webkit-border-bottom-left-radius: 3px;
  -moz-border-radius-bottomright: 3px;
  -moz-border-radius-bottomleft: 3px;
  border-bottom-right-radius: 3px;
  border-bottom-left-radius: 3px;
  margin: 0 5px;
  text-transform: uppercase;
  font-size: 0.8rem;
}
ul.links li a.language-link:hover {
  text-decoration: none;
  background:rgba(224,43,32,1);
  color: white;
}
ul.links li a.language-link.is-active {
  background: transparent;
  color: white;
}

/* BLOCK SLIDE */
#block-hometop.slide {
  margin-top: -120px;
  width: calc(100% + 30px);
  margin: 0;
  padding: 0;
  overflow:hidden;
  background-image: url("../images/therace_hometop_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  border-bottom: 4px solid rgb(224, 43, 32);
  position: relative;
  z-index:0;
}
#block-hometop.slide .field--name-body #theraceVid {
  z-index: 1;
  width: 110%;
}
#block-hometop.slide .field--name-body {}
/*#block-hometop.slide .field--name-body img.slideImg {width: 100%; height: auto;}*/
#block-hometop.slide .field--name-body p.slideCap {
  margin: 0 40px 180px 40px;
  /*
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  */
  width: 33.333333%;
  min-width: 220px;
  background: rgba(255,255,255,0.9);
  padding: 20px 30px;
  font-size: 1.2rem;
  line-height: 1.8rem;
  position: relative;
  z-index:2;
}
#block-hometop.slide .field--name-body img.slideLogo {
  /*background: rgba(255,255,255,0.9);*/
  margin: 40px;
  padding: 10px 20px;
  width: 260px;
  height: auto;
  position: relative;
  z-index:2;
}
#block-hometop.slide .field--name-body a.goToVid {
  background: rgba(224,43,32,1);
  display: inline-block;
  padding: 10px 15px;
  color: white;
  position: absolute;
  bottom: 160px;
  right: -10px;
  transition: all 0.3s ease;
  border-right: 40px solid rgba(0,0,0,0.4);
  -webkit-border-top-left-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-bottomleft: 5px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  z-index:2;
}
#block-hometop.slide .field--name-body a.goToVid:hover {
  right: 0px;
}

/* BLOCK SLIDE - EN */
#block-hometopen.slide {
  margin-top: -120px;
  width: calc(100% + 30px);
  margin: 0;
  padding: 0;
  overflow:hidden;
  background-image: url("../images/therace_hometop_bg.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  border-bottom: 4px solid rgb(224, 43, 32);
  position: relative;
  z-index:0;
}
#block-hometopen.slide .field--name-body #theraceVid {
  z-index: 1;
  width: 100%;
}
#block-hometopen.slide .field--name-body {}
/*#block-hometop.slide .field--name-body img.slideImg {width: 100%; height: auto;}*/
#block-hometopen.slide .field--name-body p.slideCap {
  margin: 0 40px 180px 40px;
  /*
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  */
  width: 33.333333%;
  min-width: 220px;
  background: rgba(255,255,255,0.9);
  padding: 20px 30px;
  font-size: 1.2rem;
  line-height: 1.8rem;
  position: relative;
  z-index:2;
}
#block-hometopen.slide .field--name-body img.slideLogo {
  /*background: rgba(255,255,255,0.9);*/
  margin: 40px;
  padding: 10px 20px;
  width: 260px;
  height: auto;
  position: relative;
  z-index:2;
}
#block-hometopen.slide .field--name-body a.goToVid {
  background: rgba(224,43,32,1);
  display: inline-block;
  padding: 10px 15px;
  color: white;
  position: absolute;
  bottom: 160px;
  right: -10px;
  transition: all 0.3s ease;
  border-right: 40px solid rgba(0,0,0,0.4);
  -webkit-border-top-left-radius: 5px;
  -webkit-border-bottom-left-radius: 5px;
  -moz-border-radius-topleft: 5px;
  -moz-border-radius-bottomleft: 5px;
  border-top-left-radius: 5px;
  border-bottom-left-radius: 5px;
  z-index:2;
}
#block-hometopen.slide .field--name-body a.goToVid:hover {
  right: 0px;
}

/* BLOCK WEBFORM */
#block-webform.stayUpdate {
  padding: 0 40px;
  background: white;
}
#block-webform.stayUpdate {}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form {
  background: rgb(224,43,32);
  background: linear-gradient(135deg, rgba(224,43,32,1) 0%, rgba(43,8,6,1) 100%);
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
  border-radius: 5px;
  padding: 25px 30px;
  margin: -140px 0 40px 0;
  box-shadow:0 0 20px rgba(0,0,0,0.4), 0 0 5px rgba(0,0,0,0.4), 0 0 2px rgba(0, 0, 0, 1);
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item {
  margin: 0 0 25px 0;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form #edit-webform-title.form-item {}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form #edit-webform-title.form-item h2 {
  margin: 0 0 15px 0;
  padding: 0;
  color:white;
  line-height: 2rem;
  font-size: 2.6rem;
  text-transform: uppercase;
  font-weight: 600;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form #edit-webform-title.form-item p {
  color: white;
  font-size: 1rem;
  line-height: 1.4rem;
  margin: 0 0 50px 0;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item label.control-label {
  color: white;
  margin: 0 0 12px 0;
  padding: 0;
  font-size: 1.2rem;
  line-height: 1.2rem;
  font-weight: 300;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item.form-type-checkbox label.control-label {
  height: 50px;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item input {
  display: block;
  width: 100%;
  height: 50px;
  font-size: 1.2rem;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item input.form-checkbox {
  height: 20px;
  width: 20px;
  margin: 30px 0 0 0;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item .description.help-block {
  color: white;
  font-size: 0.8rem;
  margin: 0 0 20px 0;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-item .description.help-block a {
  color: white;
  font-weight: 600;
  text-decoration: underline;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-actions {}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-actions button.form-submit {
  background: white;
  color: rgb(224,43,32);
  border: 1px solid rgb(224,43,32);
  font-size: 1.2rem;
  font-weight: 600;
  margin: 10px 0 0 0;
  height: 50px;
  padding: 0 20px;
  transition: all 0.3s ease;
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-actions button.form-submit:hover {
  color: white;
  background: rgb(224,43,32);
}
#block-webform.stayUpdate .webform-submission-stay-up-to-date--form .form-required:after {
  background: none;
  content: "*";
  color: white;
  font-size: 1.3rem;
  line-height: 0;
  margin: 0 5px;
}

/* BLOCK ABOUT */
#block-about.about {
  padding: 60px 40px 40px 40px;
  background: white;
}
#block-about.about h2.block-title {
  color: rgb(224, 43, 32);
  margin: 20px 0 35px 0;
  text-transform: uppercase;
  font-weight: 600;
}
#block-about.about .field--name-body {}
#block-about.about .field--name-body p {
  width: 66.666666%;
  font-size: 1.2rem;
  line-height: 2rem;
  margin: 0 0 20px 0;
}
#block-about.about .field--name-body p.america {
  color: rgb(224, 43, 32);
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 2rem;
  margin: 30px 0 5px 0;
}
#block-about.about .field--name-body p.cagliari {
  font-weight: 600;
  font-size: 1.4rem;
  line-height: 1.8rem;
  margin: 0 0 5px 0;
}

/* BLOCK ABOUT - EN */
#block-abouten.about {
  padding: 60px 40px 40px 40px;
  background: white;
}
#block-abouten.about h2.block-title {
  color: rgb(224, 43, 32);
  margin: 20px 0 35px 0;
  text-transform: uppercase;
  font-weight: 600;
}
#block-abouten.about .field--name-body {}
#block-abouten.about .field--name-body p {
  width: 66.666666%;
  font-size: 1.2rem;
  line-height: 2rem;
  margin: 0 0 20px 0;
}
#block-abouten.about .field--name-body p.america {
  color: rgb(224, 43, 32);
  font-weight: 600;
  font-size: 1.6rem;
  line-height: 2rem;
  margin: 30px 0 5px 0;
}
#block-abouten.about .field--name-body p.cagliari {
  font-weight: 600;
  font-size: 1.4rem;
  line-height: 1.8rem;
  margin: 0 0 5px 0;
}

/* BLOCK REGATTA */
#block-regatta.regatta {
  width: calc(100% + 30px);
  margin: 0;
  padding: 40px;
  overflow:hidden;
  background-image: url("../images/cagliari_campo_reagata.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  border-top: 4px solid rgb(224, 43, 32);
}
#block-regatta.regatta .field--name-body {}
#block-regatta.regatta .field--name-body img.therace-symbol {
  display: inline-block;
  width: 220px;
  height: 180px;
  background: rgba(255,255,255,0.8);
  margin: 0 0 40px 0;
}
#block-regatta.regatta .field--name-body .box1 {
  background: rgba(0,0,0,0.6);
  padding: 20px;
  display: inline-block;
  margin: 0 0 40px 0;
}
#block-regatta.regatta .field--name-body .box1 h3 {
  color: white;
  margin: 0 0 5px 0;
  font-size: 4rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}
#block-regatta.regatta .field--name-body .box1 p.date {
  color: white;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 600;
  margin: 0;
}
#block-regatta.regatta .field--name-body .sep {
  display: block;
  background: transparent;
  width: 100%;
  height:0;
}
#block-regatta.regatta .field--name-body .box2 {
  background: rgba(224,43,32,0.8);
  padding: 20px;
  display: inline-block;
}
#block-regatta.regatta .field--name-body .box2 p.roadTo {
  color: white;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 300;
  margin: 0;
}
#block-regatta.regatta .field--name-body .box2 h3 {
  color: white;
  margin: 0;
  font-size: 4rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}
#block-regatta.regatta .field--name-body .box2 p.dateTo {
  color: white;
  font-size: 2.2rem;
  line-height: 1;
  font-weight: 600;
  margin: 0;
}

/* BLOCK REGATTA */
#block-regattaen.regatta {
  width: calc(100% + 30px);
  margin: 0;
  padding: 40px;
  overflow:hidden;
  background-image: url("../images/cagliari_campo_reagata.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center bottom;
  border-top: 4px solid rgb(224, 43, 32);
}
#block-regattaen.regatta .field--name-body {}
#block-regattaen.regatta .field--name-body img.therace-symbol {
  display: inline-block;
  width: 220px;
  height: 180px;
  background: rgba(255,255,255,0.8);
  margin: 0 0 40px 0;
}
#block-regattaen.regatta .field--name-body .box1 {
  background: rgba(0,0,0,0.6);
  padding: 20px;
  display: inline-block;
  margin: 0 0 40px 0;
}
#block-regattaen.regatta .field--name-body .box1 h3 {
  color: white;
  margin: 0 0 5px 0;
  font-size: 4rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}
#block-regattaen.regatta .field--name-body .box1 p.date {
  color: white;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 600;
  margin: 0;
}
#block-regattaen.regatta .field--name-body .sep {
  display: block;
  background: transparent;
  width: 100%;
  height:0;
}
#block-regattaen.regatta .field--name-body .box2 {
  background: rgba(224,43,32,0.8);
  padding: 20px;
  display: inline-block;
}
#block-regattaen.regatta .field--name-body .box2 p.roadTo {
  color: white;
  font-size: 1.6rem;
  line-height: 1;
  font-weight: 300;
  margin: 0;
}
#block-regattaen.regatta .field--name-body .box2 h3 {
  color: white;
  margin: 0;
  font-size: 4rem;
  font-weight: 700;
  text-transform: uppercase;
  line-height: 1;
}
#block-regattaen.regatta .field--name-body .box2 p.dateTo {
  color: white;
  font-size: 2.2rem;
  line-height: 1;
  font-weight: 600;
  margin: 0;
}

/* PARTNER BLOCK */
.partner {padding: 0 40px; margin: 0 0 60px 0;}
.partner h2.block-title {
  margin: 40px 0 0 0;
  font-size: 1rem;
  text-transform: uppercase;
  color: #cccccc;
}
.partner .field--name-body {
  text-align:center;
}
.partner img.partLogo {
  width: auto;
  height: 50px;
  margin: 40px 20px;
  display: inline-block;
}

/* FOOTER */
footer.footer {
  border:0;
  margin:0;
  padding: 35px 25px;
  background: #f7f7f7;
}
footer.footer #block-therace-footer {}
footer.footer #block-therace-footer ul.menu {}
footer.footer #block-therace-footer ul.menu li {}
footer.footer #block-therace-footer ul.menu li a {
  background: transparent;
  color: rgb(224,43,32);
}
footer.footer #block-therace-footer ul.menu li a:hover {
  background: transparent;
}

/* EU COOKIE COMPLIANCE */
.eu-cookie-compliance-message {margin: 10px 0 0;}
.eu-cookie-compliance-message h2 {margin: 0;}
.eu-cookie-compliance-buttons {margin:0;}

@media screen and (max-width: 992px) {
  html {font-size: 80%;}
  #block-hometop.slide .field--name-body #theraceVid {
    width: 300%;
  }
  #block-hometop.slide .field--name-body img.slideLogo {
    width: 160px;
  }
  #block-hometop.slide .field--name-body p.slideCap {
    margin-bottom:0;
  }
  #block-hometop.slide .field--name-body a.goToVid {
    position: relative;
    -webkit-border-radius: 5px;
    -webkit-border-top-left-radius: 0;
    -webkit-border-top-right-radius: 0;
    -moz-border-radius: 5px;
    -moz-border-radius-topleft: 0;
    -moz-border-radius-topright: 0;
    border-radius: 5px;
    border-top-left-radius: 0;
    border-top-right-radius: 0;
    border: 0;
    font-size: 0.8rem;
    padding: 8px 10px;
    line-height: 1;
    margin: 0 0 180px 45px;
    bottom:0;
    right:0;
  }
  #block-webform.stayUpdate {
    padding: 0 20px;
  }
  #block-webform.stayUpdate .webform-submission-stay-up-to-date--form {
    margin-top: -180px;
    padding: 25px 20px;
  }
  #block-about.about .field--name-body p {
    min-width: 220px;
  }
  #block-regatta.regatta .field--name-body .box1 h3 {
    font-size: 3rem;
  }
  #block-regatta.regatta .field--name-body .box2 h3 {
    font-size: 3rem;
  }
  #block-about.about {
    padding: 20px 40px;
  }
  #block-about.about h2.block-title {
    margin: 0 0 35px 0;
  }
  .eu-cookie-compliance-banner{padding: 5px 10px 15px 10px;}
}
