@import"https://cdn.jsdelivr.net/npm/bootstrap-icons@1.13.1/font/bootstrap-icons.min.css";:root{--brand-purple: #3d1d4d;--accent-purple: #834d9b;--light-purple: #f1daf7;--light-bg: #fcf9f9}html{scroll-behavior:smooth;background-color:var(--light-bg);overflow-x:clip}body{font-family:Playfair Display,Georgia,serif;background-color:var(--light-bg);color:#333;margin:0;padding:0;overflow-x:clip}body::-webkit-scrollbar{display:none}.font-brand{font-family:Griffy,cursive}.font-sans-ui{font-family:Plus Jakarta Sans,sans-serif}.bg-navbar-custom{background-color:var(--brand-purple)!important}.nav-link-custom{color:#ffffffd9!important;font-size:.85rem;font-weight:500;text-transform:uppercase;letter-spacing:.1em;transition:color .2s ease}.nav-link-custom:hover{color:#f1daf7!important}.btn-brand-primary{background-color:var(--accent-purple);color:#fff;border:none;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:10px 24px;border-radius:2px;transition:all .3s ease;text-decoration:none;display:inline-block}.btn-brand-primary:hover{background-color:#6a3a7f;color:#fff}.btn-brand-dark{background-color:var(--brand-purple);color:#fff;border:none;font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:.1em;padding:12px 30px;border-radius:2px;text-decoration:none;display:inline-block}.btn-brand-dark:hover{background-color:#271232;color:#fff}.price-dots{flex-grow:1;border-bottom:2px dashed #e2d7e7;margin-left:10px;margin-right:10px;margin-bottom:5px}.logo-accent-row{display:flex;align-items:center;justify-content:center;gap:16px;width:100%}.brand-divider-line{display:flex;align-items:center;position:relative;height:1px;background-color:#d1b9dc;width:80px}.diamond-wrapper{display:flex;align-items:center;justify-content:space-between;position:absolute;width:100%}.diamond{background-color:#a481b5;transform:rotate(45deg);flex-shrink:0}.diamond.small{width:4px;height:4px}.diamond.medium{width:6px;height:6px}.diamond.large{width:9px;height:9px}.divider-left .diamond-wrapper{right:0;justify-content:flex-end;gap:8px}.divider-right .diamond-wrapper{left:0;justify-content:flex-start;gap:8px}.carousel-btn-custom{width:42px!important;height:42px!important;background-color:#fff!important;border:1px solid #e2d7e7!important;border-radius:50%!important;position:absolute!important;top:45%!important;transform:translateY(-50%)!important;z-index:10!important;opacity:.8;transition:background-color .2s ease,opacity .2s ease}.carousel-btn-custom:hover{filter:brightness(.95)}.carousel-btn-custom:hover .carousel-control-prev-icon,.carousel-btn-custom:hover .carousel-control-next-icon{filter:invert(1) brightness(100)}.carousel-btn-custom .carousel-control-prev-icon,.carousel-btn-custom .carousel-control-next-icon{width:14px;height:14px;filter:invert(.3)}.review-indicators [data-bs-target]{width:8px!important;height:8px!important;border-radius:50%!important;background-color:#b999c9!important;border:none!important;margin:0 4px!important}.review-indicators .active{background-color:#3d1d4d!important}.hero-bleed-container{position:relative;width:100%;min-height:600px;background-image:url(/images/hero.png);background-size:cover;background-position:center center;background-repeat:no-repeat;display:flex;align-items:center}.hero-blur-overlay{position:absolute;top:0;left:0;height:100%;width:100%;background:linear-gradient(to right,#fcf9f9,#fcf9f9f2 35%,#fcf9f9b3 55%,#fcf9f900 80%)}#fullGalleryModal .modal-content{border-radius:0!important}.gallery-modal-item{border:1px solid #f8f4f9;border-radius:0!important}.gallery-modal-item img{transition:transform .6s cubic-bezier(.25,1,.5,1)}.gallery-modal-item:hover img{transform:scale(1.05)}.gallery-item-overlay{position:absolute;top:0;left:0;width:100%;height:100%;background:#3d1d4d73;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .4s ease;padding:20px;text-align:center;pointer-events:none}.gallery-modal-item:hover .gallery-item-overlay{opacity:1}.overlay-text-box{transform:translateY(10px);transition:transform .4s cubic-bezier(.25,1,.5,1)}.gallery-modal-item:hover .overlay-text-box{transform:translateY(0)}#fullGalleryModal .modal-dialog-scrollable .modal-body::-webkit-scrollbar{width:6px}#fullGalleryModal .modal-dialog-scrollable .modal-body::-webkit-scrollbar-track{background:#fff}#fullGalleryModal .modal-dialog-scrollable .modal-body::-webkit-scrollbar-thumb{background-color:#e6dee8;border-radius:10px}.dynamic-gallery-carousel .carousel-item img{display:block;width:100%}#galleryCarouselMobile .carousel-indicators button{width:6px!important;height:6px!important;border-radius:50%!important;opacity:.3!important;background-color:#834d9b!important;border:none!important;margin:0 4px!important;transition:all .4s cubic-bezier(.16,1,.3,1)!important}#galleryCarouselMobile .carousel-indicators .active{width:24px!important;border-radius:10px!important;opacity:1!important}.gallery-overlay-hide{opacity:0!important;pointer-events:none;transform:translateY(10px)!important;transition:all .3s ease-in-out!important}.carousel-item .position-absolute{transition:all .3s ease-in-out}.chip-scroll::-webkit-scrollbar{display:none}.image-container{background-color:#e9ecef;position:relative;overflow:hidden;border-radius:.5rem}.image-container:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);animation:shimmer 1.5s infinite}.image-container.is-loaded{background-color:transparent!important}.image-container.is-loaded:before{display:none}.image-container img{opacity:0;transition:opacity .3s ease-in-out}.image-container img.loaded{opacity:1}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width: 767.98px){.hero-bleed-container{background-position:10% 85%;min-height:540px;background-size:cover}.hero-blur-overlay{backdrop-filter:none;-webkit-backdrop-filter:none;background:radial-gradient(circle at 50% 35%,rgba(252,249,249,.92) 0%,rgba(252,249,249,.6) 65%,transparent 95%),linear-gradient(to bottom,#fcf9f9cc,#fcf9f900 80%)}}@media (min-width: 768px){#galleryCarouselDesktop .carousel-item{padding:0 5px}}
