/*
Theme Name: Oshan
Theme URI: https://oshan.ai
Author: BlueOshan AI Labs
Description: Marketing site theme for Oshan. Bootstrap 5 with a small set of overrides - the
  grid and components come from the framework, only the brand decisions live here.
Version: 1.0
License: GPL-2.0-or-later
Text Domain: oshan
*/

:root {
  --oshan-primary: #2456a6;
  --oshan-primary-dark: #1b4184;
  --oshan-ink: #12233d;
  --oshan-muted: #5a6b82;
  --oshan-line: #e3e8ef;
  --oshan-tint: #f5f8fc;
}

body {
  font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Inter, Roboto, Helvetica, Arial, sans-serif;
  color: var(--oshan-ink);
  font-size: 1.02rem;
  line-height: 1.7;
}

h1, h2, h3, h4 { font-weight: 700; letter-spacing: -0.02em; color: var(--oshan-ink); }
a { color: var(--oshan-primary); }
a:hover { color: var(--oshan-primary-dark); }

/* ── Header ─────────────────────────────────────────────────────────────── */
.navbar-oshan { background: #fff; border-bottom: 1px solid var(--oshan-line); }
.navbar-oshan .navbar-brand { font-weight: 800; font-size: 1.35rem; color: var(--oshan-primary); letter-spacing: -0.03em; }
.navbar-oshan .navbar-brand small { display: block; font-size: .62rem; font-weight: 600; letter-spacing: .14em;
  text-transform: uppercase; color: var(--oshan-muted); margin-top: -4px; }
.navbar-oshan .nav-link { color: var(--oshan-ink); font-weight: 500; padding: .5rem .9rem !important; }
.navbar-oshan .nav-link:hover,
.navbar-oshan .current-menu-item > .nav-link { color: var(--oshan-primary); }

/* ── Hero ───────────────────────────────────────────────────────────────── */
.hero {
  background: linear-gradient(160deg, #f7fafd 0%, #eef3fa 55%, #e7eef8 100%);
  border-bottom: 1px solid var(--oshan-line);
  padding: 5.5rem 0 5rem;
}
.hero h1 { font-size: clamp(2.2rem, 5vw, 3.6rem); line-height: 1.1; }
.hero .lead { color: var(--oshan-muted); font-size: 1.2rem; max-width: 46rem; }
.eyebrow {
  display: inline-block; font-size: .74rem; font-weight: 700; letter-spacing: .13em;
  text-transform: uppercase; color: var(--oshan-primary);
  background: rgba(36, 86, 166, .09); border-radius: 999px; padding: .38rem 1rem; margin-bottom: 1.25rem;
}

/* ── Cards ──────────────────────────────────────────────────────────────── */
.agent-card, .post-card {
  height: 100%; background: #fff; border: 1px solid var(--oshan-line); border-radius: 14px;
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.agent-card:hover, .post-card:hover {
  box-shadow: 0 12px 30px rgba(18, 35, 61, .09); transform: translateY(-3px);
  border-color: rgba(36, 86, 166, .3);
}
.agent-card .icon {
  width: 42px; height: 42px; border-radius: 11px; display: inline-flex; align-items: center;
  justify-content: center; background: rgba(36, 86, 166, .1); color: var(--oshan-primary);
  font-weight: 800; margin-bottom: .9rem;
}
.post-card .card-title { font-size: 1.18rem; line-height: 1.35; }
.post-card .card-title a { color: var(--oshan-ink); text-decoration: none; }
.post-card:hover .card-title a { color: var(--oshan-primary); }

.chip {
  display: inline-block; font-size: .72rem; font-weight: 600; letter-spacing: .04em;
  text-transform: uppercase; color: var(--oshan-primary); background: rgba(36, 86, 166, .08);
  border-radius: 999px; padding: .22rem .7rem;
}

/* ── Steps ──────────────────────────────────────────────────────────────── */
.step-num {
  width: 34px; height: 34px; border-radius: 50%; background: var(--oshan-primary); color: #fff;
  display: inline-flex; align-items: center; justify-content: center; font-weight: 700;
  font-size: .95rem; flex: 0 0 auto;
}

/* ── Long-form content ──────────────────────────────────────────────────── */
.entry-content { font-size: 1.06rem; }
.entry-content h2 { margin-top: 2.4rem; margin-bottom: .9rem; font-size: 1.6rem; }
.entry-content h3 { margin-top: 1.9rem; margin-bottom: .7rem; font-size: 1.24rem; }
.entry-content p, .entry-content li { color: #2b3d55; }
.entry-content ul, .entry-content ol { padding-left: 1.15rem; }
.entry-content li { margin-bottom: .45rem; }
.entry-content strong { color: var(--oshan-ink); }

.section-tint { background: var(--oshan-tint); }
.page-head { border-bottom: 1px solid var(--oshan-line); background: #fff; padding: 3.4rem 0 2.6rem; }

/* ── Footer ─────────────────────────────────────────────────────────────── */
.site-footer { background: var(--oshan-ink); color: #c3cfdf; padding: 3.2rem 0 2rem; margin-top: 5rem; }
.site-footer a { color: #fff; text-decoration: none; }
.site-footer a:hover { text-decoration: underline; }
.site-footer h6 { color: #fff; font-weight: 700; letter-spacing: .04em; margin-bottom: .9rem; }

.btn-oshan { background: var(--oshan-primary); border-color: var(--oshan-primary); color: #fff; font-weight: 600; }
.btn-oshan:hover { background: var(--oshan-primary-dark); border-color: var(--oshan-primary-dark); color: #fff; }
.btn-outline-oshan { border-color: var(--oshan-primary); color: var(--oshan-primary); font-weight: 600; }
.btn-outline-oshan:hover { background: var(--oshan-primary); color: #fff; }
