.collapse-btn[collapsed=true]+.collapse-body{opacity:0;font-size:0;transition:opacity .4s,font-size .3s .4s}.collapse-btn[collapsed=true]+.collapse-body p{padding:0!important;transition:padding .3s .3s}.collapse-btn[collapsed=false]+.collapse-body{font-size:inherit;opacity:1;transition:opacity .3s .3s,font-size .3s}.collapse-btn[collapsed=false]+.collapse-body p{transition:padding .3s}nav{position:fixed;top:0;left:0;background-color:transparent;width:0px;z-index:5}.menu-btn{position:fixed;padding:20px;top:0;left:0;right:0;display:flex;gap:0px;transition:all .7s;z-index:1;justify-content:space-between;pointer-events:none}nav .btn{opacity:0;pointer-events:none;padding:8px 16px;fill:#fff}.menu-btn>.btn:first-child{padding:8px 24px;margin-right:16px}nav svg{transition:all .2s}html[data-scroll=true] nav .btn{opacity:1;pointer-events:all}.active .btn{box-shadow:0 8px 24px #fff3;background-color:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;fill:#fff;border-color:#fff3;opacity:1!important;pointer-events:all!important}.active .btn:hover{box-shadow:0 12px 32px #ffffff4d;background:#ffffff26}.active .btn:active{box-shadow:0 4px 16px #fff3}.menu-body{background:#000000f2;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);color:#fff;font-size:2em;font-family:Geist,sans-serif;font-weight:600;text-decoration:none!important;position:fixed;top:0;bottom:0;left:-100px;right:100vw;z-index:0;transition:all .7s cubic-bezier(.4,0,.2,1);display:inline-flex;gap:24px;flex-direction:column;padding-top:100px;padding-left:40px;overflow:hidden;box-sizing:border-box;opacity:0}.menu-body a{text-decoration:none!important;color:#ffffffb3;transition:all .3s ease;border-left:3px solid transparent;padding:12px 0 12px 20px;margin-left:-20px}.menu-body a:hover{transform:translate(10px);color:#fff;border-left-color:#fff}.active .menu-body{left:0;right:0;opacity:1}#tip-scroll{position:fixed;bottom:16px;left:50%;transform:translate(-50%);font-family:Geist,sans-serif;font-size:14px;box-shadow:0 8px 24px #0009;background:#ffffff1a;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:#fff;transition:all .3s;padding:8px 24px;border:1px solid rgba(255,255,255,.2);border-radius:50px;pointer-events:all;cursor:pointer;display:none;opacity:1;animation:pulseGlow 2s ease-in-out infinite}@keyframes pulseGlow{0%,to{transform:translate(-50%) translateY(0);box-shadow:0 8px 24px #0009,0 0 #ffffff4d}50%{transform:translate(-50%) translateY(-8px);box-shadow:0 12px 32px #000c,0 0 20px #fff3}}#tip-scroll:hover{background:#ffffff26;transform:translate(-50%) translateY(-4px);box-shadow:0 16px 40px #000c;animation:none}#tip-scroll:active{transform:translate(-50%) translateY(-2px)}html[data-scroll=true] #tip-scroll{opacity:0}.active #tip-scroll{opacity:0!important}@media (min-width: 540px){.menu-btn{justify-content:left}.active .menu-btn{translate:28px}.menu-body{padding-left:80px}}@media (orientation: portrait){#tip-scroll{display:block}}@media (min-width: 769px){#tip-scroll{display:block;bottom:32px;font-size:16px;padding:12px 32px}}:root{--bg-primary: #000000;--bg-secondary: #0a0a0a;--bg-card: #111111;--text-primary: #ffffff;--text-secondary: #cccccc;--accent-primary: #ffffff;--accent-secondary: #cccccc;--border-color: #333333;--shadow: rgba(0, 0, 0, .8);--glass-bg: rgba(255, 255, 255, .03);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: rgba(0, 0, 0, .5);--color: #ffffff}@font-face{font-family:Geist;src:url(/fonts/Geist.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Geist Mono;src:url(/fonts/GeistMono.ttf) format("truetype");font-weight:100 900;font-style:normal;font-display:swap}@font-face{font-family:Galgo;src:url(/fonts/Galgo.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Dirtyline;src:url(/fonts/Dirtyline.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Cybertruck;src:url(/fonts/Cybertruck.otf) format("opentype");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Public Pixel;src:url(/fonts/public-pixel.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:Chill;src:url(/fonts/chill.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}*{margin:0;padding:0}html,body{overflow-x:hidden;background:#000;background-attachment:fixed;font-family:Geist,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:18px;font-weight:400;-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;color:var(--text-primary)}body:not(.loaded) .webgl,body:not(.loaded) main,body:not(.loaded) nav,body:not(.loaded) footer,body:not(.loaded) #hero-backup,body:not(.loaded) .greeting-train-container{visibility:hidden}.webgl{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;outline:none;z-index:1}#hero-backup{display:flex;flex-direction:column;justify-content:center;gap:16px;position:absolute;top:0;left:0;right:0;bottom:0;width:clamp(0px,95vw,580px);margin:auto;color:var(--text-primary);outline:none;z-index:0}#hero-backup h1{margin:0;text-align:left;font-family:Geist,sans-serif;font-size:4em;font-weight:700;background:none;border:none;box-shadow:none;padding:0;text-transform:none;letter-spacing:-.03em;color:var(--text-primary)}#hero-backup h3{margin:0;text-align:left;font-family:Geist,sans-serif;font-weight:400;font-size:1.2em;color:var(--text-secondary)}#hero-backup ul{margin-left:32px;font-family:Geist,sans-serif;font-weight:400;color:var(--text-secondary)}.webgl:active{cursor:grabbing}#textarea{position:fixed;top:0;right:0;outline:none;z-index:-1;opacity:0}#loading{color:var(--text-primary);background:#000;position:fixed;top:0;bottom:0;left:0;right:0;z-index:6;transition:opacity .3s;display:flex;align-items:center;justify-content:center}#loading spline-viewer{width:100%;height:100%;transform:scale(1.3)}#loading h2{text-align:left;margin:0;padding:0}#loading-items{height:64px;overflow:hidden;text-overflow:ellipsis}#loading-bar{position:relative;width:100%;height:64px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:0 8px 32px var(--glass-shadow)}#loading-bar-progress{position:absolute;top:0;bottom:0;left:0;right:0;background:#fff;border-radius:16px;transform:scaleX(0);transform-origin:left;transition:transform .2s}h1{display:inline-block;color:var(--text-primary);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:20px;font-family:Geist,sans-serif;font-size:2.2em;font-weight:700;letter-spacing:-.02em;padding:20px 32px;margin:0 auto .5em;box-shadow:0 8px 32px var(--glass-shadow)}.greeting-train-container{width:100%;overflow:hidden;padding:30px 0;margin-bottom:32px}.greeting-train{display:flex;gap:80px;animation:trainScroll 40s linear infinite;white-space:nowrap}.greeting-train span{font-family:Cybertruck,Geist,sans-serif;font-size:3.5em;font-weight:400;color:var(--text-primary);letter-spacing:.05em;flex-shrink:0;text-transform:uppercase}h2{display:inline-block;font-size:1.6em;text-align:center;color:var(--text-primary);background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:16px;font-family:Geist,sans-serif;font-weight:600;letter-spacing:-.01em;padding:16px 28px;margin:.5em auto;box-shadow:0 8px 32px var(--glass-shadow)}h3{font-size:1.1em;text-align:center;color:var(--text-secondary);font-family:Geist,sans-serif;font-weight:500;padding-top:8px;padding-bottom:8px;margin:.3em auto}hr{width:100px;height:2px;background:linear-gradient(90deg,transparent,var(--glass-border),transparent);margin:40px auto;border:none}.skills,p{padding:16px;text-align:left;line-height:1.6;width:clamp(0px,95vw,680px);margin:auto;box-sizing:border-box;color:var(--text-secondary)}.skills{display:flex;flex-wrap:wrap;align-content:center;justify-content:center;align-items:center;gap:12px;text-align:center;list-style-type:none;transition:all .3s}.skills li{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:12px;box-shadow:0 4px 16px var(--glass-shadow);transition:all .3s ease;color:var(--text-primary);font-family:Geist Mono,monospace;font-weight:500;font-size:.85em;letter-spacing:.01em}.skills li i{font-size:1.2em;display:inline-flex;align-items:center}.skills li:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--glass-shadow);background:#ffffff14;border-color:#fff}.image{display:flex;align-items:flex-start;justify-content:center;flex-wrap:wrap;gap:16px;margin:auto}.image *{box-sizing:border-box;width:clamp(0px,95vw,1200px);border-radius:16px;box-shadow:0 8px 32px var(--glass-shadow);border:1px solid var(--glass-border)}main{color:var(--text-primary);margin-top:200vh;text-align:center;position:relative;z-index:2}section{padding:64px 16px;margin-bottom:80px;position:relative;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);border:1px solid var(--glass-border);border-radius:24px;box-shadow:0 8px 32px var(--glass-shadow);width:clamp(0px,95vw,900px);margin-left:auto;margin-right:auto;transition:all .3s ease}section:hover{transform:translateY(-5px);box-shadow:0 12px 48px #ffffff1a;border-color:#fff3}section:after{display:none}section:last-of-type{border-bottom:none;margin-bottom:0}section ul{list-style:none;padding:16px;margin:16px auto;width:clamp(0px,95vw,680px)}section ul li{padding:12px 16px;margin:8px 0;background:var(--bg-secondary);border-left:3px solid #ffffff;border-radius:6px;color:var(--text-secondary);line-height:1.6;transition:all .3s ease}section ul li:hover{background:#ffffff0d;transform:translate(4px);border-left-color:#ccc}footer{display:flex;gap:32px;flex-direction:column;font-size:12px;width:clamp(0px,95vw,680px);margin:auto;padding:80px 16px 64px;text-align:center;color:var(--text-secondary);z-index:2;position:relative}@keyframes heartbeat{0%,to{transform:scale(1)}50%{transform:scale(1.03)}}@keyframes trainScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}.footer-brand{font-family:Cybertruck,Geist,sans-serif;font-size:15em;font-weight:400;letter-spacing:.1em;color:var(--text-primary);text-transform:uppercase;margin-bottom:16px;animation:heartbeat 2s ease-in-out infinite;transform-origin:center}a{display:inline-block;color:#ccc;text-decoration:none;transition:all .3s ease;position:relative}a:after{content:"";position:absolute;width:100%;height:2px;bottom:-2px;left:0;background:#fff;transform:scaleX(0);transition:transform .3s ease}a:hover:after{transform:scaleX(1)}a:hover{color:#fff;transform:translateY(-2px)}a:active{transform:translateY(0)}.btn{position:relative;font-family:Geist,sans-serif;font-size:16px;font-weight:500;display:inline-flex;gap:.5rem;align-items:center;justify-content:center;background:var(--glass-bg);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--text-primary);cursor:pointer;transition:all .3s ease;padding:12px 24px;border:1px solid var(--glass-border);border-radius:12px;text-decoration:none;box-shadow:0 4px 16px var(--glass-shadow)}.btn:hover{transform:translateY(-2px);box-shadow:0 8px 24px var(--glass-shadow);background:#ffffff14;border-color:#fff}.btn:active{transform:translateY(0);box-shadow:0 4px 16px var(--glass-shadow)}.btn svg{fill:currentColor}html{scroll-behavior:smooth}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:#000;border-left:1px solid #333333}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,#fff,#888);border-radius:10px;border:2px solid #000000;transition:all .3s ease}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#fff,#aaa);box-shadow:0 0 10px #ffffff4d}::selection{background:#fff;color:#000}::-moz-selection{background:#fff;color:#000}.tech-radar-container{max-width:700px;margin:0 auto;padding:20px}.tech-radar{width:100%;height:auto;filter:drop-shadow(0 4px 20px rgba(255,255,255,.1))}.radar-ring{fill:none;stroke:#ffffff1a;stroke-width:1;transition:all .3s ease}.ring-core{fill:#ffffff08}.ring-secondary{fill:#ffffff05}.ring-learning{fill:#ffffff03}.radar-line{stroke:#ffffff14;stroke-width:1}.radar-center{fill:#fff;filter:drop-shadow(0 0 8px rgba(255,255,255,.8))}.ring-label{fill:#ffffff80;font-family:Geist Mono,monospace;font-size:12px;text-anchor:middle;font-weight:500;text-transform:uppercase;letter-spacing:1px}.quadrant-label{fill:#fff9;font-family:Geist,sans-serif;font-size:14px;text-anchor:middle;font-weight:600}.tech-blip{cursor:pointer;transition:all .3s ease}.tech-blip:hover .blip{r:8;filter:drop-shadow(0 0 12px currentColor)}.tech-blip:hover .blip-text{fill:#fff;font-weight:600}.blip{transition:all .3s ease;stroke:#000;stroke-width:1}.blip-core{fill:#0f8;filter:drop-shadow(0 0 6px #00ff88)}.blip-secondary{fill:#0af;filter:drop-shadow(0 0 6px #00aaff)}.blip-learning{fill:#f0f;filter:drop-shadow(0 0 6px #ff00ff)}.blip-text{fill:#fffc;font-family:Geist,sans-serif;font-size:11px;font-weight:500;pointer-events:none;transition:all .3s ease}.radar-sweep{transform-origin:300px 300px;animation:radarSweep 6s linear infinite;opacity:.9}@keyframes radarSweep{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sweep-gradient{pointer-events:none;opacity:.6;filter:blur(2px)}.sweep-beam{stroke-width:3;stroke-linecap:round;pointer-events:none;opacity:.8}@keyframes blipAppear{0%,to{opacity:0}5%{opacity:1}20%{opacity:1}25%{opacity:0}}.tech-blip .blip,.tech-blip .blip-text{opacity:0}.tech-blip:nth-of-type(1) .blip,.tech-blip:nth-of-type(1) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:0s}.tech-blip:nth-of-type(2) .blip,.tech-blip:nth-of-type(2) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:1.5s}.tech-blip:nth-of-type(3) .blip,.tech-blip:nth-of-type(3) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:3s}.tech-blip:nth-of-type(4) .blip,.tech-blip:nth-of-type(4) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:4.5s}.tech-blip:nth-of-type(5) .blip,.tech-blip:nth-of-type(5) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:6s}.tech-blip:nth-of-type(6) .blip,.tech-blip:nth-of-type(6) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:7.5s}.tech-blip:nth-of-type(7) .blip,.tech-blip:nth-of-type(7) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:9s}.tech-blip:nth-of-type(8) .blip,.tech-blip:nth-of-type(8) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:10.5s}.tech-blip:nth-of-type(9) .blip,.tech-blip:nth-of-type(9) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:12s}.tech-blip:nth-of-type(10) .blip,.tech-blip:nth-of-type(10) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:13.5s}.tech-blip:nth-of-type(11) .blip,.tech-blip:nth-of-type(11) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:15s}.tech-blip:nth-of-type(12) .blip,.tech-blip:nth-of-type(12) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:16.5s}.tech-blip:nth-of-type(13) .blip,.tech-blip:nth-of-type(13) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:18s}.tech-blip:nth-of-type(14) .blip,.tech-blip:nth-of-type(14) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:19.5s}.tech-blip:nth-of-type(15) .blip,.tech-blip:nth-of-type(15) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:21s}.tech-blip:nth-of-type(16) .blip,.tech-blip:nth-of-type(16) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:22.5s}.tech-blip:nth-of-type(17) .blip,.tech-blip:nth-of-type(17) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:1s}.tech-blip:nth-of-type(18) .blip,.tech-blip:nth-of-type(18) .blip-text{animation:blipAppear 24s ease-in-out infinite;animation-delay:2.5s}@media (max-width: 768px){.blip-text{font-size:9px}.quadrant-label{font-size:12px}}.floating-nav{position:fixed;bottom:32px;left:50%;transform:translate(-50%) translateY(100px);display:flex;gap:0;padding:8px;background:#ffffff14;backdrop-filter:blur(40px);-webkit-backdrop-filter:blur(40px);border:1px solid rgba(255,255,255,.15);border-radius:50px;box-shadow:0 8px 32px #0009,0 0 0 1px #ffffff0d inset;z-index:1000;opacity:0;pointer-events:none;transition:all .4s cubic-bezier(.4,0,.2,1)}body.scrolled .floating-nav{transform:translate(-50%) translateY(0);opacity:1;pointer-events:auto;animation:floatNav 3s ease-in-out infinite}.floating-nav:hover{gap:8px;padding:12px 20px}@keyframes floatNav{0%,to{transform:translate(-50%) translateY(0)}50%{transform:translate(-50%) translateY(-8px)}}.floating-nav .nav-item{display:flex;align-items:center;justify-content:center;width:0;height:44px;color:#ffffffb3;background:transparent;border-radius:50%;transition:all .3s cubic-bezier(.4,0,.2,1);position:relative;text-decoration:none;flex-shrink:0;opacity:0;overflow:hidden}.floating-nav .nav-item:first-child,.floating-nav:hover .nav-item{opacity:1;width:44px}.floating-nav .nav-item:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:#ffffff1a;opacity:0;transition:opacity .3s ease}.floating-nav .nav-item:hover{color:#fff;transform:translateY(-4px) scale(1.1)}.floating-nav .nav-item:hover:before{opacity:1}.floating-nav .nav-item:active{transform:translateY(-2px) scale(1.05)}.floating-nav .nav-item svg{position:relative;z-index:1;filter:drop-shadow(0 2px 4px rgba(0,0,0,.3))}.floating-nav .nav-item:hover svg{filter:drop-shadow(0 0 8px rgba(255,255,255,.6))}@media (max-width: 768px){.floating-nav{gap:4px;padding:8px 12px}.floating-nav .nav-item{opacity:1;width:44px}.floating-nav:hover{gap:4px;padding:8px 12px}}@media (max-width: 480px){.floating-nav{bottom:16px;padding:6px 10px;gap:3px}.floating-nav:hover{padding:6px 10px;gap:3px}.floating-nav .nav-item{width:40px;height:40px;opacity:1}.floating-nav .nav-item:first-child,.floating-nav:hover .nav-item{width:40px}}.scroll-animate{opacity:0;transform:translateY(30px);transition:opacity .6s ease,transform .6s ease}.scroll-animate.animate-in{opacity:1;transform:translateY(0)}.skills li.scroll-animate{transition-delay:calc(var(--index, 0) * .05s)}@media (max-width: 1024px){html,body{font-size:17px}section{padding:48px 16px;margin-bottom:60px}h1{font-size:2em;padding:16px 24px}.greeting-train span{font-size:3em;gap:60px}.footer-brand{font-size:12em}}@media (max-width: 768px){html,body{font-size:16px}#hero-backup h1{font-size:3em}#hero-backup h3{font-size:1.1em}main{margin-top:150vh}section{padding:40px 16px;margin-bottom:48px;border-radius:20px}section:hover{transform:none}h1{font-size:1.8em;padding:14px 20px;border-radius:16px}h2{font-size:1.4em;padding:12px 20px;border-radius:14px}h3{font-size:1em}.greeting-train-container{padding:20px 0;margin-bottom:24px}.greeting-train{gap:50px}.greeting-train span{font-size:2.5em}.skills{gap:8px}.skills li{padding:6px 12px;font-size:.8em;border-radius:10px}.skills li:hover{transform:none}.tech-radar-container{padding:10px}footer{padding:60px 16px 48px}.footer-brand{font-size:8em}.floating-nav{bottom:20px;padding:6px}.floating-nav:hover{padding:8px 12px;gap:6px}.floating-nav .nav-item{width:42px;height:42px}.floating-nav:hover .nav-item{width:42px}}@media (max-width: 480px){html,body{font-size:15px}#hero-backup{width:90vw}#hero-backup h1{font-size:2.5em}#hero-backup h3{font-size:1em}#hero-backup ul{margin-left:20px;font-size:.95em}main{margin-top:120vh}section{padding:32px 12px;margin-bottom:40px;border-radius:16px;width:92vw}h1{font-size:1.6em;padding:12px 16px;border-radius:14px}h2{font-size:1.3em;padding:10px 16px;border-radius:12px}h3{font-size:.95em}.greeting-train-container{padding:16px 0;margin-bottom:20px}.greeting-train{gap:40px}.greeting-train span{font-size:2em}.skills,p{padding:12px;width:90vw}.skills{gap:6px}.skills li{padding:5px 10px;font-size:.75em;border-radius:8px}.skills li i{font-size:1.1em}section ul{padding:12px;width:90vw}section ul li{padding:10px 12px;font-size:.95em}.tech-radar-container{padding:5px}.blip-text{font-size:8px}.quadrant-label{font-size:11px}.ring-label{font-size:10px}footer{padding:48px 12px 40px;width:90vw}.footer-brand{font-size:6em}.btn{padding:10px 18px;font-size:14px;border-radius:10px}.image *{width:90vw;border-radius:12px}.floating-nav{bottom:12px;padding:6px;gap:0}.floating-nav:hover{padding:8px 10px;gap:4px}.floating-nav .nav-item{width:38px;height:38px}.floating-nav .nav-item:first-child,.floating-nav:hover .nav-item{width:38px}.floating-nav .nav-item svg{width:18px;height:18px}}@media (max-width: 360px){html,body{font-size:14px}#hero-backup h1{font-size:2.2em}.greeting-train span{font-size:1.8em}h1{font-size:1.5em}h2{font-size:1.2em}.footer-brand{font-size:5em}section{padding:24px 10px}}@media (max-height: 600px) and (orientation: landscape){main{margin-top:100vh}section{padding:32px 16px;margin-bottom:32px}.greeting-train-container{padding:12px 0;margin-bottom:16px}.greeting-train span{font-size:2em}footer{padding:40px 16px 32px}.footer-brand{font-size:6em}}@media (hover: none) and (pointer: coarse){section:hover{transform:none;box-shadow:0 8px 32px var(--glass-shadow);border-color:var(--glass-border)}.skills li:hover{transform:none;box-shadow:0 4px 16px var(--glass-shadow);background:var(--glass-bg);border-color:var(--glass-border)}section ul li:hover{transform:none;background:var(--bg-secondary)}a:hover,.btn:hover{transform:none}.btn{min-height:44px;min-width:44px}.floating-nav .nav-item{min-width:44px;min-height:44px}}
