
:root{color-scheme:light}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{scrollbar-width:none}.tap{-webkit-tap-highlight-color:transparent}.safe-bottom{padding-bottom:max(5.5rem,env(safe-area-inset-bottom))}@media(min-width:768px){.safe-bottom{padding-bottom:0}}
::selection{background:#caa45e;color:#0d0d0d}.persian-number{font-variant-numeric:tabular-nums}.article-body h2{scroll-margin-top:110px}.article-body p{margin-top:1rem;line-height:2.05}.article-body h2{font-size:1.45rem;font-weight:900;margin-top:2.5rem;color:#171717}.article-body ul{margin-top:1rem;display:grid;gap:.7rem}.article-body li{position:relative;padding-right:1.35rem;line-height:1.9}.article-body li:before{content:"";position:absolute;right:0;top:.8rem;width:.45rem;height:.45rem;border-radius:9999px;background:#caa45e}.calendar-day[disabled]{opacity:.25;cursor:not-allowed}.calendar-day.is-selected{background:#caa45e!important;color:#111!important;border-color:#caa45e!important}.time-slot.is-selected{background:#171717;color:white;border-color:#171717}.nav-link.active{color:#caa45e}.mobile-menu-open{overflow:hidden}.hero-noise:after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.13;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.25'/%3E%3C/svg%3E")}.focus-ring:focus{outline:none;box-shadow:0 0 0 3px rgba(202,164,94,.22);border-color:#caa45e}.prose-link{color:#9d762f;text-decoration:underline;text-underline-offset:4px}


/* Booking bottom-sheet on mobile / centered modal on desktop */
.booking-layer{position:fixed;inset:0;z-index:200;visibility:hidden;opacity:0;transition:opacity .2s ease,visibility .2s ease}.booking-layer.is-open{visibility:visible;opacity:1}.booking-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.58);backdrop-filter:blur(7px)}.booking-panel{position:absolute;inset-inline:0;bottom:0;display:flex;max-height:94dvh;flex-direction:column;overflow:hidden;border-radius:30px 30px 0 0;background:#fff;box-shadow:0 -24px 80px rgba(0,0,0,.25);transform:translateY(105%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}.booking-layer.is-open .booking-panel{transform:translateY(0)}.booking-handle{width:42px;height:5px;border-radius:999px;background:#ddd;margin:10px auto 0}.booking-shell{display:flex;min-height:0;flex:1;flex-direction:column}.booking-head{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 18px 10px;border-bottom:1px solid #f0f0f0}.booking-progress-wrap{padding:12px 18px;border-bottom:1px solid #f4f4f4}.booking-progress-meta{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:800;color:#777}.booking-progress{height:5px;margin-top:9px;overflow:hidden;border-radius:999px;background:#eee}.booking-progress>span{display:block;height:100%;border-radius:inherit;background:#caa45e;transition:width .25s ease}.booking-content{min-height:0;flex:1;overflow-y:auto;padding:20px 18px 24px}.booking-footer{display:flex;align-items:center;gap:10px;border-top:1px solid #eee;background:rgba(255,255,255,.96);padding:12px 18px max(12px,env(safe-area-inset-bottom));backdrop-filter:blur(12px)}.booking-step{animation:bookingFade .18s ease}@keyframes bookingFade{from{opacity:.4;transform:translateY(5px)}to{opacity:1;transform:none}}.otp-box{width:48px;height:54px;border:1px solid #dedede;border-radius:14px;background:#fafafa;text-align:center;font-size:20px;font-weight:900;outline:none;transition:.15s}.otp-box:focus{border-color:#caa45e;box-shadow:0 0 0 3px rgba(202,164,94,.16);background:#fff}.booking-choice{position:relative;display:flex;cursor:pointer;align-items:center;gap:12px;border:1px solid #e5e5e5;border-radius:18px;padding:14px;background:#fff;transition:.16s}.booking-choice:hover{border-color:#d5bb87;background:#fdfaf4}.booking-choice input{width:17px;height:17px;accent-color:#111}.booking-choice:has(input:checked){border-color:#caa45e;background:#fbf7ee;box-shadow:0 0 0 2px rgba(202,164,94,.12)}.booking-choice span{display:grid;gap:4px}.booking-choice b{font-size:14px}.booking-choice small{font-size:11px;color:#777}.time-slot{border:1px solid #e3e3e3;border-radius:13px;background:#fff;padding:11px 8px;font-size:13px;font-weight:800;transition:.15s}.time-slot:hover{border-color:#caa45e;background:#fbf7ee}.time-slot.is-selected{background:#171717;color:#fff;border-color:#171717}.booking-lock{overflow:hidden}
@media(max-width:380px){.otp-box{width:42px;height:50px}.booking-content{padding-inline:14px}.booking-head,.booking-progress-wrap,.booking-footer{padding-inline:14px}}
@media(min-width:768px){.booking-layer{display:grid;place-items:center;padding:28px}.booking-panel{position:relative;inset:auto;bottom:auto;width:min(960px,calc(100vw - 56px));max-height:min(88vh,820px);border-radius:32px;transform:translateY(16px) scale(.985);opacity:.7;box-shadow:0 30px 100px rgba(0,0,0,.3)}.booking-layer.is-open .booking-panel{transform:translateY(0) scale(1);opacity:1}.booking-head{padding:20px 24px 14px}.booking-progress-wrap{padding:13px 24px}.booking-content{padding:26px 24px 30px}.booking-footer{padding:14px 24px}.otp-box{width:56px;height:60px;border-radius:16px}}

/* v3: compact step 3 + sliders */
.booking-footer{flex-shrink:0;position:relative;z-index:4}.booking-step-compact .calendar-day{min-height:34px;padding:.25rem!important;font-size:11px}.booking-step-compact .time-slot{padding:8px 6px;font-size:12px}.booking-step-compact [data-cal-grid]{gap:.22rem}.booking-step-compact [data-cal-prev],.booking-step-compact [data-cal-next]{width:34px;height:34px}.services-swiper,.blog-swiper{padding-bottom:2px}.services-swiper .swiper-slide,.blog-swiper .swiper-slide{height:auto}.swiper-pagination-bullet-active{background:#caa45e!important}.services-prev,.services-next{transition:.15s}.services-prev:hover,.services-next:hover{background:#111;color:#fff}.booking-panel{height:min(94dvh,820px)}
@media(max-width:767px){.booking-content{padding-top:14px;padding-bottom:14px}.booking-step-compact .rounded-\[24px\]{border-radius:18px}.booking-step-compact .mt-5{margin-top:.65rem}.booking-step-compact .mt-4{margin-top:.55rem}.booking-step-compact .mt-3{margin-top:.5rem}.booking-step-compact .time-slot{padding:7px 5px}.booking-step-compact [data-cal-grid]{margin-top:.35rem}.booking-step-compact [data-selected-date]{font-size:12px}.booking-footer{padding-top:9px;padding-bottom:max(9px,env(safe-area-inset-bottom))}}


/* v4: editorial home blog + premium Swiper pagination + horizontal testimonials */
.services-pagination,.blog-pagination{display:flex!important;align-items:center;justify-content:center;gap:7px;min-height:18px}
.services-pagination .swiper-pagination-bullet,.blog-pagination .swiper-pagination-bullet{position:relative;margin:0!important;width:8px;height:8px;border-radius:999px;background:#d8d1c4;opacity:1;box-shadow:inset 0 0 0 1px rgba(17,17,17,.04);transition:width .28s ease,background .28s ease,transform .28s ease,box-shadow .28s ease}
.services-pagination .swiper-pagination-bullet:hover,.blog-pagination .swiper-pagination-bullet:hover{transform:scale(1.18);background:#bda978}
.services-pagination .swiper-pagination-bullet-active,.blog-pagination .swiper-pagination-bullet-active{width:30px!important;background:linear-gradient(90deg,#a77b30,#d8b66f)!important;box-shadow:0 5px 14px rgba(167,123,48,.25);transform:none}
.services-pagination .swiper-pagination-bullet-active:after,.blog-pagination .swiper-pagination-bullet-active:after{content:"";position:absolute;inset:2px 5px;border-radius:999px;background:rgba(255,255,255,.2)}
.blog-card{transition:transform .28s ease,box-shadow .28s ease,border-color .28s ease}
.blog-card:hover{transform:translateY(-5px);border-color:rgba(202,164,94,.35);box-shadow:0 24px 70px rgba(17,17,17,.12)}
#customer-videos video{background:#0b0b0b}
@media(max-width:639px){.services-pagination,.blog-pagination{gap:6px}.services-pagination .swiper-pagination-bullet-active,.blog-pagination .swiper-pagination-bullet-active{width:24px!important}.blog-card:hover{transform:none}}


/* v5: responsive hardening, booking footer visibility, animated mobile menu, gender sessions */
html,body{max-width:100%;overflow-x:clip}body{min-width:0}
[data-booking-form]{display:flex;min-height:0;flex:1;flex-direction:column;overflow:hidden}.booking-content{overscroll-behavior:contain}.booking-footer{position:relative;z-index:20;flex-shrink:0;box-shadow:0 -10px 30px rgba(17,17,17,.045)}
[data-booking-phone]{padding-left:1rem!important;padding-right:1rem!important;direction:ltr;text-align:left}
.gender-choice{display:flex;min-width:0;cursor:pointer;align-items:center;gap:10px;border:1px solid #e5e5e5;border-radius:16px;background:#fff;padding:10px 12px;transition:border-color .18s ease,background .18s ease,box-shadow .18s ease,transform .18s ease}.gender-choice:hover{border-color:#d7bb84;background:#fdfaf4}.gender-choice input{width:16px;height:16px;accent-color:#111;flex:none}.gender-choice span{display:grid;min-width:0;gap:2px}.gender-choice b{font-size:13px}.gender-choice small{font-size:10px;color:#777}.gender-choice:has(input:checked){border-color:#caa45e;background:#fbf7ee;box-shadow:0 0 0 2px rgba(202,164,94,.13)}
.booking-step-compact [data-time-grid]{max-height:168px;overflow:auto;padding-left:2px}

/* Mobile menu: dark luxury sheet + staggered motion */
[data-mobile-menu]{background:linear-gradient(180deg,#121212 0%,#0b0b0b 100%)!important;color:#fff;border-left:1px solid rgba(202,164,94,.16);box-shadow:-28px 0 80px rgba(0,0,0,.42)!important;transition:transform .42s cubic-bezier(.22,.8,.22,1),box-shadow .35s ease!important;will-change:transform}
[data-mobile-menu] > div:first-child{border-color:rgba(255,255,255,.09)!important}
[data-mobile-menu] > div:first-child img{background:rgba(255,255,255,.04)!important;border:1px solid rgba(202,164,94,.18);border-radius:14px!important;padding:7px!important}
[data-mobile-menu] [data-menu-close]{background:rgba(255,255,255,.08)!important;color:#fff!important;transition:transform .25s ease,background .25s ease}
[data-mobile-menu] [data-menu-close]:hover{background:rgba(202,164,94,.18)!important;transform:rotate(90deg)}
[data-mobile-menu] nav a{border-color:rgba(255,255,255,.075)!important;color:rgba(255,255,255,.76)!important;opacity:0;transform:translateX(18px);transition:opacity .32s ease,transform .38s cubic-bezier(.2,.75,.2,1),color .2s ease,background .2s ease,padding .2s ease;border-radius:14px;padding-inline:10px!important}
[data-mobile-menu] nav a:hover{color:#e4c37f!important;background:rgba(202,164,94,.08);padding-inline:14px!important}
[data-mobile-menu].is-open nav a{opacity:1;transform:none}
[data-mobile-menu].is-open nav a:nth-child(1){transition-delay:.06s}[data-mobile-menu].is-open nav a:nth-child(2){transition-delay:.09s}[data-mobile-menu].is-open nav a:nth-child(3){transition-delay:.12s}[data-mobile-menu].is-open nav a:nth-child(4){transition-delay:.15s}[data-mobile-menu].is-open nav a:nth-child(5){transition-delay:.18s}[data-mobile-menu].is-open nav a:nth-child(6){transition-delay:.21s}[data-mobile-menu].is-open nav a:nth-child(7){transition-delay:.24s}
[data-mobile-menu] > a[data-booking-open]{background:linear-gradient(135deg,#d9b66e,#b98b3d)!important;color:#111!important;box-shadow:0 12px 35px rgba(202,164,94,.18)}
[data-menu-btn]{transition:transform .25s ease,background .25s ease,border-color .25s ease}[data-menu-btn].is-active{transform:rotate(90deg);border-color:rgba(202,164,94,.6)!important;background:rgba(202,164,94,.12)}[data-menu-btn] svg{transition:transform .3s ease}[data-menu-btn].is-active svg{transform:scale(.86)}
[data-menu-backdrop]{transition:opacity .32s ease,backdrop-filter .32s ease!important}

/* Premium pagination: compact track with animated active marker */
.services-pagination,.blog-pagination{width:max-content!important;max-width:100%;margin-inline:auto!important;padding:7px 10px!important;border:1px solid rgba(17,17,17,.08);border-radius:999px;background:rgba(255,255,255,.78);box-shadow:0 8px 26px rgba(17,17,17,.08);backdrop-filter:blur(12px)}
#home-journal .blog-pagination{border-color:rgba(255,255,255,.1);background:rgba(255,255,255,.055);box-shadow:none}
.services-pagination .swiper-pagination-bullet,.blog-pagination .swiper-pagination-bullet{width:7px;height:7px;border:1px solid transparent;background:#c9c2b5;box-shadow:none;transform:none;transition:width .3s cubic-bezier(.2,.8,.2,1),background .3s ease,border-color .3s ease,box-shadow .3s ease}
#home-journal .blog-pagination .swiper-pagination-bullet{background:rgba(255,255,255,.28)}
.services-pagination .swiper-pagination-bullet-active,.blog-pagination .swiper-pagination-bullet-active{width:34px!important;height:9px;background:#caa45e!important;border-color:rgba(202,164,94,.7);box-shadow:0 0 0 4px rgba(202,164,94,.10),0 5px 14px rgba(167,123,48,.2)}
.services-pagination .swiper-pagination-bullet-active:after,.blog-pagination .swiper-pagination-bullet-active:after{inset:2px 6px;background:rgba(255,255,255,.28)}
.blog-card-editorial{box-shadow:0 24px 70px rgba(0,0,0,.22)}.blog-card-editorial:hover{border-color:rgba(202,164,94,.32);box-shadow:0 28px 90px rgba(0,0,0,.34)}
.enamad-placeholder{width:100%}

@media(max-width:767px){
  .booking-panel{height:min(92dvh,780px);max-height:92dvh;border-radius:26px 26px 0 0}.booking-head{padding-top:10px}.booking-progress-wrap{padding-top:9px;padding-bottom:9px}.booking-content{padding:12px 14px 12px}.booking-footer{padding:9px 14px max(9px,env(safe-area-inset-bottom));background:#fff}.booking-footer button{min-height:44px}.booking-step-compact .calendar-day{min-height:31px!important;border-radius:9px!important;font-size:10px!important}.booking-step-compact [data-cal-grid]{gap:.16rem!important}.booking-step-compact [data-jalali-calendar]{padding:.65rem!important}.booking-step-compact [data-cal-prev],.booking-step-compact [data-cal-next]{width:32px!important;height:32px!important}.booking-step-compact .time-slot{padding:8px 4px;font-size:11px}.booking-gender{margin-top:.65rem}.gender-choice{padding:9px 10px}.gender-choice b{font-size:12px}.gender-choice small{font-size:9px}.booking-step-compact [data-time-grid]{max-height:none}
  [data-mobile-menu]{width:min(88vw,360px)!important;padding-top:max(1.25rem,env(safe-area-inset-top))!important;padding-bottom:max(1.25rem,env(safe-area-inset-bottom))!important}
  .services-pagination,.blog-pagination{padding:6px 9px!important}.services-pagination .swiper-pagination-bullet-active,.blog-pagination .swiper-pagination-bullet-active{width:28px!important}
}
@media(min-width:768px){
  .booking-panel{height:min(86dvh,790px)!important;max-height:min(86dvh,790px)!important}.booking-content{padding-top:20px}.booking-step-compact .calendar-day{min-height:36px}.booking-step-compact [data-cal-grid]{gap:.28rem}
}
@media(min-width:1024px){[data-mobile-menu],[data-menu-backdrop]{display:none!important}}

/* v6: compact jalali calendar, corrected RTL month arrows, mobile footer columns */
.booking-step-compact .calendar-day{
  aspect-ratio:auto!important;
  height:34px!important;
  min-height:34px!important;
  padding:0!important;
  border-radius:10px!important;
  line-height:1!important;
}
.booking-step-compact [data-cal-grid]{
  grid-auto-rows:34px;
  align-items:stretch;
}
.booking-step-compact [data-jalali-calendar]{
  align-self:start;
}

@media(max-width:767px){
  .booking-step-compact .calendar-day{
    height:29px!important;
    min-height:29px!important;
    font-size:10px!important;
    border-radius:8px!important;
  }
  .booking-step-compact [data-cal-grid]{
    grid-auto-rows:29px;
    gap:2px!important;
  }
  .booking-step-compact [data-jalali-calendar]{padding:9px!important}
  .booking-step-compact [data-jalali-calendar] .mt-4{margin-top:7px!important}
  .booking-step-compact [data-jalali-calendar] .mt-2{margin-top:5px!important}
  .booking-step-compact [data-cal-prev],
  .booking-step-compact [data-cal-next]{width:30px!important;height:30px!important}

  /* Quick access + info are side-by-side on mobile; brand/contact remain full width. */
  body > footer > div > div.grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    column-gap:18px!important;
    row-gap:32px!important;
  }
  body > footer > div > div.grid > div:first-child,
  body > footer > div > div.grid > div:nth-child(4){grid-column:1 / -1!important}
  body > footer > div > div.grid > div:nth-child(2),
  body > footer > div > div.grid > div:nth-child(3){min-width:0}
  body > footer > div > div.grid > div:nth-child(2) .mt-5,
  body > footer > div > div.grid > div:nth-child(3) .mt-5{gap:10px!important}
}

@media(min-width:768px){
  .booking-step-compact .calendar-day{
    height:34px!important;
    min-height:34px!important;
    font-size:11px!important;
  }
  .booking-step-compact [data-cal-grid]{grid-auto-rows:34px;gap:4px!important}
  .booking-step-compact [data-jalali-calendar]{padding:12px!important}
  .booking-step-compact [data-jalali-calendar] .mt-4{margin-top:9px!important}
  .booking-step-compact [data-jalali-calendar] .mt-2{margin-top:6px!important}
}


/* v7: final booking price, linked consent, richer home journal, customer Swiper */
.booking-consent{transition:border-color .18s ease,background .18s ease,box-shadow .18s ease}.booking-consent:has(input:checked){border-color:#caa45e;background:#fbf7ee;box-shadow:0 0 0 2px rgba(202,164,94,.11)}.booking-price-summary{box-shadow:inset 0 1px 0 rgba(255,255,255,.06)}

/* Magazine cards: inset cover, metallic edge and stronger hierarchy without making the section noisy. */
#home-journal .blog-card-editorial{isolation:isolate;overflow:hidden;background:linear-gradient(145deg,#1b1915 0%,#111 72%);border-color:rgba(255,255,255,.095);box-shadow:0 24px 70px rgba(0,0,0,.27);transition:transform .3s cubic-bezier(.2,.8,.2,1),box-shadow .3s ease,border-color .3s ease}
#home-journal .blog-card-editorial:before{content:"";position:absolute;z-index:2;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(125deg,rgba(231,199,126,.22),transparent 24%,transparent 72%,rgba(202,164,94,.08));opacity:.7}
#home-journal .blog-card-editorial>div:first-child{margin:10px 10px 0;border-radius:22px;aspect-ratio:16/9;box-shadow:0 18px 44px rgba(0,0,0,.24)}
#home-journal .blog-card-editorial>div:first-child:after{content:"";position:absolute;inset:0;box-shadow:inset 0 0 0 1px rgba(255,255,255,.08);border-radius:inherit;pointer-events:none}
#home-journal .blog-card-editorial>div:nth-child(2){padding-top:18px}
#home-journal .blog-card-editorial h3{position:relative;padding-right:14px}
#home-journal .blog-card-editorial h3:before{content:"";position:absolute;right:0;top:.35rem;bottom:.35rem;width:3px;border-radius:999px;background:linear-gradient(#e7c77e,#a77b30)}
#home-journal .blog-card-editorial:hover{transform:translateY(-7px);border-color:rgba(202,164,94,.42);box-shadow:0 32px 95px rgba(0,0,0,.4)}
#home-journal .blog-card-editorial:hover>div:first-child img{transform:scale(1.055)}

.customer-swiper{padding:3px 2px 4px}.customer-swiper .swiper-slide{height:auto}.customer-card{height:100%;transition:transform .28s ease,border-color .28s ease,box-shadow .28s ease}.customer-card:hover{transform:translateY(-4px);border-color:rgba(202,164,94,.42);box-shadow:0 26px 70px rgba(17,17,17,.16)}
.customer-pagination{display:flex!important;align-items:center;justify-content:center;gap:7px;min-height:20px}.customer-pagination .swiper-pagination-bullet{position:relative;margin:0!important;width:8px;height:8px;border-radius:999px;background:#d8d1c4;opacity:1;transition:width .28s ease,background .28s ease,transform .28s ease,box-shadow .28s ease}.customer-pagination .swiper-pagination-bullet-active{width:32px!important;height:9px;background:linear-gradient(90deg,#a77b30,#d8b66f)!important;box-shadow:0 0 0 4px rgba(202,164,94,.09),0 5px 14px rgba(167,123,48,.22)}.customer-pagination .swiper-pagination-bullet-active:after{content:"";position:absolute;inset:2px 6px;border-radius:999px;background:rgba(255,255,255,.3)}
@media(max-width:639px){#home-journal .blog-card-editorial:hover,.customer-card:hover{transform:none}.customer-pagination .swiper-pagination-bullet-active{width:26px!important}.booking-consent{padding:12px!important;font-size:12px;line-height:1.8}}
