/* =============================================== */
/* Custom properties */

:root {
    --ff-overpass: "Overpass", sans-serif;

    --font-base: 1rem;

    --fs-28: 1.75rem;
    --fs-24: 1.5rem;
    --fs-16: 1rem;
    --fs-15: 0.9375rem;
    --fs-14: 0.875rem;

    --lh-35: 2.1875rem;
    --lh-30: 1.875rem;
    --lh-24: 1.5rem;
    --lh-22: 1.375rem;
    --lh-19: 1.1875rem;
    --lh-18: 1.125rem;

    --ls-0: 0px;
    --ls-02: 0.2px;
    --ls-017: 0.17px;
    --ls-187: 1.87px;
    --ls-2: 2px;

    --clr-white: 255, 255, 255;
    --clr-black: 0, 0, 0;

    --clr-grey-950: 19, 21, 24;
    --clr-grey-900: 38, 46, 56;
    --clr-grey-500: 150, 159, 173;

    --clr-orange-500: 252, 118, 20;

    --clr-gradient-1: 35, 42, 52;
    --clr-gradient-2: 24, 30, 39;

}

/* @media (min-width: 36em) {
    :root {
        --fs-48: 48px;
        --lh-71: 71px;

    }
} */

/* @media (min-width: 48em) {
    :root {
        --fs-48: 48px;
    }
} */

/* =============================================== */
/* Reset */
*,
*::before,
*::after {
    box-sizing: border-box;
}

html {
    -moz-text-size-adjust: none;
    -webkit-text-size-adjust: none;
    text-size-adjust: none;
}

body {
    font-size: var(--font-base);
    font-family: var(--ff-overpass);
    background-color: rgb(var(--clr-grey-950));
    height: 100vh;
    display: flex;
    place-content: center;
}

body,
h1,
h2,
h3,
h4,
p,
figure,
blockquote,
dl,
dd,
ul,
ol {
    margin: 0;
    padding: 0;
}

ul,
ol {
    list-style: none;
}

h1,
h2,
h3,
h4 {
    text-wrap: balance;
}

a:not([class]) {
    text-decoration-skip-ink: auto;
    text-decoration: none;
    color: currentColor;
}

img,
picture {
    max-width: 100%;
    display: block;
}

input,
button,
textarea,
select {
    font-family: inherit;
    font-size: inherit;
    border: none;
}

button {
    border: none;
    background: inherit;
    cursor: pointer;
}

textarea:not([rows]) {
    min-height: 10em;
}

:target {
    scroll-margin-block: 5ex;
}

/* =============================================== */
/* Utility classes */

.text-preset-1 {
    font-size: var(--fs-28);
    line-height: var(--lh-35);
    letter-spacing: var(--ls-0);
    font-weight: 700;
}

.text-preset-2 {
    font-size: var(--fs-24);
    line-height: var(--lh-30);
    letter-spacing: var(--ls-0);
    font-weight: 700;
}

.text-preset-3 {
    font-size: var(--fs-16);
    line-height: var(--lh-24);
    letter-spacing: var(--ls-02);
    font-weight: 700;
}

.text-preset-4-bold {
    font-size: var(--fs-15);
    line-height: var(--lh-19);
    letter-spacing: var(--ls-2);
    font-weight: 700;
}

.text-preset-4-regular {
    font-size: var(--fs-15);
    line-height: var(--lh-24);
    letter-spacing: var(--ls-0);
    font-weight: 400;
}

.text-preset-5-bold {
    font-size: var(--fs-14);
    line-height: var(--lh-18);
    letter-spacing: var(--ls-187);
    font-weight: 700;
}

.text-preset-5-semibold {
    font-size: var(--fs-14);
    line-height: var(--lh-24);
    letter-spacing: var(--ls-017);
    font-weight: 600;
}

.text-preset-5-regular {
    font-size: var(--fs-14);
    line-height: var(--lh-22);
    letter-spacing: var(--ls-0);
    font-weight: 400;
}

.container,
.thank-you-container {
    margin: auto;
    max-width: 327px;
    background: linear-gradient(to right, rgb(var(--clr-gradient-1)), rgb(var(--clr-gradient-2)));
    border-radius: 15px;
}

.container article {
    padding: 24px;
}

.star-icon-container {
    height: 40px;
    aspect-ratio: 1/1;
    background-color: rgb(var(--clr-grey-900));
    border-radius: 50%;
    display: flex;
}

.star-icon-container img {
    height: 14px;
    aspect-ratio: 1/1;
    margin: auto;
}

.container h1 {
    font-size: var(--fs-24);
    line-height: var(--lh-30);
    letter-spacing: var(--ls-0);
    font-weight: 700;
    margin-block: 24px 16px;
    color: rgb(var(--clr-white));
}

.container p {
    font-size: var(--fs-14);
    line-height: var(--lh-22);
    letter-spacing: var(--ls-0);
    font-weight: 400;
    color: rgb(var(--clr-grey-500));
}

.rating-options {
    display: flex;
    gap: 16px;
    justify-content: space-between;
    margin-block: 16px 24px;
}

@media (min-width: 36em) {

    .container,
    .thank-you-container {
        max-width: 412px;
        border-radius: 30px;
    }

    .container article {
        padding: 32px 24px;
    }

    .star-icon-container {
        height: 48px;
    }

    .star-icon-container img {
        height: 16px;
    }

    .container h1 {
        margin-block: 32px 16px;
        font-size: var(--fs-28);
        line-height: var(--lh-35);
    }

    .container p {
        font-size: var(--fs-15);
        line-height: var(--lh-24);
    }

    .rating-options {
        margin-block: 16px 32px;
    }
}

.visually-hidden {
    clip: rect(0 0 0 0);
    clip-path: inset(100%);
    height: 1px;
    overflow: hidden;
    position: absolute;
    white-space: nowrap;
    width: 1px;
}

/* =============================================== */
/* Components */

.submit-btn {
    background-color: rgb(var(--clr-orange-500));
    border-radius: 22.5px;
    font-family: var(--ff-overpass);
    font-size: var(--fs-14);
    line-height: var(--lh-18);
    letter-spacing: var(--ls-187);
    font-weight: 700;
    width: 100%;
    padding: 0.781em 0;
}

.submit-btn:active {
    background-color: rgb(var(--clr-white));
}

@media (min-width: 36em) {
    .submit-btn {
        line-height: var(--lh-24);
        letter-spacing: var(--ls-017);
        font-weight: 600;
    }
}

.label-radio {
    position: relative;
}

.option-btn {
    font-family: var(--ff-overpass);
    font-size: var(--fs-14);
    line-height: var(--lh-24);
    letter-spacing: var(--ls-017);
    font-weight: 600;
    aspect-ratio: 1/1;
    height: 2.625em;
    background-color: rgb(var(--clr-grey-900));
    color: rgb(var(--clr-grey-500));
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
    transition: all 0.3s ease;
}

.label-radio input:checked+.option-btn {
    background-color: rgb(var(--clr-white));
    color: rgb(var(--clr-black));
}

.option-btn:hover {
    background-color: rgb(var(--clr-orange-500));
    color: rgb(var(--clr-grey-900));
}



/* =============================================== */
/* Thank you page */

.thank-you-container article {
    text-align: center;
    margin: 36px 24px;
}

.online-payment-container img {
    height: 96px;
    width: 144px;
    margin: 0 auto;
}

.thank-you-container .selected-rating {
    font-size: var(--fs-14);
    line-height: var(--lh-22);
    letter-spacing: var(--ls-0);
    font-weight: 400;
    color: rgb(var(--clr-orange-500));
    margin-block: 30px;
}

.thank-you-container h2 {
    font-size: var(--fs-24);
    line-height: var(--lh-30);
    letter-spacing: var(--ls-0);
    font-weight: 700;
    color: rgb(var(--clr-white));
    margin-block-end: 16px;
}

.thank-you-container p {
    font-size: var(--fs-14);
    line-height: var(--lh-22);
    letter-spacing: var(--ls-0);
    font-weight: 400;
    color: rgb(var(--clr-grey-500));
}

@media (min-width: 36em) {
    .thank-you-container article {
        margin: 44.5px 36px;
    }

    .online-payment-container img {
        height: 108px;
        width: 162px;
        margin: 0 auto;
    }

    .selected-rating {
        font-size: var(--fs-15);
        line-height: var(--lh-24);
        margin-block: 38px;
    }

    .thank-you-container h2 {
        font-size: var(--fs-28);
        line-height: var(--lh-35);
    }

    .thank-you-container p {
        font-size: var(--fs-15);
        line-height: var(--lh-24);
    }
}