/* 0.0 Basic CSS configurations */

:root {
    --white: hsl(0, 0%, 100%);
    --black: hsl(0, 0%, 0%);
    --lightGrey: hsl(0, 0%, 92%);
    --darkGrey: hsl(0, 0%, 44%);
}

* {
    box-sizing: border-box;
    font-family: 'Roboto', sans-serif;
}

body, ul, ol {
    padding: 0;
    margin: 0;
}

p, li {
    font-size: 16px;
}

h1 {
    font-size: 24px;
    font-weight: 500;
}

h2 {
    font-weight: 500;
}

h3 {
    font-size: 18px;
    font-weight: 500;
}

.bold {
    font-weight: 600;
}

img {
    inline-size: 100%;
}

.top-space {
    margin-block-start: 20px;
}

ul li {
    list-style-type: none;
}

ol {
    padding-inline-start: 15px;
}

ol li {
    list-style-type: unset;
    margin-block: 10px;
}

.decimal li {
    list-style-type: decimal!important;
}

.steps-inside-container, .form-container {
    max-inline-size: 700px;
    margin: 0 auto;
}

main { 
    margin: 50px 30px 0 30px;
}

@media screen and (min-width: 700px) {
    main {
        margin-inline: 50px
    }
}

@media screen and (min-width: 800px) {
    main {
        margin-inline: unset;
    }
}

/* 0.1 Buttons */

/* Buttons */

.buttons-container {
    display: flex;
    justify-content: center;
    gap: 16px;
    margin-block: 50px;
}

.primary-btn, .secondary-btn {
    font-size: 16px;
    border-radius: 7px;
    text-decoration: none;
    padding: 15px 31px;
    cursor: pointer;
    transition-property: color, background-color, border;
    transition-duration: 0.5s;
    transition-timing-function: ease-in-out;
}

.primary-btn {
    background-color: #000;
    color: #fff;
    border: 2px solid #000;
    white-space: normal;
    display: flex;
    flex-direction: column;
    align-items: center;
}

@media screen and (min-width: 700px) {
    .primary-btn {
        display: block;
        white-space: nowrap;
    }
}

.primary-btn:hover {
    background-color: #4f4f4f;
    color: #fff;
    border-color: #4f4f4f;
}

.primary-btn.download {
    background-color: hsl(216, 57%, 39%);
    border-color: hsl(216, 57%, 39%);
    color: #fff;
    text-align: center;
}

.primary-btn.download:hover {
    border-color: #2b7d9b;
    background-color: #2b7d9b;
}

.primary-btn.download.disabled {
    pointer-events: none;
    opacity: 0.5;
}

.secondary-btn {
    color: #000;
    border: 2px solid #000;
    background-color: transparent;
}

.secondary-btn:hover {
    background-color: #505050;
    border-color: #505050;
    color: var(--white);
}

.tertiary-btn {
    cursor: pointer;
    border: none;
    background-color: unset;
    padding: 0;
    margin: 0;
    font-size: 16px;
    text-decoration: underline;
}

.tertiary-btn:hover {
    color: #505050;
}

/* 1.0 Navigation container */

.navigation-container {
    background-color: var(--black);
    color: var(--white);
    padding-inline: 20px;
    overflow: hidden;
}

.navigation-container > div {
    block-size: 64px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}

@media screen and (min-width: 1296px) {
        .navigation-container > div {
            block-size: 70px;
        }
}

/* 1.1 Logo container */

.logo-container {
    block-size: 100%;
}

.logo-container a { 
    block-size: 100%;
}

.logo-container a {
    text-decoration: none;
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 50px;
}

.logo-container img {
    block-size: 32px;
    inline-size: 32px;
}

.logo-container h1 {
    color: var(--white);
    font-weight: 400;
    font-size: 30px;

}

/* 2.0 Form container */

.form-container {
    background-color: var(--lightGrey);
    margin-block-start: 50px;
    padding: 50px 25px;
    border-radius: 7px;
}

@media screen and (min-width: 700px) {
    .form-container {
        padding: 50px 133px;
    }
}

.form-container header {
    margin-block-end: 50px;
}

.form-container form {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
}

.form-container div select {
    inline-size: 100%;
    padding: 15px;
    border: 1px solid var(--darkGrey);
    border-radius: 7px;
}

.form-container input[type="button"] {
    margin-block-start: 20px;
}

select {
    background: url('data:image/svg+xml,<%3Fxml version="1.0" encoding="UTF-8"%3F><svg id="uuid-135c89fc-7594-4269-9ab9-7d2a05b84583" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 197.34 107.15"><defs><style>.uuid-15e7f2a8-2041-4dc3-b88c-0befbe7c82e0{fill:%23000;stroke-width:0px;}</style></defs><path class="uuid-15e7f2a8-2041-4dc3-b88c-0befbe7c82e0" d="m3.5,0C-1.17,4.67-1.17,12.3,3.5,16.97l86.68,86.68c4.67,4.67,12.3,4.67,16.97,0L193.84,16.97c4.67-4.67,4.67-12.3,0-16.97H3.5Z"/></svg>') no-repeat right center;
    background-size: 10px;
    background-position-x: calc(100% - 15px);
    -webkit-appearance: none;
    appearance: none;
    background-color: #fff;
    color: #000;
    border: 1px solid #ccc;
    padding: 8px 30px 8px 10px; /* Add right padding for the custom arrow */
    font-size: 16px;
    position: relative;
  }

.form-group {
    margin-block-end: 20px;
}

.form-group, .form-group .select-container { 
    inline-size: 100%;
}

.select-container {
    display: flex;
    align-items: center;
}

.error-message {
    margin-block-end: 15px;
    color: #b3261e;
}