/* LAWHUB 1.6.2 — precise editorial rhythm and day-mode relief.
   Non-invasive refinements on the restored 1.6.1 layout. */

/* Information density: reduce the large blank corridors between sections,
   without moving sections or changing carousel/scroll animation behaviour. */
:root {
  --section-y: clamp(48px, 5vw, 76px);
  /* 1.8: compact, authoritative section headings */
  --fs-2xl: clamp(1.78rem, 1.38rem + 1.3vw, 2.42rem);
}
.section--tight { padding-block: clamp(42px, 4.5vw, 68px); }
.section-head { margin-bottom: clamp(23px, 3vw, 40px); }
.h-section {
  font-size: var(--fs-2xl);
  font-weight: 600;
  line-height: 1.22;
  letter-spacing: -0.012em;
  max-width: 24ch;
}
.lead { font-size: clamp(1rem, .93rem + .24vw, 1.10rem); line-height: 1.62; }
.slide__title { font-size: clamp(1.7rem, 1.32rem + 1.2vw, 2.28rem); font-weight: 550; line-height: 1.24; max-width: 22ch; }
.about__lead { line-height: 1.48; font-weight: 500; }
.join__panel { padding-block: clamp(26px, 3vw, 42px); }
.knowledge__head { margin-bottom: clamp(24px, 3vw, 40px); }
.knowledge__row { margin-top: clamp(24px, 3.5vw, 44px); }
.about .pillars { margin-top: clamp(24px, 3.5vw, 44px); }
.ai__modes { margin-top: clamp(32px, 4.5vw, 64px); }
.demo-tests { margin-top: clamp(28px, 4vw, 56px); }
.universe { padding-block: clamp(56px, 7vw, 94px) clamp(40px, 5vw, 68px); }
.universe__stage { margin-top: clamp(24px, 3vw, 42px); }
@media (max-width: 719px) {
  :root { --section-y: clamp(38px, 7vw, 52px); }
  .h-section { font-size: clamp(1.6rem, 1.3rem + 1.5vw, 1.95rem); line-height: 1.24; }
  .slide__title { font-size: clamp(1.55rem, 1.28rem + 1.3vw, 1.9rem); }
  .network__layout { gap: 22px; }
  .section-head { margin-bottom: 24px; }
}

/* Professional-network diagram: the original single compound dashed path
   made disconnected, unequal-looking bars. A precise single-weight network
   remains visible at every animation frame. Moving pulses remain animated. */
.net-mini__l {
  stroke-dasharray: none !important;
  stroke-dashoffset: 0 !important;
  animation: none !important;
  stroke-width: 1.65px;
  stroke-linecap: round;
  stroke-linejoin: round;
  vector-effect: non-scaling-stroke;
}
.net-mini__p { filter: drop-shadow(0 0 2px rgba(130,181,231,.24)); }

/* Daylight is a deliberate premium alternative, not an unshaded inversion.
   Use contact / ambient / long-distance shadow layers and modest pale-blue glow. */
html[data-theme="light"] {
  --shadow-1:
    0 1px 0 rgba(255,255,255,.95) inset,
    0 3px 8px -5px rgba(18,49,80,.21),
    0 14px 29px -16px rgba(28,67,109,.24);
  --shadow-2:
    0 1px 0 rgba(255,255,255,.96) inset,
    0 5px 13px -7px rgba(22,55,91,.18),
    0 22px 48px -22px rgba(30,68,112,.28),
    0 48px 85px -46px rgba(47,101,161,.21);
  --shadow-3:
    0 1px 0 rgba(255,255,255,.97) inset,
    0 7px 15px -8px rgba(17,46,78,.22),
    0 29px 65px -24px rgba(20,62,108,.31),
    0 55px 103px -51px rgba(45,98,151,.23);
}
html[data-theme="light"] .h-section,
html[data-theme="light"] .slide__title,
html[data-theme="light"] .about__lead { color: #152b47; }
html[data-theme="light"] .net-mini > g:first-child {
  stroke: #527da6;
  stroke-opacity: .82;
}
html[data-theme="light"] .stage,
html[data-theme="light"] .arena-card__visual {
  box-shadow:
    0 1px 0 rgba(255,255,255,.97) inset,
    0 -6px 18px -13px rgba(45,85,125,.15) inset,
    0 16px 39px -25px rgba(28,70,115,.22);
}
html[data-theme="light"] .slide,
html[data-theme="light"] .arena-card,
html[data-theme="light"] .finder,
html[data-theme="light"] .research,
html[data-theme="light"] .news-feature,
html[data-theme="light"] .lawyers__panel,
html[data-theme="light"] .join__panel {
  box-shadow: var(--shadow-3);
  border-color: rgba(55,100,149,.24);
}
html[data-theme="light"] .surface:not(.slide):not(.arena-card) {
  box-shadow: var(--shadow-1);
}
html[data-theme="light"] .lawyers__panel.surface,
html[data-theme="light"] .finder.surface,
html[data-theme="light"] .research.surface,
html[data-theme="light"] .news-feature.surface { box-shadow: var(--shadow-3); }
html[data-theme="light"] .net-mini__n circle {
  filter: drop-shadow(0 4px 4px rgba(30,67,107,.18))
          drop-shadow(0 12px 14px rgba(40,87,133,.13));
}
html[data-theme="light"] .btn--primary {
  box-shadow: 0 2px 4px rgba(9,30,55,.13), 0 12px 26px -12px rgba(20,57,99,.31);
}
html[data-theme="light"] .btn--primary:hover {
  box-shadow: 0 3px 8px rgba(9,30,55,.16), 0 18px 31px -12px rgba(20,57,99,.34);
}
html[data-theme="light"] .net-features div {
  border-top-color: rgba(71,113,154,.26);
}
@media (prefers-reduced-motion: reduce) {
  .net-mini__p { filter: none; }
}

/* 1.6.3 — visible founder/administrator credit without changing navigation. */
.hero__admin {
  display: inline-flex;
  align-items: center;
  max-width: 100%;
  gap: 12px;
  border: 1px solid rgba(194,205,218,.29);
  border-radius: 15px;
  padding: 9px 12px 9px 9px;
  background: linear-gradient(125deg, rgba(194,213,234,.115), rgba(194,213,234,.038) 80%);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.11), 0 8px 24px -13px rgba(0,0,0,.34);
  color: var(--text);
  text-decoration: none;
  transition: border-color 190ms ease, box-shadow 190ms ease, transform 190ms ease;
}
.hero__admin:hover,
.hero__admin:focus-visible {
  border-color: rgba(194,215,238,.65);
  box-shadow: inset 0 1px 0 rgba(255,255,255,.16), 0 12px 30px -12px rgba(0,0,0,.38);
  transform: translateY(-2px);
}
.hero__admin:focus-visible { outline: 2px solid var(--lumen); outline-offset: 4px; }
.hero__admin-symbol {
  display: grid;
  flex: 0 0 35px;
  width: 35px;
  height: 35px;
  place-items: center;
  border-radius: 11px;
  border: 1px solid rgba(208,192,153,.40);
  background: linear-gradient(155deg, rgba(205,190,153,.26), rgba(205,190,153,.08));
  color: #e0cfaa;
  font-size: 18px;
  line-height: 1;
}
.hero__admin-identity {
  display: grid;
  gap: 2px;
  min-width: 0;
  text-align: left;
}
.hero__admin-identity strong {
  font-size: clamp(.85rem, .81rem + .12vw, .94rem);
  line-height: 1.3;
  font-weight: 650;
  letter-spacing: .005em;
}
.hero__admin-identity small {
  color: var(--text-2);
  font-size: clamp(.71rem, .69rem + .08vw, .79rem);
  line-height: 1.32;
  font-weight: 400;
}
.hero__admin-arrow {
  margin-left: 4px;
  color: var(--text-3);
  font-size: 15px;
  transition: transform 190ms ease;
}
.hero__admin:hover .hero__admin-arrow { transform: translate(2px, -2px); }
html[data-theme="light"] .hero__admin {
  border-color: rgba(64,103,146,.28);
  background: linear-gradient(135deg, rgba(255,255,255,.95), rgba(228,239,249,.86));
  box-shadow: 0 1px 0 rgba(255,255,255,.96) inset,
    0 4px 11px -6px rgba(19,57,99,.22),
    0 14px 33px -18px rgba(33,78,127,.25);
  color: #142b49;
}
html[data-theme="light"] .hero__admin:hover,
html[data-theme="light"] .hero__admin:focus-visible {
  border-color: rgba(45,94,143,.53);
  box-shadow: 0 1px 0 rgba(255,255,255,.97) inset,
    0 6px 15px -8px rgba(16,58,104,.25),
    0 22px 38px -16px rgba(26,72,122,.27);
}
html[data-theme="light"] .hero__admin-symbol {
  color: #876535;
  border-color: rgba(159,133,81,.32);
  background: linear-gradient(135deg, #faf5e8, #e9ddc6);
}
html[data-theme="light"] .hero__admin-identity small { color: #4b6884; }
html[data-theme="light"] .hero__admin-arrow { color: #627e98; }
@media (max-width: 480px) {
  .hero__admin { gap: 9px; padding: 8px 10px 8px 8px; }
  .hero__admin-symbol { width: 32px; height: 32px; flex-basis: 32px; }
  .hero__admin-arrow { margin-left: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .hero__admin, .hero__admin-arrow { transition: none; }
  .hero__admin:hover, .hero__admin:focus-visible,
  .hero__admin:hover .hero__admin-arrow { transform: none; }
}
