/*
Theme Name: M CARRION Master
Theme URI: https://mcarrion.com/
Author: Mike Carrion (generated with ChatGPT)
Description: Tema ligero y cinematográfico (negro/oro) optimizado para Elementor. Incluye menú superior, hero con fondo configurable, y estilos base.
Version: 1.0.0
License: GPLv2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: mcarrion-master
Tags: custom-background, custom-logo, custom-menu, one-column, dark, responsive-layout
*/

:root{
  --mc-bg:#050505;
  --mc-panel:rgba(0,0,0,.55);
  --mc-gold:#d6b15a;
  --mc-gold2:#b98a2d;
  --mc-text:#f2efe8;
  --mc-muted:rgba(242,239,232,.75);
  --mc-border:rgba(214,177,90,.22);
}

html{scroll-behavior:smooth;}
body{
  margin:0;
  background:var(--mc-bg);
  color:var(--mc-text);
  font-family: system-ui, -apple-system, Segoe UI, Roboto, Arial, "Helvetica Neue", Helvetica, sans-serif;
  line-height:1.55;
}

a{color:var(--mc-gold); text-decoration:none;}
a:hover{color:#f0d48a;}

.container{
  width:min(1180px, calc(100% - 32px));
  margin-inline:auto;
}

.site-header{
  position:sticky;
  top:0;
  z-index:999;
  backdrop-filter: blur(10px);
  background: rgba(0,0,0,.45);
  border-bottom:1px solid var(--mc-border);
}
.header-inner{
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:14px 0;
  gap:16px;
}

.brand{
  display:flex;
  align-items:center;
  gap:12px;
}
.brand .site-title{
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size:20px;
  margin:0;
}
.brand .site-title a{color:var(--mc-text);}
.brand .site-tagline{font-size:12px; color:var(--mc-muted); margin:0;}

.nav-toggle{
  display:none;
  background:transparent;
  border:1px solid var(--mc-border);
  color:var(--mc-text);
  padding:10px 12px;
  border-radius:12px;
  cursor:pointer;
}

.main-nav ul{
  list-style:none;
  display:flex;
  gap:22px;
  padding:0;
  margin:0;
  align-items:center;
}
.main-nav a{
  color:var(--mc-text);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
  padding:8px 2px;
  border-bottom:1px solid transparent;
}
.main-nav a:hover{border-bottom-color:var(--mc-gold); color:var(--mc-gold);}

.hero{
  position:relative;
  min-height: 78vh;
  display:flex;
  align-items:center;
  border-bottom:1px solid var(--mc-border);
  overflow:hidden;
}
.hero::before{
  content:"";
  position:absolute; inset:0;
  background:
    radial-gradient(900px 600px at 20% 40%, rgba(214,177,90,.18), transparent 55%),
    linear-gradient(180deg, rgba(0,0,0,.35), rgba(0,0,0,.65));
  pointer-events:none;
}
.hero-bg{
  position:absolute; inset:0;
  background-size:cover;
  background-position:center;
  transform:scale(1.02);
  filter:saturate(1.05) contrast(1.05);
}
.hero-content{
  position:relative;
  padding: 84px 0 64px;
}
.hero h1{
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing:.08em;
  text-transform:uppercase;
  font-size: clamp(30px, 4vw, 56px);
  margin:0 0 10px;
}
.hero .subtitle{
  color:var(--mc-muted);
  max-width:62ch;
  margin:0 0 22px;
  font-size:16px;
}

.cta-row{
  display:flex;
  gap:14px;
  flex-wrap:wrap;
}
.mc-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:14px 18px;
  border-radius:16px;
  border:1px solid var(--mc-border);
  background: rgba(0,0,0,.45);
  color:var(--mc-text);
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:12px;
}
.mc-btn:hover{
  border-color: rgba(214,177,90,.55);
  box-shadow: 0 10px 30px rgba(0,0,0,.35);
  transform: translateY(-1px);
}
.mc-btn.primary{
  background: linear-gradient(135deg, rgba(214,177,90,.22), rgba(0,0,0,.35));
}

.section{
  padding:64px 0;
  border-bottom:1px solid var(--mc-border);
}
.section h2{
  font-family: Georgia, "Times New Roman", serif;
  letter-spacing:.12em;
  text-transform:uppercase;
  font-size:22px;
  margin:0 0 18px;
}
.card{
  border:1px solid var(--mc-border);
  background: rgba(0,0,0,.35);
  border-radius:22px;
  padding:22px;
}

.site-footer{
  padding:30px 0;
  color:var(--mc-muted);
}

@media (max-width: 900px){
  .nav-toggle{display:inline-flex;}
  .main-nav{
    position:absolute;
    left:0; right:0;
    top:100%;
    background: rgba(0,0,0,.78);
    backdrop-filter: blur(10px);
    border-bottom:1px solid var(--mc-border);
    display:none;
  }
  .main-nav.is-open{display:block;}
  .main-nav ul{
    flex-direction:column;
    align-items:flex-start;
    padding:14px 16px;
    gap:10px;
  }
  .hero-content{padding:66px 0 44px;}
}
