:root{
  --bg:#050505;
  --panel:#0d0d0d;
  --panel-2:#141414;
  --text:#f4f4f1;
  --muted:#9d9a96;
  --metal:#5e5a58;
  --accent:#9a7446;
  --accent-2:#c29a62;
  --line:#262626;
  --max:1180px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.5}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
.container{width:min(var(--max),calc(100% - 40px));margin:0 auto}
.nav{position:sticky;top:0;z-index:50;background:rgba(5,5,5,.9);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-inner{min-height:78px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:13px;letter-spacing:.16em;font-weight:800}
.brand img{width:38px;height:46px;object-fit:contain}
.brand span{font-size:15px}
.menu{display:flex;gap:30px;align-items:center}
.menu a{font-size:12px;text-transform:uppercase;letter-spacing:.18em;color:#c7c5c2;position:relative;padding:30px 0}
.menu a::after{content:"";position:absolute;left:0;bottom:20px;width:100%;height:1px;background:var(--accent);transform:scaleX(0);transition:.25s}
.menu a:hover::after,.menu a.active::after{transform:scaleX(1)}
.menu a.active{color:#fff}
.cta-small{border:1px solid var(--accent);padding:11px 16px!important;color:#fff!important}
.cta-small::after{display:none}
.hero{min-height:calc(100vh - 78px);display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:40px;padding:70px 0}
.kicker{font-size:12px;letter-spacing:.28em;text-transform:uppercase;color:var(--accent-2);margin-bottom:18px}
h1{font-size:clamp(56px,9vw,118px);line-height:.83;letter-spacing:-.055em;margin:0;text-transform:uppercase}
.hero p{font-size:18px;color:#bcb9b5;max-width:610px;margin:28px 0 34px}
.actions{display:flex;gap:14px;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 24px;border:1px solid var(--accent);text-transform:uppercase;letter-spacing:.12em;font-size:12px;font-weight:700;transition:.25s}
.btn.primary{background:var(--accent);color:#070707}
.btn:hover{transform:translateY(-2px);border-color:var(--accent-2)}
.hero-visual{position:relative;display:flex;justify-content:center;align-items:center;min-height:600px}
.hero-visual::before{content:"";position:absolute;width:420px;height:420px;border:1px solid #242424;border-radius:50%;box-shadow:0 0 120px rgba(154,116,70,.08)}
.hero-visual img{width:min(330px,80%);position:relative;z-index:2;filter:drop-shadow(0 25px 45px rgba(0,0,0,.6))}
.section{padding:100px 0;border-top:1px solid var(--line)}
.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:44px}
.eyebrow{font-size:11px;text-transform:uppercase;letter-spacing:.26em;color:var(--accent-2)}
h2{font-size:clamp(38px,5vw,72px);line-height:.95;margin:8px 0 0;text-transform:uppercase;letter-spacing:-.035em}
.lead{max-width:560px;color:#a9a7a3}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.card{background:linear-gradient(180deg,#111,#0b0b0b);border:1px solid var(--line);padding:32px;min-height:250px;display:flex;flex-direction:column;justify-content:space-between}
.card .num{font-size:12px;color:var(--accent-2);letter-spacing:.18em}.card h3{font-size:24px;margin:38px 0 10px}.card p{color:#9e9c98;font-size:14px}
.quote{font-size:clamp(34px,5vw,68px);line-height:1.02;letter-spacing:-.035em;max-width:980px;margin:0}
.quote em{font-style:normal;color:var(--accent-2)}
.page-hero{padding:95px 0 55px;border-bottom:1px solid var(--line)}
.page-hero h1{font-size:clamp(54px,8vw,104px)}
.video-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.video-card{background:var(--panel);border:1px solid var(--line);overflow:hidden}
.video-thumb{aspect-ratio:16/9;display:grid;place-items:center;background:radial-gradient(circle at center,#28231e 0,#111 44%,#080808 100%);position:relative}
.video-thumb::after{content:"▶";width:68px;height:68px;border:1px solid var(--accent);border-radius:50%;display:grid;place-items:center;padding-left:4px;color:var(--accent-2);font-size:23px}
.video-meta{padding:24px}.video-meta small{color:var(--accent-2);letter-spacing:.16em;text-transform:uppercase}.video-meta h3{margin:7px 0 8px;font-size:24px}.video-meta p{margin:0;color:#999}
.contact-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:42px;align-items:start}
.contact-info{position:sticky;top:110px}.contact-info p{color:#aaa;max-width:430px}.contact-lines{margin-top:34px;border-top:1px solid var(--line)}.contact-line{padding:18px 0;border-bottom:1px solid var(--line)}.contact-line span{display:block;font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent-2);margin-bottom:4px}
form{background:var(--panel);border:1px solid var(--line);padding:34px}.field{margin-bottom:18px}.field label{display:block;font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:#b3b0ac;margin-bottom:8px}.field input,.field textarea,.field select{width:100%;background:#080808;border:1px solid #2b2b2b;color:#fff;padding:14px 15px;outline:none}.field input:focus,.field textarea:focus,.field select:focus{border-color:var(--accent)}.field textarea{min-height:130px;resize:vertical}.notice{font-size:12px;color:#7f7c78;margin-top:14px}
footer{border-top:1px solid var(--line);padding:28px 0;color:#777;font-size:12px}.footer-inner{display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}
@media(max-width:860px){.menu{gap:16px}.menu a{font-size:10px}.hero{grid-template-columns:1fr;padding-top:50px}.hero-visual{min-height:420px}.cards,.video-grid,.contact-layout{grid-template-columns:1fr}.contact-info{position:static}.section-head{align-items:start;flex-direction:column}.cta-small{display:none}}
@media(max-width:600px){.container{width:min(var(--max),calc(100% - 28px))}.brand span{display:none}.menu{gap:11px}.menu a{letter-spacing:.09em}.hero{min-height:auto}.hero-visual::before{width:290px;height:290px}.section{padding:72px 0}form{padding:22px}}

/* ========================================
   PAQUETES - INFINITY MENTALITY
======================================== */

.packages-section {
  padding-top: 100px;
  padding-bottom: 120px;
}

.packages-header {
  margin-bottom: 55px;
}

.packages-header h2 {
  margin: 8px 0 12px;
  font-size: clamp(42px, 6vw, 78px);
  letter-spacing: -3px;
  line-height: .95;
}

.packages-header p {
  max-width: 520px;
  opacity: .65;
  line-height: 1.6;
}


/* CONTENEDOR DE LOS 3 PAQUETES */

.packages-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  align-items: stretch;
}


/* TARJETA */

.package-card {
  position: relative;
  display: flex;
  flex-direction: column;

  min-height: 570px;
  padding: 32px;

  background: #111;
  border: 1px solid rgba(255,255,255,.12);

  transition:
    transform .3s ease,
    border-color .3s ease,
    background .3s ease;
}

.package-card:hover {
  transform: translateY(-8px);
  border-color: rgba(255,255,255,.35);
  background: #151515;
}


/* PARTE SUPERIOR */

.package-top {
  display: flex;
  justify-content: space-between;
  align-items: center;

  margin-bottom: 55px;
}

.package-number {
  font-size: 12px;
  opacity: .4;
  letter-spacing: 2px;
}

.package-level {
  font-size: 12px;
  letter-spacing: 2px;
  font-weight: 700;
}


/* TÍTULO */

.package-card h3 {
  font-size: clamp(28px, 3vw, 40px);
  line-height: 1.05;
  letter-spacing: -1px;

  margin: 0 0 30px;
}


/* LÍNEA */

.package-line {
  width: 100%;
  height: 1px;

  background: rgba(255,255,255,.14);

  margin-bottom: 28px;
}


/* BENEFICIOS */

.package-card ul {
  list-style: none;
  padding: 0;
  margin: 0 0 40px;
}

.package-card li {
  position: relative;

  padding: 10px 0 10px 22px;

  font-size: 14px;
  line-height: 1.5;

  color: rgba(255,255,255,.72);
}

.package-card li::before {
  content: "—";

  position: absolute;
  left: 0;

  color: #a78b65;
}


/* BOTÓN */

.package-btn {
  margin-top: auto;

  display: flex;
  align-items: center;
  justify-content: space-between;

  padding: 17px 20px;

  border: 1px solid rgba(255,255,255,.25);

  color: #fff;
  text-decoration: none;

  font-size: 12px;
  font-weight: 700;
  letter-spacing: 2px;

  transition: .25s ease;
}

.package-btn span {
  font-size: 20px;
}

.package-btn:hover {
  background: #fff;
  color: #000;
}


/* PAQUETE INTERMEDIO */

.package-card.featured {
  border-color: #a78b65;

  background:
    linear-gradient(
      160deg,
      rgba(167,139,101,.13),
      #111 45%
    );
}

.popular-badge {
  position: absolute;
  top: -13px;
  right: 22px;

  padding: 7px 13px;

  background: #a78b65;
  color: #080808;

  font-size: 10px;
  font-weight: 800;
  letter-spacing: 1.5px;
}

.primary-package {
  background: #a78b65;
  color: #080808;
  border-color: #a78b65;
}

.primary-package:hover {
  background: #fff;
  border-color: #fff;
}


/* CELULAR */

@media (max-width: 900px) {

  .packages-grid {
    grid-template-columns: 1fr;
    gap: 28px;
  }

  .package-card {
    min-height: auto;
  }

  .package-top {
    margin-bottom: 35px;
  }

}