
/*
Theme Name: ArquiAcabados
Theme URI: https://example.com/arquiacabados
Author: ArquiAcabados
Author URI: https://example.com
Description: Tema premium negro + oro para remodelaciones, domótica y seguridad. Optimizado para Elementor, WooCommerce, SEO y WhatsApp.
Version: 1.0.0
Requires at least: 6.0
Tested up to: 6.6
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
Text Domain: arquiacabados
Tags: custom-colors, custom-logo, custom-menu, one-column, two-columns, translation-ready, rtl-language-support, theme-options, e-commerce, elementor, woocommerce
*/

/* Paleta Negro + Oro */
:root{
  --aa-black: #000000;
  --aa-graphite:#111111;
  --aa-gold:#D4AF37;
  --aa-white:#ffffff;
  --aa-muted:#cfcfcf;
  --aa-accent:#D4AF37;
  --aa-font-heading: 'Playfair Display', serif;
  --aa-font-body: 'Montserrat', system-ui, -apple-system, Segoe UI, Roboto, Helvetica, Arial, sans-serif;
}

html, body{
  margin:0; padding:0;
  background: var(--aa-black);
  color: var(--aa-white);
  font-family: var(--aa-font-body);
  line-height:1.6;
}

/* Tipografías (cargas por Google Fonts opcional vía functions.php) */
h1,h2,h3,h4,h5,h6{
  font-family: var(--aa-font-heading);
  letter-spacing: .2px;
  color: var(--aa-white);
  margin: 0 0 .6rem 0;
}
a{ color: var(--aa-gold); text-decoration:none; }
a:hover{ opacity:.9; }

/* Layout básico */
.container{
  width: min(1200px, 92vw);
  margin: 0 auto;
  padding: 2rem 0;
}

/* Header */
.aa-header{
  position: sticky; top:0; z-index: 1000;
  backdrop-filter: blur(8px);
  background: rgba(0,0,0,.6);
  border-bottom: 1px solid rgba(212,175,55,.15);
}
.aa-header .brand{
  display:flex; align-items:center; gap:.6rem; padding: .8rem 0;
  font-family: var(--aa-font-heading);
  font-size: 1.25rem;
}
.aa-nav a{
  padding:.5rem 1rem; border-radius:999px;
}
.aa-cta{
  background: var(--aa-gold); color: var(--aa-black);
  padding:.6rem 1rem; border-radius:999px; font-weight:700;
}

/* Hero */
.hero{
  position: relative; min-height: 90vh; display:flex; align-items:center;
  color: var(--aa-white);
  overflow:hidden;
  border-bottom: 1px solid rgba(212,175,55,.15);
}
.hero video, .hero .fallback{
  position:absolute; inset:0; width:100%; height:100%; object-fit:cover; filter: brightness(.5);
}
.hero .content{
  position:relative; z-index:2; width:min(1100px, 92vw); margin:0 auto; padding: 6rem 1rem;
}
.hero .kicker{
  text-transform:uppercase; letter-spacing:2px; color: var(--aa-gold); font-weight:600; font-size:.9rem;
}
.hero h1{
  font-size: clamp(2rem, 5vw, 4rem);
  text-shadow: 0 0 18px rgba(212,175,55,.25);
}
.hero .lead{ max-width: 60ch; margin:.8rem 0 1.2rem 0; color:#f0f0f0; }
.hero .actions{ display:flex; gap:1rem; flex-wrap:wrap; }

.button{
  display:inline-flex; align-items:center; gap:.5rem;
  padding:.9rem 1.2rem; border-radius: 12px; font-weight:700;
  border: 1px solid rgba(212,175,55,.4);
  transition: transform .18s ease, box-shadow .18s ease;
}
.button.primary{ background: var(--aa-gold); color: var(--aa-black); }
.button.secondary{ background: transparent; color: var(--aa-white); }
.button:hover{ transform: translateY(-1px); box-shadow: 0 8px 24px rgba(212,175,55,.18); }

/* Tarjetas de servicios */
.services{ background: var(--aa-graphite); }
.grid{
  display:grid; gap:1.2rem;
  grid-template-columns: repeat(1, 1fr);
}
@media(min-width:700px){
  .grid{ grid-template-columns: repeat(2, 1fr); }
}
@media(min-width:1024px){
  .grid{ grid-template-columns: repeat(5, 1fr); }
}
.card{
  background: #0c0c0c; padding:1.2rem; border-radius: 16px;
  border: 1px solid rgba(212,175,55,.15);
  min-height: 160px; display:flex; flex-direction:column; justify-content:space-between;
}
.card h3{ color: var(--aa-gold); margin-bottom:.3rem; }
.card p{ color: #d6d6d6; font-size:.95rem; }
.card a{ align-self:flex-start; margin-top:.6rem; }

/* Portafolio */
.portfolio .grid{ grid-template-columns: repeat(1, 1fr); }
@media(min-width:900px){ .portfolio .grid{ grid-template-columns: repeat(3, 1fr);} }
.thumb{
  aspect-ratio: 16/10; background:#1a1a1a; border-radius: 14px; border:1px solid rgba(212,175,55,.12);
  display:grid; place-items:center; color:#777;
}

/* Proceso */
.process{ background: #0b0b0b; }
.steps{ display:grid; gap:1rem; grid-template-columns: repeat(1,1fr); }
@media(min-width:900px){ .steps{ grid-template-columns: repeat(4,1fr);} }
.step{
  border:1px solid rgba(212,175,55,.15); padding:1rem; border-radius:14px; background:#0e0e0e;
}

/* Footer */
footer{ background:#050505; border-top:1px solid rgba(212,175,55,.15); }
footer .legal{ color:#bdbdbd; font-size:.9rem; }
footer .brand{ color: var(--aa-gold); font-weight:700; }
