/* Hydroseal Testimonials - frontend (white section, no glow) */
.hs-tm{--hs-tm-blue:#238cf9;--hs-tm-blue-2:#4aa3fb;--hs-tm-tint:#eef5fe;--hs-tm-tint-2:#d6e8fd;--hs-tm-dark:#05274c;--hs-tm-dark-2:#0a3568;--hs-tm-text:#4a5d76;--hs-tm-line:#d9e6f6;
background:#fff;color:var(--hs-tm-text);font-family:'Averta PE VF Trial','Poppins',sans-serif;padding:clamp(50px,7vw,100px) 20px;scroll-margin-top:90px;box-sizing:border-box}
.hs-tm *,.hs-tm *::before,.hs-tm *::after{box-sizing:border-box}
.hs-tm [hidden]{display:none!important}
.hs-tm-wrap{max-width:1200px;margin:0 auto}

.hs-tm-head{max-width:720px;margin:0 auto clamp(26px,4vw,40px);text-align:center}
.hs-tm-eyebrow{display:inline-block;font-size:13px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--hs-tm-blue);background:var(--hs-tm-tint);border:1px solid var(--hs-tm-tint-2);padding:7px 16px;border-radius:999px;margin-bottom:16px}
.hs-tm h2.hs-tm-h2{margin:0 0 12px;font-size:clamp(28px,3.8vw,44px);line-height:1.12;font-weight:800;letter-spacing:-.015em;color:var(--hs-tm-dark)}
.hs-tm-h2 span{color:var(--hs-tm-blue)}
.hs-tm-lead{margin:0;font-size:clamp(16px,1.4vw,18px);line-height:1.7}

/* tabs */
.hs-tm-tabs{position:relative;display:flex;justify-content:center;gap:6px;width:max-content;max-width:100%;margin:0 auto 18px;padding:6px;border-radius:999px;background:var(--hs-tm-tint);border:1px solid var(--hs-tm-tint-2)}
.hs-tm-tab{appearance:none;-webkit-appearance:none;border:0;background:transparent;color:var(--hs-tm-dark);font:700 15.5px/1 'Averta PE VF Trial','Poppins',sans-serif;padding:13px 24px;border-radius:999px;cursor:pointer;white-space:nowrap;transition:background .3s,color .3s,box-shadow .3s,transform .25s}
.hs-tm-tab:hover{color:var(--hs-tm-blue)}
.hs-tm-tab:focus-visible{outline:3px solid rgba(35,140,249,.4);outline-offset:2px}
.hs-tm-tab.is-active{background:var(--hs-tm-dark);color:#fff;box-shadow:0 10px 22px rgba(5,39,76,.22)}
.hs-tm-formats{display:flex;justify-content:center;gap:8px;margin:0 0 clamp(24px,3.5vw,34px)}
.hs-tm-fbtn{appearance:none;-webkit-appearance:none;border:1.5px solid var(--hs-tm-line);background:#fff;color:var(--hs-tm-text);font:600 14px/1 'Averta PE VF Trial','Poppins',sans-serif;padding:9px 16px;border-radius:999px;cursor:pointer;transition:all .25s}
.hs-tm-fbtn:hover{border-color:var(--hs-tm-blue-2);color:var(--hs-tm-blue)}
.hs-tm-fbtn.is-active{border-color:var(--hs-tm-blue);background:var(--hs-tm-tint);color:var(--hs-tm-blue)}

/* grid + cards */
.hs-tm-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;align-items:start}
.hs-tm-card{background:#fff;border:1px solid var(--hs-tm-line);border-radius:24px;overflow:hidden;transition:box-shadow .35s,border-color .35s}
.hs-tm-card:hover{box-shadow:0 24px 50px rgba(5,39,76,.13);border-color:var(--hs-tm-blue-2)}
.hs-tm-js .hs-tm-card{opacity:0;transform:translateY(26px) scale(.98);transition:opacity .55s cubic-bezier(.2,.7,.2,1),transform .55s cubic-bezier(.2,.7,.2,1),box-shadow .35s,border-color .35s;transition-delay:var(--hs-tm-dl,0s),var(--hs-tm-dl,0s),0s,0s}
.hs-tm-js .hs-tm-card.hs-tm-in{opacity:1;transform:none}
.hs-tm-js .hs-tm-card.hs-tm-in:hover{transform:translateY(-7px)}
.hs-tm-js .hs-tm-card.hs-tm-leave{opacity:0!important;transform:scale(.96)!important;transition:opacity .2s,transform .2s!important;transition-delay:0s!important}
.hs-tm-body{padding:16px 20px 20px}
.hs-tm-who{display:block;font-size:17px;font-weight:800;color:var(--hs-tm-dark);line-height:1.3}
.hs-tm-sub{display:block;margin-top:3px;font-size:14px}

.hs-tm-badge{display:inline-block;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;padding:6px 12px;border-radius:999px;background:var(--hs-tm-tint);border:1px solid var(--hs-tm-tint-2);color:var(--hs-tm-blue)}
.hs-tm-badge-service{background:var(--hs-tm-dark);border-color:var(--hs-tm-dark);color:#fff}

/* video card */
.hs-tm-vbtn{position:relative;display:block;width:100%;aspect-ratio:16/10;padding:0;border:0;cursor:pointer;background:linear-gradient(145deg,var(--hs-tm-dark),var(--hs-tm-dark-2));overflow:hidden;text-align:left;font:inherit}
.hs-tm-vmedia{position:absolute;inset:0;display:block}
.hs-tm .hs-tm-vmedia img,.hs-tm .hs-tm-vmedia video{position:absolute;inset:0;width:100%;height:100%;max-width:none;object-fit:cover;display:block;margin:0;border-radius:0;transition:transform .9s ease}
.hs-tm-vbtn:hover .hs-tm-vmedia img,.hs-tm-vbtn:hover .hs-tm-vmedia video{transform:scale(1.06)}
.hs-tm-vbtn::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,26,53,.25),rgba(3,26,53,.45))}
.hs-tm-vbtn .hs-tm-badge{position:absolute;z-index:2;top:12px;left:12px}
.hs-tm-play{position:absolute;z-index:2;left:50%;top:50%;width:68px;height:68px;margin:-34px 0 0 -34px;border-radius:50%;background:#fff;color:var(--hs-tm-blue);display:grid;place-items:center;box-shadow:0 14px 30px rgba(0,0,0,.3);transition:transform .3s,background .3s,color .3s}
.hs-tm-play svg{width:28px;height:28px;margin-left:3px}
.hs-tm-play::before{content:"";position:absolute;inset:-7px;border-radius:50%;border:2px solid rgba(255,255,255,.75);animation:hs-tm-pulse 2.4s ease-out infinite}
.hs-tm-vbtn:hover .hs-tm-play,.hs-tm-vbtn:focus-visible .hs-tm-play{transform:scale(1.12);background:var(--hs-tm-blue);color:#fff}
.hs-tm-vbtn:focus-visible{outline:3px solid var(--hs-tm-blue);outline-offset:-3px}

/* audio card */
.hs-tm-card-a{padding:20px 20px 0}
.hs-tm-atop{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.hs-tm-fmt{display:inline-flex;align-items:center;gap:6px;font-size:13.5px;font-weight:600;color:var(--hs-tm-text)}
.hs-tm-fmt svg{width:16px;height:16px;color:var(--hs-tm-blue)}
.hs-tm-player{display:flex;align-items:center;gap:14px;padding:14px;border-radius:18px;background:linear-gradient(135deg,var(--hs-tm-tint),#fff);border:1px solid var(--hs-tm-tint-2)}
.hs-tm-pbtn{position:relative;flex:none;width:54px;height:54px;border:0;border-radius:50%;cursor:pointer;background:linear-gradient(135deg,var(--hs-tm-blue),#1a6fd0);color:#fff;display:grid;place-items:center;box-shadow:0 10px 22px rgba(35,140,249,.35);transition:transform .25s,box-shadow .25s}
.hs-tm-pbtn:hover{transform:scale(1.08);box-shadow:0 14px 28px rgba(35,140,249,.45)}
.hs-tm-pbtn:focus-visible{outline:3px solid rgba(35,140,249,.45);outline-offset:3px}
.hs-tm-pbtn svg{width:24px;height:24px}
.hs-tm-i-play{margin-left:2px}
.hs-tm-i-pause{display:none}
.hs-tm-player.is-playing .hs-tm-i-play{display:none}
.hs-tm-player.is-playing .hs-tm-i-pause{display:block}
.hs-tm-ring{position:absolute;inset:-5px;border-radius:50%;border:2px solid var(--hs-tm-blue-2);opacity:0}
.hs-tm-player.is-playing .hs-tm-ring{animation:hs-tm-pulse 1.8s ease-out infinite}
.hs-tm-wave{position:relative;flex:1;min-width:0;height:44px;display:flex;align-items:center;gap:3px;cursor:pointer;touch-action:pan-y;outline:none}
.hs-tm-wave:focus-visible{outline:2px solid rgba(35,140,249,.5);outline-offset:4px;border-radius:6px}
.hs-tm-wave i{flex:1;min-width:2px;height:var(--h);border-radius:3px;background:var(--hs-tm-tint-2);transition:background .2s,transform .2s}
.hs-tm-wave i.is-done{background:var(--hs-tm-blue)}
.hs-tm-player.is-playing .hs-tm-wave i.is-live{animation:hs-tm-bar .7s ease-in-out infinite alternate;animation-delay:var(--hs-tm-bd,0s)}
.hs-tm-time{flex:none;min-width:38px;text-align:right;font-family:'Poppins',sans-serif;font-size:13.5px;font-weight:600;color:var(--hs-tm-dark)}
.hs-tm-card-a .hs-tm-body{padding:16px 0 20px}

/* show more, empty */
.hs-tm-morewrap{display:flex;justify-content:center;margin-top:32px}
.hs-tm-more{appearance:none;-webkit-appearance:none;border:1.5px solid var(--hs-tm-tint-2);background:#fff;color:var(--hs-tm-dark);font:700 16px/1 'Averta PE VF Trial','Poppins',sans-serif;padding:15px 28px;border-radius:12px;cursor:pointer;transition:transform .25s,border-color .25s,color .25s,box-shadow .25s}
.hs-tm-more:hover{border-color:var(--hs-tm-blue);color:var(--hs-tm-blue);transform:translateY(-3px);box-shadow:0 12px 26px rgba(35,140,249,.14)}
.hs-tm-empty{max-width:540px;margin:0 auto;text-align:center;padding:40px 28px;border:1.5px dashed #8dc2fb;border-radius:24px;background:linear-gradient(160deg,var(--hs-tm-tint),#fff)}
.hs-tm-empty>svg{width:44px;height:44px;color:var(--hs-tm-blue)}
.hs-tm-empty h3{margin:10px 0 8px;font-size:24px;font-weight:800;color:var(--hs-tm-dark)}
.hs-tm-empty p{margin:0 0 8px;font-size:16px;line-height:1.65}
.hs-tm-admin-tip{font-size:13px!important}
.hs-tm-admin-tip a{color:var(--hs-tm-blue)}

/* video modal */
.hs-tm-modal{position:fixed;inset:0;z-index:99999;display:flex;align-items:center;justify-content:center;padding:20px;background:rgba(3,26,53,.88);opacity:0;visibility:hidden;transition:opacity .3s,visibility .3s}
.hs-tm-modal.is-open{opacity:1;visibility:visible}
.hs-tm-modal-box{position:relative;width:min(960px,100%);transform:translateY(24px) scale(.97);transition:transform .35s cubic-bezier(.2,.7,.2,1)}
.hs-tm-modal.is-open .hs-tm-modal-box{transform:none}
.hs-tm-modal-stage{position:relative;aspect-ratio:16/9;background:#000;border-radius:18px;overflow:hidden;box-shadow:0 30px 70px rgba(0,0,0,.45)}
.hs-tm-modal-stage video,.hs-tm-modal-stage iframe{position:absolute;inset:0;width:100%;height:100%;border:0;display:block;background:#000}
.hs-tm-modal-close{position:absolute;top:-52px;right:0;width:42px;height:42px;border:0;border-radius:50%;background:#fff;color:#05274c;display:grid;place-items:center;cursor:pointer;transition:transform .25s,background .25s,color .25s}
.hs-tm-modal-close:hover,.hs-tm-modal-close:focus-visible{background:#238cf9;color:#fff;transform:rotate(90deg)}
.hs-tm-modal-close svg{width:20px;height:20px}
body.hs-tm-lock{overflow:hidden}

@keyframes hs-tm-pulse{0%{transform:scale(.85);opacity:.9}100%{transform:scale(1.6);opacity:0}}
@keyframes hs-tm-bar{from{transform:scaleY(.55)}to{transform:scaleY(1.1)}}

@media(max-width:1000px){.hs-tm-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:680px){
.hs-tm{padding-left:16px;padding-right:16px}
.hs-tm-grid{grid-template-columns:1fr;gap:18px}
.hs-tm-tabs{width:100%;border-radius:22px}
.hs-tm-tab{flex:1;padding:12px 10px;font-size:14.5px;white-space:normal;text-align:center;line-height:1.2}
.hs-tm-more{width:100%}
.hs-tm-modal-close{top:-50px}
}
@media(prefers-reduced-motion:reduce){
.hs-tm *,.hs-tm *::before,.hs-tm *::after{animation:none!important;transition:none!important}
.hs-tm-js .hs-tm-card{opacity:1;transform:none}
.hs-tm-modal,.hs-tm-modal-box{transition:none}
}
