:root{
  --bg:#080308;
  --bg-soft:#100710;
  --panel:#140a13;
  --panel-2:#1a0c17;
  --text:#fff8fc;
  --muted:#c7aebc;
  --line:rgba(255,255,255,.09);
  --pink:#ff0f87;
  --pink-2:#ff54af;
  --orange:#ff8a1d;
  --gold:#ffd36f;
  --green:#25d366;
  --purple:#7360f2;
  --shadow:0 28px 80px rgba(0,0,0,.42);
  --max:1180px;
  --radius:30px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--bg);color:var(--text);font-family:"DM Sans",sans-serif;line-height:1.65;overflow-x:hidden;background-image:radial-gradient(circle at 15% 10%,rgba(255,15,135,.08),transparent 30%),radial-gradient(circle at 85% 22%,rgba(255,138,29,.05),transparent 25%)}
body::selection{background:rgba(255,15,135,.38);color:#fff}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}
button,input,textarea,select{font:inherit}
.container{width:min(100% - 34px,var(--max));margin-inline:auto}
h1,h2,h3{margin:0 0 18px;line-height:1.05;letter-spacing:-.025em}
h1,h2{font-family:"Playfair Display",serif}
h1{font-size:clamp(2.1rem,5vw,4.8rem)}
h2{font-size:clamp(2.2rem,3.8vw,3.7rem)}
h3{font-size:1.35rem}
p{color:var(--muted);margin:0 0 18px}
.gradient-text{background:linear-gradient(100deg,var(--orange),#ffc467 37%,#ff6aa9 67%,var(--pink));-webkit-background-clip:text;background-clip:text;color:transparent}
.eyebrow{display:inline-flex;align-items:center;gap:9px;color:#ffc7e6;font-size:.77rem;font-weight:800;letter-spacing:.18em;text-transform:uppercase}.eyebrow:before{content:"";width:30px;height:1px;background:linear-gradient(90deg,var(--orange),var(--pink))}
.section{position:relative;padding:104px 0}.section--soft{background:linear-gradient(180deg,rgba(255,255,255,.018),rgba(255,15,135,.028),rgba(255,255,255,.012));border-block:1px solid rgba(255,255,255,.045)}
.section-head{display:flex;justify-content:space-between;gap:36px;align-items:end;margin-bottom:46px}.section-head>div{max-width:760px}.section-head p{max-width:420px;margin-bottom:5px}

/* Loader */
.site-loader{position:fixed;inset:0;background:#070207;z-index:9999;display:grid;place-items:center;align-content:center;gap:18px;transition:opacity .65s ease,visibility .65s ease}.site-loader.hidden{opacity:0;visibility:hidden}.loader-icon{width:116px;height:116px;position:relative;display:grid;place-items:center}.loader-icon:before,.loader-icon:after{content:"";position:absolute;border-radius:50%;inset:-8px;border:1px solid rgba(255,83,177,.28);animation:loaderSpin 2.8s linear infinite}.loader-icon:after{inset:2px;border-color:rgba(255,153,47,.26);animation-direction:reverse;animation-duration:2.1s}.loader-icon img{width:92px;height:92px;object-fit:cover;border-radius:24px;filter:drop-shadow(0 0 24px rgba(255,15,135,.4));animation:loaderPulse 1.6s ease-in-out infinite}.site-loader>span{font-family:"Playfair Display",serif;font-size:1.05rem;letter-spacing:.08em;color:#ffe0ef}
@keyframes loaderSpin{to{transform:rotate(360deg)}}@keyframes loaderPulse{50%{transform:scale(1.06);filter:drop-shadow(0 0 38px rgba(255,15,135,.62))}}

/* top bar + nav */
.topbar{border-bottom:1px solid rgba(255,255,255,.06);background:#050205;color:#d8b9c9;font-size:.78rem;letter-spacing:.04em}.topbar .container{height:35px;display:flex;align-items:center;justify-content:space-between}.topbar a{color:#ffd0e8;font-weight:700}
.site-header{position:sticky;top:0;z-index:1000;background:rgba(8,3,8,.72);backdrop-filter:blur(18px);border-bottom:1px solid transparent;transition:.3s ease}.site-header.scrolled{background:rgba(8,3,8,.92);border-bottom-color:rgba(255,255,255,.08);box-shadow:0 16px 40px rgba(0,0,0,.28)}
.nav{height:86px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:13px;min-width:0}.brand img{width:64px;height:64px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(255,15,135,.28));transition:.35s ease}.brand:hover img{transform:scale(1.04) rotate(-2deg)}.brand span{font-family:"Playfair Display",serif;font-weight:700;font-size:1rem;white-space:nowrap}.brand small{display:block;font-family:"DM Sans",sans-serif;font-size:.66rem;font-weight:600;color:#b997aa;letter-spacing:.08em;text-transform:uppercase;margin-top:3px}
.nav-links{display:flex;align-items:center;gap:24px}.nav-links>a:not(.btn){color:#d7bccb;font-size:.88rem;font-weight:600;position:relative}.nav-links>a:not(.btn):after{content:"";position:absolute;left:0;bottom:-7px;width:0;height:1px;background:linear-gradient(90deg,var(--orange),var(--pink));transition:.25s ease}.nav-links>a:not(.btn):hover{color:#fff}.nav-links>a:not(.btn):hover:after{width:100%}.nav-cta{margin-left:4px}
.nav-toggle{display:none;background:none;border:0;padding:9px;cursor:pointer;color:#fff;font-size:1.35rem}.nav-toggle span{display:block;width:24px;height:2px;background:#fff;margin:5px 0;border-radius:5px;transition:.25s ease}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:0 20px;border-radius:999px;font-weight:800;font-size:.87rem;border:1px solid transparent;transition:.3s cubic-bezier(.2,.8,.2,1);cursor:pointer}.btn:hover{transform:translateY(-3px)}.btn-primary{background:linear-gradient(105deg,var(--orange),var(--pink));color:#fff;box-shadow:0 12px 34px rgba(255,15,135,.22)}.btn-primary:hover{box-shadow:0 16px 44px rgba(255,15,135,.34)}.btn-secondary{border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.045);color:#fff;backdrop-filter:blur(12px)}.btn-secondary:hover{border-color:rgba(255,84,175,.42);background:rgba(255,255,255,.07)}.btn-lg{min-height:56px;padding-inline:26px;font-size:.94rem}

/* progress */
.scroll-progress{position:fixed;top:0;left:0;right:0;height:2px;z-index:3000;pointer-events:none}.scroll-progress span{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--orange),var(--pink));box-shadow:0 0 14px rgba(255,15,135,.7)}

/* hero */
.hero{position:relative;overflow:hidden}.hero-redesign{min-height:calc(100vh - 121px);padding:82px 0 92px;display:grid;align-items:center}.hero-background{position:absolute;inset:0;opacity:.37}.hero-background img{width:100%;height:100%;object-fit:cover;filter:saturate(.7) contrast(1.05)}.hero-background-overlay{position:absolute;inset:0;background:linear-gradient(90deg,#080308 5%,rgba(8,3,8,.91) 46%,rgba(8,3,8,.55) 75%,rgba(8,3,8,.82)),linear-gradient(180deg,rgba(8,3,8,.2),#080308 97%)}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.04fr .96fr;gap:64px;align-items:center}.hero-copy{max-width:680px}.hero-kicker{display:inline-flex;align-items:center;gap:9px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.035);padding:9px 14px;border-radius:999px;color:#ebcada;font-size:.79rem;font-weight:700;margin-bottom:24px;backdrop-filter:blur(12px)}.pulse-dot{width:8px;height:8px;border-radius:50%;background:var(--pink);box-shadow:0 0 0 0 rgba(255,15,135,.45);animation:pulseDot 2s infinite}.hero-copy h1{max-width:760px}.hero-lead{font-size:1.07rem;max-width:610px;color:#cfb3c2}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0}.hero-proof{display:flex;gap:0;margin-top:32px;border-top:1px solid rgba(255,255,255,.09);padding-top:24px}.hero-proof>div{padding:0 28px;border-left:1px solid rgba(255,255,255,.09)}.hero-proof>div:first-child{padding-left:0;border-left:0}.hero-proof strong{display:block;font-family:"Playfair Display",serif;font-size:1.65rem;color:#fff}.hero-proof span{display:block;font-size:.73rem;color:#ae8f9f;margin-top:2px;text-transform:uppercase;letter-spacing:.08em}
.hero-showcase{position:relative;min-height:600px}.showcase-card{position:absolute;overflow:hidden;border:1px solid rgba(255,255,255,.11);box-shadow:var(--shadow)}.main-showcase{inset:55px 6px 20px 44px;border-radius:38px}.main-showcase img{width:100%;height:100%;object-fit:cover;transition:transform 8s ease}.main-showcase:hover img{transform:scale(1.07)}.showcase-shade{position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(6,2,6,.86))}.showcase-copy{position:absolute;left:28px;right:28px;bottom:28px;z-index:2;display:grid}.showcase-copy span{font-size:.75rem;text-transform:uppercase;letter-spacing:.16em;color:#ffc5e3;font-weight:800}.showcase-copy strong{font-family:"Playfair Display",serif;font-size:2rem;margin:4px 0}.showcase-copy small{color:#caaabd}.logo-medallion{position:absolute;left:0;top:5px;width:158px;height:158px;border-radius:32px;padding:12px;background:rgba(8,3,8,.88);border:1px solid rgba(255,84,175,.25);box-shadow:0 20px 60px rgba(0,0,0,.42),0 0 36px rgba(255,15,135,.16);backdrop-filter:blur(15px);z-index:3}.logo-medallion img{width:100%;height:100%;object-fit:contain}.mini-card{position:absolute;z-index:4;background:rgba(11,5,10,.88);border:1px solid rgba(255,255,255,.11);backdrop-filter:blur(15px);box-shadow:0 18px 50px rgba(0,0,0,.35);border-radius:20px;padding:15px 18px}.rate-card{right:-16px;top:118px}.city-card{left:10px;bottom:0}.mini-card span,.mini-card small{display:block;color:#b99aa9;font-size:.72rem}.mini-card strong{display:block;font-family:"Playfair Display",serif;font-size:1.45rem;color:#fff}.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);opacity:.6}.orb-a{width:410px;height:410px;right:-180px;top:70px;background:radial-gradient(circle,rgba(255,15,135,.2),transparent 67%)}.orb-b{width:350px;height:350px;left:-170px;bottom:-80px;background:radial-gradient(circle,rgba(255,132,29,.14),transparent 68%)}.scroll-hint{position:absolute;bottom:20px;left:50%;transform:translateX(-50%);z-index:3;color:#a98a99;font-size:.69rem;letter-spacing:.14em;text-transform:uppercase;display:flex;gap:8px;align-items:center}.scroll-hint span{width:1px;height:28px;background:linear-gradient(var(--pink),transparent);animation:scrollHint 1.8s ease-in-out infinite}
@keyframes pulseDot{70%{box-shadow:0 0 0 9px rgba(255,15,135,0)}}@keyframes scrollHint{50%{transform:translateY(6px);opacity:.5}}

.brand-strip{overflow:hidden;border-block:1px solid rgba(255,255,255,.06);background:#0b040a}.brand-strip-track{min-width:max-content;display:flex;align-items:center;gap:23px;padding:18px 0;animation:marquee 30s linear infinite;color:#a88d9b;font-size:.76rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}.brand-strip-track i{font-style:normal;color:var(--pink)}@keyframes marquee{from{transform:translateX(0)}to{transform:translateX(-35%)}}

/* Intro */
.intro-grid{display:grid;grid-template-columns:.95fr 1.05fr;gap:72px;align-items:center}.intro-art{position:relative;min-height:620px}.intro-img{position:absolute;margin:0;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}.intro-img img{width:100%;height:100%;object-fit:cover;transition:transform .8s ease}.intro-img:hover img{transform:scale(1.05)}.intro-img-main{inset:0 80px 40px 0;border-radius:40px}.intro-img-small{right:0;bottom:0;width:230px;height:260px;border-radius:28px}.intro-badge{position:absolute;left:24px;bottom:8px;background:rgba(10,4,9,.9);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.11);border-radius:18px;padding:15px 18px;z-index:3}.intro-badge strong,.intro-badge span{display:block}.intro-badge strong{font-family:"Playfair Display",serif}.intro-badge span{font-size:.76rem;color:#ac8d9c;margin-top:2px}.intro-copy{max-width:600px}.intro-copy h2{margin-top:17px}.feature-list{display:grid;gap:0;margin-top:30px}.feature-list>div{display:grid;grid-template-columns:48px 1fr;gap:18px;padding:18px 0;border-top:1px solid rgba(255,255,255,.08)}.feature-list>div>span{font-family:"Playfair Display",serif;font-size:1.05rem;color:var(--pink-2)}.feature-list strong{display:block;margin-bottom:4px}.feature-list p{margin:0;font-size:.92rem}

/* Services */
.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{overflow:hidden;border:1px solid var(--line);border-radius:26px;background:linear-gradient(180deg,rgba(255,255,255,.035),rgba(255,255,255,.018));transition:.35s ease}.service-card:hover{transform:translateY(-7px);border-color:rgba(255,84,175,.26);box-shadow:0 20px 50px rgba(0,0,0,.26)}.service-media{height:260px;position:relative;display:block;overflow:hidden;background:#170a14}.service-media img{width:100%;height:100%;object-fit:cover;transition:transform .75s cubic-bezier(.2,.8,.2,1),filter .35s ease}.service-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 48%,rgba(8,3,8,.62))}.service-card:hover .service-media img{transform:scale(1.07);filter:saturate(1.08)}.service-media span{position:absolute;z-index:2;left:15px;bottom:14px;padding:7px 11px;border-radius:999px;background:rgba(8,3,8,.72);border:1px solid rgba(255,255,255,.1);font-size:.68rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800}.service-body{padding:23px}.service-body small{font-family:"Playfair Display",serif;color:#ff82c3}.service-body h3{font-family:"Playfair Display",serif;font-size:1.5rem;margin:7px 0 11px}.service-body p{font-size:.9rem;min-height:70px}.more{font-size:.83rem;font-weight:800;color:#ffd3e9}.more:hover{color:#fff}.feature-service{grid-column:span 2}.feature-service .service-media{height:330px}.feature-service .service-body p{min-height:0}

/* pricing */
.pricing-section{overflow:hidden}.pricing-section:before{content:"";position:absolute;width:600px;height:600px;border-radius:50%;background:radial-gradient(circle,rgba(255,15,135,.09),transparent 68%);right:-200px;top:0}.pricing-redesign{display:grid;grid-template-columns:.85fr 1.15fr;gap:54px;align-items:center;position:relative}.pricing-copy h2{margin-top:16px}.included-pills{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.included-pills span{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.03);border-radius:999px;padding:8px 12px;color:#d6b8c8;font-size:.78rem}.fine-print{font-size:.8rem;color:#9f8492}.price-cards{display:grid;grid-template-columns:1fr 1fr;gap:16px}.price-card{position:relative;padding:34px;border-radius:30px;border:1px solid rgba(255,255,255,.1);background:linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.018));box-shadow:0 22px 50px rgba(0,0,0,.23)}.price-card-featured{background:linear-gradient(160deg,rgba(255,125,28,.09),rgba(255,15,135,.12));border-color:rgba(255,84,175,.28);transform:translateY(-14px)}.price-label{font-size:.72rem;text-transform:uppercase;letter-spacing:.14em;color:#c7a2b6;font-weight:800}.price{font-family:"Playfair Display",serif;font-size:3.9rem;line-height:1;color:#fff;margin:16px 0 5px}.price small{font-size:1.5rem;color:#ff9acb}.price-card>strong{display:block;font-size:1rem;margin-bottom:14px}.price-card .btn{width:100%;margin-top:6px}.popular-badge{position:absolute;right:18px;top:18px;font-size:.65rem;text-transform:uppercase;letter-spacing:.1em;background:linear-gradient(100deg,var(--orange),var(--pink));padding:7px 10px;border-radius:999px;font-weight:800}

/* Locations */
.location-showcase{display:grid;grid-template-columns:.9fr 1.1fr;gap:26px;align-items:stretch}.location-visual{position:relative;min-height:560px;border-radius:34px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}.location-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 8s ease}.location-visual:hover img{transform:scale(1.06)}.location-visual:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(8,3,8,.82))}.location-badge{position:absolute;z-index:2;left:22px;right:22px;bottom:22px;padding:20px;border-radius:20px;background:rgba(8,3,8,.74);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1)}.location-badge span,.location-badge small{display:block;color:#b79aa9}.location-badge strong{display:block;font-family:"Playfair Display",serif;font-size:2.35rem}.locations-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.location-chip{display:flex;flex-direction:column;justify-content:center;min-height:118px;padding:20px;border-radius:22px;border:1px solid var(--line);background:rgba(255,255,255,.025);transition:.3s ease}.location-chip:hover{transform:translateY(-4px);border-color:rgba(255,84,175,.33);background:rgba(255,15,135,.04)}.location-chip strong{font-family:"Playfair Display",serif;font-size:1.2rem}.location-chip span{font-size:.75rem;color:#a88a99;margin-top:5px}.location-more{grid-column:1/-1;background:linear-gradient(100deg,rgba(255,130,27,.06),rgba(255,15,135,.08))}

/* booking */
.booking-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.booking-copy{position:sticky;top:130px}.booking-copy h2{margin-top:16px}.booking-steps{display:grid;gap:14px}.booking-step{position:relative;padding:28px 30px 28px 94px;border-radius:24px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.022);transition:.3s ease}.booking-step:hover{border-color:rgba(255,84,175,.28);transform:translateX(7px)}.booking-step>span{position:absolute;left:28px;top:25px;font-family:"Playfair Display",serif;font-size:1.5rem;color:#ff78bd}.booking-step h3{font-family:"Playfair Display",serif;margin-bottom:8px}.booking-step p{margin:0}

/* FAQ */
.faq-layout{display:grid;grid-template-columns:.75fr 1.25fr;gap:48px;align-items:start}.faq-intro h2{margin-top:16px}.faq-contact-card{margin-top:28px;padding:22px;border-radius:22px;border:1px solid rgba(255,84,175,.2);background:linear-gradient(140deg,rgba(255,15,135,.08),rgba(255,132,29,.04));display:grid;gap:3px}.faq-contact-card span{font-size:.75rem;color:#a98b9a}.faq-contact-card strong{font-family:"Playfair Display",serif;font-size:1.35rem}.faq-contact-card a{font-size:.8rem;color:#ffadd7;margin-top:7px}.faq{display:grid;gap:11px}.faq details{border:1px solid var(--line);border-radius:20px;background:rgba(255,255,255,.025);padding:0 22px;transition:.25s ease}.faq details[open]{border-color:rgba(255,84,175,.25);background:rgba(255,15,135,.035)}.faq summary{cursor:pointer;list-style:none;padding:20px 0;font-weight:800;display:flex;align-items:center;justify-content:space-between;gap:14px}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";color:var(--pink-2);font-size:1.25rem;transition:.25s}.faq details[open] summary:after{transform:rotate(45deg)}.faq details p{padding:0 0 20px;margin:0}

/* final CTA */
.final-cta{position:relative;min-height:460px;border-radius:38px;overflow:hidden;border:1px solid rgba(255,255,255,.11);box-shadow:var(--shadow);display:grid;align-items:center}.final-cta>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.final-cta-overlay{position:absolute;inset:0;background:linear-gradient(90deg,rgba(6,2,6,.96),rgba(6,2,6,.75) 50%,rgba(6,2,6,.36)),linear-gradient(180deg,transparent,rgba(6,2,6,.6))}.final-cta-content{position:relative;z-index:2;max-width:700px;padding:52px}.final-cta-content h2{margin-top:16px}.final-cta-content p{max-width:570px}

/* footer */
.site-footer{border-top:1px solid rgba(255,255,255,.07);padding:68px 0 20px;background:#060205}.footer-grid{display:grid;grid-template-columns:1.25fr .7fr .7fr;gap:52px}.footer-brand p{max-width:450px;margin-top:18px}.footer-grid h3{font-family:"Playfair Display",serif;font-size:1rem;margin-bottom:17px}.footer-links{display:grid;gap:9px}.footer-links a{font-size:.84rem;color:#ad8f9f}.footer-links a:hover{color:#fff}.footer-contacts{display:flex;flex-wrap:wrap;gap:8px}.footer-contacts a{font-size:.78rem;border:1px solid rgba(255,255,255,.08);padding:8px 11px;border-radius:999px;color:#d8bbca}.copyright{border-top:1px solid rgba(255,255,255,.06);padding-top:18px;margin-top:48px;color:#806b76;font-size:.72rem}

/* floating contact */
.floating-contact{position:fixed;left:50%;bottom:16px;transform:translateX(-50%);z-index:1800;display:flex;gap:6px;padding:6px;border-radius:999px;background:rgba(8,3,8,.9);backdrop-filter:blur(18px);border:1px solid rgba(255,255,255,.1);box-shadow:0 20px 45px rgba(0,0,0,.42)}.floating-contact a{height:46px;min-width:102px;padding:0 15px;border-radius:999px;display:flex;align-items:center;justify-content:center;font-size:.78rem;font-weight:800;transition:.25s}.floating-contact a:hover{transform:translateY(-2px)}.floating-contact .call{background:rgba(255,255,255,.06)}.floating-contact .wa{background:#1f9f50}.floating-contact .viber{background:#5e4fc7}

/* internal pages */
.breadcrumbs{padding-top:25px;color:#8f7583;font-size:.77rem;display:flex;gap:9px;flex-wrap:wrap}.breadcrumbs a:hover{color:#fff}.page-hero{padding:56px 0 64px}.page-hero-grid{display:grid;grid-template-columns:1fr .9fr;gap:42px;align-items:center}.page-hero h1{font-size:clamp(2.7rem,5.5vw,5rem);margin-top:16px}.page-hero .inner p{max-width:650px}.page-hero-media{position:relative;min-height:420px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow);margin:0}.page-hero-media>img:first-child{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform 8s ease}.page-hero-media:hover>img:first-child{transform:scale(1.06)}.page-hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 45%,rgba(5,2,5,.72))}.page-hero-media figcaption{position:absolute;z-index:2;left:18px;bottom:16px;font-weight:800;color:#fff}.page-hero-logo{position:absolute!important;right:16px!important;bottom:16px!important;left:auto!important;top:auto!important;width:110px!important;height:110px!important;object-fit:contain!important;z-index:3!important;filter:drop-shadow(0 0 18px rgba(255,15,135,.35))}
.content-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px}.content-card{padding:36px;border:1px solid var(--line);border-radius:28px;background:rgba(255,255,255,.022)}.content-card h2{font-family:"Playfair Display",serif;font-size:2rem;margin-top:36px}.content-card h2:first-child{margin-top:0}.content-card a{color:#ff8bc7}.article-media{margin:26px 0 32px;border-radius:24px;overflow:hidden;border:1px solid rgba(255,255,255,.1);height:350px;position:relative}.article-media img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.article-media:hover img{transform:scale(1.05)}.article-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 55%,rgba(5,2,5,.62))}.article-caption{position:absolute;z-index:2;left:18px;bottom:15px;font-weight:800}.mini-gallery{display:grid;grid-template-columns:1.2fr .8fr;gap:12px;margin:28px 0}.mini-gallery figure{margin:0;height:240px;border-radius:20px;overflow:hidden;border:1px solid var(--line)}.mini-gallery img{width:100%;height:100%;object-fit:cover;transition:transform .6s ease}.mini-gallery figure:hover img{transform:scale(1.05)}.side-card{position:sticky;top:110px;padding:24px;border-radius:24px;border:1px solid rgba(255,76,178,.2);background:linear-gradient(180deg,rgba(255,15,135,.07),rgba(255,122,24,.025));height:max-content}.side-card .btn{width:100%;margin-top:9px}.side-card-media{height:170px;border-radius:18px;overflow:hidden;margin:-4px -4px 18px;border:1px solid rgba(255,255,255,.08)}.side-card-media img{width:100%;height:100%;object-fit:cover}.related{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.related a{padding:12px;border-radius:14px;border:1px solid var(--line);color:#d9b7c7}.related a:hover{border-color:rgba(255,76,178,.4);color:#fff}

/* legacy helpers from internal listing pages */
.pricing-layout,.location-layout,.process-layout{display:grid;grid-template-columns:1fr 1fr;gap:34px;align-items:center}.pricing-visual,.process-visual,.faq-visual{position:relative;min-height:520px;border-radius:32px;overflow:hidden;border:1px solid rgba(255,255,255,.1);box-shadow:var(--shadow)}.pricing-visual img,.process-visual img,.faq-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.image-overlay-card,.process-card,.faq-caption{position:absolute;z-index:2;left:22px;right:22px;bottom:22px;padding:20px;border-radius:20px;background:rgba(8,3,8,.78);backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.1)}.price-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}.stat,.price-box{border:1px solid var(--line);border-radius:18px;padding:18px;background:rgba(255,255,255,.025)}.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.process{display:grid}.step{position:relative;padding:22px 0;border-top:1px solid var(--line)}

/* animation */
.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:0;transition:opacity .78s ease,transform .78s cubic-bezier(.2,.72,.2,1)}.reveal{transform:translateY(28px)}.reveal-left{transform:translateX(-38px)}.reveal-right{transform:translateX(38px)}.reveal-scale{transform:scale(.95) translateY(18px)}.reveal.visible,.reveal-left.visible,.reveal-right.visible,.reveal-scale.visible{opacity:1;transform:none}.float-slow{animation:float 6.2s ease-in-out infinite}.float-medium{animation:float 5s ease-in-out infinite}.float-fast{animation:float 4.2s ease-in-out infinite reverse}@keyframes float{50%{transform:translateY(-11px)}}

@media(max-width:1080px){
  .hero-grid,.intro-grid,.pricing-redesign,.location-showcase,.booking-grid,.faq-layout,.page-hero-grid,.content-layout,.pricing-layout,.location-layout,.process-layout{grid-template-columns:1fr}
  .hero-redesign{min-height:auto}.hero-copy{max-width:780px}.hero-showcase{min-height:580px;max-width:760px;width:100%;margin-inline:auto}.intro-art{min-height:560px}.booking-copy{position:relative;top:0}.service-grid{grid-template-columns:repeat(2,1fr)}.feature-service{grid-column:span 2}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.side-card{position:relative;top:0}.page-hero-media{min-height:360px}.nav-links{position:fixed;left:18px;right:18px;top:122px;display:none;flex-direction:column;align-items:stretch;padding:20px;border-radius:22px;background:rgba(14,6,13,.98);border:1px solid var(--line);box-shadow:var(--shadow)}.nav-links.open{display:flex}.nav-links>a:not(.btn){padding:8px}.nav-toggle{display:block}.nav-cta{margin-left:0}
}
@media(max-width:740px){
  body{padding-bottom:76px}.container{width:min(100% - 22px,var(--max))}.topbar .container{font-size:.7rem}.topbar span{max-width:65%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.nav{height:76px}.brand img{width:54px;height:54px}.brand span{font-size:.88rem}.site-header .nav-links{top:112px}.section{padding:76px 0}.section-head{align-items:flex-start;flex-direction:column;margin-bottom:32px}.hero-redesign{padding:52px 0 74px}.hero-grid{gap:28px}.hero-copy h1{font-size:clamp(3rem,16vw,4.7rem)}.hero-lead{font-size:.98rem}.hero-proof{display:grid;grid-template-columns:repeat(3,1fr)}.hero-proof>div{padding:0 10px}.hero-proof strong{font-size:1.25rem}.hero-proof span{font-size:.61rem}.hero-showcase{min-height:440px}.main-showcase{inset:40px 0 20px 28px;border-radius:28px}.logo-medallion{width:112px;height:112px;border-radius:24px}.rate-card{right:-3px;top:83px}.city-card{left:4px}.showcase-copy{left:20px;right:20px;bottom:20px}.showcase-copy strong{font-size:1.55rem}.intro-art{min-height:460px}.intro-img-main{inset:0 54px 34px 0;border-radius:30px}.intro-img-small{width:175px;height:205px}.intro-badge{left:12px}.service-grid{grid-template-columns:1fr}.feature-service{grid-column:auto}.feature-service .service-media,.service-media{height:245px}.price-cards{grid-template-columns:1fr}.price-card-featured{transform:none}.locations-grid{grid-template-columns:1fr 1fr}.location-visual{min-height:420px}.booking-step{padding:24px 24px 24px 76px}.booking-step>span{left:22px}.final-cta{min-height:520px}.final-cta-content{padding:30px 22px}.footer-grid{grid-template-columns:1fr}.footer-brand{grid-column:auto}.floating-contact{left:8px;right:8px;bottom:8px;transform:none;width:auto}.floating-contact a{min-width:0;flex:1;padding:0 8px}.page-hero{padding-top:42px}.content-card{padding:24px}.article-media{height:280px}.mini-gallery{grid-template-columns:1fr}.mini-gallery figure{height:220px}.related{grid-template-columns:1fr 1fr}
}
@media(max-width:480px){.locations-grid,.related{grid-template-columns:1fr}.location-more{grid-column:auto}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-showcase{min-height:400px}.main-showcase{inset:32px 0 12px 20px}.logo-medallion{width:96px;height:96px}.mini-card{padding:12px 14px}.rate-card{top:72px}.city-card{display:none}.intro-art{min-height:390px}.intro-img-small{width:145px;height:170px}.service-media,.feature-service .service-media{height:220px}.footer-grid{gap:36px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition-duration:.01ms!important;transition-delay:0ms!important}.reveal,.reveal-left,.reveal-right,.reveal-scale{opacity:1!important;transform:none!important}.site-loader{display:none!important}}
