@import url('https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@600;700&display=swap');
@import url('site-polish.css');

/* The original Spot Cleaning wordmark and menu treatment, shared across every page. */
header.site-nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(251,252,254,.97);backdrop-filter:blur(16px);border-bottom:1px solid #dce1f4;box-shadow:0 8px 24px -22px rgba(7,11,46,.42);transition:background .28s ease,border-color .28s ease,box-shadow .28s ease}
header.site-nav .nav-in{width:min(1240px,calc(100% - 80px));max-width:none;height:106px;min-height:106px;margin:0 auto;padding:0;display:flex;align-items:center;justify-content:space-between;gap:28px}
header.site-nav .brand{position:relative;display:inline-flex;flex-direction:column;align-items:flex-start;gap:0;color:#0b0b0f;font:700 37px/.72 'Space Grotesk',Inter,Arial,sans-serif;letter-spacing:-.055em;text-transform:lowercase;white-space:nowrap}
header.site-nav .brand-mark{position:absolute;top:-8px;right:-19px;width:auto;height:auto;background:none;box-shadow:none}
header.site-nav .brand-mark::before{content:'✦';display:block;color:#2447ff;font-size:16px;line-height:1}
header.site-nav .brand span{margin-top:7px;color:#2447ff;font:800 10px/1 Inter,Arial,sans-serif;letter-spacing:.24em;text-transform:uppercase}
header.site-nav .nav-links{display:flex;align-items:center;gap:22px;margin:0;font-size:14px;font-weight:700;white-space:nowrap}
header.site-nav .nav-links a{padding:10px 1px;border-bottom:2px solid transparent;color:#0b0b0f;transition:color .2s,border-color .2s}
header.site-nav .nav-links a:hover,header.site-nav .nav-links a[aria-current="page"]{color:#2447ff}
header.site-nav .nav-links a[aria-current="page"]{border-bottom-color:#2447ff}
header.site-nav .nav-links .nav-cta{padding:11px 20px!important;border:0!important;border-radius:11px;background:#2447ff;color:#fff!important;box-shadow:0 12px 26px -14px rgba(36,71,255,.82)}
header.site-nav .nav-links .nav-cta:hover{background:#1736d9;color:#fff!important}
header.site-nav.is-scrolled{background:rgba(251,252,254,.97);backdrop-filter:blur(16px);border-color:#dce1f4;box-shadow:0 8px 24px -22px rgba(7,11,46,.42)}
body:not(#top) .page-hero{padding-top:186px}

/* The home page keeps its original transparent, over-the-hero opening state. */
header.site-nav#nav{position:fixed;left:0;right:0;background:transparent;border-color:transparent;box-shadow:none;transition:background .28s ease,border-color .28s ease,box-shadow .28s ease}
header.site-nav#nav .brand{color:#fff;transition:color .28s ease}
header.site-nav#nav .brand span{color:#8ea3ff;transition:color .28s ease}
header.site-nav#nav .brand-mark::before{color:#8ea3ff}
header.site-nav#nav .nav-links a{color:rgba(255,255,255,.93);transition:color .2s,border-color .2s}
header.site-nav#nav .nav-links a:hover,header.site-nav#nav .nav-links a[aria-current="page"]{color:#fff}
header.site-nav#nav .nav-links a[aria-current="page"]{border-bottom-color:#fff}
header.site-nav#nav.is-scrolled{background:rgba(251,252,254,.97);border-color:#dce1f4;box-shadow:0 8px 24px -22px rgba(7,11,46,.42)}
header.site-nav#nav.is-scrolled .brand{color:#0b0b0f}
header.site-nav#nav.is-scrolled .brand span,header.site-nav#nav.is-scrolled .brand-mark::before{color:#2447ff}
header.site-nav#nav.is-scrolled .nav-links a{color:#0b0b0f}
header.site-nav#nav.is-scrolled .nav-links a:hover,header.site-nav#nav.is-scrolled .nav-links a[aria-current="page"]{color:#2447ff}
header.site-nav#nav.is-scrolled .nav-links a[aria-current="page"]{border-bottom-color:#2447ff}
header.site-nav#nav + .hero .hero-in{padding-top:170px}

/* Hamburger toggle (hidden on desktop, shown on tablet/mobile) */
header.site-nav .nav-toggle{display:none;width:48px;height:48px;flex:none;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:0;border:0;border-radius:12px;background:transparent;cursor:pointer}
header.site-nav .nav-toggle span{display:block;width:27px;height:3px;border-radius:3px;background:#0b0b0f;transition:transform .25s ease,opacity .2s ease,background .28s ease}
header.site-nav#nav .nav-toggle span{background:#fff}
header.site-nav#nav.is-scrolled .nav-toggle span{background:#0b0b0f}
header.site-nav.nav-open .nav-toggle span:nth-child(1){transform:translateY(9px) rotate(45deg)}
header.site-nav.nav-open .nav-toggle span:nth-child(2){opacity:0}
header.site-nav.nav-open .nav-toggle span:nth-child(3){transform:translateY(-9px) rotate(-45deg)}

@media(max-width:1024px){
  header.site-nav .nav-in{height:76px;min-height:76px}
  header.site-nav .nav-toggle{display:flex}
  header.site-nav .nav-links{position:absolute;top:100%;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;padding:6px 0 12px;background:#fff;border-bottom:1px solid #dce1f4;box-shadow:0 26px 44px -26px rgba(7,11,46,.5);transform:translateY(-10px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .22s ease,transform .22s ease,visibility .22s ease;max-height:calc(100vh - 76px);overflow-y:auto}
  header.site-nav.nav-open .nav-links{transform:none;opacity:1;visibility:visible;pointer-events:auto}
  header.site-nav .nav-links a{display:block;width:auto;margin:0 22px;padding:18px 4px;border-bottom:1px solid #eef1fa;color:#0b0b0f;font-size:18px}
  header.site-nav .nav-links a:hover,header.site-nav .nav-links a[aria-current="page"]{color:#2447ff}
  header.site-nav .nav-links a[aria-current="page"]{border-bottom-color:#eef1fa}
  header.site-nav .nav-links .nav-cta{margin:16px 22px 4px;padding:0!important;border-bottom:0;background:transparent!important;color:#2447ff!important;box-shadow:none;font-size:18px}
  header.site-nav#nav .nav-links a{color:#0b0b0f}
  header.site-nav#nav .nav-links a:hover,header.site-nav#nav .nav-links a[aria-current="page"]{color:#2447ff}
  header.site-nav#nav .nav-links .nav-cta{color:#2447ff!important}
  body.nav-menu-open{overflow:hidden}
  header.site-nav#nav + .hero .hero-in{padding-top:120px}
  body:not(#top) .page-hero{padding-top:132px}
}
