/* ============================================================
   KEO REFURB — SOBRE KEO (página)
   ============================================================ */

/* ===== INTRO EDITORIAL ===== */
.about-intro{ padding:clamp(120px,14vw,200px) 0 clamp(70px,9vw,140px); }
.ai__grid{ display:grid; grid-template-columns:1fr 1.1fr; gap:clamp(40px,6vw,100px); align-items:center; }
.ai__text{ display:flex; flex-direction:column; gap:clamp(18px,2vw,28px); max-width:48ch; }
.ai__title{ font-family:var(--serif); font-weight:500; font-size:clamp(34px,4.6vw,64px); line-height:1.04; letter-spacing:-.01em; margin:.2em 0 .1em; text-wrap:balance; }
.ai__text .rule-gold{ margin:.4rem 0 .8rem; }
.ai__text p{ color:var(--carbon); font-size:clamp(15.5px,1.1vw,17.5px); line-height:1.75; }
.ai__text p + p{ margin-top:0; }
.ai__sig{ margin-top:1.2rem !important; font-family:var(--serif); font-style:italic; color:var(--piedra-texto); font-size:14.5px; }
.ai__photo{ position:relative; }
.ai__photo img{ width:100%; aspect-ratio:4/5; object-fit:cover; }
.ai__photo::after{ content:""; position:absolute; right:-1px; bottom:-1px; width:38%; height:38%; border:1px solid var(--acento); pointer-events:none; transform:translate(clamp(14px,1.8vw,28px), clamp(14px,1.8vw,28px)); }

/* ===== CIFRAS ===== */
.figures{ padding:var(--sec-y) 0; background:var(--carbon); color:var(--blanco); }
.figures__head{ text-align:center; margin-bottom:clamp(40px,5vw,72px); }
.figures__head .eyebrow{ color:var(--dorado-claro); }
.fig-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(20px,3vw,50px); }
.fig{ text-align:center; padding:clamp(18px,2vw,30px) clamp(8px,1vw,16px); position:relative; }
.fig + .fig::before{ content:""; position:absolute; left:0; top:18%; height:64%; width:1px; background:rgba(250,249,247,.14); }
.fig b{
  font-family:var(--serif); font-weight:500;
  font-size:clamp(52px,6.6vw,108px); display:block; line-height:1;
  font-variant-numeric:tabular-nums; letter-spacing:-.02em;
}
.fig span{ display:block; font-size:11.5px; letter-spacing:.22em; text-transform:uppercase; color:var(--dorado-claro); margin-top:1.3em; }

/* ===== VALORES ===== */
.values-section{ padding:var(--sec-y) 0; }
.vs__head{ display:flex; flex-direction:column; gap:1rem; margin-bottom:clamp(50px,6vw,80px); max-width:34ch; }
.vs__title{ font-family:var(--serif); font-weight:500; font-size:clamp(30px,3.6vw,52px); line-height:1.05; text-wrap:balance; }
.vs__grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:clamp(28px,3.4vw,56px); }
.vc{ display:flex; flex-direction:column; gap:1rem; padding-top:clamp(20px,2vw,28px); border-top:1px solid var(--piedra); position:relative; }
.vc::after{ content:""; position:absolute; left:0; top:-1px; height:1px; width:46px; background:var(--acento); }
.vc__icon{ width:42px; height:42px; color:var(--acento); margin-bottom:.4rem; }
.vc__icon svg{ width:100%; height:100%; display:block; }
.vc h3{ font-family:var(--serif); font-weight:500; font-size:clamp(20px,1.6vw,26px); line-height:1.15; color:var(--carbon); }
.vc p{ color:var(--piedra-texto); font-size:14.5px; line-height:1.65; }

/* ===== CIERRE ===== */
.closing{ position:relative; min-height:clamp(420px,60vh,640px); display:grid; place-items:center; padding:clamp(80px,10vw,150px) var(--pad-x); color:var(--blanco); overflow:hidden; }
.closing__bg{ position:absolute; inset:0; z-index:0; }
.closing__bg img{ width:100%; height:100%; object-fit:cover; }
.closing__veil{ position:absolute; inset:0; z-index:1; background:linear-gradient(180deg, rgba(26,26,26,.45) 0%, rgba(26,26,26,.7) 100%); }
.closing__inner{ position:relative; z-index:2; text-align:center; display:flex; flex-direction:column; align-items:center; gap:1.3rem; max-width:760px; }
.closing__inner .eyebrow{ color:rgba(250,249,247,.78); }
.closing h2{ font-family:var(--serif); font-weight:500; font-size:clamp(32px,5vw,70px); line-height:1.08; text-wrap:balance; color:var(--blanco); }
.closing__cta{ display:flex; gap:1rem; margin-top:1rem; flex-wrap:wrap; justify-content:center; }

/* ===== RESPONSIVE ===== */
@media (max-width:1024px){
  .fig-grid{ grid-template-columns:repeat(2,1fr); gap:clamp(20px,4vw,40px); }
  .fig + .fig::before{ display:none; }
  .vs__grid{ grid-template-columns:repeat(2,1fr); gap:clamp(30px,4vw,50px); }
}
@media (max-width:760px){
  .ai__grid{ grid-template-columns:1fr; gap:clamp(30px,5vw,50px); }
  .ai__photo::after{ display:none; }
}
@media (max-width:520px){
  .vs__grid{ grid-template-columns:1fr; }
  /* Reduce fig number size so "38.000 m²" fits in 2-col layout without wrapping */
  .fig{ padding-left:4px; padding-right:4px; }
  .fig b{ font-size:clamp(32px,8vw,52px); }
}
