
:root{--gold:#d4af37;--gold2:#f1e3a0;--dark:#0b0c0e;--deep:#14161a}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--dark);color:#e6e6e6;font-family:'Poppins',sans-serif}
.title{font-family:'Cinzel',serif}
.text-gold{color:var(--gold)!important}
/* Glass navbar */
.glass{background:rgba(10,10,10,.45);backdrop-filter:saturate(140%) blur(8px)}
#nav .nav-link{color:#dcdcdc;margin-left:.9rem}
#nav .nav-link:hover{color:var(--gold)}
#nav .brand{letter-spacing:.5px}
/* Hero */
.hero{position:relative;height:100vh}
.tartan::before{content:'';position:absolute;inset:0;pointer-events:none;
  background:
    repeating-linear-gradient(0deg, rgba(212,175,55,.07) 0 1px, transparent 1px 60px),
    repeating-linear-gradient(90deg, rgba(212,175,55,.07) 0 1px, transparent 1px 60px);
  mix-blend:soft-light;opacity:.25;z-index:1}
.hero-slide{height:100vh;background-size:cover;background-position:center;position:relative;will-change:transform}
.hero .shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.55),rgba(0,0,0,.25));z-index:2}
.caption{position:absolute;inset:0;display:grid;place-items:center;text-align:center;padding:1rem;z-index:3}
/* Shimmer gold */
.shimmer{background:linear-gradient(90deg,var(--gold),var(--gold2),var(--gold));-webkit-background-clip:text;background-clip:text;color:transparent;animation:shine 6s linear infinite}
@keyframes shine{0%{background-position:0%}100%{background-position:200%}}
/* Swiper */
.swiper-button-next,.swiper-button-prev{color:var(--gold)}
.swiper-pagination-bullet{background:#777;opacity:1}
.swiper-pagination-bullet-active{background:var(--gold)}
/* Sections */
.section{scroll-margin-top:88px;padding:4.5rem 0}
.bg-deep{background:var(--deep)}
.border-gold{border:1px solid var(--gold)}
.border-top-gold{border-top:1px solid var(--gold)}
.shadow-gold{box-shadow:0 0 0 1px rgba(212,175,55,.18),0 10px 30px rgba(0,0,0,.4)}
.btn-gold{background:var(--gold);border:none;color:#1a1a1a;font-weight:700}
.btn-gold:hover{filter:brightness(1.06)}
.btn-outline-gold{border:1px solid var(--gold);color:var(--gold)}
.btn-outline-gold:hover{background:var(--gold);color:#1a1a1a}
.form-dark{background:#0e1013;border:1px solid #2a2a2a;color:#ddd}
.form-dark:focus{border-color:var(--gold);box-shadow:0 0 0 .2rem rgba(212,175,55,.15)}
/* Timeline */
.timeline{position:relative;max-width:900px}
.timeline:before{content:'';position:absolute;left:22px;top:0;bottom:0;width:2px;background:linear-gradient(var(--gold),transparent)}
.tl-item{position:relative;padding-left:60px;margin-bottom:24px;opacity:.9;transition:transform .25s}
.tl-item:hover{transform:translateX(4px)}
.tl-item .dot{position:absolute;left:14px;top:6px;width:18px;height:18px;border-radius:50%;background:var(--gold);box-shadow:0 0 12px rgba(212,175,55,.7)}
/* Gallery */
.gold-zoom{transition:transform .35s, box-shadow .35s}
.gold-zoom:hover{transform:scale(1.05);box-shadow:0 0 0 2px var(--gold)}
.card-gold{background:#15161a;border:1px solid rgba(212,175,55,.25)}


/* === Estilos integrados de encuentros === */

/* === Estilos para galería elegante === */
.int p {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 15px;
  justify-items: center;
  margin-top: 20px;
}

.int img {
  width: 220px;
  height: 160px;
  object-fit: cover;
  border-radius: 12px;
  box-shadow: 0 4px 12px rgba(0,0,0,0.25);
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

.int img:hover {
  transform: scale(1.05);
  box-shadow: 0 6px 18px rgba(0,0,0,0.35);
}
