/* V124 — preserve V123 3D gallery design; compact vertical sizing for full visibility at 100% zoom */
.hp-gallery-section{position:relative;isolation:isolate;overflow:hidden;padding:24px max(18px,calc((100vw - 1500px)/2)) 22px!important;background:radial-gradient(ellipse at 4% 2%,rgba(71,160,255,.19),transparent 26%),radial-gradient(ellipse at 98% 12%,rgba(111,155,255,.16),transparent 25%),linear-gradient(180deg,#ffffff 0%,#f6faff 48%,#eaf5ff 100%)!important}
.hp-gallery-section:before{content:"";position:absolute;z-index:-1;left:-155px;top:-185px;width:330px;height:330px;border-radius:50%;background:linear-gradient(135deg,rgba(31,139,255,.22),rgba(31,139,255,0));pointer-events:none}
.hp-gallery-section:after{content:"";position:absolute;z-index:-1;right:-135px;bottom:-185px;width:360px;height:360px;border-radius:50%;background:linear-gradient(135deg,rgba(72,160,255,.03),rgba(39,137,255,.22));pointer-events:none}
.hp-gallery-section .hp-section-head{position:relative;z-index:2;text-align:center;margin:0 auto 14px!important;max-width:1000px}
.hp-gallery-section .hp-gallery-eyebrow{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(105deg,#0875ff,#5146e5)!important;color:#fff!important;padding:7px 22px!important;border-radius:999px!important;font-size:12px!important;font-weight:900;letter-spacing:.7px;box-shadow:0 8px 24px rgba(27,104,227,.22)}
.hp-gallery-section .hp-section-head h2{font-size:clamp(27px,2.65vw,39px)!important;line-height:1.1!important;letter-spacing:-.7px;color:#102957!important;margin:10px 0 6px!important;font-weight:900}
.hp-gallery-section .hp-section-head h2 span{color:#0875ef!important}
.hp-gallery-section .hp-underline{width:70px!important;height:4px!important;border-radius:10px;background:linear-gradient(90deg,#0875ff,#5146e5)!important;margin:14px auto!important}
.hp-gallery-section .hp-gallery-intro{max-width:760px;margin:0 auto!important;color:#536b8e!important;font-size:13px!important;line-height:1.45}
.hp-gallery-section .hp-gallery-filters{position:relative;z-index:4;display:flex!important;justify-content:center!important;align-items:center;gap:8px!important;flex-wrap:wrap!important;margin:16px auto 16px!important;padding:0 6px}
.hp-gallery-section .hp-gallery-filter{appearance:none!important;border:1px solid #e6eefb!important;border-radius:999px!important;background:rgba(255,255,255,.94)!important;color:#23436f!important;padding:9px 16px!important;font-size:12px!important;font-weight:800!important;line-height:1.1!important;box-shadow:0 7px 22px rgba(28,74,137,.10)!important;cursor:pointer!important;white-space:nowrap;transition:transform .22s,background .22s,color .22s,box-shadow .22s!important}
.hp-gallery-section .hp-gallery-filter:hover{transform:translateY(-2px)!important;box-shadow:0 12px 25px rgba(28,74,137,.15)!important}
.hp-gallery-section .hp-gallery-filter.active{background:linear-gradient(110deg,#0875ff,#5146e5)!important;color:#fff!important;border-color:transparent!important;box-shadow:0 10px 25px rgba(18,99,221,.25)!important}
.hp-gallery-section .hp-gallery-stage{height:clamp(320px,25vw,380px)!important;max-width:1550px;width:100%;margin:0 auto!important;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;perspective:1500px;border-radius:30px!important;background:linear-gradient(180deg,rgba(255,255,255,.18),rgba(185,220,255,.22))!important;isolation:isolate;box-shadow:inset 0 -35px 55px rgba(54,143,239,.07)}
.hp-gallery-section .hp-gallery-stage:before{content:"";position:absolute;left:-4%;right:-4%;bottom:4%;height:30%;background:linear-gradient(180deg,rgba(81,157,244,0),rgba(106,177,255,.22));filter:blur(16px);z-index:0;pointer-events:none}
.hp-gallery-section .hp-gallery-card{position:absolute!important;top:49%!important;left:50%!important;width:min(22vw,260px)!important;max-width:260px;display:block;transform:translate(-50%,-50%) translateX(calc(var(--gpos,0) * min(22vw,260px))) scale(calc(1 - min(.23,var(--gabs,0) * .115))) rotateY(calc(var(--gpos,0) * -10deg))!important;transform-origin:center center!important;opacity:calc(1 - min(.62,var(--gabs,0) * .29))!important;z-index:calc(30 - var(--gabs,0))!important;transition:transform .55s cubic-bezier(.2,.75,.25,1),opacity .45s ease,filter .45s ease!important;overflow:hidden!important;border:2px solid rgba(255,255,255,.94)!important;border-radius:19px!important;background:#fff!important;box-shadow:0 20px 42px rgba(20,53,101,.22),0 0 0 1px rgba(51,128,226,.10)!important;pointer-events:none}
.hp-gallery-section .hp-gallery-card.is-center{opacity:1!important;filter:none!important;z-index:50!important;border-color:#fff!important;box-shadow:0 24px 50px rgba(12,56,121,.28),0 0 0 3px rgba(74,170,255,.24)!important}
.hp-gallery-section .hp-gallery-image{aspect-ratio:4/5!important;padding:0!important;background:#fff!important;overflow:hidden!important;display:flex;align-items:center;justify-content:center}
.hp-gallery-section .hp-gallery-image img{display:block;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#fff!important}
.hp-gallery-section .hp-gallery-caption{padding:10px 12px 12px!important;min-height:56px;background:linear-gradient(180deg,#fff,#f5f9ff)!important;display:flex;flex-direction:column;gap:4px}
.hp-gallery-section .hp-gallery-caption strong{font-size:13px!important;font-weight:900;color:#12366e!important;line-height:1.3}
.hp-gallery-section .hp-gallery-caption span{font-size:11px!important;line-height:1.45;color:#687b98!important}
.hp-gallery-section .hp-gallery-arrow{position:absolute!important;top:50%!important;transform:translateY(-50%)!important;width:56px!important;height:56px!important;border:1px solid #dceaff!important;border-radius:50%!important;background:rgba(255,255,255,.97)!important;color:#0875e9!important;font-size:36px!important;line-height:1!important;display:grid!important;place-items:center!important;z-index:80!important;cursor:pointer!important;box-shadow:0 10px 28px rgba(25,71,137,.22)!important;transition:transform .2s,box-shadow .2s!important}
.hp-gallery-section .hp-gallery-arrow:hover{transform:translateY(-50%) scale(1.07)!important;box-shadow:0 14px 32px rgba(25,71,137,.28)!important}
.hp-gallery-section .hp-gallery-prev{left:18px!important}.hp-gallery-section .hp-gallery-next{right:18px!important}
.hp-gallery-section .hp-gallery-decor{position:absolute;color:#66a9ff;opacity:.24;font-weight:900;pointer-events:none;z-index:0}.hp-gallery-section .hp-gallery-decor-left{left:4%;top:12%;font-size:30px;letter-spacing:8px;line-height:1.1}.hp-gallery-section .hp-gallery-decor-right{right:5%;top:4%;font-size:110px}
.hp-gallery-section .hp-gallery-pagination{display:flex!important;justify-content:center;align-items:center;gap:12px!important;margin:12px auto 0!important;position:relative;z-index:4}
.hp-gallery-section .hp-gallery-dot{width:13px!important;height:13px!important;border:0!important;border-radius:50%!important;background:#c6d4e6!important;padding:0!important;cursor:pointer!important;transition:all .22s!important}
.hp-gallery-section .hp-gallery-dot.active{width:29px!important;border-radius:999px!important;background:#0875ff!important}
.hp-gallery-section .hp-gallery-hint{display:table!important;margin:10px auto 0!important;padding:9px 18px!important;border-radius:999px!important;background:rgba(218,236,255,.88)!important;color:#1454a4!important;font-size:13px!important;font-weight:800!important;box-shadow:0 5px 18px rgba(35,109,202,.07)}
.hp-gallery-section .hp-gallery-hint span{margin-right:8px;color:#0875ff}
.hp-gallery-section .hp-gallery-empty{max-width:900px;margin:25px auto;padding:40px!important;background:rgba(255,255,255,.85)!important;border:1px dashed #c7d9f0;border-radius:20px!important;text-align:center;color:#627795}
/* Keep adjacent homepage sections visually separated and undisturbed. */
.hp-gallery-section + .hp-section{position:relative;padding-top:36px!important}
@media(max-width:1050px){.hp-gallery-section .hp-gallery-stage{height:340px!important}.hp-gallery-section .hp-gallery-card{width:min(27vw,250px)!important;transform:translate(-50%,-50%) translateX(calc(var(--gpos,0) * min(27vw,250px))) scale(calc(1 - min(.23,var(--gabs,0) * .115))) rotateY(calc(var(--gpos,0) * -8deg))!important}}
@media(min-width:701px) and (max-height:850px){.hp-gallery-section{padding-top:18px!important;padding-bottom:16px!important}.hp-gallery-section .hp-section-head{margin-bottom:10px!important}.hp-gallery-section .hp-gallery-eyebrow{padding:6px 18px!important;font-size:11px!important}.hp-gallery-section .hp-section-head h2{font-size:clamp(25px,2.25vw,34px)!important;margin:8px 0 5px!important}.hp-gallery-section .hp-underline{margin:6px auto!important}.hp-gallery-section .hp-gallery-intro{font-size:12px!important}.hp-gallery-section .hp-gallery-filters{margin:12px auto!important;gap:7px!important}.hp-gallery-section .hp-gallery-filter{padding:8px 13px!important;font-size:11px!important}.hp-gallery-section .hp-gallery-stage{height:clamp(290px,39vh,340px)!important}.hp-gallery-section .hp-gallery-card{width:min(20vw,235px)!important;transform:translate(-50%,-50%) translateX(calc(var(--gpos,0) * min(20vw,235px))) scale(calc(1 - min(.23,var(--gabs,0) * .115))) rotateY(calc(var(--gpos,0) * -10deg))!important}.hp-gallery-section .hp-gallery-pagination{margin-top:9px!important}.hp-gallery-section .hp-gallery-dot{width:10px!important;height:10px!important}.hp-gallery-section .hp-gallery-dot.active{width:23px!important}.hp-gallery-section .hp-gallery-hint{margin-top:7px!important;padding:7px 14px!important;font-size:11px!important}.hp-gallery-section + .hp-section{padding-top:24px!important}}
@media(max-width:700px){.hp-gallery-section{padding:42px 12px 38px!important}.hp-gallery-section .hp-section-head{margin-bottom:18px!important}.hp-gallery-section .hp-section-head h2{font-size:28px!important;line-height:1.2!important}.hp-gallery-section .hp-gallery-intro{font-size:12px!important;max-width:340px}.hp-gallery-section .hp-gallery-filters{justify-content:flex-start!important;flex-wrap:nowrap!important;overflow-x:auto;padding:5px 2px 12px;margin:20px -1px 20px!important;scrollbar-width:thin}.hp-gallery-section .hp-gallery-filter{flex:0 0 auto;padding:10px 14px!important;font-size:12px!important}.hp-gallery-section .hp-gallery-stage{height:350px!important;margin:0 -4px!important;border-radius:18px!important}.hp-gallery-section .hp-gallery-card{width:190px!important;transform:translate(-50%,-50%) translateX(calc(var(--gpos,0) * 116px)) scale(calc(1 - min(.23,var(--gabs,0) * .115))) rotateY(calc(var(--gpos,0) * -7deg))!important;border-radius:14px!important}.hp-gallery-section .hp-gallery-image{aspect-ratio:4/5!important}.hp-gallery-section .hp-gallery-caption{padding:8px 9px!important;min-height:48px}.hp-gallery-section .hp-gallery-caption strong{font-size:10px!important}.hp-gallery-section .hp-gallery-caption span{font-size:9px!important}.hp-gallery-section .hp-gallery-arrow{width:38px!important;height:38px!important;font-size:25px!important}.hp-gallery-section .hp-gallery-prev{left:4px!important}.hp-gallery-section .hp-gallery-next{right:4px!important}.hp-gallery-section .hp-gallery-decor{display:none!important}.hp-gallery-section .hp-gallery-pagination{margin-top:15px!important;gap:9px!important}.hp-gallery-section .hp-gallery-dot{width:10px!important;height:10px!important}.hp-gallery-section .hp-gallery-dot.active{width:23px!important}.hp-gallery-section .hp-gallery-hint{font-size:11px!important;padding:10px 14px!important;margin-top:13px!important}.hp-gallery-section + .hp-section{padding-top:42px!important}}
@media(prefers-reduced-motion:reduce){.hp-gallery-section .hp-gallery-card,.hp-gallery-section .hp-gallery-filter,.hp-gallery-section .hp-gallery-arrow{transition:none!important}}
