/* About page specific styles */

.about-photo {
    float: right;
    margin: 0 0 1rem 1rem;
    width: min(45%, 250px); /* slightly larger on desktop */
    border-radius: 1rem;
    border: 12px solid var(--color-accent);
}

.about-intro::after {
    content: "";
    display: table;
    clear: both;
}

@media (max-width: 767px) {
    .about-photo {
        float: none;
        display: block;
        margin: 0 auto 1rem;
        width: 80%;
    }
}

/* styles reused from the home page video section */
.home-section {
    text-align: center;
    margin: 3rem auto;
    padding: 0 1rem;
}

.home-section h2 {
    margin-bottom: 1rem;
    color: var(--color-accent);
}

.home-section p {
    text-align: left;
    max-width: 700px;
    margin-left: auto;
    margin-right: auto;
}

.it-guy-section {
    background: var(--color-highlight);
    padding: 2rem 1rem;
    border-radius: 0.5rem;
    position: relative;
    overflow: hidden;
}

.it-guy-section h2 {
    color: var(--color-dark-text);
}

.it-guy-section > * {
    position: relative;
    z-index: 1;
}

.circle-bg {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 180px;
    height: 180px;
    opacity: 0;
    pointer-events: none;
    z-index: 0;
}

.video-wrapper {
    position: relative;
    width: 60%;
    margin: 1.5rem auto;
    max-width: 100%;
    min-height: 20vh;
    aspect-ratio: 16 / 9;
}

.video-wrapper iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

@media (max-width: 767px) {
    .video-wrapper {
        width: 100%;
    }
}
