*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--color-primary: #1a1a2e;--color-secondary: #16213e;--color-accent: #e94560;--color-accent-light: #ff6b85;--color-gold: #d4af37;--color-white: #ffffff;--color-light: #f8f9fa;--color-gray: #6c757d;--color-dark: #212529;--color-text: #2c3e50;--color-text-light: #6c757d;--color-bg: #f8f9fa;--color-card: #ffffff;--color-border: rgba(0, 0, 0, .1);--font-primary: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-display: "Playfair Display", Georgia, serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2rem;--spacing-xl: 3rem;--spacing-2xl: 4rem;--radius-sm: .5rem;--radius-md: 1rem;--radius-lg: 1.5rem;--radius-xl: 2rem;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .1);--shadow-md: 0 4px 6px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .15);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .2);--transition-fast: .2s ease;--transition-base: .3s ease;--transition-slow: .5s ease}[data-theme=dark]{--color-primary: #f0f0f0;--color-secondary: #e0e0e0;--color-text: #e0e0e0;--color-text-light: #b0b0b0;--color-bg: #0f0f1a;--color-card: #1a1a2e;--color-border: rgba(255, 255, 255, .15);--color-light: #16213e;--color-dark: #f0f0f0;--color-white: #1a1a2e;--color-gray: #6c757d;--shadow-sm: 0 2px 4px rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 10px 25px rgba(0, 0, 0, .5);--shadow-xl: 0 20px 40px rgba(0, 0, 0, .6)}html{scroll-behavior:smooth}body{font-family:var(--font-primary);color:var(--color-text);background-color:var(--color-bg);line-height:1.6;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;transition:background-color var(--transition-base),color var(--transition-base);visibility:hidden}#root{min-height:100vh;position:relative}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:600;line-height:1.2;color:var(--color-primary);transition:color var(--transition-base)}h1{font-size:clamp(2.5rem,5vw,4rem)}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{margin-bottom:var(--spacing-sm);transition:color var(--transition-base)}a{color:inherit;text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-accent)}img{max-width:100%;height:auto;display:block}button{font-family:inherit;cursor:pointer;border:none;background:none;transition:all var(--transition-fast)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}@keyframes spin{to{transform:rotate(360deg)}}.fade-in,.slide-up,.slide-left,.slide-right{opacity:0}.fade-in.animate-in{animation:fadeIn .6s ease forwards}.slide-up.animate-in{animation:slideUp .8s ease forwards}.slide-left.animate-in{animation:slideLeft .8s ease forwards}.slide-right.animate-in{animation:slideRight .8s ease forwards}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.spinner{width:40px;height:40px;border:4px solid var(--color-border);border-top-color:var(--color-accent);border-radius:50%;animation:spin .8s linear infinite;margin:0 auto var(--spacing-md)}html{scroll-padding-top:80px}.skip-link{position:absolute;top:-40px;left:0;background:var(--color-accent);color:#fff;padding:var(--spacing-sm);text-decoration:none;z-index:10000}.skip-link:focus{top:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}img[loading=lazy]{opacity:0;transition:opacity .3s}img[loading=lazy].loaded{opacity:1}*{will-change:auto}.hero-image,.project-card,.service-card{will-change:transform}html{scroll-behavior:smooth;scroll-padding-top:80px}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}.app{position:relative;min-height:100vh;overflow-x:hidden}.scroll-progress{position:fixed;top:0;left:0;height:3px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-light));z-index:2000;transition:width .1s ease}.navbar{position:fixed;top:0;left:0;right:0;background:#ffffffe6;backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);box-shadow:0 2px 20px #0000001a;z-index:1000;padding:var(--spacing-sm) 0;transition:all var(--transition-base);border-bottom:1px solid rgba(233,69,96,.1)}.navbar:hover{background:#fffffff2;box-shadow:0 4px 30px #e9456026}[data-theme=dark] .navbar{background:#0f0f1af2;border-bottom:1px solid var(--color-border);box-shadow:0 2px 20px #00000080}[data-theme=dark] .navbar:hover{background:#0f0f1afa;box-shadow:0 4px 30px #e9456033}[data-theme=dark] .nav-links{background:var(--color-card)}[data-theme=dark] .nav-links a{color:var(--color-text);border-color:var(--color-border)}[data-theme=dark] .mobile-menu-toggle span{background:var(--color-text)}.nav-content{display:flex;justify-content:space-between;align-items:center}.logo{font-family:var(--font-display);font-size:1.5rem;font-weight:700;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:.1em;transition:all var(--transition-base);position:relative}.logo:after{content:"";position:absolute;bottom:-2px;left:0;width:0;height:2px;background:var(--color-accent);transition:width var(--transition-base)}.logo:hover:after{width:100%}.nav-links{display:flex;gap:var(--spacing-lg)}.nav-links a{font-weight:500;color:var(--color-text);position:relative;padding:var(--spacing-xs) 0}.nav-links a:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-accent);transition:width var(--transition-base)}.nav-links a:hover:after{width:100%}.theme-toggle{font-size:1.5rem;padding:var(--spacing-xs);border-radius:var(--radius-sm);transition:transform var(--transition-fast);background:transparent}.theme-toggle:hover{transform:scale(1.1) rotate(15deg)}.mobile-menu-toggle{display:none;flex-direction:column;gap:5px;background:transparent;border:none;cursor:pointer;padding:var(--spacing-xs);z-index:1001}.mobile-menu-toggle span{width:25px;height:3px;background:var(--color-primary);transition:all var(--transition-base);border-radius:2px}.mobile-menu-toggle span.open:nth-child(1){transform:rotate(45deg) translate(8px,8px)}.mobile-menu-toggle span.open:nth-child(2){opacity:0}.mobile-menu-toggle span.open:nth-child(3){transform:rotate(-45deg) translate(7px,-7px)}@media(max-width:768px){.mobile-menu-toggle{display:flex}.nav-links{position:fixed;top:60px;left:0;right:0;background:var(--color-card);flex-direction:column;padding:var(--spacing-lg);box-shadow:var(--shadow-lg);transform:translate(-100%);transition:transform var(--transition-base);z-index:999;gap:var(--spacing-md);border-bottom:1px solid var(--color-border)}.nav-links.mobile-open{transform:translate(0)}.nav-links a{padding:var(--spacing-sm);border-bottom:1px solid var(--color-border)}.nav-links a:last-of-type{border-bottom:none}}.hero{padding:calc(var(--spacing-2xl) + 60px) 0 var(--spacing-2xl);background:linear-gradient(135deg,var(--color-light) 0%,#e9ecef 50%,#dee2e6 100%);position:relative;overflow:hidden;transition:background var(--transition-base)}[data-theme=dark] .hero{background:linear-gradient(135deg,var(--color-bg) 0%,#1a1a2e 50%,#0f0f1a 100%)}.hero:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 20% 50%,rgba(233,69,96,.1) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,107,133,.1) 0%,transparent 50%);animation:gradientShift 15s ease infinite;pointer-events:none}.hero:after{content:"";position:absolute;top:-50%;right:-10%;width:600px;height:600px;background:radial-gradient(circle,rgba(233,69,96,.15) 0%,transparent 70%);border-radius:50%;animation:float 20s ease-in-out infinite;pointer-events:none}@keyframes gradientShift{0%,to{opacity:1}50%{opacity:.8}}@keyframes float{0%,to{transform:translate(0) scale(1)}33%{transform:translate(30px,-30px) scale(1.1)}66%{transform:translate(-20px,20px) scale(.9)}}[data-theme=dark] .hero:before{background:radial-gradient(circle at 20% 50%,rgba(233,69,96,.25) 0%,transparent 50%),radial-gradient(circle at 80% 80%,rgba(255,107,133,.2) 0%,transparent 50%)}[data-theme=dark] .hero:after{background:radial-gradient(circle,rgba(233,69,96,.2) 0%,transparent 70%)}.hero-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:center}.hero-label{font-size:.875rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-accent);font-weight:600;margin-bottom:var(--spacing-sm)}.hero h1{margin-bottom:var(--spacing-md);color:var(--color-primary);background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-accent) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;animation:textShine 3s ease-in-out infinite;position:relative;z-index:1}@keyframes textShine{0%,to{background-position:0% 50%}50%{background-position:100% 50%}}.hero-subheading{font-size:1.25rem;color:var(--color-text-light);margin-bottom:var(--spacing-md);font-weight:500}.hero-description{font-size:1.1rem;color:var(--color-text);line-height:1.8;margin-bottom:var(--spacing-lg)}.hero-cta{display:flex;gap:var(--spacing-md);margin-bottom:var(--spacing-xl);flex-wrap:wrap;position:relative;z-index:1}.hero-stats{display:flex;gap:var(--spacing-xl);padding-top:var(--spacing-lg);border-top:1px solid var(--color-border)}.stat{display:flex;flex-direction:column}.stat-number{font-size:2rem;font-weight:700;color:var(--color-accent);font-family:var(--font-display)}.stat-label{font-size:.875rem;color:var(--color-text-light);text-transform:uppercase;letter-spacing:.05em}.hero-image{position:relative;border-radius:var(--radius-xl);overflow:hidden;box-shadow:0 20px 60px #e945604d,0 0 0 1px #e945601a;transform:perspective(1000px) rotateY(-5deg);transition:all var(--transition-slow);z-index:1}.hero-image:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(233,69,96,.1) 0%,transparent 100%);z-index:1;opacity:0;transition:opacity var(--transition-base)}.hero-image:hover{transform:perspective(1000px) rotateY(0) scale(1.05);box-shadow:0 30px 80px #e9456066,0 0 0 1px #e9456033}.hero-image:hover:before{opacity:1}.hero-image img{position:relative;z-index:0}.hero-image img{width:100%;height:500px;object-fit:cover}.placeholder-image{width:100%;height:500px;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.5rem;transition:background var(--transition-base)}[data-theme=dark] .placeholder-image{background:linear-gradient(135deg,#1a1a2e,#16213e);color:var(--color-text)}.btn{padding:var(--spacing-sm) var(--spacing-lg);border-radius:var(--radius-sm);font-weight:600;font-size:1rem;transition:all var(--transition-base);display:inline-block;text-align:center}.btn-primary{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light));color:#fff;box-shadow:0 4px 15px #e9456066,0 0 #e9456000;position:relative;overflow:hidden}.btn-primary:before{content:"";position:absolute;top:50%;left:50%;width:0;height:0;border-radius:50%;background:#ffffff4d;transform:translate(-50%,-50%);transition:width .6s,height .6s}.btn-primary:hover:before{width:300px;height:300px}.btn-primary:hover{transform:translateY(-3px);box-shadow:0 8px 25px #e9456080,0 0 0 4px #e945601a}.btn-primary span{position:relative;z-index:1}.btn-outline{background:transparent;color:var(--color-primary);border:2px solid var(--color-primary);transition:all var(--transition-base)}.btn-outline:hover{background:var(--color-primary);color:var(--color-bg)}[data-theme=dark] .btn-outline{border-color:var(--color-primary);color:var(--color-primary)}[data-theme=dark] .btn-outline:hover{background:var(--color-primary);color:var(--color-bg)}.btn-secondary{background:var(--color-gray);color:#fff;transition:all var(--transition-base)}.btn-secondary:hover{background:var(--color-dark);color:var(--color-text)}[data-theme=dark] .btn-secondary{background:#ffffff1a;color:var(--color-text);border:1px solid var(--color-border)}[data-theme=dark] .btn-secondary:hover{background:#fff3;color:var(--color-text)}.section-header{text-align:center;margin-bottom:var(--spacing-2xl)}.section-label{font-size:.875rem;text-transform:uppercase;letter-spacing:.2em;color:var(--color-accent);font-weight:600;margin-bottom:var(--spacing-sm)}.section-header h2{margin-bottom:var(--spacing-md);position:relative;display:inline-block}.section-header h2:after{content:"";position:absolute;bottom:-10px;left:50%;transform:translate(-50%);width:60px;height:4px;background:linear-gradient(90deg,transparent,var(--color-accent),transparent);border-radius:2px;animation:expandLine 1s ease-out}@keyframes expandLine{0%{width:0}to{width:60px}}.section-description{font-size:1.1rem;color:var(--color-text-light);max-width:600px;margin:0 auto}.about{padding:var(--spacing-2xl) 0;background:var(--color-card);transition:background var(--transition-base)}[data-theme=dark] .about{background:var(--color-card)}.timeline{max-width:800px;margin:0 auto;position:relative;padding:var(--spacing-lg) 0}.timeline:before{content:"";position:absolute;left:30px;top:0;bottom:0;width:2px;background:var(--color-accent);opacity:.3}.timeline-item{position:relative;padding-left:80px;margin-bottom:var(--spacing-xl)}.timeline-year{position:absolute;left:0;top:0;width:60px;height:60px;background:var(--color-accent);color:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:700;font-size:.875rem;box-shadow:var(--shadow-md)}.timeline-content{background:var(--color-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border);transition:all var(--transition-base)}.timeline-content:hover{transform:translate(10px);box-shadow:var(--shadow-lg)}.timeline-content h3{margin-bottom:var(--spacing-xs);color:var(--color-accent);transition:color var(--transition-base)}[data-theme=dark] .timeline-content h3{color:var(--color-accent)}.timeline-content p{color:var(--color-text-light);margin:0;transition:color var(--transition-base)}[data-theme=dark] .timeline-content p{color:var(--color-text-light)}.services{padding:var(--spacing-2xl) 0;background:var(--color-bg);transition:background var(--transition-base)}.services-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg)}.service-card{padding:var(--spacing-lg);border-radius:var(--radius-lg);background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);transition:all var(--transition-base);border:1px solid rgba(255,255,255,.3);position:relative;overflow:hidden}[data-theme=dark] .service-card{background:#1a1a2eb3;border-color:#ffffff1a}.service-card:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(90deg,transparent,rgba(233,69,96,.1),transparent);transition:left .5s ease}.service-card:hover:before{left:100%}.service-card:hover{transform:translateY(-10px) scale(1.03);box-shadow:0 20px 40px #e9456033,0 0 0 1px #e945601a;border-color:var(--color-accent);background:#ffffffe6}[data-theme=dark] .service-card:hover{background:#1a1a2ee6;box-shadow:0 20px 40px #e945604d,0 0 0 1px #e9456033}.service-card:hover .service-icon{transform:scale(1.2) rotate(5deg)}.service-icon{font-size:3rem;margin-bottom:var(--spacing-md);transition:transform var(--transition-base);display:inline-block}.service-card h3{margin-bottom:var(--spacing-sm);font-size:1.5rem;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .service-card h3{color:var(--color-primary)}.service-card p{color:var(--color-text-light);line-height:1.7;transition:color var(--transition-base)}[data-theme=dark] .service-card p{color:var(--color-text-light)}.portfolio{padding:var(--spacing-2xl) 0;background:var(--color-bg);transition:background var(--transition-base)}.portfolio-controls{display:flex;flex-direction:column;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.filter-group{display:flex;flex-direction:column;gap:var(--spacing-md)}.advanced-filters{display:flex;gap:var(--spacing-md);flex-wrap:wrap}.filter-select{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-text);font-family:inherit;font-size:.9rem;cursor:pointer;transition:all var(--transition-base)}.filter-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a}@media(min-width:768px){.portfolio-controls{flex-direction:row;justify-content:space-between;align-items:center}.filter-group{flex-direction:row;align-items:center;gap:var(--spacing-md)}}.filter-buttons{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.filter-btn{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);background:var(--color-card);color:var(--color-text);border:1px solid var(--color-border);font-weight:500;transition:all var(--transition-base);cursor:pointer}[data-theme=dark] .filter-btn{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}.filter-btn:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent);transform:translateY(-2px)}.filter-btn.active{background:var(--color-accent);color:#fff;border-color:var(--color-accent);box-shadow:var(--shadow-md)}.search-box{flex:1;max-width:300px}.search-input{width:100%;padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-text);font-family:inherit;font-size:1rem;transition:all var(--transition-base)}[data-theme=dark] .search-input{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .search-input::placeholder{color:var(--color-text-light)}.search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:var(--spacing-lg)}.project-card{background:var(--color-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);transition:all var(--transition-base);cursor:pointer;border:1px solid var(--color-border);position:relative}.project-card:after{content:"";position:absolute;inset:0;background:linear-gradient(135deg,rgba(233,69,96,.1) 0%,transparent 100%);opacity:0;transition:opacity var(--transition-base);pointer-events:none}.project-card:hover{transform:translateY(-10px) scale(1.02);box-shadow:0 25px 50px #e9456040,0 0 0 1px #e945601a;border-color:var(--color-accent)}.project-card:hover:after{opacity:1}.project-image{position:relative;width:100%;height:300px;overflow:hidden}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform var(--transition-slow)}.project-overlay{position:absolute;inset:0;background:linear-gradient(135deg,#e94560e6,#ff6b85cc);display:flex;align-items:center;justify-content:center;opacity:0;transition:all var(--transition-base);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px)}.project-card:hover .project-overlay{opacity:1}.project-card:hover .project-image img{transform:scale(1.15);filter:brightness(.8)}.view-btn{color:#fff;font-weight:600;font-size:1.1rem;padding:var(--spacing-sm) var(--spacing-lg);border:2px solid white;border-radius:var(--radius-sm);transition:all var(--transition-base);background:#ffffff1a;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);box-shadow:0 4px 15px #0003}.view-btn:hover{background:#fff;color:var(--color-accent);transform:scale(1.1);box-shadow:0 6px 20px #0000004d}.project-badge{position:absolute;top:var(--spacing-sm);right:var(--spacing-sm);background:var(--color-accent);color:#fff;padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase}.project-content{padding:var(--spacing-lg)}.project-content h3{margin-bottom:var(--spacing-sm);font-size:1.5rem;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .project-content h3{color:var(--color-primary)}.project-meta{display:flex;flex-wrap:wrap;gap:var(--spacing-md);margin-bottom:var(--spacing-sm);font-size:.875rem;color:var(--color-text-light);transition:color var(--transition-base)}[data-theme=dark] .project-meta{color:var(--color-text-light)}.project-content p{color:var(--color-text);line-height:1.7;margin-bottom:var(--spacing-sm);transition:color var(--transition-base)}[data-theme=dark] .project-content p{color:var(--color-text)}.project-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs);margin-top:var(--spacing-sm)}.tag{background:var(--color-light);color:var(--color-text);padding:.25rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:500;transition:all var(--transition-base)}[data-theme=dark] .tag{background:var(--color-card);color:var(--color-text);border:1px solid var(--color-border)}.loading{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-light);font-size:1.1rem;transition:color var(--transition-base)}.loading p{margin-top:var(--spacing-md);color:var(--color-text-light)}[data-theme=dark] .loading{color:var(--color-text-light)}.no-projects{text-align:center;padding:var(--spacing-2xl);color:var(--color-text-light);font-size:1.1rem;transition:color var(--transition-base)}[data-theme=dark] .no-projects{color:var(--color-text-light)}.modal-overlay{position:fixed;inset:0;background:#000000e6;display:flex;align-items:center;justify-content:center;z-index:2000;padding:var(--spacing-md);animation:fadeIn .3s ease;overflow-y:auto}.modal-content{background:var(--color-card);border-radius:var(--radius-xl);max-width:900px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .4s ease;box-shadow:var(--shadow-xl)}.modal-close{position:absolute;top:var(--spacing-md);right:var(--spacing-md);width:40px;height:40px;border-radius:50%;background:var(--color-accent);color:#fff;font-size:1.5rem;display:flex;align-items:center;justify-content:center;z-index:10;transition:all var(--transition-fast)}.modal-close:hover{transform:rotate(90deg) scale(1.1);background:var(--color-accent-light)}.modal-body{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);padding:var(--spacing-lg)}.modal-image{border-radius:var(--radius-lg);overflow:hidden}.modal-image img{width:100%;height:100%;object-fit:cover}.modal-info h2{margin-bottom:var(--spacing-md)}.modal-meta{display:flex;flex-direction:column;gap:var(--spacing-xs);margin-bottom:var(--spacing-md);padding:var(--spacing-md);background:var(--color-light);border-radius:var(--radius-sm)}.modal-meta div{display:flex;gap:var(--spacing-sm)}.modal-meta strong{color:var(--color-accent);min-width:80px}.modal-description{color:var(--color-text);line-height:1.8;margin-bottom:var(--spacing-md)}.modal-tags{display:flex;flex-wrap:wrap;gap:var(--spacing-xs)}@media(max-width:768px){.modal-body{grid-template-columns:1fr}.modal-image{max-height:300px}}.awards{padding:var(--spacing-2xl) 0;background:var(--color-card);transition:background var(--transition-base)}[data-theme=dark] .awards{background:var(--color-card)}.awards-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);max-width:1000px;margin:0 auto}.award-card{padding:var(--spacing-lg);background:var(--color-light);border-radius:var(--radius-lg);border-left:4px solid var(--color-accent);transition:all var(--transition-base);position:relative;overflow:hidden}[data-theme=dark] .award-card{background:var(--color-card);border-color:var(--color-border)}.award-card:before{content:"🏆";position:absolute;top:var(--spacing-md);right:var(--spacing-md);font-size:3rem;opacity:.1}.award-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-left-width:6px}.award-year{font-size:.875rem;color:var(--color-accent);font-weight:700;text-transform:uppercase;letter-spacing:.1em;margin-bottom:var(--spacing-xs);transition:color var(--transition-base)}[data-theme=dark] .award-year{color:var(--color-accent)}.award-card h3{margin-bottom:var(--spacing-xs);font-size:1.3rem;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .award-card h3{color:var(--color-primary)}.award-card p{color:var(--color-text-light);margin:0;font-size:.9rem;transition:color var(--transition-base)}[data-theme=dark] .award-card p{color:var(--color-text-light)}.clients{padding:var(--spacing-2xl) 0;background:var(--color-bg);transition:background var(--transition-base)}[data-theme=dark] .clients{background:var(--color-bg)}.clients-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-lg);max-width:1000px;margin:0 auto}.client-logo{padding:var(--spacing-lg);background:var(--color-card);border-radius:var(--radius-md);text-align:center;font-weight:600;color:var(--color-text-light);border:1px solid var(--color-border);transition:all var(--transition-base);display:flex;align-items:center;justify-content:center;min-height:100px}[data-theme=dark] .client-logo{background:var(--color-card);border-color:var(--color-border);color:var(--color-text-light)}[data-theme=dark] .client-logo:hover{color:var(--color-accent)}.client-logo:hover{transform:translateY(-5px);box-shadow:var(--shadow-md);border-color:var(--color-accent);color:var(--color-accent)}.testimonials{padding:var(--spacing-2xl) 0;background:var(--color-card);transition:background var(--transition-base)}.testimonials-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:var(--spacing-lg)}.testimonial-card{padding:var(--spacing-lg);background:#ffffffb3;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-radius:var(--radius-lg);position:relative;border-left:4px solid var(--color-accent);border:1px solid rgba(255,255,255,.3);transition:all var(--transition-base);overflow:hidden}[data-theme=dark] .testimonial-card{background:#1a1a2eb3;border-color:#ffffff1a}.testimonial-card:before{content:"";position:absolute;top:0;left:0;width:4px;height:100%;background:linear-gradient(180deg,var(--color-accent),var(--color-accent-light));transform:scaleY(0);transform-origin:bottom;transition:transform var(--transition-base)}.testimonial-card:hover:before{transform:scaleY(1)}.testimonial-card:hover{transform:translateY(-8px) scale(1.02);box-shadow:0 20px 40px #e9456033,0 0 0 1px #e945601a;background:#ffffffe6;border-left-width:6px}[data-theme=dark] .testimonial-card:hover{background:#1a1a2ee6;box-shadow:0 20px 40px #e945604d,0 0 0 1px #e9456033}.quote-icon{font-size:4rem;color:var(--color-accent);opacity:.2;position:absolute;top:var(--spacing-sm);left:var(--spacing-sm);font-family:var(--font-display)}.testimonial-quote{font-style:italic;font-size:1.1rem;line-height:1.8;color:var(--color-text);margin-bottom:var(--spacing-md);position:relative;z-index:1;transition:color var(--transition-base)}[data-theme=dark] .testimonial-quote{color:var(--color-text)}.testimonial-author{display:flex;flex-direction:column;gap:.25rem}.testimonial-author strong{color:var(--color-primary);font-size:1rem;transition:color var(--transition-base)}[data-theme=dark] .testimonial-author strong{color:var(--color-primary)}.testimonial-author span{color:var(--color-text-light);font-size:.875rem;transition:color var(--transition-base)}[data-theme=dark] .testimonial-author span{color:var(--color-text-light)}.newsletter{padding:var(--spacing-2xl) 0;background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light));color:#fff;position:relative;overflow:hidden}[data-theme=dark] .newsletter{background:linear-gradient(135deg,var(--color-accent),var(--color-accent-light))}.newsletter-content{max-width:800px;margin:0 auto;text-align:center}.newsletter-text h2{color:#fff;margin-bottom:var(--spacing-sm);transition:color var(--transition-base)}.newsletter-text p{color:#ffffffe6;margin-bottom:var(--spacing-lg);font-size:1.1rem;transition:color var(--transition-base)}[data-theme=dark] .newsletter-text h2,[data-theme=dark] .newsletter-text p{color:#fff}.newsletter-form{display:flex;gap:var(--spacing-md);max-width:500px;margin:0 auto;flex-wrap:wrap;justify-content:center}.newsletter-input{flex:1;min-width:250px;padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);border:2px solid rgba(255,255,255,.3);background:#fff3;color:#fff;font-family:inherit;font-size:1rem;transition:all var(--transition-base)}.newsletter-input::placeholder{color:#ffffffb3}.newsletter-input:focus{outline:none;border-color:#fff;background:#ffffff4d;box-shadow:0 0 0 3px #fff3}.newsletter-message{margin-top:var(--spacing-md);font-weight:500}.newsletter-message.success{color:#ffffffe6}.contact{padding:var(--spacing-2xl) 0;background:linear-gradient(135deg,var(--color-primary) 0%,var(--color-secondary) 50%,#0f0f1a 100%);color:#fff;position:relative;overflow:hidden}[data-theme=dark] .contact{background:linear-gradient(135deg,#1a1a2e,#16213e,#0f0f1a)}.contact:before{content:"";position:absolute;top:-50%;left:-10%;width:500px;height:500px;background:radial-gradient(circle,rgba(233,69,96,.2) 0%,transparent 70%);border-radius:50%;animation:float 25s ease-in-out infinite}.contact:after{content:"";position:absolute;bottom:-30%;right:-5%;width:400px;height:400px;background:radial-gradient(circle,rgba(255,107,133,.15) 0%,transparent 70%);border-radius:50%;animation:float 30s ease-in-out infinite reverse}.contact-content{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-2xl);align-items:start;position:relative;z-index:1}.contact-info .section-header{text-align:left}.contact-info .section-label,.contact-info h2{color:#fff;transition:color var(--transition-base)}.contact-info .section-description{color:#ffffffe6;transition:color var(--transition-base)}[data-theme=dark] .contact-info .section-label,[data-theme=dark] .contact-info h2,[data-theme=dark] .contact-info .section-description{color:#fff}.contact-details{margin-top:var(--spacing-xl);display:flex;flex-direction:column;gap:var(--spacing-md)}.contact-item{display:flex;flex-direction:column;gap:var(--spacing-xs)}.contact-item strong{font-size:.875rem;text-transform:uppercase;letter-spacing:.1em;opacity:.8;color:#fffc;transition:color var(--transition-base)}.contact-item span{font-size:1.1rem;color:#fff;transition:color var(--transition-base)}[data-theme=dark] .contact-item strong,[data-theme=dark] .contact-item span{color:#fff}.contact-form{display:flex;flex-direction:column;gap:var(--spacing-md);background:#ffffff1a;padding:var(--spacing-lg);border-radius:var(--radius-lg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.contact-form input,.contact-form select,.contact-form textarea{padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid rgba(255,255,255,.2);background:#ffffff1a;color:#fff;font-family:inherit;font-size:1rem;transition:all var(--transition-base)}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:none;border-color:#ffffff80;background:#ffffff26}.contact-form input.error,.contact-form textarea.error{border-color:#ff6b6b;background:#ff6b6b1a}[data-theme=dark] .contact-form input.error,[data-theme=dark] .contact-form textarea.error{border-color:#ff6b6b;background:#ff6b6b33}.error-message{color:#ff6b6b;font-size:.875rem;margin-top:var(--spacing-xs);display:block}[data-theme=dark] .error-message{color:#f99}.contact-form input::placeholder,.contact-form textarea::placeholder{color:#ffffffb3}.contact-form select{color:#fff}.contact-form select option{background:var(--color-primary);color:#fff}.contact-form textarea{resize:vertical;min-height:120px}.contact-form .share-buttons{margin-bottom:var(--spacing-sm);padding:var(--spacing-sm);background:#ffffff1a;border-radius:var(--radius-sm);justify-content:center}.contact-form .share-buttons .share-label{color:#ffffffe6}.contact-form .share-buttons .share-btn{background:#fff3;border-color:#ffffff4d}.contact-form .share-buttons .share-btn:hover{background:#ffffff4d;border-color:#fff}.form-message{padding:var(--spacing-sm);border-radius:var(--radius-sm);text-align:center;font-weight:500}.form-message.success{background:#4caf5033;color:#4caf50}.form-message.error{background:#f4433633;color:#f44336}[data-theme=dark] .form-message.success{background:#4caf504d;color:#66bb6a}[data-theme=dark] .form-message.error{background:#f443364d;color:#ef5350}.footer{background:var(--color-primary);color:#fff;padding:var(--spacing-2xl) 0 var(--spacing-lg);transition:background var(--transition-base)}[data-theme=dark] .footer{background:#0a0a14;border-top:1px solid var(--color-border)}[data-theme=dark] .footer-section h3,[data-theme=dark] .footer-section h4{color:#fff}[data-theme=dark] .footer-section p,[data-theme=dark] .footer-section ul li{color:#ffffffb3}.footer-content{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-xl);margin-bottom:var(--spacing-xl)}.footer-section h3,.footer-section h4{color:#fff;margin-bottom:var(--spacing-md)}.footer-section p{color:#ffffffb3;margin-bottom:var(--spacing-xs)}.footer-section ul{list-style:none}.footer-section ul li{margin-bottom:var(--spacing-xs);color:#ffffffb3}.footer-section ul li a{color:#ffffffb3;transition:color var(--transition-fast)}.footer-section ul li a:hover{color:var(--color-accent)}.footer-bottom{text-align:center;padding-top:var(--spacing-lg);border-top:1px solid rgba(255,255,255,.1);color:#fff9;display:flex;flex-direction:column;align-items:center;gap:var(--spacing-md)}.footer-bottom .share-buttons{justify-content:center}.footer-bottom .share-buttons .share-label{color:#fff9}.footer-bottom .share-buttons .share-btn{background:#ffffff1a;border-color:#fff3}.footer-bottom .share-buttons .share-btn:hover{background:#fff3;border-color:#fff6}.login-page,.admin-page{min-height:100vh;background:linear-gradient(135deg,var(--color-primary),var(--color-secondary));padding:var(--spacing-2xl) 0;transition:background var(--transition-base)}[data-theme=dark] .login-page,[data-theme=dark] .admin-page{background:linear-gradient(135deg,#0a0a14,#0f0f1a)}[data-theme=dark] .login-card{background:#1a1a2ef2;border:1px solid var(--color-border);box-shadow:0 20px 60px #00000080}[data-theme=dark] .login-card h1{color:var(--color-primary)}[data-theme=dark] .login-card p{color:var(--color-text-light)}.login-container,.admin-container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.login-card{max-width:400px;margin:0 auto;background:var(--color-card);padding:var(--spacing-2xl);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);transition:background var(--transition-base)}.login-card h1{text-align:center;margin-bottom:var(--spacing-sm)}.login-card p{text-align:center;color:var(--color-text-light);margin-bottom:var(--spacing-lg)}.login-card form{display:flex;flex-direction:column;gap:var(--spacing-md)}.login-card input{padding:var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid rgba(0,0,0,.1);font-family:inherit;font-size:1rem}.admin-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);background:var(--color-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:all var(--transition-base)}[data-theme=dark] .admin-header{background:var(--color-card);border-color:var(--color-border);box-shadow:var(--shadow-md)}.admin-tabs{display:flex;gap:var(--spacing-sm);margin-bottom:var(--spacing-lg);flex-wrap:wrap;border-bottom:2px solid var(--color-border);padding-bottom:var(--spacing-sm)}.admin-tab{padding:var(--spacing-sm) var(--spacing-lg);background:transparent;border:none;border-bottom:3px solid transparent;color:var(--color-text-light);font-weight:500;cursor:pointer;transition:all var(--transition-base);position:relative;bottom:-2px;display:flex;align-items:center;gap:var(--spacing-xs)}.admin-tab:hover{color:var(--color-accent);background:#e945600d}[data-theme=dark] .admin-tab{color:var(--color-text-light)}[data-theme=dark] .admin-tab:hover{color:var(--color-accent);background:#e945601a}.admin-tab.active{color:var(--color-accent);border-bottom-color:var(--color-accent);font-weight:600;background:#e945601a}[data-theme=dark] .admin-tab.active{background:#e9456026;color:var(--color-accent)}.admin-header h1{color:var(--color-primary)}.admin-sections{display:flex;flex-direction:column;gap:var(--spacing-lg)}.admin-section{background:var(--color-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);border:1px solid var(--color-border);transition:all var(--transition-base)}[data-theme=dark] .admin-section{background:var(--color-card);border-color:var(--color-border);box-shadow:var(--shadow-sm)}.admin-section-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-lg);flex-wrap:wrap;gap:var(--spacing-md)}.admin-section-header h2{margin:0;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .admin-section-header h2{color:var(--color-primary)}.admin-search-box,.admin-filters{display:flex;gap:var(--spacing-sm);flex-wrap:wrap}.admin-search-input{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-light);color:var(--color-text);font-family:inherit;font-size:.9rem;min-width:200px;transition:all var(--transition-base)}[data-theme=dark] .admin-search-input{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .admin-search-input::placeholder{color:var(--color-text-light)}.admin-search-input:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a;background:var(--color-card)}.admin-filter-select{padding:var(--spacing-xs) var(--spacing-md);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-light);color:var(--color-text);font-family:inherit;font-size:.9rem;cursor:pointer;transition:all var(--transition-base)}[data-theme=dark] .admin-filter-select{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .admin-filter-select option{background:var(--color-card);color:var(--color-text)}.admin-filter-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a}.admin-section h2{margin-bottom:var(--spacing-md);color:var(--color-primary)}.admin-form{display:flex;flex-direction:column;gap:var(--spacing-md)}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md)}.admin-form input,.admin-form textarea,.admin-form select{padding:var(--spacing-sm);border-radius:var(--radius-sm);border:2px solid var(--color-border);background:var(--color-light);color:var(--color-text);font-family:inherit;font-size:1rem;transition:all var(--transition-base)}[data-theme=dark] .admin-form input,[data-theme=dark] .admin-form textarea,[data-theme=dark] .admin-form select{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .admin-form input::placeholder,[data-theme=dark] .admin-form textarea::placeholder{color:var(--color-text-light)}[data-theme=dark] .admin-form select option{background:var(--color-card);color:var(--color-text)}.admin-form input:focus,.admin-form textarea:focus,.admin-form select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a;background:var(--color-card)}[data-theme=dark] .admin-form input:focus,[data-theme=dark] .admin-form textarea:focus,[data-theme=dark] .admin-form select:focus{background:#1a1a2ecc;box-shadow:0 0 0 3px #e9456033}.admin-form input.error,.admin-form textarea.error{border-color:#f44336;background:#f443360d}[data-theme=dark] .admin-form input.error,[data-theme=dark] .admin-form textarea.error{border-color:#f44336;background:#f4433633}.admin-form .field-error{color:#f44336;font-size:.875rem;margin-top:var(--spacing-xs);display:block}[data-theme=dark] .admin-form .field-error{color:#ef5350}.admin-form textarea{resize:vertical;min-height:100px}.checkbox-label{display:flex;align-items:center;gap:var(--spacing-xs);cursor:pointer;padding:var(--spacing-sm);border-radius:var(--radius-sm);transition:all var(--transition-base);color:var(--color-text)}.checkbox-label:hover{background:#e945600d}[data-theme=dark] .checkbox-label{color:var(--color-text)}[data-theme=dark] .checkbox-label:hover{background:#e945601a}[data-theme=dark] .checkbox-label input[type=checkbox]{accent-color:var(--color-accent)}.edit-mode-banner{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md);background:linear-gradient(135deg,#e945601a,#ff6b850d);border:2px solid var(--color-accent);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg);transition:all var(--transition-base)}[data-theme=dark] .edit-mode-banner{background:linear-gradient(135deg,#e9456033,#ff6b851a);border-color:var(--color-accent)}.edit-mode-banner span{font-weight:600;color:var(--color-accent);transition:color var(--transition-base)}[data-theme=dark] .edit-mode-banner span{color:var(--color-accent)}.file-input{padding:var(--spacing-sm)!important;border:2px solid var(--color-border);background:var(--color-light);color:var(--color-text);transition:all var(--transition-base)}[data-theme=dark] .file-input{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}.file-input::file-selector-button{padding:var(--spacing-xs) var(--spacing-sm);margin-right:var(--spacing-sm);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-text);border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base)}[data-theme=dark] .file-input::file-selector-button{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}.file-input::file-selector-button:hover{background:var(--color-accent);color:#fff;border-color:var(--color-accent)}.contacts-list{display:flex;flex-direction:column;gap:var(--spacing-md);max-height:400px;overflow-y:auto;padding-right:var(--spacing-xs)}[data-theme=dark] .contacts-list{scrollbar-color:var(--color-border) transparent}.contacts-list::-webkit-scrollbar{width:6px}.contacts-list::-webkit-scrollbar-track{background:transparent}.contacts-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}[data-theme=dark] .contacts-list::-webkit-scrollbar-thumb{background:var(--color-border)}.contacts-list::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}.contact-item{padding:var(--spacing-md);background:var(--color-light);border-radius:var(--radius-sm);border-left:3px solid var(--color-accent);transition:background var(--transition-base)}[data-theme=dark] .contact-item-admin{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .contact-item-admin .contact-header strong{color:var(--color-primary)}[data-theme=dark] .contact-item-admin .contact-email,[data-theme=dark] .contact-item-admin .contact-phone,[data-theme=dark] .contact-item-admin .contact-message{color:var(--color-text-light)}.admin-projects-list{display:flex;flex-direction:column;gap:var(--spacing-md);max-height:600px;overflow-y:auto;padding-right:var(--spacing-xs)}[data-theme=dark] .admin-projects-list{scrollbar-color:var(--color-border) transparent}.admin-projects-list::-webkit-scrollbar{width:6px}.admin-projects-list::-webkit-scrollbar-track{background:transparent}.admin-projects-list::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:3px}[data-theme=dark] .admin-projects-list::-webkit-scrollbar-thumb{background:var(--color-border)}.admin-projects-list::-webkit-scrollbar-thumb:hover{background:var(--color-accent)}.admin-project-item{display:flex;justify-content:space-between;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-md);background:var(--color-light);border-radius:var(--radius-md);border:1px solid var(--color-border);transition:all var(--transition-base)}[data-theme=dark] .admin-project-item{background:var(--color-card);border-color:var(--color-border)}.admin-project-item:hover{box-shadow:var(--shadow-md);transform:translate(5px)}[data-theme=dark] .admin-project-item:hover{box-shadow:var(--shadow-lg);border-color:var(--color-accent)}.admin-project-info{display:flex;gap:var(--spacing-md);flex:1;align-items:center}[data-theme=dark] .admin-project-info{color:var(--color-text)}.admin-project-image{width:120px;height:120px;border-radius:var(--radius-sm);overflow:hidden;flex-shrink:0;border:1px solid var(--color-border);transition:border-color var(--transition-base)}[data-theme=dark] .admin-project-image{border-color:var(--color-border)}.admin-project-image img{transition:opacity var(--transition-base)}.admin-project-image img{width:100%;height:100%;object-fit:cover}.admin-project-details{flex:1}[data-theme=dark] .admin-project-details{color:var(--color-text)}.admin-project-details h3{margin-bottom:var(--spacing-xs);font-size:1.2rem;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .admin-project-details h3{color:var(--color-primary)}.admin-project-meta{display:flex;gap:var(--spacing-sm);flex-wrap:wrap;margin-bottom:var(--spacing-xs);font-size:.875rem;color:var(--color-text-light);transition:color var(--transition-base)}[data-theme=dark] .admin-project-meta,[data-theme=dark] .admin-project-meta span{color:var(--color-text-light)}.category-badge{background:var(--color-accent);color:#fff;padding:.2rem var(--spacing-xs);border-radius:var(--radius-sm);font-size:.75rem;text-transform:capitalize}.highlight-badge{background:var(--color-gold);color:#fff;padding:.2rem var(--spacing-xs);border-radius:var(--radius-sm);font-size:.75rem}.admin-project-description{color:var(--color-text-light);font-size:.9rem;margin:var(--spacing-xs) 0 0;transition:color var(--transition-base)}[data-theme=dark] .admin-project-description{color:var(--color-text-light)}.admin-project-actions{display:flex;gap:var(--spacing-sm);flex-shrink:0}[data-theme=dark] .admin-project-actions .btn{transition:all var(--transition-base)}.btn-small{padding:var(--spacing-xs) var(--spacing-md);font-size:.875rem;transition:all var(--transition-base)}.btn-danger{background:#f44336;color:#fff;transition:all var(--transition-base)}.btn-danger:hover{background:#d32f2f;transform:translateY(-2px);box-shadow:0 4px 12px #f4433666}[data-theme=dark] .btn-danger{background:#f44336;color:#fff}[data-theme=dark] .btn-danger:hover{background:#e53935;box-shadow:0 4px 12px #f4433680}.contact-item-admin{padding:var(--spacing-md);background:var(--color-light);border-radius:var(--radius-sm);border-left:3px solid var(--color-accent);margin-bottom:var(--spacing-md);transition:all var(--transition-base);border:1px solid var(--color-border)}[data-theme=dark] .contact-item-admin{background:var(--color-card);border-color:var(--color-border);border-left-color:var(--color-accent)}.contact-item-admin:hover{box-shadow:var(--shadow-sm)}[data-theme=dark] .contact-item-admin:hover{box-shadow:var(--shadow-md);border-color:var(--color-accent)}.contact-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:var(--spacing-sm)}.contact-header strong{color:var(--color-primary);transition:color var(--transition-base)}.contact-header span{color:var(--color-text-light);transition:color var(--transition-base)}[data-theme=dark] .contact-header strong{color:var(--color-primary)}[data-theme=dark] .contact-header span{color:var(--color-text-light)}.contact-date{display:block;font-size:.75rem;color:var(--color-text-light);margin-top:var(--spacing-xs);transition:color var(--transition-base)}[data-theme=dark] .contact-date{color:var(--color-text-light)}.contact-status-badge{flex-shrink:0}.status-new,.status-contacted,.status-archived{padding:.25rem var(--spacing-sm);border-radius:var(--radius-sm);font-size:.75rem;font-weight:600;text-transform:uppercase;transition:all var(--transition-base)}.status-new,[data-theme=dark] .status-new{background:#ff9800;color:#fff}.status-contacted,[data-theme=dark] .status-contacted{background:#4caf50;color:#fff}.status-archived{background:var(--color-gray);color:#fff}[data-theme=dark] .status-archived{background:#6c757d;color:#fff}.contact-project-type{color:var(--color-text);font-weight:500;margin:var(--spacing-xs) 0;transition:color var(--transition-base)}[data-theme=dark] .contact-item-admin .contact-project-type{color:var(--color-text)}.contact-actions{display:flex;gap:var(--spacing-sm);margin-top:var(--spacing-md);padding-top:var(--spacing-md);border-top:1px solid var(--color-border);transition:border-color var(--transition-base)}[data-theme=dark] .contact-actions{border-top-color:var(--color-border)}.status-select{padding:var(--spacing-xs) var(--spacing-sm);border-radius:var(--radius-sm);border:1px solid var(--color-border);background:var(--color-card);color:var(--color-text);font-family:inherit;font-size:.875rem;cursor:pointer;transition:all var(--transition-base)}[data-theme=dark] .status-select{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .status-select:focus{box-shadow:0 0 0 3px #e9456033}[data-theme=dark] .status-select option{background:var(--color-card);color:var(--color-text)}.status-select:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #e945601a}@media(max-width:768px){.admin-project-item{flex-direction:column;align-items:stretch}.admin-project-info{flex-direction:column}.admin-project-image{width:100%;height:200px}.admin-project-actions{width:100%}.admin-project-actions .btn{flex:1}.contact-header{flex-direction:column;gap:var(--spacing-xs)}.contact-actions{flex-direction:column}.contact-actions .btn{width:100%}.admin-section-header{flex-direction:column;align-items:stretch}.admin-search-box,.admin-filters{width:100%}.admin-search-input{width:100%;min-width:auto}}.contact-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xs)}.contact-header strong{color:var(--color-primary)}.contact-header span{font-size:.875rem;color:var(--color-text-light)}.contact-email,.contact-phone{color:var(--color-text);margin-bottom:var(--spacing-xs);transition:color var(--transition-base)}.contact-email,.contact-phone,[data-theme=dark] .contact-item-admin .contact-email,[data-theme=dark] .contact-item-admin .contact-phone{color:var(--color-text)}.contact-message{color:var(--color-text-light);font-style:italic;transition:color var(--transition-base)}[data-theme=dark] .contact-item-admin .contact-message{color:var(--color-text-light)}@media(max-width:968px){.hero-content,.contact-content{grid-template-columns:1fr}.hero-image{order:-1}.hero-stats{flex-direction:column;gap:var(--spacing-md)}.projects-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}.nav-links{gap:var(--spacing-md);font-size:.9rem}}@media(max-width:768px){.portfolio-controls{flex-direction:column;align-items:stretch}.search-box{max-width:100%}.hero{padding:calc(var(--spacing-xl) + 60px) 0 var(--spacing-xl)}.hero-cta{flex-direction:column}.hero-cta .btn{width:100%}.services-grid,.testimonials-grid,.projects-grid,.form-grid{grid-template-columns:1fr}.back-to-top{bottom:var(--spacing-md);right:var(--spacing-md);width:45px;height:45px;font-size:1.2rem}.newsletter-form{flex-direction:column}.newsletter-input{width:100%}}*:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px;border-radius:var(--radius-sm)}button:focus-visible,a:focus-visible{outline:2px solid var(--color-accent);outline-offset:2px}@media print{.navbar,.back-to-top,.share-buttons,.portfolio-controls,.contact-form,.newsletter,.mobile-menu-toggle{display:none!important}.hero,.services,.portfolio,.testimonials,.contact{page-break-inside:avoid}.project-card,.service-card,.testimonial-card{page-break-inside:avoid;break-inside:avoid}body{background:#fff;color:#000}.section-header h2,h1,h2,h3{color:#000}a{color:#000;text-decoration:underline}.btn{border:1px solid black;background:#fff;color:#000}}.toast{position:fixed;top:80px;right:var(--spacing-md);background:var(--color-card);color:var(--color-text);padding:var(--spacing-md);border-radius:var(--radius-md);box-shadow:var(--shadow-xl);z-index:3000;display:flex;align-items:center;justify-content:space-between;gap:var(--spacing-md);min-width:300px;max-width:400px;animation:slideInRight .3s ease;border-left:4px solid;border:1px solid var(--color-border);transition:all var(--transition-base)}[data-theme=dark] .toast{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}@keyframes slideInRight{0%{transform:translate(100%);opacity:0}to{transform:translate(0);opacity:1}}.toast-success{border-left-color:#4caf50;background:#4caf501a}.toast-error{border-left-color:#f44336;background:#f443361a}.toast-info{border-left-color:#2196f3;background:#2196f31a}.toast-content{display:flex;align-items:center;gap:var(--spacing-sm);flex:1}.toast-icon{font-size:1.2rem;font-weight:700}.toast-success .toast-icon{color:#4caf50}.toast-error .toast-icon{color:#f44336}.toast-info .toast-icon{color:#2196f3}.toast-message{flex:1;font-weight:500}.toast-close{background:transparent;border:none;font-size:1.5rem;color:var(--color-text-light);cursor:pointer;padding:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;transition:color var(--transition-fast)}.toast-close:hover{color:var(--color-text)}@media(max-width:768px){.toast{right:var(--spacing-sm);left:var(--spacing-sm);min-width:auto;max-width:none}}.skeleton-card{background:var(--color-card);border-radius:var(--radius-lg);overflow:hidden;box-shadow:var(--shadow-md);border:1px solid var(--color-border);animation:pulse 1.5s ease-in-out infinite}.skeleton-image{width:100%;height:300px;background:linear-gradient(90deg,var(--color-light) 25%,rgba(255,255,255,.5) 50%,var(--color-light) 75%);background-size:200% 100%;animation:shimmer 1.5s infinite}.skeleton-content{padding:var(--spacing-lg)}.skeleton-line{height:16px;background:linear-gradient(90deg,var(--color-light) 25%,rgba(255,255,255,.5) 50%,var(--color-light) 75%);background-size:200% 100%;border-radius:var(--radius-sm);margin-bottom:var(--spacing-sm);animation:shimmer 1.5s infinite}.skeleton-title{width:70%;height:24px;margin-bottom:var(--spacing-md)}.skeleton-meta{width:50%;height:14px;margin-bottom:var(--spacing-md)}.skeleton-short{width:60%}.skeleton-text{padding:var(--spacing-md)}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.8}}[data-theme=dark] .skeleton-image,[data-theme=dark] .skeleton-line{background:linear-gradient(90deg,var(--color-card) 25%,rgba(255,255,255,.05) 50%,var(--color-card) 75%);background-size:200% 100%}.animated-counter{display:inline-block;font-weight:700;font-family:var(--font-display)}.lightbox-overlay{position:fixed;inset:0;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:3000;padding:var(--spacing-md);animation:fadeIn .3s ease}[data-theme=dark] .lightbox-overlay{background:#000000fa}.lightbox-content{position:relative;max-width:90vw;max-height:90vh;display:flex;flex-direction:column;align-items:center}.lightbox-image{max-width:100%;max-height:85vh;object-fit:contain;border-radius:var(--radius-md);box-shadow:0 20px 60px #00000080}.lightbox-title{color:#fff;margin-top:var(--spacing-md);font-size:1.2rem;text-align:center}.lightbox-close{position:absolute;top:-40px;right:0;width:40px;height:40px;border-radius:50%;background:#fff3;color:#fff;font-size:2rem;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all var(--transition-fast);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.lightbox-close:hover{background:#ffffff4d;transform:rotate(90deg)}.share-buttons{display:flex;align-items:center;gap:var(--spacing-xs);flex-wrap:wrap}.share-label{font-size:.875rem;color:var(--color-text-light);font-weight:500;margin-right:var(--spacing-xs)}.share-btn{width:36px;height:36px;border-radius:50%;border:1px solid var(--color-border);background:var(--color-card);cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1.2rem;transition:all var(--transition-fast);padding:0}[data-theme=dark] .share-btn{background:var(--color-card);border-color:var(--color-border)}[data-theme=dark] .share-label{color:var(--color-text-light)}.share-btn:hover{transform:translateY(-2px) scale(1.1);box-shadow:var(--shadow-md);border-color:var(--color-accent);background:var(--color-accent)}.share-btn:active{transform:translateY(0) scale(1)}.animated-background{position:fixed;top:0;left:0;width:100%;height:100%;z-index:-1;opacity:.4;pointer-events:none;transition:opacity .3s ease}[data-theme=dark] .animated-background{opacity:.25}.app:before{content:"";position:fixed;top:-50%;right:-20%;width:800px;height:800px;background:radial-gradient(circle,rgba(233,69,96,.08) 0%,transparent 70%);border-radius:50%;animation:floatOrb 25s ease-in-out infinite;pointer-events:none;z-index:-1}.app:after{content:"";position:fixed;bottom:-30%;left:-15%;width:600px;height:600px;background:radial-gradient(circle,rgba(255,107,133,.06) 0%,transparent 70%);border-radius:50%;animation:floatOrb 30s ease-in-out infinite reverse;pointer-events:none;z-index:-1}[data-theme=dark] .app:before{background:radial-gradient(circle,rgba(233,69,96,.12) 0%,transparent 70%)}[data-theme=dark] .app:after{background:radial-gradient(circle,rgba(255,107,133,.1) 0%,transparent 70%)}@keyframes floatOrb{0%,to{transform:translate(0) scale(1);opacity:1}33%{transform:translate(50px,-50px) scale(1.1);opacity:.9}66%{transform:translate(-30px,30px) scale(.9);opacity:.95}}@media(prefers-reduced-motion:reduce){.animated-background{opacity:.1}.app:before,.app:after{animation:none;opacity:.5}}.faq-section{padding:var(--spacing-2xl) 0;background:var(--color-bg);transition:background var(--transition-base)}[data-theme=dark] .faq-section{background:var(--color-bg)}.faq-list{max-width:800px;margin:0 auto;display:flex;flex-direction:column;gap:var(--spacing-md)}.faq-item{background:var(--color-card);border-radius:var(--radius-lg);border:1px solid var(--color-border);overflow:hidden;transition:all var(--transition-base)}[data-theme=dark] .faq-item{background:var(--color-card);border-color:var(--color-border)}.faq-item:hover{box-shadow:var(--shadow-md);border-color:var(--color-accent)}.faq-item.open{border-color:var(--color-accent);box-shadow:var(--shadow-lg)}.faq-question{width:100%;padding:var(--spacing-lg);background:transparent;border:none;text-align:left;display:flex;justify-content:space-between;align-items:center;cursor:pointer;font-size:1.1rem;font-weight:600;color:var(--color-primary);transition:all var(--transition-base)}[data-theme=dark] .faq-question{color:var(--color-primary)}[data-theme=dark] .faq-question:hover{background:#e945601a;color:var(--color-accent)}.faq-question:hover{color:var(--color-accent);background:#e945600d}.faq-icon{font-size:1.5rem;font-weight:300;color:var(--color-accent);transition:transform var(--transition-base);flex-shrink:0;margin-left:var(--spacing-md);width:30px;height:30px;display:flex;align-items:center;justify-content:center;border-radius:50%;background:#e945601a}.faq-item.open .faq-icon{transform:rotate(180deg);background:var(--color-accent);color:#fff}.faq-answer{max-height:0;overflow:hidden;transition:max-height .3s ease,padding .3s ease;padding:0 var(--spacing-lg)}.faq-item.open .faq-answer{max-height:500px;padding:0 var(--spacing-lg) var(--spacing-lg)}.faq-answer p{color:var(--color-text-light);line-height:1.8;margin:0}.team-section{padding:var(--spacing-2xl) 0;background:var(--color-card);transition:background var(--transition-base)}[data-theme=dark] .team-section{background:var(--color-card)}.team-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-lg);max-width:1000px;margin:0 auto}.team-card{background:var(--color-light);border-radius:var(--radius-lg);padding:var(--spacing-xl);text-align:center;border:1px solid var(--color-border);transition:all var(--transition-base);position:relative;overflow:hidden}[data-theme=dark] .team-card{background:var(--color-card);border-color:var(--color-border)}.team-card:before{content:"";position:absolute;top:0;left:0;right:0;height:4px;background:linear-gradient(90deg,var(--color-accent),var(--color-accent-light));transform:scaleX(0);transform-origin:left;transition:transform var(--transition-base)}.team-card:hover:before{transform:scaleX(1)}.team-card:hover{transform:translateY(-10px);box-shadow:var(--shadow-lg);border-color:var(--color-accent)}.team-avatar{font-size:4rem;margin-bottom:var(--spacing-md);filter:drop-shadow(0 4px 8px rgba(233,69,96,.2));transition:transform var(--transition-base)}.team-card:hover .team-avatar{transform:scale(1.1) rotate(5deg)}.team-card h3{margin-bottom:var(--spacing-xs);font-size:1.3rem;color:var(--color-primary);transition:color var(--transition-base)}[data-theme=dark] .team-card h3{color:var(--color-primary)}.team-role{color:var(--color-accent);font-weight:600;margin-bottom:var(--spacing-xs);font-size:1rem}.team-experience{color:var(--color-text-light);font-size:.9rem;margin-bottom:var(--spacing-sm)}.team-specialization{color:var(--color-text);font-size:.9rem;line-height:1.6;margin:0}[data-theme=dark] .team-card{background:var(--color-card)}.admin-dashboard{margin-bottom:var(--spacing-xl)}.dashboard-header{margin-bottom:var(--spacing-lg)}.dashboard-header h2{margin-bottom:var(--spacing-xs);color:var(--color-primary);transition:color var(--transition-base)}.dashboard-header p{color:var(--color-text-light);margin:0;transition:color var(--transition-base)}[data-theme=dark] .dashboard-header h2{color:var(--color-primary)}[data-theme=dark] .dashboard-header p{color:var(--color-text-light)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.stat-card{background:var(--color-card);border-radius:var(--radius-lg);padding:var(--spacing-lg);border:2px solid var(--color-border);cursor:pointer;transition:all var(--transition-base);display:flex;align-items:center;gap:var(--spacing-md);position:relative;overflow:hidden}[data-theme=dark] .stat-card{background:var(--color-card);border-color:var(--color-border)}.stat-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:var(--stat-color);transform:scaleY(0);transition:transform var(--transition-base)}.stat-card:hover{transform:translateY(-5px);box-shadow:var(--shadow-lg);border-color:var(--stat-color)}.stat-card:hover:before{transform:scaleY(1)}.stat-icon{font-size:2.5rem;flex-shrink:0}.stat-info{flex:1}.stat-value{font-size:2rem;font-weight:700;color:var(--stat-color);line-height:1;margin-bottom:var(--spacing-xs)}.stat-label{font-size:.875rem;color:var(--color-text-light);font-weight:500}.stat-arrow{font-size:1.5rem;color:var(--color-text-light);transition:all var(--transition-base);opacity:0}.stat-card:hover .stat-arrow{opacity:1;transform:translate(5px);color:var(--stat-color)}.dashboard-quick-actions{margin-bottom:var(--spacing-xl)}.dashboard-quick-actions h3{margin-bottom:var(--spacing-md);color:var(--color-primary);font-size:1.3rem;transition:color var(--transition-base)}[data-theme=dark] .dashboard-quick-actions h3{color:var(--color-primary)}.quick-actions-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:var(--spacing-md)}.quick-action-btn{background:var(--color-card);border:2px solid var(--color-border);border-radius:var(--radius-md);padding:var(--spacing-md);cursor:pointer;transition:all var(--transition-base);display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);font-family:inherit;font-size:.9rem;font-weight:500;color:var(--color-text)}[data-theme=dark] .quick-action-btn{background:var(--color-card);border-color:var(--color-border);color:var(--color-text)}[data-theme=dark] .quick-action-btn:hover{background:#e9456026;border-color:var(--color-accent)}.quick-action-btn:hover{border-color:var(--color-accent);background:#e945600d;transform:translateY(-3px);box-shadow:var(--shadow-md)}.action-icon{font-size:2rem;margin-bottom:var(--spacing-xs)}.dashboard-alert{background:linear-gradient(135deg,#ff98001a,#ff98000d);border:2px solid #FF9800;border-radius:var(--radius-lg);padding:var(--spacing-lg);display:flex;align-items:center;gap:var(--spacing-md);margin-top:var(--spacing-lg);transition:all var(--transition-base)}[data-theme=dark] .dashboard-alert{background:linear-gradient(135deg,#ff980033,#ff98001a);border-color:#ff9800}[data-theme=dark] .alert-content strong{color:var(--color-primary)}[data-theme=dark] .alert-content p{color:var(--color-text-light)}.alert-icon{font-size:2rem;flex-shrink:0}.alert-content{flex:1}.alert-content strong{display:block;color:var(--color-primary);margin-bottom:var(--spacing-xs);font-size:1.1rem}.alert-content p{color:var(--color-text-light);margin:0;font-size:.9rem}@media(max-width:768px){.stats-grid{grid-template-columns:1fr}.quick-actions-grid{grid-template-columns:repeat(2,1fr)}.dashboard-alert{flex-direction:column;text-align:center}}.error-boundary{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:var(--spacing-2xl);background:var(--color-bg)}.error-content{text-align:center;max-width:500px;padding:var(--spacing-2xl);background:var(--color-card);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);border:1px solid var(--color-border)}.error-content h1{color:var(--color-accent);margin-bottom:var(--spacing-md);font-size:2rem}.error-content p{color:var(--color-text-light);margin-bottom:var(--spacing-lg);line-height:1.8}
