/* Noom reference measured 19 September 2026. Every rule is treatment-scoped. */
html.eds-app-noom { background: #fff; }
html.eds-app-noom body { background: #fff; color: #191717; }
html.eds-app-noom body::before,
html.eds-app-noom .funnel-field::before,
html.eds-app-noom .funnel-field::after,
html.eds-app-noom .hero,
html.eds-app-noom .offer-head,
html.eds-app-noom .tf-fsclose,
html.eds-app-noom #tf-next,
html.eds-app-noom .tf-qnum,
html.eds-app-noom .tf-key,
html.eds-app-noom .tf-hint,
html.eds-app-noom .tf-reentry,
html.eds-app-noom .sticky-cta { display: none !important; }
html.eds-app-noom #why, html.eds-app-noom #proof, html.eds-app-noom #faq,
html.eds-app-noom #eds-sticky { display: none !important; }
html.eds-app-noom .funnel-field { background: #fff; padding: 0; min-height: 100svh; }
html.eds-app-noom .tf-section { width: 100%; max-width: 448px; margin: 0 auto; padding: 0 24px 40px; }
html.eds-app-noom .tf-embed {
  --tf-accent: #007b7f; --tf-accent-rgb: 0,123,127; --tf-q: #191717; --tf-a: #191717;
  position: relative; width: 100%; height: auto; min-height: 100svh;
  border: 0; border-radius: 0; box-shadow: none; background: #fff; overflow: visible;
}
html.eds-app-noom .tf-viewport { position: relative; inset: auto; padding-top: 136px; }
html.eds-app-noom .tf-slide { position: relative; inset: auto; display: block; padding: 0 0 40px; overflow: visible; }
html.eds-app-noom .tf-slide.is-leaving { display: none; }
html.eds-app-noom .tf-block, html.eds-app-noom .tf-block--wide { margin: 0; max-width: 400px; }
html.eds-app-noom .tf-qtitle { font-size: 20px; font-weight: 400; line-height: 28px; letter-spacing: 0; color: #191717; }
html.eds-app-noom .tf-qdesc { font-size: 16px; line-height: 24px; color: #53514d; margin-top: 20px; }
html.eds-app-noom .tf-choices { gap: 16px; margin-top: 24px; }
html.eds-app-noom .tf-opt {
  min-height: 62px; padding: 16px 20px; border: 2px solid #f6f4ee; border-radius: 4px;
  background: #f6f4ee; color: #191717; text-align: center; font-size: 18px; line-height: 26px;
  font-weight: 400; animation: none !important;
}
html.eds-app-noom .tf-opt .tf-tick { display: none; }
html.eds-app-noom .tf-opt.is-selected { background: #e4dfcf; border-color: #007b7f; }
html.eds-app-noom .tf-opt.is-muted { opacity: 1; }
html.eds-app-noom .tf-opt:hover { background: #e4dfcf; border-color: #e4dfcf; }
html.eds-app-noom .tf-opt:focus-visible, html.eds-app-noom .tf-ok:focus-visible,
html.eds-app-noom .tf-navbtn:focus-visible { outline: 3px solid #007b7f; outline-offset: 3px; }
html.eds-app-noom .tf-actions { margin-top: 28px; }
html.eds-app-noom .tf-ok { width: 100%; min-height: 60px; justify-content: center; border-radius: 32px; background: #fb513b; box-shadow: none; font-size: 18px; font-weight: 500; }
html.eds-app-noom .tf-ok svg { display: none; }
html.eds-app-noom .tf-ok:disabled { background: #aaa; color: #fff; }
html.eds-app-noom .tf-box { border: 1px solid #aaa69e; border-radius: 10px; padding: 12px; }
html.eds-app-noom .tf-row { flex-direction: column; }
html.eds-app-noom .tf-nav { position: absolute; top: 16px; left: -4px; right: auto; bottom: auto; z-index: 5; box-shadow: none; overflow: visible; }
html.eds-app-noom .tf-navbtn { width: 44px; height: 44px; padding: 10px; background: transparent; color: #191717; border: 0; box-shadow: none; }
html.eds-app-noom #tf-prev svg { width: 24px; height: 24px; }
html.eds-app-noom .tf-navbtn:disabled { visibility: hidden; }
html.eds-app-noom .app-section-label { position: absolute; top: 30px; left: 44px; right: 44px; text-align: center; font-size: 14px; line-height: 20px; color: #00686c; text-transform: uppercase; letter-spacing: .1px; }
html.eds-app-noom .tf-progress { top: 66px; bottom: auto; height: 8px; border-radius: 4px; background: #f6f4ee; overflow: visible; }
html.eds-app-noom .tf-progress > span { background: #80c4b5; border-radius: 4px; }
html.eds-app-noom .app-progress-stops { position: absolute; inset: 0; display: flex; justify-content: space-between; padding-left: 12%; align-items: center; }
html.eds-app-noom .app-progress-stops i { display: block; width: 6px; height: 6px; transform: rotate(45deg); background: #007b7f; }
html.eds-app-noom .tf-embed.is-cal .tf-viewport { padding-top: 136px; }
html.eds-app-noom .tf-embed.is-cal .tf-slide.is-active { padding-bottom: 32px; }
/* Keep the existing callback interaction inside the same visual treatment.
   One column is intentional: the treatment's content is only 400px wide even
   on desktop, and a selected time reveals an adjacent confirmation button. */
html.eds-app-noom .cal-topbar { position: static; padding: 16px; background: #f6f4ee; color: #191717; border-radius: 4px; font-size: 16px; line-height: 24px; letter-spacing: 0; font-weight: 400; }
html.eds-app-noom .cal-topbar b { font-weight: 600; letter-spacing: 0; }
html.eds-app-noom .rolling-cal { padding: 24px 0 28px; }
html.eds-app-noom .rolling-cal h2 { color: #191717; font-size: 20px; line-height: 28px; letter-spacing: 0; font-weight: 400; }
html.eds-app-noom .rolling-cal-intro { color: #53514d; font-size: 16px; line-height: 24px; }
html.eds-app-noom .rolling-cal-live { color: #00686c; font-weight: 500; letter-spacing: .02em; }
html.eds-app-noom .rolling-cal-dot { background: #007b7f; animation: none; box-shadow: none; }
html.eds-app-noom .rolling-days { grid-template-columns: 1fr; }
html.eds-app-noom .rolling-day { border: 2px solid #f6f4ee; padding: 12px 16px; border-radius: 4px; background: #f6f4ee; color: #191717; }
html.eds-app-noom .rolling-day[aria-selected="true"] { border-color: #007b7f; background: #e4dfcf; }
html.eds-app-noom .rolling-day > span, html.eds-app-noom .rolling-foot { color: #53514d; }
html.eds-app-noom .rolling-date { color: #191717; font-weight: 500; }
html.eds-app-noom .rolling-slots { grid-template-columns: 1fr; gap: 12px; }
html.eds-app-noom .rolling-choice.is-selected { grid-template-columns: minmax(0,.85fr) minmax(0,1.15fr); gap: 8px; }
html.eds-app-noom .rolling-slot { min-height: 56px; border: 2px solid #f6f4ee; border-radius: 4px; background: #f6f4ee; color: #191717; font-size: 18px; font-weight: 400; }
html.eds-app-noom .rolling-slot:hover { transform: none; background: #e4dfcf; border-color: #e4dfcf; }
html.eds-app-noom .rolling-slot[aria-pressed="true"] { background: #e4dfcf; border-color: #007b7f; color: #191717; font-size: 16px; }
html.eds-app-noom .rolling-confirm { min-height: 56px; border-radius: 32px; background: #fb513b; color: #191717; font-size: 16px; font-weight: 500; box-shadow: none; }
html.eds-app-noom .rolling-confirm:hover { background: #ed4632; }
html.eds-app-noom .rolling-slot:focus-visible,
html.eds-app-noom .rolling-day:focus-visible,
html.eds-app-noom .rolling-confirm:focus-visible { outline: 3px solid #007b7f; outline-offset: 3px; }
html.eds-app-noom .inline-cal { overflow: visible; }
html.eds-app-noom .rolling-cal .inline-cal-load { border-color: #aaa69e; border-radius: 4px; color: #53514d; }
html.eds-app-noom .tf-box:focus-within { border-color: #007b7f; }
html.eds-app-noom .tf-box:has(.tf-input.is-invalid) { border-color: #b3261e; }
html.eds-app-noom .tf-fhint.is-echo { color: #00686c; }
html.eds-app-noom .tf-ok { color: #191717; }
@media (max-width: 480px) {
  html.eds-app-noom .tf-section { padding-right: 24px; padding-left: 24px; }
}

/* Phone-only opt-in: measured Noom email-screen geometry, EDS identity/copy. */
#noom-optin-brand { display: none; }
html.eds-noom-optin .tf-section { max-width: 432px; padding-left: 16px; padding-right: 16px; }
html.eds-noom-optin .tf-viewport { padding-top: 108px; }
html.eds-noom-optin .tf-progress,
html.eds-noom-optin .app-section-label { display: none; }
html.eds-noom-optin .tf-embed::before { content: ""; position: absolute; top: 0; left: 50%; transform: translateX(-50%); width: 100vw; height: 48px; background: #f6f4ee; border-bottom: 1px solid #d5d2c8; }
html.eds-noom-optin #noom-optin-brand { display: flex; position: absolute; top: 0; left: 36px; right: 36px; height: 48px; align-items: center; justify-content: center; text-align: center; font-size: 14px; font-weight: 600; color: #191717; }
html.eds-noom-optin .tf-nav { top: 2px; left: -4px; }
html.eds-noom-optin .noom-phone-form .tf-qtitle { margin: 0; outline: none; }
html.eds-noom-optin .tf-fields { margin-top: 24px; gap: 0; }
html.eds-noom-optin .tf-box { min-height: 62px; padding: 16px 18px; border: 1px solid #aaa; border-radius: 8px; justify-content: center; box-shadow: none; }
html.eds-noom-optin .tf-box:focus-within { border-color: #00686c; box-shadow: none; }
html.eds-noom-optin .tf-input { font-size: 18px; line-height: 26px; padding: 0; color: #191717; }
html.eds-noom-optin .tf-input::placeholder { color: #aaa; opacity: 1; }
html.eds-noom-optin .noom-phone-help { margin: 16px 0 0; text-align: center; font-size: 16px; line-height: 24px; font-weight: 400; }
html.eds-noom-optin .tf-actions { margin-top: 24px; }
html.eds-noom-optin .tf-ok { height: 60px; padding: 16px; color: #fff; background: #fb513b; font-size: 18px; line-height: 26px; font-weight: 500; border-radius: 32px; }
html.eds-noom-optin .tf-ok:disabled { background: #aaa; color: #fff; opacity: 1; cursor: default; }
html.eds-noom-optin .noom-phone-notice { margin: 16px 0 0; text-align: center; font-size: 16px; line-height: 24px; }
html.eds-noom-optin .noom-phone-notice a { color: #36569b; text-decoration: underline; }
