h3 {
    text-align: left;
    font-size: 36px;
    margin-top: 40px;
    color: var(--e-global-color-primary);
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-weight: var(--e-global-typography-primary-font-weight);
}
h3.header {
    margin-top: 0;
}
h4, h5 {
    text-align: left;
}
label {
    font-size: 18px;
    margin-bottom: 0;
}
.form-control {
    border-color: #ced4da !important;
    border-width: 2px !important;
    border-radius: 6px !important;
}
.form-control:focus {
    border-color: #6d7a86 !important;
}
.checkboxes label {
    line-height: 1.5rem;
    font-size: 1.12rem;
    margin-top: 0;
}

.elementor-10 .elementor-element.elementor-element-73bf492:not(.elementor-motion-effects-element-type-background) {
    background: #d5d5d5 url('/images/blur-hospital-clinica-interior.jpg');
    background-size: cover;
}

.register-form-container {
    border-radius: 10px;
    background: white;
    max-width: 900px;
    padding: 50px 100px;
}

.elementor-element-8292d5e a {
    color: var(--e-global-color-primary);
    transition: color 0.3s;
}
.elementor-element-8292d5e a:hover {
    color: var(--e-global-color-secondary);
}


.elementor-element-73bf492-c {
    background: #d5d5d5 url('/images/personas-desenfocadas-trabajando-ordenadores.png');
    padding: 50px;
}
.c-inner-container {
    background: rgba(255,255,255,0.6);
    border-radius: 10px;
    display: flex;

    max-width: 900px;
    margin: 80px auto 40px auto;
    padding: 70px 60px;
}
.c-inner-container.block {
    display: block;
    padding-top: 50px;
}
.c-inner-container.block .success {
    background: #e3e3e3;
    padding: 10px;
    border-radius: 15px;
    line-height: 1.4;
    font-size: 1.15rem;
    color: #207834;
}
.c-inner-container.block .flex {
    display: flex;
    margin-top: 40px;
}
.c-inner-qr {
    --s: 28px;
    --t: 2px;
    --g: 14px;

    min-width: 230px;
    align-self: flex-start;
    margin: 20px;
    border-radius: 8px;
    padding: calc(var(--g) + var(--t));
    outline: var(--t) solid #524D4D;
    outline-offset: calc(-1*var(--t));
    -webkit-mask:
            conic-gradient(at var(--s) var(--s),#0000 75%,#000 0)
            0 0/calc(100% - var(--s)) calc(100% - var(--s)),
            linear-gradient(#000 0 0) content-box;
}
.c-inner-qr img {
    display: block;
    max-width: 200px;
}
.c-inner-content {
    color: black;
    padding-left: 100px;
    padding-right: 50px;
}
.c-inner-content h3 {
    font-size: 2rem;
    margin-top: 0;
    font-family: var(--e-global-typography-primary-font-family), Sans-serif;
    font-weight: var(--e-global-typography-primary-font-weight);
}
.c-inner-content .btn-custom {
    font-size: 16px;
    text-decoration: none;
    line-height: 1.5em;
    color: #FFFFFF;
    display: inline-block;
    margin-top: 15px;
    border-radius: 7px;

    background-color: var(--e-global-color-2cbccff);
    font-family: "Roboto", Sans-serif;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.19em;
    padding: 19px 26px 19px 26px;
}
.c-inner-content .btn-custom:hover {
    background-color: var(--e-global-color-63a07e0);
}

.btn-custom-print {
    font-size: 20px;
    text-decoration: none !important;
    line-height: 1.5em;
    color: #524D4D !important;
    border: 3px #524D4D solid;
    border-radius: 15px;
    padding: 12px 30px;
    padding-left: 66px;
    font-family: var(--e-global-typography-accent-font-family), Sans-serif;
    font-weight: var(--e-global-typography-accent-font-weight);
    background: url('/images/print-icon.svg') no-repeat 30px center;
    margin: 0 auto;
}
.btn-custom-print:hover {
    color: white !important;
    background-color: #524D4D;
    border-color: #524D4D;
    background-image: url('/images/print-icon-white.svg');
}

.c-inner-print {
    display: flex;
    margin-bottom: 70px;
}

.elementor-element-8292d5e a {
    color: var(--e-global-color-primary);
    transition: color 0.3s;
}
.elementor-element-8292d5e a:hover {
    color: var(--e-global-color-secondary);
}

@media print {
    header, footer {
        display: none;
    }

    .c-inner-container {
        display: block;
    }
    .c-inner-container.block .flex {
        display: block;
    }
    .c-inner-qr {
        border: 0;
        outline: 0;
    }
    .c-inner-qr img {
        height: 400px;
        width: 400px;
    }
    .c-inner-print {
        display: none;
    }
}
@media only screen and (max-width: 767px) {
    h3 {
        font-size: 26px;
    }

    .register-form-container {
        border-radius: 10px;
        padding: 25px 20px;
    }

    .elementor-element-73bf492-c {
        padding: 30px;
    }
    .c-inner-container {
        display: block;
        text-align: center;
        margin: 0px;
        margin-top: 10px;
        padding: 20px;
    }
    .c-inner-container.block .flex {
        display: block;
    }

    .c-inner-content {
        padding: 20px;
        margin: 0 auto;
    }
    .c-inner-content {
        max-width: 85%;
    }
    .c-inner-content h3 {
        white-space: nowrap;
        font-size: 26px;
        text-align: center;
    }
    .c-inner-content .btn-custom {
        white-space: nowrap;
        font-size: 17px;
        padding: 14px 40px;
    }

    .c-inner-print {
        margin: 40px auto;
    }
    .c-inner-qr {
        display: inline-block;
    }
}


.box {
    background-color: #fbfbfb;
    position: relative;
    padding: 13px;
    outline: 2px dashed #ead1d1;
    outline-offset: -10px;
    margin-bottom: 20px;

    -webkit-transition: outline-offset .15s ease-in-out, background-color .15s linear;
    transition: outline-offset .15s ease-in-out, background-color .15s linear;
}
.box.is-dragover {
    outline-color: #d6b8b8;
    background-color: #f3f3f3;
}
.box .box__dragndrop {
    display: inline;
}
.box label {
    font-size: 1rem;
    font-weight: 500 !important;
}
.box label strong {
    font-weight: 600 !important;
}
.box__file  {
    width: 0.1px;
    height: 0.1px;
    opacity: 0;
    overflow: hidden;
    position: absolute;
    z-index: -1;
}
.box__file + label
{
    max-width: 80%;
    text-overflow: ellipsis;
    white-space: nowrap;
    cursor: pointer;
    display: inline-block;
    overflow: hidden;
}
.box__file:focus + label,
.box__file.has-focus + label
{
    outline: 1px dotted #000;
    outline: -webkit-focus-ring-color auto 5px;
}
.box__button
{
    font-weight: 700;
    color: #e5edf1;
    display: none;
    padding: 8px 16px;
    margin: 40px auto 0;
}