/* Cloudfusion / Neo Tokyo. Shared home/About shell; page-specific compositions remain scoped. */
body:is([data-page="home"],[data-page="about"]) {
  --night:var(--cf-night); --cream:var(--cf-ink); --paper:var(--cf-surface); --ink:var(--cf-ink);
  --muted:var(--cf-muted); --line:var(--cf-line); --signal:var(--cf-blue);
  --home-blue:var(--cf-light); --home-violet:var(--cf-violet);
  --home-display:var(--cf-display);
  --home-body:var(--cf-body);
  --home-mono:var(--cf-mono);
  --ease:var(--cf-ease);
  color:var(--cream); background:var(--night);
  font-family:var(--home-body);
  color-scheme:dark;
}
html:has(body:is([data-page="home"],[data-page="about"])) {background:var(--cf-night);color-scheme:dark}
body:is([data-page="home"],[data-page="about"]) :is(h1,h2,.next-name) {
  font-family:var(--home-display); font-weight:500; letter-spacing:-.012em;
}
body:is([data-page="home"],[data-page="about"]) :is(h3,h4) {
  font-family:var(--home-body); font-weight:500; letter-spacing:-.035em;
}
body:is([data-page="home"],[data-page="about"]) em {
  font-family:inherit; font-style:normal; font-weight:inherit; letter-spacing:inherit;
}
body:is([data-page="home"],[data-page="about"]) :is(.micro,.tiny,.chapter-bar,.section-label,.cf-story-card-top,.cf-story-scroll-cue,.cf-story-art-label) {
  font-family:var(--home-mono); font-weight:400; letter-spacing:.065em;
}
body:is([data-page="home"],[data-page="about"]) ::selection {background:var(--cf-blue);color:#fff}
body:is([data-page="home"],[data-page="about"]) :is(a,button,summary):focus-visible {outline-color:var(--home-blue)}
body:is([data-page="home"],[data-page="about"]) .site-header {
  background:color-mix(in srgb, var(--cf-night) 90.98%, transparent); border-color:#7297c329;
  box-shadow:0 1px 0 color-mix(in srgb, var(--cf-light) 3.14%, transparent);
}
body:is([data-page="home"],[data-page="about"]) .brand-symbol {filter:none}
body:is([data-page="home"],[data-page="about"]) .site-header :is(.client-access,.menu-button) {color:#becbda}
body:is([data-page="home"],[data-page="about"]) .site-header .menu-button {border-color:#47618080;background:var(--cf-surface)}
body:is([data-page="home"],[data-page="about"]) .primary-nav>a:after {background:var(--home-blue)}
body:is([data-page="home"],[data-page="about"]) .talk-link {color:var(--cf-night);background:var(--cf-ink);border:1px solid var(--cf-ink)}
body:is([data-page="home"],[data-page="about"]) .talk-link:is(:hover,:focus-visible) {background:var(--cf-light);border-color:var(--cf-light);box-shadow:0 0 25px color-mix(in srgb, var(--cf-blue) 14.9%, transparent)}
body:is([data-page="home"],[data-page="about"]) .cf-hero {
  background:radial-gradient(ellipse at 78% 44%,#10263b70,transparent 52%),var(--night);
}
body:is([data-page="home"],[data-page="about"]) .cf-hero .hero-top {color:#93a6bf;line-height:1.7;font-size:9px}
body:is([data-page="home"],[data-page="about"]) .cf-hero h1 {letter-spacing:-.065em;line-height:1.06}
body:is([data-page="home"],[data-page="about"]) .cf-hero h1 em {font-size:1em;line-height:inherit;letter-spacing:inherit;color:var(--cf-blue)}
body:is([data-page="home"],[data-page="about"]) .cf-hero .hero-bottom>p {color:#b3c1d4}
body:is([data-page="home"],[data-page="about"]) .explore-link>span {color:var(--home-blue)}
/* One cropped angular field, derived from the logo's chevron. No perpetual animation. */
.cf-neo-field {position:absolute;right:-10%;top:12%;width:min(75%,1100px);height:76%;z-index:0;pointer-events:none;user-select:none;overflow:visible;color:var(--cf-blue);opacity:.48}
/* Share the camera's layout anchor, not independent hero percentages. The
   square remains concentric when the logo moves between responsive layouts. */
.cf-hero-art>.cf-neo-field {inset:50% auto auto 50%;width:124%;height:auto;aspect-ratio:1;translate:-50% -50%;transform-origin:center;z-index:0}
.cf-neo-field path {vector-effect:non-scaling-stroke}
.cf-neo-field .neo-route {stroke:var(--cf-light);stroke-width:1;opacity:.4}
.cf-neo-field .neo-route-faint {stroke:#597eb4;stroke-width:1;opacity:.28}
.cf-neo-field .neo-light {stroke:var(--cf-blue);stroke-width:2;opacity:.72}
.cf-neo-field .neo-violet {stroke:var(--cf-violet);stroke-width:1;opacity:.45}
.cf-neo-field .neo-node {fill:var(--cf-light);opacity:.65}
body:is([data-page="home"],[data-page="about"]) .chapter-bar {
  border-color:#5873995c; color:var(--cf-muted);
}
body:is([data-page="home"],[data-page="about"]) .chapter-bar:before {
  content:'';position:absolute;left:0;top:-1px;width:58px;height:2px;
  background:var(--home-blue);box-shadow:0 0 13px color-mix(in srgb, var(--cf-blue) 31.37%, transparent);pointer-events:none;
}
body:is([data-page="home"],[data-page="about"]) .chapter-bar p:first-child>span {color:var(--home-blue)}
body:is([data-page="home"],[data-page="about"]) .cf-goal-section {background:var(--cf-surface-deep)}
body:is([data-page="home"],[data-page="about"]) :is(.cf-story-intro h2 em,.services-intro h2 em,.cf-work-heading h2 em,.next-name em) {color:var(--cf-emphasis)}
body:is([data-page="home"],[data-page="about"]) :is(.cf-story-intro-copy,.cf-story-scroll-cue,.cf-story-outro>p) {color:var(--muted)}
body:is([data-page="home"],[data-page="about"]) .cf-story-card {
  --story-accent:var(--cf-light);
  background:radial-gradient(ellipse at 81% 55%,#18334670,transparent 53%),linear-gradient(125deg,#202b3c,#111925 58%,#0c131e);
  color:var(--cream);border-color:#5e799961;
  box-shadow:inset 0 1px 0 #c6d5eb40,inset 1px 0 0 #a2b8d018,inset 0 -2px 0 color-mix(in srgb, var(--cf-blue) 27.06%, transparent),0 30px 60px -35px #000b;
}
body:is([data-page="home"],[data-page="about"]) .cf-story-card[data-story-card="brand"] {
  background:radial-gradient(ellipse at 80% 50%,#34315345,transparent 57%),linear-gradient(125deg,#202b3c,#111925 58%,#0c131e);
}
body:is([data-page="home"],[data-page="about"]) .cf-story-card::after {border-color:#8faec115}
body:is([data-page="home"],[data-page="about"]) .cf-story-card-top {color:#92a8c4}
body:is([data-page="home"],[data-page="about"]) .cf-story-card-top>span:last-child {border:1px solid color-mix(in srgb, var(--cf-light) 21.96%, transparent);padding:7px 10px;color:var(--home-blue)}
body:is([data-page="home"],[data-page="about"]) .cf-story-transformation {color:#92a8c4}
body:is([data-page="home"],[data-page="about"]) .cf-story-transformation strong {color:#e2edfc}
body:is([data-page="home"],[data-page="about"]) .cf-story-description {color:#b5c3d6}
body:is([data-page="home"],[data-page="about"]) .cf-story-cta {color:var(--cf-ink);border-color:color-mix(in srgb, var(--cf-light) 33.33%, transparent)}
body:is([data-page="home"],[data-page="about"]) .cf-story-outro {border-color:var(--cf-line)}
body:is([data-page="home"],[data-page="about"]) .cf-story-unsure {color:#d6e3f2}
body:is([data-page="home"],[data-page="about"]) .cf-story-art::before {background:radial-gradient(ellipse at 54% 48%,color-mix(in srgb, var(--cf-blue) 8.63%, transparent),transparent 64%)}
body:is([data-page="home"],[data-page="about"]) .cf-story-art-label {background:#101722df;color:#dcecff;border-color:color-mix(in srgb, var(--cf-light) 43.92%, transparent);font-size:clamp(8px,.65vw,11px)}
body:is([data-page="home"],[data-page="about"]) .cf-work {background:var(--cf-surface-raised);color:var(--cream);border-top:1px solid #314055;border-radius:0}
body:is([data-page="home"],[data-page="about"]) .cf-work .chapter-bar {border-color:#5873995c}
body:is([data-page="home"],[data-page="about"]) .cf-work-heading {gap:6%}
body:is([data-page="home"],[data-page="about"]) .cf-work-heading h2 {max-width:1200px;font-size:clamp(48px,5.7vw,108px);line-height:1.05}
body:is([data-page="home"],[data-page="about"]) .cf-work-heading>p {color:var(--muted);flex:0 0 250px}
body:is([data-page="home"],[data-page="about"]) .cf-work-context>p {color:#bdc9da}
body:is([data-page="home"],[data-page="about"]) .cf-work-foot .text-link>span {color:var(--home-blue)}
body:is([data-page="home"],[data-page="about"]) .cf-services {background:var(--cf-night);color:var(--cream)}
body:is([data-page="home"],[data-page="about"]) :is(.services-intro>p,.cf-service p,.cf-care>div:last-child>p) {color:var(--cf-muted)}
body:is([data-page="home"],[data-page="about"]) .cf-service {border-color:#2d3c53}
body:is([data-page="home"],[data-page="about"]) .cf-service>.micro {color:var(--cf-light);font-size:10px}
body:is([data-page="home"],[data-page="about"]) .cf-service:is(:hover,:focus-within) {background:linear-gradient(90deg,color-mix(in srgb, var(--cf-blue) 3.14%, transparent),transparent 75%)}
body:is([data-page="home"],[data-page="about"]) .cf-service>.text-link {border-color:#456383;color:var(--cf-light);background:#101a27}
body:is([data-page="home"],[data-page="about"]) .cf-service>.text-link:is(:hover,:focus-visible) {background:var(--cf-light);color:var(--cf-night);box-shadow:0 0 20px color-mix(in srgb, var(--cf-blue) 14.9%, transparent)}
body:is([data-page="home"],[data-page="about"]) .cf-care {border-top:1px solid var(--cf-line);padding-top:50px}
body:is([data-page="home"],[data-page="about"]) .cf-care>div:first-child>.micro {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) .cf-care .cf-essentials {color:#92a8c4!important}
body:is([data-page="home"],[data-page="about"]) .cf-essentials strong {color:#d5e5f8}
body:is([data-page="home"],[data-page="about"]) .cf-care-action .text-link {color:var(--cf-ink)}
body:is([data-page="home"],[data-page="about"]) .cf-care-action .text-link span {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) .cf-closing {
  color:var(--cf-ink);background:radial-gradient(ellipse at 91% 55%,#07567d50,transparent 52%),radial-gradient(ellipse at 10% 100%,#3c2b7850,transparent 50%),var(--cf-surface-raised);
  border-top:1px solid #426085;position:relative;overflow:clip;
}
body:is([data-page="home"],[data-page="about"]) .cf-closing>.cf-neo-field {top:-30%;right:-23%;height:160%;width:70%;opacity:.32}
body:is([data-page="home"],[data-page="about"]) .cf-closing>:not(.cf-neo-field):not(.cf-liquid-stage) {position:relative;z-index:2}
body:is([data-page="home"],[data-page="about"]) .cf-closing>.section-label {color:#8fb4da}
body:is([data-page="home"],[data-page="about"]) .cf-closing h2 {font-size:clamp(52px,7.5vw,144px);letter-spacing:-.06em;line-height:1.04}
body:is([data-page="home"],[data-page="about"]) .cf-closing h2 em {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) .cf-closing .closing-bottom p {color:#b5c3d6}
body:is([data-page="home"],[data-page="about"]) .cf-closing .circle-arrow {color:var(--cf-light);border-color:color-mix(in srgb, var(--cf-light) 50.2%, transparent);background:#091322}
body:is([data-page="home"],[data-page="about"]) .round-link:is(:hover,:focus-visible) .circle-arrow {background:var(--cf-light);color:var(--cf-night);box-shadow:0 0 32px color-mix(in srgb, var(--cf-blue) 27.06%, transparent)}
body:is([data-page="home"],[data-page="about"]) .quiet-footer {background:var(--cf-night);color:#93a6c0;border-color:var(--cf-line)}
body:is([data-page="home"],[data-page="about"]) .next-page {background:#0d131e;color:var(--cf-ink);border-color:var(--cf-line)}
body:is([data-page="home"],[data-page="about"]) .next-top {color:var(--cf-label)}
body:is([data-page="home"],[data-page="about"]) .next-hint {color:#b5c3d6}
body:is([data-page="home"],[data-page="about"]) .next-progress {background:var(--cf-line)}
body:is([data-page="home"],[data-page="about"]) #page-curtain {background:#0d131e!important}
body:is([data-page="home"],[data-page="about"]) :is(dialog,.sound-settings) {background:#111925;color:var(--cf-ink);border-color:#426085;box-shadow:0 25px 85px #000a}
body:is([data-page="home"],[data-page="about"]) dialog::backdrop {background:#030713b8}
body:is([data-page="home"],[data-page="about"]) dialog .dialog-close {display:flex;width:fit-content;margin-left:auto}
body:is([data-page="home"],[data-page="about"]) #site-menu {background:#111925f8;color:var(--cf-ink);border-color:#426085}
body:is([data-page="home"],[data-page="about"]) #site-menu nav {font-family:var(--home-display)}
body:is([data-page="home"],[data-page="about"]) #site-menu nav>* {border-color:#2d3c53}
body:is([data-page="home"],[data-page="about"]) #site-menu nav>*:hover {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) #site-menu>.micro {color:var(--cf-label)}
body:is([data-page="home"],[data-page="about"]) :is(dialog>p,.contact-next p,.client-routes>a>span,.client-help,.sound-settings p) {color:#b5c3d6}
body:is([data-page="home"],[data-page="about"]) .contact-email {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) .contact-context {color:var(--cf-light)}
body:is([data-page="home"],[data-page="about"]) .client-routes strong {color:var(--cf-ink)}
body:is([data-page="home"],[data-page="about"]) .skip-link {background:var(--cf-ink);color:var(--cf-night)}
@media(min-width:1001px) {
  body:is([data-page="home"],[data-page="about"]) .cf-hero {display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:38px}
  body:is([data-page="home"],[data-page="about"]) .cf-hero-heading {width:66%;align-self:center;margin:0;padding:0}
  body:is([data-page="home"],[data-page="about"]) .cf-hero h1 {font-size:clamp(64px,6.2vw,125px);max-width:100%}
  body:is([data-page="home"],[data-page="about"]) .cf-hero-art {top:52%;transform:translateY(-50%)}
  body:is([data-page="home"],[data-page="about"]) .cf-hero .hero-bottom {margin:0;padding-top:0}
}
@media(min-width:2000px) {
  body:is([data-page="home"],[data-page="about"]) .cf-hero h1 {font-size:108px;max-width:100%}
  body:is([data-page="home"],[data-page="about"]) .cf-hero-heading {width:64%}
}
@media(max-width:1000px) {
  .cf-neo-field {right:-20%;top:13%;width:72%;height:68%;opacity:.34}
  body:is([data-page="home"],[data-page="about"]) .cf-work-heading>p {flex-basis:220px}
}
@media(max-width:800px) {
  body:is([data-page="home"],[data-page="about"]) .cf-work-heading h2 {font-size:clamp(43px,6vw,58px)}
  body:is([data-page="home"],[data-page="about"]) .cf-hero h1 {letter-spacing:-.06em}
}
@media(max-width:600px) {
  .cf-neo-field {width:115%;height:45%;top:24%;right:-35%;opacity:.3}
  body:is([data-page="home"],[data-page="about"]) .cf-hero .hero-top {font-size:7px;letter-spacing:.045em}
  body:is([data-page="home"],[data-page="about"]) .cf-hero h1 {font-size:clamp(38px,10.8vw,64px);line-height:1.09}
  body:is([data-page="home"],[data-page="about"]) .cf-hero .hero-bottom>p {font-size:15px}
  body:is([data-page="home"],[data-page="about"]) .cf-story-card-top {font-size:8px;letter-spacing:.035em}
  body:is([data-page="home"],[data-page="about"]) .cf-story-card-top>span:last-child {padding:5px 7px;flex:none}
  body:is([data-page="home"],[data-page="about"]) .cf-work-heading h2 {font-size:clamp(38px,9.9vw,58px)}
  body:is([data-page="home"],[data-page="about"]) .cf-work-heading>p {max-width:320px}
  body:is([data-page="home"],[data-page="about"]) .cf-closing h2 {font-size:clamp(38px,10.5vw,62px)}
  body:is([data-page="home"],[data-page="about"]) .cf-closing>.cf-neo-field {width:120%;right:-50%;height:125%;top:0}
  body:is([data-page="home"],[data-page="about"]) .cf-care {padding-top:35px}
}


/* Preserve the official blue in the non-WebGL hero too. */
body[data-page="home"] .cf-mark-fallback {filter:none}
