:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0b090a;--panel:#151012;--stroke:#402126;--text:#faf4f4;--muted:#bdb0b2;--accent:#ff454f}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font-family:Arial,Helvetica,sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}.shell{max-width:1120px;margin:auto;padding:0 30px}.header{z-index:20;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#0b0b0feb;border-bottom:1px solid #2c171a;height:76px;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;height:100%;display:flex}.logo{letter-spacing:-2px;font-size:24px;font-weight:800}.navlinks{color:#d1b9bc;gap:30px;font-size:13px;display:flex}.navlinks a:hover,.back:hover{color:var(--accent)}.navright{align-items:center;gap:10px;display:flex}.lang,.mobilemenu{color:#e8d8da;background:0 0;border:1px solid #60353c;border-radius:9px;padding:7px 12px;font-size:12px}.lang span{color:#ff454f}.mobilemenu{display:none}.hero{min-height:690px;padding-top:130px;padding-bottom:100px;position:relative;overflow:hidden}.hero-glow{pointer-events:none;background:radial-gradient(circle,#dc182a30,#0000 70%);width:460px;height:460px;position:absolute;top:50px;right:-130px}.eyebrow{color:var(--accent);letter-spacing:2px;text-transform:uppercase;font-size:11px;font-weight:700}.dot{background:#ed2637;border-radius:50%;width:7px;height:7px;margin-right:9px;display:inline-block}.hero h1{letter-spacing:-2.8px;max-width:920px;margin:25px 0;font-size:clamp(38px,5.2vw,69px);line-height:1.15}.hero h1 span{color:#ff6870}.hero p{color:#d1bfc1;max-width:700px;font-size:16px}.hero-second{opacity:.85}.actions{flex-wrap:wrap;gap:12px;margin-top:30px;display:flex}.primary,.secondary{border-radius:10px;align-items:center;gap:14px;padding:12px 19px;font-size:13px;font-weight:700;display:inline-flex}.primary{color:#fff;background:#d80d1e}.primary:hover{background:#f12737}.secondary{color:#e8d8da;border:1px solid #704049}.hero-code{color:#8f777a;letter-spacing:1.4px;flex-wrap:wrap;gap:30px;margin-top:100px;font-size:10px;display:flex}.section{border-top:1px solid #2b171a;padding-top:115px;padding-bottom:100px;scroll-margin-top:70px}.section h2,.case h1{letter-spacing:-1.6px;max-width:780px;margin:17px 0 25px;font-size:clamp(31px,4vw,49px);line-height:1.2}.prose{max-width:780px}.prose p,.section-intro,.caseblock p{color:var(--muted);font-size:15px;line-height:1.9}.skillgrid{grid-template-columns:repeat(3,1fr);gap:14px;margin-top:40px;display:grid}.skillcard{border:1px solid var(--stroke);background:linear-gradient(150deg,#171013,#111016);border-radius:15px;min-height:188px;padding:25px}.skillicon svg{width:22px;color:var(--accent)}.skillcard h3{margin:18px 0 8px;font-size:16px}.skillcard p{color:var(--muted);margin:0;font-size:13px}.projectcard{background:linear-gradient(120deg,#1d0e12,#0f0e13);border:1px solid #54282e;border-radius:20px;grid-template-columns:1fr 1fr;gap:30px;margin-top:35px;padding:36px;display:grid}.projecttext h3{margin:20px 0 10px;font-size:30px}.projecttext p{color:var(--muted);font-size:15px}.status{color:#ff9aa1;background:#301116;border:1px solid #7e2934;border-radius:20px;padding:5px 11px;font-size:11px;display:inline-block}.chips{flex-wrap:wrap;gap:7px;margin:24px 0 30px;display:flex}.chips span{color:#eac0c4;background:#2c161a;border-radius:6px;padding:5px 9px;font-size:11px}.diagram{text-align:center;background:radial-gradient(circle at 50% 35%,#2c1117,#111017 72%);border:1px solid #55282e;border-radius:15px;flex-direction:column;justify-content:center;align-items:center;min-height:300px;padding:28px 20px;display:flex}.diagramnode{color:#ffdadc;letter-spacing:.5px;background:#251115;border:1px solid #95424b;border-radius:9px;min-width:145px;padding:10px 15px;font-size:12px;font-weight:700}.diagramnode small{color:#c89fa3;margin-top:2px;font-size:9px;font-weight:400;display:block}.diagramnode.purple{border-color:#ff454f}.connector{color:#ef7d86;font-size:19px;line-height:1.7}.diagramrow{gap:15px;display:flex}.diagramnote{color:#968085;margin:20px 0 0;font-size:10px}.contactlinks{flex-wrap:wrap;gap:12px;margin-top:26px;display:flex}.contactlinks a{border:1px solid #754149;border-radius:10px;align-items:center;gap:10px;padding:12px 18px;display:flex}.placeholder{color:#b79da0;border:1px dashed #4c3b60;border-radius:10px;max-width:600px;margin-top:25px;padding:15px;font-size:13px}.footer{color:#998b8e;border-top:1px solid #32191d;font-size:12px}.footinner{justify-content:space-between;gap:20px;padding-top:25px;padding-bottom:25px;display:flex}.case{padding-top:60px;padding-bottom:100px}.back{color:#c9b0b3;align-items:center;gap:9px;margin-bottom:55px;font-size:13px;display:inline-flex}.case h1{max-width:900px}.lead{color:#d0babc;margin-bottom:25px;font-size:18px}.case>.diagram{margin:45px 0 65px}.casegrid{grid-template-columns:220px 1fr;gap:65px;display:grid}.caseaside p{color:#bda6aa;font-size:13px}.caseblock{border-top:1px solid #3c2125;padding:30px 0}.caseblock h2{letter-spacing:-.5px;margin:13px 0 18px;font-size:25px;line-height:1.3}.caseblock p{margin:0 0 16px}@media (max-width:800px){.skillgrid{grid-template-columns:repeat(2,1fr)}.projectcard{grid-template-columns:1fr}.casegrid{grid-template-columns:1fr;gap:15px}.hero{min-height:600px;padding-top:90px}}@media (max-width:600px){.shell{padding-left:20px;padding-right:20px}.navlinks{background:#150d10;flex-direction:column;gap:20px;padding:24px;display:none;position:absolute;top:75px;left:0;right:0}.navlinks.show,.mobilemenu{display:flex}.hero h1{letter-spacing:-1.4px}.hero{padding-top:90px;padding-bottom:60px}.hero-code{gap:12px;margin-top:65px}.section{padding-top:75px;padding-bottom:75px}.skillgrid{grid-template-columns:1fr}.projectcard{padding:22px}.diagramrow{gap:7px}.diagramnode{min-width:115px;padding:9px;font-size:10px}.footinner{flex-direction:column}.case{padding-top:35px}.case h1{font-size:35px}}html{scroll-behavior:smooth}body{color:#fff6f6;background:#09090b}button,input,select,textarea{font:inherit}button{cursor:pointer}.logo{letter-spacing:-.04em;font-size:1.3rem}.logo span{color:#ff454f}.navlinks .current{color:#ff7178}.navlinks a{white-space:nowrap}.inner-page{min-height:75vh;padding-top:125px;padding-bottom:110px}.inner-page h1{max-width:850px;margin:22px 0;font-size:clamp(2.5rem,5vw,4.6rem);line-height:1.12}.inner-page .lead{max-width:820px}.subsection{margin-top:85px;scroll-margin-top:100px}.subsection h2{margin:18px 0 25px;font-size:clamp(1.8rem,3vw,2.7rem)}.lab{background:#110c0e;border:1px solid #50262d;border-radius:18px;max-width:960px;padding:24px}.lab-top,.lab-file{justify-content:space-between;align-items:center;gap:12px;display:flex}.lab-top span:first-child{color:#ffe2e4;align-items:center;gap:10px;font-weight:700;display:flex}.dots{color:#ff454f;letter-spacing:5px;font-size:12px}.lab-tabs{flex-wrap:wrap;gap:8px;margin:24px 0;display:flex}.lab-tabs button{color:#e9c6c9;background:#21192e;border:1px solid #63353c;border-radius:9px;padding:10px 15px}.lab-tabs button.chosen{color:#fff;background:#a70a18;border-color:#ff454f}.lab-editor{background:#0b0b12;border:1px solid #4a272e;border-radius:12px;overflow:hidden}.lab-file{color:#ff7178;border-bottom:1px solid #4a272e;padding:13px 18px;font-size:13px}.lab-file button{color:#ffe2e4;background:0 0;border:0;align-items:center;gap:6px;display:flex}.lab pre{color:#ffe2e4;min-height:230px;margin:0;padding:22px;font-size:13px;line-height:1.7;overflow:auto}.fineprint{color:#b8a3a6;margin-top:14px;font-size:13px;line-height:1.6}.tech-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;max-width:850px;display:grid}.tech-card{color:#f6e8e9;background:#171013;border:1px solid #4b252b;border-radius:14px;flex-direction:column;align-items:center;gap:14px;padding:24px;transition:border-color .2s,transform .2s;display:flex}.tech-card svg{color:#ff454f}.tech-card:hover{transform:translateY(-2px)}.tech-card.selected{background:#301115;border-color:#ff454f}.tech-detail{background:#171013;border:1px solid #4b252b;border-radius:12px;flex-direction:column;gap:8px;max-width:850px;margin-top:14px;padding:20px;display:flex}.tech-detail span{color:#d5bfc2}.projects-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin-top:35px;display:grid}.project-tile,.service-card,.education-card{background:#160f12;border:1px solid #4b252b;border-radius:17px;padding:28px}.project-tile h3{margin:20px 0 12px;font-size:1.7rem}.project-tile p,.service-card p{color:#d5bfc2;line-height:1.7}.project-tile .chips{margin:20px 0}.text-link{color:#ff7178;align-items:center;gap:7px;margin-top:20px;font-weight:700;display:inline-flex}.service-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;margin-top:35px;display:grid}.service-card svg{color:#ff454f}.service-card h2,.service-card h3{margin:18px 0 10px;font-size:1.28rem}.cta-panel{background:linear-gradient(135deg,#290e13,#121019);border:1px solid #8b303a;border-radius:18px;margin-top:45px;padding:34px}.cta-panel p{color:#d5bfc2;max-width:670px;margin:12px 0 22px}.education-card{gap:22px;max-width:900px;display:flex}.education-card svg{color:#ff7178;flex-shrink:0}.education-card strong{color:#ff7178}.education-card p{color:#d5bfc2;line-height:1.75}.contact-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:36px;display:grid}.contact-grid a,.contact-grid button{color:#fff0f0;background:#171013;border:1px solid #4b252b;border-radius:12px;justify-content:space-between;align-items:center;gap:10px;padding:20px;text-decoration:none;display:flex}.contact-grid svg{color:#ff454f}.contact-grid span{color:#ff7178;font-size:12px}.quote-form{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;max-width:840px;display:grid}.quote-form label{color:#ffe2e4;flex-direction:column;gap:8px;font-weight:600;display:flex}.quote-form input,.quote-form select,.quote-form textarea{color:#fff;background:#171013;border:1px solid #67383f;border-radius:9px;min-width:0;padding:13px}.quote-form .disabled-submit,.quote-form .fineprint{grid-column:1/-1}.quote-form label:has(textarea){grid-column:1/-1}.disabled-submit{opacity:.55;cursor:not-allowed;justify-content:center}.diagram-wrapper{margin:40px 0}.back{color:#ff7178;align-items:center;gap:8px;margin-bottom:32px;display:inline-flex}.casegrid{grid-template-columns:240px 1fr;gap:50px;margin-top:40px;display:grid}.caseblock{border-bottom:1px solid #4d272d;padding:25px 0}.caseblock h2{margin:14px 0}.caseblock p{color:#d5bfc2;line-height:1.8}.caseaside{color:#d5bfc2}.hero{min-height:initial;padding-top:160px;padding-bottom:95px}.section{padding-top:75px;padding-bottom:75px}.header{z-index:30}.inner-page .skillgrid{margin-top:30px}@media (max-width:850px){.projects-grid,.service-grid,.contact-grid{grid-template-columns:1fr}.tech-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.casegrid{grid-template-columns:1fr;gap:10px}.inner-page{padding-top:105px}.quote-form{grid-template-columns:1fr}}@media (max-width:600px){.lab{padding:14px}.lab pre{padding:15px;font-size:12px}.project-tile,.service-card{padding:20px}.education-card{flex-direction:column}.tech-card{padding:17px 9px}.inner-page h1{font-size:2.5rem}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}.cursor-effects{z-index:25;pointer-events:none;contain:strict;position:fixed;inset:0;overflow:hidden}.cursor-glow{width:260px;height:260px;transform:translate3d(calc(var(--cursor-x,-400px) - 50%),calc(var(--cursor-y,-400px) - 50%),0);opacity:0;will-change:transform;background:radial-gradient(circle,#dc182a26 0%,#dc182a0f 38%,#0000 72%);border-radius:50%;transition:opacity .25s;position:absolute;top:0;left:0}.cursor-glow.is-active{opacity:1}.cursor-particles{width:100%;height:100%;display:block}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){:is(.skillcard,.projectcard,.project-tile,.service-card,.education-card,.tech-card,.contact-grid a,.contact-grid button,.cta-panel){will-change:auto;transition:transform .23s,border-color .23s,box-shadow .23s}:is(.skillcard,.projectcard,.project-tile,.service-card,.education-card,.tech-card,.contact-grid a,.contact-grid button,.cta-panel):hover{border-color:#ff454fa6;transform:translateY(-3px);box-shadow:0 12px 34px #dc182a21}:is(.primary,.secondary,.text-link,.lab-tabs button,.lab-file button,.navlinks a,.back){transition:color .2s,background-color .2s,box-shadow .2s,transform .2s}:is(.primary,.secondary):not(:disabled):hover{transform:translateY(-2px);box-shadow:0 0 22px #ef273740}}:where(a,button,input,textarea,select):focus-visible{outline-offset:3px;outline:2px solid #ff7178}@media (hover:none),(pointer:coarse),(prefers-reduced-motion:reduce){.cursor-effects{display:none}}.logo{letter-spacing:normal;align-items:center;gap:9px;min-width:0;line-height:1;text-decoration:none;display:inline-flex}.brand-symbol{flex:none;width:32px;height:36px;display:block}.brand-name{white-space:nowrap;flex-direction:column;gap:3px;display:flex}.brand-name strong{letter-spacing:.18em;color:#fff;font-size:14px;font-weight:850}.brand-name em{letter-spacing:.19em;color:#ff646e;font-size:8px;font-style:normal;font-weight:700}.brand-name small{letter-spacing:.08em;color:#c7b7b9;font-size:8px}@media (max-width:600px){.brand-symbol{width:26px;height:30px}.brand-name strong{font-size:11px}.brand-name em,.brand-name small{font-size:7px}.logo{gap:6px}}.future-section{border-top:1px solid #442328;margin-top:clamp(58px,7vw,100px);padding-top:48px}.future-section h2{letter-spacing:-.035em;margin:16px 0;font-size:clamp(28px,3.5vw,42px);line-height:1.2}.future-section .section-intro{max-width:750px;margin:0 0 28px}.future-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.future-card{background:linear-gradient(145deg,#1b1013,#120e11);border:1px solid #49262c;border-radius:15px;min-width:0;padding:22px}.future-card-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.future-icon{color:#ff6670;font-size:25px;line-height:1}.future-status{color:#ffc3c7;white-space:nowrap;border:1px solid #71313a;border-radius:999px;padding:4px 9px;font-size:11px;line-height:1.4}.future-card h3{margin:16px 0 4px;font-size:20px;line-height:1.25}.future-category{color:#ff7b84;font-size:12px;font-weight:700}.future-card p{color:#d2bfc2;margin:12px 0 0;font-size:13px;line-height:1.7}@media (max-width:650px){.future-grid{grid-template-columns:1fr}.future-card{padding:20px}}@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference){.future-card{transition:transform .23s,border-color .23s,box-shadow .23s}.future-card:hover{border-color:#e44754;transform:translateY(-3px);box-shadow:0 12px 34px #dc182a21}}
