/* LUXURY SLIDER PRO v3.0 — Custom Engine CSS */
/* Loading state — hide until JS inits to prevent flash of unstyled content */
.luxslider-wrapper.luxslider-loading{opacity:0}
.luxslider-wrapper.luxslider-ready{opacity:1;transition:opacity .3s ease}

.luxslider-wrapper{--lux-accent:#C9A96E;--lux-height-d:100vh;--lux-height-t:70vh;--lux-height-m:50vh;--lux-black:#0A0A0A;--lux-white:#F5F0EB;--lux-ease:cubic-bezier(.25,.46,.45,.94);--lux-fade-speed:1000ms;--lux-autoplay-speed:6000ms;--lux-container-width:100%;--lux-content-width:650px;position:relative;width:100%;height:var(--lux-height-d);min-height:300px;max-height:1000px;overflow:hidden;background:var(--lux-black);font-family:'Montserrat',sans-serif}
.luxslider-wrapper *,.luxslider-wrapper *::before,.luxslider-wrapper *::after{box-sizing:border-box}

/* Slides container */
.luxslider-slides{position:relative;width:100%;height:100%}

/* Fade effect (default) */
.luxslider-effect-fade .luxslider-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity var(--lux-fade-speed) ease,visibility 0s var(--lux-fade-speed);z-index:1}
.luxslider-effect-fade .luxslider-slide.luxslider-active{opacity:1;visibility:visible;transition:opacity var(--lux-fade-speed) ease,visibility 0s 0s;z-index:2}

/* Slide effect */
.luxslider-effect-slide .luxslider-slide{position:absolute;inset:0;opacity:1;visibility:hidden;transform:translateX(100%);transition:transform var(--lux-fade-speed) var(--lux-ease),visibility 0s var(--lux-fade-speed);z-index:1}
.luxslider-effect-slide .luxslider-slide.luxslider-active{visibility:visible;transform:translateX(0);transition:transform var(--lux-fade-speed) var(--lux-ease),visibility 0s 0s;z-index:2}
.luxslider-effect-slide .luxslider-slide.luxslider-exit-left{transform:translateX(-100%);visibility:visible;z-index:1}

/* BG */
.luxslider-bg{position:absolute;inset:0;background-size:cover;background-position:center;will-change:transform;transform:scale(1)}

/* Overlay */
.luxslider-overlay{position:absolute;inset:0;z-index:2}

/* Accent line */
.luxslider-accent-line{position:absolute;left:50px;top:20%;width:1px;height:0;background:linear-gradient(to bottom,transparent,var(--lux-accent),transparent);z-index:3;opacity:0}
.luxslider-active .luxslider-accent-line{animation:luxLineGrow 1.2s .3s var(--lux-ease) forwards}
@keyframes luxLineGrow{from{height:0;opacity:0}to{height:35%;opacity:1}}

/* Corners */
.luxslider-corner{position:absolute;width:50px;height:50px;z-index:10;opacity:.3}
.luxslider-corner-tl{top:24px;left:24px;border-top:1px solid var(--lux-accent);border-left:1px solid var(--lux-accent)}
.luxslider-corner-tr{top:24px;right:24px;border-top:1px solid var(--lux-accent);border-right:1px solid var(--lux-accent)}
.luxslider-corner-br{bottom:24px;right:24px;border-bottom:1px solid var(--lux-accent);border-right:1px solid var(--lux-accent)}

/* Badge */
.luxslider-badge{position:absolute;top:32px;right:120px;z-index:10;opacity:0;animation:luxFade 1s 1.5s forwards}
.luxslider-badge-ring{width:80px;height:80px;border:1px solid rgba(201,169,110,.3);border-radius:50%;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(10,10,10,.6);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.luxslider-badge-text{font-size:8px;letter-spacing:2px;text-transform:uppercase;color:var(--lux-accent);line-height:1.5}
.luxslider-badge-star{color:var(--lux-accent);font-size:12px;margin:1px 0}

/* Content — sits inside inner container */
.luxslider-content{position:absolute;left:0;right:0;bottom:0;top:0;display:flex;flex-direction:column;justify-content:center;z-index:5;max-width:var(--lux-content-width);padding:40px 0;margin-left:80px}
/* Inner container constraint — content stays within container width */
.luxslider-slide{--lux-pad:calc((100% - var(--lux-container-width)) / 2)}
.luxslider-content{margin-left:max(80px, calc(var(--lux-pad) + 40px))}
.luxslider-pos-center .luxslider-content{margin-left:auto;margin-right:auto;left:0;right:0;text-align:center;align-items:center}
.luxslider-pos-right .luxslider-content{margin-left:auto;margin-right:max(80px, calc(var(--lux-pad) + 40px));left:auto;right:0;text-align:right;align-items:flex-end}

/* Anim elements start hidden */
.luxslider-anim-el{opacity:0}

/* Text */
.luxslider-subtitle{font-family:'Montserrat',sans-serif;font-weight:500;font-size:12px;letter-spacing:5px;text-transform:uppercase;color:var(--lux-accent);margin-bottom:18px;display:flex;align-items:center;gap:14px}
.luxslider-subtitle-line{display:inline-block;width:35px;height:1px;background:var(--lux-accent);flex-shrink:0}
.luxslider-pos-center .luxslider-subtitle-line{display:none}
.luxslider-title{font-family:'Playfair Display',serif;font-size:clamp(36px,5.5vw,72px);font-weight:700;color:var(--lux-white);line-height:1.06;margin-bottom:20px}
.luxslider-title em{font-style:italic;color:var(--lux-accent);font-weight:400;opacity:.85}
.luxslider-desc{font-family:'Cormorant Garamond',serif;font-size:19px;font-weight:300;color:rgba(245,240,235,.65);line-height:1.7;max-width:480px;margin-bottom:28px;letter-spacing:.3px}

/* Buttons */
.luxslider-buttons{display:flex;gap:16px;align-items:center;flex-wrap:wrap}
.luxslider-btn{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font-family:'Montserrat',sans-serif;font-size:11px;font-weight:500;letter-spacing:3px;text-transform:uppercase;cursor:pointer;position:relative;overflow:hidden;transition:all .5s var(--lux-ease)}
.luxslider-btn-outline{padding:14px 32px;border:1px solid var(--lux-btn1-color);color:var(--lux-btn1-color);background:transparent}
.luxslider-btn-outline::before{content:'';position:absolute;inset:0;background:var(--lux-btn1-color);transform:translateX(-101%);transition:transform .5s var(--lux-ease);z-index:-1}
.luxslider-btn-outline:hover{color:var(--lux-black)}.luxslider-btn-outline:hover::before{transform:translateX(0)}
.luxslider-btn-secondary.luxslider-btn-outline{border-color:var(--lux-btn2-color);color:var(--lux-btn2-color)}.luxslider-btn-secondary.luxslider-btn-outline::before{background:var(--lux-btn2-color)}
.luxslider-btn-filled{padding:14px 32px;border:none;background:var(--lux-btn1-color);color:var(--lux-black)}.luxslider-btn-filled:hover{filter:brightness(1.15)}
.luxslider-btn-secondary.luxslider-btn-filled{background:var(--lux-btn2-color)}
.luxslider-btn-underline{padding:8px 0;border:none;background:transparent;color:var(--lux-btn1-color);border-bottom:1px solid var(--lux-btn1-color)}
.luxslider-btn-secondary.luxslider-btn-underline{color:var(--lux-btn2-color);border-color:var(--lux-btn2-color)}
.luxslider-btn-text{padding:8px 0;border:none;background:transparent;color:var(--lux-btn2-color)}.luxslider-btn-text:hover{opacity:.7}
.luxslider-btn-arrow{display:inline-block;width:24px;height:1px;background:currentColor;position:relative;transition:width .3s var(--lux-ease)}
.luxslider-btn-arrow::after{content:'';position:absolute;right:0;top:-4px;width:8px;height:8px;border-right:1px solid currentColor;border-top:1px solid currentColor;transform:rotate(45deg)}
.luxslider-btn:hover .luxslider-btn-arrow{width:32px}

/* Arrows */
.luxslider-nav{position:absolute;z-index:15;display:flex;gap:8px}
.luxslider-nav-btn{width:50px;height:50px;border:1px solid var(--lux-arrow-color);background:rgba(10,10,10,.5);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);color:var(--lux-arrow-color);cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .4s var(--lux-ease);padding:0}
.luxslider-nav-btn svg{width:18px;height:18px}
.luxslider-nav-btn:hover{background:var(--lux-arrow-hover-bg);color:var(--lux-arrow-hover-color);border-color:var(--lux-arrow-hover-bg)}
.luxslider-arrows-bottom-right .luxslider-nav{right:50px;bottom:36px}
.luxslider-arrows-sides .luxslider-nav{display:contents}
.luxslider-arrows-sides .luxslider-prev{position:absolute;left:20px;top:50%;transform:translateY(-50%);z-index:15}
.luxslider-arrows-sides .luxslider-next{position:absolute;right:20px;top:50%;transform:translateY(-50%);z-index:15}
.luxslider-arrows-bottom-center .luxslider-nav{bottom:36px;left:50%;transform:translateX(-50%)}

/* Bottom */
.luxslider-bottom{position:absolute;bottom:40px;left:max(80px, calc((100% - var(--lux-container-width)) / 2 + 40px));z-index:15;display:flex;align-items:center;gap:22px}
.luxslider-counter{font-family:'Playfair Display',serif;color:var(--lux-accent);min-width:56px}
.luxslider-counter-current{font-size:26px;font-weight:700;display:inline-block;transition:all .4s ease}
.luxslider-counter-sep{margin:0 5px;opacity:.4}
.luxslider-counter-total{font-size:13px;opacity:.5}

/* Progress */
.luxslider-progress{display:flex;gap:7px;align-items:center}
.luxslider-progress-bar{width:65px;height:2px;background:var(--lux-dot-inactive);position:relative;cursor:pointer;overflow:hidden;transition:width .3s var(--lux-ease)}
.luxslider-progress-bar:hover{width:85px}
.luxslider-progress-fill{position:absolute;left:0;top:0;height:100%;width:0%;background:var(--lux-dot-active)}
.luxslider-progress-bar.active .luxslider-progress-fill{animation:luxProgFill var(--lux-autoplay-speed) linear forwards}
.luxslider-progress-bar.done .luxslider-progress-fill{width:100%}
@keyframes luxProgFill{from{width:0%}to{width:100%}}
@keyframes luxFade{to{opacity:1}}

/* Dots */
.luxslider-dots{display:flex;gap:10px;align-items:center}
.luxslider-dot{border:none;cursor:pointer;padding:0;transition:all .4s var(--lux-ease);background:var(--lux-dot-inactive)}
.luxslider-dot.active{background:var(--lux-dot-active)}
.luxslider-dots-pill .luxslider-dot{width:8px;height:8px;border-radius:4px}.luxslider-dots-pill .luxslider-dot.active{width:28px}
.luxslider-dots-circle .luxslider-dot{width:12px;height:12px;border-radius:50%;background:transparent;border:1px solid var(--lux-dot-inactive)}.luxslider-dots-circle .luxslider-dot.active{background:var(--lux-dot-active);border-color:var(--lux-dot-active)}
.luxslider-dots-dash .luxslider-dot{width:24px;height:3px;border-radius:2px}.luxslider-dots-dash .luxslider-dot.active{width:40px}
.luxslider-dots-number .luxslider-dot{width:auto;height:auto;background:transparent;font-family:'Playfair Display',serif;font-size:14px;color:var(--lux-dot-inactive)}.luxslider-dots-number .luxslider-dot.active{color:var(--lux-dot-active);font-weight:700;font-size:20px}

/* Dots alignment */
.luxslider-dotsalign-left .luxslider-bottom{left:80px;right:auto}
.luxslider-dotsalign-center .luxslider-bottom{left:50%;right:auto;transform:translateX(-50%)}
.luxslider-dotsalign-right .luxslider-bottom{left:auto;right:80px}

/* Responsive */
@media(max-width:1024px){.luxslider-wrapper{height:var(--lux-height-t)}.luxslider-content{margin-left:max(40px, calc(var(--lux-pad) + 20px));max-width:var(--lux-content-width)}.luxslider-pos-right .luxslider-content{margin-right:max(40px, calc(var(--lux-pad) + 20px))}.luxslider-bottom{left:max(40px, calc((100% - var(--lux-container-width)) / 2 + 20px))}.luxslider-dotsalign-right .luxslider-bottom{right:40px}.luxslider-accent-line{left:24px}.luxslider-badge{display:none}}
@media(max-width:768px){.luxslider-wrapper{height:var(--lux-height-m);min-height:300px}.luxslider-content{margin-left:20px;margin-right:20px;max-width:var(--lux-content-width);justify-content:flex-end;padding-bottom:110px}.luxslider-pos-center .luxslider-content,.luxslider-pos-right .luxslider-content{margin-left:20px;margin-right:20px;text-align:left;align-items:flex-start}.luxslider-title{font-size:30px}.luxslider-desc{display:none}.luxslider-subtitle{font-size:10px;letter-spacing:3px}.luxslider-btn{font-size:10px;letter-spacing:2px}.luxslider-btn-outline,.luxslider-btn-filled{padding:11px 22px}.luxslider-arrows-bottom-right .luxslider-nav{right:20px}.luxslider-arrows-sides .luxslider-prev{left:10px}.luxslider-arrows-sides .luxslider-next{right:10px}.luxslider-nav-btn{width:42px;height:42px}.luxslider-bottom{left:20px;bottom:20px}.luxslider-dotsalign-center .luxslider-bottom{left:50%}.luxslider-dotsalign-right .luxslider-bottom{right:20px}.luxslider-accent-line{display:none}.luxslider-corner{width:28px;height:28px}.luxslider-progress-bar{width:40px}}
