:root{--color-bg: #181A2F;--color-bg-soft: #111936;--color-panel: rgba(18, 28, 59, 0.9);--color-panel-strong: rgba(21, 31, 64, 0.98);--color-border: rgba(255, 255, 255, 0.08);--color-border-strong: rgba(240, 219, 58, 0.22);--color-text: #f5f5f0;--color-secondary: #95C5ED;--color-muted: #b2b8cf;--color-accent: #F9E23C;--color-accent-soft: #fff58b;--color-dark: #111111;--color-toggle-active-text: #111111;--page-background: radial-gradient(circle at top left, rgba(51, 74, 150, 0.28), transparent 30%), radial-gradient(circle at 85% 12%, rgba(240, 219, 58, 0.12), transparent 22%), linear-gradient(180deg, #090d20 0%, #0d1430 32%, #0a1026 100%);--page-background-before: radial-gradient(circle, rgba(240, 219, 58, 0.1), transparent 70%);--page-background-after: radial-gradient(circle, rgba(34, 67, 180, 0.2), transparent 70%);--hero-background: radial-gradient(circle at top left, rgba(51, 74, 150, 0.5), transparent 25%), radial-gradient(circle at top right, rgba(240, 219, 58, 0.3), transparent 25%), linear-gradient(180deg, #090d20 0%, #0d1430 32%, #0a1026 100%);--color-panel-gradient: linear-gradient(160deg, rgba(20, 30, 61, 0.96), rgba(12, 18, 40, 0.9));--color-panel-gradient-soft: linear-gradient(160deg, rgba(16, 24, 50, 0.96), rgba(10, 15, 33, 0.9));--color-panel-gradient-strong: linear-gradient(145deg, rgba(13, 20, 46, 0.96), rgba(18, 27, 58, 0.9));--color-header-border: rgba(255, 255, 255, 0.05);--color-header-bg: rgba(6, 10, 25, 0.72);--color-nav-active-bg: rgba(255, 255, 255, 0.08);--color-nav-hover-bg: rgba(255, 255, 255, 0.04);--color-toggle-bg: rgba(255, 255, 255, 0.04);--color-toggle-border: rgba(255, 255, 255, 0.1);--color-toggle-thumb-bg: linear-gradient(140deg, var(--color-accent-soft), var(--color-accent));--color-button-ghost-border: rgba(255, 255, 255, 0.12);--color-button-ghost-bg: rgba(255, 255, 255, 0.02);--color-card-border: rgba(255, 255, 255, 0.08);--color-card-bg: rgba(255, 255, 255, 0.03);--color-card-bg-strong: rgba(255, 255, 255, 0.05);--color-icon-border: rgba(255, 255, 255, 0.12);--color-icon-bg: rgba(255, 255, 255, 0.04);--color-tabs-border: rgba(255, 255, 255, 0.09);--color-tabs-bg: rgba(16, 23, 49, 0.72);--color-tabs-arrow-bg: rgba(255, 255, 255, 0.03);--color-tabs-hover-bg: rgba(255, 255, 255, 0.04);--color-services-tab-idle: rgba(255, 255, 255, 0.38);--color-service-panel-bg: linear-gradient(160deg, var(--color-accent) 0%, var(--color-accent-soft) 100%);--color-service-panel-border: rgba(17, 17, 17, 0.12);--color-service-panel-shadow: 0 30px 70px rgba(240, 219, 58, 0.12);--color-service-panel-eyebrow: rgba(17, 17, 17, 0.66);--color-service-panel-copy: rgba(17, 17, 17, 0.8);--color-service-panel-frame-border: rgba(17, 17, 17, 0.16);--color-service-panel-frame-bg: rgba(255, 255, 255, 0.22);--color-service-panel-frame-shadow: 0 18px 30px rgba(17, 17, 17, 0.1);--color-service-panel-tag-bg: rgba(255, 255, 255, 0.22);--color-service-panel-tag-border: rgba(17, 17, 17, 0.14);--color-service-panel-tag-text: rgba(17, 17, 17, 0.82);--color-service-hint-border: rgba(249, 226, 60, 0.26);--color-service-hint-bg: linear-gradient(180deg, rgba(249, 226, 60, 0.88), rgba(240, 219, 58, 0.42));--color-service-hint-shadow: 0 18px 36px rgba(240, 219, 58, 0.18);--color-stack-icon-border: rgba(255, 255, 255, 0.2);--color-stack-icon-bg: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(224, 233, 255, 0.9));--color-stack-icon-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.72), 0 10px 26px rgba(4, 8, 20, 0.18);--color-stack-icon-hover-border: rgba(240, 219, 58, 0.35);--color-stack-icon-hover-bg: linear-gradient(145deg, rgba(255, 255, 255, 1), rgba(238, 243, 255, 0.96));--color-input-placeholder: rgba(178, 184, 207, 0.7);--color-focus-border: rgba(240, 219, 58, 0.6);--color-focus-ring: rgba(240, 219, 58, 0.12);--color-footer-border: rgba(255, 255, 255, 0.06);--color-footer-bg: rgba(6, 10, 25, 0.6);--color-section-rule: rgba(255, 255, 255, 0.08);--color-go-top-border: rgba(255, 255, 255, 0.14);--color-go-top-bg: rgba(11, 18, 43, 0.9);--color-go-top-hover-border: rgba(240, 219, 58, 0.35);--color-go-top-hover-bg: rgba(18, 29, 66, 0.96);--font-display: "Nova Square", "Trebuchet MS", sans-serif;--font-body: "League Spartan", "Segoe UI", "Helvetica Neue", sans-serif;--font-code: "Cascadia Code", "Consolas", monospace;--container-width: 1180px;--hero-max-width: 1400px;--shadow-soft: 0 32px 80px rgba(0, 0, 0, 0.34);--shadow-accent: 0 24px 60px rgba(240, 219, 58, 0.22)}html[data-theme=light]{color-scheme:light;--color-bg: #FFFEE8;--color-bg-soft: #FFF7D8;--color-panel: rgba(255, 249, 228, 0.92);--color-panel-strong: rgba(255, 243, 210, 0.98);--color-border: rgba(40, 45, 104, 0.12);--color-border-strong: rgba(228, 29, 77, 0.24);--color-text: #282D68;--color-secondary: #4D568F;--color-muted: #666F9E;--color-accent: #E41D4D;--color-accent-soft: #F0406A;--color-dark: #FFF;--color-toggle-active-text: #FFFEE8;--page-background: radial-gradient(circle at top left, rgba(228, 29, 77, 0.1), transparent 28%), radial-gradient(circle at 88% 16%, rgba(40, 45, 104, 0.12), transparent 24%), linear-gradient(180deg, #FFFEF3 0%, #FFFBE4 42%, #FFF7D4 100%);--page-background-before: radial-gradient(circle, rgba(228, 29, 77, 0.14), transparent 70%);--page-background-after: radial-gradient(circle, rgba(40, 45, 104, 0.12), transparent 70%);--hero-background: radial-gradient(circle at top left, rgba(228, 29, 77, 0.12), transparent 26%), radial-gradient(circle at top right, rgba(40, 45, 104, 0.14), transparent 28%), linear-gradient(180deg, #FFFEF3 0%, #FFFBE1 44%, #FFF6D1 100%);--color-panel-gradient: linear-gradient(160deg, rgba(255, 252, 240, 0.98), rgba(255, 245, 213, 0.94));--color-panel-gradient-soft: linear-gradient(160deg, rgba(255, 249, 228, 0.98), rgba(255, 241, 206, 0.94));--color-panel-gradient-strong: linear-gradient(145deg, rgba(255, 252, 240, 0.98), rgba(255, 238, 198, 0.94));--color-header-border: rgba(40, 45, 104, 0.1);--color-header-bg: rgba(255, 254, 232, 0.82);--color-nav-active-bg: rgba(228, 29, 77, 0.12);--color-nav-hover-bg: rgba(40, 45, 104, 0.06);--color-toggle-bg: rgba(40, 45, 104, 0.05);--color-toggle-border: rgba(40, 45, 104, 0.12);--color-toggle-thumb-bg: linear-gradient(140deg, rgba(228, 29, 77, 0.9), rgba(228, 29, 77, 1));--color-button-ghost-border: rgba(40, 45, 104, 0.14);--color-button-ghost-bg: rgba(40, 45, 104, 0.03);--color-card-border: rgba(255, 255, 255, 0.12);--color-card-bg: rgba(40, 45, 104, 0.12);--color-card-bg-strong: rgba(255, 255, 255, 0.72);--color-icon-border: rgba(40, 45, 104, 0.14);--color-icon-bg: rgba(40, 45, 104, 0.04);--color-tabs-border: rgba(40, 45, 104, 0.12);--color-tabs-bg: rgba(255, 248, 223, 0.85);--color-tabs-arrow-bg: rgba(40, 45, 104, 0.03);--color-tabs-hover-bg: rgba(40, 45, 104, 0.06);--color-services-tab-idle: rgba(40, 45, 104, 0.48);--color-service-panel-border: rgba(228, 29, 77, 0.16);--color-service-panel-shadow: 0 24px 56px rgba(228, 29, 77, 0.12);--color-service-panel-eyebrow: rgba(255, 255, 255, 0.66);--color-service-panel-copy: var(--color-dark);--color-service-panel-frame-border: rgba(228, 29, 77, 0.14);--color-service-panel-frame-bg: rgba(40, 45, 104, 0.12);--color-service-panel-frame-shadow: 0 18px 30px rgba(40, 45, 104, 0.08);--color-service-panel-tag-bg: rgba(255, 255, 255, 0.42);--color-service-panel-tag-border: rgba(40, 45, 104, 0.14);--color-service-panel-tag-text: rgba(40, 45, 104, 0.88);--color-service-hint-border: rgba(228, 29, 77, 0.22);--color-service-hint-bg: linear-gradient(180deg, rgba(228, 29, 77, 0.8), rgba(228, 29, 77, 0.35));--color-service-hint-shadow: 0 18px 36px rgba(228, 29, 77, 0.14);--color-stack-icon-border: rgba(40, 45, 104, 0.12);--color-stack-icon-bg: linear-gradient(145deg, rgba(255, 255, 255, 0.98), rgba(255, 243, 224, 0.95));--color-stack-icon-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.82), 0 10px 26px rgba(40, 45, 104, 0.12);--color-stack-icon-hover-border: rgba(228, 29, 77, 0.24);--color-stack-icon-hover-bg: linear-gradient(145deg, rgba(255, 255, 255, 1), rgba(255, 236, 217, 0.98));--color-input-placeholder: rgba(40, 45, 104, 0.5);--color-focus-border: rgba(228, 29, 77, 0.48);--color-focus-ring: rgba(228, 29, 77, 0.12);--color-footer-border: rgba(40, 45, 104, 0.1);--color-footer-bg: rgba(255, 246, 219, 0.88);--color-section-rule: rgba(40, 45, 104, 0.1);--color-go-top-border: rgba(40, 45, 104, 0.14);--color-go-top-bg: rgba(255, 249, 228, 0.94);--color-go-top-hover-border: rgba(228, 29, 77, 0.24);--color-go-top-hover-bg: rgba(255, 243, 215, 0.98);--shadow-soft: 0 28px 70px rgba(0, 0, 0, 0.05);--shadow-accent: 0 22px 54px rgba(228, 29, 77, 0.18)}*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--color-bg);color-scheme:dark}body{margin:0;min-height:100vh;color:var(--color-text);font-family:var(--font-body);line-height:1.2;background:var(--page-background);position:relative;overflow-x:hidden}body::before,body::after{content:"";position:fixed;inset:auto;pointer-events:none;z-index:-1}body::before{width:28rem;height:28rem;top:-8rem;right:-10rem;background:var(--page-background-before)}body::after{width:32rem;height:32rem;bottom:-10rem;left:-12rem;background:var(--page-background-after)}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}button,input,select,textarea{font:inherit}.container{width:min(100% - 3rem,var(--container-width));margin-inline:auto}.site-main{overflow:clip}.section{padding-block:clamp(4.75rem,9vw,8rem)}.eyebrow{margin:0 0 .9rem;color:var(--color-accent);font-size:.74rem;font-weight:700;letter-spacing:.22em;text-transform:uppercase}.accent{color:var(--color-accent)}.font-display{font-family:var(--font-display)}.section-heading{margin-bottom:2.5rem;display:grid;align-content:center;justify-items:center}.section-heading p{max-width:42rem}.section-heading--center{margin-inline:auto;text-align:center}.section-heading h2{margin:0 0 1rem;line-height:1.08;font-weight:500}.section-heading p:last-child{margin:0;color:var(--color-muted);font-size:1.04rem}h2{font-size:clamp(30px,2vw,40px)}h1,h2,h3{font-family:var(--font-body)}.site-header{position:sticky;top:0;z-index:50;border-bottom:1px solid var(--color-header-border);background:var(--color-header-bg);backdrop-filter:blur(18px)}.site-header__inner{display:grid;grid-template-columns:auto minmax(0, 1fr) auto;align-items:center;gap:1rem 1.5rem;min-height:5rem;padding-block:.75rem}.site-header__actions{display:flex;align-items:center;justify-self:end;gap:.7rem}.brand{display:inline-flex;align-items:center;gap:.95rem;max-width:130px}.brand__logo{width:100%}.brand__logo--light{display:none}.brand__mark{display:inline-grid;place-items:center;width:3.15rem;height:2.35rem;border-radius:.85rem;background:linear-gradient(140deg, var(--color-accent-soft), var(--color-accent));color:var(--color-dark);font-family:var(--font-display);font-size:1.05rem;font-weight:800;letter-spacing:.06em;transform:rotate(-14deg);box-shadow:var(--shadow-accent)}.brand__text{display:grid;gap:.05rem;font-family:var(--font-display);line-height:1}.brand__name{font-size:1rem;font-weight:700;letter-spacing:-0.04em}.brand__name--accent{color:var(--color-muted)}html[data-theme=light] .brand__logo--dark{display:none}html[data-theme=light] .brand__logo--light{display:block}.site-nav{display:flex;align-items:center;justify-content:flex-end;gap:.85rem;flex-wrap:nowrap;min-width:0}.site-nav__link{flex:0 0 auto;padding:.55rem .9rem;border-radius:999px;color:var(--color-muted);font-size:.94rem;transition:background-color 180ms ease,color 180ms ease,transform 180ms ease}.site-nav__link.is-active{color:var(--color-accent);background:var(--color-nav-active-bg)}.site-nav__link:hover,.site-nav__link:focus-visible{color:var(--color-accent);background:var(--color-nav-hover-bg);transform:translateY(-1px)}.nav-toggle{display:none;align-items:center;justify-content:center;width:2.85rem;height:2.85rem;padding:0;border:1px solid var(--color-toggle-border);border-radius:999px;background:var(--color-toggle-bg);color:var(--color-text);cursor:pointer;transition:border-color 180ms ease,background-color 180ms ease,transform 180ms ease}.nav-toggle:hover,.nav-toggle:focus-visible{border-color:var(--color-border-strong);transform:translateY(-1px);outline:none}.nav-toggle__line{position:absolute;width:1rem;height:2px;border-radius:999px;background:currentColor;transition:transform 180ms ease,opacity 180ms ease}.nav-toggle__line:nth-child(1){transform:translateY(-0.32rem)}.nav-toggle__line:nth-child(2){transform:translateY(0)}.nav-toggle__line:nth-child(3){transform:translateY(0.32rem)}.nav-toggle{position:relative}.site-header.is-nav-open .nav-toggle__line:nth-child(1){transform:translateY(0) rotate(45deg)}.site-header.is-nav-open .nav-toggle__line:nth-child(2){opacity:0}.site-header.is-nav-open .nav-toggle__line:nth-child(3){transform:translateY(0) rotate(-45deg)}.theme-toggle{position:relative;display:inline-grid;grid-template-columns:repeat(2, minmax(0, 1fr));align-items:center;width:4.5rem;min-width:4.5rem;padding:.2rem;border:1px solid var(--color-toggle-border);border-radius:999px;background:var(--color-toggle-bg);color:var(--color-muted);cursor:pointer;isolation:isolate;transition:border-color 180ms ease,background-color 180ms ease,transform 180ms ease}.theme-toggle:hover,.theme-toggle:focus-visible{border-color:var(--color-border-strong);transform:translateY(-1px);outline:none}.theme-toggle__thumb{position:absolute;top:.2rem;bottom:.2rem;left:.2rem;width:calc(50% - .2rem);border-radius:999px;background:var(--color-toggle-thumb-bg);box-shadow:var(--shadow-accent);transition:transform 220ms ease,background 220ms ease,box-shadow 220ms ease;z-index:0}.theme-toggle__option{position:relative;display:grid;place-items:center;z-index:1;padding:.35rem .55rem;transition:color 180ms ease}.theme-toggle__option svg{width:.9rem;height:.9rem}html[data-theme=dark] .theme-toggle__option:first-of-type,html[data-theme=light] .theme-toggle__option:last-of-type{color:var(--color-toggle-active-text)}html[data-theme=light] .theme-toggle__thumb{transform:translateX(100%)}.button-row{display:flex;flex-wrap:wrap;gap:1rem}.button{display:inline-flex;align-items:center;justify-content:center;min-height:3.3rem;padding:.85rem 1.4rem;border:1px solid rgba(0,0,0,0);border-radius:999px;font-weight:700;transition:transform 180ms ease,border-color 180ms ease,background-color 180ms ease,color 180ms ease}.button:hover,.button:focus-visible{transform:translateY(-1px)}.button--primary{background:linear-gradient(140deg, var(--color-accent-soft), var(--color-accent));color:var(--color-dark);box-shadow:var(--shadow-accent)}.button--ghost{border-color:var(--color-button-ghost-border);background:var(--color-button-ghost-bg);color:var(--color-text)}.button--block{width:100%}.hero{padding-block:clamp(2rem,4vw,3rem) clamp(5rem,9vw,7rem);background:var(--hero-background)}.hero__grid{display:grid;grid-template-columns:minmax(0, 2fr) minmax(0, 1fr);gap:1.5rem;max-width:var(--hero-max-width);margin-inline:auto}.hero__content{padding:clamp(1.5rem,4vw,3rem);animation:reveal-up 700ms ease both}.hero__content h1{margin:0;font-size:clamp(25px,3vw,45px);line-height:.98}.hero__lead{margin:1.4rem 0;max-width:42rem;color:var(--color-secondary);font-size:1.08rem}.hero__visual{position:relative;display:grid;gap:1rem;animation:reveal-up 700ms ease 120ms both;align-content:center;justify-content:center}.hero-points{display:grid;gap:.8rem;padding:0;margin:1.8rem 0 0;list-style:none}.hero-points li{position:relative;padding-left:1.25rem;color:var(--color-muted)}.hero-points li::before{content:"";position:absolute;top:.7rem;left:0;width:.45rem;height:.45rem;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 .3rem var(--color-focus-ring)}.hero-metrics{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;margin-top:2rem}.metric-card{padding:1rem 1.1rem;border:1px solid var(--color-card-border);border-radius:20px;background:var(--color-card-bg)}.metric-card strong{display:block;margin-top:.3rem;font-size:1rem}.metric-card__label{color:var(--color-secondary);font-size:.82rem;text-transform:uppercase;letter-spacing:.12em}.token--keyword{color:#9ecbff}.token--accent{color:var(--color-accent)}.token--function{color:#8ce5ff}.token--var{color:#ff95b8}.token--string{color:#c5ff8f}.section--services{position:relative}.section--services .container{max-width:62rem}.section--services .section-heading{margin-bottom:1.75rem}.section--services .section-heading h2{font-weight:400;letter-spacing:.03em}.services-showcase{display:grid;gap:1rem}.services-tabs{display:grid;grid-template-columns:3.5rem minmax(0, 1fr) 3.5rem;align-items:stretch;border:1px solid var(--color-tabs-border);background:var(--color-tabs-bg)}.services-tabs__list{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr))}.services-tabs__arrow{border:0;border-inline:1px solid var(--color-tabs-border);background:var(--color-tabs-arrow-bg);color:var(--color-text);font-size:2rem;cursor:pointer;transition:background-color 180ms ease,color 180ms ease}.services-tabs__arrow:hover,.services-tabs__arrow:focus-visible{background:var(--color-tabs-hover-bg);color:var(--color-accent);outline:none}.services-tab{display:grid;place-content:center;gap:.1rem;min-height:4.4rem;padding:.85rem 1rem;border:0;border-right:1px solid var(--color-tabs-border);background:rgba(0,0,0,0);color:var(--color-services-tab-idle);text-align:center;cursor:pointer;transition:background-color 180ms ease,color 180ms ease}.services-tab:last-child{border-right:0}.services-tab:hover,.services-tab:focus-visible,.services-tab.is-active{background:var(--color-tabs-hover-bg);color:var(--color-text);outline:none}.services-tab:hover .services-tab__title,.services-tab:hover .services-tab__subtitle,.services-tab:focus-visible .services-tab__title,.services-tab:focus-visible .services-tab__subtitle,.services-tab.is-active .services-tab__title,.services-tab.is-active .services-tab__subtitle{opacity:1}.services-tab__title,.services-tab__subtitle{display:block;line-height:1.15;opacity:.55;transition:opacity 180ms ease}.services-tab__title{font-size:1rem;font-weight:600}.services-tab__subtitle{font-size:.98rem;color:var(--color-secondary)}.services-stage{position:relative;overflow:visible;--services-wipe-offset: 2.55rem}.services-stage__wipe{position:absolute;inset:0;z-index:2;pointer-events:none;border:1px solid var(--color-service-panel-border);background:var(--color-service-panel-bg);box-shadow:var(--color-service-panel-shadow);opacity:0;will-change:transform,opacity}.services-stage__panels{min-width:0;position:relative;z-index:1}.services-stage.is-transitioning .services-stage__wipe{opacity:1}.services-stage.is-from-right .services-stage__wipe{transform-origin:right center;animation:services-stage-wipe-from-right 620ms cubic-bezier(0.22, 1, 0.36, 1) both}.services-stage.is-from-left .services-stage__wipe{transform-origin:left center;animation:services-stage-wipe-from-left 620ms cubic-bezier(0.22, 1, 0.36, 1) both}.service-panel{display:grid;grid-template-columns:minmax(12.5rem, 14rem) minmax(0, 1fr);gap:1.35rem;align-items:center;min-height:24rem;padding:2.25rem 1.35rem;background:var(--color-service-panel-bg);color:var(--color-dark);border:1px solid var(--color-service-panel-border);box-shadow:var(--color-service-panel-shadow)}.service-panel.is-entering{animation:none}.service-panel[hidden]{display:none}.service-panel__media{display:grid;align-items:center}.service-panel.is-entering .service-panel__media,.service-panel.is-entering .service-panel__body{opacity:0;animation:service-panel-content-in 420ms cubic-bezier(0.22, 1, 0.36, 1) 180ms both}.service-panel__frame{width:min(100%,11rem);aspect-ratio:1/1;padding:.7rem;border:2px solid var(--color-service-panel-frame-border);background:var(--color-service-panel-frame-bg);box-shadow:var(--color-service-panel-frame-shadow)}.service-panel__frame img{width:100%;height:100%;object-fit:cover}.service-panel__body{display:grid;gap:.75rem;align-content:center}.service-panel__eyebrow{margin:0;color:var(--color-service-panel-eyebrow);font-size:.76rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.service-panel__title{margin:0;font-size:clamp(20px,2vw,30px);line-height:1.05}.service-panel__lead,.service-panel__copy{margin:0;color:var(--color-service-panel-copy)}.service-panel__lead{font-size:1rem;font-weight:600}.service-panel__copy{font-size:.95rem}.service-panel__tags{margin-top:.15rem}.service-panel__tag{background:var(--color-service-panel-tag-bg);border-color:var(--color-service-panel-tag-border);color:var(--color-service-panel-tag-text)}.services-panel-hint{position:absolute;inset-block:.9rem;inset-inline:0;pointer-events:none;--service-hint-near: -1.6rem;--service-hint-far: -2.55rem}.services-panel-hint__bar{position:absolute;width:.78rem;border-radius:999px;border:1px solid var(--color-service-hint-border);background:var(--color-service-hint-bg);box-shadow:var(--color-service-hint-shadow);transition:top 240ms ease,bottom 240ms ease,opacity 240ms ease}.services-panel-hint__bar:first-child{top:0;bottom:0;opacity:.92}.services-panel-hint__bar:last-child{top:.8rem;bottom:.8rem;opacity:.74}.services-panel-hint[data-position=start] .services-panel-hint__bar:first-child{right:var(--service-hint-near)}.services-panel-hint[data-position=start] .services-panel-hint__bar:last-child{right:var(--service-hint-far)}.services-panel-hint[data-position=middle] .services-panel-hint__bar:first-child{left:var(--service-hint-near)}.services-panel-hint[data-position=middle] .services-panel-hint__bar:last-child{top:0;bottom:0;right:var(--service-hint-near);opacity:.92}.services-panel-hint[data-position=end] .services-panel-hint__bar:first-child{left:var(--service-hint-near)}.services-panel-hint[data-position=end] .services-panel-hint__bar:last-child{left:var(--service-hint-far)}.tag-list{display:flex;flex-wrap:wrap;gap:.65rem}.tag{display:inline-flex;align-items:center;padding:.1rem .5rem;border:1px solid var(--color-card-border);border-radius:999px;background:var(--color-card-bg);color:var(--color-dark);font-size:.84rem}.about__grid,.contact__grid{display:grid;grid-template-columns:minmax(0, 1.58fr) minmax(300px, 0.92fr);gap:1.5rem;align-items:start}.about__content,.form-card{background:var(--color-panel-gradient);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:clamp(1.5rem,4vw,2.5rem)}.about__quote{margin:0 0 1.3rem;line-height:1.05;letter-spacing:-0.05em}.text-link{display:inline-flex;margin-top:1rem;color:var(--color-accent);font-weight:700}.about__panel,.about__media,.stack-group{background:var(--color-panel-gradient-soft);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:clamp(1.4rem,4vw,2rem);animation:reveal-up 700ms ease 180ms both}.about__panel h3{margin:0 0 .8rem;font-size:1.7rem;letter-spacing:-0.04em}.about__media{display:flex;align-items:center;justify-content:center;overflow:hidden}.about__media img{display:block;width:min(100%,24rem);height:auto;object-fit:contain}.about__panel-copy{margin:0 0 1.4rem;color:var(--color-muted)}.contact-list{display:grid;gap:.9rem}.contact-list__item{position:relative;display:grid;gap:.2rem;padding:1rem 3.9rem 1rem 1.1rem;border:1px solid var(--color-card-border);border-radius:18px;background:var(--color-card-bg);transition:transform 180ms ease,border-color 180ms ease,background-color 180ms ease}.contact-list__item:hover,.contact-list__item:focus-visible{transform:translateY(-1px);border-color:var(--color-border-strong);background:var(--color-card-bg-strong)}.contact-list__item:hover .contact-list__icon,.contact-list__item:focus-visible .contact-list__icon{color:var(--color-accent);border-color:var(--color-border-strong);background:var(--color-focus-ring)}.contact-list__icon{position:absolute;top:.85rem;right:.9rem;display:grid;place-items:center;width:2rem;height:2rem;border:1px solid var(--color-icon-border);border-radius:999px;background:var(--color-icon-bg);color:var(--color-secondary);transition:color 180ms ease,border-color 180ms ease,background-color 180ms ease}.contact-list__icon svg{width:.95rem;height:.95rem}.contact-list__label{color:var(--color-secondary);font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}.contact-map{display:grid;gap:.75rem;margin-top:1.25rem}.contact-map strong{font-size:1rem;line-height:1.2}.contact-map__frame{overflow:hidden;border:1px solid var(--color-card-border);border-radius:18px;background:var(--color-card-bg);aspect-ratio:4/3}.contact-map__frame iframe{display:block;width:100%;height:100%;border:0}.section--stack{position:relative}.section--stack::before{content:"";position:absolute;inset:10% 0 auto;height:1px;background:linear-gradient(90deg, transparent, var(--color-section-rule), transparent)}.stack-masonry{columns:3 18rem;column-gap:1rem}.stack-group{display:inline-grid;gap:1.2rem;width:100%;margin:0 0 1rem;height:auto;break-inside:avoid;-webkit-column-break-inside:avoid}.stack-group__header{display:grid;gap:.7rem}.stack-group__header h3{margin:0;font-size:1.4rem;letter-spacing:-0.04em}.stack-group__header p{margin:0;color:var(--color-muted);line-height:1.38}.stack-group__icons{display:flex;flex-wrap:wrap;justify-content:center;gap:.85rem .95rem}.stack-icon{display:grid;gap:.35rem;flex:0 1 5rem;align-content:start;justify-items:center;text-align:center}.stack-icon__media{display:grid;place-items:center;width:4.2rem;height:4.2rem;padding:.65rem;overflow:hidden;border:1px solid var(--color-stack-icon-border);border-radius:20px;background:var(--color-stack-icon-bg);box-shadow:var(--color-stack-icon-shadow);margin-inline:auto;transition:transform 180ms ease,border-color 180ms ease,background-color 180ms ease}.stack-icon__media:hover{transform:translateY(-2px);border-color:var(--color-stack-icon-hover-border);background:var(--color-stack-icon-hover-bg)}.stack-icon__media img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain}.stack-icon__media--wide{width:4.6rem;padding-inline:.4rem}.stack-icon__media--wide img{max-width:100%;max-height:68%}.stack-icon__label{font-size:.88rem;font-weight:700;letter-spacing:-0.02em;line-height:1.15}.form-card{animation:reveal-up 700ms ease 220ms both}.form-card h2{margin:0 0 .8rem;line-height:1.05;letter-spacing:-0.05em}.form-card p{margin-top:0;color:var(--color-muted)}.form-grid{display:grid;gap:1rem;margin-top:1.8rem}.form-status{margin:0;padding:.95rem 1rem;border:1px solid var(--color-icon-border);border-radius:16px;font-size:.92rem;line-height:1.5}.form-status[hidden]{display:none}.form-status--success{color:#d7f6e5;border-color:rgba(113,221,170,.45);background:rgba(34,79,59,.45)}.form-status--error{color:#ffd7d7;border-color:rgba(255,122,122,.42);background:rgba(104,31,31,.38)}.field{display:grid;gap:.45rem}.field label{color:var(--color-muted);font-size:.92rem}.field input,.field select,.field textarea{width:100%;border:1px solid var(--color-card-border);border-radius:16px;background:var(--color-card-bg);color:var(--color-text);padding:.95rem 1rem;transition:border-color 180ms ease,background-color 180ms ease,box-shadow 180ms ease,transform 180ms ease}.field input::placeholder,.field select::placeholder,.field textarea::placeholder{color:var(--color-input-placeholder)}.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--color-focus-border);background:var(--color-card-bg-strong);box-shadow:0 0 0 .25rem var(--color-focus-ring);transform:translateY(-1px)}.field textarea{resize:vertical;min-height:9rem}.field--error input,.field--error select,.field--error textarea{border-color:rgba(255,122,122,.55);background:rgba(104,31,31,.16)}.field--honeypot{position:absolute;left:-9999px;opacity:0;pointer-events:none}.field__error{margin:0;color:#ffd7d7;font-size:.82rem}.form-note{margin:0;color:var(--color-muted);font-size:.84rem;text-align:center}.form-note a{color:var(--color-accent);text-decoration:underline;text-decoration-thickness:.08em;text-underline-offset:.16em}.form-note--warning{color:#f0db3a}.form-note--recaptcha{max-width:34rem;margin-inline:auto;line-height:1.4}.grecaptcha-badge{visibility:hidden !important}.about__panel--contact{position:sticky;top:6rem}.site-footer{padding-block:2.25rem 2rem;border-top:1px solid var(--color-footer-border);background:var(--color-footer-bg)}.site-footer__inner{display:grid;gap:1rem}.site-footer__top{background:var(--color-panel-gradient-soft);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);display:grid;grid-template-columns:minmax(0, 1fr) auto;gap:1rem 2rem;align-items:end;padding:clamp(1.35rem,4vw,2rem)}.site-footer__content{display:grid;gap:.75rem;max-width:30rem}.site-footer__brand-link{display:inline-flex;width:min(100%,9.5rem)}.site-footer__logo{width:100%}.site-footer__logo--light{display:none}.site-footer__title{margin:0;color:var(--color-text);font-size:1rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.site-footer__copy{margin:0;color:var(--color-muted);font-size:1rem;line-height:1.35}.site-footer__links{display:grid;gap:.8rem;justify-items:end}.site-footer__nav,.site-footer__contact{display:flex;flex-wrap:wrap;gap:.6rem 1rem;justify-content:flex-end}.site-footer__nav a:hover,.site-footer__nav a:focus-visible,.site-footer__contact a:hover,.site-footer__contact a:focus-visible{color:var(--color-accent);transform:translateY(-1px)}.site-footer__nav a,.site-footer__contact a{color:var(--color-muted);transition:color 180ms ease,transform 180ms ease}.site-footer__contact-link{display:inline-grid;place-items:center;width:2.75rem;height:2.75rem;border:1px solid var(--color-card-border);border-radius:999px;background:var(--color-card-bg);color:var(--color-text);transition:border-color 180ms ease,color 180ms ease,transform 180ms ease,background-color 180ms ease}.site-footer__contact-link svg{width:1.1rem;height:1.1rem}.site-footer__contact-link:hover,.site-footer__contact-link:focus-visible{color:var(--color-accent);border-color:var(--color-border-strong);background:hsla(0,0%,100%,.04)}.site-footer__bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem 1.5rem;padding-inline:.2rem;color:var(--color-muted);font-size:.95rem}.site-footer__bottom p{margin:0}html[data-theme=light] .site-footer__logo--dark{display:none}html[data-theme=light] .site-footer__logo--light{display:block}.go-top{position:fixed;right:1.5rem;bottom:1.5rem;z-index:70;display:inline-flex;align-items:center;gap:.6rem;padding:.8rem 1rem;border:1px solid var(--color-go-top-border);border-radius:999px;background:var(--color-go-top-bg);color:var(--color-text);box-shadow:0 24px 48px rgba(0,0,0,.28);backdrop-filter:blur(18px);cursor:pointer;opacity:0;transform:translateY(1rem);pointer-events:none;transition:transform 180ms ease,opacity 180ms ease,border-color 180ms ease,background-color 180ms ease,color 180ms ease}.go-top:hover,.go-top:focus-visible{border-color:var(--color-go-top-hover-border);background:var(--color-go-top-hover-bg);color:var(--color-accent)}.go-top.is-visible{opacity:1;transform:translateY(0);pointer-events:auto}.go-top__icon{display:inline-grid;place-items:center;width:1.6rem;height:1.6rem;border-radius:999px;background:var(--color-focus-ring);font-size:.95rem;font-weight:700;line-height:1}.go-top__label{font-size:.9rem;font-weight:700;letter-spacing:.02em}.project-hero{padding-block:clamp(2rem,4vw,3rem) clamp(4.5rem,9vw,6.5rem)}.project-hero__grid{display:grid;grid-template-columns:minmax(0, 1.1fr) minmax(320px, 0.9fr);gap:1.5rem;align-items:stretch}.project-hero__content{background:var(--color-panel-gradient-strong);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:clamp(1.5rem,4vw,3rem);animation:reveal-up 700ms ease both}.project-hero__content h1{margin:0;max-width:12ch;font-size:clamp(2.5rem,5vw,4.4rem);line-height:.98;letter-spacing:-0.055em}.project-hero__lead{margin:1.35rem 0 0;max-width:45rem;color:var(--color-secondary);font-size:1.05rem}.project-summary{background:var(--color-panel-gradient-soft);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:clamp(1.4rem,4vw,2rem);animation:reveal-up 700ms ease 120ms both}.project-summary__grid{display:grid;grid-template-columns:repeat(2, minmax(0, 1fr));gap:1rem;margin-top:1rem}.project-summary__item{padding:1rem;border:1px solid var(--color-card-border);border-radius:20px;background:var(--color-card-bg)}.project-summary__item strong{display:block;margin-top:.35rem;font-size:1.02rem;line-height:1.35}.project-layout{display:grid;grid-template-columns:minmax(0, 1.08fr) minmax(280px, 0.92fr);gap:1.5rem;align-items:start}.project-content{display:grid;gap:1.5rem}.project-section{background:var(--color-panel-gradient);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft);padding:clamp(1.5rem,4vw,2.4rem);animation:reveal-up 700ms ease both}.project-section h2{margin:0 0 1rem;line-height:1.05;letter-spacing:-0.05em}.project-section h3{margin:0 0 .55rem;font-size:1.2rem;letter-spacing:-0.03em}.project-section p{margin:0 0 1rem;color:var(--color-muted)}.project-section p:last-child{margin-bottom:0}.project-highlights{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;margin-top:1.5rem}.project-mini-card{padding:1.1rem;border:1px solid var(--color-card-border);border-radius:20px;background:var(--color-card-bg)}.project-timeline{display:grid;gap:.5rem;margin-top:1.5rem}.timeline-step{display:grid;grid-template-columns:auto 1fr;gap:1rem;align-items:start;padding:1rem 0;border-top:1px solid var(--color-card-border)}.timeline-step:first-child{padding-top:0;border-top:0}.timeline-step p{margin-bottom:0}.timeline-step__marker{width:.85rem;height:.85rem;margin-top:.35rem;border-radius:50%;background:var(--color-accent);box-shadow:0 0 0 .35rem var(--color-focus-ring)}.project-sidebar{position:sticky;top:6rem;display:grid;gap:1rem}.project-side-card,.result-card,.gallery-card{background:var(--color-panel-gradient-soft);border:1px solid var(--color-border);border-radius:28px;box-shadow:var(--shadow-soft)}.project-side-card{padding:1.25rem}.project-side-card strong{display:block;line-height:1.35}.project-side-card p{margin:.65rem 0 0;color:var(--color-muted)}.project-results__grid{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem}.result-card{padding:1.4rem;text-align:center;animation:reveal-up 700ms ease both}.result-card strong{display:block;font-family:var(--font-display);font-size:clamp(2rem,4vw,3rem);line-height:1;letter-spacing:-0.05em}.result-card span{display:block;margin-top:.55rem;color:var(--color-muted)}.project-gallery{display:grid;grid-template-columns:repeat(3, minmax(0, 1fr));gap:1rem;margin-top:1.25rem}.gallery-card{padding:1.35rem}.gallery-card h3{margin:.75rem 0 .45rem;font-size:1.35rem;letter-spacing:-0.04em}.gallery-card p{margin:0;color:var(--color-muted)}@keyframes reveal-up{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes services-stage-wipe-from-right{from{opacity:1;transform:translateX(var(--services-wipe-offset)) scaleX(0.035)}72%{opacity:1}to{opacity:0;transform:translateX(0) scaleX(1)}}@keyframes services-stage-wipe-from-left{from{opacity:1;transform:translateX(calc(var(--services-wipe-offset) * -1)) scaleX(0.035)}72%{opacity:1}to{opacity:0;transform:translateX(0) scaleX(1)}}@keyframes service-panel-content-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion: reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none !important;transition:none !important}}@media(max-width: 1160px){.service-panel{grid-template-columns:minmax(11.5rem, 13rem) minmax(0, 1fr)}}@media(max-width: 980px){.hero__grid,.about__grid,.contact__grid,.project-hero__grid,.project-layout{grid-template-columns:1fr}.about__panel--contact,.project-sidebar{position:static}.project-results__grid,.project-gallery{grid-template-columns:1fr}.stack-masonry{columns:2 16rem}.services-stage{padding-inline:0;--services-wipe-offset: 2.15rem}.services-panel-hint{--service-hint-near: -1.35rem;--service-hint-far: -2.15rem}.services-panel-hint__bar{width:.7rem}.site-footer__top{grid-template-columns:1fr}}@media(max-width: 760px){.container{width:min(100% - 2rem,var(--container-width))}.site-header__inner{grid-template-columns:minmax(0, 1fr) auto;align-items:start}.site-header__actions{grid-column:2;grid-row:1}.nav-toggle{display:inline-flex}.site-nav{display:none;grid-column:1/-1;width:100%;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:.4rem;padding-top:.25rem}.site-header.is-nav-open .site-nav{display:flex}.site-nav__link{width:100%}.hero-metrics,.project-summary__grid,.project-highlights{grid-template-columns:1fr}.services-tabs{grid-template-columns:2.9rem minmax(0, 1fr) 2.9rem;gap:.55rem;align-items:stretch;background:rgba(0,0,0,0);border:0}.services-tabs__list{grid-column:2;display:flex;border:1px solid var(--color-tabs-border);background:var(--color-tabs-bg);border-radius:20px;overflow:hidden}.services-tabs__arrow{min-height:auto;width:2.9rem;aspect-ratio:1;align-self:center;border:1px solid var(--color-tabs-border);border-radius:20px;display:grid;place-items:center;font-size:1.55rem}.services-tab{display:none;width:100%;min-height:4.2rem;padding:.8rem .9rem;border:0;align-content:center}.services-tab.is-active{display:grid}.services-tab__title{font-size:.98rem}.services-tab__subtitle{font-size:.9rem}.service-panel{grid-template-columns:1fr;min-height:auto}.service-panel__frame{width:min(100%,13rem)}.services-panel-hint{display:none}.stack-masonry{columns:2 14rem}.site-footer__links{justify-items:start}.site-footer__nav,.site-footer__contact{justify-content:flex-start}.site-footer__bottom{flex-direction:column;align-items:flex-start}}@media(max-width: 560px){.container{width:min(100% - 1.5rem,var(--container-width))}.theme-toggle{width:4.1rem;min-width:4.1rem}.services-tabs{grid-template-columns:2.8rem minmax(0, 1fr) 2.8rem;gap:.45rem}.services-tabs__list{border-radius:18px}.services-tabs__arrow{width:2.8rem;border-radius:18px;font-size:1.45rem}.services-tab{min-height:3.9rem;padding-inline:.75rem}.services-tab__title{font-size:.94rem}.services-tab__subtitle{font-size:.84rem}.section--services .container{width:min(100% - 1.5rem,62rem)}.hero__content,.about__content,.about__panel,.about__media,.stack-group,.form-card,.project-summary,.project-section,.project-side-card,.result-card,.gallery-card{padding:1.25rem;border-radius:22px}.stack-masonry{columns:1}.button-row{flex-direction:column}.button{width:100%}.code-window__line{font-size:.8rem}.service-panel{padding:2rem 1rem}.service-panel__title{max-width:none}.go-top{right:.85rem;bottom:.85rem;padding:.72rem .9rem}.go-top__label{font-size:.84rem}.services-stage{padding-inline:0;--services-wipe-offset: 1.75rem}.services-panel-hint{inset-block:.7rem;--service-hint-near: -1.15rem;--service-hint-far: -1.75rem}.services-panel-hint__bar{width:.62rem}.site-footer__top{border-radius:22px}.services-panel-hint__bar:last-child{top:.65rem;bottom:.65rem}}
