@import "https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,300;0,400;0,600;0,700;1,400&family=Playfair+Display:ital,wght@0,600;0,700;1,400&display=swap";:root{--primary-dark:#0d3b2e;--primary-dark-rgb:13, 59, 46;--primary-mid:#1e7e4f;--primary-mid-rgb:30, 126, 79;--accent-green:#2a9d5c;--light-green:#e6f7ee;--white:#fff;--dark-text:#1a1a2e;--dark-text-2:#555;--gray-bg:#f7f9f8;--accent-warm:#e07b54;--accent-warm-rgb:224, 123, 84;--border-color:#e2e8f0;--whatsapp-color:#25d366;--telegram-color:#229ed9;--font-serif:"Playfair Display", Georgia, serif;--font-sans:"Montserrat", system-ui, -apple-system, sans-serif;--transition-fast:.15s ease;--transition-normal:.3s ease;--transition-slow:.5s ease;--transition-bounce:cubic-bezier(.175, .885, .32, 1.275);--shadow-sm:0 2px 4px #0000000d;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 12px 30px #0000001f;--shadow-premium:0 20px 40px #0d3b2e26;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-pill:9999px}*{box-sizing:border-box;margin:0;padding:0}html,body{font-family:var(--font-sans);color:var(--dark-text);background:var(--white);scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;line-height:1.7}body{overflow-x:hidden}#root{flex-direction:column;width:100%;min-height:100vh;display:flex}h1,h2{font-family:var(--font-serif);color:var(--primary-dark);font-weight:700}h3,h4,h5,h6{font-family:var(--font-sans);color:var(--primary-dark);font-weight:600}a{color:inherit;transition:var(--transition-fast);text-decoration:none}button{font-family:var(--font-sans);cursor:pointer;background:0 0;border:none;outline:none}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--gray-bg)}::-webkit-scrollbar-thumb{background:var(--primary-mid);border-radius:var(--radius-sm)}::-webkit-scrollbar-thumb:hover{background:var(--primary-dark)}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 24px}@media (width<=768px){.container{padding:0 16px}}.btn{border-radius:var(--radius-md);transition:var(--transition-normal);white-space:nowrap;justify-content:center;align-items:center;gap:8px;padding:12px 28px;font-size:15px;font-weight:600;display:inline-flex}.btn-primary{background:var(--primary-mid);color:var(--white);box-shadow:var(--shadow-sm)}.btn-primary:hover{background:var(--primary-dark);box-shadow:var(--shadow-premium);transform:translateY(-2px)}.btn-secondary{border:2px solid var(--accent-green);color:var(--primary-dark);background:0 0}.btn-secondary:hover{background:var(--light-green);border-color:var(--primary-mid);transform:translateY(-2px)}.btn-accent{background:var(--accent-warm);color:var(--white)}.btn-accent:hover{background:#cc653e;transform:translateY(-2px);box-shadow:0 6px 15px #e07b544d}.btn-whatsapp{background:var(--whatsapp-color);color:var(--white)}.btn-whatsapp:hover{background:#20b855;transform:translateY(-2px);box-shadow:0 6px 15px #25d3664d}.btn-telegram{background:var(--telegram-color);color:var(--white)}.btn-telegram:hover{background:#1b85b8;transform:translateY(-2px);box-shadow:0 6px 15px #229ed94d}.badge{border-radius:var(--radius-pill);text-transform:uppercase;letter-spacing:.5px;padding:4px 12px;font-size:12px;font-weight:700;display:inline-block}.badge-accent{background:var(--accent-warm);color:var(--white)}.badge-green{background:var(--light-green);color:var(--primary-mid)}.form-group{flex-direction:column;gap:8px;width:100%;margin-bottom:20px;display:flex}.form-group label{color:var(--primary-dark);font-size:14px;font-weight:600}.form-control{border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-sans);background:var(--white);transition:var(--transition-fast);padding:12px 16px;font-size:15px}.form-control:focus{border-color:var(--accent-green);outline:none;box-shadow:0 0 0 3px #2a9d5c1a}.card{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-normal);border:1px solid #0000000d;overflow:hidden}.card:hover{box-shadow:var(--shadow-premium);transform:translateY(-6px)}.swiper-pagination-bullet-active{background:var(--primary-mid)!important}.scroll-progress{background:var(--accent-green);z-index:10000;height:3px;transition:width .1s ease-out;position:fixed;top:0;left:0}.floating-messengers{z-index:9999;flex-direction:column;gap:12px;display:flex;position:fixed;bottom:24px;right:24px}.floating-btn{width:56px;height:56px;box-shadow:var(--shadow-lg);transition:var(--transition-bounce);color:var(--white);border-radius:50%;justify-content:center;align-items:center;display:flex}.floating-btn:hover{transform:scale(1.1)rotate(5deg)}.floating-btn.whatsapp{background:var(--whatsapp-color)}.floating-btn.telegram{background:var(--telegram-color)}.fade-up-init{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(30px)}.fade-up-active{opacity:1;transform:translateY(0)}.main-header{z-index:1000;width:100%;height:90px;transition:all var(--transition-normal);background:0 0;border-bottom:1px solid #ffffff1a;align-items:center;display:flex;position:fixed;top:0;left:0}.main-header.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);height:75px;box-shadow:var(--shadow-md);border-bottom:1px solid var(--border-color);background:#fffffff2}.header-container{justify-content:space-between;align-items:center;height:100%;display:flex}.logo-area{align-items:center;height:100%;display:flex}.logo-svg{width:auto;height:50px}.main-header:not(.scrolled) .logo-text{fill:#fff!important}.main-header.scrolled .logo-text{fill:var(--primary-dark)!important}.desktop-nav{gap:24px;display:flex}.nav-link{color:#ffffffd9;letter-spacing:.3px;padding:8px 0;font-size:14px;font-weight:600;position:relative}.main-header.scrolled .nav-link{color:var(--primary-dark)}.nav-link:after{content:"";background:var(--accent-green);width:0;height:2px;transition:var(--transition-normal);position:absolute;bottom:0;left:0}.nav-link:hover{color:#fff}.main-header.scrolled .nav-link:hover{color:var(--primary-mid)}.nav-link:hover:after,.nav-link.active:after{width:100%}.nav-link.active{color:#fff;font-weight:700}.main-header.scrolled .nav-link.active{color:var(--primary-mid)}.header-actions{align-items:center;gap:16px;display:flex}.btn-book-header{padding:10px 20px;font-size:14px}.mobile-menu-btn{color:#fff;transition:var(--transition-fast);display:none}.main-header.scrolled .mobile-menu-btn{color:var(--primary-dark)}.mobile-drawer-overlay{-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);z-index:1001;opacity:0;pointer-events:none;width:100vw;height:100vh;transition:opacity var(--transition-normal);background:#00000080;position:fixed;top:0;left:0}.mobile-drawer-overlay.open{opacity:1;pointer-events:auto}.mobile-drawer{background:var(--white);width:300px;height:100vh;box-shadow:var(--shadow-lg);z-index:1002;transition:right var(--transition-normal) var(--transition-bounce);flex-direction:column;padding:24px;display:flex;position:fixed;top:0;right:-320px}.mobile-drawer.open{right:0}.drawer-header{border-bottom:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;display:flex}.drawer-title{font-family:var(--font-serif);color:var(--primary-dark);font-size:24px;font-weight:700}.drawer-close{color:var(--primary-dark)}.drawer-nav{flex-direction:column;gap:20px;display:flex}.drawer-link{color:var(--dark-text);border-bottom:1px solid #00000008;padding:8px 0;font-size:16px;font-weight:600}.drawer-link:hover,.drawer-link.active{color:var(--primary-mid);padding-left:8px}.drawer-book-btn{width:100%;margin-top:16px}@media (width<=1024px){.desktop-nav{display:none}.mobile-menu-btn{display:block}}@media (width<=480px){.btn-book-header{display:none}}.main-footer{background:var(--primary-dark);color:#ffffffbf;border-top:3px solid var(--accent-green);padding:80px 0 0;font-size:14px}.footer-grid{grid-template-columns:2fr 1fr 1fr 1.5fr;gap:40px;margin-bottom:50px;display:grid}.brand-col{flex-direction:column;gap:20px;display:flex}.footer-logo{display:inline-block}.footer-desc{color:#ffffffb3;line-height:1.7}.social-icons{gap:12px;display:flex}.social-link{width:40px;height:40px;color:var(--white);transition:var(--transition-normal);background:#ffffff0d;border:1px solid #ffffff1a;border-radius:50%;justify-content:center;align-items:center;display:flex}.social-link:hover{background:var(--accent-green);color:var(--white);transform:translateY(-3px);box-shadow:0 4px 10px #2a9d8f4d}.footer-col h3{color:var(--white);font-family:var(--font-sans);margin-bottom:24px;padding-bottom:8px;font-size:18px;font-weight:700;position:relative}.footer-col h3:after{content:"";background:var(--accent-green);width:30px;height:2px;position:absolute;bottom:0;left:0}.footer-links{flex-direction:column;gap:12px;list-style:none;display:flex}.footer-links a{color:#ffffffb3;transition:var(--transition-fast)}.footer-links a:hover{color:var(--accent-green);padding-left:6px}.admin-login-link{opacity:.5;font-size:12px}.admin-login-link:hover{opacity:1;color:var(--accent-warm)!important}.footer-contacts{flex-direction:column;gap:16px;list-style:none;display:flex}.footer-contacts li{align-items:flex-start;gap:12px;line-height:1.5;display:flex}.contact-icon{color:var(--accent-green);flex-shrink:0;margin-top:2px}.footer-contacts a{color:inherit;transition:var(--transition-fast)}.footer-contacts a:hover{color:var(--white)}.footer-map-container{box-shadow:var(--shadow-lg);border:1px solid #ffffff1a;border-radius:12px;margin-bottom:40px;overflow:hidden}.footer-bottom{background:#0003;border-top:1px solid #ffffff14;padding:24px 0}.footer-bottom-content{color:#ffffff80;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;font-size:13px;display:flex}.developer-tag a{color:var(--accent-green);font-weight:600}.developer-tag a:hover{color:var(--white)}@media (width<=992px){.footer-grid{grid-template-columns:1fr 1fr;gap:30px}}@media (width<=576px){.main-footer{padding:60px 0 0}.footer-grid{grid-template-columns:1fr;gap:30px}.footer-bottom-content{text-align:center;flex-direction:column}}.quick-booking-container{background:var(--white);border-radius:var(--radius-lg);width:100%;box-shadow:var(--shadow-lg);padding:40px;position:relative;overflow:hidden}.quick-booking-container:before{content:"";background:var(--accent-warm);width:100%;height:5px;position:absolute;top:0;left:0}.quick-booking-form{flex-direction:column;display:flex}.form-header{text-align:center;margin-bottom:24px}.form-header h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:6px;font-size:28px;font-weight:700}.form-header p{color:var(--dark-text-2);font-size:14px}.booking-grid{grid-template-columns:1fr 1fr 1fr 1.2fr;gap:20px;margin-bottom:20px;display:grid}.form-group-booking{flex-direction:column;gap:8px;display:flex}.form-group-booking label{color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;align-items:center;gap:6px;font-size:13px;font-weight:600;display:flex}.form-control-booking{border:1px solid var(--border-color);border-radius:var(--radius-md);font-family:var(--font-sans);background:var(--gray-bg);transition:var(--transition-fast);color:var(--dark-text);outline:none;height:48px;padding:12px 14px;font-size:14px}.form-control-booking:focus{border-color:var(--primary-mid);background:var(--white);box-shadow:0 0 0 3px #1e7e4f1a}.stepper-row{gap:16px;display:flex;flex-direction:row!important}.stepper-col{flex-direction:column;flex:1;gap:8px;display:flex}.stepper{border:1px solid var(--border-color);border-radius:var(--radius-md);background:var(--gray-bg);align-items:center;height:48px;display:flex;overflow:hidden}.stepper button{height:100%;color:var(--primary-dark);transition:var(--transition-fast);background:0 0;flex:1;justify-content:center;align-items:center;font-size:18px;font-weight:600;display:flex}.stepper button:hover{background:#1e7e4f1a}.stepper span{text-align:center;color:var(--primary-dark);flex:1.2;font-size:15px;font-weight:700}.personal-details-row{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:24px;display:grid}.btn-booking-submit{text-transform:uppercase;letter-spacing:1px;width:100%;height:52px;font-size:16px}.privacy-terms-text{color:var(--dark-text-2);text-align:center;margin-top:14px;font-size:12px}.privacy-terms-text a{color:var(--primary-mid);text-decoration:underline}.booking-error-alert{border:1px solid var(--accent-warm);color:var(--accent-warm);border-radius:var(--radius-md);text-align:center;background:#e07b541a;margin-bottom:20px;padding:12px 16px;font-size:14px;font-weight:600}.booking-success-message{text-align:center;flex-direction:column;justify-content:center;align-items:center;padding:40px 10px;display:flex}.success-icon{color:var(--primary-mid);margin-bottom:20px}.booking-success-message h2{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:12px;font-size:32px}.booking-success-message p{color:var(--dark-text-2);max-width:500px;font-size:16px}.animate-success{animation:scaleUp .5s var(--transition-bounce) both}@keyframes scaleUp{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@media (width<=992px){.booking-grid{grid-template-columns:1fr 1fr}}@media (width<=768px){.quick-booking-container{padding:24px 16px}.personal-details-row{grid-template-columns:1fr;gap:16px}}@media (width<=576px){.booking-grid{grid-template-columns:1fr;gap:16px}}.home-page-container{width:100%}.hero-section{width:100%;height:100vh;color:var(--white);text-align:center;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.hero-bg-slide{opacity:0;z-index:1;background-position:50%;background-size:cover;width:100%;height:100%;transition:opacity 1.5s ease-in-out,transform 8s linear;position:absolute;top:0;left:0;transform:scale(1.05)}.hero-bg-slide.active{opacity:1;z-index:2;transform:scale(1)}.hero-overlay{z-index:3;background:#0d3b2e73;width:100%;height:100%;position:absolute;top:0;left:0}.hero-content{z-index:4;flex-direction:column;align-items:center;max-width:800px;padding-top:80px;display:flex;position:relative}.hero-subtitle{font-family:var(--font-sans);letter-spacing:3px;color:var(--white);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);text-transform:uppercase;background:#e07b542e;border:1.5px solid #e07b5499;align-items:center;gap:10px;margin-bottom:24px;padding:8px 24px;font-size:13px;font-weight:700;animation:.8s both fadeInDown;display:inline-flex;box-shadow:0 4px 15px #e07b5440}.hero-title{font-family:var(--font-serif);color:var(--white);text-shadow:0 4px 12px #0009;margin-bottom:24px;font-size:54px;font-weight:700;line-height:1.2;animation:.8s .2s both fadeInUp}.hero-desc{color:#ffffffe6;text-shadow:0 2px 6px #00000080;max-width:700px;margin-bottom:36px;font-size:18px;line-height:1.6;animation:.8s .4s both fadeInUp}.hero-btn-row{justify-content:center;gap:16px;width:100%;animation:.8s .6s both fadeInUp;display:flex}.btn-hero-book{padding:15px 36px;font-size:16px}.btn-hero-more{color:var(--white);border-color:#ffffffb3;padding:15px 36px;font-size:16px}.btn-hero-more:hover{border-color:var(--white);background:#ffffff26}.hero-scroll-indicator{z-index:5;cursor:pointer;opacity:.8;transition:opacity var(--transition-fast);position:absolute;bottom:30px;left:50%;transform:translate(-50%)}.hero-scroll-indicator:hover{opacity:1}.scroll-arrow{border-bottom:2px solid var(--white);border-right:2px solid var(--white);width:24px;height:24px;animation:1.8s infinite scrollPulse;transform:rotate(45deg)}@keyframes scrollPulse{0%{opacity:.3;transform:rotate(45deg)translate(0)}50%{opacity:1}to{opacity:.3;transform:rotate(45deg)translate(8px,8px)}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.services-mini-nav{background:var(--gray-bg);padding:80px 0}.services-nav-grid{grid-template-columns:repeat(6,1fr);gap:16px;display:grid}.service-nav-card{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:150px;padding:24px 16px;display:flex;position:relative}.card-top-line{background:var(--accent-green);opacity:0;width:100%;height:4px;transition:var(--transition-normal);position:absolute;top:0;left:0}.service-nav-card:hover .card-top-line{opacity:1}.service-nav-card h3{font-family:var(--font-sans);color:var(--primary-dark);margin-bottom:8px;font-size:15px;font-weight:700}.service-nav-card p{color:var(--dark-text-2);font-size:11px;line-height:1.4}.booking-anchor-section{background:var(--white);z-index:10;margin-top:-120px;padding:60px 0;position:relative}.section-title-wrapper{text-align:center;margin-bottom:50px}.title-sub{letter-spacing:3px;color:var(--primary-mid);text-transform:uppercase;margin-bottom:8px;font-size:12px;font-weight:700;display:block}.section-title-wrapper h2{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:16px;font-size:38px;font-weight:700}.title-divider{background:var(--accent-warm);width:60px;height:3px;margin:0 auto}.title-divider-left{background:var(--accent-warm);width:45px;height:3px;margin:16px 0 24px}.benefits-section{background:var(--gray-bg);padding:80px 0}.benefits-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.benefit-item{text-align:center;background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);transition:var(--transition-normal);border:1px solid #00000008;flex-direction:column;align-items:center;padding:30px 20px;display:flex}.benefit-item:hover{box-shadow:var(--shadow-md);transform:translateY(-4px)}.benefit-icon-wrapper{background:var(--light-green);width:60px;height:60px;color:var(--primary-mid);border-radius:50%;justify-content:center;align-items:center;margin-bottom:20px;display:flex}.benefit-item h4{color:var(--primary-dark);margin-bottom:12px;font-size:18px;font-weight:700}.benefit-item p{color:var(--dark-text-2);font-size:14px;line-height:1.6}.rooms-promo-section{background:var(--white);padding:80px 0}.rooms-promo-grid{grid-template-columns:repeat(3,1fr);gap:30px;margin-bottom:40px;display:grid}.room-promo-card{flex-direction:column;height:100%;display:flex}.room-card-img-wrapper{width:100%;height:240px;position:relative;overflow:hidden}.room-card-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.room-promo-card:hover .room-card-img-wrapper img{transform:scale(1.08)}.room-card-price-overlay{color:var(--white);border-radius:var(--radius-sm);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0d3b2ed9;padding:6px 14px;font-size:13px;font-weight:700;position:absolute;bottom:16px;left:16px}.room-promo-card-body{flex-direction:column;flex-grow:1;padding:24px;display:flex}.room-promo-card-body h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:8px;font-size:22px;font-weight:700}.room-card-details{color:var(--primary-mid);margin-bottom:12px;font-size:12px;font-weight:600}.room-card-desc-short{color:var(--dark-text-2);flex-grow:1;margin-bottom:24px;font-size:14px;line-height:1.6}.room-promo-actions{gap:12px;display:flex}.room-promo-actions .btn{flex:1;padding:10px 14px;font-size:13px}.center-cta-row{justify-content:center;margin-top:30px;display:flex}.btn-all-rooms{padding:14px 32px;font-size:15px}.about-resort-section{background:var(--gray-bg);padding:100px 0}.about-grid{grid-template-columns:1fr 1fr;align-items:center;gap:60px;display:grid}.about-visuals{width:100%;height:480px;display:flex;position:relative}.about-img-box{border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);border:4px solid var(--white);overflow:hidden}.about-img-box img{object-fit:cover;width:100%;height:100%}.img-large{z-index:2;width:80%;height:85%}.img-small{z-index:3;width:45%;height:50%;position:absolute;bottom:0;right:0}.about-text-content{flex-direction:column;display:flex}.about-text-content h2{font-family:var(--font-serif);margin-bottom:20px;font-size:36px;line-height:1.3}.about-text-content p{color:var(--dark-text-2);margin-bottom:20px;font-size:15px;line-height:1.8}.about-stats-row{grid-template-columns:repeat(3,1fr);gap:16px;margin-top:20px;display:grid}.stat-card{background:var(--white);text-align:center;border-radius:var(--radius-md);box-shadow:var(--shadow-sm);border:1px solid #00000005;padding:20px 10px}.stat-num{font-family:var(--font-serif);color:var(--primary-mid);margin-bottom:4px;font-size:32px;font-weight:700;display:block}.stat-lbl{color:var(--dark-text-2);text-transform:uppercase;letter-spacing:.5px;font-size:11px;font-weight:600}.testimonials-section{background:var(--white);padding:80px 0}.review-carousel-card{text-align:center;flex-direction:column;align-items:center;max-width:700px;margin:0 auto;padding:40px;display:flex}.review-stars{gap:4px;margin-bottom:20px;display:flex}.review-text{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:24px;font-size:20px;font-style:italic;line-height:1.6}.review-author-info h4{color:var(--primary-dark);margin-bottom:4px;font-size:16px;font-weight:700}.review-author-info span{color:var(--dark-text-2);font-size:12px}.review-controls{border-top:1px solid var(--border-color);justify-content:center;align-items:center;gap:20px;width:100%;margin-top:30px;padding-top:20px;display:flex}.control-btn{background:var(--light-green);width:36px;height:36px;color:var(--primary-mid);transition:var(--transition-fast);border-radius:50%;justify-content:center;align-items:center;font-size:22px;font-weight:700;display:flex}.control-btn:hover{background:var(--primary-mid);color:var(--white)}.carousel-dot-indicator{color:var(--primary-dark);font-size:14px;font-weight:600}.promo-preview-section{background:var(--gray-bg);padding:80px 0}.promo-preview-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.promo-card{flex-direction:column;display:flex}.promo-img-wrapper{width:100%;height:240px;position:relative;overflow:hidden}.promo-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.promo-card:hover .promo-img-wrapper img{transform:scale(1.05)}.promo-badge{position:absolute;top:16px;left:16px}.promo-card-body{flex-direction:column;flex-grow:1;padding:24px;display:flex}.promo-card-body h3{color:var(--primary-dark);margin-bottom:8px;font-size:20px;font-weight:700}.promo-date-limit{color:var(--accent-warm);text-transform:uppercase;margin-bottom:12px;font-size:12px;font-weight:700}.promo-card-desc{color:var(--dark-text-2);flex-grow:1;margin-bottom:24px;font-size:14px;line-height:1.6}.btn-promo-card-action{align-self:flex-start}.contacts-preview-section{background:var(--white);padding:80px 0}.contacts-preview-grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:50px;display:grid}.contacts-preview-info{flex-direction:column;display:flex}.contacts-p-text{color:var(--dark-text-2);margin-bottom:30px;font-size:15px;line-height:1.7}.preview-contact-details{flex-direction:column;gap:20px;margin-bottom:30px;display:flex}.contact-detail-item{align-items:flex-start;gap:16px;display:flex}.detail-icon{color:var(--primary-mid);flex-shrink:0;margin-top:4px}.contact-detail-item h4{color:var(--primary-dark);margin-bottom:4px;font-size:16px;font-weight:700}.contact-detail-item p{color:var(--dark-text-2);font-size:14px}.contact-detail-item p a{color:inherit;font-weight:600}.quick-action-socials-row{gap:12px;display:flex}.contacts-preview-map{width:100%;height:400px;box-shadow:var(--shadow-lg);border:1px solid var(--border-color);border-radius:16px;overflow:hidden}@media (width<=1200px){.services-nav-grid{grid-template-columns:repeat(3,1fr)}.booking-anchor-section{margin-top:-60px}}@media (width<=992px){.hero-title{font-size:40px}.hero-desc{font-size:16px}.benefits-grid{grid-template-columns:repeat(2,1fr)}.rooms-promo-grid{grid-template-columns:1fr 1fr}.about-grid{grid-template-columns:1fr;gap:40px}.about-visuals{height:380px}.promo-preview-grid{grid-template-columns:1fr}.contacts-preview-grid{grid-template-columns:1fr;gap:40px}}@media (width<=768px){.hero-section{height:auto;min-height:85vh;padding-top:110px;padding-bottom:50px}.hero-btn-row{flex-direction:column;width:100%;max-width:280px}.services-nav-grid{grid-template-columns:repeat(2,1fr)}.benefits-grid,.rooms-promo-grid{grid-template-columns:1fr}}@media (width<=480px){.services-nav-grid{grid-template-columns:1fr}}.rooms-page-container{width:100%}.rooms-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1566073771259-6a8506099945?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.rooms-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.rooms-hero-content{z-index:5;position:relative}.breadcrumbs{color:#ffffffb3;margin-bottom:16px;font-size:13px;font-weight:600}.breadcrumbs a:hover{color:var(--accent-green)}.bc-sep{margin:0 8px}.bc-current{color:var(--white)}.rooms-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.rooms-subtitle{color:#ffffffd9;font-size:16px}.filter-tabs-section{background:var(--gray-bg);border-bottom:1px solid var(--border-color);padding:40px 0}.filter-tabs-row{flex-wrap:wrap;justify-content:center;gap:12px;display:flex}.filter-tab-btn{background:var(--white);border:1px solid var(--border-color);color:var(--primary-dark);border-radius:var(--radius-pill);transition:var(--transition-normal);box-shadow:var(--shadow-sm);padding:10px 24px;font-size:14px;font-weight:600}.filter-tab-btn:hover{border-color:var(--primary-mid);color:var(--primary-mid);transform:translateY(-1px)}.filter-tab-btn.active{background:var(--primary-mid);color:var(--white);border-color:var(--primary-mid);box-shadow:0 4px 10px #1e7e4f33}.rooms-catalog-section{background:var(--white);padding:80px 0}.catalog-cards-wrapper{flex-direction:column;gap:60px;display:flex}.catalog-room-card{min-height:480px;box-shadow:var(--shadow-md);border-radius:var(--radius-lg);border:1px solid #00000008;grid-template-columns:1.2fr 1fr;display:grid;overflow:hidden}.catalog-room-slider{width:100%;height:100%;min-height:350px;position:relative;overflow:hidden}.slider-image{width:100%;height:100%;transition:transform var(--transition-slow);background-position:50%;background-size:cover}.catalog-room-card:hover .slider-image{transform:scale(1.02)}.slider-controls-overlay{z-index:10;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);border-radius:var(--radius-pill);color:var(--white);background:#0d3b2ecc;align-items:center;gap:16px;padding:6px 14px;display:flex;position:absolute;bottom:20px;left:50%;transform:translate(-50%)}.slider-arrow-btn{color:var(--white);transition:var(--transition-fast);padding:0 8px;font-size:22px;font-weight:700;line-height:1}.slider-arrow-btn:hover{color:var(--accent-green);transform:scale(1.2)}.slider-counter{letter-spacing:.5px;font-size:13px;font-weight:600}.room-price-tag{background:var(--accent-warm);color:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);z-index:10;padding:8px 18px;font-size:16px;font-weight:700;position:absolute;top:24px;left:24px}.catalog-room-details{flex-direction:column;justify-content:center;padding:40px;display:flex}.details-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.details-header h2{font-family:var(--font-serif);color:var(--primary-dark);font-size:28px;font-weight:700;line-height:1.2}.room-full-desc{color:var(--dark-text-2);margin-bottom:24px;font-size:14px;line-height:1.7}.room-layout-meta-row{border-bottom:1px solid var(--border-color);flex-wrap:wrap;gap:16px;margin-bottom:24px;padding-bottom:16px;display:flex}.meta-pill{color:var(--primary-mid);background:var(--light-green);border-radius:var(--radius-pill);align-items:center;gap:8px;padding:6px 14px;font-size:12px;font-weight:600;display:inline-flex}.room-amenities-section{margin-bottom:24px}.room-amenities-section h3{color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:700}.amenities-grid-box{grid-template-columns:1fr 1fr;gap:8px 16px;display:grid}.amenity-item-bullet{color:var(--dark-text-2);align-items:center;gap:8px;font-size:13px;display:flex}.bullet-check{color:var(--accent-green);flex-shrink:0}.sauna-pricing-details{background:var(--gray-bg);border-left:3px solid var(--accent-green);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:24px;padding:12px 16px}.cottage-highlight{color:var(--dark-text-2);font-size:12px;line-height:1.5}.room-catalog-actions-row{gap:16px;display:flex}.room-catalog-actions-row .btn{flex:1}.btn-catalog-booking-trigger{padding:12px 24px}.rooms-bottom-cta{background:var(--white);padding:0 0 80px}.bottom-cta-card{border-radius:var(--radius-lg);text-align:center;width:100%;color:var(--white);box-shadow:var(--shadow-lg);background-image:url(https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&q=80&w=1200);background-position:50%;background-size:cover;padding:60px 40px;position:relative;overflow:hidden}.bottom-cta-overlay{z-index:1;background:#0d3b2ed9;width:100%;height:100%;position:absolute;top:0;left:0}.bottom-cta-content{z-index:2;max-width:600px;margin:0 auto;position:relative}.bottom-cta-content h2{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:36px}.bottom-cta-content p{color:#ffffffd9;margin-bottom:24px;font-size:15px;line-height:1.6}.bottom-cta-buttons-row{justify-content:center;gap:16px;display:flex}.bottom-cta-buttons-row .btn{padding:12px 28px;font-size:15px}.room-booking-modal-overlay{-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);z-index:2000;background:#0009;justify-content:center;align-items:center;width:100vw;height:100vh;padding:20px;display:flex;position:fixed;top:0;left:0}.room-booking-modal{background:var(--white);border-radius:var(--radius-lg);width:100%;max-width:750px;box-shadow:var(--shadow-lg);max-height:90vh;animation:.3s cubic-bezier(.175,.885,.32,1.275) both modalScaleUp;position:relative;overflow-y:auto}.modal-close-btn{color:var(--primary-dark);z-index:2010;transition:var(--transition-fast);font-size:32px;font-weight:300;position:absolute;top:16px;right:20px}.modal-close-btn:hover{color:var(--accent-warm)}@keyframes modalScaleUp{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@media (width<=992px){.catalog-room-card{grid-template-columns:1fr;min-height:auto}.catalog-room-slider{height:300px;min-height:auto}.catalog-room-details{padding:30px 20px}}@media (width<=768px){.rooms-hero-section{height:300px}.rooms-title{font-size:32px}.rooms-subtitle{font-size:14px}.amenities-grid-box{grid-template-columns:1fr}.room-catalog-actions-row{flex-direction:column;gap:12px}.room-catalog-actions-row .btn{width:100%}.bottom-cta-buttons-row{flex-direction:column;align-items:center}.bottom-cta-buttons-row .btn{width:100%;max-width:250px}}.booking-modal-overlay{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:9999;background:#0f172abf;justify-content:center;align-items:center;padding:1.5rem;display:flex;position:fixed;inset:0}.booking-modal-card{background:#fff;border-radius:20px;flex-direction:column;width:100%;max-width:800px;max-height:90vh;animation:.3s ease-out modalFadeIn;display:flex;overflow:hidden;box-shadow:0 25px 50px -12px #00000040}@keyframes modalFadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.booking-modal-header{background:#f8fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;align-items:flex-start;padding:1.5rem 2rem;display:flex}.booking-badge{color:#166534;background:#dcfce7;border-radius:20px;margin-bottom:6px;padding:4px 10px;font-size:.75rem;font-weight:700;display:inline-block}.booking-modal-title{color:#0f172a;margin:0;font-size:1.5rem;font-weight:800}.booking-close-btn{color:#64748b;cursor:pointer;background:0 0;border:none;font-size:2rem}.booking-steps-bar{color:#94a3b8;background:#0f172a;padding:.75rem 1rem;font-size:.85rem;display:flex}.step-item{text-align:center;flex:1;padding:6px}.step-item.active{color:#38bdf8;border-bottom:2px solid #38bdf8;font-weight:700}.booking-modal-body{padding:2rem;overflow-y:auto}.category-tabs{gap:10px;margin-bottom:1.5rem;display:flex}.cat-tab{cursor:pointer;background:#f8fafc;border:1px solid #e2e8f0;border-radius:10px;padding:8px 16px;font-weight:600}.cat-tab.active{color:#fff;background:#059669;border-color:#059669}.services-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:15px;display:grid}.service-card{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;padding:1.25rem;transition:all .2s}.service-card:hover{border-color:#059669;transform:translateY(-2px);box-shadow:0 10px 15px -3px #0000001a}.srv-header{justify-content:space-between;align-items:flex-start;margin-bottom:8px;display:flex}.srv-price{color:#059669;font-weight:800}.srv-desc{color:#64748b;margin-bottom:12px;font-size:.85rem}.specialists-list{flex-direction:column;gap:12px;margin-top:1rem;display:flex}.specialist-card{cursor:pointer;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:15px;padding:1rem;display:flex}.spec-avatar{object-fit:cover;border-radius:50%;width:60px;height:60px}.spec-info{flex:1}.btn-select-spec{color:#fff;cursor:pointer;background:#0f172a;border:none;border-radius:8px;padding:8px 16px}.slots-grid{grid-template-columns:repeat(4,1fr);gap:10px;margin-top:1.5rem;display:grid}.slot-chip{cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:10px;flex-direction:column;align-items:center;padding:12px;display:flex}.slot-chip.available{background:#ecfdf5;border-color:#10b981}.slot-chip.disabled{opacity:.5;cursor:not-allowed}.form-group{margin-bottom:1rem}.form-group input,.form-group textarea{border:1px solid #cbd5e1;border-radius:8px;width:100%;padding:10px 14px;font-size:1rem}.btn-submit-booking,.btn-primary{color:#fff;cursor:pointer;background:#059669;border:none;border-radius:10px;width:100%;margin-top:1rem;padding:14px;font-size:1.1rem;font-weight:700}.back-btn{color:#64748b;cursor:pointer;background:0 0;border:none;margin-bottom:1rem;font-weight:600}.spa-page-container{width:100%}.spa-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.spa-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.spa-hero-content{z-index:5;position:relative}.spa-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.spa-subtitle{color:#ffffffd9;font-size:16px}.spa-intro-section{background:var(--white);padding:80px 0}.intro-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:50px;display:grid}.intro-text p{color:var(--dark-text-2);margin-bottom:20px;font-size:15px;line-height:1.8}.intro-visuals img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:320px;box-shadow:var(--shadow-lg);border:4px solid var(--white)}.spa-menu-section{background:var(--gray-bg);padding:80px 0}.spa-tabs-row{flex-wrap:wrap;justify-content:center;gap:12px;margin-bottom:40px;display:flex}.spa-tab-btn{background:var(--white);border:1px solid var(--border-color);color:var(--primary-dark);border-radius:var(--radius-pill);transition:var(--transition-normal);box-shadow:var(--shadow-sm);padding:10px 24px;font-size:14px;font-weight:600}.spa-tab-btn:hover{border-color:var(--primary-mid);color:var(--primary-mid);transform:translateY(-1px)}.spa-tab-btn.active{background:var(--primary-mid);color:var(--white);border-color:var(--primary-mid);box-shadow:0 4px 10px #1e7e4f33}.spa-services-grid{grid-template-columns:repeat(2,1fr);gap:30px;display:grid}.spa-service-card{flex-direction:column;height:100%;display:flex}.service-card-body{flex-direction:column;height:100%;padding:30px;display:flex}.service-card-header{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:14px;display:flex}.service-card-header h3{color:var(--primary-dark);font-size:20px;font-weight:700;line-height:1.3}.service-price{color:var(--accent-warm);white-space:nowrap;font-size:18px;font-weight:700}.service-desc{color:var(--dark-text-2);flex-grow:1;margin-bottom:24px;font-size:14px;line-height:1.6}.service-meta-row{border-top:1px solid var(--border-color);justify-content:space-between;align-items:center;margin-top:auto;padding-top:16px;display:flex}.meta-item{color:var(--primary-mid);align-items:center;gap:8px;font-size:13px;font-weight:600;display:flex}.btn-service-book{padding:8px 18px;font-size:13px}.spa-prep-section{background:var(--white);padding:80px 0}.prep-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.prep-item{text-align:center;flex-direction:column;align-items:center;height:100%;padding:40px 30px;display:flex;position:relative}.prep-num{font-family:var(--font-serif);color:#1e7e4f26;margin-bottom:12px;font-size:48px;font-weight:700;line-height:1}.prep-item h4{color:var(--primary-dark);margin-bottom:12px;font-size:18px;font-weight:700}.prep-item p{color:var(--dark-text-2);font-size:14px;line-height:1.6}.spa-booking-section{background:var(--gray-bg);padding:80px 0}.spa-booking-container{max-width:800px;margin:0 auto;padding:40px;position:relative;overflow:hidden}.spa-booking-container:before{content:"";background:var(--accent-warm);width:100%;height:5px;position:absolute;top:0;left:0}.spa-booking-grid{grid-template-columns:1.5fr 1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.spa-personal-grid{grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px;display:grid}.btn-spa-submit{text-transform:uppercase;letter-spacing:.5px;width:100%;height:50px;font-size:15px}@media (width<=992px){.intro-grid{grid-template-columns:1fr;gap:40px}.intro-visuals img{height:380px}.spa-services-grid,.prep-grid,.spa-booking-grid,.spa-personal-grid{grid-template-columns:1fr}}@media (width<=768px){.spa-hero-section{height:300px}.spa-title{font-size:32px}.spa-subtitle{font-size:14px}.spa-booking-container{padding:24px 16px}}.restaurant-page-container{width:100%}.rest-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1544025162-d76694265947?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.rest-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.rest-hero-content{z-index:5;position:relative}.rest-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.rest-subtitle{color:#ffffffd9;font-size:16px}.rest-intro-section{background:var(--white);padding:80px 0}.rest-intro-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:50px;display:grid}.rest-intro-text p{color:var(--dark-text-2);margin-bottom:24px;font-size:15px;line-height:1.8}.working-hours-card{background:var(--light-green);border-radius:var(--radius-md);border-left:4px solid var(--primary-mid);align-items:flex-start;gap:16px;padding:24px;display:flex}.hours-icon{color:var(--primary-mid);flex-shrink:0;margin-top:2px}.working-hours-card h4{color:var(--primary-dark);margin-bottom:6px;font-size:16px;font-weight:700}.working-hours-card p{color:var(--dark-text);margin-bottom:4px;font-size:14px;line-height:1.5}.rest-intro-visuals img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:350px;box-shadow:var(--shadow-lg);border:4px solid var(--white)}.digital-menu-section{background:var(--gray-bg);padding:80px 0}.menu-controls-row{background:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--border-color);flex-direction:column;gap:24px;margin-bottom:40px;padding:24px;display:flex}.menu-search-wrapper{width:100%;position:relative}.search-icon{color:var(--primary-mid);position:absolute;top:50%;left:16px;transform:translateY(-50%)}.menu-search-input{border:1px solid var(--border-color);border-radius:var(--radius-md);width:100%;font-family:var(--font-sans);background:var(--gray-bg);transition:var(--transition-fast);outline:none;padding:14px 14px 14px 48px;font-size:15px}.menu-search-input:focus{border-color:var(--primary-mid);background:var(--white);box-shadow:0 0 0 3px #1e7e4f1a}.menu-categories-tabs{flex-wrap:wrap;justify-content:center;gap:10px;display:flex}.menu-tab-btn{background:var(--gray-bg);border:1px solid var(--border-color);color:var(--primary-dark);border-radius:var(--radius-pill);transition:var(--transition-normal);padding:8px 20px;font-size:13px;font-weight:600}.menu-tab-btn:hover{border-color:var(--primary-mid);color:var(--primary-mid)}.menu-tab-btn.active{background:var(--primary-mid);color:var(--white);border-color:var(--primary-mid);box-shadow:0 4px 8px #1e7e4f33}.digital-menu-grid{grid-template-columns:repeat(2,1fr);gap:30px;display:grid}.menu-item-card{align-items:center;height:140px;display:flex;overflow:hidden}.menu-item-img-wrapper{flex-shrink:0;width:140px;height:100%;position:relative}.menu-item-img-wrapper img{object-fit:cover;width:100%;height:100%}.hit-badge{padding:2px 8px;font-size:9px;position:absolute;top:8px;left:8px}.menu-item-body{flex-direction:column;flex-grow:1;justify-content:center;padding:20px;display:flex;overflow:hidden}.menu-item-header{justify-content:space-between;align-items:baseline;gap:16px;margin-bottom:6px;display:flex}.menu-item-header h3{color:var(--primary-dark);white-space:nowrap;text-overflow:ellipsis;max-width:75%;font-size:16px;font-weight:700;overflow:hidden}.menu-item-price{color:var(--accent-warm);white-space:nowrap;font-size:16px;font-weight:700}.menu-item-desc{color:var(--dark-text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:12px;line-height:1.5;display:-webkit-box;overflow:hidden}.menu-empty-state{text-align:center;color:var(--dark-text-2);padding:60px 0}.empty-menu-icon{color:var(--primary-mid);opacity:.5;margin-bottom:16px}.menu-empty-state h3{color:var(--primary-dark);margin-bottom:8px;font-size:20px}.table-booking-section{background:var(--white);padding:80px 0}.table-booking-container{max-width:800px;margin:0 auto;padding:40px;position:relative;overflow:hidden}.table-booking-container:before{content:"";background:var(--accent-warm);width:100%;height:5px;position:absolute;top:0;left:0}.table-booking-grid{grid-template-columns:repeat(3,1fr);gap:20px;margin-bottom:20px;display:grid}.rest-stepper{background:var(--white);height:48px}.btn-table-submit{text-transform:uppercase;letter-spacing:.5px;width:100%;height:50px;font-size:15px}.rest-banquet-cta{background:var(--white);padding:0 0 80px}.rest-banquet-cta-box{border-radius:var(--radius-lg);text-align:center;width:100%;color:var(--white);box-shadow:var(--shadow-lg);background-image:url(https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?auto=format&fit=crop&q=80&w=1200);background-position:50%;background-size:cover;padding:60px 40px;position:relative;overflow:hidden}.banquet-cta-overlay{z-index:1;background:#0d3b2ed9;width:100%;height:100%;position:absolute;top:0;left:0}.banquet-cta-content{z-index:2;max-width:600px;margin:0 auto;position:relative}.banquet-cta-content h2{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:36px}.banquet-cta-content p{color:#ffffffd9;margin-bottom:24px;font-size:15px;line-height:1.6}@media (width<=992px){.rest-intro-grid{grid-template-columns:1fr;gap:40px}.rest-intro-visuals img{height:380px}.digital-menu-grid,.table-booking-grid{grid-template-columns:1fr}}@media (width<=768px){.rest-hero-section{height:300px}.rest-title{font-size:32px}.rest-subtitle{font-size:14px}.table-booking-container{padding:24px 16px}.menu-controls-row{gap:16px;padding:16px}.menu-tab-btn{padding:6px 14px;font-size:12px}.menu-item-header{flex-wrap:wrap;gap:8px}.menu-item-header h3{white-space:normal;max-width:100%;text-overflow:unset}}@media (width<=576px){.menu-item-card{flex-direction:column;align-items:flex-start;height:auto}.menu-item-img-wrapper{width:100%;height:160px}.menu-item-header h3{max-width:100%}}.pool-page-container{width:100%}.pool-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1571896349842-33c89424de2d?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.pool-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.pool-hero-content{z-index:5;position:relative}.pool-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.pool-subtitle{color:#ffffffd9;font-size:16px}.pool-specs-section{background:var(--white);padding:80px 0}.specs-grid{grid-template-columns:1fr 1.2fr;align-items:center;gap:50px;display:grid}.specs-visuals img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:400px;box-shadow:var(--shadow-lg);border:4px solid var(--white)}.specs-info p{color:var(--dark-text-2);margin-bottom:30px;font-size:15px;line-height:1.8}.specs-features-grid{grid-template-columns:1fr 1fr;gap:16px;display:grid}.spec-feature-pill{background:var(--gray-bg);border-radius:var(--radius-md);border-left:3px solid var(--primary-mid);flex-direction:column;padding:16px;display:flex}.spec-feature-lbl{color:var(--dark-text-2);text-transform:uppercase;letter-spacing:.5px;margin-bottom:4px;font-size:11px;font-weight:700}.spec-feature-val{color:var(--primary-dark);font-size:15px;font-weight:700}.pool-schedule-section{background:var(--white);padding:0 0 80px}.schedule-box-card{background:var(--primary-dark);color:var(--white);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);grid-template-columns:1fr 1fr;gap:40px;padding:40px;display:grid}.schedule-info-item{text-align:center;flex-direction:column;align-items:center;display:flex}.schedule-icon-spec{color:var(--accent-green);margin-bottom:16px}.schedule-info-item h3{color:var(--white);margin-bottom:10px;font-size:20px;font-weight:700}.schedule-info-item p{color:#fffc;font-size:14px;line-height:1.6}.schedule-info-item p strong{color:var(--accent-green)}.pool-pricing-section{background:var(--gray-bg);padding:80px 0}.pool-pricing-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}.pool-pricing-card{flex-direction:column;height:100%;padding:40px 30px;display:flex}.pricing-card-header{text-align:center;border-bottom:1px solid var(--border-color);margin-bottom:24px;padding-bottom:20px}.pricing-card-header h3{color:var(--primary-dark);margin-bottom:8px;font-size:20px;font-weight:700}.pricing-card-header p{color:var(--dark-text-2);font-size:13px}.pricing-prices-row{flex-direction:column;gap:16px;margin-bottom:24px;display:flex}.price-item{justify-content:space-between;align-items:center;display:flex}.price-label{color:var(--dark-text-2);font-size:13px;font-weight:600}.price-value{color:var(--accent-warm);font-size:20px;font-weight:700}.pricing-bullet-list{border-top:1px solid var(--border-color);flex-direction:column;gap:10px;margin-top:auto;padding-top:20px;display:flex}.pricing-bullet-list p{color:var(--dark-text-2);align-items:center;gap:8px;font-size:13px;display:flex}.pool-rules-section{background:var(--white);padding:80px 0}.accordion-wrapper{flex-direction:column;gap:16px;max-width:800px;margin:0 auto;display:flex}.accordion-item{padding:0;overflow:hidden}.accordion-trigger-btn{width:100%;font-family:var(--font-sans);color:var(--primary-dark);text-align:left;transition:var(--transition-fast);justify-content:space-between;align-items:center;padding:20px 24px;font-size:15px;font-weight:700;display:flex}.accordion-trigger-btn:hover{background:#1e7e4f08}.accordion-trigger-title{align-items:center;gap:12px;display:flex}.acc-q-icon{color:var(--primary-mid);flex-shrink:0}.accordion-body-content{border-top:1px solid var(--border-color);background:var(--gray-bg);padding:0 24px 24px 54px}.accordion-body-content p{color:var(--dark-text-2);padding-top:20px;font-size:14px;line-height:1.7}.animate-slide-down{animation:.3s ease-out both slideDown}@keyframes slideDown{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@media (width<=992px){.specs-grid{grid-template-columns:1fr;gap:40px}.specs-visuals img{height:350px}.schedule-box-card{grid-template-columns:1fr;gap:30px;padding:30px 20px}.pool-pricing-grid{grid-template-columns:1fr}}@media (width<=768px){.pool-hero-section{height:300px}.pool-title{font-size:32px}.pool-subtitle{font-size:14px}.specs-features-grid{grid-template-columns:1fr}}.banquet-page-container{width:100%}.banquet-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1464366400600-7168b8af9bc3?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.banquet-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.banquet-hero-content{z-index:5;position:relative}.banquet-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.banquet-subtitle{color:#ffffffd9;font-size:16px}.banquet-spaces-section{background:var(--white);padding:80px 0}.banquet-spaces-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.space-card{flex-direction:column;height:100%;display:flex}.space-img-wrapper{width:100%;height:280px;position:relative;overflow:hidden}.space-img-wrapper img{object-fit:cover;width:100%;height:100%;transition:transform var(--transition-slow)}.space-card:hover .space-img-wrapper img{transform:scale(1.03)}.space-body{flex-direction:column;flex-grow:1;padding:30px;display:flex}.space-body h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:12px;font-size:24px;font-weight:700}.space-stats{color:var(--primary-mid);gap:20px;margin-bottom:16px;font-size:13px;display:flex}.space-body p{color:var(--dark-text-2);flex-grow:1;margin-bottom:20px;font-size:14px;line-height:1.6}.space-features{border-top:1px solid var(--border-color);color:var(--dark-text-2);grid-template-columns:1fr 1fr;gap:8px;padding-top:16px;font-size:13px;display:grid}.banquet-calculator-section{background:var(--gray-bg);padding:80px 0}.calculator-grid{background:var(--white);border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-md);grid-template-columns:1.2fr 1fr;gap:40px;padding:40px;display:grid}.calculator-slider{border-radius:var(--radius-pill);background:var(--gray-bg);width:100%;height:6px;accent-color:var(--primary-mid);outline:none;margin-top:8px}.calculator-radio-group{flex-direction:column;gap:10px;display:flex}.radio-label{border:1px solid var(--border-color);border-radius:var(--radius-md);color:var(--primary-dark);cursor:pointer;transition:var(--transition-fast);background:var(--gray-bg);align-items:center;gap:12px;padding:12px 16px;font-size:14px;font-weight:600;display:flex}.radio-label:hover{border-color:var(--primary-mid);background:#1e7e4f05}.radio-label.active{border-color:var(--primary-mid);background:var(--light-green)}.radio-label input{accent-color:var(--primary-mid)}.calculator-results{background:var(--primary-dark);color:var(--white);border-radius:var(--radius-lg);flex-direction:column;justify-content:center;padding:40px 30px;display:flex}.calculator-results h3{color:var(--white);border-bottom:1px solid #ffffff1a;margin-bottom:24px;padding-bottom:12px;font-size:22px;font-weight:700}.result-item{color:#ffffffd9;justify-content:space-between;align-items:center;margin-bottom:16px;font-size:14px;display:flex}.result-item strong{color:var(--white);font-size:16px}.total-result-row{border-top:1px solid #ffffff1a;justify-content:space-between;align-items:center;margin-top:10px;margin-bottom:20px;padding-top:20px;display:flex}.total-result-row span{color:var(--accent-green);font-size:16px;font-weight:700}.total-result-row strong{color:var(--accent-green);font-size:26px;font-weight:700}.calculator-note{color:#ffffff80;font-size:11px;line-height:1.5}.banquet-form-section{background:var(--white);padding:80px 0}.banquet-form-container{max-width:800px;margin:0 auto;padding:40px;position:relative;overflow:hidden}.banquet-form-container:before{content:"";background:var(--accent-warm);width:100%;height:5px;position:absolute;top:0;left:0}.btn-banquet-submit{text-transform:uppercase;letter-spacing:.5px;width:100%;height:50px;font-size:15px}@media (width<=992px){.banquet-spaces-grid{grid-template-columns:1fr;gap:40px}.space-img-wrapper{height:240px}.calculator-grid{grid-template-columns:1fr}}@media (width<=768px){.banquet-hero-section{height:300px}.banquet-title{font-size:32px}.banquet-subtitle{font-size:14px}.banquet-form-container{padding:24px 16px}}.sauna-page-container{width:100%}.sauna-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1518780664697-55e3ad937233?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.sauna-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.sauna-hero-content{z-index:5;position:relative}.sauna-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.sauna-subtitle{color:#ffffffd9;font-size:16px}.sauna-intro-section{background:var(--white);padding:80px 0}.sauna-intro-grid{grid-template-columns:1.2fr 1fr;align-items:center;gap:50px;display:grid}.sauna-intro-text p{color:var(--dark-text-2);margin-bottom:24px;font-size:15px;line-height:1.8}.sauna-intro-visuals img{object-fit:cover;border-radius:var(--radius-lg);width:100%;height:350px;box-shadow:var(--shadow-lg);border:4px solid var(--white)}.sauna-cottages-section{background:var(--gray-bg);padding:80px 0}.sauna-cottage-card{box-shadow:var(--shadow-md);border-radius:var(--radius-lg);grid-template-columns:1.2fr 1fr;display:grid;overflow:hidden}.sauna-card-img{width:100%;height:100%;min-height:380px;position:relative}.sauna-card-img img{object-fit:cover;width:100%;height:100%}.sauna-card-price{background:var(--accent-warm);color:var(--white);border-radius:var(--radius-md);box-shadow:var(--shadow-md);padding:8px 18px;font-size:16px;font-weight:700;position:absolute;top:24px;left:24px}.sauna-card-details{padding:40px}.sauna-card-details h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:8px;font-size:26px;font-weight:700}.sauna-meta{color:var(--primary-mid);margin-bottom:16px;font-size:13px}.sauna-desc{color:var(--dark-text-2);margin-bottom:24px;font-size:14px;line-height:1.6}.sauna-price-list{background:var(--white);border-radius:var(--radius-md);border:1px solid var(--border-color);margin-bottom:24px;padding:20px}.sauna-price-list h4{color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:700}.sauna-price-row{justify-content:space-between;align-items:center;margin-bottom:8px;font-size:13px;display:flex}.sauna-price-row:last-child{margin-bottom:0}.sauna-price-row strong{color:var(--accent-warm);font-size:15px}.sauna-amenities-bullets h4{color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:14px;font-weight:700}.sauna-bullets-grid{color:var(--dark-text-2);grid-template-columns:1fr;gap:8px;margin-bottom:24px;font-size:13px;display:grid}.sauna-actions{gap:16px;display:flex}.sauna-actions .btn{flex:1}.sauna-inclusions-section{background:var(--white);padding:80px 0}.inclusions-grid{grid-template-columns:repeat(2,1fr);gap:30px;display:grid}.inclusion-card{flex-direction:column;align-items:flex-start;height:100%;padding:30px;display:flex}.inc-icon{color:var(--primary-mid);margin-bottom:16px}.inclusion-card h4{color:var(--primary-dark);margin-bottom:10px;font-size:18px;font-weight:700}.inclusion-card p{color:var(--dark-text-2);font-size:14px;line-height:1.6}.sauna-rules-section{background:var(--gray-bg);padding:80px 0}.sauna-rules-box{background:var(--white);max-width:800px;margin:0 auto;padding:32px 40px}.rule-row{border-bottom:1px solid var(--border-color);color:var(--dark-text);align-items:center;gap:14px;padding:14px 0;font-size:14px;font-weight:600;display:flex}.rule-row:last-child{border-bottom:none;padding-bottom:0}.rule-row:first-child{padding-top:0}.rule-check-icon{color:var(--accent-warm);flex-shrink:0}@media (width<=992px){.sauna-intro-grid{grid-template-columns:1fr;gap:40px}.sauna-intro-visuals img{height:380px}.sauna-cottage-card{grid-template-columns:1fr}.sauna-card-img{height:300px;min-height:auto}.inclusions-grid{grid-template-columns:1fr}}@media (width<=768px){.sauna-hero-section{height:300px}.sauna-title{font-size:32px}.sauna-subtitle{font-size:14px}.sauna-card-details{padding:30px 20px}.sauna-rules-box{padding:24px 16px}.sauna-actions{flex-direction:column;gap:12px}.sauna-actions .btn{width:100%}}.offers-page-container{width:100%}.offers-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1540555700478-4be289fbecef?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.offers-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.offers-hero-content{z-index:5;position:relative}.offers-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.offers-subtitle{color:#ffffffd9;font-size:16px}.active-offers-section{background:var(--white);padding:80px 0}.offers-list-grid{flex-direction:column;gap:50px;display:flex}.offers-item-card{box-shadow:var(--shadow-md);border-radius:var(--radius-lg);grid-template-columns:1fr 1.2fr;min-height:360px;display:grid;overflow:hidden}.offers-item-img{width:100%;height:100%;position:relative}.offers-item-img img{object-fit:cover;width:100%;height:100%}.offers-item-badge{box-shadow:var(--shadow-md);position:absolute;top:24px;left:24px}.offers-item-details{flex-direction:column;justify-content:center;padding:40px;display:flex}.offers-item-details h3{font-family:var(--font-serif);color:var(--primary-dark);margin-bottom:12px;font-size:26px;font-weight:700}.offers-item-date-row{color:var(--accent-warm);text-transform:uppercase;align-items:center;gap:8px;margin-bottom:18px;font-size:13px;font-weight:700;display:flex}.calendar-offer-icon{flex-shrink:0}.offers-item-desc{color:var(--dark-text-2);margin-bottom:20px;font-size:14px;line-height:1.7}.offers-item-bullets{color:var(--primary-mid);flex-direction:column;gap:8px;margin-bottom:24px;font-size:13px;font-weight:600;display:flex}.btn-offer-item{align-self:flex-start;padding:12px 28px}.offers-seasons-section{background:var(--gray-bg);padding:80px 0}.seasons-grid{grid-template-columns:1fr 1fr;gap:30px;display:grid}.season-card{flex-direction:column;height:100%;padding:40px 30px;display:flex}.season-tag-icon{color:var(--accent-green);margin-bottom:16px}.season-card h4{color:var(--primary-dark);margin-bottom:12px;font-size:18px;font-weight:700}.season-card p{color:var(--dark-text-2);flex-grow:1;margin-bottom:20px;font-size:14px;line-height:1.6}.season-card-bullets{color:var(--primary-mid);border-top:1px solid var(--border-color);flex-direction:column;gap:8px;padding-top:16px;font-size:12px;font-weight:600;display:flex}.newsletter-section{background:var(--gray-bg);padding:0 0 80px}.newsletter-card{border-radius:var(--radius-lg);text-align:center;width:100%;color:var(--white);box-shadow:var(--shadow-lg);background-image:url(https://images.unsplash.com/photo-1571896349842-33c89424de2d?auto=format&fit=crop&q=80&w=1200);background-position:50%;background-size:cover;padding:60px 40px;position:relative;overflow:hidden}.newsletter-overlay{z-index:1;background:#0d3b2ee0;width:100%;height:100%;position:absolute;top:0;left:0}.newsletter-content{z-index:2;max-width:600px;margin:0 auto;position:relative}.newsletter-form h2{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:36px}.newsletter-form p{color:#fffc;margin-bottom:30px;font-size:15px;line-height:1.6}.newsletter-input-row{gap:12px;width:100%;max-width:500px;margin:0 auto 16px;display:flex}.newsletter-input{border-radius:var(--radius-md);font-family:var(--font-sans);color:var(--white);transition:var(--transition-fast);background:#ffffff1a;border:1px solid #fff3;outline:none;flex:1;padding:12px 20px;font-size:15px}.newsletter-input:focus{border-color:var(--accent-green);background:#fff3}.newsletter-input::placeholder{color:#ffffff80}.btn-newsletter-submit{padding:0 24px;font-size:14px}.newsletter-terms{color:#fff6;font-size:11px}.newsletter-success-box{flex-direction:column;align-items:center;padding:20px 10px;display:flex}.news-success-icon{color:var(--accent-green);margin-bottom:16px}.newsletter-success-box h3{font-family:var(--font-serif);color:var(--white);margin-bottom:10px;font-size:28px}.newsletter-success-box p{color:#fffc;font-size:15px;line-height:1.6}.news-error-msg{border:1px solid var(--accent-warm);color:var(--accent-warm);border-radius:var(--radius-md);background:#e07b5433;margin-bottom:16px;padding:8px 16px;font-size:13px;font-weight:600}@media (width<=992px){.offers-item-card{grid-template-columns:1fr}.offers-item-img{height:250px}.seasons-grid{grid-template-columns:1fr}}@media (width<=768px){.offers-hero-section{height:300px}.offers-title{font-size:32px}.offers-subtitle{font-size:14px}.offers-item-details{padding:30px 20px}.newsletter-input-row{flex-direction:column}.btn-newsletter-submit{width:100%;height:48px}}.contacts-page-container{width:100%}.contacts-hero-section{width:100%;height:380px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1582719478250-c89cae4dc85b?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.contacts-hero-overlay{background:#0d3b2eb3;width:100%;height:100%;position:absolute;top:0;left:0}.contacts-hero-content{z-index:5;position:relative}.contacts-title{font-family:var(--font-serif);color:var(--white);margin-bottom:12px;font-size:46px;font-weight:700}.contacts-subtitle{color:#ffffffd9;font-size:16px}.contacts-details-section{background:var(--white);padding:80px 0 40px}.contacts-details-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.contact-info-card{text-align:center;flex-direction:column;align-items:center;height:100%;padding:30px 20px;display:flex}.contact-card-icon{color:var(--primary-mid);margin-bottom:16px}.contact-info-card h3{color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;margin-bottom:12px;font-size:16px;font-weight:700}.contact-info-card p{color:var(--dark-text-2);margin-bottom:4px;font-size:14px;line-height:1.5}.contact-info-card p a{color:inherit;transition:var(--transition-fast);font-weight:600}.contact-info-card p a:hover{color:var(--primary-mid)}.sub-addr-detail{color:#999;font-size:12px}.contacts-feedback-section{background:var(--white);padding:40px 0 80px}.feedback-grid{grid-template-columns:1fr 1fr;align-items:flex-start;gap:50px;display:grid}.feedback-form-box{padding:40px;position:relative;overflow:hidden}.feedback-form-box:before{content:"";background:var(--accent-warm);width:100%;height:5px;position:absolute;top:0;left:0}.btn-feedback-submit{text-transform:uppercase;letter-spacing:.5px;width:100%;height:50px;font-size:15px}.route-desc-box{flex-direction:column;display:flex}.route-p{color:var(--dark-text-2);margin-bottom:24px;font-size:15px;line-height:1.7}.route-steps{flex-direction:column;gap:20px;margin-bottom:30px;display:flex}.route-step-item{align-items:flex-start;gap:16px;display:flex}.route-step-icon{color:var(--primary-mid);flex-shrink:0;margin-top:4px}.route-step-item h4{color:var(--primary-dark);margin-bottom:4px;font-size:16px;font-weight:700}.route-step-item p{color:var(--dark-text-2);font-size:13px;line-height:1.5}.route-actions{gap:16px;display:flex}.route-actions .btn{flex:1}.contacts-map-section{background:var(--gray-bg);padding:80px 0}.contacts-dual-maps{border-radius:var(--radius-lg);border:1px solid var(--border-color);box-shadow:var(--shadow-lg);overflow:hidden}@media (width<=1200px){.contacts-details-grid{grid-template-columns:1fr 1fr}}@media (width<=992px){.feedback-grid{grid-template-columns:1fr;gap:40px}}@media (width<=768px){.contacts-hero-section{height:300px}.contacts-title{font-size:32px}.contacts-subtitle{font-size:14px}.feedback-form-box{padding:24px 16px}.route-actions{flex-direction:column}.route-actions .btn{width:100%}}@media (width<=576px){.contacts-details-grid{grid-template-columns:1fr}}.privacy-page-container{width:100%}.privacy-hero-section{width:100%;height:280px;color:var(--white);background-image:url(https://images.unsplash.com/photo-1590490360182-c33d57733427?auto=format&fit=crop&q=80&w=1920);background-position:50%;background-size:cover;align-items:center;padding-top:90px;display:flex;position:relative}.privacy-hero-overlay{background:#0d3b2ebf;width:100%;height:100%;position:absolute;top:0;left:0}.privacy-hero-content{z-index:5;position:relative}.privacy-title{font-family:var(--font-serif);color:var(--white);margin-bottom:8px;font-size:38px;font-weight:700}.privacy-subtitle{color:#ffffffd9;font-size:14px}.privacy-content-section{background:var(--gray-bg);padding:60px 0 80px}.privacy-body{background:var(--white);color:var(--dark-text-2);padding:40px}.privacy-body h2{font-family:var(--font-sans);color:var(--primary-dark);text-transform:uppercase;letter-spacing:.5px;margin-top:30px;margin-bottom:12px;font-size:18px;font-weight:700}.privacy-body h2:first-of-type{margin-top:0}.privacy-body p{margin-bottom:16px;font-size:14px;line-height:1.7}.privacy-body ul{margin-bottom:20px;margin-left:24px;font-size:14px;line-height:1.7}.privacy-body ul li{margin-bottom:6px}.privacy-body a{color:var(--primary-mid);text-decoration:underline}@media (width<=768px){.privacy-hero-section{height:240px}.privacy-title{font-size:28px}.privacy-body{padding:24px 16px}}.self-enroll-overlay{z-index:100000;-webkit-backdrop-filter:blur(20px);-webkit-user-select:none;user-select:none;background:#050810f0;justify-content:center;align-items:center;padding:20px;animation:.25s ease-out selfEnrollFadeIn;display:flex;position:fixed;inset:0}@keyframes selfEnrollFadeIn{0%{opacity:0;transform:scale(.98)}to{opacity:1;transform:scale(1)}}.self-enroll-container{background:#0b1120;border:1px solid #ffffff1f;border-radius:26px;flex-direction:column;width:100%;max-width:1080px;height:90vh;max-height:820px;display:flex;overflow:hidden;box-shadow:0 25px 60px #000c,0 0 40px #38bdf81a}.self-enroll-header{background:#0f172ab3;border-bottom:1px solid #ffffff14;flex-shrink:0;justify-content:space-between;align-items:center;height:74px;padding:0 24px;display:flex}.self-enroll-header-left{align-items:center;gap:16px;min-width:0;display:flex}.self-enroll-back-btn{color:#e2e8f0;cursor:pointer;white-space:nowrap;background:#ffffff14;border:1px solid #ffffff1a;border-radius:12px;align-items:center;gap:8px;padding:8px 16px;font-size:14px;font-weight:500;transition:all .15s;display:flex}.self-enroll-back-btn:hover{background:#ffffff24}.self-enroll-title-group{flex-direction:column;gap:2px;min-width:0;display:flex}.self-enroll-badge-mode{color:#38bdf8;text-transform:uppercase;letter-spacing:.6px;align-items:center;gap:6px;font-size:11px;font-weight:700;display:inline-flex}.self-enroll-title{color:#f8fafc;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:18px;font-weight:700;overflow:hidden}.self-enroll-close-btn{color:#94a3b8;cursor:pointer;background:#ffffff0f;border:1px solid #ffffff1a;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:all .15s;display:flex}.self-enroll-close-btn:hover{color:#fb7185;background:#f43f5e26;border-color:#f43f5e66}.self-enroll-step-content{flex-direction:column;flex:1;min-height:0;padding:24px;display:flex;overflow-y:auto}.select-emp-step{flex-direction:column;display:flex}.self-enroll-search-bar{flex-direction:column;flex-shrink:0;gap:12px;margin-bottom:20px;display:flex}.search-input-wrapper{align-items:center;width:100%;display:flex;position:relative}.search-icon{color:#64748b;pointer-events:none;position:absolute;left:18px}.search-input{color:#fff;background:#0f172acc;border:1px solid #ffffff1f;border-radius:16px;outline:none;width:100%;height:54px;padding:0 48px;font-size:16px;transition:border-color .15s,box-shadow .15s}.search-input:focus{border-color:#38bdf8;box-shadow:0 0 0 3px #38bdf82e}.search-clear-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;justify-content:center;align-items:center;padding:6px;display:flex;position:absolute;right:16px}.filter-pill-group{flex-wrap:wrap;gap:10px;display:flex}.filter-pill{color:#94a3b8;cursor:pointer;background:#ffffff0a;border:1px solid #ffffff1a;border-radius:20px;padding:8px 16px;font-size:13px;font-weight:600;transition:all .15s}.filter-pill:hover{color:#f8fafc;background:#ffffff14}.filter-pill.active{color:#34d399;background:#10b9812e;border-color:#10b981}.employees-touch-grid{flex:1;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:14px;padding-right:4px;display:grid;overflow-y:auto}.emp-touch-card{cursor:pointer;background:#0f172aa6;border:1px solid #ffffff14;border-radius:16px;align-items:center;gap:14px;padding:14px 16px;transition:all .18s;display:flex}.emp-touch-card:hover{background:#1e293bd9;border-color:#38bdf866;transform:translateY(-2px);box-shadow:0 6px 20px #00000059}.emp-avatar-circle{background:#1e293b;border:2px solid #ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;display:flex;overflow:hidden}.emp-photo-img{object-fit:cover;width:100%;height:100%}.emp-initial{color:#38bdf8;font-size:20px;font-weight:700}.emp-details{flex:1;min-width:0}.emp-card-name{color:#f8fafc;white-space:nowrap;text-overflow:ellipsis;margin:0 0 2px;font-size:15px;font-weight:600;overflow:hidden}.emp-card-role{color:#94a3b8;margin-bottom:6px;font-size:12px;display:block}.emp-card-badges{flex-wrap:wrap;gap:6px;display:flex}.badge-tag{border-radius:6px;align-items:center;gap:4px;padding:2px 7px;font-size:11px;font-weight:600;display:inline-flex}.tag-face-yes{color:#34d399;background:#10b98126;border:1px solid #10b9814d}.tag-face-no{color:#fb7185;background:#f43f5e26;border:1px solid #f43f5e4d}.tag-pin-yes{color:#38bdf8;background:#38bdf826;border:1px solid #38bdf84d}.tag-pin-no{color:#fbbf24;background:#f59e0b26;border:1px solid #f59e0b4d}.emp-select-action{color:#38bdf8;white-space:nowrap;padding-left:4px;font-size:14px;font-weight:600}.no-emp-found{color:#64748b;text-align:center;flex-direction:column;grid-column:1/-1;justify-content:center;align-items:center;padding:60px 20px;display:flex}.no-emp-icon{opacity:.5;margin-bottom:12px}.no-emp-found h3{color:#e2e8f0;margin:0 0 6px;font-size:18px}.no-emp-found p{margin:0;font-size:14px}.create-pin-step{justify-content:center;align-items:center;display:flex}.create-pin-card{background:#0f172a99;border:1px solid #ffffff1a;border-radius:24px;flex-direction:column;align-items:center;width:100%;max-width:440px;padding:26px;display:flex;box-shadow:0 10px 30px #0006}.create-pin-user-badge{background:#ffffff0a;border:1px solid #ffffff0f;border-radius:14px;align-items:center;gap:14px;width:100%;margin-bottom:18px;padding:10px 16px;display:flex}.user-badge-avatar{color:#38bdf8;background:#1e293b;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;font-weight:700;display:flex;overflow:hidden}.user-badge-avatar img{object-fit:cover;width:100%;height:100%}.user-badge-name{color:#f8fafc;margin:0;font-size:15px;font-weight:600}.user-badge-role{color:#94a3b8;font-size:12px}.pin-prompt-box{text-align:center;width:100%;margin-bottom:20px}.pin-prompt-title{color:#f8fafc;margin:0 0 6px;font-size:19px;font-weight:700}.pin-prompt-subtitle{color:#94a3b8;margin:0 0 18px;font-size:13px}.pin-display-slots{justify-content:center;gap:14px;margin-bottom:10px;display:flex}.pin-digit-slot{color:#f8fafc;background:#ffffff0d;border:2px solid #ffffff1f;border-radius:14px;justify-content:center;align-items:center;width:56px;height:64px;font-size:30px;font-weight:700;transition:all .15s;display:flex}.pin-digit-slot.filled{color:#38bdf8;background:#38bdf824;border-color:#38bdf8;box-shadow:0 0 15px #38bdf840}.pin-digit-slot.active-cursor{border-color:#10b981;animation:1.5s infinite pulsePinSlot}@keyframes pulsePinSlot{0%,to{border-color:#10b98166}50%{border-color:#10b981;box-shadow:0 0 12px #10b98166}}.pin-error-toast{color:#fb7185;background:#f43f5e1f;border:1px solid #f43f5e4d;border-radius:10px;justify-content:center;align-items:center;gap:8px;margin-top:10px;padding:8px 14px;font-size:13px;font-weight:500;display:flex}.pin-keypad-grid{grid-template-columns:repeat(3,1fr);gap:12px;width:100%;max-width:320px;margin-bottom:20px;display:grid}.pin-key-btn{color:#f8fafc;cursor:pointer;background:#ffffff12;border:1px solid #ffffff1a;border-radius:16px;justify-content:center;align-items:center;height:60px;font-size:24px;font-weight:600;transition:all .1s;display:flex}.pin-key-btn:active{background:#ffffff29;transform:scale(.96)}.pin-key-btn.key-action{color:#94a3b8;font-size:18px}.pin-submit-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;max-width:320px;height:52px;font-size:15px;font-weight:600;transition:all .15s;display:flex;box-shadow:0 4px 16px #10b98159}.pin-submit-btn:hover:not(:disabled){transform:translateY(-1px);box-shadow:0 6px 20px #10b98173}.pin-submit-btn:disabled{opacity:.45;cursor:not-allowed;box-shadow:none}.scan-face-step{flex:1;display:flex}.scan-face-layout{flex:1;gap:20px;min-height:0;display:flex}.camera-viewport-card{background:#000;border:1px solid #ffffff24;border-radius:20px;flex:1.4;justify-content:center;align-items:center;min-height:380px;display:flex;position:relative;overflow:hidden}.camera-video-elem{object-fit:cover;width:100%;height:100%;transform:scaleX(-1)}.camera-canvas-overlay{pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.live-guidance-pill{z-index:10;pointer-events:none;white-space:nowrap;position:absolute;bottom:22px;left:50%;transform:translate(-50%)}.pill-text{color:#fff;-webkit-backdrop-filter:blur(12px);border-radius:30px;padding:10px 22px;font-size:15px;font-weight:600;display:inline-block;box-shadow:0 4px 20px #00000080}.pill-center{background:#10b981e0}.pill-turn{background:#38bdf8e0}.pill-saving{background:#f59e0be0}.camera-error-banner{text-align:center;color:#fb7185;background:#0f172af2;flex-direction:column;justify-content:center;align-items:center;gap:14px;padding:30px;display:flex;position:absolute;inset:0}.camera-error-banner button{color:#38bdf8;cursor:pointer;background:#38bdf833;border:1px solid #38bdf8;border-radius:12px;padding:10px 20px;font-size:14px;font-weight:600}.scan-sidebar-panel{background:#0f172a8c;border:1px solid #ffffff14;border-radius:20px;flex-direction:column;flex:.9;gap:14px;min-width:280px;padding:18px;display:flex}.sidebar-emp-info{border-bottom:1px solid #ffffff14;justify-content:space-between;align-items:center;padding-bottom:12px;display:flex}.sidebar-emp-info h4{color:#f8fafc;margin:0;font-size:15px;font-weight:600}.sidebar-emp-pin{color:#38bdf8;font-size:13px}.sidebar-3d-steps{flex-direction:column;flex:1;gap:10px;display:flex}.step-item{background:#ffffff08;border:1px solid #ffffff0f;border-radius:14px;align-items:center;gap:12px;padding:10px 14px;transition:all .2s;display:flex}.step-item.active{background:#38bdf81f;border-color:#38bdf8}.step-item.done{background:#10b9811f;border-color:#10b981}.step-circle{color:#94a3b8;background:#ffffff1a;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:32px;height:32px;font-size:13px;font-weight:700;display:flex}.step-item.active .step-circle{color:#0f172a;background:#38bdf8}.step-item.done .step-circle{color:#fff;background:#10b981}.step-label{flex-direction:column;flex:1;min-width:0;display:flex}.step-label strong{color:#f8fafc;font-size:13px}.step-label span{color:#94a3b8;font-size:11px}.step-thumb{object-fit:cover;border:2px solid #10b981;border-radius:10px;flex-shrink:0;width:42px;height:42px}.scan-status-alert{border-radius:12px;padding:10px 14px;font-size:13px;font-weight:500}.scan-status-alert.info{color:#38bdf8;background:#38bdf81f;border:1px solid #38bdf84d}.scan-status-alert.error{color:#fb7185;background:#f43f5e1f;border:1px solid #f43f5e4d}.manual-snap-btn{color:#e2e8f0;cursor:pointer;background:#ffffff14;border:1px solid #ffffff24;border-radius:14px;justify-content:center;align-items:center;gap:8px;margin-top:auto;padding:12px 16px;font-size:13px;font-weight:600;transition:all .15s;display:flex}.manual-snap-btn:hover:not(:disabled){color:#fff;background:#ffffff24}.manual-snap-btn:disabled{opacity:.4;cursor:not-allowed}.success-step{justify-content:center;align-items:center;display:flex}.success-dialog-card{text-align:center;background:#0f172abf;border:1px solid #10b9814d;border-radius:24px;flex-direction:column;align-items:center;gap:16px;width:100%;max-width:520px;padding:30px;display:flex;box-shadow:0 10px 40px #10b98133}.success-check-bubble{color:#10b981}.success-dialog-title{color:#f8fafc;margin:0;font-size:22px;font-weight:700}.success-dialog-subtitle{color:#94a3b8;margin:0;font-size:14px}.success-credentials-box{text-align:left;background:#ffffff0a;border-radius:16px;flex-direction:column;gap:10px;width:100%;padding:14px 18px;display:flex}.cred-item{justify-content:space-between;align-items:center;font-size:14px;display:flex}.cred-item.highlight{background:#38bdf81f;border:1px solid #38bdf84d;border-radius:10px;padding:8px 12px}.cred-label{color:#94a3b8}.cred-value{color:#f8fafc}.pin-val{color:#38bdf8;font-size:18px}.success-instructions{text-align:left;color:#e2e8f0;background:#10b98114;border:1px solid #10b98133;border-radius:14px;width:100%;padding:14px 18px;font-size:13px}.success-instructions ol{margin:8px 0 0 18px;padding:0}.success-instructions li{margin-bottom:4px}.success-finish-btn{color:#fff;cursor:pointer;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border:none;border-radius:16px;justify-content:center;align-items:center;gap:10px;width:100%;height:52px;margin-top:8px;font-size:16px;font-weight:600;display:flex;box-shadow:0 4px 16px #10b98166}.success-finish-btn:hover{transform:translateY(-1px);box-shadow:0 6px 20px #10b98180}@media (width<=768px){.self-enroll-container{border-radius:18px;height:96vh;max-height:none}.self-enroll-step-content{padding:16px}.scan-face-layout{flex-direction:column}.camera-viewport-card{flex:none;height:48vh;min-height:280px}.scan-sidebar-panel{flex:1;min-width:0}}:root{--gv-bg-obsidian:#070b14;--gv-bg-card:#0f172ad9;--gv-emerald:#10b981;--gv-emerald-glow:#10b98166;--gv-cyan:#38bdf8;--gv-cyan-glow:#38bdf859;--gv-amber:#f59e0b;--gv-rose:#f43f5e;--gv-rose-glow:#f43f5e66;--gv-border-subtle:#ffffff14;--gv-border-glow:#38bdf84d;--gv-text-main:#f8fafc;--gv-text-muted:#94a3b8;--gv-text-dim:#64748b}.face-terminal-root{background:var(--gv-bg-obsidian);width:100vw;height:100dvh;color:var(--gv-text-main);-webkit-user-select:none;user-select:none;z-index:9999;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);flex-direction:column;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;display:flex;position:fixed;top:0;left:0;overflow:hidden}.terminal-header{-webkit-backdrop-filter:blur(24px);border-bottom:1px solid var(--gv-border-subtle);z-index:30;background:#0b1120eb;flex-shrink:0;justify-content:space-between;align-items:center;height:70px;padding:0 28px;display:flex;box-shadow:0 4px 25px #00000080}.terminal-brand{align-items:center;gap:14px;min-width:0;display:flex}.terminal-logo-badge{color:#fff;letter-spacing:1px;width:44px;height:44px;box-shadow:0 0 20px var(--gv-emerald-glow);background:linear-gradient(135deg,#10b981 0%,#047857 100%);border:1px solid #ffffff40;border-radius:12px;flex-shrink:0;justify-content:center;align-items:center;font-size:1.15rem;font-weight:900;display:flex}.terminal-title{min-width:0}.resort-title-row{align-items:center;gap:10px;display:flex}.resort-name{letter-spacing:1.5px;color:#fff;text-transform:uppercase;font-size:1.1rem;font-weight:800}.resort-badge-dot{color:var(--gv-emerald);letter-spacing:.5px;background:#10b9811f;border:1px solid #10b9814d;border-radius:12px;align-items:center;padding:2px 10px;font-size:.72rem;font-weight:700;animation:2.5s infinite pulseEmerald;display:inline-flex}@keyframes pulseEmerald{0%,to{opacity:.9;box-shadow:0 0 0px var(--gv-emerald-glow)}50%{opacity:1;box-shadow:0 0 10px var(--gv-emerald-glow)}}.resort-subtitle{color:var(--gv-text-muted);white-space:nowrap;text-overflow:ellipsis;margin:3px 0 0;font-size:.78rem;overflow:hidden}.mobile-header-meta{display:none}.terminal-clock-block{text-align:center;flex-shrink:0}.terminal-clock-time{letter-spacing:1.5px;color:var(--gv-cyan);font-variant-numeric:tabular-nums;text-shadow:0 0 14px var(--gv-cyan-glow);font-size:1.75rem;font-weight:800;line-height:1.1}.terminal-clock-date{color:var(--gv-text-muted);text-transform:capitalize;margin-top:2px;font-size:.76rem}.terminal-header-actions{flex-shrink:0;align-items:center;gap:10px;display:flex}.kiosk-header-btn{border:1px solid var(--gv-border-subtle);color:var(--gv-text-main);cursor:pointer;background:#1e293bb3;border-radius:12px;justify-content:center;align-items:center;width:42px;height:42px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.kiosk-header-btn:hover{border-color:var(--gv-border-glow);color:#fff;background:#334155e6;transform:translateY(-1px)}.kiosk-header-btn:active{transform:scale(.95)}.terminal-main-stage{background:#020617;flex:1;justify-content:center;align-items:center;min-height:0;display:flex;position:relative;overflow:hidden}.terminal-video-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative;overflow:hidden}.terminal-video{object-fit:contain;background:#020617;width:100%;height:100%;transition:transform .2s}.terminal-video.fit-contain{object-fit:contain}.terminal-video.fit-cover{object-fit:cover}.terminal-video.mirrored{transform:scaleX(-1)}.terminal-canvas-overlay{object-fit:contain;pointer-events:none;z-index:10;width:100%;height:100%;position:absolute;top:0;left:0}.terminal-canvas-overlay.fit-contain{object-fit:contain}.terminal-canvas-overlay.fit-cover{object-fit:cover}.terminal-canvas-overlay.mirrored{transform:scaleX(-1)}.terminal-viewport-vignette{pointer-events:none;z-index:12;width:100%;height:100%;position:absolute;top:0;left:0;box-shadow:inset 0 0 100px #020617e0}.terminal-confirmation-card{-webkit-backdrop-filter:blur(28px);z-index:50;box-sizing:border-box;background:#0b1120f0;border-radius:24px;align-items:center;gap:18px;width:min(580px,92vw);padding:18px 26px;animation:.38s cubic-bezier(.16,1,.3,1) confirmationSlideDown;display:flex;position:absolute;top:28px;left:50%;transform:translate(-50%);box-shadow:0 25px 60px #000c}@keyframes confirmationSlideDown{0%{opacity:0;transform:translate(-50%,-24px)scale(.92)}to{opacity:1;transform:translate(-50%)scale(1)}}.terminal-confirmation-card.card-shift-in{border:1.5px solid var(--gv-emerald);box-shadow:0 20px 50px #000c, 0 0 40px var(--gv-emerald-glow)}.terminal-confirmation-card.card-shift-out{border:1.5px solid var(--gv-rose);box-shadow:0 20px 50px #000c, 0 0 40px var(--gv-rose-glow)}.confirmation-photo-ring{flex-shrink:0;width:58px;height:58px;position:relative}.confirmation-photo{object-fit:cover;border:2px solid #ffffff40;border-radius:18px;width:58px;height:58px}.confirmation-avatar-fallback{width:58px;height:58px;color:var(--gv-cyan);background:linear-gradient(135deg,#1e293b,#334155);border:2px solid #ffffff40;border-radius:18px;justify-content:center;align-items:center;font-size:1.45rem;font-weight:800;display:flex}.confirmation-status-dot{border:2.5px solid #0b1120;border-radius:50%;width:16px;height:16px;position:absolute;bottom:-2px;right:-2px}.confirmation-status-dot.dot-in{background:#10b981;box-shadow:0 0 10px #10b981}.confirmation-status-dot.dot-out{background:#f43f5e;box-shadow:0 0 10px #f43f5e}.confirmation-status-dot.dot-late{background:#f59e0b;box-shadow:0 0 10px #f59e0b}.confirmation-body{flex:1;min-width:0}.confirmation-badge-row{justify-content:space-between;align-items:center;gap:10px;margin-bottom:4px;display:flex}.confirmation-badge{letter-spacing:.8px;text-transform:uppercase;font-size:.76rem;font-weight:800}.card-shift-in .confirmation-badge{color:#34d399}.card-shift-out .confirmation-badge{color:#fb7185}.card-shift-late .confirmation-badge{color:#fbbf24}.confirmation-time{color:var(--gv-text-muted);font-variant-numeric:tabular-nums;font-size:.82rem;font-weight:700}.confirmation-headline{color:#fff;font-size:1.25rem;font-weight:800;line-height:1.25}.confirmation-details{color:#cbd5e1;margin-top:3px;font-size:.86rem;line-height:1.35}.confirmation-check-badge{border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;animation:.3s cubic-bezier(.34,1.56,.64,1) checkPop;display:flex}.card-shift-in .confirmation-check-badge{border:1.5px solid var(--gv-emerald);background:#10b98140}.card-shift-out .confirmation-check-badge{border:1.5px solid var(--gv-rose);background:#f43f5e40}.card-shift-late{border-color:#f59e0b73;box-shadow:0 16px 40px #000000b3,0 0 30px #f59e0b33}.card-shift-late .confirmation-check-badge{background:#f59e0b40;border:1.5px solid #f59e0b}@keyframes checkPop{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.terminal-camera-error-box{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);text-align:center;z-index:40;background:#ef4444eb;border-radius:20px;max-width:480px;padding:26px 36px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 20px 50px #000000b3}.terminal-camera-error-box h3{margin:0 0 8px;font-size:1.2rem;font-weight:800}.terminal-camera-error-box p{opacity:.95;margin:0 0 16px;font-size:.9rem}.btn-terminal-retry{color:#0f172a;cursor:pointer;background:#fff;border:none;border-radius:12px;align-items:center;gap:8px;padding:10px 22px;font-size:.9rem;font-weight:700;transition:transform .15s;display:inline-flex}.btn-terminal-retry:hover{transform:scale(1.03)}.terminal-green-warning-overlay{-webkit-backdrop-filter:blur(16px);z-index:45;box-sizing:border-box;background:#b91c1cf0;border:1px solid #fecaca66;border-radius:16px;align-items:center;gap:14px;width:min(520px,92%);padding:14px 22px;display:flex;position:absolute;top:24px;left:50%;transform:translate(-50%);box-shadow:0 16px 36px #0009,0 0 20px #ef444466}.terminal-green-warning-text h4{color:#fff;margin:0 0 3px;font-size:.95rem;font-weight:800}.terminal-green-warning-text p{color:#fee2e2;margin:0;font-size:.8rem}@media (width<=820px){.terminal-header{height:60px;padding:0 16px}.resort-name{font-size:.96rem}.terminal-clock-time{font-size:1.4rem}.terminal-process-hud{min-width:min(340px,92vw);padding:12px 20px;bottom:24px}.process-hud-title{font-size:1rem}.terminal-confirmation-card{gap:14px;padding:14px 18px;top:16px}.confirmation-headline{font-size:1.1rem}.confirmation-photo-ring,.confirmation-photo,.confirmation-avatar-fallback{border-radius:14px;width:48px;height:48px}}@media (width<=640px){.terminal-header{height:56px;padding:0 12px}.terminal-logo-badge{border-radius:10px;width:36px;height:36px;font-size:.95rem}.resort-name{letter-spacing:.5px;font-size:.86rem}.resort-badge-dot,.resort-subtitle{display:none!important}.mobile-header-meta{color:#94a3b8;align-items:center;gap:6px;margin-top:2px;font-size:.72rem;display:flex}.mobile-header-time{color:var(--gv-cyan);font-weight:700}.mobile-header-status{color:var(--gv-emerald);align-items:center;gap:4px;font-weight:600;display:inline-flex}.mobile-header-status:before{content:"";background:var(--gv-emerald);width:6px;height:6px;box-shadow:0 0 6px var(--gv-emerald);border-radius:50%}.terminal-clock-block,.fullscreen-btn{display:none!important}.terminal-process-hud{bottom:calc(14px + env(safe-area-inset-bottom,0px));border-radius:18px;gap:12px;width:calc(100% - 24px);max-width:390px;padding:10px 16px}.process-hud-title{font-size:.96rem}.process-hud-subtitle{font-size:.74rem}.btn-terminal-mode{color:#94a3b8;cursor:pointer;background:#0f172ab3;border:1px solid #38bdf84d;border-radius:12px;align-items:center;gap:7px;padding:8px 14px;font-size:.8rem;font-weight:700;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.btn-terminal-mode:hover{color:#f8fafc;background:#1e293be6;border-color:#38bdf899;transform:translateY(-1px)}.btn-terminal-mode.mode-btn-active{color:#38bdf8;background:#0ea5e92e;border-color:#38bdf8;box-shadow:0 0 16px #38bdf840}.terminal-unified-stage-center{pointer-events:none;z-index:35;flex-direction:column;justify-content:center;align-items:center;padding-bottom:20px;display:flex;position:absolute;inset:0}.unified-face-ring{box-sizing:border-box;border-radius:50%;justify-content:center;align-items:center;width:min(310px,72vw);height:min(310px,72vw);transition:all .35s cubic-bezier(.16,1,.3,1);display:flex;position:relative}.unified-ring-svg{pointer-events:none;width:calc(100% + 28px);height:calc(100% + 28px);position:absolute;inset:-14px;transform:rotate(-90deg)}.ring-svg-track{fill:none;stroke:#38bdf82e;stroke-width:3.5px}.ring-svg-bar{fill:none;stroke:#38bdf8;stroke-width:4.5px;stroke-dasharray:339.29;stroke-linecap:round;filter:drop-shadow(0 0 8px #38bdf8cc);transition:stroke-dashoffset .1s linear,stroke .3s}.ring-svg-bar.success{stroke:#10b981;filter:drop-shadow(0 0 12px #10b981e6)}.unified-face-ring.ring-is-clickable{cursor:pointer;-webkit-backdrop-filter:blur(16px);-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0f172ac7;border:2px solid #38bdf880;box-shadow:0 16px 48px #000000b3,0 0 40px #38bdf84d,inset 0 0 35px #38bdf81f;pointer-events:auto!important}.unified-face-ring.ring-is-clickable:hover{border-color:#38bdf8;transform:scale(1.035);box-shadow:0 20px 60px #000c,0 0 55px #38bdf88c,inset 0 0 45px #38bdf838}.unified-face-ring.ring-is-clickable:active{transform:scale(.97)}.ring-content-standby{text-align:center;pointer-events:none;flex-direction:column;justify-content:center;align-items:center;padding:16px;display:flex}.standby-btn-icon-wrapper{color:#fff;background:linear-gradient(135deg,#0284c7 0%,#0369a1 100%);border:2px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:76px;height:76px;margin-bottom:14px;transition:transform .2s;display:flex;box-shadow:0 10px 28px #0284c799}.unified-face-ring.ring-is-clickable:hover .standby-btn-icon-wrapper{transform:scale(1.08)}.standby-cam-icon{filter:drop-shadow(0 2px 4px #0000004d)}.standby-primary-text{letter-spacing:.6px;text-transform:uppercase;color:#fff;text-shadow:0 2px 6px #0009;font-size:1.05rem;font-weight:800}.standby-secondary-text{color:#94a3b8;margin-top:4px;font-size:.8rem;font-weight:600}.unified-face-ring.phase-scanning{pointer-events:none;background:0 0;border:2.5px solid #38bdf873;animation:2s ease-in-out infinite ringPulseScan;box-shadow:0 0 45px #38bdf859,inset 0 0 30px #38bdf814}@keyframes ringPulseScan{0%,to{transform:scale(1);box-shadow:0 0 35px #38bdf84d}50%{transform:scale(1.02);box-shadow:0 0 55px #38bdf899}}.ring-content-active{pointer-events:none;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.ring-scanner-crosshair{opacity:.5;border:1.5px solid #38bdf880;border-radius:50%;width:20px;height:20px}.unified-face-ring.phase-matching,.unified-face-ring.phase-matched{border-color:#10b981;box-shadow:0 0 60px #10b98199,inset 0 0 40px #10b98126}.unified-face-ring.ring-state-in,.unified-face-ring.phase-success{background:#064e3be0;border:3.5px solid #10b981;animation:.35s cubic-bezier(.34,1.56,.64,1) ringSuccessPop;box-shadow:0 0 70px #10b981d9,inset 0 0 50px #10b98166}.unified-face-ring.ring-state-out{background:#4c0519e0;border:3.5px solid #f43f5e;animation:.35s cubic-bezier(.34,1.56,.64,1) ringSuccessPop;box-shadow:0 0 70px #f43f5ed9,inset 0 0 50px #f43f5e66}@keyframes ringSuccessPop{0%{opacity:.6;transform:scale(.92)}to{opacity:1;transform:scale(1)}}.ring-content-success{border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;overflow:hidden}.ring-employee-avatar{object-fit:cover;border-radius:50%;width:100%;height:100%}.unified-ring-status-row{pointer-events:auto;flex-direction:column;align-items:center;margin-top:24px;display:flex}.unified-status-pill{-webkit-backdrop-filter:blur(16px);text-align:center;border-radius:20px;flex-direction:column;align-items:center;gap:3px;max-width:min(460px,92vw);padding:10px 24px;transition:all .3s;display:flex;box-shadow:0 12px 36px #000000b3}.pill-headline{color:#f8fafc;letter-spacing:-.2px;font-size:1rem;font-weight:800}.pill-subtext{color:#cbd5e1;font-size:.78rem;font-weight:600}.unified-status-pill.pill-idle{background:#0f172ad9;border:1px solid #38bdf840}.unified-status-pill.pill-is-clickable{cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#0ea5e926;border:1.5px solid #38bdf899;transition:all .2s cubic-bezier(.16,1,.3,1);pointer-events:auto!important}.unified-status-pill.pill-is-clickable:hover{background:#0ea5e947;border-color:#38bdf8;transform:translateY(-2px)scale(1.02);box-shadow:0 16px 40px #000c,0 0 30px #38bdf873}.unified-status-pill.pill-is-clickable:active{transform:translateY(1px)scale(.98)}.unified-status-pill.pill-active{background:#0f172aeb;border:1px solid #38bdf880;box-shadow:0 12px 36px #000c,0 0 25px #38bdf840}.unified-status-pill.pill-in{background:#064e3beb;border:1.5px solid #10b981;box-shadow:0 12px 36px #000c,0 0 35px #10b98166}.unified-status-pill.pill-late{background:#78350feb;border:1.5px solid #f59e0b;box-shadow:0 12px 36px #000c,0 0 35px #f59e0b66}.unified-status-pill.pill-out{background:#4c0519eb;border:1.5px solid #f43f5e;box-shadow:0 12px 36px #000c,0 0 35px #f43f5e66}.pill-live-dot{background:#38bdf8;border-radius:50%;width:7px;height:7px;margin-bottom:3px;animation:1s infinite alternate dotBlink;box-shadow:0 0 8px #38bdf8}@keyframes dotBlink{0%{opacity:.3;transform:scale(.85)}to{opacity:1;transform:scale(1.15)}}.unified-cancel-btn{color:#fca5a5;cursor:pointer;background:#ef44442e;border:1.5px solid #ef444480;border-radius:12px;margin-top:14px;padding:7px 22px;font-size:.82rem;font-weight:700;transition:all .2s;pointer-events:auto!important}.unified-cancel-btn:hover{color:#fff;background:#ef444459;border-color:#ef4444}.kiosk-header-btn.btn-mode-2fa{background:#10b9811f;border-color:#10b98166}.kiosk-header-btn.btn-mode-1n{background:#f59e0b1f;border-color:#f59e0b66}.terminal-pin-stage-container{z-index:40;-webkit-backdrop-filter:blur(8px);background:#070b14b8;justify-content:center;align-items:center;padding:16px;animation:.3s cubic-bezier(.16,1,.3,1) pinFadeIn;display:flex;position:absolute;inset:0}@keyframes pinFadeIn{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.terminal-pin-card{-webkit-backdrop-filter:blur(28px);box-sizing:border-box;background:#0f172ae0;border:1.5px solid #38bdf847;border-radius:28px;flex-direction:column;align-items:center;width:min(440px,94vw);max-height:calc(100dvh - 100px);padding:24px 28px 20px;display:flex;overflow-y:auto;box-shadow:0 25px 70px #000000d9,0 0 50px #38bdf826,inset 0 1px #ffffff1a}.pin-card-header{text-align:center;margin-bottom:14px}.pin-brand-pill{color:#34d399;letter-spacing:.8px;background:#10b98124;border:1px solid #10b98159;border-radius:20px;align-items:center;gap:6px;margin-bottom:8px;padding:4px 12px;font-size:.72rem;font-weight:800;display:inline-flex}.pin-card-title{color:#fff;letter-spacing:-.2px;margin:0;font-size:1.25rem;font-weight:800}.pin-card-subtitle{color:#94a3b8;margin:4px 0 0;font-size:.82rem}.pin-display-wrapper{flex-direction:column;align-items:center;margin-bottom:16px;display:flex}.pin-dots-row{justify-content:center;align-items:center;gap:14px;margin-bottom:6px;display:flex}.pin-digit-slot{color:#fff;background:#1e293bb3;border:2px solid #ffffff1f;border-radius:16px;justify-content:center;align-items:center;width:58px;height:64px;font-size:1.75rem;font-weight:800;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:inset 0 2px 4px #0006}.pin-digit-slot.slot-active{background:#0ea5e926;border-color:#38bdf8;transform:scale(1.05);box-shadow:0 0 16px #38bdf866,inset 0 2px 4px #0006}.pin-digit-slot.slot-filled{color:#34d399;background:#10b9811f;border-color:#10b981}.pin-digit-slot.slot-expanded{animation:.25s cubic-bezier(.16,1,.3,1) forwards popInSlot}@keyframes popInSlot{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.pin-display-shake{animation:.4s ease-in-out pinShake}@keyframes pinShake{0%,to{transform:translate(0)}20%,60%{transform:translate(-10px)}40%,80%{transform:translate(10px)}}.pin-error-banner{color:#fca5a5;background:#ef44442e;border:1px solid #ef444466;border-radius:10px;align-items:center;gap:6px;padding:4px 12px;font-size:.78rem;font-weight:700;animation:.2s fadeIn;display:flex}.pin-hint-text{color:#64748b;text-align:center;font-size:.74rem}.pin-keypad-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:320px;margin-bottom:18px;display:grid}.pin-key-btn{color:#fff;cursor:pointer;-webkit-user-select:none;user-select:none;-webkit-tap-highlight-color:transparent;background:#1e293ba6;border:1.5px solid #ffffff14;border-radius:16px;flex-direction:column;justify-content:center;align-items:center;height:60px;transition:all .15s cubic-bezier(.16,1,.3,1);display:flex;box-shadow:0 4px 12px #0000004d}.pin-key-btn:hover{background:#334155e6;border-color:#38bdf866;transform:translateY(-2px);box-shadow:0 6px 18px #0006,0 0 16px #38bdf833}.pin-key-btn:active{background:#0ea5e94d;transform:scale(.94)}.pin-key-num{font-size:1.5rem;font-weight:800;line-height:1}.pin-key-fn{background:#0f172abf}.pin-key-clear{color:#f87171}.pin-key-clear:hover{border-color:#ef444480}.pin-key-backspace{color:#38bdf8}.pin-key-submit{color:#10b981;background:#10b9811f!important;border-color:#10b98159!important}.pin-key-submit:hover{background:#10b98140!important;border-color:#10b981!important;box-shadow:0 4px 16px #10b98166!important}.pin-clear-link-btn{color:#94a3b8;cursor:pointer;background:0 0;border:none;border-radius:8px;align-items:center;gap:5px;margin-top:4px;padding:4px 10px;font-size:.76rem;font-weight:600;transition:all .15s;display:inline-flex}.pin-clear-link-btn:hover{color:#f87171;background:#ef44441f}.pin-fn-backspace{font-size:1.35rem;font-weight:800;line-height:1}.pin-fn-label{text-transform:uppercase;letter-spacing:.5px;opacity:.8;margin-top:2px;font-size:.62rem;font-weight:700}.pin-quick-staff-box{border-top:1px solid #ffffff14;width:100%;padding-top:14px}.pin-quick-staff-header{justify-content:space-between;align-items:center;gap:10px;margin-bottom:10px;display:flex}.pin-quick-title{color:#94a3b8;align-items:center;gap:6px;font-size:.78rem;font-weight:700;display:flex}.pin-search-input-wrap{background:#1e293bcc;border:1px solid #ffffff1a;border-radius:8px;align-items:center;gap:6px;width:150px;padding:4px 8px;display:flex}.pin-search-input{color:#fff;background:0 0;border:none;outline:none;width:100%;font-size:.75rem}.pin-search-input::placeholder{color:#64748b}.pin-quick-staff-scroll{scrollbar-width:thin;scrollbar-color:#38bdf84d transparent;gap:8px;padding-bottom:6px;display:flex;overflow-x:auto}.pin-quick-staff-scroll::-webkit-scrollbar{height:4px}.pin-quick-staff-scroll::-webkit-scrollbar-thumb{background:#38bdf84d;border-radius:4px}.pin-staff-chip{cursor:pointer;color:#fff;text-align:left;background:#1e293bbf;border:1.5px solid #ffffff1a;border-radius:14px;flex-shrink:0;align-items:center;gap:8px;padding:6px 10px;transition:all .2s cubic-bezier(.16,1,.3,1);display:flex}.pin-staff-chip:hover{background:#334155f2;border-color:#38bdf8;transform:translateY(-2px);box-shadow:0 6px 16px #0006,0 0 12px #38bdf840}.pin-staff-chip:active{transform:scale(.96)}.pin-staff-avatar-ring{flex-shrink:0;width:34px;height:34px;position:relative}.pin-staff-avatar{object-fit:cover;border:1px solid #fff3;border-radius:10px;width:34px;height:34px}.pin-staff-avatar-fallback{color:#fff;background:linear-gradient(135deg,#0284c7,#0369a1);border-radius:10px;justify-content:center;align-items:center;width:34px;height:34px;font-size:.85rem;font-weight:800;display:flex}.pin-staff-face-dot{background:#10b981;border:1.5px solid #0f172a;border-radius:50%;width:8px;height:8px;position:absolute;bottom:-1px;right:-1px}.pin-staff-details{flex-direction:column;display:flex}.pin-staff-name{color:#f8fafc;white-space:nowrap;font-size:.82rem;font-weight:700}.pin-staff-meta{align-items:center;gap:6px;margin-top:1px;display:flex}.pin-staff-role{color:#94a3b8;white-space:nowrap;font-size:.68rem}.pin-staff-badge{color:#38bdf8;letter-spacing:.3px;background:#0ea5e926;border-radius:6px;padding:1px 5px;font-size:.64rem;font-weight:800}.claimed-identity-floating-card{-webkit-backdrop-filter:blur(28px);z-index:50;box-sizing:border-box;background:#0b1120f0;border:1.5px solid #10b981;border-radius:22px;align-items:center;gap:16px;width:min(520px,92vw);padding:12px 20px;animation:.35s cubic-bezier(.16,1,.3,1) confirmationSlideDown;display:flex;position:absolute;top:24px;left:50%;transform:translate(-50%);box-shadow:0 20px 50px #000c,0 0 35px #10b98159}.claimed-avatar-block{flex-shrink:0;width:48px;height:48px;position:relative}.claimed-photo{object-fit:cover;border:2px solid #10b98180;border-radius:14px;width:48px;height:48px}.claimed-fallback{color:#fff;background:linear-gradient(135deg,#10b981,#047857);border:2px solid #10b98180;border-radius:14px;justify-content:center;align-items:center;width:48px;height:48px;font-size:1.2rem;font-weight:800;display:flex}.claimed-status-pulse{background:#10b981;border:2px solid #0b1120;border-radius:50%;width:12px;height:12px;animation:1s infinite alternate dotBlink;position:absolute;bottom:-2px;right:-2px;box-shadow:0 0 8px #10b981}.claimed-info-block{flex:1;min-width:0}.claimed-badge-tag{color:#34d399;letter-spacing:.6px;align-items:center;gap:5px;margin-bottom:2px;font-size:.7rem;font-weight:800;display:flex}.claimed-emp-name{color:#fff;white-space:nowrap;text-overflow:ellipsis;margin:0;font-size:1.1rem;font-weight:800;overflow:hidden}.claimed-emp-role{color:#94a3b8;margin:2px 0 0;font-size:.78rem}.btn-claimed-cancel{color:#fca5a5;cursor:pointer;background:#ef444429;border:1.5px solid #ef444473;border-radius:12px;flex-shrink:0;align-items:center;gap:6px;padding:8px 14px;font-size:.78rem;font-weight:700;transition:all .2s;display:flex}.btn-claimed-cancel:hover{color:#fff;background:#ef444459;border-color:#ef4444}}
