/* Decent4 v2 "Built well" — shared tokens, fonts and site chrome.
   Loaded on every themed page (homepage and interior pages). Interior pages
   carry legacy template CSS, so chrome selectors are scoped under
   [data-d4-theme] and pin layout properties with !important. */
@font-face{font-family:'Anybody';font-style:normal;font-weight:100 900;font-stretch:50% 150%;font-display:swap;src:url(/_d4/fonts/anybody.woff2) format('woff2')}
@font-face{font-family:'Space Grotesk';font-style:normal;font-weight:300 700;font-display:swap;src:url(/_d4/fonts/space-grotesk.woff2) format('woff2')}
@font-face{font-family:'JetBrains Mono';font-style:normal;font-weight:400 700;font-display:swap;src:url(/_d4/fonts/jetbrains-mono.woff2) format('woff2')}

:root{
  --d4-bg:#0a0a0a;--d4-bg-2:#111;--d4-bg-3:#161616;
  --d4-line:#242424;--d4-line-2:#333;
  --d4-text:#f2f2ee;--d4-muted:#b9b9b3;--d4-dim:#9d9d97;
  --d4-lime:#d6f24a;--d4-lime-hi:#e6ff6a;
  --d4-paper:#f2f0ea;--d4-paper-2:#f7f5f0;--d4-paper-ink:#121212;--d4-paper-muted:#4a4a45;--d4-paper-line:#d9d6cd;
  --d4-display:'Anybody','Space Grotesk',system-ui,sans-serif;
  --d4-sans:'Space Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --d4-mono:'JetBrains Mono',ui-monospace,SFMono-Regular,Menlo,monospace;
  --d4-gutter:clamp(20px,4.45vw,64px);
  --d4-max:1440px;
  --d4-ease:cubic-bezier(.19,1,.22,1);
  --d4-ease-io:cubic-bezier(.77,0,.18,1);
  --d4-head:76px;
}
html:has(body[data-d4-theme]){background:var(--d4-bg);color-scheme:dark;scroll-padding-top:calc(var(--d4-head) + 16px);-webkit-text-size-adjust:100%}
/* Legacy templates set overflow-x:hidden on html/body, which turns body into a
   scroll container and breaks the sticky header. clip keeps the crop without that. */
html:has(body[data-d4-theme]),body[data-d4-theme]{overflow-x:clip!important;overflow-y:visible!important}
@media (prefers-reduced-motion:no-preference){html:has(body[data-d4-theme]){scroll-behavior:smooth}}

/* ---------- Skip link ---------- */
[data-d4-theme] .d4-skip{position:fixed!important;top:-120px!important;left:16px!important;z-index:300!important;background:var(--d4-lime)!important;color:#0a0a0a!important;padding:12px 18px!important;border-radius:999px!important;font:700 14px/1 var(--d4-sans)!important;text-decoration:none!important}
[data-d4-theme] .d4-skip:focus{top:12px!important}
#d4-content{display:block;height:0;outline:none}

/* ---------- Header ---------- */
[data-d4-theme] .d4-global-header{position:sticky!important;top:0!important;left:auto!important;right:auto!important;z-index:200!important;display:block!important;width:100%!important;height:var(--d4-head)!important;margin:0!important;padding:0!important;background:rgba(10,10,10,.8)!important;-webkit-backdrop-filter:saturate(140%) blur(14px);backdrop-filter:saturate(140%) blur(14px);border:0!important;border-bottom:1px solid #1c1c1c!important;box-shadow:none!important;transform:none;transition:transform .5s var(--d4-ease),background-color .3s ease!important}
[data-d4-theme] .d4-global-header[data-hidden]{transform:translateY(-101%)}
[data-d4-theme] .d4-global-header:focus-within{transform:none}
[data-d4-theme] .d4-global-inner{box-sizing:border-box!important;display:flex!important;align-items:center!important;gap:28px!important;width:100%!important;max-width:var(--d4-max)!important;height:100%!important;margin:0 auto!important;padding:0 var(--d4-gutter)!important;background:none!important;border:0!important}
[data-d4-theme] .d4-brand{display:inline-flex!important;align-items:center!important;gap:11px!important;min-height:44px;flex-shrink:0;color:var(--d4-text)!important;font:700 21px/1 var(--d4-sans)!important;letter-spacing:-.02em!important;text-decoration:none!important;white-space:nowrap}
[data-d4-theme] .d4-brand img{display:block;width:30px!important;height:30px!important;max-width:none!important;border-radius:0!important;transition:transform .6s cubic-bezier(.34,1.56,.64,1)}
[data-d4-theme] .d4-brand:hover img{transform:rotate(-8deg) scale(1.06)}
[data-d4-theme] .d4-accent{color:var(--d4-lime)!important}
[data-d4-theme] .d4-global-nav{position:static!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:26px!important;margin:0 0 0 20px!important;padding:0!important;width:auto!important;height:auto!important;background:none!important;border:0!important;box-shadow:none!important;transform:none!important;inset:auto!important}
[data-d4-theme] .d4-global-nav a{position:relative;display:inline-flex!important;align-items:center;min-height:44px;padding:0!important;color:var(--d4-text)!important;background:none!important;border:0!important;font:500 12.5px/1 var(--d4-mono)!important;letter-spacing:.07em!important;text-transform:uppercase!important;text-decoration:none!important;white-space:nowrap}
[data-d4-theme] .d4-global-nav a::after{content:"";position:absolute;left:0;right:0;bottom:10px;height:1px;background:var(--d4-lime);transform:scaleX(0);transform-origin:right;transition:transform .45s var(--d4-ease)}
[data-d4-theme] .d4-global-nav a:hover::after,[data-d4-theme] .d4-global-nav a[aria-current]::after{transform:scaleX(1);transform-origin:left}
[data-d4-theme] .d4-global-nav a:hover,[data-d4-theme] .d4-global-nav a[aria-current]{color:var(--d4-lime)!important}

/* Buttons shared by chrome and pages */
[data-d4-theme] .d4-primary,[data-d4-theme] .d4-btn{display:inline-flex!important;align-items:center!important;justify-content:center;gap:10px!important;min-height:46px;padding:0 22px!important;border:0!important;border-radius:999px!important;background:var(--d4-lime)!important;color:#0a0a0a!important;font:700 15px/1 var(--d4-sans)!important;letter-spacing:-.005em!important;text-decoration:none!important;text-transform:none!important;white-space:nowrap;cursor:pointer;box-shadow:none!important;transition:background-color .25s ease,transform .25s ease!important}
[data-d4-theme] .d4-primary:hover,[data-d4-theme] .d4-btn:hover{background:var(--d4-text)!important;color:#0a0a0a!important}
[data-d4-theme] .d4-primary:active,[data-d4-theme] .d4-btn:active{transform:scale(.98)}
[data-d4-theme] .d4-primary .d4-arrow,[data-d4-theme] .d4-btn .d4-arrow{transition:transform .4s var(--d4-ease)}
[data-d4-theme] .d4-primary:hover .d4-arrow,[data-d4-theme] .d4-btn:hover .d4-arrow{transform:translateX(3px)}
[data-d4-theme] .d4-btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:46px;padding:0 22px;border:1px solid #3a3a3a;border-radius:999px;background:transparent;color:var(--d4-text);font:600 15px/1 var(--d4-sans);text-decoration:none;transition:border-color .25s ease,color .25s ease}
[data-d4-theme] .d4-btn-ghost:hover{border-color:var(--d4-lime);color:var(--d4-lime)}
[data-d4-theme] .d4-head-cta{margin-left:auto!important;min-height:44px}
[data-d4-theme] .d4-global-toggle{display:none!important;position:relative;flex-shrink:0;width:46px!important;height:46px!important;margin:0!important;padding:0!important;border:1px solid var(--d4-line-2)!important;border-radius:50%!important;background:transparent!important;color:var(--d4-text)!important;cursor:pointer}
[data-d4-theme] .d4-global-toggle span{position:absolute;left:13px;right:13px;height:1.8px;border-radius:2px;background:currentColor;transition:transform .45s var(--d4-ease),top .45s var(--d4-ease),right .45s var(--d4-ease)}
[data-d4-theme] .d4-global-toggle span:first-child{top:17px}
[data-d4-theme] .d4-global-toggle span:last-child{top:26px;right:19px}
[data-d4-theme] .d4-global-toggle[aria-expanded="true"] span:first-child{top:21.5px;transform:rotate(45deg)}
[data-d4-theme] .d4-global-toggle[aria-expanded="true"] span:last-child{top:21.5px;right:13px;transform:rotate(-45deg)}

/* ---------- Mobile menu ---------- */
[data-d4-theme] .d4-menu{position:fixed!important;inset:0!important;z-index:190!important;display:flex!important;flex-direction:column;justify-content:space-between;box-sizing:border-box;padding:calc(var(--d4-head) + 28px) var(--d4-gutter) 28px!important;margin:0!important;background-color:var(--d4-bg)!important;background-image:linear-gradient(#141414 1px,transparent 1px),linear-gradient(90deg,#141414 1px,transparent 1px);background-size:39px 39px;overflow-y:auto;clip-path:inset(0 0 100% 0);visibility:hidden;transition:clip-path .7s var(--d4-ease-io),visibility 0s linear .7s}
[data-d4-theme] .d4-menu[hidden]{display:none!important}
[data-d4-theme] .d4-menu[data-open]{clip-path:inset(0 0 0 0);visibility:visible;transition:clip-path .7s var(--d4-ease-io),visibility 0s}
[data-d4-theme] .d4-menu nav{display:flex!important;flex-direction:column!important;position:static!important;background:none!important;border:0!important;padding:0!important;margin:0!important;width:auto!important}
[data-d4-theme] .d4-menu nav a{display:flex!important;align-items:baseline;gap:16px;padding:10px 0!important;border-bottom:1px solid #1c1c1c;color:var(--d4-text)!important;font:800 clamp(40px,11vw,68px)/1 var(--d4-display)!important;font-variation-settings:"wdth" 108;letter-spacing:-.02em;text-decoration:none!important;opacity:0;transform:translateY(40%);transition:opacity .5s ease,transform .8s var(--d4-ease),color .25s ease,font-variation-settings .6s var(--d4-ease)}
[data-d4-theme] .d4-menu nav a span{font:500 12px/1 var(--d4-mono);letter-spacing:.1em;color:var(--d4-lime);transform:translateY(-.9em)}
[data-d4-theme] .d4-menu nav a:hover,[data-d4-theme] .d4-menu nav a[aria-current]{color:var(--d4-lime)!important;font-variation-settings:"wdth" 140}
[data-d4-theme] .d4-menu[data-open] nav a{opacity:1;transform:none}
[data-d4-theme] .d4-menu[data-open] nav a:nth-child(2){transition-delay:.05s}
[data-d4-theme] .d4-menu[data-open] nav a:nth-child(3){transition-delay:.1s}
[data-d4-theme] .d4-menu[data-open] nav a:nth-child(4){transition-delay:.15s}
[data-d4-theme] .d4-menu[data-open] nav a:nth-child(5){transition-delay:.2s}
[data-d4-theme] .d4-menu[data-open] nav a:nth-child(6){transition-delay:.25s}
[data-d4-theme] .d4-menu-foot{display:flex;flex-direction:column;gap:18px;padding-top:32px}
[data-d4-theme] .d4-menu-foot .d4-primary{min-height:56px;font-size:16px!important}
[data-d4-theme] .d4-menu-mail{color:var(--d4-muted)!important;font:500 13px/1 var(--d4-mono)!important;letter-spacing:.06em;text-decoration:none!important;text-align:center}
html.d4-menu-open,html.d4-menu-open body{overflow:hidden!important}

@media (max-width:1100px){
  [data-d4-theme] .d4-global-nav{display:none!important}
  [data-d4-theme] .d4-global-toggle{display:inline-block!important}
  [data-d4-theme] .d4-head-cta{margin-left:auto!important}
}
@media (max-width:620px){
  :root{--d4-head:68px}
  [data-d4-theme] .d4-head-cta{display:none!important}
  [data-d4-theme] .d4-global-toggle{margin-left:auto!important}
  [data-d4-theme] .d4-brand{font-size:19px!important}
  [data-d4-theme] .d4-brand img{width:28px!important;height:28px!important}
}
@media (min-width:1101px){[data-d4-theme] .d4-menu{display:none!important}}

/* ---------- Footer ---------- */
[data-d4-theme] .d4-global-footer{position:relative!important;display:block!important;box-sizing:border-box;width:100%!important;max-width:none!important;margin:0!important;padding:clamp(64px,8vw,112px) 0 0!important;background:var(--d4-bg)!important;color:var(--d4-muted)!important;border:0!important;border-top:1px solid #1c1c1c!important;text-align:left!important;overflow:hidden;font:400 16px/1.5 var(--d4-sans)!important}
[data-d4-theme] .d4-global-footer > *{box-sizing:border-box;max-width:var(--d4-max);margin-left:auto!important;margin-right:auto!important;padding-left:var(--d4-gutter)!important;padding-right:var(--d4-gutter)!important}
[data-d4-theme] .d4-foot-top{display:grid!important;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:48px;align-items:start}
[data-d4-theme] .d4-global-footer .d4-kicker{margin:0 0 14px!important;padding:0!important;color:var(--d4-dim)!important;font:500 12px/1.2 var(--d4-mono)!important;letter-spacing:.14em!important;text-transform:uppercase!important}
[data-d4-theme] .d4-foot-big{display:inline-flex!important;align-items:center;gap:.25em;color:var(--d4-text)!important;font:800 clamp(44px,6.4vw,96px)/.92 var(--d4-display)!important;font-variation-settings:"wdth" 128;letter-spacing:-.025em!important;text-decoration:none!important;transition:color .3s ease,font-variation-settings .8s var(--d4-ease)}
[data-d4-theme] .d4-foot-big .d4-arrow{width:.6em;height:.6em;stroke-width:1.4;transition:transform .6s var(--d4-ease)}
[data-d4-theme] .d4-foot-big:hover{color:var(--d4-lime)!important;font-variation-settings:"wdth" 150}
[data-d4-theme] .d4-foot-big:hover .d4-arrow{transform:translateX(.12em) rotate(-45deg)}
[data-d4-theme] .d4-foot-note{max-width:520px;margin:24px 0 0!important;padding:0!important;color:var(--d4-muted)!important;font:400 16px/1.55 var(--d4-sans)!important}
[data-d4-theme] .d4-foot-mail{display:inline-block;margin-top:14px;color:var(--d4-lime)!important;font:500 15px/1.4 var(--d4-mono)!important;text-decoration:none!important;border-bottom:1px solid rgba(214,242,74,.35)}
[data-d4-theme] .d4-foot-mail:hover{border-bottom-color:var(--d4-lime)}
[data-d4-theme] .d4-foot-nav{position:static!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:32px;margin:0!important;padding-top:10px!important;background:none!important;border:0!important;width:auto!important;transform:none!important}
[data-d4-theme] .d4-foot-nav div{display:flex;flex-direction:column;align-items:flex-start}
[data-d4-theme] .d4-foot-nav a{display:inline-flex!important;align-items:center;min-height:40px;color:var(--d4-text)!important;font:500 16px/1.2 var(--d4-sans)!important;text-decoration:none!important;background:none!important;padding:0!important;transition:color .2s ease,transform .35s var(--d4-ease)}
[data-d4-theme] .d4-foot-nav a:hover{color:var(--d4-lime)!important;transform:translateX(4px)}
[data-d4-theme] .d4-foot-word{margin-top:clamp(56px,7vw,96px)!important;color:var(--d4-text);font:900 clamp(64px,14vw,212px)/.78 var(--d4-display);font-variation-settings:"wdth" 150;letter-spacing:-.035em;white-space:nowrap;user-select:none;overflow:hidden}
[data-d4-theme] .d4-foot-word span{display:inline-block;color:var(--d4-lime);transition:transform .9s cubic-bezier(.34,1.56,.64,1)}
[data-d4-theme] .d4-foot-word:hover span{transform:rotate(-12deg) translateY(-6%)}
[data-d4-theme] .d4-foot-base{display:flex!important;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-top:22px!important;padding-bottom:26px!important;color:var(--d4-dim)!important;font:500 12px/1.4 var(--d4-mono)!important;letter-spacing:.08em}
[data-d4-theme] .d4-foot-base a{color:var(--d4-dim)!important;text-decoration:none!important}
[data-d4-theme] .d4-foot-base a:hover{color:var(--d4-lime)!important}
@media (max-width:820px){
  [data-d4-theme] .d4-foot-top{grid-template-columns:1fr;gap:40px}
  [data-d4-theme] .d4-foot-word{font-size:clamp(56px,16.5vw,200px)}
}

/* ---------- Focus, selection, motion ---------- */
[data-d4-theme] :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{outline:2px solid var(--d4-lime)!important;outline-offset:4px!important}
[data-d4-theme] ::selection{background:var(--d4-lime);color:#0a0a0a}
html.d4-js [data-reveal]{opacity:0;transform:translateY(28px);transition:opacity .9s ease,transform 1.1s var(--d4-ease)}
html.d4-js [data-reveal].is-in{opacity:1;transform:none}
html.d4-js [data-reveal="clip"]{opacity:1;transform:none;clip-path:inset(0 0 100% 0);transition:clip-path 1.1s var(--d4-ease-io)}
html.d4-js [data-reveal="clip"].is-in{clip-path:inset(0 0 0 0)}
.d4-progress{position:fixed;left:0;top:0;z-index:250;width:100%;height:3px;background:var(--d4-lime);transform-origin:left;transform:scaleX(0);pointer-events:none}
@media (prefers-reduced-motion:reduce){
  html.d4-js [data-reveal],html.d4-js [data-reveal="clip"]{opacity:1!important;transform:none!important;clip-path:none!important;transition:none!important}
  [data-d4-theme] *,[data-d4-theme] *::before,[data-d4-theme] *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}
}
