@import"https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&family=Outfit:wght@400;600;700&display=swap";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-main);line-height:1.6;color:var(--color-text);background:var(--color-background);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}:root{--color-primary: hsl(115, 45%, 45%);--color-primary-dark: hsl(115, 45%, 35%);--color-primary-light: hsl(115, 45%, 55%);--color-secondary: hsl(35, 80%, 55%);--color-accent: hsl(220, 15%, 20%);--color-text: hsl(220, 10%, 15%);--color-text-light: hsl(220, 10%, 40%);--color-background: hsl(0, 0%, 98%);--color-surface: hsl(0, 0%, 100%);--gradient-hero: linear-gradient(135deg, hsl(115, 45%, 35%) 0%, hsl(155, 40%, 45%) 100%);--gradient-card: linear-gradient(135deg, hsla(115, 45%, 45%, .1) 0%, hsla(155, 40%, 45%, .05) 100%);--glass-bg: rgba(255, 255, 255, .85);--glass-border: rgba(255, 255, 255, .3);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .1);--font-main: "Inter", system-ui, -apple-system, sans-serif;--font-display: "Outfit", sans-serif;--spacing-xs: .5rem;--spacing-sm: 1rem;--spacing-md: 1.5rem;--spacing-lg: 2.5rem;--spacing-xl: 4rem;--radius-sm: 8px;--radius-md: 16px;--radius-lg: 24px;--transition-fast: .15s ease-in-out;--transition-base: .25s ease-in-out;--transition-slow: .4s ease-in-out;--z-base: 1;--z-elevated: 10;--z-overlay: 100;--z-modal: 1000}@media(prefers-color-scheme:dark){:root{--color-text: hsl(0, 0%, 95%);--color-text-light: hsl(0, 0%, 70%);--color-background: hsl(220, 15%, 10%);--color-surface: hsl(220, 15%, 15%);--glass-bg: rgba(30, 30, 35, .85);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px rgba(0, 0, 0, .3)}}h1,h2,h3,h4,h5,h6{font-family:var(--font-display);font-weight:700;line-height:1.2;margin-bottom:var(--spacing-sm)}h1{font-size:clamp(2.5rem,5vw,4rem);letter-spacing:-.02em}h2{font-size:clamp(2rem,4vw,3rem)}h3{font-size:clamp(1.5rem,3vw,2rem)}p{margin-bottom:var(--spacing-md)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.container{max-width:1200px;margin:0 auto;padding:0 var(--spacing-md)}.section{padding:var(--spacing-xl) 0}.glass-card{background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-md);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);box-shadow:var(--glass-shadow);padding:var(--spacing-lg);transition:transform var(--transition-base),box-shadow var(--transition-base)}.glass-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px #00000026}.btn{display:inline-block;padding:var(--spacing-sm) var(--spacing-lg);font-family:var(--font-display);font-weight:600;font-size:1rem;border:none;border-radius:var(--radius-sm);cursor:pointer;transition:all var(--transition-base);text-align:center}.btn-primary{background:var(--gradient-hero);color:#fff;box-shadow:0 4px 12px #48a63f4d}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px #48a63f66}.btn-secondary{background:var(--color-surface);color:var(--color-text);border:2px solid var(--color-primary)}.btn-secondary:hover{background:var(--color-primary);color:#fff}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.fade-in{animation:fadeIn var(--transition-slow) ease-out}.slide-up{animation:slideUp var(--transition-slow) ease-out}.text-center{text-align:center}.text-gradient{background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:768px){:root{--spacing-lg: 2rem;--spacing-xl: 3rem}.container{padding:0 var(--spacing-sm)}}.header{position:fixed;top:0;left:0;width:100%;z-index:var(--z-overlay);background:#ffffffd1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.05);transition:all var(--transition-base)}.header-content{display:flex;align-items:center;justify-content:space-between;height:70px}.logo{font-family:var(--font-display);font-weight:700;font-size:1.25rem;color:var(--color-text);text-decoration:none}.nav{display:flex;gap:1.5rem;align-items:center}.nav-link{color:var(--color-text);font-weight:500;position:relative;padding:.5rem 0}.nav-link:after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background:var(--color-primary);transition:width var(--transition-base)}.nav-link:hover:after{width:100%}.nav-link-cta{background:var(--color-primary);color:#fff!important;padding:.5rem 1rem;border-radius:var(--radius-sm);transition:transform var(--transition-fast)}.nav-link-cta:hover{transform:translateY(-2px)}.nav-link-cta:after{display:none}.hamburger{display:none;background:none;border:none;cursor:pointer;padding:.5rem}.bar{display:block;width:25px;height:3px;margin:5px auto;background-color:var(--color-text);transition:all .3s ease-in-out;border-radius:2px}@media(max-width:768px){.hamburger{display:block;z-index:1001}.hamburger.active .bar:nth-child(2){opacity:0}.hamburger.active .bar:nth-child(1){transform:translateY(8px) rotate(45deg)}.hamburger.active .bar:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav{position:fixed;top:0;right:-100%;width:100%;height:100vh;background:var(--color-surface);flex-direction:column;justify-content:center;gap:2rem;transition:right .4s ease-in-out;z-index:1000;box-shadow:-5px 0 15px #0000001a}.nav.active{right:0}.nav-link{font-size:1.5rem}}@media(prefers-color-scheme:dark){.header{background:#141419d9;border-bottom:1px solid rgba(255,255,255,.05)}}.footer{background:#ffffffe6;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-top:1px solid rgba(0,0,0,.1);padding:3rem 2rem 1rem;margin-top:auto;color:var(--color-text)}.footer-content{display:flex;justify-content:space-between;flex-wrap:wrap;max-width:1200px;margin:0 auto 2rem;gap:2rem}.footer-section h3{color:var(--color-primary);margin-bottom:1rem;font-size:1.1rem}.footer-links{list-style:none;padding:0}.footer-links li{margin-bottom:.5rem}.footer-links a{text-decoration:none;color:var(--color-text);opacity:.8;transition:opacity .2s}.footer-links a:hover{opacity:1;color:var(--color-secondary)}.footer-bottom{border-top:1px solid rgba(0,0,0,.05);padding-top:1rem;text-align:center;font-size:.8rem;opacity:.6}@media(max-width:600px){.footer-content{flex-direction:column;text-align:center}}@media(prefers-color-scheme:dark){.footer{background:#141419e6;border-top:1px solid rgba(255,255,255,.1);color:var(--color-text)}.footer-bottom{border-top:1px solid rgba(255,255,255,.05);color:var(--color-text-light)}.footer-links a{color:var(--color-text)}.footer-links a:hover{color:var(--color-secondary)}}.legal-page{padding-top:100px;padding-bottom:60px;min-height:100vh;color:var(--color-text)}.legal-page h1{font-size:2.5rem;margin-bottom:2rem;color:var(--color-primary)}.legal-page h2{font-size:1.5rem;margin-top:2rem;margin-bottom:1rem;color:var(--color-secondary)}.legal-page h3{font-size:1.2rem;margin-top:1.5rem;margin-bottom:.5rem}.legal-page p{margin-bottom:1rem;line-height:1.6}.legal-page .note{margin-top:3rem;padding:1rem;background:#ff00001a;border-left:4px solid red;font-size:.9rem;font-style:italic}@media(prefers-color-scheme:dark){.legal-page{background-color:var(--color-background);color:var(--color-text)}.legal-page h1{color:var(--color-primary-light)}.legal-page h2{color:var(--color-secondary)}.legal-page h3{color:var(--color-text)}.legal-page .note{background:#f003;border-left-color:#ff6b6b;color:var(--color-text)}}.cookie-banner{position:fixed;bottom:20px;left:20px;right:20px;max-width:500px;background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border:1px solid rgba(0,0,0,.1);border-radius:16px;padding:20px;box-shadow:0 10px 40px #0000001a;z-index:1000;display:flex;flex-direction:column;gap:15px;animation:slideUp .5s ease-out}.cookie-content h3{margin-top:0;margin-bottom:.5rem;font-size:1.2rem;color:var(--color-primary)}.cookie-content p{font-size:.9rem;line-height:1.5;margin:0;color:var(--color-text)}.cookie-content a{color:var(--color-secondary);text-decoration:underline}.cookie-actions{display:flex;gap:10px;justify-content:flex-end}.cookie-actions button{padding:8px 16px;border-radius:8px;border:none;cursor:pointer;font-weight:500;transition:transform .1s,opacity .2s}.cookie-actions button:hover{opacity:.9;transform:scale(1.02)}.btn-primary{background:var(--color-primary);color:#fff}.btn-secondary{background:#f0f0f0;color:#333}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@media(max-width:600px){.cookie-banner{left:10px;right:10px;bottom:10px}.cookie-actions{flex-direction:column}.cookie-actions button{width:100%;padding:12px}}@media(prefers-color-scheme:dark){.cookie-banner{background:#1e1e1ef2;border:1px solid rgba(255,255,255,.1);box-shadow:0 10px 40px #00000080}.cookie-content h3{color:#fff}.cookie-content p{color:#ddd}.cookie-content a{color:#8ab4f8}.btn-secondary{background:#444;color:#fff}.btn-secondary:hover{background:#555}}.home{min-height:100vh;position:relative;overflow:hidden}.hero-3d{width:100%;height:100vh;position:fixed;top:0;left:0;z-index:var(--z-base)}.hero-overlay{position:absolute;inset:0;z-index:10;display:flex;align-items:center;justify-content:center;pointer-events:none;background:linear-gradient(to bottom,rgba(0,0,0,.3) 0%,transparent 25%,transparent 75%,rgba(0,0,0,.4) 100%)}.hero-content{text-align:center;color:#fff;max-width:800px;padding:var(--spacing-lg);pointer-events:none;-webkit-user-select:none;user-select:none}.hero-title{font-size:clamp(2rem,5vw,3.5rem);margin-bottom:var(--spacing-md);text-shadow:0 2px 20px rgba(0,0,0,.5);color:#fff}.hero-subtitle{font-size:clamp(1rem,2vw,1.3rem);margin-bottom:var(--spacing-xl);opacity:.95;text-shadow:0 1px 10px rgba(0,0,0,.5)}.scroll-indicator{margin-top:var(--spacing-lg);color:#fff;animation:pulse 2s ease-in-out infinite}.mobile-fallback{min-height:100vh;padding-top:calc(60px + var(--spacing-xl));padding-bottom:var(--spacing-xl);background:var(--gradient-hero);color:#fff}.mobile-fallback .hero-title{color:#fff;text-align:center}.mobile-fallback .hero-subtitle{text-align:center;opacity:.95;margin-bottom:var(--spacing-xl)}.service-cards{display:grid;gap:var(--spacing-md);margin-top:var(--spacing-xl)}.service-card{display:block;text-decoration:none;color:var(--color-text);transition:transform var(--transition-base);animation-delay:calc(var(--card-index, 0) * .1s)}.service-card:nth-child(1){--card-index: 0}.service-card:nth-child(2){--card-index: 1}.service-card:nth-child(3){--card-index: 2}.service-card h2{font-size:1.5rem;margin-bottom:var(--spacing-xs)}.service-card p{color:var(--color-text-light);margin-bottom:0}@media(min-width:768px){.service-cards{grid-template-columns:repeat(3,1fr)}}.service-page{min-height:100vh;padding-top:calc(60px + var(--spacing-xl));padding-bottom:var(--spacing-xl);background:var(--color-background)}.service-content{max-width:900px;margin:0 auto;background:var(--color-surface);padding:var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:0 4px 20px #0000000d}.page-title{margin-bottom:var(--spacing-lg);background:var(--gradient-hero);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.content-body{line-height:1.8;color:var(--color-text)}.content-body h2{margin-top:var(--spacing-lg);color:var(--color-primary-dark)}.content-body h3{margin-top:var(--spacing-md);color:var(--color-text)}.content-body ul{margin-left:var(--spacing-md);margin-bottom:var(--spacing-md)}.content-body li{margin-bottom:var(--spacing-xs)}.content-body p{margin-bottom:var(--spacing-md)}.image-gallery{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:var(--spacing-md);margin:var(--spacing-xl) 0}.gallery-image{width:100%;height:300px;object-fit:cover;border-radius:var(--radius-md);box-shadow:0 4px 12px #0000001a;transition:transform var(--transition-base)}.gallery-image:hover{transform:scale(1.05)}.cta-section{margin-top:var(--spacing-xl);padding:var(--spacing-lg);background:var(--gradient-card);border-radius:var(--radius-md);border:2px solid var(--color-primary);text-align:center}.cta-section h2{margin-bottom:var(--spacing-sm);color:var(--color-text)}.cta-section p{margin-bottom:var(--spacing-md);color:var(--color-text-light)}.loading,.error{text-align:center;padding:var(--spacing-xl)}.error h1{color:var(--color-text);margin-bottom:var(--spacing-md)}@media(max-width:768px){.service-content{padding:var(--spacing-md)}.gallery-image{height:200px}}.contact-page{min-height:100vh;padding-top:calc(70px + var(--spacing-xl));padding-bottom:var(--spacing-xl);background:var(--color-background)}.contact-grid{display:grid;grid-template-columns:1fr;gap:var(--spacing-lg)}@media(min-width:768px){.contact-grid{grid-template-columns:1fr 1.5fr;align-items:start}}.contact-info h3,.contact-info strong{margin-bottom:var(--spacing-xs);color:var(--color-primary);display:block;margin-top:var(--spacing-md)}.contact-info .info-item,.contact-form h2,.contact-info h2{margin-bottom:var(--spacing-md)}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500;color:var(--color-text)}.form-group input,.form-group select,.form-group textarea{width:100%;padding:.8rem;background:#ffffffe6;border:1px solid rgba(0,0,0,.15);border-radius:var(--radius-sm);font-family:var(--font-main);font-size:1rem;color:var(--color-text);transition:all var(--transition-base)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{outline:none;border-color:var(--color-primary);background:#ffffffe6;box-shadow:0 0 0 3px var(--color-primary-light)}.checkbox-group{margin-top:1.5rem}.checkbox-group label{display:flex;gap:.8rem;align-items:flex-start;cursor:pointer;font-weight:400;color:var(--color-text-light);font-size:.9rem;line-height:1.4}.checkbox-group input[type=checkbox]{width:20px;height:20px;margin-top:2px;flex-shrink:0;cursor:pointer}.status-message{padding:1rem;border-radius:var(--radius-sm);margin-bottom:1.5rem;font-weight:500;text-align:center;animation:fadeIn .3s ease-out}.status-error{background-color:#fbe9e9cc;color:#ad1f1f;border:1px solid hsla(0,70%,40%,.2)}.status-success{background-color:#ecf9f0cc;color:#17823b;border:1px solid hsla(140,50%,40%,.2)}.btn-submit{width:100%;margin-top:1rem}@media(prefers-color-scheme:dark){.form-group input,.form-group select,.form-group textarea{background:#0003;border:1px solid rgba(255,255,255,.15);color:var(--color-text)}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{background:#0006;border-color:var(--color-primary)}.status-error{background-color:#4d191980;color:#e87d7d}.status-success{background-color:#194d2b80;color:#52e081}}.verify-email-page{min-height:80vh;display:flex;align-items:center;justify-content:center;padding-top:100px;padding-bottom:80px;padding-left:2rem;padding-right:2rem}.verify-content{max-width:600px;width:100%;padding:3rem;text-align:center;border-radius:20px}.verify-content h1{font-size:2rem;margin-bottom:1.5rem;background:var(--gradient-primary);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}.verify-content p{font-size:1.1rem;color:var(--text-secondary);margin-bottom:2rem;line-height:1.6}.success-icon,.error-icon{font-size:4rem;margin-bottom:1rem}.loader{width:48px;height:48px;border:5px solid var(--primary-color);border-bottom-color:transparent;border-radius:50%;display:inline-block;box-sizing:border-box;animation:rotation 1s linear infinite;margin-bottom:2rem}@keyframes rotation{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.loader-container{padding:2rem 0}.projects-grid{display:grid;grid-template-columns:repeat(auto-fill,min-min(300px,1fr));gap:2rem}.project-card{background:#141e1499;border:1px solid rgba(255,255,255,.1);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:16px;overflow:hidden;transition:transform .3s ease;display:flex;flex-direction:column;height:100%}.project-content{padding:1.75rem;display:flex;flex-direction:column;gap:.5rem;flex-grow:1}.project-card:hover{transform:translateY(-5px)}.project-gallery{position:relative;width:100%;background:#000}.main-image-container{width:100%;height:240px;cursor:pointer;overflow:hidden;position:relative}.main-image{width:100%;height:100%;object-fit:cover;transition:transform .5s ease}.main-image-container:hover .main-image{transform:scale(1.05)}.thumbnail-strip{display:flex;gap:8px;padding:10px;overflow-x:auto;background:#0000004d;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.2) transparent}.thumbnail-strip::-webkit-scrollbar{height:4px}.thumbnail-strip::-webkit-scrollbar-thumb{background:#fff3;border-radius:10px}.thumbnail-item{flex:0 0 60px;height:45px;border-radius:4px;cursor:pointer;object-fit:cover;opacity:.6;transition:all .2s ease;border:2px solid transparent}.thumbnail-item:hover{opacity:1}.thumbnail-item.active{opacity:1;border-color:#4ade80}.lightbox-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#000000f2;display:flex;align-items:center;justify-content:center;z-index:1000;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);padding:20px}.lightbox-content{position:relative;max-width:90%;max-height:90vh}.lightbox-image{max-width:100%;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 0 30px #00000080}.lightbox-close{position:absolute;top:-40px;right:0;background:none;border:none;color:#fff;font-size:2rem;cursor:pointer;padding:10px;line-height:1}.lightbox-close:hover{color:#4ade80}@media(max-width:768px){.main-image-container{height:200px}.thumbnail-item{flex:0 0 50px;height:38px}}
