/* Ava Music v7.67 — final responsive containment and PWA/mobile-menu polish. */

html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden !important;
}
body.ava-responsive-stability-v767 {
  position: relative;
  width: 100%;
  max-width: 100%;
  min-width: 0;
  overflow-x: hidden !important;
}
body.ava-responsive-stability-v767,
body.ava-responsive-stability-v767 #ava-site-main,
body.ava-responsive-stability-v767 .ava-n-site-main,
body.ava-responsive-stability-v767 .ava-n-shell {
  box-sizing: border-box;
  min-width: 0;
}
body.ava-responsive-stability-v767 #ava-site-main,
body.ava-responsive-stability-v767 .ava-n-site-main {
  width: 100%;
  max-width: 100%;
  overflow-x: clip;
}
@supports not (overflow: clip) {
  body.ava-responsive-stability-v767 #ava-site-main,
  body.ava-responsive-stability-v767 .ava-n-site-main {
    overflow-x: hidden;
  }
}

/* Keep the hidden drawer inside the viewport. The former off-canvas translate
   created a wide RTL document on some Android/Chrome combinations. */
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .ava-n-mobile,
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .mobmenu.ava-n-mobile {
  inset: 0 0 0 auto !important;
  right: 0 !important;
  left: auto !important;
  width: min(86vw, 360px) !important;
  max-width: calc(100% - 38px) !important;
  min-width: 0 !important;
  transform: translateZ(0) scale(.985) !important;
  transform-origin: right center !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  contain: layout paint style;
}
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .ava-n-mobile.is-open,
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .mobmenu.ava-n-mobile.is-open {
  transform: translateZ(0) scale(1) !important;
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .ava-n-mobile-overlay,
body.ava-responsive-stability-v767.ava-mobile-shell-v763 .darklayer.ava-n-mobile-overlay {
  inset: 0 !important;
  width: 100% !important;
  max-width: 100% !important;
}

/* Generic static pages such as DMCA, about and copyright. */
body.ava-static-page-v767 .ava-n-page {
  width: min(calc(100% - 32px), var(--ava-shell, 1320px)) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: auto !important;
  box-sizing: border-box !important;
}
body.ava-static-page-v767 .ava-n-content-card,
body.ava-static-page-v767 .ava-n-page__head,
body.ava-static-page-v767 .ava-n-entry {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
body.ava-static-page-v767 .ava-n-content-card {
  overflow: hidden;
}
body.ava-static-page-v767 .ava-n-entry,
body.ava-static-page-v767 .ava-n-entry p,
body.ava-static-page-v767 .ava-n-entry li,
body.ava-static-page-v767 .ava-n-entry h1,
body.ava-static-page-v767 .ava-n-entry h2,
body.ava-static-page-v767 .ava-n-entry h3,
body.ava-static-page-v767 .ava-n-entry h4,
body.ava-static-page-v767 .ava-n-entry a,
body.ava-static-page-v767 .ava-n-entry blockquote {
  max-width: 100%;
  overflow-wrap: anywhere;
  word-break: normal;
  white-space: normal;
}
body.ava-static-page-v767 .ava-n-entry img,
body.ava-static-page-v767 .ava-n-entry video,
body.ava-static-page-v767 .ava-n-entry iframe,
body.ava-static-page-v767 .ava-n-entry embed,
body.ava-static-page-v767 .ava-n-entry object,
body.ava-static-page-v767 .ava-n-entry svg {
  max-width: 100% !important;
  height: auto;
}
body.ava-static-page-v767 .ava-n-entry pre,
body.ava-static-page-v767 .ava-n-entry code {
  max-width: 100%;
  overflow-x: auto;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
}
body.ava-static-page-v767 .ava-n-entry table {
  max-width: 100% !important;
}

/* v7.66 contact center: use one centered responsive canvas only. */
body.ava-contact-v766 .ava-v766-contact-page {
  width: min(calc(100% - 32px), var(--ava-shell, 1320px)) !important;
  max-width: 100% !important;
  min-width: 0 !important;
  margin-inline: auto !important;
  padding-inline: 0 !important;
  overflow: visible !important;
}
body.ava-contact-v766 .ava-v766-contact,
body.ava-contact-v766 .ava-v766-contact > *,
body.ava-contact-v766 .ava-v766-hero > *,
body.ava-contact-v766 .ava-v766-form,
body.ava-contact-v766 .ava-v766-form fieldset,
body.ava-contact-v766 .ava-v766-form__grid,
body.ava-contact-v766 .ava-v766-methods__grid,
body.ava-contact-v766 .ava-v766-price-grid {
  min-width: 0 !important;
  max-width: 100% !important;
}
body.ava-contact-v766 .ava-v766-contact p,
body.ava-contact-v766 .ava-v766-contact h1,
body.ava-contact-v766 .ava-v766-contact h2,
body.ava-contact-v766 .ava-v766-contact h3,
body.ava-contact-v766 .ava-v766-contact strong,
body.ava-contact-v766 .ava-v766-contact small,
body.ava-contact-v766 .ava-v766-contact a {
  overflow-wrap: anywhere;
}
body.ava-contact-v766 .ava-v766-form input,
body.ava-contact-v766 .ava-v766-form select,
body.ava-contact-v766 .ava-v766-form textarea,
body.ava-contact-v766 .ava-v766-form input[type="file"] {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
}

/* PWA widgets: no collision with the collapsed player and no document overflow. */
.ava-pwa-launcher,
.ava-pwa-install,
.ava-pwa-guide,
.ava-pwa-guide__inner {
  box-sizing: border-box !important;
  max-width: calc(100% - 20px) !important;
}
.ava-pwa-launcher {
  right: 10px !important;
  left: auto !important;
  bottom: max(10px, env(safe-area-inset-bottom)) !important;
}
body.ava-player-visible .ava-pwa-launcher,
body.ava-pwa-ui-open .ava-pwa-launcher {
  display: none !important;
}
.ava-pwa-install {
  right: 10px !important;
  left: 10px !important;
  width: auto !important;
  max-width: 440px !important;
  margin-inline-start: auto !important;
}
.ava-pwa-guide {
  position: fixed !important;
  inset: 0 !important;
  width: min(500px, calc(100% - 22px)) !important;
  max-width: calc(100% - 22px) !important;
  max-height: calc(100dvh - 22px) !important;
  margin: auto !important;
  overflow: hidden !important;
}
.ava-pwa-guide__inner {
  width: 100% !important;
  max-width: 100% !important;
  max-height: calc(100dvh - 22px) !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior: contain;
}
.ava-pwa-guide__steps,
.ava-pwa-guide__steps p {
  max-width: 100%;
  overflow-wrap: anywhere;
}

/* Logged-in WordPress toolbar must not widen a phone viewport. */
#wpadminbar {
  max-width: 100vw !important;
}

@media (max-width: 782px) {
  body.ava-responsive-stability-v767 #wpadminbar,
  body.ava-responsive-stability-v767 #wpadminbar * {
    box-sizing: border-box;
  }
  body.ava-static-page-v767 .ava-n-page,
  body.ava-contact-v766 .ava-v766-contact-page {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
  }
  body.ava-static-page-v767 .ava-n-content-card {
    padding: 15px !important;
    border-radius: 20px !important;
  }
  body.ava-static-page-v767 .ava-n-page__head {
    margin-bottom: 15px;
    padding-bottom: 14px;
  }
  body.ava-static-page-v767 .ava-n-page__head h1 {
    font-size: clamp(25px, 8vw, 32px) !important;
    line-height: 1.45 !important;
  }
  body.ava-static-page-v767 .ava-n-entry {
    font-size: 14px !important;
    line-height: 2.05 !important;
  }
  body.ava-static-page-v767 .ava-n-entry h2 {
    padding-inline-start: 10px !important;
    font-size: 20px !important;
  }
  body.ava-static-page-v767 .ava-n-entry h3 {
    font-size: 17px !important;
  }
  body.ava-static-page-v767 .ava-n-entry table {
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    overflow-x: auto !important;
    -webkit-overflow-scrolling: touch;
  }

  body.ava-contact-v766 .ava-v766-contact {
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
  }
  body.ava-contact-v766 .ava-v766-hero,
  body.ava-contact-v766 .ava-v766-process,
  body.ava-contact-v766 .ava-v766-methods,
  body.ava-contact-v766 .ava-v766-pricing,
  body.ava-contact-v766 .ava-v766-submission,
  body.ava-contact-v766 .ava-v766-legal {
    width: 100% !important;
    max-width: 100% !important;
    margin-inline: 0 !important;
    transform: none !important;
  }
  body.ava-contact-v766 .ava-v766-hero {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.ava-contact-v766 .ava-v766-hero__panel,
  body.ava-contact-v766 .ava-v766-process__grid,
  body.ava-contact-v766 .ava-v766-methods__grid,
  body.ava-contact-v766 .ava-v766-price-grid,
  body.ava-contact-v766 .ava-v766-form__grid,
  body.ava-contact-v766 .ava-v766-form__grid--files {
    grid-template-columns: minmax(0, 1fr) !important;
  }
  body.ava-contact-v766 .ava-v766-method {
    grid-template-columns: 46px minmax(0, 1fr) !important;
  }
  body.ava-contact-v766 .ava-v766-method > i {
    grid-column: 2 !important;
    justify-self: start !important;
    max-width: 100% !important;
  }
  body.ava-contact-v766 .ava-v766-hero h1 {
    font-size: clamp(27px, 8.5vw, 37px) !important;
  }
  body.ava-contact-v766 .ava-v766-form label.is-file input[type="file"]::file-selector-button {
    max-width: 52%;
    white-space: normal;
  }

  .ava-pwa-launcher {
    right: 8px !important;
    left: auto !important;
    min-height: 50px !important;
    max-width: min(190px, calc(100% - 16px)) !important;
  }
  .ava-pwa-install {
    right: 8px !important;
    left: 8px !important;
    bottom: max(8px, env(safe-area-inset-bottom)) !important;
    grid-template-columns: 50px minmax(0, 1fr) !important;
    gap: 9px !important;
    padding: 11px !important;
    border-radius: 18px !important;
  }
  .ava-pwa-install__icon {
    width: 50px !important;
    height: 50px !important;
    border-radius: 14px !important;
  }
  .ava-pwa-install__content {
    padding-inline-end: 25px !important;
    padding-inline-start: 0 !important;
  }
  .ava-pwa-install__content strong {
    font-size: 13px !important;
  }
  .ava-pwa-install__content span {
    font-size: 10px !important;
    line-height: 1.65 !important;
  }
  .ava-pwa-install__actions {
    grid-column: 1 / -1 !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) auto !important;
  }
  .ava-pwa-guide {
    width: calc(100% - 18px) !important;
    max-width: calc(100% - 18px) !important;
    max-height: calc(100dvh - 18px) !important;
  }
  .ava-pwa-guide__inner {
    max-height: calc(100dvh - 18px) !important;
    padding: 23px 15px 16px !important;
    border-radius: 22px !important;
  }
  .ava-pwa-guide img {
    width: 64px !important;
    height: 64px !important;
    border-radius: 18px !important;
  }
  .ava-pwa-guide h2 {
    margin-top: 13px !important;
    font-size: 19px !important;
    line-height: 1.55 !important;
  }
  .ava-pwa-guide__status {
    font-size: 11px !important;
    line-height: 1.8 !important;
  }
  .ava-pwa-guide__steps {
    margin: 13px 0 !important;
    padding: 11px 12px !important;
    border-radius: 15px !important;
  }
  .ava-pwa-guide__steps p {
    margin: 6px 0 !important;
    font-size: 12px !important;
    line-height: 1.9 !important;
  }
  .ava-pwa-guide__done {
    min-height: 45px !important;
  }
}

@media (max-width: 390px) {
  body.ava-static-page-v767 .ava-n-page,
  body.ava-contact-v766 .ava-v766-contact-page {
    width: calc(100% - 14px) !important;
    max-width: calc(100% - 14px) !important;
  }
  body.ava-contact-v766 .ava-v766-hero,
  body.ava-contact-v766 .ava-v766-process,
  body.ava-contact-v766 .ava-v766-methods,
  body.ava-contact-v766 .ava-v766-pricing,
  body.ava-contact-v766 .ava-v766-submission,
  body.ava-contact-v766 .ava-v766-legal {
    border-radius: 18px !important;
  }
  body.ava-contact-v766 .ava-v766-hero,
  body.ava-contact-v766 .ava-v766-process,
  body.ava-contact-v766 .ava-v766-methods,
  body.ava-contact-v766 .ava-v766-pricing,
  body.ava-contact-v766 .ava-v766-submission {
    padding-inline: 13px !important;
  }
  .ava-pwa-launcher span {
    display: none !important;
  }
  .ava-pwa-launcher {
    width: 52px !important;
    min-width: 52px !important;
    padding: 6px !important;
    border-radius: 16px !important;
  }
}

@media (display-mode: standalone) {
  .ava-pwa-install,
  .ava-pwa-launcher,
  .ava-pwa-guide {
    display: none !important;
  }
}
