.text-panel {
    background: var(--bgColor);
}

.colophon {
    background-color: #FFFFF2;
    transform: rotate(-0.8deg);
}

h2 {
    font-weight: 400;
    font-style: italic;
    font-size: 2.2rem;
    line-height: 2.4rem;
}

h3 {
    font-weight: 400;
    font-size: 1.3rem;
}

.header-image, .inline-insert {
    margin-top: 40px;
    margin-bottom: 40px;
    position: relative;
}

.header-image.landscape, .inline-insert.landscape {
    width: 100%;
}

.header-image.portrait, .inline-insert.portrait {
    width: 480px;
    max-width: 50%;
}

.header-image::after, .inline-insert::after {
    content: "";
    position: absolute;
    inset: 0;
    background: var(--bgColor);
    mix-blend-mode: multiply;
}

.header-image img, .inline-insert img {
    display: block;
    height: auto;
    filter: grayscale(1) contrast(1.5);
}

.header-image.landscape img, .inline-insert.landscape img {
    width: 100%;
}

.header-image.portrait img, .inline-insert.portrait img{
    width: 100%;
}

.caption {
    margin-top: -20px;
    font-style: italic;
    font-size: .8em;
    margin-bottom: 40px;
}

.text-body {
    font-size: 1.3rem;
    line-height: 1.7rem;
}

.text-body a, .text-body a:visited{
    color: #48403D;
    text-decoration: none;
    border-bottom: 1px dashed #48403d;
}

.text-body a:hover, .text-body a:active {
    opacity: .7;
    text-decoration: none;
    border-bottom: 0px;
}

.indent {
    display: block;
    padding-left: 2em;
}

.section-divider {
    text-align: center;
    font-style: italic;
    padding-top: 40px;
    padding-bottom: 20px
}

.extra-spacing {
    padding-top: 20px;
}

sup {
    font-size: 0.75em;
    line-height: 0;
    vertical-align: 0.5em;
}

.bio {
    font-size: 1.1rem;
    line-height: 1.4rem;
    font-style: normal;
    padding-top: 3rem;
}

.bio em {
    font-style: italic;
}

/*jianna + amy use*/

.centered {
    text-align: center;
}

/* jianna */

.diamond {
    padding-top: 80px;
}

/* amy - smaller font size */
#amy {
    font-size: 1.1rem;
}

/* april */
#chat {
    display: flex;
    flex-direction: column;
    gap: 30px;
    margin: 24px 0;
}

#chat p {
    margin: 0;
}

#chat p.extra-spacing {
    margin-top: 20px;
}

.bubble {
    max-width: 60%;
    width: fit-content;
    margin: 0;
    padding: 10px 16px;
    border: 1.5px solid #48403D;
    border-radius: 16px;
    position: relative;
}

.bubble.sent {
    align-self: flex-end;
}

.bubble.received {
    align-self: flex-start;
}

.bubble.sent::after {
    content: ">";
    position: absolute;
    right: -14px;
    top: 50%;
    transform: translateY(-50%);
}

.bubble.received::before {
    content: "<";
    position: absolute;
    left: -14px;
    top: 50%;
    transform: translateY(-50%);
}


@media all and (max-width: 768px) {

    .header-image.portrait, .inline-insert.portrait {
        width: 100%;
        max-width: 100%;
    }

    .text-body {
        line-height: 2rem;
    }

    .bio {
        line-height: 1.6rem;
    }

    .colophon {
        transform: none;
        overflow-x: hidden;
        overflow-y: auto;
    }

    .bubble {
        max-width: 88%;
    }

}