:root{--color-cream:#f5f5f0;--color-sage:#7d9b76;--color-sage-light:#a8c4a2;--color-sage-dark:#5a7a54;--color-forest:#2d4a2d;--color-charcoal:#2c2c2c;--color-soft-gray:#6b6b6b;--color-white:#fff;--color-bg-primary:var(--color-cream);--color-bg-secondary:var(--color-white);--color-bg-card:var(--color-white);--color-accent:var(--color-sage);--color-accent-hover:var(--color-sage-dark);--color-text:var(--color-charcoal);--color-text-muted:var(--color-soft-gray);--font-display:"Cormorant Garamond",serif;--font-body:"Lato",sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-2xl:6rem;--space-3xl:10rem;--ease-elegant:cubic-bezier(.25,.46,.45,.94);--ease-smooth:cubic-bezier(.4,0,.2,1);--duration-fast:.2s;--duration-normal:.4s;--duration-slow:.8s;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px}.vanite-spa{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.vanite-spa h1,.vanite-spa h2,.vanite-spa h3,.vanite-spa h4{font-family:var(--font-display);letter-spacing:-.02em;font-weight:600;line-height:1.2}.vanite-spa h1{font-size:clamp(2.5rem,6vw,5rem)}.vanite-spa h2{font-size:clamp(2rem,4vw,3.5rem)}.vanite-spa h3{font-size:clamp(1.5rem,3vw,2rem)}.vanite-spa p{font-size:1rem;line-height:1.8}.sage-line{background:linear-gradient(90deg,var(--color-sage),var(--color-sage-dark));width:60px;height:2px}.section-label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-sage);font-size:.75rem;font-weight:500}.btn-primary{background:var(--color-sage);color:var(--color-white);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-normal)var(--ease-elegant);border:none;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.btn-primary:before{content:"";background:var(--color-sage-dark);transition:transform var(--duration-normal)var(--ease-elegant);position:absolute;inset:0;transform:translate(-100%)}.btn-primary:hover:before{transform:translate(0)}.btn-primary span{z-index:1;position:relative}.btn-secondary{color:var(--color-charcoal);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--color-sage);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-normal)var(--ease-elegant);background:0 0;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:.875rem;font-weight:500;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:var(--color-sage);color:var(--color-white);border-color:var(--color-sage)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-50px)}to{opacity:1;transform:translate(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(50px)}to{opacity:1;transform:translate(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-fade-up{animation:fadeUp var(--duration-slow)var(--ease-elegant)forwards}.animate-fade-in{animation:fadeIn var(--duration-slow)var(--ease-elegant)forwards}.animate-scale-in{animation:scaleIn var(--duration-slow)var(--ease-elegant)forwards}.animate-slide-left{animation:slideInLeft var(--duration-slow)var(--ease-elegant)forwards}.animate-slide-right{animation:slideInRight var(--duration-slow)var(--ease-elegant)forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}.delay-600{animation-delay:.6s}[class*=animate-]{opacity:0}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);transition:all var(--duration-normal)var(--ease-elegant);overflow:hidden;box-shadow:0 4px 20px #0000000d}.card:hover{transform:translateY(-5px);box-shadow:0 10px 40px #0000001a}.card-image{position:relative;overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow)var(--ease-elegant)}.card:hover .card-image img{transform:scale(1.05)}.hover-lift{transition:transform var(--duration-normal)var(--ease-elegant)}.hover-lift:hover{transform:translateY(-5px)}.hover-glow{transition:box-shadow var(--duration-normal)var(--ease-elegant)}.hover-glow:hover{box-shadow:0 0 30px #7d9b764d}@media (max-width:768px){:root{--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem}.vanite-spa h1{font-size:clamp(2rem,8vw,3rem)}.vanite-spa h2{font-size:clamp(1.75rem,6vw,2.5rem)}}.vanite-spa::-webkit-scrollbar{width:8px}.vanite-spa::-webkit-scrollbar-track{background:var(--color-cream)}.vanite-spa::-webkit-scrollbar-thumb{background:var(--color-sage);border-radius:4px}.vanite-spa::-webkit-scrollbar-thumb:hover{background:var(--color-sage-dark)}
:root{--color-black:#0a0a0a;--color-dark-gray:#1a1a1a;--color-charcoal:#2d2d2d;--color-gold:#d4af37;--color-gold-light:#e8c547;--color-gold-dark:#b8960c;--color-cream:#f5f5f0;--color-warm-gray:#8a8a8a;--color-white:#fff;--color-bg-primary:var(--color-black);--color-bg-secondary:var(--color-dark-gray);--color-bg-card:var(--color-charcoal);--color-accent:var(--color-gold);--color-accent-hover:var(--color-gold-light);--color-text:var(--color-white);--color-text-muted:var(--color-warm-gray);--font-display:"Playfair Display",serif;--font-body:"Montserrat",sans-serif;--space-xs:.5rem;--space-sm:1rem;--space-md:1.5rem;--space-lg:2.5rem;--space-xl:4rem;--space-2xl:6rem;--space-3xl:10rem;--ease-elegant:cubic-bezier(.25,.46,.45,.94);--ease-smooth:cubic-bezier(.4,0,.2,1);--duration-fast:.2s;--duration-normal:.4s;--duration-slow:.8s;--radius-sm:4px;--radius-md:8px;--radius-lg:16px;--radius-xl:24px;--radius-full:9999px}.nan-luu{font-family:var(--font-body);color:var(--color-text);background-color:var(--color-bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-height:1.6}.nan-luu h1,.nan-luu h2,.nan-luu h3,.nan-luu h4{font-family:var(--font-display);font-weight:600;line-height:1.2}.nan-luu h1{font-size:clamp(2.5rem,6vw,4.5rem)}.nan-luu h2{font-size:clamp(2rem,4vw,3rem)}.nan-luu h3{font-size:clamp(1.5rem,3vw,1.75rem)}.nan-luu p{font-size:1rem;line-height:1.8}.gold-line{background:linear-gradient(90deg,var(--color-gold),var(--color-gold-light));width:50px;height:2px}.section-label{font-family:var(--font-body);letter-spacing:.2em;text-transform:uppercase;color:var(--color-gold);font-size:.75rem;font-weight:600}.btn-primary{background:var(--color-gold);color:var(--color-black);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-normal)var(--ease-elegant);border:none;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:0 4px 15px #d4af374d}.btn-primary:hover{background:var(--color-gold-light);transform:translateY(-2px);box-shadow:0 8px 25px #d4af3766}.btn-secondary{color:var(--color-gold);font-family:var(--font-body);letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--color-gold);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--duration-normal)var(--ease-elegant);background:0 0;align-items:center;gap:.75rem;padding:1rem 2rem;font-size:.875rem;font-weight:600;text-decoration:none;display:inline-flex}.btn-secondary:hover{background:var(--color-gold);color:var(--color-black)}@keyframes fadeUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-fade-up{animation:fadeUp var(--duration-slow)var(--ease-elegant)forwards}.animate-fade-in{animation:fadeIn var(--duration-slow)var(--ease-elegant)forwards}.animate-scale-in{animation:scaleIn var(--duration-slow)var(--ease-elegant)forwards}.delay-100{animation-delay:.1s}.delay-200{animation-delay:.2s}.delay-300{animation-delay:.3s}.delay-400{animation-delay:.4s}.delay-500{animation-delay:.5s}[class*=animate-]{opacity:0}.reveal{opacity:0;transition:opacity var(--duration-slow)var(--ease-elegant),transform var(--duration-slow)var(--ease-elegant);transform:translateY(30px)}.reveal.revealed{opacity:1;transform:translateY(0)}.card{background:var(--color-bg-card);border-radius:var(--radius-lg);transition:all var(--duration-normal)var(--ease-elegant);border:1px solid #d4af371a;overflow:hidden}.card:hover{border-color:#d4af374d;transform:translateY(-8px);box-shadow:0 15px 40px #d4af3726}.card-image{position:relative;overflow:hidden}.card-image img{object-fit:cover;width:100%;height:100%;transition:transform var(--duration-slow)var(--ease-elegant)}.card:hover .card-image img{transform:scale(1.08)}.rating-badge{background:var(--color-dark-gray);border:1px solid var(--color-gold);border-radius:var(--radius-full);color:var(--color-white);align-items:center;gap:.5rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.rating-badge svg{color:var(--color-gold)}.gold-shimmer{background:linear-gradient(90deg,var(--color-gold)0%,var(--color-gold-light)50%,var(--color-gold)100%);-webkit-text-fill-color:transparent;background-size:200% 100%;-webkit-background-clip:text;background-clip:text;animation:3s ease-in-out infinite shimmer}.gold-gradient-bg{background:linear-gradient(135deg,#d4af371a 0%,#d4af370d 100%)}.hover-lift{transition:transform var(--duration-normal)var(--ease-elegant)}.hover-lift:hover{transform:translateY(-5px)}.hover-glow{transition:box-shadow var(--duration-normal)var(--ease-elegant)}.hover-glow:hover{box-shadow:0 0 30px #d4af374d}@media (max-width:768px){:root{--space-xl:3rem;--space-2xl:4rem;--space-3xl:6rem}.nan-luu h1{font-size:clamp(2rem,8vw,3rem)}.nan-luu h2{font-size:clamp(1.75rem,6vw,2.25rem)}}.nan-luu::-webkit-scrollbar{width:8px}.nan-luu::-webkit-scrollbar-track{background:var(--color-dark-gray)}.nan-luu::-webkit-scrollbar-thumb{background:var(--color-gold);border-radius:4px}.nan-luu::-webkit-scrollbar-thumb:hover{background:var(--color-gold-light)}
