/* Type system: geometric display, clear Ukrainian body copy, precise labels. */
body{font-family:'Onest',Arial,sans-serif}
.wordmark,.footer-wordmark,.hero h1,.intro h2,.process h2,.about h2,.contact h2,.feature h2{font-family:'Unbounded','Onest',Arial,sans-serif}
.wordmark{font-size:19px;letter-spacing:-.08em}.footer-wordmark{font-size:36px;letter-spacing:-.08em}
.hero h1{font-size:clamp(55px,5.7vw,97px);font-weight:600;line-height:1.08;letter-spacing:-.085em}
.intro h2,.process h2,.about h2,.contact h2,.feature h2{font-size:clamp(45px,5.1vw,77px);font-weight:600;line-height:1.14;letter-spacing:-.075em}
.hero h1 em,.intro h2 span,.process h2 em,.about h2 em,.contact h2 em,.feature h2 em{font-family:inherit;font-weight:inherit;font-style:normal;letter-spacing:inherit}
.hero h1 em{background:linear-gradient(105deg,#d6fa48 8%,#efffac 48%,#d6fa48 90%);background-size:220% 100%;background-clip:text;-webkit-background-clip:text;color:transparent;animation:shine 7s ease-in-out infinite}
.hero-topline,.section-kicker,.eyebrow,.hero-bottom,.art-label,.timeline,.visual-tag,.visual-corner,.step-no,.feature-footnote,.form-note,.footer-bottom,.service-no{font-family:'IBM Plex Mono',monospace}
.service-row h3,.process-grid h3{font-family:'Unbounded','Onest',Arial,sans-serif;font-weight:500;letter-spacing:-.06em}
.service-row h3{font-size:clamp(19px,2vw,26px)}.process-grid h3{font-size:clamp(17px,1.5vw,21px)}
.signature{font-family:'Unbounded','Onest',Arial,sans-serif;font-style:normal;font-weight:500;font-size:clamp(20px,2.2vw,30px);line-height:1.25;letter-spacing:-.07em;transform:none}
/* A quiet progress marker and motion that follows the editing theme. */
.site-header{position:sticky;top:0;z-index:90;background:#101110e8;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);transition:height .28s ease,background .28s ease,box-shadow .28s ease}
.site-header.is-scrolled{height:72px;background:#101110f2;box-shadow:0 14px 30px #0005}
html{scroll-padding-top:100px}
.back-to-top{position:fixed;right:clamp(18px,3vw,42px);bottom:clamp(18px,3vw,42px);z-index:85;width:62px;height:62px;border:1px solid #d6fa4870;border-radius:50%;background:var(--accent);color:#11170d;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:0;cursor:pointer;box-shadow:0 12px 35px #0008,0 0 24px #d6fa4830;opacity:0;visibility:hidden;transform:translateY(20px) scale(.82);transition:opacity .25s ease,visibility .25s ease,transform .35s cubic-bezier(.2,.8,.2,1),background .25s ease}
.back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0) scale(1)}.back-to-top:hover{background:#efffa5;transform:translateY(-5px) scale(1.04)}.back-to-top span{font:29px 'Onest',sans-serif;line-height:1}.back-to-top small{font:600 8px 'IBM Plex Mono',monospace;letter-spacing:.12em}
.service-row:after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle 170px at var(--pointer-x,50%) var(--pointer-y,50%),#d6fa4819,transparent 74%);opacity:0;transition:opacity .25s ease}.service-row:hover:after{opacity:1}
.art-grid{transform:translate(var(--art-x,0px),var(--art-y,0px));transition:transform .35s ease-out}
.form-trap{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip-path:inset(50%)!important;white-space:nowrap!important}.form-button:disabled{opacity:.7;cursor:wait}.form-button:disabled:hover{transform:none}
.scroll-progress{position:fixed;left:0;top:0;z-index:100;width:100%;height:3px;background:var(--accent);transform:scaleX(0);transform-origin:left center;pointer-events:none;box-shadow:0 0 13px #d6fa4880}
@keyframes shine{0%,100%{background-position:0% 50%}50%{background-position:100% 50%}}
@keyframes float-front{0%,100%{transform:rotate(-6deg) translateY(0)}50%{transform:rotate(-5deg) translateY(-10px)}}
@keyframes float-back{0%,100%{transform:rotate(9deg) translateY(0)}50%{transform:rotate(10deg) translateY(8px)}}
@keyframes float-timeline{0%,100%{transform:rotate(2deg) translateY(0)}50%{transform:rotate(1deg) translateY(5px)}}
.poster-front{animation:float-front 7s ease-in-out infinite}.poster-back{animation:float-back 8s ease-in-out infinite}.timeline{animation:float-timeline 6s ease-in-out infinite}
.js-motion .reveal{opacity:0;transform:translateY(28px);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.7,.2,1);transition-delay:var(--reveal-delay,0ms)}
.js-motion .reveal.is-visible{opacity:1;transform:translateY(0)}
.service-row{overflow:hidden}.service-row:before{content:'';position:absolute;left:0;bottom:0;width:0;height:2px;background:var(--accent);transition:width .45s ease}.service-row:hover:before{width:100%}.service-symbol{transition:transform .3s ease}.service-row:hover .service-symbol{transform:translate(4px,-4px)}
.button{position:relative;overflow:hidden}.button:after{content:'';position:absolute;inset:-50%;background:linear-gradient(110deg,transparent 42%,#fff5 50%,transparent 58%);transform:translateX(-110%) rotate(12deg);transition:transform .7s ease;pointer-events:none}.button:hover:after{transform:translateX(110%) rotate(12deg)}
.step-art{transition:transform .35s cubic-bezier(.2,.7,.2,1),border-color .35s,box-shadow .35s}.process-grid article:hover .step-art{transform:translateY(-7px) rotate(-1deg);box-shadow:0 20px 40px #0007}
.feature-visual:before{transition:transform .7s ease}.feature-card:hover .feature-visual:before{transform:scale(1.08)}
@media(max-width:1000px){.hero h1{font-size:clamp(49px,6.1vw,70px)}.intro h2,.process h2,.about h2,.contact h2,.feature h2{font-size:clamp(41px,5vw,65px)}}
@media(max-width:720px){.site-header.is-scrolled{height:64px}.site-header.is-scrolled .mobile-nav:not([hidden]){top:64px}.back-to-top{width:54px;height:54px}.wordmark{font-size:17px}.hero h1{font-size:clamp(44px,9vw,67px)}.intro h2,.process h2,.about h2,.contact h2,.feature h2{font-size:clamp(38px,7.9vw,59px)}.service-row h3{font-size:18px}.footer-wordmark{font-size:27px}}
@media(max-width:400px){.hero h1{font-size:41px}.intro h2,.process h2,.about h2,.contact h2,.feature h2{font-size:clamp(30px,8.8vw,37px)}}
@media(prefers-reduced-motion:reduce){.hero h1 em,.poster-front,.poster-back,.timeline{animation:none}.js-motion .reveal{opacity:1;transform:none;transition:none}.button:after,.service-row:before,.service-row:after,.service-symbol,.step-art,.feature-visual:before,.back-to-top,.site-header,.art-grid{transition:none}.process-grid article:hover .step-art{transform:none}}
