[x-cloak]{display:none!important}
/* Concepto: planilla de obra. Hero sobre la obra en curso; las obras se leen como un registro técnico (sector, ubicación, año, m²) con ficha de detalle, y la trayectoria en una escala real 1999–2026. */
:root{--navy:#0F2A44;--navy-deep:#0A1E33;--blue:#2669A2;--gold:#DDB232;--gold-soft:#E8C557;--paper:#F5F3EE;--stone:#EAE6DD;--line:#D6D0C4;--ink-2:#3D4E62;--mist:#B4C1D0}
html{scroll-behavior:smooth}
body{margin:0;background:#F5F3EE;-webkit-font-smoothing:antialiased}
section[id]{scroll-margin-top:64px}
a{color:#2669A2}a:hover{color:#0F2A44}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
:focus-visible{outline:2px solid #DDB232;outline-offset:3px}

.hc-wrap{max-width:1280px;margin:0 auto;padding-left:clamp(20px,4vw,40px);padding-right:clamp(20px,4vw,40px);box-sizing:border-box}
.hc-sec{padding-top:clamp(80px,9vw,128px);padding-bottom:clamp(80px,9vw,128px)}
.hc-num{font-variant-numeric:tabular-nums}
.hc-eyebrow{font-size:12px;font-weight:600;letter-spacing:.22em;text-transform:uppercase}

/* navbar */
.hc-header{position:sticky;top:0;z-index:70;transition:background .35s ease,box-shadow .35s ease}
.hc-header.is-solid{background:rgba(10,30,51,.88);-webkit-backdrop-filter:saturate(140%) blur(16px);backdrop-filter:saturate(140%) blur(16px);box-shadow:0 1px 0 rgba(245,243,238,.08)}
.hc-header-in{height:84px;transition:height .35s ease}
.hc-header.is-solid .hc-header-in{height:66px}
.hc-logo{height:38px;transition:height .35s ease,transform .45s cubic-bezier(.2,.7,.2,1),filter .45s ease}
.hc-header.is-solid .hc-logo{height:30px}
.hc-logo-link{position:relative;display:flex;align-items:center}
.hc-logo-link::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(100deg,transparent 35%,rgba(255,255,255,.95) 50%,transparent 65%);background-size:300% 100%;background-position:120% 0;-webkit-mask:url(../img/hcsa-logo-blanco.png) left center/contain no-repeat;mask:url(../img/hcsa-logo-blanco.png) left center/contain no-repeat;opacity:0}
.hc-logo-link:hover::after{animation:hcSheen .9s cubic-bezier(.4,0,.2,1)}
.hc-logo-link:hover .hc-logo{transform:translateY(-1px) scale(1.03);filter:drop-shadow(0 6px 16px rgba(221,178,50,.35))}
@keyframes hcSheen{0%{background-position:120% 0;opacity:1}100%{background-position:-20% 0;opacity:1}}
.hc-links{display:flex}
.hc-burger{display:none}
.hc-link{color:#E6ECF3;text-decoration:none;position:relative;padding:6px 0}
.hc-link:hover{color:#FFFFFF}
.hc-link::after{content:"";position:absolute;left:0;right:0;bottom:0;height:1px;background:#DDB232;transform:scaleX(0);transform-origin:left;transition:transform .35s ease}
.hc-link:hover::after{transform:scaleX(1)}
@media (max-width:900px){
.hc-links{display:none}.hc-burger{display:inline-flex}
.hc-header-in,.hc-header.is-solid .hc-header-in{height:64px}
.hc-logo,.hc-header.is-solid .hc-logo{height:28px}
}
.hc-burger{transition:border-color .3s ease,color .3s ease}
.hc-burger:hover{border-color:#DDB232;color:#E8C557}
.hc-burger-box{position:relative;display:block;width:20px;height:14px}
.hc-burger-box span{position:absolute;left:0;height:1.6px;background:currentColor;transition:transform .45s cubic-bezier(.7,0,.2,1),opacity .25s ease,width .45s cubic-bezier(.7,0,.2,1)}
.hc-burger-box span:nth-child(1){top:0;width:20px}
.hc-burger-box span:nth-child(2){top:6px;width:20px}
.hc-burger-box span:nth-child(3){top:12px;width:13px}
.hc-burger.is-open .hc-burger-box span:nth-child(1){transform:translateY(6px) rotate(45deg)}
.hc-burger.is-open .hc-burger-box span:nth-child(2){opacity:0;transform:translateX(-8px)}
.hc-burger.is-open .hc-burger-box span:nth-child(3){width:20px;transform:translateY(-6px) rotate(-45deg)}

/* menú mobile: se abre como un rombo (el isotipo) que crece desde el botón */
.hc-menu{position:fixed;inset:0;z-index:60;display:flex;flex-direction:column;justify-content:space-between;visibility:hidden;overflow:hidden;transition:visibility 0s linear .6s}
.hc-menu.is-open{visibility:visible;transition:visibility 0s}
.hc-menu > nav,.hc-menu > .hc-menu-item{position:relative;z-index:1}
/* fondo: un rombo de esquinas redondeadas (como el isotipo) que crece desde el botón */
.hc-menu-bg{position:absolute;left:calc(100% - 42px);top:32px;width:290vmax;height:290vmax;background:#0A1E33;border-radius:6%;transform:translate(-50%,-50%) rotate(45deg) scale(0);transition:transform .6s cubic-bezier(.7,0,.2,1);z-index:0}
.hc-menu.is-open .hc-menu-bg{transform:translate(-50%,-50%) rotate(45deg) scale(1);transition:transform .8s cubic-bezier(.7,0,.2,1)}
/* el isotipo (copia exacta del logo) se expande desde el botón y se desvanece */
.hc-menu-iso{position:absolute;left:calc(100% - 42px);top:32px;transform:translate(-50%,-50%) scale(0);opacity:0;z-index:2;pointer-events:none}
.hc-menu.is-open .hc-menu-iso{animation:hcIso 1.05s cubic-bezier(.2,.7,.2,1) both}
@keyframes hcIso{0%{transform:translate(-50%,-50%) scale(.6);opacity:1}55%{opacity:.9}100%{transform:translate(-50%,-50%) scale(11);opacity:0}}
.hc-menu-item{opacity:0;transform:translateY(28px);transition:opacity .35s ease,transform .5s cubic-bezier(.2,.7,.2,1)}
.hc-menu.is-open .hc-menu-item{opacity:1;transform:none}
@media (min-width:901px){.hc-menu{display:none}}
.hc-menu-link{color:#F5F3EE;text-decoration:none;transition:color .25s ease,padding-left .35s cubic-bezier(.2,.7,.2,1)}
.hc-menu-link:hover{color:#E8C557;padding-left:10px}

/* botones y enlaces */
.hc-btn-gold{background:#DDB232;color:#0F2A44;text-decoration:none;transition:background .25s ease,transform .25s cubic-bezier(.2,.7,.2,1),box-shadow .25s ease}
.hc-btn-gold:hover{background:#E8C557;color:#0F2A44;transform:translateY(-2px);box-shadow:0 12px 26px -12px rgba(221,178,50,.75)}
.hc-btn-gold:active{transform:translateY(0) scale(.98);box-shadow:none}
.hc-btn-ghost{color:#F5F3EE;text-decoration:none;border:1px solid rgba(245,243,238,.5);transition:background .25s ease,color .25s ease,transform .25s cubic-bezier(.2,.7,.2,1)}
.hc-btn-ghost:hover{background:#F5F3EE;color:#0F2A44;transform:translateY(-2px)}
.hc-btn-ghost:active{transform:scale(.98)}
.hc-btn-navy{background:#0F2A44;color:#F5F3EE;text-decoration:none;border:0;transition:background .25s ease,transform .25s cubic-bezier(.2,.7,.2,1)}
.hc-btn-navy:hover{background:#2669A2;color:#FFFFFF;transform:translateY(-2px)}
.hc-arrow{display:inline-flex;align-items:center;gap:12px;text-decoration:none}
.hc-arrow svg{transition:transform .3s ease}
.hc-arrow:hover svg{transform:translateX(4px)}
.hc-arrow-light{color:#F5F3EE}.hc-arrow-light:hover{color:#E8C557}
.hc-arrow-dark{color:#0F2A44}.hc-arrow-dark:hover{color:#2669A2}

/* animaciones compartidas */
@supports (animation-timeline: view()){
.hc-reveal{animation:hcReveal both cubic-bezier(.2,.7,.2,1);animation-timeline:view();animation-range:entry 0% entry 45%}
}
@keyframes hcReveal{from{opacity:.001;transform:translateY(44px)}to{opacity:1;transform:none}}
.hc-in-a{animation:hcInA .5s cubic-bezier(.2,.7,.2,1) both}
.hc-in-b{animation:hcInB .5s cubic-bezier(.2,.7,.2,1) both}
@keyframes hcInA{from{opacity:.001;transform:translateX(-14px)}to{opacity:1;transform:none}}
@keyframes hcInB{from{opacity:.001;transform:translateX(-14px)}to{opacity:1;transform:none}}
.hc-swap-a{animation:hcSwapA .7s cubic-bezier(.2,.7,.2,1) both}
.hc-swap-b{animation:hcSwapB .7s cubic-bezier(.2,.7,.2,1) both}
@keyframes hcSwapA{from{opacity:.25;transform:scale(1.05)}to{opacity:1;transform:none}}
@keyframes hcSwapB{from{opacity:.25;transform:scale(1.05)}to{opacity:1;transform:none}}
.hc-txt-a{animation:hcTxtA .5s cubic-bezier(.2,.7,.2,1) both}
.hc-txt-b{animation:hcTxtB .5s cubic-bezier(.2,.7,.2,1) both}
@keyframes hcTxtA{from{opacity:.001;transform:translateY(10px)}to{opacity:1;transform:none}}
@keyframes hcTxtB{from{opacity:.001;transform:translateY(10px)}to{opacity:1;transform:none}}

/* hero */
/* hero a pantalla completa (con tope para pantallas muy altas) y contenido centrado en el alto visible bajo la navbar */
.hc-hero{height:100vh;height:100svh;min-height:680px;max-height:1080px;margin-top:-84px;display:flex;align-items:center}
.hc-hero-content{padding-top:84px;padding-bottom:150px;box-sizing:border-box}
.hc-h1{font-stretch:122%;font-size:clamp(40px,8.4vw,132px)}
.hc-kb{animation:hcKb 16s ease-out infinite alternate}
@keyframes hcKb{from{transform:scale(1.02)}to{transform:scale(1.1)}}
.hc-rise{animation:hcRise .9s cubic-bezier(.2,.7,.2,1) both}
.hc-d1{animation-delay:.1s}.hc-d2{animation-delay:.22s}.hc-d3{animation-delay:.34s}
@keyframes hcRise{from{opacity:.001;transform:translateY(18px)}to{opacity:1;transform:none}}
.hc-outline{color:transparent;-webkit-text-stroke:1.5px #F5F3EE;transition:color .6s ease,-webkit-text-stroke-color .6s ease}
/* el año cuenta de 2026 a 1999; al llegar se ilumina en dorado un instante */
.hc-year-done{animation:hcYearDone 1.4s ease both}
@keyframes hcYearDone{0%{-webkit-text-stroke-color:#DDB232;color:rgba(221,178,50,.25)}100%{-webkit-text-stroke-color:#F5F3EE;color:transparent}}
.hc-stage{position:absolute;z-index:2;bottom:28px;right:max(clamp(20px,4vw,40px),calc((100% - 1280px) / 2 + 40px));width:280px}
@media (max-width:700px){
.hc-hero{min-height:620px;margin-top:-64px}
.hc-hero-content{padding-top:64px;padding-bottom:140px}
.hc-h1{font-stretch:100%;font-size:clamp(36px,11vw,64px)}
.hc-outline{-webkit-text-stroke:1.2px #F5F3EE}
.hc-stage{bottom:24px;left:20px;right:20px;width:auto}
}

/* inicio: números + sectores + CTA */
.hc-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));row-gap:32px}
@media (max-width:900px){.hc-stats{grid-template-columns:repeat(2,minmax(0,1fr))}}
.hc-stat{padding-left:clamp(16px,2vw,28px);border-left:1px solid rgba(245,243,238,.18)}
.hc-cats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
@media (max-width:1000px){.hc-cats{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.hc-cats{grid-template-columns:minmax(0,1fr)}}
.hc-cat{position:relative;display:block;height:420px;overflow:hidden;background:#163756;color:#F5F3EE;text-decoration:none}
.hc-cat:hover{color:#F5F3EE}
.hc-cat img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.hc-cat:hover img{transform:scale(1.06)}
.hc-cat-go{transition:transform .35s ease,background .35s ease,color .35s ease}
.hc-cat:hover .hc-cat-go{transform:rotate(-45deg);background:#DDB232;color:#0F2A44}
@media (max-width:520px){.hc-cat{height:300px}}
.hc-cat-shade{background:linear-gradient(180deg,rgba(10,30,51,.35) 0%,rgba(10,30,51,0) 28%,rgba(10,30,51,.15) 50%,rgba(10,30,51,.95) 100%);transition:background .5s ease}
.hc-cat:hover .hc-cat-shade{background:linear-gradient(180deg,rgba(10,30,51,.45) 0%,rgba(10,30,51,.2) 30%,rgba(10,30,51,.55) 55%,rgba(10,30,51,.97) 100%)}
/* al pasar el mouse aparecen las obras del sector */
.hc-cat-more{max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:max-height .5s cubic-bezier(.2,.7,.2,1),opacity .4s ease,transform .5s cubic-bezier(.2,.7,.2,1),margin-top .4s ease}
.hc-cat:hover .hc-cat-more,.hc-cat:focus-visible .hc-cat-more{max-height:96px;opacity:1;transform:none;margin-top:10px}
@media (hover:none){.hc-cat-more{max-height:96px;opacity:1;transform:none;margin-top:10px}}
/* ritmo: las tarjetas pares bajan un escalón en desktop */
@media (min-width:1001px){.hc-cats{align-items:start}.hc-cat-off{margin-top:56px}}
.hc-cta{position:relative;overflow:hidden}
.hc-cta-mark{position:absolute;right:clamp(-50px,-2.5vw,-16px);top:50%;margin-top:-130px;opacity:.22;animation:hcFloat 7s ease-in-out infinite alternate;pointer-events:none}
@keyframes hcFloat{from{transform:translateY(-10px) rotate(-4deg)}to{transform:translateY(10px) rotate(4deg)}}

/* nosotros */
.hc-about{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:clamp(48px,6vw,96px);align-items:center}
.hc-about-media{height:600px}
@media (max-width:960px){.hc-about{grid-template-columns:minmax(0,1fr)}.hc-about-media{height:460px}}
@media (max-width:520px){.hc-about-media{height:360px}}
.hc-pillars{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 56px}
@media (max-width:900px){.hc-pillars{grid-template-columns:minmax(0,1fr)}}
/* diferenciales: tarjetas con ícono que se redibuja al pasar el mouse */
.hc-difs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
@media (max-width:1100px){.hc-difs{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.hc-difs{grid-template-columns:minmax(0,1fr)}}
.hc-dif{position:relative;display:flex;flex-direction:column;background:#FFFFFF;border:1px solid #E1DCD2;transition:transform .45s cubic-bezier(.2,.7,.2,1),box-shadow .45s ease,border-color .45s ease}
.hc-dif::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#DDB232;transform:scaleX(0);transform-origin:left;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.hc-dif:hover{transform:translateY(-6px);box-shadow:0 22px 44px -26px rgba(15,42,68,.45);border-color:#D6D0C4}
.hc-dif:hover::after{transform:scaleX(1)}
.hc-dif-ico{width:60px;height:60px;display:flex;align-items:center;justify-content:center;background:#0F2A44;color:#E8C557;transition:background .4s ease,color .4s ease,transform .5s cubic-bezier(.2,.7,.2,1)}
.hc-dif:hover .hc-dif-ico{background:#DDB232;color:#0F2A44;transform:rotate(-6deg)}
.hc-dif-ico path,.hc-dif-ico circle{stroke-dasharray:1;stroke-dashoffset:0}
.hc-dif:hover .hc-dif-ico path,.hc-dif:hover .hc-dif-ico circle{animation:hcDraw .9s cubic-bezier(.4,0,.2,1) both}
@keyframes hcDraw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
.hc-team{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}
@media (max-width:1000px){.hc-team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:460px){.hc-team{grid-template-columns:minmax(0,1fr)}}
.hc-person-ph{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.hc-person:hover .hc-person-ph{transform:translateY(-6px)}

/* trayectoria */
.hc-dot{position:absolute;top:50%;width:36px;height:36px;margin-left:-18px;margin-top:-18px;background:transparent;border:0;padding:0;cursor:pointer;display:flex;align-items:center;justify-content:center}
.hc-dot span{display:block;width:11px;height:11px;border-radius:50%;background:#F5F3EE;border:2px solid #0F2A44;transition:transform .25s ease,background .25s ease}
.hc-dot:hover span{transform:scale(1.3)}
.hc-tl-dark .hc-dot span{background:#0F2A44;border-color:#F5F3EE}
.hc-dot.is-on span,.hc-tl-dark .hc-dot.is-on span{background:#DDB232;border-color:#DDB232;transform:scale(1.5)}
.hc-dot.is-on::before{content:"";position:absolute;width:12px;height:12px;border-radius:50%;border:1.5px solid #DDB232;animation:hcPulse 2.2s ease-out infinite}
@keyframes hcPulse{from{transform:scale(1);opacity:.9}to{transform:scale(3.2);opacity:0}}
.hc-tl{display:flex;flex-wrap:wrap;gap:40px 72px;align-items:center}
.hc-tl-img{height:420px;transition:transform 1.2s cubic-bezier(.2,.7,.2,1)}
.hc-tl-media:hover .hc-tl-img{transform:scale(1.03)}
@media (max-width:700px){.hc-tl-img{height:260px}.hc-dot{width:24px;height:24px;margin-left:-12px;margin-top:-12px}}
.hc-step{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid currentColor;color:inherit;cursor:pointer;transition:background .25s ease,color .25s ease,transform .2s ease}
.hc-step:hover{background:#0F2A44;color:#F5F3EE;border-color:#0F2A44}
.hc-step:active{transform:scale(.94)}
.hc-step-light:hover{background:#F5F3EE;color:#0F2A44;border-color:#F5F3EE}

/* obras */
.hc-tab{position:relative;background:transparent;border:0;color:#B4C1D0;cursor:pointer;font-family:inherit;transition:color .25s ease}
.hc-tab::after{content:"";position:absolute;left:0;right:0;bottom:0;height:2px;background:#DDB232;transform:scaleX(0);transform-origin:left;transition:transform .45s cubic-bezier(.2,.7,.2,1)}
.hc-tab:hover{color:#F5F3EE}
.hc-tab:hover::after{transform:scaleX(.35)}
.hc-tab.is-on{color:#F5F3EE}
.hc-tab.is-on::after{transform:scaleX(1)}
.hc-tabs{display:flex;gap:4px 32px;overflow-x:auto;scrollbar-width:none}
.hc-tabs::-webkit-scrollbar{display:none}
@media (max-width:700px){
.hc-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;overflow:visible;border-bottom:0 !important}
.hc-tab{white-space:normal !important;text-align:left;padding:14px 14px !important;border:1px solid rgba(245,243,238,.2);line-height:1.3;transition:color .25s ease,background .3s ease,border-color .3s ease}
.hc-tab::after{display:none}
.hc-tab.is-on{background:#DDB232;border-color:#DDB232;color:#0F2A44}
.hc-tab.is-on span{color:#0F2A44 !important}
}
.hc-row{width:100%;background:transparent;border:0;border-top:1px solid rgba(245,243,238,.14);color:#F5F3EE;cursor:pointer;font-family:inherit;text-align:left;transition:background .25s ease}
.hc-row:hover,.hc-row.is-on{background:rgba(245,243,238,.04)}
.hc-row-name{transition:color .25s ease,transform .35s ease}
.hc-row.is-on .hc-row-name{color:#E8C557;transform:translateX(8px)}
.hc-row-open{opacity:0;transform:translateX(-6px);transition:opacity .3s ease,transform .3s ease}
.hc-row:hover .hc-row-open,.hc-row.is-on .hc-row-open{opacity:1;transform:none}
.hc-row-grid{display:grid;grid-template-columns:minmax(0,1fr) 100px 100px 28px;gap:16px;align-items:baseline}
.hc-thumb{display:none}
.hc-prev{display:block}
.hc-row-meta-m{display:none}
@media (max-width:860px){
.hc-prev{display:none}
.hc-thumb{display:block}
.hc-row-grid{grid-template-columns:72px minmax(0,1fr) 24px;align-items:center}
.hc-row-meta-d{display:none}
.hc-row-meta-m{display:flex}
.hc-row.is-on .hc-row-name{transform:none}
.hc-row-open{opacity:1;transform:none}
}
.hc-prev-img{transition:transform 1s cubic-bezier(.2,.7,.2,1)}
.hc-prev-media:hover .hc-prev-img{transform:scale(1.03)}

/* ficha de obra (modal) */
.hc-modal{position:fixed;inset:0;z-index:90;display:flex;align-items:center;justify-content:center;padding:24px;box-sizing:border-box;visibility:hidden;opacity:0;transition:opacity .35s ease,visibility 0s linear .35s}
.hc-modal.is-open{visibility:visible;opacity:1;transition:opacity .35s ease,visibility 0s}
.hc-modal-panel{position:relative;width:100%;max-width:1180px;height:min(720px,100%);overflow:hidden;background:#F5F3EE;color:#0F2A44;transform:translateY(48px) scale(.98);transition:transform .55s cubic-bezier(.2,.7,.2,1)}
.hc-modal.is-open .hc-modal-panel{transform:none}
/* la ficha mide siempre lo mismo: la foto llena su caja (cover), las miniaturas tienen alto fijo y el texto scrollea dentro de su columna */
.hc-modal-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(0,1fr);grid-template-rows:minmax(0,1fr);height:100%}
.hc-modal-media{display:flex;flex-direction:column;min-height:0;height:100%}
.hc-modal-imgwrap{position:relative;overflow:hidden;flex:1 1 auto;min-height:0}
.hc-modal-img{position:absolute;inset:0;width:100%;height:100%}
.hc-modal-thumbs{flex:0 0 80px;height:80px;box-sizing:border-box}
.hc-modal-info{height:100%;overflow-y:auto;box-sizing:border-box}
@media (max-width:900px){.hc-modal{padding:0}.hc-modal-panel{height:100%}.hc-modal-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:360px minmax(0,1fr)}}
.hc-gthumb{flex:0 0 auto;width:76px;height:56px;padding:0;border:2px solid transparent;background:transparent;cursor:pointer;opacity:.6;transition:opacity .25s ease,border-color .25s ease,transform .25s ease}
.hc-gthumb:hover{opacity:1;transform:translateY(-2px)}
.hc-gthumb.is-on{opacity:1;border-color:#DDB232}
.hc-close{width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:#0F2A44;color:#F5F3EE;border:0;cursor:pointer;transition:background .25s ease,transform .35s cubic-bezier(.2,.7,.2,1)}
.hc-close:hover{background:#2669A2;transform:rotate(90deg)}
.hc-badge{display:inline-flex;align-items:center;padding:4px 8px;font-size:11px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;background:rgba(221,178,50,.16);color:#E8C557}

/* comitentes */
/* comitentes: dos cintas de logos en sentidos opuestos, se frenan al pasar el mouse */
.hc-mq{overflow:hidden;-webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
.hc-mq-track{display:flex;width:max-content;padding:8px 0;animation:hcMq 46s linear infinite}
.hc-mq-rev .hc-mq-track{animation-direction:reverse;animation-duration:52s}
.hc-mq:hover .hc-mq-track{animation-play-state:paused}
@keyframes hcMq{from{transform:translateX(0)}to{transform:translateX(-50%)}}
.hc-ltile{flex:0 0 auto;width:230px;height:124px;margin-right:16px;display:flex;align-items:center;justify-content:center;padding:18px;box-sizing:border-box;background:#FFFFFF;border:1px solid #E1DCD2;transition:transform .4s cubic-bezier(.2,.7,.2,1),border-color .4s ease,box-shadow .4s ease}
.hc-ltile:hover{transform:translateY(-4px);border-color:#DDB232;box-shadow:0 16px 32px -20px rgba(15,42,68,.4)}
.hc-ltile img{max-width:150px;max-height:68px;width:auto;height:auto;opacity:.82;transition:opacity .35s ease,transform .35s ease}
.hc-ltile:hover img{opacity:1;transform:scale(1.05)}
.hc-ltile-txt{font-stretch:112%;font-weight:700;font-size:14px;line-height:1.25;letter-spacing:.06em;text-transform:uppercase;text-align:center;color:#0F2A44;opacity:.82;transition:opacity .35s ease}
.hc-ltile:hover .hc-ltile-txt{opacity:1}
@media (max-width:600px){.hc-ltile{width:172px;height:100px;margin-right:12px}.hc-ltile img{max-width:118px;max-height:54px}}

/* contacto */
/* formulario sobre tarjeta azul: campos con borde fino, foco dorado */
.hc-form{background:#0F2A44;color:#F5F3EE;box-shadow:0 30px 60px -40px rgba(10,30,51,.6)}
.hc-field{width:100%;box-sizing:border-box;min-height:50px;padding:13px 14px;border:1px solid rgba(245,243,238,.18);background:rgba(245,243,238,.04);color:#F5F3EE;font:inherit;font-size:16px;border-radius:2px;transition:border-color .25s ease,box-shadow .25s ease,background .25s ease}
.hc-field::placeholder{color:#7F8FA3}
.hc-field:hover{border-color:rgba(245,243,238,.38)}
.hc-field:focus{outline:none;border-color:#DDB232;background:rgba(245,243,238,.07);box-shadow:0 0 0 3px rgba(221,178,50,.2)}
select.hc-field{appearance:none;-webkit-appearance:none;padding-right:44px;background-image:linear-gradient(45deg,transparent 50%,#E8C557 50%),linear-gradient(135deg,#E8C557 50%,transparent 50%);background-position:calc(100% - 22px) 50%,calc(100% - 16px) 50%;background-size:6px 6px,6px 6px;background-repeat:no-repeat}
select.hc-field option{color:#0F2A44;background:#FFFFFF}
.hc-fw label{color:#B4C1D0;transition:color .25s ease,transform .25s ease;transform-origin:left}
.hc-fw:focus-within label{color:#E8C557;transform:translateX(2px)}
.hc-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
@media (max-width:640px){.hc-form-grid{grid-template-columns:minmax(0,1fr)}}
.hc-full{grid-column:1 / -1}

/* volver arriba: aparece después de bajar, se oculta con el menú o la ficha abiertos */
.hc-top{position:fixed;right:calc(20px + env(safe-area-inset-right, 0px));bottom:calc(20px + env(safe-area-inset-bottom, 0px));z-index:55;width:52px;height:52px;display:flex;align-items:center;justify-content:center;background:#0F2A44;color:#E8C557;border:1px solid rgba(221,178,50,.45);text-decoration:none;opacity:0;visibility:hidden;transform:translateY(16px) rotate(45deg) scale(.8);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.2,1),visibility 0s linear .35s,background .25s ease,color .25s ease}
.hc-top svg{transform:rotate(-45deg);transition:transform .35s ease}
.hc-top.is-on{opacity:1;visibility:visible;transform:translateY(0) rotate(45deg) scale(1);transition:opacity .35s ease,transform .45s cubic-bezier(.2,.7,.2,1),visibility 0s,background .25s ease,color .25s ease}
.hc-top:hover{background:#DDB232;color:#0F2A44}
.hc-top:hover svg{transform:rotate(-45deg) translateY(-3px)}
.hc-foot a{color:#B4C1D0;text-decoration:none;transition:color .25s ease}
.hc-foot a:hover{color:#E8C557}
.hc-giant{color:transparent;-webkit-text-stroke:1px rgba(245,243,238,.16);transition:color .8s ease,-webkit-text-stroke-color .8s ease}
.hc-giant:hover{color:rgba(221,178,50,.08);-webkit-text-stroke-color:rgba(221,178,50,.55)}

@media (prefers-reduced-motion: reduce){
html{scroll-behavior:auto}
.hc-kb,.hc-rise,.hc-reveal,.hc-menu.is-open .hc-menu-iso,.hc-cta-mark,.hc-year-done,.hc-mq-track,.hc-dif:hover .hc-dif-ico path,.hc-dif:hover .hc-dif-ico circle,.hc-in-a,.hc-in-b,.hc-swap-a,.hc-swap-b,.hc-txt-a,.hc-txt-b,.hc-dot.is-on::before,.hc-logo-link:hover::after{animation:none}
.hc-menu,.hc-menu.is-open,.hc-menu-item,.hc-menu-bg,.hc-menu.is-open .hc-menu-bg,.hc-modal,.hc-modal.is-open,.hc-modal-panel{transition:none}
}
