:root{--bg:#0b100e;--bg2:#111916;--card:#141d19;--line:rgba(201,166,107,.22);--gold:#c9a66b;--gold2:#e6cf9f;--txt:#ece6da;--mut:#a8a698;--serif:"Cormorant Garamond",Georgia,"Times New Roman",serif;--sans:system-ui,-apple-system,"Segoe UI",Roboto,Helvetica,Arial,sans-serif} *,*::before,*::after{box-sizing:border-box} html{overflow-x:clip;scroll-behavior:smooth;-webkit-text-size-adjust:100%} body{margin:0;background:var(--bg);color:var(--txt);font-family:var(--sans);font-size:17px;line-height:1.65;overflow-x:hidden} img{max-width:100%;height:auto;display:block} a{color:var(--gold2)} h1,h2,h3{font-family:var(--serif);font-weight:500;line-height:1.1;margin:0 0 .5em;text-wrap:balance;letter-spacing:.01em} h1{font-size:clamp(2.5rem,7vw,4.6rem)} h2{font-size:clamp(2rem,4.6vw,3.1rem)} h3{font-size:1.65rem} p{margin:0 0 1em} .wrap{width:min(1140px,100% - 40px);margin-inline:auto} .eyebrow{font-size:.74rem;letter-spacing:.34em;text-transform:uppercase;color:var(--gold);margin-bottom:1.1rem;display:block} .lead{color:var(--mut);max-width:60ch} .center{text-align:center}.center .lead{margin-inline:auto} /* cabecera */ .top{position:fixed;inset:0 0 auto 0;z-index:50;background:linear-gradient(180deg,rgba(8,12,10,.92),rgba(8,12,10,.55) 70%,transparent);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)} .top .wrap{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 0} .brand{font-family:var(--serif);font-size:1.7rem;letter-spacing:.14em;color:var(--txt);text-decoration:none;text-transform:uppercase;white-space:nowrap} .brand b{color:var(--gold);font-weight:500} .nav{display:flex;gap:clamp(14px,3vw,34px)} .nav a{color:var(--txt);text-decoration:none;font-size:.76rem;letter-spacing:.22em;text-transform:uppercase;padding:8px 0;border-bottom:1px solid transparent;transition:color .25s,border-color .25s} .nav a:hover,.nav a[aria-current=page]{color:var(--gold2);border-color:var(--gold)} /* botones */ .btn{display:inline-block;padding:15px 34px;border:1px solid var(--gold);color:var(--bg);background:linear-gradient(135deg,var(--gold2),var(--gold));text-decoration:none;font-size:.78rem;letter-spacing:.24em;text-transform:uppercase;font-weight:600;border-radius:2px;transition:transform .3s,box-shadow .3s} .btn:hover{transform:translateY(-2px);box-shadow:0 0 34px rgba(201,166,107,.45)} .btn.ghost{background:transparent;color:var(--gold2)} /* hero */ .hero{position:relative;min-height:100svh;display:grid;align-items:end;isolation:isolate} .hero picture,.hero picture img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:-2} .hero::after{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(120% 90% at 50% 20%,transparent 30%,rgba(11,16,14,.55) 75%),linear-gradient(180deg,rgba(11,16,14,.35) 0,rgba(11,16,14,.15) 35%,rgba(11,16,14,.85) 80%,var(--bg) 100%)} .hero .wrap{padding:150px 0 90px} .hero p{font-size:1.12rem;max-width:52ch;color:#ddd6c8} .hero .acts{display:flex;flex-wrap:wrap;gap:14px;margin-top:1.8rem} .hero.small{min-height:62svh} section{padding:clamp(70px,10vw,130px) 0;position:relative} .alt{background:linear-gradient(180deg,var(--bg),var(--bg2) 22%,var(--bg2) 78%,var(--bg))} .rule{width:64px;height:1px;background:var(--gold);margin:0 0 1.6rem;border:0} .center .rule{margin-inline:auto} /* tarjetas con realce y luz tenue */ .grid{display:grid;gap:30px;margin-top:3rem} .g3{grid-template-columns:repeat(auto-fit,minmax(270px,1fr))} .g2{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))} .card{position:relative;background:var(--card);border:1px solid var(--line);border-radius:4px;transition:transform .55s cubic-bezier(.2,.7,.2,1),border-color .55s,box-shadow .55s;text-align:left} .card::before{content:"";position:absolute;inset:-28px;z-index:-1;border-radius:40px;background:radial-gradient(closest-side,rgba(230,207,159,.38),rgba(201,166,107,.12) 60%,transparent);opacity:0;filter:blur(14px);transition:opacity .6s} .card:hover,.card:focus-within{transform:translateY(-10px) scale(1.025);border-color:rgba(230,207,159,.7);box-shadow:0 26px 60px rgba(0,0,0,.55),0 0 46px rgba(201,166,107,.22)} .card:hover::before,.card:focus-within::before{opacity:1} .card .ph{position:relative;overflow:hidden;border-radius:3px 3px 0 0;aspect-ratio:4/5} .card.wide .ph{aspect-ratio:4/3} .card .ph img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s cubic-bezier(.2,.7,.2,1),filter .6s;filter:saturate(.92) brightness(.9)} .card:hover .ph img{transform:scale(1.07);filter:saturate(1.05) brightness(1.02)} .card .ph::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,var(--card) 100%)} .card .tx{padding:6px 28px 30px;margin-top:-34px;position:relative} .card .tx p{color:var(--mut);font-size:.96rem} .card .more{font-size:.74rem;letter-spacing:.22em;text-transform:uppercase;text-decoration:none;color:var(--gold2);border-bottom:1px solid var(--gold);padding-bottom:4px} .card ul{margin:0 0 1.2em;padding:0;list-style:none;color:var(--mut);font-size:.94rem} .card li{padding:6px 0 6px 20px;position:relative;border-bottom:1px solid rgba(255,255,255,.05)} .card li::before{content:"";position:absolute;left:0;top:16px;width:8px;height:1px;background:var(--gold)} /* bloques imagen + texto, la imagen se funde con el fondo */ .split{display:grid;grid-template-columns:1fr 1fr;gap:clamp(30px,6vw,80px);align-items:center} .fade{position:relative} .fade img{width:100%;-webkit-mask-image:linear-gradient(to right,transparent,#000 22%,#000 78%,transparent),linear-gradient(to bottom,transparent,#000 16%,#000 82%,transparent);mask-image:linear-gradient(to right,transparent,#000 22%,#000 78%,transparent),linear-gradient(to bottom,transparent,#000 16%,#000 82%,transparent);-webkit-mask-composite:source-in;mask-composite:intersect} .fade::before{content:"";position:absolute;inset:8%;z-index:-1;background:radial-gradient(closest-side,rgba(201,166,107,.3),transparent);filter:blur(40px)} .cori{background:radial-gradient(90% 70% at 28% 50%,rgba(150,84,46,.34),transparent 70%),linear-gradient(180deg,var(--bg),#130f0c 30%,#130f0c 70%,var(--bg))} .cori .fade img{max-height:680px;object-fit:cover;object-position:50% 30%;filter:saturate(.85) contrast(1.03)} .cori .fade{transition:transform .6s cubic-bezier(.2,.7,.2,1)} .cori .fade:hover{transform:scale(1.025)} .cori .fade::before{transition:opacity .6s;opacity:.6} .cori .fade:hover::before{opacity:1} .sign{font-family:var(--serif);font-style:italic;font-size:1.5rem;color:var(--gold2)} .cta{text-align:center;background:radial-gradient(60% 80% at 50% 50%,rgba(201,166,107,.14),transparent 70%)} .info{display:grid;gap:26px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:3rem} .info .card{padding:34px 28px;text-align:center} .info .card a{text-decoration:none} .big{font-family:var(--serif);font-size:1.7rem;color:var(--gold2);display:block;margin:.2em 0} footer{border-top:1px solid var(--line);padding:46px 0 120px;text-align:center;color:var(--mut);font-size:.86rem} footer .brand{display:block;margin-bottom:12px} footer nav{display:flex;justify-content:center;gap:26px;margin:14px 0 20px} footer nav a{color:var(--mut);text-decoration:none;letter-spacing:.18em;text-transform:uppercase;font-size:.72rem} footer nav a:hover{color:var(--gold2)} .rv{opacity:0;transform:translateY(26px);transition:opacity .9s,transform .9s} .rv.in{opacity:1;transform:none} @media(max-width:820px){.split{grid-template-columns:1fr}.cori .fade img{max-height:520px}.brand{font-size:1.25rem}.nav a{font-size:.66rem;letter-spacing:.14em}.hero .wrap{padding-bottom:70px}} @media(max-width:600px){.whatsapp-float{bottom:22px!important;right:18px!important}} @media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}html{scroll-behavior:auto}} h1::first-letter,h2::first-letter{text-transform:uppercase} h3{text-transform:uppercase;font-size:1.3rem;letter-spacing:.12em;color:var(--gold2)} .hl{display:block;font-family:var(--serif);font-weight:500;font-size:1.7rem;color:var(--gold2);letter-spacing:.03em;margin-top:.2em} .price{font-size:.86rem;letter-spacing:.34em;color:var(--gold);margin:0} .sub{font-size:clamp(1.4rem,3vw,2rem);color:var(--gold2)} .zones{list-style:none;padding:0;margin:0 0 1.4em;display:grid;grid-template-columns:1fr 1fr;gap:4px 24px;color:var(--mut)} .zones li{padding:7px 0 7px 20px;position:relative;border-bottom:1px solid rgba(255,255,255,.06)} .zones li::before{content:"";position:absolute;left:0;top:19px;width:8px;height:1px;background:var(--gold)} .cori p{color:#cfc8ba} footer{padding-top:80px;background:radial-gradient(60% 90% at 50% 0,rgba(201,166,107,.13),transparent 70%)} footer h2{color:var(--txt)} footer .ft{font-size:1rem;margin:0 0 .3em} footer nav{margin-top:34px} .hero picture img{object-position:50% 42%} .map{position:relative;border:1px solid var(--line);border-radius:4px;overflow:hidden;margin-top:2.6rem;box-shadow:0 0 60px rgba(201,166,107,.12);transition:box-shadow .6s,border-color .6s} .map:hover{border-color:rgba(230,207,159,.7);box-shadow:0 0 70px rgba(201,166,107,.28)} .map iframe{display:block;width:100%;height:min(62vh,460px);border:0;filter:invert(.92) hue-rotate(180deg) saturate(.7) contrast(.92)} .fade.land img{-webkit-mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent);mask-image:linear-gradient(to right,transparent,#000 9%,#000 91%,transparent),linear-gradient(to bottom,transparent,#000 20%,#000 80%,transparent)} @media(min-width:821px){.split:has(.land){grid-template-columns:1.25fr 1fr}}