/* WordPress-only overlay. Do not flatten theme image heights. */

[hidden],
.fs-drawer[hidden],
.fs-drawer-bg[hidden],
[data-faq-panel][hidden],
[data-price-panel][hidden],
[data-service-detail][hidden],
[data-start-panel][hidden],
[data-packs-for][hidden] {
  display: none !important;
}

.fs-drawer:not(.on) {
  display: none !important;
  pointer-events: none !important;
}
.fs-drawer-bg:not(.on) {
  display: none !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
.fs-drawer.on {
  display: flex !important;
}

img {
  max-width: 100%;
}

.fs-hero-visual,
.fs-hero img {
  height: 520px;
  object-fit: cover;
}
.fs-feature img {
  height: 460px;
  object-fit: cover;
}
.fs-services img,
.fs-work-grid img {
  height: 240px;
  object-fit: cover;
}
.studio-grid img {
  height: 220px;
  object-fit: cover;
}
.fs-cat-picks img {
  width: 100%;
  aspect-ratio: 1 / 1;
  height: auto;
  object-fit: cover;
}
.fs-service-detail img {
  height: 220px;
  object-fit: cover;
}
.profile-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.account-ico img {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  object-fit: cover;
  display: block;
}

.fs-feature h1 {
  white-space: pre-line;
}

.account-page .fs-actions form {
  margin: 0;
}
.msgr-bubble {
  white-space: pre-line;
}
.contact-chat .msgr-bubble img,
.contact-chat .msgr-bubble video {
  height: auto !important;
  max-height: 240px;
  width: auto;
  max-width: 100%;
  display: block;
  margin: 0 0 6px;
}

.account-page .profile-card .fs-actions {
  width: 100%;
}

.admin-bar .nav {
  top: 32px;
  z-index: 90;
}

.admin-bar .fs-drawer,
.admin-bar .fs-drawer-bg {
  top: 32px;
  height: calc(100vh - 32px);
  height: calc(100dvh - 32px);
}

.auth-page {
  padding: 48px 16px 72px;
}
.auth-card {
  width: min(420px, 100%);
  margin: 0 auto;
}

@media (max-width: 900px) {
  .fs-hero-visual,
  .fs-hero img,
  .fs-feature img {
    height: 240px;
    border-radius: 20px;
  }
  .fs-cat-picks img {
    height: 88px;
    aspect-ratio: auto;
  }
  .fs-service-detail img {
    height: 180px;
  }
  .studio-grid img {
    height: 200px;
  }
  .nav {
    height: 68px !important;
    padding: 0 !important;
  }
  .nav-inner {
    height: 68px;
    align-items: center !important;
  }
  .nav .menu-btn {
    display: grid !important;
    place-items: center;
    width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    padding: 0 !important;
    margin: 0 !important;
    line-height: 0 !important;
    align-self: center;
    appearance: none;
    -webkit-appearance: none;
    box-sizing: border-box;
  }
  .fs-drawer-x {
    display: none !important;
  }
}

@media screen and (max-width: 782px) {
  .admin-bar .nav {
    top: 46px;
  }
  .admin-bar .fs-drawer,
  .admin-bar .fs-drawer-bg {
    top: 46px;
    height: calc(100vh - 46px);
    height: calc(100dvh - 46px);
  }
}

@media (max-width: 640px) {
  .fs-cat-picks img {
    aspect-ratio: 16 / 10;
    height: auto;
  }
}
