.carousel-container{position:relative;width:100%;overflow:hidden;background:#f5f5f5;height:35vh;min-height:250px;max-height:400px;background:#f8f9fa}@media (max-width:375px) and (max-height:667px){.carousel-container{height:30vh;min-height:200px;max-height:280px}}@media (min-width:375px) and (max-width:390px) and (max-height:844px){.carousel-container{height:32vh;min-height:220px;max-height:300px}}@media (min-width:390px) and (max-width:414px) and (max-height:896px){.carousel-container{height:35vh;min-height:250px;max-height:320px}}@media (min-width:414px) and (max-width:428px) and (max-height:926px){.carousel-container{height:38vh;min-height:280px;max-height:360px}}@media (min-width:428px) and (max-width:430px) and (max-height:932px){.carousel-container{height:38vh;min-height:280px;max-height:360px}}@media (min-width:360px) and (max-width:412px) and (min-height:640px) and (max-height:915px){.carousel-container{height:36vh;min-height:240px;max-height:330px}}@media (min-width:360px) and (max-width:414px) and (min-height:780px) and (max-height:896px){.carousel-container{height:34vh;min-height:250px;max-height:320px}}@media (min-width:393px) and (max-width:412px) and (min-height:851px) and (max-height:915px){.carousel-container{height:36vh;min-height:260px;max-height:340px}}@media (min-width:768px) and (max-width:1024px) and (orientation:portrait){.carousel-container{height:25vh;min-height:200px;max-height:300px}}@media (min-width:640px) and (orientation:landscape){.carousel-container{height:45vh;min-height:350px;max-height:600px}}@media (min-width:768px){.carousel-container{height:55vh;min-height:400px;max-height:700px}}@media (min-width:1024px){.carousel-container{height:65vh;min-height:450px;max-height:750px}}@media (min-width:1280px){.carousel-container{height:70vh;min-height:500px;max-height:800px}}@media (min-width:1920px){.carousel-container{height:75vh;min-height:600px;max-height:900px}}.carousel-image{position:absolute;top:0;left:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover;-o-object-position:center;object-position:center;transition:opacity 1s ease-in-out}.carousel-image.full-fill{-o-object-fit:fill;object-fit:fill}.carousel-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,rgba(0,0,0,.1) 0,rgba(0,0,0,.3));pointer-events:none}.carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.2);border:none;color:white;padding:8px;border-radius:50%;transition:all .3s ease;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.carousel-nav:hover{background:rgba(255,255,255,.3);transform:translateY(-50%) scale(1.1)}.carousel-nav.prev{left:16px}.carousel-nav.next{right:16px}@media (max-width:640px){.carousel-nav{padding:6px}.carousel-nav.prev{left:8px}.carousel-nav.next{right:8px}}.carousel-indicators{bottom:20px}.carousel-indicator.active{transform:scale(1.2)}@media (max-width:640px){.carousel-indicators{bottom:12px}.carousel-indicator{width:8px;height:8px}}.carousel-loading{display:flex;align-items:center;justify-content:center;height:100%;background:#f0f0f0;color:#666}.carousel-container:before{content:"";display:block;width:100%;height:0;padding-bottom:0}@supports ((-o-object-fit:cover) or (object-fit:cover)){.carousel-image{-o-object-fit:cover;object-fit:cover}}@supports (-webkit-appearance:none){.carousel-image{transform:translateZ(0)}}.carousel-smart-container{position:relative;width:100%;overflow:hidden;background:#f5f5f5}.carousel-image-wrapper{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2)}.carousel-image-smart{position:absolute;top:0;left:0;width:100%;height:100%;transition:all .3s ease}.carousel-image-smart.mode-contain,.carousel-image-smart.mode-cover,.carousel-image-smart.mode-scale{-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center}.carousel-image-smart.mode-fill{-o-object-fit:contain;object-fit:contain}@media (max-width:480px){.carousel-image-smart.mode-cover{-o-object-position:center;object-position:center}}@media (min-width:481px) and (max-width:768px){.carousel-image-smart.mode-cover{-o-object-position:center;object-position:center}}@media (min-width:769px){.carousel-image-smart.mode-cover{-o-object-position:center;object-position:center}}.carousel-image-loading{color:#666}.carousel-image-error,.carousel-image-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:14px}.carousel-image-error{color:#999;text-align:center}.carousel-text-protection{position:absolute;top:0;left:0;width:60%;height:100%;background:linear-gradient(90deg,rgba(0,0,0,.1) 0,rgba(0,0,0,.05) 50%,transparent);pointer-events:none}@media (max-width:480px){.carousel-text-protection{width:70%;background:linear-gradient(90deg,rgba(0,0,0,.15) 0,rgba(0,0,0,.08) 60%,transparent)}}.carousel-adaptive-height{height:35vh;min-height:250px;max-height:400px}@media (min-aspect-ratio:16/9){.carousel-adaptive-height{height:30vh;min-height:200px;max-height:350px}}@media (max-aspect-ratio:3/4){.carousel-adaptive-height{height:25vh;min-height:200px;max-height:300px}}@media (min-width:1920px){.carousel-adaptive-height{height:40vh;min-height:400px;max-height:600px}}.carousel-image-smart{transition:object-position .3s ease,transform .3s ease;transition:object-position .3s ease,transform .3s ease,-o-object-position .3s ease}.carousel-image-wrapper:hover .carousel-image-smart.mode-scale{transform:scale(1.02)}.carousel-image-smart{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges;backface-visibility:hidden;-webkit-backface-visibility:hidden;transform:translateZ(0)}.carousel-image-wrapper:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(135deg,rgba(102,126,234,.1),rgba(118,75,162,.1));z-index:-1}.adaptive-carousel-container{position:relative;width:100%;overflow:hidden;background:#f8f9fa;transition:height .3s ease-in-out}.carousel-dynamic-height{height:auto;min-height:200px;max-height:80vh}@media (max-width:768px){.carousel-dynamic-height{min-height:200px;max-height:45vh}.adaptive-carousel-container{background:#ffffff}}@media (min-width:769px) and (max-width:1024px){.carousel-dynamic-height{min-height:250px;max-height:55vh}}@media (min-width:1025px){.carousel-dynamic-height{min-height:300px;max-height:70vh}}@media (min-width:1920px){.carousel-dynamic-height{min-height:400px;max-height:800px}}.adaptive-image-container{position:relative;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.adaptive-carousel-image{-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;width:100%;height:100%;transition:opacity .3s ease}@media (max-width:768px){.adaptive-carousel-image{-o-object-fit:contain;object-fit:contain;transform:scale(1.02)}}@media (min-width:769px) and (max-width:1024px){.adaptive-carousel-image{-o-object-fit:contain;object-fit:contain}}@media (min-width:1025px){.adaptive-carousel-image{-o-object-fit:contain;object-fit:contain}}.carousel-loading-state{background:rgba(248,249,250,.9);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.carousel-error-state,.carousel-loading-state{position:absolute;top:0;left:0;width:100%;height:100%;display:flex;align-items:center;justify-content:center}.carousel-error-state{background:rgba(248,249,250,.95);color:#6b7280;text-align:center}.carousel-nav-button{position:absolute;top:50%;transform:translateY(-50%);background:rgba(255,255,255,.2);border:none;color:white;padding:12px;border-radius:50%;transition:all .3s ease;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:10}.carousel-nav-button:hover{background:rgba(255,255,255,.3);transform:translateY(-50%) scale(1.1)}.carousel-nav-button.prev{left:16px}.carousel-nav-button.next{right:16px}@media (max-width:768px){.carousel-nav-button{padding:8px}.carousel-nav-button.prev{left:8px}.carousel-nav-button.next{right:8px}}.carousel-indicators{position:absolute;bottom:16px;left:50%;transform:translateX(-50%);display:flex;gap:8px;z-index:10}.carousel-indicator{width:12px;height:12px;border-radius:50%;background:rgba(255,255,255,.5);border:none;cursor:pointer;transition:all .3s ease}.carousel-indicator.active{background:white;transform:scale(1.25)}.carousel-indicator:hover{background:rgba(255,255,255,.8)}@media (max-width:768px){.carousel-indicators{bottom:12px}.carousel-indicator{width:8px;height:8px}}.carousel-height-transition{transition:height .4s cubic-bezier(.4,0,.2,1)}.adaptive-carousel-image{backface-visibility:hidden;transform:translateZ(0)}@supports (-webkit-appearance:none){.adaptive-carousel-image{-webkit-font-smoothing:antialiased}}@supports (-moz-appearance:none){.adaptive-carousel-image{-moz-osx-font-smoothing:grayscale}}@media (min-resolution:2dppx){.adaptive-carousel-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (prefers-color-scheme:dark){.adaptive-carousel-container{background:#1f2937}.carousel-loading-state{background:rgba(31,41,55,.9);color:#e5e7eb}.carousel-error-state{background:rgba(31,41,55,.95);color:#9ca3af}}@media (prefers-reduced-motion:reduce){.adaptive-carousel-container,.adaptive-carousel-image,.carousel-indicator,.carousel-nav-button{transition:none}}.carousel-indicator:focus,.carousel-nav-button:focus{outline:2px solid #3b82f6;outline-offset:2px}@media (hover:none) and (pointer:coarse){.carousel-nav-button{opacity:.8}.carousel-nav-button:active{transform:translateY(-50%) scale(.95)}}.mobile-fullscreen-carousel{position:relative;width:100%;overflow:hidden;background:#ffffff}@media (max-width:768px){.mobile-fullscreen-carousel{margin:0;padding:0;width:100%;min-height:300px;max-height:75vh}.mobile-fullscreen-image{width:100%;height:100%;-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;max-width:100%;max-height:100%}.mobile-carousel-nav{position:absolute;top:50%;transform:translateY(-50%);background:rgba(0,0,0,.3);border:none;color:white;padding:8px;border-radius:50%;transition:all .3s ease;cursor:pointer;z-index:10}.mobile-carousel-nav:active,.mobile-carousel-nav:hover{background:rgba(0,0,0,.5);transform:translateY(-50%) scale(1.1)}.mobile-carousel-nav.prev{left:8px}.mobile-carousel-nav.next{right:8px}.mobile-carousel-indicators{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);display:flex;gap:6px;z-index:10}.mobile-carousel-indicator{width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.6);border:none;cursor:pointer;transition:all .3s ease}.mobile-carousel-indicator.active{background:white;transform:scale(1.3)}.mobile-carousel-indicator:hover{background:rgba(255,255,255,.8)}}@media (max-width:375px){.mobile-fullscreen-carousel{min-height:250px;max-height:70vh}}@media (min-width:375px) and (max-width:390px){.mobile-fullscreen-carousel{min-height:270px;max-height:72vh}}@media (min-width:390px) and (max-width:414px){.mobile-fullscreen-carousel{min-height:300px;max-height:75vh}}@media (min-width:414px) and (max-width:430px){.mobile-fullscreen-carousel{min-height:320px;max-height:78vh}}@media (max-width:768px) and (orientation:landscape){.mobile-fullscreen-carousel{max-height:85vh;min-height:200px}.mobile-carousel-indicators{bottom:8px}.mobile-carousel-nav{padding:6px}}@media (max-width:768px){.carousel-image-mobile-optimized{-o-object-fit:contain;object-fit:contain;-o-object-position:center;object-position:center;width:100%;height:100%;max-width:100%;max-height:100%;backface-visibility:hidden;transform:translateZ(0)}.mobile-text-protection{position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(180deg,transparent 0,transparent 70%,rgba(0,0,0,.1));pointer-events:none}.mobile-carousel-loading{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:rgba(255,255,255,.9);padding:12px 16px;border-radius:8px;color:#666;font-size:14px}.mobile-fullscreen-carousel{transform:translateZ(0);-webkit-transform:translateZ(0);-webkit-overflow-scrolling:touch;-webkit-user-select:none;-moz-user-select:none;user-select:none}.mobile-fullscreen-image{image-rendering:-webkit-optimize-contrast;image-rendering:optimize-contrast;backface-visibility:hidden}}@media (max-width:768px) and (hover:none) and (pointer:coarse){.mobile-carousel-nav{padding:12px;min-width:44px;min-height:44px}.mobile-carousel-indicator{width:12px;height:12px;min-width:44px;min-height:44px;display:flex;align-items:center;justify-content:center}.mobile-carousel-indicator:before{content:"";width:8px;height:8px;border-radius:50%;background:currentColor}}@media (max-width:768px) and (prefers-color-scheme:dark){.mobile-fullscreen-carousel{background:#000000}.mobile-carousel-loading{background:rgba(0,0,0,.9);color:#ccc}}@media (max-width:768px){.mobile-fullscreen-carousel{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}.mobile-carousel-nav.prev{left:calc(8px + env(safe-area-inset-left))}.mobile-carousel-nav.next{right:calc(8px + env(safe-area-inset-right))}}@media (max-width:768px) and (-webkit-min-device-pixel-ratio:2){.mobile-fullscreen-image{image-rendering:-webkit-optimize-contrast;image-rendering:crisp-edges}}@media (max-width:768px) and (prefers-reduced-motion:reduce){.mobile-carousel-indicator,.mobile-carousel-nav,.mobile-fullscreen-carousel *{transition:none!important;animation:none!important}}