@font-face{font-family:Unbounded;src:url('/assets/fonts/unbounded-latin.woff2') format('woff2');font-display:swap;font-weight:200 900;unicode-range:U+0000-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF}
@font-face{font-family:Unbounded;src:url('/assets/fonts/unbounded-cyrillic.woff2') format('woff2');font-display:swap;font-weight:200 900;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Unbounded;src:url('/assets/fonts/unbounded-cyrillic-ext.woff2') format('woff2');font-display:swap;font-weight:200 900;unicode-range:U+0460-052F,U+1C80-1C8F,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:Onest;src:url('/assets/fonts/onest-latin.woff2') format('woff2');font-display:swap;font-weight:100 900;unicode-range:U+0000-036F,U+1E00-1EFF,U+2000-206F,U+20A0-20CF}
@font-face{font-family:Onest;src:url('/assets/fonts/onest-cyrillic.woff2') format('woff2');font-display:swap;font-weight:100 900;unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:Onest;src:url('/assets/fonts/onest-cyrillic-ext.woff2') format('woff2');font-display:swap;font-weight:100 900;unicode-range:U+0460-052F,U+1C80-1C8F,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
:root{--bg:#f4f4f0;--fg:#111;--muted:#7b7b73;--line:#c9c9c1;--pad:clamp(20px,3.8vw,64px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg);color:var(--fg)}body{margin:0;font-family:Onest,Arial,sans-serif;background:var(--bg);color:var(--fg);overflow-x:hidden}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit;color:inherit}.grain{position:fixed;inset:0;pointer-events:none;opacity:.055;z-index:50;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.7'/%3E%3C/svg%3E")}
.site-header{height:92px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(244,244,240,.92);backdrop-filter:blur(12px);z-index:20}.brand img{display:block;width:74px;height:auto;filter:brightness(0)}.site-header nav{display:flex;gap:28px;align-items:center;font-size:14px}.site-header nav a{position:relative}.site-header nav a:not(.nav-cta):after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:#111;transition:right .25s ease}.site-header nav a:hover:after{right:0}.nav-cta{border:1px solid #111;padding:11px 16px;border-radius:999px;transition:.2s}.nav-cta:hover{background:#111;color:#fff}
.hero{min-height:calc(100svh - 92px);padding:34px var(--pad) 0;display:flex;flex-direction:column}.hero-kicker{display:flex;justify-content:space-between;text-transform:uppercase;letter-spacing:.14em;font-size:11px}.hero-title{font-family:Unbounded,sans-serif;font-size:clamp(64px,10.6vw,190px);letter-spacing:-.075em;line-height:.79;font-weight:760;margin:clamp(70px,10vh,130px) 0 42px;text-transform:uppercase}.hero-title .line{display:block;overflow:hidden}.hero-title .line>span{display:block;transform:translateY(112%);animation:heroIn 1.05s cubic-bezier(.16,1,.3,1) forwards}.hero-title .line:nth-child(2)>span{animation-delay:.12s}.hero-bottom{margin-top:auto;display:grid;grid-template-columns:minmax(260px,520px) auto;gap:40px;align-items:end;border-top:1px solid var(--line);padding:24px 0 34px}.hero-bottom p{font-size:clamp(18px,2vw,27px);line-height:1.35;margin:0}.round-link{justify-self:end;width:122px;height:122px;border:1px solid #111;border-radius:50%;display:flex;flex-direction:column;justify-content:space-between;padding:20px;font-size:13px;transition:transform .25s ease,background .25s,color .25s}.round-link b{align-self:flex-end;font-size:24px}.round-link:hover{background:#111;color:#fff;transform:rotate(-3deg)}.ticker{margin:0 calc(var(--pad)*-1);overflow:hidden;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;font-family:Unbounded,sans-serif;font-size:12px;letter-spacing:.08em}.ticker div{width:max-content;animation:ticker 24s linear infinite}
.section-label{text-transform:uppercase;letter-spacing:.16em;font-size:11px;color:var(--muted)}.work,.process,.request{padding:120px var(--pad);border-bottom:1px solid var(--line)}.work-grid{display:grid;grid-template-columns:minmax(280px,.85fr) 1.35fr;gap:clamp(40px,8vw,140px);margin-top:70px}.work-intro h2,.request-copy h2{font-family:Unbounded,sans-serif;font-size:clamp(42px,6vw,92px);letter-spacing:-.06em;line-height:.92;margin:0 0 30px}.work-intro p,.request-copy p{font-size:18px;line-height:1.55;max-width:520px}.services{border-top:1px solid #111}.service{display:grid;grid-template-columns:54px 1fr 1.2fr;gap:24px;padding:26px 0;border-bottom:1px solid var(--line);align-items:start}.service span{font-size:12px;color:var(--muted)}.service h3{font-family:Unbounded,sans-serif;font-size:22px;margin:0}.service p{margin:0;line-height:1.55;color:#444}
.process-track{display:grid;grid-template-columns:repeat(4,1fr);gap:0;margin-top:70px;border-top:1px solid #111;border-left:1px solid var(--line)}.step{min-height:330px;padding:24px;border-right:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;flex-direction:column}.step b{font-family:Unbounded,sans-serif;font-size:11px}.step h3{font-family:Unbounded,sans-serif;font-size:28px;margin:auto 0 14px}.step p{margin:0;color:#4e4e49;line-height:1.5}
.request{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,150px);background:#111;color:#f4f4f0}.request .section-label{color:#92928a}.request-copy p{color:#c9c9c1}.project-form{display:grid;grid-template-columns:1fr 1fr;gap:34px 22px;align-content:start}.field{display:flex;flex-direction:column;gap:12px}.field.full,.form-foot.full,.form-status.full{grid-column:1/-1}.field label{font-size:12px;text-transform:uppercase;letter-spacing:.11em}.field label span{color:#7f7f79;text-transform:none;letter-spacing:0}.field input,.field textarea{border:0;border-bottom:1px solid #5a5a55;background:transparent;color:#fff;border-radius:0;padding:14px 0 16px;outline:none;resize:vertical}.field textarea{min-height:170px}.field input:focus,.field textarea:focus{border-color:#fff}.field input::placeholder,.field textarea::placeholder{color:#777771}.form-foot{display:flex;justify-content:space-between;gap:24px;align-items:end;border-top:1px solid #3a3a36;padding-top:24px}.form-foot p{font-size:12px;line-height:1.5;color:#8d8d85;max-width:360px;margin:0}.form-foot button{border:1px solid #fff;background:#fff;color:#111;border-radius:999px;padding:16px 20px;display:flex;gap:30px;cursor:pointer;transition:.2s}.form-foot button:hover{background:transparent;color:#fff}.form-foot button:disabled{opacity:.55;cursor:wait}.form-status{min-height:22px;font-size:13px}.form-status.ok{color:#b8ffb5}.form-status.err{color:#ffb5b5}.hp{position:absolute;left:-9999px}
footer{padding:44px var(--pad) 34px;display:grid;grid-template-columns:1fr 1fr auto;align-items:end;gap:40px}.footer-brand{font-family:Unbounded,sans-serif;font-size:clamp(46px,8vw,120px);font-weight:780;letter-spacing:-.07em;line-height:.8}.footer-meta{display:flex;flex-direction:column;gap:8px;align-items:flex-end;font-size:12px;color:var(--muted)}footer p{margin:0;line-height:1.4}
.reveal{opacity:0;transform:translateY(24px);transition:opacity .7s ease,transform .7s cubic-bezier(.16,1,.3,1)}.reveal.in{opacity:1;transform:none}@keyframes heroIn{to{transform:none}}@keyframes ticker{to{transform:translateX(-50%)}}
@media(max-width:900px){.site-header{height:76px}.site-header nav a:not(.nav-cta){display:none}.hero{min-height:calc(100svh - 76px)}.hero-title{font-size:clamp(52px,14vw,105px);margin-top:90px}.hero-bottom{grid-template-columns:1fr auto}.work-grid,.request{grid-template-columns:1fr}.process-track{grid-template-columns:1fr 1fr}.request-copy{margin-bottom:10px}.service{grid-template-columns:40px 1fr}.service p{grid-column:2}.project-form{grid-template-columns:1fr}.field{grid-column:1/-1}footer{grid-template-columns:1fr auto}.footer-brand{grid-column:1/-1}}
@media(max-width:560px){:root{--pad:18px}.site-header nav{gap:12px}.nav-cta{padding:9px 12px}.hero{padding-top:22px}.hero-kicker span:last-child{display:none}.hero-title{font-size:14.6vw;line-height:.86;margin:100px 0 28px}.hero-bottom{grid-template-columns:1fr;align-items:start}.round-link{justify-self:start;width:98px;height:98px;padding:16px}.work,.process,.request{padding-top:88px;padding-bottom:88px}.work-grid{margin-top:48px}.process-track{grid-template-columns:1fr}.step{min-height:230px}.form-foot{align-items:flex-start;flex-direction:column}.form-foot button{width:100%;justify-content:space-between}footer{grid-template-columns:1fr}.footer-meta{align-items:flex-start}.footer-brand{font-size:20vw}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.hero-title .line>span{animation:none;transform:none}.ticker div{animation:none}.reveal{opacity:1;transform:none;transition:none}}
/* 2026-10-05: cleaner, borderless public treatment */
.site-header{border-bottom:0;box-shadow:0 10px 34px rgba(0,0,0,.035)}
.nav-cta{border:0;background:#111;color:#fff;padding:12px 17px}.nav-cta:hover{background:#2b2b2b}
.hero-bottom{border-top:0;padding-top:0}.round-link{border:0;background:#111;color:#fff}.round-link:hover{background:#2b2b2b}
.ticker{border:0;background:#111;color:#f4f4f0;padding:13px 0}
.work,.process,.request{border-bottom:0}.services{border-top:0;display:grid;gap:10px}.service{border-bottom:0;background:#e9e9e3;padding:24px;border-radius:12px}
.process-track{border:0;gap:10px}.step{border:0;background:#e9e9e3;border-radius:12px}
.field input,.field textarea{border:0;background:#1c1c1c;border-radius:10px;padding:15px 16px}.field input:focus,.field textarea:focus{outline:2px solid #f4f4f0;outline-offset:2px}
.form-foot{border-top:0;padding-top:8px}.form-foot button{border:0}.form-foot button:hover{background:#d9d9d2;color:#111}
/* 2026-10-05: multilingual header + restrained motion */
.site-header{background:rgba(244,244,240,.68);backdrop-filter:blur(18px) saturate(1.12);-webkit-backdrop-filter:blur(18px) saturate(1.12);box-shadow:0 8px 28px rgba(0,0,0,.018);transition:background .28s ease,box-shadow .28s ease,transform .28s ease}
.site-header.scrolled{background:rgba(244,244,240,.82);box-shadow:0 10px 32px rgba(0,0,0,.035)}
.header-right{display:flex;align-items:center;gap:18px}.lang-switch{display:flex;align-items:center;gap:3px;background:rgba(17,17,17,.055);border-radius:999px;padding:4px}.lang-link{font-family:Onest,Arial,sans-serif;font-size:10px;letter-spacing:.09em;padding:7px 8px;border-radius:999px;opacity:.48;transition:opacity .2s ease,background .2s ease,color .2s ease,transform .2s ease}.lang-link:hover{opacity:1;transform:translateY(-1px)}.lang-link.active{background:#111;color:#f4f4f0;opacity:1}
.hero-title{will-change:transform;transition:transform .12s linear}.round-link{will-change:transform}.service,.step{transition:transform .32s cubic-bezier(.16,1,.3,1),background .32s ease,box-shadow .32s ease}.service:hover,.step:hover{transform:translateY(-5px);background:#e4e4dd;box-shadow:0 18px 40px rgba(0,0,0,.055)}
.reveal{transition-duration:.82s}.services .service:nth-child(2),.process-track .step:nth-child(2){transition-delay:.05s}.services .service:nth-child(3),.process-track .step:nth-child(3){transition-delay:.1s}.process-track .step:nth-child(4){transition-delay:.15s}
@media(max-width:900px){.header-right{gap:10px}.site-header nav{gap:10px}.lang-switch{padding:3px}.lang-link{padding:6px 7px}.site-header nav a:not(.nav-cta){display:none}}
@media(max-width:620px){.site-header{padding-left:var(--pad);padding-right:var(--pad)}.brand img{width:66px}.header-right{gap:7px}.nav-cta{font-size:12px;padding:9px 11px}.lang-link{font-size:9px;padding:6px}.lang-switch{gap:1px}}
@media(max-width:430px){.nav-cta{display:none}.header-right{gap:0}}
@media(prefers-reduced-motion:reduce){.hero-title,.round-link,.service,.step{transform:none!important;transition:none!important}}
/* Cyrillic typography + calmer capability strip */
.ticker{background:transparent;color:#111;padding:26px 0 24px;font-size:clamp(15px,1.35vw,21px);letter-spacing:.025em}.ticker div{animation-duration:34s;font-weight:520}
html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{font-size:clamp(54px,9vw,158px);letter-spacing:-.057em;line-height:.84}
html[lang="ru"] .hero-kicker,html[lang="uk"] .hero-kicker{letter-spacing:.105em}
@media(max-width:560px){html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{font-size:12.7vw;line-height:.9;letter-spacing:-.05em}.ticker{padding:20px 0;font-size:13px}}
/* 2026-10-05: Cyrillic diacritics + genuinely seamless ticker */
html[lang="ru"] .hero-title .line,html[lang="uk"] .hero-title .line{padding-top:.16em;margin-top:-.16em}
.ticker{white-space:nowrap}.ticker .ticker-track{display:flex;width:max-content;animation:tickerLoop 34s linear infinite;will-change:transform}.ticker .ticker-track>span{display:block;flex:none}.ticker>div:not(.ticker-track){animation:none}
@keyframes tickerLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}
@media(prefers-reduced-motion:reduce){.ticker .ticker-track{animation:none}}
/* 2026-10-05: never clip Cyrillic breve/diacritics in the hero */
html[lang="ru"] .hero-title .line,html[lang="uk"] .hero-title .line{overflow:visible;padding-top:.24em;margin-top:-.24em}
html[lang="ru"] .hero-title .line>span,html[lang="uk"] .hero-title .line>span{transform:none;animation:none}
html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{line-height:.96}
@media(max-width:560px){html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{line-height:1}}
/* 2026-10-05: extra breathing room for Cyrillic breve/diacritics */
html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{line-height:1.12;padding-top:.28em}
html[lang="ru"] .hero-title .line,html[lang="uk"] .hero-title .line{overflow:visible!important;padding-top:.34em;margin-top:0}
html[lang="ru"] .hero-title .line+ .line,html[lang="uk"] .hero-title .line+ .line{padding-top:.12em}
@media(max-width:560px){html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{line-height:1.14;padding-top:.32em}}
/* Managed website plan + contract draft */
.plan{padding:120px var(--pad);background:#e7e7e0}.plan-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(50px,9vw,150px);margin-top:64px}.plan-copy h2{font-family:Unbounded,sans-serif;font-size:clamp(42px,6vw,90px);line-height:.94;letter-spacing:-.06em;margin:0 0 26px}.plan-copy p{font-size:18px;line-height:1.55;max-width:520px}.plan-card{background:#111;color:#f4f4f0;border-radius:18px;padding:clamp(24px,4vw,46px);display:grid;gap:28px}.plan-price{display:flex;align-items:end;gap:14px}.plan-price strong{font-family:Unbounded,sans-serif;font-size:clamp(56px,7vw,100px);letter-spacing:-.07em;line-height:.9}.plan-price span{padding-bottom:10px;color:#a7a7a0}.plan-card ul{list-style:none;padding:0;margin:0;display:grid;gap:10px}.plan-card li{padding:12px 0}.plan-card li:before{content:'✓';margin-right:12px}.plan-business{color:#b9b9b2;font-size:13px;line-height:1.5}.plan-actions{display:flex;flex-wrap:wrap;gap:10px}.plan-actions a{background:#f4f4f0;color:#111;border-radius:999px;padding:13px 17px;font-size:13px}.plan-actions .plan-terms{background:#242424;color:#f4f4f0}.checks{display:grid;gap:10px}.checks label{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.4;color:#c2c2bb}.checks input{margin-top:2px}.checks a{font-size:11px;color:#8d8d85;text-decoration:underline;width:max-content}.legal-page{max-width:900px;margin:0 auto;padding:70px var(--pad) 110px}.legal-back{display:inline-block;margin-bottom:70px}.legal-page h1{font-family:Unbounded,sans-serif;font-size:clamp(42px,7vw,84px);letter-spacing:-.06em;line-height:.95;margin:20px 0 30px}.legal-note{max-width:620px;color:var(--muted);font-size:14px}.legal-page ol{margin:50px 0;padding-left:24px;display:grid;gap:18px;font-size:18px;line-height:1.5}.legal-version{font-size:11px;color:var(--muted)}
@media(max-width:900px){.plan-grid{grid-template-columns:1fr}.plan{padding-top:88px;padding-bottom:88px}}
/* 2026-10-05: keep Cyrillic diacritics visible without adding empty space above hero */
html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{padding-top:0!important;margin-top:clamp(54px,7vh,92px)!important;line-height:1.06}
html[lang="ru"] .hero-title .line,html[lang="uk"] .hero-title .line{overflow:visible!important;padding-top:.22em;margin-top:-.12em}
html[lang="ru"] .hero-title .line+.line,html[lang="uk"] .hero-title .line+.line{padding-top:.16em;margin-top:-.08em}
@media(max-width:560px){html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{margin-top:62px!important;line-height:1.08;padding-top:0!important}}
/* 2026-10-05: RU/UK hero uses exactly the same outer spacing as EN */
html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{margin:clamp(70px,10vh,130px) 0 42px!important;padding-top:0!important}
html[lang="ru"] .hero-title .line,html[lang="uk"] .hero-title .line{overflow:visible!important;padding-top:.20em;margin-top:-.12em}
html[lang="ru"] .hero-title .line+.line,html[lang="uk"] .hero-title .line+.line{padding-top:.14em;margin-top:-.08em}
@media(max-width:560px){html[lang="ru"] .hero-title,html[lang="uk"] .hero-title{margin:100px 0 28px!important;padding-top:0!important}}
/* 2026-10-06: responsive public pricing + mobile/tablet polish */
.price-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;align-content:start}.price-option{background:#111;color:#f4f4f0;border-radius:18px;padding:clamp(24px,3vw,38px);min-height:180px;display:flex;align-items:flex-end}.price-option-year{background:#242424}.price-options .plan-price{width:100%;display:flex;align-items:flex-end;justify-content:space-between;gap:16px}.price-options .plan-price strong{font-family:Unbounded,sans-serif;font-size:clamp(44px,5vw,76px);letter-spacing:-.07em;line-height:.9;white-space:nowrap}.price-options .plan-price span{padding-bottom:7px;color:#aaa;font-size:13px;white-space:nowrap}.plan-details{grid-column:1/-1;background:#111;color:#f4f4f0;border-radius:18px;padding:clamp(24px,3vw,38px);display:grid;grid-template-columns:1fr auto;gap:28px;align-items:end}.plan-details ul{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}.plan-details li{padding:8px 0}.plan-details li:before{content:'✓';margin-right:10px}.plan-details .plan-actions{align-self:end}.plan-details .plan-actions a{display:inline-flex;background:#f4f4f0;color:#111;border-radius:999px;padding:13px 18px;font-size:13px;white-space:nowrap}.checks a{display:none!important}

@media(max-width:1100px){
  :root{--pad:32px}.site-header{height:78px}.hero{min-height:calc(100svh - 78px)}.hero-title{font-size:clamp(58px,11.5vw,120px)}
  .work,.process,.request,.plan{padding-top:96px;padding-bottom:96px}.plan-grid{gap:56px}.work-grid{gap:56px}.request{gap:60px}.process-track{grid-template-columns:1fr 1fr}.step{min-height:260px}
  .price-options .plan-price{display:grid;gap:9px}.price-options .plan-price span{padding-bottom:0}
}
@media(max-width:820px){
  :root{--pad:24px}.site-header{height:72px}.brand img{width:68px}.lang-switch{max-width:210px;overflow-x:auto;scrollbar-width:none}.site-header nav .nav-cta{padding:9px 12px;font-size:12px}
  .hero{min-height:auto;padding-bottom:40px}.hero-title{font-size:clamp(52px,13vw,92px);margin-top:72px}.hero-bottom{grid-template-columns:1fr auto;gap:28px}
  .work-grid,.plan-grid,.request{grid-template-columns:1fr}.work-grid,.plan-grid{margin-top:50px}.service{grid-template-columns:36px 1fr}.service p{grid-column:2}.request-copy{max-width:680px}.project-form{grid-template-columns:1fr}.field{grid-column:1/-1}
  .plan-details{grid-template-columns:1fr}.plan-details .plan-actions{justify-self:start}.plan-details ul{grid-template-columns:1fr 1fr}
  footer{grid-template-columns:1fr auto}.footer-brand{grid-column:1/-1}
}
@media(max-width:600px){
  :root{--pad:18px}.site-header{height:66px}.header-right{gap:6px}.brand img{width:62px}.lang-switch{max-width:160px}.lang-link{padding:5px;font-size:9px}.nav-cta{display:none}
  .hero{padding-top:18px}.hero-kicker{font-size:9px;gap:12px}.hero-kicker span:last-child{display:none}.hero-title{font-size:14.2vw;line-height:.88;margin:68px 0 30px}.hero-bottom{grid-template-columns:1fr;gap:24px;padding-bottom:28px}.hero-bottom p{font-size:18px}.round-link{width:92px;height:92px;padding:14px}
  .work,.process,.request,.plan{padding-top:74px;padding-bottom:74px}.work-grid,.plan-grid{margin-top:38px}.work-intro h2,.request-copy h2,.plan-copy h2{font-size:clamp(38px,11vw,58px)}
  .services{gap:8px}.service{padding:18px;grid-template-columns:28px 1fr;gap:16px}.service h3{font-size:19px}.service p{font-size:14px}.process-track{grid-template-columns:1fr;margin-top:42px}.step{min-height:200px;padding:20px}.step h3{font-size:24px}
  .price-options{grid-template-columns:1fr;gap:10px}.price-option{min-height:135px;padding:22px}.price-options .plan-price{display:flex}.price-options .plan-price strong{font-size:clamp(48px,15vw,68px)}.plan-details{grid-column:1;padding:22px}.plan-details ul{grid-template-columns:1fr}.plan-details .plan-actions,.plan-details .plan-actions a{width:100%}.plan-details .plan-actions a{justify-content:center}
  .request{gap:36px}.project-form{gap:28px}.field textarea{min-height:150px}.form-foot{align-items:stretch;flex-direction:column}.form-foot button{width:100%;justify-content:space-between}.checks label{font-size:11px}
  footer{grid-template-columns:1fr;gap:26px;padding-top:54px;padding-bottom:38px}.footer-meta{align-items:flex-start}.footer-brand{font-size:19vw}
}
@media(max-width:390px){
  :root{--pad:15px}.site-header{height:62px}.brand img{width:56px}.lang-switch{max-width:145px}.hero-title{font-size:13.7vw;margin-top:58px}.hero-bottom p{font-size:16px}.ticker{font-size:11px}.price-option{min-height:122px}.price-options .plan-price strong{font-size:13vw}.price-options .plan-price span{font-size:11px}.work,.process,.request,.plan{padding-top:64px;padding-bottom:64px}
}
/* 2026-10-06: portfolio reel + project transition */
.portfolio{padding:118px 0 110px;background:#f4f4f0;overflow:hidden}.portfolio>.section-label,.portfolio-head,.portfolio-cta{margin-left:var(--pad);margin-right:var(--pad)}.portfolio-head{margin-top:52px;margin-bottom:48px}.portfolio-head h2{font-family:Unbounded,sans-serif;font-size:clamp(42px,6.5vw,96px);line-height:.93;letter-spacing:-.065em;margin:0;max-width:980px}.portfolio-viewport{width:100%;overflow:hidden}.portfolio-track{display:flex;gap:18px;width:max-content;padding:0 var(--pad);animation:portfolioLoop 38s linear infinite;will-change:transform}.portfolio-viewport:hover .portfolio-track{animation-play-state:paused}.portfolio-shot{margin:0;flex:none;width:clamp(290px,36vw,610px);height:clamp(250px,34vw,520px);border-radius:20px;overflow:hidden;background:#111}.portfolio-shot.shot-tall{width:clamp(220px,24vw,390px)}.portfolio-shot.shot-mid{width:clamp(270px,30vw,480px)}.portfolio-shot img{width:100%;height:100%;display:block;object-fit:cover}.portfolio-cta{margin-top:48px;display:flex;align-items:center;justify-content:space-between;gap:20px;background:#111;color:#fff;border-radius:999px;padding:22px 28px 22px 34px;font-family:Unbounded,sans-serif;font-size:clamp(17px,2vw,26px);transition:transform .35s ease,background .25s ease}.portfolio-cta:hover{background:#000;transform:translateY(-2px)}.portfolio-cta span:last-child{font-size:30px;font-family:Onest,sans-serif}.page-cubes{position:fixed;inset:0;z-index:99999;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(5,1fr);pointer-events:none}.page-cube{background:#fff;transform:scale(0);transform-origin:center;animation:cubeIn .46s cubic-bezier(.2,.7,.2,1) forwards}.projects-empty{background:#fff;min-height:100vh;color:#111}.projects-empty main{min-height:100vh;padding:32px var(--pad);position:relative}.projects-back{font-family:Unbounded,sans-serif;font-size:13px}.projects-empty-center{position:absolute;inset:0;display:grid;place-items:center;pointer-events:none}.projects-empty-center span{font-family:Unbounded,sans-serif;font-size:clamp(48px,13vw,180px);letter-spacing:-.07em;color:#eee}
@keyframes portfolioLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(-50%,0,0)}}@keyframes cubeIn{to{transform:scale(1.04)}}
@media(max-width:820px){.portfolio{padding-top:92px;padding-bottom:84px}.portfolio-head{margin-top:40px;margin-bottom:36px}.portfolio-track{gap:13px}.portfolio-shot{width:68vw;height:54vw}.portfolio-shot.shot-tall{width:46vw}.portfolio-shot.shot-mid{width:60vw}.portfolio-cta{margin-top:34px;padding:18px 22px 18px 25px}.page-cubes{grid-template-columns:repeat(6,1fr);grid-template-rows:repeat(8,1fr)}}
@media(max-width:600px){.portfolio{padding-top:72px;padding-bottom:66px}.portfolio-head{margin-top:32px;margin-bottom:28px}.portfolio-head h2{font-size:clamp(38px,11vw,58px)}.portfolio-track{gap:10px}.portfolio-shot{width:82vw;height:64vw;border-radius:15px}.portfolio-shot.shot-tall{width:57vw}.portfolio-shot.shot-mid{width:74vw}.portfolio-cta{margin-top:28px;padding:17px 18px 17px 22px;font-size:15px}.portfolio-cta span:last-child{font-size:24px}.page-cubes{grid-template-columns:repeat(5,1fr);grid-template-rows:repeat(9,1fr)}}
@media(prefers-reduced-motion:reduce){.portfolio-track{animation:none}.page-cube{animation:none;transform:scale(1)}}
/* 2026-10-06: projects catalogue */
.projects-page{background:#f4f4f0;color:#111;min-height:100vh}.projects-main{padding-bottom:110px}.projects-hero{padding:90px var(--pad) 70px}.projects-hero h1{font-family:Unbounded,sans-serif;font-size:clamp(68px,12vw,180px);line-height:.88;letter-spacing:-.075em;margin:34px 0 26px}.projects-hero p{font-size:clamp(17px,1.8vw,24px);line-height:1.45;max-width:720px;margin:0;color:#555}.projects-browser{padding:0 var(--pad)}.project-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:38px}.project-filter{border:0;background:#deded7;color:#111;padding:12px 17px;border-radius:999px;font:inherit;cursor:pointer;transition:.2s}.project-filter:hover{transform:translateY(-1px);background:#d2d2ca}.project-filter.active{background:#111;color:#fff}.projects-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.project-card{background:#e5e5de;border-radius:18px;overflow:hidden;display:grid;grid-template-rows:auto 1fr;transition:transform .35s ease,opacity .35s ease;min-width:0}.project-card:hover{transform:translateY(-5px)}.project-media{aspect-ratio:16/10;overflow:hidden;background:#111}.project-media img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .6s cubic-bezier(.2,.7,.2,1)}.project-card:hover .project-media img{transform:scale(1.025)}.project-card-copy{display:flex;justify-content:space-between;align-items:flex-end;gap:20px;padding:22px 24px 24px}.project-card-copy h2{font-family:Unbounded,sans-serif;font-size:clamp(24px,3vw,44px);line-height:1;letter-spacing:-.045em;margin:8px 0 0}.project-kind{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#666}.project-arrow{font-size:28px}.project-arrow.muted{font-size:11px;color:#777;text-transform:uppercase;letter-spacing:.08em}.project-hidden{display:none}.projects-entry{position:fixed;inset:0;z-index:99998;background:#fff;pointer-events:none;animation:projectsReveal .9s cubic-bezier(.75,0,.25,1) forwards}.projects-entry:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,#fff 0 12.5%,transparent 12.5% 25%);opacity:.15}.projects-header{position:sticky}.projects-page .site-header{transform:translateY(-12px);opacity:0;animation:projectsHeaderIn .55s ease .38s forwards}.projects-main{opacity:0;transform:translateY(28px);animation:projectsContentIn .72s cubic-bezier(.2,.7,.2,1) .48s forwards}
@keyframes projectsReveal{0%{clip-path:inset(0)}100%{clip-path:inset(100% 0 0 0)}}@keyframes projectsHeaderIn{to{transform:none;opacity:1}}@keyframes projectsContentIn{to{transform:none;opacity:1}}
@media(max-width:820px){.projects-hero{padding-top:70px;padding-bottom:52px}.projects-grid{grid-template-columns:1fr}.project-card-copy{padding:20px}.projects-main{padding-bottom:80px}}
@media(max-width:600px){.projects-hero{padding-top:55px;padding-bottom:40px}.projects-hero h1{font-size:18vw;margin-top:28px}.project-filters{margin-bottom:26px}.project-filter{padding:10px 13px;font-size:12px}.project-card{border-radius:14px}.project-card-copy{padding:17px 18px 19px}.project-card-copy h2{font-size:28px}.project-media{aspect-ratio:4/3}}
@media(prefers-reduced-motion:reduce){.projects-entry{display:none}.projects-page .site-header,.projects-main{animation:none;opacity:1;transform:none}.project-card,.project-media img{transition:none}}
/* 2026-10-06: true cubed reveal on /projects/ */
.projects-entry{position:fixed;inset:0;z-index:99998;display:grid;grid-template-columns:repeat(var(--entry-cols,8),1fr);grid-template-rows:repeat(var(--entry-rows,5),1fr);pointer-events:none;background:transparent;animation:none;clip-path:none}.projects-entry:before{display:none}.entry-cube{display:block;background:#fff;transform:scale(1.02);transform-origin:center;animation:entryCubeOut .5s cubic-bezier(.65,0,.35,1) forwards}@keyframes entryCubeOut{to{transform:scale(0);opacity:.15}}
@media(prefers-reduced-motion:reduce){.projects-entry{display:none}}
/* 2026-10-06: compact real-media portfolio, floating frames, smaller UI */
:root{--pad:clamp(18px,3.2vw,52px)}
.site-header{height:76px}.brand img{width:66px}.site-header nav{gap:22px;font-size:13px}.nav-cta{padding:9px 14px}
.hero{min-height:calc(100svh - 76px);padding-top:26px}.hero-title{font-size:clamp(58px,9.25vw,145px);margin:clamp(52px,7vh,88px) 0 32px}.hero-bottom p{font-size:clamp(16px,1.65vw,22px)}.round-link{width:104px;height:104px;padding:17px}.work,.process,.request,.plan{padding-top:92px;padding-bottom:92px}.work-grid{margin-top:52px}.work-intro h2,.request-copy h2,.plan-copy h2{font-size:clamp(36px,4.8vw,70px)}.plan-grid{margin-top:48px}.projects-hero{padding-top:68px;padding-bottom:52px}.projects-hero h1{font-size:clamp(56px,9vw,132px)}
.portfolio{padding:88px 0 82px}.portfolio-head{margin-top:34px;margin-bottom:24px}.portfolio-head h2{font-size:clamp(34px,4.6vw,68px);max-width:760px}.portfolio-viewport{padding:42px 0 52px;overflow:hidden}.portfolio-track{--reel-gap:clamp(52px,7vw,112px);display:flex;gap:var(--reel-gap);align-items:center;padding:0 var(--pad);animation:portfolioFloatLoop 44s linear infinite;width:max-content;will-change:transform}.portfolio-viewport:hover .portfolio-track{animation-play-state:running!important}.portfolio-set{display:flex;gap:var(--reel-gap);align-items:center;flex:none}.portfolio-shot{position:relative;flex:none;margin:0;width:clamp(225px,25vw,390px);height:clamp(160px,17.5vw,275px);padding:8px;border:1px solid rgba(17,17,17,.24);border-radius:15px;background:#ebeae4;box-shadow:0 20px 48px rgba(0,0,0,.12),0 3px 10px rgba(0,0,0,.06);overflow:hidden;transform:translateY(var(--float-y,0)) rotate(var(--tilt,0deg)) scale(var(--float-scale,1));transform-origin:center;transition:box-shadow .3s ease}.portfolio-shot:after{content:"";position:absolute;inset:7px;border:1px solid rgba(255,255,255,.32);border-radius:9px;pointer-events:none}.portfolio-shot img,.portfolio-shot video{width:100%;height:100%;display:block;object-fit:cover;border-radius:8px;background:#111}.portfolio-shot video{object-position:center}.portfolio-shot.float-a{--float-y:-22px;--tilt:-2.3deg;--float-scale:.94}.portfolio-shot.float-b{--float-y:19px;--tilt:1.8deg;--float-scale:.88}.portfolio-shot.float-c{--float-y:-8px;--tilt:.9deg;--float-scale:.98}.portfolio-shot.float-d{--float-y:28px;--tilt:-1.7deg;--float-scale:.9}.portfolio-shot.float-e{--float-y:-28px;--tilt:2.4deg;--float-scale:.84;width:clamp(170px,18vw,285px)}.portfolio-shot.float-f{--float-y:8px;--tilt:-.8deg;--float-scale:.96}.portfolio-shot:hover{box-shadow:0 26px 62px rgba(0,0,0,.16),0 5px 14px rgba(0,0,0,.08)}.portfolio-cta{margin-top:22px;padding:18px 24px 18px 28px;font-size:clamp(15px,1.5vw,20px)}
@keyframes portfolioFloatLoop{from{transform:translate3d(0,0,0)}to{transform:translate3d(calc(-50% - var(--reel-gap)/2),0,0)}}
@media(max-width:820px){:root{--pad:22px}.site-header{height:66px}.brand img{width:60px}.hero{min-height:auto}.hero-title{font-size:clamp(46px,10.8vw,76px);margin-top:58px}.work,.process,.request,.plan{padding-top:70px;padding-bottom:70px}.portfolio{padding-top:68px;padding-bottom:64px}.portfolio-viewport{padding:34px 0 42px}.portfolio-track{--reel-gap:52px}.portfolio-shot{width:clamp(205px,45vw,330px);height:clamp(145px,31vw,230px)}.portfolio-shot.float-e{width:clamp(160px,34vw,240px)}.projects-hero h1{font-size:clamp(50px,12vw,88px)}}
@media(max-width:600px){:root{--pad:16px}.site-header{height:60px}.brand img{width:54px}.hero-title{font-size:12.6vw;margin:52px 0 24px}.hero-bottom p{font-size:16px}.work,.process,.request,.plan{padding-top:58px;padding-bottom:58px}.work-intro h2,.request-copy h2,.plan-copy h2{font-size:clamp(34px,9vw,48px)}.portfolio{padding-top:58px;padding-bottom:56px}.portfolio-head{margin-top:26px;margin-bottom:18px}.portfolio-head h2{font-size:clamp(32px,9vw,46px)}.portfolio-viewport{padding:30px 0 38px}.portfolio-track{--reel-gap:38px;animation-duration:38s}.portfolio-shot{width:62vw;height:43vw;padding:6px;border-radius:12px}.portfolio-shot.float-e{width:48vw}.portfolio-shot:after{inset:5px}.portfolio-shot img,.portfolio-shot video{border-radius:6px}.portfolio-shot.float-a{--float-y:-14px}.portfolio-shot.float-b{--float-y:15px}.portfolio-shot.float-c{--float-y:-5px}.portfolio-shot.float-d{--float-y:20px}.portfolio-shot.float-e{--float-y:-18px}.portfolio-shot.float-f{--float-y:7px}.portfolio-cta{margin-top:16px;padding:15px 17px 15px 20px;font-size:14px}.projects-hero{padding-top:48px}.projects-hero h1{font-size:15vw}}
@media(prefers-reduced-motion:reduce){.portfolio-track{animation:none!important}}
/* 2026-10-06: one more subtle global scale reduction */
.site-header{height:72px}.brand img{width:62px}.site-header nav{font-size:12px;gap:20px}.nav-cta{padding:8px 13px}
.hero{min-height:calc(100svh - 72px);padding-top:22px}.hero-title{font-size:clamp(54px,8.75vw,136px);margin:clamp(48px,6.5vh,80px) 0 29px}.hero-bottom p{font-size:clamp(15px,1.5vw,20px)}.round-link{width:96px;height:96px;padding:15px}
.work,.process,.request,.plan{padding-top:84px;padding-bottom:84px}.work-grid{margin-top:46px}.work-intro h2,.request-copy h2,.plan-copy h2{font-size:clamp(34px,4.45vw,64px)}
.portfolio{padding-top:80px;padding-bottom:74px}.portfolio-head h2{font-size:clamp(32px,4.25vw,62px)}.portfolio-track{--reel-gap:clamp(56px,7.5vw,120px)}.portfolio-shot{width:clamp(210px,23vw,350px);height:clamp(150px,16vw,245px)}.portfolio-shot.float-e{width:clamp(155px,16.5vw,255px)}.portfolio-cta{padding:16px 22px 16px 25px;font-size:clamp(14px,1.35vw,18px)}
.projects-hero{padding-top:60px;padding-bottom:46px}.projects-hero h1{font-size:clamp(52px,8.4vw,122px)}.project-card-copy h2{font-size:clamp(22px,2.7vw,40px)}
@media(max-width:820px){.site-header{height:62px}.brand img{width:56px}.hero-title{font-size:clamp(44px,10vw,70px);margin-top:54px}.work,.process,.request,.plan{padding-top:64px;padding-bottom:64px}.portfolio{padding-top:62px;padding-bottom:58px}.portfolio-shot{width:clamp(190px,42vw,300px);height:clamp(136px,29vw,210px)}.portfolio-shot.float-e{width:clamp(148px,31vw,220px)}}
@media(max-width:600px){.site-header{height:58px}.brand img{width:51px}.hero-title{font-size:12vw;margin:48px 0 22px}.work,.process,.request,.plan{padding-top:54px;padding-bottom:54px}.work-intro h2,.request-copy h2,.plan-copy h2{font-size:clamp(32px,8.6vw,45px)}.portfolio{padding-top:52px;padding-bottom:50px}.portfolio-head h2{font-size:clamp(30px,8.4vw,42px)}.portfolio-shot{width:57vw;height:39vw}.portfolio-shot.float-e{width:44vw}.portfolio-track{--reel-gap:42px}.projects-hero h1{font-size:14vw}}
/* 2026-10-06: smaller project cards + real screenshots */
.projects-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;align-items:start}.project-card{border-radius:15px}.project-media{aspect-ratio:4/3}.project-card-copy{padding:16px 17px 18px;gap:14px}.project-card-copy h2{font-size:clamp(18px,1.8vw,28px);margin-top:6px}.project-kind{font-size:9px}.project-arrow{font-size:22px}.project-arrow.muted{font-size:9px}.project-card:hover{transform:translateY(-3px)}
@media(max-width:980px){.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:620px){.projects-grid{grid-template-columns:1fr;gap:12px}.project-media{aspect-ratio:16/10}.project-card-copy{padding:15px 16px 17px}.project-card-copy h2{font-size:24px}}
/* 2026-10-06: neutral placeholder for chevr.tapok.cc until real site screenshot exists */
.project-placeholder{display:grid;place-items:center;background:#111;color:#f4f4f0}.project-placeholder-inner{display:grid;gap:7px;text-align:center;place-items:center;padding:24px}.project-placeholder-inner span{font-size:9px;letter-spacing:.2em;opacity:.55}.project-placeholder-inner strong{font-family:Unbounded,sans-serif;font-size:clamp(18px,2vw,30px);letter-spacing:-.04em}.project-placeholder-inner small{font-size:9px;letter-spacing:.14em;opacity:.5}
/* 2026-10-06: circular flag language switch, dark theme, stronger project CTA */
.lang-switch{gap:6px;background:transparent;padding:0;overflow:visible!important;max-width:none!important}.lang-link{width:31px;height:31px;padding:0!important;border-radius:50%;display:grid;place-items:center;opacity:.62;border:1px solid rgba(17,17,17,.18);background:transparent;overflow:hidden;transition:transform .22s ease,opacity .22s ease,border-color .22s ease,box-shadow .22s ease}.lang-link:hover{opacity:1;transform:translateY(-2px) scale(1.06)}.lang-link.active{background:transparent;color:inherit;opacity:1;border-color:#111;box-shadow:0 0 0 2px rgba(17,17,17,.09)}.flag{display:block;width:100%;height:100%;border-radius:50%;background-size:cover;background-position:center}.flag-en{background:#21468b;position:relative}.flag-en:before{content:"🇬🇧";display:grid;place-items:center;width:100%;height:100%;font-size:23px;line-height:1;transform:scale(1.28)}.flag-uk:before{content:"🇺🇦";display:grid;place-items:center;width:100%;height:100%;font-size:23px;line-height:1;transform:scale(1.28)}.flag-de:before{content:"🇩🇪";display:grid;place-items:center;width:100%;height:100%;font-size:23px;line-height:1;transform:scale(1.28)}.flag-ru{background:linear-gradient(to bottom,#fff 0 33.333%,#2f67d8 33.333% 66.666%,#fff 66.666% 100%)}
.theme-toggle{width:34px;height:34px;border-radius:50%;border:1px solid rgba(17,17,17,.18);background:#f4f4f0;padding:0;display:grid;place-items:center;cursor:pointer;transition:transform .25s ease,border-color .25s ease,background .25s ease}.theme-toggle:hover{transform:rotate(14deg) scale(1.05);border-color:#111}.theme-toggle span{width:17px;height:17px;border-radius:50%;background:linear-gradient(90deg,#111 0 50%,#f4f4f0 50% 100%);border:1px solid #111;display:block}
.round-link{width:138px;height:138px;padding:22px;font-size:15px;position:relative;overflow:hidden;box-shadow:0 14px 34px rgba(0,0,0,.16);animation:ctaBreath 3.6s ease-in-out infinite}.round-link:before{content:"";position:absolute;inset:-35%;background:radial-gradient(circle at 50% 50%,rgba(255,255,255,.18),transparent 45%);transform:translateX(-55%);transition:transform .6s cubic-bezier(.16,1,.3,1)}.round-link:hover:before{transform:translateX(35%)}.round-link b{font-size:30px;transition:transform .35s cubic-bezier(.16,1,.3,1)}.round-link:hover{background:#000;color:#fff;transform:rotate(-4deg) scale(1.06);box-shadow:0 22px 50px rgba(0,0,0,.22)}.round-link:hover b{transform:translate(5px,5px) rotate(-6deg)}
@keyframes ctaBreath{0%,100%{box-shadow:0 14px 34px rgba(0,0,0,.14);transform:translateY(0)}50%{box-shadow:0 20px 42px rgba(0,0,0,.2);transform:translateY(-4px)}}

html.dark{color-scheme:dark}html.dark body,html.dark .projects-page{background:#0d0d0d;color:#f2f2ed}html.dark .site-header{background:rgba(13,13,13,.72);box-shadow:0 8px 28px rgba(0,0,0,.18)}html.dark .site-header.scrolled{background:rgba(13,13,13,.86)}html.dark .brand img{filter:brightness(0) invert(1)}html.dark .site-header nav a:not(.nav-cta):after{background:#f2f2ed}html.dark .lang-link{border-color:rgba(255,255,255,.24)}html.dark .lang-link.active{border-color:#fff;box-shadow:0 0 0 2px rgba(255,255,255,.12)}html.dark .theme-toggle{background:#171717;border-color:rgba(255,255,255,.25)}html.dark .theme-toggle span{background:linear-gradient(90deg,#f2f2ed 0 50%,#111 50% 100%);border-color:#f2f2ed}html.dark .hero,html.dark .portfolio,html.dark .work,html.dark .process,html.dark .plan,html.dark .request,html.dark footer{background:#0d0d0d;color:#f2f2ed}html.dark .portfolio-shot{background:#171717;border-color:rgba(255,255,255,.24);box-shadow:0 20px 50px rgba(0,0,0,.4)}html.dark .service,html.dark .step,html.dark .price-option,html.dark .plan-details,html.dark .project-card{background:#171717;color:#f2f2ed}html.dark .service:hover,html.dark .step:hover{background:#1f1f1f}html.dark .project-filter{background:#222;color:#eee}html.dark .project-filter.active{background:#f2f2ed;color:#111}html.dark .projects-hero p,html.dark .project-kind{color:#aaa}html.dark input,html.dark textarea{background:#121212;color:#f2f2ed;border-color:#3a3a3a}html.dark .ticker,html.dark .hero-bottom{border-color:#2a2a2a}
@media(max-width:820px){.round-link{width:122px;height:122px;padding:19px;font-size:14px}.lang-link{width:29px;height:29px}.theme-toggle{width:31px;height:31px}}
@media(max-width:600px){.lang-switch{gap:4px}.lang-link{width:27px;height:27px}.theme-toggle{width:29px;height:29px}.round-link{width:112px;height:112px;padding:18px;font-size:13px}.round-link b{font-size:25px}}
@media(prefers-reduced-motion:reduce){.round-link{animation:none!important}.round-link:hover{transform:none!important}}
/* 2026-10-06: TAPOK project uses brand mark instead of screenshot */
.project-logo-media{display:grid;place-items:center;background:#f4f4f0;padding:clamp(30px,4vw,58px)}.project-logo-media img{width:min(72%,360px);height:auto;object-fit:contain;filter:none}.dark .project-logo-media{background:#f4f4f0}
/* 2026-10-06: browser-independent CSS flags (no emoji glyphs) */
.flag-en,.flag-uk,.flag-de,.flag-ru{position:relative;overflow:hidden}
.flag-en:before,.flag-uk:before,.flag-de:before{content:none!important}
.flag-en{
  background:
    linear-gradient(33deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),
    linear-gradient(-33deg,transparent 43%,#fff 43% 48%,#c8102e 48% 52%,#fff 52% 57%,transparent 57%),
    linear-gradient(90deg,transparent 39%,#fff 39% 45%,#c8102e 45% 55%,#fff 55% 61%,transparent 61%),
    linear-gradient(0deg,transparent 39%,#fff 39% 45%,#c8102e 45% 55%,#fff 55% 61%,transparent 61%),
    #21468b!important;
}
.flag-uk{background:linear-gradient(to bottom,#0057b7 0 50%,#ffd700 50% 100%)!important}
.flag-de{background:linear-gradient(to bottom,#111 0 33.333%,#dd0000 33.333% 66.666%,#ffce00 66.666% 100%)!important}
.flag-ru{background:linear-gradient(to bottom,#fff 0 33.333%,#2f67d8 33.333% 66.666%,#fff 66.666% 100%)!important}
.lang-link{background:#fff0!important}
/* 2026-10-06: corrected GB flag uses real SVG geometry */
.flag-en{background:#21468b url('/assets/img/flag-gb.svg?v=20261006m') center/cover no-repeat!important}
/* 2026-10-06: ticker text must stay white in dark theme */
html.dark .ticker,html.dark .ticker .ticker-track,html.dark .ticker .ticker-track>span{color:#fff!important}

/* Radial theme reveal from the theme toggle */
.theme-reveal-wave{position:fixed;z-index:2147483000;width:28px;height:28px;border-radius:50%;pointer-events:none;transform:translate(-50%,-50%) scale(0);will-change:transform,opacity;contain:strict}
.theme-toggle{isolation:isolate}

/* 2026-10-07: keep up to three project cards inside one desktop viewport.
   As soon as a fourth card exists, the regular scrolling layout applies. */
@media (min-width:981px) {
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) {
    height:100svh;
    overflow:hidden;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-main {
    height:calc(100svh - 72px);
    min-height:0;
    padding-bottom:18px;
    display:flex;
    flex-direction:column;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-hero {
    flex:0 0 auto;
    padding-top:24px;
    padding-bottom:18px;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-hero h1 {
    font-size:clamp(48px,5.4vw,84px);
    margin:14px 0 12px;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-hero p {
    font-size:clamp(15px,1.15vw,19px);
    line-height:1.35;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-browser {
    flex:1 1 auto;
    min-height:0;
    display:flex;
    flex-direction:column;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-filters {
    flex:0 0 auto;
    margin-bottom:16px;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-filter {
    padding:9px 14px;
    font-size:13px;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .projects-grid {
    flex:1 1 auto;
    min-height:0;
    align-items:stretch;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-card {
    min-height:0;
    grid-template-rows:minmax(0,1fr) auto;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-media {
    min-height:0;
    aspect-ratio:auto;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-card-copy {
    padding:12px 15px 14px;
  }
  body.projects-page:not(:has(.projects-grid > .project-card:nth-child(4))) .project-card-copy h2 {
    font-size:clamp(17px,1.45vw,24px);
    margin-top:5px;
  }
}

/* 2026-10-07: render Chevr artwork smaller without stretching/upscaling */
.project-media:has(.chevr-game-logo){display:grid;place-items:center;background:#000}
.project-media .chevr-game-logo{
  width:82%;
  height:82%;
  max-width:800px;
  max-height:600px;
  object-fit:contain;
  transform:none!important;
}

.portfolio-clickable{cursor:pointer}
.portfolio-clickable:focus-visible{outline:2px solid currentColor;outline-offset:-4px}

/* Conversion-focused hero CTA */
.hero-bottom p strong{font-weight:700}
.round-link{width:168px;height:168px;padding:26px;font-size:17px;letter-spacing:-.01em}
.round-link b{font-size:34px}
@media(max-width:820px){.round-link{width:144px;height:144px;padding:22px;font-size:15px}}
@media(max-width:600px){.round-link{width:132px;height:132px;padding:20px;font-size:14px}}

/* Home page cube intro and BFCache-safe transition layer */
.home-entry-cubes{position:fixed;inset:0;z-index:100000;display:grid;grid-template-columns:repeat(var(--entry-cols,8),1fr);grid-template-rows:repeat(var(--entry-rows,5),1fr);pointer-events:none;background:#fff}
.home-entry-cube{background:#fff;transform:scale(1);transform-origin:center;animation:homeCubeOut .58s cubic-bezier(.65,0,.25,1) forwards;animation-play-state:paused}
.home-entry-cubes.reveal{background:transparent}
.home-entry-cubes.reveal .home-entry-cube{animation-play-state:running}
@keyframes homeCubeOut{0%{transform:scale(1);opacity:1}100%{transform:scale(0);opacity:0}}
@media(prefers-reduced-motion:reduce){.home-entry-cubes{display:none!important}}
