@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@300;400;500;600;700&display=swap";.hero-section{position:relative;min-height:100vh;width:100%;display:flex;align-items:center;justify-content:center;background:var(--bg-primary)}.hero-container{position:relative;width:100%;height:100%;z-index:2;display:flex;flex-direction:column;justify-content:center;padding-top:var(--space-2xl)}.hero-header{position:fixed;top:0;left:0;width:100%;display:flex;justify-content:space-between;align-items:center;padding:var(--space-md) 5%;z-index:100;background:#fffc;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border-bottom:1px solid rgba(0,0,0,.05);transition:padding .3s ease}.logo{font-family:var(--font-heading);font-size:var(--text-lg);font-weight:500;letter-spacing:.05em;text-transform:uppercase}.desktop-nav{display:flex;align-items:center;gap:var(--space-lg)}.desktop-nav a{font-size:.85rem;font-weight:400;text-transform:uppercase;letter-spacing:.1em;transition:var(--transition-fast);color:var(--text-secondary)}.desktop-nav a:hover{color:var(--text-primary)}.btn-primary-nav{border:1px solid var(--text-primary);color:var(--text-primary)!important;padding:8px 24px;border-radius:50px;font-weight:400!important}.btn-primary-nav:hover{background:var(--text-primary);color:var(--bg-primary)!important}.mobile-menu-btn{display:none;color:var(--text-primary);z-index:201}.mobile-menu-overlay{position:fixed;top:0;left:0;width:100%;height:100vh;z-index:200;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#fffffffa}.mobile-close-btn{position:absolute;top:var(--space-md);right:5%;color:var(--text-primary)}.mobile-nav{display:flex;flex-direction:column;align-items:center;gap:var(--space-lg)}.mobile-nav a{font-size:var(--text-2xl);font-family:var(--font-heading);font-weight:300;text-transform:uppercase;letter-spacing:.05em;transition:color .3s;color:var(--text-primary)}.mobile-nav a:hover{color:var(--accent)}.btn-primary-mobile{border:1px solid var(--text-primary);color:var(--text-primary)!important;padding:12px 32px;border-radius:50px;font-size:var(--text-base)!important;margin-top:var(--space-md);font-weight:400!important}.admin-link-mobile{font-size:var(--text-sm)!important;color:var(--text-secondary)!important;margin-top:var(--space-xl);text-transform:none!important}.hero-content-wrapper{display:flex;justify-content:center;align-items:center;width:100%;height:100%}.hero-content{position:relative;z-index:5;max-width:800px;text-align:center;display:flex;flex-direction:column;align-items:center}.hero-title{font-size:clamp(3rem,7vw,6rem);font-weight:300;letter-spacing:-.04em;color:var(--text-primary);margin-bottom:0;line-height:1.1}.italic-row{margin-bottom:var(--space-md)}.italic-text{font-style:italic;font-weight:300;color:var(--text-secondary)}.hero-subtitle{font-size:clamp(1rem,1.5vw,1.25rem);font-weight:300;color:var(--text-secondary);max-width:600px;margin-bottom:var(--space-xl);line-height:1.6}.reveal-mask{overflow:hidden;line-height:1.2}.scroll-indicator{position:absolute;bottom:24px;left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:16px;z-index:10;cursor:pointer}.scroll-text{font-size:.7rem;letter-spacing:.3em;color:var(--text-primary);font-weight:400;text-transform:uppercase}.scroll-line{width:1px;height:120px;background:#0000001a;position:relative;overflow:hidden}.scroll-dot{position:absolute;top:0;left:0;width:100%;height:40px;background:var(--text-primary);animation:scrollDown 2s cubic-bezier(.77,0,.175,1) infinite}@keyframes scrollDown{0%{transform:translateY(-100%)}to{transform:translateY(350%)}}@media (max-width: 992px){.desktop-nav{display:none}.mobile-menu-btn{display:block}}@media (max-width: 768px){.hero-container{padding-top:var(--space-xl)}.hero-title{font-size:clamp(2.5rem,10vw,4rem)}.hero-subtitle{font-size:1rem;padding:0 var(--space-md)}.scroll-line{height:90px;width:2px}.scroll-dot{background:#000;height:35px}}.about-section{padding:var(--space-2xl) 0;background-color:var(--bg-primary);text-align:center;position:relative;overflow:hidden}.about-content{max-width:800px;margin:0 auto}.about-title{font-size:clamp(2rem,5vw,4rem);color:var(--text-primary);margin-bottom:var(--space-lg);font-weight:300;line-height:1.2;letter-spacing:-.03em}.about-description{font-size:clamp(1rem,1.5vw,1.25rem);color:var(--text-secondary);font-weight:300;line-height:1.6;max-width:650px;margin:0 auto}@media (max-width: 768px){.about-section{padding:var(--space-xl) 0}.about-title{font-size:clamp(1.8rem,8vw,3rem)}}.services-section{padding:var(--space-2xl) 0;background-color:var(--bg-primary);text-align:center}.services-header{margin-bottom:var(--space-xl);display:flex;flex-direction:column;align-items:center}.services-title{font-size:clamp(2rem,4vw,3.5rem);color:var(--text-primary);margin-top:0;font-weight:300;letter-spacing:-.03em}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--space-lg);margin-top:var(--space-xl)}.service-card{border-radius:24px;background-color:#00000005;border:none;overflow:hidden;position:relative;transition:all .5s cubic-bezier(.16,1,.3,1);height:100%;text-align:left}.service-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #0000000f;background-color:#fff}.service-card-inner{padding:var(--space-xl) var(--space-lg);height:100%;display:flex;flex-direction:column}.service-number{font-family:var(--font-heading);font-size:1rem;color:var(--text-secondary);font-weight:400;margin-bottom:var(--space-lg);letter-spacing:.05em}.service-name{font-size:var(--text-xl);color:var(--text-primary);margin-bottom:var(--space-md);font-weight:400;letter-spacing:-.02em}.service-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.6;font-weight:300}@media (max-width: 992px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.services-section{padding:var(--space-xl) 0}.services-title{font-size:clamp(1.8rem,8vw,2.5rem)}.services-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;width:100vw;margin-left:calc(var(--space-md) * -1);padding:var(--space-md);gap:var(--space-md)}.services-grid::-webkit-scrollbar{display:none}.service-card{flex-shrink:0;width:80vw;scroll-snap-align:center;background-color:#fafafa}.service-card-inner{padding:var(--space-xl) var(--space-lg)}.service-card:hover{transform:none;box-shadow:none}}.showcase-section{padding:var(--space-3xl) 0;background-color:var(--bg-primary);overflow:hidden}.showcase-header{display:flex;flex-direction:row;justify-content:space-between;align-items:flex-end;margin-bottom:var(--space-2xl)}.showcase-title{font-size:clamp(2.5rem,6vw,4rem);color:var(--text-primary);margin-top:0;font-weight:300;letter-spacing:-.04em}.mobile-scroll-controls{display:none;gap:8px}.simple-arrow{width:44px;height:44px;border-radius:50%;border:1px solid rgba(0,0,0,.1);background:transparent;display:flex;align-items:center;justify-content:center;color:var(--text-primary);cursor:pointer;transition:all .3s ease}.simple-arrow:active{background:#0000000d;transform:scale(.95)}.showcase-marquee-wrapper{width:100vw;position:relative;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;overflow:hidden;background-color:#000}.showcase-marquee-track{display:flex;gap:0;width:max-content;animation:scrollMarquee 45s linear infinite}.showcase-marquee-track.single-mode{animation:none;justify-content:center;width:100vw}.showcase-marquee-track:hover{animation-play-state:paused}@keyframes scrollMarquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.showcase-card{height:clamp(400px,60vh,800px);width:clamp(300px,40vw,600px);position:relative;border-radius:0;overflow:hidden;flex-shrink:0;cursor:crosshair}.image-wrapper{height:100%;width:100%;display:flex;justify-content:center;background-color:var(--bg-secondary)}.showcase-card img{height:100%;width:100%;display:block;object-fit:cover;object-position:center;transition:transform 1.2s cubic-bezier(.16,1,.3,1)}.skeleton-placeholder{width:100%;height:100%;background-color:#fff;display:flex;align-items:center;justify-content:center;padding:2rem}.elegant-skeleton-text{text-align:center;color:#0000004d}.elegant-skeleton-text h3{font-size:clamp(1.2rem,3vw,1.8rem);letter-spacing:.2em;font-weight:300;margin-bottom:8px;font-family:serif}.elegant-skeleton-text p{font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;font-weight:500}.showcase-card:hover img{transform:scale(1.03)}.card-overlay{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;transition:opacity .4s ease;background:linear-gradient(to top,rgba(0,0,0,.8) 0%,rgba(0,0,0,.2) 50%,transparent 100%);display:flex;flex-direction:column;align-items:center;justify-content:flex-end;padding-bottom:var(--space-2xl);text-align:center}.showcase-card:hover .card-overlay,.showcase-card:active .card-overlay{opacity:1}.card-overlay h3{font-size:var(--text-xl);color:#fff;margin:0;font-weight:300;letter-spacing:.15em;text-transform:uppercase;transform:translateY(20px);transition:transform .6s cubic-bezier(.16,1,.3,1)}.showcase-card:hover .card-overlay h3,.showcase-card:active .card-overlay h3{transform:translateY(0)}@media (max-width: 768px){.showcase-header{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.showcase-title{font-size:clamp(2rem,8vw,2.5rem)}.mobile-scroll-controls{display:flex;align-self:flex-end}.showcase-marquee-track{animation:none;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-ms-overflow-style:none;width:100vw}.showcase-marquee-track::-webkit-scrollbar{display:none}.showcase-card{height:55vh;width:100vw;scroll-snap-align:center}}.testimonials-section{padding:var(--space-2xl) 0;background-color:var(--bg-primary);text-align:center}.testimonials-section.is-empty{padding:var(--space-lg) 0 var(--space-2xl)}.testimonials-header{margin-bottom:var(--space-xl);display:flex;flex-direction:column;align-items:center}.testimonials-title{font-size:clamp(2.5rem,6vw,4rem);color:var(--text-primary);margin-top:0;font-weight:300;letter-spacing:-.04em}.marquee-wrapper{width:100vw;margin-left:calc(-50vw + 50%);overflow:hidden;position:relative;padding:var(--space-xl) 0;mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);-webkit-mask-image:linear-gradient(to right,transparent,black 10%,black 90%,transparent);margin-bottom:var(--space-2xl)}.marquee-track{display:flex;gap:2rem;width:max-content;animation:marquee-scroll 40s linear infinite;padding:0 1rem}.marquee-track:hover{animation-play-state:paused}@keyframes marquee-scroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.marquee-card{width:380px;flex-shrink:0;background:var(--bg-primary);border:1px solid rgba(0,0,0,.04);border-radius:16px;padding:var(--space-xl);display:flex;flex-direction:column;box-shadow:0 10px 40px #00000005;transition:transform .4s ease,box-shadow .4s ease}.marquee-card:hover{transform:translateY(-5px);box-shadow:0 15px 50px #0000000d}.quote-icon-elegant{font-family:serif;font-size:4rem;line-height:1;color:var(--text-secondary);opacity:.15;margin-bottom:-.5rem;text-align:left}.marquee-message{font-size:1.1rem;line-height:1.6;color:var(--text-primary);font-weight:300;flex-grow:1;margin-bottom:var(--space-xl);font-style:italic;text-align:left}.marquee-author{text-align:left;border-top:1px solid rgba(0,0,0,.05);padding-top:var(--space-md)}.marquee-author h4{font-size:var(--text-lg);font-weight:500;color:var(--text-primary);margin:0 0 4px;letter-spacing:-.02em}.author-type{font-size:var(--text-xs);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;font-weight:600}.testimonial-form-wrapper{max-width:600px;margin:0 auto;text-align:center;padding-top:var(--space-xl);border-top:1px solid rgba(0,0,0,.05)}.form-header h3{font-size:var(--text-2xl);font-weight:300;margin-bottom:8px}.form-header p{color:var(--text-secondary);font-weight:300;margin-bottom:var(--space-lg)}.testimonial-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-row{display:flex;gap:var(--space-md)}.form-group{flex:1;text-align:left}.elegant-input{width:100%;padding:16px 0;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-family:inherit;font-size:1rem;color:var(--text-primary);font-weight:300;transition:border-color .3s ease;border-radius:0;-webkit-appearance:none;-moz-appearance:none;appearance:none}.elegant-input:focus{outline:none;border-bottom-color:var(--text-primary)}.elegant-input::placeholder{color:#0000004d}select.elegant-input{cursor:pointer;color:var(--text-secondary)}select.elegant-input:focus{color:var(--text-primary)}.textarea-input{resize:none;min-height:100px}.btn-elegant-submit{margin-top:var(--space-md);padding:12px 0;background-color:transparent;color:var(--text-primary);border:none;border-bottom:1px solid var(--text-primary);border-radius:0;font-size:.85rem;font-weight:400;cursor:pointer;transition:opacity .3s ease;text-transform:uppercase;letter-spacing:.15em;width:max-content;align-self:center}.btn-elegant-submit:hover{opacity:.5}.btn-elegant-submit:disabled{opacity:.3;cursor:not-allowed}.success-message{padding:var(--space-xl);display:flex;flex-direction:column;align-items:center;gap:var(--space-md)}.success-message h4{font-size:var(--text-xl);font-weight:300;margin:0}.no-reviews-placeholder{padding:var(--space-md) 0;color:var(--text-secondary);font-weight:300;font-style:italic;font-size:.9rem;letter-spacing:.02em}@media (max-width: 768px){.form-row{flex-direction:column}.marquee-card{width:300px;padding:var(--space-lg)}}.faq-section{padding:var(--space-3xl) 0;background-color:var(--bg-primary)}.faq-container{max-width:800px;margin:0 auto}.faq-header{text-align:center;margin-bottom:var(--space-2xl)}.faq-title{font-size:clamp(2rem,5vw,3.5rem);color:var(--text-primary);margin:0;font-weight:300;letter-spacing:-.04em}.faq-list{display:flex;flex-direction:column}.faq-item{border-bottom:1px solid rgba(0,0,0,.1);overflow:hidden;transition:border-color .4s ease}.faq-item.active{border-bottom-color:var(--text-primary)}.faq-question{display:flex;justify-content:space-between;align-items:center;padding:var(--space-lg) 0;cursor:pointer;background:transparent;transition:all .3s ease}.faq-question:hover h3{color:var(--text-secondary)}.faq-question h3{font-size:clamp(1rem,2.5vw,1.25rem);font-weight:400;color:var(--text-primary);margin:0;padding-right:var(--space-md);line-height:1.4;transition:color .3s ease}.faq-icon{color:var(--text-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.faq-icon svg{stroke-width:1}.faq-answer-wrapper{overflow:hidden}.faq-answer{padding:0 0 var(--space-lg) 0}.faq-answer p{color:var(--text-secondary);line-height:1.6;margin:0;font-weight:300;font-size:1rem}@media (max-width: 768px){.faq-section{padding:var(--space-2xl) 0}.faq-header{margin-bottom:var(--space-xl)}.faq-question{padding:var(--space-md) 0}.faq-answer{padding:0 0 var(--space-md) 0}}.checkout-section{padding:var(--space-3xl) 0;background-color:var(--bg-primary);border-top:1px solid rgba(0,0,0,.05)}.checkout-container{max-width:1200px}.checkout-content{display:grid;grid-template-columns:1fr 1.2fr;gap:var(--space-3xl);align-items:start}.checkout-info{position:sticky;top:120px}.section-label-minimal{display:inline-block;font-size:.75rem;text-transform:uppercase;letter-spacing:.2em;color:var(--text-secondary);margin-bottom:var(--space-md);font-weight:500;border-bottom:1px solid rgba(0,0,0,.1);padding-bottom:4px}.checkout-title{font-size:clamp(2.5rem,4vw,4rem);color:var(--text-primary);margin:0 0 var(--space-md) 0;font-weight:300;letter-spacing:-.04em;line-height:1.1}.checkout-subtitle{font-size:1.1rem;color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-2xl);font-weight:300;max-width:90%}.reservation-steps{display:flex;flex-direction:column;gap:var(--space-xl)}.step-item{display:flex;align-items:flex-start;gap:var(--space-lg);opacity:.8;transition:opacity .3s ease}.step-item:hover{opacity:1}.step-icon{width:40px;height:40px;border-radius:50%;border:1px solid rgba(0,0,0,.1);display:flex;align-items:center;justify-content:center;flex-shrink:0;color:var(--text-primary);background:transparent}.step-icon svg{stroke-width:1}.step-item h4{font-size:1.1rem;color:var(--text-primary);margin:0 0 4px;font-weight:400;letter-spacing:-.01em}.step-item p{color:var(--text-secondary);font-size:.95rem;line-height:1.5;margin:0;font-weight:300}.checkout-form-wrapper{background:#fafafa;padding:var(--space-2xl);border-radius:0;border:1px solid rgba(0,0,0,.03)}.reservation-form{display:flex;flex-direction:column}.form-fields-grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-xl) var(--space-lg)}.field-group{display:flex;flex-direction:column;gap:8px}.field-group.full-width{grid-column:1 / -1}.field-group label{font-size:.75rem;color:var(--text-secondary);font-weight:500;text-transform:uppercase;letter-spacing:.1em}.elegant-checkout-input{width:100%;padding:8px 0;background:transparent;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-family:inherit;font-size:1.1rem;color:var(--text-primary);font-weight:300;transition:all .3s ease;border-radius:0;-webkit-appearance:none}.elegant-checkout-input:focus{outline:none;border-bottom-color:var(--text-primary)}.elegant-checkout-input::placeholder{color:#0003;font-weight:300}select.elegant-checkout-input{cursor:pointer}.textarea-input{resize:none;min-height:40px}.checkout-summary{margin-top:var(--space-2xl);padding:var(--space-lg) 0;border-top:1px solid rgba(0,0,0,.1);display:flex;justify-content:space-between;align-items:center}.checkout-summary span{color:var(--text-secondary);font-size:1rem;font-weight:300}.checkout-summary strong{font-size:1.8rem;color:var(--text-primary);font-weight:300;letter-spacing:-.02em}.btn-elegant-payment{margin-top:var(--space-lg);padding:18px 0;width:100%;background-color:transparent;color:var(--text-primary);border:1px solid var(--text-primary);border-radius:0;font-size:.95rem;font-weight:400;cursor:pointer;transition:all .4s ease;text-transform:uppercase;letter-spacing:.1em;display:flex;align-items:center;justify-content:center;gap:12px}.btn-elegant-payment:hover{background-color:var(--text-primary);color:var(--bg-primary)}.btn-elegant-payment:hover .btn-arrow{transform:translate(5px)}.btn-arrow{transition:transform .3s ease}.btn-elegant-payment:disabled{opacity:.3;cursor:not-allowed;background-color:transparent;color:var(--text-primary)}.success-state{text-align:center;padding:var(--space-2xl) 0}.success-icon-wrapper{width:80px;height:80px;background-color:var(--text-primary);border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto var(--space-lg)}.success-state h3{font-size:2rem;font-weight:300;margin-bottom:var(--space-md)}.success-state p{color:var(--text-secondary);line-height:1.6;font-weight:300;margin-bottom:var(--space-2xl)}.btn-back{padding:12px 32px;background:transparent;border:1px solid rgba(0,0,0,.1);color:var(--text-primary);border-radius:40px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:.05em;font-size:.85rem}.btn-back:hover{border-color:var(--text-primary)}.error-message{margin-top:var(--space-md);color:#ef4444;font-size:.9rem;text-align:center}@media (max-width: 992px){.checkout-content{grid-template-columns:1fr;gap:var(--space-2xl)}.checkout-info{position:static;text-align:center}.checkout-subtitle{max-width:100%}.reservation-steps{text-align:left;max-width:500px;margin:0 auto}}@media (max-width: 768px){.checkout-section{padding:var(--space-2xl) 0}.checkout-form-wrapper{padding:var(--space-xl);margin:0 calc(var(--space-md) * -1);border-left:none;border-right:none}.form-fields-grid{grid-template-columns:1fr;gap:var(--space-lg)}.checkout-summary{flex-direction:column;align-items:flex-start;gap:8px}.checkout-summary strong{font-size:1.5rem}}.footer-section{background-color:#050505;color:#fff;padding:var(--space-2xl) 0 var(--space-lg);font-family:var(--font-body)}.footer-container{display:grid;grid-template-columns:1.5fr 1fr;gap:var(--space-xl);margin-bottom:var(--space-2xl)}.footer-logo{font-family:var(--font-heading);font-size:var(--text-2xl);margin-bottom:var(--space-sm);font-weight:300;letter-spacing:-.02em}.footer-desc{color:#a0a0a0;line-height:1.7;margin-bottom:var(--space-lg);max-width:400px;font-size:var(--text-sm)}.social-links{display:flex;gap:var(--space-sm)}.social-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;border:1px solid #333;color:#fff;transition:var(--transition-fast)}.social-icon:hover{background-color:#fff;border-color:#fff;color:#050505;transform:translateY(-4px)}.footer-heading{font-family:var(--font-heading);font-size:var(--text-lg);margin-bottom:var(--space-md);font-weight:400}.contact-list{list-style:none;padding:0;display:flex;flex-direction:column;gap:var(--space-sm)}.contact-list li{display:flex;align-items:center;gap:var(--space-sm);color:#a0a0a0;font-size:var(--text-sm)}.footer-bottom{border-top:1px solid #1a1a1a;padding-top:var(--space-xl);display:flex;justify-content:space-between;align-items:flex-end;font-size:var(--text-xs);color:#666}.footer-copyright{display:flex;flex-direction:column;gap:8px}.footer-copyright p{margin:0;font-weight:300}.agency-credit{font-size:.8rem;color:#888}.weblabs-link{color:#fff;text-decoration:none;font-weight:400;position:relative;transition:color .3s ease}.weblabs-link:after{content:"";position:absolute;width:100%;height:1px;bottom:-2px;left:0;background-color:#fff;transform:scaleX(0);transform-origin:bottom right;transition:transform .4s cubic-bezier(.16,1,.3,1)}.weblabs-link:hover{color:#fff}.weblabs-link:hover:after{transform:scaleX(1);transform-origin:bottom left}.footer-admin-link a{color:#555;text-decoration:none;transition:color .3s}.footer-admin-link a:hover{color:var(--accent)}@media (max-width: 768px){.footer-container{grid-template-columns:1fr;gap:var(--space-xl)}.footer-bottom{flex-direction:column;gap:var(--space-lg);text-align:center;align-items:center}.weblabs-link{display:inline-block}}.admin-dashboard,.admin-login-container{font-family:var(--font-body);color:var(--text-primary);background-color:var(--bg-primary);min-height:100vh}.admin-login-container{display:flex;align-items:center;justify-content:center;padding:var(--space-xl) var(--space-md);min-height:100vh;background-color:var(--bg-primary)}.admin-login-form{width:100%;max-width:400px;padding:var(--space-2xl);background:var(--bg-primary);border-radius:0;box-shadow:none;display:flex;flex-direction:column;gap:var(--space-xl);text-align:center}.admin-login-form h2{font-size:clamp(2rem,5vw,2.5rem);font-family:var(--font-heading);font-weight:300;margin:0;letter-spacing:-.02em;color:var(--text-primary)}.admin-input-group{width:100%}.elegant-admin-input{width:100%;padding:16px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-size:var(--text-base);font-family:var(--font-body);outline:none;background:transparent;transition:border-color .3s ease;text-align:center;letter-spacing:.1em}.elegant-admin-input::placeholder{letter-spacing:0;color:var(--text-secondary);font-weight:300}.elegant-admin-input:focus{border-bottom-color:var(--text-primary)}.btn-elegant-admin{background:var(--text-primary);color:var(--bg-primary);border:none;padding:16px 32px;border-radius:50px;font-size:.85rem;text-transform:uppercase;letter-spacing:.1em;font-weight:400;cursor:pointer;transition:all .4s ease;margin-top:var(--space-md)}.btn-elegant-admin:hover{background:var(--text-secondary);transform:translateY(-2px)}.admin-back-link{display:inline-block;text-decoration:none;color:var(--text-secondary);font-size:.75rem;text-transform:uppercase;letter-spacing:.15em;margin-bottom:var(--space-md);transition:color .3s ease}.admin-back-link:hover{color:var(--text-primary)}.admin-dashboard{padding:var(--space-lg) var(--space-md);max-width:1200px;margin:0 auto}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--space-xl);padding-bottom:var(--space-md);border-bottom:1px solid rgba(0,0,0,.1)}.admin-header h2{font-size:clamp(1.2rem,3vw,1.8rem);font-family:var(--font-heading);font-weight:500;margin:0;color:var(--text-primary);letter-spacing:.02em;line-height:1;display:flex;align-items:center}.header-actions{display:flex;align-items:center;gap:var(--space-md)}.admin-back-link,.logout-text-btn{display:inline-flex;align-items:center;justify-content:center;background:transparent;border:none;color:var(--text-secondary);font-size:.75rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;text-decoration:none;cursor:pointer;padding:0;margin:0;transition:color .3s ease;font-family:var(--font-body);line-height:1}.admin-back-link:hover,.logout-text-btn:hover{color:var(--text-primary)}.header-separator{width:1px;height:12px;background:var(--separator)}.admin-stats-top{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:var(--space-md);margin-bottom:var(--space-xl)}.stat-card{background:transparent;padding:var(--space-md) 0;border-radius:0;border:none;display:flex;align-items:center;gap:var(--space-md)}.stat-card:hover{opacity:.8}.stat-icon{width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--bg-primary);flex-shrink:0}.stat-icon.catalog{background:var(--text-primary)}.stat-icon.pending{background:var(--accent)}.stat-info{display:flex;flex-direction:column}.stat-number{font-size:var(--text-3xl);font-family:var(--font-heading);font-weight:300;line-height:1.2;color:var(--text-primary)}.stat-label{font-size:var(--text-xs);color:var(--text-secondary);font-weight:600;text-transform:uppercase;letter-spacing:.05em}.admin-content{display:grid;grid-template-columns:1fr 1.3fr;gap:var(--space-lg)}.admin-card{background:transparent;padding:0 0 var(--space-2xl) 0;border-radius:0;border:none}.admin-card h3{margin-top:0;margin-bottom:var(--space-xl);font-size:var(--text-xl);font-family:var(--font-heading);font-weight:300;color:var(--text-primary);letter-spacing:-.01em}.admin-form{display:flex;flex-direction:column;gap:var(--space-md)}.form-group{display:flex;flex-direction:column}.form-group label{font-size:.65rem;font-weight:500;color:var(--text-secondary);margin-bottom:4px;text-transform:uppercase;letter-spacing:.15em}.form-group input[type=text],.form-group input[type=number],.form-group select{width:100%;padding:12px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-size:var(--text-base);font-family:var(--font-body);outline:none;background:transparent;transition:border-color .3s ease;letter-spacing:.05em;color:var(--text-primary)}.form-group input::placeholder{color:#0003;font-weight:300}.form-group input:focus{border-bottom-color:var(--text-primary);background:transparent;box-shadow:none}.form-group .file-input{padding:12px 0;border:none;border-bottom:1px solid rgba(0,0,0,.1);font-size:var(--text-sm);color:var(--text-secondary)}.admin-btn,.logout-btn,.action-btn{padding:12px 24px;border-radius:50px;font-weight:400;font-size:.85rem;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .4s ease;border:none;display:inline-flex;align-items:center;justify-content:center;gap:8px}.admin-btn{background:var(--text-primary);color:var(--bg-primary)}.publish-btn{margin-top:8px;padding:16px}.admin-btn:hover:not(:disabled){background:var(--accent);transform:translateY(-2px);box-shadow:var(--shadow-sm)}.admin-btn:disabled{opacity:.7;cursor:not-allowed}.katalog-list{display:flex;flex-direction:column;gap:var(--space-sm)}.katalog-item{display:flex;align-items:center;padding:var(--space-md) 0;border-bottom:1px solid rgba(0,0,0,.05);gap:var(--space-md);transition:opacity .3s ease}.katalog-item:hover{opacity:.8}.katalog-thumb{width:60px;height:60px;object-fit:cover;border-radius:4px}.katalog-info{flex-grow:1;display:flex;flex-direction:column;gap:4px}.katalog-info h4{margin:0;font-size:var(--text-sm);font-weight:600;color:var(--text-primary)}.katalog-info span{font-size:var(--text-xs);color:var(--text-secondary)}.ulasan-list{display:flex;flex-direction:column;gap:var(--space-md)}.ulasan-card{background:transparent;border-bottom:1px solid rgba(0,0,0,.05);padding:var(--space-md) 0;transition:opacity .3s ease}.ulasan-card:hover{opacity:.8}.ulasan-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.ulasan-user-info h4{margin:0 0 4px;font-size:var(--text-base);font-weight:600;color:var(--text-primary)}.ulasan-type{font-size:var(--text-xs);color:var(--accent);font-weight:600;background:var(--bg-secondary);padding:4px 10px;border-radius:20px;display:inline-block}.status-badge{font-size:.7rem;font-weight:600;padding:4px 12px;border-radius:20px;text-transform:uppercase;letter-spacing:.05em}.status-badge.live{background:#dcfce7;color:#166534}.status-badge.pending{background:#fef3c7;color:#92400e}.ulasan-rating{margin-bottom:12px;display:flex;gap:2px}.ulasan-msg{font-size:var(--text-sm);color:var(--text-secondary);line-height:1.5;margin:0 0 16px;font-style:italic}.ulasan-actions{display:flex;gap:8px;flex-wrap:wrap}.action-btn{padding:8px 16px;font-size:var(--text-xs)}.approve-btn{background:#dcfce7;color:#166534}.approve-btn:hover{background:#bbf7d0}.hide-btn{background:#ffedd5;color:#c2410c}.hide-btn:hover{background:#fed7aa}.delete-btn{background:#fee2e2;color:#b91c1c;margin-left:auto}.delete-btn:hover{background:#fecaca}.empty-text{text-align:left;color:var(--text-secondary);padding:var(--space-md) 0;font-style:italic;font-weight:300}@media (max-width: 992px){.admin-content{grid-template-columns:1fr;gap:var(--space-lg)}}@media (max-width: 640px){.admin-dashboard{padding:var(--space-md)}.admin-header{flex-direction:column;align-items:flex-start;gap:var(--space-md)}.header-actions{width:100%;justify-content:flex-start}.admin-stats-top{grid-template-columns:1fr 1fr;gap:var(--space-sm)}.stat-card{flex-direction:column;align-items:flex-start;gap:8px;padding:var(--space-md);background:var(--bg-secondary);border-radius:var(--radius-sm)}.stat-icon{width:32px;height:32px}.stat-number{font-size:var(--text-2xl)}.admin-card{padding:var(--space-md)}.publish-btn{width:100%}.ulasan-header{flex-direction:row;justify-content:space-between;align-items:flex-start;gap:12px}.ulasan-actions{flex-direction:row;gap:8px}.action-btn{flex:1;justify-content:center}.delete-btn{margin-left:0}}.admin-card h3{font-weight:400;letter-spacing:.02em}.invoice-page{min-height:100vh;background-color:var(--bg-secondary);display:flex;justify-content:center;align-items:center;padding:var(--space-2xl) var(--space-md);font-family:inherit}.invoice-container{width:100%;max-width:600px;display:flex;flex-direction:column;align-items:center}.invoice-loading,.invoice-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:50vh;text-align:center;gap:var(--space-md)}.invoice-error h3{font-size:var(--text-xl);font-weight:400}.invoice-card{background-color:var(--bg-primary);width:100%;border-radius:16px;box-shadow:0 20px 60px #0000000d;padding:var(--space-2xl);position:relative;overflow:hidden}.lunas-stamp{position:absolute;top:40px;right:-40px;background-color:#10b9811a;color:var(--success, #10b981);font-weight:700;font-size:1.5rem;letter-spacing:.2em;padding:10px 60px;transform:rotate(45deg);border:2px dashed rgba(16,185,129,.3);text-transform:uppercase;z-index:10;pointer-events:none}.invoice-header{text-align:center;margin-bottom:var(--space-xl)}.invoice-header h2{font-size:var(--text-xl);font-weight:600;letter-spacing:.1em;margin:0 0 8px}.invoice-type{font-size:var(--text-sm);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.1em;margin-bottom:16px}.invoice-id{display:inline-block;background-color:var(--bg-secondary);padding:6px 16px;border-radius:20px;font-size:.8rem;font-weight:600;color:var(--text-primary);letter-spacing:.05em}.invoice-details{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-lg);margin-bottom:var(--space-xl)}.detail-group{display:flex;flex-direction:column;gap:4px}.detail-group.full-width{grid-column:1 / -1}.detail-group label{font-size:.75rem;color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em}.detail-group p{margin:0;font-size:1rem;font-weight:500;color:var(--text-primary)}.invoice-line{height:1px;background-color:#0000000d;margin:var(--space-xl) 0}.invoice-summary{margin-bottom:var(--space-xl)}.summary-row{display:flex;justify-content:space-between;padding:12px 0;font-size:.95rem;color:var(--text-secondary)}.summary-row.total{font-size:1.2rem;font-weight:600;color:var(--text-primary);border-top:2px solid rgba(0,0,0,.1);padding-top:16px;margin-top:8px}.invoice-actions{text-align:center;padding-top:var(--space-md)}.payment-note{font-size:.85rem;color:var(--text-secondary);margin-bottom:var(--space-md);line-height:1.5}.btn-pay-now{width:100%;padding:16px;background-color:var(--text-primary);color:#fff;border:none;font-size:.9rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;cursor:pointer;transition:all .3s ease;display:flex;justify-content:center;align-items:center;gap:10px}.btn-pay-now:hover:not(:disabled){opacity:.9;transform:translateY(-2px)}.btn-pay-now:disabled{background-color:#e2e8f0;color:#94a3b8;cursor:not-allowed}.invoice-success{text-align:center;padding:var(--space-md) 0}.success-icon{color:var(--success, #10b981);margin-bottom:var(--space-md)}.invoice-success h3{font-size:var(--text-xl);margin-bottom:8px}.invoice-success p{color:var(--text-secondary);font-size:.95rem;line-height:1.6;margin-bottom:var(--space-lg)}.btn-download{display:inline-flex;align-items:center;gap:8px;padding:10px 20px;background-color:var(--bg-secondary);color:var(--text-primary);border:1px solid rgba(0,0,0,.1);border-radius:4px;font-size:.85rem;font-weight:500;cursor:pointer;transition:background .2s ease}.btn-download:hover{background-color:#0000000d}.invoice-footer-note{margin-top:var(--space-xl);text-align:center;color:var(--text-secondary);font-size:.8rem}.invoice-footer-note a{color:var(--text-primary);text-decoration:underline;margin-top:8px;display:inline-block}@media print{body *{visibility:hidden}.invoice-card,.invoice-card *{visibility:visible}.invoice-card{position:absolute;left:0;top:0;width:100%;box-shadow:none;padding:0}.btn-download,.lunas-stamp{display:none!important}}@media (max-width: 600px){.invoice-details{grid-template-columns:1fr;gap:var(--space-md)}.invoice-card{padding:var(--space-xl)}}:root{--bg-primary: #ffffff;--bg-secondary: #f8f9fa;--bg-elevated: #ffffff;--text-primary: #111827;--text-secondary: #4b5563;--accent: #c9a84c;--accent-hover: #b5953b;--separator: rgba(17, 24, 39, .08);--font-heading: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Helvetica Neue", Arial, sans-serif;--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Helvetica Neue", Arial, sans-serif;--text-xs: clamp(.75rem, .7rem + .25vw, .875rem);--text-sm: clamp(.875rem, .8rem + .38vw, 1rem);--text-base: clamp(1rem, .95rem + .25vw, 1.125rem);--text-lg: clamp(1.125rem, 1.05rem + .38vw, 1.25rem);--text-xl: clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--text-2xl: clamp(1.5rem, 1.35rem + .75vw, 2rem);--text-3xl: clamp(1.875rem, 1.6rem + 1.38vw, 2.5rem);--text-4xl: clamp(2.25rem, 1.8rem + 2.25vw, 3.5rem);--text-5xl: clamp(2.5rem, 1.5rem + 5vw, 5rem);--space-xs: clamp(.25rem, .2rem + .25vw, .5rem);--space-sm: clamp(.5rem, .4rem + .5vw, 1rem);--space-md: clamp(1rem, .8rem + 1vw, 1.5rem);--space-lg: clamp(1.5rem, 1.2rem + 1.5vw, 2.5rem);--space-xl: clamp(2.5rem, 2rem + 2.5vw, 4rem);--space-2xl: clamp(4rem, 3rem + 5vw, 8rem);--transition-smooth: all .6s cubic-bezier(.16, 1, .3, 1);--transition-fast: all .3s cubic-bezier(.16, 1, .3, 1);--shadow-sm: 0 4px 12px rgba(0, 0, 0, .03);--shadow-md: 0 8px 30px rgba(0, 0, 0, .05);--shadow-lg: 0 20px 40px rgba(0, 0, 0, .08);--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden;width:100%}#root{overflow-x:hidden;width:100%;position:relative}body{font-family:var(--font-body);background-color:var(--bg-primary);color:var(--text-primary);overflow-x:hidden;width:100%;position:relative;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:var(--text-base);line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);font-weight:300;letter-spacing:-.02em;line-height:1.2}a{text-decoration:none;color:inherit}button{font-family:var(--font-body);border:none;background:none;cursor:pointer}.container{max-width:1200px;margin:0 auto;padding:0 var(--space-md)}.thin-separator{height:1px;background-color:var(--separator);width:100%;border:none}.glass-panel{background:#ffffffd9;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.5);box-shadow:var(--shadow-sm)}.section-label{display:block;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.15em;color:var(--accent);margin-bottom:var(--space-md);font-weight:600}
