/* Plantilla "corporativa" — empresas, real estate, litigios.
   Lora (serif contenida) + Inter. Gris hielo, azul acero, retícula de filas
   numeradas, mucho aire. Sobriedad tipo firma institucional. */

@font-face{font-family:'Lora';font-weight:600;font-display:swap;
  src:url(fonts/lora-600.woff2) format('woff2')}
@font-face{font-family:'Inter';font-weight:400;font-display:swap;
  src:url(fonts/inter-400.woff2) format('woff2')}
@font-face{font-family:'Inter';font-weight:600;font-display:swap;
  src:url(fonts/inter-600.woff2) format('woff2')}

:root{
  --hielo:#F5F7F9; --pizarra:#1F2A37; --acento:#19557A; --tinta:#2A3440;
  --gris:#64707D; --linea:#DCE2E8;
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:Inter,system-ui,sans-serif;background:#fff;color:var(--tinta);
  line-height:1.65;font-size:16.5px;-webkit-font-smoothing:antialiased}
.wrap{max-width:1140px;margin:0 auto;padding:0 28px}
a{color:inherit;text-decoration:none}
h1,h2,h3{font-family:'Lora',Georgia,serif;font-weight:600}

/* nav */
.top{position:sticky;top:0;background:rgba(255,255,255,.96);backdrop-filter:blur(6px);
  border-bottom:1px solid var(--linea);z-index:10}
.bar{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 28px}
.brand{font-family:'Lora',serif;font-weight:600;font-size:1.08em;color:var(--pizarra);letter-spacing:.3px}
.menu{display:flex;gap:26px;font-size:.78em;font-weight:600;color:var(--gris)}
.menu a:hover{color:var(--pizarra)}
.acciones{display:flex;align-items:center;gap:14px}
.langs{display:flex;gap:4px;font-size:.7em;font-weight:600}
.langs a{padding:4px 9px;border:1px solid var(--linea);color:var(--gris)}
.langs a.on{background:var(--pizarra);border-color:var(--pizarra);color:#fff}
.btn{display:inline-block;background:var(--pizarra);color:#fff;font-weight:600;font-size:.8em;padding:11px 22px}
.btn:hover{background:var(--acento)}

/* hero con índice */
.hero{background:var(--hielo);border-bottom:1px solid var(--linea);padding:92px 0 84px}
.hgrid{display:grid;grid-template-columns:1.3fr .7fr;gap:64px;align-items:start}
.kicker{font-size:.7em;font-weight:600;letter-spacing:3px;text-transform:uppercase;color:var(--acento);margin-bottom:22px}
.hero h1{font-size:2.7em;line-height:1.16;color:var(--pizarra);letter-spacing:-.3px}
.lede{color:var(--gris);font-size:1.08em;max-width:540px;margin-top:22px}
.indice{border-left:1px solid var(--linea);padding-left:36px;display:flex;flex-direction:column;gap:2px}
.ilabel{font-size:.68em;font-weight:600;letter-spacing:2.5px;text-transform:uppercase;color:var(--gris);margin-bottom:14px}
.indice a{font-size:.9em;font-weight:600;color:var(--pizarra);padding:9px 0;border-bottom:1px solid var(--linea)}
.indice a:hover{color:var(--acento)}

/* franjas */
.franjas{border-bottom:1px solid var(--linea)}
.fgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:56px;padding:44px 28px}
.franja h3{font-size:1.1em;color:var(--pizarra);margin-bottom:8px}
.franja p{font-size:.9em;color:var(--gris)}

/* áreas: filas numeradas */
.areas{padding:88px 0}
.sec{font-size:1.9em;color:var(--pizarra);letter-spacing:-.3px;margin-bottom:34px}
.fila{display:grid;grid-template-columns:90px 320px 1fr;gap:28px;align-items:baseline;
  padding:30px 0;border-top:1px solid var(--linea)}
.fila:last-child{border-bottom:1px solid var(--linea)}
.num{font-size:.85em;font-weight:600;color:var(--acento);font-family:Inter}
.fila h3{font-size:1.25em;color:var(--pizarra)}
.fila p{font-size:.92em;color:var(--gris)}

/* about */
.about{background:var(--pizarra);color:#fff;padding:88px 0}
.agrid{display:grid;grid-template-columns:320px 1fr;gap:28px}
.about .sec{color:#fff;margin:0}
.about .big{font-size:1.12em;line-height:1.8;color:#C9D2DB}

/* equipo */
.team{padding:88px 0}
.people{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:34px}
.person{max-width:520px}
.avatar{width:76px;height:76px;background:var(--hielo);border:1px solid var(--linea);color:var(--pizarra);
  font-family:'Lora',serif;font-size:1.4em;display:flex;align-items:center;justify-content:center;margin-bottom:16px}
.person h3{font-size:1.12em;color:var(--pizarra)}
.role{font-size:.7em;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--acento);margin:4px 0 10px}
.person p{font-size:.88em;color:var(--gris)}

/* testimonios */
.quotes{background:var(--hielo);border-top:1px solid var(--linea);border-bottom:1px solid var(--linea);padding:72px 0}
.quotes .wrap{display:grid;grid-template-columns:repeat(auto-fit,minmax(340px,1fr));gap:48px}
blockquote p{font-family:'Lora',serif;font-size:1.18em;line-height:1.6;color:var(--pizarra)}
blockquote footer{margin-top:14px;font-size:.78em;font-weight:600;letter-spacing:1px;color:var(--gris)}

/* contacto */
.contact{padding:88px 0}
.cgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:30px}
.clabel{font-size:.68em;font-weight:600;letter-spacing:2px;text-transform:uppercase;color:var(--acento);margin-bottom:6px}
.contact a:hover{color:var(--acento)}
#aw-lead{--navy:#1F2A37;--gris:#64707D;--linea:#DCE2E8}

/* footer */
.foot{background:var(--pizarra);color:#8B97A3;padding:46px 0 54px}
.fbrand{font-family:'Lora',serif;color:#fff;font-size:1.02em;margin-bottom:14px}
.disclaimer{font-size:.74em;line-height:1.7;max-width:720px}

@media(max-width:860px){
  .menu{display:none}
  .hgrid,.agrid{grid-template-columns:1fr}
  .indice{border-left:none;padding-left:0;border-top:1px solid var(--linea);padding-top:24px}
  .fila{grid-template-columns:48px 1fr;grid-template-rows:auto auto}
  .fila p{grid-column:2}
  .hero{padding:56px 0 50px}
  .hero h1{font-size:2em}
}

/* ---- medios: logo, íconos y fotos (todo opcional) ---- */
.logo{height:40px;width:auto;display:block}
.logo-plate{display:inline-block;background:#fff;padding:8px 14px;border-radius:6px}
.logo-plate .logo{height:32px}
.ico{display:inline-flex}
.ico svg{width:100%;height:100%;stroke:currentColor;fill:none}
.has-photo img{width:100%;height:100%;object-fit:cover;display:block}
.has-photo{position:relative;overflow:hidden;padding:0}
.has-photo::after{content:"";position:absolute;inset:0;pointer-events:none}

.brand{display:flex;align-items:center}
.hero.has-img{position:relative;overflow:hidden;border-bottom-color:transparent;}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 38%}
.hero.has-img{padding:132px 0 124px}
@media(max-width:860px){.hero.has-img{padding:64px 0 56px}}
.hero.has-img::after{content:"";position:absolute;inset:0;background:linear-gradient(100deg,rgba(8,28,62,.84) 0,rgba(8,28,62,.68) 38%,rgba(8,28,62,.20) 72%,rgba(8,28,62,.26) 100%)}
.hero.has-img>.wrap{position:relative;z-index:2}
.hero.has-img h1,.hero.has-img .indice a,.hero.has-img .ilabel{color:#fff}
.hero.has-img .lede{color:#C9D2DB}
.hero.has-img .kicker{color:#8FBAD6}
.hero.has-img .indice{border-left-color:rgba(255,255,255,.25)}
.hero.has-img .indice a{border-bottom-color:rgba(255,255,255,.18)}
.fila h3 .ico{width:22px;height:22px;color:var(--acento);margin-right:12px;vertical-align:-3px}
.has-photo img{filter:grayscale(.85) contrast(1.05)}
.has-photo::after{background:rgba(25,85,122,.14);mix-blend-mode:multiply}

/* rótulo de contenido de ejemplo en demos */
.demo-tag{display:inline-block;margin-top:10px;font:700 .62rem/1 system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#8A5A00;background:#FFF1D0;border:1px solid #E8C879;border-radius:3px;padding:4px 7px}

/* móvil: el botón Contacto no cabe junto al logo y el selector de idioma */
@media(max-width:560px){.acciones .btn{display:none}}

/* variables de las piezas compartidas (assets/extras.css) */
:root{--aw-accent:var(--acento);--aw-ink:var(--pizarra);--aw-muted:var(--gris);--aw-line:var(--linea);--aw-bg:var(--hielo);--aw-card:#fff;--aw-head:'Lora',Georgia,serif;--aw-bar-bg:var(--pizarra)}
