@font-face{font-family:Satoshi;src:url(/fonts/satoshi-regular.woff2)format("woff2");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-medium.woff2)format("woff2");font-weight:500 600;font-style:normal;font-display:swap}@font-face{font-family:Satoshi;src:url(/fonts/satoshi-bold.woff2)format("woff2");font-weight:700 900;font-style:normal;font-display:swap}:root{--lightningcss-light:initial;--lightningcss-dark: ;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--container:min(1200px, calc(100% - 48px));--container-mobile:min(100% - 28px, 1200px);--content-narrow:720px;--section-y:clamp(48px, 7vw, 96px);--page-intro-y:clamp(60px, 7vh, 88px);--ink:#151817;--ink-soft:#242927;--muted:#59615e;--muted-2:#747d79;--surface:#fff;--surface-soft:#f7f7f3;--surface-warm:#f1efe8;--line:#dfe3df;--line-warm:#dedbd1;--dark:#151817;--dark-deep:#0c0f0e;--white:#fff;--teal:#269987;--teal-dark:#0f766e;--teal-light:#72dbc9;--coral:#e45f52;--coral-dark:#b84a40;--accent:var(--teal);--accent-strong:var(--teal-dark);--accent-soft:#dff5ef;--radius-sm:12px;--radius:18px;--radius-lg:24px;--pill:999px;--shadow-xs:0 1px 2px #0c0f0e0a;--shadow-soft:0 14px 38px #0c0f0e0e;--shadow-card:0 24px 70px #0c0f0e17;--shadow-coral:0 14px 36px #e45f523d;--glass-border:#ffffff29;--glass-bg:#0c0f0e94;--font-sans:"Satoshi", "Segoe UI", Helvetica, Arial, sans-serif;--font-display:"Satoshi", "Segoe UI", Helvetica, Arial, sans-serif;--text-xs:.75rem;--text-sm:.875rem;--text-base:1rem;--text-lg:clamp(1.0625rem, 1.5vw, 1.1875rem);--heading-sm:clamp(1.25rem, 2vw, 1.5rem);--heading-md:clamp(2.15rem, 4.2vw, 4rem);--heading-xl:clamp(2.8rem, 4.7vw, 5.1rem);--ease-standard:cubic-bezier(.22, 1, .36, 1);--duration-fast:.16s;--duration-base:.24s;--ease:var(--duration-fast) ease;font-family:var(--font-sans);color:var(--ink);background:var(--surface-warm);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}html{scroll-behavior:smooth;scrollbar-gutter:stable;scrollbar-color:#78a99f var(--surface-warm)}::-webkit-scrollbar{width:12px}::-webkit-scrollbar-track{background:var(--surface-warm)}::-webkit-scrollbar-thumb{border:3px solid var(--surface-warm);border-radius:var(--pill);background:#78a99f}::-webkit-scrollbar-thumb:hover{background:var(--accent-strong)}body{background:var(--surface-warm);cursor:default;min-width:320px;margin:0}a,button{font:inherit;cursor:pointer}img{max-width:100%;display:block}::selection{color:var(--white);background:var(--teal-dark)}.site-shell{color:var(--ink);background:var(--surface-warm)}.site-shell main{min-height:100vh;overflow:hidden}:focus-visible{outline:3px solid var(--teal-light);outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--font-display);text-wrap:balance}h1{max-width:940px;font-size:var(--heading-xl);letter-spacing:-.055em;font-weight:760;line-height:.94}h2{color:var(--ink);font-size:var(--heading-md);letter-spacing:-.045em;font-weight:720;line-height:.98}h3{color:var(--ink);font-size:var(--heading-sm);letter-spacing:-.025em;font-weight:700;line-height:1.15}p{text-wrap:pretty}.hero{min-height:calc(100svh - 78px);color:var(--ink);background:radial-gradient(circle at 86% 16%, #26998726, transparent 29%), radial-gradient(circle at 72% 92%, #e45f521c, transparent 26%), var(--surface-warm);isolation:isolate;align-items:center;display:flex;position:relative;overflow:hidden}.hero:before{content:"";z-index:-1;opacity:.28;background-image:linear-gradient(#1518170e 1px,#0000 1px),linear-gradient(90deg,#1518170e 1px,#0000 1px);background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 4%,#000 52% 100%);mask-image:linear-gradient(90deg,#0000 4%,#000 52% 100%)}.button,.text-link,.service,.stack-card__head{align-items:center;display:inline-flex}.hero__content{width:var(--container);min-width:0;padding:var(--page-intro-y) 0;grid-template-columns:minmax(0,.96fr) minmax(440px,.9fr);align-items:center;gap:clamp(54px,7vw,104px);margin:0 auto;display:grid}.hero__copy{min-width:0;max-width:690px;animation:hero-enter .65s var(--ease-standard) both}.hero__eyebrow{width:fit-content;max-width:100%;color:var(--teal-dark);font-size:var(--text-xs);letter-spacing:.12em;text-transform:uppercase;overflow-wrap:anywhere;align-items:center;gap:10px;margin-bottom:24px;font-weight:760;line-height:1.4;display:inline-flex}.hero__eyebrow span{background:var(--coral);border-radius:50%;width:9px;height:9px;box-shadow:0 0 0 5px #e45f521f}.hero h1{max-width:780px;font-size:var(--heading-xl);letter-spacing:-.062em;line-height:.92}.hero__lead{max-width:620px;color:var(--muted);font-size:var(--text-lg);margin-top:28px;line-height:1.68}.hero__actions,.contact__actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.button{border-radius:var(--pill);min-height:50px;color:var(--white);transition:transform var(--duration-base) var(--ease-standard), border-color var(--duration-fast) ease, background var(--duration-fast) ease, box-shadow var(--duration-base) ease;border:1px solid #0000;justify-content:center;gap:10px;padding:0 20px;font-weight:720;text-decoration:none}.button:hover{transform:translateY(-3px)}.button--primary{background:var(--coral);box-shadow:var(--shadow-coral)}.button--primary:hover{box-shadow:0 18px 44px #e45f5252}.button--secondary{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#ffffff14;border-color:#ffffff2e}.hero .button--secondary{color:var(--ink);box-shadow:var(--shadow-xs);background:#ffffff8a;border-color:#15181729}.hero .button--secondary:hover{background:var(--white);border-color:#0f766e57}.hero__highlights{border-top:1px solid #15181721;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:650px;margin-top:46px;padding-top:22px;display:grid}.hero__highlight strong,.hero__highlight span{display:block}.hero__highlight strong{color:var(--ink);font-size:.95rem;line-height:1.2}.hero__highlight span{color:var(--muted-2);font-size:var(--text-xs);margin-top:5px;line-height:1.4}.hero__visual-wrap{min-width:0;animation:hero-enter .75s .1s var(--ease-standard) both}@keyframes hero-enter{0%{opacity:0;transform:translateY(20px)}}@media (prefers-reduced-motion:reduce){.hero__copy,.hero__visual-wrap{animation:none}}.product-visual{justify-content:center;align-items:center;min-height:570px;display:flex;position:relative}.product-visual__glow{aspect-ratio:1;filter:blur(68px);background:#26998726;border-radius:50%;width:78%;position:absolute}.dashboard-card{z-index:2;border-radius:var(--radius-lg);background:#ffffffeb;border:1px solid #1518171f;width:min(100%,560px);position:relative;overflow:hidden;transform:rotate(1.5deg);box-shadow:0 36px 90px #0c0f0e2b}.dashboard-card__bar{border-bottom:1px solid var(--line);height:48px;color:var(--muted-2);font-size:var(--text-xs);align-items:center;gap:12px;padding:0 16px;display:flex}.dashboard-card__bar>span{margin-right:auto}.window-dots{gap:5px;display:flex}.window-dots i{background:var(--line-warm);border-radius:50%;width:7px;height:7px}.window-dots i:first-child{background:var(--coral)}.window-dots i:nth-child(2){background:#eab65b}.window-dots i:last-child{background:var(--teal)}.dashboard-card__body{grid-template-columns:64px 1fr;min-height:390px;display:grid}.dashboard-sidebar{border-right:1px solid var(--line);background:var(--surface-soft);flex-direction:column;align-items:center;gap:18px;padding-top:26px;display:flex}.dashboard-sidebar span{border-radius:var(--pill);background:#d8ddda;width:22px;height:7px}.dashboard-sidebar span.is-active{background:var(--teal-dark);border-radius:7px;height:22px}.dashboard-main{min-width:0;padding:28px}.dashboard-heading{justify-content:space-between;align-items:flex-start;gap:16px;display:flex}.dashboard-heading small,.dashboard-heading strong{display:block}.dashboard-heading small{color:var(--muted-2);font-size:.68rem}.dashboard-heading strong{color:var(--ink);margin-top:5px;font-size:1.05rem}.status-pill{border-radius:var(--pill);min-height:28px;color:var(--teal-dark);background:var(--accent-soft);align-items:center;gap:5px;padding:0 10px;font-size:.68rem;font-weight:700;display:inline-flex}.metric-grid{grid-template-columns:1.35fr .85fr;gap:12px;margin-top:24px;display:grid}.metric-card{border:1px solid var(--line);border-radius:var(--radius);min-height:164px;color:var(--muted-2);background:var(--surface);flex-direction:column;align-items:flex-start;padding:18px;display:flex}.metric-card--accent{color:#ffffffa6;background:var(--dark)}.metric-card span{margin-top:10px;font-size:.7rem}.metric-card strong{color:var(--ink);letter-spacing:-.04em;margin-top:4px;font-size:1.75rem}.metric-card--accent strong{color:var(--white)}.mini-chart{align-items:flex-end;gap:7px;width:100%;height:50px;margin-top:auto;display:flex}.mini-chart i{background:var(--teal);border-radius:4px 4px 2px 2px;flex:1;height:35%}.mini-chart i:nth-child(2){height:56%}.mini-chart i:nth-child(3){height:44%}.mini-chart i:nth-child(4){height:72%}.mini-chart i:nth-child(5){height:63%}.mini-chart i:nth-child(6){background:var(--coral);height:94%}.dashboard-table{border:1px solid var(--line);border-radius:var(--radius);gap:12px;margin-top:14px;padding:14px 16px;display:grid}.dashboard-table span{border-radius:var(--pill);background:linear-gradient(90deg,#dfe3df 35%,#0000 35% 43%,#edf0ed 43% 78%,#0000 78%);height:8px}.mobile-card,.api-card{z-index:3;box-shadow:var(--shadow-card);background:#fffffff5;border:1px solid #15181721;position:absolute}.mobile-card{border-radius:var(--radius-lg);flex-direction:column;width:164px;min-height:236px;padding:30px 18px 18px;display:flex;bottom:4px;right:-24px;transform:rotate(5deg)}.mobile-card__notch{border-radius:var(--pill);background:var(--ink);width:46px;height:6px;position:absolute;top:10px;left:50%;transform:translate(-50%)}.mobile-card svg{color:var(--teal-dark)}.mobile-card span{color:var(--muted-2);margin-top:30px;font-size:.68rem}.mobile-card strong{color:var(--ink);margin-top:5px;font-size:1.05rem}.mobile-card__button{border-radius:var(--pill);background:var(--coral);height:36px;margin-top:auto}.api-card{border-radius:var(--radius);align-items:center;gap:12px;min-width:210px;padding:15px 16px;display:flex;top:14px;left:-34px;transform:rotate(-4deg)}.api-card svg{color:var(--teal-dark)}.api-card div{margin-right:auto}.api-card span,.api-card strong{display:block}.api-card span{color:var(--muted-2);font-size:.66rem}.api-card strong{color:var(--ink);margin-top:3px;font-size:.85rem}.api-card i{background:var(--teal);width:9px;height:9px;box-shadow:0 0 0 5px var(--accent-soft);border-radius:50%}@media (width>=981px) and (width<=1280px){.mobile-card{right:12px}}.page-content{min-height:70vh}.not-found{width:var(--container);min-height:70vh;padding:var(--section-y) 0;flex-direction:column;justify-content:center;align-items:flex-start;margin:0 auto;display:flex}.not-found h1{max-width:900px;color:var(--ink)}.not-found .button{margin-top:28px}.section,.contact{width:var(--container);margin:0 auto}.section{isolation:isolate;padding:var(--section-y) 0;position:relative}.section:before{content:"";z-index:-1;pointer-events:none;width:100vw;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.section--intro{padding-top:56px}.section--intro:before{background:linear-gradient(#f8f7f2 0%,#f4f3ed 100%)}.section--split{grid-template-columns:minmax(0,.9fr) minmax(280px,1.1fr);align-items:start;gap:36px;display:grid}.section--split:before{background:radial-gradient(circle at 16% 24%,#2699871c,#0000 28%),radial-gradient(circle at 88% 74%,#b8552e12,#0000 24%),linear-gradient(120deg,#eff8f5 0%,#faf7f0 58%,#f6f2e8 100%)}.section__header{max-width:var(--content-narrow);margin-bottom:36px}.section__header--row{justify-content:space-between;align-items:end;gap:24px;max-width:none;display:flex}.section__kicker{color:var(--coral-dark);font-size:var(--text-xs);letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;font-weight:760}.service-grid,.stack-grid{gap:16px;display:grid}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);min-height:76px;color:var(--ink-soft);box-shadow:none;transition:transform var(--duration-base) var(--ease-standard), border-color var(--duration-fast) ease;gap:12px;padding:20px;font-weight:650}.service:hover{border-color:#26998759;transform:translateY(-3px)}.service svg{color:var(--teal-dark);flex:none}.stack-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.stack-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:none;transition:transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) ease, border-color var(--duration-fast) ease}.stack-card:hover{box-shadow:var(--shadow-soft);border-color:#2699874d;transform:translateY(-3px)}.stack-card{padding:20px}.stack-card__head{gap:10px;margin-bottom:18px}.stack-card__head svg{color:var(--teal-dark)}.tags{flex-wrap:wrap;gap:8px;display:flex}.tags span{border-radius:var(--pill);background:var(--surface-soft);min-height:30px;color:var(--ink-soft);align-items:center;gap:7px;padding:0 10px;font-size:.85rem;font-weight:650;display:inline-flex}.stack-tag__icon{color:var(--teal-dark);flex:none}.process{border-top:1px solid var(--line-warm)}.process:before{background:linear-gradient(#72dbc90b 1px,#0000 1px) 0 0/54px 54px,linear-gradient(90deg,#72dbc90b 1px,#0000 1px) 0 0/54px 54px,radial-gradient(circle at 78% 18%,#2699873d,#0000 30%),linear-gradient(135deg,#111716 0%,#0c0f0e 72%)}.process .section__kicker,.process h2{color:var(--white)}.process .section__kicker{color:var(--teal-light)}.process-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.process-card{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--dark-deep);color:#ffffffb8;border-color:#ffffff1f;min-height:230px;padding:20px}.process-card__index{color:#ffffff57;font-size:.85rem;font-weight:900}.process-card svg{color:var(--teal-light);margin:22px 0 16px}.process-card h3{color:var(--white)}.process-card p{margin-top:12px;line-height:1.62}.text-link{color:var(--coral-dark);gap:8px;font-weight:850;text-decoration:none}#stack:before{background:radial-gradient(circle at 88% 16%,#2699871a,#0000 25%),linear-gradient(#f6f2ea 0%,#fff 54%,#edf6f4 100%)}#projects:before{background:linear-gradient(135deg,#fff 0%,#faf8f3 100%)}.project-showcase{grid-template-columns:1fr;gap:18px;display:grid}.project-showcase__footer{justify-content:flex-end;margin-top:28px;display:flex}.project-showcase__footer .text-link{border-radius:var(--pill);background:#ffffffad;border:1px solid #b84a403d;min-height:48px;padding:0 18px}.project-showcase__footer .text-link:hover{background:var(--white);border-color:#b84a4075}.project-case{border:1px solid var(--line);border-radius:var(--radius-lg);background:var(--surface);min-width:0;color:inherit;box-shadow:none;transition:transform var(--duration-base) var(--ease-standard), box-shadow var(--duration-base) ease, border-color var(--duration-fast) ease;grid-column:1/-1;text-decoration:none;display:block;overflow:hidden}.project-case:hover{box-shadow:var(--shadow-soft);border-color:#26998747;transform:translateY(-3px)}.project-case--featured{box-shadow:var(--shadow-soft)}.project-case--featured:hover{box-shadow:var(--shadow-card)}.project-case .project-case__body{flex:1;grid-template-rows:auto 1fr auto;grid-template-columns:minmax(260px,.72fr) minmax(0,1.28fr);align-items:start;column-gap:clamp(42px,6vw,86px);padding:clamp(30px,3.5vw,46px);display:grid}.project-case .project-case__meta,.project-case h3{grid-column:1}.project-case .project-case__summary{grid-area:1/2/span 2}.project-case .tags{grid-area:3/2}.project-case__cta{grid-area:3/1;align-self:end}.project-case__meta{color:var(--muted-2);font-size:var(--text-xs);letter-spacing:.08em;text-transform:uppercase;flex-wrap:wrap;gap:8px 14px;margin-bottom:20px;font-weight:720;display:flex}.project-case__meta span:last-child{color:var(--coral-dark)}.project-case h3{max-width:540px;font-size:clamp(1.65rem,3vw,2.8rem)}.project-case__summary p{max-width:680px;color:var(--muted);font-size:var(--text-lg);line-height:1.68}.project-case .tags{margin-top:auto}.project-preview{background:#dcece7;min-height:340px;padding:46px 38px;position:relative;overflow:hidden}.project-preview--image{background:#0c0f0e;align-self:start;min-height:0;padding:0}.project-preview--image img{object-fit:contain;object-position:center;width:100%;height:auto}.project-case .project-preview--image{width:100%;min-height:0}.project-preview--image:before{display:none}.project-case--featured .project-preview:not(.project-preview--image){min-height:520px}.project-preview--website{background:#eee3d8}.project-preview--mobile{background:#e7e3ef}.project-preview:before{content:"";aspect-ratio:1;filter:blur(3px);background:#ffffff7a;border-radius:50%;width:70%;position:absolute;bottom:-50%;right:-20%}.project-preview__window{z-index:1;border-radius:var(--radius);background:#fffffff0;border:1px solid #1518171f;width:92%;position:relative;overflow:hidden;transform:rotate(-2deg);box-shadow:0 24px 55px #0c0f0e29}.project-preview__toolbar{border-bottom:1px solid var(--line);align-items:center;gap:5px;height:34px;padding:0 12px;display:flex}.project-preview__toolbar i{background:var(--line-warm);border-radius:50%;width:6px;height:6px}.project-preview__toolbar i:first-child{background:var(--coral)}.project-preview__toolbar span{border-radius:var(--pill);background:var(--surface-warm);width:34%;height:6px;margin-left:auto}.project-preview__layout{grid-template-columns:44px 1fr;min-height:274px;display:grid}.project-preview__layout aside{border-right:1px solid var(--line);background:var(--surface-soft);flex-direction:column;align-items:center;gap:12px;padding-top:20px;display:flex}.project-preview__layout aside i{border-radius:var(--pill);background:#d4dad6;width:16px;height:6px}.project-preview__layout aside i:first-child{background:var(--teal-dark);border-radius:5px;height:16px}.project-preview__canvas{padding:22px}.project-preview__heading span,.project-preview__content span{border-radius:var(--pill);background:#dfe3df;display:block}.project-preview__heading span:first-child{width:24%;height:7px}.project-preview__heading span:last-child{background:var(--ink);width:48%;height:14px;margin-top:9px}.project-preview__metrics{grid-template-columns:repeat(3,1fr);gap:8px;margin-top:22px;display:grid}.project-preview__metrics i{border-radius:var(--radius-sm);background:var(--surface-warm);height:74px}.project-preview__metrics i:first-child{background:var(--dark)}.project-preview--website .project-preview__metrics i:first-child{background:var(--coral)}.project-preview--mobile .project-preview__metrics i:first-child{background:#74649c}.project-preview__content{gap:9px;margin-top:18px;display:grid}.project-preview__content span{height:7px}.project-preview__content span:nth-child(2){width:82%}.project-preview__content span:nth-child(3){width:64%}.project-preview__phone{z-index:2;border-radius:var(--radius);background:var(--white);width:96px;min-height:174px;box-shadow:var(--shadow-card);border:1px solid #15181724;flex-direction:column;padding:18px 12px 12px;display:flex;position:absolute;bottom:20px;right:20px;transform:rotate(5deg)}.project-preview__phone i{border-radius:var(--pill);background:var(--ink);width:32px;height:5px;margin:0 auto 24px}.project-preview__phone span{border-radius:var(--pill);background:#dfe3df;height:7px;margin-top:8px}.project-preview__phone strong{border-radius:var(--radius-sm);background:var(--accent-soft);height:38px}.project-preview__badge{z-index:3;border-radius:var(--pill);color:var(--ink-soft);box-shadow:var(--shadow-soft);background:#fffffff0;align-items:center;gap:7px;padding:8px 11px;font-size:.68rem;font-weight:720;display:inline-flex;position:absolute;top:24px;right:18px}.project-preview__badge i{background:var(--teal);border-radius:50%;width:7px;height:7px}.home-about{border-radius:var(--radius-lg);min-height:clamp(560px,66vw,760px);color:var(--white);box-shadow:var(--shadow-card);align-items:center;padding:clamp(72px,9vw,124px) clamp(28px,6vw,88px);display:flex;overflow:hidden}.home-about:before{filter:blur(2px)saturate(.92);background:url(/developer-workspace-v3.webp) 50%/cover no-repeat;width:100%;left:0;transform:scale(1.008)}.home-about:after{content:"";z-index:-1;pointer-events:none;background:linear-gradient(90deg,#0a100fbd 0%,#0a100f8f 48%,#0a100f24 100%),linear-gradient(#0a100f14,#0a100f3d);width:100%;position:absolute;top:0;bottom:0;left:0}.home-about__content{max-width:760px}.home-about__availability{border-radius:var(--pill);width:fit-content;color:var(--white);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#1518178f;border:1px solid #ffffff2e;align-items:center;gap:9px;margin-bottom:24px;padding:10px 14px;font-size:.82rem;font-weight:750;display:inline-flex}.home-about__availability svg,.home-about .section__kicker{color:var(--teal-light)}.home-about__content h2{max-width:760px;color:var(--white);text-wrap:balance}.home-about__lead{color:#ffffffe0;max-width:700px;font-size:var(--text-lg);margin-top:26px;line-height:1.65}.home-about__text{color:#ffffffad;max-width:680px;margin:16px 0 28px;line-height:1.75}.home-about .text-link{color:#ffb0a8;align-items:center;display:inline-flex}.site-footer{background:radial-gradient(circle at 92% 12%, #26998733, transparent 28%), var(--dark-deep);position:relative;overflow:hidden}.contact{color:#ffffffb8;grid-template-columns:minmax(280px,.78fr) minmax(460px,1.22fr);align-items:start;gap:clamp(48px,8vw,112px);padding:clamp(64px,7vw,92px) 0 28px;display:grid;position:relative}.contact h2{max-width:600px;color:var(--white)}.contact__intro>p:not(.section__kicker){max-width:650px;margin-top:18px;line-height:1.7}.contact__terms{color:#ffffffdb;align-items:flex-start;gap:10px;width:fit-content;margin-top:26px;font-weight:650;line-height:1.5;display:flex}.contact__terms svg{width:20px;height:20px;color:var(--teal-light);flex:none;margin-top:.125em}.contact__panel{min-width:0;padding-top:42px}.contact__group{border-bottom:1px solid #ffffff24;padding:22px 0}.contact__group:first-child{padding-top:0}.contact__group:last-child{border-bottom:0;padding-bottom:0}.contact__group>p{color:#ffffff6b;font-size:var(--text-xs);letter-spacing:.1em;text-transform:uppercase;margin:0 0 14px;font-weight:750}.contact__phones{flex-wrap:wrap;gap:10px 26px;display:flex}.contact__phones a,.contact__email{color:var(--white);align-items:center;gap:9px;font-size:clamp(1rem,1.8vw,1.2rem);font-weight:600;text-decoration:none;display:inline-flex}.contact__phones a:hover,.contact__email:hover{color:var(--teal-light)}.contact__messengers{gap:10px;display:flex}.contact__messengers a{width:44px;height:44px;color:var(--teal-light);transition:border-color var(--duration-fast) ease, background var(--duration-fast) ease;background:#72dbc912;border:1px solid #72dbc938;border-radius:50%;place-items:center;text-decoration:none;display:grid}.contact__messengers .contact__messenger-labeled{border-radius:var(--pill);gap:9px;width:auto;padding:0 18px;font-weight:750;display:inline-flex}.contact__messengers a:hover{background:#72dbc924;border-color:#72dbc985;transform:translateY(-2px)}.contact__messengers svg{width:19px;height:19px}.contact__phones svg,.contact__email svg{width:18px;height:18px;color:var(--teal-light)}.footer{width:var(--container);text-align:center;color:#ffffff80;border-top:1px solid #72dbc924;justify-content:center;align-items:center;gap:8px;margin:0 auto;padding:20px 0 26px;font-size:.86rem;font-weight:650;display:flex}.footer__logo-mark{opacity:.88;border:1px solid #ffffff0f;border-radius:8px;flex:none;width:26px;height:26px}.footer a{color:var(--teal-light);text-decoration:none}@media (width<=980px){.hero{min-height:auto}.hero__content{grid-template-columns:1fr;gap:56px}.hero__copy{max-width:760px}.hero__visual-wrap{width:min(100%,650px);margin:0 auto}.service-grid,.stack-grid,.section--split,.process-grid,.contact{grid-template-columns:1fr}.contact{text-align:center}.contact__intro>p,.contact h2,.contact__terms,.contact__phones,.contact__messengers,.contact__email{margin-left:auto;margin-right:auto}.contact__panel{width:100%;padding-top:0}.contact__phones{flex-direction:column;align-items:center}.contact__messengers{justify-content:center}.project-showcase{grid-template-columns:1fr}.project-case .project-case__body{grid-template-rows:auto;grid-template-columns:minmax(0,1fr);column-gap:0;display:grid}.project-case .project-case__meta,.project-case h3,.project-case .project-case__summary,.project-case .project-case__cta,.project-case .tags{grid-area:auto/1}.project-case .project-case__summary{margin-top:18px}.project-case .project-case__cta{align-self:start;margin-top:24px}.project-case .tags{margin-top:22px}.project-case--featured .project-preview:not(.project-preview--image){min-height:440px}}@media (width<=820px){:root{--page-intro-y:32px;--heading-xl:clamp(2.2rem, 6.6vw, 2.8rem)}.hero__content,.section,.contact,.not-found,.footer{width:var(--container-mobile)}.hero__content{padding:var(--page-intro-y) 0 70px;gap:46px}.hero h1,.projects-page__intro h1,.services-page__intro h1,.about-page__headline h1,.project-detail__heading h1,h2{font-size:var(--heading-xl);line-height:.93}.section.home-about{min-height:620px;padding-left:clamp(22px,6vw,40px);padding-right:clamp(22px,6vw,40px)}.home-about__content{width:100%;min-width:0}.home-about:before{background-position:42%}.home-about:after{background:#0a100f94}.hero__lead{margin-top:20px;font-size:1rem;line-height:1.6}.hero__actions{gap:8px;margin-top:24px}.hero__actions .button{box-sizing:border-box;flex:calc(50% - 4px);min-width:0;min-height:44px;padding:0 12px;font-size:.86rem}.hero__highlights{gap:10px;margin-top:34px}.hero__highlight strong{font-size:.82rem}.hero__highlight span{font-size:var(--text-xs)}.product-visual{min-height:460px}.dashboard-card{width:calc(100% - 24px)}.dashboard-card__body{grid-template-columns:48px 1fr;min-height:330px}.dashboard-main{padding:20px}.mobile-card{width:136px;min-height:194px;bottom:-6px;right:0}.api-card{min-width:184px;top:-20px;left:0}.section{padding:var(--section-y) 0}.section--intro{padding-top:42px}.section__header{margin-bottom:22px}.section__kicker{margin-bottom:12px}.section--split{gap:28px}.service{min-height:66px;padding:16px}.stack-card,.process-card{padding:18px}.stack-tag__icon--express{transform:translateY(1px)}.process-card{min-height:auto}.project-showcase{grid-template-columns:1fr}.project-case--featured{grid-column:auto}.project-case__body,.project-case--featured .project-case__body{padding:24px}.project-preview:not(.project-preview--image),.project-case--featured .project-preview:not(.project-preview--image){min-height:360px;padding:38px 26px}.section__header--row{flex-direction:column;align-items:flex-start}.service{align-items:flex-start}.contact{gap:38px;padding:56px 0 28px}}@media (width<=420px){:root{--page-intro-y:24px}.hero__content{padding-top:var(--page-intro-y)}.hero__eyebrow{overflow-wrap:anywhere;align-items:flex-start;margin-bottom:18px;font-size:.72rem}.hero__actions{flex-direction:column}.hero__actions .button{flex-basis:auto;width:100%}.hero__eyebrow span{flex:none;margin-top:1px}.hero__highlights{grid-template-columns:1fr}.hero__highlight{grid-template-columns:90px 1fr;align-items:baseline;gap:12px;display:grid}.hero__highlight span{margin-top:0}.product-visual{min-height:380px}.dashboard-card__bar{padding:0 12px}.dashboard-sidebar{display:none}.dashboard-card__body{grid-template-columns:1fr}.dashboard-main{padding:16px}.metric-grid{grid-template-columns:1fr .8fr}.metric-card{min-height:145px;padding:14px}.dashboard-table{display:none}.mobile-card{width:112px;min-height:166px;padding:26px 13px 13px}.mobile-card span{margin-top:18px}.mobile-card strong{font-size:.86rem}.api-card{min-width:168px;padding:12px}.api-card strong{font-size:.78rem}.contact{padding-left:18px;padding-right:18px}.project-preview:not(.project-preview--image),.project-case--featured .project-preview:not(.project-preview--image){min-height:300px;padding:34px 18px}.project-preview__window{width:100%}.project-preview__layout{min-height:220px}.project-preview__canvas{padding:16px}.project-preview__phone{width:78px;min-height:140px;bottom:10px;right:10px}}.site-header{z-index:100;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f1efe8f0;border-bottom:1px solid #1518171a;position:sticky;top:0}.nav{width:var(--container);justify-content:space-between;align-items:center;gap:32px;min-height:78px;margin:0 auto;padding:0;display:flex;position:relative}.nav__brand{z-index:3;align-items:center;width:190px;height:64px;display:flex;position:relative}.nav__logo{object-fit:contain;object-position:left center;width:100%;height:64px;display:block}.nav__desktop,.nav__links,.language-toggle{align-items:center;display:flex}.nav__desktop{gap:14px}.nav__links{-webkit-backdrop-filter:none;backdrop-filter:none;background:0 0;border:0;gap:4px;max-width:none;padding:0}.nav__links a{color:#1518179e;font-size:var(--text-sm);transition:color var(--duration-fast) ease;padding:11px 13px;font-weight:650;text-decoration:none;position:relative}.nav__links a:after{content:"";border-radius:var(--pill);background:var(--teal-dark);transform-origin:100%;height:2px;transition:transform var(--duration-base) var(--ease-standard);position:absolute;bottom:4px;left:13px;right:13px;transform:scaleX(0)}.nav__links a:hover,.nav__links a.is-active{color:var(--ink);background:0 0}.nav__links a.is-active:after{transform-origin:0;transform:scaleX(1)}.language-toggle{border-radius:var(--pill);-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffff85;border:1px solid #15181721;gap:2px;padding:3px}.language-toggle:before{display:none}.language-toggle button{border-radius:var(--pill);color:#15181780;cursor:pointer;background:0 0;border:0;width:36px;min-width:36px;height:30px;padding:0;font-size:.7rem;font-weight:720;position:relative}.language-toggle button:hover,.language-toggle button.is-active{color:var(--ink)}.language-toggle button.is-active{background:var(--white);box-shadow:var(--shadow-xs)}.nav__contact{border-radius:var(--pill);min-height:40px;color:var(--white);background:var(--ink);font-size:var(--text-sm);transition:color var(--duration-fast) ease, background var(--duration-fast) ease;justify-content:center;align-items:center;padding:0 17px;font-weight:700;text-decoration:none;display:inline-flex}.nav__contact:hover{color:var(--dark-deep);background:var(--teal-light)}.nav__menu-button,.nav__quick-contact,.nav__mobile,.nav__backdrop{display:none}@media (width<=860px){.nav{--mobile-header-height:68px;width:var(--container-mobile);min-height:var(--mobile-header-height);gap:18px}.nav__desktop{display:none}.nav__quick-contact{border-radius:var(--pill);min-height:42px;color:var(--teal-dark);transition:color var(--duration-fast) ease, background var(--duration-fast) ease;background:#c4ebe0b8;border:1px solid #26998733;justify-content:center;align-items:center;gap:8px;margin-left:auto;padding:0 15px;font-size:.82rem;font-weight:750;text-decoration:none;display:inline-flex}.nav__quick-contact:hover{color:var(--white);background:var(--teal-dark)}.nav__quick-contact svg{width:17px;height:17px}.nav__menu-button{z-index:3;width:44px;height:44px;color:var(--ink);cursor:pointer;background:#ffffff9e;border:1px solid #15181724;border-radius:50%;justify-content:center;align-items:center;display:inline-flex;position:relative}.nav__menu-button svg{width:20px;height:20px}.nav__mobile{z-index:2;top:var(--mobile-header-height);overscroll-behavior:contain;background:radial-gradient(circle at 88% 4%, #26998757, transparent 36%), radial-gradient(circle at 4% 100%, #e45f5229, transparent 40%), linear-gradient(145deg, var(--dark-deep) 0%, #10211d 56%, #0b1512 100%);border-top:1px solid #72dbc924;flex-direction:column;gap:28px;max-height:calc(100dvh - 68px);padding:28px 20px 32px;display:flex;position:fixed;left:0;right:0;overflow-y:auto;box-shadow:inset 0 1px #72dbc91a,0 28px 70px #04080757}.nav__mobile.is-open{animation:nav-menu-enter .32s var(--ease-standard) both}.nav__mobile.is-closing{pointer-events:none;animation:.26s ease-in both nav-menu-exit}.nav__mobile-links{display:grid}.nav__mobile-links a{color:#ffffffb3;letter-spacing:-.035em;border-bottom:1px solid #ffffff1a;padding:14px 0;font-size:clamp(1.05rem,4vw,1.3rem);font-weight:620;text-decoration:none}.nav__mobile-links a.is-active{color:var(--teal-light)}.nav__mobile .language-toggle{background:#ffffff0f;border-color:#ffffff24;width:fit-content}.nav__mobile .language-toggle button{color:#ffffff94}.nav__mobile .language-toggle button.is-active{color:var(--white);background:#ffffff1f}.nav__mobile .nav__contact{width:fit-content;min-height:46px;color:var(--dark-deep);background:var(--teal-light);padding:0 20px}.nav__backdrop{z-index:1;inset:var(--mobile-header-height) 0 0;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px);background:#04060594;border:0;display:block;position:fixed}.nav__backdrop.is-open{animation:.32s both nav-backdrop-enter}.nav__backdrop.is-closing{pointer-events:none;animation:.26s ease-in both nav-backdrop-exit}.footer{padding-bottom:26px}}@media (width<=600px){.nav__quick-contact{z-index:3;border-radius:50%;width:40px;min-width:40px;height:40px;min-height:40px;margin-left:0;padding:0;position:absolute;right:62px}.nav__quick-contact span{display:none}}@keyframes nav-menu-enter{0%{clip-path:inset(0 0 100%)}to{clip-path:inset(0)}}@keyframes nav-menu-exit{0%{clip-path:inset(0)}to{clip-path:inset(0 0 100%)}}@keyframes nav-backdrop-enter{0%{opacity:0}to{opacity:1}}@keyframes nav-backdrop-exit{0%{opacity:1}to{opacity:0}}.back-to-top{z-index:90;width:44px;height:44px;color:var(--teal-dark);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;animation:back-to-top-enter var(--duration-base) var(--ease-standard) both;transition:color var(--duration-fast) ease, background var(--duration-fast) ease, transform var(--duration-fast) ease;background:#c4ebe0f0;border:1px solid #26998724;border-radius:50%;place-items:center;padding:0;display:grid;position:fixed;bottom:24px;right:24px;box-shadow:0 8px 22px #1652481f}.back-to-top:hover{color:var(--white);background:var(--teal-dark);transform:translateY(-3px)}.back-to-top:focus-visible{outline-offset:3px;outline:3px solid #2699874d}.back-to-top svg{stroke-width:2.2px;width:20px;height:20px}@keyframes back-to-top-enter{0%{opacity:0;transform:translateY(10px)scale(.92)}to{opacity:1;transform:translateY(0)scale(1)}}@media (width<=820px){.back-to-top{width:42px;height:42px;bottom:16px;right:16px}}@media (prefers-reduced-motion:reduce){.nav__mobile,.nav__backdrop,.back-to-top{animation:none}.nav__mobile.is-closing,.nav__backdrop.is-closing{display:none}}
