@import url(https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700;800&display=swap);@import url(https://fonts.googleapis.com/css2?family=Anybody:wdth,wght@50..150,300..900&family=Hanken+Grotesk:wght@400;500;600&family=Martian+Mono:wght@400;500&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}html{scroll-behavior:smooth}::-webkit-scrollbar{display:none}*{-ms-overflow-style:none;box-sizing:border-box;margin:0;padding:0;scrollbar-width:none}body{background-color:#fff;color:#333;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden;width:100%}.App,section{min-height:100vh;width:100%}section{align-items:center;display:flex;padding:80px 0}.section-header{margin-bottom:60px;text-align:center;width:100%}.section-title{color:#1a1a1a;font-size:3rem;font-weight:700;letter-spacing:-.02em;margin-bottom:16px}.section-subtitle{color:#666;font-size:1.25rem;font-weight:400}.btn{border:none;border-radius:8px;cursor:pointer;display:inline-block;font-size:1rem;font-weight:600;min-width:140px;padding:16px 32px;text-align:center;text-decoration:none;transition:all .3s ease}.btn-primary{background-color:#1a1a1a;color:#fff}.btn-primary:hover{background-color:#333;box-shadow:0 8px 25px #00000026;transform:translateY(-2px)}.btn-secondary{background-color:initial;border:2px solid #1a1a1a;color:#1a1a1a}.btn-secondary:hover{background-color:#1a1a1a;color:#fff;transform:translateY(-2px)}.about-container,.contact-container,.landing-container,.portfolio-container,.pricing-container,.why-choose-us-container{margin:0 auto;max-width:1400px;padding:0 32px;width:100%}@media (max-width:1200px){.about-container,.contact-container,.landing-container,.portfolio-container,.pricing-container,.why-choose-us-container{max-width:100%;padding:0 24px}}@media (max-width:768px){.section-title{font-size:2.5rem}.section-subtitle{font-size:1.1rem}section{padding:60px 0}.about-container,.contact-container,.landing-container,.portfolio-container,.pricing-container,.why-choose-us-container{padding:0 20px}}@media (max-width:480px){.section-title{font-size:2rem}.btn{font-size:.9rem;min-width:120px;padding:14px 24px}.about-container,.contact-container,.landing-container,.portfolio-container,.pricing-container,.why-choose-us-container{padding:0 16px}}.language-switcher{flex-shrink:0;position:relative}.language-switcher-trigger{align-items:center;background:linear-gradient(180deg,#fff,#f7f7f7);border:1px solid #0000001a;border-radius:999px;box-shadow:0 1px 2px #0000000a;color:#333;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.8125rem;font-weight:600;gap:6px;letter-spacing:.04em;padding:8px 10px 8px 12px;transition:border-color .2s ease,box-shadow .2s ease,color .2s ease,background .2s ease}.language-switcher-trigger:hover{border-color:#0000002e;box-shadow:0 2px 8px #0000000f;color:#1a1a1a}.language-switcher-trigger:focus-visible{box-shadow:0 0 0 2px #fff,0 0 0 4px #1a1a1a;outline:none}.language-switcher-trigger[aria-expanded=true]{background:#fff;border-color:#00000038;box-shadow:0 2px 10px #00000014}.language-switcher-globe{color:#555;flex-shrink:0}.language-switcher-code{min-width:1.75rem;text-align:center}.language-switcher-chevron{color:#888;flex-shrink:0;transition:transform .2s ease}.language-switcher-chevron.is-open{transform:rotate(180deg)}.language-switcher-popover{animation:language-popover-in .18s ease-out;background:#fff;border:1px solid #00000014;border-radius:12px;box-shadow:0 4px 6px -1px #0000000f,0 12px 24px -4px #0000001f;min-width:220px;padding:6px;position:absolute;right:0;top:calc(100% + 8px);z-index:1100}@keyframes language-popover-in{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){.language-switcher-popover{animation:none}.language-switcher-chevron{transition:none}}.language-switcher-list{list-style:none;margin:0;padding:0}.language-switcher-option{align-items:center;background:#0000;border:none;border-radius:8px;color:#333;cursor:pointer;display:flex;font-family:inherit;font-size:.9375rem;gap:10px;padding:10px 12px;text-align:left;transition:background .15s ease;width:100%}.language-switcher-option:hover{background:#0000000a}.language-switcher-option:focus-visible{background:#0000000f;outline:none}.language-switcher-option.is-active{background:#1a1a1a0f;color:#1a1a1a;font-weight:600}.language-switcher-option-code{color:#666;flex-shrink:0;font-size:.6875rem;font-weight:700;letter-spacing:.06em;text-align:center;width:28px}.language-switcher-option.is-active .language-switcher-option-code{color:#1a1a1a}.language-switcher-option-label{flex:1 1;min-width:0}.language-switcher-check,.language-switcher-check-placeholder{flex-shrink:0;height:16px;width:16px}.language-switcher-check{color:#1a1a1a}@media (max-width:480px){.language-switcher-trigger{font-size:.75rem;padding:7px 8px 7px 10px}.language-switcher-globe{height:16px;width:16px}.language-switcher-popover{min-width:min(260px,calc(100vw - 40px));right:0}}.hx{--void:#000;--ink:#f3f2ef;--mute:#8d8c95;--faint:#4b4a53;--line:#ffffff1a;--glass:#040406db;--f-display:"Anybody","Arial Narrow",sans-serif;--f-body:"Hanken Grotesk",system-ui,sans-serif;--f-mono:"Martian Mono",ui-monospace,monospace;--gutter:clamp(16px,3vw,40px);--beat:0.4839s;background:var(--void);color:var(--ink);font-family:var(--f-body);font-size:16px;line-height:1.55;min-height:100vh;overflow-x:clip;position:relative}body:has(.hx),html:has(.hx){background:#000}:where(.hx) section{align-items:normal;display:block;min-height:0;padding:0}.hx a{color:inherit;text-decoration:none}.hx :focus-visible{border-radius:2px;outline:2px solid #fff;outline-offset:4px}.hx ::selection{background:var(--ink);color:#000}.sr-only{clip:rect(0,0,0,0);border:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.hx-mono{font-family:var(--f-mono);font-size:11px;font-weight:400;letter-spacing:.08em;text-transform:uppercase}.hx-label{align-items:center;color:var(--mute);display:inline-flex;gap:12px;margin-bottom:22px}.hx-label:before{background:#fff6;content:"";height:1px;width:28px}.hx main,.hx-foot{position:relative;z-index:2}.hx-bifrost{inset:0;pointer-events:none;position:fixed;z-index:0}.hx-bifrost canvas{display:block;height:100%;width:100%}.hx-bifrost.is-fallback{background:radial-gradient(ellipse 4% 60% at 50% 30%,#ffffff80,#0000 70%),conic-gradient(from 180deg at 50% 44%,#0000 160deg,#ff2e6355 168deg,#ffe53b55 175deg,#1fd1ff55 185deg,#d83cff55 192deg,#0000 200deg),#000}.hx-head{grid-gap:24px;align-items:center;background:linear-gradient(180deg,#000000d9,#0000);display:grid;gap:24px;grid-template-columns:1fr auto 1fr;inset:0 0 auto 0;padding:18px var(--gutter);position:fixed;z-index:20}.hx-brand{align-items:center;display:inline-flex;gap:12px;justify-self:start}.hx-brand-mark{color:var(--ink);height:26px;width:auto}.hx-brand-word{font-family:var(--f-display);font-size:15px;font-variation-settings:"wdth" 140,"wght" 800;letter-spacing:.22em;text-transform:uppercase}.hx-nav{display:flex;gap:36px}.hx-nav a{color:var(--mute);font-family:var(--f-mono);font-size:11px;letter-spacing:.1em;padding:6px 0;position:relative;text-transform:uppercase;transition:color .2s ease}.hx-nav a:after{background:var(--ink);bottom:0;content:"";height:1px;left:0;position:absolute;right:0;transform:scaleX(0);transform-origin:left;transition:transform .35s cubic-bezier(.2,.8,.2,1)}.hx-nav a:hover{color:var(--ink)}.hx-nav a:hover:after{transform:scaleX(1)}.hx-head-end{align-items:center;display:flex;gap:22px;justify-self:end}.hx-bpm{align-items:center;color:var(--mute);display:inline-flex;gap:8px}.hx-bpm i{animation:hx-kick var(--beat) infinite;background:var(--ink);border-radius:50%;box-shadow:0 0 8px #fff9;height:6px;width:6px}@keyframes hx-kick{0%{opacity:1;transform:scale(1.6)}60%{opacity:.35;transform:scale(.8)}to{opacity:.35;transform:scale(.8)}}.hx .language-switcher-trigger{background:#ffffff0a;border-color:var(--line);box-shadow:none;color:var(--ink);font-family:var(--f-mono);font-size:11px;font-weight:500}.hx .language-switcher-trigger:hover,.hx .language-switcher-trigger[aria-expanded=true]{background:#ffffff14;border-color:#ffffff40;box-shadow:none;color:#fff}.hx .language-switcher-chevron,.hx .language-switcher-globe{color:var(--mute)}.hx .language-switcher-popover{background:#07070a;border-color:var(--line);box-shadow:0 20px 60px #000c}.hx .language-switcher-option{color:var(--ink)}.hx .language-switcher-option.is-active,.hx .language-switcher-option:focus-visible,.hx .language-switcher-option:hover{background:#ffffff12;color:#fff}.hx .language-switcher-option-code,.hx .language-switcher-option.is-active .language-switcher-option-code{color:var(--mute)}.hx .language-switcher-check{color:var(--ink)}.kt-line{display:block}.kt-w{white-space:nowrap}.kt-l,.kt-w{display:inline-block}.kt-l{animation:hx-letter-in 1.1s cubic-bezier(.16,1,.3,1) backwards;animation-delay:calc(var(--i)*26ms + .15s);font-variation-settings:"wdth" 62,"wght" 800;font-variation-settings:"wdth" var(--kw,62),"wght" var(--kg,800);transition:font-variation-settings .45s cubic-bezier(.2,.8,.2,1)}@keyframes hx-letter-in{0%{font-variation-settings:"wdth" 150,"wght" 300;opacity:0;transform:translateY(.35em) scaleY(1.4)}}.hx-hero{height:100vh;height:100svh;min-height:640px;position:relative}.hx-hero-copy{background:linear-gradient(0deg,#000,#000c 45%,#0000);bottom:0;left:0;padding:18vh var(--gutter) clamp(28px,5vh,56px);position:absolute;right:0;z-index:2}.hx-eyebrow{color:var(--ink);margin-bottom:18px;opacity:.8}.hx-h1{font-family:var(--f-display);font-size:clamp(46px,9.4vw,172px);font-weight:800;letter-spacing:-.01em;line-height:.84;margin:0;text-transform:uppercase}.hx-hero-foot{align-items:flex-end;display:flex;gap:32px;justify-content:space-between;margin-top:clamp(22px,3.5vh,40px)}.hx-lead{color:#b9b8c0;font-size:clamp(15px,1.15vw,18px);margin:0;max-width:470px}.hx-load{animation:hx-fade-up 1s cubic-bezier(.16,1,.3,1) backwards;animation-delay:.3s;animation-delay:calc(var(--d, 0)*.12s + .3s)}@keyframes hx-fade-up{0%{opacity:0;transform:translateY(18px)}}.hx-cta{align-items:center;background:#000;border:1px solid #ffffff73;border-radius:2px;color:var(--ink);display:inline-flex;font-family:var(--f-body);font-size:15px;font-weight:600;gap:14px;height:58px;isolation:isolate;overflow:hidden;padding:0 26px;position:relative;transition:color .25s ease;white-space:nowrap}.hx-cta:before{background:var(--ink);content:"";inset:0;position:absolute;transform:translateY(101%);transition:transform .4s cubic-bezier(.2,.8,.2,1);z-index:-1}.hx-cta:hover{color:#000}.hx-cta:hover:before{transform:translateY(0)}.hx-cta svg{transition:transform .3s ease}.hx-cta:hover svg{transform:translate(3px,-3px)}.hx-scroll{align-items:center;color:var(--mute);display:flex;gap:14px;position:absolute;right:var(--gutter);top:50%;writing-mode:vertical-rl;z-index:2}.hx-scroll i{background:var(--line);height:72px;overflow:hidden;position:relative;width:1px}.hx-scroll i:after{animation:hx-drip 1.9s cubic-bezier(.6,0,.2,1) infinite;background:#fff;content:"";height:40%;left:0;position:absolute;top:-40%;width:1px}@keyframes hx-drip{to{top:100%}}.hx-ticker{background:#000;display:grid;height:clamp(110px,14vw,170px);overflow:hidden;place-items:center;position:relative}.hx-band{font-family:var(--f-display);font-size:clamp(22px,2.8vw,44px);font-variation-settings:"wdth" 125,"wght" 900;left:-5%;line-height:1;overflow:hidden;padding:.45em 0;position:absolute;text-transform:uppercase;white-space:nowrap;width:110%}.hx-band-a{background:#000;border-block:1px solid var(--line);color:var(--faint);transform:rotate(-2deg)}.hx-band-track{animation:hx-marquee 38s linear infinite;display:flex;width:-webkit-max-content;width:max-content}.hx-band-track>span{align-items:center;display:inline-flex}.hx-band-sep{height:.72em;margin:0 .55em;width:auto}@keyframes hx-marquee{to{transform:translateX(-50%)}}.hx-mf{height:260vh;position:relative}.hx-mf-sticky{display:flex;flex-direction:column;height:100vh;justify-content:center;margin:0 auto;max-width:1240px;padding:0 var(--gutter);position:-webkit-sticky;position:sticky;top:0}.hx-mf-text{font-family:var(--f-display);font-size:clamp(28px,4.3vw,70px);font-variation-settings:"wdth" 92,"wght" 620;letter-spacing:-.015em;line-height:1.06;margin:0}.hx-mf-w{display:inline-block;opacity:.12}.hx-h2{font-family:var(--f-display);font-size:clamp(36px,5.6vw,96px);font-variation-settings:"wdth" 112,"wght" 820;letter-spacing:-.01em;line-height:.9;margin:0;max-width:14ch;text-transform:uppercase}.hx-wrap{margin:0 auto;max-width:1360px;padding:0 var(--gutter)}.hx-sec-head{margin-bottom:clamp(40px,7vh,80px)}.hx-sec-lead{color:#a9a8b1;font-size:clamp(15px,1.2vw,18px);margin:22px 0 0;max-width:52ch}[data-reveal]{opacity:0;transform:translateY(40px);transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .9s cubic-bezier(.16,1,.3,1)}[data-reveal].is-in{opacity:1;transform:none}.hx-mem{padding:22vh 0 18vh}.hx-cards{grid-gap:18px;display:grid;gap:18px;grid-template-columns:repeat(3,1fr);perspective:1200px}.hx-card{--tx:0.5;--ty:0.5;--rx:0deg;--ry:0deg;background:var(--glass);border:1px solid var(--line);border-radius:4px;min-height:400px;overflow:hidden;position:relative;transform-style:preserve-3d}.hx-card.is-in{transform:rotateX(var(--rx)) rotateY(var(--ry));transition:opacity .9s cubic-bezier(.16,1,.3,1),transform .5s cubic-bezier(.2,.8,.2,1)}.hx-card:nth-child(2){transition-delay:.08s}.hx-card:nth-child(3){transition-delay:.16s}.hx-card:before{background:radial-gradient(420px circle at calc(var(--tx)*100%) calc(var(--ty)*100%),#ffffff1c,#0000 45%);transition:opacity .3s ease}.hx-card:after,.hx-card:before{content:"";inset:0;opacity:0;pointer-events:none;position:absolute}.hx-card:after{background:#ffffff59;border-radius:inherit;-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;padding:1px;transition:opacity .35s ease}.hx-card:hover:after,.hx-card:hover:before{opacity:1}.hx-card-in{display:flex;flex-direction:column;height:100%;min-height:400px;padding:30px;position:relative;transform:translateZ(36px)}.hx-card-tag{color:var(--mute);margin:0}.hx-card-title{font-family:var(--f-display);font-size:clamp(28px,2.5vw,40px);font-variation-settings:"wdth" 118,"wght" 800;line-height:.95;margin:auto 0 14px;text-transform:uppercase}.hx-card-text{color:#a9a8b1;font-size:16px;margin:0;max-width:36ch}.hx-cross{padding:14vh 0 22vh}.hx-steps-wrap{position:relative}.hx-steps-rail{background:var(--line);height:1px;left:22px;position:absolute;right:0;top:22px}.hx-steps-rail span{background:var(--ink);box-shadow:0 0 12px #ffffff59;inset:-1px 0;position:absolute;transform:scaleX(clamp(0,-.78,1));transform:scaleX(clamp(0,calc((var(--p, 0) - .3)*2.6),1));transform-origin:left}.hx-steps{grid-gap:28px;display:grid;gap:28px;grid-template-columns:repeat(4,1fr);list-style:none;margin:0;padding:0}.hx-step{transition-delay:calc(var(--k)*.1s)}.hx-step-node{background:#000;border:1px solid #ffffff59;border-radius:50%;color:var(--ink);display:grid;font-size:12px;height:44px;margin-bottom:28px;place-items:center;position:relative;width:44px}.hx-step h3{font-family:var(--f-display);font-size:clamp(22px,1.9vw,30px);font-variation-settings:"wdth" 112,"wght" 760;line-height:1;margin:0 0 10px;text-transform:uppercase}.hx-step p{color:#a9a8b1;margin:0;max-width:30ch}.hx-gate{display:grid;min-height:100vh;padding:16vh var(--gutter) 10vh;place-items:center;position:relative;text-align:center}.hx-gate-in{align-items:center;background:radial-gradient(ellipse 60% 55% at 50% 62%,#000000b3,#0000 100%);display:flex;flex-direction:column;padding:6vh 4vw}.hx-gate-title{font-family:var(--f-display);font-size:clamp(18px,1.6vw,24px);font-variation-settings:"wdth" 140,"wght" 800;letter-spacing:.3em;margin:0 0 4vh}.hx-gate-title,.hx-mail{text-transform:uppercase}.hx-mail{color:#fff;display:block;font-family:var(--f-display);font-size:clamp(40px,10.5vw,196px);line-height:.86;margin-bottom:5vh}.hx-mail:hover .kt-l{color:var(--mute)}.hx-gate-lead{color:#c4c3cb;font-size:clamp(15px,1.2vw,18px);margin:0 0 36px;max-width:46ch}.hx-gate-actions{display:flex;flex-wrap:wrap;gap:14px;justify-content:center}.hx-ghost{align-items:center;background:#0000008c;border:1px solid #ffffff38;border-radius:2px;color:var(--ink);cursor:pointer;display:inline-flex;font-family:var(--f-mono);font-size:11px;gap:10px;height:58px;letter-spacing:.08em;padding:0 22px;text-transform:uppercase;transition:border-color .2s ease,background .2s ease}.hx-ghost:hover{background:#000c;border-color:#fff}.hx-foot{background:#000;border-top:1px solid var(--line);color:var(--faint);display:flex;gap:16px;justify-content:space-between;padding:22px var(--gutter)}.hx-foot a{transition:color .2s ease}.hx-foot a:hover{color:var(--ink)}@media (max-width:980px){.hx-nav{display:none}.hx-head{grid-template-columns:1fr auto}.hx-cards{grid-template-columns:1fr}.hx-card,.hx-card-in{min-height:300px}.hx-steps{gap:40px;grid-template-columns:1fr}.hx-steps-rail{bottom:22px;height:auto;left:22px;right:auto;top:22px;width:1px}.hx-steps-rail span{inset:0 -1px;transform:scaleY(clamp(0,-.4,1));transform:scaleY(clamp(0,calc((var(--p, 0) - .2)*2),1));transform-origin:top}.hx-step{padding-left:72px;position:relative}.hx-step-node{left:0;position:absolute;top:0}}@media (max-width:720px){.hx-bpm,.hx-scroll{display:none}.hx-hero-foot{align-items:flex-start;flex-direction:column;gap:22px}.hx-h1{font-size:clamp(40px,12.5vw,80px)}.hx-mf{height:220vh}.hx-mail{font-size:clamp(30px,11vw,80px)}.hx-foot{flex-direction:column}}@media (prefers-reduced-motion:reduce){.hx *,.hx :after,.hx :before{animation:none!important;transition:none!important}.hx [data-reveal],.hx-mf-w{opacity:1;transform:none}.hx-mf-w{text-shadow:none}}.portal-page section{align-items:normal;display:block;min-height:0;min-height:auto;padding:0;width:auto}.portal-page .btn{align-items:center;border-radius:8px;display:inline-flex;font-size:.9rem;gap:6px;justify-content:center;min-width:0;min-width:auto;padding:10px 20px}.portal-page .btn:hover{transform:none}.portal-page .btn-primary:hover{box-shadow:none}.portal-btn-block{padding:14px 20px;width:100%}.portal-btn-sm{font-size:.82rem;padding:8px 14px}.portal-btn-ghost{font-size:.88rem;padding:8px 16px}.portal-page{background:#f8f9fa;display:flex;flex-direction:column;min-height:100vh}.portal-topbar{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#fffffff2;border-bottom:1px solid #00000014;gap:16px;height:72px;justify-content:space-between;padding:0 32px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.portal-brand,.portal-topbar{align-items:center;display:flex}.portal-brand{color:#1a1a1a;gap:10px;text-decoration:none}.portal-brand-logo{height:36px;width:auto}.portal-brand-text{font-size:1.15rem;font-weight:800;letter-spacing:-.02em}.portal-topbar-actions{align-items:center;display:flex;gap:8px}.portal-main{flex:1 1;margin:0 auto;max-width:1080px;padding:40px 32px 56px;width:100%}.portal-main-narrow{align-items:flex-start;display:flex;justify-content:center;max-width:440px;padding-top:48px}.portal-foot{background:#fff;border-top:1px solid #0000000f;color:#888;font-size:.88rem;padding:20px 32px 28px;text-align:center}.portal-foot a{color:#1a1a1a;font-weight:600;margin-left:6px;text-decoration:none}.portal-foot a:hover{text-decoration:underline}.portal-kicker{color:#888;font-size:.75rem;font-weight:700;letter-spacing:.1em;margin:0 0 6px;text-transform:uppercase}.portal-h1{font-size:clamp(1.6rem,3vw,2.1rem);letter-spacing:-.03em;margin:0 0 8px}.portal-h1,.portal-h2{color:#1a1a1a;font-weight:700}.portal-h2{font-size:1rem;letter-spacing:-.01em;margin:0 0 14px}.portal-auth-lead,.portal-page-desc{color:#666;font-size:1rem;line-height:1.55;margin:0}.portal-muted{color:#888;font-size:.9rem;margin:0}.portal-auth-card{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 4px 20px #0000000f;padding:36px 32px;width:100%}.portal-auth-back{color:#666;display:inline-block;font-size:.88rem;margin-top:20px;text-decoration:none}.portal-auth-back:hover{color:#1a1a1a}.portal-page-head{margin-bottom:28px}.portal-page-head-row{align-items:flex-end;display:flex;flex-wrap:wrap;gap:20px;justify-content:space-between}.portal-form{gap:18px;margin-top:24px}.portal-field,.portal-form{display:flex;flex-direction:column}.portal-field{gap:6px}.portal-field-label{color:#444;font-size:.8rem;font-weight:600}.portal-field-input{background:#fff;border:1px solid #ddd;border-radius:8px;color:#1a1a1a;font-family:inherit;font-size:.95rem;padding:11px 13px;transition:border-color .15s;width:100%}.portal-field-input:focus{border-color:#1a1a1a;box-shadow:0 0 0 3px #1a1a1a14;outline:none}.portal-field-textarea{line-height:1.5;min-height:80px;resize:vertical}.portal-field-mono{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.85rem}.portal-form-grid{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.portal-field-span2{grid-column:span 2}.portal-field-full{grid-column:1/-1}.portal-price-row{grid-gap:8px;display:grid;gap:8px;grid-template-columns:1fr minmax(110px,140px)}.portal-currency-select{min-width:0}.portal-next-payment{background:#f0fdf4;border:1px solid #bbf7d0;border-radius:8px;padding:10px 14px}.portal-next-payment-value{color:#027a48;font-size:.95rem;font-weight:600}.portal-file-zone{align-items:center;background:#f8f9fa;border:1px dashed #ccc;border-radius:8px;display:flex;flex-wrap:wrap;font-size:.85rem;gap:10px;padding:12px 14px}.portal-file-zone input[type=file]{font-size:.85rem;max-width:100%}.portal-alert{border-radius:8px;font-size:.9rem;margin-bottom:16px;padding:12px 14px}.portal-alert-error{background:#fef3f2;border:1px solid #fecdca;color:#b42318}.portal-state-card{align-items:center;background:#fff;border:1px solid #00000014;border-radius:16px;color:#666;display:flex;flex-direction:column;gap:14px;padding:48px 24px;text-align:center}.portal-spinner{animation:portal-spin .65s linear infinite;border:3px solid #eee;border-radius:50%;border-top-color:#1a1a1a;height:32px;width:32px}@keyframes portal-spin{to{transform:rotate(1turn)}}.portal-ok{color:#027a48;font-size:.85rem}.portal-err-text{color:#b42318;font-size:.85rem}.portal-badge{background:#eee;border-radius:100px;color:#666;display:inline-block;font-size:.7rem;font-weight:700;letter-spacing:.04em;padding:3px 10px;text-transform:uppercase;white-space:nowrap}.portal-badge-live{background:#027a481a;color:#027a48}.portal-block{margin-bottom:36px}.portal-svc-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.portal-svc-card{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 2px 12px #0000000a;display:flex;flex-direction:column;gap:14px;padding:24px}.portal-svc-card-done{opacity:.92}.portal-svc-card-head{align-items:flex-start;display:flex;gap:10px;justify-content:space-between}.portal-svc-name{color:#1a1a1a;font-size:1.1rem;font-weight:700;letter-spacing:-.02em;margin:0}.portal-svc-desc{color:#666;font-size:.92rem;line-height:1.6;margin:0}.portal-svc-facts{background:#f8f9fa;border-radius:10px;display:flex;flex-direction:column;gap:10px;list-style:none;margin:0;padding:14px}.portal-svc-facts li{display:flex;flex-direction:column;gap:2px}.portal-svc-facts strong{color:#1a1a1a;font-size:.95rem}.portal-svc-facts span{color:#999;font-size:.75rem;font-weight:600;letter-spacing:.05em;text-transform:uppercase}.portal-svc-foot{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:4px}.portal-svc-link{align-items:center;background:#fff;border:1px solid #ddd;border-radius:8px;color:#1a1a1a;cursor:pointer;display:inline-flex;font-family:inherit;font-size:.85rem;font-weight:600;gap:6px;padding:8px 14px;text-decoration:none;transition:background .15s}.portal-svc-link:hover{background:#f8f9fa}.portal-svc-link:disabled{cursor:not-allowed;opacity:.5}.portal-new-client{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end}.portal-new-client-name{max-width:220px;min-width:180px}.portal-token-pop{align-items:center;background:#fff;border:1px solid #ddd;border-radius:8px;display:flex;gap:8px;max-width:320px;padding:8px 12px}.portal-token-pop code{color:#333;font-family:ui-monospace,Menlo,monospace;font-size:.72rem;word-break:break-all}.portal-settings-panel{background:#fff;border:1px solid #00000014;border-radius:12px;margin-bottom:20px;padding:20px 22px}.portal-settings-head{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.portal-settings-form{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.portal-settings-actions{align-items:center;display:flex;gap:12px;grid-column:1/-1}.portal-clients{display:flex;flex-direction:column;gap:20px}.portal-client{background:#fff;border:1px solid #00000014;border-radius:16px;box-shadow:0 2px 12px #0000000a;overflow:hidden}.portal-client-bar{align-items:flex-end;background:#1a1a1a;color:#fff;display:flex;flex-wrap:wrap;gap:12px 20px;justify-content:space-between;padding:16px 20px}.portal-client-identity{flex:0 1 200px;min-width:160px}.portal-client-name-input{background:#0000;border:none;border-bottom:1px solid #ffffff40;color:#fff;display:block;font-family:inherit;font-size:1rem;font-weight:600;padding:2px 0 4px;width:100%}.portal-client-name-input::placeholder{color:#ffffff59}.portal-client-name-input:focus{border-bottom-color:#ffffffd9;outline:none}.portal-client-identity .portal-field-label{color:#ffffff8c;display:block;margin-bottom:4px}.portal-client-token{flex:1 1;min-width:120px}.portal-client-token .portal-field-label{color:#ffffff8c;display:block;margin-bottom:4px}.portal-client-token code{color:#fff;font-family:ui-monospace,Menlo,monospace;font-size:.78rem;word-break:break-all}.portal-client-btns{display:flex;gap:4px}.portal-client-body{padding:20px 22px 24px}.portal-client-services-top{align-items:center;display:flex;justify-content:space-between;margin-bottom:14px}.portal-icon-btn{align-items:center;background:#ffffff1a;border:1px solid #fff3;border-radius:8px;color:#fff;cursor:pointer;display:inline-flex;height:34px;justify-content:center;padding:0;transition:background .15s;width:34px}.portal-client-body .portal-icon-btn{background:#fff;border-color:#ddd;color:#444}.portal-icon-btn:hover{background:#fff3}.portal-client-body .portal-icon-btn:hover{background:#f8f9fa}.portal-icon-danger:hover{background:#fef3f2;border-color:#fecdca;color:#b42318}.portal-admin-svc-list{display:flex;flex-direction:column;gap:10px}.portal-admin-svc{background:#fafafa;border:1px solid #eee;border-radius:12px;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;padding:16px}.portal-admin-svc-main{flex:1 1;min-width:200px}.portal-admin-svc-title-row{align-items:flex-start;display:flex;gap:10px;justify-content:space-between;margin-bottom:6px}.portal-admin-svc-title-row h3{color:#1a1a1a;font-size:1rem;font-weight:600;margin:0}.portal-admin-svc-meta{color:#666;display:flex;flex-wrap:wrap;font-size:.82rem;gap:8px 16px;margin-top:8px}.portal-admin-svc-meta a{color:#1a1a1a}.portal-admin-svc-btns{align-self:flex-start;display:flex;gap:4px}.portal-svc-editor{background:#fff;border:1px solid #ddd;border-radius:12px;margin-bottom:14px;padding:18px}.portal-editor-actions{display:flex;gap:8px;margin-top:16px}.portal-admin-tabs{border-bottom:1px solid #e8e8e8;display:flex;gap:4px;margin-bottom:24px}.portal-admin-tab{background:none;border:none;border-bottom:2px solid #0000;color:#666;cursor:pointer;font-size:.9rem;font-weight:500;margin-bottom:-1px;padding:10px 16px;transition:color .15s,border-color .15s}.portal-admin-tab:hover{color:#1a1a1a}.portal-admin-tab-active{border-bottom-color:#1a1a1a;color:#1a1a1a}.portal-expense-summary{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:20px}.portal-expense-summary-card{background:#f7f7f7;border:1px solid #e8e8e8;border-radius:8px;display:flex;flex-direction:column;gap:2px;padding:14px 18px}.portal-expense-summary-value{color:#1a1a1a;font-size:1.15rem;font-weight:600}.portal-expense-summary-label{color:#777;font-size:.78rem}.portal-expense-list{display:flex;flex-direction:column;gap:12px}.portal-expense-row{align-items:flex-start;background:#fff;border:1px solid #e8e8e8;border-radius:10px;display:flex;gap:16px;padding:16px 18px}.portal-expense-row-inactive{opacity:.65}.portal-expense-row-main{flex:1 1;min-width:0}.portal-expense-row-head{align-items:center;display:flex;flex-wrap:wrap;gap:8px}.portal-expense-row-head h3{font-size:1rem;font-weight:600;margin:0}.portal-expense-vendor{color:#666;font-size:.85rem;margin:4px 0 0}.portal-expense-notes{color:#888;font-size:.82rem;font-style:italic;margin:8px 0 0}.portal-expense-editor{margin-bottom:12px}.portal-expense-toolbar{display:flex;justify-content:flex-end;margin-bottom:16px}@media (max-width:768px){.portal-topbar{height:64px;padding:0 16px}.portal-brand-text{display:none}.portal-main{padding:24px 16px 40px}.portal-auth-card{padding:28px 22px}.portal-form-grid,.portal-settings-form{grid-template-columns:1fr}.portal-field-full,.portal-field-span2{grid-column:auto}.portal-price-row,.portal-svc-grid{grid-template-columns:1fr}.portal-page-head-row{align-items:stretch;flex-direction:column}.portal-new-client{align-items:stretch}.portal-admin-svc,.portal-expense-row{flex-direction:column}}
/*# sourceMappingURL=main.f3a2f325.css.map*/