:root {
  --mb-ink: #17120f;
  --mb-forest: #173d2f;
  --mb-paper: #f7f0e5;
  --mb-brass: #dfa94e;
  --mb-line: rgba(23, 18, 15, 0.16);
}

body.woocommerce-account {
  background: var(--mb-paper) !important;
  color: var(--mb-ink);
  font-family: "Source Sans 3", Arial, sans-serif;
  --ast-global-color-2: #17120f;
  --ast-global-color-3: #655b51;
}

body.woocommerce-account #masthead,
body.woocommerce-account #colophon,
body.woocommerce-account .site-header,
body.woocommerce-account .site-footer,
body.woocommerce-account .ast-footer-overlay,
body.woocommerce-account .ast-footer-copyright { display: none !important; }

.hgb-account-header {
  background: #2d2822;
  color: #fff8ec;
  padding: 20px clamp(24px, 5vw, 74px);
}

.hgb-account-header__inner,
.hgb-account-content {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
}

.hgb-account-brand {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: inherit;
  font-family: "DM Serif Display", Georgia, serif;
  font-size: clamp(1.4rem, 2.3vw, 1.8rem);
  text-decoration: none;
}

.hgb-account-mark {
  display: grid;
  width: 40px;
  height: 40px;
  place-items: center;
  border: 1px solid currentColor;
  border-radius: 50%;
  font: 700 0.8rem "Source Sans 3", Arial, sans-serif;
}

body.woocommerce-account #content,
body.woocommerce-account .site-content,
body.woocommerce-account .ast-container { background: transparent !important; }

body.woocommerce-account .site-content > .ast-container,
body.woocommerce-account .ast-plain-container.ast-no-sidebar #primary { max-width: none; }

body.woocommerce-account .entry-header { display: none; }
body.woocommerce-account .entry-content { margin: 0 !important; }

.hgb-account-intro {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto;
  padding: clamp(54px, 8vw, 100px) 0 34px;
}

.hgb-account-intro p {
  margin: 0 0 14px;
  color: #a96e23;
  font: 700 0.78rem/1.2 "DM Mono", monospace;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}

.hgb-account-intro h1 {
  max-width: 620px;
  margin: 0;
  color: var(--mb-ink) !important;
  font: 400 clamp(2.8rem, 6vw, 5.4rem)/0.94 "DM Serif Display", Georgia, serif;
}

.hgb-account-intro div {
  max-width: 580px;
  margin-top: 18px;
  color: #695f55;
  font-size: 1.12rem;
  font-weight: 600;
}

.hgb-account-intro .hgb-account-policy { margin-top: 16px; font-size: .98rem; }
.hgb-account-intro .hgb-account-policy a { color: #173d2f; font-weight: 800; text-decoration-thickness: .08em; text-underline-offset: .16em; }

body.woocommerce-account .woocommerce {
  width: min(1120px, calc(100% - 40px));
  margin: 0 auto 88px;
}

body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation {
  border: 1px solid var(--mb-line) !important;
  background: #fffaf1;
  border-radius: 0 !important;
  box-shadow: 9px 9px 0 #d69a45;
}

body.woocommerce-account .woocommerce-form-login,
body.woocommerce-account .woocommerce-form-register { padding: 28px !important; }
body.woocommerce-account .woocommerce-form-login { margin-top: 0 !important; }

body.woocommerce-account .woocommerce h2,
body.woocommerce-account .woocommerce h3,
body.woocommerce-account .woocommerce label,
body.woocommerce-account .woocommerce p,
body.woocommerce-account .woocommerce a:not(.button) {
  color: var(--mb-ink) !important;
}

body.woocommerce-account .woocommerce,
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-navigation,
body.woocommerce-account .woocommerce-info,
body.woocommerce-account .woocommerce-message,
body.woocommerce-account .woocommerce-notice {
  color: var(--mb-ink) !important;
  font-size: 1rem;
  font-weight: 600;
  line-height: 1.58;
}

body.woocommerce-account .woocommerce-MyAccount-navigation a,
body.woocommerce-account .woocommerce-MyAccount-content a:not(.button) {
  color: #173d2f !important;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

body.woocommerce-account .woocommerce-MyAccount-navigation .is-active a {
  color: #17120f !important;
  background: #e7bd6a;
}

body.woocommerce-account .woocommerce .woocommerce-privacy-policy-text,
body.woocommerce-account .woocommerce .woocommerce-LostPassword a {
  color: #695f55 !important;
}

/* Some Astra/WooCommerce installs render a slim legal footer outside the
   standard footer wrapper. Keep it readable if it is present. */
body.woocommerce-account .site-below-footer-wrap,
body.woocommerce-account .site-below-footer-wrap *,
body.woocommerce-account .ast-small-footer,
body.woocommerce-account .ast-small-footer * {
  color: #4e463d !important;
  font-weight: 600 !important;
}
body.woocommerce-account .site-below-footer-wrap a,
body.woocommerce-account .ast-small-footer a {
  color: #173d2f !important;
  text-decoration-thickness: .08em;
  text-underline-offset: .16em;
}

body.woocommerce-account .woocommerce-form-login input,
body.woocommerce-account .woocommerce-form-register input {
  min-height: 48px;
  border: 1px solid #9a8a77 !important;
  border-radius: 0 !important;
  background: #fffdf7 !important;
}

body.woocommerce-account .woocommerce button.button,
body.woocommerce-account .woocommerce a.button {
  border: 0 !important;
  border-radius: 999px !important;
  background: var(--mb-brass) !important;
  color: var(--mb-ink) !important;
  font-weight: 800 !important;
  padding: 14px 22px !important;
}

body.woocommerce-account .woocommerce-MyAccount-navigation { padding: 14px; }
body.woocommerce-account .woocommerce-MyAccount-navigation a { color: var(--mb-forest); font-weight: 800; }
body.woocommerce-account .woocommerce-MyAccount-content { padding: 30px; }

.hgb-library { max-width: 840px; }
.hgb-library__eyebrow { color: #a96e23 !important; font: 700 0.78rem/1.2 "DM Mono", monospace; letter-spacing: .08em; }
.hgb-library h1 { margin: 4px 0 26px; color: var(--mb-ink) !important; font: 400 clamp(2.3rem, 5vw, 4.3rem)/.98 "DM Serif Display", Georgia, serif; }
.hgb-library__card { display: flex; justify-content: space-between; gap: 24px; margin: 18px 0; padding: 26px; border: 1px solid var(--mb-line); background: var(--mb-forest); color: #fff8ec; }
.hgb-library__card p { margin: 0 0 9px; color: var(--mb-brass) !important; font: 700 .75rem "DM Mono", monospace; letter-spacing: .08em; }
.hgb-library__card h2 { margin: 0 0 9px; color: #fff8ec !important; font: 400 clamp(1.8rem, 4vw, 2.9rem)/1 "DM Serif Display", Georgia, serif; }
.hgb-library__card span { color: #e7decf; font-weight: 600; }
.hgb-library__card b { align-self: flex-start; border: 1px solid #dcb15a; padding: 7px 9px; color: #f6d385; font: 700 .72rem "DM Mono", monospace; letter-spacing: .05em; white-space: nowrap; }
.hgb-library__card--year { background: #2d2822; }
.hgb-library__help { margin-top: 28px; }

@media (max-width: 767px) {
  .hgb-account-header { padding-inline: 20px; }
  body.woocommerce-account .woocommerce-form-login,
  body.woocommerce-account .woocommerce-form-register { box-shadow: 5px 5px 0 #d69a45; }
}
