:root{--paper:#f3efe7;--paper-2:#ece7dc;--paper-3:#e4ded0;--card:#faf8f2;--ink:#1d3733;--ink-soft:#40564f;--ink-faint:#6b7d75;--teal:#17635a;--teal-deep:#0f4a43;--teal-mist:#cfe0da;--amber:#d98e2b;--amber-soft:#eec27e;--copper:#c06b3e;--sage:#8aa894;--true-green:#2e8b64;--line:#1d373324;--line-strong:#1d373347;--font-display:"Fraunces", Georgia, serif;--font-body:"Inter", -apple-system, sans-serif;--font-mono:"JetBrains Mono", "SF Mono", monospace;--radius:18px;--radius-sm:10px;--shadow:0 2px 6px #1d37330f, 0 18px 44px -18px #1d373338;--shadow-soft:0 1px 3px #1d37330d, 0 10px 28px -14px #1d373329;--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-out:cubic-bezier(.22, 1, .36, 1)}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;line-height:1.6;overflow-x:hidden}body:before{content:"";pointer-events:none;z-index:0;background-image:linear-gradient(#17635a0b 1px,#0000 1px),linear-gradient(90deg,#17635a0b 1px,#0000 1px);background-size:44px 44px;position:fixed;inset:0;-webkit-mask-image:radial-gradient(90% 70% at 50% 0,#000 35%,#0000 100%);mask-image:radial-gradient(90% 70% at 50% 0,#000 35%,#0000 100%)}::selection{background:var(--amber-soft);color:var(--ink)}h1,h2,h3,h4{font-family:var(--font-display);letter-spacing:-.01em;font-weight:600;line-height:1.15}a{color:inherit;text-decoration:none}button{cursor:pointer;font-family:inherit}.container{z-index:1;width:min(1160px,100% - 48px);margin-inline:auto;position:relative}section{position:relative}.section-tag{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--teal);border:1px solid var(--line-strong);background:var(--card);border-radius:999px;align-items:center;gap:8px;padding:6px 14px;font-size:.72rem;font-weight:500;display:inline-flex}.section-tag:before{content:"";background:var(--amber);border-radius:50%;width:7px;height:7px;animation:2.4s ease-in-out infinite tag-pulse}@keyframes tag-pulse{0%,to{box-shadow:0 0 #d98e2b80}55%{box-shadow:0 0 0 6px #d98e2b00}}.section-title{margin:18px 0 12px;font-size:clamp(1.9rem,3.6vw,2.7rem)}.section-title em{color:var(--teal);font-style:italic}.section-lede{color:var(--ink-soft);max-width:58ch;font-size:1.06rem}.page{min-height:60vh;padding-top:84px}.reveal{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transform:translateY(26px)}.reveal.is-visible{opacity:1;transform:none}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}html{scroll-behavior:auto}.reveal{opacity:1;transform:none}}.tpl-logo{flex-shrink:0;display:block}.tpl-logo--animated .tpl-logo__led{animation:2.6s ease-in-out infinite led-blink}@keyframes led-blink{0%,78%,to{opacity:.35}84%,94%{opacity:1}}.tpl-logo--animated .tpl-logo__check{stroke-dasharray:34;stroke-dashoffset:0;animation:check-draw 2.6s var(--ease-out) infinite}@keyframes check-draw{0%{stroke-dashoffset:34px;opacity:.35}55%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:1}}.tpl-lockup{align-items:center;gap:12px;display:inline-flex}.tpl-lockup__text{flex-direction:column;line-height:1.1;display:flex}.tpl-lockup__name{font-family:var(--font-display);color:var(--ink);letter-spacing:-.015em;font-size:1.28rem;font-weight:700}.tpl-lockup__name em{color:var(--teal);font-style:italic}.tpl-lockup__tag{font-family:var(--font-mono);letter-spacing:.22em;text-transform:uppercase;color:var(--ink-faint);margin-top:3px;font-size:.6rem}.nav{z-index:50;transition:padding .35s var(--ease-out), background .35s, box-shadow .35s;padding:18px 0;position:fixed;top:0;left:0;right:0}.nav--scrolled{-webkit-backdrop-filter:blur(12px);box-shadow:0 1px 0 var(--line);background:#f3efe7db;padding:10px 0}.nav__inner{justify-content:space-between;align-items:center;gap:24px;display:flex}.nav__links{align-items:center;gap:30px;font-size:.95rem;font-weight:500;display:flex}.nav__links>a:not(.nav__cta){color:var(--ink-soft);transition:color .25s;position:relative}.nav__links>a:not(.nav__cta):after{content:"";background:var(--amber);transform-origin:0;width:100%;height:2px;transition:transform .3s var(--ease-out);border-radius:2px;position:absolute;bottom:-5px;left:0;transform:scaleX(0)}.nav__links>a:not(.nav__cta):hover{color:var(--ink)}.nav__links>a:not(.nav__cta):hover:after{transform:scaleX(1)}.nav__links>a:not(.nav__cta)[aria-current=page]{color:var(--ink)}.nav__links>a:not(.nav__cta)[aria-current=page]:after{transform:scaleX(1)}.nav__cta{background:var(--teal);color:var(--card);box-shadow:var(--shadow-soft);transition:background .25s, transform .25s var(--ease-spring);border-radius:999px;padding:10px 20px;font-size:.9rem;font-weight:600}.nav__cta:hover{background:var(--teal-deep);transform:translateY(-2px)}.nav__burger{background:0 0;border:none;flex-direction:column;gap:5px;padding:8px;display:none}.nav__burger span{background:var(--ink);border-radius:2px;width:22px;height:2px;transition:transform .3s,opacity .3s}@media (width<=760px){.nav__burger{display:flex}.nav__links{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);opacity:0;pointer-events:none;transition:opacity .3s, transform .3s var(--ease-out);flex-direction:column;align-items:flex-start;padding:22px 26px;position:absolute;top:calc(100% + 8px);right:24px;transform:translateY(-8px)}.nav__links--open{opacity:1;pointer-events:auto;transform:none}}.hero{padding:150px 0 40px;overflow:hidden}.hero__inner{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:center;gap:48px;display:grid}.hero__copy{animation:hero-in .9s var(--ease-out) both}@keyframes hero-in{0%{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}.hero__title{margin:22px 0 18px;font-size:clamp(2.4rem,4.6vw,3.6rem);font-weight:600}.hero__em{color:var(--teal);white-space:nowrap;font-style:italic;position:relative}.hero__em:after{content:"";background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 200 12' preserveAspectRatio='none'%3E%3Cpath d='M2 9 C 40 3, 80 11, 120 6 S 180 4, 198 8' fill='none' stroke='%23d98e2b' stroke-width='4' stroke-linecap='round'/%3E%3C/svg%3E") 50%/100% 100% no-repeat;width:104%;height:10px;position:absolute;bottom:-6px;left:-2%}.hero__lede{color:var(--ink-soft);max-width:52ch;font-size:1.08rem}.hero__actions{flex-wrap:wrap;gap:14px;margin-top:30px;display:flex}.hero__cta{background:var(--teal);color:var(--card);box-shadow:var(--shadow-soft);transition:background .25s, transform .25s var(--ease-spring), box-shadow .25s;border-radius:999px;align-items:center;gap:10px;padding:14px 26px;font-size:.98rem;font-weight:600;display:inline-flex}.hero__cta:hover{background:var(--teal-deep);box-shadow:var(--shadow);transform:translateY(-3px)}.hero__cta svg{transition:transform .25s var(--ease-spring)}.hero__cta:hover svg{transform:translate(4px)}.hero__cta--ghost{color:var(--ink);border:1.5px solid var(--line-strong);box-shadow:none;background:0 0}.hero__cta--ghost:hover{background:var(--card);border-color:var(--teal);color:var(--teal-deep)}.hero__readout{font-family:var(--font-mono);color:var(--ink-faint);flex-wrap:wrap;align-items:center;gap:10px;margin-top:38px;font-size:.78rem;display:flex}.hero__readout-item{border:1px dashed var(--line-strong);background:var(--card);border-radius:8px;padding:4px 10px}.hero__readout-item--ship{border-style:solid;border-color:var(--true-green);color:var(--true-green);font-weight:600;animation:3s ease-in-out infinite ship-glow}@keyframes ship-glow{0%,to{box-shadow:0 0 #2e8b6459}50%{box-shadow:0 0 0 7px #2e8b6400}}.hero__readout-arrow{color:var(--amber)}.hero__bench{animation:hero-in .9s .15s var(--ease-out) both}.circuit-core{width:100%;height:auto;display:block}.circuit-core .cc-check{stroke-dasharray:120;animation:cc-check-draw 2.6s var(--ease-out) infinite}@keyframes cc-check-draw{0%{stroke-dashoffset:120px;opacity:.3}55%{stroke-dashoffset:0;opacity:1}to{stroke-dashoffset:0;opacity:1}}.circuit-core .cc-led{animation:2.6s ease-in-out infinite cc-led-blink}@keyframes cc-led-blink{0%,78%,to{opacity:.3}84%,94%{opacity:1}}.circuit-core .cc-verified{opacity:0;animation:3.9s ease-out infinite cc-rise}.circuit-core .cc-verified-1{animation-delay:1.3s}.circuit-core .cc-verified-2{animation-delay:2.6s}@keyframes cc-rise{0%{opacity:0;transform:translateY(0)}12%{opacity:1}70%{opacity:1}to{opacity:0;transform:translateY(-78px)}}.circuit-core .cc-glyph{opacity:.5;animation:4.4s ease-in-out infinite alternate cc-bob}.circuit-core .cc-glyph-2{animation-delay:1s}.circuit-core .cc-glyph-3{animation-delay:2s}.circuit-core .cc-glyph-4{animation-delay:3s}@keyframes cc-bob{0%{opacity:.3;transform:translateY(0)}to{opacity:.65;transform:translateY(-9px)}}.prod-line{width:100%;height:auto;display:block}.prod-line .pl-flow-line{animation:1.2s linear infinite pl-dash}@keyframes pl-dash{to{stroke-dashoffset:-12px}}.prod-line .pl-bulb-glow{transform-origin:88px 200px;animation:2.6s ease-in-out infinite pl-glow}@keyframes pl-glow{0%,to{opacity:.1;transform:scale(.92)}50%{opacity:.22;transform:scale(1.06)}}.prod-line .pl-bulb-rays{animation:2.6s ease-in-out infinite pl-rays}@keyframes pl-rays{0%,to{opacity:.35}50%{opacity:1}}.prod-line .pl-filament-dot{animation:1.3s ease-in-out infinite pl-rays}.prod-line .pl-antenna-dot{animation:2s ease-in-out infinite pl-rays}.prod-line .pl-cursor{animation:1s steps(2,end) infinite pl-blink}@keyframes pl-blink{50%{opacity:0}}.prod-line .pl-gear{transform-origin:416px 264px;animation:3.4s linear infinite pl-spin}@keyframes pl-spin{to{transform:rotate(360deg)}}.prod-line .pl-scan{transform-origin:518px 228px;animation:6s linear infinite pl-spin}.prod-line .pl-magnifier{animation:2.8s ease-in-out infinite alternate pl-sweep}@keyframes pl-sweep{0%{transform:translate(-6px,-8px)}to{transform:translate(4px,4px)}}@media (width<=900px){.hero{padding-top:120px}.hero__inner{grid-template-columns:1fr;gap:24px}}.services{padding:90px 0}.services__grid{grid-template-columns:repeat(3,1fr);gap:22px;margin-top:48px;display:grid}.xp-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);transition:transform .35s var(--ease-spring), box-shadow .35s, border-color .35s, opacity .7s var(--ease-out);flex-direction:column;padding:28px 26px 24px;display:flex}.xp-card:hover{box-shadow:var(--shadow);border-color:var(--teal-mist);transform:translateY(-6px)rotate(-.4deg)}.xp-card__head{justify-content:space-between;align-items:flex-start;margin-bottom:18px;display:flex}.xp-card__icon{width:56px;height:56px;color:var(--ink);background:var(--paper-2);border-radius:14px;place-items:center;padding:9px;transition:background .35s;display:grid}.xp-card:hover .xp-card__icon{background:var(--teal-mist)}.xp-card__icon svg{width:100%;height:100%;overflow:visible}.xp-card__id{font-family:var(--font-mono);letter-spacing:.12em;color:var(--ink-faint);border:1px dashed var(--line-strong);border-radius:6px;padding:3px 8px;font-size:.7rem}.xp-card__title{margin-bottom:10px;font-size:1.28rem}.xp-card__desc{color:var(--ink-soft);flex:1;font-size:.94rem}.xp-card__status{font-family:var(--font-mono);letter-spacing:.08em;color:var(--true-green);align-items:center;gap:8px;margin-top:20px;font-size:.7rem;display:inline-flex}.xp-card__status-dot{background:var(--true-green);border-radius:50%;width:7px;height:7px;animation:2.4s ease-in-out infinite tag-pulse}.xp-bar{transition:height .5s var(--ease-spring), y .5s var(--ease-spring)}.xp-card:hover .xp-bar-1{y:26px;height:12px;transition-delay:0s}.xp-card:hover .xp-bar-2{y:21px;height:17px;transition-delay:80ms}.xp-card:hover .xp-bar-3{y:29px;height:9px;transition-delay:.16s}.xp-wire{stroke-dashoffset:0;transition:stroke-dashoffset .6s var(--ease-out)}.xp-card:hover .xp-wire{animation:wire-run 1.1s var(--ease-out)}@keyframes wire-run{0%{stroke-dashoffset:30px}to{stroke-dashoffset:0}}.xp-shield-check{stroke-dashoffset:0}.xp-card:hover .xp-shield-check{animation:wire-run .7s var(--ease-out)}.xp-scan{opacity:.5;transform-origin:28px 26px}.xp-card:hover .xp-scan{animation:2.4s linear infinite scan-spin}@keyframes scan-spin{to{transform:rotate(360deg)}}.xp-gear-big{transform-origin:23.5px 23px}.xp-gear-small{transform-origin:41px 41px}.xp-card:hover .xp-gear-big{animation:3.2s linear infinite gear-cw}.xp-card:hover .xp-gear-small{animation:2.1s linear infinite gear-ccw}@keyframes gear-cw{to{transform:rotate(360deg)}}@keyframes gear-ccw{to{transform:rotate(-360deg)}}.xp-orbit{transform-origin:28px 28px}.xp-card:hover .xp-orbit{animation:4s linear infinite gear-cw}.xp-mail{transition:transform .4s var(--ease-spring)}.xp-card:hover .xp-mail{transform:translate(3px,-3px)}.xp-prompt{transition:transform .4s var(--ease-spring)}.xp-card:hover .xp-prompt{transform:translate(3px)}.xp-prompt-cursor{animation:1.1s steps(2,end) infinite prompt-blink}@keyframes prompt-blink{50%{opacity:0}}.xp-pen{transition:transform .4s var(--ease-spring)}.xp-card:hover .xp-pen{transform:translate(-3px,3px)rotate(-6deg)}.xp-ink{stroke-dasharray:40;stroke-dashoffset:0}.xp-card:hover .xp-ink-1{animation:wire-run .7s var(--ease-out)}.xp-card:hover .xp-ink-2{animation:wire-run .7s .2s var(--ease-out) backwards}.xp-q-bubble{transform-origin:42px 16px}.xp-card:hover .xp-q-bubble{animation:1.6s ease-in-out infinite q-bob}@keyframes q-bob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.method{background:linear-gradient(#0000,#17635a0d 18% 82%,#0000);padding:90px 0}.method__rail{margin-top:56px;position:relative}.method__tube{width:92%;height:8px;position:absolute;top:23px;left:4%;overflow:visible}.method__steps{grid-template-columns:repeat(4,1fr);gap:26px;list-style:none;display:grid;position:relative}.method__num{background:var(--card);border:2px solid var(--teal);width:48px;height:48px;color:var(--teal);font-family:var(--font-mono);z-index:1;transition:transform .3s var(--ease-spring), background .3s, color .3s;border-radius:50%;place-items:center;margin-bottom:16px;font-size:.85rem;font-weight:600;display:inline-grid;position:relative}.method__step:hover .method__num{background:var(--teal);color:var(--card);transform:scale(1.12)}.method__step:last-child .method__num{border-color:var(--true-green);color:var(--true-green)}.method__step:last-child:hover .method__num{background:var(--true-green);color:var(--card)}.method__name{margin-bottom:8px;font-size:1.2rem}.method__desc{color:var(--ink-soft);font-size:.92rem}.about{padding:90px 0}.about__layout{grid-template-columns:minmax(0,5fr) minmax(0,6fr);align-items:start;gap:56px;display:grid}.about__shelf{width:min(360px,100%);color:var(--ink);margin-top:36px}.about__code-line{stroke-dasharray:50;animation:code-type 3.6s var(--ease-out) infinite}.about__code-1{animation-delay:.5s}.about__code-2{animation-delay:1s}@keyframes code-type{0%{stroke-dashoffset:50px}40%,to{stroke-dashoffset:0}}.about__chip-check{stroke-dasharray:30;animation:code-type 3.6s 1.4s var(--ease-out) infinite}.about__magnify{animation:5s ease-in-out infinite alternate magnify-scan}@keyframes magnify-scan{0%{transform:translate(0)}to{transform:translate(14px)}}.about__grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.about__card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);transition:transform .3s var(--ease-spring), box-shadow .3s;padding:26px 24px}.about__card:hover{box-shadow:var(--shadow-soft);transform:translateY(-4px)}.about__card h3{margin-bottom:8px;font-size:1.1rem}.about__card p{color:var(--ink-soft);font-size:.92rem}.contact{padding:60px 0 110px}.contact__card{background:var(--teal-deep);color:var(--paper);text-align:center;box-shadow:var(--shadow);border-radius:28px;padding:72px 48px;position:relative;overflow:hidden}.contact__card:before{content:"";background-image:linear-gradient(#f3efe70d 1px,#0000 1px),linear-gradient(90deg,#f3efe70d 1px,#0000 1px);background-size:36px 36px;position:absolute;inset:0}.contact__card .section-tag{color:var(--amber-soft);background:#f3efe714;border-color:#f3efe74d}.contact__title{margin:20px 0 14px;font-size:clamp(1.9rem,3.6vw,2.7rem);position:relative}.contact__title em{color:var(--amber-soft);font-style:italic}.contact__lede{color:#f3efe7d1;max-width:54ch;margin:0 auto;position:relative}.contact__line{background:var(--paper);max-width:860px;box-shadow:inset 0 0 0 1px var(--line), 0 14px 40px -18px #0006;border-radius:20px;margin:38px auto 0;padding:20px 24px 6px;position:relative}.contact__cta{background:var(--amber);color:var(--teal-deep);transition:transform .3s var(--ease-spring), background .3s;border-radius:999px;align-items:center;gap:12px;margin-top:34px;padding:16px 32px;font-size:1.06rem;font-weight:700;display:inline-flex;position:relative}.contact__cta:hover{background:var(--amber-soft);transform:translateY(-3px)scale(1.02)}.contact__cta svg{transition:transform .3s var(--ease-spring)}.contact__cta:hover svg{transform:translate(4px)}.contact__note{font-family:var(--font-mono);color:#f3efe78c;margin-top:22px;font-size:.78rem;position:relative}.req-form{text-align:left;background:#f3efe70f;border:1px solid #f3efe72e;border-radius:22px;flex-direction:column;gap:22px;max-width:720px;margin:40px auto 0;padding:30px 32px 34px;display:flex;position:relative}.req-form__head{border-bottom:1px dashed #f3efe738;justify-content:space-between;align-items:center;padding-bottom:14px;display:flex}.req-form__id{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--amber-soft);font-size:.72rem}.req-form__led{background:var(--true-green);border-radius:50%;width:9px;height:9px;animation:2.4s ease-in-out infinite tag-pulse}.req-form__row{grid-template-columns:1fr 1fr;gap:18px;display:grid}.req-form__field{flex-direction:column;gap:8px;display:flex}.req-form__label{font-family:var(--font-mono);letter-spacing:.16em;text-transform:uppercase;color:#f3efe799;font-size:.68rem}.req-form input,.req-form textarea{font-family:var(--font-body);color:var(--paper);resize:vertical;background:#0f4a438c;border:1px solid #f3efe733;border-radius:12px;outline:none;padding:12px 15px;font-size:.95rem;transition:border-color .25s,box-shadow .25s}.req-form input::placeholder,.req-form textarea::placeholder{color:#f3efe759}.req-form input:focus,.req-form textarea:focus{border-color:var(--amber-soft);box-shadow:0 0 0 3px #eec27e2e}.req-form__req{color:var(--amber-soft);font-size:.85rem}.req-form input.req-form__input--error,.req-form textarea.req-form__input--error{border-color:#e2695a;box-shadow:0 0 0 3px #e2695a2e}.req-form__error{font-family:var(--font-mono);letter-spacing:.04em;color:#f0a094;font-size:.72rem}.req-form__group{border:none;flex-direction:column;gap:10px;display:flex}.req-form__group legend{margin-bottom:10px;padding:0}.req-form__pills{flex-wrap:wrap;gap:9px;display:flex}.req-form__pill{font-family:var(--font-mono);color:#f3efe7cc;transition:border-color .2s, background .2s, color .2s, transform .2s var(--ease-spring);background:0 0;border:1px solid #f3efe747;border-radius:999px;padding:8px 16px;font-size:.78rem}.req-form__pill:hover{border-color:var(--amber-soft);transform:translateY(-2px)}.req-form__pill--on{background:var(--amber);border-color:var(--amber);color:var(--teal-deep);font-weight:600}.req-form__submit{border:none;align-self:center;margin-top:6px;font-size:1rem}.req-form .contact__note{text-align:center;margin-top:0}.req-form__mail{color:var(--amber-soft);text-underline-offset:3px;text-decoration:underline}@media (width<=620px){.req-form{padding:24px 18px 28px}.req-form__row{grid-template-columns:1fr}}.contact__doodle{color:#f3efe729;width:84px;position:absolute}.contact__doodle--left{animation:6s ease-in-out infinite alternate doodle-float;top:22%;left:6%}.contact__doodle--right{animation:7s ease-in-out 1s infinite alternate-reverse doodle-float;bottom:18%;right:7%}@keyframes doodle-float{0%{transform:translateY(0)rotate(-6deg)}to{transform:translateY(-16px)rotate(6deg)}}.footer{border-top:1px solid var(--line);background:var(--paper-2);padding:48px 0 28px}.footer__inner{flex-wrap:wrap;justify-content:space-between;gap:40px;display:flex}.footer__brand{max-width:420px}.footer__blurb{color:var(--ink-soft);margin-top:14px;font-size:.9rem}.footer__links{color:var(--ink-soft);flex-direction:column;gap:10px;font-size:.92rem;display:flex}.footer__links a:hover{color:var(--teal)}.footer__meta{border-top:1px solid var(--line);color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;gap:16px;margin-top:40px;padding-top:20px;font-size:.82rem;display:flex}@media (width<=980px){.services__grid{grid-template-columns:1fr 1fr}.method__steps{grid-template-columns:1fr 1fr;row-gap:40px}.method__tube{display:none}.about__layout{grid-template-columns:1fr;gap:36px}}@media (width<=620px){.services__grid,.method__steps,.about__grid{grid-template-columns:1fr}.contact__card{padding:56px 26px}.contact__doodle{display:none}}
