/* FAR Landing — interactive US map ([far_us_map]). Light theme by default; --dark for the homepage coverage section. */
.far-usmap{--fu-red:#D30000;--fu-red-deep:#A30000;--fu-ink:#0B0B0C;--fu-ease:cubic-bezier(.2,.7,.1,1);
  --fu-bg:#fff;--fu-text:#0B0B0C;--fu-dim:#55555a;--fu-faint:#8a8a8f;--fu-line:#E7E5E4;
  --fu-st:#F5F5F4;--fu-st-line:#CFCBC7;--fu-hover:#fff;--fu-hq-line:#A30000;--fu-hq-hover:#A30000;--fu-hq-hover-line:#0B0B0C;
  font-family:Inter,system-ui,sans-serif;color:var(--fu-text);background:var(--fu-bg);padding:96px clamp(16px,4vw,56px);-webkit-font-smoothing:antialiased}
.far-usmap--dark{--fu-bg:transparent;--fu-text:#fff;--fu-dim:rgba(255,255,255,.7);--fu-faint:rgba(255,255,255,.55);--fu-line:rgba(255,255,255,.15);
  --fu-st:#1d1e22;--fu-st-line:#0b0b0c;--fu-hover:#fff;--fu-hq-line:#7a0000;--fu-hq-hover:#ff2a2a;--fu-hq-hover-line:#fff}
.far-usmap--stage{padding:0}
.far-usmap *{box-sizing:border-box}
.far-usmap a{color:inherit;text-decoration:none}
.far-usmap__head{max-width:760px;margin:0 auto 36px;text-align:center}
.far-usmap__kicker{font-size:11px;font-weight:700;letter-spacing:.18em;text-transform:uppercase;color:var(--fu-red)}
.far-usmap__title{font-family:Oswald,sans-serif;text-transform:uppercase;font-weight:700;font-size:clamp(36px,4.6vw,64px);line-height:.95;margin:12px 0 14px;color:var(--fu-text)}
.far-usmap__title span{color:var(--fu-red)}
.far-usmap__lede{font-size:17px;line-height:1.55;color:var(--fu-dim);margin:0}
.far-usmap__stage{position:relative;max-width:1120px;margin:0 auto}
.far-usmap__stage svg{width:100%;height:auto;display:block;overflow:visible}
.far-usmap__legend{display:flex;justify-content:center;gap:26px;flex-wrap:wrap;margin-top:22px;font-size:13px;color:var(--fu-dim)}
.far-usmap .far-usmap__legend span{display:inline-flex;align-items:center;font-style:normal}
.far-usmap .far-usmap__legend i{display:inline-block;width:14px;height:14px;border-radius:4px;margin:0 8px 0 0;padding:0;font-style:normal;background:var(--fu-st);box-shadow:inset 0 0 0 1px var(--fu-st-line)}
.far-usmap .far-usmap__legend i.sw-hq{background:var(--fu-red);box-shadow:none}

.far-usmap .state,.far-usmap .state:focus,.far-usmap .state:focus-visible{outline:none}
.far-usmap .state .st{fill:var(--fu-st);stroke:var(--fu-st-line);stroke-width:.8;stroke-linejoin:round;transition:fill .25s,stroke .25s;outline:none}
.far-usmap .is-link .st{cursor:pointer}
.far-usmap .is-static .st{cursor:default}
.far-usmap .state:hover .st,.far-usmap .state:focus-visible .st,.far-usmap .state.is-on .st{fill:var(--fu-hover);stroke:var(--fu-red);stroke-width:1.6}
.far-usmap .state .st.st-hq{fill:var(--fu-red);stroke:var(--fu-hq-line)}
.far-usmap .state:hover .st.st-hq,.far-usmap .state.is-on .st.st-hq{fill:var(--fu-hq-hover);stroke:var(--fu-hq-hover-line)}
.far-usmap .lbl{font-family:Oswald,sans-serif;font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;fill:#fff;pointer-events:none}

.far-usmap__tip{position:absolute;z-index:3;pointer-events:none;opacity:0;transform:translate(-50%,calc(-100% - 14px)) scale(.96);transition:opacity .18s,transform .25s var(--fu-ease);
  background:#fff;color:var(--fu-ink);border:1.5px solid var(--fu-red);border-radius:10px;padding:9px 13px;box-shadow:0 18px 40px -18px rgba(11,11,12,.35);white-space:nowrap;min-width:150px}
.far-usmap__tip.on{opacity:1;transform:translate(-50%,calc(-100% - 14px)) scale(1)}
.far-usmap__tip::after{content:"";position:absolute;left:50%;bottom:-7px;width:12px;height:12px;background:#fff;border-right:1.5px solid var(--fu-red);border-bottom:1.5px solid var(--fu-red);transform:translateX(-50%) rotate(45deg)}
.far-usmap__tip b{display:block;font-family:Oswald,sans-serif;font-weight:600;font-size:17px;letter-spacing:.03em;text-transform:uppercase;line-height:1}
.far-usmap__tip small{display:block;margin-top:4px;font-size:11.5px;color:#55555a}
.far-usmap__tip small em{font-style:normal;color:var(--fu-red);font-weight:600}

.far-usmap__readout{max-width:520px;margin:18px auto 0;min-height:52px;display:flex;align-items:center;justify-content:center;gap:14px;padding:10px 18px;border:1.5px solid var(--fu-line);border-radius:999px;font-size:14px;color:var(--fu-dim);text-align:center;transition:border-color .25s}
.far-usmap__readout.is-on{border-color:var(--fu-red)}
.far-usmap__readout b{font-family:Oswald,sans-serif;font-weight:600;font-size:18px;letter-spacing:.03em;text-transform:uppercase;color:var(--fu-text)}
.far-usmap__readout em{font-style:normal;color:var(--fu-red);font-weight:600}
.far-usmap--dark .far-usmap__readout em{color:#ff4d4d}

.far-usmap__cta{display:flex;justify-content:center;align-items:center;gap:18px;flex-wrap:wrap;margin-top:26px}
.far-usmap__btn{display:inline-flex;align-items:center;font-weight:600;font-size:15px;color:#fff;background:var(--fu-red);border-radius:999px;padding:14px 24px;transition:background .25s,transform .3s var(--fu-ease)}
.far-usmap__btn:hover{background:var(--fu-red-deep);color:#fff;transform:translateY(-2px)}
.far-usmap__tel{font-family:Oswald,sans-serif;font-weight:600;font-size:20px;letter-spacing:.02em;color:var(--fu-text)}
.far-usmap__tel small{display:block;font-family:Inter,sans-serif;font-weight:500;font-size:11px;letter-spacing:.14em;text-transform:uppercase;color:var(--fu-faint)}

.far-usmap__pick{display:none;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap;margin-top:28px;font-size:14px;color:var(--fu-dim)}
.far-usmap.is-linked .far-usmap__pick{display:flex}
.far-usmap__pick select{appearance:none;font:inherit;font-weight:600;color:var(--fu-ink);padding:12px 44px 12px 16px;border-radius:999px;border:1.5px solid var(--fu-line);background:#fff url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230B0B0C' stroke-width='2.2'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 16px center/14px;min-width:240px}
.far-usmap__pick button{font:inherit;font-weight:600;color:#fff;background:var(--fu-red);border:0;border-radius:999px;padding:13px 20px;cursor:pointer}

/* homepage coverage column: the old static map had a fixed aspect ratio; the component sizes itself */
.cov-map{aspect-ratio:auto}
@media(max-width:720px){.far-usmap{padding:64px 16px}.far-usmap--stage{padding:0}.far-usmap .state .st{stroke-width:.6}.far-usmap__tip{display:none}}
