:root{--radius:16px;--brand:#e0457b;--brand-2:#ff7aa2;--ink:#1b1028}
body.theme-dark{color:#fff;background:linear-gradient(135deg,#1b1028 0%,#3a1244 45%,#e0457b 100%);min-height:100vh}
.site-brand .site-name{letter-spacing:.2px;font-weight:600}
.img-crop{display:block;width:100%;height:100%;object-fit:cover;border-radius:var(--radius)}
.glass-card{background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:0 10px 30px rgba(0,0,0,.25)}
.section{position:relative;z-index:1}
.section-cta{z-index:2}
main{min-height:60vh}
#mainNav{overflow:visible!important}
.navbar{position:relative;z-index:1100;overflow:visible!important}
.toast-container{z-index:2000}
.cookie-banner{z-index:1050;max-width:calc(100vw - 32px)}
.cookie-banner .btn{white-space:nowrap}
@media (min-width:768px){
 .navbar .container,.navbar .container-fluid{flex-direction:column;align-items:stretch}
 .navbar .header-top{display:flex;align-items:center;justify-content:space-between;width:100%}
 #mainNav{width:100%}
 #mainNav .navbar-nav{flex-direction:row;flex-wrap:nowrap;overflow-x:auto;white-space:nowrap;gap:.25rem;padding-bottom:2px}
 #mainNav .navbar-nav .nav-link{white-space:nowrap}
 #mainNav .navbar-nav::-webkit-scrollbar{height:6px}
}
@media (max-width:767.98px){
 .cookie-banner{left:12px!important;right:12px!important;bottom:12px!important;width:auto!important;max-width:none!important;padding:12px!important}
 .cookie-banner .cookie-inner{display:flex;flex-direction:column;gap:10px}
 .cookie-banner .cookie-actions{display:flex;flex-direction:column;gap:8px}
 .cookie-banner .cookie-actions .btn{width:100%}
}
:root{--carousel-h:420px}
@media (max-width:767.98px){:root{--carousel-h:280px}}
.carousel .carousel-item{height:var(--carousel-h)}
.carousel .carousel-item>img{display:block;height:100%;width:100%;object-fit:cover}
.carousel-caption{left:0;right:0;bottom:1rem;padding:0}
.carousel-caption .caption-box{display:inline-block;max-width:min(720px,92vw);padding:14px 16px;border-radius:16px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:rgba(0,0,0,.55);color:#fff}
.badge-glass{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff}
.card{border-radius:var(--radius);background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.15)}
.card .icon{font-size:1.5rem;color:var(--brand-2)}
.btn-primary{background:var(--brand);border-color:var(--brand)}
.btn-primary:hover{background:#c43a6a;border-color:#c43a6a}
.btn-outline-light{border-color:#fff;color:#fff}
.btn-outline-light:hover{background:#fff;color:#1b1028}
.rating .fa-star,.rating .fa-star-half-stroke{color:#ffc107}
.map-wrap iframe{width:100%;min-height:340px;border:0;border-radius:var(--radius)}
.footer-social a{color:#fff;opacity:.9}
.footer-social a:hover{opacity:1}
.footer-desc{opacity:.95;max-width:820px}
.price-card{position:relative}
.price-card .price{font-size:2rem;font-weight:700}
.price-card.featured{border:1px solid var(--brand-2);box-shadow:0 0 0 2px rgba(255,122,162,.25)}
.step-num{display:inline-flex;width:38px;height:38px;border-radius:50%;background:var(--brand);align-items:center;justify-content:center;font-weight:700;margin-right:10px}
.tag{display:inline-block;padding:.25rem .6rem;border-radius:999px;background:rgba(255,255,255,.12);font-size:.8rem;margin-right:.25rem}
