/* ftr-ui.css — site-wide UI upgrade layer (DEV). Loaded inside <!--DEVUI--> markers; the deploy strips it
   until Sam promotes it. Pairs with ftr-ui.js. */

/* ---------- one-row menu ---------- */
nav{flex-wrap:nowrap!important}
nav .links.ftr-nav{display:flex;align-items:center;flex:1;flex-wrap:nowrap;white-space:nowrap;border-left:1px solid rgba(216,190,126,.25);margin-left:14px;padding-left:6px}
nav .links.ftr-nav>a,nav .links.ftr-nav>.dd{margin-left:22px}
nav .links.ftr-nav .dd>a{margin-left:0}
.ftr-nav .ddmenu .h{display:block;padding:10px 16px 4px;font-size:.78rem;color:#9aa6c2;letter-spacing:.02em}
.ftr-nav .ddmenu .sep{display:block;height:1px;margin:6px 12px;background:rgba(216,190,126,.2)}
.ftr-nav a.ftr-cur{color:#fff!important;font-weight:600}
.ftr-nav a.ftr-cur::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:#7ad08c;margin-right:7px;vertical-align:1px;box-shadow:0 0 0 3px rgba(122,208,140,.18)}
.ftr-nav a[aria-current="page"]:not(.ftr-cur){color:#fff!important;text-decoration:underline;text-decoration-color:rgba(216,190,126,.7);text-underline-offset:6px}
.ftr-nav .ftr-spacer{flex:1}
.ftr-nav a.ftr-cta{margin-left:18px!important;background:#d8be7e;color:#15203a!important;font-weight:600;padding:8px 16px;border-radius:22px}
.ftr-nav a.ftr-cta:hover{background:#e6cf93}
.ftr-nav a:focus-visible,.ftr-burger:focus-visible,.ftr-drawer a:focus-visible{outline:2px solid #d8be7e;outline-offset:3px;border-radius:4px}
/* homepage: same idea inside the hero top bar */
.hero .navlinks.ftr-nav{flex-wrap:nowrap;white-space:nowrap;gap:22px}
.hero .navlinks.ftr-nav a:not(.pill){display:inline}
.hero .navlinks.ftr-nav a.ftr-cta{margin-left:0!important}

/* ---------- phone / narrow: menu button + drawer ---------- */
.ftr-burger{display:none;margin-left:auto;background:none;border:1px solid rgba(216,190,126,.45);color:#f1e6c6;border-radius:8px;padding:7px 12px;font:600 .92rem Inter,system-ui,sans-serif;cursor:pointer;align-items:center;gap:8px}
.ftr-burger svg{width:16px;height:16px;stroke:currentColor}
@media (max-width:1100px){
  nav .links.ftr-nav>:not(.ftr-cta):not(.ftr-burger):not(.ftr-cur),.hero .navlinks.ftr-nav>:not(.ftr-cta):not(.ftr-burger):not(.ftr-cur){display:none!important}
  .ftr-burger{display:inline-flex}
  nav .links.ftr-nav{border-left:0;margin-left:auto;padding-left:0;flex:0 1 auto}
}
@media (max-width:640px){
  nav{padding:12px 16px!important}
  nav .links.ftr-nav a.ftr-cur,.hero .navlinks.ftr-nav a.ftr-cur{display:none!important}
  nav .links.ftr-nav a.ftr-cta,.hero .navlinks.ftr-nav a.ftr-cta{padding:7px 12px;font-size:.88rem}
  .hero .topbar{flex-wrap:nowrap!important;padding:14px 16px!important}
  .hero .brand{font-size:1.25rem!important}
}
.ftr-drawer{position:fixed;inset:0;z-index:99990;display:none}
.ftr-drawer.open{display:block}
.ftr-drawer .scrim{position:absolute;inset:0;background:rgba(6,10,20,.55)}
.ftr-drawer .panel{position:absolute;top:0;right:0;bottom:0;width:min(340px,88vw);background:#0f1830;color:#eaeefc;overflow-y:auto;padding:18px 20px 28px;box-shadow:-10px 0 30px rgba(0,0,0,.35)}
.ftr-drawer .top{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}
.ftr-drawer .top b{font:600 1.15rem 'Cormorant Garamond',Georgia,serif;color:#d8be7e}
.ftr-drawer .x{background:none;border:0;color:#cdd5e6;font-size:1.6rem;line-height:1;cursor:pointer;padding:4px 8px}
.ftr-drawer .h{margin:18px 0 4px;font-size:.8rem;color:#8f9bb8}
.ftr-drawer a{display:block;color:#eaeefc;text-decoration:none;padding:9px 0;font-size:1.02rem;border-bottom:1px solid rgba(216,190,126,.12)}
.ftr-drawer a[aria-current="page"]{color:#d8be7e}
.ftr-drawer a.ftr-cur{font-weight:600}
.ftr-drawer a.ftr-cta{margin-top:18px;border:0;text-align:center;background:#d8be7e;color:#15203a;border-radius:24px;font-weight:600}
@media (prefers-reduced-motion:no-preference){.ftr-drawer.open .panel{animation:ftrIn .18s ease-out}@keyframes ftrIn{from{transform:translateX(24px);opacity:.6}to{transform:none;opacity:1}}}

/* ---------- property page: members-only numbers become an invitation ---------- */
.ftr-lock{display:inline-flex;align-items:center;gap:6px;color:#8a6d2c;font:600 .9rem Inter,system-ui,sans-serif;text-decoration:none;border-bottom:1px dashed rgba(138,109,44,.5);padding-bottom:1px}
.ftr-lock svg{width:13px;height:13px;stroke:currentColor}
.ftr-lock:hover{color:#6f5620}
.ftr-memberbar{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin:10px 0 4px;padding:12px 16px;border-radius:12px;background:#fbf5e4;border:1px solid #ead9a8;color:#3b3220;font-size:.93rem}
.ftr-memberbar b{color:#1b2a4a}
.ftr-memberbar a{margin-left:auto;background:#1b2a4a;color:#fff;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:20px;font-size:.88rem;white-space:nowrap}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ftr-memberbar{background:#2c2718;border-color:#57492a;color:#e8dcc0}:root:not([data-theme="light"]) .ftr-memberbar b{color:#f1e6c6}:root:not([data-theme="light"]) .ftr-lock{color:#d8be7e}}
:root[data-theme="dark"] .ftr-memberbar{background:#2c2718;border-color:#57492a;color:#e8dcc0}:root[data-theme="dark"] .ftr-memberbar b{color:#f1e6c6}:root[data-theme="dark"] .ftr-lock{color:#d8be7e}

/* ---------- pricing: a readable price block ---------- */
.tier .price{line-height:1.1}
.tier .price br+span{display:block;margin-top:8px;font:500 .8rem/1.35 Inter,system-ui,sans-serif!important;color:#8a6d2c;letter-spacing:0}

/* self-contained dropdowns: some pages (e.g. the results page) never styled .dd/.ddmenu */
nav .brand,.topbar .brand{white-space:nowrap;flex:none}
.ftr-nav .dd{position:relative;display:inline-block}
.ftr-nav .ddmenu{visibility:hidden;opacity:0;transition:opacity .15s;position:absolute;top:calc(100% + 10px);left:-12px;transform:none;
  background:linear-gradient(180deg,#16213f,#0c1326);border:1px solid rgba(216,190,126,.35);border-radius:10px;min-width:210px;padding:8px 0;
  box-shadow:0 14px 34px rgba(0,0,0,.4);z-index:60;display:flex;flex-direction:column;text-shadow:none}
.ftr-nav .ddmenu::before{content:"";position:absolute;top:-12px;left:0;right:0;height:12px}
.ftr-nav .dd:hover .ddmenu,.ftr-nav .dd:focus-within .ddmenu{visibility:visible;opacity:1}
.ftr-nav .ddmenu a{display:block;margin:0!important;padding:9px 16px;color:#eaeefc!important;white-space:nowrap;text-decoration:none;font-size:.95rem}
.ftr-nav .ddmenu a:hover{background:rgba(216,190,126,.12);color:#fff!important}
.ftr-nav>a,.ftr-nav>.dd>a{color:#cdd5e6;text-decoration:none}
.ftr-nav>a:hover,.ftr-nav>.dd>a:hover{color:#fff}
.ftr-memberbar span{flex:1 1 380px}
@media (max-width:480px){
  .ftr-burger{padding:7px 9px}.ftr-burger .t{display:none}
  nav .brand,nav .brand a{font-size:.98rem!important;letter-spacing:.02em}
  nav .brand svg{width:22px;height:22px}
  nav .links.ftr-nav a.ftr-cta{margin-left:8px!important}
  nav .links.ftr-nav .ftr-burger{margin-left:8px}
}
@media (max-width:480px){
  .hero .topbar{gap:8px!important}
  .hero .brand{font-size:1.02rem!important;letter-spacing:.02em!important}
  .hero .brand svg{width:22px;height:22px}
  .hero .navlinks.ftr-nav{gap:8px}
}

/* ===== round 2 (DEV) ===== */
/* homepage: this month on the map */
.ftr-mapband{background:#0f1830;color:#e8ecf5;padding:56px clamp(20px,5vw,56px)}
.ftr-mapband .in{max-width:1140px;margin:0 auto;display:grid;grid-template-columns:minmax(260px,5fr) 7fr;gap:40px;align-items:center}
.ftr-mapband h2{font:600 2.2rem/1.1 'Cormorant Garamond',Georgia,serif;color:#fff;margin:0 0 12px}
.ftr-mapband .s{font-size:1.08rem;line-height:1.5;color:#f1e6c6;margin:0 0 10px;max-width:46ch}
.ftr-mapband .n{font-size:.95rem;line-height:1.55;color:#aeb8cf;margin:0 0 22px;max-width:50ch}
.ftr-mapband .go{display:inline-block;background:#d8be7e;color:#15203a;text-decoration:none;font-weight:600;padding:12px 22px;border-radius:26px}
.ftr-mapband .go:hover{background:#e6cf93}
.ftr-mapband .mapwrap{display:block;border-radius:14px;overflow:hidden;border:1px solid rgba(216,190,126,.3);box-shadow:0 18px 40px rgba(0,0,0,.35)}
#ftrminimap{height:380px;background:#1a2440;cursor:pointer}
#ftrminimap .leaflet-tile-pane{filter:grayscale(1) invert(1) contrast(.85) brightness(.9)}
.ftr-mtag span{display:inline-block;transform:translate(-50%,-100%);white-space:nowrap;background:#2b4c8c;color:#fff;font:650 11px/1 Inter,system-ui,sans-serif;padding:4px 6px;border-radius:5px;box-shadow:0 1px 2px rgba(0,0,0,.4)}
.ftr-mtag span.jir{background:#1f6f5c}.ftr-mtag span.sl{background:#9a6425}
.ftr-mtag span.dot{padding:0;width:11px;height:11px;border-radius:50%;border:2px solid #fff}
.ftr-mtag{background:none;border:0}
.ftr-signupband{padding:34px clamp(20px,5vw,56px) 10px;max-width:960px;margin:0 auto}
@media (max-width:860px){.ftr-mapband .in{grid-template-columns:1fr;gap:24px}.ftr-mapband h2{font-size:1.8rem}#ftrminimap{height:260px}}

/* case studies */
.ftr-take{margin:14px 22px 4px;padding:10px 14px;border-left:3px solid #c8a24a;background:#fbf5e4;border-radius:0 8px 8px 0;font-size:.98rem;line-height:1.5;color:#3b3220}
.ftr-take b{color:#1b2a4a}
.ftr-btn{display:inline-block;margin-top:10px;background:#1b2a4a;color:#fff!important;text-decoration:none;font-weight:600;padding:10px 18px;border-radius:22px}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ftr-take{background:#2c2718;color:#e8dcc0}:root:not([data-theme="light"]) .ftr-take b{color:#f1e6c6}}
:root[data-theme="dark"] .ftr-take{background:#2c2718;color:#e8dcc0}:root[data-theme="dark"] .ftr-take b{color:#f1e6c6}

/* results: jump links */
.ftr-jump{position:sticky;top:0;z-index:40;display:flex;gap:8px;overflow-x:auto;padding:10px clamp(16px,4vw,40px);background:rgba(15,24,48,.96);border-bottom:1px solid rgba(216,190,126,.25);scrollbar-width:thin}
.ftr-jump a{flex:none;color:#e8ecf5;text-decoration:none;font-size:.88rem;border:1px solid rgba(216,190,126,.35);border-radius:18px;padding:6px 12px;white-space:nowrap}
.ftr-jump a:hover,.ftr-jump a:focus-visible{background:rgba(216,190,126,.15);color:#fff}
h2[id^="part-"]{scroll-margin-top:64px}

/* learning pages: slim list bar */
.ftr-stick{position:fixed;left:50%;bottom:16px;transform:translate(-50%,140%);z-index:880;display:flex;align-items:center;gap:14px;max-width:min(760px,calc(100% - 24px));
  background:#0f1830;color:#e8ecf5;border:1px solid rgba(216,190,126,.4);border-radius:30px;padding:9px 10px 9px 18px;box-shadow:0 10px 30px rgba(0,0,0,.3);font-size:.9rem;transition:transform .25s ease}
.ftr-stick.on{transform:translate(-50%,0)}
.ftr-stick a{flex:none;background:#d8be7e;color:#15203a;text-decoration:none;font-weight:600;padding:8px 14px;border-radius:20px}
.ftr-stick button{flex:none;background:none;border:0;color:#9aa6c2;font-size:1.3rem;cursor:pointer;padding:0 6px}
@media (max-width:600px){.ftr-stick span{display:none}.ftr-stick{padding:8px 8px 8px 8px}}
@media (prefers-reduced-motion:reduce){.ftr-stick{transition:none}}
/* pricing: free vs Watcher */
.ftr-cmp{margin:28px 0 8px;background:#fff;border:1px solid #e4ded0;border-radius:12px;padding:18px 20px;overflow-x:auto}
.ftr-cmp h3{font:600 1.45rem 'Cormorant Garamond',Georgia,serif;margin:0 0 10px;color:#1b2a4a}
.ftr-cmp table{width:100%;border-collapse:collapse;font-size:.93rem;min-width:520px}
.ftr-cmp th,.ftr-cmp td{padding:9px 10px;border-bottom:1px solid #eee7d6;text-align:left;vertical-align:top}
.ftr-cmp th{font-weight:600;color:#1b2a4a}.ftr-cmp td:first-child{color:#3a3f4c;width:44%}
.ftr-cmp td:last-child{font-weight:600;color:#1b2a4a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .ftr-cmp{background:#2a2622;border-color:#3d3833}:root:not([data-theme="light"]) .ftr-cmp h3,:root:not([data-theme="light"]) .ftr-cmp th,:root:not([data-theme="light"]) .ftr-cmp td:last-child{color:#f1e6c6}:root:not([data-theme="light"]) .ftr-cmp td:first-child{color:#d6d0c4}:root:not([data-theme="light"]) .ftr-cmp th,:root:not([data-theme="light"]) .ftr-cmp td{border-color:#3d3833}}
:root[data-theme="dark"] .ftr-cmp{background:#2a2622;border-color:#3d3833}
/* the menu bar sits above map layers (Leaflet panes use z-index 400-1000) */
nav{position:relative;z-index:1100}
.hero .topbar{z-index:1100!important}
