@import url("https://fonts.googleapis.com/css2?family=IBM+Plex+Mono:wght@400;500&family=IBM+Plex+Sans:wght@400;500;600;700&display=swap");
/* ============================================================
   NEXTMOVE STYLE (2026-10-23)
   Light theme in NextMove's website palette: white pages, graphite text,
   the blue #1F4FB8 with pale blue washes, IBM Plex Sans and Mono.
   base.css still holds the original dark + gold theme; this file is loaded
   after it (layout/theme.liquid) and only overrides it. Remove the line that
   loads this file to go back.
   ============================================================ */

:root {
  --bg-0: #F5F7FB;            /* tinted sections */
  --bg-1: #FFFFFF;            /* page */
  --bg-2: #FFFFFF;            /* cards */
  --bg-3: #F5F7FB;            /* hover / inset */
  --line: #E3E6EA;
  --line-soft: rgba(17,19,21,0.07);
  --text: #111315;
  --text-soft: #4A5056;
  --text-mute: #5F656B;
  --gold: #1F4FB8;            /* the accent (name kept so every rule follows) */
  --gold-2: #1F4FB8;
  --gold-soft: #E8EEFA;
  --gold-line: #C9D6F2;
  --green: #1F7A4D;
  --red: #B54A0B;
  --radius: 12px;
  --radius-lg: 20px;
  --shadow: 0 24px 48px -24px rgba(31,79,184,.25), 0 2px 6px rgba(17,19,21,.05);
  --serif: 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --sans: 'IBM Plex Sans', system-ui, -apple-system, 'Segoe UI', sans-serif;
  --mono: 'IBM Plex Mono', ui-monospace, Menlo, Consolas, monospace;
}

body { background: #FFFFFF; background-image: none; color: var(--text); }

/* sections that set a dark gradient inline become pale tinted bands */
section[style*="rgba(0,0,0"] { background: #F5F7FB !important; }

/* anything else that paints the old dark colours inline turns light */
[style*="#0a0d15"], [style*="#0c1018"], [style*="#0d111b"], [style*="#11151f"], [style*="#141823"], [style*="#07080d"], [style*="#0b0e17"], [style*="#1a1f2c"], [style*="#06080d"] { background: #F5F7FB !important; border-color: #C9D6F2 !important; }
[style*="color:#fff"], [style*="color: #fff"] { color: var(--text) !important; }
[style*="font-family:var(--serif)"] { font-family: var(--sans) !important; font-weight: 600 !important; letter-spacing: -0.02em; }
h1, h2, h3, h4 { color: var(--text); font-weight: 600; letter-spacing: -0.02em; }

/* pills replace the gold eyebrows */
.eyebrow {
  text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 500;
  border: 0; border-radius: 7px; background: var(--gold-soft); color: var(--gold);
  padding: 7px 11px;
}
.eyebrow .dot { display: none; }
.h-display em { font-style: normal; font-weight: 600; color: var(--gold); }

/* buttons */
.btn { border-radius: 10px; font-weight: 500; }
.btn:hover { transform: none; }
.btn-primary { background: #1F4FB8; color: #FFFFFF; box-shadow: none; }
.btn-primary:hover { background: #1A43A0; }
.btn-ghost { background: #FFFFFF; color: var(--text); border-color: var(--line); }
.btn-ghost:hover { border-color: var(--gold-line); color: var(--text); }
.btn-link { color: var(--gold); }

/* top bar and navigation */
.topbar { background: #F5F7FB; color: var(--text-soft); border-bottom: 0; }
.topbar a { color: var(--text-soft); }
.topbar a:hover { color: var(--gold); }
.topbar .badge { color: #1F7A4D; }
.nav { background: rgba(255,255,255,0.94); border-bottom: 1px solid var(--line); }
.brand { color: var(--text); font-family: var(--sans); font-weight: 600; font-size: 19px; }
.brand .mark { background: #1F4FB8; color: #FFFFFF; box-shadow: none; }
.nav-menu a:hover { color: var(--text); background: #F5F7FB; }
.dropdown a strong { color: var(--text); }

/* hero */
.hero-visual img { box-shadow: 0 30px 60px -30px rgba(31,79,184,.30), 0 0 0 1px #E3E6EA !important; }
.hero-card { background: #FFFFFF; }
.hero-card::before { display: none; }
.hero-card .big, .hero-card .stat .v { color: var(--text); }
.hero-card .bar > i { background: #1F4FB8; }

/* logos and stats */
.logos { background: transparent; border-color: var(--line); }
.logos .marks span { font-family: var(--sans); font-weight: 600; font-size: 19px; color: #A2A7AC; opacity: 1; letter-spacing: .02em; }
.logos .marks span:hover { color: var(--text-soft); }
.stats { background: transparent; border: 0; border-radius: 0; gap: 16px; overflow: visible; }
.stats .stat { background: #F5F7FB; border: 0; border-radius: 18px; }
.stats .v { font-family: var(--mono); font-weight: 500; font-size: 40px; color: #1F4FB8; letter-spacing: -0.02em; }
.stats .l { color: var(--text-soft); font-size: 14px; letter-spacing: 0; }
@media (max-width: 780px) { .stats .stat { border-bottom: 0; } }

/* service cards: the gold 3D icons are hidden for now */
.service-card { background: #FFFFFF; }
.service-card:hover { transform: none; border-color: var(--gold-line); }
.service-card .num { font-family: var(--sans); font-weight: 600; font-size: 12px; color: #1F4FB8; text-transform: uppercase; }
.service-card .icon-bg, .service-card .icon-img { display: none; }
.service-card.has-icon { padding-top: 36px; }
.service-card ul li::before { border: 0; width: 7px; height: 7px; background: #1F4FB8; transform: rotate(45deg); top: 9px; }
.service-card .more { color: #1F4FB8; }

/* case studies */
.case { background: #FFFFFF; }
.case:hover { transform: none; }
.case .tag { text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 500; border-radius: 7px; }
.case .metric .v { font-family: var(--mono); font-weight: 500; color: #1F4FB8; letter-spacing: -0.02em; }
.case.feature { background: #FFFFFF; border: 2px solid #1F4FB8; }

/* process */
.step { border-left-color: var(--line); }
.step .n { border: 0; border-radius: 10px; background: #E8EEFA; color: #1F4FB8; font-family: var(--mono); font-size: 15px; font-weight: 600; }
.step:first-child .n { background: #1F4FB8; color: #FFFFFF; }

/* testimonials */
.testimonial .stars { color: #C08A00; }
.testimonial blockquote { font-family: var(--sans); font-weight: 500; font-size: 17px; line-height: 1.5; color: var(--text); }
.testimonial .avatar { background: #E8EEFA; color: #1F4FB8; }
.testimonial .who strong { color: var(--text); }

/* about */
.about-teaser .photo { background-color: #F5F7FB; border: 0; }
/* no "SF" placeholder over a real photo */
.about-teaser .photo::after { content: none; }
.about-teaser .badge-box { background: #FFFFFF; border: 0; box-shadow: 0 10px 30px -10px rgba(17,19,21,.25); }
.about-teaser .badge-box strong { font-family: var(--mono); font-weight: 500; color: #1F4FB8; }
.about-teaser .badge-box span { color: var(--text-mute); }

/* resources, final CTA */
.resource .img { background: #F5F7FB; }
.resource .img::after { background: none; }
.resource h4 { color: var(--text); }
.final-cta { background: #F5F7FB; border: 0; border-radius: 28px; }

/* footer */
footer { background: #FFFFFF; border-top: 1px solid var(--line); }
.footer-grid { border-bottom-color: var(--line); }
.footer-col h5 { color: var(--text); }
.footer-col a:hover { color: #1F4FB8; }
.newsletter input { background: #FFFFFF; border-color: #C4C9CF; }
.newsletter button { background: #1F4FB8; color: #FFFFFF; }
.footer-bottom .socials a:hover { border-color: var(--gold-line); color: #1F4FB8; }

/* inner pages */
.page-hero { background: #F5F7FB; }
.value-card .v-num { font-family: var(--mono); font-weight: 500; color: #1F4FB8; }
.contact-info .item strong { color: var(--text); }
.form input, .form select, .form textarea { background: #FFFFFF; border-color: #C4C9CF; }
.form input:focus, .form select:focus, .form textarea:focus { border-color: #1F4FB8; }
.pkg.feature { background: #FFFFFF; border: 2px solid #1F4FB8; }
.pkg .p-name { color: var(--text); font-family: var(--sans); font-weight: 600; }
.pkg .price { font-family: var(--mono); font-weight: 500; color: #1F4FB8; }
.pkg .ribbon { text-transform: none; letter-spacing: 0; font-size: 13px; font-weight: 500; border-radius: 7px; }
.pkg ul li::before { color: #1F4FB8; }

/* tools grid (its own <style> sits in the page body, so these need !important) */
.tool-card { background: #FFFFFF !important; }
.tool-card:hover { transform: none; }
.tool-card.featured { background: #F5F7FB !important; border: 2px solid #1F4FB8 !important; }
.tool-icon { border: 0; border-radius: 10px; }
.tool-tag { letter-spacing: 0; text-transform: none; font-size: 12px; border-radius: 7px; }

/* SQPR pivot tool */
#sqpr-tool-root h3, #sqpr-tool-root h4, #sqpr-tool-root .sqpr-drop-title, #sqpr-tool-root .sqpr-instructions h3, #sqpr-tool-root .sqpr-instructions strong { color: var(--text) !important; font-family: var(--sans) !important; }
#sqpr-tool-root .sqpr-uploader-card { background: #F5F7FB !important; border: 0 !important; }
#sqpr-tool-root .sqpr-drop { background: #FFFFFF !important; border-color: #C9D6F2 !important; }
#sqpr-tool-root .sqpr-drop:hover, #sqpr-tool-root .sqpr-drop.is-drag { background: #E8EEFA !important; border-color: #1F4FB8 !important; }
#sqpr-tool-root .sqpr-drop-btn { background: #1F4FB8 !important; color: #FFFFFF !important; box-shadow: none !important; border-radius: 10px !important; font-weight: 500 !important; }
#sqpr-tool-root th { background: #F5F7FB !important; color: #1F4FB8 !important; }
#sqpr-tool-root .sqpr-instructions { background: #F5F7FB !important; border: 0 !important; }
#sqpr-tool-root .sqpr-instructions li::before { font-family: var(--mono) !important; color: #1F4FB8 !important; }
#sqpr-tool-root .sqpr-warn { color: #8A5A00 !important; background: #FFF6E0 !important; border-color: #F0D9A0 !important; }

/* privacy notice (the template carries its own dark variables) */
html body .pn-page {
  --pn-bg: #FFFFFF; --pn-bg-card: #F5F7FB; --pn-bg-hover: #E8EEFA;
  --pn-border: #E3E6EA; --pn-accent: #1F4FB8; --pn-accent2: #1F4FB8;
  --pn-text: #4A5056; --pn-text-muted: #5F656B; --pn-text-dim: #8A9096; --pn-white: #111315;
  background: #FFFFFF !important; font-family: var(--sans) !important;
}
html body .pn-page h1, html body .pn-page h2, html body .pn-page h3, html body .pn-page h4 { font-family: var(--sans) !important; font-weight: 600 !important; letter-spacing: -0.02em; }
html body .pn-page h1 em, html body .pn-page h2 em { font-style: normal; color: #1F4FB8; }
html body .pn-page p, html body .pn-page li, html body .pn-page a, html body .pn-page span, html body .pn-page td { font-family: var(--sans) !important; }

/* forms sent through /api (assets/forms.js) */
.form-done { padding: 20px 22px; border-radius: 12px; background: #E8EEFA; color: #1F4FB8; font-weight: 500; }
.form-error { margin-top: 10px; color: #B54A0B; font-size: 14px; }

/* phones: menu button, a header that fits, stacked PDF sign-up (assets/menu.js opens the menu) */
.menu-toggle, .cta-short { display: none; }
@media (max-width: 980px) {
  .container { padding: 0 18px; }
  .topbar .row { justify-content: center; padding: 7px 0; }
  .topbar a { margin: 0 9px; }
  .topbar a[href="/account"] { display: none; }
  .nav .row { padding: 12px 0; gap: 10px; }
  .brand { margin-right: auto; }
  .nav-cta .btn { padding: 10px 14px; font-size: 14px; }
  .menu-toggle { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px;
    border: 1px solid var(--line); border-radius: 10px; background: #fff; color: var(--text); cursor: pointer; }
  .menu-toggle svg { width: 20px; height: 20px; }
  .nav-menu.open { display: flex; flex-direction: column; align-items: stretch; gap: 0; position: absolute; top: 100%; left: 0; right: 0;
    background: #fff; border-bottom: 1px solid var(--line); padding: 4px 18px 18px; box-shadow: 0 18px 30px -18px rgba(17,19,21,.25); }
  .nav-menu.open > a, .nav-menu.open .has-drop > a { padding: 14px 2px; border-radius: 0; border-bottom: 1px solid var(--line); font-size: 16px; color: var(--text); }
  .nav-menu.open .has-drop > a { display: flex; }
  .nav-menu.open .has-drop > a:after { display: none; }
  .nav-menu.open .dropdown { position: static; display: grid; grid-template-columns: 1fr; min-width: 0; padding: 4px 0 8px 14px;
    border: 0; box-shadow: none; background: transparent; }
  .nav-menu.open .dropdown a { padding: 9px 2px; }
  .nav-menu.open .dropdown a strong { font-weight: 500; font-size: 15px; color: var(--text-soft); }
}
@media (max-width: 420px) {
  .cta-long { display: none; }
  .cta-short { display: inline; }
}
@media (max-width: 600px) {
  .lead-magnet { padding: 26px 20px !important; }
  .lm-form { grid-template-columns: 1fr !important; }
  .case .metric { flex-wrap: wrap; }
  .case.feature .metric .v { font-size: 36px; }
  .footer-grid { gap: 24px; }
  .footer-grid > * { min-width: 0; }
}
/* the PDF box still had the old dark theme's grey gradient */
.lead-magnet { background: #F5F7FB !important; border-color: transparent !important; }
.lm-preview { background: #E8EEFA !important; border: 0 !important; }
