:root {
  --pmg-green: #657d52;
  --pmg-green-deep: #4e6540;
  --pmg-ink: #242523;
  --pmg-muted: #74766f;
  --pmg-line: #e9eae5;
  --pmg-soft: #f7f8f4;
  --pmg-paper: #ffffff;
  --pmg-max: 1392px;
  --pmg-reading: 760px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body.pmg-newsroom-site { margin:0; color:var(--pmg-ink); background:var(--pmg-paper); -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility; }
body.admin-bar .pmg-site-header { top:32px; }
.pmg-newsroom-site .content-area,.pmg-newsroom-site .site-main,.pmg-newsroom-site .entry-content-wrap,.pmg-newsroom-site .content-container,.pmg-newsroom-site .site-container { margin:0; padding:0; max-width:none; }
.pmg-container { width:min(calc(100% - 88px),var(--pmg-max)); margin-inline:auto; }
.pmg-main { background:var(--pmg-paper); }
.pmg-skip-link:focus { position:fixed; z-index:10000; top:10px; left:10px; padding:10px 14px; background:#fff; color:#000; }

/* Header */
.pmg-site-header { position:sticky; z-index:100; top:0; background:rgba(255,255,255,.97); border-bottom:1px solid var(--pmg-line); backdrop-filter:blur(12px); }
.pmg-header-inner { min-height:76px; display:flex; align-items:center; justify-content:space-between; gap:36px; }
.pmg-brand { display:flex; align-items:baseline; gap:18px; min-width:0; }
.pmg-site-name { color:var(--pmg-ink); font-size:clamp(1.05rem,1.4vw,1.35rem); font-weight:700; letter-spacing:-.025em; text-decoration:none; white-space:nowrap; }
.pmg-newsroom-label { color:var(--pmg-muted); font-size:.7rem; font-weight:700; letter-spacing:.15em; text-transform:uppercase; }
.pmg-brand .custom-logo { display:block; width:auto; max-height:46px; }
.pmg-menu,.pmg-footer-menu { display:flex; align-items:center; gap:34px; margin:0; padding:0; list-style:none; }
.pmg-menu a { color:var(--pmg-ink); font-size:.74rem; font-weight:700; letter-spacing:.11em; text-decoration:none; text-transform:uppercase; }
.pmg-menu a:hover,.pmg-menu a:focus { color:var(--pmg-green-deep); }

/* Editorial hero */
.pmg-editorial-hero { background:#fff; padding:52px 0 48px; border-bottom:1px solid var(--pmg-line); }
.pmg-editorial-grid { display:grid; grid-template-columns:minmax(0,1.48fr) minmax(300px,.62fr); gap:72px; align-items:center; }
.pmg-editorial-hero.no-media .pmg-editorial-grid { grid-template-columns:minmax(0,940px); }
.pmg-editorial-copy { min-width:0; }
.pmg-title { margin:0; max-width:930px; color:var(--pmg-ink); font-size:clamp(2.55rem,3.55vw,4rem); font-weight:400; line-height:1.12; letter-spacing:-.04em; }
.pmg-title a { color:inherit; text-decoration:none; }
.pmg-kicker,.pmg-teaser,.pmg-article-content p,.pmg-article-content li { font-size:1.13rem; }
.pmg-kicker { max-width:800px; margin:0 0 20px; color:var(--pmg-green); font-weight:650; line-height:1.52; }
.pmg-teaser { max-width:760px; margin:28px 0 0; color:var(--pmg-ink); font-weight:650; line-height:1.62; }
.pmg-date { margin:20px 0 0; color:#858781; font-size:.72rem; letter-spacing:.08em; text-transform:uppercase; }
.pmg-hero-media { margin:0; align-self:center; }
.pmg-hero-frame { aspect-ratio:4/3; overflow:hidden; background:var(--pmg-soft); border-radius:2px; }
.pmg-hero-frame img { width:100%; height:100%; object-fit:cover; }
.pmg-hero-media figcaption { margin-top:8px; color:var(--pmg-muted); font-size:.7rem; line-height:1.45; }

/* Article */
.pmg-article-shell { display:grid; grid-template-columns:minmax(0,var(--pmg-reading)) minmax(260px,1fr); gap:100px; align-items:start; padding-top:44px; padding-bottom:88px; }
.pmg-article-content { grid-column:1; }
.pmg-article-content > *:first-child { margin-top:0; }
.pmg-article-content p,.pmg-article-content li { line-height:1.76; }
.pmg-article-content p { margin:0 0 1.5em; }
.pmg-article-content h2 { margin:2.2em 0 .68em; color:var(--pmg-ink); font-size:1.72rem; font-weight:620; line-height:1.28; letter-spacing:-.018em; }
.pmg-article-content h3 { margin:1.9em 0 .65em; font-size:1.34rem; font-weight:650; }
.pmg-article-content a { color:var(--pmg-green-deep); text-decoration-thickness:1px; text-underline-offset:.14em; }
.pmg-article-content blockquote { margin:2.2em 0; padding-left:28px; border-left:3px solid var(--pmg-green); font-size:1.28rem; line-height:1.6; }
.pmg-article-content ul,.pmg-article-content ol { padding-left:1.25em; }

/* Article tools */
.pmg-article-tools { grid-column:2; display:grid; gap:34px; align-self:start; }
.pmg-tool-section { border-top:1px solid var(--pmg-line); padding-top:18px; }
.pmg-tool-section h2 { margin:0 0 18px; font-size:.72rem; font-weight:750; letter-spacing:.105em; text-transform:uppercase; }
.pmg-download-item { display:flex; align-items:center; justify-content:space-between; gap:24px; padding:16px 0; border-bottom:1px solid var(--pmg-line); color:inherit; text-decoration:none; }
.pmg-download-copy { display:grid; gap:4px; }
.pmg-download-copy strong { font-size:.95rem; font-weight:620; line-height:1.35; }
.pmg-download-copy small { color:var(--pmg-muted); font-size:.7rem; letter-spacing:.045em; }
.pmg-download-arrow { color:var(--pmg-green-deep); font-size:1.25rem; }
.pmg-contact-name { display:block; font-size:1rem; font-weight:650; }
.pmg-contact-role { margin:5px 0 15px; color:var(--pmg-muted); font-size:.85rem; line-height:1.45; }
.pmg-contact-links { display:grid; gap:7px; }
.pmg-contact-links a { color:var(--pmg-ink); font-size:.88rem; text-decoration:none; }
.pmg-contact-links a:hover { color:var(--pmg-green-deep); }

/* Existing homepage/archive */
.pmg-home-kicker { margin:0 0 18px; color:var(--pmg-green); font-size:.78rem; font-weight:720; letter-spacing:.085em; text-transform:uppercase; }
.pmg-home-teaser { max-width:700px; margin:24px 0 0; color:#484a47; font-size:1.05rem; line-height:1.62; }
.pmg-hero-meta { display:flex; align-items:center; justify-content:space-between; gap:24px; max-width:710px; }
.pmg-more-link { display:inline-flex; margin-top:24px; color:var(--pmg-green-deep); font-size:.76rem; font-weight:700; letter-spacing:.09em; text-transform:uppercase; text-decoration:none; }
.pmg-news-section { border-top:1px solid var(--pmg-line); padding:44px 0 64px; }
.pmg-section-head { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px; }
.pmg-section-head h2 { margin:0; font-size:.78rem; letter-spacing:.1em; text-transform:uppercase; }
.pmg-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:30px; }
.pmg-card-image { display:block; aspect-ratio:16/10; overflow:hidden; margin-bottom:18px; background:var(--pmg-soft); }
.pmg-card-image img { width:100%; height:100%; object-fit:cover; }
.pmg-card-kicker { margin:0 0 8px; color:var(--pmg-green); font-size:.68rem; font-weight:720; letter-spacing:.085em; text-transform:uppercase; }
.pmg-card h3 { margin:0; font-size:1.12rem; font-weight:500; line-height:1.38; }
.pmg-card h3 a { color:inherit; text-decoration:none; }
.pmg-card .pmg-date { margin-top:14px; }
.pmg-empty-state { padding-block:100px; }
.pmg-archive-header { padding:68px 0 34px; }
.pmg-archive-header h1 { margin:0; font-size:clamp(2.2rem,4vw,4rem); font-weight:400; letter-spacing:-.03em; }
.pmg-archive-list { padding-bottom:90px; }
.pmg-archive-item { display:grid; grid-template-columns:150px minmax(0,1fr); gap:12px 38px; padding:34px 0; border-top:1px solid var(--pmg-line); }
.pmg-archive-item .pmg-date { grid-column:1; grid-row:1/4; margin:4px 0 0; }
.pmg-archive-item .pmg-card-kicker,.pmg-archive-item h2,.pmg-archive-item>p:last-child { grid-column:2; }
.pmg-archive-item h2 { margin:0; font-size:1.65rem; font-weight:480; line-height:1.3; }
.pmg-archive-item h2 a { color:inherit; text-decoration:none; }

/* Footer */
.pmg-site-footer { border-top:1px solid var(--pmg-line); background:var(--pmg-soft); }
.pmg-footer-inner { min-height:150px; display:flex; align-items:center; justify-content:space-between; gap:40px; }
.pmg-footer-inner strong { font-size:1rem; }
.pmg-footer-inner p { margin:6px 0 0; color:var(--pmg-muted); font-size:.85rem; }
.pmg-footer-meta { display:flex; align-items:center; gap:26px; color:var(--pmg-muted); font-size:.78rem; }
.pmg-footer-menu a { color:inherit; text-decoration:none; }

@media (max-width:980px) {
  .pmg-container { width:min(calc(100% - 44px),var(--pmg-max)); }
  .pmg-header-inner { min-height:70px; }
  .pmg-newsroom-label { display:none; }
  .pmg-menu { gap:18px; }
  .pmg-editorial-grid,.pmg-editorial-hero.no-media .pmg-editorial-grid { grid-template-columns:1fr; gap:30px; }
  .pmg-editorial-hero { padding:40px 0 38px; }
  .pmg-hero-media { max-width:600px; }
  .pmg-article-shell { grid-template-columns:1fr; gap:48px; padding-top:40px; }
  .pmg-article-content,.pmg-article-tools { grid-column:1; }
  .pmg-article-tools { max-width:560px; }
  .pmg-cards { grid-template-columns:repeat(2,1fr); }
}
@media (max-width:680px) {
  body.admin-bar .pmg-site-header { top:46px; }
  .pmg-container { width:calc(100% - 28px); }
  .pmg-header-inner { min-height:66px; }
  .pmg-site-name { font-size:1rem; white-space:normal; }
  .pmg-primary-nav { display:none; }
  .pmg-editorial-hero { padding:32px 0 30px; }
  .pmg-title { font-size:2.08rem; line-height:1.17; }
  .pmg-kicker,.pmg-teaser,.pmg-article-content p,.pmg-article-content li { font-size:1.06rem; }
  .pmg-teaser { margin-top:20px; }
  .pmg-date { margin-top:17px; }
  .pmg-article-shell { padding-top:32px; padding-bottom:62px; }
  .pmg-article-content h2 { font-size:1.5rem; }
  .pmg-cards { grid-template-columns:1fr; }
  .pmg-footer-inner,.pmg-footer-meta { align-items:flex-start; flex-direction:column; }
  .pmg-footer-inner { justify-content:center; padding:34px 0; }
}

/* 0.4.2 – stronger brand header and automatic media downloads */
.pmg-header-inner { min-height:92px; }
.pmg-brand { align-items:center; gap:26px; }
.pmg-brand .custom-logo-link { display:flex; align-items:center; flex:0 0 auto; }
.pmg-brand .custom-logo { width:auto !important; height:auto !important; max-width:245px !important; max-height:66px !important; object-fit:contain; }
.pmg-newsroom-label { display:inline-block !important; flex:0 0 auto; white-space:nowrap; font-size:.76rem; letter-spacing:.19em; }

.pmg-hero-frame { aspect-ratio:4/3; border-radius:0; }
.pmg-hero-frame img { display:block; }
.pmg-hero-media figcaption { max-width:100%; margin-top:9px; font-size:.72rem; line-height:1.45; }

.pmg-media-list { display:grid; gap:20px; }
.pmg-media-item { display:grid; grid-template-columns:112px minmax(0,1fr); gap:16px; align-items:start; color:inherit; text-decoration:none; }
.pmg-media-thumb { display:flex; align-items:center; justify-content:center; width:112px; aspect-ratio:4/3; overflow:hidden; background:var(--pmg-soft); border:1px solid var(--pmg-line); }
.pmg-media-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.pmg-media-logo { padding:12px; background:#fff; }
.pmg-media-logo img { object-fit:contain; }
.pmg-media-copy { display:grid; gap:5px; min-width:0; padding-top:2px; }
.pmg-media-copy strong { font-size:.91rem; font-weight:650; line-height:1.35; }
.pmg-media-copy small { color:var(--pmg-muted); font-size:.68rem; line-height:1.4; letter-spacing:.025em; }
.pmg-media-action { margin-top:3px; color:var(--pmg-green-deep); font-size:.72rem; font-weight:700; letter-spacing:.065em; text-transform:uppercase; }
.pmg-media-item:hover .pmg-media-action,.pmg-media-item:focus .pmg-media-action { text-decoration:underline; text-underline-offset:.18em; }

@media (max-width:980px) {
  .pmg-header-inner { min-height:82px; }
  .pmg-brand .custom-logo { max-width:205px !important; max-height:58px !important; }
  .pmg-newsroom-label { display:inline-block !important; }
}
@media (max-width:680px) {
  .pmg-header-inner { min-height:74px; }
  .pmg-brand { gap:13px; }
  .pmg-brand .custom-logo { max-width:154px !important; max-height:49px !important; }
  .pmg-newsroom-label { font-size:.61rem; letter-spacing:.13em; }
  .pmg-media-item { grid-template-columns:96px minmax(0,1fr); gap:13px; }
  .pmg-media-thumb { width:96px; }
}

/* 0.5.0 – legal pages, press contact and hardened homepage */
.pmg-grid-no-media { grid-template-columns:minmax(0,940px); }
.pmg-page-shell { max-width:980px; padding-top:64px; padding-bottom:96px; }
.pmg-page-header { margin-bottom:38px; padding-bottom:28px; border-bottom:1px solid var(--pmg-line); }
.pmg-page-header h1 { margin:0; font-size:clamp(2.35rem,4vw,4rem); font-weight:400; line-height:1.1; letter-spacing:-.035em; }
.pmg-page-content { max-width:780px; }
.pmg-page-content h2 { margin:2.1em 0 .65em; font-size:1.45rem; line-height:1.3; }
.pmg-page-content p,.pmg-page-content li { font-size:1.04rem; line-height:1.72; }
.pmg-page-content a { color:var(--pmg-green-deep); text-underline-offset:.14em; }
.pmg-footer-menu { flex-wrap:wrap; gap:20px; }
.pmg-footer-menu a:hover,.pmg-footer-menu a:focus { color:var(--pmg-green-deep); }

@media (max-width:1100px) {
  .pmg-cards { grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (max-width:760px) {
  .pmg-cards { grid-template-columns:1fr; gap:40px; }
  .pmg-card { width:100%; }
  .pmg-card-image { aspect-ratio:16/9; }
  .pmg-section-head { align-items:flex-start; }
  .pmg-section-head a { text-align:right; }
  .pmg-page-shell { padding-top:42px; padding-bottom:68px; }
}
@media (max-width:680px) {
  .pmg-footer-meta { width:100%; gap:18px; }
  .pmg-footer-menu { align-items:flex-start; flex-direction:column; gap:10px; }
}


/* 0.5.2 – align article hero media with the downloads column */
@media (min-width:981px) {
  .pmg-article-page .pmg-editorial-grid {
    grid-template-columns:minmax(0,var(--pmg-reading)) minmax(260px,1fr);
    gap:100px;
  }
}

/* 0.5.3 – complete press archive and archive search */
.pmg-archive-header { padding-bottom:40px; }
.pmg-archive-search { display:flex; align-items:center; gap:12px; max-width:820px; margin-top:34px; }
.pmg-archive-search input[type="search"] { flex:1 1 auto; min-width:0; height:52px; padding:0 17px; border:1px solid #cfd1cb; border-radius:0; background:#fff; color:var(--pmg-ink); font:inherit; font-size:1rem; box-shadow:none; }
.pmg-archive-search input[type="search"]:focus { outline:2px solid var(--pmg-green); outline-offset:2px; border-color:var(--pmg-green); }
.pmg-archive-search button { flex:0 0 auto; height:52px; padding:0 23px; border:1px solid var(--pmg-green-deep); border-radius:0; background:var(--pmg-green-deep); color:#fff; font-size:.75rem; font-weight:750; letter-spacing:.08em; text-transform:uppercase; cursor:pointer; }
.pmg-archive-search button:hover,.pmg-archive-search button:focus { background:var(--pmg-green); border-color:var(--pmg-green); }
.pmg-search-reset { flex:0 0 auto; color:var(--pmg-muted); font-size:.82rem; text-underline-offset:.16em; }
.pmg-search-summary { margin:20px 0 0; color:var(--pmg-muted); font-size:.9rem; }
.pmg-archive-list { padding-bottom:96px; }
.pmg-archive-item { display:grid; grid-template-columns:130px 250px minmax(0,1fr); gap:28px 38px; align-items:start; padding:38px 0; }
.pmg-archive-meta { grid-column:1; }
.pmg-archive-item .pmg-date { margin:4px 0 0; }
.pmg-archive-thumb { grid-column:2; display:block; aspect-ratio:16/10; overflow:hidden; background:var(--pmg-soft); }
.pmg-archive-thumb img { display:block; width:100%; height:100%; object-fit:cover; }
.pmg-archive-copy { grid-column:3; min-width:0; }
.pmg-archive-copy .pmg-card-kicker { margin-bottom:9px; }
.pmg-archive-item h2 { margin:0; font-size:clamp(1.45rem,2vw,2rem); line-height:1.23; }
.pmg-archive-teaser { max-width:760px; margin:13px 0 0; color:#555751; font-size:1rem; line-height:1.62; }
.pmg-archive-more { display:inline-flex; margin-top:18px; color:var(--pmg-green-deep); font-size:.72rem; font-weight:750; letter-spacing:.075em; text-decoration:none; text-transform:uppercase; }
.pmg-archive-more:hover,.pmg-archive-more:focus { text-decoration:underline; text-underline-offset:.2em; }
.pmg-no-results { padding:52px 0 80px; border-top:1px solid var(--pmg-line); }
.pmg-no-results h2 { margin:0 0 10px; font-size:1.7rem; font-weight:500; }
.pmg-no-results p { margin:0 0 18px; color:var(--pmg-muted); }
.pmg-no-results a { color:var(--pmg-green-deep); }

@media (max-width:980px) {
  .pmg-archive-item { grid-template-columns:110px 220px minmax(0,1fr); gap:24px; }
}
@media (max-width:760px) {
  .pmg-archive-search { align-items:stretch; flex-wrap:wrap; }
  .pmg-archive-search input[type="search"] { flex-basis:calc(100% - 112px); }
  .pmg-search-reset { width:100%; }
  .pmg-archive-item { grid-template-columns:1fr; gap:15px; padding:32px 0; }
  .pmg-archive-meta,.pmg-archive-thumb,.pmg-archive-copy { grid-column:1; }
  .pmg-archive-thumb { width:100%; max-width:520px; }
  .pmg-archive-item .pmg-date { margin:0; }
}
