/* ==========================================================================
   Bohemia RP — portada
   Paleta de marca: carmesí #711F27 · oro antiguo #B89A5D · pergamino #EAE0CC
                    nogal #3A2B24 · obsidiana #20201E
   ========================================================================== */

@import url("https://fonts.googleapis.com/css2?family=EB+Garamond:ital,wght@0,400;0,600;1,400&display=swap");

:root{
  --carmesi:#711f27;
  --carmesi-osc:#4d1419;
  --oro:#b89a5d;
  --oro-claro:#d9c48c;
  --pergamino:#eae0cc;
  --nogal:#3a2b24;
  --obsidiana:#20201e;
  --panel:#181411;
}

*{box-sizing:border-box}

html,body{margin:0;padding:0}

body{
  background:var(--obsidiana);
  color:var(--pergamino);
  font-family:"EB Garamond",Georgia,"Times New Roman",serif;
  font-size:18px;
  line-height:1.6;
  -webkit-font-smoothing:antialiased;
}

/* Botones / enlaces: sin subrayado */
a{color:inherit;text-decoration:none}
button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}

/* ============================ Barra superior ============================= */
.topbar{
  position:absolute;
  top:0;left:0;right:0;
  z-index:3;
  display:flex;
  justify-content:flex-end;
  padding:14px clamp(14px,3vw,40px);
}

.menu{
  display:flex;
  align-items:stretch;
  gap:6px;
  padding:6px 8px;
  border:1px solid rgba(184,154,93,.35);
  border-radius:10px;
  background:rgba(16,13,11,.82);
  backdrop-filter:blur(6px);
  box-shadow:0 6px 22px rgba(0,0,0,.45);
}

.menu__link{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 14px;
  border-radius:6px;
  font-size:.82rem;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--pergamino);
  transition:background .15s ease,color .15s ease;
}
.menu__link + .menu__link{border-left:1px solid rgba(184,154,93,.22)}
.menu__link:hover,.menu__link:focus-visible{
  background:rgba(184,154,93,.14);
  color:var(--oro-claro);
  outline:none;
}
.menu__ico{font-size:1rem;line-height:1}

/* Iconos SVG */
.icon{
  width:1.15em;height:1.15em;flex:none;
  color:var(--oro);
  fill:none;stroke:currentColor;stroke-width:1.6;
  stroke-linecap:round;stroke-linejoin:round;
}
.icon--lg{width:1.9rem;height:1.9rem;stroke-width:1.5}

/* ================================ Héroe ================================== */
.hero{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:100vh;
  padding:120px 16px 70px;
  overflow:hidden;
}

/* Fondo: el arte del mockup, desenfocado, como atmósfera */
.hero__bg{
  position:absolute;
  inset:0;
  background:url("assets/bg.jpg") center/cover no-repeat;
  filter:brightness(.86) saturate(1.04);
  z-index:0;
}
.hero__bg::after{
  content:"";
  position:absolute;inset:0;
  background:
    radial-gradient(120% 85% at 50% 18%,rgba(113,31,39,.16),transparent 55%),
    linear-gradient(180deg,rgba(24,20,18,.40) 0%,rgba(20,17,15,.52) 42%,rgba(18,15,13,.80) 76%,var(--obsidiana) 100%);
}

.hero__content{
  position:relative;
  z-index:1;
  width:100%;
  max-width:920px;
  text-align:center;
}

.brand{
  display:block;
  width:min(320px,62vw);
  height:auto;
  margin:0 auto 28px;
  filter:drop-shadow(0 10px 26px rgba(0,0,0,.6));
}

/* ================================ Panel ================================== */
.panel{
  position:relative;
  margin-top:0;
  padding:clamp(22px,3.4vw,42px) clamp(20px,4vw,56px);
  background:linear-gradient(180deg,rgba(24,20,17,.96),rgba(18,15,13,.97));
  border:1px solid rgba(184,154,93,.42);
  border-radius:6px;
  box-shadow:
    0 24px 60px rgba(0,0,0,.65),
    inset 0 0 0 1px rgba(184,154,93,.12),
    inset 0 0 60px rgba(0,0,0,.5);
}
/* Doble filete dorado */
.panel::before{
  content:"";
  position:absolute;inset:6px;
  border:1px solid rgba(184,154,93,.22);
  border-radius:3px;
  pointer-events:none;
}

.panel__title{
  margin:0 0 .35em;
  font-size:clamp(1.25rem,2.7vw,2rem);
  font-weight:600;
  letter-spacing:.14em;
  text-transform:uppercase;
  color:var(--pergamino);
}

.panel__lead{
  margin:0 0 1.1em;
  font-size:clamp(1rem,1.7vw,1.22rem);
  color:var(--oro-claro);
}

.panel__text{
  margin:0 0 1.1em;
  color:#d9cfba;
  font-size:clamp(.98rem,1.5vw,1.1rem);
}

.badge{
  display:inline-block;
  margin:.4em 0 1.2em;
  padding:.42em 2.2em;
  background:linear-gradient(180deg,var(--carmesi),var(--carmesi-osc));
  border:1px solid var(--oro);
  border-radius:4px;
  color:var(--pergamino);
  font-size:clamp(.9rem,1.4vw,1.05rem);
  letter-spacing:.24em;
  text-transform:uppercase;
  box-shadow:0 6px 18px rgba(0,0,0,.5), inset 0 0 18px rgba(0,0,0,.35);
}

/* Separador con texto */
.divider{
  display:flex;
  align-items:center;
  gap:14px;
  margin:1.6em 0 1.3em;
  color:var(--oro-claro);
  font-size:clamp(.78rem,1.2vw,.95rem);
  letter-spacing:.2em;
  text-transform:uppercase;
}
.divider::before,.divider::after{
  content:"";
  flex:1;
  height:1px;
  background:linear-gradient(90deg,transparent,rgba(184,154,93,.75),transparent);
}

/* ============================== Botones CTA ============================== */
.cta{
  display:flex;
  gap:16px;
  justify-content:center;
  flex-wrap:wrap;
}

.btn{
  display:flex;
  align-items:center;
  gap:14px;
  flex:1 1 300px;
  max-width:380px;
  padding:14px 20px;
  border:1px solid var(--oro);
  border-radius:5px;
  text-align:left;
  transition:transform .15s ease,box-shadow .15s ease,filter .15s ease;
  box-shadow:inset 0 0 24px rgba(0,0,0,.45),0 8px 22px rgba(0,0,0,.4);
}
.btn:hover,.btn:focus-visible{
  transform:translateY(-2px);
  filter:brightness(1.08);
  box-shadow:inset 0 0 24px rgba(0,0,0,.35),0 14px 30px rgba(0,0,0,.55);
  outline:none;
}
.btn--foro{background:linear-gradient(180deg,#7d2229,#4d1419)}
.btn--discord{background:linear-gradient(180deg,#2b2b2b,#141414)}


.btn__txt{display:flex;flex-direction:column;gap:2px}
.btn__title{
  font-size:clamp(1rem,1.6vw,1.2rem);
  letter-spacing:.1em;
  text-transform:uppercase;
  color:var(--pergamino);
}
.btn__sub{font-size:.86rem;color:#cbbfa6}

/* ================================ Pie ==================================== */
.footer{
  padding:24px 16px 34px;
  text-align:center;
  font-size:.85rem;
  color:#9c8f74;
  background:var(--obsidiana);
}
.footer a{color:var(--oro)}
.footer a:hover{color:var(--oro-claro)}

/* ============================== Responsive =============================== */
@media (max-width:640px){
  body{font-size:16px}
  .hero{padding:104px 12px 48px;align-items:flex-start}
  .topbar{justify-content:center}
  .menu__link{padding:8px 10px;letter-spacing:.08em;font-size:.72rem}
  .brand{width:min(260px,66vw)}
  .cta{flex-direction:column;align-items:stretch}
  .btn{flex:0 0 auto;max-width:none}
  .divider{letter-spacing:.12em}
}
