/* Approved Mesa desktop/mobile layouts; full screenshots retain their aspect ratios. */
body[data-analytics-page="mesa_marathon_2027"] {
  --mesa-sky: #d0d3d4;
  --mesa-berry: #890c58;
}
.mesa-brand { width: 216px; height: auto; }
.mesa-section { padding: 64px 5.556%; }
.mesa-stack { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; min-width: 0; }
.mesa-eyebrow { font-size: 12px; font-weight: 500; line-height: 1.4; letter-spacing: 1.2px; text-transform: uppercase; }
.mesa-partnership { color: var(--mesa-berry); }
.mesa-editorial { display: flex; flex-direction: column; gap: 16px; }
.mesa-editorial :is(h3,dt) { font-size: 28px; line-height: 1.2; letter-spacing: -.025em; }
.mesa-editorial p { font-size: 18px; line-height: 1.5; }
body[data-analytics-page="mesa_marathon_2027"] :is(h1,h2) { letter-spacing: -.025em; }
.mesa-section h2 { font-size: 48px; line-height: 1.15; }
.mesa-hero { display: grid; grid-template-columns: minmax(0,760fr) minmax(0,456fr); gap: 64px; align-items: center; }
.mesa-hero h1 { font-size: 72px; line-height: 1.07; }
.mesa-official { font-size: 18px; }
.mesa-intro { font-size: 22px; }
.mesa-caption { font-size: 13px; line-height: 1.4; }
.mesa-download { min-width: 244px; }
.mesa-daily { margin: 0; display: flex; flex-direction: column; gap: 16px; align-items: center; text-align: center; }
.mesa-daily img { width: 260px; height: auto; border-radius: 14px; }
.mesa-offer { background: var(--lp-night); color: var(--lp-rose); display: grid; grid-template-columns: 250px minmax(0,1fr); gap: 64px; align-items: center; padding-block: 48px; }
.mesa-year { font-family: Montserrat, sans-serif; font-size: 88px; font-weight: 500; line-height: 1.1; letter-spacing: -.025em; }
.mesa-offer h2 { font-size: 36px; }
.mesa-offer p:not(.mesa-year) { font-size: 20px; }
.mesa-training, .mesa-product { display: flex; flex-direction: column; align-items: flex-start; gap: 40px; background: var(--lp-paper); }
.mesa-paths { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 32px; width: 100%; }
.mesa-path { padding: 32px; background: var(--lp-rose); }
.mesa-path:nth-child(2) { background: var(--mesa-sky); }
.mesa-product h2 { font-size: 52px; line-height: 1.1; }
.mesa-examples { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 64px; width: 100%; }
.mesa-screen { background: var(--mesa-sky); width: 100%; padding: 32px 24px; display: flex; justify-content: center; }
.mesa-examples article:nth-child(2) .mesa-screen { background: var(--lp-rose); }
.mesa-screen img { width: 280px; height: auto; border-radius: 14px; }
.mesa-questions { display: grid; grid-template-columns: minmax(0,400fr) minmax(0,800fr); gap: 80px; }
.mesa-questions dl { display: flex; flex-direction: column; gap: 32px; margin: 0; }
.mesa-questions dt { font-size: 20px; line-height: 1.4; }
.mesa-questions dd { margin: 0; font-size: 16px; line-height: 1.5; }
.mesa-closing { background: var(--lp-night); color: var(--lp-rose); }
.mesa-closing > p:not(.mesa-eyebrow) { font-size: 22px; line-height: 1.5; }
body[data-analytics-page="mesa_marathon_2027"] .mesa-closing .lp-button { background: var(--lp-rose); color: var(--lp-night); }
body[data-analytics-page="mesa_marathon_2027"] a:hover { text-decoration: underline; text-underline-offset: 4px; }
@media (min-width: 701px) and (max-width: 1100px) {
  .mesa-hero { gap: 32px; grid-template-columns: minmax(0,1fr) 260px; }
  .mesa-hero h1 { font-size: clamp(42px,5vw,60px); }
  .mesa-intro { font-size: 20px; }
  .mesa-offer { grid-template-columns: 180px minmax(0,1fr); gap: 32px; }
  .mesa-examples, .mesa-questions { gap: 32px; }
  .mesa-section h2 { font-size: 38px; }
  .mesa-brand { width: 180px; }
}
@media (max-width: 700px) {
  .mesa-brand { width: 160px; }
  .mesa-section { padding: 48px 24px; }
  .mesa-hero { display: flex; flex-direction: column; gap: 40px; padding-block: 40px; }
  .mesa-hero h1 { font-size: 42px; }
  .mesa-official { font-size: 16px; }
  .mesa-intro { font-size: 18px; }
  .mesa-download { width: 100%; min-width: 0; }
  .mesa-daily img, .mesa-screen img { width: 250px; }
  .mesa-offer { display: flex; flex-direction: column; align-items: flex-start; gap: 24px; padding-block: 40px; }
  .mesa-year { font-size: 64px; }
  .mesa-offer h2 { font-size: 28px; }
  .mesa-offer p:not(.mesa-year) { font-size: 17px; }
  .mesa-training h2 { font-size: 32px; }
  .mesa-paths, .mesa-examples { grid-template-columns: minmax(0,1fr); }
  .mesa-examples { gap: 48px; }
  .mesa-product h2, .mesa-questions h2, .mesa-closing h2 { font-size: 34px; }
  .mesa-questions { display: flex; flex-direction: column; gap: 40px; }
  .mesa-closing > p:not(.mesa-eyebrow) { font-size: 18px; }
  body[data-analytics-page="mesa_marathon_2027"] .lp-footer { min-height: 220px; padding-bottom: 32px; }
}
