/* Team Sensei — a new chapter, not a new visual identity.
   Design-taste calibration: variance 6 / motion 4 / density 3.
   Light editorial canvas, portfolio typography and purple annotations; actual
   Behance product media stays intact. All new styling is page-local. */
.sensei-case-study { --case-blue:var(--portfolio-purple); --case-blue-ink:#6b45c5; --sensei-soft:#f2eefb; }
.sensei-case-study .case-handwriting { color:#8061ba; }
.sensei-case-study main > section:not(.case-opening):not(.contact-chapter) { scroll-margin-top:50px; }
.sensei-section { padding-block:100px; }
.sensei-heading { max-width:690px; }
.sensei-heading > p:not(.case-kicker) { max-width:570px; }
.sensei-case-study p { text-wrap:pretty; }
.sensei-heading--center { margin-inline:auto; text-align:center; }
.sensei-heading--center > p { margin-inline:auto; }
.sensei-case-study .sensei-opening-grid { min-height:665px; grid-template-columns:1fr 1fr; padding:20px 3% 0; }
.sensei-case-study h1 { font-size:clamp(4rem,7.4vw,6.5rem); }
.sensei-hero { position:relative; width:100%; height:650px; isolation:isolate; }
.sensei-hero-aura { position:absolute; inset:10% -13% 0; z-index:-1; background:radial-gradient(ellipse at 47% 49%,#e5dcf7a6,transparent 63%); }
.sensei-hero-phone { position:absolute; width:310px; top:19px; left:23%; transform:rotate(7deg); mix-blend-mode:multiply; animation:sensei-float 7s ease-in-out infinite; animation-play-state:paused; }
.sensei-hero.is-motion-active .sensei-hero-phone { animation-play-state:running; }
.sensei-hero-device { display:block; position:relative; aspect-ratio:670/1365; overflow:hidden; border-radius:17% / 8.5%; }
.sensei-case-study .sensei-hero-device img { position:absolute; width:417.91%; max-width:none; left:-238.06%; top:-50.91%; }
.sensei-hero-cue { position:absolute; display:flex; align-items:center; gap:12px; padding:15px 20px; background:#fff; border:1px solid #efecf3; border-radius:18px; font-size:.88rem; font-weight:650; box-shadow:0 17px 40px #53437212; }
.sensei-hero-cue svg { width:23px; height:23px; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.sensei-hero-cue--form { top:26%; left:-7%; rotate:-7deg; }
.sensei-hero-cue--form svg { color:#ed8a36; }
.sensei-hero-cue--picks { bottom:19%; right:-3%; rotate:6deg; }
.sensei-hero-cue--picks svg { color:#8c55ed; }
.sensei-case-study .sensei-hero-note { position:absolute; top:-20px; right:-5%; width:128px; text-align:center; rotate:8deg; margin:0; }
.sensei-hero-note svg { display:block; width:90px; height:73px; margin-left:10px; stroke:#9170c8; stroke-width:1.5; stroke-linecap:round; stroke-linejoin:round; }
.sensei-meta { display:grid; grid-template-columns:repeat(3,1fr); gap:35px; padding:30px 3% 25px; }
.sensei-meta dt { color:var(--case-muted); font-size:.78rem; margin-bottom:10px; }
.sensei-meta dd { font-size:1.03rem; font-weight:600; }
.sensei-meta small { display:block; margin-top:7px; color:var(--case-muted); font-size:.8rem; font-weight:400; }
.sensei-evidence { display:grid; grid-template-columns:1fr 1fr; gap:14%; max-width:1060px; margin:50px auto 0; }
.sensei-evidence article { min-width:0; }
.sensei-evidence strong { display:block; font-size:clamp(3.8rem,7.5vw,6rem); letter-spacing:-.045em; line-height:1.15; }
.sensei-evidence strong > span { font-size:.55em; margin-left:.05em; }
.sensei-evidence strong .sensei-down { font-size:.5em; color:#ad93d2; margin-left:.25em; }
.sensei-case-study .sensei-evidence h3 { font-size:1.35rem; letter-spacing:-.025em; margin-top:13px; }
.sensei-case-study .sensei-evidence p { font-size:1rem; max-width:300px; margin-top:10px; }
.sensei-information-art { position:relative; height:130px; display:flex; align-items:center; gap:35px; }
.sensei-info-icon { display:grid; place-items:center; width:67px; height:67px; border:1px solid #ded5f1; border-radius:22px; background:#f5f0ff; font-family:Georgia,serif; font-style:italic; font-size:34px; color:#855ab5; rotate:-8deg; }
.sensei-info-ring { position:absolute; border:1px dashed #c1b1d7; width:100px; height:100px; border-radius:50%; left:-16px; top:17px; rotate:18deg; }
.sensei-information-art .case-handwriting { rotate:-4deg; font-size:1.05rem; }
.sensei-drop-art { height:130px; display:flex; gap:18px; align-items:end; padding-bottom:20px; position:relative; }
.sensei-drop-art > span { width:51px; height:94px; border-radius:7px 7px 0 0; background:#e4d9f3; }
.sensei-drop-art > span:nth-child(2) { height:47px; background:#a78cc7; }
.sensei-drop-art svg { position:absolute; width:94px; height:64px; left:117px; top:20px; stroke:#a78cc7; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.sensei-case-study .sensei-takeaway { margin:90px auto 0; max-width:900px; text-align:center; color:var(--portfolio-ink); font-size:clamp(1.6rem,3vw,2.5rem); line-height:1.35; letter-spacing:-.045em; }
.sensei-takeaway span { color:var(--case-blue-ink); }
.sensei-research-opening { display:grid; grid-template-columns:1fr .5fr; gap:15%; align-items:center; }
.sensei-research-character { width:230px; justify-self:center; mix-blend-mode:multiply; }
.sensei-research-findings { display:grid; grid-template-columns:1fr 1fr; gap:62px 12%; margin-top:60px; }
.sensei-research-findings article { padding:0 0 0 22px; border-left:2px solid #e6def1; }
.sensei-finding-index { display:block; color:var(--case-muted); font-size:.73rem; margin-bottom:16px; letter-spacing:.06em; }
.sensei-case-study .sensei-research-findings h3 { font-size:clamp(1.5rem,2.6vw,2rem); letter-spacing:-.035em; }
.sensei-case-study .sensei-research-findings p { font-size:1rem; max-width:370px; margin-top:14px; }
.sensei-finding-response { display:inline-block; color:#755699; font-size:.86rem; margin-top:20px; }
.sensei-finding-response::before { content:'↳'; display:inline-block; margin-right:10px; }
.sensei-case-study .sensei-survey-note { margin-top:45px; max-width:650px; font-size:.75rem; }
.sensei-direction { background:linear-gradient(180deg,transparent,#f2eff881 27%,#f2eff881 70%,transparent); }
.sensei-route { display:grid; grid-template-columns:repeat(3,1fr); margin-top:65px; gap:0; }
.sensei-route a { position:relative; padding:0 35px 0 0; }
.sensei-route a::before { content:''; position:absolute; top:17px; left:18px; right:-18px; height:1px; background:#d9cce9; z-index:0; }
.sensei-route a:last-child::before { display:none; }
.sensei-route-point { position:relative; display:grid; place-items:center; width:36px; height:36px; border-radius:50%; background:#f4f0fa; border:1px solid #ccb9e5; font-size:.7rem; color:#8764b2; margin-bottom:22px; }
.sensei-route strong { display:block; font-size:1.45rem; letter-spacing:-.035em; margin-bottom:8px; }
.sensei-route a > span:last-child { color:var(--case-muted); font-size:.9rem; }
.sensei-route a:hover strong { color:var(--case-blue-ink); }
.sensei-case-study .sensei-direction-note { text-align:right; margin:45px 0 0; rotate:-3deg; }
.sensei-decision-grid { display:grid; grid-template-columns:1fr 1fr; gap:8%; align-items:center; }
.sensei-decision-copy { max-width:465px; }
.sensei-case-study .sensei-decision-copy > p:not(.case-kicker):not(.case-handwriting) { font-size:1.13rem; max-width:400px; }
.sensei-decision-copy .case-handwriting { margin-top:32px; rotate:-4deg; }
.sensei-demo { position:relative; isolation:isolate; width:100%; justify-self:center; text-align:center; }
.sensei-phone-video { width:100%; border-radius:17% / 8%; mix-blend-mode:multiply; }
.sensei-case-study .sensei-demo video { background:transparent; }
.sensei-demo--context { max-width:365px; }
.sensei-demo-glow { position:absolute; inset:15% -30% 3%; background:radial-gradient(ellipse,#e5dcf882,transparent 69%); pointer-events:none; z-index:-1; }
.sensei-tips { display:grid; grid-template-columns:1fr 1fr; align-items:center; gap:11%; margin:105px auto 0; max-width:1000px; }
.sensei-demo--tips { max-width:305px; }
.sensei-case-study .sensei-demo figcaption { margin-top:22px; font-size:.8rem; }
.sensei-assistance { background:linear-gradient(180deg,transparent,#f4f1fa77 35%,#f6f3fa6b 70%,transparent); }
.sensei-build-stage { display:grid; grid-template-columns:1fr 1.45fr 1fr; align-items:center; gap:50px; margin:55px auto 0; max-width:1140px; }
.sensei-demo--build { width:100%; max-width:415px; }
.sensei-build-note--last { padding-top:210px; }
.sensei-build-note--first { padding-bottom:160px; }
.sensei-annotation-number { display:block; font-size:.8rem; color:#9b80bd; margin-bottom:18px; }
.sensei-case-study .sensei-build-note h3 { font-size:1.65rem; }
.sensei-case-study .sensei-build-note p { font-size:1rem; margin-top:13px; }
.sensei-build-note svg { width:100%; max-width:180px; height:70px; stroke:#b69bd4; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; margin-top:10px; }
.sensei-build-note--last svg { margin-left:-25%; }
.sensei-assist-options { display:grid; grid-template-columns:1fr 160px 1fr; gap:40px; align-items:center; margin:70px auto 0; max-width:870px; }
.sensei-assist-options > div > span { display:block; font-size:.87rem; color:var(--case-muted); margin-bottom:12px; }
.sensei-case-study .sensei-assist-options h3 { font-size:1.9rem; letter-spacing:-.035em; }
.sensei-assist-options > .case-handwriting { text-align:center; rotate:-6deg; }
.sensei-case-study .sensei-assist-caption { text-align:center; font-size:1rem; max-width:610px; margin:38px auto 0; }
.sensei-review-stage { display:grid; grid-template-columns:1fr 1fr; position:relative; max-width:920px; gap:10%; margin:35px auto 0; }
.sensei-review-phone--analysis { padding-top:135px; }
.sensei-review-phone { min-width:0; }
.sensei-crop { position:relative; display:block; overflow:hidden; mix-blend-mode:multiply; }
.sensei-case-study .sensei-crop img { position:absolute; width:var(--crop-width); max-width:none; top:var(--crop-top); left:var(--crop-left); }
.sensei-crop--teams { aspect-ratio:870/1630; --crop-width:321.84%; --crop-left:-32.18%; --crop-top:-7.85%; mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent),linear-gradient(to bottom,#000 90%,transparent); mask-composite:intersect; }
.sensei-crop--analysis { aspect-ratio:875/1498; --crop-width:320%; --crop-left:-189.14%; --crop-top:-38.05%; mask-image:linear-gradient(to right,transparent,#000 5%,#000 95%,transparent); }
.sensei-review-phone figcaption { text-align:center; }
.sensei-review-note { position:absolute; top:20px; right:5px; rotate:5deg; }
.sensei-review-note svg { display:block; width:130px; height:83px; stroke:#a78cc8; stroke-width:1.8; stroke-linecap:round; stroke-linejoin:round; margin-top:9px; }
.sensei-review-principles { display:grid; grid-template-columns:repeat(3,1fr); gap:40px; margin:55px auto 0; max-width:1070px; }
.sensei-review-principles > div { border-top:1px solid #e4dcec; padding-top:20px; }
.sensei-review-principles span { font-size:.92rem; font-weight:600; }
.sensei-case-study .sensei-review-principles p { font-size:.98rem; margin-top:12px; }
.sensei-outcomes { background:radial-gradient(ellipse at 80% 43%,#f0e9f98c,transparent 55%); }
.sensei-time-result { display:grid; grid-template-columns:1fr 80px 1fr; align-items:center; max-width:900px; margin:65px auto 0; }
.sensei-time-result > div > span { display:block; font-size:.8rem; color:var(--case-muted); margin-bottom:12px; }
.sensei-time-result strong { font-size:clamp(6rem,12vw,10rem); font-weight:650; line-height:1; letter-spacing:-.055em; display:block; }
.sensei-time-result small { font-size:.17em; font-weight:400; margin-left:12px; letter-spacing:-.02em; }
.sensei-time-before strong { color:#b4afb9; }
.sensei-time-after strong { color:#7c4dba; }
.sensei-time-arrow { font-size:2.8rem; color:#b6a5ca; align-self:center; margin-top:24px; }
.sensei-time-track { background:#efeaf4; height:7px; border-radius:10px; overflow:hidden; margin-top:28px; }
.sensei-time-track i { display:block; width:100%; height:100%; background:#c8c0d0; border-radius:inherit; }
.sensei-time-after .sensei-time-track i { background:#9570c6; width:25%; }
.sensei-case-study .sensei-result-label { font-size:1.08rem; text-align:center; color:var(--portfolio-ink); margin-top:35px; }
.sensei-case-study .sensei-result-note { text-align:center; font-size:.73rem; margin-top:10px; }
.sensei-case-study .sensei-business-results { display:grid; grid-template-columns:1fr 1.3fr .8fr; gap:50px; margin:75px auto 0; max-width:1080px; padding-top:40px; border-top:1px solid #e5dcef; }
.sensei-business-results dt { font-size:.84rem; color:var(--case-muted); margin-bottom:14px; }
.sensei-business-results dd { font-size:clamp(2rem,3.7vw,3.2rem); font-weight:650; letter-spacing:-.03em; white-space:nowrap; }
.sensei-business-results dd span { font-size:.55em; margin-left:1px; }
.sensei-business-results .sensei-metric-arrow { font-size:.55em; color:#b9a1d2; margin-inline:.4em; }
.sensei-final-work { margin-top:60px !important; }
.sensei-final-work > a { display:block; aspect-ratio:2800/4180; overflow:hidden; border-radius:16px; background:#faf9fa; }
.sensei-final-work img { width:100%; }
.sensei-reflection { text-align:center; padding:80px 0 100px; }
.sensei-case-study .sensei-reflection h2 { font-size:clamp(2rem,4vw,3.35rem); line-height:1.18; }
.sensei-reflection h2 span { color:var(--case-blue-ink); }
.sensei-case-study .sensei-reflection p:not(.case-kicker) { font-size:1.12rem; margin-top:25px; }
.sensei-reflection .case-source-link { font-size:.76rem; color:var(--case-muted); margin-top:25px; }
.sensei-next { padding-block:45px; border-top:1px solid #e9e5eb; }
.sensei-next a { display:block; }
.sensei-next strong { display:flex; align-items:center; justify-content:space-between; gap:20px; max-width:900px; font-size:clamp(1.8rem,3.2vw,2.7rem); letter-spacing:-.045em; }
.sensei-next strong > span { color:var(--case-blue); }
.sensei-next a > span:last-child { display:block; margin-top:12px; color:var(--case-muted); font-size:1rem; }
.sensei-case-study .contact-chapter { margin-top:45px; }
@keyframes sensei-float { 0%,100% { transform:translateY(0) rotate(7deg); } 50% { transform:translateY(-9px) rotate(6deg); } }
@media (min-width:1500px) { .sensei-case-study .case-wide { width:min(1320px,calc(100% - var(--page-padding)*2)); } }
@media (max-width:1000px) {
  .sensei-hero { height:570px; }
  .sensei-hero-phone { width:265px; left:16%; }
  .sensei-hero-cue { font-size:.76rem; padding:12px; gap:8px; }
  .sensei-hero-cue--form { left:-5%; }
  .sensei-hero-cue--picks { right:-1%; bottom:15%; }
  .sensei-case-study .sensei-hero-note { right:-2%; }
  .sensei-hero-note .case-handwriting { font-size:1rem; }
  .sensei-case-study .sensei-opening-grid { min-height:585px; }
  .sensei-build-stage { gap:25px; grid-template-columns:1fr 1.7fr 1fr; }
  .sensei-case-study .sensei-build-note h3 { font-size:1.35rem; }
  .sensei-case-study .sensei-build-note p { font-size:.9rem; }
  .sensei-review-stage { gap:5%; }
  .sensei-case-study .sensei-business-results { gap:25px; }
}
@media (max-width:767px) {
  .sensei-section { padding-block:65px; }
  .sensei-case-study .sensei-opening-grid { grid-template-columns:1fr; padding:35px 0 0; gap:30px; }
  .sensei-case-study h1 { font-size:4.4rem; }
  .sensei-hero { width:min(440px,100%); height:650px; justify-self:center; }
  .sensei-hero-phone { left:21%; width:270px; top:70px; }
  .sensei-hero-cue--form { left:0; top:28%; }
  .sensei-hero-cue--picks { right:0; bottom:13%; }
  .sensei-case-study .sensei-hero-note { top:0; right:0; }
  .sensei-meta { padding:10px 0 15px; gap:20px; }
  .sensei-meta dd { font-size:.9rem; }
  .sensei-meta small { font-size:.73rem; line-height:1.5; }
  .sensei-evidence { gap:8%; margin-top:35px; }
  .sensei-evidence strong { font-size:3.9rem; }
  .sensei-information-art .case-handwriting { display:none; }
  .sensei-case-study .sensei-evidence h3 { font-size:1.18rem; }
  .sensei-case-study .sensei-evidence p { font-size:.95rem; }
  .sensei-case-study .sensei-takeaway { margin-top:55px; }
  .sensei-research-opening { grid-template-columns:1fr 150px; gap:20px; }
  .sensei-research-character { width:150px; }
  .sensei-research-findings { gap:40px 28px; }
  .sensei-case-study .sensei-research-findings p { font-size:.94rem; }
  .sensei-route { margin-top:40px; }
  .sensei-route a { padding-right:20px; }
  .sensei-route strong { font-size:1.15rem; }
  .sensei-route a > span:last-child { font-size:.8rem; line-height:1.45; display:block; }
  .sensei-decision-grid { grid-template-columns:1fr; gap:45px; }
  .sensei-demo--context { max-width:340px; }
  .sensei-tips { gap:30px; margin-top:80px; grid-template-columns:1fr 1fr; }
  .sensei-case-study .sensei-tips .sensei-decision-copy p:not(.case-kicker):not(.case-handwriting) { font-size:.97rem; }
  .sensei-case-study .sensei-tips h3 { font-size:1.8rem; }
  .sensei-build-stage { gap:25px; grid-template-columns:1fr 1fr; margin-top:40px; }
  .sensei-demo--build { grid-column:1/-1; grid-row:1; max-width:365px; }
  .sensei-build-note { padding:0; }
  .sensei-build-note svg { display:none; }
  .sensei-assist-options { margin-top:50px; gap:25px; grid-template-columns:1fr 1fr; }
  .sensei-assist-options > .case-handwriting { grid-column:1/-1; grid-row:2; }
  .sensei-case-study .sensei-assist-options h3 { font-size:1.5rem; }
  .sensei-case-study .sensei-assist-caption { margin-top:25px; font-size:.95rem; }
  .sensei-review-stage { margin-top:35px; gap:0; }
  .sensei-review-phone--analysis { padding-top:100px; }
  .sensei-review-note { top:0; right:4%; }
  .sensei-review-note .case-handwriting { font-size:.94rem; }
  .sensei-review-note svg { width:80px; height:50px; }
  .sensei-review-principles { gap:20px; margin-top:35px; }
  .sensei-review-principles span { font-size:.83rem; }
  .sensei-case-study .sensei-review-principles p { font-size:.87rem; }
  .sensei-time-result { gap:20px; grid-template-columns:1fr 40px 1fr; margin-top:45px; }
  .sensei-time-result strong { font-size:7rem; }
  .sensei-time-result > div > span { min-height:2.6em; font-size:.73rem; }
  .sensei-time-arrow { font-size:2rem; }
  .sensei-case-study .sensei-business-results { gap:20px; margin-top:50px; }
  .sensei-business-results dd { font-size:1.9rem; }
  .sensei-business-results dt { font-size:.75rem; min-height:2.6em; }
  .sensei-final-work { margin-top:35px !important; }
  .sensei-final-work > a { border-radius:8px; }
  .sensei-reflection { padding-block:55px; }
}
@media (max-width:480px) {
  .sensei-case-study h1 { font-size:4rem; }
  .sensei-hero { height:610px; }
  .sensei-hero-phone { width:240px; left:18%; top:70px; }
  .sensei-hero-cue { font-size:.72rem; padding:11px; }
  .sensei-hero-cue svg { width:18px; height:18px; }
  .sensei-meta { grid-template-columns:1fr; gap:0; }
  .sensei-meta > div { display:grid; grid-template-columns:85px 1fr; align-items:baseline; gap:20px; padding-block:12px; }
  .sensei-meta dt { margin:0; }
  .sensei-meta small { margin-top:4px; }
  .sensei-evidence { gap:7%; }
  .sensei-evidence strong { font-size:2.8rem; }
  .sensei-information-art,.sensei-drop-art { height:110px; }
  .sensei-drop-art svg { left:85px; width:55px; top:20px; }
  .sensei-drop-art > span { width:34px; height:80px; }
  .sensei-drop-art > span:nth-child(2) { height:40px; }
  .sensei-drop-art { gap:12px; }
  .sensei-research-opening { grid-template-columns:1fr; }
  .sensei-research-character { width:135px; justify-self:end; margin-top:-10px; margin-bottom:-15px; }
  .sensei-research-findings { gap:32px; grid-template-columns:1fr; margin-top:30px; }
  .sensei-case-study .sensei-survey-note { font-size:.7rem; }
  .sensei-route a { padding-right:12px; }
  .sensei-route strong { font-size:1.02rem; }
  .sensei-route a > span:last-child { font-size:.74rem; }
  .sensei-case-study .sensei-direction-note { text-align:center; font-size:1.05rem; }
  .sensei-tips { grid-template-columns:1fr; gap:40px; }
  .sensei-tips .sensei-decision-copy { grid-row:1; }
  .sensei-demo--tips { max-width:295px; }
  .sensei-review-stage { grid-template-columns:1fr; max-width:350px; }
  .sensei-review-phone--analysis { padding-top:40px; }
  .sensei-review-note { display:none; }
  .sensei-review-principles { grid-template-columns:1fr; gap:18px; }
  .sensei-review-principles > div { display:grid; grid-template-columns:1fr 1fr; align-items:baseline; gap:20px; padding-top:15px; }
  .sensei-case-study .sensei-review-principles p { margin:0; }
  .sensei-time-result { gap:10px; grid-template-columns:1fr 30px 1fr; }
  .sensei-time-result strong { font-size:6rem; }
  .sensei-time-result small { margin-left:5px; }
  .sensei-case-study .sensei-business-results { grid-template-columns:1fr; gap:25px; }
  .sensei-business-results > div { display:flex; justify-content:space-between; align-items:center; gap:20px; }
  .sensei-business-results dt { min-height:0; margin:0; }
  .sensei-business-results dd { font-size:2rem; }
  .sensei-final-work > a { aspect-ratio:auto; overflow-x:auto; }
  .sensei-case-study .sensei-final-work img { width:680px; max-width:none; margin-bottom:-110px; }
}
@media (prefers-reduced-motion:reduce) {
  .sensei-case-study { scroll-behavior:auto; }
  .sensei-case-study .sensei-hero-phone { animation:none; }
  .sensei-case-study .case-can-reveal { transition:none; opacity:1; transform:none; }
}
