:root{
  --odpt-navy:#0B5A8F;
  --odpt-teal:#006A6A;
  --odpt-text:#20252D;
  --odpt-muted:#66707C;
  --odpt-border:#E4E9ED;
  --odpt-border-soft:#EDF1F4;
  --odpt-shadow:0 10px 28px rgba(21,45,61,.07);
}

.odpt-wrap{
  width:100%;
  max-width:1100px;
  margin:0 auto;
  font-family:'DM Sans',Arial,Helvetica,sans-serif;
  color:var(--odpt-text);
}

.odpt-title{
  margin:0 0 10px;
  text-align:center;
  color:var(--odpt-navy);
  font-family:'Nunito',Arial,sans-serif;
  font-size:32px;
  line-height:1.18;
  font-weight:900;
  letter-spacing:-.025em;
}

.odpt-subtitle{
  max-width:720px;
  margin:0 auto 26px;
  text-align:center;
  color:var(--odpt-muted);
  font-size:15px;
  line-height:1.65;
}

.odpt-table-shell{
  overflow:hidden;
  border:1px solid var(--odpt-border);
  border-radius:22px;
  box-shadow:var(--odpt-shadow);
  background:#fff;
}

.odpt-table{
  width:100%;
  border-collapse:separate;
  border-spacing:0;
  table-layout:fixed;
  font-family:'DM Sans',Arial,sans-serif;
  font-size:14px;
  line-height:1.45;
}

.odpt-table th,
.odpt-table td{
  height:61px;
  padding:16px 22px;
  border-right:1px solid var(--odpt-border);
  border-bottom:1px solid var(--odpt-border);
  vertical-align:middle;
  transition:background-color .18s ease, box-shadow .18s ease;
}

.odpt-table thead th{
  height:58px;
  color:var(--odpt-navy);
  text-align:left;
  font-family:'Nunito',Arial,sans-serif;
  font-size:13px;
  line-height:1.2;
  font-weight:900;
  letter-spacing:-.01em;
  border-bottom:1px solid rgba(12,43,64,.12);
}

.odpt-table thead .odpt-feature-head,
.odpt-table thead .odpt-first-plan-head{
  color:#fff;
}

/* Feature labels feel quieter than the values for a cleaner hierarchy. */
.odpt-table tbody th{
  text-align:left;
  font-weight:500;
  color:#2B3138;
}

.odpt-table tbody td{
  text-align:left;
  font-weight:500;
  color:#252B32;
}

/* Minimal row feedback without changing the saved column colors. */
.odpt-table tbody tr:hover th,
.odpt-table tbody tr:hover td{
  box-shadow:inset 0 0 0 999px rgba(255,255,255,.10);
}

.odpt-table tr:last-child th,
.odpt-table tr:last-child td{
  border-bottom:0;
}

.odpt-table th:last-child,
.odpt-table td:last-child{
  border-right:0;
}

.odpt-plan-name{
  display:block;
}

.odpt-plan-badge{
  display:inline-flex;
  align-items:center;
  margin-top:7px;
  padding:3px 8px;
  border:1px solid rgba(11,90,143,.10);
  border-radius:999px;
  background:rgba(255,255,255,.34);
  color:inherit;
  font-size:9px;
  line-height:1.3;
  font-weight:800;
  letter-spacing:.045em;
  text-transform:uppercase;
}

.odpt-check{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  width:22px;
  height:22px;
  color:var(--odpt-teal);
  font-size:20px;
  line-height:1;
  font-weight:900;
}

.odpt-check-extra{
  margin-left:3px;
  color:#38414A;
  font-size:12px;
  font-weight:500;
}

.odpt-dash{
  color:#C6CED4;
  font-weight:500;
}

.odpt-mobile-cards{display:none}

.odpt-elementor-empty{
  padding:20px;
  border:1px dashed #B9C5CE;
  border-radius:10px;
  background:#F7F9FA;
  text-align:center;
  color:#5C6872;
}

@media(max-width:900px) and (min-width:681px){
  .odpt-table-shell{overflow-x:auto}
  .odpt-table{min-width:840px}
}

@media(max-width:680px){
  .odpt-title{font-size:27px}
  .odpt-subtitle{margin-bottom:20px}
  .odpt-table-shell{display:none}
  .odpt-mobile-cards{display:grid;gap:14px}

  .odpt-mobile-card{
    overflow:hidden;
    border:1px solid var(--odpt-border);
    border-radius:18px;
    box-shadow:0 7px 20px rgba(23,42,58,.06);
  }

  .odpt-mobile-card header{
    padding:15px 17px;
    border-bottom:1px solid rgba(12,43,64,.09);
  }

  .odpt-mobile-card h3{
    margin:0;
    color:var(--odpt-navy);
    font-family:'Nunito',Arial,sans-serif;
    font-size:19px;
    line-height:1.2;
    font-weight:900;
  }

  .odpt-mobile-card dl{
    margin:0;
    padding:5px 17px 9px;
  }

  .odpt-mobile-row{
    display:grid;
    grid-template-columns:minmax(0,1fr) auto;
    gap:16px;
    align-items:center;
    padding:12px 0;
    border-bottom:1px solid var(--odpt-border-soft);
  }

  .odpt-mobile-row:last-child{border-bottom:0}
  .odpt-mobile-row dt{color:#606B74;font-size:13px;font-weight:500}
  .odpt-mobile-row dd{margin:0;color:#20272E;font-size:14px;font-weight:700;text-align:right}
}
