/*! tailwindcss v4.3.4 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:block))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--spacing:.25rem;--radius-xl:.75rem}}@layer utilities{.container{width:100%}@media (min-width:40rem){.container{max-width:40rem}}@media (min-width:48rem){.container{max-width:48rem}}@media (min-width:64rem){.container{max-width:64rem}}@media (min-width:80rem){.container{max-width:80rem}}@media (min-width:96rem){.container{max-width:96rem}}.block{display:block}.contents{display:contents}.flex{display:flex}.grid{display:grid}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.flex-wrap{flex-wrap:wrap}.gap-4{gap:calc(var(--spacing) * 4)}.gap-6{gap:calc(var(--spacing) * 6)}.filter{filter:var(--tw-blur, ) var(--tw-brightness, ) var(--tw-contrast, ) var(--tw-grayscale, ) var(--tw-hue-rotate, ) var(--tw-invert, ) var(--tw-saturate, ) var(--tw-sepia, ) var(--tw-drop-shadow, )}@media (min-width:40rem){.sm\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (min-width:48rem){.md\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (min-width:64rem){.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}}:root{--surface:#fdfbf8;--surface-glass:#fdfbf8f2;--ink:#191a1b;--body-text:#292b30;--text-2:#484b50;--muted:#606369;--border:#dededc;--border-soft:#e7e5e1;--surface-alt:#f6f4f0;--gutter:clamp(20px, 4.1vw, 52px)}html{scroll-behavior:smooth}body{font-size:16px;line-height:1.45}.container{max-width:1360px}.sv-header{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border-bottom:0;position:relative}.sv-header .site-header__bar{min-height:76px;position:relative}.sv-header .site-header__bar:after{content:"";bottom:0;left:var(--gutter);right:var(--gutter);background:var(--border);height:1px;position:absolute}.sv-header .site-brand{letter-spacing:-.055em;white-space:nowrap;font-size:clamp(21px,2.2vw,28px);font-weight:700}.sv-header .site-header__actions{gap:clamp(12px,2.8vw,36px);margin-left:auto}.sv-header .lang-switch{background:0 0;gap:0;padding:0}.sv-header .lang-switch a{color:#57595e;min-width:32px;padding:0 8px;font-size:16px}.sv-header .lang-switch a+a:before{content:"/";color:#9a9b9e;font-weight:400;position:absolute;left:-3px}.sv-header .lang-switch a[aria-current=true]{color:var(--color-primary);box-shadow:none;background:0 0}.sv-header .lang-switch a:hover{color:var(--color-primary);background:0 0}.btn{border-radius:11px;min-height:56px;padding-inline:25px;font-size:18px;font-weight:600}.btn--primary{background:var(--color-primary);box-shadow:inset 0 1px 3px #ffffff45}.btn--primary:hover{background:var(--color-primary)}@supports (color:color-mix(in lab, red, red)){.btn--primary:hover{background:color-mix(in srgb, var(--color-primary), #000 12%)}}.btn--primary:hover{filter:none}.sv-header .btn{min-height:44px;padding:0 20px;font-size:16px}.sv-btn-outline{color:var(--ink);background:0 0;border-color:#d5d5d5;box-shadow:0 2px #00000012}.sv-btn-outline:hover{border-color:var(--color-primary);background:#eef2ff}.sv-hero{grid-template-columns:1.12fr 1fr;align-items:center;gap:0;min-height:590px;padding-top:52px;padding-bottom:58px;display:grid}.sv-hero-copy{z-index:4;position:relative}.sv-badge{align-items:center;gap:calc(var(--spacing) * 2);color:#192b20;background:#e5f6e8;border-radius:2147483647px;margin-bottom:25px;padding:9px 17px;font-size:14px;display:inline-flex}.sv-badge>span{background:#18ad57;border-radius:50%;width:10px;height:10px}.sv-hero h1{letter-spacing:-.047em;text-wrap:balance;max-width:660px;font-size:clamp(40px,4.8vw,66px);font-weight:700;line-height:1.06}.sv-hero h1>span{color:var(--color-primary)}.sv-hero-lead{max-width:590px;color:var(--body-text);margin-top:22px;font-size:clamp(17px,1.65vw,22px);line-height:1.45}.sv-hero-actions{margin-top:30px}.sv-proof{color:var(--text-2);margin-top:29px;font-size:18px}.sv-proof strong{color:var(--ink);font-weight:600}.sv-showcase{isolation:isolate;grid-template-columns:minmax(0,1fr);min-height:485px;margin-left:-15px;display:grid;position:relative}.sv-window{aspect-ratio:800/506;background:#fff;border:1px solid #d6dadc;border-radius:15px;grid-area:1/1;place-self:start end;width:87%;transition:transform .25s,box-shadow .25s;display:block;position:relative;overflow:hidden;box-shadow:0 20px 36px -16px #19213150,0 2px 4px #19213112}.sv-window img{object-fit:cover;object-position:top;width:100%;height:100%;display:block}.sv-window-1{width:76%;margin:7px 2% 0 0;transform:rotate(5deg)}.sv-window-2{width:84%;margin:120px 8% 0 0;transform:rotate(3deg)}.sv-window-3{margin:245px 4% 0 0;transform:rotate(3deg)}.sv-window:hover,.sv-window:focus-visible{z-index:5;transform:rotate(0)translateY(-9px);box-shadow:0 22px 40px -15px #19213165}.sv-section{padding-top:26px;padding-bottom:38px;position:relative}.sv-section:before{content:"";top:0;left:var(--gutter);right:var(--gutter);background:var(--border);height:1px;position:absolute}.sv-section h2,.sv-contact h2{letter-spacing:-.04em;font-size:clamp(29px,3.2vw,40px);font-weight:700;line-height:1.15}.sv-project-grid{margin-top:28px}.sv-project{flex-direction:column;align-items:start;min-width:0;display:flex}.sv-project-image{aspect-ratio:1.8;background:#e8edff;border-radius:14px;width:100%;padding:17px 15px 0;display:block;overflow:hidden}.sv-tint-mint{background:#e4f5e9}.sv-tint-violet{background:#ece4ff}.sv-tint-sand{background:#fff1bf}.sv-tint-peach{background:#ffebd9}.sv-project-image img{border:1px solid #19213112;border-radius:9px 9px 0 0;width:100%;height:auto;transition:transform .3s;display:block;box-shadow:0 7px 14px #19213116}.sv-project-image:hover img{transform:translateY(-4px)}.sv-project h3{letter-spacing:-.04em;margin-top:12px;font-size:30px;font-weight:700;line-height:1.15}.sv-project h3 a{text-decoration:none}.sv-project p{margin-top:8px;margin-bottom:12px;font-size:15px;line-height:1.45}.sv-role{border-radius:var(--radius-xl);color:#0923ba;background:#e1e9ff;margin-top:auto;padding:3px 12px;font-size:13px;font-weight:600;line-height:1.5;display:inline-block}.sv-project:nth-child(2) .sv-role{background:#eae0ff}.sv-case-link{color:var(--color-primary);align-items:center;gap:5px;margin-top:10px;font-size:17px;font-weight:600;text-decoration:none;display:inline-flex}.sv-case-link:hover{text-underline-offset:4px;text-decoration:underline}.sv-case-link span{font-size:23px;line-height:1}.sv-service-grid{margin-top:27px}.sv-service{grid-template-columns:52px 1fr;gap:16px;display:grid}.sv-icon{width:52px;height:52px;color:var(--color-primary);background:#e3edff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;display:inline-flex}.sv-service h3,.sv-steps h3{letter-spacing:-.025em;margin-bottom:14px;padding-top:7px;font-size:19px;font-weight:700}.sv-service p,.sv-steps p{font-size:14px;line-height:1.5}.sv-process{padding-bottom:34px}.sv-steps{margin-top:24px;margin-bottom:0;padding:0;list-style:none}.sv-steps li{grid-template-columns:34px 1fr;gap:13px;padding-right:23px;display:grid;position:relative}.sv-step-number{color:var(--color-primary);background:#e1ebff;border-radius:2147483647px;justify-content:center;align-items:center;width:34px;height:34px;font-size:19px;font-weight:700;display:inline-flex}.sv-steps h3{margin-bottom:8px;padding-top:3px}.sv-step-arrow{color:#858a90;position:absolute;top:29px;right:-5px}.sv-contact{background:#e6eeff;border-radius:22px;align-items:center;gap:28px;width:calc(100% - 40px);max-width:1296px;margin:8px auto 24px;padding:27px 30px;display:flex}.sv-contact-copy{border-right:1px solid #b8c8e8;flex:1;min-width:0;padding-right:24px}.sv-contact p{max-width:550px;margin-top:9px;font-size:16px}.sv-email{color:var(--color-primary);white-space:nowrap;align-items:center;gap:15px;font-size:19px;font-weight:600;text-decoration:none;display:flex}.sv-email .sv-icon{background:#f5f7ff}.sv-contact>.btn{flex-shrink:0;min-height:50px;padding-inline:20px;font-size:17px}.sv-experience{padding-top:45px;padding-bottom:60px}.sv-back{color:var(--muted);margin-bottom:25px;text-decoration:none;display:inline-block}.sv-experience h1{letter-spacing:-.05em;font-size:clamp(40px,6vw,72px);line-height:1.1}.sv-experience-lead{max-width:670px;color:var(--text-2);margin-top:20px;font-size:20px}.sv-experience .timeline{margin-top:42px}.sv-cv{border-bottom:1px solid var(--border);grid-template-columns:minmax(240px,320px) minmax(0,1fr);align-items:center;gap:clamp(30px,5vw,68px);margin:10px 0 54px;padding-bottom:48px;display:grid}.sv-cv-photo{background:#e6eeff;border:1px solid #d8e2f5;border-radius:28px;padding:10px;transform:rotate(-2deg)}.sv-cv-photo img{aspect-ratio:1;object-fit:cover;border-radius:20px;width:100%;display:block}.sv-cv-eyebrow{color:var(--color-primary);letter-spacing:.1em;text-transform:uppercase;margin-bottom:12px;font-size:13px;font-weight:600}.sv-cv h1{font-size:clamp(36px,4.5vw,60px)}.sv-cv-role{color:var(--color-primary);margin-top:12px;font-size:clamp(17px,2vw,23px);font-weight:600}.sv-cv-summary{color:var(--body-text);max-width:70ch;margin-top:18px;font-size:17px;line-height:1.65}.sv-cv-focus{flex-wrap:wrap;gap:8px;margin:22px 0 0;padding:0;list-style:none;display:flex}.sv-cv-focus li{color:#364360;background:#edf1fa;border-radius:8px;padding:6px 12px;font-size:13px}.sv-cv-contacts{flex-wrap:wrap;align-items:center;gap:16px 22px;margin-top:25px;display:flex}.sv-cv-contacts .btn{min-height:48px;font-size:16px}.sv-cv-link{color:var(--text-2);font-size:15px;font-weight:500;text-decoration:none}.sv-cv-link:hover{color:var(--color-primary);text-decoration:underline}.sv-cv-timeline-title{letter-spacing:-.04em;font-size:clamp(30px,3.2vw,40px);line-height:1.15}.sv-blog{padding-bottom:50px}.sv-blog .page-intro{padding-top:44px}.sv-blog .blog-intro{flex-wrap:nowrap;align-items:center;gap:30px;padding-bottom:30px}.sv-blog-eyebrow{color:var(--color-primary);text-transform:uppercase;letter-spacing:.12em;margin-bottom:17px;font-size:12px;font-weight:600}.sv-blog .page-title{letter-spacing:-.055em;font-size:clamp(48px,6vw,76px);line-height:1.05}.sv-blog .page-lead{max-width:68ch;color:var(--text-2);margin-top:19px;font-size:18px;line-height:1.65}.sv-blog-tools{flex-direction:column;flex-shrink:0;align-items:flex-end;gap:14px;display:flex}.sv-blog-count{color:var(--muted);font-size:13px}.sv-blog .rss-link{border:1px solid var(--border);color:var(--color-primary);white-space:nowrap;background:0 0;border-radius:9px;padding:10px 14px;font-size:13px}.sv-blog .rss-link:hover{color:var(--color-primary);background:#e6eeff}.sv-blog .filter{border-top:1px solid var(--border);gap:9px;margin-top:0;padding-top:20px}.sv-blog .filter a{border:1px solid var(--border);color:var(--text-2);background:0 0;border-radius:9px;padding:8px 13px;font-size:14px}.sv-blog .filter a[aria-current=true]{background:var(--color-primary);border-color:var(--color-primary);color:#fff}.sv-blog .filter a:hover{border-color:var(--color-primary)}.sv-blog .filter__count{opacity:.8;font-size:11px}.sv-blog .blog-featured{padding-top:30px}.sv-blog .post-feature{border:1px solid var(--border);background:#ffffff80;border-radius:20px;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);transition:border-color .2s;display:grid;overflow:hidden}.sv-blog .post-feature:hover{border-color:var(--color-primary);color:var(--ink);transform:none}.sv-blog .post-cover--feature{min-height:340px;padding:36px}.sv-blog .post-cover--feature .post-cover__glyph{font-size:clamp(40px,5vw,68px)}.sv-blog .post-cover__badge{color:#273455;background:#ffffffdf;border-radius:7px;padding:6px 10px;font-size:11px;font-weight:600}.sv-blog .post-cover--feature .post-cover__badge{top:25px;left:25px}.sv-blog .post-feature__body{gap:18px;min-width:0;padding:clamp(24px,3.4vw,44px)}.sv-blog .post-feature__meta,.sv-blog .post-card__meta{font-size:12px;line-height:1.5}.sv-blog .post-feature__title{letter-spacing:-.035em;text-wrap:balance;font-size:clamp(26px,2.8vw,38px);line-height:1.2}.sv-blog .post-feature__text{font-size:16px;line-height:1.7}.sv-blog .post-feature__more{gap:12px;padding-top:6px;font-size:15px}.sv-blog .post-tags{gap:6px}.sv-blog .post-tags li{color:#364360;background:#edf1fa;border-radius:6px;padding:4px 9px;font-size:11px}.sv-blog .blog-list{padding-top:36px}.sv-blog-list-title{letter-spacing:-.035em;margin-bottom:23px;font-size:clamp(24px,2.6vw,32px)}.sv-blog .post-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:25px}.sv-blog .post-card{background:0 0;border:0;border-radius:0;transition:none;overflow:visible}.sv-blog .post-card:hover{color:var(--ink);transform:none}.sv-blog .post-card .post-cover{aspect-ratio:1.8;border-radius:14px;height:auto;min-height:0}.sv-blog .post-card__body{gap:12px;padding:17px 0 0}.sv-blog .post-card__title{letter-spacing:-.025em;font-size:22px;line-height:1.3}.sv-blog .post-card:hover .post-card__title{color:var(--color-primary)}.sv-blog .post-card__text{font-size:15px;line-height:1.65}.sv-blog .post-card .post-tags{padding-top:4px}.sv-blog .pager{border-color:var(--border);margin-top:38px}.sv-blog .pager .btn{border-color:var(--border);min-height:46px;font-size:14px}.sv-blog .pager .btn:hover{color:var(--color-primary);background:#e6eeff}.sv-blog .blog-empty{background:#edf1fa;border:1px dashed #c5cfe3;border-radius:18px;padding:55px 24px;line-height:1.6}@media (max-width:1023px){.sv-blog .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.sv-blog .post-feature__title{font-size:27px}}@media (max-width:759px){.sv-blog .page-intro{padding-top:30px}.sv-blog .blog-intro{flex-direction:column;align-items:stretch;gap:22px}.sv-blog .blog-intro__text{flex:auto}.sv-blog .page-lead{font-size:16px}.sv-blog-tools{flex-direction:row;justify-content:space-between;align-items:center}.sv-blog .post-feature{grid-template-columns:minmax(0,1fr)}.sv-blog .post-cover--feature{min-height:240px}.sv-blog .post-feature__body{gap:15px;padding:24px}}@media (max-width:479px){.sv-blog .post-grid{grid-template-columns:minmax(0,1fr);gap:30px}.sv-blog .pager{flex-direction:column;align-items:start;gap:18px}}.sv-case .breadcrumbs{gap:14px;padding-top:30px;font-size:14px}.sv-case-hero{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:center;gap:clamp(28px,5vw,68px);padding:35px 0 42px;display:grid}.sv-case-eyebrow{color:var(--muted);flex-wrap:wrap;gap:12px;font-size:13px;font-weight:500;display:flex}.sv-case-eyebrow>span:first-child{color:var(--color-primary)}.sv-case h1{letter-spacing:-.055em;overflow-wrap:anywhere;margin-top:17px;font-size:clamp(48px,7vw,92px);line-height:1.04}.sv-case-subtitle{letter-spacing:-.025em;margin-top:15px;font-size:clamp(19px,2.1vw,26px);font-weight:600}.sv-case-lead{color:var(--text-2);max-width:57ch;margin-top:17px;font-size:18px;line-height:1.65}.sv-case-actions{flex-wrap:wrap;align-items:center;gap:18px 25px;margin-top:26px;display:flex}.sv-case-actions .btn{min-height:50px;font-size:16px}.sv-case-actions .btn>span{font-size:23px;line-height:1}.sv-case-read{align-items:center;gap:12px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.sv-case-overview{border:1px solid var(--border);background:#ffffff80;border-radius:18px;padding:26px}.sv-case-overview-title{color:var(--muted);border-bottom:1px solid var(--border-soft);padding-bottom:17px;font-size:13px;display:block}.sv-case .facts{border:0;border-radius:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;padding:20px 0;font-size:14px}.sv-case .facts dt{margin-bottom:5px;font-size:12px}.sv-case .facts dd{font-weight:500;line-height:1.5}.sv-case-stack{border-top:1px solid var(--border-soft);padding-top:17px}.sv-case-stack>span{color:var(--muted);font-size:12px}.sv-case-stack .tech-list{gap:7px;margin-top:10px}.sv-case-stack .tech-list li{color:#364360;background:#edf1fa;border:0;border-radius:6px;padding:5px 9px;font-size:12px}.sv-case-visual-bar{color:var(--muted);justify-content:space-between;align-items:center;gap:12px;margin-bottom:13px;font-size:12px;display:flex}.sv-case .gallery{gap:18px;margin-top:0}.sv-case .gallery__stage{background:var(--tint-bg);border:1px solid #19213108;border-radius:22px;padding:clamp(16px,3.4vw,44px)}.sv-case .gallery__desktop{border-radius:10px;box-shadow:0 12px 35px -12px #19213135}.sv-case .gallery__stage:focus-visible{outline-offset:5px}.sv-case .gallery__grid{grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:18px}.sv-case .gallery__item{aspect-ratio:4/3;background:var(--surface-alt);border-radius:18px;padding:18px}.sv-case .gallery__item img{object-fit:contain;object-position:center;border-radius:8px}.sv-case-cover{background:var(--tint-bg);border-radius:22px;padding:clamp(16px,3.4vw,44px)}.sv-case-cover img{border-radius:10px;width:100%;max-width:1000px;margin:auto;display:block}.sv-case-story{grid-template-columns:230px minmax(0,1fr);align-items:start;gap:clamp(32px,5vw,68px);margin-top:60px;scroll-margin-top:30px;display:grid}.sv-case-sidebar{min-width:0;position:sticky;top:30px}.sv-case-sidebar h2{color:var(--ink);font-size:13px;font-weight:600}.sv-case-sidebar nav ul{border-left:1px solid var(--border);margin:17px 0 0;padding:0;list-style:none}.sv-case-sidebar nav a{color:var(--muted);padding:8px 0 8px 17px;font-size:14px;line-height:1.45;text-decoration:none;display:block}.sv-case-sidebar nav a:hover{color:var(--color-primary);background:#edf1fa}.sv-case-highlights{border-top:1px solid var(--border);margin-top:25px;padding-top:25px}.sv-case-highlights ul{gap:13px;margin:15px 0 0;padding:0;list-style:none;display:grid}.sv-case-highlights li{color:var(--text-2);padding-left:16px;font-size:13px;line-height:1.6;position:relative}.sv-case-highlights li:before{content:"";background:var(--color-primary);border-radius:50%;width:5px;height:5px;position:absolute;top:.65em;left:0}.sv-case-content{min-width:0}.sv-case-content>.block,.sv-case-content>.block--panel{border-top:1px solid var(--border);margin-top:34px;padding-top:34px}.sv-case-content>:first-child{border-top:0;margin-top:0;padding-top:0}.sv-case-content .block--split{display:block}.sv-case-content .block__title{letter-spacing:-.035em;scroll-margin-top:30px;font-size:clamp(26px,2.8vw,34px)}.sv-case-content .block__main{margin-top:20px}.sv-case-content .rich-text{max-width:none;font-size:17px;line-height:1.8}.sv-case-content .block--panel{background:#edf1fa;border:0;border-radius:18px;padding:28px}.sv-case-content .cards{grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:14px;margin-top:23px}.sv-case-content .cards__item{background:#ffffff70;border-radius:13px;padding:22px}.sv-case-content .cards--plain .cards__item{background:0 0}.sv-case-content .cards__title{font-size:18px}.sv-case-content .cards__text{font-size:15px;line-height:1.65}.sv-case-content .steps-layout{gap:24px;margin-top:23px}.sv-case-content .steps{flex-basis:240px}.sv-case-content .code{flex-basis:340px}.sv-case-content .banner{color:var(--ink);background:#e6eeff}.sv-case-next{border-top:1px solid var(--border);margin-top:50px;padding:30px 0 40px}.sv-case-next>a{color:var(--ink);align-items:center;gap:26px;text-decoration:none;display:flex}.sv-case-next-image{background:var(--tint-bg,#e8edff);aspect-ratio:1.6;border-radius:12px;flex-shrink:0;width:170px;padding:12px 12px 0;display:block;overflow:hidden}.sv-case-next-image img{border-radius:6px 6px 0 0;width:100%;display:block}.sv-case-next-copy{flex-direction:column;gap:8px;max-width:620px;display:flex}.sv-case-next-copy>span{color:var(--muted);font-size:13px}.sv-case-next-copy strong{letter-spacing:-.04em;font-size:clamp(26px,3vw,38px);line-height:1.1}.sv-case-next-arrow{border:1px solid var(--border);color:var(--color-primary);border-radius:50%;margin-left:auto;padding:14px;transition:background-color .2s}.sv-case-next a:hover .sv-case-next-arrow{background:#e6eeff}@media (max-width:1023px){.sv-case-hero{grid-template-columns:minmax(0,1fr)}.sv-case-overview{padding:22px}.sv-case .facts{grid-template-columns:repeat(auto-fit,minmax(140px,1fr))}.sv-case-story{grid-template-columns:180px minmax(0,1fr);gap:28px}}@media (max-width:759px){.sv-case-hero{padding-top:24px;padding-bottom:30px}.sv-case-lead{font-size:17px}.sv-case-visual-bar{align-items:start;font-size:11px}.sv-case-visual-bar>span:last-child{text-align:right}.sv-case-story{grid-template-columns:minmax(0,1fr);gap:30px;margin-top:35px}.sv-case-sidebar{border-bottom:1px solid var(--border);padding-bottom:24px;position:static}.sv-case-sidebar nav ul{border:0;flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.sv-case-sidebar nav a{border:1px solid var(--border);border-radius:8px;padding:8px 12px;font-size:13px}.sv-case-highlights ul{grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr))}.sv-case-next>a{flex-wrap:wrap;gap:16px}.sv-case-next-image{width:100px}.sv-case-next-copy{flex:1}.sv-case-next-copy>span:last-child{display:none}.sv-case-next-arrow{padding:10px}.sv-cv{grid-template-columns:minmax(0,1fr);gap:30px;margin-bottom:34px;padding-bottom:34px}.sv-cv-photo{width:min(240px,100%)}.sv-cv-summary{font-size:16px}}@media (min-width:760px){.sv-header .site-nav,.js .sv-header .site-nav{gap:clamp(20px,3vw,42px);margin-left:clamp(15px,5vw,70px);font-size:17px}}@media (min-width:1024px){.sv-service+.sv-service{border-left:1px solid var(--border);padding-left:22px}.sv-service-grid{gap:20px}}@media (max-width:1199px){.sv-header .site-header__write{display:none}.sv-contact{flex-wrap:wrap;gap:22px}.sv-contact-copy{border:0;flex-basis:100%;padding:0}.sv-contact>.btn{margin-left:auto}.sv-showcase{min-height:430px}.sv-window-2{margin-top:110px}.sv-window-3{margin-top:220px}.sv-hero{min-height:560px}.sv-hero .btn{min-height:52px;padding-inline:20px;font-size:16px}}@media (max-width:1023px){.sv-header .site-header__write{display:none}.sv-hero{grid-template-columns:1fr 1fr}.sv-hero h1{font-size:clamp(38px,5.1vw,52px)}.sv-hero-actions{gap:12px}.sv-showcase{min-height:390px}.sv-window-3{margin-top:210px}.sv-steps li:nth-child(2) .sv-step-arrow{display:none}}@media (max-width:759px){.sv-header .site-header__bar{min-height:72px}.sv-header .site-brand{font-size:23px}.sv-header .site-header__actions{gap:12px}.sv-header .site-nav{font-size:17px}.sv-hero{grid-template-columns:1fr;gap:30px;padding-top:34px;padding-bottom:35px}.sv-hero h1{max-width:610px;font-size:clamp(38px,7.2vw,58px)}.sv-badge{margin-bottom:23px;font-size:12px}.sv-hero-lead{margin-top:20px;font-size:18px}.sv-proof{margin-top:22px;font-size:16px}.sv-showcase{width:100%;max-width:560px;min-height:0;margin:0 auto}.sv-window-1{width:75%;margin-top:0;margin-right:4%}.sv-window-2{width:80%;margin-top:clamp(66px,14vw,92px);margin-right:10%}.sv-window-3{width:86%;margin-top:clamp(148px,31.5vw,207px);margin-right:7%}.sv-section{padding-top:24px;padding-bottom:30px}.sv-project-grid{gap:30px}.sv-project-image{aspect-ratio:1.85}.sv-project h3{font-size:28px}.sv-project p{font-size:16px}.sv-contact{gap:22px;width:calc(100% - 24px);padding:25px 20px}.sv-contact h2{font-size:31px}.sv-contact>.btn{margin-left:0}.sv-email{white-space:normal;overflow-wrap:anywhere;font-size:17px}}@media (max-width:479px){.sv-hero-actions{flex-direction:column;align-items:stretch}.sv-hero-actions>.btn{width:100%}.sv-window-3{margin-top:140px}.sv-service{gap:16px}.sv-step-arrow{display:none}.sv-steps{gap:24px}.sv-contact>.btn{width:100%}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.sv-window,.sv-project-image img{transition:none}}:where(.sv-home,.sv-case,.sv-blog,.sv-experience,.project-list,.post){overflow-wrap:anywhere}:where(.sv-hero-copy,.sv-service>div,.sv-steps li>div,.sv-cv-copy,.sv-cv-contacts,.sv-case-intro,.sv-case-overview,.post-byline__text){min-width:0}.btn{white-space:normal;text-align:center;max-width:100%}.btn svg{flex-shrink:0}.sv-header .lang-switch a{min-width:44px;height:44px}.sv-header .lang-switch a:after{inset:0}.sv-case-link,.sv-cv-link,.sv-back,.sv-case-read,.filter a,.tag-link,.rss-link{align-items:center;min-height:44px}.sv-case-link,.sv-cv-link,.sv-back{display:inline-flex}.sv-email{min-width:0;max-width:100%}.sv-case-stack .tech-list li,.technologies li,.tech-list li{overflow-wrap:anywhere;max-width:100%}.sv-case-content .code,.post-body .code{max-width:100%}.code pre{overscroll-behavior-x:contain}.post-body table,.rich-text table{overscroll-behavior-x:contain;max-width:100%;display:block;overflow-x:auto}.post-body td,.post-body th,.rich-text td,.rich-text th{vertical-align:top;padding:10px 12px}.lightbox__image{touch-action:pan-y pinch-zoom}.contact-dialog{overscroll-behavior-y:contain;max-height:calc(100dvh - 24px)}html:has([data-contact-dialog][open]){overflow:hidden}@media (max-width:1023px){.sv-header{background:var(--surface);z-index:20;position:sticky;top:0}.sv-header .site-header__bar{flex-wrap:wrap;gap:0 10px;min-height:72px}.sv-header .site-brand{font-size:clamp(20px,3vw,25px)}.sv-header .site-header__actions{gap:8px}.sv-header .site-header__write{display:none}.js .sv-header .menu-toggle{flex-shrink:0;display:inline-flex}.sv-header .site-nav{flex-wrap:wrap;flex-basis:100%;order:3;margin-left:0}.js .sv-header .site-nav{padding:12px var(--gutter) max(20px, env(safe-area-inset-bottom));background:var(--surface);border-bottom:1px solid var(--border);overscroll-behavior-y:contain;flex-flow:column;align-items:stretch;gap:4px;max-height:calc(100dvh - 72px);margin:0;display:none;position:absolute;top:100%;left:0;right:0;overflow-y:auto;box-shadow:0 24px 40px -24px #19213140}.js .sv-header.is-open .site-nav{display:flex}.js .sv-header .site-nav a{border-radius:9px;min-height:48px;padding:12px;font-size:17px}.js .sv-header .site-nav a[aria-current=page]{box-shadow:none;background:#edf1fa}.js .sv-header .site-nav__write{color:#fff;margin-top:10px;display:inline-flex}html:has(.sv-header.is-open){overflow:hidden}html{scroll-padding-top:92px}.sv-case-story,.sv-case-content .block__title,.post-body h2{scroll-margin-top:8px}}@media (max-width:759px){:root{--gutter:clamp(16px, 4.5vw, 28px);--section-gap:48px;--block-gap:40px}.sv-header .site-brand{white-space:normal;max-width:calc(100% - 148px);line-height:1.15}.sv-header .site-header__actions{flex-shrink:0;gap:4px}.sv-hero{min-height:0}.sv-hero h1{font-size:clamp(34px,7.7vw,52px);line-height:1.1}.sv-badge{max-width:100%;font-size:13px;line-height:1.4}.sv-badge>span{flex-shrink:0}.sv-hero .btn{min-height:50px}.sv-service p,.sv-steps p{font-size:16px;line-height:1.6}.sv-steps li{padding-right:0}.sv-step-arrow{display:none}.sv-project p{line-height:1.6}.sv-section h2,.sv-contact h2{font-size:clamp(27px,6.6vw,34px)}.sv-contact{gap:18px}.sv-contact-copy{flex-basis:100%}.sv-contact>.btn{width:100%}.sv-email{gap:10px;font-size:16px}.sv-email .sv-icon{width:44px;height:44px}.sv-experience{padding-top:22px;padding-bottom:36px}.sv-cv{gap:24px}.sv-cv h1{font-size:clamp(32px,8vw,44px)}.sv-experience-lead{font-size:17px;line-height:1.6}.sv-experience .timeline__item{grid-template-columns:minmax(0,1fr);gap:10px;padding-block:22px;display:grid}.sv-experience .timeline__period{font-size:14px}.sv-experience .timeline__text{line-height:1.65}.sv-case h1{font-size:clamp(40px,11vw,60px)}.sv-case .facts{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.sv-case .facts dd{font-size:15px}.sv-case-overview{padding:20px}.sv-case .gallery__stage,.sv-case-cover{border-radius:15px;padding:12px}.sv-case .gallery__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.sv-case .gallery__item{aspect-ratio:3/4;border-radius:12px;padding:8px}.sv-case .gallery__zoom{width:32px;height:32px;bottom:6px;right:6px}.sv-case-sidebar nav a{min-height:44px;display:flex}.sv-case-highlights li{font-size:14px}.sv-case-content .rich-text{font-size:16px;line-height:1.75}.sv-case-content .block--panel{padding:20px}.sv-case-content .block__title{font-size:27px}.sv-case-next-image{width:88px}.sv-case-next-copy strong{font-size:26px}.sv-case-next>a{gap:12px}.sv-case-next-arrow{padding:9px}.sv-blog .post-grid{grid-template-columns:minmax(0,1fr)}.sv-blog .post-card__text,.sv-blog .post-feature__text{font-size:16px}.sv-blog .filter a{min-height:44px}.sv-blog .post-feature__body{padding:22px}.sv-blog .post-cover--feature{min-height:210px}.sv-blog .post-feature__meta,.sv-blog .post-card__meta{font-size:13px}.sv-blog .post-tags li{font-size:12px}.sv-blog .pager__links{width:100%}.sv-blog .pager__links>a{flex:1}.project-list{gap:26px;padding-top:26px}.project-feature{border-radius:16px}.project-feature__media{aspect-ratio:1.7;min-height:0;padding:16px 16px 0}.project-feature__body{gap:16px;min-width:0;padding:22px}.project-feature__actions{flex-direction:column;align-items:stretch}.project-feature__actions>.btn{width:100%;min-height:48px;font-size:16px}.contact-panel{padding:24px 20px}.contact-panel__aside{min-width:0;max-width:100%}.contact-panel__lead{font-size:16px;line-height:1.6}.post-head{padding-top:26px}.post-head__title{font-size:clamp(30px,7vw,40px);line-height:1.15}.post-head__lead{font-size:17px}.post-head__meta{gap:10px}.post-hero{border-radius:16px;height:200px;margin-top:26px}.post-layout{gap:28px;margin-top:28px}.post-toc ol{border:0;flex-wrap:wrap;gap:8px;display:flex}.post-toc a{border:1px solid var(--border);border-radius:8px;min-height:44px;margin:0;padding:10px 12px;font-size:14px}.post-side{gap:20px}.post-body{font-size:17px;line-height:1.75}.post-body h2{margin-top:34px}.post-body .code pre,.sv-case .code pre{padding:16px;font-size:13px}.post-body .tip{padding:16px;font-size:15px}.author-card{gap:14px;padding:20px}.author-card>.btn{width:100%}.site-footer{padding-top:24px;padding-bottom:max(24px, env(safe-area-inset-bottom));align-items:center;font-size:13px}.site-footer a{align-items:center;min-height:44px;display:inline-flex}.contact-dialog{border-radius:16px;width:calc(100% - 24px);padding:20px}.contact-dialog__row{gap:16px}.contact-dialog__row>*{flex-basis:100%}.contact-dialog__submit{width:100%}.lightbox__figure{padding:64px 12px max(86px, env(safe-area-inset-bottom))}.lightbox__caption{font-size:13px}.lightbox__btn--prev,.lightbox__btn--next{bottom:max(16px, env(safe-area-inset-bottom))}}@media (min-width:640px) and (max-width:759px){.sv-blog .post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:379px){.sv-header .site-brand{font-size:19px}.sv-case .facts{grid-template-columns:minmax(0,1fr)}.sv-cv-contacts>.btn{width:100%}.sv-case-actions{flex-direction:column;align-items:stretch}.sv-case-actions .btn{width:100%}}@media (hover:none){.sv-window:hover{transform:rotate(3deg)}.sv-window-1:hover{transform:rotate(5deg)}.sv-project-image:hover img,.gallery__item:hover img{transform:none}}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}