/* Preserve-mode refinement. Design read: a designer portfolio for hiring teams,
   minimal and playful in the established light editorial language.
   Variance 6 / motion 4 / density 3. Source images are never regenerated:
   CSS viewports reframe authentic UI; the unchanged boards remain zoomable. */
.sensei-case-study .sensei-section { padding-block:80px; }
.sensei-case-study #the-challenge { padding-top:70px; }
.sensei-case-study #research { padding-top:55px; padding-bottom:55px; }
.sensei-case-study #qualitative-analysis { padding-top:35px; padding-bottom:35px; display:grid; grid-template-columns:.95fr 1.25fr; gap:7%; align-items:start; }
.sensei-case-study #design-principles { padding-top:45px; padding-bottom:55px; }
.sensei-case-study .sensei-glimpse { padding-top:65px; }
.sensei-glimpse .sensei-heading { max-width:850px; }
.sensei-glimpse-stage { display:grid; grid-template-columns:1.1fr 1fr; gap:9%; align-items:center; margin-top:45px; }
.sensei-glimpse-motion { width:min(320px,100%); justify-self:center; position:relative; }
.sensei-glimpse-motion::before { content:''; position:absolute; inset:15% -25% 5%; background:radial-gradient(ellipse,#e8dff69e,transparent 68%); z-index:-1; }
.sensei-glimpse-motion video { display:block; width:100%; height:auto; border-radius:17% / 8%; background:transparent; mix-blend-mode:multiply; }
.sensei-glimpse-motion figcaption,.sensei-glimpse-aside figcaption { font-size:.9rem; text-align:center; }
.sensei-glimpse-aside { min-width:0; }
.sensei-glimpse-aside > .case-handwriting { display:block; font-size:1.6rem; rotate:-5deg; margin:0 0 35px 25px; }
.sensei-glimpse-aside > .case-text-link { margin-top:38px; font-size:.95rem; }
.sensei-ui-detail { display:block; overflow:hidden; position:relative; aspect-ratio:1.35; border-radius:22px; background:#f4f1f8; }
.sensei-ui-detail--balance { --detail-turn:-5deg; }
.sensei-case-study .sensei-ui-detail--balance img { position:absolute; width:478.684%; max-width:none; left:-310.526%; top:50%; transform:translateY(-50.818%) rotate(var(--detail-turn)); transform-origin:75.316% 50.818%; }
.sensei-opening-evidence .sensei-heading { max-width:800px; }
.sensei-case-study .sensei-opening-evidence .sensei-heading > p:not(.case-kicker) { font-size:1.12rem; max-width:650px; }
.sensei-case-study .sensei-project-brief { max-width:650px; margin-top:20px; font-size:.94rem; }
.sensei-case-study .sensei-opening-evidence .sensei-heading > p:last-child { color:var(--case-muted); }
.sensei-case-study .sensei-analysis-label { margin-top:30px; }
.sensei-case-study .sensei-evidence { margin-top:22px; }
.sensei-case-study .sensei-activity { margin-top:45px; padding-block:25px; gap:22px 50px; }
.sensei-case-study .sensei-takeaway { margin-top:48px; }
.sensei-research-opening { grid-template-columns:1fr 210px; gap:8%; }
.sensei-research-character { width:190px; }
.sensei-survey-grid { gap:44px 7%; margin-top:40px; }
.sensei-case-study .sensei-survey-question { font-size:.94rem; min-height:3.1em; margin:0 0 15px; }
.sensei-survey-responses { margin:0; gap:8px; }
.sensei-survey-responses li { display:block; padding:0; font-size:.88rem; border-radius:0; }
.sensei-survey-responses li.is-leading { position:relative; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; gap:12px; min-height:185px; padding:20px 95px 20px 25px; margin-bottom:12px; border-radius:24px; background:radial-gradient(ellipse at 22% 65%,#eae2f7b5,transparent 78%); color:var(--portfolio-ink); }
.sensei-survey-responses li:not(.is-leading)::before { content:'Also'; display:inline-block; width:38px; margin-right:7px; color:#93839f; font-size:.73rem; }
.sensei-survey-responses li:last-child::before { content:''; }
.sensei-survey-responses small { margin:0; font-size:.68rem; font-weight:400; color:#7f649a; }
.sensei-case-study .sensei-survey-item h3 { font-size:clamp(1.7rem,2.9vw,2.55rem); min-height:0; line-height:1.15; }
.sensei-survey-mark { position:absolute; right:17px; top:40px; display:grid; place-items:center; width:70px; height:84px; color:#9a7dbf; font-family:"Bradley Hand","Segoe Print",cursive; font-size:5.3rem; font-weight:400; rotate:12deg; line-height:1; }
.sensei-survey-item--time .is-leading { padding-right:25px; }
.sensei-survey-numeral { display:inline-block; font-size:1.85em; font-variant-numeric:lining-nums; letter-spacing:-.055em; color:#76509e; }
.sensei-survey-unit { font-size:.55em; font-weight:400; letter-spacing:0; color:var(--case-muted); }
.sensei-survey-item--outside .is-leading { background:radial-gradient(ellipse at 70% 60%,#f1eafa,transparent 78%); }
.sensei-survey-item--outside .sensei-survey-mark { rotate:-7deg; }
.sensei-survey-item--help .sensei-survey-mark { font-size:4rem; rotate:-10deg; }
.sensei-case-study .sensei-survey-note { font-size:.74rem; margin-top:30px; max-width:100%; line-height:1.6; }
.sensei-case-study #qualitative-analysis .sensei-heading h2 { font-size:clamp(1.85rem,3.2vw,2.6rem); }
.sensei-case-study #qualitative-analysis .sensei-heading > p:last-child { font-size:1rem; }
.sensei-insight-map { grid-template-columns:1fr; gap:26px; margin-top:5px; }
.sensei-insight-map article { display:grid; grid-template-columns:1fr 28px 1.5fr; gap:15px; align-items:baseline; }
.sensei-gap { display:block; font-size:.88rem; color:#7a5f96; letter-spacing:0; }
.sensei-insight-arrow { display:block; text-align:left; font-size:1.3rem; line-height:1.3; margin:0; rotate:0deg; width:28px; }
.sensei-case-study .sensei-insight-map h3 { font-size:1.02rem; line-height:1.4; }
.sensei-case-study .sensei-insight-map p { font-size:.84rem; margin-top:6px; }
.sensei-case-study .sensei-analysis-conclusion { margin-top:28px; font-size:1rem; }
.sensei-principle-layout { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:36px; margin-top:40px; }
.sensei-principle-layout article:nth-child(2) { padding-top:30px; }
.sensei-principle-layout article:last-child { display:block; grid-column:auto; padding-top:60px; }
.sensei-principle-word,.sensei-principle-layout article:last-child .sensei-principle-word { font-size:2.3rem; margin-bottom:22px; text-align:left; }
.sensei-principle-visual { position:relative; display:block; width:100%; aspect-ratio:1.32; overflow:hidden; border-radius:18px; box-shadow:0 20px 42px #5f477314; background:#f7f5fa; }
.sensei-case-study .sensei-principle-visual img { position:absolute; max-width:none; }
.sensei-case-study .sensei-principle-visual--reasons img { width:115%; left:-7.5%; top:50%; transform:translateY(-59.3%); }
.sensei-case-study .sensei-principle-visual--shortcuts img { width:115%; left:-7.5%; top:50%; transform:translateY(-33%); }
.sensei-case-study .sensei-principle-layout h3 { margin-top:25px; font-size:clamp(1.1rem,1.7vw,1.5rem); line-height:1.3; }
.sensei-case-study .sensei-principle-layout p { font-size:.92rem; margin-top:10px; }
.sensei-case-study #the-direction { padding-top:25px; padding-bottom:35px; background:none; }
.sensei-case-study #the-direction h2 { font-size:1.25rem; letter-spacing:-.02em; }
.sensei-case-study #the-direction .sensei-route { margin-top:25px; }
.sensei-case-study #the-direction .sensei-route-point { margin-bottom:12px; }
.sensei-case-study #the-direction .sensei-route strong { font-size:1.2rem; }
.sensei-case-study #architecture { padding-top:45px; }
.sensei-screen-gallery { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:65px 38px; margin-top:55px; }
.sensei-screen-gallery article { min-width:0; }
.sensei-gallery-window { --image-width:1231; --image-height:2048; --window-width:270; --window-height:460; position:relative; display:block; overflow:hidden; aspect-ratio:var(--window-width) / var(--window-height); border-radius:22px; background:#f3f0f7; box-shadow:0 22px 50px #55456816; isolation:isolate; }
.sensei-case-study .sensei-gallery-window img { position:absolute; max-width:none; width:calc(var(--image-width) / var(--window-width) * 100%); left:calc(50% - var(--cx) / var(--window-width) * 100%); top:calc(50% - var(--cy) / var(--window-height) * 100%); transform-origin:calc(var(--cx) / var(--image-width) * 100%) calc(var(--cy) / var(--image-height) * 100%); transform:rotate(var(--turn)); }
.sensei-gallery-window--pitch { --cx:519; --cy:373; --turn:45deg; }
.sensei-gallery-window--experts { --cx:267; --cy:810; --turn:-45deg; }
.sensei-gallery-window--picks { --cx:941; --cy:1055; --turn:-45deg; }
.sensei-gallery-window--captain { --window-height:510; --cx:530; --cy:1290; --turn:45deg; }
.sensei-gallery-window--teams { --image-width:1819; --image-height:1344; --window-width:370; --window-height:522; --cx:459; --cy:493; --turn:5deg; }
.sensei-gallery-window--onboarding { --window-width:260; --window-height:440; --cx:914; --cy:1538; --turn:-45deg; }
.sensei-case-study .sensei-screen-gallery h3 { font-size:1.32rem; margin-top:28px; letter-spacing:-.03em; }
.sensei-case-study .sensei-screen-gallery p { font-size:.93rem; line-height:1.6; margin-top:10px; }
.sensei-case-study .sensei-screen-gallery .sensei-gallery-note { font-size:.73rem; line-height:1.5; margin-top:12px; }
.sensei-case-study .sensei-collection-link { margin-top:40px; font-size:.88rem; }
@media (min-width:1100px) { .sensei-screen-gallery article:nth-child(3n + 2) { padding-top:40px; } }
@media (max-width:1023px) {
  .sensei-case-study #qualitative-analysis { grid-template-columns:1fr; gap:28px; }
  .sensei-glimpse-stage { gap:6%; }
  .sensei-principle-layout { gap:24px; }
  .sensei-screen-gallery { gap:45px 25px; grid-template-columns:repeat(2,minmax(0,1fr)); }
  .sensei-survey-mark { font-size:4rem; width:55px; right:10px; }
  .sensei-survey-responses li.is-leading { padding-right:65px; padding-left:16px; }
}
@media (max-width:767px) {
  .sensei-case-study .sensei-section { padding-block:55px; }
  .sensei-case-study .sensei-glimpse { padding-top:40px; }
  .sensei-glimpse-stage { grid-template-columns:1fr; gap:38px; margin-top:30px; }
  .sensei-glimpse-motion { width:min(300px,100%); }
  .sensei-glimpse-aside { width:min(420px,100%); justify-self:center; }
  .sensei-glimpse-aside > .case-handwriting { font-size:1.3rem; margin-left:0; }
  .sensei-glimpse-aside > .case-text-link { margin-top:25px; }
  .sensei-case-study #the-challenge { padding-top:45px; }
  .sensei-case-study #research { padding-block:35px; }
  .sensei-survey-grid { grid-template-columns:1fr 1fr; gap:30px 25px; }
  .sensei-case-study .sensei-survey-question { font-size:.85rem; min-height:4.6em; }
  .sensei-case-study .sensei-survey-item h3 { font-size:1.5rem; }
  .sensei-survey-responses li.is-leading { min-height:160px; padding:15px; }
  .sensei-survey-mark { position:static; display:none; }
  .sensei-survey-responses li { font-size:.82rem; }
  .sensei-insight-map { grid-template-columns:1fr; gap:24px; }
  .sensei-insight-map article { display:grid; grid-template-columns:1fr 25px 1.5fr; gap:12px; }
  .sensei-insight-arrow { margin:0; }
  .sensei-insight-map article > div { grid-column:auto; }
  .sensei-case-study #qualitative-analysis { padding-block:30px; }
  .sensei-principle-layout { grid-template-columns:1fr; gap:40px; }
  .sensei-principle-layout article,.sensei-principle-layout article:last-child { display:grid; grid-template-columns:1fr 1.1fr; gap:0 25px; padding:0; align-items:center; }
  .sensei-principle-layout article:nth-child(2) { padding:0; }
  .sensei-principle-word,.sensei-principle-layout article:last-child .sensei-principle-word { grid-column:1; grid-row:1; font-size:2rem; margin-bottom:15px; }
  .sensei-principle-visual { grid-column:2; grid-row:1/4; }
  .sensei-case-study .sensei-principle-layout h3 { grid-column:1; font-size:1.1rem; margin:0; }
  .sensei-case-study .sensei-principle-layout p,.sensei-principle-layout article:last-child p { grid-column:1; font-size:.86rem; }
  .sensei-screen-gallery { gap:40px 25px; margin-top:35px; }
  .sensei-case-study .sensei-screen-gallery h3 { font-size:1.1rem; margin-top:22px; }
  .sensei-case-study .sensei-screen-gallery p { font-size:.88rem; }
}
@media (max-width:480px) {
  .sensei-insight-map article { grid-template-columns:1fr 20px 1.5fr; gap:10px; }
  .sensei-gap { font-size:.8rem; }
  .sensei-case-study .sensei-insight-map h3 { font-size:.95rem; }
  .sensei-case-study .sensei-insight-map p { font-size:.8rem; }
  .sensei-survey-grid { grid-template-columns:1fr; gap:34px; }
  .sensei-case-study .sensei-survey-question { font-size:.92rem; min-height:0; }
  .sensei-survey-responses li.is-leading { padding:20px 78px 20px 20px; min-height:170px; }
  .sensei-case-study .sensei-survey-item h3 { font-size:2rem; }
  .sensei-survey-item--time .is-leading { padding-right:20px; }
  .sensei-survey-mark { position:absolute; display:grid; right:12px; top:35px; }
  .sensei-survey-responses li { font-size:.87rem; }
  .sensei-research-opening { grid-template-columns:1fr; gap:12px; }
  .sensei-research-character { width:115px; }
  .sensei-principle-layout article,.sensei-principle-layout article:last-child { display:block; }
  .sensei-principle-word,.sensei-principle-layout article:last-child .sensei-principle-word { font-size:2rem; margin-bottom:18px; }
  .sensei-principle-visual { width:100%; max-width:360px; aspect-ratio:1.6; }
  .sensei-case-study .sensei-principle-layout h3 { font-size:1.35rem; margin-top:22px; }
  .sensei-case-study .sensei-principle-layout p { font-size:.95rem; }
  .sensei-screen-gallery { grid-template-columns:1fr; gap:45px; }
  .sensei-gallery-window { width:min(360px,100%); margin-inline:auto; }
  .sensei-case-study .sensei-screen-gallery h3 { font-size:1.3rem; }
  .sensei-case-study .sensei-screen-gallery p { font-size:.95rem; }
}

/* Search-led pacing: one decision, its real UI, and a short reason.
   Retain the existing hero, light canvas and all authentic source media. */
.sensei-case-study .sensei-design-choice { padding-left:18px; border-left:2px solid #d9cbea; margin-top:25px; font-size:.94rem !important; max-width:420px; }
.sensei-design-choice strong { display:block; color:var(--portfolio-ink); margin-bottom:6px; font-weight:550; }
.sensei-case-study #context { padding-top:65px; }
.sensei-case-study .sensei-context-details { margin-top:45px; }
.sensei-case-study .sensei-context-details .sensei-evidence-crop { aspect-ratio:1.6; }
.sensei-case-study .sensei-context-details .sensei-evidence-crop--before img { top:-140%; }
.sensei-case-study .sensei-context-details .sensei-evidence-crop--reasons img { top:-201%; }
.sensei-case-study .sensei-assist-options { grid-template-columns:1fr 1fr; gap:10%; align-items:start; max-width:880px; margin:42px 0 0; }
.sensei-assist-options > div { position:relative; padding:22px 0 12px; }
.sensei-assist-options > div::before { content:''; position:absolute; inset:0 -24px; z-index:-1; background:radial-gradient(ellipse at 30% 45%,#ede6f980,transparent 75%); }
.sensei-case-study .sensei-assist-options h3 { font-size:clamp(1.6rem,2.8vw,2.3rem); }
.sensei-case-study .sensei-assist-options p { font-size:1rem; max-width:340px; }
.sensei-case-study .sensei-assist-options .case-handwriting { display:block; margin-top:24px; font-size:1.35rem; rotate:-4deg; color:#8061ba; }
.sensei-demo-intro { margin:55px auto 0; text-align:center; }
.sensei-case-study .sensei-demo-intro h3 { font-size:1.22rem; letter-spacing:-.025em; }
.sensei-case-study .sensei-demo-intro p { font-size:.86rem; margin-top:10px; }
.sensei-case-study .sensei-build-stage { margin-top:25px; }
.sensei-case-study .sensei-build-note h3 { font-size:1.6rem; }
.sensei-case-study .sensei-review-detail { margin-top:40px; }
.sensei-case-study .sensei-review-detail .sensei-detail-note { font-size:.78rem; line-height:1.6; }
.sensei-case-study .sensei-business-note { max-width:720px; margin:24px auto 0; font-size:.9375rem; text-align:center; }
.sensei-case-study :is(.sensei-survey-note,.sensei-result-note,.sensei-activity > .case-small) { font-size:.9375rem; line-height:1.6; color:var(--portfolio-body); }
.sensei-crop--analysis { mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,#000 97.5%,transparent 100%); mask-composite:intersect; }
.sensei-case-study .sensei-screen-gallery { align-items:start; }
@media (max-width:767px) {
  .sensei-case-study #context { padding-top:45px; }
  .sensei-case-study .sensei-assist-options { gap:28px; margin-top:28px; }
  .sensei-case-study .sensei-assist-options h3 { font-size:1.55rem; }
  .sensei-case-study .sensei-assist-options p { font-size:.92rem; }
  .sensei-assist-options > div > span { font-size:.73rem; }
  .sensei-demo-intro { margin-top:40px; }
  .sensei-case-study .sensei-build-note h3 { font-size:1.3rem; }
  .sensei-case-study .sensei-context-details { margin-top:35px; gap:25px; }
}
@media (max-width:480px) {
  .sensei-case-study .sensei-assist-options { grid-template-columns:1fr 1fr; gap:22px; }
  .sensei-assist-options > div { padding-block:16px; }
  .sensei-assist-options > div > span:first-child { min-height:2.8em; font-size:.66rem; }
  .sensei-case-study .sensei-assist-options h3 { font-size:clamp(1.1rem,5.5vw,1.45rem); }
  .sensei-case-study .sensei-assist-options p { font-size:.84rem; line-height:1.6; }
  .sensei-case-study .sensei-assist-options .case-handwriting { margin-top:16px; font-size:1.1rem; }
  .sensei-case-study .sensei-build-note h3 { font-size:1.1rem; }
  .sensei-case-study .sensei-context-details { grid-template-columns:1fr; }
  .sensei-case-study .sensei-screen-gallery .sensei-gallery-note { font-size:.78rem; }
}
