/* Vedant Mantra homepage carousel: isolated styles, no dependency on the legacy slider plugin. */
.vm-home-slider { position: relative; width: 100%; overflow: hidden; isolation: isolate; background: #173c2b; }
.vm-home-slider .vm-slider-viewport { position: relative; width: 100%; height: clamp(300px, 46vw, 650px); overflow: hidden; }
.vm-home-slider .vm-slider-track { position: relative; display: flex; width: 100%; height: 100%; transform: translate3d(0,0,0); transition: transform 720ms cubic-bezier(.22,.61,.36,1); will-change: transform; }
.vm-home-slider .vm-slider-slide { flex: 0 0 100%; width: 100%; height: 100%; background-size: cover; background-position: center; background-repeat: no-repeat; position: relative; }
.vm-home-slider .vm-slider-slide::after { content: ""; position: absolute; inset: 0; background: linear-gradient(90deg, rgba(9,35,23,.30), rgba(9,35,23,.02)); pointer-events: none; }
.vm-home-slider .vm-slider-arrow { position: absolute; z-index: 5; top: 50%; transform: translateY(-50%); width: 46px; height: 46px; display: flex; align-items: center; justify-content: center; border: 1px solid rgba(255,255,255,.72); border-radius: 50%; background: rgba(16,48,32,.52); color: #fff; font-size: 19px; line-height: 1; cursor: pointer; transition: background .2s ease, transform .2s ease; }
.vm-home-slider .vm-slider-arrow:hover, .vm-home-slider .vm-slider-arrow:focus-visible { background: #146b43; outline: 2px solid #fff; outline-offset: 2px; }
.vm-home-slider .vm-slider-prev { left: clamp(12px, 3vw, 38px); }
.vm-home-slider .vm-slider-next { right: clamp(12px, 3vw, 38px); }
.vm-home-slider .vm-slider-dots { position: absolute; z-index: 6; left: 50%; bottom: 18px; transform: translateX(-50%); display: flex; gap: 9px; align-items: center; }
.vm-home-slider .vm-slider-dot { width: 10px; height: 10px; padding: 0; border: 1px solid #fff; border-radius: 50%; background: rgba(255,255,255,.45); cursor: pointer; }
.vm-home-slider .vm-slider-dot.is-active { width: 26px; border-radius: 8px; background: #fff; }
.vm-home-slider button:focus-visible { outline: 2px solid #d7b56d; outline-offset: 3px; }
@media (max-width: 767px) { .vm-home-slider .vm-slider-viewport { height: clamp(250px, 68vw, 430px); } .vm-home-slider .vm-slider-arrow { width: 36px; height: 36px; font-size: 15px; } .vm-home-slider .vm-slider-dots { bottom: 12px; } }
@media (prefers-reduced-motion: reduce) { .vm-home-slider .vm-slider-track { transition-duration: 1ms; } }
