/* Shared site chrome (header + footer) — single source of truth for every content page.
   Generated markup: tools/normalize_chrome.py. Brand tokens match the homepage. */
.hsg-header,.hsg-footer{--hg-green:#0C3B2C;--hg-green-deep:#082A20;--hg-gold:#C8A24B;--hg-gold-light:#E6CE8E;--hg-serif:'Cormorant Garamond',Georgia,serif;--hg-sans:'Jost','Segoe UI',system-ui,sans-serif;font-family:var(--hg-sans);font-weight:300;line-height:1.6;text-align:left}
.hsg-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
.hsg-header{position:sticky;top:0;z-index:50;background:rgba(12,59,44,.96);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);border-bottom:1px solid rgba(200,162,75,.25);padding:0;color:#eef3ef}
.hsg-nav{display:flex;align-items:center;justify-content:space-between;gap:12px 20px;min-height:74px;height:auto;flex-wrap:wrap;padding:6px 0}
.hsg-logo{display:flex;align-items:center}
.hsg-logo img{height:44px;width:auto;display:block}
.hsg-nav-links{display:flex;gap:22px;align-items:center;flex-wrap:wrap}
.hsg-header .hsg-nav-links a{color:#eef3ef;font-size:14px;letter-spacing:.03em;font-weight:400;text-decoration:none;white-space:nowrap}
.hsg-header .hsg-nav-links a:hover{color:var(--hg-gold)}
.hsg-header .hsg-nav-links a[aria-current="page"]{color:var(--hg-gold-light)}
.hsg-header .hsg-nav-links a.hsg-btn{display:inline-block;padding:10px 22px;border-radius:2px;background:var(--hg-gold);color:var(--hg-green-deep);font-weight:500;transition:.25s}
.hsg-header .hsg-nav-links a.hsg-btn:hover{background:var(--hg-gold-light);color:var(--hg-green-deep)}
@media(max-width:760px){
  .hsg-wrap{padding:0 16px}
  .hsg-nav{min-height:0;padding:10px 0 8px}
  .hsg-nav-links{width:100%;flex-wrap:nowrap;overflow-x:auto;gap:18px;padding-bottom:6px;-webkit-overflow-scrolling:touch;scrollbar-width:none}
  .hsg-nav-links::-webkit-scrollbar{display:none}
}
.hsg-footer{background:var(--hg-green-deep);color:#bcc8c0;padding:56px 0 28px;margin-top:56px;font-size:14px}
.hsg-foot-grid{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:36px;margin-bottom:36px}
.hsg-footer h3,.hsg-footer h4{color:var(--hg-gold);font-family:var(--hg-sans);font-size:13px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;margin:0 0 14px}
.hsg-footer a{display:block;color:#bcc8c0;padding:5px 0;font-size:14px;text-decoration:none}
.hsg-footer a:hover{color:var(--hg-gold)}
.hsg-foot-logo img{height:62px;width:auto;display:block;margin-bottom:14px}
.hsg-foot-about{font-size:14px;max-width:320px;margin:0;color:#bcc8c0}
.hsg-foot-social a{display:inline-block;margin-right:14px}
.hsg-foot-bottom{border-top:1px solid rgba(255,255,255,.1);padding-top:22px;text-align:center;font-size:13px;color:#8a988e}
.hsg-foot-pref{margin-top:18px;text-align:center;font-size:13px;color:#bcc8c0}
@media(max-width:900px){.hsg-foot-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.hsg-foot-grid{grid-template-columns:1fr}.hsg-footer{padding:40px 0 24px}}
/* AEO / FAQ blocks injected into hand-built pages: render them in the brand type system */
.hsg-aeo{max-width:860px;margin:44px auto 0;padding:0 24px;font-family:'Jost','Segoe UI',system-ui,sans-serif;font-weight:300;line-height:1.7;color:#3a473f;text-align:left}
.hsg-aeo h2{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:#0C3B2C;font-size:clamp(28px,4vw,36px);line-height:1.15;margin:0 0 16px;padding-bottom:10px;border-bottom:2px solid #C8A24B}
.hsg-aeo h3{font-family:'Cormorant Garamond',Georgia,serif;font-weight:600;color:#0C3B2C;font-size:21px;line-height:1.25}
.hsg-aeo a{color:#8B6B21;text-decoration:underline}
.hsg-aeo table{background:#fff;border-radius:4px;overflow:hidden}
@media(max-width:560px){.hsg-aeo{padding:0 16px}.hsg-aeo table{font-size:14px}}
/* Accessibility, shared by every page (2026-10-17).
   1.4.1 Use of Colour — links inside running copy get an underline instead of
   relying on colour alone (gold #8B6B21 on cream differs from the body text by
   1.96:1, well under the 3:1 that colour-only distinction needs).
   2.5.8 Target Size — inline vertical padding lifts short links to a 24px hit area
   without changing line height or wrapping. Nav, buttons and footer link lists are
   deliberately excluded so the chrome design is untouched. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}
.hsg-footer p a,.hsg-footer .hsg-foot-about a{text-decoration:underline;text-underline-offset:3px}
.hsg-aeo p a,.hsg-aeo li a{text-decoration:underline;text-underline-offset:3px;padding:5px 0}
/* 2.1.1 Keyboard — sideways-scrolling table wrappers carry tabindex="0"
   (tools/normalize_scrollers.py); this is the focus indicator that tells a
   keyboard visitor the region is now scrollable with the arrow keys. */
.tw:focus-visible,figure.distribb-table:focus-visible,.gal-track:focus-visible{outline:3px solid #8B6B21;outline-offset:3px}
