/* Canonical public header shared by every customer-facing page. */
.aw-global-header {
  position: sticky !important;
  top: 0;
  z-index: 10000;
  width: 100%;
  height: 76px !important;
  border-bottom: 1px solid rgb(37 37 37 / .08);
  background: rgb(255 255 255 / .96) !important;
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.aw-global-header-row {
  width: 100%;
  height: 76px;
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  padding-inline: clamp(20px, 3.472vw, 58px);
}

.aw-global-brand {
  width: 92px;
  min-width: 92px;
  height: 68px;
  display: flex;
  align-items: center;
  overflow: visible;
}

.aw-global-brand img {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: contain;
  object-position: left center;
}

.aw-global-desktop-nav {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(20px, 2.222vw, 34px);
  white-space: nowrap;
  color: #777;
  font-size: 12px;
}

.aw-global-desktop-nav a {
  position: relative;
  padding: 12px 2px;
  color: inherit;
  text-decoration: none;
}

.aw-global-guide { position: relative; }
.aw-global-guide-link { display: block; }
.aw-global-guide-menu {
  position: absolute;
  top: calc(100% - 1px);
  left: 50%;
  width: 156px;
  padding: 7px;
  border: 1px solid rgb(37 37 37 / .1);
  border-radius: 8px;
  background: rgb(255 255 255 / .98);
  box-shadow: 0 16px 34px rgb(37 37 37 / .12);
  opacity: 0;
  visibility: hidden;
  transform: translate(-50%, 5px);
  transition: opacity 180ms ease, transform 180ms ease, visibility 180ms ease;
}

.aw-global-guide:hover .aw-global-guide-menu,
.aw-global-guide:focus-within .aw-global-guide-menu {
  opacity: 1;
  visibility: visible;
  transform: translate(-50%, 0);
}

.aw-global-guide-menu a {
  display: block;
  padding: 10px 11px;
  border-radius: 5px;
  color: #656260;
  font-size: 12px;
}

.aw-global-guide-menu a::after { display: none; }
.aw-global-guide-menu a:hover,
.aw-global-guide-menu a:focus-visible,
.aw-global-guide-menu a[aria-current='page'] { color: #252525; background: #f2f1f0; }

.aw-global-desktop-nav a:hover,
.aw-global-desktop-nav a:focus-visible,
.aw-global-desktop-nav a[aria-current='page'] { color: #252525; }

.aw-global-desktop-nav a::after {
  content: '';
  position: absolute;
  left: 50%;
  right: 50%;
  bottom: 5px;
  height: 1px;
  background: currentColor;
  transition: left 220ms ease, right 220ms ease;
}

.aw-global-desktop-nav a:hover::after,
.aw-global-desktop-nav a:focus-visible::after,
.aw-global-desktop-nav a[aria-current='page']::after { left: 2px; right: 2px; }

.aw-global-menu-toggle {
  display: none;
  justify-self: end;
  width: 44px;
  height: 44px;
  padding: 11px;
  border: 0;
  background: transparent;
  cursor: pointer;
}

.aw-global-menu-toggle span {
  display: block;
  width: 22px;
  height: 1px;
  margin: 5px 0;
  background: #252525;
  transition: transform 180ms ease, opacity 180ms ease;
}

.aw-global-menu-toggle[aria-expanded='true'] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.aw-global-menu-toggle[aria-expanded='true'] span:nth-child(2) { opacity: 0; }
.aw-global-menu-toggle[aria-expanded='true'] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.aw-global-mobile-nav {
  position: absolute;
  inset: 76px 0 auto;
  max-height: calc(100vh - 76px);
  padding: 10px 24px 20px;
  overflow-y: auto;
  border-top: 1px solid rgb(37 37 37 / .06);
  background: #fff;
  box-shadow: 0 18px 32px rgb(37 37 37 / .1);
}

.aw-global-mobile-nav[hidden] { display: none; }

.aw-global-mobile-nav a {
  display: block;
  padding: 13px 2px;
  border-bottom: 1px solid #ececec;
  color: #656260;
  font-size: 14px;
  text-decoration: none;
}

.aw-global-mobile-nav a[aria-current='page'] { color: #252525; font-weight: 700; }

.aw-global-header a:focus-visible,
.aw-global-menu-toggle:focus-visible {
  outline: 2px solid #b68a38;
  outline-offset: 3px;
}

.aw-global-header.aw-header-scrolled {
  box-shadow: 0 10px 34px rgb(37 37 37 / .1);
  background: rgb(255 255 255 / .9) !important;
}

/* Keep the existing guide and order-form layouts; only align their palette to the home concept. */
body.aw-page-guide {
  background: #f4f4f3;
  color: #252525;
}

body.aw-page-guide .eyebrow,
body.aw-page-guide .section-head > p,
body.aw-page-guide .help-card p,
body.aw-page-guide .flow-note span { color: #777; }

body.aw-page-guide .help-card,
body.aw-page-guide .surface-section,
body.aw-page-guide .soft-section,
body.aw-page-guide .notice-box,
body.aw-page-guide .flow-note {
  border-color: #d7d7d5;
  background: #fff;
  box-shadow: none;
}

body.aw-page-guide .help-label { color: #777574; background: #efeeee; }
body.aw-page-guide .notice-box { color: #5f5d5c; }
body.aw-page-guide .section-kicker { color: #5f5d5c; background: #efeeee; }
body.aw-page-guide .btn-gold { border-color: #777574; background: #777574; color: #fff; }

body.aw-page-apply {
  --order-bg: #f4f4f3;
  --order-card: #fff;
  --order-ink: #252525;
  --order-muted: #888583;
  --order-coral: #777574;
  --order-coral-dark: #5f5d5c;
  --order-peach: #d8d6d4;
  --order-line: #d7d7d5;
  --order-soft: #efeeee;
}

body.aw-page-apply .order-benefits,
body.aw-page-apply .upload-notice,
body.aw-page-apply .notice-panel,
body.aw-page-apply .request-guide,
body.aw-page-apply .submit-notice { background: #f7f6f5; }

body.aw-page-apply .order-section:hover { border-color: #c9c6c5; box-shadow: 0 14px 34px rgb(37 37 37 / .06); }

body.aw-page-apply .order-benefits,
body.aw-page-apply .order-section,
body.aw-page-apply .order-notice,
body.aw-page-apply .person-strength,
body.aw-page-apply .strength-group label,
body.aw-page-apply .request-details,
body.aw-page-apply .brightness-options,
body.aw-page-apply .common-request-card,
body.aw-page-apply .request-row input,
body.aw-page-apply .optional-section,
body.aw-page-apply .submit-notice { border-color: #d7d7d5; }

body.aw-page-apply .order-benefits span + span::before,
body.aw-page-apply .order-section-head,
body.aw-page-apply .strength-group + .strength-group,
body.aw-page-apply .request-details-body,
body.aw-page-apply .common-request-card > div:first-child,
body.aw-page-apply .optional-body,
body.aw-page-apply .submit-agreements { border-color: #e3e2e1; }

body.aw-page-apply .order-step,
body.aw-page-apply .optional-number,
body.aw-page-apply .order-submit { box-shadow: 0 8px 20px rgb(37 37 37 / .12); }

body.aw-page-apply .order-field input:hover,
body.aw-page-apply .order-field select:hover,
body.aw-page-apply .optional-body input:hover,
body.aw-page-apply .optional-body textarea:hover,
body.aw-page-apply .order-dropzone:hover,
body.aw-page-apply .order-dropzone.drag,
body.aw-page-apply .strength-group label:hover,
body.aw-page-apply .request-details:hover { border-color: #aaa7a5; }

body.aw-page-apply .order-field input:focus,
body.aw-page-apply .order-field select:focus,
body.aw-page-apply .optional-body input:focus,
body.aw-page-apply .optional-body textarea:focus,
body.aw-page-apply .request-row input:focus {
  border-color: #777574;
  background: #fff;
  box-shadow: 0 0 0 4px rgb(119 117 116 / .1);
}

body.aw-page-apply .order-dropzone,
body.aw-page-apply .selected-file,
body.aw-page-apply .request-details[open] summary,
body.aw-page-apply .strength-group label:hover,
body.aw-page-apply .strength-group label:has(input:checked) { background: #f7f6f5; }

body.aw-page-apply .order-dropzone { border-color: #c9c6c5; }
body.aw-page-apply .order-dropzone:hover,
body.aw-page-apply .order-dropzone.drag { box-shadow: 0 10px 28px rgb(37 37 37 / .08); }
body.aw-page-apply .selected-file { border-color: #e3e2e1; }
body.aw-page-apply .request-row button { background: #efeeee; color: #777574; }
body.aw-page-apply .add-request { border-color: #aaa7a5; color: #5f5d5c; }
body.aw-page-apply .add-request:hover { color: #fff; background: #777574; }
body.aw-page-apply .order-submit:hover { box-shadow: 0 12px 28px rgb(37 37 37 / .18); }

@media (max-width: 900px) {
  .aw-global-header-row { grid-template-columns: 1fr auto; padding-inline: 24px; }
  .aw-global-brand { width: 82px; min-width: 82px; }
  .aw-global-desktop-nav { display: none; }
  .aw-global-menu-toggle { display: block; grid-column: 2; }
}

@media (max-width: 640px) {
  .aw-global-header-row { padding-inline: 16px; }
  .aw-global-brand { width: 72px; min-width: 72px; height: 62px; }
}

@media (prefers-reduced-motion: reduce) {
  .aw-global-header *, .aw-global-header *::before, .aw-global-header *::after { transition: none !important; }
}
