/* Header and footer replace Riff / ThemeREX theme layouts. */
.plm-site-header { position:relative; z-index:200; background:rgba(240,248,252,.98); border-bottom:1px solid rgba(18,22,25,.08); }
.plm-header-inner { min-height:96px; display:grid; grid-template-columns: 150px 1fr auto; align-items:center; gap:24px; }
.plm-brand {display:inline-flex;align-items:center;max-width:120px;}
.plm-brand img { max-height:85px; width:auto; height:auto; display:block; object-fit:contain; }
.plm-site-header a, .plm-site-footer a {text-decoration:none;}
.plm-nav-list { display:flex; align-items:center; justify-content:center; gap:clamp(14px,2.4vw,36px); margin:0; padding:0; list-style:none; }
.plm-nav-list li {list-style:none;position:relative;}
.plm-nav-list a {display:block;padding:10px 0;color:var(--plm-ink);font-size:14px;font-weight:600;white-space:nowrap;}
.plm-nav-list a:hover, .plm-nav-list .current-menu-item > a, .plm-nav-list .current_page_item > a {color:var(--plm-blue);}
/* Header desktop navigation: +2 px, retaining footer menu sizing. */
.plm-desktop-nav .plm-nav-list a {font-size:16px;line-height:1.4;}
.plm-nav-list .sub-menu {display:none;position:absolute;top:100%;min-width:170px;background:#fff;padding:6px 12px;box-shadow:0 10px 25px rgba(0,0,0,.12);z-index:6;}
.plm-nav-list li:hover > .sub-menu, .plm-nav-list li:focus-within > .sub-menu {display:block;}
.plm-social {display:flex;align-items:center;gap:14px;}
.plm-social a {display:flex;align-items:center;justify-content:center;color:var(--plm-ink);min-width:18px;min-height:26px;font-size:12px;font-weight:700;letter-spacing:-.02em;}
.plm-social a:hover {color:var(--plm-blue);}
/* Social symbols: enlarged from 12 px to 16 px in the header only. */
.plm-header-social {gap:12px;}
.plm-header-social a {font-size:16px;min-width:26px;min-height:34px;letter-spacing:0;}
.plm-mobile-nav {display:none;}
.plm-site-footer {background:var(--plm-page-bg);padding:48px 0 28px;border-top:1px solid var(--plm-border);text-align:center;}
.plm-footer-logo {max-width:min(100%,330px);height:auto;display:block;margin:0 auto 20px;}
.plm-site-footer h2 {font:700 clamp(1.5rem,2.5vw,2.2rem)/1.2 var(--plm-head-font);color:var(--plm-ink);margin:8px 0 25px;}
.plm-footer-nav .plm-nav-list {margin:8px auto 28px;gap:28px;flex-wrap:wrap;}
.plm-footer-social {justify-content:center;margin:10px auto 26px;}
.plm-footer-divider {border:0;border-top:1px solid var(--plm-border);margin:32px 0 20px;}
.plm-footer-bottom {display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;font-size:14px;}
.plm-footer-bottom p {margin:0;}
.plm-footer-contact {margin:18px 0 0;text-align:right;font-size:13px;}
@media (max-width: 980px) {
  .plm-header-inner {min-height:80px;grid-template-columns:100px 1fr auto;gap:12px;}
  .plm-brand img {max-height:70px;}
  .plm-desktop-nav {display:none;}
  .plm-mobile-nav {display:block;grid-column:3;position:relative;}
  .plm-mobile-nav summary {list-style:none;cursor:pointer;display:flex;justify-content:center;align-items:center;width:44px;height:44px;border:1px solid var(--plm-border);font-size:23px;line-height:1;color:var(--plm-ink);}
  .plm-mobile-nav summary::-webkit-details-marker {display:none;}
  .plm-mobile-nav[open] .plm-mobile-nav-menu {display:block;}
  .plm-mobile-nav-menu {position:absolute;right:0;top:calc(100% + 12px);width:min(86vw,320px);padding:12px 22px;background:#fff;box-shadow:0 12px 26px rgba(0,0,0,.15);z-index:200;}
  .plm-mobile-nav-menu .plm-nav-list {display:block;}
  .plm-mobile-nav-menu .plm-nav-list a {font-size:16px;border-bottom:1px solid var(--plm-border);padding:12px 0;}
  .plm-mobile-nav-menu .plm-nav-list .sub-menu {display:block;position:static;box-shadow:none;padding-left:14px;}
  .plm-header-social {display:none;}
}
@media (max-width:767px){
 .plm-site-footer {padding:32px 0 24px;}
 .plm-footer-nav .plm-nav-list {gap:12px 24px;}
 .plm-footer-bottom {justify-content:center;text-align:center;}
 .plm-footer-contact {text-align:center;}
}
