/*
 * Visual refresh inspired by mockupy.css, 9 September 2026.
 * Paint and typography only: retain section order, grids, content and anchors.
 */
:root {
  --bg: #f5f5ef;
  --paper: #ffffff;
  --paper-solid: #ffffff;
  --ink: #202826;
  --muted: #59635f;
  --line: #dce1dc;
  --line-strong: #b7c3bb;
  --blue: #2458bd;
  --green: #315c4d;
  --violet: #2458bd;
  --rose: #2458bd;
  --shadow: 0 6px 20px #20282608;
}
body { background: var(--bg); line-height: 1.65; }
body::before { content: none; }
a { text-underline-offset: 4px; }
.site-header { border-bottom: 1px solid var(--line); gap: 24px; }
.brand-mark { display: none; }
.brand-name { gap: 0; font-size: 25px; letter-spacing: -.055em; }
.brand-name strong { font-weight: 750; }
.brand-name span { font-weight: 450; }
.brand-name .brand-domain { color: var(--blue); }
.nav { background: transparent; border: 0; border-radius: 0; backdrop-filter: none; gap: 8px; }
.nav a { padding: 10px 12px; font-weight: 500; }
.nav .nav-cta { border-radius: 3px; font-weight: 600; }
.nav .nav-guide { background: transparent; border: 0; border-radius: 0; color: var(--blue); font-weight: 550; }
.nav .nav-guide.active { background: var(--blue); color: white; }
.hero { min-height: auto; padding-top: 64px; padding-bottom: 64px; }
h1, h2, h3 { font-weight: 550; letter-spacing: -.035em; text-wrap: pretty; }
h1 { font-size: clamp(42px, 5.2vw, 72px); line-height: 1.08; letter-spacing: -.05em; }
h2 { font-size: clamp(30px, 3.15vw, 44px); line-height: 1.16; }
h3 { font-size: 23px; line-height: 1.3; }
.eyebrow { color: var(--green); font-size: 12px; font-weight: 600; letter-spacing: .025em; text-transform: none; }
.hero-lead, .article-lead { color: var(--muted); font-size: 20px; line-height: 1.65; }
.button { font-weight: 550; border-radius: 3px; font-size: 15px; }
.button.primary { box-shadow: none; }
.button.primary:hover, .nav .nav-cta:hover { background: #33403a; color: white; }
.button.secondary { background: transparent; border-color: var(--line-strong); }
.button.secondary:hover { background: white; }
.proof-strip div { background: transparent; padding: 16px 0; border: 0; border-top: 1px solid var(--line); border-radius: 0; backdrop-filter: none; }
.proof-strip dt { color: var(--muted); font-size: 12px; font-weight: 450; }
.proof-strip dd { font-size: 18px; line-height: 1.35; font-weight: 600; }
.hero-panel { background: white; border-color: var(--line); border-radius: 4px; box-shadow: none; backdrop-filter: none; padding: 26px; }
.panel-topline { color: var(--muted); font-weight: 500; font-size: 13px; }
.panel-topline strong { color: var(--blue); font-weight: 550; font-size: 13px; }
.structure-map { background: transparent; padding: 0; border: 0; border-radius: 0; gap: 0; margin-block: 20px; }
.structure-node, .structure-node.main, .structure-node.linked, .structure-node.accent {
  background: transparent; border: 0; border-top: 1px solid var(--line); border-radius: 0;
  padding: 14px 0; min-height: 0; box-shadow: none;
}
.structure-node:hover { transform: none; background: #f7f9fc; border-color: var(--line); }
.structure-node span, .structure-node.linked span, .structure-node.accent span { color: var(--blue); font-weight: 500; }
.structure-node strong { font-weight: 550; font-size: 18px; line-height: 1.35; }
.structure-node small, .action-list small { font-size: 13px; line-height: 1.55; }
.structure-connector { background: transparent; height: 3px; }
.action-list { border-top: 1px solid var(--line); gap: 0; padding-top: 8px; }
.action-list a { background: transparent; border: 0; border-radius: 0; padding: 12px 0; min-height: 0; }
.action-list a:hover { background: #f7f9fc; transform: none; }
.action-list strong { font-weight: 550; font-size: 14px; }
.action-dot, .action-dot.blue, .action-dot.violet, .action-dot.rose { background: var(--blue); box-shadow: none; width: 5px; height: 5px; border-radius: 0; }
.section { padding-top: 64px; padding-bottom: 64px; }
.content, .detail-copy p, .context-copy p, .format-copy p,
.manager-section .section-heading p:last-child, .measurement-section .section-heading p:last-child,
.industry-section .section-heading p:last-child, .bulk-section .section-heading p:last-child { color: var(--muted); font-size: 18px; }
.text-link { color: var(--blue); font-weight: 550; }
.market-note { background: #e9eee8; border: 0; border-left: 2px solid var(--green); border-radius: 0; padding: 18px 20px; }
.market-note span { color: var(--green); font-weight: 600; text-transform: none; }
.market-note p { color: #46534b; }
.availability-grid article, .manager-grid article, .checklist-grid div,
.card, .detail-list div, .technical-grid article, .bulk-grid article,
.industry-grid article, .hint-examples div, .steps li, .compare-grid div,
.article-steps div, .article-table div, .thanks-next div {
  background: white; border-color: var(--line); border-radius: 3px; box-shadow: none;
}
.manager-grid article, .technical-grid article, .bulk-grid article,
.industry-grid article, .steps li { background: transparent; border: 0; border-top: 1px solid var(--line-strong); padding-left: 0; padding-right: 16px; border-radius: 0; }
.status-pill { border: 0; border-radius: 2px; font-weight: 550; text-transform: none; }
.status-pill.live { background: #e9eee8; color: var(--green); }
.status-pill.beta { background: #edf2fa; color: var(--blue); }
.status-pill.wait { background: #f3efe3; color: #70521e; }
.card-index, .manager-grid article span, .hint-examples span, .article-steps span, .thanks-next span {
  color: var(--blue); font-weight: 550; text-transform: none;
}
.card-index, .manager-grid article span { margin-bottom: 22px; }
.ad-preview { background: white; border-radius: 3px; border-color: var(--line); box-shadow: none; }
.ad-label, .ad-favicon { border-radius: 3px; font-weight: 550; }
.ad-image { background: #edf2fa; color: var(--blue); border-radius: 2px; font-weight: 500; }
.metric-table { border-radius: 3px; background: white; }
.form-section--early { background: #edf1f7; border: 1px solid #d8dfeb; border-radius: 4px; padding: 42px; }
.lead-form { background: white; padding: 28px; border: 1px solid #d8dfeb; border-radius: 4px; box-shadow: none; gap: 20px; }
label { color: var(--ink); font-weight: 550; line-height: 1.5; }
input, select, textarea { background: white; border: 1px solid #85938b; border-radius: 3px; font-weight: 400; font-size: 16px; }
input::placeholder, textarea::placeholder { color: var(--muted); opacity: 1; }
input:focus, select:focus, textarea:focus { outline: 2px solid var(--blue); outline-offset: 2px; border-color: var(--blue); }
.form-note { font-size: 13px; line-height: 1.65; }
.form-preview-result { font-size: 15px; }
summary { font-size: 19px; font-weight: 550; line-height: 1.45; }
.site-footer a, .legal-page a { color: var(--blue); }
.site-footer .footer-brand { color: var(--ink); }
.footer-column a, .footer-link-button { color: var(--muted); }
.footer-column h2 { font-weight: 600; letter-spacing: 0; }
.cookie-banner { background: white; border-radius: 4px; backdrop-filter: none; box-shadow: 0 6px 24px #20282612; }
.local-preview-note { background: #f3efe3; border-bottom: 1px solid #e3dccb; color: #605338; font-size: 12px; }
.thanks-card { background: white; border-radius: 4px; box-shadow: none; backdrop-filter: none; }
.thanks-card h1, .legal-page h1 { font-size: clamp(38px, 4.8vw, 64px); line-height: 1.12; }
.thanks-card p, .legal-lead { color: var(--muted); font-size: 18px; }
.article-hero { padding-top: 64px; }
.article-hero h1 { max-width: 940px; font-size: clamp(40px, 4.8vw, 64px); }
.article-meta span { background: transparent; border: 0; border-radius: 0; padding: 0 14px 0 0; font-size: 13px; font-weight: 450; }
.article-toc { background: transparent; border: 0; border-left: 1px solid var(--line-strong); border-radius: 0; }
.article-toc a { padding-block: 4px; }
.article-content h2 { font-size: clamp(28px, 3vw, 38px); }
.article-content p, .article-content li { color: var(--muted); font-size: 18px; }
.article-callout { background: #e9eee8; border: 0; border-left: 2px solid var(--green); border-radius: 0; }
.article-cta { background: #edf1f7; border: 1px solid #d8dfeb; border-radius: 4px; padding: 28px; }
.report-reminder { width: min(1220px, calc(100% - 36px)); margin: 0 auto; }

@media (max-width: 920px) {
  .hero { padding-block: 40px; }
  .hero h1 { max-width: 720px; }
  .section { padding-block: 48px; }
  .form-section--early { padding: 30px; }
}
@media (max-width: 640px) {
  .site-header { padding-block: 20px; gap: 18px; }
  .brand-name { font-size: 24px; }
  .nav { gap: 4px; }
  .nav a { padding: 9px 10px; font-size: 13px; }
  .hero { gap: 30px; padding-block: 32px 40px; }
  h1, .article-hero h1, .thanks-card h1, .legal-page h1 { font-size: 40px; line-height: 1.1; }
  h2 { font-size: 31px; }
  h3 { font-size: 22px; }
  .hero-lead, .article-lead { font-size: 18px; }
  .hero-panel { padding: 22px; }
  .proof-strip { margin-top: 28px; gap: 0; }
  .proof-strip div { padding-block: 10px; }
  .proof-strip dd { font-size: 17px; }
  .section { padding-block: 42px; }
  .form-section--early { padding: 26px 18px; }
  .lead-form { padding: 22px 18px; }
  .article-hero { padding-block: 40px 32px; }
  .article-content h2 { font-size: 29px; }
  .article-cta { padding: 22px; }
  summary { font-size: 18px; }
}
