html.lenis { scroll-behavior: auto !important; }
.hero-sequence { height: 185svh; position: relative; }
.hero-sequence .hero { position: sticky; top: 0; background: #101211; }
.hero-sequence .domain-strip { position: sticky; top: calc(100svh - 60px); height: 60px; z-index: 4; padding: 0 4%; background: #1b201a; }
.hero-sequence .domain-strip span { display: flex; align-items: center; justify-content: center; padding: 0 8px; color: #a9bd97; font-family: monospace; font-size: 10px; }
.hero-grid { background-size: 62px 62px; background-image: linear-gradient(#a7be8909 1px,transparent 1px),linear-gradient(90deg,#a7be8909 1px,transparent 1px); }
.hero-scan { position: absolute; z-index: -1; height: 1px; width: 100%; background: #bce77444; top: 15%; left: 0; opacity: 0; box-shadow: 0 0 22px #bae37d33; pointer-events: none; }
.hero-finale { position: absolute; top: calc(50% - 145px); left: 6%; opacity: 0; pointer-events: none; width: 45%; }
.hero-finale > .eyebrow { color: #b1c4a0; font-size: 9px; margin-bottom: 29px; }
.hero-finale h2 { font-size: 60px; font-weight: 400; line-height: 1.06; margin: 0; animation: none; }
.hero-finale h2 > span { color: var(--lime); }
.hero-finale > p:not(.eyebrow) { font-size: 15px; line-height: 1.7; color: #8c9f7b; margin-top: 26px; }
.finale-rule { display: flex; align-items: center; gap: 15px; margin-top: 35px; max-width: 350px; font-family: monospace; font-size: 8px; color: #7e946c; }
.finale-rule i { width: 70px; height: 1px; background: var(--lime); }
.core-readout { position: absolute; left: 56%; bottom: 135px; font-family: monospace; width: 166px; color: #95b17d; font-size: 8px; }
.core-readout > div { display: flex; gap: 4px; margin: 11px 0 7px; height: 11px; }
.core-readout i { width: 9px; border: 1px solid #91b16f50; background: #a7d76320; }
.core-readout i:nth-child(-n+3) { background: var(--lime); }
.core-readout small { font-size: 6px; color: #6f8960; }
.hero h1 { text-shadow: 0 0 60px #dbf1b308; }
.hero .scene-controls { background: #101211b8; border-radius: 3px; }
.hero .hero-copy { max-width: 490px; }
.hero .hero-content > .eyebrow { font-family: monospace; font-size: 9px; }
.reveal-word { display: inline-block; }
.manifesto-heading > h2 > span { color: inherit; }
.principles article { transition: background .3s; }
.principles article:hover { background: #dce2d480; }
.principles svg { transition: color .3s, transform .5s var(--ease); }
.principles article:hover svg { color: #668c35; transform: rotate(-8deg); }
.platform-stage { isolation: isolate; }
.platform-atmosphere { position: absolute; inset: 0; z-index: -2; overflow: clip; pointer-events: none; }
.platform-grid { position: absolute; left: 30%; right: -15%; top: 30%; bottom: -30%; background-image: linear-gradient(#acdd7616 1px,transparent 1px),linear-gradient(90deg,#acdd7616 1px,transparent 1px); background-size: 54px 54px; transform: perspective(650px) rotateX(55deg) rotateZ(var(--grid-turn,-9deg)) translateY(var(--grid-offset,0)); pointer-events: none; opacity: .35; }
.service-watermark { position: absolute; z-index: -1; font-size: 300px; font-weight: 700; color: var(--service-accent); opacity: .045; line-height: 1; left: 3%; top: 14%; font-family: Arial, sans-serif; pointer-events: none; }
.platform-display { background: #151f19f2; border-color: color-mix(in srgb,var(--service-accent,var(--lime)) 35%,transparent); box-shadow: 0 30px 100px #0005,0 0 0 4px #a8bc7810; transition: border-color .6s; will-change: transform; }
.platform-display::after { content: ''; position: absolute; pointer-events: none; inset: 0; background: repeating-linear-gradient(0deg,transparent 0,transparent 4px,#00000010 4px,#00000010 5px); opacity: .25; }
.display-bar { background: #0d1712; }
.chapter-copy,.system-panel { animation: none; }
.chapter-copy .eyebrow,.panel-metric strong { color: var(--service-accent,var(--lime)); }
.chapter-navigation button > i { background: var(--service-accent,var(--lime)); }
.chapter-navigation button.active > i { transform: scaleX(var(--chapter-fill,1)); transition: transform .15s linear; }
.chapter-navigation button.active > span { color: var(--service-accent,var(--lime)); }
.model-blueprint { height: 135px; position: relative; perspective: 600px; }
.blueprint-grid { position: absolute; inset: -5px 0 0; background-image: linear-gradient(#82a29e15 1px,transparent 1px),linear-gradient(90deg,#82a29e15 1px,transparent 1px); background-size: 24px 24px; transform: rotateX(40deg); }
.blueprint-layer { position: absolute; height: 70px; width: 160px; left: 50%; top: 32px; margin-left: -80px; display: flex; align-items: center; justify-content: center; gap: 14px; color: #9ebfbf; background: #355763a8; border: 1px solid #aacfc9; transform: rotateX(50deg) rotateZ(-23deg); box-shadow: 4px 6px 0 #08181a; font-family: monospace; font-size: 9px; }
.blueprint-layer svg { width: 21px; height: 21px; }.blueprint-layer.l1 { top: 62px; background: #12353cc9; }.blueprint-layer.l2 { top: 35px; background: #246375bb; }.blueprint-layer.l3 { top: 9px; background: #557c89c9; color: #d3edeb; }
.system-panel[data-panel='1'] .panel-metric { margin-top: auto; }
.system-panel[data-panel='1'] .panel-metric strong,.system-panel[data-panel='4'] .panel-metric strong { font-size: 32px; }
.contact h2 { font-size: 100px; }
.contact-choice { margin: 8px 0 30px; }
.contact-choice > span { display: block; font-family: monospace; font-size: 9px; color: #4c642b; margin-bottom: 13px; }
.contact-service-options { display: flex; gap: 7px; flex-wrap: wrap; }
.contact-service-options button { background: transparent; padding: 10px 15px; font-size: 11px; border: 1px solid #10121135; color: #4b6328; border-radius: 3px; transition: color .25s,background .25s,transform .3s var(--ease); }
.contact-service-options button:hover { background: #10121110; transform: translateY(-2px); }
.contact-service-options button.active { background: #101211; color: var(--lime); border-color: #101211; }
.contact-email { display: flex; align-items: center; gap: 12px; margin-top: 27px; font-size: 11px; color: #52712a; }
.contact-email .icon-button { width: 29px; height: 29px; border-color: #10121130; }.contact-email svg { width: 13px; height: 13px; }
.contact-email a:hover { color: #101211; }
.contact :focus-visible { outline-color: #101211; }
.solution-art { background: #19231b; }.scanner-target { transition: transform .6s var(--ease); }.solution-detail.switching .scanner-target { animation: scanner-materialize .6s var(--ease); }
.research-card { transition: border-color .35s,transform .55s var(--ease),box-shadow .4s; }.research-card:hover { box-shadow: 0 15px 50px #a6bd7709; }
@keyframes scanner-materialize { from { opacity: .1; transform: scale(.65) rotate(-15deg); } to { opacity: 1; transform: none; } }
@media (min-width: 1650px) { .hero-finale h2 { font-size: 74px; }.hero-finale > p:not(.eyebrow) { font-size: 17px; } }
@media (max-width: 1100px) { .hero-finale h2 { font-size: 47px; }.hero-finale > p:not(.eyebrow) { font-size: 13px; }.core-readout { display: none; }.platform-heading h2 { font-size: 29px; } }
@media (max-width: 850px) { .hero-finale h2 { font-size: 39px; }.hero-sequence .domain-strip { top: max(700px,calc(100svh - 50px)); }.hero .hero-content > .eyebrow { font-size: 8px; }.hero .hero-copy { max-width: 330px; }.platform-heading h2 { font-size: 25px; }.contact h2 { font-size: 78px; } }
@media (max-width: 650px) {
  .hero-sequence { height: 180svh; }
  .hero-sequence .domain-strip { top: max(740px,calc(100svh - 50px)); grid-template-columns: repeat(3,1fr); height: 60px; padding: 0 16px; }
  .hero-sequence .domain-strip span { font-size: 7px; padding: 0 3px; }
  .hero .hero-content > .eyebrow { font-size: 7px; gap: 7px; }
  .hero .hero-copy { font-size: 12px; line-height: 1.65; max-width: 315px; }
  .hero .hero-actions { gap: 17px; }.hero .text-button { font-size: 10px; }
  .hero-finale { left: 24px; top: 135px; transform: none; width: calc(100% - 48px); }
  .hero-finale h2 { font-size: 39px; }
  .hero-finale > .eyebrow { margin-bottom: 30px; font-size: 7px; }
  .hero-finale > p:not(.eyebrow) { font-size: 13px; margin-top: 23px; max-width: 290px; }
  .finale-rule { margin-top: 30px; font-size: 6px; gap: 10px; }.finale-rule i { width: 43px; }
  .service-watermark { font-size: 180px; top: 5%; left: 3%; }
  .platform-grid { top: 30%; left: 0; right: -30%; bottom: -10%; opacity: .18; }
  .platform-heading h2 { font-size: 22px; line-height: 1.1; }.platform-heading h2 > span { display: block; }
  .platform-stage .section-label { font-size: 7px; }
  .model-blueprint { height: 101px; }.blueprint-layer { width: 130px; height: 55px; margin-left: -65px; font-size: 7px; gap: 10px; }.blueprint-layer.l1 { top: 44px; }.blueprint-layer.l2 { top: 23px; }.blueprint-layer.l3 { top: 2px; }.blueprint-layer svg { width: 16px; height: 16px; }
  .system-panel[data-panel='1'] .panel-metric strong,.system-panel[data-panel='4'] .panel-metric strong { font-size: 27px; }
  .contact h2 { font-size: 61px; }.contact-choice { margin-bottom: 26px; }.contact-service-options button { font-size: 9px; padding: 9px 11px; }.contact-bottom > p { font-size: 12px; }.contact-email { font-size: 10px; }
  footer > p { font-size: 8px; }
}
@media (max-width: 650px) and (max-height: 720px) {
  .hero-sequence .domain-strip { top: max(590px,calc(100svh - 40px)); }
  .hero .hero-copy { font-size: 10px; line-height: 1.5; }
  .hero .hero-actions { gap: 15px; }.hero .text-button { font-size: 9px; }
  .hero-finale { top: 102px; left: 20px; width: calc(100% - 40px); }.hero-finale h2 { font-size: 31px; }.hero-finale > .eyebrow { margin-bottom: 22px; }.hero-finale > p:not(.eyebrow) { margin-top: 18px; font-size: 11px; }.finale-rule { margin-top: 22px; }
  .platform-heading h2 { font-size: 19px; }.platform-heading { margin-bottom: 10px; }.chapter-copy > p:not(.eyebrow) { font-size: 10px; }
  .model-blueprint { height: 83px; }.blueprint-layer { height: 47px; }.blueprint-layer.l1 { top: 36px; }.blueprint-layer.l2 { top: 17px; }.blueprint-layer.l3 { top: -2px; }
  .system-panel[data-panel='1'] .panel-metric strong,.system-panel[data-panel='4'] .panel-metric strong { font-size: 24px; }
}
@media (max-width: 360px) { .hero .hero-content > .eyebrow { font-size: 6px; }.hero .hero-actions { gap: 10px; }.hero .text-button { font-size: 8px; }.hero-finale h2 { font-size: 28px; }.platform-heading h2 { font-size: 17px; }.contact h2 { font-size: 54px; }.contact-service-options button { font-size: 8px; padding: 8px 9px; } }
@media (max-height: 580px) { .hero-sequence { height: auto; }.hero-sequence .hero,.hero-sequence .domain-strip { position: relative; top: auto; }.hero-finale { display: none; } }
@media (prefers-reduced-motion: reduce) { .hero-sequence { height: auto; }.hero-sequence .hero,.hero-sequence .domain-strip { position: relative; top: auto; }.hero-finale,.hero-scan { display: none; }.hero-grid,.platform-grid { transform: none; }.chapter-navigation button.active > i { transform: scaleX(1); }.service-watermark { display: none; } }
