:root{
  --bg:#06090f;
  --bg-soft:#0b1220;
  --panel:#0f1828;
  --panel-strong:#121f31;
  --text:#edf3fb;
  --muted:#9eacbf;
  --line:rgba(255,255,255,0.08);
  --line-strong:rgba(255,255,255,0.14);
  --accent:#6fe7ff;
  --accent-strong:#14bfdc;
  --accent-soft:rgba(111,231,255,0.14);
  --shadow:0 24px 80px rgba(0,0,0,0.38);
  --shadow-soft:0 16px 40px rgba(0,0,0,0.24);
  --max-w:1180px;
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;background-color:var(--bg);scroll-padding-top:96px;-webkit-text-size-adjust:100%;text-size-adjust:100%;overscroll-behavior-y:none}
html,body{min-height:100%;min-height:100svh}
body{
  margin:0;
  font-family:'Poppins',Inter,system-ui,-apple-system,'Segoe UI',sans-serif;
  color:var(--text);
  background-color:var(--bg);
  background:
    radial-gradient(circle at top left, rgba(20,191,220,0.18), transparent 32%),
    radial-gradient(circle at 85% 18%, rgba(255,255,255,0.08), transparent 18%),
    linear-gradient(180deg, #07101b 0%, #05080d 34%, #06090f 100%);
  -webkit-font-smoothing:antialiased;
  overflow-x:hidden;
  overscroll-behavior-y:none;
}
body.vods-page{
  background:linear-gradient(180deg, #07101b 0%, #05080d 34%, #06090f 100%);
}
body.menu-open{overflow:hidden}

a{color:inherit}
button,input,textarea{font:inherit}
img{max-width:100%;display:block}

.container{max-width:var(--max-w);margin:0 auto;padding:0 24px}
.muted{color:var(--muted);font-size:14px;line-height:1.7}
.section-kicker,
.eyebrow{
  display:inline-flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  max-width:100%;
  margin:0 0 16px;
  color:var(--accent);
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:700;
}
.section-kicker::before,
.eyebrow::before{
  content:'';
  width:28px;
  height:1px;
  background:currentColor;
  opacity:.65;
}

.section-heading{max-width:760px;margin:0 0 36px}
.section-heading,
.about-copy,
.contact-copy,
.results-card{min-width:0}
.section-heading h2,
.about h2,
.contact h2,
.final-cta h2,
.results-card h2{margin:0 0 12px;font-size:clamp(32px,5vw,52px);line-height:1.04;letter-spacing:-.03em}
.section-heading p,
.about-copy p,
.contact-copy p,
.results-grid p,
.process-step p,
.test p{margin:0;color:var(--muted);line-height:1.75}

.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:52px;
  padding:0 22px;
  border-radius:999px;
  border:1px solid transparent;
  text-decoration:none;
  font-weight:700;
  letter-spacing:.02em;
  transition:transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease, box-shadow .2s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn.primary{
  background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);
  color:#051019;
  box-shadow:0 18px 40px rgba(20,191,220,0.22);
}
.btn.ghost{
  border-color:var(--line);
  background:rgba(255,255,255,0.02);
  color:var(--text);
}

.card{
  background:linear-gradient(180deg, rgba(17,28,43,0.86), rgba(10,16,26,0.92));
  border:1px solid var(--line);
  border-radius:26px;
  box-shadow:var(--shadow-soft);
}

header{
  position:fixed;
  inset:0 0 auto 0;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:18px 120px;
  z-index:1000;
  background:transparent;
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  border-bottom:1px solid transparent;
  transition:background .3s ease, border-color .3s ease, padding .3s ease, box-shadow .3s ease, backdrop-filter .3s ease;
}
header.sticky,
header.small-header,
header.menu-active-bg{
  background:rgba(5,8,13,0.82);
  backdrop-filter:blur(14px);
  -webkit-backdrop-filter:blur(14px);
  border-color:var(--line);
  box-shadow:0 12px 30px rgba(0,0,0,0.2);
}
header .logo{display:block;margin:0 auto 0 18px}
header .logo img{height:50px;width:auto;max-width:none}

.menu-toggle{display:none;font-size:34px;background:none;border:none;color:var(--text);cursor:pointer}
.mobile-nav-backdrop{display:none}
ul.nav-menu{display:flex;align-items:center;list-style:none;margin:0;padding:0}
ul.nav-menu li{margin:0 14px}
ul.nav-menu li.nav-auth{position:relative}
ul.nav-menu li a{
  color:var(--muted);
  text-decoration:none;
  font-weight:600;
  position:relative;
  transition:color .18s ease, transform .15s ease, text-shadow .18s ease;
}
ul.nav-menu li a i{margin-right:8px;color:var(--muted);font-size:16px;transition:color .18s ease}
ul.nav-menu li.nav-auth a{display:inline-flex;align-items:center;justify-content:center;min-width:24px}
ul.nav-menu li.nav-auth a i{margin-right:0}
ul.nav-menu li.nav-auth.has-menu{margin:0 18px 0 8px}
ul.nav-menu li.nav-auth.has-menu::after{
  content:'';
  position:absolute;
  top:100%;
  left:50%;
  transform:translateX(-50%);
  width:180px;
  height:18px;
}
.nav-account-trigger{padding:0;min-width:auto}
.nav-account-trigger::after{display:none}
.nav-account-trigger:hover,
.nav-account-trigger:focus{transform:none;text-shadow:none;color:#fff}
.nav-account-avatar{
  width:38px;
  height:38px;
  display:grid;
  place-items:center;
  border-radius:999px;
  overflow:hidden;
  border:1px solid rgba(111,231,255,0.22);
  background:linear-gradient(135deg, rgba(111,231,255,0.16), rgba(255,255,255,0.05));
  box-shadow:0 10px 24px rgba(0,0,0,0.22);
}
.nav-account-avatar img{width:100%;height:100%;object-fit:cover}
.nav-account-fallback{display:grid;place-items:center;width:100%;height:100%;color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em}
.nav-account-menu{
  position:absolute;
  top:calc(100% + 8px);
  left:50%;
  right:auto;
  transform:translateX(-50%) translateY(10px);
  min-width:180px;
  padding:10px;
  display:grid;
  gap:6px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(7,12,19,0.96);
  backdrop-filter:blur(16px);
  box-shadow:0 20px 50px rgba(0,0,0,0.32);
  opacity:0;
  visibility:hidden;
  pointer-events:none;
  transition:opacity .22s ease, transform .22s ease, visibility .22s ease;
  z-index:130;
}
.nav-account-menu::before{
  content:'';
  position:absolute;
  top:-7px;
  left:50%;
  margin-left:-7px;
  width:14px;
  height:14px;
  background:rgba(7,12,19,0.96);
  border-left:1px solid rgba(255,255,255,0.08);
  border-top:1px solid rgba(255,255,255,0.08);
  transform:rotate(45deg);
}
ul.nav-menu li.nav-auth.has-menu:hover .nav-account-menu,
ul.nav-menu li.nav-auth.has-menu:focus-within .nav-account-menu,
ul.nav-menu li.nav-auth.has-menu.menu-open .nav-account-menu{
  opacity:1;
  visibility:visible;
  pointer-events:auto;
  transform:translateX(-50%) translateY(0);
}
ul.nav-menu li.nav-auth .nav-account-menu a,
ul.nav-menu li.nav-auth .nav-account-menu button{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  width:100%;
  min-width:0;
  min-height:42px;
  padding:0 14px;
  border:none;
  border-radius:12px;
  background:transparent;
  color:#dbe5f1;
  font:inherit;
  font-weight:600;
  text-decoration:none;
  text-align:left;
  cursor:pointer;
  transition:background .18s ease, color .18s ease, border-color .18s ease, box-shadow .18s ease, transform .18s ease;
  border:1px solid transparent;
  position:relative;
  overflow:hidden;
}
.nav-account-menu a::before,
.nav-account-menu button::before{
  content:'';
  position:absolute;
  left:0;
  top:8px;
  bottom:8px;
  width:3px;
  border-radius:999px;
  background:var(--accent);
  opacity:0;
  transform:scaleY(.45);
  transition:opacity .18s ease, transform .18s ease;
}
.nav-account-menu a::after{display:none}
.nav-account-menu a:hover,
.nav-account-menu a:focus,
.nav-account-menu button:hover,
.nav-account-menu button:focus{
  background:linear-gradient(135deg, rgba(111,231,255,0.2), rgba(24,39,56,0.94));
  color:#fff;
  border-color:rgba(111,231,255,0.28);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.05), 0 10px 22px rgba(0,0,0,0.22);
  transform:translateX(4px);
  text-shadow:none;
}
.nav-account-menu a:hover::before,
.nav-account-menu a:focus::before,
.nav-account-menu button:hover::before,
.nav-account-menu button:focus::before{opacity:1;transform:scaleY(1)}
ul.nav-menu li a::after{
  content:'';
  position:absolute;
  left:50%;
  bottom:-8px;
  transform:translateX(-50%);
  width:0;
  height:3px;
  border-radius:999px;
  background:var(--accent);
  opacity:0;
  transition:width .28s cubic-bezier(.2,.9,.2,1),opacity .2s ease;
}
ul.nav-menu li a:hover,
ul.nav-menu li a:focus{color:#fff;transform:translateY(-3px);text-shadow:0 8px 30px rgba(111,231,255,0.16)}
ul.nav-menu li a:hover i,
ul.nav-menu li a:focus i{color:#fff}
ul.nav-menu li a:hover::after,
ul.nav-menu li a:focus::after{width:70%;opacity:1}
ul.nav-menu li.nav-auth a::after{bottom:-6px;height:2px}
ul.nav-menu li.nav-auth a:hover::after,
ul.nav-menu li.nav-auth a:focus::after{width:16px}

.hero{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  align-items:center;
  overflow:hidden;
}
.hero-background{
  position:absolute;
  inset:0;
  z-index:0;
}
.hero-background-layer{
  position:absolute;
  inset:0;
  opacity:0;
  background:url('../assets/images/hero-initial.jpg') center/cover no-repeat;
  background-color:#06090f;
  transform:scale(1.08);
  transition:opacity 1.2s ease, transform 7s ease;
  will-change:opacity, transform;
  overflow:hidden;
}
.hero-background-layer.is-visible{
  opacity:1;
  transform:scale(1.02);
}
.hero-background-video{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
}
.hero::before{
  content:'';
  position:absolute;
  inset:0;
  background:
    linear-gradient(180deg, rgba(5,8,13,0.22), rgba(5,8,13,0.86)),
    radial-gradient(circle at center, transparent 0%, rgba(5,8,13,0.25) 45%, rgba(5,8,13,0.9) 100%);
  transform:scale(1.04);
  z-index:1;
}
.hero::after{
  content:'';
  position:absolute;
  inset:auto 0 0 0;
  height:180px;
  background:linear-gradient(180deg, transparent, #06090f 80%);
  z-index:1;
}
.hero .container{position:relative;z-index:2;padding-top:170px;padding-bottom:130px;text-align:center}
.hero h1{width:fit-content;max-width:none;margin:0 auto 18px;font-size:clamp(44px,7.6vw,88px);line-height:.95;letter-spacing:-.05em;white-space:nowrap}
.hero p{max-width:770px;margin:0 auto;color:#d0d8e3;font-size:18px;line-height:1.75}
.hero-actions{display:flex;gap:14px;justify-content:center;margin-top:32px}
.hero-meta{
  display:grid;
  grid-template-columns:repeat(3, minmax(0, 1fr));
  gap:12px;
  width:min(100%, 980px);
  margin:32px auto 0;
}
.hero-chip{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:4px 6px;
  padding:10px 16px;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:999px;
  background:rgba(4,10,18,0.58);
  color:#dce6f3;
  backdrop-filter:blur(10px);
  font-size:12px;
  line-height:1.35;
  text-align:center;
  white-space:normal;
  text-wrap:balance;
}
.hero-chip span{color:var(--accent);font-weight:700}
.hero-stats{
  display:grid;
  grid-template-columns:repeat(3, 1fr);
  gap:18px;
  width:min(100%, 980px);
  margin:38px auto 0;
}
.hero-stats article{
  padding:22px 24px;
  border-radius:22px;
  background:linear-gradient(180deg, rgba(15,24,40,0.78), rgba(10,16,26,0.92));
  border:1px solid rgba(255,255,255,0.08);
  backdrop-filter:blur(12px);
  box-shadow:var(--shadow-soft);
}
.hero-stats strong{display:block;margin-bottom:10px;color:#fff;font-size:26px}
.hero-stats span{display:block;color:var(--muted);line-height:1.6;font-size:14px}

.services,
.about,
.testimonials,
.contact,
.process,
.faq,
.final-cta{padding:100px 0}

.service-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px}
.service-card{display:flex;flex-direction:column;padding:30px;position:relative;overflow:hidden;height:100%}
.service-card.featured{border-color:rgba(111,231,255,0.2)}
.service-card.clickable-service{cursor:pointer;transition:transform .22s ease, border-color .22s ease, box-shadow .22s ease, background .22s ease}
.service-card.clickable-service:hover,
.service-card.clickable-service:focus-visible{transform:translateY(-4px);border-color:rgba(111,231,255,0.22);box-shadow:0 20px 44px rgba(0,0,0,0.28)}
.service-card::before{
  content:'';
  position:absolute;
  inset:auto -10% -30% auto;
  width:160px;
  height:160px;
  border-radius:50%;
  background:radial-gradient(circle, rgba(111,231,255,0.14), transparent 70%);
}
.card-icon{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:18px;
  margin-bottom:18px;
  background:linear-gradient(180deg, rgba(111,231,255,0.16), rgba(111,231,255,0.08));
  color:var(--accent);
  font-size:20px;
}
.service-card h3{margin:0 0 12px;font-size:24px}
.service-price{display:inline-flex;align-items:baseline;gap:8px;margin:0 0 14px;color:#fff;font-size:28px;font-weight:700;letter-spacing:-.03em}
.service-price span{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.service-card p{margin:0;color:var(--muted);line-height:1.75}
.card-points{list-style:none;padding:0;margin:20px 0 0;display:grid;gap:12px;margin-top:auto;padding-top:20px}
.card-points li{position:relative;padding-left:18px;color:#d7e0eb;line-height:1.6}
.card-points li::before{content:'';position:absolute;left:0;top:10px;width:7px;height:7px;border-radius:50%;background:var(--accent)}
.service-card-meta{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:22px;margin-top:22px;border-top:1px solid rgba(255,255,255,0.07)}
.service-card-note{color:var(--muted);font-size:13px;line-height:1.6;max-width:26ch}
.service-book-link{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 18px;border-radius:999px;text-decoration:none;color:#051019;background:linear-gradient(135deg, var(--accent) 0%, var(--accent-strong) 100%);font-weight:700;white-space:nowrap;box-shadow:0 14px 32px rgba(20,191,220,0.18);transition:transform .2s ease, box-shadow .2s ease}
.service-book-button{border:none;cursor:pointer;font:inherit}
.service-book-link:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(20,191,220,0.24)}
.service-card-vod-featured{grid-column:1 / -1;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);gap:28px;padding:34px;align-items:start;border-color:rgba(111,231,255,0.22);background:linear-gradient(135deg, rgba(16,26,40,0.96), rgba(8,14,22,0.98))}
.service-card-vod-featured::before{display:none}
.service-card-vod-copy{display:grid;gap:14px;min-width:0}
.service-card-vod-kicker{margin:0;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.service-card-vod-copy h3{margin:0;font-size:clamp(28px,4vw,42px);line-height:1.04;letter-spacing:-.04em;max-width:14ch}
.service-card-vod-copy .service-price{margin:0}
.service-card-vod-copy > p:last-child{max-width:64ch}
.service-card-vod-aside{display:grid;gap:18px;align-content:start;position:relative;z-index:1}
.service-card-vod-badges{display:flex;flex-wrap:wrap;gap:10px}
.service-card-vod-badges span{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.08);color:#dce6f1;font-size:12px;font-weight:600;letter-spacing:.06em;text-transform:uppercase}
.service-card-vod-actions{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding-top:18px;margin-top:6px;border-top:1px solid rgba(255,255,255,0.07)}
.service-card-vod-actions .service-card-note{max-width:38ch}

.service-grid > *,
.results-grid > *,
.process-grid > *,
.testimonial-grid > *,
.contact-layout > *,
.split > *,
.footer-grid > *,
.auth-shell > *,
.booking-shell > *,
.checkout-shell > *,
.account-dashboard > *,
.admin-dashboard > *,
.account-overview-columns > *,
.account-overview-session-meta > *,
.admin-stat-grid > *,
.admin-spotlights > *,
.admin-overview-strip > *,
.admin-focus-grid > *{min-width:0}

.results-band{padding:42px 24px 0}
.results-card{padding:34px;border-radius:30px;background:linear-gradient(135deg, rgba(19,33,51,0.94), rgba(8,14,22,0.96));border:1px solid var(--line-strong);box-shadow:var(--shadow)}
.results-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:22px;margin-top:28px}
.results-grid article{padding:22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.results-grid strong{display:block;margin-bottom:10px;font-size:18px}

.about{padding:72px 0}
.split{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:28px;align-items:start}
.about-copy p + p{margin-top:16px}
.about-panel{padding:28px}
.features{list-style:none;padding:0;margin:0;display:grid;gap:20px}
.features li{display:grid;gap:6px;padding-bottom:18px;border-bottom:1px solid rgba(255,255,255,0.07)}
.features li:last-child{padding-bottom:0;border-bottom:none}
.features strong{font-size:17px}
.features span{color:var(--muted);line-height:1.65}

.profile-proof{padding:0 0 100px}
.profile-proof-panel{padding:34px;border-radius:30px}
.profile-proof-heading{margin-bottom:28px}
.profile-proof-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:18px}
.profile-proof-grid article{padding:22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.profile-proof-grid strong{display:block;margin-bottom:10px;font-size:18px;color:#fff}
.profile-proof-grid p{margin:0;color:var(--muted);line-height:1.7}
.profile-proof-links{display:flex;flex-wrap:wrap;gap:12px;margin-top:24px}
.profile-proof-link{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:0 18px;
  border-radius:999px;
  text-decoration:none;
  color:#dce6f3;
  border:1px solid rgba(255,255,255,0.08);
  background:rgba(255,255,255,0.03);
  transition:transform .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
}
.profile-proof-link:hover,
.profile-proof-link:focus{transform:translateY(-2px);border-color:rgba(111,231,255,0.22);background:rgba(111,231,255,0.08);color:#fff}

.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.process-step{padding:28px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,0.03), rgba(255,255,255,0.015));border:1px solid rgba(255,255,255,0.07)}
.process-step span{display:inline-flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:14px;background:var(--accent-soft);color:var(--accent);font-weight:700;margin-bottom:20px}
.process-step h3{margin:0 0 12px;font-size:22px}

.testimonial-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px}
.test{padding:30px;border-radius:24px;background:linear-gradient(180deg, rgba(16,27,42,0.92), rgba(10,16,26,0.95));border:1px solid rgba(255,255,255,0.07);margin:0}
.test p{font-size:18px;color:#dfe8f3}
.test cite{display:block;margin-top:18px;color:var(--accent);font-style:normal;font-size:13px;letter-spacing:.08em;text-transform:uppercase}

.contact-layout{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:28px;align-items:stretch}
.contact-copy{display:flex;flex-direction:column;min-height:100%}
.contact-details{padding:22px;margin-top:auto;display:grid;gap:18px}
.contact-details span{display:block;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;margin-bottom:6px}
.contact-details a{text-decoration:none;font-size:18px;font-weight:600;white-space:nowrap;overflow-wrap:normal;word-break:normal}
.contact-details p{margin:0;color:var(--muted);line-height:1.7}
.contact-form{padding:26px;display:grid;gap:14px}
.contact-form input,
.contact-form textarea,
.auth-form input,
.auth-form select{
  width:100%;
  border:1px solid rgba(255,255,255,0.09);
  background:rgba(255,255,255,0.03);
  color:var(--text);
  border-radius:18px;
  padding:15px 16px;
  outline:none;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.contact-form input:focus,
.contact-form textarea:focus,
.auth-form input:focus,
.auth-form select:focus{border-color:rgba(111,231,255,0.42);background:rgba(255,255,255,0.045);box-shadow:0 0 0 4px rgba(111,231,255,0.08)}
.contact-form textarea{resize:vertical;min-height:160px}
.auth-form select option{color:#051019}
.form-status{min-height:24px;margin:0;font-size:14px;line-height:1.6}
.form-status.is-success{color:#7fdfaa}
.form-status.is-error{color:#ff9c9c}
.form-status.is-info{color:var(--accent)}
.contact-form .btn[disabled]{opacity:.72;cursor:progress;transform:none}

.faq-list{display:grid;gap:16px}
.faq-item{
  padding:24px 26px;
  border-radius:24px;
  background:linear-gradient(180deg, rgba(16,27,42,0.92), rgba(10,16,26,0.95));
  border:1px solid rgba(255,255,255,0.07);
  box-shadow:var(--shadow-soft);
}
.faq-item summary{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  cursor:pointer;
  list-style:none;
  font-size:18px;
  font-weight:700;
  color:#fff;
}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary::after{
  content:'+';
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:34px;
  height:34px;
  border-radius:12px;
  background:rgba(111,231,255,0.08);
  color:var(--accent);
  font-size:22px;
  line-height:1;
}
.faq-item[open] summary::after{content:'−'}
.faq-item p{margin:16px 0 0;color:var(--muted);line-height:1.75}

.cta-panel{
  padding:38px;
  border-radius:30px;
  background:
    linear-gradient(135deg, rgba(111,231,255,0.16), rgba(20,191,220,0.08)),
    linear-gradient(180deg, rgba(17,28,43,0.94), rgba(10,16,26,0.96));
  border:1px solid rgba(111,231,255,0.16);
  box-shadow:var(--shadow);
  text-align:center;
}
.cta-panel .muted{max-width:720px;margin:12px auto 0}
.cta-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}

.partner-strip{padding:0 0 40px}
.partner-strip-panel{
  padding:20px 24px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,0.07);
  background:linear-gradient(180deg, rgba(14,22,34,0.76), rgba(8,12,19,0.9));
  box-shadow:var(--shadow-soft);
  overflow:hidden;
}
.partner-strip-kicker{
  margin:0 0 16px;
  color:rgba(237,243,251,0.56);
  text-align:center;
  text-transform:uppercase;
  letter-spacing:.18em;
  font-size:11px;
  font-weight:700;
}
.partner-marquee{
  --partner-logo-height:74px;
  --partner-gap:44px;
  position:relative;
  overflow:hidden;
}
.partner-marquee-track{display:flex;width:max-content;animation:partner-marquee 48s linear infinite;will-change:transform}
.partner-marquee-group{display:flex;align-items:center;gap:var(--partner-gap);padding-right:var(--partner-gap);flex:0 0 auto}
.partner-logo-frame{
  display:flex;
  align-items:center;
  justify-content:center;
  height:var(--partner-logo-height);
  flex:0 0 auto;
}
.partner-logo-frame-signal{width:clamp(104px, 11vw, 136px)}
.partner-logo-frame-100tatov{width:clamp(92px, 10vw, 124px)}
.partner-logo{display:block;max-width:100%;max-height:100%;width:auto;height:auto;user-select:none;pointer-events:none}
.partner-logo-signal{opacity:.72;filter:saturate(.82) brightness(.96)}
.partner-logo-100tatov{opacity:.54;filter:grayscale(.92) saturate(.18) brightness(.98) contrast(.88)}

@keyframes partner-marquee{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

@media (prefers-reduced-motion: reduce){
  .partner-marquee-track{animation:none}
}

.site-footer{padding:36px 0 26px;border-top:1px solid rgba(255,255,255,0.06);background:rgba(2,4,8,0.55)}
.site-footer.site-footer-minimal{padding:22px 0 24px;background:transparent}
.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:24px;padding-bottom:26px}
.footer-brand{font-size:24px;font-weight:700;margin-bottom:10px}
.footer-title{margin-bottom:12px;color:#fff;font-weight:600}
.site-footer a{display:block;margin-bottom:10px;color:var(--muted);text-decoration:none;transition:color .2s ease}
.site-footer a:hover{color:#fff}
.footer-bottom{display:flex;justify-content:space-between;gap:16px;padding-top:22px;border-top:1px solid rgba(255,255,255,0.06);color:#dce6f3;font-size:14px}
.site-footer-minimal .footer-bottom{padding-top:0;border-top:none;align-items:center}
.footer-signoff{display:flex;align-items:center;gap:12px;flex-wrap:wrap}
.footer-note{font-size:14px;text-align:right}
.footer-links-inline{display:flex;align-items:center;justify-content:flex-end;gap:12px 18px;flex-wrap:wrap}
.site-footer-minimal a{display:inline-flex;margin-bottom:0}
.footer-credit{position:relative;padding-left:12px;color:rgba(237,243,251,0.68);font-size:12px;letter-spacing:.04em}
.footer-credit::before{content:'';position:absolute;left:0;top:50%;width:4px;height:4px;border-radius:999px;background:rgba(237,243,251,0.28);transform:translateY(-50%)}

.legal-consent{
  margin-top:14px;
  padding:14px 16px;
  border-radius:18px;
  border:1px solid rgba(255,255,255,0.06);
  background:rgba(255,255,255,0.03);
  color:var(--muted);
  font-size:13px;
  line-height:1.7;
}
.legal-consent a,
.legal-shell a{
  color:#dce6f3;
  text-decoration:underline;
  text-underline-offset:3px;
}
.legal-consent a:hover,
.legal-shell a:hover{color:#fff}

.auth-modal.hidden{display:none}
.hidden{display:none !important}
.site-notice{
  position:fixed;
  top:0;
  left:0;
  z-index:1400;
  padding:12px 18px;
  width:max-content;
  max-width:min(calc(100vw - 24px), 280px);
  border-radius:16px;
  border:1px solid rgba(111,231,255,0.2);
  background:rgba(7,12,19,0.96);
  color:#edf3fb;
  box-shadow:0 20px 45px rgba(0,0,0,0.28);
  backdrop-filter:blur(14px);
  opacity:0;
  transform:translateY(-10px);
  pointer-events:none;
  transition:opacity .2s ease, transform .2s ease;
}
.site-notice.is-visible{
  opacity:1;
  transform:translateY(0);
}
.auth-modal{position:fixed;inset:0;z-index:10050;display:block}
.auth-overlay{position:fixed;inset:0;background:rgba(2,6,12,0.74);backdrop-filter:blur(10px)}
.auth-panel{
  position:relative;
  margin:8vh auto;
  max-width:520px;
  background:linear-gradient(180deg, rgba(18,31,49,0.96), rgba(10,16,26,0.98));
  padding:26px;
  border-radius:28px;
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:var(--shadow);
  z-index:10060;
}
.auth-close{position:absolute;right:14px;top:12px;background:none;border:none;color:var(--muted);font-size:18px;cursor:pointer}
.auth-tabs{display:flex;gap:8px;margin:18px 0 14px;position:relative;padding:6px;border-radius:999px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.auth-tabs .tab{flex:1;padding:11px 18px;border-radius:999px;background:transparent;border:none;color:var(--muted);cursor:pointer;font-weight:600;position:relative;z-index:2}
.auth-tabs .tab.active{color:#fff}
.auth-tabs .indicator{position:absolute;left:0;top:50%;width:0;background:linear-gradient(90deg, rgba(111,231,255,0.2), rgba(20,191,220,0.18));box-shadow:0 12px 40px rgba(111,231,255,0.08);transform:translateY(-50%);transition:transform .28s cubic-bezier(.2,.9,.2,1), width .24s ease, opacity .24s ease, height .24s ease, border-radius .24s ease;pointer-events:none}
.auth-form .field{margin-bottom:14px}
.auth-form label{display:block;font-size:13px;color:var(--muted);margin-bottom:8px}
.auth-note{margin-top:12px;text-align:center}
.signup-only-field{max-height:0;overflow:hidden;opacity:0;transform:translateY(-8px);transition:max-height .36s ease, opacity .28s ease, transform .28s ease}
.signup-only-field.show{display:block !important;max-height:220px;opacity:1;transform:translateY(0)}

body.auth-page{min-height:100svh;overflow-x:hidden;overflow-y:auto}
body.booking-page{min-height:100svh}

.auth-header{padding-left:120px;padding-right:120px}
.auth-header-left{display:flex;align-items:center;gap:26px;min-width:0}
.auth-header .logo{margin:0 0 0 18px}
.auth-top-nav{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.auth-top-nav a,
.auth-home-link{
  display:inline-flex;
  align-items:center;
  gap:10px;
  min-height:40px;
  padding:0 14px;
  border-radius:16px;
  text-decoration:none;
  color:var(--muted);
  border:1px solid rgba(255,255,255,0.06);
  background:rgba(255,255,255,0.025);
  box-shadow:inset 0 1px 0 rgba(255,255,255,0.02);
  transition:color .2s ease, border-color .2s ease, background .2s ease, transform .2s ease, box-shadow .2s ease;
}
.auth-top-nav a{font-size:14px}
.auth-top-nav a:hover,
.auth-top-nav a:focus,
.auth-home-link:hover,
.auth-home-link:focus{color:#fff;border-color:rgba(111,231,255,0.2);background:rgba(111,231,255,0.07);box-shadow:0 12px 28px rgba(0,0,0,0.16);transform:translateY(-2px)}

.auth-main{min-height:100svh;padding:112px 24px 36px;position:relative;isolation:isolate;display:flex;align-items:flex-start}
.auth-main::before{
  content:'';
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:
    radial-gradient(circle at 14% 18%, rgba(20,191,220,0.14), transparent 30%),
    radial-gradient(circle at 84% 20%, rgba(255,255,255,0.06), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(9,15,24,0.32), transparent 56%);
  pointer-events:none;
  z-index:-1;
}
.auth-main::after{
  content:'';
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:linear-gradient(90deg, rgba(4,8,14,0.26), transparent 18%, transparent 82%, rgba(4,8,14,0.18));
  pointer-events:none;
  z-index:-1;
}
.auth-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(0,1fr) minmax(460px,620px);gap:28px;align-items:stretch;width:100%}
.auth-copy{padding:38px;display:flex;flex-direction:column;justify-content:center;min-height:calc(100svh - 148px);height:auto;position:sticky;top:112px;align-self:start}
.auth-copy h1{margin:0 0 12px;font-size:clamp(38px,6vw,60px);line-height:1.02;letter-spacing:-.04em}
.auth-benefits{display:grid;gap:14px;margin-top:28px}
.auth-benefits article{padding:20px 22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.auth-benefits strong{display:block;margin-bottom:8px;font-size:18px}
.auth-page-panel{position:relative;max-width:none;margin:0;padding:34px;border-radius:32px;background:linear-gradient(180deg, rgba(18,31,49,0.8), rgba(9,15,24,0.92));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow);display:flex;flex-direction:column;align-items:stretch;text-align:left;min-height:calc(100svh - 148px);height:auto}
.auth-prefill-banner{padding:16px 18px;margin-bottom:16px;border-radius:20px;background:rgba(111,231,255,0.08);border:1px solid rgba(111,231,255,0.14)}
.auth-prefill-banner strong{display:block;margin-bottom:6px}
.auth-form{width:100%;max-width:none;margin-top:0;text-align:left;display:grid;gap:20px}
.auth-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px 16px}
.auth-form .field{margin-bottom:0;display:grid;gap:8px}
.auth-field-full{grid-column:1 / -1}
.auth-page-panel .auth-note{margin-top:auto;padding-top:18px}
body.auth-page.auth-booking-prefill .auth-copy{justify-content:flex-start}
body.auth-page.auth-booking-prefill .auth-copy h1{max-width:11ch}
body.auth-page.auth-booking-prefill .auth-page-panel{padding-top:28px}

.booking-header{padding-left:120px;padding-right:120px}
.booking-main{min-height:100svh;padding:118px 24px 48px;position:relative;isolation:isolate}
.booking-main::before{
  content:'';
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:
    radial-gradient(circle at 14% 16%, rgba(20,191,220,0.16), transparent 30%),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,0.06), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(9,15,24,0.32), transparent 56%);
  pointer-events:none;
  z-index:-1;
}
.booking-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(0,1.22fr);gap:24px;align-items:stretch;width:100%}
.booking-copy,
.booking-panel{padding:34px;border-radius:32px;height:100%}
.booking-copy{display:flex;flex-direction:column;gap:20px;justify-content:flex-start;min-height:100%}
.booking-copy h1{margin:0 0 12px;font-size:clamp(36px,6vw,58px);line-height:1.02;letter-spacing:-.04em}
.booking-copy p{margin:0}
.booking-benefits{display:grid;gap:12px}
.booking-benefits article{padding:20px 22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.booking-benefits strong{display:block;margin-bottom:8px;font-size:18px}
.booking-service-card{padding:24px;border-radius:26px;background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.06)}
.booking-service-card h2{margin:0 0 10px;font-size:30px;line-height:1.08;letter-spacing:-.03em}
.booking-service-price{display:inline-flex;align-items:baseline;gap:8px;margin-bottom:12px;color:#fff;font-size:30px;font-weight:700;letter-spacing:-.04em}
.booking-service-price span{color:var(--muted);font-size:13px;font-weight:600;letter-spacing:.04em;text-transform:uppercase}
.booking-service-description{color:var(--muted);line-height:1.75}
.booking-panel{background:linear-gradient(180deg, rgba(18,31,49,0.8), rgba(9,15,24,0.92));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px}
.booking-panel h2{margin:0;font-size:30px;letter-spacing:-.03em}
.booking-account-card{padding:18px 20px;border-radius:20px;background:rgba(111,231,255,0.08);border:1px solid rgba(111,231,255,0.14)}
.booking-account-card strong{display:block;margin-bottom:6px}
.booking-form{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px}
.booking-form-section{padding:22px;border-radius:24px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06)}
.booking-form-section.full-width{grid-column:1 / -1}
.booking-form-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.booking-form-section-head strong{display:block;font-size:16px;color:#fff}
.booking-form-section-head span{color:var(--muted);font-size:13px;line-height:1.5}
.booking-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px}
.booking-form-grid-primary{align-items:stretch}
.booking-form .field{display:grid;gap:8px}
.booking-form .field.full-width{grid-column:1 / -1}
.booking-form label{display:block;font-size:13px;color:var(--muted)}
.booking-form .field.field-schedule{grid-template-rows:auto 1fr}
.booking-day-picker{
  display:grid;
  grid-template-columns:56px minmax(0, 1fr) 56px;
  align-items:center;
  gap:12px;
  min-height:88px;
  padding:10px;
  border:1px solid rgba(255,255,255,0.09);
  border-radius:22px;
  background:rgba(255,255,255,0.03);
}
.booking-day-nav{
  width:56px;
  height:56px;
  border:none;
  border-radius:18px;
  background:rgba(255,255,255,0.04);
  color:var(--text);
  font-size:30px;
  line-height:1;
  cursor:pointer;
  transition:background .2s ease, transform .2s ease, opacity .2s ease;
}
.booking-day-nav:hover{background:rgba(111,231,255,0.1);transform:translateY(-1px)}
.booking-day-nav:disabled{opacity:.34;cursor:not-allowed;transform:none;background:rgba(255,255,255,0.025)}
.booking-day-display{display:grid;justify-items:center;text-align:center;gap:2px;min-width:0}
.booking-day-number{font-size:34px;font-weight:700;line-height:1;letter-spacing:-.04em;color:#fff}
.booking-day-meta{color:var(--muted);font-size:13px;line-height:1.5;text-transform:capitalize}
.booking-time-select{min-height:88px;padding:0 18px;font-size:18px;font-weight:600}
.booking-form select,
.booking-form input,
.booking-form textarea{
  width:100%;
  border:1px solid rgba(255,255,255,0.09);
  background:rgba(255,255,255,0.03);
  color:var(--text);
  border-radius:18px;
  padding:15px 16px;
  outline:none;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.booking-form select:focus,
.booking-form input:focus,
.booking-form textarea:focus{border-color:rgba(111,231,255,0.42);background:rgba(255,255,255,0.045);box-shadow:0 0 0 4px rgba(111,231,255,0.08)}
.booking-form textarea{resize:vertical;min-height:150px}
.booking-form select option{color:#051019}
.booking-form input::placeholder,
.booking-form textarea::placeholder{color:#8d9ab0}
.booking-summary{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px;padding:0;margin:0;list-style:none}
.booking-summary li{padding:18px 20px;border-radius:20px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.booking-summary strong{display:block;margin-bottom:6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.booking-summary span{color:#dbe5f1;line-height:1.6}
.booking-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:4px}
.booking-actions .btn{min-width:180px}
.booking-note{font-size:14px;line-height:1.7;color:var(--muted)}

body.checkout-page{min-height:100svh}
.checkout-main{min-height:100svh;padding:118px 24px 48px;position:relative;isolation:isolate}
.checkout-main::before{
  content:'';
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:
    radial-gradient(circle at 14% 16%, rgba(20,191,220,0.16), transparent 30%),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,0.06), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(9,15,24,0.32), transparent 56%);
  pointer-events:none;
  z-index:-1;
}
.checkout-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(300px,.82fr) minmax(0,1.18fr);gap:24px;align-items:stretch;width:100%}
.vods-main{min-height:100svh;padding:118px 24px 48px;position:relative;isolation:isolate}
.vods-main::before{display:none}
.vods-shell{position:relative;z-index:1;display:grid;gap:12px}
.vods-account-notice{margin:0}
.vods-catalog{display:grid;gap:20px}
.vods-section-heading{margin-bottom:0}
.vods-editorial-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:14px}
.vods-editorial-card{padding:20px 22px;border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.025));border:1px solid rgba(255,255,255,0.08);box-shadow:0 14px 38px rgba(0,0,0,0.22);display:grid;gap:10px}
.vods-editorial-card span{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--accent)}
.vods-editorial-card strong{font-size:16px;line-height:1.55;color:#e5edf7}
.vod-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:22px}
.vod-grid.vod-grid-single{grid-template-columns:1fr}
.vod-card{padding:30px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(260px,.95fr);gap:24px;align-items:stretch;position:relative;overflow:hidden;background:linear-gradient(145deg, rgba(17,29,46,0.96), rgba(7,11,19,0.98));border:1px solid rgba(255,255,255,0.08);box-shadow:0 22px 64px rgba(0,0,0,0.34)}
.vod-card::before{content:"";display:block;position:absolute;inset:-1px;background:radial-gradient(circle at top right, rgba(111,231,255,0.14), transparent 40%), radial-gradient(circle at bottom left, rgba(255,255,255,0.06), transparent 32%);pointer-events:none}
.vod-card-copy,.vod-card-details{position:relative;z-index:1;display:grid;gap:14px;align-content:start;min-width:0}
.vod-card-kicker{margin:0;color:var(--accent);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.vod-card h3{margin:0;font-size:clamp(26px,3.4vw,38px);line-height:1.06;letter-spacing:-.04em;max-width:14ch}
.vod-card-copy .service-price{margin:0}
.vod-card-metrics{display:grid;gap:12px}
.vod-card-metrics div{display:grid;gap:6px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.08)}
.vod-card-metrics span{font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}
.vod-card-metrics strong{font-size:15px;line-height:1.55;color:#dce6f1}
.vod-card-details{grid-template-rows:auto 1fr}
.vod-card-actions{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,0.07)}
.vod-card-actions .service-card-note{max-width:none;min-width:0;margin:0}
.vod-card-actions .service-book-link,
.vod-card-actions .service-book-button{justify-self:end;align-self:end}
.checkout-copy,
.checkout-panel{padding:34px;border-radius:32px;height:100%}
.checkout-copy{display:flex;flex-direction:column;gap:20px;justify-content:flex-start}
.checkout-copy h1{margin:0 0 12px;font-size:clamp(36px,6vw,58px);line-height:1.02;letter-spacing:-.04em}
.checkout-panel{background:linear-gradient(180deg, rgba(18,31,49,0.8), rgba(9,15,24,0.92));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow);display:flex;flex-direction:column;gap:18px}
.checkout-panel h2{margin:0;font-size:30px;letter-spacing:-.03em}
.checkout-session{padding:24px;border-radius:26px;background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.06)}
.checkout-session h2{margin:0 0 10px;font-size:30px;line-height:1.08;letter-spacing:-.03em}
.checkout-session-meta{margin:0 0 10px;color:#dce6f3;font-weight:600}
.checkout-benefits{display:grid;gap:12px}
.checkout-benefits article{padding:20px 22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.checkout-benefits strong{display:block;margin-bottom:8px;font-size:18px}
.checkout-summary{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px;padding:0;margin:0;list-style:none}
.checkout-summary li{padding:18px 20px;border-radius:20px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.checkout-summary strong{display:block;margin-bottom:6px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.checkout-summary span{color:#dbe5f1;line-height:1.6}
.checkout-form{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px}
.checkout-form-section{padding:22px;border-radius:24px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06)}
.checkout-form-section.full-width{grid-column:1 / -1}
.checkout-form-section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:16px}
.checkout-form-section-head strong{display:block;font-size:16px;color:#fff}
.checkout-form-section-head span{color:var(--muted);font-size:13px;line-height:1.5}
.checkout-form-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:16px}
.checkout-form .field{display:grid;gap:8px}
.checkout-form .field.full-width{grid-column:1 / -1}
.checkout-form label{display:block;font-size:13px;color:var(--muted)}
.checkout-payment-card{display:grid;gap:18px;padding:22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);margin-bottom:18px}
.checkout-payment-card strong{display:block;margin-bottom:8px;font-size:18px}
.checkout-payment-methods{display:flex;flex-wrap:wrap;gap:10px}
.checkout-payment-methods span{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:999px;background:rgba(255,255,255,0.04);border:1px solid rgba(255,255,255,0.06);color:#dbe5f1;font-size:13px;font-weight:600}
.checkout-success,
.checkout-empty{padding:24px;border-radius:24px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.checkout-success h3,
.checkout-empty h3{margin:0 0 10px;font-size:26px;letter-spacing:-.03em}
.checkout-guest-signup{display:grid;gap:12px;margin-top:18px;padding-top:18px;border-top:1px solid rgba(255,255,255,0.07)}
.checkout-guest-signup strong{display:block}
body.legal-page{min-height:100svh}
.legal-main{min-height:100svh;padding:118px 24px 48px;position:relative;isolation:isolate}
.legal-main::before{
  content:'';
  position:absolute;
  inset:0;
  left:50%;
  width:100vw;
  transform:translateX(-50%);
  background:
    radial-gradient(circle at 14% 16%, rgba(20,191,220,0.16), transparent 30%),
    radial-gradient(circle at 84% 18%, rgba(255,255,255,0.06), transparent 22%),
    radial-gradient(circle at 50% 100%, rgba(9,15,24,0.32), transparent 56%);
  pointer-events:none;
  z-index:-1;
}
.legal-shell{
  position:relative;
  z-index:1;
  max-width:960px;
  margin:0 auto;
  padding:38px;
  border-radius:32px;
  background:linear-gradient(180deg, rgba(18,31,49,0.84), rgba(9,15,24,0.94));
  border:1px solid rgba(255,255,255,0.08);
  box-shadow:var(--shadow);
}
.legal-shell h1{margin:0 0 10px;font-size:clamp(34px,6vw,58px);line-height:1.02;letter-spacing:-.04em}
.legal-meta{margin:0 0 26px;color:var(--muted);font-size:14px}
.legal-highlight{
  margin-bottom:28px;
  padding:20px 22px;
  border-radius:24px;
  background:rgba(111,231,255,0.08);
  border:1px solid rgba(111,231,255,0.14);
  color:#dbe5f1;
  line-height:1.75;
}
.legal-stack{display:grid;gap:24px}
.legal-section{
  padding:24px 26px;
  border-radius:24px;
  background:rgba(255,255,255,0.03);
  border:1px solid rgba(255,255,255,0.06);
}
.legal-section h2{margin:0 0 12px;font-size:24px;letter-spacing:-.03em}
.legal-section p,
.legal-section li{color:var(--muted);line-height:1.8}
.legal-section p{margin:0 0 12px}
.legal-section p:last-child{margin-bottom:0}
.legal-section ul{margin:14px 0 0;padding-left:20px}
.legal-section li + li{margin-top:8px}
.legal-section strong{color:#fff}
.account-page{background:#08111a;overflow:auto}
.account-page header{background:rgba(8,17,26,0.96);backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}
.account-page .auth-header{padding:10px 14px;align-items:center}
.account-page .auth-header-left{gap:12px}
.account-page .auth-header .logo{margin:0}
.account-page .auth-header .logo img{height:42px}
.account-page .auth-top-nav{gap:10px}
.account-page .auth-top-nav a,
.account-page .auth-home-link{min-height:36px;padding:0 13px;border-radius:14px}
.account-main{min-height:100svh;padding:64px 10px 10px;position:relative;isolation:isolate;max-width:none;width:100%;height:auto}
.account-main.container{max-width:none}
.account-main::before{display:none}
.account-dashboard{position:relative;z-index:1;display:grid;grid-template-columns:380px minmax(0,1fr);gap:0;align-items:stretch;background:#0a1420;border:1px solid rgba(255,255,255,0.09);border-radius:24px;box-shadow:none;overflow:hidden;min-height:0;height:auto}
.account-console-sidebar{padding:28px 24px;background:linear-gradient(180deg, rgba(12,21,34,0.92), rgba(9,15,24,0.98));border-right:1px solid rgba(255,255,255,0.08);display:flex;flex-direction:column;gap:18px;min-height:0;height:100%;overflow:visible}
.account-console-sidebar,
.account-view-section.is-active{scrollbar-width:thin;scrollbar-color:rgba(111,231,255,0.18) rgba(255,255,255,0.03)}
.account-console-identity{display:grid;gap:14px}
.account-console-actions{display:grid;gap:10px}
.account-console-actions .btn{width:100%;justify-content:flex-start;border-radius:14px;min-height:44px}
.account-console-nav{display:grid;gap:6px}
.account-console-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border:none;border-radius:16px;text-decoration:none;color:#dbe5f1;background:transparent;border:1px solid rgba(255,255,255,0.02);transition:background .18s ease,border-color .18s ease,color .18s ease;cursor:pointer;text-align:left;font:inherit}
.account-console-link:hover{border-color:rgba(255,255,255,0.08);color:#fff;background:rgba(255,255,255,0.03)}
.account-console-link span{font-size:14px;font-weight:600}
.account-console-link strong{min-width:32px;height:32px;padding:0 9px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.06);font-size:12px;letter-spacing:.08em}
.account-console-link.is-active{background:rgba(255,255,255,0.05);border-color:rgba(111,231,255,0.18);color:var(--text)}
.account-console-link.is-active strong{background:rgba(111,231,255,0.14);color:var(--accent)}
.account-console-meta{display:grid;grid-template-columns:repeat(2, minmax(0,1fr));gap:8px;padding-top:14px;border-top:1px solid rgba(255,255,255,0.08)}
.account-console-meta div{display:grid;gap:5px;padding:12px 13px;border-radius:15px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06)}
.account-console-meta div:last-child{grid-column:1 / -1}
.account-console-meta span{margin:0;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.account-console-meta strong{font-size:14px;line-height:1.5;color:#dbe5f1}
.account-console-main{display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto minmax(0,1fr);gap:18px;padding:28px;align-content:start;min-height:0;height:100%;overflow:visible;align-self:stretch}
.account-main-view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:22px;padding:2px 2px 12px;border-bottom:1px solid rgba(255,255,255,0.08)}
.account-main-view-head h2{margin:0;font-size:32px;letter-spacing:-.04em}
.account-main-view-head .muted{margin:0;max-width:48ch}
.account-view-section{display:none !important;min-height:0}
.account-view-section.is-active{display:grid !important;grid-template-columns:minmax(0,1fr);align-content:start;align-self:stretch;min-height:100%;height:100%;overflow:visible;overscroll-behavior:auto;scrollbar-gutter:auto;-webkit-overflow-scrolling:auto}
.account-overview-columns{display:grid;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);grid-template-areas:'next profile' 'focus policy' 'vod vod';gap:18px;align-items:stretch;height:100%}
.account-overview-column{display:contents}
.account-overview-panel-next{grid-area:next}
.account-overview-panel-profile{grid-area:profile}
.account-overview-panel-focus{grid-area:focus}
.account-overview-panel-policy{grid-area:policy}
.account-overview-panel-vod{grid-area:vod}
.account-overview-panel{width:100%;padding:24px;border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.08);display:grid;gap:18px;align-content:start;align-self:stretch}
.account-overview-panel h2{margin:0;font-size:clamp(30px,4vw,40px);line-height:1.04;letter-spacing:-.04em}
.account-overview-panel-next{padding:20px;gap:14px}
.account-overview-panel-profile{padding:20px;gap:14px}
.account-overview-panel-focus{padding:20px;gap:14px}
.account-overview-panel-policy{padding:20px;gap:14px}
.account-overview-session{display:grid;gap:14px;align-content:start}
.account-overview-session-card{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 18px;border-radius:18px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.account-overview-session-card > :first-child{min-width:0;flex:1}
.account-overview-session-card strong{font-size:20px;line-height:1.08}
.account-overview-session-card .muted{margin:6px 0 0}
.account-overview-session-meta{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:12px}
.account-overview-session-meta div{display:grid;gap:7px;padding:14px 15px;border-radius:16px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.05)}
.account-overview-session-meta span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.account-overview-session-meta strong{font-size:15px;line-height:1.6;color:#dbe5f1}
.account-overview-session-actions{display:grid;grid-template-columns:repeat(auto-fit, minmax(160px, 1fr));gap:10px;align-items:stretch}
.account-overview-session-actions .btn{width:100%;min-width:0;min-height:48px;justify-content:center;text-align:center;white-space:nowrap}
.account-overview-empty{padding:20px 22px;border-radius:20px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.account-overview-empty strong{display:block;font-size:18px;line-height:1.12;color:#fff}
.account-overview-empty .muted{margin:10px 0 0}
.account-shell{position:relative;z-index:1;display:grid;grid-template-columns:minmax(360px,.88fr) minmax(0,1.12fr);gap:24px;align-items:start;width:100%}
.account-sidebar,
.account-content{display:grid;gap:24px}
.account-sidebar{align-self:start}
.account-profile,
.account-section,
.account-focus{padding:34px;border-radius:32px}
.account-profile{display:grid;gap:24px}
.account-profile-head{display:grid;grid-template-columns:92px minmax(0,1fr);gap:22px;align-items:center}
.account-profile h1,
.account-section h2,
.account-focus h2{margin:0;font-size:clamp(30px,5vw,46px);line-height:1.04;letter-spacing:-.04em}
.account-avatar{
  width:92px;
  height:92px;
  border-radius:28px;
  display:grid;
  place-items:center;
  overflow:hidden;
  border:1px solid rgba(111,231,255,0.18);
  background:linear-gradient(135deg, rgba(111,231,255,0.16), rgba(255,255,255,0.06));
  color:#fff;
  font-size:28px;
  font-weight:700;
  letter-spacing:.06em;
  box-shadow:0 16px 36px rgba(0,0,0,0.24);
}
.account-avatar img{width:100%;height:100%;object-fit:cover}
.account-avatar-large{width:112px;height:112px;border-radius:32px}
.account-stat-grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:10px}
.account-stat-grid article{min-width:0;min-height:108px;padding:16px 12px;border-radius:20px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px}
.account-stat-grid strong{font-size:28px;line-height:1;color:#fff}
.account-stat-grid span{min-height:2.9em;display:flex;align-items:flex-start;justify-content:center;max-width:7ch;color:var(--muted);font-size:12px;line-height:1.45;text-wrap:balance}
.account-profile-actions{display:flex;gap:12px;flex-wrap:wrap}
.account-profile-focus{display:grid;gap:18px;padding-top:8px;border-top:1px solid rgba(255,255,255,0.07)}
.account-profile-focus-copy{display:grid;gap:10px}
.account-overview-panel-focus .account-profile-focus-copy h2{font-size:clamp(22px,2.4vw,30px);line-height:1.12;letter-spacing:-.035em;max-width:15ch}
.account-overview-panel-focus #accountFocusText{max-width:46ch;font-size:15px;line-height:1.7}
.account-vod-access{display:grid;gap:14px}
.account-vod-state{display:grid;gap:14px}
.account-vod-state + .account-vod-state{padding-top:6px}
.account-vod-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}
.account-vod-head strong{display:block;font-size:22px;line-height:1.12;color:#fff}
.account-vod-head .muted{margin:8px 0 0}
.account-vod-player{width:100%;display:block;border-radius:20px;border:1px solid rgba(255,255,255,0.08);background:#010409;box-shadow:0 18px 40px rgba(0,0,0,0.24)}
.account-vod-meta{display:grid;grid-template-columns:repeat(auto-fit, minmax(180px, 1fr));gap:12px}
.account-vod-meta div{display:grid;gap:7px;padding:14px 15px;border-radius:16px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.05)}
.account-vod-meta span{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.account-vod-meta strong{font-size:15px;line-height:1.5;color:#dbe5f1}
.account-focus{background:linear-gradient(180deg, rgba(18,31,49,0.8), rgba(9,15,24,0.92));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow);display:grid;gap:18px}
.account-detail-list{display:grid;gap:14px}
.account-detail-list div{padding:16px 18px;border-radius:20px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);display:grid;gap:8px}
.account-detail-list span{color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.account-detail-list strong{font-size:16px;line-height:1.6;color:#dbe5f1}
.account-page.account-settings-open{overflow:hidden}
.account-settings-layer.hidden{display:none}
.account-settings-layer{position:fixed;inset:0;z-index:10070;display:grid;place-items:center;padding:94px 24px 24px;opacity:0;pointer-events:none;transition:opacity .28s ease}
.account-settings-layer.is-open{opacity:1;pointer-events:auto}
.account-settings-backdrop{position:absolute;inset:0;background:rgba(3,8,15,0.48);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
.account-settings-drawer{position:relative;width:min(760px, calc(100vw - 48px));max-height:calc(100vh - 128px);overflow:auto;padding:32px;border-radius:32px;background:linear-gradient(180deg, rgba(18,31,49,0.985), rgba(10,16,26,0.995));border:1px solid rgba(255,255,255,0.08);box-shadow:0 34px 80px rgba(0,0,0,0.42);display:grid;gap:18px;opacity:1;transform:translateY(26px) scale(.975);transition:transform .42s cubic-bezier(.22,.84,.24,1);overscroll-behavior:contain}
.account-settings-drawer{
  scrollbar-width:thin;
  scrollbar-color:rgba(111,231,255,0.18) rgba(255,255,255,0.03);
}
.account-settings-drawer::-webkit-scrollbar{width:10px;height:10px}
.account-settings-drawer::-webkit-scrollbar-track{background:rgba(255,255,255,0.03)}
.account-settings-drawer::-webkit-scrollbar-thumb{background:rgba(111,231,255,0.14);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.account-settings-drawer::-webkit-scrollbar-thumb:hover{background:rgba(111,231,255,0.24);background-clip:padding-box}
.account-console-sidebar::-webkit-scrollbar,
.account-view-section.is-active::-webkit-scrollbar{width:10px;height:10px}
.account-console-sidebar::-webkit-scrollbar-track,
.account-view-section.is-active::-webkit-scrollbar-track{background:rgba(255,255,255,0.03)}
.account-console-sidebar::-webkit-scrollbar-thumb,
.account-view-section.is-active::-webkit-scrollbar-thumb{background:rgba(111,231,255,0.14);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
.account-console-sidebar::-webkit-scrollbar-thumb:hover,
.account-view-section.is-active::-webkit-scrollbar-thumb:hover{background:rgba(111,231,255,0.24);background-clip:padding-box}
.account-settings-layer.is-open .account-settings-drawer{transform:translateY(0) scale(1)}
.account-settings-drawer-head{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.account-settings-drawer-head h2{font-size:clamp(28px,4vw,40px);max-width:12ch}
.account-settings-close{width:40px;height:40px;border:none;border-radius:14px;background:rgba(255,255,255,0.05);color:var(--muted);font-size:18px;cursor:pointer;transition:background .2s ease,color .2s ease;flex-shrink:0}
.account-settings-close:hover,.account-settings-close:focus{background:rgba(255,255,255,0.1);color:#fff}
.account-content{min-width:0}
.account-section{padding:32px;background:linear-gradient(180deg, rgba(17,29,46,0.62), rgba(10,17,28,0.78));border:1px solid rgba(255,255,255,0.08);box-shadow:none;display:grid;gap:20px}
.account-view-section#accountOverviewSection{padding:34px;grid-template-rows:minmax(0,1fr)}
.account-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.account-section-head .btn{flex-shrink:0}
.account-policy-note{margin:6px;padding:22px 22px;border-radius:22px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);display:grid;gap:10px}
.account-policy-note strong{font-size:16px;color:#fff}
.account-policy-note .muted{margin:0}
.account-policy-note-compact{padding:16px 18px;border-radius:20px}
.account-session-list{display:grid;gap:18px;padding:6px}
.account-session-card{padding:24px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.08);display:grid;gap:20px}
.account-session-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.account-session-head h3{margin:0 0 8px;font-size:24px;line-height:1.08}
.account-session-meta{margin:0;color:#dbe5f1;font-weight:600;line-height:1.6}
.account-session-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:14px}
.account-session-grid div{display:grid;gap:6px;padding:18px 18px;border-radius:20px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.05)}
.account-session-grid strong{font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--accent)}
.account-session-grid span{color:#dbe5f1;line-height:1.6}
.account-session-actions{display:flex;gap:12px;flex-wrap:wrap}
.account-session-note{margin:0;color:var(--muted);font-size:14px;line-height:1.7}
.account-history-overflow{display:grid;padding:6px;overflow:hidden;max-height:0;opacity:0;transform:translateY(-10px);transition:max-height .38s cubic-bezier(.2,.8,.2,1),opacity .28s ease,transform .38s ease}
.account-history-overflow.is-open{opacity:1;transform:translateY(0)}
.account-history-toggle{justify-self:flex-start;margin:6px}
.account-empty{margin:6px;padding:22px;border-radius:24px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.account-empty h3{margin:0 0 10px;font-size:24px;letter-spacing:-.03em}
.account-book-grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:18px;padding:6px}
.account-book-card{padding:24px;border-radius:24px;text-decoration:none;background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.08);display:grid;gap:12px;transition:transform .2s ease, border-color .2s ease, box-shadow .2s ease}
.account-book-card strong{font-size:20px;line-height:1.15;color:#fff}
.account-book-card span{color:var(--muted);line-height:1.7}
.account-book-card-button{width:100%;border:none;color:inherit;text-align:left;cursor:pointer;font:inherit}
.account-book-card:hover,
.account-book-card:focus{transform:translateY(-2px);border-color:rgba(111,231,255,0.2);box-shadow:0 18px 36px rgba(0,0,0,0.22)}
.account-settings-form{display:grid;grid-template-columns:1fr;gap:22px;align-items:start}
.account-photo-panel{padding:22px;border-radius:24px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06);display:grid;gap:18px;justify-items:flex-start}
.account-photo-actions{display:flex;gap:10px;flex-wrap:wrap}
.account-upload-trigger{cursor:pointer}
.account-security-panel{padding:22px;border-radius:24px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06);display:grid;gap:14px}
.account-security-panel h3{margin:0;font-size:24px;line-height:1.1;letter-spacing:-.03em}
.account-password-form{display:grid;gap:16px}
.account-settings-grid{display:grid;grid-template-columns:1fr;gap:16px}
.account-settings-grid .field{display:grid;gap:8px}
.account-settings-grid .field.full-width{grid-column:1 / -1}
.account-settings-form .booking-actions{grid-column:1 / -1;margin-top:4px}
.account-settings-grid label{display:block;font-size:13px;color:var(--muted)}
.account-settings-grid input,
.account-settings-grid select,
.account-settings-grid textarea{
  width:100%;
  border:1px solid rgba(255,255,255,0.09);
  background:rgba(255,255,255,0.03);
  color:var(--text);
  border-radius:18px;
  padding:15px 16px;
  outline:none;
  transition:border-color .2s ease, background .2s ease, box-shadow .2s ease;
}
.account-settings-grid input:focus,
.account-settings-grid select:focus,
.account-settings-grid textarea:focus{border-color:rgba(111,231,255,0.42);background:rgba(255,255,255,0.045);box-shadow:0 0 0 4px rgba(111,231,255,0.08)}
.account-settings-grid textarea{resize:vertical;min-height:160px}
.account-settings-grid select option{color:#051019}
.account-modal.hidden{display:none}
.account-modal{position:fixed;inset:0;z-index:10080;display:block}
.account-modal-overlay{position:absolute;inset:0;background:rgba(2,6,12,0.72);backdrop-filter:blur(10px)}
.account-modal-panel{position:relative;width:min(calc(100vw - 32px), 560px);margin:8vh auto 0;padding:30px;display:grid;gap:18px;background:linear-gradient(180deg, rgba(18,31,49,0.96), rgba(10,16,26,0.98));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow)}
.account-modal-panel h2{margin:0;font-size:clamp(30px,4vw,42px);line-height:1.06;letter-spacing:-.03em}
.account-modal-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border:none;border-radius:12px;background:rgba(255,255,255,0.04);color:var(--muted);font-size:18px;cursor:pointer;transition:background .2s ease,color .2s ease}
.account-modal-close:hover,.account-modal-close:focus{background:rgba(255,255,255,0.08);color:#fff}
.account-reschedule-form{display:grid;gap:18px}

@media(min-width:901px){
  .account-dashboard{grid-template-columns:380px minmax(0,1fr)}
  .account-shell{grid-template-columns:minmax(380px,.9fr) minmax(0,1.1fr)}
  .account-profile h1{font-size:clamp(26px,3vw,44px);white-space:nowrap}
}

@media(max-width:1180px){
  .contact-layout,
  .auth-shell,
  .booking-shell,
  .checkout-shell,
  .account-dashboard,
  .admin-dashboard{grid-template-columns:1fr}
  .account-overview-columns{grid-template-columns:minmax(0,1fr);grid-template-areas:'next' 'profile' 'focus' 'policy' 'vod'}
  .auth-copy{position:static;top:auto;min-height:auto}
  .auth-page-panel,
  .booking-copy,
  .booking-panel,
  .checkout-copy,
  .checkout-panel{min-height:auto;height:auto}
  .booking-summary,
  .checkout-summary,
  .account-overview-columns{grid-template-columns:1fr}
  .account-dashboard,
  .admin-dashboard{height:auto;min-height:0}
  .account-console-sidebar,
  .admin-sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,0.08);overflow:visible}
  .account-console-main,
  .admin-dashboard-main{grid-template-rows:auto auto;height:auto;overflow:visible}
  .account-view-section.is-active,
  .admin-view-section.is-active{min-height:0;height:auto;overflow:visible}
  .account-overview-columns{grid-template-areas:'next' 'profile' 'focus' 'policy' 'vod';height:auto}
  .account-overview-session-card,
  .account-main-view-head,
  .admin-main-view-head{flex-direction:column;align-items:flex-start}
  .account-overview-session-actions{grid-template-columns:1fr}
  .account-overview-session-actions .btn{white-space:normal}
  .admin-panel-head-search{align-items:flex-start;flex-direction:column}
  .admin-search-field{min-width:0;width:100%}
  .admin-stat-grid,
  .admin-spotlights,
  .admin-overview-strip,
  .admin-focus-grid,
  .admin-booking-grid{grid-template-columns:repeat(2, minmax(0, 1fr))}
  .admin-booking-body{grid-template-columns:1fr}
}

body.admin-page{
  background:#08111a;
  overflow:auto;
}
body.admin-page header{
  background:rgba(8,17,26,0.96);
  backdrop-filter:none;
  -webkit-backdrop-filter:none;
  box-shadow:none;
}
.admin-page .auth-header{
  padding:10px 14px;
  align-items:center;
}
.admin-page .auth-header-left{gap:12px}
.admin-page .auth-header .logo{margin:0}
.admin-page .auth-header .logo img{height:42px}
.admin-page .auth-top-nav{gap:10px}
.admin-page .auth-top-nav a,
.admin-page .auth-home-link{min-height:36px;padding:0 13px;border-radius:14px}
.admin-main{min-height:100svh;padding:72px 0 12px;position:relative;isolation:isolate;max-width:none;width:100%;height:auto}
.admin-main.container{max-width:none;padding-left:10px;padding-right:10px}
.admin-main::before{display:none}
.admin-shell{position:relative;z-index:1;display:grid;gap:10px;align-items:start;width:100%;min-height:calc(100svh - 90px)}
.admin-feedback{margin:0;padding:2px 10px 0;min-height:0;line-height:1.45;white-space:normal}
.admin-auth-view,
.admin-panel,
.admin-overview{padding:34px;border-radius:32px}
.admin-auth-view{display:grid;gap:24px;align-items:start;background:linear-gradient(180deg, rgba(18,31,49,0.84), rgba(8,13,22,0.96));border:1px solid rgba(255,255,255,0.08);box-shadow:var(--shadow)}
.admin-auth-copy{display:grid;gap:20px;align-content:start}
.admin-auth-copy h1{margin:0;font-size:clamp(38px,6vw,62px);line-height:1.01;letter-spacing:-.05em;max-width:12ch}
.admin-auth-view-compact{width:min(100%, 760px);margin:0 auto;gap:20px;padding:30px 30px 28px}
.admin-auth-copy-compact{gap:12px}
.admin-auth-copy-compact h1{font-size:clamp(30px,4vw,44px);max-width:none}
.admin-auth-copy-compact .muted{max-width:42ch}
.admin-auth-points{display:grid;gap:14px}
.admin-auth-points article,
.admin-auth-metrics article,
.admin-stat-card,
.admin-spotlight-card,
.admin-overview-note{padding:22px;border-radius:24px;background:linear-gradient(180deg, rgba(255,255,255,0.05), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.08)}
.admin-auth-points strong,
.admin-auth-metrics strong,
.admin-stat-card strong,
.admin-spotlight-card strong,
.admin-overview-note strong{display:block}
.admin-auth-panel{display:grid;gap:18px;align-content:start}
.admin-auth-panel-compact{gap:0}
.admin-token-card{padding:22px;border-radius:24px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);display:grid;gap:12px}
.admin-token-card label{font-size:13px;color:var(--muted)}
.admin-token-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px}
.admin-token-row input,
.admin-search-field input{width:100%;border:1px solid rgba(255,255,255,0.09);background:rgba(255,255,255,0.03);color:var(--text);border-radius:18px;padding:15px 16px;outline:none;transition:border-color .2s ease, background .2s ease, box-shadow .2s ease}
.admin-token-row input:focus,
.admin-search-field input:focus{border-color:rgba(111,231,255,0.42);background:rgba(255,255,255,0.045);box-shadow:0 0 0 4px rgba(111,231,255,0.08)}
.admin-auth-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-auth-metrics span,
.admin-stat-card span,
.admin-overview-note span,
.admin-card-label{display:block;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.admin-dashboard{display:grid;grid-template-columns:300px minmax(0,1fr);gap:0;align-items:stretch;background:#0a1420;border:1px solid rgba(255,255,255,0.09);border-radius:26px;box-shadow:none;overflow:hidden;min-height:calc(100svh - 120px);height:calc(100svh - 120px)}
.admin-sidebar{padding:28px 24px 30px;background:linear-gradient(180deg, rgba(12,21,34,0.92), rgba(9,15,24,0.98));border-right:1px solid rgba(255,255,255,0.08);display:grid;gap:20px;align-content:start;min-height:0;overflow:auto}
.admin-sidebar-brand{display:grid;gap:10px}
.admin-sidebar-brand h2{margin:0;font-size:38px;letter-spacing:-.05em;line-height:1.02;max-width:8ch}
.admin-sidebar-nav{display:grid;gap:8px}
.admin-sidebar-link{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:15px 16px;border-radius:16px;text-decoration:none;color:#dbe5f1;background:transparent;border:1px solid rgba(255,255,255,0.02);transition:background .18s ease,border-color .18s ease,color .18s ease}
.admin-sidebar-link:hover{border-color:rgba(255,255,255,0.08);color:#fff;background:rgba(255,255,255,0.03)}
.admin-sidebar-link span{font-size:14px;font-weight:600}
.admin-sidebar-link strong{min-width:34px;height:34px;padding:0 10px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.06);font-size:12px;letter-spacing:.08em}
.admin-sidebar-link.is-active{background:rgba(255,255,255,0.05);border-color:rgba(111,231,255,0.18);color:var(--text)}
.admin-sidebar-link.is-active strong{background:rgba(111,231,255,0.14);color:var(--accent)}
.admin-sidebar-group{display:grid;gap:12px;padding-top:18px;border-top:1px solid rgba(255,255,255,0.08)}
.admin-sidebar-label{margin:0;color:var(--muted);font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase}
.admin-sidebar-actions{display:grid;gap:10px}
.admin-sidebar-actions .btn{width:100%;justify-content:flex-start;border-radius:14px;min-height:48px}
.admin-sidebar-statuses{display:grid;gap:10px}
.admin-sidebar-statuses div{display:grid;gap:6px;padding:14px 14px 12px;border-radius:14px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06)}
.admin-sidebar-statuses small{color:var(--muted);line-height:1.55}
.admin-dashboard-main{display:grid;grid-template-rows:auto minmax(0,1fr);gap:18px;padding:24px 26px 24px;align-content:start;min-height:0;height:100%;overflow:hidden}
.admin-main-view-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;padding:0 2px 8px;border-bottom:1px solid rgba(255,255,255,0.08)}
.admin-main-view-head h2{margin:0;font-size:36px;letter-spacing:-.04em}
.admin-main-view-head p.muted{margin:0;max-width:48ch}
.admin-view-section{display:none !important;min-height:0}
.admin-view-section.is-active{display:grid !important;align-content:start;min-height:0;height:100%;overflow:auto;padding-right:4px;padding-bottom:18px;overscroll-behavior:contain;scrollbar-gutter:stable;-webkit-overflow-scrolling:touch}
.admin-overview{position:static;background:linear-gradient(180deg, rgba(17,29,46,0.62), rgba(10,17,28,0.78));border:1px solid rgba(255,255,255,0.08);box-shadow:none;display:grid;gap:20px}
.admin-overview-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}
.admin-overview-head h2,
.admin-panel-head h2{margin:0;font-size:30px;letter-spacing:-.03em}
.admin-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.admin-stat-card strong{margin-top:12px;font-size:42px;line-height:1;letter-spacing:-.05em}
.admin-spotlights{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-spotlight-body{display:grid;gap:10px}
.admin-spotlight-stack{display:grid;gap:8px}
.admin-spotlight-empty{display:grid;gap:10px}
.admin-overview-strip{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.admin-overview-note{display:grid;gap:10px}
.admin-workspace{display:grid;gap:20px}
.admin-panel{background:linear-gradient(180deg, rgba(18,31,49,0.62), rgba(9,15,24,0.82));border:1px solid rgba(255,255,255,0.08);box-shadow:none;display:grid;gap:18px}
.admin-workspace-section{align-content:start}
.admin-focus-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:14px}
.admin-focus-card{padding:22px;border-radius:18px;background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.08);display:grid;gap:14px}
.admin-compact-list{display:grid;gap:10px}
.admin-compact-item{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:14px 16px;border-radius:14px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06)}
.admin-compact-item strong{display:block;font-size:15px}
.admin-compact-item p{margin:4px 0 0}
.admin-compact-item-metric small{color:var(--muted);line-height:1.5;max-width:16ch;text-align:right}
.admin-tool-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.admin-tool-grid .btn{width:100%}
.admin-panel-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.admin-panel-head-search{align-items:end}
.admin-section-summary{margin:10px 0 0}
.admin-search-field{display:grid;gap:10px;min-width:min(320px, 100%);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--muted)}
.admin-filter-row{display:flex;flex-wrap:wrap;gap:10px}
.admin-filter-chip{min-height:40px;padding:0 16px;border-radius:999px;border:1px solid rgba(255,255,255,0.08);background:rgba(255,255,255,0.02);color:var(--muted);font:inherit;font-weight:700;letter-spacing:.03em;cursor:pointer;transition:background .18s ease,border-color .18s ease,color .18s ease,transform .18s ease}
.admin-filter-chip:hover{transform:translateY(-1px);color:var(--text)}
.admin-filter-chip.is-active{background:rgba(111,231,255,0.14);border-color:rgba(111,231,255,0.26);color:var(--accent)}
.admin-context-banner{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-radius:20px;background:rgba(111,231,255,0.08);border:1px solid rgba(111,231,255,0.18);color:#dff9ff}
.admin-list{display:grid;gap:16px}
.admin-overflow-wrap{display:grid;gap:16px;overflow:hidden;max-height:0;opacity:0;transition:max-height .28s ease, opacity .2s ease, margin-top .2s ease}
.admin-overflow-wrap.is-open{opacity:1;margin-top:16px}
.admin-overflow-toggle{justify-self:flex-start}
.admin-booking{padding:24px;border-radius:18px;background:linear-gradient(180deg, rgba(255,255,255,0.04), rgba(255,255,255,0.02));border:1px solid rgba(255,255,255,0.06);display:grid;gap:18px}
.admin-booking-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.admin-booking-head h3,
.admin-account-identity h3{margin:6px 0 8px;font-size:24px}
.admin-booking-meta{margin:0}
.admin-account-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}
.admin-account-identity{display:flex;align-items:center;gap:14px;min-width:0}
.admin-account-avatar{width:64px;height:64px;border-radius:20px;background:rgba(255,255,255,0.06);border:1px solid rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:center;overflow:hidden;flex-shrink:0;font-size:22px;font-weight:700;color:var(--accent)}
.admin-account-avatar img{display:block;width:100%;height:100%;object-fit:cover}
.admin-account-body{grid-template-columns:1fr}
.admin-account-editor{display:grid;gap:12px;padding:18px;border-radius:16px;background:rgba(255,255,255,0.025);border:1px solid rgba(255,255,255,0.06)}
.admin-account-editor label{display:block;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.admin-account-editor textarea{width:100%;min-height:120px;border:1px solid rgba(255,255,255,0.09);background:rgba(255,255,255,0.03);color:var(--text);border-radius:16px;padding:14px 15px;outline:none;resize:vertical;transition:border-color .2s ease, background .2s ease, box-shadow .2s ease}
.admin-account-editor textarea:focus{border-color:rgba(111,231,255,0.42);background:rgba(255,255,255,0.045);box-shadow:0 0 0 4px rgba(111,231,255,0.08)}
.admin-account-editor-note{margin:0}
.admin-status{display:inline-flex;align-items:center;justify-content:center;min-height:36px;padding:0 12px;border-radius:999px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;border:1px solid rgba(255,255,255,0.08)}
.admin-status-confirmed{background:rgba(111,231,255,0.12);color:var(--accent)}
.admin-status-pending_review{background:rgba(255,209,102,0.1);color:#ffe08a}
.admin-status-pending_payment{background:rgba(255,255,255,0.06);color:#dbe5f1}
.admin-status-quote_requested{background:rgba(255,209,102,0.14);color:#ffd166}
.admin-status-completed{background:rgba(86,207,152,0.14);color:#56cf98}
.admin-status-canceled,
.admin-status-expired{background:rgba(255,107,107,0.14);color:#ff8f8f}
.admin-booking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.admin-booking-grid div,
.admin-booking-body div{display:grid;gap:6px}
.admin-booking-grid strong,
.admin-booking-body strong{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--accent)}
.admin-booking-grid span,
.admin-booking-body span{color:#dbe5f1;line-height:1.6}
.admin-booking-body{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.admin-booking-actions{display:flex;gap:10px;flex-wrap:wrap}
.admin-empty{padding:22px;border-radius:16px;background:rgba(255,255,255,0.03);border:1px solid rgba(255,255,255,0.06);color:var(--muted)}

body.admin-page,
.admin-sidebar,
.admin-view-section.is-active{
  scrollbar-width:thin;
  scrollbar-color:rgba(111,231,255,0.18) rgba(255,255,255,0.03);
}
body.admin-page::-webkit-scrollbar,
.admin-sidebar::-webkit-scrollbar,
.admin-view-section.is-active::-webkit-scrollbar{width:10px;height:10px}
body.admin-page::-webkit-scrollbar-track,
.admin-sidebar::-webkit-scrollbar-track,
.admin-view-section.is-active::-webkit-scrollbar-track{background:rgba(255,255,255,0.03)}
body.admin-page::-webkit-scrollbar-thumb,
.admin-sidebar::-webkit-scrollbar-thumb,
.admin-view-section.is-active::-webkit-scrollbar-thumb{background:rgba(111,231,255,0.14);border-radius:999px;border:2px solid transparent;background-clip:padding-box}
body.admin-page::-webkit-scrollbar-thumb:hover,
.admin-sidebar::-webkit-scrollbar-thumb:hover,
.admin-view-section.is-active::-webkit-scrollbar-thumb:hover{background:rgba(111,231,255,0.24);background-clip:padding-box}
.auth-page-panel h1{margin:0 0 10px;font-size:clamp(34px,6vw,56px);line-height:1.02;letter-spacing:-.03em}
.auth-panel-kicker{margin:0 0 16px;color:var(--accent);font-size:12px;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.auth-page-tabs{margin-top:0;margin-bottom:18px}
.auth-form{width:100%;max-width:640px;margin-top:0;text-align:left}
.form-actions{display:flex;gap:12px;justify-content:flex-start;margin-top:12px}
.auth-form-actions .btn{flex:1}

.service-card h3,
.results-grid strong,
.process-step h3,
.footer-brand,
.footer-title,
.auth-copy h1,
.auth-page-panel h1,
.auth-home-link,
.contact-details a,
.test p,
.cta-panel h2{overflow-wrap:anywhere}

#backToTopBtn{
  position:fixed;
  right:28px;
  bottom:28px;
  width:56px;
  height:56px;
  border:none;
  border-radius:18px;
  background:linear-gradient(180deg, #72f3ff 0%, #38d2f2 100%);
  color:#0b1b2b;
  display:flex;
  align-items:center;
  justify-content:center;
  box-shadow:0 18px 42px rgba(19,185,218,0.28), inset 0 1px 0 rgba(255,255,255,0.3);
  opacity:0;
  transform:translateY(12px);
  transition:opacity .28s cubic-bezier(.2,.9,.2,1), transform .28s ease, box-shadow .28s ease;
  z-index:10090;
  cursor:pointer;
}
#backToTopBtn svg{
  width:20px;
  height:20px;
  display:block;
}
#backToTopBtn path{
  fill:none;
  stroke:currentColor;
  stroke-width:2.5;
  stroke-linecap:round;
  stroke-linejoin:round;
}
#backToTopBtn.show{opacity:1;transform:translateY(0)}
#backToTopBtn:hover{transform:translateY(-4px);box-shadow:0 24px 48px rgba(19,185,218,0.34), inset 0 1px 0 rgba(255,255,255,0.34)}
#backToTopBtn:focus-visible{outline:2px solid rgba(114,243,255,0.75);outline-offset:3px}

@media(max-width:900px){
  .site-notice{max-width:calc(100vw - 24px);text-align:center}
  body.auth-page{overflow:auto}
  html{scroll-padding-top:82px}
  header{
    display:grid;
    grid-template-columns:1fr auto 1fr;
    align-items:center;
    padding:14px 16px;
    min-height:72px;
    background:rgba(5,8,13,0.88);
    backdrop-filter:blur(14px);
    -webkit-backdrop-filter:blur(14px);
  }
  header .logo{position:static;grid-column:2;justify-self:center;z-index:105;margin:0;transform:none}
  header .logo img{height:42px;width:auto;max-width:none}
  .auth-header{padding:14px 18px;justify-content:flex-start;gap:14px;flex-wrap:wrap;align-items:flex-start}
  .auth-header .logo{position:static;transform:none;z-index:auto}
  .auth-header-left{gap:14px;flex:1 1 100%;min-width:0}
  .auth-top-nav{display:none}
  .auth-home-link{margin-left:0;padding:0 14px;font-size:14px}
  .menu-toggle{
    display:grid;
    place-items:center;
    position:static;
    grid-column:3;
    justify-self:end;
    z-index:130;
    width:46px;
    height:46px;
    padding:0;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:16px;
    background:rgba(255,255,255,0.04);
    font-size:28px;
    line-height:1;
    transition:background .22s ease, border-color .22s ease, transform .22s ease;
  }
  .menu-toggle:hover,
  .menu-toggle:focus-visible{background:rgba(255,255,255,0.08);border-color:rgba(111,231,255,0.24)}
  .menu-toggle[aria-expanded="true"]{transform:rotate(90deg);border-color:rgba(111,231,255,0.3);background:rgba(111,231,255,0.08)}
  .mobile-nav-backdrop{
    display:block;
    position:fixed;
    inset:0;
    background:rgba(2,6,12,0.58);
    backdrop-filter:blur(6px);
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    transition:opacity .28s ease, visibility .28s ease;
    z-index:109;
  }
  .mobile-nav-backdrop.active{opacity:1;visibility:visible;pointer-events:auto}
  ul.nav-menu{
    position:absolute;
    top:calc(100% + 8px);
    left:50%;
    right:auto;
    width:calc(100% - 32px);
    display:flex;
    flex-direction:column;
    gap:4px;
    background:rgba(5,8,13,0.97);
    backdrop-filter:blur(16px);
    max-height:0;
    overflow:hidden;
    opacity:0;
    visibility:hidden;
    pointer-events:none;
    border:1px solid rgba(255,255,255,0.08);
    border-radius:22px;
    box-shadow:0 24px 60px rgba(0,0,0,0.35);
    transform:translate(-50%,-12px) scale(.98);
    transform-origin:top center;
    z-index:120;
    transition:max-height .36s cubic-bezier(.2,.9,.2,1), opacity .25s ease, visibility .25s ease, padding .25s ease, transform .28s cubic-bezier(.2,.9,.2,1);
  }
  ul.nav-menu.active{max-height:520px;opacity:1;visibility:visible;pointer-events:auto;padding:10px;transform:translate(-50%,0) scale(1)}
  ul.nav-menu li{margin:0;text-align:left}
  ul.nav-menu li a{display:block;padding:14px 18px;width:100%;border-radius:16px}
  ul.nav-menu li a::after{display:none}
  ul.nav-menu li.nav-auth a{justify-content:flex-start}
  ul.nav-menu li.nav-auth.has-menu{margin:0}
  ul.nav-menu li.nav-auth.has-menu::after{display:none}
  .nav-account-trigger{padding:14px 18px;min-width:0}
  .nav-account-menu{
    display:grid;
    top:calc(100% + 10px);
    left:50%;
    min-width:196px;
  }

  .hero .container{padding-top:128px;padding-bottom:78px}
  .hero h1{width:fit-content;max-width:none;font-size:clamp(36px,8vw,60px);white-space:nowrap}
  .hero p{font-size:17px;max-width:640px}
  .hero-meta{grid-template-columns:1fr}
  .hero-stats article{padding:20px}
  .hero-stats,
  .service-grid,
  .service-card-vod-featured,
  .results-grid,
  .profile-proof-grid,
  .process-grid,
  .testimonial-grid,
  .contact-details,
  .contact-layout,
  .footer-grid,
  .split,
  .auth-shell,
  .booking-shell,
  .checkout-shell,
  .account-shell,
  .admin-shell,
  .booking-form,
  .booking-summary,
  .booking-form-grid,
  .checkout-form,
  .checkout-summary,
  .checkout-form-grid,
  .vods-editorial-grid,
  .vod-grid,
  .vod-card,
  .account-session-grid,
  .account-book-grid,
  .account-settings-form,
  .account-settings-grid,
  .account-stat-grid{grid-template-columns:1fr}
  .service-card.featured{transform:none}
  .footer-bottom,
  .site-footer-minimal .footer-bottom{flex-direction:column}
  .auth-main{height:auto;min-height:100svh;padding-top:132px;padding-bottom:48px;display:block}
  .auth-copy,
  .auth-page-panel,
  .booking-copy,
  .booking-panel,
  .checkout-copy,
  .checkout-panel,
  .account-profile,
  .account-section,
  .account-focus,
  .account-settings-drawer,
  .admin-copy,
  .admin-panel{padding:28px}
  .booking-header{padding:14px 18px;justify-content:flex-start;gap:14px;flex-wrap:wrap;align-items:flex-start}
  .booking-main{padding-top:132px;padding-bottom:48px}
  .checkout-main{padding-top:132px;padding-bottom:48px}
  .account-main{padding:88px 20px 14px;height:auto;min-height:100svh}
  .account-dashboard{grid-template-columns:1fr;height:auto;min-height:0}
  .account-console-sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,0.08);overflow:visible}
  .account-console-main{grid-template-rows:auto auto;padding:24px;height:auto;overflow:visible}
  .account-main-view-head{flex-direction:column;align-items:flex-start}
  .account-console-meta{grid-template-columns:1fr}
  .account-console-meta div:last-child{grid-column:auto}
  .account-overview-columns{grid-template-columns:minmax(0,1fr);grid-template-areas:'next' 'focus' 'profile' 'policy' 'vod';height:auto}
  .account-overview-grid,
  .account-overview-session-meta,
  .account-console-actions{grid-template-columns:1fr}
  .account-overview-session-actions .btn{width:100%;justify-content:center}
  body.admin-page{overflow:auto}
  .admin-main{padding-top:88px;padding-bottom:14px;height:auto;min-height:100svh}
  .admin-main.container{padding-left:12px;padding-right:12px}
  .account-sidebar{position:static}
  .account-settings-layer{padding:86px 18px 18px}
  .account-settings-drawer{width:min(720px, calc(100vw - 36px));max-height:calc(100vh - 112px);padding:28px}
  .admin-auth-view,
  .admin-dashboard{grid-template-columns:1fr}
  .admin-auth-view-compact{width:100%;padding:24px}
  .admin-sidebar{border-right:none;border-bottom:1px solid rgba(255,255,255,0.08)}
  .admin-dashboard{height:auto;min-height:0}
  .admin-sidebar{overflow:visible}
  .admin-dashboard-main{grid-template-rows:auto auto;padding:24px;height:auto;overflow:visible}
  .admin-main-view-head{flex-direction:column;align-items:flex-start}
  .admin-auth-panel{grid-template-columns:1fr}
  .admin-auth-copy h1{max-width:none}
  .admin-overview{position:static}
  .admin-auth-metrics,
  .admin-stat-grid,
  .admin-spotlights,
  .admin-overview-strip,
  .admin-focus-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .admin-panel-head-search{align-items:flex-start;flex-direction:column}
  .admin-search-field{min-width:0;width:100%}
}

@media(max-width:640px){
  html{scroll-padding-top:76px}
  .container,
  .services.container,
  .about.container,
  .process.container,
  .testimonials.container,
  .contact.container,
  .final-cta.container,
  .site-footer .container{padding-left:20px;padding-right:20px}
  .section-heading{margin-bottom:28px}
  .section-heading h2,
  .about h2,
  .contact h2,
  .final-cta h2,
  .results-card h2{font-size:clamp(28px,9vw,38px);line-height:1.08;overflow-wrap:anywhere}
  .section-heading p,
  .about-copy p,
  .contact-copy p,
  .results-grid p,
  .process-step p,
  .test p,
  .cta-panel .muted{font-size:15px;line-height:1.75}
  .hero-actions,
  .form-actions,
  .cta-actions{flex-direction:column}
  .hero-actions .btn,
  .form-actions .btn,
  .cta-actions .btn{width:100%}
  .btn{min-height:50px;padding:0 18px}
  .services,
  .about,
  .testimonials,
  .contact,
  .process,
  .faq,
  .final-cta{padding:68px 0}
  .hero .container{padding-top:112px;padding-bottom:64px}
  .eyebrow{max-width:28ch;justify-content:center;margin-left:auto;margin-right:auto;line-height:1.55}
  .hero h1{width:fit-content;max-width:none;font-size:clamp(28px,8.6vw,42px);line-height:1;letter-spacing:-.04em;white-space:nowrap}
  .hero p{max-width:33ch;font-size:15px;line-height:1.7}
  .hero-actions{width:min(100%,360px);margin:26px auto 0}
  .hero-meta{grid-template-columns:1fr;gap:10px;width:min(100%,420px);margin:24px auto 0}
  .hero-stats{width:min(100%,420px);margin-top:28px;gap:12px}
  .hero-stats strong{font-size:22px}
  .hero-stats span{font-size:13px}
  .service-grid,
  .results-grid,
  .profile-proof-grid,
  .process-grid,
  .testimonial-grid,
  .contact-layout,
  .footer-grid,
  .auth-shell,
  .booking-shell,
  .checkout-shell,
  .account-shell,
  .admin-shell{gap:18px}
  .split{gap:18px}
  .results-card,
  .auth-copy,
  .auth-page-panel,
  .booking-copy,
  .booking-panel,
  .checkout-copy,
  .checkout-panel,
  .account-profile,
  .account-section,
  .account-focus,
  .admin-copy,
  .admin-panel,
  .contact-details,
  .contact-form,
  .about-panel,
  .profile-proof-panel,
  .service-card,
  .test,
  .results-grid article,
  .profile-proof-grid article,
  .process-step,
  .faq-item{padding:24px}
  .cta-panel{padding:30px 24px}
  .results-band{padding:30px 20px 0}
  .contact-details{margin-top:18px}
  .contact-form{gap:12px}
  .process-step span{margin-bottom:16px}
  .test cite{margin-top:14px}
  .service-card-vod-actions{
    align-items:stretch;
    flex-direction:column;
  }
  .service-card-vod-actions .service-card-note{max-width:none}
  .service-card-vod-actions .service-book-link{width:100%}
  .about{padding:56px 0}
  .final-cta{padding-top:56px;padding-bottom:88px}
  .cta-panel h2{max-width:11ch;margin:0 auto 14px;font-size:clamp(24px,8vw,32px);line-height:1.08}
  .cta-panel .muted{max-width:31ch;margin-top:0}
  .cta-actions{gap:12px;margin-top:20px}
  .site-footer{padding-top:44px}
  .service-card h3,
  .process-step h3{font-size:20px}
  .test p{font-size:16px}
  .contact-details a{font-size:16px;white-space:nowrap;overflow-wrap:normal;word-break:normal}
  .contact-form textarea{min-height:140px}
  .legal-shell,
  .legal-section{padding:24px}
  .faq-item summary{font-size:17px}
  .partner-strip-panel{padding:18px 20px}
  .partner-marquee{--partner-logo-height:64px;--partner-gap:34px}
  .partner-logo-frame-signal{width:220px}
  .partner-logo-frame-100tatov{width:112px}
  .footer-grid{gap:18px;padding-bottom:22px}
  .footer-bottom{align-items:flex-start;padding-top:18px}
  .footer-links-inline{justify-content:flex-start}
  .footer-signoff,
  .footer-note{text-align:left}
  #backToTopBtn{right:16px;bottom:16px;width:52px;height:52px;border-radius:16px}
  .hero-chip{width:100%;justify-content:center}
  .profile-proof{padding:56px 0 68px}
  .profile-proof-links{flex-direction:column}
  .profile-proof-link{width:100%}
  .auth-main{padding:112px 20px 72px}
  .booking-main{padding:112px 20px 72px}
  .account-main{padding:88px 20px 20px}
  .auth-copy h1{font-size:clamp(30px,10vw,42px)}
  .booking-copy h1{font-size:clamp(30px,10vw,42px)}
  .account-dashboard{gap:0;height:auto;min-height:0}
  .account-console-sidebar{padding:24px;overflow:visible}
  .account-console-main{grid-template-rows:auto auto;padding:20px;height:auto;overflow:visible}
  .account-profile h1,
  .account-section h2,
  .account-focus h2{font-size:clamp(28px,9vw,38px);line-height:1.08}
  .account-main-view-head h2{font-size:clamp(28px,9vw,36px)}
  body.admin-page{overflow:auto}
  .admin-main.container{padding-left:10px;padding-right:10px}
  .admin-page .auth-header{padding:10px 12px;gap:10px}
  .admin-page .auth-header-left{gap:10px}
  .admin-feedback{padding-left:4px;padding-right:4px}
  .admin-auth-view,
  .admin-sidebar,
  .admin-overview,
  .admin-panel{padding:24px}
  .admin-auth-view-compact{padding:22px}
  .admin-auth-copy h1{font-size:clamp(30px,10vw,44px)}
  .admin-dashboard{gap:0}
  .admin-dashboard{height:auto;min-height:0}
  .admin-sidebar{overflow:visible}
  .admin-dashboard-main{grid-template-rows:auto auto;padding:20px;height:auto;overflow:visible}
  .admin-sidebar-brand h2,
  .admin-main-view-head h2{font-size:clamp(28px,9vw,36px)}
  .admin-main-view-head{flex-direction:column;align-items:flex-start}
  .admin-auth-metrics,
  .admin-stat-grid,
  .admin-spotlights,
  .admin-overview-strip,
  .admin-focus-grid,
  .admin-tool-grid{grid-template-columns:1fr}
  .admin-context-banner,
  .admin-booking-actions,
  .admin-account-head{flex-direction:column;align-items:flex-start}
  .admin-compact-item,
  .admin-sidebar-link{align-items:flex-start}
  .admin-sidebar-link strong,
  .admin-compact-item-metric small{min-width:0;text-align:left}
  .admin-context-banner .btn{width:100%}
  .admin-search-field{min-width:0;width:100%}
  .account-console-link{align-items:flex-start}
  .account-console-link strong{min-width:0;text-align:left}
  .account-console-actions .btn{width:100%;justify-content:center}
  .account-overview-panel,
  .account-console-meta div{padding:20px}
  .account-overview-session-card,
  .account-main-view-head{flex-direction:column;align-items:flex-start}
  .account-settings-drawer-head{flex-direction:column;align-items:flex-start}
  .account-settings-close{position:absolute;top:0;right:0}
  .account-settings-layer{display:grid;grid-template-columns:minmax(0,1fr) auto;place-items:stretch;padding:0}
  .account-settings-backdrop{grid-column:1 / -1;grid-row:1}
  .account-settings-drawer{grid-column:2;grid-row:1;width:min(100vw, 100%);height:100vh;max-height:100vh;padding:84px 20px 20px;border-radius:0;border-left:1px solid rgba(255,255,255,0.08);transform:translateX(100%);box-shadow:-22px 0 70px rgba(0,0,0,0.42)}
  .account-settings-layer.is-open .account-settings-drawer{transform:translateX(0) scale(1)}
  .auth-copy{position:static;min-height:auto}
  .auth-page-panel{min-height:auto}
  .auth-form-grid{grid-template-columns:1fr}
  .auth-benefits{margin-top:22px;gap:12px}
  .booking-benefits{gap:12px}
  .auth-benefits article{padding:18px}
  .booking-benefits article,
  .checkout-benefits article,
  .account-session-card,
  .account-book-card,
  .account-empty,
  .booking-summary li,
  .checkout-summary li,
  .booking-service-card,
  .checkout-session,
  .checkout-payment-card,
  .checkout-success,
  .checkout-empty{padding:18px}
  .booking-form-section{padding:18px}
  .checkout-form-section{padding:18px}
  .admin-token-card,
  .admin-booking,
  .admin-empty{padding:18px}
  .account-profile-head{grid-template-columns:1fr;justify-items:flex-start}
  .account-section-head,
  .account-session-head{flex-direction:column;align-items:flex-start}
  .booking-form-section-head{flex-direction:column;align-items:flex-start;gap:6px}
  .checkout-form-section-head{flex-direction:column;align-items:flex-start;gap:6px}
  .admin-panel-head,
  .admin-token-row,
  .admin-booking-head,
  .admin-booking-grid,
  .admin-booking-body{grid-template-columns:1fr}
  .booking-day-picker{grid-template-columns:52px minmax(0, 1fr) 52px;gap:10px;padding:8px;min-height:80px}
  .booking-day-nav{width:52px;height:52px;border-radius:16px}
  .booking-day-number{font-size:30px}
  .booking-time-select{min-height:80px;font-size:17px}
  .auth-home-link{min-height:40px;padding:0 12px;font-size:13px;max-width:100%}
  .service-card-meta,
  .booking-actions,
  .account-profile-actions,
  .account-photo-actions,
  .account-session-actions{flex-direction:column;align-items:stretch}
  .service-book-link,
  .booking-actions .btn,
  .account-profile-actions .btn,
  .account-photo-actions .btn,
  .account-upload-trigger{width:100%}
  .account-settings-form .booking-actions{grid-column:auto}
  .service-price,
  .booking-service-price{font-size:24px}
  .service-card-note{max-width:none}
  .auth-tabs .tab{padding:10px 14px;font-size:14px}
  .auth-form-actions{margin-top:16px}
}

@media(max-width:420px){
  header{padding:12px 16px;min-height:68px}
  header .logo img{height:38px;width:auto;max-width:none}
  .auth-header{padding:12px 16px;gap:10px}
  .auth-header-left{gap:10px}
  .auth-home-link{width:100%;justify-content:center;padding:0 10px;font-size:12px}
  .menu-toggle{width:42px;height:42px;border-radius:14px;font-size:24px}
  .container,
  .services.container,
  .about.container,
  .process.container,
  .testimonials.container,
  .contact.container,
  .final-cta.container,
  .site-footer .container{padding-left:16px;padding-right:16px}
  ul.nav-menu{width:calc(100% - 24px)}
  .hero .container{padding-top:98px;padding-bottom:54px}
  .hero-intro{width:100%}
  .hero-intro::after{top:54px;height:154px;width:calc(100% - 24px)}
  .hero h1{font-size:clamp(24px,8.8vw,34px);white-space:nowrap}
  .hero p{max-width:30ch}
  .hero-meta{width:100%;margin-top:22px}
  .hero-chip{padding:13px 14px}
  .contact-details,
  .contact-form,
  .results-card,
  .auth-page-panel,
  .about-panel,
  .service-card,
  .test,
  .results-grid article,
  .process-step{padding:20px}
  .cta-panel{padding:24px 18px}
  .results-band{padding:24px 16px 0}
  .final-cta{padding-top:52px;padding-bottom:76px}
  .cta-panel h2{font-size:clamp(22px,8vw,28px);max-width:10ch}
  .cta-panel .muted{font-size:14px}
  .site-footer{padding-top:40px}
  .auth-main{padding:104px 14px 64px}
  .booking-main{padding:104px 14px 64px}
  .vods-main{padding:104px 14px 64px}
  .account-main{padding:84px 14px 20px}
  .auth-tabs{gap:6px;padding:5px}
  .auth-tabs .tab{padding:10px 12px;font-size:13px}
}

@media(max-width:480px){
  .services,
  .about,
  .testimonials,
  .contact,
  .process,
  .final-cta{padding-top:60px;padding-bottom:76px}
  .about{padding-top:48px;padding-bottom:48px}
  .section-heading{margin-bottom:22px}
  .section-kicker,
  .eyebrow,
  .auth-panel-kicker{margin-bottom:12px}
  .services .section-heading h2,
  .results-card h2,
  .about h2,
  .process .section-heading h2,
  .testimonials .section-heading h2,
  .contact .section-heading h2,
  .final-cta h2{
    font-size:clamp(24px,7.4vw,30px);
    line-height:1.16;
    letter-spacing:-.015em;
    margin-bottom:14px;
  }
  .services .section-heading,
  .process .section-heading,
  .testimonials .section-heading,
  .contact .section-heading,
  .results-card,
  .about-copy{max-width:100%}
  .service-grid,
  .results-grid,
  .process-grid,
  .testimonial-grid,
  .contact-layout,
  .footer-grid,
  .vod-grid,
  .vods-editorial-grid{gap:14px}
  .results-grid{margin-top:22px}
  .results-card,
  .service-card,
  .service-card-vod-featured,
  .results-grid article,
  .about-panel,
  .process-step,
  .test,
  .contact-details,
  .contact-form,
  .vod-card,
  .vods-editorial-card{padding:22px}
  .about-copy p + p{margin-top:14px}
  .cta-panel{padding:26px 20px}
  .partner-strip-panel{padding:18px}
  .partner-strip-kicker{margin-bottom:14px}
  .partner-marquee{--partner-logo-height:56px;--partner-gap:24px}
  .partner-logo-frame-signal{width:180px}
  .partner-logo-frame-100tatov{width:96px}
  .cta-panel h2{max-width:12ch}
  .cta-panel .muted{max-width:30ch}
  .site-footer{padding-top:36px}
  .legal-shell{padding:20px}
  .legal-section{padding:20px}
  .account-main{padding:84px 12px 18px}
  .account-dashboard{border-radius:20px}
  .account-console-sidebar{padding:20px 16px}
  .account-console-main{padding:18px}
  .account-main-view-head{padding:0 0 10px}
  .account-view-section#accountOverviewSection{padding:0;background:transparent;border:none;box-shadow:none;gap:14px}
  .account-overview-columns{gap:14px}
  .account-overview-panel,
  .account-overview-panel-policy,
  .account-overview-panel-focus{padding:18px;gap:14px;border-radius:20px}
  .account-overview-panel{background:linear-gradient(180deg, rgba(24,36,53,0.86), rgba(11,18,29,0.96))}
  .account-overview-panel-next,
  .account-overview-panel-profile,
  .account-overview-panel-focus,
  .account-overview-panel-policy{align-self:start}
  .account-overview-panel-focus .account-profile-focus-copy h2{font-size:clamp(24px,8vw,32px);line-height:1.08;max-width:none;text-wrap:balance}
  .account-overview-panel-focus .account-profile-focus-copy{gap:12px}
  .account-overview-panel-focus #accountFocusText{max-width:none;font-size:15px;line-height:1.65}
  .account-overview-panel-policy .account-policy-note{margin:0;padding:0;background:transparent;border:none;border-radius:0;gap:10px}
  .account-overview-panel-policy .account-policy-note strong{font-size:15px;line-height:1.3;max-width:none}
  .account-overview-panel-policy .account-policy-note .muted{font-size:15px;line-height:1.65}
  .account-page #backToTopBtn{display:none}
}

@media(min-width:1400px){
  header{padding-left:220px;padding-right:220px}
  header.small-header{padding-left:180px;padding-right:180px}
  .auth-header{padding-left:220px;padding-right:220px}
}