
:root{
  --verde:#118642;
  --dorado:#d89122;
  --azul:#082333;
  --texto:#132033;
  --suave:#5c6574;
  --fondo:#f8f6f1;
  --blanco:#ffffff;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Montserrat,Arial,sans-serif;background:var(--fondo);color:var(--texto)}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.header{position:sticky;top:0;z-index:100;background:#fffffff2;backdrop-filter:blur(10px);display:flex;align-items:center;justify-content:space-between;gap:22px;padding:16px 6%;box-shadow:0 8px 24px rgba(0,0,0,.06)}
.logo h2{font-family:Cinzel,serif;font-size:34px;letter-spacing:4px;color:#061827;line-height:1}
.logo p{font-size:12px;text-transform:uppercase;letter-spacing:1.5px;color:#111}
.menu{display:flex;align-items:center;gap:20px;flex-wrap:wrap;justify-content:flex-end}
.menu a{text-transform:uppercase;font-size:13px;font-weight:800;color:#111827}
.menu a.active{color:var(--dorado);border-bottom:2px solid var(--dorado);padding-bottom:6px}
.wa-top{background:var(--verde)!important;color:white!important;border-radius:999px;padding:12px 18px!important}
.hero{padding:42px 6% 24px;background:#fff}
.hero-wrap{display:grid;grid-template-columns:1.05fr .95fr;gap:28px;align-items:center;max-width:1240px;margin:auto}
.hero-text{padding:30px 0}
.kicker{color:var(--dorado);font-weight:900;text-transform:uppercase;letter-spacing:2px;margin-bottom:10px}
h1{font-family:Cinzel,serif;font-size:clamp(38px,6vw,72px);line-height:1.05;color:#061827;margin-bottom:18px}
.hero p,.lead{font-size:19px;line-height:1.7;color:#182338;margin-bottom:22px}
.hero-photo{border-radius:28px;overflow:hidden;box-shadow:0 18px 40px rgba(0,0,0,.12);height:430px;background-size:cover;background-position:center}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;margin:5px;border-radius:12px;padding:15px 23px;font-weight:900;text-transform:uppercase;background:var(--dorado);color:#071827;box-shadow:0 12px 28px rgba(0,0,0,.10)}
.btn.green{background:var(--verde);color:white}
.btn.dark{background:var(--azul);color:white}
.section{padding:64px 6%}
.title{text-align:center;max-width:900px;margin:0 auto 40px}
.title h2{font-family:Cinzel,serif;font-size:clamp(30px,4vw,46px);margin-bottom:8px;color:#102033}
.title p{font-size:17px;line-height:1.65;color:var(--suave)}
.grid{display:grid;gap:24px}
.cards{grid-template-columns:repeat(3,1fr)}
.four{grid-template-columns:repeat(4,1fr)}
.card{background:white;border-radius:20px;overflow:hidden;box-shadow:0 15px 35px rgba(20,30,48,.10);border:1px solid rgba(0,0,0,.06)}
.card img{width:100%;height:220px;object-fit:cover}
.body{padding:22px}
.body h3{font-family:Cinzel,serif;font-size:23px;margin-bottom:8px}
.body p,.body li{color:var(--suave);line-height:1.6;font-size:15px}
.body ul{margin:10px 0 0 18px}
.price{color:#e17700;font-size:20px;font-weight:900;margin:15px 0}
.consultar{display:flex;align-items:center;justify-content:space-between;border:1px solid var(--dorado);border-radius:10px;padding:12px 14px;margin-top:16px;color:#102033;font-weight:900}
.feature-band{max-width:1120px;margin:0 auto 20px;background:white;border-radius:20px;padding:28px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px;box-shadow:0 18px 40px rgba(0,0,0,.08)}
.feature strong{display:block;color:#102033;font-size:18px;margin-bottom:5px}
.feature span{color:var(--suave);font-size:14px}
.vehicle-band{background:var(--azul);color:white;border-radius:22px;margin:0 6% 70px;padding:34px;display:grid;grid-template-columns:1.2fr repeat(5,1fr);gap:18px;align-items:end}
.vehicle-band h3{color:var(--dorado);font-size:22px;text-transform:uppercase}
.vehicle{background:rgba(255,255,255,.06);border-radius:14px;padding:15px;text-align:center}
.vehicle strong{display:block;margin-top:8px}
.vehicle span{font-size:13px;color:#dce5ef}
.dark-section{background:#071f1b;color:white}
.dark-section .title h2,.dark-section .title p{color:white}
.include{background:linear-gradient(135deg,#061816,#102e27);border:1px solid #d9aa4f77;border-radius:24px;padding:30px}
.includes{display:grid;grid-template-columns:1fr 1fr;gap:13px 22px;margin:20px 0}
.big-price{text-align:center;border:1px solid #d9aa4faa;border-radius:18px;padding:20px;margin:20px 0}
.big-price strong{font-family:Cinzel,serif;color:var(--dorado);font-size:48px;display:block}
.pension{background:#ffffff14;border:1px solid #d9aa4f77;border-radius:18px;padding:20px;text-align:center}
.pension h3{color:var(--dorado);font-family:Cinzel,serif}
.pension-options{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:15px 0}
.pension-options div{background:#ffffff14;border-radius:12px;padding:14px;font-weight:800}
.gallery{display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.gallery img{height:185px;width:100%;object-fit:cover;border-radius:14px}
.contact{background:white;padding:34px;border-radius:24px;box-shadow:0 18px 42px #0002;max-width:850px;margin:auto}
.row{padding:17px 0;border-bottom:1px solid #d9aa4f77;font-size:18px}
.row strong{color:#c38222;display:block}
.footer{background:#050c16;color:#d8dee8;padding:34px 6%;display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:22px}
.footer h3{font-family:Cinzel,serif;color:white;margin-bottom:10px}
.footer p,.footer a{display:block;color:#d8dee8;margin:7px 0;font-size:14px}
.float{position:fixed;right:22px;bottom:22px;width:64px;height:64px;background:var(--verde);color:white;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:30px;z-index:90;box-shadow:0 12px 30px #0005}
.notice{background:#fff8e8;border:1px solid #f1d7a4;border-radius:14px;padding:16px;color:#5a3a00;margin-top:18px}
@media(max-width:1050px){.header{flex-direction:column}.menu{justify-content:center;gap:12px}.hero-wrap,.feature-band,.cards,.four{grid-template-columns:repeat(2,1fr)}.vehicle-band{grid-template-columns:1fr 1fr}.gallery{grid-template-columns:repeat(3,1fr)}.footer{grid-template-columns:1fr 1fr}}
@media(max-width:650px){.logo h2{font-size:28px}.menu a{font-size:12px}.hero{padding:25px 4%}.hero-wrap,.cards,.four,.feature-band,.vehicle-band,.includes,.pension-options,.gallery,.footer{grid-template-columns:1fr}.hero-photo{height:280px}.card img,.gallery img{height:240px}}

/* --- Mejoras El Futre (rebuild) --- */
.btn{transition:transform .15s ease, box-shadow .2s ease}
.btn:hover{transform:translateY(-2px)}
.card{display:flex;flex-direction:column;transition:transform .2s ease, box-shadow .2s ease}
.card .body{display:flex;flex-direction:column;flex:1}
.card:hover{transform:translateY(-5px);box-shadow:0 22px 46px rgba(20,30,48,.16)}
.consultar{transition:background .2s ease,color .2s ease;margin-top:auto}
.consultar:hover{background:var(--dorado);color:#071827}
.menu a{transition:color .15s ease}
.menu a:hover{color:var(--dorado)}
.vehicle img{height:90px;width:100%;object-fit:cover;border-radius:10px;margin-bottom:8px}
.about-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:34px;align-items:center;max-width:1240px;margin:auto}
.about-photo{height:400px;border-radius:26px;background-size:cover;background-position:center;box-shadow:0 18px 40px rgba(0,0,0,.12)}
.about-grid h2{font-family:Cinzel,serif;font-size:clamp(28px,3.6vw,42px);color:#102033;margin-bottom:14px}
.about-grid p{color:#33415a;line-height:1.75;margin-bottom:14px;font-size:17px}
.cta-wrap{padding:24px 6% 80px}
.cta{background:var(--azul);color:#fff;border-radius:26px;max-width:1100px;margin:0 auto;padding:52px 30px;text-align:center;box-shadow:0 22px 50px rgba(8,35,51,.25)}
.cta h2{font-family:Cinzel,serif;color:#fff;font-size:clamp(28px,4vw,44px);margin-bottom:14px}
.cta p{color:#cdd6e3;max-width:640px;margin:0 auto 24px;font-size:17px;line-height:1.65}
.float svg{width:34px;height:34px}
.tag{display:inline-block;background:#fff7e8;border:1px solid #e4c083;color:#9a6406;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:1px;border-radius:999px;padding:6px 12px;margin-bottom:12px}
.notice{max-width:1240px;margin:24px auto 0}
@media(max-width:650px){.about-grid{grid-template-columns:1fr}.about-photo{height:280px}}
