:root {
  --fs-night: #091229;
  --fs-gold-readable: #7a531d;
  --fs-gold: #c79a5e;
  --fs-terra: #a9513b;
  --fs-aqua: #5fe6e3;
}

.nav-logo { height:3rem !important; width:auto !important; }
footer { font-family:"Cormorant Garamond",serif; }
footer img[src*="logo-color"],
footer img[src*="logo.png"] { width:auto; max-height:3.5rem; }
footer a, footer li, footer span { line-height:1.45; }

.fs-mobile-menu-button,
.fs-mobile-drawer { display: none; }

@media (max-width: 767px) {
  .nav-logo { height:2.75rem !important; }
  body.fs-v20-nav > nav > a:not(:first-child),
  body.fs-v20-nav > header nav > a:not(:first-child) { display: none !important; }

  .fs-mobile-menu-button {
    position: fixed;
    top: 1.1rem;
    right: 1rem;
    z-index: 2147483000;
    display: grid;
    place-items: center;
    width: 3rem;
    height: 3rem;
    border: 1px solid rgba(199,154,94,.7);
    background: rgba(9,18,41,.96);
    color: #fff;
    box-shadow: 0 8px 24px rgba(5,10,25,.25);
  }
  .fs-mobile-menu-button span { display:block; width:1.45rem; height:1px; margin:.23rem 0; background:currentColor; }

  .fs-mobile-drawer {
    position: fixed;
    inset: 0;
    z-index: 2147483001;
    display: block;
    overflow-y: auto;
    padding: 5.6rem 1.25rem 2rem;
    color: #fff;
    background:
      radial-gradient(circle at 85% 8%, rgba(95,230,227,.16), transparent 28%),
      radial-gradient(circle at 8% 86%, rgba(169,81,59,.28), transparent 34%),
      var(--fs-night);
    transform: translateX(100%);
    visibility: hidden;
    transition: transform .35s ease, visibility .35s;
  }
  .fs-mobile-drawer.is-open { transform: translateX(0); visibility: visible; }
  .fs-mobile-drawer__logo { position:absolute; top:1.25rem; left:1.25rem; width:auto; height:3rem; }
  .fs-mobile-drawer__close { position:absolute; top:1.25rem; right:1.15rem; width:3rem; height:3rem; border:0; background:transparent; color:#fff; font-size:2.35rem; line-height:1; }
  .fs-mobile-drawer__eyebrow { margin:0 0 .55rem; color:#e8c48f; font-size:.88rem; font-weight:700; letter-spacing:.2em; text-transform:uppercase; }
  .fs-mobile-drawer h2 { margin:0 0 1.4rem; color:#fff; font-family:"Cormorant Garamond",serif; font-size:2.45rem; line-height:1.05; }
  .fs-mobile-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:.75rem; }
  .fs-mobile-tile { display:flex; min-height:7rem; flex-direction:column; justify-content:space-between; padding:1rem; border:1px solid rgba(255,255,255,.24); color:#fff; background:rgba(255,255,255,.055); text-decoration:none; }
  .fs-mobile-tile[aria-current="page"] { border-color:var(--fs-gold); background:rgba(199,154,94,.14); }
  .fs-mobile-number { color:#e8c48f; font-family:"Cormorant Garamond",serif; font-size:1.15rem; font-style:italic; }
  .fs-mobile-label { font-family:"Cormorant Garamond",serif; font-size:1.45rem; line-height:1.05; }
  .fs-mobile-member { display:flex; align-items:center; justify-content:space-between; min-height:4.7rem; margin-top:.8rem; padding:1rem 1.15rem; color:var(--fs-night); background:var(--fs-aqua); font-weight:700; text-decoration:none; }
  .fs-mobile-member small { display:block; margin-top:.2rem; font-family:"Cormorant Garamond",serif; font-size:1.15rem; font-weight:600; }
  .fs-mobile-secondary { display:flex; justify-content:space-between; gap:1rem; margin-top:1.25rem; }
  .fs-mobile-secondary a { color:#fff; font-size:.9rem; font-weight:700; letter-spacing:.08em; text-transform:uppercase; }
  .fs-mobile-secondary a:last-child { color:#e8c48f; }
}

@media (prefers-reduced-motion: reduce) {
  .fs-mobile-drawer { transition:none; }
}

/* Gold remains decorative on white; readable text uses the darker brand variant. */
body .bg-white .text-gold,
body .bg-cream .text-gold { color: var(--fs-gold-readable) !important; }
body .bg-gold.text-white,
body .bg-gold.text-cream { color: var(--fs-night) !important; }

.fs-related-services { padding: 3.5rem 1.5rem; color: #fff; background: var(--fs-night); text-align:center; }
.fs-related-services__inner { max-width: 64rem; margin:0 auto; }
.fs-related-services p { margin:0 0 .65rem; color:#e8c48f; font-size:.9rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.fs-related-services h2 { margin:0 0 1.5rem; color:#fff; font-family:"Cormorant Garamond",serif; font-size:2.2rem; }
.fs-related-services__links { display:flex; flex-wrap:wrap; justify-content:center; gap:.75rem; }
.fs-related-services__links a { padding:.8rem 1.05rem; border:1px solid rgba(199,154,94,.75); color:#fff; background:transparent; font-weight:700; text-decoration:none; }
.fs-related-services__links a:hover,
.fs-related-services__links a:focus { color:var(--fs-night); background:var(--fs-aqua); border-color:var(--fs-aqua); }

.fs-answers { padding:4rem 1.5rem; color:var(--fs-night); background:#fff; }
.fs-answers__inner { max-width:64rem; margin:0 auto; }
.fs-answers__eyebrow { margin:0 0 .55rem; color:var(--fs-gold-readable); font-size:.9rem; font-weight:700; letter-spacing:.18em; text-transform:uppercase; }
.fs-answers h2 { margin:0 0 1.75rem; font-family:"Cormorant Garamond",serif; font-size:2.35rem; line-height:1.1; }
.fs-answers__grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1rem; }
.fs-answer { padding:1.35rem; border-left:3px solid var(--fs-terra); background:#f7fbfb; }
.fs-answer h3 { margin:0 0 .55rem; font-family:"Cormorant Garamond",serif; font-size:1.45rem; font-weight:700; }
.fs-answer p { margin:0; font-size:1.05rem; line-height:1.65; }
@media (max-width:767px) { .fs-answers__grid { grid-template-columns:1fr; } }
