/* Final public photographer integration overrides.
   Scoped to plugin-owned public photographer routes only. */

html body.photo-award-public-photographer-profile-page,
html body.photo-award-public-photographers-directory-page {
    background: var(--pa-theme-page-bg, #050505) !important;
}

html body.photo-award-public-standalone {
    margin: 0 !important;
    background: var(--pa-theme-page-bg, #050505) !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar {
    position: relative !important;
    z-index: 100 !important;
    display: block !important;
    width: 100% !important;
    min-height: 128px !important;
    padding: 26px 0 24px !important;
    background: #050506 !important;
    border: 0 !important;
    box-shadow: none !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__inner {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 42px !important;
    width: min(1200px, calc(100% - 48px)) !important;
    margin: 0 auto !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__brand {
    display: inline-flex !important;
    align-items: center !important;
    gap: 14px !important;
    min-width: 260px !important;
    color: #ff3045 !important;
    text-decoration: none !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__brand .custom-logo-link,
html body.photo-award-public-standalone .photo-award-public-site-topbar__brand .custom-logo {
    display: block !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__brand img,
html body.photo-award-public-standalone .photo-award-public-site-topbar__brand .custom-logo {
    width: auto !important;
    max-width: 310px !important;
    max-height: 94px !important;
    object-fit: contain !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__mark {
    display: inline-grid !important;
    place-items: center !important;
    width: 72px !important;
    height: 72px !important;
    border: 5px solid #ff1024 !important;
    color: #ff1024 !important;
    font-size: 48px !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    transform: rotate(-3deg) !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__name {
    max-width: 220px !important;
    color: #ff3045 !important;
    font-size: 13px !important;
    font-weight: 800 !important;
    line-height: 1.2 !important;
    letter-spacing: .16em !important;
    text-transform: uppercase !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__nav {
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    flex-wrap: wrap !important;
    gap: 24px !important;
    margin-left: auto !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__nav a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 36px !important;
    color: rgba(255, 255, 255, 0.88) !important;
    background: transparent !important;
    border: 0 !important;
    padding: 0 !important;
    text-decoration: none !important;
    font-size: 15px !important;
    font-weight: 500 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: uppercase !important;
}

html body.photo-award-public-standalone .photo-award-public-site-topbar__nav a:hover,
html body.photo-award-public-standalone .photo-award-public-site-topbar__nav a:focus {
    color: #ffffff !important;
}

html body.photo-award-public-photographer-profile-page :is(#page, .site, .site-content, .site-main, .content-area, .entry-content, .wp-site-blocks),
html body.photo-award-public-photographers-directory-page :is(#page, .site, .site-content, .site-main, .content-area, .entry-content, .wp-site-blocks) {
    overflow: visible !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-public-page-content,
html body.photo-award-public-photographers-directory-page .photo-award-public-page-content {
    display: block !important;
    clear: both !important;
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    min-height: 100vh !important;
    margin: 0 !important;
    padding: clamp(0px, 3vw, 28px) 0 72px !important;
    background: var(--pa-theme-page-bg, #050505) !important;
}

html body.photo-award-public-standalone .photo-award-public-page-content {
    padding-top: 2px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-public-page-container,
html body.photo-award-public-photographers-directory-page .photo-award-public-page-container,
html body.photo-award-public-photographer-profile-page .photo-award-public-content-area,
html body.photo-award-public-photographers-directory-page .photo-award-public-content-area,
html html body.photo-award-public-photographer-profile-page main.site-main.photo-award-public-site-main,
html body.photo-award-public-photographers-directory-page .photo-award-public-site-main,
html body.photo-award-public-photographer-profile-page .photo-award-public-page-article,
html body.photo-award-public-photographers-directory-page .photo-award-public-page-article,
html body.photo-award-public-photographer-profile-page .photo-award-public-entry-content,
html body.photo-award-public-photographers-directory-page .photo-award-public-entry-content {
    display: block !important;
    float: none !important;
    clear: both !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    background: transparent !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-public-profile-root,
html body.photo-award-public-photographers-directory-page .photo-award-public-profile-root {
    display: block !important;
    clear: both !important;
    position: relative !important;
    z-index: 1 !important;
    width: 100% !important;
    padding-top: 0 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-public-after-site-header,
html body.photo-award-public-photographers-directory-page .photo-award-public-after-site-header {
    display: none !important;
    height: 0 !important;
    min-height: 0 !important;
}

html body.admin-bar.photo-award-public-photographer-profile-page .photo-award-public-after-site-header,
html body.admin-bar.photo-award-public-photographers-directory-page .photo-award-public-after-site-header {
    height: 0 !important;
    min-height: 0 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile,
html body.photo-award-public-photographers-directory-page .photo-award-photographers-directory {
    clear: both !important;
    position: relative !important;
    z-index: 1 !important;
    width: min(1180px, calc(100% - 48px)) !important;
    margin-top: 0 !important;
    margin-bottom: 72px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-section,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card,
html body.photo-award-public-photographers-directory-page .photo-award-photographers-directory__hero,
html body.photo-award-public-photographers-directory-page .photo-award-photographer-card {
    color: var(--pa-theme-ink, #ffffff) !important;
    background: var(--pa-theme-surface, #0b0d11) !important;
    border-color: var(--pa-theme-line, rgba(255, 255, 255, 0.16)) !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero h1,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-section-heading h2,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card h4,
html body.photo-award-public-photographers-directory-page .photo-award-photographers-directory__hero h1,
html body.photo-award-public-photographers-directory-page .photo-award-photographer-card h2 {
    color: var(--pa-theme-ink, #ffffff) !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__bio,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__bio p {
    max-width: 760px !important;
    color: var(--pa-theme-muted, rgba(255, 255, 255, 0.74)) !important;
    font-size: 1.03rem !important;
    line-height: 1.75 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__bio {
    margin-top: 18px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__bio p {
    margin: 0 0 10px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__bio p:last-child {
    margin-bottom: 0 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-detail--bio {
    align-items: flex-start !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 8px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-detail--with-bio {
    align-items: flex-start !important;
    flex-direction: column !important;
    width: 100% !important;
    max-width: 100% !important;
    gap: 12px !important;
    padding: 14px 16px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-country-row {
    display: inline-flex !important;
    align-items: center !important;
    gap: 10px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-bio-block {
    display: grid !important;
    gap: 7px !important;
    width: 100% !important;
    padding-top: 12px !important;
    border-top: 1px solid var(--pa-theme-line, rgba(255, 255, 255, 0.16)) !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-bio,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-bio p {
    color: var(--pa-theme-muted, rgba(255, 255, 255, 0.78)) !important;
    font-size: 1rem !important;
    line-height: 1.75 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-bio p {
    margin: 0 0 10px !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-bio p:last-child {
    margin-bottom: 0 !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__meta span,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__actions a,
html body.photo-award-public-photographers-directory-page .photo-award-photographer-card__link {
    color: #000000 !important;
    background: #ffffff !important;
    border-color: #ffffff !important;
    text-shadow: none !important;
}

html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header strong {
    color: #000000 !important;
    background: var(--pa-theme-accent-3, #e7c970) !important;
}

@media (max-width: 782px) {
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-detail--with-bio,
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-detail--bio {
        width: 100% !important;
        max-width: 100% !important;
    }

    html body.photo-award-public-standalone .photo-award-public-site-topbar {
        min-height: 0 !important;
        padding: 18px 0 20px !important;
    }

    html body.photo-award-public-standalone .photo-award-public-site-topbar__inner {
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: 18px !important;
        width: min(100% - 28px, 760px) !important;
    }

    html body.photo-award-public-standalone .photo-award-public-site-topbar__brand img,
    html body.photo-award-public-standalone .photo-award-public-site-topbar__brand .custom-logo {
        max-width: 240px !important;
        max-height: 76px !important;
    }

    html body.photo-award-public-standalone .photo-award-public-site-topbar__nav {
        justify-content: flex-start !important;
        gap: 12px 18px !important;
    }

    html body.photo-award-public-standalone .photo-award-public-site-topbar__nav a {
        font-size: 13px !important;
    }

    html body.photo-award-public-photographer-profile-page .photo-award-public-page-content,
    html body.photo-award-public-photographers-directory-page .photo-award-public-page-content {
        padding-top: clamp(0px, 4vw, 8px) !important;
    }

    html body.photo-award-public-standalone .photo-award-public-page-content {
        padding-top: 0 !important;
    }

    html body.photo-award-public-photographer-profile-page .photo-award-public-after-site-header,
    html body.photo-award-public-photographers-directory-page .photo-award-public-after-site-header {
        display: none !important;
        height: 0 !important;
        min-height: 0 !important;
    }

    html body.admin-bar.photo-award-public-photographer-profile-page .photo-award-public-after-site-header,
    html body.admin-bar.photo-award-public-photographers-directory-page .photo-award-public-after-site-header {
        height: 0 !important;
        min-height: 0 !important;
    }

    html body.photo-award-public-photographer-profile-page .photo-award-public-profile-root,
    html body.photo-award-public-photographers-directory-page .photo-award-public-profile-root {
        padding-top: 0 !important;
    }

    html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile,
    html body.photo-award-public-photographers-directory-page .photo-award-photographers-directory {
        width: min(100% - 28px, 760px) !important;
    }
}


/* Public profile polish, limited to individual photographer pages. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile {
    max-width: 1180px !important;
    color: #f5f5f6;
    letter-spacing: 0;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 18px 40px;
    padding: 28px 0 32px !important;
    margin-bottom: 40px;
    background: transparent !important;
    border: 0 !important;
    border-bottom: 1px solid #303239 !important;
    border-radius: 0;
    box-shadow: none;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__identity {
    display: flex;
    align-items: center;
    gap: 24px;
    min-width: 0;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__identity > div { min-width: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__avatar {
    width: 104px;
    height: 104px;
    flex: 0 0 104px;
    border: 2px solid #40434b;
    box-shadow: none;
    object-fit: cover;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero h1 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 700;
    letter-spacing: 0;
    overflow-wrap: anywhere;
    margin: 8px 0 10px;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__eyebrow,
html body.photo-award-public-photographer-profile-page .photo-award-photographer-section-heading > p {
    color: #ff4052;
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 0;
    margin: 0;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__location { color: #b8bac1; margin: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-details { margin: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-detail {
    padding: 0;
    background: transparent;
    border: 0;
    box-shadow: none;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile-country-row > span { color: #b8bac1; letter-spacing: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats {
    grid-column: 2;
    grid-row: 1 / 3;
    display: grid;
    grid-template-columns: repeat(3, minmax(86px, 1fr));
    gap: 0;
    margin: 0;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats > div {
    padding: 8px 20px;
    border: 0;
    border-left: 1px solid #303239;
    background: transparent;
    border-radius: 0;
    box-shadow: none;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats strong { color: #ffffff; font-size: 30px; line-height: 1.2; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats span { color: #b8bac1; font-size: 11px; letter-spacing: 0; white-space: normal; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-links { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 10px; margin: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-links a {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 40px;
    padding: 9px 18px;
    color: #ffffff !important;
    background: #171a20 !important;
    border: 1px solid #3b3e46 !important;
    border-radius: 4px;
    font-size: 14px;
    line-height: 1.4;
    text-decoration: none;
    box-shadow: none;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-links a:hover { background: #272b32 !important; border-color: #ff3045 !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-profile a:focus-visible { outline: 2px solid #ff4052; outline-offset: 4px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-section-heading { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; margin-bottom: 24px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-section-heading h2 { margin: 0; font-size: 30px; line-height: 1.2; letter-spacing: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-event { background: transparent; border: 0; box-shadow: none; border-radius: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header {
    padding: 18px 22px;
    background: #121419;
    border: 1px solid #303239;
    border-top: 3px solid #ed1028;
    border-radius: 4px;
    gap: 16px;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header span { color: #b8bac1; letter-spacing: 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header h3 { color: #fff; font-size: 23px; line-height: 1.3; letter-spacing: 0; margin: 4px 0 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header strong { color: #fff !important; background: #252830 !important; border: 1px solid #40434b; border-radius: 4px; min-width: 42px; height: 42px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 28px 24px; padding: 24px 0 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card { display: block !important; min-width: 0; background: transparent !important; border: 0 !important; border-radius: 0; box-shadow: none; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__media { width: 100% !important; height: auto !important; min-height: 0 !important; aspect-ratio: 4 / 3; background: #111216; border: 1px solid #303239; border-radius: 4px; overflow: hidden; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__image-link { display: block; width: 100%; height: 100%; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__media img { width: 100%; height: 100%; object-fit: contain; filter: none; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-award-badge { max-width: calc(100% - 24px); font-size: 11px; line-height: 1.4; padding: 6px 10px; letter-spacing: 0; white-space: normal; border-radius: 3px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__body { padding: 16px 0 0; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__meta { display: flex; flex-wrap: wrap; gap: 6px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__meta span { color: #c4c6ce !important; background: #1a1c22 !important; border: 1px solid #33363e !important; font-size: 11px; padding: 3px 7px; letter-spacing: 0; border-radius: 3px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card h4 { font-size: 20px; line-height: 1.35; letter-spacing: 0; margin: 12px 0 8px; overflow-wrap: anywhere; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__body > p { color: #b8bac1; font-size: 14px; line-height: 1.7; margin: 0; }
html body.photo-award-public-photographer-profile-page :is(.photo-award-photographer-hero, .photo-award-photographer-event, .photo-award-photographer-work-grid, .photo-award-photographer-stats > div, .photo-award-photographer-profile-detail) { background: transparent !important; box-shadow: none !important; border-radius: 0 !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats > div { border: 0 !important; border-left: 1px solid #303239 !important; }
@media (max-width: 1000px) {
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero { grid-template-columns: minmax(0, 1fr); gap: 20px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats { grid-column: 1; grid-row: auto; max-width: 440px; width: 100%; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats > div:first-child { border-left: 0; padding-left: 0; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero { padding-top: 20px !important; margin-bottom: 28px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__identity { gap: 16px; align-items: flex-start; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero__avatar { width: 72px; height: 72px; flex-basis: 72px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero h1 { font-size: 30px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats { grid-template-columns: repeat(3, minmax(0, 1fr)); }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-stats > div { padding: 6px 12px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-grid { grid-template-columns: minmax(0, 1fr); gap: 28px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header { padding: 16px; }
    html body.photo-award-public-photographer-profile-page .photo-award-photographer-event__header h3 { font-size: 20px; }
}

/* Framed winning-work cards and country markers beside photographer names. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card {
    display: flex !important;
    flex-direction: column;
    background: #121419 !important;
    border: 1px solid #30343d !important;
    border-radius: 6px !important;
    overflow: hidden;
    box-shadow: 0 4px 16px rgb(0 0 0 / 14%) !important;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card:hover { border-color: #636975 !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__media {
    flex: 0 0 auto;
    border: 0;
    border-bottom: 1px solid #30343d;
    border-radius: 0;
}
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-card__body { flex: 1; padding: 18px 20px 22px; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-work-grid { align-items: stretch; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-hero h1 .photo-award-country-flag,
html body.photo-award-public-photographers-directory-page .photo-award-photographer-card h2 .photo-award-country-flag {
    display: inline-block;
    width: 24px !important;
    height: 18px !important;
    max-width: none;
    margin: 0 0 0 10px;
    vertical-align: middle;
    object-fit: contain;
    border: 0;
    border-radius: 2px;
    box-shadow: 0 0 0 1px rgb(255 255 255 / 18%);
}

/* Breathing room between the public profile and site header. */
html body.photo-award-public-photographer-profile-page main.site-main.photo-award-public-site-main { padding-top: 40px !important; }
@media(max-width:767px) { html body.photo-award-public-photographer-profile-page main.site-main.photo-award-public-site-main { padding-top: 28px !important; } }

/* Profile photograph preview: bounded image and accessible close control. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox { z-index: 1000010 !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__dialog { position: relative !important; width: fit-content !important; max-width: calc(100vw - 32px) !important; margin: auto !important; padding: 52px 0 0 !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__image { display: block; width: auto !important; height: auto !important; max-width: min(700px, calc(100vw - 32px)) !important; max-height: min(700px, calc(100dvh - 150px)) !important; object-fit: contain !important; margin: 0 auto !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__close { position: absolute !important; top: 0 !important; right: 0 !important; left: auto !important; width: 40px !important; height: 40px !important; padding: 0 !important; display: grid !important; place-items: center; background: #ed1028 !important; color: #fff !important; border: 1px solid #ed1028; border-radius: 8px; font-size: 28px !important; line-height: 1 !important; z-index: 2; }

/* Keep profile previews below the real site header. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox { top: calc(var(--photo-award-public-header-height, 148px) + 32px) !important; bottom: 0 !important; height: auto !important; z-index: 9990 !important; padding: 16px !important; align-items: flex-start !important; overflow-y: auto !important; }
html body.photo-award-public-photographer-profile-page:not(.admin-bar) .photo-award-photographer-lightbox { top: var(--photo-award-public-header-height,148px) !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__dialog { margin: 0 auto !important; z-index: 2; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__image { max-height: min(700px, calc(100dvh - 300px)) !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__overlay { z-index: 0 !important; }
@media(max-width:767px){ html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox { top: 150px !important; } html body.photo-award-public-photographer-profile-page:not(.admin-bar) .photo-award-photographer-lightbox { top:104px !important; } }

html body.photo-award-photographer-lightbox-open .photo-award-public-site-header { position:fixed !important; top:0 !important; transform:none !important; opacity:1 !important; visibility:visible !important; z-index:10000 !important; }
html body.admin-bar.photo-award-photographer-lightbox-open .photo-award-public-site-header { top:32px !important; }
@media(max-width:782px){html body.admin-bar.photo-award-photographer-lightbox-open .photo-award-public-site-header {top:46px !important;}}

/* Smaller profile preview with a blurred backdrop. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__image { max-width: min(600px, calc(100vw - 32px)) !important; max-height: min(600px, calc(100dvh - 300px)) !important; }
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__overlay { background: rgba(0,0,0,.62) !important; backdrop-filter: blur(12px); -webkit-backdrop-filter: blur(12px); }

/* Comfortable spacing around the profile preview title. */
html body.photo-award-public-photographer-profile-page .photo-award-photographer-lightbox__caption { box-sizing: border-box; width: 100%; max-width: 600px; margin: 0 auto !important; padding: 20px 24px 24px !important; line-height: 1.6 !important; text-align: center; overflow-wrap: anywhere; }

/* Blur underlying profile sections outside the preview overlay too. */
html body.photo-award-photographer-lightbox-open .photo-award-photographer-profile > section { filter: blur(12px) !important; pointer-events: none; }
