:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f3efe3;--ink:#0a0a0a;--muted:#6b665c;--line:#0a0a0a29;--line-strong:#0a0a0a6b;--cream:#fff8ea;--lime:#c8ff2f;--orange:#ff5a1f}*{box-sizing:border-box}html,body{scroll-behavior:smooth;min-height:100%;margin:0}body{background:var(--bg);color:var(--ink);word-break:keep-all;overflow-wrap:break-word;font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}body:before{content:"";z-index:-2;background:linear-gradient(90deg,#0a0a0a0b 1px,#0000 1px) 0 0/88px 88px,linear-gradient(#0a0a0a0a 1px,#0000 1px) 0 0/88px 88px,radial-gradient(circle at 16% 18%,#c8ff2f40,#0000 22rem),radial-gradient(circle at 86% 70%,#ff5a1f1f,#0000 25rem);position:fixed;inset:0}a{color:inherit}.intro-curtain{z-index:1000;background:var(--ink);color:var(--bg);pointer-events:none;place-items:center;animation:1s cubic-bezier(.83,0,.17,1) .55s both curtainUp;display:grid;position:fixed;inset:0}.intro-curtain span{letter-spacing:-.11em;font-size:clamp(3rem,13vw,13rem);font-weight:1000;line-height:.75;animation:.75s cubic-bezier(.22,1,.36,1) both wordIn}.scroll-rail{z-index:60;mix-blend-mode:difference;pointer-events:none;background:#0a0a0a1a;border-radius:999px;width:4px;height:80vh;position:fixed;top:10vh;right:12px}.scroll-rail span{width:100%;height:calc(var(--scroll-progress,0) * 100%);border-radius:inherit;background:#fff;display:block}[data-reveal]{opacity:0;clip-path:inset(0 0 28%);transition:opacity .9s cubic-bezier(.33,1,.68,1),transform 1s cubic-bezier(.22,1,.36,1),clip-path 1s cubic-bezier(.22,1,.36,1);transform:translateY(46px)}.motion-ready [data-reveal].is-visible{opacity:1;clip-path:inset(0);transform:translateY(0)}@keyframes curtainUp{to{clip-path:inset(0 0 100%);transform:translateY(-101%)}}@keyframes wordIn{0%{opacity:0;transform:translateY(60%)skewY(7deg)}to{opacity:1;transform:translateY(0)skewY(0)}}@keyframes titleReveal{0%{opacity:0;transform:translateY(110%)skewY(5deg)}to{opacity:1;transform:translateY(0)skewY(0)}}@keyframes marqueeLeft{to{transform:translate(-50%)}}.site-header{z-index:80;color:var(--bg);mix-blend-mode:difference;pointer-events:none;justify-content:space-between;align-items:center;gap:20px;padding:20px clamp(26px,4.4vw,70px);display:flex;position:fixed;inset:0 0 auto}.brand,.nav-links a{pointer-events:auto}.brand{letter-spacing:-.1em;font-size:clamp(1.6rem,3vw,3rem);font-weight:1000;line-height:.78;text-decoration:none}.nav-links{flex-wrap:wrap;justify-content:flex-end;gap:12px clamp(14px,2vw,26px);display:flex}.nav-links a{letter-spacing:.05em;text-transform:lowercase;font-size:.82rem;font-weight:900;text-decoration:none}.hero{border-bottom:1px solid var(--ink);min-height:100svh;padding:clamp(76px,8vw,110px) clamp(18px,4vw,56px) clamp(24px,5vw,56px);display:grid;position:relative;overflow:hidden}.hero:before{content:"";border:1px solid var(--line-strong);width:min(36vw,500px);transform:rotate(calc(-12deg + var(--hero-progress,0) * 22deg)) scale(calc(1 + var(--hero-progress,0) * .08));background:linear-gradient(135deg, transparent 0 38%, #0a0a0af2 38% 61%, transparent 61%), radial-gradient(circle at 34% 38%, var(--lime), transparent 18%), radial-gradient(circle at 72% 70%, #ff5a1fb3, transparent 15%);opacity:.9;border-radius:51% 49% 35% 65%/44% 28% 72% 56%;position:absolute;inset:10% 6% 7% auto}.hero:after{content:"JOYSLABS / SERVICE INDEX /";color:#0a0a0a14;letter-spacing:-.11em;pointer-events:none;font-size:clamp(3rem,12vw,14rem);font-weight:1000;line-height:.72;position:absolute;bottom:clamp(22px,4vw,52px);left:clamp(18px,4vw,56px)}.hero-meta{z-index:2;color:var(--muted);letter-spacing:.08em;text-transform:uppercase;justify-content:space-between;gap:16px;font-size:.78rem;font-weight:900;display:flex;position:relative}.hero-meta.bottom{align-self:end}.hero-center{z-index:2;align-self:center;width:min(1180px,100%);padding-top:5vh;position:relative}.kicker,.section-label{color:var(--muted);letter-spacing:.12em;text-transform:uppercase;margin:0;font-size:.78rem;font-weight:950}h1{letter-spacing:-.11em;text-transform:uppercase;max-width:980px;margin:18px 0 0;font-size:clamp(3.35rem,10.4vw,10.2rem);line-height:.82}h1 span{transform-origin:0 100%;display:block;overflow:hidden}.motion-ready h1 span{animation:.85s cubic-bezier(.22,1,.36,1) both titleReveal}.motion-ready h1 span:nth-child(2){animation-delay:80ms}.motion-ready h1 span:nth-child(3){animation-delay:.16s}.motion-ready h1 span:nth-child(4){animation-delay:.24s}.hero-copy{color:#353128;max-width:610px;margin:28px 0 0;font-size:clamp(1.02rem,1.35vw,1.28rem);line-height:1.75}.services{background:var(--ink);min-height:100svh;color:var(--bg);padding:clamp(70px,9vw,130px) clamp(18px,4vw,56px)}.services .section-label{color:#f3efe38c;border-top:1px solid #f3efe333;justify-content:space-between;gap:16px;padding-top:12px;display:flex}h2{letter-spacing:-.1em;text-transform:uppercase;margin:24px 0 clamp(44px,7vw,90px);font-size:clamp(3.2rem,9vw,10rem);line-height:.78}.service-index{border-top:1px solid #f3efe357}.service-entry{min-height:clamp(150px,18vw,230px);color:inherit;isolation:isolate;border-bottom:1px solid #f3efe342;grid-template-columns:76px minmax(260px,.9fr) minmax(280px,.85fr) 96px;align-items:center;gap:clamp(16px,3vw,46px);padding:clamp(24px,3.4vw,48px) 0;text-decoration:none;display:grid;position:relative}.service-entry:before{content:"";z-index:-1;background:var(--bg);transform-origin:bottom;transition:transform .45s cubic-bezier(.22,1,.36,1);position:absolute;inset:0 calc(-1*clamp(18px,4vw,56px));transform:scaleY(0)}.service-entry:hover:before{transform:scaleY(1)}.service-entry:hover{color:var(--ink)}.entry-number{color:#f3efe36b;font-size:.86rem;font-weight:950}.service-entry:hover .entry-number{color:#0a0a0a6b}.entry-main{gap:10px;display:grid}.entry-type{color:#f3efe38c;letter-spacing:.14em;font-size:.74rem;font-weight:950}.service-entry:hover .entry-type{color:var(--orange)}.entry-main strong{letter-spacing:-.09em;text-transform:uppercase;font-size:clamp(2.3rem,6vw,6.8rem);line-height:.78}.entry-main span:last-child,.entry-copy{color:#f3efe3ad}.service-entry:hover .entry-main span:last-child,.service-entry:hover .entry-copy{color:#3d382f}.entry-copy{gap:10px;font-size:.98rem;line-height:1.65;display:grid}.entry-copy strong{color:var(--bg);letter-spacing:.06em;text-transform:uppercase;font-size:.84rem}.service-entry:hover .entry-copy strong{color:var(--ink)}.entry-action{aspect-ratio:1;text-transform:uppercase;border:1px solid;border-radius:50%;justify-self:end;place-items:center;width:76px;font-size:.78rem;font-weight:950;display:grid}.service-entry:hover .entry-action{background:var(--lime)}.statement{background:var(--bg);border-top:1px solid var(--line);padding:clamp(80px,9vw,140px) 0 0;position:relative;overflow:hidden}.statement-marquee{border-block:1px solid var(--ink);background:var(--lime);color:var(--ink);letter-spacing:-.04em;text-transform:uppercase;white-space:nowrap;font-size:clamp(1.2rem,3vw,3.2rem);font-weight:1000;display:flex;overflow:hidden}.statement-marquee span{min-width:max-content;padding:12px 20px;animation:26s linear infinite marqueeLeft}.statement-grid{padding:clamp(64px,8vw,120px) clamp(18px,4vw,56px)}.statement-grid h2{max-width:1120px;margin-bottom:clamp(36px,6vw,72px)}.statement-notes{border:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.statement-notes article{background:var(--bg);min-height:250px;padding:24px}.statement-notes span{color:var(--orange);font-weight:1000}.statement-notes h3{letter-spacing:-.04em;margin:70px 0 12px;font-size:1.24rem}.statement-notes p{color:var(--muted);margin:0;line-height:1.7}.site-footer{border-top:1px solid var(--line);justify-content:space-between;align-items:flex-end;gap:28px;padding:clamp(42px,7vw,90px) clamp(18px,4vw,56px);display:flex}.site-footer strong{letter-spacing:-.11em;font-size:clamp(2.6rem,8vw,9rem);font-weight:1000;line-height:.75}.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:10px 16px;display:flex}.footer-links a{text-transform:lowercase;font-size:.86rem;font-weight:900;text-decoration:none}.policy-shell{width:min(920px,100%);margin:0 auto;padding:clamp(30px,6vw,90px) 20px}.back-link{color:var(--muted);margin-bottom:18px;font-weight:850;text-decoration:none;display:inline-flex}.policy-card{border:1px solid var(--line);background:var(--cream);gap:18px;padding:clamp(24px,5vw,44px);display:grid}.policy-card h1{letter-spacing:-.08em;margin:0;font-size:clamp(2.6rem,7vw,5.8rem);line-height:.9}.policy-card h2{margin-top:10px;font-size:clamp(1.5rem,3vw,2.4rem)}.policy-card p,.policy-card li{color:var(--muted);line-height:1.75}.policy-card p,.policy-card ul{margin:0}.policy-card a{color:var(--ink);font-weight:900}.policy-updated,.policy-note{font-size:.95rem}.contact-box{border:1px solid var(--line);background:var(--bg);gap:4px;padding:16px;display:grid}.contact-box span{color:var(--muted);font-size:.9rem;font-weight:800}.contact-box a,.contact-box strong{font-size:1.1rem}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.001ms!important;animation-duration:.001ms!important;animation-iteration-count:1!important}.intro-curtain{display:none}[data-reveal]{opacity:1;clip-path:none;transform:none}}@media (max-width:980px){.hero:before{opacity:.22;width:min(54vw,420px)}.service-entry{grid-template-columns:1fr;min-height:auto}.entry-action{justify-self:start;width:64px}.statement-notes{grid-template-columns:1fr}}@media (max-width:720px){.site-header{mix-blend-mode:normal;color:var(--ink);align-items:flex-start;position:absolute}.nav-links{max-width:190px}.hero-meta{flex-direction:column}h1{font-size:clamp(3.2rem,18vw,5.8rem);line-height:.84}.hero-copy{font-size:1rem}h2{font-size:clamp(3rem,17vw,5.8rem)}.statement-marquee{font-size:1.2rem}.site-footer{flex-direction:column;align-items:flex-start}.footer-links{justify-content:flex-start}}
