/* Integration v1: original PC motion + approved mobile images. */
.um-mobile-landing { display:none; }
.ui-sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
@media(max-width:990px) {
  .um-site #main > section { display:none!important; }
  .um-mobile-landing { display:block;padding-top:76px;padding-bottom:calc(60px + env(safe-area-inset-bottom));background:#fff; }
  .um-mobile-landing > img { display:block;width:100%;height:auto;margin:0; }
  .um-mobile-landing [hidden] { display:none!important; }
  .um-mobile-footer { padding:36px 24px;background:#f5f3ed;color:#303b35;font:14px/1.8 Pretendard,sans-serif; }
  .um-mobile-footer > img { width:145px;height:auto;margin-bottom:18px; }
  .um-mobile-footer-phone { display:inline-block;font-size:27px;font-weight:650;margin-bottom:12px; }
  .um-mobile-footer p { font-size:12px;margin-bottom:18px; }
  .um-mobile-footer > a:last-child { display:inline-block;padding:8px 0; }
  .um-mobile-actions { grid-template-columns:1fr 1fr; }
  .um-mobile-actions a { display:flex;justify-content:center;align-items:center;min-height:60px;padding:16px 8px; }
  /* Same mobile header across main and subpages: menu / logo / call. */
  .um-header-inner,.uf-header-inner { display:grid;grid-template-columns:44px minmax(0,1fr) 44px;gap:12px;padding:0 16px; }
  .um-menu,.uf-menu-toggle { grid-column:1;grid-row:1;width:44px;height:44px;margin:0; }
  .um-menu { padding:10px; }
  .uf-menu-toggle { display:flex; }
  .um-logo,.uf-brand { grid-column:2;grid-row:1;width:135px;max-width:100%;margin:0;justify-self:center; }
  .um-phone,.uf-header-phone { grid-column:3;grid-row:1;width:44px;height:44px;padding:11px;margin:0;border-radius:50%; }
  .um-phone strong,.uf-header-phone strong { display:none; }
  .um-phone > svg,.uf-header-phone > svg { display:block;width:22px;height:22px; }
  .um-mobile-nav { max-height:calc(100dvh - 136px);overflow-y:auto;font-family:Pretendard,sans-serif; }
}

/* Mobile v2: source images and education PDF pages. Desktop rules unchanged. */
@media(max-width:990px) {
 .um-mobile-hero,.um-mobile-benefits {position:relative;width:100%;line-height:0;}
 .um-mobile-hero>img,.um-mobile-benefits>img,.um-education-page>img {display:block;width:100%;height:auto;margin:0;}
 .um-hero-phone-hit {position:absolute;left:0;bottom:0;width:100%;height:12.3%;}
 .um-benefit-reserve-hit {position:absolute;left:7.3%;top:85.5%;width:85.5%;height:9%;border-radius:18px;}
 .um-education-page {display:block;line-height:0;margin:0;padding:0;}
 .um-mobile-landing a:focus-visible {outline:3px solid #c59954;outline-offset:-3px;}
 .um-mobile-video {margin:0;padding:0;background:#121a18;}
 .um-mobile-video iframe {display:block;width:100%;aspect-ratio:16/9;height:auto;border:0;}
 .um-mobile-video>a {display:block;padding:12px 16px;text-align:center;font:13px/1.5 Pretendard,sans-serif;color:#fff;}
 .um-mobile-landing .um-education-hint {padding:12px 16px;margin:0;background:#eef0eb;color:#35453c;text-align:center;font:12px/1.6 Pretendard,sans-serif;}
}

/* Mobile v3: visible by default; JS hides only upcoming sections. */
.um-mobile-landing [hidden] {display:none!important;}
.um-mobile-video iframe {min-height:200px;}
.um-video-local {display:flex;align-items:center;justify-content:center;min-height:210px;margin:0;padding:32px 24px;text-align:center;color:#fff;font:15px/1.8 Pretendard,sans-serif;}
.um-reveal-section {opacity:1;transform:none;transition:opacity .9s ease,transform .9s cubic-bezier(.2,.65,.3,1);}
.um-reveal-pending {opacity:0;transform:translateY(30px);}
@media(prefers-reduced-motion:reduce) {
 .um-reveal-section,.um-reveal-pending {opacity:1!important;transform:none!important;transition:none!important;}
}
@media print {
 .um-reveal-section,.um-reveal-pending {opacity:1!important;transform:none!important;}
}
.um-mobile-landing .um-mobile-video iframe {display:block;width:100%;height:auto;aspect-ratio:16/9;min-height:200px;border:0;}

/* Mobile v4: native inline video and flyer. */
.um-video-player {position:relative;background:#101817;}
.um-mobile-landing .um-mobile-video video {display:block;width:100%;height:auto;aspect-ratio:16/9;object-fit:contain;background:#101817;}
.um-video-play {position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);border:1px solid #fff9;border-radius:32px;padding:15px 24px;background:#153d30e8;color:#fff;font:600 16px/1.4 Pretendard,sans-serif;cursor:pointer;}
.um-video-toolbar {display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px;color:#fff;font:12px/1.5 Pretendard,sans-serif;}
.um-video-sound {flex-shrink:0;padding:9px 13px;border:1px solid #ffffff66;border-radius:6px;color:#fff;background:transparent;font:600 13px/1.4 Pretendard,sans-serif;cursor:pointer;}
.um-mobile-flyer {margin:0;padding:0;line-height:0;background:#f7f8f3;}
.um-mobile-flyer>img {display:block;width:100%;height:auto;}

/* Mobile v5: three independent DBCart frames, provider's original 500px height. */
.um-registration {scroll-margin-top:96px;}
.um-mobile-landing .um-mobile-registration {display:block;margin:0;padding:30px 0 12px;background:#f5f3ed;line-height:1.5;}
.um-registration h2 {margin:0 16px 20px;text-align:center;font:600 23px/1.45 Pretendard,sans-serif;color:#173e31;letter-spacing:-.04em;}
.um-dbcart-frame {display:block;width:100%;height:500px;border:0;background:#fff;}
.uf-reservation.um-registration {max-width:820px;margin:0 auto 32px;padding:32px 0 0;}
@media(min-width:991px) {.um-registration {scroll-margin-top:120px;}}

/* v6: shared footer and a form-only reservation content area. */
.uf-reservation-only .uf-page-heading {margin:0;background:#e9eee6;padding:60px 20px;}
.uf-reservation-stage {padding:64px 20px;background:#eeeee4;}
.uf-form-only {max-width:760px;margin:0 auto;padding:14px;background:#fff;box-shadow:0 12px 30px #173e3108;}
.um-footer-copy {width:100%;min-width:0;}
.um-footer-info {margin:0 0 20px;}
.um-footer-info p {margin:0!important;font:400 13px/1.95 Pretendard,sans-serif!important;color:inherit!important;word-break:keep-all;overflow-wrap:anywhere;}
.um-footer-info a {color:inherit;text-decoration:none;}
.um-footer-info a:hover {text-decoration:underline;}
.um-footer-notice p {margin:0!important;font:400 11px/1.8 Pretendard,sans-serif!important;color:inherit!important;opacity:.66;word-break:keep-all;}
.um-mobile-landing .um-mobile-footer,.uf-footer {display:block;background:#12352d;color:#fff;padding:36px 24px;}
.um-mobile-footer .um-footer-top {display:inline-block;margin-top:18px;font:13px/1.6 Pretendard,sans-serif;color:#fff;}
.um-closing .um-footer {background:#12352d;color:#fff;}
.um-closing .um-footer>a {flex-shrink:0;color:#fff;border-color:#ffffff55;}
@media(min-width:991px) {.uf-footer {padding:40px max(40px,calc((100% - 1160px)/2));}}
@media(max-width:990px) {.uf-reservation-stage {padding:32px 12px;}.uf-form-only {padding:6px;}.uf-footer {padding-bottom:100px;}.uf-reservation-only .uf-page-heading {padding:40px 20px;}}

/* The upper form follows the reservation banner without a duplicate heading. */
.um-mobile-landing #mobile-registration-top {padding-top:0;}
