.portfolio-page{--surface:#080d13;--section-glass:rgba(5,9,14,.52);--panel:#0c131b;--ink:#edf3f7;--muted:#93a3b3;--line:#1e2d39;--cyan:#73e5e2;color:var(--ink);background:#05090e;font-family:Manrope,Poppins,Arial,sans-serif;-webkit-font-smoothing:antialiased}body:has(.portfolio-page){background:#05090e!important}.portfolio-page{position:relative;isolation:isolate}.portfolio-page>.portfolio-hero,.portfolio-page>.portfolio-markup>:is(section,footer){position:relative;z-index:1}.portfolio-markup{display:contents}.portfolio-page :is(h1,h2,h3,h4,a,p,span){font-family:inherit}.portfolio-page :is(h1,h2,h3,h4){letter-spacing:-.045em}.portfolio-page section{scroll-margin-top:6rem}.portfolio-page :is(a,button,summary):focus-visible{outline:2px solid var(--cyan);outline-offset:5px}.portfolio-page ::-moz-selection{background:#73e5e2;color:#071019}.portfolio-page ::selection{background:#73e5e2;color:#071019}#main-content.portfolio-page .portfolio-navigation{position:fixed;inset:0 0 auto;z-index:50;background:rgba(5,9,14,.92);border-bottom:1px solid var(--line);backdrop-filter:blur(18px)}.portfolio-nav-container{max-width:1720px;margin:0 auto;padding:0 clamp(16px,4vw,64px)}.portfolio-nav-row{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:24px}.portfolio-page .portfolio-nav-brand{display:flex;align-items:center;color:var(--ink)!important;font-size:16px;letter-spacing:-.035em;font-weight:800;white-space:nowrap}.portfolio-page .site-nav-link{font-size:12px;font-weight:500;color:#95a5b4!important}.portfolio-page .site-nav-link.is-active,.portfolio-page .site-nav-link:hover{color:var(--ink)!important}.portfolio-page .site-nav-link:after{background:var(--cyan);height:2px;bottom:-10px}.portfolio-page nav a[href="/service-request"]{border-color:#31414d;color:#b1bec9!important;padding:10px 13px;font-size:11px;border-radius:6px;background:transparent}.portfolio-page nav a[href="#resume"]:not(.site-nav-link){color:#081014!important;background:var(--cyan)!important;padding:11px 18px;font-size:11px;border-radius:6px;box-shadow:none}.portfolio-page #mobile-navigation{background:#080e15!important;border-bottom:1px solid var(--line)}.portfolio-nav-actions,.portfolio-nav-end,.portfolio-nav-links,.portfolio-nav-tools{display:flex;align-items:center;gap:14px}.portfolio-nav-actions,.portfolio-nav-links{white-space:nowrap}.portfolio-nav-links{justify-content:center;flex:1}.portfolio-nav-end{flex-shrink:0}.portfolio-menu-button{display:none;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid var(--line);border-radius:8px;color:var(--ink)}.portfolio-page #mobile-navigation{max-height:calc(100dvh - 84px);overflow:auto;overscroll-behavior:contain;padding:16px max(20px,calc((100vw - 1200px) / 2)) 24px}.portfolio-mobile-links{display:grid;grid-template-columns:1fr 1fr;gap:8px}.portfolio-mobile-links .site-nav-link{display:flex;align-items:center;min-height:46px;padding:10px 14px;border:1px solid var(--line);border-radius:8px}.portfolio-mobile-links .site-nav-link:after{display:none}.portfolio-mobile-links .is-active{background:#73e5e215}.portfolio-mobile-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:18px}.portfolio-mobile-actions a{text-align:center;flex:1}.portfolio-page .portfolio-nav-request{border:1px solid var(--line)}@media (max-width:1439px){.portfolio-nav-actions,.portfolio-nav-links{display:none}.portfolio-menu-button{display:flex}}@media (max-width:479px){.portfolio-nav-end,.portfolio-nav-row{gap:8px}.portfolio-page #mobile-navigation{max-height:calc(100dvh - 72px)}}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services,.app-promo-section,footer){color:var(--ink)!important;background:var(--section-glass)!important;border-top:1px solid var(--line)}#main-content.portfolio-page>.portfolio-markup>section:not([id]):not(.app-promo-section){background:var(--section-glass)!important}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services){padding:100px 7.2%;overflow:hidden}.portfolio-page :is(#about,#skills,#resume,#projects,#services)>.absolute{display:none}.portfolio-page :is(#skills,#resume,#projects,#services)>div:not(.absolute){max-width:1260px}.portfolio-page :is(#skills,#resume,#projects,#services) .text-center:has(>h2){text-align:left;margin-bottom:48px}.portfolio-page :is(#skills,#resume,#projects,#services) .text-center:has(>h2)>p{margin-left:0;font-size:15px;line-height:1.8;max-width:590px}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services) h2{color:var(--ink)!important;font-size:clamp(32px,3.5vw,49px);line-height:1.2;font-weight:500}.portfolio-page :is(#about,#skills,#resume,#projects,#services) h2:before{display:block;color:var(--cyan);margin-bottom:16px;letter-spacing:.2em;font:10px ui-monospace,monospace}#main-content.portfolio-page .text-accent,#main-content.portfolio-page [class*="text-[#ff"]{color:var(--cyan)!important}#main-content.portfolio-page .text-gray-300{color:#bbc8d2!important}#main-content.portfolio-page .text-gray-400{color:var(--muted)!important}#main-content.portfolio-page .text-gray-500{color:#758b9b!important}.portfolio-page :is(.border-gray-700,.border-gray-800){border-color:var(--line)!important}.portfolio-page [class*="bg-accent/"]{background-color:#73e5e210!important}.portfolio-page [class*=border-accent]{border-color:#36595e!important}.portfolio-page :is(a,button)[class~=bg-accent],.portfolio-page a>[class*="bg-[#ff004f]"]{color:#051318!important;background:var(--cyan)!important;box-shadow:none!important;border-radius:6px}.portfolio-page :is(a,button)[class~=bg-accent]:hover{background:#b2fff7!important}.portfolio-page [class~=bg-accent]:not(a):not(button){background-color:#73e5e2}.portfolio-page [class*=border-l-]{border-color:#365b65!important}.portfolio-page h3{font-weight:600;letter-spacing:-.025em}.portfolio-page #about>div.relative{max-width:1260px;text-align:left;display:grid;grid-template-columns:1fr 2fr;gap:0 70px}.portfolio-page #about>div.relative>div:first-child{grid-column:1/-1}.portfolio-page #about>div.relative>div:first-child>div{display:none}.portfolio-page #about>div.relative>div:nth-child(2){grid-column:1;grid-row:2/7;width:100%;height:100%;min-height:350px;max-height:520px;margin:0;border:1px solid var(--line);border-radius:12px;box-shadow:none}.portfolio-page #about img{-o-object-position:center 55%;object-position:center 55%;filter:none}.portfolio-page #about>div.relative>:is(h2,p,div:nth-last-child(2),a){grid-column:2;margin-left:0;margin-right:0}.portfolio-page #about>div.relative>h2{font-size:30px!important;margin-bottom:20px}.portfolio-page #about>div.relative>p{font-size:14px;line-height:1.9}.portfolio-page #about .flex-wrap{justify-content:flex-start;gap:8px}.portfolio-page #about .flex-wrap span{border:1px solid var(--line);background:#12202a;border-radius:4px;font-size:11px;padding:6px 10px}.portfolio-page #about>div.relative>a{width:-moz-fit-content;width:fit-content}.portfolio-page #about h3{text-align:left;font:10px ui-monospace,monospace}.portfolio-page #skills .skills-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}#main-content.portfolio-page #skills .skill-card{min-height:160px;padding:24px 12px;border-radius:8px;background:var(--panel)!important;box-shadow:none;transition:transform .25s,border-color .25s,background .25s}.portfolio-page #skills .skill-card:hover{transform:translateY(-4px);border-color:#57838b!important}.portfolio-page #skills .skill-card p{font-size:12px;color:var(--ink)!important;letter-spacing:-.01em}.portfolio-page #skills .skill-card img{max-height:32px}.portfolio-page .tech-skill-mark{width:42px;height:42px;border-radius:8px;border-color:#29404c;background:#12252e;color:var(--cyan);font-size:20px;box-shadow:none}.portfolio-page .tech-skill-link{color:#7897a8;font:8px ui-monospace,monospace;letter-spacing:.05em}.portfolio-page .tech-skill-card:hover .tech-skill-mark{background:#163640;color:#d0ffff}.portfolio-page #resume .text-center:has(>h2){display:grid;grid-template-columns:1fr 1.1fr;gap:0 70px}.portfolio-page #resume .text-center:has(>h2)>:is(h2,p){grid-column:1}.portfolio-page #resume .cv-library{grid-column:2;grid-row:1/4;padding:26px;border:1px solid #29414c;border-radius:10px;background:linear-gradient(125deg,#12232a,#0c131b)}.portfolio-page #resume .cv-library h3{font-size:17px;margin-bottom:7px;color:var(--ink)}.portfolio-page .cv-library>p{font-size:12px;color:var(--muted);line-height:1.7;margin-bottom:20px}.portfolio-page .cv-document{display:flex;align-items:center;justify-content:space-between;gap:12px;border-top:1px solid #2b3e48;padding-top:15px;margin-top:15px}.portfolio-page .cv-document-name{display:flex;align-items:center;gap:12px;font-size:12px;color:#d1e0e8}.portfolio-page .cv-document-name>span:first-child{padding:8px;border-radius:5px;border:1px solid #34505c;color:var(--cyan);font:9px ui-monospace,monospace}.portfolio-page .cv-document-actions{display:flex;gap:8px}.portfolio-page .cv-document-actions a{display:inline-flex;align-items:center;min-height:38px;padding:8px 11px;border:1px solid #35545e;border-radius:4px;font-size:11px;color:var(--cyan);transition:background .2s}.portfolio-page .cv-document-actions a:hover{background:#20414c}.portfolio-page #resume>div>.grid{gap:50px;padding-top:35px;border-top:1px solid var(--line)}.portfolio-page #resume h3.text-center{text-align:left;font-size:20px;color:var(--ink)!important}.portfolio-page #resume h4{font-size:19px}.portfolio-page #resume .border-l-4{border-left-width:1px}.portfolio-page #resume .border-l-4>.absolute{width:7px;height:7px;left:-4px;top:9px}.portfolio-page #resume .text-base{font-size:13px;line-height:1.8}.portfolio-page #projects .grid{gap:20px}.portfolio-page #projects :is(.web-projects-accordion,.grid>div:not(.absolute),article){border-radius:10px;background:var(--panel);box-shadow:none!important}.portfolio-page #projects :is(.web-projects-accordion,.grid>div):hover{border-color:#3b626d!important}.portfolio-page #projects img{border-radius:5px;filter:saturate(.6)}.portfolio-page #projects .group:hover img{filter:saturate(1)}.portfolio-page .web-projects-chevron{border-color:#416370;background:#142831;color:var(--cyan)}.portfolio-page .web-projects-accordion[open]{border-color:#416370}.portfolio-page .client-sites-grid{background:#08121a}.portfolio-page .client-site-card{background:#101c26;border-color:#2b404d;border-radius:6px}.portfolio-page .client-site-card:hover{border-color:#73e5e2;box-shadow:none}.portfolio-page .client-site-body strong,.portfolio-page .client-site-heading span{color:var(--cyan)}.portfolio-page #services .grid{gap:14px;counter-reset:services}.portfolio-page #services .grid>div{background:var(--panel);border-radius:8px;box-shadow:none;padding:30px;counter-increment:services}.portfolio-page #services .grid>div>div{border-radius:8px;background:#162932!important;color:var(--cyan)!important}.portfolio-page #services .grid h3{font-size:18px;color:var(--ink)}.portfolio-page #services .grid p{font-size:13px;line-height:1.85}.portfolio-page #services .grid>div:hover{transform:translateY(-4px);border-color:#456e78!important}.portfolio-page footer{padding-bottom:95px}.portfolio-page footer lottie-player{display:none}.portfolio-page footer h2{font-size:23px}.portfolio-page footer .threat-map-link{display:inline-block;margin-top:20px;color:#7395a4;font-size:10px}.portfolio-page [data-aos]{opacity:1!important;transform:none!important;transition-delay:0s!important}.portfolio-page [data-aos].reveal-ready:not(.is-revealed){opacity:0!important;transform:translateY(18px)!important}.portfolio-page [data-aos].reveal-ready{transition:opacity .7s ease,transform .7s cubic-bezier(.2,.7,.2,1),border-color .25s!important}.portfolio-page .text-reveal{transition:opacity .7s ease var(--reveal-delay,0s),translate .7s cubic-bezier(.2,.7,.2,1) var(--reveal-delay,0s)}.portfolio-page .text-reveal:not(.is-revealed){opacity:0;translate:0 14px}.portfolio-page .text-reveal.is-revealed{opacity:1;translate:0 0}html[data-theme=dark] .portfolio-page section:not(#home) :is(h2,h3,h4,p){text-shadow:0 1px 5px #03070b,0 0 2px #03070b}html[data-theme=light] .portfolio-page{--section-glass:rgba(4,9,19,.3);--panel:rgba(239,245,249,.96);--ink:#edf3f7;--muted:#bac9d7;--line:#52627466;--cyan:#8ce4ed}html[data-theme=light] #main-content.portfolio-page #mobile-navigation,html[data-theme=light] #main-content.portfolio-page .portfolio-navigation{background:#f0f5f9f5!important;--ink:#172d3d;--line:#c4d2dc;--cyan:#127c88;color:#172d3d}html[data-theme=light] .portfolio-page .portfolio-navigation .site-nav-link{color:#435c6b!important}html[data-theme=light] .portfolio-page .portfolio-navigation .site-nav-link.is-active{color:#087987!important}html[data-theme=light] .portfolio-page .portfolio-navigation a[href="/service-request"]{color:#27495b!important;border-color:#afc6d1}html[data-theme=light] .portfolio-page .portfolio-navigation a[href="#resume"]:not(.site-nav-link){color:#fff!important}html[data-theme=light] .portfolio-page :is(.skill-card,.cv-library,#projects article,#projects .web-projects-accordion,#projects .grid>div,#services .grid>div){--ink:#172d3d;--muted:#435e70;--cyan:#067786;--line:#b9cdd8;color:var(--ink);background:var(--panel)!important;border-color:var(--line)!important}html[data-theme=light] #main-content.portfolio-page :is(.cv-library,#projects article,#projects .web-projects-accordion,#projects .grid>div,#services .grid>div) :is(h3,h4,p,.text-gray-300,.text-gray-400,.text-gray-500,.text-white){color:var(--ink)!important}html[data-theme=light] .portfolio-page .cv-document-name{color:#27495b}html[data-theme=light] .portfolio-page .cv-document{border-color:#b9cdd8}html[data-theme=light] .portfolio-page .cv-document-actions a:hover{background:#dcecf2}html[data-theme=light] .portfolio-page :is(.client-site-card,.client-sites-grid){background:#e4eef3!important;color:#172d3d}html[data-theme=light] .portfolio-page #skills .tech-skill-mark{background:#dceaf1;border-color:#b7cdd8;color:#087786}html[data-theme=light] .portfolio-page #services .grid>div>div{background:#d5e9ed!important}html[data-theme=light] .portfolio-page .tech-skill-link{color:#426377}@media (max-width:1199px){.portfolio-page #skills .skills-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.portfolio-page #resume .text-center:has(>h2){gap:0 35px}}@media (max-width:767px){.portfolio-nav-row{min-height:72px}.portfolio-page .portfolio-nav-brand{font-size:14px}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services){padding:66px 7%}.portfolio-page #about>div.relative{display:block}.portfolio-page #about>div.relative>div:nth-child(2){width:100%;height:330px;min-height:0;margin-bottom:28px}.portfolio-page #about img{-o-object-position:center 55%;object-position:center 55%}.portfolio-page #about>div.relative>h2{font-size:25px!important}.portfolio-page #skills .skills-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}#main-content.portfolio-page #skills .skill-card{min-height:143px;padding:20px 10px}.portfolio-page #resume .text-center:has(>h2){display:block}.portfolio-page #resume .cv-library{margin-top:26px;padding:19px}.portfolio-page .cv-document{flex-wrap:wrap;gap:12px}.portfolio-page .cv-document-actions{margin-left:auto}.portfolio-page #resume>div>.grid{gap:35px}.portfolio-page #services .grid>div{padding:24px}.portfolio-page #projects .client-sites-grid{padding:14px}.portfolio-page section{scroll-margin-top:72px}}@media (prefers-reduced-motion:reduce){html:has(.portfolio-page){scroll-behavior:auto}.portfolio-page [data-aos].reveal-ready:not(.is-revealed){opacity:1!important;transform:none!important}.portfolio-page .text-reveal:not(.is-revealed){opacity:1;translate:none}.portfolio-page *,.portfolio-page :after,.portfolio-page :before{animation:none!important;transition:none!important}}@media (max-width:359px){.portfolio-page .portfolio-nav-brand{font-size:12px}.portfolio-nav-end,.portfolio-nav-row{gap:6px}.portfolio-nav-container{padding-inline:12px}.header-controls{gap:6px}}html .portfolio-page,html[data-theme=dark] .portfolio-page{--surface:#0a1020;--panel:#141e33;--ink:#f4f5ff;--muted:#b9c5dc;--line:#37425c;--cyan:#8eead8;--section-glass:color-mix(in srgb,var(--surface) 58%,transparent);background:var(--surface);color:var(--ink)}html[data-theme=light] .portfolio-page{--surface:#f1f4ff;--panel:#fbfcff;--ink:#1b2341;--muted:#4e5873;--line:#c1cbe1;--cyan:#156b73;--section-glass:color-mix(in srgb,var(--surface) 60%,transparent)}#main-content.portfolio-page #mobile-navigation,#main-content.portfolio-page .portfolio-navigation,html[data-theme=light] #main-content.portfolio-page #mobile-navigation,html[data-theme=light] #main-content.portfolio-page .portfolio-navigation{background:var(--surface)!important;color:var(--ink);--ink:inherit;--line:inherit;--cyan:inherit}.portfolio-nav-name{font-family:Georgia,serif;font-size:1.15rem}#main-content.portfolio-page #home{position:relative;display:grid;align-items:center;isolation:isolate;overflow:hidden;grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:clamp(1.75rem,4vw,4.25rem);min-height:min(890px,100svh);padding:clamp(7.5rem,11vw,10.5rem) max(6%,calc((100vw - 1340px)/2)) clamp(3rem,6vw,6rem);background:var(--surface)!important;color:var(--ink)!important}.systems-intro{position:relative;z-index:1;max-width:42rem;min-width:0}.systems-role{font:600 clamp(.72rem,1.1vw,.9rem)/1.55 ui-monospace,monospace;color:var(--cyan);margin-bottom:1.15rem}#main-content.portfolio-page #home h1.welcome-heading{font:normal clamp(3.8rem,7.6vw,8rem)/.98 Georgia,serif;letter-spacing:-.065em;color:var(--ink)!important;margin:0;animation:welcome-reveal .8s cubic-bezier(.16,1,.3,1) both;transition:font-size .85s cubic-bezier(.22,1,.36,1),letter-spacing .85s ease,transform .85s cubic-bezier(.22,1,.36,1)}#main-content.portfolio-page #home.is-compact h1.welcome-heading{font-size:clamp(2.45rem,4.3vw,4.35rem);letter-spacing:-.045em}@keyframes welcome-reveal{0%{opacity:0;transform:translateY(18px) scale(.96);filter:blur(6px)}to{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}}.systems-intro h1 span{display:block}.systems-intro h1 span:last-child{font-style:italic}.systems-summary{max-width:34rem;font-size:clamp(.98rem,1.35vw,1.15rem);line-height:1.65;color:var(--muted);margin:1.35rem 0 1.75rem}.systems-links{display:flex;gap:.65rem;flex-wrap:wrap}.systems-links a{padding:.85rem 1.1rem;border:1px solid var(--line);border-radius:3px;font-size:.88rem;font-weight:700;color:var(--ink)}.systems-links a:first-child{background:var(--cyan);color:var(--surface);border-color:var(--cyan)}.systems-links a:hover{outline:1px solid var(--cyan)}.hero-live-brief{position:relative;z-index:1;width:100%;max-width:34rem;justify-self:end;padding:clamp(1.15rem,2vw,1.55rem);border-radius:1.15rem;border:1px solid color-mix(in srgb,var(--cyan) 38%,var(--line));background:radial-gradient(ellipse at 100% 0,color-mix(in srgb,var(--cyan) 14%,transparent),transparent 68%),color-mix(in srgb,var(--panel) 80%,transparent);backdrop-filter:blur(14px);box-shadow:inset 0 1px 0 #ffffff22,0 4px 0 var(--surface),0 5px 0 var(--line),0 18px 36px #02071538;opacity:0;transform:translateY(16px) scale(.98);transition:opacity .65s ease .12s,transform .65s cubic-bezier(.22,1,.36,1) .12s}#main-content.portfolio-page #home.is-compact .hero-live-brief{opacity:1;transform:translateY(0) scale(1)}.hero-brief-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding-bottom:.75rem;margin-bottom:.85rem;border-bottom:1px solid color-mix(in srgb,var(--line) 80%,transparent)}.hero-brief-badge{display:inline-flex;align-items:center;gap:.5rem;font:700 .68rem/1.2 ui-monospace,monospace;letter-spacing:.12em;color:var(--cyan)}.hero-brief-dot{width:7px;height:7px;border-radius:50%;background:#34f5a6;box-shadow:0 0 8px #34f5a6;animation:brief-pulse 2s ease-in-out infinite}.hero-brief-status{padding:.2rem .5rem;border-radius:999px;border:1px solid color-mix(in srgb,var(--cyan) 45%,var(--line));background:color-mix(in srgb,var(--cyan) 12%,transparent);font:700 .62rem/1 ui-monospace,monospace;letter-spacing:.1em;color:var(--cyan)}.hero-brief-list{list-style:none;margin:0;padding:0;display:grid;gap:.65rem}.hero-brief-item{padding:.5rem .65rem;border-radius:.65rem;border:1px solid transparent;background:color-mix(in srgb,var(--surface) 42%,transparent);opacity:.35;transition:opacity .25s ease,border-color .25s ease}.hero-brief-item.is-active{opacity:1;border-color:color-mix(in srgb,var(--line) 75%,transparent)}.hero-brief-tag{display:block;margin-bottom:.18rem;font:700 .62rem/1.2 ui-monospace,monospace;letter-spacing:.11em;color:var(--cyan)}.hero-brief-text{margin:0;min-height:1.35em;font-size:clamp(.84rem,1.02vw,.95rem);font-weight:600;line-height:1.4;color:var(--ink)!important}.hero-brief-cursor{display:inline-block;margin-left:3px;color:var(--cyan);animation:brief-cursor-blink .75s steps(2,start) infinite}@keyframes brief-pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.86)}}@keyframes brief-cursor-blink{0%,to{opacity:1}50%{opacity:0}}.portfolio-page .portfolio-code-rain{position:fixed;inset:0;width:100%;height:100%;z-index:0;pointer-events:none}.signal-field{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;-webkit-mask-image:linear-gradient(90deg,transparent 8%,#0004 30%,#000 56%);mask-image:linear-gradient(90deg,transparent 8%,#0004 30%,#000 56%)}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services){padding-block:clamp(4rem,7vw,7rem)}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services) h2{font-family:Georgia,serif;font-weight:400;letter-spacing:-.045em;font-size:clamp(2.4rem,4.8vw,5rem);text-shadow:none}#main-content.portfolio-page :is(#skills .skill-card,#resume .cv-library,#projects article,#projects .web-projects-accordion,#projects .grid>div,#services .grid>div){color:var(--ink);background:var(--panel)!important;border:1px solid var(--line)!important;border-radius:3px}html[data-theme=light] .portfolio-page :is(.skill-card,.cv-library,#projects article,#projects .web-projects-accordion,#projects .grid>div,#services .grid>div){--ink:#1b2341;--muted:#4e5873;--cyan:#156b73;--line:#c1cbe1}#main-content.portfolio-page :is(.text-gray-300,.text-gray-400,.text-gray-500){color:var(--muted)!important}#main-content.portfolio-page :is(.tech-skill-mark,#services .grid>div>div,#about .flex-wrap span,.web-projects-chevron,.client-site-card,.client-sites-grid){background:var(--panel)!important;border-color:var(--line);color:var(--ink)}#main-content.portfolio-page #projects img{filter:none}#main-content.portfolio-page :is(#armenia-support,footer){background:var(--section-glass)!important}@media (max-width:960px){#main-content.portfolio-page #home{grid-template-columns:minmax(0,1fr);gap:1.75rem;min-height:min(790px,92svh);padding:7rem 6% clamp(4rem,10vh,6rem)}.hero-live-brief{justify-self:stretch;max-width:100%}}@media (max-width:760px){#main-content.portfolio-page #home h1.welcome-heading{font-size:clamp(2.9rem,11vw,4.8rem)}#main-content.portfolio-page #home.is-compact h1.welcome-heading{font-size:clamp(2.15rem,8.5vw,3.2rem)}.systems-summary{margin:1rem 0 1.3rem}.signal-field{inset:auto -8% 0 auto;width:128%;height:55%;-webkit-mask-image:linear-gradient(180deg,transparent,#000a 30%,black 70%);mask-image:linear-gradient(180deg,transparent,#000a 30%,black 70%)}}@media print{.portfolio-code-rain,.signal-field{display:none}}#main-content.portfolio-page #home{z-index:1;background:radial-gradient(ellipse at 78% 46%,#6756cd26,transparent 46%),radial-gradient(ellipse at 43% 74%,#2589a01c,transparent 45%),linear-gradient(90deg,color-mix(in srgb,var(--surface) 84%,transparent) 0,color-mix(in srgb,var(--surface) 68%,transparent) 42%,color-mix(in srgb,var(--surface) 44%,transparent) 100%)!important}@media (max-width:760px){#main-content.portfolio-page #home{background:radial-gradient(ellipse at 63% 75%,#6756cd26,transparent 44%),linear-gradient(180deg,color-mix(in srgb,var(--surface) 68%,transparent) 0,color-mix(in srgb,var(--surface) 82%,transparent) 48%,color-mix(in srgb,var(--surface) 46%,transparent) 100%)!important}}#main-content.portfolio-page #home h1 span:last-child{width:-moz-fit-content;width:fit-content;background:linear-gradient(110deg,#c4ffed,#a6d7ff 43%,#c8abfa 89%);color:transparent;-webkit-background-clip:text;background-clip:text}html[data-theme=light] #main-content.portfolio-page #home h1 span:last-child{background-image:linear-gradient(110deg,#16625c,#254f97 45%,#6c4181)}.systems-links a{border-radius:.55rem;background:var(--panel);box-shadow:inset 0 1px #ffffff16,0 3px 0 var(--line)}.systems-links a:first-child{box-shadow:inset 0 1px #ffffff77,0 3px 0 color-mix(in srgb,var(--cyan),#000 35%)}#main-content.portfolio-page :is(#about,#skills,#resume,#projects,#services){--section-tint:#589be2;background:radial-gradient(ellipse at 93% 0,color-mix(in srgb,var(--section-tint) 13%,transparent),transparent 50rem),var(--section-glass)!important}#main-content.portfolio-page #about,#main-content.portfolio-page #resume{--section-tint:#a78beb}#main-content.portfolio-page #services{--section-tint:#43c5af}#main-content.portfolio-page #about>div.relative>div:nth-child(2){border-radius:1.25rem;border:1px solid var(--line);box-shadow:5px 6px 0 var(--panel),6px 7px 0 var(--line),12px 22px 40px #02071536}#main-content.portfolio-page :is(#resume .cv-library,#projects .web-projects-accordion,#projects .grid>div:not(.absolute),#services .grid>div){--edge:var(--section-tint);border-radius:1.15rem;border:1px solid color-mix(in srgb,var(--edge) 40%,var(--line))!important;background:radial-gradient(ellipse at 0 0,color-mix(in srgb,var(--edge) 14%,transparent),transparent 68%),var(--panel)!important;box-shadow:inset 0 1px 0 #ffffff22,0 4px 0 var(--surface),0 5px 0 var(--line),0 16px 28px #02071526!important}#main-content.portfolio-page #services .grid>div:nth-child(3n+2){--edge:#ac82ee}#main-content.portfolio-page #services .grid>div:nth-child(3n){--edge:#66abff}#main-content.portfolio-page #services .grid>div>.w-12{color:var(--edge)!important;border:1px solid color-mix(in srgb,var(--edge),var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--edge) 25%,var(--panel)),var(--panel))!important;box-shadow:2px 3px 0 var(--line),3px 7px 15px #0207152e}html[data-theme=light] #main-content.portfolio-page #services .grid>div>.w-12{color:color-mix(in srgb,var(--edge) 48%,#111535)!important}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#main-content.portfolio-page :is(#projects .grid>div:not(.absolute),#services .grid>div):hover{transform:perspective(900px) rotateX(3deg) rotateY(-2deg) translateY(-3px)!important;border-color:var(--edge)!important}}#main-content.portfolio-page #skills .skills-grid{gap:clamp(14px,1.6vw,24px);place-items:center}#main-content.portfolio-page #skills .skills-grid>.skill-card{--tint:#8c9bff;--face:#172039;--rim:color-mix(in srgb,var(--tint) 42%,#243047);--stand:color-mix(in srgb,var(--tint) 56%,#273951);--shine-x:22%;--shine-y:0%;min-width:0;position:relative;display:grid;grid-template-rows:44% auto 1fr;justify-items:center;align-items:start;width:min(100%,176px);aspect-ratio:1;min-height:0;padding:0;text-align:center;border:1px solid var(--rim)!important;border-radius:50%!important;background:radial-gradient(ellipse at var(--shine-x) var(--shine-y),color-mix(in srgb,var(--tint) 27%,transparent),transparent 75%),linear-gradient(135deg,var(--face),color-mix(in srgb,var(--face) 85%,#020819))!important;box-shadow:inset 0 1px 0 #ffffff32,inset 1px 0 0 #ffffff12,0 4px 0 color-mix(in srgb,var(--rim) 65%,#090e20),0 5px 0 color-mix(in srgb,var(--rim) 85%,#090e20),0 10px 18px -9px #04091cc9!important;transform-style:preserve-3d}#skills .skills-grid>:has([alt=HTML5]),#skills .skills-grid>[href*=proxmox]{--tint:#ff8652!important}#skills .skills-grid>:has([alt=CSS3]),#skills .skills-grid>[href*=truenas]{--tint:#6ba9ff!important}#skills .skills-grid>:has([alt=JavaScript]),#skills .skills-grid>[href*=debian]{--tint:#f5c44c!important}#skills .skills-grid>:has([alt=Tailwind]),#skills .skills-grid>[href*=nextcloud]{--tint:#56caee!important}#skills .skills-grid>:has([alt=React]),#skills .skills-grid>[href*=docker]{--tint:#5ae0dd!important}#skills .skills-grid>:has([alt="Node.js"]),#skills .skills-grid>:has([alt=MongoDB]),#skills .skills-grid>[href*=netdata]{--tint:#83db91!important}#skills .skills-grid>:has([alt=Hikvision]),#skills .skills-grid>[href*=zabbix]{--tint:#ff8189!important}#skills .skills-grid>[href*=ditaknet],#skills .skills-grid>[href*=microsoft]{--tint:#c69dff!important}#main-content.portfolio-page #skills .skill-card:before{content:"";position:absolute;top:calc(40% + 10px);left:50%;width:54px;height:16px;border-radius:50%;border:1px solid var(--stand);background:radial-gradient(ellipse at 40% 0,var(--stand),transparent 75%),var(--face);box-shadow:0 3px 0 var(--rim),0 5px 0 color-mix(in srgb,var(--rim) 68%,#071425);transform:translateX(-50%) translateZ(4px);pointer-events:none}#main-content.portfolio-page #skills .skill-card>:is(img,.tech-skill-mark,div:has(img)){z-index:1;display:grid;place-items:center;position:absolute;top:40%;left:50%;width:54px;height:39px;max-height:39px;margin:0;-o-object-fit:contain;object-fit:contain;filter:drop-shadow(0 4px 3px #0006);transform:translate(-50%,-50%) translateZ(22px)}#main-content.portfolio-page #skills .skill-card>img{padding:0 9px}#main-content.portfolio-page #skills .skill-card>img[alt="Express.js"]{width:35px;height:35px;padding:4px;border-radius:7px}#main-content.portfolio-page #skills .skill-card>.tech-skill-mark{color:var(--tint)!important;background:none!important;border:none;box-shadow:none;font-size:26px}#main-content.portfolio-page #skills .skill-card>div:has(img){width:min(88px,92%);height:28px;padding:5px 7px;border-radius:5px}#main-content.portfolio-page #skills .skill-card>p{grid-row:2;max-width:82%;margin:22px 0 0;color:#f6f8ff!important;font-size:clamp(.78rem,.92vw,.9rem);line-height:1.2;text-shadow:none;transform:translateZ(12px)}#main-content.portfolio-page #skills .skill-card .tech-skill-link{grid-row:3;margin-top:2px;color:#c4d0e2;font-size:.54rem;letter-spacing:.04em;transform:translateZ(9px)}html[data-theme=light] #main-content.portfolio-page #skills .skills-grid>.skill-card{--face:#f9fbff;--rim:color-mix(in srgb,var(--tint) 45%,#97a5ba);--stand:color-mix(in srgb,var(--tint) 60%,#e8edf7);background:radial-gradient(ellipse at var(--shine-x) var(--shine-y),color-mix(in srgb,var(--tint) 32%,transparent),transparent 80%),var(--face)!important}html[data-theme=light] #main-content.portfolio-page #skills .skill-card>p{color:#1a2943!important}html[data-theme=light] #main-content.portfolio-page #skills .skill-card .tech-skill-link{color:#45516c}html[data-theme=light] #main-content.portfolio-page #skills .skill-card>.tech-skill-mark{color:color-mix(in srgb,var(--tint) 55%,#14203c)!important}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){#main-content.portfolio-page #skills .skills-grid>.skill-card:is(:hover,:focus-visible){z-index:2;transform:perspective(650px) translateY(-3px) rotateX(var(--tilt-x,5deg)) rotateY(var(--tilt-y,-4deg))!important;border-color:var(--tint)!important}}@media (max-width:600px){#main-content.portfolio-page #skills .skills-grid>.skill-card{width:min(100%,148px)}#main-content.portfolio-page #skills .skill-card>p{margin-top:18px;font-size:.74rem}#main-content.portfolio-page #skills .skill-card>:is(img,.tech-skill-mark){height:32px}#main-content.portfolio-page #skills .skill-card:before{width:46px;height:13px}#main-content.portfolio-page #skills .skill-card .tech-skill-link{font-size:.48rem}}@media (max-width:359px){#main-content.portfolio-page #skills .skills-grid{grid-template-columns:1fr}}