*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  scroll-behavior:smooth;
}

:root{
  --gold:#d6c3a2;
  --gold2:#f0dcc0;
  --gold3:#8f7550;
  --brand-color:var(--gold);
  --cream:#fff7ea;
  --dark:#050505;
  --card:#101010;
  --text:#eee3d3;
  --muted:#bfb4a6;
  --border:rgba(214,195,162,.24);
  --glass:rgba(12,12,12,.68);
  --glow:0 0 28px rgba(214,195,162,.30),0 0 90px rgba(214,195,162,.14);
}

html,body{
  width:100%;
  overflow-x:hidden;
}

body{
  font-family:'Poppins',sans-serif;
  background:
    radial-gradient(circle at 15% 8%,rgba(214,195,162,.16),transparent 28%),
    radial-gradient(circle at 86% 18%,rgba(143,117,80,.16),transparent 34%),
    linear-gradient(140deg,#020202,#080705 46%,#000);
  color:white;
  isolation:isolate;
}

body:before{
  content:"";
  position:fixed;
  inset:0;
  background:
    radial-gradient(circle at 15% 20%,rgba(214,195,162,.16),transparent 30%),
    radial-gradient(circle at 85% 10%,rgba(214,195,162,.10),transparent 35%),
    radial-gradient(circle at 50% 90%,rgba(214,195,162,.10),transparent 35%),
    #000;
  z-index:-4;
}

body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:-3;
  pointer-events:none;
  background-image:
    linear-gradient(rgba(214,195,162,.045) 1px,transparent 1px),
    linear-gradient(90deg,rgba(214,195,162,.035) 1px,transparent 1px);
  background-size:72px 72px;
  mask-image:linear-gradient(180deg,rgba(0,0,0,.62),transparent 78%);
}

#particlesCanvas{
  position:fixed;
  inset:0;
  width:100vw;
  height:100vh;
  z-index:1;
  pointer-events:none;
  opacity:.95;
  mix-blend-mode:screen;
}

main,
header,
footer,
section,
.social-float,
.whatsapp{
  position:relative;
  z-index:2;
}

.container{
  width:90%;
  max-width:1320px;
  margin:auto;
}

.hidden-field{
  display:none !important;
}

img{
  max-width:100%;
}

header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  z-index:1000;
  background:rgba(0,0,0,.70);
  backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(214,195,162,.18);
}

nav{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:25px;
  padding:16px 0;
}

.logo img{
  width:165px;
  display:block;
}

nav ul{
  display:flex;
  list-style:none;
  gap:26px;
}

nav ul li a{
  text-decoration:none;
  color:white;
  font-size:15px;
  transition:.3s;
}

nav ul li a:hover{
  color:var(--gold);
}

.btn{
  border:none;
  cursor:pointer;
  text-decoration:none;
  color:#000;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  padding:14px 30px;
  border-radius:50px;
  font-weight:700;
  font-family:'Poppins',sans-serif;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-shadow:
    0 0 18px rgba(214,195,162,.35),
    0 0 55px rgba(214,195,162,.18);
  transition:.35s;
}

.btn:hover{
  transform:translateY(-4px);
  box-shadow:
    0 0 28px rgba(214,195,162,.65),
    0 0 85px rgba(214,195,162,.28);
}

small{
  color:var(--gold);
  letter-spacing:0;
  text-transform:uppercase;
  font-weight:600;
  display:inline-block;
  margin-bottom:14px;
}

h1{
  font-size:clamp(40px,5.2vw,68px);
  line-height:1.05;
  letter-spacing:0;
}

h1 span{
  display:block;
  color:var(--gold);
}

h2{
  font-size:clamp(32px,4vw,52px);
  line-height:1.12;
  color:var(--gold);
}

h3{
  color:var(--gold);
}

p{
  color:var(--text);
  line-height:1.9;
}

section{
  padding:120px 0;
  background:transparent;
}

#contact{
  scroll-margin-top:110px;
}

.section-title{
  text-align:center;
  max-width:850px;
  margin:0 auto 70px;
}

.section-title h2{
  margin:10px 0 16px;
}

.section-title p{
  color:var(--muted);
}

.hero{
  min-height:100vh;
  display:flex;
  align-items:center;
  background:
    linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.28)),
    url('../images/hero.jpg') center/cover;
  overflow:hidden;
}

.hero .container{
  position:relative;
  z-index:3;
}

.hero-overlay{
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 40%,rgba(214,195,162,.18),transparent 32%),
    linear-gradient(180deg,transparent 70%,#000 100%);
}

.hero-content{
  max-width:850px;
  position:relative;
  z-index:3;
}

.hero-content p{
  max-width:660px;
  font-size:18px;
  margin:28px 0 38px;
}

/* ABOUT NEW */

.about-v2{
  background:
    radial-gradient(circle at 12% 22%,rgba(214,195,162,.10),transparent 32%),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(15,15,15,.72));
}

.about-v2-grid{
  display:grid;
  grid-template-columns:.95fr 1.05fr;
  gap:70px;
  align-items:center;
  position:relative;
}

.about-v2-grid:before{
  content:"";
  position:absolute;
  inset:8% 18% auto 12%;
  height:72%;
  border:1px solid rgba(214,195,162,.12);
  border-radius:48px;
  pointer-events:none;
  transform:rotate(-2deg);
}

.about-v2-image{
  position:relative;
  border-radius:42px;
  padding:2px;
  background:linear-gradient(135deg,var(--gold),transparent,var(--gold));
  box-shadow:0 0 75px rgba(214,195,162,.22);
  z-index:1;
}

.about-v2-image img{
  width:100%;
  height:640px;
  object-fit:cover;
  object-position:center;
  border-radius:40px;
  display:block;
}

.about-floating-card{
  position:absolute;
  right:-30px;
  bottom:50px;
  background:rgba(10,10,10,.88);
  border:1px solid rgba(214,195,162,.28);
  backdrop-filter:blur(14px);
  padding:18px 24px;
  border-radius:24px;
  display:flex;
  align-items:center;
  gap:12px;
  color:var(--gold);
  box-shadow:0 0 45px rgba(214,195,162,.20);
}

.about-v2-content{
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.15),transparent 38%),
    rgba(10,10,10,.82);
  border:1px solid rgba(214,195,162,.22);
  border-radius:42px;
  padding:52px;
  backdrop-filter:blur(14px);
  box-shadow:0 0 80px rgba(214,195,162,.12);
  position:relative;
  z-index:2;
}

.about-v2-content h2{
  margin-bottom:24px;
}

.about-v2-content p{
  margin-bottom:18px;
}

.about-mini-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:16px;
  margin:34px 0;
}

.about-mini-grid div{
  background:rgba(255,255,255,.035);
  border:1px solid rgba(214,195,162,.16);
  border-radius:24px;
  padding:22px;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.04);
}

.about-mini-grid i{
  color:var(--gold);
  font-size:26px;
  margin-bottom:14px;
}

.about-mini-grid h3{
  font-size:17px;
  margin-bottom:8px;
}

.about-mini-grid p{
  font-size:13px;
  color:var(--muted);
  line-height:1.7;
  margin:0;
}

/* SERVICES */

.services{
  background:linear-gradient(180deg,rgba(0,0,0,.25),rgba(0,0,0,.05));
}

.main-services-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:28px;
}

.main-service-card{
  min-height:320px;
  text-decoration:none;
  color:white;
  border-radius:36px;
  padding:36px;
  position:relative;
  overflow:hidden;
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.15),transparent 36%),
    rgba(15,15,15,.86);
  border:1px solid rgba(214,195,162,.22);
  backdrop-filter:blur(12px);
  box-shadow:0 0 45px rgba(214,195,162,.08);
  transition:.38s;
}

.main-service-card:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(135deg,rgba(255,255,255,.08),transparent 42%);
  opacity:.65;
  pointer-events:none;
}

.main-service-card > *{
  position:relative;
  z-index:1;
}

.related-card > *{
  position:relative;
  z-index:1;
}

.main-service-card:hover{
  transform:translateY(-12px);
  border-color:var(--gold);
  box-shadow:0 0 80px rgba(214,195,162,.22);
}

.service-icon{
  width:64px;
  height:64px;
  border-radius:20px;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  color:#000;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:25px;
  margin-bottom:24px;
  box-shadow:0 0 35px rgba(214,195,162,.28);
}

.main-service-card h3{
  font-size:23px;
  margin-bottom:14px;
}

.main-service-card p{
  color:#d8d0c5;
  margin-bottom:24px;
}

.main-service-card span{
  color:var(--gold);
  font-weight:700;
}

/* GALLERY NEW */

.gallery-v2{
  background:linear-gradient(180deg,rgba(15,15,15,.78),rgba(0,0,0,.20));
}

.gallery-v2-grid{
  display:grid;
  grid-template-columns:1.15fr .85fr .85fr;
  grid-template-rows:300px 340px;
  gap:24px;
}

.gallery-v2-grid > div{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  border:1px solid rgba(214,195,162,.24);
  box-shadow:0 0 55px rgba(214,195,162,.14);
}

.gallery-v2-grid > div:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 54%,rgba(0,0,0,.30));
  pointer-events:none;
}

.gallery-v2-grid img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
  transition:.5s;
}

.gallery-v2-grid > div:hover img{
  transform:scale(1.06);
}

.gallery-big{
  grid-row:1 / 3;
}

.gallery-wide{
  grid-column:2 / 4;
}

/* FORM */

.booking-form{
  max-width:980px;
  margin:auto;
  padding:48px;
  border-radius:42px;
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.15),transparent 38%),
    rgba(12,12,12,.88);
  border:1px solid rgba(214,195,162,.24);
  backdrop-filter:blur(15px);
  box-shadow:0 0 80px rgba(214,195,162,.12);
}

.form-grid,
.modal-form-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}

.form-full,
.modal-full{
  grid-column:1 / -1;
}

input,
select,
textarea{
  width:100%;
  background:#050505;
  color:white;
  border:1px solid rgba(214,195,162,.24);
  padding:18px;
  border-radius:18px;
  outline:none;
  font-size:16px;
  font-family:'Poppins',sans-serif;
}

textarea{
  min-height:145px;
  resize:none;
}

label{
  color:var(--gold);
  display:grid;
  gap:8px;
  font-size:14px;
}

input:focus,
select:focus,
textarea:focus{
  border-color:var(--gold);
  box-shadow:0 0 24px rgba(214,195,162,.20);
}

.privacy-check{
  display:flex;
  align-items:flex-start;
  gap:12px;
  color:#d8d0c5;
  font-size:14px;
  line-height:1.7;
  margin-top:18px;
}

.privacy-check input{
  width:auto;
  margin-top:5px;
}

.booking-note{
  color:#a99f94;
  font-size:14px;
  margin:8px 0 4px;
}

/* PAGE HERO */

.page-hero{
  min-height:78vh;
  display:flex;
  align-items:center;
  background-size:cover;
  background-position:center;
  overflow:hidden;
}

.page-hero:before{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 20% 35%,rgba(214,195,162,.18),transparent 32%),
    linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.26));
  z-index:1;
}

.page-hero:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:150px;
  background:linear-gradient(transparent,#000);
  z-index:1;
}

.page-hero .container{
  position:relative;
  z-index:2;
}

.prices-hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.25),rgba(0,0,0,.08)),
    url('../images/prices-hero.jpg') center/cover;
}

.prices-section{
  background:transparent;
}

/* SERVICE PAGE */

.service-page-content{
  padding-top:110px;
}

.service-description-box{
  border-radius:42px;
  padding:58px;
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.16),transparent 36%),
    rgba(12,12,12,.88);
  border:1px solid rgba(214,195,162,.24);
  backdrop-filter:blur(14px);
  box-shadow:0 0 80px rgba(214,195,162,.12);
  margin-bottom:65px;
}

.service-description-box h2{
  margin-bottom:22px;
}

.service-description-box p{
  max-width:900px;
}

.service-options-header{
  display:flex;
  justify-content:space-between;
  align-items:flex-end;
  gap:25px;
  margin-bottom:28px;
}

.service-options-header p{
  color:var(--muted);
}

.slider-buttons{
  display:flex;
  gap:12px;
}

.slider-btn{
  width:52px;
  height:52px;
  border-radius:50%;
  background:rgba(12,12,12,.9);
  border:1px solid rgba(214,195,162,.28);
  color:var(--gold);
  cursor:pointer;
}

.related-slider{
  display:flex;
  gap:22px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:12px 4px 34px;
  scroll-snap-type:x mandatory;
  cursor:grab;
  -webkit-overflow-scrolling:touch;
  user-select:none;
  touch-action:pan-x;
}

.related-slider.dragging{
  cursor:grabbing;
  scroll-snap-type:none;
}

.related-slider::-webkit-scrollbar{
  height:8px;
}

.related-slider::-webkit-scrollbar-track{
  background:#0d0d0d;
  border-radius:20px;
}

.related-slider::-webkit-scrollbar-thumb{
  background:var(--gold);
  border-radius:20px;
}

.related-card{
  min-width:340px;
  max-width:340px;
  min-height:245px;
  padding:25px;
  border-radius:30px;
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.13),transparent 36%),
    rgba(13,13,13,.9);
  border:1px solid rgba(214,195,162,.22);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  scroll-snap-align:start;
  transition:.35s;
  user-select:none;
}

.related-card:hover{
  transform:translateY(-6px);
  border-color:var(--gold);
}

.service-tag{
  display:inline-block;
  color:var(--gold);
  background:rgba(214,195,162,.10);
  padding:7px 12px;
  border-radius:20px;
  font-size:13px;
  margin-bottom:12px;
}

.related-card h3{
  color:white;
  font-size:19px;
  margin-bottom:8px;
}

.related-card-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}

.related-price{
  color:var(--gold);
  font-weight:800;
}

.open-mini-booking{
  border:1px solid rgba(214,195,162,.38);
  color:var(--gold);
  background:transparent;
  padding:10px 16px;
  border-radius:30px;
  cursor:pointer;
  font-family:'Poppins',sans-serif;
  white-space:nowrap;
  position:relative;
  z-index:3;
  user-select:none;
}

.open-mini-booking:hover{
  background:var(--gold);
  color:#000;
}

/* BENEFITS */

.benefits-section{
  background:rgba(15,15,15,.65);
}

.benefits-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:25px;
}

.benefit-card{
  border-radius:30px;
  padding:34px;
  background:rgba(8,8,8,.88);
  border:1px solid rgba(214,195,162,.22);
  transition:.35s;
}

.benefit-card:hover{
  transform:translateY(-8px);
  box-shadow:0 0 60px rgba(214,195,162,.16);
}

.benefit-card i{
  color:var(--gold);
  font-size:34px;
  margin-bottom:18px;
}

/* PRICES */

.price-category{
  margin-bottom:62px;
}

.price-category h3{
  font-size:32px;
  margin-bottom:25px;
}

.price-list{
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:16px;
}

.price-row{
  padding:22px;
  border-radius:24px;
  background:rgba(12,12,12,.88);
  border:1px solid rgba(214,195,162,.20);
  display:grid;
  grid-template-columns:1fr auto;
  gap:16px;
  align-items:center;
}

.price-row span{
  color:white;
}

.price-row p{
  color:#aaa;
  font-size:14px;
}

.price-row strong{
  color:var(--gold);
  white-space:nowrap;
}

/* MODAL */

.booking-modal{
  position:fixed;
  inset:0;
  z-index:4000;
  display:none;
  align-items:center;
  justify-content:center;
  background:rgba(0,0,0,.72);
  backdrop-filter:blur(12px);
  padding:22px;
}

.booking-modal.active{
  display:flex;
}

.booking-modal-box{
  width:100%;
  max-width:960px;
  max-height:88vh;
  overflow-y:auto;
  scrollbar-width:none;
  -ms-overflow-style:none;
  padding:38px;
  border-radius:36px;
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.16),transparent 36%),
    rgba(10,10,10,.96);
  border:1px solid rgba(214,195,162,.32);
  box-shadow:0 0 90px rgba(214,195,162,.20);
  position:relative;
}

.booking-modal-box::-webkit-scrollbar{
  display:none;
}

.booking-modal-close{
  position:absolute;
  top:18px;
  right:18px;
  width:44px;
  height:44px;
  border-radius:50%;
  border:1px solid rgba(214,195,162,.35);
  background:#050505;
  color:var(--gold);
  font-size:24px;
  cursor:pointer;
}

.booking-selected-service{
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.12),transparent 42%),
    #050505;
  border:1px solid rgba(214,195,162,.26);
  border-radius:18px;
  padding:18px;
  color:var(--gold);
  font-weight:700;
  line-height:1.8;
  margin:22px 0 18px;
}

.booking-selected-service span{
  display:block;
  color:white;
  font-weight:600;
}

.modal-booking-form{
  padding:0;
  margin:0;
  max-width:none;
  border:0;
  background:transparent;
  box-shadow:none;
  backdrop-filter:none;
}

/* THANKS */

.thanks-page{
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  background:
    linear-gradient(90deg,rgba(0,0,0,.68),rgba(0,0,0,.28)),
    url('../images/thanks.jpg') center/cover;
  padding:70px 0;
}

.thanks-card{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:45px;
  align-items:center;
  padding:38px;
  border-radius:42px;
  background:rgba(8,8,8,.88);
  border:1px solid rgba(214,195,162,.28);
  backdrop-filter:blur(14px);
}

.thanks-image img{
  width:100%;
  height:520px;
  object-fit:contain;
  background:#050505;
  border-radius:34px;
}

.thanks-logo{
  width:230px;
  margin-bottom:25px;
}

.thanks-content h1{
  color:var(--gold);
  margin-bottom:22px;
}

.thanks-content .btn{
  margin-top:28px;
}

/* FOOTER */

.premium-footer{
  padding:95px 0 30px;
  background:
    radial-gradient(circle at top center,rgba(214,195,162,.16),transparent 35%),
    rgba(0,0,0,.88);
  border-top:1px solid rgba(214,195,162,.20);
}

.footer-brand{
  text-align:center;
  max-width:820px;
  margin:0 auto 55px;
}

.footer-logo{
  width:min(460px,82vw);
  margin-bottom:26px;
  filter:drop-shadow(0 0 30px rgba(214,195,162,.30));
}

.footer-cards{
  display:grid;
  grid-template-columns:1fr 1.25fr 1fr;
  gap:24px;
}

.footer-card{
  background:rgba(12,12,12,.88);
  border:1px solid rgba(214,195,162,.20);
  border-radius:32px;
  padding:34px;
}

.footer-card-icon{
  width:56px;
  height:56px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  color:#000;
  margin-bottom:20px;
  font-size:22px;
}

.footer-card h3{
  margin-bottom:18px;
}

.footer-hours{
  display:grid;
  gap:10px;
}

.footer-hours div{
  display:flex;
  justify-content:space-between;
  border-bottom:1px solid rgba(255,255,255,.08);
  padding-bottom:8px;
  color:#d8d0c5;
  font-size:14px;
}

.copyright{
  text-align:center;
  color:#777;
  margin-top:45px;
  padding-top:25px;
  border-top:1px solid rgba(255,255,255,.08);
}

.footer-credit{
  display:flex;
  justify-content:center;
  align-items:center;
  gap:14px;
  flex-wrap:wrap;
  margin-top:14px;
  color:rgba(232,211,177,.62);
  font-size:14px;
}

.footer-credit a{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:rgba(232,211,177,.92);
  font-weight:800;
  text-decoration:none;
  letter-spacing:.01em;
  padding:10px 18px;
  border-radius:999px;
  border:1px solid rgba(232,211,177,.22);
  background:
    linear-gradient(135deg,rgba(232,211,177,.12),rgba(255,255,255,.03)),
    rgba(9,9,8,.46);
  box-shadow:inset 0 0 18px rgba(232,211,177,.06);
  transition:color .25s ease, border-color .25s ease, box-shadow .25s ease, transform .25s ease;
}

.footer-credit a:hover{
  color:#fff;
  border-color:rgba(232,211,177,.46);
  box-shadow:0 0 28px rgba(232,211,177,.12), inset 0 0 22px rgba(232,211,177,.08);
  transform:translateY(-2px);
}

.footer-credit-care{
  display:inline-flex;
  align-items:center;
  gap:8px;
  color:rgba(232,211,177,.58);
}

.footer-credit-care i,
.footer-credit a i{
  color:rgba(232,211,177,.78);
}

.social-float{
  position:fixed;
  right:30px;
  bottom:30px;
  display:flex;
  flex-direction:column;
  gap:12px;
  z-index:3000;
}

.social-float-link{
  width:65px;
  height:65px;
  border-radius:50%;
  color:white;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  font-size:32px;
  transition:transform .25s ease, box-shadow .25s ease;
}

.social-float-link:hover{
  transform:translateY(-4px);
}

.whatsapp{
  background:#25D366;
  box-shadow:0 15px 40px rgba(37,211,102,.35);
}

.instagram{
  background:linear-gradient(135deg,#405DE6 0%,#833AB4 35%,#E1306C 70%,#FCAF45 100%);
  box-shadow:0 15px 40px rgba(225,48,108,.32);
}

/* ANIMATION */

.reveal,
.reveal-left,
.reveal-right{
  opacity:0;
  transform:translateY(70px);
  transition:1s ease;
}

.active{
  opacity:1;
  transform:translateY(0);
}

/* PREMIUM NEON REDESIGN LAYER */

header{
  background:linear-gradient(180deg,rgba(0,0,0,.86),rgba(0,0,0,.54));
  backdrop-filter:blur(22px);
  box-shadow:0 18px 55px rgba(0,0,0,.36);
}

body[data-page="thanks"] header,
body.modal-open header{
  display:none;
}

nav ul li a{
  position:relative;
}

nav ul li a:after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-8px;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--gold),transparent);
  opacity:0;
  transform:scaleX(.35);
  transition:.3s;
}

nav ul li a:hover:after{
  opacity:1;
  transform:scaleX(1);
}

.btn{
  position:relative;
  overflow:hidden;
}

.btn:before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(115deg,transparent,rgba(255,255,255,.62),transparent);
  transform:translateX(-120%);
  transition:.7s;
}

.btn:hover:before{
  transform:translateX(120%);
}

.btn-ghost{
  color:var(--gold);
  background:rgba(255,255,255,.035);
  border:1px solid rgba(214,195,162,.38);
  box-shadow:0 0 32px rgba(214,195,162,.10);
}

.btn-ghost:hover{
  color:#000;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
}

.hero{
  background:
    linear-gradient(90deg,rgba(0,0,0,.80),rgba(0,0,0,.30)),
    url('../images/hero.jpg') center/cover;
}

.hero-overlay{
  background:
    radial-gradient(circle at 20% 40%,rgba(214,195,162,.18),transparent 32%),
    radial-gradient(circle at 78% 48%,rgba(214,195,162,.20),transparent 20%),
    linear-gradient(180deg,transparent 70%,#000 100%);
}

.hero-grid{
  min-height:calc(100vh - 110px);
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(330px,.65fr);
  align-items:center;
  gap:44px;
}

.hero-content h1{
  color:#fff;
  text-shadow:0 0 36px rgba(214,195,162,.16);
}

.hero-content h1 span{
  color:var(--gold2);
}

.hero-content p{
  color:#f5eadc;
  text-shadow:0 2px 20px rgba(0,0,0,.45);
}

.hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:16px;
}

.hero-orbit{
  min-height:440px;
  position:relative;
  display:grid;
  place-items:center;
}

.orbit-ring{
  position:relative;
  width:min(410px,82vw);
  aspect-ratio:1;
  border-radius:50%;
  border:1px solid rgba(214,195,162,.32);
  box-shadow:
    inset 0 0 55px rgba(214,195,162,.14),
    0 0 95px rgba(214,195,162,.18);
  background:
    radial-gradient(circle,rgba(214,195,162,.18),transparent 56%),
    rgba(0,0,0,.28);
  animation:slowPulse 5.5s ease-in-out infinite;
}

.orbit-ring:before,
.orbit-ring:after{
  content:"";
  position:absolute;
  inset:38px;
  border-radius:50%;
  border:1px dashed rgba(214,195,162,.24);
  animation:spinSoft 24s linear infinite;
}

.orbit-ring:after{
  inset:86px;
  animation-duration:18s;
  animation-direction:reverse;
}

.orbit-card{
  position:absolute;
  display:flex;
  align-items:center;
  gap:12px;
  padding:16px 18px;
  border-radius:22px;
  color:var(--cream);
  background:rgba(9,9,9,.72);
  border:1px solid rgba(214,195,162,.32);
  backdrop-filter:blur(14px);
  box-shadow:var(--glow);
  font-size:14px;
}

.orbit-card i{
  color:var(--gold);
}

.orbit-card-a{top:70px;right:12px;animation:floatSoft 4.8s ease-in-out infinite;}
.orbit-card-b{left:0;bottom:90px;animation:floatSoft 5.4s ease-in-out infinite .3s;}
.orbit-card-c{right:42px;bottom:28px;animation:floatSoft 5s ease-in-out infinite .7s;}

.about-v2{
  overflow:hidden;
  background:
    radial-gradient(circle at 12% 22%,rgba(214,195,162,.12),transparent 34%),
    radial-gradient(circle at 88% 38%,rgba(143,117,80,.13),transparent 32%),
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(15,15,15,.72));
}

.about-v2:before{
  content:"";
  position:absolute;
  width:520px;
  height:520px;
  right:-170px;
  top:120px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(214,195,162,.18),transparent 62%);
  pointer-events:none;
}

.about-shell{
  display:grid;
  grid-template-columns:minmax(340px,.9fr) minmax(0,1.1fr);
  gap:56px;
  align-items:center;
  position:relative;
}

.about-shell:before{
  content:"";
  position:absolute;
  inset:9% 12% 7% 10%;
  border:1px solid rgba(214,195,162,.12);
  border-radius:48px;
  pointer-events:none;
  transform:rotate(-2deg);
}

.about-v2-image{
  border-radius:34px;
  padding:1px;
  background:linear-gradient(135deg,rgba(240,220,192,.9),transparent 45%,rgba(214,195,162,.72));
  box-shadow:0 0 95px rgba(214,195,162,.18);
}

.about-v2-image:before{
  content:"";
  position:absolute;
  inset:-18px 22px 28px -18px;
  border-radius:34px;
  border:1px solid rgba(214,195,162,.18);
  z-index:-1;
}

.about-v2-image img{
  height:660px;
  border-radius:32px;
}

.about-floating-card{
  left:28px;
  right:28px;
  bottom:28px;
  display:grid;
  gap:4px;
  border-radius:22px;
  background:rgba(10,10,10,.72);
}

.about-floating-card strong{
  color:white;
  font-size:18px;
}

.about-floating-card span{
  color:var(--muted);
  font-size:13px;
}

.about-v2-content{
  border-radius:34px;
  padding:56px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.075),transparent 30%),
    radial-gradient(circle at top right,rgba(214,195,162,.18),transparent 42%),
    rgba(10,10,10,.70);
  backdrop-filter:blur(18px);
  box-shadow:var(--glow);
}

.about-signature{
  display:flex;
  align-items:center;
  gap:18px;
  margin:26px 0 8px;
}

.about-signature span{
  width:76px;
  height:1px;
  flex:0 0 auto;
  background:linear-gradient(90deg,var(--gold),transparent);
}

.about-signature p{
  margin:0;
  color:var(--gold2);
  font-size:14px;
}

.about-mini-grid div{
  border-radius:22px;
  background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.025));
  transition:.35s;
}

.about-mini-grid div:hover{
  transform:translateY(-6px);
  border-color:rgba(214,195,162,.42);
  box-shadow:0 0 46px rgba(214,195,162,.14);
}

.about-metrics{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
  margin-top:30px;
}

.about-metrics div{
  min-height:116px;
  padding:24px;
  border-radius:26px;
  border:1px solid rgba(214,195,162,.18);
  background:
    radial-gradient(circle at top right,rgba(214,195,162,.12),transparent 48%),
    rgba(8,8,8,.62);
  box-shadow:0 0 42px rgba(214,195,162,.08);
}

.about-metrics strong{
  display:block;
  color:var(--gold);
  font-size:28px;
  margin-bottom:6px;
}

.about-metrics span{
  color:#d8d0c5;
  font-size:14px;
}

.services,
.gallery-v2,
.prices-section{
  background:
    radial-gradient(circle at 80% 20%,rgba(214,195,162,.10),transparent 30%),
    linear-gradient(180deg,rgba(0,0,0,.30),rgba(0,0,0,.08));
}

.main-service-card,
.booking-form,
.service-description-box,
.related-card,
.benefit-card,
.footer-card{
  border-radius:26px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.07),transparent 36%),
    radial-gradient(circle at top right,rgba(214,195,162,.15),transparent 40%),
    rgba(10,10,10,.76);
  box-shadow:0 0 54px rgba(214,195,162,.08);
}

.main-service-card:hover{
  transform:translateY(-12px) scale(1.01);
}

.gallery-v2-grid > div{
  border-radius:28px;
}

.page-hero:before{
  background:
    radial-gradient(circle at 20% 35%,rgba(214,195,162,.20),transparent 32%),
    radial-gradient(circle at 76% 42%,rgba(214,195,162,.16),transparent 24%),
    linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.26));
}

.prices-hero-grid{
  min-height:70vh;
  display:grid;
  grid-template-columns:minmax(0,1fr) 380px;
  gap:46px;
  align-items:center;
  position:relative;
  z-index:2;
}

.prices-hero-panel{
  padding:32px;
  border-radius:28px;
  border:1px solid rgba(214,195,162,.28);
  background:
    linear-gradient(145deg,rgba(255,255,255,.08),transparent 34%),
    rgba(8,8,8,.72);
  backdrop-filter:blur(16px);
  box-shadow:var(--glow);
}

.prices-hero-panel span{
  color:var(--gold);
  font-size:13px;
  text-transform:uppercase;
}

.prices-hero-panel strong{
  display:block;
  color:white;
  font-size:32px;
  line-height:1.1;
  margin:14px 0;
}

.prices-hero-panel p{
  color:var(--muted);
}

.prices-intro{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,420px);
  gap:40px;
  align-items:end;
  margin-bottom:54px;
}

.prices-intro p{
  color:var(--muted);
}

.price-category{
  margin-bottom:34px;
  padding:28px;
  border-radius:32px;
  border:1px solid rgba(214,195,162,.20);
  background:
    linear-gradient(145deg,rgba(255,255,255,.06),transparent 32%),
    radial-gradient(circle at top right,rgba(214,195,162,.12),transparent 38%),
    rgba(8,8,8,.66);
  backdrop-filter:blur(14px);
  box-shadow:0 0 60px rgba(214,195,162,.08);
}

.price-category-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-bottom:24px;
}

.price-category-title{
  display:flex;
  align-items:center;
  gap:16px;
}

.price-category-title i{
  width:58px;
  height:58px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#000;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  box-shadow:0 0 35px rgba(214,195,162,.24);
}

.price-category-title span{
  display:block;
  color:var(--gold);
  font-size:13px;
  margin-bottom:4px;
}

.price-category h3{
  color:white;
  margin:0;
  font-size:28px;
}

.price-category-cta{
  color:var(--gold);
  text-decoration:none;
  padding:11px 16px;
  border:1px solid rgba(214,195,162,.28);
  border-radius:999px;
  white-space:nowrap;
  transition:.3s;
}

.price-category-cta:hover{
  color:#000;
  background:var(--gold);
}

.price-list{
  gap:14px;
}

.price-row{
  border-radius:20px;
  background:rgba(0,0,0,.44);
  border:1px solid rgba(214,195,162,.16);
  transition:.32s;
}

.price-row:hover{
  transform:translateY(-4px);
  border-color:rgba(214,195,162,.38);
  box-shadow:0 0 40px rgba(214,195,162,.10);
}

.reveal-left{
  transform:translateX(-70px);
}

.reveal-right{
  transform:translateX(70px);
}

@keyframes slowPulse{
  0%,100%{transform:scale(1);opacity:.88;}
  50%{transform:scale(1.035);opacity:1;}
}

@keyframes spinSoft{
  to{transform:rotate(360deg);}
}

@keyframes floatSoft{
  0%,100%{transform:translateY(0);}
  50%{transform:translateY(-14px);}
}

/* CLEANUP FOR BETTER DESKTOP, MAC AND MOBILE */

.hero-grid,
.prices-hero-grid,
.prices-hero-simple{
  grid-template-columns:1fr;
  max-width:860px;
}

.hero-orbit,
.orbit-ring,
.orbit-card,
.prices-hero-panel,
.about-metrics,
.about-signature{
  display:none !important;
}

.about-v2{
  background:
    linear-gradient(180deg,rgba(0,0,0,.18),rgba(14,12,10,.78));
}

.about-v2:before,
.about-shell:before,
.about-v2-image:before{
  display:none;
}

.about-shell{
  grid-template-columns:.88fr 1.12fr;
  gap:42px;
  align-items:stretch;
}

.about-v2-image{
  border-radius:24px;
  padding:0;
  background:none;
  box-shadow:0 22px 70px rgba(0,0,0,.28);
}

.about-v2-image img{
  height:100%;
  min-height:520px;
  border-radius:24px;
}

.about-floating-card{
  left:22px;
  right:22px;
  bottom:22px;
  padding:16px 18px;
}

.about-v2-content{
  border-radius:24px;
  padding:46px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.055),transparent 34%),
    rgba(10,10,10,.74);
  box-shadow:0 20px 72px rgba(0,0,0,.28);
}

.about-mini-grid{
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:28px 0 32px;
}

.about-mini-grid div{
  padding:18px;
  border-radius:18px;
}

.about-mini-grid i{
  font-size:22px;
  margin-bottom:10px;
}

.about-mini-grid h3{
  font-size:16px;
}

.about-mini-grid p{
  font-size:12px;
}

.prices-intro{
  grid-template-columns:1fr;
  max-width:900px;
  margin-left:auto;
  margin-right:auto;
  text-align:center;
}

.prices-intro h2{
  font-size:clamp(24px,3vw,38px);
  color:var(--gold);
}

.price-category-title span,
.price-row p,
.related-card > div > p{
  display:none !important;
}

.related-card{
  min-height:220px;
}

/* LOCAL SEO AND FAQ */

.local-seo-section,
.faq-section{
  background:
    radial-gradient(circle at 80% 20%,rgba(214,195,162,.09),transparent 30%),
    transparent;
}

.local-seo-card{
  max-width:1040px;
  margin:auto;
  padding:38px;
  border-radius:28px;
  border:1px solid var(--soft-border);
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 34%),
    var(--glass-card);
  backdrop-filter:blur(14px);
}

.local-seo-card h2{
  margin-bottom:18px;
}

.local-seo-card p{
  max-width:850px;
}

.local-seo-tags{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.local-seo-tags span{
  color:var(--gold);
  border:1px solid var(--soft-border);
  border-radius:999px;
  padding:9px 14px;
  background:rgba(255,255,255,.035);
  font-size:14px;
}

.faq-grid{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:18px;
}

.faq-item{
  padding:24px;
  border-radius:22px;
  border:1px solid var(--soft-border);
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 34%),
    var(--glass-card);
  min-width:0;
}

.faq-item h3{
  color:#fff;
  font-size:18px;
  margin-bottom:12px;
  overflow-wrap:break-word;
}

.faq-item p{
  color:#d9cfc2;
  font-size:14px;
  line-height:1.75;
  max-width:100%;
  overflow-wrap:break-word;
}

/* ABOUT SECTION - UNIFIED WITH SITE STYLE */

.about-reference,
.about-reference-media,
.about-reference-content,
.about-photo-main,
.about-photo-second,
.about-care-card,
.about-experience-card{
  all:unset;
}

.about-unified{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(360px,.92fr);
  gap:48px;
  align-items:center;
  padding:32px;
  border:1px solid rgba(214,195,162,.20);
  border-radius:32px;
  background:
    linear-gradient(145deg,rgba(255,255,255,.055),transparent 34%),
    radial-gradient(circle at top right,rgba(214,195,162,.14),transparent 38%),
    rgba(8,8,8,.70);
  box-shadow:0 24px 90px rgba(0,0,0,.34),0 0 70px rgba(214,195,162,.08);
  backdrop-filter:blur(16px);
}

.about-unified-content{
  padding:20px 14px 20px 18px;
}

.about-unified-content h2{
  max-width:760px;
  margin-bottom:24px;
}

.about-unified-content p{
  max-width:700px;
  color:#efe4d5;
  font-size:17px;
}

.about-unified-features{
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:14px;
  margin:34px 0;
}

.about-unified-features div{
  min-height:112px;
  padding:20px;
  border-radius:20px;
  border:1px solid rgba(214,195,162,.18);
  background:rgba(255,255,255,.035);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:16px;
}

.about-unified-features i{
  color:var(--gold);
  font-size:24px;
  filter:drop-shadow(0 0 12px rgba(214,195,162,.26));
}

.about-unified-features span{
  color:#fff;
  font-weight:600;
  line-height:1.45;
}

.about-unified-media{
  position:relative;
  overflow:hidden;
  min-height:560px;
  border-radius:28px;
  border:1px solid rgba(214,195,162,.22);
  box-shadow:0 20px 70px rgba(0,0,0,.34);
}

.about-unified-media img{
  width:100%;
  height:100%;
  min-height:560px;
  object-fit:cover;
  display:block;
}

.about-unified-media:after{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(180deg,transparent 50%,rgba(0,0,0,.55));
  pointer-events:none;
}

.about-unified-card{
  position:absolute;
  left:24px;
  right:24px;
  bottom:24px;
  z-index:2;
  display:flex;
  align-items:center;
  gap:16px;
  padding:18px 20px;
  border-radius:20px;
  border:1px solid rgba(214,195,162,.28);
  background:rgba(5,5,5,.76);
  backdrop-filter:blur(14px);
}

.about-unified-card i{
  width:52px;
  height:52px;
  border-radius:16px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#050505;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
}

.about-unified-card strong{
  display:block;
  color:#fff;
  font-size:18px;
}

.about-unified-card span{
  color:var(--muted);
  font-size:13px;
}

@media(max-width:1100px){
  .about-unified{
    grid-template-columns:1fr;
    padding:26px;
  }

  .about-unified-content{
    order:1;
  }

  .about-unified-media{
    order:2;
  }

  .about-unified-media,
  .about-unified-media img{
    min-height:360px;
  }
}

@media(max-width:760px){
  .about-unified{
    padding:18px;
    border-radius:24px;
  }

  .about-unified-content{
    padding:8px 4px 0;
  }

  .about-unified-features{
    grid-template-columns:1fr;
    gap:12px;
  }

  .about-unified-features div{
    min-height:auto;
    flex-direction:row;
    justify-content:flex-start;
    align-items:center;
  }

  .about-unified-media,
  .about-unified-media img{
    min-height:300px;
  }
}

/* FINAL RESPONSIVE SIZE FIXES */

.hero .hero-grid{
  width:100%;
  max-width:none;
  grid-template-columns:minmax(0,1fr) minmax(280px,390px);
  gap:clamp(28px,4vw,58px);
}

.hero-orbit{
  display:grid !important;
  min-height:390px;
  place-items:center;
  position:relative;
}

.orbit-ring{
  width:clamp(240px,24vw,340px);
  position:relative;
}

.orbit-ring span{
  position:absolute;
  inset:50%;
  width:88px;
  height:88px;
  transform:translate(-50%,-50%);
  border-radius:50%;
  background:
    radial-gradient(circle,rgba(240,220,192,.32),rgba(214,195,162,.08) 60%,transparent);
  box-shadow:0 0 44px rgba(214,195,162,.22);
}

.orbit-card{
  padding:13px 15px;
  border-radius:18px;
  font-size:13px;
}

.orbit-card-a{
  top:70px;
  right:4px;
}

.orbit-card-b{
  left:10px;
  bottom:112px;
}

.orbit-card-c{
  right:26px;
  bottom:52px;
}

.about-v2{
  padding-top:96px;
  padding-bottom:96px;
}

.about-unified{
  width:100%;
  max-width:100%;
  overflow:hidden;
  grid-template-columns:minmax(0,1fr) minmax(0,.92fr);
  gap:clamp(28px,3.6vw,56px);
  padding:clamp(26px,3vw,44px);
  align-items:center;
}

.about-unified .reveal-left,
.about-unified .reveal-right{
  opacity:1;
  transform:none;
}

.about-unified-content{
  min-width:0;
  padding:0;
}

.about-unified-content h2{
  font-size:clamp(34px,3.35vw,56px);
  line-height:1.08;
}

.about-unified-content p{
  font-size:clamp(15px,1.1vw,17px);
  line-height:1.85;
}

.about-unified-features{
  grid-template-columns:repeat(3,minmax(0,1fr));
}

.about-unified-features div{
  min-width:0;
  min-height:96px;
  padding:18px;
}

.about-unified-media{
  width:100%;
  max-width:100%;
  min-width:0;
  min-height:0;
  aspect-ratio:1.06 / .78;
}

.about-unified-media img{
  min-height:0;
  height:100%;
}

@media(max-width:1280px){
  h1{
    font-size:clamp(38px,4.8vw,62px);
  }

  .about-unified-content h2{
    font-size:clamp(32px,3.2vw,48px);
  }

  .about-unified-features{
    grid-template-columns:1fr;
  }

  .about-unified-features div{
    min-height:auto;
    flex-direction:row;
    align-items:center;
    justify-content:flex-start;
  }
}

@media(max-width:1100px){
  .hero .hero-grid{
    grid-template-columns:1fr;
  }

  .hero-orbit{
    display:none !important;
  }

  .about-unified{
    grid-template-columns:1fr;
  }

  .about-unified-content{
    order:1;
  }

  .about-unified-media{
    order:2;
    aspect-ratio:16 / 9;
  }
}

@media(max-width:760px){
  .about-v2{
    padding-top:72px;
    padding-bottom:72px;
  }

  .about-unified{
    padding:20px;
    border-radius:22px;
  }

  .about-unified-content h2{
    font-size:30px;
  }

  .about-unified-media{
    aspect-ratio:4 / 3;
  }

  .about-unified-card{
    left:14px;
    right:14px;
    bottom:14px;
    padding:14px;
  }
}

/* ABOUT SECTION - REFERENCE STYLE */

.about-reference{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
  gap:78px;
  align-items:center;
}

.about-reference-media{
  position:relative;
  min-height:620px;
}

.about-photo-main,
.about-photo-second{
  position:absolute;
  overflow:hidden;
  background:#080808;
  box-shadow:0 28px 80px rgba(0,0,0,.34);
}

.about-photo-main{
  top:0;
  left:0;
  width:78%;
  height:330px;
  border-radius:42px 0 0 0;
}

.about-photo-second{
  right:0;
  bottom:38px;
  width:68%;
  height:345px;
  border-radius:0 0 42px 0;
  border:1px solid rgba(214,195,162,.22);
}

.about-photo-main img,
.about-photo-second img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.about-care-card{
  position:absolute;
  left:18px;
  top:292px;
  width:350px;
  min-height:118px;
  border-radius:46px 0 46px 0;
  padding:26px 30px;
  display:grid;
  grid-template-columns:auto 1fr;
  column-gap:18px;
  align-items:center;
  background:var(--cream);
  color:#050505;
  box-shadow:0 28px 80px rgba(0,0,0,.24);
  z-index:3;
}

.about-care-card div{
  grid-row:1 / 3;
  width:64px;
  height:64px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#050505;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
}

.about-care-card strong{
  font-size:20px;
  line-height:1.1;
}

.about-care-card span{
  color:#6d6255;
}

.about-experience-card{
  position:absolute;
  left:10px;
  bottom:40px;
  width:230px;
  min-height:130px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  text-align:center;
  border-radius:28px 0 28px 0;
  color:#050505;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  box-shadow:0 24px 70px rgba(214,195,162,.20);
  z-index:2;
}

.about-experience-card strong{
  font-size:34px;
  line-height:1;
}

.about-experience-card span{
  margin-top:10px;
  font-size:14px;
  font-weight:700;
}

.about-reference-content{
  max-width:650px;
}

.about-badge{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-width:170px;
  height:50px;
  margin-bottom:28px;
  border-radius:26px 0 26px 0;
  color:#050505;
  font-weight:800;
  background:linear-gradient(135deg,var(--gold2),var(--gold));
  box-shadow:0 0 36px rgba(214,195,162,.22);
}

.about-reference-content h2{
  margin-bottom:28px;
  color:#fff;
  font-size:clamp(34px,4.2vw,58px);
  line-height:1.05;
}

.about-reference-content p{
  color:#f1e6d7;
  font-size:17px;
  line-height:2;
  margin-bottom:18px;
}

.about-check-list{
  display:grid;
  gap:16px;
  list-style:none;
  margin:30px 0 34px;
}

.about-check-list li{
  display:flex;
  gap:13px;
  align-items:flex-start;
  color:#fff;
  font-size:16px;
  line-height:1.6;
  text-transform:none;
}

.about-check-list i{
  color:var(--gold);
  margin-top:5px;
  filter:drop-shadow(0 0 12px rgba(214,195,162,.34));
}

@media(max-width:1100px){
  .about-reference{
    grid-template-columns:1fr;
    gap:34px;
  }

  .about-reference-media{
    max-width:760px;
    min-height:520px;
    margin:auto;
    width:100%;
  }

  .about-photo-main{
    height:300px;
  }

  .about-photo-second{
    height:315px;
  }

  .about-reference-content{
    max-width:820px;
    margin:auto;
  }
}

@media(max-width:760px){
  .about-reference{
    gap:34px;
  }

  .about-reference-media{
    min-height:auto;
    display:grid;
    gap:16px;
  }

  .about-photo-main,
  .about-photo-second,
  .about-care-card,
  .about-experience-card{
    position:relative;
    inset:auto;
    width:100%;
  }

  .about-photo-main,
  .about-photo-second{
    height:280px;
    border-radius:26px;
  }

  .about-care-card{
    min-height:auto;
    border-radius:24px;
    padding:20px;
  }

  .about-experience-card{
    min-height:104px;
    border-radius:24px;
  }

  .about-reference-content h2{
    font-size:32px;
  }

  .about-reference-content p{
    font-size:15px;
    line-height:1.85;
  }
}

/* RESPONSIVE */

@media(max-width:1100px){
  nav ul{
    display:none;
  }

  .about-v2-grid,
  .about-shell,
  .hero-grid,
  .prices-hero-grid,
  .prices-intro,
  .thanks-card{
    grid-template-columns:1fr;
  }

  .hero-orbit{
    min-height:360px;
  }

  .main-services-grid{
    grid-template-columns:repeat(2,1fr);
  }

  .footer-cards{
    grid-template-columns:1fr;
  }

  .gallery-v2-grid{
    grid-template-columns:1fr 1fr;
    grid-template-rows:auto;
  }

  .gallery-big,
  .gallery-wide{
    grid-column:auto;
    grid-row:auto;
  }

  .gallery-v2-grid > div{
    height:360px;
  }
}

@media(max-width:1100px){
  .about-shell{
    grid-template-columns:1fr;
  }

  .about-v2-image img{
    min-height:0;
    height:420px;
  }
}

@media(max-width:760px){
  section{
    padding:90px 0;
  }

  .main-services-grid,
  .benefits-grid,
  .price-list,
  .form-grid,
  .modal-form-grid,
  .about-mini-grid,
  .about-metrics,
  .gallery-v2-grid{
    grid-template-columns:1fr;
  }

  .form-full,
  .modal-full{
    grid-column:auto;
  }

  .about-v2-content,
  .booking-form,
  .service-description-box,
  .booking-modal-box{
    padding:28px;
    border-radius:28px;
  }

  .about-v2-image img{
    height:340px;
  }

  .about-mini-grid{
    grid-template-columns:1fr;
  }

  .about-mini-grid div{
    display:grid;
    grid-template-columns:auto 1fr;
    column-gap:14px;
    align-items:start;
  }

  .about-mini-grid i{
    grid-row:1 / 3;
    margin:2px 0 0;
  }

  .about-floating-card{
    left:18px;
    right:18px;
    bottom:18px;
  }

  .prices-hero-panel{
    max-width:520px;
  }

  .price-category-head{
    align-items:flex-start;
    flex-direction:column;
  }

  .footer-logo{
    width:min(340px,82vw);
  }

  .related-card{
    min-width:300px;
    max-width:300px;
  }

  .service-options-header{
    flex-direction:column;
    align-items:flex-start;
  }

  .thanks-image img{
    height:300px;
  }
}

@media(max-width:520px){
  .container{
    width:92%;
  }

  .logo img{
    width:130px;
  }

  .btn{
    padding:12px 22px;
    font-size:14px;
  }

  .hero{
    min-height:92vh;
  }

  .hero-orbit{
    display:none;
  }

  .hero-actions{
    flex-direction:column;
    align-items:flex-start;
  }

  .main-service-card{
    min-height:auto;
    padding:28px;
  }

  .price-category{
    padding:20px;
    border-radius:24px;
  }

  .price-category-title{
    align-items:flex-start;
  }

  .footer-hours div{
    flex-direction:column;
    gap:4px;
  }

  .social-float{
    right:20px;
    bottom:20px;
    gap:10px;
  }

  .social-float-link{
    width:56px;
    height:56px;
    font-size:28px;
  }
}

/* FINAL RESPONSIVE SYSTEM CLEANUP */

:root{
  --glass-card:rgba(15,15,15,.72);
  --glass-card-strong:rgba(10,10,10,.82);
  --soft-border:rgba(232,211,177,.18);
  --soft-border-strong:rgba(232,211,177,.28);
}

html,
body{
  max-width:100%;
  overflow-x:hidden;
}

body{
  background:
    radial-gradient(circle at 18% 12%,rgba(214,195,162,.12),transparent 30%),
    radial-gradient(circle at 82% 8%,rgba(214,195,162,.08),transparent 28%),
    #030303;
}

#particlesCanvas{
  opacity:.58;
}

.container{
  width:min(90%,1320px);
}

.hero{
  min-height:clamp(650px,86vh,900px);
  padding-top:96px;
}

.hero .container{
  width:min(90%,1320px);
}

.hero .hero-grid{
  min-height:calc(clamp(650px,86vh,900px) - 96px);
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(270px,360px);
  gap:clamp(28px,4vw,56px);
  align-items:center;
}

.hero-content{
  max-width:780px;
}

.hero-content h1{
  font-size:clamp(44px,4.8vw,68px);
  line-height:1.04;
}

.hero-content p{
  max-width:640px;
  font-size:clamp(16px,1.25vw,18px);
  line-height:1.8;
}

.hero-orbit{
  display:grid !important;
  min-height:360px;
  pointer-events:none;
}

.orbit-ring{
  width:clamp(230px,24vw,330px);
  opacity:.78;
  background:
    radial-gradient(circle,rgba(214,195,162,.18),transparent 58%),
    rgba(0,0,0,.18);
}

.orbit-ring:before,
.orbit-ring:after{
  border-color:rgba(232,211,177,.18);
}

.orbit-card{
  background:rgba(10,10,10,.58);
  border-color:rgba(232,211,177,.22);
  box-shadow:0 12px 44px rgba(0,0,0,.22),0 0 28px rgba(214,195,162,.09);
}

.main-service-card,
.booking-form,
.service-description-box,
.related-card,
.benefit-card,
.footer-card,
.price-category,
.about-unified{
  background:
    linear-gradient(145deg,rgba(255,255,255,.045),transparent 34%),
    var(--glass-card);
  border-color:var(--soft-border);
  backdrop-filter:blur(14px);
}

.about-v2{
  padding:clamp(72px,8vw,112px) 0;
}

.about-unified{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,.86fr);
  gap:clamp(26px,3.4vw,52px);
  align-items:center;
  overflow:hidden;
  padding:clamp(24px,3vw,42px);
  border-radius:28px;
}

.about-unified-content{
  min-width:0;
  padding:0;
}

.about-unified-content h2{
  font-size:clamp(34px,3.25vw,54px);
  line-height:1.08;
  margin-bottom:22px;
}

.about-unified-content p{
  font-size:clamp(15px,1.08vw,17px);
  line-height:1.82;
  color:#f1e7d9;
}

.about-unified-content .btn{
  margin-top:26px;
}

@keyframes traceBorder{
  from{
    stroke-dashoffset:100;
  }
  to{
    stroke-dashoffset:0;
  }
}

.trace-border{
  position:relative;
  overflow:hidden;
  isolation:isolate;
  --trace-color:var(--brand-color);
  --trace-speed:2.8s;
  --trace-edge-offset:-1px;
}

.trace-border > *:not(.trace-border-svg){
  position:relative;
  z-index:2;
}

.trace-border-svg{
  position:absolute;
  inset:var(--trace-edge-offset);
  width:calc(100% - (var(--trace-edge-offset) * 2));
  height:calc(100% - (var(--trace-edge-offset) * 2));
  overflow:visible;
  pointer-events:none;
  z-index:4;
}

.main-service-card.trace-border,
.gallery-v2-grid > div.trace-border{
  --trace-edge-offset:0px;
}

.main-service-card.trace-border .trace-border-svg,
.gallery-v2-grid > div.trace-border .trace-border-svg{
  inset:0;
  width:100%;
  height:100%;
}

.trace-border-line{
  fill:none;
  stroke:var(--trace-color);
  stroke-width:1.35px;
  vector-effect:non-scaling-stroke;
  stroke-linecap:round;
  stroke-linejoin:round;
  stroke-dasharray:22 78;
  shape-rendering:geometricPrecision;
  animation:traceBorder var(--trace-speed) linear infinite;
  filter:
    drop-shadow(0 0 6px color-mix(in srgb,var(--trace-color) 80%,transparent))
    drop-shadow(0 0 14px color-mix(in srgb,var(--trace-color) 40%,transparent));
}

.trace-border:not(.main-service-card)::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:1;
  border-radius:inherit;
  border:1px solid color-mix(in srgb,var(--trace-color) 22%,transparent);
  pointer-events:none;
}

@media (prefers-reduced-motion: reduce){
  .trace-border-line{
    animation:none;
  }
}

.about-unified-features{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin:28px 0 32px;
}

.about-unified-features div{
  min-width:0;
  min-height:94px;
  padding:18px;
  border-radius:18px;
  background:rgba(255,255,255,.035);
  border:1px solid var(--soft-border);
}

.about-unified-features i{
  font-size:22px;
}

.about-unified-features span{
  font-size:15px;
}

.about-unified-media{
  width:100%;
  max-width:100%;
  min-width:0;
  overflow:hidden;
  aspect-ratio:1.12 / .78;
  min-height:0;
  border-radius:24px;
}

.about-unified-media img{
  width:100%;
  height:100%;
  min-height:0;
  object-fit:cover;
  border-radius:24px;
}

.about-unified-media:after,
.about-unified-card{
  display:none !important;
}

.main-services-grid{
  gap:22px;
}

.main-service-card{
  min-height:260px;
  padding:28px;
  border-radius:24px;
}

.service-icon{
  width:54px;
  height:54px;
  border-radius:16px;
  font-size:22px;
  margin-bottom:20px;
}

.main-service-card h3{
  font-size:21px;
  line-height:1.25;
}

.main-service-card p{
  font-size:15px;
  line-height:1.75;
}

.main-service-card span{
  font-size:14px;
}

@media(min-width:1441px){
  .container,
  .hero .container{
    width:min(88%,1400px);
  }

  .hero .hero-grid{
    grid-template-columns:minmax(0,1fr) 380px;
  }
}

@media(min-width:1024px) and (max-width:1440px){
  .container,
  .hero .container{
    width:88%;
  }

  .hero{
    min-height:780px;
  }

  .hero .hero-grid{
    min-height:660px;
    grid-template-columns:minmax(0,1fr) 330px;
  }

  .hero-content h1{
    font-size:clamp(46px,4.4vw,62px);
  }

  .about-unified{
    grid-template-columns:minmax(0,1fr) minmax(0,.82fr);
  }

  .about-unified-features{
    grid-template-columns:1fr;
  }

  .about-unified-features div{
    min-height:auto;
    display:flex;
    align-items:center;
    gap:14px;
  }

  .main-services-grid{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
}

@media(min-width:768px) and (max-width:1023px){
  .container,
  .hero .container{
    width:90%;
  }

  .hero{
    min-height:auto;
    padding:130px 0 80px;
  }

  .hero .hero-grid,
  .about-unified{
    grid-template-columns:1fr;
  }

  .hero .hero-grid{
    min-height:auto;
  }

  .hero-orbit{
    min-height:260px;
    max-width:420px;
    margin:auto;
  }

  .about-unified-content{
    order:1;
  }

  .about-unified-media{
    order:2;
    aspect-ratio:16 / 9;
  }

  .main-services-grid{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}

@media(max-width:767px){
  .container,
  .hero .container{
    width:92%;
  }

  section{
    padding:72px 0;
  }

  .hero{
    min-height:auto;
    padding:118px 0 68px;
  }

  .hero .hero-grid{
    min-height:auto;
    grid-template-columns:1fr;
    gap:26px;
  }

  .hero-content h1{
    font-size:clamp(34px,10vw,44px);
    line-height:1.08;
  }

  .hero-content p{
    font-size:15px;
    line-height:1.75;
    margin:22px 0 28px;
  }

  .hero-actions{
    gap:12px;
  }

  .hero-actions .btn{
    width:100%;
    min-height:48px;
  }

  .hero-orbit{
    display:none !important;
  }

  .about-unified{
    grid-template-columns:1fr;
    padding:18px;
    border-radius:22px;
    gap:22px;
  }

  .about-unified-content{
    order:1;
  }

  .about-unified-media{
    order:2;
    aspect-ratio:4 / 3;
    border-radius:18px;
  }

  .about-unified-media img{
    border-radius:18px;
  }

  .about-unified-content h2{
    font-size:clamp(28px,8vw,34px);
  }

  .about-unified-features{
    grid-template-columns:1fr;
    gap:10px;
  }

  .about-unified-features div{
    min-height:auto;
    display:flex;
    align-items:center;
    gap:14px;
    padding:15px;
  }

  .main-services-grid,
  .benefits-grid,
  .price-list,
  .faq-grid{
    grid-template-columns:1fr;
  }

  .main-services-grid{
    gap:16px;
  }

  .main-service-card{
    min-height:auto;
    padding:22px;
    border-radius:20px;
  }

  .service-icon{
    width:48px;
    height:48px;
    font-size:20px;
    margin-bottom:16px;
  }

  .main-service-card h3{
    font-size:19px;
  }

  .main-service-card p{
    font-size:14px;
    margin-bottom:18px;
  }

  .local-seo-card,
  .faq-item{
    padding:18px;
    border-radius:18px;
  }
}

@media(min-width:768px) and (max-width:1100px){
  .faq-grid{
    grid-template-columns:repeat(2,1fr);
  }
}

/* MOBILE POLISH - FINAL PASS */

@media(max-width:767px){
  body{
    min-width:0;
  }

  header{
    background:rgba(0,0,0,.86);
  }

  nav{
    padding:10px 0;
    gap:10px;
  }

  .logo img{
    width:116px;
  }

  nav > .btn{
    padding:10px 14px;
    min-height:42px;
    font-size:13px;
    white-space:nowrap;
  }

  .hero{
    min-height:auto;
    padding:104px 0 54px;
    background-position:center center;
  }

  .hero-overlay{
    background:
      linear-gradient(90deg,rgba(0,0,0,.72),rgba(0,0,0,.38)),
      linear-gradient(180deg,rgba(0,0,0,.10),#000 96%);
  }

  .hero-content{
    max-width:100%;
  }

  .hero-content h1{
    font-size:34px;
    line-height:1.12;
    max-width:360px;
    text-wrap:balance;
  }

  .hero-content p{
    max-width:340px;
    font-size:14px;
    line-height:1.65;
    margin:20px 0 24px;
  }

  .hero-actions{
    display:grid;
    grid-template-columns:1fr;
    max-width:300px;
    gap:10px;
  }

  .hero-actions .btn{
    width:100%;
    min-height:46px;
    padding:12px 18px;
    font-size:14px;
  }

  section{
    padding:58px 0;
  }

  .section-title{
    margin-bottom:34px;
  }

  .section-title h2,
  h2{
    font-size:28px;
    line-height:1.16;
  }

  .section-title p,
  p{
    font-size:14px;
    line-height:1.7;
  }

  .about-v2{
    padding:58px 0;
  }

  .about-unified{
    padding:16px;
    gap:18px;
    border-radius:20px;
  }

  .about-unified-content h2{
    font-size:27px;
    line-height:1.15;
    margin-bottom:16px;
  }

  .about-unified-content p{
    font-size:14px;
    line-height:1.7;
    margin-bottom:12px;
  }

  .about-unified-features{
    margin:20px 0 22px;
  }

  .about-unified-features div{
    padding:13px 14px;
    border-radius:15px;
  }

  .about-unified-features i{
    width:22px;
    flex:0 0 22px;
    font-size:19px;
  }

  .about-unified-features span{
    font-size:14px;
  }

  .about-unified-media{
    aspect-ratio:1.18 / .9;
    border-radius:16px;
  }

  .about-unified-media img{
    border-radius:16px;
  }

  .main-services-grid{
    gap:14px;
  }

  .main-service-card{
    padding:18px;
    border-radius:18px;
  }

  .service-icon{
    width:42px;
    height:42px;
    border-radius:13px;
    font-size:18px;
    margin-bottom:14px;
  }

  .main-service-card h3{
    font-size:18px;
    margin-bottom:9px;
  }

  .main-service-card p{
    font-size:13px;
    line-height:1.6;
    margin-bottom:14px;
  }

  .gallery-v2-grid > div{
    height:250px;
    border-radius:18px;
  }

  .booking-form,
  .service-description-box,
  .booking-modal-box,
  .price-category,
  .footer-card{
    padding:18px;
    border-radius:18px;
  }

  input,
  select,
  textarea{
    padding:14px;
    border-radius:13px;
    font-size:14px;
  }

  .price-category-head{
    gap:14px;
  }

  .price-category-title i{
    width:44px;
    height:44px;
    border-radius:13px;
  }

  .price-category h3{
    font-size:21px;
  }

  .price-row{
    padding:15px;
    border-radius:15px;
    grid-template-columns:1fr auto;
  }

  .premium-footer{
    padding-top:62px;
  }

  .footer-credit{
    gap:10px;
    font-size:12px;
  }

  .footer-credit a{
    width:100%;
    max-width:310px;
    justify-content:center;
    padding:10px 14px;
  }

  .footer-logo{
    width:min(260px,80vw);
  }

  .social-float{
    right:16px;
    bottom:16px;
    gap:9px;
  }

  .social-float-link{
    width:52px;
    height:52px;
    font-size:25px;
  }
}

@media(max-width:430px){
  .container,
  .hero .container{
    width:91%;
  }

  .logo img{
    width:104px;
  }

  nav > .btn{
    padding:9px 12px;
    font-size:12px;
  }

  .hero{
    padding-top:96px;
  }

  .hero-content h1{
    font-size:30px;
    max-width:310px;
  }

  .hero-content p{
    max-width:300px;
    font-size:13.5px;
  }

  .hero-actions{
    max-width:100%;
  }

  .about-unified-content h2,
  .section-title h2,
  h2{
    font-size:25px;
  }

  .about-unified-media{
    aspect-ratio:1 / .86;
  }

  .main-service-card{
    padding:16px;
  }
}
