.contact{align-items:center;gap:56px;max-width:1366px;margin:auto;padding:120px 24px 60px;display:flex}@media (max-width:768px){.contact{flex-direction:column;align-items:stretch;gap:32px;width:100%;padding:96px 16px 32px}}.contact .textContainer{flex-direction:column;flex:1;gap:24px;display:flex}@media (max-width:768px){.contact .textContainer{text-align:center;align-items:center;gap:18px}}.contact .textContainer h1{letter-spacing:-1.5px;font-size:clamp(42px,7vw,96px);line-height:.95}@media (max-width:768px){.contact .textContainer h1{font-size:34px}}.contact .textContainer .intro{color:#ffffffb8;max-width:540px;font-size:16px;line-height:1.7}@media (max-width:768px){.contact .textContainer .intro{max-width:100%;font-size:14px}}.contact .textContainer .contactCards{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;display:grid}@media (max-width:768px){.contact .textContainer .contactCards{grid-template-columns:1fr;width:100%}}.contact .textContainer .contactCard{color:inherit;background:linear-gradient(160deg,#ffffff17,#ffffff08);border:1px solid #ffffff1f;border-radius:18px;align-items:center;gap:14px;padding:18px;text-decoration:none;display:flex;box-shadow:0 18px 40px #00000038}.contact .textContainer .contactCard .cardIcon{color:orange;background:#ffa50017;border:1px solid #ffa5002e;border-radius:16px;flex-shrink:0;place-items:center;width:54px;height:54px;display:grid}@media (max-width:420px){.contact .textContainer .contactCard .cardIcon{width:48px;height:48px}}.contact .textContainer .contactCard .cardText{flex-direction:column;gap:4px;display:flex}.contact .textContainer .contactCard .cardText span{letter-spacing:1px;text-transform:uppercase;color:#ffffff94;font-size:12px}.contact .textContainer .contactCard .cardText h2{word-break:break-word;font-size:17px;line-height:1.3}.contact .textContainer .socialLinks{flex-wrap:wrap;gap:12px;display:flex}@media (max-width:768px){.contact .textContainer .socialLinks{justify-content:center;align-items:center;width:100%}}.contact .textContainer .socialLink{--accent:orange;color:#fff;background:#ffffff05;border:1px solid #ffffff14;border-radius:999px;place-items:center;width:54px;height:54px;padding:0;text-decoration:none;transition:transform .18s,border-color .18s,background-color .18s;display:inline-grid}.contact .textContainer .socialLink:hover{border-color:var(--accent);background:var(--accent);transform:translateY(-3px)scale(1.03)}.contact .textContainer .socialLink .socialIcon{color:var(--accent);width:20px;height:20px}.contact .textContainer .socialLink:hover .socialIcon{color:#111132}.contact .formContainer{flex:1;position:relative}@media (max-width:768px){.contact .formContainer{width:100%}}.contact .formContainer .phoneSvg{stroke:orange;z-index:0;opacity:.45;margin:auto;position:absolute;inset:10% auto auto 8%}@media (max-width:768px){.contact .formContainer .phoneSvg{display:none}}.contact .formContainer form{z-index:2;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);background:#ffffff08;border:1px solid #ffffff1a;border-radius:22px;flex-direction:column;gap:20px;padding:24px;display:flex;position:relative}@media (max-width:768px){.contact .formContainer form{border-radius:16px;gap:14px;padding:16px}}.contact .formContainer form input,.contact .formContainer form textarea{color:#fff;background-color:#0000;border:1px solid #ffffff8c;border-radius:8px;outline:none;padding:20px;font-size:16px}.contact .formContainer form input::placeholder,.contact .formContainer form textarea::placeholder{color:#ffffff7a}@media (max-width:768px){.contact .formContainer form input,.contact .formContainer form textarea{padding:14px}}.contact .formContainer form input:focus,.contact .formContainer form textarea:focus{border-color:orange;box-shadow:0 0 0 4px #ffa5001f}.contact .formContainer form textarea{resize:vertical;max-height:320px}.contact .formContainer form button{cursor:pointer;color:#111132;background-color:orange;border:none;border-radius:8px;justify-content:center;align-items:center;gap:10px;padding:18px 20px;font-size:15px;font-weight:500;transition:transform .2s,box-shadow .2s,opacity .2s;display:inline-flex}.contact .formContainer form button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 12px 26px #ffa50047}.contact .formContainer form button:disabled{opacity:.7;cursor:default}@media (max-width:768px){.contact .formContainer form button{width:100%;padding:14px;font-size:16px}}.contact .formContainer form .status{padding-left:2px;font-size:13px}.contact .formContainer form .status.error{color:#ff8f8f}.contact .formContainer form .status.success{color:#9cffb1}
.hero{background:linear-gradient(#0c0c1d,#111132);height:100vh;padding:200px 120px 120px;position:relative;overflow:hidden}.hero .starCanvas{z-index:1;pointer-events:none;position:absolute;inset:0}.hero .wrapper{max-width:1366px;height:100%;margin:0 auto}.hero .wrapper .textContainer{z-index:2;flex-direction:column;justify-content:center;gap:40px;width:50%;height:100%;display:flex;position:relative}.hero .wrapper .textContainer h2{color:orange;letter-spacing:4px;text-transform:uppercase;font-size:40px}.hero .wrapper .textContainer h1{font-size:70px}.hero .wrapper .textContainer a{z-index:5}.hero .wrapper .textContainer .buttons{gap:20px;display:flex}.hero .wrapper .textContainer .buttons button{color:#fff;cursor:pointer;background-color:#0000;border:1px solid #fff;border-radius:10px;padding:20px;transition:background-color .3s,border-color .3s}.hero .wrapper .textContainer .buttons button:hover{background-color:#ffa50026;border-color:orange}.hero .wrapper .textContainer .scrollButton{cursor:pointer;z-index:5;background:0 0;border:0;justify-content:flex-start;align-self:flex-start;align-items:center;width:fit-content;padding:0;display:inline-flex;position:relative}.hero .wrapper .textContainer .scrollButton img{pointer-events:none;width:50px;height:auto;display:block}.hero .illustrationContainer{z-index:3;pointer-events:none;width:45%;max-width:600px;height:auto;position:absolute;top:50%;right:5%;transform:translateY(-50%)}.hero .illustrationContainer svg{filter:drop-shadow(0 20px 30px #00000080);width:100%;height:100%}.hero .slidingTextContainer{white-space:nowrap;color:#ffffff0c;z-index:0;width:50%;font-size:50vh;font-weight:700;position:absolute;bottom:-120px}@media (max-width:768px){.hero{flex-direction:column;height:auto;min-height:100svh;padding:88px 20px 32px;display:flex}.hero .wrapper{flex-direction:column;flex:1;justify-content:center;width:100%;display:flex}.hero .wrapper .textContainer{text-align:center;gap:20px;width:100%;height:auto;padding-top:0}.hero .wrapper .textContainer h2{letter-spacing:2px;font-size:22px}.hero .wrapper .textContainer h1{font-size:clamp(30px,9vw,40px);line-height:1.1}.hero .wrapper .textContainer .buttons{flex-direction:column;justify-content:center;align-items:stretch;gap:12px}.hero .wrapper .textContainer .buttons button{width:100%;padding:14px 16px}.hero .wrapper .textContainer .scrollButton,.hero .illustrationContainer,.hero .slidingTextContainer{display:none}}@media (min-width:769px) and (max-width:1024px){.hero{height:auto;min-height:100vh;padding:108px 40px 44px}.hero .wrapper .textContainer{text-align:center;gap:22px;width:100%;height:auto;padding-top:24px}.hero .wrapper .textContainer h2{font-size:32px}.hero .wrapper .textContainer h1{font-size:clamp(44px,6vw,58px);line-height:1.05}.hero .wrapper .textContainer .buttons{flex-direction:row;justify-content:center;gap:15px}.hero .wrapper .textContainer .buttons button{width:auto;padding:18px}.hero .illustrationContainer{width:min(82vw,560px);margin:36px auto 0;position:relative;top:auto;right:auto;transform:none}}
.mobileMenu{z-index:1100;background:linear-gradient(#0d0d20,#0c0c1d);flex-direction:column;justify-content:center;align-items:center;gap:48px;display:flex;position:fixed;inset:0}.mobileMenu .closeButton{color:#fff;cursor:pointer;background:#ffffff0d;border:1px solid #ffffff26;border-radius:999px;place-items:center;width:48px;height:48px;font-size:18px;line-height:1;display:grid;position:absolute;top:14px;right:14px}.mobileMenu .menuLinks{flex-direction:column;align-items:center;gap:10px;display:flex}.mobileMenu .menuLinks a{color:#fff;letter-spacing:.5px;border-radius:12px;padding:12px 28px;font-size:30px;font-weight:600}.mobileMenu .menuLinks a:hover{color:#ffb03a}.mobileMenu .menuSocials{gap:14px;display:flex}.mobileMenu .menuSocials a{color:#fff;background:#ffffff0a;border:1px solid #ffffff24;border-radius:999px;place-items:center;width:52px;height:52px;display:grid}.mobileMenu .menuSocials a svg{width:22px;height:22px}@media (min-width:769px){.mobileMenu{display:none}}
.navbar{z-index:1000;background-color:#0d0c1c;width:100%;height:100px;position:fixed;top:0;left:0;box-shadow:0 4px 6px #0000001a}@media (max-width:768px){.navbar{height:72px}}.navbar .wrapper{justify-content:space-between;align-items:center;max-width:1366px;height:100%;margin:auto;padding:20px;display:flex}@media (max-width:768px){.navbar .wrapper{padding:0 16px}}.navbar .wrapper .brand{align-items:center;display:inline-flex}.navbar .wrapper .logo{width:220px;height:100px}@media (max-width:768px){.navbar .wrapper .logo{display:none}}.navbar .wrapper .logoCompact{width:40px;height:40px;display:none}@media (max-width:768px){.navbar .wrapper .logoCompact{display:block}}.navbar .wrapper .tabs{gap:40px;display:flex}.navbar .wrapper .tabs a{color:#fff;border-radius:5px;padding:10px 15px;font-weight:700;text-decoration:none;transition:color .3s,background-color .3s}.navbar .wrapper .tabs a:hover{color:#ffb03a;background-color:#ffffff0f}@media (max-width:768px){.navbar .wrapper .tabs{display:none}}.navbar .wrapper .social{gap:20px;display:flex}.navbar .wrapper .social .socialIcon,.navbar .wrapper .social svg{color:#fff;width:35px;height:35px}.navbar .wrapper .social a{padding:4px;transition:transform .2s,opacity .2s;display:inline-flex}.navbar .wrapper .social a:hover{opacity:.85;transform:translateY(-2px)}@media (max-width:768px){.navbar .wrapper .social{display:none}}.navbar .wrapper .burger{color:#fff;cursor:pointer;background:0 0;border:0;border-radius:12px;justify-content:center;align-items:center;width:44px;height:44px;display:none}.navbar .wrapper .burger svg{width:26px;height:26px}@media (max-width:768px){.navbar .wrapper .burger{display:inline-flex}}
.parallaxSection{height:100vh;overflow:hidden}@media (max-width:768px){.parallaxSection{height:55svh;min-height:0}}.parallax{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.parallax h1{font-size:100px}@media (max-width:768px){.parallax h1{text-align:center;padding:0 16px;font-size:clamp(34px,10vw,48px)}}.parallax .mountains{z-index:3;background-image:url(/mountains.png);background-position:bottom;background-size:cover;width:100%;height:100%;position:absolute}@media (max-width:768px){.parallax .mountains{background-repeat:no-repeat;background-size:contain}}.parallax .planets{z-index:2;background-image:url(/planets.png);background-position:bottom;background-size:cover;width:100%;height:100%;position:absolute}.parallax .stars{z-index:1;background-image:url(/stars.png);background-position:bottom;background-size:cover;width:100%;height:100%;position:absolute}
.portfolio{position:relative}.portfolio section{height:100vh}@media (max-width:768px){.portfolio section{height:auto;min-height:0;padding:12px 0 28px}}.portfolio .progress{text-align:center;color:orange;z-index:5;padding-top:112px;font-size:36px;position:sticky;top:0;left:0}@media (max-width:768px){.portfolio .progress{padding-top:96px;font-size:24px;position:static}}.portfolio .progress .progressBar{background-color:orange;border-radius:999px;height:6px;margin-top:12px;box-shadow:0 0 18px #ffa50073}.portfolio .container{justify-content:center;align-items:center;height:100%;padding-top:60px;display:flex;overflow:hidden}@media (max-width:768px){.portfolio .container{padding:16px 16px 0}}.portfolio .container .wrapper{justify-content:center;align-items:center;gap:50px;max-width:1366px;height:100%;margin:auto;display:flex}@media (max-width:768px){.portfolio .container .wrapper{flex-direction:column;gap:22px;width:100%}}.portfolio .container .wrapper .imageContainer{flex:1;height:50%}@media (max-width:768px){.portfolio .container .wrapper .imageContainer{border-radius:16px;flex:none;width:100%;height:220px;overflow:hidden}}.portfolio .container .wrapper .imageContainer img{object-fit:cover;width:100%;height:100%;margin-top:50px}@media (max-width:768px){.portfolio .container .wrapper .imageContainer img{margin-top:0}}.portfolio .container .wrapper .textContainer{flex-direction:column;flex:1;gap:30px;display:flex}@media (max-width:768px){.portfolio .container .wrapper .textContainer{text-align:center;align-items:center;gap:16px;transform:none!important}}.portfolio .container .wrapper .textContainer h2{font-size:72px}@media (max-width:768px){.portfolio .container .wrapper .textContainer h2{font-size:30px}}.portfolio .container .wrapper .textContainer p{color:#c9c9c9;font-size:20px}@media (max-width:768px){.portfolio .container .wrapper .textContainer p{font-size:15px;line-height:1.6}}.portfolio .container .wrapper .textContainer .buttonContainer{gap:20px;display:flex}@media (max-width:768px){.portfolio .container .wrapper .textContainer .buttonContainer{justify-content:center;gap:12px}}.portfolio .container .wrapper .textContainer a{cursor:pointer;background-color:orange;border:none;border-radius:10px;justify-content:center;align-items:center;gap:10px;width:250px;height:60px;transition:transform .2s,box-shadow .2s;display:flex}.portfolio .container .wrapper .textContainer a:hover{transform:translateY(-2px);box-shadow:0 12px 26px #ffa50047}@media (max-width:768px){.portfolio .container .wrapper .textContainer a{border-radius:999px;width:auto;height:44px;min-height:44px;padding:0 18px}}.portfolio .container .wrapper .textContainer a p{color:#000;font-size:20px;font-weight:500}@media (max-width:768px){.portfolio .container .wrapper .textContainer a p{font-size:14px;display:block}}.portfolio .container .wrapper .textContainer a svg{width:35px}@media (max-width:768px){.portfolio .container .wrapper .textContainer a svg{width:20px;height:20px}}
.skills{background:linear-gradient(#0c0c1d,#111132);flex-direction:column;justify-content:flex-start;align-items:center;min-height:100vh;padding:120px 24px 80px;display:flex;overflow:hidden}.skills .titleContainer{flex-direction:column;align-items:center;gap:18px;margin-bottom:34px;display:flex}.skills .titleContainer .title{align-items:center;gap:28px;display:flex}.skills .titleContainer .title img{object-fit:cover;border-radius:50px;width:250px;height:90px}.skills .titleContainer .title h1{font-size:clamp(34px,6vw,70px);font-weight:100;line-height:1.05}.skills .titleContainer .title .cvButton{color:#111132;cursor:pointer;background-color:orange;border-radius:8px;justify-content:center;align-items:center;min-height:44px;padding:10px 22px;font-size:15px;font-weight:600;transition:transform .2s,box-shadow .2s;display:inline-flex}.skills .titleContainer .title .cvButton:hover{transform:translateY(-2px);box-shadow:0 10px 24px #ffa50040}.skills .listContainer{flex-direction:column;gap:18px;width:100%;display:flex;position:relative;overflow:hidden}.skills .listContainer .marqueeRow{width:100%;padding:10px 0 14px;position:relative;overflow:hidden;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 7% 93%,#0000 100%)}.skills .listContainer .marqueeRow .rowLabel{color:#ffffffb8;letter-spacing:1px;text-transform:uppercase;background:#ffffff0a;border:1px solid #ffffff29;border-radius:999px;align-items:center;margin-bottom:12px;padding:7px 12px;font-size:12px;display:inline-flex}.skills .listContainer .marqueeRow .marqueeTrack{gap:16px;width:max-content;animation:28s linear infinite marqueeScroll;display:flex}.skills .listContainer .marqueeRow.reverse .marqueeTrack{animation-duration:32s;animation-direction:reverse}.skills .listContainer .marqueeRow:hover .marqueeTrack{animation-play-state:paused}@media (max-width:768px){.skills .listContainer{gap:14px}.skills .listContainer .marqueeRow{padding:8px 0 10px;-webkit-mask-image:linear-gradient(90deg,#0000 0,#000 12% 88%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0,#000 12% 88%,#0000 100%)}.skills .listContainer .marqueeRow .rowLabel{margin-bottom:10px;font-size:10px}.skills .listContainer .marqueeRow .marqueeTrack{gap:10px;animation-duration:22s}.skills .listContainer .marqueeRow.reverse .marqueeTrack{animation-duration:26s}}.skills .box{text-align:left;background:linear-gradient(160deg,#ffffff14,#ffffff08);border:1px solid #ffffff14;border-radius:22px;flex-direction:column;flex:0 0 280px;justify-content:center;align-items:flex-start;gap:10px;min-height:130px;padding:20px 22px;display:flex;box-shadow:0 18px 40px #0000003d}.skills .box .skillLine{align-items:center;gap:16px;width:100%;display:flex}.skills .box .skillLine .iconWrap{background:#ffffff0d;border:1px solid #ffffff1a;border-radius:18px;flex:none;place-items:center;width:58px;height:58px;display:grid}.skills .box .skillLine .iconWrap svg{width:30px;height:30px}.skills .box .skillLine .skillText{flex-direction:column;gap:6px;display:flex}.skills .box .skillLine h2{color:#fff;font-size:20px;font-weight:700;line-height:1.2}.skills .box .skillLine span{letter-spacing:1.2px;text-transform:uppercase;color:#ffffff9e;font-size:12px}@media (max-width:768px){.skills .box{border-radius:16px;flex-basis:220px;min-height:104px;padding:14px 16px}.skills .box .skillLine{gap:12px}.skills .box .skillLine .iconWrap{border-radius:14px;width:44px;height:44px}.skills .box .skillLine .iconWrap svg{width:22px;height:22px}.skills .box .skillLine h2{font-size:16px}.skills .box .skillLine span{font-size:10px}}@keyframes marqueeScroll{0%{transform:translate(0)}to{transform:translate(-50%)}}@media (max-width:768px){.skills{min-height:0;padding:88px 16px 48px}.skills .titleContainer{gap:8px;margin-bottom:24px}.skills .titleContainer .title{justify-content:center;gap:10px}.skills .titleContainer .title img{display:none}.skills .titleContainer .title h1{font-size:26px}.skills .titleContainer .title.titlerow{flex-direction:column;gap:16px}.skills .titleContainer .title.titlerow .cvButton{padding:10px 26px;font-size:14px}}@media (prefers-reduced-motion:reduce){.skills .listContainer .marqueeRow .marqueeTrack{animation:none}}
.visit-count{color:#ffffff73;font-size:13px}
