*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  font-family: -apple-system, BlinkMacSystemFont, "PingFang SC", "Noto Sans SC", "Microsoft YaHei", sans-serif;
  color: #101828;
  background: #06111f;
  line-height: 1.6;
}
a { color: inherit; text-decoration: none; }
img { max-width: 100%; display: block; }
.nav {
  position: fixed;
  z-index: 40;
  inset: 0 0 auto;
  height: 72px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  padding: 10px clamp(18px, 4vw, 56px);
  background: rgba(3,11,24,.76);
  border-bottom: 1px solid rgba(127,200,255,.14);
  backdrop-filter: blur(14px);
}
.brand { display: flex; align-items: center; gap: 12px; font-weight: 900; }
.brand img { width: 142px; filter: drop-shadow(0 0 10px rgba(127,200,255,.16)); }
.brand span { color: rgba(255,255,255,.68); font-size: 12px; border-left: 1px solid rgba(255,255,255,.16); padding-left: 12px; }
.links { display: flex; gap: 22px; color: rgba(255,255,255,.78); font-size: 13px; font-weight: 850; }
.links a:hover { color: #7fc8ff; }
.actions { display: flex; gap: 10px; }
.btn {
  min-height: 42px;
  border-radius: 999px;
  padding: 0 18px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  border: 1px solid transparent;
  background: #ff970f;
  color: #fff;
  font-weight: 950;
  box-shadow: 0 12px 26px rgba(255,151,15,.24);
  white-space: nowrap;
}
.btn.secondary { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.20); box-shadow: none; }
body.home .nav {
  background: rgba(0,0,0,.30);
  border-bottom-color: rgba(255,255,255,.10);
}
body.home .brand img { filter: drop-shadow(0 0 12px rgba(127,200,255,.24)); }
body.home .brand span { color: rgba(255,255,255,.72); border-left-color: rgba(255,255,255,.18); }
body.home .links { color: rgba(255,255,255,.84); }
body.home .links a:hover { color: #7fc8ff; }
body.home .btn.secondary { background: rgba(255,255,255,.08); color: #fff; border-color: rgba(255,255,255,.22); }
.hero {
  min-height: 100vh;
  padding: 112px clamp(22px, 5vw, 76px) 72px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 78% 18%, rgba(255,151,15,.16), transparent 26%),
    radial-gradient(circle at 18% 72%, rgba(18,103,232,.12), transparent 28%),
    linear-gradient(135deg, #ffffff 0%, #eef7ff 54%, #dfefff 100%);
  color: #101828;
  overflow: hidden;
  position: relative;
}
.neuro-hero {
  padding: 112px clamp(22px, 5vw, 76px) 72px;
  background: #02060b;
  color: #fff;
  isolation: isolate;
}
.neuro-hero::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  background:
    radial-gradient(circle at 52% 56%, rgba(0,104,245,.22), transparent 32%),
    radial-gradient(circle at 82% 18%, rgba(127,200,255,.13), transparent 28%),
    linear-gradient(180deg, #02060b 0%, #020b14 58%, #03060a 100%);
}
.neuro-hero::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background:
    linear-gradient(90deg, rgba(0,0,0,.54), rgba(0,0,0,.18) 46%, rgba(0,0,0,.54)),
    radial-gradient(circle at center, transparent 0 34%, rgba(0,0,0,.62) 82%);
  pointer-events: none;
}
#neuroCanvas {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  opacity: .88;
}
.neuro-shade {
  position: absolute;
  inset: 0;
  background:
    linear-gradient(180deg, rgba(0,0,0,.30), transparent 24%, rgba(0,0,0,.48)),
    repeating-linear-gradient(90deg, rgba(255,255,255,.025) 0 1px, transparent 1px 140px);
  pointer-events: none;
}
.hero::before {
  content: "DR.OTTER";
  position: absolute;
  left: clamp(18px, 4vw, 58px);
  top: 96px;
  color: rgba(18,103,232,.055);
  font-size: clamp(70px, 17vw, 230px);
  line-height: .8;
  font-weight: 1000;
  letter-spacing: 0;
  pointer-events: none;
}
.wrap { width: min(1180px, 100%); margin: 0 auto; }
.hero-grid { display: grid; grid-template-columns: minmax(0, 1fr) 380px; gap: clamp(34px, 7vw, 86px); align-items: center; }
.hero-center {
  position: relative;
  z-index: 2;
  min-height: calc(100vh - 184px);
  display: grid;
  place-items: center;
  text-align: center;
}
.hero-center .hero-copy { max-width: 860px; }
.hero-en {
  color: rgba(255,255,255,.92);
  font-size: clamp(26px, 3.3vw, 46px);
  line-height: 1.05;
  font-weight: 1000;
  letter-spacing: 0;
}
.hero-subtitle {
  margin-top: 22px;
  color: rgba(255,255,255,.86);
  font-size: clamp(18px, 1.8vw, 28px);
  line-height: 1.2;
  font-weight: 850;
  letter-spacing: .18em;
}
.hero-center h1 {
  margin-top: 18px;
  max-width: none;
  color: #fff;
  font-size: clamp(30px, 3.8vw, 52px);
  line-height: 1.12;
  text-shadow: 0 0 34px rgba(127,200,255,.24);
}
.hero-center .lead {
  margin: 24px auto 0;
  max-width: 760px;
  color: rgba(255,255,255,.72);
  font-size: clamp(15px, 1.05vw, 17px);
}
.hero-center .hero-buttons { justify-content: center; }
.hero-center .metric-row { max-width: 820px; margin-inline: auto; }
.hero-proof {
  width: min(760px, 100%);
  margin: 34px auto 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 10px;
}
.hero-proof div {
  min-height: 78px;
  padding: 14px 12px;
  border-radius: 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.18);
  backdrop-filter: blur(10px);
}
.hero-proof b {
  display: block;
  color: #fff;
  font-size: clamp(20px, 2vw, 28px);
  line-height: 1;
}
.hero-proof span {
  display: block;
  margin-top: 8px;
  color: rgba(255,255,255,.66);
  font-size: 12px;
  font-weight: 850;
}
.eyebrow { color: #ffb24a; font-size: 14px; font-weight: 950; }
h1, h2 { margin: 0; letter-spacing: 0; line-height: 1.05; }
h1 { margin-top: 14px; max-width: 820px; font-size: clamp(44px, 7vw, 82px); font-weight: 1000; }
h2 { font-size: clamp(36px, 5vw, 64px); font-weight: 1000; }
h3 { margin: 0; font-size: 23px; line-height: 1.2; }
p { margin: 0; color: #667085; }
.lead { margin-top: 24px; max-width: 720px; color: #475467; font-size: clamp(17px, 1.8vw, 22px); }
.hero-buttons { margin-top: 32px; display: flex; gap: 12px; flex-wrap: wrap; }
.otter-card {
  border-radius: 34px;
  background: rgba(255,255,255,.84);
  border: 1px solid rgba(18,103,232,.12);
  padding: 28px;
  box-shadow: 0 24px 70px rgba(18,103,232,.14);
  backdrop-filter: blur(12px);
}
.otter-card img { width: 220px; margin: 0 auto 18px; filter: drop-shadow(0 18px 20px rgba(18,103,232,.15)); }
.otter-card b { display: block; color: #101828; font-size: 28px; text-align: center; }
.otter-card span { display: block; margin-top: 8px; color: #667085; font-weight: 800; text-align: center; }
.report-mini {
  margin-top: 22px;
  border-radius: 18px;
  padding: 16px;
  background: linear-gradient(180deg, #f7fbff, #eef6ff);
  border: 1px solid rgba(18,103,232,.12);
  box-shadow: inset 0 -3px 0 rgba(255,151,15,.35);
}
.report-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; color: #101828; }
.report-head strong { font-size: 16px; }
.report-head em { font-style: normal; color: #98a2b3; font-size: 12px; font-weight: 900; }
.report-score {
  margin-top: 14px;
  display: grid;
  grid-template-columns: 72px 1fr;
  align-items: center;
  gap: 14px;
}
.report-score i {
  width: 72px;
  height: 72px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: conic-gradient(#ff970f 0 74%, rgba(255,255,255,.16) 74% 100%);
  color: #fff;
  font-style: normal;
  font-size: 24px;
  font-weight: 1000;
}
.report-score span { margin: 0; text-align: left; color: #475467; }
.report-bars { margin-top: 14px; display: grid; gap: 8px; }
.report-bars p { margin: 0; display: grid; grid-template-columns: 72px 1fr; gap: 10px; align-items: center; color: #667085; font-size: 12px; font-weight: 900; }
.report-bars span { display: block; margin: 0; text-align: left; color: #667085; font-size: 12px; }
.report-bars b { display: block; height: 8px; border-radius: 999px; background: linear-gradient(90deg, #1267e8 var(--w), rgba(18,103,232,.12) var(--w)); font-size: 0; line-height: 0; }
.hero .metric { background: rgba(255,255,255,.72); border-color: rgba(18,103,232,.10); box-shadow: 0 12px 28px rgba(18,103,232,.07); }
.hero .metric b { color: #1267e8; }
.hero .metric span { color: #667085; }
.section {
  min-height: 100vh;
  padding: 112px clamp(22px, 5vw, 76px);
  display: grid;
  align-items: center;
  background: #06111f;
  color: #fff;
}
.section.white { background: #071a31; border-block: 1px solid rgba(127,200,255,.13); color: #fff; }
.split { display: grid; grid-template-columns: .95fr 1.05fr; gap: clamp(28px, 6vw, 86px); align-items: center; }
.big-copy { max-width: 620px; }
.big-copy p { margin-top: 20px; font-size: 18px; color: rgba(220,235,255,.72); }
.quiet-list { display: grid; gap: 14px; }
.quiet-item {
  padding: 22px;
  border-radius: 14px;
  background: rgba(255,255,255,.07);
  border: 1px solid rgba(127,200,255,.14);
  color: #fff;
}
.white .quiet-item { background: rgba(255,255,255,.08); }
.quiet-item small { color: #ffb24a; font-weight: 950; }
.quiet-item p { margin-top: 8px; }
.metric-row { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 34px; }
.metric {
  min-height: 120px;
  padding: 20px;
  border-radius: 14px;
  background: #fff;
  border: 1px solid #d7e6ff;
}
.metric b { display: block; color: #0645a8; font-size: 34px; line-height: 1; }
.metric span { display: block; margin-top: 8px; color: #667085; font-size: 13px; font-weight: 850; }
.page-hero {
  min-height: 100vh;
  padding: 136px clamp(22px, 5vw, 76px) 96px;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 78% 18%, rgba(255,151,15,.13), transparent 24%),
    radial-gradient(circle at 18% 72%, rgba(18,103,232,.18), transparent 30%),
    linear-gradient(135deg, #07101f, #082743);
  color: #fff;
}
.page-hero p { margin-top: 22px; max-width: 780px; font-size: 20px; color: rgba(220,235,255,.72); }
.screen-section {
  min-height: 82vh;
  padding: 96px clamp(22px, 5vw, 76px);
  display: grid;
  align-items: center;
  background: #06111f;
  color: #fff;
}
.screen-section.white { background: #071a31; border-block: 1px solid rgba(127,200,255,.13); }
.clean-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 34px; }
.clean-card {
  min-height: 190px;
  padding: 26px;
  border-radius: 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 14px 32px rgba(0,0,0,.18);
}
.white .clean-card { background: rgba(255,255,255,.08); box-shadow: none; }
.clean-card b { display: block; color: #7fc8ff; font-size: 22px; }
.clean-card p { margin-top: 12px; }
.dimension-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 12px; margin-top: 34px; }
.dimension {
  min-height: 142px;
  padding: 18px;
  border-radius: 14px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.14);
}
.dimension b { color: #7fc8ff; }
.dimension ul { margin: 10px 0 0; padding-left: 18px; color: rgba(220,235,255,.68); font-size: 13px; }
.showcase {
  border-radius: 24px;
  overflow: hidden;
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 24px 70px rgba(0,0,0,.18);
  background: rgba(255,255,255,.08);
}
.showcase img { width: 100%; height: 360px; object-fit: cover; }
.authority-band {
  min-height: 100vh;
  display: grid;
  align-items: center;
  background:
    radial-gradient(circle at 82% 18%, rgba(255,151,15,.14), transparent 24%),
    radial-gradient(circle at 16% 72%, rgba(18,103,232,.20), transparent 30%),
    linear-gradient(135deg, #06111f 0%, #071a31 58%, #02060b 100%);
  color: #fff;
  padding: 112px clamp(22px, 5vw, 76px);
}
.authority-band p { color: rgba(220,235,255,.72); }
.authority-grid {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 14px;
  margin-top: 30px;
}
.authority-card {
  min-height: 156px;
  border-radius: 12px;
  padding: 22px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.16);
  box-shadow: inset 0 -4px 0 #ff970f, 0 18px 38px rgba(0,0,0,.22);
  backdrop-filter: blur(10px);
}
.authority-card b { display: block; color: #fff; font-size: 20px; line-height: 1.28; }
.authority-card span { display: block; margin-top: 12px; color: rgba(220,235,255,.66); font-size: 12px; font-weight: 850; }
.scenario {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: 18px;
  align-items: stretch;
  margin-top: 30px;
}
.scene-card {
  min-height: 360px;
  border-radius: 24px;
  overflow: hidden;
  position: relative;
  background:
    linear-gradient(90deg, rgba(3,18,52,.92), rgba(3,18,52,.32)),
    url("assets/mobile-home-reference.png") center 18% / cover no-repeat;
  box-shadow: 0 22px 60px rgba(3,18,52,.22);
}
.scene-card::after {
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent, rgba(3,18,52,.64));
}
.scene-copy {
  position: absolute;
  z-index: 2;
  left: 28px;
  right: 28px;
  bottom: 26px;
  color: #fff;
}
.scene-copy b { display: block; font-size: 32px; line-height: 1.12; }
.scene-copy span { display: block; margin-top: 10px; color: rgba(255,255,255,.78); font-weight: 850; }
.master-list { display: grid; gap: 12px; }
.master-card {
  min-height: 112px;
  border-radius: 16px;
  background: linear-gradient(135deg, #1267e8, #3b8cff);
  color: #fff;
  padding: 20px;
  display: grid;
  grid-template-columns: 1fr 86px;
  align-items: center;
  gap: 18px;
  box-shadow: 0 14px 30px rgba(0,81,220,.18);
}
.master-card small { color: rgba(255,255,255,.74); font-weight: 900; }
.master-card b { display: block; margin-top: 4px; font-size: 22px; line-height: 1.25; }
.master-avatar {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: rgba(255,255,255,.16);
  font-weight: 1000;
}
.science-visual {
  min-height: 520px;
  border-radius: 30px;
  position: relative;
  overflow: hidden;
  background:
    radial-gradient(circle at 50% 48%, rgba(18,103,232,.30), transparent 34%),
    linear-gradient(135deg, rgba(255,255,255,.08), rgba(127,200,255,.06));
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 24px 70px rgba(0,0,0,.18);
}
.science-visual::before {
  content: "";
  position: absolute;
  inset: 42px;
  border-radius: 50%;
  border: 1px dashed rgba(18,103,232,.24);
}
.brain-orbit {
  position: absolute;
  inset: 50%;
  width: 190px;
  height: 190px;
  transform: translate(-50%, -50%);
  border-radius: 42% 58% 52% 48%;
  background: linear-gradient(135deg, #1267e8, #7fc8ff);
  box-shadow: inset -18px -18px 34px rgba(6,69,168,.20), 0 26px 60px rgba(18,103,232,.22);
}
.brain-orbit b {
  position: absolute;
  inset: 0;
  display: grid;
  place-items: center;
  color: #fff;
  font-size: 36px;
  letter-spacing: 0;
}
.brain-orbit span {
  position: absolute;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #ff970f;
  box-shadow: 0 0 0 8px rgba(255,151,15,.14);
}
.brain-orbit span:nth-child(1) { left: 34px; top: 34px; }
.brain-orbit span:nth-child(2) { right: 26px; top: 62px; background: #35c9ff; box-shadow: 0 0 0 8px rgba(53,201,255,.16); }
.brain-orbit span:nth-child(3) { left: 76px; bottom: 28px; background: #5ee6a8; box-shadow: 0 0 0 8px rgba(94,230,168,.16); }
.brain-orbit span:nth-child(4) { right: 54px; bottom: 46px; }
.signal-card {
  position: absolute;
  width: 190px;
  border-radius: 18px;
  padding: 16px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 16px 36px rgba(0,0,0,.18);
}
.signal-card strong { display: block; color: #fff; font-size: 18px; }
.signal-card em { display: block; margin-top: 6px; color: rgba(220,235,255,.68); font-style: normal; font-size: 12px; font-weight: 850; }
.signal-card.top { left: 34px; top: 54px; }
.signal-card.right { right: 34px; top: 210px; }
.signal-card.bottom { left: 54px; bottom: 54px; }
.team-section {
  background:
    radial-gradient(circle at 84% 18%, rgba(255,151,15,.12), transparent 24%),
    linear-gradient(135deg, #071a31, #06111f);
}
.team-grid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px;
  margin-top: 34px;
}
.team-card {
  min-height: 300px;
  padding: 22px;
  border-radius: 18px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 18px 42px rgba(0,0,0,.20);
}
.team-avatar {
  width: 76px;
  height: 76px;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: radial-gradient(circle at 35% 30%, #7fc8ff, #1267e8 58%, #0645a8);
  color: #fff;
  font-weight: 1000;
  box-shadow: 0 12px 28px rgba(18,103,232,.22);
}
.team-card small { display: block; margin-top: 18px; color: #ffb24a; font-weight: 950; }
.team-card h3 { margin-top: 8px; font-size: 21px; color: #fff; }
.team-card p { margin-top: 10px; color: rgba(220,235,255,.68); }
.case-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
  margin-top: 34px;
}
.case-card {
  min-height: 420px;
  padding: 18px;
  border-radius: 22px;
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(127,200,255,.14);
  box-shadow: 0 18px 42px rgba(0,0,0,.20);
}
.case-card small { display: block; margin-top: 18px; color: #ffb24a; font-weight: 950; }
.case-card h3 { margin-top: 8px; }
.case-card p { margin-top: 10px; }
.case-visual {
  height: 190px;
  border-radius: 18px;
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(127,200,255,.16), rgba(255,255,255,.08));
}
.case-visual::before {
  content: "";
  position: absolute;
  inset: auto 24px 24px;
  height: 88px;
  border-radius: 16px 16px 8px 8px;
  background: #1267e8;
  box-shadow: 0 -38px 0 -16px #ff970f, 88px 12px 0 -26px #7fc8ff;
}
.case-visual::after {
  content: "";
  position: absolute;
  width: 92px;
  height: 92px;
  border-radius: 50%;
  right: 28px;
  top: 28px;
  background: radial-gradient(circle at 34% 34%, #fff 0 18%, #ff970f 19% 38%, #1267e8 39% 100%);
  opacity: .86;
}
.case-visual.school::before { background: #3b8cff; box-shadow: 0 -42px 0 -18px #5ee6a8, 84px 14px 0 -26px #ff970f; }
.case-visual.family::before { background: #ff970f; box-shadow: 0 -42px 0 -18px #1267e8, 84px 14px 0 -26px #5ee6a8; }
.dark {
  background: #071a31;
  color: #fff;
}
.dark p { color: rgba(220,235,255,.72); }
.dark .clean-card { background: rgba(255,255,255,.08); border-color: rgba(127,200,255,.14); box-shadow: 0 14px 32px rgba(0,0,0,.18); }
.dark .clean-card b { color: #7fc8ff; }
.cta {
  min-height: 88vh;
  padding: 112px clamp(22px, 5vw, 76px);
  background:
    radial-gradient(circle at 50% 20%, rgba(18,103,232,.16), transparent 30%),
    #06111f;
  color: #fff;
  text-align: center;
  display: grid;
  align-items: center;
}
.cta p { margin: 18px auto 0; max-width: 640px; font-size: 18px; }
.cta .hero-buttons { justify-content: center; }
.footer {
  padding: 56px clamp(22px, 5vw, 76px) 24px;
  border-top: 1px solid rgba(127,200,255,.14);
  background: #02060b;
  color: rgba(220,235,255,.66);
  font-size: 14px;
}
.footer-grid {
  display: grid;
  grid-template-columns: minmax(240px, 1.4fr) repeat(3, minmax(120px, .7fr));
  gap: 34px;
  align-items: start;
}
.footer img { width: 150px; margin-bottom: 14px; }
.footer p { max-width: 330px; font-size: 14px; color: rgba(220,235,255,.66); }
.footer b { display: block; color: #fff; margin-bottom: 12px; }
.footer a,
.footer span { display: block; margin-top: 8px; color: rgba(220,235,255,.66); font-weight: 750; }
.footer a:hover { color: #7fc8ff; }
.footer-bottom {
  width: min(1180px, 100%);
  margin: 34px auto 0;
  padding-top: 18px;
  border-top: 1px solid rgba(127,200,255,.14);
  color: rgba(220,235,255,.42);
  font-size: 12px;
}
@media (max-width: 980px) {
  .links { display: none; }
  .hero-grid, .split { grid-template-columns: 1fr; }
  .metric-row, .clean-grid, .dimension-grid, .authority-grid, .case-grid, .team-grid { grid-template-columns: repeat(2, 1fr); }
  .scenario { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: repeat(2, 1fr); }
}
@media (max-width: 640px) {
  .brand span, .actions .secondary { display: none; }
  .brand img { width: 128px; }
  .metric-row, .clean-grid, .dimension-grid, .authority-grid, .case-grid, .team-grid, .footer-grid { grid-template-columns: 1fr; }
  .section, .screen-section { padding-block: 72px; }
  .science-visual { min-height: 420px; }
  .signal-card { width: 160px; }
  .signal-card.right { right: 18px; }
}

.reveal,
.quiet-item,
.clean-card,
.authority-card,
.master-card,
.case-card,
.dimension,
.core-preview-card,
.chairman-card,
.leadership-card,
.ops-member-card {
  opacity: 0;
  transform: translateY(22px);
  transition: opacity .7s ease, transform .7s ease;
}
.reveal.is-visible,
.quiet-item.is-visible,
.clean-card.is-visible,
.authority-card.is-visible,
.master-card.is-visible,
.case-card.is-visible,
.dimension.is-visible,
.core-preview-card.is-visible,
.chairman-card.is-visible,
.leadership-card.is-visible,
.ops-member-card.is-visible {
  opacity: 1;
  transform: translateY(0);
}
.quiet-item:nth-child(2),
.authority-card:nth-child(2),
.clean-card:nth-child(2),
.master-card:nth-child(2) { transition-delay: .08s; }
.quiet-item:nth-child(3),
.authority-card:nth-child(3),
.clean-card:nth-child(3),
.master-card:nth-child(3) { transition-delay: .16s; }
.case-card:nth-child(2) { transition-delay: .08s; }
.case-card:nth-child(3) { transition-delay: .16s; }
.authority-card:nth-child(4) { transition-delay: .24s; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal,
  .quiet-item,
  .clean-card,
  .authority-card,
  .master-card,
  .case-card,
  .dimension {
    opacity: 1;
    transform: none;
    transition: none;
  }
}

/* Light system reset: keep only the first home hero dark. */
body {
  color: #101828;
  background: #fff;
}
.nav {
  background: rgba(255,255,255,.88);
  border-bottom-color: rgba(16,24,40,.08);
}
.brand img,
body.home .brand img { filter: drop-shadow(0 0 10px rgba(18,103,232,.10)); }
.brand span,
body.home .brand span { color: rgba(16,24,40,.62); border-left-color: rgba(16,24,40,.12); }
.links,
body.home .links { color: rgba(16,24,40,.72); }
.links a:hover,
body.home .links a:hover { color: #1267e8; }
.btn.secondary,
body.home .btn.secondary {
  background: rgba(255,255,255,.78);
  color: #101828;
  border-color: rgba(16,24,40,.12);
}
body.home .nav {
  background: rgba(255,255,255,.76);
  border-bottom-color: rgba(255,255,255,.20);
}
.section,
.screen-section {
  background: #f6faff;
  color: #101828;
}
.section.white,
.screen-section.white {
  background: #fff;
  border-block-color: #d7e6ff;
  color: #101828;
}
.page-hero {
  background:
    radial-gradient(circle at 78% 18%, rgba(255,151,15,.13), transparent 24%),
    linear-gradient(135deg, #fff, #eef7ff);
  color: #101828;
}
.page-hero p,
.big-copy p,
.dark p,
.cta p {
  color: #475467;
}
.quiet-item,
.white .quiet-item,
.clean-card,
.white .clean-card,
.dimension,
.case-card {
  background: #fff;
  border-color: #d7e6ff;
  color: #101828;
  box-shadow: 0 14px 32px rgba(18,103,232,.07);
}
.quiet-item small,
.case-card small,
.team-card small { color: #1267e8; }
.clean-card b,
.dimension b { color: #0645a8; }
.dimension ul,
.team-card p { color: #667085; }
.authority-band {
  background:
    radial-gradient(circle at 82% 18%, rgba(255,151,15,.13), transparent 24%),
    linear-gradient(135deg, #fff 0%, #eef7ff 60%, #f8fbff 100%);
  color: #101828;
}
.authority-band p { color: #475467; }
.authority-card,
.signal-card {
  background: rgba(255,255,255,.86);
  border-color: rgba(18,103,232,.12);
  color: #101828;
  box-shadow: inset 0 -4px 0 #ff970f, 0 18px 38px rgba(18,103,232,.10);
}
.authority-card b,
.signal-card strong { color: #0645a8; }
.authority-card span,
.signal-card em { color: #667085; }
.science-visual {
  background:
    radial-gradient(circle at 50% 48%, rgba(18,103,232,.16), transparent 34%),
    linear-gradient(135deg, #fff, #e9f5ff);
  border-color: rgba(18,103,232,.12);
  box-shadow: 0 24px 70px rgba(18,103,232,.12);
}
.team-section {
  background: #fff;
}
.team-grid {
  grid-template-columns: repeat(4, minmax(0, 1fr));
}
.team-card {
  background: #fff;
  border-color: #d7e6ff;
  color: #101828;
  box-shadow: 0 14px 32px rgba(18,103,232,.07);
}
.team-card h3 { color: #101828; }
.case-visual {
  background: linear-gradient(135deg, #eef7ff, #fff);
}
.dark {
  background: #f6faff;
  color: #101828;
}
.dark .clean-card {
  background: #fff;
  border-color: #d7e6ff;
  box-shadow: 0 14px 32px rgba(18,103,232,.07);
}
.dark .clean-card b { color: #0645a8; }
.cta {
  background: #fff;
  color: #101828;
}
.footer {
  background: #f8fbff;
  border-top-color: #d7e6ff;
  color: #667085;
}
.footer p,
.footer a,
.footer span { color: #667085; }
.footer b { color: #101828; }
.footer-bottom {
  border-top-color: #d7e6ff;
  color: #98a2b3;
}

.team-page {
  background: #fff;
  color: #101828;
}
.report-hero {
  background:
    radial-gradient(circle at 82% 18%, rgba(255,151,15,.12), transparent 24%),
    linear-gradient(135deg, #fff, #eef7ff);
}
.report-screen {
  min-height: 100vh;
  padding: 112px clamp(22px, 5vw, 76px);
  display: grid;
  align-items: center;
  background: #fff;
}
.report-screen.alt {
  background: #f6faff;
}
.report-layout {
  display: grid;
  grid-template-columns: minmax(0, 0.58fr) minmax(0, 0.42fr);
  gap: clamp(34px, 5vw, 76px);
  align-items: center;
}
.report-layout.image-right {
  grid-template-columns: minmax(0, 0.42fr) minmax(0, 0.58fr);
}
.report-layout.image-right > .report-copy {
  grid-column: 1;
  grid-row: 1;
}
.report-layout.image-right > .report-frame,
.report-layout.image-right > .report-overlap,
.report-layout.image-right > .report-spread {
  grid-column: 2;
  grid-row: 1;
}
.report-frame {
  margin: 0;
  border-radius: 18px;
  padding: 0;
  aspect-ratio: 900 / 1272;
  width: min(100%, 560px);
  justify-self: center;
  background: #fff;
  border: 1px solid #d7e6ff;
  box-shadow: 0 24px 70px rgba(18,103,232,.13);
  overflow: hidden;
}
.report-frame img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 0;
  background: #fff;
}
.report-spread {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 18px;
}
.report-spread .report-frame img {
  height: 100%;
}
.report-overlap {
  min-height: min(80vh, 800px);
  position: relative;
  display: grid;
  align-items: center;
  overflow: visible;
}
.report-overlap .report-frame {
  width: min(62%, 520px);
}
.report-overlap .report-frame:first-child {
  justify-self: start;
  transform: translateX(0) rotate(-2deg);
  z-index: 1;
}
.report-overlap .report-frame:nth-child(2) {
  position: absolute;
  right: 8%;
  top: 50%;
  transform: translateY(-50%) rotate(2deg);
  z-index: 2;
}
.report-overlap .report-frame:nth-child(3) {
  position: absolute;
  right: 0;
  top: 56%;
  transform: translateY(-50%) rotate(4deg);
  z-index: 3;
}
.report-overlap.two .report-frame {
  width: min(64%, 540px);
}
.report-overlap.two .report-frame:nth-child(2) {
  right: 8%;
}
.report-overlap .report-frame:nth-child(2):last-child {
  right: 8%;
}
.report-overlap .report-frame img {
  height: 100%;
}
.report-copy small {
  color: #1267e8;
  font-weight: 1000;
}
.report-copy {
  max-width: 430px;
  justify-self: center;
}
.report-copy h2 {
  margin-top: 14px;
  font-size: clamp(32px, 3.2vw, 46px);
  line-height: 1.08;
  overflow-wrap: anywhere;
}
.report-copy p {
  margin-top: 22px;
  color: #475467;
  font-size: 17px;
  line-height: 1.75;
}
.report-points {
  margin-top: 26px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.report-points span {
  min-height: 36px;
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 0 14px;
  background: #eef7ff;
  border: 1px solid #d7e6ff;
  color: #0645a8;
  font-size: 13px;
  font-weight: 900;
}
.team-preview-head {
  text-align: center;
}
.team-preview-head h2 {
  font-size: clamp(34px, 4vw, 58px);
}
.team-preview-head p {
  margin: 20px auto 0;
  max-width: 720px;
  color: #344054;
  font-size: 18px;
  font-weight: 750;
}
.team-preview-grid {
  width: min(980px, 100%);
  margin: 72px auto 0;
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: clamp(26px, 4vw, 70px);
  text-align: center;
}
.team-link {
  margin-top: 60px;
  display: flex;
  justify-content: center;
}
.team-link .btn.secondary {
  background: #fff;
  color: #101828;
  border-color: #d7e6ff;
}
.core-preview-grid {
  width: min(1180px, 100%);
  margin: 62px auto 0;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 18px;
}
.core-preview-card {
  min-height: 360px;
  padding: 22px;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #e6effb;
  border-radius: 8px;
  box-shadow: 0 18px 46px rgba(18,103,232,.08);
}
.core-preview-card.featured {
  padding-top: 16px;
  border-color: rgba(18,103,232,.24);
  box-shadow: 0 22px 60px rgba(18,103,232,.14);
}
.core-preview-card img,
.core-preview-photo {
  width: 100%;
  aspect-ratio: 1.08;
  object-fit: cover;
  border-radius: 6px;
  background: linear-gradient(135deg, #eef7ff, #d9ecff);
}
.core-preview-photo.initials,
.core-preview-badge {
  display: grid;
  place-items: center;
  color: #1267e8;
  font-size: 58px;
  font-weight: 1000;
}
.core-preview-badge {
  aspect-ratio: 1.08;
  border-radius: 6px;
  background:
    radial-gradient(circle at 70% 28%, rgba(255,151,15,.18), transparent 30%),
    linear-gradient(135deg, #eef7ff, #ffffff);
  border: 1px solid #d7e6ff;
  font-size: 38px;
}
.core-preview-card h3 {
  margin-top: 20px;
  color: #101828;
  font-size: 26px;
}
.core-preview-card strong {
  margin-top: 4px;
  color: #1267e8;
  font-size: 16px;
  font-weight: 1000;
}
.core-preview-card p {
  margin-top: 16px;
  color: #475467;
  font-size: 15px;
  line-height: 1.75;
  font-weight: 700;
}
.team-hero {
  min-height: 38vh;
  padding: 150px clamp(22px, 5vw, 76px) 46px;
  text-align: center;
}
.team-mark {
  width: 58px;
  height: 58px;
  margin: 0 auto 18px;
  position: relative;
}
.team-mark span {
  position: absolute;
  width: 22px;
  height: 22px;
  border: 4px solid #60b8ff;
  border-radius: 50%;
}
.team-mark span:nth-child(1) { left: 18px; top: 0; }
.team-mark span:nth-child(2) { left: 0; top: 28px; }
.team-mark span:nth-child(3) { right: 0; top: 28px; }
.team-mark span:nth-child(4) { left: 18px; bottom: 0; border-color: #7fd9ff; }
.team-hero h1 {
  max-width: none;
  margin: 0;
  font-size: clamp(34px, 3.8vw, 56px);
}
.team-hero p {
  margin: 24px auto 0;
  max-width: 680px;
  color: #344054;
  font-size: 19px;
  font-weight: 750;
}
.team-people {
  min-height: 70vh;
  padding: 44px clamp(22px, 5vw, 76px) 120px;
}
.team-people-grid {
  width: min(1420px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(5, minmax(150px, 1fr));
  column-gap: clamp(38px, 6vw, 112px);
  row-gap: 96px;
  text-align: center;
}
.person-card {
  display: grid;
  justify-items: center;
}
.person-photo {
  width: clamp(132px, 11vw, 190px);
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background:
    radial-gradient(circle at 42% 32%, rgba(255,255,255,.88) 0 16%, transparent 17%),
    linear-gradient(135deg, #6b7280, #f3f7fb);
  color: #fff;
  font-size: 24px;
  font-weight: 1000;
  box-shadow: 8px 7px 0 #6ea8ff, 0 0 0 1px #edf3ff;
  overflow: hidden;
}
.person-card:nth-child(3n + 2) .person-photo {
  box-shadow: 8px 7px 0 #43d6f6, 0 0 0 1px #edf3ff;
}
.person-card:nth-child(3n) .person-photo {
  box-shadow: 8px 7px 0 #86b7ff, 0 0 0 1px #edf3ff;
}
.person-card h3 {
  margin-top: 32px;
  font-size: 26px;
  line-height: 1.15;
  color: #101828;
}
.person-card p {
  margin-top: 12px;
  color: #344054;
  font-size: 18px;
  font-weight: 800;
}
.core-leadership-section {
  padding: 28px clamp(22px, 5vw, 76px) 88px;
}
.leadership-layout {
  width: min(1320px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: minmax(0, 1.05fr) minmax(360px, .95fr);
  gap: 24px;
  align-items: start;
}
.leadership-layout.chairman-only {
  width: min(860px, 100%);
  grid-template-columns: 1fr;
}
.leadership-layout.chairman-only .chairman-card img {
  aspect-ratio: 1 / 1;
  height: auto;
  max-height: 620px;
  object-fit: contain;
  background: #8b8f96;
}
.chairman-card {
  overflow: hidden;
  display: flex;
  flex-direction: column;
  background: #fff;
  border: 1px solid #dbe9ff;
  border-radius: 10px;
  box-shadow: 0 26px 70px rgba(18,103,232,.12);
}
.chairman-card img {
  width: 100%;
  height: clamp(300px, 29vw, 390px);
  min-height: 0;
  object-fit: cover;
}
.chairman-copy {
  padding: clamp(26px, 3vw, 40px);
  display: flex;
  flex-direction: column;
  justify-content: center;
}
.chairman-copy span,
.leadership-card small {
  color: #1267e8;
  font-size: 12px;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.chairman-copy h3 {
  margin-top: 12px;
  color: #101828;
  font-size: clamp(36px, 4vw, 62px);
}
.chairman-copy strong,
.leadership-card strong {
  margin-top: 8px;
  color: #0645a8;
  font-size: 20px;
  font-weight: 1000;
}
.chairman-copy p,
.leadership-card p {
  margin-top: 22px;
  color: #475467;
  font-size: 17px;
  line-height: 1.85;
  font-weight: 700;
}
.leadership-list {
  display: grid;
  gap: 16px;
}
.leadership-card {
  padding: 26px;
  background: #fff;
  border: 1px solid #e6effb;
  border-radius: 8px;
  box-shadow: 0 18px 46px rgba(18,103,232,.07);
}
.leadership-card img {
  width: 92px;
  height: 92px;
  margin-bottom: 18px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center top;
  border: 4px solid #eef7ff;
  box-shadow: 6px 5px 0 #6ea8ff;
}
.leadership-card h3 {
  margin-top: 8px;
  color: #101828;
  font-size: 28px;
}
.ops-team-section {
  padding: 36px clamp(22px, 5vw, 76px) 128px;
}
.ops-team-head {
  width: min(980px, 100%);
  margin: 0 auto 54px;
  text-align: center;
}
.ops-team-head span {
  color: #1267e8;
  font-size: 13px;
  font-weight: 1000;
  text-transform: uppercase;
  letter-spacing: .12em;
}
.ops-team-head h2 {
  margin-top: 12px;
  color: #101828;
  font-size: clamp(34px, 4.6vw, 64px);
}
.ops-team-head p {
  margin: 18px auto 0;
  max-width: 760px;
  color: #475467;
  font-size: 18px;
  font-weight: 750;
}
.ops-team-grid {
  width: min(1480px, 100%);
  margin: 0 auto;
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: 22px;
}
.ops-member-card {
  overflow: hidden;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  opacity: 1;
  transform: none;
  background: #fff;
  border: 1px solid #e6effb;
  border-radius: 8px;
  box-shadow: 0 20px 54px rgba(18,103,232,.08);
}
.ops-member-card img {
  width: 100%;
  aspect-ratio: 16 / 10.5;
  object-fit: cover;
  background: #edf3f8;
}
.ops-member-body {
  flex: 1;
  padding: 20px 20px 24px;
  display: flex;
  flex-direction: column;
}
.ops-member-body h3 {
  color: #0645a8;
  font-size: 25px;
  font-weight: 1000;
}
.ops-member-body strong {
  margin-top: 3px;
  color: #0645a8;
  font-size: 17px;
  line-height: 1.35;
}
.ops-member-body b {
  display: block;
  margin-top: 8px;
  color: #101828;
  font-size: 17px;
  line-height: 1.55;
}
.ops-member-body p {
  margin-top: 18px;
  color: #475467;
  font-size: 15px;
  line-height: 1.78;
  font-weight: 650;
}
@media (max-width: 980px) {
  .team-people-grid { grid-template-columns: repeat(3, 1fr); row-gap: 70px; }
  .team-preview-grid { grid-template-columns: repeat(2, 1fr); }
  .core-preview-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .leadership-layout,
  .chairman-card { grid-template-columns: 1fr; }
  .chairman-card img { min-height: 360px; }
  .ops-team-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .report-layout { grid-template-columns: 1fr; }
  .report-layout.image-right { grid-template-columns: 1fr; }
  .report-layout.image-right > .report-copy,
  .report-layout.image-right > .report-frame,
  .report-layout.image-right > .report-overlap,
  .report-layout.image-right > .report-spread {
    grid-column: auto;
    grid-row: auto;
  }
  .report-copy { max-width: 680px; justify-self: stretch; }
  .report-screen.alt .report-copy { order: 2; }
  .report-spread { grid-template-columns: 1fr 1fr; }
  .report-frame img,
  .report-spread .report-frame img { height: auto; max-height: none; }
  .report-overlap { min-height: auto; grid-template-columns: 1fr 1fr; gap: 16px; }
  .report-overlap .report-frame { width: 100%; }
  .report-frame { width: min(100%, 620px); }
  .report-overlap .report-frame:first-child,
  .report-overlap .report-frame:nth-child(2),
  .report-overlap .report-frame:nth-child(3) {
    position: static;
    transform: none;
  }
  .report-overlap .report-frame img { height: auto; }
}
@media (max-width: 640px) {
  .team-people-grid { grid-template-columns: repeat(2, 1fr); column-gap: 22px; }
  .team-preview-grid { grid-template-columns: repeat(2, 1fr); }
  .core-preview-grid { grid-template-columns: 1fr; margin-top: 34px; }
  .core-preview-card { min-height: 0; padding: 18px; }
  .core-leadership-section { padding: 22px 16px 70px; }
  .leadership-layout { gap: 18px; }
  .chairman-card img { min-height: 320px; }
  .chairman-copy,
  .leadership-card { padding: 22px; }
  .ops-team-section { padding: 28px 16px 88px; }
  .ops-team-head { margin-bottom: 30px; }
  .ops-team-grid { grid-template-columns: 1fr; gap: 18px; }
  .ops-member-body { padding: 18px 18px 22px; }
  .report-spread { grid-template-columns: 1fr; }
  .report-overlap { grid-template-columns: 1fr; }
  .report-frame { width: 100%; }
  .report-frame img { max-height: none; }
  .person-card h3 { font-size: 20px; }
  .person-card p { font-size: 15px; }
}

/* Mobile polish: make the site feel designed for phones, not merely scaled down. */
@media (max-width: 760px) {
  .nav {
    height: 62px;
    padding: 8px 14px;
    gap: 10px;
  }
  .brand { min-width: 0; }
  .brand img,
  body.home .brand img { width: 116px; }
  .actions { margin-left: auto; }
  .actions .btn {
    min-height: 36px;
    padding-inline: 13px;
    font-size: 12px;
  }
  .hero,
  .neuro-hero {
    min-height: 100svh;
    padding: 86px 18px 38px;
  }
  .hero-center {
    min-height: calc(100svh - 124px);
    place-items: center;
  }
  .hero-en {
    font-size: clamp(22px, 8vw, 34px);
    line-height: 1.08;
  }
  .hero-center h1 {
    margin-top: 14px;
    font-size: clamp(30px, 9.6vw, 42px);
    line-height: 1.08;
  }
  .hero-subtitle {
    margin-top: 16px;
    font-size: 15px;
    letter-spacing: .10em;
  }
  .hero-center .lead {
    margin-top: 18px;
    font-size: 14px;
    line-height: 1.72;
  }
  .hero-buttons {
    width: 100%;
    margin-top: 24px;
    display: grid;
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .hero-buttons .btn {
    width: 100%;
    min-height: 44px;
    padding-inline: 14px;
  }
  .hero-proof {
    margin-top: 20px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 8px;
  }
  .hero-proof div {
    min-height: 66px;
    padding: 12px 10px;
  }
  .hero-proof span { font-size: 11px; }
  #neuroCanvas { opacity: .62; }
  .neuro-hero::after {
    background:
      linear-gradient(180deg, rgba(0,0,0,.48), rgba(0,0,0,.18) 36%, rgba(0,0,0,.58)),
      radial-gradient(circle at center, transparent 0 24%, rgba(0,0,0,.70) 88%);
  }
  .authority-band,
  .section,
  .screen-section,
  .report-screen,
  .cta {
    min-height: auto;
    padding: 72px 18px;
  }
  .page-hero {
    min-height: auto;
    padding: 112px 18px 64px;
  }
  h1 { font-size: clamp(36px, 11vw, 48px); }
  h2,
  .team-preview-head h2 {
    font-size: clamp(30px, 9.4vw, 42px);
    line-height: 1.08;
  }
  h3 { font-size: 20px; }
  .big-copy {
    max-width: none;
  }
  .report-layout,
  .report-layout.image-right {
    width: min(100%, 420px);
    margin-inline: auto;
  }
  .report-copy {
    width: min(100%, 420px);
    max-width: 420px;
    justify-self: center;
    margin-inline: auto;
  }
  .big-copy p,
  .page-hero p,
  .report-copy p,
  .team-preview-head p,
  .cta p {
    margin-top: 16px;
    font-size: 15px;
    line-height: 1.72;
  }
  .quiet-item,
  .clean-card,
  .authority-card,
  .case-card,
  .team-card {
    border-radius: 12px;
    padding: 18px;
  }
  .authority-card { min-height: 128px; }
  .authority-card b { font-size: 17px; }
  .clean-card { min-height: auto; }
  .clean-card b { font-size: 19px; }
  .scenario {
    gap: 14px;
    margin-top: 24px;
  }
  .scene-card {
    min-height: 290px;
    border-radius: 18px;
  }
  .scene-copy {
    left: 20px;
    right: 20px;
    bottom: 20px;
  }
  .scene-copy b { font-size: 25px; }
  .master-card {
    min-height: 96px;
    grid-template-columns: 1fr 58px;
    padding: 16px;
    gap: 12px;
    border-radius: 14px;
  }
  .master-card b { font-size: 17px; }
  .master-avatar {
    width: 56px;
    height: 56px;
    font-size: 13px;
  }
  .science-visual {
    min-height: 360px;
    border-radius: 20px;
    order: 2;
  }
  .brain-orbit {
    width: 150px;
    height: 150px;
  }
  .brain-orbit b { font-size: 28px; }
  .signal-card {
    width: min(44vw, 156px);
    padding: 12px;
    border-radius: 14px;
  }
  .signal-card strong { font-size: 15px; }
  .signal-card.top { left: 14px; top: 22px; }
  .signal-card.right { right: 14px; top: 156px; }
  .signal-card.bottom { left: 18px; bottom: 24px; }
  .case-grid,
  .clean-grid,
  .authority-grid,
  .dimension-grid,
  .metric-row {
    gap: 12px;
    margin-top: 24px;
  }
  .case-card { min-height: auto; }
  .case-visual {
    height: 156px;
    border-radius: 14px;
  }
  .team-preview-grid {
    margin-top: 38px;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 24px 14px;
  }
  .person-photo {
    width: min(34vw, 132px);
  }
  .team-link { margin-top: 34px; }
  .team-hero {
    min-height: auto;
    padding: 110px 18px 34px;
  }
  .team-people {
    min-height: auto;
    padding: 30px 18px 74px;
  }
  .team-people-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    row-gap: 42px;
    column-gap: 18px;
  }
  .report-screen {
    padding-block: 64px;
  }
  .report-layout,
  .report-layout.image-right {
    gap: 24px;
  }
  .report-copy h2 {
    font-size: clamp(28px, 8.8vw, 38px);
  }
  .report-frame {
    width: 100%;
    border-radius: 12px;
    box-shadow: 0 16px 42px rgba(18,103,232,.12);
  }
  .report-overlap,
  .report-overlap.two {
    width: min(100%, 420px);
    min-height: clamp(360px, 110vw, 500px);
    margin: 2px auto 0;
    display: block;
    position: relative;
    overflow: visible;
  }
  .report-overlap .report-frame,
  .report-overlap.two .report-frame {
    width: 74%;
    max-width: none;
    position: absolute;
    margin: 0;
    border-radius: 12px;
  }
  .report-overlap .report-frame:first-child,
  .report-overlap.two .report-frame:first-child {
    position: absolute;
    left: 0;
    top: 12px;
    transform: rotate(-2deg);
    z-index: 1;
  }
  .report-overlap .report-frame:nth-child(2),
  .report-overlap.two .report-frame:nth-child(2),
  .report-overlap .report-frame:nth-child(2):last-child {
    position: absolute;
    right: 0;
    top: clamp(44px, 13vw, 66px);
    transform: rotate(2deg);
    z-index: 2;
  }
  .report-overlap .report-frame img,
  .report-overlap.two .report-frame img {
    height: 100%;
    object-fit: cover;
  }
  .report-points {
    margin-top: 18px;
    gap: 8px;
  }
  .report-points span {
    min-height: 32px;
    padding-inline: 10px;
    font-size: 12px;
  }
  .footer {
    padding: 42px 18px 22px;
  }
  .footer-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 22px 14px;
  }
  .footer-grid > div:first-child {
    grid-column: 1 / -1;
  }
  .footer-grid > div:not(:first-child) {
    display: flex;
    flex-wrap: wrap;
    align-content: start;
    gap: 8px;
  }
  .footer-grid > div:not(:first-child) b {
    flex: 0 0 100%;
    margin-bottom: 2px;
  }
  .footer-grid > div:not(:first-child) a,
  .footer-grid > div:not(:first-child) span {
    margin-top: 0;
    min-height: 30px;
    display: inline-flex;
    align-items: center;
    border-radius: 999px;
    padding: 0 10px;
    background: #fff;
    border: 1px solid #d7e6ff;
    color: #475467;
    font-size: 12px;
    white-space: nowrap;
  }
  .footer-grid > div:last-child {
    display: block;
  }
  .footer-grid > div:last-child b {
    display: block;
    margin-bottom: 8px;
  }
  .footer-grid > div:last-child span {
    min-height: auto;
    padding: 0;
    border: 0;
    background: transparent;
    color: #667085;
    display: inline;
    font-size: 13px;
    line-height: 1.7;
  }
  .footer-grid > div:last-child span + span {
    margin-left: 12px;
  }
}

@media (max-width: 380px) {
  .hero-proof { grid-template-columns: 1fr; }
  .team-preview-grid,
  .team-people-grid { grid-template-columns: 1fr; }
  .footer-grid { grid-template-columns: 1fr; }
  .actions .btn { padding-inline: 10px; }
}
