*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{--ink:#0a0a0a;--paper:#fafafa;--amber:#e89b3c;--amber-dk:#c97f24;--line:rgba(0,0,0,.12);--line-lt:rgba(255,255,255,.16);--mut:#666}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font-family:'Inter',system-ui,sans-serif;font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;overflow-x:hidden}
img{max-width:100%;display:block}
a{color:inherit;text-decoration:none}
.wrap{width:100%;max-width:880px;margin:0 auto;padding:0 20px}
.amber{color:var(--amber)}
.reveal{opacity:0;transform:translateY(20px);transition:opacity .6s ease,transform .6s ease}
.reveal.is-visible{opacity:1;transform:none}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none}}

.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;font-weight:800;font-size:15px;padding:16px 24px;border:2px solid var(--ink);cursor:pointer;transition:transform .12s,filter .15s,background .15s,color .15s;line-height:1.1}
.btn:active{transform:translateY(1px)}
.btn svg{width:19px;height:19px;flex-shrink:0}
.btn-tg{background:#27a7e7;border-color:#27a7e7;color:#fff}
.btn-tg:hover{background:#1b95d4;border-color:#1b95d4}
.btn-max{background:linear-gradient(135deg,#4a90e2,#9b59d6);border-color:#7b6cd0;color:#fff}
.btn-max:hover{filter:brightness(1.08)}

.topbar{height:4px;background:var(--amber)}
.cookie{position:fixed;left:0;right:0;bottom:0;z-index:80;display:none;align-items:center;gap:14px;flex-wrap:wrap;justify-content:center;background:var(--ink);color:rgba(255,255,255,.85);border-top:2px solid var(--amber);padding:12px 18px;font-size:13px;line-height:1.45}
.cookie.show{display:flex}
.cookie a{color:var(--amber);text-decoration:underline}
.cookie button{flex:0 0 auto;background:var(--amber);color:var(--ink);border:0;font-weight:800;font-size:13px;padding:10px 20px;cursor:pointer;font-family:inherit}
header{position:sticky;top:0;z-index:50;background:rgba(250,250,250,.92);backdrop-filter:blur(8px);border-bottom:2px solid var(--ink)}
.hd{display:flex;align-items:center;justify-content:space-between;height:60px;max-width:1100px;margin:0 auto;padding:0 20px}
.logo{font-weight:900;font-size:20px;letter-spacing:-.04em}
.logo b{color:var(--amber)}
.back{font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--mut)}
.back:hover{color:var(--ink)}
.hd-cta{padding:10px 15px;font-size:13px}
.crumb{display:inline-block;font-family:'JetBrains Mono',monospace;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--amber);margin-bottom:18px}
.crumb:hover{color:#fff}

.chero{background:var(--ink);color:var(--paper);padding:46px 0 40px}
.chero .eyebrow{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--amber);margin-bottom:16px}
.chero h1{font-weight:900;letter-spacing:-.035em;line-height:.98;font-size:38px;margin-bottom:16px}
.chero .lead{font-size:17px;color:rgba(255,255,255,.78);line-height:1.55;max-width:620px}
.facts{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--line-lt);border:1px solid var(--line-lt);margin-top:30px}
.facts div{background:var(--ink);padding:16px 18px}
.facts b{display:block;font-weight:900;font-size:17px;letter-spacing:-.02em}
.facts span{font-family:'JetBrains Mono',monospace;font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin-bottom:6px;display:block}

.cbody{padding:50px 0}
.block{margin-bottom:40px}
.block:last-child{margin-bottom:0}
.block .tag{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--amber-dk);margin-bottom:12px}
.block p{font-size:17px;line-height:1.6;color:#222;margin-bottom:14px}
.steps{display:flex;flex-direction:column;border:2px solid var(--ink)}
.steps .s{display:flex;gap:16px;padding:18px 20px;border-bottom:2px solid var(--ink)}
.steps .s:last-child{border-bottom:0}
.steps .s b{font-weight:900;font-size:22px;color:var(--amber);min-width:34px;line-height:1.3}
.steps .s p{margin:0;font-size:16px;color:#222}
.res-grid{display:grid;grid-template-columns:1fr;gap:14px;margin:6px 0 22px}
.res{border:2px solid var(--amber);padding:18px 20px}
.res b{display:block;font-weight:900;font-size:30px;letter-spacing:-.04em;line-height:1}
.res span{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--amber-dk);margin-top:8px;display:block}
.shot{border:2px solid var(--ink);margin-bottom:14px}
.shot-cap{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.06em;color:var(--mut);margin:6px 0 12px;text-transform:uppercase}

/* видео-кейс */
.video-wrap{margin-bottom:36px}
.vtag{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.16em;text-transform:uppercase;color:var(--amber-dk);margin-bottom:12px}
.case-video{position:relative;border:2px solid var(--ink);background:#000;aspect-ratio:16/9;overflow:hidden;cursor:pointer;max-width:760px}
.case-video img{width:100%;height:100%;object-fit:cover;display:block}
.case-video iframe{width:100%;height:100%;border:0;display:block}
.case-video .pl{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:62px;height:62px;border-radius:50%;background:var(--amber);display:flex;align-items:center;justify-content:center;transition:transform .15s}
.case-video:hover .pl{transform:translate(-50%,-50%) scale(1.08)}
.case-video .pl::after{content:"";border-left:20px solid var(--ink);border-top:12px solid transparent;border-bottom:12px solid transparent;margin-left:5px}

/* full prose (teletype cases) */
.prose{font-size:17px;line-height:1.62;color:#222}
.prose h3{font-weight:900;font-size:24px;letter-spacing:-.02em;line-height:1.15;margin:34px 0 12px}
.prose p{margin:0 0 16px}
.prose a{color:var(--amber-dk);font-weight:700;word-break:break-word}
.prose ul{margin:0 0 16px;padding-left:22px}
.prose li{margin:6px 0}
.prose b,.prose strong{color:var(--ink)}
.prose figure{margin:22px 0}
.prose img{border:2px solid var(--ink);width:100%}
.prose iframe{width:100%;aspect-ratio:16/9;height:auto;border:2px solid var(--ink)}
.prose .wrap{padding:0}
.cta-strip{border-top:2px solid var(--ink);border-bottom:2px solid var(--ink);padding:30px 0;background:var(--paper)}
.cta-expert{display:flex;align-items:center;justify-content:center;gap:14px;margin-bottom:22px}
.cta-expert img{width:74px;height:74px;border-radius:50%;object-fit:cover;object-position:center top;border:2px solid var(--ink);flex-shrink:0}
.cta-expert div{text-align:left}
.cta-expert b{display:block;font-weight:900;font-size:17px;letter-spacing:-.02em}
.cta-expert span{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--amber-dk)}
.cta-strip h3{font-weight:900;font-size:26px;letter-spacing:-.02em;margin-bottom:12px;line-height:1.1}
.cta-strip .cta-sub{font-size:16px;color:#444;line-height:1.55;max-width:520px;margin:0 auto 20px}
.cta-strip .row{display:flex;flex-direction:column;gap:12px}
.cta-strip .btn{justify-content:center}

footer{background:var(--ink);color:rgba(255,255,255,.6);padding:34px 0;font-size:13px;line-height:1.7}
.ft-logo{font-weight:900;font-size:20px;letter-spacing:-.04em;color:#fff;margin-bottom:12px}
.ft-logo b{color:var(--amber)}
.ft-legal{font-family:'JetBrains Mono',monospace;font-size:11px;letter-spacing:.04em;color:rgba(255,255,255,.42)}

/* catalog cards */
.catalog{display:grid;grid-template-columns:1fr;gap:14px}
.case{border:2px solid var(--ink);background:#101010;color:#fff;padding:22px;display:flex;flex-direction:column;text-decoration:none;transition:transform .12s,box-shadow .12s}
.case:hover{transform:translateY(-3px)}
.case .num{font-weight:900;font-size:46px;letter-spacing:-.05em;line-height:.9;color:#fff}
.case .num.sm{font-size:30px}
.case .num em{font-style:normal;color:var(--amber)}
.case .unit{font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--amber);margin:12px 0 12px}
.case .niche{font-weight:800;font-size:17px;letter-spacing:-.01em;margin-bottom:6px;color:#fff}
.case .desc{font-size:14px;color:rgba(255,255,255,.66);line-height:1.5;flex:1}
.case .more{margin-top:16px;font-family:'JetBrains Mono',monospace;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--amber)}
.case.feat{background:var(--amber);border-color:var(--amber)}
.case.feat .num,.case.feat .num em{color:var(--ink)}
.case.feat .unit{color:rgba(0,0,0,.6)}
.case.feat .niche{color:var(--ink)}
.case.feat .desc{color:rgba(0,0,0,.72)}
.case.feat .more{color:var(--ink)}

@media(min-width:768px){
  .chero{padding:64px 0 54px}
  .chero h1{font-size:58px}
  .cbody{padding:68px 0}
  .res-grid{grid-template-columns:repeat(3,1fr)}
  .cta-strip .row{flex-direction:row;justify-content:center}
  .cta-strip .btn{flex:0 0 auto}
  .catalog{grid-template-columns:repeat(3,1fr)}
  .case.feat{grid-column:span 1}
}
