.cases{background:var(--bg);padding:96px 0}.cases-header{margin-bottom:40px}.tab-nav{border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:4px;margin-bottom:32px}.tbtn{background:none;border:none;border-bottom:2px solid transparent;color:var(--mid);cursor:pointer;font-family:var(--sans);font-size:13px;font-weight:600;margin-bottom:-1px;padding:12px 20px;transition:color .2s,border-color .2s}.tbtn:hover{color:var(--dark)}.tbtn.on{border-bottom-color:var(--orange);color:var(--orange)}.tpanel{display:none}.tpanel.on{align-items:start;display:grid;gap:48px;grid-template-columns:1fr 1fr}.pl h3{color:var(--dark);font-family:var(--serif);font-size:22px;font-weight:700;letter-spacing:-.01em;margin-bottom:12px}.pl p{color:var(--mid);font-size:14px;line-height:1.8;margin-bottom:16px}.pl-bul{display:flex;flex-direction:column;gap:8px;list-style:none;margin-bottom:24px}.pl-bul li{color:var(--mid);font-size:13px;line-height:1.6;padding-left:18px;position:relative}.pl-bul li:before{background:var(--orange);border-radius:50%;content:"";height:6px;left:0;position:absolute;top:8px;width:6px}.pl .btn-primary{margin-top:8px}.vgrid{display:grid;gap:12px;grid-template-columns:1fr 1fr}.vc{cursor:pointer}.vt{aspect-ratio:16/9;background:#111;border-radius:4px;overflow:hidden;position:relative}.vt img{height:100%;object-fit:cover;transition:transform .4s var(--ease);width:100%}.vc:hover .vt img{transform:scale(1.05)}.vp{background:rgba(0,0,0,.25);inset:0;position:absolute}.vp,.vpb{align-items:center;display:flex;justify-content:center}.vpb{background:var(--orange);border-radius:50%;height:36px;transition:transform .25s;width:36px}.vc:hover .vpb{transform:scale(1.12)}.vpb svg{fill:#fff;margin-left:2px}.vcap{padding:6px 2px}.vcap strong{color:var(--dark);display:block;font-size:11px;font-weight:700}.vcap span{color:var(--mid);display:block;font-size:10px;margin-top:1px}.vtag{color:var(--orange);display:block;font-size:9px;font-weight:700;letter-spacing:.08em;margin-top:2px;text-transform:uppercase}@media(max-width:900px){.tpanel.on,.vgrid{grid-template-columns:1fr}}@media(max-width:640px){.tab-nav{display:none}.tpanel,.tpanel.on{border-bottom:1px solid var(--border);display:grid;gap:20px;grid-template-columns:1fr;margin-bottom:36px;padding-bottom:36px}.tpanel:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}}