.hpgisa-showcase{font-family:inherit}.hpgisa-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:20px}.hpgisa-eyebrow{font-size:12px;font-weight:700;opacity:.65}.hpgisa-heading h2{margin:5px 0;font-size:32px}.hpgisa-heading p{margin:0;opacity:.7}.hpgisa-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.hpgisa-card{background:#fff;border:1px solid #e8e8e8;border-radius:18px;overflow:hidden;box-shadow:0 8px 25px rgba(0,0,0,.06)}.hpgisa-card__link{display:block;color:inherit;text-decoration:none}.hpgisa-card__image{aspect-ratio:16/10;background:#f4f4f4;overflow:hidden}.hpgisa-card__image img{width:100%;height:100%;object-fit:cover;display:block}.hpgisa-card__placeholder{height:100%;display:grid;place-items:center;font-size:42px;font-weight:800;color:#bbb}.hpgisa-card__body{padding:16px}.hpgisa-card__body h3{margin:0 0 7px;font-size:19px}.hpgisa-card__body p{margin:0 0 10px;opacity:.65;font-size:13px}.hpgisa-card__cta{font-weight:700}.hpgisa-map-controls{display:flex;justify-content:flex-end;align-items:end;gap:14px;margin:18px 0}.hpgisa-map-controls label{display:flex;align-items:center;gap:8px;font-weight:700}.hpgisa-area-select{min-width:250px;border:1px solid #ddd;border-radius:12px;padding:12px 14px;background:#fff;font:inherit}.hpgisa-map-toggle{border:0!important;border-radius:12px!important;padding:13px 20px!important;background:#162033!important;color:#fff!important;font-weight:800!important;font-size:15px!important;cursor:pointer;box-shadow:0 8px 20px rgba(22,32,51,.18)}.hpgisa-map-toggle:hover{transform:translateY(-1px)}.hpgisa-map-wrap{margin-top:20px;background:#eef7f7;border-radius:24px;padding:18px;overflow:hidden}.hpgisa-map-legend{display:flex;justify-content:flex-start;gap:18px;direction:rtl;margin:0 0 10px;font-size:13px;font-weight:700}.hpgisa-dot{display:inline-block;width:11px;height:11px;border-radius:50%;margin-left:5px;vertical-align:-1px}.hpgisa-dot--blue{background:#2878e8}.hpgisa-dot--yellow{background:#f2b300}.hpgisa-dot--green{background:#22a447}.hpgisa-map{position:relative;width:100%;height:min(720px,72vw);min-height:480px;overflow:hidden;border-radius:18px;background:#dff3f3;touch-action:none;cursor:grab}.hpgisa-map.is-dragging{cursor:grabbing}.hpgisa-map-stage{position:absolute;left:50%;top:50%;width:483px;height:1022px;transform-origin:50% 50%;will-change:transform}.hpgisa-map-image{position:absolute;inset:0;width:483px;height:1022px;object-fit:contain;user-select:none;pointer-events:none}.hpgisa-map-marker{position:absolute;width:28px;height:28px;margin:-28px 0 0 -14px;border:3px solid #fff;border-radius:50% 50% 50% 0;transform:rotate(-45deg);box-shadow:0 5px 12px rgba(0,0,0,.28);cursor:pointer;z-index:5}.hpgisa-map-marker span{display:block;width:100%;height:100%;border-radius:50%;background:inherit}.hpgisa-map-marker--blue{background:#2878e8}.hpgisa-map-marker--yellow{background:#f2b300}.hpgisa-map-marker:hover{filter:brightness(1.05);transform:rotate(-45deg) scale(1.08)}.hpgisa-map-popup{position:absolute;z-index:20;width:310px;max-width:calc(100% - 24px);background:#fff;border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.22);overflow:hidden}.hpgisa-map-popup__close{position:absolute;left:10px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#fff;color:#162033;font-size:20px;cursor:pointer;box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:2}.hpgisa-map-popup__image{width:100%;height:170px;object-fit:cover;display:block}.hpgisa-map-popup__body{padding:15px}.hpgisa-map-popup__title{font-size:19px;font-weight:800;margin:0 0 7px}.hpgisa-map-popup__address{font-size:13px;color:#667085;margin:0 0 14px}.hpgisa-map-popup__link{display:block;text-align:center;background:#162033;color:#fff!important;text-decoration:none;border-radius:11px;padding:12px;font-weight:800}.hpgisa-map-popup[hidden]{display:none!important}.hpgisa-section{margin:36px 0}.hpgisa-more{text-align:center;margin-top:25px}.hpgisa-more a{font-weight:800}@media(max-width:1000px){.hpgisa-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hpgisa-map{height:70vw;min-height:420px}}@media(max-width:600px){.hpgisa-grid{grid-template-columns:1fr}.hpgisa-heading h2{font-size:26px}.hpgisa-map-controls{flex-direction:column;align-items:stretch}.hpgisa-map-controls label{justify-content:space-between}.hpgisa-area-select{flex:1;min-width:0}.hpgisa-map{height:115vw;min-height:430px}.hpgisa-map-popup{width:280px}}

.hpgisa-map-empty{position:absolute;left:50%;top:18px;transform:translateX(-50%);z-index:20;background:#fff;padding:10px 16px;border-radius:10px;box-shadow:0 8px 25px rgba(0,0,0,.12);font-weight:700;color:#555}.hpgisa-map-marker{z-index:10}

/* v3.0.2 layout and marker fixes */
.hpgisa-regions .hpgisa-heading{justify-content:center;text-align:center}.hpgisa-regions .hpgisa-heading>div{width:100%;text-align:center}.hpgisa-regions .hpgisa-map-controls{justify-content:flex-start;direction:rtl}.hpgisa-map-marker{width:34px;height:34px;margin:-34px 0 0 -17px;border-width:3px;box-shadow:0 6px 16px rgba(0,0,0,.35);z-index:50;opacity:1!important}.hpgisa-map-marker span{width:10px;height:10px;position:absolute;left:50%;top:50%;transform:translate(-50%,-50%) rotate(45deg);background:#fff!important;border-radius:50%;box-shadow:0 1px 3px rgba(0,0,0,.2)}.hpgisa-map-marker--blue{background:#1769e8!important}.hpgisa-map-marker--yellow{background:#f5b800!important}.hpgisa-map-marker--green{background:#22a447!important}

/* v3.0.3 popup interaction fix */
.hpgisa-map-popup{pointer-events:auto!important;z-index:999!important}.hpgisa-map-popup__link{cursor:pointer!important}.hpgisa-map-marker{pointer-events:auto!important;touch-action:manipulation!important}

/* v3.2.0 — 3D entrance animation */
.hpgisa-card{perspective:1200px;transform-style:preserve-3d;transition:transform .18s ease,box-shadow .18s ease}
.hpgisa-card--entering{animation:hpgisaCardEnter .52s cubic-bezier(.2,.8,.2,1) forwards;pointer-events:none}
.hpgisa-map-popup.hpgisa-flip-enter{animation:hpgisaPopupEnter .52s cubic-bezier(.2,.8,.2,1) forwards;transform-origin:50% 50%;pointer-events:none}
@keyframes hpgisaCardEnter{0%{transform:perspective(1200px) rotateY(0deg) scale(1);opacity:1}55%{transform:perspective(1200px) rotateY(180deg) scale(.96);opacity:.92}100%{transform:perspective(1200px) rotateY(360deg) scale(.82);opacity:0}}
@keyframes hpgisaPopupEnter{0%{transform:rotateY(0deg) scale(1);opacity:1}55%{transform:rotateY(180deg) scale(.96);opacity:.92}100%{transform:rotateY(360deg) scale(.78);opacity:0}}
@media (prefers-reduced-motion:reduce){.hpgisa-card--entering,.hpgisa-map-popup.hpgisa-flip-enter{animation:none;opacity:.65}}
