/* Full-width inner-page banners with extra contrast behind the text. */
.page-hero {
    position: relative;
    isolation: isolate;
    display: grid;
    align-items: center;
    min-height: clamp(24rem, 36vw, 33rem);
    padding-block: clamp(2rem, 5vw, 4rem);
    background: #082B48;
    color: #fff;
}
.page-hero-image, .page-hero::before {
    position: absolute;
    inset: 0;
}
.page-hero-image {
    z-index: -2;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}
.page-hero::before {
    content: "";
    z-index: -1;
    background: linear-gradient(90deg, #082b48ed, #082b48b8 44%, #082b481a 85%);
}

.page-hero-copy { max-width: 42rem; }
.page-hero-trail {
    display: flex;
    align-items: baseline;
    flex-wrap: wrap;
    gap: .35rem .65rem;
    margin-bottom: clamp(1rem, 2.2vw, 1.8rem);
    color: #d6e3f0;
    font-size: .875rem;
}
.page-hero-trail a { color: #ffdc92; text-underline-offset: .2em; }
.page-hero h1 {
    margin: 0;
    color: #fff;
    font-size: clamp(2.15rem, 4.2vw, 4.5rem);
    line-height: 1.07;
    letter-spacing: -.035em;
    overflow-wrap: break-word;
}
.page-hero h1::after {
    content: "";
    display: block;
    width: 3.25rem;
    height: 3px;
    margin-top: clamp(.8rem, 1.8vw, 1.35rem);
    background: #C69A3A;
}
.page-hero p {
    max-width: 42ch;
    margin: 1rem 0 0;
    color: #e5edf6;
    font-size: clamp(1rem, 1.45vw, 1.18rem);
}
.page-hero .btn { margin-top: 1.25rem; }
@media (max-width: 767px) {
    .page-hero { min-height: 21rem; align-items: end; }
    .page-hero::before {
        background: linear-gradient(0deg, #082b48f2, #082b48b8 49%, #082b481a 92%);
    }
}

/* Inner pages share the conference palette and a consistent card treatment. */
.inner-page .page-hero {
    border-bottom: 3px solid var(--gold);
}
.inner-page .page-hero h1 {
    font-size: clamp(2rem, 4vw, 3.8rem);
}
.inner-page .sec {
    padding-block: clamp(2rem, 5vw, 4rem);
}
.inner-page .info-card {
    border: 1px solid #e5d8bf;
    border-radius: .9rem;
    box-shadow: 0 8px 24px #082b480a;
}
.inner-page .photo { display: block; height: auto; }
.inner-workshops .card-img {
    height: auto;
    aspect-ratio: 4 / 3;
    object-fit: contain;
    background: #f4f1eb;
}
.inner-committee .pcard .avatar {
    width: min(100%, 8.75rem);
    height: auto;
    aspect-ratio: 1;
}
.inner-committee .pcard img { object-position: center 32%; }

/* Committee cards follow the poster order at every screen width. */
.committee-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
    gap: 1rem;
}
.committee-group {
    padding: 1.2rem;
    border: 1px solid #e5d8bf;
    border-top: 3px solid var(--gold);
    border-radius: .75rem;
    background: #fff;
}
.committee-group h3 { font-size: 1.15rem; margin: 0 0 .75rem; }
.committee-group ul { list-style: none; padding: 0; margin: 0; }
.committee-group li { display: flex; align-items: center; gap: .8rem; padding: .55rem 0; }
.committee-group li + li { border-top: 1px solid #e9e4dc; }
.committee-group img { flex: none; object-fit: cover; object-position: center 30%; border-radius: .55rem; }
.committee-group small { display: block; color: #4b6079; }
