/* EOLID v2 — identidad editorial local */
:root{
  --ink:#151713;
  --ink-2:#24271f;
  --cream:#eceee8;
  --paper:#f7f7f3;
  --white:#fff;
  --orange:#df5107;
  --orange-dark:#a93d05;
  --sage:#8d9482;
  --line:rgba(21,23,19,.14);
  --muted:#61665c;
  --display:"Bricolage Grotesque",Arial,sans-serif;
  --serif:"Newsreader",Georgia,serif;
  --sans:"Manrope",Arial,sans-serif;
  --shadow:0 24px 64px rgba(16,20,13,.12);
  --radius:0;
  --shell:min(1240px,calc(100% - 56px));
}
html{scroll-padding-top:84px}
body{background:var(--paper);overflow-x:hidden}
a,button{touch-action:manipulation;-webkit-tap-highlight-color:rgba(223,81,7,.16)}
.skip-link{position:fixed;z-index:999;top:10px;left:10px;padding:10px 14px;background:var(--white);color:var(--ink);font-size:.8rem;font-weight:700;transform:translateY(-150%)}
.skip-link:focus{transform:none}
.section{padding:104px 0}
.kicker{margin-bottom:17px;color:var(--orange-dark);font-size:.68rem;letter-spacing:.18em}
.kicker:before{width:34px;height:2px}
.kicker-light{color:#ff9b66}
.section-head h2,.page-hero h1,.split-hero h1,.about-hero h1,.valuation-page h1,.contact-page h1{font-family:var(--display);font-weight:600;letter-spacing:-.048em;text-wrap:balance}
.section-head h2{font-size:clamp(2.5rem,4.8vw,4.7rem);line-height:.98}
.section-head p{color:var(--muted);text-wrap:pretty}
.text-link{border-bottom:0;padding-bottom:3px;box-shadow:inset 0 -1px 0 var(--ink);font-size:.82rem}
.button{min-height:50px;padding:0 22px;font-size:.82rem;letter-spacing:-.01em}
.button-primary{background:var(--orange)}
.button-primary:hover{background:var(--orange-dark)}

/* Marca y navegación */
.site-header{height:78px;background:rgba(247,247,243,.94)}
.header-inner{gap:30px}
.brand{position:relative;display:block;width:138px;height:38px;flex:0 0 138px}
.brand-logo{display:block;width:138px;height:auto}
.brand-logo-light{display:none}
.home .site-header:not(.is-scrolled) .brand-logo-dark{display:none}
.home .site-header:not(.is-scrolled) .brand-logo-light{display:block}
.desktop-nav{gap:30px}
.desktop-nav a{font-size:.75rem;font-weight:700}
.header-cta{border:0;padding:11px 15px;background:var(--orange);color:var(--white)!important;font-size:.72rem}
.header-cta:hover{background:var(--orange-dark)}
.site-footer .brand{width:155px;height:44px}
.site-footer .brand-logo{width:155px}
.site-footer{padding-top:0;background:#10120e}
.footer-map{display:grid;grid-template-columns:.78fr 1.22fr;gap:72px;align-items:center;padding:72px 0;border-bottom:1px solid rgba(255,255,255,.12)}
.footer-map-copy .kicker{color:#ff9b66}
.footer-map-copy h2{max-width:460px;margin:0 0 18px;color:var(--white);font-family:var(--display);font-size:clamp(2.2rem,4vw,4rem);font-weight:600;letter-spacing:-.055em;line-height:.96}
.footer-map-copy p{max-width:430px;margin:0 0 24px;color:rgba(255,255,255,.62)}
.footer-map-copy .text-link{color:var(--white);border-color:rgba(255,255,255,.42)}
.footer-map-frame{min-height:330px;border:1px solid rgba(255,255,255,.14);background:#25271f;overflow:hidden}
.footer-map-frame iframe{display:block;width:100%;height:330px}
.footer-grid{padding-top:64px}

/* Hero: una ventana inmobiliaria, no una portada genérica */
.hero-home{min-height:0;padding:122px 0 52px;background:var(--ink);color:var(--white)}
.hero-layout{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1.16fr) minmax(390px,.72fr);gap:58px;align-items:center}
.hero-copy{min-width:0}
.hero-copy h1{max-width:760px;margin:0;font-family:var(--display);font-size:clamp(3.8rem,5.5vw,5.15rem);font-weight:600;line-height:.9;letter-spacing:-.065em;text-wrap:balance}
.hero-copy h1>span{display:block}
.hero-copy h1 em{display:block;margin-top:10px;color:#ff8a4b;font-family:var(--serif);font-weight:400;letter-spacing:-.04em;line-height:.92}
.hero-copy>p{max-width:610px;margin:25px 0 28px;color:rgba(255,255,255,.74);font-size:1rem;line-height:1.65;text-wrap:pretty}
.hero-actions{gap:12px}
.hero-actions .button-ghost{background:transparent;border-color:rgba(255,255,255,.38)}
.hero-actions .button-ghost:hover{background:var(--white);color:var(--ink)}
.hero-frame{position:relative;padding:14px 14px 62px;background:var(--orange);box-shadow:0 30px 80px rgba(0,0,0,.26)}
.hero-frame:before{position:absolute;z-index:-1;inset:-20px 20px 20px -20px;border:1px solid rgba(255,255,255,.2);content:""}
.hero-image{position:relative;inset:auto;aspect-ratio:4/4.22;overflow:hidden;background:#363b31;transform:none}
.hero-image img{width:100%;height:100%;object-fit:cover;object-position:62% center}
.hero-frame-caption{position:absolute;right:18px;bottom:14px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:16px;color:var(--white)}
.hero-frame-caption span{font-family:var(--serif);font-size:1.15rem;font-style:italic}
.hero-frame-caption strong{font-size:.6rem;letter-spacing:.11em;text-transform:uppercase}

/* Confianza separada del copy del hero */
.trust-rail{background:var(--orange);color:var(--white)}
.trust-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.trust-item{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:18px;min-height:96px;padding:18px 34px;border-left:1px solid rgba(255,255,255,.28)}
.trust-item:last-child{border-right:1px solid rgba(255,255,255,.28)}
.trust-item strong{font-family:var(--display);font-size:2rem;font-weight:700;letter-spacing:-.05em;line-height:1}
.trust-item span{max-width:175px;color:rgba(255,255,255,.82);font-size:.68rem;font-weight:600;letter-spacing:.035em;line-height:1.35;text-transform:uppercase}

/* Enrutado por intención */
.intent-section{background:var(--white);border-bottom:1px solid var(--line)}
.intent-grid{display:grid;grid-template-columns:repeat(3,1fr)}
.intent-card{display:grid;grid-template-columns:34px 1fr auto;align-items:center;gap:14px;min-height:112px;padding:22px 28px;border-left:1px solid var(--line);transition:background .2s,color .2s}
.intent-card:last-child{border-right:1px solid var(--line)}
.intent-card>span{color:var(--orange-dark);font-family:var(--display);font-size:.78rem;font-weight:700}
.intent-card>div{display:flex;min-width:0;flex-direction:column}
.intent-card strong{font-family:var(--display);font-size:1.08rem;letter-spacing:-.025em}
.intent-card small{margin-top:3px;color:var(--muted);font-size:.68rem}
.intent-card .icon{width:18px;transition:transform .2s}
.intent-card:hover{background:var(--cream)}
.intent-card:hover .icon{transform:translateX(4px)}
.intent-card-accent{background:var(--orange);color:var(--white)}
.intent-card-accent>span,.intent-card-accent small{color:rgba(255,255,255,.72)}
.intent-card-accent:hover{background:var(--orange-dark)}

/* Contenido y activos */
.intro-section{background:var(--cream)}
.intro-grid{grid-template-columns:1fr 1fr;gap:100px}
.intro-copy .lead{font-family:var(--display);font-size:1.38rem;font-weight:500;letter-spacing:-.025em;line-height:1.45}
.properties-section{background:var(--paper)}
.property-grid{gap:24px}
.property-card{border:0;background:var(--white);box-shadow:0 0 0 1px rgba(21,23,19,.08);transition:box-shadow .25s,transform .25s}
.property-card:hover{box-shadow:var(--shadow);transform:translateY(-4px)}
.property-media{aspect-ratio:16/11}
.property-tag{top:12px;left:12px;background:var(--ink);color:var(--white);backdrop-filter:none}
.property-info{padding:19px 19px 17px}
.property-info h3{font-family:var(--display);font-size:1.02rem;font-weight:600;line-height:1.35;letter-spacing:-.022em}
.property-bottom strong{font-family:var(--display);font-size:1.28rem;font-weight:600;letter-spacing:-.03em}
.seller-section{background:#e1e5dc}
.seller-visual{background:var(--ink);box-shadow:none}
.seller-number{background:var(--paper)}
.seller-number span{color:var(--orange);font-family:var(--display);font-weight:600}
.seller-number strong{font-family:var(--display);font-size:2rem;font-weight:600;letter-spacing:-.04em}
.team-v2-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:96px;align-items:center}
.team-brand-panel{position:relative;display:flex;min-height:430px;flex-direction:column;justify-content:flex-end;padding:48px;background:var(--ink);color:var(--white);overflow:hidden}
.team-brand-panel:before{position:absolute;top:-120px;right:-100px;width:340px;height:340px;border:70px solid var(--orange);content:"";transform:rotate(42deg)}
.team-brand-panel img{position:absolute;z-index:1;top:42px;left:42px;width:170px;height:auto}
.team-brand-panel span,.team-brand-panel strong{position:relative;z-index:1}
.team-brand-panel span{margin-bottom:14px;color:#ff9b66;font-size:.66rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.team-brand-panel strong{max-width:430px;font-family:var(--display);font-size:clamp(2.5rem,4vw,4.1rem);font-weight:600;letter-spacing:-.055em;line-height:.95}
.team-v2-copy>p{max-width:620px;color:var(--muted);font-size:1.04rem}
.team-v2-copy .text-link{margin-top:22px}
.area-card{background:var(--ink);box-shadow:18px 18px 0 var(--orange)}
.area-map{background:radial-gradient(circle at 75% 30%,rgba(223,81,7,.42),transparent 33%)}
.cta-band{background:var(--orange)}
.cta-band h2{font-family:var(--display);font-weight:600;letter-spacing:-.05em}

/* Páginas interiores dentro del nuevo sistema */
.page-hero{background:linear-gradient(135deg,#e7eae3 0%,var(--paper) 70%)}
.page-hero h1{line-height:.92}
.hero-stat strong{font-family:var(--display);font-weight:600;letter-spacing:-.06em}
.service-grid h2,.process-list h2,.valuation-form-card h2,.contact-form-card h2,.hours h2,.legal-note h2,.buyer-note h2,.method-grid h2,.founders h2{font-family:var(--display);font-weight:600;letter-spacing:-.035em}
.split-copy{background:var(--cream)}
.split-copy h1,.valuation-page h1,.contact-page h1,.about-hero h1{line-height:.92}
.art-card strong,.valuation-grid h2,.manifesto blockquote{font-family:var(--display);font-weight:600;letter-spacing:-.045em}
.about-mark{font-family:var(--display);font-weight:600}
.founders h2{font-size:3.3rem}

@media (max-width:1020px){
  :root{--shell:min(100% - 40px,930px)}
  .hero-layout{grid-template-columns:1fr .78fr;gap:42px}
  .hero-copy h1{font-size:4.5rem}
  .hero-frame{padding-bottom:56px}
  .desktop-nav{gap:17px}
  .intent-card{padding-inline:20px}
  .intro-grid{gap:60px}
  .team-v2-grid{gap:55px}
}

@media (max-width:760px){
  :root{--shell:calc(100% - 32px)}
  body{padding-bottom:calc(58px + env(safe-area-inset-bottom))}
  .section{padding:68px 0}
  .site-header,.home .site-header.is-scrolled{height:64px}
  .header-inner{padding-right:52px}
  .brand{width:118px;height:33px;flex-basis:118px}
  .brand-logo{width:118px}
  .menu-toggle{top:12px;right:12px;width:42px;height:40px}
  .mobile-menu{justify-content:flex-start;overscroll-behavior:contain;padding-top:28px;padding-bottom:calc(30px + env(safe-area-inset-bottom));background:var(--ink)}
  .mobile-menu-brand{display:block;width:146px}
  .mobile-menu-brand img{display:block;width:146px;height:auto}
  .mobile-menu nav{margin-top:42px}
  .mobile-menu-meta{margin-top:auto}
  .mobile-menu nav>a{font-family:var(--display);font-size:1.72rem;font-weight:600;letter-spacing:-.035em}
  .hero-home{min-height:0;padding:64px 0 24px;align-items:stretch}
  .hero-layout{display:flex;flex-direction:column;gap:0;width:100%}
  .hero-frame{order:-1;width:100%;margin:0 0 20px;padding:0;background:transparent;box-shadow:none}
  .hero-frame:before,.hero-frame-caption{display:none}
  .hero-image{width:100%;height:132px;aspect-ratio:auto}
  .hero-image img{object-position:61% 58%}
  .hero-copy{width:var(--shell);margin-inline:auto}
  .hero-copy .kicker{margin-bottom:11px;font-size:.59rem}
  .hero-copy h1{max-width:360px;font-size:clamp(2.36rem,11vw,2.72rem);line-height:.94;letter-spacing:-.058em}
  .hero-copy h1 em{margin-top:4px;line-height:.9}
  .hero-copy>p{margin:13px 0 17px;font-size:.86rem;line-height:1.48}
  .hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .hero-actions .button{min-height:46px;padding:0 10px;font-size:.69rem;white-space:nowrap}
  .hero-actions .button .icon{width:15px}
  .trust-item{grid-template-columns:1fr;justify-items:center;gap:5px;min-height:82px;padding:12px 8px;text-align:center}
  .trust-item strong{font-size:1.38rem}
  .trust-item span{font-size:.51rem;letter-spacing:.02em}
  .intent-grid{grid-template-columns:1fr}
  .intent-card{min-height:76px;padding:14px 16px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}
  .intent-card strong{font-size:.95rem}
  .intent-card small{font-size:.62rem}
  .section-head h2{font-size:2.52rem;line-height:.98}
  .intro-grid{gap:32px}
  .intro-copy .lead{font-size:1.12rem}
  .property-grid{gap:14px}
  .property-media{width:100%;height:100%;min-height:145px;aspect-ratio:auto}
  .property-media img{width:100%;height:100%;object-fit:cover}
  .property-info h3{font-size:.84rem;line-height:1.35}
  .property-bottom strong{font-size:1.02rem}
  .seller-number strong{font-size:1.62rem}
  .team-v2-grid{grid-template-columns:1fr;gap:34px}
  .team-brand-panel{min-height:300px;padding:30px}
  .team-brand-panel:before{top:-100px;right:-110px;width:280px;height:280px;border-width:58px}
  .team-brand-panel img{top:28px;left:28px;width:135px}
  .team-brand-panel strong{font-size:2.55rem}
  .area-card{box-shadow:8px 8px 0 var(--orange)}
  .footer-map{grid-template-columns:1fr;gap:30px;padding:52px 0}
  .footer-map-copy h2{font-size:2.7rem}
  .footer-map-frame,.footer-map-frame iframe{height:290px;min-height:290px}
  .footer-grid{padding-top:48px}
  .site-footer .brand{width:140px}
  .site-footer .brand-logo{width:140px}
}

@media (max-width:390px){
  .hero-copy h1{font-size:2.3rem}
  .hero-copy>p{font-size:.82rem}
  .hero-actions .button{font-size:.65rem}
}
