
.spspb-public{
  width:100%;
  margin:0 auto;
  padding:10px 0 16px;
  color:#505050;
  font-family:"Open Sans",Arial,Helvetica,sans-serif;
}
.spspb-title{
  margin:0 0 16px;
  text-align:center;
  color:#FD9747;
  font-size:44px;
  line-height:1.15;
  font-weight:600;
  letter-spacing:-0.01em;
}
.spspb-intro{
  width:100%;
  max-width:1414px;
  margin:0 auto 56px;
  text-align:center;
  color:#505050;
}
.spspb-intro-block{
  margin:0 auto 44px;
  max-width:1180px;
  font-size:16px;
  line-height:1.45;
  font-weight:400;
}
.spspb-intro-block:last-child{margin-bottom:0}
.spspb-intro strong{font-weight:700}
.spspb-intro-orange{color:#FD9747}
.spspb-plan-wrap{
  width:100%;
  max-width:1414px;
  margin:0 auto;
}
.spspb-plan{
  width:100%;
  margin:0 auto;
}
.spspb-plan-headline{
  min-height:56px;
  display:flex;
  align-items:center;
  background:#FD9747;
  color:#fff;
  border-radius:14px;
  padding:10px 16px;
  font-size:28px;
  line-height:1.15;
  font-weight:600;
  letter-spacing:0;
  margin:0 0 14px;
}
.spspb-table{
  display:grid;
  grid-template-columns:18% 52% 18% 12%;
  width:100%;
  border:1px solid #d7d7d7;
  border-radius:14px;
  overflow:hidden;
  background:#fff;
}
.spspb-th{
  min-height:76px;
  background:#324777;
  color:#fff;
  padding:16px 14px;
  display:flex;
  align-items:center;
  font-size:17px;
  line-height:1.25;
  font-weight:700;
  letter-spacing:.015em;
  border-right:1px solid rgba(255,255,255,.18);
}
.spspb-th:last-of-type{border-right:0}
.spspb-th-price{justify-content:center;text-align:center}
.spspb-td{
  min-height:53px;
  display:flex;
  align-items:center;
  padding:10px 14px;
  font-size:16px;
  line-height:1.28;
  border-top:1px solid #ddd;
  background:#fff;
  color:#505050;
  font-weight:400;
}
.spspb-day{
  background:#324777;
  color:#fff;
  font-weight:700;
  border-top:1px solid rgba(255,255,255,.10);
}
.spspb-meal{border-left:1px solid #ddd}
.spspb-codes{justify-content:center;text-align:center;color:#666}
.spspb-price{
  justify-content:flex-end;
  text-align:right;
  font-weight:700;
  padding-right:17px;
  color:#505050;
}
.spspb-note{
  max-width:1414px;
  margin:0 auto;
  text-align:center;
  color:#324777;
  padding:34px 14px 10px;
}
.spspb-note-title{
  margin-bottom:8px;
  color:#324777;
  font-size:26px;
  line-height:1.2;
  font-weight:700;
}
.spspb-note-heading{
  margin-bottom:7px;
  color:#505050;
  font-size:14px;
  line-height:1.4;
  font-weight:400;
}
.spspb-note-text{
  color:#505050;
  font-size:13px;
  line-height:1.55;
  font-weight:400;
}
.spspb-separator{
  height:1px;
  max-width:1414px;
  margin:36px auto 50px;
  background:#d7d7d7;
}
.spspb-unavailable{
  width:100%;
  max-width:1414px;
  margin:20px auto;
  padding:24px;
  border:1px solid #ddd;
  border-radius:14px;
  background:#fff;
  color:#666;
  text-align:center;
}
@media (max-width:1200px){
  .spspb-public{padding-left:16px;padding-right:16px}
  .spspb-title{font-size:34px}
  .spspb-intro{margin-bottom:38px}
  .spspb-plan-headline{font-size:24px}
  .spspb-table{grid-template-columns:17% 51% 19% 13%}
}
@media (max-width:700px){
  .spspb-public{padding-left:10px;padding-right:10px}
  .spspb-title{font-size:29px;margin-bottom:18px}
  .spspb-intro{margin-bottom:30px}
  .spspb-intro-block{font-size:12px;margin-bottom:22px}
  .spspb-plan-headline{height:auto;min-height:42px;font-size:17px;line-height:1.25;padding:10px 12px}
  .spspb-table{display:block;border-radius:8px}
  .spspb-th{display:none}
  .spspb-day{min-height:auto;padding:10px 12px;font-size:13px}
  .spspb-meal,.spspb-codes,.spspb-price{min-height:auto;border-left:0;padding:7px 12px;font-size:12px;justify-content:flex-start;text-align:left}
  .spspb-meal:before{content:'Mittagessen: ';font-weight:700;margin-right:5px}
  .spspb-codes:before{content:'Inhaltsstoffe/Zusatzstoffe: ';font-weight:700;margin-right:5px}
  .spspb-price:before{content:'Essenspreis: ';font-weight:700;margin-right:5px}
  .spspb-note{padding-top:20px}
  .spspb-note-title{font-size:17px}
  .spspb-note-heading{font-size:12px}
  .spspb-note-text{font-size:11px}
  .spspb-separator{margin:22px auto 28px}
}
