:root{--font-primary:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-heading:"Raleway", "Inter", sans-serif;--font-mono:"JetBrains Mono", monospace;--color-dark-bg:#020514;--color-black:#01030a;--color-card-bg:#060c22a6;--color-card-border:#00f0ff29;--color-card-border-hover:#00f0ff80;--color-primary:#f527b5;--color-secondary:#00f0ff;--color-accent-blue:#293083;--color-accent-sky:#38bdf8;--color-body:#c0c6d8;--color-white:#fff;--color-light-gray:#f6f6f6;--max-width:1320px;--transition-smooth:all .3s cubic-bezier(.25, .8, .25, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;font-family:var(--font-primary);background-color:var(--color-dark-bg);color:var(--color-body)}body{background-color:#0000;flex-direction:column;min-height:100vh;line-height:1.7;display:flex;overflow-x:hidden}#main-content{z-index:2;flex:1;position:relative}a{color:inherit;transition:var(--transition-smooth);text-decoration:none}img{max-width:100%;height:auto;display:block}.container{width:100%;max-width:var(--max-width);margin:0 auto;padding:0 20px}h1,h2,h3,h4,h5,h6{font-family:var(--font-heading);color:var(--color-white);font-weight:700;line-height:1.3}.section-title{text-align:center;margin-bottom:60px}.section-title h3{letter-spacing:-.5px;font-size:2.2rem;display:inline-block;position:relative}.section-title .focus-text{color:var(--color-white)}.site-header{z-index:1000;width:100%;padding:24px 0;transition:background-color .3s,padding .3s,box-shadow .3s,border-color .3s;position:fixed;top:0;left:0}.site-header.scrolled{-webkit-backdrop-filter:blur(16px);background-color:#020514e0;border-bottom:1px solid #00f0ff24;padding:14px 0;box-shadow:0 10px 30px #0009,0 0 20px #00f0ff14}.header-inner{justify-content:center;align-items:center;width:100%;display:flex;position:relative}.header-logo{align-items:center;transition:opacity .35s,transform .35s;display:flex;position:absolute;top:50%;left:20px;transform:translateY(-50%)}.header-logo img{width:auto;height:38px}.home-page .site-header:not(.scrolled) .header-logo{opacity:0;pointer-events:none;transform:translateY(-50%)translate(-10px)}.home-page .site-header.scrolled .header-logo{opacity:1;pointer-events:auto;transform:translateY(-50%)translate(0)}.header-nav{justify-content:center;align-items:center;display:flex}.nav-links{align-items:center;gap:36px;list-style:none;display:flex}.nav-links li{align-items:center;display:flex}.nav-links a{font-family:var(--font-heading);color:var(--color-white);align-items:center;padding:6px 0;font-size:1.05rem;font-weight:500;line-height:1;display:inline-flex;position:relative}.nav-links a:after{content:"";background-color:var(--color-primary);width:0%;height:2px;transition:width .25s;position:absolute;bottom:0;left:0}.nav-links a:hover:after,.nav-links a.active:after{width:100%}.nav-links a.nav-lab-link{color:#00f0ff;background:#00f0ff14;border:1px solid #00f0ff59;border-radius:999px;align-items:center;gap:7px;padding:6px 14px;font-size:.95rem;line-height:1;transition:all .25s;display:inline-flex}.nav-links a.nav-lab-link:after{display:none!important}.nav-links a.nav-lab-link:hover{background:#00f0ff33;border-color:#00f0ff;transform:translateY(-1px);box-shadow:0 0 16px #00f0ff59}.nav-lab-link .lab-dot{background:#00f0ff;border-radius:50%;flex-shrink:0;width:6px;height:6px;animation:2s ease-in-out infinite labDotPulse;display:inline-block;box-shadow:0 0 6px #00f0ff}@keyframes labDotPulse{0%,to{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.3)}}.mobile-menu-toggle{cursor:pointer;z-index:1010;background:#02051499;border:1px solid #00f0ff40;border-radius:8px;justify-content:center;align-items:center;margin-left:auto;padding:8px 10px;transition:all .25s;display:none}.mobile-menu-toggle:hover{background:#00f0ff1f;border-color:#00f0ff;box-shadow:0 0 12px #00f0ff4d}.hamburger-box{flex-direction:column;justify-content:space-between;width:22px;height:16px;display:flex;position:relative}.hamburger-line{background-color:var(--color-white);border-radius:2px;width:100%;height:2px;transition:transform .28s,opacity .28s,background-color .28s;display:block}.site-header.mobile-open .hamburger-line:first-child{background-color:#00f0ff;transform:translateY(7px)rotate(45deg)}.site-header.mobile-open .hamburger-line:nth-child(2){opacity:0;transform:scaleX(0)}.site-header.mobile-open .hamburger-line:nth-child(3){background-color:#00f0ff;transform:translateY(-7px)rotate(-45deg)}.mobile-nav-backdrop{-webkit-backdrop-filter:blur(8px);z-index:998;opacity:0;pointer-events:none;background:#01030ab3;transition:opacity .3s;position:fixed;inset:0}.mobile-nav-backdrop.active{opacity:1;pointer-events:auto}body.nav-locked{overflow:hidden}.site-header.menu-collapsed .mobile-menu-toggle{display:inline-flex}.site-header:not(.menu-collapsed) .header-nav{justify-content:center;align-items:center;transition:transform .35s cubic-bezier(.25,1,.5,1);display:flex}.site-header.menu-collapsed .header-nav{-webkit-backdrop-filter:blur(20px);z-index:1005;background:#03081cf5;border-left:1px solid #00f0ff33;flex-direction:column;justify-content:flex-start;align-items:flex-start;width:280px;max-width:82vw;height:100dvh;padding:85px 28px 40px;transition:transform .32s cubic-bezier(.16,1,.3,1);display:none;position:fixed;top:0;right:0;transform:translate(100%);box-shadow:-15px 0 35px #000c,0 0 25px #29308340;margin:0!important}.site-header.menu-collapsed.mobile-open .header-nav{display:flex;transform:translate(0)}.site-header.menu-collapsed .nav-links{flex-direction:column;align-items:flex-start;gap:22px;width:100%}.site-header.menu-collapsed .nav-links li{width:100%}.site-header.menu-collapsed .nav-links a{width:100%;padding:8px 0;font-size:1.15rem}.site-header.menu-collapsed .nav-links a.nav-lab-link{justify-content:center;width:100%;margin-top:8px;padding:10px 16px;font-size:1rem}@media (width<=780px){.site-header{padding:14px 0}.header-logo{left:15px}.header-logo img{height:30px}.nav-links{gap:20px}.nav-links a{font-size:.92rem}.home-page .site-header:not(.scrolled):not(.menu-collapsed) .header-nav{margin-left:auto;margin-right:auto;transform:translate(0)}.standard-header:not(.menu-collapsed) .header-nav,.home-page .site-header.scrolled:not(.menu-collapsed) .header-nav{margin-left:auto;margin-right:0;transform:translate(0)}}.services-grid{grid-template-columns:repeat(3,1fr);gap:30px;display:grid}@media (width<=992px){.services-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=600px){.services-grid{grid-template-columns:1fr}}.service-card{-webkit-backdrop-filter:blur(14px);background:radial-gradient(120% 120% at 0 0,#060e2cbf 0%,#020616eb 100%);border:1px solid #00f0ff2e;border-radius:18px;padding:40px 32px;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s;position:relative;overflow:hidden;box-shadow:0 12px 32px #00000073,inset 0 1px #ffffff0f}@media (hover:hover){.service-card:hover{border-color:var(--color-secondary);transform:translateY(-8px);box-shadow:0 20px 48px #000000a6,0 0 26px #00f0ff47}.service-card:hover .service-index{color:var(--color-secondary)}}.service-card.card-active{border-color:var(--color-secondary);transform:translateY(-8px);box-shadow:0 20px 48px #000000a6,0 0 26px #00f0ff47}.service-card.card-active .service-index{color:var(--color-secondary)}.service-index{font-family:var(--font-mono);color:#00f0ff40;letter-spacing:-.04em;margin-bottom:12px;font-size:2.2rem;font-weight:700;transition:color .35s;display:block}.service-card h4{color:var(--color-white);margin-bottom:16px;font-size:1.25rem}.service-card p{color:var(--color-body);font-size:.95rem;line-height:1.6}.portfolio-grid{grid-template-columns:repeat(2,1fr);gap:36px;display:grid}.related-projects-section .portfolio-grid{grid-template-columns:repeat(3,1fr);gap:30px}@media (width<=992px){.related-projects-section .portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.portfolio-grid,.related-projects-section .portfolio-grid{grid-template-columns:1fr}}.portfolio-card{-webkit-backdrop-filter:blur(16px);background:radial-gradient(120% 120% at 0 0,#081034c7 0%,#030718eb 100%);border:1px solid #00f0ff38;border-radius:20px;flex-direction:column;transition:transform .35s cubic-bezier(.2,.8,.2,1),border-color .35s,box-shadow .35s;display:flex;position:relative;overflow:hidden;box-shadow:0 16px 40px #00000080,inset 0 1px #ffffff14}@media (hover:hover){.portfolio-card:hover{border-color:#f527b58c;transform:translateY(-8px);box-shadow:0 24px 60px #000000b3,0 0 35px #f527b538,0 0 15px #00f0ff26}.portfolio-card:hover .portfolio-thumb img{transform:scale(1.06)}.portfolio-card:hover h4 a{background:linear-gradient(135deg,#fff 30%,#f527b5 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.portfolio-card:hover .portfolio-link-btn{color:#fff;background:linear-gradient(135deg,#f527b5 0%,#293083 100%);border-color:#f527b5;transform:translate(6px)scale(1.08);box-shadow:0 8px 24px #f527b58c,0 0 18px #00f0ff59}}.portfolio-card.card-active{border-color:#f527b58c;transform:translateY(-8px);box-shadow:0 24px 60px #000000b3,0 0 35px #f527b538,0 0 15px #00f0ff26}.portfolio-card.card-active .portfolio-thumb img{transform:scale(1.06)}.portfolio-card.card-active h4 a{background:linear-gradient(135deg,#fff 30%,#f527b5 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text}.portfolio-card.card-active .portfolio-link-btn{color:#fff;background:linear-gradient(135deg,#f527b5 0%,#293083 100%);border-color:#f527b5;transform:translate(6px)scale(1.08);box-shadow:0 8px 24px #f527b58c,0 0 18px #00f0ff59}.portfolio-thumb{aspect-ratio:16/10;background-color:#030718;width:100%;position:relative;overflow:hidden}.portfolio-thumb:after{content:"";pointer-events:none;background:linear-gradient(#02051400 50%,#030718bf 100%);transition:opacity .3s;position:absolute;inset:0}.portfolio-thumb img{object-fit:cover;width:100%;height:100%;transition:transform .65s cubic-bezier(.25,1,.5,1)}.portfolio-info{flex-direction:column;flex:1;padding:32px 30px;display:flex;position:relative}.portfolio-categories{font-family:var(--font-heading);text-transform:uppercase;letter-spacing:1.5px;color:var(--color-primary);align-items:center;gap:8px;margin-bottom:12px;font-size:.8rem;font-weight:700;display:flex}.portfolio-card h4{margin-bottom:14px;font-size:1.35rem;font-weight:700;line-height:1.35}.portfolio-card h4 a{background:linear-gradient(135deg,#fff 60%,#e0e8ff 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;transition:all .3s}.portfolio-excerpt{color:var(--color-body);flex:1;margin-bottom:26px;font-size:.98rem;line-height:1.65}.portfolio-link-btn{color:#fff;background:linear-gradient(135deg,#f527b540 0%,#29308373 100%);border:1px solid #f527b559;border-radius:50%;justify-content:center;align-self:flex-start;align-items:center;width:46px;height:46px;font-size:1.15rem;transition:all .3s cubic-bezier(.2,.8,.2,1);display:inline-flex;box-shadow:0 4px 16px #f527b533,inset 0 1px #fff3}.site-footer{z-index:10;-webkit-backdrop-filter:blur(16px);background-color:#01030aeb;border-top:1px solid #00f0ff1f;margin-top:auto;position:relative}.footer-top{padding:80px 0 60px}.footer-grid{grid-template-columns:1fr 1fr 1fr;align-items:center;gap:40px;display:grid}@media (width<=900px){.footer-grid{text-align:center;grid-template-columns:1fr}.footer-logo{justify-content:center;display:flex}.footer-contacts-list{align-items:center}}.footer-logo img{height:40px}.footer-contacts-list{flex-direction:column;gap:12px;list-style:none;display:flex}.footer-contacts-list li{color:var(--color-body);align-items:center;gap:12px;font-size:.95rem;display:flex}@media (width<=900px){.footer-contacts-list li{justify-content:center}}.footer-contacts-list svg{width:16px;height:16px;fill:var(--color-primary);flex-shrink:0}.footer-contacts-list a:hover{color:var(--color-primary)}.footer-bottom{border-top:1px solid #ffffff14;padding:24px 0}.footer-bottom-inner{justify-content:space-between;align-items:center;display:flex}@media (width<=600px){.footer-bottom-inner{text-align:center;flex-direction:column;gap:14px}}.footer-bottom p{color:var(--color-body);font-size:.9rem}.footer-bottom-social{color:var(--color-body);align-items:center;gap:8px;font-size:.9rem;display:flex}.footer-bottom-social:hover{color:var(--color-primary)}.footer-bottom-social svg{fill:currentColor;width:16px;height:16px}
