.hdr .btn,.btn{background:linear-gradient(135deg,#2f80ed,#153e5c);color:#fff;border:0;border-radius:999px;padding:12px 26px;box-shadow:0 8px 22px #2f80ed55;position:relative;overflow:hidden;transition:transform .25s,box-shadow .25s;font-size:20px}
.btn.big{font-size:24px;padding:16px 34px}
.btn:hover{transform:translateY(-3px);box-shadow:0 14px 32px #2f80ed88,0 0 0 4px #93c5fd55}
.btn::after{content:"";position:absolute;top:0;left:-60%;width:40%;height:100%;background:linear-gradient(100deg,transparent,#ffffff66,transparent);transform:skewX(-20deg);animation:shine 3.5s infinite}
.hdr .btn{animation:pulse 2.6s infinite}
@keyframes shine{0%,60%{left:-60%}100%{left:130%}}
@keyframes pulse{0%,100%{box-shadow:0 8px 22px #2f80ed55,0 0 0 0 #2f80ed66}50%{box-shadow:0 8px 22px #2f80ed55,0 0 0 10px #2f80ed00}}
.pgrid{display:flex!important;flex-wrap:wrap;justify-content:center;gap:14px;max-width:1100px}
.pgrid div{flex:0 1 230px;background:#fff;border-radius:14px;padding:16px 10px;box-shadow:0 4px 14px #153e5c14;transition:transform .25s}
.pgrid div:hover{transform:translateY(-4px)}
.svc{text-align:center}
section.sec:has(.svc) h2{text-align:center}
.svc a{border:0;border-radius:18px;background:linear-gradient(160deg,#fff,var(--pale));box-shadow:0 6px 20px #153e5c1f;padding:28px 22px;transition:transform .25s,box-shadow .25s;border-top:5px solid #2f80ed}
.svc a:hover{transform:translateY(-6px);box-shadow:0 16px 36px #153e5c33}
.svc .ic{display:inline-grid;place-items:center;width:64px;height:64px;border-radius:50%;background:linear-gradient(135deg,#2f80ed,#153e5c);font-size:30px;font-style:normal;margin-bottom:10px}
.steps.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:28px 0}
.steps.cards li{display:flex;gap:16px;align-items:flex-start;border:1px solid #ffffff22;border-left:0;background:#ffffff10;border-radius:14px;padding:20px;margin:0;line-height:1.5;transition:transform .25s,background .25s}
.steps.cards li:hover{transform:translateY(-4px);background:#ffffff1a}
.steps.cards b{display:block;color:var(--lb);font-size:19px;margin-bottom:4px}
.steps .ic{flex:0 0 46px;height:46px;display:grid;place-items:center;border-radius:12px;background:#ffffff1f;font-size:24px;font-style:normal}
.gal{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:16px;margin:24px 0}
.gal figure,.gal .pair{grid-column:auto!important;position:relative;border-radius:16px;overflow:hidden;box-shadow:0 6px 18px #153e5c22}
.gal img{width:100%;aspect-ratio:4/3;object-fit:cover;transition:transform .5s}
.gal figure:hover img{transform:scale(1.06)}
.gal figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 12px 10px;background:linear-gradient(transparent,#0c2638e6);font-size:14px}
.badge{position:absolute;top:10px;z-index:2;font:900 14px "Big Shoulders Display",sans-serif;text-transform:uppercase;padding:3px 10px;border-radius:999px;background:#c62828;color:#fff}.b1{left:10px}.b2{left:calc(50% + 8px);background:#2e7d32}
.rv{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}.rv.in{opacity:1;transform:none}
@media(max-width:900px){.gal{grid-template-columns:repeat(2,1fr)!important}.steps.cards{grid-template-columns:1fr}.pgrid div{flex-basis:44%}}
@media(max-width:520px){.gal{grid-template-columns:1fr!important}.hdr .btn{font-size:15px;padding:9px 16px}}
@media(prefers-reduced-motion:reduce){*,*::after{animation:none!important;transition:none!important}.rv{opacity:1;transform:none}}
.hdr .btn{white-space:nowrap}
