@media (max-width: 767px) {
  html,
  body {
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    overflow-y: auto !important;
    height: auto !important;
    min-height: 100%;
    position: static !important;
    background: #faf7f2;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
  }

  body.home,
  body.front-page,
  body.page-template-front-page {
    min-height: 100vh;
    min-height: 100dvh;
    overflow-y: auto !important;
    height: auto !important;
    position: relative !important;
    overscroll-behavior-y: auto;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
    background: #faf7f2;
  }

  body.home #page,
  body.front-page #page,
  body.page-template-front-page #page,
  body.home .site,
  body.front-page .site,
  body.page-template-front-page .site,
  body.home .site-content,
  body.front-page .site-content,
  body.page-template-front-page .site-content,
  body.home .ast-container,
  body.front-page .ast-container,
  body.page-template-front-page .ast-container,
  body.home main,
  body.front-page main,
  body.page-template-front-page main,
  body.home .entry-content,
  body.front-page .entry-content,
  body.page-template-front-page .entry-content {
    width: 100%;
    max-width: 100%;
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
    overflow-x: hidden;
    overflow-y: visible !important;
    height: auto !important;
    min-height: 0;
    background: #faf7f2;
  }

  html:not(.cc-drawer-active):not(.wcvid9910-lock) {
    overflow-y: auto !important;
    height: auto !important;
    position: static !important;
  }

  body.home:not(.cc-drawer-active):not(.force-cart-drawer-mobile):not(.cc-mobile-cart-view):not(.vicora-search-popup-open):not(.wcvid9910-lock),
  body.front-page:not(.cc-drawer-active):not(.force-cart-drawer-mobile):not(.cc-mobile-cart-view):not(.vicora-search-popup-open):not(.wcvid9910-lock),
  body.page-template-front-page:not(.cc-drawer-active):not(.force-cart-drawer-mobile):not(.cc-mobile-cart-view):not(.vicora-search-popup-open):not(.wcvid9910-lock) {
    overflow-y: auto !important;
    height: auto !important;
    position: relative !important;
    top: auto !important;
    bottom: auto !important;
    touch-action: pan-y !important;
  }

  body.home .vicora-footer,
  body.front-page .vicora-footer,
  body.page-template-front-page .vicora-footer,
  body.home .site-footer,
  body.front-page .site-footer,
  body.page-template-front-page .site-footer,
  body.home #colophon,
  body.front-page #colophon,
  body.page-template-front-page #colophon {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
  }

  body.home .vicora-mobile-nav-trigger,
  body.front-page .vicora-mobile-nav-trigger,
  body.page-template-front-page .vicora-mobile-nav-trigger {
    display: grid !important;
    position: fixed;
    right: max(16px, env(safe-area-inset-right));
    bottom: max(18px, env(safe-area-inset-bottom));
    z-index: 999990;
  }

  body.home .vicora-mobile-footer,
  body.front-page .vicora-mobile-footer,
  body.page-template-front-page .vicora-mobile-footer,
  body.home .vicora-mobile-footer-overlay,
  body.front-page .vicora-mobile-footer-overlay,
  body.page-template-front-page .vicora-mobile-footer-overlay {
    position: fixed;
  }

  body.home .vicora-home-hero,
  body.front-page .vicora-home-hero,
  body.page-template-front-page .vicora-home-hero {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }

  body.home .vicora-home-hero .vicora-hero__particles,
  body.front-page .vicora-home-hero .vicora-hero__particles,
  body.page-template-front-page .vicora-home-hero .vicora-hero__particles {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    min-height: 0 !important;
    overflow: hidden !important;
  }

  body.home .vicora-home-hero .vicora-hero__slides,
  body.front-page .vicora-home-hero .vicora-hero__slides,
  body.page-template-front-page .vicora-home-hero .vicora-hero__slides {
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: 100% !important;
    min-height: 100% !important;
    overflow: visible !important;
  }

  body.home .vcs-section,
  body.front-page .vcs-section,
  body.page-template-front-page .vcs-section,
  body.home .vds-section,
  body.front-page .vds-section,
  body.page-template-front-page .vds-section,
  body.home .vlc-section,
  body.front-page .vlc-section,
  body.page-template-front-page .vlc-section,
  body.home .vef-section,
  body.front-page .vef-section,
  body.page-template-front-page .vef-section,
  body.home .vstl-slider,
  body.front-page .vstl-slider,
  body.page-template-front-page .vstl-slider,
  body.home .vss-section,
  body.front-page .vss-section,
  body.page-template-front-page .vss-section,
  body.home .vctl-section,
  body.front-page .vctl-section,
  body.page-template-front-page .vctl-section,
  body.home .vvss-section,
  body.front-page .vvss-section,
  body.page-template-front-page .vvss-section,
  body.home .vlt-section,
  body.front-page .vlt-section,
  body.page-template-front-page .vlt-section,
  body.home .vnc-section,
  body.front-page .vnc-section,
  body.page-template-front-page .vnc-section {
    width: 100vw;
    max-width: 100vw;
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
    overflow-x: hidden;
    overflow-y: visible !important;
    height: auto;
  }

  body.home img,
  body.front-page img,
  body.page-template-front-page img,
  body.home video,
  body.front-page video,
  body.page-template-front-page video {
    max-width: 100%;
  }

  body.home button,
  body.front-page button,
  body.page-template-front-page button,
  body.home a,
  body.front-page a,
  body.page-template-front-page a,
  body.home input,
  body.front-page input,
  body.page-template-front-page input {
    touch-action: manipulation;
  }

  body.home .vnc-section,
  body.front-page .vnc-section,
  body.page-template-front-page .vnc-section {
    padding-bottom: max(72px, calc(env(safe-area-inset-bottom) + 56px));
  }

  body.home .vef-section,
  body.front-page .vef-section,
  body.page-template-front-page .vef-section {
    padding: 34px 10px 30px !important;
  }

  body.home .vef-heading,
  body.front-page .vef-heading,
  body.page-template-front-page .vef-heading {
    margin-bottom: 22px !important;
  }

  body.home .vef-viewport,
  body.front-page .vef-viewport,
  body.page-template-front-page .vef-viewport {
    overflow: visible !important;
    padding: 0 !important;
  }

  body.home .vef-section .vef-rail,
  body.front-page .vef-section .vef-rail,
  body.page-template-front-page .vef-section .vef-rail {
    width: 100% !important;
    min-width: 0 !important;
    display: grid !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 7px !important;
    justify-content: center !important;
    align-items: start !important;
    padding: 0 4px !important;
    transform: none !important;
  }

  body.home .vef-collection-card,
  body.front-page .vef-collection-card,
  body.page-template-front-page .vef-collection-card,
  body.home .vef-collection-card.is-active,
  body.front-page .vef-collection-card.is-active,
  body.page-template-front-page .vef-collection-card.is-active {
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    flex: none !important;
    display: block !important;
    overflow: visible !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.home .vef-card-image,
  body.front-page .vef-card-image,
  body.page-template-front-page .vef-card-image {
    position: relative !important;
    width: 100% !important;
    aspect-ratio: 1 / 1 !important;
    height: auto !important;
    display: block !important;
    overflow: visible !important;
    border-radius: 50% !important;
    padding: 3px !important;
    background: linear-gradient(135deg, #054340, #0a5a55 44%, #c9a86a 72%, #d8be8d) !important;
    box-shadow: 0 8px 18px rgba(5, 67, 64, .14) !important;
  }

  body.home .vef-card-image img,
  body.front-page .vef-card-image img,
  body.page-template-front-page .vef-card-image img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: 1 / 1 !important;
    object-fit: cover !important;
    object-position: center top !important;
    border: 3px solid #faf7f2 !important;
    border-radius: 50% !important;
    clip-path: circle(50% at 50% 50%) !important;
    transform: none !important;
  }

  body.home .vef-card-image::after,
  body.front-page .vef-card-image::after,
  body.page-template-front-page .vef-card-image::after {
    content: attr(data-vef-label);
    position: absolute;
    left: 50%;
    top: calc(100% + 7px);
    width: 76px;
    transform: translateX(-50%);
    color: #054340;
    font-size: 9px;
    line-height: 1.05;
    font-weight: 800;
    text-align: center;
    text-transform: uppercase;
    letter-spacing: .02em;
  }

  body.home .vef-card-panel,
  body.front-page .vef-card-panel,
  body.page-template-front-page .vef-card-panel {
    display: none !important;
  }

  body.home .vds-section,
  body.front-page .vds-section,
  body.page-template-front-page .vds-section {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 34px 0 34px !important;
    background-image: url("https://res.cloudinary.com/dvixzpw0v/image/upload/v1782152265/Mandala_Removed_-_Upscaled_mssspi.webp") !important;
    background-size: 100% auto !important;
    background-position: center 24px !important;
    background-repeat: no-repeat !important;
    overflow-x: hidden !important;
  }

  body.home .vds-section::before,
  body.front-page .vds-section::before,
  body.page-template-front-page .vds-section::before {
    display: none !important;
  }

  body.home .vds-hero,
  body.front-page .vds-hero,
  body.page-template-front-page .vds-hero {
    width: 100% !important;
    min-height: clamp(238px, 62vw, 292px) !important;
    display: flex !important;
    align-items: flex-start !important;
    justify-content: flex-start !important;
    padding: clamp(12px, 6vw, 24px) 10px 0 !important;
  }

  body.home .vds-copy,
  body.front-page .vds-copy,
  body.page-template-front-page .vds-copy {
    width: 52%;
    max-width: 52%;
    margin: -8px 0 0 !important;
    text-align: left !important;
    padding-left: 8px !important;
  }

  body.home .vds-copy h2,
  body.front-page .vds-copy h2,
  body.page-template-front-page .vds-copy h2 {
    font-size: clamp(45px, 13.2vw, 64px) !important;
    line-height: .82 !important;
  }

  body.home .vds-copy h2 span,
  body.front-page .vds-copy h2 span,
  body.page-template-front-page .vds-copy h2 span {
    font-size: clamp(24px, 6.4vw, 32px) !important;
  }

  body.home .vds-copy p,
  body.front-page .vds-copy p,
  body.page-template-front-page .vds-copy p {
    font-size: 13px !important;
    margin-top: 10px !important;
    margin-bottom: 8px !important;
  }

  body.home .vds-copy i,
  body.front-page .vds-copy i,
  body.page-template-front-page .vds-copy i {
    width: 86px !important;
    margin-left: 0 !important;
  }

  body.home .vds-model,
  body.front-page .vds-model,
  body.page-template-front-page .vds-model {
    display: none !important;
  }

  body.home .vds-pills,
  body.front-page .vds-pills,
  body.page-template-front-page .vds-pills {
    width: 100vw !important;
    max-width: 100vw !important;
    margin: -84px 0 12px !important;
    padding: 2px 10px 8px !important;
    gap: 7px !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    border-bottom: 1px solid rgba(174,139,83,.28) !important;
    position: relative !important;
    z-index: 2 !important;
  }

  body.home .vds-pill,
  body.front-page .vds-pill,
  body.page-template-front-page .vds-pill {
    min-height: 0 !important;
    padding: 0 7px 8px !important;
    font-size: 11px !important;
    border: 0 !important;
    border-bottom: 2px solid transparent !important;
    border-radius: 0 !important;
    color: #054340 !important;
    box-shadow: none !important;
    filter: none !important;
    transform: none !important;
    background: transparent !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
  }

  body.home .vds-pill.is-active,
  body.front-page .vds-pill.is-active,
  body.page-template-front-page .vds-pill.is-active {
    color: #054340 !important;
    border-bottom-color: #054340 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body.home .vds-pill:hover,
  body.front-page .vds-pill:hover,
  body.page-template-front-page .vds-pill:hover {
    color: #054340 !important;
    border-bottom-color: #054340 !important;
    background: transparent !important;
    box-shadow: none !important;
    transform: none !important;
  }

  body.home .vds-panel,
  body.front-page .vds-panel,
  body.page-template-front-page .vds-panel {
    width: 100% !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 14px !important;
    padding: 14px !important;
    background: #f7f2e8 !important;
    border-radius: 22px !important;
    overflow: visible !important;
    position: relative !important;
    z-index: 2 !important;
    transform: translateY(-12px) !important;
  }

  body.home .vds-products,
  body.front-page .vds-products,
  body.page-template-front-page .vds-products {
    order: 1;
    display: grid !important;
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
    overflow: visible !important;
    padding: 0 !important;
    scroll-snap-type: none !important;
  }

  body.home .vds-product,
  body.front-page .vds-product,
  body.page-template-front-page .vds-product {
    flex: none !important;
    min-width: 0 !important;
    width: 100% !important;
    border-radius: 14px !important;
  }

  body.home .vds-product:nth-child(n+4),
  body.front-page .vds-product:nth-child(n+4),
  body.page-template-front-page .vds-product:nth-child(n+4) {
    display: none !important;
  }

  body.home .vds-product__image,
  body.front-page .vds-product__image,
  body.page-template-front-page .vds-product__image {
    height: clamp(132px, 38vw, 172px) !important;
  }

  body.home .vds-heart,
  body.front-page .vds-heart,
  body.page-template-front-page .vds-heart {
    top: 7px !important;
    right: 7px !important;
    width: 30px !important;
    height: 30px !important;
    min-width: 30px !important;
    min-height: 30px !important;
  }

  body.home .vds-heart svg,
  body.front-page .vds-heart svg,
  body.page-template-front-page .vds-heart svg {
    width: 15px !important;
    height: 15px !important;
  }

  body.home .vds-product__body,
  body.front-page .vds-product__body,
  body.page-template-front-page .vds-product__body {
    padding: 10px 8px 11px !important;
  }

  body.home .vds-product__body h3,
  body.front-page .vds-product__body h3,
  body.page-template-front-page .vds-product__body h3 {
    min-height: 2.55em !important;
    max-height: 2.55em !important;
    margin-bottom: 7px !important;
    font-size: 11px !important;
    line-height: 1.25 !important;
  }

  body.home .vds-product__body strong,
  body.front-page .vds-product__body strong,
  body.page-template-front-page .vds-product__body strong {
    font-size: 12px !important;
  }

  body.home .vds-gallery,
  body.front-page .vds-gallery,
  body.page-template-front-page .vds-gallery {
    order: 2;
    margin-top: 0 !important;
    gap: 9px !important;
  }

  body.home .vds-preview,
  body.front-page .vds-preview,
  body.page-template-front-page .vds-preview {
    width: 100% !important;
    height: clamp(320px, 92vw, 430px) !important;
    border-radius: 18px !important;
    object-fit: cover !important;
    object-position: center top !important;
  }

  body.home .vds-thumbs,
  body.front-page .vds-thumbs,
  body.page-template-front-page .vds-thumbs {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }

  body.home .vds-thumbs button,
  body.front-page .vds-thumbs button,
  body.page-template-front-page .vds-thumbs button {
    height: 78px !important;
    border-radius: 12px !important;
  }

  body.home .vds-details,
  body.front-page .vds-details,
  body.page-template-front-page .vds-details {
    order: 3;
    margin-top: 0 !important;
    padding: 8px 2px 0 !important;
    border: 0 !important;
  }

  body.home .vds-best,
  body.front-page .vds-best,
  body.page-template-front-page .vds-best {
    margin-bottom: 12px !important;
  }

  body.home .vds-details h3,
  body.front-page .vds-details h3,
  body.page-template-front-page .vds-details h3 {
    font-size: 31px !important;
    max-height: none !important;
    min-height: 0 !important;
    -webkit-line-clamp: unset !important;
    line-clamp: unset !important;
  }

  body.home .vds-details p,
  body.front-page .vds-details p,
  body.page-template-front-page .vds-details p {
    width: 100% !important;
    font-size: 14px !important;
  }

  body.home .vds-actions,
  body.front-page .vds-actions,
  body.page-template-front-page .vds-actions {
    flex-wrap: nowrap !important;
  }

  body.home .vds-cart,
  body.front-page .vds-cart,
  body.page-template-front-page .vds-cart {
    flex: 1 1 auto !important;
    min-width: 0 !important;
  }

  body.home .fp-tabs-wrap,
  body.front-page .fp-tabs-wrap,
  body.page-template-front-page .fp-tabs-wrap {
    width: 100% !important;
    padding: 14px 0 10px !important;
    overflow: hidden !important;
  }

  body.home .fp-tabs,
  body.front-page .fp-tabs,
  body.page-template-front-page .fp-tabs {
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(50% - 50vw) !important;
    margin-right: calc(50% - 50vw) !important;
    padding: 8px 12px 10px !important;
    gap: 8px !important;
    justify-content: flex-start !important;
    overflow-x: auto !important;
    overflow-y: hidden !important;
    -webkit-overflow-scrolling: touch !important;
    scrollbar-width: none !important;
    scroll-snap-type: x mandatory !important;
    touch-action: pan-x !important;
  }

  body.home .fp-tabs::-webkit-scrollbar,
  body.front-page .fp-tabs::-webkit-scrollbar,
  body.page-template-front-page .fp-tabs::-webkit-scrollbar {
    display: none !important;
  }

  body.home .fp-tab,
  body.front-page .fp-tab,
  body.page-template-front-page .fp-tab {
    flex: 0 0 calc((100vw - 48px) / 3) !important;
    min-width: calc((100vw - 48px) / 3) !important;
    max-width: calc((100vw - 48px) / 3) !important;
    white-space: nowrap !important;
    scroll-snap-align: start !important;
    text-align: center !important;
    padding: 10px 8px !important;
    font-size: 11px !important;
    line-height: 1.05 !important;
  }
}

/* Keep the regular theme footer hidden on the mobile homepage. The floating
   VICORA navigation is controlled by vicora-mobile-footer.css. */
@media (max-width:767px) {
  body.home .vicora-footer,
  body.front-page .vicora-footer,
  body.page-template-front-page .vicora-footer,
  body.home .site-footer,
  body.front-page .site-footer,
  body.page-template-front-page .site-footer,
  body.home #colophon,
  body.front-page #colophon,
  body.page-template-front-page #colophon,
  body.home .vicora-mobile-footer-overlay,
  body.front-page .vicora-mobile-footer-overlay,
  body.page-template-front-page .vicora-mobile-footer-overlay {
    display:none !important;
  }
}
