:root{--font-family-sans:"Inter", "MiSans", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;--font-family-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bg-primary:#000;--bg-elevated:#111;--text-primary:#fff;--text-secondary:#888;--text-accent:#fff;--framer-ring:#ffffff1a 0px 0px 0px 1px;--framer-containment-ring:#ffffff26 0px 0px 0px 2px;--framer-elevation:#0006 0px .5px 0px .5px, #0009 0px 10px 30px;--framer-frosted:#ffffff14;--framer-frosted-hover:#ffffff26;--ease-framer:cubic-bezier(.2, .8, .2, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{font-family:var(--font-family-sans);background-color:var(--bg-primary);color:var(--text-primary);font-feature-settings:"cv01", "cv05", "cv09", "cv11", "ss03", "ss07";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}body{background:var(--bg-primary);min-height:100vh;overflow-x:hidden}#root{isolation:isolate}a{color:inherit;text-decoration:none}.glass-panel{background:var(--bg-elevated);box-shadow:var(--framer-ring);transition:all .4s var(--ease-framer);border-radius:12px}.text-gradient{color:var(--text-primary)}.btn-primary{color:#000;cursor:pointer;transition:transform .2s var(--ease-framer), box-shadow .2s var(--ease-framer), opacity .2s;will-change:transform;background-color:#b6ff4f;border:none;border-radius:100px;justify-content:center;align-items:center;padding:10px 24px;font-weight:500;display:inline-flex}.btn-primary:hover{transform:scale(.97);box-shadow:0 4px 12px #b6ff4f4d}.btn-icon{background-color:#000;width:14px;height:14px;margin-left:8px;display:inline-block}.btn-frosted{background-color:var(--framer-frosted);color:var(--text-primary);transition:background-color .3s var(--ease-framer), transform .3s var(--ease-framer);border-radius:40px;padding:10px 20px}.btn-frosted:hover{background-color:var(--framer-frosted-hover);transform:scale(.96)}.container{max-width:1200px;margin:0 auto;padding:0 30px}.hero-section{justify-content:center;align-items:center;min-height:80vh;padding-top:200px;padding-bottom:160px;display:flex;position:relative;overflow:hidden}.hero-bg-blur{display:none}.hero-content{z-index:1;text-align:center;max-width:900px;animation:scaleFade .8s var(--ease-framer) forwards;position:relative}.app-icon-wrapper{justify-content:center;margin-bottom:80px;display:flex}.app-icon-container{flex-direction:column;align-items:center;gap:20px;display:flex}.app-icon-label{color:var(--text-primary);letter-spacing:.3px;font-size:22px;font-weight:700}.app-icon-placeholder{background-color:var(--bg-elevated);width:120px;height:120px;box-shadow:var(--framer-ring), var(--framer-elevation);transition:transform .3s var(--ease-framer);border-radius:30px;justify-content:center;align-items:center;display:flex;overflow:hidden}.app-icon-placeholder:hover{box-shadow:var(--framer-ring), 0 0 30px #b6ff4f33;transform:translateY(-4px)scale(1.05)}.app-icon-svg{object-fit:cover;width:100%;height:100%}.slogan-wrapper{justify-content:center;align-items:center;width:100%;min-height:120px;display:flex;position:relative}.hero-bg-text{text-align:center;z-index:0;letter-spacing:-.04em;color:#ffffff14;white-space:nowrap;pointer-events:none;-webkit-user-select:none;user-select:none;width:100vw;font-family:Bodoni Moda,ui-serif,Georgia,Cambria,Times New Roman,Times,serif;font-size:clamp(138px,24vw,346px);font-style:italic;font-weight:800;line-height:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.hero-actions{justify-content:center;gap:16px;margin-top:80px;display:flex}.hero-btn{letter-spacing:.5px;padding:18px 42px;font-size:18px;font-weight:700;color:var(--text-primary)!important;transition:all .3s var(--ease-framer)!important;background-color:#0000!important;border:1px solid #fff3!important;position:relative!important;overflow:visible!important}.hero-btn:before{content:"";border-radius:inherit;background:radial-gradient(120px circle at var(--mouse-x,0) var(--mouse-y,0), #fffc, transparent 100%);-webkit-mask-composite:xor;pointer-events:none;z-index:1;opacity:0;transition:opacity .4s var(--ease-framer);padding:1.5px;position:absolute;inset:0;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;-webkit-mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}.hero-btn:hover{cursor:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='32' height='32' style='font-size:24px'><text y='20' x='0'>🎾</text></svg>") 16 16,pointer;box-shadow:0 0 15px #ffffff80,0 0 30px #fff3,0 10px 40px #ffffff26;color:#000!important;background-color:#fff!important;border-color:#fff!important}.hero-btn:hover:before{opacity:.6}@keyframes scaleFade{0%{opacity:0;transform:scale(.95)translateY(20px)}to{opacity:1;transform:scale(1)translateY(0)}}@media (width<=1024px){.hero-bg-text{font-size:clamp(72px,18vw,220px)}}@media (width<=768px){.hero-section{flex-direction:column;min-height:100svh;padding:60px 0 80px;display:flex}.hero-content{flex-direction:column;flex:1;justify-content:space-between;align-items:center;height:100%;display:flex}.app-icon-placeholder{border-radius:30px;width:120px;height:120px}.app-icon-wrapper{margin-bottom:20px}.slogan-wrapper{min-height:60px;margin-bottom:auto}.hero-actions{margin-top:40px;margin-bottom:0}.hero-btn{padding:18px 42px!important;font-size:18px!important;font-weight:500!important}.app-icon-label{font-weight:600}.hero-bg-text{font-weight:700}}.tennis-click-effect{pointer-events:none;z-index:9999;font-size:32px;animation:.6s cubic-bezier(.16,1,.3,1) forwards tennisPop;position:fixed;transform:translate(-50%,-50%)}@keyframes tennisPop{0%{opacity:1;filter:blur();transform:translate(-50%,-50%)scale(1)}to{opacity:0;filter:blur(8px);transform:translate(-50%,-50%)scale(5)}}.slogan-container{min-height:120px}.carousel-wrapper{justify-content:center;align-items:center;margin-bottom:0;padding:0 40px;display:flex;position:relative}.slogan-title{letter-spacing:-3.5px;text-align:center;color:var(--text-primary);white-space:nowrap;font-size:clamp(40px,6vw,80px);font-weight:600;line-height:.85}.text-layer{z-index:1;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.text-layer .char{opacity:0;filter:blur(4px);will-change:transform, opacity;display:inline-block;transform:translate(-5px)}.text-layer.revealing .char{opacity:1;filter:blur();transition:opacity var(--char-dur,.15s) ease-out, filter var(--char-dur,.15s) ease-out, transform .35s cubic-bezier(.34, 1.56, .64, 1);transition-delay:var(--reveal-delay);transform:translate(0)}.text-layer.erasing .char{opacity:0;filter:blur(4px);transition:opacity .15s ease-out,filter .15s ease-out;transition-delay:var(--erase-delay);transform:translate(0)}.dot{z-index:10;background-color:#b6ff4f;position:absolute;top:50%;left:50%}@media (width<=1024px){.slogan-title{letter-spacing:-2.5px;font-size:clamp(32px,6vw,64px)}}@media (width<=768px){.carousel-wrapper{padding:0 16px}.slogan-container{min-height:80px}.slogan-title{letter-spacing:-.8px;--char-dur:.12s;font-size:25px;font-weight:550}.text-layer .char{filter:none!important}}.features-section{padding:50px 30px 25px}.features-header{text-align:center;margin-bottom:40px}.section-title{letter-spacing:-2px;color:var(--text-primary);margin-bottom:16px;font-size:48px;font-weight:500}.section-subtitle{color:var(--text-secondary);font-size:18px}.features-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.linear-card{transition:border-color .4s var(--ease-framer), box-shadow .4s var(--ease-framer);background:#0a0a0a;border:1px solid #ffffff1f;border-radius:40px;flex-direction:column;min-height:360px;display:flex;position:relative;overflow:hidden}.linear-card:hover{border-color:#ffffff40;box-shadow:0 40px 80px #000c}.card-noise{opacity:.03;pointer-events:none;mix-blend-mode:overlay;z-index:5;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.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");position:absolute;inset:0}.card-index-bg{color:#fff;opacity:.015;pointer-events:none;z-index:0;-webkit-user-select:none;user-select:none;transition:opacity .5s var(--ease-framer), transform .8s var(--ease-framer);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.linear-card:hover .card-index-bg{opacity:.03;transform:translate(-50%,-52%)scale(1.1)}.card-spotlight{background:radial-gradient(800px circle at var(--mouse-x) var(--mouse-y), #ffffff08, transparent 40%);opacity:0;pointer-events:none;z-index:10;transition:opacity .5s;position:absolute;inset:0}.linear-card:hover .card-spotlight{opacity:1}.card-icon-wrapper{justify-content:center;width:100%;margin-top:0;margin-bottom:32px;display:flex;position:relative}.icon-glow{filter:blur(20px);opacity:.6;width:120px;height:120px;transition:transform .6s var(--ease-framer);background:radial-gradient(circle,#b6ff4f26 0%,#0000 70%);position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.linear-card:hover .icon-glow{transform:translate(-50%,-50%)scale(1.3)}.card-top-icon{color:#b6ff4f;filter:drop-shadow(0 0 15px #b6ff4f4d);z-index:2;width:64px;height:64px;transition:transform .5s var(--ease-framer);position:relative}.linear-card:hover .card-top-icon{transform:scale(1.1)}.card-inner{z-index:20;text-align:center;flex-direction:column;flex:1;justify-content:center;align-items:center;padding:40px;display:flex;position:relative}.card-content{width:100%}.card-step{letter-spacing:3px;color:#ffffff4d;text-transform:uppercase;margin-bottom:16px;font-size:11px;font-weight:600}.card-desc{color:#fff6;max-width:85%;margin-bottom:0;margin-left:auto;margin-right:auto;font-size:15px;font-weight:300;line-height:1.6}.card-icon-container{justify-content:center;align-items:center;width:80px;height:80px;margin-bottom:32px;display:flex;position:relative}.icon-bg-glow{opacity:.6;filter:blur(15px);transition:transform .4s var(--ease-framer);background:radial-gradient(circle,#b6ff4f2e 0%,#0000 70%);position:absolute;inset:-20px}.linear-card:hover .icon-bg-glow{transform:scale(1.2)}.card-icon{color:#b6ff4f;z-index:2;filter:drop-shadow(0 0 10px #b6ff4f4d);width:44px;height:44px;position:relative}.card-title{color:var(--text-primary);letter-spacing:-.5px;margin-bottom:14px;font-size:26px;font-weight:600;line-height:1.2}.card-desc{color:#ffffff80;margin-bottom:0;font-size:15px;font-weight:300;line-height:1.7}.card-corner-accent{opacity:.3;background:#b6ff4f;border-radius:50%;width:4px;height:4px;position:absolute;top:32px;right:32px;box-shadow:0 0 10px #b6ff4f80}.card-glow-edge{opacity:0;height:1px;transition:opacity .4s var(--ease-framer);background:linear-gradient(90deg,#0000,#b6ff4f33,#0000);position:absolute;bottom:0;left:10%;right:10%}.linear-card:hover .card-glow-edge{opacity:1}@media (width<=1024px){.features-grid{grid-template-columns:repeat(2,1fr)}}@media (width<=768px){.features-section{padding:40px 16px 20px}.features-grid{grid-template-columns:1fr;gap:12px}.linear-card{border-radius:24px;min-height:120px}.card-inner{text-align:left;flex-direction:row;justify-content:flex-start;align-items:center;gap:16px;padding:16px 20px}.card-icon-wrapper{flex-shrink:0;width:auto;margin-top:0;margin-bottom:0}.card-top-icon{width:32px;height:32px}.icon-glow{width:50px;height:50px}.card-content{flex-direction:column;flex:1;align-items:flex-start;display:flex}.card-step{letter-spacing:1.5px;margin-bottom:6px;font-size:8px;font-weight:500}.card-title{margin-bottom:6px;font-size:16px;font-weight:500}.section-title{font-weight:400}.card-desc{max-width:100%;margin-left:0;margin-right:0;font-size:12px;line-height:1.4}}.footer-section{margin-top:0;padding:20px 0 100px;position:relative}.pre-footer{text-align:center;border-bottom:1px solid #0000000f;flex-direction:column;align-items:center;gap:48px;padding:0 0 120px;display:flex}.pre-footer-title{letter-spacing:-2px;color:var(--text-primary);margin:0;font-size:clamp(48px,6vw,90px);font-weight:800;line-height:1.15}.footer-grid{flex-wrap:wrap;justify-content:space-between;gap:60px;padding:80px 0 60px;display:flex}.footer-brand-col{flex:1;min-width:300px}.footer-logo{letter-spacing:-1.5px;color:var(--text-primary);margin-bottom:20px;font-size:32px;font-weight:800}.footer-desc{color:var(--text-secondary);max-width:280px;font-size:16px;line-height:1.6}.footer-links-col{flex-wrap:wrap;gap:80px;display:flex}.footer-nav-group{flex-direction:column;display:flex}.group-title{text-transform:uppercase;letter-spacing:1.2px;color:var(--text-secondary);opacity:.8;margin-bottom:12px;font-size:11px;font-weight:600}.link-list{flex-direction:column;gap:16px;margin:0;padding:0;list-style:none;display:flex}.link-list a{color:var(--text-primary);font-size:16px;font-weight:600;text-decoration:none;transition:opacity .3s}.link-list a:hover{opacity:.4}.footer-bottom-bar{border-top:1px solid #0000000f;justify-content:space-between;align-items:center;padding-top:30px;display:flex}.copyright{color:var(--text-secondary);font-size:14px;font-weight:500}.back-to-top{color:var(--text-primary);cursor:pointer;font-size:14px;font-weight:600;transition:opacity .3s}.back-to-top:hover{opacity:.4}@media (width<=768px){.footer-links-col{justify-content:space-between;gap:40px;width:100%}.pre-footer{padding:60px 0 100px}.pre-footer-title{letter-spacing:-1px;font-size:40px;font-weight:700}.footer-logo{font-weight:700}.group-title,.link-list a{font-weight:500}.copyright{font-weight:400}.back-to-top{font-weight:500}.footer-grid{padding:30px 0 40px}}.dot-matrix-container{pointer-events:none;z-index:-1;background-color:var(--bg-primary);width:100vw;height:100vh;position:fixed;top:0;left:0}.dot-matrix-base{background-image:radial-gradient(#ffffff14 1px,#0000 1px);background-size:16px 16px;position:absolute;inset:0}.dot-matrix-highlight{-webkit-mask-image:radial-gradient(circle 180px at var(--mouse-x,-1000px) var(--mouse-y,-1000px), black 0%, transparent 100%);mask-image:radial-gradient(circle 180px at var(--mouse-x,-1000px) var(--mouse-y,-1000px), black 0%, transparent 100%);-webkit-mask-image:radial-gradient(circle 180px at var(--mouse-x,-1000px) var(--mouse-y,-1000px), black 0%, transparent 100%);background-image:radial-gradient(#fffc 1px,#0000 1px);background-size:16px 16px;position:absolute;inset:0}@media (width<=768px){.dot-matrix-highlight{display:none}}
