/* Peaklivo – "Trailhead" design. Every guide is a trail up a peak: sections are camps, pillars are trails with their own
   painted blaze colour (like US hiking-trail markers), the background motif is a topographic map.
   Loaded from the child theme (css/peaklivo.css, filemtime version). Fonts self-hosted in css/fonts/. */

@font-face { font-family: "Fraunces"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(fonts/fraunces-latin-wght-normal.woff2) format("woff2"); }
@font-face { font-family: "Fraunces"; font-style: italic; font-weight: 100 900; font-display: swap;
  src: url(fonts/fraunces-latin-wght-italic.woff2) format("woff2"); }
@font-face { font-family: "Public Sans"; font-style: normal; font-weight: 100 900; font-display: swap;
  src: url(fonts/public-sans-latin-wght-normal.woff2) format("woff2"); }
@font-face { font-family: "Public Sans"; font-style: italic; font-weight: 100 900; font-display: swap;
  src: url(fonts/public-sans-latin-wght-italic.woff2) format("woff2"); }

:root {
  --pl-pine: #17332d;
  --pl-pine-2: #21463e;
  --pl-pine-3: #0f2420;
  --pl-ink: #16231f;
  --pl-text: #3a4743;
  --pl-muted: #5f6c67;
  --pl-paper: #f7f4ec;
  --pl-snow: #fffdf8;
  --pl-rule: #e3dccb;
  --pl-rule-2: #efe9db;
  --pl-amber: #f2994a;
  --pl-amber-ink: #a9481a;
  --pl-amber-soft: #fdeedd;
  --pl-glacier: #8cc3c8;
  --pl-glacier-soft: #e6f2f2;
  --pl-radius: 6px;
  --pl-radius-lg: 14px;
  --pl-shadow: 0 1px 2px rgba(23, 51, 45, .06), 0 10px 30px rgba(23, 51, 45, .09);
  --pl-head: "Fraunces", Georgia, "Times New Roman", serif;
  --pl-body: "Public Sans", system-ui, -apple-system, "Segoe UI", sans-serif;
  --blaze: var(--pl-amber);
  --blaze-ink: var(--pl-amber-ink);
  --blaze-soft: var(--pl-amber-soft);
}
/* Trail blazes: one colour per pillar/silo. */
.pl-blaze-orange { --blaze: #f2994a; --blaze-ink: #a9481a; --blaze-soft: #fdeedd; }
.pl-blaze-blue   { --blaze: #3a78b5; --blaze-ink: #245a8f; --blaze-soft: #e5eef7; }
.pl-blaze-yellow { --blaze: #e8b931; --blaze-ink: #7a5a00; --blaze-soft: #fbf3d9; }
.pl-blaze-red    { --blaze: #d0493d; --blaze-ink: #a8322a; --blaze-soft: #fbe7e4; }
.pl-blaze-green  { --blaze: #3e9b6a; --blaze-ink: #1f6e46; --blaze-soft: #e3f3ea; }
.pl-blaze-violet { --blaze: #7d5ba6; --blaze-ink: #5e3f87; --blaze-soft: #efe9f6; }

/* ---------- Global skin ---------- */
html, body { overflow-x: clip; }
body { background: var(--pl-paper); color: var(--pl-text); font-family: var(--pl-body); font-size: 17px; line-height: 1.65; -webkit-font-smoothing: antialiased; }
body p, body li, body td, body th, .noo-main, input, button, select, textarea { font-family: var(--pl-body); }
body h1, body h2, body h3, body h4, body h5, body .noo-page-heading .page-title, body .entry-title { font-family: var(--pl-head); color: var(--pl-ink); letter-spacing: -.01em; font-variation-settings: "opsz" 72, "SOFT" 50; }
body a { color: var(--pl-amber-ink); font-weight: inherit; }
body a:hover, body a:focus { color: var(--pl-pine); }
::selection { background: var(--pl-amber); color: var(--pl-ink); }

/* Header */
.noo-header .navbar, .noo-header .navbar.navbar-fixed-top.navbar-shrink { background: rgba(255, 253, 248, .97) !important; box-shadow: 0 1px 0 var(--pl-rule); backdrop-filter: saturate(1.3) blur(8px); }
.noo-header .navbar-nav > li > a, .noo-header .menu-primary-menu > li > a, .noo-header .navbar-nav a { font-family: var(--pl-body) !important; font-weight: 600 !important; font-size: 15px !important; letter-spacing: 0 !important; text-transform: none !important; color: var(--pl-pine) !important; }
.noo-header .menu-primary-menu > li > a:hover, .noo-header .menu-primary-menu > li.current-menu-item > a, .noo-header .menu-primary-menu > li.current-menu-ancestor > a { color: var(--pl-amber-ink) !important; }
.noo-header .sub-menu { border-radius: var(--pl-radius); border: 1px solid var(--pl-rule); border-top: 3px solid var(--pl-amber) !important; box-shadow: var(--pl-shadow); overflow: hidden; background: var(--pl-snow) !important; }
.noo-header .sub-menu li a { font-family: var(--pl-body) !important; font-size: 15px !important; font-weight: 500 !important; color: var(--pl-text) !important; text-transform: none !important; }
.noo-header .sub-menu li a:hover { background: var(--pl-paper) !important; color: var(--pl-amber-ink) !important; }
.noo-header .navbar-brand img { height: 36px !important; width: auto; }
body .noo-header .navbar-nav li.menu-item-post-btn > a, body .noo-header li.menu-item-post-btn > a, .noo-header a.member-post-job { background: var(--pl-amber-ink) !important; color: #fff !important; border-radius: var(--pl-radius) !important; border: 0 !important; line-height: 1 !important; padding: 11px 18px !important; }
body .noo-header li.menu-item-post-btn > a:hover { background: var(--pl-pine) !important; }
body .noo-header a.member-register-link { background: var(--pl-pine) !important; color: #fff !important; border-radius: var(--pl-radius) !important; padding: 9px 16px !important; }
body .noo-header a.member-register-link:hover { background: var(--pl-pine-2) !important; }

/* Title band: pine with contour lines and an amber ridge line at the bottom. */
.noo-page-heading { background: var(--pl-pine) url(topo-light.svg) center / cover no-repeat !important; padding: 64px 0 58px !important; position: relative; overflow: hidden; }
.noo-page-heading .parallax { display: none !important; }
.noo-page-heading:after { content: ""; position: absolute; left: 0; right: 0; bottom: 0; height: 5px; background: linear-gradient(90deg, var(--pl-amber) 0 22%, var(--pl-glacier) 22% 40%, transparent 40%); }
.noo-page-heading .container-boxed, .noo-page-heading .noo-container { position: relative; z-index: 1; }
.noo-page-heading .page-title { color: #fff !important; font-size: clamp(30px, 4.2vw, 54px) !important; font-weight: 640 !important; line-height: 1.08 !important; text-transform: none !important; max-width: 920px; }
.noo-page-heading .page-sub-heading-info, .noo-page-heading .page-sub-heading-info * { color: rgba(255, 255, 255, .8) !important; }
.home .noo-page-heading { display: none; }
.home .main-content, .home .noo-main { padding-top: 0 !important; padding-bottom: 0 !important; }

/* Buttons and theme UI */
a.arb-btn, .pl-btn, body .btn-primary, body .noo-btn, body input[type="submit"], body button[type="submit"] { background: var(--pl-amber-ink) !important; border: 0 !important; color: #fff !important; border-radius: var(--pl-radius) !important; font-family: var(--pl-body) !important; font-weight: 700 !important; text-transform: none !important; letter-spacing: 0 !important; box-shadow: 0 2px 0 var(--pl-pine-3); transition: transform .15s, box-shadow .15s, background .15s; }
a.arb-btn:hover, .pl-btn:hover, body .btn-primary:hover, body .noo-btn:hover, body input[type="submit"]:hover, body button[type="submit"]:hover { background: var(--pl-pine) !important; color: #fff !important; transform: translateY(-1px); }
a.arb-btn, .pl-btn { display: inline-flex; align-items: center; gap: 8px; padding: 12px 22px; text-decoration: none !important; line-height: 1.2; }
.pl-btn-ghost { background: transparent !important; color: #fff !important; box-shadow: inset 0 0 0 2px rgba(255, 255, 255, .55) !important; }
.pl-btn-ghost:hover { background: #fff !important; color: var(--pl-pine) !important; }
.pl-btn-light { background: #fff !important; color: var(--pl-pine) !important; box-shadow: none !important; }
.pl-btn-light:hover { background: var(--pl-amber) !important; color: var(--pl-ink) !important; }

/* Footer */
.colophon.wigetized, .wrap-footer, .footer-widgets { background: var(--pl-pine) url(topo-light.svg) center bottom / cover no-repeat !important; color: rgba(255, 255, 255, .78) !important; padding: 64px 0 32px !important; }
.colophon, .colophon p, .colophon li, .colophon a, .colophon .textwidget { font-family: var(--pl-body) !important; }
.colophon .widget-title, .wrap-footer .widget-title { color: #fff !important; font-family: var(--pl-head) !important; font-size: 19px !important; font-weight: 600 !important; text-transform: none !important; letter-spacing: 0 !important; }
.colophon p, .colophon li, .colophon .textwidget { color: rgba(255, 255, 255, .8) !important; font-size: 15px; }
.colophon a, .colophon .textwidget a { color: #fff !important; text-decoration: none; }
.colophon a:hover { color: var(--pl-amber) !important; }
.colophon .widget_media_image img { max-width: 200px; height: auto; }
.colophon .pl-foot-links { list-style: none; margin: 0; padding: 0; }
.colophon .pl-foot-links li { margin: 0 0 8px; }
footer.colophon.site-info, footer.colophon.site-info .footer-more, .noo-bottom-bar { background: var(--pl-pine-3) !important; color: rgba(255, 255, 255, .62) !important; font-size: 14px; }
.noo-bottom-bar-content, .noo-bottom-bar-content *:not(i) { color: rgba(255, 255, 255, .62) !important; font-family: var(--pl-body) !important; font-weight: 400 !important; }
.go-to-top { background: var(--pl-amber-ink) !important; border-radius: var(--pl-radius) !important; }

/* ---------- Article system ---------- */
.arb-article { color: var(--pl-text); max-width: 1220px; margin: 0 auto; }
.arb-article br { display: none; }            /* wpautop between grid items */
.arb-article p br, .arb-article li br, .arb-article td br { display: initial; }
.arb-article p:empty, .pl-home p:empty { display: none; }
.arb-article h2 { font-size: clamp(26px, 2.7vw, 34px); font-weight: 620; line-height: 1.15; margin: 60px 0 16px; scroll-margin-top: 110px; }
.arb-article h3 { font-size: 22px; font-weight: 620; margin: 34px 0 10px; }
.arb-article p, .arb-article li { font-size: 17.5px; line-height: 1.75; }
.arb-article a:not(.arb-btn):not(.arb-card):not(.pl-btn) { color: var(--blaze-ink); text-decoration: underline; text-decoration-thickness: 2px; text-underline-offset: 3px; text-decoration-color: color-mix(in srgb, var(--blaze) 50%, transparent); }
.arb-article a:not(.arb-btn):not(.arb-card):not(.pl-btn):hover { text-decoration-color: var(--blaze); color: var(--pl-ink); }
.arb-article img { max-width: 100%; height: auto; }
.arb-article strong { color: var(--pl-ink); }

.arb-crumbs { font-size: 14px; color: var(--pl-muted); margin: 0 0 22px; }
.arb-crumbs a { color: var(--pl-muted) !important; text-decoration: none !important; }
.arb-crumbs a:hover { color: var(--blaze-ink) !important; }

/* Head: text + photo framed like a trail map (contour lines behind, blaze tab on the corner) */
.arb-head { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); gap: 52px; align-items: center; margin: 0 0 44px; }
.arb-kicker { display: inline-flex; align-items: center; gap: 10px; font-family: var(--pl-body); font-weight: 800; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--blaze-ink); }
.arb-kicker:before { content: ""; width: 9px; height: 20px; border-radius: 2px; background: var(--blaze); box-shadow: 0 0 0 3px var(--blaze-soft); }
.arb-lead { font-size: 20px !important; line-height: 1.6 !important; color: var(--pl-ink); margin: 16px 0 18px; }
.arb-meta { display: flex; flex-wrap: wrap; gap: 6px 16px; margin: 0; padding-top: 14px; border-top: 1px dashed var(--pl-rule); }
.arb-meta span { font-size: 14px; color: var(--pl-muted); }
.arb-meta span + span:before { content: "▲"; font-size: 8px; color: var(--blaze); margin-right: 14px; position: relative; top: -2px; }
.arb-head-img { margin: 0; position: relative; padding: 14px 14px 0 0; }
.arb-head-img:before { content: ""; position: absolute; inset: 0 0 14px 14px; border-radius: var(--pl-radius-lg); background: var(--blaze-soft) url(topo-pine.svg) center / cover no-repeat; z-index: 0; }
.arb-head-img img { position: relative; z-index: 1; display: block; width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; border-radius: var(--pl-radius-lg); box-shadow: var(--pl-shadow); top: 0; left: -14px; }
.arb-head-img:after { content: ""; position: absolute; z-index: 2; right: 30px; top: 0; width: 14px; height: 34px; border-radius: 0 0 3px 3px; background: var(--blaze); }

/* Two columns: ascent TOC + main */
.arb-layout { display: grid; grid-template-columns: 272px minmax(0, 1fr); gap: 58px; align-items: start; }
.arb-aside { position: sticky; top: 100px; }
.arb-main { min-width: 0; max-width: 780px; }
.arb-main > h2:first-child { margin-top: 0; }

.arb-toc { background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius-lg); padding: 20px 18px 14px; }
.arb-toc-title { font-family: var(--pl-body); font-weight: 800; font-size: 12px !important; letter-spacing: .12em; text-transform: uppercase; color: var(--pl-muted); margin: 0 0 12px !important; }
.arb-toc ol { list-style: none; margin: 0; padding: 0; position: relative; }
.arb-toc ol:before { content: ""; position: absolute; left: 6px; top: 8px; bottom: 8px; border-left: 2px dashed var(--pl-rule); }
.arb-toc li { position: relative; padding: 0 0 0 28px; margin: 0 0 4px; line-height: 1.35 !important; }
.arb-toc li:before { content: ""; position: absolute; left: 1px; top: 7px; width: 12px; height: 16px; border-radius: 2px; background: var(--pl-snow); border: 2px solid var(--blaze); box-sizing: border-box; transition: background .15s, transform .15s; }
.arb-toc li a { display: block; padding: 4px 0; font-size: 15px !important; color: var(--pl-text) !important; text-decoration: none !important; }
.arb-toc li a:hover { color: var(--blaze-ink) !important; }
.arb-toc li.is-passed:before { background: var(--blaze); }
.arb-toc li.is-active:before { background: var(--blaze); transform: scale(1.18); }
.arb-toc li.is-active a { color: var(--pl-ink) !important; font-weight: 700; }
.arb-aside-cta { margin-top: 16px; background: var(--pl-pine) url(topo-light.svg) center / cover no-repeat; color: rgba(255, 255, 255, .82); border-radius: var(--pl-radius-lg); padding: 20px; }
.arb-aside-cta strong { display: block; color: #fff; font-family: var(--pl-head); font-weight: 600; font-size: 19px; line-height: 1.25; margin-bottom: 6px; }
.arb-aside-cta p { font-size: 15px !important; line-height: 1.5 !important; margin: 0 0 14px; color: rgba(255, 255, 255, .82); }
.arb-aside-cta .arb-btn { font-size: 15px; padding: 10px 16px; }

/* Section headings in the main column are camps on the way up */
.arb-pillar .arb-main, .arb-post .arb-main { counter-reset: camp; }
.arb-pillar .arb-main > h2, .arb-post .arb-main > h2 { counter-increment: camp; position: relative; padding-top: 32px; }
.arb-pillar .arb-main > h2:before, .arb-post .arb-main > h2:before { content: "Camp " counter(camp, decimal-leading-zero); position: absolute; top: 0; left: 0; font-family: var(--pl-body); font-size: 12px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; color: var(--blaze-ink); padding-left: 18px; }
.arb-pillar .arb-main > h2:after, .arb-post .arb-main > h2:after { content: ""; position: absolute; top: 1px; left: 0; width: 8px; height: 14px; border-radius: 2px; background: var(--blaze); }
.arb-pillar .arb-main > h2#faq:before, .arb-post .arb-main > h2#faq:before { content: "Summit Q&A"; }

/* Trail notes: the answer at a glance */
.pl-notes { background: var(--pl-pine) url(topo-light.svg) right center / 900px auto no-repeat; color: rgba(255, 255, 255, .84); border-radius: var(--pl-radius-lg); padding: 26px 28px 20px; margin: 0 0 38px; position: relative; overflow: hidden; border-top: 6px solid var(--blaze); }
.pl-notes-title { font-family: var(--pl-head); color: #fff !important; font-weight: 600; font-size: 21px !important; margin: 0 0 14px !important; }
.pl-notes ul { list-style: none; margin: 0; padding: 0; position: relative; z-index: 1; }
.pl-notes li { position: relative; padding-left: 26px; margin: 0 0 10px; font-size: 16.5px !important; color: rgba(255, 255, 255, .88); }
.pl-notes li:before { content: ""; position: absolute; left: 2px; top: 7px; width: 8px; height: 13px; border-radius: 2px; background: var(--blaze); }
.pl-notes strong { color: #fff; }

/* Checklist, boxes, tables */
.arb-checklist { list-style: none; padding: 0; margin: 18px 0 24px; }
.arb-checklist li { position: relative; padding: 0 0 0 36px; margin: 0 0 12px; }
.arb-checklist li:before { content: ""; position: absolute; left: 0; top: 4px; width: 22px; height: 22px; border-radius: 4px; background: var(--blaze-soft) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M6 12.5l4 4 8-9' fill='none' stroke='%2317332d' stroke-width='2.6' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center / 16px no-repeat; box-shadow: inset 0 0 0 1px color-mix(in srgb, var(--blaze) 40%, transparent); }
.arb-box { border-radius: var(--pl-radius); padding: 18px 20px 18px 58px; margin: 26px 0; position: relative; border: 1px solid transparent; border-left-width: 5px; }
.arb-box p:last-child { margin-bottom: 0; }
.arb-box:before { position: absolute; left: 18px; top: 19px; width: 24px; height: 24px; border-radius: 4px; display: grid; place-items: center; font: 800 14px/1 var(--pl-body); color: #fff; }
.arb-box-tip { background: #e8f3ec; border-color: #c9e4d3; border-left-color: #1f6e46; }
.arb-box-tip:before { content: "✓"; background: #1f6e46; }
.arb-box-warn { background: #fbe9e4; border-color: #f2cfc6; border-left-color: #a8322a; }
.arb-box-warn:before { content: "!"; background: #a8322a; }
.arb-box-info { background: var(--pl-glacier-soft); border-color: #cfe4e5; border-left-color: var(--pl-pine); }
.arb-box-info:before { content: "i"; background: var(--pl-pine); }
.arb-table { overflow-x: auto; margin: 26px 0; border-radius: var(--pl-radius); border: 1px solid var(--pl-rule); background: var(--pl-snow); }
.arb-table table { width: 100%; border-collapse: collapse; margin: 0; font-size: 16px; }
.arb-table th { background: var(--pl-pine); color: #fff; font-family: var(--pl-body); font-weight: 700; text-align: left; padding: 12px 14px; border-bottom: 3px solid var(--blaze); }
.arb-table td { padding: 12px 14px; border-top: 1px solid var(--pl-rule-2); vertical-align: top; }
.arb-table tr:nth-child(even) td { background: #faf7f0; }

/* Switchback steps */
.pl-steps { list-style: none; padding: 0; margin: 26px 0; counter-reset: step; }
.pl-steps > li { position: relative; padding: 0 0 24px 60px; counter-increment: step; }
.pl-steps > li:before { content: counter(step); position: absolute; left: 0; top: 0; width: 40px; height: 40px; border-radius: 50% 50% 50% 4px; background: var(--pl-pine); color: #fff; display: grid; place-items: center; font: 600 18px/1 var(--pl-head); box-shadow: 0 0 0 4px var(--blaze-soft); }
.pl-steps > li:after { content: ""; position: absolute; left: 19px; top: 46px; bottom: 4px; border-left: 2px dashed var(--blaze); }
.pl-steps > li:last-child:after { display: none; }
.pl-steps > li > strong:first-child { display: block; font-family: var(--pl-head); font-weight: 600; font-size: 19px; margin-bottom: 2px; }

/* Legit vs. scam / two options */
.pl-compare { display: grid; grid-template-columns: 1fr 1fr; gap: 16px; margin: 26px 0; }
.pl-compare > div { border-radius: var(--pl-radius); padding: 18px 20px; background: var(--pl-snow); border: 1px solid var(--pl-rule); }
.pl-compare .pl-good { box-shadow: inset 0 5px 0 #1f6e46; }
.pl-compare .pl-bad { box-shadow: inset 0 5px 0 #a8322a; }
.pl-compare p.pl-compare-title { font-family: var(--pl-head); font-weight: 600; font-size: 19px; margin: 4px 0 10px; color: var(--pl-ink); }
.pl-compare ul { margin: 0; padding-left: 18px; }
.pl-compare li { font-size: 16px !important; margin-bottom: 6px; }

/* Figure */
.arb-figure { margin: 28px 0; }
.arb-figure img { border-radius: var(--pl-radius); display: block; }
.arb-figure figcaption { font-size: 14px; color: var(--pl-muted); margin-top: 8px; }

/* FAQ */
.arb-faq { margin: 12px 0 8px; }
.arb-faq details { background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius); margin: 0 0 10px; transition: border-color .15s; }
.arb-faq details[open] { border-color: var(--blaze); box-shadow: inset 4px 0 0 var(--blaze); }
.arb-faq summary { cursor: pointer; list-style: none; padding: 16px 54px 16px 20px; position: relative; font-family: var(--pl-head); font-weight: 600; font-size: 18px; color: var(--pl-ink); }
.arb-faq summary::-webkit-details-marker { display: none; }
.arb-faq summary:after { content: "+"; position: absolute; right: 16px; top: 50%; transform: translateY(-50%); width: 26px; height: 26px; border-radius: 4px; background: var(--blaze-soft); color: var(--blaze-ink); display: grid; place-items: center; font: 700 19px/1 var(--pl-body); }
.arb-faq details[open] summary:after { content: "–"; background: var(--pl-pine); color: #fff; }
.arb-faq details > p { padding: 0 20px 18px; margin: 0; }

/* Cards: related trails / hub / front */
.arb-related { margin: 58px 0 0; padding-top: 32px; border-top: 2px dashed var(--pl-rule); }
.arb-related-title { font-family: var(--pl-head); font-weight: 600; font-size: 26px !important; color: var(--pl-ink); margin: 0 0 18px !important; }
.arb-cards { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
a.arb-card { display: flex; flex-direction: column; background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius-lg); overflow: hidden; text-decoration: none !important; color: var(--pl-text) !important; transition: transform .18s, box-shadow .18s, border-color .18s; position: relative; }
a.arb-card:hover { transform: translateY(-3px); box-shadow: var(--pl-shadow); border-color: transparent; }
a.arb-card img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; display: block; }
a.arb-card:before { content: ""; position: absolute; right: 18px; top: 0; width: 12px; height: 28px; border-radius: 0 0 3px 3px; background: var(--blaze); z-index: 1; }
.arb-card-title { display: block; font-family: var(--pl-head); font-weight: 600; font-size: 19px; line-height: 1.25; color: var(--pl-ink); padding: 16px 18px 4px; }
.arb-card-text { display: block; font-size: 15px; line-height: 1.5; color: var(--pl-muted); padding: 0 18px 18px; }
.arb-card-more { display: block; margin-top: auto; padding: 0 18px 18px; font-weight: 700; font-size: 15px; color: var(--blaze-ink); }

/* Supporting posts list on a pillar ("side trails") */
.pl-side { list-style: none; margin: 18px 0; padding: 0; display: grid; gap: 10px; }
.pl-side a { display: flex; gap: 14px; align-items: center; background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius); padding: 14px 16px; text-decoration: none !important; color: var(--pl-ink) !important; font-family: var(--pl-head); font-weight: 600; font-size: 17.5px; }
.pl-side a:before { content: ""; flex: 0 0 9px; height: 16px; border-radius: 2px; background: var(--blaze); }
.pl-side a:after { content: "→"; margin-left: auto; color: var(--blaze-ink); font-family: var(--pl-body); }
.pl-side a:hover { border-color: var(--blaze); }
.pl-uptrail { position: relative; background: var(--blaze-soft); border-radius: var(--pl-radius); padding: 14px 18px 14px 42px; margin: 0 0 30px; font-size: 16px !important; }
.pl-uptrail:before { content: ""; position: absolute; left: 18px; top: 50%; transform: translateY(-50%); width: 9px; height: 16px; border-radius: 2px; background: var(--blaze); }

/* ---------- Hub: the trail map ---------- */
.pl-trails { display: grid; gap: 22px; margin: 8px 0 40px; }
.pl-trail { display: grid; grid-template-columns: 320px minmax(0, 1fr); background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius-lg); overflow: hidden; position: relative; transition: box-shadow .18s; }
.pl-trail:hover { box-shadow: var(--pl-shadow); }
.pl-trail > a.pl-trail-img { display: block; position: relative; grid-column: 1; grid-row: 1; }
.pl-trail > a.pl-trail-img img { width: 100%; height: 100%; object-fit: cover; display: block; min-height: 230px; }
.pl-trail-body { padding: 24px 28px 22px; position: relative; grid-column: 2; grid-row: 1; }
.pl-trail-body:before { content: ""; position: absolute; right: 26px; top: 0; width: 14px; height: 34px; border-radius: 0 0 3px 3px; background: var(--blaze); }
.pl-trail-name { font-weight: 800; font-size: 12px !important; letter-spacing: .12em; text-transform: uppercase; color: var(--blaze-ink); margin: 0 0 6px !important; }
.pl-trail h2 { margin: 0 0 8px !important; font-size: 27px !important; padding: 0 !important; }
.pl-trail h2:before, .pl-trail h2:after { display: none !important; }
.pl-trail h2 a { color: var(--pl-ink) !important; text-decoration: none !important; }
.pl-trail h2 a:hover { color: var(--blaze-ink) !important; }
.pl-trail-body > p { font-size: 16.5px !important; margin: 0 0 14px; }
.pl-trail-posts { list-style: none; margin: 0 0 16px; padding: 12px 0 0; display: grid; gap: 6px; border-top: 1px dashed var(--pl-rule); }
.pl-trail-posts li { position: relative; padding-left: 20px; font-size: 15px !important; line-height: 1.4 !important; }
.pl-trail-posts li:before { content: ""; position: absolute; left: 0; top: 4px; width: 7px; height: 12px; border-radius: 2px; background: var(--blaze); }
.pl-trail-posts a { color: var(--pl-text) !important; text-decoration: none !important; }
.pl-trail-posts a:hover { color: var(--blaze-ink) !important; text-decoration: underline !important; }
a.pl-trail-go { font-weight: 700; font-size: 15.5px; color: var(--blaze-ink) !important; text-decoration: none !important; }
a.pl-trail-go:after { content: " →"; }

/* ---------- Front page ---------- */
.pl-home { color: var(--pl-text); }
.pl-wrap { max-width: 1220px; margin: 0 auto; padding: 0 24px; }
.pl-home section { padding: 76px 0; }
.pl-home .pl-eyebrow { display: inline-flex; align-items: center; gap: 10px; font-weight: 800; font-size: 12.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--pl-amber-ink); margin: 0 0 12px; }
.pl-home .pl-eyebrow:before { content: ""; width: 8px; height: 16px; border-radius: 2px; background: var(--pl-amber); }
.pl-home h2 { font-size: clamp(30px, 3.5vw, 44px); font-weight: 620; line-height: 1.1; margin: 0 0 14px; }
.pl-home .pl-sub { font-size: 18px; max-width: 660px; margin: 0 0 32px; }
.pl-hero { position: relative; background: var(--pl-pine); color: #fff; padding: 0 !important; overflow: hidden; }
.pl-hero-grid { display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(0, 1fr); min-height: 580px; }
.pl-hero-text { padding: 92px 52px 80px max(24px, calc((100vw - 1220px) / 2 + 24px)); position: relative; z-index: 2; background: url(topo-light.svg) left center / 1400px auto no-repeat; }
.pl-hero .pl-hero-title { color: #fff !important; font-size: clamp(38px, 5.2vw, 68px); font-weight: 600; line-height: 1.02; letter-spacing: -.02em; margin: 0 0 20px; font-variation-settings: "opsz" 144, "SOFT" 60; }
.pl-hero .pl-hero-title em { font-style: italic; color: var(--pl-amber); }
.pl-hero p.pl-hero-lead { color: rgba(255, 255, 255, .84); font-size: 19px; line-height: 1.6; max-width: 560px; margin: 0 0 28px; }
.pl-hero-img { position: relative; }
.pl-hero-img img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.pl-hero-img:before { content: ""; position: absolute; inset: 0; z-index: 1; background: linear-gradient(90deg, var(--pl-pine) 0%, rgba(23, 51, 45, 0) 30%); }
.pl-hero-ridge { position: absolute; left: 0; right: 0; bottom: -1px; height: 70px; z-index: 3; pointer-events: none; display: block; width: 100%; }
.pl-search { display: grid; grid-template-columns: minmax(0, 1fr) 200px auto; gap: 8px; background: #fff; padding: 8px; border-radius: 12px; max-width: 640px; box-shadow: 0 22px 50px rgba(0, 0, 0, .28); }
.pl-search input, .pl-search select { border: 0 !important; background: var(--pl-paper) !important; border-radius: 8px !important; height: 52px; padding: 0 16px !important; font-size: 16px !important; color: var(--pl-ink) !important; box-shadow: none !important; width: 100%; }
.pl-search button { height: 52px; padding: 0 24px !important; font-size: 16px !important; }
.pl-hero-quick { margin: 18px 0 0; display: flex; flex-wrap: wrap; gap: 8px; font-size: 14px; color: rgba(255, 255, 255, .72); align-items: center; }
.pl-hero-quick a { color: #fff !important; text-decoration: none; border: 1px solid rgba(255, 255, 255, .3); border-radius: 4px; padding: 5px 12px; }
.pl-hero-quick a:hover { background: rgba(255, 255, 255, .12); }
.pl-jobs-head { display: flex; justify-content: space-between; align-items: end; gap: 24px; flex-wrap: wrap; margin-bottom: 20px; }
.pl-home .pl-latest { padding-bottom: 20px; }
.pl-trails-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; }
.pl-band { background: var(--pl-snow); border-top: 1px solid var(--pl-rule); border-bottom: 1px solid var(--pl-rule); }
.pl-how { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 30px; position: relative; counter-reset: how; }
.pl-how:before { content: ""; position: absolute; left: 24px; right: 24px; top: 23px; border-top: 3px dashed var(--pl-amber); }
.pl-how > div { position: relative; counter-increment: how; padding-top: 70px; }
.pl-how > div:before { content: counter(how); position: absolute; top: 0; left: 0; width: 50px; height: 50px; border-radius: 50% 50% 50% 6px; background: var(--pl-pine); display: grid; place-items: center; font: 600 21px/1 var(--pl-head); color: #fff; box-shadow: 0 0 0 6px var(--pl-snow); }
.pl-how h3 { font-size: 22px; margin: 0 0 8px; }
.pl-how p { margin: 0; font-size: 16.5px; }
.pl-safety { background: var(--pl-pine) url(topo-light.svg) center / cover no-repeat; color: rgba(255, 255, 255, .84); }
.pl-safety h2 { color: #fff !important; }
.pl-safety .pl-eyebrow { color: var(--pl-amber) !important; }
.pl-safety-grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 52px; align-items: center; }
.pl-safety p { color: rgba(255, 255, 255, .84); }
.pl-safety ul { margin: 0; padding: 0; list-style: none; }
.pl-safety li { position: relative; padding: 14px 16px 14px 52px; margin: 0 0 10px; font-size: 16.5px; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .12); border-radius: var(--pl-radius); color: #fff; }
.pl-safety li:before { content: "!"; position: absolute; left: 16px; top: 15px; width: 22px; height: 22px; border-radius: 4px; background: var(--pl-amber); color: var(--pl-ink); display: grid; place-items: center; font: 800 13px/1 var(--pl-body); }
.pl-home .arb-faq { max-width: 860px; }
.pl-home .pl-faq { padding-top: 68px; }
.pl-chips { display: flex; flex-wrap: wrap; gap: 10px; }
.pl-chips a { display: inline-flex; align-items: center; gap: 10px; background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius); padding: 10px 16px; font-weight: 600; font-size: 15.5px; color: var(--pl-ink) !important; text-decoration: none !important; transition: border-color .15s, transform .15s; }
.pl-chips a:hover { border-color: var(--pl-pine); transform: translateY(-1px); }
.pl-chips a.pl-chip-all { background: var(--pl-pine); color: #fff !important; border-color: var(--pl-pine); }
.pl-chips .pl-count { font-size: 13px; color: var(--pl-muted); font-weight: 500; }
.pl-chips a.pl-chip-all .pl-count { color: rgba(255, 255, 255, .7); }
.pl-newsletter { background: var(--pl-amber-soft) url(topo-amber.svg) right -120px center / 520px auto no-repeat; border: 1px solid #f3d5b5; border-radius: var(--pl-radius-lg); padding: 36px; display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: 32px; align-items: center; }
.pl-newsletter h2 { font-size: 32px !important; }
.pl-newsletter .mailpoet_paragraph { margin: 0 0 8px !important; }
.pl-newsletter input[type="email"] { width: 100% !important; height: 50px; border-radius: 8px !important; border: 1px solid var(--pl-rule) !important; padding: 0 16px !important; background: #fff !important; }
.elementor-section.pl-el-section > .elementor-container { max-width: none !important; }
.elementor-section.pl-el-section .elementor-widget-wrap { padding: 0 !important; }
.pl-jobs .elementor-widget-container { max-width: 1220px; margin: 0 auto; padding: 0 24px; }
.pl-jobs .pagination { display: none !important; }

/* ---------- Job list items (front widget + archives) ---------- */
.jobs.posts-loop article.noo_job { position: relative; margin: 0 0 12px !important; padding: 0 !important; background: transparent !important; border: 0 !important; }
.jobs.posts-loop article.noo_job .loop-item-wrap { display: flex !important; align-items: center; gap: 20px; background: var(--pl-snow) !important; border: 1px solid var(--pl-rule) !important; border-radius: 10px !important; padding: 18px 22px !important; transition: border-color .15s, box-shadow .15s, transform .15s; position: relative; }
.jobs.posts-loop article.noo_job .loop-item-wrap:before { content: ""; position: absolute; left: -1px; top: 16px; width: 6px; height: 22px; border-radius: 0 3px 3px 0; background: var(--pl-rule); transition: background .15s; }
.jobs.posts-loop article.noo_job:hover .loop-item-wrap { box-shadow: var(--pl-shadow); transform: translateY(-1px); }
.jobs.posts-loop article.noo_job:hover .loop-item-wrap:before { background: var(--pl-amber); }
.jobs.posts-loop article.noo_job .loop-item-content { display: block !important; width: auto !important; float: none !important; padding: 0 !important; flex: 1 1 auto; min-width: 0; }
.jobs.posts-loop .loop-item-title { margin: 0 0 6px !important; font-size: 19px !important; line-height: 1.3 !important; }
.jobs.posts-loop .loop-item-title a { font-family: var(--pl-head) !important; font-weight: 600 !important; font-size: 19px !important; color: var(--pl-ink) !important; text-transform: none !important; }
.jobs.posts-loop article.noo_job .content-meta { margin: 6px 0 0 !important; display: flex !important; flex-wrap: wrap; gap: 6px 14px; align-items: center; font-size: 14px !important; color: var(--pl-muted) !important; }
.jobs.posts-loop .content-meta i { display: none; }
.jobs.posts-loop article.noo_job .content-meta .job-type, .jobs.posts-loop article.noo_job .content-meta .job-date { display: inline-flex !important; }
.jobs.posts-loop .content-meta .job-type a { color: var(--pl-pine) !important; background: var(--pl-glacier-soft); border-radius: 4px; padding: 3px 10px; font-weight: 700; font-style: normal !important; text-decoration: none !important; }
.jobs.posts-loop .content-meta .job-date, .jobs.posts-loop .content-meta .job-date * { font-style: normal !important; color: var(--pl-muted) !important; }
.jobs.posts-loop .content-meta .job-location a, .jobs.posts-loop .content-meta .job-company a { color: var(--pl-text) !important; }
.jobs.posts-loop .job-tools { display: none !important; }
.jobs.posts-loop .show-view-more { position: static !important; flex: 0 0 auto; text-align: right; display: flex; flex-direction: column; align-items: flex-end; gap: 6px; margin-top: 0 !important; }
.jobs.posts-loop .show-view-more .btn { padding: 9px 18px !important; font-size: 15px !important; box-shadow: none; background: var(--pl-amber-ink) !important; }
.jobs.posts-loop .show-view-more .job-date-ago { position: static !important; transform: none !important; font-size: 13px; color: var(--pl-muted); line-height: 1.4 !important; }
.jobs.posts-loop .show-quick-view { display: none !important; }
.pagination .page-numbers { border-radius: 6px !important; background: var(--pl-snow) !important; border: 1px solid var(--pl-rule) !important; color: var(--pl-ink) !important; }
.pagination .page-numbers.current, .pagination .page-numbers:hover { background: var(--pl-pine) !important; color: #fff !important; border-color: var(--pl-pine) !important; }

/* ---------- Job grid mode ---------- */
.noo-job-item.noo_job { background: var(--pl-snow) !important; border: 1px solid var(--pl-rule) !important; border-radius: 10px !important; padding: 20px 22px !important; box-shadow: none !important; transition: border-color .15s, box-shadow .15s, transform .15s; position: relative; }
.noo-job-item.noo_job:before { content: ""; position: absolute; right: 18px; top: -1px; width: 10px; height: 22px; border-radius: 0 0 3px 3px; background: var(--pl-rule); }
.noo-job-item.noo_job:hover { box-shadow: var(--pl-shadow) !important; transform: translateY(-2px); }
.noo-job-item.noo_job:hover:before { background: var(--pl-amber); }
.noo-job-item .company-logo:not(:has(img)) { display: none !important; }
.noo-job-item .company-info h3 { margin: 0 0 10px !important; font-size: 18px !important; line-height: 1.3 !important; padding-right: 24px; }
.noo-job-item .company-info h3 a { font-family: var(--pl-head) !important; font-weight: 600 !important; color: var(--pl-ink) !important; font-size: 18px !important; }
.noo-job-item .company-info h3 .job-date-ago { position: static !important; display: block; margin-top: 4px; font-family: var(--pl-body); font-size: 13px !important; font-weight: 400; color: var(--pl-muted) !important; transform: none !important; }
.noo-job-item .job-company:has(a[href=""]) { display: none !important; }
.noo-job-item .job-company .company-name { font-style: normal !important; font-family: var(--pl-body) !important; font-size: 15px !important; color: var(--pl-text) !important; }
.noo-job-item .job-tools { display: none !important; }
.noo-job-item .job-meta .content-meta { display: flex; flex-wrap: wrap; gap: 6px 12px; align-items: center; margin: 0 !important; font-size: 14px !important; }
.noo-job-item .job-meta .content-meta i { display: none !important; }
.noo-job-item .job-meta .job-type a { color: var(--pl-pine) !important; background: var(--pl-glacier-soft); border-radius: 4px; padding: 3px 10px; font-weight: 700; text-decoration: none !important; margin-left: 0 !important; }
.noo-job-item .job-meta *:not(i) { font-style: normal !important; }
.noo-job-item .job-meta .job-date, .noo-job-item .job-meta .job-date * { color: var(--pl-muted) !important; position: static !important; }
.noo-job-item .company-info h3 .job-date-ago, .noo-job-item .job-meta .content-meta, .noo-job-item .job-meta .job-type { margin-left: 0 !important; padding-left: 0 !important; }

/* ---------- Single job ---------- */
.single-noo_job .plji-facts { list-style: none !important; display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px 24px; margin: 0 0 28px !important; background: var(--pl-pine) url(topo-light.svg) center / cover no-repeat !important; color: #fff; border-radius: var(--pl-radius-lg) !important; padding: 20px 24px !important; border-top: 5px solid var(--pl-amber); }
.single-noo_job .plji-facts li { list-style: none !important; margin: 0 !important; padding: 0 !important; font-size: 16px; line-height: 1.5 !important; color: rgba(255, 255, 255, .92); }
.single-noo_job .plji-facts li:before { display: none !important; }
.single-noo_job .plji-facts strong { display: block; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; color: var(--pl-amber); font-weight: 800; }
.single-noo_job .plji-apply { border-top: 1px dashed var(--pl-rule) !important; margin-top: 28px; padding-top: 16px; }
.single-noo_job .plji-source { font-size: 15px; color: var(--pl-muted); }
.single-noo_job .noo-page-heading .content-meta, .single-noo_job .noo-page-heading .content-meta *:not(i) { font-style: normal !important; font-family: var(--pl-body) !important; font-size: 15px !important; color: rgba(255, 255, 255, .82) !important; }
.single-noo_job .noo-page-heading .content-meta i { color: var(--pl-amber) !important; }
.single-noo_job .job-desc h2, .single-noo_job .job-desc h1 { font-size: 25px !important; margin: 32px 0 10px !important; }
.single-noo_job .job-desc h3, .single-noo_job .job-desc h4 { font-size: 20px !important; margin: 24px 0 8px !important; }
.single-noo_job .job-desc li { line-height: 1.6 !important; margin-bottom: 6px; }
.single-noo_job .noo-sidebar .widget, .single-noo_job .job-social, .single-noo_job .noo-sidebar-wrap > div { background: var(--pl-snow) !important; border: 1px solid var(--pl-rule); border-radius: var(--pl-radius-lg); }
.single-noo_job .job-custom-fields i, .single-noo_job .job-custom-fields .fa { color: var(--pl-amber-ink) !important; }

/* Forms, list/grid toggles, sidebar */
.noo-page-heading input[type="text"], .noo-page-heading .form-control, .noo-sidebar .form-control, .noo-sidebar input[type="text"], .chosen-container .chosen-single, .chosen-container-multi .chosen-choices { border-radius: 6px !important; border: 1px solid var(--pl-rule) !important; box-shadow: none !important; }
.noo-page-heading label, .noo-page-heading .control-label { color: #fff !important; font-family: var(--pl-body) !important; font-weight: 700 !important; }
.noo-heading-search .noo-btn-search { width: 100% !important; padding-left: 10px !important; padding-right: 10px !important; }
.noo-list-grid a, .jobs-display-type a, .noo-display-type a, a.list-grid-type, .display-type a { border-radius: 6px !important; border-color: var(--pl-rule) !important; color: var(--pl-pine) !important; background: var(--pl-snow) !important; }
.noo-list-grid a.active, .noo-display-type a.active, .display-type a.active, a.list-grid-type.active { background: var(--pl-pine) !important; color: #fff !important; border-color: var(--pl-pine) !important; }
.noo-sidebar .noo-sidebar-wrap { background: transparent !important; padding: 0 !important; }
.noo-sidebar .widget:not(:empty) { background: var(--pl-snow) !important; border: 1px solid var(--pl-rule) !important; border-radius: var(--pl-radius-lg) !important; padding: 24px 24px 20px !important; margin-bottom: 20px !important; }
.noo-sidebar .widget:empty { display: none !important; }
.noo-sidebar .widget-title { font-family: var(--pl-head) !important; font-weight: 600 !important; color: var(--pl-ink) !important; font-size: 22px !important; margin: 0 0 16px !important; }
.noo-sidebar .widget label, .noo-sidebar .widget .control-label { font-family: var(--pl-body) !important; font-weight: 700 !important; color: var(--pl-ink) !important; font-size: 15px !important; }
.noo-sidebar .noo-job-category-widget > *:not(.widget-title), .noo-sidebar .noo-job-type-widget > *:not(.widget-title), .noo-sidebar .noo-job-location-widget > *:not(.widget-title),
.noo-sidebar .widget .job-category-list, .noo-sidebar .widget .noo-job-category, .noo-sidebar .widget ul { background: transparent !important; padding: 0 !important; margin: 0 !important; border: 0 !important; }
.noo-sidebar .widget ul li { display: flex !important; justify-content: space-between; align-items: center; padding: 8px 0 !important; border-bottom: 1px solid var(--pl-rule-2) !important; font-family: var(--pl-body) !important; font-size: 15px !important; }
.noo-sidebar .widget ul li:last-child { border-bottom: 0 !important; }
.noo-sidebar .widget ul li a { color: var(--pl-text) !important; font-family: var(--pl-body) !important; font-size: 15px !important; }
.noo-sidebar .widget ul li a:hover { color: var(--pl-amber-ink) !important; }
.noo-sidebar .widget ul li .count, .noo-sidebar .widget ul li span { color: var(--pl-muted) !important; font-size: 14px !important; font-family: var(--pl-body) !important; }
.noo-sidebar button[type="reset"], .noo-sidebar .btn-reset, .noo-sidebar .reset-search, .noo-sidebar a.btn-default { background: transparent !important; color: var(--pl-pine) !important; border: 2px solid var(--pl-rule) !important; border-radius: 6px !important; box-shadow: none !important; }
.ui-slider .ui-slider-range, .ui-widget-header { background: var(--pl-amber) !important; border-color: var(--pl-amber) !important; }
.ui-slider .ui-slider-handle, .noo-sidebar .irs-handle, .noo-sidebar .slider-handle { background: #fff !important; border: 3px solid var(--pl-amber-ink) !important; border-radius: 50% !important; }
.job-category-list .job-count, .noo-job-category .job-count, span.job-count { color: var(--pl-muted) !important; }

/* ---------- Single posts (supporting articles) ---------- */
.single-post article:has(.arb-article) > .content-left, .single-post article:has(.arb-article) .content-featured, .single-post article:has(.arb-article) .entry-tags { display: none !important; }
.single-post article.has-left-col:has(.arb-article) { padding-left: 0 !important; background: transparent !important; }
.single-post article:has(.arb-article) .content-wrap { margin-left: 0 !important; padding-left: 0 !important; width: auto !important; float: none !important; }
.single-post article:has(.arb-article) .content { background: transparent !important; padding: 0 !important; }
.single-post .noo-page-heading .content-meta { font-style: normal !important; display: flex; flex-wrap: wrap; gap: 6px 18px; margin-top: 14px; }
.single-post .noo-page-heading .content-meta, .single-post .noo-page-heading .content-meta *:not(i) { font-style: normal !important; font-family: var(--pl-body) !important; font-size: 15px !important; font-weight: 500 !important; color: rgba(255, 255, 255, .8) !important; }
.single-post .noo-page-heading .content-meta i, .single-post .noo-page-heading .content-meta span:has(a[rel="author"]), .single-post .noo-page-heading .content-meta span:has(.fa-pencil-alt), .single-post .noo-page-heading .content-meta span:has(a[href*="#respond"]), .single-post .noo-page-heading .content-meta span:has(a[href*="#comments"]) { display: none !important; }
.single-post .noo-page-heading .content-meta a:hover { color: #fff !important; }
.single-post #comments, .single-post .comments-area { max-width: 780px; margin: 48px auto 0 calc(272px + 58px); }
.post-navigation .prev-post, .post-navigation .next-post, .prev-post, .next-post { background: var(--pl-snow) !important; border: 1px solid var(--pl-rule) !important; border-radius: var(--pl-radius) !important; }
.prev-post a, .next-post a, .prev-post *, .next-post * { color: var(--pl-ink) !important; }
.prev-post:hover, .next-post:hover { border-color: var(--pl-amber) !important; }

/* ---------- About / trust pages ---------- */
.pl-about { max-width: 1100px; }
.pl-trio { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 18px; margin: 8px 0 56px; }
.pl-trio > div { background: var(--pl-snow); border: 1px solid var(--pl-rule); border-radius: var(--pl-radius-lg); padding: 24px 22px 20px; position: relative; }
.pl-trio > div:before { content: ""; position: absolute; right: 20px; top: -1px; width: 12px; height: 28px; border-radius: 0 0 3px 3px; }
.pl-trio > div:nth-child(1):before { background: var(--pl-amber); } .pl-trio > div:nth-child(2):before { background: #3a78b5; } .pl-trio > div:nth-child(3):before { background: #3e9b6a; }
.pl-trio p.pl-trio-title { font-family: var(--pl-head); font-weight: 600; font-size: 22px !important; line-height: 1.2 !important; color: var(--pl-ink); margin: 0 0 8px !important; }
.pl-trio p { font-size: 16px !important; margin: 0 0 10px; }
.pl-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.1fr); gap: 48px; align-items: center; margin: 0 0 56px; }
.pl-split figure { margin: 0; }
.pl-split img { width: 100%; aspect-ratio: 1200 / 630; object-fit: cover; border-radius: var(--pl-radius-lg); display: block; box-shadow: var(--pl-shadow); }
.pl-split h2 { margin-top: 0 !important; }
.pl-legal .arb-main { max-width: 820px; }
.pl-contact-card { background: var(--pl-pine) url(topo-light.svg) center / cover no-repeat; color: rgba(255, 255, 255, .86); border-radius: var(--pl-radius-lg); padding: 26px 28px; margin: 0 0 32px; border-top: 6px solid var(--pl-amber); }
.pl-contact-card p { color: rgba(255, 255, 255, .86); margin: 0 0 8px; }
.pl-contact-card strong { color: #fff; }
.pl-contact-card a { color: #fff !important; }

/* Blog/search loops and 404 */
a.read-more, .read-more a, .entry-footer .read-more { background: transparent !important; color: var(--pl-amber-ink) !important; border: 2px solid var(--pl-amber-ink) !important; border-radius: 6px !important; padding: 8px 18px !important; font-family: var(--pl-body) !important; font-weight: 700 !important; text-transform: none !important; }
a.read-more:hover { background: var(--pl-amber-ink) !important; color: #fff !important; }
.error404 .error-title { font-family: var(--pl-head) !important; font-size: clamp(80px, 14vw, 160px) !important; font-weight: 600 !important; line-height: 1 !important; color: var(--pl-pine) !important; margin: 0 0 12px !important; }

/* Contact Form 7 / WPForms on the contact page */
.wpcf7 input:not([type="submit"]), .wpcf7 textarea, .wpforms-form input:not([type="submit"]), .wpforms-form textarea { border: 1px solid var(--pl-rule) !important; border-radius: 6px !important; background: #fff !important; box-shadow: none !important; }

/* ---------- Responsive ---------- */
@media (max-width: 1100px) {
  .pl-trails-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 991px) {
  .arb-head { grid-template-columns: 1fr; gap: 28px; }
  .arb-head-img { order: -1; }
  .arb-layout { grid-template-columns: 1fr; gap: 24px; }
  .arb-aside { position: static; }
  .arb-aside-cta { display: none; }
  .arb-toc { padding: 16px 16px 10px; }
  .arb-cards { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .pl-trail { grid-template-columns: 1fr; }
  .pl-trail > a.pl-trail-img img { min-height: 0; aspect-ratio: 1200 / 630; height: auto; }
  .pl-trail > .pl-trail-body { grid-column: 1; grid-row: 2; }
  .pl-hero-grid { grid-template-columns: 1fr; min-height: 0; }
  .pl-hero-img { order: -1; height: 280px; }
  .pl-hero-img:before { background: linear-gradient(0deg, var(--pl-pine) 0%, rgba(23, 51, 45, 0) 45%); }
  .pl-hero-text { padding: 28px 24px 84px; }
  .pl-safety-grid, .pl-newsletter, .pl-trio, .pl-split { grid-template-columns: 1fr; gap: 24px; }
  .single-post #comments, .single-post .comments-area { margin-left: 0; }
}
@media (max-width: 640px) {
  body { font-size: 16.5px; }
  .noo-page-heading { padding: 40px 0 36px !important; }
  .arb-article p, .arb-article li { font-size: 17px; }
  .arb-lead { font-size: 18.5px !important; }
  .arb-head-img { padding: 10px 10px 0 0; }
  .arb-head-img img { left: -10px; }
  .arb-cards, .pl-trails-grid, .pl-compare, .pl-how { grid-template-columns: 1fr; }
  .pl-how:before { display: none; }
  .pl-search { grid-template-columns: 1fr; }
  .pl-home section { padding: 54px 0; }
  .pl-notes { padding: 22px 20px 16px; }
  .pl-trail-body { padding: 22px 20px 18px; }
  .pl-newsletter { padding: 24px; }
  .jobs.posts-loop article.noo_job .loop-item-wrap { flex-direction: column; align-items: stretch; gap: 12px; padding: 16px !important; }
  .jobs.posts-loop .show-view-more { flex-direction: row; justify-content: space-between; align-items: center; }
  .jobs.posts-loop .loop-item-title a { font-size: 17px !important; }
  .pl-jobs .elementor-widget-container { padding: 0 16px; }
  .single-noo_job .plji-facts { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { * { transition: none !important; } }

/* Front-page guide cards: natural height (no stretched empty space inside shorter cards). */
.pl-trails-grid { align-items: start; }
.pl-trails-grid .arb-card-more { margin-top: 0; }

/* Mobile header toggles: the theme paints them white on our light header. */
.noo-header .navbar-toggle, .noo-header .navbar-toggle i, .noo-header .member-navbar-toggle i { color: var(--pl-pine) !important; }
/* Eyebrows on dark sections use the bright amber (contrast on pine). */
.pl-hero .pl-eyebrow { color: var(--pl-amber) !important; }
