:root{--bg-color:#050505;--text-color:#fff;--accent-color:#fff;--font-main:"Outfit", sans-serif}*{box-sizing:border-box;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;padding:0}body,html{background-color:var(--bg-color);width:100%;color:var(--text-color);font-family:var(--font-main);overflow-x:hidden}::-webkit-scrollbar{display:none}#app{width:100%;position:relative}#bg-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0}.main-header{z-index:1000;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#ffffff08;border-bottom:1px solid #ffffff0d;justify-content:space-between;align-items:center;width:100%;padding:10px 40px;transition:transform .4s cubic-bezier(.3,1,.3,1),opacity .3s;display:flex;position:fixed;top:0;left:0}.header-hidden{opacity:0;transform:translateY(-100%)}.header-left-logo{align-items:center;height:65px;display:flex}.logo-pulsing{width:auto;height:100%;animation:2s ease-in-out infinite logo-pulse}@keyframes logo-pulse{0%,to{opacity:.7;filter:brightness();transform:scale(1)}50%{opacity:1;filter:brightness(1.3);transform:scale(1.15)}}.header-right{gap:15px;display:flex}.content{z-index:10;width:100%;position:relative}#hero-section{flex-direction:column;justify-content:center;align-items:center;min-height:90vh;padding-top:100px;display:flex}#main-text{letter-spacing:-.02em;text-transform:lowercase;pointer-events:auto;cursor:pointer;-webkit-user-select:none;user-select:none;perspective:1000px;z-index:5;font-size:clamp(2.5rem,10vw,7rem);font-weight:600;display:inline-block;position:relative}.carousel-banner{z-index:30;pointer-events:none;place-items:center;width:100%;height:60px;display:grid;position:absolute;top:-40px;left:0}.banner-text-wrap,.banner-arrow-wrap{text-align:center;flex-direction:column;grid-area:1/1;justify-content:center;align-items:center;width:100%;display:flex}.banner-title{letter-spacing:.1em;color:#fff;text-shadow:0 0 20px #fff3;white-space:nowrap;margin-bottom:12px;font-size:clamp(1.2rem,4vw,2.2rem);font-weight:800}.banner-subtitle{color:#ffffffb3;white-space:nowrap;font-size:clamp(.7rem,1.8vw,1.1rem);font-weight:300}.banner-arrow-wrap{opacity:0;transform:translateY(-20px)}.banner-arrow{color:#d4af37;filter:drop-shadow(0 0 15px #d4af3799);stroke-width:4px;width:70px;height:70px}.projects-carousel-container{z-index:10;perspective:2000px;justify-content:center;align-items:center;width:100%;height:400px;margin-top:60px;display:flex;position:relative;overflow:visible}.carousel-nav{pointer-events:none;z-index:20;justify-content:space-between;max-width:900px;margin:0 auto;padding:0 20px;display:flex;position:absolute;top:50%;left:0;right:0;transform:translateY(-50%)}.nav-arrow{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);color:#fff;cursor:pointer;pointer-events:auto;background:#ffffff1a;border:1px solid #ffffff4d;border-radius:50%;justify-content:center;align-items:center;width:70px;height:70px;transition:all .3s cubic-bezier(.23,1,.32,1);animation:2s ease-in-out infinite arrow-pulse;display:flex;box-shadow:0 0 20px #0000004d}@keyframes arrow-pulse{0%,to{transform:scale(1);box-shadow:0 0 20px #0000004d}50%{transform:scale(1.05);box-shadow:0 0 25px #fff3}}.nav-arrow:hover{background:#fff3;border-color:#fff9;animation-play-state:paused;box-shadow:0 0 30px #fff3;transform:scale(1.15)!important}.nav-arrow svg{stroke-width:2.5px;width:30px;height:30px}.projects-track{width:100%;height:100%;transform-style:preserve-3d;will-change:transform;justify-content:center;align-items:center;display:flex;position:relative}.project-tile{backface-visibility:hidden;background:#ffffff08;border:1px solid #ffffff26;border-radius:16px;flex-direction:column;justify-content:flex-end;width:320px;height:220px;text-decoration:none;transition:border-color .4s,box-shadow .4s;display:flex;position:absolute;overflow:hidden;box-shadow:0 10px 40px #00000080}.project-tile:hover{border-color:#fff6;transform:translateY(-10px)scale(1.02)}.tile-bg{opacity:.65;filter:grayscale()brightness(1.6)contrast(1.1);background-position:50%;background-size:cover;width:100%;height:100%;transition:opacity .5s,filter .5s,transform .8s cubic-bezier(.23,1,.32,1);position:absolute;top:0;left:0}.project-tile:hover .tile-bg{opacity:.7;filter:grayscale(0%)}.tile-content{z-index:2;background:linear-gradient(#0000,#050505e6);padding:20px;position:relative}.tile-tag{color:#d4af37;border:1px solid #d4af37;border-radius:4px;margin-bottom:8px;padding:2px 6px;font-size:.6rem;font-weight:700;display:inline-block}.tile-title{color:#fff;margin-bottom:5px;font-size:1.1rem}.tile-desc{color:#fff9;font-size:.75rem;line-height:1.3}.placeholder{opacity:.3;cursor:default}#gallery-section{width:100%;padding:50px 10% 150px}.gallery-grid{width:100%;max-width:1100px;margin:0 auto}.gallery-row{align-items:center;gap:60px;width:100%;margin-bottom:100px;display:flex}.gallery-row:nth-child(2n){flex-direction:row-reverse}.gallery-item-wrapper,.text-item-wrapper{aspect-ratio:16/9;will-change:transform, opacity;flex-direction:column;justify-content:center;width:50%;padding:10px;transition:box-shadow .5s;display:flex;position:relative;overflow:hidden}.gallery-item-wrapper{background:#ffffff08;border:1px solid #fff3}.text-item-wrapper{text-align:center;padding:30px}.pulsing-title{color:#fff;text-transform:uppercase;letter-spacing:.1em;margin-bottom:20px;font-size:1.5rem;font-weight:700}.text-description{color:#ffffffe6;font-size:1.2rem;font-weight:400;line-height:1.7}.gallery-image{object-fit:cover;object-position:top left;width:106%;height:106%;margin-top:-1%;margin-left:-1%;display:block}.char{will-change:transform, opacity;display:inline-block}.nav-button-wrapper{perspective:1000px}.nav-button{color:#fff;letter-spacing:.05em;background:#ffffff0d;border:1px solid #fff3;border-radius:50px;justify-content:center;align-items:center;width:180px;height:45px;padding:12px 24px;font-size:.9rem;font-weight:600;text-decoration:none;transition:background .3s,border .3s,box-shadow .3s;display:flex;position:relative;overflow:hidden;box-shadow:0 0 10px #ffffff0d}.nav-button:hover{background:#ffffff1a;border-color:#ffffff80;box-shadow:0 0 15px #ffffff1a}#btn-menu .nav-button{animation:2s ease-in-out infinite menu-pulse}#btn-menu .nav-button:hover{animation-play-state:paused}@keyframes menu-pulse{0%,60%,to{opacity:1;box-shadow:0 0 10px #ffffff0d}80%{opacity:.85;box-shadow:0 0 18px #ffffff38,0 0 6px #ffffff1a}}.btn-text,.btn-hover-text{text-align:center;width:100%;transition:transform .4s cubic-bezier(.7,0,.3,1),opacity .3s;position:absolute;left:0}.btn-hover-text{opacity:0;transform:translateY(20px)}.nav-button:hover .btn-text{opacity:0;transform:translateY(-20px)}.nav-button:hover .btn-hover-text{opacity:1;transform:translateY(0)}.nav-button-icon{color:#fff;background:0 0;border:none;border-radius:0;justify-content:center;align-items:center;width:auto;height:auto;padding:4px;transition:transform .3s cubic-bezier(.23,1,.32,1),opacity .3s;display:flex}.nav-button-icon:hover{opacity:.75;box-shadow:none;background:0 0;border-color:#0000;transform:scale(1.15)}.whatsapp-icon{fill:#fff;flex-shrink:0;width:26px;height:26px;display:block}.cursor-dot,.cursor-aura{pointer-events:none;z-index:9999;mix-blend-mode:difference;position:fixed;top:0;left:0}.cursor-dot{background:#fff;border-radius:50%;width:8px;height:8px}.cursor-aura{border:1px solid #ffffff80;border-radius:50%;width:40px;height:40px;transition:transform .1s ease-out}@media (width<=768px){.cursor-dot,.cursor-aura{display:none}.main-header{height:60px;padding:5px 15px}.header-left-logo{height:45px}.header-right{gap:5px}.nav-button{width:95px;height:32px;padding:5px;font-size:.6rem}.projects-carousel-container{height:320px;margin-top:30px}.project-tile{width:260px;height:180px}.nav-arrow{width:50px;height:50px}.nav-arrow svg{width:24px;height:24px}.carousel-nav{max-width:100%;padding:0 10px}.carousel-banner{height:60px;margin-top:30px}.banner-title{letter-spacing:.02em;white-space:normal;font-size:.85rem}.banner-subtitle{white-space:nowrap;padding:0 10px;font-size:.6rem}.banner-arrow{stroke-width:5px;width:45px;height:45px}.gallery-row{gap:40px;margin-bottom:60px;flex-direction:column!important}.gallery-item-wrapper,.text-item-wrapper{width:100%;order:unset!important}#hero-section{height:auto;min-height:80vh;padding-bottom:40px}#main-text{white-space:nowrap;font-size:clamp(1.5rem,8.2vw,3rem)}#gallery-section{margin-top:20px;padding:0 5% 100px}.text-item-wrapper{aspect-ratio:auto;height:auto;margin-bottom:20px;padding:15px}.pulsing-title{font-size:1.3rem}.text-description{font-size:.95rem}.about-container{padding:20px 5%}.about-title{font-size:1.8rem}.about-subtitle{font-size:1.2rem}.return-button{margin-left:10px;padding:6px 12px;font-size:.6rem}}.about-container{color:#fff;max-width:900px;margin:0 auto;padding:50px 20px 150px}.about-title{text-align:center;margin-bottom:30px;font-size:clamp(2rem,5vw,3.5rem)}.about-subtitle{text-align:center;color:#fffc;margin-bottom:80px;font-size:clamp(1.2rem,2.5vw,1.6rem);font-weight:300;line-height:1.6}.about-content-block{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff08;border:1px solid #ffffff1a;border-radius:20px;margin-bottom:60px;padding:40px;box-shadow:0 10px 30px #00000080}.about-content-block h3{color:#d4af37;margin-bottom:20px;font-size:1.8rem;font-weight:600}.about-content-block p{color:#ffffffbf;margin-bottom:15px;font-size:1.1rem;line-height:1.8}.about-content-block ul{padding-left:0;list-style:none}.about-content-block ul li{color:#ffffffbf;margin-bottom:15px;padding-left:20px;font-size:1.1rem;line-height:1.8;position:relative}.about-content-block ul li:before{content:"✦";color:#d4af37;position:absolute;left:0}.about-cta{text-align:center;flex-direction:column;align-items:center;margin-top:100px;display:flex}.about-cta h3{margin-bottom:10px;font-size:2rem}.return-button{color:#d4af37;letter-spacing:.1em;white-space:nowrap;background:#d4af371a;border:1px solid #d4af3780;border-radius:30px;margin-left:20px;padding:8px 16px;font-size:.8rem;font-weight:600;text-decoration:none;transition:all .3s;animation:2s infinite pulse-return;display:inline-block}.return-button:hover{color:#fff;background:#d4af3733;border-color:#d4af37;animation-play-state:paused}@keyframes pulse-return{0%,to{box-shadow:0 0 10px #d4af3733}50%{box-shadow:0 0 20px #d4af3799}}.mobile-only{display:none}.desktop-only{display:block}@media (width<=768px){.desktop-only{display:none!important}.mobile-only{display:block!important}}.roller-menu{z-index:12000;-webkit-backdrop-filter:blur(25px);clip-path:inset(0 0 100%);pointer-events:none;background:#141414f2;border-bottom:1px solid #d4af374d;justify-content:center;align-items:center;width:100%;height:100dvh;transition:clip-path .8s cubic-bezier(.19,1,.22,1);display:flex;position:fixed;top:0;left:0}.roller-menu.active{clip-path:inset(0 0 0%);pointer-events:auto}@media (width>=769px){.roller-menu{background:#1e1e1efa;border:1px solid #d4af3733;border-top:none;border-radius:0 0 20px 20px;width:380px;height:auto;min-height:400px;top:0;left:auto;right:40px;box-shadow:0 50px 100px #000c}}.menu-close{color:#fff;cursor:pointer;z-index:10;opacity:0;background:0 0;border:none;padding:10px;transition:transform .3s,opacity .5s;position:absolute;top:30px;right:30px}.roller-menu.active .menu-close{opacity:1}.menu-close:hover{color:#d4af37;transform:rotate(90deg)scale(1.1)}.menu-close svg{width:32px;height:32px}.roller-links{text-align:center;flex-direction:column;gap:30px;width:100%;padding:80px 20px;display:flex}.roller-link{color:#fff;text-transform:uppercase;letter-spacing:.2em;opacity:0;font-family:Outfit,sans-serif;font-size:clamp(1.5rem,5vw,2rem);font-weight:800;text-decoration:none;transition:color .3s,opacity .5s,transform .5s;position:relative;transform:translateY(20px)}.roller-menu.active .roller-link{opacity:1;transform:translateY(0)}@media (width>=769px){.roller-link{letter-spacing:.15em;text-align:left;padding:12px 50px;font-size:1.1rem}}.roller-link:hover{color:#d4af37}.roller-link:after{content:"";background:#d4af37;width:0;height:2px;transition:all .4s cubic-bezier(.165,.84,.44,1);position:absolute;bottom:-5px;left:50%;transform:translate(-50%)}@media (width>=769px){.roller-link:after{left:50px;transform:none}}.roller-link:hover:after{width:30px}.hero-description{text-align:center;opacity:0;width:100%;max-width:800px;transform-style:preserve-3d;margin:20px auto 40px;padding:0 20px}.hero-description p{color:#fff;letter-spacing:.05em;text-shadow:0 0 10px #fff3;margin:0;font-size:clamp(.95rem,1.5vw,1.2rem);font-weight:300;line-height:1.6}.cookie-consent{z-index:10000;text-align:center;width:300px;height:300px;transform-style:preserve-3d;visibility:hidden;background:radial-gradient(circle at 30% 30%,#2a2a2a,#050505 80%);border-radius:50%;flex-direction:column;justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;bottom:30px;right:40px;box-shadow:inset -10px -10px 30px #000000e6,inset 10px 10px 20px #ffffff0d,0 3px #111,0 8px #fff,0 11px #e6e6e6,0 14px #111,0 18px #050505,0 30px 40px #000c}.cookie-consent:before{content:"";mix-blend-mode:overlay;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)' opacity='0.15'/%3E%3C/svg%3E");border-radius:50%;position:absolute;inset:0}.cookie-consent:after{content:"";pointer-events:none;border:3px dashed #0006;border-radius:50%;position:absolute;inset:15px;box-shadow:inset 0 0 10px #00000080}.cookie-content{z-index:2;position:relative;transform:translateZ(30px)}.cookie-title{color:#fff;text-transform:uppercase;letter-spacing:.1em;text-shadow:0 4px 10px #000000e6;margin-bottom:10px;font-size:1.5rem;font-weight:700}.cookie-desc{color:#ffffffe6;text-shadow:0 2px 4px #000000e6;margin-bottom:25px;font-size:.85rem;line-height:1.5}.cookie-buttons{justify-content:center;gap:15px;display:flex}.btn-cookie{cursor:pointer;text-transform:uppercase;pointer-events:auto;border:none;border-radius:20px;padding:8px 18px;font-size:.75rem;font-weight:700;transition:all .3s cubic-bezier(.175,.885,.32,1.275)}.btn-accept{color:#000;background:#fff;box-shadow:0 4px 10px #fff3}.btn-accept:hover{color:#000;background:#d4af37;transform:scale(1.1);box-shadow:0 5px 20px #d4af3780}.btn-decline{color:#fff9;background:#0006;border:1px solid #fff3}.btn-decline:hover{color:#fff;background:#ffffff1a;border-color:#ffffff80}@media (width<=768px){.cookie-consent{margin-left:-150px;bottom:20px;left:50%;right:auto}}#contact-section{z-index:10;width:100%;padding:80px 10% 160px;position:relative}.contact-wrapper{text-align:center;max-width:640px;margin:0 auto}.contact-eyebrow{letter-spacing:.3em;color:#d4af37;text-transform:uppercase;margin-bottom:28px;font-size:.75rem;font-weight:700}.contact-heading{color:#fff;letter-spacing:.01em;margin-bottom:64px;font-size:clamp(1.6rem,3.5vw,2.6rem);font-weight:300;line-height:1.55}.contact-form{flex-direction:column;align-items:center;gap:24px;width:100%;display:flex}.contact-field{color:#000;will-change:transform, box-shadow;background:#fff;border:none;border-radius:6px;outline:none;width:100%;max-width:520px;padding:18px 26px;font-family:Outfit,sans-serif;font-size:1rem;font-weight:400;transition:box-shadow .35s cubic-bezier(.23,1,.32,1),transform .35s cubic-bezier(.23,1,.32,1);box-shadow:0 8px 32px #0000008c,0 2px 8px #0006,0 40px 80px #0000004d}.contact-field::placeholder{color:#00000061;font-weight:300}.contact-field:focus{transform:translateY(-3px);box-shadow:0 12px 48px #000000a6,0 4px 16px #00000080,0 50px 100px #00000059,0 0 0 2px #d4af3766}.contact-textarea{resize:none;height:150px;line-height:1.6}.contact-submit{color:#fff;letter-spacing:.2em;text-transform:uppercase;cursor:pointer;will-change:transform, background;background:#5a5a5a;border:none;border-radius:6px;margin-top:12px;padding:18px 70px;font-family:Outfit,sans-serif;font-size:.85rem;font-weight:700;transition:background .5s cubic-bezier(.23,1,.32,1),transform .35s cubic-bezier(.23,1,.32,1),box-shadow .35s cubic-bezier(.23,1,.32,1);box-shadow:0 8px 32px #0000008c,0 2px 8px #0006}.contact-submit:hover:not(:disabled){background:#707070;transform:translateY(-4px);box-shadow:0 14px 44px #000000a6,0 4px 14px #00000080}.contact-submit:disabled{cursor:default}.contact-submit.sent{background:#22883a;box-shadow:0 8px 32px #22883a66,0 2px 8px #22883a4d}@media (width<=768px){#contact-section{padding:60px 6% 120px}.contact-heading{margin-bottom:44px;font-size:clamp(1.3rem,6vw,1.8rem)}.contact-field{max-width:100%;padding:16px 20px}.contact-submit{padding:16px 50px}}
