
:root{--bg:#f4f0e8;--s:#fffdf8;--ink:#11110f;--m:#66635c;--line:#cbc5b8;--a:#dfff42;--purple:#6848ff}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.6 Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;-webkit-font-smoothing:antialiased}a{color:inherit}.wrap{width:min(1060px,calc(100% - 40px));margin:auto}.nav{height:70px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-weight:950;text-decoration:none;font-size:20px}.back{font-size:13px;font-weight:800;text-decoration:none;border:1px solid var(--line);background:var(--s);padding:9px 13px;border-radius:999px}.hero{padding:80px 0 60px}.eyebrow{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:850;color:var(--m)}h1{font-size:clamp(52px,8vw,94px);line-height:.91;letter-spacing:-.065em;font-weight:550;margin:22px 0 26px}.intro{font-size:21px;color:var(--m);max-width:820px}.facts{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:20px;overflow:hidden;margin-top:42px}.fact{background:var(--s);padding:22px}.fact b{display:block;font-size:23px;letter-spacing:-.03em}.fact span{font-size:11px;color:var(--m);text-transform:uppercase;letter-spacing:.08em}.section{padding:70px 0;border-top:1px solid var(--line)}.grid{display:grid;grid-template-columns:220px 1fr;gap:55px}.label{font-size:11px;letter-spacing:.13em;text-transform:uppercase;font-weight:850;color:var(--m)}h2{font-size:clamp(35px,5vw,54px);line-height:1;letter-spacing:-.045em;margin:0 0 22px;font-weight:560}p{color:var(--m)}.big{font-size:20px}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin-top:28px}.card{background:var(--s);border:1px solid var(--line);border-radius:18px;padding:22px}.card h3{margin:0 0 7px;font-size:21px}.flow{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:28px}.flow div{background:var(--ink);color:var(--bg);padding:18px;border-radius:15px;font-weight:800;font-size:13px}.flow small{display:block;color:#aaa;margin-top:6px;font-weight:500}.outcome{background:var(--ink);color:var(--bg)}.outcome p{color:#c8c5bd}.quote{font-size:clamp(31px,5vw,54px);line-height:1.08;letter-spacing:-.045em;margin:0}.quote em{font-style:normal;color:var(--a)}.tags{display:flex;flex-wrap:wrap;gap:7px;margin-top:24px}.tag{border:1px solid var(--line);border-radius:999px;padding:6px 10px;font-size:12px;font-weight:800}.next{display:flex;justify-content:space-between;gap:12px;padding:45px 0}.next a{font-weight:850;text-decoration:none}.note{font-size:12px;color:var(--m);margin-top:25px}
@media(max-width:720px){.wrap{width:calc(100% - 24px)}.nav{height:64px}.hero{padding:48px 0 40px}h1{font-size:clamp(48px,15vw,68px)}.intro{font-size:17px}.facts{grid-template-columns:repeat(2,1fr)}.fact{padding:17px 14px}.section{padding:52px 0}.grid{grid-template-columns:1fr;gap:16px}.cards{grid-template-columns:1fr}.flow{grid-template-columns:1fr 1fr}.next{flex-direction:column}}

/* Premium case-study visual storytelling */
.visual-block{margin:36px 0 8px;border:1px solid var(--line);border-radius:26px;background:var(--s);padding:28px;overflow:hidden}
.visual-title{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px}.visual-title h3{font-size:28px;margin:0}.visual-title span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:var(--m)}
.system-map{display:grid;grid-template-columns:1fr 70px 1fr 70px 1fr;align-items:center;gap:10px}.node{border:1px solid var(--line);border-radius:18px;background:var(--bg);padding:20px;text-align:center}.node b{display:block;font-size:17px}.node small{display:block;color:var(--m);margin-top:4px}.arrow{text-align:center;font-size:24px;color:var(--m)}
.env-track{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:24px}.env{padding:13px 8px;border-radius:12px;background:var(--ink);color:var(--bg);text-align:center;font-size:11px;font-weight:850}
.decision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.decision{border-top:3px solid var(--ink);background:var(--bg);padding:18px;border-radius:0 0 14px 14px}.decision b{display:block;font-size:19px}.decision p{font-size:13px;color:var(--m);margin-bottom:0}
.readiness{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:16px}.ready{border:1px solid var(--line);border-radius:14px;padding:14px}.ready strong{display:block}.ready span{display:inline-flex;margin-top:10px;font-size:10px;background:#dff6e7;border-radius:999px;padding:4px 7px;font-weight:850;color:#173b24}
.device-lab{display:grid;grid-template-columns:1fr auto 1fr;gap:26px;align-items:center}.device{width:min(220px,100%);height:390px;border:3px solid var(--ink);border-radius:32px;padding:26px 16px 16px;margin:auto;background:var(--bg);position:relative;display:flex;flex-direction:column}.device:before{content:"";position:absolute;width:52px;height:5px;background:var(--line);top:10px;left:50%;transform:translateX(-50%);border-radius:10px}.ui-card{border:1px solid var(--line);border-radius:10px;padding:10px;margin-bottom:9px}.ui-card.tall{height:90px}.ui-button{margin-top:auto;background:var(--ink);color:var(--bg);border-radius:10px;padding:12px;text-align:center;font-size:11px;font-weight:900}.device.old{opacity:.62}.device-label{text-align:center;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--m);font-weight:850;margin-top:10px}
.ux-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:24px}.ux-principle{background:var(--bg);border:1px solid var(--line);border-radius:14px;padding:16px}.ux-principle b{display:block;margin-bottom:4px}.ux-principle span{font-size:12px;color:var(--m)}
.pipeline{display:grid;grid-template-columns:1fr 42px 1fr 42px 1fr 42px 1fr;align-items:stretch;gap:8px}.pipe-node{border:1px solid var(--line);border-radius:16px;padding:18px;background:var(--bg)}.pipe-node.ai{background:#efffb5;border-color:var(--ink)}.pipe-node b{display:block}.pipe-node small{color:var(--m)}.pipe-arrow{display:grid;place-items:center;color:var(--m);font-size:22px}
.guardrail-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:20px}.guardrail{border:1px solid var(--line);border-radius:14px;padding:16px}.guardrail .kind{font-size:9px;text-transform:uppercase;letter-spacing:.1em;font-weight:900;color:var(--m)}.guardrail b{display:block;margin:8px 0 4px}.guardrail p{font-size:12px;color:var(--m);margin:0}
.artifact-window{border:1px solid var(--line);border-radius:16px;overflow:hidden;margin-top:22px}.artifact-bar{padding:10px 14px;background:var(--ink);color:var(--bg);font-size:11px;font-weight:800}.artifact-body{display:grid;grid-template-columns:160px 1fr;min-height:220px}.artifact-nav{padding:14px;background:var(--bg);border-right:1px solid var(--line);font-size:11px;line-height:2;color:var(--m)}.artifact-code{padding:18px;font:12px/1.7 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:pre-wrap;color:var(--ink)}
.ownership{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:26px}.ownership>div{border:1px solid var(--line);border-radius:18px;padding:20px}.ownership h3{font-size:22px;margin-top:0}.ownership ul{padding-left:18px;color:var(--m)}
@media(max-width:800px){.system-map,.decision-grid,.readiness,.ux-principles,.guardrail-grid,.ownership{grid-template-columns:1fr}.system-map .arrow{transform:rotate(90deg)}.device-lab{grid-template-columns:1fr}.device-lab>.arrow{transform:rotate(90deg)}.pipeline{grid-template-columns:1fr}.pipe-arrow{transform:rotate(90deg)}.artifact-body{grid-template-columns:1fr}.artifact-nav{border-right:0;border-bottom:1px solid var(--line)}.visual-block{padding:20px}.env-track{grid-template-columns:repeat(5,1fr);gap:4px}.env{font-size:9px;padding:10px 2px}}


/* Premium case-study motion polish */
@media(prefers-reduced-motion:no-preference){
  .hero .eyebrow{animation:caseHeroIn .55s both}
  .hero h1{animation:caseHeroIn .72s .06s both}
  .hero .intro{animation:caseHeroIn .72s .12s both}
  .hero .facts{animation:caseHeroIn .72s .18s both}
  .fact{transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
  .fact:hover{transform:translateY(-4px);box-shadow:0 18px 45px rgba(17,17,15,.10)}
  .card,.visual-block,.ownership>div,.decision,.guardrail,.ready,.ux-principle{
    transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease;
  }
  .card:hover,.visual-block:hover,.ownership>div:hover,.decision:hover,.guardrail:hover,.ready:hover,.ux-principle:hover{
    transform:translateY(-3px);box-shadow:0 20px 55px rgba(17,17,15,.09)
  }
  .flow>div{animation:flowRise .6s both}
  .flow>div:nth-child(2){animation-delay:.06s}.flow>div:nth-child(3){animation-delay:.12s}.flow>div:nth-child(4){animation-delay:.18s}
  .env{animation:envPulse 4s ease-in-out infinite}
  .env:nth-child(2){animation-delay:.35s}.env:nth-child(3){animation-delay:.7s}.env:nth-child(4){animation-delay:1.05s}.env:nth-child(5){animation-delay:1.4s}
  .pipe-node.ai{animation:aiGlow 3s ease-in-out infinite}
  .device:not(.old){animation:deviceFloat 4s ease-in-out infinite}
  @keyframes caseHeroIn{from{opacity:0;transform:translateY(22px)}to{opacity:1;transform:none}}
  @keyframes flowRise{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
  @keyframes envPulse{50%{transform:translateY(-3px);box-shadow:0 9px 18px rgba(17,17,15,.16)}}
  @keyframes aiGlow{50%{box-shadow:0 0 0 8px rgba(223,255,66,.16)}}
  @keyframes deviceFloat{50%{transform:translateY(-6px)}}
}
@media(prefers-reduced-motion:reduce){
  .hero *,.flow>div,.env,.pipe-node.ai,.device{animation:none!important;transform:none!important}
}
