/*-------------------------------------------------------
 LANDING SORTEO VERANO 2024 100M Puntos
 Octubre 2023
-------------------------------------------------------*/
/*-----------------------------
 1. Fuentes 
 2. Imagen fondo principal
 3. Textos
 4. Colores
 5. Posiciones absolutas
-------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Playfair+Display:ital,wght@0,400..900;1,400..900&display=swap');

.font-playfair-display-italic-extrabold {
  font-family: "Playfair Display", serif;
  font-optical-sizing: auto;
  font-weight: 900;
  font-style: italic;
  font-size: calc(1.375rem + 0.93vw);

}

.font-playfair-display-italic-extrabold.display-1{
  font-size: calc(4.375rem + 0.93vw);
}



/*-------------------------------------------------------
 1. Fuentes Repsol
-------------------------------------------------------*/
@font-face {
    font-family: "PoppinsRegular";
    src: url("../fonts/Poppins-Regular.ttf")
  }

@font-face {
    font-family: "PoppinsSemiBold";
    src: url("../fonts/Poppins-SemiBold.ttf")
  }

@font-face {
  font-family: "PoppinsBold";
  src: url("../fonts/Poppins-Bold.ttf")
}

.font-PoppinsRegular{
    font-family: 'PoppinsRegular' !important;
}

.font-PoppinsSemiBold{
    font-family: 'PoppinsSemiBold' !important;
}
  
.font-PoppinsBold{
  font-family: 'PoppinsBold' !important;
}


.shadow-verano{
  filter: drop-shadow(1px 2px 3px #00000a);
  width: 50px;
  margin-left: 0px;

}
@media (min-width: 992px) {
  .shadow-verano{
      filter: drop-shadow(1px 2px 3px #00000a);
      width: 110px;
      margin-left: -10px;
  }

  .font-playfair-display-italic-extrabold {
    font-size: 3.8rem;
  }
}


/*-------------------------------------------------------------------
 1. Colores
-------------------------------------------------------------------*/
:root {
  --bs-dark: #21325b;
  --bs-dark-rgb: 33,50,91;
  --bs-eroski:#d72a30;
  --bs-eroski-rgb:215, 42, 48;
  --bs-eroski-dark:#c80c22;
  --bs-eroski-dark-rgb:200, 12, 34;
  --bs-eroski-light:#e43227;
  --bs-eroski-light-rgb:228, 50, 39;
  --bs-light: #ffffff;
  --bs-light-rgb: 2255,255,255;
  --bs-light-progress:228, 50, 139;
  --bs-dark-eroski-rgb:222, 0, 9;
  --bs-bg-gray-erk:#f4f4f4;
  --bs-bg-familias-eroski:#1eb5b1
  }

  .bg-light {
      --bs-bg-opacity: 1;
      background-color: rgba(var(--bs-light-rgb),var(--bs-bg-opacity)) !important;
  }
  .bg-eroski {
      --bs-bg-opacity: 1;
      background-color: rgba(var(--bs-eroski-rgb),var(--bs-bg-opacity)) !important;
  }
  .bg-eroski-dark {
      --bs-bg-opacity: 1;
      background-color: rgba(var(--bs-eroski-dark-rgb),var(--bs-bg-opacity)) !important;
  }
  .bg-eroski-light{
      --bs-bg-opacity: 1;
      background-color: rgba(var(--bs-eroski-light-rgb),var(--bs-bg-opacity)) !important;
  }
  .bg-eroski-marcas{
      --bs-bg-opacity: 1;
      background-color: rgba(var(--bs-dark-eroski-rgb),var(--bs-bg-opacity)) !important;
  }
  .bg-dark-erk{
    background-color:#000 ;
  }
  .bg-section-gray{
    background-color: var(--bs-bg-gray-erk) 
   }
   .bg-familias{
    background-color: var(--bs-bg-familias-eroski) !important
   }

   .color-eroski-marcas{
    --bs-bg-opacity: 1;
    color:rgba(var(--bs-dark-eroski-rgb),var(--bs-bg-opacity)) !important;
   }

/*-------------------------------------------------------
 2. Imagen fondo principal
-------------------------------------------------------*/
.bg-rps-newyork {
  background-image: url(https://travelclub.s3.eu-west-1.amazonaws.com/web/sorteo-verano-2024/bg-playa.jpg);
  background-position: 40% 55%;
  background-size: cover;
  min-height: 300px
}

.bg-sorteo {
  background-image: url(https://travelclub.s3.eu-west-1.amazonaws.com/web/sorteo-verano-2024/bg-sorteo.png);
  background-position: center top;
  background-size: cover;
  min-height: 600px;
  background-color: #fff7eb;
}

/*-------------------------------------------------------
 3. Textos
-------------------------------------------------------*/

.erknov24 div , .erknov24 p, .erknov24 h1, .erknov24 h2, .erknov24 h3, .erknov24 .h3 , .erknov24 span, .erknov24 label, .erknov24 input, .erknov24 ul, .erknov24 li, .erknov24 button , .erknov24 a, .erknov24 .display-5{
  font-family: "PoppinsRegular" 
}

.title-rps {
  padding: 0px 3px 0px 3px;
}

.rps-oferta {
  border-radius: 50%;
  width: 200px;
  height: 200px;
}

.lh-08 {
  line-height: 0.8 !important
}

.lh-12 {
  line-height: 1.2 !important
}

.ls-1 {
  letter-spacing: 1px
}

.fs-rps-oferta {
  font-size: .75rem !important;
}

@media (min-width: 576px) {
  .w-25-sm {
    width: 25% !important;
  }
  .w-35-sm {
    width: 35% !important;
  }
  .w-40-sm {
    width: 40% !important;
  }
  .w-100-sm {
    width: 100% !important;
  }
  .display-sm-5 {
    font-size: 1.7rem !important;
    font-weight: 500;
  }
  .display-sm-6 {
    font-size: 1.4rem !important;
    font-weight: 500;
  }
.h-sm-5 {
    font-size: 0.7rem;
  }
  .bottom-sm-50p {
    bottom: 50px ;
  }

  .right-sm-n55 {
    right: -55px !important;
  }
}

@media (min-width: 768px) {
  .fs-rps-lg-oferta {
    font-size: 1rem !important;
  }

  .rps-lg-oferta {
    border-radius: 50%;
    width: 340px;
    height: 340px;
  }

  .display-md-5 {
    font-size: 2.5rem !important;
    font-weight: 500;
  }
  .display-md-6 {
    font-size: 2rem !important;
    font-weight: 500;
  }
.h-sm-5 {
    font-size: 1rem;
  }
  .w-50-md {
    width: 50% !important;
  }
}


@media (min-width: 992px) {
  .fs-rps-lg-oferta {
    font-size: 1rem !important;
  }

  .rps-lg-oferta {
    border-radius: 50%;
    width: 340px;
    height: 340px;
  }

  .display-lg-5 {
    font-size: 3rem !important;
    font-weight: 500;
  }
  .display-lg-6 {
    font-size: 2.5rem !important;
    font-weight: 500;
  }
.h-lg-5 {
    font-size: 1.25rem;
  }
}



/*-------------------------------------------------------
 4. Colores
-------------------------------------------------------*/

.text-eroski{
  color:var(--bs-eroski)
}

.bg-rps-orange {
  background-color: #ff8200;
}

.rps-destacado {
  color: #ff8200;
}

.bg-rps-turquesa {
  background-color: #00839b;
}

.rps-turquesa {
  color: #00839b;
}

.rps-navy {
  background-color: #0067ab;
}

.caja-codigo input.form-control {
  border: 1px dashed #0000004a;
  font-size:1.2rem !important
}

.caja-disclaimer{
  border: 1px solid #05879d;
  font-size:1.2rem !important
}

/*-------------------------------------------------------
 5. Posiciones absolutas
-------------------------------------------------------*/
.right-10p {
  right: 10px
}
.right-40 {
  right: 40%
}

.right-n30{
  right:-35px 
}

.right-flecha {
  left: 60px;
  transform: rotate(42deg);
}

.left-2 {
  left: 2%;
}

.left-45 {
  left: 45%;
}

.top-10p {
  top: 10px !important;
}

.start-1rem {
  left: 1rem !important;
}
.start-10p {
  left: 10px !important;
}

.top-20 {
  top: 20% !important;
}

.top-30 {
  top: 30% !important;
}

.topN-8 {
  top: -8px
}
.bottom-40p {
  bottom: 40px ;
}

.bottom-60p {
  bottom: 60px ;
}


.mt-n-05 {
  margin-top: -0.5rem;
}

.mt-n-015 {
  margin-top: -1.5rem
}

.mt-n-020 {
  margin-top: -2rem;
}

.mt-n-035 {
  margin-top: -3.5rem;
}

.mt-n-14 {
  margin-top: -14rem;
}

.flecha-1{
  position: absolute;
  inset: 0px;
  top: 0px;
  left: 0px;
  box-sizing: border-box;
  padding: 0px;
  border: medium none;
  margin: 0;
  top: 15px;
  left: 0px;
  display: block;
  width: 30px;
  height: 30px;
}

@media (max-width: 576px) {
  .w-15-xs{
    width:15%
  }
  .w-20-xs{
    width:20%
  }
  .w-25-xs{
    width:25%
  }
  .w-33-xs{
    width:33.33%
  }
  .w-40-xs{
    width:40%
  }
  .w-60-xs{
    width:60%
  }
  .w-100-xs{
    width:100%
  }
  #erroresCodigo.mensajes:not(.alert-recibo)::before {
    content: '\F33A';
    font-family: 'bootstrap-icons';
    font-size: 30px;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
    width: 100%;
    display: block;
    margin-bottom: 10px;
  }

  .mt-n-xs-10p {
    margin-top: -10px;
  }
  .fs-xxs{
    font-size:7px
  }

  .bottom-xs-30p {
    bottom: 30px ;
  }

  .bottom-xs-40p {
    bottom: 40px ;
  }
}

.w-25p{
  width: 25%
}

.w-50p{
  width: 50px
}

.w-70p{
  width: 70px
}

.w-80p{
  width: 80px
}

.w-100p{
  width: 100px
}

.w-320 {
  width: 330px
}
.h-150p{
  height:150px !important
}

@media (min-width: 768px) {
  .title-rps {
    padding: 0px 10px 0px 10px;
  }
  .left-md-5 {
    left: 5%;
  }

  .w-md-370 {
    width: 370px !important
  }
  .flecha-1-sm{
    position: absolute; 
    inset: 0px; 
    box-sizing: border-box; 
    padding: 0px; 
    border: medium none; 
    margin: 0; 
    top: 15px; 
    left: 0px;
    display: block; 
    width: 60px; 
    height: 60px;
  }
  .mt-n-md-2 {
    margin-top: -2rem !important;
  }

  .bottom-md-60p {
    bottom: 60px ;
  }
  .right-md-n90{
    right:-90px !important
  }
}

@media (min-width: 992px) {
  .w-100-lg-p{
    width: 100px !important
  }
  .w-250-lg-p{
    width: 250px !important
  }
  .w-350-lg-p{
    width: 350px !important
  }
  .w-400-lg-p{
    width: 400px !important
  }
  .left-lg-45 {
    left: 45%;
  }
  .mt-n-lg-05 {
    margin-top: -0.5rem;
  }

  .bottom-lg-30p{
    bottom: 30px !important;
  }

  .bottom-lg-50p{
    bottom: 50px !important;
  }
  .right-lg-n60{
    right:-60px !important
  }
  .bottom-lg-90p{
    bottom: 90px !important;
  }
  .flecha-1-md{
    position: absolute; 
    inset: 0px; 
    box-sizing: border-box; 
    padding: 0px; 
    border: medium none; 
    margin: 0; 
    top: 15px; 
    left: 20px;
    display: block; 
    width: 80px; 
    height: 80px;
  }
}

@media (min-width: 1200px) {
  .mt-n-lg-035 {
    margin-top: -3.5rem;
  }
  .flecha-1-lg{
    position: absolute; 
    inset: 0px; 
    box-sizing: border-box; 
    padding: 0px; 
    border: medium none; 
    margin: 0; 
    top: 15px; 
    left: -90px;
    display: block; 
    width: 80px; 
    height: 80px;
  }
  .mt-n-lg-4 {
    margin-top: -4rem !important;
  }
  .right-xl-n60{
    right:-60px !important
  }
  .bottom-xl-90p{
    bottom: 90px !important;
  }
  .bottom-xl-50p{
    bottom: 50px !important;
  }
}

.rotate-70{
    transform: rotate(40deg);
}

.rotate-n35{
  transform: rotate(-35deg);
}

.left-0{
    left:0 !important
}

.right-0{
    right:0 !important
}

.display-1.display-especial {
  z-index:9;
}

@media (max-width: 364px) {
  .display-1.display-especial {
    font-size: calc(1.625rem + 3vw);
  }
}

@media (min-width: 1200px) {
  .display-1.display-especial {
    font-size: 6rem;
  }
}

@media (min-width: 1400px) {
  .flecha-1-xxl{
    position: absolute; 
    inset: 0px; 
    box-sizing: border-box; 
    padding: 0px; 
    border: medium none; 
    margin: 0; 
    top: 15px; 
    left: -90px;
    display: block; 
    width: 80px; 
    height: 80px;
  }
}

.shadow-premios{
  filter: drop-shadow( 1px 2px 2px #00000094);
}

.bg-playero{
  background-color: #fff7eb;
}
.bg-playero2 {
  background-color: #feedd6;
}

.azul_sorteo_2{
  color:#0067ab
}

.azul-sorteo-3{
  color:#36add6
}

.rojo-sorteo{
    color: #d6101b;
}

.text-shadow-0{
  text-shadow:none !important
}

.rotate-n10 {
  transform: rotate(-10deg);
}

.caja-codigo{
    padding: 1.8rem;
    border: none;
   background-color: #e8e8e8;
}



.rotate-5 {
  transform: rotate(5deg);
}



.verde-sorteo{
  color:#3d7500
}



.mt-n-4{
  margin-top:-4rem !important
}


.caja-vigencia {
  padding: 2rem 2rem;
}

/* FORMULARIO */

.frm-tipo-1 .form-control.form-control-solid {
  background-color: transparent !important;
  box-shadow: inset 0 1px 16px #b7b3b121 !important;
  border: 1px solid #d2c7c73d !important;
}

.frm-tipo-1 .shadow-sm {
  -webkit-box-shadow: 0.015rem 0.015rem 0.215rem rgba(0, 0, 0, 0.15) !important;
  box-shadow: 0.015rem 0.015rem 0.215rem rgba(0, 0, 0, 0.15) !important;
}

.frm-tipo-1 .card {
  border: 1px solid rgba(0,0,0,.085);
  border-radius: .8375rem;
}

.widget-product-title {
  margin-bottom: .25rem;
  font-size: .875rem;
  font-weight: 500;
}

.widget-product-meta {
  font-size: .875rem;
}

.frm-tipo-1 .btn.btn-primary, .frm-tipo-1 .btn.btn-secondary  {
  border-radius: .65rem !important;
  font-size: 1rem !important;
  height: auto;
  padding: 1rem 0.95rem !important;
  line-height: 0.6rem !important;
  min-width: 2.5rem !important;
}

.frm-tipo-1 .btn-sm.btn-primary, .frm-tipo-1 .btn-sm.btn-secondary {
  border-radius: .20rem !important;
  font-size: 0.65rem !important;
  height: auto;
  padding: 0.35rem 0.35rem !important;
  line-height: 0.5rem !important;
  min-width: 1.5rem !important;
  font-weight: 500;
}

.frm-tipo-1 .btn-mapa.btn-primary, .frm-tipo-1 .btn-mapa.btn-secondary {
  border-radius: .20rem !important;
  font-size: 0.75rem !important;
  height: auto;
  padding: 0.45rem 0.45rem !important;
  line-height: 0.5rem !important;
  min-width: 1.5rem !important;
  font-weight: 500;
}

.frm-tipo-1 .bg-operativa {
  background-color: #fdf4d64f !important;
  border: 2px dashed #e8c444 !important;
}

.aside-checkout-1.sticky-top {
  position: sticky;
  top: 100px;
  z-index:9;
}

.punto-recogida-seleccionado{
  list-style:none;
}
.browser-puntos .punto{
  padding:1px 10px
}
.browser-puntos .punto:nth-child(even) {
  background-color: #8684840f;
  box-shadow: none;
  border: none;
}

.puntos-title::before {
  content: "";
  width: 3px;
  height: 20px;
  background:#1c89c7;
  position: absolute;
  inset-inline-start: 11px;
  display: block;
}


figure.figure-regalo {
  height: 240px;
  align-items: center;
  display: flex;
  justify-content: center;
  margin-bottom: 0px !important;
  border-radius: 15px;
  margin-top: 1rem;
  overflow: hidden;
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
}


figure.figure-regalo img.pic-1 {
  object-fit: contain;
  max-height: 100%;
  border: none !important;
  border-radius: 15px;
  transform: scale(1.05);
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;

}
.frm-tipo-1 .form-control {
  font-size: 0.92rem;
}

.frm-tipo-1 .form-floating > label{
  opacity: 0.8;
  font-weight: 500 !important;
}

.frm-tipo-1 .form-floating > label i{
  font-size: 1rem !important;
  opacity: 0.8;
}

.frm-tipo-1 .form-floating > .form-control:focus ~ label i, .frm-tipo-1 .form-floating > .form-control:not(:placeholder-shown) ~ label i, .frm-tipo-1 .form-floating > .form-select ~ label i {
font-size:1rem !important
}

.frm-tipo-1 .form-floating > .form-select {
  line-height: 1.25;
}

.frm-tipo-1 .form-floating > .form-select.form-control:focus {
  line-height: 1.25;
}

.frm-tipo-1 .form-floating > textarea.form-control ~ label{
  align-items: flex-start !important;
}

.frm-tipo-1 .form-floating > textarea.form-control:focus ~ label {
align-items: flex-start !important;
}

.caja-desc-regalo {
  padding: 0.8rem;
  border-radius: 15px;
  background-color: #fdf4d64f !important;
  border: 1px solid #fff5d3 !important;
  max-height: 240px !important;
  margin-top:1rem;
}

@media (min-width: 576px) {
  .caja-desc-regalo {
    min-height:100px
  }
}


.caja-desc-regalo  p{
  line-height: 1;
  margin-bottom:0 !important;

}

.app-cards .card{
  background-color: #ffffff7d;
  box-shadow:none !important
}

.ht-80{
  height:80px
}

.card-img-scale .wrap-img-scale {
  -webkit-transform: translateZ(0);
  transform: translateZ(0);
  position: relative;
  overflow: hidden;
}

.card-img-scale .img-scale {
  -webkit-transition: all 0.5s ease;
  transition: all 0.5s ease;
  -webkit-transform: scale(1.001);
  transform: scale(1.001);
}

.card-img-scale:hover .img-scale {
  -webkit-transform: scale(1.04);
  transform: scale(1.04);
}


/* Tooltips */

.tooltip.show {
  opacity: 1;
}
.tooltip-inner {
  max-width: 300px;
  /* If max-width does not work, try using width instead */
  width: 300px; 
  padding: 1rem 1rem;
  color: #fff;
  text-align: center;
  background-color: #373f50;
  border-radius: 1rem;
  box-shadow: 5px 5px 18px #0704006e;
}
.bs-tooltip-top .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="top"] .tooltip-arrow::before {
  top: -1px;
  border-width: 0.4rem 0.4rem 0;
  border-top-color: #373f50 !important;
}

.bs-tooltip-end .tooltip-arrow::before, .bs-tooltip-auto[data-popper-placement^="right"] .tooltip-arrow::before {
  right: -1px;
  border-width: 0.4rem 0.4rem 0.4rem 0;
  border-right-color: #373f50 !important;
}

.border-doc {
  border: 1px solid #a4a4a4 !important;
  border-radius: 10px;
}

@media (min-width: 768px) {
  .tooltip-inner {
    max-width: 450px !important;
    /* If max-width does not work, try using width instead */
    width: 450px !important; 
  }
}

.numparticipaciones {
  color: #1e2e37ed;
  text-shadow: 1px 2px 3px #dd1d1dd6;
  font-family: 'Pacifico';;
}


#erroresCodigo.mensajes{
  border-radius: 0;
  background-color: #b1050c;
  color: #fff;
  font-size: 18px !important;
}
#erroresCodigo.mensajes:not(.alert-recibo){
  line-height:1.5rem
}

#erroresCodigo.mensajes:not(.alert-recibo)::before{
  content:'\F33A';
  font-family:  'bootstrap-icons';
  font-size:30px;
  position:absolute;
  top:10px;
  left:20px
}

.anim3 {
  animation: float2 2s infinite ease-in-out;
}

.btn-primary:disabled, .btn-primary.disabled {
  color: #000;
  background-color: #DDEBF2;
  border: none;
  color: gray;
}

#mapa {
  border-radius: 15px;
  margin-bottom: 20px;
}

.gm-ui-hover-effect{
  background-color: #0067ab !important;
  border-radius: 50%;
  opacity:1;
  width: 28px !important;
  height: 28px !important;
  top: -10px !important;
  right: -15px !important;
}

.gm-ui-hover-effect > span {
  width: 24px !important;
  height: 24px !important;
  margin: 1px 2px !important;
  background-color: #fff !important;
}

.gm-style .gm-style-iw {
  max-width:250px !important;
  min-width:250px !important;
  }

@media (min-width: 576px) {
  .gm-style .gm-style-iw {
  max-width:320px !important;
  min-width:320px !important;
  }
}
.gm-style .gm-style-iw-c {
  overflow:visible !important
}

.modal-dialog {
  max-width: 530px;
}

@media (min-width: 992px) {
  .modal-lg, .modal-xl {
    max-width: 800px !important;
  }
}

.modal-dialog-scrollable .modal-body {
  overflow-y: visible;
}

.img-ticket {
  object-fit: contain;
  border-radius: 10px;
  box-shadow: 1px 2px 4px #7b7878;
}

/* @media (max-width: 576px) {
  .img-ticket {
    width:40% !important
  }
} */

.max-w-220p{
  max-width:220px !important
}

.modal-content {
  max-height: fit-content !important;
  padding: 1.5rem;
  border-radius:1rem
}

/*ERRORES página RECIBO */

.recibo #erroresCodigo.mensajes {
  border-radius: 1rem;
  background-color: #db4d4d0d;
  color: #994226;
  font-size: 20px !important;
  box-shadow: none;
  border: 2px dashed #994226;
}

.recibo #erroresCodigo.mensajes p,.recibo #successCodigo.mensajes p {
  margin-bottom:0
}

/* .recibo #erroresCodigo.mensajes::before {
  content: '\F33A';
  font-family: 'bootstrap-icons';
  font-size: 40px;
  position: absolute;
  top: 15%;
  left: 20px;
} */


.recibo #successCodigo.mensajes {
  border-radius: 1rem;
  background-color: #cbf9941c;
  color: #4a9926;
  font-size: 20px !important;
  box-shadow: none;
  border: 2px dashed #4a9926;
}

/* .recibo #successCodigo.mensajes::before {
  content: '\F26A';
  font-family: 'bootstrap-icons';
  font-size: 40px;
  position: absolute;
  top: 15%;
  left: 20px;
} */

.frm-tipo-1 .form-floating > .form-control:focus, .frm-tipo-1 .form-floating > .form-control:not(:placeholder-shown) {
  padding-top: 1.47rem;
  padding-bottom: .5rem;
}

.line-clamp4{
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  line-clamp: 4;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
}

.card-img-top {
  object-fit: contain;
  max-height: 250px !important;
  object-position: top;
}

.card-top{
  height: 250px;
}



.secondary-button::after, .secondary-button-div::after {
  content: '';
  background: url("https://travelclub.s3.eu-west-1.amazonaws.com/imagenes/eroski/chevron.svg") no-repeat;
    background-position-x: 0%;
    background-position-y: 0%;
    background-size: auto;
  background-size: contain;
  background-position: center center;
  display: inline-block;
  height: 1rem;
  position: relative;
  right: 0;
  vertical-align: middle;
  width: 1rem;
  -webkit-transition: all ease-out .05s;
  -moz-transition: all ease-out .05s;
  -o-transition: all ease-out .05s;
  -ms-transition: all ease-out .05s;
  transition: all ease-out .05s;
}

.secondary-button:hover::after, .secondary-button-div:hover::after {
  position: relative;
  right: -.4rem;
}

.secondary-button {
  position: relative;
}

.caja-vigencia::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: 25px;
  background: url("https://travelclub.s3.eu-west-1.amazonaws.com/imagenes/eroski/box-gradient.gif") repeat-x #e2001a;
}

.product-card {
  border-color: #fff !important;
  box-shadow: 0 .3rem 1.525rem -.375rem rgba(0,0,0,.1);
  z-index: 10;
}

.pro-img-box img {
  border: none !important;
}

.pro-img-box {
  position: relative;
  padding:10px;
  margin-top:15px;
}


.object-fit-container {
  display: flex;
  align-items: center;
  justify-content: center;
  height:250px !important;
}

.object-fit-container img, .object-fit-container video {
max-width:250px;
border-radius: 10px;
}

.object-fit-cover {
  -o-object-fit: cover !important;
  object-fit: cover !important;
}


.product-title {
  min-height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
}

.text-dark {
  --bs-text-opacity: 1;
  color: rgb(7, 13, 28) !important;
}

.font-times-new-roman {
  font-family: "Times New Roman";
  font-size: 4.41rem;
  font-weight: 900;
}



@media (min-width: 576px) and (max-width: 767.98px) {
  .title-sm{
    font-size: calc(2.3rem + 0.6vw) !important;
  }
  .font-playfair-display-italic-extrabold {
    font-size: calc(2.375rem + 0.93vw);
  }
  .sub-title-sm{
    font-size: calc(1.3rem + 0.6vw) !important;
  }
  .text-oferta-sm{
    font-size: calc(1.3rem + 0.6vw) !important;
  }
}



@media (min-width: 768px) and (max-width: 991.98px){
  .sub-title-sm{
    font-size: calc(2rem + 0.6vw) !important;
  }
  .title-md{
    font-size: calc(3.5rem + 0.6vw) !important;
  }
  .font-playfair-display-italic-extrabold {
    font-size: calc(3.675rem + 0.93vw);
  }
    .text-oferta-md{
    font-size: calc(1.3rem + 0.6vw) !important;
  }
}


.bodegon-julio-25 {
  top: 130px;
  right: 30px;
}

.claim-julio-25 {

  transform: translateX(-15px);
}