@keyframes fs-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.fs-section{--ink:#0e141b;--steel-800:#1b2631;--steel-400:#6e8091;--steel-200:#c5ced6;--steel-100:#e2e8ed;--concrete:#edf1f4;--white:#fff;--hivis:#ffc93c;--hivis-soft:#fff3d0;--hivis-deep:#e5a900;--badge-text:#8a6400;--sh-1:0 10px 28px #0e141b12;--sh-2:0 18px 40px #0e141b1f;--r-sm:6px;--r-lg:16px;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--mid:.34s;--slow:.62s;--gutter:24px;background:var(--concrete);color:var(--ink);font-family:var(--font-dispatch-sans), system-ui, sans-serif;padding-block:clamp(56px,8vw,104px)}.fs-wrap{width:min(1240px, calc(100% - (var(--gutter) * 2)));margin-inline:auto}.fs-section .section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.fs-eyebrow{font-family:var(--font-hivis-mono), monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--steel-400);align-items:center;gap:9px;margin:0;font-size:.69rem;font-weight:600;display:inline-flex}.fs-eyebrow:before{content:"";background:var(--hivis);border-radius:2px;flex-shrink:0;width:22px;height:3px}.fs-section .display-lg{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.038em;color:var(--ink);text-transform:uppercase;margin:16px 0 0;font-size:clamp(2.2rem,4.6vw,3.5rem);font-weight:800;line-height:1.02}.fs-ghost{color:var(--ink);box-shadow:inset 0 0 0 2px var(--steel-200);font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.01em;text-transform:uppercase;transition:background var(--mid) var(--ease), box-shadow var(--mid) var(--ease), transform var(--mid) var(--ease);background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:13px 22px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex}.fs-ghost:hover{background:var(--white);box-shadow:inset 0 0 0 2px var(--ink), var(--sh-1);transform:translateY(-2px)}.fs-section .grid.grid-auto{grid-template-columns:repeat(auto-fill,minmax(min(258px,100%),1fr));gap:22px;display:grid}.sk-card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}.sk-media,.sk-line{background:linear-gradient(90deg, var(--steel-100) 20%, #fff 50%, var(--steel-100) 80%);background-size:200% 100%;animation:1.35s linear infinite fs-shimmer}.sk-media{aspect-ratio:16/10}.sk-body{gap:10px;padding:18px;display:grid}.sk-line{border-radius:4px;height:11px}.fs-section .svc-card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1);color:inherit;transition:transform var(--mid) var(--ease), box-shadow var(--mid) var(--ease);flex-direction:column;text-decoration:none;display:flex;overflow:hidden}.fs-section .svc-card:hover{box-shadow:var(--sh-2);transform:translateY(-5px)}.fs-section .svc-card[data-reveal]{opacity:0;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out), box-shadow var(--mid) var(--ease);transform:translateY(26px)}.fs-section .svc-card[data-reveal].is-in{opacity:1;transform:none}.fs-section .svc-card[data-reveal].is-in:hover{transform:translateY(-5px)}.fs-section .svc-card__media{aspect-ratio:16/10;background:var(--steel-800);place-items:center;display:grid;position:relative;overflow:hidden}.fs-section .svc-card__media:before{content:none}.fs-section .svc-card__photo,.fs-section .svc-card__media .svc-media{width:100%;height:100%;display:block;position:absolute;inset:0}.fs-section .svc-card:hover .svc-media__glyph{transform:translateY(-5px)scale(1.08)}.fs-section .svc-card__glyph{z-index:1;width:62px;height:62px;color:var(--hivis);transition:transform var(--slow) var(--ease-out);place-items:center;display:grid;position:relative}.fs-section .svc-card:hover .svc-card__glyph{transform:translateY(-5px)scale(1.08)}.fs-section .badge--hivis{z-index:2;background:var(--hivis-soft);color:var(--badge-text);font-family:var(--font-hivis-mono), monospace;letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:6px;padding:5px 10px;font-size:.66rem;font-weight:700;display:inline-flex;position:absolute;top:12px;left:12px}.fs-section .badge--hivis i{background:currentColor;border-radius:50%;flex-shrink:0;width:5px;height:5px}.fs-section .svc-card__price{z-index:2;border-radius:var(--r-sm);background:var(--hivis);color:var(--ink);font-family:var(--font-hivis-mono), monospace;padding:6px 11px;font-size:.8rem;font-weight:700;position:absolute;bottom:12px;right:12px}.fs-section .svc-card__body{flex-direction:column;flex:1;gap:9px;padding:18px;display:flex}.fs-section .svc-card__cat{font-family:var(--font-hivis-mono), monospace;letter-spacing:.12em;text-transform:uppercase;color:var(--steel-400);margin:0;font-size:.68rem}.fs-section .svc-card__title{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.02em;color:var(--ink);margin:0;font-size:1.06rem;font-weight:700;line-height:1.2}.fs-section .svc-card__desc{color:var(--steel-400);flex:1;margin:0;font-size:.88rem;line-height:1.45}.fs-section .svc-card__foot{border-top:1px solid var(--steel-100);justify-content:space-between;align-items:center;gap:10px;margin-top:auto;padding-top:13px;display:flex}.fs-section .svc-card__rating{align-items:center;gap:6px;min-width:0;display:inline-flex}.fs-stars{color:var(--steel-100);letter-spacing:0;gap:1px;font-size:.72rem;line-height:1;display:inline-flex}.fs-stars .is-on{color:var(--hivis-deep)}.fs-section .svc-card__rating b{font-family:var(--font-hivis-mono), monospace;color:var(--ink);font-size:.75rem;font-weight:600}.fs-section .svc-card__rating em{font-style:normal;font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);font-size:.72rem}.fs-section .svc-card__dur{font-family:var(--font-hivis-mono), monospace;color:var(--steel-400);white-space:nowrap;font-size:.75rem}@media (max-width:700px){.fs-section{--gutter:18px}.fs-section .section-head{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.sk-media,.sk-line{background:var(--steel-100);animation:none}.fs-section .svc-card[data-reveal]{opacity:1;transition:none;transform:none}.fs-ghost,.fs-section .svc-card,.fs-section .svc-card__media:before,.fs-section .svc-card__glyph{transition:none}.fs-ghost:hover,.fs-section .svc-card:hover,.fs-section .svc-card[data-reveal].is-in:hover,.fs-section .svc-card:hover .svc-card__media:before,.fs-section .svc-card:hover .svc-card__glyph{transform:none}}
@keyframes ft-ripple{0%{opacity:.45;transform:scale(0)}to{opacity:0;transform:scale(1)}}.ft-section{--ink:#0e141b;--hivis:#ffc93c;--paper:#f7f9fb;--white:#fff;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--gutter:24px;background:var(--paper);color:var(--ink);font-family:var(--font-dispatch-sans), system-ui, sans-serif;padding-block:clamp(56px,8vw,104px)}.ft-wrap{width:min(1240px, calc(100% - (var(--gutter) * 2)));margin-inline:auto}.ft-panel{background:var(--hivis);border-radius:16px;padding:clamp(32px,5vw,58px);position:relative;overflow:hidden;box-shadow:0 10px 28px #0e141b0f}.ft-panel[data-reveal]{opacity:0;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out);transform:translateY(26px)}.ft-panel[data-reveal].is-in{opacity:1;transform:none}.ft-circle{pointer-events:none;z-index:0;background:#0e141b12;border-radius:50%;width:260px;height:260px;position:absolute;inset:auto -60px -60px auto}.ft-row{z-index:1;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:32px;display:flex;position:relative}.ft-copy{flex:280px;min-width:0}.ft-eyebrow{font-family:var(--font-hivis-mono), monospace;letter-spacing:.22em;text-transform:uppercase;color:#0e141b99;align-items:center;gap:9px;margin:0;font-size:.69rem;font-weight:600;display:inline-flex}.ft-eyebrow:before{content:"";background:var(--hivis);border-radius:2px;flex-shrink:0;width:22px;height:3px;box-shadow:0 0 0 1px #0e141b1f}.ft-section .display-md{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.03em;color:var(--ink);text-transform:uppercase;margin:16px 0 0;font-size:clamp(1.6rem,3vw,2.3rem);font-weight:800;line-height:1.08}.ft-copy>p:last-child{color:#0e141bb8;max-width:48ch;margin:8px 0 0;font-size:1rem;line-height:1.5}.ft-section .btn.btn--dark.btn--lg{background:var(--ink);color:var(--white);font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.01em;text-transform:uppercase;cursor:pointer;transition:transform .18s var(--ease), box-shadow .18s var(--ease);border:0;border-radius:10px;flex-shrink:0;justify-content:center;align-items:center;padding:17px 30px;font-size:1.05rem;font-weight:700;text-decoration:none;display:inline-flex;position:relative;overflow:hidden}.ft-section .btn.btn--dark.btn--lg:hover{transform:translateY(-2px);box-shadow:0 8px 24px #0e141b4d}.ft-section .btn.btn--dark.btn--lg:active{transform:scale(.98);box-shadow:0 4px 14px #0e141b38}.ft-ripple{pointer-events:none;animation:ft-ripple .52s var(--ease-out) forwards;background:#ffffff4d;border-radius:50%;position:absolute}@media (max-width:700px){.ft-section{--gutter:18px}}@media (prefers-reduced-motion:reduce){.ft-panel[data-reveal]{opacity:1;transition:none;transform:none}.ft-section .btn.btn--dark.btn--lg{transition:none}.ft-section .btn.btn--dark.btn--lg:hover,.ft-section .btn.btn--dark.btn--lg:active{transform:none}.ft-ripple{display:none}}
@keyframes marquee{to{transform:translate(-50%)}}.marquee{background:#0e141b;padding-block:13px;overflow:hidden}.marquee__track{align-items:center;gap:44px;width:max-content;animation:34s linear infinite marquee;display:flex}.marquee:hover .marquee__track{animation-play-state:paused}@media (prefers-reduced-motion:reduce){.marquee__track{animation:none}}
@keyframes float-glow{0%,to{transform:translate(0)scale(1)}50%{transform:translate(-46px,46px)scale(1.14)}}@keyframes pulse-dot{0%,to{box-shadow:0 0 #12b88699}70%{box-shadow:0 0 0 6px #12b88600}}@keyframes flap-flip{0%{opacity:1;transform:rotateX(0)}40%{opacity:.2;transform:rotateX(90deg)}60%{opacity:.2;transform:rotateX(-90deg)}to{opacity:1;transform:rotateX(0)}}.hero{--hero-nav:71px;color:#fff;box-sizing:border-box;width:100%;min-height:calc(100dvh - var(--hero-nav));background:#131b24;flex-direction:column;margin:0;padding:0;display:flex;position:relative;overflow:clip}.hero__body{z-index:1;flex-direction:column;flex:1 0 auto;justify-content:center;padding-block:clamp(24px,4vh,56px);display:flex;position:relative}.hero__body>.grid{width:100%}.hero__marquee{z-index:2;background:#0e141b;border-top:1px solid #ffffff14;flex:none;width:100%;margin:auto 0 0;padding:0;position:relative}.hero__marquee .marquee{background:0 0;margin:0;padding-block:12px}.hero:before{content:"";z-index:0;pointer-events:none;opacity:.35;background-image:linear-gradient(#9aabb82e 1px,#0000 1px),linear-gradient(90deg,#9aabb82e 1px,#0000 1px);background-size:46px 46px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 70% 30%,#000 20%,#0000 78%);mask-image:radial-gradient(90% 70% at 70% 30%,#000 20%,#0000 78%)}.hero__glow{z-index:0;pointer-events:none;background:radial-gradient(circle,#ffc93c2e,#0000 66%);border-radius:50%;width:620px;height:620px;animation:13s ease-in-out infinite float-glow;position:absolute;top:-240px;right:-180px}.hero__flap.is-flipping{transform-style:preserve-3d;animation:.5s cubic-bezier(.22,.68,.32,1) flap-flip}.hero__pulse{animation:1.5s infinite pulse-dot}@media (prefers-reduced-motion:reduce){.hero__glow,.hero__flap.is-flipping,.hero__pulse{animation:none}}@media (max-width:1080px){.hero__board{display:none!important}.hero__body>.grid{grid-template-columns:1fr!important}}@media (max-height:720px){.hero__body{padding-block:16px}}
.hiw-section{--ink:#0e141b;--steel-400:#6e8091;--steel-500:#4a5c6b;--paper:#f7f9fb;--white:#fff;--hivis:#ffc93c;--hivis-deep:#e5a900;--sh-1:0 10px 28px #0e141b12;--r-lg:16px;--ease-out:cubic-bezier(.16, 1, .3, 1);--gutter:24px;background:var(--paper);color:var(--ink);font-family:var(--font-dispatch-sans), system-ui, sans-serif;padding-block:clamp(56px,8vw,104px)}.hiw-wrap{width:min(1240px, calc(100% - (var(--gutter) * 2)));margin-inline:auto}.hiw-section .section-head{margin-bottom:34px}.hiw-eyebrow{font-family:var(--font-hivis-mono), monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--steel-400);align-items:center;gap:9px;margin:0;font-size:.69rem;font-weight:600;display:inline-flex}.hiw-eyebrow:before{content:"";background:var(--hivis);border-radius:2px;flex-shrink:0;width:22px;height:3px}.hiw-section .display-lg{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.038em;color:var(--ink);text-transform:uppercase;margin:16px 0 0;font-size:clamp(2.2rem,4.6vw,3.5rem);font-weight:800;line-height:1.02}.hiw-section .lede{max-width:60ch;color:var(--steel-500);margin:16px 0 0;font-size:clamp(1rem,1.5vw,1.14rem);line-height:1.5}.hiw-section .grid.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;display:grid}.hiw-section .card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1)}.hiw-section .card--pad{padding:22px}.hiw-section .card[data-reveal]{opacity:0;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out);transform:translateY(26px)}.hiw-section .card[data-reveal].is-in{opacity:1;transform:none}.hiw-num{font-family:var(--font-hivis-mono), monospace;letter-spacing:-.04em;color:var(--hivis-deep);font-size:1.5rem;font-weight:700;line-height:1;display:block}.hiw-section .display-sm{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.02em;color:var(--ink);margin:8px 0 0;font-size:clamp(1.18rem,2vw,1.45rem);font-weight:700;line-height:1.15}.hiw-section .card p{color:var(--steel-400);margin:8px 0 0;font-size:.89rem;line-height:1.45}@media (max-width:900px){.hiw-section .grid.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.hiw-section{--gutter:18px}.hiw-section .grid.grid-4{grid-template-columns:1fr}}@media (prefers-reduced-motion:reduce){.hiw-section .card[data-reveal]{opacity:1;transition:none;transform:none}}
@keyframes tt-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.tt-section{--ink:#0e141b;--steel-900:#131b24;--steel-800:#1b2631;--steel-500:#4a5c6b;--steel-400:#6e8091;--steel-300:#9aabb8;--steel-200:#c5ced6;--steel-100:#e2e8ed;--concrete:#edf1f4;--white:#fff;--hivis:#ffc93c;--signal:#12b886;--sh-1:0 10px 28px #0e141b12;--sh-2:0 18px 40px #0e141b24;--r-lg:16px;--ease:cubic-bezier(.22, .68, .32, 1);--ease-out:cubic-bezier(.16, 1, .3, 1);--mid:.34s;--gutter:24px;background:var(--steel-900);color:var(--steel-200);font-family:var(--font-dispatch-sans), system-ui, sans-serif;padding-block:clamp(56px,8vw,104px)}.tt-wrap{width:min(1240px, calc(100% - (var(--gutter) * 2)));margin-inline:auto}.tt-section .section-head{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:24px;margin-bottom:34px;display:flex}.tt-eyebrow.on-dark{font-family:var(--font-hivis-mono), monospace;letter-spacing:.22em;text-transform:uppercase;color:var(--steel-300);align-items:center;gap:9px;margin:0;font-size:.69rem;font-weight:600;display:inline-flex}.tt-eyebrow.on-dark:before{content:"";background:var(--hivis);border-radius:2px;flex-shrink:0;width:22px;height:3px}.tt-section .display-lg{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.038em;color:var(--white);text-transform:uppercase;margin:16px 0 0;font-size:clamp(2.2rem,4.6vw,3.5rem);font-weight:800;line-height:1.02}.tt-ghost-light{color:var(--white);font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.01em;text-transform:uppercase;transition:background var(--mid) var(--ease), box-shadow var(--mid) var(--ease);background:0 0;border-radius:10px;justify-content:center;align-items:center;padding:13px 22px;font-size:.88rem;font-weight:700;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 2px #ffffff42}.tt-ghost-light:hover{box-shadow:inset 0 0 0 2px var(--hivis);background:#ffffff1a}.tt-section .grid.grid-4{grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;display:grid}.tt-section .sk-card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1);overflow:hidden}.tt-section .sk-media,.tt-section .sk-line{background:linear-gradient(90deg, var(--steel-100) 20%, #fff 50%, var(--steel-100) 80%);background-size:200% 100%;animation:1.35s linear infinite tt-shimmer}.tt-section .sk-media{aspect-ratio:16/10}.tt-section .sk-body{gap:10px;padding:18px;display:grid}.tt-section .sk-line{border-radius:4px;height:11px}.tt-section .tech-card{background:var(--white);border-radius:var(--r-lg);box-shadow:var(--sh-1);color:var(--ink);transition:transform var(--mid) var(--ease), box-shadow var(--mid) var(--ease);flex-direction:column;gap:14px;padding:20px;text-decoration:none;display:flex;position:relative;overflow:hidden}.tt-section .tech-card--hover:hover{box-shadow:var(--sh-2);transform:translateY(-5px)}.tt-section .tech-card:after{content:"";background:var(--hivis);transform-origin:0;height:4px;transition:transform var(--mid) var(--ease-out);position:absolute;bottom:0;left:0;right:0;transform:scaleX(0)}.tt-section .tech-card--hover:hover:after{transform:scaleX(1)}.tt-section .tech-card[data-reveal]{opacity:0;transition:opacity .72s var(--ease-out), transform .72s var(--ease-out), box-shadow var(--mid) var(--ease);transform:translateY(26px)}.tt-section .tech-card[data-reveal].is-in{opacity:1;transform:none}.tt-section .tech-card[data-reveal].is-in:hover{transform:translateY(-5px)}.tt-section .tech-card__head{align-items:center;gap:12px;display:flex}.tt-section .tech-card__avatar{background:var(--steel-800);width:44px;height:44px;color:var(--hivis);font-family:var(--font-dispatch-display), sans-serif;letter-spacing:.02em;border-radius:10px;flex-shrink:0;place-items:center;font-size:.85rem;font-weight:800;display:grid;position:relative}.tt-section .tech-card__online{background:var(--signal);border:2.5px solid var(--white);border-radius:50%;width:12px;height:12px;position:absolute;bottom:-2px;right:-2px}.tt-section .tech-card__name{font-family:var(--font-dispatch-display), sans-serif;letter-spacing:-.02em;color:var(--ink);align-items:center;gap:6px;margin:0;font-size:1rem;font-weight:700;line-height:1.2;display:inline-flex}.tt-section .tech-card__verified{color:var(--signal);flex-shrink:0}.tt-section .tech-card__role{color:var(--steel-400);margin:3px 0 0;font-size:.8rem;line-height:1.35}.tt-section .tech-card__skills{flex-wrap:wrap;gap:6px;display:flex}.tt-section .skill-tag{background:var(--concrete);color:var(--steel-500);font-family:var(--font-hivis-mono), monospace;border-radius:6px;padding:4px 9px;font-size:.68rem;display:inline-flex}.tt-section .tech-card__stats{border-top:1px solid var(--steel-100);text-align:center;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:auto;padding-top:13px;display:grid}.tt-section .tech-card__stats b{font-family:var(--font-hivis-mono), monospace;color:var(--ink);font-size:.95rem;font-weight:700;display:block}.tt-section .tech-card__stats span{font-family:var(--font-hivis-mono), monospace;letter-spacing:.09em;text-transform:uppercase;color:var(--steel-400);margin-top:3px;font-size:.68rem;font-weight:500;display:block}@media (max-width:1100px){.tt-section .grid.grid-4{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:700px){.tt-section{--gutter:18px}.tt-section .grid.grid-4{grid-template-columns:1fr}.tt-section .section-head{align-items:flex-start}}@media (prefers-reduced-motion:reduce){.tt-section .sk-media,.tt-section .sk-line{background:var(--steel-100);animation:none}.tt-section .tech-card[data-reveal]{opacity:1;transition:none;transform:none}.tt-section .tech-card,.tt-section .tech-card:after,.tt-ghost-light{transition:none}.tt-section .tech-card--hover:hover,.tt-section .tech-card[data-reveal].is-in:hover{transform:none}.tt-section .tech-card--hover:hover:after{transform:scaleX(1)}}
