/* ============ Home sections ============ */
#site-content{
  width:100%;
  max-width:none;
  margin:0;
  padding:0;
}

.section{padding:70px 0}
.section__head{text-align:center;margin:0 auto 26px;max-width:760px}
.section__title{margin:0 0 10px;font-size:34px;line-height:1.15;color:var(--text)}
.section__subtitle{margin:0;color:var(--muted);font-weight:600}

.section__title{
  position:relative;
  display:inline-block;
}
.section__title::after{
  content:"";
  display:block;
  height:4px;
  width:72px;
  margin:14px auto 0;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(199,177,110,0), rgba(199,177,110,.95), rgba(199,177,110,0));
  transform:scaleX(.2);
  transform-origin:center;
  opacity:0;
  transition: transform .7s var(--ease-out), opacity .7s var(--ease-out);
}
.section__title.reveal.is-visible::after{
  transform:scaleX(1);
  opacity:1;
}

/* ============ HERO (background-image via --bg) ============ */
.hero{position:relative;background:#000}
.hero__slider{position:relative}
.hero__slider .swiper-wrapper,
.hero__slider .swiper-slide{
  height:100vh;
  min-height:100vh;
}
@media (max-width:980px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height:100svh;
    min-height:100svh;
  }
}

.hero__slide{
  height:100%;
  width:100%;
  position:relative;
  overflow:hidden;
  background:
    linear-gradient(180deg, rgba(0,0,0,.30), rgba(0,0,0,.70)),
    var(--bg) center/cover no-repeat;
  border:0;
  outline:0;
  box-shadow:none;
}

.hero__overlay{
  position:absolute;
  inset:0;
  z-index:1;
  background: radial-gradient(1100px 520px at 28% 28%, rgba(199,177,110,.18), transparent 62%);
  pointer-events:none;
}

.hero__content{
  position:relative;
  z-index:2;
  height:100%;
  display:flex;
  flex-direction:column;
  justify-content:center;
  color:#fff;
  padding-top:96px;
  padding-bottom:36px;
}

.hero__tag{
  display:inline-flex;
  width:fit-content;
  background:rgba(199,177,110,.16);
  border:1px solid rgba(199,177,110,.35);
  color:var(--brand);
  padding:7px 12px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:1.8px;
  margin:0 0 14px;
  text-transform:uppercase;
  font-size:12px;
}

.hero__title{margin:0 0 14px;font-size:52px;line-height:1.05;max-width:760px}
.hero__text{margin:0 0 22px;max-width:620px;color:rgba(255,255,255,.86);font-weight:650}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap}

.hero__nav{
  position:absolute;
  left:0;
  right:0;
  bottom:18px;
  z-index:5;
  display:flex;
  justify-content:center;
  gap:10px;
  pointer-events:none;
}
.hero__btn{
  pointer-events:auto;
  width:44px;height:44px;border-radius:999px;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(17,17,17,.45);
  backdrop-filter: blur(10px);
  cursor:pointer;
  transition: background .2s ease,border-color .2s ease,transform .15s ease;
}
.hero__btn:hover{
  border-color:rgba(199,177,110,.55);
  background:rgba(199,177,110,.18);
}
.hero__btn:active{transform:translateY(1px)}
.hero__btn--prev::before,
.hero__btn--next::before{
  content:"";
  display:block;
  width:10px;height:10px;
  margin:auto;
  border-right:3px solid #fff;
  border-bottom:3px solid #fff;
}
.hero__btn--prev::before{transform:rotate(135deg)}
.hero__btn--next::before{transform:rotate(-45deg)}

@media (max-width:980px){
  .hero__content{padding-top:82px;padding-bottom:22px}
  .hero__title{font-size:32px}
  .hero__text{font-size:14px}
  .hero__btn{width:40px;height:40px}
  .hero__cta{flex-direction:column;align-items:flex-start}
  .hero__cta .btn{width:100%;justify-content:center}
}

/* ============ Destinos (dark section + oval swiper) ============ */
.section--destinos{background:#0f0f10}
.section--destinos .section__title,
.section--destinos .section__subtitle{color:#fff}
.section--destinos .section__subtitle{color:rgba(255,255,255,.75)}

.destinos-swiper{position:relative;padding:10px 0 6px}
.destinos-swiper .swiper-slide{height:auto}

.destinos-swiper__nav{
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 14px;
  z-index:50;
  pointer-events:none;
  margin:0;
}
.destinos-swiper__btn{
  pointer-events:auto;
  width:52px;
  height:52px;
  border-radius:999px;
  border:1px solid rgba(199,177,110,.55);
  background: rgba(8,8,10,.35);
  backdrop-filter: blur(10px);
  -webkit-backdrop-filter: blur(10px);
  box-shadow: 0 18px 45px rgba(199,177,110,.12);
  cursor:pointer;
  transition: transform .15s ease, background .2s ease, box-shadow .2s ease;
}
.destinos-swiper__btn:hover{
  background: rgba(199,177,110,.16);
  box-shadow: 0 22px 60px rgba(199,177,110,.22);
}
.destinos-swiper__btn:active{transform: translateY(1px)}
.destinos-swiper__btn--prev::before,
.destinos-swiper__btn--next::before{
  content:"";
  display:block;
  width:12px;height:12px;
  margin:auto;
  border-right:3px solid #fff;
  border-bottom:3px solid #fff;
}
.destinos-swiper__btn--prev::before{transform:rotate(135deg)}
.destinos-swiper__btn--next::before{transform:rotate(-45deg)}

.destino-oval{
  display:block;
  position:relative;
  overflow:hidden;
  border-radius:28px;
  min-height:340px;
  background:#000;
  border:1px solid rgba(255,255,255,.10);
  transform: translateZ(0);
  z-index:1;
}
.destino-oval__img{position:absolute;inset:0;z-index:0}
.destino-oval__img img{
  width:100%;height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transform: scale(1.02);
  transition: transform .8s var(--ease-out);
}
.destino-oval__overlay{
  position:absolute;inset:0;z-index:1;
  background: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.78));
}
.destino-oval__info{
  position:absolute;left:16px;right:16px;bottom:16px;
  z-index:3;
  padding:16px;
  border-radius:20px;
  background: rgba(8,8,10,.42);
  border: 1px solid rgba(255,255,255,.14);
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  transition: transform .35s var(--ease-out), border-color .35s ease, background .35s ease;
}
.destino-oval__top{display:flex;align-items:center;justify-content:space-between;gap:10px}
.destino-oval__title{margin:0;color:#fff;font-weight:1000;letter-spacing:1.4px;font-size:18px}
.destino-oval__arrow{
  width:48px;
  height:48px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background: rgba(199,177,110,.95);
  color:#111;
  font-weight:1000;
  font-size:28px;
  line-height:1;
  padding-bottom:2px;
  transition: transform .25s var(--ease-out);
}
.destino-oval__desc{
  margin:10px 0 0;
  color: rgba(255,255,255,.80);
  font-weight:650;
  line-height:1.4;
  max-height:0;
  opacity:0;
  overflow:hidden;
  transition: max-height .55s cubic-bezier(.22,.61,.36,1), opacity .38s ease;
}
.destino-oval:hover .destino-oval__img img{transform: scale(1.08)}
.destino-oval:hover .destino-oval__info{
  transform: translateY(-4px);
  border-color: rgba(199,177,110,.40);
  background: rgba(8,8,10,.52);
}
.destino-oval:hover .destino-oval__arrow{transform: translateY(-1px) scale(1.03)}
.destino-oval:hover .destino-oval__desc{max-height:180px;opacity:1}

/* single outer halo (simple) */
.destino-oval::after{
  content:"";
  position:absolute;
  inset:-24px;
  border-radius: calc(28px + 24px);
  z-index:-1;
  pointer-events:none;
  background: radial-gradient(closest-side, rgba(199,177,110,.85), rgba(199,177,110,0) 68%);
  filter: blur(26px);
  opacity:0;
  transition: opacity .22s ease;
}
.destino-oval:hover::after{opacity:1}

@media (max-width:980px){
  .section{padding:48px 0}
  .section__title{font-size:26px}
  .destino-oval{min-height:360px}
  .destinos-swiper__btn{width:42px;height:42px}
}

/* ============ Tours grid (same as before) ============ */
.tours-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}
.tour-card__media{position:relative;display:block}
.tour-card__img{height:220px;background: var(--bg) center/cover no-repeat}
.tour-card__from{
  position:absolute;left:14px;top:14px;
  background:rgba(199,177,110,.95);
  color:#111;
  padding:8px 10px;
  border-radius:999px;
  font-weight:900;
  border:1px solid rgba(0,0,0,.2);
}
.tour-card__body{padding:14px 14px 16px}
.tour-card__rating{color:var(--brand);font-weight:900;letter-spacing:1px}
.tour-card__title{margin:8px 0 10px;font-size:18px;line-height:1.25}
.tour-card__meta{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:10px;color:var(--muted);font-weight:700}
@media (max-width:980px){.tours-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.tours-grid{grid-template-columns:1fr}}

/* Why */
.why{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:22px;
  align-items:stretch;
}
.why__img{height:100%;min-height:420px;background:var(--bg) center/cover no-repeat}
.why__content{padding:10px}
.why__title{margin:0 0 10px;font-size:28px}
.why__text{margin:0 0 18px;color:var(--muted);font-weight:650}
.why__features{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.why__feature{padding:14px}
.why__feature h4{margin:0 0 6px}
.why__feature p{margin:0;color:var(--muted);font-weight:650}
@media (max-width:980px){
  .why{grid-template-columns:1fr}
  .why__img{min-height:260px}
  .why__features{grid-template-columns:1fr}
}

/* Styles */
.section--styles{background:#0f0f10}
.section--styles .section__title,
.section--styles .section__subtitle{color:#fff}
.section--styles .section__subtitle{color:rgba(255,255,255,.75)}
.styles-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.style-card{position:relative;min-height:220px;color:#fff}
.style-card__img{position:absolute;inset:0;background:var(--bg) center/cover no-repeat;transition:transform .35s ease}
.style-card__overlay{position:absolute;inset:0;background:linear-gradient(180deg, rgba(0,0,0,.15), rgba(0,0,0,.72))}
.style-card__info{
  position:absolute;left:14px;right:14px;bottom:14px;
  display:flex;align-items:center;justify-content:space-between;gap:10px;
  padding:14px 14px;border-radius:16px;
  background:rgba(17,17,17,.35);
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(10px);
}
.style-card__title{margin:0;font-size:18px}
.style-card__arrow{width:42px;height:42px;border-radius:999px;display:grid;place-items:center;background:rgba(199,177,110,.95);color:#111;font-weight:900}
.style-card:hover .style-card__img{transform:scale(1.08)}
@media (max-width:1100px){.styles-grid{grid-template-columns:repeat(2,1fr)}}
@media (max-width:640px){.styles-grid{grid-template-columns:1fr}}

/* CTA */
.cta{padding:0 0 90px}
.cta__inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px;
  background: linear-gradient(135deg, rgba(199,177,110,.18), rgba(0,0,0,.02));
  border:1px solid rgba(199,177,110,.35);
}
.cta__title{margin:0 0 8px;font-size:24px}
.cta__text{margin:0;color:var(--muted);font-weight:650}
.cta__actions{display:flex;gap:10px;flex-wrap:wrap}
@media (max-width:900px){
  .cta__inner{flex-direction:column;align-items:flex-start}
}
/* ===== Desktop first-view tuning (show Destinos title) ===== */

/* Desktop: hero a 80vh (no 100vh) */
@media (min-width: 981px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 80vh !important;
    min-height: 80vh !important;
  }

  /* Make arrows visible in first view */
  .hero__nav{
    bottom: 22px !important;
  }

  /* Slightly tighter content so it doesn't push down */
  .hero__content{
    padding-top: 92px !important;
    padding-bottom: 30px !important;
  }
}

/* Mobile/tablet: also not full screen (so next section appears) */
@media (max-width: 980px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 78svh !important;
    min-height: 78svh !important;
  }
  .hero__nav{ bottom: 14px !important; }
  .hero__content{ padding-top: 82px !important; padding-bottom: 18px !important; }
}

/* Make Destinos title appear closer to hero */
.section--destinos{ padding-top: 54px; }
@media (max-width:980px){ .section--destinos{ padding-top: 34px; } }
/* ===== HERO sizing final: desktop full, mobile shows Destinos title ===== */
@media (min-width: 981px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 92vh !important;
    min-height: 92vh !important;
  }
}

@media (max-width: 980px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 78svh !important;
    min-height: 78svh !important;
  }
  .section--destinos{ padding-top: 22px !important; }
}
/* Hero arrows a bit higher */
.hero__nav{
  bottom: 26px !important;
}
@media (max-width:980px){
  .hero__nav{ bottom: 18px !important; }
}/* ===== Home: HERO behind header (removes white gap behind header) ===== */
body.home{
  --header-h: 78px;
}

@media (max-width: 980px){
  body.home{ --header-h: 70px; }
}

/* sube el hero detrás del header */
body.home .hero{
  margin-top: calc(var(--header-h) * -1);
}

/* compensa para que el texto no quede tapado por el header */
body.home .hero__content{
  padding-top: calc(96px + var(--header-h));
}

@media (max-width: 980px){
  body.home .hero__content{
    padding-top: calc(82px + var(--header-h));
  }
}
/* Hero arrows a bit higher */
.hero__nav{ bottom: 30px !important; }
@media (max-width:980px){
  .hero__nav{ bottom: 20px !important; }
}
/* ===== Desktop HERO full screen (all monitors) ===== */
@media (min-width: 981px){
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 100vh !important;
    min-height: 100vh !important;
  }

  /* ensure slide fills the height */
  .hero__slide{
    height: 100% !important;
    min-height: 100% !important;
  }

  /* keep arrows visible */
  .hero__nav{
    bottom: 22px !important;
  }
}
/* ===== Mobile: Destinos without reveal (no "empty" feeling) ===== */
@media (max-width: 980px){
  .section--destinos .reveal{
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
  }
}
/* ===== Tours recomendados: premium cards (desktop hover + mobile usable) ===== */

/* make media relative for overlay */
.tour-card__media{
  position:relative;
  overflow:hidden;
  border-radius:18px;
}

/* overlay + button */
.tour-card__overlay{
  position:absolute;
  inset:0;
  background: linear-gradient(180deg, rgba(0,0,0,.05), rgba(0,0,0,.78));
  opacity:0;
  transition: opacity .28s var(--ease-out);
  z-index:2;
}

.tour-card__cta{
  position:absolute;
  left:14px;
  right:14px;
  bottom:14px;
  z-index:3;
  display:flex;
  gap:10px;
  justify-content:space-between;
  align-items:center;
  opacity:0;
  transform: translateY(10px);
  transition: opacity .28s var(--ease-out), transform .28s var(--ease-out);
}

.tour-card__cta .btn{
  padding:10px 14px;
  font-size:13px;
}

/* hover glow */
.tour-card:hover{
  box-shadow: 0 28px 90px rgba(199,177,110,.16);
}
.tour-card:hover .tour-card__overlay{
  opacity:1;
}
.tour-card:hover .tour-card__cta{
  opacity:1;
  transform: translateY(0);
}

/* image zoom */
.tour-card__img{
  transition: transform .9s var(--ease-out), filter .9s var(--ease-out);
}
.tour-card:hover .tour-card__img{
  transform: scale(1.08);
  filter: saturate(1.08) contrast(1.04);
}

/* nicer stars */
.tour-card__rating{
  color: var(--brand);
  text-shadow: 0 10px 30px rgba(199,177,110,.20);
}

/* MOBILE/TABLET: no hover, keep button visible & tap effects */
@media (max-width: 980px){
  .tour-card__overlay{
    opacity:1;
    background: linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.70));
  }
  .tour-card__cta{
    opacity:1;
    transform:none;
  }
  .tour-card:active{
    transform: translateY(-2px);
  }
  .tour-card:active .tour-card__img{
    transform: scale(1.04);
  }
}
/* ===== Destinos: more black area + longer cards (responsive) ===== */

/* more black band (desktop) */
.section--destinos{
  padding-top: 88px;
  padding-bottom: 88px;
}

/* cards a bit longer/taller on desktop */
.destino-oval{
  min-height: 380px;
}

/* tablet */
@media (max-width: 1100px){
  .section--destinos{
    padding-top: 72px;
    padding-bottom: 72px;
  }
  .destino-oval{
    min-height: 360px;
  }
}

/* mobile */
@media (max-width: 980px){
  .section--destinos{
    padding-top: 60px !important;
    padding-bottom: 60px !important;
  }
  .destino-oval{
    min-height: 340px !important;
  }
}
/* ===== Destinos: head higher + cards taller (responsive) ===== */
.section--destinos .section__head{
  margin-bottom: 18px; /* menos espacio debajo del título */
}

/* sube un poco el título/subtítulo (más pegado arriba) */
.section--destinos .section__title{
  margin-top: -8px;
}
.section--destinos .section__subtitle{
  margin-top: -2px;
}

/* cards más altas (vertical) */
.destino-oval{
  min-height: 430px; /* desktop */
}

@media (max-width: 1100px){
  .destino-oval{ min-height: 400px; }
}

@media (max-width: 980px){
  .section--destinos .section__head{ margin-bottom: 14px; }
  .section--destinos .section__title{ margin-top: -4px; }
  .destino-oval{ min-height: 360px !important; }
}
/* ===== Destinos: head higher (natural) + taller cards, responsive ===== */

/* reduce empty space under head so cards get more room */
.section--destinos .section__head{
  margin-bottom: 14px;
}

/* make head feel higher inside the black area */
.section--destinos{
  padding-top: 96px;   /* más arriba */
  padding-bottom: 96px;
}

/* cards taller (vertical) */
.destino-oval{
  min-height: 460px;   /* desktop */
}

/* tablet */
@media (max-width: 1100px){
  .section--destinos{
    padding-top: 78px;
    padding-bottom: 78px;
  }
  .destino-oval{
    min-height: 420px;
  }
}

/* mobile */
@media (max-width: 980px){
  .section--destinos{
    padding-top: 64px !important;
    padding-bottom: 64px !important;
  }
  .section--destinos .section__head{
    margin-bottom: 12px;
  }
  .destino-oval{
    min-height: 380px !important;
  }
}
/* Mobile: destinos a bit taller */
@media (max-width: 980px){
  .destino-oval{
    min-height: 420px !important;
  }
}
/* Mobile: stable HERO (no warp) but NOT full screen */
@media (max-width: 980px){
  .hero__slider{ overflow:hidden; }

  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 78svh !important;
    min-height: 78svh !important;
  }

  .hero__slide{
    height: 100% !important;
    min-height: 100% !important;
  }

  .hero__nav{ bottom: 14px !important; }
}
/* ===== Mobile: reduce jump + remove purple glow line between HERO and Destinos ===== */
@media (max-width: 980px){
  /* More stable height on many browsers (dvh), fallback svh */
  .hero__slider .swiper-wrapper,
  .hero__slider .swiper-slide{
    height: 680px !important;
    min-height: 680px !important;
  }
  @supports not (height: 1dvh){
    .hero__slider .swiper-wrapper,
    .hero__slider .680px78svh !important;
      min-height: 680px !important;
    }
  }

/* ===== Tours recomendados: cards más largas (SOLO tamaño) ===== */
.section--tours .tour-card__img{
  height: 320px; /* ajusta: 300 / 320 / 340 */
}

@media (max-width: 980px){
  .section--tours .tour-card__img{ height: 300px; }
}
@media (max-width: 640px){
  .section--tours .tour-card__img{ height: 320px; }
}
  }

  /* Clean seam: no glow/lines */
  .hero{ box-shadow: none !important; }
  .section--destinos{ box-shadow: none !important; }

  /* If any border shows, neutralize it */
  .section--destinos{ border-top: 0 !important; }

  /* Kill any accidental purple-ish highlight */
  .cta__inner{ background: linear-gradient(135deg, rgba(199,177,110,.18), rgba(0,0,0,.02)) !important; }
}
/* ===== Tours recomendados: cards más largas (SOLO tamaño) ===== */
.section--tours .tour-card__img{
  height: 320px; /* ajusta: 300 / 320 / 340 */
}

@media (max-width: 980px){
  .section--tours .tour-card__img{ height: 300px; }
}
@media (max-width: 640px){
  .section--tours .tour-card__img{ height: 320px; }
}
/* =========================================================
   WHY PREMIUM — Routes of Peru
   ========================================================= */

.section--why{
  position: relative;
  background:
    radial-gradient(900px 380px at 15% 10%, rgba(199,177,110,.10), transparent 60%),
    radial-gradient(900px 420px at 85% 85%, rgba(199,177,110,.08), transparent 60%),
    linear-gradient(180deg, #faf8f2 0%, #f6f1e2 100%);
  overflow: hidden;
}

.why-premium{
  display: grid;
  gap: 28px;
  align-items: stretch;
}

.why-premium__intro{
  position: relative;
  padding: 30px 32px;
  border-radius: 24px;
  background:
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,248,230,.92));
  border: 1px solid rgba(199,177,110,.24);
  box-shadow:
    0 18px 45px rgba(0,0,0,.06),
    0 0 0 1px rgba(255,255,255,.45) inset;
}

.why-premium__intro::before{
  content:"";
  position:absolute;
  inset:0;
  border-radius:inherit;
  pointer-events:none;
  background:
    radial-gradient(500px 180px at 15% 0%, rgba(199,177,110,.14), transparent 60%);
}

.why-premium__badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:10px 16px;
  margin-bottom:16px;
  border-radius:999px;
  font-weight:900;
  letter-spacing:.8px;
  font-size:12px;
  color:#111;
  background: linear-gradient(180deg, #f7e7b5 0%, #d7bb69 100%);
  border:1px solid rgba(0,0,0,.08);
  box-shadow: 0 10px 30px rgba(199,177,110,.22);
}

.why-premium__title{
  margin:0 0 14px;
  font-size:34px;
  line-height:1.15;
  color:#111;
}

.why-premium__text{
  margin:0;
  max-width:900px;
  color:rgba(17,17,17,.78);
  font-size:17px;
  line-height:1.75;
  font-weight:600;
}

/* ===== Slider / cinta ===== */
.why-marquee{
  position: relative;
  overflow: hidden;
  border-radius: 28px;
  background:
    radial-gradient(900px 280px at 15% 20%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(135deg, #d8bf74 0%, #b79032 48%, #d8bf74 100%);
  border: 1px solid rgba(199,177,110,.30);
  box-shadow:
    0 26px 70px rgba(0,0,0,.14),
    0 0 0 1px rgba(255,255,255,.10) inset;
}

.why-marquee::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.18)),
    radial-gradient(900px 260px at 50% 100%, rgba(0,0,0,.18), transparent 60%);
}

.why-marquee__head{
  position: relative;
  z-index: 2;
  padding: 28px 28px 8px;
  text-align: center;
}

.why-marquee__title{
  margin:0;
  color:#111;
  font-size:30px;
  line-height:1.2;
  font-weight:1000;
}

.why-marquee__slider{
  position: relative;
  z-index:2;
  padding: 14px 18px 34px;
}

.why-marquee__slider .swiper-slide{
  height:auto;
}

.why-marquee__item{
  min-height: 220px;
  height:100%;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  gap:16px;
  padding: 20px 18px;
  border-radius: 22px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.14), rgba(255,255,255,.06));
  border:1px solid rgba(255,255,255,.16);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
  transition: transform .25s var(--ease-out), box-shadow .25s ease, border-color .25s ease;
}

.why-marquee__item:hover{
  transform: translateY(-4px);
  border-color: rgba(255,255,255,.28);
  box-shadow: 0 18px 50px rgba(0,0,0,.10);
}

.why-marquee__icon{
  width:72px;
  height:72px;
  display:grid;
  place-items:center;
  border-radius:999px;
  font-size:34px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.28), rgba(255,255,255,.08));
  border:1px solid rgba(255,255,255,.22);
  color:#111;
  box-shadow: 0 14px 36px rgba(0,0,0,.10);
}

.why-marquee__label{
  margin:0;
  max-width:260px;
  color:#111;
  font-size:21px;
  line-height:1.35;
  font-weight:900;
}

/* dots */
.why-marquee__pagination{
  margin-top: 18px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
}

.why-marquee__pagination .swiper-pagination-bullet{
  width:10px;
  height:10px;
  opacity:1;
  background: rgba(17,17,17,.30);
  transition: transform .2s ease, background .2s ease, width .2s ease;
}

.why-marquee__pagination .swiper-pagination-bullet-active{
  width:28px;
  border-radius:999px;
  background:#111;
}

/* ===== responsive ===== */
@media (max-width: 1100px){
  .why-premium__title{
    font-size:30px;
  }
  .why-marquee__title{
    font-size:26px;
  }
  .why-marquee__label{
    font-size:19px;
  }
}

@media (max-width: 980px){
  .section--why{
    padding-top: 54px;
    padding-bottom: 54px;
  }

  .why-premium{
    gap:20px;
  }

  .why-premium__intro{
    padding:24px 20px;
    border-radius:20px;
  }

  .why-premium__title{
    font-size:26px;
  }

  .why-premium__text{
    font-size:15px;
    line-height:1.7;
  }

  .why-marquee{
    border-radius:24px;
  }

  .why-marquee__head{
    padding:22px 16px 6px;
  }

  .why-marquee__title{
    font-size:23px;
  }

  .why-marquee__slider{
    padding:12px 12px 28px;
  }

  .why-marquee__item{
    min-height: 190px;
    border-radius:18px;
    padding:18px 14px;
  }

  .why-marquee__icon{
    width:62px;
    height:62px;
    font-size:30px;
  }

  .why-marquee__label{
    font-size:18px;
    max-width:220px;
  }
}

@media (max-width: 640px){
  .why-premium__badge{
    font-size:11px;
    padding:9px 14px;
  }

  .why-premium__title{
    font-size:23px;
    line-height:1.2;
  }

  .why-premium__text{
    font-size:14px;
  }

  .why-marquee__title{
    font-size:21px;
  }

  .why-marquee__item{
    min-height: 180px;
  }

  .why-marquee__icon{
    width:58px;
    height:58px;
    font-size:28px;
  }

  .why-marquee__label{
    font-size:17px;
  }
}

@media (prefers-reduced-motion: reduce){
  .why-marquee__item{
    transition:none;
  }
}
/* =========================================================
   WHY MARQUEE FULL WIDTH
   ========================================================= */

.why-premium{
  gap: 34px;
}

/* La franja dorada se expande de extremo a extremo */
.why-marquee{
  width: 100vw;
  max-width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  border-radius: 0;
  padding-left: max(16px, env(safe-area-inset-left));
  padding-right: max(16px, env(safe-area-inset-right));
}

/* Mantener contenido centrado dentro de la franja */
.why-marquee__head,
.why-marquee__slider{
  width: min(1280px, 100%);
  margin-left: auto;
  margin-right: auto;
}

@media (max-width: 980px){
  .why-marquee{
    padding-left: 12px;
    padding-right: 12px;
  }

  .why-marquee__head,
  .why-marquee__slider{
    width: 100%;
  }
}
/* =========================================================
   WHY MARQUEE — visual premium refinement
   ========================================================= */

/* Contenedor general más elegante */
.why-marquee{
  box-shadow:
    0 26px 80px rgba(0,0,0,.14),
    0 0 0 1px rgba(255,255,255,.10) inset,
    0 18px 50px rgba(199,177,110,.10);
}

/* Título más fino visualmente */
.why-marquee__title{
  letter-spacing: -.5px;
  text-wrap: balance;
}

/* Slides más respirados */
.why-marquee__slider .swiper-slide{
  padding-top: 4px;
  padding-bottom: 8px;
}

/* Item premium */
.why-marquee__item{
  position: relative;
  overflow: hidden;
  min-height: 230px;
  border-radius: 24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.18), rgba(255,255,255,.07));
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    0 14px 35px rgba(0,0,0,.08),
    0 0 0 1px rgba(255,255,255,.04) inset;
}

/* brillo dorado sutil interno */
.why-marquee__item::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  border-radius:inherit;
  background:
    radial-gradient(320px 120px at 20% 0%, rgba(255,255,255,.20), transparent 60%),
    radial-gradient(420px 180px at 50% 100%, rgba(199,177,110,.16), transparent 65%);
  opacity:.85;
}

/* línea dorada decorativa abajo */
.why-marquee__item::after{
  content:"";
  position:absolute;
  left:24px;
  right:24px;
  bottom:16px;
  height:2px;
  border-radius:999px;
  background: linear-gradient(90deg, rgba(17,17,17,0), rgba(17,17,17,.28), rgba(17,17,17,0));
  opacity:.55;
}

/* hover elegante en desktop */
@media (hover:hover) and (pointer:fine){
  .why-marquee__item{
    transition:
      transform .25s var(--ease-out),
      box-shadow .25s ease,
      border-color .25s ease;
  }

  .why-marquee__item:hover{
    transform: translateY(-6px);
    border-color: rgba(255,255,255,.28);
    box-shadow:
      0 22px 55px rgba(0,0,0,.12),
      0 0 0 1px rgba(255,255,255,.06) inset,
      0 0 40px rgba(199,177,110,.12);
  }
}

/* icono más premium */
.why-marquee__icon{
  position: relative;
  width:78px;
  height:78px;
  font-size:36px;
  border-radius:999px;
  background:
    radial-gradient(120px 80px at 30% 20%, rgba(255,255,255,.34), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,.30), rgba(255,255,255,.10));
  border:1px solid rgba(255,255,255,.28);
  box-shadow:
    0 14px 36px rgba(0,0,0,.10),
    0 0 0 1px rgba(255,255,255,.06) inset;
}

/* aro sutil */
.why-marquee__icon::after{
  content:"";
  position:absolute;
  inset:8px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.20);
  pointer-events:none;
}

/* label más vendedor */
.why-marquee__label{
  max-width:280px;
  font-size:22px;
  line-height:1.28;
  font-weight:1000;
  letter-spacing:-.2px;
  text-wrap: balance;
  color:#111;
}

/* Dots más finos/pro */
.why-marquee__pagination{
  margin-top: 16px;
  padding-bottom: 4px;
}

.why-marquee__pagination .swiper-pagination-bullet{
  width:10px;
  height:10px;
  background: rgba(17,17,17,.24);
  opacity:1;
  border-radius:999px;
  box-shadow: 0 0 0 1px rgba(255,255,255,.10) inset;
}

.why-marquee__pagination .swiper-pagination-bullet-active{
  width:30px;
  background: linear-gradient(90deg, #111, rgba(17,17,17,.84));
}

/* Responsive */
@media (max-width: 980px){
  .why-marquee__item{
    min-height: 200px;
    border-radius: 20px;
  }

  .why-marquee__icon{
    width:66px;
    height:66px;
    font-size:31px;
  }

  .why-marquee__label{
    max-width:220px;
    font-size:18px;
    line-height:1.3;
  }
}

@media (max-width: 640px){
  .why-marquee__slider{
    padding-bottom: 24px;
  }

  .why-marquee__item{
    min-height: 190px;
    padding:18px 14px;
  }

  .why-marquee__icon{
    width:60px;
    height:60px;
    font-size:28px;
  }

  .why-marquee__label{
    font-size:17px;
  }
}

@media (prefers-reduced-motion: reduce){
  .why-marquee__item{
    transition:none !important;
  }
}
/* =========================================================
   WHY PREMIUM INTRO — collage corregido + hover pro
   ========================================================= */

/* Intro principal: dos columnas reales */
.why-premium__intro{
  display:grid;
  grid-template-columns: 1.05fr .95fr;
  gap:28px;
  align-items:stretch;
}

/* ===== Collage ===== */
.why-premium__media{
  display:grid;
  grid-template-columns: 1.15fr .85fr;
  gap:16px;
  min-height: 520px;
}

.why-premium__stack{
  display:grid;
  grid-template-rows: 1fr 1fr;
  gap:16px;
}

.why-premium__photo{
  position:relative;
  overflow:hidden;
  border-radius:24px;
  min-height:220px;
  background:#111;
  border:1px solid rgba(199,177,110,.20);
  box-shadow:
    0 16px 40px rgba(0,0,0,.10),
    0 0 0 1px rgba(255,255,255,.05) inset;
  isolation:isolate;
}

.why-premium__photo--main{
  min-height: 520px;
}

.why-premium__photo--small{
  min-height: 252px;
}

.why-premium__photo img{
  width:100%;
  height:100%;
  object-fit:cover;
  object-position:center;
  display:block;
  transition:
    transform .9s var(--ease-out),
    filter .9s var(--ease-out);
}

/* Overlay premium */
.why-premium__photo::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  pointer-events:none;
  background:
    radial-gradient(600px 240px at 20% 0%, rgba(255,255,255,.18), transparent 60%),
    linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.18));
}

/* halo externo dorado */
.why-premium__photo::after{
  content:"";
  position:absolute;
  inset:-16px;
  z-index:-1;
  pointer-events:none;
  border-radius: calc(24px + 16px);
  background: radial-gradient(closest-side, rgba(199,177,110,.45), rgba(199,177,110,0) 70%);
  filter: blur(20px);
  opacity:0;
  transition: opacity .25s ease, filter .25s ease;
}

/* hover desktop */
@media (hover:hover) and (pointer:fine){
  .why-premium__photo:hover img{
    transform: scale(1.08);
    filter: saturate(1.06) contrast(1.03);
  }

  .why-premium__photo:hover::after{
    opacity:1;
    filter: blur(24px);
  }

  .why-premium__photo{
    transition: transform .25s var(--ease-out), box-shadow .25s ease, border-color .25s ease;
  }

  .why-premium__photo:hover{
    transform: translateY(-4px);
    border-color: rgba(199,177,110,.34);
    box-shadow:
      0 24px 60px rgba(0,0,0,.14),
      0 0 0 1px rgba(255,255,255,.07) inset;
  }
}

/* ===== Texto ===== */
.why-premium__content{
  display:flex;
  flex-direction:column;
  justify-content:center;
}

.why-premium__title{
  max-width: 720px;
}

.why-premium__text{
  max-width: 780px;
}

.why-premium__points{
  display:grid;
  grid-template-columns: repeat(2, minmax(0,1fr));
  gap:10px 18px;
  margin-top:18px;
}

.why-premium__point{
  display:flex;
  align-items:flex-start;
  gap:10px;
  padding:10px 12px;
  border-radius:14px;
  background: rgba(255,255,255,.42);
  border:1px solid rgba(199,177,110,.18);
  color:#111;
  font-weight:700;
  line-height:1.45;
}

/* ===== Responsive ===== */
@media (max-width: 1100px){
  .why-premium__intro{
    grid-template-columns: 1fr;
  }

  .why-premium__media{
    min-height: unset;
  }

  .why-premium__photo--main{
    min-height: 420px;
  }

  .why-premium__photo--small{
    min-height: 200px;
  }
}

@media (max-width: 800px){
  .why-premium__media{
    grid-template-columns: 1fr;
    gap:14px;
  }

  .why-premium__stack{
    grid-template-columns: 1fr 1fr;
    grid-template-rows: none;
    gap:14px;
  }

  .why-premium__photo--main{
    min-height: 280px;
  }

  .why-premium__photo--small{
    min-height: 180px;
  }

  .why-premium__points{
    grid-template-columns: 1fr;
  }
}

@media (max-width: 640px){
  .why-premium__intro{
    gap:20px;
  }

  .why-premium__media{
    grid-template-columns: 1fr;
  }

  .why-premium__stack{
    grid-template-columns: 1fr;
  }

  .why-premium__photo,
  .why-premium__photo--main,
  .why-premium__photo--small{
    min-height: 210px;
    border-radius:18px;
  }

  .why-premium__photo::after{
    inset:-12px;
    border-radius: calc(18px + 12px);
  }
}
/* =========================================================
   WHY PREMIUM CONTENT — texto/badge/bullets más vendedor
   ========================================================= */

/* Contenido más limpio y con mejor jerarquía */
.why-premium__content{
  position:relative;
  padding: 4px 0;
}

/* Badge más premium */
.why-premium__badge{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  padding:11px 18px;
  margin-bottom:18px;
  border-radius:999px;
  font-size:12px;
  font-weight:1000;
  letter-spacing:1px;
  text-transform:uppercase;
  color:#111;
  background:
    linear-gradient(180deg, #f6e6b4 0%, #d5b75e 100%);
  border:1px solid rgba(0,0,0,.08);
  box-shadow:
    0 12px 30px rgba(199,177,110,.20),
    0 0 0 1px rgba(255,255,255,.18) inset;
}

.why-premium__badge::before{
  content:"✦";
  font-size:12px;
  color:#111;
  opacity:.8;
}

/* Título más impactante */
.why-premium__title{
  margin:0 0 18px;
  font-size: clamp(32px, 3vw, 54px);
  line-height:1.08;
  font-weight:1000;
  letter-spacing:-1px;
  color:#111;
  text-wrap:balance;
}

.why-premium__title strong{
  color:#111;
}

/* Párrafos más cómodos de leer */
.why-premium__text{
  margin:0 0 16px;
  max-width: 760px;
  font-size:17px;
  line-height:1.85;
  font-weight:500;
  color:rgba(17,17,17,.76);
}

.why-premium__text strong{
  color:#111;
  font-weight:900;
}

/* Bullets premium */
.why-premium__points{
  margin-top:22px;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:12px 16px;
}

.why-premium__point{
  position:relative;
  display:flex;
  align-items:center;
  min-height:56px;
  padding:14px 16px 14px 18px;
  border-radius:16px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,250,240,.58));
  border:1px solid rgba(199,177,110,.18);
  color:#111;
  font-size:15px;
  font-weight:800;
  line-height:1.45;
  box-shadow:
    0 12px 30px rgba(0,0,0,.04),
    0 0 0 1px rgba(255,255,255,.08) inset;
}

/* Glow dorado muy sutil al hover */
@media (hover:hover) and (pointer:fine){
  .why-premium__point{
    transition:
      transform .22s var(--ease-out),
      box-shadow .22s ease,
      border-color .22s ease;
  }

  .why-premium__point:hover{
    transform: translateY(-2px);
    border-color: rgba(199,177,110,.28);
    box-shadow:
      0 16px 36px rgba(0,0,0,.06),
      0 0 26px rgba(199,177,110,.08);
  }
}

/* Responsive */
@media (max-width: 1100px){
  .why-premium__text{
    font-size:16px;
    line-height:1.78;
  }
}

@media (max-width: 800px){
  .why-premium__points{
    grid-template-columns:1fr;
  }
}

@media (max-width: 640px){
  .why-premium__badge{
    font-size:11px;
    padding:10px 15px;
    margin-bottom:14px;
  }

  .why-premium__title{
    font-size: clamp(26px, 7vw, 34px);
    line-height:1.12;
    margin-bottom:14px;
  }

  .why-premium__text{
    font-size:15px;
    line-height:1.72;
    margin-bottom:14px;
  }

  .why-premium__point{
    min-height:52px;
    padding:13px 14px 13px 16px;
    font-size:14px;
    border-radius:14px;
  }
}
/* =========================================================
   WHY MARQUEE — black & gold premium
   ========================================================= */

.why-marquee{
  position: relative;
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(199,177,110,.14), transparent 60%),
    radial-gradient(700px 240px at 80% 100%, rgba(199,177,110,.10), transparent 60%),
    linear-gradient(135deg, #060606 0%, #0c0c0d 45%, #121212 100%) !important;
  border-top: 1px solid rgba(199,177,110,.18);
  border-bottom: 1px solid rgba(199,177,110,.18);
  box-shadow:
    0 26px 80px rgba(0,0,0,.28),
    0 0 0 1px rgba(199,177,110,.08) inset;
}

/* brillo sutil */
.why-marquee::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(0,0,0,.14)),
    radial-gradient(700px 180px at 50% 0%, rgba(199,177,110,.08), transparent 65%);
  opacity:1;
}

/* destello fino superior */
.why-marquee::after{
  content:"";
  position:absolute;
  top:0;
  left:50%;
  transform:translateX(-50%);
  width:min(420px, 60%);
  height:2px;
  border-radius:999px;
  background:linear-gradient(90deg, rgba(199,177,110,0), rgba(199,177,110,.85), rgba(199,177,110,0));
  box-shadow: 0 0 18px rgba(199,177,110,.22);
  pointer-events:none;
}

/* Título dorado */
.why-marquee__title{
  color: var(--brand) !important;
  text-shadow: 0 12px 30px rgba(199,177,110,.10);
}

/* Slider dentro */
.why-marquee__slider{
  position:relative;
  z-index:2;
}

/* Tarjetas internas oscuras premium */
.why-marquee__item{
  min-height:230px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01)),
    linear-gradient(180deg, rgba(16,16,16,.92), rgba(8,8,9,.96)) !important;
  border:1px solid rgba(199,177,110,.20) !important;
  box-shadow:
    0 16px 36px rgba(0,0,0,.18),
    0 0 0 1px rgba(255,255,255,.03) inset;
  overflow:hidden;
  position:relative;
}

/* glow decorativo dorado */
.why-marquee__item::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(360px 120px at 50% 100%, rgba(199,177,110,.18), transparent 62%),
    radial-gradient(240px 100px at 15% 0%, rgba(255,255,255,.05), transparent 60%);
  opacity:.95;
}

/* línea inferior dorada */
.why-marquee__item::after{
  content:"";
  position:absolute;
  left:22px;
  right:22px;
  bottom:16px;
  height:1px;
  border-radius:999px;
  background: linear-gradient(90deg, rgba(199,177,110,0), rgba(199,177,110,.45), rgba(199,177,110,0));
  opacity:.75;
}

/* Hover premium */
@media (hover:hover) and (pointer:fine){
  .why-marquee__item{
    transition:
      transform .26s var(--ease-out),
      border-color .26s ease,
      box-shadow .26s ease;
  }

  .why-marquee__item:hover{
    transform: translateY(-6px);
    border-color: rgba(199,177,110,.38) !important;
    box-shadow:
      0 24px 60px rgba(0,0,0,.24),
      0 0 38px rgba(199,177,110,.12);
  }
}

/* Iconos */
.why-marquee__icon{
  width:78px;
  height:78px;
  border-radius:999px;
  background:
    radial-gradient(120px 80px at 30% 20%, rgba(255,255,255,.16), transparent 60%),
    linear-gradient(180deg, rgba(199,177,110,.20), rgba(199,177,110,.08)) !important;
  border:1px solid rgba(199,177,110,.28) !important;
  box-shadow:
    0 14px 34px rgba(0,0,0,.20),
    0 0 0 1px rgba(255,255,255,.03) inset;
  color: var(--brand) !important;
}

.why-marquee__icon::after{
  border-color: rgba(199,177,110,.20) !important;
}

/* Texto de cada item */
.why-marquee__label{
  color: #fff !important;
  text-shadow: 0 8px 18px rgba(0,0,0,.20);
}

/* Dots premium */
.why-marquee__pagination .swiper-pagination-bullet{
  background: rgba(199,177,110,.26) !important;
  box-shadow:none;
}

.why-marquee__pagination .swiper-pagination-bullet-active{
  background: linear-gradient(90deg, rgba(199,177,110,.95), rgba(214,191,117,.75)) !important;
  box-shadow: 0 0 18px rgba(199,177,110,.18);
}

/* Responsive */
@media (max-width:980px){
  .why-marquee{
    box-shadow:
      0 18px 48px rgba(0,0,0,.24),
      0 0 0 1px rgba(199,177,110,.08) inset;
  }

  .why-marquee__item{
    min-height: 200px;
  }

  .why-marquee__icon{
    width:66px;
    height:66px;
  }
}

@media (max-width:640px){
  .why-marquee__title{
    font-size:22px !important;
  }

  .why-marquee__item{
    min-height:190px;
  }

  .why-marquee__label{
    font-size:17px !important;
  }
}
/* =========================================================
   WHY MARQUEE FIXES — título nuevo + sin cortes + sin líneas laterales
   ========================================================= */

/* Título nuevo bien centrado y sin partirse feo */
.why-marquee__title{
  text-transform: uppercase;
  line-height: 1.12;
  text-align: center;
  text-wrap: balance;
  max-width: 900px;
  margin-left: auto;
  margin-right: auto;
}

/* Evita que la línea/brillo superior del item se corte al hover */
.why-marquee__item{
  overflow: hidden;
  border-color: rgba(199,177,110,.18) !important;
}

.why-marquee__item::after{
  bottom: 14px !important;
  left: 24px !important;
  right: 24px !important;
}

/* Quita el efecto de "desaparición" de la parte superior */
.why-marquee__item:hover,
.why-marquee__item:focus,
.why-marquee__item:focus-within{
  outline: none;
}

/* Full width limpio sin líneas doradas laterales en móvil */
.why-marquee{
  overflow: hidden !important;
  border-left: 0 !important;
  border-right: 0 !important;
}

@media (max-width: 980px){
  .why-marquee{
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    width: 100vw;
    max-width: 100vw;
    border-left: 0 !important;
    border-right: 0 !important;
    box-shadow:
      0 18px 48px rgba(0,0,0,.24),
      0 0 0 1px rgba(199,177,110,.04) inset !important;
  }

  /* también limpia cualquier pseudo halo en los extremos */
  .why-marquee::after{
    width: min(320px, 56%);
  }

  .why-marquee__slider{
    overflow: hidden;
  }

  .why-marquee__slider .swiper-wrapper{
    align-items: stretch;
  }
}
/* =========================================================
   WHY MARQUEE HOVER FIX — no mover el cuadro, solo contenido
   ========================================================= */

@media (hover:hover) and (pointer:fine){
  /* El cuadro ya NO se mueve */
  .why-marquee__item{
    transform: none !important;
    transition:
      box-shadow .26s ease,
      border-color .26s ease,
      background .26s ease;
  }

  .why-marquee__item:hover{
    transform: none !important;
    border-color: rgba(199,177,110,.34) !important;
    box-shadow:
      0 22px 55px rgba(0,0,0,.24),
      0 0 34px rgba(199,177,110,.10);
  }

  /* Ahora animamos solo el icono */
  .why-marquee__icon{
    transition:
      transform .28s var(--ease-out),
      box-shadow .28s ease,
      border-color .28s ease,
      background .28s ease;
  }

  .why-marquee__item:hover .why-marquee__icon{
    transform: scale(1.08) translateY(-2px);
    border-color: rgba(199,177,110,.34) !important;
    box-shadow:
      0 16px 36px rgba(0,0,0,.22),
      0 0 28px rgba(199,177,110,.14);
  }

  /* Y solo el texto */
  .why-marquee__label{
    transition:
      transform .26s var(--ease-out),
      color .26s ease,
      text-shadow .26s ease;
  }

  .why-marquee__item:hover .why-marquee__label{
    transform: scale(1.03);
    color: #fff !important;
    text-shadow: 0 10px 24px rgba(199,177,110,.10);
  }
}
/* =========================================================
   INSTAGRAM SPACING FIX + HEADER PADDING
   ========================================================= */

/* quitar el espacio blanco/plomo entre la franja anterior y el instagram */
.section--instagram{
  margin-top: 0 !important;
  padding-top: 0 !important;
  background: transparent !important;
}

.section--why + .section--instagram{
  margin-top: -8px !important;
}

/* quitar cualquier espacio superior extra del bloque */
.instagram-block{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* darle aire al header del perfil de instagram */
.instagram-block #sb_instagram .sbi_header_outer,
.instagram-block #sb_instagram .sbi_header{
  padding-top: 18px !important;
  padding-bottom: 12px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
  margin: 0 !important;
}

/* avatar/logo con más separación a la izquierda */
.instagram-block #sb_instagram .sbi_header_img,
.instagram-block #sb_instagram .sbi_header_img img{
  margin-left: 0 !important;
}

/* asegurar que no quede pegado al borde en desktop y móvil */
.instagram-block #sb_instagram .sbi_header{
  box-sizing: border-box;
}

/* móvil/tablet */
@media (max-width: 980px){
  .section--why + .section--instagram{
    margin-top: -4px !important;
  }

  .instagram-block #sb_instagram .sbi_header_outer,
  .instagram-block #sb_instagram .sbi_header{
    padding-top: 14px !important;
    padding-bottom: 10px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
}
/* =========================================================
   REMOVE GAP BETWEEN WHY MARQUEE AND INSTAGRAM
   ========================================================= */

/* Quitar espacio inferior de la sección negra */
.section--why{
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Quitar espacio extra inferior de la cinta */
.why-marquee{
  margin-bottom: 0 !important;
}

/* Quitar el espacio superior del instagram */
.section--instagram{
  padding-top: 0 !important;
  margin-top: 0 !important;
  background: transparent !important;
}

/* El contenedor del feed sube */
.section--instagram .container{
  margin-top: 0 !important;
  padding-top: 0 !important;
}

/* Empujar el feed hacia arriba para cerrar el hueco */
.instagram-block{
  margin-top: -32px !important;
}

/* Ajuste fino en móvil */
@media (max-width: 980px){
  .instagram-block{
    margin-top: -18px !important;
  }
}
/* =========================================================
   INSTAGRAM ALIGN / FULL WIDTH FIX
   ========================================================= */

/* sección instagram sin espacio raro arriba */
.section--instagram{
  padding-top: 0 !important;
  margin-top: 0 !important;
  background: transparent !important;
}

/* quitar empuje incorrecto anterior */
.instagram-block{
  margin-top: -10px !important;
  width: 100% !important;
  max-width: 100% !important;
  box-sizing: border-box;
}

/* contenedor del instagram más ancho */
.section--instagram .container{
  width: min(1360px, calc(100% - 40px)) !important;
  max-width: 1360px !important;
  margin-inline: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* feed ocupa todo el ancho del bloque */
.instagram-block #sb_instagram{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
}

/* evita el hueco derecho */
.instagram-block #sb_instagram .sbi_images,
.instagram-block #sb_instagram .sbi_items_wrap{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box;
}

/* header del perfil con aire */
.instagram-block #sb_instagram .sbi_header_outer,
.instagram-block #sb_instagram .sbi_header{
  padding-left: 18px !important;
  padding-right: 18px !important;
  margin:0 !important;
  box-sizing:border-box;
}

/* móvil/tablet */
@media (max-width: 980px){
  .instagram-block{
    margin-top: -6px !important;
  }

  .section--instagram .container{
    width: calc(100% - 20px) !important;
    max-width: none !important;
  }

  .instagram-block #sb_instagram .sbi_header_outer,
  .instagram-block #sb_instagram .sbi_header{
    padding-left: 12px !important;
    padding-right: 12px !important;
  }
}

@media (max-width: 640px){
  .section--instagram .container{
    width: calc(100% - 12px) !important;
  }
}
/* =========================================================
   INSTAGRAM BLACK MATCH + WIDTH CLEAN FIX
   ========================================================= */

/* el feed no tan invadido, pero sí amplio */
.section--instagram .container{
  width: min(1300px, calc(100% - 32px)) !important;
  max-width: 1300px !important;
  margin-inline: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

.instagram-block{
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  margin-top: -6px !important;
  box-sizing: border-box;
}

/* contenedor del plugin */
.instagram-block #sb_instagram{
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  box-sizing:border-box;
}

/* HEADER del instagram: mismo negro premium que la franja de arriba */
.instagram-block #sb_instagram .sbi_header_outer,
.instagram-block #sb_instagram .sbi_header{
  background:
    radial-gradient(900px 260px at 20% 0%, rgba(199,177,110,.10), transparent 60%),
    radial-gradient(700px 240px at 80% 100%, rgba(199,177,110,.08), transparent 60%),
    linear-gradient(135deg, #060606 0%, #0c0c0d 45%, #121212 100%) !important;

  padding:18px 18px 12px !important;
  margin:0 !important;
  box-sizing:border-box;
  border:0 !important;
}

/* texto del perfil en dorado */
.instagram-block #sb_instagram .sbi_header_text h3,
.instagram-block #sb_instagram .sbi_header_text .sbi_bio,
.instagram-block #sb_instagram .sbi_header_text,
.instagram-block #sb_instagram .sbi_header_text *{
  color: var(--brand) !important;
}

/* dar más aire al avatar/logo */
.instagram-block #sb_instagram .sbi_header_img{
  margin-right: 14px !important;
}

/* publicaciones ocupando mejor el ancho */
.instagram-block #sb_instagram .sbi_images,
.instagram-block #sb_instagram .sbi_items_wrap{
  width:100% !important;
  max-width:100% !important;
  box-sizing:border-box;
}

/* evita el espacio feo entre secciones */
.section--why{
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}
.why-marquee{
  margin-bottom: 0 !important;
}
.section--instagram{
  padding-top: 0 !important;
  margin-top: 0 !important;
  background: transparent !important;
}

/* responsive */
@media (max-width:980px){
  .section--instagram .container{
    width: calc(100% - 14px) !important;
    max-width: none !important;
  }

  .instagram-block{
    margin-top: -2px !important;
  }

  .instagram-block #sb_instagram .sbi_header_outer,
  .instagram-block #sb_instagram .sbi_header{
    padding:14px 12px 10px !important;
  }

  .instagram-block #sb_instagram .sbi_header_img{
    margin-right: 10px !important;
  }
}

@media (max-width:640px){
  .section--instagram .container{
    width: calc(100% - 8px) !important;
  }
}
/* =========================================================
   WHY + INSTAGRAM SPACING BALANCE
   ========================================================= */

/* Más espacio interior en la franja negra */
.why-marquee{
  padding-bottom: 18px !important;
}

.why-marquee__slider{
  padding-bottom: 34px !important;
}

.why-marquee__pagination{
  margin-top: 18px !important;
  padding-bottom: 8px !important;
}

/* Darle un poco de respiro al inicio del Instagram */
.section--instagram{
  padding-top: 16px !important;
}

/* Ajustes responsive */
@media (max-width: 980px){
  .why-marquee{
    padding-bottom: 14px !important;
  }

  .why-marquee__slider{
    padding-bottom: 28px !important;
  }

  .why-marquee__pagination{
    margin-top: 14px !important;
    padding-bottom: 6px !important;
  }

  .section--instagram{
    padding-top: 12px !important;
  }
}

@media (max-width: 640px){
  .why-marquee__slider{
    padding-bottom: 24px !important;
  }

  .section--instagram{
    padding-top: 10px !important;
  }
}
/* =========================================================
   WHY MARQUEE BALANCED SPACING
   ========================================================= */

/* Más aire arriba del título */
.why-marquee__head{
  padding-top: 34px !important;
  padding-bottom: 10px !important;
}

/* Menos aire abajo del slider */
.why-marquee__slider{
  padding-top: 12px !important;
  padding-bottom: 20px !important;
}

/* Paginación más centrada visualmente */
.why-marquee__pagination{
  margin-top: 12px !important;
  padding-bottom: 2px !important;
}

/* Responsive */
@media (max-width: 980px){
  .why-marquee__head{
    padding-top: 28px !important;
    padding-bottom: 8px !important;
  }

  .why-marquee__slider{
    padding-top: 10px !important;
    padding-bottom: 18px !important;
  }

  .why-marquee__pagination{
    margin-top: 10px !important;
    padding-bottom: 2px !important;
  }
}

@media (max-width: 640px){
  .why-marquee__head{
    padding-top: 24px !important;
  }

  .why-marquee__slider{
    padding-bottom: 16px !important;
  }
}
/* =========================================================
   INSTAGRAM MOVE DOWN A BIT
   ========================================================= */

.section--instagram{
  padding-top: 18px !important;
}

@media (max-width: 980px){
  .section--instagram{
    padding-top: 12px !important;
  }
}
/* =========================================================
   INSTAGRAM PUSH DOWN
   ========================================================= */

.instagram-block{
  margin-top: 28px !important;
}

@media (max-width: 980px){
  .instagram-block{
    margin-top: 18px !important;
  }
}
/* =========================================================
   INSTAGRAM SECTION BLACK BACKGROUND FULL
   ========================================================= */

.section--instagram{
  background: #000 !important;
}

.section--instagram .container{
  background: transparent !important;
}
/* =========================================================
   INSTAGRAM LOWER BLACK AREA REDUCE
   ========================================================= */

.section--instagram{
  padding-bottom: 18px !important;
}

@media (max-width: 980px){
  .section--instagram{
    padding-bottom: 12px !important;
  }
}
.hero__content {
  display: flex;
  flex-direction: column;
}

.hero__text-group {
  min-height: 290px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

.hero__cta {
  margin-top: 10px;
}

@media (max-width: 980px) {
  .hero__text-group {
    min-height: 250px;
  }
}
/* ===== Tours recomendados: premium gold final + mobile active ===== */
.section--tours .tour-card {
  position: relative;
  overflow: hidden;
  border-radius: 22px;
  border: 1px solid rgba(210,181,57,.16);
  background: #fff;
  box-shadow:
    0 10px 28px rgba(0,0,0,.06),
    0 0 0 1px rgba(255,255,255,.45) inset;
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    border-color .32s ease;
}

.section--tours .tour-card__media {
  position: relative;
  overflow: hidden;
  border-radius: 22px 22px 0 0;
  z-index: 2;
}

.section--tours .tour-card__img {
  transition:
    transform .75s ease,
    filter .75s ease;
}

.section--tours .tour-card__body {
  position: relative;
  z-index: 2;
  background: #fff;
  border-radius: 0 0 22px 22px;
  transition:
    background .32s ease,
    color .32s ease;
}

.section--tours .tour-card__rating {
  color: #D2B539;
  min-height: 24px;
  letter-spacing: 2px;
  transition: color .32s ease;
}

.section--tours .tour-card__title,
.section--tours .tour-card__title a {
  color: #111;
  transition: color .32s ease;
}

.section--tours .tour-card__meta,
.section--tours .tour-card__meta li {
  color: #666;
  transition: color .32s ease;
}

.section--tours .tour-card__from {
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 6;
  background: linear-gradient(180deg, #e1c554 0%, #D2B539 100%);
  color: #111;
  border: 1px solid rgba(0,0,0,.08);
  box-shadow:
    0 8px 22px rgba(210,181,57,.20),
    0 0 0 1px rgba(255,255,255,.15) inset;
  transition:
    transform .32s ease,
    background .32s ease,
    color .32s ease,
    box-shadow .32s ease;
}

.section--tours .tour-card::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  opacity: 0;
  background:
    radial-gradient(circle at center, rgba(210,181,57,.18) 0%, rgba(210,181,57,.08) 34%, rgba(210,181,57,0) 68%),
    linear-gradient(180deg, rgba(210,181,57,.04) 0%, rgba(210,181,57,.10) 100%);
  transition: opacity .32s ease;
}

.section--tours .tour-card__media::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  background:
    linear-gradient(180deg, rgba(210,181,57,.06), rgba(210,181,57,.14)),
    radial-gradient(circle at top center, rgba(255,255,255,.08), transparent 44%);
  transition: opacity .32s ease;
}

@keyframes tourPricePulse {
  0% {
    transform: translateY(-10px) scale(1);
  }
  100% {
    transform: translateY(-10px) scale(1.06);
  }
}

/* estado premium compartido */
.section--tours .tour-card.is-active,
.section--tours .tour-card:hover {
  transform: translateY(-7px);
  border-color: rgba(210,181,57,.28);
  box-shadow:
    0 22px 55px rgba(210,181,57,.18),
    0 14px 28px rgba(0,0,0,.10);
}

.section--tours .tour-card.is-active::before,
.section--tours .tour-card:hover::before,
.section--tours .tour-card.is-active .tour-card__media::after,
.section--tours .tour-card:hover .tour-card__media::after {
  opacity: 1;
}

.section--tours .tour-card.is-active .tour-card__img,
.section--tours .tour-card:hover .tour-card__img {
  transform: scale(1.07);
  filter: brightness(1.08) saturate(1.10);
}

.section--tours .tour-card.is-active .tour-card__body,
.section--tours .tour-card:hover .tour-card__body {
  background: linear-gradient(180deg, #bc9b24 0%, #D2B539 58%, #e0c75b 100%);
}

.section--tours .tour-card.is-active .tour-card__title,
.section--tours .tour-card.is-active .tour-card__title a,
.section--tours .tour-card.is-active .tour-card__meta,
.section--tours .tour-card.is-active .tour-card__meta li,
.section--tours .tour-card.is-active .tour-card__rating,
.section--tours .tour-card:hover .tour-card__title,
.section--tours .tour-card:hover .tour-card__title a,
.section--tours .tour-card:hover .tour-card__meta,
.section--tours .tour-card:hover .tour-card__meta li,
.section--tours .tour-card:hover .tour-card__rating {
  color: #fff !important;
}

.section--tours .tour-card.is-active .tour-card__from,
.section--tours .tour-card:hover .tour-card__from {
  background: #111;
  color: #D2B539;
  transform: translateY(-10px);
  box-shadow:
    0 14px 26px rgba(0,0,0,.18),
    0 0 0 1px rgba(210,181,57,.24);
  animation: tourPricePulse .9s ease-in-out infinite alternate;
}
/* ===== Precio tour: premium gold final ===== */
.section--tours .tour-card__from {
  top: 16px !important;
  left: 16px !important;
  background: linear-gradient(180deg, #fffdf7 0%, #f7f1dd 100%) !important;
  color: #111 !important;
  border: 1px solid rgba(210,181,57,.30) !important;
  box-shadow:
    0 8px 20px rgba(210,181,57,.12),
    0 0 0 1px rgba(255,255,255,.55) inset !important;
  transition:
    background .32s ease,
    color .32s ease,
    border-color .32s ease,
    box-shadow .32s ease,
    transform .32s ease;
}

@keyframes pricePulseGoldStrong {
  0% {
    transform: translateY(-10px) scale(1.02);
    box-shadow:
      0 10px 22px rgba(210,181,57,.18),
      0 0 0 1px rgba(210,181,57,.18),
      0 0 8px rgba(210,181,57,.18);
  }
  100% {
    transform: translateY(-10px) scale(1.08);
    box-shadow:
      0 18px 34px rgba(210,181,57,.34),
      0 0 0 1px rgba(210,181,57,.28),
      0 0 20px rgba(210,181,57,.40);
  }
}

.section--tours .tour-card:hover .tour-card__from,
.section--tours .tour-card.is-active .tour-card__from {
  background: linear-gradient(180deg, #e0c44f 0%, #D2B539 100%) !important;
  color: #fff !important;
  border-color: rgba(210,181,57,.65) !important;
  animation: pricePulseGoldStrong .85s ease-in-out infinite alternate;
}
/* ===== TODOS NUESTROS TOURS INCLUYEN — solo dorado + morado ===== */
.why-marquee {
  background: linear-gradient(135deg, #722D72 0%, #8b3a8b 35%, #D2B539 100%) !important;
  border-top: 0 !important;
  border-bottom: 0 !important;
  box-shadow:
    0 20px 60px rgba(114,45,114,.22),
    0 18px 50px rgba(210,181,57,.18);
}

.why-marquee::before {
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02)) !important;
}

.why-marquee::after {
  background: linear-gradient(90deg, rgba(210,181,57,0), #D2B539, #722D72, rgba(114,45,114,0)) !important;
  box-shadow: none !important;
}

.why-marquee__title {
  color: #fff !important;
  text-shadow: 0 8px 20px rgba(114,45,114,.20);
}

.why-marquee__item {
  background: linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.05)) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  box-shadow:
    0 12px 30px rgba(114,45,114,.16),
    0 8px 22px rgba(210,181,57,.12);
}

.why-marquee__item::before {
  background:
    radial-gradient(320px 120px at 50% 100%, rgba(210,181,57,.18), transparent 62%),
    radial-gradient(220px 100px at 15% 0%, rgba(114,45,114,.18), transparent 60%) !important;
}

.why-marquee__item::after {
  background: linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.35), rgba(255,255,255,0)) !important;
}

.why-marquee__icon {
  background: linear-gradient(180deg, #D2B539 0%, #722D72 100%) !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  color: #fff !important;
  box-shadow:
    0 10px 26px rgba(114,45,114,.18),
    0 8px 20px rgba(210,181,57,.14);
}

.why-marquee__icon::after {
  border-color: rgba(255,255,255,.20) !important;
}

.why-marquee__label {
  color: #fff !important;
  text-shadow: 0 6px 14px rgba(114,45,114,.18);
}

.why-marquee__pagination .swiper-pagination-bullet {
  background: rgba(255,255,255,.34) !important;
}

.why-marquee__pagination .swiper-pagination-bullet-active {
  background: linear-gradient(90deg, #D2B539, #722D72) !important;
  box-shadow:
    0 0 14px rgba(210,181,57,.18),
    0 0 14px rgba(114,45,114,.18);
}
/* ===== WHY SECTION: collage único premium ===== */
.why-premium__intro {
  display: grid;
  grid-template-columns: 1fr 1.25fr;
  gap: 30px;
  align-items: stretch;
}

.why-premium__media--single {
  display: flex;
  align-items: stretch;
  min-height: 100%;
}

.why-premium__photo--single {
  width: 100%;
  min-height: 540px;
  border-radius: 28px;
  overflow: hidden;
  position: relative;
  background: #111;
  border: 1px solid rgba(210,181,57,.22);
  box-shadow:
    0 18px 45px rgba(0,0,0,.10),
    0 0 0 1px rgba(255,255,255,.04) inset,
    0 0 28px rgba(210,181,57,.10);
}

.why-premium__photo--single img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .8s ease, filter .8s ease;
}

.why-premium__photo--single::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 1;
  pointer-events: none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(0,0,0,.08)),
    radial-gradient(circle at top left, rgba(210,181,57,.10), transparent 40%);
}

.why-premium__photo--single::after {
  content: "";
  position: absolute;
  inset: 12px;
  border-radius: 22px;
  border: 1px solid rgba(255,255,255,.14);
  z-index: 2;
  pointer-events: none;
}

@media (hover:hover) and (pointer:fine) {
  .why-premium__photo--single:hover img {
    transform: scale(1.04);
    filter: brightness(1.03) saturate(1.04);
  }

  .why-premium__photo--single:hover {
    box-shadow:
      0 24px 60px rgba(0,0,0,.12),
      0 0 0 1px rgba(255,255,255,.05) inset,
      0 0 34px rgba(210,181,57,.14);
  }
}

/* texto un poco más limpio y equilibrado */
.why-premium__content {
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.why-premium__title {
  max-width: 680px;
}

.why-premium__text {
  max-width: 720px;
}

/* responsive */
@media (max-width: 1100px) {
  .why-premium__intro {
    grid-template-columns: 1fr;
    gap: 22px;
  }

  .why-premium__photo--single {
    min-height: 460px;
  }
}

@media (max-width: 980px) {
  .why-premium__photo--single {
    min-height: 360px;
    border-radius: 22px;
  }

  .why-premium__photo--single::after {
    inset: 10px;
    border-radius: 18px;
  }
}

@media (max-width: 640px) {
  .why-premium__photo--single {
    min-height: 280px;
    border-radius: 18px;
  }

  .why-premium__photo--single::after {
    inset: 8px;
    border-radius: 14px;
  }
}
/* ===== TESTIMONIOS ===== */
.section--testimonials {
  position: relative;
  background:
    linear-gradient(180deg, rgba(0,0,0,.45), rgba(0,0,0,.68)),
    url('https://images.unsplash.com/photo-1507525428034-b723cf961d3e?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;
  overflow: hidden;
}

.section--testimonials .section__title,
.section--testimonials .section__subtitle {
  color: #fff;
}

.section--testimonials .section__subtitle {
  color: rgba(255,255,255,.82);
}

.testimonials-slider {
  position: relative;
  padding: 40px 0 30px;
}

.testimonials-slider .swiper-slide {
  height: auto;
  padding-top: 30px;
}

.testimonial-card {
  position: relative;
  margin-top: 28px;
  padding: 0 14px 14px;
}

.testimonial-card__avatar {
  position: relative;
  z-index: 3;
  width: 84px;
  height: 84px;
  margin: 0 auto -28px;
  border-radius: 999px;
  overflow: hidden;
  border: 4px solid #fff;
  box-shadow:
    0 10px 30px rgba(0,0,0,.18),
    0 0 0 2px rgba(210,181,57,.30);
  background: #fff;
}

.testimonial-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
}

.testimonial-card__body {
  position: relative;
  z-index: 2;
  background: rgba(255,255,255,.97);
  border-radius: 22px;
  padding: 42px 22px 22px;
  box-shadow:
    0 18px 45px rgba(0,0,0,.16),
    0 0 0 1px rgba(255,255,255,.4) inset;
  min-height: 255px;
}

.testimonial-card__head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 14px;
}

.testimonial-card__name {
  margin: 0 0 4px;
  font-size: 22px;
  line-height: 1.2;
  color: #111;
}

.testimonial-card__role {
  margin: 0;
  color: #722D72;
  font-weight: 700;
  font-size: 14px;
}

.testimonial-card__stars {
  color: #D2B539;
  font-size: 16px;
  line-height: 1;
  letter-spacing: 2px;
  white-space: nowrap;
}

.testimonial-card__text {
  margin: 0;
  color: #333;
  line-height: 1.7;
  font-weight: 500;
  font-size: 15px;
}

.testimonials-slider__nav {
  position: absolute;
  top: 8px;
  right: 0;
  z-index: 10;
  display: flex;
  gap: 10px;
}

.testimonials-slider__btn {
  width: 42px;
  height: 42px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,.24);
  background: rgba(255,255,255,.08);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
  cursor: pointer;
  transition: transform .18s ease, background .25s ease, border-color .25s ease;
}

.testimonials-slider__btn:hover {
  background: rgba(210,181,57,.18);
  border-color: rgba(210,181,57,.50);
}

.testimonials-slider__btn::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  margin: auto;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}

.testimonials-slider__btn--prev::before {
  transform: rotate(135deg);
}

.testimonials-slider__btn--next::before {
  transform: rotate(-45deg);
}

.testimonials-slider__pagination {
  margin-top: 18px;
  display: flex;
  justify-content: center;
  gap: 8px;
}

.testimonials-slider__pagination .swiper-pagination-bullet {
  width: 10px;
  height: 10px;
  background: rgba(255,255,255,.45);
  opacity: 1;
  border-radius: 999px;
}

.testimonials-slider__pagination .swiper-pagination-bullet-active {
  width: 28px;
  background: linear-gradient(90deg, #D2B539, #722D72);
}

@media (max-width: 980px) {
  .testimonials-slider {
    padding-top: 24px;
  }

  .testimonials-slider__nav {
    position: static;
    justify-content: center;
    margin-bottom: 14px;
  }

  .testimonial-card__body {
    min-height: auto;
    padding: 40px 18px 20px;
  }

  .testimonial-card__name {
    font-size: 20px;
  }

  .testimonial-card__text {
    font-size: 14px;
  }
}

@media (max-width: 640px) {
  .testimonial-card__head {
    flex-direction: column;
    gap: 8px;
  }

  .testimonial-card__stars {
    font-size: 15px;
  }
}
.why-marquee__icon {
  background: #D2B539 !important;
  border: 2px solid #722D72 !important;
}

.why-marquee__icon::after {
  border: 2px solid rgba(255,255,255,.22) !important;
}
.section--tours .tour-card__from {
  background: #D5C082;
}

.section--tours .tour-card__body {
  background: #D5C082;
}
/* ===== Ajuste fino entre tours incluye y testimonios ===== */
.section--tours {
  padding-bottom: 60px !important;
}

.section--why-marquee-only {
  margin-top: 0 !important;
  padding-top: 40px !important;
  padding-bottom: 0 !important;
}

.section--testimonials {
  margin-top: -28px !important;
  padding-top: 24px !important;
}

@media (max-width: 980px) {
  .section--tours {
    padding-bottom: 42px !important;
  }

  .section--why-marquee-only {
    padding-top: 26px !important;
    padding-bottom: 0 !important;
  }

  .section--testimonials {
    margin-top: -18px !important;
    padding-top: 18px !important;
  }
}
.section--testimonials {
  padding-top: 10px !important;
  padding-bottom: 10px !important;
  min-height: auto !important;
}

.testimonials-slider {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.testimonials-slider .swiper-slide {
  padding-top: 0 !important;
}

.testimonial-card {
  margin-top: 0 !important;
}
.destino-oval__price {
  margin-top: 10px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 8px 14px;
  border-radius: 999px;
  background: rgba(210,181,57,.95);
  color: #111;
  font-size: 13px;
  font-weight: 900;
  letter-spacing: .3px;
  box-shadow: 0 10px 24px rgba(210,181,57,.18);
  transition:
    transform .25s ease,
    box-shadow .25s ease,
    background .25s ease,
    color .25s ease;
}

.destino-oval:hover .destino-oval__price {
  transform: translateY(-2px) scale(1.03);
  background: #111;
  color: #D2B539;
  box-shadow:
    0 14px 28px rgba(0,0,0,.22),
    0 0 0 1px rgba(210,181,57,.18);
}
.destino-oval__arrow {
  width: 48px;
  height: 48px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #e1c554 0%, #D2B539 100%);
  color: #111;
  font-size: 24px;
  font-weight: 1000;
  line-height: 1;
  box-shadow:
    0 8px 22px rgba(210,181,57,.20),
    0 0 0 1px rgba(255,255,255,.15) inset;
  transition:
    transform .32s ease,
    background .32s ease,
    color .32s ease,
    box-shadow .32s ease;
}

.destino-oval:hover .destino-oval__arrow {
  background: #111;
  color: #D2B539;
  transform: translateY(-1px) scale(1.05);
  box-shadow:
    0 14px 26px rgba(0,0,0,.18),
    0 0 0 1px rgba(210,181,57,.24);
}
.section--tours .tour-card:hover .tour-card__body,
.section--tours .tour-card.is-active .tour-card__body {
  background: linear-gradient(135deg, #722D72 0%, #9a5a8f 35%, #D2B539 100%) !important;
}
.section--tours .tour-card__from {
  background: #D5C082 !important;
  color: #111 !important;
}

.section--tours .tour-card:hover .tour-card__from,
.section--tours .tour-card.is-active .tour-card__from {
  background: linear-gradient(135deg, #722D72 0%, #9a5a8f 35%, #D2B539 100%) !important;
  color: #fff !important;
}
.section--tours .tour-card:hover .tour-card__body,
.section--tours .tour-card.is-active .tour-card__body {
  background: linear-gradient(135deg, #D2B539 0%, #E1C554 100%) !important;
}

.section--tours .tour-card:hover .tour-card__from,
.section--tours .tour-card.is-active .tour-card__from {
  background: linear-gradient(135deg, #D2B539 0%, #E1C554 100%) !important;
  color: #111 !important;
}
.section--why-marquee-only {
  margin-top: -40px !important;
  padding-top: 0 !important;
  padding-bottom: 40px !important;
}

@media (max-width: 980px) {
  .section--why-marquee-only {
    margin-top: -18px !important;
    padding-bottom: 28px !important;
  }
}
.section--instagram {
  background: #D5C082 !important;
}

.instagram-block #sb_instagram .sbi_header_outer,
.instagram-block #sb_instagram .sbi_header {
  background: #D5C082 !important;
}
/* ===== TESTIMONIOS PREMIUM UPGRADE ===== */
.testimonials-score {
  margin: 22px auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.testimonials-score__title {
  font-size: 24px;
  font-weight: 1000;
  letter-spacing: .6px;
  color: #fff;
  text-transform: uppercase;
  text-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.testimonials-score__stars {
  font-size: 34px;
  line-height: 1;
  letter-spacing: 5px;
  color: #D2B539;
  text-shadow:
    0 0 10px rgba(210,181,57,.18),
    0 8px 20px rgba(0,0,0,.18);
}

.testimonials-score__count {
  font-size: 15px;
  font-weight: 700;
  color: rgba(255,255,255,.92);
  text-shadow: 0 6px 14px rgba(0,0,0,.18);
}

.testimonial-card {
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    filter .32s ease;
}

.testimonial-card__body {
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(210,181,57,.18);
  box-shadow:
    0 16px 40px rgba(0,0,0,.12),
    0 0 0 1px rgba(255,255,255,.38) inset;
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    border-color .32s ease,
    background .32s ease;
}

.testimonial-card__avatar {
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    border-color .32s ease;
}

.testimonial-card__name {
  letter-spacing: -.3px;
}

.testimonial-card__role {
  color: #722D72;
  font-weight: 800;
}

.testimonial-card__stars {
  color: #D2B539;
  text-shadow: 0 0 10px rgba(210,181,57,.12);
}

.testimonial-card__text {
  font-size: 15px;
  line-height: 1.75;
}

@media (hover:hover) and (pointer:fine) {
  .testimonial-card:hover {
    transform: translateY(-8px);
  }

  .testimonial-card:hover .testimonial-card__body {
    border-color: rgba(210,181,57,.30);
    box-shadow:
      0 24px 60px rgba(0,0,0,.16),
      0 0 26px rgba(210,181,57,.12),
      0 0 0 1px rgba(255,255,255,.45) inset;
    background: rgba(255,255,255,.98);
  }

  .testimonial-card:hover .testimonial-card__avatar {
    transform: scale(1.05);
    box-shadow:
      0 16px 36px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.38);
  }

  .testimonial-card:hover .testimonial-card__stars {
    transform: scale(1.04);
  }
}

@media (max-width: 980px) {
  .testimonials-score__title {
    font-size: 20px;
  }

  .testimonials-score__stars {
    font-size: 28px;
    letter-spacing: 4px;
  }

  .testimonials-score__count {
    font-size: 14px;
  }

  .testimonial-card__text {
    font-size: 14px;
    line-height: 1.68;
  }
}
.testimonials-slider,
.testimonials-slider .swiper-wrapper,
.testimonials-slider .swiper-slide,
.testimonial-card {
  overflow: visible !important;
}
@media (max-width: 980px) {
  .testimonials-score__title {
    font-size: 20px;
    font-weight: 1000;
    letter-spacing: .6px;
    color: #fff !important;
    text-transform: uppercase;
    text-shadow: 0 10px 30px rgba(0,0,0,.25);
  }

  .testimonials-score__stars {
    font-size: 28px;
    line-height: 1;
    letter-spacing: 4px;
    color: #D2B539 !important;
    text-shadow:
      0 0 10px rgba(210,181,57,.18),
      0 8px 20px rgba(0,0,0,.18);
  }

  .testimonials-score__count {
    font-size: 14px;
    font-weight: 700;
    color: rgba(255,255,255,.92) !important;
    text-shadow: 0 6px 14px rgba(0,0,0,.18);
  }

  .testimonial-card__body {
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(210,181,57,.18);
    box-shadow:
      0 16px 40px rgba(0,0,0,.12),
      0 0 0 1px rgba(255,255,255,.38) inset;
  }

  .testimonial-card__avatar {
    box-shadow:
      0 10px 30px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.30);
  }

  .testimonial-card__role {
    color: #722D72 !important;
    font-weight: 800;
  }

  .testimonial-card__stars {
    color: #D2B539 !important;
    text-shadow: 0 0 10px rgba(210,181,57,.12);
  }

  .testimonial-card__text {
    font-size: 14px;
    line-height: 1.68;
  }
}
@media (max-width: 980px) {
  .testimonial-card:active {
    transform: translateY(-8px);
  }

  .testimonial-card:active .testimonial-card__body {
    border-color: rgba(210,181,57,.30);
    box-shadow:
      0 24px 60px rgba(0,0,0,.16),
      0 0 26px rgba(210,181,57,.12),
      0 0 0 1px rgba(255,255,255,.45) inset;
    background: rgba(255,255,255,.98);
  }

  .testimonial-card:active .testimonial-card__avatar {
    transform: scale(1.05);
    box-shadow:
      0 16px 36px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.38);
  }

  .testimonial-card:active .testimonial-card__stars {
    transform: scale(1.04);
  }
}
html,
body {
  overflow-x: hidden !important;
}
/* ===== PROMOCIONES LIMPIO ===== */
.destino-oval__top{
  position: relative;
  padding-right: 72px;
}

.destino-oval__title{
  margin: 0;
  color: #fff;
  font-weight: 1000;
  letter-spacing: 1.4px;
  font-size: 18px;
  line-height: 1.2;
  max-width: 100%;
}

.destino-oval__price{
  margin-top: 12px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 11px 20px;
  min-width: 138px;
  border-radius: 999px;
  background: rgba(210,181,57,.95);
  color: #111;
  font-size: 16px;
  font-weight: 1000;
  letter-spacing: .3px;
  box-shadow: 0 12px 28px rgba(210,181,57,.24);
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}

.destino-oval__arrow{
  position: absolute;
  right: 0;
  top: 100%;
  transform: translateY(12px);
  width: 48px;
  height: 48px;
  min-width: 48px;
  min-height: 48px;
  border-radius: 999px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: linear-gradient(180deg, #e1c554 0%, #D2B539 100%);
  color: #111;
  font-size: 24px;
  font-weight: 1000;
  line-height: 1;
  box-shadow:
    0 8px 22px rgba(210,181,57,.20),
    0 0 0 1px rgba(255,255,255,.15) inset;
  transition: transform .25s ease, box-shadow .25s ease, background .25s ease, color .25s ease;
}

.destino-oval:hover .destino-oval__price{
  transform: scale(1.06);
  background: #111;
  color: #D2B539;
  box-shadow:
    0 16px 34px rgba(0,0,0,.22),
    0 0 0 1px rgba(210,181,57,.18);
}

.destino-oval:hover .destino-oval__arrow{
  transform: translateY(12px) scale(1.08);
  background: #111;
  color: #D2B539;
  box-shadow:
    0 14px 30px rgba(0,0,0,.18),
    0 0 0 1px rgba(210,181,57,.24);
}

/* city tour panorámico */
.destino-oval--title-one-line .destino-oval__title{
  white-space: nowrap;
  font-size: 17px;
}

/* 2 tours largos */
.destino-oval--mountain .destino-oval__title,
.destino-oval--tipon .destino-oval__title{
  font-size: 15px;
  line-height: 1.15;
  letter-spacing: .2px;
}

.destino-oval--split-meta .destino-oval__meta-row{
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-top: 12px;
}

.destino-oval--split-meta .destino-oval__arrow{
  position: relative;
  top: auto;
  right: auto;
  bottom: auto;
  left: auto;
  transform: translateY(12px);
  margin: 0;
  align-self: center;
}

.destino-oval--split-meta:hover .destino-oval__arrow{
  transform: translateY(12px) scale(1.08);
}

/* ===== TESTIMONIOS PREMIUM UPGRADE ===== */
.testimonials-score {
  margin: 22px auto 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
}

.testimonials-score__title {
  font-size: 24px;
  font-weight: 1000;
  letter-spacing: .6px;
  color: #fff;
  text-transform: uppercase;
  text-shadow: 0 10px 30px rgba(0,0,0,.25);
}

.testimonials-score__stars {
  font-size: 34px;
  line-height: 1;
  letter-spacing: 5px;
  color: #D2B539;
  text-shadow:
    0 0 10px rgba(210,181,57,.18),
    0 8px 20px rgba(0,0,0,.18);
}

.testimonials-score__count {
  font-size: 15px;
  font-weight: 700;
  color: rgba(255,255,255,.92);
  text-shadow: 0 6px 14px rgba(0,0,0,.18);
}

.testimonial-card {
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    filter .32s ease;
}

.testimonial-card__body {
  background: rgba(255,255,255,.96);
  border: 1px solid rgba(210,181,57,.18);
  box-shadow:
    0 16px 40px rgba(0,0,0,.12),
    0 0 0 1px rgba(255,255,255,.38) inset;
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    border-color .32s ease,
    background .32s ease;
}

.testimonial-card__avatar {
  transition:
    transform .32s ease,
    box-shadow .32s ease,
    border-color .32s ease;
}

.testimonial-card__name {
  letter-spacing: -.3px;
}

.testimonial-card__role {
  color: #722D72;
  font-weight: 800;
}

.testimonial-card__stars {
  color: #D2B539;
  text-shadow: 0 0 10px rgba(210,181,57,.12);
}

.testimonial-card__text {
  font-size: 15px;
  line-height: 1.75;
}

@media (hover:hover) and (pointer:fine) {
  .testimonial-card:hover {
    transform: translateY(-8px);
  }

  .testimonial-card:hover .testimonial-card__body {
    border-color: rgba(210,181,57,.30);
    box-shadow:
      0 24px 60px rgba(0,0,0,.16),
      0 0 26px rgba(210,181,57,.12),
      0 0 0 1px rgba(255,255,255,.45) inset;
    background: rgba(255,255,255,.98);
  }

  .testimonial-card:hover .testimonial-card__avatar {
    transform: scale(1.05);
    box-shadow:
      0 16px 36px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.38);
  }

  .testimonial-card:hover .testimonial-card__stars {
    transform: scale(1.04);
  }
}

@media (max-width: 980px){
  .destino-oval__top{
    padding-right: 66px;
  }

  .destino-oval__title{
    font-size: 17px;
  }

  .destino-oval--title-one-line .destino-oval__title{
    font-size: 16px;
  }

  .destino-oval__price{
    padding: 10px 16px;
    min-width: 126px;
    font-size: 15px;
  }

  .destino-oval__arrow{
    width: 46px;
    height: 46px;
    min-width: 46px;
    min-height: 46px;
    transform: translateY(12px);
  }

  .destino-oval:hover .destino-oval__arrow{
    transform: translateY(12px) scale(1.08);
  }

  .destino-oval--split-meta .destino-oval__arrow{
    transform: translateY(12px);
  }

  .destino-oval--split-meta:hover .destino-oval__arrow{
    transform: translateY(12px) scale(1.08);
  }

  .destino-oval--mountain .destino-oval__title,
  .destino-oval--tipon .destino-oval__title{
    font-size: 14px;
  }

  .testimonials-score__title {
    font-size: 20px;
  }

  .testimonials-score__stars {
    font-size: 28px;
    letter-spacing: 4px;
  }

  .testimonials-score__count {
    font-size: 14px;
  }

  .testimonial-card__text {
    font-size: 14px;
    line-height: 1.68;
  }

  .testimonials-score__title {
    font-size: 20px;
    font-weight: 1000;
    letter-spacing: .6px;
    color: #fff !important;
    text-transform: uppercase;
    text-shadow: 0 10px 30px rgba(0,0,0,.25);
  }

  .testimonials-score__stars {
    font-size: 28px;
    line-height: 1;
    letter-spacing: 4px;
    color: #D2B539 !important;
    text-shadow:
      0 0 10px rgba(210,181,57,.18),
      0 8px 20px rgba(0,0,0,.18);
  }

  .testimonials-score__count {
    font-size: 14px;
    font-weight: 700;
    color: rgba(255,255,255,.92) !important;
    text-shadow: 0 6px 14px rgba(0,0,0,.18);
  }

  .testimonial-card__body {
    background: rgba(255,255,255,.96);
    border: 1px solid rgba(210,181,57,.18);
    box-shadow:
      0 16px 40px rgba(0,0,0,.12),
      0 0 0 1px rgba(255,255,255,.38) inset;
  }

  .testimonial-card__avatar {
    box-shadow:
      0 10px 30px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.30);
  }

  .testimonial-card__role {
    color: #722D72 !important;
    font-weight: 800;
  }

  .testimonial-card__stars {
    color: #D2B539 !important;
    text-shadow: 0 0 10px rgba(210,181,57,.12);
  }

  .testimonial-card__text {
    font-size: 14px;
    line-height: 1.68;
  }

  .testimonial-card:active {
    transform: translateY(-8px);
  }

  .testimonial-card:active .testimonial-card__body {
    border-color: rgba(210,181,57,.30);
    box-shadow:
      0 24px 60px rgba(0,0,0,.16),
      0 0 26px rgba(210,181,57,.12),
      0 0 0 1px rgba(255,255,255,.45) inset;
    background: rgba(255,255,255,.98);
  }

  .testimonial-card:active .testimonial-card__avatar {
    transform: scale(1.05);
    box-shadow:
      0 16px 36px rgba(0,0,0,.18),
      0 0 0 2px rgba(210,181,57,.38);
  }

  .testimonial-card:active .testimonial-card__stars {
    transform: scale(1.04);
  }
}

@media (max-width: 640px){
  .destino-oval--title-one-line .destino-oval__title{
    white-space: normal;
  }

  .testimonial-card__head {
    flex-direction: column;
    gap: 8px;
  }

  .testimonial-card__stars {
    font-size: 15px;
  }
}

.testimonials-slider,
.testimonials-slider .swiper-wrapper,
.testimonials-slider .swiper-slide,
.testimonial-card {
  overflow: visible !important;
}

html,
body {
  overflow-x: hidden !important;
}
/* =========================================================
   TRUST PREMIUM FINAL
   ========================================================= */
.section--trust{
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(900px 260px at 15% 0%, rgba(210,181,57,.12), transparent 60%),
    radial-gradient(700px 240px at 85% 100%, rgba(114,45,114,.08), transparent 60%),
    linear-gradient(180deg, #f8f1dc 0%, #f3e4b7 100%);
  padding-top:52px;
  padding-bottom:56px;
}

.section--trust::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    linear-gradient(180deg, rgba(255,255,255,.12), rgba(255,255,255,.04)),
    radial-gradient(800px 180px at 50% 0%, rgba(255,255,255,.18), transparent 60%);
}

.section--trust .section__head{
  margin-bottom:26px;
}

.section--trust .section__title{
  color:#111;
}

.section--trust .section__subtitle{
  color:rgba(17,17,17,.72);
  font-weight:600;
  max-width:860px;
}

.trust-grid{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:22px;
  align-items:stretch;
}

.trust-card{
  position:relative;
  overflow:hidden;
  min-height:100%;
  padding:28px 22px 24px;
  border-radius:24px;
  background:
    linear-gradient(180deg, rgba(255,255,255,.78), rgba(255,255,255,.56));
  border:1px solid rgba(210,181,57,.18);
  box-shadow:
    0 18px 44px rgba(0,0,0,.06),
    0 0 0 1px rgba(255,255,255,.24) inset;
  text-align:center;
  transition:
    transform .28s ease,
    box-shadow .28s ease,
    border-color .28s ease;
}

.trust-card:hover{
  transform:translateY(-6px);
  border-color:rgba(210,181,57,.30);
  box-shadow:
    0 24px 60px rgba(0,0,0,.08),
    0 0 28px rgba(210,181,57,.10);
}

.trust-card__shine{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    radial-gradient(420px 140px at 50% 0%, rgba(255,255,255,.34), transparent 60%),
    radial-gradient(320px 160px at 50% 100%, rgba(210,181,57,.08), transparent 65%);
}

.trust-card__logo{
  position:relative;
  z-index:2;
  width:100%;
  height:120px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:18px;
}

.trust-card__logo img{
  max-width:230px;
  max-height:90px;
  width:auto;
  height:auto;
  object-fit:contain;
  filter: drop-shadow(0 10px 22px rgba(0,0,0,.08));
  transition: transform .28s ease, filter .28s ease;
}

.trust-card:hover .trust-card__logo img{
  transform:scale(1.04);
  filter: drop-shadow(0 14px 28px rgba(210,181,57,.12));
}

.trust-card__title{
  position:relative;
  z-index:2;
  margin:0 0 10px;
  font-size:24px;
  line-height:1.15;
  color:#111;
  letter-spacing:-.3px;
}

.trust-card__text{
  position:relative;
  z-index:2;
  margin:0;
  color:rgba(17,17,17,.70);
  line-height:1.7;
  font-weight:500;
  font-size:15px;
}

@media (max-width: 980px){
  .section--trust{
    padding-top:42px;
    padding-bottom:46px;
  }

  .trust-grid{
    grid-template-columns:1fr;
    gap:16px;
  }

  .trust-card{
    padding:22px 18px 20px;
    border-radius:20px;
  }

  .trust-card__logo{
    height:100px;
    margin-bottom:14px;
  }

  .trust-card__logo img{
    max-width:190px;
    max-height:74px;
  }

  .trust-card__title{
    font-size:20px;
  }

  .trust-card__text{
    font-size:14px;
    line-height:1.6;
  }
}

@media (max-width: 640px){
  .section--trust .section__title{
    font-size:26px;
  }

  .section--trust .section__subtitle{
    font-size:14px;
  }

  .trust-card__logo{
    height:92px;
  }

  .trust-card__logo img{
    max-width:175px;
    max-height:68px;
  }

  .trust-card__title{
    font-size:18px;
  }

  .trust-card__text{
    font-size:13px;
  }
}
/* PC/Laptop: HERO realmente a pantalla completa (sin mostrar PROMOCIONES)
   Móvil/Tablet: NO se modifica (se queda como estaba) */
@media (min-width: 981px){
  body.home .hero__slider{
    height: calc(100vh + 78px) !important;
  }

  body.home .hero__slider .swiper-wrapper,
  body.home .hero__slider .swiper-slide{
    height: 100% !important;
    min-height: 100% !important;
  }

  body.home .hero__slide{
    height: 100% !important;
    min-height: 100% !important;
  }
}