:root{--bg-color:#050505;--text-color:#f4f4f5;--text-muted:#a1a1aa;--accent:#b0ff1a;--accent-glow:#b0ff1a33;--surface:#121212;--surface-border:#27272a;--font-heading:"Syne", sans-serif;--font-body:"Inter", sans-serif}*{box-sizing:border-box;margin:0;padding:0}html,body{background-color:var(--bg-color);color:var(--text-color);font-family:var(--font-body);cursor:none;-webkit-font-smoothing:antialiased;width:100%;max-width:100vw;overflow-x:hidden}@media (width<=1024px){html,body{cursor:auto!important}}.preloader{background-color:var(--bg-color);z-index:10000;justify-content:center;align-items:center;width:100vw;height:100vh;display:flex;position:fixed;top:0;left:0}.preloader-text{font-family:var(--font-heading);color:#fff;font-size:clamp(4rem,10vw,8rem);font-weight:800}.cursor-dot,.cursor-outline{z-index:9999;pointer-events:none;border-radius:50%;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.cursor-dot{background-color:var(--accent);width:8px;height:8px}.cursor-outline{border:1px solid #ffffff80;justify-content:center;align-items:center;width:40px;height:40px;transition:width .3s,height .3s,background-color .3s,border-color .3s;display:flex}.cursor-text{font-family:var(--font-body);color:#000;text-transform:uppercase;opacity:0;pointer-events:none;letter-spacing:.1em;font-size:10px;font-weight:700;transition:opacity .3s}@media (width<=1024px){.cursor-dot,.cursor-outline{display:none!important}.btn-primary,.btn-primary-outline,.flip-btn,.scroll-to-top{cursor:pointer!important}}#bg-canvas{z-index:-1;opacity:.4;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}h1,h2,h3,h4{font-family:var(--font-heading);font-weight:700;line-height:1.1}a{color:inherit;text-decoration:none}#bg-canvas{z-index:0;pointer-events:none;width:100vw;height:100vh;position:fixed;top:0;left:0}.site-wrapper{z-index:1;position:relative}.header{mix-blend-mode:difference;z-index:100;justify-content:space-between;align-items:center;width:100%;padding:1.5rem 4rem;display:flex;position:absolute;top:0;left:0}.logo{font-family:var(--font-heading);letter-spacing:-.05em;color:#fff;font-size:1.5rem;font-weight:800}.nav{gap:2rem;display:flex}.nav a{text-transform:uppercase;letter-spacing:.05em;color:#fff;font-size:.9rem;font-weight:500;transition:color .3s}.nav a:hover{color:var(--accent)}.btn-primary,.btn-primary-outline{font-family:var(--font-heading);cursor:none;border-radius:50px;padding:.8rem 2rem;font-size:1rem;font-weight:600;transition:all .3s;display:inline-block}.btn-primary{background-color:var(--accent);color:#000;border:1px solid var(--accent)}.btn-primary:hover{color:var(--accent);box-shadow:0 0 20px var(--accent-glow);background-color:#0000}.btn-primary-outline{color:#fff;background-color:#0000;border:1px solid #ffffff4d}.btn-primary-outline:hover{border-color:var(--accent);color:var(--accent)}.btn-link{color:var(--text-color);align-items:center;gap:.5rem;font-weight:500;transition:color .3s;display:inline-flex}.btn-link:hover{color:var(--accent)}.btn-link .arrow{transition:transform .3s}.btn-link:hover .arrow{transform:translate(5px)}.hero{flex-direction:column;justify-content:center;min-height:100vh;padding:0 4rem;display:flex;position:relative}.hero-title{text-transform:uppercase;letter-spacing:-.02em;flex-direction:column;margin-bottom:2rem;font-size:clamp(3rem,8vw,7rem);display:flex}.hero-title .accent{color:#0000;-webkit-text-stroke:1px var(--accent)}.hero-subtitle{color:var(--text-muted);max-width:600px;margin-bottom:3rem;font-size:1.25rem;line-height:1.6}.hero-actions{align-items:center;gap:2rem;display:flex}.hero-scroll-indicator{opacity:.5;position:absolute;bottom:2rem;left:50%;transform:translate(-50%)}.mouse{border:2px solid #fff;border-radius:12px;justify-content:center;width:24px;height:36px;padding-top:6px;display:flex}.wheel{background-color:#fff;border-radius:2px;width:4px;height:8px;animation:1.5s infinite scroll}@keyframes scroll{0%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(10px)}}section:not(.hero){padding:8rem 4rem}.section-header{margin-bottom:4rem}.section-title{margin-bottom:1rem;font-size:clamp(2.5rem,5vw,4rem)}.section-desc{color:var(--text-muted);font-size:1.1rem}.about{border-top:1px solid #ffffff0d;padding:8rem 4rem}.about-container{align-items:flex-start;gap:4rem;display:flex}.about-title{font-family:var(--font-body);text-transform:uppercase;flex:1;font-size:clamp(2.5rem,5vw,4rem);font-weight:300}.about-content{flex-direction:column;flex:2;gap:2rem;display:flex}.about-text{color:#fff;flex-wrap:wrap;gap:.3rem .5rem;font-size:1.5rem;font-weight:300;line-height:1.6;display:flex}.word{vertical-align:top;display:inline-block;overflow:hidden}.word-inner{opacity:0;display:inline-block;transform:translateY(100%)}.marquee-section{background-color:var(--bg-color);z-index:2;border-top:1px solid #ffffff0d;border-bottom:1px solid #ffffff0d;padding:4rem 0;position:relative;overflow:hidden}.marquee{white-space:nowrap;width:100%;display:flex;overflow:hidden}.marquee-inner{font-family:var(--font-body);text-transform:uppercase;color:#0000;-webkit-text-stroke:1px #fff6;font-size:clamp(3rem,6vw,6rem);font-weight:300;display:inline-block}.cases{padding:8rem 4rem}.cases-header{justify-content:space-between;align-items:flex-start;margin-bottom:4rem;display:flex}.cases-title{font-family:var(--font-body);text-transform:uppercase;letter-spacing:-.02em;font-size:clamp(2.5rem,5vw,4rem);font-weight:300}.cases-desc{color:var(--text-muted);text-align:right;font-size:.9rem;line-height:1.5}.cases-grid{grid-template-columns:repeat(3,1fr);gap:2rem;display:grid}.case-card-wrapper{display:block}.case-card{flex-direction:column;height:100%;transition:transform .4s;display:flex}.case-card:hover{transform:translateY(-10px)}.case-category{text-transform:uppercase;letter-spacing:.05em;color:var(--text-muted);margin-bottom:1rem;font-size:.8rem}.case-image-wrap{aspect-ratio:16/10;background-color:#111;border:1px solid #ffffff0d;border-radius:12px;width:100%;margin-bottom:1.5rem;position:relative;overflow:hidden}.case-img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.case-card:hover .case-img{transform:scale(1.05)}.case-overlay{opacity:0;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0006;justify-content:center;align-items:center;width:100%;height:100%;transition:opacity .3s;display:flex;position:absolute;top:0;left:0}.case-card:hover .case-overlay{opacity:1}.view-btn{background:var(--accent);color:#000;border-radius:30px;padding:.8rem 1.5rem;font-size:.9rem;font-weight:600;transition:transform .4s;transform:translateY(20px)}.case-card:hover .view-btn{transform:translateY(0)}.case-footer-top{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.case-footer-top h4{font-family:var(--font-body);text-transform:uppercase;font-size:1.1rem;font-weight:600}.case-arrow{background-color:var(--accent);color:#000;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.8rem;display:flex}.case-footer p{color:var(--text-muted);font-size:.9rem;line-height:1.5}.case-points{flex-direction:column;gap:.5rem;margin-top:1rem;list-style:none;display:flex}.case-points li{color:var(--text-muted);opacity:.8;font-size:.85rem;line-height:1.4}.case-card:hover .case-points li{opacity:1;color:#fff}.process{padding:8rem 4rem}.process-header{justify-content:space-between;align-items:flex-end;margin-bottom:4rem;display:flex}.process-title{font-family:var(--font-body);text-transform:uppercase;font-size:clamp(2.5rem,5vw,4rem);font-weight:300}.process-index{color:var(--text-muted);font-size:1rem}.process-grid{grid-template-columns:repeat(3,1fr);gap:1.5rem;display:grid}.process-card{background-color:#222;flex-direction:column;min-height:250px;padding:3rem 2rem;transition:background-color .3s;display:flex;position:relative}.process-card:hover{background-color:#333}.process-num{color:var(--text-muted);font-size:.8rem;position:absolute;top:1.5rem;right:1.5rem}.process-card h3{font-family:var(--font-body);text-transform:uppercase;word-wrap:break-word;overflow-wrap:break-word;margin-top:auto;margin-bottom:.5rem;font-size:1.8rem;font-weight:400}.process-card p{color:var(--text-muted);font-size:.85rem;line-height:1.5}.services-list-section{border-top:1px solid #ffffff1a;padding:8rem 4rem}.services-layout{gap:4rem;display:flex}.services-visual{flex:1;position:relative}.abstract-shape{filter:grayscale()contrast(1.5);background-image:url(https://images.unsplash.com/photo-1550684848-fac1c5b4e853?q=80&w=800&auto=format&fit=crop);background-position:50%;background-size:cover;width:100%;height:100%;min-height:400px;-webkit-mask-image:linear-gradient(90deg,#000 50%,#0000 100%);mask-image:linear-gradient(90deg,#000 50%,#0000 100%)}.services-content{flex-direction:column;flex:2;display:flex}.services-header-top{border-bottom:1px solid #fff3;justify-content:space-between;align-items:flex-end;margin-bottom:3rem;padding-bottom:1rem;display:flex}.services-index{color:var(--text-muted);font-size:1rem}.services-title-large{font-family:var(--font-body);text-transform:uppercase;font-size:clamp(2.5rem,5vw,4rem);font-weight:300;line-height:1}.services-list{flex-direction:column;list-style:none;display:flex}.service-row{border-bottom:1px solid #ffffff1a;align-items:center;padding:1.5rem 0;transition:padding-left .3s;display:flex}.service-row:hover{border-bottom-color:#ffffff80;padding-left:1rem}.service-no{color:var(--text-muted);width:60px;font-size:.75rem}.service-name{font-family:var(--font-body);text-transform:uppercase;flex:1;font-size:1.5rem;font-weight:400}.service-price{color:var(--text-muted);font-size:.9rem}.contact{justify-content:center;padding:8rem 4rem;display:flex}.contact-box{background-color:var(--accent);color:#000;text-align:center;border-radius:32px;width:100%;max-width:800px;padding:4rem}.contact-title{margin-bottom:1rem;font-size:clamp(2rem,4vw,3.5rem)}.contact-desc{color:#000000b3;margin-bottom:3rem;font-size:1.2rem}.contact-links{justify-content:center;gap:2rem;display:flex}.contact-link{font-family:var(--font-body);align-items:center;gap:.5rem;padding:10px 0;font-size:1.5rem;font-weight:600;line-height:1.5;display:inline-flex;position:relative}.contact-link:after{content:"";background-color:#000;width:0%;height:2px;transition:width .3s;position:absolute;bottom:5px;left:0}.contact-link:hover:after{width:100%}.footer{border-top:1px solid var(--surface-border);color:var(--text-muted);flex-direction:column;gap:2rem;padding:3rem 4rem;font-size:.9rem;display:flex}.footer-top{justify-content:space-between;display:flex}.footer-legal{border-top:1px solid #ffffff0d;padding-top:2rem}.legal-text{opacity:.7;font-size:.8rem;line-height:1.8}.legal-link{color:var(--text-muted);-webkit-text-decoration:underline #fff3;text-decoration:underline #fff3;transition:color .3s}.legal-link:hover{color:#fff;text-decoration-color:#fff}.scroll-to-top{background-color:var(--accent);color:#000;cursor:none;z-index:99;opacity:0;visibility:hidden;border:none;border-radius:50%;justify-content:center;align-items:center;width:50px;height:50px;transition:all .3s;display:flex;position:fixed;bottom:2rem;right:2rem;transform:translateY(20px)}.scroll-to-top:hover{background-color:#fff}.scroll-to-top.visible{opacity:1;visibility:visible;transform:translateY(0)}.scroll-to-top.visible:hover{transform:translateY(-5px);box-shadow:0 10px 20px #00000080}.contrast-section{background-color:#080808;padding:8rem 4rem}.contrast-header{text-align:center;margin-bottom:4rem}.section-title{font-family:var(--font-heading);letter-spacing:-.02em;font-size:3rem;font-weight:300}.contrast-grid{grid-template-columns:1fr 1fr;gap:2rem;max-width:1200px;margin:0 auto;display:grid}.contrast-card{border:1px solid #ffffff0d;border-radius:24px;padding:3rem;transition:all .4s}.contrast-card h3{margin-bottom:2rem;font-size:1.5rem;font-weight:600}.contrast-card ul{flex-direction:column;gap:1.2rem;list-style:none;display:flex}.contrast-card li{opacity:.7;padding-left:1.5rem;font-size:1rem;position:relative}.contrast-card li:before{content:"—";color:var(--accent);position:absolute;left:0}.contrast-card.low{opacity:.5;background-color:#ffffff05}.contrast-card.high{border-color:var(--accent);background-color:#b0ff1a0d;transform:scale(1.02);box-shadow:0 20px 40px #0000004d}.contrast-card.high h3{color:var(--accent)}.contrast-card.high li{opacity:1}@media (width<=1024px){.about-container,.services-layout{flex-direction:column;gap:4rem}.hero{padding:0 2rem}.hero-title{font-size:4rem}.cases{padding:6rem 2rem}.cases-header{margin-bottom:3rem}.cases-grid{grid-template-columns:repeat(2,1fr);gap:3rem 1.5rem}.process-grid,.services-grid{grid-template-columns:1fr}}@media (width<=768px){.header{flex-direction:column;align-items:center;gap:1rem;padding:1rem}.nav{flex-wrap:wrap;justify-content:center;gap:1rem}.header-actions{margin-top:.5rem}.hero{padding:8rem 1.5rem 2rem}.hero-title{font-size:clamp(1.8rem,9vw,3.5rem)}.hero-subtitle{font-size:1rem}.hero-actions{flex-direction:column;align-items:stretch;gap:1rem;width:100%}.hero-actions .btn-primary,.hero-actions .btn-link{text-align:center;justify-content:center;width:100%}.cases,.process,.services-list-section,.about,.contact,.footer{padding:4rem 1.5rem}.about-container{gap:2rem}.about-text{font-size:1.1rem}.cases-header{flex-direction:column;align-items:flex-start;gap:1.5rem;margin-bottom:2.5rem}.cases-title,.process-title{font-size:clamp(2rem,10vw,3rem)}.process-card h3{font-size:1.4rem}.cases-desc{text-align:left}.cases-grid{grid-template-columns:1fr;gap:2.5rem}.services-layout{flex-direction:column;gap:2rem}.services-visual{display:none}.case-footer-top{flex-wrap:wrap;gap:.5rem}.process-header,.services-header-top{flex-direction:column;align-items:flex-start;gap:1rem}.service-row{flex-direction:column;align-items:flex-start;gap:.5rem;padding:1.5rem 0}.service-name{font-size:1.5rem}.contact-box{border-radius:24px;padding:3rem 1.5rem}.contact-title{font-size:clamp(1.8rem,8vw,2.5rem)}.contact-links{flex-direction:column;align-items:center;gap:1rem}.contact-link{font-size:1.25rem}.footer-top{flex-direction:column;gap:2rem}.contrast-section{padding:4rem 1.5rem}.section-title{font-size:2rem}.contrast-grid{grid-template-columns:1fr;gap:1.5rem}.contrast-card{padding:2rem 1.5rem}.site-wrapper,main,section{width:100%;overflow-x:hidden}}
