:root{color-scheme:dark;--bg:#0B1220;--bg-2:#0E1627;--surface:#111A2D;--surface-2:#16213A;--line:rgba(160, 185, 230, .12);--line-2:rgba(160, 185, 230, .24);--text:#E6ECF7;--text-soft:#C5CFE2;--muted:#93A1BA;--faint:#7686A1;--accent:#FFB547;--accent-ink:#1A1204;--link:#8DB3F0;--danger:#FF8E8E;--band:rgba(120, 160, 230, .05);--glass:rgba(11, 18, 32, .82);--f-display:"Bricolage Grotesque", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--f-body:"Instrument Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--f-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace}@media (prefers-color-scheme:light){:root:not([data-theme="dark"]){color-scheme:light;--bg:#EEF1F5;--bg-2:#E4E9F0;--surface:#FFFFFF;--surface-2:#F5F7FA;--line:rgba(20, 35, 70, .12);--line-2:rgba(20, 35, 70, .24);--text:#0E1730;--text-soft:#27324D;--muted:#4A5873;--faint:#4F5D78;--accent:#A34E00;--accent-ink:#FFFFFF;--link:#1F4FAF;--danger:#B3261E;--band:rgba(60, 100, 180, .06);--glass:rgba(238, 241, 245, .86)}}:root[data-theme="light"]{color-scheme:light;--bg:#EEF1F5;--bg-2:#E4E9F0;--surface:#FFFFFF;--surface-2:#F5F7FA;--line:rgba(20, 35, 70, .12);--line-2:rgba(20, 35, 70, .24);--text:#0E1730;--text-soft:#27324D;--muted:#4A5873;--faint:#4F5D78;--accent:#A34E00;--accent-ink:#FFFFFF;--link:#1F4FAF;--danger:#B3261E;--band:rgba(60, 100, 180, .06);--glass:rgba(238, 241, 245, .86)}*,*::before,*::after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body.sab{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--text);font-family:var(--f-body);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}body.sab img{max-width:100%;height:auto}.sab-main{flex:1 0 auto}.wrap{width:100%;max-width:1180px;margin-inline:auto;padding-inline:clamp(20px, 4vw, 40px)}.wrap.narrow{max-width:780px}.sr-only,.screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skip-link{position:absolute;left:12px;top:-60px;z-index:100;padding:10px 16px;border-radius:8px;background:var(--accent);color:var(--accent-ink);font-weight:600;text-decoration:none}.skip-link:focus{top:12px}.sab :focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:4px}::selection{background:var(--accent);color:var(--accent-ink)}.site-header{position:sticky;top:0;z-index:50;background:var(--glass);-webkit-backdrop-filter:saturate(1.3) blur(14px);backdrop-filter:saturate(1.3) blur(14px);border-bottom:1px solid var(--line)}.bar{display:flex;align-items:center;gap:18px;min-height:66px}.brand{display:inline-flex;align-items:center;gap:10px;color:var(--text);text-decoration:none;font-family:var(--f-display);font-weight:700;font-size:1.1rem;letter-spacing:-.02em}.brand-mark{width:34px;height:34px;display:grid;place-items:center;border-radius:8px;background:var(--surface);border:1px solid var(--line-2);color:var(--accent)}.brand-mark svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.4;stroke-linecap:round;stroke-linejoin:round}.nav{margin-left:auto;display:flex;gap:2px}.nav a{padding:8px 14px;border-radius:8px;color:var(--muted);text-decoration:none;font-size:.96rem;font-weight:500;transition:color .2s,background .2s}.nav a:hover{color:var(--text);background:var(--surface)}.nav a[aria-current]{color:var(--text);box-shadow:inset 0 -2px 0 var(--accent);border-radius:8px 8px 0 0}.bar-actions{display:flex;align-items:center;gap:6px}.icon-btn{width:40px;height:40px;display:inline-grid;place-items:center;border-radius:10px;border:1px solid #fff0;background:#fff0;color:var(--muted);cursor:pointer;transition:color .2s,background .2s,border-color .2s}.icon-btn:hover{color:var(--text);background:var(--surface);border-color:var(--line)}.icon-btn svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.icon-btn svg.fill{fill:currentColor;stroke:none}.menu-btn{display:none}.theme-btn .i-sun{display:block}.theme-btn .i-moon{display:none}@media (prefers-color-scheme:light){:root:not([data-theme="dark"]) .theme-btn .i-sun{display:none}:root:not([data-theme="dark"]) .theme-btn .i-moon{display:block}}:root[data-theme="light"] .theme-btn .i-sun{display:none}:root[data-theme="light"] .theme-btn .i-moon{display:block}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 24px;border-radius:10px;font:600 .97rem/1 var(--f-body);text-decoration:none;border:1px solid #fff0;cursor:pointer;transition:background .2s,border-color .2s,color .2s}.btn-primary{background:var(--accent);color:var(--accent-ink)}.btn-primary:hover{filter:brightness(1.08)}.btn-ghost{border-color:var(--line-2);color:var(--text);background:#fff0}.btn-ghost:hover{background:var(--surface);border-color:var(--muted)}.text-link{color:var(--text);font-weight:600;text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px;text-decoration-thickness:2px}.text-link:hover{color:var(--accent)}.hero{position:relative;isolation:isolate;overflow:hidden;padding:clamp(48px, 8vw, 112px) 0 clamp(56px, 8vw, 104px)}.hero::before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(to bottom,transparent 0,transparent 64px,var(--band) 64px,var(--band) 128px);-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent);mask-image:linear-gradient(to bottom,#000 55%,transparent)}.hero::after{content:"";position:absolute;top:0;bottom:0;left:clamp(6px, 1.6vw, 24px);width:14px;z-index:-1;background:radial-gradient(circle at center,var(--bg) 0,var(--bg) 3px,var(--line-2) 3.5px,var(--line-2) 4.5px,transparent 5px) center top / 14px 64px repeat-y;-webkit-mask-image:linear-gradient(to bottom,#000 55%,transparent);mask-image:linear-gradient(to bottom,#000 55%,transparent)}.hero-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(32px, 5vw, 72px);align-items:center}.chip{display:inline-block;margin:0 0 20px;padding:6px 12px;border:1px solid var(--line-2);border-radius:6px;background:var(--surface);color:var(--muted);font-size:.88rem;font-weight:500}.hero h1{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(2.7rem, 6.6vw, 5.6rem);line-height:1;letter-spacing:-.04em;color:var(--text);text-wrap:balance}.hero h1 .h1-a,.hero h1 .h1-b{display:block}.hero h1 .h1-b{padding-left:clamp(0px, 3.2vw, 56px);font-weight:500}.lede{margin:28px 0 0;max-width:46ch;font-size:clamp(1.06rem, 1.6vw, 1.25rem);line-height:1.6;color:var(--muted)}.cta-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.term{border:1px solid var(--line-2);border-radius:10px;overflow:hidden;background:#0A101C;box-shadow:0 24px 60px -28px rgb(0 0 0 / .55)}.term-bar{display:flex;align-items:center;gap:7px;padding:11px 14px;border-bottom:1px solid rgb(160 185 230 / .14);font:500 .74rem/1 var(--f-mono);color:#8494B0}.term-bar i{width:9px;height:9px;border-radius:50%;background:rgb(160 185 230 / .24)}.term-bar span{margin-left:auto}.term pre{margin:0;padding:20px 22px 24px;overflow-x:auto;font:400 clamp(.7rem, 1.05vw, .84rem)/1.85 var(--f-mono);color:#C9D3E6;white-space:pre}.term .ln{display:block;opacity:0;animation:sab-print .01s steps(1) forwards;animation-delay:calc(var(--d, 0) * 380ms + 500ms)}.term .k{color:#8DB3F0}.term .s{color:#FFB547}.term .c{color:#8494B0}.term .ln:last-child::after{content:"";display:inline-block;width:.55em;height:1.05em;margin-left:3px;vertical-align:-.18em;background:#FFB547;animation:sab-blink 1.1s steps(1) infinite}@keyframes sab-print{to{opacity:1}}@keyframes sab-blink{50%{opacity:0}}.cred-strip{border-block:1px solid var(--line);background:var(--bg-2)}.cred-strip ul{display:flex;flex-wrap:wrap;gap:10px 28px;margin:0;padding:18px 0;list-style:none;color:var(--text-soft);font-weight:500}.cred-strip li{position:relative;padding-left:16px}.cred-strip li::before{content:"";position:absolute;left:0;top:.6em;width:7px;height:7px;border-radius:50%;background:var(--accent)}.section{padding:clamp(56px, 8vw, 104px) 0}.sec-head{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:clamp(28px, 4vw, 48px)}.sec-title{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(1.9rem, 4vw, 3rem);line-height:1.05;letter-spacing:-.03em}.work-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:0;border:1px solid var(--line-2);border-radius:14px;overflow:hidden;background:var(--surface);color:inherit;text-decoration:none;transition:border-color .2s}.work-feature:hover,.work-tile:hover{border-color:var(--accent)}.wf-media,.wt-media{position:relative;overflow:hidden;background:var(--surface-2)}.wf-media{min-height:300px}.wf-media img,.wt-media img{width:100%;height:100%;object-fit:cover;display:block}.wf-media.ph,.wt-media.ph{display:grid;place-items:center;background:repeating-linear-gradient(to bottom,transparent 0,transparent 40px,var(--band) 40px,var(--band) 80px),var(--surface-2)}.ph span{font:700 clamp(3rem, 8vw, 6rem)/1 var(--f-display);letter-spacing:-.05em;color:var(--text);opacity:.85}.wf-body{padding:clamp(24px, 3.5vw, 44px);display:flex;flex-direction:column;justify-content:center;gap:14px}.work-feature h3{margin:0;font-family:var(--f-display);font-size:clamp(1.6rem, 3vw, 2.3rem);line-height:1.1;letter-spacing:-.03em;font-weight:700;color:var(--text)}.work-feature p,.work-tile p{margin:0;color:var(--muted)}.tags{display:flex;flex-wrap:wrap;gap:6px 14px;margin:4px 0 0;padding:0;list-style:none;color:var(--faint);font-size:.88rem;font-weight:500}.tags li+li::before{content:"/";margin-right:14px;color:var(--line-2)}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%, 320px),1fr));gap:18px;margin-top:18px}.work-tile{display:flex;flex-direction:column;gap:10px;padding:24px;border:1px solid var(--line);border-radius:6px;background:#fff0;color:inherit;text-decoration:none;transition:border-color .2s}.wt-media{aspect-ratio:16 / 9;margin:-24px -24px 8px}.work-tile h3{margin:0;font-family:var(--f-display);font-size:1.35rem;line-height:1.15;letter-spacing:-.02em;font-weight:700;color:var(--text)}.rows{margin:0;padding:0;list-style:none;border-bottom:1px solid var(--line)}.row{display:grid;grid-template-columns:150px minmax(0,1fr) auto;gap:8px 32px;padding:26px 0;border-top:1px solid var(--line);color:inherit;text-decoration:none}.row .when,.row .mins{color:var(--faint);font-size:.92rem;font-weight:500;padding-top:.35em}.row h3{margin:0 0 8px;font-family:var(--f-display);font-size:clamp(1.25rem, 2.4vw, 1.7rem);line-height:1.2;letter-spacing:-.02em;font-weight:700;color:var(--text)}.row:hover h3{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:5px;text-decoration-thickness:2px}.row p{margin:0;color:var(--muted);max-width:62ch}.about-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:clamp(28px, 5vw, 64px);align-items:center}.about-grid.no-photo{grid-template-columns:minmax(0,780px)}.about-photo{border-radius:14px;overflow:hidden;border:1px solid var(--line-2);aspect-ratio:4 / 5;background:var(--surface)}.about-photo img{width:100%;height:100%;object-fit:cover;display:block}.about-text{font-size:1.12rem;line-height:1.75;color:var(--text-soft)}.about-text p{margin:0 0 1em}.cta-card{border:1px solid var(--line-2);border-radius:14px;padding:clamp(32px, 6vw, 72px);background:var(--surface)}.cta-card h2{margin:0;max-width:16ch;font-family:var(--f-display);font-weight:700;font-size:clamp(2rem, 5vw, 3.6rem);line-height:1.02;letter-spacing:-.035em;text-wrap:balance}.cta-card p{max-width:50ch;margin:18px 0 0;color:var(--muted);font-size:1.1rem}.cta-card .btn{margin-top:28px}.page-head{padding:clamp(44px, 7vw, 88px) 0 clamp(24px, 4vw, 40px)}.page-head h1{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(2.4rem, 6vw, 4.4rem);line-height:1.02;letter-spacing:-.04em;text-wrap:balance}.page-head .desc{margin:18px 0 0;max-width:56ch;color:var(--muted);font-size:1.15rem}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:28px}.pill{padding:8px 16px;border-radius:8px;border:1px solid var(--line-2);color:var(--muted);text-decoration:none;font-size:.92rem;font-weight:500;transition:color .2s,border-color .2s,background .2s}.pill:hover{color:var(--text);border-color:var(--muted)}.pill[aria-current]{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%, 330px),1fr));gap:22px;padding-bottom:clamp(48px, 7vw, 96px)}.post-card{position:relative;display:flex;flex-direction:column;border:1px solid var(--line);border-radius:12px;background:var(--surface);overflow:hidden;transition:border-color .2s}.post-card:hover{border-color:var(--accent)}.post-card .thumb{aspect-ratio:16 / 10;overflow:hidden;background:var(--surface-2)}.post-card .thumb img{width:100%;height:100%;object-fit:cover;display:block}.post-card .thumb.ph{display:grid;place-items:center;background:repeating-linear-gradient(to bottom,transparent 0,transparent 32px,var(--band) 32px,var(--band) 64px),var(--surface-2)}.post-card-body{display:flex;flex-direction:column;gap:10px;padding:20px 22px 24px;flex:1}.meta{display:flex;flex-wrap:wrap;align-items:center;gap:4px 14px;color:var(--faint);font-size:.88rem;font-weight:500}.meta .cat{color:var(--accent);font-weight:600}.post-card .card-title{margin:0;font-family:var(--f-display);font-size:1.3rem;line-height:1.2;letter-spacing:-.02em;font-weight:700}.post-card .card-title a{color:var(--text);text-decoration:none}.post-card .card-title a::after{content:"";position:absolute;inset:0}.post-card:hover h3 a{text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;text-decoration-thickness:2px}.post-card p{margin:0;color:var(--muted);font-size:.97rem}.pager{padding:0 0 clamp(48px, 7vw, 96px)}.pager ul{display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none}.pager a,.pager span{display:inline-block;min-width:42px;padding:9px 14px;text-align:center;border:1px solid var(--line-2);border-radius:8px;color:var(--muted);text-decoration:none;font-weight:500}.pager a:hover{color:var(--text);border-color:var(--muted)}.pager .current{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.progress{position:fixed;top:0;left:0;width:100%;height:3px;z-index:60;background:var(--accent);transform:scaleX(0);transform-origin:0 50%;display:none}@supports (animation-timeline:scroll()){.progress{display:block;animation:sab-grow linear both;animation-timeline:scroll(root block)}@keyframes sab-grow{to{transform:scaleX(1)}}}.article-head{padding:clamp(40px, 6vw, 80px) 0 0}.article-head h1{margin:16px 0 0;font-family:var(--f-display);font-weight:700;font-size:clamp(2rem, 5vw, 3.4rem);line-height:1.06;letter-spacing:-.035em;text-wrap:balance}.article-hero{margin:36px auto 0;max-width:1080px;padding-inline:clamp(20px, 4vw, 40px)}.article-hero img{width:100%;border-radius:12px;border:1px solid var(--line);display:block}.prose{margin-top:40px;font-size:1.0625rem;line-height:1.8;color:var(--text-soft);overflow-wrap:break-word}.prose>*{margin-block:0 1.25em}.prose h2,.prose h3,.prose h4{font-family:var(--f-display);color:var(--text);font-weight:700;letter-spacing:-.025em;line-height:1.15;scroll-margin-top:90px}.prose h2{font-size:clamp(1.6rem, 3.4vw, 2.1rem);margin-top:2.2em}.prose h3{font-size:clamp(1.25rem, 2.6vw, 1.5rem);margin-top:1.9em}.prose a{color:var(--link);text-decoration:underline;text-underline-offset:3px}.prose a:hover{color:var(--accent)}.prose strong{color:var(--text);font-weight:600}.prose ul,.prose ol{padding-left:1.4em}.prose li{margin-bottom:.45em}.prose li::marker{color:var(--accent)}.prose blockquote{margin-inline:0;padding:20px 24px;border-left:3px solid var(--accent);background:var(--surface);border-radius:0 10px 10px 0;color:var(--text-soft)}.prose blockquote>:last-child{margin-bottom:0}.prose code{padding:.15em .4em;border-radius:5px;background:var(--surface-2);border:1px solid var(--line);font:400 .88em var(--f-mono);color:var(--text)}.prose pre{margin-inline:0;padding:20px 22px;overflow-x:auto;border-radius:10px;background:#0A101C;border:1px solid var(--line-2);font:400 .88rem/1.7 var(--f-mono);color:#C9D3E6}.prose pre code{padding:0;border:0;background:none;color:inherit;font-size:inherit}.prose img{border-radius:10px;height:auto}.prose figure{margin-inline:0}.prose figcaption,.prose .wp-element-caption{margin-top:8px;color:var(--faint);font-size:.92rem;text-align:center}.prose svg{max-width:100%;height:auto;background:#F8FAFC;border-radius:10px;padding:12px}.prose hr{border:0;border-top:1px solid var(--line-2);margin-block:2.4em}.prose table{display:block;width:100%;overflow-x:auto;border-collapse:collapse;font-size:.96rem}.prose th,.prose td{padding:10px 14px;border:1px solid var(--line-2);text-align:left}.prose th{background:var(--surface);color:var(--text)}.article-foot{margin-top:48px;padding-top:24px;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;gap:8px}.related{padding:clamp(48px, 7vw, 88px) 0 clamp(8px, 2vw, 24px);border-top:1px solid var(--line);margin-top:64px;background:var(--bg-2)}.related .grid{padding-bottom:clamp(32px, 5vw, 56px)}.prose .wpcf7 p{margin:0 0 1.1em}.prose .wpcf7 label{display:block;font-weight:600;color:var(--text)}.sab input[type="text"],.sab input[type="email"],.sab input[type="search"],.sab input[type="url"],.sab input[type="tel"],.sab textarea{width:100%;padding:13px 15px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);color:var(--text);font:inherit;transition:border-color .2s}.sab input::placeholder,.sab textarea::placeholder{color:var(--faint)}.sab input:focus,.sab textarea:focus{border-color:var(--accent);outline:none;box-shadow:0 0 0 3px rgb(255 181 71 / .2)}.sab input[type="submit"],.search-submit{padding:14px 26px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font:600 .97rem var(--f-body);cursor:pointer}.sab input[type="submit"]:hover,.search-submit:hover{filter:brightness(1.08)}.wpcf7-not-valid-tip{display:block;margin-top:6px;color:var(--danger);font-size:.9rem;font-weight:500}.wpcf7 form .wpcf7-response-output{margin:1.2em 0 0;padding:12px 16px;border:1px solid var(--line-2);border-radius:10px;color:var(--text-soft)}.search-form{display:flex;gap:8px;max-width:520px}.search-form label{flex:1}.apps{display:grid;gap:clamp(20px, 3vw, 32px);padding-bottom:clamp(56px, 8vw, 104px)}.app{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);border:1px solid var(--line-2);border-radius:14px;overflow:hidden;background:var(--surface)}.app:nth-child(even) .app-media{order:2}.app-media{position:relative;min-height:320px;overflow:hidden;background:var(--surface-2)}.app-media img{width:100%;height:100%;object-fit:cover;display:block}.app-media.ph{display:grid;place-items:center;background:repeating-linear-gradient(to bottom,transparent 0,transparent 40px,var(--band) 40px,var(--band) 80px),var(--surface-2)}.app-body{display:flex;flex-direction:column;justify-content:center;gap:16px;padding:clamp(26px, 4vw, 52px)}.app h2{margin:0;font-family:var(--f-display);font-weight:700;font-size:clamp(1.9rem, 4vw, 2.8rem);line-height:1.05;letter-spacing:-.03em}.app .app-desc{margin:0;max-width:48ch;color:var(--muted);font-size:1.08rem}.status{display:inline-flex;align-items:center;gap:8px;align-self:flex-start;margin:0;padding:5px 12px;border:1px solid var(--line-2);border-radius:6px;color:var(--text-soft);font-size:.86rem;font-weight:600}.status::before{content:"";width:8px;height:8px;border-radius:50%;background:var(--accent)}.status.soon::before{background:#fff0;border:2px solid var(--accent)}.app .cta-row{margin-top:10px}.contact{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,.8fr);gap:clamp(28px, 5vw, 64px);align-items:start;padding-bottom:clamp(56px, 8vw, 104px)}.contact-form{border:1px solid var(--line-2);border-radius:14px;background:var(--surface);padding:clamp(22px, 4vw, 44px)}.contact-form .wpcf7-form p{margin:0 0 22px}.contact-form .wpcf7-form p:last-of-type{margin-bottom:0}.contact-form label{display:block;margin-bottom:8px;color:var(--text);font-size:.95rem;font-weight:600}.contact-form .req{color:var(--accent)}.contact-form .wpcf7-form-control-wrap{display:block}.contact-form textarea{display:block;min-height:170px;resize:vertical}.f-row{display:grid;grid-template-columns:1fr 1fr;gap:0 20px}.contact-form .form-foot{display:flex;align-items:center;gap:14px;flex-wrap:wrap}.contact-form .wpcf7-spinner{margin:0}.contact-form .wpcf7-response-output{margin:22px 0 0!important}.wpcf7 form.sent .wpcf7-response-output{border-color:var(--accent);color:var(--text)}.wpcf7 form.invalid .wpcf7-response-output,.wpcf7 form.failed .wpcf7-response-output,.wpcf7 form.aborted .wpcf7-response-output,.wpcf7 form.spam .wpcf7-response-output,.wpcf7 form.unaccepted .wpcf7-response-output{border-color:var(--danger);color:var(--text)}.contact-aside h2{margin:0 0 12px;font-family:var(--f-display);font-size:1.2rem;letter-spacing:-.01em}.contact-links{display:grid;gap:4px;margin:0 0 36px;padding:0;list-style:none}.contact-links a{display:flex;align-items:center;gap:12px;padding:12px 14px;border:1px solid #fff0;border-radius:10px;color:var(--text);text-decoration:none;font-weight:500;transition:border-color .2s,background .2s}.contact-links a:hover{border-color:var(--line-2);background:var(--surface)}.contact-links svg{width:20px;height:20px;flex:none;color:var(--muted)}.contact-links svg.fill{fill:currentColor;stroke:none}.nf{padding:clamp(64px, 12vw, 160px) 0}.nf-code{margin:0;font:700 clamp(5rem, 20vw, 13rem)/.9 var(--f-display);letter-spacing:-.06em;color:var(--text)}.nf h1{margin:12px 0 0;font-family:var(--f-display);font-size:clamp(1.6rem, 3.5vw, 2.4rem);letter-spacing:-.03em}.nf p{color:var(--muted);max-width:46ch}.nf .cta-row{margin-bottom:32px}.site-footer{margin-top:auto;border-top:1px solid var(--line);background:var(--bg-2);padding:56px 0 28px}.foot-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr 1.4fr;gap:36px}.foot-grid .foot-title{margin:0 0 14px;font:600 .92rem var(--f-body);color:var(--text)}.foot-grid ul{margin:0;padding:0;list-style:none;display:grid;gap:10px}.foot-grid a{color:var(--muted);text-decoration:none}.foot-grid a:hover{color:var(--text);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px}.foot-about{max-width:32ch;color:var(--muted);margin:14px 0 0;font-size:.96rem}.foot-grid p.small{margin:0 0 12px;color:var(--muted);font-size:.96rem}.news{display:flex;gap:8px}.news input{flex:1;min-width:0}.news button{padding:0 18px;border:0;border-radius:10px;background:var(--accent);color:var(--accent-ink);font:600 .95rem var(--f-body);cursor:pointer}.foot-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;margin-top:44px;padding-top:22px;border-top:1px solid var(--line);color:var(--faint);font-size:.9rem}.foot-bottom a{color:var(--faint)}@media (max-width:1000px){.bar-actions .social-top{display:none}}@media (max-width:900px){.hero-grid,.work-feature,.about-grid,.app,.contact{grid-template-columns:minmax(0,1fr)}.app:nth-child(even) .app-media{order:0}.app-media{min-height:220px}.wf-media{min-height:220px}.row{grid-template-columns:minmax(0,1fr);gap:4px}.row .mins{padding-top:0}.foot-grid{grid-template-columns:1fr 1fr}.about-photo{max-width:360px}.menu-btn{display:inline-grid}.nav{position:absolute;top:100%;left:0;right:0;margin:0;display:none;flex-direction:column;gap:0;padding:10px clamp(20px, 4vw, 40px) 20px;background:var(--bg);border-bottom:1px solid var(--line)}.site-header.open .nav{display:flex}.nav a{padding:14px 4px;border-radius:0;border-bottom:1px solid var(--line)}.nav a[aria-current]{box-shadow:none;color:var(--accent)}.bar-actions{margin-left:auto}}@media (max-width:560px){.foot-grid{grid-template-columns:1fr}.sec-head{flex-direction:column;align-items:flex-start;gap:14px}.f-row{grid-template-columns:minmax(0,1fr)}.cta-row .btn{flex:1 1 100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.term .ln{opacity:1;animation:none}.term .ln:last-child::after,.progress{animation:none}*{transition-duration:.01ms!important}}