@import url('https://fonts.googleapis.com/css2?family=Work+Sans:ital,wght@0,100..900;1,100..900&display=swap');

:root{
    --White: hsl(0, 100%, 100%);
    --Purple-100: hsl(275, 100%, 97%);
    --Purple-600: hsl(292, 16%, 49%);
    --Purple-950: hsl(292, 42%, 14%);

    --Hover: hsl(282, 88%, 55%);
}

*{
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
    font-family: "Work Sans", sans-serif;
}

/* ------------> Body <------------ */
body{
    background-color: var(--Purple-100);
    background-image: url(assets/images/background-pattern-mobile.svg);
    background-repeat: no-repeat;
    background-size: 100%;
}

/* ------------> Main <------------ */
.main{
    width: 327px;
    min-height: 371px;
    background-color: var(--White);
    margin: 142px auto 50px;
    border-radius: 6px;
    padding: 24px;
}

/* ------------> Section 01 <------------ */
.main__s1{
    display: flex;
    align-items: center;
}

.main__s1__star{
    height: 21px;
    margin-right: 25px;
}

.main__s1__h1{
    font-size: 1.875em;
    color: var(--Purple-950);
}

/* ------------> Section 02 <------------ */
.main__s2{
    margin-top: 24px;
}

.main__s2__details{
    margin-bottom: 20px;
    position: relative;
}

.main__s2__details__summary{
    list-style: none;
    display: flex;
    align-items: center;
}

.main__s2__details__summary__h2{
    font-weight: 600;
    color: var(--Purple-950);
    width: 213px;
    font-size: 0.938em;
}

.main__s2__details__summary__h2:hover{
    color: var(--Hover);
}

.main__s2__details__summary:hover{
    cursor: pointer;
}

.main__s2__details04{
    margin-bottom: 0;
}

.main__s2__details__p{
    font-size: 0.875em;
    margin: 26px 0 0 1px;
    color: var(--Purple-600);
    font-weight: 400;
    line-height: 1.3em;
}

.main__s2__line{
    width: 280px;
    border: 1px solid var(--Purple-100);
    margin-bottom: 26px;
}

.main__s2__details__plus{
    position: absolute;
    right: 3px;
}

.main__s2__details__minus{
    position: absolute;
    right: 3px;
    visibility: hidden;
}

.main__s2__details[open] .main__s2__details__minus{
    visibility: visible;
}

/* ------------> Footer <------------ */
.attribution {
    font-size: 11px;
    text-align: center;
    color: var(--Purple-950);
}

.attribution a {
    color: var(--Purple-600);
}

.attribution a:hover{
    color: var(--Hover);
}

/* ------------> 650px <------------ */
@media screen and (min-width: 650px) {
    /* ------------> Body <------------ */
    body{
        background-image: url(assets/images/background-pattern-desktop.svg);
    }

    /* ------------> Main <------------ */
    .main{
        width: 600px;
        padding: 40px;
        margin: 142px auto 55px;
    }

    /* ------------> Section 01 <------------ */
    .main__s1__star{
        height: 35px;
        margin: 0 28px 0 2px;
    }

    .main__s1__h1{
        font-size: 3.063em;
    }

    /* ------------> Section 02 <------------ */
    .main__s2{
        margin-top: 38px;
    }

    .main__s2__details{
        margin-bottom: 28px;
    }

    .main__s2__details04{
        margin-bottom: 0;
    }

    .main__s2__details__summary__h2{
        width: 460px;
        font-size: 1.1em;
    }

    .main__s2__details__p{
        font-size: 0.95em;
        margin: 30px 0 0 1px;
        line-height: 1.4em;
    }

    .main__s2__line{
        width: 512px;
        margin-bottom: 29px;
    }
}

/* -----------> 1024px View <----------- */
@media screen and (min-width: 1024px){
    /* ------------> Body <------------ */
    .main{
        margin: 150px auto 60px;
    }
}

/* -----------> 1280px View <----------- */
@media screen and (min-width: 1280px){
    /* ------------> Body <------------ */
    .main{
        margin: 150px auto 70px;
    }
}

/* -----------> 1360px View <----------- */
@media screen and (min-width: 1360px){
    /* ------------> Body <------------ */
    .main{
        margin: 167px auto 80px;
    }
}