/* FLO by Fidus: bridge for older pages (blog, news, tools, FAQ, legal).
   Loaded after site.css. Remaps the old design tokens to the new identity and styles the new header/footer
   without loading the full flo.css (whose element rules would disturb older page layouts). */
:root, :root[data-theme="light"], :root[data-theme="dark"], [data-theme="dark"] {
  --brand-teal:#00697c; --brand-teal-dark:#004e5c; --brand-teal-light:#4fb6c6; --brand-teal-deep:#004e5c; --brand-teal-ink:#004e5c;
  --brand-indigo:#004e5c; --brand-indigo-dark:#003b46; --brand-indigo-light:#4fb6c6; --brand-indigo-deep:#003b46;
  --brand-coral:#c97c2e; --brand-coral-light:#e8961f;
  --grad-primary:linear-gradient(135deg,#00697c,#004e5c); --grad-accent:linear-gradient(135deg,#c97c2e,#a0601e);
  --grad-brand-text:linear-gradient(135deg,#00697c,#004e5c); --grad-subtle:none; --page-gradient:none;
  --font-display:'Fraunces',Georgia,'Times New Roman',serif; --font-body:'Cabinet Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif;
  --bg:#f5f0e8; --bg2:#ede8de; --bg3:#e5dfd4; --bg-elevated:#ffffff; --bg-subtle:#ede8de; --bg-muted:#e5dfd4;
  --text:#1a1612; --text-soft:#2a241e; --text-muted:#6b5f52; --text-faint:#8a7d6e;
  --border:#ddd5c8; --border-soft:#e5dfd4; --border-strong:#c4b8a8; --card:#ffffff; --card2:#ede8de;
  --line:#ddd5c8; --line2:#c4b8a8; --grid-line:rgba(26,22,18,.05); --glow-cyan:rgba(0,105,124,.05); --glow-mint:rgba(0,105,124,.04);
  --ticker-bg:#ede8de;
  /* new identity tokens used by the shared header/footer */
  --ink:#1a1612; --muted:#6b5f52; --faint:#c4b8a8; --flo:#00697c; --flo-l:#4fb6c6; --flo-d:#004e5c; --flo-wash:#d7e8ea; --amber:#c97c2e;
  --sans:'Cabinet Grotesk',system-ui,-apple-system,'Segoe UI',sans-serif; --serif:'Fraunces',Georgia,'Times New Roman',serif; --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme: light;
}
html, body { background:#f5f0e8 !important; color:#1a1612; }
body { font-family:var(--font-body); }
h1, h2, h3 { font-family:var(--font-display); letter-spacing:-.015em; }
.theme-toggle, #theme-toggle, .flo-sticky-demo, #flo-sticky-demo { display:none !important; }

/* ---- shared header ---- */
header#top { position:sticky; top:0; z-index:50; background:rgba(245,240,232,.92); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border-bottom:1px solid #ddd5c8; font-family:var(--sans); }
header#top .wrap { max-width:1140px; margin:0 auto; padding:0 24px; }
header#top .nav { display:flex; align-items:center; justify-content:space-between; height:72px; }
header#top .mark { display:inline-flex; align-items:center; gap:12px; text-decoration:none; }
header#top .mark img { height:34px; width:auto; display:block; }
header#top .mark small { font-size:11px; letter-spacing:.2em; font-weight:700; color:#6b5f52; text-transform:uppercase; padding-left:12px; border-left:1px solid #ddd5c8; line-height:1.3; }
header#top ul { display:flex; gap:30px; list-style:none; margin:0; padding:0; font-size:15px; font-weight:500; }
header#top ul a { text-decoration:none; color:#6b5f52; }
header#top ul a:hover, header#top ul a[aria-current="page"] { color:#1a1612; }
header#top .menu-cta { display:none; }
header#top .btn { display:inline-flex; align-items:center; gap:10px; padding:11px 18px; border-radius:999px; font-weight:700; font-size:14px; text-decoration:none; background:#1a1612; color:#f5f0e8; border:1.5px solid #1a1612; box-shadow:none; }
header#top .btn:hover { background:#004e5c; border-color:#004e5c; }
header#top .menu-btn { display:none; background:none; border:0; font:inherit; font-weight:700; font-size:14px; cursor:pointer; color:#1a1612; }
@media (max-width:1150px) and (min-width:901px) { header#top ul { gap:18px; font-size:14px; } header#top .mark small { display:none; } }
@media (max-width:900px) {
  header#top ul { display:none; }
  header#top ul.open { display:flex; position:absolute; top:72px; left:0; right:0; flex-direction:column; gap:0; background:#f5f0e8; border-bottom:1px solid #ddd5c8; padding:8px 16px 16px; }
  header#top ul.open a { display:block; padding:12px 0; border-bottom:1px solid #ddd5c8; color:#1a1612; }
  header#top ul.open .menu-cta { display:block; } header#top ul.open .menu-cta a { color:#004e5c; font-weight:700; border-bottom:0; }
  header#top .menu-btn { display:block; } header#top .btn { display:none; }
}
@media (max-width:600px) { header#top .wrap { padding:0 16px; } header#top .mark small { display:none; } }

/* ---- shared footer ---- */
footer.flo-foot { background:#ede8de !important; color:#6b5f52; padding:64px 0 34px !important; margin:0; font-family:var(--sans); font-size:15px; line-height:1.6; border:0; }
footer.flo-foot .wrap { max-width:1140px; margin:0 auto; padding:0 24px; }
footer.flo-foot .mark img { height:38px; width:auto; display:block; }
footer.flo-foot .f-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:40px; }
footer.flo-foot h4 { font-family:var(--sans); font-size:12px; letter-spacing:.16em; text-transform:uppercase; color:#1a1612; margin:0 0 14px; }
footer.flo-foot ul { list-style:none; display:grid; gap:8px; margin:0; padding:0; }
footer.flo-foot a { color:#6b5f52; text-decoration:none; } footer.flo-foot a:hover { color:#1a1612; }
footer.flo-foot .f-about { margin-top:14px; max-width:320px; }
footer.flo-foot .f-base { margin-top:50px; padding-top:24px; border-top:1px solid #ddd5c8; display:flex; justify-content:space-between; gap:20px; flex-wrap:wrap; font-size:13px; }
@media (max-width:800px) { footer.flo-foot .f-grid { grid-template-columns:1fr 1fr; } }
@media (max-width:600px) { footer.flo-foot .wrap { padding:0 16px; } }
.skip { position:absolute; left:-9999px; } .skip:focus { left:12px; top:8px; background:#1a1612; color:#f5f0e8; padding:8px 14px; border-radius:8px; z-index:100; }

/* headings everywhere on older pages use the new display face */
h1, h2, h3 { font-family:var(--serif) !important; font-weight:500 !important; letter-spacing:-.015em; }
h1 em, h2 em, h3 em { font-style:italic; font-weight:300; }
footer.flo-foot h4 { font-family:var(--sans) !important; font-weight:700 !important; }
.gradient-text, [class*="gradient-text"] { background:none !important; -webkit-text-fill-color:currentColor !important; color:#004e5c !important; }

p, li, td, th, blockquote, figcaption, label, input, textarea, select, button, .btn { font-family:var(--sans) !important; }

/* FLO background: mist */
:root,[data-theme="dark"]{--bg:#eef2f0;--bg2:#e3eae7;--bg3:#d8e0dd;--line:#d2dbd7;--muted:#5b6662}
html,body{background-color:#eef2f0!important}

header#top,header#top.scrolled{background:rgba(238,242,240,.92)!important}

footer.flo-foot{background:#e3eae7!important}
.flc-msgs,.flc-sugg,.flc-choice,.flc-in{background-color:#e3eae7!important}
/* header accent: hairline + teal fade */
header#top,body>header{border-bottom:1px solid #d2dbd7!important}
header#top::after,body>header::after{content:"";position:absolute;left:0;right:0;bottom:-1px;height:2px;background:linear-gradient(90deg,#00697c 0,#4fb6c6 22%,rgba(79,182,198,0) 60%);pointer-events:none}
