.hcp-carousel{
    --hcp-height:min(620px,78vh);
    --hcp-text:#fff;
    --hcp-accent:#aab2c5;
    --hcp-nav:#fff;
    position:relative;
    width:100%;
    height:var(--hcp-height);
    min-height:420px;
    overflow:hidden;
    isolation:isolate;
    background:#08143f;
    font-family:inherit;
}
.hcp-track{position:relative;width:100%;height:100%}
.hcp-slide{
    position:absolute;inset:0;
    display:flex;align-items:center;
    opacity:0;visibility:hidden;
    transform:scale(1.015);
    transition:opacity .7s ease, visibility .7s ease, transform 1.1s ease;
    background-image:var(--hcp-bg);
    background-size:cover;background-position:center;
}
.hcp-slide.is-active{opacity:1;visibility:visible;transform:scale(1)}
.hcp-overlay{
    position:absolute;inset:0;
    background:var(--hcp-overlay);
    opacity:var(--hcp-opacity);
    z-index:0;
}
.hcp-content{
    position:relative;z-index:2;
    width:min(100%,1340px);
    margin:0 auto;
    color:var(--hcp-text);
}
.hcp-eyebrow{
    display:flex;align-items:center;gap:12px;
    margin-bottom:18px;
    font-size:10px;line-height:1;
    font-weight:700;letter-spacing:.08em;
    text-transform:uppercase;
}
.hcp-eyebrow span{
    display:inline-flex;padding:5px 8px;
    background:rgba(255,255,255,.12);
}
.hcp-eyebrow i{display:block;width:34px;height:1px;background:rgba(255,255,255,.55)}
.hcp-content h2{
    margin:0 0 20px;
    max-width:760px;
    font-size:clamp(42px,6.1vw,76px);
    line-height:.92;
    letter-spacing:-.045em;
    font-weight:800;
    color:#fff;
}
.hcp-content h2 span{color:var(--hcp-accent)}
.hcp-content p{
    max-width:570px;
    margin:0 0 27px;
    font-size:clamp(14px,1.35vw,17px);
    line-height:1.55;
    color:rgba(255,255,255,.82);
}
.hcp-buttons{display:flex;flex-wrap:wrap;gap:11px}
.hcp-btn{
    display:inline-flex;align-items:center;justify-content:center;
    min-height:45px;padding:0 21px;
    border:1px solid rgba(255,255,255,.35);
    text-decoration:none!important;
    text-transform:uppercase;
    font-size:11px;font-weight:700;letter-spacing:.08em;
    transition:.25s ease;
}
.hcp-btn-primary{background:#fff;color:#101a3e;border-color:#fff}
.hcp-btn-primary:hover{background:transparent;color:#fff}
.hcp-btn-secondary{background:transparent;color:#fff}
.hcp-btn-secondary:hover{background:#fff;color:#101a3e}
.hcp-pagination{
    position:absolute;z-index:5;
    left:clamp(28px,4.1vw,60px);bottom:24px;
    display:flex;gap:9px;align-items:center;
}
.hcp-dot{
    appearance:none;border:0;padding:0;
    width:18px;height:4px;background:rgba(255,255,255,.32);
    cursor:pointer;transition:width .3s ease,background .3s ease;
}
.hcp-dot.is-active{width:27px;background:#fff}
.hcp-arrow{
    position:absolute;z-index:5;top:50%;
    transform:translateY(-50%);
    width:42px;height:42px;
    border:1px solid rgba(255,255,255,.25);
    background:rgba(0,0,0,.08);
    color:#fff;cursor:pointer;
    opacity:0;transition:.25s ease;
    font-size:25px;line-height:1;
}
.hcp-carousel:hover .hcp-arrow{opacity:1}
.hcp-prev{left:18px}.hcp-next{right:18px}
.hcp-arrow:hover{background:rgba(255,255,255,.15)}
@media (max-width:767px){
    .hcp-carousel{min-height:540px;height:min(520px,88vh)}
    .hcp-slide{background-position:center}
    .hcp-content{padding:75px 24px 80px}
    .hcp-content h2{font-size:clamp(38px,12vw,58px);letter-spacing:-.04em}
    .hcp-content p{font-size:14px;max-width:100%}
    .hcp-buttons{gap:8px}
    .hcp-btn{width:100%;padding:0 15px}
    .hcp-pagination{left:24px;bottom:22px}
    .hcp-arrow{display:none}
	.hcp-content{padding:10px;}
}
@media (prefers-reduced-motion:reduce){
    .hcp-slide,.hcp-btn,.hcp-dot{transition:none}
}
