.manifesto::before { content: "PC"; }
.contact-direct > span { color: #fff; font: 500 17px "Space Grotesk", sans-serif; }
.contact-direct div span { color: #98a2b3; font-size: 11px; }
.service-grid { grid-template-columns: repeat(2, 1fr); }
.web-symbol span { color: #b8ff3d; font: 700 42px "Space Grotesk", sans-serif; text-shadow: 0 0 28px rgba(184,255,61,.35); }
.process-important { background: #b8ff3d; color: #081004; padding: 25px; margin-top: -25px; }
.process-important > span, .process-important h3, .process-important p { color: #081004; }
.process-important .line { background: rgba(8,16,4,.28); }
.process-important .line::before { border-color: #081004; background: #b8ff3d; }
.contact-form .btn:disabled { background: #394331; color: #aeb7a7 !important; cursor: not-allowed; transform: none; }
.form-note.success { color: #b8ff3d; font-weight: 700; }
.form-note.error { color: #ff8070; font-weight: 700; }
@media (max-width: 900px) { .service-grid { grid-template-columns: 1fr; } .process-important { margin-top: 0; } }

.brand-logo { width: 42px; height: 42px; overflow: visible; }
.brand-logo path { fill: none; stroke-linecap: square; stroke-linejoin: bevel; }
.logo-frame { stroke: #f2f5f7; stroke-width: 4; }
.logo-accent { stroke: #b8ff3d; stroke-width: 4; }
.logo-slash { stroke: #55e6ff; stroke-width: 3; }

.ticker { padding: 18px 0; }
.ticker .ticker-inner { display: flex; width: max-content; animation: seamless-ticker 28s linear infinite; will-change: transform; }
.ticker .ticker-inner span { display: block; flex-shrink: 0; padding-right: 26px; }
.ticker:hover .ticker-inner { animation-play-state: paused; }
@keyframes seamless-ticker { to { transform: translateX(-50%); } }

.page-loading { overflow: hidden; }
.boot-sequence { position: fixed; inset: 0; z-index: 1000; display: grid; place-content: center; justify-items: center; gap: 22px; background: #080b10; transition: opacity .55s ease, visibility .55s ease; }
.boot-sequence::before, .boot-sequence::after { content: ""; position: absolute; left: 0; width: 100%; height: 1px; background: linear-gradient(90deg, transparent, #b8ff3d, transparent); animation: scan 1.25s ease-in-out both; }
.boot-sequence::before { top: 0; }
.boot-sequence::after { bottom: 0; animation-direction: reverse; }
.boot-sequence.done { opacity: 0; visibility: hidden; }
.boot-mark { display: flex; align-items: center; gap: 10px; font: 700 56px "Space Grotesk", sans-serif; letter-spacing: -.08em; transform: scale(.82); opacity: 0; animation: boot-in .65s .15s cubic-bezier(.2,.9,.2,1.2) forwards; }
.boot-mark span { color: #b8ff3d; font-size: 38px; letter-spacing: -.16em; }
.boot-mark span:last-child { color: #55e6ff; }
.boot-copy { color: #8d98a7; font: 700 8px "Manrope", sans-serif; letter-spacing: .38em; opacity: 0; animation: boot-copy .4s .6s forwards; }
.boot-line { width: 220px; height: 2px; background: #202833; overflow: hidden; }
.boot-line i { display: block; width: 100%; height: 100%; background: linear-gradient(90deg, #b8ff3d, #55e6ff); transform: translateX(-100%); animation: boot-progress 1.1s .25s cubic-bezier(.4,0,.2,1) forwards; }
.hero-copy > * { transition: opacity .6s ease, transform .6s ease; }
.page-loading .hero-copy > * { opacity: 0; transform: translateY(18px); }
@keyframes boot-in { to { opacity: 1; transform: scale(1); } }
@keyframes boot-copy { to { opacity: 1; } }
@keyframes boot-progress { to { transform: translateX(0); } }
@keyframes scan { 0% { transform: translateY(0); opacity: 0; } 30% { opacity: .8; } 100% { transform: translateY(100vh); opacity: 0; } }
@media (prefers-reduced-motion: reduce) { .boot-sequence { display: none; } .page-loading { overflow: auto; } .ticker .ticker-inner { animation: none; } }
