body.page-index .wrap {
  max-width: min(96vw, 960px);
  padding-left: clamp(1rem, 2vw, 2rem);
  padding-right: clamp(1rem, 2vw, 2rem);
}

/* ---------- Hero ---------- */
.hero { padding: 2rem 0 0.5rem; }

.hero-body { padding: 1.75rem 1.75rem 1.85rem; }
.hero-body h1 {
  font-size: clamp(2rem, 4.5vw, 3rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.03em;
  max-width: 22ch;
}
.hero-body p {
  margin-top: 1.1rem;
  color: var(--text-mid);
  font-size: 1.05rem;
  line-height: 1.7;
  max-width: 58ch;
}
.hero-body .actions { margin-top: 1.5rem; }

/* ---------- Sections ---------- */
.section { padding: 1.6rem 0; }

/* ---------- Tools grid (4-up) ---------- */
.tools-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.35rem;
}
.tool {
  display: flex;
  flex-direction: column;
  box-shadow: 5px 5px 0 var(--shadow);
  transition: transform .12s, box-shadow .12s;
  text-decoration: none;
  color: inherit;
}
.tool:hover { transform: translate(2px, 2px); box-shadow: 3px 3px 0 var(--shadow); }
.tool:active { transform: translate(5px, 5px); box-shadow: 0 0 0 var(--shadow); }
.tool-body { padding: 1.15rem 1.15rem 1.25rem; display: flex; flex-direction: column; gap: 0.55rem; flex: 1; }
.tool-ico {
  width: 42px; height: 42px;
  border: 2.5px solid var(--ink); border-radius: 10px;
  background: var(--win-2); display: grid; place-items: center;
}
.tool-ico svg { width: 23px; height: 23px; stroke: var(--c-blue); fill: none; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.tool-nm { font-size: 1.05rem; font-weight: 700; letter-spacing: -0.01em; }
.tool-ds { font-size: 0.84rem; color: var(--text-mid); line-height: 1.55; }
.tool-meta { margin-top: auto; padding-top: 0.35rem; font-family: var(--mono); font-size: 0.7rem; color: var(--text-dim); display: flex; align-items: center; }
.tool-meta .a { margin-left: auto; color: var(--c-blue); }

.tools-foot {
  margin-top: 1rem;
  text-align: center;
  font-family: var(--mono);
  font-size: 0.72rem;
  color: var(--text-dim);
}
.tools-foot a { color: var(--c-blue); text-decoration: underline; text-underline-offset: 3px; }

/* ---------- Bottom row ---------- */
.bottom-split {
  display: grid;
  grid-template-columns: 1.2fr 0.8fr;
  gap: 1.4rem;
  padding-bottom: 1rem;
}
.about-body { padding: 1.25rem 1.4rem 1.4rem; }
.about-body p { color: var(--text-mid); line-height: 1.75; font-size: 0.98rem; }
.about-body p + p { margin-top: 0.75rem; }
.about-body .actions { margin-top: 1.1rem; }
.connect-body { padding: 1.25rem 1.35rem 1.4rem; display: flex; flex-direction: column; gap: 0.65rem; }

@media (max-width: 720px) {
  .bottom-split { grid-template-columns: 1fr; }
}

@media (max-width: 560px) {
  .hero { padding-top: 1.2rem; }
  .hero-body { padding: 1.35rem 1.35rem 1.5rem; }
  .tools-grid { grid-template-columns: 1fr; }
}