/* TELLER Kazakhstan — brand system (brandbook 2025).
   Paper #F9F6F4 + ink #181717; green #44856A / deep green #224C41 accents; wine #7D1919 and sand #ECAE7D used sparingly.
   Bodoni (antiqua) uppercase for headlines, Pragmatica for text (Arial fallback per brandbook). Cut-paper angular shapes. */
:root{
  color-scheme:light;
  --paper:#F9F6F4; --ink:#181717; --green:#44856A; --deep:#224C41; --wine:#7D1919; --sand:#ECAE7D; --gold:#D0BA51; --blue:#707EDB; --blush:#F9F1F0;
  --black:var(--ink); --powder:var(--paper); --white:#FFFDFB;
  --muted:#5E5958; --line:rgba(24,23,23,.16); --line-d:rgba(249,246,244,.16);
  --todo:#9A6410;
  --f-serif:"Bodoni Pro","Bodoni MT","Playfair Display","Bodoni 72",Didot,"Times New Roman",serif;
  --f-sans:"Pragmatica","Helvetica Neue",Helvetica,Arial,sans-serif;
  --gutter:clamp(16px,5.2vw,100px);
  --t-h1:clamp(2.6rem,7.2vw,7.4rem); --t-h2:clamp(2rem,4.6vw,4.6rem); --t-h3:clamp(1.1rem,1.4vw,1.3rem);
  --grain:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='260' height='260'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.5 0 0 0 0 0.48 0 0 0 0 0.46 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--paper);color:var(--ink);font:400 1.05rem/1.55 var(--f-sans);-webkit-font-smoothing:antialiased}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:70;background-image:var(--grain);opacity:.09;mix-blend-mode:multiply}
a{color:inherit}
h1,h2,h3,p,ul,ol{margin:0}
h1{font:400 var(--t-h1)/.98 var(--f-serif);text-transform:uppercase;letter-spacing:.01em;color:var(--green);text-wrap:balance}
h2{font:400 var(--t-h2)/1 var(--f-serif);text-transform:uppercase;letter-spacing:.01em;color:var(--green);text-wrap:balance}
h3{font:600 var(--t-h3)/1.25 var(--f-sans);letter-spacing:0}
:focus-visible{outline:2px solid var(--green);outline-offset:3px;border-radius:3px}
.wrap{width:100%;margin:0 auto;padding-inline:var(--gutter)}
.eyebrow{font:400 1rem/1.3 var(--f-sans);text-transform:lowercase;letter-spacing:0;color:inherit;opacity:.85}
.lead{font-size:clamp(1.05rem,1.3vw,1.25rem);line-height:1.5;max-width:52ch}
.muted{color:var(--muted)}
.prose{max-width:62ch;display:grid;gap:14px}
.todo{display:inline-block;border:1px dashed currentColor;color:var(--todo);font:500 .74rem/1.35 var(--f-sans);padding:2px 9px;border-radius:999px;vertical-align:middle}
.dark .todo,.green .todo{color:var(--sand)}
.draft-strip{background:var(--ink);color:var(--paper);text-align:center;font:400 .7rem/1.3 var(--f-sans);letter-spacing:.04em;padding:6px var(--gutter);border-bottom:1px solid var(--line-d);position:relative;z-index:21}

/* buttons: brand pill */
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 34px;border:1.5px solid var(--green);border-radius:999px;font:500 1.02rem/1 var(--f-sans);text-decoration:none;background:transparent;color:var(--green);cursor:pointer;transition:background .2s,color .2s,border-color .2s,transform .25s cubic-bezier(.2,.7,.2,1)}
.btn:hover{background:var(--green);color:var(--paper)}
.btn.fill{background:var(--green);color:var(--paper)}
.btn.fill:hover{background:var(--deep);border-color:var(--deep)}
.dark .btn{color:var(--paper);border-color:var(--green)}
.dark .btn:hover,.dark .btn.fill{background:var(--green);color:var(--paper)}
.green .btn{color:var(--paper);border-color:var(--paper)}
.green .btn:hover,.green .btn.fill{background:var(--paper);color:var(--deep);border-color:var(--paper)}
.green .btn.fill:hover{background:var(--sand);border-color:var(--sand)}
.btns{display:flex;flex-wrap:wrap;gap:12px}

/* header */
.site-head{background:var(--ink);color:var(--paper);position:sticky;top:env(safe-area-inset-top,0px);z-index:20}
.head-bar{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:32px;min-height:108px}
.logo{display:inline-flex;align-items:center;justify-self:start;text-decoration:none;color:inherit}
.logo .mark{height:60px;width:auto;display:block}
.site-foot .logo .mark{height:72px}
.nav{display:flex;gap:clamp(22px,2.6vw,48px);justify-content:center}
.nav a{white-space:nowrap;text-decoration:none;font-size:clamp(1.05rem,1.2vw,1.3rem);padding:6px 0;transition:color .15s}
.nav a:hover,.nav a[aria-current="page"]{color:var(--green)}
.has-sub{position:relative;display:flex}
.sub{position:absolute;top:calc(100% + 30px);left:-20px;min-width:300px;padding:14px 20px;background:var(--ink);border:1px solid var(--line-d);border-radius:0 0 14px 14px;display:grid;gap:2px;opacity:0;visibility:hidden;transform:translateY(-4px);transition:opacity .18s,transform .18s,visibility .18s}
.sub::before{content:"";position:absolute;left:0;right:0;top:-34px;height:34px}
.has-sub:hover .sub,.has-sub:focus-within .sub{opacity:1;visibility:visible;transform:none}
.sub a{font-size:.98rem;padding:9px 0;border-bottom:1px solid var(--line-d)}
.sub a:last-child{border-bottom:0}
.head-bar .cta-btn{justify-self:end;min-height:58px;padding:0 32px;font-size:clamp(1rem,1.1vw,1.15rem);background:var(--green);color:var(--paper);border-color:var(--green);white-space:nowrap}
.head-bar .cta-btn:hover{background:var(--paper);color:var(--ink);border-color:var(--paper)}
.menu-btn{display:none;color:var(--paper);border-color:var(--line-d)}
@media (max-width:1180px){
  .nav{display:none;position:absolute;left:0;right:0;top:100%;flex-direction:column;gap:0;background:var(--ink);padding:4px var(--gutter) 16px;border-top:1px solid var(--line-d)}
  .nav.open{display:flex}
  .nav a{padding:13px 0;border-bottom:1px solid var(--line-d);font-size:1rem}
  .has-sub{display:grid}
  .sub{position:static;opacity:1;visibility:visible;transform:none;border:0;padding:0 0 0 16px;min-width:0;background:transparent;border-radius:0}
  .sub::before{display:none}
  .sub a{font-size:.92rem;opacity:.8}
  .head-bar{grid-template-columns:auto 1fr;min-height:84px}
  .logo .mark{height:50px}
  .menu-btn{display:inline-flex;justify-self:end;min-height:46px}
  .head-bar .cta-btn{display:none}
}

/* page head: big green headline, cut-paper shape, short text bottom-right (as in the brandbook) */
main{display:block}
.page-head{position:relative;overflow:hidden;padding-block:clamp(48px,7vw,110px) clamp(40px,5vw,80px);border-bottom:1px solid var(--line)}
.page-head .wrap{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:28px clamp(24px,5vw,80px);align-items:end;position:relative;z-index:1}
.page-head .crumbs,.page-head h1{grid-column:1}
.page-head h1{max-width:13ch}
.page-head .lead,.page-head .btns{grid-column:2;justify-self:start}
.page-head .lead{font-size:clamp(1rem,1.15vw,1.15rem);max-width:40ch}
.ph-shape{color:var(--green);pointer-events:none;justify-self:end;width:min(100%,480px)}
.ph-shape svg{width:100%;height:auto;display:block}
.page-head.has-shape .wrap{grid-template-areas:"c s" "h s" "h l" "h b";align-items:end}
.page-head.has-shape .crumbs{grid-area:c;align-self:start}
.page-head.has-shape h1{grid-area:h}
.page-head.has-shape .ph-shape{grid-area:s;align-self:start}
.page-head.has-shape .lead{grid-area:l}
.page-head.has-shape .btns{grid-area:b}
@media (max-width:860px){.page-head .wrap,.page-head.has-shape .wrap{grid-template-columns:1fr;grid-template-areas:"c" "s" "h" "l" "b"}.page-head .lead,.page-head .btns{grid-column:1}.ph-shape{width:62%;justify-self:end}}
.crumbs{display:flex;flex-wrap:wrap;gap:6px;font-size:.85rem;color:var(--muted);list-style:none;padding:0}
.crumbs li+li::before{content:"/";margin-right:6px;opacity:.6}
.crumbs a{text-decoration:none}
.crumbs a:hover{color:var(--green)}

.block{padding-block:clamp(56px,8vw,120px);border-bottom:1px solid var(--line)}
.block:last-child{border-bottom:0}
.block-head{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px clamp(24px,5vw,80px);margin-bottom:clamp(32px,4vw,56px);align-items:end}
.block-head p{max-width:44ch}
@media (max-width:820px){.block-head{grid-template-columns:1fr}}
.dark{background:var(--ink);color:var(--paper);border-bottom:0}
.dark h2{color:var(--green)}
.dark .muted,.dark .eyebrow{color:#B7B0AE}
.green{background:var(--deep);color:var(--paper);border-bottom:0}
.green h2{color:var(--paper)}
.green .muted,.green .eyebrow{color:rgba(249,246,244,.75)}

.facts{display:flex;flex-wrap:wrap;gap:16px clamp(28px,4vw,64px);padding-top:24px;border-top:1px solid var(--line-d);margin-top:12px}
.facts div{display:grid;gap:4px}
.facts b{font:400 clamp(1.8rem,2.8vw,2.6rem)/1 var(--f-serif);color:var(--green);text-transform:uppercase}
.facts span{font-size:.85rem;text-transform:lowercase;color:#B7B0AE}

/* rows: tasks, services, vacancies */
.rows{list-style:none;padding:0;border-top:1.5px solid var(--ink)}
.rows>li{border-bottom:1px solid var(--line)}
.row{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr) 48px;gap:12px 32px;align-items:center;padding:26px 0;text-decoration:none;transition:padding .25s}
.row .t{font:400 clamp(1.15rem,1.7vw,1.55rem)/1.25 var(--f-sans)}
.row .d{font-size:.98rem;color:var(--muted)}
.row .d b{display:block;color:var(--green);font-weight:600;font-size:.9rem;text-transform:lowercase;margin-bottom:2px}
.row .go{width:48px;height:48px;border-radius:50%;background:var(--green);color:var(--paper);display:grid;place-items:center;transition:transform .25s,background .2s}
a.row:hover{padding-left:10px}
a.row:hover .go{transform:rotate(-45deg);background:var(--deep)}
a.row:hover .t{color:var(--green)}
@media (max-width:760px){.row{grid-template-columns:minmax(0,1fr) 48px}.row .d{grid-column:1}.row .go{grid-row:1/3;grid-column:2}}

/* cards: editorial, a rule on top instead of boxes */
.grid{display:grid;gap:clamp(24px,3vw,48px);grid-template-columns:repeat(3,minmax(0,1fr))}
.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.grid.four{grid-template-columns:repeat(4,minmax(0,1fr))}
@media (max-width:980px){.grid,.grid.four{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.grid,.grid.two,.grid.four{grid-template-columns:1fr}}
.card{border-top:1.5px solid var(--ink);padding:20px 0 0;display:grid;gap:10px;align-content:start;text-decoration:none;background:none}
a.card:hover h3{color:var(--green)}
.card p{color:var(--muted);font-size:1rem}
.card .more{font-size:.9rem;color:var(--green);margin-top:auto}
.dark .card{border-top-color:var(--green)}
.dark .card p{color:#B7B0AE}

/* draft case card */
.case-draft{position:relative;border-top:1.5px solid var(--ink);padding:22px 0 0;display:grid;gap:14px;align-content:start}
.case-draft::before{content:"";display:block;aspect-ratio:4/3;background:#E9E4E0 var(--grain);border-radius:2px;margin-bottom:6px;
  -webkit-mask:none}
.case-draft .tags{font-size:.88rem;text-transform:lowercase;color:var(--muted)}
.case-draft .fig{font:400 clamp(2.6rem,3.6vw,3.6rem)/1 var(--f-serif);color:var(--green);opacity:.45}
.case-draft .ttl{font:400 1.2rem/1.3 var(--f-sans);color:var(--ink);opacity:.6}
.case-draft .note{font-size:.85rem;color:var(--muted)}
.filters{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:24px}
.filters button{min-height:42px;padding:0 20px;border-radius:999px;border:1.5px solid var(--line);background:transparent;font:400 .95rem/1 var(--f-sans);color:var(--ink);cursor:pointer}
.filters button:hover{border-color:var(--green);color:var(--green)}
.filters button[aria-pressed="true"]{background:var(--green);color:var(--paper);border-color:var(--green)}
.filter-group{display:grid;gap:8px;margin-bottom:8px}

/* columns */
.cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,80px)}
@media (max-width:820px){.cols{grid-template-columns:1fr}}
.list{list-style:none;padding:0;border-top:1.5px solid var(--ink)}
.list li{padding:16px 0;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:16px}
.list li span:last-child{color:var(--muted);font-size:.9rem;text-align:right}
.list a{text-decoration:none}
.list a:hover{color:var(--green)}
.dark .list{border-top-color:var(--green)}
.dark .list li{border-color:var(--line-d)}
.bul{padding-left:20px;display:grid;gap:10px}
.bul li::marker{color:var(--green)}

/* steps */
.steps{list-style:none;padding:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:28px;counter-reset:s}
.steps li{display:grid;gap:10px;align-content:start;padding-top:16px;border-top:1.5px solid var(--ink);counter-increment:s}
.steps li::before{content:counter(s,decimal-leading-zero);font:400 2.4rem/1 var(--f-serif);color:var(--green)}
.steps p{font-size:.95rem;color:var(--muted)}
@media (max-width:980px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}

/* funnel (about): AIDA discs from the brandbook */
.funnel2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:clamp(28px,5vw,88px);align-items:start}
.fn-vis{position:sticky;top:max(110px,calc(50vh - 15vw))}
.fn-svg{display:block;width:100%;height:auto;overflow:visible}
.fn-aw{--c:var(--gold)}.fn-in{--c:var(--green)}.fn-de{--c:var(--blue)}.fn-ac{--c:var(--wine)}
.fs-aw{--c:var(--gold)}.fs-in{--c:var(--green)}.fs-de{--c:var(--blue)}.fs-ac{--c:var(--wine)}
.fn-disc{cursor:pointer;transform-box:fill-box;transform-origin:center;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.fn-disc ellipse{fill:var(--blush);stroke:var(--c);stroke-width:1.2;transition:fill .5s ease,stroke-width .3s}
.fn-disc text{font:400 30px var(--f-serif);letter-spacing:.06em;fill:var(--c);transition:fill .5s ease;pointer-events:none}
.fn-disc:hover ellipse{stroke-width:2.4}
.fn-disc.on ellipse{fill:var(--c)}
.fn-disc.on text{fill:var(--paper)}
.fn-disc.on{transform:scale(1.035)}
.js .fn-svg .fn-disc{opacity:0;transform:translateY(-60px)}
.js .fn-svg.in .fn-disc{opacity:1;transform:none;transition:opacity .7s ease calc(var(--d)*.12s),transform .9s cubic-bezier(.2,.8,.2,1) calc(var(--d)*.12s)}
.js .fn-svg.in .fn-disc.on{transform:scale(1.035)}
.funnel{display:grid}
.fstage{display:grid;grid-template-columns:minmax(150px,220px) minmax(0,1fr);gap:16px 32px;padding:28px 0;border-top:1px solid var(--line);transition:opacity .4s}
.fstage:first-child{border-top:1.5px solid var(--ink)}
.fstage h3{font:400 clamp(1.6rem,2.2vw,2.2rem)/1 var(--f-serif);text-transform:uppercase;color:var(--c)}
.fstage h3 small{display:block;margin-top:8px;font:400 .9rem/1.4 var(--f-sans);text-transform:lowercase;color:var(--muted)}
.fdot{display:block;width:44px;height:14px;border-radius:50%;background:var(--c);margin-bottom:14px}
.js .funnel2 .fstage:not(.on){opacity:.5}
@media (max-width:900px){.funnel2{grid-template-columns:1fr}.fn-vis{position:static;max-width:520px;margin:0 auto}.js .funnel2 .fstage:not(.on){opacity:1}}
@media (max-width:640px){.fstage{grid-template-columns:1fr}}
/* about: big centered facts */
.big-facts{display:grid;grid-template-columns:repeat(4,auto);justify-content:center;text-align:center;border-top:0;margin:0;padding:clamp(24px,5vw,72px) 0;gap:32px clamp(32px,6vw,110px)}
@media (max-width:760px){.big-facts{grid-template-columns:repeat(2,auto)}}
.big-facts div{justify-items:center;gap:10px}
.big-facts b{font-size:clamp(2.6rem,5.6vw,6rem);white-space:nowrap}
.big-facts span{font-size:clamp(.95rem,1.2vw,1.15rem)}
/* awards: medals */
.aw-grid{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(20px,3vw,44px)}
.aw-card{display:grid;gap:18px;align-content:start}
.medal{width:min(190px,70%);height:auto;overflow:visible;transform-origin:50% 40%;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
.medal .m-t{font:600 11px var(--f-sans);letter-spacing:.14em}
.medal .m-y{font:400 40px var(--f-serif)}
.medal .m-s{font:600 10px var(--f-sans);letter-spacing:.16em}
.aw-card:hover .medal{transform:rotate(-6deg) scale(1.04)}
.aw-txt{display:grid;gap:6px;padding-top:14px;border-top:1.5px solid var(--ink)}
.aw-txt p{font-size:.95rem;color:var(--muted)}
.aw-txt .aw-h{color:var(--ink)}
.aw-txt a{color:var(--green)}
.js .aw-card{opacity:0;transform:translateY(30px)}
.js .aw-grid.in .aw-card{opacity:1;transform:none;transition:opacity .7s ease calc(var(--d)*.12s),transform .9s cubic-bezier(.2,.8,.2,1) calc(var(--d)*.12s)}
@media (max-width:980px){.aw-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.aw-grid{grid-template-columns:1fr}.medal{width:150px}}
/* steps: scroll-driven */
.stp-sec{padding:0!important}
.stp-sec>.wrap{position:sticky;top:0;min-height:100vh;display:flex;flex-direction:column;justify-content:center;padding-block:96px 48px}
.steps.stp{position:relative;grid-template-columns:repeat(var(--n),minmax(0,1fr))!important;row-gap:28px}
.steps.stp li{border-top-color:var(--line);transition:opacity .5s ease,transform .6s cubic-bezier(.2,.8,.2,1)}
.steps.stp li:not(.on){opacity:.18;transform:translateY(26px)}
.steps.stp li::before{transition:color .4s}
.steps.stp::after{content:"";position:absolute;left:0;top:0;height:2px;width:calc(var(--p,0)*100%);background:var(--green)}
.stp-count{font:400 1rem var(--f-sans);color:var(--muted);margin-top:28px}
.stp-count b{font:400 1.6rem var(--f-serif);color:var(--green)}
@media (max-width:820px){.js .steps:not(.stp) li{opacity:.18;transform:translateY(26px);transition:opacity .5s,transform .6s}.js .steps:not(.stp) li.on{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.js .aw-card{opacity:1;transform:none}.js .steps li{opacity:1!important;transform:none!important}}
/* awards (old) */
.awards li{justify-content:flex-start;gap:clamp(16px,3vw,40px)}
.awards .aw-y{font:400 1.6rem/1 var(--f-serif);color:var(--green);min-width:3.2em;text-align:left!important;font-size:1.6rem!important}
.awards .aw-b{color:var(--ink)!important;text-align:left!important;font-size:1rem!important;line-height:1.5}
.awards a{color:var(--green)}
/* geography map */
.geo{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,1fr);gap:clamp(24px,4vw,72px);align-items:center}
.geo-svg{display:block;width:100%;height:auto;border-radius:24px;background:var(--white)}
.geo-bg{fill:#EEE7E1;stroke:var(--paper);stroke-width:.8}
.geo-c{fill:#CFE0D7;stroke:var(--paper);stroke-width:1;transition:fill .45s ease;cursor:pointer}
.geo-c[data-k="kz"]{fill:var(--deep)}
.geo-c.hot{fill:var(--green)}.geo-c[data-k="kz"].hot{fill:var(--ink)}
.geo-arc{fill:none;stroke:var(--wine);stroke-width:1.6;stroke-linecap:round;stroke-dasharray:1;stroke-dashoffset:1;opacity:.55;transition:opacity .3s,stroke-width .3s}
.geo.in .geo-arc{stroke-dashoffset:0;transition:stroke-dashoffset 1.3s cubic-bezier(.5,0,.2,1) calc(.25s + var(--i)*.18s),opacity .3s,stroke-width .3s}
.geo-arc.hot{opacity:1;stroke-width:2.6}
.geo-pin circle{fill:var(--wine);stroke:var(--white);stroke-width:2;transform-box:fill-box;transform-origin:center;transition:transform .3s}
.geo-pin text{font:500 20px var(--f-sans);fill:var(--ink);paint-order:stroke;stroke:var(--white);stroke-width:4px;stroke-linejoin:round;opacity:0;transition:opacity .3s}
.geo-pin.home text{opacity:1;font-weight:700}
.geo-pin.hot text{opacity:1}.geo-pin.hot circle:last-of-type{transform:scale(1.5)}
.geo-pin.home circle{fill:var(--ink)}
.geo-pulse{fill:none!important;stroke:var(--ink)!important;stroke-width:1.5!important;animation:geoPulse 2.4s ease-out infinite}
@keyframes geoPulse{from{transform:scale(1);opacity:.8}to{transform:scale(4);opacity:0}}
.geo-list li{cursor:default;transition:padding .3s,color .3s}
.geo-list li.hot{padding-left:12px;color:var(--green)}
.geo-list li.hot>span:first-child{font-weight:600}
@media (max-width:900px){.geo{grid-template-columns:1fr}.geo-pin text{font-size:26px}}
@media (prefers-reduced-motion:reduce){.geo-pulse{animation:none;opacity:0}.geo-arc{stroke-dashoffset:0;transition:none}.geo-list li{transition:none}}
@media (prefers-reduced-motion:reduce){.js .fn-svg .fn-disc{opacity:1;transform:none}.fn-disc,.fn-disc ellipse,.fn-disc text{transition:none}.fn-disc.on,.js .fn-svg.in .fn-disc.on{transform:none}}

/* faq */
.faq{border-top:1.5px solid var(--ink)}
.faq details{border-bottom:1px solid var(--line)}
.faq summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:20px;align-items:center;padding:22px 0;font:400 clamp(1.1rem,1.5vw,1.35rem)/1.3 var(--f-sans)}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";flex:none;width:40px;height:40px;border-radius:50%;background:var(--green);color:var(--paper);display:grid;place-items:center;font-size:1.3rem;transition:transform .2s}
.faq details[open] summary::after{transform:rotate(45deg)}
.faq summary:hover{color:var(--green)}
.faq .a{padding:0 0 24px;max-width:68ch;display:grid;gap:10px;color:#3E3837}

/* form */
.form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 24px}
@media (max-width:640px){.form{grid-template-columns:1fr}}
.form .full{grid-column:1/-1}
.field{display:grid;gap:4px}
.field label{font-size:.85rem;text-transform:lowercase;opacity:.75}
.field input,.field select,.field textarea{font:400 1.05rem/1.4 var(--f-sans);color:inherit;background:transparent;border:0;border-bottom:1.5px solid currentColor;border-radius:0;padding:10px 0;width:100%}
.field textarea{min-height:44px;resize:vertical}
.field select option{color:#181717;background:#fff}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-bottom-color:var(--green)}
.green .field input:focus,.green .field select:focus,.green .field textarea:focus{border-bottom-color:var(--sand)}
.form-foot{display:flex;flex-wrap:wrap;gap:12px 20px;align-items:center}
.form-note{font-size:.9rem;opacity:.85;max-width:56ch}
.contacts-list{display:grid;gap:10px}
.sel{user-select:all}
.copy{background:none;border:1px solid currentColor;color:inherit;border-radius:999px;padding:3px 10px;font:400 .72rem/1 var(--f-sans);cursor:pointer;margin-left:6px;opacity:.8}

/* footer */
.site-foot{background:var(--ink);color:var(--paper);padding-block:64px 32px;position:relative;z-index:2}
.foot-grid{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:32px}
@media (max-width:900px){.foot-grid{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.foot-grid{grid-template-columns:1fr}}
.foot-grid h4{margin:0 0 14px;font:400 .95rem/1 var(--f-sans);text-transform:lowercase;color:#B7B0AE}
.foot-grid ul{list-style:none;padding:0;display:grid;gap:9px;font-size:.98rem}
.foot-grid a{text-decoration:none}
.foot-grid a:hover{color:var(--green)}
.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:48px;padding-top:20px;border-top:1px solid var(--line-d);font-size:.85rem;color:#B7B0AE}
.foot-word{font:400 clamp(3rem,11vw,11rem)/.85 var(--f-serif);text-transform:uppercase;color:var(--green);margin-top:48px;letter-spacing:.01em;white-space:nowrap;overflow:hidden}

/* draft blog post card */
.post-draft{border-top:1.5px solid var(--ink);padding:22px 0 0;display:grid;gap:12px;align-content:start}
.post-draft .tags{font-size:.88rem;text-transform:lowercase;color:var(--green)}
.post-draft .ttl{font:400 clamp(1.4rem,1.9vw,1.9rem)/1.08 var(--f-serif);text-transform:uppercase;color:var(--ink);letter-spacing:.005em}
.post-draft .note{font-size:.85rem;color:var(--muted)}

/* clients marquee */
.clients{border-bottom:1px solid var(--line);padding-block:clamp(28px,3.5vw,44px);overflow:hidden}
.marquee{display:flex;width:max-content;animation:marquee 40s linear infinite}
.marquee:hover{animation-play-state:paused}
.marquee-track{display:flex;align-items:center;gap:clamp(40px,5vw,88px);padding-right:clamp(40px,5vw,88px)}
.logo-slot{flex:none;display:grid;place-items:center;width:clamp(140px,12vw,190px);height:56px;border:1px dashed rgba(24,23,23,.25);border-radius:12px;font-size:.8rem;color:var(--muted);white-space:nowrap}
.clients img{height:48px;width:auto;flex:none;filter:grayscale(1);opacity:.75}
@keyframes marquee{to{transform:translateX(-50%)}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee{animation:none}.clients{overflow-x:auto}}

/* ===== HOME: one illustration, one camera ===== */
.home{--neon:#79FB7D;--ink-0:#000;--txt:#F3EFEA;--txt-2:#A9B3AA;--glass:rgba(4,10,5,.62);--edge:rgba(121,251,125,.2);
  position:relative;background:var(--ink-0);color:var(--txt);isolation:isolate}
.mind{position:fixed;inset:0;z-index:0;overflow:hidden;background:#000;pointer-events:none}
.mind-img{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform;max-width:none;user-select:none}
.mind-scrim{position:absolute;inset:0;opacity:0;will-change:opacity}
.mind-scrim.l{background:linear-gradient(90deg,#000 0%,rgba(0,0,0,.92) 32%,rgba(0,0,0,.55) 55%,transparent 78%)}
.mind-scrim.r{background:linear-gradient(270deg,#000 0%,rgba(0,0,0,.92) 32%,rgba(0,0,0,.55) 55%,transparent 78%)}
.mind-shade{position:absolute;inset:0;background:radial-gradient(ellipse at center,transparent 45%,rgba(0,0,0,.65) 100%);opacity:.9}
.home>section{position:relative;z-index:1}
.h-sec{min-height:100vh;display:grid;align-items:center;padding-block:clamp(72px,10vh,128px)}
.home h2{font:400 clamp(2rem,4.4vw,4.4rem)/1 var(--f-serif);text-transform:uppercase;letter-spacing:.005em;text-wrap:balance}
.home .lead{color:var(--txt-2)}
.h-kicker{font:500 .78rem/1 var(--f-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--neon)}
.h-head{display:grid;gap:18px;max-width:40ch}
.h-left,.h-right{display:grid;gap:clamp(24px,3vw,40px);align-content:center}
.h-left>*{max-width:min(760px,56%)}
.h-right>*{max-width:min(620px,48%);margin-left:auto;width:100%}
@media (max-width:900px){.h-left>*,.h-right>*{max-width:none;margin-left:0}}

/* hero */
.h-hero{min-height:calc(100vh - 108px);padding-block:clamp(40px,6vh,80px)}
.h-hero-text{display:grid;gap:22px;max-width:min(720px,52%)}
.h-hero h1{font:400 clamp(2.6rem,6.4vw,6.4rem)/.98 var(--f-serif);text-transform:uppercase;max-width:12ch}
.h-hero .slogan{color:var(--txt)}
.h-hero .facts{border-top-color:rgba(243,239,234,.18)}
.h-hero .facts span{color:var(--txt-2)}
.h-scroll{position:absolute;left:50%;bottom:28px;transform:translateX(-50%);font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--neon);opacity:.8;display:flex;flex-direction:column;align-items:center;gap:10px}
.h-scroll::after{content:"";width:1px;height:42px;background:linear-gradient(var(--neon),transparent);animation:hs 2.2s ease-in-out infinite}
@keyframes hs{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
@media (max-width:900px){.h-hero{align-items:start}.h-hero-text{max-width:none}.h-scroll{display:none}}

/* the statement inside the spiral */
.h-dive{min-height:150vh;text-align:center}
.h-statement{font:400 clamp(2rem,5.4vw,5.6rem)/1.02 var(--f-serif);text-transform:uppercase;max-width:18ch;margin:0 auto;text-wrap:balance;text-shadow:0 0 60px #000,0 0 24px #000}

/* clients */
.h-clients{padding-block:clamp(24px,3vw,40px);border-block:1px solid var(--edge);background:rgba(0,0,0,.72);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);overflow:hidden}
.home .logo-slot{border-color:rgba(121,251,125,.35);color:var(--txt-2)}

/* glass */
.home .glass{background:var(--glass);border:1px solid var(--edge);border-radius:22px;backdrop-filter:blur(14px) saturate(1.2);-webkit-backdrop-filter:blur(14px) saturate(1.2)}
.home .h-points{display:grid;gap:14px}
.home .h-points .glass{padding:24px 26px;display:grid;gap:10px}
.home .h-points p{color:var(--txt-2)}

/* rows on dark */
.home .rows{border-top:0;padding:6px 24px}
.home .rows>li{border-bottom-color:rgba(243,239,234,.12)}
.home .rows>li:last-child{border-bottom:0}
.home .row .d{color:var(--txt-2)}
.home .row .d b{color:var(--neon)}
.home .row .go{border-color:rgba(243,239,234,.5)}
.home .row:hover .t{color:var(--neon)}
.home .row:hover .go{background:var(--neon);border-color:var(--neon);color:#000}

/* buttons on dark */
.home .btn{color:var(--txt);border-color:rgba(243,239,234,.6)}
.home .btn:hover{background:var(--neon);border-color:var(--neon);color:#000}
.home .btn.fill{background:var(--neon);border-color:var(--neon);color:#000}
.home .btn.fill:hover{background:transparent;color:var(--neon)}

/* draft cases on dark */
.home .grid{grid-template-columns:repeat(3,minmax(0,1fr))}
@media (max-width:1100px){.home .grid{grid-template-columns:1fr}}
.home .case-draft{background:var(--glass);border:1px dashed rgba(121,251,125,.35);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.home .case-draft .fig{color:rgba(121,251,125,.55)}
.home .case-draft .ttl{color:rgba(243,239,234,.75)}
.home .case-draft .tags,.home .case-draft .note{color:var(--txt-2)}
.home .todo{color:#E8C27A;border-color:#E8C27A}

/* form on dark */
.home .h-cta .glass{padding:clamp(20px,3vw,36px)}
.home .field label{color:var(--txt-2);opacity:1}
.home .field input,.home .field select,.home .field textarea{color:var(--txt);border-bottom-color:rgba(243,239,234,.4)}
.home .field input:focus,.home .field select:focus,.home .field textarea:focus{border-bottom-color:var(--neon)}
.home .field select option{color:#111}
.home .contacts-list{color:var(--txt-2);font-size:.95rem}

/* reveal (only when JS runs) */
.js-home .rv{transition:opacity .8s cubic-bezier(.2,.7,.2,1),transform .8s cubic-bezier(.2,.7,.2,1)}
.js-home .rv:not(.in){opacity:0;transform:translateY(28px)}
@media (prefers-reduced-motion:reduce){.js-home .rv:not(.in){opacity:1;transform:none}.h-scroll::after{animation:none}}
.site-foot{position:relative;z-index:2}
.draft-strip{position:relative;z-index:21}
.home .h-left>.wide{max-width:none}
.mind-dim{position:absolute;inset:0;background:radial-gradient(ellipse 60% 50% at center,rgba(0,0,0,.85),rgba(0,0,0,.35));opacity:0;will-change:opacity}

/* ===== HOME: living illustration ===== */
.mind-art{position:absolute;left:0;top:0;transform-origin:0 0;will-change:transform}
.home .mind-img{position:absolute;inset:0;width:100%;height:100%;transform:none!important}
.mind-glow{position:absolute;inset:0;width:100%;height:100%;filter:blur(10px) saturate(1.3);mix-blend-mode:screen;opacity:.28;animation:neon 7s steps(1,end) infinite}
@keyframes neon{0%{opacity:.28}31%{opacity:.34}32%{opacity:.08}33%{opacity:.34}34%{opacity:.14}35%{opacity:.3}62%{opacity:.36}78%{opacity:.22}79%{opacity:.36}100%{opacity:.28}}
.mind-swirl{position:absolute;left:72.49%;top:43.08%;width:12.23%;height:10.19%;border-radius:50%;overflow:hidden;
  -webkit-mask-image:radial-gradient(circle,#000 52%,transparent 70%);mask-image:radial-gradient(circle,#000 52%,transparent 70%);animation:swirl 26s linear infinite}
.mind-swirl img{position:absolute;width:817.86%;height:981.43%;left:-592.86%;top:-422.86%;max-width:none}
@keyframes swirl{to{transform:rotate(-360deg)}}
.mind-fx{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.fx-lid{transform-box:fill-box;transform-origin:50% 0;transform:scaleY(0);transition:transform .09s ease-in}
.mind-art.blink .fx-lid{transform:scaleY(1)}
.fx-pupil{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.fx-star{fill:#79FB7D;transform-box:fill-box;transform-origin:center;animation:twinkle 3.6s ease-in-out infinite;filter:drop-shadow(0 0 6px #79FB7D)}
@keyframes twinkle{0%,100%{transform:scale(.92) rotate(0);opacity:.85}45%{transform:scale(1.35) rotate(12deg);opacity:1}55%{transform:scale(1.2) rotate(8deg)}}
.fx-dot{fill:#9DFFA0;mix-blend-mode:screen;opacity:0;animation:spark 3s ease-in-out infinite;filter:blur(1.5px)}
@keyframes spark{0%,100%{opacity:0}50%{opacity:.85}}
.fx-planet{mix-blend-mode:screen;transform-box:fill-box;transform-origin:center;animation:breathe 5.5s ease-in-out infinite}
@keyframes breathe{0%,100%{opacity:.18;transform:scale(.95)}50%{opacity:.5;transform:scale(1.08)}}
@media (prefers-reduced-motion:reduce){.mind-glow,.mind-swirl,.fx-star,.fx-dot,.fx-planet{animation:none}.fx-dot{opacity:0}}
.fx-lash{fill:none;stroke:#79FB7D;stroke-width:4;stroke-linecap:round;opacity:0;transition:opacity .06s .05s}
.mind-art.blink .fx-lash{opacity:1}

/* ===== HOME v2: anatomy, thoughts, pins, ignition, cursor ===== */
.home>section{z-index:2}
.anat,.thoughts{position:fixed;inset:0;z-index:1;pointer-events:none}
.anat{opacity:0;will-change:opacity}
.anat-svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.anat-ring{fill:none;stroke:var(--neon);stroke-width:1.2;opacity:.8;transform-box:fill-box;transform-origin:center;animation:ring 2.4s ease-out infinite}
@keyframes ring{0%{transform:scale(.4);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.anat-dot{fill:var(--neon);filter:drop-shadow(0 0 6px var(--neon))}
.anat-line{fill:none;stroke:var(--neon);stroke-width:1.2;opacity:.9}
.anat-label{position:absolute;left:0;top:0;display:grid;gap:4px;max-width:260px;padding:10px 14px;background:rgba(0,0,0,.72);border:1px solid var(--edge);border-radius:12px;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);will-change:transform}
.anat-name{font:500 .72rem/1 var(--f-sans);letter-spacing:.16em;text-transform:uppercase;color:var(--neon)}
.anat-note{font:400 .95rem/1.3 var(--f-sans);color:var(--txt)}
.thought{position:absolute;left:0;top:0;white-space:nowrap;filter:drop-shadow(0 10px 14px rgba(0,0,0,.35));
  transform:translate(-50%,-50%) rotate(var(--r0)) scale(.4);opacity:0;animation:thought 5.2s cubic-bezier(.2,.7,.2,1) forwards}
.thought .scrap{display:block;padding:12px 20px 13px;font:italic 400 clamp(.95rem,1.25vw,1.2rem)/1.1 var(--f-serif);color:var(--ink);background:var(--paper)}
.thought .scrap.s1{background:var(--paper)}
.thought .scrap.s2{background:var(--paper)}
@keyframes thought{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--r0)) scale(.4)}
  14%{opacity:1;transform:translate(calc(-50% + var(--dx)*.25),calc(-50% + var(--dy)*.25)) rotate(var(--r1)) scale(1.04)}
  22%{transform:translate(calc(-50% + var(--dx)*.32),calc(-50% + var(--dy)*.32)) rotate(var(--r1)) scale(1)}
  75%{opacity:1}
  100%{opacity:0;transform:translate(calc(-50% + var(--dx)),calc(-50% + var(--dy))) rotate(calc(var(--r1) * -1)) scale(.96)}}

/* pinned scenes (desktop) */
.home.pin-on .h-pin{display:block;min-height:0;padding:0}
.home.pin-on .h-tasks{height:340vh}
.home.pin-on .h-cases{height:280vh}
.home.pin-on .h-pin-in{position:sticky;top:var(--hh);height:calc(100vh - var(--hh));display:grid;align-content:center;overflow:hidden}
.home.pin-on .h-tasks .rows{padding-block:2px}
.home.pin-on .h-tasks .row{padding:16px 0;transition:opacity .4s,transform .4s}
.home .row.off{opacity:.38}
.home .row.on{opacity:1;transform:translateX(10px)}
.home .row.on .t{color:var(--neon)}
.home .row.on .go{background:var(--neon);border-color:var(--neon);color:#000}
.h-cases-head{display:grid;gap:14px;max-width:none}
.h-cases-head .lead{max-width:48ch}
.h-track{display:flex;gap:20px;padding:clamp(24px,4vh,48px) var(--gutter) 8px;will-change:transform}
.hcard{flex:none;width:min(440px,32vw);min-height:min(46vh,380px)}
.home .case-draft.hcard{align-content:end}
.home .case-draft.hcard .fig{font-size:clamp(3rem,5vw,4.6rem)}
.hcard-all{display:grid;align-content:end;gap:14px;padding:28px;border-radius:20px;border:1px solid var(--neon);text-decoration:none;color:var(--txt);background:rgba(121,251,125,.08)}
.hcard-all .ttl{font:400 clamp(1.4rem,2.4vw,2.2rem)/1.05 var(--f-serif);text-transform:uppercase}
.hcard-all .go{width:52px;height:52px;border-radius:50%;background:var(--neon);color:#000;display:grid;place-items:center;font-size:1.3rem}
.hcard-all:hover{background:rgba(121,251,125,.16)}
@media (max-width:900px){.h-track{flex-direction:column}.hcard{width:100%;min-height:0}}
.h-breath{min-height:130vh}

/* neon ignition */
@keyframes ignite{0%{opacity:0}6%{opacity:.85}8%{opacity:0}16%{opacity:0}18%{opacity:.6}20%{opacity:.1}26%{opacity:1}28%{opacity:.4}34%{opacity:1}100%{opacity:1}}
@keyframes heroIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
.home.ignite .mind-art{animation:ignite 1.7s linear both}
.home.ignite .h-hero-text>*{animation:heroIn .9s cubic-bezier(.2,.7,.2,1) both}
.home.ignite .h-hero-text>*:nth-child(1){animation-delay:.9s}
.home.ignite .h-hero-text>*:nth-child(2){animation-delay:1.05s}
.home.ignite .h-hero-text>*:nth-child(3){animation-delay:1.2s}
.home.ignite .h-hero-text>*:nth-child(4){animation-delay:1.35s}
.home.ignite .h-scroll{animation:heroIn .9s 1.8s both}

/* cursor */
.cursor{position:fixed;left:0;top:0;z-index:60;width:12px;height:12px;margin:-6px 0 0 -6px;border-radius:50%;background:var(--neon);pointer-events:none;mix-blend-mode:difference;transition:width .25s,height .25s,margin .25s,background .25s,border .25s;opacity:0}
.cursor.big{width:54px;height:54px;margin:-27px 0 0 -27px;background:transparent;border:1.5px solid var(--neon);mix-blend-mode:normal}
.home .btn{transition:background .2s,color .2s,transform .25s cubic-bezier(.2,.7,.2,1)}
@media (pointer:coarse){.cursor{display:none}}
@media (prefers-reduced-motion:reduce){.anat-ring{animation:none}.thought{display:none}}
.home.pin-on .h-tasks .h-left{gap:18px}
.home.pin-on .h-tasks h2{font-size:clamp(1.8rem,3.2vw,3.2rem)}
.home.pin-on .h-tasks .h-head{gap:10px}
.home.pin-on .h-tasks .row .t{font-size:clamp(.98rem,1.25vw,1.2rem)}
.home.pin-on .h-tasks .row{padding:12px 0}
.home.pin-on .h-tasks .row .go{width:34px;height:34px}
.hcard{width:min(520px,38vw)}
.thoughts{transition:opacity .5s}

/* cut-paper shapes appear as if cut out */
@keyframes cutIn{from{clip-path:polygon(0 0,0 0,0 100%,0 100%);transform:rotate(-4deg)}to{clip-path:polygon(0 0,100% 0,100% 100%,0 100%);transform:none}}
.ph-shape svg{animation:cutIn 1.1s cubic-bezier(.7,0,.2,1) .15s both;transform-origin:30% 60%}
@media (prefers-reduced-motion:reduce){.ph-shape svg{animation:none}}

/* ===== HOME in brand colours (the head illustration stays as is) ===== */
.home{--neon:#44856A;--txt:#F9F6F4;--txt-2:#B7B0AE;--edge:rgba(68,133,106,.4);--glass:rgba(24,23,23,.72)}
.home h2,.home .h-hero h1{color:var(--green)}
.home .h-statement{color:var(--paper)}
.h-kicker{font:400 1rem/1.2 var(--f-sans);letter-spacing:0;text-transform:lowercase;color:var(--paper)}
.home .row .d b{color:var(--sand);text-transform:lowercase}
.home .row .t{font-family:var(--f-sans)}
.home .row .go{background:transparent;border:1.5px solid rgba(249,246,244,.5);color:var(--paper)}
.home .btn{color:var(--paper);border-color:var(--green)}
.home .btn:hover,.home .btn.fill{background:var(--green);color:var(--paper);border-color:var(--green)}
.home .btn.fill:hover{background:var(--deep);border-color:var(--deep)}
.home .case-draft{border-top:1.5px solid var(--green);padding:22px 22px 24px}
.home .case-draft::before{background:rgba(249,246,244,.06)}
.home .case-draft .ttl{color:var(--paper)}
.home .glass{border-radius:4px}
.home .h-points .glass h3{color:var(--paper)}
.home .hcard-all{border-color:var(--green);background:rgba(68,133,106,.14);border-radius:4px}
.home .hcard-all .go{background:var(--green);color:var(--paper)}
.anat-name{color:var(--sand);text-transform:lowercase;letter-spacing:0;font-size:.9rem}
.anat-label{border-radius:4px}
.h-scroll{color:var(--paper);text-transform:lowercase;letter-spacing:0;font-size:.9rem}
.h-scroll::after{background:linear-gradient(var(--green),transparent)}
.home .facts span{color:var(--txt-2)}
.home .field label{text-transform:lowercase}
.home .h-clients{border-color:rgba(68,133,106,.35)}
.home .logo-slot{border-color:rgba(249,246,244,.25)}
.page-head .slogan{font:400 clamp(1.05rem,1.3vw,1.25rem)/1.45 var(--f-sans);max-width:40ch}
.page-head.has-shape .slogan{grid-area:l}
/* new head (brand palette) */
.mind-swirl{display:none}
.mind-glow{filter:blur(12px);opacity:.16;animation:glow2 8s steps(1,end) infinite}
@keyframes glow2{0%{opacity:.16}40%{opacity:.2}41%{opacity:.06}42%{opacity:.2}43%{opacity:.1}44%{opacity:.18}100%{opacity:.16}}
.fx-iris{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.fx-lash{stroke:#EFE7D8;stroke-width:3.5}
.fx-star{fill:#F3EBDD;filter:drop-shadow(0 0 6px rgba(243,235,221,.8))}
.fx-dot{fill:#F3EBDD;mix-blend-mode:normal;filter:blur(1px)}
.fx-dot:nth-child(3n){fill:#6FB394}
.fx-orbit{transform-box:view-box;transform-origin:872px 262px;animation:orbit 18s linear infinite}
@keyframes orbit{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion:reduce){.fx-orbit,.mind-glow{animation:none}}
/* eye and stars cut from the illustration itself */
.fx-eye{position:absolute;overflow:hidden;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat}
.fx-eye img{position:absolute;max-width:none;display:block}
.fx-plate{inset:0;width:100%;height:100%}
.fx-pupil{transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.fx-lid{inset:0;width:100%;height:100%;transform-origin:50% 0;transform:scaleY(0);transition:transform .09s ease-in}
.mind-art.blink .fx-lid{transform:scaleY(1)}
.fx-star2{position:absolute;max-width:none;transform-origin:center;animation:twinkle2 3.6s ease-in-out infinite;filter:drop-shadow(0 0 0 rgba(243,235,221,0))}
@keyframes twinkle2{0%,100%{transform:scale(1) rotate(0);filter:drop-shadow(0 0 0 rgba(243,235,221,0))}45%{transform:scale(1.28) rotate(10deg);filter:drop-shadow(0 0 8px rgba(243,235,221,.8))}60%{transform:scale(1.12) rotate(6deg)}}
@media (prefers-reduced-motion:reduce){.fx-star2{animation:none}}
/* pinned scenes: content must fit the screen, never centred out of view */
.home.pin-on .h-pin-in{align-content:safe center;padding-block:24px}
.home .case-draft.hcard::before{display:none}
.home .case-draft.hcard{min-height:min(40vh,340px)}
.hcard{min-height:min(40vh,340px)}
.home .h-pin-in{min-width:0}.home .h-track{min-width:0;width:max-content}
@media (max-height:900px){
  .home.pin-on .h-tasks .h-left{gap:12px}
  .home.pin-on .h-tasks h2{font-size:clamp(1.6rem,2.6vw,2.4rem)}
  .home.pin-on .h-tasks .h-head .lead{display:none}
  .home.pin-on .h-tasks .row{padding:8px 0;gap:4px 24px}
  .home.pin-on .h-tasks .row .t{font-size:.95rem}
  .home.pin-on .h-tasks .row .d{font-size:.78rem;line-height:1.3}
  .home.pin-on .h-tasks .row .go{width:30px;height:30px}
  .home.pin-on .h-tasks .btn{min-height:44px}
  .home.pin-on .h-cases .hcard{min-height:min(34vh,300px)}
}
.clients .client-logo,.h-clients .client-logo{flex:none;height:clamp(30px,2.6vw,42px);width:auto;filter:none;opacity:.85;transition:opacity .2s}
.h-clients .client-logo.tall{height:clamp(48px,4.2vw,68px)}
.h-clients .client-logo:hover{opacity:1}
.h-clients .marquee-track{gap:clamp(56px,6vw,110px);padding-right:clamp(56px,6vw,110px)}
.social{display:inline-flex;gap:10px;align-items:center}
.soc{width:42px;height:42px;border-radius:50%;border:1.5px solid currentColor;display:inline-grid;place-items:center;color:inherit;text-decoration:none;transition:background .2s,color .2s,border-color .2s}
.soc svg{width:18px;height:18px;display:block}
.soc:hover{background:var(--green);border-color:var(--green);color:var(--paper)}

/* ===== case cards & case pages ===== */
.case-card{border-top:1.5px solid var(--ink);padding:22px 0 4px;display:grid;gap:10px;align-content:start;text-decoration:none;color:inherit}
.case-card .tags{font-size:.88rem;text-transform:lowercase;color:var(--muted)}
.case-card .fig{font:400 clamp(2.6rem,3.8vw,3.8rem)/1 var(--f-serif);color:var(--green);text-transform:uppercase}
.case-card .cap{font-size:.9rem;color:var(--muted);margin-top:-4px}
.case-card .ttl{font:400 clamp(1.1rem,1.35vw,1.3rem)/1.3 var(--f-sans)}
.case-card .more{font-size:.92rem;color:var(--green)}
.case-card:hover .ttl{color:var(--green)}
.home .case-card{background:var(--glass);border:1px solid var(--edge);border-top:1.5px solid var(--green);padding:22px;backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-radius:4px}
.home .case-card .ttl{color:var(--paper)}
.home .case-card .tags,.home .case-card .cap{color:var(--txt-2)}
.home .case-card .more{color:var(--sand)}
.hcard.case-card{align-content:end}
.cs-head .wrap{grid-template-columns:1fr}
.cs-h1{font-size:clamp(2.1rem,4.6vw,4.6rem);max-width:22ch}
.cs-metrics{display:flex;flex-wrap:wrap;gap:16px clamp(32px,5vw,80px);padding-top:24px;border-top:1.5px solid var(--ink)}
.cs-metrics div{display:grid;gap:6px}
.cs-metrics b{font:400 clamp(2.4rem,4.4vw,4.4rem)/1 var(--f-serif);color:var(--green)}
.cs-metrics span{font-size:.95rem;color:var(--muted);max-width:22ch}
.cs-card{margin:0;display:grid;border-top:1.5px solid var(--ink);align-content:start}
.cs-card div{display:grid;grid-template-columns:120px minmax(0,1fr);gap:16px;padding:12px 0;border-bottom:1px solid var(--line)}
.cs-card dt{color:var(--muted);text-transform:lowercase}
.cs-card dd{margin:0}
.cs-h2{font:400 clamp(1.5rem,2.4vw,2.2rem)/1.05 var(--f-serif);text-transform:uppercase;color:var(--green)}
.cs-body{display:grid;gap:clamp(36px,5vw,64px)}
.cs-part{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.6fr);gap:16px clamp(28px,5vw,80px)}
.cs-part .prose{max-width:none}
@media (max-width:820px){.cs-part{grid-template-columns:1fr}}
.cs-table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}
.cs-table th{text-align:left;font-weight:400;color:var(--muted);text-transform:lowercase;font-size:.9rem;padding:10px 12px 10px 0;border-bottom:1.5px solid var(--ink)}
.cs-table td{padding:12px 12px 12px 0;border-bottom:1px solid var(--line);vertical-align:top}
.cs-table td:last-child{font-family:var(--f-serif);color:var(--green);font-size:1.25rem}
.cs-src{font-size:.9rem;color:var(--muted)}
.cs-intro .lead{max-width:56ch}
.page-head .cs-h1{max-width:24ch;font-size:clamp(2rem,4.2vw,4.2rem)}
#req li{display:grid;grid-template-columns:200px minmax(0,1fr);gap:16px}#req li span:first-child{color:var(--muted);text-transform:lowercase}#req li span:last-child{color:var(--ink);font-size:1.02rem;text-align:left;font-variant-numeric:tabular-nums}@media (max-width:560px){#req li{grid-template-columns:1fr;gap:2px}}
.steps.six{grid-template-columns:repeat(3,minmax(0,1fr));row-gap:40px}
@media (max-width:820px){.steps.six{grid-template-columns:1fr}}
.card .kpi{color:var(--ink);font-size:.95rem}
.card .kpi b{font:400 1.5rem/1 var(--f-serif);color:var(--green)}
.card .eyebrow{font-size:.88rem;color:var(--green);opacity:1}
.dark .grid.four .card h3{color:var(--paper)}

/* ===== case layout v2 ===== */
.cs2-hero{position:relative;overflow:hidden;padding-block:clamp(28px,4vw,56px) clamp(48px,6vw,96px);border-bottom:1px solid var(--line)}
.cs2-hero-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(24px,4vw,72px);align-items:center;margin-top:clamp(20px,3vw,40px)}
.cs2-hero-txt{display:grid;gap:22px;align-content:start}
.cs2-chips{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:8px}
.cs2-chips li{font-size:.85rem;padding:6px 14px;border:1px solid var(--ink);border-radius:999px}
.cs2-brand{font:400 clamp(4rem,11vw,10.5rem)/.85 var(--f-serif);color:var(--green);letter-spacing:-.01em;margin-left:-.04em}
.cs2-h1{font:400 clamp(1.4rem,2.2vw,2.1rem)/1.15 var(--f-serif);text-transform:uppercase;color:var(--ink);max-width:26ch}
.cs2-hero .lead{color:var(--muted)}
.cs2-visual{position:relative;aspect-ratio:1/1.05;display:grid;place-items:center}
.cs2-waves{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.cs2-waves circle{fill:none;stroke:var(--green);stroke-width:1.2;opacity:.0;transform-origin:300px 300px;animation:csWave 3.6s ease-out infinite}
.cs2-waves circle:nth-child(2){animation-delay:1.2s}.cs2-waves circle:nth-child(3){animation-delay:2.4s}
@keyframes csWave{0%{opacity:0;transform:scale(.6)}25%{opacity:.55}100%{opacity:0;transform:scale(1.15)}}
.cs2-blob{position:absolute;border-radius:50%}
.cs2-blob.b1{width:78%;height:34%;background:var(--green);left:11%;top:50%;transform:rotate(-14deg)}
.cs2-blob.b2{width:38%;height:16%;background:var(--sand);right:2%;top:16%;transform:rotate(18deg)}
.cs2-phone{position:relative;z-index:2;width:min(300px,62%);aspect-ratio:9/17;background:var(--white);border:1.5px solid var(--ink);border-radius:36px;padding:18px 14px;display:grid;align-content:start;gap:12px;box-shadow:0 30px 60px -30px rgba(24,23,23,.45);transform:rotate(-4deg)}
.ph-top{display:flex;gap:10px;align-items:center;padding-bottom:10px;border-bottom:1px solid var(--line)}
.ph-top b{display:block;font-size:.95rem}.ph-top small{font-size:.75rem;color:var(--muted)}
.ph-ava{width:36px;height:36px;border-radius:50%;background:var(--green);box-shadow:inset 0 0 0 7px var(--blush)}
.ph-post{background:var(--blush);border-radius:14px 14px 14px 4px;padding:12px;display:grid;gap:7px}
.ph-tag{justify-self:start;font-size:.7rem;font-weight:600;color:var(--green);text-transform:uppercase;letter-spacing:.08em}
.ph-post i{height:7px;border-radius:4px;background:rgba(24,23,23,.12)}.ph-post i.s{width:60%}
.js .ph-post{opacity:0;transform:translateY(16px)}
.js .cs2-hero.in .ph-post{opacity:1;transform:none;transition:opacity .6s ease calc(.3s + var(--d)*.35s),transform .7s cubic-bezier(.2,.8,.2,1) calc(.3s + var(--d)*.35s)}
.cs2-sticker{position:absolute;z-index:3;width:clamp(84px,9vw,128px)}
.cs2-sticker.s0{left:2%;bottom:6%;transform:rotate(-12deg)}.cs2-sticker.s1{right:4%;top:6%;transform:rotate(10deg)}
.cs2-sticker svg{width:100%;height:auto}
.cs2-band{background:var(--ink);color:var(--paper);padding-block:clamp(48px,6vw,96px)}
.cs2-nums{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(240px,100%),1fr));gap:32px clamp(24px,4vw,64px)}
.cs2-num{display:grid;gap:10px;align-content:start;padding-top:18px;border-top:1px solid var(--line-d)}
.cs2-num b{font:400 clamp(2.4rem,4.4vw,4.6rem)/.95 var(--f-serif);color:var(--green)}
.cs2-num span{font-size:.95rem;color:#B7B0AE;max-width:22ch}
.cs2-story-grid{display:grid;grid-template-columns:200px minmax(0,1fr);gap:clamp(24px,5vw,96px);align-items:start}
.cs2-toc{position:sticky;top:110px}
.cs2-toc ol{list-style:none;padding:0;margin:0;display:grid;gap:4px;border-left:1.5px solid var(--line)}
.cs2-toc a{display:block;padding:6px 0 6px 16px;margin-left:-1.5px;border-left:1.5px solid transparent;text-decoration:none;color:var(--muted);transition:color .3s,border-color .3s}
.cs2-toc a.on{color:var(--green);border-left-color:var(--green)}
.cs2-chapters{display:grid;gap:clamp(56px,7vw,112px)}
.cs2-ch{display:grid;gap:22px;scroll-margin-top:100px}
.cs2-k{font:400 .95rem/1 var(--f-sans);text-transform:lowercase;color:var(--muted);letter-spacing:.02em}
.cs2-big{font:400 clamp(1.7rem,3vw,2.9rem)/1.15 var(--f-serif);max-width:28ch;text-wrap:balance}
.cs2-big.accent{color:var(--green)}
.cs2-sol{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.cs2-sol li{position:relative;display:grid;gap:14px;align-content:start;padding:26px;border-radius:28px;background:var(--white);border:1px solid var(--line);overflow:hidden;transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.cs2-sol li:hover{transform:translateY(-4px)}
.cs2-sol .dot{width:56px;height:18px;border-radius:50%;background:var(--c)}
.cs2-sol .n{position:absolute;right:22px;top:16px;font:400 2.2rem/1 var(--f-serif);color:var(--c);opacity:.9}
.cs2-sol p{font-size:1.02rem}
.cs2-gallery{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:8px}
.cs2-gallery .gph{aspect-ratio:4/5;border:1.5px dashed var(--todo);border-radius:28px;background:repeating-linear-gradient(135deg,transparent 0 14px,rgba(154,100,16,.05) 14px 28px)}
.cs2-gallery p{grid-column:1/-1}
.cs2-res{list-style:none;padding:0;margin:0;border-top:1.5px solid var(--ink)}
.cs2-res li{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px 24px;align-items:baseline;padding:20px 0;border-bottom:1px solid var(--line)}
.cs2-res .k{color:var(--muted)}
.cs2-res b{font:400 clamp(1.8rem,3vw,2.8rem)/1 var(--f-serif);color:var(--green)}
.cs2-bar{grid-column:1/-1;height:10px;border-radius:999px;background:var(--blush);overflow:hidden}
.cs2-bar i{display:block;height:100%;width:0;border-radius:inherit;background:var(--green);transition:width 1.4s cubic-bezier(.2,.8,.2,1)}
.cs2-res.in .cs2-bar i{width:var(--v)}
.cs2-aw{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.cs2-aw li{display:grid;gap:14px;justify-items:start;font-size:.95rem;color:var(--muted)}
.cs2-aw svg{width:120px;height:auto;transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.cs2-aw li:hover svg{transform:rotate(-8deg) scale(1.05)}
.cs2-quote{position:relative;padding:clamp(28px,4vw,56px);border-radius:999px/60%;background:var(--blush);justify-items:center;text-align:center}
.cs2-quote .q{font:400 7rem/0.6 var(--f-serif);color:var(--green);height:.45em}
.cs2-team{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.cs2-team li{display:grid;gap:4px;padding:16px 18px;border:1px solid var(--line);border-radius:18px}
.cs2-team span{font-size:.88rem;color:var(--muted)}
.cs2-gaps p{display:flex;flex-wrap:wrap;gap:8px;align-items:center;color:var(--muted);font-size:.95rem}
.cs2-next{display:block;background:var(--green);color:var(--paper);text-decoration:none;padding-block:clamp(40px,6vw,88px);transition:background .4s}
.cs2-next .wrap{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px 24px;align-items:end}
.cs2-next small{grid-column:1/-1;font-size:.95rem;opacity:.8;text-transform:lowercase}
.cs2-next b{font:400 clamp(1.6rem,3.4vw,3.2rem)/1.05 var(--f-serif);text-transform:uppercase;max-width:30ch}
.cs2-next i{font-style:normal;font-size:clamp(2rem,4vw,4rem);transition:transform .4s cubic-bezier(.2,.8,.2,1)}
.cs2-next:hover{background:var(--deep)}.cs2-next:hover i{transform:translateX(12px)}
@media (max-width:980px){.cs2-hero-grid{grid-template-columns:1fr}.cs2-visual{max-width:520px;width:100%;margin:0 auto}.cs2-story-grid{grid-template-columns:1fr}.cs2-toc{display:none}.cs2-aw,.cs2-team{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:640px){.cs2-sol,.cs2-aw,.cs2-team{grid-template-columns:1fr}.cs2-gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.cs2-quote{border-radius:40px}}
@media (prefers-reduced-motion:reduce){.cs2-waves circle{animation:none;opacity:.25}.js .ph-post{opacity:1;transform:none}.cs2-bar i{transition:none}}

/* case gallery with real images */
.cs2-gallery.real{grid-template-columns:repeat(auto-fill,minmax(min(200px,100%),1fr));align-items:start}
.cs2-gallery.real figure{margin:0;display:grid;gap:10px}
.cs2-gallery.real img{width:100%;height:auto;display:block;border-radius:24px;border:1px solid var(--line)}
.cs2-gallery.real figcaption{font-size:.88rem;color:var(--muted)}

/* ===== theme: bailanys (palette and type from the channel media kit) ===== */
.th-bailanys{--bl-bg:#292929;--bl-y:#FBF15E;--bl-v:#8C84FF;--bl-w:#FFFFFF;--bl-mut:#B4B4B4;--bl-f:"Oswald","Bebas Neue","Arial Narrow",sans-serif;
  background:var(--bl-bg);color:var(--bl-w);position:relative;overflow:hidden}
.th-bailanys .cs2-hero{border-bottom:0;padding-bottom:clamp(40px,5vw,80px)}
.th-bailanys .crumbs,.th-bailanys .crumbs a{color:var(--bl-mut)}
.th-bailanys .cs2-chips li{border-color:var(--bl-y);color:var(--bl-y)}
.th-bailanys .cs2-hero-txt{position:relative;z-index:2;border:5px solid var(--bl-y);border-radius:28px;padding:clamp(24px,3.4vw,52px);background:var(--bl-bg)}
.th-bailanys .cs2-brand{font:600 clamp(4.4rem,10vw,9.6rem)/.9 var(--bl-f);color:var(--bl-y);letter-spacing:0;margin:0}
.th-bailanys .cs2-h1{font:500 clamp(1.5rem,2.4vw,2.3rem)/1.08 var(--bl-f);color:var(--bl-w);max-width:24ch}
.th-bailanys .cs2-hero .lead{color:#D9D9D9}
.th-bailanys .btn{color:var(--bl-w);border-color:var(--bl-w)}
.th-bailanys .btn:hover{background:var(--bl-w);color:var(--bl-bg)}
.th-bailanys .btn.fill{background:var(--bl-y);border-color:var(--bl-y);color:var(--bl-bg)}
.th-bailanys .btn.fill:hover{background:var(--bl-w);border-color:var(--bl-w)}
/* hero visual: real screenshots + glass blobs */
.th-visual{aspect-ratio:1/1.08}
.th-blob{position:absolute;pointer-events:none;height:auto;will-change:transform;animation:blFloat 9s ease-in-out infinite}
.th-blob.t0{width:115%;left:-12%;top:-6%;opacity:.95}
.th-blob.t1{width:60%;right:-22%;bottom:-14%;transform:rotate(140deg);animation-delay:-3s;animation-duration:11s}
.th-blob.t2{width:44%;left:-30%;bottom:-6%;transform:rotate(-70deg);animation-delay:-6s;opacity:.85}
@keyframes blFloat{0%,100%{translate:0 0}50%{translate:0 -14px}}
.th-phone{position:relative;z-index:2;width:min(290px,56%);aspect-ratio:9/19.4;border-radius:40px;background:#111;padding:9px;box-shadow:0 40px 80px -30px rgba(0,0,0,.7),0 0 0 1.5px #555;transform:rotate(-5deg)}
.th-phone img{width:100%;height:100%;object-fit:cover;object-position:top;border-radius:32px;display:block}
.th-post{position:absolute;z-index:3;margin:0;width:min(230px,42%);right:0;bottom:4%;transform:rotate(7deg);border-radius:18px;overflow:hidden;box-shadow:0 30px 60px -20px rgba(0,0,0,.7);border:4px solid var(--bl-y)}
.th-post img{display:block;width:100%;height:auto}
.th-bailanys .cs2-sticker.s0{left:0;bottom:auto;top:58%}
.th-bailanys .cs2-sticker.s1{right:auto;left:-2%;top:2%}
/* numbers as yellow tiles */
.th-bailanys .cs2-band{background:transparent;padding-top:0}
.th-bailanys .cs2-nums{gap:14px}
.th-bailanys .cs2-num{background:var(--bl-y);color:var(--bl-bg);border:0;border-radius:22px;padding:24px 22px;justify-items:center;text-align:center}
.th-bailanys .cs2-num:nth-child(3){background:var(--bl-v);color:var(--bl-w)}
.th-bailanys .cs2-num:nth-child(4){background:var(--bl-w)}
.th-bailanys .cs2-num b{font:600 clamp(2.4rem,4.2vw,4.4rem)/1 var(--bl-f);color:inherit}
.th-bailanys .cs2-num span{color:inherit;opacity:.8;font-size:.9rem}
/* story */
.th-bailanys .cs2-story{border-bottom:0}
.th-bailanys .cs2-toc ol{border-left-color:#444}
.th-bailanys .cs2-toc a{color:var(--bl-mut)}
.th-bailanys .cs2-toc a.on{color:var(--bl-y);border-left-color:var(--bl-y)}
.th-bailanys .cs2-k{font:600 clamp(2.2rem,4vw,3.8rem)/1 var(--bl-f);text-transform:uppercase;color:var(--bl-w);letter-spacing:0}
.th-bailanys .cs2-big{font:500 clamp(1.4rem,2.3vw,2.1rem)/1.2 var(--f-sans);color:#E6E6E6;max-width:34ch}
.th-bailanys .cs2-big.accent{background:var(--bl-y);color:var(--bl-bg);border-radius:24px;padding:clamp(22px,3vw,40px);max-width:none}
.th-bailanys .cs2-sol li{background:var(--bl-y);color:var(--bl-bg);border:0;border-radius:22px}
.th-bailanys .cs2-sol li:nth-child(4n+2){background:var(--bl-w)}
.th-bailanys .cs2-sol li:nth-child(4n+3){background:var(--bl-v);color:var(--bl-w)}
.th-bailanys .cs2-sol .dot{display:none}
.th-bailanys .cs2-sol .n{position:static;font:600 2.6rem/1 var(--bl-f);color:inherit;opacity:1}
.th-bailanys .cs2-gallery.real img{border:0}
.th-bailanys .cs2-gallery figcaption,.th-bailanys .cs-src{color:var(--bl-mut)}
.th-bailanys .cs2-res{border-top-color:var(--bl-y)}
.th-bailanys .cs2-res li{border-bottom-color:#444}
.th-bailanys .cs2-res .k{color:#D9D9D9}
.th-bailanys .cs2-res b{font:600 clamp(2rem,3.4vw,3.2rem)/1 var(--bl-f);color:var(--bl-y)}
.th-bailanys .cs2-bar{background:#3A3A3A}.th-bailanys .cs2-bar i{background:var(--bl-v)}
.th-bailanys .cs2-aw li{color:#D9D9D9}
.th-bailanys .cs2-quote{background:transparent;border:5px solid var(--bl-y);border-radius:28px}
.th-bailanys .cs2-quote .q{color:var(--bl-y);font-family:var(--bl-f)}
.th-bailanys .cs2-team li{border-color:#4A4A4A}
.th-bailanys .cs2-team span,.th-bailanys .cs2-gaps p{color:var(--bl-mut)}
.th-bailanys .todo{color:var(--bl-y);border-color:var(--bl-y)}
@media (max-width:980px){.th-visual{max-width:460px}.th-post{right:-2%}}
@media (prefers-reduced-motion:reduce){.th-blob{animation:none}}
.cs2-worked{list-style:none;padding:0;margin:0;display:grid;gap:0;counter-reset:w;border-top:1.5px solid var(--ink)}
.cs2-worked li{counter-increment:w;display:grid;grid-template-columns:64px minmax(0,1fr);gap:16px;padding:22px 0;border-bottom:1px solid var(--line);font-size:clamp(1.05rem,1.4vw,1.3rem);line-height:1.45}
.cs2-worked li::before{content:counter(w,decimal-leading-zero);font:400 2rem/1 var(--f-serif);color:var(--green)}
.th-bailanys .cs2-worked{border-top-color:var(--bl-y)}
.th-bailanys .cs2-worked li{border-bottom-color:#444;color:#E6E6E6}
.th-bailanys .cs2-worked li::before{font:600 2.4rem/1 var(--bl-f);color:var(--bl-y)}

/* case v2: extra components */
.th-heroimg{aspect-ratio:auto;display:block}
.th-heroimg>img{display:block;width:150%;max-width:none;margin-left:-18%;height:auto;filter:drop-shadow(0 30px 40px rgba(0,0,0,.25))}
.cs2-concept{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:clamp(20px,3vw,48px);align-items:start}
.cs2-concept .txt{display:grid;gap:16px;font-size:1.02rem}
.cs2-concept .pics{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.cs2-concept figure{margin:0;display:grid;gap:6px}
.cs2-concept figure:nth-child(2){margin-top:40px}.cs2-concept figure:nth-child(4){margin-top:-40px}
.cs2-concept img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block;border-radius:6px}
.cs2-concept figcaption{font-size:.8rem;color:var(--muted)}
.cs2-pal{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0}
.cs2-pal li{display:grid;gap:6px;align-content:start;padding-right:14px}
.cs2-pal i{display:block;height:clamp(140px,16vw,240px);background:var(--sw);margin-bottom:10px;transform-origin:bottom;transition:transform .9s cubic-bezier(.2,.8,.2,1)}
.cs2-pal li{padding-right:0}.cs2-pal li>*:not(i){padding-right:14px}
.cs2-pal code{font-size:.85rem;color:var(--muted)}
.cs2-pal span{font-size:.88rem;color:var(--muted)}
.cs2-fonts{list-style:none;padding:0;margin:8px 0 0;display:flex;flex-wrap:wrap;gap:12px 40px}
.cs2-fonts li{display:grid;gap:2px}.cs2-fonts span{font-size:.88rem;color:var(--muted)}
.cs2-personas{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.cs2-personas li{display:grid;gap:6px;align-content:start}
.cs2-personas img{width:100%;aspect-ratio:1;object-fit:cover;display:block;margin-bottom:8px}
.cs2-personas b{font-size:1.05rem}.cs2-personas span{font-size:.88rem}
@media (max-width:820px){.cs2-concept{grid-template-columns:1fr}.cs2-pal{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:20px}.cs2-personas{grid-template-columns:1fr 1fr}}
@media (max-width:520px){.cs2-personas{grid-template-columns:1fr}}

/* ===== theme: «Новый день» (palette and type from the visual concept) ===== */
.th-novyi-den{--nd-br:#6A2F11;--nd-or:#D6531D;--nd-gr:#0F4D2D;--nd-bl:#034568;--nd-paper:#F6F3EE;
  --nd-h:"Montserrat","Proxima Nova",Arial,sans-serif;--nd-m:"Ubuntu Mono",ui-monospace,monospace;background:var(--nd-paper);color:#1A1A1A}
.th-novyi-den .cs2-hero{background:var(--nd-bl);color:#fff;border-bottom:0;overflow:hidden}
.th-novyi-den .crumbs,.th-novyi-den .crumbs a{color:rgba(255,255,255,.7)}
.th-novyi-den .cs2-chips li{border-color:#fff;color:#fff;font-family:var(--nd-m)}
.th-novyi-den .cs2-brand{font:800 clamp(3.4rem,8.4vw,8rem)/.92 var(--nd-h);text-transform:uppercase;color:var(--nd-or);letter-spacing:-.01em}
.th-novyi-den .cs2-h1{font:800 clamp(1.3rem,2vw,1.9rem)/1.12 var(--nd-h);color:#fff;max-width:30ch}
.th-novyi-den .cs2-hero .lead{font-family:var(--nd-m);color:rgba(255,255,255,.85);font-size:1.02rem}
.th-novyi-den .btn{color:#fff;border-color:#fff}.th-novyi-den .btn:hover{background:#fff;color:var(--nd-bl)}
.th-novyi-den .btn.fill{background:var(--nd-or);border-color:var(--nd-or);color:#fff}.th-novyi-den .btn.fill:hover{background:#fff;border-color:#fff;color:var(--nd-bl)}
.th-novyi-den .cs2-band{background:var(--nd-bl);padding-top:0}
.th-novyi-den .cs2-nums{gap:14px}
.th-novyi-den .cs2-num{border:0;padding:26px 24px;background:var(--nd-or);color:#fff}
.th-novyi-den .cs2-num:nth-child(2){background:var(--nd-gr)}.th-novyi-den .cs2-num:nth-child(3){background:var(--nd-br)}
.th-novyi-den .cs2-num b{font:800 clamp(2.4rem,4.4vw,4.4rem)/1 var(--nd-h);color:#fff}
.th-novyi-den .cs2-num span{color:rgba(255,255,255,.85);font-family:var(--nd-m)}
.th-novyi-den .cs2-story{border-bottom:0}
.th-novyi-den .cs2-chapters p,.th-novyi-den .cs2-chapters span,.th-novyi-den .cs2-chapters figcaption,.th-novyi-den .cs2-chapters code{font-family:var(--nd-m)}
.th-novyi-den .cs2-toc a{font-family:var(--nd-m);color:#6b6b6b}
.th-novyi-den .cs2-toc a.on{color:var(--nd-or);border-left-color:var(--nd-or)}
.th-novyi-den .cs2-k{font:800 clamp(1.9rem,3.4vw,3.2rem)/1 var(--nd-h);text-transform:uppercase;color:var(--nd-bl);letter-spacing:0}
.th-novyi-den .cs2-big{font:400 clamp(1.15rem,1.7vw,1.5rem)/1.45 var(--nd-m);max-width:46ch}
.th-novyi-den .cs2-big.accent{background:var(--nd-or);color:#fff;padding:clamp(22px,3vw,40px);max-width:none}
.th-novyi-den #cs-ins{background:var(--nd-or);color:#fff;padding:clamp(24px,3.4vw,48px)}
.th-novyi-den #cs-ins .cs2-k{color:#fff}
.th-novyi-den #cs-ins .cs2-big{color:#fff}
.th-novyi-den .cs2-personas span{color:rgba(255,255,255,.9)}
.th-novyi-den .cs2-sol li{border:0;border-radius:0;background:var(--nd-or);color:#fff}
.th-novyi-den .cs2-sol li:nth-child(4n+2){background:var(--nd-gr)}.th-novyi-den .cs2-sol li:nth-child(4n+3){background:var(--nd-bl)}.th-novyi-den .cs2-sol li:nth-child(4n+4){background:var(--nd-br)}
.th-novyi-den .cs2-sol .dot{display:none}
.th-novyi-den .cs2-sol .n{position:static;font:800 2.2rem/1 var(--nd-h);color:#fff;opacity:.9}
.th-novyi-den .cs2-gallery.real img{border-radius:0;border:0}
.th-novyi-den .cs2-res{border-top-color:var(--nd-bl)}
.th-novyi-den .cs2-res b{font:800 clamp(1.8rem,3vw,2.8rem)/1 var(--nd-h);color:var(--nd-or)}
.th-novyi-den .cs2-bar i{background:var(--nd-or)}
.th-novyi-den .cs2-team li{border-radius:0}
.th-novyi-den .cs2-team b{font-family:var(--nd-h)}
.th-novyi-den .todo{font-family:var(--f-sans)}
/* careers: vacancies */
.vac{list-style:none;padding:0;margin:0;border-top:1.5px solid var(--ink)}
.vac li{display:grid;grid-template-columns:minmax(200px,1fr) minmax(0,1.6fr);gap:12px 40px;padding:28px 0;border-bottom:1px solid var(--line)}
.vac h3{font:400 clamp(1.4rem,2.2vw,2rem)/1.1 var(--f-serif);text-transform:uppercase;color:var(--green)}
.vac p{color:var(--muted)}
.vac-cta{margin-top:28px;font-size:clamp(1.05rem,1.4vw,1.25rem)}
.vac-cta a{color:var(--green)}
@media (max-width:720px){.vac li{grid-template-columns:1fr}}
/* draft wording marker (preview of unconfirmed texts) */
.draft{display:inline-block;vertical-align:middle;margin-left:10px;padding:2px 9px;border:1px dashed var(--todo);border-radius:999px;font:500 .72rem/1.4 var(--f-sans);letter-spacing:.02em;text-transform:lowercase;color:var(--todo)}
.th-bailanys .draft{color:var(--bl-y);border-color:var(--bl-y)}
/* procurement: legal entities */
.co-tiles{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.co-tiles li{display:grid;gap:10px;align-content:start;padding:26px 24px 28px;border-radius:28px;background:var(--white);border:1px solid var(--line)}
.co-tiles i{width:56px;height:18px;border-radius:50%;background:var(--c);margin-bottom:10px}
.co-tiles b{font:400 clamp(1.5rem,2.2vw,2.1rem)/1 var(--f-serif);text-transform:uppercase;color:var(--ink)}
.co-tiles span{color:var(--muted);font-size:.95rem}
.co-tiles li.new{background:transparent;border:1.5px dashed var(--green)}
.co-tiles li.new i{background:transparent;border:1.5px dashed var(--green)}
.co-tiles li.new b{color:var(--green)}
@media (max-width:980px){.co-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:520px){.co-tiles{grid-template-columns:1fr}}

/* case v2: brand logo, co-brand lockup, hero shape */
.cs2-brand .brand-svg{display:block;width:min(460px,90%);height:auto}
.cobrand{display:flex;align-items:center;gap:14px;margin-bottom:4px}
.cobrand .tk-svg{height:34px;width:auto}
.cobrand .cb-svg{height:22px;width:auto}
.cobrand span{font-size:1.1rem;color:var(--muted)}
.hero-shape{position:absolute;pointer-events:none;z-index:0}
.cs2-hero>.wrap{position:relative;z-index:1}

/* ===== theme: Tarlan (client brand: purple, orange, geometric sans) ===== */
.th-tarlan{--tl-p:#A46EF1;--tl-o:#FF5A1F;--tl-b:#2F6BFF;--tl-g:#6DBE45;--tl-ink:#1D1D1D;--tl-bg:#F7F7F7;
  --tl-f:"Manrope","Open Sans",Arial,sans-serif;background:var(--tl-bg);color:var(--tl-ink)}
.th-tarlan .cs2-hero{background:#fff;border-bottom:0;overflow:hidden}
.th-tarlan .hero-shape{width:min(1100px,90vw);right:-12%;top:-4%;opacity:1}
.th-tarlan .cs2-hero-txt{background:rgba(255,255,255,.92);border-radius:28px;padding:clamp(18px,2.4vw,32px);margin:-12px}
.th-tarlan .cs2-chips li{border-color:var(--tl-ink);font-family:var(--tl-f);font-weight:500}
.th-tarlan .cs2-h1{font:800 clamp(1.5rem,2.4vw,2.3rem)/1.12 var(--tl-f);text-transform:none;letter-spacing:-.01em;max-width:24ch}
.th-tarlan .cs2-hero .lead{font-family:var(--tl-f);color:#4A4A4A}
.th-tarlan .btn{border-color:var(--tl-ink);color:var(--tl-ink)}.th-tarlan .btn:hover{background:var(--tl-ink);color:#fff}
.th-tarlan .btn.fill{background:var(--tl-p);border-color:var(--tl-p);color:#fff}.th-tarlan .btn.fill:hover{background:var(--tl-ink);border-color:var(--tl-ink)}
.th-tarlan .th-heroimg>img{width:112%;margin-left:-4%;border-radius:28px;filter:drop-shadow(0 30px 50px rgba(80,40,140,.25))}
.th-tarlan .cs2-band{background:#fff;padding-top:0}
.th-tarlan .cs2-nums{gap:14px}
.th-tarlan .cs2-num{border:0;border-radius:28px;padding:28px 26px;background:var(--tl-p);color:#fff}
.th-tarlan .cs2-num:nth-child(2){background:var(--tl-o)}.th-tarlan .cs2-num:nth-child(3){background:var(--tl-b)}
.th-tarlan .cs2-num b{font:800 clamp(2.6rem,4.6vw,4.6rem)/1 var(--tl-f);color:#fff}
.th-tarlan .cs2-num span{color:rgba(255,255,255,.9);font-family:var(--tl-f)}
.th-tarlan .cs2-story{border-bottom:0}
.th-tarlan .cs2-chapters{font-family:var(--tl-f)}
.th-tarlan .cs2-toc a{font-family:var(--tl-f)}
.th-tarlan .cs2-toc a.on{color:var(--tl-p);border-left-color:var(--tl-p)}
.th-tarlan .cs2-k{font:800 clamp(1.9rem,3.4vw,3.2rem)/1 var(--tl-f);text-transform:none;letter-spacing:-.02em;color:var(--tl-ink)}
.th-tarlan .cs2-k::after{content:".";color:var(--tl-p)}
.th-tarlan .cs2-big{font:500 clamp(1.25rem,2vw,1.8rem)/1.35 var(--tl-f)}
.th-tarlan .cs2-big.accent{background:var(--tl-p);color:#fff;border-radius:28px;padding:clamp(22px,3vw,40px);max-width:none}
.th-tarlan .cs2-sol li{border:0;border-radius:28px;background:#fff}
.th-tarlan .cs2-sol li:nth-child(4n+1){--c:var(--tl-p)}.th-tarlan .cs2-sol li:nth-child(4n+2){--c:var(--tl-o)}.th-tarlan .cs2-sol li:nth-child(4n+3){--c:var(--tl-b)}.th-tarlan .cs2-sol li:nth-child(4n+4){--c:var(--tl-g)}
.th-tarlan .cs2-sol .dot{width:22px;height:22px}
.th-tarlan .cs2-sol .n{font:800 2rem/1 var(--tl-f)}
.th-tarlan .cs2-gallery.real{grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr))}
.th-tarlan .cs2-gallery.real img{border:0;border-radius:24px}
.th-tarlan .cs2-res{border-top-color:var(--tl-ink)}
.th-tarlan .cs2-res b{font:800 clamp(1.4rem,2.4vw,2.2rem)/1.1 var(--tl-f);color:var(--tl-p);text-align:right}
.th-tarlan .cs2-worked li::before{font:800 2rem/1 var(--tl-f);color:var(--tl-p)}
.th-tarlan .cs2-team li{border-radius:20px;background:#fff;border-color:transparent}
@media (max-width:980px){.th-tarlan .hero-shape{width:140vw;right:-50%;top:30%;opacity:.5}}
.cs2-res li.long{grid-template-columns:1fr}
.cs2-res li.long b{font-size:clamp(1.1rem,1.6vw,1.4rem)!important;line-height:1.35!important;text-align:left!important}
.th-tarlan .cs2-k:has(.draft)::after{content:none}
.th-tarlan .cs2-sol li:nth-child(4n+1) .dot{background:var(--tl-p)}.th-tarlan .cs2-sol li:nth-child(4n+1) .n{color:var(--tl-p)}
.th-tarlan .cs2-sol li:nth-child(4n+2) .dot{background:var(--tl-o)}.th-tarlan .cs2-sol li:nth-child(4n+2) .n{color:var(--tl-o)}
.th-tarlan .cs2-sol li:nth-child(4n+3) .dot{background:var(--tl-b)}.th-tarlan .cs2-sol li:nth-child(4n+3) .n{color:var(--tl-b)}
.th-tarlan .cs2-sol li:nth-child(4n+4) .dot{background:var(--tl-g)}.th-tarlan .cs2-sol li:nth-child(4n+4) .n{color:var(--tl-g)}
@media (min-width:821px) and (max-height:800px){.home.pin-on .h-tasks .row{padding:5px 0}.home.pin-on .h-tasks .h-left{gap:10px}}
/* 16 services: two-column dropdown and footer list */
@media (min-width:1181px){.sub{grid-template-columns:repeat(2,max-content);grid-template-rows:repeat(8,auto);grid-auto-flow:column;column-gap:36px;min-width:0}.sub a{white-space:nowrap}.sub a:nth-child(8){border-bottom:0}}
.site-foot .foot-svc ul{display:block;columns:2;column-gap:24px}.site-foot .foot-svc li{margin-bottom:8px}
.site-foot .foot-svc li{break-inside:avoid}
@media (min-width:901px){.foot-grid{grid-template-columns:1fr 1.8fr 1fr 1fr}}
/* geography: map only, full width */
.geo.geo-wide{grid-template-columns:1fr}
.geo-wide .geo-pin text{opacity:.85;font-size:17px}
.geo-wide .geo-pin.hot text{opacity:1;font-weight:700}
.geo-wide .geo-pin.home text{font-size:19px}
@media (max-width:900px){.geo-wide .geo-pin text{font-size:24px}}
@media (max-width:600px){.geo-wide .geo-pin text{font-size:32px;stroke-width:7px}.geo-wide .geo-pin.home text{font-size:34px}.geo-wide .geo-pin circle{r:9}}
.geo-split{display:grid;grid-template-columns:minmax(240px,.8fr) minmax(0,2fr);gap:clamp(24px,4vw,64px);align-items:start}
.geo-txt{display:grid;gap:18px;position:sticky;top:120px}
@media (max-width:900px){.geo-split{grid-template-columns:1fr}.geo-txt{position:static}}
/* service price block */
.price-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.4fr);gap:clamp(24px,4vw,64px);align-items:start}
.price-card{display:grid;gap:12px;padding:clamp(24px,3vw,40px);border-radius:28px;background:var(--white);border:1px solid var(--line)}
.price-big{font:400 clamp(2.2rem,4.4vw,4rem)/1 var(--f-serif);color:var(--green)}
.price-note{color:var(--muted);margin-top:-4px}
.price-card p{max-width:60ch}
.price-term{padding-top:12px;border-top:1px solid var(--line)}
.price-card .btn{justify-self:start;margin-top:8px}
@media (max-width:820px){.price-wrap{grid-template-columns:1fr}}
/* tasks: situation + service tags */
.row .tags{display:flex;flex-wrap:wrap;gap:6px 8px}
.row .tags a{font-size:.82rem;padding:5px 12px;border-radius:999px;border:1px solid rgba(249,246,244,.28);color:var(--paper);text-decoration:none;white-space:nowrap;transition:background .2s,color .2s,border-color .2s}
.row .tags a:hover{background:var(--green);border-color:var(--green)}
.h-tasks .row{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr)}

/* ===== «С чем к нам приходят»: one situation per screen (variant A) ===== */
.home .tk-rows{background:none;border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;padding:0}
.home .tk-rows>li{border:0}
.home .tk-rows .row{display:grid;grid-template-columns:1fr;gap:18px;padding:22px 0;transform:none}
.home .tk-rows .row .t{font:400 clamp(1.6rem,4vw,3rem)/1.02 var(--f-serif);text-transform:uppercase;color:var(--paper);letter-spacing:.005em;text-wrap:balance}
.home .tk-rows .row .tags{gap:4px 0;font-size:clamp(.95rem,1.15vw,1.1rem)}
.home .tk-rows .row .tags a{border:0;border-radius:0;padding:0;background:none;color:var(--sand);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;font-size:inherit}
.home .tk-rows .row .tags a:hover{color:var(--paper);background:none}
.home .tk-rows .row .tags a:not(:last-child)::after{content:"/";display:inline-block;margin:0 12px;color:rgba(249,246,244,.45);text-decoration:none}
.tk-foot{display:flex;align-items:center;gap:28px;flex-wrap:wrap}
.tk-count{font:400 1rem var(--f-sans);color:rgba(249,246,244,.6)}
.tk-count b{font:400 1.8rem var(--f-serif);color:var(--green)}
.home:not(.pin-on) .tk-count{display:none}
/* pinned desktop: situations replace each other in place */
.home.pin-on .h-tasks .h-left{max-width:none;gap:clamp(18px,3vh,32px)}
.home.pin-on .h-tasks .h-left>*{max-width:min(1100px,78%)}
.home.pin-on .h-tasks h2{font-size:clamp(1.1rem,1.4vw,1.35rem);font-family:var(--f-sans);text-transform:lowercase;letter-spacing:0;color:var(--sand)}
.home.pin-on .h-tasks .h-head .lead{display:none}
.home.pin-on .tk-rows{position:relative;height:clamp(260px,46vh,440px)}
.home.pin-on .tk-rows>li{position:absolute;inset:0;display:grid;align-content:center}
.home.pin-on .tk-rows .row{padding:0;opacity:0;transform:translateY(34px);transition:opacity .55s ease,transform .7s cubic-bezier(.2,.8,.2,1);pointer-events:none}
.home.pin-on .tk-rows .row.on{opacity:1;transform:none;pointer-events:auto}
.home.pin-on .tk-rows .row.off{opacity:0}
.home.pin-on .tk-rows .row .t{font-size:clamp(2.6rem,6.2vw,6.4rem);line-height:.98;color:var(--paper);text-shadow:0 2px 30px rgba(0,0,0,.55)}
.home.pin-on .tk-rows .row.on .t{color:var(--paper)}
.home.pin-on .tk-rows .row .tags{font-size:clamp(1rem,1.3vw,1.25rem);text-shadow:0 1px 12px rgba(0,0,0,.7)}
.home.pin-on .tk-rows .row .tags a{opacity:0;transform:translateY(10px);transition:opacity .4s ease,transform .5s ease}
.home.pin-on .tk-rows .row.on .tags a{opacity:1;transform:none}
.home.pin-on .tk-rows .row.on .tags a:nth-child(2){transition-delay:.08s}.home.pin-on .tk-rows .row.on .tags a:nth-child(3){transition-delay:.16s}.home.pin-on .tk-rows .row.on .tags a:nth-child(4){transition-delay:.24s}
@media (max-height:800px){.home.pin-on .tk-rows .row .t{font-size:clamp(2.2rem,5vw,4.6rem)}.home.pin-on .tk-rows{height:clamp(220px,42vh,360px)}}
/* mobile: plain list of big quotes */
.home:not(.pin-on) .tk-rows>li+li{border-top:1px solid rgba(249,246,244,.14)}
@media (prefers-reduced-motion:reduce){.home.pin-on .tk-rows .row,.home.pin-on .tk-rows .row .tags a{transition:none}}

/* ===== «Что получилось у клиентов»: paper cards (variant В) ===== */
.home .h-track{filter:drop-shadow(0 18px 26px rgba(0,0,0,.45));align-items:center;gap:clamp(18px,2vw,30px)}
.home .hcard{--rot:-1.6deg;position:relative;background:var(--paper);color:var(--ink);border:0;border-radius:0;backdrop-filter:none;-webkit-backdrop-filter:none;
  padding:clamp(26px,2.4vw,38px) clamp(24px,2.2vw,34px) clamp(30px,2.6vw,40px);transform:rotate(var(--rot));transition:transform .5s cubic-bezier(.2,.8,.2,1);
  clip-path:polygon(0% 1.2%,8% 0%,17% .9%,26% .2%,35% 1.1%,44% 0%,53% .8%,62% .1%,71% 1%,80% .3%,89% 1.2%,100% .2%,99.4% 18%,100% 37%,99.3% 55%,100% 74%,99.5% 100%,90% 98.9%,80% 99.8%,70% 98.8%,60% 99.9%,50% 99%,40% 99.8%,30% 98.9%,20% 99.9%,10% 99%,0% 99.8%,.6% 80%,0% 61%,.7% 42%,0% 22%)}
.home .hcard:nth-child(3n+2){--rot:1.2deg;clip-path:polygon(0% .4%,10% 1.2%,20% .1%,30% 1%,40% .3%,50% 1.2%,60% 0%,70% .9%,80% .2%,90% 1.1%,100% 0%,99.3% 21%,100% 40%,99.4% 61%,100% 82%,99.6% 99.6%,89% 98.8%,78% 99.9%,67% 98.9%,56% 99.8%,45% 98.8%,34% 99.9%,23% 99%,12% 99.8%,0% 99%,.5% 77%,0% 58%,.7% 39%,0% 19%)}
.home .hcard:nth-child(3n){--rot:-.6deg}
.home .hcard:hover{transform:rotate(0) translateY(-8px)}
.home .hcard::before{display:none}
.home .hcard .tags{color:#7A7270;font-size:.78rem;text-transform:lowercase;letter-spacing:.01em}
.home .hcard .fig{font:400 clamp(3.2rem,5.2vw,5.4rem)/.95 var(--f-serif);color:var(--green)}
.home .hcard .cap{color:#6B6462;font-size:.92rem}
.home .hcard .ttl{font:400 clamp(1.05rem,1.3vw,1.25rem)/1.3 var(--f-sans);color:var(--ink)}
.home .hcard .more{color:var(--green);text-decoration:underline;text-underline-offset:4px;font-size:.92rem}
.home .hcard-all{background:var(--green);color:var(--paper);--rot:2deg}
.home .hcard-all .h-kicker{color:rgba(249,246,244,.8);text-transform:lowercase}
.home .hcard-all .ttl{color:var(--paper);font:400 clamp(1.6rem,2.6vw,2.4rem)/1.02 var(--f-serif);text-transform:uppercase}
.home .hcard-all .go{background:var(--paper);color:var(--green);border:0}
.home .hcard-all:hover{background:var(--deep)}
@media (max-width:900px){.home .hcard{--rot:0deg!important}.home .h-track{filter:drop-shadow(0 10px 16px rgba(0,0,0,.4))}}
@media (prefers-reduced-motion:reduce){.home .hcard{transition:none}}
@media (max-width:900px){.home .hcard{width:100%;max-width:none}}
@media (max-width:900px){.home .h-cases .h-pin-in{grid-template-columns:minmax(0,1fr)}.home .h-track{min-width:0;max-width:100%}.home .hcard{min-width:0}.home .hcard .tags,.home .hcard .ttl{overflow-wrap:anywhere}}

/* ===== «Смотрим глазами аудитории»: lines of sight ===== */
.h-gaze{position:relative}
.gaze-svg{position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:2;opacity:0;transition:opacity .4s;overflow:visible}
.gaze-svg line{stroke:var(--sand);stroke-width:1.6;stroke-dasharray:4 6;opacity:0;transition:opacity .3s}
.gaze-svg circle{fill:var(--sand);opacity:0;transition:opacity .3s}
.gz-list{list-style:none;padding:0;margin:0 0 0 auto;display:grid;gap:clamp(22px,4vh,44px)}
.gz-item{position:relative;display:grid;gap:8px;padding-left:4px;opacity:.12;transform:translateX(18px);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.gz-item.seen{opacity:1;transform:none}
.gz-item:nth-child(2){margin-left:clamp(0px,4vw,60px)}.gz-item:nth-child(3){margin-left:clamp(0px,8vw,120px)}
.gz-n{font:400 .95rem var(--f-serif);color:var(--sand);letter-spacing:.08em}
.gz-item h3{font:italic 400 clamp(1.6rem,2.6vw,2.5rem)/1.08 var(--f-serif);color:var(--paper);text-shadow:0 2px 24px rgba(0,0,0,.6)}
.gz-item p{color:rgba(249,246,244,.78);max-width:46ch;text-shadow:0 1px 14px rgba(0,0,0,.7)}
.h-gaze .h-head .lead{color:rgba(249,246,244,.8)}
@media (max-width:900px){.gz-item{opacity:1;transform:none;margin-left:0!important;padding-left:16px;border-left:1.5px solid var(--sand)}}
@media (prefers-reduced-motion:reduce){.gz-item{opacity:1;transform:none;transition:none}}
@media (max-width:900px){.gz-list{margin-left:0}}
/* client review */
.cs-quote{margin:0;display:grid;gap:14px;padding-left:22px;border-left:2px solid var(--green)}
.cs-quote blockquote{margin:0;font:italic 400 clamp(1.2rem,1.8vw,1.55rem)/1.4 var(--f-serif)}
.cs-quote figcaption,.cs2-quote figcaption{font-size:.95rem;color:var(--muted)}
.cs2-quote{margin:0;justify-items:start;text-align:left;border-radius:28px}
.cs2-quote blockquote{margin:0;font:italic 400 clamp(1.25rem,2vw,1.75rem)/1.4 var(--f-serif);max-width:60ch}
.cs2-quote .q{height:.4em}
.th-tarlan .cs2-quote{background:#fff;padding:clamp(28px,3.4vw,48px)}
.th-tarlan .cs2-quote blockquote{font:500 clamp(1.15rem,1.7vw,1.5rem)/1.45 var(--tl-f);font-style:normal}
.th-tarlan .cs2-quote .q{color:var(--tl-p);font-family:var(--tl-f);font-weight:800}

/* ===== home: client reviews as paper letters ===== */
.h-reviews{display:grid;align-content:center;padding-block:clamp(60px,10vh,120px)}
.h-reviews .h-head{margin-bottom:clamp(28px,5vh,56px)}
.reviews{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,4vw,64px);align-items:start;filter:drop-shadow(0 22px 30px rgba(0,0,0,.5))}
.review{margin:0;display:grid;gap:22px;background:var(--paper);color:var(--ink);padding:clamp(28px,3.2vw,48px);transform:rotate(-1.6deg);transition:transform .6s cubic-bezier(.2,.8,.2,1);
  clip-path:polygon(0% 1%,9% 0%,18% .8%,27% .1%,36% 1%,45% 0%,54% .9%,63% .2%,72% 1%,81% .1%,90% .9%,100% 0%,99.4% 25%,100% 50%,99.5% 75%,100% 99.4%,90% 98.8%,80% 99.8%,70% 98.9%,60% 99.9%,50% 99%,40% 99.8%,30% 98.9%,20% 99.8%,10% 99%,0% 99.7%,.6% 75%,0% 50%,.6% 25%)}
.review.r1{transform:rotate(1.3deg);margin-top:clamp(40px,8vh,90px)}
.review:hover{transform:rotate(0) translateY(-6px)}
.rv-top{display:flex;justify-content:space-between;align-items:flex-start}
.rv-logo{height:30px;width:auto}
.rv-word{font:600 1.1rem var(--f-sans);letter-spacing:.02em}
.rv-q{font:400 5rem/.6 var(--f-serif);color:var(--green);height:.5em}
.review blockquote{margin:0;font:italic 400 clamp(1.15rem,1.6vw,1.45rem)/1.45 var(--f-serif)}
.review figcaption{display:grid;gap:2px;padding-top:16px;border-top:1px solid var(--line);font-size:.9rem;color:#6B6462}
.review figcaption b{color:var(--ink);font-size:1rem}
.review figcaption a{justify-self:start;margin-top:8px;color:var(--green);text-underline-offset:4px}
@media (max-width:900px){.reviews{grid-template-columns:1fr}.review,.review.r1{transform:none;margin-top:0}}
@media (prefers-reduced-motion:reduce){.review{transition:none}}

/* ===== mouth speaks the reviews ===== */
.fx-mouth{position:absolute;pointer-events:none}
.fx-mouth svg{display:block;width:100%;height:100%;overflow:visible}
.fx-mouth polygon{fill:#F4EEDC;transition:all .06s linear}
.h-mouth .reviews{grid-template-columns:1fr;gap:clamp(18px,3vh,30px);filter:drop-shadow(0 18px 26px rgba(0,0,0,.5))}
.h-mouth .review{padding:clamp(22px,2.4vw,34px);gap:14px}
.h-mouth .review.r1{margin-top:0;margin-left:clamp(0px,4vw,60px)}
.h-mouth .review blockquote{font-size:clamp(1.05rem,1.35vw,1.3rem)}
.h-mouth .rv-q{font-size:4rem}
.h-mouth .review .ghost{color:transparent}
.h-mouth .review.speaking .typed::after{content:"";display:inline-block;width:.08em;height:1em;background:var(--green);margin-left:2px;vertical-align:-.12em;animation:caret .7s steps(1) infinite}
@keyframes caret{50%{opacity:0}}
.js-home .h-mouth .review{opacity:0;transform:translateY(24px) rotate(-1.6deg);transition:opacity .6s ease,transform .7s cubic-bezier(.2,.8,.2,1)}
.js-home .h-mouth .review.r1{transform:translateY(24px) rotate(1.3deg)}
.js-home .h-mouth .review.shown{opacity:1;transform:rotate(-1.6deg)}
.js-home .h-mouth .review.r1.shown{transform:rotate(1.3deg)}
.h-mouth .review figcaption{opacity:.25;transition:opacity .5s}
.h-mouth .review.said figcaption{opacity:1}
@media (max-width:900px){.js-home .h-mouth .review,.js-home .h-mouth .review.shown{transform:none;opacity:1}.h-mouth .review figcaption{opacity:1}}
@media (prefers-reduced-motion:reduce){.js-home .h-mouth .review{opacity:1;transform:none}.h-mouth .review figcaption{opacity:1}}

/* ===== lead form as a letter ===== */
.form.letter{display:block;grid-template-columns:none}
.letter .sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.letter-text{font:400 clamp(1.5rem,2.8vw,2.6rem)/1.5 var(--f-serif);max-width:28em;text-wrap:pretty}
.letter-text.small{font-size:clamp(1.15rem,1.6vw,1.45rem)}
.letter .gap{display:inline-block;position:relative;max-width:100%}
.letter .gap input{font:italic 400 1em/1.2 var(--f-serif);color:inherit;background:transparent;border:0;border-bottom:1.5px dashed var(--sand);padding:0 .15em;margin:0 .05em;min-width:4ch;max-width:100%;box-sizing:border-box;outline:none;transition:border-color .2s,width .15s}
.letter .gap input::placeholder{color:var(--sand);opacity:.65;font-style:italic}
.letter .gap input:focus{border-bottom-style:solid;border-bottom-color:var(--paper)}
.letter .gap.miss input{border-bottom-color:#E07A5F}
.letter .gap.miss input::placeholder{color:#E07A5F;opacity:1}
.letter-more{margin-top:clamp(18px,3vh,32px)}
.letter-more summary{cursor:pointer;list-style:none;display:inline-flex;gap:8px;align-items:center;color:var(--sand);text-decoration:underline;text-underline-offset:4px;font-size:1rem}
.letter-more summary::-webkit-details-marker{display:none}
.letter-more summary::before{content:"+";font:400 1.3rem/1 var(--f-serif);text-decoration:none}
.letter-more[open] summary::before{content:"−"}
.more-grid{display:grid;gap:22px;margin-top:22px}
.letter fieldset{border:0;padding:0;margin:0;display:grid;gap:10px}
.letter legend{font:italic 400 clamp(1.15rem,1.6vw,1.45rem) var(--f-serif);margin-bottom:10px;padding:0}
.chips{display:flex;flex-wrap:wrap;gap:8px}
.chip{position:relative;cursor:pointer}
.chip input{position:absolute;opacity:0;inset:0;cursor:pointer}
.chip span{display:inline-block;padding:7px 16px;border:1px solid currentColor;border-radius:999px;font-size:.92rem;opacity:.75;transition:background .2s,color .2s,opacity .2s}
.chip input:checked+span{background:var(--sand);border-color:var(--sand);color:var(--ink);opacity:1}
.chip input:focus-visible+span{outline:2px solid var(--sand);outline-offset:2px}
.letter .form-foot{display:flex;flex-wrap:wrap;align-items:center;gap:20px;margin-top:clamp(24px,4vh,40px)}
.green .letter .gap input::placeholder,.green .letter-more summary{color:#F3DCC6}
.green .letter .gap input{border-bottom-color:#F3DCC6}
.green .chip input:checked+span{background:var(--paper);border-color:var(--paper);color:var(--deep)}
@media (max-width:640px){.letter-text{font-size:1.4rem}}
/* letter form: colours by context (light page default, dark home, green CTA) */
.letter .gap input{border-bottom-color:var(--green);max-width:calc(100vw - 2*var(--gutter) - 8px)}
.letter .gap input::placeholder{color:var(--green);opacity:.7}
.letter .gap input:focus{border-bottom-color:var(--ink)}
.letter-more summary{color:var(--green)}
.chip input:checked+span{background:var(--green);border-color:var(--green);color:var(--paper)}
.home .letter .gap input{border-bottom-color:var(--sand)}
.home .letter .gap input::placeholder,.home .letter-more summary{color:var(--sand)}
.home .letter .gap input:focus{border-bottom-color:var(--paper)}
.home .chip input:checked+span{background:var(--sand);border-color:var(--sand);color:var(--ink)}
.green .letter .gap input:focus{border-bottom-color:var(--paper)}
.green .letter .gap input{border-bottom-color:#F3DCC6}
.green .letter .gap input::placeholder,.green .letter-more summary{color:#F3DCC6;opacity:.85}
.green .chip input:checked+span{background:var(--paper);border-color:var(--paper);color:var(--deep)}
.letter .letter-text+.letter-text{margin-top:.2em}
.letter-src{margin-top:clamp(18px,3vh,28px)!important}

/* ===== theme: Ramadan newsletter (navy, blue, gold, orange, red, green) ===== */
.th-ramadan{--rm-navy:#201561;--rm-blue:#4F83FF;--rm-gold:#F2C53D;--rm-or:#F57C1F;--rm-red:#E8442A;--rm-gr:#3E7A3A;--rm-f:"Inter","Helvetica Neue",Arial,sans-serif;--rm-s:"Caveat","Segoe Script",cursive;
  background:var(--rm-navy);color:#fff}
.th-ramadan .cs2-hero{border-bottom:0}
.th-ramadan .crumbs,.th-ramadan .crumbs a{color:rgba(255,255,255,.7)}
.th-ramadan .cs2-chips li{border-color:var(--rm-gold);color:var(--rm-gold);font-family:var(--rm-f)}
.th-ramadan .cs2-brand{font:900 clamp(3.6rem,8vw,7.6rem)/.9 var(--rm-f);text-transform:uppercase;color:var(--rm-gold);letter-spacing:-.02em}
.th-ramadan .cs2-h1{font:800 clamp(1.4rem,2.2vw,2.1rem)/1.12 var(--rm-f);text-transform:uppercase;color:#fff;max-width:26ch}
.th-ramadan .cs2-hero .lead{color:rgba(255,255,255,.85);font-family:var(--rm-f)}
.th-ramadan .btn{color:#fff;border-color:#fff}.th-ramadan .btn:hover{background:#fff;color:var(--rm-navy)}
.th-ramadan .btn.fill{background:var(--rm-gold);border-color:var(--rm-gold);color:var(--rm-navy)}.th-ramadan .btn.fill:hover{background:#fff;border-color:#fff}
.th-ramadan .th-heroimg>img{width:118%;margin-left:-4%;border-radius:24px;filter:drop-shadow(0 30px 50px rgba(0,0,0,.45))}
.th-ramadan .cs2-band{background:transparent;padding-top:0}
.th-ramadan .cs2-nums{gap:14px}
.th-ramadan .cs2-num{border:0;border-radius:120px 120px 18px 18px;padding:40px 26px 28px;background:var(--rm-or);justify-items:center;text-align:center}
.th-ramadan .cs2-num:nth-child(2){background:var(--rm-gr)}.th-ramadan .cs2-num:nth-child(3){background:var(--rm-red)}
.th-ramadan .cs2-num b{font:900 clamp(2.4rem,4.6vw,4.6rem)/1 var(--rm-f);color:#fff}
.th-ramadan .cs2-num span{color:rgba(255,255,255,.92);font:500 1.35rem/1.15 var(--rm-s)}
.th-ramadan .cs2-story{border-bottom:0}
.th-ramadan .cs2-chapters{font-family:var(--rm-f)}
.th-ramadan .cs2-toc ol{border-left-color:rgba(255,255,255,.2)}
.th-ramadan .cs2-toc a{color:rgba(255,255,255,.6);font-family:var(--rm-f)}
.th-ramadan .cs2-toc a.on{color:var(--rm-gold);border-left-color:var(--rm-gold)}
.th-ramadan .cs2-k{font:900 clamp(1.9rem,3.4vw,3.2rem)/1 var(--rm-f);text-transform:uppercase;color:#fff;letter-spacing:-.01em}
.th-ramadan .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--rm-f);color:rgba(255,255,255,.92)}
.th-ramadan .cs2-big.accent{background:var(--rm-blue);color:#fff;border-radius:160px 160px 20px 20px;padding:clamp(48px,6vw,80px) clamp(24px,4vw,56px) clamp(28px,3vw,44px);max-width:none}
.th-ramadan .cs2-sol li{border:0;border-radius:120px 120px 16px 16px;background:var(--rm-or);color:#fff;padding-top:48px}
.th-ramadan .cs2-sol li:nth-child(4n+2){background:var(--rm-gr)}.th-ramadan .cs2-sol li:nth-child(4n+3){background:var(--rm-red)}.th-ramadan .cs2-sol li:nth-child(4n+4){background:var(--rm-blue)}
.th-ramadan .cs2-sol .dot{display:none}
.th-ramadan .cs2-sol .n{position:static;font:900 2rem/1 var(--rm-f);color:var(--rm-gold)}
.th-ramadan .cs2-gallery.real{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
.th-ramadan .cs2-gallery.real img{border:0;border-radius:6px}
.th-ramadan .cs2-gallery.real figcaption{color:rgba(255,255,255,.75);font:500 1.15rem/1.15 var(--rm-s)}
.th-ramadan .cs2-res{border-top-color:var(--rm-gold)}
.th-ramadan .cs2-res li{border-bottom-color:rgba(255,255,255,.15)}
.th-ramadan .cs2-res .k{color:rgba(255,255,255,.8)}
.th-ramadan .cs2-res b{font:900 clamp(1.4rem,2.4vw,2.2rem)/1.1 var(--rm-f);color:var(--rm-gold)}
.th-ramadan .cs2-worked{border-top-color:var(--rm-gold)}
.th-ramadan .cs2-worked li{border-bottom-color:rgba(255,255,255,.15);color:rgba(255,255,255,.92)}
.th-ramadan .cs2-worked li::before{font:900 2rem/1 var(--rm-f);color:var(--rm-gold)}
.th-ramadan .cs2-team li{border-color:rgba(255,255,255,.2)}
.th-ramadan .cs2-team span,.th-ramadan .cs2-gaps p{color:rgba(255,255,255,.65)}
.th-ramadan .todo,.th-ramadan .draft{color:var(--rm-gold);border-color:var(--rm-gold)}
@media (max-width:820px){.th-ramadan .cs2-gallery.real{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media (max-width:520px){.th-ramadan .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* ===== theme: GI conference newsletter (red, orange, blue, green; heavy sans + script) ===== */
.th-giconf{--gc-red:#D7261E;--gc-or:#F57C1F;--gc-bl:#2F6FD6;--gc-gr:#4CAF50;--gc-ink:#1C1B1A;--gc-bg:#FFF6EC;--gc-f:"Inter","Helvetica Neue",Arial,sans-serif;--gc-s:"Caveat","Segoe Script",cursive;
  background:var(--gc-bg);color:var(--gc-ink)}
.th-giconf .cs2-hero{background:var(--gc-red);color:#fff;border-bottom:0;overflow:hidden}
.th-giconf .crumbs,.th-giconf .crumbs a{color:rgba(255,255,255,.75)}
.th-giconf .cs2-chips li{border-color:#fff;color:#fff;font-family:var(--gc-f)}
.th-giconf .cs2-brand{font:900 clamp(3rem,6.6vw,6.4rem)/.92 var(--gc-f);text-transform:uppercase;color:#fff;letter-spacing:-.02em}
.th-giconf .cs2-h1{font:500 clamp(1.6rem,2.6vw,2.4rem)/1.1 var(--gc-s);text-transform:none;color:#FFE1B8;max-width:24ch}
.th-giconf .cs2-hero .lead{color:rgba(255,255,255,.9);font-family:var(--gc-f)}
.th-giconf .btn{color:#fff;border-color:#fff}.th-giconf .btn:hover{background:#fff;color:var(--gc-red)}
.th-giconf .btn.fill{background:#fff;border-color:#fff;color:var(--gc-red)}.th-giconf .btn.fill:hover{background:var(--gc-or);border-color:var(--gc-or);color:#fff}
.th-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;aspect-ratio:1;align-content:center}
.th-grid img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:18px;box-shadow:0 24px 40px -18px rgba(0,0,0,.5);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
.th-grid .g0{transform:rotate(-3deg)}.th-grid .g1{transform:rotate(2deg) translateY(18px)}.th-grid .g2{transform:rotate(2.5deg) translateY(-10px)}.th-grid .g3{transform:rotate(-2deg) translateY(8px)}
.th-grid img:hover{transform:none scale(1.03)}
.th-giconf .cs2-band{background:var(--gc-red);padding-top:0}
.th-giconf .cs2-story{border-bottom:0}
.th-giconf .cs2-chapters,.th-giconf .cs2-toc a{font-family:var(--gc-f)}
.th-giconf .cs2-toc a.on{color:var(--gc-red);border-left-color:var(--gc-red)}
.th-giconf .cs2-k{font:900 clamp(1.9rem,3.4vw,3.2rem)/1 var(--gc-f);text-transform:uppercase;color:var(--gc-ink);letter-spacing:-.01em}
.th-giconf .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--gc-f)}
.th-giconf .cs2-big.accent{background:linear-gradient(135deg,var(--gc-or),var(--gc-red));color:#fff;border-radius:28px;padding:clamp(24px,3vw,44px);max-width:none}
.th-giconf .cs2-sol li{border:0;border-radius:24px;color:#fff;background:linear-gradient(140deg,var(--gc-or),var(--gc-red))}
.th-giconf .cs2-sol li:nth-child(4n+2){background:linear-gradient(140deg,#5AA0F0,var(--gc-bl))}
.th-giconf .cs2-sol li:nth-child(4n+3){background:linear-gradient(140deg,#8BCB5A,#2E8B3E)}
.th-giconf .cs2-sol li:nth-child(4n+4){background:linear-gradient(140deg,#F7B733,var(--gc-or))}
.th-giconf .cs2-sol .dot{display:none}
.th-giconf .cs2-sol .n{position:static;font:900 2rem/1 var(--gc-f);color:#fff}
.th-giconf .cs2-gallery.real{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.th-giconf .cs2-gallery.real img{border:0;border-radius:14px}
.th-giconf .cs2-gallery.real figcaption{font:500 1.2rem/1.15 var(--gc-s);color:#5A514B}
.th-giconf .cs2-res{border-top-color:var(--gc-red)}
.th-giconf .cs2-worked{border-top-color:var(--gc-red)}
.th-giconf .cs2-worked li::before{font:900 2rem/1 var(--gc-f);color:var(--gc-red)}
.th-giconf .cs2-team li{border-radius:18px;background:#fff;border-color:transparent}
@media (max-width:820px){.th-giconf .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr))}}
.th-giconf .cs2-brand{font-size:clamp(2.2rem,4.6vw,4.6rem);overflow-wrap:anywhere;hyphens:auto}@media (max-width:520px){.th-giconf .cs2-brand{font-size:2.3rem}}

/* ===== theme: «Навигатор по боли» (violet, yellow, red, ink; wide heavy sans) ===== */
.th-pain{--pn-v:#6357FF;--pn-v2:#6038FF;--pn-y:#F9E400;--pn-o:#FFB200;--pn-r:#F52A3E;--pn-ink:#161616;--pn-bg:#F5F4F2;--pn-f:"Unbounded","Inter",Arial,sans-serif;--pn-t:"Inter","Helvetica Neue",Arial,sans-serif;
  background:var(--pn-bg);color:var(--pn-ink)}
.th-pain .cs2-hero{background:var(--pn-ink);color:#fff;border-bottom:0;overflow:hidden}
.th-pain .crumbs,.th-pain .crumbs a{color:rgba(255,255,255,.65)}
.th-pain .cs2-chips li{border-color:var(--pn-o);color:var(--pn-o);font-family:var(--pn-t)}
.th-pain .cs2-brand{font:900 clamp(2.4rem,5.2vw,5rem)/.95 var(--pn-f);text-transform:uppercase;color:#fff;letter-spacing:-.01em}
.th-pain .cs2-h1{font:700 clamp(1.05rem,1.5vw,1.4rem)/1.25 var(--pn-f);text-transform:none;color:var(--pn-o);max-width:30ch}
.th-pain .cs2-hero .lead{color:rgba(255,255,255,.85);font-family:var(--pn-t)}
.th-pain .btn{color:#fff;border-color:#fff}.th-pain .btn:hover{background:#fff;color:var(--pn-ink)}
.th-pain .btn.fill{background:var(--pn-v);border-color:var(--pn-v);color:#fff}.th-pain .btn.fill:hover{background:var(--pn-o);border-color:var(--pn-o);color:var(--pn-ink)}
.th-pain .th-heroimg>img{width:120%;margin-left:-6%;border-radius:0;filter:none}
.th-pain .cs2-band{background:var(--pn-ink)}
.th-pain .cs2-story{border-bottom:0}
.th-pain .cs2-chapters,.th-pain .cs2-toc a{font-family:var(--pn-t)}
.th-pain .cs2-toc a.on{color:var(--pn-v);border-left-color:var(--pn-v)}
.th-pain .cs2-k{font:900 clamp(1.6rem,2.8vw,2.6rem)/1 var(--pn-f);text-transform:uppercase;letter-spacing:0}
.th-pain .cs2-big{font:500 clamp(1.15rem,1.8vw,1.6rem)/1.45 var(--pn-t)}
.th-pain .cs2-big.accent{background:var(--pn-v);color:#fff;padding:clamp(24px,3vw,44px);max-width:none;border-radius:0;box-shadow:10px 10px 0 var(--pn-o)}
.th-pain .cs2-sol li{border:2px solid var(--pn-ink);border-radius:0;background:#fff;box-shadow:6px 6px 0 var(--pn-ink)}
.th-pain .cs2-sol li:nth-child(4n+1){--c:var(--pn-v)}.th-pain .cs2-sol li:nth-child(4n+2){--c:var(--pn-o)}.th-pain .cs2-sol li:nth-child(4n+3){--c:var(--pn-r)}.th-pain .cs2-sol li:nth-child(4n+4){--c:var(--pn-v2)}
.th-pain .cs2-sol .dot{width:30px;height:30px;border-radius:0;clip-path:polygon(50% 0,61% 35%,98% 35%,68% 57%,79% 91%,50% 70%,21% 91%,32% 57%,2% 35%,39% 35%)}
.th-pain .cs2-sol .n{font:900 1.8rem/1 var(--pn-f);color:var(--pn-ink)}
.th-pain .cs2-pal i{border:2px solid var(--pn-ink)}
.th-pain .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.th-pain .cs2-gallery.real img{border:2px solid var(--pn-ink);border-radius:0}
.th-pain .cs2-res{border-top-color:var(--pn-ink)}
.th-pain .cs2-res b{font:700 clamp(1.1rem,1.6vw,1.4rem)/1.3 var(--pn-f);color:var(--pn-v)}
.th-pain .cs2-worked li::before{font:900 1.8rem/1 var(--pn-f);color:var(--pn-v)}
.th-pain .cs2-team li{border-radius:0;border:2px solid var(--pn-ink);background:#fff}
@media (max-width:640px){.th-pain .cs2-gallery.real{grid-template-columns:1fr}}
.th-pain .th-heroimg>img{width:100%;margin-left:0}

/* ===== theme: Abai × Yandex Books (dark, paper-cut green / mustard / rust) ===== */
.th-abai{--ab-bg:#141414;--ab-gr:#2A7556;--ab-ms:#B08A12;--ab-rs:#A34E0E;--ab-paper:#F0EEE8;--ab-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--ab-bg);color:var(--ab-paper)}
.th-abai .cs2-hero{border-bottom:0}
.th-abai .crumbs,.th-abai .crumbs a{color:rgba(240,238,232,.6)}
.th-abai .cs2-chips li{border-color:var(--ab-ms);color:var(--ab-ms);font-family:var(--ab-f)}
.th-abai .cs2-brand{font:800 clamp(3.4rem,7.4vw,7rem)/.92 var(--ab-f);color:var(--ab-paper);letter-spacing:-.03em}
.th-abai .cs2-h1{font:700 clamp(1.2rem,1.9vw,1.75rem)/1.2 var(--ab-f);text-transform:none;color:var(--ab-ms);max-width:28ch}
.th-abai .cs2-hero .lead{color:rgba(240,238,232,.82);font-family:var(--ab-f)}
.th-abai .btn{color:var(--ab-paper);border-color:var(--ab-paper)}.th-abai .btn:hover{background:var(--ab-paper);color:var(--ab-bg)}
.th-abai .btn.fill{background:var(--ab-paper);border-color:var(--ab-paper);color:var(--ab-bg)}.th-abai .btn.fill:hover{background:var(--ab-ms);border-color:var(--ab-ms)}
.th-abai .th-heroimg>img{width:116%;margin-left:-4%;border-radius:20px;filter:drop-shadow(0 30px 50px rgba(0,0,0,.6))}
.th-abai .cs2-band{background:transparent;padding-top:0}
.th-abai .cs2-nums{gap:14px}
.th-abai .cs2-num{border:0;border-radius:4px 60px 4px 60px;padding:28px 26px;background:var(--ab-gr)}
.th-abai .cs2-num:nth-child(2){background:var(--ab-ms);border-radius:60px 4px 60px 4px}.th-abai .cs2-num:nth-child(3){background:var(--ab-rs)}
.th-abai .cs2-num b{font:800 clamp(2.6rem,4.8vw,4.8rem)/1 var(--ab-f);color:#fff}
.th-abai .cs2-num span{color:rgba(255,255,255,.9);font-family:var(--ab-f)}
.th-abai .cs2-story{border-bottom:0}
.th-abai .cs2-chapters,.th-abai .cs2-toc a{font-family:var(--ab-f)}
.th-abai .cs2-toc ol{border-left-color:rgba(240,238,232,.18)}
.th-abai .cs2-toc a{color:rgba(240,238,232,.55)}.th-abai .cs2-toc a.on{color:var(--ab-ms);border-left-color:var(--ab-ms)}
.th-abai .cs2-k{font:800 clamp(1.8rem,3.2vw,3rem)/1 var(--ab-f);color:var(--ab-paper);letter-spacing:-.02em}
.th-abai .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--ab-f);color:rgba(240,238,232,.9)}
.th-abai .cs2-big.accent{background:var(--ab-gr);color:#fff;border-radius:4px 80px 4px 80px;padding:clamp(26px,3.4vw,48px);max-width:none}
.th-abai .cs2-sol li{border:0;color:#fff;background:var(--ab-gr);border-radius:4px 48px 4px 48px}
.th-abai .cs2-sol li:nth-child(3n+2){background:var(--ab-ms);border-radius:48px 4px 48px 4px}.th-abai .cs2-sol li:nth-child(3n){background:var(--ab-rs)}
.th-abai .cs2-sol .dot{display:none}
.th-abai .cs2-sol .n{font:800 2rem/1 var(--ab-f);color:rgba(255,255,255,.85)}
.th-abai .cs2-gallery.real{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);align-items:start}
.th-abai .cs2-gallery.real img{border:0;border-radius:12px}
.th-abai .cs2-gallery.real figcaption,.th-abai .cs2-team span,.th-abai .cs2-gaps p{color:rgba(240,238,232,.6)}
.th-abai .cs2-res{border-top-color:var(--ab-ms)}
.th-abai .cs2-res li{border-bottom-color:rgba(240,238,232,.15)}
.th-abai .cs2-res .k{color:rgba(240,238,232,.75)}
.th-abai .cs2-res b{font:800 clamp(1.6rem,2.8vw,2.6rem)/1 var(--ab-f);color:var(--ab-ms)}
.th-abai .cs2-worked{border-top-color:var(--ab-ms)}
.th-abai .cs2-worked li{border-bottom-color:rgba(240,238,232,.15);color:rgba(240,238,232,.9)}
.th-abai .cs2-worked li::before{font:800 2rem/1 var(--ab-f);color:var(--ab-ms)}
.th-abai .cs2-team li{border-color:rgba(240,238,232,.18)}
.th-abai .todo,.th-abai .draft{color:var(--ab-ms);border-color:var(--ab-ms)}
@media (max-width:640px){.th-abai .cs2-gallery.real{grid-template-columns:1fr}}

/* ===== theme: «Жизнь на Ультра» (Teraflex blue, white heavy sans, sport photo) ===== */
.th-ultra{--ul-b1:#1E5FD8;--ul-b2:#3DADFF;--ul-ink:#0E1A2E;--ul-bg:#F3F6FA;--ul-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--ul-bg);color:var(--ul-ink)}
.cs2-hero.has-bg{position:relative;overflow:hidden}
.hero-bg{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:60% 40%;z-index:0}
.th-ultra .cs2-hero{color:#fff;border-bottom:0;min-height:min(92vh,860px);display:grid;align-content:end}
.th-ultra .cs2-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(14,26,46,.92) 0%,rgba(14,26,46,.75) 38%,rgba(14,26,46,.05) 72%)}
.th-ultra .cs2-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.7fr)}
.th-ultra .th-heroimg{display:none}
.th-ultra .crumbs,.th-ultra .crumbs a{color:rgba(255,255,255,.7)}
.th-ultra .cs2-chips li{border-color:rgba(255,255,255,.7);color:#fff;font-family:var(--ul-f)}
.th-ultra .cs2-brand{display:flex;align-items:flex-end;gap:18px;flex-wrap:wrap}
.th-ultra .brand-img{width:min(460px,80%);height:auto}
.th-ultra .brand-img2{width:min(150px,30%);height:auto;margin-bottom:8px}
.th-ultra .cs2-h1{font:800 clamp(1.15rem,1.7vw,1.6rem)/1.2 var(--ul-f);text-transform:none;color:var(--ul-b2);max-width:30ch}
.th-ultra .cs2-hero .lead{color:rgba(255,255,255,.88);font-family:var(--ul-f);max-width:52ch}
.th-ultra .btn{color:#fff;border-color:#fff}.th-ultra .btn:hover{background:#fff;color:var(--ul-ink)}
.th-ultra .btn.fill{background:linear-gradient(90deg,var(--ul-b1),var(--ul-b2));border-color:transparent;color:#fff}.th-ultra .btn.fill:hover{background:#fff;color:var(--ul-b1)}
.th-ultra .cs2-band{background:linear-gradient(100deg,var(--ul-b1),var(--ul-b2))}
.th-ultra .cs2-num{border-top-color:rgba(255,255,255,.35)}
.th-ultra .cs2-num b{font:900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--ul-f);color:#fff}
.th-ultra .cs2-num span{color:rgba(255,255,255,.9);font-family:var(--ul-f)}
.th-ultra .cs2-story{border-bottom:0}
.th-ultra .cs2-chapters,.th-ultra .cs2-toc a{font-family:var(--ul-f)}
.th-ultra .cs2-toc a.on{color:var(--ul-b1);border-left-color:var(--ul-b1)}
.th-ultra .cs2-k{font:900 clamp(1.9rem,3.4vw,3.2rem)/1 var(--ul-f);text-transform:uppercase;letter-spacing:-.01em;color:var(--ul-ink)}
.th-ultra .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--ul-f)}
.th-ultra .cs2-big.accent{background:linear-gradient(100deg,var(--ul-b1),var(--ul-b2));color:#fff;border-radius:0 60px 0 60px;padding:clamp(24px,3.2vw,46px);max-width:none}
.th-ultra .cs2-sol li{border:0;border-radius:0 40px 0 40px;background:#fff;box-shadow:0 18px 40px -26px rgba(30,95,216,.5)}
.th-ultra .cs2-sol .dot{width:44px;height:14px;border-radius:999px;background:linear-gradient(90deg,var(--ul-b1),var(--ul-b2))}
.th-ultra .cs2-sol .n{font:900 2rem/1 var(--ul-f);color:var(--ul-b1)}
.th-ultra .cs2-gallery.real{grid-template-columns:minmax(0,.55fr) minmax(0,1fr);align-items:start}
.th-ultra .cs2-gallery.real img{border:0;border-radius:0 40px 0 40px}
.th-ultra .cs2-res{border-top-color:var(--ul-b1)}
.th-ultra .cs2-res b{font:900 clamp(1.4rem,2.4vw,2.2rem)/1.1 var(--ul-f);color:var(--ul-b1)}
.th-ultra .cs2-bar i{background:linear-gradient(90deg,var(--ul-b1),var(--ul-b2))}
.th-ultra .cs2-worked li::before{font:900 2rem/1 var(--ul-f);color:var(--ul-b1)}
.th-ultra .cs2-team li{border-radius:0 24px 0 24px;background:#fff;border-color:transparent}
.th-ultra .cs2-quote{background:#fff;border-radius:0 60px 0 60px;padding:clamp(28px,3.4vw,48px)}
.th-ultra .cs2-quote .q{color:var(--ul-b1);font-family:var(--ul-f);font-weight:900}
@media (max-width:980px){.th-ultra .cs2-hero-grid{grid-template-columns:1fr}.th-ultra .cs2-hero::before{background:linear-gradient(180deg,rgba(14,26,46,.55),rgba(14,26,46,.92) 55%)}}
@media (max-width:640px){.th-ultra .cs2-gallery.real{grid-template-columns:1fr}}
.cs2-hero.has-bg{isolation:isolate}
.cs2-hero.has-bg .hero-bg{z-index:-2}
.th-ultra .cs2-hero::before{z-index:-1}
.th-ultra .cs2-hero .wrap{position:relative;z-index:1}

/* ===== theme: street food map (orange paper-cut on dark) ===== */
.th-streetfood{--sf-or:#E8661E;--sf-or2:#F28C3C;--sf-ink:#1B1B1B;--sf-cream:#FCEFE3;--sf-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--sf-cream);color:var(--sf-ink)}
.th-streetfood .cs2-hero{background:var(--sf-ink);color:#fff;border-bottom:0}
.th-streetfood .crumbs,.th-streetfood .crumbs a{color:rgba(255,255,255,.65)}
.th-streetfood .cs2-chips li{border-color:var(--sf-or2);color:var(--sf-or2);font-family:var(--sf-f)}
.th-streetfood .cs2-brand{font:900 clamp(2.8rem,6vw,5.6rem)/.92 var(--sf-f);text-transform:uppercase;color:var(--sf-or);letter-spacing:-.02em}
.th-streetfood .cs2-h1{font:700 clamp(1.15rem,1.7vw,1.55rem)/1.25 var(--sf-f);text-transform:none;color:#fff;max-width:30ch}
.th-streetfood .cs2-hero .lead{color:rgba(255,255,255,.85);font-family:var(--sf-f)}
.th-streetfood .btn{color:#fff;border-color:#fff}.th-streetfood .btn:hover{background:#fff;color:var(--sf-ink)}
.th-streetfood .btn.fill{background:var(--sf-or);border-color:var(--sf-or)}.th-streetfood .btn.fill:hover{background:#fff;border-color:#fff;color:var(--sf-or)}
.th-streetfood .th-heroimg>img{width:120%;margin-left:-8%;filter:none}
.th-streetfood .cs2-band{background:var(--sf-or)}
.th-streetfood .cs2-num{border-top-color:rgba(255,255,255,.4)}
.th-streetfood .cs2-num b{font:900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--sf-f);color:#fff}
.th-streetfood .cs2-num span{color:rgba(255,255,255,.92);font-family:var(--sf-f)}
.th-streetfood .cs2-story{border-bottom:0}
.th-streetfood .cs2-chapters,.th-streetfood .cs2-toc a{font-family:var(--sf-f)}
.th-streetfood .cs2-toc a.on{color:var(--sf-or);border-left-color:var(--sf-or)}
.th-streetfood .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--sf-f);text-transform:uppercase;letter-spacing:-.01em}
.th-streetfood .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--sf-f)}
.th-streetfood .cs2-big.accent{background:var(--sf-or);color:#fff;max-width:none;padding:clamp(24px,3vw,44px);clip-path:polygon(0 4%,6% 0,40% 3%,70% 0,100% 5%,98% 50%,100% 96%,60% 100%,30% 97%,0 100%,2% 50%)}
.th-streetfood .cs2-sol li{border:0;border-radius:0;background:#fff;clip-path:polygon(0 3%,8% 0,50% 2%,92% 0,100% 4%,99% 50%,100% 97%,50% 100%,4% 98%,1% 50%)}
.th-streetfood .cs2-sol .dot{background:var(--sf-or)}
.th-streetfood .cs2-sol .n{font:900 2rem/1 var(--sf-f);color:var(--sf-or)}
.th-streetfood .cs2-res{border-top-color:var(--sf-or)}
.th-streetfood .cs2-res b{font:900 clamp(1.5rem,2.6vw,2.4rem)/1 var(--sf-f);color:var(--sf-or)}
.th-streetfood .cs2-worked li::before{font:900 2rem/1 var(--sf-f);color:var(--sf-or)}
.th-streetfood .cs2-gallery.real{grid-template-columns:1fr}
.th-streetfood .cs2-gallery.real img{border:0;border-radius:8px;max-width:760px}
/* ===== theme: Elevit (soft pink, white, Instagram) ===== */
.th-elevit{--el-p:#E58AC0;--el-p2:#C85A9E;--el-bl:#3A6FD8;--el-bg:#FFF5FA;--el-ink:#2A1E2C;--el-f:"Manrope","Inter",Arial,sans-serif;background:var(--el-bg);color:var(--el-ink)}
.th-elevit .cs2-hero{background:linear-gradient(135deg,#FCE3F1,#F7C9E3);border-bottom:0}
.th-elevit .cs2-chips li{border-color:var(--el-p2);color:var(--el-p2);font-family:var(--el-f)}
.th-elevit .cs2-brand{font:800 clamp(3.4rem,7.4vw,7rem)/.92 var(--el-f);color:var(--el-p2);letter-spacing:-.03em}
.th-elevit .cs2-h1{font:700 clamp(1.15rem,1.7vw,1.55rem)/1.25 var(--el-f);text-transform:none;color:var(--el-ink);max-width:30ch}
.th-elevit .cs2-hero .lead{font-family:var(--el-f);color:#5A4A5C}
.th-elevit .btn{color:var(--el-ink);border-color:var(--el-ink)}.th-elevit .btn:hover{background:var(--el-ink);color:#fff}
.th-elevit .btn.fill{background:var(--el-p2);border-color:var(--el-p2);color:#fff}.th-elevit .btn.fill:hover{background:var(--el-ink);border-color:var(--el-ink)}
.th-elevit .th-heroimg>img{width:96%;margin-left:2%;filter:drop-shadow(0 30px 40px rgba(200,90,158,.35))}
.th-elevit .cs2-band{background:var(--el-p2)}
.th-elevit .cs2-num{border-top-color:rgba(255,255,255,.4)}
.th-elevit .cs2-num b{font:800 clamp(2.4rem,4.4vw,4.4rem)/1 var(--el-f);color:#fff}
.th-elevit .cs2-num span{color:rgba(255,255,255,.92);font-family:var(--el-f)}
.th-elevit .cs2-story{border-bottom:0}
.th-elevit .cs2-chapters,.th-elevit .cs2-toc a{font-family:var(--el-f)}
.th-elevit .cs2-toc a.on{color:var(--el-p2);border-left-color:var(--el-p2)}
.th-elevit .cs2-k{font:800 clamp(1.8rem,3.2vw,3rem)/1 var(--el-f);letter-spacing:-.02em;color:var(--el-ink)}
.th-elevit .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.45 var(--el-f)}
.th-elevit .cs2-big.accent{background:var(--el-p);color:#fff;border-radius:200px 200px 200px 40px;padding:clamp(28px,3.6vw,52px) clamp(28px,4vw,60px);max-width:none}
.th-elevit .cs2-sol li{border:0;border-radius:32px;background:#fff;box-shadow:0 18px 40px -26px rgba(200,90,158,.6)}
.th-elevit .cs2-sol .dot{background:var(--el-p);width:22px;height:22px}
.th-elevit .cs2-sol .n{font:800 2rem/1 var(--el-f);color:var(--el-p2)}
.th-elevit .cs2-res{border-top-color:var(--el-p2)}
.th-elevit .cs2-res b{font:800 clamp(1.5rem,2.6vw,2.4rem)/1 var(--el-f);color:var(--el-p2)}
.th-elevit .cs2-worked li::before{font:800 2rem/1 var(--el-f);color:var(--el-p2)}
.th-elevit .cs2-gallery.real{grid-template-columns:minmax(0,420px)}
.th-elevit .cs2-gallery.real img{border:0;border-radius:24px}
.th-elevit .cs2-team li{border-radius:20px;background:#fff;border-color:transparent}
/* hero image: fit by default; the «Новый день» cow keeps its oversize crop */
.cs2:not([class*=" th-"]) .th-heroimg>img,.th-novyi-den .th-heroimg>img{width:100%;margin-left:0;border-radius:16px}
.th-novyi-den .th-heroimg>img[data-pimg*="nd-cow"],.th-novyi-den .th-heroimg>img[src*="nd-cow"]{width:150%;margin-left:-18%;border-radius:0}
.cs2:not([class*=" th-"]) .cs2-brand{font-size:clamp(2.6rem,5.4vw,5.6rem);overflow-wrap:anywhere}
.th-streetfood .th-heroimg>img{width:100%;margin-left:0;border-radius:14px;box-shadow:0 30px 60px -20px rgba(0,0,0,.6)}
.th-streetfood .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr))}
.th-streetfood .cs2-gallery.real img{max-width:none}
@media (max-width:640px){.th-streetfood .cs2-gallery.real{grid-template-columns:1fr}}
.th-streetfood .cs2-hero-grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.th-streetfood .th-heroimg>img{width:112%}

/* ===== theme: «Новый день» car branding — sky, field, a truck on the road ===== */
.th-ndcar{--nc-sky:#2E8BE6;--nc-sky2:#9ED3FF;--nc-gr:#5DB33A;--nc-yel:#F2C21B;--nc-ink:#14324F;--nc-f:"Inter","Helvetica Neue",Arial,sans-serif;background:#F4F9FF;color:var(--nc-ink)}
.th-ndcar .cs2-hero{background:linear-gradient(180deg,var(--nc-sky) 0%,var(--nc-sky2) 100%);color:#fff;border-bottom:0;padding-bottom:clamp(24px,3vw,40px)}
.th-ndcar .crumbs,.th-ndcar .crumbs a{color:rgba(255,255,255,.85)}
.th-ndcar .cs2-chips li{border-color:#fff;color:#fff;font-family:var(--nc-f)}
.th-ndcar .cs2-brand{font:900 italic clamp(3.2rem,7vw,6.6rem)/.9 var(--nc-f);color:#fff;text-shadow:0 4px 0 #1C5FB0,0 10px 30px rgba(0,0,0,.18);letter-spacing:-.02em}
.th-ndcar .cs2-h1{font:800 clamp(1.3rem,2vw,1.9rem)/1.15 var(--nc-f);text-transform:none;color:var(--nc-yel);text-shadow:0 2px 0 #1C5FB0;max-width:24ch}
.th-ndcar .cs2-hero .lead{color:#fff;font-family:var(--nc-f)}
.th-ndcar .btn{color:#fff;border-color:#fff}.th-ndcar .btn.fill{background:var(--nc-yel);border-color:var(--nc-yel);color:var(--nc-ink)}.th-ndcar .btn.fill:hover{background:#fff;border-color:#fff}
.th-ndcar .th-heroimg>img{width:110%;margin-left:-4%;border-radius:0;filter:drop-shadow(0 24px 30px rgba(20,50,79,.35))}
/* the road */
.cs2-drive{position:relative;height:clamp(220px,30vw,380px);overflow:hidden;background:linear-gradient(180deg,var(--nc-sky2,#9ED3FF) 0%,#DDF0FF 55%,var(--nc-gr,#5DB33A) 55.2%,#4C9A2E 100%)}
.drive-sky .cl{position:absolute;background:#fff;border-radius:999px;opacity:.9;animation:cloud 40s linear infinite}
.drive-sky .cl::before,.drive-sky .cl::after{content:"";position:absolute;background:#fff;border-radius:50%}
.drive-sky .c1{width:160px;height:38px;top:12%;left:10%}.drive-sky .c1::before{width:70px;height:70px;left:24px;top:-34px}.drive-sky .c1::after{width:52px;height:52px;left:84px;top:-22px}
.drive-sky .c2{width:120px;height:30px;top:26%;left:55%;animation-duration:55s;animation-delay:-20s}.drive-sky .c2::before{width:52px;height:52px;left:20px;top:-26px}.drive-sky .c2::after{width:40px;height:40px;left:62px;top:-16px}
.drive-sky .c3{width:200px;height:44px;top:8%;left:80%;animation-duration:70s;animation-delay:-35s}.drive-sky .c3::before{width:84px;height:84px;left:36px;top:-40px}.drive-sky .c3::after{width:60px;height:60px;left:110px;top:-26px}
@keyframes cloud{from{transform:translateX(30vw)}to{transform:translateX(-120vw)}}
.drive-road{position:absolute;left:0;right:0;bottom:12%;height:22%;background:#3B3F45;border-top:4px solid #CFCFCF;border-bottom:4px solid #CFCFCF}
.drive-lines{position:absolute;left:0;right:0;top:50%;height:6px;margin-top:-3px;background:repeating-linear-gradient(90deg,var(--nc-yel,#F2C21B) 0 60px,transparent 60px 120px);}
@keyframes lines{to{background-position:-120px 0}}
.drive-truck{position:absolute;bottom:17%;height:74%;aspect-ratio:1448/970;left:0;animation:drive 12s cubic-bezier(.45,.05,.55,.95) infinite;filter:drop-shadow(0 12px 10px rgba(0,0,0,.35))}
.dt-body{display:block;width:100%;height:100%;animation:bob .35s ease-in-out infinite alternate}
.dt-wheel{position:absolute;border-radius:50%;animation:roll 12s cubic-bezier(.45,.05,.55,.95) infinite}
@keyframes roll{0%{transform:rotate(0)}42%{transform:rotate(1800deg)}58%{transform:rotate(1800deg)}100%{transform:rotate(4000deg)}}
@keyframes spin{to{transform:rotate(360deg)}}
@keyframes bob{to{transform:translateY(-1.5px)}}
@keyframes drive{0%{transform:translateX(-110%)}42%{transform:translateX(calc(50vw - 50%))}58%{transform:translateX(calc(50vw - 50%))}100%{transform:translateX(110vw)}}
.drive-truck{--k:1}
.th-ndcar .cs2-band{background:var(--nc-ink)}
.th-ndcar .cs2-num b{font:900 clamp(2.6rem,5vw,5rem)/1 var(--nc-f);color:var(--nc-yel)}
.th-ndcar .cs2-num span{color:#fff;font-family:var(--nc-f)}
.th-ndcar .cs2-story{border-bottom:0}
.th-ndcar .cs2-chapters,.th-ndcar .cs2-toc a{font-family:var(--nc-f)}
.th-ndcar .cs2-toc a.on{color:var(--nc-sky);border-left-color:var(--nc-sky)}
.th-ndcar .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--nc-f);color:var(--nc-ink);letter-spacing:-.02em}
.th-ndcar .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--nc-f)}
.th-ndcar .cs2-big.accent{background:var(--nc-sky);color:#fff;border-radius:24px;padding:clamp(24px,3vw,44px);max-width:none}
.th-ndcar .cs2-sol li{border:0;border-radius:24px;background:#fff;box-shadow:0 18px 36px -24px rgba(46,139,230,.6)}
.th-ndcar .cs2-sol .dot{background:var(--nc-yel)}
.th-ndcar .cs2-sol .n{color:var(--nc-sky);font:900 2rem/1 var(--nc-f)}
.th-ndcar .cs2-res{border-top-color:var(--nc-ink)}
.th-ndcar .cs2-res b{font:900 clamp(1.6rem,2.8vw,2.6rem)/1 var(--nc-f);color:var(--nc-sky)}
.th-ndcar .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr))}
.th-ndcar .cs2-gallery.real img{border:0;border-radius:18px;background:#fff}
@media (max-width:640px){.th-ndcar .cs2-gallery.real{grid-template-columns:1fr}.drive-truck{height:58%}}
@media (prefers-reduced-motion:reduce){.drive-truck,.dt-wheel,.dt-body{animation:none}.drive-truck{left:50%;transform:translateX(-50%)}.drive-lines,.drive-sky .cl{animation:none}}
/* case: media placements strip */
.cs2-place-note{color:var(--muted);margin-top:-8px}
.cs2-place{list-style:none;padding:0 0 12px;margin:0;display:grid;grid-auto-flow:column;grid-auto-columns:clamp(170px,18vw,230px);gap:14px;overflow-x:auto;scroll-snap-type:x mandatory;-webkit-overflow-scrolling:touch}
.cs2-place li{scroll-snap-align:start;display:grid;gap:8px}
.cs2-place img{width:100%;aspect-ratio:9/17;object-fit:cover;object-position:top;border-radius:18px;border:5px solid #1b1b1b;background:#1b1b1b}
.cs2-place span{font-size:.85rem;color:var(--muted)}
.th-streetfood .cs2-place-note,.th-streetfood .cs2-place span{color:#6b5a4c}

/* case fx: phone with an incoming message (B2B) */
.fx-phone{display:grid;place-items:center;aspect-ratio:auto}
.fxp-frame{position:relative;width:min(300px,70%);aspect-ratio:9/18.5;border-radius:42px;background:#0d0d0d;padding:10px;box-shadow:0 40px 70px -30px rgba(0,0,0,.6)}
.fxp-frame>img{width:100%;height:100%;object-fit:cover;border-radius:33px;display:block}
.fxp-note{position:absolute;left:18px;right:18px;top:22px;display:flex;gap:10px;align-items:center;padding:10px 12px;border-radius:18px;background:rgba(255,255,255,.94);color:#111;box-shadow:0 10px 24px rgba(0,0,0,.25);
  opacity:0;transform:translateY(-130%);animation:note 6s cubic-bezier(.2,.8,.2,1) infinite 1.2s}
.fxp-note i{flex:none;width:30px;height:30px;border-radius:9px;background:linear-gradient(45deg,#F58529,#DD2A7B,#8134AF)}
.fxp-note b{display:block;font:700 .78rem/1.2 var(--f-sans)}
.fxp-note span{display:block;font:400 .74rem/1.3 var(--f-sans);color:#444}
@keyframes note{0%{opacity:0;transform:translateY(-130%)}8%,62%{opacity:1;transform:none}72%,100%{opacity:0;transform:translateY(-130%)}}
/* case fx: a glass that fills with milk on scroll (tastings) */
.cs2-glass{padding-block:clamp(48px,8vw,110px);display:grid;place-items:center}
.glass-wrap{display:grid;justify-items:center;gap:22px}
.glass-svg{width:clamp(110px,12vw,160px);height:auto;overflow:visible}
.glass-edge{fill:rgba(255,255,255,.12);stroke:currentColor;stroke-width:2.5;stroke-linejoin:round}
.glass-milk{fill:#FFFDF7}
.glass-wave{fill:#FFFDF7}
.glass-cap{font:800 clamp(1.4rem,2.4vw,2.2rem)/1.1 var(--nd-h,var(--f-sans));text-transform:uppercase;opacity:0;transform:translateY(12px);transition:opacity .6s,transform .6s}
.cs2-glass.full .glass-cap{opacity:1;transform:none}
.th-novyi-den .cs2-glass{background:var(--nd-bl);color:#fff}
@media (prefers-reduced-motion:reduce){.fxp-note{animation:none;opacity:1;transform:none}.glass-cap{opacity:1;transform:none}}
.cs2-place img[src*="bl3-info"],.cs2-place img[data-pimg*="bl3-info"]{object-fit:contain;background:#1b1b1b}
.th-bailanys .cs2-place-note,.th-bailanys .cs2-place span{color:#B4B4B4}.th-bailanys .cs2-place img{border-color:#3a3a3a}
.th-pain .cs2-gallery.real{grid-template-columns:repeat(3,minmax(0,1fr))}
.th-pain .cs2-place{grid-auto-columns:clamp(220px,24vw,320px)}
.th-pain .cs2-place img{aspect-ratio:auto;object-fit:contain;border:2px solid var(--pn-ink);border-radius:0;background:#fff}
.th-pain .cs2-place-note,.th-pain .cs2-place span{color:#555}
@media (max-width:820px){.th-pain .cs2-gallery.real{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* hero: two covers stacked (patients / doctors) */
.th-stack{display:grid;aspect-ratio:auto;gap:0;padding:20px 0}
.th-stack figure{margin:0;position:relative}
.th-stack img{display:block;width:100%;height:auto;box-shadow:0 30px 50px -24px rgba(0,0,0,.6)}
.th-stack figcaption{position:absolute;top:12px;left:12px;font:700 .75rem/1 var(--pn-t,var(--f-sans));text-transform:uppercase;letter-spacing:.06em;padding:7px 10px;background:#fff;color:#161616}
.th-stack .st-a{width:84%;transform:rotate(-2deg);z-index:1}
.th-stack .st-b{width:84%;justify-self:end;margin-top:-18%;transform:rotate(2deg);z-index:2}
.th-pain .th-stack img{border:2px solid #fff}
.th-stack .st-a{width:78%}.th-stack .st-b{width:78%;margin-top:-7%}
/* numbers band: long values never collide */
.cs2-num.long b{font-size:clamp(2rem,3.4vw,3.6rem)!important;white-space:nowrap}
.cs2-nums{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
/* placements: show all, no horizontal cut */
.cs2-place{grid-auto-flow:row;grid-auto-columns:auto;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));overflow:visible}
.th-pain .cs2-place{grid-template-columns:repeat(auto-fill,minmax(240px,1fr))}
@media (max-width:520px){.cs2-place{grid-template-columns:repeat(2,minmax(0,1fr))}}
.th-streetfood .cs2-brand{font-size:clamp(2.4rem,4.4vw,4.4rem)}
@media (max-width:980px){.th-streetfood .cs2-hero-grid{grid-template-columns:1fr}.th-streetfood .th-heroimg>img{width:100%}}

/* plain hero visual: only the award medal on the background photo */
.cs2-visual.plain{aspect-ratio:auto;min-height:340px;place-items:end end}
.cs2-visual.plain .cs2-sticker{position:static;transform:rotate(-8deg)}
.cs2-visual.plain .cs2-sticker{width:clamp(150px,14vw,210px)}
.th-ultra .cs2-num b,.th-ultra .cs2-num.long b{font-size:clamp(2rem,2.7vw,2.7rem)!important;white-space:nowrap}
.th-ultra .cs2-place{grid-auto-flow:row;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px 22px;overflow:visible;max-width:860px}
@media (max-width:640px){.th-ultra .cs2-place{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}}
.th-ultra .cs2-place img{aspect-ratio:auto;object-fit:contain;border:0;border-radius:22px;background:#0b0b0b;box-shadow:0 18px 40px -24px rgba(30,95,216,.55)}
.th-ultra .cs2-place span{font-family:var(--ul-f)}

/* ===== carousel: one image at a time, swipe or arrows ===== */
.car{position:relative;display:grid;gap:14px;margin-top:8px;min-width:0}
.car-track{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;outline:none;border-radius:6px}
.car-track::-webkit-scrollbar{display:none}
.car-track:focus-visible{box-shadow:0 0 0 3px currentColor}
.car-slide{flex:0 0 100%;scroll-snap-align:center;margin:0;display:grid;gap:10px;justify-items:center;min-width:0}
.car-slide img{width:100%;height:clamp(300px,68vh,680px);object-fit:contain;background:var(--car-bg,rgba(24,23,23,.05));border-radius:6px;display:block}
.car-slide figcaption{font-size:.92rem;opacity:.75;text-align:center;max-width:60ch;padding:0 12px}
.car-bar{display:flex;align-items:center;justify-content:center;gap:18px}
.car-btn{width:46px;height:46px;border-radius:50%;border:1.5px solid currentColor;background:transparent;color:inherit;font:400 1.2rem/1 var(--f-sans,inherit);cursor:pointer;display:grid;place-items:center;transition:background .2s,color .2s,opacity .2s}
.car-btn:hover{background:rgba(127,127,127,.18)}
.car-btn[disabled]{opacity:.3;cursor:default;background:transparent}
.car-count{font-variant-numeric:tabular-nums;font-size:.95rem;min-width:5ch;text-align:center}
.car-count b{font-weight:600}
@media (max-width:640px){.car-slide img{height:clamp(260px,62vh,560px)}.car-btn{width:40px;height:40px}}
.th-ultra .car-slide img{background:#E3EAF4}
.th-bailanys .car-slide img{background:#1d1d1d}

/* ===== theme: KURSIV Digital (lime paper, black, heavy italic caps) ===== */
.th-kursiv{--ks-bg:#EDF5D0;--ks-ink:#111;--ks-w:#fff;--ks-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--ks-bg);color:var(--ks-ink)}
.th-kursiv .cs2-hero{border-bottom:0}
.th-kursiv .crumbs,.th-kursiv .crumbs a{color:rgba(17,17,17,.6)}
.th-kursiv .cs2-chips li{border:0;background:var(--ks-ink);color:var(--ks-bg);font:italic 600 .78rem/1 var(--ks-f);text-transform:uppercase;letter-spacing:.04em;border-radius:3px;padding:7px 10px}
.th-kursiv .brand-img{width:min(420px,78%);height:auto}
.th-kursiv .cs2-h1{font:italic 800 clamp(1.25rem,2vw,1.9rem)/1.15 var(--ks-f);text-transform:none;color:var(--ks-ink);max-width:28ch}
.th-kursiv .cs2-hero .lead{font-family:var(--ks-f);color:rgba(17,17,17,.82)}
.th-kursiv .btn{color:var(--ks-ink);border-color:var(--ks-ink)}.th-kursiv .btn:hover{background:var(--ks-ink);color:var(--ks-bg)}
.th-kursiv .btn.fill{background:var(--ks-ink);border-color:var(--ks-ink);color:var(--ks-bg)}.th-kursiv .btn.fill:hover{background:transparent;color:var(--ks-ink)}
.th-kursiv .th-heroimg{display:grid;place-items:center}
.th-kursiv .th-heroimg>img{width:min(340px,82%);margin:0;border-radius:34px;border:6px solid var(--ks-ink);filter:drop-shadow(14px 18px 0 rgba(17,17,17,.9));transform:rotate(3deg)}
.th-kursiv .cs2-band{background:var(--ks-ink)}
.th-kursiv .cs2-num{border-top-color:rgba(237,245,208,.3)}
.th-kursiv .cs2-num b{font:italic 900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--ks-f);color:var(--ks-bg)}
.th-kursiv .cs2-num span{color:rgba(237,245,208,.8);font-family:var(--ks-f)}
.th-kursiv .cs2-story{border-bottom:0}
.th-kursiv .cs2-chapters,.th-kursiv .cs2-toc a{font-family:var(--ks-f)}
.th-kursiv .cs2-toc a.on{color:var(--ks-ink);border-left-color:var(--ks-ink);font-weight:700}
.th-kursiv .cs2-k{font:italic 900 clamp(1.9rem,3.4vw,3.2rem)/1 var(--ks-f);text-transform:uppercase;letter-spacing:-.01em;color:var(--ks-ink)}
.th-kursiv .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--ks-f)}
.th-kursiv .cs2-big.accent{background:var(--ks-ink);color:var(--ks-bg);border-radius:4px;padding:clamp(24px,3.2vw,46px);max-width:none}
.th-kursiv .cs2-sol li{border:2px solid var(--ks-ink);border-radius:4px;background:var(--ks-w);box-shadow:6px 6px 0 var(--ks-ink)}
.th-kursiv .cs2-sol .dot{display:none}
.th-kursiv .cs2-sol .n{font:italic 900 1.9rem/1 var(--ks-f);color:var(--ks-ink)}
.th-kursiv .cs2-res{border-top-color:var(--ks-ink)}
.th-kursiv .cs2-res b{font-family:var(--ks-f);font-style:italic;color:var(--ks-ink)}
.th-kursiv .cs2-worked{border-top-color:var(--ks-ink)}
.th-kursiv .cs2-worked li::before{font:italic 900 2rem/1 var(--ks-f);color:var(--ks-ink)}
.th-kursiv .car-slide img{background:#dfe8bf}
.th-kursiv .cs2-place-note{color:rgba(17,17,17,.65)}

/* ===== theme: «Мужское здоровье в космосе» (night sky, blue blobs, coral, cream) ===== */
.th-cosmos{--cm-bg:#161A33;--cm-bg2:#22284A;--cm-blue:#1F5BC7;--cm-coral:#E8735A;--cm-cream:#F4EEE2;--cm-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--cm-bg);color:var(--cm-cream);
  background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fff8 50%,transparent 51%),radial-gradient(1px 1px at 72% 9%,#fff9 50%,transparent 51%),radial-gradient(1.5px 1.5px at 44% 64%,#fff6 50%,transparent 51%),radial-gradient(1px 1px at 88% 52%,#fff8 50%,transparent 51%),radial-gradient(1px 1px at 27% 86%,#fff7 50%,transparent 51%);background-size:420px 420px}
.th-cosmos .cs2-hero{border-bottom:0}
.th-cosmos .crumbs,.th-cosmos .crumbs a{color:rgba(244,238,226,.6)}
.th-cosmos .cs2-chips li{border-color:var(--cm-coral);color:var(--cm-coral);font-family:var(--cm-f)}
.th-cosmos .cs2-brand{font:800 clamp(2.6rem,5.6vw,5.2rem)/.95 var(--cm-f);color:var(--cm-cream);letter-spacing:-.03em;max-width:12ch}
.th-cosmos .cs2-h1{font:600 clamp(1.15rem,1.7vw,1.6rem)/1.25 var(--cm-f);text-transform:none;color:var(--cm-coral);max-width:30ch}
.th-cosmos .cs2-hero .lead{color:rgba(244,238,226,.85);font-family:var(--cm-f)}
.th-cosmos .btn{color:var(--cm-cream);border-color:var(--cm-cream)}.th-cosmos .btn:hover{background:var(--cm-cream);color:var(--cm-bg)}
.th-cosmos .btn.fill{background:var(--cm-coral);border-color:var(--cm-coral);color:#fff}.th-cosmos .btn.fill:hover{background:var(--cm-cream);border-color:var(--cm-cream);color:var(--cm-bg)}
.th-cosmos .th-heroimg{display:grid;place-items:center}
.th-cosmos .th-heroimg>img{width:min(520px,100%);margin:0;border-radius:50%;aspect-ratio:1;object-fit:cover;box-shadow:0 0 0 14px rgba(31,91,199,.35),0 0 0 28px rgba(31,91,199,.15);filter:none}
.th-cosmos .cs2-band{background:var(--cm-blue)}
.th-cosmos .cs2-num{border-top-color:rgba(244,238,226,.35)}
.th-cosmos .cs2-num b{font:800 clamp(2.4rem,4.4vw,4.4rem)/1 var(--cm-f);color:var(--cm-cream)}
.th-cosmos .cs2-num span{color:rgba(244,238,226,.85);font-family:var(--cm-f)}
.th-cosmos .cs2-story{border-bottom:0}
.th-cosmos .cs2-chapters,.th-cosmos .cs2-toc a{font-family:var(--cm-f)}
.th-cosmos .cs2-toc ol{border-left-color:rgba(244,238,226,.18)}
.th-cosmos .cs2-toc a{color:rgba(244,238,226,.55)}.th-cosmos .cs2-toc a.on{color:var(--cm-coral);border-left-color:var(--cm-coral)}
.th-cosmos .cs2-k{font:800 clamp(1.8rem,3.2vw,3rem)/1 var(--cm-f);color:var(--cm-cream);letter-spacing:-.02em}
.th-cosmos .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--cm-f);color:rgba(244,238,226,.9)}
.th-cosmos .cs2-big.accent{background:var(--cm-blue);color:#fff;border-radius:999px 999px 999px 40px;padding:clamp(28px,3.6vw,52px) clamp(28px,4.4vw,64px);max-width:none}
.th-cosmos .cs2-sol li{border:0;background:var(--cm-bg2);color:var(--cm-cream);border-radius:28px}
.th-cosmos .cs2-sol .dot{background:var(--cm-blue);border-radius:50%}
.th-cosmos .cs2-sol .n{font:800 2rem/1 var(--cm-f);color:var(--cm-coral)}
.th-cosmos .cs2-res{border-top-color:var(--cm-coral)}
.th-cosmos .cs2-res li{border-bottom-color:rgba(244,238,226,.15)}
.th-cosmos .cs2-res .k{color:rgba(244,238,226,.75)}
.th-cosmos .cs2-res b{font-family:var(--cm-f);color:var(--cm-coral)}
.th-cosmos .cs2-worked{border-top-color:var(--cm-coral)}
.th-cosmos .cs2-worked li{border-bottom-color:rgba(244,238,226,.15);color:rgba(244,238,226,.9)}
.th-cosmos .cs2-worked li::before{font:800 2rem/1 var(--cm-f);color:var(--cm-coral)}
.th-cosmos .cs2-team li{border-color:rgba(244,238,226,.18)}
.th-cosmos .cs2-team span{color:rgba(244,238,226,.6)}
.th-cosmos .car-slide img{background:var(--cm-bg2)}
.th-cosmos .cs2-k{text-transform:none}

/* ===== theme: «Фармацевт — Супергерой» (cape blue, yellow and green pixel diamonds, light pharmacy mint) ===== */
.th-superph{--sp-bg:#EEF4F1;--sp-blue:#2160C4;--sp-deep:#0F2E66;--sp-y:#FFC21A;--sp-o:#FF9A1F;--sp-g:#6CC524;--sp-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--sp-bg);color:var(--sp-deep)}
.th-superph .cs2-hero{border-bottom:0;position:relative;overflow:hidden}
.th-superph .cs2-hero::before,.th-superph .cs2-hero::after{content:"";position:absolute;width:220px;height:220px;transform:rotate(45deg);opacity:.85;pointer-events:none;z-index:0}
.th-superph .cs2-hero::before{left:-90px;top:30%;background:linear-gradient(135deg,var(--sp-y),var(--sp-o));box-shadow:150px 150px 0 -60px var(--sp-y),-40px 260px 0 -90px var(--sp-o)}
.th-superph .cs2-hero::after{right:-80px;bottom:-60px;background:var(--sp-g);box-shadow:-150px -40px 0 -70px rgba(108,197,36,.7),-60px -190px 0 -95px var(--sp-g)}
.th-superph .cs2-hero .wrap{position:relative;z-index:1}
.th-superph .crumbs,.th-superph .crumbs a{color:rgba(15,46,102,.6)}
.th-superph .cs2-chips li{border-color:var(--sp-blue);color:var(--sp-blue);font-family:var(--sp-f)}
.th-superph .cs2-brand{font:900 clamp(2.6rem,5.6vw,5.2rem)/.95 var(--sp-f);color:var(--sp-blue);letter-spacing:-.03em;text-transform:uppercase;max-width:11ch;text-shadow:4px 4px 0 var(--sp-y)}
.th-superph .cs2-h1{font:700 clamp(1.15rem,1.7vw,1.6rem)/1.25 var(--sp-f);text-transform:none;color:var(--sp-deep);max-width:30ch}
.th-superph .cs2-hero .lead{color:rgba(15,46,102,.85);font-family:var(--sp-f)}
.th-superph .btn{color:var(--sp-deep);border-color:var(--sp-deep)}.th-superph .btn:hover{background:var(--sp-deep);color:#fff}
.th-superph .btn.fill{background:var(--sp-blue);border-color:var(--sp-blue);color:#fff}.th-superph .btn.fill:hover{background:var(--sp-y);border-color:var(--sp-y);color:var(--sp-deep)}
.th-superph .th-heroimg{display:grid;place-items:center}
.th-superph .th-heroimg>img{width:min(500px,100%);margin:0;border-radius:24px;border:4px solid var(--sp-deep);box-shadow:12px 12px 0 var(--sp-y);filter:none}
.th-superph .cs2-band{background:var(--sp-blue)}
.th-superph .cs2-num b{font:900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--sp-f);color:#fff}
.th-superph .cs2-num span{color:rgba(255,255,255,.85);font-family:var(--sp-f)}
.th-superph .cs2-story{border-bottom:0}
.th-superph .cs2-chapters,.th-superph .cs2-toc a{font-family:var(--sp-f)}
.th-superph .cs2-toc a.on{color:var(--sp-blue);border-left-color:var(--sp-blue)}
.th-superph .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--sp-f);color:var(--sp-deep);text-transform:uppercase;letter-spacing:-.01em}
.th-superph .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--sp-f)}
.th-superph .cs2-big.accent{background:var(--sp-blue);color:#fff;border-radius:24px;padding:clamp(26px,3.4vw,48px);max-width:none;box-shadow:10px 10px 0 var(--sp-y)}
.th-superph .cs2-sol li{border:3px solid var(--sp-deep);border-radius:18px;background:#fff;box-shadow:6px 6px 0 var(--sp-g)}
.th-superph .cs2-sol li:nth-child(even){box-shadow:6px 6px 0 var(--sp-y)}
.th-superph .cs2-sol .dot{width:16px;height:16px;border-radius:2px;transform:rotate(45deg);background:var(--sp-y)}
.th-superph .cs2-sol .n{font:900 2rem/1 var(--sp-f);color:var(--sp-blue)}
.th-superph .cs2-res{border-top-color:var(--sp-blue)}
.th-superph .cs2-res b{font-family:var(--sp-f);color:var(--sp-blue)}
.th-superph .cs2-worked{border-top-color:var(--sp-blue)}
.th-superph .cs2-worked li::before{font:900 2rem/1 var(--sp-f);color:var(--sp-blue)}
.th-superph .car-slide img{background:#dde8e3}
@media (max-width:640px){.th-superph .cs2-hero::before,.th-superph .cs2-hero::after{width:140px;height:140px}}
.th-superph .cs2-hero::before{left:auto;right:36%;top:-120px;width:170px;height:170px;box-shadow:120px 120px 0 -55px var(--sp-y),220px 10px 0 -95px var(--sp-o)}
@media (max-width:980px){.th-superph .cs2-hero::before{right:-60px;top:-90px}}
@media (max-width:640px){.th-superph .cs2-hero::before{display:none}}

/* ===== theme: «Содержательный диалог» (venue aubergine, candle gold, badge red, editorial serif) ===== */
.th-dialog{--dl-bg:#2A1630;--dl-bg2:#3A2142;--dl-gold:#D8B26A;--dl-red:#E2452B;--dl-cream:#F6EEE4;background:var(--dl-bg);color:var(--dl-cream)}
.th-dialog .cs2-hero{color:var(--dl-cream);border-bottom:0;min-height:min(88vh,820px);display:grid;align-content:end}
.th-dialog .cs2-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(42,22,48,.94) 0%,rgba(42,22,48,.78) 42%,rgba(42,22,48,.15) 78%),linear-gradient(0deg,rgba(42,22,48,.85),transparent 40%)}
.th-dialog .cs2-hero .wrap{position:relative;z-index:1}
.th-dialog .hero-bg{object-position:70% 40%}
.th-dialog .cs2-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.6fr)}
.th-dialog .cs2-visual.plain{min-height:0}
.th-dialog .crumbs,.th-dialog .crumbs a{color:rgba(246,238,228,.65)}
.th-dialog .cs2-chips li{border-color:var(--dl-gold);color:var(--dl-gold)}
.th-dialog .cs2-brand{font:400 clamp(3rem,6.6vw,6.2rem)/.95 var(--f-serif);color:var(--dl-cream);letter-spacing:-.01em;max-width:10ch}
.th-dialog .cs2-h1{font:400 clamp(1.15rem,1.7vw,1.6rem)/1.3 var(--f-serif);font-style:italic;text-transform:none;color:var(--dl-gold);max-width:32ch}
.th-dialog .cs2-hero .lead{color:rgba(246,238,228,.88);max-width:54ch}
.th-dialog .btn{color:var(--dl-cream);border-color:var(--dl-cream)}.th-dialog .btn:hover{background:var(--dl-cream);color:var(--dl-bg)}
.th-dialog .btn.fill{background:var(--dl-red);border-color:var(--dl-red);color:#fff}.th-dialog .btn.fill:hover{background:var(--dl-cream);border-color:var(--dl-cream);color:var(--dl-bg)}
.th-dialog .cs2-band{background:var(--dl-red)}
.th-dialog .cs2-story{border-bottom:0}
.th-dialog .cs2-toc ol{border-left-color:rgba(246,238,228,.18)}
.th-dialog .cs2-toc a{color:rgba(246,238,228,.55)}.th-dialog .cs2-toc a.on{color:var(--dl-gold);border-left-color:var(--dl-gold)}
.th-dialog .cs2-k{font:400 clamp(2rem,3.6vw,3.4rem)/1 var(--f-serif);color:var(--dl-cream);text-transform:none}
.th-dialog .cs2-big{color:rgba(246,238,228,.9)}
.th-dialog .cs2-big.accent{background:var(--dl-bg2);border-left:4px solid var(--dl-red);color:var(--dl-cream);padding:clamp(24px,3.2vw,44px);max-width:none}
.th-dialog .cs2-sol li{border:1px solid rgba(216,178,106,.35);background:var(--dl-bg2);color:var(--dl-cream)}
.th-dialog .cs2-sol .dot{background:var(--dl-red)}
.th-dialog .cs2-sol .n{font-family:var(--f-serif);color:var(--dl-gold)}
.th-dialog .cs2-res{border-top-color:var(--dl-gold)}
.th-dialog .cs2-res li{border-bottom-color:rgba(246,238,228,.15)}
.th-dialog .cs2-res .k{color:rgba(246,238,228,.7)}
.th-dialog .cs2-res b{font-family:var(--f-serif);font-weight:400;color:var(--dl-gold)}
.th-dialog .cs2-worked{border-top-color:var(--dl-gold)}
.th-dialog .cs2-worked li{border-bottom-color:rgba(246,238,228,.15);color:rgba(246,238,228,.9)}
.th-dialog .cs2-worked li::before{font-family:var(--f-serif);color:var(--dl-red)}
.th-dialog .cs2-team li{border-color:rgba(246,238,228,.18)}
.th-dialog .cs2-team span{color:rgba(246,238,228,.6)}
.th-dialog .car-slide img{background:#1d0f22}
@media (max-width:980px){.th-dialog .cs2-hero-grid{grid-template-columns:1fr}.th-dialog .cs2-visual.plain{display:none}.th-dialog .cs2-hero::before{background:linear-gradient(0deg,rgba(42,22,48,.96) 30%,rgba(42,22,48,.55))}}

/* ===== theme: Pharma Talks (concrete venue, projector green→cyan, badge magenta) ===== */
.th-ptalks{--pt-bg:#18181B;--pt-bg2:#24242A;--pt-g:#B4E33D;--pt-c:#3FD0D4;--pt-m:#E2386F;--pt-w:#F2F0EC;--pt-f:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--pt-bg);color:var(--pt-w)}
.th-ptalks .cs2-hero{color:var(--pt-w);border-bottom:0;min-height:min(88vh,820px);display:grid;align-content:end}
.th-ptalks .cs2-hero::before{content:"";position:absolute;inset:0;z-index:0;background:linear-gradient(90deg,rgba(24,24,27,.95) 0%,rgba(24,24,27,.8) 40%,rgba(24,24,27,.1) 80%),linear-gradient(0deg,rgba(24,24,27,.9),transparent 45%)}
.th-ptalks .cs2-hero .wrap{position:relative;z-index:1}
.th-ptalks .hero-bg{object-position:75% 30%}
.th-ptalks .cs2-hero-grid{grid-template-columns:minmax(0,1fr) minmax(0,.55fr)}
.th-ptalks .cs2-visual.plain{min-height:0}
.th-ptalks .crumbs,.th-ptalks .crumbs a{color:rgba(242,240,236,.65)}
.th-ptalks .cs2-chips li{border-color:var(--pt-g);color:var(--pt-g);font-family:var(--pt-f)}
.th-ptalks .cs2-brand{font:900 clamp(3.2rem,7vw,6.6rem)/.9 var(--pt-f);text-transform:uppercase;letter-spacing:-.03em;background:linear-gradient(90deg,var(--pt-g),var(--pt-c));-webkit-background-clip:text;background-clip:text;color:transparent}
.th-ptalks .cs2-h1{font:700 clamp(1.15rem,1.7vw,1.6rem)/1.25 var(--pt-f);text-transform:none;color:var(--pt-w);max-width:30ch}
.th-ptalks .cs2-hero .lead{color:rgba(242,240,236,.86);font-family:var(--pt-f);max-width:54ch}
.th-ptalks .btn{color:var(--pt-w);border-color:var(--pt-w)}.th-ptalks .btn:hover{background:var(--pt-w);color:var(--pt-bg)}
.th-ptalks .btn.fill{background:var(--pt-m);border-color:var(--pt-m);color:#fff}.th-ptalks .btn.fill:hover{background:var(--pt-g);border-color:var(--pt-g);color:var(--pt-bg)}
.th-ptalks .cs2-band{background:linear-gradient(100deg,var(--pt-g),var(--pt-c))}
.th-ptalks .cs2-num{border-top-color:rgba(24,24,27,.3)}
.th-ptalks .cs2-num b{font:900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--pt-f);color:var(--pt-bg)}
.th-ptalks .cs2-num span{color:rgba(24,24,27,.8);font-family:var(--pt-f)}
.th-ptalks .cs2-story{border-bottom:0}
.th-ptalks .cs2-chapters,.th-ptalks .cs2-toc a{font-family:var(--pt-f)}
.th-ptalks .cs2-toc ol{border-left-color:rgba(242,240,236,.18)}
.th-ptalks .cs2-toc a{color:rgba(242,240,236,.55)}.th-ptalks .cs2-toc a.on{color:var(--pt-g);border-left-color:var(--pt-g)}
.th-ptalks .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--pt-f);text-transform:uppercase;letter-spacing:-.02em;color:var(--pt-w)}
.th-ptalks .cs2-big{font:500 clamp(1.2rem,1.9vw,1.7rem)/1.4 var(--pt-f);color:rgba(242,240,236,.9)}
.th-ptalks .cs2-big.accent{background:var(--pt-bg2);border-left:4px solid var(--pt-m);color:var(--pt-w);padding:clamp(24px,3.2vw,44px);max-width:none}
.th-ptalks .cs2-sol li{border:1px solid rgba(180,227,61,.3);background:var(--pt-bg2);color:var(--pt-w);border-radius:14px}
.th-ptalks .cs2-sol .dot{background:linear-gradient(90deg,var(--pt-g),var(--pt-c))}
.th-ptalks .cs2-sol .n{font:900 1.9rem/1 var(--pt-f);color:var(--pt-g)}
.th-ptalks .cs2-res{border-top-color:var(--pt-g)}
.th-ptalks .cs2-res li{border-bottom-color:rgba(242,240,236,.15)}
.th-ptalks .cs2-res .k{color:rgba(242,240,236,.7)}
.th-ptalks .cs2-res b{font-family:var(--pt-f);color:var(--pt-g)}
.th-ptalks .cs2-worked{border-top-color:var(--pt-g)}
.th-ptalks .cs2-worked li{border-bottom-color:rgba(242,240,236,.15);color:rgba(242,240,236,.9)}
.th-ptalks .cs2-worked li::before{font:900 2rem/1 var(--pt-f);color:var(--pt-m)}
.th-ptalks .cs2-team li{border-color:rgba(242,240,236,.18)}
.th-ptalks .cs2-team span{color:rgba(242,240,236,.6)}
.th-ptalks .car-slide img{background:#0f0f11}
@media (max-width:980px){.th-ptalks .cs2-hero-grid{grid-template-columns:1fr}.th-ptalks .cs2-visual.plain{display:none}.th-ptalks .cs2-hero::before{background:linear-gradient(0deg,rgba(24,24,27,.96) 35%,rgba(24,24,27,.5))}}

/* ===== theme: Magnum (white, Magnum pink, orange, heavy rounded sans) ===== */
.th-magnum{--mg-p:#E2336B;--mg-o:#F28C28;--mg-ink:#1E1A1D;--mg-bg:#FFF8F5;--mg-f:"Montserrat","Inter","Helvetica Neue",Arial,sans-serif;background:var(--mg-bg);color:var(--mg-ink)}
.th-magnum .cs2-hero{border-bottom:0}
.th-magnum .crumbs,.th-magnum .crumbs a{color:rgba(30,26,29,.6)}
.th-magnum .cs2-chips li{border-color:var(--mg-p);color:var(--mg-p);font-family:var(--mg-f)}
.th-magnum .cs2-brand{font:900 clamp(2.6rem,5.4vw,5rem)/.95 var(--mg-f);color:var(--mg-p);letter-spacing:-.03em;max-width:10ch}
.th-magnum .cs2-h1{font:700 clamp(1.15rem,1.7vw,1.6rem)/1.25 var(--mg-f);text-transform:none;color:var(--mg-ink);max-width:28ch}
.th-magnum .cs2-hero .lead{font-family:var(--mg-f);color:rgba(30,26,29,.8)}
.th-magnum .btn{color:var(--mg-ink);border-color:var(--mg-ink)}.th-magnum .btn:hover{background:var(--mg-ink);color:#fff}
.th-magnum .btn.fill{background:var(--mg-p);border-color:var(--mg-p);color:#fff}.th-magnum .btn.fill:hover{background:var(--mg-o);border-color:var(--mg-o)}
.th-magnum .th-heroimg{display:grid;place-items:center}
.th-magnum .th-heroimg>img{width:118%;max-width:none;margin-left:-4%;border-radius:22px;box-shadow:16px 16px 0 var(--mg-o);filter:none}
.th-magnum .cs2-band{background:var(--mg-p)}
.th-magnum .cs2-num b{font:900 clamp(2.4rem,4.4vw,4.4rem)/1 var(--mg-f);color:#fff}
.th-magnum .cs2-num span{color:rgba(255,255,255,.88);font-family:var(--mg-f)}
.th-magnum .cs2-story{border-bottom:0}
.th-magnum .cs2-chapters,.th-magnum .cs2-toc a{font-family:var(--mg-f)}
.th-magnum .cs2-toc a.on{color:var(--mg-p);border-left-color:var(--mg-p)}
.th-magnum .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--mg-f);color:var(--mg-ink);text-transform:none;letter-spacing:-.02em}
.th-magnum .cs2-big{font-family:var(--mg-f)}
.th-magnum .cs2-big.accent{background:var(--mg-p);color:#fff;border-radius:22px;padding:clamp(24px,3.2vw,46px);max-width:none;box-shadow:10px 10px 0 var(--mg-o)}
.th-magnum .cs2-sol li{border:0;background:#fff;border-radius:18px;box-shadow:0 14px 30px -20px rgba(226,51,107,.5)}
.th-magnum .cs2-sol .dot{background:var(--mg-o)}
.th-magnum .cs2-sol .n{font:900 2rem/1 var(--mg-f);color:var(--mg-p)}
.th-magnum .cs2-res{border-top-color:var(--mg-p)}
.th-magnum .cs2-res b{font-family:var(--mg-f);color:var(--mg-p)}
.th-magnum .cs2-worked{border-top-color:var(--mg-p)}
.th-magnum .cs2-worked li::before{font:900 2rem/1 var(--mg-f);color:var(--mg-o)}
@media (max-width:980px){.th-magnum .th-heroimg>img{width:100%;margin:0}}
.th-magnum .cs2-band{display:none}
.th-elevit .th-heroimg{display:grid;place-items:center}.th-elevit .th-heroimg>img{width:min(340px,78%)!important;max-width:none;margin:0 auto!important;border-radius:30px;transform:rotate(-3deg);box-shadow:0 30px 60px -30px rgba(160,40,110,.55);filter:none}

/* ===== theme: Бепантен «Новорождённый. Инструкция по применению» (pink, navy, sky blue, mono labels) ===== */
.th-bepanthen{--bp-p:#EE5C9A;--bp-n:#25205E;--bp-b:#5CC6EC;--bp-y:#F6A93B;--bp-bg:#FFF4F8;--bp-f:"Inter","Helvetica Neue",Arial,sans-serif;--bp-m:"JetBrains Mono","IBM Plex Mono",ui-monospace,Menlo,monospace;background:var(--bp-bg);color:var(--bp-n)}
.th-bepanthen .cs2-hero{background:var(--bp-p);color:#fff;border-bottom:0}
.th-bepanthen .crumbs,.th-bepanthen .crumbs a{color:rgba(255,255,255,.75)}
.th-bepanthen .cs2-chips li{border-color:#fff;color:#fff;font-family:var(--bp-m);font-size:.78rem;text-transform:uppercase}
.th-bepanthen .cs2-brand{font:900 clamp(2.2rem,4.6vw,4.3rem)/.98 var(--bp-f);color:#fff;text-transform:uppercase;letter-spacing:-.02em;max-width:12ch}
.th-bepanthen .cs2-h1{font:600 clamp(1rem,1.4vw,1.25rem)/1.35 var(--bp-m);text-transform:none;color:var(--bp-n);background:#fff;display:inline-block;padding:8px 12px;max-width:36ch}
.th-bepanthen .cs2-hero .lead{color:#fff;font-family:var(--bp-f)}
.th-bepanthen .btn{color:#fff;border-color:#fff}.th-bepanthen .btn:hover{background:#fff;color:var(--bp-p)}
.th-bepanthen .btn.fill{background:var(--bp-n);border-color:var(--bp-n);color:#fff}.th-bepanthen .btn.fill:hover{background:#fff;border-color:#fff;color:var(--bp-n)}
.th-bepanthen .th-heroimg{display:grid;place-items:center}
.th-bepanthen .th-heroimg>img{width:min(460px,96%);margin:0;border-radius:6px;box-shadow:14px 14px 0 var(--bp-n);transform:rotate(2deg);filter:none}
.th-bepanthen .cs2-story{border-bottom:0}
.th-bepanthen .cs2-chapters,.th-bepanthen .cs2-toc a{font-family:var(--bp-f)}
.th-bepanthen .cs2-toc a.on{color:var(--bp-p);border-left-color:var(--bp-p)}
.th-bepanthen .cs2-k{font:900 clamp(1.8rem,3.2vw,3rem)/1 var(--bp-f);text-transform:uppercase;color:var(--bp-n);letter-spacing:-.02em}
.th-bepanthen .cs2-big{font-family:var(--bp-f)}
.th-bepanthen .cs2-big.accent{background:var(--bp-n);color:#fff;border-radius:4px;padding:clamp(24px,3.2vw,46px);max-width:none;box-shadow:10px 10px 0 var(--bp-b)}
.th-bepanthen .cs2-sol li{border:0;background:#fff;border-left:6px solid var(--bp-p);border-radius:4px}
.th-bepanthen .cs2-sol li:nth-child(even){border-left-color:var(--bp-b)}
.th-bepanthen .cs2-sol .dot{display:none}
.th-bepanthen .cs2-sol .n{font:700 1.4rem/1 var(--bp-m);color:var(--bp-p)}
.th-bepanthen .cs2-res{border-top-color:var(--bp-p)}
.th-bepanthen .cs2-res b{font-family:var(--bp-f);color:var(--bp-p)}
.th-bepanthen .cs2-worked{border-top-color:var(--bp-p)}
.th-bepanthen .cs2-worked li::before{font:700 1.6rem/1 var(--bp-m);color:var(--bp-b)}
.th-bepanthen .car-slide img{background:#f3e3ea}

/* ===== theme: ЕАБР (clean white-grey, EDB blue, cyan→green gradient) ===== */
.th-edb{--eb-b:#2E9AD6;--eb-c:#6AD3F5;--eb-g:#7BE07A;--eb-ink:#14324A;--eb-bg:#F3F5F7;--eb-f:"Montserrat","Inter","Helvetica Neue",Arial,sans-serif;background:var(--eb-bg);color:var(--eb-ink)}
.th-edb .cs2-hero{border-bottom:0;background:#fff}
.th-edb .crumbs,.th-edb .crumbs a{color:rgba(20,50,74,.6)}
.th-edb .cs2-chips li{border-color:var(--eb-b);color:var(--eb-b);font-family:var(--eb-f)}
.th-edb .cs2-brand{font:600 clamp(2.2rem,4.6vw,4.2rem)/1.02 var(--eb-f);color:var(--eb-ink);letter-spacing:-.02em;max-width:13ch;border-left:10px solid var(--eb-b);padding-left:18px}
.th-edb .cs2-h1{font:500 clamp(1.1rem,1.6vw,1.45rem)/1.3 var(--eb-f);text-transform:none;color:var(--eb-b);max-width:32ch}
.th-edb .cs2-hero .lead{font-family:var(--eb-f);color:rgba(20,50,74,.82)}
.th-edb .btn{color:var(--eb-ink);border-color:var(--eb-ink)}.th-edb .btn:hover{background:var(--eb-ink);color:#fff}
.th-edb .btn.fill{background:linear-gradient(90deg,var(--eb-c),var(--eb-g));border-color:transparent;color:var(--eb-ink)}.th-edb .btn.fill:hover{background:var(--eb-b);color:#fff}
.th-edb .th-heroimg{display:grid;place-items:center}
.th-edb .th-heroimg>img{width:118%;max-width:none;margin-left:-6%;border-radius:22px;filter:none;box-shadow:0 0 0 6px #fff,0 0 0 10px var(--eb-c),0 40px 60px -30px rgba(20,50,74,.4)}
.th-edb .cs2-story{border-bottom:0}
.th-edb .cs2-chapters,.th-edb .cs2-toc a{font-family:var(--eb-f)}
.th-edb .cs2-toc a.on{color:var(--eb-b);border-left-color:var(--eb-b)}
.th-edb .cs2-k{font:600 clamp(1.8rem,3.2vw,2.8rem)/1.05 var(--eb-f);color:var(--eb-ink);text-transform:none}
.th-edb .cs2-big.accent{background:linear-gradient(120deg,var(--eb-c),var(--eb-g));color:var(--eb-ink);border-radius:24px;padding:clamp(24px,3.2vw,44px);max-width:none}
.th-edb .cs2-sol li{border:0;background:#fff;border-radius:18px;box-shadow:0 14px 30px -22px rgba(46,154,214,.6)}
.th-edb .cs2-sol .dot{background:linear-gradient(90deg,var(--eb-c),var(--eb-g))}
.th-edb .cs2-sol .n{font:600 1.9rem/1 var(--eb-f);color:var(--eb-b)}
.th-edb .car-slide img{background:#e7ecf0}
@media (max-width:980px){.th-edb .th-heroimg>img{width:100%;margin:0}}

/* ===== theme: Терафлекс Ультра, марафонская листовка (navy, cream star, sepia-gold) ===== */
.th-teraflex{--tf-n:#1F2C6E;--tf-cr:#F7E8C6;--tf-g:#A98557;--tf-b:#3A9BE0;--tf-bg:#FBF6EC;--tf-f:"Oswald","Bebas Neue","Arial Narrow","Inter",sans-serif;--tf-t:"Inter","Helvetica Neue",Arial,sans-serif;background:var(--tf-bg);color:var(--tf-n)}
.th-teraflex .cs2-hero{background:var(--tf-n);color:#fff;border-bottom:0}
.th-teraflex .crumbs,.th-teraflex .crumbs a{color:rgba(255,255,255,.65)}
.th-teraflex .cs2-chips li{border-color:var(--tf-cr);color:var(--tf-cr)}
.th-teraflex .cs2-brand{font:700 clamp(2.4rem,4.8vw,4.4rem)/.98 var(--tf-f);text-transform:uppercase;color:var(--tf-cr);letter-spacing:-.005em;max-width:14ch;font-stretch:condensed}
.th-teraflex .cs2-h1{font:600 clamp(1.1rem,1.6vw,1.45rem)/1.3 var(--tf-t);text-transform:none;color:var(--tf-b);max-width:30ch}
.th-teraflex .cs2-hero .lead{color:rgba(255,255,255,.86);font-family:var(--tf-t)}
.th-teraflex .btn{color:#fff;border-color:#fff}.th-teraflex .btn:hover{background:#fff;color:var(--tf-n)}
.th-teraflex .btn.fill{background:var(--tf-cr);border-color:var(--tf-cr);color:var(--tf-n)}.th-teraflex .btn.fill:hover{background:var(--tf-g);border-color:var(--tf-g);color:#fff}
.th-teraflex .th-heroimg{display:grid;place-items:center}
.th-teraflex .th-heroimg>img{width:min(560px,100%);margin:0;border-radius:4px;transform:rotate(-2deg);box-shadow:14px 14px 0 var(--tf-g),0 40px 60px -30px rgba(0,0,0,.6);filter:none}
.th-teraflex .cs2-story{border-bottom:0}
.th-teraflex .cs2-toc a.on{color:var(--tf-n);border-left-color:var(--tf-g)}
.th-teraflex .cs2-k{font:700 clamp(2rem,3.4vw,3.2rem)/1 var(--tf-f);text-transform:uppercase;color:var(--tf-n)}
.th-teraflex .cs2-big{font-family:var(--tf-t)}
.th-teraflex .cs2-big.accent{background:var(--tf-n);color:var(--tf-cr);border-radius:4px;padding:clamp(24px,3.2vw,46px);max-width:none}
.th-teraflex .cs2-sol li{border:0;border-radius:4px;background:#fff;border-top:4px solid var(--tf-g)}
.th-teraflex .cs2-sol .dot{display:none}
.th-teraflex .cs2-sol .n{font:700 2rem/1 var(--tf-f);color:var(--tf-g)}
.th-teraflex .car-slide img{background:#efe5d2}
.th-teraflex .th-heroimg>img[src*="um-"],.th-teraflex .th-heroimg>img[data-pimg*="um-"]{width:min(420px,88%);aspect-ratio:3/4;object-fit:cover;border-radius:18px;transform:rotate(2deg)}
.th-teraflex .car-slide img[src*="um-"],.th-teraflex .car-slide img[data-pimg*="um-"]{background:var(--tf-n)}
/* photo grid for small sets of vertical photos */
.cs2-pgrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:8px}
.cs2-pgrid figure{margin:0;display:grid;gap:8px;align-content:start}
.cs2-pgrid img{width:100%;aspect-ratio:3/4;object-fit:cover;border-radius:12px;display:block}
.cs2-pgrid .pg0{grid-row:span 2}.cs2-pgrid .pg0 img{aspect-ratio:auto;height:calc(100% - 2.2em)}
.cs2-pgrid figcaption{font-size:.85rem;opacity:.7}
@media (max-width:640px){.cs2-pgrid{grid-template-columns:repeat(2,minmax(0,1fr))}.cs2-pgrid .pg0{grid-column:span 2;grid-row:auto}.cs2-pgrid .pg0 img{aspect-ratio:3/4;height:auto}}
@media (min-width:641px){.cs2-pgrid .pg0{display:flex;flex-direction:column}.cs2-pgrid .pg0 img{flex:1 1 0;min-height:0;height:auto;aspect-ratio:auto}}
.form-consent{font-size:.78rem;opacity:.6;margin-top:10px}.form-consent a{color:inherit;text-decoration:underline}.policy h2{font-size:1.35rem;margin-top:1.6em}
.wrap.prose.policy{max-width:none;display:block}.policy>*{max-width:none}.policy p,.policy ul{margin:0 0 14px}
.policy h2{margin:2em 0 .6em}.policy h2:first-child{margin-top:0}

/* ===== blog ===== */
.post-grid-cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:18px}
.post-card{display:grid;gap:12px;align-content:start;padding:26px 24px;border:1px solid var(--line);border-radius:6px;background:var(--paper);color:inherit;text-decoration:none;transition:border-color .2s,transform .2s}
.post-card:hover{border-color:var(--ink);transform:translateY(-2px)}
.post-card.guide{background:var(--ink);color:var(--paper);border-color:var(--ink)}
.post-card.guide .tags,.post-card.guide .post-card-lead{color:rgba(249,246,244,.7)}
.post-card .ttl{font:400 clamp(1.3rem,1.8vw,1.6rem)/1.15 var(--f-serif);margin:0}
.post-card-lead{font-size:.92rem;color:var(--muted);margin:0;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}
.post-card .more{font-size:.9rem;color:var(--green)}.post-card.guide .more{color:#9fd3b8}
.post-head .wrap{display:block}
.post-meta{display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.88rem;color:var(--muted);margin:18px 0 14px}
.post-h1{font:400 clamp(2rem,4.4vw,3.8rem)/1.05 var(--f-serif);max-width:24ch;text-transform:none;margin:0}
.post-lead{max-width:62ch;margin-top:22px;font-size:clamp(1.05rem,1.4vw,1.25rem)}
.post-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,300px);gap:clamp(32px,6vw,96px);align-items:start}
.post-body{max-width:68ch;display:block}
.post-body>*{margin:0 0 16px}
.post-body h2{font:400 clamp(1.5rem,2.4vw,2.1rem)/1.15 var(--f-serif);margin:44px 0 16px;text-transform:none}
.post-body h2:first-child{margin-top:0}
.post-body ul,.post-body ol{padding-left:1.3em}.post-body li{margin:6px 0}
.post-body a{color:var(--green);text-decoration:underline;text-underline-offset:3px}
.post-table{overflow-x:auto;margin:8px 0 22px}
.post-table table{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px}
.post-table th{text-align:left;font-weight:600;padding:10px 12px 10px 0;border-bottom:1.5px solid var(--ink);vertical-align:bottom}
.post-table td{padding:10px 12px 10px 0;border-bottom:1px solid var(--line);vertical-align:top}
.post-sources{font-size:.85rem;color:var(--muted);border-top:1px solid var(--line);padding-top:16px;margin-top:32px}
.post-aside{position:sticky;top:96px;display:grid;gap:28px}
.post-aside .eyebrow{display:block;margin:0 0 10px;font-size:.78rem}
@media (max-width:900px){.post-grid{grid-template-columns:1fr}.post-aside{position:static}}
.post-h1{font-size:clamp(1.9rem,3.4vw,3.1rem);max-width:32ch}
@media (max-width:900px){.post-grid{grid-template-columns:minmax(0,1fr)}}.post-body{min-width:0}.post-table td{white-space:normal}.post-table td:nth-child(2){white-space:nowrap}

/* ===== living head v3: layers cut from the art itself, nothing drawn on top ===== */
.hx-star,.hx-mouth{position:absolute;max-width:none;display:block;pointer-events:none}
.hx-star{transform-origin:center;animation:hxTwinkle 3.6s ease-in-out infinite}
@keyframes hxTwinkle{0%,100%{opacity:1;transform:scale(1)}45%{opacity:.35;transform:scale(.7)}70%{opacity:1;transform:scale(1.12)}}
.hx-mouth{transform-origin:0% 50%;transition:transform .07s linear}
.hx-eye{position:absolute;overflow:hidden;-webkit-mask-size:100% 100%;mask-size:100% 100%;-webkit-mask-repeat:no-repeat;mask-repeat:no-repeat;transform-origin:50% 55%;transition:transform .09s ease-in}
.hx-white{position:absolute;inset:0;width:100%;height:100%;display:block}
.hx-pupil{position:absolute;max-width:none;display:block;transition:transform .5s cubic-bezier(.2,.7,.2,1)}
.mind-art.blink .hx-eye{transform:scaleY(.04)}
@media (prefers-reduced-motion:reduce){.hx-star{animation:none}}
.page-head.post-head .wrap{display:block}
.page-head.post-head h1.post-h1{max-width:none;font-size:clamp(2rem,4vw,3.6rem)}
.page-head.post-head .lead.post-lead{max-width:none;font-size:clamp(1.05rem,1.4vw,1.3rem)}
/* article body: full width, related links below the text */
.post-grid{grid-template-columns:minmax(0,1fr);gap:56px}
.post-body{max-width:none;font-size:clamp(1.02rem,1.15vw,1.15rem);line-height:1.65}
.post-body h2{font-size:clamp(1.7rem,2.6vw,2.4rem)}
.post-aside{position:static;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr));gap:24px clamp(24px,5vw,80px);border-top:1.5px solid var(--ink);padding-top:28px}
.post-table table{font-size:.98rem}

/* language switcher */
.head-end{display:flex;align-items:center;gap:18px;justify-self:end}
.langs{display:flex;gap:2px;font-size:.85rem;letter-spacing:.04em}
.langs a{padding:6px 7px;border-radius:999px;color:rgba(249,246,244,.6);text-decoration:none}
.langs a:hover{color:var(--paper)}
.langs a[aria-current]{color:var(--paper);box-shadow:inset 0 0 0 1px rgba(249,246,244,.45)}
.head-bar .head-end .cta-btn{justify-self:auto}
@media (max-width:1180px){.head-bar{grid-template-columns:auto 1fr auto}.head-end .cta-btn{display:none}}
/* /en/ and /kz/ landings */
.lg-head .wrap{display:block}.lg-head h1{max-width:20ch}.lg-head .lead{max-width:62ch;margin-top:20px}
.lg-head .btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.lg-facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(220px,100%),1fr));gap:24px}
.lg-fact{display:grid;gap:8px;border-top:1.5px solid var(--ink);padding-top:16px}
.lg-fact b{font:400 clamp(2.4rem,4vw,3.6rem)/1 var(--f-serif);color:var(--green)}
.lg-fact span{color:var(--muted);font-size:.95rem}
.lg-svc li{display:flex;justify-content:space-between;gap:16px}.lg-price{white-space:nowrap;color:var(--green)}
.lg-cases{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(300px,100%),1fr));gap:18px}
.lg-case{display:grid;gap:8px;align-content:start;padding:24px;border:1px solid var(--line);border-radius:6px;text-decoration:none;color:inherit;transition:border-color .2s}
.lg-case:hover{border-color:var(--ink)}
.lg-case b{font:400 clamp(2rem,3vw,2.8rem)/1 var(--f-serif);color:var(--green)}
.lg-case .cap{color:var(--muted);font-size:.9rem}.lg-case .ttl{margin-top:8px}
.lg-contacts{display:grid;gap:12px;font-size:1.05rem}.lg-contacts a{color:inherit}
/* case theme: Diaverum (orange, deep green, sunflower yellow) */
.th-diaverum{--dv-o:#E06A2C;--dv-g:#1D3F36;--dv-g2:#2C5139;--dv-y:#F2B544;--dv-p:#F6D9CC;--dv-f:"Manrope","Inter","Helvetica Neue",Arial,sans-serif;background:#FBF6EE;color:var(--dv-g)}
.th-diaverum .cs2-hero{border-bottom:0;background:var(--dv-y)}
.th-diaverum .crumbs,.th-diaverum .crumbs a{color:rgba(29,63,54,.7)}
.th-diaverum .cs2-chips li{border-color:var(--dv-g);color:var(--dv-g);font-family:var(--dv-f)}
.th-diaverum .cs2-brand{font:800 clamp(2.1rem,4.4vw,4rem)/1.02 var(--dv-f);color:var(--dv-g);letter-spacing:-.02em;max-width:12ch}
.th-diaverum .cs2-h1{font:700 clamp(1.1rem,1.6vw,1.45rem)/1.3 var(--dv-f);text-transform:none;color:var(--dv-o);max-width:32ch}
.th-diaverum .cs2-hero .lead{font-family:var(--dv-f);color:rgba(29,63,54,.88)}
.th-diaverum .btn{color:var(--dv-g);border-color:var(--dv-g)}.th-diaverum .btn:hover{background:var(--dv-g);color:#fff}
.th-diaverum .btn.fill{background:var(--dv-o);border-color:var(--dv-o);color:#fff}.th-diaverum .btn.fill:hover{background:var(--dv-g);border-color:var(--dv-g)}
.th-diaverum .th-heroimg{display:grid;place-items:center}
.th-diaverum .th-heroimg>img{width:118%;max-width:none;margin-left:-6%;border-radius:18px;filter:none;box-shadow:12px 12px 0 var(--dv-g),0 40px 60px -30px rgba(29,63,54,.45)}
.th-diaverum .cs2-story{border-bottom:0}
.th-diaverum .cs2-chapters,.th-diaverum .cs2-toc a{font-family:var(--dv-f)}
.th-diaverum .cs2-toc a.on{color:var(--dv-o);border-left-color:var(--dv-o)}
.th-diaverum .cs2-k{font:800 clamp(1.8rem,3.2vw,2.8rem)/1.05 var(--dv-f);color:var(--dv-g);text-transform:none}
.th-diaverum .cs2-big.accent{background:var(--dv-g2);color:#fff;border-radius:22px;padding:clamp(24px,3.2vw,44px);max-width:none}
.th-diaverum .cs2-sol li{border:0;background:#fff;border-radius:16px;box-shadow:0 14px 30px -22px rgba(224,106,44,.7)}
.th-diaverum .cs2-sol .dot{background:var(--dv-o)}
.th-diaverum .cs2-sol .n{font:800 1.9rem/1 var(--dv-f);color:var(--dv-o)}
.th-diaverum .car-slide img{background:#efe6da}
.th-diaverum .cs2-big.accent{font-family:var(--dv-f);font-weight:600}
@media (max-width:900px){.th-diaverum .th-heroimg>img{width:100%;margin-left:0;box-shadow:8px 8px 0 var(--dv-g)}}
.site-head .logo .mark.wordmark{height:36px;width:auto}
@media (max-width:900px){.site-head .logo .mark.wordmark{height:28px}}
@media (max-width:480px){.site-head .logo .mark.wordmark{height:22px}.site-head .menu-btn{padding-left:16px;padding-right:16px}}
@media (max-width:480px){.head-bar{gap:12px}.head-end{gap:8px}.h-left{min-width:0}.h-left>*{min-width:0;overflow-wrap:anywhere}}
/* case theme: personal website in Windows 95 style */
.th-win95{--w-teal:#008080;--w-gray:#C0C0C0;--w-navy:#000080;--w-term:#0B140D;--w-green:#7CF08A;--w-f:"Ubuntu Mono",ui-monospace,Menlo,monospace;--w-ui:"Inter","Helvetica Neue",Arial,sans-serif;background:#D4D0C8;color:#111}
.th-win95 .cs2-hero{background:var(--w-term);color:#CFEFD3;border-bottom:4px solid var(--w-gray)}
.th-win95 .crumbs,.th-win95 .crumbs a{color:rgba(124,240,138,.7)}
.th-win95 .cs2-chips li{border-color:var(--w-green);color:var(--w-green);font-family:var(--w-f);border-radius:0}
.th-win95 .cs2-brand{font:700 clamp(1.3rem,2.2vw,1.9rem)/1.2 var(--w-f);color:var(--w-green);letter-spacing:0}
.th-win95 .cs2-brand::after{content:"_";animation:w95blink 1s steps(1) infinite}
@keyframes w95blink{50%{opacity:0}}
.th-win95 .cs2-h1{font:700 clamp(1.5rem,2.6vw,2.4rem)/1.12 var(--w-f);text-transform:uppercase;color:#E9FFEC;max-width:30ch}
.th-win95 .cs2-hero .lead{font-family:var(--w-f);color:rgba(207,239,211,.88);font-size:1.05rem}
.th-win95 .btn{border-radius:0;font-family:var(--w-ui);font-weight:700;background:var(--w-gray);color:#111;border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:inset -1px -1px 0 #808080,inset 1px 1px 0 #dfdfdf}
.th-win95 .btn:hover,.th-win95 .btn.fill:hover{background:#d8d8d8;color:#111}
.th-win95 .btn.fill{background:var(--w-gray);color:#111;outline:1px dotted #111;outline-offset:-6px}
.th-win95 .cs2-nums .cs2-num b,.th-win95 .cs2-hero .cs2-num b{font-family:var(--w-f);color:var(--w-green)}
.th-win95 .th-heroimg{display:grid;place-items:center}
.th-win95 .th-heroimg>img{width:122%;max-width:none;margin-left:-4%;border-radius:0;filter:none;border:3px solid;border-color:#fff #404040 #404040 #fff;box-shadow:0 30px 60px -30px rgba(0,0,0,.8)}
.th-win95 .cs2-story{border-bottom:0}
.th-win95 .cs2-chapters,.th-win95 .cs2-toc a{font-family:var(--w-ui)}
.th-win95 .cs2-toc a.on{color:var(--w-navy);border-left-color:var(--w-navy)}
.th-win95 .cs2-k{font:700 clamp(1.4rem,2.4vw,2rem)/1.1 var(--w-ui);text-transform:none;color:#fff;background:linear-gradient(90deg,var(--w-navy),#1084D0);padding:8px 14px;display:block}
.th-win95 .cs2-big{background:var(--w-gray);border:2px solid;border-color:#fff #404040 #404040 #fff;padding:clamp(18px,2.4vw,30px);font-family:var(--w-ui)}
.th-win95 .cs2-big.accent{background:var(--w-term);color:var(--w-green);font-family:var(--w-f);border-color:#404040 #fff #fff #404040}
.th-win95 .cs2-sol li{border-radius:0;background:var(--w-gray);border:2px solid;border-color:#fff #404040 #404040 #fff;box-shadow:none}
.th-win95 .cs2-sol .dot{background:var(--w-navy);border-radius:0}
.th-win95 .cs2-sol .n{font:700 1.7rem/1 var(--w-f);color:var(--w-navy)}
.th-win95 .cs2-res li,.th-win95 .cs2-worked li{border-radius:0}
.th-win95 .car-slide img{background:var(--w-teal)}
@media (max-width:900px){.th-win95 .th-heroimg>img{width:100%;margin-left:0}}
/* about: team portraits */
.card.tm{display:grid;align-content:start;gap:10px}
.card.tm .tm-photo{width:100%;height:auto;aspect-ratio:4/5;object-fit:cover;border-radius:14px;display:block;margin-bottom:8px;background:#E8E2DC}
.card.tm .tm-ph{display:grid;place-items:center;font-family:"Playfair Display",serif;font-size:clamp(2.4rem,4vw,3.4rem);line-height:1;color:#3E7C5A;letter-spacing:.04em}
@media (max-width:900px){#team .grid.four{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 16px}#team .card.tm h3{font-size:1rem}#team .card.tm p{font-size:.88rem}}
/* case: client quote with the recommendation letter */
.cs2-quote.has-letter .cs2-qbody{display:grid;grid-template-columns:minmax(0,1fr) clamp(150px,18vw,220px);gap:clamp(20px,3vw,40px);align-items:start;width:100%}
.cs2-letter{all:unset;cursor:zoom-in;display:grid;gap:8px;justify-items:center;font-size:.82rem;color:var(--muted,#6b6461);text-align:center}
.cs2-letter img{width:100%;height:auto;display:block;border-radius:6px;background:#fff;box-shadow:0 1px 0 rgba(0,0,0,.06),0 18px 34px -18px rgba(0,0,0,.45);transition:transform .2s}
.cs2-letter:hover img,.cs2-letter:focus-visible img{transform:translateY(-3px) rotate(-1deg)}
.cs2-letter:focus-visible{outline:2px solid currentColor;outline-offset:4px}
@media (max-width:640px){.cs2-quote.has-letter .cs2-qbody{grid-template-columns:1fr}.cs2-letter{max-width:200px}}
.zoom-ov{position:fixed;inset:0;z-index:100;background:rgba(15,14,14,.86);display:grid;place-items:center;padding:16px;cursor:zoom-out}
.zoom-ov img{max-width:min(92vw,900px);max-height:92vh;width:auto;height:auto;border-radius:4px;background:#fff}
.zoom-ov button{position:absolute;top:14px;right:14px;width:44px;height:44px;border-radius:50%;border:1px solid rgba(255,255,255,.5);background:transparent;color:#fff;font-size:1.4rem;cursor:pointer}
@media (max-width:760px){.big-facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 16px}.big-facts span{max-width:16ch}}
/* mobile menu: services list opens on tap; the menu scrolls on its own */
.sub-all{display:none}
@media (max-width:1180px){
  .nav.open{max-height:calc(100dvh - 84px);overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
  .has-sub>a{display:flex;justify-content:space-between;align-items:center}
  .has-sub>a::after{content:"";width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translateY(-3px);transition:transform .2s;margin-right:6px}
  .has-sub.open>a::after{transform:rotate(-135deg) translateY(-3px)}
  .has-sub .sub{display:none}
  .has-sub.open .sub{display:grid}
  .sub-all{display:block}
}
html.menu-open,html.menu-open body{overflow:hidden}
/* about: numbers centred and sized to fit on phones */
@media (max-width:760px){.big-facts{grid-template-columns:repeat(2,minmax(0,1fr));justify-items:center;justify-content:stretch}.big-facts div{justify-items:center;text-align:center}.big-facts b{font-size:clamp(1.9rem,8.6vw,2.6rem)}}
/* about: team and awards as swipe sliders on phones */
@media (max-width:900px){
  #team .grid.four,.aw-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:16px;margin-inline:calc(var(--gutter,16px)*-1);padding-inline:var(--gutter,16px);scroll-padding-inline:var(--gutter,16px);scrollbar-width:none;-webkit-overflow-scrolling:touch}
  #team .grid.four::-webkit-scrollbar,.aw-grid::-webkit-scrollbar{display:none}
  #team .grid.four>.card{flex:0 0 72%;scroll-snap-align:start}
  .aw-grid>.aw-card{flex:0 0 72%;scroll-snap-align:start}
  .slide-dots{display:flex;gap:8px;justify-content:center;margin-top:16px}
  .slide-dots i{width:8px;height:8px;border-radius:50%;background:currentColor;opacity:.25;transition:opacity .2s,transform .2s}
  .slide-dots i.on{opacity:.9;transform:scale(1.2)}
}
@media (min-width:901px){.slide-dots{display:none}}
