:root{font-family:var(--font-sans);color:#24242a;background:#f7f6f2;font-synthesis:none}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;min-width:320px}button,a{-webkit-tap-highlight-color:transparent}button{font:inherit}.case{--accent: #6677d8;--tint: #e6e9f8;--sticker: #d7f08d;min-height:100vh;background-color:#f7f6f2;background-image:linear-gradient(#2b29300a 1px,transparent 1px),linear-gradient(90deg,#2b29300a 1px,transparent 1px);background-size:31px 31px}.case--violet{--accent: #6d5ce5;--tint: #e8e5ff;--sticker: #d7f08d}.case--rose{--accent: #ee789d;--tint: #ffe7ed;--sticker: #ffe39b}.case--blue{--accent: #4774c9;--tint: #e0eaf9;--sticker: #d7f08d}.case--peach{--accent: #db8095;--tint: #f9e5ee;--sticker: #e9d7ff}.case-header{display:flex;align-items:center;justify-content:space-between;gap:20px;height:70px;padding:0 clamp(20px,4vw,64px);background:#24242a;color:#fff}.case-header a{color:inherit;text-decoration:none}.case-brand{display:inline-flex;align-items:center;gap:10px;font:900 12px/1 Arial,sans-serif;letter-spacing:.11em}.case-brand-mark{display:grid;place-items:center;width:25px;height:25px;border-radius:50%;background:#f3a5bc;color:#25242a;font-size:14px}.case-back{font:800 12px/1.2 PingFang SC,sans-serif}.case-back span{padding-right:6px;font-size:19px;vertical-align:-1px}.case-back:hover{color:#d7f08d}.case-shell{width:min(100% - 70px,1320px);margin-inline:auto}.case-topline,.case-section-label{display:flex;justify-content:space-between;gap:15px;border-bottom:1px solid #24242a42;padding:25px 0 15px;font:900 10px/1.2 Arial,sans-serif;letter-spacing:.16em}.case-topline span:last-child,.case-section-label span:last-child{color:#74747d}.case-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(340px,.88fr);align-items:center;gap:clamp(36px,6vw,100px);min-height:580px;padding:56px 0 80px}.case-hero-copy{max-width:640px}.case-sticker{display:inline-block;padding:9px 12px 8px;transform:rotate(-2deg);background:var(--sticker);font:900 12px/1 Arial,sans-serif;letter-spacing:.14em}.case-hero h1{margin:24px 0 0;font-size:clamp(65px,8vw,126px);line-height:1;letter-spacing:-.09em;font-weight:950}.case-title-dot{color:var(--accent)}.case-lead{max-width:580px;margin:29px 0 0;font-size:clamp(23px,2.7vw,37px);line-height:1.35;letter-spacing:-.05em;font-weight:900}.case-intro{max-width:570px;margin:19px 0 0;color:#5f5e68;font-size:15px;line-height:1.9;font-weight:600}.case-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:29px}.case-actions a{display:inline-flex;align-items:center;min-height:42px;padding:10px 18px;border:2px solid #24242a;border-radius:30px;background:#24242a;color:#fff;font-size:13px;font-weight:850;text-decoration:none;transition:transform .18s,background .18s}.case-actions a+a{background:transparent;color:#24242a}.case-actions a:hover{transform:translateY(-3px);background:var(--accent);color:#fff}.case-note{margin:22px 0 0;color:#6d6c74;font-size:11px;line-height:1.6}.case-hero-media{position:relative;transform:rotate(2deg);padding:12px 12px 15px;border:3px solid #25242b;background:#fffdfa;box-shadow:11px 12px #24242a28}.case-hero-media img,.case-hero-media video{display:block;width:100%;height:clamp(250px,31vw,430px);object-fit:cover;background:var(--tint)}.case--violet .case-hero-media img{object-fit:contain;background:#20202b}.case-hero-media span{display:block;padding:12px 7px 2px;font:850 12px/1.3 PingFang SC,sans-serif}.case-tape{position:absolute;z-index:1;top:-22px;left:39%;width:100px;height:38px;transform:rotate(-7deg);background:#efe39bba}.case-making,.case-stack,.case-gallery{padding:0 0 84px}.case-making h2,.case-stack h2,.case-gallery h2{margin:35px 0 38px;font-size:clamp(34px,4.4vw,58px);line-height:1.2;font-weight:950;letter-spacing:-.07em}.case-making h2 em,.case-stack h2 em,.case-gallery h2 em{position:relative;color:var(--accent);font-style:normal}.case-making h2 em:after,.case-stack h2 em:after,.case-gallery h2 em:after{content:"";position:absolute;z-index:-1;left:0;right:0;bottom:1px;height:11px;background:var(--sticker)}.case-highlight-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.case-highlight{min-height:212px;padding:22px 23px 26px;border:2px solid #24242a;background:#fffdfa;box-shadow:6px 7px 0 var(--accent)}.case-highlight>span{display:inline-block;padding:5px 7px;background:var(--tint);color:var(--accent);font:900 11px/1 Arial,sans-serif}.case-highlight h3{margin:24px 0 10px;font-size:clamp(19px,2vw,27px);line-height:1.2;letter-spacing:-.04em}.case-highlight p{max-width:340px;margin:0;color:#5b5b64;font-size:13px;line-height:1.8;font-weight:600}.case-stack-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1fr);gap:70px;align-items:start;padding-top:8px}.case-stack h2{margin-bottom:15px}.case-stack-layout>div>p{max-width:430px;color:#77747d;font-size:13px;line-height:1.7}.case-stack-content{padding-top:40px}.case-tags{display:flex;flex-wrap:wrap;gap:9px}.case-tags span{padding:11px 13px;border:1px solid #24242a;border-radius:30px;background:var(--tint);font:850 13px/1.1 Arial,PingFang SC,sans-serif}.case-build-note{margin-top:19px;padding:15px 20px 17px;border-left:4px solid var(--accent);background:#fffdfae6}.case-build-note>span{color:var(--accent);font:900 11px/1.3 Arial,PingFang SC,sans-serif;letter-spacing:.08em}.case-build-note p{margin:9px 0 0;color:#44434d;font-size:14px;font-weight:620;line-height:1.9}.case-build-note strong{color:var(--accent);font-weight:900;text-decoration:underline;text-decoration-color:var(--sticker);text-decoration-thickness:4px;text-underline-offset:3px}.case-flow{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));margin-top:19px;border:2px solid #24242a;background:#fffdfa}.case-flow span{position:relative;display:flex;flex-direction:column;gap:20px;justify-content:space-between;min-height:102px;padding:15px 12px;font-size:12px;font-weight:850}.case-flow span+span{border-left:1px solid #24242a40}.case-flow span:not(:last-child):after{content:"→";position:absolute;right:-9px;top:44%;z-index:1;color:var(--accent);font-size:22px}.case-flow b{color:var(--accent);font:900 11px Arial,sans-serif}.case-gallery-heading{display:flex;justify-content:space-between;gap:20px;align-items:baseline}.case-gallery-heading h2{margin-bottom:30px}.case-gallery-heading p{color:#727078;font-size:13px;font-weight:700}.case-gallery-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px;align-items:start}.case-gallery-item{display:block;min-width:0;padding:10px;border:2px solid #24242a;background:#fffdfa;box-shadow:6px 7px #24242a20;text-align:left;cursor:zoom-in;transition:transform .2s,box-shadow .2s}.case-gallery-item:hover{transform:translateY(-5px) rotate(-.5deg);box-shadow:9px 11px 0 var(--accent)}.case-gallery-image{display:grid;place-items:center;height:clamp(190px,23vw,320px);overflow:hidden;background:var(--tint)}.case-gallery-image img{display:block;width:100%;height:100%;object-fit:contain}.case-gallery-item--portrait .case-gallery-image img{width:auto;max-width:100%}.case-gallery-caption{display:flex;justify-content:space-between;gap:12px;padding:12px 4px 3px;font-size:12px}.case-gallery-caption b{font-weight:850}.case-gallery-caption>span{color:var(--accent);font-weight:850;white-space:nowrap}.case-construction{display:grid;place-items:center;min-height:290px;padding:40px 20px;border:3px solid #24242a;background:var(--tint);text-align:center;transform:rotate(-.4deg)}.case-construction>span{color:var(--accent);font:900 11px Arial,sans-serif;letter-spacing:.16em}.case-construction h2{margin:20px 0 9px;font-size:clamp(30px,5vw,69px);line-height:1.2;letter-spacing:-.07em}.case-construction h2 span{color:var(--accent)}.case-construction p{margin:0;color:#5e5b65;font-size:13px;font-weight:700}.case-next{display:grid;grid-template-columns:1fr 1fr;gap:18px;padding:80px 0 100px}.case-next a{display:flex;flex-direction:column;gap:10px;padding:22px;border:2px solid #24242a;background:#fffdfa;color:#24242a;text-decoration:none;transition:background .2s,transform .2s}.case-next a:hover{transform:translateY(-3px);background:var(--tint)}.case-next a:last-child{text-align:right}.case-next span{color:#6e6c76;font-size:11px;font-weight:850}.case-next strong{font-size:22px}.case-lightbox{position:fixed;inset:0;max-width:min(95vw,1500px);max-height:94vh;padding:0;border:0;background:#24242a;color:#fff;box-shadow:0 25px 90px #0008}.case-lightbox::backdrop{background:#181820d9}.case-lightbox-inner{position:relative;display:flex;flex-direction:column;align-items:center;padding:48px 14px 16px}.case-lightbox-close{position:absolute;top:8px;right:10px;padding:8px 13px;border:1px solid #fff8;border-radius:30px;background:#fff;color:#24242a;font-weight:900;cursor:pointer}.case-lightbox img{display:block;max-width:100%;max-height:calc(94vh - 115px);object-fit:contain}.case-lightbox p{margin:12px 0 0;font-size:12px;font-weight:800}@media(max-width:900px){.case-hero{grid-template-columns:1fr;min-height:0}.case-hero-media{max-width:650px}.case-stack-layout{grid-template-columns:1fr;gap:0}.case-stack-content{padding-top:3px}}@media(max-width:640px){.case-shell{width:min(100% - 36px,550px)}.case-header{height:62px}.case-topline,.case-section-label{font-size:9px;letter-spacing:.1em}.case-hero{gap:34px;padding:50px 0 74px}.case-hero h1{font-size:clamp(57px,13vw,78px)}.case-lead{margin-top:20px}.case-intro{font-size:13px}.case-hero-media{margin-inline:5px 12px}.case-making,.case-stack,.case-gallery{padding-bottom:64px}.case-making h2,.case-stack h2,.case-gallery h2{margin:26px 0;font-size:clamp(32px,8vw,45px)}.case-highlight-grid{grid-template-columns:1fr;gap:14px}.case-highlight{min-height:0;padding:18px}.case-highlight h3{margin:15px 0 7px}.case-flow{grid-template-columns:1fr 1fr}.case-flow span:nth-child(3){border-left:0;border-top:1px solid #24242a40}.case-flow span:nth-child(4){border-top:1px solid #24242a40}.case-flow span:nth-child(2):after{display:none}.case-gallery-heading{display:block}.case-gallery-heading p{margin:-14px 0 24px}.case-gallery-grid{grid-template-columns:1fr;gap:18px}.case-gallery-image{height:220px}.case-next{padding:64px 0 80px}.case-next a{padding:16px}.case-next strong{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.case-gallery-item,.case-actions a,.case-next a{transition:none}}
