/* fdx prairie silo rail */
:root {
  --fdx-ink: #2b261c; --fdx-paper: #f6f0e4; --fdx-wheat: #c4a35a;
  --fdx-slate: #3e4650; --fdx-mute: #6b6458;
  --fdx-display: Rockwell, "Courier New", Georgia, serif; --fdx-body: Baskerville, "Baskerville Old Face", Georgia, serif; --fdx-mark: "Courier New", "Lucida Console", monospace;
}
*,*::before,*::after { box-sizing: border-box; }
html,body { margin: 0; }
body.fdx-body {
  background: var(--fdx-paper);
  color: var(--fdx-ink);
  font-family: var(--fdx-body);
  font-size: 16.8px;
  line-height: 1.68;
}
body.fdx-lock { overflow: hidden; }
a { color: #8a5a22; }
h1,h2,h3 { font-family: var(--fdx-display); margin: 0 0 0.45em; color: var(--fdx-slate); letter-spacing: -0.02em; line-height: 1.14; }
h1 { font-size: clamp(2rem, 5vw, 3.3rem); }
h2 { font-size: clamp(1.3rem, 2.6vw, 1.85rem); }
p { margin: 0 0 1em; }
ul,ol { margin: 0 0 1em; padding: 0 0 0 1.1em; }
address { font-style: normal; }
.fdx-app { display: grid; grid-template-columns: 230px 1fr; min-height: 100vh; }
.fdx-silo { background: var(--fdx-slate); color: #f6f0e4; padding: 1.4rem 1.1rem; position: sticky; top: 0; height: 100vh; overflow: auto; }
.fdx-silo a { color: var(--fdx-wheat); }
.fdx-brand { text-decoration: none; display: block; margin-bottom: 1.4rem; color: inherit; }
.fdx-brand strong { display: block; font-family: var(--fdx-display); font-size: 1.35rem; }
.fdx-brand span { font-size: 0.7rem; letter-spacing: 0.14em; text-transform: uppercase; opacity: 0.8; }
.fdx-silo nav ul { list-style: none; padding: 0; margin: 0 0 1.2rem; }
.fdx-silo nav a { text-decoration: none; display: block; padding: 0.35rem 0; font-size: 0.86rem; color: #f6f0e4; }
.fdx-silo .is-here a { color: var(--fdx-wheat); }
.fdx-skip { position: absolute; left: 8px; top: -40px; background: var(--fdx-wheat); color: #111; padding: 6px; z-index: 60; }
.fdx-skip:focus { top: 8px; }
.fdx-burger { display: none; }
.fdx-main { padding: 2.2rem 2.4rem 4rem; }
.fdx-kicker { font-family: var(--fdx-mark); font-size: 0.68rem; letter-spacing: 0.2em; text-transform: uppercase; color: #8a5a22; }
.fdx-lede { font-size: 1.08rem; color: var(--fdx-mute); max-width: 40em; }
.fdx-clockface { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; margin: 1.4rem 0; }
.fdx-clockface b { display: block; font-size: 1.4rem; font-family: var(--fdx-display); }
.fdx-clockface div { border: 1px solid #ddd2bc; padding: 0.8rem; background: #fffaf0; }
.fdx-strip { display: grid; grid-template-columns: 1fr 1fr; gap: 28px; margin: 2rem 0; }
.fdx-band { margin: 2rem 0; padding: 1.4rem 0; border-top: 8px solid var(--fdx-wheat); }
.fdx-act { display: inline-block; background: var(--fdx-slate); color: #fff !important; text-decoration: none; padding: 0.65rem 1.1rem; letter-spacing: 0.08em; text-transform: uppercase; font-size: 0.76rem; }
.fdx-act--ghost { background: transparent; color: var(--fdx-slate) !important; border: 1px solid var(--fdx-slate); }
.fdx-cta-row { display: flex; flex-wrap: wrap; gap: 10px; }
.fdx-quotes { display: grid; gap: 14px; }
.fdx-foot { margin-top: 3rem; padding-top: 1.4rem; border-top: 1px solid #ddd2bc; display: grid; grid-template-columns: 1.2fr 1fr 1fr; gap: 18px; }
.fdx-clock, .fdx-links { list-style: none; padding: 0; margin: 0; font-size: 0.9rem; }
.fdx-clock li { display: flex; justify-content: space-between; padding: 0.2rem 0; }
.fdx-form { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.fdx-form .full { grid-column: 1 / -1; }
.fdx-form label { display: block; font-size: 0.75rem; text-transform: uppercase; letter-spacing: 0.08em; }
.fdx-form input, .fdx-form select, .fdx-form textarea { width: 100%; padding: 0.5rem; border: 1px solid #ddd2bc; font: inherit; }
.fdx-rates { display: grid; grid-template-columns: 1fr 1fr; gap: 12px; }
.fdx-card { border: 1px solid #ddd2bc; padding: 1rem; }
.fdx-sum { font-size: 1.7rem; font-family: var(--fdx-display); }
.fdx-blog a { display: block; padding: 0.9rem 0; border-bottom: 1px dashed #ddd2bc; text-decoration: none; color: inherit; }
.fdx-people { display: grid; gap: 16px; }
.fdx-faq details { padding: 0.6rem 0; border-bottom: 1px solid #ddd2bc; }
.fdx-lost { padding: 3rem 0; }
@media (max-width: 880px) {
  .fdx-app { grid-template-columns: 1fr; }
  .fdx-silo { position: relative; height: auto; }
  .fdx-silo nav { display: none; }
  .fdx-silo nav.is-open { display: block; }
  .fdx-burger { display: block; width: 100%; margin: 0.6rem 0; background: var(--fdx-wheat); border: 0; padding: 0.5rem; cursor: pointer; }
  .fdx-main { padding: 1.4rem 1.1rem 3rem; }
  .fdx-clockface, .fdx-strip, .fdx-foot, .fdx-form, .fdx-rates { grid-template-columns: 1fr; }
}
