body{
    display:contents;
}


html{
    scroll-behavior: smooth;
    font-family: Inter, sans-serif;
    font-size: 0.9vw;
}

html, body {
    margin: 0;
    padding: 0;
    background-color: rgba(0, 149, 182, 0.25);
}


h1{
    font-style: normal;
    color: #0069B4;
    font-size: 3rem;
    margin-top: 2rem;
    margin-bottom: 2rem;
    text-align: center;
}

h2{
    font-style: normal;
    color: #0069B4;
    font-size: 1.5rem;
}

h3{
    text-align: justify;
    font-style: normal;
    color: #0069B4;
    font-size: 1rem;
}

p{
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    text-indent: 1rem;
}

a{
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    text-decoration: none; 
}


input[type=email], [type=text], [type=number], [type=tel]{
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    border: 0.25rem solid #555;
    transition: 0.5s;
    width: 100%;
    border-radius: 0.75rem;
    transition: 0.5s;
    padding: 0.75rem;
    box-sizing: border-box;
    border: 0.25rem solid #ccc;
}

button, input[type=submit]{
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    border-radius: 1rem;
    padding: 0.75rem;
    box-shadow: 1px 1px 2px 1px #231f20;
    color: #0069B4;
    background: #fff;
    cursor: pointer;
    border: 0.5pt solid #1241ff;
    transition: 0.3s;
    text-align: center;
}

select {
    color: #0069B4;
    appearance: none;
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    transition: 0.5s;
    width: 100%;
    border-radius: 0.75rem;
    transition: 0.5s;
    padding: 0.75rem;
    box-sizing: border-box;
    border: 0.25rem solid #ccc;
}

.Divider{
    margin-top: 1.5rem;
    margin-bottom: 1.5rem;
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg,#ffffff00,#007AFF49,#007AFF,#007AFF49,#ffffff00);
}

.uslDivider{
    width: 100%;
    height: 2px;
    background: linear-gradient(90deg,#ffffff00,#ffffff49,#ffffff,#ffffff49,#ffffff00);
}

.errorHint {
    visibility: hidden;
    width: fit-content;
    height: fit-content;
    background-color: #555;
    color: #fff;
    text-align: center;
    border-radius: 6px;
    padding: 8px;
    position: absolute;
    z-index: 2000;
    text-indent: 0;
}

.errorHint.active {
    visibility: visible;
    animation: errorFade 0.5s;
}


@keyframes errorFade {
    from {opacity: 0;}
    to {opacity:1 ;}
}


input[type='radio'], .radioLable{
    font-style: normal;
    font-weight: 700;
    font-size: 1rem;
    text-align: justify;
    vertical-align: baseline;
    padding: 0.5rem;
    cursor: pointer;
}

input[type='radio']{
    display: none;
}

.radioLable{
    display: inline-block;
    padding: 0.5rem;
    cursor: pointer;
}

.radioLable span {
    position: relative;
    line-height: 2rem;
}

.radioLable span:before,
.radioLable span:after {
  content: '';
}

.radioLable span:before {
    border-radius: 0.2rem;
    border: 0.15rem solid #222020;
    width: 1.5rem;
    height: 1.5rem;
    margin-right: 10px;
    display: inline-block;
    vertical-align: top;
}
  
.radioLable span:after {
    background: linear-gradient(#0069B4 ,#007AFF); 
    width: 1.55rem;
    height: 1.55rem;
    position: absolute;
    top: -0.3rem;
    left: 0.12rem;
    transition: 0.3s;
    opacity: 0;
}

.radioLable input:checked+span:after {
    opacity: 1;
}

table {
    border-spacing: 0;
    border-collapse: separate;
    border-radius: 10px;
    background: linear-gradient(white, white) padding-box,
              linear-gradient(90deg,#0b72bb,#0a498d,#07416b) border-box;
    border: solid transparent;

    font-style: normal;
    font-size: 0.75rem;
    text-align: justify;
    table-layout: auto;
}

th{
    padding-top: 10px;
    padding-bottom: 10px;
    color: white;
    text-align: center;
}

table tr:first-child  th:first-child { 
    border-top-left-radius: 5px;
}

table tr:first-child  th:last-child { 
    border-top-right-radius: 5px;
}

td{
    padding: 10px;
}

table tr:first-child td:first-child { 
    width:100%;
}

table th:first-child {
    background: linear-gradient(90deg,#0b72bb,#0a498d );
}

table th:last-child {
    background: linear-gradient(90deg,#0a498d,#07416b);
}


table td:first-child {
    background: linear-gradient(white, white) padding-box,
              linear-gradient(90deg,#0b72bb,#0a498d) border-box;
    border: solid transparent;
}

table td:last-child {
    background: linear-gradient(white, white) padding-box,
              linear-gradient(90deg,#0a498d,#07416b) border-box;
    border: solid transparent;
}

table tbody tr:last-child td:first-child {
    border-bottom-left-radius: 6px;
}
table tbody tr:last-child td:last-child {
    border-bottom-right-radius: 6px;
}

button:disabled{
    background: rgb(189, 189, 189);
    color: #ffffff;
}

@media (hover: hover) {
    a:link:hover{
        text-decoration:underline; 
    }
    button:hover, input[type=submit]:hover{
        color: #ffffff;
        background: linear-gradient(#0069B4 ,#007AFF); 
    }
    button:disabled:hover{
        background: rgb(189, 189, 189);
        color: #ffffff;
    }
}

@media (hover: none) {
    a:link:active{
        text-decoration:underline; 
    }
    button:active, input[type=submit]:active{
        color: #ffffff;
        background: linear-gradient(#0069B4 ,#007AFF); 
    }
    button:disabled:active{
        background: rgb(189, 189, 189);
        color: #ffffff;
    }
}

@media (max-width: 700px) {
    html{
        font-size: 4vw;
    }
    .radioLable span:after {
        top: -0.325rem;
        left: 0.135rem;
    }
}