/* Mobile Zero Block: 320 artboard, then window upscale. Desktop unchanged. */
@media screen and (max-width: 767px) {
  html {
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    --mobile-base: 320;
    --mobile-scale: calc(100vw / 320);
  }

  html.zero-mobile,
  html.zero-mobile body {
    margin: 0;
    overflow-x: clip;
  }

  html.zero-mobile #site-scaler,
  html.zero-mobile #desktop-site {
    width: 100% !important;
    max-width: 100% !important;
    transform: none !important;
    height: auto !important;
    overflow: visible !important;
  }

  html.zero-mobile .t-rec,
  html.zero-mobile .t396,
  html.zero-mobile .t396__artboard {
    position: relative;
  }

  html.zero-mobile .t396__artboard {
    max-width: 100%;
  }

  html.zero-mobile .t-animate,
  html.zero-mobile .t-animate_wait,
  html.zero-mobile .tn-atom__sticky-wrapper {
    opacity: 1 !important;
    visibility: visible !important;
  }

  html.zero-mobile #rec1557669011,
  html.zero-mobile #rec1578261521,
  html.zero-mobile #rec1562829841,
  html.zero-mobile #rec1578461251,
  html.zero-mobile #rec1588326071 {
    overflow: visible;
  }

  html.zero-mobile #rec1561809461.romantic-photo-section {
    overflow: visible;
    height: auto !important;
  }

  html.zero-mobile #rec1561809461 .t396__artboard,
  html.zero-mobile #rec1561809461 .t396__carrier,
  html.zero-mobile #rec1561809461 .t396__filter {
    height: auto !important;
    min-height: 0 !important;
  }

  html.zero-mobile #rec1561809461 .t396__elem {
    display: none !important;
  }

  html.zero-mobile #rec1561809461 .photo-layer {
    display: block !important;
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    width: 100% !important;
    height: auto !important;
    overflow: visible !important;
  }

  html.zero-mobile #rec1561809461 .photo-layer img.photo-layer__desktop {
    display: none !important;
  }

  html.zero-mobile #rec1561809461 .photo-layer img.photo-layer__mobile {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    max-width: 100%;
    object-fit: contain !important;
    object-position: center center;
    filter: none !important;
  }

  html.zero-mobile .wedding-countdown {
    width: 280px;
    min-width: 0;
    height: auto;
    gap: 4px;
  }

  html.zero-mobile .wedding-countdown__number {
    font-size: 22px;
  }

  html.zero-mobile .wedding-countdown__label {
    font-size: 11px;
  }

  /* Photo → RSVP: lift seam wave onto the photo/cream junction */
  html.zero-mobile #rec1578461251 .tn-elem[data-elem-id="176313057194255190"] {
    top: -164px !important;
    left: calc(50% - 160px + -11px) !important;
    z-index: 5 !important;
    pointer-events: none;
  }

  /* Hero photo trio: no overlap, even gaps, inset from edges */
  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085165320"] {
    z-index: 4 !important;
    top: 738px !important;
    left: calc(50% - 160px + 96px) !important;
    width: 128px !important;
    height: 170px !important;
  }

  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085994450"] {
    z-index: 3 !important;
    top: 761px !important;
    left: calc(50% - 160px + 14px) !important;
    width: 76px !important;
    height: 114px !important;
  }

  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085668990"] {
    z-index: 3 !important;
    top: 761px !important;
    left: calc(50% - 160px + 230px) !important;
    width: 76px !important;
    height: 99px !important;
  }

  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085165320"] .tn-atom {
    background-size: cover !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }

  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085994450"] .tn-atom,
  html.zero-mobile #rec1557669011 .tn-elem[data-elem-id="176304654085668990"] .tn-atom {
    background-size: 100% 100% !important;
    background-position: center center !important;
    background-repeat: no-repeat !important;
  }
}
