/* Existing hero artwork, seven-size type ramp and semantic colors. */
html.vr-app #p-start .hero-next.home-session-carousel{display:block;padding:0!important;background:transparent;border:0;overflow:hidden;position:relative;min-width:0;max-width:100%}
.home-session-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-x:contain;width:100%}.home-session-track::-webkit-scrollbar{display:none}
.home-session-card{position:relative;flex:0 0 100%;min-width:0;box-sizing:border-box;scroll-snap-align:start;scroll-snap-stop:always;border-radius:16px;overflow:hidden;min-height:270px;background:var(--ui-surface);color:var(--ui-ink)}
.home-session-card[data-current=true]{outline:none}
.home-session-copy{position:relative;z-index:1;padding:28px 48px;max-width:72%;box-sizing:border-box}.home-session-card .hn-title{font-size:var(--type-28);font-weight:600;line-height:1.2;overflow-wrap:anywhere}.home-session-card .hn-sub{font-size:var(--type-14);line-height:1.5;margin:12px 0 20px}.home-session-pill{font-size:var(--type-12);border:1px solid currentColor;border-radius:99px;padding:4px 8px;display:inline-block;margin:0 0 12px}
.home-session-card.ui-home-has-art{background:var(--ui-on-primary);color:var(--ui-art)}.home-session-card .ui-home-hero-art{position:absolute;inset:0 0 0 42%;z-index:0;pointer-events:none}.home-session-card .ui-home-hero-art img{height:100%;width:100%;object-fit:cover}.home-session-card .ui-home-hero-art:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,var(--ui-on-primary),transparent 80%)}
.home-session-arrow{position:absolute;top:110px;width:44px;height:44px;border:1px solid var(--ui-line);border-radius:12px;background:var(--ui-surface);color:var(--ui-ink);font-size:var(--type-28);cursor:pointer;opacity:0;z-index:3}.home-session-arrow.is-prev{left:0}.home-session-arrow.is-next{right:0}.home-session-carousel:hover .home-session-arrow,.home-session-carousel:focus-within .home-session-arrow{opacity:1}.home-session-arrow:disabled{cursor:default}
.home-session-dots{display:flex;justify-content:safe center;overflow-x:auto;max-width:100%;scrollbar-width:none}.home-session-dots button{flex:0 0 44px;height:44px;padding:0;border:0;background:transparent;display:grid;place-items:center;cursor:pointer}.home-session-dots span{width:6px;height:6px;border-radius:50%;background:var(--ui-muted)}.home-session-dots [aria-pressed=true] span{background:var(--ui-accent)}
html.vr-app button.partner-button{min-width:44px;min-height:44px;border:1px solid var(--ui-line);border-radius:12px;padding:10px 16px;font-size:var(--type-14)}html.vr-app button.partner-button.ghost{background:var(--ui-surface);color:var(--ui-ink)}
@media(max-width:600px){.home-session-arrow,.home-session-carousel:hover .home-session-arrow{opacity:.5}.home-session-copy{max-width:84%;padding:24px 48px}.home-session-card{min-height:300px}}
@media(prefers-reduced-motion:reduce){.home-session-track{scroll-behavior:auto}}

html.vr-app .home-session-carousel .home-session-card .hn-title{color:inherit;letter-spacing:-.5px;line-height:1.2}
html.vr-app .home-session-carousel .home-session-card .hn-sub{color:inherit}
.home-session-status{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
html.vr-app :is(.partners-card,.partner-dialog,.partner-calendar-note) button.btn{min-height:44px;min-width:44px;border:1px solid var(--ui-line);border-radius:12px}

@media(max-width:600px){html.vr-app #p-start .home-session-carousel .home-session-arrow{opacity:.5}}

/* Exercise art uses its complete cream canvas, beside copy rather than behind it.
   A shared grid avoids ink gutters and gradients obscuring the movement. */
html.vr-app #p-start .hero-next.home-session-carousel .home-session-card.ui-home-has-art{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);align-items:stretch;background:var(--ui-surface);color:var(--ui-ink)}
html.vr-app #p-start .home-session-carousel .home-session-card.ui-home-has-art .home-session-copy{grid-column:1;grid-row:1;width:auto;max-width:none;padding:12px 8px 12px 46px;align-self:center}
html.vr-app #p-start .home-session-carousel .home-session-card .ui-home-hero-art{grid-column:2;grid-row:1;position:relative;inset:auto;width:100%;height:100%;min-height:112px;background:var(--ui-art);mask-image:none;-webkit-mask-image:none}
html.vr-app #p-start .home-session-carousel .ui-home-hero-art::after{display:none}
html.vr-app #p-start .home-session-carousel .ui-home-hero-art>.th-media.large{padding:6px;object-fit:contain;background:var(--ui-art)}
html.vr-app #p-start .home-session-carousel .home-session-arrow{top:34px;background:var(--ui-surface);border-color:var(--ui-line);opacity:1}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel){display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);min-height:160px;padding:0!important;background:var(--ui-surface);color:var(--ui-ink);border:1px solid var(--ui-line)}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)>.eyebrow,html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)::after{display:none}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)>.hn-row{grid-column:1;grid-row:1;align-self:center;padding:16px;gap:10px;min-width:0}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel) .hn-title{font-size:var(--type-20);color:var(--ui-ink);line-height:1.2;letter-spacing:-.5px}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel) .hn-sub{font-size:var(--type-14);color:var(--ui-muted);line-height:1.5;margin-top:6px}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)>.ui-home-hero-art{grid-column:2;grid-row:1;position:relative;inset:auto;width:100%;height:100%;mask-image:none;-webkit-mask-image:none;background:var(--ui-art)}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)>.ui-home-hero-art>.th-media.large{object-fit:contain;background:var(--ui-art);padding:8px}
html.vr-app #p-start .hero-next.ui-home-has-art:not(.home-session-carousel)>.df-week{grid-column:1/-1}

/* The heading owns date navigation; the amber frame belongs only to the selected date. */
html.vr-app #p-start .hero-next.home-session-carousel{border:1px solid var(--ui-line);border-radius:16px;background:var(--ui-surface)}
.home-calendar-heading{display:grid;grid-template-columns:44px minmax(0,1fr) 44px;align-items:center;gap:8px;padding:8px;background:var(--ui-surface);border-bottom:1px solid var(--ui-line)}
.home-calendar-heading>div{min-width:0;text-align:center}
html.vr-app #p-start .home-calendar-heading .eyebrow{display:block;margin:0 0 3px;font-size:var(--type-12);color:var(--ink-soft)!important;letter-spacing:.06em}
html.vr-app #p-start .home-calendar-heading .home-calendar-date{font-size:var(--type-14);font-weight:600;line-height:1.35;margin:0;color:var(--ink);overflow-wrap:anywhere}
html.vr-app #p-start .home-calendar-heading .home-session-arrow{position:static;width:44px;height:44px;min-width:44px;min-height:44px;opacity:1;border-radius:10px;line-height:1;padding:0}
html.vr-app #p-start .home-session-carousel .home-session-card{border-radius:0;min-height:148px;align-self:stretch}
html.vr-app #p-start .home-session-carousel .home-session-card .home-session-copy,
html.vr-app #p-start .home-session-carousel .home-session-card.ui-home-has-art .home-session-copy{max-width:none;padding:14px;width:100%;align-self:center}
html.vr-app #p-start .home-session-carousel .home-session-card.ui-home-has-art{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr)}
html.vr-app #p-start .home-session-carousel .home-session-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
html.vr-app #p-start .home-session-carousel .home-session-actions .btn{padding:8px 12px;font-size:var(--type-14);line-height:1.3;min-height:44px;white-space:normal}
html.vr-app #p-start .home-session-carousel .home-session-actions .btn{background:var(--ink);color:var(--card);border:1px solid var(--ink)}
html.vr-app #p-start .home-session-carousel .home-session-actions .btn.ghost{background:var(--card);color:var(--ink);border:1px solid var(--rule)}
html.vr-app #p-start .home-session-carousel .home-session-card .hn-sub{margin:5px 0;font-size:var(--type-12);line-height:1.35}
html.vr-app #p-start .home-session-carousel .home-completed-link{margin:8px 12px;max-width:calc(100% - 24px);white-space:normal}

/* Daylight: a calm next action and the same canonical dated selection model. */
html.vr-app #p-start .hero-next.home-session-carousel{border-color:var(--day-line);background:var(--day-surface);box-shadow:var(--day-shadow);overflow:hidden}
html.vr-app #p-start .home-calendar-heading{padding:5px 8px;background:transparent;border-bottom:1px solid var(--day-line)}
html.vr-app #p-start .home-calendar-heading .home-session-arrow{background:none;border:0;color:var(--day-ink);font-size:var(--type-20)}
html.vr-app #p-start .home-calendar-heading .eyebrow{display:none}
html.vr-app #p-start .home-calendar-heading .home-calendar-date{font-weight:400;color:var(--day-muted);font-size:var(--type-12)}
html.vr-app #p-start .home-session-carousel .home-session-card{min-height:170px;background:var(--day-surface)}
html.vr-app #p-start .home-session-carousel .home-session-card.ui-home-has-art{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr)}
html.vr-app #p-start .home-session-carousel .home-session-card .home-session-copy,
html.vr-app #p-start .home-session-carousel .home-session-card.ui-home-has-art .home-session-copy{padding:18px}
html.vr-app #p-start .home-session-carousel .dl-session-label{font:400 var(--type-12)/1.3 var(--sans);color:var(--day-muted);margin:0 0 8px;letter-spacing:0;text-transform:none}
html.vr-app #p-start .home-session-carousel .hn-title{font:600 var(--type-20)/1.2 var(--sans);letter-spacing:-.5px;color:var(--day-ink)}
html.vr-app #p-start .home-session-carousel .home-session-actions{margin-top:14px}
html.vr-app #p-start .home-session-carousel .home-session-actions .btn{background:var(--day-accent);border-color:var(--day-accent);color:var(--day-accent-ink);border-radius:10px;font-weight:600}
html.vr-app #p-start .home-session-carousel .home-session-actions .btn.ghost{background:transparent;border:1px solid var(--day-line);color:var(--day-ink)}
html.vr-app #p-start .dl-home-session-art{background:var(--day-soft);overflow:hidden}
html.vr-app #p-start .dl-home-session-art img.day-editorial{width:100%;height:100%;max-height:none;object-fit:cover;object-position:50% 35%;padding:0;border-radius:0;background:transparent}
html.vr-app #p-start .hero-next .df-week{gap:4px;padding:12px 10px;background:var(--day-surface);border-top:1px solid var(--day-line);margin:0}
html.vr-app #p-start .hero-next .df-week button{border-radius:9px;min-height:66px;padding:6px 0;background:transparent;border:1px solid transparent;color:var(--day-muted);box-shadow:none}
html.vr-app #p-start .hero-next .df-week button.is-selected{background:var(--day-accent);border-color:var(--day-accent);color:var(--day-accent-ink);box-shadow:none}
html.vr-app #p-start .hero-next .df-week button.is-selected :is(span,b,small,strong){color:var(--day-accent-ink)}
html.vr-app #p-start .hero-next .df-week button.is-today:not(.is-selected){border-color:var(--day-accent)}
