body,html{overflow-x:hidden}header .logo,header nav a:hover{color:var(--primary-color-light)}@font-face{font-display:swap;font-family:"Bricolage Grotesque";font-style:normal;font-weight:500;src:url("/assets/fonts/bricolage-grotesque-v9-latin-500.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Bricolage Grotesque";font-style:normal;font-weight:700;src:url("/assets/fonts/bricolage-grotesque-v9-latin-700.woff2") format("woff2")}@font-face{font-display:swap;font-family:"Bricolage Grotesque";font-style:normal;font-weight:800;src:url("/assets/fonts/bricolage-grotesque-v9-latin-800.woff2") format("woff2")}:root{--primary-color:#87132f;--primary-color-light:#c1121f;--primary-color-dark:#4a0010;--bg-color:#050505;--bg-color-soft:#0b0b0b;--surface-color:rgba(255, 255, 255, 0.06);--border-color:rgba(255, 255, 255, 0.12);--text-color:#f6f4ef;--text-color-muted:#a1a1a1;--white-color:#ffffff;--black-color:#000000;--primary-gradient:linear-gradient(135deg,var(--primary-color),var(--primary-color-light));--dark-gradient:linear-gradient(180deg, #050505, #0b0b0b);--font-family:"Bricolage Grotesque";--font-size-xs:0.75rem;--font-size-sm:0.875rem;--font-size-md:1rem;--font-size-lg:1.25rem;--font-size-xl:2rem;--font-size-2xl:3rem;--font-size-3xl:4rem;--font-weight-medium:500;--font-weight-bold:700;--font-weight-black:800;--space-xs:0.5rem;--space-sm:1rem;--space-md:2rem;--space-lg:4rem;--space-xl:8rem;--section-padding:clamp(5rem, 10vw, 10rem);--border-radius-sm:8px;--border-radius-md:16px;--border-radius-lg:24px;--border-radius-xl:40px;--border-radius-full:999px;--shadow-soft:0 20px 50px rgba(0, 0, 0, 0.35);--shadow-glow:0 0 80px rgba(122, 0, 25, 0.45);--transition-fast:0.25s ease;--transition-normal:0.5s ease;--transition-slow:1s ease;--container-width:1280px;--header-height:90px;--z-background:-1;--z-normal:1;--z-header:100;--z-overlay:500;--z-modal:1000}.btn-primary,.btn-secondary,header{transition:var(--transition-normal)}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font-family);font-weight:var(--font-weight-medium);color:var(--text-color);background:radial-gradient(circle at 20% 10%,rgba(122,0,25,.18),transparent 35%),radial-gradient(circle at 80% 50%,rgba(90,0,20,.12),transparent 40%),#080808}header{position:fixed;top:0;left:0;width:100%;height:var(--header-height);z-index:var(--z-header)}header .header-container{height:100%;display:flex;align-items:center;justify-content:space-between}header.scrolled{background:rgba(5,5,5,.5);backdrop-filter:blur(20px);border-bottom:1px solid var(--color-border)}header .logo{font-size:2rem;font-weight:var(--font-weight-black);letter-spacing:4px}header nav{display:flex;gap:2.5rem}header nav a{color:var(--text-color-muted);transition:var(--transition-fast)}header .navbar-avatar-slot{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}header .navbar-avatar-slot .header-avatar{width:60px;height:60px;border-radius:50%;padding:3px;background:linear-gradient(135deg,var(--primary-color),transparent);opacity:0;visibility:hidden;transform:scale(.5)}header .navbar-avatar-slot .header-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}main{overflow:hidden}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}.hero-container,header .header-container{width:min(100% - 80px,var(--container-width));margin:auto}.btn-primary,.btn-secondary{display:inline-flex;align-items:center;justify-content:center;padding:14px 35px;border-radius:var(--border-radius-full)}.btn-primary{background:var(--primary-gradient)}.btn-primary:hover{transform:translateY(-5px);box-shadow:var(--shadow-glow)}.btn-secondary{border:1px solid var(--border-color)}.btn-secondary:hover{border-color:var(--primary-color-light)}.site-background{position:fixed;inset:0;z-index:-1;overflow:hidden;pointer-events:none}.contact-section,.hero-section,.portfolio-section,.skills-section{position:relative}.site-background .hero-background{position:absolute;inset:0;background:radial-gradient(circle at center,rgba(122,0,25,.08),transparent 50%);z-index:var(--z-background)}.site-background .hero-glow{position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(122,0,25,.35);filter:blur(100px);left:20%;top:30%}.container{width:100%;padding-right:15px;padding-left:15px;margin-right:auto;margin-left:auto}.hero-section{min-height:100vh;display:flex;align-items:center;overflow:hidden;isolation:isolate}.hero-section .hero-container{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:5rem}.hero-section .hero-container .hero-avatar-slot{display:flex;justify-content:center;align-items:center}.hero-section .hero-container .hero-avatar-slot .profile-wrapper{width:380px;height:380px;border-radius:50%;padding:10px;background:linear-gradient(135deg,var(--primary-color),transparent);transform-origin:center;will-change:transform}.hero-section .hero-container .hero-avatar-slot .profile-wrapper img{width:100%;height:100%;object-fit:cover;border-radius:50%;border:8px solid var(--bg-color)}.hero-section .hero-container .hero-content h1{font-size:clamp(3rem, 6vw, 5rem);line-height:1.1;font-weight:var(--font-weight-black)}.hero-section .hero-container .hero-subtitle{color:var(--primary-color-light);letter-spacing:8px;text-transform:uppercase}.hero-section .hero-container .hero-content p{margin-top:1.5rem;color:var(--text-color-muted);font-size:1.2rem}.hero-section .hero-container .hero-content .hero-buttons{margin-top:var(--space-sm)}.skills-section::before{content:"";position:absolute;width:400px;height:400px;background:#7a0019;filter:blur(150px);opacity:.12;left:-200px;top:30%}.section-title{text-align:center;margin-bottom:80px}.section-title h2{font-size:clamp(2.5rem, 5vw, 4rem)}.section-title span{color:var(--primary-color-light);text-transform:uppercase;letter-spacing:5px}.skills-map .skill-map-line span,.timeline-progress{display:block;width:100%;height:0;background:var(--primary-color-light)}.timeline-left{justify-content:flex-start}.timeline-right{justify-content:flex-end}.timeline-node{position:absolute;left:50%;transform:translateX(-50%);width:55px;height:55px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:var(--primary-color)}.skills-map{position:relative;padding:0 0 80px;display:flex;flex-direction:column;align-items:center;gap:80px}.skills-map .skill-map-line{position:absolute;top:220px;bottom:0;width:3px;background:rgba(255,255,255,.12);overflow:hidden}.skills-map .skill-node-wrapper{position:relative;z-index:5}.skills-map .skill-node-wrapper .skill-node{width:220px;height:220px;display:flex;align-items:center;justify-content:center;text-align:center;padding:30px;border-radius:50%;background:linear-gradient(135deg,var(--primary-color),var(--primary-color-dark));color:var(--text-color);font-size:1.4rem;font-weight:var(--font-weight-bold);box-shadow:0 0 60px rgba(120,0,30,.5)}.skills-map .skill-item{position:relative;width:100%;display:flex}.skills-map .skill-item::before{content:"";position:absolute;top:50%;width:20px;height:20px;border-radius:50%;background:var(--primary-color);box-shadow:0 0 25px var(--primary-color)}.skills-map .skill-item.left{justify-content:flex-start;padding-right:55%}.skills-map .skill-item.left ::before{right:50%;transform:translateX(50%)}.dock,.skills-map .skill-item.right::before{left:50%;transform:translateX(-50%)}.skills-map .skill-item.right{justify-content:flex-end;padding-left:55%}.skills-map .skill-item .skill-card{position:relative;width:420px;padding:35px;border-radius:var(--border-radius-lg);background:#080808;border:2px solid rgba(255,255,255,.08);overflow:hidden;isolation:isolate}.skills-map .skill-item .skill-card::before{content:"";position:absolute;width:250%;height:250%;top:-75%;left:-75%;background:conic-gradient(transparent,#810100,#630102,transparent 35%);animation:4s linear infinite rotate-border-animation;z-index:-2}.skills-map .skill-item .skill-card::after{content:"";position:absolute;inset:1px;background:#080808;border-radius:inherit;z-index:-1}.skills-map .skill-item .skill-card>*{position:relative;z-index:2}.skills-map .skill-item .skill-card h3{color:var(--primary-color-light);margin-bottom:25px;font-size:1.5rem}.skills-map .skill-item .skill-card ul{list-style:none}.skills-map .skill-item .skill-card li{position:relative;margin-bottom:12px;padding-left:25px;color:var(--text-color-muted)}.skills-map .skill-item .skill-card li::before{content:"";position:absolute;left:0;top:9px;width:8px;height:8px;border-radius:50%;background:var(--primary-color-light)}.portfolio-section{padding:var(--section-padding) 0}.portfolio-section .portfolio-slider{width:100%;padding:80px 0;overflow:visible}.portfolio-section .portfolio-slider .swiper-slide{width:520px;height:600px;border-radius:24px;overflow:hidden;transition:.6s}.portfolio-section .project-card{background:#111;position:relative;overflow:hidden;border-radius:var(--border-radius-lg);aspect-ratio:9/16}.portfolio-section .project-card img{width:100%;height:100%;object-fit:contain;transition:.8s}.portfolio-section .project-card .project-overlay{position:absolute;left:0;right:0;bottom:0;padding:50px 35px 35px;background:linear-gradient(to top,rgba(0,0,0,.95) 0,rgba(80,0,20,.35) 50%,rgba(0,0,0,0) 100%);z-index:5}.portfolio-section .project-card .project-overlay h3{font-size:1.6rem;color:var(--color-primary-light);margin-bottom:10px;text-shadow:0 0 20px rgba(180,0,40,.5)}.portfolio-section .portfolio-slider .swiper-slide-active{transform:scale(1.05)}.portfolio-section .portfolio-slider .swiper-slide-active img{transform:scale(1.05);object-fit:contain}.portfolio-section .portfolio-slider .swiper-slide-next,.portfolio-section .portfolio-slider .swiper-slide-prev{filter:blur(2px)}.portfolio-section .portfolio-slider .swiper-button-next,.portfolio-section .portfolio-slider .swiper-button-prev{color:#b71c1c}.portfolio-section .portfolio-slider .swiper-pagination-bullet{background:#777}.portfolio-section .portfolio-slider .swiper-pagination-bullet-active{background:#b71c1c}.dock{position:fixed;bottom:30px;display:inline-flex;align-items:center;justify-content:center;gap:16px;padding:12px 32px;background:rgba(255,255,255,.01);backdrop-filter:blur(30px) saturate(180%);-webkit-backdrop-filter:blur(30px) saturate(180%);border-radius:60px;box-shadow:0 20px 60px rgba(0,0,0,.6),inset 0 1px 1px rgba(255,255,255,.2),inset 0 -2px 6px rgba(0,0,0,.3);border:1px solid rgba(255,255,255,.15);background-image:linear-gradient(135deg,rgba(255,255,255,.12) 0,rgba(255,255,255,.02) 100%);z-index:1000}.dock .dock-item{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:rgba(255,255,255,.06);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border:1px solid rgba(255,255,255,.08);box-shadow:var(--shadow-glow);transition:.3s cubic-bezier(.34, 1.56, .64, 1);cursor:pointer;position:relative;color:#fff;text-shadow:0 1px 4px rgba(0,0,0,.3);padding:8px}.dock .dock-item:hover{transform:translateY(-8px) scale(1.05)}.dock .dock-item:hover img{transform:scale(1.25) rotate(-3deg)}.dock .dock-item:hover .label{opacity:1;transform:scale(1)}.dock .dock-item img{font-size:26px;color:#fff;transition:transform .3s cubic-bezier(.34, 1.56, .64, 1);position:relative;z-index:1}@keyframes rotate-border-animation{from{transform:rotate(0)}to{transform:rotate(360deg)}}@media (max-width:480px){.dock{gap:5px;padding:10px 12px;border-radius:30px;bottom:15px}.dock-item{width:44px;padding:6px 8px}.dock-item i{font-size:16px;width:20px}.dock-item .label{font-size:11px}}@media (min-width:576px){.container{max-width:540px}}@media (max-width:576px){.dock{gap:8px;padding:14px 18px;border-radius:40px;bottom:30px}.dock-item{width:52px;padding:8px 12px}.dock-item i{font-size:18px;width:24px}.dock-item .label{font-size:13px}}@media (min-width:768px){.container{max-width:720px}}@media (max-width:768px){header{display:flex;justify-content:space-between}header nav{display:none}header .hero-container{width:100%}header .navbar-avatar-slot{position:initial;transform:initial}.skills-map{align-items:flex-start}.skills-map .skill-map-line{top:75px}.skills-map .skill-node-wrapper{width:calc(100% - 20px);left:20px}.skills-map .skill-node-wrapper .skill-node{width:100%;border-top-left-radius:0;border-bottom-left-radius:0;border-top-right-radius:var(--border-radius-lg);border-bottom-right-radius:var(--border-radius-lg);height:75px}}@media (min-width:992px){.container{max-width:960px}}@media (max-width:992px){.hero-section .hero-container{grid-template-columns:1fr;text-align:center}.hero-section .hero-container .hero-avatar-slot .profile-wrapper{width:280px;height:280px}.skills-map .skill-map-line{left:20px}.skills-map .skill-item.left,.skills-map .skill-item.right{justify-content:flex-start;padding-left:60px;padding-right:0}.skills-map .skill-item::before{left:20px!important;transform:translateX(-50%)!important}.skills-map .skill-node-wrapper .skill-node{font-size:1.1rem}.skills-map .skill-item.skill-card{width:calc(100% - 70px);margin-left:70px}}@media (min-width:1200px){.container{max-width:1140px}}