:root{--color-bg:#f7f7f5;--color-surface:#fff;--color-surface-alt:#f0f0ec;--color-ink:#0e1116;--color-ink-soft:#2a2f38;--color-muted:#5d6470;--color-line:#e3e3de;--color-line-strong:#cfcfc8;--color-accent:#11864b;--color-accent-strong:#0b6a3b;--color-accent-text:#0e7040;--color-accent-soft:#11864b1a;--color-accent-tint:#e3f4eb;--color-accent-light:#5fd398;--color-accent-light-soft:#5fd39824;--color-accent-glow:#11864b47;--color-dark:#0e1116;--color-dark-muted:#9aa1ad;--color-dark-line:#ffffff24;--font-sans:"Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--container:1160px;--gutter:clamp(20px, 5vw, 40px);--header-h:72px;--section-space:clamp(88px, 12vw, 152px);--radius:8px;--radius-sm:6px;--ease:cubic-bezier(.22, 1, .36, 1);--shadow-sm:0 1px 2px #0e11160a, 0 1px 1px #0e111608;--shadow-md:0 12px 32px -12px #0e111624, 0 2px 6px #0e11160a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:var(--header-h);-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--color-bg);min-width:320px;color:var(--color-ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:1.0625rem;line-height:1.65}body.no-scroll{overflow:hidden}h1,h2,h3,p,ul{margin:0}ul{padding:0;list-style:none}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px;border-radius:4px}::selection{background:var(--color-accent);color:#fff}.container{width:100%;max-width:calc(var(--container) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{z-index:100;border-radius:var(--radius-sm);background:var(--color-ink);color:#fff;transition:transform .2s var(--ease);padding:10px 16px;font-size:.9375rem;position:absolute;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.eyebrow{color:var(--color-accent-text);letter-spacing:.12em;text-transform:uppercase;align-items:center;gap:10px;margin-bottom:20px;font-size:.8125rem;font-weight:600;display:inline-flex}.eyebrow:before{content:"";background:currentColor;width:20px;height:1px}.eyebrow-light{color:var(--color-accent-light)}.button{cursor:pointer;white-space:nowrap;min-height:48px;transition:background-color .2s ease, border-color .2s ease, color .2s ease, transform .2s var(--ease), box-shadow .2s ease;border:1px solid #0000;border-radius:10px;justify-content:center;align-items:center;gap:10px;padding:12px 22px;font-size:.9875rem;font-weight:600;line-height:1.2;display:inline-flex}.button:active{transform:translateY(1px)}.arrow-label{white-space:nowrap}.button-arrow{vertical-align:middle;opacity:0;width:0;height:1em;transition:width .25s var(--ease), margin-left .25s var(--ease), opacity .2s ease;margin-left:0;display:inline-block}:is(.button,.start-link,.service-link):is(:hover,:focus-visible) .button-arrow{opacity:1;width:1em;margin-left:.6em}.button-primary{background:var(--color-ink);color:#fff;box-shadow:var(--shadow-sm)}.button-primary:hover{background:var(--color-accent-strong)}.button-ghost{border-color:var(--color-line-strong);color:var(--color-ink);background:0 0}.button-ghost:hover{border-color:var(--color-ink)}.button-light{color:var(--color-ink);background:#fff}.button-light:hover{background:var(--color-accent-tint)}.button-outline-light{border-color:var(--color-dark-line);color:#fff;background:0 0}.button-outline-light:hover{border-color:#ffffff80}.reveal-enabled [data-reveal]{opacity:0;transition:opacity .7s var(--ease), transform .7s var(--ease);transition-delay:var(--reveal-delay,0s);transform:translateY(18px)}.reveal-enabled [data-reveal].is-visible{opacity:1;transform:none}.site-header{z-index:50;height:var(--header-h);-webkit-backdrop-filter:saturate(180%)blur(14px);background:#f7f7f5b8;border-bottom:1px solid #0000;transition:border-color .25s,background-color .25s;position:sticky;top:0}.site-header.is-scrolled{border-bottom-color:var(--color-line);background:#f7f7f5db}.header-inner{justify-content:space-between;align-items:center;height:100%;display:flex}.brand{border-radius:4px;align-items:center;display:flex}.brand .logo-mark{width:auto;height:36px;display:block;overflow:visible}.logo-step{stroke:var(--color-accent);stroke-width:20px;stroke-dasharray:1;animation:1.4s ease-in-out .3s both logo-step-draw}.logo-step:nth-of-type(2){animation-delay:.5s}.logo-step:nth-of-type(3){animation-delay:.7s}.logo-alf,.logo-development{animation:logo-fade .8s var(--ease) 1.3s both}@keyframes logo-step-draw{0%{stroke-dashoffset:1px;fill-opacity:0;stroke-opacity:1}65%{stroke-dashoffset:0;fill-opacity:0;stroke-opacity:1}to{stroke-dashoffset:0;fill-opacity:1;stroke-opacity:0}}@keyframes logo-fade{0%{opacity:0}}.nav-list{align-items:center;gap:8px;display:flex}.nav-link{min-height:40px;color:var(--color-muted);border-radius:8px;align-items:center;padding:8px 14px;font-size:.9375rem;font-weight:500;transition:color .2s,background-color .2s;display:inline-flex}.nav-link:hover{color:var(--color-ink)}.nav-link-cta{background:var(--color-ink);color:#fff;margin-left:8px;padding-inline:18px}.nav-link-cta:hover{background:var(--color-accent-strong);color:#fff}.menu-toggle{display:none}@media (width<=767.98px){.menu-toggle{cursor:pointer;background:0 0;border:0;flex-direction:column;justify-content:center;align-items:center;gap:6px;width:44px;height:44px;margin-right:-10px;padding:0;display:inline-flex;position:relative}.menu-toggle-bar{background:var(--color-ink);width:20px;height:1.5px;transition:transform .3s var(--ease);border-radius:2px;display:block}.is-open .menu-toggle-bar:first-child{transform:translateY(3.75px)rotate(45deg)}.is-open .menu-toggle-bar:last-child{transform:translateY(-3.75px)rotate(-45deg)}.site-header.is-open{background:var(--color-bg);border-bottom-color:var(--color-line)}.site-nav{height:calc(100vh - var(--header-h));height:calc(100dvh - var(--header-h));overscroll-behavior:contain;padding:24px var(--gutter) 40px;background:var(--color-bg);opacity:0;visibility:hidden;transition:opacity .25s ease, transform .3s var(--ease), visibility 0s linear .3s;position:absolute;top:100%;left:0;right:0;overflow-y:auto;transform:translateY(-8px)}.is-open .site-nav{opacity:1;visibility:visible;transition:opacity .25s ease, transform .3s var(--ease), visibility 0s;transform:none}.nav-list{flex-direction:column;align-items:stretch;gap:0}.nav-list li{border-bottom:1px solid var(--color-line)}.nav-link{width:100%;min-height:64px;color:var(--color-ink);letter-spacing:-.02em;border-radius:0;padding:0;font-size:1.5rem;font-weight:600}.nav-link-cta,.nav-link-cta:hover{color:var(--color-accent-text);background:0 0;margin:0}}.hero{isolation:isolate;margin-top:calc(var(--header-h) * -1);padding-top:calc(var(--header-h) + clamp(72px, 12vw, 150px));padding-bottom:clamp(80px,11vw,140px);position:relative;overflow:hidden}.hero-backdrop{z-index:-1;background-image:radial-gradient(60% 55% at 78% 18%, var(--color-accent-soft), transparent 70%), linear-gradient(var(--color-line) 1px, transparent 1px), linear-gradient(90deg, var(--color-line) 1px, transparent 1px);opacity:.8;background-position:50%,100% 0,100% 0;background-size:100% 100%,56px 56px,56px 56px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 70% at 60% 30%,#000 20%,#0000 75%);mask-image:radial-gradient(80% 70% at 60% 30%,#000 20%,#0000 75%)}.hero-inner{position:relative}.hero-title{letter-spacing:-.045em;max-width:18ch;color:var(--color-ink);font-size:clamp(2.5rem,7.4vw,5.5rem);font-weight:700;line-height:1.02}.hero-title-muted{color:var(--color-muted);font-weight:600}.hero-lead{max-width:36rem;color:var(--color-muted);margin-top:clamp(24px,3vw,32px);font-size:clamp(1.0625rem,1.6vw,1.25rem);line-height:1.6}.hero-actions{flex-wrap:wrap;gap:12px;margin-top:40px;display:flex}.hero-focus{border-top:1px solid var(--color-line);max-width:40rem;color:var(--color-muted);flex-wrap:wrap;gap:10px 28px;margin-top:clamp(56px,8vw,88px);padding-top:24px;font-size:.875rem;font-weight:500;display:flex}.hero-focus li{align-items:center;gap:10px;display:inline-flex}.hero-focus li:before{content:"";background:var(--color-accent);border-radius:50%;width:5px;height:5px}.hero-anim{animation:hero-in .9s var(--ease) both}.hero-anim:nth-child(2){animation-delay:60ms}.hero-anim:nth-child(3){animation-delay:.14s}.hero-anim:nth-child(4){animation-delay:.22s}.hero-anim:nth-child(5){animation-delay:.3s}@keyframes hero-in{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}.hero-cell{right:calc(var(--col) * 56px);top:calc(var(--row) * 56px + 1px);background:var(--color-accent);opacity:0;width:55px;height:55px;position:absolute}.hero-cell.is-lit{animation:1.4s ease-out both cell-trail}@keyframes cell-trail{0%{opacity:.4}to{opacity:0}}@media (width<=479.98px){.hero-actions .button{flex:100%}}.section-tight{border-top:1px solid var(--color-line);padding-block:clamp(64px,8vw,104px)}.starts-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;display:grid}.start-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;padding:clamp(24px,3vw,32px);display:flex}.start-title{letter-spacing:-.02em;font-size:1.25rem;font-weight:650;line-height:1.25}.start-text{color:var(--color-muted);margin-top:10px}.start-link{min-height:44px;color:var(--color-accent-text);align-self:flex-start;align-items:center;gap:8px;margin-top:auto;padding-top:16px;font-size:.9375rem;font-weight:600;display:inline-flex}@media (width<=767.98px){.starts-grid{grid-template-columns:1fr;gap:16px}}.section{padding-block:var(--section-space)}.section-alt{background:var(--color-surface-alt);border-block:1px solid var(--color-line)}.section-header{max-width:44rem;margin-bottom:clamp(48px,6vw,72px)}.section-title{letter-spacing:-.035em;font-size:clamp(2rem,4.2vw,3.125rem);font-weight:700;line-height:1.08}.section-lead{color:var(--color-muted);margin-top:20px;font-size:clamp(1.0625rem,1.4vw,1.1875rem)}.services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.service-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:border-color .3s ease, box-shadow .3s ease, translate .3s var(--ease);flex-direction:column;padding:clamp(28px,3.2vw,40px);display:flex}.service-card:hover{border-color:var(--color-line-strong);box-shadow:var(--shadow-md);translate:0 -2px}.service-card-top{justify-content:space-between;align-items:center;margin-bottom:32px;display:flex}.service-icon{background:var(--color-accent-soft);width:48px;height:48px;color:var(--color-accent);border-radius:8px;place-items:center;display:inline-grid}.service-index{color:var(--color-line-strong);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:.875rem;font-weight:600}.service-title{letter-spacing:-.02em;font-size:1.375rem;font-weight:650;line-height:1.25}.service-description{color:var(--color-muted);margin-top:12px}.service-points{flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:28px;display:flex}.service-points li{border:1px solid var(--color-line);color:var(--color-ink-soft);border-radius:6px;padding:6px 12px;font-size:.8125rem;font-weight:500;line-height:1.3}.service-link{min-height:44px;color:var(--color-accent-text);align-self:flex-start;align-items:center;gap:8px;margin-top:16px;font-size:.9375rem;font-weight:600;display:inline-flex}.service-card-featured{background:var(--color-dark);border-color:var(--color-dark);color:#fff;grid-column:1/-1}.service-card-featured:hover{border-color:var(--color-dark)}.service-card-featured .service-title{font-size:clamp(1.375rem,2.2vw,1.625rem)}.service-card-featured .service-description{max-width:40rem;color:var(--color-dark-muted)}.service-card-featured .service-icon{background:var(--color-accent-light-soft);color:var(--color-accent-light)}.service-card-featured .service-index{color:var(--color-dark-muted)}.service-card-featured .service-points li{border-color:var(--color-dark-line);color:var(--color-dark-muted)}.service-card-featured .service-link{color:var(--color-accent-light)}.service-card-featured :focus-visible{outline-color:var(--color-accent-light)}.service-card-wide{grid-column:1/-1}.service-card-wide .service-description{max-width:44rem}@media (width<=767.98px){.services-grid{grid-template-columns:1fr;gap:16px}}.work-card{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-sm);grid-template-columns:minmax(0,1fr) minmax(0,1fr);display:grid;overflow:hidden}.work-body{flex-direction:column;align-items:flex-start;padding:clamp(28px,4vw,48px);display:flex}.work-title{letter-spacing:-.03em;font-size:clamp(1.625rem,2.6vw,2rem);font-weight:700;line-height:1.15}.work-brief{grid-template-columns:repeat(2,minmax(0,1fr));align-self:stretch;gap:12px;margin:20px 0 0;display:grid}.work-brief-item{background:var(--color-surface-alt);border-radius:6px;padding:16px 18px}.work-brief-label{color:var(--color-accent-text);letter-spacing:.12em;text-transform:uppercase;font-size:.75rem;font-weight:700}.work-brief dd{color:var(--color-ink-soft);margin:6px 0 0;font-size:.9375rem;line-height:1.55}.work-points{gap:10px;margin-top:24px;display:grid}.work-points li{align-items:baseline;gap:12px;display:flex}.work-points li:before{content:"";background:var(--color-accent);border-radius:50%;flex:none;width:5px;height:5px;transform:translateY(-3px)}.work-tags{padding-top:24px}.work-link{margin-top:32px}.work-shots{background:var(--color-surface-alt);border-left:1px solid var(--color-line);justify-content:center;align-items:center;gap:clamp(12px,2vw,20px);padding:clamp(28px,4vw,48px) clamp(20px,3vw,40px);display:flex}.work-shots img{border:1px solid var(--color-line-strong);width:min(46%,230px);height:auto;box-shadow:var(--shadow-md);border-radius:10px;display:block}.work-shots img+img{translate:0 clamp(16px,3vw,32px)}@media (width<=899.98px){.work-card{grid-template-columns:1fr}.work-shots{border-left:0;border-top:1px solid var(--color-line)}}@media (width<=479.98px){.work-link{align-self:stretch}.work-brief{grid-template-columns:1fr}}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:0;padding:0;list-style:none;display:grid}.step{border-top:1px solid var(--color-line-strong);padding-top:24px}.step-number{color:var(--color-accent-text);font-variant-numeric:tabular-nums;letter-spacing:.04em;font-size:.875rem;font-weight:700}.step-title{letter-spacing:-.015em;margin-top:14px;font-size:1.1875rem;font-weight:650}.step-text{color:var(--color-muted);margin-top:8px}@media (width<=899.98px){.steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:32px 24px}}@media (width<=479.98px){.steps{grid-template-columns:1fr}}.about-grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(48px,8vw,120px);display:grid}.about-intro{top:calc(var(--header-h) + 40px);position:sticky}.about-text{color:var(--color-muted);margin-top:20px}.principles{display:grid}.principle{border-top:1px solid var(--color-line-strong);padding-block:28px}.principle:last-child{border-bottom:1px solid var(--color-line-strong)}.principle-title{letter-spacing:-.015em;font-size:1.1875rem;font-weight:650}.principle-text{color:var(--color-muted);margin-top:8px}@media (width<=899.98px){.about-grid{grid-template-columns:1fr}.about-intro{position:static}}.team-note{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-sm);gap:20px 48px;margin:clamp(64px,8vw,104px) 0 0;padding:clamp(28px,4vw,48px);display:grid}.team-title{letter-spacing:-.02em;text-wrap:balance;font-size:1.375rem;font-weight:650;line-height:1.25}.team-note-text{max-width:62ch;color:var(--color-ink-soft);gap:16px;margin:0;font-size:clamp(1.0625rem,1.4vw,1.1875rem);display:grid}.team-note-signature{color:var(--color-muted);align-items:center;gap:12px;font-size:.9375rem;font-weight:600;display:flex}.team-note-signature:before{content:"";background:var(--color-accent);width:24px;height:2px}.founders{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:20px;display:grid}.founder{background:var(--color-surface);border:1px solid var(--color-line);border-radius:var(--radius);box-shadow:var(--shadow-sm);flex-direction:column;align-items:flex-start;gap:20px;padding:clamp(24px,3vw,32px);display:flex}.avatar{background:var(--color-accent-soft);width:88px;height:88px;color:var(--color-accent);border-radius:50%;flex:none;display:block;overflow:hidden}.avatar svg{width:100%;height:100%;display:block}.avatar-face{fill:var(--color-surface);stroke:currentColor;stroke-width:1.5px}.founder-name{letter-spacing:-.015em;margin:0;font-size:1.1875rem;font-weight:650;line-height:1.3}.founder-role{color:var(--color-ink-soft);margin-top:2px;font-size:.9375rem;font-weight:500}.founder-focus{color:var(--color-accent-text);margin-top:10px;font-size:.9375rem;font-weight:600}.founder-bio{color:var(--color-muted);margin-top:8px;font-size:.9375rem;line-height:1.55}@media (width<=767.98px){.founders{grid-template-columns:1fr;gap:16px}.founder{flex-direction:row}.avatar{width:72px;height:72px}}@media (width>=900px){.team-note{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.team-note-text,.team-note-signature{grid-column:2}}.contact{background:var(--color-dark);color:#fff;isolation:isolate;position:relative;overflow:hidden}.contact:before{content:"";z-index:-1;background:radial-gradient(50% 60% at 85% 0%, var(--color-accent-glow), transparent 70%);position:absolute;inset:0}.contact-title{letter-spacing:-.04em;font-size:clamp(2.25rem,5.4vw,4rem);font-weight:700;line-height:1.04}.contact-lead{max-width:38rem;color:var(--color-dark-muted);margin-top:24px;font-size:clamp(1.0625rem,1.4vw,1.1875rem)}.contact-email{border-bottom:1px solid var(--color-dark-line);letter-spacing:-.02em;overflow-wrap:anywhere;margin-top:clamp(40px,5vw,56px);padding-bottom:6px;font-size:clamp(1.375rem,4.2vw,2.25rem);font-weight:600;transition:border-color .25s;display:inline-block}.contact-email:hover{border-bottom-color:var(--color-accent-light)}.contact-actions{flex-wrap:wrap;gap:12px;margin-top:36px;display:flex}.contact-grid{grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);align-items:end;gap:clamp(40px,6vw,96px);display:grid}.contact-side{border:1px solid var(--color-dark-line);border-radius:var(--radius);padding:28px}.contact-side-title{font-size:1rem;font-weight:600}.contact-checklist{color:var(--color-dark-muted);gap:10px;margin-top:16px;display:grid}.contact-checklist li{align-items:baseline;gap:12px;display:flex}.contact-checklist li:before{content:"";border-left:2px solid var(--color-accent-light);border-bottom:2px solid var(--color-accent-light);flex:none;width:10px;height:6px;transform:translateY(-3px)rotate(-45deg)}@media (width<=899.98px){.contact-grid{grid-template-columns:1fr;align-items:start}}.contact :focus-visible{outline-color:var(--color-accent-light)}@media (width<=479.98px){.contact-actions .button{flex:100%}}.site-footer{background:var(--color-dark);color:var(--color-dark-muted);border-top:1px solid var(--color-dark-line)}.footer-grid{grid-template-columns:minmax(0,1.6fr) minmax(0,1fr) minmax(0,1.2fr);gap:32px;padding-block:48px 32px;display:grid}.footer-col{align-content:start;gap:12px;font-size:.9375rem;display:grid}.footer-col ul{gap:8px;display:grid}.footer-about p{max-width:22rem}.footer-brand{width:auto;height:32px;display:block}.footer-heading{color:#fff;font-size:.875rem;font-weight:600}.footer-col a,.footer-meta a{color:#d9dce2;overflow-wrap:anywhere;transition:color .2s}.footer-col a:hover,.footer-meta a:hover{color:#fff}.footer-meta{border-top:1px solid var(--color-dark-line);padding-block:20px 28px;font-size:.875rem}.site-footer :focus-visible{outline-color:var(--color-accent-light)}@media (width<=767.98px){.footer-grid{grid-template-columns:1fr 1fr}.footer-about{grid-column:1/-1}}@media (width<=479.98px){.footer-grid{grid-template-columns:1fr}}.privacy{padding-block:clamp(48px, 8vw, 96px) var(--section-space)}.privacy-inner{max-width:calc(46rem + var(--gutter) * 2)}.privacy-updated{color:var(--color-muted);margin-top:16px;font-size:.9375rem}.privacy-body{border-top:1px solid var(--color-line);margin-top:clamp(40px,6vw,56px);padding-top:clamp(32px,5vw,48px)}.privacy-body h2{letter-spacing:-.015em;margin-top:40px;font-size:1.375rem;font-weight:650;line-height:1.3}.privacy-body h2:first-child{margin-top:0}.privacy-body p,.privacy-body ul,.privacy-facts{color:var(--color-ink-soft);margin-top:12px}.privacy-body ul{gap:10px;padding-left:1.25em;list-style:outside;display:grid}.privacy-body a{color:var(--color-accent-text);text-underline-offset:3px;overflow-wrap:anywhere;text-decoration:underline}.privacy-body a:hover{color:var(--color-accent-strong)}.privacy-facts{border:1px solid var(--color-line);border-radius:var(--radius-sm);background:var(--color-surface);gap:8px;margin-bottom:0;padding:20px 24px;display:grid}.privacy-facts div{grid-template-columns:minmax(0,11rem) minmax(0,1fr);gap:16px;display:grid}.privacy-facts dt{color:var(--color-muted)}.privacy-facts dd{margin:0}@media (width<=479.98px){.privacy-facts div{grid-template-columns:1fr;gap:0}}
