:root { --navy:#09283f; --navy-deep:#061d2c; --paper:#f6f5f2; --stone:#edece7; --gold:#c7a968; --violet:#7056ca; --sage:#779984; --petrol:#2b6970; --clay:#b1633c; --ink:#102a3c; --font-serif:'Cormorant Garamond',serif; --font-sans:'Manrope',sans-serif; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; background:var(--paper); color:var(--ink); font-family:var(--font-sans),sans-serif; }
a { color:inherit; text-decoration:none; }
main { overflow:hidden; }
.site-header { height:88px; display:flex; align-items:center; justify-content:space-between; padding:0 5vw; border-bottom:1px solid rgba(9,40,63,.09); background:rgba(251,248,241,.92); backdrop-filter:blur(16px); position:absolute; width:100%; z-index:20; }
.wordmark { display:flex; align-items:center; gap:12px; font-family:var(--font-serif),serif; font-size:24px; letter-spacing:.25em; font-weight:600; }
.wordmark-mark { height:38px; width:auto; display:block; }
nav { display:flex; gap:34px; font-size:13px; font-weight:600; }
nav a { position:relative; }
nav a:after { content:""; position:absolute; left:0; right:100%; bottom:-7px; height:1px; background:var(--gold); transition:.2s; }
nav a:hover:after { right:0; }
.nav-cta { font-size:12px; text-transform:uppercase; letter-spacing:.11em; display:flex; gap:9px; align-items:center; }
.hero { min-height:900px; position:relative; padding:150px 5vw 70px; display:grid; grid-template-columns:minmax(450px,.88fr) minmax(600px,1.12fr); align-items:center; background:radial-gradient(circle at 79% 47%,#fff 0,rgba(255,255,255,.5) 25%,transparent 48%),linear-gradient(115deg,var(--paper) 55%,var(--stone)); }
.hero-copy { position:relative; z-index:3; max-width:690px; }
.eyebrow,.section-label { text-transform:uppercase; letter-spacing:.23em; font-size:11px; font-weight:700; color:#9c7936; display:flex; align-items:center; gap:12px; margin:0 0 28px; }
.eyebrow span { width:28px; height:1px; background:var(--gold); }
h1,h2,h3,p { margin-top:0; }
h1 { font-family:var(--font-serif),serif; font-size:clamp(58px,5.2vw,82px); line-height:.96; letter-spacing:-.035em; font-weight:500; margin-bottom:30px; }
h1 em { font-weight:400; color:#294c63; font-style:normal; }
.hero-lead { max-width:610px; font-size:17px; line-height:1.7; color:#455b69; }
.hero-actions { display:flex; gap:14px; margin-top:34px; }
.button { min-height:54px; display:inline-flex; align-items:center; justify-content:center; gap:25px; padding:0 28px; border:1px solid var(--navy); font-size:13px; font-weight:700; transition:.25s; }
.button-primary { background:var(--navy); color:white; box-shadow:0 14px 30px rgba(9,40,63,.15); }
.button-primary:hover { background:#123d59; transform:translateY(-2px); }
.button-secondary:hover { background:rgba(9,40,63,.05); }
.orbit { height:680px; position:relative; min-width:700px; }
.orbit-ring,.orbit-axis { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); pointer-events:none; }
.orbit-ring { border:1px solid rgba(199,169,104,.36); border-radius:50%; }
.ring-one { width:590px; height:590px; animation:ring-spin 150s linear infinite; }
.ring-two { width:445px; height:445px; border-style:dashed; animation:ring-spin 110s linear infinite reverse; }
.ring-three { width:315px; height:315px; border-color:rgba(9,40,63,.14); animation:ring-spin 80s linear infinite; }
.orbit-axis { background:linear-gradient(90deg,transparent,var(--gold),transparent); opacity:.35; }
.axis-x { width:640px; height:1px; }.axis-y { height:640px; width:1px; }
@keyframes ring-spin { from { transform:translate(-50%,-50%) rotate(0deg); } to { transform:translate(-50%,-50%) rotate(360deg); } }
.core { position:absolute; left:50%; top:50%; transform:translate(-50%,-50%); width:230px; height:230px; border-radius:50%; background:radial-gradient(circle at 35% 25%,#16455f,var(--navy-deep) 66%); color:white; border:2px solid var(--gold); box-shadow:0 20px 60px rgba(6,29,44,.28),0 0 0 15px rgba(255,255,255,.6); display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; z-index:2; }
.core-mark { width:62px; height:auto; margin-bottom:2px; }
.core strong { font-family:var(--font-serif); letter-spacing:.19em; font-size:22px; margin-top:16px; }
.core small { text-transform:uppercase; letter-spacing:.22em; font-size:7px; color:#dfc580; margin-top:8px; }
.orbit-card { position:absolute; width:180px; min-height:128px; background:rgba(255,252,246,.94); border:1px solid rgba(255,255,255,.9); box-shadow:0 14px 38px rgba(24,45,57,.14); border-radius:18px; transition:box-shadow .25s,transform .25s; z-index:4; transform:translate(-50%,-50%); animation:orbit-card-in .7s cubic-bezier(.16,1,.3,1) backwards; }
.orbit-card:hover { transform:translate(-50%, calc(-50% - 6px)); box-shadow:0 20px 45px rgba(24,45,57,.2); }
.orbit-1{animation-delay:.1s}.orbit-2{animation-delay:.25s}.orbit-3{animation-delay:.4s}.orbit-4{animation-delay:.55s}.orbit-5{animation-delay:.7s}
@keyframes orbit-card-in { from { opacity:0; transform:translate(-50%,-50%) scale(.82) translateY(10px); } to { opacity:1; transform:translate(-50%,-50%) scale(1) translateY(0); } }
.orbit-card-inner { display:grid; grid-template-columns:38px 1fr auto; gap:11px; align-items:center; width:100%; height:100%; padding:20px; font-size:13px; font-weight:700; animation:orbit-float 6.5s ease-in-out infinite; }
.orbit-1 .orbit-card-inner{animation-delay:0s}.orbit-2 .orbit-card-inner{animation-delay:1.3s}.orbit-3 .orbit-card-inner{animation-delay:2.6s}.orbit-4 .orbit-card-inner{animation-delay:.7s}.orbit-5 .orbit-card-inner{animation-delay:1.9s}
@keyframes orbit-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-7px); } }
.orbit-icon { width:36px; height:36px; display:grid; place-items:center; border:1px solid currentColor; border-radius:50%; font-family:var(--font-serif); font-size:20px; overflow:hidden; }
.orbit-icon img { width:100%; height:100%; object-fit:contain; padding:6px; }
.orbit-card.gold .orbit-icon{color:#a77b2b}.orbit-card.violet .orbit-icon{color:var(--violet)}.orbit-card.sage .orbit-icon{color:var(--sage)}.orbit-card.petrol .orbit-icon{color:var(--petrol)}.orbit-card.clay .orbit-icon{color:var(--clay)}
.orbit-1 { top:calc(50% - 245px); left:calc(50% + 0px); }
.orbit-2 { top:calc(50% - 76px); left:calc(50% + 233px); }
.orbit-3 { top:calc(50% + 198px); left:calc(50% + 144px); }
.orbit-4 { top:calc(50% + 198px); left:calc(50% - 144px); }
.orbit-5 { top:calc(50% - 76px); left:calc(50% - 233px); }
.orbit-cards { display:contents; }
.scroll-cue { position:absolute; left:5vw; bottom:34px; text-transform:uppercase; letter-spacing:.16em; font-size:9px; display:flex; gap:12px; align-items:center; }
.scroll-cue span { height:1px; width:38px; background:var(--gold); }
.intro-section { padding:120px 8vw; display:grid; grid-template-columns:1.1fr .9fr; gap:10vw; background:var(--paper); }
.intro-section h2,.founder-copy h2,.principles-section h2 { font-family:var(--font-serif); font-size:clamp(44px,4.5vw,68px); font-weight:500; line-height:1.03; letter-spacing:-.02em; margin:0; }
.intro-copy { padding-top:40px; font-size:16px; line-height:1.8; color:#566875; }
.intro-copy p:first-child { font-size:20px; color:var(--ink); }
.ecosystem-section { background:var(--navy-deep); color:white; padding:115px 5vw 80px; }
.section-heading { display:grid; grid-template-columns:1fr 1.2fr 1fr; gap:7vw; align-items:end; padding-bottom:60px; }
.section-label.light { color:#d7bc7c; }
.section-heading h2 { font-family:var(--font-serif); font-size:58px; line-height:1; font-weight:500; margin:0; }
.section-heading>p:last-child { color:#a8b4bb; line-height:1.7; margin:0; }
.company-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:22px; }
.company-card { position:relative; grid-column:span 4; display:flex; flex-direction:column; border-radius:22px; padding:36px 32px 30px; overflow:hidden; border:1px solid rgba(255,255,255,.08); transition:.3s; scroll-margin-top:20px; }
.company-card.tier-1 { grid-column:span 6; min-height:340px; }
.company-card.tier-2 { grid-column:span 4; min-height:280px; }
.company-card:hover { transform:translateY(-6px); box-shadow:0 26px 55px rgba(0,0,0,.35); border-color:rgba(255,255,255,.2); }
.company-card.gold { background:linear-gradient(150deg,#3c3013,var(--navy-deep) 68%); }
.company-card.violet { background:linear-gradient(150deg,#261c40,var(--navy-deep) 68%); }
.company-card.sage { background:linear-gradient(150deg,#1e2c22,var(--navy-deep) 68%); }
.company-card.petrol { background:linear-gradient(150deg,#123339,var(--navy-deep) 68%); }
.company-card.clay { background:linear-gradient(150deg,#3c2113,var(--navy-deep) 68%); }
.company-card-number { position:absolute; top:2px; right:20px; font-family:var(--font-serif); font-size:130px; line-height:1; font-weight:500; color:rgba(255,255,255,.05); pointer-events:none; transition:.3s; }
.company-card:hover .company-card-number { color:rgba(255,255,255,.09); }
.company-card-mark { position:relative; z-index:2; width:56px; height:56px; border-radius:50%; background:#fdfbf6; display:grid; place-items:center; margin-bottom:26px; box-shadow:0 10px 22px rgba(0,0,0,.28); }
.company-card-mark img { width:66%; height:66%; object-fit:contain; }
.company-card-mark span { font-family:var(--font-serif); font-size:24px; color:var(--navy); }
.company-card-body { position:relative; z-index:2; flex:1; }
.company-card-tag { color:var(--gold); text-transform:uppercase; letter-spacing:.15em; font-size:9px; font-weight:700; margin-bottom:12px; }
.company-card-body h3 { font-family:var(--font-serif); font-size:clamp(26px,2.4vw,34px); font-weight:500; color:#fff; margin:0 0 14px; line-height:1.06; }
.company-card-desc { color:#c7cfd3; line-height:1.65; font-size:13.5px; margin:0; max-width:44ch; }
.company-card-cta { position:relative; z-index:2; margin-top:26px; display:inline-flex; align-items:center; gap:9px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; font-weight:700; color:#fff; }
.company-card:hover .company-card-cta { gap:15px; }
.company-card.gold .company-card-cta{color:#e7c98e}.company-card.violet .company-card-cta{color:#c3b3f0}.company-card.sage .company-card-cta{color:#b3cabb}.company-card.petrol .company-card-cta{color:#9fd4da}.company-card.clay .company-card-cta{color:#e2a17e}
.partners-section { padding:115px 7vw 105px; background:var(--paper); scroll-margin-top:20px; }
.partners-intro { display:grid; grid-template-columns:.65fr 1.2fr .85fr; gap:6vw; align-items:end; margin-bottom:65px; }
.partners-intro .section-label { align-self:start; }
.partners-intro h2 { font-family:var(--font-serif); font-size:clamp(44px,4.4vw,66px); font-weight:500; line-height:1.02; letter-spacing:-.025em; margin:0; }
.partners-intro>p:last-child { color:#60717b; line-height:1.75; margin:0; }
.partners-grid { display:grid; grid-template-columns:1fr 1fr; gap:22px; }
.partner-card { min-height:290px; display:grid; grid-template-columns:115px 1fr; gap:34px; align-items:center; padding:42px; border:1px solid #ded6c8; background:#fffdf8; position:relative; overflow:hidden; transition:.25s; }
.partner-card:after { content:""; position:absolute; width:190px; height:190px; border:1px solid rgba(199,169,104,.22); border-radius:50%; right:-80px; top:-85px; }
.partner-card:hover { transform:translateY(-4px); border-color:#c9ad71; box-shadow:0 20px 45px rgba(24,45,57,.08); }
.partner-mark { width:108px; height:108px; border-radius:50%; background:var(--navy); color:#dbc085; display:grid; place-items:center; font-family:var(--font-serif); font-size:34px; letter-spacing:.06em; box-shadow:0 0 0 9px #f1ebdf; overflow:hidden; }
.partner-mark img { width:100%; height:100%; object-fit:cover; }
.partner-mark.logo-plate { border-radius:14px; background:#00273f; }
.partner-mark.logo-plate img { object-fit:contain; padding:16px; }
.partner-mark.logo-plate-light { border-radius:14px; background:#fffdf8; box-shadow:0 0 0 9px #f1ebdf, inset 0 0 0 1px #ded6c8; }
.partner-mark.logo-plate-light img { object-fit:contain; padding:14px; }
.partner-card span { color:#a27d38; text-transform:uppercase; letter-spacing:.18em; font-size:9px; font-weight:700; }
.partner-card h3 { font-family:var(--font-serif); font-size:39px; font-weight:500; margin:11px 0 13px; }
.partner-card p { color:#60717b; line-height:1.7; font-size:13px; margin:0; }
.partners-note { text-align:center; color:#82909a; font-size:10px; letter-spacing:.08em; margin:30px 0 0; }
.founders-section { position:relative; padding:120px 8vw; background:linear-gradient(160deg,#eae7de 0%,#d9d5c8 100%); border-top:1px solid rgba(199,169,104,.4); overflow:hidden; }
.founders-section:before { content:""; position:absolute; top:-120px; right:-100px; width:560px; height:560px; background:url(../images/valmapaz-mark.png) no-repeat center/contain; opacity:.07; pointer-events:none; transform:rotate(-8deg); }
.founders-heading { max-width:640px; margin-bottom:70px; }
.founders-heading h2 { font-family:var(--font-serif); font-size:clamp(44px,4.5vw,68px); font-weight:500; line-height:1.03; letter-spacing:-.02em; margin:0; }
.founder-card { display:grid; grid-template-columns:260px 1fr; gap:60px; align-items:start; padding:55px 0; border-top:1px solid rgba(9,40,63,.16); }
.founder-photo { width:260px; height:260px; border-radius:50%; overflow:hidden; border:2px solid var(--gold); box-shadow:0 20px 50px rgba(9,40,63,.18); }
.founder-photo img { width:100%; height:100%; object-fit:cover; display:block; }
.founder-copy h3 { font-family:var(--font-serif); font-size:36px; font-weight:500; margin:0 0 8px; }
.founder-role { color:#9a7637; text-transform:uppercase; letter-spacing:.13em; font-size:10px; margin:0 0 26px; }
.founder-copy>p:not(.section-label):not(.founder-role) { max-width:690px; line-height:1.8; color:#53636d; margin-bottom:14px; }
.method { border-top:1px solid rgba(9,40,63,.2); margin-top:30px; padding-top:24px; }.method>span { font-size:10px; text-transform:uppercase; letter-spacing:.16em; font-weight:700; }.method ol { display:flex; gap:8px; list-style:none; padding:0; margin:18px 0 0; flex-wrap:wrap; counter-reset:method; }.method li { border:1px solid rgba(9,40,63,.16); padding:9px 12px; font-size:10px; }
.founder-linkedin { display:inline-flex; gap:9px; align-items:center; margin-top:22px; font-size:11px; text-transform:uppercase; letter-spacing:.13em; font-weight:700; color:var(--navy); }
.founder-linkedin:hover { color:#9a7637; }
.principles-section { padding:110px 7vw 125px; }.principles-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:0; margin-top:70px; border-top:1px solid #d8d0c2; }.principles-grid article { padding:35px 28px 10px 0; border-right:1px solid #d8d0c2; margin-right:28px; }.principles-grid article:last-child{border:0}.principles-grid span { color:#aa8747; font-family:var(--font-serif); }.principles-grid h3 { font-family:var(--font-serif); font-size:34px; margin:35px 0 15px; }.principles-grid p { color:#60717b; line-height:1.7; font-size:13px; }
.cta-section { padding:110px 8vw; text-align:center; background:linear-gradient(135deg,#0d344c,var(--navy-deep)); color:white; }.cta-section .section-label{justify-content:center}.cta-section h2 { max-width:900px; margin:0 auto 25px; font-family:var(--font-serif); font-size:clamp(46px,5vw,72px); line-height:1.02; font-weight:500; }.cta-section>p:not(.section-label){max-width:650px;margin:0 auto 34px;color:#bdc9d0;line-height:1.7}.button-light{border-color:#e1c98f;background:#e1c98f;color:var(--navy);}.button-light:hover{background:white;transform:translateY(-2px)}
.contact-actions { display:flex; gap:16px; justify-content:center; flex-wrap:wrap; margin-bottom:24px; }
.button-outline-light { border-color:rgba(255,255,255,.4); color:white; background:transparent; }
.button-outline-light:hover { border-color:#e1c98f; color:#e1c98f; }
.linkedin-link { display:inline-flex; gap:9px; align-items:center; font-size:11px; text-transform:uppercase; letter-spacing:.13em; font-weight:700; color:#d7bc7c; }
.linkedin-link:hover { color:#e1c98f; }
footer { padding:65px 5vw 35px; background:#041722; color:#aab8c0; display:grid; grid-template-columns:1fr 1fr 1fr; gap:30px; align-items:center; font-size:11px; }footer .wordmark{color:white}footer>div{display:flex;justify-content:flex-end;gap:25px}footer small{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.1);padding-top:25px}
.whatsapp-float { position:fixed; bottom:24px; right:24px; width:58px; height:58px; border-radius:50%; background:#25D366; display:grid; place-items:center; box-shadow:0 10px 28px rgba(0,0,0,.3); z-index:60; transition:.25s; }
.whatsapp-float:hover { transform:scale(1.08); box-shadow:0 14px 34px rgba(0,0,0,.35); }
.whatsapp-float svg { width:29px; height:29px; }
@media(max-width:1050px){nav{display:none}.hero{grid-template-columns:1fr;padding-top:140px}.hero-copy{max-width:760px}.orbit{min-width:0}.section-heading{grid-template-columns:1fr 1fr}.section-heading>p:last-child{grid-column:2}.company-card.tier-1,.company-card.tier-2{grid-column:span 6}.partners-intro{grid-template-columns:1fr 1.4fr}.partners-intro>p:last-child{grid-column:2}.partner-card{grid-template-columns:85px 1fr;padding:30px}.partner-mark{width:80px;height:80px;font-size:26px}.founder-card{grid-template-columns:200px 1fr;gap:40px}.founder-photo{width:200px;height:200px}.principles-grid{grid-template-columns:1fr 1fr}.principles-grid article:nth-child(2){border:0}.principles-grid article{border-bottom:1px solid #d8d0c2}}
@media(max-width:700px){.whatsapp-float{bottom:18px;right:18px;width:52px;height:52px}.whatsapp-float svg{width:26px;height:26px}.site-header{height:72px;padding:0 20px}.wordmark{font-size:18px}.nav-cta{display:none}.hero{padding:115px 20px 70px;min-height:auto}.hero h1{font-size:51px}.hero-actions{flex-direction:column;align-items:stretch}.orbit{height:auto;min-width:0;margin-top:20px;padding-bottom:8px}.ring-one,.ring-two,.ring-three,.axis-x,.axis-y{display:none}.core{position:relative;left:auto;top:auto;transform:none;margin:0 auto 22px;width:150px;height:150px}.core-mark{width:40px}.core strong{font-size:15px}.orbit-cards{display:grid;grid-template-columns:1fr 1fr;gap:10px;position:relative;z-index:2}.orbit-card{position:static;width:100%;min-height:auto;transform:none;animation:none;box-shadow:0 8px 20px rgba(24,45,57,.1)}.orbit-card:hover{transform:none}.orbit-card:last-child{grid-column:1/-1}.orbit-card-inner{grid-template-columns:26px 1fr auto;gap:8px;padding:12px;font-size:10.5px;animation:none}.orbit-icon{width:24px;height:24px}.intro-section{grid-template-columns:1fr;padding:85px 24px}.intro-copy{padding-top:0}.ecosystem-section{padding:85px 22px}.section-heading{grid-template-columns:1fr}.section-heading>p:last-child{grid-column:auto}.company-grid{gap:16px}.company-card.tier-1,.company-card.tier-2{grid-column:span 12;min-height:auto;padding:30px 26px 26px}.company-card-number{font-size:90px}.partners-section{padding:85px 24px}.partners-intro,.partners-grid{grid-template-columns:1fr}.partners-intro>p:last-child{grid-column:auto}.partner-card{grid-template-columns:1fr;min-height:auto}.partner-mark{width:72px;height:72px}.founders-section{padding:85px 24px}.founder-card{grid-template-columns:1fr;gap:24px;text-align:left}.founder-photo{width:160px;height:160px}.principles-section{padding:85px 24px}.principles-grid{grid-template-columns:1fr}.principles-grid article{border-right:0;margin:0}.cta-section{padding:85px 24px}footer{grid-template-columns:1fr}footer>div{justify-content:flex-start;flex-wrap:wrap}footer small{grid-column:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.orbit-card,.button,nav a:after{transition:none!important}.orbit-card,.orbit-card-inner,.ring-one,.ring-two,.ring-three{animation:none!important;opacity:1!important}}

/* Valmapaz Inmobiliario — catálogo de propiedades */
.properties-header { position:relative; padding:170px 5vw 90px; background:var(--navy-deep); color:white; overflow:hidden; }
.properties-header:before { content:""; position:absolute; top:-140px; left:-90px; width:540px; height:540px; background:url(../images/valmapaz-mark.png) no-repeat center/contain; opacity:.05; pointer-events:none; transform:rotate(8deg); }
.properties-header .back-link { position:relative; z-index:2; font-size:11px; text-transform:uppercase; letter-spacing:.14em; color:#d7bc7c; display:inline-flex; gap:10px; align-items:center; margin-bottom:36px; }
.properties-header h1 { position:relative; z-index:2; font-family:var(--font-serif); font-size:clamp(46px,5.2vw,74px); font-weight:500; line-height:1.02; letter-spacing:-.03em; margin:0 0 24px; max-width:820px; }
.properties-header p { position:relative; z-index:2; max-width:640px; color:#a8b4bb; line-height:1.75; font-size:16px; margin:0; }
.properties-grid { display:grid; grid-template-columns:repeat(12,1fr); gap:24px; padding:90px 5vw 130px; background:var(--paper); }
.property-card { position:relative; grid-column:span 6; background:#fffdf8; border:1px solid #ded6c8; display:flex; flex-direction:column; overflow:hidden; border-radius:18px; transition:.3s; }
.property-card.tier-1 { grid-column:span 12; display:grid; grid-template-columns:1.15fr 1fr; }
.property-card.tier-2 { grid-column:span 6; }
.property-card:hover { transform:translateY(-6px); box-shadow:0 26px 55px rgba(24,45,57,.16); border-color:#c9ad71; }
.property-media { position:relative; height:250px; overflow:hidden; background:#e5ded0; }
.property-card.tier-1 .property-media { height:100%; min-height:420px; }
.property-media img { width:100%; height:100%; object-fit:cover; display:block; transition:.5s; }
.property-card:hover .property-media img { transform:scale(1.05); }
.property-media:after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,rgba(6,29,44,.85) 0%,rgba(6,29,44,.18) 48%,transparent 68%); }
.property-media.placeholder { display:flex; align-items:flex-end; color:#9c8b6a; font-family:var(--font-serif); font-size:15px; letter-spacing:.06em; padding:24px; background:linear-gradient(150deg,#e5ded0,#d7cdb8); }
.property-media.placeholder:after { display:none; }
.property-badge { position:absolute; top:18px; left:18px; z-index:2; padding:7px 15px; font-size:9px; text-transform:uppercase; letter-spacing:.14em; font-weight:700; border-radius:3px; }
.property-badge.venta { background:var(--gold); color:var(--navy-deep); }
.property-badge.arriendo { background:var(--petrol); color:white; }
.property-badge.proximamente { background:rgba(9,40,63,.85); color:#e7d9b6; }
.property-index { position:absolute; top:16px; right:20px; z-index:2; font-family:var(--font-serif); color:rgba(255,255,255,.4); font-size:15px; letter-spacing:.06em; }
.property-media-info { position:absolute; left:0; right:0; bottom:0; z-index:2; padding:22px 24px; }
.property-media-info .property-location { display:block; color:#e7d9b6; text-transform:uppercase; letter-spacing:.12em; font-size:10px; font-weight:700; margin-bottom:8px; }
.property-media-info h3 { font-family:var(--font-serif); color:#fff; font-size:24px; font-weight:500; margin:0; line-height:1.1; }
.property-card.tier-1 .property-media-info h3 { font-size:34px; }
.property-body { position:relative; padding:26px 26px 28px; display:flex; flex-direction:column; gap:12px; flex:1; }
.property-price { font-family:var(--font-serif); font-size:21px; color:var(--ink); }
.property-desc { color:#60717b; line-height:1.7; font-size:13.5px; margin:0; }
.property-facts { display:flex; gap:16px; flex-wrap:wrap; font-size:11px; color:#7a8890; border-top:1px solid #ded6c8; padding-top:16px; margin-top:auto; }
.property-cta { margin-top:6px; font-size:11px; text-transform:uppercase; letter-spacing:.12em; font-weight:700; display:inline-flex; gap:10px; align-items:center; color:var(--navy); transition:.25s; }
.property-card:hover .property-cta { gap:15px; }
.property-card.is-disabled { opacity:.85; }
.property-cta.is-disabled { color:#8a97a0; cursor:default; }
.properties-cta { padding:100px 8vw; text-align:center; background:linear-gradient(135deg,#0d344c,var(--navy-deep)); color:white; }
.properties-cta h2 { max-width:820px; margin:0 auto 22px; font-family:var(--font-serif); font-size:clamp(38px,4.2vw,58px); line-height:1.08; font-weight:500; }
.properties-cta p { max-width:600px; margin:0 auto 30px; color:#bdc9d0; line-height:1.7; }
@media(max-width:700px){.properties-header{padding:130px 22px 60px}.properties-grid{padding:60px 22px 90px;gap:18px}.property-card.tier-1{grid-template-columns:1fr;grid-column:span 12}.property-card.tier-1 .property-media{min-height:240px}.property-card.tier-2{grid-column:span 12}.properties-cta{padding:70px 22px}}
