/* ARDYN — public Home composition (derived from approved 01-home.png geometry). */
.home-hero {
  position: relative; overflow: hidden;
  min-height: 520px;
  margin: 0 calc(-1 * var(--ardyn-gutter));
  padding: 72px var(--ardyn-gutter) 56px 40px;
  border-bottom: 1px solid var(--ardyn-border);
}
.home-hero .hero-inner { position: relative; z-index: 2; max-width: 780px; }
.home-hero h1 { font-size: 66px; line-height: 1.04; margin: 0 0 22px; }
.home-hero .lede { font-size: 17px; margin: 0 0 30px; }
.home-hero .actions { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 14px; }
.home-hero .actions .text-link { margin-left: 6px; }
.hero-emblem {
  position: absolute; right: 5%; top: 56px; z-index: 1;
  width: 220px; height: auto;
  filter: drop-shadow(0 0 16px rgb(143 240 247 / 24%)) brightness(0.92);
  opacity: 0.95;
}
.hero-caps {
  position: absolute; right: 5%; top: 230px; z-index: 1;
  font-size: 13px; line-height: 1.9; letter-spacing: 0.18em;
  color: var(--ardyn-ink-secondary); text-transform: uppercase; font-weight: 600;
}
.hero-caps .c { color: var(--ardyn-cyan); }

/* benefit panels: same four-panel geometry as approved Home row 1 */
.benefit-grid {
  display: grid; gap: var(--ardyn-panel-gap);
  grid-template-columns: 1.55fr 1fr 1fr 1.25fr;
  margin: var(--ardyn-panel-gap) 0;
}
.benefit h2 { font-size: 21px; margin: 6px 0 10px; }
.benefit p { margin: 0 0 16px; color: var(--ardyn-ink-muted); font-size: 13.5px; }
.benefit .go { font-size: 12px; letter-spacing: 0.08em; color: var(--ardyn-cyan-dim); text-transform: uppercase; }
.benefit .go::after { content: " →"; }

/* section frame */
.section { margin: 56px 0 0; }
.section-head { max-width: 760px; margin-bottom: 22px; }
.section-head h2 { font-family: var(--ardyn-display-font); font-weight: 400; font-size: 40px; line-height: 1.12; margin: 0 0 14px; }
.section-head p { color: var(--ardyn-ink-secondary); font-size: 15.5px; margin: 0; }

/* one operation: journey + receipt inspector */
.op-grid { display: grid; grid-template-columns: minmax(0, 1.5fr) minmax(0, 1fr); gap: var(--ardyn-panel-gap); }
.op-grid > * { min-width: 0; }
.journey { list-style: none; margin: 0; padding: 0; counter-reset: step; }
.journey li {
  display: grid; grid-template-columns: 34px 150px minmax(0, 1fr); gap: 14px; align-items: baseline;
  padding: 11px 6px; border-bottom: 1px solid rgb(35 71 79 / 45%); font-size: 13px;
}
.journey li:last-child { border-bottom: none; }
.journey li::before {
  counter-increment: step; content: counter(step, decimal-leading-zero);
  font-family: var(--ardyn-mono-font); font-size: 11px; color: var(--ardyn-cyan-dim);
}
.journey .stage { color: var(--ardyn-ink); font-weight: 600; letter-spacing: 0.02em; }
.journey .what { color: var(--ardyn-ink-muted); }
.journey .what code, .inspector code { font-family: var(--ardyn-mono-font); font-size: 11.5px; color: var(--ardyn-cyan-dim); }
.journey li.gap .stage { color: var(--ardyn-warning); }
.inspector .kv { display: flex; justify-content: space-between; gap: 16px; padding: 7px 0; border-bottom: 1px solid rgb(35 71 79 / 45%); font-size: 12.5px; }
.inspector .kv:last-of-type { border-bottom: none; }
.inspector .k { color: var(--ardyn-ink-muted); }
.inspector .v { color: var(--ardyn-ink-secondary); text-align: right; }
.inspector .v.neutral { color: var(--ardyn-ink-faint); }
.inspector .limit {
  margin-top: 14px; padding: 10px 12px; font-size: 12.5px; color: var(--ardyn-ink-secondary);
  border: 1px solid rgb(240 183 67 / 35%); background: rgb(240 183 67 / 6%); border-radius: 3px;
}
.inspector .limit b { color: var(--ardyn-warning); font-weight: 600; }

/* problem statement */
.problem { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 40px; align-items: center; }
.problem blockquote { margin: 0; font-family: var(--ardyn-display-font); font-size: 44px; line-height: 1.12; color: var(--ardyn-ink); }
.problem blockquote span { display: block; color: var(--ardyn-cyan); text-shadow: var(--ardyn-glow); }
.problem p { color: var(--ardyn-ink-secondary); font-size: 15.5px; margin: 0; }

.two-col { display: grid; grid-template-columns: 1fr 1fr; gap: var(--ardyn-panel-gap); }
.two-col p { color: var(--ardyn-ink-muted); margin: 10px 0 0; }
.two-col .not { color: var(--ardyn-ink-faint); font-size: 12.5px; border-top: 1px dashed rgb(35 71 79 / 60%); padding-top: 10px; margin-top: 14px; }

.define { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: var(--ardyn-panel-gap); }
.define ul { margin: 10px 0 0; padding-left: 18px; color: var(--ardyn-ink-muted); }
.define li { margin: 5px 0; }

.closing {
  position: relative; overflow: hidden; text-align: center;
  margin: 64px calc(-1 * var(--ardyn-gutter)) 0; padding: 80px var(--ardyn-gutter);
  border-top: 1px solid var(--ardyn-border);
}
.closing .inner { position: relative; z-index: 2; }
.closing h2 { font-family: var(--ardyn-display-font); font-weight: 400; font-size: 42px; line-height: 1.15; margin: 0 0 26px; }
.closing .actions { display: flex; justify-content: center; flex-wrap: wrap; gap: 12px; }

@media (max-width: 1400px) {
  .benefit-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 1024px) {
  .home-hero { padding: 48px 24px 40px; }
  .home-hero h1 { font-size: 50px; }
  .hero-emblem { width: 150px; top: 24px; opacity: 0.45; }
  .hero-caps { display: none; }
  .op-grid, .problem, .two-col, .define { grid-template-columns: minmax(0, 1fr); }
  .problem blockquote { font-size: 36px; }
}
@media (max-width: 560px) {
  .home-hero { margin: 0 -14px; padding: 36px 16px 32px; min-height: 0; }
  .home-hero h1 { font-size: 38px; }
  .home-hero .lede { font-size: 15.5px; }
  .hero-emblem { width: 110px; top: 14px; right: 10px; opacity: 0.3; }
  .benefit-grid { grid-template-columns: minmax(0, 1fr); }
  .section-head h2, .closing h2 { font-size: 30px; }
  .journey li { grid-template-columns: 28px minmax(0, 1fr); }
  .journey .what { grid-column: 2; }
  .op-grid > .panel { min-width: 0; }
  .panel-head { flex-wrap: wrap; }
  .label-chip { white-space: normal; }
  .closing { margin: 48px -14px 0; padding: 56px 16px; }
}
