
/* ============ General ============ */
/* ============ Base fuentes responsive ============ */
body {
    font-size: 2px;
}

p {
    font-size: 15px;
}

.carousel-control-prev-icon,
.carousel-control-next-icon {
  height: 100px;
  width: 100px;
  outline: black;
  background-size: 100%, 100%;
  background-image: none;
}

.carousel-control-next-icon:after
{
  content: '>';
  font-size: 55px;
  color: black;
  opacity: 80%;
}

.carousel-control-prev-icon:after {
  content: '<';
  font-size: 55px;
  color: black;
  opacity: 80%;
}

@font-face {
    font-family: "Cormorant Garamond"; 
    src: url("../fonts/CormorantGaramond-SemiBold.ttf") format("truetype");
}

@font-face {
    font-family: "Cormorant Garamond Bold"; 
    src: url("../fonts/CormorantGaramond-Bold.ttf") format("truetype");
}

@font-face {
    font-family: "Cormorant title"; 
    src: url("../fonts/CormorantGaramond-Bold.ttf") format("truetype");
}


@font-face {
    font-family: "Catamaran"; 
    src: url("../fonts/catamaran/Catamaran-Medium.ttf") format("truetype");
}

@font-face {
    font-family: "Catamaran bold"; 
    src: url("../fonts/catamaran/Catamaran-Bold.ttf") format("truetype");
}

@media all and (min-width: 720px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 1.3rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 1.1rem;
    }
    .tamIni{
        margin: 0 auto;
        width: 100%;
    }
}

@media all and (min-width: 620px){

    .tamIni{
        margin: 0 auto;
        width: 100%;
    }
}

@media all and (min-width: 1024px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 1.3rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 1.1rem;
    }
    .tamIni{
        margin: 0 auto;
        width: 90%;
    }
    
}
@media all and (max-width: 1024px){
    #carouselAngeologiaD .carousel-indicators {
        left: -20%!important;
    }

    #carouselPaisajes .carousel-indicators {
        left: -5%!important;
        top: 25%!important;
    }    
    #carouselPaisajes .carousel-item img {
        max-width: 95%!important;
        padding-left: 40px;
    }
}

@media all and (max-width: 770px){

    #carouselPaisajes .carousel-indicators {
        left: -15%!important;
        top: 25%!important;
    }    
    #carouselPaisajes .carousel-item img {
        max-width: 100%!important;
        padding-top: 70px!important;
    }
}

@media all and (min-width: 1200px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 1.3rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 1.1rem;
    }
    .tamIni{
        margin: 0 auto;
        width: 75%;
    }

}
@media all and (max-width: 1200px){
    #carouselPaisajes .carousel-indicators{
        top: 25%!important;
    }

}

@media all and (max-width: 720px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 1.3rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 1.1rem;
    }
    
}

@media all and (max-width: 640px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 1.1rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 1rem;
    }
    .tamIni{
        margin: 0 auto;
        width: 100%;
    }
    
  
}

@media all and (max-width: 320px){
    .catamaran{
        font-family: 'Catamaran';
        font-size: 0.9rem;
    }

    .catamaran2{
        font-family: 'Catamaran';
        font-size: 0.8rem;
    }
    .tamIni{
        margin: 0 auto;
        width: 10%;
    }
}
/* ============ Fin base fuentes responsive ============ */

.subtit{
    text-decoration: underline;
}

.texto {
    font-family: 'Catamaran';
    font-size: 1rem;
    font-style: italic;
    text-align: center;
}

.Cormo{
    font-family: 'Cormorant Garamond Bold';
    font-size: 1.5rem;
}

.Cata{
    font-family: 'Catamaran Bold';
    font-size: 1.5rem;
}

.titulo {
    font-family: 'Cormorant Garamond';
    font-size: 2rem;
    font-style: italic;
    text-align: center;
}

.titulo2 {
    font-family: 'Cormorant Garamond Bold';
    font-size: 1.95rem;
    font-style: italic;
    text-align: center;
    margin-top: -20px;
}

/* ============ Navbar ============ */

.navbar {
    /*background: lightgray;*/
    background: #f8f9fa;
    box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.1);
  }
  
  .navbar-brand {
    color: black;
    font-size: 30px;
    margin-left: 5px;
    margin-top: 2px;
    font-weight: bold;
    font-family: 'Cormorant title';
  }
  
  .nav-link {
    color: black;
    margin: 0 10px;
  }
  
  .nav-link:hover {
    color: gray;
  }
  
  .dropdown-item {
    color: black;
  }
  
  .dropdown-item:hover {
    background: gray;
    color: white;
  }
  .dropdown-submenu {
    position: relative;
}

.dropdown-submenu a::after {
    transform: rotate(-90deg);
    position: absolute;
    right: 6px;
    top: .8em;
}

.dropdown-submenu .dropdown-menu {
    top: 0;
    left: 100%;
    margin-left: .1rem;
    margin-right: .1rem;
}

/* ============ Fin navbar ============ */

/* ============ Carouseles ============ */
#angeologia .container {
    padding-top: 15px;
}

#carouselAngeologiaD .carousel-inner {
    height: auto; 
    width: auto;
    min-height: 650px; /* Ajusta este valor según las necesidades de tu diseño */
}

#carouselAngeologiaD .carousel-item img {
    max-width: 85%;
    max-height: 650px; /* Asegúrate de que este valor coincida con min-height arriba */
    object-fit: contain; /* Asegura que la imagen se ajuste dentro del espacio disponible sin recortarla */
    margin: auto;
    padding-left: 40px;
}

#img1, #img2, #img4 {
    max-height: 900px; /* Ajusta este valor según tus necesidades */
}

#img3 {
    max-height: 400px;
}


#carouselAngeologiaD .carousel-indicators {
    position: absolute;
    left: 0;
    top: 30%;
    bottom: auto;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
}

#carouselAngeologiaD .carousel-indicators button{
    text-indent:0;
    width:200px;
    height: 40px;
    border:none;
    background-color: transparent;
    font-family: 'Catamaran';
    font-size: 18px;
    font-weight: 200;
    font-style: italic;
    text-align: center;
}

#carouselAngeologiaD .carousel-indicators .active {
    text-decoration: underline;
}
#ciudades .container {
    padding-top: 15px;
}

#carouselCiudadesD .carousel-inner {
    height: auto; 
    max-height: 400px; 
    width: 100%;
}
#carouselCiudadesD .carousel-control-next  {
margin-top: 100px;
}

#carouselCiudadesD .carousel-control-prev  {
    margin-top: 100px;
    }
#carouselCiudadesD .carousel-item img {
    max-width: 100%;
    background-size: cover;
    margin: auto;
}


#carouselCiudadesD .carousel-indicators button{
    text-indent:0;
    width:100px;
    height: 40px;
    border:none;
    background-color: transparent;
    font-family: 'Catamaran';
    font-size: 18px;
    font-weight: 200;
    font-style: italic;
    text-align: center;
}

#carouselCiudadesD .carousel-indicators .active {
    text-decoration: underline;
}


#carouselCiudadesD .carousel-indicators{
    position: relative!important;
}


#carouselTiras .carousel-inner {
    height: 38vh; 
    width: 90vw;
}

#carouselTiras .carousel-item img {
    max-width: 100%;
    margin: auto;
}


#carouselTiras .carousel-indicators button{
    text-indent:0;
    width:100px;
    height: 40px;
    border:none;
    background-color: transparent;
    font-family: 'Catamaran';
    font-size: 18px;
    font-weight: 200;
    font-style: italic;
    text-align: center;
}

#carouselTiras .carousel-control-next  {
    margin-top: 100px;
    }
    
#carouselTiras .carousel-control-prev  {
    margin-top: 100px;
    }

#carouselTiras .carousel-indicators .active {
    text-decoration: underline;
}

#carouselTiras .carousel-indicators  {
    position: relative!important;
}

#carouselPaisajes .carousel-inner {
    padding-top: 30px;
   /* height: 45vh; 
    width: 100vw; */
    height: auto;
    width: auto;
    min-height: 600px; 
  }
   
  
#carouselPaisajes .carousel-item img {
    max-width: 100%;
    /*margin-top: 30px;*/
    max-height: 600px; /* Make sure this value matches min-height above */
    object-fit: contain;
    margin: auto;
    padding-left: 40px;
}

#carouselPaisajes .carousel-indicators{
    /*align-items: stretch;
    display: flex;
    margin-top: 20px;
    flex-direction: column;
    left: -10vw;*/
    position: absolute;
    left: 0;
    top: 35%;
    bottom: auto;
    transform: translateY(-50%);
    display: flex;
    flex-direction: column;
}
#carouselPaisajes .carousel-control-next{
    margin-right: 70px;
    padding-top: 20px;
}
#carouselPaisajes .carousel-control-prev{
    margin-left: 95px;
    padding-top: 20px;
}


@media all and (max-width: 990px){
    #carouselPaisajes .carousel-control-next{
        margin-right: 70px;
        margin-bottom: 200px;
    }
    #carouselPaisajes .carousel-control-prev{
        margin-left: 95px;
        margin-bottom: 200px;
    }
    
  
}
#carouselPaisajes .carousel-indicators button{
    text-indent: 0;
    width:4vw;
    margin-top: 60px;
    height: 5vh;
    /*padding-bottom: 3vh;*/
  }
  
  #carouselPaisajes .carousel-indicators button p {
    height: 2vh;
}


#carouselPapel .carousel-inner {

    width: 100%;

}

#carouselPapel .carousel-item img {
    max-width: 100%;
    margin: auto;
    object-fit: contain;
    max-height: 600px;
  }


#carouselPapel .carousel-indicators button{
    text-indent:0;
    width:100px;
    height: 40px;
    border:none;
    background-color: transparent;
    font-family: 'Catamaran';
    font-size: 18px;
    font-weight: 200;
    font-style: italic;
    text-align: center;
}

#carouselPapel .carousel-control-next  {
    margin-top: 100px;
    }
    
#carouselPapel .carousel-control-prev  {
    margin-top: 100px;
    }

#carouselPapel .carousel-indicators .active {
    text-decoration: underline;
}

#carouselPapel .carousel-indicators  {
    position: relative!important;
}

/* ============ Fin Carouseles ============ */

/* Contacto */

.h-divider {
    margin: auto;
    margin-top: 80px;
    width: 80%;
    position: relative;
}

.h-divider .shadow {
    overflow: hidden;
    height: 20px;
}

.h-divider .shadow:after {
    content: '';
    display: block;
    margin: -25px auto 0;
    width: 100%;
    height: 25px;
    border-radius: 125px/12px;
    box-shadow: 0 0 8px black;
}

.h-divider .text {
    width: 150px;
    height: 65px;
    padding: 10px;
    position: absolute;
    bottom: 100%;
    margin-bottom: -33px;
    left: 50%;
    margin-left: -60px;
    border-radius: 100%;
    box-shadow: 0 2px 4px #999;
    background: white;
    font-family: 'Catamaran';
    font-size: 18px;
    font-weight: 200;
    font-style: italic;
    text-align: center;
}

.h-divider .text i {
    position: absolute;
    top: 4px;
    bottom: 4px;
    left: 4px;
    right: 4px;
    border-radius: 100%;
    border: 1px dashed #aaa;
    text-align: center;
    line-height: 50px;
    font-style: normal;
    font-size: large;
    font-weight: 400;
    color: rgb(95, 95, 95);
}

.clo {
    padding-top: 50px;
}



/*FOOTER*/
.footer {
    background: #f3f3f3; /* Un gris un poco más oscuro */
    color: black;
}

.footer a {
    color: black;
}

.footer a:hover {
    color: gray;
}

.fa-instagram, .fa-envelope {
    color: #000;
}

.fa-instagram:hover, .fa-envelope:hover {
    color: #808080;
}


/*/reseña*/
.zoom-card {
    transition: transform .2s, opacity .3s;
  }
  
  .zoom-card:hover {
    transform: scale(1.03);
  }
  
  .zoom-card:active {
    opacity: 0.7;
    filter: grayscale(50%);
    transform: scale(1);
    transition: transform .1s, opacity .1s;
}


.view-more {
    transition: color 0.3s; 
  }
  
  .view-more:hover {
    color: #000000;

  }


/*CONTACTO*/
.mensaje {
    display: none;
    padding: 10px;
    border-radius: 5px;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 10px;
}

.exito {
    background-color: #dff0d8;
    color: #3c763d;
    border: 1px solid #d6e9c6;
}

.error {
    background-color: #f2dede;
    color: #a94442;
    border: 1px solid #ebccd1;
}

/*EXILIO INTERIOR*/
.main-image-container {
    position: relative;
    overflow: hidden;
    max-height: 200px;  /* Cambia este valor a la altura máxima que necesites */
}
.main-image {
    position: absolute;
    transform: scale(1);
    transition: transform 0.5s ease-in-out;
    height: 500px;       /* Esto fuerza a que la imagen se ajuste a la altura del contenedor */
    object-fit: cover;  /* Esto mantiene la relación de aspecto y cubre todo el contenedor */
    width: 100%;        /* Esto mantiene la relación de aspecto de la imagen */
}
.zoom-in {
    transform: scale(1.1);
}

/*Dorfles*/
.main-gallery {
    max-height: 600px;  /* Cambia este valor a la altura máxima que necesitas */
}
.main-gallery img {
    max-height: 600px;  
    object-fit: cover;  /* Esto mantiene la relación de aspecto y cubre todo el contenedor */
}


.image-container {
    position: relative;
    height: 100%;
    width: 100%;
    overflow: hidden;
    
}
@keyframes slideIn {
    0% {
      transform: translateY(-100%);
      opacity: 0;
    }
    0% {
        transform: translateY(-50%);
        opacity: 0.5;
      }
    100% {
      transform: translateY(0);
      opacity: 1;
    }
  }

.lens {
    position: fixed;
    border: 1px solid #ddd;
    box-shadow: 0 0 10px rgba(0,0,0,0.25);
    /* width and height should be defined, you can adjust these values */
    /* To ensure the cursor is visible on top of the lens */
    pointer-events: none;
}

#mainImage, .img-thumbnail {
    animation-name: slideIn;
    animation-duration: 0.8s;
    animation-timing-function: ease-in-out;

  }
/*
.zoomed-image {
position: absolute;
top: 0;
left: 0;
display: none;
width: 500px;
height: 100%;
background-repeat: no-repeat;
background-position: center;
background-size: 500%; /* zoom factor 
border: 1px solid #ddd;
box-shadow: 0 0 10px rgba(0,0,0,0.25);
z-index: 100;
}

#mainImage {
  cursor: crosshair;
}

@media screen and (max-width: 1470px) {
.zoomed-image {
    width: 450px;
}
}

@media screen and (max-width: 1300px) {
.zoomed-image {
    width: 400px;
}
}


@media screen and (max-width: 1200px) {
.zoomed-image {
    width: 380px;
}
}

@media screen and (max-width: 1100px) {
.zoomed-image {
    width: 340px;
}
}

@media screen and (max-width: 1050px) {
    .zoomed-image {
        width: 320px;
    }
    }*/
* {box-sizing: border-box;}

.img-zoom-lens {
    position: absolute;
    border: 1px solid #d4d4d4;
    cursor: none;
    width: 100px;
    height: 100px;
}

.img-zoom-result {
    z-index: 1000;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 0;
    right: 5;
    border: 1px solid #d4d4d4;
    width: 100%;
    height: 100%;
    max-height: 800px;
    
}

.image-container {
    position: relative;
    /*height: 600px; /* Define una altura fija para el contenedor o úsala en porcentaje si prefieres una altura adaptable */
}

/*.image-container img {
    max-height: 100%; 
    object-fit: contain; 
    display: block; 
}*/

.col-lg-4 {
    position: relative;
}

.hidden {
    display: none !important;
}

/*@media only screen and (max-width: 1399px) and (min-width: 1250px) {
    .img-zoom-result {
        width: 370px;
        height: 430px;
    }
}

@media only screen and (max-width: 1250px) and (min-width: 1050px) {
    .img-zoom-result {
        width: 310px;
        height: 390px;
    }
}

@media only screen and (max-width: 1049px) and (min-width: 900px) {
    .img-zoom-result {
        width: 290px;
        height: 350px;
    }
}*/

.dimensiones{
    margin-bottom: 5px;
    margin-left: 4px; 
    font-family: Catamaran; 
    font-size:16px;
}
.Ficha{
    margin-top: 5px;
    margin-bottom: 5px;
    margin-left: 0px; 
    font-family: Catamaran; 
    font-size:18px;
}
