:root{--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", monospace;--bg-primary: #090a0f;--bg-surface: #11131a;--bg-surface-hover: #171a24;--border-subtle: rgba(255, 255, 255, .08);--border-active: rgba(255, 255, 255, .22);--text-primary: #f4f4f6;--text-secondary: #9da0aa;--text-muted: #5e6270;--accent: #38bdf8}*{box-sizing:border-box;margin:0;padding:0;cursor:none}@media (max-width: 768px),(pointer: coarse),(hover: none){*,*:before,*:after{cursor:auto!important}a,button,[role=button],input,textarea,select,.action-pill,.pill,.section-marker,.elem1,.rec-row,.contact-card-box,.exp-pill,.detail-back-btn,.detail-action-link{cursor:pointer!important}}::selection{background:#fff3;color:#fff}html::-webkit-scrollbar{width:0;background:transparent}html{scrollbar-width:none;-ms-overflow-style:none;background-color:var(--bg-primary)}html,body{width:100%;min-height:100%}body{color:var(--text-secondary);background-color:var(--bg-primary);font-family:var(--font-sans);font-weight:400;line-height:1.6;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#main{width:100%;min-height:100%;position:relative}.section-marker{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;color:var(--text-muted);text-transform:uppercase;display:inline-flex;align-items:center;margin-bottom:.85rem;padding:.28rem .65rem;border-radius:4px;border:1px solid transparent;cursor:pointer;transform-style:preserve-3d;transition:all .25s cubic-bezier(.16,1,.3,1)}.section-marker:hover{color:#10b981;background:#10b98114;border-color:#10b9814d;transform:perspective(600px) translateY(-2px) translateZ(8px);text-shadow:0 1px 0 rgba(16,185,129,.6),0 2px 8px rgba(16,185,129,.35)}footer{width:100%;border-top:1px solid var(--border-subtle);padding:3rem 2rem;background-color:#06070a}.footer-content{max-width:1200px;margin:0 auto;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1.5rem}.footer-content p{font-family:var(--font-mono);color:var(--text-muted);font-size:.8rem;margin:0}.footer-links{display:flex;gap:2rem}.footer-links a{font-family:var(--font-mono);color:var(--text-secondary);text-decoration:none;font-size:.8rem;transition:color .25s ease}.footer-links a:hover{color:var(--text-primary)}@media screen and (max-width: 768px){footer{padding:2.5rem 1.25rem}.footer-content{flex-direction:column;align-items:flex-start;gap:1.25rem}.footer-links{gap:1.5rem}}.page2{width:100%;margin:5rem 0 8rem;display:flex;flex-direction:column;justify-content:center;align-items:center;overflow-x:hidden;position:relative;z-index:2}.page2 .tech-header{max-width:1200px;width:100%;margin:0 auto 3rem;padding:0 2rem;box-sizing:border-box}.page2 .tech-title{font-family:var(--font-sans);font-size:1.5rem;font-weight:400;color:var(--text-primary);letter-spacing:-.01em;margin:0}.page2 .first,.page2 .second,.page2 .third,.page2 .forth{display:flex;gap:3vw;margin:1.8vh 0;width:max-content;will-change:transform}.page2 img{width:5.2vw;max-width:65px;min-width:44px;height:auto;object-fit:contain;transition:transform .25s ease,opacity .25s ease;opacity:.85}.page2 img:hover{transform:scale(1.18);opacity:1}@media screen and (max-width: 768px){.page2{margin:3rem 0 5rem}.page2 .first,.page2 .second,.page2 .third,.page2 .forth{gap:4.5vw;margin:1.2vh 0}.page2 img{width:9vw;min-width:36px}}.project-index-section{max-width:1200px;margin:0 auto 7rem;padding:0 2rem;box-sizing:border-box}.project-index-header{margin-bottom:2.5rem}.project-index-title{font-family:var(--font-sans);font-size:2.8vw;font-weight:500;letter-spacing:-.025em;color:var(--text-primary);line-height:1.15;margin:0}.project-table{display:flex;flex-direction:column;border-top:1px solid var(--border-subtle)}.update-container{display:flex;flex-direction:column;border-bottom:1px solid var(--border-subtle)}.project-tilt-wrapper{width:100%}.elem1{display:flex;justify-content:space-between;align-items:center;padding:1.8rem 1.2rem;cursor:pointer;position:relative;transform-style:preserve-3d;transition:all .3s cubic-bezier(.16,1,.3,1);border-radius:6px;border:1px solid transparent;background:transparent}.elem1:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}@media (hover: hover) and (pointer: fine){.elem1:hover{border-color:#dce1ebb3;padding-left:1.6rem;padding-right:1.6rem;box-shadow:0 16px 36px #0000008c,0 0 24px #dce1eb1f}.elem1:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.elem1:hover .project-index{color:#047857;font-weight:600}.elem1:hover .elem-titles h3{color:#0a0b0e;text-shadow:none;transform:translateZ(32px)}.elem1:hover .card-sub{color:#2b2f38;font-weight:400}.elem1:hover .pill{background:#151820;color:#f3f4f6;border-color:#0003;text-shadow:none}.elem1:hover .pill:hover{background:#000;color:#fff;box-shadow:0 4px 12px #00000059}.elem1:hover .arrow-icon{transform:translateZ(35px) translate(4px,-4px);color:#0a0b0e}}.elem-left{display:flex;align-items:center;gap:1.8rem;position:relative;z-index:2}.project-index{font-family:var(--font-mono);font-size:.85rem;color:var(--text-muted);width:25px;transform:translateZ(15px);transition:color .25s ease}.elem-titles h3{font-family:var(--font-sans);font-size:1.35rem;font-weight:500;color:var(--text-primary);letter-spacing:-.01em;margin:0 0 .3rem;transform:translateZ(25px);transition:transform .25s ease,text-shadow .25s ease,color .25s ease}.card-sub{font-size:.9rem;color:var(--text-muted);font-weight:300;margin:0;transform:translateZ(15px);transition:color .25s ease}.detail{display:flex;align-items:center;gap:2rem;position:relative;z-index:2}.tech-pills{display:flex;gap:.5rem;flex-wrap:wrap}.pill{font-family:var(--font-mono);font-size:.75rem;padding:.25rem .65rem;border-radius:4px;background:#ffffff08;border:1px solid var(--border-subtle);color:var(--text-muted);white-space:nowrap;transform:translateZ(20px);cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}.pill:hover{color:#fff;background:#ffffff14;border-color:#ffffff4d;transform:perspective(600px) translateY(-2px) translateZ(28px);box-shadow:0 2px #ffffff26,0 6px 12px #0009;text-shadow:0 1px 0 rgba(255,255,255,.4)}.arrow-icon{font-size:1.25rem;color:var(--text-muted);transform:translateZ(20px);transition:transform .25s ease,color .25s ease}.elem1:hover .arrow-icon{transform:translateZ(35px) translate(4px,-4px);color:#fff}.elem1 .image{position:absolute;left:32%;top:50%;transform:translateY(-50%) translateZ(0);opacity:0;pointer-events:none;transition:opacity .3s ease,transform .35s cubic-bezier(.16,1,.3,1);z-index:30}.elem1:hover .image{opacity:1;transform:translateY(-75%) translateZ(65px) scale(1.05)}.desktok-ss img{width:24vw;max-width:320px;border-radius:8px;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 45px #000000d9;background-color:#0c0d12}.mobile-ss-group{display:flex;gap:.8rem}.mobile-ss-group img{width:7.5vw;max-width:95px;border-radius:6px;border:1px solid rgba(255,255,255,.2);box-shadow:0 20px 45px #000000d9;background-color:#0c0d12}@media screen and (max-width: 768px){.project-index-section{padding:0 1.25rem;margin-bottom:5rem}.project-index-title{font-size:clamp(2rem,7vw,2.8rem)}.elem1{flex-direction:column;align-items:flex-start;gap:1.1rem;padding:1.4rem .75rem}.elem-left{gap:1rem;width:100%}.elem-titles h3{font-size:1.2rem}.detail{width:100%;justify-content:space-between;align-items:center}.elem1 .image{display:none!important}}.project-detail{max-width:1200px;margin:0 auto;padding:3.5rem 2rem 7rem;box-sizing:border-box;min-height:100vh}.detail-nav-bar{display:flex;justify-content:space-between;align-items:center;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid var(--border-subtle);flex-wrap:wrap;gap:1rem}.detail-back-btn{display:inline-flex;align-items:center;gap:.65rem;padding:.65rem 1.4rem;border-radius:9999px;background:#ffffff0a;border:1px solid var(--border-subtle);color:var(--text-primary);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;cursor:pointer;transition:all .25s cubic-bezier(.16,1,.3,1)}.detail-back-btn:hover{background:#fff;color:#000;border-color:#fff;box-shadow:0 0 20px #fff3}.back-arrow-icon{font-size:.95rem;transition:transform .2s ease}.detail-back-btn:hover .back-arrow-icon{transform:translate(-3px)}.detail-status-pill{display:inline-flex;align-items:center;gap:.6rem;padding:.4rem .9rem;border-radius:9999px;background:#ffffff08;border:1px solid var(--border-subtle);font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;color:var(--text-muted)}.detail-status-dot{width:6px;height:6px;border-radius:50%;background:#10b981;box-shadow:0 0 8px #10b981}.detail-hero-header{margin-bottom:3.5rem}.detail-category-wrap{margin-bottom:.85rem}.detail-title{font-family:var(--font-sans);font-size:clamp(2.2rem,4.5vw,3.8rem);font-weight:500;letter-spacing:-.03em;color:var(--text-primary);line-height:1.12;margin:0 0 1.5rem}.detail-tech-stack{display:flex;flex-wrap:wrap;gap:.55rem;margin-bottom:2rem}.detail-tech-pill{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.05em;padding:.35rem .8rem;border-radius:4px;background:#ffffff08;border:1px solid var(--border-subtle);color:var(--text-muted);cursor:pointer;transition:all .25s ease}.detail-tech-pill:hover{background:#ffffff14;border-color:#ffffff4d;color:#fff;transform:translateY(-2px)}.detail-hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.detail-action-link{display:inline-flex;align-items:center;gap:.65rem;cursor:pointer}.overview-video-grid{display:grid;grid-template-columns:1.15fr 1fr;gap:3.5rem;align-items:start;margin-bottom:5rem}.detail-media-column{display:flex;flex-direction:column;gap:2.5rem}.detail-media-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;box-shadow:0 12px 32px #00000073;transition:border-color .3s ease,box-shadow .3s ease}.media-window-bar{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1.25rem;background:#ffffff05;border-bottom:1px solid var(--border-subtle)}.window-dots{display:flex;gap:.4rem}.dot{width:9px;height:9px;border-radius:50%}.dot-red{background:#ef4444;opacity:.8}.dot-yellow{background:#f59e0b;opacity:.8}.dot-green{background:#10b981;opacity:.8}.media-window-title{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.12em;color:var(--text-muted)}.video-responsive-wrap{width:100%;aspect-ratio:16 / 9;background:#000;position:relative}.video-responsive-wrap iframe{width:100%;height:100%;display:block}.detail-screenshots-section{display:flex;flex-direction:column;gap:1.2rem}.section-header-compact{padding-bottom:.5rem;border-bottom:1px solid var(--border-subtle)}.detail-subhead-mono{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.14em;color:var(--text-muted);text-transform:uppercase;display:block;margin-bottom:1.2rem}.detail-gallery-grid{display:flex;flex-direction:column;gap:1.25rem}.gallery-frame{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;overflow:hidden;padding:.85rem;transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease,box-shadow .3s ease}.gallery-frame:hover{border-color:var(--border-active);transform:translateY(-4px);box-shadow:0 16px 36px #0000008c}.gallery-frame img{width:100%;height:auto;display:block;border-radius:4px;object-fit:contain}.detail-narrative-column{display:flex;flex-direction:column;gap:2.5rem}.detail-narrative-card,.detail-features-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:2.2rem;box-sizing:border-box;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.detail-narrative-card:before,.detail-features-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.detail-narrative-card>*,.detail-features-card>*{position:relative;z-index:2}@media (hover: hover) and (pointer: fine){.detail-narrative-card:hover,.detail-features-card:hover{border-color:#dce1ebb3;box-shadow:0 20px 48px #000000a6,0 0 32px #dce1eb1f}.detail-narrative-card:hover:before,.detail-features-card:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.detail-narrative-card:hover .detail-subhead-mono,.detail-features-card:hover .detail-subhead-mono{color:#047857}.detail-narrative-card:hover .detail-overview-paragraph{color:#262932}.detail-features-card:hover .feature-item-row{border-bottom-color:#0000001f}.detail-features-card:hover .feature-item-index{color:#047857}.detail-features-card:hover .feature-item-text{color:#0a0b0e}}.detail-overview-paragraph{font-family:var(--font-sans);font-size:1.05rem;line-height:1.75;color:var(--text-secondary);font-weight:300;margin:0;transition:color .25s ease}.features-checklist{display:flex;flex-direction:column}.feature-item-row{display:flex;align-items:baseline;gap:1.1rem;padding:.95rem 0;border-bottom:1px solid var(--border-subtle);transition:border-bottom-color .25s ease}.feature-item-row:last-child{border-bottom:none;padding-bottom:0}.feature-item-index{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;color:var(--text-muted);width:20px;flex-shrink:0;transition:color .25s ease}.feature-item-text{font-family:var(--font-sans);font-size:.95rem;line-height:1.6;color:var(--text-secondary);font-weight:400;transition:color .25s ease}.detail-bottom-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:1.5rem;align-items:stretch;padding-top:2.5rem;border-top:1px solid var(--border-subtle)}.bottom-nav-card{display:flex;flex-direction:column;justify-content:center;padding:1.5rem 1.8rem;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;cursor:pointer;text-align:left;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.bottom-nav-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.bottom-nav-card>*{position:relative;z-index:2}.bottom-nav-card.home-card{text-align:center;align-items:center;padding:1.5rem 2rem}.bottom-nav-card.next-card{text-align:right;align-items:flex-end}@media (hover: hover) and (pointer: fine){.bottom-nav-card:hover{border-color:#dce1ebb3;box-shadow:0 16px 36px #00000080,0 0 20px #dce1eb1f;transform:translateY(-2px)}.bottom-nav-card:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.bottom-nav-card:hover .bottom-nav-label{color:#047857}.bottom-nav-card:hover .bottom-nav-title{color:#0a0b0e}}.bottom-nav-label{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.4rem;transition:color .25s ease}.bottom-nav-title{font-family:var(--font-sans);font-size:1.1rem;font-weight:500;letter-spacing:-.01em;color:var(--text-primary);margin:0;transition:color .25s ease}.project-detail-empty{min-height:80vh;display:flex;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center}.empty-content{max-width:500px;display:flex;flex-direction:column;align-items:center;gap:1.2rem}.empty-index{font-family:var(--font-mono);font-size:.8rem;color:var(--text-muted);letter-spacing:.15em}.empty-content h2{font-family:var(--font-sans);font-size:2.2rem;font-weight:500;color:var(--text-primary);margin:0}.empty-content p{color:var(--text-secondary);font-size:1rem;margin:0 0 1rem}@media screen and (max-width: 900px){.project-detail{padding:2.5rem 1.25rem 5rem}.overview-video-grid{grid-template-columns:1fr;gap:2.5rem}.detail-hero-header{margin-bottom:2.5rem}.detail-title{font-size:2.4rem}.detail-narrative-card,.detail-features-card{padding:1.6rem 1.25rem}.detail-bottom-nav{grid-template-columns:1fr;gap:1rem}.bottom-nav-card.next-card{text-align:left;align-items:flex-start}}@media screen and (max-width: 480px){.detail-nav-bar{flex-direction:column;align-items:flex-start}.detail-hero-actions{flex-direction:column;align-items:stretch}.detail-action-link{justify-content:center;width:100%}.detail-title{font-size:2rem}}.loadingScreen{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:99999;pointer-events:all}.loader-panel{width:100%;height:100%;background-color:#07080b;display:flex;flex-direction:column;justify-content:space-between;padding:3rem 4rem;box-sizing:border-box}.loader-header,.loader-footer{display:flex;justify-content:space-between;font-family:var(--font-mono);font-size:.8rem;letter-spacing:.15em;color:var(--text-muted)}.loader-center{display:flex;flex-direction:column;align-items:center;text-align:center}.loader-counter{font-family:var(--font-mono);font-size:5rem;font-weight:500;color:var(--text-primary);line-height:1;margin-bottom:1.5rem;letter-spacing:-.05em}.loader-percent{font-size:2rem;color:var(--text-muted);margin-left:.2rem}.loader-progress-track{width:240px;height:2px;background-color:#ffffff14;position:relative;overflow:hidden;margin-bottom:1.5rem}.loader-progress-bar{width:0%;height:100%;background-color:#fff}.loader-sub{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.2em;color:var(--text-muted);margin:0}.hero-section{width:100%;min-height:100vh;padding:3rem 4rem;display:flex;flex-direction:column;justify-content:space-between;box-sizing:border-box;position:relative;overflow:hidden}.hero-3d-canvas-container{position:fixed;top:0;left:0;width:100vw;height:100vh;pointer-events:none;z-index:1}.hero-top-bar{display:flex;justify-content:space-between;align-items:center;width:100%;padding-bottom:2rem;border-bottom:1px solid var(--border-subtle);position:relative;z-index:2}.status-indicator{display:flex;align-items:center}.mono-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;color:var(--text-muted);text-transform:uppercase;display:inline-flex;align-items:center;transition:all .25s cubic-bezier(.16,1,.3,1);padding:.35rem .65rem;border-radius:4px;border:1px solid transparent;cursor:pointer}.mono-label:hover{color:#fff;background:#ffffff0d;border-color:#ffffff26;transform:perspective(600px) translateY(-2px) translateZ(8px);text-shadow:0 1px 0 rgba(255,255,255,.5),0 2px 4px rgba(16,185,129,.3)}.hero-body{max-width:1100px;margin:4rem 0;position:relative;z-index:2}.line-mask{overflow:hidden;display:block}.hero-display-name{font-family:var(--font-sans);font-size:6.5vw;font-weight:500;letter-spacing:-.04em;line-height:1.05;color:var(--text-primary);margin:0;margin-bottom:.5rem;cursor:default;transition:text-shadow .3s ease,transform .3s ease}.hero-display-name:hover{text-shadow:0 2px 0 rgba(255,255,255,.4),0 4px 14px rgba(16,185,129,.2);transform:perspective(1000px) translateZ(10px)}.hero-display-role{font-family:var(--font-sans);font-size:2.5vw;font-weight:400;letter-spacing:-.02em;color:var(--text-secondary);line-height:1.2;margin:0;margin-bottom:1.8rem}.hero-summary{font-size:1.25rem;font-weight:300;color:#8b8f9e;line-height:1.6;max-width:650px;margin-bottom:2.5rem}.hero-actions{display:flex;align-items:center;gap:1rem;flex-wrap:wrap}.action-pill{display:inline-flex;align-items:center;gap:.65rem;padding:.75rem 1.75rem;border-radius:9999px;border:1px solid var(--border-subtle);background:#ffffff08;color:var(--text-primary);font-family:var(--font-mono);font-size:.8rem;letter-spacing:.05em;text-decoration:none;transition:border-color .2s ease,background-color .2s ease,box-shadow .2s ease,color .2s ease}.action-pill:hover{background:#ffffff17;border-color:#ffffff59;box-shadow:0 0 20px #ffffff14;color:#fff}.action-pill:active{background:#ffffff24}.action-pill-primary{background:#fff;color:#000;border-color:#fff;font-weight:600;padding:.75rem 1.75rem}.action-pill-primary:hover{background:#fff;color:#000;border-color:#fff;box-shadow:0 0 24px #ffffff38}.action-pill-primary:active{background:#e5e5e5;border-color:#e5e5e5}.action-arrow{font-size:.9rem;transition:transform .2s ease}.action-pill:hover .action-arrow{transform:translate(2px,-2px)}.hero-scroll-prompt{padding-top:2rem;position:relative;z-index:2}@media screen and (max-width: 768px){.hero-3d-canvas-container{opacity:.18!important;transition:opacity .3s ease}.hero-section{padding:2.2rem 1.25rem 2rem;min-height:100svh}.loader-panel{padding:2rem 1.25rem}.hero-display-name{font-size:clamp(2.4rem,11vw,4.5rem);line-height:1.08;color:#fff!important;text-shadow:0 2px 20px rgba(0,0,0,.85),0 0 40px rgba(0,0,0,.6)}.hero-display-role{font-size:clamp(1.15rem,5.2vw,2rem);margin-bottom:1.25rem;color:#fff!important;font-weight:500;text-shadow:0 2px 16px rgba(0,0,0,.85)}.hero-summary{font-size:.98rem;line-height:1.6;margin-bottom:1.8rem;color:#fff!important;opacity:.95;text-shadow:0 1px 12px rgba(0,0,0,.85)}.hero-top-bar .mono-label,.hero-scroll-prompt .mono-label{color:#fff!important;text-shadow:0 1px 8px rgba(0,0,0,.8)}.hero-actions{gap:.75rem;width:100%}.action-pill{padding:.7rem 1.35rem;font-size:.76rem;color:#fff!important;background:#ffffff14!important;border-color:#ffffff47!important}.action-pill-primary{background:#fff!important;color:#000!important;border-color:#fff!important}.loader-counter{font-size:3.5rem}.hero-top-bar{flex-direction:column;align-items:flex-start;gap:.65rem}.hero-scroll-prompt{padding-top:1.5rem}}@media screen and (max-width: 480px){.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:.65rem}.hero-actions .action-pill-primary{grid-column:1 / -1;justify-content:center}.hero-actions .action-pill{justify-content:center}}.contact-section{max-width:1200px;margin:0 auto 7rem;padding:0 2rem;box-sizing:border-box}.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:5rem;align-items:start}.contact-left{display:flex;flex-direction:column}.contact-title{font-family:var(--font-sans);font-size:2.8vw;font-weight:500;letter-spacing:-.025em;color:var(--text-primary);line-height:1.15;margin:0 0 1.2rem}.contact-lead{font-size:1.05rem;line-height:1.7;color:var(--text-secondary);font-weight:300;margin-bottom:2.5rem}.contact-info-list{display:flex;flex-direction:column;gap:1rem}.contact-tilt-wrap{width:100%}.contact-card-box{display:flex;align-items:center;gap:1.25rem;padding:1.15rem 1.4rem;background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;width:100%;box-sizing:border-box;cursor:pointer;transform-style:preserve-3d;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.contact-card-box:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.contact-card-box>*{position:relative;z-index:2}@media (hover: hover) and (pointer: fine){.contact-card-box:hover{border-color:#dce1ebb3;box-shadow:0 16px 36px #0000008c,0 0 24px #dce1eb1f}.contact-card-box:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.contact-card-box:hover .card-icon-container{background:#151820;border-color:#0003;transform:translateZ(22px)}.contact-card-box:hover .card-icon-container svg{fill:#fff!important;color:#fff!important}.contact-card-box:hover .card-category-label{color:#047857}.contact-card-box:hover .card-detail-text{color:#0a0b0e}.contact-card-box:hover .card-link-arrow{transform:translateZ(25px) translate(3px,-3px);color:#0a0b0e}}.card-icon-container{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:8px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);flex-shrink:0;transition:all .3s ease;transform:translateZ(15px)}.card-icon-container svg{transition:fill .25s ease,color .25s ease}.card-info{display:flex;flex-direction:column;gap:.25rem;flex-grow:1;transform:translateZ(15px)}.card-category-label{font-family:var(--font-mono);font-size:.72rem;color:var(--text-muted);letter-spacing:.12em;text-transform:uppercase;transition:color .25s ease}.card-detail-text{font-family:var(--font-sans);font-size:.95rem;color:var(--text-primary);font-weight:400;letter-spacing:-.01em;transition:color .25s ease}.card-link-arrow{font-size:1.1rem;color:var(--text-muted);transition:all .25s ease;transform:translateZ(15px)}.contact-form-box{display:flex;flex-direction:column;gap:1.4rem;background:var(--bg-surface);border:1px solid var(--border-subtle);padding:2.5rem;border-radius:8px}.form-group{display:flex;flex-direction:column;gap:.4rem}.form-label{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;color:var(--text-muted)}.contact-form-box input,.contact-form-box textarea{padding:.85rem 1rem;border-radius:4px;font-family:var(--font-sans);font-size:.95rem;background-color:#ffffff08;border:1px solid var(--border-subtle);color:var(--text-primary);transition:border-color .25s ease,background-color .25s ease}.contact-form-box input:focus,.contact-form-box textarea:focus{outline:none;border-color:#fff;background-color:#ffffff0d}.contact-form-box input::placeholder,.contact-form-box textarea::placeholder{color:var(--text-muted);font-size:.9rem}.submit-btn{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;background-color:#fff;color:#000;padding:.95rem 2.05rem;border-radius:6px;font-family:var(--font-mono);font-size:.85rem;font-weight:600;letter-spacing:.05em;border:1px solid #ffffff;cursor:pointer;position:relative;transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease;margin-top:.5rem}.submit-btn:hover{background-color:#fff;box-shadow:0 0 24px #ffffff40}.submit-btn:active{background-color:#e5e5e5;border-color:#e5e5e5}.btn-arrow{font-size:1rem;transition:transform .25s ease}.submit-btn:hover .btn-arrow{transform:translate(2px,-2px)}.contact-success-box{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:3rem 2rem;text-align:center}.success-tag{font-family:var(--font-mono);font-size:.8rem;color:#10b981;letter-spacing:.15em;display:block;margin-bottom:.8rem}.contact-success-box p{color:var(--text-primary);font-size:1rem;margin:0}@media screen and (max-width: 900px){.contact-section{padding:0 1.25rem;margin-bottom:5rem}.contact-title{font-size:clamp(2rem,7vw,2.8rem)}.contact-grid{grid-template-columns:1fr;gap:3rem}.contact-form-box{padding:1.75rem 1.25rem}.contact-form-box input,.contact-form-box textarea{font-size:16px}.submit-btn{width:100%;justify-content:center}}.about-section{max-width:1200px;margin:0 auto 7rem;padding:0 2rem;box-sizing:border-box}.about-header{margin-bottom:2.5rem}.about-title{font-family:var(--font-sans);font-size:3vw;font-weight:500;letter-spacing:-.025em;color:var(--text-primary);line-height:1.15;margin:0}.about-split-intro{display:grid;grid-template-columns:1fr 1.3fr;gap:4rem;margin-bottom:4rem;padding-bottom:3.5rem;border-bottom:1px solid var(--border-subtle)}.intro-lead{font-size:1.4rem;line-height:1.5;color:var(--text-primary);font-weight:400;letter-spacing:-.01em;margin:0}.intro-right p{font-size:1.05rem;line-height:1.7;color:var(--text-secondary);font-weight:300;margin-bottom:1rem}.intro-right p:last-child{margin-bottom:0;color:var(--text-muted)}.domain-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-bottom:4.5rem;perspective:1200px}.tilt-card-container{height:100%;display:flex;flex-direction:column;border-radius:8px}.domain-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:8px;padding:2.2rem 1.8rem;height:100%;box-sizing:border-box;transform-style:preserve-3d;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.domain-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.domain-card>*{position:relative;z-index:2}@media (hover: hover) and (pointer: fine){.tilt-card-container:hover .domain-card{border-color:#dce1ebb3;box-shadow:0 20px 48px #000000a6,0 0 32px #dce1eb1f}.tilt-card-container:hover .domain-card:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.tilt-card-container:hover .domain-index{color:#047857}.tilt-card-container:hover .domain-heading{color:#0a0b0e;text-shadow:none}.tilt-card-container:hover .domain-body{color:#2b2f38;font-weight:400}}.domain-index{font-family:var(--font-mono);font-size:.75rem;color:var(--text-muted);margin-bottom:1.5rem;letter-spacing:.1em;transform:translateZ(20px);transition:transform .25s ease,color .25s ease}.domain-heading{font-family:var(--font-sans);font-size:1.35rem;font-weight:500;color:var(--text-primary);margin-bottom:.8rem;letter-spacing:-.01em;transform:translateZ(30px);transition:transform .25s ease,color .25s ease}.domain-body{font-size:.95rem;line-height:1.6;color:var(--text-secondary);font-weight:300;margin:0;transform:translateZ(15px);transition:color .25s ease}.recognition-shell{border:1px solid var(--border-subtle);border-radius:8px;background:var(--bg-surface);overflow:hidden}.recognition-header{padding:1.2rem 1.8rem;border-bottom:1px solid var(--border-subtle);background:#ffffff04}.mono-subhead{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.15em;color:var(--text-muted);cursor:pointer;transition:color .2s ease}.mono-subhead:hover{color:#10b981}.recognition-table{display:flex;flex-direction:column}.rec-tilt-wrap{width:100%}.rec-row{display:grid;grid-template-columns:140px 1.4fr 2fr 40px;align-items:center;gap:1.5rem;padding:1.4rem 1.8rem;border-bottom:1px solid var(--border-subtle);text-decoration:none;transform-style:preserve-3d;position:relative;overflow:hidden;transition:all .3s cubic-bezier(.16,1,.3,1)}.rec-row:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.rec-row>*{position:relative;z-index:2}.rec-row:last-child{border-bottom:none}@media (hover: hover) and (pointer: fine){.rec-row:hover{border-color:#dce1ebb3;box-shadow:0 16px 36px #00000080,0 0 20px #dce1eb1f}.rec-row:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.rec-row:hover .rec-badge{background:#151820;color:#f3f4f6;border-color:#0003}.rec-row:hover .rec-title{color:#0a0b0e;text-shadow:none}.rec-row:hover .rec-desc{color:#2b2f38;font-weight:400}.rec-row:hover .rec-arrow{transform:translateZ(28px) translate(3px,-3px);color:#0a0b0e}}.rec-badge{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.1em;padding:.3rem .6rem;border-radius:4px;background:#ffffff0d;border:1px solid var(--border-subtle);color:var(--text-muted);text-align:center;width:fit-content;transform:translateZ(20px);transition:transform .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease}.rec-title{font-family:var(--font-sans);font-size:1rem;font-weight:500;color:var(--text-primary);transform:translateZ(25px);transition:transform .25s ease,color .25s ease}.rec-desc{font-size:.9rem;color:var(--text-secondary);font-weight:300;transform:translateZ(15px);transition:color .25s ease}.rec-arrow{font-size:1.1rem;color:var(--text-muted);text-align:right;transform:translateZ(20px);transition:transform .25s ease,color .25s ease}@media screen and (max-width: 900px){.about-section{padding:0 1.25rem;margin-bottom:5rem}.about-title{font-size:clamp(2rem,7vw,3rem)}.about-split-intro{grid-template-columns:1fr;gap:1.5rem}.about-intro-lead{font-size:1.12rem}.domain-grid{grid-template-columns:1fr;gap:1.5rem}.domain-card{padding:1.75rem 1.35rem}.rec-row{grid-template-columns:1fr;gap:.65rem;padding:1.25rem 1.2rem}.rec-arrow{display:none}}.experience-section{max-width:1200px;margin:0 auto 7rem;padding:0 2rem;box-sizing:border-box}.experience-header{margin-bottom:3rem;max-width:750px}.experience-title{font-family:var(--font-sans);font-size:3vw;font-weight:500;letter-spacing:-.025em;color:var(--text-primary);line-height:1.15;margin:.6rem 0 .8rem}.experience-subtitle{font-family:var(--font-sans);font-size:1.05rem;line-height:1.65;color:var(--text-secondary);font-weight:300;margin:0}.experience-timeline{display:flex;flex-direction:column;gap:2.2rem}.exp-scroll-card{width:100%}.exp-tilt-wrap{width:100%;height:100%}.experience-card{background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:10px;padding:2.5rem;position:relative;overflow:hidden;height:100%;box-sizing:border-box;transform-style:preserve-3d;transition:border-color .35s ease,box-shadow .35s ease;box-shadow:0 10px 30px #0006}.experience-card:before{content:"";position:absolute;inset:0;border-radius:inherit;background:linear-gradient(145deg,#e8eaee,#dfe2e8);clip-path:circle(0% at var(--mouse-x, 50%) var(--mouse-y, 50%));transition:clip-path .55s cubic-bezier(.16,1,.3,1),opacity .25s ease;opacity:0;pointer-events:none;z-index:1}.experience-card>*{position:relative;z-index:2}.exp-lead-top{display:flex;justify-content:space-between;align-items:flex-start;flex-wrap:wrap;gap:1.25rem;margin-bottom:.85rem}.exp-lead-brand{display:flex;flex-direction:column;gap:.35rem}.exp-brand-row{display:flex;align-items:center;gap:.85rem;flex-wrap:wrap}.exp-lead-company{font-family:var(--font-sans);font-size:1.75rem;font-weight:600;color:var(--text-primary);letter-spacing:-.02em;margin:0;transition:color .25s ease}.exp-contract-tag{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;color:#10b981;background:#10b98114;border:1px solid rgba(16,185,129,.3);padding:.2rem .55rem;border-radius:4px;font-weight:500;transition:all .25s ease}.exp-intern-tag{color:#38bdf8;background:#38bdf814;border-color:#38bdf84d}.exp-lead-role{font-family:var(--font-sans);font-size:1.1rem;font-weight:400;color:var(--text-secondary);margin:0;transition:color .25s ease}.exp-lead-meta{display:flex;align-items:center;gap:.65rem;flex-wrap:wrap}.exp-lead-period{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.08em;color:var(--text-primary);background:#ffffff0f;border:1px solid var(--border-subtle);padding:.25rem .65rem;border-radius:4px;transition:all .25s ease}.exp-lead-location,.exp-lead-mode{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.06em;color:var(--text-muted);background:#ffffff05;border:1px solid var(--border-subtle);padding:.25rem .6rem;border-radius:4px;transition:all .25s ease}.exp-squad-tag{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.06em;color:var(--text-muted);margin-bottom:1.5rem;display:block;transition:color .25s ease}.exp-points-grid{display:grid;gap:2rem;padding-top:1.5rem;border-top:1px solid var(--border-subtle);transition:border-color .25s ease}.exp-points-grid-3{grid-template-columns:repeat(3,1fr)}.exp-points-grid-2{grid-template-columns:repeat(2,1fr)}.exp-point-item{display:flex;flex-direction:column}.exp-point-subhead{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.08em;color:#10b981;margin-bottom:.75rem;display:block;font-weight:500;transition:color .25s ease}.exp-points-grid-2 .exp-point-subhead{color:#38bdf8}.exp-point-text{font-family:var(--font-sans);font-size:.94rem;line-height:1.65;color:var(--text-secondary);margin:0 0 1.25rem;font-weight:300;flex-grow:1;transition:color .25s ease}.exp-tech-pills{display:flex;flex-wrap:wrap;gap:.45rem}.exp-pill{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.04em;color:var(--text-muted);background:#ffffff08;border:1px solid var(--border-subtle);padding:.25rem .6rem;border-radius:4px;cursor:pointer;transition:all .2s cubic-bezier(.16,1,.3,1)}@media (hover: hover) and (pointer: fine){.experience-card:hover{border-color:#dce1ebb3;box-shadow:0 20px 48px #000000a6,0 0 32px #dce1eb1f}.experience-card:hover:before{opacity:1;clip-path:circle(150% at var(--mouse-x, 50%) var(--mouse-y, 50%))}.experience-card:hover .exp-lead-company{color:#0a0b0e}.experience-card:hover .exp-lead-role{color:#1f232b}.experience-card:hover .exp-lead-period{background:#00000014;color:#111318;border-color:#0003}.experience-card:hover .exp-lead-location,.experience-card:hover .exp-lead-mode{background:#0000000d;color:#374151;border-color:#00000029}.experience-card:hover .exp-contract-tag{background:#0478571f;color:#065f46;border-color:#04785759}.experience-card:hover .exp-intern-tag{background:#0284c71f;color:#0369a1;border-color:#0284c759}.experience-card:hover .exp-squad-tag{color:#047857}.experience-card:hover .exp-points-grid{border-color:#0000001f}.experience-card:hover .exp-point-subhead{color:#047857}.experience-card:hover .exp-points-grid-2 .exp-point-subhead{color:#0369a1}.experience-card:hover .exp-point-text{color:#2b2f38}.experience-card:hover .exp-pill{background:#151820;color:#f3f4f6;border-color:#0003}.experience-card:hover .exp-pill:hover{background:#000;color:#fff;box-shadow:0 4px 12px #00000059}}@media screen and (max-width: 960px){.exp-points-grid-3,.exp-points-grid-2{grid-template-columns:1fr;gap:1.75rem}}@media screen and (max-width: 768px){.experience-section{margin-bottom:5rem;padding:0 1.25rem}.experience-title{font-size:clamp(2rem,7vw,2.8rem)}.experience-card{padding:1.8rem 1.4rem}.exp-lead-top{flex-direction:column;align-items:flex-start;gap:.85rem}.exp-lead-company{font-size:1.45rem}}.crsr{background-color:#fff;position:fixed;top:0;left:0;width:16px;height:16px;border-radius:50%;pointer-events:none;mix-blend-mode:difference;z-index:999999;will-change:transform,width,height,border-radius;transition:opacity .2s ease,border-radius .18s cubic-bezier(.16,1,.3,1)}.cursor-light-glow{position:fixed;top:0;left:0;width:650px;height:650px;border-radius:50%;pointer-events:none;background:radial-gradient(circle,rgba(255,235,175,.13) 0%,rgba(251,191,36,.065) 24%,rgba(245,158,11,.025) 45%,rgba(217,119,6,.008) 65%,transparent 75%);transform:translate(-50%,-50%);z-index:1;mix-blend-mode:screen;will-change:transform;transition:opacity .25s ease}.domain-card,.elem1,.contact-card-box,.rec-row,.action-pill,.contact-form-box{box-shadow:var(--dyn-shadow-x, 0px) var(--dyn-shadow-y, 8px) var(--dyn-shadow-blur, 24px) rgba(0,0,0,var(--dyn-shadow-alpha, .52))!important;border-color:rgba(255,235,180,var(--dyn-border-alpha, .08))}body h1,body h2,body h3,body h4,body h5,body p{transition:color .3s ease,opacity .3s ease}body .tech-stacks{transition:transform .4s cubic-bezier(.16,1,.3,1),border-color .4s ease,background-color .4s ease,box-shadow .4s ease}body .tech-stacks:hover{transform:translateY(-6px);border-color:#ffffff59;background:#ffffff0d;box-shadow:0 20px 40px #0009}body .contact-form .contact-card .card-left{transition:transform .3s ease,border-color .3s ease,background-color .3s ease}body .contact-form .contact-card .card-left:hover{transform:translate(6px);background-color:#ffffff14;border-color:#ffffff4d}.project-detail .title img{transition:transform .3s cubic-bezier(.16,1,.3,1),border-color .3s ease}.project-detail .title img:hover{transform:scale(1.15);border-radius:50%}@media screen and (max-width: 768px),(pointer: coarse),(hover: none){.crsr,.cursor-light-glow{display:none!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important}}
