/* Header logo alignment (blank space inside the logo image removed) */
header .logo img{object-position:50% 67.5%;transform:translateX(-3.9%)}
@media (max-width:980px){header .hdr-in{padding:0 24px}}
@media (min-width:981px) and (max-width:1100px){header .logo{width:252px}header .hdr-seal{height:72px}header .hdr-phone{font-size:21px}}

/* Home hero slideshow */
.hero .bg{overflow:hidden}
.hero .hs-track{position:absolute;inset:0;display:flex;transition:transform .9s cubic-bezier(.65,0,.35,1);will-change:transform}
.hero .hs{flex:0 0 100%;height:100%;background-size:cover;background-repeat:no-repeat;background-position:center calc(35% + var(--py,0px))}
.hs-arrow{position:absolute;top:50%;z-index:4;width:48px;height:48px;margin-top:-24px;padding:0;border-radius:50%;border:1px solid rgba(20,20,20,.14);background:rgba(255,255,255,.94);color:#141414;display:grid;place-items:center;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.18);transition:background .2s,color .2s,transform .2s}
.hs-arrow svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}
.hs-arrow:hover,.hs-arrow:focus-visible{background:#CD0C0C;color:#fff;outline:none}
.hs-arrow:active{transform:scale(.94)}
.hs-prev{left:20px}.hs-next{right:20px}
.hs-dots{position:absolute;left:0;right:0;bottom:22px;z-index:4;display:flex;justify-content:center;gap:10px;pointer-events:none}
.hs-dots button{pointer-events:auto;width:10px;height:10px;padding:0;border-radius:50%;border:1px solid #141414;background:rgba(255,255,255,.9);cursor:pointer;transition:background .2s,transform .2s}
.hs-dots button.on{background:#CD0C0C;border-color:#CD0C0C;transform:scale(1.25)}
@media (max-width:1299px){
  .hs-arrow{top:auto;bottom:12px;margin-top:0;width:40px;height:40px}
  .hs-prev{left:16px}.hs-next{right:16px}
  .hs-dots{bottom:25px}
}
@media (prefers-reduced-motion:reduce){.hero .hs-track{transition:none}}

/* Tablet and phone hero: photo shows through, text sits on a frosted white card */
@media (max-width:980px){
  .hero .bg::after{background:linear-gradient(180deg,rgba(255,255,255,.28) 0%,rgba(255,255,255,.18) 100%)!important}
  .hero .wrap{background:rgba(255,255,255,.78);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:20px;width:calc(100% - 48px);margin:40px auto 72px;padding:34px 22px 38px;box-shadow:0 10px 30px rgba(0,0,0,.18)}
  .hero h1,.hero p.lead,.hero .eyebrow,.hero .or{text-shadow:none}
  .hero p.lead{font-weight:600;color:#111}
  .hero .eyebrow{font-weight:800}
  .hero .or{font-weight:600;color:#111}
}
@media (max-width:620px){
  .hero .wrap{width:calc(100% - 32px);margin:28px auto 68px;padding:28px 18px 30px;border-radius:18px}
}