.good_promo {
  background: url(/images/icons/alert_success.png) no-repeat;
  padding: 15px 15px 10px 10px;
  vertical-align: middle;
}
.wrong_promo {
  background: url(/images/icons/alert_error.png) no-repeat;
  padding: 15px 15px 10px 10px;
  vertical-align: middle;
  cursor: pointer;
}
.white_panel {
  background: white;
  padding: 10px;
  border-radius: 3px;
}
.row_under_prices td {
  padding-top: 5px;
}
.new_price {
  color: green;
}
.middle-content {
  width: auto;
}
.container_middle {
  background: none;
}
.fluid {
  width: 900px;
  margin: 0 auto;
}
.fluid div.item {
  clear: both;
  padding: 5px;
  width: 100%;
}
.fluid div.item.center {
  text-align: center;
}
.fluid div.item label {
  color: #828282;
  float: left;
  font-weight: bold;
  margin-right: 10px;
  margin-top: 5px;
  text-align: right;
  width: 200px;
}
.fluid div.item input[type="text"],
.fluid div.item select,
.fluid div.item textarea {
  width: 290px;
  padding: 5px 5px;
  margin: 1px;
}
.fluid div.item textarea {
  width: 97%;
}
.fluid div.item textarea,
.fluid div.item input[type="text"],
.fluid div.item input[type="password"],
.fluid div.item select {
  border: 1px solid #aaa;
  box-shadow: inset 0 0 2px #dbdbdb;
  background: white;
}
.fluid div.item textarea:focus,
.fluid div.item input[type="text"]:focus,
.fluid div.item input[type="password"]:focus,
.fluid div.item select:focus {
  border: 1px solid orange;
}
.fluid div.item textarea {
  resize: vertical;
}
.fluid div.item .partials.credit-card select {
  width: 100px;
}
.fluid div.item.block {
  background: white;
}
.fluid div.item.block.no_courses {
  color: red;
}
.fluid div.item.block label {
  float: none;
  display: block;
  width: 100%;
  text-align: center;
}
.fluid div.item.block input[type="text"],
.fluid div.item.block select,
.fluid div.item.block textarea {
  width: 290px;
  margin-left: 32%;
  margin-top: 10px;
}
.register,
.register_ecole_ss,
.renewal,
.shop_register .container_middle {
  float: none;
  width: auto;
}
.register *,
.register_ecole_ss *,
.renewal *,
.shop_register .container_middle * {
  font-size: 16px;
}
.register .menu_element a,
.register_ecole_ss .menu_element a,
.renewal .menu_element a,
.shop_register .container_middle .menu_element a {
  font-size: 18px;
}
.register h1,
.register_ecole_ss h1,
.renewal h1,
.shop_register .container_middle h1 {
  font-size: 22px;
  margin-top: 1.8em;
  border-bottom: 1px solid #999;
}
.register h2,
.register_ecole_ss h2,
.renewal h2,
.shop_register .container_middle h2 {
  font-size: 18px;
  margin-top: 1em;
}
.register p,
.register_ecole_ss p,
.renewal p,
.shop_register .container_middle p {
  font-size: 16px;
}
.register label,
.register_ecole_ss label,
.renewal label,
.shop_register .container_middle label {
  width: 35%;
}
.register div.item textarea,
.register_ecole_ss div.item textarea,
.renewal div.item textarea,
.shop_register .container_middle div.item textarea {
  width: 97%;
  margin: 0 auto;
}
.register div.item textarea.small,
.register_ecole_ss div.item textarea.small,
.renewal div.item textarea.small,
.shop_register .container_middle div.item textarea.small {
  height: 60px;
}
.register div.item.name input,
.register_ecole_ss div.item.name input,
.renewal div.item.name input,
.shop_register .container_middle div.item.name input {
  width: 25%;
}
.register textarea,
.register_ecole_ss textarea,
.renewal textarea,
.shop_register .container_middle textarea {
  width: 97%;
  margin: 0 auto;
  height: 100px;
}
.register table.fees td,
.register_ecole_ss table.fees td,
.renewal table.fees td,
.shop_register .container_middle table.fees td {
  text-align: center;
  width: 32px;
}
.register table.fees .price-before-tax,
.register table.fees .gst,
.register table.fees .pst,
.register table.fees .total,
.register_ecole_ss table.fees .price-before-tax,
.register_ecole_ss table.fees .gst,
.register_ecole_ss table.fees .pst,
.register_ecole_ss table.fees .total,
.renewal table.fees .price-before-tax,
.renewal table.fees .gst,
.renewal table.fees .pst,
.renewal table.fees .total,
.shop_register .container_middle table.fees .price-before-tax,
.shop_register .container_middle table.fees .gst,
.shop_register .container_middle table.fees .pst,
.shop_register .container_middle table.fees .total {
  padding: 10px;
  border: solid 1px #ccc;
  font-size: 1.2em;
  width: 100px;
}
.register table.fees .total,
.register_ecole_ss table.fees .total,
.renewal table.fees .total,
.shop_register .container_middle table.fees .total {
  border: solid 3px #666;
}
.register .appointments-per-week select,
.register .appointments-duration select,
.register .appointments-same-tutor select,
.register_ecole_ss .appointments-per-week select,
.register_ecole_ss .appointments-duration select,
.register_ecole_ss .appointments-same-tutor select,
.renewal .appointments-per-week select,
.renewal .appointments-duration select,
.renewal .appointments-same-tutor select,
.shop_register .container_middle .appointments-per-week select,
.shop_register .container_middle .appointments-duration select,
.shop_register .container_middle .appointments-same-tutor select {
  width: 10em;
}
.register div.item.iaccept label,
.register_ecole_ss div.item.iaccept label,
.renewal div.item.iaccept label,
.shop_register .container_middle div.item.iaccept label {
  text-align: center;
  width: 100%;
}
.register div.item.date,
.register_ecole_ss div.item.date,
.renewal div.item.date,
.shop_register .container_middle div.item.date {
  font-weight: bold;
}
.register div.item.subjects label,
.register_ecole_ss div.item.subjects label,
.renewal div.item.subjects label,
.shop_register .container_middle div.item.subjects label {
  text-align: left;
  width: 35%;
  margin-left: 10%;
}
.register div.item .other-subject,
.register_ecole_ss div.item .other-subject,
.renewal div.item .other-subject,
.shop_register .container_middle div.item .other-subject {
  margin-top: 1em;
}
.register div.item .other-subject label,
.register_ecole_ss div.item .other-subject label,
.renewal div.item .other-subject label,
.shop_register .container_middle div.item .other-subject label {
  width: 130px;
}
.register div.item .other-subject input,
.register_ecole_ss div.item .other-subject input,
.renewal div.item .other-subject input,
.shop_register .container_middle div.item .other-subject input {
  width: 200px;
}
.register div.item .payer-type label,
.register_ecole_ss div.item .payer-type label,
.renewal div.item .payer-type label,
.shop_register .container_middle div.item .payer-type label {
  width: auto;
  text-align: left;
}
.register table.availabilities,
.register_ecole_ss table.availabilities,
.renewal table.availabilities,
.shop_register .container_middle table.availabilities {
  width: 100%;
}
.register table.availabilities td,
.register_ecole_ss table.availabilities td,
.renewal table.availabilities td,
.shop_register .container_middle table.availabilities td {
  text-align: center;
}
.register div.item label.instructions,
.register_ecole_ss div.item label.instructions,
.renewal div.item label.instructions,
.shop_register .container_middle div.item label.instructions {
  float: none;
  display: block;
  width: auto;
  margin-left: 0;
  font-weight: normal;
  text-align: left;
  color: #555;
}
.register div.item li,
.register_ecole_ss div.item li,
.renewal div.item li,
.shop_register .container_middle div.item li {
  line-height: 1.4em;
  margin: 10px 0 10px 15px;
}
.register div.section-divider,
.register_ecole_ss div.section-divider,
.renewal div.section-divider,
.shop_register .container_middle div.section-divider {
  margin-top: 100px;
}
.register div.item.margin-left,
.register_ecole_ss div.item.margin-left,
.renewal div.item.margin-left,
.shop_register .container_middle div.item.margin-left {
  margin-left: 210px;
  width: auto;
}
.register div.informations,
.register_ecole_ss div.informations,
.renewal div.informations,
.shop_register .container_middle div.informations {
  margin-bottom: 50px;
}
.register div.informations .instructions,
.register_ecole_ss div.informations .instructions,
.renewal div.informations .instructions,
.shop_register .container_middle div.informations .instructions {
  float: none;
  display: block;
  width: auto;
  margin-left: 0;
  font-weight: normal;
  text-align: left;
  margin-top: 10px;
  color: #555;
}
.register div.informations .informations-title,
.register_ecole_ss div.informations .informations-title,
.renewal div.informations .informations-title,
.shop_register .container_middle div.informations .informations-title {
  background: #eee;
  padding: 8px;
  padding-left: 40px;
  cursor: pointer;
  margin-bottom: 0px;
  position: relative;
  text-decoration: underline;
  color: #0875A1;
}
.register div.informations .informations-title:hover,
.register_ecole_ss div.informations .informations-title:hover,
.renewal div.informations .informations-title:hover,
.shop_register .container_middle div.informations .informations-title:hover {
  background: #eee;
  padding: 8px;
  padding-left: 40px;
  cursor: pointer;
  margin-bottom: 0px;
  position: relative;
  text-decoration: underline;
  color: #14A3DB;
}
.register div.informations .informations-title + div,
.register_ecole_ss div.informations .informations-title + div,
.renewal div.informations .informations-title + div,
.shop_register .container_middle div.informations .informations-title + div {
  margin-top: 0px;
  border: solid #eee 2px;
  border-radius: 0px 0px 5px 5px;
  padding: 15px;
  background: white;
}
.register div.informations div.item.grid4,
.register_ecole_ss div.informations div.item.grid4,
.renewal div.informations div.item.grid4,
.shop_register .container_middle div.informations div.item.grid4 {
  margin-bottom: 20px;
}
.register div.informations div.item.grid4 label,
.register_ecole_ss div.informations div.item.grid4 label,
.renewal div.informations div.item.grid4 label,
.shop_register .container_middle div.informations div.item.grid4 label {
  width: 95%;
  text-align: left;
}
.register div.informations div.item.grid4 td,
.register div.informations div.item.grid4 th,
.register_ecole_ss div.informations div.item.grid4 td,
.register_ecole_ss div.informations div.item.grid4 th,
.renewal div.informations div.item.grid4 td,
.renewal div.informations div.item.grid4 th,
.shop_register .container_middle div.informations div.item.grid4 td,
.shop_register .container_middle div.informations div.item.grid4 th {
  text-align: center;
}
.register div.informations div.item.grid4 td,
.register_ecole_ss div.informations div.item.grid4 td,
.renewal div.informations div.item.grid4 td,
.shop_register .container_middle div.informations div.item.grid4 td {
  width: 12%;
}
.register div.informations div.item.grid4 td:first-child,
.register_ecole_ss div.informations div.item.grid4 td:first-child,
.renewal div.informations div.item.grid4 td:first-child,
.shop_register .container_middle div.informations div.item.grid4 td:first-child {
  width: 45%;
}
.register div.informations .learning-difficulties-div div.item label,
.register_ecole_ss div.informations .learning-difficulties-div div.item label,
.renewal div.informations .learning-difficulties-div div.item label,
.shop_register .container_middle div.informations .learning-difficulties-div div.item label {
  float: left;
  text-align: left;
  width: 90%;
  margin-left: 30px;
}
.register div.informations .learning-difficulties-div div.item.grid4 td:first-child,
.register_ecole_ss div.informations .learning-difficulties-div div.item.grid4 td:first-child,
.renewal div.informations .learning-difficulties-div div.item.grid4 td:first-child,
.shop_register .container_middle div.informations .learning-difficulties-div div.item.grid4 td:first-child {
  width: 400px;
}
.register div.informations div.item.grid2,
.register_ecole_ss div.informations div.item.grid2,
.renewal div.informations div.item.grid2,
.shop_register .container_middle div.informations div.item.grid2 {
  margin-bottom: 20px;
}
.register div.informations div.item.grid2 label,
.register_ecole_ss div.informations div.item.grid2 label,
.renewal div.informations div.item.grid2 label,
.shop_register .container_middle div.informations div.item.grid2 label {
  width: 95%;
}
.register div.informations div.item.grid2 td,
.register div.informations div.item.grid2 th,
.register_ecole_ss div.informations div.item.grid2 td,
.register_ecole_ss div.informations div.item.grid2 th,
.renewal div.informations div.item.grid2 td,
.renewal div.informations div.item.grid2 th,
.shop_register .container_middle div.informations div.item.grid2 td,
.shop_register .container_middle div.informations div.item.grid2 th {
  text-align: center;
}
.register div.informations div.item.grid2 td,
.register_ecole_ss div.informations div.item.grid2 td,
.renewal div.informations div.item.grid2 td,
.shop_register .container_middle div.informations div.item.grid2 td {
  width: 12%;
}
.register div.informations div.item.grid2 td:first-child,
.register_ecole_ss div.informations div.item.grid2 td:first-child,
.renewal div.informations div.item.grid2 td:first-child,
.shop_register .container_middle div.informations div.item.grid2 td:first-child {
  width: 25%;
}
.register img.plus,
.register_ecole_ss img.plus,
.renewal img.plus,
.shop_register .container_middle img.plus {
  background: url('/images/sprite/overview_sprite.png') -37px -119px;
  width: 19px;
  height: 19px;
  position: absolute;
  left: 12px;
}
.register img.minus,
.register_ecole_ss img.minus,
.renewal img.minus,
.shop_register .container_middle img.minus {
  background: url('/images/sprite/overview_sprite.png') -37px -138px;
  width: 19px;
  height: 19px;
  position: absolute;
  left: 12px;
}
.register div.errors *,
.register_ecole_ss div.errors *,
.renewal div.errors *,
.shop_register .container_middle div.errors * {
  color: red;
}
.register .partials.credit-card,
.register_ecole_ss .partials.credit-card,
.renewal .partials.credit-card,
.shop_register .container_middle .partials.credit-card {
  padding-top: 10px;
}
.register tr.underline td,
.register_ecole_ss tr.underline td,
.renewal tr.underline td,
.shop_register .container_middle tr.underline td {
  border-bottom: dashed 1px #888;
}
.jump_to_grade {
  font-weight: bold;
  color: blue;
  text-decoration: underline;
  cursor: pointer;
}
.get_attention {
  background: #B8dff2;
  border-radius: 5px;
}
.structure_recommandation_container {
  display: inline-block;
  vertical-align: middle;
  width: 100%;
  margin: auto;
  margin-bottom: 30px;
  margin-top: 5px;
}
.structure_recommandation_container div.recommandation,
.structure_recommandation_container div.structure_recommandation_auto {
  border: #555 1px solid;
  padding: 20px;
}
.structure_recommandation_container div.recommandation div,
.structure_recommandation_container div.recommandation img,
.structure_recommandation_container div.structure_recommandation_auto div,
.structure_recommandation_container div.structure_recommandation_auto img {
  display: inline-block;
  vertical-align: middle;
}
.structure_recommandation_container div.recommandation div,
.structure_recommandation_container div.structure_recommandation_auto div {
  width: 80%;
}
.structure_recommandation_container div.recommandation .image_message,
.structure_recommandation_container div.structure_recommandation_auto .image_message {
  width: 12%;
}
.structure_recommandation_container div.recommandation .image_message div,
.structure_recommandation_container div.structure_recommandation_auto .image_message div {
  font-size: 0.8em;
  font-style: italic;
}
.structure_recommandation_container div.recommandation .image_message img,
.structure_recommandation_container div.structure_recommandation_auto .image_message img {
  width: 60px;
  margin: auto;
}
.structure_recommandation_container .structure_recommandation_auto img {
  width: 60px;
  margin-right: 15px;
}
.structure_recommandation_container .helper_recommandation {
  margin-top: 0px;
  border: 1px solid #ddd;
  border-top: none;
  background: #eee;
  padding: 15px;
  display: none;
}
.structure_recommandation_container .helper_recommandation img,
.structure_recommandation_container .helper_recommandation div {
  display: inline-block;
  vertical-align: middle;
}
.structure_recommandation_container .helper_recommandation img {
  width: 40px;
  margin-right: 10px;
}
.structure_recommandation_container .helper_recommandation div {
  width: 80%;
}
.appointments-duration,
.appointments-per-week {
  display: inline-block;
  width: 100%;
}
.note {
  font-size: 0.9em;
  color: #555;
}
.all_hourly_fees {
  width: 90%;
  margin: auto;
  display: flex;
  margin-top: 40px;
  margin-bottom: 40px;
}
.hourly_fees_messages {
  width: 100%;
  margin: auto;
  margin-top: 10px;
  text-align: center;
}
.one_hourly_fee {
  display: inline-block;
  vertical-align: top;
  width: 46%;
  text-align: center;
  border: 1px #ccc solid;
  margin-bottom: 10px;
  margin: auto;
  background: white;
}
.one_hourly_fee .service_name {
  margin-top: 20px;
  padding: 10px;
  font-weight: bold;
  color: #0875a1;
  font-size: 1.3em;
}
.one_hourly_fee .service_cost {
  font-size: 1.2em;
  padding-top: 10px;
  padding-bottom: 10px;
  line-height: 75%;
}
.container_form_inscription h3,
.container_form_inscription h2 {
  line-height: 20px;
}
.register_ecole_ss .container_form_inscription_wider img.plus,
.register_ecole_ss .container_form_inscription_wider img.minus {
  top: 10px;
}
.register_ecole_ss .container_form_inscription_wider .one_course label,
.register_ecole_ss .container_form_inscription_wider .payment-methods label {
  float: none;
}
