body{margin:0;background:radial-gradient(ellipse 1100px 600px at 50% -8%,rgba(59,130,246,0.16),transparent 60%),#0B0B1E;background-attachment:fixed} a{color:#7FB0E0;text-decoration:none} a:hover{color:#3B82F6}
body{margin:0}
  a{color:#7FB0E0;text-decoration:none}
  a:hover{color:#3B82F6}
  *{box-sizing:border-box}
  img{max-width:100%;height:auto}
  /* iOS Safari zooms the viewport on focus for any field under 16px */
  input,select,textarea{font-size:16px}
  .nav-drop:hover .nav-drop-menu{display:block}
  .nav-drop-menu a:hover{background:rgba(59,130,246,0.15);color:#FFFFFF}
  .mega-menu{display:none}
  .mega-menu.is-open{display:block}
  /* Full header-height hit area so the cursor never leaves .mega-drop
     while travelling from the trigger down to the panel at top:76px */
  .mega-drop{height:76px;display:flex;align-items:center}
  @media (hover:hover){
    .mega-drop:hover .mega-menu,
    .mega-menu:hover{display:block}
  }
  .mega-link:hover{color:#0B0B1E !important}
  /* CTA hover states. Inline styles outrank plain selectors, so these need !important. */
  a[style*="rgb(59, 130, 246)"]:hover,button[style*="rgb(59, 130, 246)"]:hover{background:#2563EB !important;color:#FFFFFF !important}
  a[style*="rgb(232, 180, 76)"]:hover{background:#D9A43C !important}
  a[style*="rgba(255, 255, 255, 0.16)"]:hover,button[style*="rgba(255, 255, 255, 0.16)"]:hover{background:rgba(59,130,246,0.14) !important;border-color:rgba(59,130,246,0.55) !important;color:#FFFFFF !important}
  a[style*="rgb(59, 130, 246)"],button[style*="rgb(59, 130, 246)"],a[style*="rgb(232, 180, 76)"],a[style*="rgba(255, 255, 255, 0.16)"]{transition:background 0.18s ease,border-color 0.18s ease,color 0.18s ease}
  .sh-burger{display:none}
  @media (max-width:1024px){
    main [style*="max-width: 1360px"]{padding-left:20px !important;padding-right:20px !important}
    .sh-desktop-nav{display:none !important}
    .sh-burger{display:flex !important}
    .sh-book-inline{display:none !important}
    .sh-header-cta a{font-size:13px !important;padding:9px 13px !important}
    header > div{padding-left:20px !important;padding-right:20px !important}
  }

  /* ---- Tablet ---- */
  @media (max-width:900px){
    /* Two-up grids collapse before text gets uncomfortably narrow */
    [style*="minmax(300px"],[style*="minmax(320px"],[style*="minmax(340px"]{grid-template-columns:1fr !important}
    /* Any inline max-width narrower than the viewport stops constraining copy */
    main p[style*="max-width"],main ul[style*="max-width"],main h1[style*="max-width"],
    main h2[style*="max-width"],main div[style*="max-width: 900px"]{max-width:100% !important}
  }
  /* ---- Mobile ---- */
  @media (max-width:640px){
    [style*="grid-template-columns: repeat(auto-fit"]{grid-template-columns:1fr !important}
    [style*="clamp("]{word-break:break-word;overflow-wrap:anywhere}
    /* Tables scroll horizontally rather than forcing the page wide */
    table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch}
    table th,table td{white-space:normal;min-width:120px}
    /* Inline padding on cards and answer blocks is too generous at this width */
    main [style*="padding: 32px 36px"]{padding:22px 20px !important}
    main [style*="padding: 22px 26px"]{padding:18px 16px !important}
    main [style*="padding: 40px"]{padding:26px 20px !important}
    /* Stacked CTA rows: full-width taps, never cramped side-by-side */
    main [style*="display: flex"][style*="flex-wrap: wrap"][style*="gap: 14px"] > a,
    main [style*="display: flex"][style*="flex-wrap: wrap"][style*="gap: 16px"] > a{
      width:100%;text-align:center;box-sizing:border-box
    }
    /* Contextual CTA banners: stack text above button, drop the auto-margin */
    main [style*="border: 1px dashed"]{flex-direction:column;align-items:flex-start !important}
    main [style*="border: 1px dashed"] > a{margin-left:0 !important;width:100%;text-align:center;box-sizing:border-box}
    /* Breadcrumbs wrap instead of overflowing */
    main nav[style*="font-size: 13px"]{line-height:1.7}
    /* Keyword chips and stat rows breathe */
    main [style*="gap: 18px"],main [style*="gap: 20px"]{gap:14px !important}
  }
  /* ---- Small mobile ---- */
  @media (max-width:400px){
    main [style*="max-width: 1360px"]{padding-left:16px !important;padding-right:16px !important}
    main [style*="padding: 32px 36px"]{padding:18px 15px !important}
  }
  /* Never let a wide child force a horizontal scrollbar on the document */
  html,body{overflow-x:hidden;max-width:100%}
.sh-sticky-btn{flex:1;display:flex;align-items:center;justify-content:center;padding:15px 10px;font-family:'Inter',sans-serif;font-size:14px;font-weight:600;line-height:1;text-align:center;border:none;cursor:pointer;white-space:nowrap}
  /* Each button carries an inline background, so hover needs !important to win the cascade. */
  .sh-sticky-btn{transition:background 0.18s ease}
  .sh-sticky-btn:hover{background:rgba(59,130,246,0.18) !important;color:#FFFFFF !important}
  .sh-sticky-btn.sh-sticky-primary:hover{background:#2563EB !important}
  @media (max-width:480px){ .sh-sticky-btn{font-size:12.5px;padding:14px 4px} }
  @media (max-width:360px){ .sh-sticky-btn{font-size:11.5px;padding:13px 3px} }
body{margin:0} a{color:#A8AEC4;text-decoration:none} a:hover{color:#3B82F6}
*{box-sizing:border-box}
  /* Inline style on the trigger outranks a plain class selector, so !important is required. */
  .sh-book-btn{transition:background 0.18s ease,border-color 0.18s ease,color 0.18s ease}
  .sh-book-btn:hover{background:rgba(59,130,246,0.14) !important;border-color:rgba(59,130,246,0.55) !important;color:#FFFFFF !important}

[hidden]{display:none !important}
.sh-deep a{word-break:break-word}
#sh-mobile{border-top:1px solid rgba(255,255,255,0.14);background:#0B0B1E;max-height:calc(100vh - 76px);overflow-y:auto}
#sh-lead-form input,#sh-lead-form select,#sh-lead-form textarea{width:100%;background:#0B0B1E;border:1px solid rgba(255,255,255,0.16);border-radius:8px;color:#FFFFFF;padding:13px 14px;font-family:Inter,sans-serif;font-size:16px}
#sh-lead-form input:focus,#sh-lead-form select:focus,#sh-lead-form textarea:focus{outline:none;border-color:#3B82F6}
#sh-search-q{width:100%;background:#12142B;border:1px solid rgba(255,255,255,0.16);border-radius:10px;color:#fff;padding:16px 18px;font-size:17px;font-family:Inter,sans-serif}
.sh-skip{position:absolute;left:-9999px;top:0}.sh-skip:focus{left:12px;top:12px;z-index:999;background:#3B82F6;color:#fff;padding:10px 14px;border-radius:8px}
