/* MindSchool testimonials — compact cards used on the homepage ("More member stories") and on workshop pages. */
.ts-head{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;flex-wrap:wrap}
.ts-head h3{font-size:clamp(24px,2.4vw,32px);letter-spacing:-.025em}
.ts-head p{margin-top:8px;color:var(--ink-soft);font-size:16px}
.ts-arrows{display:flex;gap:10px}
.ts-arrows[hidden]{display:none}
.ts-arr{width:46px;height:46px;border-radius:50%;border:1.5px solid var(--line-l);background:var(--white);color:var(--ink);font:600 22px/1 var(--sans);cursor:pointer;display:grid;place-items:center;transition:border-color .2s,opacity .2s}
.ts-arr:hover:not([disabled]){border-color:var(--royal);color:var(--royal)}
.ts-arr[disabled]{opacity:.35;cursor:default}
.ts-row{margin-top:28px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;align-items:start}
.ts-row.ts-scroll{display:flex;align-items:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:14px;scrollbar-width:thin;-webkit-overflow-scrolling:touch}
.ts-row.ts-scroll>.ts-card{flex:0 0 calc((100% - 54px) / 3.4);min-width:280px;scroll-snap-align:start}
.ts-card{margin:0;position:relative;display:flex;flex-direction:column;background:var(--white);border:1px solid var(--line-l);border-radius:12px;overflow:hidden;min-width:0;text-align:left;color:var(--ink);font:inherit}
.ts-card.text{padding:26px 24px 22px}
.ts-card .qm{font:800 56px/0.6 var(--serif);color:var(--royal);height:26px}
.ts-card blockquote{margin:12px 0 0;padding:0;font:500 16.5px/1.6 var(--sans);color:var(--ink);display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;overflow:hidden}
.ts-card.open blockquote{-webkit-line-clamp:unset;display:block}
.ts-more-btn{text-decoration:none;align-self:flex-start;margin-top:8px;background:none;border:0;padding:0;font:700 14px/1.4 var(--sans);color:var(--royal);cursor:pointer}
.ts-who{margin-top:auto;padding-top:18px;display:flex;align-items:center;gap:12px}
.ts-av{flex:none;width:42px;height:42px;border-radius:50%;background:linear-gradient(160deg,#2E5BFF,#0B1B38);color:#fff;display:grid;place-items:center;font:700 15px/1 var(--sans);overflow:hidden}
.ts-av img{width:100%;height:100%;object-fit:cover}
.ts-who b{display:block;font:700 15px/1.25 var(--sans);color:var(--ink)}
.ts-who .r{display:block;font-size:13px;color:var(--ink-soft)}
.ts-card.video{padding:0;border:1px solid var(--line-l);transition:transform .25s,box-shadow .25s}
.ts-vbtn{display:block;width:100%;padding:0;margin:0;border:0;background:none;cursor:pointer;font:inherit;color:inherit;text-align:left}
.ts-card.video:hover{transform:translateY(-3px);box-shadow:0 26px 50px -34px rgba(11,27,56,.5)}
.ts-th{display:block;position:relative;aspect-ratio:16/10;background:linear-gradient(160deg,#1B3A73,#07122A) center/cover no-repeat;background-color:#0B1B38}
.ts-th::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,rgba(5,14,32,.45),transparent 55%)}
.ts-pl{position:absolute;left:16px;bottom:14px;z-index:1;width:48px;height:48px;border-radius:50%;background:rgba(255,255,255,.95);display:grid;place-items:center}
.ts-card.video .ts-bd{padding:16px 18px 18px;display:flex;flex-direction:column;flex:1}
.ts-card.video blockquote{margin:0 0 4px;font-size:15px;-webkit-line-clamp:3}
.ts-card.video .ts-who{padding-top:10px}
.ts-card:focus-visible,.ts-vbtn:focus-visible,.ts-tag:focus-visible{outline:3px solid var(--royal-hi);outline-offset:3px}
/* course tag + one-line headline on member stories */
.ts-tag{align-self:flex-start;display:inline-block;max-width:100%;margin-bottom:12px;font:700 11.5px/1.3 var(--sans);letter-spacing:.04em;color:#1E46D8;background:#E8EEFF;padding:6px 10px;border-radius:999px;text-decoration:none;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ts-tag:hover{background:#D9E3FF}
.ts-card.video .ts-tag{margin:0 0 10px}
.ts-hd{margin:2px 0 0;font:700 19px/1.3 var(--sans);letter-spacing:-.01em;color:var(--ink)}
.ts-hd+blockquote{margin-top:10px;color:var(--ink-soft);font-size:15.5px}
/* on dark sections */
.dark .ts-head p,.midnight .ts-head p{color:#B9C6DD}
/* homepage strip sits under the existing big grid */
.ts-home-more{margin-top:56px}
/* own video modal on pages that don't already have one (workshop pages) */
.ts-modal{position:fixed;inset:0;z-index:100;background:rgba(5,14,32,.88);backdrop-filter:blur(6px);display:grid;place-items:center;padding:24px}
.ts-modal[hidden]{display:none}
.ts-modal .box{position:relative;width:min(960px,100%);aspect-ratio:16/9;border-radius:8px;background:#000}
.ts-modal iframe{position:absolute;inset:0;width:100%;height:100%;border:0;border-radius:8px}
.ts-modal .x{position:absolute;top:-48px;right:0;background:none;border:0;color:#fff;font:600 15px/1 var(--sans);cursor:pointer;padding:10px}
@media (max-width:960px){.ts-row{grid-template-columns:1fr 1fr}.ts-row.ts-scroll>.ts-card{flex-basis:46%}}
@media (max-width:640px){
  .ts-row,.ts-row.ts-scroll{display:flex;align-items:flex-start;align-items:flex-start;overflow-x:auto;scroll-snap-type:x mandatory;margin-inline:calc(var(--gut) * -1);padding-inline:var(--gut);scroll-padding-left:var(--gut);gap:12px;padding-bottom:12px}
  .ts-row>.ts-card,.ts-row.ts-scroll>.ts-card{flex:0 0 84%;min-width:0;scroll-snap-align:start}
  .ts-arrows{display:none}
}
@media (prefers-reduced-motion:reduce){.ts-card.video{transition:none}}

/* homepage: video row + stories row headers */
.ms-rowhead{display:flex;justify-content:space-between;align-items:flex-end;gap:16px;flex-wrap:wrap;margin-top:56px}
.ms-rowhead h3{font-size:clamp(20px,2vw,26px);letter-spacing:-.02em}
.ms-rowhead p{margin-top:6px;color:var(--ink-soft);font-size:15px}
.ms-rowhead .ms-acts{display:flex;gap:12px;align-items:center;flex-wrap:wrap}
.ts-row.ms-vids{margin-top:22px}
.ts-row.ms-vids.ts-scroll>.ts-card{flex-basis:calc((100% - 54px) / 3.3)}
.ts-row.ms-vids .ts-th{aspect-ratio:16/10}
.ms-stories-cta{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.ms-stories-empty{margin-top:28px;border:1.5px dashed var(--line-l);border-radius:12px;padding:28px;display:flex;justify-content:space-between;align-items:center;gap:18px;flex-wrap:wrap;background:var(--white)}
.ms-stories-empty[hidden]{display:none}
.ms-stories-empty b{display:block;font-size:19px;color:var(--ink)}
.ms-stories-empty p{margin:4px 0 0;color:var(--ink-soft)}
@media (max-width:960px){.ts-row.ms-vids.ts-scroll>.ts-card{flex-basis:46%}}
@media (max-width:640px){.ts-row.ms-vids>.ts-card,.ts-row.ms-vids.ts-scroll>.ts-card{flex:0 0 84%}.ms-rowhead{margin-top:40px}}

/* homepage stories: a few cards, then "Read all stories" */
.ms-stories-cta.below{justify-content:center;margin-top:34px}
.ts-card.text[data-url] blockquote{-webkit-line-clamp:6}
