:root{--color-primary: #83C9BE;--color-primary-dark: #328F7F;--color-accent: #E2AC4F;--color-bg-primary: #0a0a0a;--color-bg-card: rgba(255, 255, 255, .05);--color-border: rgba(131, 201, 190, .2);--color-text-primary: #ffffff;--color-text-secondary: rgba(255, 255, 255, .7);--font-primary: "lulo-one", "Poppins", sans-serif;--font-secondary: "Poppins", "Inter", sans-serif;--space-xs: .5rem;--space-sm: 1rem;--space-md: 1.5rem;--space-lg: 2rem;--space-xl: 3rem;--space-2xl: 4rem;--transition-smooth: .4s cubic-bezier(.4, 0, .2, 1)}.portfolio-hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;overflow:hidden;background:var(--color-bg-primary);padding:var(--space-2xl) 0}.portfolio-hero__background{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1}.portfolio-hero__gradient{position:absolute;width:100%;height:100%;background:radial-gradient(ellipse at center,rgba(131,201,190,.1) 0%,transparent 50%),radial-gradient(ellipse at top left,rgba(226,172,79,.08) 0%,transparent 40%),radial-gradient(ellipse at bottom right,rgba(50,143,127,.08) 0%,transparent 40%);animation:gradientShift 20s ease-in-out infinite}.flow-lines{position:absolute;width:100%;height:100%;opacity:.9}.flow-lines__svg{width:100%;height:100%}.flow-line{stroke-dasharray:200;stroke-dashoffset:200;animation:flowAnimation 6s ease-in-out infinite}.flow-line--1{animation-delay:0s}.flow-line--2{animation-delay:.8s}.flow-line--3{animation-delay:1.6s}.flow-line--4{animation-delay:2.4s}.flow-line--5{animation-delay:3.2s}.flow-line--6{animation-delay:4s}.flow-line--7{animation-delay:4.8s}.decorative-nodes{position:absolute;width:100%;height:100%}.node{position:absolute;width:12px;height:12px;background:var(--color-primary);border-radius:50%;box-shadow:0 0 30px #83c9becc;animation:nodePulse 3s ease-in-out infinite}.node--1{top:20%;left:15%;animation-delay:0s}.node--2{top:30%;right:20%;animation-delay:.5s}.node--3{bottom:25%;left:25%;animation-delay:1s}.node--4{bottom:35%;right:15%;animation-delay:1.5s}.node--5{top:50%;left:10%;animation-delay:2s}.node--6{top:60%;right:12%;animation-delay:2.5s}.portfolio-hero__container{position:relative;max-width:1200px;margin:0 auto;padding:0 var(--space-lg);width:100%;z-index:10;display:flex;flex-direction:column;align-items:center;gap:var(--space-2xl)}.portfolio-hero__content{display:flex;flex-direction:column;align-items:center;text-align:center;gap:var(--space-xl);max-width:900px}.content__badge{display:inline-flex;align-items:center;gap:var(--space-sm);padding:var(--space-sm) var(--space-lg);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:50px;font-family:var(--font-secondary);font-size:.875rem;font-weight:500;color:var(--color-primary);backdrop-filter:blur(10px);text-transform:uppercase;letter-spacing:.05em;opacity:0;transform:translateY(-50px) scale(.8);animation:fadeInDown 1s ease-out .3s forwards}.badge__dot{width:8px;height:8px;background:var(--color-primary);border-radius:50%;animation:pulse 2s ease-in-out infinite}.content__title{font-family:var(--font-primary);font-size:clamp(2.5rem,8vw,5.5rem);font-weight:700;line-height:1.1;color:var(--color-text-primary);margin:0;letter-spacing:-.02em;text-transform:uppercase;display:flex;flex-direction:column;gap:var(--space-xs)}.title__line{display:block;opacity:0;transform:translate(-80px) rotateY(-20deg)}.title__line:nth-child(1){animation:titleSlideIn 1.2s ease-out .6s forwards}.title__line:nth-child(2){animation:titleSlideIn 1.2s ease-out .9s forwards}.title__line:nth-child(3){animation:titleSlideIn 1.2s ease-out 1.2s forwards}.title__line--highlight{background:linear-gradient(135deg,var(--color-primary),var(--color-accent));background-clip:text;-webkit-background-clip:text;-webkit-text-fill-color:transparent;position:relative}.title__line--highlight:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,transparent,var(--color-primary),var(--color-accent),transparent);animation:underlineGlow 3s ease-in-out infinite}.content__subtitle{font-family:var(--font-secondary);font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.7;color:var(--color-text-secondary);max-width:700px;font-weight:400;opacity:0;transform:translateY(40px) scale(.95);animation:fadeInUpScale 1s ease-out 1.5s forwards}.hide-mobile{display:inline}.portfolio-hero__categories{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:var(--space-lg);width:100%;max-width:800px}.category{display:flex;flex-direction:column;align-items:center;gap:var(--space-md);padding:var(--space-xl) var(--space-lg);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:16px;backdrop-filter:blur(10px);transition:all var(--transition-smooth);opacity:0;transform:translateY(60px) scale(.8) rotateX(20deg)}.category:nth-child(1){animation:categoryFadeIn 1s ease-out 2s forwards}.category:nth-child(2){animation:categoryFadeIn 1s ease-out 2.2s forwards}.category:nth-child(3){animation:categoryFadeIn 1s ease-out 2.4s forwards}.category:nth-child(4){animation:categoryFadeIn 1s ease-out 2.6s forwards}.category:hover{transform:translateY(-15px) scale(1.1);border-color:var(--color-primary);box-shadow:0 0 40px #83c9be80}.category__icon{font-size:2.5rem;animation:iconFloat 3s ease-in-out infinite}.category:nth-child(1) .category__icon{animation-delay:0s}.category:nth-child(2) .category__icon{animation-delay:.5s}.category:nth-child(3) .category__icon{animation-delay:1s}.category:nth-child(4) .category__icon{animation-delay:1.5s}.category__label{font-family:var(--font-secondary);font-size:.875rem;font-weight:600;color:var(--color-primary);text-transform:uppercase;letter-spacing:.1em}.scroll-indicator{position:absolute;bottom:var(--space-2xl);left:50%;transform:translate(-50%);display:flex;flex-direction:column;align-items:center;gap:var(--space-sm);color:var(--color-text-secondary);font-family:var(--font-secondary);font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;z-index:10;opacity:0;animation:fadeIn .8s ease-out 2s forwards}.scroll-arrow{animation:scrollBounce 2s ease-in-out infinite;font-size:1.5rem}@keyframes gradientShift{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes flowAnimation{0%{stroke-dashoffset:200;opacity:0}10%{opacity:1}50%{stroke-dashoffset:0;opacity:1}90%{opacity:1}to{stroke-dashoffset:-200;opacity:0}}@keyframes nodePulse{0%,to{opacity:.8;transform:scale(1);box-shadow:0 0 30px #83c9becc}50%{opacity:1;transform:scale(1.5);box-shadow:0 0 50px #83c9be}}@keyframes fadeInDown{to{opacity:1;transform:translateY(0)}}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}@keyframes titleSlideIn{to{opacity:1;transform:translate(0) rotateY(0)}}@keyframes fadeInUpScale{to{opacity:1;transform:translateY(0) scale(1)}}@keyframes fadeIn{to{opacity:1}}@keyframes pulse{0%,to{opacity:1;box-shadow:0 0 #83c9beb3}50%{opacity:.7;box-shadow:0 0 0 8px #83c9be00}}@keyframes underlineGlow{0%,to{opacity:.3;transform:scaleX(.8)}50%{opacity:1;transform:scaleX(1)}}@keyframes categoryFadeIn{to{opacity:1;transform:translateY(0) scale(1) rotateX(0)}}@keyframes iconFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes scrollBounce{0%,to{transform:translateY(0)}50%{transform:translateY(8px)}}@media (max-width: 767px){.portfolio-hero{padding:var(--space-xl) 0}.portfolio-hero__container{padding:0 var(--space-md)}.content__title{font-size:clamp(2rem,10vw,3rem)}.hide-mobile{display:none}.content__stats{grid-template-columns:repeat(2,1fr);gap:var(--space-md);width:100%}.stat{min-width:auto}.content__cta{flex-direction:column;width:100%}.cta-btn{width:100%}.portfolio-hero__categories{grid-template-columns:repeat(2,1fr);gap:var(--space-md)}.node{display:none}.scroll-indicator{bottom:var(--space-lg)}}@media (min-width: 768px) and (max-width: 1023px){.portfolio-hero__categories{grid-template-columns:repeat(4,1fr)}}@media (min-width: 1024px){.portfolio-hero__container{padding:0 var(--space-xl)}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.flow-line,.node{opacity:.3;animation:none}}
