/*! tailwindcss v4.1.18 | MIT License | https://tailwindcss.com */@layer properties{@supports ((-webkit-hyphens:none) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-border-style:solid}}}@layer theme{:root,:host{--font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::-moz-placeholder{opacity:1}::placeholder{opacity:1}@supports (not (-webkit-appearance:-apple-pay-button)) or (contain-intrinsic-size:1px){::-moz-placeholder{color:currentColor}::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::-moz-placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;-moz-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;-moz-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.visible{visibility:visible}.absolute{position:absolute}.fixed{position:fixed}.static{position:static}.block{display:block}.grid{display:grid}.hidden{display:none}.table{display:table}.border{border-style:var(--tw-border-style);border-width:1px}.italic{font-style:italic}}:root{color-scheme:dark;color:#ffffffe6;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#1a1a1a;font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-weight:400;line-height:1.5}*,:before,:after{box-sizing:border-box}body{min-height:100vh;margin:0}a{color:inherit;text-decoration:none}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}:root{--bg-primary: #0f0f12;--bg-secondary: #14141a;--bg-accent: #1a1a22;--burnt-orange: #c45c1c;--burnt-orange-light: #d4702e;--burnt-orange-dark: #a34a15;--text-primary: #ffffff;--text-secondary: #9a9aa8;--text-muted: #5a5a68}.page{background:var(--bg-primary);color:var(--text-primary);min-height:100vh;width:100%;margin:0;padding-top:72px;display:flex;flex-direction:column;font-family:Inter,system-ui,-apple-system,sans-serif;position:relative;overflow-x:hidden}.nav{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 4rem;position:fixed;top:0;left:0;right:0;z-index:100;background:#0f0f12f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid rgba(255,255,255,.05)}.nav__brand{font-size:1.25rem;font-weight:700;letter-spacing:-.02em;text-decoration:none;transition:opacity .2s ease}.nav__brand:hover{opacity:.8}.nav__brand-solder{color:var(--text-muted)}.nav__brand-code{color:var(--burnt-orange)}.nav__brand-dev{color:var(--text-secondary)}.nav__links{display:flex;gap:2.5rem}.nav__link{color:var(--text-secondary);text-decoration:none;font-size:.9rem;font-weight:500;transition:color .2s ease}.nav__link:hover,.nav__link--active{color:var(--text-primary)}.hero{flex:1;display:flex;align-items:center;padding:2rem 4rem 4rem;position:relative}.hero__content{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;width:100%;max-width:1400px;margin:0 auto}.hero__text{animation:fadeInLeft .8s ease-out}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.hero__tagline{font-size:.9rem;color:var(--burnt-orange);margin:0 0 1rem;text-transform:uppercase;letter-spacing:.1em;font-weight:600}.hero__title{font-size:3.5rem;font-weight:800;line-height:1.1;margin:0 0 2.5rem;color:var(--text-primary)}.strikethrough{position:relative;color:var(--text-muted);display:inline-block}.strikethrough:after{content:"";position:absolute;left:-4px;right:-4px;top:50%;height:4px;background:var(--burnt-orange);transform:rotate(-4deg);border-radius:2px}.handwritten{font-family:Caveat,Brush Script MT,Segoe Script,cursive;color:var(--burnt-orange);font-size:.85em;font-weight:700;position:absolute;left:50%;top:100%;transform:translate(-50%) rotate(-3deg);white-space:nowrap;margin-top:-.2em}.hero__subtitle{font-size:1.75rem;font-weight:600;color:var(--burnt-orange);margin:0 0 1.5rem;min-height:4.5rem;display:flex;align-items:center}.hero__description{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin:0 0 2rem;max-width:480px}.hero__image{position:relative;display:flex;justify-content:center;align-items:center;animation:fadeInRight .8s ease-out}@keyframes fadeInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.hero__image-accent{position:absolute;width:90%;height:90%;background:linear-gradient(135deg,var(--burnt-orange) 0%,var(--burnt-orange-dark) 100%);border-radius:30% 70% 70% 30%/30% 30% 70% 70%;opacity:.85;z-index:0;animation:morphShape 8s ease-in-out infinite}@keyframes morphShape{0%,to{border-radius:30% 70% 70% 30%/30% 30% 70% 70%}50%{border-radius:70% 30% 30% 70%/70% 70% 30% 30%}}.hero__logo{position:relative;z-index:1;width:100%;max-width:400px;border-radius:16px;box-shadow:0 20px 60px #00000080}.slogan-rotator{display:block;width:100%}.slogan-text{transition:opacity .3s ease,transform .3s ease;margin:0}.slogan-text.visible{opacity:1;transform:translateY(0)}.slogan-text.hidden{opacity:0;transform:translateY(8px)}.social-links{display:flex;flex-direction:column;align-items:flex-start;gap:1rem}.social-links__primary{display:flex;gap:1rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;gap:.6rem;padding:.875rem 1.75rem;border-radius:4px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer}.btn--outline{background:transparent;color:var(--burnt-orange);border:2px solid var(--burnt-orange)}.btn--outline:hover{background:var(--burnt-orange);color:#fff;box-shadow:0 4px 20px #c45c1c59;transform:translateY(-2px)}.btn--solid{background:var(--burnt-orange);color:#fff;border:2px solid var(--burnt-orange)}.btn--solid:hover{background:var(--burnt-orange-light);border-color:var(--burnt-orange-light);box-shadow:0 4px 20px #c45c1c66;transform:translateY(-2px)}.social-links__secondary{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-muted);font-size:.85rem;text-decoration:none;transition:color .2s ease}.social-links__secondary:hover{color:var(--burnt-orange)}.social-links__secondary .coming-soon{font-size:.7rem;color:var(--text-muted);background:var(--bg-accent);padding:.25rem .6rem;border-radius:4px;border:1px solid rgba(255,255,255,.06)}.footer{font-size:.75rem;color:var(--text-muted);text-align:center;padding:1.5rem}@media (max-width: 1024px){.nav{padding:1.25rem 2rem}.hero{padding:2rem}.hero__content{gap:2rem}.hero__title{font-size:2.75rem}.hero__subtitle{font-size:1.5rem}}@media (max-width: 768px){.nav{flex-direction:column;gap:1rem;padding:1rem 1.5rem}.nav__links{gap:1.5rem;flex-wrap:wrap;justify-content:center}.hero{padding:1.5rem}.hero__content{grid-template-columns:1fr;text-align:center}.hero__text{order:2}.hero__image{order:1}.hero__description{max-width:100%}.hero__title{font-size:2.25rem}.hero__subtitle{font-size:1.25rem}.hero__logo{max-width:280px}.hero__image-accent{width:85%;height:85%}.social-links{align-items:center}.social-links__primary{flex-direction:column;width:100%;max-width:280px}.btn{width:100%;justify-content:center}}@media (prefers-reduced-motion: reduce){.hero__text,.hero__image,.hero__image-accent{animation:none}.slogan-text,.btn,.nav__link,.social-links__secondary{transition:none}}.projects{flex:1;padding:2rem 4rem 4rem;max-width:1200px;margin:0 auto;width:100%}.projects__header{text-align:center;margin-bottom:3rem}.projects__title{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin:0 0 1rem}.projects__subtitle{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.projects__grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(340px,1fr));gap:2rem}.project-card{background:var(--bg-secondary);border-radius:12px;overflow:hidden;text-decoration:none;transition:transform .3s ease,box-shadow .3s ease;border:1px solid rgba(255,255,255,.05)}.project-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #c45c1c26;border-color:#c45c1c4d}.project-card__image{width:100%;height:200px;overflow:hidden;background:var(--bg-accent)}.project-card__image img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover;transition:transform .3s ease}.project-card:hover .project-card__image img{transform:scale(1.05)}.project-card__content{padding:1.5rem}.project-card__title{font-size:1.25rem;font-weight:700;color:var(--text-primary);margin:0 0 .75rem}.project-card__description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0 0 1rem}.project-card__tags{display:flex;flex-wrap:wrap;gap:.5rem}.project-card__tag{font-size:.75rem;color:var(--burnt-orange);background:#c45c1c26;padding:.25rem .75rem;border-radius:4px;font-weight:500}.project-detail{flex:1;padding:2rem 4rem 4rem;max-width:900px;margin:0 auto;width:100%}.project-detail__back{display:inline-flex;align-items:center;gap:.5rem;color:var(--text-secondary);text-decoration:none;font-size:.9rem;margin-bottom:2rem;transition:color .2s ease}.project-detail__back:hover{color:var(--burnt-orange)}.project-detail__header{margin-bottom:2rem}.project-detail__title{font-size:2.75rem;font-weight:800;color:var(--text-primary);margin:0 0 .5rem;line-height:1.2}.project-detail__subtitle{font-size:1.25rem;color:var(--text-secondary);margin:0 0 1rem}.project-detail__tags{display:flex;flex-wrap:wrap;gap:.5rem}.skip-link{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:1.5rem auto 0;padding:.75rem 1.25rem;background:linear-gradient(135deg,#c45c1c1a,#c45c1c0d);border:1px dashed rgba(196,92,28,.4);border-radius:8px;color:var(--text-secondary);font-size:.9rem;font-style:italic;text-decoration:none;transition:all .2s ease;width:-moz-fit-content;width:fit-content}.skip-link:hover{background:linear-gradient(135deg,#c45c1c33,#c45c1c1a);border-color:var(--burnt-orange);color:var(--burnt-orange);transform:translateY(-2px)}.skip-link__icon{font-size:1.1rem;animation:bounce 2s ease infinite}@keyframes bounce{0%,20%,50%,80%,to{transform:translateY(0)}40%{transform:translateY(4px)}60%{transform:translateY(2px)}}.project-detail__hero{margin-bottom:2.5rem;border-radius:12px;overflow:hidden;background:var(--bg-secondary)}.project-detail__hero img{width:100%;height:auto;display:block}.project-section{margin-bottom:3rem}.project-detail__section{margin-bottom:4rem}.project-detail__section h2{font-size:1.5rem;font-weight:700;color:var(--burnt-orange);margin:0 0 1.5rem;padding-bottom:.5rem;border-bottom:2px solid var(--bg-accent)}.project-detail__section h3{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:2rem 0 1rem}.project-detail__section p{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin:0 0 1.25rem}.project-section h2{font-size:1.5rem;font-weight:700;color:var(--burnt-orange);margin:0 0 1rem;padding-bottom:.5rem;border-bottom:2px solid var(--bg-accent)}.project-section h3{font-size:1.15rem;font-weight:600;color:var(--text-primary);margin:1.5rem 0 .75rem}.project-section p{font-size:1rem;line-height:1.7;color:var(--text-secondary);margin:0 0 1rem}.project-section ul,.project-section ol{color:var(--text-secondary);line-height:1.7;padding-left:1.5rem;margin:0 0 1rem}.project-section li{margin-bottom:.5rem}.project-section strong{color:var(--text-primary)}.project-section em{color:var(--burnt-orange-light);font-style:italic}.project-section code{background:var(--bg-accent);padding:.2rem .5rem;border-radius:4px;font-size:.9em;color:var(--burnt-orange-light)}.features-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.25rem;margin-top:1.5rem}.feature-card{background:var(--bg-secondary);padding:1.25rem;border-radius:8px;border:1px solid rgba(255,255,255,.05)}.feature-card h3{font-size:1rem;font-weight:600;color:var(--text-primary);margin:0 0 .5rem}.feature-card p{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.code-block{background:var(--bg-secondary);border:1px solid var(--bg-accent);border-radius:8px;padding:1rem 1.25rem;overflow-x:auto;font-family:Fira Code,Consolas,Monaco,monospace;font-size:.85rem;line-height:1.6;color:var(--text-secondary);white-space:pre;margin:1rem 0}.parts-list{-moz-columns:2;columns:2;-moz-column-gap:2rem;column-gap:2rem}.parts-list li{-moz-column-break-inside:avoid;break-inside:avoid}.pcb-showcase{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin:1.5rem 0}.pcb-showcase__item{display:flex;flex-direction:column;align-items:center;background:var(--bg-secondary);border-radius:12px;overflow:hidden;border:1px solid rgba(255,255,255,.05);transition:transform .3s ease,box-shadow .3s ease}.pcb-showcase__item:hover{transform:translateY(-4px);box-shadow:0 12px 40px #c45c1c26;border-color:#c45c1c4d}.pcb-showcase__item img{width:100%;height:200px;-o-object-fit:cover;object-fit:cover;display:block}.pcb-showcase__item span{padding:.75rem;font-size:.85rem;color:var(--text-secondary);font-weight:500;text-align:center}@media (max-width: 768px){.pcb-showcase{grid-template-columns:1fr;gap:1rem}.pcb-showcase__item img{height:180px}}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1rem}.gallery-item{position:relative;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.05);border-radius:8px;overflow:hidden;cursor:pointer;padding:0;transition:transform .2s ease,box-shadow .2s ease}.gallery-item:hover{transform:scale(1.02);box-shadow:0 8px 24px #0000004d;border-color:#c45c1c4d}.gallery-item img{width:100%;height:140px;-o-object-fit:cover;object-fit:cover;display:block}.gallery-item__caption{display:block;font-size:.8rem;color:var(--text-muted);padding:.5rem .75rem;text-align:left}.lightbox{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:1000;padding:2rem;cursor:pointer}.lightbox__close{position:absolute;top:1.5rem;right:1.5rem;background:none;border:none;color:var(--text-secondary);cursor:pointer;padding:.5rem;transition:color .2s ease}.lightbox__close:hover{color:var(--text-primary)}.lightbox img{max-width:90%;max-height:80vh;-o-object-fit:contain;object-fit:contain;border-radius:8px}.lightbox__caption{color:var(--text-secondary);font-size:.95rem;margin-top:1rem;text-align:center}.project-section--links{text-align:center;padding:2rem;background:var(--bg-secondary);border-radius:12px;border:1px solid rgba(255,255,255,.05)}.project-section--links h2{border-bottom:none;padding-bottom:0}.project-section--links .btn{display:inline-flex;align-items:center;gap:.6rem;padding:.875rem 1.75rem;border-radius:4px;font-size:.9rem;font-weight:600;text-decoration:none;transition:all .2s ease;background:var(--burnt-orange);color:#fff;border:2px solid var(--burnt-orange)}.project-section--links .btn:hover{background:var(--burnt-orange-light);border-color:var(--burnt-orange-light);box-shadow:0 4px 20px #c45c1c66;transform:translateY(-2px)}.project-detail__license{font-size:.85rem;color:var(--text-muted);margin-top:1rem}.project-section--credits{text-align:center;padding-top:2rem;margin-top:3rem;border-top:1px solid var(--bg-accent)}.project-section--credits p{text-align:center}.callsign{font-size:1.5rem;font-weight:700;color:var(--burnt-orange)}.disclaimer{font-size:.9rem;color:var(--text-muted);background:#ff64641a;padding:1rem;border-radius:8px;border-left:3px solid #c44}.disclaimer strong{color:#f66}.highlight-box{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.05);border-left:4px solid var(--burnt-orange);border-radius:8px;padding:1.5rem;margin:1.5rem 0}.highlight-box h4{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 1rem}.highlight-box ul{margin:0;padding-left:1.25rem}.highlight-box li{margin-bottom:.5rem;color:var(--text-secondary)}.highlight-box li:last-child{margin-bottom:0}.highlight-box p{margin:0 0 .75rem;color:var(--text-secondary)}.highlight-box p:last-child{margin-bottom:0}.highlight-box--success{border-left-color:#49cc90}.highlight-box--info{border-left-color:#61affe;background:#61affe0d}.links-section{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1rem;margin:1.5rem 0 0}.link-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:12px;border:1px solid rgba(255,255,255,.05);text-decoration:none;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.link-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c45c1c26;border-color:#c45c1c4d}.link-card__icon{font-size:1.75rem;flex-shrink:0}.link-card__content{flex:1;min-width:0}.link-card__title{font-size:1rem;font-weight:700;color:var(--text-primary);display:block;margin-bottom:.25rem}.link-card__description{font-size:.85rem;color:var(--text-secondary)}.stats-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin:2rem 0}.stat-box{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1.5rem 1rem;text-align:center}.stat-box__value{display:block;font-size:2rem;font-weight:800;color:var(--burnt-orange);line-height:1;margin-bottom:.5rem}.stat-box__label{font-size:.8rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.05em}.process-timeline{display:flex;flex-direction:column;gap:1rem;margin:2rem 0 0}.process-step{display:flex;gap:1.25rem;align-items:flex-start;background:var(--bg-secondary);border:1px solid rgba(255,255,255,.05);border-radius:12px;padding:1.25rem;transition:border-color .2s ease}.process-step:hover{border-color:#c45c1c4d}.process-step__number{flex-shrink:0;width:48px;height:48px;background:var(--burnt-orange);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.1rem;font-weight:800;color:#fff}.process-step__content{flex:1}.process-step__title{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0 0 .35rem}.process-step__description{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.highlights-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:1.5rem 0 0}.highlight-card{display:flex;gap:1rem;align-items:flex-start;background:linear-gradient(135deg,#49cc9014,#49cc9005);border:1px solid rgba(73,204,144,.2);border-radius:12px;padding:1.25rem}.highlight-card__icon{font-size:1.5rem;flex-shrink:0}.highlight-card__content{flex:1}.highlight-card__title{font-size:1rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.highlight-card__description{font-size:.85rem;color:var(--text-secondary);margin:0;line-height:1.5}.workflow-steps{display:flex;justify-content:space-between;gap:.5rem;margin:2rem 0 0;padding:1.5rem;background:var(--bg-secondary);border-radius:12px;border:1px solid rgba(255,255,255,.05);overflow-x:auto}.workflow-step{flex:1;min-width:100px;text-align:center;position:relative}.workflow-step:not(:last-child):after{content:"→";position:absolute;right:-.5rem;top:1rem;color:var(--text-muted);font-size:1.25rem}.workflow-step__marker{width:36px;height:36px;background:var(--burnt-orange);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:.9rem;font-weight:700;color:#fff;margin:0 auto .75rem}.workflow-step__label{font-size:.85rem;font-weight:700;color:var(--text-primary);margin-bottom:.25rem}.workflow-step__description{font-size:.7rem;color:var(--text-muted);line-height:1.4}.callout-box{background:linear-gradient(135deg,#c45c1c1a,#c45c1c05);border:1px solid rgba(196,92,28,.3);border-radius:12px;padding:2.5rem;margin-top:1.5rem;text-align:center}.callout-box p{font-size:1.1rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.7}.callout-box p:last-child{margin-bottom:0}.callout-box__emphasis{font-size:1.25rem!important;font-weight:600;color:var(--burnt-orange)!important}.ai-note{background:linear-gradient(135deg,#61affe14,#61affe05);border:1px solid rgba(97,175,254,.2);border-left:4px solid #61affe;border-radius:12px;padding:2rem;margin-top:1.5rem;font-style:italic}.ai-note p{font-size:.95rem;color:var(--text-secondary);margin:0 0 1rem;line-height:1.7}.ai-note p:last-child{margin-bottom:0}.ai-note__signature{text-align:right;font-weight:600;color:#61affe!important;font-style:normal}.project-section--highlight{background:var(--bg-secondary);border-radius:16px;padding:2rem;border:1px solid rgba(255,255,255,.05)}.project-section--highlight h2{text-align:center;border-bottom:none;padding-bottom:0}.screenshot-gallery{display:flex;flex-direction:column;gap:2rem;margin-top:2rem}.screenshot-card{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.05);border-radius:12px;overflow:hidden;transition:border-color .2s ease}.screenshot-card:hover{border-color:#c45c1c4d}.screenshot-card__image{width:100%;background:var(--bg-accent)}.screenshot-card__image img{width:100%;height:auto;display:block}.screenshot-card__content{padding:1.5rem}.screenshot-card__title{font-size:1.1rem;font-weight:700;color:var(--burnt-orange);margin:0 0 .5rem}.screenshot-card__description{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin:0}.screenshot-card--clickable{cursor:pointer}.screenshot-card--clickable .screenshot-card__image{position:relative}.screenshot-card__overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .2s ease;color:#fff}.screenshot-card--clickable:hover .screenshot-card__overlay{opacity:1}.project-detail__hero--clickable{cursor:pointer;position:relative}.project-detail__hero-overlay{position:absolute;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;opacity:0;transition:opacity .2s ease;color:#fff;font-size:.9rem;border-radius:12px}.project-detail__hero--clickable:hover .project-detail__hero-overlay{opacity:1}.text-muted{color:var(--text-muted)}@media (max-width: 1024px){.projects,.project-detail{padding:1.5rem 2rem 3rem}.projects__title{font-size:2rem}.project-detail__title{font-size:2.25rem}}@media (max-width: 768px){.projects,.project-detail{padding:1rem 1.5rem 2rem}.projects__grid{grid-template-columns:1fr}.projects__title,.project-detail__title{font-size:1.75rem}.project-detail__subtitle{font-size:1rem}.features-grid{grid-template-columns:1fr}.gallery-grid{grid-template-columns:repeat(2,1fr)}.parts-list{-moz-columns:1;columns:1}.code-block{font-size:.75rem}.stats-row{grid-template-columns:repeat(2,1fr)}.workflow-steps{flex-wrap:wrap;justify-content:center;gap:1rem}.workflow-step{flex:0 0 calc(33% - 1rem)}.workflow-step:not(:last-child):after{display:none}.highlights-grid{grid-template-columns:1fr}}@media (max-width: 480px){.gallery-grid{grid-template-columns:1fr}.gallery-item img{height:180px}.stats-row{grid-template-columns:1fr 1fr;gap:.75rem}.stat-box{padding:1rem .75rem}.stat-box__value{font-size:1.5rem}.process-step{flex-direction:column;text-align:center}.process-step__number{margin:0 auto}.workflow-step{flex:0 0 calc(50% - .5rem)}.callout-box{padding:1.5rem 1rem}.callout-box p{font-size:1rem}.callout-box__emphasis{font-size:1.1rem!important}}@media (prefers-reduced-motion: reduce){.project-card,.project-card__image img,.gallery-item,.project-section--links .btn{transition:none}.project-card:hover,.gallery-item:hover,.project-card:hover .project-card__image img{transform:none}}.code-box{background:var(--bg-primary, #0f0f12);border:1px solid var(--bg-accent, #1a1a22);border-radius:8px;overflow:hidden;margin:1.5rem 0}.code-box__header{display:flex;justify-content:space-between;align-items:center;padding:.5rem 1rem;background:var(--bg-secondary, #14141a);border-bottom:1px solid var(--bg-accent, #1a1a22)}.code-box__title{display:flex;align-items:center;gap:.5rem}.code-box__filename{font-family:Fira Code,Consolas,monospace;font-size:.85rem;color:var(--burnt-orange, #c45c1c);font-weight:500}.code-box__title-text{font-size:.85rem;color:var(--text-secondary, #9a9aa8);font-weight:500}.code-box__actions{display:flex;align-items:center;gap:.75rem}.code-box__language{font-size:.7rem;color:var(--text-muted, #5a5a68);background:var(--bg-accent, #1a1a22);padding:.2rem .5rem;border-radius:4px;font-weight:600;letter-spacing:.05em}.code-box__copy{display:inline-flex;align-items:center;gap:.35rem;background:transparent;border:1px solid var(--bg-accent, #1a1a22);color:var(--text-muted, #5a5a68);font-size:.75rem;padding:.3rem .6rem;border-radius:4px;cursor:pointer;transition:all .2s ease;font-family:inherit}.code-box__copy:hover{color:var(--burnt-orange, #c45c1c);border-color:var(--burnt-orange, #c45c1c);background:#c45c1c1a}.code-box__editor{overflow:hidden}.code-box__editor .monaco-editor,.code-box__editor .monaco-editor .margin,.code-box__editor .monaco-editor-background,.code-box__editor .monaco-editor .lines-content{background:var(--bg-primary, #0f0f12)!important}.code-box__editor .monaco-scrollable-element>.scrollbar>.slider{background:#c45c1c4d!important;border-radius:4px}.code-box__editor .monaco-scrollable-element>.scrollbar>.slider:hover{background:#c45c1c80!important}@media (max-width: 768px){.code-box__header{flex-direction:column;align-items:flex-start;gap:.5rem}.code-box__actions{width:100%;justify-content:space-between}}.api-endpoint{background:var(--bg-secondary, #14141a);border:1px solid;border-radius:8px;margin:1rem 0;overflow:hidden}.api-endpoint__header{display:flex;align-items:center;gap:1rem;width:100%;padding:.75rem 1rem;border:none;cursor:pointer;text-align:left;transition:opacity .2s ease}.api-endpoint__header:hover{opacity:.9}.api-endpoint__method{font-size:.75rem;font-weight:700;padding:.35rem .75rem;border-radius:4px;text-transform:uppercase;letter-spacing:.05em;flex-shrink:0}.api-endpoint__path{font-family:Fira Code,Consolas,monospace;font-size:.9rem;color:var(--text-primary, #ffffff);font-weight:600;flex-shrink:0}.api-endpoint__summary{font-size:.85rem;color:var(--text-secondary, #9a9aa8);flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.api-endpoint__chevron{color:var(--text-muted, #5a5a68);transition:transform .2s ease;flex-shrink:0}.api-endpoint__chevron.expanded{transform:rotate(180deg)}.api-endpoint__content{padding:1rem 1.25rem;border-top:1px solid var(--bg-accent, #1a1a22);background:var(--bg-primary, #0f0f12)}.api-endpoint__description{margin-bottom:1.25rem}.api-endpoint__description p{color:var(--text-secondary, #9a9aa8);font-size:.9rem;line-height:1.6;margin:0}.api-endpoint__section{margin-bottom:1.5rem}.api-endpoint__section:last-child{margin-bottom:0}.api-endpoint__section-title{font-size:.85rem;font-weight:600;color:var(--burnt-orange, #c45c1c);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem;padding-bottom:.5rem;border-bottom:1px solid var(--bg-accent, #1a1a22)}.api-endpoint__table{width:100%;border-collapse:collapse;font-size:.85rem}.api-endpoint__table th,.api-endpoint__table td{text-align:left;padding:.6rem .75rem;border-bottom:1px solid var(--bg-accent, #1a1a22)}.api-endpoint__table th{color:var(--text-muted, #5a5a68);font-weight:600;font-size:.75rem;text-transform:uppercase;letter-spacing:.05em;background:var(--bg-secondary, #14141a)}.api-endpoint__table td{color:var(--text-secondary, #9a9aa8)}.api-endpoint__table code{background:var(--bg-accent, #1a1a22);padding:.15rem .4rem;border-radius:3px;font-size:.8rem;color:var(--burnt-orange-light, #d4702e)}.api-endpoint__type{font-size:.75rem;color:#61affe;background:#61affe1a;padding:.15rem .4rem;border-radius:3px;font-family:Fira Code,monospace}.api-endpoint__required{color:#f93e3e;font-weight:600}.api-endpoint__schema{margin-top:1rem}.api-endpoint__schema h5{font-size:.8rem;font-weight:600;color:var(--text-secondary, #9a9aa8);margin:0 0 .5rem}.api-endpoint__response{margin-bottom:1.25rem}.api-endpoint__response:last-child{margin-bottom:0}.api-endpoint__response-header{display:flex;align-items:center;gap:.75rem;margin-bottom:.75rem}.api-endpoint__status{font-size:.75rem;font-weight:700;padding:.25rem .6rem;border-radius:4px}.api-endpoint__status--success{background:#49cc9026;color:#49cc90}.api-endpoint__status--redirect{background:#fca13026;color:#fca130}.api-endpoint__status--error{background:#f93e3e26;color:#f93e3e}.api-endpoint__response-desc{font-size:.85rem;color:var(--text-secondary, #9a9aa8)}.api-endpoint__body-desc{font-size:.85rem;color:var(--text-secondary, #9a9aa8);margin:0 0 .75rem}@media (max-width: 768px){.api-endpoint__header{flex-wrap:wrap;gap:.5rem}.api-endpoint__summary{order:4;flex-basis:100%;white-space:normal;margin-top:.25rem}.api-endpoint__table{font-size:.8rem}.api-endpoint__table th,.api-endpoint__table td{padding:.5rem}}.gitlab-card{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.75rem;background:#2d333b;border-radius:12px;padding:1.5rem 2.5rem;text-decoration:none;transition:all .3s ease;border:1px solid rgba(255,255,255,.05);min-width:160px}.gitlab-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #fc6d2633;border-color:#fc6d264d;background:#363d47}.gitlab-card__logo{display:flex;align-items:center;justify-content:center}.gitlab-card__logo svg{filter:drop-shadow(0 4px 12px rgba(252,109,38,.3));transition:transform .3s ease}.gitlab-card:hover .gitlab-card__logo svg{transform:scale(1.1)}.gitlab-card__text{font-size:.85rem;font-weight:600;color:#adbac7;letter-spacing:.02em}.gitlab-card:hover .gitlab-card__text{color:#fff}.gitlab-card--inline{flex-direction:row;padding:.75rem 1.25rem;min-width:auto;gap:.5rem}.gitlab-card--inline .gitlab-card__logo svg{width:24px;height:24px}.gitlab-card--large{padding:2rem 3rem}.gitlab-card--large .gitlab-card__logo svg{width:64px;height:64px}.gitlab-card--large .gitlab-card__text{font-size:1rem}@media (max-width: 768px){.gitlab-card{padding:1.25rem 2rem}.gitlab-card__logo svg{width:40px;height:40px}}.lightbox-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#000000f2;z-index:9999;display:flex;align-items:center;justify-content:center;padding:2rem}.lightbox__close{position:absolute;top:1.5rem;right:1.5rem;background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:8px;color:#fff;cursor:pointer;padding:.75rem;transition:all .2s ease;z-index:10}.lightbox__close:hover{background:#fff3;border-color:#ffffff4d}.lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:12px;color:#fff;cursor:pointer;padding:1rem;transition:all .2s ease;z-index:10}.lightbox__nav:hover{background:#c45c1c4d;border-color:#c45c1c80}.lightbox__nav--prev{left:1.5rem}.lightbox__nav--next{right:1.5rem}.lightbox__content{display:flex;flex-direction:column;align-items:center;max-width:90vw;max-height:80vh}.lightbox__image{max-width:100%;max-height:70vh;-o-object-fit:contain;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px #00000080}.lightbox__caption{margin-top:1.5rem;text-align:center;max-width:800px}.lightbox__title{font-size:1.25rem;font-weight:700;color:var(--burnt-orange, #c45c1c);margin:0 0 .5rem}.lightbox__description{font-size:.95rem;color:#fffc;line-height:1.6;margin:0}.lightbox__counter{position:absolute;top:1.5rem;left:50%;transform:translate(-50%);background:#ffffff1a;border:1px solid rgba(255,255,255,.2);border-radius:20px;padding:.5rem 1rem;color:#fff;font-size:.9rem;font-weight:500}.lightbox__thumbnails{position:absolute;bottom:1.5rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;padding:.75rem;background:#0009;border-radius:12px;max-width:90vw;overflow-x:auto}.lightbox__thumbnail{flex-shrink:0;width:60px;height:40px;border-radius:6px;overflow:hidden;cursor:pointer;border:2px solid transparent;padding:0;background:none;transition:all .2s ease;opacity:.5}.lightbox__thumbnail:hover{opacity:.8}.lightbox__thumbnail--active{border-color:var(--burnt-orange, #c45c1c);opacity:1}.lightbox__thumbnail img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}@media (max-width: 768px){.lightbox-overlay{padding:1rem}.lightbox__nav{padding:.75rem}.lightbox__nav--prev{left:.5rem}.lightbox__nav--next{right:.5rem}.lightbox__close{top:1rem;right:1rem;padding:.5rem}.lightbox__counter{top:1rem}.lightbox__image{max-height:60vh}.lightbox__thumbnails{bottom:1rem;padding:.5rem}.lightbox__thumbnail{width:50px;height:34px}.lightbox__caption{margin-top:1rem;padding:0 1rem}.lightbox__title{font-size:1.1rem}.lightbox__description{font-size:.85rem}}@media (prefers-reduced-motion: reduce){.lightbox__close,.lightbox__nav,.lightbox__thumbnail{transition:none}}.get-it-block{width:100%}.get-it-block__grid{display:flex;flex-direction:column;gap:1.5rem}.get-it-block__card{background:var(--bg-secondary);border:1px solid rgba(255,255,255,.08);border-radius:12px;overflow:hidden;transition:border-color .2s ease,transform .2s ease}.get-it-block__card:hover{transform:translateY(-2px)}.get-it-block__card--gitlab:hover{border-color:#fc6d2666}.get-it-block__card--docker:hover{border-color:#2496ed66}.get-it-block__card-header{display:flex;align-items:center;gap:.75rem;padding:1.25rem 1.5rem;border-bottom:1px solid rgba(255,255,255,.05)}.get-it-block__card--gitlab .get-it-block__card-header{background:linear-gradient(135deg,#fc6d261a,#e243290d)}.get-it-block__card--docker .get-it-block__card-header{background:linear-gradient(135deg,#2496ed1a,#2496ed0d)}.get-it-block__card-header h4{margin:0;font-size:1.1rem;font-weight:700;color:var(--text-primary)}.get-it-block__brand-icon{height:32px;width:auto;flex-shrink:0}.get-it-block__card-content{padding:1.5rem;display:flex;flex-direction:column;gap:1rem}.get-it-block__primary-btn{display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.875rem 1.5rem;border-radius:8px;font-weight:600;font-size:.95rem;text-decoration:none;transition:all .2s ease}.get-it-block__primary-btn--gitlab{background:linear-gradient(135deg,#fc6d26,#e24329);color:#fff}.get-it-block__primary-btn--gitlab:hover{background:linear-gradient(135deg,#fd8548,#e85a3d);transform:translateY(-1px);box-shadow:0 4px 12px #fc6d264d}.get-it-block__command{display:flex;align-items:center;gap:.5rem;background:var(--bg-accent);border:1px solid rgba(255,255,255,.08);border-radius:8px;padding:.75rem 1rem}.get-it-block__command code{flex:1;font-family:Fira Code,Consolas,monospace;font-size:.8rem;color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.get-it-block__copy-btn{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:transparent;border:1px solid rgba(255,255,255,.1);border-radius:6px;cursor:pointer;transition:all .2s ease;font-size:.9rem}.get-it-block__copy-btn:hover{background:#ffffff0d;border-color:var(--burnt-orange)}.get-it-block__compose{margin-top:.5rem}.get-it-block__compose .code-box{margin:0}.get-it-block__note{font-size:.85rem;color:var(--text-muted);font-style:italic;margin:0;padding-top:.25rem}@media (max-width: 768px){.get-it-block__command{flex-direction:column;align-items:stretch;gap:.75rem}.get-it-block__command code{text-align:center;white-space:normal;word-break:break-all}.get-it-block__copy-btn{width:100%;height:auto;padding:.5rem}}.about{flex:1;padding:2rem 4rem 4rem;max-width:900px;margin:0 auto;width:100%}.about__header{text-align:center;margin-bottom:3rem}.about__title{font-size:2.5rem;font-weight:800;color:var(--text-primary);margin:0 0 1rem}.about__subtitle{font-size:1.1rem;color:var(--text-secondary);max-width:600px;margin:0 auto;line-height:1.6}.about__section{margin-bottom:3rem}.about__section-title{font-size:1.5rem;font-weight:700;color:var(--burnt-orange);margin:0 0 1.5rem;padding-bottom:.75rem;border-bottom:2px solid var(--bg-accent)}.about__section-intro{font-size:1rem;color:var(--text-secondary);margin:0 0 1.5rem;line-height:1.6}.about__intro p{font-size:1rem;color:var(--text-secondary);line-height:1.8;margin:0 0 1.25rem}.about__intro p:last-child{margin-bottom:0}.about__image{margin:1.5rem 0;text-align:center}.about__image img{display:block;max-width:100%;max-height:400px;margin:0 auto;border-radius:12px;border:1px solid rgba(255,255,255,.1);box-shadow:0 8px 24px #0000004d}.about__image-caption{display:block;margin-top:.75rem;font-size:.9rem;color:var(--text-secondary);font-style:italic}.interests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1.25rem}.interest-card{display:flex;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:12px;border:1px solid rgba(255,255,255,.05);transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.interest-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c45c1c1a;border-color:#c45c1c33}.interest-card__icon{font-size:2rem;flex-shrink:0;line-height:1}.interest-card__content{flex:1;min-width:0}.interest-card__title{font-size:1.1rem;font-weight:700;color:var(--text-primary);margin:0 0 .25rem}.interest-card__subtitle{font-size:.85rem;color:var(--burnt-orange);font-weight:500;display:block;margin-bottom:.5rem}.interest-card__description{font-size:.9rem;color:var(--text-secondary);margin:0;line-height:1.5}.skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem}.skill-category{background:var(--bg-secondary);border-radius:12px;padding:1.25rem;border:1px solid rgba(255,255,255,.05)}.skill-category__title{font-size:.85rem;font-weight:700;color:var(--burnt-orange);text-transform:uppercase;letter-spacing:.05em;margin:0 0 .75rem}.skill-category__items{display:flex;flex-wrap:wrap;gap:.5rem}.skill-pill{font-size:.8rem;font-weight:500;color:var(--text-secondary);background:var(--bg-accent);padding:.35rem .75rem;border-radius:20px;white-space:nowrap}.contact-links{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:1.25rem}.contact-card{display:flex;align-items:center;gap:1rem;padding:1.25rem;background:var(--bg-secondary);border-radius:12px;border:1px solid rgba(255,255,255,.05);text-decoration:none;transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}.contact-card:hover{transform:translateY(-2px);box-shadow:0 8px 24px #c45c1c26;border-color:#c45c1c4d}.contact-card__icon{font-size:1.75rem;flex-shrink:0}.contact-card__content{flex:1;min-width:0}.contact-card__title{font-size:1rem;font-weight:700;color:var(--text-primary);display:block;margin-bottom:.25rem}.contact-card__description{font-size:.85rem;color:var(--text-secondary)}.text-orange{color:var(--burnt-orange);font-weight:600}.text-green{color:#49cc90;font-weight:600}.text-blue{color:#61affe;font-weight:600}.text-purple{color:#b48ead;font-weight:600}.text-muted-italic{color:var(--text-secondary);font-style:italic;opacity:.85}@media (max-width: 768px){.about{padding:1.5rem 1.5rem 3rem}.about__title{font-size:2rem}.about__subtitle{font-size:1rem}.about__section-title{font-size:1.25rem}.interests-grid{grid-template-columns:1fr}.skills-grid{grid-template-columns:1fr 1fr}.contact-links{grid-template-columns:1fr}}@media (max-width: 480px){.about{padding:1rem 1rem 2rem}.about__title{font-size:1.75rem}.skills-grid{grid-template-columns:1fr}.interest-card{flex-direction:column;text-align:center}.interest-card__icon{font-size:2.5rem}}
