*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;background:#040d18;font-family:Sora,sans-serif}.ocean-bg{position:fixed;inset:0;background:radial-gradient(ellipse 120% 80% at 20% 110%,rgba(0,60,120,.55) 0%,transparent 60%),radial-gradient(ellipse 80% 60% at 80% -10%,rgba(0,80,140,.35) 0%,transparent 55%),radial-gradient(ellipse 100% 50% at 50% 50%,rgba(5,25,60,.8) 0%,transparent 100%),linear-gradient(180deg,#020b1a,#041628 40%,#06203a,#082840)}.ocean-caustics{position:fixed;inset:0;background-image:radial-gradient(ellipse 3px 6px at 15% 20%,rgba(60,140,200,.12) 0%,transparent 100%),radial-gradient(ellipse 5px 3px at 35% 45%,rgba(60,140,200,.08) 0%,transparent 100%),radial-gradient(ellipse 2px 8px at 55% 15%,rgba(80,160,220,.1) 0%,transparent 100%),radial-gradient(ellipse 4px 4px at 70% 60%,rgba(60,140,200,.09) 0%,transparent 100%),radial-gradient(ellipse 6px 2px at 85% 30%,rgba(80,160,220,.07) 0%,transparent 100%),radial-gradient(ellipse 3px 5px at 25% 75%,rgba(60,140,200,.11) 0%,transparent 100%),radial-gradient(ellipse 5px 3px at 90% 80%,rgba(60,140,200,.06) 0%,transparent 100%),radial-gradient(ellipse 2px 7px at 45% 85%,rgba(80,160,220,.08) 0%,transparent 100%);animation:causticDrift 12s ease-in-out infinite alternate;pointer-events:none}@keyframes causticDrift{0%{transform:translate(0) scale(1);opacity:.6}33%{transform:translate(8px,-5px) scale(1.02);opacity:.9}66%{transform:translate(-5px,8px) scale(.98);opacity:.7}to{transform:translate(4px,3px) scale(1.01);opacity:1}}.god-ray{position:fixed;top:-20%;left:30%;width:2px;height:130%;background:linear-gradient(180deg,rgba(100,180,240,.12) 0%,transparent 70%);transform:rotate(-15deg) translate(-50%);animation:rayPulse 8s ease-in-out infinite alternate;pointer-events:none;filter:blur(6px)}.god-ray.r2{left:55%;width:1px;transform:rotate(-8deg) translate(-50%);background:linear-gradient(180deg,rgba(100,180,240,.08) 0%,transparent 60%);animation-delay:-3s;filter:blur(4px)}.god-ray.r3{left:72%;width:3px;transform:rotate(-22deg) translate(-50%);background:linear-gradient(180deg,rgba(100,180,240,.06) 0%,transparent 55%);animation-delay:-6s;filter:blur(8px)}@keyframes rayPulse{0%{opacity:.4}50%{opacity:1}to{opacity:.5}}.bubbles{position:fixed;inset:0;pointer-events:none;overflow:hidden}.bubble{position:absolute;border-radius:50%;border:1px solid rgba(100,180,240,.15);background:#64b4f00a;bottom:-20px;animation:bubbleRise linear infinite}.bubble.b1{width:6px;height:6px;left:12%;animation-duration:14s;animation-delay:0s}.bubble.b2{width:3px;height:3px;left:28%;animation-duration:18s;animation-delay:-4s}.bubble.b3{width:8px;height:8px;left:44%;animation-duration:12s;animation-delay:-7s}.bubble.b4{width:4px;height:4px;left:60%;animation-duration:20s;animation-delay:-2s}.bubble.b5{width:5px;height:5px;left:74%;animation-duration:16s;animation-delay:-10s}.bubble.b6{width:2px;height:2px;left:88%;animation-duration:22s;animation-delay:-5s}.bubble.b7{width:7px;height:7px;left:20%;animation-duration:15s;animation-delay:-13s}.bubble.b8{width:3px;height:3px;left:52%;animation-duration:19s;animation-delay:-8s}.bubble.b9{width:5px;height:5px;left:80%;animation-duration:13s;animation-delay:-1s}.bubble.b10{width:4px;height:4px;left:36%;animation-duration:17s;animation-delay:-9s}@keyframes bubbleRise{0%{transform:translateY(0) translate(0);opacity:0}10%{opacity:.6}90%{opacity:.3}to{transform:translateY(-110vh) translate(12px);opacity:0}}.card{position:fixed;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none}.card-inner{padding:clamp(2.5rem,6vw,4.5rem) clamp(4rem,10vw,7rem);background:#04122873;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px);border-radius:28px;border:1px solid rgba(80,140,200,.12);box-shadow:0 0 0 1px #0000004d,0 20px 60px #00000080,inset 0 1px #64b4f014;text-align:center;animation:cardFloat 9s ease-in-out infinite}@keyframes cardFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.soon-text{font-size:clamp(4rem,10vw,8rem);font-weight:800;color:#dce8f0;line-height:1;letter-spacing:.04em;text-shadow:0 0 60px rgba(80,160,240,.2),0 2px 4px rgba(0,0,0,.5)}.tagline{margin-top:1rem;font-size:clamp(.7rem,1.4vw,.9rem);font-weight:400;color:#8cb4d280;letter-spacing:.2em;text-transform:uppercase}.brand{position:fixed;bottom:32px;left:50%;transform:translate(-50%);color:#648caa4d;font-size:clamp(.55rem,.9vw,.7rem);font-weight:600;letter-spacing:.18em;text-transform:uppercase;pointer-events:none;white-space:nowrap}.mc-link{position:fixed;bottom:28px;right:32px;padding:10px 22px;background:#04122880;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:999px;border:1px solid rgba(80,140,200,.18);color:#c8dceb8c;font-size:clamp(.65rem,1.1vw,.82rem);font-weight:500;text-decoration:none;letter-spacing:.04em;transition:color .25s,background .25s,border-color .25s;font-family:Sora,sans-serif}.mc-link:hover{color:#dce8f0;background:#041228bf;border-color:#508cc859}.vignette{position:fixed;inset:0;pointer-events:none;background:radial-gradient(ellipse 100% 100% at 50% 50%,transparent 40%,rgba(2,8,20,.7) 100%)}.hero-section{width:100%;height:100%;position:relative;display:flex;align-items:center;justify-content:center}.hero-content{position:relative;z-index:5;pointer-events:auto}.subtitle{margin-top:.8rem;font-size:clamp(.65rem,1.2vw,.9rem);color:#8cb4d299;letter-spacing:.06em}.nav-buttons{display:flex;gap:1rem;margin-top:2rem;justify-content:center;flex-wrap:wrap}.nav-btn{padding:8px 18px;background:#508cc81f;border:1px solid rgba(80,140,200,.25);border-radius:8px;color:#c8dcebb3;font-size:.85rem;font-family:Sora,sans-serif;cursor:pointer;transition:all .25s ease}.nav-btn:hover{background:#508cc840;color:#dce8f0;border-color:#508cc880}.section{width:100%;height:100%;position:fixed;top:0;left:0;overflow-y:auto;overflow-x:hidden;padding:3rem 2rem;color:#dce8f0;animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.section-content{max-width:1000px;margin:0 auto;position:relative;z-index:10}.back-btn{margin-bottom:2rem;padding:8px 16px;background:#508cc81f;border:1px solid rgba(80,140,200,.25);border-radius:8px;color:#c8dcebb3;font-size:.85rem;font-family:Sora,sans-serif;cursor:pointer;transition:all .25s ease}.back-btn:hover{background:#508cc840;color:#dce8f0}.section h1{font-size:clamp(2rem,5vw,3.5rem);font-weight:800;margin-bottom:2rem;color:#dce8f0;text-shadow:0 0 40px rgba(80,160,240,.15)}.section h2{font-size:1.8rem;font-weight:700;margin-bottom:1.5rem;color:#c8dcebe6}.section h3{font-size:1.3rem;font-weight:600;color:#c8dcebd9}.section h4{font-size:1.1rem;font-weight:600;color:#c8dcebcc}.about-section .about-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:1.5rem;margin-bottom:2rem}.about-card{padding:1.5rem;background:#508cc814;border:1px solid rgba(80,140,200,.2);border-radius:12px;transition:all .3s ease}.about-card:hover{background:#508cc81f;border-color:#508cc866;transform:translateY(-2px)}.about-card h3{margin-bottom:.8rem;color:#64b4f0e6}.about-card p{color:#94a3b8cc;line-height:1.6}.skills-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:2rem}.skill-group h4{margin-bottom:1rem;color:#64b4f0e6}.skill-group ul{list-style:none}.skill-group li{color:#94a3b8cc;margin-bottom:.6rem;font-size:.95rem}.portfolio-section .portfolio-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-bottom:2rem}.portfolio-card{position:relative;padding:1.8rem;background:#508cc814;border:1px solid rgba(80,140,200,.2);border-left:3px solid;border-radius:12px;text-decoration:none;color:inherit;transition:all .3s ease;overflow:hidden}.portfolio-card:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(80,140,200,.1) 0%,transparent 100%);opacity:0;transition:opacity .3s ease}.portfolio-card:hover{background:#508cc826;border-color:#508cc866;transform:translateY(-4px);box-shadow:0 20px 40px #508cc826}.portfolio-card:hover:before{opacity:1}.portfolio-card h3{margin-bottom:.8rem;position:relative;z-index:1}.portfolio-card p{color:#94a3b8cc;line-height:1.6;margin-bottom:1rem;position:relative;z-index:1}.tags{display:flex;gap:.6rem;flex-wrap:wrap;margin-bottom:1rem;position:relative;z-index:1}.tag{font-size:.75rem;padding:4px 10px;border-radius:6px;font-weight:500}.portfolio-card .arrow{color:#64b4f099;position:absolute;bottom:1.5rem;right:1.5rem;font-size:1.5rem;transition:transform .3s ease;z-index:1}.portfolio-card:hover .arrow{transform:translate(4px);color:#64b4f0e6}.cv-section .cv-container{max-width:700px}.cv-block{margin-bottom:2.5rem;padding-bottom:2rem;border-bottom:1px solid rgba(80,140,200,.15)}.cv-block:last-child{border-bottom:none}.cv-block h3{margin-bottom:1.2rem;color:#64b4f0e6;text-transform:uppercase;font-size:1rem;letter-spacing:.1em}.cv-item h4{margin-bottom:.3rem}.cv-item .date{color:#64b4f0b3;font-size:.85rem;margin-bottom:.6rem}.cv-item p{color:#94a3b8cc;line-height:1.6;margin-bottom:.8rem}.cv-list{list-style-position:inside;color:#94a3b8cc;line-height:2}.cv-list li::marker{color:#64b4f0b3}.cv-block p{color:#94a3b8cc;line-height:1.8}.links-section .links-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.link-card{padding:2rem;background:#508cc814;border:1px solid rgba(80,140,200,.2);border-radius:12px;text-align:center;text-decoration:none;color:inherit;transition:all .3s ease;cursor:pointer}.link-card:hover{background:#508cc826;border-color:#508cc866;transform:translateY(-4px);box-shadow:0 20px 40px #508cc826}.link-icon{display:block;font-size:3rem;margin-bottom:1rem}.link-card h3{margin-bottom:.5rem}.link-card p{color:#94a3b8b3;font-size:.95rem}@media(max-width:768px){.section{padding:2rem 1rem}.nav-buttons{gap:.6rem}.nav-btn{padding:6px 12px;font-size:.75rem}.portfolio-grid,.links-grid{grid-template-columns:1fr}.portfolio-card .arrow{position:static;display:inline;margin-left:.5rem}}
