/* Paleta Bercris: azul real del logo, petróleo de los marcos, cian del pincel y gris claro de los posts. */
:root{
  --azul:#1212C4;      /* logo */
  --azul-h:#0B0B96;
  --petroleo:#063E59;  /* marcos y bandas oscuras */
  --petroleo-2:#0A4F70;
  --cian:#1CB2D5;      /* pincel de los títulos */
  --gris:#ECECEE;      /* fondo de los posts */
  --blanco:#FFFFFF;
  --tinta:#0E1116;
  --texto:#4B535B;
  --linea:rgba(14,17,22,.1);
  --f:"Jost","Futura","Avenir Next",system-ui,sans-serif;
  --f-logo:"Cormorant Garamond","Trajan Pro",Georgia,serif;
  --col:1180px;
  color-scheme:light;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{scroll-behavior:smooth}
body{margin:0;background:var(--gris);color:var(--texto);font:400 1rem/1.6 var(--f);-webkit-font-smoothing:antialiased}
img{max-width:100%;display:block}
a{color:inherit}
:focus-visible{outline:2px solid var(--cian);outline-offset:3px}
.wrap{max-width:var(--col);margin-inline:auto;padding-inline:clamp(16px,4vw,40px)}
section{padding-block:clamp(3.5rem,7vw,5.5rem);scroll-margin-top:72px}
h1,h2,h3{font-family:var(--f);color:var(--tinta);margin:0;line-height:1.05;text-wrap:balance}
h2{font-size:clamp(1.9rem,4vw,2.9rem);font-weight:700;letter-spacing:-.01em}
p{margin:0}

/* Pincel cian, como en los títulos de sus posts */
.pincel{display:inline-block;position:relative;font:700 .82rem/1 var(--f);letter-spacing:.24em;text-transform:uppercase;color:var(--tinta);margin:0 0 1rem;padding:.35rem .7rem .3rem}
.pincel::before{content:"";position:absolute;inset:0;z-index:-1;background:var(--cian);clip-path:polygon(1% 12%,99% 0,100% 82%,97% 100%,0 92%);opacity:.9}
.pincel{isolation:isolate}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.9rem 1.4rem;border-radius:999px;font:600 .82rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;text-decoration:none;border:1.5px solid transparent;cursor:pointer;transition:background .25s,color .25s,border-color .25s,transform .25s}
.btn:hover{transform:translateY(-1px)}
.btn-azul{background:var(--azul);color:#fff}
.btn-azul:hover{background:var(--azul-h)}
.btn-linea{border-color:var(--tinta);color:var(--tinta)}
.btn-linea:hover{background:var(--tinta);color:#fff}
.btn-cian{background:var(--cian);color:var(--tinta)}
.btn-cian:hover{background:#fff}

/* Logo */
.logo{display:flex;align-items:center;gap:.55rem;text-decoration:none;color:var(--tinta)}
.alas{width:46px;height:22px;fill:var(--azul);flex:none}
.logo span{font:700 1.2rem/.9 var(--f-logo);letter-spacing:.04em;display:grid}
.logo small{font-size:.8rem;letter-spacing:.12em}

/* Header */
.top{position:fixed;inset:0 0 auto;z-index:20;padding-top:env(safe-area-inset-top,0px);transition:background .3s,box-shadow .3s}
.top.solid{background:rgba(236,236,238,.9);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--linea)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;gap:1rem;height:72px}
.top nav{display:flex;gap:2rem}
.top nav a{text-decoration:none;font-weight:500;font-size:1rem;color:var(--tinta);position:relative;padding-block:.3rem}
.top nav a::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:var(--cian);transform:scaleX(0);transform-origin:left;transition:transform .25s}
.top nav a:hover::after,.top nav a.activo::after{transform:scaleX(1)}
.top .btn{padding:.75rem 1.1rem;font-size:.75rem}
@media (max-width:760px){.top nav{display:none}}

/* Hero: texto a la izquierda, torre enmarcada a la derecha */
.hero{padding-top:calc(72px + clamp(1.5rem,5vw,3.5rem));padding-bottom:clamp(2.5rem,5vw,4rem)}
.hero-grid{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:clamp(2rem,6vw,5rem);align-items:center}
.hero h1{font-size:clamp(2.6rem,5.6vw,4.6rem);font-weight:700;letter-spacing:-.02em;max-width:12ch}
.hero h1 em{font-style:normal;color:var(--azul)}
.sub{font-size:1.15rem;margin-top:1.1rem;max-width:36ch}
.ctas{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.8rem}
.cifras{display:flex;flex-wrap:wrap;gap:1rem clamp(1.2rem,3vw,2rem);list-style:none;padding:1.2rem 0;margin:1.8rem 0 0;border-block:1px solid var(--linea)}
.cifras b{display:block;font:700 clamp(1.25rem,2.2vw,1.7rem)/1.1 var(--f);color:var(--petroleo);white-space:nowrap}
.cifras span{font-size:.82rem;letter-spacing:.04em}
.hero-foto{margin:0;position:relative;width:100%;border:10px solid var(--petroleo);background:var(--petroleo);box-shadow:0 30px 60px -20px rgba(6,62,89,.45)}
.hero-foto img{width:100%;height:auto;aspect-ratio:1/1;object-fit:cover;object-position:42% 40%;animation:sube 1.2s cubic-bezier(.2,.8,.2,1) both}
.hero-foto figcaption{position:absolute;left:-10px;bottom:22px;background:var(--azul);color:#fff;font:600 .75rem/1 var(--f);letter-spacing:.16em;text-transform:uppercase;padding:.6rem .9rem}
@keyframes sube{from{transform:scale(1.08);opacity:.4}}
@media (max-width:760px){
  .hero-grid{grid-template-columns:1fr}
  .hero-foto{width:100%;order:-1;border-width:6px}
  .hero-foto img{aspect-ratio:4/3;object-position:42% 40%}
  .pincel{font-size:.7rem;letter-spacing:.16em}
}

/* Proyectos y tabs */
.proyectos{background:var(--blanco)}
.sec-head{display:flex;flex-wrap:wrap;align-items:end;justify-content:space-between;gap:1.5rem}
.tabs{position:relative;display:inline-flex;background:var(--gris);border-radius:999px;padding:4px}
.tabs button{position:relative;z-index:1;border:0;background:none;font:600 .85rem/1 var(--f);letter-spacing:.08em;text-transform:uppercase;color:var(--texto);padding:.85rem 1.3rem;border-radius:999px;cursor:pointer;transition:color .3s}
.tabs button[aria-selected=true]{color:#fff}
.tab-ind{position:absolute;top:4px;bottom:4px;left:4px;border-radius:999px;background:var(--petroleo);transition:transform .45s cubic-bezier(.2,.8,.2,1),width .45s cubic-bezier(.2,.8,.2,1)}
.grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1.1rem;margin-top:2.4rem}
.card{position:relative;background:var(--gris);border-radius:14px;overflow:hidden;cursor:pointer;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s}
.card:hover{transform:translateY(-6px);box-shadow:0 22px 44px -18px rgba(6,62,89,.35)}
.card .foto{aspect-ratio:4/5;overflow:hidden;position:relative;background:var(--petroleo)}
.card .foto img{width:100%;height:100%;object-fit:cover;object-position:50% 15%;transition:transform .8s}
.card:hover .foto img{transform:scale(1.05)}
.foto.vacia{display:grid;place-items:end start;padding:1rem;background:
  repeating-linear-gradient(90deg,rgba(255,255,255,.06) 0 1px,transparent 1px 22px),
  linear-gradient(160deg,var(--petroleo-2),var(--petroleo) 60%,#042C40)}
.foto.vacia::before{content:attr(data-sigla);position:absolute;inset:0;display:grid;place-items:center;font:700 clamp(2.6rem,6vw,4rem)/1 var(--f);letter-spacing:.04em;color:transparent;-webkit-text-stroke:1.5px rgba(255,255,255,.55)}
.foto.vacia>span{position:relative;font:500 .72rem/1 var(--f);letter-spacing:.14em;text-transform:uppercase;color:rgba(255,255,255,.7)}
.foto.vacia>.chip{background:var(--cian);color:var(--tinta);padding:.5rem .75rem;border-radius:999px;font-weight:700}
.card .info{padding:1.1rem 1.2rem 1.3rem}
.meta{font:500 .78rem/1.3 var(--f);letter-spacing:.1em;text-transform:uppercase;color:var(--texto)}
.card h3{font-size:1.45rem;font-weight:700;margin-top:.35rem}
.abrir{display:inline-flex;align-items:center;gap:.5rem;margin-top:.8rem;font:600 .78rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;color:var(--azul)}
.abrir i{display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:var(--azul);color:#fff;font-style:normal;transition:transform .3s}
.card:hover .abrir i{transform:rotate(90deg)}
@media (max-width:560px){.card .foto{aspect-ratio:16/11}}

/* Modal de proyecto: la foto crece desde la tarjeta */
.modal{border:0;padding:0;border-radius:18px;width:min(920px,calc(100% - 32px));max-height:calc(100dvh - 32px);overflow:auto;background:var(--blanco);color:var(--texto);display:none;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)}
.modal[open]{display:grid}
.modal::backdrop{background:rgba(6,30,44,.72);backdrop-filter:blur(4px)}
.m-foto{min-height:420px;position:relative;overflow:hidden}
.m-foto>*{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.m-foto .foto{aspect-ratio:auto}
.m-foto img{width:100%;height:100%;object-fit:cover;object-position:50% 15%}
.m-info{padding:clamp(1.5rem,4vw,2.6rem);display:flex;flex-direction:column;gap:1rem;justify-content:center}
.m-info h3{font-size:clamp(1.8rem,3.5vw,2.4rem);font-weight:700}
.specs{list-style:none;padding:0;margin:0 0 1rem;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem}
.specs li{background:var(--gris);border-radius:10px;padding:.8rem .9rem;font-size:.78rem;letter-spacing:.06em;text-transform:uppercase}
.specs b{display:block;font:700 1.45rem/1.1 var(--f);color:var(--petroleo);letter-spacing:0;text-transform:none}
.m-info .btn{align-self:flex-start;margin-top:.4rem}
.cerrar{position:absolute;top:12px;right:12px;z-index:2;width:42px;height:42px;border-radius:50%;border:0;background:rgba(255,255,255,.92);color:var(--tinta);font-size:1.05rem;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.15)}
@media (max-width:700px){.modal[open]{grid-template-columns:1fr}.m-foto{min-height:0;aspect-ratio:16/11}}

/* Nosotros */
.mv{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:2.2rem}
.mv article{background:var(--blanco);border-radius:14px;padding:1.8rem;border-top:4px solid var(--petroleo)}
.mv h3{font-size:1.3rem;font-weight:700;margin-bottom:.6rem;color:var(--petroleo)}
.valores{display:flex;flex-wrap:wrap;gap:.6rem;list-style:none;padding:0;margin:1.6rem 0 0}
.valores li{background:var(--blanco);border:1px solid var(--linea);border-radius:999px;padding:.6rem 1rem;font-weight:600;font-size:.9rem;color:var(--tinta)}
.valores li::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--cian);margin-right:.55rem;vertical-align:middle}
@media (max-width:700px){.mv{grid-template-columns:1fr}}

/* Equipo */
.equipo{background:var(--blanco)}
.eq-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.1rem;margin-top:2.4rem}
.persona{background:var(--gris);border-radius:14px;padding:1.5rem;text-align:center;transition:transform .35s}
.persona:hover{transform:translateY(-4px)}
.retrato{width:132px;height:132px;margin:0 auto 1.1rem;border-radius:50%;border:5px solid var(--petroleo);overflow:hidden;background:linear-gradient(160deg,var(--petroleo-2),var(--petroleo));display:grid;place-items:center;position:relative}
.retrato::before{content:attr(data-ini);font:600 2.2rem/1 var(--f);color:rgba(255,255,255,.85)}
.retrato img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.persona h3{font-size:1.2rem;font-weight:600}
.rol{font-size:.8rem;letter-spacing:.12em;text-transform:uppercase;color:var(--azul);font-weight:600;margin-top:.3rem}
.persona blockquote{margin:.9rem 0 0;font-size:.95rem;color:var(--texto);font-style:italic}
.persona.pend{opacity:.75}
.persona.pend .retrato{border-style:dashed}
@media (max-width:860px){.eq-grid{grid-template-columns:1fr}.persona{display:grid;grid-template-columns:96px 1fr;gap:0 1.1rem;text-align:left;align-items:center}.retrato{width:96px;height:96px;margin:0;grid-row:span 3}.persona blockquote{margin-top:.4rem}}

/* Contacto */
.contacto{background:var(--petroleo);color:#C8D6DE}
.contacto h2{color:#fff}
.contacto .pincel{color:var(--tinta)}
.layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,6vw,5rem);align-items:start}
.datos{list-style:none;padding:0;margin:2rem 0 0;display:grid;gap:1rem}
.datos small{display:block;font:600 .7rem/1 var(--f);letter-spacing:.2em;text-transform:uppercase;color:var(--cian);margin-bottom:.35rem}
.datos a,.datos span{color:#fff;font-size:1.08rem;text-decoration:none;font-weight:500;overflow-wrap:anywhere}
.datos a:hover{color:var(--cian)}
form{display:grid;gap:1rem;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:clamp(1.2rem,3vw,2rem)}
.fila{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
label{display:grid;gap:.4rem;font:600 .7rem/1 var(--f);letter-spacing:.16em;text-transform:uppercase;color:#fff}
input,select,textarea{font:400 1rem/1.4 var(--f);color:var(--tinta);background:#fff;border:1.5px solid transparent;border-radius:10px;padding:.8rem .9rem;width:100%;min-width:0}
input:focus,select:focus,textarea:focus{outline:none;border-color:var(--cian)}
textarea{resize:vertical}
form .btn{justify-self:start}
form .btn:disabled{opacity:.6;cursor:wait}
.trampa{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.aviso{min-height:1.2em;font-weight:600;color:var(--cian);font-size:.9rem}
@media (max-width:820px){.layout{grid-template-columns:1fr}}
@media (max-width:480px){.fila{grid-template-columns:1fr}}

/* Footer con dock */
footer{background:#042C40;color:#8FA6B3;padding-block:2rem calc(2rem + env(safe-area-inset-bottom,0px))}
footer .wrap{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:1.2rem}
footer .logo{color:#fff}
footer .alas{fill:#fff}
.dock{display:flex;align-items:flex-end;gap:.6rem;height:48px}
.dock a{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:rgba(255,255,255,.08);color:#fff;transform-origin:50% 100%;transition:background .25s,transform .18s ease-out;will-change:transform}
.dock a:hover{background:var(--azul)}
.dock svg{width:20px;height:20px}

/* Transiciones */
::view-transition-old(root),::view-transition-new(root){animation-duration:.4s}
::view-transition-group(proy){animation-duration:.5s;animation-timing-function:cubic-bezier(.2,.8,.2,1)}
::view-transition-old(proy),::view-transition-new(proy){height:100%;object-fit:cover}
::view-transition-group(panel){animation-duration:.35s}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* BG Corporate Center */
.card .chip.vivo{position:absolute;left:12px;top:12px;display:inline-flex;align-items:center;gap:.45rem;background:#fff;color:var(--tinta);font:700 .7rem/1 var(--f);letter-spacing:.12em;text-transform:uppercase;padding:.5rem .75rem;border-radius:999px}
.card .chip.vivo::before{content:"";width:7px;height:7px;border-radius:50%;background:#1DB954;box-shadow:0 0 0 3px rgba(29,185,84,.25)}
.precio{margin-top:.8rem;font-weight:500;color:var(--tinta)}
.precio b{color:var(--azul)}
.nosotros .cifras{margin-top:1.6rem}
.ctas button.btn{font-family:var(--f)}

/* Tres tabs, render de noche al pasar el mouse y tamaños según cantidad de tarjetas */
.foto .noche{position:absolute;inset:0;opacity:0;transition:opacity .7s ease}
.card:hover .foto .noche,.m-foto:hover .noche{opacity:1}
.grid:has(>.card:nth-child(2):last-child) .card .foto{aspect-ratio:16/11}
.grid>.card:only-child{max-width:400px}
@media (max-width:560px){
  .sec-head{display:block}
  .tabs{display:flex;margin-top:1.4rem;width:100%}
  .tabs button{flex:1;padding:.8rem .4rem;font-size:.7rem;letter-spacing:.04em}
}
.tabs .corto{display:none}
@media (max-width:560px){.tabs .largo{display:none}.tabs .corto{display:inline}}

/* Portada integrada: la torre se funde con el fondo, sin marco */
.hero{position:relative;overflow:hidden;isolation:isolate;min-height:min(94vh,880px);display:flex;align-items:center;background:radial-gradient(120% 90% at 85% 10%,#0E5A80 0%,#063E59 45%,#04283A 100%);color:#C8D6DE}
.hero-img{position:absolute;z-index:-1;top:0;right:0;height:100%;width:min(60%,900px);object-fit:cover;object-position:50% 25%;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to top,transparent 0,#000 22%);-webkit-mask-composite:source-in;
  mask-image:linear-gradient(to right,transparent 0,#000 38%),linear-gradient(to top,transparent 0,#000 22%);mask-composite:intersect;
  animation:sube 1.6s cubic-bezier(.2,.8,.2,1) both}
.hero-grid{display:block;width:100%}
.hero-txt{max-width:560px}
.hero h1{color:#fff}
.hero h1 em{color:var(--cian)}
.hero .sub{color:#C8D6DE}
.hero .cifras{border-color:rgba(255,255,255,.16)}
.hero .cifras b{color:#fff}
.hero .cifras span{color:#9FB6C3}
.hero .btn-linea{border-color:rgba(255,255,255,.7);color:#fff}
.hero .btn-linea:hover{background:#fff;color:var(--tinta)}
/* Header claro sobre la portada oscura */
.top:not(.solid) .logo,.top:not(.solid) nav a{color:#fff}
.top:not(.solid) .alas{fill:#fff}
@media (max-width:760px){
  .hero{display:block;min-height:0;padding-top:0}
  .hero-img{position:relative;display:block;width:100%;height:62vh;min-height:380px;
    -webkit-mask-image:linear-gradient(to top,transparent 0,#000 35%);mask-image:linear-gradient(to top,transparent 0,#000 35%);-webkit-mask-composite:source-over;mask-composite:add}
  .hero-grid{margin-top:-90px;position:relative;padding-bottom:3rem}
}

/* Galería en el detalle */
.m-foto>.gal{inset:auto 0 0 0;height:auto;width:auto;display:flex;align-items:center;justify-content:space-between;gap:.6rem;padding:2.5rem .8rem .8rem;background:linear-gradient(0deg,rgba(4,40,58,.75),transparent);color:#fff;flex-wrap:wrap}
.m-foto img{transition:opacity .18s}
.gal button.gal-prev,.gal button.gal-next{width:40px;height:40px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:rgba(4,40,58,.35);color:#fff;font-size:1.3rem;line-height:1;cursor:pointer}
.gal button.gal-prev:hover,.gal button.gal-next:hover{background:var(--azul);border-color:var(--azul)}
.gal-txt{flex:1;text-align:center;font:600 .74rem/1.2 var(--f);letter-spacing:.12em;text-transform:uppercase}
.gal-puntos{flex-basis:100%;display:flex;justify-content:center;gap:.4rem;order:3}
.gal-puntos button{width:8px;height:8px;padding:0;border-radius:50%;border:0;background:rgba(255,255,255,.45);cursor:pointer}
.gal-puntos button.on{background:var(--cian);width:22px;border-radius:99px}

/* WhatsApp e Instagram */
.redes{display:flex;flex-wrap:wrap;gap:.7rem;margin-top:1.8rem}
.btn-wa{background:#25D366;color:#fff}.btn-wa:hover{background:#1EBE5A}
.btn-ig{background:linear-gradient(45deg,#F58529,#DD2A7B 50%,#8134AF);color:#fff}.btn-ig:hover{filter:brightness(1.08)}
.redes svg{flex:none}
.wa-flot{position:fixed;right:max(18px,env(safe-area-inset-right,0px));bottom:calc(18px + env(safe-area-inset-bottom,0px));z-index:30;width:58px;height:58px;border-radius:50%;background:#25D366;color:#fff;display:grid;place-items:center;box-shadow:0 10px 26px rgba(4,40,58,.35);transition:transform .25s}
.wa-flot:hover{transform:scale(1.08)}
.wa-flot svg{width:30px;height:30px}

/* Entregados: el edificio completo, con el mismo render difuminado de fondo */
.foto.completa{isolation:isolate}
.foto.completa::before{content:"";position:absolute;inset:-30px;z-index:-1;background:var(--fondo) center/cover;filter:blur(22px) saturate(1.15) brightness(.9)}
.card .foto.completa img,.m-foto .foto.completa img{object-fit:contain;object-position:50% 100%;padding:18px 0 0;filter:drop-shadow(0 18px 24px rgba(4,40,58,.35))}
.card:hover .foto.completa img{transform:scale(1.02)}

/* Portada: la torre completa, alineada a la derecha y fundida con el fondo */
.hero{min-height:min(100vh,940px)}
.hero-img{width:auto;max-width:62%;height:100%;object-fit:contain;object-position:100% 100%;right:clamp(0px,calc((100vw - 1180px)/2),400px);
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 28%,#000 88%,transparent 100%),linear-gradient(to top,transparent 0,#000 16%,#000 82%,transparent 100%);
  mask-image:linear-gradient(to right,transparent 0,#000 28%,#000 88%,transparent 100%),linear-gradient(to top,transparent 0,#000 16%,#000 82%,transparent 100%)}
@media (max-width:760px){
  .hero-img{right:auto;max-width:none;width:100%;height:auto;max-height:78vh;aspect-ratio:1254/2250;object-fit:cover;object-position:50% 100%;
    -webkit-mask-image:linear-gradient(to top,transparent 0,#000 28%);mask-image:linear-gradient(to top,transparent 0,#000 28%)}
}
/* Galería y tarjeta del corporativo: foto completa */
.m-foto .foto.completa img{object-position:50% 50%;padding:0}
#panel-ent .grid{grid-template-columns:repeat(auto-fit,minmax(190px,1fr))}
#panel-ent .card h3{font-size:1.25rem}
.demo-nota{margin:0;font-size:.82rem;color:#9FB6C3;font-style:italic}

/* Logo con más presencia */
.top .wrap{height:84px}
.top .alas{width:72px;height:35px}
.top .logo{gap:.75rem}
.top .logo span{font-size:1.75rem;letter-spacing:.05em}
.top .logo small{font-size:1.02rem;letter-spacing:.16em}
footer .alas{width:60px;height:29px}
footer .logo span{font-size:1.5rem}
footer .logo small{font-size:.9rem}
@media (max-width:760px){
  .top .wrap{height:76px}
  .top .alas{width:58px;height:28px}
  .top .logo span{font-size:1.45rem}
  .top .logo small{font-size:.86rem}
}
.retrato img{object-position:50% 50%;background:#fff}
.retrato:has(img){box-shadow:0 14px 30px -12px rgba(6,62,89,.45)}
/* CEO al centro en computadora; primero en celular */
.persona.ceo .retrato{width:150px;height:150px}
@media (max-width:860px){.persona.ceo{order:-1}.persona.ceo .retrato{width:96px;height:96px}}
#panel-ent .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:860px){#panel-ent .grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){#panel-ent .grid{grid-template-columns:1fr}}
