/* Vibrant Beauty */
body.theme-vibrant{font-family:'KCB Mont','Mont','Montserrat',Arial,sans-serif;background:#fff7fc;color:#29213a}
body.theme-vibrant .site-header{background:rgba(35,20,58,.32);backdrop-filter:blur(10px)}
body.theme-vibrant .site-header.scrolled{background:rgba(255,247,252,.94)}
body.theme-vibrant .brand-logo{border-radius:22px;transform:rotate(-3deg)}
body.theme-vibrant .nav-book,body.theme-vibrant .btn-primary{background:linear-gradient(135deg,var(--primary),var(--secondary),#ff63b5);border-radius:18px;box-shadow:0 16px 35px color-mix(in srgb,var(--secondary) 32%,transparent)}
body.theme-vibrant .hero{background:#28123f}
body.theme-vibrant .slide{background-image:radial-gradient(circle at 80% 20%,#ff76c8 0,transparent 28%),radial-gradient(circle at 15% 85%,#55d6ff 0,transparent 25%),linear-gradient(135deg,#2b1249,#6f2f95 58%,#ff4fa1)}
body.theme-vibrant .slide:after{height:100%;background:linear-gradient(90deg,rgba(35,13,62,.74),rgba(35,13,62,.1))}
body.theme-vibrant .slide-decor{border-radius:34% 66% 62% 38%/38% 35% 65% 62%}
body.theme-vibrant .slide h1{font-size:clamp(50px,7.5vw,98px)}
body.theme-vibrant .btn-ghost{border-radius:18px;background:rgba(255,255,255,.14)}
body.theme-vibrant .hero-features{border-radius:30px;background:rgba(255,255,255,.96);box-shadow:0 28px 65px rgba(65,25,95,.22)}
body.theme-vibrant .hero-features>div:nth-child(1) span{color:#ff5faf}body.theme-vibrant .hero-features>div:nth-child(2) span{color:#764bd9}body.theme-vibrant .hero-features>div:nth-child(3) span{color:#2bbbe8}
body.theme-vibrant .about-section{background:#fff7fc}
body.theme-vibrant .about-visual{border-radius:48px 160px 48px 160px;background:linear-gradient(145deg,#6f2f95,#ff63b5);box-shadow:0 35px 80px rgba(126,48,151,.22)}
body.theme-vibrant .visual-card{border-radius:24px;transform:rotate(-2deg)}
body.theme-vibrant .services-section{background:linear-gradient(180deg,#fff,#fff0fa)}
body.theme-vibrant .service-card{border-radius:34px;border:0;box-shadow:0 20px 50px rgba(126,48,151,.12)}
body.theme-vibrant .service-card:nth-child(3n+1){transform:rotate(-.6deg)}body.theme-vibrant .service-card:nth-child(3n+2){transform:translateY(14px)}body.theme-vibrant .service-card:nth-child(3n){transform:rotate(.6deg)}
body.theme-vibrant .service-card:hover{transform:translateY(-8px) rotate(0)}
body.theme-vibrant .service-image{border-radius:34px 34px 90px 34px}
body.theme-vibrant .staff-section{background:linear-gradient(135deg,#2b1249,#6f2f95 55%,#e84a9c)}
body.theme-vibrant .staff-card{border-radius:34px;background:rgba(255,255,255,.10);backdrop-filter:blur(12px)}
body.theme-vibrant .staff-photo{border-radius:34px 34px 100px 34px}
body.theme-vibrant .booking-section{background:linear-gradient(135deg,#ff58aa,#7b45d2,#2ab9e7)}
body.theme-vibrant .booking-frame-wrap{border-radius:42px;background:rgba(255,255,255,.72);backdrop-filter:blur(12px)}
body.theme-vibrant .booking-frame-wrap iframe{border-radius:32px}
body.theme-vibrant .contact-section{background:#fff7fc}
body.theme-vibrant .contact-panel,body.theme-vibrant .map-panel{border-radius:38px}
body.theme-vibrant .contact-panel{background:linear-gradient(145deg,#2b1249,#783f9e)}
body.theme-vibrant .site-footer{background:#241139}
@media(max-width:1000px){body.theme-vibrant .site-nav{background:#fff7fc;color:#29213a!important}body.theme-vibrant .mobile-menu-btn.open span{background:#29213a}}
@media(max-width:680px){body.theme-vibrant .service-card:nth-child(n){transform:none}body.theme-vibrant .about-visual{border-radius:34px 90px 34px 90px}body.theme-vibrant .slide h1{font-size:46px}}
body.theme-vibrant .gallery-section{background:linear-gradient(160deg,#fff7fc,#f8efff)}body.theme-vibrant .gallery-item{border-radius:34px;box-shadow:0 20px 50px rgba(108,52,139,.15)}body.theme-vibrant .gallery-item:before{background:linear-gradient(135deg,#ffeff8,#ece1ff);color:#6b2d87}

/* v1.1.2.10 — Uniform gallery grid */
.gallery-section .gallery-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;grid-auto-flow:row!important;grid-auto-rows:auto!important;gap:16px!important;align-items:stretch!important}.gallery-section .gallery-item,.gallery-section .gallery-item:nth-child(n),.gallery-section .gallery-item:nth-child(3n+1),.gallery-section .gallery-item:nth-child(7n+1),.gallery-section .gallery-item:nth-child(7n+3),.gallery-section .gallery-item:nth-child(7n+5){grid-column:auto!important;grid-row:auto!important;min-height:0!important;height:auto!important;aspect-ratio:4/3!important;border-radius:22px!important}.gallery-section .gallery-link{position:absolute!important;inset:0!important}.gallery-section .gallery-item img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important}.gallery-section .gallery-demo-placeholder{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.gallery-section .gallery-item figcaption{left:18px!important;right:18px!important;bottom:16px!important}@media(max-width:992px){.gallery-section .gallery-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}@media(max-width:600px){.gallery-section .gallery-grid{grid-template-columns:1fr!important;gap:12px!important}.gallery-section .gallery-item,.gallery-section .gallery-item:nth-child(n){aspect-ratio:4/3!important;border-radius:18px!important}}

/* v1.1.2.16 — theme specific back-to-top */
body.theme-vibrant{--theme-back-top-bg:linear-gradient(135deg,var(--primary),var(--secondary),#ff63b5);--theme-back-top-color:#fff;--theme-back-top-border:rgba(255,255,255,.20);--theme-back-top-shadow:0 16px 40px rgba(90,16,88,.28);--theme-back-top-hover-shadow:0 20px 48px rgba(90,16,88,.34);}
