/*
Theme Name: Mesothelioma Resource
Theme URI: https://mesotheliomacancerlawsuit.com
Author: Mesothelioma Cancer & Lawsuit Resource
Description: Patient-first block theme for an independent mesothelioma education and attorney-connection publisher.
Version: 0.2.1
Requires at least: 6.6
Requires PHP: 8.0
Text Domain: mesothelioma-resource
*/

html { scroll-behavior: smooth; }
body { text-wrap: pretty; }
a { text-underline-offset: .18em; }
:focus-visible { outline: 3px solid #c99b55; outline-offset: 3px; }
.mr-container { width: min(1520px, calc(100% - 48px)); margin-inline: auto; }
.mr-utility { background:#0f6f75; color:#fff; font-size:.78rem; padding:.45rem 0; }
.mr-utility .mr-container { display:flex; justify-content:space-between; gap:1rem; }
.mr-header { background:#fff; border-bottom:1px solid #dce4e7; position:relative; z-index:10; }
.mr-header-inner { min-height:78px; display:flex; align-items:center; justify-content:space-between; gap:2rem; }
.mr-brand { display:flex; align-items:center; gap:.75rem; color:#15324a; text-decoration:none; font-family:var(--wp--preset--font-family--display); font-size:1.18rem; font-weight:700; line-height:1.05; }
.mr-mark { width:42px; height:48px; border-radius:4px 4px 18px 18px; background:#15324a; color:#fff; display:grid; place-items:center; font-size:1.35rem; }
.mr-nav { display:flex; align-items:center; gap:1.4rem; font-size:.9rem; font-weight:650; }
.mr-nav a { color:#15324a; text-decoration:none; }
.mr-nav a:hover { color:#147d7e; }
.mr-button, .wp-block-button__link { border-radius:4px !important; font-weight:700; padding:.85rem 1.2rem !important; text-decoration:none; display:inline-flex; align-items:center; justify-content:center; gap:.4rem; }
.mr-button-gold { background:#c99b55; color:#132d42 !important; }
.mr-button-teal { background:#147d7e; color:#fff !important; }
.mr-button-outline { background:transparent; color:#147d7e !important; border:1px solid #147d7e; }
.mr-hero { background:linear-gradient(105deg,#f8f6f1 0%,#fff 56%,#e9f3f3 100%); padding:0; overflow:hidden; }
.mr-hero-grid { display:grid; grid-template-columns:1.05fr .95fr; gap:4rem; align-items:center; }
.mr-hero-copy { padding:4.8rem 0; }
.mr-eyebrow { color:#147d7e; text-transform:uppercase; letter-spacing:.09em; font-size:.76rem; font-weight:800; }
.mr-hero h1 { font-size:clamp(2.7rem,5vw,4.65rem); line-height:1.02; max-width:760px; margin:.6rem 0 1.25rem; }
.mr-hero p { font-size:1.1rem; max-width:650px; color:#43525b; }
.mr-actions { display:flex; flex-wrap:wrap; gap:.8rem; margin-top:1.7rem; }
.mr-hero-visual { min-height:520px; align-self:stretch; background:#e8efef center/cover no-repeat; position:relative; box-shadow:-20px 0 50px rgba(21,50,74,.08); }
.mr-hero-visual img { width:100%; height:100%; min-height:520px; object-fit:cover; display:block; }
.mr-hero-visual:after { content:""; position:absolute; inset:0; box-shadow:inset 28px 0 35px -35px rgba(21,50,74,.35); pointer-events:none; }
.mr-trust { background:#eef6f7; border-block:1px solid #d4e7e8; }
.mr-trust-grid { display:grid; grid-template-columns:repeat(4,1fr); }
.mr-trust-item { padding:1.35rem; display:flex; gap:.75rem; align-items:center; border-right:1px solid #d4e1e4; }
.mr-trust-item:last-child { border-right:0; }
.mr-icon { width:42px; height:42px; border-radius:50%; background:#15324a; color:#fff; display:grid; place-items:center; flex:0 0 auto; }
.mr-section { padding:4.5rem 0; }
.mr-section h2 { font-size:clamp(2rem,3vw,3rem); margin:0 0 .7rem; }
.mr-intro { color:#56656d; max-width:720px; }
.mr-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:1rem; margin-top:2rem; }
.mr-card { border:1px solid #dbe3e6; border-radius:8px; padding:1.5rem; background:#fff; box-shadow:0 8px 24px rgba(21,50,74,.04); }
.mr-card h3 { margin:.8rem 0 .5rem; }
.mr-card p { color:#56656d; font-size:.94rem; }
.mr-guide { background:#f2f6f6; border-radius:12px; padding:clamp(1.5rem,4vw,3.5rem); display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:center; }
.mr-topic-list { list-style:none; padding:0; margin:1.5rem 0; }
.mr-topic-list li { border-bottom:1px solid #d4dddf; padding:.72rem 0; font-weight:650; }
.mr-lung-visual { display:grid; grid-template-columns:minmax(240px,1fr) minmax(160px,.65fr); gap:1.5rem; align-items:center; }
.mr-lung-visual img { width:100%; max-height:430px; object-fit:contain; filter:drop-shadow(0 14px 20px rgba(21,50,74,.1)); }
.mr-label { padding:.85rem 0 .85rem 1rem; border-left:2px solid #147d7e; margin:.8rem 0; }
.mr-label strong { display:block; color:#15324a; }
.mr-process { display:grid; grid-template-columns:repeat(4,1fr); gap:1.5rem; margin-top:2.5rem; counter-reset:steps; }
.mr-step { position:relative; padding-top:3.5rem; counter-increment:steps; }
.mr-step:before { content:counter(steps); position:absolute; top:0; left:0; width:38px; height:38px; display:grid; place-items:center; border-radius:50%; color:#fff; background:#15324a; font-weight:800; }
.mr-split { display:grid; grid-template-columns:1fr 1fr; gap:1.2rem; }
.mr-band { background:#15324a; color:#fff; padding:2rem; border-radius:8px; }
.mr-band h3 { color:#fff; }
.mr-news-grid { display:grid; grid-template-columns:1.15fr .85fr; gap:1.2rem; }
.mr-article-list { display:grid; gap:.85rem; }
.mr-article-row { display:grid; grid-template-columns:118px 1fr; gap:1rem; align-items:center; padding-bottom:.85rem; border-bottom:1px solid #dde5e7; }
.mr-article-thumb { aspect-ratio:16/10; border-radius:6px; background:linear-gradient(135deg,#8cb2b5,#e1eced); display:grid; place-items:center; color:#fff; font-size:1.7rem; }
.mr-article-row h3 { font-size:1rem; margin:0 0 .25rem; }
.mr-article-row p { margin:0; font-size:.86rem; color:#5b6b72; }
.mr-newsletter { background:linear-gradient(145deg,#0f6f75,#12354e); color:#fff; border-radius:9px; padding:2.2rem; position:relative; overflow:hidden; }
.mr-newsletter h2 { color:#fff; }
.mr-newsletter form { display:flex; margin-top:1.3rem; }
.mr-newsletter input { flex:1; min-width:0; border:0; border-radius:4px 0 0 4px; padding:.9rem; font:inherit; }
.mr-newsletter button { border:0; border-radius:0 4px 4px 0; background:#c99b55; color:#15324a; padding:0 1.2rem; font-weight:800; }
.mr-footer { background:#102e45; color:#dfe9ec; padding:3.5rem 0 1.5rem; }
.mr-footer-grid { display:grid; grid-template-columns:1.5fr repeat(3,1fr); gap:2rem; }
.mr-footer a { color:#fff; }
.mr-footer ul { list-style:none; padding:0; line-height:1.9; font-size:.88rem; }
.mr-fineprint { border-top:1px solid #486276; padding-top:1rem; margin-top:2rem; font-size:.75rem; }
.mr-breadcrumbs { font-size:.82rem; color:#64757e; padding:1.2rem 0; }
.mr-article-head { padding:2rem 0 1.5rem; }
.mr-article-head h1 { max-width:900px; font-size:clamp(2.5rem,5vw,4rem); line-height:1.08; margin:.5rem 0 1rem; }
.mr-byline { display:flex; flex-wrap:wrap; gap:1.5rem; border-block:1px solid #e1e7e9; padding:1rem 0; font-size:.86rem; }
.mr-avatar { width:44px; height:44px; border-radius:50%; background:#d9e9ea; display:inline-grid; place-items:center; margin-right:.5rem; }
.mr-content-grid { display:grid; grid-template-columns:minmax(0,760px) 300px; gap:3.5rem; align-items:start; }
.mr-prose { font-size:1.05rem; line-height:1.75; }
.mr-prose h2 { margin-top:2.3rem; font-size:2rem; }
.mr-keybox,.mr-notice { background:#eaf5f4; border-left:4px solid #147d7e; padding:1.4rem; border-radius:5px; margin:1.5rem 0; }
.mr-sidebar { position:sticky; top:1.5rem; }
.mr-sidebar .mr-card { margin-bottom:1rem; }
.mr-sidebar ul { padding-left:1.1rem; line-height:1.8; }
.mr-disclosure-card { background:#15324a; color:#fff; }
.mr-disclosure-card h3 { color:#fff; font-size:1.55rem; }
.mr-form-hero { background:linear-gradient(110deg,#f9f7f2,#eef7f7); padding:2.5rem 0 4rem; }
.mr-form-grid { display:grid; grid-template-columns:1fr 1fr; gap:3rem; align-items:start; }
.mr-form-card { background:#fff; border:1px solid #d6dfe2; box-shadow:0 12px 35px rgba(21,50,74,.12); border-radius:10px; overflow:hidden; }
.mr-form-card h2 { background:#15324a; color:#fff; padding:1.2rem 1.4rem; margin:0; font-size:1.5rem; }
.mr-form-body { padding:1.4rem; }
.mr-field { margin-bottom:1rem; }
.mr-field label { display:block; font-weight:750; margin-bottom:.35rem; }
.mr-field input,.mr-field select { width:100%; box-sizing:border-box; border:1px solid #a9b8bf; border-radius:4px; padding:.85rem; font:inherit; background:#fff; }
.mr-choice-grid { display:grid; grid-template-columns:1fr 1fr; gap:.7rem; }
.mr-choice { border:1px solid #bcc8cd; border-radius:5px; padding:1rem; }
.mr-form-disclosure { font-size:.74rem; line-height:1.45; color:#4b5c64; margin-top:.8rem; }
.mr-warning { background:#fbf4e8; border:1px solid #e7c98e; border-radius:8px; padding:1.5rem; }
.mr-table { width:100%; border-collapse:collapse; font-size:.88rem; }
.mr-table th { background:#15324a; color:#fff; text-align:left; }
.mr-table th,.mr-table td { padding:.8rem; border:1px solid #d6dfe2; vertical-align:top; }
.mr-independent { background:#0f6f75; color:#fff; padding:1.2rem 0; }
@media (max-width:900px) {
  .mr-nav { display:none; }
  .mr-hero-grid,.mr-guide,.mr-form-grid,.mr-content-grid,.mr-news-grid { grid-template-columns:1fr; }
  .mr-hero { padding-top:3rem; }
  .mr-hero-visual { min-height:280px; }
  .mr-hero-visual img { min-height:280px; }
  .mr-trust-grid,.mr-cards,.mr-process { grid-template-columns:repeat(2,1fr); }
  .mr-sidebar { position:static; }
  .mr-footer-grid { grid-template-columns:1fr 1fr; }
}
@media (max-width:600px) {
  .mr-container { width:min(100% - 28px,1520px); }
  .mr-utility .mr-container { display:block; }
  .mr-header-inner { min-height:68px; }
  .mr-brand { font-size:1rem; }
  .mr-header .mr-button { display:none; }
  .mr-trust-grid,.mr-cards,.mr-process,.mr-split,.mr-footer-grid,.mr-choice-grid { grid-template-columns:1fr; }
  .mr-trust-item { border-right:0; border-bottom:1px solid #d4e1e4; }
  .mr-section { padding:3rem 0; }
  .mr-actions { align-items:stretch; flex-direction:column; }
  .mr-actions a { width:100%; box-sizing:border-box; }
  .mr-table { display:block; overflow-x:auto; }
  .mr-lung-visual { grid-template-columns:1fr; }
  .mr-article-row { grid-template-columns:86px 1fr; }
  .mr-newsletter form { display:block; }
  .mr-newsletter input,.mr-newsletter button { width:100%; box-sizing:border-box; border-radius:4px; }
  .mr-newsletter button { margin-top:.5rem; padding:.9rem; }
}
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

/* Content heading hierarchy: the WordPress page title is the sole H1. */
.mr-section > h1,
.mr-article-head h1,
.wp-block-post-title:is(h1) {
  font-size: clamp(2.8rem, 4vw, 4rem);
  line-height: 1.08;
  margin-block: 0 1.25rem;
}

.mr-section h2,
.mr-prose h2 {
  font-size: clamp(2rem, 2.7vw, 2.7rem);
  line-height: 1.15;
}

.mr-section h3,
.mr-prose h3 {
  font-size: clamp(1.45rem, 2vw, 1.85rem);
  line-height: 1.2;
}

@media (max-width: 600px) {
  .mr-section > h1,
  .mr-article-head h1,
  .wp-block-post-title:is(h1) {
    font-size: clamp(2.35rem, 11vw, 3rem);
  }

  .mr-section h2,
  .mr-prose h2 {
    font-size: clamp(1.8rem, 8vw, 2.25rem);
  }
}

/* Additional separation before content H2 headings */
.wp-block-post-content h2,
.mr-prose h2 {
  margin-top: clamp(2.75rem, 4vw, 3.5rem);
  margin-bottom: 1rem;
}