/* Scoped to the opt-in page. Existing Elementor pages keep their styles. */
body.mb-template { margin: 0; background: #fff; }
.mb-site { --mb-ink: #102447; --mb-copy: #344360; --mb-accent: #6241db; --mb-blue: #5889b8; --mb-pale: #f2f5ff; --mb-line: #e4e8f0; font-family: Inter, Arial, sans-serif; font-size: 16px; line-height: 1.55; color: var(--mb-ink); background: #fff; overflow-wrap: break-word; }
.mb-site *, .mb-site *::before, .mb-site *::after { box-sizing: border-box; }
.mb-site :where(h1,h2,h3,h4,p,figure,ul) { margin: 0; padding: 0; }
.mb-site :is(h1,h2,h3,h4) { font-family: inherit; font-weight: 650; color: var(--mb-ink); }
.mb-site :is(h1,h2) { letter-spacing: -.035em; }
.mb-site h2 { font-size: clamp(30px, 3vw, 44px); line-height: 1.15; }
.mb-site h3 { font-size: 19px; line-height: 1.35; letter-spacing: -.015em; }
.mb-site h4 { font-size: 15px; line-height: 1.4; }
.mb-site p { color: var(--mb-copy); }
.mb-site a { color: inherit; text-decoration: none; }
.mb-site a:hover { color: var(--mb-accent); }
.mb-site a:focus-visible, .mb-site button:focus-visible { outline: 3px solid #6846df; outline-offset: 5px; border-radius: 5px; }
.mb-site img { display: block; max-width: 100%; height: auto; }
.mb-shell { width: min(1280px, calc(100% - 96px)); margin-inline: auto; }
.mb-site .mb-icon { display: block; flex-shrink: 0; }
.mb-site [id] { scroll-margin-top: 110px; }
.mb-site .mb-skip { position: fixed; top: 10px; left: 16px; transform: translateY(-200%); z-index: 10000; background: white; padding: 12px 20px; border: 2px solid var(--mb-accent); }
.mb-site .mb-skip:focus { transform: translateY(0); }
.mb-preview-bar { padding: 7px 24px; background: #eeebf8; color: #514579; display: flex; justify-content: center; gap: 12px; font-size: 11px; line-height: 1.4; }
.mb-preview-bar strong { white-space: nowrap; }
.mb-header { position: sticky; top: 0; z-index: 20; background: rgb(255 255 255 / 96%); border-bottom: 1px solid rgb(16 36 71 / 6%); backdrop-filter: blur(14px); }
body.admin-bar .mb-header { top: 32px; }
.mb-header-inner { min-height: 82px; display: flex; align-items: center; justify-content: space-between; gap: 26px; }
.mb-site .mb-brand { display: inline-flex; align-items: center; gap: 11px; flex-shrink: 0; }
.mb-brand-mark { display: block; width: 42px; height: 42px; flex-shrink: 0; }
.mb-brand-mark img { width: 100%; height: 100%; object-fit: contain; }
.mb-wordmark { display: block; font-family: inherit; font-size: 28px; letter-spacing: -.05em; font-weight: 650; line-height: 1.15; }
.mb-tagline { display: block; font-size: 7px; letter-spacing: .16em; text-transform: uppercase; margin-top: 6px; }
.mb-nav { display: flex; align-items: center; gap: 23px; font-size: 13px; white-space: nowrap; }
.mb-nav a { padding-block: 14px; }
.mb-nav a[aria-current] { color: var(--mb-accent); }
.mb-header-actions { display: flex; align-items: center; gap: 20px; }
.mb-languages { display: flex; gap: 1px; font-size: 11px; white-space: nowrap; }
.mb-languages a { min-width: 31px; min-height: 38px; display: grid; place-items: center; border-radius: 8px; color: #566078; }
.mb-languages a[aria-current] { color: var(--mb-ink); background: #edf2f7; font-weight: 700; }
.mb-site .mb-header-download { border-radius: 100px; padding: 12px 18px; background: var(--mb-ink); color: #fff; font-size: 12px; white-space: nowrap; }
.mb-header-download-arrow { margin-left: 12px; }
.mb-hero { position: relative; overflow: hidden; background: #edf5fa; }
.mb-hero-backdrop, .mb-download-backdrop { position: absolute; inset: 0; pointer-events: none; }
.mb-hero-backdrop img, .mb-download-backdrop img { width: 100%; height: 100%; object-fit: cover; }
.mb-hero-backdrop img { object-position: right center; }
.mb-hero-backdrop::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(255 255 255 / 95%), rgb(255 255 255 / 90%) 42%, rgb(255 255 255 / 25%) 66%, rgb(255 255 255 / 72%) 87%, rgb(255 255 255 / 8%)); }
.mb-hero-layout { position: relative; display: grid; grid-template-columns: minmax(0,1.6fr) minmax(240px,.9fr) minmax(190px,.7fr); gap: 32px; align-items: center; padding-block: 32px; }
.mb-site .mb-eyebrow { display: inline-block; color: #596e8a; font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; margin-bottom: 14px; }
.mb-site .mb-hero-eyebrow { font-size: 12px; margin-bottom: 6px; }
.mb-site .mb-hero-tagline { font-size: 16px; margin-bottom: 22px; color: #536d8d; }
.mb-site h1 { font-size: clamp(40px,4.2vw,60px); line-height: 1.04; font-weight: 650; }
.mb-site h1 span { display: block; }
.mb-site h1 span:last-child { color: #5186b4; }
.mb-site .mb-hero-description { font-size: 19px; line-height: 1.35; max-width: 560px; margin: 30px 0 36px; }
.mb-site .mb-button { display: inline-flex; justify-content: center; align-items: center; gap: 10px; color: #fff; background: #5945df; border: 1px solid #5945df; border-radius: 9px; font-size: 14px; font-weight: 600; min-height: 46px; padding: 10px 18px; transition: background .18s; }
.mb-site .mb-button:hover { color: #fff; background: #4732c8; }
.mb-button .mb-icon { width: 19px; height: 19px; }
.mb-hero .mb-stores { margin-top: 18px; }
.mb-stores { display: flex; flex-wrap: wrap; gap: 10px; }
.mb-site .mb-store { display: inline-flex; align-items: center; gap: 8px; background: #050609; color: #fff; padding: 7px 10px; min-height: 46px; border: 1px solid #404047; border-radius: 7px; }
.mb-site .mb-store:hover { background: #202432; color: #fff; }
.mb-store small { display: block; font-size: 8px; line-height: 1.1; white-space: nowrap; }
.mb-store strong { display: block; font-size: 17px; font-weight: 500; line-height: 1.25; letter-spacing: -.035em; white-space: nowrap; }
.mb-store-symbol { display: block; }
.mb-store-symbol svg { width: 23px; height: 27px; }
.mb-hero-phone { width: 100%; max-width: 300px; justify-self: center; padding: 10px 44px; border-radius: 26px; background: #e5f5ff; box-shadow: 0 12px 45px rgb(25 61 104 / 8%); }
.mb-original { width: 100%; object-fit: contain; }
.mb-reference-caption, .mb-demo-caption { color: #596680; font-size: 10px; line-height: 1.4; text-align: center; padding-top: 8px; }
.mb-hero-aside { padding-bottom: 20px; min-width: 0; }
.mb-hero .mb-store { min-height: 51px; padding: 7px 12px; }
.mb-hero .mb-store strong { font-size: 21px; }
.mb-hero .mb-store small { font-size: 9px; }
.mb-site .mb-hero-quote { font-family: Georgia, serif; font-size: 34px; line-height: 1.13; font-style: italic; color: var(--mb-ink); margin-bottom: 28px; text-wrap: balance; }
.mb-hero-aside ul { list-style: none; text-transform: uppercase; letter-spacing: .18em; font-size: 13px; line-height: 2.1; }
.mb-hero-aside ul::before { content: ''; display: block; width: 30px; height: 1px; background: #899aad; margin-bottom: 18px; }
.mb-section { padding-block: 46px; }
/* Separate product introduction from the detailed emotional-weather panel. */
.mb-product-overview { display: grid; grid-template-columns: minmax(0,1.8fr) minmax(0,4fr); gap: 58px; align-items: start; padding-block: 38px 40px; }
.mb-overview-copy { min-width: 0; }
.mb-overview-copy .mb-eyebrow { font-size: 12px; letter-spacing: .14em; margin-bottom: 8px; color: #748298; }
.mb-overview-copy h2 { font-size: clamp(28px,2.5vw,35px); line-height: 1.2; margin-bottom: 18px; letter-spacing: -.025em; }
.mb-overview-copy > p:not(.mb-eyebrow) { font-size: 17px; line-height: 1.35; color: #59667b; }
.mb-site .mb-overview-link { display: inline-flex; align-items: center; justify-content: center; gap: 16px; min-height: 44px; border-radius: 30px; padding: 10px 22px; margin-top: 16px; font-size: 15px; font-weight: 550; line-height: 1.4; color: var(--mb-ink); background: #e8f2fa; }
.mb-site .mb-overview-link:hover { color: #214e78; background: #dcecf8; }
.mb-overview-link .mb-icon { width: 19px; height: 19px; }
.mb-overview-features { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 32px; list-style: none; }
.mb-overview-feature { min-width: 0; }
.mb-overview-icon { display: grid; place-items: center; width: 70px; height: 70px; border-radius: 50%; margin-bottom: 12px; background: var(--mb-overview-tint); color: var(--mb-overview-color); }
.mb-overview-icon .mb-icon { width: 35px; height: 35px; stroke-width: 1.5; }
.mb-overview-feature h3 { font-size: 18px; line-height: 1.15; min-height: 42px; margin-bottom: 10px; letter-spacing: -.015em; }
.mb-overview-feature p { font-size: 16px; line-height: 1.3; color: #6d7b90; }
.mb-overview-weather { --mb-overview-color: #eea315; --mb-overview-tint: #fff5e0; }
.mb-overview-energy { --mb-overview-color: #7699f4; --mb-overview-tint: #eaf0ff; }
.mb-overview-stress { --mb-overview-color: #289abd; --mb-overview-tint: #e7f7fc; }
.mb-overview-explanations { --mb-overview-color: #319f84; --mb-overview-tint: #e6f8f5; }
@media (max-width: 1199px) {
  .mb-product-overview { gap: 30px; grid-template-columns: minmax(0,1.5fr) minmax(0,3fr); }
  .mb-overview-features { gap: 20px; }
  .mb-overview-copy h2 { font-size: 28px; }
  .mb-overview-feature h3 { font-size: 16px; min-height: 38px; }
  .mb-overview-feature p { font-size: 15px; }
}
@media (max-width: 899px) {
  .mb-product-overview { grid-template-columns: 1fr; gap: 30px; }
  .mb-overview-copy { max-width: 540px; }
  .mb-overview-feature h3 { font-size: 18px; min-height: 42px; }
  .mb-site #weather { scroll-margin-top: 170px; }
}
@media (max-width: 599px) {
  .mb-product-overview { padding-block: 32px; gap: 28px; }
  .mb-overview-copy h2 { font-size: 28px; }
  .mb-overview-copy > p:not(.mb-eyebrow) { font-size: 16px; line-height: 1.45; }
  .mb-overview-features { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 28px 22px; }
  .mb-overview-icon { width: 64px; height: 64px; }
  .mb-overview-icon .mb-icon { width: 32px; height: 32px; }
  .mb-overview-feature h3 { font-size: 17px; }
  .mb-overview-feature p { font-size: 15px; line-height: 1.4; }
}
.mb-copy { min-width: 0; }
.mb-copy h2 { font-size: clamp(28px,2.35vw,34px); line-height: 1.18; margin-bottom: 18px; text-wrap: balance; }
.mb-copy p { font-size: 16px; line-height: 1.65; margin-bottom: 16px; }
.mb-copy p:last-child { margin-bottom: 0; }
.mb-copy .mb-lead { font-size: 18px; font-weight: 550; line-height: 1.5; color: #526f99; margin-block: 20px; }
/* Appendix 2: readable native demonstration panel, never a scaled DOCX canvas. */
.mb-weather-layout { display: grid; grid-template-columns: minmax(0,.79fr) minmax(0,1.05fr); align-items: start; gap: 32px; }
.mb-weather-layout > .mb-copy { padding-top: 28px; }
.mb-weather-layout .mb-eyebrow { background: #eee8fc; color: var(--mb-accent); border-radius: 30px; padding: 7px 14px; margin-bottom: 24px; font-size: 13px; letter-spacing: 0; }
.mb-weather-layout .mb-copy h2 { font-size: clamp(32px,3.15vw,44px); line-height: 1.3; text-wrap: initial; margin-bottom: 26px; }
.mb-weather-layout .mb-copy .mb-lead { font-size: clamp(20px,1.9vw,25px); line-height: 1.5; color: var(--mb-accent); margin: 0 0 24px; }
.mb-weather-body p { font-size: clamp(17px,1.65vw,21px); line-height: 1.65; color: var(--mb-ink); margin-bottom: 32px; }
.mb-weather-demo { min-width: 0; padding: 20px 24px 16px; border: 1px solid #e6eaf3; border-radius: 18px; background: linear-gradient(135deg,#fcfdff,#f7f9fd); }
.mb-weather-heading { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 20px; }
.mb-weather-heading h3 { font-size: 13px; line-height: 1.45; color: #63728e; text-transform: uppercase; letter-spacing: 0; }
.mb-site .mb-weather-demo-label { flex-shrink: 0; max-width: 48%; font-size: 10px; line-height: 1.4; font-weight: 600; text-align: center; text-transform: uppercase; color: var(--mb-accent); background: #f0eafd; padding: 10px 13px; border-radius: 24px; }
.mb-weather-summary { display: grid; grid-template-columns: minmax(0,.83fr) minmax(0,1.17fr); align-items: center; gap: 28px; }
.mb-weather-art { align-self: stretch; min-height: 162px; overflow: hidden; border-radius: 11px; }
.mb-weather-art img { width: 100%; height: 100%; aspect-ratio: 1.39; object-fit: cover; }
.mb-weather-summary h4 { font-size: clamp(22px,2.15vw,30px); line-height: 1.2; margin-bottom: 12px; }
.mb-weather-summary p { font-size: 16px; line-height: 1.5; color: var(--mb-ink); }
.mb-site .mb-weather-trend { display: inline-flex; align-items: center; gap: 8px; color: #5367d5; background: #fff; border: 1px solid #dcd7ff; border-radius: 12px; padding: 8px 11px; font-size: 14px; line-height: 1.4; margin-top: 14px; }
.mb-weather-trend .mb-icon { width: 20px; height: 20px; }
.mb-weather-resources { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px; margin-top: 22px; }
.mb-weather-metric { min-width: 0; background: #fff; border: 1px solid #e7ebf2; border-radius: 14px; box-shadow: 0 3px 12px rgb(24 47 80 / 3%); }
.mb-weather-resources .mb-weather-metric { padding: 20px 18px 16px; }
.mb-weather-metric h4 { display: flex; align-items: center; gap: 9px; font-size: 14px; line-height: 1.4; }
.mb-weather-metric h4 .mb-icon { width: 23px; height: 23px; color: var(--mb-metric-fill); }
.mb-weather-resources h4 { color: #65738d; text-transform: uppercase; font-size: 13px; }
.mb-site .mb-weather-value { color: var(--mb-metric-text); font-variant-numeric: tabular-nums; font-weight: 650; letter-spacing: -.025em; }
.mb-weather-resources .mb-weather-value { font-size: 54px; line-height: 1.15; text-align: center; margin: 8px 0 24px; }
.mb-weather-meter { height: 14px; background: #eaedf2; border-radius: 20px; overflow: hidden; }
.mb-weather-meter span { display: block; height: 100%; border-radius: inherit; background: var(--mb-metric-fill); }
.mb-site .mb-weather-level { font-size: 13px; line-height: 1.4; text-align: center; color: #64728a; margin-top: 12px; }
.mb-site .mb-emotions-title { color: #65738d; font-size: 14px; text-transform: uppercase; margin: 24px 0 14px; }
.mb-weather-emotions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; list-style: none; }
.mb-weather-emotions .mb-weather-metric { padding: 15px 16px; }
.mb-weather-emotions .mb-weather-value { text-align: right; font-size: 27px; line-height: 1.2; margin: 3px 0 7px; }
.mb-weather-emotions .mb-weather-value span { font-size: .7em; }
.mb-weather-emotions .mb-weather-meter { height: 7px; }
.mb-weather-energy { --mb-metric-fill: #2eb85f; --mb-metric-text: #20994b; }
.mb-weather-stress { --mb-metric-fill: #f64364; --mb-metric-text: #e32e51; }
.mb-weather-joy { --mb-metric-fill: #ffbf24; --mb-metric-text: #a77300; }
.mb-weather-interest { --mb-metric-fill: #9760f6; --mb-metric-text: #8050d5; }
.mb-weather-calm { --mb-metric-fill: #439dfb; --mb-metric-text: #2579d1; }
.mb-weather-anger { --mb-metric-fill: #f84a67; --mb-metric-text: #d62c4b; }
.mb-weather-sadness { --mb-metric-fill: #6263f9; --mb-metric-text: #5051d6; }
.mb-weather-anxiety { --mb-metric-fill: #9258ec; --mb-metric-text: #7b43d2; }
.mb-weather-section .mb-science { margin: 30px 0 0; background: #fafbfe; }
@media (min-width: 1200px) {
  .mb-weather-section .mb-science h3 { font-size: 22px; }
  .mb-weather-section .mb-science h4 { font-size: 16px; }
  .mb-weather-section .mb-science p { font-size: 14px; }
  .mb-weather-section .mb-science-footer p { font-size: 15px; }
}
.mb-panel { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.1fr); gap: 70px; align-items: center; }
.mb-note { background: rgb(255 255 255 / 80%); border-radius: 16px; padding: 18px; }
.mb-note h3 { font-size: 15px; line-height: 1.4; }
.mb-note p { font-size: 13px; line-height: 1.5; margin-top: 8px; }
.mb-round-icon { background: #ebe5fc; color: #7659c4; display: grid; place-items: center; width: 38px; height: 38px; border-radius: 50%; flex-shrink: 0; }
.mb-round-icon .mb-icon { width: 21px; height: 21px; }
.mb-blue { color: #5089c7; background: #e7efff; }
.mb-note .mb-round-icon { margin-bottom: 12px; }
.mb-scene { background: #f1f6fc; border-radius: 24px; padding: 25px; min-width: 0; }
.mb-science { margin-block: 0 46px; border: 1px solid #e5ebf2; border-radius: 20px; background: #eef4fa; }
.mb-science-grid { display: grid; grid-template-columns: 1.3fr 1fr 1.2fr; padding: 25px; }
.mb-science-intro, .mb-science-book { display: flex; gap: 16px; padding: 0 20px; align-items: start; }
.mb-science-intro { padding-left: 0; }
.mb-science-book { border-left: 1px solid #d8e2ef; }
.mb-science-book:last-child { padding-right: 0; }
.mb-science p { font-size: 13px; line-height: 1.6; margin-top: 10px; }
.mb-science h3 { font-size: 20px; }
.mb-science h4 { font-size: 14px; }
.mb-book-spine { color: #6689b8; padding-top: 4px; }
.mb-science-footer { border-top: 1px solid #d8e2ef; padding: 18px 25px; display: grid; grid-template-columns: 2fr 1fr; gap: 30px; align-items: center; }
.mb-science-footer p { margin: 0; font-size: 13px; }
.mb-site .mb-text-link { display: flex; align-items: center; gap: 12px; color: #4b6d9b; font-size: 13px; font-weight: 600; }
.mb-text-link:hover { text-decoration: underline; text-underline-offset: 4px; }
.mb-download-section { position: relative; overflow: hidden; background: #56708b; }
.mb-download-backdrop img { object-position: center 55%; }
.mb-download-backdrop::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg, rgb(16 36 71 / 60%), rgb(16 36 71 / 38%) 40%, rgb(16 36 71 / 5%) 80%); }
.mb-site .mb-download-inner h2, .mb-site .mb-download-inner p { color: #fff; }
.mb-download-inner { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 40px; padding-block: 36px; }
.mb-download-inner > div:first-child { max-width: 470px; }
.mb-download-inner h2 { font-size: 28px; line-height: 1.2; margin-bottom: 10px; }
.mb-download-inner p { font-size: 14px; }
.mb-footer { background: #142b49; color: #edf3ff; }
.mb-footer-inner { display: flex; align-items: center; justify-content: space-between; gap: 26px; padding-block: 24px; }
.mb-footer .mb-brand { color: #fff; }
.mb-footer .mb-wordmark { font-size: 23px; }
.mb-footer .mb-tagline { font-size: 6px; }
.mb-footer .mb-brand-mark { width: 34px; height: 34px; background: white; border-radius: 50%; padding: 3px; }
.mb-footer nav { display: flex; flex-wrap: wrap; justify-content: center; gap: 6px 18px; font-size: 11px; }
.mb-footer nav a { padding-block: 6px; color: #d8e0ec; }
.mb-footer nav a:hover { color: white; text-decoration: underline; }
.mb-site .mb-copyright { color: #c4cfdf; font-size: 10px; white-space: nowrap; line-height: 1.7; }
@media (max-width: 1199px) {
  .mb-shell { width: calc(100% - 64px); }
  .mb-header-inner { gap: 16px; }
  .mb-nav { gap: 15px; font-size: 12px; }
  .mb-header-actions { gap: 12px; }
  .mb-site .mb-header-download { display: grid; place-items: center; min-width: 36px; min-height: 38px; padding: 5px; }
  .mb-header-download-label { display: none; }
  .mb-header-download-arrow { margin: 0; font-size: 20px; }
  .mb-hero-layout { grid-template-columns: minmax(0,1.6fr) minmax(185px,.85fr) minmax(165px,.7fr); gap: 20px; }
  .mb-site h1 { font-size: 42px; }
  .mb-hero-phone { max-width: 225px; padding-inline: 28px; }
  .mb-site .mb-hero-quote { font-size: 27px; }
  .mb-store { gap: 6px !important; padding-inline: 8px !important; }
  .mb-store strong { font-size: 16px; }
  .mb-panel { gap: 44px; }
  .mb-weather-layout { grid-template-columns: minmax(0,.72fr) minmax(0,1.1fr); gap: 26px; }
  .mb-weather-demo { padding: 18px 18px 16px; }
  .mb-weather-summary { gap: 18px; }
  .mb-weather-summary p { font-size: 14px; }
  .mb-weather-emotions .mb-weather-metric { padding: 13px 10px; }
  .mb-weather-metric h4 { gap: 6px; font-size: 12px; }
  .mb-weather-metric h4 .mb-icon { width: 20px; height: 20px; }
  .mb-science-intro, .mb-science-book { gap: 12px; padding-inline: 14px; }
  .mb-footer-inner { flex-wrap: wrap; }
  .mb-footer nav { order: 3; width: 100%; justify-content: start; }
}
@media (max-width: 899px) {
  .mb-shell { width: calc(100% - 48px); }
  .mb-header-inner { min-height: 80px; flex-wrap: wrap; row-gap: 0; padding-block: 12px 6px; }
  .mb-nav { order: 3; width: 100%; justify-content: space-between; margin-top: 10px; border-top: 1px solid var(--mb-line); }
  .mb-nav a { padding-block: 10px; }
  .mb-header-actions { margin-left: auto; }
  .mb-hero-layout { grid-template-columns: minmax(0,1.5fr) minmax(210px,1fr); padding-block: 30px; }
  .mb-hero-aside { display: flex; grid-column: 1 / -1; justify-content: space-between; align-items: center; gap: 28px; padding: 12px 0 0; }
  .mb-site .mb-hero-quote { margin: 0; font-size: 29px; }
  .mb-hero-aside ul { font-size: 11px; }
  .mb-hero-aside ul::before { display: none; }
  .mb-site h1 { font-size: 36px; }
  .mb-hero-phone { max-width: 260px; }
  .mb-weather-layout { grid-template-columns: 1fr; gap: 26px; }
  .mb-weather-layout > .mb-copy { padding-top: 0; }
  .mb-weather-layout .mb-copy h2 { max-width: 640px; }
  .mb-weather-body p { margin-bottom: 20px; }
  .mb-weather-summary h4 { font-size: 28px; }
  .mb-weather-summary p { font-size: 16px; }
  .mb-weather-metric h4 { font-size: 14px; }
  .mb-weather-emotions .mb-weather-metric { padding: 15px; }
  .mb-copy h2 { font-size: 29px; }
  .mb-copy p { font-size: 15px; }
  .mb-copy .mb-lead { font-size: 17px; }
  .mb-panel { gap: 30px; grid-template-columns: 1fr; }
  .mb-science-grid { grid-template-columns: 1fr 1fr; row-gap: 24px; }
  .mb-science-intro { grid-column: 1 / -1; padding: 0; }
  .mb-science-book:nth-child(2) { border: none; padding-left: 0; }
  .mb-science-footer { grid-template-columns: 1fr; gap: 18px; }
  .mb-download-inner { flex-direction: column; align-items: start; gap: 22px; }
  .mb-download-backdrop::after { background: linear-gradient(90deg,rgb(16 36 71 / 78%),rgb(16 36 71 / 50%)); }
}
@media (max-width: 599px) {
  .mb-shell { width: calc(100% - 40px); }
  .mb-preview-bar { padding: 7px 20px; justify-content: start; gap: 9px; font-size: 9px; }
  .mb-preview-bar span { max-width: 78%; }
  .mb-header-inner { padding-block: 12px 4px; gap: 8px; }
  .mb-site .mb-brand { gap: 8px; }
  .mb-wordmark { font-size: 24px; }
  .mb-brand-mark { width: 34px; height: 34px; }
  .mb-tagline { font-size: 5.6px; letter-spacing: .12em; }
  .mb-languages { font-size: 10px; }
  .mb-header-actions { gap: 7px; }
  .mb-languages a { min-width: 29px; min-height: 38px; }
  .mb-nav { display: grid; grid-template-columns: repeat(3,1fr); gap: 0 12px; font-size: 12px; margin-top: 10px; }
  .mb-nav a { min-height: 39px; display: flex; align-items: center; justify-content: center; }
  .mb-hero-layout { grid-template-columns: 1fr; gap: 28px; padding-block: 30px; }
  .mb-hero-copy { max-width: 480px; }
  .mb-site .mb-hero-tagline { font-size: 15px; margin-bottom: 19px; }
  .mb-site h1 { font-size: clamp(30px,8.5vw,43px); line-height: 1.16; }
  .mb-site .mb-hero-description { font-size: 15px; margin-block: 21px; }
  .mb-site .mb-button { font-size: 15px; min-height: 48px; }
  .mb-hero .mb-stores, .mb-stores { gap: 8px; }
  .mb-site .mb-store { min-height: 43px; padding: 6px 9px !important; gap: 6px !important; }
  .mb-store strong { font-size: 15px; }
  .mb-store-symbol svg { width: 21px; height: 25px; }
  .mb-hero-phone { width: 245px; padding-inline: 28px; }
  .mb-site .mb-hero-quote { font-size: 25px; }
  .mb-hero-aside { gap: 18px; }
  .mb-hero-aside ul { font-size: 10px; }
  .mb-hero .mb-store strong { font-size: 15px; }
  .mb-hero-backdrop img { object-position: 84% center; }
  .mb-hero-backdrop::after { background: linear-gradient(180deg,rgb(255 255 255 / 92%),rgb(255 255 255 / 65%) 42%,rgb(255 255 255 / 90%)); }
  .mb-section { padding-block: 36px; }
  .mb-weather-layout { grid-template-columns: 1fr; gap: 24px; }
  .mb-weather-layout .mb-eyebrow { font-size: 11px; margin-bottom: 20px; }
  .mb-weather-layout .mb-copy h2 { font-size: 31px; line-height: 1.25; margin-bottom: 20px; }
  .mb-weather-layout .mb-copy .mb-lead { font-size: 20px; }
  .mb-weather-body p { font-size: 16px; }
  .mb-weather-demo { padding: 16px 14px; }
  .mb-weather-heading { flex-direction: column; align-items: flex-start; gap: 9px; }
  .mb-site .mb-weather-demo-label { max-width: none; padding: 6px 10px; font-size: 9px; }
  .mb-weather-summary { grid-template-columns: 1fr; gap: 18px; }
  .mb-weather-art { min-height: 0; }
  .mb-weather-art img { max-height: 230px; }
  .mb-weather-summary h4 { font-size: 25px; }
  .mb-weather-resources { gap: 10px; }
  .mb-weather-resources .mb-weather-metric { padding: 14px 10px; }
  .mb-weather-resources h4 { font-size: 11px; align-items: flex-start; min-height: 32px; }
  .mb-weather-resources .mb-weather-value { font-size: 40px; margin: 8px 0 17px; }
  .mb-weather-meter { height: 10px; }
  .mb-site .mb-weather-level { font-size: 11px; }
  .mb-weather-emotions { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; }
  .mb-weather-emotions .mb-weather-metric { padding: 13px 10px; }
  .mb-weather-emotions h4 { font-size: 12px; gap: 6px; }
  .mb-weather-section .mb-science { margin-top: 24px; }
  .mb-copy h2 { font-size: 30px; margin-bottom: 20px; }
  .mb-copy p { font-size: 16px; }
  .mb-copy .mb-lead { font-size: 18px; }
  .mb-science { margin-bottom: 36px; }
  .mb-science-grid { padding: 22px 18px; grid-template-columns: 1fr; gap: 20px; }
  .mb-science-intro, .mb-science-book { padding: 0; border: none; }
  .mb-science-book, .mb-science-book:nth-child(2) { border-top: 1px solid #d8e2ef; padding-top: 20px; }
  .mb-science-footer { padding: 20px 18px; }
  .mb-science h3 { font-size: 18px; }
  .mb-download-inner { padding-block: 30px; }
  .mb-download-inner h2 { font-size: 29px; }
  .mb-download-backdrop::after { background: rgb(16 36 71 / 68%); }
  .mb-footer-inner { align-items: start; gap: 22px; padding-block: 25px; }
  .mb-footer nav { order: 2; display: grid; grid-template-columns: 1fr 1fr; gap: 8px 20px; font-size: 11px; }
  .mb-footer .mb-copyright { order: 3; }
}
@media (max-width: 359px) {
  .mb-shell { width: calc(100% - 30px); }
  .mb-brand { gap: 7px !important; }
  .mb-wordmark { font-size: 23px; }
  .mb-tagline { font-size: 5px; }
  .mb-languages a { min-width: 22px; }
  .mb-nav { font-size: 9px; }
  .mb-copy h2, .mb-feature-main .mb-copy h2 { font-size: 28px; }
}
@media (max-width: 782px) { body.admin-bar .mb-header { top: 46px; } }
@media (max-width: 600px) { body.admin-bar .mb-header { top: 0; } }
@media (prefers-reduced-motion: no-preference) { html:has(.mb-site) { scroll-behavior: smooth; } }
@media print { .mb-header, .mb-preview-bar, .mb-footer { position: static; } .mb-site { color: #000; } .mb-feature-pair { display: block; } .mb-feature-card { break-inside: avoid; } }
/* Customer-selected Ask/Create strip: typography and interface remain native. */
.mb-feature-pair { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; border-radius: 22px; overflow: hidden; container-type: inline-size; }
.mb-feature-card { position: relative; min-width: 0; min-height: 27cqw; padding: 2.6cqw 2.9cqw; overflow: hidden; }
.mb-ask-card { background: linear-gradient(115deg,#f1f7fb,#f5f8fb 70%,#eef2f6); }
.mb-create-card { background: linear-gradient(115deg,#fcf7f6,#faf5f5); }
.mb-feature-copy { position: relative; z-index: 2; width: 60%; }
.mb-create-card .mb-feature-copy { width: 51%; }
.mb-feature-copy .mb-eyebrow { display: block; font-size: 1.12cqw; font-weight: 650; letter-spacing: .17em; line-height: 1.4; margin-bottom: .55cqw; color: #425c79; }
.mb-site .mb-feature-copy h2 { font-size: 2.78cqw; line-height: 1.04; letter-spacing: -.035em; margin-bottom: 1.65cqw; font-weight: 650; }
.mb-feature-copy > p:not(.mb-eyebrow) { color: #64748b; font-size: 1.31cqw; line-height: 1.35; }
.mb-site .mb-feature-link { display: inline-flex; align-items: center; gap: 12px; min-height: 40px; padding: .65cqw 1.85cqw; margin-top: 3.8cqw; border-radius: 30px; background: #dceefa; color: #214461; font-size: 1.23cqw; font-weight: 500; line-height: 1.4; }
.mb-site .mb-feature-link:hover { background: #cfe4f6; color: #183653; }
.mb-feature-link .mb-icon { width: 17px; height: 17px; }
.mb-create-card .mb-feature-link { margin-top: 1.4cqw; background: #e3edf8; }
.mb-chat-scene { position: absolute; width: 18cqw; height: 25.6cqw; right: 1.2cqw; bottom: 0; color: #233d59; font-family: Arial,sans-serif; }
.mb-chat-phone { position: absolute; inset: 0 .2cqw -3cqw 1cqw; border: .38cqw solid #080a0b; border-radius: 3.5cqw 3.5cqw 0 0; background: linear-gradient(135deg,#fff,#f3f6fc); box-shadow: 0 0 0 .17cqw #a6a8a5,0 0 0 .3cqw #dadcd9,-.6cqw .4cqw 1.8cqw #15213726; }
.mb-chat-status { display: flex; justify-content: space-between; align-items: center; padding: .9cqw 1.5cqw .65cqw; color: #10161d; font-size: .59cqw; font-weight: 700; }
.mb-chat-status svg { width: 2.4cqw; height: .7cqw; }
.mb-chat-header { display: flex; align-items: center; justify-content: space-between; gap: 1cqw; padding: .3cqw 1cqw .8cqw; border-bottom: 1px solid #e3ebf4; font-size: 1.14cqw; font-weight: 700; }
.mb-chat-profile .mb-icon { color: #508faf; width: 1.1cqw; height: 1.1cqw; }
.mb-chat-question { position: absolute; top: 5.5cqw; right: -.55cqw; width: 11.1cqw; border: 2px solid #fff; border-radius: 1cqw; background: linear-gradient(120deg,#bddcff,#dbeaff); padding: .9cqw 1cqw; font-size: .88cqw; line-height: 1.35; box-shadow: 0 .2cqw 1cqw #688fc414; }
.mb-chat-reply { position: absolute; top: 10.1cqw; left: 0; width: 15.9cqw; min-height: 12.2cqw; display: grid; grid-template-columns: 1.2cqw 1fr; gap: .55cqw; padding: .65cqw .7cqw .9cqw; background: #f6f8fcf5; border: 2px solid #fff; border-radius: 1cqw; box-shadow: -.3cqw .6cqw 1cqw #15213712; font-size: .81cqw; line-height: 1.43; }
.mb-chat-reply p { font-size: inherit; line-height: inherit; color: inherit; }
.mb-chat-reply ul { list-style: none; padding: 0; margin: 0; }
.mb-chat-reply li::before { content: '— '; }
.mb-chat-reply .mb-chat-advice-title { margin-top: 1.05cqw; font-weight: 700; }
.mb-chat-avatar { width: 1.1cqw; height: 1.1cqw; margin-top: .05cqw; border-radius: 50%; background: radial-gradient(circle at 67% 25%,#ffe1aa 12%,transparent 45%),linear-gradient(25deg,#79bae8 0 37%,#e5cef1 40% 53%,#ffd493 58%); }
.mb-chat-input { position: absolute; display: flex; align-items: center; gap: .6cqw; top: 22.75cqw; left: 1.1cqw; right: 1cqw; color: #8997ab; font-size: .68cqw; }
.mb-chat-input span:first-child { flex: 1; padding: .45cqw .7cqw; background: white; border: 1px solid #d5dfed; border-radius: 30px; }
.mb-create-collage { position: absolute; right: 2cqw; top: 1.8cqw; width: 21cqw; height: 23.8cqw; }
.mb-create-travel { position: absolute; top: .2cqw; left: .5cqw; width: 12.6cqw; height: 12.6cqw; transform: rotate(-9deg); }
.mb-create-poster { position: absolute; bottom: .1cqw; right: .8cqw; width: 16.8cqw; height: 12.6cqw; transform: rotate(5deg); }
.mb-create-travel, .mb-create-poster { overflow: hidden; border: 2px solid white; border-radius: 1.05cqw; box-shadow: 0 .8cqw 1.8cqw #21395428; }
.mb-create-collage img { width: 100%; height: 100%; object-fit: cover; }
.mb-create-travel img { object-position: 60% 45%; }
.mb-create-poster img { object-position: center; }
.mb-site .mb-create-prompt { position: absolute; top: 5.1cqw; right: 0; z-index: 2; width: 11.8cqw; padding: .95cqw 1.3cqw; border: 2px solid #fff; border-radius: 1.05cqw; background: linear-gradient(120deg,#e4f2ff,#eff6ff); box-shadow: 0 .3cqw .8cqw #6b8fb714; color: #365271; font-size: 1.02cqw; line-height: 1.38; text-align: center; }
.mb-create-play { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%) rotate(-5deg); display: grid; place-items: center; width: 3.8cqw; height: 3.8cqw; border: 2px solid #fffc; border-radius: 50%; color: #fff; background: #173344bb; box-shadow: 0 2px 4px #14293d35; }
.mb-create-play svg { width: 1.55cqw; height: 1.7cqw; margin-left: .2cqw; }
@media (max-width: 1099px) and (min-width: 900px) {
 .mb-feature-card { min-height: 30cqw; }
 .mb-site .mb-feature-copy h2 { font-size: 2.65cqw; }
 .mb-feature-copy > p:not(.mb-eyebrow) { font-size: 1.45cqw; }
 .mb-site .mb-feature-link { font-size: 1.45cqw; padding: 8px 17px; }
 .mb-chat-scene { height: 27cqw; }
 .mb-create-collage { top: 3cqw; }
}
@media (max-width: 899px) {
 .mb-feature-pair { grid-template-columns: 1fr; }
 .mb-feature-card { min-height: 54cqw; padding: 5.2cqw 5.8cqw; }
 .mb-feature-copy .mb-eyebrow { font-size: 2.2cqw; margin-bottom: 1.1cqw; }
 .mb-site .mb-feature-copy h2 { font-size: 5.5cqw; margin-bottom: 3.3cqw; }
 .mb-feature-copy > p:not(.mb-eyebrow) { font-size: 2.6cqw; }
 .mb-site .mb-feature-link { font-size: 2.5cqw; padding: 1.3cqw 3.7cqw; margin-top: 7.6cqw; }
 .mb-create-card .mb-feature-link { margin-top: 2.8cqw; }
 .mb-chat-scene { width: 36cqw; height: 51.2cqw; right: 2.4cqw; }
 .mb-chat-phone { inset: 0 .4cqw -6cqw 2cqw; border-width: .76cqw; border-radius: 7cqw 7cqw 0 0; }
 .mb-chat-status { padding: 1.8cqw 3cqw 1.3cqw; font-size: 1.18cqw; }
 .mb-chat-status svg { width: 4.8cqw; height: 1.4cqw; }
 .mb-chat-header { padding: .6cqw 2cqw 1.6cqw; font-size: 2.28cqw; }
 .mb-chat-profile .mb-icon { width: 2.2cqw; height: 2.2cqw; }
 .mb-chat-question { top: 11cqw; right: -1.1cqw; width: 22.2cqw; border-radius: 2cqw; padding: 1.8cqw 2cqw; font-size: 1.76cqw; }
 .mb-chat-reply { top: 20.2cqw; width: 31.8cqw; min-height: 24.4cqw; grid-template-columns: 2.4cqw 1fr; gap: 1.1cqw; padding: 1.3cqw 1.4cqw 1.8cqw; border-radius: 2cqw; font-size: 1.62cqw; }
 .mb-chat-reply .mb-chat-advice-title { margin-top: 2.1cqw; }
 .mb-chat-avatar { width: 2.2cqw; height: 2.2cqw; }
 .mb-chat-input { top: 45.5cqw; left: 2.2cqw; right: 2cqw; font-size: 1.36cqw; }
 .mb-chat-input span:first-child { padding: .9cqw 1.4cqw; }
 .mb-create-collage { right: 4cqw; top: 3.6cqw; width: 42cqw; height: 47.6cqw; }
 .mb-create-travel { top: .4cqw; left: 1cqw; width: 25.2cqw; height: 25.2cqw; border-radius: 2.1cqw; }
 .mb-create-poster { bottom: .2cqw; right: 1.6cqw; width: 33.6cqw; height: 25.2cqw; border-radius: 2.1cqw; }
 .mb-site .mb-create-prompt { top: 10.2cqw; width: 23.6cqw; padding: 1.9cqw 2.6cqw; border-radius: 2.1cqw; font-size: 2.04cqw; }
 .mb-create-play { width: 7.6cqw; height: 7.6cqw; }
 .mb-create-play svg { width: 3.1cqw; height: 3.4cqw; }
 .mb-site #ask, .mb-site #create { scroll-margin-top: 170px; }
}
@media (max-width: 599px) {
 .mb-feature-card { min-height: 0; padding: 28px 24px 0; }
 .mb-feature-copy, .mb-create-card .mb-feature-copy { width: 100%; }
 .mb-feature-copy .mb-eyebrow { font-size: 12px; margin-bottom: 10px; }
 .mb-site .mb-feature-copy h2 { font-size: 30px; margin-bottom: 20px; }
 .mb-feature-copy > p:not(.mb-eyebrow) { font-size: 16px; line-height: 1.45; }
 .mb-site .mb-feature-link, .mb-create-card .mb-feature-link { font-size: 16px; min-height: 44px; padding: 9px 22px; margin-top: 24px; }
 .mb-chat-scene { position: relative; width: 260px; height: 372px; right: auto; margin: 30px auto 0; }
 .mb-chat-phone { inset: 0 9px -28px 18px; border-width: 5px; border-radius: 44px 44px 0 0; }
 .mb-chat-status { padding: 14px 21px 10px; font-size: 9px; }
 .mb-chat-status svg { width: 35px; height: 11px; }
 .mb-chat-header { padding: 5px 12px 13px; font-size: 18px; }
 .mb-chat-profile .mb-icon { width: 18px; height: 18px; }
 .mb-chat-question { top: 80px; right: 0; width: 166px; padding: 13px 15px; border-radius: 14px; font-size: 13px; }
 .mb-chat-reply { top: 153px; width: 233px; min-height: 181px; grid-template-columns: 17px 1fr; gap: 8px; padding: 10px 11px 14px; border-radius: 14px; font-size: 12px; }
 .mb-chat-reply .mb-chat-advice-title { margin-top: 15px; }
 .mb-chat-avatar { width: 16px; height: 16px; }
 .mb-chat-input { top: 342px; left: 13px; right: 12px; font-size: 10px; }
 .mb-chat-input span:first-child { padding: 7px 10px; }
 .mb-create-collage { position: relative; width: 280px; max-width: 100%; height: 320px; right: auto; top: auto; margin: 32px auto 24px; }
 .mb-create-travel { top: 4px; left: 5px; width: 170px; height: 170px; border-radius: 14px; }
 .mb-create-poster { bottom: 0; right: 5px; width: 226px; height: 170px; border-radius: 14px; }
 .mb-site .mb-create-prompt { top: 73px; right: -4px; width: 162px; padding: 12px 15px; border-radius: 14px; font-size: 14px; }
 .mb-create-play { width: 52px; height: 52px; }
 .mb-create-play svg { width: 21px; height: 23px; }
}

/* Customer-selected Events / Together composition, 12 September 2026. */
.mb-events-section { container-type: inline-size; display: grid; grid-template-columns: minmax(0,28%) minmax(0,25%) minmax(0,41%); gap: 3%; align-items: start; padding-block: 26px 48px; }
.mb-events-story { padding-top: .8cqw; }
.mb-events-section h2 { font-size: 2.65cqw; line-height: 1.08; letter-spacing: -.035em; margin: 0 0 1.35cqw; }
.mb-events-story > p, .mb-together-copy > p { font-size: 1.3cqw; line-height: 1.25; color: #435167; }
.mb-site .mb-life-link { display: inline-flex; align-items: center; gap: 1.05cqw; min-height: 3.1cqw; padding: .55cqw 1.9cqw; margin-top: 2cqw; border-radius: 100px; background: #e4f1fb; color: #21425f; font-size: 1.3cqw; line-height: 1.35; }
.mb-life-link .mb-icon { width: 1.3cqw; height: 1.3cqw; }
.mb-site .mb-life-link:hover { background: #d2e8f8; color: #102447; }
.mb-calendar { margin: .4cqw 0 0; padding: 1cqw .75cqw .9cqw; border: 1px solid #f2f4f8; border-radius: 1.35cqw; background: linear-gradient(125deg,#fff,#f9fbfe); box-shadow: 0 .8cqw 1.8cqw #1b35541a; }
.mb-calendar-month { display: flex; align-items: center; justify-content: space-between; padding: 0 1.05cqw; font-size: 1.06cqw; font-weight: 650; color: #354960; }
.mb-calendar-month .mb-icon { width: 1cqw; height: 1cqw; color: #7b8da6; }
.mb-site .mb-calendar-week { width: 100%; table-layout: fixed; border: 0; border-collapse: collapse; margin: 1cqw 0 .55cqw; background: transparent; }
.mb-site .mb-calendar-week thead, .mb-site .mb-calendar-week tbody, .mb-site .mb-calendar-week tr { border: 0; background: transparent; }
.mb-site .mb-calendar-week th, .mb-site .mb-calendar-week td { width: 14.285%; padding: 0; border: 0 !important; background: transparent; text-align: center; vertical-align: middle; }
.mb-site .mb-calendar-week th { padding-bottom: .6cqw; color: #8a97ac; font-size: .8cqw; font-weight: 550; line-height: 1.4; }
.mb-site .mb-calendar-week td { color: #22364f; font-size: 1cqw; font-weight: 550; }
.mb-calendar-week td > span { display: grid; place-items: center; width: 2.35cqw; height: 2.35cqw; margin-inline: auto; }
.mb-calendar-week .mb-calendar-selected { color: #fff; border-radius: 50%; background: #237bbd; box-shadow: inset 0 0 0 2px #b5d7f155; }
.mb-calendar-week td::after { content: ''; display: block; width: 2px; height: 2px; border-radius: 50%; margin: .35cqw auto .25cqw; background: #c1ccdc; }
.mb-calendar-event { display: grid; grid-template-columns: 38% minmax(0,1fr); gap: 1.25cqw; padding: .8cqw; border: 1px solid #eaf0f6; border-radius: 1.1cqw; background: #fff; box-shadow: 0 .2cqw .65cqw #243e6010; }
.mb-calendar-photo { overflow: hidden; border-radius: .8cqw; aspect-ratio: 1; }
.mb-calendar-photo img { width: 100%; height: 100%; object-fit: cover; object-position: 60% 45%; }
.mb-calendar-details { padding-top: .25cqw; }
.mb-calendar-details h3 { font-size: 1.3cqw; line-height: 1.2; font-weight: 650; margin-bottom: .5cqw; }
.mb-calendar-time, .mb-calendar-mood { display: flex; align-items: flex-start; gap: .55cqw; }
.mb-calendar-details .mb-calendar-time { font-size: .9cqw; color: #8a96aa; line-height: 1.4; }
.mb-calendar-time > .mb-icon { width: .9cqw; height: .9cqw; margin-top: .15cqw; }
.mb-calendar-details .mb-calendar-mood { margin-top: 1.25cqw; color: #7f8ca0; font-size: .86cqw; line-height: 1.4; }
.mb-calendar-energy { display: grid; place-items: center; flex-shrink: 0; width: .96cqw; height: .96cqw; margin-top: .14cqw; border: 1.5px solid #31a777; color: #31a777; border-radius: 50%; }
.mb-calendar-energy .mb-icon { width: .6cqw; height: .6cqw; }
.mb-together { position: relative; overflow: hidden; min-height: 21.6cqw; border-radius: 1.35cqw; }
.mb-together-photo { position: absolute; inset: 0; }
.mb-together-photo img { width: 100%; height: 100%; object-fit: cover; object-position: right center; }
.mb-together-photo::after { content: ''; position: absolute; inset: 0; background: linear-gradient(90deg,#fff 0%,#fffffff7 33%,#ffffffd6 44%,#ffffff30 58%,#ffffff00 68%); }
.mb-together-copy { position: relative; width: 58%; padding: .8cqw 0 1.2cqw .9cqw; }
.mb-together-copy h2 { max-width: 15cqw; }
.mb-together-copy .mb-life-link { margin-top: 1.9cqw; }
@media (max-width: 899px) {
  .mb-events-section { grid-template-columns: minmax(0,1fr) minmax(0,.9fr); column-gap: 6%; row-gap: 36px; padding-block: 24px 40px; }
  .mb-events-story { padding-top: 4px; }
  .mb-events-section h2 { font-size: 34px; margin-bottom: 20px; }
  .mb-events-story > p, .mb-together-copy > p { font-size: 17px; line-height: 1.4; }
  .mb-site .mb-life-link { gap: 14px; min-height: 44px; padding: 10px 23px; margin-top: 24px; font-size: 17px; }
  .mb-life-link .mb-icon { width: 18px; height: 18px; }
  .mb-calendar { margin-top: 0; padding: 16px 12px 13px; border-radius: 19px; }
  .mb-calendar-month { padding-inline: 12px; font-size: 16px; }
  .mb-calendar-month .mb-icon { width: 16px; height: 16px; }
  .mb-site .mb-calendar-week { margin: 15px 0 10px; }
  .mb-site .mb-calendar-week th { font-size: 12px; padding-bottom: 8px; }
  .mb-site .mb-calendar-week td { font-size: 15px; }
  .mb-calendar-week td > span { width: 34px; height: 34px; }
  .mb-calendar-week td::after { margin: 5px auto 3px; }
  .mb-calendar-event { gap: 15px; padding: 10px; border-radius: 15px; }
  .mb-calendar-photo { border-radius: 10px; }
  .mb-calendar-details { padding-top: 3px; }
  .mb-calendar-details h3 { font-size: 18px; margin-bottom: 7px; }
  .mb-calendar-time, .mb-calendar-mood { gap: 7px; }
  .mb-calendar-details .mb-calendar-time { font-size: 13px; }
  .mb-calendar-time > .mb-icon { width: 13px; height: 13px; margin-top: 2px; }
  .mb-calendar-details .mb-calendar-mood { margin-top: 16px; font-size: 12px; }
  .mb-calendar-energy { width: 14px; height: 14px; margin-top: 2px; }
  .mb-calendar-energy .mb-icon { width: 9px; height: 9px; }
  .mb-together { grid-column: 1 / -1; min-height: 330px; border-radius: 20px; }
  .mb-together-copy { width: 46%; padding: 20px 0 24px; }
  .mb-together-copy h2 { max-width: 260px; }
  .mb-together-copy .mb-life-link { margin-top: 24px; }
}
@media (max-width: 599px) {
  .mb-events-section { grid-template-columns: minmax(0,1fr); gap: 28px; padding-block: 16px 36px; }
  .mb-events-section h2 { font-size: 30px; }
  .mb-events-story > p, .mb-together-copy > p { font-size: 16px; }
  .mb-site .mb-life-link { font-size: 16px; }
  .mb-calendar { width: 100%; max-width: 390px; justify-self: center; }
  .mb-calendar-event { gap: 14px; }
  .mb-calendar-details h3 { font-size: 18px; }
  .mb-together { min-height: 0; padding-bottom: 245px; background: #fbf4ec; }
  .mb-together-copy { width: 100%; padding: 24px 20px 0; }
  .mb-together-copy h2 { max-width: none; }
  .mb-together-photo { top: auto; height: 285px; }
  .mb-together-photo::after { background: linear-gradient(180deg,#fbf4ec, #fbf4ec00 35%); }
  .mb-together-photo img { object-position: right center; }
}

/* Customer-selected methodology strip, immediately before downloads. */
.mb-methodology-section { container-type: inline-size; margin-block: 0 14px; }
.mb-methodology-card { position: relative; isolation: isolate; display: grid; grid-template-columns: minmax(0,39fr) minmax(0,16fr) minmax(0,11fr) minmax(0,19fr); column-gap: 5%; align-items: center; padding: 1.55cqw 2.8cqw 1.15cqw; border-radius: 1.75cqw; background: radial-gradient(ellipse at 49% 75%,#f9fcffb0,transparent 57%),linear-gradient(105deg,#eef7fd,#e3f0fb); overflow: hidden; }
.mb-methodology-lines { position: absolute; z-index: -1; inset: 0; width: 100%; height: 100%; fill: none; stroke: #fff; stroke-width: 1; opacity: .32; pointer-events: none; }
.mb-methodology-copy h2 { margin: 0 0 1.05cqw; font-size: 2.65cqw; line-height: 1.1; letter-spacing: -.035em; }
.mb-methodology-copy > p { color: #738399; font-size: 1.3cqw; line-height: 1.2; }
.mb-site .mb-methodology-link { display: inline-flex; align-items: center; gap: 1cqw; margin-top: .7cqw; padding: .75cqw 1.95cqw; border-radius: 100px; background: #d8ebfa; color: #2d506e; font-size: 1.3cqw; line-height: 1.3; }
.mb-methodology-link .mb-icon { width: 1.3cqw; height: 1.3cqw; }
.mb-site .mb-methodology-link:hover { color: #102447; background: #c9e3f7; }
.mb-site .mb-methodology-flow { margin: 0; padding: 0; list-style: none; text-align: center; color: #344e6c; font-size: 1.07cqw; line-height: 1.3; }
.mb-methodology-flow li { position: relative; margin: 0 auto 1.05cqw; padding: 0; }
.mb-methodology-flow li:first-child { width: 86%; }
.mb-methodology-flow li:nth-child(2) { width: 96%; }
.mb-methodology-flow li:last-child { margin-bottom: 0; }
.mb-methodology-flow li > span { display: block; padding: .85cqw .9cqw; border-radius: 100px; background: #d6e8f9d9; }
.mb-methodology-flow li:not(:last-child)::after { content: ''; position: absolute; left: 50%; bottom: -.75cqw; width: .45cqw; height: .45cqw; border-right: 1.5px solid #739ac0; border-bottom: 1.5px solid #739ac0; transform: translateX(-50%) rotate(45deg); }
.mb-methodology-flow li:not(:last-child)::before { content: ''; position: absolute; left: 50%; bottom: -.7cqw; height: .65cqw; width: 1.5px; background: #739ac0; transform: translateX(-50%); }
.mb-methodology-version { text-align: center; align-self: start; padding-top: 1.1cqw; }
.mb-methodology-version > p { color: #8db6e4; font-size: 5cqw; line-height: 1.05; font-weight: 350; letter-spacing: -.04em; }
.mb-methodology-version > span { display: block; margin-top: .65cqw; color: #7d90af; font-size: 1.05cqw; line-height: 1.45; letter-spacing: .12em; text-transform: uppercase; }
.mb-site .mb-methodology-quote { align-self: start; padding: 1.6cqw 0 0; margin: 0; border: 0; }
.mb-methodology-quote p { color: #7d8ca2; font-size: 1.45cqw; line-height: 1.35; font-style: italic; }
@media (max-width: 899px) {
  .mb-methodology-card { grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 28px 36px; padding: 28px; border-radius: 24px; }
  .mb-methodology-copy { grid-row: span 2; }
  .mb-methodology-copy h2 { font-size: 32px; margin-bottom: 16px; }
  .mb-methodology-copy > p { font-size: 17px; line-height: 1.4; }
  .mb-site .mb-methodology-link { gap: 12px; min-height: 44px; padding: 10px 22px; margin-top: 20px; font-size: 17px; }
  .mb-methodology-link .mb-icon { width: 18px; height: 18px; }
  .mb-site .mb-methodology-flow { grid-column: 2; width: 240px; max-width: 100%; justify-self: center; font-size: 15px; }
  .mb-methodology-flow li { margin-bottom: 17px; }
  .mb-methodology-flow li > span { padding: 12px 16px; }
  .mb-methodology-flow li:not(:last-child)::after { bottom: -11px; width: 6px; height: 6px; }
  .mb-methodology-flow li:not(:last-child)::before { bottom: -11px; height: 11px; }
  .mb-methodology-version { grid-column: 2; padding: 0; }
  .mb-methodology-version > p { font-size: 66px; }
  .mb-methodology-version > span { margin-top: 7px; font-size: 13px; }
  .mb-site .mb-methodology-quote { grid-column: 1 / -1; padding: 0; text-align: center; }
  .mb-methodology-quote p { font-size: 19px; max-width: 580px; margin: 0 auto; }
}
@media (max-width: 599px) {
  .mb-methodology-section { margin-bottom: 16px; }
  .mb-methodology-card { grid-template-columns: minmax(0,1fr); gap: 28px; padding: 26px 24px; border-radius: 22px; }
  .mb-methodology-copy { grid-row: auto; }
  .mb-methodology-copy h2 { font-size: 30px; }
  .mb-methodology-copy > p { font-size: 16px; }
  .mb-site .mb-methodology-link { font-size: 16px; }
  .mb-site .mb-methodology-flow, .mb-methodology-version, .mb-site .mb-methodology-quote { grid-column: 1; }
  .mb-methodology-quote p { font-size: 18px; }
}
