@import"https://fonts.googleapis.com/css2?family=Instrument+Sans:wght@400;500;600;700&display=swap";:root{--bg: #000000;--text: #ffffff;--accent: #FF3333;--accent-dim: #FF333340}*{margin:0;padding:0;box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--bg);color:var(--text);font-family:Space Grotesk,sans-serif;overflow-x:hidden;cursor:none}.cursor{position:fixed;width:20px;height:20px;border:2px solid var(--accent);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%);transition:width .2s,height .2s,border-color .2s;mix-blend-mode:difference}.cursor.active{width:50px;height:50px;border-color:var(--text)}.cursor-dot{position:fixed;width:4px;height:4px;background:var(--accent);border-radius:50%;pointer-events:none;z-index:9999;transform:translate(-50%,-50%)}nav{position:fixed;top:0;left:0;right:0;padding:2rem 4rem;display:flex;justify-content:space-between;align-items:center;z-index:100;mix-blend-mode:difference}.logo{font-size:1.2rem;font-weight:700;letter-spacing:.3em;text-transform:uppercase}.nav-links{display:flex;gap:3rem}.nav-links a{color:var(--text);text-decoration:none;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;position:relative;transition:color .3s}.nav-links a:after{content:"";position:absolute;bottom:-5px;left:0;width:0;height:1px;background:var(--accent);transition:width .3s}.nav-links a:hover:after{width:100%}.hero{height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;position:relative;overflow:hidden}.hero-text{font-size:clamp(4rem,18vw,20rem);font-weight:700;line-height:.85;text-align:center;letter-spacing:-.05em;text-transform:uppercase}.hero-text .line{display:block;overflow:hidden}.hero-text .char{display:inline-block;transform:translateY(100%);opacity:0}.hero-subtitle{position:absolute;bottom:15%;font-size:1rem;letter-spacing:.5em;text-transform:uppercase;opacity:.6}.scroll-indicator{position:absolute;bottom:3rem;display:flex;flex-direction:column;align-items:center;gap:1rem}.scroll-indicator span{font-size:.7rem;letter-spacing:.3em;text-transform:uppercase;writing-mode:vertical-rl}.scroll-line{width:1px;height:60px;background:linear-gradient(to bottom,var(--text),transparent);animation:scroll-pulse 1.5s ease-in-out infinite}@keyframes scroll-pulse{0%,to{opacity:1;transform:scaleY(1)}50%{opacity:.5;transform:scaleY(.8)}}section{min-height:100vh;padding:10rem 4rem;position:relative}.section-label{font-size:.7rem;letter-spacing:.5em;text-transform:uppercase;opacity:.4;margin-bottom:4rem}.services{display:flex;flex-direction:column;gap:0}.service-item{border-top:1px solid rgba(255,255,255,.1);padding:4rem 0;display:flex;justify-content:space-between;align-items:flex-start;cursor:pointer;position:relative;overflow:hidden}.service-item:before{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:var(--accent-dim);transform:translate(-100%);transition:transform .6s cubic-bezier(.19,1,.22,1)}.service-item:hover:before{transform:translate(0)}.service-item:last-child{border-bottom:1px solid rgba(255,255,255,.1)}.service-name{font-size:clamp(2rem,6vw,5rem);font-weight:600;text-transform:uppercase;letter-spacing:-.02em;position:relative;z-index:1;transition:transform .4s,letter-spacing .4s}.service-item:hover .service-name{transform:translate(2rem);letter-spacing:.05em}.service-num{font-size:.8rem;opacity:.4;position:relative;z-index:1}.stats-section{background:var(--text);color:var(--bg)}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}.stat-item{text-align:center;padding:4rem 2rem}.stat-number{font-size:clamp(4rem,10vw,8rem);font-weight:700;line-height:1;color:var(--accent);display:block}.stat-label{font-size:.85rem;text-transform:uppercase;letter-spacing:.2em;margin-top:1rem;opacity:.7}.cases-grid{display:flex;flex-direction:column;gap:0}.case-item{padding:6rem 0;border-top:1px solid rgba(255,255,255,.1);cursor:pointer;position:relative}.case-item:last-child{border-bottom:1px solid rgba(255,255,255,.1)}.case-title{font-size:clamp(3rem,10vw,9rem);font-weight:700;text-transform:uppercase;line-height:1;letter-spacing:-.03em;transition:all .4s cubic-bezier(.19,1,.22,1)}.case-item:hover .case-title{-webkit-text-stroke:2px var(--text);color:transparent;letter-spacing:.02em}.case-meta{display:flex;gap:3rem;margin-top:2rem;font-size:.8rem;letter-spacing:.15em;text-transform:uppercase;opacity:.5}.case-accent{color:var(--accent)}.testimonial{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:15rem 10rem}.testimonial-quote{font-size:clamp(2rem,4vw,4rem);font-weight:400;line-height:1.3;max-width:1200px;letter-spacing:-.01em}.testimonial-quote .word{display:inline-block;opacity:.15;transition:opacity .3s}.testimonial-quote .word.active{opacity:1}.testimonial-author{margin-top:4rem;font-size:.85rem;letter-spacing:.2em;text-transform:uppercase;opacity:.5}.contact{min-height:100vh;display:flex;flex-direction:column;justify-content:center;align-items:center;text-align:center}.contact-cta{font-size:clamp(4rem,12vw,12rem);font-weight:700;text-transform:uppercase;line-height:1;letter-spacing:-.03em;cursor:pointer;position:relative}.contact-cta:after{content:"";position:absolute;bottom:0;left:0;width:100%;height:8px;background:var(--accent);transform:scaleX(0);transform-origin:right;transition:transform .6s cubic-bezier(.19,1,.22,1)}.contact-cta:hover:after{transform:scaleX(1);transform-origin:left}.contact-email{font-size:clamp(1rem,3vw,2rem);margin-top:4rem;letter-spacing:.1em;color:var(--accent)}.contact-details{display:flex;gap:4rem;margin-top:6rem;font-size:.85rem;letter-spacing:.1em;opacity:.5}footer{padding:4rem;display:flex;justify-content:space-between;align-items:center;border-top:1px solid rgba(255,255,255,.1);font-size:.75rem;letter-spacing:.15em;text-transform:uppercase;opacity:.5}@media(max-width:768px){nav{padding:1.5rem 2rem}.nav-links{display:none}section{padding:6rem 2rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.testimonial{padding:8rem 2rem}.contact-details{flex-direction:column;gap:1rem;text-align:center}body{cursor:auto}.cursor,.cursor-dot{display:none}}
