@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(/fonts/inter-latin-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Space Grotesk;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/space-grotesk-latin-var.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{--accent: oklch(.78 .19 148);--accent-hover: oklch(.85 .19 148);--bg: oklch(.15 .02 155);--surface: oklch(.19 .02 155);--surface-muted: oklch(.22 .02 155);--border: oklch(.26 .02 155);--border-strong: oklch(.32 .02 155);--text: oklch(.96 .006 260);--text-soft: oklch(.85 .01 155);--text-muted: oklch(.78 .01 155);--text-dim: oklch(.72 .01 155);--text-faint: oklch(.62 .01 155);--text-footer: oklch(.62 .01 155);--display: "Space Grotesk", sans-serif;--gutter: max(16px, 5vw);color-scheme:dark}*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:var(--accent);text-decoration:none}a:hover{color:var(--accent-hover)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.skip-link{position:absolute;left:16px;top:-48px;z-index:10000;background:var(--accent);color:var(--bg);padding:10px 16px;border-radius:4px;font-weight:600}.skip-link:focus{top:12px;color:var(--bg)}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.wrap{max-width:1120px;margin:0 auto;padding:96px var(--gutter);border-top:1px solid var(--border)}.wrap--narrow{max-width:820px}.site-header{position:sticky;top:0;z-index:100;background:color-mix(in oklch,var(--bg) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--border)}.site-header__inner{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px var(--gutter);max-width:1320px;margin:0 auto}.brand{display:flex;align-items:center;gap:12px;color:var(--text)}.brand:hover{color:var(--text)}.brand__mark{width:34px;height:34px;border-radius:50%;background:var(--accent);display:flex;align-items:center;justify-content:center;flex-shrink:0}.brand__mark:after{content:"";width:0;height:0;margin-top:-2px;border-left:8px solid transparent;border-right:8px solid transparent;border-bottom:12px solid var(--bg)}.brand__name{font-family:var(--display);font-weight:700;font-size:20px}.site-nav{display:flex;align-items:center;gap:22px}.site-nav__links{display:flex;align-items:center;gap:22px;list-style:none;margin:0;padding:0}.nav-link{color:var(--text-soft);font-size:15px}.nav-link:hover,.nav-link[aria-current=page]{color:var(--accent)}.lang{display:flex;border:1px solid var(--border-strong);border-radius:4px;overflow:hidden}.lang a{padding:7px 12px;font:600 13px/1 Inter,sans-serif;background:var(--surface-muted);color:#a9b0ab}.lang a[aria-current=true]{background:var(--accent);color:var(--bg)}.nav-toggle{display:none;background:none;border:1px solid var(--border-strong);border-radius:4px;color:var(--text);padding:8px 12px;font:600 14px/1 Inter,sans-serif;cursor:pointer}@media(max-width:1180px){.nav-toggle{display:inline-flex}.site-nav{display:none;position:absolute;inset:100% 0 auto;flex-direction:column;align-items:stretch;gap:0;background:var(--bg);border-bottom:1px solid var(--border);padding:8px var(--gutter) 24px}.site-nav[data-open=true]{display:flex}.site-nav__links{flex-direction:column;align-items:stretch;gap:0}.site-nav__links .nav-link{display:block;padding:14px 0;border-bottom:1px solid var(--border);font-size:16px}.site-nav .lang{align-self:flex-start;margin:20px 0}.site-nav .btn{text-align:center}}.btn{display:inline-block;background:var(--accent);color:var(--bg);border:1px solid var(--accent);border-radius:4px;font-weight:600;padding:14px 30px;font-size:16px;cursor:pointer}.btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);color:var(--bg)}.btn--secondary{background:transparent;color:var(--text);border-color:var(--border-strong)}.btn--secondary:hover{background:var(--surface-muted);color:var(--text);border-color:var(--text-faint)}.btn--nav{padding:10px 20px;font-size:15px}.btn-row{display:flex;gap:14px;flex-wrap:wrap;justify-content:center}.eyebrow{font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:12px}.section-title{font-family:var(--display);font-weight:700;font-size:clamp(26px,3.4vw,34px);line-height:1.2;margin:0 0 20px;text-wrap:balance}.section-intro{font-size:17px;line-height:1.6;color:var(--text-muted);max-width:720px;margin:0 0 40px}.section-title+:not(.section-intro){margin-top:28px}.breadcrumbs{max-width:1120px;margin:0 auto;padding:20px var(--gutter) 0;font-size:13px;color:var(--text-faint)}.breadcrumbs ol{list-style:none;display:flex;flex-wrap:wrap;gap:8px;margin:0;padding:0}.breadcrumbs li+li:before{content:"/";margin-right:8px;color:var(--border-strong)}.breadcrumbs a{color:var(--text-dim)}.breadcrumbs a:hover{color:var(--accent)}.hero{max-width:900px;margin:0 auto;padding:72px var(--gutter) 88px;text-align:center}.hero--home{padding:130px var(--gutter) 120px}.hero .eyebrow{letter-spacing:.18em;margin-bottom:20px}.hero h1{font-family:var(--display);font-weight:700;font-size:clamp(30px,4.4vw,48px);line-height:1.12;letter-spacing:-.01em;margin:0 0 24px;text-wrap:balance}.hero--home h1{font-size:clamp(32px,5vw,56px)}.hero p{font-size:19px;line-height:1.6;color:var(--text-muted);max-width:680px;margin:0 auto 36px}.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}.card{position:relative;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:30px;display:flex;flex-direction:column}.card--link{transition:border-color .15s ease,transform .15s ease}.card--link:hover{border-color:var(--accent);transform:translateY(-2px)}@media(prefers-reduced-motion:reduce){.card--link:hover{transform:none}}.card__tag{align-self:flex-start;font:600 11px/1 Inter,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid color-mix(in oklch,var(--accent) 40%,transparent);padding:5px 8px;border-radius:3px;margin-bottom:16px}.card__title{font-family:var(--display);font-weight:600;font-size:18px;margin:0 0 10px;color:var(--text)}.card__title a{color:inherit}.card__title a:after{content:"";position:absolute;inset:0;border-radius:6px}.card__desc{font-size:15px;line-height:1.6;color:var(--text-dim);margin:0}.card__more{margin-top:auto;padding-top:16px;font-size:14px;font-weight:600;color:var(--accent)}.cards--n4{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:20px;list-style:none;margin:0;padding:0;counter-reset:step}.step{counter-increment:step}.step:before{content:counter(step,decimal-leading-zero);display:block;font-family:var(--display);font-weight:700;font-size:28px;color:var(--accent);margin-bottom:12px}.step__title{font-family:var(--display);font-weight:600;font-size:16px;margin:0 0 8px}.step__desc{font-size:14px;line-height:1.55;color:var(--text-dim);margin:0}.checklist{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px}@media(min-width:721px){.checklist--n4{grid-template-columns:1fr 1fr}}.checklist__col{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:28px 30px}.checklist__title{font-family:var(--display);font-weight:600;font-size:17px;margin:0 0 16px}.checklist ul{list-style:none;margin:0;padding:0}.checklist li{position:relative;padding:8px 0 8px 28px;font-size:15px;line-height:1.5;color:var(--text-muted)}.checklist li:before{content:"";position:absolute;left:2px;top:13px;width:12px;height:7px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}.checklist__col:nth-child(2) li:before{border-color:var(--text-faint)}.text p{font-size:17px;line-height:1.7;color:var(--text-muted);max-width:760px;margin:0 0 18px}.table-scroll{overflow-x:auto;border:1px solid var(--border);border-radius:6px}.table{width:100%;border-collapse:collapse;font-size:15px;min-width:620px}.table th,.table td{text-align:left;padding:14px 18px;border-bottom:1px solid var(--border);vertical-align:top;line-height:1.5}.table thead th{font-family:var(--display);font-size:16px;background:var(--surface-muted)}.table tbody th{color:var(--text);font-weight:600;width:22%}.table td{color:var(--text-muted)}.table tbody tr:last-child>*{border-bottom:none}.table-note{font-size:13px;color:var(--text-faint);margin:12px 0 0}.faq{max-width:820px}.faq details{border-bottom:1px solid var(--border)}.faq summary{cursor:pointer;list-style:none;padding:20px 36px 20px 0;position:relative;font-family:var(--display);font-weight:600;font-size:17px;line-height:1.4}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:16px;font-size:24px;color:var(--accent);font-weight:400}.faq details[open] summary:after{content:"–"}.faq details p{margin:0 0 22px;font-size:16px;line-height:1.65;color:var(--text-muted)}.projects{display:flex;flex-direction:column;gap:20px}.project{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:36px 40px;display:grid;grid-template-columns:minmax(200px,260px) 1fr;gap:32px;align-items:start}.project__client{font-family:var(--display);font-weight:700;font-size:20px;margin:0}.project__via{font-size:13px;color:var(--text-faint);margin-top:6px}.project__desc{font-size:15px;line-height:1.65;color:var(--text-muted);margin:0}#portfolio,#offer,#services{scroll-margin-top:80px}.card__price{margin:16px 0 0;display:flex;flex-wrap:wrap;gap:4px 12px;align-items:baseline;font-size:14px;color:var(--text-faint)}.card__price strong{font-family:var(--display);font-size:16px;color:var(--text)}.offers{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr))}.offers--n1{max-width:560px}.offer{background:var(--surface);border:1px solid var(--border-strong);border-radius:8px;padding:32px;display:flex;flex-direction:column}.offers--n1 .offer{border-color:var(--accent)}.offer__name{font-family:var(--display);font-size:20px;margin:0 0 8px}.offer__desc{font-size:15px;line-height:1.55;color:var(--text-dim);margin:0 0 20px}.offer__price{font-family:var(--display);font-weight:700;font-size:26px}.offer__price--request{font-size:18px}.offer__price span{margin-left:6px;font-family:Inter,sans-serif;font-weight:400;font-size:13px;color:var(--text-faint)}.offer__turnaround{font-size:14px;color:var(--accent);margin:6px 0 20px}.offer__includes{list-style:none;margin:0 0 28px;padding:0;flex:1}.offer__includes li{position:relative;padding:7px 0 7px 26px;font-size:15px;line-height:1.5;color:var(--text-muted);border-top:1px solid var(--border)}.offer__includes li:before{content:"";position:absolute;left:2px;top:13px;width:11px;height:6px;border-left:2px solid var(--accent);border-bottom:2px solid var(--accent);transform:rotate(-45deg)}.offer .btn{text-align:center}.offers__note{font-size:14px;line-height:1.6;color:var(--text-dim);margin:20px 0 0;max-width:760px}.facts{max-width:1120px;margin:0 auto;padding:0 var(--gutter) 64px}.facts dl{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1px;margin:0;background:var(--border);border:1px solid var(--border);border-radius:6px;overflow:hidden}.facts div{background:var(--surface);padding:20px 22px}.facts dt{font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-faint);margin-bottom:6px}.facts dd{margin:0;font-size:15px;color:var(--text);line-height:1.45}.prose{max-width:760px;margin:0 auto;padding:0 var(--gutter) 96px;color:var(--text-muted);font-size:16px;line-height:1.7}.prose h2{font-family:var(--display);color:var(--text);font-size:21px;margin:40px 0 12px}.prose table{width:100%;border-collapse:collapse;font-size:14px;margin:12px 0 24px;display:block;overflow-x:auto}.prose th,.prose td{text-align:left;padding:10px 12px;border-bottom:1px solid var(--border)}.prose th{color:var(--text)}.cta{max-width:1120px;margin:0 auto;padding:0 var(--gutter) 110px}.cta__box{border:1px solid var(--border-strong);border-radius:8px;background:radial-gradient(120% 140% at 0% 0%,color-mix(in oklch,var(--accent) 14%,var(--surface)) 0%,var(--surface) 60%);padding:56px clamp(24px,5vw,64px);text-align:center}.cta__box h2{font-family:var(--display);font-size:clamp(24px,3vw,32px);margin:0 0 14px;text-wrap:balance}.cta__box p{color:var(--text-muted);font-size:17px;line-height:1.6;max-width:620px;margin:0 auto 30px}.wrap+.cta,.facts+.cta{padding-top:0}.contact-grid{max-width:1120px;margin:0 auto;padding:0 var(--gutter) 110px;display:grid;grid-template-columns:1fr 1fr;gap:28px;align-items:start}.panel{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:32px}.panel h2{font-family:var(--display);font-size:22px;margin:0 0 8px}.panel>p{color:var(--text-dim);font-size:15px;line-height:1.6;margin:0 0 24px}.mail-hints{list-style:none;margin:-8px 0 28px;padding:0}.mail-hints li{position:relative;padding:6px 0 6px 20px;font-size:15px;color:var(--text-muted)}.mail-hints li:before{content:"";position:absolute;left:2px;top:14px;width:6px;height:6px;border-radius:50%;background:var(--accent)}.panel>.mail-plain{margin:20px 0 0;font-size:14px}.booking{min-height:0}.booking[data-loaded=true]{height:700px;margin-top:20px;border-radius:8px;overflow:hidden}.contact-grid:has(.booking[data-loaded=true]){grid-template-columns:1fr}@media(max-width:860px){.contact-grid{grid-template-columns:1fr}}.btn--small{padding:9px 16px;font-size:14px}.hero__byline{margin-top:-12px;font-size:14px;color:var(--text-faint)}.tech{text-align:center;padding-top:64px;padding-bottom:64px}.tech__title{font-family:var(--display);font-size:13px;letter-spacing:.14em;text-transform:uppercase;color:var(--text-faint);font-weight:500;margin:0 0 24px}.tech__list{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.tech__list li{font-family:var(--display);font-size:15px;color:var(--text-soft);border:1px solid var(--border-strong);border-radius:999px;padding:8px 16px}.prose ul,.prose ol{padding-left:22px}.prose li{margin:8px 0}.prose strong{color:var(--text)}.prose code{font-size:.9em;background:var(--surface-muted);border-radius:3px;padding:1px 5px;color:var(--text-soft)}.estimator{display:grid;gap:32px;padding-top:0;border-top:none}.estimator__q{border:none;margin:0 0 28px;padding:0}.estimator__q legend{font-family:var(--display);font-weight:600;font-size:17px;margin-bottom:14px;padding:0}.estimator__options{display:flex;flex-wrap:wrap;gap:10px}.chip{position:relative;cursor:pointer}.chip input{position:absolute;opacity:0;inset:0;margin:0;cursor:pointer}.chip span{display:inline-block;padding:10px 16px;border:1px solid var(--border-strong);border-radius:999px;font-size:15px;color:var(--text-soft);background:var(--surface)}.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--bg);font-weight:600}.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:3px}.estimator__result{position:sticky;bottom:16px;background:var(--surface);border:1px solid var(--accent);border-radius:8px;padding:28px 32px;box-shadow:0 12px 40px #0006}.estimator__weeks{font-family:var(--display);font-weight:700;font-size:clamp(32px,5vw,44px);margin:4px 0 12px}.estimator__note,.estimator__warn{font-size:14px;line-height:1.55;color:var(--text-dim);margin:0 0 20px}.estimator__warn{color:#f2c86c}.tasklist{padding-top:0;border-top:none}.tasklist__bar{position:sticky;top:72px;z-index:5;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;background:var(--bg);padding:14px 0;border-bottom:1px solid var(--border);margin-bottom:12px}.tasklist__progress{font-family:var(--display);font-weight:600;color:var(--accent)}.tasklist__actions{display:flex;gap:10px}.tasklist__group h2{font-family:var(--display);font-size:20px;margin:36px 0 8px}.tasklist ul{list-style:none;margin:0;padding:0}.tasklist li{border-bottom:1px solid var(--border)}.tasklist label{display:flex;gap:14px;align-items:flex-start;padding:12px 0;cursor:pointer;font-size:15px;line-height:1.5;color:var(--text-muted)}.tasklist input{margin-top:3px;width:18px;height:18px;accent-color:var(--accent);flex-shrink:0}.tasklist input:checked+span{color:var(--text-faint);text-decoration:line-through}.tasklist__note{font-size:13px;color:var(--text-faint);margin-top:20px}@media print{:root{--bg: #fff;--surface: #fff;--text: #000;--text-muted: #222;--text-faint: #555;--border: #ccc;--accent: #0a6b33}body{background:#fff;color:#000}.site-header,.site-footer,.cookie-banner,.breadcrumbs,.cta,.tasklist__actions,.tasklist__note,.skip-link{display:none!important}.hero{padding:0 0 16px;text-align:left}.hero p{margin:0 0 12px}.tasklist__bar{position:static}.tasklist input:checked+span{text-decoration:none;color:#000}.tasklist li{break-inside:avoid}}.site-footer{border-top:1px solid var(--border);font-size:14px;color:var(--text-footer)}.site-footer__inner{max-width:1120px;margin:0 auto;padding:64px var(--gutter) 32px}.footer-grid{display:grid;grid-template-columns:1.4fr repeat(4,1fr);gap:32px}.footer-grid h2{font-family:var(--display);font-size:14px;color:var(--text);margin:0 0 14px}.footer-grid ul{list-style:none;margin:0;padding:0}.footer-grid li{margin-bottom:10px}.footer-grid a{color:var(--text-footer)}.footer-grid a:hover{color:var(--accent)}.footer-brand p{line-height:1.6;margin:16px 0;max-width:280px}.footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:12px;border-top:1px solid var(--border);margin-top:48px;padding-top:24px;font-size:13px}.footer-link{background:none;border:none;padding:0;cursor:pointer;font:400 14px/1 Inter,sans-serif;color:var(--text-footer);text-decoration:underline}.footer-link:hover{color:var(--accent)}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1 / -1}}.cookie-banner{position:fixed;inset:auto 0 0;z-index:9999;background:var(--surface);border-top:1px solid var(--border-strong);padding:24px var(--gutter);box-shadow:0 -8px 32px #00000059}.cookie-banner[hidden]{display:none}.cookie-banner__inner{max-width:1120px;margin:0 auto;display:flex;align-items:flex-start;justify-content:space-between;flex-wrap:wrap;gap:24px}.cookie-banner__text{flex:1 1 420px;font-size:14px;line-height:1.6;color:var(--text-muted)}.cookie-banner__title{font-family:var(--display);font-weight:600;font-size:16px;color:var(--text);margin-bottom:8px}.cookie-banner__actions{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.cookie-btn{font:600 14px/1 Inter,sans-serif;padding:12px 24px;border-radius:4px;border:1px solid transparent;cursor:pointer;min-width:132px}.cookie-btn--accept{background:var(--accent);color:var(--bg)}.cookie-btn--reject{background:#e2e5e3;color:var(--bg)}.cookie-btn--link{background:none;border:none;min-width:0;padding:12px 4px;color:var(--text-soft);text-decoration:underline;cursor:pointer;font:600 14px/1 Inter,sans-serif}.cookie-prefs{flex:1 1 100%;border-top:1px solid var(--border);margin-top:4px;padding-top:20px}.cookie-prefs[hidden]{display:none}.cookie-prefs__row{display:flex;gap:12px;padding:12px 0;align-items:flex-start}.cookie-prefs__row input{margin-top:3px;width:16px;height:16px;accent-color:var(--accent);flex-shrink:0}.cookie-prefs__row label{font-size:14px;font-weight:600;color:var(--text)}.cookie-prefs__row p{font-size:13px;line-height:1.55;color:var(--text-dim);margin:4px 0 0}@media(max-width:720px){.project{grid-template-columns:1fr;gap:16px;padding:28px}.hero--home{padding:84px var(--gutter) 76px}.hero{padding:48px var(--gutter) 64px}.wrap{padding:64px var(--gutter)}.cookie-banner__actions{width:100%}.cookie-btn{flex:1 1 auto}}
