.ec-site-service-page{--bg-color:#f5f2eb;--text-color:#1a1a1a;--text-muted:#595959;--accent-color:#e35b34;--accent-soft:#fcece8;--line-color:#00000014;background-color:var(--bg-color);color:var(--text-color);cursor:none;width:100%;font-family:Manrope,Shippori Mincho,sans-serif;position:relative;overflow-x:hidden}.split-text,.blur-reveal,.hero-tag,.hero-desc{opacity:0;visibility:hidden}.ec-site-service-page:before{content:"";pointer-events:none;z-index:9990;opacity:1;mix-blend-mode:multiply;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.05'/%3E%3C/svg%3E");position:fixed;inset:0}#webgl-canvas{z-index:0;pointer-events:none;width:100%;height:100vh;position:fixed;top:0;left:0}.font-serif{font-family:Cormorant Garamond,serif}.font-jp-serif{font-family:Shippori Mincho,serif}.font-mono{font-family:Space Mono,monospace}.text-display{letter-spacing:-.04em;font-size:clamp(4rem,11vw,13rem);font-weight:400;line-height:.8}.section-title{font-family:Cormorant Garamond,serif;font-size:clamp(3rem,6vw,6rem);font-style:italic;font-weight:300;line-height:1}#cursor{background:var(--accent-color);pointer-events:none;z-index:10001;border-radius:50%;width:8px;height:8px;transition:transform .1s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}#cursor-follower{pointer-events:none;z-index:10000;border:1px solid #0000001a;border-radius:50%;width:40px;height:40px;transition:transform .15s ease-out,width .3s,height .3s,background .3s;position:fixed;top:0;left:0;transform:translate(-50%,-50%)}.ec-site-service-page.hovering #cursor-follower{border-color:var(--accent-color);background:#e35b340d;width:60px;height:60px}.ec-site-service-page.hovering-link #cursor-follower{background:var(--accent-color);opacity:.8;border-color:#0000;transform:translate(-50%,-50%)scale(.5)}.tag{text-transform:uppercase;letter-spacing:.05em;border:1px solid;border-radius:999px;padding:.3em .8em;font-size:.7rem;transition:all .3s;display:inline-block}.btn-primary{color:#fff;text-transform:uppercase;letter-spacing:.05em;background:#111;border-radius:999px;justify-content:center;align-items:center;padding:1.25rem 3rem;font-family:Manrope,sans-serif;font-weight:600;transition:color .4s;display:inline-flex;position:relative;overflow:hidden}.btn-primary:after{content:"";background:var(--accent-color);z-index:-1;transition:transform .4s cubic-bezier(.16,1,.3,1);position:absolute;inset:0;transform:translateY(100%)}.btn-primary:hover{color:#fff}.btn-primary:hover:after{transform:translateY(0)}.horizontal-scroll-section{width:100%;overflow:hidden}.horizontal-wrapper{flex-wrap:nowrap;width:fit-content;height:100vh;padding-top:10vh;display:flex}.work-card{flex-shrink:0;width:60vw;height:60vh;margin-right:3vw;position:relative}.work-img-container{border-radius:8px;width:100%;height:100%;position:relative;overflow:hidden}.work-img{object-fit:cover;width:120%;height:100%;position:absolute;top:0;left:0}.popup-item{pointer-events:auto;z-index:5;opacity:0;filter:drop-shadow(0 10px 20px #0000000d);transition:transform .3s ease-out;position:absolute}.popup-lucky{cursor:pointer;z-index:50}.popup-lucky:before{content:"";pointer-events:none;z-index:-1;background:radial-gradient(circle,#e35b3466 0%,#0000 70%);border-radius:50%;width:160%;height:160%;animation:1.5s cubic-bezier(.4,0,.2,1) infinite alternate pulse-glow;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes pulse-glow{0%{opacity:.3;transform:translate(-50%,-50%)scale(.8)}to{opacity:.8;transform:translate(-50%,-50%)scale(1.1)}}.accordion-content{height:0;overflow:hidden}.blur-reveal{filter:blur(10px);opacity:0;transition:all 1s cubic-bezier(.16,1,.3,1);transform:translateY(20px)}.blur-reveal.active{filter:blur();opacity:1;transform:translateY(0)}.solution-card{background:#fff;border:1px solid #00000014;padding:2.5rem;transition:all .4s;position:relative;box-shadow:0 4px 20px #00000005}.solution-card:hover{z-index:10;border-color:var(--accent-color);box-shadow:0 20px 40px #00000014;transform:translateY(-10px)rotate(0)!important}
