/* public/styles/home.css — homepage-only (hero, sections, blog feed) */

.sec-block { padding: 62px 0; }
.section-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 20px; margin-bottom: 30px; }
.section-head .sh-left .lbl { font-family: var(--font-mono); font-size: 12.5px; letter-spacing: .1em; text-transform: uppercase; color: var(--accent); margin-bottom: 10px; display: block; }
.section-head h2 { font-family: var(--font-sans); font-weight: 750; letter-spacing: -.025em; font-size: clamp(26px, 3vw, 36px); }
.section-head .more { font-family: var(--font-mono); font-size: 13.5px; color: var(--accent); display: inline-flex; align-items: center; gap: 7px; transition: .18s var(--ease); white-space: nowrap; padding-bottom: 6px; }
.section-head .more:hover { gap: 11px; }

/* hero (centered) */
.hero { padding: 56px 0 16px; }
.hero-c { text-align: center; }
.hero-c .eyebrow { margin-bottom: 26px; }
.hero-c h1 { font-size: clamp(42px, 7vw, 92px); margin: 0 auto 26px; max-width: 15ch; }
.hero-c .lead { max-width: 52ch; margin: 0 auto 32px; }
.hero-cta { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; justify-content: center; }
.hero-c .today { max-width: 720px; margin: 50px auto 0; text-align: left; }

/* pinned blog */
.pinned { display: block; padding: 32px; border-radius: var(--radius-lg); margin-bottom: 14px; position: relative; overflow: hidden; transition: .25s var(--ease); cursor: pointer; color: inherit; }
.pinned::before { content: ""; position: absolute; inset: 0; background: radial-gradient(120% 140% at 100% 0%, var(--accent-soft), transparent 55%); opacity: .8; pointer-events: none; }
.pinned:hover { transform: translateY(-3px); box-shadow: var(--shadow-lg), inset 0 1.5px 0 var(--rim); }
.pinned .row1 { display: flex; align-items: center; gap: 12px; margin-bottom: 20px; flex-wrap: wrap; position: relative; }
.pinned h3 { font-family: var(--font-sans); font-weight: 750; letter-spacing: -.025em; font-size: clamp(22px, 2.7vw, 32px); line-height: 1.08; margin-bottom: 14px; max-width: 24ch; position: relative; }
.pinned p { color: var(--ink-soft); font-size: 15.5px; max-width: 62ch; margin-bottom: 22px; position: relative; text-wrap: pretty; }
.pinned .row2 { display: flex; align-items: center; justify-content: space-between; gap: 12px; position: relative; flex-wrap: wrap; }
.pinned .date { font-family: var(--font-mono); font-size: 12.5px; color: var(--ink-faint); }
.pinned .read { font-family: var(--font-mono); font-size: 13px; color: var(--accent); display: inline-flex; align-items: center; gap: 7px; transition: .2s; }
.pinned:hover .read { gap: 11px; }

/* feed rows */
.feed-rows { display: flex; flex-direction: column; gap: 8px; }
.frow { display: grid; grid-template-columns: 160px 1fr auto 26px; gap: 20px; align-items: center; padding: 16px 22px; border-radius: 14px; border: 1px solid var(--line); background: var(--glass-strong); box-shadow: inset 0 1.5px 0 var(--rim); transition: .2s var(--ease); cursor: pointer; color: inherit; }
.frow:hover { transform: translateX(4px); border-color: color-mix(in srgb, var(--accent) 32%, transparent); }
.frow .ftags { font-family: var(--font-mono); font-size: 11.5px; color: var(--accent); display: flex; gap: 6px; flex-wrap: wrap; }
.frow .ft { font-size: 15px; font-weight: 550; letter-spacing: -.01em; text-wrap: balance; }
.frow .fd { font-family: var(--font-mono); font-size: 12px; color: var(--ink-faint); white-space: nowrap; }
.frow .fa { color: var(--ink-faint); transition: .2s var(--ease); text-align: right; }
.frow:hover .fa { color: var(--accent); transform: translateX(3px); }

/* apps list wrapper */
.apps { display: flex; flex-direction: column; gap: 10px; }

@media (max-width: 840px) {
  .frow { grid-template-columns: 1fr auto; gap: 8px 16px; }
  .frow .ftags { grid-column: 1 / -1; order: -1; }
  .frow .fa { display: none; }
}
