*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth;overflow-x:hidden}body{font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overflow-x:hidden;transition:background-color .3s ease-in-out}body.light-theme{background:linear-gradient(135deg,#f0f9ff,#e0f2fe,#bae6fd);color:#1e293b}body.dark-theme{background:linear-gradient(135deg,#0a0f1e,#0f172a,#1e293b);color:#e0f2fe}::-webkit-scrollbar{width:10px}::-webkit-scrollbar-track{background:transparent}body.light-theme ::-webkit-scrollbar-thumb{background:#38bdf8;border-radius:10px}body.light-theme ::-webkit-scrollbar-thumb:hover{background:#0ea5e9}body.dark-theme ::-webkit-scrollbar-thumb{background:#1e3a8a;border-radius:10px}body.dark-theme ::-webkit-scrollbar-thumb:hover{background:#0284c7}::selection{background:#38bdf8;color:#fff}a{text-decoration:none;color:inherit;transition:color .2s ease-in-out}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.2}h1{font-size:clamp(2.5rem,5vw,4rem);font-weight:700}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{line-height:1.6;font-size:clamp(1rem,2vw,1.125rem)}code{font-family:SF Mono,Monaco,Cascadia Code,Roboto Mono,monospace;padding:.2rem .4rem;border-radius:4px;font-size:.875em}body.light-theme code{background:#0ea5e91a;color:#0369a1}body.dark-theme code{background:#38bdf81a;color:#7dd3fc}button{cursor:pointer;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;border:none;outline:none;transition:all .2s ease-in-out}.container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}@media(min-width:1024px){.container{padding:0 3rem}}.section{padding:6rem 0}@media(min-width:1024px){.section{padding:6rem 0}}.navbar{position:fixed;top:0;left:0;right:0;z-index:1000;padding:1rem 0;transition:all .3s ease-in-out}.navbar.scrolled{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 4px 30px #0000001a;padding:.5rem 0}.dark-theme .navbar.scrolled{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 4px 30px #0000004d}.navbar .navbar-container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}@media(min-width:1024px){.navbar .navbar-container{padding:0 3rem}}.navbar .navbar-container{display:flex;justify-content:space-between;align-items:center}.navbar .navbar-logo .logo-text{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#0ea5e9,#0369a1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark-theme .navbar .navbar-logo .logo-text{background:linear-gradient(135deg,#7dd3fc,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.navbar .navbar-menu{display:flex;list-style:none;gap:2rem}.navbar .navbar-menu li{position:relative}.navbar .navbar-menu li .nav-link{font-size:1rem;font-weight:500;transition:color .2s ease-in-out;position:relative}.navbar .navbar-menu li .nav-link:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:2px;background:linear-gradient(90deg,#38bdf8,#0284c7);transition:width .2s ease-in-out}.navbar .navbar-menu li .nav-link:hover{color:#0ea5e9}.dark-theme .navbar .navbar-menu li .nav-link:hover{color:#7dd3fc}.navbar .navbar-menu li .nav-link:hover:after{width:100%}@media(max-width:768px){.navbar .desktop-menu{display:none}}.navbar .navbar-actions{display:flex;align-items:center;gap:1rem}.navbar .navbar-actions .theme-toggle{width:40px;height:40px;border-radius:50%;background:#38bdf833;border:none;font-size:1.25rem;display:flex;justify-content:center;align-items:center;cursor:pointer}.dark-theme .navbar .navbar-actions .theme-toggle{background:#0ea5e933}.navbar .navbar-actions .theme-toggle:hover{background:#38bdf84d}.dark-theme .navbar .navbar-actions .theme-toggle:hover{background:#0ea5e94d}.navbar .navbar-actions .mobile-menu-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;cursor:pointer;padding:.5rem}@media(max-width:768px){.navbar .navbar-actions .mobile-menu-toggle{display:flex}}.navbar .navbar-actions .mobile-menu-toggle span{width:25px;height:2px;background:currentColor;transition:all .2s ease-in-out}.navbar .mobile-menu{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);margin-top:1rem;border-radius:12px;overflow:hidden}.dark-theme .navbar .mobile-menu{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}@media(min-width:768px){.navbar .mobile-menu{display:none}}.navbar .mobile-menu ul{list-style:none;padding:1rem}.navbar .mobile-menu ul li{padding:1rem;border-radius:8px;transition:background .2s ease-in-out}.navbar .mobile-menu ul li:hover{background:#38bdf81a}.dark-theme .navbar .mobile-menu ul li:hover{background:#0ea5e91a}.navbar .mobile-menu ul li a{display:block;font-size:1.125rem;font-weight:500}.hero{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;padding-top:80px;overflow:hidden}.hero .hero-container{width:100%;max-width:1280px;margin:0 auto;padding:0 1.5rem}@media(min-width:1024px){.hero .hero-container{padding:0 3rem}}.hero .hero-container{display:grid;grid-template-columns:1fr;gap:3rem;align-items:center}@media(min-width:1024px){.hero .hero-container{grid-template-columns:1fr 1fr;gap:6rem}}.hero .hero-content{text-align:center}@media(min-width:1024px){.hero .hero-content{text-align:left}}.hero .hero-content .hero-badge{display:inline-block;padding:.5rem 1.5rem;background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:50px;font-size:.875rem;font-weight:500;margin-bottom:1.5rem}.dark-theme .hero .hero-content .hero-badge{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.hero .hero-content .hero-title{margin-bottom:1.5rem;line-height:1.1}.hero .hero-content .hero-title .gradient-text{background:linear-gradient(135deg,#0ea5e9,#0369a1,#1e3a8a);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;background-size:200% 200%;animation:gradient-shift 5s ease infinite}.dark-theme .hero .hero-content .hero-title .gradient-text{background:linear-gradient(135deg,#7dd3fc,#0ea5e9,#38bdf8);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero .hero-content .hero-subtitle{font-size:clamp(1.25rem,3vw,1.75rem);font-weight:600;margin-bottom:1rem;color:#0284c7}.dark-theme .hero .hero-content .hero-subtitle{color:#38bdf8}.hero .hero-content .hero-description{font-size:clamp(1rem,2vw,1.125rem);margin-bottom:3rem;opacity:.8;max-width:600px;margin-left:auto;margin-right:auto}@media(min-width:1024px){.hero .hero-content .hero-description{margin-left:0}}.hero .hero-content .hero-buttons{display:flex;gap:1.5rem;flex-wrap:wrap;justify-content:center;margin-bottom:3rem}@media(min-width:1024px){.hero .hero-content .hero-buttons{justify-content:flex-start}}.hero .hero-content .hero-buttons .btn{padding:1rem 2rem;border-radius:50px;font-weight:600;font-size:1rem;transition:all .2s ease-in-out;display:inline-block}.hero .hero-content .hero-buttons .btn.btn-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 4px 20px #0ea5e94d}.hero .hero-content .hero-buttons .btn.btn-primary:hover{box-shadow:0 6px 30px #0ea5e966}.hero .hero-content .hero-buttons .btn.btn-secondary{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);color:#0369a1}.dark-theme .hero .hero-content .hero-buttons .btn.btn-secondary{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);color:#7dd3fc}.hero .hero-content .hero-buttons .btn.btn-secondary:hover{background:#0ea5e933}.hero .hero-content .hero-social{display:flex;gap:1.5rem;justify-content:center}@media(min-width:1024px){.hero .hero-content .hero-social{justify-content:flex-start}}.hero .hero-content .hero-social .social-link{width:48px;height:48px;background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:50%;display:flex;justify-content:center;align-items:center;transition:all .2s ease-in-out}.dark-theme .hero .hero-content .hero-social .social-link{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.hero .hero-content .hero-social .social-link svg{width:24px;height:24px;color:#0284c7}.dark-theme .hero .hero-content .hero-social .social-link svg{color:#38bdf8}.hero .hero-content .hero-social .social-link:hover{background:#0ea5e933;box-shadow:0 4px 20px #0ea5e94d}.hero .hero-visual{position:relative;width:100%;height:400px;display:none}@media(min-width:1024px){.hero .hero-visual{display:block}}.hero .hero-visual .floating-card{position:absolute;background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:0;border-radius:20px;box-shadow:0 8px 32px #0000001a;transition:all .3s ease-in-out;overflow:hidden;width:150px;height:150px}.dark-theme .hero .hero-visual .floating-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);box-shadow:0 8px 32px #0000004d}.hero .hero-visual .floating-card .card-icon{font-size:2.5rem;margin-bottom:.5rem}.hero .hero-visual .floating-card .card-text{font-size:1rem;font-weight:600;color:#0369a1}.dark-theme .hero .hero-visual .floating-card .card-text{color:#7dd3fc}.hero .hero-visual .floating-card:hover{transform:translateY(-10px) scale(1.05);box-shadow:0 12px 48px #0ea5e94d}.hero .hero-visual .floating-card.card-1{top:5%;left:10%;animation:floating 3s ease-in-out infinite}.hero .hero-visual .floating-card.card-2{top:5%;right:10%;animation:floating 3.5s ease-in-out infinite;animation-delay:.5s}.hero .hero-visual .floating-card.card-3{bottom:25%;left:5%;animation:floating 4s ease-in-out infinite;animation-delay:1s}.hero .hero-visual .floating-card.card-4{bottom:25%;right:5%;animation:floating 3.2s ease-in-out infinite;animation-delay:1.5s}.hero .hero-visual .floating-card.card-5{top:50%;left:50%;transform:translate(-50%,-50%);animation:floating 3.7s ease-in-out infinite;animation-delay:.8s}.hero .hero-scroll-indicator{position:absolute;bottom:3rem;left:50%;transform:translate(-50%)}.hero .hero-scroll-indicator .scroll-arrow{font-size:2rem;color:#0ea5e9;opacity:.6}.dark-theme .hero .hero-scroll-indicator .scroll-arrow{color:#38bdf8}.skills .section-header{text-align:center;margin-bottom:6rem}.skills .section-header .section-title{margin-bottom:1rem;background:linear-gradient(135deg,#0ea5e9,#0369a1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark-theme .skills .section-header .section-title{background:linear-gradient(135deg,#7dd3fc,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.skills .section-header .section-description{font-size:1.125rem;opacity:.8}.skills .skills-category{margin-bottom:6rem}.skills .skills-category .category-title{font-size:1.5rem;margin-bottom:2rem;color:#0284c7}.dark-theme .skills .skills-category .category-title{color:#38bdf8}.skills .skills-category .skills-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:2rem}@media(min-width:768px){.skills .skills-category .skills-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}}.skills .skills-category .skill-card{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:3rem;border-radius:20px;display:flex;align-items:center;justify-content:center;min-height:80px;transition:all .3s ease-in-out;cursor:pointer}.dark-theme .skills .skills-category .skill-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.skills .skills-category .skill-card:hover{box-shadow:0 12px 40px #0ea5e94d;background:#0ea5e91a}.skills .skills-category .skill-card .skill-name{font-size:1.125rem;font-weight:600;color:#1e293b;text-align:center}.dark-theme .skills .skills-category .skill-card .skill-name{color:#e0f2fe}.skills .additional-info{display:grid;grid-template-columns:1fr;gap:2rem;margin-top:6rem}@media(min-width:768px){.skills .additional-info{grid-template-columns:repeat(3,1fr)}}.skills .additional-info .info-card{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:3rem;border-radius:20px;text-align:center;transition:all .3s ease-in-out}.dark-theme .skills .additional-info .info-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.skills .additional-info .info-card:hover{transform:translateY(-10px);box-shadow:0 12px 40px #0ea5e94d}.skills .additional-info .info-card h4{font-size:1.25rem;margin-bottom:1rem;color:#0284c7}.dark-theme .skills .additional-info .info-card h4{color:#38bdf8}.skills .additional-info .info-card p{font-size:1rem;opacity:.8;line-height:1.6}.projects .section-header{text-align:center;margin-bottom:3rem}.projects .section-header .section-title{margin-bottom:1rem;background:linear-gradient(135deg,#0ea5e9,#0369a1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark-theme .projects .section-header .section-title{background:linear-gradient(135deg,#7dd3fc,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.projects .section-header .section-description{font-size:1.125rem;opacity:.8}.projects .filter-buttons{display:flex;gap:1rem;flex-wrap:wrap;justify-content:center;margin-bottom:3rem}.projects .filter-buttons .filter-btn{padding:.5rem 1.5rem;background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);border-radius:50px;font-weight:500;transition:all .2s ease-in-out;text-transform:capitalize}.dark-theme .projects .filter-buttons .filter-btn{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.projects .filter-buttons .filter-btn:hover{background:#38bdf833;transform:translateY(-2px)}.projects .filter-buttons .filter-btn.active{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 4px 20px #0ea5e94d}.projects .loading{text-align:center;padding:6rem 0}.projects .loading .spinner{width:50px;height:50px;border:3px solid rgba(14,165,233,.2);border-top-color:#0ea5e9;border-radius:50%;margin:0 auto 1.5rem;animation:spin 1s linear infinite}.projects .loading p{font-size:1.125rem;opacity:.8}.projects .projects-grid{display:grid;grid-template-columns:1fr;gap:2rem;margin-bottom:3rem}@media(min-width:768px){.projects .projects-grid{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.projects .projects-grid{grid-template-columns:repeat(3,1fr)}}.projects .project-card{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:2rem;border-radius:20px;transition:all .3s ease-in-out;cursor:pointer;display:flex;flex-direction:column;height:100%}.dark-theme .projects .project-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.projects .project-card:hover{box-shadow:0 12px 40px #0ea5e94d}.projects .project-card:hover .project-icon{transform:scale(1.1) rotate(10deg)}.projects .project-card:hover .project-links svg{color:#0ea5e9}.projects .project-card .project-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.projects .project-card .project-header .project-icon{font-size:2rem;transition:transform .3s ease-in-out}.projects .project-card .project-header .project-links svg{width:20px;height:20px;transition:color .2s ease-in-out;opacity:.6}.projects .project-card .project-header .project-links svg:hover{opacity:1}.projects .project-card .project-title{font-size:1.25rem;font-weight:600;margin-bottom:1rem;color:#1e293b}.dark-theme .projects .project-card .project-title{color:#e0f2fe}.projects .project-card .project-description{font-size:.9375rem;opacity:.8;line-height:1.6;margin-bottom:1.5rem;flex-grow:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.projects .project-card .project-footer{display:flex;justify-content:space-between;align-items:center;padding-top:1rem;border-top:1px solid rgba(14,165,233,.2);margin-bottom:1rem}.projects .project-card .project-footer .project-language{display:flex;align-items:center;gap:.5rem;font-size:.875rem;font-weight:500}.projects .project-card .project-footer .project-language .language-dot{width:12px;height:12px;border-radius:50%}.projects .project-card .project-footer .project-stats{display:flex;gap:1.5rem;font-size:.875rem;opacity:.7}.projects .project-card .project-topics{display:flex;flex-wrap:wrap;gap:.5rem}.projects .project-card .project-topics .topic-tag{padding:.25rem .75rem;background:#0ea5e91a;border-radius:50px;font-size:.75rem;font-weight:500;color:#0369a1}.dark-theme .projects .project-card .project-topics .topic-tag{background:#38bdf826;color:#7dd3fc}.projects .view-more{text-align:center;padding-top:3rem}.projects .view-more .btn{padding:1rem 3rem;border-radius:50px;font-weight:600;font-size:1rem;transition:all .2s ease-in-out;display:inline-block}.projects .view-more .btn.btn-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 4px 20px #0ea5e94d}.projects .view-more .btn.btn-primary:hover{box-shadow:0 6px 30px #0ea5e966}@keyframes spin{to{transform:rotate(360deg)}}.contact .section-header{text-align:center;margin-bottom:6rem}.contact .section-header .section-title{margin-bottom:1rem;background:linear-gradient(135deg,#0ea5e9,#0369a1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark-theme .contact .section-header .section-title{background:linear-gradient(135deg,#7dd3fc,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.contact .section-header .section-description{font-size:1.125rem;opacity:.8}.contact .contact-content{display:grid;grid-template-columns:1fr;gap:6rem}@media(min-width:1024px){.contact .contact-content{grid-template-columns:1fr 1.5fr}}.contact .contact-info{display:flex;flex-direction:column;gap:2rem}.contact .contact-info .info-card{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:2rem;border-radius:20px;transition:all .3s ease-in-out}.dark-theme .contact .contact-info .info-card{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.contact .contact-info .info-card:hover{transform:translateY(-5px);box-shadow:0 12px 40px #0ea5e94d}.contact .contact-info .info-card .info-icon{font-size:2.5rem;margin-bottom:1rem}.contact .contact-info .info-card h3{font-size:1.25rem;font-weight:600;margin-bottom:.5rem;color:#0284c7}.dark-theme .contact .contact-info .info-card h3{color:#38bdf8}.contact .contact-info .info-card a,.contact .contact-info .info-card p{color:inherit;opacity:.8;transition:all .2s ease-in-out;display:inline-block}.contact .contact-info .info-card a:hover{opacity:1;color:#0ea5e9;transform:translate(5px)}.contact .contact-form{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:3rem;border-radius:20px}.dark-theme .contact .contact-form{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.contact .contact-form .form-group{margin-bottom:2rem}.contact .contact-form .form-group label{display:block;font-weight:600;margin-bottom:.5rem;color:#0284c7}.dark-theme .contact .contact-form .form-group label{color:#38bdf8}.contact .contact-form .form-group input,.contact .contact-form .form-group textarea{width:100%;padding:1rem 1.5rem;border:2px solid transparent;background:#0ea5e90d;border-radius:12px;font-family:-apple-system,BlinkMacSystemFont,SF Pro Display,Segoe UI,Helvetica Neue,Arial,sans-serif;font-size:1rem;transition:all .2s ease-in-out;color:inherit}.dark-theme .contact .contact-form .form-group input,.dark-theme .contact .contact-form .form-group textarea{background:#0ea5e91a}.contact .contact-form .form-group input:focus,.contact .contact-form .form-group textarea:focus{outline:none;border-color:#0ea5e9;background:#0ea5e91a;box-shadow:0 0 0 3px #0ea5e91a}.contact .contact-form .form-group input::placeholder,.contact .contact-form .form-group textarea::placeholder{opacity:.5}.contact .contact-form .form-group textarea{resize:vertical;min-height:150px}.contact .contact-form .btn{width:100%;padding:1.5rem;border-radius:12px;font-weight:600;font-size:1.125rem;transition:all .2s ease-in-out}.contact .contact-form .btn.btn-primary{background:linear-gradient(135deg,#0ea5e9,#0284c7);color:#fff;box-shadow:0 4px 20px #0ea5e94d}.contact .contact-form .btn.btn-primary:hover{box-shadow:0 6px 30px #0ea5e966}.contact .contact-form .form-message{margin-top:1.5rem;padding:1.5rem;border-radius:12px;text-align:center;font-weight:500}.contact .contact-form .form-message.success{background:#22c55e1a;color:#16a34a;border:1px solid rgba(34,197,94,.3)}.dark-theme .contact .contact-form .form-message.success{background:#22c55e33;color:#4ade80}.contact .contact-form .form-message.error{background:#ef44441a;color:#dc2626;border:1px solid rgba(239,68,68,.3)}.dark-theme .contact .contact-form .form-message.error{background:#ef444433;color:#f87171}.contact .auth-required{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:3rem;border-radius:20px;display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px}.dark-theme .contact .auth-required{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.contact .auth-required .auth-message{text-align:center;margin-bottom:4rem}.contact .auth-required .auth-message h3{font-size:1.5rem;font-weight:600;margin-bottom:1rem;color:#0284c7}.dark-theme .contact .auth-required .auth-message h3{color:#38bdf8}.contact .auth-required .auth-message p{opacity:.7;font-size:1rem}.contact .auth-required .auth-buttons{display:flex;flex-direction:column;gap:1.5rem;width:100%;max-width:400px}.contact .auth-required .auth-buttons .btn{width:100%;padding:1.5rem 2rem;border-radius:12px;font-weight:600;font-size:1.125rem;transition:all .2s ease-in-out;display:flex;align-items:center;justify-content:center;gap:1rem;border:none;cursor:pointer}.contact .auth-required .auth-buttons .btn .btn-icon{font-size:1.5rem}.contact .auth-required .auth-buttons .btn.btn-vk{background:linear-gradient(135deg,#07f,#005dd1);color:#fff;box-shadow:0 4px 20px #0077ff4d}.contact .auth-required .auth-buttons .btn.btn-vk:hover{box-shadow:0 6px 30px #07f6}.contact .auth-required .auth-buttons .btn.btn-telegram{background:linear-gradient(135deg,#08c,#069);color:#fff;box-shadow:0 4px 20px #0088cc4d}.contact .auth-required .auth-buttons .btn.btn-telegram:hover{box-shadow:0 6px 30px #08c6}.contact .loading{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);padding:3rem;border-radius:20px;display:flex;align-items:center;justify-content:center;min-height:400px}.dark-theme .contact .loading{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.contact .loading p{font-size:1.125rem;opacity:.7}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes floating{0%,to{transform:translateY(0)}50%{transform:translateY(-20px)}}.footer{background:#ffffffb3;border:1px solid rgba(255,255,255,.2);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%);margin-top:6rem;padding:6rem 0 2rem}.dark-theme .footer{background:#0f172ab3;border:1px solid rgba(255,255,255,.1);backdrop-filter:blur(20px) saturate(180%);-webkit-backdrop-filter:blur(20px) saturate(180%)}.footer .footer-content{display:grid;grid-template-columns:1fr;gap:3rem;margin-bottom:3rem;padding-bottom:3rem;border-bottom:1px solid rgba(14,165,233,.2)}@media(min-width:640px){.footer .footer-content{grid-template-columns:repeat(2,1fr)}}@media(min-width:1024px){.footer .footer-content{grid-template-columns:2fr 1fr 1fr 1fr}}.footer .footer-section h3,.footer .footer-section h4{margin-bottom:1.5rem;color:#0284c7}.dark-theme .footer .footer-section h3,.dark-theme .footer .footer-section h4{color:#38bdf8}.footer .footer-section .footer-logo{font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,#0ea5e9,#0369a1);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.dark-theme .footer .footer-section .footer-logo{background:linear-gradient(135deg,#7dd3fc,#0ea5e9);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.footer .footer-section .footer-description{opacity:.8;line-height:1.6}.footer .footer-section .footer-links{list-style:none;display:flex;flex-direction:column;gap:1rem}.footer .footer-section .footer-links li a{opacity:.8;transition:all .2s ease-in-out;display:inline-block}.footer .footer-section .footer-links li a:hover{opacity:1;color:#0ea5e9;transform:translate(5px)}.footer .footer-section .tech-icons{display:flex;gap:1rem;font-size:1.5rem}.footer .footer-section .tech-icons span{cursor:pointer;transition:transform .2s ease-in-out}.footer .footer-section .tech-icons span:hover{transform:scale(1.2) rotate(10deg)}.footer .footer-bottom{text-align:center;opacity:.7}.footer .footer-bottom p{margin-bottom:.5rem;font-size:.875rem}.footer .footer-bottom .footer-credit{font-size:.8125rem}
