body {
    background-image: url(../images/PhotosCategoryPicture.png);
    background-repeat: no-repeat;
    background-attachment: fixed;
    background-size: 120%;
    background-position: center 60%;
}

main {
    width: 100%;
    height: calc(50vh - 6.0rem);
    margin-top: 6.0rem;
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: -2;
}

main .main-intro {
    position: relative;
    display: flex;
    flex-direction: column;
    align-items: center;
}

main .main-intro h1 {
    font-size: 9.6rem;
    line-height: 10.6rem;
    text-shadow: 0.4rem 0.4rem 0.2rem rgb(0, 0, 0, 0.5);
    max-width: 120.0rem;
    text-align: center;
}

main .main-intro p {
    font-size: 1.8rem;
    line-height: 3.0rem;
    max-width: 65.0rem;
    text-shadow: 0.3rem 0.3rem 0.2rem rgb(0, 0, 0, 0.5);
    text-align: center;
}

/* PHOTO HIGHLIGHTS SECTION START */
.photography-highlights {
    width: 100%;
    padding: 5.0rem 0;
    background-color: #1a1a1a;
}

.photography-highlights h2 {
    width: 120.0rem;
    color: white;
    text-transform: uppercase;
    font-size: 5.0rem;
    text-align: center;
    flex-basis: 100%;
    border-bottom: solid 0.6rem #00ab44;
    padding-bottom: 2.0rem;
    justify-self: center;
}

.photography-highlights-content {
    width: 120.0rem;
    margin: 0 auto;
    padding-top: 4.0rem;
    display: flex;
    justify-content: center;
    align-items: center;
}

.photography-highlights-contents-carousel {
    width: 120.0rem;
    height: 70.0rem;
    position: relative;
    display: flex;
}

.photography-highlights-contents-carousel ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

.photography-highlights-contents-carousel-slide {
    position: absolute;
    width: 100%;
    height: auto;
    inset: 0;
    opacity: 0;
    transition: 200ms opacity ease-in-out;
    transition-delay: 200ms;
}

.photography-highlights-contents-carousel-slide img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.photography-highlights-contents-carousel-slide[data-active] {
    opacity: 1;
    z-index: 2;
    transition-delay: 0ms;
}

.photography-highlights-contents-carousel-button {
    position: absolute;
    z-index: 50;
    background: none;
    border: none;
    font-size: 15rem;
    top: 50%;
    color: rgba(255, 255, 255, 0.5);
    transform: translateY(-50%);
    cursor: pointer;
    border-radius: 0.25rem;
    padding: 0 .5rem;
}

.photography-highlights-contents-carousel-button:hover {
    color: white;
}

.photography-highlights-contents-carousel-button.prev {
    left: 1rem;
}

.photography-highlights-contents-carousel-button.next {
    right: 1rem;
}
/* PHOTO HIGHLIGHTS SECTION END */

/* COLLECTIONS SECTION START */
.photography-collections-center {
    width: 130.0rem;
    height: 245.8rem;
    background-color: white;
    margin: 0 auto;
}

.starting-dark-overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-color: rgba(0, 0, 0, 0.2);
    transition: all ease-in-out 200ms;
}

.photography-collections-center h2 {
    width: 120.0rem;
    color: #111111;
    text-transform: uppercase;
    font-size: 5.0rem;
    text-align: center;
    flex-basis: 100%;
    border-bottom: solid 0.6rem #00ab44;
    padding-top: 5.0rem;
    padding-bottom: 2.0rem;
    justify-self: center;
    margin: 0 auto;
}

h3 {
    font-size: 4.0rem;
    line-height: 4.4rem;
    text-shadow: 0.3rem 0.3rem 0.2rem rgb(0, 0, 0, 0.2);
    text-align: center;
    z-index: 100;
}
/* Row 1 */
.photography-collections-center-row1 {
    width: 120.0rem;
    padding: 5.0rem 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
/* Animals */
.photography-collections-center-row1-image1 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/Animal/webp/IMG_6502.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row1-image1:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Flora */
.photography-collections-center-row1-image2 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/Flora/webp/AIMG_4324.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row1-image2:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Row 2 */
.photography-collections-center-row2 {
    width: 120.0rem;
    padding: 5.0rem 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
/* Notre Dame */
.photography-collections-center-row2-image1 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/NotreDame/webp/IMG_4217.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row2-image1:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Ranger */
.photography-collections-center-row2-image2 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/Ranger/webp/IMG_5036.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row2-image2:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Row 3 */
.photography-collections-center-row3 {
    width: 120.0rem;
    padding: 5.0rem 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
/* San Francisco */
.photography-collections-center-row3-image1 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/SanFrancisco/webp/AIMG_3.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row3-image1:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Macro */
.photography-collections-center-row3-image2 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/macro/webp/IMG_4648.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 70%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row3-image2:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Row 4 */
.photography-collections-center-row4 {
    width: 120.0rem;
    padding: 5.0rem 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
/* Arizona */
.photography-collections-center-row4-image1 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/Arizona/webp/3_20240715_134136.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center 70%;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row4-image1:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Germany */
.photography-collections-center-row4-image2 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)), url(../images/PhotographyCollections/Germany/webp/1-202400000.webp);
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row4-image2:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Row 5 */
.photography-collections-center-row5 {
    width: 120.0rem;
    padding: 5.0rem 0 0 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}
/* Contrast */
.photography-collections-center-row5-image1 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: url(../images/PhotographyCollections/Contrast/webp/IMG_1888.webp);
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row5-image1:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* Indiana University */
.photography-collections-center-row5-image2 {
    width: 57.5rem;
    height: 40.0rem;
    background-image: url(../images/PhotographyCollections/IndianaUniversity/webp/IMG_3872-2.webp);
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

.photography-collections-center-row5-image2:hover .starting-dark-overlay {
    background-color: rgba(0, 0, 0, 0);
}
/* COLLECTIONS SECTION END */

/* FREE PHOTOS SECTION IN MAIN :) */

@media only screen and (max-width: 1350px) {
    .photography-highlights h2,
    .photography-highlights-content,
    .photography-collections-center {
        width: 100%;
    }
}

/* ------ MOBILE VERSION ------ */

@media only screen and (max-width: 600px) {
    body {
        overflow-x: hidden;
        background-size: auto 50vh;
        background-position: center top;
    }

    main {
        min-height: calc(40svh - 10.0rem);
        height: auto;
        padding: 5.0rem 2.0rem;
    }

    main .main-intro {
        width: 100%;
    }

    main .main-intro h1 {
        max-width: 9em;
        font-size: clamp(4.0rem, 13vw, 5.6rem);
        line-height: 1.05;
        text-shadow: 0.3rem 0.3rem 0.2rem rgb(0, 0, 0, 0.5);
    }

    main .main-intro p {
        max-width: 44.0rem;
        margin-top: 2.0rem;
        font-size: 1.6rem;
        line-height: 2.5rem;
    }

    .photography-highlights {
        padding: 4.0rem 2.0rem;
    }

    .photography-highlights h2,
    .photography-collections-center h2 {
        width: 100%;
        padding-top: 0;
        padding-bottom: 1.5rem;
        font-size: 3.4rem;
        line-height: 4.0rem;
        border-bottom-width: 0.4rem;
    }

    .photography-highlights-content {
        width: 100%;
        padding-top: 3.0rem;
    }

    .photography-highlights-contents-carousel {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .photography-highlights-contents-carousel-slide {
        height: 100%;
    }

    .photography-highlights-contents-carousel-button {
        font-size: 7.0rem;
        padding: 0 1.0rem;
    }

    .photography-collectionsandnoncollections {
        background-attachment: scroll;
    }

    .photography-collections-center {
        width: 100%;
        height: auto;
        padding: 4.0rem 2.0rem;
    }

    .photography-collections-center-row1,
    .photography-collections-center-row2,
    .photography-collections-center-row3,
    .photography-collections-center-row4,
    .photography-collections-center-row5 {
        width: 100%;
        padding: 3.0rem 0 0;
        flex-direction: column;
        gap: 2.0rem;
        align-items: stretch;
    }

    .photography-collections-center-row1-image1,
    .photography-collections-center-row1-image2,
    .photography-collections-center-row2-image1,
    .photography-collections-center-row2-image2,
    .photography-collections-center-row3-image1,
    .photography-collections-center-row3-image2,
    .photography-collections-center-row4-image1,
    .photography-collections-center-row4-image2,
    .photography-collections-center-row5-image1,
    .photography-collections-center-row5-image2 {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }

    h3 {
        padding: 1.5rem;
        font-size: 3.0rem;
        line-height: 3.6rem;
    }
}

/* ------ MOBILE VERSION (800PX AND UNDER) ------ */
@media only screen and (max-width: 800px) {
    body {
        overflow-x: hidden;
        background-size: auto 55vh;
        background-position: center top;
    }

    main {
        min-height: calc(40svh - 5.0rem);
        height: auto;
        margin-top: 5.0rem;
        padding: 5.0rem 2.0rem;
    }

    main .main-intro {
        width: 100%;
    }

    main .main-intro h1 {
        max-width: 9em;
        font-size: clamp(4.0rem, 13vw, 5.6rem);
        line-height: 1.05;
        text-shadow: 0.3rem 0.3rem 0.2rem rgb(0, 0, 0, 0.5);
    }

    main .main-intro p {
        max-width: 44.0rem;
        margin-top: 2.0rem;
        font-size: 1.6rem;
        line-height: 2.5rem;
    }

    .photography-highlights {
        padding: 4.0rem 2.0rem;
    }

    .photography-highlights h2,
    .photography-collections-center h2 {
        width: 100%;
        padding-top: 0;
        padding-bottom: 1.5rem;
        font-size: 3.4rem;
        line-height: 4.0rem;
        border-bottom-width: 0.4rem;
    }

    .photography-highlights-content {
        width: 100%;
        padding-top: 3.0rem;
    }

    .photography-highlights-contents-carousel {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }

    .photography-highlights-contents-carousel-slide {
        height: 100%;
    }

    .photography-highlights-contents-carousel-button {
        font-size: 7.0rem;
        padding: 0 1.0rem;
    }

    .photography-collectionsandnoncollections {
        background-attachment: scroll;
    }

    .photography-collections-center {
        width: 100%;
        height: auto;
        padding: 4.0rem 2.0rem;
    }

    .photography-collections-center-row1,
    .photography-collections-center-row2,
    .photography-collections-center-row3,
    .photography-collections-center-row4,
    .photography-collections-center-row5 {
        width: 100%;
        padding: 3.0rem 0 0;
        flex-direction: column;
        gap: 2.0rem;
        align-items: stretch;
    }

    .photography-collections-center-row1-image1,
    .photography-collections-center-row1-image2,
    .photography-collections-center-row2-image1,
    .photography-collections-center-row2-image2,
    .photography-collections-center-row3-image1,
    .photography-collections-center-row3-image2,
    .photography-collections-center-row4-image1,
    .photography-collections-center-row4-image2,
    .photography-collections-center-row5-image1,
    .photography-collections-center-row5-image2 {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 10;
    }

    h3 {
        padding: 1.5rem;
        font-size: 3.0rem;
        line-height: 3.6rem;
    }

    .photography-freephotos-center {
        width: 100%;
        padding: 0 2.0rem 4.0rem;
    }

    .photography-freephotos-center h2 {
        width: 100%;
        padding-top: 4.0rem;
        padding-bottom: 1.5rem;
        font-size: 3.4rem;
        line-height: 4.0rem;
        border-bottom-width: 0.4rem;
    }

    .photography-freephotos-center-photo-grid {
        width: 100%;
        padding-top: 3.0rem;
        gap: 1.5rem;
    }

    .photography-freephotos-center-photo-grid-column {
        gap: 1.5rem;
    }

    .photo-lightbox {
        padding: 2.0rem;
    }

    .photo-lightbox img {
        max-width: 95vw;
        max-height: 90svh;
    }
}

/* ------ SMALL DESKTOP VERSION ------ */
@media only screen and (min-width: 801px) and (max-width: 1300px) {
    body {
        overflow-x: hidden;
        background-size: cover;
    }

    main {
        padding: 5.0rem clamp(3.0rem, 4vw, 5.0rem);
    }

    main .main-intro h1 {
        font-size: clamp(6.4rem, 8vw, 9.6rem);
        line-height: 1.08;
    }

    .photography-highlights {
        padding: 5.0rem clamp(3.0rem, 4vw, 5.0rem);
    }

    .photography-highlights h2,
    .photography-highlights-content {
        width: 100%;
    }

    .photography-highlights-contents-carousel {
        width: 100%;
        height: auto;
        aspect-ratio: 16 / 9;
    }

    .photography-highlights-contents-carousel-slide {
        height: 100%;
    }

    .photography-highlights-contents-carousel-button {
        font-size: clamp(8.0rem, 10vw, 13.0rem);
    }

    .photography-collectionsandnoncollections {
        background-attachment: scroll;
    }

    .photography-collections-center {
        width: 100%;
        height: auto;
        padding: 5.0rem clamp(3.0rem, 4vw, 5.0rem);
    }

    .photography-collections-center h2 {
        width: 100%;
        padding-top: 0;
    }

    .photography-collections-center-row1,
    .photography-collections-center-row2,
    .photography-collections-center-row3,
    .photography-collections-center-row4,
    .photography-collections-center-row5 {
        width: 100%;
        padding-top: 4.0rem;
        gap: 3.0rem;
    }

    .photography-collections-center-row1-image1,
    .photography-collections-center-row1-image2,
    .photography-collections-center-row2-image1,
    .photography-collections-center-row2-image2,
    .photography-collections-center-row3-image1,
    .photography-collections-center-row3-image2,
    .photography-collections-center-row4-image1,
    .photography-collections-center-row4-image2,
    .photography-collections-center-row5-image1,
    .photography-collections-center-row5-image2 {
        width: calc(50% - 1.5rem);
        height: auto;
        aspect-ratio: 16 / 10;
    }

    h3 {
        padding: 2.0rem;
        font-size: clamp(3.0rem, 3.2vw, 4.0rem);
        line-height: 1.15;
    }

    .photography-freephotos-center {
        width: 100%;
        padding: 0 clamp(3.0rem, 4vw, 5.0rem) 6.0rem;
    }

    .photography-freephotos-center h2,
    .photography-freephotos-center-photo-grid {
        width: 100%;
    }

    .photography-freephotos-center-photo-grid {
        gap: 2.4rem;
    }

    .photography-freephotos-center-photo-grid-column {
        gap: 2.4rem;
    }
}

/* ------ ULTRA-WIDE VERSION ------ */
@media only screen and (min-width: 2561px) {
    body {
        background-size: cover;
    }

    main {
        height: calc(50vh - 8.0rem);
        margin-top: 8.0rem;
    }

    main .main-intro h1 {
        max-width: 160.0rem;
        font-size: clamp(11.0rem, 5vw, 15.0rem);
        line-height: 1.08;
    }

    main .main-intro p {
        max-width: 120.0rem;
        font-size: 2.4rem;
        line-height: 3.8rem;
    }

    .photography-highlights {
        padding: 8.0rem 0;
    }

    .photography-highlights h2 {
        width: 180.0rem;
        padding-bottom: 3.0rem;
        font-size: 6.4rem;
        line-height: 7.2rem;
        border-bottom-width: 0.8rem;
    }

    .photography-highlights-content {
        width: 180.0rem;
        padding-top: 6.0rem;
    }

    .photography-highlights-contents-carousel {
        width: 180.0rem;
        height: 100.0rem;
    }

    .photography-collections-center {
        width: min(100%, 190.0rem);
        height: auto;
        padding: 8.0rem 5.0rem;
    }

    .photography-collections-center h2 {
        width: 100%;
        padding-top: 0;
        padding-bottom: 3.0rem;
        font-size: 6.4rem;
        line-height: 7.2rem;
        border-bottom-width: 0.8rem;
    }

    .photography-collections-center-row1,
    .photography-collections-center-row2,
    .photography-collections-center-row3,
    .photography-collections-center-row4,
    .photography-collections-center-row5 {
        width: 100%;
        padding-top: 6.0rem;
        gap: 5.0rem;
    }

    .photography-collections-center-row1-image1,
    .photography-collections-center-row1-image2,
    .photography-collections-center-row2-image1,
    .photography-collections-center-row2-image2,
    .photography-collections-center-row3-image1,
    .photography-collections-center-row3-image2,
    .photography-collections-center-row4-image1,
    .photography-collections-center-row4-image2,
    .photography-collections-center-row5-image1,
    .photography-collections-center-row5-image2 {
        width: calc(50% - 2.5rem);
        height: 55.0rem;
    }

    h3 {
        font-size: 5.4rem;
        line-height: 6.2rem;
    }

    .photography-freephotos-center {
        width: min(100%, 190.0rem);
        padding: 0 5.0rem 8.0rem;
    }

    .photography-freephotos-center h2 {
        width: 100%;
        padding-top: 8.0rem;
        padding-bottom: 3.0rem;
        font-size: 6.4rem;
        line-height: 7.2rem;
        border-bottom-width: 0.8rem;
    }

    .photography-freephotos-center-photo-grid {
        width: 100%;
        padding-top: 6.0rem;
        gap: 3.5rem;
    }

    .photography-freephotos-center-photo-grid-column {
        gap: 3.5rem;
    }
}
