/*==================================================
CONNECTION QUEST
Jessica Feldman
==================================================*/


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

.quest-hero{

    padding:70px 0;

}

.quest-hero-image{

    position:relative;

    width:min(1100px,92%);

    height:560px;

    margin:auto;

    overflow:hidden;

    border-radius:28px;

    box-shadow:var(--shadow);

}

.quest-hero-image img{

    width:100%;

    height:100%;

    object-fit:cover;

}

.quest-hero-panel{

    position:absolute;

    left:55px;

    bottom:48px;

    width:min(470px,85%);

    padding:30px 34px;

    border-radius:22px;

    background:rgba(248,248,238,.92);

    backdrop-filter:blur(10px);

    -webkit-backdrop-filter:blur(10px);

    box-shadow:0 12px 35px rgba(0,0,0,.12);

}

.quest-eyebrow{

    margin:0 0 10px;

    color:var(--magenta);

    font-size:.82rem;

    font-weight:600;

    letter-spacing:.12em;

    text-transform:uppercase;

}

.quest-hero-panel h1{

    margin:0 0 18px;

    color:var(--deep-teal);

    font-size:clamp(2.2rem,4vw,3.4rem);

    line-height:1.12;

}

.quest-hero-panel p:last-child{

    margin:0;

    color:var(--brown);

    line-height:1.8;

}


/*==================================================
INTRO
==================================================*/

.quest-intro{

    padding:100px 0;

    text-align:center;

}

.quest-intro p{

    max-width:720px;

    margin:0 auto 22px;

    color:var(--brown);

    font-size:1.12rem;

    line-height:1.9;

}

.intro-emphasis{

    margin-top:40px !important;

    color:var(--deep-teal) !important;

    font-family:var(--heading-font);

    font-size:1.5rem !important;

}


/*==================================================
WHAT IS THE QUEST
==================================================*/

.what-is-quest{

    padding:100px 0;

    background:
        linear-gradient(
            135deg,
            rgba(22,207,191,.10),
            rgba(162,34,130,.06)
        ),
        var(--cream);

}

.quest-description-grid{

    display:grid;

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

    gap:28px;

    margin-top:60px;

}

.quest-description-card{

    position:relative;

    min-height:270px;

    padding:36px 30px;

    border-radius:24px;

    background:var(--cream);

    box-shadow:var(--shadow);

}

.quest-number{

    display:block;

    margin-bottom:32px;

    font-family:var(--heading-font);

    font-size:2.4rem;

    opacity:.35;

}

.quest-description-card h3{

    margin-bottom:14px;

    color:var(--deep-teal);

}

.quest-description-card p{

    margin:0;

    color:var(--brown);

    line-height:1.8;

}

.teal-card{

    border-top:7px solid var(--teal);

}

.magenta-card{

    border-top:7px solid var(--magenta);

}

.deep-card{

    border-top:7px solid var(--deep-teal);

}


/*==================================================
QUEST BOARD
==================================================*/

.quest-board-section{

    padding:110px 0;

    background:var(--deep-teal);

}

.quest-board-section .section-heading h2,
.quest-board-section .section-heading p{

    color:var(--cream);

}

.quest-board{

    width:min(1050px,94%);

    margin:65px auto 0;

    padding:55px;

    display:grid;

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

    gap:30px;

    border-radius:28px;

    background:#f0eadf;

    box-shadow:
        0 25px 55px rgba(0,0,0,.25),
        inset 0 8px 20px rgba(0,0,0,.06);

}

.mission-card{

    min-height:190px;

    padding:28px;

    display:flex;

    flex-direction:column;

    justify-content:center;

    border-radius:12px;

    background:var(--cream);

    box-shadow:0 10px 24px rgba(0,0,0,.10);

}

.mission-card span{

    margin-bottom:14px;

    color:var(--magenta);

    font-size:.76rem;

    font-weight:700;

    letter-spacing:.08em;

    text-transform:uppercase;

}

.mission-card p{

    margin:0;

    color:var(--deep-teal);

    font-family:var(--heading-font);

    font-size:1.15rem;

    line-height:1.5;

}

.mission-one{

    transform:rotate(-2deg);

    border-top:5px solid var(--teal);

}

.mission-two{

    transform:rotate(2deg);

    border-top:5px solid var(--magenta);

}

.mission-three{

    transform:rotate(-1deg);

    border-top:5px solid var(--deep-teal);

}

.mission-four{

    transform:rotate(2deg);

    border-top:5px solid var(--magenta);

}

.mission-five{

    transform:rotate(-2deg);

    border-top:5px solid var(--teal);

}

.mission-six{

    transform:rotate(1deg);

    border-top:5px solid var(--deep-teal);

}


/*==================================================
WHO IT'S FOR
==================================================*/

.quest-for{

    padding:110px 0;

}

.quest-for-grid{

    display:grid;

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

    gap:30px;

    margin-top:60px;

}

.audience-card{

    position:relative;

    padding:38px;

    border-radius:24px;

    background:var(--cream);

    box-shadow:var(--shadow);

    border:1px solid rgba(19,96,94,.08);

}

.audience-icon{

    width:50px;

    height:50px;

    margin-bottom:20px;

    display:flex;

    align-items:center;

    justify-content:center;

    border-radius:50%;

    background:var(--teal);

    color:var(--deep-teal);

    font-family:var(--heading-font);

    font-size:1.5rem;

}

.audience-card:nth-child(2) .audience-icon{

    background:var(--magenta);

    color:var(--cream);

}

.audience-card:nth-child(3) .audience-icon{

    background:var(--deep-teal);

    color:var(--cream);

}

.audience-card:nth-child(4) .audience-icon{

    background:var(--teal);

}

.audience-card h3{

    margin-bottom:14px;

    color:var(--deep-teal);

}

.audience-card p{

    margin:0;

    color:var(--brown);

    line-height:1.8;

}


/*==================================================
WHY IT WORKS
==================================================*/

.why-quest{

    padding:100px 0;

    background:rgba(22,207,191,.08);

}

.why-quest-list{

    margin-top:55px;

}

.why-row{

    display:grid;

    grid-template-columns:75px 1fr;

    gap:25px;

    padding:30px 0;

    border-bottom:1px solid rgba(19,96,94,.12);

}

.why-row > span{

    color:var(--magenta);

    font-family:var(--heading-font);

    font-size:1.6rem;

}

.why-row h3{

    margin-bottom:8px;

    color:var(--deep-teal);

}

.why-row p{

    margin:0;

    color:var(--brown);

    line-height:1.8;

}


/*==================================================
CUSTOM EXPERIENCE
==================================================*/

.custom-quest{

    padding:110px 0;

}

.custom-grid{

    display:grid;

    grid-template-columns:1fr 1fr;

    gap:80px;

    align-items:center;

}

.custom-content h2{

    margin-bottom:25px;

    color:var(--deep-teal);

    text-align:left;

}

.custom-content p{

    color:var(--brown);

    line-height:1.85;

}

.custom-visual{

    position:relative;

    min-height:430px;

}

.custom-note{

    position:absolute;

    padding:18px 24px;

    border-radius:14px;

    font-family:var(--heading-font);

    font-size:1.15rem;

    box-shadow:var(--shadow);

}

.note-one{

    top:20px;

    left:25px;

    background:var(--teal);

    color:var(--deep-teal);

    transform:rotate(-5deg);

}

.note-two{

    top:55px;

    right:25px;

    background:var(--magenta);

    color:var(--cream);

    transform:rotate(4deg);

}

.note-three{

    top:160px;

    left:90px;

    background:var(--cream);

    color:var(--deep-teal);

    border:3px solid var(--deep-teal);

    transform:rotate(2deg);

}

.note-four{

    top:220px;

    right:30px;

    background:var(--deep-teal);

    color:var(--cream);

    transform:rotate(-4deg);

}

.note-five{

    bottom:55px;

    left:30px;

    background:var(--magenta);

    color:var(--cream);

    transform:rotate(5deg);

}

.note-six{

    bottom:15px;

    right:90px;

    background:var(--teal);

    color:var(--deep-teal);

    transform:rotate(-3deg);

}


/*==================================================
FORMATS
==================================================*/

.quest-formats{

    padding:100px 0;

    background:var(--magenta);

}

.quest-formats .section-heading h2,
.quest-formats .section-heading p{

    color:var(--cream);

}

.format-grid{

    display:grid;

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

    gap:28px;

    margin-top:55px;

}

.format-card{

    padding:34px;

    border-radius:22px;

    background:var(--cream);

    box-shadow:0 15px 35px rgba(0,0,0,.12);

}

.format-card h3{

    margin-bottom:14px;

    color:var(--deep-teal);

}

.format-card p{

    margin:0;

    color:var(--brown);

    line-height:1.75;

}


/*==================================================
ENDING
==================================================*/

.quest-ending{

    padding:110px 0;

    text-align:center;

    background:
        linear-gradient(
            135deg,
            rgba(22,207,191,.10),
            rgba(162,34,130,.07)
        ),
        var(--cream);

}

.quest-ending h2{

    margin-bottom:20px;

    color:var(--deep-teal);

}

.quest-ending p{

    max-width:680px;

    margin:0 auto 30px;

    color:var(--brown);

    font-size:1.1rem;

    line-height:1.8;

}


/*==================================================
CONTINUE
==================================================*/

.continue-section{

    padding:90px 0;

    background:var(--cream);

}

.continue-section .section-title h2{

    margin-bottom:50px;

    color:var(--deep-teal);

    text-align:center;

}


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

@media(max-width:900px){

    .quest-description-grid,
    .format-grid{

        grid-template-columns:1fr;

    }

    .quest-board{

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

    }

    .custom-grid{

        grid-template-columns:1fr;

        gap:45px;

    }

}


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

@media(max-width:700px){

    .quest-hero{

        padding:0;

    }

    .quest-hero-image{

        width:100%;

        height:auto;

        border-radius:0;

    }

    .quest-hero-image img{

        height:420px;

    }

    .quest-hero-panel{

        position:relative;

        left:auto;

        bottom:auto;

        width:auto;

        padding:28px 22px;

        border-radius:0;

        background:var(--cream);

        backdrop-filter:none;

        -webkit-backdrop-filter:none;

        box-shadow:none;

    }

    .quest-intro,
    .what-is-quest,
    .quest-board-section,
    .quest-for,
    .why-quest,
    .custom-quest,
    .quest-formats,
    .quest-ending,
    .continue-section{

        padding:70px 0;

    }

    .quest-description-grid,
    .quest-for-grid,
    .quest-board,
    .format-grid{

        grid-template-columns:1fr;

    }

    .quest-board{

        width:94%;

        padding:28px 20px;

    }

    .mission-card{

        min-height:150px;

        transform:none;

    }

    .quest-for-grid{

        gap:22px;

    }

    .why-row{

        grid-template-columns:48px 1fr;

        gap:16px;

    }

    .custom-visual{

        min-height:360px;

    }

}


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

@media(max-width:450px){

    .quest-hero-image img{

        height:350px;

    }

    .audience-card,
    .quest-description-card,
    .format-card{

        padding:28px 24px;

    }

    .custom-note{

        padding:14px 18px;

        font-size:1rem;

    }

}