/* =========================================================
   PharmaScript header (template-parts/header-psn.php)
   A full bar at the top; a floating pill once the page scrolls;
   a full-screen menu below 1280px. All selectors are scoped to .psn.
   ========================================================= */
.psn {
  --psn-ink: #0A1A36;
  --psn-ink-2: #3B4A66;
  --psn-blue: #104EAE;
  --psn-blue-d: #0B3B87;
  --psn-mint: #17845A;
  --psn-paper: #F5F8FD;
  --psn-ease: cubic-bezier(.22, .61, .21, 1);
  --psn-reveal: cubic-bezier(.77, 0, .18, 1);
  --psn-fast: .35s;
  --psn-base: .8s;
  --psn-gutter: clamp(20px, 4vw, 64px);
  --psn-sans: "Atkinson Hyperlegible Next", "Segoe UI", system-ui, -apple-system, sans-serif;
  --psn-serif: "Source Serif 4", "Source Serif Pro", Georgia, serif;
  font-family: var(--psn-sans);
  color: var(--psn-ink);
  -webkit-font-smoothing: antialiased;
}
.psn *, .psn *::before, .psn *::after { box-sizing: border-box; }
.psn ul, .psn li { margin: 0; padding: 0; list-style: none; }
.psn li::before { content: none; }
.psn a { color: inherit; text-decoration: none; }
.psn a:hover, .psn a:focus { color: inherit; }
.psn button { appearance: none; -webkit-appearance: none; margin: 0; border: 0; background: none; color: inherit; font: inherit; cursor: pointer; }
.psn :focus-visible { outline: 2px solid var(--psn-blue); outline-offset: 4px; }
/* neutralise the theme's old menu styling (it targets .current-menu-item, .sub-menu li and the header tag) */
/* at the top of the page the bar is a white strip with the original soft shadow */
.psn .psn-bar { background: #fff; box-shadow: 0 0 16px rgba(0, 0, 0, .15); }
.psn .psn-menu li,
.psn .psn-menu li:hover,
.psn .psn-menu .current-menu-item { background: none; }
.psn .psn-menu .current-menu-item a,
.psn .psn-menu a { color: inherit !important; }
.psn .psn-menu .current-menu-item a:not(.psn-btn),
.psn .psn-menu a:not(.psn-btn) { border-bottom: 0 !important; }
.psn .psn-menu .sub-menu li { padding: 0; background: none; }
.psn .psn-menu > li > a { white-space: nowrap; }
.psn img.custom-logo { display: block; width: auto; max-width: none; height: 100%; }
.psn .psn-logo { flex: none; }
.psn .psn-logo a { display: block; height: 100%; }

.psn-shell { width: 100%; max-width: 1520px; margin: 0 auto; padding-inline: var(--psn-gutter); }

/* type: the small spaced capitals */
.psn .psn-label,
.psn .psn-menu > li > a { font-family: var(--psn-sans); font-size: 11.5px; font-weight: 600; line-height: 1; letter-spacing: .2em; text-transform: uppercase; }

/* underline: a short stroke at rest that runs the full width on hover */
.psn .psn-ul,
.psn .psn-menu > li > a,
.psn .psn-menu .sub-menu a { position: relative; display: inline-flex; align-items: center; gap: .9em; padding-block: .4em; }
.psn .psn-ul::after,
.psn .psn-menu > li > a::after,
.psn .psn-menu .sub-menu a::after {
  content: "";
  position: absolute;
  inset-inline: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
  transform: scaleX(.28);
  transform-origin: 0 50%;
  transition: transform var(--psn-base) var(--psn-ease);
}
.psn .psn-ul:focus-visible::after,
.psn .psn-menu a:focus-visible::after,
.psn .psn-menu > li.current-menu-item > a::after,
.psn .psn-menu > li.current-menu-ancestor > a::after { transform: scaleX(1); }
@media (hover: hover) and (pointer: fine) {
  .psn .psn-ul:hover::after,
  .psn .psn-menu > li > a:hover::after,
  .psn .psn-menu > li:hover > a::after,
  .psn .psn-menu .sub-menu a:hover::after { transform: scaleX(1); }
}

/* buttons: a colour that wipes up from the bottom on hover */
.psn .psn-btn {
  position: relative;
  isolation: isolate;
  overflow: hidden;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: .9em;
  min-height: 44px;
  padding: 0 24px;
  border: 1px solid currentColor;
  transition: color var(--psn-base) var(--psn-ease), border-color var(--psn-base) var(--psn-ease);
}
.psn .psn-btn::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  background: var(--psn-fill, var(--psn-blue));
  transform: scaleY(0);
  transform-origin: 50% 100%;
  transition: transform var(--psn-base) var(--psn-reveal);
}
.psn .psn-btn:focus-visible::before { transform: scaleY(1); }
.psn .psn-btn:focus-visible { color: var(--psn-fill-ink, #fff) !important; }
@media (hover: hover) and (pointer: fine) {
  .psn .psn-btn:hover::before { transform: scaleY(1); }
  .psn .psn-btn:hover { color: var(--psn-fill-ink, #fff) !important; }
}
.psn .psn-btn--solid { background: var(--psn-blue); border-color: var(--psn-blue); color: #fff !important; --psn-fill: var(--psn-mint); --psn-fill-ink: #fff; }
.psn .psn-btn--solid:hover { border-color: var(--psn-mint); }

/* burger: two strokes, the lower one shorter */
.psn-burger { display: flex; flex-direction: column; gap: 6px; width: 24px; }
.psn-burger span { height: 1px; width: 100%; background: currentColor; }
.psn-burger span:last-child { width: 66%; align-self: flex-end; }

/* =========================================================
   1. The full bar at the top of the page
   ========================================================= */
.psn-bar { position: relative; z-index: 50; background: var(--psn-paper); }
.psn .psn-strip { display: flex; justify-content: flex-end; gap: 32px; padding-top: 14px; color: var(--psn-ink-2); }
.psn .psn-strip .psn-label { font-size: 10.5px; }
.psn .psn-dim { opacity: .55; }
.psn-bar__row { display: flex; align-items: center; justify-content: space-between; gap: 24px; height: 92px; }
.psn .psn-bar .psn-logo { height: 58px; }

.psn-nav .psn-menu { display: flex; align-items: center; gap: 30px; }
.psn-nav .psn-menu > li { position: relative; display: flex; align-items: center; }

/* the last menu item (Login) is the bar's button, after a thin divider */
.psn .psn-nav .psn-menu > li:last-child { margin-left: 6px; padding-left: 36px; }
.psn .psn-nav .psn-menu > li:last-child::before { content: ""; position: absolute; left: 0; top: 50%; width: 1px; height: 16px; margin-top: -8px; background: currentColor; opacity: .3; }
.psn .psn-nav .psn-menu > li:last-child > a { min-height: 44px; padding: 0 24px; }
.psn .psn-nav .psn-menu > li:last-child > a::after { display: none; }

/* dropdowns */
.psn .psn-menu .sub-menu {
  position: absolute;
  top: calc(100% + 12px);
  left: -22px;
  z-index: 5;
  min-width: 230px;
  padding: 12px 22px;
  border: 1px solid rgba(10, 26, 54, .1);
  border-radius: 22px;
  background: rgba(245, 248, 253, .94);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 48px rgba(10, 26, 54, .12);
  opacity: 0;
  visibility: hidden;
  transform: translateY(-6px);
  transition: opacity var(--psn-fast) var(--psn-ease), transform var(--psn-fast) var(--psn-ease), visibility 0s linear var(--psn-fast);
}
.psn .psn-menu .sub-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.psn .psn-menu li:hover > .sub-menu,
.psn .psn-menu li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; transition-delay: 0s; }
.psn .psn-menu .sub-menu li { display: block; }
.psn .psn-menu .sub-menu a { font-size: 10.5px; font-weight: 600; line-height: 1; letter-spacing: .18em; text-transform: uppercase; padding-block: 10px 6px; white-space: nowrap; }
.psn .psn-menu > li.menu-item-has-children:not(:last-child) > a::before {
  content: "";
  order: 2;
  width: 5px;
  height: 5px;
  margin-top: -3px;
  border-right: 1px solid currentColor;
  border-bottom: 1px solid currentColor;
  transform: rotate(45deg);
  transition: transform var(--psn-fast) var(--psn-ease);
}
.psn .psn-menu > li.menu-item-has-children:not(:last-child):hover > a::before { transform: translateY(2px) rotate(225deg); }
.psn .psn-nav .psn-menu > li:last-child > .sub-menu { left: auto; right: 0; }
/* Login with a single destination links straight to it, so its one-item dropdown is dropped */
.psn .psn-menu > li.psn-single > .sub-menu { display: none; }

.psn .psn-open { display: none; align-items: center; gap: 12px; min-height: 44px; padding-left: 12px; }

/* =========================================================
   2. The floating pill, once the page scrolls
   ========================================================= */
.psn-pill-wrap {
  position: fixed;
  inset-inline: 0;
  top: 0;
  z-index: 9990;
  display: flex;
  justify-content: center;
  padding: 16px 24px 0;
  pointer-events: none;
  visibility: hidden;
  opacity: 0;
  transform: translateY(-110%);
  transition: transform .7s var(--psn-ease), opacity .7s var(--psn-ease), visibility 0s linear .7s;
}
.psn-pill-wrap.is-shown { visibility: visible; opacity: 1; transform: none; transition-delay: 0s; }
body.admin-bar .psn-pill-wrap { top: 32px; }
.psn-pill {
  pointer-events: auto;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  width: 100%;
  max-width: 1180px;
  padding: 6px 6px 6px 28px;
  border: 1px solid rgba(10, 26, 54, .1);
  border-radius: 999px;
  background: rgba(245, 248, 253, .85);
  -webkit-backdrop-filter: blur(12px);
  backdrop-filter: blur(12px);
  box-shadow: 0 18px 48px rgba(10, 26, 54, .1);
  color: var(--psn-ink);
}
.psn .psn-logo--pill { height: 38px; }
.psn .psn-nav--pill .psn-menu { gap: 26px; }
.psn .psn-nav--pill .psn-menu > li > a { font-size: 10.5px; }
.psn .psn-nav--pill .psn-menu > li:last-child { display: none; }
.psn .psn-nav--pill .psn-menu .sub-menu { top: calc(100% + 22px); }
.psn-pill__end { display: flex; align-items: center; gap: 8px; }
.psn .psn-pill__login { min-height: 44px; padding: 0 22px; border-radius: 999px; font-size: 10.5px; }
.psn .psn-circle { display: none; place-items: center; width: 44px; height: 44px; border: 1px solid rgba(10, 26, 54, .2); border-radius: 50%; transition: border-color .5s; }
.psn .psn-circle:hover { border-color: var(--psn-ink); }
.psn .psn-circle .psn-burger { width: 18px; gap: 5px; }

/* =========================================================
   3. The full-screen menu
   ========================================================= */
.psn-overlay {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: flex;
  flex-direction: column;
  overflow-y: auto;
  color: #F5F8FD;
  background: var(--psn-ink);
  clip-path: inset(0 0 100% 0);
  transition: clip-path var(--psn-base) var(--psn-reveal);
}
.psn-overlay[hidden] { display: none; }
.psn-overlay.is-open { clip-path: inset(0 0 0 0); }
.psn-overlay__bg {
  position: absolute;
  inset: 0;
  overflow: hidden;
  pointer-events: none;
  background:
    radial-gradient(55% 75% at 72% 28%, rgba(23, 132, 90, .42), transparent 70%),
    radial-gradient(40% 55% at 18% 82%, rgba(245, 248, 253, .12), transparent 70%),
    linear-gradient(160deg, #13305A, #0A1A36 60%);
}
.psn-overlay__bg::after {
  content: "";
  position: absolute;
  inset: -20%;
  background: radial-gradient(35% 45% at 50% 50%, rgba(61, 123, 219, .28), transparent 70%);
  animation: psn-drift 18s ease-in-out infinite alternate;
}
@keyframes psn-drift { from { transform: translate(-18%, 12%); } to { transform: translate(16%, -14%); } }
.psn-overlay__top { position: relative; display: flex; align-items: center; justify-content: space-between; height: 92px; flex: none; }
.psn .psn-logo--light { height: 52px; }
.psn .psn-logo--light img { filter: brightness(0) invert(1); }
.psn .psn-close { display: inline-flex; align-items: center; gap: 12px; min-height: 44px; padding-left: 12px; }
.psn-x { position: relative; width: 16px; height: 16px; }
.psn-x::before, .psn-x::after { content: ""; position: absolute; left: 0; top: 50%; width: 100%; height: 1px; background: currentColor; transform: rotate(45deg); }
.psn-x::after { transform: rotate(-45deg); }

.psn-overlay__nav { position: relative; flex: 1; display: flex; flex-direction: column; justify-content: center; gap: 8px; padding-bottom: 64px; }
.psn-overlay__nav .psn-menu { display: flex; flex-direction: column; gap: 6px; }
.psn .psn-overlay__nav .psn-menu > li { overflow: hidden; }
.psn .psn-overlay__nav .psn-menu > li > a {
  display: inline-block;
  padding-block: 8px;
  font-family: var(--psn-serif);
  font-size: clamp(22px, 3.2vw, 34px);
  font-weight: 400;
  line-height: 1.18;
  letter-spacing: .26em;
  white-space: normal;
  transition: color var(--psn-fast) var(--psn-ease);
}
.psn .psn-overlay__nav .psn-menu > li:not(:last-child) > a::after,
.psn .psn-overlay__nav .psn-menu > li:not(:last-child) > a::before { display: none; }
.psn .psn-overlay__nav .psn-menu > li:last-child > a::after { display: none; }
.psn .psn-overlay__nav .psn-menu > li > a:hover { color: #7FD1AE !important; }
.psn .psn-overlay__nav .psn-menu .sub-menu { position: static; display: flex; flex-wrap: wrap; gap: 4px 28px; min-width: 0; margin: 0 0 8px; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; opacity: 1; visibility: visible; transform: none; -webkit-backdrop-filter: none; backdrop-filter: none; }
.psn .psn-overlay__nav .psn-menu .sub-menu::before { display: none; }
.psn .psn-overlay__nav .psn-menu .sub-menu a { opacity: .75; }
/* Login: the overlay's button */
.psn .psn-overlay__nav .psn-menu > li:last-child { margin-top: 34px; }
.psn .psn-overlay__nav .psn-menu > li:last-child > a { display: inline-flex; align-items: center; min-height: 52px; padding: 0 2.1em; font-family: var(--psn-sans); font-size: 11.5px; font-weight: 600; letter-spacing: .2em; line-height: 1; background: var(--psn-mint); border-color: var(--psn-mint); color: #fff !important; --psn-fill: #F5F8FD; --psn-fill-ink: var(--psn-ink); }

.psn .psn-overlay__foot { display: flex; flex-wrap: wrap; gap: 14px 32px; margin-top: 28px; }
.psn .psn-overlay__foot .psn-label { font-size: 10.5px; opacity: .8; }

/* staggered entrance of the menu lines */
.psn .psn-overlay__nav .psn-menu > li > *,
.psn .psn-stagger { transform: translateY(110%); opacity: 0; transition: transform .9s var(--psn-ease), opacity .9s var(--psn-ease); }
.psn .psn-overlay.is-open .psn-overlay__nav .psn-menu > li > *,
.psn .psn-overlay.is-open .psn-stagger { transform: none; opacity: 1; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(1) > * { transition-delay: .30s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(2) > * { transition-delay: .36s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(3) > * { transition-delay: .42s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(4) > * { transition-delay: .48s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(5) > * { transition-delay: .54s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(6) > * { transition-delay: .60s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(7) > * { transition-delay: .66s; }
.psn .psn-overlay__nav .psn-menu > li:nth-child(n+8) > * { transition-delay: .72s; }
.psn .psn-stagger { transition-delay: .78s; }
.psn-lock { overflow: hidden !important; }

/* =========================================================
   Narrower screens: the links move into the full-screen menu
   ========================================================= */
@media (max-width: 1279px) {
  .psn .psn-bar .psn-nav, .psn .psn-nav--pill { display: none; }
  .psn .psn-open { display: inline-flex; }
  .psn .psn-circle { display: grid; }
  .psn .psn-strip { display: none; }
  .psn-pill { max-width: 640px; padding-left: 20px; }
}
@media (max-width: 640px) {
  .psn-bar__row, .psn-overlay__top { height: 76px; }
  .psn .psn-bar .psn-logo { height: 46px; }
  .psn .psn-logo--light { height: 44px; }
  .psn .psn-logo--pill { height: 32px; }
  .psn-pill-wrap { padding: 10px 12px 0; }
  .psn .psn-pill__login { padding: 0 18px; }
  .psn .psn-overlay__nav .psn-menu > li > a { font-size: 21px; letter-spacing: .14em; }
}
@media (max-width: 782px) { body.admin-bar .psn-pill-wrap { top: 46px; } }

@media (prefers-reduced-motion: reduce) {
  .psn *, .psn *::before, .psn *::after { transition-duration: .01ms !important; transition-delay: 0s !important; animation: none !important; }
}

/* =========================================================
   Navbar type: back to the site's original Poppins (31 Oct 2026)
   13px semi-bold capitals with normal letter spacing; dropdown links 14px regular.
   ========================================================= */
.psn { --psn-sans: "Poppins", "Segoe UI", system-ui, sans-serif; --psn-serif: "Poppins", "Segoe UI", system-ui, sans-serif; }
.psn .psn-label,
.psn .psn-menu > li > a { font-size: 13px; font-weight: 600; letter-spacing: normal; }
.psn .psn-nav--pill .psn-menu > li > a,
.psn .psn-pill .psn-pill__login { font-size: 12px; }
.psn .psn-strip .psn-label { font-size: 12.5px; font-weight: 500; }
.psn .psn-menu .sub-menu a { font-size: 14px; font-weight: 400; letter-spacing: normal; text-transform: none; }
.psn .psn-overlay__nav .psn-menu > li > a { font-size: clamp(24px, 3.4vw, 36px); font-weight: 600; letter-spacing: normal; }
.psn .psn-overlay__nav .psn-menu > li:last-child > a { font-size: 13px; letter-spacing: normal; }
@media (max-width: 640px) {
  .psn .psn-overlay__nav .psn-menu > li > a { font-size: 22px; letter-spacing: normal; }
  .psn .psn-overlay__nav .psn-menu > li:last-child > a { font-size: 13px; }
}

/* =========================================================
   FOOTER: a light refresh to match the page (31 Oct 2026)
   Same widgets and content; deeper brand blue, rounded top,
   the navbar's underline, softer icons and a pill Admin button.
   (Kept in this site-wide stylesheet so it applies on every page.)
   ========================================================= */
footer#footer {
  position: relative;
  overflow: hidden;
  padding: 76px 0 36px;
  border-radius: 40px 40px 0 0;
  background:
    radial-gradient(55% 90% at 92% 0%, rgba(23, 132, 90, .30), transparent 62%),
    radial-gradient(45% 80% at 0% 100%, rgba(61, 123, 219, .38), transparent 66%),
    linear-gradient(160deg, #104EAE 0%, #0B3B87 72%);
  color: #fff;
}
footer#footer .widget .widget-title {
  position: relative;
  margin-bottom: 24px;
  padding-bottom: 14px;
  font-size: 18px;
  font-weight: 600;
  letter-spacing: -0.005em;
  color: #fff;
}
footer#footer .widget .widget-title::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: 0;
  width: 28px;
  height: 2px;
  border-radius: 2px;
  background: #7FD1AE;
}

/* contact rows: the icon sits in a soft circle */
footer#footer address abbr {
  display: block;
  position: relative;
  min-height: 34px;
  margin-bottom: 14px !important;
  padding: 6px 0 14px 48px;
  border-bottom: 1px solid rgba(255, 255, 255, .12);
  font-size: 15px;
  line-height: 1.5;
  color: rgba(255, 255, 255, .9);
  text-decoration: none;
}
footer#footer address abbr:last-child { border-bottom: 0; margin-bottom: 0 !important; }
footer#footer address abbr > .fa {
  position: absolute;
  left: 0;
  top: 0;
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background: rgba(255, 255, 255, .1);
  font-size: 13px;
  line-height: 1;
}

/* links: the navbar's short stroke that runs full width on hover */
footer#footer address a,
footer#footer .menu a {
  position: relative;
  display: inline-block;
  padding-bottom: 3px;
  font-size: 15px;
  text-decoration: none;
}
footer#footer address a::after,
footer#footer .menu a::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background: currentColor;
  transform: scaleX(.28);
  transform-origin: 0 50%;
  transition: transform .8s cubic-bezier(.22, .61, .21, 1);
}
footer#footer address a:hover::after,
footer#footer .menu a:hover::after,
footer#footer address a:focus-visible::after,
footer#footer .menu a:focus-visible::after { transform: scaleX(1); }
footer#footer .widget ul li { padding-bottom: 12px; }

/* social icons: one calm style instead of three brand colours */
footer#footer .widget a[class^="social_"] {
  display: inline-grid;
  place-items: center;
  width: 44px;
  height: 44px;
  margin-right: 10px;
  padding: 0;
  border: 1px solid rgba(255, 255, 255, .24) !important;
  background-color: rgba(255, 255, 255, .08) !important;
  transition: background-color .35s cubic-bezier(.22, .61, .21, 1), border-color .35s cubic-bezier(.22, .61, .21, 1), color .35s;
}
footer#footer .widget a[class^="social_"]:hover {
  border-color: #fff !important;
  background-color: #fff !important;
  color: #104EAE !important;
}
footer#footer .widget a[class^="social_"] i,
footer#footer .widget a[class^="social_"] i::before { font-size: 15px; line-height: 1; color: inherit; }

/* bottom line */
footer#footer .uk-grid-collapse.footer_sub { margin-top: 56px; padding-top: 26px; border-top: 1px solid rgba(255, 255, 255, .14); }
footer#footer .copyright-text { font-size: 14px; color: rgba(255, 255, 255, .72); }
footer#footer .copyright-text a {
  margin-top: 14px !important;
  padding: 8px 22px !important;
  border: 1px solid rgba(255, 255, 255, .35) !important;
  border-radius: 999px !important;
  background: transparent !important;
  font-size: 12px !important;
  font-weight: 600 !important;
  letter-spacing: .06em;
  transition: background-color .35s, color .35s, border-color .35s;
}
footer#footer .copyright-text a:hover { background: #fff !important; border-color: #fff !important; color: #104EAE !important; }

@media (max-width: 640px) {
  footer#footer { padding: 56px 0 28px; border-radius: 28px 28px 0 0; }
  footer#footer .uk-grid-collapse.footer_sub { margin-top: 40px; }
}

/* =========================================================
   Navbar dropdown fix (1 Nov 2026)
   The theme's `ul.sub-menu { padding: 0 !important; width: 200px !important }`
   flattened the panel, so its links sat flush against the edge. Restore the
   inset (text lines up with the parent link) and size the panel to its links.
   The links keep the navbar's underline: a short stroke at rest that runs
   the full width on hover. The pill's hover bridge covers its whole 22px gap
   so the panel can't close while the pointer travels down to it.
   ========================================================= */
.psn .psn-nav .psn-menu .sub-menu {
  left: -22px;
  width: max-content !important;
  min-width: 200px;
  padding: 10px 22px 14px !important;
  border-radius: 16px;
  background: rgba(255, 255, 255, .97);
}
.psn .psn-nav--pill .psn-menu .sub-menu::before { top: -23px; height: 23px; }
.psn .psn-nav .psn-menu .sub-menu li + li { margin-top: 4px; }
.psn .psn-nav .psn-menu .sub-menu .current-menu-item > a::after { transform: scaleX(1); }

/* =========================================================
   Compact bar (1 Nov 2026): less space between the Email us / Call us now
   strip and the menu row, so the whole bar is shorter. Desktop only; below
   1280px the strip is hidden and the bar is unchanged.
   ========================================================= */
@media (min-width: 1280px) {
  .psn .psn-strip { padding-top: 11px; }
  .psn .psn-bar .psn-bar__row { height: 82px; margin-top: -3px; }
  .psn .psn-bar .psn-logo { height: 55px; }
}
