*{box-sizing:border-box}
:root{
  --tb-navy:#062d4c;
  --tb-teal:#2c8f91;
  --tb-blue:#138bc3;
  --tb-ink:#343840;
  --tb-muted:#66707a;
  --tb-line:#dfe7eb;
  --tb-soft:#f6f9fa;
  --tb-white:#fff;
}
body{
  margin:0;
  font-family:"Lato",Arial,sans-serif;
  background:
    radial-gradient(circle at 12% 10%,rgba(44,143,145,.12),transparent 28%),
    radial-gradient(circle at 88% 85%,rgba(19,139,195,.10),transparent 30%),
    var(--tb-soft);
  color:var(--tb-ink)
}
.choice-shell{min-height:100vh;display:grid;place-items:center;padding:32px}
.choice-card{
  width:min(900px,100%);
  background:var(--tb-white);
  border:1px solid var(--tb-line);
  border-radius:26px;
  padding:42px;
  box-shadow:0 18px 48px rgba(6,45,76,.10)
}
.true-bearing-brand{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:20px 24px;
  margin-bottom:30px;
  border-radius:20px;
  background:var(--tb-navy);
  color:#fff
}
.true-bearing-copy{min-width:0}
.brand-eyebrow{
  margin:0 0 4px;
  font-family:"Montserrat",Arial,sans-serif;
  font-size:.68rem;
  font-weight:700;
  letter-spacing:.11em;
  text-transform:uppercase;
  color:rgba(255,255,255,.7)
}
.brand-name{
  font-family:"Montserrat",Arial,sans-serif;
  font-size:clamp(1.45rem,3vw,2rem);
  line-height:1.05;
  font-weight:700;
  white-space:nowrap
}
.brand-rule{
  width:56px;
  height:4px;
  margin-top:9px;
  border-radius:999px;
  background:var(--tb-teal)
}
.brand-tagline{
  margin:0;
  font-family:"Montserrat",Arial,sans-serif;
  font-size:.8rem;
  line-height:1.45;
  font-weight:600;
  text-align:right;
  color:rgba(255,255,255,.9)
}
.eyebrow{
  margin:0 0 6px;
  text-transform:uppercase;
  letter-spacing:.12em;
  font-size:.74rem;
  font-weight:700;
  color:var(--tb-teal)
}
.choice-card h1{
  margin:0;
  font-family:"Montserrat",Arial,sans-serif;
  font-size:clamp(2rem,4vw,2.75rem);
  line-height:1.1;
  color:var(--tb-navy)
}
.intro{color:var(--tb-muted);margin:10px 0 28px}
.portal-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
  gap:16px
}
.portal-card{
  display:flex;
  flex-direction:column;
  gap:10px;
  min-height:180px;
  padding:24px;
  border:1px solid var(--tb-line);
  border-radius:18px;
  text-decoration:none;
  color:inherit;
  background:#fff;
  box-shadow:0 5px 16px rgba(6,45,76,.04);
  transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease
}
.portal-card:hover{
  transform:translateY(-2px);
  border-color:var(--tb-teal);
  box-shadow:0 10px 24px rgba(6,45,76,.08)
}
.portal-card strong{
  font:700 1.12rem "Montserrat",Arial,sans-serif;
  color:var(--tb-navy)
}
.portal-card span{color:var(--tb-muted);line-height:1.5;flex:1}
.portal-card b{color:var(--tb-teal)}
.sign-out{
  margin-top:26px;
  padding:10px 18px;
  border:1px solid var(--tb-line);
  border-radius:999px;
  background:#fff;
  color:var(--tb-navy);
  font-weight:700;
  cursor:pointer
}
.message{color:#a13a32}.portal-switch-button{white-space:nowrap}
@media(max-width:650px){
  .choice-shell{padding:18px}
  .choice-card{padding:24px 18px}
  .true-bearing-brand{align-items:flex-start;flex-direction:column;padding:18px 20px}
  .brand-tagline{text-align:left}
  .brand-name{white-space:normal}
}
