:root{--color-bg:#f5f7fa;--color-surface:#fff;--color-ink:#101b33;--color-ink-muted:#5b6577;--color-accent:#2857c7;--color-accent-deep:#14265b;--color-accent-light:#e8eefb;--color-accent-contrast:#fff;--color-border:#dde3ee;--color-hero-sky-top:#dbe6f5;--color-hero-sky-bottom:#f5f7fa;--font-display:"Fraunces", "Iowan Old Style", Georgia, serif;--font-sans:"Inter", system-ui, -apple-system, "Segoe UI", sans-serif;--step-0:clamp(1rem, .95rem + .25vw, 1.125rem);--step-1:clamp(1.25rem, 1.15rem + .5vw, 1.5rem);--step-2:clamp(1.75rem, 1.5rem + 1.25vw, 2.5rem);--step-3:clamp(2.5rem, 1.9rem + 3vw, 4.25rem);--space-xs:.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:8rem;--header-height:4.5rem;--content-max-width:72rem;--radius:.5rem;--ease-standard:cubic-bezier(.4, 0, .2, 1);--duration-fast:.2s;--duration-standard:.5s}*,:before,:after{box-sizing:border-box}*{margin:0}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;-webkit-text-size-adjust:100%}body{min-height:100svh;font-family:var(--font-sans);background:var(--color-bg);color:var(--color-ink);-webkit-font-smoothing:antialiased;line-height:1.5}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}button{cursor:pointer}ul,ol{padding:0;list-style:none}a{color:inherit}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;transition-delay:0s!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}html{scroll-behavior:smooth}.skip-link{top:-100%;left:var(--space-sm);z-index:100;padding:var(--space-xs) var(--space-sm);background:var(--color-accent);color:var(--color-accent-contrast);border-radius:var(--radius);transition:top var(--duration-fast) var(--ease-standard);position:absolute}.skip-link:focus{top:var(--space-sm)}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.site-header{z-index:50;height:var(--header-height);padding:0 var(--space-md);background:color-mix(in srgb, var(--color-bg) 75%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;display:flex;position:fixed;inset:0 0 auto}.site-header__logo{font-family:var(--font-display);font-weight:500;font-size:var(--step-1);letter-spacing:-.01em;color:var(--color-ink);text-decoration:none}.site-header__nav ul{gap:clamp(.875rem,1.8vw,1.5rem);display:flex}.site-header__nav a{white-space:nowrap;letter-spacing:.04em;text-transform:uppercase;color:var(--color-ink-muted);transition:color var(--duration-fast) var(--ease-standard);font-size:.75rem;font-weight:500;text-decoration:none}.site-header__nav a:hover,.site-header__nav a:focus-visible{color:var(--color-ink)}.site-header__toggle{padding:var(--space-xs);background:0 0;border:none;display:none}.site-header__toggle-icon,.site-header__toggle-icon:before,.site-header__toggle-icon:after{background:var(--color-ink);border-radius:1px;width:1.5rem;height:2px;display:block}.site-header__toggle-icon:before,.site-header__toggle-icon:after{content:"";transition:transform var(--duration-fast) var(--ease-standard);position:relative}.site-header__toggle-icon:before{top:.375rem}.site-header__toggle-icon:after{top:-.375rem}@media (width<=960px){.site-header__toggle{display:block}.site-header__nav{background:var(--color-bg);border-bottom:1px solid var(--color-border);max-height:0;transition:max-height var(--duration-standard) var(--ease-standard);position:absolute;top:100%;left:0;right:0;overflow:hidden}.site-header__nav.is-open{max-height:20rem}.site-header__nav ul{flex-direction:column;gap:0}.site-header__nav a{padding:var(--space-sm) var(--space-md);border-top:1px solid var(--color-border);display:block}}.section{padding:var(--space-xl) var(--space-md);max-width:var(--content-max-width);scroll-margin-top:var(--header-height);margin-inline:auto;position:relative}.section h2{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);margin-bottom:var(--space-md);letter-spacing:-.01em}.section-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-xs);font-size:.8125rem;font-weight:500}.section-lead{max-width:40rem;color:var(--color-ink-muted);font-size:var(--step-0);margin-top:calc(-1 * var(--space-sm));margin-bottom:var(--space-lg)}.placeholder-note{color:var(--color-ink-muted);font-style:italic}.section--hero{background:linear-gradient(to bottom, var(--color-hero-sky-top), var(--color-hero-sky-bottom));max-width:none;height:100svh;min-height:34rem;transition:height .75s var(--ease-standard) .85s, min-height .75s var(--ease-standard) .85s;flex-direction:column;padding:0;display:flex;overflow:hidden}.section--hero.is-entered{height:0;min-height:0}.scene-container{z-index:0;position:absolute;inset:0}.scene-container canvas{touch-action:pan-y;width:100%;height:100%;display:block}.section--hero.is-entered .scene-container{opacity:0;transition:opacity .8s var(--ease-standard);pointer-events:none}.section--hero.is-entered .hero__entrance{opacity:0;pointer-events:none;transition:opacity .4s var(--ease-standard)}.section--hero.is-entered .hero__content{opacity:0;pointer-events:none;transition:opacity .5s var(--ease-standard)}.scene-container[data-fallback=true]{background:linear-gradient(to bottom, var(--color-hero-sky-top), var(--color-hero-sky-bottom) 70%)}.hero__content{z-index:1;padding:calc(var(--header-height) + var(--space-lg)) var(--space-md) 0;max-width:27rem;position:relative}.hero__eyebrow{letter-spacing:.14em;text-transform:uppercase;color:var(--color-accent);margin-bottom:var(--space-sm);font-size:.8125rem;font-weight:600}.hero__title{margin-bottom:var(--space-md)}.hero__title-brand{font-family:var(--font-display);font-weight:500;font-size:var(--step-3);letter-spacing:-.015em;color:var(--color-ink);line-height:1;display:block}.hero__title-category{font-family:var(--font-sans);font-weight:500;font-size:var(--step-1);letter-spacing:.01em;color:var(--color-ink-muted);margin-top:.375rem;display:block}.hero__subtitle{font-size:var(--step-0);color:var(--color-ink-muted);max-width:24rem;line-height:1.55}.hero__entrance{z-index:1;padding:0 var(--space-md) var(--space-xl);justify-content:center;margin-top:auto;display:flex;position:relative}.entrance-cta{border:1px solid color-mix(in srgb, var(--color-ink) 15%, transparent);background:color-mix(in srgb, var(--color-surface) 70%, transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:var(--color-ink);letter-spacing:.02em;transition:transform var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard);border-radius:999px;align-items:center;gap:.625rem;padding:.75rem 1.5rem;font-size:.875rem;font-weight:500;display:inline-flex}.entrance-cta__icon{transition:transform var(--duration-fast) var(--ease-standard)}.entrance-cta:hover,.entrance-cta:focus-visible{border-color:var(--color-accent);background:var(--color-surface);transform:translateY(-2px)}.entrance-cta:hover .entrance-cta__icon,.entrance-cta:focus-visible .entrance-cta__icon{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.entrance-cta:hover,.entrance-cta:focus-visible{transform:none}}@media (width<=640px){.hero__content{padding-top:calc(var(--header-height) + var(--space-md))}.hero__entrance{padding-bottom:var(--space-lg)}}.btn{border-radius:var(--radius);transition:transform var(--duration-fast) var(--ease-standard), background-color var(--duration-fast) var(--ease-standard);padding:.875rem 2rem;font-weight:600;text-decoration:none;display:inline-block}.btn--primary{background:var(--color-accent);color:var(--color-accent-contrast)}.btn--primary:hover,.btn--primary:focus-visible{transform:translateY(-2px)}@media (prefers-reduced-motion:reduce){.btn--primary:hover,.btn--primary:focus-visible{transform:none}}.media-placeholder{background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--color-border) 60%, transparent), color-mix(in srgb, var(--color-border) 60%, transparent) 1px, transparent 1px, transparent 12px);background-color:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius);width:100%;height:100%;min-height:8rem;color:var(--color-ink-muted);text-align:center;padding:var(--space-sm);flex-direction:column;justify-content:center;align-items:center;gap:.5rem;display:flex}.media-placeholder__icon{opacity:.6;width:1.75rem;height:1.75rem;display:block}.media-placeholder__icon svg{width:100%;height:100%}.media-placeholder__label{letter-spacing:.02em;max-width:14rem;font-size:.75rem}.media-placeholder--round{border-radius:50%}.media-placeholder--round .media-placeholder__label{display:none}.form-field{flex-direction:column;gap:.375rem;display:flex}.form-field label{color:var(--color-ink-muted);font-size:.875rem}.form-field input,.form-field textarea{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);color:var(--color-ink);padding:.75rem}.form-field input:focus-visible,.form-field textarea:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}.form-field--honeypot{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form .btn{cursor:pointer;border:none;align-self:flex-start}.contact-form .btn:disabled{opacity:.6;cursor:not-allowed}.form-status{border-radius:var(--radius);padding:.75rem 1rem;font-size:.9375rem;line-height:1.5}.form-status[data-type=success]{background:color-mix(in srgb, var(--color-accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-accent) 30%, transparent);color:var(--color-accent-deep)}.form-status[data-type=error]{color:#7b1a12;background:#c0392b1a;border:1px solid #c0392b4d}.about-grid{gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:start;display:grid}.about-grid>*{min-width:0}.about-intro__headline{font-family:var(--font-display);font-weight:500;font-size:var(--step-1);margin-bottom:var(--space-sm)}.about-intro p{color:var(--color-ink-muted);margin-bottom:var(--space-sm)}.about-intro p:last-child{margin-bottom:var(--space-md)}.about-intro__photos{gap:var(--space-sm);grid-template-columns:1fr 1fr;display:grid}.about-intro__photos>img{min-width:0}.about-intro__photos img{aspect-ratio:3/4;object-fit:cover;border-radius:var(--radius);width:100%}.about-intro__photos img:first-child{margin-top:var(--space-lg)}.process-list{gap:var(--space-md);margin:var(--space-sm) 0 var(--space-md);counter-reset:none;flex-direction:column;display:flex}.process-step{gap:var(--space-sm);display:flex}.process-step__number{background:var(--color-accent);width:2rem;height:2rem;color:var(--color-accent-contrast);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.875rem;font-weight:600;display:flex}.process-step h3{margin-bottom:.25rem;font-size:1rem;font-weight:600}.process-step p{color:var(--color-ink-muted);font-size:.9375rem}.process-highlights{padding-top:var(--space-sm);border-top:1px solid var(--color-border);flex-direction:column;gap:.5rem;display:flex}.process-highlights li{color:var(--color-ink-muted);padding-left:1.25rem;font-size:.9375rem;position:relative}.process-highlights li:before{content:"";background:var(--color-accent);border-radius:50%;width:.5rem;height:.5rem;position:absolute;top:.5em;left:0}@media (width<=860px){.about-grid{gap:var(--space-lg);grid-template-columns:1fr}}.service-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));display:grid}.service-card{text-align:left;width:100%;font:inherit;background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);cursor:pointer;transition:transform var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard), border-color var(--duration-fast) var(--ease-standard);flex-direction:column;padding:0;display:flex;overflow:hidden}.service-card:hover,.service-card:focus-visible{border-color:color-mix(in srgb, var(--color-accent) 30%, var(--color-border));box-shadow:0 16px 32px color-mix(in srgb, var(--color-accent) 14%, transparent);transform:translateY(-3px)}@media (prefers-reduced-motion:reduce){.service-card:hover,.service-card:focus-visible{transform:none}}.service-card__media{aspect-ratio:4/3;background:var(--color-bg);display:block;position:relative;overflow:hidden}.service-card__badge{top:var(--space-xs);left:var(--space-xs);letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--color-ink) 65%, transparent);color:#fff;pointer-events:none;border-radius:999px;padding:.3rem .7rem;font-size:.6875rem;font-weight:500;position:absolute}.service-card__media img{object-fit:cover;object-position:center 25%;width:100%;height:100%;transition:transform .5s var(--ease-standard)}.service-card:hover .service-card__media img{transform:scale(1.04)}@media (prefers-reduced-motion:reduce){.service-card:hover .service-card__media img{transform:none}}.service-card__body{padding:var(--space-md);flex-direction:column;display:flex}.service-card__index{font-family:var(--font-display);color:var(--color-accent);margin-bottom:.375rem;font-size:1.125rem}.service-card h3{margin-bottom:.375rem;font-size:1.125rem;font-weight:600}.service-card p{color:var(--color-ink-muted);margin-bottom:var(--space-sm);font-size:.9375rem}.service-card__cta{color:var(--color-accent);align-items:center;gap:.375rem;margin-top:auto;font-size:.8125rem;font-weight:600;display:inline-flex}.service-card__cta-arrow{transition:transform var(--duration-fast) var(--ease-standard);display:inline-block}.service-card:hover .service-card__cta-arrow,.service-card:focus-visible .service-card__cta-arrow{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.service-card:hover .service-card__cta-arrow,.service-card:focus-visible .service-card__cta-arrow{transform:none}}body.has-overlay{overflow:hidden}.service-detail-overlay{z-index:60;padding:calc(var(--header-height) + var(--space-md)) var(--space-md) var(--space-md);background:color-mix(in srgb, var(--color-ink) 55%, transparent);-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);opacity:0;transition:opacity .26s var(--ease-standard);justify-content:center;align-items:flex-start;display:flex;position:fixed;inset:0;overflow-y:auto}.service-detail-overlay.is-open{opacity:1}.service-detail-overlay[hidden]{display:none}.service-detail-overlay__panel{background:var(--color-surface);border-radius:var(--radius);width:100%;max-width:52rem;box-shadow:0 24px 60px color-mix(in srgb, var(--color-ink) 30%, transparent);transition:transform .3s var(--ease-standard);position:relative;overflow:hidden;transform:translateY(12px)scale(.98)}.service-detail-overlay.is-open .service-detail-overlay__panel{transform:none}@media (prefers-reduced-motion:reduce){.service-detail-overlay__panel{transform:none}}.service-detail-overlay__close{top:var(--space-sm);right:var(--space-sm);z-index:1;background:var(--color-surface);border:1px solid var(--color-border);width:2.25rem;height:2.25rem;color:var(--color-ink);border-radius:50%;justify-content:center;align-items:center;font-size:1.25rem;line-height:1;display:flex;position:absolute}.service-detail-overlay__close:hover{background:var(--color-accent-light);border-color:color-mix(in srgb, var(--color-accent) 30%, var(--color-border));color:var(--color-accent)}.service-detail__media{aspect-ratio:16/9;position:relative}.service-detail__media img{object-fit:cover;object-position:center 25%;width:100%;height:100%}.service-detail__badge{top:var(--space-sm);left:var(--space-sm);letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--color-ink) 65%, transparent);color:#fff;border-radius:999px;padding:.35rem .8rem;font-size:.75rem;font-weight:500;position:absolute}.service-detail__body{padding:var(--space-lg)}.service-detail__body h2{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);margin-bottom:var(--space-sm);overflow-wrap:break-word}.service-detail__description{color:var(--color-ink-muted);margin-bottom:var(--space-md)}.service-detail__points{margin-bottom:var(--space-md);padding-bottom:var(--space-md);border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:.5rem 1rem;display:grid}.service-detail__points li{color:var(--color-ink);padding-left:1.125rem;font-size:.9375rem;position:relative}.service-detail__points li:before{content:"";background:var(--color-accent);border-radius:50%;width:.4rem;height:.4rem;position:absolute;top:.55em;left:0}.service-detail__projects-placeholder{padding:var(--space-md);background:var(--color-bg);border:1px dashed var(--color-border);border-radius:var(--radius);margin-bottom:var(--space-md)}.service-detail__actions{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.service-detail__cta{border-radius:var(--radius);background:var(--color-accent);color:var(--color-accent-contrast);padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.service-detail__link{color:var(--color-ink-muted);font-size:.875rem;font-weight:500;text-decoration:none}.service-detail__link:hover,.service-detail__link:focus-visible{color:var(--color-accent)}@media (width<=480px){.service-detail__points{grid-template-columns:1fr}}@media (width<=640px){.service-detail-overlay{padding-left:0;padding-right:0;padding-top:var(--header-height)}.service-detail-overlay__panel{border-radius:0;max-width:none;min-height:100%}.service-detail__body{padding:var(--space-md)}}.project-showcase-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(17rem,100%),1fr));display:grid}.project-showcase-card{border-radius:var(--radius);cursor:pointer;background:var(--color-ink);width:100%;transition:transform var(--duration-fast) var(--ease-standard), box-shadow var(--duration-fast) var(--ease-standard);border:none;padding:0;display:block;position:relative;overflow:hidden}.project-showcase-card:hover,.project-showcase-card:focus-visible{box-shadow:0 20px 40px color-mix(in srgb, var(--color-ink) 22%, transparent);transform:translateY(-4px)}@media (prefers-reduced-motion:reduce){.project-showcase-card:hover,.project-showcase-card:focus-visible{transform:none}}.project-showcase-card__media{aspect-ratio:3/4;display:block;position:relative;overflow:hidden}.project-showcase-card__media img{object-fit:cover;object-position:center 25%;width:100%;height:100%;transition:transform .6s var(--ease-standard)}.project-showcase-card:hover .project-showcase-card__media img,.project-showcase-card:focus-visible .project-showcase-card__media img{transform:scale(1.05)}@media (prefers-reduced-motion:reduce){.project-showcase-card:hover .project-showcase-card__media img,.project-showcase-card:focus-visible .project-showcase-card__media img{transform:none}}.project-showcase-card__scrim{background:linear-gradient(to top, color-mix(in srgb, var(--color-ink) 88%, transparent) 0%, color-mix(in srgb, var(--color-ink) 45%, transparent) 45%, transparent 75%);position:absolute;inset:0}.project-showcase-card__badge{top:var(--space-sm);left:var(--space-sm);letter-spacing:.04em;text-transform:uppercase;background:color-mix(in srgb, var(--color-surface) 88%, transparent);color:var(--color-ink);border-radius:999px;padding:.3rem .7rem;font-size:.6875rem;font-weight:500;position:absolute}.project-showcase-card__content{padding:var(--space-md);text-align:left;flex-direction:column;align-items:flex-start;gap:.3rem;display:flex;position:absolute;bottom:0;left:0;right:0}.project-showcase-card__service{letter-spacing:.06em;text-transform:uppercase;color:color-mix(in srgb, var(--color-bg) 85%, var(--color-accent));font-size:.75rem;font-weight:600}.project-showcase-card__title{font-family:var(--font-display);color:var(--color-bg);font-size:1.25rem;font-weight:500}.project-showcase-card__description{color:color-mix(in srgb, var(--color-bg) 80%, transparent);font-size:.875rem}.project-showcase-card__cta{color:var(--color-bg);align-items:center;gap:.375rem;margin-top:.5rem;font-size:.8125rem;font-weight:600;display:inline-flex}.project-showcase-card__cta-arrow{transition:transform var(--duration-fast) var(--ease-standard);display:inline-block}.project-showcase-card:hover .project-showcase-card__cta-arrow,.project-showcase-card:focus-visible .project-showcase-card__cta-arrow{transform:translate(3px)}@media (prefers-reduced-motion:reduce){.project-showcase-card:hover .project-showcase-card__cta-arrow,.project-showcase-card:focus-visible .project-showcase-card__cta-arrow{transform:none}}.ba-card__media .media-placeholder{background:linear-gradient(135deg, var(--color-accent-light), var(--color-surface));color:var(--color-accent-deep);border:none}.ba-card__frame{aspect-ratio:16/9;border-radius:var(--radius);border:1px solid var(--color-border);cursor:ew-resize;touch-action:pan-y;background:var(--color-surface);position:relative;overflow:hidden}.ba-card__media{position:absolute;inset:0}.ba-card__media img,.ba-card__media video{object-fit:cover;width:100%;height:100%}.ba-card__media--before{clip-path:inset(0 50% 0 0)}.ba-card__handle{pointer-events:none;width:0;position:absolute;top:0;bottom:0;left:50%;transform:translate(-50%)}.ba-card__handle:before{content:"";background:var(--color-surface);width:2px;box-shadow:0 0 0 1px color-mix(in srgb, var(--color-ink) 15%, transparent);position:absolute;top:0;bottom:0;left:0}.ba-card__handle-grip{background:var(--color-surface);border:1px solid var(--color-border);width:2.5rem;height:2.5rem;box-shadow:0 4px 14px color-mix(in srgb, var(--color-ink) 12%, transparent);border-radius:50%;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.ba-card__handle-grip:before,.ba-card__handle-grip:after{content:"";border-top:5px solid #0000;border-bottom:5px solid #0000;width:0;height:0;position:absolute;top:50%;transform:translateY(-50%)}.ba-card__handle-grip:before{border-right:6px solid var(--color-ink-muted);left:.55rem}.ba-card__handle-grip:after{border-left:6px solid var(--color-ink-muted);right:.55rem}.ba-card__tag{top:var(--space-xs);letter-spacing:.06em;text-transform:uppercase;background:color-mix(in srgb, var(--color-ink) 65%, transparent);color:#fff;pointer-events:none;border-radius:999px;padding:.3rem .7rem;font-size:.6875rem;font-weight:500;position:absolute}.ba-card__tag--before{left:var(--space-xs)}.ba-card__tag--after{right:var(--space-xs)}.ba-card__range{width:100%;margin-top:var(--space-sm);accent-color:var(--color-accent)}.service-detail-overlay__panel--project{max-width:56rem}.project-detail{padding:var(--space-lg)}.project-detail h2{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);margin:.25rem 0 var(--space-sm);overflow-wrap:break-word}.project-detail__badge{letter-spacing:.04em;text-transform:uppercase;background:var(--color-accent-light);color:var(--color-accent-deep);margin-bottom:var(--space-md);border-radius:999px;padding:.3rem .8rem;font-size:.75rem;font-weight:500;display:inline-block}.project-detail__description{color:var(--color-ink-muted);margin-bottom:var(--space-lg)}.project-detail__slider{margin-bottom:var(--space-lg)}.project-detail__composite{margin-bottom:var(--space-lg);border-radius:var(--radius);overflow:hidden}.project-detail__composite-img{width:100%;height:auto;display:block}.project-detail__facts{gap:var(--space-sm);margin:0 0 var(--space-lg);padding:var(--space-sm) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);grid-template-columns:repeat(3,1fr);display:grid}.project-detail__facts>div{flex-direction:column;gap:.2rem;display:flex}.project-detail__facts dt{text-transform:uppercase;letter-spacing:.04em;color:var(--color-ink-muted);font-size:.75rem}.project-detail__facts dd{color:var(--color-ink);margin:0;font-size:.9375rem;font-weight:500}.project-detail__actions{align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.project-detail__cta{border-radius:var(--radius);background:var(--color-accent);color:var(--color-accent-contrast);padding:.75rem 1.5rem;font-size:.9375rem;font-weight:600;text-decoration:none;display:inline-block}.project-detail__link{color:var(--color-ink-muted);font-size:.875rem;font-weight:500;text-decoration:none}.project-detail__link:hover,.project-detail__link:focus-visible{color:var(--color-accent)}@media (width<=640px){.project-detail{padding:var(--space-md)}.project-detail__facts{grid-template-columns:1fr}}.team-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(11rem,100%),1fr));max-width:40rem;display:grid}.team-card{text-align:center}.team-card__photo{width:7rem;height:7rem;margin:0 auto var(--space-sm);background:var(--color-surface);border:1px solid var(--color-border);border-radius:50%;overflow:hidden}.team-card__photo img{object-fit:cover;width:100%;height:100%}.team-card__name{font-size:.9375rem;font-weight:600}.team-card__role{color:var(--color-ink-muted);font-size:.8125rem}.team-card--placeholder .team-card__name{color:var(--color-ink-muted);font-weight:500}.section--digipro{background:var(--color-ink);color:var(--color-bg);max-width:none;padding:var(--space-xl) var(--space-md)}.digipro-grid{max-width:var(--content-max-width);gap:var(--space-xl);grid-template-columns:1fr 1fr;align-items:center;margin-inline:auto;display:grid}.digipro-grid>*{min-width:0}.digipro-copy .section-eyebrow{color:var(--color-accent)}.digipro-headline{font-family:var(--font-display);font-weight:500;font-size:var(--step-2);margin-bottom:var(--space-sm);color:var(--color-bg)}.digipro-copy p:not(.section-eyebrow){color:color-mix(in srgb, var(--color-bg) 75%, transparent)}.digipro-pillars{margin-top:var(--space-md);flex-wrap:wrap;gap:.625rem;display:flex}.digipro-pillar{letter-spacing:.02em;color:var(--color-bg);background:color-mix(in srgb, var(--color-accent) 32%, transparent);border:1px solid color-mix(in srgb, var(--color-accent) 55%, transparent);border-radius:999px;padding:.4rem .9rem;font-size:.8125rem;font-weight:500}.digipro-pillar:last-child{background:var(--color-accent);border-color:var(--color-accent);font-weight:600}.digipro-media{gap:var(--space-sm);flex-direction:column;display:flex}.digipro-media__screenshot{aspect-ratio:4/5;border-radius:var(--radius);border:1px solid color-mix(in srgb, var(--color-bg) 20%, transparent);overflow:hidden}.digipro-media__screenshot img{object-fit:cover;width:100%;height:100%}.digipro-media__video{aspect-ratio:16/9}.digipro-media .media-placeholder{background-color:color-mix(in srgb, var(--color-bg) 6%, var(--color-ink));border-color:color-mix(in srgb, var(--color-bg) 25%, transparent);color:color-mix(in srgb, var(--color-bg) 70%, transparent)}@media (width<=860px){.digipro-grid{gap:var(--space-lg);grid-template-columns:1fr}}.trust-badges{gap:var(--space-md);margin-bottom:var(--space-lg);flex-wrap:wrap;display:flex}.trust-badge{padding:var(--space-sm) var(--space-md);border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);flex-direction:column;display:flex}.trust-badge__value{font-family:var(--font-display);font-size:1.25rem;font-weight:500}.trust-badge__label{color:var(--color-ink-muted);font-size:.75rem}.testimonials-grid{gap:var(--space-md);grid-template-columns:repeat(auto-fit,minmax(min(20rem,100%),1fr));display:grid}.testimonial-card{background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius);padding:var(--space-lg)}.testimonial-card__quote{font-family:var(--font-display);margin-bottom:var(--space-md);font-size:1.125rem;line-height:1.5}.testimonial-card__footer{align-items:center;gap:.75rem;display:flex}.testimonial-card__avatar{background:var(--color-accent);width:2.5rem;height:2.5rem;color:var(--color-accent-contrast);border-radius:50%;flex:none;justify-content:center;align-items:center;font-size:.8125rem;font-weight:600;display:flex}.testimonial-card__name{font-size:.9375rem;font-weight:600;display:block}.testimonial-card__company{color:var(--color-ink-muted);font-size:.8125rem;display:block}.contact-grid{gap:var(--space-xl);grid-template-columns:1fr 1.3fr;display:grid}.contact-grid>*{min-width:0}.contact-info__name{font-family:var(--font-display);margin-bottom:var(--space-sm);font-size:1.25rem;font-weight:500}.contact-info__address{color:var(--color-ink-muted);margin-bottom:var(--space-sm);font-style:normal}.contact-info__list{margin-bottom:var(--space-md);flex-direction:column;gap:.375rem;display:flex}.contact-info__list a{border-bottom:1px solid var(--color-border);text-decoration:none}.contact-info__list a:hover{border-color:var(--color-accent)}.contact-info__person{padding-top:var(--space-sm);border-top:1px solid var(--color-border);font-size:.9375rem}.contact-info__role{color:var(--color-ink-muted);font-size:.8125rem}@media (width<=860px){.contact-grid{gap:var(--space-lg);grid-template-columns:1fr}}.section--legal{padding-top:var(--space-lg);padding-bottom:var(--space-lg)}.legal-content{max-width:40rem;color:var(--color-ink-muted);font-size:.9375rem;line-height:1.7}.legal-content p{margin-bottom:var(--space-sm)}.legal-notice{padding:var(--space-sm);background:color-mix(in srgb, var(--color-accent) 10%, transparent);border:1px solid color-mix(in srgb, var(--color-accent) 30%, transparent);border-radius:var(--radius);color:var(--color-ink);font-size:.875rem}.legal-missing,.legal-missing-inline{font-style:italic}.legal-outline li{margin-bottom:.25rem}.site-footer{padding:var(--space-lg) var(--space-md) var(--space-md);border-top:1px solid var(--color-border);font-size:.875rem}.site-footer__grid{max-width:var(--content-max-width);gap:var(--space-lg);padding-bottom:var(--space-lg);grid-template-columns:1.3fr 1fr 1fr;margin-inline:auto;display:grid}.site-footer__logo{font-family:var(--font-display);margin-bottom:var(--space-xs);font-size:1.125rem;font-weight:500}.site-footer__brand p{color:var(--color-ink-muted);margin-bottom:.25rem}.site-footer__nav ul,.site-footer__legal{flex-direction:column;gap:.5rem;display:flex}.site-footer__nav a,.site-footer__legal a{color:var(--color-ink-muted);text-decoration:none}.site-footer__nav a:hover,.site-footer__legal a:hover{color:var(--color-ink)}.site-footer__copyright{max-width:var(--content-max-width);padding-top:var(--space-md);border-top:1px solid var(--color-border);color:var(--color-ink-muted);margin-inline:auto;font-size:.8125rem}@media (width<=640px){.site-footer__grid{gap:var(--space-md);grid-template-columns:1fr}}
