/* Grupo Hastial - Proyectos y Soluciones */
.ghp-projects,.ghp-single{font-family:var(--ghp-font);color:var(--ghp-text);box-sizing:border-box}.ghp-projects *,.ghp-single *{box-sizing:border-box}
.ghp-filters{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin:0 0 34px;border-bottom:1px solid #e9e9e9}.ghp-filter{position:relative;border:0;background:transparent;padding:0 0 13px;color:var(--ghp-muted);font:500 12px/1.2 var(--ghp-font);letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.ghp-filter:after{content:"";position:absolute;left:0;bottom:-1px;width:100%;height:2px;background:var(--ghp-accent);transform:scaleX(0);transform-origin:left;transition:transform .25s ease}.ghp-filter:hover,.ghp-filter.is-active{color:var(--ghp-text)}.ghp-filter.is-active:after{transform:scaleX(1)}
.ghp-grid{display:grid;grid-template-columns:repeat(var(--ghp-columns),minmax(0,1fr));gap:18px}.ghp-card{min-width:0;aspect-ratio:1/1.06;overflow:hidden;background:#111;position:relative}.ghp-card[hidden]{display:none!important}.ghp-card-link{position:absolute;inset:0;display:block;color:#fff!important;text-decoration:none!important;overflow:hidden}.ghp-card-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;display:block!important;transition:transform .55s cubic-bezier(.2,.7,.2,1)}.ghp-card-overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(0,0,0,.66) 0%,rgba(0,0,0,.16) 34%,rgba(0,0,0,0) 60%);transition:background .35s ease}.ghp-card-content{position:absolute;left:0;right:0;bottom:0;display:flex;flex-direction:column;padding:22px 24px;color:#fff}.ghp-card-category{display:block;color:var(--ghp-accent);font-size:10px;font-weight:700;line-height:1.2;text-transform:uppercase;letter-spacing:.04em;margin:0 0 4px}.ghp-card-title{display:block;font-size:var(--ghp-card-title);font-weight:600;line-height:1.16;color:#fff}.ghp-card-extra{display:grid;grid-template-rows:1fr;opacity:0;visibility:hidden;max-height:0;overflow:hidden;transition:opacity .25s ease,max-height .35s ease,transform .35s ease,visibility .25s ease;transform:translateY(10px)}.ghp-card-description{display:block;margin-top:8px;font-size:var(--ghp-card-text);font-weight:300;line-height:1.35;color:#fff}.ghp-card-cta{display:block;margin-top:14px;color:var(--ghp-accent);font-size:10px;font-weight:700;letter-spacing:.02em}.ghp-card-cta span{font-size:16px;margin-left:4px;vertical-align:-1px}.ghp-card:hover .ghp-card-image,.ghp-card:focus-within .ghp-card-image{transform:scale(1.025)}.ghp-card:hover .ghp-card-overlay,.ghp-card:focus-within .ghp-card-overlay{background:linear-gradient(to top,rgba(0,0,0,.90) 0%,rgba(0,0,0,.62) 34%,rgba(0,0,0,.16) 66%,rgba(0,0,0,0) 84%)}.ghp-card:hover .ghp-card-extra,.ghp-card:focus-within .ghp-card-extra{opacity:1;visibility:visible;max-height:180px;transform:translateY(0)}.ghp-no-results,.ghp-empty{padding:30px 0;color:var(--ghp-muted);font:400 14px/1.5 var(--ghp-font)}

/* Single project */
.ghp-single-wrap{width:100%;margin:0 auto;padding:48px 0 60px}.ghp-single{width:min(1360px,calc(100% - 40px));margin:0 auto;display:grid;grid-template-columns:minmax(340px,.92fr) minmax(0,1.35fr);gap:58px;align-items:start}.ghp-single-info{min-height:620px;display:flex;flex-direction:column}.ghp-single-eyebrow{position:relative;font-size:10px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin:8px 0 10px;padding-top:12px}.ghp-single-eyebrow:before{content:"";position:absolute;top:0;left:0;width:19px;height:1px;background:var(--ghp-accent)}.ghp-single-title{font-size:var(--ghp-single-title);font-weight:500;line-height:1.15;margin:0 0 22px;color:var(--ghp-text)}.ghp-single-description{font-size:var(--ghp-single-text);font-weight:300;line-height:1.72;color:#3f3f3f}.ghp-single-description p:first-child{margin-top:0}.ghp-facts{margin:20px 0 32px}.ghp-fact{display:grid;grid-template-columns:32px 150px 1fr;align-items:center;gap:10px;min-height:58px;border-bottom:1px solid #dadada}.ghp-fact:first-child{border-top:1px solid #dadada}.ghp-fact-icon{width:24px;height:24px;color:var(--ghp-accent)}.ghp-fact-icon svg{display:block;width:24px;height:24px;stroke:currentColor;fill:none;stroke-width:1.4}.ghp-fact-label{font-size:12px;font-weight:700;color:#171717}.ghp-fact-value{font-size:12px;font-weight:300;color:#202020}.ghp-single-cta{margin-top:auto;align-self:flex-start;display:inline-flex;align-items:center;gap:18px;background:var(--ghp-accent);color:#0a0a0a!important;text-decoration:none!important;padding:14px 18px;font-size:11px;font-weight:700;line-height:1;text-transform:uppercase;transition:background .25s ease,color .25s ease}.ghp-single-cta:hover{background:#111;color:#fff!important}.ghp-single-cta .arrow{font-size:20px;line-height:.8}.ghp-gallery{min-width:0}.ghp-gallery-main{width:100%;aspect-ratio:1.17/1;overflow:hidden;background:#eee}.ghp-gallery-main img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;transition:opacity .15s ease}.ghp-gallery-main img.is-changing{opacity:.45}.ghp-gallery-thumbs{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:9px;margin-top:12px}.ghp-gallery-thumb{position:relative!important;display:block!important;width:100%!important;aspect-ratio:1/1!important;overflow:hidden!important;cursor:pointer!important;padding:0!important;margin:0!important;border:1px solid var(--ghp-accent)!important;border-radius:0!important;background:transparent!important;outline:none!important;box-shadow:none!important;min-width:0!important;min-height:0!important;line-height:0!important;-webkit-appearance:none!important;appearance:none!important}.ghp-gallery-thumb::before,.ghp-gallery-thumb::after{content:none!important;display:none!important}.ghp-gallery-thumb:hover,.ghp-gallery-thumb:focus,.ghp-gallery-thumb:focus-visible,.ghp-gallery-thumb.is-active{border-color:var(--ghp-accent)!important;outline:none!important;box-shadow:inset 0 0 0 1px var(--ghp-accent)!important;background:transparent!important}.ghp-gallery-thumb img{position:absolute!important;inset:0!important;display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;margin:0!important;padding:0!important;border:0!important;object-fit:cover!important;object-position:center!important;opacity:.58!important;transition:opacity .28s ease,transform .35s ease!important}.ghp-gallery-thumb:hover img,.ghp-gallery-thumb:focus img,.ghp-gallery-thumb:focus-visible img,.ghp-gallery-thumb.is-active img{opacity:1!important}.ghp-gallery-thumb:hover img,.ghp-gallery-thumb:focus-visible img{transform:scale(1.025)!important}.ghp-gallery-placeholder{width:100%;aspect-ratio:1.17/1;background:#f1f1f1;display:grid;place-items:center;color:#888;font-size:13px}

@media(max-width:1024px){.ghp-grid{grid-template-columns:repeat(min(var(--ghp-columns),2),minmax(0,1fr))}.ghp-single{grid-template-columns:1fr 1.12fr;gap:32px}.ghp-single-info{min-height:540px}.ghp-fact{grid-template-columns:28px 130px 1fr}.ghp-single-wrap{padding-top:34px}}
@media(max-width:767px){.ghp-filters{gap:16px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:1px}.ghp-filter{white-space:nowrap}.ghp-grid{grid-template-columns:1fr;gap:14px}.ghp-card{aspect-ratio:1/1}.ghp-card-content{padding:20px}.ghp-card:hover .ghp-card-image{transform:none}.ghp-single-wrap{padding:22px 0 40px}.ghp-single{width:min(100% - 28px,1360px);grid-template-columns:1fr;gap:30px}.ghp-single-info{min-height:0}.ghp-single-title{margin-bottom:16px}.ghp-fact{grid-template-columns:28px 118px 1fr;min-height:54px}.ghp-single-cta{margin-top:8px}.ghp-gallery{order:-1}.ghp-gallery-main{aspect-ratio:1/1.1}.ghp-gallery-thumbs{grid-template-columns:repeat(5,1fr);gap:6px}.ghp-gallery-thumbs .ghp-gallery-thumb:nth-child(n+6){display:none}}
