:root{--bg:#f1efea;--bg-2:#e6e3dc;--card:#f8f6f2;--border:#d3cec4;--rule:#c4beb2;--line:#22262b;--text:#22262b;--text-2:#3f454c;--muted:#565c63;--accent:#1d6b66;--accent-rgb:29, 107, 102;--accent-2:#15524e;--on-accent:#fff;--ok:#166534;--err:#b91c1c;--radius:6px;--shadow:none;--mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--display:"Space Grotesk", var(--sans);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}.band-dark{--bg:#2b2d2f;--bg-2:#35373a;--card:#38393c;--border:#4a4d50;--line:#11151a;--text:#eef0f1;--text-2:#d3d8dc;--muted:#a9b0b7;--accent:#7fcfc6;--accent-rgb:127, 207, 198;--accent-2:#b3e4de;--on-accent:#10302d;--ok:#5fc28f;background:var(--bg);color:var(--text);--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:84px}body{background:var(--bg);color:var(--text);font-family:var(--sans);-webkit-font-smoothing:antialiased;margin:0;font-size:17px;line-height:1.65}img{max-width:100%;display:block}a{color:inherit}h1,h2,h3{font-family:var(--display);margin:0;line-height:1.1}.container{width:100%;max-width:1120px;margin:0 auto;padding:0 20px}.mono{font-family:var(--mono)}.muted{color:var(--muted)}.small{font-size:.85rem}.accent{color:var(--accent)}.header{z-index:10;border-bottom:1px solid #0000;transition:background .2s,border-color .2s;position:sticky;top:0}.header.scrolled{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-color:var(--border);background:#2b2d2fe6}.header-inner{align-items:center;gap:28px;height:68px;display:flex}.logo{align-items:center;gap:10px;margin-right:auto;text-decoration:none;display:inline-flex}.logo-mark{background:var(--accent);width:34px;height:34px;color:var(--on-accent);font:700 .85rem var(--display);letter-spacing:.02em;border-radius:4px;place-items:center;display:grid}.logo-name{font:600 1rem var(--display)}.nav{gap:28px;display:flex}.nav a{color:var(--muted);font-size:.95rem;font-weight:500;text-decoration:none;transition:color .15s}.nav a:hover{color:var(--text)}.header-phone{font:500 .9rem var(--mono);color:var(--accent);white-space:nowrap;align-items:center;gap:6px;text-decoration:none;display:inline-flex}.header-phone:hover{color:var(--accent-2)}.header-quote{font:600 14px var(--sans);background:var(--accent);color:var(--on-accent);white-space:nowrap;border-radius:4px;padding:9px 16px;text-decoration:none;transition:background .15s}.header-quote:hover{background:var(--accent-2)}.lang-switch{border:1px solid var(--border);border-radius:4px;display:flex;overflow:hidden}.lang-switch a{font:500 .8rem var(--mono);color:var(--muted);padding:6px 10px;text-decoration:none}.lang-switch a[aria-current=page]{background:var(--accent);color:var(--on-accent)}.hero{position:relative;overflow:hidden}.hero:after{content:"";background:var(--accent);height:6px;position:absolute;bottom:0;left:0;right:0}.hero-inner{grid-template-columns:1fr 1fr;align-items:end;gap:48px;padding-top:56px;display:grid}.hero-copy{padding:0 0 72px}.hero h1{font:700 clamp(2.3rem, 5vw, 3.625rem) / 1.04 var(--display);letter-spacing:-.035em;text-wrap:balance;margin:0 0 20px}.hero-lead{color:var(--text-2);text-wrap:pretty;max-width:36ch;margin:0 0 32px;font-size:19px}.status{font:500 13px var(--mono);color:var(--text-2);align-items:center;gap:8px;margin:0 0 20px;display:flex}.dot{background:var(--ok);border-radius:50%;flex-shrink:0;width:8px;height:8px;animation:2s infinite pulse;box-shadow:0 0 #5fc28f99}@keyframes pulse{70%{box-shadow:0 0 0 8px #5fc28f00}to{box-shadow:0 0 #5fc28f00}}.hero-actions{flex-wrap:wrap;gap:12px;display:flex}.hero-actions .btn{padding:13px 22px}.hero-shots{position:relative}.hero-shot{border:1px solid var(--border);background:var(--bg-2);display:block;position:absolute;overflow:hidden}.hero-shot img{object-fit:cover;object-position:top;width:100%;height:100%}.hero-shot-main{aspect-ratio:8/7;border-bottom:0;border-radius:8px 8px 0 0;width:100%;position:relative}.hero-shot-side{aspect-ratio:16/10;z-index:1;border-radius:8px;width:44%;bottom:32px;right:0;box-shadow:0 18px 40px #00000059}.btn{font:600 .95rem var(--sans);cursor:pointer;border:1px solid #0000;border-radius:4px;justify-content:center;align-items:center;gap:8px;padding:12px 22px;text-decoration:none;transition:background .15s,border-color .15s,color .15s;display:inline-flex}.btn-primary{background:var(--accent);color:var(--on-accent);border-color:#0000}.btn-primary:hover{background:var(--accent-2)}.btn-primary:disabled{opacity:.6;cursor:wait}.btn-ghost{border-color:var(--border);color:var(--text)}.btn-ghost:hover{border-color:var(--accent);color:var(--accent)}.section{padding:96px 0}.section+.section{border-top:1px solid var(--border)}h2.section-title{font:700 clamp(1.9rem, 4vw, 2.5rem) / 1.1 var(--display);letter-spacing:-.02em;margin:0 0 44px}.card{background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.tags{flex-wrap:wrap;gap:8px;margin:0;padding:0;list-style:none;display:flex}.tags li{font:500 .8rem var(--mono);background:rgba(var(--accent-rgb), .1);color:var(--accent-2);border:1px solid rgba(var(--accent-rgb), .35);border-radius:4px;padding:3px 10px}#services{background:var(--bg-2);border-top:1px solid var(--border);padding:72px 0}.services-inner{grid-template-columns:280px 1fr;gap:48px;display:grid}.services-inner .section-title{margin:0}.service-row{border-top:1px solid var(--rule);grid-template-columns:1fr 1.4fr auto;align-items:baseline;gap:24px;padding:18px 0;transition:background .15s;display:grid}.service-row:last-child{border-bottom:1px solid var(--rule)}.service-row:hover{background:rgba(var(--accent-rgb), .05)}.service-row h3{font:600 20px var(--display)}.service-for{color:var(--text-2);margin:0;font-size:15px}.service-points{color:var(--muted);margin:4px 0 0;font-size:14px}.service-example{min-width:44px;min-height:44px;font:500 18px var(--mono);color:var(--accent);justify-content:center;align-items:center;margin:-14px -14px -14px 0;text-decoration:none;display:inline-flex}.service-example:hover{color:var(--accent-2)}.services-cta{flex-wrap:wrap;align-items:center;gap:24px;margin-top:28px;display:flex}.services-cta p{max-width:60ch;margin:0;font-size:1.1rem}.steps{grid-template-columns:repeat(4,1fr);gap:28px;margin:0;padding:0;list-style:none;display:grid}.step{border-top:3px solid var(--border);padding-top:18px}.step-no{color:var(--accent);margin-bottom:8px;font-size:.85rem;font-weight:500;display:block}.step h3{margin-bottom:8px;font-size:1.2rem;font-weight:600}.step p{color:var(--text-2);margin:0;font-size:.95rem}.about-grid{grid-template-columns:1.5fr 1fr;align-items:start;gap:48px;display:grid}.about-text p{color:var(--text-2);margin:0 0 18px}.about-text p:first-child{color:var(--text);font-size:1.15rem}.stack{padding:24px}.stack h3{font:500 .82rem var(--mono);text-transform:uppercase;letter-spacing:.06em;margin-bottom:16px}#projects{padding:80px 0}.projects-head{justify-content:space-between;align-items:end;gap:24px;margin-bottom:40px;display:flex}.projects-head .section-title{margin:0}.projects-count{font:500 13px var(--mono);color:var(--muted);margin:0}.project-shot{text-decoration:none;display:block}.project-shot img{aspect-ratio:16/10;object-fit:cover;object-position:top;border:1px solid var(--border);border-radius:6px;width:100%;height:auto;transition:border-color .15s}.project-shot:hover img,.project-card:hover img{border-color:var(--accent)}.project-category{font:500 12px var(--mono);text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:0}.featured{border-bottom:1px solid var(--border);grid-template-columns:1.35fr 1fr;align-items:center;gap:40px;margin-bottom:40px;padding-bottom:40px;display:grid}.featured:nth-child(2n){grid-template-columns:1fr 1.35fr}.featured:nth-child(2n) .project-shot{order:2}.featured-body{gap:14px;display:grid}.featured-body h3{font:600 28px / 1.15 var(--display)}.featured-summary{color:var(--text-2);margin:0;font-size:17px}.featured-highlights{color:var(--text);gap:6px;margin:0;padding:0;font-size:15px;list-style:none;display:grid}.featured-highlights li{gap:10px;display:flex}.featured-highlights li:before{content:"—";color:var(--accent)}.project-note{font:500 13px var(--mono);color:var(--muted);margin:0}.project-link{font:600 15px var(--sans);color:var(--accent);justify-self:start;text-decoration:none}.project-link:hover{text-underline-offset:3px;text-decoration:underline}.projects-grid{grid-template-columns:repeat(3,1fr);gap:28px;display:grid}.project-card{align-content:start;gap:10px;display:grid;position:relative}.project-card h3{font:600 20px var(--display)}.project-card h3 a{text-decoration:none}.project-card h3 a:after{content:"";position:absolute;inset:0}.project-card:hover h3 a{color:var(--accent)}.project-summary{color:var(--text-2);margin:0;font-size:15px}.faq{gap:12px;max-width:820px;display:grid}.faq-item{background:var(--card);border:1px solid var(--border);border-radius:var(--radius)}.faq-item summary{cursor:pointer;font:600 1.05rem var(--display);padding:18px 52px 18px 22px;list-style:none;position:relative}.faq-item summary::-webkit-details-marker{display:none}.faq-item summary:after{content:"+";font:500 1.3rem var(--mono);color:var(--accent);position:absolute;top:50%;right:22px;transform:translateY(-50%)}.faq-item[open] summary:after{content:"−"}.faq-item p{color:var(--text-2);margin:0;padding:0 22px 20px}.contact-grid{grid-template-columns:1fr 1.2fr;align-items:start;gap:48px;display:grid}.lead{margin:0 0 24px;font-size:1.15rem}.contact-phone{font:700 1.6rem var(--display);color:var(--accent);align-items:center;gap:12px;margin-bottom:28px;text-decoration:none;display:inline-flex}.contact-phone:hover{color:var(--accent-2)}.socials{gap:12px;margin:12px 0 0;padding:0;list-style:none;display:grid}.socials a{color:var(--text);word-break:break-all;align-items:center;gap:12px;font-weight:500;text-decoration:none;display:inline-flex}.socials a:hover{color:var(--accent)}.socials svg{flex-shrink:0}.contact-hints{border-top:1px solid var(--border);margin-top:32px;padding-top:24px}.contact-hints h3{font:600 1.05rem var(--display);margin:0 0 10px}.contact-hints ul{color:var(--text-2);gap:6px;margin:0 0 12px;padding-left:1.2em;display:grid}.contact-hints li::marker{color:var(--accent)}.contact-hints p{margin:0;font-size:.95rem}.contact-form{gap:18px;padding:28px;display:grid}.field{gap:6px;display:grid}.field label{font:500 .8rem var(--mono);text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.field-row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.field input,.field select,.field textarea{font:inherit;color:var(--text);border:1px solid var(--border);resize:vertical;background:#fff;border-radius:4px;padding:12px 14px;transition:border-color .15s,box-shadow .15s}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(var(--accent-rgb), .2);outline:none}.hp{position:absolute;left:-9999px}.form-status{min-height:1.5em;margin:0;font-size:.92rem}.form-status .ok{color:var(--ok)}.form-status .err{color:var(--err)}.footer{padding:28px 0}.mobile-cta{display:none}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}@media (width<=1020px){.nav{display:none}.projects-grid{grid-template-columns:repeat(2,1fr)}.services-inner{grid-template-columns:1fr;gap:28px}.steps{grid-template-columns:repeat(2,1fr)}}@media (width>=561px) and (width<=1020px){.project-card:last-child:nth-child(odd){grid-column:1/-1;grid-template-rows:1fr auto auto auto auto 1fr;grid-template-columns:1fr 1fr;column-gap:28px}.project-card:last-child:nth-child(odd) .project-shot{grid-area:1/1/-1}.project-card:last-child:nth-child(odd)>:not(.project-shot){grid-column:2}.project-card:last-child:nth-child(odd) .project-category{grid-row:2}.project-card:last-child:nth-child(odd) h3{grid-row:3}.project-card:last-child:nth-child(odd) .project-summary{grid-row:4}.project-card:last-child:nth-child(odd) .project-note{grid-row:5}}@media (width<=860px){.hero-inner{grid-template-columns:1fr;gap:0}.hero-copy{padding:0 0 56px}.hero-shots{display:none}.featured,.featured:nth-child(2n){grid-template-columns:1fr;gap:20px}.featured:nth-child(2n) .project-shot{order:0}.service-row{grid-template-columns:1fr auto;gap:8px 24px}.service-desc{grid-column:1/-1}.service-example{grid-area:1/2}.about-grid,.contact-grid{grid-template-columns:1fr}.header-phone{display:none}.mobile-cta{z-index:20;padding:10px 16px calc(10px + env(safe-area-inset-bottom));border-top:1px solid var(--border);grid-template-columns:1fr 1fr;gap:10px;transition:transform .25s;display:grid;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.mobile-cta.visible{transform:none}.footer{padding-bottom:96px}.section{padding:72px 0}}@media (width<=560px){.container{padding:0 16px}.header-quote{display:none}.logo-name{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form{padding:20px}.field-row,.steps,.projects-grid{grid-template-columns:1fr}.featured-body h3{font-size:24px}.section,#projects,#services{padding-block:56px}h2.section-title,.projects-head{margin-bottom:28px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}html{scroll-behavior:auto}}
