/* ---------------------------------------------
Table of contents
------------------------------------------------
01. font & reset css
02. reset
03. global styles
04. header
05. banner
06. features
07. testimonials
08. contact
09. footer
10. preloader
11. search
12. portfolio

--------------------------------------------- */
/* e30d13
---------------------------------------------
font & reset css
---------------------------------------------
*/
@font-face {
  font-family: 'AvertaSemi';
  font-style: normal;
  /*font-weight: normal;*/
  src: local("AvertaSemi"),
    url("../fonts/Averta-Semibold.ttf") format("truetype"),
    url("../fonts/Averta-Semibold.woff") format("woff"),
    url("../fonts/Averta-Semibold.otf") format("otf");
}

@font-face {
  font-family: 'Universal';
  font-style: normal;
  /*font-weight: normal;*/
  src: local("Universal"),
    url("../fonts/UniversLTStd.ttf") format("truetype"),
    url("../fonts/UniversLTStd.woff") format("woff"),
    url("../fonts/UniversLTStd.otf") format("otf");
}

@font-face {
  font-family: 'Averta';
  font-style: normal;
  /*font-weight: bold;*/
  src: local("Averta"),
    url("../fonts/Averta Black.ttf") format("truetype"),
    url("../fonts/Averta Black.woff") format("woff"),
    url("../fonts/Averta Black.otf") format("otf");
}

/*
---------------------------------------------
reset
--------------------------------------------- 
*/
html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
div pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
font,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
figure,
header,
nav,
section,
article,
aside,
footer,
figcaption {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
}

.clearfix:after {
  content: ".";
  display: block;
  clear: both;
  visibility: hidden;
  line-height: 0;
  height: 0;
}

.clearfix {
  display: inline-block;
}

html[xmlns] .clearfix {
  display: block;
}

* html .clearfix {
  height: 1%;
}

/*
ul, li {
  padding: 0;
  margin: 0;
  list-style: none;
}
*/
header,
nav,
section,
article,
aside,
footer,
hgroup {
  display: block;
}

* {
  box-sizing: border-box;
}

html,
body {
  font-family: 'Universal', sans-serif;
  font-weight: 400;
  background-color: #fff;
  color: #fff;
  font-size: 16px;
  -ms-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

.container-fluid {
  padding: 0 5%;
}

a {
  text-decoration: none !important;
  color: #000;
}

a:hover {
  text-decoration: none !important;
  color: #000;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  margin-top: 0px;
  margin-bottom: 0px;
}

ul {
  margin-bottom: 0px;
}

p {
  font-size: 1.1rem;
  /*line-height: 25px;*/
  color: #000;
}

/* 
---------------------------------------------
global styles
--------------------------------------------- 
*/
html,
body {
  /*background: #000;*/
  font-family: 'Universal', sans-serif;
}

::selection {
  background: #fff;
  color: #000;
}

::-moz-selection {
  background: #fff;
  color: #000;
}

@media (max-width: 991px) {

  html,
  body {
    overflow-x: hidden;
  }

  .mobile-top-fix {
    margin-top: 30px;
    margin-bottom: 0px;
  }

  .mobile-bottom-fix {
    margin-bottom: 30px;
  }

  .mobile-bottom-fix-big {
    margin-bottom: 60px;
  }

  .boton-largo {
    /* 1. Asegurar que el botón no crezca indefinidamente */
    display: inline-block;
    /* O block, dependiendo de tu layout */
    max-width: 100%;
    /* No superar el ancho del contenedor */
    box-sizing: border-box;
    /* Padding no afecta al ancho total */

    /* 2. Truncar el texto
    white-space: nowrap; */
    /* Evita que el texto salte de línea */
    overflow: hidden;
    /* Oculta el texto que sobra */
    text-overflow: ellipsis;
    /* Añade los puntos suspensivos (...) */

    /* 3. Estilos visuales para la forma */
    padding: 10px 20px;
    vertical-align: middle;
    text-decoration: none;
    background-color: #000000;
    border: solid 1px #000000;
    border-radius: 10px;
    /* Si es una etiqueta <a> */
  }

  .boton-largo a {
    color: #ffffff;
  }
}

.section-heading {
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
}

h3.section-heading {
  font-family: 'AvertaSemi', sans-serif;
  font-size: 3rem;
  text-align: center;
  margin-top: 40px;
  margin-bottom: 40px;
  color: #000000;
}

.section-heading h2 {
  font-family: 'Universal', sans-serif;
  font-size: 4em;
  font-weight: 900;
  /*font-weight: 200;*/
  color: #292828;
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-top: 0px;
  margin-bottom: 0px;
}

.section-heading h2 em {
  /*font-style: normal;*/
  color: #000;
}

.section-heading img {
  margin: 20px auto;
}

.dark-bg h2 {
  color: #fff;
}

.dark-bg p {
  color: #fff;
}

.main-button a {
  display: inline-block;
  font-family: 'AvertaSemi', sans-serif;
  font-size: 1.8em;
  padding: 12px 40px;
  background-color: #fff;
  border: 1px solid #292828;
  color: #292828;
  text-align: center;
  /*font-weight: 100;*/
  text-transform: uppercase;
  transition: all .3s;
  border-radius: 5px;
}

.main-button a:hover {
  background-color: #000;
  color: #fff;
  border: 1px solid #292828;
  text-decoration: none !important;
}


/* 
---------------------------------------------
header
--------------------------------------------- 
*/

.background-header {
  background: rgba(44, 44, 44, 0.7) !important;
  height: auto !important;
  position: fixed !important;
  top: 0px;
  left: 0px;
  right: 0px;
  box-shadow: 0px 0px 10px rgba(0, 0, 0, 0.15) !important;
}

.background-header .logo,
.background-header .main-nav .nav li a {
  color: #fff !important;
}

/*
.background-header .main-nav .nav li:last-child a {
  color: #fff !important;
}
*/
.background-header .main-nav .nav li:last-child a:hover {
  color: #fff !important;
}

.background-header .main-nav .nav li:hover a {
  color: #98886D !important;
}

.background-header .nav li a.active {
  color: #98886D !important;
}

.header-area {
  position: absolute;
  top: 0px;
  left: 0px;
  right: 0px;
  z-index: 100;
  height: auto;
  background: rgba(44, 44, 44, 0.6);
  -webkit-transition: all .5s ease 0s;
  -moz-transition: all .5s ease 0s;
  -o-transition: all .5s ease 0s;
  transition: all .5s ease 0s;
}

.header-area .main-nav {
  min-height: 80px;
  background: transparent;
}

.header-area .main-nav .logo {
  line-height: 80px;
  color: #fff;
  font-size: 32px;
  font-weight: 800;
  text-transform: uppercase;
  /*float: left;*/
  text-align: center;
  display: block;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
}

.header-area .main-nav .logo em {
  font-style: normal;
  color: #98886D;
  font-weight: 900;
}

.header-area .main-nav .nav {
  /*float: right;*/
  text-align: center;
  align-items: center;
  justify-content: center;
  margin-top: 27px;
  background-color: transparent;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  position: relative;
  z-index: 999;
}

.header-area .main-nav .nav li {
  font-family: 'AvertaSemi', sans-serif;
  padding-left: 10px;
  padding-right: 10px;
  margin-bottom: 10px;
}

.header-area .main-nav .nav li a {
  display: block;
  font-weight: 500;
  font-size: 1em;
  color: #ffffff;
  padding-left: 10px;
  padding-right: 10px;
  text-transform: uppercase;
  -webkit-transition: all 0.3s ease 0s;
  -moz-transition: all 0.3s ease 0s;
  -o-transition: all 0.3s ease 0s;
  transition: all 0.3s ease 0s;
  height: 40px;
  line-height: 40px;
  border: transparent;
  letter-spacing: 1px;
}

.header-area .main-nav .nav li a {
  color: #fff;
}

/*
.header-area .main-nav .nav li:last-child a {
  display: inline-block;
  font-size: 13px;
  padding: 11px 17px;
  background-color: #98886D;
  color: #fff;
  text-align: center;
  font-weight: 400;
  letter-spacing: 0px;
  text-transform: uppercase;
  transition: all .3s;
  height: auto;
  line-height: 20px;
}

.header-area .main-nav .nav li:last-child a:hover {
  background-color: #f9735b;
  opacity: 1;
}
*/
.header-area .main-nav .nav li:hover a,
.header-area .main-nav .nav li a.active {
  color: #fff !important;
  background-color: rgb(255, 255, 255, 0.3);
  padding-left: 10px;
  padding-right: 10px;
  border-radius: 10px;
}

.background-header .main-nav .nav li:hover a,
.background-header .main-nav .nav li a.active {
  color: #fff !important;
  opacity: 1;
}

.header-area .main-nav .menu-trigger {
  cursor: pointer;
  display: block;
  position: absolute;
  top: 23px;
  width: 32px;
  height: 40px;
  text-indent: -9999em;
  z-index: 99;
  right: 40px;
  display: none;
}

.header-area .main-nav .menu-trigger span,
.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #fff;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
}

.background-header .main-nav .menu-trigger span,
.background-header .main-nav .menu-trigger span:before,
.background-header .main-nav .menu-trigger span:after {
  background-color: #fff;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  -moz-transition: all 0.4s;
  -o-transition: all 0.4s;
  -webkit-transition: all 0.4s;
  transition: all 0.4s;
  background-color: #fff;
  display: block;
  position: absolute;
  width: 30px;
  height: 2px;
  left: 0;
  width: 75%;
}

.background-header .main-nav .menu-trigger span:before,
.background-header .main-nav .menu-trigger span:after {
  background-color: #fff;
}

.header-area .main-nav .menu-trigger span:before,
.header-area .main-nav .menu-trigger span:after {
  content: "";
}

.header-area .main-nav .menu-trigger span {
  top: 16px;
}

.header-area .main-nav .menu-trigger span:before {
  -moz-transform-origin: 33% 100%;
  -ms-transform-origin: 33% 100%;
  -webkit-transform-origin: 33% 100%;
  transform-origin: 33% 100%;
  top: -10px;
  z-index: 10;
}

.header-area .main-nav .menu-trigger span:after {
  -moz-transform-origin: 33% 0;
  -ms-transform-origin: 33% 0;
  -webkit-transform-origin: 33% 0;
  transform-origin: 33% 0;
  top: 10px;
}

.header-area .main-nav .menu-trigger.active span,
.header-area .main-nav .menu-trigger.active span:before,
.header-area .main-nav .menu-trigger.active span:after {
  background-color: #fff;
  width: 100%;
}

.header-area .main-nav .menu-trigger.active span:before {
  -moz-transform: translateY(6px) translateX(1px) rotate(45deg);
  -ms-transform: translateY(6px) translateX(1px) rotate(45deg);
  -webkit-transform: translateY(6px) translateX(1px) rotate(45deg);
  transform: translateY(6px) translateX(1px) rotate(45deg);
  background-color: rgba(44, 44, 44, 0.7);
}

.background-header .main-nav .menu-trigger.active span:before {
  background-color: rgba(44, 44, 44, 0.7);
}

.header-area .main-nav .menu-trigger.active span:after {
  -moz-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -ms-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  -webkit-transform: translateY(-6px) translateX(1px) rotate(-45deg);
  transform: translateY(-6px) translateX(1px) rotate(-45deg);
  background-color: rgba(44, 44, 44, 0.7);
}

.background-header .main-nav .menu-trigger.active span:after {
  background-color: rgba(44, 44, 44, 0.7);
}

.header-area.header-sticky {
  min-height: 80px;
}

.header-area.header-sticky .nav {
  margin-top: 2px !important;
}

.header-area.header-sticky .nav li a.active {
  color: #98886D;
}

@media (max-width: 1200px) {
  .header-area .main-nav .nav li {
    padding-left: 12px;
    padding-right: 12px;
  }

  .header-area .main-nav:before {
    display: none;
  }
}

@media (max-width: 1200px) {
  .header-area .main-nav .logo {
    color: #1e1e1e;
  }

  .header-area.header-sticky .nav li a:hover,
  .header-area.header-sticky .nav li a.active {
    color: #98886D !important;
    opacity: 1;
  }

  .header-area {
    background-color: rgba(44, 44, 44, 0.7);
    padding: 0px 3px;
    height: auto;
    box-shadow: none;
    text-align: center;
  }

  .header-area .container {
    padding: 0px;
  }

  .header-area .logo {
    margin-left: 30px;
  }

  .header-area .menu-trigger {
    display: block !important;
  }

  .header-area .main-nav {
    overflow: hidden;
  }

  .header-area .main-nav .nav {
    float: none;
    width: 100%;
    display: none;
    -webkit-transition: all 0s ease 0s;
    -moz-transition: all 0s ease 0s;
    -o-transition: all 0s ease 0s;
    transition: all 0s ease 0s;
    margin-left: 0px;
  }

  .header-area .main-nav .nav li:first-child {
    border-top: 1px solid #eee;
  }

  .header-area .main-nav .nav li:last-child {
    width: 100%;
    background-color: #fff;
    color: #232d39;
  }

  .header-area .main-nav .nav li:last-child a {
    background-color: ttransparent !important;
  }

  .header-area .main-nav .nav li:last-child a:hover,
  .header-area .main-nav .nav li:last-child:hover a {
    background-color: #eee !important;
    color: #232d39 !important;
  }

  .header-area.header-sticky .nav {
    margin-top: 80px !important;
  }

  .header-area .main-nav .nav li {
    width: 100%;
    background: #fff;
    border-bottom: 1px solid #eee;
    padding-left: 0px !important;
    padding-right: 0px !important;
  }

  .header-area .main-nav .nav li a {
    height: 50px !important;
    line-height: 50px !important;
    padding: 0px !important;
    border: none !important;
    background: #f7f7f7 !important;
    color: #232d39 !important;
  }

  .header-area .main-nav .nav li:last-child a {
    color: #232d39 !important;
  }

  .header-area .main-nav .nav li a:hover {
    background: #eee !important;
    color: #232d39 !important;
  }

  .header-area .main-nav .nav li.submenu ul {
    position: relative;
    visibility: inherit;
    opacity: 1;
    z-index: 1;
    transform: translateY(0%);
    transition-delay: 0s, 0s, 0.3s;
    top: 0px;
    width: 100%;
    box-shadow: none;
    height: 0px;
  }

  .header-area .main-nav .nav li.submenu ul li a {
    font-size: 12px;
    font-weight: 400;
  }

  .header-area .main-nav .nav li.submenu ul li a:hover:before {
    width: 0px;
  }

  .header-area .main-nav .nav li.submenu ul.active {
    height: auto !important;
  }

  .header-area .main-nav .nav li.submenu:after {
    color: #3B566E;
    right: 25px;
    font-size: 14px;
    top: 15px;
  }

  .header-area .main-nav .nav li.submenu:hover ul,
  .header-area .main-nav .nav li.submenu:focus ul {
    height: 0px;
  }

  .card-title {
    font-family: 'AvertaSemi', sans-serif;
    font-weight: 900;
    font-size: 2em !important;
    color: #ffffff;
  }

}

@media (min-width: 1200px) {
  .header-area .main-nav .nav {
    display: flex !important;
  }

  .d-xl-none {
    display: none !important;
  }

  .mtmenu {
    margin-top: 40px;
  }
}

@media (max-width:576px) {
  .d-xs-none {
    display: none !important
  }

  .boton-largo {
    /* 1. Asegurar que el botón no crezca indefinidamente */
    display: inline-block;
    /* O block, dependiendo de tu layout */
    max-width: 100%;
    /* No superar el ancho del contenedor */
    box-sizing: border-box;
    /* Padding no afecta al ancho total */

    /* 2. Truncar el texto
    white-space: nowrap; */
    /* Evita que el texto salte de línea */
    overflow: hidden;
    /* Oculta el texto que sobra */
    text-overflow: ellipsis;
    /* Añade los puntos suspensivos (...) */

    /* 3. Estilos visuales para la forma */
    padding: 10px 20px;
    vertical-align: middle;
    text-decoration: none;
    background-color: #000000;
    border: solid 1px #000000;
    border-radius: 10px;
    /* Si es una etiqueta <a> */
  }

  .boton-largo a {
    color: #ffffff;
  }
}

/* 
---------------------------------------------
banner
--------------------------------------------- 
*/

.main-banner {
  position: relative;
}

.fondo-portada {
  background-image: url('https://edreamsfactory.es/microsites/la-bicicleta-de-bartali/assets/images/La-Bicicleta-de-Bartali_Portada.jpg');
  background-color: #fff;
  background-repeat: no-repeat;
  background-position: center;
  background-attachment: fixed;
  background-size: cover;
  display: block;
  width: 100%;
  height: 100vh;
  min-width: 100%;
  min-height: 100vh;
  max-width: 100%;
  max-height: 100vh;
  z-index: -1;
}

#bg-video2 {
  display: none;
}


.fondo-portada-overlay {
  position: absolute;
  background-color: rgba(35, 45, 57, 0.4);
  top: 0;
  left: 0;
  bottom: 7px;
  width: 100%;
  height: 100vh;
}

.main-banner .caption {
  text-align: center;
  position: absolute;
  width: 80%;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
}

.main-banner .caption h6 {
  margin-top: 0px;
  font-size: 18px;
  text-transform: uppercase;
  font-weight: 800;
  color: #fff;
  letter-spacing: 0.5px;
}

.main-banner .caption h2 {
  margin-top: 30px;
  margin-bottom: 25px;
  font-size: 84px;
  text-transform: uppercase;
  font-weight: 800;
  color: #fff;
  letter-spacing: 1px;
}

.main-banner .caption h2 em {
  font-style: normal;
  color: #98886D;
  font-weight: 900;
}

.main-banner .caption img {
  text-align: center;
}

/*
---------------------------------------------
features
---------------------------------------------
*/

#sinopsis-trailer {
  margin-bottom: 80px;
  padding-top: 140px;
  user-select: text;
  -moz-user-select: text;
  -webkit-user-select: text;
}

.feature-item {
  display: inline-block;
  margin-bottom: 60px;
}

.feature-item .left-icon img {
  float: left;
  margin-right: 30px;
}

.feature-item .right-content {
  display: inline;
}

.feature-item .right-content h4 {
  margin-top: 0px;
  margin-bottom: 7px;
  letter-spacing: 0.25px;
  color: #232d39;
  font-size: 19px;
  font-weight: 600;
  text-transform: capitalize;
}

.feature-item .right-content a.text-button {
  margin-top: 7px;
  display: inline-block;
  font-size: 13px;
  text-transform: uppercase;
  color: #98886D;
  font-weight: 500;
}

/*
---------------------------------------------
subscribe
---------------------------------------------
*/

#call-to-action {
  padding: 120px 0px;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  text-align: center;
  display: none;
}

.cta-content h2 {
  font-size: 36px;
  text-transform: uppercase;
  font-weight: 800;
  color: #fff;
  letter-spacing: 1px;
}

.cta-content h2 em {
  font-style: normal;
  color: #98886D;
}

.cta-content p {
  font-size: 16px;
  color: #fff;
  margin: 15px 0px 25px 0px;
}



/*
--------------------------------------------
Our Classes
--------------------------------------------
*/

#ficha-tecnica {
  margin-bottom: 80px;
  padding-top: 140px;
}

/*.fondoseccion{
  background-image: url(../images/fondo-seccion.jpg);
}*/
#tabs ul {
  margin: 0;
  padding: 0;
}

#tabs ul li {
  margin-bottom: 30px;
  display: inline-block;
  width: 100%;
}

#tabs ul li:last-child {
  margin-bottom: 0px;
}

#tabs ul li a {
  text-transform: capitalize;
  width: 100%;
  padding: 30px 30px;
  display: inline-block;
  background-color: #fff;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  border-radius: 5px;
  font-size: 19px;
  color: #232d39;
  letter-spacing: 0.5px;
  font-weight: 600;
  transition: all 0.3s;
}

#tabs .main-rounded-button a {
  text-align: center;
  padding: 20px 30px;
  width: 100%;
  border-radius: 5px;
  display: inline-block;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  color: #fff;
  font-size: 19px;
  letter-spacing: 0.5px;
  font-weight: 600;
  background-color: #98886D;
}

#tabs .main-rounded-button a:hover {
  background-color: #f9735b;
}

#tabs ul li a img {
  max-width: 100%;
  margin-right: 20px;
}

#tabs ul .ui-tabs-active span {
  background: #faf5b2;
  border: #faf5b2;
  line-height: 90px;
  border-bottom: none;
}

#tabs ul .ui-tabs-active a {
  color: #98886D;
}

#tabs ul .ui-tabs-active span {
  color: #1e1e1e;
}

.tabs-content {
  margin-left: 30px;
  text-align: left;
  display: inline-block;
  transition: all 0.3s;
}

.tabs-content img {
  max-width: 100%;
  overflow: hidden;
  border-radius: 5px;
}

.tabs-content h4 {
  font-size: 23px;
  font-weight: 700;
  color: #232d39;
  letter-spacing: 0.5px;
  margin-bottom: 20px;
  margin-top: 30px;
}

.tabs-content p {
  font-size: 14px;
  color: #7a7a7a;
  margin-bottom: 28px;
}

#material-promocional {
  margin-bottom: 80px;
  padding-top: 140px;
}

/* ==================================================
  Cines
================================================== */
#cines {
  overflow: auto;
  margin-bottom: 80px;
  padding-top: 140px;
}

.kimber {
  color: #000000;
}

/*
#filters {
        margin:1%;
        padding:0;
        list-style:none;
}

#filters li {
		float:left;
}

#filters li span {
		display: block;
		padding:5px 20px;               
		text-decoration:none;
		color:#666;
		cursor: pointer;
}

#filters li span.active {
		background: #8fbdd0;
		color:#fff;
}
#filters li span:hover {
    background: #8fbdd0;
    color: #fff;
}
#filters li span:active {
    background: #8fbdd0;
    color: #fff;
}
*/

div.sala {
  display: inline-block;
  vertical-align: top;
  text-align: left;
  min-height: 190px !important;
  margin-bottom: 40px !important;
  width: 33% !important;
}

#cinelist {
  margin-left: 1px;
  margin-right: 1px;
  padding-left: 1px;
  padding-right: 1px;
}

#cinelist>div {
  margin-bottom: 10px;
  min-height: 100px;
}

#cinelist>div>h6 {
  font-style: bold !important;
  color: #000;
}

#cinelist>div>h4 {
  font-family: 'Averta', sans-serif;
  color: #292828;
}

#cinelist>div>p {
  margin-top: 10px;
  color: #000;
}

/*#cinelist > div > p > i {
  color: #ffffff;
}*/
#cinelist>div>p.comentario {
  font-style: normal;
  color: #000;
  padding-bottom: 10px;
}

p.comprar {
  margin-top: 10px;
}

p.comprar a {
  color: #ffffff;
  background-color: #000000;
  border: solid 1px #000000;
  border-radius: 10px;
  padding: 10px;
}

p.comprar a:hover {
  color: #000000;
  background-color: #ffffff;
  border: solid 1px #000000;
  border-radius: 10px;
  padding: 10px;
}

#cinelist>div>p.comprar {
  margin-top: 10px;
}

#cinelist>div>p.comprar a {
  color: #fff;
  background-color: #000;
  border: solid 1px #000;
  border-radius: 10px;
  padding: 10px;
}

#cinelist>div>p.comprar a:hover {
  color: #000;
  background-color: #fff;
  border: solid 1px #000;
  border-radius: 10px;
  padding: 10px;
}

#cinelist>div.sala {
  min-height: 190px !important;
  margin-bottom: 40px !important;
  width: 33% !important;
}

#cinelist>div.sala h6 {
  color: #000;
}

section>div>p.comprar {
  margin-top: 10px;
}

#cinelist>div>p a[itemprop="url"] {
  font-weight: bold;
}

/*
#cinelist ul > li {
        margin:1%;
        padding:0;
        list-style:square;
}
#cinelist ul > li > ul > li {
        margin:1%;
        padding:0;
        list-style:circle;
}
*/

/* 
---------------------------------------------
#solicitud
--------------------------------------------- 
*/

#solicitud {
  margin-bottom: 80px;
  padding-top: 140px;
  /*background-image: url(../images/schedule-bg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;*/
}

#solicitud table {
  width: 100%;
  text-align: center;
  border: 1px solid #fff;
}

#solicitud table tbody {
  border-top: 1px solid #fff;
}

#solicitud table tbody tr {
  border-bottom: 1px solid #fff;
}

#solicitud table tbody tr td {
  border-right: 1px solid #fff;
  height: 100px;
}

#solicitud table tr td {
  color: #fff;
  font-size: 13px;
  text-transform: capitalize;
  font-weight: 500;
  letter-spacing: 0.25px;
}

.schedule-table.filtering .ts-item {
  opacity: 0;
  transition: all 0.5s;
}

.schedule-table.filtering .ts-item.show {
  opacity: 1;
  transition: all 0.5s;
}

#solicitud .filters {
  margin-bottom: 40px;
}

#solicitud .filters ul {
  padding: 0;
  text-align: center;
}

#solicitud .filters ul li {
  list-style: none;
  display: inline;
  cursor: pointer;
  position: relative;
  margin-right: 10px;
  font-size: 15px;
  font-weight: 500;
  color: #fff;
  text-transform: capitalize;
  -webkit-transition: all 0.3s ease-in-out;
  -moz-transition: all 0.3s ease-in-out;
  -o-transition: all 0.3s ease-in-out;
  -ms-transition: all 0.3s ease-in-out;
  transition: all 0.3s ease-in-out;
}

#solicitud .filters ul li:after {
  content: "/";
  margin-left: 10px;
  color: #fff;
}

#solicitud .filters ul li:last-child {
  margin-right: 0px;
}

#solicitud .filters ul li:last-child::after {
  display: none;
}

#solicitud .filters ul li.active,
#solicitud .filters ul li:hover {
  color: #98886D;
}

#solicitud .filters-content {
  margin-top: 50px;
}

#solicitud .filters-content .show {
  opacity: 1;
  visibility: visible;
  transition: all 350ms;
}

#solicitud .filters-content .hide {
  opacity: 0;
  visibility: hidden;
  transition: all 350ms;
}


/* 
---------------------------------------------
trainers
--------------------------------------------- 
*/

#trainers .trainer-item {
  background-color: #fff;
  border-radius: 5px;
  box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
  padding: 40px;
}

#trainers .trainer-item img {
  width: 100%;
  border-radius: 5px;
}

#trainers .trainer-item span {
  font-size: 13px;
  font-weight: 500;
  color: #98886D;
  display: inline-block;
  margin-top: 25px;
  margin-bottom: 10px;
}

#trainers .trainer-item h4 {
  font-size: 19px;
  font-weight: 600;
  color: #232d39;
  letter-spacing: 0.5px;
  margin-bottom: 18px;
}

#trainers .trainer-item p {
  margin-bottom: 20px;
}

#trainers .trainer-item ul.social-icons li {
  display: inline-block;
  margin-right: 12px;
}

#trainers .trainer-item ul.social-icons li:last-child {
  margin-right: 0px;
}

#trainers .trainer-item ul.social-icons li a {
  color: #232d39;
  transition: all .3s;
}

#trainers .trainer-item ul.social-icons li a:hover {
  color: #98886D;
}


/* 
---------------------------------------------
contact
--------------------------------------------- 
*/

/*#contacto .container-fluid .col-lg-6 {
  padding: 0px;
}*/

#contacto {
  margin-bottom: 80px;
  padding-top: 140px;
  /*background-image: url(../images/contact-bg.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;*/
}

#contacto .contact-form #contact {
  background-color: #fff;
  padding: 40px;
  border-radius: 5px;
}

.contact-form input,
.contact-form textarea {
  color: #7a7a7a;
  font-size: 13px;
  border: 1px solid #ddd;
  background-color: #fff;
  width: 100%;
  height: 40px;
  outline: none;
  line-height: 40px;
  padding: 0px 10px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  margin-bottom: 30px;
}

.contact-form textarea {
  height: 150px;
  resize: none;
}

.contact-form ::-webkit-input-placeholder {
  /* Edge */
  color: #7a7a7a;
}

.contact-form :-ms-input-placeholder {
  /* Internet Explorer 10-11 */
  color: #7a7a7a;
}

.contact-form ::placeholder {
  color: #7a7a7a;
}

.contact-form button {
  display: inline-block;
  font-size: 13px;
  padding: 11px 17px;
  background-color: #98886D;
  color: #fff;
  text-align: center;
  font-weight: 400;
  text-transform: uppercase;
  transition: all .3s;
  border: none;
  outline: none;
  margin-top: -8px;
}

.contact-form button:hover {
  background-color: transparent;
}




/* 
---------------------------------------------
footer
--------------------------------------------- 
*/
footer {
  text-align: center;
  padding: 30px 0px;
}

footer p {
  color: #000;
  font-size: 13px;
}

footer p a {
  cursor: pointer;
  color: #000;
}

footer p a:hover {
  color: #000;
}



/* 
---------------------------------------------
preloader
--------------------------------------------- 
*/

.js-preloader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: #232d39;
  display: -webkit-box;
  display: flex;
  -webkit-box-align: center;
  align-items: center;
  -webkit-box-pack: center;
  justify-content: center;
  opacity: 1;
  visibility: visible;
  z-index: 9999;
  -webkit-transition: opacity 0.25s ease;
  transition: opacity 0.25s ease;
}

.js-preloader.loaded {
  opacity: 0;
  visibility: hidden;
  pointer-events: auto;
}

@-webkit-keyframes dot {
  50% {
    -webkit-transform: translateX(96px);
    transform: translateX(96px);
  }
}

@keyframes dot {
  50% {
    -webkit-transform: translateX(96px);
    transform: translateX(96px);
  }
}

@-webkit-keyframes dots {
  50% {
    -webkit-transform: translateX(-31px);
    transform: translateX(-31px);
  }
}

@keyframes dots {
  50% {
    -webkit-transform: translateX(-31px);
    transform: translateX(-31px);
  }
}

.preloader-inner {
  position: relative;
  width: 142px;
  height: 40px;
  background: #232d39;
}

.preloader-inner .dot {
  position: absolute;
  width: 16px;
  height: 16px;
  top: 12px;
  left: 15px;
  background: #fff;
  border-radius: 50%;
  -webkit-transform: translateX(0);
  transform: translateX(0);
  -webkit-animation: dot 2.8s infinite;
  animation: dot 2.8s infinite;
}

.preloader-inner .dots {
  -webkit-transform: translateX(0);
  transform: translateX(0);
  margin-top: 12px;
  margin-left: 31px;
  -webkit-animation: dots 2.8s infinite;
  animation: dots 2.8s infinite;
}

.preloader-inner .dots span {
  display: block;
  float: left;
  width: 16px;
  height: 16px;
  margin-left: 16px;
  background: #fff;
  border-radius: 50%;
}


/* 
---------------------------------------------
responsive
--------------------------------------------- 
*/


@media (max-width: 992px) {

  .main-banner .caption h2 {
    font-size: 64px;
  }

  #sinopsis-trailer {
    margin-bottom: 110px;
  }

  #sinopsis-trailer .feature-item {
    margin-bottom: 30px;
  }

  #ficha-tecnica .tabs-content {
    margin-left: 0px;
    margin-top: 30px;
  }

  .trainer-item {
    margin-bottom: 30px;
  }

  #contacto #map {
    margin-bottom: -7px;
  }

  /*#contacto .contact-form {
    padding: 30px;
  }
  #contacto .contact-form #contact {
    padding: 30px;
  }*/
  .header-area .main-nav .logo {
    float: left !important;
  }

}

@media screen and (max-device-width : 480px) {
  .fondo-portada {
    background-image: url('https://edreamsfactory.es/microsites/la-bicicleta-de-bartali/assets/images/ERDP_Poster.jpg');
    background-color: #ffffff;
    color: #000;
    background-repeat: no-repeat;
    background-position: center;
    background-attachment: fixed;
    background-size: cover;
    display: block;
    width: 480px;
    height: auto;
    z-index: -1;
  }

  .section-heading h2 {
    font-size: 3.0em;
  }

  .main-button a {
    font-size: 1.25em;
  }

  .header-area .main-nav .logo {
    float: left !important;
    margin-left: 2px !important;
  }

  .header-area .main-nav .menu-trigger {
    float: right !important;
    margin-right: -10px !important;
  }

  .boton-largo {
    /* 1. Asegurar que el botón no crezca indefinidamente */
    display: inline-block;
    /* O block, dependiendo de tu layout */
    max-width: 100%;
    /* No superar el ancho del contenedor */
    box-sizing: border-box;
    /* Padding no afecta al ancho total */

    /* 2. Truncar el texto
    white-space: nowrap; */
    /* Evita que el texto salte de línea */
    overflow: hidden;
    /* Oculta el texto que sobra */
    text-overflow: ellipsis;
    /* Añade los puntos suspensivos (...) */

    /* 3. Estilos visuales para la forma */
    padding: 10px 20px;
    vertical-align: middle;
    text-decoration: none;
    background-color: #000000;
    border: solid 1px #000000;
    border-radius: 10px;
    /* Si es una etiqueta <a> */
  }

  .boton-largo a {
    color: #ffffff;
  }
}

.laficha {
  /*font-family: 'Universal', sans-serif !important;*/
  font-weight: 500 !important;
  font-size: 2em !important;
  color: #000 !important;
}

@media (max-width: 480px) {
  .feature-item .right-content a.text-button {
    margin-left: 130px;
  }

  #bg-video2 {
    display: block !important;
    min-width: 100%;
    min-height: 100vh;
    max-width: 100%;
    max-height: 100vh;
    object-fit: cover;
    z-index: -1;
  }

  #bg-video1 {
    display: none;
  }

  .header-area .main-nav .logo {
    float: left !important;
  }

  .card-title {
    font-size: 1.8em;
  }

  .laficha {
    font-size: 1.8em;
  }
}

.cineConValores {
  font-family: 'Averta';
}

.textBlanco {
  color: #ffffff !important;
}

.form-check-label {
  color: #000 !important;
}

.fondoVerde {
  background-color: #98886D;
  border-radius: 10px;
  padding: 10px;
}

.Verde {
  color: #98886D !important;
}

.mb-40 {
  margin-bottom: 40px;
}

.mb-120 {
  margin-bottom: 120px;
}

.mb-60 {
  margin-bottom: 60px;
}

.mb-20 {
  margin-bottom: 20px;
}

.mb-19px {
  margin-bottom: 25px;
}

.mt-40 {
  margin-top: 40px;
}

.mt-20 {
  margin-top: 20px;
}

.pr-3xcien {
  padding-right: 3%;
}

.table td.titular {
  width: 300px !important;
  padding: 0.15rem;
}

td.titular p {
  font-weight: 700;
  color: #000000;
}

.card {
  background-color: transparent !important;
}

.texto-oscuro p {
  color: #000;
}

h5.modal-title {
  color: #000;
}

.site-footer ul li {
  font-size: 14px;
}

.columIgual {
  min-height: 600px !important;
}

[type=button]:not(:disabled),
[type=reset]:not(:disabled),
[type=submit]:not(:disabled),
button:not(:disabled) {
  cursor: pointer;
  display: inline-block;
  font-family: 'Universal', sans-serif;
  font-size: 15px;
  padding: 12px 20px;
  background-color: #4d4c4c;
  border: 1px solid #4d4c4c;
  color: #fff;
  text-align: center;
  font-weight: 400;
  text-transform: uppercase;
  transition: all .3s;
}

[type=button]:not(:disabled):hover,
[type=reset]:not(:disabled):hover,
[type=submit]:not(:disabled):hover,
button:not(:disabled):hover {
  cursor: pointer;
  background-color: #3e3b3e;
  color: #fff;
  border: 1px solid #fff;
  text-decoration: none !important;
}

.ppopup {
  color: #333;
}

.custom-btn {
  display: inline-block;
  font-size: 1.5rem;
  padding: 12px 20px;
  background-color: #98886D;
  border: 1px solid #98886D;
  color: #fff;
  text-align: center;
  font-weight: 400;
  text-transform: uppercase;
  transition: all .3s;
}

.custom-btn:hover {
  background-color: transparent;
  color: #fff;
  border: 1px solid #98886D;
  text-decoration: none !important;
}

.ml-1rem {
  margin-left: 1rem !important;
}

.ml-02rem {
  margin-left: 0.2rem !important;
}

.premios {
  display: flex;
  justify-content: center;
}

.lista-centrada {
  text-align: left;
  list-style-type: square;
}

.textoNegro {
  color: #000000 !important;
}

.textoBlanco {
  color: #fff !important;
}

.textoNegrita {
  font-weight: 900;
}

a.clickLegal {
  color: #000 !important;
}

.TitFicha {
  font-weight: 800;
  padding-right: 20px;
}

.vtop {
  vertical-align: top !important;
}

.floatLeft {
  float: left !important;
}

.reborde {
  border: 1px solid #3e3b3e;
}

.myBtnWhatsapp1 {
  position: fixed;
  /* Fixed/sticky position */
  bottom: 48px;
  /* Place the button at the bottom of the page */
  right: 20px;
  /* Place the button 30px from the left */
  z-index: 1000;
  /* Make sure it does not overlap */
  border: none;
  /* Remove borders */
  outline: none;
  /* Remove outline */
  background-color: transparent;
  /* Set a background color */
  color: #0dc152;
  /* Text color */
  cursor: pointer;
  /* Add a mouse pointer on hover */
  /*padding: 15px; /* Some padding */
  border-radius: 100px;
  /* Rounded corners */
  font-size: 3em;
  /* Increase font size */
}

.boton-largo {
  /* 1. Asegurar que el botón no crezca indefinidamente */
  display: inline-block;
  /* O block, dependiendo de tu layout */
  max-width: 100%;
  /* No superar el ancho del contenedor */
  box-sizing: border-box;
  /* Padding no afecta al ancho total */

  /* 2. Truncar el texto
  white-space: nowrap; */
  /* Evita que el texto salte de línea */
  overflow: hidden;
  /* Oculta el texto que sobra */
  text-overflow: ellipsis;
  /* Añade los puntos suspensivos (...) */

  /* 3. Estilos visuales para la forma */
  padding: 10px 20px;
  vertical-align: middle;
  text-decoration: none;
  background-color: #000000;
  border: solid 1px #000000;
  border-radius: 10px;
  /* Si es una etiqueta <a> */
}

.boton-largo a {
  color: #ffffff;
}