:root { color-scheme: light; }
* { box-sizing: border-box; }

body {
  min-width: 320px;
  margin: 0;
  color: #202124;
  font-family: Arial, Helvetica, sans-serif;
  background: #fff;
}

.container {
  display: grid;
  min-height: 100vh;
  place-items: center;
  padding: 32px 20px;
}

.site-header { position: fixed; top: 22px; left: 28px; display: flex; align-items: center; gap: 8px; color: #2467c9; font-size: 14px; font-weight: 700; }
.brand-mark { display: none; }
.brand-name span { color: #2467c9; }

.layout { width: 100%; }
.intro { display: none; }
.card, .step-card, .complete-card {
  width: min(100%, 520px);
  margin: 0 auto;
  padding: 0;
  text-align: center;
  background: #fff;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}

.progress { display: flex; width: 124px; gap: 6px; margin: 0 auto 28px; }
.progress span { height: 3px; flex: 1; background: #e5e7eb; border-radius: 999px; }
.progress span.active { background: #1769e0; }
.card-header { margin-bottom: 28px; }
h1, h2 { margin: 0; color: #202124; font-size: clamp(30px, 5vw, 38px); font-weight: 700; letter-spacing: -.7px; line-height: 1.17; }
.card-header h2 { font-size: clamp(29px, 4.5vw, 35px); }
.notice { max-width: 420px; margin: 16px auto 0; color: #5f6368; font-size: 17px; line-height: 1.5; }

form { width: min(100%, 390px); margin: 0 auto; }
label { display: block; margin: 0 0 8px; color: #3c4043; font-size: 14px; font-weight: 600; text-align: left; }
input { width: 100%; height: 58px; margin: 0 0 18px; padding: 0 17px; color: #202124; font: 18px Arial, sans-serif; border: 1px solid #bac4d0; border-radius: 4px; background: #fff; }
input::placeholder { color: #6f7882; }
input:focus { outline: 2px solid #1a73e8; outline-offset: -2px; border-color: #1a73e8; }
button { min-width: 188px; margin-top: 7px; padding: 16px 28px; color: #fff; font: 700 16px Arial, sans-serif; letter-spacing: .15px; cursor: pointer; background: #1269e7; border: 0; border-radius: 28px; box-shadow: 0 3px 6px #1269e733; }
button:hover { background: #0e5dce; }
.error { min-height: 20px; margin: -4px 0 8px; color: #c5221f; font-size: 13px; text-align: left; }
.privacy-note { max-width: 390px; margin: 24px auto 0; color: #6a737b; font-size: 12px; line-height: 1.5; text-align: center; }
.privacy-note svg { display: none; }

.loading-spinner { width: 38px; height: 38px; margin: 0 auto 25px; border: 4px solid #dbe8fc; border-top-color: #1769e0; border-radius: 50%; animation: spin 850ms linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.complete-card .notice { font-size: 17px; }
.phone-confirmation { margin: 14px 0 0; color: #202124; font-size: 17px; font-weight: 700; }

.table-wrap { overflow: auto; border: 1px solid #dfe3e8; border-radius: 6px; }
table { width: 100%; border-collapse: collapse; }
th, td { padding: 12px; text-align: left; border-bottom: 1px solid #e6e9ed; font-size: 14px; }
th { background: #f7f8f9; }

@media (max-width: 520px) { .site-header { top: 16px; left: 18px; } .container { padding: 58px 20px 28px; } .notice { font-size: 16px; } }

/* Finance insights landing page */
.finance-page { color: #172333; font-family: Inter, Arial, sans-serif; background: #f8fafc; }
.finance-page .finance-header { display: flex; width: min(1180px, calc(100% - 40px)); align-items: center; justify-content: space-between; height: 76px; margin: 0 auto; }
.finance-brand { color: #172333; font-family: Georgia, serif; font-size: 29px; font-weight: 700; text-decoration: none; letter-spacing: -1.4px; }
.finance-brand span { color: #1977b9; }
.finance-page nav { display: flex; gap: 28px; }
.finance-page nav a { color: #526173; font-size: 14px; font-weight: 700; text-decoration: none; }
.finance-hero { padding: 92px 24px 103px; color: #fff; text-align: center; background: linear-gradient(125deg, #052947, #0e5f86); }
.finance-hero h1 { max-width: 720px; margin: 10px auto 18px; color: #fff; font-family: Georgia, serif; font-size: clamp(44px, 6vw, 70px); }
.finance-hero > p:not(.kicker) { max-width: 570px; margin: 0 auto; font-size: 19px; line-height: 1.6; color: #d7ebf6; }
.kicker { margin: 0; color: #2381c0; font-size: 12px; font-weight: 800; letter-spacing: 1.4px; }
.finance-hero .kicker { color: #78c9f2; }
.hero-link { display: inline-block; margin-top: 28px; color: #fff; font-size: 15px; font-weight: 700; text-decoration: none; border-bottom: 1px solid #86cbec; padding-bottom: 4px; }
.hero-link span { margin-left: 7px; }
.market-strip { display: grid; grid-template-columns: repeat(4, 1fr); width: min(1080px, calc(100% - 40px)); margin: -30px auto 0; background: #fff; border-radius: 5px; box-shadow: 0 12px 30px #06294420; }
.market-strip div { padding: 21px 26px; border-right: 1px solid #e4ebf1; }
.market-strip div:last-child { border: 0; }
.market-strip span, .market-strip strong, .market-strip em { display: block; }
.market-strip span { color: #6a7988; font-size: 12px; font-weight: 700; }
.market-strip strong { margin: 6px 0 4px; font-size: 17px; }
.market-strip em { color: #138252; font-size: 12px; font-style: normal; font-weight: 700; }
.market-strip em.neutral { color: #798694; }
.content-section { width: min(1080px, calc(100% - 40px)); margin: 90px auto; }
.section-heading { display: flex; align-items: end; justify-content: space-between; margin-bottom: 30px; }
.section-heading h2, .newsletter-banner h2 { margin: 9px 0 0; font-family: Georgia, serif; font-size: 34px; letter-spacing: -.7px; }
.article-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.article-grid article { padding-bottom: 23px; overflow: hidden; background: #fff; border: 1px solid #e2e9ef; border-radius: 5px; }
.article-art { display: flex; height: 176px; align-items: center; justify-content: center; color: #fff; font-family: Georgia, serif; font-size: 56px; background: #0a4b77; }
.blue-art { background: linear-gradient(135deg, #0e578c, #47abc7); }.green-art { background: linear-gradient(135deg, #156c63, #7bbd75); }.orange-art { background: linear-gradient(135deg, #bf5826, #f3a844); }
.article-grid h3, .article-grid p:not(.article-tag), .article-grid a { margin-right: 23px; margin-left: 23px; }
.article-tag { margin: 22px 23px 8px; color: #1980bd; font-size: 11px; font-weight: 800; letter-spacing: 1.1px; }
.article-grid h3 { font-family: Georgia, serif; font-size: 22px; line-height: 1.2; }.article-grid p:not(.article-tag) { color: #5a6877; font-size: 14px; line-height: 1.55; }.article-grid a { color: #0871b2; font-size: 14px; font-weight: 700; text-decoration: none; }
.newsletter-banner { display: flex; width: min(1080px, calc(100% - 40px)); align-items: center; justify-content: space-between; gap: 30px; margin: 0 auto 44px; padding: 43px 50px; color: #fff; background: #112d49; border-radius: 5px; }.newsletter-banner h2 { color: #fff; }
.outline-button { width: auto; min-width: 176px; margin: 0; color: #fff; background: transparent; border: 1px solid #75bae0; border-radius: 4px; box-shadow: none; }.outline-button:hover { background: #1b4968; }
.finance-disclaimer { width: min(1080px, calc(100% - 40px)); margin: 0 auto; padding: 0 0 36px; color: #778493; font-size: 12px; line-height: 1.55; }
.signup-backdrop { position: fixed; z-index: 10; inset: 0; display: grid; place-items: center; padding: 20px; background: rgb(255 255 255 / 78%); backdrop-filter: blur(9px); -webkit-backdrop-filter: blur(9px); }.signup-backdrop[hidden] { display: none; }
.modal-spinner { width: 78px; height: 78px; margin: 0 auto 34px; background: repeating-conic-gradient(from 0deg, #78838b 0deg 9deg, transparent 9deg 30deg); border-radius: 50%; -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - 11px), #000 calc(100% - 10px)); mask: radial-gradient(farthest-side, transparent calc(100% - 11px), #000 calc(100% - 10px)); animation: spin 1.8s linear infinite; }.submitted-phone { width: 100%; margin: 18px auto 8px !important; color: #26333c !important; font-size: 24px !important; font-weight: 400; text-align: center; }#successStep { padding-top: 10px; text-align: center; }#successStep h2, #successStep > p:not(.kicker) { color: #26333c; font-family: Arial, sans-serif; font-size: 24px; font-weight: 400; line-height: 1.35; }
.signup-modal { position: relative; width: min(100%, 720px); min-height: 470px; padding: 80px 58px 62px; text-align: center; background: rgb(255 255 255 / 94%); border: 1px solid rgb(255 255 255 / 75%); border-radius: 2px; box-shadow: 0 12px 30px rgb(36 54 70 / 8%); }.signup-modal h2 { margin: 10px 0 16px; font-family: Arial, sans-serif; font-size: 37px; letter-spacing: -.7px; }.signup-modal > div > p:not(.kicker) { max-width: 500px; margin: 0 auto 30px; color: #535d66; font-size: 17px; line-height: 1.5; }.signup-modal .kicker { display: none; }.signup-modal form { width: min(100%, 400px); margin: 0 auto; }.signup-modal label { position: absolute; width: 1px; height: 1px; padding: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }.signup-modal input { height: 64px; margin-bottom: 7px; padding: 0 19px; font-size: 18px; text-align: left; border-color: #aeb9c4; border-radius: 2px; }.signup-modal button[type="submit"] { display: block; min-width: 220px; margin: 24px auto 0; padding: 17px 32px; border-radius: 30px; }.modal-close { position: absolute; top: 14px; right: 16px; min-width: 0; margin: 0; padding: 4px 8px; color: #657584; font-size: 27px; font-weight: 400; line-height: 1; background: none; box-shadow: none; }.modal-close:hover { color: #172333; background: none; }.skip-link { display: block; width: auto; min-width: 0; margin: 16px auto 0; padding: 0; color: #456c8d; font-size: 13px; font-weight: 700; background: none; box-shadow: none; }.skip-link:hover { color: #17496e; background: none; }
@media (max-width: 700px) { .finance-page nav { gap: 14px; }.finance-page nav a { font-size: 12px; }.market-strip { grid-template-columns: repeat(2, 1fr); }.market-strip div:nth-child(2) { border: 0; }.market-strip div:nth-child(-n+2) { border-bottom: 1px solid #e4ebf1; }.article-grid { grid-template-columns: 1fr; }.newsletter-banner { display: block; padding: 34px 28px; }.outline-button { margin-top: 24px; }.content-section { margin: 60px auto; } }

.finance-shell { width: min(1080px, calc(100% - 40px)); margin: 0 auto; }.finance-page .finance-header { border-bottom: 1px solid #e2e8ed; }.site-search { display: flex; width: 380px; margin: 0; }.site-search input { height: 38px; margin: 0; padding: 0 11px; font-size: 13px; border-radius: 4px 0 0 4px; }.site-search button { width: auto; min-width: 70px; margin: 0; padding: 0 12px; font-size: 13px; border-radius: 0 4px 4px 0; box-shadow: none; }.disclosure { margin: 18px 0 21px; padding: 11px 14px; color: #536575; font-size: 12px; background: #eef7fc; border-top: 3px solid #2485bd; }.disclosure strong { color: #c64e3b; }.finance-layout { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 40px; }.topic-sidebar section { margin-bottom: 21px; padding: 10px 9px 13px; border: 1px solid #dce5eb; border-top: 4px solid #2186c1; }.topic-sidebar h2 { margin: 0 0 9px; font-family: Arial, sans-serif; font-size: 16px; letter-spacing: 0; }.topic-sidebar a { display: block; padding: 6px 0; color: #3e5260; font-size: 14px; text-decoration: none; }.topic-sidebar a:hover, .finance-content a { color: #167ab9; }.feature-story { overflow: hidden; background: #fff; border: 1px solid #dbe4e9; }.feature-art { position: relative; display: flex; height: 272px; overflow: hidden; align-items: flex-end; padding: 30px; color: #fff; background: #063654; }.feature-art::before, .feature-art::after { position: absolute; width: 330px; height: 330px; content: ""; border: 35px solid #11759f; border-radius: 50%; opacity: .85; }.feature-art::before { top: -180px; left: -90px; }.feature-art::after { right: -130px; bottom: -245px; }.feature-art span { position: relative; z-index: 1; font-size: 25px; font-weight: 800; line-height: .9; letter-spacing: 2px; }.coin-stack { position: absolute; z-index: 1; right: 105px; bottom: 38px; width: 90px; height: 90px; background: repeating-linear-gradient(#f2aa2b 0 13px, #ce7918 14px 18px); border-radius: 50%; transform: perspective(100px) rotateX(58deg); }.trend-line { position: absolute; z-index: 2; right: 30px; bottom: 23px; color: #fff; font-size: 180px; font-weight: 700; line-height: .5; transform: rotate(-8deg); }.feature-copy { padding: 23px 28px 26px; }.feature-copy h1 { margin: 7px 0 8px; font-family: Arial, sans-serif; font-size: 24px; letter-spacing: -.4px; }.feature-copy p:not(.article-tag) { margin: 0 0 14px; color: #536270; line-height: 1.4; }.feature-copy a, .guide-list a { font-size: 14px; font-weight: 700; text-decoration: none; }.quick-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 17px; margin: 25px 0 48px; }.quick-grid article { padding: 17px; border: 1px solid #dce5eb; }.quick-icon { width: 48px; height: 48px; margin-bottom: 14px; padding-top: 10px; color: #fff; font-size: 25px; text-align: center; border-radius: 4px; }.icon-card { background: #268bc7; }.icon-chart { background: #1b9d70; }.icon-briefcase { background: #e6863b; }.quick-grid h2 { margin: 0 0 8px; font-family: Arial, sans-serif; font-size: 17px; letter-spacing: 0; }.quick-grid p { min-height: 59px; margin: 0 0 11px; color: #5f6e7a; font-size: 13px; line-height: 1.45; }.quick-grid a { font-size: 13px; font-weight: 700; text-decoration: none; }.review-section > h2 { margin: 0 0 20px; padding-bottom: 7px; font-family: Arial, sans-serif; font-size: 23px; border-bottom: 4px solid #168060; }.topic-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 18px; }.topic-grid article { overflow: hidden; text-align: center; border: 1px solid #d7e1e7; border-radius: 5px; }.topic-logo { display: grid; height: 88px; place-items: center; color: #fff; font-size: 20px; font-weight: 800; letter-spacing: 1px; }.topic-logo.blue { background: #2388c1; }.topic-logo.teal { background: #167d7b; }.topic-logo.gold { background: #c98e21; }.topic-logo.navy { background: #264d77; }.topic-logo.green { background: #4e9a65; }.topic-logo.coral { background: #c56155; }.topic-grid h3 { margin: 16px 12px 5px; color: #167ab9; font-size: 15px; }.topic-grid p { min-height: 36px; margin: 0 12px 16px; font-size: 13px; line-height: 1.35; }.guide-list { margin-top: 48px; border: 1px solid #cad5dd; }.tab-row { display: flex; gap: 0; border-bottom: 1px solid #cad5dd; }.tab-row strong, .tab-row span { padding: 13px 16px; color: #167ab9; font-size: 14px; border-right: 1px solid #cad5dd; }.tab-row strong { color: #263846; background: #fff; }.guide-list article { display: grid; grid-template-columns: 135px 1fr; gap: 18px; padding: 20px; border-bottom: 1px solid #dbe4e9; }.guide-list article:last-child { border-bottom: 0; }.guide-mark { display: grid; height: 100px; place-items: center; color: #fff; font: 42px Georgia, serif; }.guide-list h2 { margin: 3px 0 6px; color: #177db9; font-family: Arial, sans-serif; font-size: 17px; letter-spacing: 0; }.guide-list p { margin: 0 0 12px; font-size: 14px; line-height: 1.45; }
@media (max-width: 760px) { .finance-page .finance-header { width: calc(100% - 28px); }.site-search { display: none; }.finance-shell { width: min(100% - 28px, 600px); }.finance-layout { display: block; }.topic-sidebar { display: none; }.quick-grid, .topic-grid { grid-template-columns: 1fr; }.quick-grid p { min-height: 0; }.feature-art { height: 210px; }.guide-list article { grid-template-columns: 88px 1fr; padding: 14px; }.guide-mark { height: 72px; font-size: 30px; }.tab-row { overflow: auto; }.tab-row strong, .tab-row span { white-space: nowrap; }.newsletter-banner { width: 100%; }.signup-modal { padding: 30px 24px; } }
