#register--form{
    display: flex;
    flex-wrap: wrap;
}

.alert{
    width: 100%;
}

.alert.is--error:has(+ .panel.register--personal){
    order: 1
}

.panel.register--personal{
    order: 2
}

.alert.is--error:has(+ .panel.register--company){
    order: 3;
    margin-bottom: -0.3125rem !important;
}

.panel.register--address{
    order: 4
}

.alert.is--error:has(+ .panel.register--shipping){
    order: 5;
    margin-bottom: 0 !important;
    margin-bottom: -0.3125rem !important;
}

.panel.register--shipping{
    order: 6
}

.panel.register--company{
    order: 7
}

.register--required-info{
    width: 100%;
    order: 8
}

.panel.register--form > div:has(.captcha--placeholder){
    order: 9
}

.register--action{
    width: 100%;
    order: 10
}

.register--b2b-account {
    margin: 1.25rem 0 0.9375rem 0;
    border-top: 1px solid #c7c7c7;
    padding-top: 1.25rem;
}

.register--b2b-account .register--b2b-account-headline {
    display: block;
    margin-bottom: 0.5rem;
    font-size: 1.0625rem;
}

.register--b2b-account #register--b2b--info-box {
    width: 100%;
    border: solid 1px #c4c4c4;
    padding: 1.25rem;
    margin-top: 1.25rem;
    background: aliceblue;
    container-type: inline-size;
    container-name: b2b-info-box;
}

.register--b2b-account #register--b2b--info-box > strong:first-child {
    font-size: 1.3125rem;
    margin-bottom: 1.375rem;
    padding-bottom: 0.4375rem;
    border-bottom: solid 1px #ccd5dd;
    display: block;
}

.register--b2b-account #register--b2b--info-box p {
    hyphens: auto;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphenate-limit-chars: 10 5 5;
    -webkit-hyphenate-limit-before: 5;
    -webkit-hyphenate-limit-after: 5;
}

.register--b2b-account #register--b2b--info-box p:last-child {
    margin-bottom: 0;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child.register--advantages--wrapper {
    container-type: inline-size;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages {
    position: relative;
    background: white;
    padding: 1.25rem;
    border: solid 1px #ccd5dd;
    margin: 1.5625rem 0 0 0;
    display: block;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages .panel--title {
    padding: 0 56px 0 0;
    margin: 0 0 0.625rem 0;
    line-height: 110%;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages .register--advantages-entry {
    font-size: 1.0625rem;
    padding-right: 0;
    line-height: 116%;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages .register--advantages-entry.locale-fr_FR {
    display: none;
}

.register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages:after {
    background: url("../img/badges/b2b.svg") no-repeat;
    width: 50px;
    height: 50px;
    content: '';
    position: absolute;
    top: -7px;
    right: 20px;
    filter: drop-shadow(0px 2px 2px rgba(0,0,0,0.3));
}

.register--b2b-account-box > div:not(#register--b2b--info-box) {
    display: flex;
    align-items: baseline;
    padding-right: 0.9375rem;
    margin-bottom: 0.3125rem;
    width: 100%;
}

.register--b2b-account-box > div:not(#register--b2b--info-box) label {
    padding-left: 0.3125rem;
    font-size: 1rem;
}

.register--b2b-account-additional-data {
    background: aliceblue;
    border: solid 1px #c4c4c4;
    padding: 1.25rem;
    margin-top: 1.4375rem;
}

.register--b2b-account-additional-data .register--b2b-revenue {
    margin-top: 1.5625rem;
}

.register--b2b-account-additional-data .register--b2b-found-by {
    margin: 1.625rem 0 0.3125rem 0;
}

.register--b2b-account-additional-data .register--b2b-website {
    margin-bottom: 1.25rem;
}

.register--b2b-account-additional-data .register--b2b-agb {
    display: flex;
    margin-top: 1.0625rem;
    flex-wrap: wrap;
    align-items: baseline;
}

.register--b2b-account-additional-data .register--b2b-agb label {
    font-size: 1rem;
    line-height: 140%;
}

.register--b2b-account-additional-data .register--b2b-agb div:has(input) {
    margin-right: 0.625rem;
}

.register--b2b-account-additional-data .register--b2b-agb div:has(input) .register--field {
    width: auto;
}

.register--b2b-account-additional-data .register--b2b-agb div:last-child {
    flex: 1;
}

.register--b2b-account-additional-data .register--b2b-agb a {
    text-decoration: underline;
    color: #2a2a2a;
}

.register--b2b-account-additional-data .register--b2b-agb .is--strong {
    width: 100%;
    display: block;
    margin-bottom: 0.625rem;
}

.register--b2b-account-additional-data .register--b2b-comment {
    margin-top: 0.625rem;
}

.register--b2b-account-additional-data .register--b2b-comment textarea {
    width: 100%;
    border-color: #dadada;
}

.register--b2b-website input{
    width: 100%;
}

.register--b2b-account-additional-data .register--b2b-sector,
.register--b2b-account-additional-data .register--b2b-interests{
    margin-top: 0.375rem;
}

.register--b2b-account-additional-data .register--b2b-website{
    margin-top: 0.3125rem
}


.register--b2b-account-additional-data .register--b2b-interests label {
    font-size: 1rem;
    line-height: 115%;
    display: block;
}

.register--b2b-account-additional-data .register--b2b-interests .register--b2b-interests-grid {
    display: grid;
    grid-gap: 10px;
    grid-row-gap: 16px;
    grid-template-columns: repeat(auto-fit,minmax(9.375rem,1fr));
}

.register--b2b-account-additional-data .register--b2b-interests .register--b2b-interests-grid > div {
    display: flex;
    align-items: baseline;
}

.register--b2b-account-additional-data .register--b2b-interests .register--b2b-interests-grid > div > div {
    margin-right: 0.4375rem;
}

.register--b2b-account-additional-data .register--b2b-interests .register--b2b-interests-grid.has--error {
    padding: 5px;
    border: solid 1px #d67676;
}

.register--b2b-account-additional-data .register--b2b-headline {
    font-weight: bold;
    font-size: 1.3125rem;
    margin-bottom: 1.5625rem;
    padding-bottom: 0.4375rem;
    border-bottom: solid 1px #ccd5dd;
    color: #2a2a2a;
}

.register--b2b-account-additional-data label.is--strong, .register--b2b-account-additional-data .register--b2b-interests strong {
    display: block;
    margin-bottom: 0.4375rem;
}

.register--b2b-account-additional-data .register--b2b-interests strong {
    margin-bottom: 0.875rem;
}

.register--b2b-account-additional-data #register_billing_b2b_trade_licence_file {
    margin-top: 0.625rem;
}

.register--b2b-account-additional-data .register--password-description {
    top: 0;
    margin-top: 0.4375rem;
    color: #242424;
}

.register--b2b-account-additional-data input[type=file] {
    width: 100%;
    white-space: normal;
}

.register--b2b-account-additional-data input[type=file]::file-selector-button {
    background: white;
    border: solid 1px #d0d0d0;
    font-size: 1rem;
    padding: 0.625rem;
    font-family: 'Roboto Condensed', sans-serif;
    color: #333;
    cursor: pointer;
    display: block;
    margin-bottom: 0.1875rem;
}

.register--b2b-account-additional-data input[type=file]:not(:hover).has--error::file-selector-button {
    background: #ecbcb7;
    border-color: #d67676;
    color: #a52d2d;
}

.register--b2b-account-additional-data strong, .register--b2b-account-additional-data .is--strong {
    font-size: 1.04rem;
}

.register--b2b-account-additional-data .has--error:has(> #register_billing_b2b_agb) {
    padding: 5px;
    border: solid 1px #d67676;
}

.ltt--b2b-terms h1 {
    margin-top: 0.375rem !important;
}

.b2b-modal {
    max-width: 900px;
}

@media screen and (min-width: 23.125em) {
    .register--b2b-account-additional-data input[type=file]::file-selector-button {
        display: inline;
        margin-bottom: 0;
    }
}

@media screen and (min-width: 30em) {
    .register--b2b-account-additional-data, .register--b2b-account #register--b2b--info-box {
        padding: 1.6875rem 1.875rem 1.875rem 1.875rem;
    }

    .register--b2b-account-additional-data p, .register--b2b-account #register--b2b--info-box p {
        line-height: 140%;
    }
}

@media screen and (min-width: 48em) {
    .register--b2b-account-box div {
        display: block;
        width: auto;
    }

    .register--b2b-account-box div label {
        padding-left: 0.125rem;
    }
}

@media screen and (min-width: 78.75em) {
    .register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages:after {
        width: 54px;
        height: 54px;
    }
}

@container b2b-info-box (min-width: 31.25em) {
    .register--b2b-account #register--b2b--info-box--cols {
        display: flex;
    }

    .register--b2b-account #register--b2b--info-box--cols > div:first-child {
        width: 55%;
        padding-right: 1.875rem
    }

    .register--b2b-account #register--b2b--info-box--cols > div:last-child {
        flex: 1;
    }

    .register--b2b-account #register--b2b--info-box--cols > div:last-child > div {
        background: white;
    }

    .register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages {
        margin-top: 0.625rem;
    }
}

@container (min-width: 24.375em) {
    #register--b2b--info-box .list--unordered.is--checked{
        display: flex;
        flex-wrap: wrap;
        column-gap: 14px;
    }

    .register--b2b-account #register--b2b--info-box--cols div:last-child .register--advantages .register--advantages-entry{
        width: calc(50% - 7px);
    }

    .register--advantages-entry.optional{
        display: none
    }
}
