:root{
  --bg:#030307;
  --bg-soft:#080812;
  --card:#080813;
  --card-2:#0e0c15;
  --line:rgba(255,255,255,.11);
  --line-bright:rgba(255,20,159,.38);
  --text:#f5eef4;
  --muted:#c0b5c1;
  --pink:#ff149f;
  --pink-soft:#ff4eb8;
  --gold:#f2d4ad;
  --gold-line:rgba(242,212,173,.55);
  --shadow-pink:0 0 24px rgba(255,20,159,.32), 0 0 54px rgba(255,20,159,.12);
  --section-max:1320px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;overflow-x:hidden}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit}
body.marketing-page{min-height:100vh}

.site-header{position:fixed;top:0;left:0;right:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px 42px;background:linear-gradient(180deg,rgb(var(--appearance-bg-rgb,0 0 0) / .52),rgb(var(--appearance-bg-rgb,0 0 0) / 0));pointer-events:none}
.site-header > *{pointer-events:auto}
.brand{display:flex;align-items:flex-end;gap:14px;min-width:180px}
.brand img{width:104px;height:auto;display:block;filter:drop-shadow(0 0 18px rgb(var(--appearance-brand-rgb,255 20 159) / .26))}
.brand span{font-size:12px;letter-spacing:.40em;color:rgb(var(--appearance-text-rgb,221 210 218));padding-bottom:6px}
.desktop-nav{display:flex;align-items:center;gap:40px}
.desktop-nav a{position:relative;font-size:13px;letter-spacing:.18em;color:rgb(var(--appearance-text-rgb,243 237 241));opacity:.95;transition:color .18s ease,opacity .18s ease,text-shadow .18s ease}
.desktop-nav a:first-child{padding-left:16px}
.desktop-nav a::after{content:"";position:absolute;left:0;right:0;bottom:-10px;height:1px;background:linear-gradient(90deg,transparent,var(--pink),transparent);transform:scaleX(0);transform-origin:center;transition:transform .2s ease}
.desktop-nav a:hover,.desktop-nav a:focus-visible{color:rgb(var(--appearance-text-rgb,255 255 255));opacity:1;text-shadow:0 0 12px rgb(var(--appearance-brand-rgb,255 20 159) / .25)}
.desktop-nav a:hover::after,.desktop-nav a:focus-visible::after{transform:scaleX(1)}
.project-button{display:inline-flex;align-items:center;justify-content:center;gap:16px;height:46px;padding:0 22px;border:1px solid var(--gold-line);font-size:13px;letter-spacing:.16em;color:rgb(var(--appearance-text-rgb,255 247 235));background:rgb(var(--appearance-panel-rgb,10 8 13) / var(--appearance-surface-opacity,.18));box-shadow:inset 0 0 0 1px rgb(var(--appearance-accent-rgb,255 215 170) / .06),0 0 28px rgb(var(--appearance-accent-rgb,242 212 173) / .06);transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease,background .18s ease}
.project-button:hover,.project-button:focus-visible{transform:translateY(-1px);border-color:rgb(var(--appearance-accent-rgb,255 220 180) / .82);box-shadow:0 0 18px rgb(var(--appearance-accent-rgb,255 206 142) / .18), inset 0 0 0 1px rgb(var(--appearance-text-rgb,255 230 200) / .10);background:rgb(var(--appearance-panel-rgb,16 10 14) / var(--appearance-surface-opacity,.32))}
.project-button b{font-size:16px;font-weight:500}
.desktop-only{display:inline-flex}
.menu-toggle,.mobile-menu{display:none}

.hero{position:relative;min-height:100svh;overflow:clip;background:rgb(var(--appearance-bg-rgb,0 0 0))}
.hero::after{content:"";position:absolute;left:0;right:0;bottom:0;height:200px;background:linear-gradient(180deg,rgb(var(--appearance-panel-rgb,3 3 7) / 0),rgb(var(--appearance-panel-rgb,3 3 7) / .45) 45%,rgb(var(--appearance-panel-rgb,3 3 7) / .85) 74%,var(--bg) 100%);pointer-events:none;z-index:4}
.hero-composite{position:relative;min-height:100svh;isolation:isolate}
.scene-picture,.scene-image,.scene-shade{position:absolute;inset:0;width:100%;height:100%}
.scene-image{object-fit:cover;object-position:center center;user-select:none;pointer-events:none;filter:brightness(.92) saturate(1.03) contrast(1.03)}
.scene-shade{background:
 linear-gradient(180deg,rgb(var(--appearance-bg-rgb,2 2 4) / .15),rgb(var(--appearance-bg-rgb,2 2 4) / .06) 36%,rgb(var(--appearance-bg-rgb,2 2 4) / .10) 58%,rgb(var(--appearance-bg-rgb,2 2 4) / .18) 100%),
 radial-gradient(circle at 21% 58%,rgb(var(--appearance-bg-rgb,0 0 0) / .30),rgb(var(--appearance-bg-rgb,0 0 0) / 0) 30%),
 linear-gradient(90deg,rgb(var(--appearance-bg-rgb,0 0 0) / .22),rgb(var(--appearance-bg-rgb,0 0 0) / 0) 38%,rgb(var(--appearance-bg-rgb,0 0 0) / 0) 66%,rgb(var(--appearance-bg-rgb,0 0 0) / .14))}
.hero-layout{position:relative;z-index:6;display:grid;grid-template-columns:minmax(350px,1.05fr) minmax(280px,.8fr) minmax(340px,.95fr);gap:34px;align-items:center;min-height:100svh;max-width:1500px;margin:0 auto;padding:148px 48px 132px}

.hero-copy{max-width:600px;user-select:text}
.hero-kicker{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-bottom:22px;font-size:10px;letter-spacing:.36em;color:rgb(var(--appearance-text-rgb,215 206 214))}
.hero-kicker b{display:block;width:14px;height:1px;background:rgb(var(--appearance-text-rgb,255 255 255) / .28)}
.hero-copy h1{margin:0;line-height:.93;font-weight:300;font-size:clamp(62px,6vw,92px);letter-spacing:-.04em;color:rgb(var(--appearance-text-rgb,248 244 247));text-shadow:0 0 24px rgba(255,255,255,.04)}
.hero-copy h1 em{font-style:normal;color:rgb(var(--appearance-text-rgb,247 232 219));text-shadow:0 0 16px rgb(var(--appearance-accent-rgb,255 214 166) / .28),0 0 42px rgb(var(--appearance-brand-rgb,255 109 184) / .18)}
.hero-copy p{margin:24px 0 28px;max-width:560px;color:rgb(var(--appearance-text-rgb,227 218 226));font-size:17px;line-height:1.55;text-shadow:0 1px 1px rgba(0,0,0,.5)}
.signature{display:inline-flex;align-items:center;gap:14px;padding-left:14px;border-left:3px solid var(--pink);font-size:14px;letter-spacing:.22em;color:rgb(var(--appearance-text-rgb,243 236 242));text-transform:none}

.portal-stage{display:grid;place-items:center;min-height:430px;rotate:var(--warp-counter-angle,0deg);scale:var(--warp-counter-sx,1) var(--warp-counter-sy,1)}
.portal-button{--portal-turn:.01deg;position:relative;display:block;width:min(360px,27vw);aspect-ratio:1;border:0;background:none;border-radius:50%;padding:0;cursor:pointer;touch-action:none;filter:drop-shadow(0 0 28px rgb(var(--appearance-brand-rgb,255 20 159) / .32)) drop-shadow(0 0 52px rgb(var(--appearance-brand-rgb,255 20 159) / .14));transition:transform .18s ease,filter .18s ease}
.portal-button:hover,.portal-button:focus-visible{transform:scale(1.016);filter:drop-shadow(0 0 34px rgb(var(--appearance-brand-rgb,255 20 159) / .44)) drop-shadow(0 0 72px rgb(var(--appearance-brand-rgb,255 20 159) / .16))}
.portal-button:active{transform:scale(.995)}
.portal-shell,.portal-progress,.portal-inner{position:absolute;inset:0;border-radius:50%}
.portal-shell{background:conic-gradient(from -52deg,rgb(var(--appearance-panel-rgb,78 66 87)) 0 16%,rgb(var(--appearance-muted-rgb,140 124 160)) 16% 27%,rgb(var(--appearance-muted-rgb,88 73 93)) 27% 48%,rgb(var(--appearance-muted-rgb,152 133 168)) 48% 58%,rgb(var(--appearance-muted-rgb,90 75 96)) 58% 73%,rgb(var(--appearance-muted-rgb,138 120 152)) 73% 84%,rgb(var(--appearance-muted-rgb,85 72 97)) 84% 100%);opacity:.92;box-shadow:inset 0 0 0 1px rgba(255,255,255,.05)}
.portal-progress{inset:14px;background:conic-gradient(from -90deg,var(--pink) 0deg,var(--pink-soft) var(--portal-turn),rgb(var(--appearance-text-rgb,255 255 255) / .10) var(--portal-turn),rgb(var(--appearance-text-rgb,255 255 255) / .10) 360deg);mask:radial-gradient(farthest-side,transparent calc(100% - 17px),#000 calc(100% - 17px));-webkit-mask:radial-gradient(farthest-side,transparent calc(100% - 17px),#000 calc(100% - 17px));filter:drop-shadow(0 0 18px rgb(var(--appearance-brand-rgb,255 20 159) / .48))}
.portal-inner{inset:28px;display:flex;flex-direction:column;align-items:center;justify-content:center;background:radial-gradient(circle at 50% 36%,rgb(var(--appearance-panel-rgb,22 8 28) / .98),rgb(var(--appearance-panel-rgb,9 4 14) / .98) 65%,rgb(var(--appearance-panel-rgb,5 3 8) / .99));border:1px solid rgb(var(--appearance-brand-rgb,255 20 159) / .20);box-shadow:inset 0 0 54px rgb(var(--appearance-brand-rgb,255 20 159) / .08), inset 0 0 120px rgba(0,0,0,.55)}
.portal-inner img{width:78px;height:auto;margin-bottom:12px;filter:drop-shadow(0 0 14px rgb(var(--appearance-brand-rgb,255 20 159) / .26))}
.portal-inner strong{display:block;font-size:20px;line-height:1.13;font-weight:550;letter-spacing:.02em;text-align:center;color:rgb(var(--appearance-text-rgb,255 246 239))}
.portal-inner i{display:block;width:64px;height:1px;margin:16px 0 15px;background:rgb(var(--appearance-text-rgb,255 255 255) / .58)}
.portal-inner b{font-size:17px;color:rgb(var(--appearance-brand-rgb,255 104 195));font-weight:600}
.portal-help{margin-top:18px;font-size:10px;letter-spacing:.34em;color:rgb(var(--appearance-text-rgb,227 216 224));text-align:center}
.portal-help span{display:inline-block;width:28px;height:1px;background:rgb(var(--appearance-text-rgb,255 255 255) / .35);vertical-align:middle;margin:0 8px}

.hero-right{position:relative;min-height:420px}
.manifesto{position:absolute;right:10px;top:-6px;z-index:4;border-left:2px solid var(--pink);padding:3px 5px 3px 18px;font-size:11px;line-height:1.95;letter-spacing:.34em;color:rgb(var(--appearance-text-rgb,221 210 218));text-align:left;background:rgb(var(--appearance-panel-rgb,2 2 6) / var(--appearance-surface-opacity,.22))}
















.scroll-cue{position:absolute;left:50%;bottom:22px;transform:translateX(-50%);z-index:9;display:flex;flex-direction:column;align-items:center;gap:8px;font-size:11px;letter-spacing:.28em;color:rgb(var(--appearance-text-rgb,255 255 255));opacity:.96;text-align:center}
.scroll-cue::before{content:"";display:block;width:1px;height:44px;background:linear-gradient(180deg,rgb(var(--appearance-text-rgb,255 255 255) / .08),rgb(var(--appearance-text-rgb,255 255 255) / .95))}
.scroll-cue span{font-size:16px;line-height:1;color:rgb(var(--appearance-text-rgb,255 255 255))}

.section{position:relative;z-index:2;padding:120px 24px;background:var(--bg)}
.section-heading{max-width:900px;margin:0 auto 46px;width:min(100%,var(--section-max))}
.section-heading span{display:block;margin-bottom:16px;font-size:12px;letter-spacing:.28em;color:rgb(var(--appearance-brand-rgb,255 99 191))}
.section-heading h2{margin:0;font-size:clamp(38px,5vw,68px);line-height:.96;font-weight:300}
.section-heading h2 em{font-style:normal;color:rgb(var(--appearance-text-rgb,243 222 193))}
.section-heading p{max-width:750px;margin:20px 0 0;color:rgb(var(--appearance-muted-rgb,190 179 192));font-size:18px;line-height:1.6}

.section.solutions{padding-top:140px;background:linear-gradient(180deg,rgb(var(--appearance-panel-rgb,3 3 7) / .86),rgb(var(--appearance-panel-rgb,3 3 7) / .96) 80px,var(--bg) 260px)}
.solution-grid,.use-grid{width:min(100%,var(--section-max));margin:0 auto;display:grid;gap:22px;grid-template-columns:repeat(4,1fr)}
.solution-grid article,.use-grid article{padding:28px;border:1px solid rgb(var(--appearance-brand-rgb,255 20 159) / .18);background:linear-gradient(180deg,rgb(var(--appearance-panel-rgb,10 10 18) / .80),rgb(var(--appearance-panel-rgb,8 8 14) / .72));box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)}
.card-icon{font-size:22px;color:rgb(var(--appearance-brand-rgb,255 95 188));margin-bottom:18px}
.solution-grid h3,.use-grid h3{margin:0 0 12px;font-size:18px;letter-spacing:.14em}
.solution-grid p,.use-grid p{margin:0 0 22px;color:rgb(var(--appearance-muted-rgb,193 182 193));line-height:1.6}
.solution-grid a{color:rgb(var(--appearance-text-rgb,255 242 223));letter-spacing:.12em;font-size:12px}

.split-section{width:min(100%,var(--section-max));margin:0 auto;display:grid;grid-template-columns:minmax(280px,.9fr) minmax(420px,1.1fr);gap:40px;align-items:start}
.steps{display:grid;gap:16px}
.steps article{display:grid;grid-template-columns:72px 1fr;gap:20px;padding:24px;border:1px solid rgb(var(--appearance-text-rgb,255 255 255) / .09);background:linear-gradient(180deg,rgb(var(--appearance-panel-rgb,9 9 16) / .78),rgb(var(--appearance-panel-rgb,7 7 12) / .7))}
.steps b{font-size:34px;font-weight:300;color:rgb(var(--appearance-brand-rgb,255 102 196))}
.steps h3{margin:0 0 10px;font-size:18px;letter-spacing:.12em}
.steps p{margin:0;color:rgb(var(--appearance-muted-rgb,193 181 193));line-height:1.65}
.use-grid{grid-template-columns:repeat(3,1fr)}
.use-grid article span{display:block;margin-bottom:12px;font-size:11px;letter-spacing:.24em;color:rgb(var(--appearance-brand-rgb,255 103 197))}
.about{width:min(100%,var(--section-max));margin:0 auto;display:grid;grid-template-columns:240px 1fr;gap:54px;align-items:center}
.about-mark img{width:100%;max-width:220px;height:auto;display:block;filter:drop-shadow(0 0 24px rgb(var(--appearance-brand-rgb,255 20 159) / .20))}
.about-copy .lead{font-size:20px;color:rgb(var(--appearance-text-rgb,243 233 243))}
.about-copy p{color:rgb(var(--appearance-text-rgb,198 186 198));font-size:18px;line-height:1.7}
.contact .section-heading{width:min(100%,var(--section-max));margin-left:auto;margin-right:auto}

body.charging .portal-stage{position:relative;z-index:8}

@media (max-width: 1280px){
  .hero-layout{grid-template-columns:1fr .9fr;gap:28px}
  .hero-right{display:none}
  .portal-button{width:min(360px,32vw)}
  .solution-grid{grid-template-columns:repeat(2,1fr)}
}
@media (max-width: 900px){
  .site-header{padding:20px 22px}
  .desktop-nav,.desktop-only{display:none}
  .menu-toggle{display:grid;gap:4px;background:none;border:0;padding:8px;cursor:pointer}
  .menu-toggle span{display:block;width:24px;height:2px;background:rgb(var(--appearance-text-rgb,255 255 255))}
  .mobile-menu{position:absolute;top:72px;right:20px;display:none;flex-direction:column;gap:12px;padding:18px;border:1px solid rgb(var(--appearance-brand-rgb,255 20 159) / .24);background:rgb(var(--appearance-panel-rgb,8 8 14) / var(--appearance-surface-opacity,.96))}
  .mobile-menu.open{display:flex}
  .hero-layout{display:block;padding:126px 24px 122px}
  .hero-copy{max-width:100%}
  .hero-copy h1{font-size:clamp(48px,12vw,74px)}
  .hero-copy p{font-size:15px;max-width:100%}
  .signature{font-size:11px;letter-spacing:.16em}
  .portal-stage{min-height:0;margin-top:38px}
  .portal-button{width:min(78vw,370px)}
  .portal-inner strong{font-size:18px}
  .portal-help{display:none}
  .scroll-cue{bottom:18px;font-size:10px}
  .split-section,.about{grid-template-columns:1fr}
  .solution-grid,.use-grid,.contact-form{grid-template-columns:1fr}
  .section{padding:96px 24px}
  .scene-image{object-position:center center}
}


/* === v6.8 header alignment refinement === */
@media (min-width:901px){
  .site-header{align-items:center}
  .brand{align-items:center;gap:18px;min-width:250px}
  .brand img{width:104px}
  .brand span{padding-bottom:0;line-height:1;transform:none}

  /* The nav follows the actual portal center. Equal-width columns make
     USE CASES the exact center point of the five-item navigation. */
  .desktop-nav{
    position:absolute;
    left:var(--portal-cx,50vw);
    transform:translateX(-50%);
    display:grid;
    grid-template-columns:repeat(5,112px);
    column-gap:10px;
    align-items:center;
    justify-items:center;
  }
  .desktop-nav a{padding-left:0!important;text-align:center;white-space:nowrap}
  .desktop-nav a:first-child i{display:none!important}
}


/* === v6.9 desktop spacing refinement === */
@media (min-width: 901px){
  .hero-layout{
    grid-template-columns:minmax(420px,1.08fr) minmax(300px,.82fr) minmax(430px,1.02fr);
    column-gap:44px;
    padding-left:34px;
    padding-right:34px;
  }
  .hero-copy{
    max-width:540px;
    justify-self:start;
    transform:translateX(-22px);
  }
  .hero-copy p,
  .signature,
  .hero-kicker{max-width:520px}
  .portal-stage{justify-self:center}
  .hero-right{
    justify-self:end;
    width:min(520px,100%);
    transform:translateX(26px);
  }
  .manifesto{
    right:-18px;
    top:-2px;
  }

}

@media (min-width: 1400px){
  .hero-layout{
    grid-template-columns:minmax(450px,1.12fr) minmax(320px,.78fr) minmax(450px,1.04fr);
    column-gap:58px;
    padding-left:42px;
    padding-right:42px;
  }
  .hero-copy{transform:translateX(-34px)}
  .hero-right{transform:translateX(38px)}
  .manifesto{right:-28px}

}


/* === v6.10 spacing, hero header behavior, preview transparency, footer polish === */

/* The hero header belongs to the hero. It no longer follows the user down the page. */
.site-header{
  position:absolute !important;
}

/* Give the hero true edge-to-edge breathing room while keeping the Cortex portal
   mathematically centered in the viewport. */
@media (min-width:901px){
  .hero-layout{
    max-width:none !important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr) !important;
    column-gap:42px !important;
    padding-left:30px !important;
    padding-right:30px !important;
  }

  .hero-copy{
    width:min(555px,100%) !important;
    max-width:555px !important;
    justify-self:start !important;
    transform:none !important;
    margin-left:0 !important;
  }

  .portal-stage{
    justify-self:center !important;
  }

  .hero-right{
    width:min(510px,100%) !important;
    justify-self:end !important;
    transform:none !important;
    margin-right:0 !important;
  }

  .manifesto{
    right:0 !important;
    top:-4px !important;
  }

.preview-sidebar{
    background:linear-gradient(
      180deg,
      rgb(var(--appearance-panel-rgb,8 8 14) / .40),
      rgb(var(--appearance-panel-rgb,8 8 14) / .24)
    ) !important;
  }

}

/* Push the outer columns a little closer to the viewport edges on large displays. */
@media (min-width:1400px){
  .hero-layout{
    column-gap:52px !important;
    padding-left:24px !important;
    padding-right:24px !important;
  }
  .hero-copy{
    width:min(570px,100%) !important;
    max-width:570px !important;
  }
  .hero-right{
    width:min(520px,100%) !important;
  }
}

/* Proper footer — replaces the previously unstyled oversized logo/footer. */
.footer{
  position:relative;
  z-index:3;
  display:grid;
  grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);
  align-items:center;
  gap:34px;
  width:100%;
  padding:34px clamp(24px,4vw,64px) 40px;
  border-top:1px solid rgb(var(--appearance-text-rgb,255 255 255) / .08);
  background:
    linear-gradient(180deg,rgb(var(--appearance-panel-rgb,8 8 14) / .98),rgb(var(--appearance-panel-rgb,3 3 7) / 1));
  color:rgb(var(--appearance-muted-rgb,169 158 170));
}

.footer-brand{
  display:flex;
  align-items:center;
  gap:16px;
  min-width:0;
}

.footer-brand img{
  display:block;
  width:86px;
  height:auto;
  flex:0 0 auto;
  filter:drop-shadow(0 0 16px rgb(var(--appearance-brand-rgb,255 20 159) / .18));
}

.footer-brand span{
  font-size:11px;
  letter-spacing:.34em;
  color:rgb(var(--appearance-text-rgb,231 220 229));
}

.footer > p{
  margin:0;
  text-align:center;
  font-size:11px;
  letter-spacing:.12em;
  color:rgb(var(--appearance-muted-rgb,170 160 170));
  white-space:nowrap;
}

.footer nav{
  justify-self:end;
  display:flex;
  align-items:center;
  gap:22px;
}

.footer nav a{
  position:relative;
  font-size:10px;
  letter-spacing:.17em;
  color:rgb(var(--appearance-text-rgb,200 189 199));
  transition:color .18s ease;
}

.footer nav a:hover,
.footer nav a:focus-visible{
  color:rgb(var(--appearance-text-rgb,255 255 255));
}

.footer nav a::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:-7px;
  height:1px;
  background:var(--pink);
  transform:scaleX(0);
  transition:transform .18s ease;
}

.footer nav a:hover::after,
.footer nav a:focus-visible::after{
  transform:scaleX(1);
}

@media (max-width:900px){
  .footer{
    grid-template-columns:1fr;
    justify-items:center;
    text-align:center;
    gap:18px;
    padding:30px 24px 36px;
  }

  .footer nav{
    justify-self:center;
    flex-wrap:wrap;
    justify-content:center;
  }

  .footer > p{
    white-space:normal;
  }
}


/* === v6.11 right-side balance refinement ===
   Pull the manifesto + chat preview back toward the portal slightly.
   This keeps breathing room without pinning them to the viewport edge. */
@media (min-width:901px){
  .hero-right{
    transform:translateX(-34px) !important;
  }

  .manifesto{
    right:8px !important;
  }

}

@media (min-width:1400px){
  .hero-right{
    transform:translateX(-42px) !important;
  }

  .manifesto{
    right:10px !important;
  }

}

/* V8.1.8 — luminous Cortex entrance */
.portal-button{--portal-charge:0;isolation:isolate;overflow:visible;filter:drop-shadow(0 0 14px rgb(var(--appearance-brand-rgb,255 49 169) / 0.2235294117647059)) drop-shadow(0 0 38px rgb(var(--appearance-brand-rgb,255 24 149) / 0.13333333333333333));-webkit-tap-highlight-color:transparent}
.portal-button:focus-visible{outline:2px solid rgb(var(--appearance-accent-rgb,255 224 175));outline-offset:15px}
.portal-button::after{content:"";position:absolute;inset:0;border-radius:50%;pointer-events:none;z-index:5;border:1.5px solid rgb(var(--appearance-accent-rgb,255 225 186));box-shadow:0 0 3px #fff4df,0 0 10px rgb(var(--appearance-accent-rgb,255 203 145) / 0.788235294117647),0 0 22px rgb(var(--appearance-accent-rgb,255 148 97) / 0.49019607843137253),0 0 44px rgb(var(--appearance-brand-rgb,255 34 142) / 0.4392156862745098),inset 0 0 6px rgb(var(--appearance-accent-rgb,255 210 173) / 0.611764705882353);opacity:.94}
.portal-aura{position:absolute;inset:-19%;border-radius:50%;pointer-events:none;z-index:0;background:radial-gradient(circle,transparent 48%,rgb(var(--appearance-brand-rgb,255 36 134) / 0) 49%,rgb(var(--appearance-brand-rgb,255 74 173) / 0.21176470588235294) 51%,rgb(var(--appearance-accent-rgb,255 165 91) / 0.1411764705882353) 54%,rgb(var(--appearance-brand-rgb,255 21 158) / 0.07058823529411765) 62%,transparent 71%);filter:blur(7px);opacity:calc(.7 + var(--portal-charge)*.3);animation:portal-breathe 5s ease-in-out infinite}
.portal-shell{z-index:1;opacity:1;background:conic-gradient(from -35deg,rgb(var(--appearance-panel-rgb,38 21 34)),rgb(var(--appearance-danger-rgb,242 176 170)) 8%,rgb(var(--appearance-muted-rgb,100 66 88)) 14%,rgb(var(--appearance-panel-rgb,18 9 19)) 30%,rgb(var(--appearance-panel-rgb,51 19 41)) 46%,rgb(var(--appearance-danger-rgb,217 136 147)) 58%,rgb(var(--appearance-panel-rgb,40 17 32)) 69%,rgb(var(--appearance-panel-rgb,17 9 17)) 86%,rgb(var(--appearance-muted-rgb,137 92 114)));box-shadow:inset 0 0 0 3px #120a14,inset 0 0 0 8px #321427,0 0 18px rgb(var(--appearance-accent-rgb,255 154 104) / 0.2)}
.portal-shell::before{content:"";position:absolute;inset:8px;border-radius:50%;background:linear-gradient(145deg,rgb(var(--appearance-muted-rgb,155 116 139)) 0%,rgb(var(--appearance-panel-rgb,64 38 57)) 14%,rgb(var(--appearance-panel-rgb,9 5 13)) 43%,rgb(var(--appearance-panel-rgb,15 8 18)) 70%,rgb(var(--appearance-panel-rgb,77 36 62)));box-shadow:inset 0 3px 4px #fbd5e033,inset 0 -3px 7px rgb(var(--appearance-brand-rgb,255 31 151) / 0.1607843137254902),0 0 0 1px #000a}
.portal-shell::after{content:"";position:absolute;inset:20px;border-radius:50%;border:1px solid rgb(var(--appearance-brand-rgb,234 158 193) / 0.1607843137254902);box-shadow:0 0 12px #000,inset 0 0 8px #000;background:radial-gradient(ellipse at 40% 5%,rgb(var(--appearance-muted-rgb,142 88 113) / 0.1568627450980392),transparent 40%)}
.portal-inner{inset:37px;z-index:2;border:1px solid rgb(var(--appearance-brand-rgb,255 118 191) / 0.0784313725490196);background:radial-gradient(ellipse at 34% 12%,rgb(var(--appearance-panel-rgb,41 18 35)) 0,transparent 45%),radial-gradient(ellipse at 65% 85%,rgb(var(--appearance-panel-rgb,19 5 15)),transparent 50%),rgb(var(--appearance-panel-rgb,5 2 7));box-shadow:inset 0 8px 14px #000c,inset 0 -4px 19px rgb(var(--appearance-brand-rgb,255 22 154) / 0.07058823529411765),0 0 12px #000}
.portal-inner::before{content:"";position:absolute;inset:4px;border-radius:50%;pointer-events:none;background:linear-gradient(135deg,rgb(var(--appearance-text-rgb,255 206 234) / 0.03529411764705882),transparent 38%);border-top:1px solid rgb(var(--appearance-text-rgb,252 233 246) / 0.0392156862745098)}
.portal-inner img{width:72px;margin-bottom:15px;filter:drop-shadow(0 0 5px rgb(var(--appearance-brand-rgb,255 23 158) / 0.6)) drop-shadow(0 0 16px rgb(var(--appearance-brand-rgb,255 23 158) / 0.26666666666666666))}
.portal-inner strong{font-size:16px;font-weight:550;line-height:1.32;letter-spacing:.085em;color:rgb(var(--appearance-text-rgb,255 230 207));text-shadow:0 0 8px rgb(var(--appearance-accent-rgb,255 179 145) / 0.4196078431372549),0 0 20px rgb(var(--appearance-danger-rgb,255 115 141) / 0.1607843137254902)}
.portal-inner i{width:54px;margin:17px 0 14px;background:linear-gradient(90deg,transparent,rgb(var(--appearance-brand-rgb,255 75 171) / 0.5490196078431373),transparent);box-shadow:0 0 7px rgb(var(--appearance-brand-rgb,255 20 157) / 0.3333333333333333)}
.portal-inner b{font-size:14px;font-weight:500;color:rgb(var(--appearance-brand-rgb,255 114 199));letter-spacing:.05em;text-shadow:0 0 9px rgb(var(--appearance-brand-rgb,255 21 158) / 0.611764705882353)}
svg.portal-progress{inset:0;width:100%;height:100%;z-index:4;overflow:visible;mask:none;-webkit-mask:none;background:none;filter:none;pointer-events:none;border-radius:0}
.portal-track{fill:none;stroke:url(#portal-track-light);stroke-width:10;filter:drop-shadow(0 0 5px rgb(var(--appearance-brand-rgb,255 41 178) / 0.4))}
.portal-arc{fill:none;stroke:url(#portal-charge-light);stroke-width:10;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform:rotate(-90deg);transform-origin:180px 180px;opacity:0}
.portal-arc-bloom{stroke:rgb(var(--appearance-brand-rgb,255 19 158));stroke-width:16;filter:blur(9px)}
.portal-arc-light{filter:drop-shadow(0 0 4px rgb(var(--appearance-brand-rgb,255 36 181))) drop-shadow(0 0 10px rgb(var(--appearance-brand-rgb,255 24 155) / 0.6))}
.portal-arc-core{stroke:rgb(var(--appearance-text-rgb,255 216 239));stroke-width:2;filter:blur(.7px)}
.portal-button:hover{filter:drop-shadow(0 0 22px rgb(var(--appearance-brand-rgb,255 50 172) / 0.34901960784313724)) drop-shadow(0 0 48px rgb(var(--appearance-brand-rgb,255 22 138) / 0.2))}
/* Charge is expressed by the progress arc and the continuous --portal-charge
   aura; switching a second, brighter ring on at pointerdown looked like a flash. */
@keyframes portal-breathe{0%,100%{transform:scale(.98)}50%{transform:scale(1.025)}}
@media(max-width:720px){.portal-inner strong{font-size:15px}.portal-inner img{width:66px}}
@media(prefers-reduced-motion:reduce){.portal-aura{animation:none}.portal-button{transition:none}}


/* V8.1.9 — a readable manifesto and an entrance with its own motion choice. */
.manifesto>span{display:block;width:max-content;position:relative;background:rgb(var(--appearance-panel-rgb,2 2 6) / var(--appearance-surface-opacity,0.9098039215686274));box-shadow:0 0 8px 4px #020206ba;text-shadow:0 0 3px #000,0 0 9px #000;isolation:isolate}
.portal-inner{opacity:var(--portal-content-opacity,1);transition:none}

.contact-email{color:rgb(var(--appearance-text-rgb,255 208 233));border-bottom:1px solid rgb(var(--appearance-brand-rgb,255 60 171) / 0.5019607843137255);text-shadow:0 0 16px rgb(var(--appearance-brand-rgb,255 21 158) / 0.1803921568627451)}

@media (min-width:1281px){
  .hero-right{min-height:470px!important;transform:translateX(-20px)!important}
  .hero-right .manifesto{top:0!important;right:0!important;z-index:8;padding-right:10px!important}
  .hero-right .app-preview{top:104px!important;bottom:auto!important;height:340px!important}
}

@media (max-width:900px){
  .hero,.hero-composite{min-height:100svh;min-height:100dvh}
  .hero-layout{min-height:100svh;min-height:100dvh;padding-top:max(100px,calc(env(safe-area-inset-top) + 88px));padding-bottom:max(58px,calc(env(safe-area-inset-bottom) + 48px));display:flex;flex-direction:column;justify-content:center}
  .portal-stage{width:100%;margin-top:24px;flex:0 0 auto}
  .portal-button{width:min(68vw,300px)}
}

@media (max-width:900px) and (max-height:700px){
  .site-header{padding-top:max(12px,env(safe-area-inset-top))}.brand img{width:76px}.brand span{font-size:9px}
  .hero-layout{padding-top:max(78px,calc(env(safe-area-inset-top) + 68px));padding-bottom:max(34px,calc(env(safe-area-inset-bottom) + 28px));justify-content:flex-start}
  .hero-kicker{font-size:7px;margin-bottom:10px}.hero-copy h1{font-size:clamp(38px,10.5vw,52px)}.hero-copy p{font-size:11px;line-height:1.4;margin:12px 0}.signature{font-size:8px}
  .portal-stage{margin-top:12px}.portal-button{width:min(54vw,225px)}.portal-inner{inset:29px}.portal-inner img{width:52px;margin-bottom:9px}.portal-inner strong{font-size:12px}.portal-inner i{margin:10px 0 9px}.portal-inner b{font-size:11px}
  .scroll-cue{display:none}
}


/* The replacement renderer has a full viewport surface; the idle page is untouched. */
.wormhole-canvas{display:none;position:fixed;inset:0;width:100vw;height:100vh;pointer-events:none;z-index:22}
.wormhole-canvas.active{display:block}
