/* Photo-led editorial carousel; controls keep the native 44px touch target. */
.hero-carousel{height:330px;touch-action:pan-y pinch-zoom;background:#324b40}
.hero-carousel .hero-slide{position:absolute;inset:0;isolation:isolate;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .55s ease,visibility .55s ease}
.hero-carousel .hero-slide.is-active{opacity:1;visibility:visible;pointer-events:auto}
.hero-carousel .hero-photo{z-index:-3;object-position:center 48%;transition:transform 1.2s ease}
.hero-carousel .hero-slide[data-hero-slide="0"] .hero-photo{object-position:center 60%}
.hero-carousel .hero-shade{z-index:-2;background:linear-gradient(180deg,rgba(11,29,24,.24),rgba(11,29,24,.09) 25%,rgba(7,23,18,.76) 100%)}
.hero-carousel .hero-top{padding:23px 26px;gap:12px}
.hero-carousel .glass-tag{background:rgba(30,47,39,.31);border-color:rgba(255,255,255,.32);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;white-space:nowrap}
.hero-carousel .hero-demo{background:rgba(30,47,39,.31);color:#fff;white-space:nowrap}
.hero-carousel .hero-link{bottom:52px;padding:0 28px 15px;gap:18px;min-height:130px}
.hero-carousel h2{font-size:36px;line-height:1.09;letter-spacing:-1px;font-weight:680;margin:0 0 10px;text-shadow:0 2px 15px rgba(0,0,0,.1)}
.hero-carousel .hero-eyebrow{color:rgba(255,255,255,.88);font-size:12px;margin-bottom:9px}
.hero-carousel .hero-subtitle{color:rgba(255,255,255,.88);font-size:12px;line-height:1.4}
.hero-carousel .hero-arrow{margin-bottom:3px;background:rgba(255,255,255,.18);flex-shrink:0}
.hero-carousel .hero-controls{position:absolute;bottom:4px;left:14px;right:16px;display:flex;align-items:center;justify-content:space-between;z-index:2}
.hero-carousel .hero-dots{display:flex;align-items:center}
.hero-carousel .hero-dot{display:grid;place-items:center;width:44px;height:44px;padding:0;border-radius:50%}
.hero-carousel .hero-dot>span{display:block;width:6px;height:6px;border-radius:5px;background:rgba(255,255,255,.5);transition:width .25s ease,background .25s ease}
.hero-carousel .hero-dot.is-active>span{width:23px;background:#fff}
.hero-carousel .hero-dot:focus-visible,.hero-carousel .hero-toggle:focus-visible{outline-color:#fff;outline-offset:-4px}
.hero-carousel .hero-toggle{display:grid;place-items:center;width:44px;height:44px;border-radius:50%;padding:0;color:#fff;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.17);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.hero-carousel .hero-toggle svg{width:17px;height:17px;stroke-width:2}
.hero-carousel .hero-announcement{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
@media(min-width:800px){.screen-home>.hero-carousel{height:365px}.hero-carousel .hero-top{padding:25px 32px}.hero-carousel .hero-link{padding:0 32px 17px}.hero-carousel h2{font-size:42px;letter-spacing:-1.2px}.hero-carousel .hero-eyebrow,.hero-carousel .hero-subtitle{font-size:13px}.hero-carousel .hero-controls{left:18px;right:25px;bottom:7px}}
@media(max-width:600px){.hero-carousel{height:292px;border-radius:27px}.hero-carousel .hero-top{padding:17px;gap:8px}.hero-carousel .glass-tag{font-size:10px;padding:7px 9px}.hero-carousel .hero-demo{font-size:9px;padding:6px 8px}.hero-carousel .hero-link{bottom:52px;padding:0 20px 12px;min-height:126px;gap:10px}.hero-carousel h2{font-size:29px;letter-spacing:-.85px;margin-bottom:9px}.hero-carousel .hero-eyebrow{font-size:11px;margin-bottom:8px}.hero-carousel .hero-subtitle{font-size:11px;max-width:235px}.hero-carousel .hero-arrow{width:36px;height:36px;margin-bottom:4px}.hero-carousel .hero-arrow svg{width:18px;height:18px}.hero-carousel .hero-controls{left:7px;right:12px;bottom:3px}.hero-carousel .hero-toggle{width:44px;height:44px}}
@media(max-width:360px){.hero-carousel{height:284px}.hero-carousel h2{font-size:26px;letter-spacing:-.7px}.hero-carousel .hero-link{padding-left:18px;padding-right:18px}.hero-carousel .hero-subtitle{font-size:10px}.hero-carousel .hero-top{padding:15px}}
@media(prefers-reduced-motion:reduce){.hero-carousel .hero-slide,.hero-carousel .hero-photo,.hero-carousel .hero-dot>span{transition:none}}
@media(prefers-reduced-transparency:reduce){.hero-carousel .hero-toggle,.hero-carousel .glass-tag,.hero-carousel .hero-demo{backdrop-filter:none;-webkit-backdrop-filter:none;background:#40594d}}
