@font-face {
    font-family: "Dantina";
    src: url("../fonts/dantina-webfont.woff2") format("woff2"),
         url("../fonts/dantina-webfont.woff") format("woff"),
         url("../fonts/dantina-webfont.ttf") format("truetype");
    font-weight: normal;
    font-style: normal;
    font-display: swap;
}

/* especial */
.texto-especial {font-family: "Dantina", sans-serif; line-height: 3.10 }

/* Base */
html {
  overflow-x: hidden; }

body {
  line-height: 1.3;
  color: #000;
  font-weight: 300;
  font-size: 1.25rem; }

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

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

a {
  -webkit-transition: .3s all ease;
  -o-transition: .3s all ease;
  transition: .3s all ease; }
  a:hover {
    text-decoration: none; }

h1, h2, h3, h4, h5,
.h1, .h2, .h3, .h4, .h5 {
  font-family: 'Josefin Sans', sans-serif; }

.logoamo-xl {
     max-height: 25vh;
}
  @media (max-width: 768px) {
.logoamo-xl {
  max-height: 18vh; } }

/* Logo del menú: SVG incrustado en el HTML; toma el color del texto (blanco
   sobre la portada, granate con el menú fijo) mediante fill="currentColor" */
.logoamo-img a {
  display: inline-block;
  width: 140px;
  height: 35.35px;
  line-height: 0;
  transition: color .3s ease;
}
.logoamo-img a svg {
  display: block;
  width: 100%;
  height: 100%;
}

.text-black {
  color: #000 !important; }

.text-white {
  color: #FFF !important; }

.bg-black-50 {
  background: #333333 }

.bg-arena-light {
  background: #fbf9f5; }

.bg-dorado-light {
  background: #9f9173 }

body:after {
  -webkit-transition: .3s all ease-in-out;
  -o-transition: .3s all ease-in-out;
  transition: .3s all ease-in-out; }

.offcanvas-menu {
  position: relative; }
  .offcanvas-menu:after {
    position: absolute;
    content: "";
    bottom: 0;
    left: 0;
    top: 0;
    right: 0;
    z-index: 999;
    background: rgba(0, 0, 0, 0.2); }

  .btn:hover, .btn:active, .btn:focus {
    outline: none;
    -webkit-box-shadow: none !important;
    box-shadow: none !important; }
  .btn.btn-primary {
    background: #8f1c22;
	border: 1.5px solid #8f1c22;
    color: #fff; }
    .btn.btn-primary:hover {
      background: transparent;
	  border: 1.5px solid #8f1c22;
      color: #8f1c22; }

.form-control {
  height: 43px;
  border-radius: 30px;
  font-family: "Josefin Sans", sans-serif; }
  .form-control:active, .form-control:focus {
    border-color: #8f1c22; }
  .form-control:hover, .form-control:active, .form-control:focus {
    -webkit-box-shadow: none !important;
    box-shadow: none !important; }

.site-section {
  padding: 2.5em 0; }
  @media (min-width: 768px) {
    .site-section {
      padding: 4em 0; } }

.hero-text {
  font-family: "Dantina", sans-serif;
  line-height: 3.10;
  color: white;
	font-size: 1.3rem;
	font-weight: 100;
}

.site-footer {
  padding: 3em 0;
  background: #333333; }
  @media (min-width: 768px) {
    .site-footer {
      padding: 7em 0; } }
  .site-footer .border-top {
    border-top: 1px solid rgba(255, 255, 255, 0.1) !important; }
  .site-footer p {
    color: #737373; }
  .site-footer h2, .site-footer h3, .site-footer h4, .site-footer h5 {
    color: #fff; }
  .site-footer a {
    color: #999999; }
    .site-footer a:hover {
      color: white; }
  .site-footer ul li {
    margin-bottom: 10px; }
  .site-footer .footer-heading {
    font-size: 16px;
    color: #fff; }

.index-inicio { 
  background-color:#6e3538;
  background-position:20% 20% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .index-inicio {
        background-image: url(../images/hero_inicio-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .index-inicio {
        background-image: url(../images/hero_inicio-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .index-inicio {
	    background-image: url(../images/hero_inicio.jpg);
   }
}

.hero_contacto-1 { 
  background-color:#6e3538;
  background-position:20% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
  background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/hero_contacto_3.jpg);
}
.hero_contacto-2 { 
  background-color:#6e3538;
  background-position:30% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
  background-image: linear-gradient(rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0.5)), url(../images/hero_contacto_4.jpg);
}

.hero_contacto-5 { 
  background-color:#6e3538;
  background-position:90% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
  background-image: linear-gradient(rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.4)), url(../images/hero_contacto_2.jpg);
}

.hero_fotos { 
  background-color:#6e3538;
  background-position:48% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  height: 100vh
}
@media (max-width: 480px) {
    .hero_fotos {
        background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.5)), url(../porfolio/img/header-porfolio-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .hero_fotos {
        background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.5)), url(../porfolio/img/header-porfolio-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .hero_fotos {
	    background-position:70% 20%;
		background-image: linear-gradient(rgba(0, 0, 0, 0.1), rgba(0, 0, 0, 0.5)), url(../porfolio/img/header-porfolio.jpg);
   }
}

.h-e-session { 
  background-color:#6e3538;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-e-session  {
        background-position:50% 50% !important;
		background-image: url(../bodas/img/hero_essesion-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-e-session  {
        background-position:70% 30% !important;
		background-image: url(../bodas/img/hero_essesion-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .h-e-session {
	    background-position:70% 30% !important;
		background-image: url(../bodas/img/hero_essesion.jpg);
   }
}
.h-ceremonia { 
  background-color:#6e3538;
  background-position:50% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-ceremonia  {
        background-image: url(../bodas/img/hero_ceremonia-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-ceremonia  {
        background-image: url(../bodas/img/hero_ceremonia-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .h-ceremonia {
	    background-image: url(../bodas/img/hero_ceremonia.jpg);
   }
}
.h-trash { 
  background-color:#6e3538;
  background-position:50% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-trash  {
        background-image: url(../bodas/img/hero_trash-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-trash {
        background-image: url(../bodas/img/hero_trash-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .h-trash {
	    background-image: url(../bodas/img/hero_trash.jpg);
   }
}

.h-15-contacto { 
  background-color:#6e3538;
  background-position:50% 50% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-15-contacto  {
        background-image:linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url(../mis15/img/hero_inicio-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-15-contacto {
        background-image:linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url(../mis15/img/hero_inicio-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .h-15-contacto {
	    background-image:linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.5)), url(../mis15/img/hero_inicio.jpg);
   }
}

.h-15-book { 
  background-color:#6e3538;
  background-position:50% 40% !important;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-15-book  {
        background-image: url(../mis15/img/book-mobile.jpg);
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-15-book {
        background-image: url(../mis15/img/book-tablet.jpg);
    }
}	
@media (min-width: 1025px) {
    .h-15-book {
	    background-image: url(../mis15/img/book.jpg);
   }
}
.h-15-fiesta { 
  background-color:#6e3538;
  background-repeat:no-repeat;
  background-size:cover;
  position:relative;
}
@media (max-width: 480px) {
    .h-15-fiesta  {
        background-image: url(../mis15/img/fiesta-mobile.jpg);
		background-position:50% 90% !important;
    }
}
@media (min-width: 481px) and (max-width: 1024px) {
    .h-15-fiesta {
        background-image: url(../mis15/img/fiesta-tablet.jpg);
		background-position:50% 40% !important;
    }
}	
@media (min-width: 1025px) {
    .h-15-fiesta {
	    background-image: url(../mis15/img/fiesta.jpg);
		background-position:50% 25% !important;
   }
}

@media (max-width: 991.98px) {
  .display-3 {
    font-size: 3rem; } }

/* Navbar */
.site-navbar {
  margin-bottom: 0px;
  z-index: 1999;
  position: absolute;
  top: 0;
  width: 100%;
  border-bottom: rgba(255, 255, 255, 0.0); }
  .site-navbar .site-logo {
    position: relative;
    left: 0;
    top: 3px; }
  .site-navbar .site-navigation .site-menu {
    margin-bottom: 0;
     font-size: 14px;
	 text-transform:uppercase;
	 font-weight: 500;}
    .site-navbar .site-navigation .site-menu .active {
      color: #8f1c22;
      display: inline-block;
      padding: 5px 12px; }
    .site-navbar .site-navigation .site-menu a {
      text-decoration: none !important;
      display: inline-block; }
    .site-navbar .site-navigation .site-menu > li {
      display: inline-block; }
      .site-navbar .site-navigation .site-menu > li > a {
        padding: 5px 12px;
        color: #000;
        display: inline-block;
        text-decoration: none !important; }
        .site-navbar .site-navigation .site-menu > li > a:hover {
          color: #8f1c22; }
    .site-navbar .site-navigation .site-menu .has-children {
      position: relative; }
      .site-navbar .site-navigation .site-menu .has-children > a {
        position: relative;
        padding-right: 20px; }
        .site-navbar .site-navigation .site-menu .has-children > a:before {
          position: absolute;
          content: "\e313";
          font-size: 16px;
          top: 50%;
          right: 0;
          -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
          transform: translateY(-50%);
          font-family: 'icomoon'; }
      .site-navbar .site-navigation .site-menu .has-children .dropdown {
        visibility: hidden;
        opacity: 0;
        top: 100%;
		text-transform: none !important;
		  font-size: 17px !important;
		  font-weight: 400 !important;
        position: absolute;
        text-align: left;
        border-top: 2px solid #8f1c22;
        -webkit-box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.4);
        box-shadow: 0 2px 10px -2px rgba(0, 0, 0, 0.4);
        padding: 0px 0;
        margin-top: 20px;
        margin-right: 0px;
        background: #fff;
        -webkit-transition: 0.2s 0s;
        -o-transition: 0.2s 0s;
        transition: 0.2s 0s; }

        .site-navbar .site-navigation .site-menu .has-children .dropdown a {
          text-transform: none;
          letter-spacing: normal;
          -webkit-transition: 0s all;
          -o-transition: 0s all;
          transition: 0s all;
          color: #000; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown .active {
          color: #8f1c22 !important; }
        .site-navbar .site-navigation .site-menu .has-children .dropdown > li {
          list-style: none;
          padding: 0;
          margin: 0;
          min-width: 210px; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li > a {
            padding: 9px 20px;
            display: block; }
            .site-navbar .site-navigation .site-menu .has-children .dropdown > li > a:hover {
              background: #D1D1D1;
              color: #000; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > a:before {
            content: "\e315";
            right: 20px; }
          .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > .dropdown, .site-navbar .site-navigation .site-menu .has-children .dropdown > li.has-children > ul {
            left: -100%;
            top: 0; }
      .site-navbar .site-navigation .site-menu .has-children:hover > a, .site-navbar .site-navigation .site-menu .has-children:focus > a, .site-navbar .site-navigation .site-menu .has-children:active > a {
        color: #8f1c22; }
      .site-navbar .site-navigation .site-menu .has-children:hover, .site-navbar .site-navigation .site-menu .has-children:focus, .site-navbar .site-navigation .site-menu .has-children:active {
        cursor: pointer; }
        .site-navbar .site-navigation .site-menu .has-children:hover > .dropdown, .site-navbar .site-navigation .site-menu .has-children:focus > .dropdown, .site-navbar .site-navigation .site-menu .has-children:active > .dropdown {
          -webkit-transition-delay: 0s;
          -o-transition-delay: 0s;
          transition-delay: 0s;
          margin-top: 0px;
          visibility: visible;
          opacity: 1; }

.site-mobile-menu {
  width: 300px;
  position: fixed;
  right: 0;
  z-index: 2000;
  padding-top: 15px;
  background: rgba(255,255,255,.95);
  height: calc(100vh);
  -webkit-transform: translateX(110%);
  -ms-transform: translateX(110%);
  transform: translateX(110%);
  -webkit-box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
  box-shadow: -10px 0 20px -10px rgba(0, 0, 0, 0.1);
  -webkit-transition: .3s all ease-in-out;
  -o-transition: .3s all ease-in-out;
  transition: .3s all ease-in-out; }
  .offcanvas-menu .site-mobile-menu {
    -webkit-transform: translateX(0%);
    -ms-transform: translateX(0%);
    transform: translateX(0%); }
  .site-mobile-menu .site-mobile-menu-header {
    width: 100%;
    float: left;
    padding-left: 20px;
    padding-right: 20px; }
    .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close {
      float: right;
      margin-top: 8px; }
      .site-mobile-menu .site-mobile-menu-header .site-mobile-menu-close span {
        font-size: 30px;
        display: inline-block;
        padding-left: 10px;
        padding-right: 0px;
        line-height: 1;
        cursor: pointer;
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }

  .site-mobile-menu .site-mobile-menu-body {
    overflow-y: scroll;
    -webkit-overflow-scrolling: touch;
    position: relative;
    padding: 0 20px 20px 20px;
    height: calc(100vh - 72px);
    padding-bottom: 150px; }
  .site-mobile-menu .site-nav-wrap {
    padding: 0;
    margin: 0;
    list-style: none;
    position: relative; }
    .site-mobile-menu .site-nav-wrap a {
      padding: 5px 10px;
      display: block;
	  font-weight: 500;
      position: relative;
      color: #212529; }
      .site-mobile-menu .site-nav-wrap a:hover {
        color: #8f1c22; }
    .site-mobile-menu .site-nav-wrap li {
      position: relative;
      display: block; }
      .site-mobile-menu .site-nav-wrap li .active {
        color: #8f1c22; }
    .site-mobile-menu .site-nav-wrap .arrow-collapse {
      position: absolute;
      right: 0px;
      top: 10px;
      z-index: 20;
      width: 36px;
      height: 36px;
      text-align: center;
      cursor: pointer;
      border-radius: 50%; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse:hover {
        background: #f8f9fa; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse:before {
        font-size: 15px;
        z-index: 20;
        font-family: "icomoon";
        content: "\f078";
        position: static;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%) rotate(-180deg);
        -ms-transform: translate(-50%, -50%) rotate(-180deg);
        transform: translate(-50%, -50%) rotate(-180deg);
        -webkit-transition: .3s all ease;
        -o-transition: .3s all ease;
        transition: .3s all ease; }
      .site-mobile-menu .site-nav-wrap .arrow-collapse.collapsed:before {
        -webkit-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%); }
    .site-mobile-menu .site-nav-wrap > li {
      display: block;
      position: relative;
      float: left;
      width: 100%; }
      .site-mobile-menu .site-nav-wrap > li > a {
        padding-left: 20px;
		font-weight: 500;
        font-size: 16px; }
      .site-mobile-menu .site-nav-wrap > li > ul {
        padding: 0;
        margin: 0;
        list-style: none; }
        .site-mobile-menu .site-nav-wrap > li > ul > li {
          display: block; }
          .site-mobile-menu .site-nav-wrap > li > ul > li > a {
            padding-left: 30px;
			font-weight: 400;
            font-size: 18px; }
          .site-mobile-menu .site-nav-wrap > li > ul > li > ul {
            padding: 0;
            margin: 0; }
            .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li {
              display: block; }
              .site-mobile-menu .site-nav-wrap > li > ul > li > ul > li > a {
                font-size: 14px;
                padding-left: 60px;}
    .site-mobile-menu .site-nav-wrap[data-class="social"] {
      float: left;
      width: 100%;
      margin-top: 30px;
      padding-bottom: 5em; }
      .site-mobile-menu .site-nav-wrap[data-class="social"] > li {
        width: auto; }
        .site-mobile-menu .site-nav-wrap[data-class="social"] > li:first-child a {
          padding-left: 15px !important; }

.sticky-wrapper {
  position: absolute;
  z-index: 100;
  width: 100%; }
  .sticky-wrapper .site-navbar {
    -webkit-transition: .3s all ease;
    -o-transition: .3s all ease;
    transition: .3s all ease; }
  .sticky-wrapper .site-navbar {
    border-bottom: 1px solid rgba(255, 255, 255, 0.2); }
    .sticky-wrapper .site-navbar .site-menu-toggle {
      color: #fff; }
    .sticky-wrapper .site-navbar .site-logo a {
      color: #fff; }
    .sticky-wrapper .site-navbar .site-menu > li > a {
      color: rgba(255, 255, 255, 0.7) !important; }
      .sticky-wrapper .site-navbar .site-menu > li > a:hover, .sticky-wrapper .site-navbar .site-menu > li > a.active {
        color: #fff !important; }
  .sticky-wrapper.is-sticky .site-navbar {
    background: #fff;
    border-bottom: 1px solid transparent;
    -webkit-box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.1);
    box-shadow: 4px 0 20px -5px rgba(0, 0, 0, 0.1); }
    .sticky-wrapper.is-sticky .site-navbar .site-menu-toggle {
      color: #000; }
    .sticky-wrapper.is-sticky .site-navbar .site-logo a {
      color: #8f1c22; }
    .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a {
      color: #000 !important; }
      .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a:hover, .sticky-wrapper.is-sticky .site-navbar .site-menu > li > a.active {
        color: #8f1c22 !important; }
  .sticky-wrapper .shrink {
    padding-top: 10px !important;
    padding-bottom: 10px !important; }

/* Blocks */
.site-blocks-cover {
  background-size: cover;
  background-repeat: no-repeat;
  background-position: top;
  background-position: center center; }
  .site-blocks-cover.overlay {
    position: relative; }
    .site-blocks-cover.overlay:before {
      position: absolute;
      content: "";
      left: 0;
      bottom: 0;
      right: 0;
      top: 0; }
  .site-blocks-cover .player {
    position: absolute;
    bottom: -250px;
    width: 100%; }
  .site-blocks-cover, .site-blocks-cover > .container > .row {
    min-height: 600px;
    height: calc(100vh); }
  .site-blocks-cover.inner-page-cover, .site-blocks-cover.inner-page-cover > .container > .row {
    min-height: 500px;
    height: calc(20vh); }
  .site-blocks-cover h1 {
    font-size: 2.8rem;
    font-weight: 400;
    color: #fff; }
    @media (max-width: 991.98px) {
      .site-blocks-cover h1 {
        font-size: 1.9rem; } }
  .site-blocks-cover h2 {
    font-size: 4.8rem;
    color: #fff; }
    @media (max-width: 991.98px) {
      .site-blocks-cover h2 {
        font-size: 2.9rem; } }
  .site-blocks-cover p {
    color: white;
    font-size: 1rem;
    line-height: 1.5;
    font-weight: 300; }

.bg-light {
  background: #ccc; }

.slide-one-item {
  position: relative;
  z-index: 1; }
  .slide-one-item .owl-nav {
    position: relative;
    position: absolute;
    bottom: -90px;
    left: 50%;
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    transform: translateX(-50%); }
    .slide-one-item .owl-nav .owl-prev, .slide-one-item .owl-nav .owl-next {
      position: relative;
      display: inline-block;
      padding: 20px;
      font-size: 30px;
      color: #000; }
      .slide-one-item .owl-nav .owl-prev.disabled, .slide-one-item .owl-nav .owl-next.disabled {
        opacity: .2; }

.slide-one-item.home-slider .owl-nav {
  position: absolute !important;
  top: 50% !important;
  bottom: auto !important;
  width: 100%; }
  @media (max-width: 991.98px) {
    .slide-one-item.home-slider .owl-nav {
		top: 50% !important; } }

.slide-one-item.home-slider .owl-prev {
  left: 10px !important; }

.slide-one-item.home-slider .owl-next {
  right: 10px !important; }

.slide-one-item.home-slider .owl-prev, .slide-one-item.home-slider .owl-next {
  color: rgba(255, 255, 255, 0.7);
  position: absolute !important;
  top: 50%;
  padding: 0px;
  height: 40px;
  width: 40px;
  border: 2px solid rgba(255, 255, 255, 0.7);
  border-radius: 50%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
  background: rgba(94, 94, 94, 0.2);
  -webkit-transition: .3s all ease-in-out;
  -o-transition: .3s all ease-in-out;
  transition: .3s all ease-in-out;
  line-height: 0;
  text-align: center;
  font-size: 25px; }
  @media (min-width: 768px) {
    .slide-one-item.home-slider .owl-prev, .slide-one-item.home-slider .owl-next {
      font-size: 25px; } }
  .slide-one-item.home-slider .owl-prev > span, .slide-one-item.home-slider .owl-next > span {
    position: absolute;
    line-height: 0;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }
  .slide-one-item.home-slider .owl-prev:hover, .slide-one-item.home-slider .owl-prev:focus, .slide-one-item.home-slider .owl-next:hover, .slide-one-item.home-slider .owl-next:focus {
    background: rgba(0, 0, 0, 0.7);
    color: #fff;
    border-color: #fff;}

.slide-one-item.home-slider:hover .owl-nav, .slide-one-item.home-slider:focus .owl-nav, .slide-one-item.home-slider:active .owl-nav {
  opacity: 10;
  visibility: visible; }

.slide-one-item .owl-dots {
  text-align: center; }
  .slide-one-item .owl-dots .owl-dot {
    display: inline-block;
    margin: 4px; }
    .slide-one-item .owl-dots .owl-dot span {
      display: inline-block;
      width: 10px;
      height: 10px;
      border-radius: 50%;
      background: rgba(0, 0, 0, 0.2); }
    .slide-one-item .owl-dots .owl-dot.active span {
      background: #8f1c22; }

.player {
  position: relative; }
  .player img {
    max-width: 100px;
    border-radius: 50%;
    margin-bottom: 20px; }

  .player h2 {
    font-size: 20px;
    letter-spacing: .2em;
    text-transform: uppercase; }
  .player .position {
    font-size: 14px;
    color: #b3b3b3;
    text-transform: uppercase; }

.unit-4 .unit-4-icon span {
  display: block;
  font-size: 3rem; }

.unit-4 h3 {
  font-size: 20px;
  color: #000; }

.h-entry img {
  margin-bottom: 30px; }

.h-entry h2 {
  font-size: 20px; }
  .h-entry h2 a {
    color: #000; }
    .h-entry h2 a:hover {
      color: #8f1c22; }

.text-muted {
  font-size: 0.75rem;
  text-transform: uppercase; }

.section-sub-title {
  font-size: 13px;
  letter-spacing: .35em;
  text-transform: uppercase; }

.section-sub-title-h3 {
  font-size: 19px;
  letter-spacing: .2em;
  text-transform: uppercase; }

.section-sub-title-sm {
  font-size: 10px;
  letter-spacing: .4em;
  font-weight: 400; 
  text-transform: uppercase; }

.section-sub-title-ss {
  font-size: 11px;
  letter-spacing: .3em;
  text-transform: uppercase; }

.section-title {
  color: #000;
  font-size: 35px;
  font-weight: 300; }
  @media (max-width: 991.98px) {
    .section-title {
      font-size: 25px; } }

.position-relative {
  position: relative; }

/* Isotope*/
.item {
  border: none; }
  .item .item-wrap {
    display: block;
    position: relative; }
    .item .item-wrap:after {
      z-index: 2;
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.4);
      visibility: hidden;
      opacity: 0;
      -webkit-transition: .3s all ease-in-out;
      -o-transition: .3s all ease-in-out;
      transition: .3s all ease-in-out; }
    .item .item-wrap > span {
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 3;
      -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
      transform: translate(-50%, -50%) scale(0);
      color: #fff;
      font-size: 1.7rem;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: .3s all ease;
      -o-transition: .3s all ease;
      transition: .3s all ease; }
    .item .item-wrap:hover:after {
      opacity: 1;
      visibility: visible; }
    .item .item-wrap:hover span {
      margin-top: 0px;
      opacity: 1;
      visibility: visible;
      -webkit-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
      transform: translate(-50%, -50%) scale(1); }

  .item .item-wrap-img {
    display: block;
    position: relative; }
    .item .item-wrap-img:after {
      z-index: 2;
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(255, 255, 255, 0.4);
      visibility: hidden;
      opacity: 0;
      -webkit-transition: .3s all ease-in-out;
      -o-transition: .3s all ease-in-out;
      transition: .3s all ease-in-out; }
    .item .item-wrap-img > span {
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 3;
      -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
      transform: translate(-50%, -50%) scale(0);
      color: #fff;
      font-size: 1.7rem;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: .3s all ease;
      -o-transition: .3s all ease;
      transition: .3s all ease; }
    .item .item-wrap-img:hover:after {
      opacity: 1;
      visibility: visible; }
    .item .item-wrap-img:hover span {
      margin-top: 0px;
      opacity: 1;
      visibility: visible;
      -webkit-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
      transform: translate(-50%, -50%) scale(1); }
  
.item .item-wrap-vid {
    display: block;
    position: relative;}

    .item .item-wrap-vid:after {
      z-index: 2;
      position: absolute;
      content: "";
      top: 0;
      left: 0;
      right: 0;
      bottom: 0;
      background: rgba(0, 0, 0, 0.5);
      visibility: hidden;
      opacity: 0;
      -webkit-transition: .3s all ease-in-out;
      -o-transition: .3s all ease-in-out;
      transition: .3s all ease-in-out; }
    .item .item-wrap-vid > span {
      position: absolute;
      top: 50%;
      left: 50%;
      z-index: 3;
      -webkit-transform: translate(-50%, -50%) scale(0);
      -ms-transform: translate(-50%, -50%) scale(0);
      transform: translate(-50%, -50%) scale(0);
      color: rgba(255,255,255,0.70);
      font-size: 2.8rem;
      opacity: 0;
      visibility: hidden;
      -webkit-transition: .3s all ease;
      -o-transition: .3s all ease;
      transition: .3s all ease; }
    .item .item-wrap-vid:hover:after {
      opacity: 1;
      visibility: visible; }
    .item .item-wrap-vid span {
      margin-top: 0px;
      opacity: 1;
      visibility: visible;
      -webkit-transform: translate(-50%, -50%) scale(1);
      -ms-transform: translate(-50%, -50%) scale(1);
      transform: translate(-50%, -50%) scale(1); }

.fancybox-slide--video { 
    padding: 10px; 
}

.filters .btn {
  letter-spacing: .2em;
  font-weight: 400; 
  text-transform: uppercase;
  font-size: .6rem;
  padding: 8px 20px;
  margin: 3px;
 }

.pricing {
  background: #fff;
  padding: 30px; }

  .pricing ul li {
    margin-bottom: 10px; }

/* Isotope Transitions
------------------------------- */
.isotope,
.isotope .item {
  -webkit-transition-duration: 0.8s;
  -moz-transition-duration: 0.8s;
  -ms-transition-duration: 0.8s;
  -o-transition-duration: 0.8s;
  transition-duration: 0.8s; }

.isotope {
  -webkit-transition-property: height, width;
  -moz-transition-property: height, width;
  -ms-transition-property: height, width;
  -o-transition-property: height, width;
  transition-property: height, width; }

.isotope .item {
  -webkit-transition-property: -webkit-transform, opacity;
  -moz-transition-property: -moz-transform, opacity;
  -ms-transition-property: -ms-transform, opacity;
  -o-transition-property: top, left, opacity;
  transition-property: transform, opacity, -webkit-transform; }

/* responsive media queries */
/* Mouse scroll effect */
.mouse {
  position: absolute;
  bottom: 40px;
  z-index: 5;
  left: 50%;
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translateX(-50%);
  display: block; }
  .mouse .mouse-icon {
    display: block;
    width: 25px;
    height: 45px;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-radius: 15px;
    cursor: pointer;
    position: relative;
    text-align: center;
    -webkit-transition: .3s all ease-in-out;
    -o-transition: .3s all ease-in-out;
    transition: .3s all ease-in-out; }
  .mouse .mouse-wheel {
    height: 4px;
    margin: 2px auto 0;
    display: block;
    width: 4px;
    background-color: white;
    border-radius: 50%;
    -webkit-animation: 1.6s ease infinite wheel-up-down;
    -moz-animation: 1.6s ease infinite wheel-up-down;
    animation: 1.6s ease infinite wheel-up-down; }
  .mouse:hover .mouse-icon {
    border-color: #fff; }

@-webkit-keyframes wheel-up-down {
  0% {
    margin-top: 2px;
    opacity: 0; }
  30% {
    opacity: 1; }
  100% {
    margin-top: 20px;
    opacity: 0; } }

@-moz-keyframes wheel-up-down {
  0% {
    margin-top: 2px;
    opacity: 0; }
  30% {
    opacity: 1; }
  100% {
    margin-top: 20px;
    opacity: 0; } }

@keyframes wheel-up-down {
  0% {
    margin-top: 2px;
    opacity: 0; }
  30% {
    opacity: 1; }
  100% {
    margin-top: 20px;
    opacity: 0; } }

/* Blog */

.categories li {
  position: relative;
  margin-bottom: 10px;
  padding-bottom: 10px;
  border-bottom: 1px dotted #dee2e6;
  list-style: none; }
  .categories li:last-child {
    margin-bottom: 0;
    border-bottom: none;
    padding-bottom: 0; }
  .categories li a {
    display: block; }
    .categories li a span {
      position: absolute;
      right: 0;
      top: 0;
      color: #ccc; }
  .categories li.active a {
    color: #000;
    font-style: italic; }

figure figcaption {
  margin-top: .5rem;
  font-size: .8rem; }

/*PRELOADING------------ */
#overlayer {
  width: 100%;
  height: 100%;
  position: fixed;
  z-index: 7100;
  background: #fff;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0; }

.loader {
  z-index: 7700;
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%); }

/* -------------------------------- 

heading

-------------------------------- */

.cd-words-wrapper {
  display: inline-block;
  position: relative;
  text-align: left;
}
.cd-words-wrapper b {
  display: inline-block;
  position: absolute;
  white-space: nowrap;
  left: 0;
  top: 0;
}
.cd-words-wrapper b.is-visible {
  position: relative;
}

/* -------------------------------- 

xclip 

-------------------------------- */
.cd-headline.clip span {
  display: inline-block;
  padding: .2em 0;
  color: #ffffff;
  font-size:  calc(.9em + 0.5vw);
		margin-bottom:1.5em;
}
.cd-headline.clip span b{
	text-transform: uppercase;

}
.cd-headline.clip .cd-words-wrapper {
  overflow: hidden;
  vertical-align: top;
}
.cd-headline.clip .cd-words-wrapper::after {
  /* line */
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 2px;
  height: 100%;
  background-color: #BABABA;
}
.cd-headline.clip b {
  opacity: 0;
}
.cd-headline.clip b.is-visible {
  opacity: 1;
}
.text-justify {
  text-align: justify;
}

.text-small {
	font-size: .89em;
	font-weight: 300;

}

.text-small-sm {
	font-size: .75em;
	font-weight: 200;
	color: #B4B4B4;
}

.text-small-sm2 {
	font-size: .65em;

}

span.nomostrar { display:none; }

/* -------------------------------- 

Main Components 

-------------------------------- */

#parent {
  font-size: 1rem;
  line-height: 1.25rem;

}

#parent p.collapse:not(.show) {
    height: 55px !important;
    overflow: hidden;
  
    display: -webkit-box;
    -webkit-line-clamp: 3;
    -webkit-box-orient: vertical;  
}

#parent p {
    min-height: 55px !important;
}

#parent a.collapsed:after  {
    content: 'Seguir leyendo';
}

#parent a:not(.collapsed):after {
    content: 'menos';
}

.vr{
  display: inline-block; vertical-align: middle;
  height: 40px;
  width: 1px;
  background-color: #4D4D4D;
}

.vr2{
  display: inline-block; vertical-align: middle;
  height: 80px;
  width: 1px;
  background-color: #4D4D4D;
}
.vr-w{
  display: inline-block; vertical-align: middle;
  height: 40px;
  width: 1px;
  background-color: #fff;
}

.video-container {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: -1;
}
  .video-container video {
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%); }

.section-hero, .section-hero > .container > .row {
  height: calc(70vh);
  min-height: 100%;
}

.section-hero.overlay {
  position: relative; }
  .section-hero.overlay:before {
    z-index: 1;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(125, 131, 132, 0.02); }

.section-hero > .container {
  z-index: 2;
  position: relative; }

.home-section {
  position: relative; }
  .home-section h1 {
    font-size: 2.8rem;
    color: #fff;
    font-weight: 200;
    letter-spacing: .2rem; }
    @media (max-width: 991.98px) {
      .home-section h1 {
        font-size: 1.6rem; } }
  .home-section p {
    font-size: 1.2rem;
    color: rgba(255, 255, 255, 0.6); }
  .home-section a {
    font-size: 1.2rem;
    text-transform: none; }
    .home-section a, .home-section a:hover {
      color: #fff; }
  .home-section .btn {
    text-transform: uppercase;
    font-size: .9rem;
    letter-spacing: .2rem; }
  .home-section .scroll-button {
    position: absolute;
    z-index: 5;
    bottom: -100px;
    width: 50px;
    height: 50px;
    border-radius: 50%;
    background: #000;
    left: 50%;
    -webkit-transform: translate(-50%, -150%);
    -ms-transform: translate(-50%, -150%);
    transform: translate(-50%, -150%);
 }
    .home-section .scroll-button > span {
      position: absolute;
      font-size: 2rem;
      top: 50%;
      left: 50%;
      -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
      transform: translate(-50%, -50%); }

.pan {

	  padding-right:0px;padding-left:0px
}

@media only screen and (max-width: 991.98px) {
	
	#dos {
		order: 2;
	}

}

#content-desktop, #content-desktop2 {display: block;}
#content-mobile, #content-mobile2 {display: none;}

@media screen and (max-width: 768px) {
#content-desktop, #content-desktop2 {display: none;}
#content-mobile, #content-mobile2 {display: block;}

}

.show-desktop {
	display: block;
}
.show-mobile {
	display: none;
}

@media screen and (max-width: 768px) {
.show-desktop{
	display: none;
	}
.show-mobile{
		display: block;
	}

}
/* -------------------------------- 

Main Components 

-------------------------------- */

/* Tooltip container */

.owl-stage {
  display: -webkit-box;
  display: -moz-box;
  display: -ms-box;
  display: box;
}

/*---------------*/
/***** Oscar *****/
/*---------------*/

:root {
  --gutter: 10px;
}

/* Demo styles */

.video-background-section {
  position: relative;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  overflow: hidden;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
}

.vimeo-embed {
  position: absolute;
  right: 0%;
  bottom: 0%;
  width: 100vw;
  height: 56.25vw; /* Given a 16:9 aspect ratio, 9/16*100 = 56.25 */
  min-height: 100%;
  min-width: 177.77vh; /* Given a 16:9 aspect ratio, 16/9*100 = 177.77 */
  top: 50%;
  left: 50%;
  objectFit: fill;
  transform: translate(-50%, -50%);
}
.w-embed:before,
.w-embed:after{content:" ";
	display:table;
	grid-column-start:1;
	grid-row-start:1;
	grid-column-end:2;
	grid-row-end:2}
.w-embed:after{
	clear:both
}

.cajaf{
    position: fixed;
    bottom: 50px;
    right: 20px;
    width: 40px;
    height: 40px;
    z-index: 100000;
  }
  .cajaf:hover{
    height: 180px;
  }
  .cajaf:hover .caja1{
    visibility: visible;
    bottom: 60px;
  }

  .caja1:hover:before{
    visibility: visible; 
    color:#000;
  }
  .btn_roundf{
    position: absolute;
    bottom:0 ;
    right: 0;
	border:1px solid #25d366;
    background: #25d366;
    color:#fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    z-index: 90090; 
    display: flex;
    align-content: center;
    justify-content: center;
    text-align: center;
    align-items: center;
    
  }
  .caja1::before{
    background: #595959 ;
    border:1px solid #fff ;
    position: absolute;
    left: -140px; 
    padding: .5em;
    visibility: hidden;
  }
  
  .caja1{
    position: absolute;
    bottom: 0;
    right: 0;
    border:1px solid #ff4c5a;
    background: #ff4c5a;
    color: #fff;
    border-radius: 50%;
    width: 40px;
    height: 40px;
    z-index: 90080; 
    display: flex;
    align-content: center;
    justify-content: center;
    text-align: center;
    align-items: center;
    -webkit-transition: all .5s;
    visibility: hidden;
  }

.col-xs-6, .col-xs-12 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}
.col-xs-6, .col-xs-12 {
  float: left;
}
.col-xs-12 {
  width: 100%;
}

.col-xs-6 {
  width: 50%;
}

.btn-small {
  padding: 0.35rem 1.0rem 0.15rem 1.0rem;
  font-size: 0.875rem;
  line-height: 1.5;
  border-radius: 3px;
}

.btn-small-mini {
  padding: 0.40rem .7rem 0.20rem .7rem;
  font-size: 0.790rem;
  line-height: 1;
  border-radius: 3px;
}

 .item .item-wrap-vid > span span {
      font-size: 6.5rem;
	  color: rgba(255, 255, 255,0.9);
	 text-shadow: 0 0 40px #000;
 }

@media screen and (max-width: 768px) {
.item .item-wrap-vid > span span {
      font-size: 4.0rem; }
  }

/*PRICE COLOR CODE START*/
.generic_price_table .generic_content{
  background-color: #fff;
}

.generic_price_table .generic_content .generic_head_price{
  background: #ede3d5;
  background: linear-gradient(0deg, rgba(237, 227, 213, 0.3) 0%, rgba(237, 227, 213, 0.7) 25%);
}

/* ELIMINADO: el border-trick anterior del head_bg */
/* .generic_price_table .generic_content .generic_head_price .generic_head_content .head_bg{
  border-color: #6e4049 rgba(0, 0, 0, 0) rgba(0, 0, 0, 0) #6e4049;
} */

.generic_price_table .generic_content .generic_head_price .generic_head_content .head span{
  color: #525252;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag .price-t .sign{
    color: #414141;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag .price-t .currency{
    color: #414141;
}

.generic_price_table .generic_content .generic_feature_list ul li{  
  color: #a7a7a7;
}

.generic_price_table .generic_content .generic_feature_list ul li span{
  color: #414141;
}
.generic_price_table .generic_content .generic_feature_list ul li:hover{
  background-color: #f2edee;
  border-left: 5px solid #8f1c22;
  font-weight: 400;
  font-size: 1.082rem
}

.generic_price_table .generic_content.active .generic_head_price .generic_head_content .head_bg,
.generic_price_table .generic_content:hover .generic_head_price .generic_head_content .head_bg{
  color: #fff;
}

.generic_price_table .generic_content:hover .generic_head_price .generic_head_content .head span,
.generic_price_table .generic_content.active .generic_head_price .generic_head_content .head span{
  color: #fff;
}

.row .table{
    padding: 28px 0;
}

/*PRICE BODY CODE START*/

.generic_price_table .generic_content{
  overflow: hidden;
  position: relative;
  text-align: center;
}

.generic_price_table .generic_content .generic_head_price {
  margin: 0 0 20px 0;
}

/* ====================================================
   MODIFICACIÓN: head_content con overflow hidden
   para que el clip-path no se salga de la card
   ==================================================== */
.generic_price_table .generic_content .generic_head_price .generic_head_content{
  margin: 0px;
  position: relative;
  overflow: hidden;
}

/* ====================================================
   MODIFICACIÓN: head_bg reemplaza el border-trick
   por imagen de fondo con clip-path diagonal
   ==================================================== */
.generic_price_table .generic_content .generic_head_price .generic_head_content .head_bg{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-position: center;
  background-color: #6e3538; /* ← fallback si no hay imagen */
  /* Diagonal: esquina inferior derecha sube, izquierda baja */
  clip-path: polygon(0 0, 100% 0, 100% 78%, 0% 100%);
  border: none;
}

/* ====================================================
   MODIFICACIÓN: overlay de color sobre la imagen
   para mantener legibilidad del texto
   ==================================================== */
.generic_price_table .generic_content .generic_head_price .generic_head_content .head_bg::after{
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.60));

}

.generic_price_table .generic_content .generic_head_price .generic_head_content .head{
  padding-top: 65px;
  padding-bottom: 25px;
  position: relative;
  z-index: 1;
  text-shadow: -1px -1px 1px rgba(255,255,255,.1), 1px 1px 1px rgba(0,0,0,.5), -1px 0px 3px rgba(0,0,0,0.16);
}

.generic_price_table .generic_content .generic_head_price .generic_head_content .head span{
    font-size: 1.70rem;
    font-weight: 400;
    letter-spacing: 0px;
    margin: 0;
    padding: 0;
    text-transform: uppercase;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag{
  padding: 5px 0 10px 0;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag .price-t{
  display: block;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag .price-t .sign{
    display: inline-block;
    font-size: 1.3rem;
    font-weight: 380;
    vertical-align: top;
    margin-top: 5px;
}

.generic_price_table .generic_content .generic_head_price .generic_price_tag .price-t .currency{
    font-size: 3.75rem;
    font-weight: 340 !important;
    letter-spacing: -2px;
    line-height: 60px;
    padding: 0;
    vertical-align: middle;
}

.generic_price_table .generic_content .generic_feature_list ul{
  list-style: none;
  padding: 0;
  margin: 0px;
}

.generic_price_table .generic_content .generic_feature_list ul li{
  font-size: 1.15rem;
  font-weight: 300;
  padding: 2px 0;
  color: #000;
  transition: all 0.3s ease-in-out 0s;
}
.generic_price_table .generic_content .generic_feature_list ul li:hover{
  transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -ms-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  -webkit-transition: all 0.3s ease-in-out 0s;
}

.generic_price_table .generic_content, .generic_price_table .generic_content:hover, .generic_price_table .generic_content .generic_head_price .generic_head_content .head_bg, .generic_price_table .generic_content:hover .generic_head_price .generic_head_content .head_bg, .generic_price_table .generic_content .generic_head_price .generic_head_content .head h2, .generic_price_table .generic_content:hover .generic_head_price .generic_head_content .head h2, .generic_price_table .generic_content .price-t, .generic_price_table .generic_content:hover .price-t {
  transition: all 0.3s ease-in-out 0s;
  -moz-transition: all 0.3s ease-in-out 0s;
  -ms-transition: all 0.3s ease-in-out 0s;
  -o-transition: all 0.3s ease-in-out 0s;
  -webkit-transition: all 0.3s ease-in-out 0s;
} 

@media (max-width: 767px) {
  .generic_price_table .generic_content{
    margin-bottom:75px;
  }
}
@media (min-width: 768px) and (max-width: 991px) {
  .generic_price_table .col-md-3{
    float:left;
    width:50%;
  }
  
  .generic_price_table .col-md-4{
    float:left;
    width:50%;
  }
  
  .generic_price_table .generic_content{
    margin-bottom:75px;
  }
}

.text-decoration-line-through {
  text-decoration: line-through;
}

.text-spacing-1 {
  letter-spacing:  0.1rem !important;
}

/* Regla general: todos los submenús abiertos, EXCEPTO los marcados como no-auto-expand */
.site-mobile-menu .site-nav-wrap > li:not(.no-auto-expand) > ul {
  display: block !important;
  height: auto !important;
  margin-bottom: 8px; }

.site-mobile-menu .site-nav-wrap > li:not(.no-auto-expand) .arrow-collapse {
  display: none; }

/* Los .no-auto-expand quedan sin overrides → comportamiento original de Bootstrap Collapse */

/* Menú móvil: el enlace de contacto muestra el texto "CONTACTO" en lugar de los iconos */
.site-mobile-menu .site-nav-wrap > li > a.nav-contacto [class*="icon-"] {
  display: none;
}
.site-mobile-menu .site-nav-wrap > li > a.nav-contacto::after {
  content: "CONTACTO";
}

/* ---------- Presupuesto a medida ---------- */
.presupuesto-wrap { max-width: 760px; margin: 0 auto; }
.presupuesto-sub { text-align: center; color: #6c757d; margin-bottom: 20px; }
fieldset.grupo { border: none; margin-bottom: 28px; padding-top: 16px; border-top: 1px solid #eee; }
fieldset.grupo:first-of-type { border-top: none; padding-top: 0; }
legend.grupo-titulo, label.grupo-titulo { font-size: 1.05rem; font-weight: 700; color: #212529; float: none; width: auto; margin-bottom: 12px; }
#presupuesto .form-check { margin-bottom: 6px; }
#presupuesto .form-check[hidden] { display: none; }
.campo-otro { margin-top: 6px; max-width: 320px; }
.hp-field { position: absolute; left: -9999px; top: -9999px; }
