/* styles/72-academy-integration.css */
/* Home-only brand composition around the unchanged Academy presentation. */
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product){--ct-bg:#f7f8fa;--ct-surface:#fff;--ct-sunken:#f1f3f6;--ct-sunken-strong:#e9edf1;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-rule-strong:#b8bfc8;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-ring:#1f2328;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-green-soft:#e5f7e8;--ct-on-green:#fff}
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .lockup img{content:url("brand/CONTAKT_wordmark_primary.svg")}
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .band[data-theme="ink"]{--ct-bg:#f7f8fa;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-on-green:#fff;--ct-ring:#1f2328}
.ai-stage{--ai-paper:#f7f8fa;--ai-ink:#1f2328;--ai-club:#1f6f8b;background:var(--ai-paper);color:var(--ai-ink);padding:88px 0 96px;overflow:clip;scroll-margin-top:72px;outline:none}
.ai-wrap{width:min(1740px,calc(100% - 96px));margin-inline:auto}
.ai-stage :where(button,a,select){cursor:pointer}.ai-stage :where(button):disabled{cursor:default}
.ai-stage :where(button,a,select,input,textarea):focus-visible{outline:2px solid currentColor;outline-offset:4px}
.ai-heading{display:grid;grid-template-columns:1.4fr 1fr;align-items:center;gap:48px;margin-bottom:64px}
.ai-eyebrow{font:500 14px/1.5 var(--ct-font-text);letter-spacing:0;margin:0 0 22px;color:#626a73;display:flex;align-items:center;gap:12px}
.ai-eyebrow::before{content:"";width:28px;height:3px;background:#61ed6a;border-radius:2px}
.ai-heading h2,.ai-section-head h2{font:500 clamp(48px,5.3vw,82px)/1.07 var(--ct-font-display);letter-spacing:-.035em;margin:0;text-wrap:balance;color:var(--ai-ink)}
.ai-heading h2 span,.ai-section-head h2 span{color:#626a73}
.ai-heading-intro,.ai-section-head>p{font:400 17px/1.6 var(--ct-font-text);color:#626a73;max-width:455px;margin:28px 0 0}
.ai-org-bar{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:18px}
.ai-org-options{display:flex;gap:3px;border-bottom:1px solid #e1e4e8}
.ai-org-options button{border:0;background:transparent;color:#626a73;font:500 15px/1.4 var(--ct-font-text);padding:14px 18px;display:flex;align-items:center;gap:9px;border-bottom:2px solid transparent}
.ai-org-options button[aria-pressed=true]{color:#1f2328;border-bottom-color:#1e7b33}.ai-org-options button:hover{color:#1f2328}
.ai-org-dot{width:8px;height:8px;border-radius:50%;box-shadow:0 0 0 3px #fff1}
.ai-org-kind{font:400 11px/1.4 var(--ct-font-mono);color:#626a73;margin-left:4px}
.ai-demo-label{font:400 12px/1.5 var(--ct-font-text);letter-spacing:0;color:#626a73;display:flex;align-items:center;gap:7px}
.ai-demo-label>span{width:5px;height:5px;border-radius:50%;background:#626a73}
.academy-scene:is(.ai-schedule,.ai-lesson-list,.ai-drafts,.ai-people,.ai-config-preview),.ai-overlay-root{--club1:var(--ai-club,#1f6f8b);--club1-ink:color-mix(in srgb,var(--ai-club,#1f6f8b) 85%,#1f2328);--club1-soft:color-mix(in srgb,var(--ai-club,#1f6f8b) 10%,#f9f8f4);--club1-line:color-mix(in srgb,var(--ai-club,#1f6f8b) 26%,#f9f8f4)}
.ai-schedule{padding:24px 0 0;background:transparent;border-radius:0;box-shadow:none;border-top:1px solid #e1e4e8;min-width:0}
.ai-schedule-top{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:20px}
.ai-small-cap{font:500 12px/1.5 var(--font-sans);letter-spacing:0;color:var(--muted-foreground);display:block;margin-bottom:4px}
.ai-schedule-top h3{font:600 21px/1.2 var(--font-sans);letter-spacing:-.028em;margin:0}
.ai-week{font:400 11px/1.5 var(--font-mono);color:var(--muted-foreground)}
.ai-controls{display:flex;align-items:center;gap:14px;flex-wrap:wrap;padding-bottom:16px;border-bottom:1px solid var(--border);margin-bottom:14px}
.ai-segment{display:flex;gap:2px;padding:3px;background:var(--surface);border:1px solid var(--border);border-radius:6px;margin-right:auto}
.ai-segment button{min-height:34px;padding:5px 12px;border:0;border-radius:4px;background:transparent;color:var(--muted-foreground);font-weight:500;font-size:12px}
.ai-segment button[aria-pressed=true]{background:var(--card);color:var(--foreground);box-shadow:0 1px 3px #0001}
.ai-control-label{display:flex;align-items:center;gap:7px;font-size:11px;color:var(--muted-foreground)}
.ai-control-label select{font-size:12px;min-height:36px;border:1px solid var(--border);border-radius:5px;background:var(--card);padding:5px 24px 5px 9px;color:var(--foreground);max-width:155px}
.ai-schedule .csw,.ai-schedule .lsw{font-size:13px}
.ai-schedule .csw-tl,.ai-schedule .lsw-tl{max-height:540px}
.ai-schedule-foot{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--border);margin-top:16px;padding:13px 0;color:var(--muted-foreground);font-size:11px}
.ai-schedule-foot button{display:flex;gap:6px;align-items:center;font:inherit;border:0;background:transparent;padding:7px;color:var(--muted-foreground);white-space:nowrap}
.ai-schedule-foot button:hover{color:var(--foreground)}
.ai-live-receipt{color:#626a73;font:400 12px/1.5 var(--ct-font-text);min-height:23px;margin:14px 0 0;max-width:1000px}
.ai-lessons-section{padding-top:100px}
.ai-section-head{display:grid;grid-template-columns:1.4fr .6fr;align-items:end;gap:64px;margin-bottom:36px}
.ai-section-head h2{font-size:clamp(40px,4.3vw,68px)}
.ai-collection-bar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin:0 0 22px}
.ai-collection-tabs{display:flex;gap:26px;border-bottom:1px solid #d7dce1}
.ai-collection-tabs button{font:500 14px/1.5 var(--ct-font-text);color:#626a73;background:transparent;border:0;border-bottom:2px solid transparent;padding:12px 0;display:flex;gap:8px;align-items:center}
.ai-collection-tabs button[aria-pressed=true]{color:#1f2328;border-bottom-color:#1e7b33}
.ai-collection-tabs button span{font:400 10px/1.4 var(--ct-font-mono);padding:2px 5px;border:1px solid #d7dce1;border-radius:3px}
.ai-scroll-buttons{display:flex;gap:8px}.ai-scroll-buttons button{display:grid;place-items:center;background:transparent;border:1px solid #626a73;border-radius:50%;width:38px;height:38px;color:#1f2328;transition:background 160ms}
.ai-scroll-buttons button:hover{background:#e9edf1}.ai-scroll-buttons button:disabled{opacity:.3}
.ai-lesson-scroller{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x proximity;padding:12px 4px 30px;scroll-padding:1px;overscroll-behavior-x:contain;scrollbar-color:#b8bfc8 #e9edf1;scrollbar-width:thin}
.ai-lesson-card{flex:0 0 min(460px,100%);min-width:0;scroll-snap-align:start;background:var(--card);border:1px solid #e1e4e8;border-radius:9px;box-shadow:0 8px 20px #1f232812;display:flex;flex-direction:column;transition:transform 180ms}
.ai-lesson-card:hover{transform:translateY(-3px)}
.ai-card-caption{display:flex;justify-content:space-between;gap:10px;padding:14px 18px 0;font-size:10px;color:var(--muted-foreground)}
.ai-card-caption>span:first-child{font-weight:600;display:flex;align-items:center;gap:4px;color:var(--foreground)}
.ai-lesson-card>.space-y-4{background:transparent;border:0;padding:18px;flex:1}
.ai-lesson-card .lg\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.ai-lesson-card h2{min-height:45px;line-height:1.3}
.ai-open-lesson{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:15px 18px;margin:0;background:var(--card);border:0;border-top:1px solid var(--border);border-radius:0 0 9px 9px;color:var(--foreground);font-size:12px;font-weight:600;width:100%}
.ai-open-lesson:hover{background:var(--surface)}
.ai-drafts{padding:22px;background:var(--background);border-radius:9px}
.ai-draft-note{display:flex;align-items:flex-start;gap:9px;font-size:12px;color:var(--muted-foreground);line-height:1.6;margin-top:16px!important}
.ai-people-section{padding-top:100px}.ai-people{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));background:transparent;color:var(--ai-ink);border-top:1px solid #e1e4e8}
.ai-people button{display:flex;align-items:center;gap:14px;background:transparent;color:inherit;border:0;border-bottom:1px solid #e1e4e8;padding:24px 12px;text-align:left;min-width:0}
.ai-people button>div:nth-child(2){flex:1;min-width:0}.ai-people button strong{font-weight:500;font-size:14px;display:block}.ai-people button span{font-size:11px;color:#626a73;display:block;margin-top:4px}.ai-people button:hover{background:#eef1f4}
.ai-people .control-well{color:#1f2328;background:#fff;border:1px solid #e1e4e8}
.ai-overlay-root{position:relative;z-index:1000;isolation:isolate;color:var(--foreground)}
.ai-record-sheet{width:min(860px,100vw)!important;max-width:100vw!important}
.ai-detail-stack{display:flex;flex-direction:column;gap:22px;min-width:0}.ai-detail-stack .ai-detail-subtitle{font-size:15px;font-weight:600}.ai-detail-actions{display:flex;gap:9px;flex-wrap:wrap}
.ai-detail-name{font-size:24px;font-weight:600}.ai-session-note{font-size:12px;color:var(--muted-foreground);padding:9px 12px;background:var(--surface);border-radius:5px}
.ai-demo-action{padding:18px;border:1px dashed var(--border-strong);border-radius:8px;display:flex;flex-direction:column;align-items:start;gap:12px;font-size:12px;line-height:1.6}
.ai-demo-action [role=status]{color:var(--foreground);font-weight:500}
.ai-coach-profile{display:flex;gap:16px;align-items:center}.ai-coach-profile h3{font-size:23px;font-weight:600}.ai-coach-profile p{font-size:12px;color:var(--muted-foreground);margin-top:4px}.ai-coach-profile .control-well{width:64px;height:64px;font-size:19px}
.ai-coach-lessons{display:flex;flex-direction:column;gap:15px}
.ai-form{display:flex;flex-direction:column;gap:18px}.ai-form label{display:flex;flex-direction:column;gap:7px;font-size:12px;font-weight:600}.ai-form :is(input,textarea,select){width:100%;padding:10px 12px;background:var(--card);border:1px solid var(--border-strong);border-radius:5px;color:var(--foreground);font:400 14px/1.5 var(--font-sans);max-width:100%}.ai-form textarea{resize:vertical}.ai-form>button{align-self:start}.ai-form [role=status]{font-size:12px;line-height:1.6}.ai-booking-time{font:500 12px/1.5 var(--font-mono)}
.ai-after{padding:96px 0;background:#f7f8fa}.ai-after h2{font:500 clamp(34px,4vw,64px)/1.04 var(--ct-font-display);letter-spacing:-.04em;margin:18px 0 24px}.ai-after>.wrap>p:not(.eyebrow){max-width:650px;font:400 16px/1.7 var(--ct-font-text);color:#5d646a;margin-bottom:28px}
@media(min-width:2000px){.ai-wrap{width:min(2200px,calc(100% - 160px))}.ai-heading h2{font-size:104px}.ai-section-head h2{font-size:82px}.ai-schedule{padding-top:32px}.ai-lesson-card{flex-basis:520px}}
@media(max-width:1100px){.ai-wrap{width:calc(100% - 48px)}.ai-heading,.ai-section-head{gap:28px;grid-template-columns:1.25fr .75fr}.ai-heading{grid-template-columns:1.1fr 1fr}.ai-heading-intro,.ai-section-head>p{font-size:15px}.ai-demo-label{max-width:190px;font-size:9px}.ai-people{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-controls{gap:10px}.ai-segment{margin-right:0}}
@media(max-width:767px){.ai-stage{padding:48px 0 56px}.ai-wrap{width:calc(100% - 32px)}.ai-heading,.ai-section-head{grid-template-columns:1fr;gap:22px;margin-bottom:28px}.ai-heading h2{font-size:clamp(40px,8vw,59px)}.ai-section-head h2{font-size:clamp(38px,7vw,52px)}.ai-heading-intro,.ai-section-head>p{max-width:500px;font-size:14px}.ai-eyebrow{margin-bottom:16px}.ai-org-bar{flex-direction:column;align-items:flex-start;gap:12px}.ai-org-options{width:100%}.ai-org-options button{flex:1;padding:12px 7px;gap:6px;font-size:13px}.ai-org-kind{font-size:10px;margin:0}.ai-demo-label{max-width:none;font-size:8px}.ai-schedule{padding:18px 0 0;border-radius:0}.ai-schedule-top{align-items:flex-start;flex-direction:column;gap:6px;margin-bottom:15px}.ai-schedule-top h3{font-size:18px}.ai-week{font-size:10px}.ai-controls{gap:8px}.ai-segment{width:100%}.ai-segment button{flex:1;min-height:40px;font-size:11px;padding:4px 7px}.ai-control-label{font-size:10px;gap:5px}.ai-control-label select{font-size:11px;max-width:120px;min-height:40px;padding-right:16px}.ai-schedule-foot{gap:4px;font-size:10px}.ai-schedule-foot p{max-width:150px}.ai-schedule-foot button{font-size:10px;min-height:44px;padding:4px}.ai-lessons-section{padding-top:68px}.ai-collection-bar{gap:8px;align-items:flex-start}.ai-collection-tabs{gap:13px;flex:1}.ai-collection-tabs button{gap:4px;font-size:11px;flex-wrap:wrap;align-content:center;min-height:47px;padding:9px 0}.ai-scroll-buttons{gap:4px;margin-top:5px}.ai-scroll-buttons button{width:32px;height:32px}.ai-lesson-card{flex-basis:min(420px,100%)}.ai-card-caption{padding:13px 14px 0;font-size:9px}.ai-lesson-card>.space-y-4{padding:16px 14px}.ai-lesson-card .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-lesson-card h2{font-size:17px}.ai-people-section{padding-top:62px}.ai-people{grid-template-columns:1fr}.ai-people button{padding:18px 0}.ai-record-sheet{border-radius:0!important}.ai-drafts{padding:14px}.ai-after{padding:60px 0}.ai-detail-stack{gap:18px}}
/* The marketing context supplies brand type and cool, opaque neutral material.
   Tenant accent, status hues and the Academy component geometry remain intact. */
.ai-stage .academy-scene,.ai-overlay-root.academy-scene{--font-sans:var(--ct-font-text);--font-display:var(--ct-font-display);--font-mono:var(--ct-font-mono);--background:#f7f8fa;--card:#fff;--surface:#f1f3f6;--surface-strong:#e9edf1;--foreground:#1f2328;--muted-foreground:#626a73;--border:#e1e4e8;--border-strong:#b8bfc8;font-family:var(--ct-font-text)}
.ai-stage .academy-scene,.ai-overlay-root.academy-scene{--club1-foreground:#fff}
.ai-stage :is(input,select,textarea),.ai-stage .ai-lesson-search{border-color:var(--ct-control-border)}
.ai-moments{display:grid;grid-template-columns:1fr;align-content:center;gap:20px;padding:18px 12px 18px 24px;min-width:0}
.ai-moment{display:flex;flex-direction:column;gap:8px;width:min(345px,100%);padding:22px;text-align:left;border:1px solid #e1e4e8;border-radius:9px;background:#fff;color:#1f2328;box-shadow:0 8px 20px rgb(31 35 40 / .07);position:relative;transition:border-color 180ms,box-shadow 180ms}
.ai-moment-lesson{justify-self:start}.ai-moment-booking{justify-self:end;width:min(290px,100%)}
.ai-moment:hover{border-color:#8a929c;box-shadow:0 12px 28px rgb(31 35 40 / .1)}
.ai-moment-kind{display:flex;align-items:center;gap:8px;color:#626a73;font-size:12px;line-height:1.4}.ai-moment-kind>svg:last-child{margin-left:auto;color:#1f2328}
.ai-moment>strong{font:500 25px/1.15 var(--ct-font-display);letter-spacing:-.025em;margin-top:8px}
.ai-moment-time{font:400 12px/1.5 var(--ct-font-mono);color:#626a73}
.ai-moment-time:has(>span){display:flex;flex-wrap:wrap;gap:2px 8px}.ai-moment-time>span{white-space:nowrap}
.ai-list-tools.academy-scene{display:flex;align-items:center;gap:20px;background:transparent;border:0;border-radius:0;overflow:visible;margin-bottom:18px}
.ai-lesson-search{display:flex;align-items:center;gap:10px;max-width:450px;flex:1;min-width:0;border:1px solid #626a73;border-radius:6px;background:#fff;padding:0 12px;color:#626a73}
.ai-lesson-search input{min-width:0;width:100%;min-height:44px;border:0;outline:0;font:400 14px/1.4 var(--ct-font-text);color:#1f2328;background:transparent}.ai-lesson-search input::placeholder{color:#626a73}.ai-lesson-search:focus-within{outline:2px solid #1f2328;outline-offset:3px}.ai-lesson-search input:focus-visible{outline:0}.ai-lesson-search button{border:0;display:grid;place-items:center;min-width:32px;min-height:40px;background:transparent}
.ai-list-day{display:flex;align-items:center;gap:10px;color:#626a73;font-size:13px}.ai-list-day select{min-height:44px;border:1px solid #626a73;background:#fff;border-radius:6px;padding:8px;font:400 13px var(--ct-font-text);color:#1f2328;max-width:180px}
.ai-list-count{font-size:12px;color:#626a73;margin-left:auto;white-space:nowrap}
.ai-stage .ai-lesson-list.academy-scene{border:0;border-top:1px solid #e1e4e8;border-radius:0;background:transparent;overflow:visible;container-type:normal;display:flex;flex-direction:column;gap:8px;padding-top:8px}
.ai-lesson-list>li{min-width:0}.ai-lesson-list>li>div{border-radius:6px;border:1px solid #e1e4e8}
.ai-list-pagination{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:20px;color:#626a73;font-size:13px}.ai-list-pagination>div{display:flex;gap:8px}.ai-list-pagination button{display:flex;gap:8px;align-items:center;font:500 13px var(--ct-font-text);min-height:44px;border:1px solid #626a73;border-radius:6px;background:#fff;padding:8px 12px;color:#1f2328}.ai-list-pagination button:disabled{opacity:.45}
.ai-list-empty{padding:32px 0;display:flex;flex-direction:column;gap:16px;align-items:start;font-size:14px;color:#626a73}
.ai-story-intro>p{font:400 16px/1.65 var(--ct-font-text);color:#626a73;max-width:440px;margin:0}
.ai-story-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:22px}.ai-story-actions button{display:inline-flex;align-items:center;gap:16px;border:0;border-bottom:1px solid #1f2328;background:transparent;color:#1f2328;padding:10px 0;font:500 14px/1.4 var(--ct-font-text);min-height:44px}.ai-story-actions button:hover{color:#1e7b33;border-color:#1e7b33}
@media(max-width:767px){.ai-list-tools.academy-scene{flex-wrap:wrap;gap:12px}.ai-lesson-search{flex-basis:100%;max-width:none}.ai-lesson-search input{font-size:16px}.ai-list-day select{font-size:16px;max-width:165px}.ai-list-count{font-size:12px}.ai-list-pagination{font-size:12px}.ai-list-pagination button{font-size:12px;padding:8px}.ai-lesson-list>li>div>div{min-width:0}}
.ai-moment-person{display:flex;gap:12px;align-items:center;padding-top:14px;margin-top:7px;border-top:1px solid #e1e4e8;font-size:13px;line-height:1.5}
.ai-moment-person small{display:block;color:#626a73;font-size:12px}
.ai-moment .control-well{background:#f7f8fa;color:#1f2328;border-color:#e1e4e8}
.ai-stage .ai-schedule{border:0;border-top:1px solid #e1e4e8;overflow:visible;container-type:normal}
.ai-stage .ai-schedule :is(.csw-tl,.lsw-tl){border-radius:0;border-inline:0;background:transparent}
/* The pinned Agendas omit their old sidebars. Give the remaining native list
   the complete row, without changing a source layout that has a sidebar. */
.ai-stage :is(.lsw-ag,.csw-ag):has(> :is(.lsw-ag-main,.csw-ag-main):only-child){grid-template-columns:minmax(0,1fr)}
/* On phones, status follows the record text instead of squeezing it out.
   The source time, glyph, title and status remain in one native button. */
@media(max-width:767px){
  .ai-stage :is(.csw-ag-row,.lsw-ag-row){grid-template-columns:48px 26px minmax(0,1fr);column-gap:10px;row-gap:6px;padding:12px}
  .ai-stage .csw-ag-row>.csw-statuspill,.ai-stage .lsw-ag-row>.lsw-ag-right{grid-column:3;justify-self:start;max-width:100%;flex-wrap:wrap}
  .ai-stage .csw-ag-row>.csw-statuspill,.ai-stage .lsw-ag-right>.lsw-statuspill{max-width:100%;white-space:normal}
}
.ai-stage .ai-people{border:0;border-top:1px solid #e1e4e8;border-radius:0;background:transparent;overflow:visible}
.ai-stage .ai-schedule .csw-tl{--csw-linew:1px;--csw-line:#d0d6dc}
.ai-stage .ai-schedule .csw-corner{font-family:var(--ct-font-text);text-transform:none;letter-spacing:0}
.ai-stage .ai-schedule .csw-tl-row{border-bottom-color:#e1e4e8}
.ai-stage .ai-schedule .csw-ev{box-shadow:0 3px 8px rgb(31 35 40 / .06)}
/* Queued records remain readable through filter/layout changes. The entrance
   itself owns opacity; an observer queue is never a content visibility gate. */
.ai-stage [data-ai-pending]:focus-within{opacity:1;transform:none}
.ai-section-head .ai-eyebrow{font-size:12px;letter-spacing:.01em;text-transform:none}
.ai-stage .ai-heading-intro{font-size:17px;line-height:1.7}
@media(min-width:2000px){.ai-moments{max-width:780px;gap:28px}.ai-moment{width:430px;padding:28px}.ai-moment-booking{width:370px}.ai-moment>strong{font-size:30px}.ai-moment-kind,.ai-moment-person{font-size:15px}}
@media(max-width:1100px){.ai-moments{padding:10px 0}.ai-moment{padding:18px}.ai-moment>strong{font-size:22px}.ai-moment-booking{width:min(270px,100%)}}
@media(max-width:767px){.ai-heading{gap:28px}.ai-moments{grid-template-columns:1fr 1fr;gap:12px;padding:0 2px 8px;align-items:start}.ai-moment{width:100%;padding:16px}.ai-moment-booking{margin-top:44px}.ai-moment>strong{font-size:20px}.ai-moment-kind{font-size:11px;gap:6px}.ai-moment-kind>svg:first-child{display:none}.ai-moment-person{gap:8px;padding-top:12px;font-size:12px}.ai-moment-person .control-well{display:none}.ai-moment-person small{font-size:11px}.ai-moment-time{font-size:11px}.ai-stage .ai-heading-intro{font-size:15px;margin-top:20px}.ai-demo-label{font-size:10px}.ai-section-head>p{margin:0}}
@media(max-width:380px){.ai-moments{grid-template-columns:1fr}.ai-moment{max-width:245px;justify-self:start}.ai-moment-booking{max-width:215px;justify-self:end;margin-top:0}.ai-moment-person .control-well{display:flex}}
@media(prefers-reduced-motion:reduce){.ai-stage *{scroll-behavior:auto!important;animation-duration:.01ms!important;transition-duration:.01ms!important}.ai-stage [data-ai-pending]{opacity:1;transform:none}.ai-lesson-card:hover{transform:none}}

/* Kept visible by SSR until the source-backed React scene actually mounts. */
.ai-static-preview{padding-top:24px;padding-bottom:24px;border-top:1px solid var(--ct-hairline);font:400 14px/1.65 var(--ct-font-text);color:var(--ct-text-secondary)}
.ai-static-preview[hidden]{display:none}
.ai-static-preview p{margin:0;max-width:76ch}
.ai-static-preview nav{display:flex;gap:8px 24px;flex-wrap:wrap;margin-top:8px}
.ai-static-preview a{display:inline-flex;min-height:44px;align-items:center;color:var(--ct-text);font-weight:500;text-underline-offset:4px}

/* styles/74-marketing-cohesion.css */
/* The company website keeps one light Contakt material across route changes.
   Tenant branding remains scoped to the source-rendered product assets. */
body{--ct-bg:#f7f8fa;--ct-surface:#fff;--ct-sunken:#f1f3f6;--ct-sunken-strong:#e9edf1;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-rule-strong:#b8bfc8;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-ring:#1f2328;--ct-control-border:#626a73;--ct-green-mid:#2fa24b;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-green-soft:#e5f7e8;--ct-on-green:#fff}
body .closing[data-theme=ink]{--ct-bg:#f7f8fa;--ct-surface:#fff;--ct-sunken:#f1f3f6;--ct-sunken-strong:#e9edf1;--ct-text:#1f2328;--ct-text-secondary:#626a73;--ct-hairline:#e1e4e8;--ct-rule:#e3e6ea;--ct-rule-strong:#b8bfc8;--ct-control-border:#626a73;--ct-green:#1e7b33;--ct-green-deep:#1e7b33;--ct-green-soft:#e5f7e8;--ct-on-green:#fff;--ct-ring:#1f2328;border-top:1px solid #e1e4e8}
.site-header .lockup img,.site-footer .lockup img{content:url('brand/CONTAKT_wordmark_primary.svg')}
.site-footer h2{font-family:var(--ct-font-text);letter-spacing:0;text-transform:none;font-size:13px}
.menu__panel nav a[aria-current=page]{color:#1e7b33}
.menu__panel nav a[aria-current=page]::after{content:'';width:7px;height:7px;border-radius:50%;background:#1e7b33;margin-left:auto}
.site-nav a{padding-inline:10px}
:is(.page-home,.page-clubs,.page-programs,.page-managed){--wrap:1740px;--gutter:48px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{display:block;min-height:0;padding-block:clamp(56px,5.2vw,88px) 44px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__top{grid-template-columns:minmax(0,1.25fr) minmax(0,.9fr);gap:clamp(40px,6vw,100px);align-items:center}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__title{gap:22px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero .eyebrow{font-family:var(--ct-font-text);font-size:13px;letter-spacing:0;text-transform:none;margin:0}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font:500 clamp(48px,5.45vw,84px)/1.04 var(--ct-font-display);letter-spacing:-.045em;max-width:16ch;text-wrap:balance}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1>span{color:#626a73}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side{padding:0;gap:18px}
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{font-size:18px;line-height:1.65;max-width:43ch}
.page-home .hero__side .actions{margin-top:4px}
.page-home .hero .home-help{margin-top:0;padding-top:16px}
.page-home .ai-stage{padding-top:44px}
.page-home .ai-heading h2{font-size:clamp(42px,4.6vw,70px)}
.page-home .ai-heading{margin-bottom:48px}
.page-home .ai-after{border-top:1px solid #e1e4e8;padding-block:56px}
.page-home .ai-after>.wrap{display:grid;grid-template-columns:1fr 1fr;gap:12px 64px;align-items:center}
.page-home .ai-after .eyebrow{grid-column:1;margin:0}
.page-home .ai-after h2{grid-column:1;font-size:clamp(32px,3.4vw,50px);margin:0}
.page-home .ai-after>.wrap>p:not(.eyebrow){grid-column:2;grid-row:1/3;margin:0}
.academy-pathways{border-top:1px solid #e1e4e8}
.academy-pathways__head{display:grid;grid-template-columns:1.2fr .8fr;gap:20px 80px;align-items:end;margin-bottom:56px}
.academy-pathways__head .eyebrow{grid-column:1/-1;margin:0}
.academy-pathways__head h2{font:500 clamp(40px,4.4vw,68px)/1.08 var(--ct-font-display);letter-spacing:-.035em;max-width:16ch}
.academy-pathways__head>p{font-size:17px;line-height:1.7;color:#626a73;max-width:43ch}
.academy-pathways__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:64px}
.academy-path{min-width:0;border-top:1px solid #b8bfc8;padding-top:28px}
.academy-path__text>h3{font:500 clamp(28px,2.7vw,42px)/1.15 var(--ct-font-display);letter-spacing:-.035em;max-width:19ch;margin:14px 0 16px}
.academy-path__text>p:not(.eyebrow){max-width:49ch;font-size:16px;line-height:1.7;color:#626a73;margin-bottom:20px}
.academy-path__asset{display:block;text-decoration:none;color:#626a73;margin-top:36px;outline-offset:8px}
.academy-path__caption:focus-visible{outline:2px solid #1f2328}
.academy-path__asset:has(a:hover,a:focus-visible) .pathway-record:first-child{border-color:#626a73}
.pathway-asset.academy-scene{--font-sans:var(--ct-font-text);--font-display:var(--ct-font-display);--font-mono:var(--ct-font-mono);--foreground:#1f2328;--muted-foreground:#626a73;--card:#fff;--background:#f7f8fa;--surface:#f1f3f6;--surface-strong:#e9edf1;--warning-soft:#fbefd9;--warning-ink:#8a5714;--border:#e1e4e8;--border-strong:#b8bfc8;--club1:var(--ai-club);--club1-ink:color-mix(in srgb,var(--ai-club) 85%,#1f2328);--club1-soft:color-mix(in srgb,var(--ai-club) 10%,#f7f8fa);border:0;background:transparent;overflow:visible;position:relative;padding:0 24px 0 0;font-family:var(--ct-font-text)}
.pathway-record{position:relative;z-index:2;border:1px solid #e1e4e8;border-radius:8px;box-shadow:0 8px 20px rgb(31 35 40 / .07);background:#fff;transition:border-color 180ms}
.pathway-record>.space-y-4{border:0!important;background:transparent!important;padding:24px}
.pathway-record h2{font-size:19px;letter-spacing:-.025em}
.pathway-record .lg\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}
.pathway-record:nth-child(2){z-index:1;position:relative;height:110px;margin:18px -24px 0 24px;overflow:hidden;pointer-events:none}
.pathway-record:nth-child(2)>.space-y-4{min-height:110px}
.academy-path__caption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:44px;text-decoration:none;color:#626a73;font:400 12px/1.5 var(--ct-font-text);margin-top:12px}
.academy-service-bridge{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;border-top:1px solid #b8bfc8;margin-top:72px;padding-top:32px;align-items:start}
.academy-service-bridge h3{font:500 clamp(28px,2.7vw,42px)/1.15 var(--ct-font-display);letter-spacing:-.035em;max-width:24ch}
.academy-service-bridge p:not(.eyebrow){color:#626a73;font-size:17px;line-height:1.7;max-width:43ch}
.academy-service-bridge .actions{margin-top:16px}
.academy-related{border-top:1px solid #e1e4e8}
.academy-related__head{margin-bottom:36px}
.academy-related__head h2{font:500 clamp(38px,3.7vw,56px)/1.1 var(--ct-font-display);letter-spacing:-.035em}
.academy-related nav{display:grid;grid-template-columns:1fr 1fr;gap:64px}
.academy-related__link{display:grid;grid-template-columns:1fr 24px;gap:12px 20px;border-top:1px solid #b8bfc8;padding-block:24px;text-decoration:none;color:#1f2328}
.academy-related__link>span{font-size:13px;color:#626a73}
.academy-related__link>strong{grid-column:1;font:500 clamp(24px,2.4vw,36px)/1.2 var(--ct-font-display);letter-spacing:-.025em}
.academy-related__link>p{grid-column:1;color:#626a73;font-size:15px;line-height:1.7;max-width:45ch}
.academy-related__link>svg{grid-column:2;grid-row:2;align-self:center;width:24px;height:24px}
.academy-related__link:hover>strong,.academy-related__link:hover>svg{color:#1e7b33}
.academy-start-now{border-top:1px solid #b8bfc8;padding-top:24px}
.academy-start-now>h3{font:500 25px/1.3 var(--ct-font-display);letter-spacing:-.025em;margin-bottom:20px}
.academy-start-now .actions{margin-top:20px}
.academy-monthly-help{border-top:1px solid #b8bfc8;padding-top:8px}
.academy-monthly-help .note{margin-top:20px}
.page-home #managed .split--flip{grid-template-columns:1fr 1fr}
.page-home #managed .split__text{order:0}
.page-home #managed .home-request{padding:32px 0 0;background:transparent;border:0;border-top:1px solid #e1e4e8;border-radius:0}
.page-home .band .eyebrow,.academy-related .eyebrow{font-family:var(--ct-font-text);letter-spacing:0;text-transform:none}
.page-home #facts .facts>li{border-top:1px solid #e1e4e8;padding-top:24px}
@media(min-width:2000px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--wrap:2200px;--gutter:80px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font-size:110px}.page-home .ai-heading h2{font-size:90px}.academy-pathways__head h2{font-size:82px}.academy-pathways__grid{gap:100px}.pathway-record>.space-y-4{padding:32px}.pathway-record h2{font-size:24px}}
@media(max-width:1179px){.site-header .wrap{--gutter:24px}}
@media(max-width:1100px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--gutter:24px}.academy-pathways__grid,.academy-service-bridge,.academy-related nav{gap:32px}.academy-pathways__head{gap:20px 40px}.academy-path__text>h3{font-size:30px}}
@media(max-width:899px){:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__top{grid-template-columns:1fr;gap:28px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{max-width:21ch}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{max-width:55ch}.academy-pathways__head,.academy-service-bridge{grid-template-columns:1fr}.academy-pathways__head h2{max-width:24ch}.academy-pathways__head>p{max-width:55ch}.academy-pathways__grid{grid-template-columns:1fr;gap:48px}.academy-path{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.academy-path__asset{margin-top:0}.page-home #managed .split--flip{grid-template-columns:1fr}}
@media(max-width:767px){:is(.page-home,.page-clubs,.page-programs,.page-managed){--gutter:16px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{padding-block:40px 22px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__title{gap:18px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero h1{font-size:clamp(42px,10.5vw,64px);max-width:20ch}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side{gap:16px}:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero__side .lede{font-size:16px;line-height:1.6}.page-home .hero .home-help{font-size:12px}.page-home .ai-stage{padding-top:30px}.page-home .ai-heading h2{font-size:clamp(38px,8vw,52px)}.page-home .ai-after{padding-block:40px}.page-home .ai-after>.wrap{grid-template-columns:1fr;gap:16px}.page-home .ai-after h2{font-size:36px}.page-home .ai-after>.wrap>p:not(.eyebrow){grid-column:1;grid-row:auto;font-size:15px}.academy-pathways__head{gap:18px;margin-bottom:36px}.academy-pathways__head h2{font-size:clamp(38px,8vw,52px)}.academy-pathways__head>p{font-size:15px}.academy-path{display:block;padding-top:24px}.academy-path__text>h3{font-size:32px}.academy-path__text>p:not(.eyebrow){font-size:15px}.academy-path__asset{margin-top:28px}.pathway-asset.academy-scene{padding:0 16px 40px 0}.pathway-record>.space-y-4{padding:16px}.pathway-record:nth-child(2){height:95px;margin:14px -16px 0 16px}.pathway-record h2{font-size:18px}.academy-service-bridge{margin-top:48px;padding-top:24px;gap:20px}.academy-service-bridge h3{font-size:32px}.academy-service-bridge p:not(.eyebrow){font-size:15px}.academy-related nav{grid-template-columns:1fr;gap:12px}.academy-related__link>strong{font-size:28px}.site-header .wrap{--gutter:16px}.page-home #managed .home-request{padding-top:24px}}
@media(prefers-reduced-motion:reduce){.academy-path__asset *{transition:none!important}}

@media(max-width:767px){.page-home .hero h1>span{font-size:clamp(36px,9.5vw,64px)}.page-home .hero__side .btn{padding-inline:16px}.page-home .hero__side .actions{gap:10px}}
@media(max-width:767px){.page-product .hero__side>.actions{flex-direction:column;align-items:flex-start}}

/* styles/76-home-foundation.css */
.page-home .foundation-stage{padding-top:28px;padding-bottom:64px}
.foundation-intro{display:grid;grid-template-columns:1.1fr .9fr;gap:16px 80px;align-items:end}
.foundation-intro .ai-eyebrow{grid-column:1/-1;margin:0}
.foundation-intro h2{font:500 clamp(40px,4.3vw,68px)/1.08 var(--ct-font-display);letter-spacing:-.035em;margin:0;text-wrap:balance}
.foundation-intro h2 span{color:var(--ct-text-secondary)}
.foundation-intro>p:last-child{font:400 17px/1.7 var(--ct-font-text);color:var(--ct-text-secondary);max-width:45ch;margin:0 0 5px}
.foundation-field{display:grid;grid-template-columns:1.2fr .8fr;gap:0 64px;align-items:center;padding-top:40px}
.foundation-workspace{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:28px}
.foundation-examples{display:flex;gap:6px;flex-wrap:wrap}
.foundation-examples button{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 12px;border:0;border-bottom:2px solid transparent;background:transparent;color:var(--ct-text-secondary);font:500 14px/1.5 var(--ct-font-text)}
.foundation-examples button[aria-pressed=true]{color:var(--ct-text);border-bottom-color:var(--ct-green)}
.foundation-org-dot{width:8px;height:8px;border-radius:50%;flex:none}
.foundation-workspace>p{font:400 13px/1.5 var(--ct-font-text);color:var(--ct-text-secondary);margin:0}
.foundation-record{min-width:0;margin:0}
.foundation-source{--club1:var(--ai-club);--club1-ink:color-mix(in srgb,var(--ai-club) 85%,#1f2328);--club1-soft:color-mix(in srgb,var(--ai-club) 10%,#f7f8fa);--warning-soft:#fbefd9;--warning-ink:#8a5714;border:0;border-radius:6px;overflow:visible;background:transparent;box-shadow:0 20px 50px rgb(31 35 40 / .08)}
.foundation-record figcaption{margin-top:18px}
.foundation-record figcaption :is(button,a){display:inline-flex;align-items:center;gap:14px;min-height:44px;padding:8px 0;background:transparent;border:0;border-bottom:1px solid var(--ct-text);font:500 14px/1.5 var(--ct-font-text);color:var(--ct-text)}
.foundation-connections{display:flex;flex-direction:column;gap:24px;padding-right:36px}
.foundation-connections>:is(button,a){min-width:0;background:#fff;border:1px solid var(--ct-hairline);border-radius:6px;box-shadow:0 8px 20px rgb(31 35 40 / .07);padding:22px 24px;text-align:left;font:400 14px/1.6 var(--ct-font-text);color:var(--ct-text);transition:box-shadow .2s ease}
.foundation-connections>:is(button,a):hover{box-shadow:0 12px 26px rgb(31 35 40 / .1)}
.foundation-person{display:grid;grid-template-columns:44px 1fr;gap:0 14px;margin-left:28px}
.foundation-asset-label{display:flex;align-items:center;gap:8px;color:var(--ct-text-secondary);font-size:12px;grid-column:1/-1;margin-bottom:16px}
.foundation-asset-label>svg:last-child{margin-left:auto}
.foundation-avatar{grid-row:2/4;grid-column:1;border:0;container-type:normal;background:transparent;overflow:visible;width:44px}
.foundation-avatar .control-well{color:var(--ct-text);background:#f1f3f6}
.foundation-person strong{grid-row:2;grid-column:2;font-size:17px;font-weight:500}
.foundation-person>span:last-child{grid-row:3;grid-column:2;color:var(--ct-text-secondary);font-size:13px}
.foundation-dates{display:flex;flex-direction:column;gap:6px;margin-left:88px;margin-right:-36px}
.foundation-dates .foundation-asset-label{width:100%;margin-bottom:6px}
.foundation-dates>strong{font:500 23px/1.25 var(--ct-font-display);letter-spacing:-.025em}
.foundation-dates>span:not(.foundation-asset-label){font-size:13px;color:var(--ct-text-secondary)}
.foundation-place{display:flex;align-items:center;gap:6px;padding-top:3px}
.foundation-date-link{margin-top:9px;padding-top:13px;border-top:1px solid var(--ct-hairline);color:var(--ct-text)!important}
.foundation-disclosure{font:400 12px/1.6 var(--ct-font-text);color:var(--ct-text-secondary);margin-top:30px;margin-bottom:0}
.foundation-load-note{position:fixed;z-index:90;left:50%;bottom:24px;transform:translateX(-50%);display:flex;gap:20px;align-items:center;width:max-content;max-width:calc(100vw - 32px);background:#fff;color:#1f2328;border:1px solid #b8bfc8;border-radius:6px;padding:16px 20px;box-shadow:0 8px 24px rgb(31 35 40 / .12);font:400 14px/1.5 var(--ct-font-text)}
.foundation-load-note button{flex:none;min-height:44px;border:1px solid #626a73;border-radius:6px;padding:8px 14px;background:#fff;color:#1f2328;font:500 14px/1.5 var(--ct-font-text)}
@media(min-width:2000px){.foundation-intro h2{font-size:84px}.foundation-field{gap:0 100px}.foundation-connections>:is(button,a){padding:32px}.foundation-person strong{font-size:22px}.foundation-dates>strong{font-size:30px}}
@media(max-width:1100px){.foundation-intro{gap:16px 32px}.foundation-field{grid-template-columns:1.15fr .85fr;gap:0 32px}.foundation-connections{padding-right:0}.foundation-connections>:is(button,a){padding:20px}.foundation-person{margin-left:0}.foundation-dates{margin-left:24px;margin-right:0}.foundation-asset-label{font-size:11px}}
@media(max-width:767px){.foundation-intro{grid-template-columns:1fr;gap:18px}.foundation-intro h2{font-size:clamp(38px,8vw,52px)}.foundation-intro>p:last-child{font-size:15px}.foundation-field{grid-template-columns:1fr;padding-top:24px}.foundation-workspace{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:20px}.foundation-record{grid-column:1}.foundation-source>.space-y-4{padding:18px}.foundation-source .lg\:grid-cols-4{grid-template-columns:repeat(2,minmax(0,1fr))}.foundation-connections{grid-column:1;flex-direction:row;align-items:stretch;gap:14px;margin-top:28px}.foundation-connections>:is(button,a){flex:1;padding:16px;min-width:0;margin:0}.foundation-person{display:flex;flex-direction:column;gap:3px}.foundation-person .foundation-asset-label{margin-bottom:10px}.foundation-avatar{margin-bottom:8px}.foundation-person strong{font-size:15px}.foundation-person>span:last-child{font-size:12px}.foundation-asset-label{flex-wrap:wrap;line-height:1.5;font-size:11px;gap:6px}.foundation-asset-label>svg:last-child{display:none}.foundation-dates>strong{font-size:19px}.foundation-place{font-size:12px!important;align-items:flex-start}.foundation-place svg{margin-top:2px}.foundation-disclosure{font-size:11px;margin-top:24px}.page-home .foundation-stage{padding-bottom:40px}}
@media(max-width:359px){.foundation-connections{flex-direction:column}.foundation-person{display:grid;grid-template-columns:44px 1fr}.foundation-avatar{grid-column:1;grid-row:2/4}.foundation-person strong{grid-column:2;grid-row:2}.foundation-person>span:last-child{grid-column:2;grid-row:3}.foundation-asset-label{grid-column:1/-1}}

.foundation-record figcaption a,.foundation-connections>a{text-decoration:none}
@media(max-width:767px){.page-home .foundation-stage{padding-top:20px}.foundation-field{padding-top:20px}}

/* Home does not load the audience story stylesheet; keep its shared demo entry native and equally weighted here. */
.page-home .ai-visitor-entry{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,.8fr);gap:32px 64px;align-items:center;padding-block:72px 88px;border-top:1px solid var(--ct-rule-strong)}
.page-home .ai-visitor-entry h2{max-width:19ch;margin:0 0 12px;font:500 clamp(30px,3.4vw,46px)/1.12 var(--ct-font-display);letter-spacing:-.03em}
.page-home .ai-visitor-entry>div:first-child>p:not(.ai-eyebrow){max-width:60ch;margin:0;color:var(--ct-text-secondary);font:400 14px/1.7 var(--ct-font-text)}
.page-home .ai-visitor-entry-links{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.page-home .ai-visitor-entry-links a{display:flex;align-items:center;justify-content:center;min-height:54px;padding:12px 15px;border:1px solid var(--ct-green-deep);border-radius:6px;background:var(--ct-green-deep);color:#fff;text-align:center;text-decoration:none;font:500 13px/1.4 var(--ct-font-text)}
.page-home .ai-visitor-entry-links a:hover{background:#174532;border-color:#174532}
.page-home .ai-visitor-entry-links a:focus-visible{outline:2px solid var(--ct-ring);outline-offset:3px}
@media(max-width:767px){.page-home .ai-visitor-entry{grid-template-columns:1fr;gap:24px;padding-block:48px 56px}.page-home .ai-visitor-entry-links{grid-template-columns:1fr}.page-home .ai-visitor-entry-links a{min-height:48px}}

/* styles/78-taste-product.css */
/* Marketing copy introduces the actual interface; it does not compete with it. */
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .hero h1{font-size:clamp(40px,4.8vw,72px);max-width:20ch;line-height:1.08;letter-spacing:-.04em}
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .hero h1>span{color:var(--ct-text)}
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .hero{padding-block:44px 36px}
.home-opening{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(32px,5vw,80px);align-items:center}
.home-opening__copy{display:flex;flex-direction:column;align-items:flex-start;gap:22px;max-width:36rem}
.page-home .hero h1{font-size:clamp(40px,4vw,64px)}
.home-opening__copy .lede{font-size:18px;line-height:1.65;max-width:39ch;color:var(--ct-text)}
.home-opening__product{min-width:0;padding:24px;background:var(--ct-green-soft);border-radius:8px}
.hero__top--product{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important}
.hero__copy{display:flex;flex-direction:column;gap:24px}
.hero__copy .hero__side .lede{color:var(--ct-text)}
.hero__asset{min-width:0;padding:28px;background:var(--ct-sunken-strong);border-radius:8px}
.page-programs .hero__asset{background:#f2edf1}
.hero-product-preview{margin:0}
.hero-product-preview .pathway-asset{width:100%;padding-right:20px}
.hero-product-preview .pathway-record h2{font-size:22px}
.hero-product-preview figcaption{font-size:12px;margin-top:18px;color:var(--ct-text-secondary)}
.home-opening__product .ai-wrap{width:100%;margin-inline:0}
.page-home .home-opening .foundation-stage{padding:0}
.home-opening .foundation-field{display:block;padding-top:0}
.home-opening .foundation-workspace{align-items:flex-start;gap:12px;margin-bottom:16px}
.home-opening .foundation-workspace>p{max-width:20ch;text-align:right}
.home-opening .foundation-record figcaption{margin-top:4px}
.home-opening .foundation-connections{display:grid;grid-template-columns:.8fr 1.2fr;gap:12px;padding:0;margin-top:16px}
.home-opening .foundation-connections>a{margin:0;padding:16px;box-shadow:none}
.home-opening .foundation-person{grid-template-columns:36px 1fr;gap:0 10px}
.home-opening .foundation-avatar{width:36px}
.home-opening .foundation-asset-label{font-size:12px;margin-bottom:10px}
.home-opening .foundation-dates>strong{font-size:21px}
.home-opening .foundation-disclosure{margin-top:16px}
.sales-fee-summary{padding-block:28px}
.sales-fee-summary .wrap{grid-template-columns:150px minmax(0,1fr) auto;gap:24px 48px}
.sales-fee-summary__figure strong{font-size:64px;letter-spacing:-.05em}
.sales-fee-summary__figure span{font-size:13px}
.sales-fee-summary h2{font-size:25px;max-width:none;text-wrap:initial}
.sales-fee-summary p{margin-top:8px;font-size:15px;max-width:74ch}
.sales-fee-summary .sales-note{font-size:12px}
.sales-fee-summary>.wrap>.btn{white-space:nowrap}
.academy-pathways__head{display:block;margin-bottom:36px;max-width:60rem}
.academy-pathways__head>.eyebrow{display:none}
.academy-pathways__head h2{font-size:clamp(30px,3vw,44px);max-width:none;margin-bottom:16px}
.academy-pathways__head>p{max-width:64ch;font-size:16px}
.academy-path__text>h3,.academy-service-bridge h3{font-size:clamp(25px,2.5vw,36px);max-width:26ch}
.academy-path__text>.eyebrow{color:var(--ct-green-deep);font-weight:600}
.sales-advantages h2,.sales-next-step h2{font-size:clamp(28px,3vw,40px);max-width:32ch}
.sales-advantages--clubs .sales-advantages__items{grid-template-columns:1fr 1fr}
.sales-advantages--clubs article:first-child{grid-column:1/-1;display:grid;grid-template-columns:.7fr 1.3fr;gap:32px;padding:24px;background:var(--ct-surface);border:1px solid var(--ct-hairline);border-radius:6px}
.sales-advantages--clubs article:first-child p{margin:0;max-width:60ch}
.sales-advantages--programs .sales-advantages__items{grid-template-columns:1fr;gap:0}
.sales-advantages--programs article{display:grid;grid-template-columns:minmax(180px,.5fr) minmax(0,1fr);gap:32px;padding-block:20px}
.sales-advantages--programs article p{margin:0;max-width:62ch}
.ai-section-head,.ai-family-intro{grid-template-columns:1fr;gap:16px;align-items:start}
.ai-section-head h2,.ai-story-copy h2,.ai-invitation-heading h2,.ai-shared-heading h2,.ai-feature-intro h2{font-size:clamp(28px,3.2vw,44px);line-height:1.15;max-width:28ch}
.ai-section-head>p,.ai-section-head .ai-story-intro,.ai-family-intro>p{max-width:68ch;margin:0}
.ai-heading h2{font-size:clamp(32px,3.4vw,48px)}
.ai-heading h2 span{color:var(--ct-text)}
.ai-feature-story h3{font-size:clamp(24px,2.6vw,36px);line-height:1.2}
.ai-shared-heading{margin-bottom:36px}
.ai-shared-payoff h3{font-size:22px}
.ai-perspective .ai-story-copy>p:not(.ai-eyebrow),.ai-feature-copy>p,.ai-invitation-heading>p{color:var(--ct-text)}
.page-product .hero{padding-block:28px 20px}
.page-product .hero__top{grid-template-columns:1fr;gap:14px}
.page-product .hero__title>.eyebrow{display:none}
.page-product .hero h1{font-size:40px;max-width:none}
.page-product .hero__side{padding:0;gap:14px}
.page-product .hero .lede{font-size:16px;max-width:72ch;color:var(--ct-text)}
.page-product .hero .actions{flex-direction:row}
.page-product #experience{background:var(--ct-sunken);border-block:1px solid var(--ct-hairline)}
.page-product .ai-stage{padding-top:24px}
.page-product .ai-org-bar{padding-bottom:18px}
.page-product .ai-schedule{padding:24px;background:var(--ct-surface);border:1px solid var(--ct-hairline);border-radius:8px}
.page-product .ai-schedule-top :is(h2,h3){font-size:24px}
.pricing-section-label h2{font-size:30px;line-height:1.2}
@media(min-width:2000px){.page-home .hero h1{font-size:86px}.home-opening__product{padding:32px}.page-product .hero h1{font-size:48px}}
@media(max-width:1100px){.home-opening{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:28px}.home-opening__copy h1{font-size:46px}.home-opening__product{padding:18px}.home-opening .foundation-workspace{flex-direction:column}.home-opening .foundation-workspace>p{text-align:left;max-width:none}.sales-fee-summary .wrap{gap:24px}}
@media(max-width:899px){.home-opening{grid-template-columns:1fr;align-items:start}.home-opening__copy{max-width:44rem}.home-opening__copy h1{font-size:52px}.home-opening__product{max-width:48rem}.home-opening .foundation-workspace{flex-direction:row}.sales-fee-summary .wrap{grid-template-columns:130px minmax(0,1fr)}.sales-fee-summary>.wrap>.btn{grid-column:2;justify-self:start}}
@media(max-width:767px){:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{padding-block:32px}.home-opening{gap:28px}.home-opening__copy{gap:18px}.home-opening__copy .lede{font-size:16px}.home-opening__copy h1{font-size:44px}.home-opening__product{padding:16px}.home-opening .foundation-workspace{flex-direction:column}.home-opening .foundation-connections{grid-template-columns:1fr 1fr}.home-opening .foundation-connections>a{padding:12px}.home-opening .foundation-asset-label{font-size:11px}.home-opening .foundation-dates>strong{font-size:18px}.home-opening .foundation-person strong{font-size:15px}.sales-fee-summary .wrap{grid-template-columns:1fr;gap:18px}.sales-fee-summary>.wrap>.btn{grid-column:1}.sales-fee-summary__figure{flex-direction:row;align-items:center;gap:20px}.sales-fee-summary h2{font-size:23px}.sales-advantages--clubs .sales-advantages__items{grid-template-columns:1fr}.sales-advantages--clubs article:first-child,.sales-advantages--programs article{display:block;padding:18px}.sales-advantages--clubs article:first-child p,.sales-advantages--programs article p{margin-top:10px}.sales-advantages--programs article{padding-inline:0}.ai-section-head h2,.ai-story-copy h2,.ai-invitation-heading h2,.ai-feature-intro h2{font-size:30px}.ai-heading h2{font-size:34px}.page-product .hero h1{font-size:34px}.page-product .ai-schedule{padding:16px}.pricing-section-label{flex-direction:column;align-items:flex-start;gap:8px}.pricing-section-label h2{font-size:28px}}
@media(max-width:359px){.home-opening__copy h1{font-size:38px}.home-opening .foundation-connections{grid-template-columns:1fr}}
@media(max-width:899px){.hero__top--product{grid-template-columns:1fr!important}.hero__asset{max-width:48rem;padding:20px}.hero__copy{gap:20px}}
@media(max-width:767px){.hero__asset{padding:18px}.hero-product-preview .pathway-record h2{font-size:18px}.hero-product-preview .pathway-asset{padding-right:12px;padding-bottom:0}.hero-product-preview .pathway-record:nth-child(2){margin-right:-12px}}

/* The workspace selector belongs to the example beneath it. Its selection is
   distinct from a momentary press, and both organizations get equal space. */
.ai-org-options:has(>button+button){padding:4px;gap:4px;border:1px solid var(--ct-rule-strong);border-radius:8px;background:var(--ct-surface)}
.ai-org-options:has(>button+button) button{min-height:44px;padding:10px 14px;border:1px solid transparent;border-radius:5px;color:var(--ct-text);transition:background-color 120ms ease-out,border-color 120ms ease-out}
.ai-org-options:has(>button+button) button[aria-pressed=true]{background:var(--ct-green-soft);border-color:var(--ct-green-deep)}
.ai-org-kind{font-family:var(--ct-font-text);font-size:12px;letter-spacing:0}
.ai-demo-label{font-size:12px;max-width:none;line-height:1.5}
.ai-week{font-size:12px}
.ai-collection-tabs button{min-height:44px;padding-inline:6px;border-radius:4px 4px 0 0}
.ai-stage :is(.ai-org-options,.ai-collection-tabs,.ai-story-actions,.ai-week-days,.ai-people) button:active:not(:disabled):not([aria-disabled=true]){box-shadow:inset 0 0 0 100vmax rgb(31 35 40 / .08);transition-duration:0ms}
.ai-moment:active{border-color:var(--ct-text-secondary);box-shadow:inset 0 0 0 100vmax rgb(31 35 40 / .04);transition-duration:0ms}
.hero-product-preview figcaption{font-size:13px;line-height:1.5}
/* The second source record previews its identity and enrollment. Its timing
   fields belong to the complete record in the working example below. */
.hero-product-preview .pathway-record:nth-child(2){height:auto;overflow:visible}
.hero-product-preview .pathway-record:nth-child(2)>.space-y-4{min-height:0}
.hero-product-preview .pathway-record:nth-child(2)>.space-y-4>.grid{display:none}
@media(max-width:767px){
  .ai-org-options:has(>button+button){width:100%}
  .ai-org-options:has(>button+button) button{flex:1;flex-wrap:wrap;justify-content:center;column-gap:7px;row-gap:2px;padding:8px}
  .ai-org-options:has(>button+button) .ai-org-kind{flex-basis:100%;font-size:12px}
  .ai-demo-label{font-size:12px}
  .ai-collection-tabs{gap:10px}
}
@media(prefers-contrast:more){
  .ai-org-options:has(>button+button),.ai-collection-tabs,.hero__asset,.home-opening__product,.page-product .ai-schedule{border:1px solid var(--ct-text)}
  .ai-collection-tabs button[aria-pressed=true]{border-bottom-color:var(--ct-text);font-weight:600}
}

/* styles/79-product-composition.css */
/* Five-round composition pass. Website framing stays outside source surfaces. */
/* Round 1 — the opening is a product composition, with room for real records. */
:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{padding-block:56px 52px;background:var(--ct-surface)}
.home-opening{grid-template-columns:minmax(0,.75fr) minmax(0,1.25fr);gap:clamp(32px,4.5vw,72px);align-items:center}
.home-opening__product{background:transparent;padding:0;border-radius:0}
.home-opening .foundation-workspace{margin-bottom:20px;align-items:center}
.home-opening .foundation-workspace>p{max-width:24ch;font-size:13px}
.home-opening .foundation-examples{gap:0;border-bottom:1px solid var(--ct-rule-strong)}
.home-opening .foundation-examples button{padding:12px 10px;font-size:14px;color:var(--ct-text)}
.home-opening .foundation-source{border:1px solid var(--ct-hairline);box-shadow:0 18px 44px rgb(31 35 40 / .09)}
.home-opening .foundation-connections{gap:16px;margin-top:20px;align-items:start}
.home-opening .foundation-connections>a{padding:20px;background:var(--ct-bg);border-color:var(--ct-rule-strong);box-shadow:none}
.home-opening .foundation-connections .foundation-dates{margin-top:24px}
.home-opening .foundation-disclosure{font-size:12px;line-height:1.6;max-width:68ch}
.hero__top--product{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)!important;gap:clamp(32px,5vw,80px)}
.hero__asset{padding:32px;background:var(--ct-bg);border:1px solid var(--ct-hairline);border-radius:8px}
.page-programs .hero__asset{background:var(--ct-bg)}
.hero-product-preview .pathway-record{box-shadow:0 12px 28px rgb(31 35 40 / .07)}
.hero-product-preview .pathway-record:first-child{border-left:3px solid var(--ai-club)}
.hero-product-preview .pathway-record:nth-child(2){margin-top:24px}
.page-product .hero{padding-block:32px 28px;background:var(--ct-surface)}
.page-product .hero h1{font-size:clamp(38px,4.2vw,56px);letter-spacing:-.035em}
.page-product .hero .lede{max-width:70ch}
.page-product #experience{background:var(--ct-bg)}
.page-product .ai-stage{padding-top:28px}
.page-product .ai-org-bar{align-items:start;gap:24px;flex-wrap:wrap;padding-bottom:28px}
.page-product .ai-org-options{flex:1;max-width:760px;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;border:0;background:transparent}
.page-product .ai-org-options button{display:grid;grid-template-columns:8px 1fr auto;gap:6px 12px;align-content:center;align-items:center;min-height:94px;padding:16px 20px;border:1px solid var(--ct-rule-strong);border-radius:6px;background:var(--ct-surface);text-align:left}
.page-product .ai-org-options button strong{font:500 19px/1.3 var(--ct-font-display);letter-spacing:-.02em}
.page-product .ai-org-options button .ai-org-kind{font-size:13px;justify-self:end}
.page-product .ai-org-options button .ai-org-description{grid-column:2/-1;font:400 14px/1.5 var(--ct-font-text);color:var(--ct-text-secondary)}
.page-product .ai-org-options button[aria-pressed=true]{background:var(--ct-green-soft);border-color:var(--ct-green)}
.page-product .ai-demo-label{padding-top:20px;font-size:12px;max-width:26ch}
.page-product .ai-schedule{box-shadow:0 14px 40px rgb(31 35 40 / .06)}
@media(min-width:2000px){.home-opening{gap:80px}.home-opening__copy{max-width:46rem}.home-opening__copy .lede{font-size:22px}.hero__asset{padding:48px}.page-product .ai-org-options{max-width:1000px}}
@media(max-width:1100px){.home-opening .foundation-workspace{align-items:start;flex-direction:column}.home-opening .foundation-workspace>p{max-width:none}.hero__asset{padding:24px}.home-opening .foundation-connections>a{padding:16px}}
@media(max-width:899px){.home-opening,.hero__top--product{grid-template-columns:1fr!important;gap:36px}.home-opening__copy{max-width:42rem}.home-opening__product,.hero__asset{max-width:52rem}.home-opening .foundation-workspace{flex-direction:row;align-items:center}.page-product .ai-org-options{max-width:none;width:100%}.page-product .ai-demo-label{padding:0;max-width:none}}
@media(max-width:767px){:is(.page-home,.page-clubs,.page-programs,.page-managed) .hero{padding-block:32px 40px}.home-opening{gap:32px}.home-opening .foundation-workspace{flex-direction:column;gap:12px;align-items:start}.home-opening .foundation-examples{width:100%}.home-opening .foundation-examples button{flex:1;justify-content:center;padding-inline:6px;font-size:13px}.home-opening .foundation-connections{gap:12px}.home-opening .foundation-connections>a{padding:16px 12px}.home-opening .foundation-connections .foundation-dates{margin-top:16px}.hero__asset{padding:20px 16px}.page-product .hero{padding-block:24px}.page-product .hero h1{font-size:38px}.page-product .ai-stage{padding-top:20px}.page-product .ai-org-bar{gap:14px;padding-bottom:20px}.page-product .ai-org-options button{min-height:102px;padding:12px;grid-template-columns:8px 1fr;gap:5px 8px}.page-product .ai-org-options button strong{font-size:17px}.page-product .ai-org-options button .ai-org-kind{grid-column:2;justify-self:start;font-size:12px}.page-product .ai-org-options button .ai-org-description{grid-column:1/-1;font-size:12px}.page-product .ai-schedule{padding:16px 12px}}
@media(max-width:359px){.home-opening .foundation-connections{grid-template-columns:1fr}.home-opening .foundation-connections .foundation-dates{margin-top:0}.page-product .ai-org-options button{padding:12px 8px}.page-product .ai-org-options button strong{font-size:15px}}

/* Round 2 — weight and reading ink carry hierarchy; metadata stays quiet. */
:is(.page-home,.page-clubs,.page-programs,.page-managed,.page-product) .hero h1{font-weight:600;letter-spacing:-.045em;line-height:1.06}
.home-opening .foundation-stage{background:transparent;overflow:visible}
.home-opening__copy .lede,.hero__copy .hero__side .lede{font-size:1.125rem;line-height:1.65}
.academy-path__text>p:not(.eyebrow),.sales-advantages__items p,.ai-feature-copy>p:not(.ai-eyebrow),.ai-perspective .ai-story-copy>p:not(.ai-eyebrow){font-size:1.0625rem;line-height:1.7;color:var(--ct-text)}
.academy-path__text>h3,.ai-feature-copy h3{font-weight:600;letter-spacing:-.03em}
.ai-perspective .ai-story-copy h2{font-weight:600;line-height:1.14;letter-spacing:-.035em;max-width:23ch}
.ai-role-label{display:inline-flex;align-items:center;gap:9px;padding:7px 11px;margin:0 0 18px;background:var(--ct-green-soft);border-radius:4px;color:var(--ct-green);font:500 0.875rem/1.4 var(--ct-font-text)}
.ai-role-label svg{flex:none}
.ai-stage .ai-eyebrow::before{background:var(--ct-green);height:2px;width:20px}
.ai-feature-copy .ai-feature-example{font-size:0.9375rem;line-height:1.65;border-left:2px solid var(--ct-rule-strong);padding-left:16px;margin-top:20px}
.ai-feature-roles{font-size:0.8125rem;color:var(--ct-text-secondary)}
.ai-feature-caption,.ai-perspective-asset figcaption{font-size:0.8125rem;line-height:1.6}
.ai-controls .ai-control-label{font-size:12px;color:var(--ct-text-secondary)}
.ai-controls .ai-control-label select,.ai-controls .ai-segment button{font-size:13px;min-height:44px}
.ai-collection-tabs button{font-size:14px;color:var(--ct-text)}
.ai-collection-tabs button[aria-pressed=true]{font-weight:600}
.page-home #facts .head h2{font-size:clamp(30px,3vw,42px);max-width:none}
.page-home #facts .facts h3{font-size:21px;font-weight:600}
.page-home #facts .facts p{font-size:16px;line-height:1.7;color:var(--ct-text)}
.sales-fee-summary .sales-note,.sales-eligibility p{font-size:13px;line-height:1.65}
.pricing-price__proposal{color:var(--ct-text);font-weight:500}
@media(max-width:767px){.home-opening__copy .lede,.hero__copy .hero__side .lede{font-size:1rem}.ai-perspective .ai-story-copy h2{font-size:30px}.academy-path__text>p:not(.eyebrow),.sales-advantages__items p,.ai-feature-copy>p:not(.ai-eyebrow),.ai-perspective .ai-story-copy>p:not(.ai-eyebrow){font-size:1rem}.ai-controls .ai-control-label select{font-size:16px;max-width:150px}.ai-controls .ai-segment button{font-size:12px}.ai-collection-tabs button{font-size:13px}.ai-role-label{font-size:13px}.ai-feature-copy .ai-feature-example{font-size:14px}}

/* Round 3 — one subject leads into different compositions for each role. */
.ai-three-perspectives{width:calc(100% - 64px);max-width:1200px;margin-inline:auto;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:0 48px;padding-bottom:48px}
.ai-three-perspectives>.ai-wrap{width:100%;margin:0;max-width:none}
.ai-three-perspectives .ai-shared-heading{grid-column:1/-1;padding-block:28px 36px}
.ai-shared-intro{display:block}
.ai-shared-intro h2{font-size:28px;line-height:1.25;letter-spacing:-.025em}
.ai-shared-intro>p{margin-top:10px;max-width:68ch}
.ai-subject-spine{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr) minmax(0,1fr);gap:16px 28px;padding:20px 0;margin-top:24px;align-items:center;font-size:14px}
.ai-subject-spine>strong{font:600 22px/1.3 var(--ct-font-display);letter-spacing:-.025em}
.ai-three-perspectives [data-testid=office-lesson-story]{grid-column:1/-1;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);padding:36px 0 48px;margin-bottom:32px;border-bottom:1px solid var(--ct-rule-strong)}
.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]){display:flex;flex-direction:column;align-items:stretch;gap:28px;padding-block:0 36px;border-bottom:0}
.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]) .ai-story-copy>p{max-width:54ch}
.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]) .ai-perspective-asset{flex:1}
.ai-three-perspectives .ai-teaching-person,.ai-three-perspectives .ai-family-heading{min-height:64px;padding-bottom:20px}
.ai-three-perspectives .ai-family-heading>span{max-width:24ch}
.ai-three-perspectives .ai-family-heading strong{font-size:21px}
.ai-feature-stories{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start;padding-top:88px}
.ai-feature-intro{grid-column:1/-1;margin-bottom:4px}
.ai-feature-story{display:flex;flex-direction:column;gap:28px;padding:28px;border:1px solid var(--ct-hairline);border-radius:6px;background:var(--ct-surface);height:100%;min-width:0}
.ai-feature-story .ai-feature-copy h3{font-size:32px;max-width:25ch}
.ai-feature-story .ai-feature-copy>p:not(.ai-eyebrow){max-width:60ch}
.ai-feature-story .ai-feature-copy .ai-eyebrow{margin-bottom:14px}
.ai-feature-story :is(.ai-feature-roles,.ai-feature-example){max-width:60ch}
.ai-feature-story .ai-feature-asset{width:100%;min-width:0}
:is(#features-booking,#features-scheduling,#features-public-spaces){grid-column:1/-1;height:auto}
#features-booking,#features-public-spaces{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;padding:36px}
#features-scheduling .ai-feature-copy{display:grid;grid-template-columns:1fr 1fr;gap:0 40px}
#features-scheduling .ai-feature-copy>.ai-eyebrow{grid-column:1/-1}
#features-scheduling .ai-feature-copy>h3{grid-column:1;grid-row:2/4}
#features-scheduling .ai-feature-copy>p:not(.ai-eyebrow){grid-column:2}
#features-scheduling .ai-feature-copy>.ai-feature-roles,#features-scheduling .ai-feature-copy>.ai-feature-action{grid-column:1}
#features-scheduling .ai-feature-copy>.ai-feature-action{justify-self:start}
#features-public-spaces .ai-public-photo{height:220px}
.academy-pathways__grid{gap:40px}
.academy-path{border-top:2px solid var(--ct-green);padding-top:24px}
.academy-path__asset{padding:24px 20px 8px;background:var(--ct-surface);border:1px solid var(--ct-hairline);border-radius:6px}
.academy-path .pathway-record:nth-child(2){height:auto}
.academy-path .pathway-record:nth-child(2)>.space-y-4{min-height:0}
.academy-path .pathway-record:nth-child(2)>.space-y-4>.grid{display:none}
.academy-path__caption{font-size:13px;color:var(--ct-text);margin-top:16px}
@media(min-width:2000px){.ai-three-perspectives{width:calc(100% - 160px);max-width:2200px;gap:0 80px}.ai-feature-story{padding:40px}.ai-feature-story .ai-feature-copy h3{font-size:42px}}
@media(max-width:1100px){.ai-three-perspectives{width:calc(100% - 48px);gap:0 32px}.ai-subject-spine{grid-template-columns:1fr 1fr}.ai-subject-spine>strong{grid-column:1/-1}.ai-feature-story{padding:24px}.ai-feature-stories{gap:24px}#features-booking,#features-public-spaces{gap:28px;padding:28px}}
@media(max-width:899px){.ai-three-perspectives{display:block}.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]){padding-block:28px;border-bottom:1px solid var(--ct-hairline)}.ai-three-perspectives [data-testid=office-lesson-story]{margin-bottom:0}.ai-feature-stories{display:block}.ai-feature-story{margin-top:28px}.academy-path{display:block}.academy-path__asset{margin-top:28px}.academy-pathways__grid{grid-template-columns:1fr 1fr;gap:28px}}
@media(max-width:767px){.ai-three-perspectives{width:calc(100% - 32px);padding-bottom:28px}.ai-three-perspectives .ai-shared-heading{padding-block:24px 12px}.ai-subject-spine{grid-template-columns:1fr;gap:10px;font-size:14px}.ai-subject-spine>strong{font-size:20px}.ai-three-perspectives [data-testid=office-lesson-story]{grid-template-columns:1fr;padding-block:28px;gap:24px}.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]){gap:24px}.ai-three-perspectives .ai-family-heading>span{max-width:none}.ai-feature-stories{padding-top:56px}.ai-feature-story{padding:24px 16px;margin-top:24px}.ai-feature-story .ai-feature-copy h3{font-size:28px}#features-booking,#features-public-spaces,#features-scheduling .ai-feature-copy{display:block;padding:24px 16px}#features-scheduling .ai-feature-copy{padding:0}#features-booking .ai-feature-asset,#features-public-spaces .ai-feature-asset{margin-top:28px}#features-public-spaces .ai-public-photo{height:180px}.academy-pathways__grid{grid-template-columns:1fr;gap:44px}.academy-path__asset{padding:18px 12px 6px}}

/* Round 4 — controls map to the content they affect, at every input size. */
.ai-perspective-index{display:flex;gap:8px 12px;flex-wrap:wrap;margin-top:20px}
.ai-perspective-index a{display:inline-flex;align-items:center;gap:9px;min-height:44px;padding:9px 14px;background:var(--ct-surface);border:1px solid var(--ct-rule-strong);border-radius:4px;color:var(--ct-text);text-decoration:none;font:500 14px/1.5 var(--ct-font-text)}
.ai-perspective-index a:hover{background:var(--ct-green-soft);border-color:var(--ct-green)}
.ai-perspective-index a:focus-visible,.ai-feature-index a:focus-visible{outline:2px solid var(--ct-ring);outline-offset:3px}
:is(#office-lesson-heading,#teaching-day-heading,#family-week-heading,.ai-feature-story){scroll-margin-top:calc(var(--header-h) + 24px)}
.ai-feature-index{gap:10px;margin-block:24px 16px}
.ai-feature-index a{display:inline-flex;align-items:center;gap:12px;padding:9px 14px;min-height:44px;border:1px solid var(--ct-rule-strong);border-radius:4px;background:var(--ct-surface);color:var(--ct-text);font-size:14px;text-decoration:none}
.ai-feature-index a:hover{background:var(--ct-green-soft);border-color:var(--ct-green)}
.ai-invitation-heading{display:block;max-width:58rem}
.ai-invitation-heading h2{margin-block:16px;max-width:25ch}
.ai-invitation-heading>p:not(.ai-eyebrow){max-width:66ch;color:var(--ct-text);font-size:17px}
.ai-invitation-layout{grid-template-columns:minmax(0,.65fr) minmax(0,1.35fr);gap:48px}
.ai-invite-roles button{border-color:var(--ct-rule-strong);border-radius:4px;margin-top:8px;min-height:64px;font-size:17px}
.ai-invitation-letter{border:1px solid var(--ct-hairline);box-shadow:0 12px 36px rgb(31 35 40 / .06);min-height:0}
.ai-org-description,.ai-feature-copy,.ai-story-copy,.ai-subject-spine>span{overflow-wrap:break-word}
@media(min-width:900px){.ai-three-perspectives :is([data-testid=teaching-day-story],[data-testid=family-week-story]) .ai-story-copy{min-height:190px}}
@media(max-width:767px){.ai-controls{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:14px 12px}.ai-controls .ai-control-label{display:flex;flex-direction:column;align-items:start;gap:6px;min-width:0}.ai-controls .ai-control-label select{width:100%;max-width:none;font-size:16px}.ai-controls .ai-control-label:first-child{grid-column:1/-1;flex-direction:row;align-items:center}.ai-controls .ai-control-label:first-child select{width:auto;min-width:130px}.ai-controls .ai-segment{grid-column:1/-1;width:100%;margin:0}.ai-invitation-layout{grid-template-columns:1fr;gap:24px}.ai-invitation-heading>p:not(.ai-eyebrow){font-size:16px}.ai-invite-roles{display:grid;grid-template-columns:1fr;gap:6px;border:0}.ai-invite-roles button{margin:0;padding:12px 14px;border:1px solid var(--ct-rule-strong);min-height:52px;font-size:16px}.ai-invitation-letter{padding:24px 20px}.ai-feature-index a{font-size:13px;padding:8px 11px}.ai-perspective-index{gap:8px}.ai-perspective-index a{flex:1;justify-content:center;padding:9px 8px;font-size:13px}}
@media(max-width:359px){.ai-perspective-index a{flex:none}.ai-controls .ai-segment button{padding-inline:5px}.ai-controls{gap:12px 8px}}

/* Round 5 — clear destinations and restrained, immediate interaction cues. */
.ai-perspective-index a,.ai-feature-index a,.foundation-examples button{transition:background-color 120ms ease-out,border-color 120ms ease-out}
:is(.ai-perspective-index a,.ai-feature-index a,.foundation-examples button):active{box-shadow:inset 0 0 0 100vmax rgb(31 35 40 / .08);transition-duration:0ms}
.home-opening .foundation-connections>a{transition:background-color 160ms ease-out,border-color 160ms ease-out}
.home-opening .foundation-connections>a:hover{background:var(--ct-green-soft);border-color:var(--ct-green);box-shadow:none}
.home-opening .foundation-connections>a:active{box-shadow:inset 0 0 0 100vmax rgb(31 35 40 / .06);transition-duration:0ms}
.ai-perspective:has(h2:target) .ai-role-label{outline:1px solid var(--ct-green);outline-offset:3px}
.ai-office-disclosure>summary{background:var(--ct-surface);border:1px solid var(--ct-rule-strong);border-radius:6px;color:var(--ct-green);min-height:64px;padding:18px 24px}
.ai-office-disclosure[open]>summary{background:var(--ct-green-soft);border-color:var(--ct-green)}
.ai-schedule-foot{font-size:13px;line-height:1.6}
.ai-schedule-foot button{font-size:13px}
.page-home #evaluate{background:var(--ct-green-soft);border-block:0;padding-block:64px}
.page-home #evaluate h2{font-weight:600}
.sales-next-step h2{overflow-wrap:anywhere}
body:is(.page-clubs,.page-programs,.page-managed,.page-product) .closing[data-theme=ink]{--ct-bg:#1e7b33;--ct-surface:#1e7b33;--ct-sunken:#17662a;--ct-text:#fff;--ct-text-secondary:#e5f7e8;--ct-green:#fff;--ct-green-deep:#fff;--ct-on-green:#1e7b33;--ct-control-border:#fff;--ct-hairline:#9bc6a4;--ct-ring:#fff;background:var(--ct-bg);border:0}
:is(.page-clubs,.page-programs,.page-managed,.page-product) .closing h2{font-size:clamp(30px,3.3vw,46px);font-weight:600;max-width:26ch}
:is(.page-clubs,.page-programs,.page-managed,.page-product) .closing .lede{font-size:17px;color:var(--ct-text);max-width:62ch}
:is(.page-clubs,.page-programs,.page-managed,.page-product) .closing .btn--secondary:hover{background:#17662a}
@media(max-width:767px){.ai-office-disclosure>summary{margin-inline:16px;padding:16px;font-size:17px}.ai-schedule-foot{gap:12px;flex-wrap:wrap}.ai-schedule-foot p{max-width:100%;flex:1 1 160px}.ai-schedule-foot button{font-size:12px}.page-home #evaluate{padding-block:44px}.closing__in{gap:24px}}
@media(prefers-reduced-motion:reduce){.ai-perspective-index a,.ai-feature-index a,.foundation-examples button,.home-opening .foundation-connections>a{transition:none}}
@media(prefers-contrast:more){.ai-feature-story,.hero__asset,.ai-perspective-index a,.ai-feature-index a,.ai-office-disclosure>summary,.home-opening .foundation-connections>a{border-color:var(--ct-text)}.ai-role-label{outline:1px solid currentColor}.ai-org-description,.ai-demo-label,.ai-feature-caption,.ai-feature-roles,.ai-subject-disclosure{color:var(--ct-text)}}

/* pages/home/style.css */
/* Home */

/* Three roles: the office view is wide, the two phone views sit beside it. */
.home-roles {
  display: grid;
  grid-template-columns: minmax(0, 1fr) repeat(2, minmax(0, 250px));
  gap: 32px clamp(20px, 3vw, 40px);
  align-items: start;
}
.home-role {
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
.home-role__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 16px;
  border-top: 1px solid var(--ct-rule-strong);
  min-height: 132px;
}
.home-role__text h3 {
  font-size: 1.0625rem;
}
.home-role__text p {
  color: var(--ct-text-secondary);
}
.home-roles + .note {
  margin-top: 20px;
}
@media (max-width: 1039.98px) {
  .home-roles {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
  .home-role--office {
    grid-column: 1 / -1;
  }
  .home-role__text {
    min-height: 0;
  }
}
@media (max-width: 559.98px) {
  .home-roles {
    grid-template-columns: minmax(0, 1fr);
  }
  .home-role .view--phone {
    max-width: 260px;
  }
}
/* Views in one row start on the same line, whatever the length of the text
   above. The minimum height stays as the fallback where subgrid is missing. */
@supports (grid-template-rows: subgrid) {
  @media (min-width: 560px) {
    .home-role {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      grid-template-rows: subgrid;
      grid-row: span 2;
      row-gap: 20px;
    }
    .home-role__text {
      min-height: 0;
    }
  }
}

/* The line under the hero actions for a visitor who wants help from Contakt. */
.home-help {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0 10px;
  padding-top: 14px;
  border-top: 1px solid var(--ct-hairline);
  color: var(--ct-text-secondary);
}

/* Three doors of equal weight: three columns on a wide screen, three rows with
   the view beside the text on a tablet, three stacked cards on a phone. */
/* A door's link may wrap in a narrow card. The arrow takes no width of its own
   and sits in the room kept free at the right, so it stays with the last word. */
.page-home .route__go {
  display: block;
  margin-right: 22px;
}
.page-home .route__go .icon {
  display: inline-block;
  margin: 0 -22px 0 6px;
  vertical-align: -2px;
}
@media (min-width: 1000px) {
  .page-home .routes {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
  .page-home .route__view {
    max-height: 264px;
  }
}
@media (min-width: 620px) and (max-width: 999.98px) {
  .page-home .routes {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  .page-home .route {
    flex-direction: row;
  }
  .page-home .route__text {
    flex: 0 0 46%;
    padding: 24px;
  }
  /* The view fills the rest of the row and never sets its height. */
  .page-home .route__view {
    position: relative;
    flex: 1 1 0;
    min-height: 212px;
    max-height: none;
    margin-top: 0;
    padding: 0;
    border-top: 0;
    border-left: 1px solid var(--ct-hairline);
  }
  .page-home .route__view img {
    position: absolute;
    top: 20px;
    left: 20px;
    width: 150%;
  }
}
@media (max-width: 619.98px) {
  .page-home .routes {
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  .page-home .route__view {
    max-height: 208px;
  }
}

/* The Saturday story: a phone, the office screen, a phone. */
.home-story {
  display: grid;
  grid-template-columns: minmax(0, 0.58fr) minmax(0, 1.9fr) minmax(0, 0.58fr);
  gap: 32px clamp(20px, 3vw, 40px);
  align-items: start;
  counter-reset: beat;
}
.home-beat {
  counter-increment: beat;
  display: flex;
  flex-direction: column;
  gap: 20px;
  min-width: 0;
}
.home-beat__text {
  display: flex;
  flex-direction: column;
  gap: 6px;
  padding-top: 16px;
  border-top: 1px solid var(--ct-rule-strong);
  min-height: 148px;
}
.home-beat__text::before {
  content: counter(beat, decimal-leading-zero);
  font: 500 12px/1.4 var(--ct-font-mono);
  letter-spacing: 0.06em;
  color: var(--ct-text-secondary);
}
.home-beat__text h3 {
  font-size: 1.0625rem;
}
.home-beat__text p {
  color: var(--ct-text-secondary);
}
/* Below the three-column width the story runs in one column, in its own
   order. On a tablet the first and third beat put the phone beside the text
   and the office screen keeps the full width. */
@media (max-width: 1039.98px) {
  .home-story {
    grid-template-columns: minmax(0, 1fr);
  }
  .home-beat__text {
    min-height: 0;
  }
}
@media (min-width: 560px) and (max-width: 1039.98px) {
  .home-beat:not(:nth-child(2)) {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 300px);
    column-gap: clamp(20px, 3vw, 40px);
    align-items: start;
  }
}
@media (max-width: 559.98px) {
  .home-beat .view--phone {
    max-width: 260px;
  }
}
/* Three across: the views start on the same line. */
@supports (grid-template-rows: subgrid) {
  @media (min-width: 1040px) {
    .home-beat {
      display: grid;
      grid-template-columns: minmax(0, 1fr);
      grid-template-rows: subgrid;
      grid-row: span 2;
      row-gap: 20px;
    }
    .home-beat__text {
      min-height: 0;
    }
  }
}

/* The Managed band: what each month brings, then what the customer keeps.
   The view on the left keeps the wide column. */
@media (min-width: 900px) {
  .page-home .split--flip {
    grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  }
}
.page-home #managed .rows {
  margin-top: 4px;
}
.home-keeps {
  color: var(--ct-text-secondary);
  max-width: 62ch;
}

/* How Managed starts: the two steps, beside the one request action. */
.home-request {
  display: grid;
  grid-template-columns: minmax(0, 7fr) minmax(0, 5fr);
  gap: 28px clamp(32px, 6vw, 80px);
  align-items: start;
  margin-top: clamp(40px, 6vw, 72px);
  padding: clamp(20px, 3vw, 32px);
  background: var(--ct-bg);
  border: 1px solid var(--ct-hairline);
  border-radius: var(--ct-radius);
}
.home-request__steps {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
.home-request__action {
  display: flex;
  flex-direction: column;
  gap: 16px;
}
@media (max-width: 899.98px) {
  .home-request {
    grid-template-columns: minmax(0, 1fr);
  }
}

/* Four facts: four across on a wide screen, two by two below that, so the
   last one never sits alone on a row. */
@media (min-width: 600px) and (max-width: 1199.98px) {
  .page-home #facts .facts {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* The closing band: the three doors under its line. */
.home-doors {
  display: flex;
  flex-wrap: wrap;
  gap: 0 28px;
  margin-top: 4px;
}
@media (max-width: 479.98px) {
  .home-doors {
    flex-direction: column;
  }
}
