/*
Theme Name: Chevrolet TDF Child
Theme URI: https://chevrolettdf.com
Description: Child theme de Astra para Comunidad Chevrolet TDF - Plan de Ahorro. Precios y modelos editables desde el panel "Planes Chevrolet".
Author: Wyra
Template: astra
Version: 1.2.1
Text Domain: chevrolet-child
*/

@font-face{
  font-family:'Louis Global';
  src:url('assets/fonts/louisglobal-regular.woff2') format('woff2'),
      url('assets/fonts/louisglobal-regular.otf') format('opentype');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Louis Global';
  src:url('assets/fonts/louisglobal-bold.woff2') format('woff2'),
      url('assets/fonts/louisglobal-bold.otf') format('opentype');
  font-weight:700; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Louis Global Condensed';
  src:url('assets/fonts/louisglobal-condensed-regular.woff2') format('woff2'),
      url('assets/fonts/louisglobal-condensed-regular.otf') format('opentype');
  font-weight:400; font-style:normal; font-display:swap;
}
@font-face{
  font-family:'Louis Global Condensed';
  src:url('assets/fonts/louisglobal-condensed-bold.woff2') format('woff2'),
      url('assets/fonts/louisglobal-condensed-bold.otf') format('opentype');
  font-weight:700; font-style:normal; font-display:swap;
}

:root{
  --black:#0d0d0d;
  --dark:#141414;
  --panel:#1c1c1c;
  --gold:#c9a24b;
  --yellow:#f4c10f;
  --white:#ffffff;
  --gray:#9a9a9a;
  --line:#2c2c2c;
  --radius:14px;
}

/* --------------------------------------------------------------
   Fix: Astra abre <div id="content" class="site-content">
   <div class="ast-container"> con display:flex (para el layout
   con sidebar) y front-page.php nunca cierra/reemplaza esa
   estructura. Sin esto, cada <section> de la landing queda como
   hijo flex y se acomoda en columnas angostas en vez de apilarse.
   -------------------------------------------------------------- */
body.chevrolet-page #content.site-content,
body.chevrolet-page .ast-container,
body.chevrolet-page #primary,
body.chevrolet-page #main{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  float:none !important;
  padding:0 !important;
  margin:0 !important;
}

/* Oculta el header/footer/título por defecto de Astra en esta página:
   la landing trae su propio header y footer. */
body.chevrolet-page #masthead,
body.chevrolet-page .site-footer,
body.chevrolet-page .ast-footer,
body.chevrolet-page .entry-header,
body.chevrolet-page .ast-breadcrumbs-container,
body.chevrolet-page .page-header{
  display:none !important;
}

body.chevrolet-page{
  font-family:'Louis Global', Arial, sans-serif !important;
  background:var(--black);
  color:var(--white);
  line-height:1.5;
  -webkit-font-smoothing:antialiased;
}
.chevrolet-page img{max-width:100%; display:block;}
.chevrolet-page a{text-decoration:none; color:inherit;}
.chevrolet-page h1,.chevrolet-page h2,.chevrolet-page h3,.chevrolet-page h4{
  font-family:'Louis Global Condensed', Arial, sans-serif;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.5px;
  color:var(--white) !important;
}
.chevrolet-page .wrap{max-width:1200px; margin:0 auto; padding:0 24px;}
.chevrolet-page .btn{
  display:inline-flex; align-items:center; gap:10px;
  background:var(--yellow); color:var(--black);
  font-family:'Louis Global Condensed', Arial, sans-serif;
  font-weight:700; text-transform:uppercase; letter-spacing:.5px;
  padding:14px 28px; border-radius:999px; font-size:15px;
  border:none; cursor:pointer; transition:transform .15s ease, background .15s ease;
}
.chevrolet-page .btn:hover{background:#ffd23f; transform:translateY(-2px);}
.chevrolet-page .btn-outline{
  background:transparent; color:var(--white); border:2px solid var(--white);
}
.chevrolet-page .btn-outline:hover{background:var(--white); color:var(--black);}
.chevrolet-page .btn-sm{padding:10px 20px; font-size:13px;}
.chevrolet-page .eyebrow{
  color:var(--gold); font-weight:700; letter-spacing:2px; font-size:13px;
  text-transform:uppercase; margin-bottom:10px; display:block;
}

/* HEADER */
.chevrolet-page header.site-header-chevy{
  position:sticky; top:0; z-index:50;
  background:rgba(13,13,13,.92); backdrop-filter:blur(8px);
  border-bottom:1px solid var(--line);
}
.chevrolet-page header.site-header-chevy .wrap{display:flex; align-items:center; justify-content:space-between; padding:16px 24px;}
.chevrolet-page .logo{font-family:'Louis Global Condensed'; font-weight:700; font-size:22px; letter-spacing:1px; text-transform:uppercase;}
.chevrolet-page .logo span{color:var(--gold);}

/* HERO */
.chevrolet-page .hero{
  position:relative; min-height:88vh; display:flex; align-items:center;
  background:linear-gradient(180deg, rgba(10,10,10,.55) 0%, rgba(10,10,10,.75) 55%, var(--black) 100%),
    var(--hero-img, url('https://www.chevroletcomercial.com.ar/content/dam/chevrolet/sa/ar/es/master/home/index-subcontent/chevy-plan/planes-ahorro/nuestros-planes-mob.jpg')) center/cover no-repeat;
  padding:120px 0 80px;
}
.chevrolet-page .hero-content{max-width:640px;}
.chevrolet-page .hero h1{font-size:clamp(38px,6vw,64px); line-height:1.02; margin-bottom:18px;}
.chevrolet-page .hero h1 .accent{color:var(--yellow);}
.chevrolet-page .hero p{font-size:18px; color:#e6e6e6; margin-bottom:32px; max-width:520px;}
.chevrolet-page .hero-ctas{display:flex; gap:16px; flex-wrap:wrap;}
.chevrolet-page .hero-stats{display:flex; gap:40px; margin-top:56px; flex-wrap:wrap;}
.chevrolet-page .hero-stat b{display:block; font-family:'Louis Global Condensed'; font-size:40px; color:var(--yellow); line-height:1;}
.chevrolet-page .hero-stat span{font-size:13px; color:var(--gray); text-transform:uppercase; letter-spacing:1px;}

/* SECTION TITLES */
.chevrolet-page .section{padding:90px 0;}
.chevrolet-page .section-head{max-width:680px; margin:0 auto 50px; text-align:center;}
.chevrolet-page .section-head h2{font-size:clamp(30px,4vw,44px); margin-bottom:14px;}
.chevrolet-page .section-head p{color:var(--gray); font-size:17px;}

/* MODEL CARDS */
.chevrolet-page .models{display:grid; grid-template-columns:repeat(auto-fit, minmax(300px,1fr)); gap:24px;}
.chevrolet-page .card{
  background:var(--panel); border:1px solid var(--line); border-radius:var(--radius);
  overflow:hidden; display:flex; flex-direction:column; transition:transform .2s ease, border-color .2s ease;
}
.chevrolet-page .card:hover{transform:translateY(-6px); border-color:var(--gold);}
.chevrolet-page .card-img{background:linear-gradient(180deg,#f4f4f4,#e2e2e2); padding:20px; display:flex; align-items:center; justify-content:center; min-height:180px;}
.chevrolet-page .card-img img{height:150px; width:auto; object-fit:contain; margin:0 auto;}
.chevrolet-page .card-body{padding:22px 22px 26px; display:flex; flex-direction:column; flex:1;}
.chevrolet-page .card-body h3{font-size:24px; margin-bottom:14px;}
.chevrolet-page .price-label{font-size:11px; color:var(--gray); letter-spacing:1.5px; text-transform:uppercase;}
.chevrolet-page .price{font-family:'Louis Global Condensed'; font-size:34px; color:var(--yellow); font-weight:700; margin:2px 0 6px;}
.chevrolet-page .price-sub{font-size:12px; color:#bdbdbd; margin-bottom:14px;}
.chevrolet-page .features{list-style:none; margin:0 0 20px; padding:0; font-size:13px; color:#d6d6d6;}
.chevrolet-page .features li{padding-left:16px; position:relative; margin-bottom:6px;}
.chevrolet-page .features li::before{content:"•"; color:var(--gold); position:absolute; left:0;}
.chevrolet-page .card-body .btn{margin-top:auto; justify-content:center; width:100%;}

/* STEPS */
.chevrolet-page .steps-band{background:var(--panel); border-top:1px solid var(--line); border-bottom:1px solid var(--line);}
.chevrolet-page .steps{display:grid; grid-template-columns:repeat(auto-fit, minmax(220px,1fr)); gap:32px;}
.chevrolet-page .step{text-align:center; padding:0 12px;}
.chevrolet-page .step-num{
  width:56px; height:56px; border-radius:50%; background:var(--yellow); color:var(--black);
  display:flex; align-items:center; justify-content:center; font-family:'Louis Global Condensed';
  font-weight:700; font-size:22px; margin:0 auto 18px;
}
.chevrolet-page .step h4{font-size:17px; color:var(--white); margin-bottom:8px;}
.chevrolet-page .step p{font-size:13px; color:var(--gray);}

/* CTA BAND */
.chevrolet-page .cta-band{
  background:linear-gradient(120deg, #171717, #0b0b0b);
  border-radius:var(--radius); padding:50px 40px; display:flex; align-items:center;
  justify-content:space-between; gap:30px; flex-wrap:wrap; border:1px solid var(--line);
}
.chevrolet-page .cta-band h3{font-size:28px; margin-bottom:8px;}
.chevrolet-page .cta-band p{color:var(--gray); font-size:15px;}

/* LOGIN STRIP */
.chevrolet-page .login-strip{
  display:flex; align-items:center; justify-content:space-between; gap:24px; flex-wrap:wrap;
  background:var(--panel); border:1px solid var(--line); border-radius:var(--radius); padding:36px 40px;
}
.chevrolet-page .login-strip h4{font-size:20px; margin-bottom:6px;}
.chevrolet-page .login-strip p{color:var(--gray); font-size:14px;}

/* FOOTER */
.chevrolet-page footer.site-footer-chevy{background:var(--dark); border-top:1px solid var(--line); padding:50px 0 30px;}
.chevrolet-page .footer-grid{display:flex; justify-content:space-between; gap:40px; flex-wrap:wrap; margin-bottom:30px;}
.chevrolet-page .footer-brand .logo{margin-bottom:12px;}
.chevrolet-page .footer-brand p{color:var(--gray); font-size:13px; max-width:320px;}
.chevrolet-page .footer-col h5{font-size:13px; text-transform:uppercase; letter-spacing:1px; color:var(--gold); margin-bottom:14px;}
.chevrolet-page .footer-col a,.chevrolet-page .footer-col p{display:block; color:var(--gray); font-size:14px; margin-bottom:8px;}
.chevrolet-page .footer-col a:hover{color:var(--white);}
.chevrolet-page .footer-legal{border-top:1px solid var(--line); padding-top:20px; font-size:12px; color:#6f6f6f;}

/* WHATSAPP FLOAT */
.chevrolet-page .wa-float{
  position:fixed; bottom:24px; right:24px; z-index:60;
  background:#25D366; width:60px; height:60px; border-radius:50%;
  display:flex; align-items:center; justify-content:center;
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.chevrolet-page .wa-float svg{width:30px; height:30px; fill:#fff;}

/* LEAD MODAL */
.chevrolet-page .chevy-lead-modal{
  display:none; position:fixed; inset:0; z-index:100;
  background:rgba(0,0,0,.7); align-items:center; justify-content:center; padding:20px;
}
.chevrolet-page .chevy-lead-modal.is-open{display:flex;}
.chevrolet-page .chevy-lead-modal-box{
  background:var(--panel); border:1px solid var(--line); border-radius:var(--radius);
  padding:32px; max-width:400px; width:100%; position:relative;
}
.chevrolet-page .chevy-lead-modal-box h3{font-size:22px; margin-bottom:10px; text-transform:none;}
.chevrolet-page .chevy-lead-modal-box p{color:var(--gray); font-size:14px; margin-bottom:20px;}
.chevrolet-page .chevy-lead-modal-box label{display:block; font-size:12px; color:var(--gray); text-transform:uppercase; letter-spacing:1px; margin-bottom:6px; margin-top:14px;}
.chevrolet-page .chevy-lead-modal-box input[type="text"],
.chevrolet-page .chevy-lead-modal-box input[type="tel"]{
  width:100%; padding:12px 14px; border-radius:8px; border:1px solid var(--line);
  background:var(--black); color:var(--white); font-size:15px;
}
.chevrolet-page .chevy-lead-modal-box .btn{width:100%; justify-content:center; margin-top:22px;}
.chevrolet-page .chevy-lead-close{
  position:absolute; top:14px; right:16px; background:none; border:none; color:var(--gray);
  font-size:26px; line-height:1; cursor:pointer;
}
.chevrolet-page .chevy-lead-close:hover{color:var(--white);}
.chevrolet-page .chevy-lead-error{color:#ff6b6b; font-size:13px; margin-top:10px; display:none;}

@media (max-width:640px){
  .chevrolet-page .section{padding:60px 0;}
  .chevrolet-page .hero{padding:110px 0 60px; min-height:auto;}
  .chevrolet-page .cta-band,.chevrolet-page .login-strip{flex-direction:column; text-align:center;}
}
