html {
    overflow: unset;
}

section.intro {
    height: fit-content;
    min-height: 90vh;
    max-height: 50rem;
    display: flex;
    align-items: center;
}
.video iframe {
    width: 100%;
    height: 34rem;
}

section.quote {
    margin: 0;
}

section.speaking-main {
    position: relative;
    padding-top: 8rem;
    height: 200vh;
    width: 100vw;
}
.speaking-main.full {
    overflow-x: hidden;
}
section.speaking-main svg {
    position: absolute;
    top: 30%;
    left: 0;
    height: 50vw;
    width: 50vw;
    transform: translateX(-20%);
    opacity: .15;
}
section.speaking-main svg path {
    fill: var(--colorGrey);
}

section.speaking-main .line-2 {
    display: none;
}

#speakingBubble::after {
    content: "From small team huddles...";
    display: block;
    position: absolute;
    bottom: 0;
    left: 100%;
    transform: translateX(0);
    font-family: var(--title-font);
    font-weight: 200;
    font-size: 16pt;
    width: fit-content;
    white-space: nowrap;
    transition: 1s;
}
#speakingBubble img {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    border-radius: 50%;
    max-height: 680px;
    max-width: 680px;
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
    transition: 1s;
}
#speakingBubble img:nth-child(3) {
    max-width: unset;
    max-height: unset;
}
/* .half-set #speakingBubble img:nth-child(2) {
    transition: 0s;
} */
#speakingBubble img:nth-child(2), #speakingBubble img:nth-child(3) {
    height: 0;
    width: 0;
}

.half #speakingBubble::after {
    content: "To medium sized events...";
    left: 0;
    bottom: 20%;
    transform: translateX(-100%);
    font-size: 28pt;
}
.half #speakingBubble img:nth-child(2) {
    height: 100%;
    width: 100%;
}
.half #speakingBubble img:nth-child(1) {
    height: 0;
    width: 0;
}
.full #speakingBubble {
    transition: .5s;
    opacity: 0;
}
/* 
.full #speakingBubble::after {
    content: "";
    opacity: 0;
} */
/* .full #speakingBubble img:nth-child(3) {
    border-radius: 0;
    height: 100%;
    width: 100%;
    filter: grayscale(100%) sepia(100%) hue-rotate(190deg) saturate(200%);
} */
@media (max-width: 991px) {
    section.speaking-main {
        height: 200vh;
    }
    #speakingBubble {
        position: sticky;
        top: 8rem;
        left: 20%;
        height: 30vw;
        width: 30vw;
        transform: translate(-50%, -50%);
        transition: .5s;
    }
    #speakingBubble::after {
        bottom: 0;
        left: 0;
        transform: translateY(100%);
    }
    .half #speakingBubble {
        position: sticky;

        left: 100%;
        height: 60vw;
        width: 60vw;
        transform: translateX(10%);
    }
    .full #speakingBubble {
        top: 120vw;
    }
    .half #speakingBubble::after {
        text-align: end;
        left: 100%;
        bottom: 0;
        font-size: 18pt;
        width: 90vw;
        white-space: wrap;
        transform: translate(-115%, 100%);
    }
}
@media (min-width: 992px) {
    section.speaking-main {
        height: 300vh;
        padding-top: 8rem;
    }
    #speakingBubble {
        --p1: clamp(0, var(--offset) / 50, 1);             /* Stage 1 → 2 */
        --p2: clamp(0, (var(--offset) - 60) / 10, 1);
      
        position: sticky;
        top: 8rem;
        left: 0;
      
        transform: translate(
            calc(
            (1 - var(--p1)) * 25vw +
            var(--p1) * 60vw
            )
        );
        
        width: calc(
            (1 - var(--p1)) * 340px +
            var(--p1) * 680px
        );
    
        height: calc(
            (1 - var(--p1)) * 340px +
            var(--p1) * 680px
        );
    
        opacity: calc(1 - var(--p2));
      
        border-radius: 50%;
        /* background: var(--colorMain); */
        will-change: transform, width, height, opacity;
        z-index: -1;
    }
}

/* .full #speakingBubble img:nth-child(1), .full #speakingBubble img:nth-child(2) {
    opacity: 0;
}
    */
.full #speakingBubble {
    transform: translate(180%, 150%);
    opacity: 1
}
.full-screen-copy {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 100vh;
    width: 100vw;

    display: flex;
    align-items: center;
    justify-content: center;

    
    
    color: var(--background);

    --clip-p: clamp(0, (var(--offset) - 50) / 40, 1);
    clip-path: polygon(
        calc(50% + var(--clip-p) * (0%   - 50%)) calc(50% + var(--clip-p) * (0%   - 50%)),
        calc(50% + var(--clip-p) * (100% - 50%)) calc(50% + var(--clip-p) * (0%   - 50%)),
        calc(50% + var(--clip-p) * (100% - 50%)) calc(50% + var(--clip-p) * (100% - 50%)),
        calc(50% + var(--clip-p) * (0%   - 50%)) calc(50% + var(--clip-p) * (100% - 50%))
    );
}
.full-screen-copy .background {
    position: absolute;
    height: 100%;
    width: 100%;
    filter: grayscale(100%) sepia(100%) hue-rotate(190deg) saturate(200%);
    z-index: -1;
}
.full-screen-copy .background img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}


.full-screen-copy h3 {
    font-size: var(--title-lg);
}
.full-screen-copy p {
    line-height: 1.4;
}
@media (max-width: 992px) {
    .full-screen-copy h3 {
        font-size: var(--title-reg);
        text-align: center;
        text-shadow: 0 0 4px black;
    }
    .full-screen-copy p {
        text-shadow: 0 0 4px black;
    }
}

@keyframes float {
    0% {
        transform: translate(0px, 0px) rotate(0deg);
      }
      20% {
        transform: translate(4px, -10px) rotate(0.6deg);
      }
      50% {
        transform: translate(0px, -18px) rotate(0deg);
      }
      80% {
        transform: translate(-4px, -10px) rotate(-0.6deg);
      }
      100% {
        transform: translate(0px, 0px) rotate(0deg);
      }
}

@media (min-width: 992px) {
    section.who-she-is {
        height: 75vh;
        margin: 10vh;
    }
}
section.who-she-is figure {
    position: relative;
    height: 100%;
    width: 100%;
}
section.who-she-is figure img {
    height: 100%;
    width: 100%;
    object-fit: cover;
    object-position: center;
}

#requestForm {
    width: 45rem;
    max-width: 100vw;
}