/* =========================================================
   HOMEPAGE PORTFOLIO SECTION
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-section {
    position: relative;

    width: 100%;
    padding:
        clamp(100px, 10vw, 160px)
        0
        clamp(170px, 14vw, 230px);

    overflow: hidden;

    background:
        radial-gradient(
            circle at 8% 35%,
            rgba(84, 43, 152, 0.12),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 15%,
            rgba(101, 203, 208, 0.05),
            transparent 28%
        ),
        #030305;

    color: #f7f7f8;
}


/* Main container */

body.page-template-template-conveners-home
.conv-portfolio-section__container {
    width: min(
        calc(100% - 120px),
        1600px
    );

    max-width: none;
    margin-inline: auto;
    padding: 0;
}


/* =========================================================
   SECTION HEADER
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-section__header {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 50px;

    margin-bottom:
        clamp(55px, 7vw, 95px);
}


body.page-template-template-conveners-home
.conv-portfolio-section__heading {
    width: 100%;
    max-width: 900px;
}


/* Featured Work pill */

body.page-template-template-conveners-home
.conv-portfolio-section__label {
    display: inline-flex;
    align-items: center;
    gap: 10px;

    width: fit-content;

    margin-bottom: 25px;
    padding: 9px 16px;

    border:
        1px solid
        rgba(118, 80, 181, 0.34);

    border-radius: 999px;

    background:
        rgba(84, 43, 152, 0.07);

    color: #b79eff;

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 0.68rem;
    font-weight: 500;

    letter-spacing: 0.22em;
    line-height: 1;

    text-transform: uppercase;
}


body.page-template-template-conveners-home
.conv-portfolio-section__label span {
    display: block;

    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: #8758ff;

    box-shadow:
        0 0 0 4px rgba(135, 88, 255, 0.08),
        0 0 15px rgba(135, 88, 255, 0.85);
}


/* Main heading */

body.page-template-template-conveners-home
.conv-portfolio-section__heading h2 {
    max-width: 900px;
    margin: 0 !important;

    color: #f7f7f8 !important;

    font-family:
        "Manrope",
        sans-serif !important;

    font-size:
        clamp(
            3.4rem,
            5.8vw,
            6.4rem
        ) !important;

    font-weight: 580 !important;

    letter-spacing: -0.065em;
    line-height: 0.96;
}


body.page-template-template-conveners-home
.conv-portfolio-section__heading h2 strong {
    color: transparent !important;

    font-weight: inherit;

    background:
        linear-gradient(
            100deg,
            #b49cff 0%,
            #8f82f3 48%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}


/* View all button */

body.page-template-template-conveners-home
.conv-portfolio-section__view-all {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    gap: 12px;

    flex: 0 0 auto;

    min-height: 48px;
    padding: 12px 21px;

    border:
        1px solid
        rgba(255, 255, 255, 0.16);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, 0.012);

    color:
        rgba(247, 247, 248, 0.88) !important;

    font-family:
        "Manrope",
        sans-serif;

    font-size: 0.82rem;
    font-weight: 500;

    text-decoration: none;

    transition:
        transform 0.35s ease,
        border-color 0.35s ease,
        background 0.35s ease,
        box-shadow 0.35s ease;
}


body.page-template-template-conveners-home
.conv-portfolio-section__view-all:hover {
    border-color:
        rgba(101, 203, 208, 0.68);

    background:
        rgba(101, 203, 208, 0.06);

    color: #ffffff !important;

    transform: translateY(-3px);

    box-shadow:
        0 0 25px
        rgba(101, 203, 208, 0.1);
}


/* =========================================================
   PORTFOLIO GRID
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-grid {
    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap:
        clamp(28px, 3vw, 46px);

    align-items: start;

    width: 100%;
}


/* Equal-sized cards */

body.page-template-template-conveners-home
.conv-portfolio-card,
body.page-template-template-conveners-home
.conv-portfolio-card--1,
body.page-template-template-conveners-home
.conv-portfolio-card--2,
body.page-template-template-conveners-home
.conv-portfolio-card--3,
body.page-template-template-conveners-home
.conv-portfolio-card--4 {
    position: relative;

    grid-column: auto !important;
    grid-row: auto !important;

    width: 100%;
    height:
        clamp(
            520px,
            45vw,
            700px
        );

    min-height: 0;

    margin: 0 !important;

    overflow: hidden;

    border:
        1px solid
        rgba(118, 80, 181, 0.26);

    border-radius:
        clamp(24px, 2vw, 30px);

    background: #09090d;

    box-shadow:
        0 28px 75px
        rgba(0, 0, 0, 0.36);

    transition:
        border-color 0.35s ease,
        box-shadow 0.4s ease,
        transform 0.5s
        cubic-bezier(0.22, 1, 0.36, 1);
}


/* Stagger the right column */

body.page-template-template-conveners-home
.conv-portfolio-card:nth-child(even) {
    transform: translateY(
        clamp(70px, 8vw, 130px)
    );
}


/* =========================================================
   CARD LINK AND IMAGE
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-card__link {
    position: relative;

    display: block;

    width: 100%;
    height: 100%;

    color: inherit;
    text-decoration: none;
}


body.page-template-template-conveners-home
.conv-portfolio-card__media {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;
}


body.page-template-template-conveners-home
.conv-portfolio-card__image {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;
    object-position: center;

    transform: scale(1.01);

    transition:
        transform 0.9s
        cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.6s ease;
}


body.page-template-template-conveners-home
.conv-portfolio-card__placeholder {
    width: 100%;
    height: 100%;

    background:
        linear-gradient(
            135deg,
            rgba(84, 43, 152, 0.4),
            rgba(101, 203, 208, 0.12)
        );
}


/* Dark bottom overlay */

body.page-template-template-conveners-home
.conv-portfolio-card__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(3, 3, 5, 0.02) 32%,
            rgba(3, 3, 5, 0.16) 55%,
            rgba(3, 3, 5, 0.96) 100%
        );

    pointer-events: none;
}


/* =========================================================
   CARD CONTENT
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-card__content {
    position: absolute;
    z-index: 4;

    right:
        clamp(24px, 3vw, 40px);

    bottom:
        clamp(25px, 3vw, 40px);

    left:
        clamp(24px, 3vw, 40px);

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 25px;
}


body.page-template-template-conveners-home
.conv-portfolio-card__copy {
    min-width: 0;
}


body.page-template-template-conveners-home
.conv-portfolio-card__copy h3 {
    max-width: 650px;
    margin: 0 !important;

    color: #ffffff !important;

    font-family:
        "Manrope",
        sans-serif !important;

    font-size:
        clamp(
            1.55rem,
            2.2vw,
            2.6rem
        ) !important;

    font-weight: 600 !important;

    letter-spacing: -0.045em;
    line-height: 1.06;
}


body.page-template-template-conveners-home
.conv-portfolio-card__copy p {
    margin: 12px 0 0 !important;

    color:
        rgba(225, 222, 232, 0.66) !important;

    font-family:
        "Manrope",
        sans-serif;

    font-size:
        clamp(
            0.78rem,
            0.95vw,
            0.94rem
        );

    line-height: 1.5;
}


/* Arrow button */

body.page-template-template-conveners-home
.conv-portfolio-card__arrow {
    display: grid;
    place-items: center;

    width: 62px;
    height: 62px;

    flex: 0 0 62px;

    border-radius: 50%;

    background: #ffffff;
    color: #08080c;

    transition:
        transform 0.4s
        cubic-bezier(0.22, 1, 0.36, 1),
        background 0.35s ease,
        box-shadow 0.35s ease;
}


/* =========================================================
   CARD HOVER
========================================================= */

body.page-template-template-conveners-home
.conv-portfolio-card:hover {
    border-color:
        rgba(101, 203, 208, 0.55);

    box-shadow:
        0 35px 90px
        rgba(0, 0, 0, 0.48),
        0 0 30px
        rgba(101, 203, 208, 0.08);
}


body.page-template-template-conveners-home
.conv-portfolio-card:hover
.conv-portfolio-card__image {
    transform: scale(1.07);

    filter:
        saturate(1.08)
        contrast(1.04);
}


body.page-template-template-conveners-home
.conv-portfolio-card:hover
.conv-portfolio-card__arrow {
    background: #65cbd0;

    transform:
        translate(4px, -4px);

    box-shadow:
        0 0 28px
        rgba(101, 203, 208, 0.35);
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    body.page-template-template-conveners-home
    .conv-portfolio-section__container {
        width:
            calc(100% - 64px);
    }

    body.page-template-template-conveners-home
    .conv-portfolio-section__header {
        align-items: flex-start;
        flex-direction: column;

        gap: 30px;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-card,
    body.page-template-template-conveners-home
    .conv-portfolio-card--1,
    body.page-template-template-conveners-home
    .conv-portfolio-card--2,
    body.page-template-template-conveners-home
    .conv-portfolio-card--3,
    body.page-template-template-conveners-home
    .conv-portfolio-card--4 {
        height: 560px;
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    body.page-template-template-conveners-home
    .conv-portfolio-section {
        padding:
            85px
            0
            100px;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-section__container {
        width:
            calc(100% - 40px);
    }

    body.page-template-template-conveners-home
    .conv-portfolio-section__heading h2 {
        font-size:
            clamp(
                3rem,
                14vw,
                4.7rem
            ) !important;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-grid {
        grid-template-columns: 1fr;

        gap: 24px;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-card,
    body.page-template-template-conveners-home
    .conv-portfolio-card--1,
    body.page-template-template-conveners-home
    .conv-portfolio-card--2,
    body.page-template-template-conveners-home
    .conv-portfolio-card--3,
    body.page-template-template-conveners-home
    .conv-portfolio-card--4 {
        width: 100%;

        height:
            clamp(
                440px,
                125vw,
                580px
            );

        transform: none !important;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-card__content {
        right: 22px;
        bottom: 24px;
        left: 22px;

        gap: 18px;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-card__copy h3 {
        font-size:
            clamp(
                1.55rem,
                7vw,
                2.15rem
            ) !important;
    }

    body.page-template-template-conveners-home
    .conv-portfolio-card__arrow {
        width: 52px;
        height: 52px;

        flex-basis: 52px;
    }

}


/* =========================================================
   SINGLE PORTFOLIO PROJECT PAGE
========================================================= */

/* Remove Astra width restrictions and white side areas */

body.single-conv_portfolio,
body.single-conv_portfolio #page,
body.single-conv_portfolio .site,
body.single-conv_portfolio #content,
body.single-conv_portfolio .site-content,
body.single-conv_portfolio .site-main {
    background: #030305 !important;
    color: #f7f7f8;
}


body.single-conv_portfolio
#content > .ast-container,
body.single-conv_portfolio
.site-content > .ast-container,
body.single-conv_portfolio
.ast-container {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
}


body.single-conv_portfolio
#primary,
body.single-conv_portfolio
.content-area,
body.single-conv_portfolio
.site-main,
body.single-conv_portfolio
article {
    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;
}


/* =========================================================
   PAGE
========================================================= */

.conv-project-single {
    position: relative;

    width: 100%;
    min-height: 100vh;

    padding:
        clamp(70px, 7vw, 115px)
        0
        clamp(100px, 10vw, 165px);

    overflow: hidden;

    background:
        radial-gradient(
            circle at 85% 70%,
            rgba(84, 43, 152, 0.07),
            transparent 30%
        ),
        #030305;

    color: #f7f7f8;
}


.conv-project-single__container {
    width:
        min(
            calc(100% - 112px),
            1500px
        );

    margin-inline: auto;
}


/* =========================================================
   BACK LINK
========================================================= */

.conv-project-single__back {
    display: inline-flex;
    align-items: center;
    gap: 12px;

    margin-bottom:
        clamp(38px, 4.5vw, 70px);

    color:
        rgba(202, 199, 211, 0.62);

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 0.74rem;
    font-weight: 500;

    letter-spacing: 0.28em;
    line-height: 1;

    text-transform: uppercase;

    transition:
        color 0.3s ease,
        transform 0.35s
        cubic-bezier(0.22, 1, 0.36, 1);
}


.conv-project-single__back:hover {
    color: #65cbd0;

    transform: translateX(-5px);
}


.conv-project-single__back > span:first-child {
    font-size: 1rem;
    letter-spacing: 0;
}


/* =========================================================
   FEATURED IMAGE
========================================================= */

.conv-project-single__image {
    position: relative;

    width: 100%;
    height:
        clamp(500px, 57vw, 790px);

    margin: 0;

    overflow: hidden;

    border:
        1px solid
        rgba(126, 83, 200, 0.32);

    border-radius:
        clamp(24px, 2vw, 34px);

    background: #09090d;

    box-shadow:
        0 35px 95px
        rgba(0, 0, 0, 0.42),
        0 0 50px
        rgba(84, 43, 152, 0.08);
}


.conv-project-single__image::after {
    position: absolute;
    inset: 0;

    content: "";

    pointer-events: none;

    background:
        linear-gradient(
            180deg,
            rgba(3, 3, 5, 0.01) 65%,
            rgba(3, 3, 5, 0.16) 100%
        );
}


.conv-project-single__image-element {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;
    object-position: center;

    transition:
        transform 1s
        cubic-bezier(0.22, 1, 0.36, 1);
}


.conv-project-single__image:hover
.conv-project-single__image-element {
    transform: scale(1.025);
}


/* =========================================================
   INFORMATION LAYOUT
========================================================= */

.conv-project-single__information {
    display: grid;

    grid-template-columns:
        minmax(0, 1.1fr)
        minmax(410px, 0.9fr);

    gap:
        clamp(70px, 9vw, 150px);

    align-items: end;

    margin-top:
        clamp(65px, 7vw, 110px);
}


/* =========================================================
   TITLE AND DESCRIPTION
========================================================= */

.conv-project-single__content {
    min-width: 0;
}


.conv-project-single__title {
    max-width: 850px;
    margin: 0;

    color: #f7f7f8 !important;

    font-family:
        "Manrope",
        sans-serif !important;

    font-size:
        clamp(
            3.7rem,
            6.4vw,
            7.5rem
        ) !important;

    font-weight: 570 !important;

    letter-spacing: -0.065em;
    line-height: 0.93;

    text-wrap: balance;
}


.conv-project-single__description {
    max-width: 820px;

    margin-top:
        clamp(30px, 3vw, 45px);
}


.conv-project-single__description p {
    margin: 0;

    color:
        rgba(206, 203, 214, 0.73);

    font-family:
        "Manrope",
        sans-serif;

    
   
    font-size: clamp( 1.05rem, .09 vw, 1.32rem );

    font-weight: 400;

    letter-spacing: -0.012em;
    line-height: 1.7;
}


/* =========================================================
   META CARD
========================================================= */

.conv-project-single__meta-card {
    position: relative;

    width: 100%;

     padding: 19px;

    overflow: hidden;

    border:
        1px solid
        rgba(118, 80, 181, 0.28);

    border-radius: 26px;

    background:
        linear-gradient(
            145deg,
            rgba(84, 43, 152, 0.13),
            rgba(101, 203, 208, 0.025)
        ),
        #0a0910;

    box-shadow:
        0 28px 75px
        rgba(0, 0, 0, 0.36),
        inset 0 1px 0
        rgba(255, 255, 255, 0.025);
}


.conv-project-single__meta-card::before {
    position: absolute;

    top: -130px;
    right: -100px;

    width: 270px;
    height: 270px;

    border-radius: 50%;

    content: "";

    background:
        rgba(118, 80, 181, 0.16);

    filter: blur(80px);

    pointer-events: none;
}


.conv-project-single__meta-grid {
    position: relative;
    z-index: 2;

    display: grid;

    grid-template-columns:
        repeat(2, minmax(0, 1fr));

    gap: 0;
}


.conv-project-single__meta-item {
    min-width: 0;

    padding:
        4px
        clamp(20px, 2.5vw, 14px)
        30px;
}


.conv-project-single__meta-item:first-child {
    padding-left: 0;

    border-right:
        1px solid
        rgba(255, 255, 255, 0.08);
}


.conv-project-single__meta-item:nth-child(2) {
    padding-right: 0;
}


.conv-project-single__meta-item--wide {
    grid-column: 1 / -1;

    margin-top: 4px;
    padding:
        14px
        0
        0 !important;

    border-top:
        1px solid
        rgba(255, 255, 255, 0.08);

    border-right: 0 !important;
}


.conv-project-single__meta-label {
    display: flex;
    align-items: center;
    gap: 9px;

    margin-bottom: 14px;

    color: #a77cff;

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 0.66rem;
    font-weight: 500;

    letter-spacing: 0.24em;
    line-height: 1.2;

    text-transform: uppercase;
}


.conv-project-single__meta-label svg {
    width: 18px;
    height: 18px;

    flex: 0 0 18px;
}


.conv-project-single__meta-item p {
    margin: 0;

    color:
        rgba(247, 247, 248, 0.9);

    font-family:
        "Manrope",
        sans-serif;

    font-size:
        clamp(
            0.9rem,
            1.05vw,
            1.05rem
        );

    font-weight: 500;

    line-height: 1.55;
}


/* =========================================================
   TABLET
========================================================= */

@media (max-width: 1050px) {

    .conv-project-single__container {
        width:
            calc(100% - 64px);
    }

    .conv-project-single__information {
        grid-template-columns:
            minmax(0, 1fr)
            minmax(330px, 0.8fr);

        gap: 55px;
    }

    .conv-project-single__image {
        height:
            clamp(470px, 63vw, 650px);
    }

}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 767px) {

    .conv-project-single {
        padding:
            55px
            0
            90px;
    }

    .conv-project-single__container {
        width:
            calc(100% - 40px);
    }

    .conv-project-single__back {
        margin-bottom: 35px;

        font-size: 0.65rem;
        letter-spacing: 0.22em;
    }

    .conv-project-single__image {
        height:
            clamp(
                360px,
                105vw,
                520px
            );

        border-radius: 22px;
    }

    .conv-project-single__information {
        grid-template-columns: 1fr;

        gap: 48px;

        margin-top: 48px;
    }

    .conv-project-single__title {
           font-size: clamp(3.7rem, 4.4vw, 7.5rem) !important;

        line-height: 0.96;
    }

    .conv-project-single__description {
        margin-top: 25px;
    }

    .conv-project-single__description p {
        font-size: 1rem;
        line-height: 1.68;
    }

    .conv-project-single__meta-card {
        padding: 25px;

        border-radius: 21px;
    }

    .conv-project-single__meta-grid {
        grid-template-columns: 1fr;
    }

    .conv-project-single__meta-item,
    .conv-project-single__meta-item:first-child,
    .conv-project-single__meta-item:nth-child(2),
    .conv-project-single__meta-item--wide {
        grid-column: auto;

        padding:
            0
            0
            24px !important;

        border: 0 !important;
    }

    .conv-project-single__meta-item
    + .conv-project-single__meta-item {
        padding-top:
            24px !important;

        border-top:
            1px solid
            rgba(255, 255, 255, 0.08) !important;
    }

    .conv-project-single__meta-item:last-child {
        padding-bottom:
            0 !important;
    }

}

/* =========================================================
   PORTFOLIO LISTING / ARCHIVE PAGE
   3 PROJECTS PER ROW
========================================================= */

/* Remove Astra restrictions and white side areas */

body.post-type-archive-conv_portfolio,
body.post-type-archive-conv_portfolio #page,
body.post-type-archive-conv_portfolio #content,
body.post-type-archive-conv_portfolio .site-content,
body.post-type-archive-conv_portfolio .site-main {
    background: #030305 !important;
    color: #f7f7f8;
}

body.post-type-archive-conv_portfolio
#content > .ast-container,
body.post-type-archive-conv_portfolio
.site-content > .ast-container,
body.post-type-archive-conv_portfolio
.ast-container,
body.post-type-archive-conv_portfolio
#primary,
body.post-type-archive-conv_portfolio
.content-area {
    display: block !important;

    width: 100% !important;
    max-width: none !important;

    margin: 0 !important;
    padding: 0 !important;

    background: #030305 !important;
}


/* =========================================================
   ARCHIVE PAGE
========================================================= */

.conv-portfolio-archive {
    width: 100%;
    min-height: 100vh;

    padding-bottom:
        clamp(100px, 9vw, 150px);

    overflow: hidden;

    background:
        radial-gradient(
            circle at 10% 12%,
            rgba(84, 43, 152, 0.11),
            transparent 30%
        ),
        radial-gradient(
            circle at 92% 35%,
            rgba(101, 203, 208, 0.045),
            transparent 28%
        ),
        #030305;
}


/* Shared archive container */

.conv-portfolio-archive__container {
    width:
        min(
            calc(100% - 96px),
            1600px
        );

    max-width: none;

    margin-inline: auto;
    padding: 0;
}


/* =========================================================
   ARCHIVE HERO
========================================================= */

.conv-portfolio-archive__hero {
    padding:
        clamp(85px, 8vw, 130px)
        0
        clamp(55px, 6vw, 90px);
}


.conv-portfolio-archive__hero
.conv-portfolio-section__label {
    display: inline-flex;
    align-items: center;
    gap: 9px;

    width: fit-content;

    margin-bottom: 24px;
    padding: 9px 15px;

    border:
        1px solid
        rgba(118, 80, 181, 0.34);

    border-radius: 999px;

    background:
        rgba(84, 43, 152, 0.07);

    color: #b69dff;

    font-family:
        "Space Grotesk",
        sans-serif;

    font-size: 0.68rem;
    font-weight: 500;

    letter-spacing: 0.22em;
    line-height: 1;

    text-transform: uppercase;
}


.conv-portfolio-archive__hero
.conv-portfolio-section__label span {
    width: 7px;
    height: 7px;

    flex: 0 0 7px;

    border-radius: 50%;

    background: #8758ff;

    box-shadow:
        0 0 0 4px rgba(135, 88, 255, 0.08),
        0 0 14px rgba(135, 88, 255, 0.8);
}


.conv-portfolio-archive__hero h1 {
    max-width: 1050px;
    margin: 0 !important;

    color: #f7f7f8 !important;

    font-family:
        "Manrope",
        sans-serif !important;

    font-size:
        clamp(
            3.7rem,
            6.8vw,
            7.7rem
        ) !important;

    font-weight: 580 !important;

    letter-spacing: -0.07em;
    line-height: 0.94;
}


.conv-portfolio-archive__hero h1 strong {
    display: block;

    color: transparent !important;

    font-weight: inherit;

    background:
        linear-gradient(
            100deg,
            #b49cff 0%,
            #8f82f3 48%,
            #65cbd0 100%
        );

    -webkit-background-clip: text;
    background-clip: text;
}


/* =========================================================
   THREE-COLUMN PORTFOLIO GRID
========================================================= */

.conv-portfolio-archive
.conv-portfolio-grid {
    display: grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap:
        clamp(22px, 2vw, 32px);

    align-items: stretch;

    width: 100%;
}


/* Reset homepage staggered positioning */

.conv-portfolio-archive
.conv-portfolio-card,
.conv-portfolio-archive
.conv-portfolio-card--1,
.conv-portfolio-archive
.conv-portfolio-card--2,
.conv-portfolio-archive
.conv-portfolio-card--3,
.conv-portfolio-archive
.conv-portfolio-card--4 {
    position: relative;

    grid-column: auto !important;
    grid-row: auto !important;

    width: 100%;
    height:
        clamp(
            430px,
            34vw,
            570px
        );

    min-width: 0;
    min-height: 0;

    margin: 0 !important;

    overflow: hidden;

    border:
        1px solid
        rgba(118, 80, 181, 0.25);

    border-radius: 25px;

    background: #09090d;

    box-shadow:
        0 24px 65px
        rgba(0, 0, 0, 0.34);

    transform: none !important;

    transition:
        border-color 0.35s ease,
        box-shadow 0.4s ease,
        transform 0.4s
        cubic-bezier(0.22, 1, 0.36, 1);
}


/* =========================================================
   CARD IMAGE
========================================================= */

.conv-portfolio-archive
.conv-portfolio-card__link {
    position: relative;

    display: block;

    width: 100%;
    height: 100%;

    color: inherit;
    text-decoration: none;
}


.conv-portfolio-archive
.conv-portfolio-card__media {
    position: absolute;
    inset: 0;

    width: 100%;
    height: 100%;

    overflow: hidden;
}


.conv-portfolio-archive
.conv-portfolio-card__image {
    display: block;

    width: 100%;
    height: 100%;

    max-width: none;

    object-fit: cover;
    object-position: center;

    transform: scale(1.01);

    transition:
        transform 0.85s
        cubic-bezier(0.22, 1, 0.36, 1),
        filter 0.55s ease;
}


.conv-portfolio-archive
.conv-portfolio-card__placeholder {
    width: 100%;
    height: 100%;

    background:
        linear-gradient(
            135deg,
            rgba(84, 43, 152, 0.4),
            rgba(101, 203, 208, 0.12)
        );
}


.conv-portfolio-archive
.conv-portfolio-card__overlay {
    position: absolute;
    inset: 0;

    background:
        linear-gradient(
            180deg,
            rgba(3, 3, 5, 0.02) 28%,
            rgba(3, 3, 5, 0.18) 55%,
            rgba(3, 3, 5, 0.97) 100%
        );

    pointer-events: none;
}


/* =========================================================
   CARD CONTENT
========================================================= */

.conv-portfolio-archive
.conv-portfolio-card__content {
    position: absolute;
    z-index: 4;

    right: 25px;
    bottom: 27px;
    left: 25px;

    display: flex;
    align-items: flex-end;
    justify-content: space-between;

    gap: 18px;
}


.conv-portfolio-archive
.conv-portfolio-card__copy {
    min-width: 0;
}


.conv-portfolio-archive
.conv-portfolio-card__copy h3 {
    margin: 0 !important;

    color: #ffffff !important;

    font-family:
        "Manrope",
        sans-serif !important;

    font-size:
        clamp(
            1.35rem,
            1.7vw,
            2rem
        ) !important;

    font-weight: 600 !important;

    letter-spacing: -0.04em;
    line-height: 1.08;
}


.conv-portfolio-archive
.conv-portfolio-card__copy p {
    margin: 10px 0 0 !important;

    color:
        rgba(224, 221, 231, 0.64) !important;

    font-family:
        "Manrope",
        sans-serif;

    font-size: 0.8rem;
    line-height: 1.45;
}


.conv-portfolio-archive
.conv-portfolio-card__arrow {
    display: grid;
    place-items: center;

    width: 52px;
    height: 52px;

    flex: 0 0 52px;

    border-radius: 50%;

    background: #ffffff;
    color: #08080c;

    transition:
        transform 0.4s
        cubic-bezier(0.22, 1, 0.36, 1),
        background 0.35s ease,
        box-shadow 0.35s ease;
}


/* =========================================================
   HOVER
========================================================= */

.conv-portfolio-archive
.conv-portfolio-card:hover {
    border-color:
        rgba(101, 203, 208, 0.52);

    transform:
        translateY(-7px) !important;

    box-shadow:
        0 34px 85px
        rgba(0, 0, 0, 0.46),
        0 0 28px
        rgba(101, 203, 208, 0.07);
}


.conv-portfolio-archive
.conv-portfolio-card:hover
.conv-portfolio-card__image {
    transform: scale(1.07);

    filter:
        saturate(1.08)
        contrast(1.04);
}


.conv-portfolio-archive
.conv-portfolio-card:hover
.conv-portfolio-card__arrow {
    background: #65cbd0;

    transform:
        translate(3px, -3px);

    box-shadow:
        0 0 24px
        rgba(101, 203, 208, 0.32);
}


/* =========================================================
   PAGINATION
========================================================= */

.conv-portfolio-pagination {
    margin-top:
        clamp(55px, 6vw, 90px);
}


.conv-portfolio-pagination
.nav-links {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;

    gap: 10px;
}


.conv-portfolio-pagination a,
.conv-portfolio-pagination span {
    display: inline-flex;
    align-items: center;
    justify-content: center;

    min-width: 45px;
    min-height: 45px;
    padding: 10px 16px;

    border:
        1px solid
        rgba(255, 255, 255, 0.12);

    border-radius: 999px;

    background:
        rgba(255, 255, 255, 0.018);

    color:
        rgba(247, 247, 248, 0.75);

    text-decoration: none;
}


.conv-portfolio-pagination
.current {
    border-color:
        rgba(101, 203, 208, 0.62);

    background:
        rgba(101, 203, 208, 0.08);

    color: #65cbd0;
}


/* =========================================================
   TABLET — TWO PER ROW
========================================================= */

@media (max-width: 1050px) {

    .conv-portfolio-archive__container {
        width:
            calc(100% - 64px);
    }

    .conv-portfolio-archive
    .conv-portfolio-grid {
        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    .conv-portfolio-archive
    .conv-portfolio-card,
    .conv-portfolio-archive
    .conv-portfolio-card--1,
    .conv-portfolio-archive
    .conv-portfolio-card--2,
    .conv-portfolio-archive
    .conv-portfolio-card--3,
    .conv-portfolio-archive
    .conv-portfolio-card--4 {
        height: 520px;
    }

}


/* =========================================================
   MOBILE — ONE PER ROW
========================================================= */

@media (max-width: 767px) {

    .conv-portfolio-archive {
        padding-bottom: 90px;
    }

    .conv-portfolio-archive__container {
        width:
            calc(100% - 40px);
    }

    .conv-portfolio-archive__hero {
        padding:
            65px
            0
            50px;
    }

    .conv-portfolio-archive__hero h1 {
        font-size:
            clamp(
                3rem,
                14vw,
                4.8rem
            ) !important;
    }

    .conv-portfolio-archive
    .conv-portfolio-grid {
        grid-template-columns:
            1fr !important;

        gap: 24px;
    }

    .conv-portfolio-archive
    .conv-portfolio-card,
    .conv-portfolio-archive
    .conv-portfolio-card--1,
    .conv-portfolio-archive
    .conv-portfolio-card--2,
    .conv-portfolio-archive
    .conv-portfolio-card--3,
    .conv-portfolio-archive
    .conv-portfolio-card--4 {
        height:
            clamp(
                440px,
                125vw,
                570px
            );
    }

}