/*
Theme Name: Psychology Bit
Template: astra
Author: Angelo
Description: Psychology Bit child theme — light editorial design, custom homepage, auto article listing.
Version: 1.0.0
*/

:root{
  --pb-bg:#eef3f8; --pb-surface:#fff; --pb-ink:#16273b; --pb-muted:#56697d;
  --pb-accent:#236494; --pb-accent-deep:#173f5f; --pb-line:#d6e1ec;
  --pb-serif:"Lora",Georgia,serif; --pb-sans:"Inter",-apple-system,"Segoe UI",sans-serif;
}
body{background:var(--pb-bg)}
.pb-wrap{max-width:1080px;margin:0 auto;padding:0 24px}
.pb-hero{padding:76px 0 56px}
.pb-eyebrow{font-family:var(--pb-sans);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--pb-accent);margin:0}
.pb-h1{font-family:var(--pb-serif);font-weight:700;font-size:clamp(32px,5vw,52px);line-height:1.1;letter-spacing:-.02em;color:var(--pb-accent-deep);margin:16px 0 18px;max-width:18ch}
.pb-lede{font-family:var(--pb-sans);font-size:clamp(17px,2.2vw,21px);color:var(--pb-muted);max-width:54ch;margin:0}
.pb-section{padding:36px 0 12px}
.pb-section-head{font-family:var(--pb-serif);font-weight:600;font-size:14px;letter-spacing:.1em;text-transform:uppercase;color:var(--pb-accent);margin:0 0 20px}
.pb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.pb-card{display:block;background:var(--pb-surface);border:1px solid var(--pb-line);border-radius:14px;padding:24px;text-decoration:none;transition:transform .15s,box-shadow .15s,border-color .15s}
.pb-card:hover{transform:translateY(-3px);box-shadow:0 12px 30px rgba(23,63,95,.08);border-color:var(--pb-accent)}
.pb-card h3{font-family:var(--pb-serif);font-size:20px;font-weight:600;color:var(--pb-accent-deep);margin:0 0 8px}
.pb-card p{font-family:var(--pb-sans);font-size:15px;color:var(--pb-muted);margin:0}
.pb-about{margin:56px 0 24px;background:var(--pb-surface);border:1px solid var(--pb-line);border-radius:16px;padding:40px}
.pb-about h2{font-family:var(--pb-serif);font-size:24px;font-weight:600;color:var(--pb-accent-deep);margin:0 0 12px}
.pb-about p{font-family:var(--pb-sans);font-size:16.5px;color:var(--pb-muted);max-width:64ch;margin:0 0 12px}
@media(max-width:760px){.pb-grid{grid-template-columns:1fr}.pb-about{padding:28px 22px}}

/* Tighten primary nav to fit one line on desktop, force no-wrap above mobile breakpoint */
.main-header-menu .menu-item > a{
  font-size:13.5px;
  padding-left:10px !important;
  padding-right:10px !important;
  white-space:nowrap;
}
.ast-header-break-point .main-header-bar-navigation ul.main-header-menu{
  flex-wrap:nowrap !important;
}
.site-title, .ast-site-title{
  font-size:20px !important;
}
