:root{
  --bg:#0b0b0c;
  --bg2:#111114;
  --text:#f1f1f1;
  --muted:#b8b8b8;
  --gold:#caa24a;
  --gold2:#e1c067;
  --card:#141417;
  --border:rgba(255,255,255,.08);
  --shadow: 0 18px 50px rgba(0,0,0,.55);
}

*{box-sizing:border-box}
html,body{margin:0;padding:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text)}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.container{width:min(1100px, 92%);margin:0 auto}

.header{position:sticky;top:0;z-index:20;background:rgba(11,11,12,.75);backdrop-filter: blur(10px);border-bottom:1px solid var(--border)}
.header__inner{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:14px}
.brand{display:flex;align-items:center;gap:12px}
.brand__logoWrap{width:44px;height:44px;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--bg2)}
.brand__logo{width:100%;height:100%;object-fit:cover}
.brand__name{font-weight:800;letter-spacing:.5px}
.brand__tag{font-size:12px;color:var(--muted);margin-top:2px}

.nav{display:flex;gap:16px}
.nav a{font-size:14px;color:var(--muted)}
.nav a:hover{color:var(--text)}

.hero{padding:38px 0 28px;background: radial-gradient(1200px 500px at 50% -50%, rgba(202,162,74,.25), transparent), linear-gradient(180deg, rgba(202,162,74,.08), transparent)}
.hero__inner{display:grid;grid-template-columns: 1.1fr .9fr;gap:26px;align-items:center}
.hero h1{font-size:clamp(26px, 3.3vw, 44px);line-height:1.08;margin:0 0 10px}
.hero p{margin:0 0 18px;color:var(--muted);max-width:56ch}
.hero__cta{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:16px}
.hero__meta{display:flex;gap:10px;flex-wrap:wrap}

.pill{border:1px solid var(--border);padding:8px 10px;border-radius:999px;color:var(--muted);font-size:13px;background:rgba(255,255,255,.03)}

.previewCard{border-radius:18px;overflow:hidden;border:1px solid var(--border);box-shadow:var(--shadow);position:relative}
.previewCard img{height:520px;object-fit:cover;width:100%}
.previewCard__fade{position:absolute;inset:auto 0 0 0;height:90px;background:linear-gradient(180deg, transparent, rgba(0,0,0,.7))}
.smallNote{margin-top:10px;color:var(--muted);font-size:13px}

.section{padding:44px 0}
.section--dark{background:linear-gradient(180deg, transparent, rgba(255,255,255,.03), transparent)}
.section__head h2{margin:0 0 8px;font-size:26px}
.section__head p{margin:0 0 18px;color:var(--muted)}

.grid{
  display:grid;
  grid-template-columns: repeat(3, 1fr);
  gap:16px;
}

.card{
  background:var(--card);
  border:1px solid var(--border);
  border-radius:18px;
  overflow:hidden;
  box-shadow: 0 10px 28px rgba(0,0,0,.35);
  cursor:pointer;
  transition: transform .15s ease, border-color .15s ease;
}
.card:hover{transform: translateY(-2px);border-color: rgba(202,162,74,.35)}
.card img{
  width:100%;
  height:420px;           /* controla el tamaño visual del flyer en la grilla */
  object-fit: cover;      /* para que se vea “tipo card” sin deformar */
  object-position: center;
}
.card__footer{
  display:flex;align-items:center;justify-content:space-between;
  padding:12px 12px 14px;
  gap:10px
}
.card__title{font-weight:700}
.card__btn{
  border:1px solid rgba(202,162,74,.35);
  background:rgba(202,162,74,.12);
  color:var(--text);
  padding:8px 10px;border-radius:12px;
}

.btn{
  display:inline-flex;align-items:center;justify-content:center;
  padding:12px 14px;border-radius:14px;border:1px solid var(--border);
  gap:10px;font-weight:700;
}
.btn--primary{
  background: linear-gradient(180deg, rgba(202,162,74,.95), rgba(202,162,74,.75));
  border-color: rgba(202,162,74,.55);
  color:#121212;
}
.btn--ghost{background:rgba(255,255,255,.03);color:var(--text)}
.btn--ghost:hover{background:rgba(255,255,255,.06)}

.contact{display:grid;grid-template-columns: 1.2fr .8fr;gap:18px;align-items:stretch}
.contact__copy p{color:var(--muted)}
.contact__actions{margin:12px 0 16px}
.contact__data{display:flex;gap:14px;flex-wrap:wrap}
.kv{border:1px solid var(--border);border-radius:16px;padding:12px 14px;background:rgba(0,0,0,.25)}
.kv span{display:block;font-size:12px;color:var(--muted)}
.kv strong{display:block;margin-top:2px}

.contact__card{
  border:1px solid var(--border);
  border-radius:18px;
  padding:16px;
  background:rgba(255,255,255,.03);
}
.contact__cardTitle{color:var(--gold2);font-weight:800;margin-bottom:6px}
.contact__cardText{color:var(--muted)}
.divider{height:1px;background:var(--border);margin:14px 0}

.footer{border-top:1px solid var(--border);padding:18px 0;color:var(--muted)}
.footer__inner{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}
.footer__links{display:flex;gap:12px}
.footer__links a:hover{color:var(--text)}

.modal{position:fixed;inset:0;display:none;z-index:50}
.modal.is-open{display:block}
.modal__backdrop{position:absolute;inset:0;background:rgba(0,0,0,.68)}
.modal__dialog{
  position:relative;
  width:min(980px, 92%);
  margin:4vh auto;
  border-radius:18px;
  background:var(--bg2);
  border:1px solid var(--border);
  box-shadow: var(--shadow);
  overflow:hidden;
}
.modal__close{
  position:absolute;top:10px;right:10px;
  border:1px solid var(--border);
  background:rgba(0,0,0,.35);
  color:var(--text);
  width:38px;height:38px;border-radius:12px;
  cursor:pointer;
}
.modal__content{padding:14px}
.modal__title{font-weight:900;letter-spacing:.3px;margin-bottom:10px;color:var(--gold2)}
.modal__content img{
  width:100%;
  height:70vh;
  object-fit: contain; /* para ver el flyer completo */
  background:#0c0c0f;
  border-radius:14px;
  border:1px solid var(--border);
}
.modal__actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;padding:14px;border-top:1px solid var(--border)}

.wspFloat{
  position:fixed;right:18px;bottom:18px;z-index:60;
  width:56px;height:56px;border-radius:18px;
  background:linear-gradient(180deg, rgba(202,162,74,.95), rgba(202,162,74,.70));
  border:1px solid rgba(202,162,74,.55);
  display:flex;align-items:center;justify-content:center;
  box-shadow: 0 14px 35px rgba(0,0,0,.55);
  color:#141414;font-weight:900;
}
.wspFloat:hover{filter:brightness(1.03)}

@media (max-width: 980px){
  .hero__inner{grid-template-columns:1fr}
  .previewCard img{height:460px}
  .grid{grid-template-columns: repeat(2, 1fr)}
  .contact{grid-template-columns:1fr}
}
@media (max-width: 560px){
  .nav{display:none}
  .grid{grid-template-columns: 1fr}
  .card img{height:520px}
}
