
:root {
  --accent-color: #c1121f;
  --heading-color: #ffffff;
  --default-color: #e9e9e9;
  --surface-color: rgba(255,255,255,0.04);
  --contrast-color: #ffffff;
}
body { background:#0a0a0a; }
.header .logo .sitename { font-size: 28px; letter-spacing: .6px; }
.hero:before { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,.45) 0%, rgba(0,0,0,.65) 45%, rgba(8,8,8,.98) 100%); z-index:1; }
.hero > img { filter: saturate(.85) brightness(.55); }
.hero .container { position:relative; z-index:2; }
.hero h2 { font-size: clamp(2.4rem, 6vw, 4.8rem); line-height:1.03; }
.hero p { font-size: 1.15rem; }
.btn-primary-solid, .btn-outline-soft { display:inline-flex; align-items:center; gap:.55rem; padding:.9rem 1.35rem; border-radius:999px; font-weight:700; text-decoration:none; transition:.3s ease; }
.btn-primary-solid { background: var(--accent-color); color:#fff; border:1px solid var(--accent-color); }
.btn-primary-solid:hover { filter:brightness(.95); color:#fff; transform:translateY(-2px); }
.btn-outline-soft { background: rgba(255,255,255,.06); color:#fff; border:1px solid rgba(255,255,255,.18); }
.btn-outline-soft:hover { background: rgba(255,255,255,.12); color:#fff; transform:translateY(-2px); }
.hero-actions { display:flex; gap:14px; justify-content:center; flex-wrap:wrap; margin-top:24px; }
.hero-badges { display:flex; gap:12px; justify-content:center; flex-wrap:wrap; margin-top:28px; }
.hero-badges span { padding:.55rem .9rem; border-radius:999px; background:rgba(255,255,255,.08); border:1px solid rgba(255,255,255,.15); font-size:.92rem; }
.section-title p { max-width:780px; margin-inline:auto; }
.location-card, .focus-card, .video-card, .mini-card, .cta-box, .service-card, .gallery-tile {
  background: linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.02));
  border:1px solid rgba(255,255,255,.08);
  border-radius:24px;
  overflow:hidden;
  height:100%;
  box-shadow: 0 12px 34px rgba(0,0,0,.25);
}
.location-card .image-wrap { position:relative; aspect-ratio: 16/11; overflow:hidden; }
.location-card img, .gallery-tile img { width:100%; height:100%; object-fit:cover; display:block; transition: transform .45s ease; }
.location-card:hover img, .gallery-tile:hover img { transform: scale(1.05); }
.location-card .image-wrap:after, .gallery-tile .image-wrap:after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.62) 100%); }
.location-card .content, .gallery-tile .content { padding:1.55rem; }
.location-card .eyebrow, .mini-card .eyebrow, .focus-card .eyebrow { text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; color: color-mix(in srgb, var(--accent-color) 55%, white); font-weight:800; }
.location-card h3, .focus-card h3, .mini-card h3 { font-size:1.55rem; margin:.35rem 0 .8rem; }
.location-card ul, .focus-card ul { padding-left:1rem; color: color-mix(in srgb, var(--default-color) 88%, white); }
.location-card .actions, .dual-actions { display:flex; gap:12px; flex-wrap:wrap; margin-top:1rem; }
.section-dark-band { background: linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,.01)); }
.video-placeholder { aspect-ratio:16/9; border-radius:18px; border:1px dashed rgba(255,255,255,.18); display:flex; align-items:center; justify-content:center; color:#d2d2d2; background:rgba(255,255,255,.03); font-weight:700; }
.stats-strip { display:grid; grid-template-columns: repeat(4, 1fr); gap:18px; }
.stat-box { text-align:center; padding:1.4rem 1rem; border-radius:20px; border:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.03); }
.stat-box h4 { font-size:2rem; margin-bottom:.25rem; }
.quick-links a { color: rgba(255,255,255,.82); text-decoration:none; }
.quick-links a:hover { color:#fff; }
.inline-note { color:rgba(255,255,255,.76); font-size:.95rem; }
.footer { background:#070707; }
@media (max-width: 991px) { .stats-strip { grid-template-columns: repeat(2,1fr); } }
@media (max-width: 575px) { .stats-strip { grid-template-columns: 1fr; } .hero h2{font-size:2.4rem;} }
/* =========================
   PRENSA / MEDIOS
========================= */
.press-card {
  background: #111319;
  border: 1px solid rgba(255,255,255,.08);
  color: #fff;
  border-radius: 18px;
  overflow: hidden;
  box-shadow: 0 10px 30px rgba(0,0,0,.18);
}

.press-card .card-body {
  padding: 1.1rem 1.1rem 1.2rem;
}

.press-card .card-title {
  color: #fff;
  font-weight: 700;
  margin-bottom: .6rem;
}

.press-card .card-text {
  color: rgba(255,255,255,.78);
  line-height: 1.65;
  margin-bottom: 1rem;
}

.press-card .ratio {
  background: #000;
}

.press-card iframe {
  border: 0;
  display: block;
}

.press-card .btn-outline-light {
  color: #fff;
  border-color: rgba(255,255,255,.35);
}

.press-card .btn-outline-light:hover {
  background: #fff;
  color: #111;
  border-color: #fff;
}

.section-subtle {
  background: rgba(255,255,255,.02);
}

.badge-soft {
  display: inline-block;
  padding: .45rem .8rem;
  border-radius: 999px;
  background: rgba(255,255,255,.08);
  color: rgba(255,255,255,.82);
  font-size: .82rem;
  font-weight: 600;
  letter-spacing: .02em;
}

#prensa-medios h2,
#prensa-medios p,
.py-5 h2,
.py-5 p,
.section-subtle h2,
.section-subtle p {
  color: inherit;
}
