:root {
  --pf-header-ink: #111827;
  --pf-header-muted: #667085;
  --pf-header-line: #e9edf3;
  --pf-header-surface: #ffffff;
  --pf-header-dark: #151b26;
  --pf-header-gold: #fbbd23;
  --pf-header-gold-deep: #e99a00;
}

.pf-site-header,
.pf-site-header * { box-sizing: border-box; }
.pf-site-header { position: relative; z-index: 1040; color: var(--pf-header-ink); background: var(--pf-header-surface); font-family: "Archivo", Arial, sans-serif; font-size: 14px; }
.pf-site-header a { text-decoration: none; }

.pf-utility-bar { min-height: 40px; color: #d9dee7; background: #101620; font-size: 14px; }
.pf-utility-inner { min-height: 38px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.pf-utility-left,
.pf-utility-links,
.pf-social-links { display: flex; align-items: center; }
.pf-utility-left { gap: 18px; }
.pf-location { display: inline-flex; align-items: center; gap: 7px; white-space: nowrap; }
.pf-location i { color: var(--pf-header-gold); }
.pf-social-links { gap: 5px; }
.pf-social-links a { width: 27px; height: 27px; display: grid; place-items: center; border-radius: 4px; color: #d9dee7; }
.pf-social-links a:hover { color: #111827; background: var(--pf-header-gold); }
.pf-utility-links { justify-content: flex-end; gap: 24px; }
.pf-utility-links > a { color: #eef1f5; font-weight: 600; }
.pf-utility-links > a:hover { color: var(--pf-header-gold); }
.pf-utility-cta { min-height: 38px; display: inline-flex; align-items: center; gap: 8px; padding: 0 20px; color: #181308 !important; background: var(--pf-header-gold); font-weight: 800 !important; }

.pf-brand-bar { border-bottom: 1px solid var(--pf-header-line); background: rgba(255,255,255,.98); }
.pf-brand-inner { min-height: 94px; display: flex; align-items: center; gap: 26px; }
.pf-brand { flex: 0 0 auto; display: inline-flex; align-items: center; }
.pf-brand img { display: block; width: auto; height: 66px; object-fit: contain; }
.pf-trust-group { margin-left: auto; display: flex; align-items: center; gap: 0; border-left: 1px solid #e1e5eb; }
.pf-trust-badge { min-width: 128px; min-height: 64px; display: grid; place-items: center; padding: 5px 18px; border-right: 1px solid #e1e5eb; background: #fff; }
.pf-trust-badge img { display: block; width: auto; height: 54px; max-width: 118px; object-fit: contain; }
.pf-trust-badge:nth-child(2) img { height: 49px; }
.pf-contact-group { display: flex; align-items: center; gap: 12px; }
.pf-contact-card { min-height: 54px; display: flex; align-items: center; gap: 10px; padding: 6px 9px; border-radius: 4px; }
.pf-contact-card:hover { background: #f7f8fa; }
.pf-contact-icon { flex: 0 0 38px; width: 38px; height: 38px; display: grid; place-items: center; border-radius: 4px; color: #614300; background: #ffecb1; font-size: 15px; }
.pf-contact-copy { display: flex; flex-direction: column; gap: 2px; }
.pf-contact-copy small { color: var(--pf-header-muted); font-size: 14px; font-weight: 600; }
.pf-contact-copy strong { color: #101828; font-size: 14px; font-weight: 800; white-space: nowrap; }
.pf-brand-cta { min-height: 46px; display: inline-flex; align-items: center; justify-content: center; gap: 9px; padding: 0 20px; border-radius: 5px; color: #181308; background: var(--pf-header-gold); font-size: 14px; font-weight: 800; white-space: nowrap; }
.pf-brand-cta:hover { color: #181308; background: #eeb019; }

.pf-nav-shell { background: #111827; border-bottom: 3px solid var(--pf-header-gold); box-shadow: 0 5px 14px rgba(16,24,40,.13); }
.pf-site-header.has-sticky-nav { padding-bottom: var(--pf-sticky-nav-height, 61px); }
.pf-nav-shell.pf-nav-fixed { position: fixed; z-index: 1050; top: 0; right: 0; left: 0; box-shadow: 0 12px 30px rgba(8,15,27,.24); }
.pf-nav-inner { min-height: 58px; display: flex; align-items: stretch; }
.pf-nav { width: 100%; display: flex; align-items: stretch; }
.pf-nav-list { width: 100%; display: flex; align-items: stretch; justify-content: space-between; gap: 2px; margin: 0; padding: 0; list-style: none; }
.pf-nav-item { position: relative; display: flex; align-items: stretch; }
.pf-nav-link,
.pf-menu-trigger { position: relative; display: inline-flex; align-items: center; gap: 7px; padding: 0 14px; border: 0; border-bottom: 3px solid transparent; color: #f7f8fa; background: transparent; font: inherit; font-size: 14px; font-weight: 700; text-transform: capitalize; white-space: nowrap; cursor: pointer; }
.pf-menu-trigger i { color: #c7ced8; font-size: 9px; }
.pf-nav-link::after,
.pf-menu-trigger::after { display: none; }
.pf-nav-link:hover,
.pf-nav-link.is-active,
.pf-menu-trigger.is-active,
.pf-menu-trigger:hover,
.pf-nav-item.is-open > .pf-menu-trigger { color: var(--pf-header-gold); background: rgba(255,255,255,.035); }
.pf-nav-link:hover,
.pf-nav-link.is-active,
.pf-menu-trigger.is-active,
.pf-menu-trigger:hover,
.pf-nav-item.is-open > .pf-menu-trigger { border-bottom-color: var(--pf-header-gold); }

.pf-submenu { position: absolute; top: 100%; left: 0; width: 270px; margin: 0; padding: 8px; border: 1px solid #dfe3e9; border-bottom: 4px solid var(--pf-header-gold); border-radius: 0 0 5px 5px; background: #fff; box-shadow: 0 18px 36px rgba(16,24,40,.16); list-style: none; opacity: 0; visibility: hidden; transform: translateY(-5px); transition: opacity .18s ease, transform .18s ease, visibility .18s ease; }
.pf-submenu::before { display: none; }
.pf-submenu a { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px; border-radius: 3px; color: #344054; font-size: 14px; font-weight: 700; line-height: 1.35; text-transform: capitalize; transition: color .18s ease, background-color .18s ease, transform .18s ease; }
.pf-submenu a::after { content: "\f061"; color: #aab2bf; font-family: "Font Awesome 5 Free"; font-size: 9px; font-weight: 900; opacity: 0; transform: translateX(-5px); transition: opacity .18s ease, transform .18s ease; }
.pf-submenu a:hover { color: #563c00; background: #fff5d9; transform: translateX(4px); }
.pf-submenu a:hover::after { opacity: 1; transform: translateX(0); }
.pf-nav-item:hover > .pf-submenu,
.pf-nav-item:focus-within > .pf-submenu,
.pf-nav-item.is-open > .pf-submenu { opacity: 1; visibility: visible; transform: translateY(0); }
.pf-submenu-right { right: 0; left: auto; }
.pf-mega-menu { right: -290px; left: auto; width: min(780px, calc(100vw - 32px)); padding: 18px; }
.pf-mega-grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 12px; }
.pf-mega-column { padding: 4px; }
.pf-mega-column > span { display: block; padding: 0 10px 8px; color: #825c00; font-size: 14px; font-weight: 800; letter-spacing: .02em; text-transform: capitalize; }
.pf-mega-column a { padding: 8px 10px; }

.pf-mobile-toggle { display: none; width: 46px; height: 46px; margin-left: auto; border: 2px solid #111827; border-radius: 5px; color: #111827; background: #fff; font-size: 18px; cursor: pointer; }
.pf-mobile-nav-close { display: none; }
.pf-mobile-overlay { position: fixed; inset: 0; z-index: 1038; border: 0; background: rgba(15,23,42,.58); opacity: 0; visibility: hidden; transition: .25s ease; }
.pf-mobile-contact { display: none; }

@media (max-width:1199px) {
  .pf-trust-badge { min-width: 105px; padding: 5px 10px; }
  .pf-contact-card:last-child { display: none; }
  .pf-nav-link,.pf-menu-trigger { padding: 0 9px; font-size: 14px; }
  .pf-mega-menu { right: -210px; }
}

@media (max-width:991px) {
  .pf-utility-links > a:not(.pf-utility-cta) { display: none; }
  .pf-utility-cta { padding: 0 13px; }
  .pf-brand-inner { min-height: 76px; }
  .pf-brand img { height: 52px; }
  .pf-trust-group,.pf-contact-group,.pf-brand-cta { display: none; }
  .pf-mobile-toggle { display: grid; place-items: center; }
  .pf-nav-shell { min-height: 0; background: transparent; box-shadow: none; }
  .pf-site-header.has-sticky-nav { padding-bottom: 0; }
  .pf-nav-shell.pf-nav-fixed { position: static; }
  .pf-nav-inner { min-height: 0; }
  .pf-nav { position: fixed; top: 0; right: 0; z-index: 1041; width: min(390px, 88vw); height: 100dvh; display: block; padding: 88px 18px 22px; overflow-y: auto; background: #121925; box-shadow: -20px 0 50px rgba(15,23,42,.28); transform: translateX(105%); transition: transform .28s ease; }
  .pf-mobile-nav-close { position: absolute; top: 22px; right: 18px; width: 42px; height: 42px; display: grid; place-items: center; border: 1px solid rgba(255,255,255,.15); border-radius: 11px; color: #fff; background: rgba(255,255,255,.07); font-size: 17px; cursor: pointer; }
  .pf-site-header.is-menu-open .pf-nav { transform: translateX(0); }
  .pf-site-header.is-menu-open .pf-mobile-overlay { opacity: 1; visibility: visible; }
  .pf-nav-list { display: block; }
  .pf-nav-item { display: block; border-bottom: 1px solid rgba(255,255,255,.08); }
  .pf-nav-link,.pf-menu-trigger { width: 100%; min-height: 51px; justify-content: space-between; padding: 0 9px; color: #f7f8fa; font-size: 14px; }
  .pf-nav-link::after,.pf-menu-trigger::after { display: none; }
  .pf-submenu,.pf-mega-menu { position: static; width: 100%; max-height: 0; padding: 0 7px; overflow: hidden; border: 0; border-radius: 0; background: rgba(255,255,255,.035); box-shadow: none; opacity: 1; visibility: visible; transform: none; transition: max-height .3s ease, padding .3s ease; }
  .pf-nav-item:hover > .pf-submenu,.pf-nav-item:focus-within > .pf-submenu { max-height: 0; padding-top: 0; padding-bottom: 0; }
  .pf-nav-item.is-open > .pf-submenu { max-height: 850px; padding-top: 8px; padding-bottom: 8px; }
  .pf-submenu a { color: #cfd5df; }
  .pf-submenu a:hover { color: var(--pf-header-gold); background: rgba(255,255,255,.04); }
  .pf-mega-grid { grid-template-columns: 1fr; gap: 2px; }
  .pf-mega-column > span { padding-top: 8px; color: var(--pf-header-gold); }
  .pf-mobile-contact { display: grid; gap: 10px; margin-top: 24px; }
  .pf-mobile-contact a { min-height: 44px; display: flex; align-items: center; justify-content: center; gap: 9px; border-radius: 5px; color: #1d1709; background: var(--pf-header-gold); font-size: 14px; font-weight: 700; }
  body.pf-menu-locked { overflow: hidden; }
}


@media (max-width:575px) {
  .pf-utility-bar { min-height: 34px; }
  .pf-utility-inner { min-height: 34px; }
  .pf-location span { display: none; }
  .pf-social-links a { width: 25px; height: 25px; }
  .pf-utility-cta { min-height: 34px; font-size: 14px; }
  .pf-brand-inner { min-height: 70px; }
  .pf-brand img { height: 46px; max-width: 235px; object-fit: contain; }
  .pf-mobile-toggle { width: 42px; height: 42px; }
}
