h1 {
    font-family: playfair-display, serif;
    font-weight: 700;
    font-style: normal;
    font-size: 64px;
}

h4 {
    font-weight: 700;
    font-family: 'astoria-sans';
    font-size: 18px;
    text-transform: uppercase;
    margin-left: auto;
    margin-right: auto;
}

h3 {
    font-family: playfair-display, serif;
    font-weight: 700;
    font-style: normal;
    font-size: 24px;
    margin: 0;

}

.project-name {
    padding-top: 10em;
}


.project-name p {
    font-size: 24px;
    font-weight: 400;
}

.project-name img {
    width: 30%;

}

.casestudy-frame-img {
    max-width: 40%;
    max-height: 40%;
}

.casestudy-hero-img {
    max-width: 100%;
    position: relative;
    padding-top: 20%;
    margin-bottom: 12%;
    z-index: 1;
}


.hero-shot-img {
    width: 100%;
}

.title p {
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: 10% 0 0 0;
}

.title p:first-child {
    color: var(--color-gintei);
    font-size: 32px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin-bottom: 0;
    padding: 0;
    margin-top: 0;
}

.title p:nth-child(2) {
    color: var(--color-gintei);
    font-size: 32px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin-top: -10px;
    padding: 0;
}

.card {
    -webkit-box-shadow: 5px 10px 72px -23px rgba(29, 42, 81, 0.4);
    -moz-box-shadow: 5px 10px 72px -23px rgba(29, 42, 81, 0.4);
    box-shadow: 5px 10px 72px -23px rgba(29, 42, 81, 0.4);
    transition: 0.5s;
    width: 100%;
    padding: 3em;
    border-radius: 2px;
}

.card img {
    display: block;
    width: 100%;
}

.card-gap {
    column-gap: 6.25%;
}

.card-gap-2 {
    column-gap: 9.67697%;
}


.text-align-center {
    text-align: center;
}


.hifi-proto-gif video {
    width: 100%;
    margin-top: 48px;
}

.hifi-proto-gif-re video {
    width: 100%;
    float:right;
}

.hifi-proto-content p:nth-child(2) {
    font-size: 24px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: -6% 0 0 0;
}


.hifi-proto-content-re p:nth-child(2) {
    font-size: 24px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: -6% 0 0 0;
}

.bg-light {
    background-color: var(--color-gintei-secondary) !important;
    padding: 120px 15% 120px 15%;
    width: 100%;
}

.bg-how-might-we {
    background: var(--color-gintei-secondary);
    font-family: playfair-display, serif;
    font-weight: 700;
    font-size: 64px;
    padding: 120px 15% 120px 15%;
}

.bg-how-might-we span {
    font-size: 180px;
    position: absolute;
    z-index: 1;
    margin-top: -5%;
}

.bg-how-might-we span:nth-child(5) {
    right: 15%;
    top: 75%;
}

.flex-parent {
    display: -webkit-flex;
    display: flex;
}

.number {
    color: var(--color-gintei);
    font-size: 72px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: 0;
    padding: 0;
}

.number-re {
    color: var(--color-gintei);
    font-size: 72px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: 0;
    padding: 0;
}

.hifi-proto-content p:nth-child(2) {
    font-size: 28px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: 3% 0 0 0;
}


.hifi-proto-content-re p:nth-child(2) {
    font-size: 28px;
    font-family: playfair-display, serif;
    font-weight: 700;
    margin: 3% 0 0 0;
}

.in-store {
    width: 100%;
}

.image {
    width: 100%;
}

.no-content {
    height: 120px;
}

.gintei-line {
    width: 16em;
    height: 1em;
    /*border-radius: 100px;*/
    background-color: var(--color-gintei);
}

.mobile-refine {
    display: none;
}

.previous-link {
    background: linear-gradient(transparent 50%, #C0C9C1 50%) no-repeat;
    width: max-content;
    padding: 0 2%;
}

.next-link {
    background: linear-gradient(transparent 50%, #F3EAD1 50%) no-repeat;
    width: max-content;
    padding: 0 2%;

}

.mobile-image {
    display: none;
}

.mobile-show {
    display:none;
}

/* Medium devices (tablets, less than 1030px) */
@media (max-width: 1030px) {
    h3 {
        font-size: 20px;
    }

    h4 {
        font-size: 16px;
    }

    p {
        font-size: 16px;
    }

    .tablet-margin-top {
        margin-top: 24px;
    }

    .tablet-margin-small-top {
        margin-top: 18px;
    }

    .project-role {
        margin: 0%;
    }

    .project-name h1 {
        font-size: 48px;
    }

    .project-name img {
        width: 30%;
    }

    .intro-para p {
        margin-top: 0;
    }

    .project-name {
        padding-top: 20%;
        padding-bottom: 0%;
    }

    .project-name p {
        font-size: 20px;
        font-weight: 400;
    }

    .project-role {
        margin: 0 0 5% 0%;
        padding-left: 0;
    }

    .project-role {
        margin: 0 0 5% 0%;
        padding-left: 0;
    }


    .casestudy-hero-img {
        max-width: 90%;
        position: relative;
        padding-top: 25%;
        z-index: 1;
    }
    

    .title p:first-child {
        font-size: 28px;
    }

    .title p:nth-child(2) {
        font-size: 28px;
    }

    .hero-shot-img {
        width: 100%;
    }

    .card img {
        display: block;
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }

    .card {
        padding: 2.5%;
    }

    .row-margin-card {
        margin: 12px 0 auto 0;
    }

    .bg-how-might-we {
        font-weight: 700;
        font-size: 48px;
        padding: 96px 5% 96px 5%;
    }

    .bg-how-might-we span {
        font-size: 120px;
        position: absolute;
        z-index: 1;
        margin-top: -5%;
    }

    .bg-how-might-we span:nth-child(5) {
        right: 5%;
        /*padding-top: 6%;*/
    }

    .card {
        -webkit-box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        -moz-box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        transition: 0.5s;
        width: 100%;
        padding: 1.5em;
        border-radius: 2px;
    }

    .card2 {
        -webkit-box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        -moz-box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        box-shadow: 5px 10px 72px -23px rgba(181, 166, 145, 0.4);
        transition: 0.5s;
        width: 100%;
        padding: 1.5em;
        border-radius: 2px;
    }

    .bg-light {
        padding: 96px 5% 96px 5%;
        width: 100%;
    }


    .hifi-proto-gif video {
        width: 100%;
        margin-top: 96px;
    }

    .hifi-proto-gif-re video {
        width: 100%;
        margin-top: 96px;
    }

    .hifi-proto {
        margin-top:24px;
    }

    .hifi-proto-content {
        margin-top: 0;
    }

    .hifi-proto-content-re {
        margin-top: 0;
    }

    .diagonal-bg {
        clip-path: polygon(0 8%, 100% 0, 100% 88%, 0 95%);
        padding: 7rem 5% 7rem 5%;
    }

    .diagonal-bg-reflection {
        clip-path: polygon(0 8%, 100% 0, 100% 88%, 0 95%);
        padding: 7rem 5% 7rem 5%;
    }

    .diagonal-bg-light {
        background: var(--color-beautylish-secondary);
        clip-path: polygon(0 3%, 100% 0, 100% 80%, 0 82%);
        padding: 3em 5% 0 5%;
        height: 180em;
    }

    .no-content {
        height: 96px;
    }

    .container-ver {
        margin: 0% 5% 3% 5%;
    }

    .container-ver-re {
        margin: 0% 5% 3% 5%;
    }

    .ver-title p {
        font-size: 36px;
        margin-left: -1.8em;
        margin-top: 1.5em;
    }

    .ver-title-2 p {
        font-size: 36px;
        margin-left: -2.8em;
        margin-top: 2.5em;
    }

    .ver-title-right p {
        font-size: 36px;
        margin-left: -75%;
        margin-top: 130%;
    }

    .gintei-img {
        max-width:100%;
        max-height:100%;
    }
}



/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767.98px) {

    .tablet-margin-top {
        margin-top: 0px;
    }

    .row-margin-web {
        margin: 0;
    }

    .project-name {
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        padding: 30% 0 0 0;
    }

    .project-name p {
        font-size: 16px;
        font-weight: 400;
    }

    .project-name h1 {
        font-size: 48px;
    }

    .project-name img {
        width: 30%;
    }

    .project-role {
        margin: 0 0 5% 0%;
        padding-left: 0;
    }

    .casestudy-hero-img {
        max-width: 80%;
        left: 10%;
        margin-top: 0;
        padding-top: 0;
        margin-bottom: 0;

    }

    .title p:first-child {
        font-size: 24px;
    }

    .title p:nth-child(2) {
        font-size: 24px;
        margin-top: -10px;
    }

    .subtitle p {
        font-size: 24px;
    }

    .before-after-logo {
        margin-top: 0;
    }

    .before-after-design {
        margin-top: 0;
    }

    .bg-how-might-we {
        font-size: 28px;
        padding: 24px 8% 24px 8%;
    }

    .bg-how-might-we span {
        font-size: 76px;
        position: absolute;
        z-index: 1;
        margin-top: -6%;
    }

    .bg-light {
        padding: 72px 8%;
        width: 100%;
    }

    .hifi-proto-gif video {
        width: 100%;
        transform: translate(11.5%, 0);
        margin-top: 24px;
    }

    .hifi-proto-gif-re video {
        width: 100%;
        transform: translate(-13%, -0%);
        margin-top: 24px;
        margin-bottom: 12px;
    }

    .hifi-proto-content-re {
        padding-left: 0;
    }

    .flex-parent {
        flex-wrap: wrap;
        flex-direction: column;
    }

    .flex-parent-reverse {
        flex-direction: column-reverse;
    }

    .number {
        font-size: 48px;
    }

    .number-re {
        font-size: 48px;
    }

    .hifi-proto-content p:nth-child(2) {
        margin: 1% 0 0 0;
    }

    .hifi-proto-content-re p:nth-child(2) {
        margin: 1% 0 0 0;
    }

    .hifi-proto {
        margin-top: 0;
    }

    .gintei-line {
        width: 10em;
        height: 0.5em;
    }

    .mobile-card-margin-top {
        margin-top: 16px
    }

    .mobile-margin-top {
        margin-top: 24px;
    }

    .mobile-margin-top-large {
        margin-top: 72px;
    }

    .mobile-nomargin-top {
        margin-top: 0;
    }

    .mobile-image {
        display: block;
    }

    .web-image {
        display: none;
    }


    .mobile-no-show {
        display: none;
    }


    .mobile-show {
        display: block;
    }

    .next-title {
        font-size: 24px;
        font-family: playfair-display, serif;
        font-weight: 700;
        margin-bottom: 0;
    }

    .next-project-left-img img {
        padding-right: 0;
    }

    .previous-link-mobile {
        background: linear-gradient(transparent 50%, #C0C9C1 50%) no-repeat;
        /*width: max-content;*/
        padding: 0 2%;
        width: fit-content !important;
    }

}

/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575.98px) {}