@import url('https://cdn-uicons.flaticon.com/4.0.0/uicons-solid-rounded/css/uicons-solid-rounded.css');

*,
*::before,
*::after {
    box-sizing: border-box;
}

body {
    margin: 0 !important;
    padding: 0 !important;
    background-color: #100e0a;
    font-family: "Benne", serif;
    color: #fff;
    font-size: 1em;
}

img {
    max-width: 100%;
    height: auto;
}

.hamburgerMenu {
    display: none;
    position: fixed;
    top: 10px;
    left: 10px;
    z-index: 1102;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 48px;
    height: 48px;
    padding: 0;
    border: 1px solid #72594e;
    cursor: pointer;
    background: rgba(30, 21, 20, 0.98);
    border-radius: 10px;
    box-shadow: 0 4px 14px rgba(0, 0, 0, 0.35);
    overflow: visible;
}

.hamburgerMenu span {
    position: absolute;
    left: 12px;
    display: block;
    width: 22px;
    height: 2px;
    margin: 0;
    background: #d29a75;
    border-radius: 2px;
    transform-origin: center;
    transition: top 0.2s ease, transform 0.2s ease, opacity 0.2s ease;
}

.hamburgerMenu span:nth-child(1) {
    top: 16px;
}

.hamburgerMenu span:nth-child(2) {
    top: 23px;
}

.hamburgerMenu span:nth-child(3) {
    top: 30px;
}

body.is-hamburger-menu-open .hamburgerMenu span:nth-child(1) {
    top: 23px;
    transform: rotate(45deg);
}

body.is-hamburger-menu-open .hamburgerMenu span:nth-child(2) {
    opacity: 0;
}

body.is-hamburger-menu-open .hamburgerMenu span:nth-child(3) {
    top: 23px;
    transform: rotate(-45deg);
}

.hamburgerMenuPanel {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1101;
    width: min(86vw, 360px);
    height: 100vh;
    padding: 74px 14px 18px;
    overflow-y: auto;
    background: #100e0a;
    border-right: 1px solid #72594e;
    box-shadow: 10px 0 24px rgba(0, 0, 0, 0.42);
    transform: translateX(-105%);
    transition: transform 0.25s ease;
}

body.is-hamburger-menu-open .hamburgerMenuPanel {
    transform: translateX(0);
}

body.is-hamburger-menu-open::before {
    display: none;
}

.hamburgerMenuPanel,
.hamburgerMenuPanel * {
    position: relative;
    z-index: 1;
}

.hamburgerMenuPanel .navBlock {
    display: flex;
    flex-direction: column;
    gap: 10px;
    width: 100%;
}

.hamburgerMenuPanel .navActionBtn,
.hamburgerMenuPanel .navBlock > p,
.hamburgerMenuPanel .navBlock > p > a {
    width: 100%;
}

#all {
    width: 100%;
    margin: 0 auto;
}

/* =========================
   NAVBAR
========================= */

.mainNavbar {
    background-image: url(/themes/florisetherba2k26/images/navTexture3.png) !important;
    position: sticky;
    top: 0;
    z-index: 100;
    background-repeat: repeat;
    background-position: top;
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 5em;
    width: 100%;
    padding: 12px 16px;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.16), 0 8px 18px rgba(0, 0, 0, 0.12);
    color: #fff;
    overflow-x: auto;
    overflow-y: hidden;
}

.mainNavMenu {
    width: auto;
    max-width: 100%;
    display: flex;
    justify-content: center;
}

.navBlock {
    display: flex;
    flex-wrap: nowrap;
    gap: 8px;
    font-family: "Platypi", serif;
    text-transform: uppercase;
    align-items: center;
    justify-content: center;
    text-align: center;
    width: auto;
    max-width: 100%;
    white-space: nowrap;
}

.navActionBtn {
    background: linear-gradient(0deg, #1e1514, #59443a);
    border: 1px solid #72594e;
    font-family: "Platypi", serif;
    text-transform: uppercase;
    align-items: center;
    display: flex;
    flex-direction: row;
    color: #cda184;
    text-shadow:
            0 1px 0 rgba(0, 0, 0, 0.55),
            0 2px 5px rgba(0, 0, 0, 0.28);
    font-size: 1em;
    border-radius: 10px;
    justify-content: center;
    padding: 0.65em 1em;
    width: auto;
    min-width: max-content;
    min-height: 44px;
    text-align: center;
}

.navActionBtn:hover {
    color: #cc6e47;
}

.navBlock > p {
    margin: 0;
    flex: 0 0 auto;
}

.navBlock > p > a {
    text-decoration: none !important;
    color: #ca9674;
    text-shadow:
            0 1px 0 rgba(0, 0, 0, 0.6),
            0 2px 5px rgba(0, 0, 0, 0.3);
    display: inline-block;
    padding: 4px 0;
}

.navBlock > p > a:hover {
    color: #cc6e47;
    text-shadow:
            0 1px 0 rgba(0, 0, 0, 0.55),
            0 2px 5px rgba(0, 0, 0, 0.28);
}

/* =========================
   GŁÓWNY UKŁAD
========================= */

.layout {
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr) minmax(220px, 280px);
    grid-template-areas: "left-menu content right-menu";
    gap: clamp(16px, 2vw, 28px);
    align-items: start;
    width: min(100% - 32px, 1500px);
    margin: 1em auto;
    padding: 20px 0 0;
}

.contentColumn {
    grid-area: content;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

/* menus */
#menuContainerLeft,
#menuContainerRight {
    width: 100%;
    max-width: 280px;
    align-self: start;
}

#menuContainerLeft {
    grid-area: left-menu;
}

#menuContainerRight {
    grid-area: right-menu;
}

.menuBackground
{
    margin-top: 0!important;
}

#menuContainerLeft .menuBlock,
#menuContainerRight .menuBlock,
#menuContainerLeft .menuBackground,
#menuContainerRight .menuBackground {
    margin-top: 8em;
}


.menuBlock {
    position: relative;
    width: 100%;
    margin: 70px auto 20px auto;
    padding: 90px 24px 20px 24px;
    background: rgba(39, 29, 24, 0.92);
    border: 1px solid #3f2e22;
    border-radius: 14px;
    color: #e7d6c4;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24), 0 2px 8px rgba(0, 0, 0, 0.12);
    text-align: center;
    box-sizing: border-box;
}





.menuBackground {
    position: relative;
    width: 100%;
    padding-bottom: 1px;
    margin-top: 0;
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Platypi';
}

#contentScores {
    width: 100%;
    max-width: 1050px;
    margin: 0 auto;
}

.scores-board {
    position: relative;
    width: 100%;
    container-type: inline-size;
}

.srodek {
    width: 100%;
}

.srodek > * {
    margin: 0 !important;
}

.srodek img {
    display: block;
    width: 100%;
    height: auto;
}

.scores-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 5;
    pointer-events: none;
}

.scores-overlay .score-link {
    pointer-events: auto;
    position: relative;
    display: block;
}

.score-house {
    position: absolute;
    transform: translateX(-50%);
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}

.score-house-left {
    left: 23.4%;
    top: 21.5%;
    width: 14.5%;
    max-width: 14.5%;
}

.score-house-right {
    left: 54.2%;
    top: 20.35%;
    width: 15.5%;
    max-width: 15.5%;
}
.score-house-right2 {
    left: 80%;
    top: 38.35%;
    width: 15.5%;
    max-width: 15.5%;
}

.score-role {
    width: 100%;
}

.score-role + .score-role {
    margin-top: clamp(2px, -0.5cqw, 6px);
}

.score-label {
    position: relative;
    display: block;
    width: 100%;
    min-height: 1.25em;
    line-height: 0.92;
    white-space: normal;
    overflow: visible;
}

.score-name-shadow,
.score-name,
.score-subtitle,
.score-points {
    font-family: "Platypi", serif;
}

.score-name-shadow {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    color: rgba(18, 10, 7, 0.7);
    z-index: 1;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 0.92 !important;
    text-align: center;

    font-size: 0.88em;
}

.score-name {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    white-space: normal;
    overflow: visible;
    text-overflow: clip;
    overflow-wrap: anywhere;
    word-break: normal;
    line-height: 0.92;
    text-align: center;
    font-size: clamp(8px, 1.2cqw, 15px);
    font-weight: 700;
}

.score-name-left {
    background: linear-gradient(180deg, #da93d8, #b350b2);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-name-right {
    background: linear-gradient(180deg, #ffe563, #98822e);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}
.score-name-right2 {
    background: linear-gradient(180deg, #ff6363, #982e2e);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-subtitle {
    display: block;
    margin-top: clamp(1px, 0.2cqw, 3px);
    color: #fff;
    font-size: clamp(5px, 0.62cqw, 8px);
    letter-spacing: 1px;
    white-space: nowrap;

}

.score-points {
    display: block;
    margin-top: clamp(3px, 0.7cqw, 8px);
    font-size: clamp(15px, 2.9cqw, 31px);
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;

}

.score-points-left {
    color: #c85cac;
}

.score-points-right {
    color: #f4dd46;
}
.score-points-right2 {
    color: #f44646;
}

/* Support both the new grouped markup and the older flat overlay markup. */
.scores-overlay > .score-label-left-guardian,
.scores-overlay > .score-label-left-prefect,
.scores-overlay > .score-label-right-guardian,
.scores-overlay > .score-label-right-prefect,
.scores-overlay > .score-subtitle-left-guardian,
.scores-overlay > .score-subtitle-left-prefect,
.scores-overlay > .score-subtitle-right-guardian,
.scores-overlay > .score-subtitle-right-prefect,
.scores-overlay > .score-points-left,
.scores-overlay > .score-points-right {
    position: absolute;
    text-align: center;
}

.scores-overlay > .score-label-left-guardian,
.scores-overlay > .score-label-left-prefect,
.scores-overlay > .score-label-right-guardian,
.scores-overlay > .score-label-right-prefect,
.scores-overlay > .score-subtitle-left-guardian,
.scores-overlay > .score-subtitle-left-prefect,
.scores-overlay > .score-subtitle-right-guardian,
.scores-overlay > .score-subtitle-right-prefect {
    transform: translateX(-50%);
}

.scores-overlay > .score-label-left-guardian,
.scores-overlay > .score-label-left-prefect {
    left: 23.4%;
    width: 14.5%;
    max-width: 14.5%;
}

.scores-overlay > .score-label-right-guardian,
.scores-overlay > .score-label-right-prefect {
    left: 54.2%;
    width: 15.5%;
    max-width: 15.5%;
}

.scores-overlay > .score-label-left-guardian {
    top: 20.9%;
}

.scores-overlay > .score-subtitle-left-guardian {
    left: 23.4%;
    top: 24.45%;
}

.scores-overlay > .score-label-left-prefect {
    top: 25.95%;
}

.scores-overlay > .score-subtitle-left-prefect {
    left: 23.4%;
    top: 29.45%;
}

.scores-overlay > .score-points-left {
    left: 23.4%;
    top: 33.35%;
    margin-top: 0;
    transform: translate(-50%, -50%);
}

.scores-overlay > .score-label-right-guardian {
    top: 20.35%;
}

.scores-overlay > .score-subtitle-right-guardian {
    left: 54.2%;
    top: 23.95%;
}

.scores-overlay > .score-label-right-prefect {
    top: 24.4%;
}

.scores-overlay > .score-subtitle-right-prefect {
    left: 54.2%;
    top: 27.9%;
}

.scores-overlay > .score-points-right {
    left: 54.2%;
    top: 32.1%;
    margin-top: 0;
    transform: translate(-50%, -50%);
}

.scores-overlay a,
.scores-overlay a:visited,
.scores-overlay a:hover,
.scores-overlay a:active {
    text-decoration: none !important;
    color: inherit !important;
}

@media (max-width: 1100px) {
    #contentScores {
        width: 100%;
    }

    .score-name {
        font-size: clamp(7px, 1.05cqw, 13px);
    }

    .score-points {
        font-size: clamp(13px, 2.5cqw, 26px);
    }
}

@media (max-width: 700px) {
    #contentScores {
        width: 100%;
        margin: 12px auto 0 auto;
        overflow: hidden;
    }

    .score-house-left {
        width: 14.5%;
        max-width: 14.5%;
    }

    .score-house-right {
        width: 15.5%;
        max-width: 15.5%;
    }

    .score-label {
        min-height: 2.15em;
    }

    .scores-overlay > .score-label-left-guardian,
    .scores-overlay > .score-label-left-prefect {
        width: 14.5%;
        max-width: 14.5%;
    }

    .scores-overlay > .score-label-right-guardian,
    .scores-overlay > .score-label-right-prefect {
        width: 15.5%;
        max-width: 15.5%;
    }

    .score-name {
        font-size: clamp(4px, 0.82cqw, 7px);
    }

    .score-subtitle {
        font-size: clamp(2.6px, 0.42cqw, 4.2px);
    }

    .score-points {
        font-size: clamp(7px, 1.75cqw, 12px);
    }


}

.middleContentBlock, #contentSmall2 {
    width: 100%;
    max-width: 1100px;
    margin: 0 auto 20px auto;
    padding: 20px 24px;
    background: rgba(39, 29, 24, 0.92);
    border: 1px solid #3f2e22;
    border-radius: 14px;
    font-size: 1em;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24), 0 2px 8px rgba(0, 0, 0, 0.12);
    text-align: center;
    color: #c9ab8f;
    text-shadow: 0 1px 3px rgba(24, 19, 19, 0.42);
    grid-area: content;
    font-family: "Benne", serif;
    position: relative;
}

#contentSmall {
    width: 100%;
    max-width: 1100px;
    margin: 18px auto 20px auto;
}

#contentSmall a {
    color: #c8956d;
    text-decoration: none;
}

#contentSmall a:hover {
    color: #e0ab7f;
    text-decoration: underline;
}

#footer
{
    text-align: center;
    margin: 1em auto;
    padding: 1em;
    font-weight: 300;
    font-family: 'Platypi';
    color: #c9ab8f;
}


.newsTitle
{
    font-family: 'Platypi';
    font-size: 2em;
    color: #e5c473;
}

.newsMetaSection, .newsDate, .newsAuthor
{
    display: flex;
    justify-content: center;
    flex-direction: row;
    font-family: 'Platypi';
}

.newsAuthor {
    color: #c39f87;
    font-weight: bold;
}


.menuBlock {
    position: relative;
    width: 98%;
    margin: -30px auto 20px auto;
    background: rgba(39, 29, 24, 0.92);
    border: 1px solid #3f2e22;
    border-radius: 14px;
    color: #e7d6c4;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24), 0 2px 8px rgba(0, 0, 0, 0.12);
    text-align: center;
    box-sizing: border-box;
    padding: 1em 0;
    top: -1em;
}

.menuBackground {
    position: relative;
    width: 100%;
    padding-bottom: 1px;
    margin-top: 0;
}

.blockImg {
    position: relative;
    width: 100%;
    height: auto;
    overflow: hidden;
    border-radius: 10px;
    z-index: 3;
    margin-top: -11em;
}

.blockImg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

input, textarea, select
{
    background-color: #654b3d;
    padding: .75em;
    border: none;
    border-radius: 2em;
    color: #d1bf93;
    font-family: "Platypi", serif;
    border-bottom: 1px solid #d6af7b;
    margin: .25em auto;

}

ul
{
    text-align: justify;
}

.menuBackground input
{
    width: 90%;
}

input::placeholder, textarea::placeholder {
    color: #d1bf93;
    text-align: center;
    font-style: italic;
}

.itemPanelSlot
{
    display: flex;
    flex-direction: row;
    gap: 1em;
    align-items: center;
}

.itemPanelSlot img
{
    width: 16px;
    height: 16px;
}

.infoBottomLogin
{
    display: flex;
    flex-direction: row;
}

input[type=submit], button
{
    background-color: #453530;
    border: none;
    border-radius: 2em;
    text-transform: uppercase;
    color: #d7cbc7;
    font-weight: bold;
    text-shadow: 0 1px 2px rgba(33, 25, 25, 0.38);
    box-shadow: 0 2px 6px rgba(32, 27, 27, 0.18);
}


input[type=submit]:hover, button:hover
{
    background-color: #5a4643;
    color: #d7cbc7;
    text-transform: uppercase;
}

input[type=checkbox], input[type=radio]
{
    accent-color: #e5c473;
}

a, a:active, a:visited
{
    color: #ca9674;
}

a:hover
{
    color: #cc6e47;
}

.score-crest-row .score-card-head {
    grid-column: 1 / -1;
    justify-self: center;
    width: 100%;
    max-width: 420px;
}

@media (max-width: 700px) {
    .score-crest-row .score-card-head {
        grid-column: auto;
        justify-self: stretch;
        max-width: none;
    }
}

table
{
    border-collapse: collapse;
    border-radius: 10px;
}

table th
{
    background: #3e312a;
    text-transform: uppercase;
}
table td
{
    background: #31251f;
}

.eventsSection
{
    position: relative;
    width: 98%;
    background: rgba(39, 29, 24, 0.92);
    border: 1px solid #3f2e22;
    border-radius: 14px;
    color: #e7d6c4;
    box-shadow: 0 6px 18px rgba(0, 0, 0, 0.24), 0 2px 8px rgba(0, 0, 0, 0.12);
    text-align: center;
    box-sizing: border-box;
    padding: 1em 0;
}

table tr, table td, table th
{
    border: none;
    border-radius: 10px;
    padding: 0.5em

}

@media (max-width: 1100px) {
    .layout {
        grid-template-columns: minmax(200px, 250px) minmax(0, 1fr) minmax(200px, 250px);
        width: min(100% - 24px, 1280px);
        gap: 14px;
    }
}

@media (max-width: 700px) {
    .mainNavbar {
        justify-content: flex-start;
        min-height: 68px;
        padding: 12px 12px 12px 68px;
        overflow: visible;
    }

    .mainNavMenu {
        display: none;
    }

    .hamburgerMenu {
        display: inline-flex;
    }

    .hamburgerMenuPanel {
        display: block;
    }

    .layout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "left-menu"
            "content"
            "right-menu";
        width: min(100% - 20px, 640px);
        padding-top: 12px;
    }

    #menuContainerLeft,
    #menuContainerRight {
        width: 100%;
        max-width: none;
        margin: 0 auto;
    }

    .contentColumn {
        width: 100%;
        margin: 0 auto;
    }

    .middleContentBlock,
    #contentSmall2 {
        width: 100%;
        padding: 16px;
    }
}

/* === HOTFIX: mobile hamburger must not affect page layout === */
body {
    overflow-x: hidden;
}

.hamburgerMenuPanel {
    display: none !important;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    position: fixed !important;
    transform: none !important;
}

.hamburgerMenuPanel * {
    position: static;
}

@media (min-width: 701px) {
    .hamburgerMenu,
    .hamburgerMenuPanel {
        display: none !important;
    }

    .mainNavMenu {
        display: flex !important;
    }
}

@media (max-width: 700px) {
    .mainNavbar {
        min-height: 68px;
        padding: 10px 10px 10px 70px !important;
        overflow: visible !important;
    }

    .mainNavMenu {
        display: none !important;
    }

    .hamburgerMenu {
        display: inline-flex !important;
        position: fixed !important;
        top: 10px !important;
        left: 10px !important;
        z-index: 1500 !important;
        width: 48px !important;
        height: 48px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .hamburgerMenuPanel {
        display: none !important;
        position: fixed !important;
        top: 68px !important;
        left: 10px !important;
        right: 10px !important;
        z-index: 1490 !important;
        width: auto !important;
        height: auto !important;
        max-height: calc(100vh - 86px) !important;
        padding: 12px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: none !important;
        background: #100e0a !important;
        border: 1px solid #72594e !important;
        border-radius: 12px !important;
        box-shadow: 0 10px 28px rgba(0, 0, 0, 0.45) !important;
    }

    body.is-hamburger-menu-open .hamburgerMenuPanel {
        display: block !important;
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
    }

    body.is-hamburger-menu-open::before {
        display: none !important;
        content: none !important;
    }

    .hamburgerMenuPanel .navBlock {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
    }

    .hamburgerMenuPanel .navActionBtn,
    .hamburgerMenuPanel .navBlock > p,
    .hamburgerMenuPanel .navBlock > p > a {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        white-space: normal !important;
    }
}

/* === FINAL FIX: mobile hamburger as full-height off-canvas menu with overlay === */
@media (min-width: 701px) {
    .hamburgerMenu,
    .hamburgerMenuPanel {
        display: none !important;
    }

    .mainNavMenu {
        display: flex !important;
    }
}

@media (max-width: 700px) {
    body {
        overflow-x: hidden !important;
    }

    body.is-hamburger-menu-open {
        overflow: hidden !important;
    }

    .mainNavbar {
        min-height: 68px !important;
        padding: 10px 10px 10px 70px !important;
        overflow: visible !important;
    }

    .mainNavMenu {
        display: none !important;
    }

    .hamburgerMenu {
        display: inline-flex !important;
        position: fixed !important;
        top: 10px !important;
        left: 10px !important;
        z-index: 1700 !important;
        width: 48px !important;
        height: 48px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    .hamburgerMenuPanel {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        right: auto !important;
        z-index: 1600 !important;
        width: min(86vw, 360px) !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: none !important;
        padding: 76px 14px 18px !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
        overscroll-behavior: contain;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(-105%) !important;
        background: #100e0a !important;
        border: 0 !important;
        border-right: 1px solid #72594e !important;
        border-radius: 0 !important;
        box-shadow: 12px 0 28px rgba(0, 0, 0, 0.55) !important;
        transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s ease !important;
    }

    body.is-hamburger-menu-open .hamburgerMenuPanel {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
    }

    body.is-hamburger-menu-open::before {
        content: "" !important;
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        z-index: 1500 !important;
        background: rgba(0, 0, 0, 0.58) !important;
        pointer-events: none !important;
    }

    .hamburgerMenuPanel,
    .hamburgerMenuPanel * {
        transform: none !important;
    }

    .hamburgerMenuPanel * {
        position: static !important;
        z-index: auto !important;
        max-width: 100% !important;
    }

    .hamburgerMenuPanel .navBlock {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 8px !important;
        width: 100% !important;
        max-width: 100% !important;
        white-space: normal !important;
    }

    .hamburgerMenuPanel .navActionBtn,
    .hamburgerMenuPanel .navBlock > p,
    .hamburgerMenuPanel .navBlock > p > a {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        white-space: normal !important;
    }
}

/* FINAL MOBILE HAMBURGER FIX: full-width transparent menu above overlay */
@media (max-width: 700px) {
    html,
    body {
        width: 100% !important;
        max-width: 100% !important;
        overflow-x: hidden !important;
    }

    .mainNavMenu {
        display: none !important;
    }

    .hamburgerMenu {
        position: fixed !important;
        top: 10px !important;
        left: 10px !important;
        z-index: 5000 !important;
        display: inline-flex !important;
        width: 48px !important;
        height: 48px !important;
        padding: 0 !important;
        overflow: visible !important;
    }

    body.is-hamburger-menu-open {
        overflow: hidden !important;
    }

    body.is-hamburger-menu-open::before {
        content: "" !important;
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        z-index: 3000 !important;
        background: rgba(0, 0, 0, 0.55) !important;
        pointer-events: none !important;
    }

    .hamburgerMenuPanel {
        display: block !important;
        position: fixed !important;
        top: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        left: 0 !important;
        z-index: 4000 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        max-height: none !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        box-sizing: border-box !important;
        padding: 86px 18px 28px !important;
        margin: 0 !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        background: rgba(16, 14, 10, 0.88) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        opacity: 0 !important;
        visibility: hidden !important;
        pointer-events: none !important;
        transform: translateX(-100%) !important;
        transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s ease !important;
    }

    body.is-hamburger-menu-open .hamburgerMenuPanel {
        opacity: 1 !important;
        visibility: visible !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
    }

    .hamburgerMenuPanel * {
        max-width: 100% !important;
        box-sizing: border-box !important;
    }

    .hamburgerMenuPanel .navBlock {
        position: static !important;
        z-index: auto !important;
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 10px !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        white-space: normal !important;
    }

    .hamburgerMenuPanel .navActionBtn,
    .hamburgerMenuPanel .navBlock > p,
    .hamburgerMenuPanel .navBlock > p > a,
    .hamburgerMenuPanel a {
        position: relative !important;
        z-index: 4100 !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        white-space: normal !important;
        pointer-events: auto !important;
    }
}

/* FINAL HOTFIX: mobile hamburger without dark overlay */
@media (max-width: 700px) {
    body.is-hamburger-menu-open::before {
        content: none !important;
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
    }

    body.is-hamburger-menu-open {
        overflow: hidden !important;
    }

    .mainNavMenu {
        display: none !important;
    }

    .hamburgerMenu {
        display: inline-flex !important;
        position: fixed !important;
        top: 10px !important;
        left: 10px !important;
        z-index: 20001 !important;
    }

    .hamburgerMenuPanel {
        display: block !important;
        position: fixed !important;
        inset: 0 !important;
        z-index: 20000 !important;
        width: 100vw !important;
        max-width: 100vw !important;
        min-width: 100vw !important;
        height: 100vh !important;
        height: 100dvh !important;
        min-height: 100vh !important;
        min-height: 100dvh !important;
        max-height: none !important;
        margin: 0 !important;
        padding: 88px 18px 28px !important;
        box-sizing: border-box !important;
        overflow-y: auto !important;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch !important;
        overscroll-behavior: contain !important;
        background: rgba(16, 14, 10, 0.78) !important;
        border: 0 !important;
        border-radius: 0 !important;
        box-shadow: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        pointer-events: none !important;
        transform: translateX(-100%) !important;
        transition: transform 0.22s ease, opacity 0.22s ease, visibility 0.22s ease !important;
    }

    body.is-hamburger-menu-open .hamburgerMenuPanel {
        visibility: visible !important;
        opacity: 1 !important;
        pointer-events: auto !important;
        transform: translateX(0) !important;
    }

    .hamburgerMenuPanel,
    .hamburgerMenuPanel * {
        box-sizing: border-box !important;
        max-width: 100% !important;
    }

    .hamburgerMenuPanel .navBlock {
        display: flex !important;
        flex-direction: column !important;
        align-items: stretch !important;
        justify-content: flex-start !important;
        flex-wrap: nowrap !important;
        gap: 12px !important;
        width: 100% !important;
        margin: 0 !important;
        white-space: normal !important;
        position: relative !important;
        z-index: 20002 !important;
    }

    .hamburgerMenuPanel .navActionBtn,
    .hamburgerMenuPanel .navBlock > p,
    .hamburgerMenuPanel .navBlock > p > a,
    .hamburgerMenuPanel a {
        position: relative !important;
        z-index: 20003 !important;
        pointer-events: auto !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        text-align: center !important;
        white-space: normal !important;
    }
}

/* =========================
   SCORE TREE: 4 houses + head prefects
   Integrated in news-view.php
========================= */
#contentScores {
    overflow-x: auto;
    overflow-y: hidden;
}

.scores-board {
    position: relative;
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    container-type: inline-size;
}

.scores-overlay {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 5;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: visible;
}

.scores-overlay .score-link,
.scores-overlay a {
    position: relative;
    z-index: 7;
    pointer-events: auto;
    text-decoration: none !important;
    color: inherit !important;
}

.score-house {
    position: absolute;
    z-index: 6;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    text-align: center;
    transform: translateX(-50%);
    width: 15.4%;
    max-width: 15.4%;
    min-height: 8.5%;
    pointer-events: auto;
}

.score-house-left,
.score-house-lilium {
    left: 23.4%;
    top: 20.85%;
    width: 14.8%;
    max-width: 14.8%;
}

.score-house-right,
.score-house-plumeria {
    left: 54.2%;
    top: 19.95%;
    width: 15.4%;
    max-width: 15.4%;
}

.score-house-center,
.score-house-dahlia {
    left: 47.2%;
    top: 39.0%;
    width: 15.8%;
    max-width: 15.8%;
}

.score-house-right2,
.score-house-rosa {
    left: 80%;
    top: 38.05%;
    width: 15.5%;
    max-width: 15.5%;
}

.score-house-head,
.score-head-prefects,
.score-house-prefects {
    left: 50.6%;
    top: 65.25%;
    width: 18.6%;
    max-width: 18.6%;
}

.score-role {
    width: 100%;
    min-width: 0;
}

.score-role + .score-role {
    margin-top: clamp(1px, 0.14cqw, 3px);
}

.score-label {
    position: relative;
    display: block;
    width: 100%;
    min-height: 1.02em;
    line-height: 0.9;
    white-space: normal;
    overflow: visible;
}

.score-name,
.score-subtitle,
.score-points {
    font-family: "Platypi", Georgia, "Times New Roman", serif;
}

.score-name {
    position: relative;
    z-index: 2;
    display: block;
    width: 100%;
    font-size: clamp(6px, 0.86cqw, 11px);
    font-weight: 700;
    line-height: 0.94;
    text-align: center;
    white-space: normal;
    overflow: visible;
    overflow-wrap: anywhere;
    word-break: normal;
}

.score-subtitle {
    display: block;
    margin-top: clamp(0px, 0.08cqw, 1px);
    color: #fff;
    font-size: clamp(3px, 0.42cqw, 6px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    white-space: nowrap;
}

.score-points {
    display: block;
    margin-top: clamp(2px, 0.34cqw, 5px);
    font-size: clamp(12px, 2.2cqw, 25px);
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.04em;
    white-space: nowrap;
}

.score-name-left,
.score-name-lilium {
    background: linear-gradient(180deg, #f19ce9, #b350b2);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-name-right,
.score-name-plumeria {
    background: linear-gradient(180deg, #fff083, #98822e);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-name-center,
.score-name-dahlia {
    background: linear-gradient(180deg, #ffbc63, #b75d19);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-name-right2,
.score-name-rosa {
    background: linear-gradient(180deg, #ff7373, #982e2e);
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    -webkit-text-fill-color: transparent;
}

.score-name-head-prefect,
.score-house-head .score-name,
.score-head-prefects .score-name,
.score-house-prefects .score-name {
    color: #d7b079;
    -webkit-text-fill-color: currentColor;
}

.score-house-head .score-subtitle,
.score-head-prefects .score-subtitle,
.score-house-prefects .score-subtitle {
    color: #f3d6a3;
}

.score-house-head .score-role + .score-role,
.score-head-prefects .score-role + .score-role,
.score-house-prefects .score-role + .score-role {
    margin-top: clamp(3px, 0.38cqw, 6px);
}

.score-points-left,
.score-points-lilium {
    color: #d968c5;
}

.score-points-right,
.score-points-plumeria {
    color: #f4dd46;
}

.score-points-center,
.score-points-dahlia {
    color: #f29236;
}

.score-points-right2,
.score-points-rosa {
    color: #f44646;
}

@media (max-width: 700px) {
    #contentScores {
        width: 100% !important;
        overflow-x: auto !important;
        overflow-y: hidden !important;
        -webkit-overflow-scrolling: touch;
    }

    .scores-board {
        width: 900px !important;
        min-width: 900px !important;
        max-width: none !important;
        margin: 0 !important;
    }

    .scores-board .srodek,
    .scores-board .srodek > * {
        width: 900px !important;
        min-width: 900px !important;
        max-width: none !important;
    }

    .scores-board .srodek img {
        width: 900px !important;
        max-width: none !important;
        height: auto !important;
    }
}

/* =========================
   SCORE TREE READABILITY TWEAK
   Bigger centered labels + tilted head-prefects block.
========================= */
.score-house {
    justify-content: center;
}

.score-role {
    display: flex;
    width: 100%;
    min-width: 0;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.score-label {
    display: flex;
    width: 100%;
    min-height: 1.14em;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.score-label .score-link {
    display: block;
    width: 100%;
    text-align: center;
}

.score-name {
    font-size: clamp(8px, 1.08cqw, 14px);
    line-height: 1.02;
    text-align: center;
}

.score-subtitle {
    margin-top: clamp(1px, 0.14cqw, 2px);
    font-size: clamp(4px, 0.58cqw, 7px);
    line-height: 1.05;
    text-align: center;
}

.score-points {
    margin-top: clamp(3px, 0.48cqw, 7px);
    font-size: clamp(16px, 2.65cqw, 31px);
    text-align: center;
}

.score-role + .score-role {
    margin-top: clamp(2px, 0.22cqw, 4px);
}

.score-house-head,
.score-head-prefects,
.score-house-prefects {
    top: 64.95%;
    width: 20.4%;
    max-width: 20.4%;
    justify-content: center;
    transform: translateX(-50%) rotate(-5deg);
    transform-origin: 50% 50%;
}

.score-house-head .score-name,
.score-head-prefects .score-name,
.score-house-prefects .score-name {
    font-size: clamp(8px, 1.02cqw, 13px);
    line-height: 1.03;
    text-align: center;
}

.score-house-head .score-subtitle,
.score-head-prefects .score-subtitle,
.score-house-prefects .score-subtitle {
    font-size: clamp(4px, 0.54cqw, 7px);
    line-height: 1.05;
    text-align: center;
}

.score-house-head .score-role + .score-role,
.score-head-prefects .score-role + .score-role,
.score-house-prefects .score-role + .score-role {
    margin-top: clamp(4px, 0.48cqw, 7px);
}

/* =========================
   SCORE TREE POLISH: centered board text + less huge mobile tree
========================= */
.score-house {
    height: 12.6%;
    min-height: 0;
    padding: 0 2px;
    justify-content: center;
}

.score-house-left,
.score-house-lilium {
    top: 20.45%;
}

.score-house-right,
.score-house-plumeria {
    top: 19.55%;
}

.score-house-center,
.score-house-dahlia {
    top: 38.45%;
}

.score-house-right2,
.score-house-rosa {
    top: 37.55%;
}

.score-role {
    flex: 0 0 auto;
}

.score-role + .score-role {
    margin-top: clamp(1px, 0.16cqw, 3px);
}

.score-label {
    min-height: 1.08em;
}

.score-name {
    font-size: clamp(8px, 1.02cqw, 13px);
    line-height: 0.98;
}

.score-subtitle {
    margin-top: clamp(0px, 0.08cqw, 1px);
    font-size: clamp(4px, 0.62cqw, 7px);
    line-height: 1;
}

.score-points {
    margin-top: clamp(2px, 0.38cqw, 6px);
    font-size: clamp(16px, 2.55cqw, 30px);
    line-height: 0.96;
}

.score-house-head,
.score-head-prefects,
.score-house-prefects {
    left: 48.7%;
    top: 61.35%;
    width: 21.4%;
    max-width: 21.4%;
    height: 11.8%;
    transform: translateX(-50%) rotate(-4deg);
}

.score-house-head .score-name,
.score-head-prefects .score-name,
.score-house-prefects .score-name {
    font-size: clamp(8px, 0.98cqw, 12px);
    line-height: 0.98;
}

.score-house-head .score-subtitle,
.score-head-prefects .score-subtitle,
.score-house-prefects .score-subtitle {
    font-size: clamp(4px, 0.56cqw, 6.5px);
    line-height: 1;
}

.score-house-head .score-role + .score-role,
.score-head-prefects .score-role + .score-role,
.score-house-prefects .score-role + .score-role {
    margin-top: clamp(2px, 0.28cqw, 5px);
}

@media (max-width: 700px) {
    #contentScores {
        overflow-x: hidden !important;
        overflow-y: hidden !important;
    }

    .scores-board {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 900px !important;
        margin: 0 auto !important;
        flex: 0 1 auto !important;
    }

    .scores-board .srodek,
    .scores-board .srodek > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .scores-board .srodek img {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
    }

    .score-house {
        height: 12.6% !important;
        padding: 0 1px !important;
    }

    .score-name {
        font-size: clamp(6px, 1.8vw, 8px) !important;
        line-height: 0.98 !important;
    }

    .score-subtitle {
        font-size: clamp(2.6px, 0.95vw, 4px) !important;
        line-height: 1 !important;
        letter-spacing: 0.04em !important;
    }

    .score-points {
        font-size: clamp(11px, 4.1vw, 17px) !important;
        margin-top: 1px !important;
    }

    .score-role + .score-role {
        margin-top: 1px !important;
    }

    .score-house-head,
    .score-head-prefects,
    .score-house-prefects {
        transform: translateX(-50%) rotate(-4deg) !important;
    }

    .score-house-head .score-name,
    .score-head-prefects .score-name,
    .score-house-prefects .score-name {
        font-size: clamp(5.5px, 1.55vw, 7.5px) !important;
    }

    .score-house-head .score-subtitle,
    .score-head-prefects .score-subtitle,
    .score-house-prefects .score-subtitle {
        font-size: clamp(2.4px, 0.85vw, 3.6px) !important;
    }
}



/* =========================
   SCORE TREE FINAL: new tree + 5 responsive crests + modal
========================= */
#contentScores {
    width: 100%;
    max-width: 1050px;
    margin: 0 auto;
    overflow: visible !important;
}

.scores-board {
    position: relative;
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    margin: 0 auto !important;
    container-type: inline-size;
}

.score-tree-image-wrap {
    width: 100%;
    margin: 0 auto;
    text-align: center;
}

.score-tree-image {
    display: flex;
    width: min(80%, 980px);
    height: auto;
    margin: 5rem auto;
    align-items: center;
    justify-content: center;
    align-content: center;
    flex-wrap: nowrap;
}

.scores-overlay.score-crest-row {
    /*position: revert-rule;*/
    z-index: 5;
    display: grid;
    grid-template-columns: repeat(2, minmax(92px, 1fr));
    gap: clamp(8px, 1.4vw, 18px);
    width: min(100%, 980px) !important;
    height: auto !important;
    margin: clamp(25%, -5.2vw, -28px) auto 0;
    padding: 0 clamp(4px, 1vw, 12px);
    pointer-events: auto;
    justify-content: space-around;
    align-items: center;
    top: 0 !important;
    align-content: center;
    justify-items: center;
}

.score-card {
    position: relative !important;
    top: auto !important;
    left: auto !important;
    right: auto !important;
    bottom: auto !important;
    transform: none !important;
    display: flex;
    width: 100% !important;
    max-width: none !important;
    min-width: 0;
    align-items: stretch;
    justify-content: center;
    text-align: center;
    pointer-events: auto;
}

.score-crest-button {
    display: flex;
    width: 100%;
    min-height: 100%;
    padding: clamp(6px, 0.9vw, 10px) clamp(4px, 0.8vw, 8px);
    border: 1px solid rgba(114, 89, 78, 0.72);
    border-radius: 14px;
    background: rgba(23, 17, 14, 0.82);
    box-shadow: 0 8px 18px rgba(0, 0, 0, 0.22);
    cursor: pointer;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    gap: 4px;
    text-transform: none;
}

.score-crest-button:hover,
.score-crest-button:focus-visible {
    background: rgba(38, 28, 23, 0.92);
    outline: none;
}

.score-crest-button:focus-visible {
    box-shadow: 0 0 0 2px rgba(229, 196, 115, 0.75), 0 8px 18px rgba(0, 0, 0, 0.22);
}

.score-crest-img {
    display: block;
    width: clamp(50px, 7.4cqw, 86px);
    height: auto;
    transition: transform 0.18s ease, filter 0.18s ease;
}

.score-crest-button:hover .score-crest-img,
.score-crest-button:focus-visible .score-crest-img {
    filter: drop-shadow(0 0 8px rgba(255, 230, 180, 0.65));
    transform: scale(1.04);
}

.score-card-title,
.score-card-subtitle,
.score-crest-button .score-points {
    font-family: "Platypi", serif;
    line-height: 1.05;
    text-align: center;
}

.score-card-title {
    display: block;
    min-height: 2.1em;
    color: #e7d6c4;
    font-size: clamp(9px, 1.2cqw, 14px);
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.03em;
}

.score-card-subtitle {
    display: block;
    color: #c9ab8f;
    font-size: clamp(7px, 0.95cqw, 11px);
}

.score-crest-button .score-points {
    display: block;
    margin-top: 0;
    font-size: clamp(14px, 2.2cqw, 25px);
    font-weight: 800;
    white-space: nowrap;
}

.score-points-left,
.score-points-lilium { color: #c85cac; }
.score-points-right,
.score-points-plumeria { color: #f4dd46; }
.score-points-center,
.score-points-dahlia { color: #f0a03d; }
.score-points-right2,
.score-points-rosa { color: #f44646; }
.score-points-head { color: #e5c473; }

.score-modal[hidden] {
    display: none !important;
}

.score-modal {
    position: fixed;
    inset: 0;
    z-index: 30000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 18px;
}

.score-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(0, 0, 0, 0.68);
}

.score-modal-box {
    position: relative;
    z-index: 1;
    width: min(92vw, 460px);
    max-height: min(84vh, 680px);
    overflow-y: auto;
    padding: 28px 26px 24px;
    background: rgba(39, 29, 24, 0.98);
    border: 1px solid #72594e;
    border-radius: 16px;
    box-shadow: 0 16px 44px rgba(0, 0, 0, 0.55);
    color: #ead7c6;
    text-align: center;
}

.score-modal-box h3 {
    margin: 0 0 18px;
    color: #e5c473;
    font-family: "Platypi", serif;
    font-size: 1.65em;
}

.score-modal-role {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(213, 174, 126, 0.22);
}

.score-modal-role h4 {
    margin: 0 0 8px;
    color: #d7b079;
    font-family: "Platypi", serif;
    font-size: 0.95em;
    text-transform: uppercase;
    letter-spacing: 0.08em;
}

.score-modal-role ul {
    margin: 0;
    padding: 0;
    list-style: none;
    text-align: center;
}

.score-modal-role li {
    margin: 4px 0;
    color: #f0dfcf;
    font-size: 1.05em;
}

.score-modal-role a {
    color: #e0ab7f;
    text-decoration: none;
}

.score-modal-role a:hover {
    color: #f0c39b;
    text-decoration: underline;
}

.score-modal-close {
    position: absolute;
    top: 10px;
    right: 12px;
    display: inline-flex;
    width: 34px;
    height: 34px;
    padding: 0;
    border: 0;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    background: rgba(69, 53, 48, 0.95);
    color: #ead7c6;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    box-shadow: none;
}

.score-modal-close:hover,
.score-modal-close:focus-visible {
    background: #5a4643;
    color: #fff;
}

body.is-score-modal-open {
    overflow: hidden;
}

@media (max-width: 1429px) {
    .scores-overlay.score-crest-row {
        grid-template-columns: repeat(5, minmax(70px, 1fr));
        gap: 8px;
        margin-top: -24px;
    }

    .score-crest-button {
        border-radius: 11px;
    }

    .score-crest-img {
        width: clamp(42px, 9vw, 70px);
    }
}

@media (max-width: 1429px) {
    #contentScores {
        overflow: visible !important;
    }

    .scores-board {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        flex: none !important;
    }

    .score-tree-image {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
    }

    .scores-overlay.score-crest-row {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;
        margin-top: 10px;
        padding: 0;
    }

    .score-card-head {
        grid-column: 1 / -1;
    }

    .score-crest-button {
        min-height: 0;
        padding: 8px 6px;
    }

    .score-crest-img {
        width: clamp(50px, 18vw, 76px) !important;
    }

    .score-card-title {
        min-height: 0;
        font-size: clamp(10px, 3.1vw, 13px);
    }

    .score-crest-button .score-points {
        font-size: clamp(14px, 4.8vw, 20px) !important;
    }

    .score-modal-box {
        width: min(94vw, 420px);
        padding: 26px 18px 22px;
    }
}

@media (max-width: 420px) {
    .scores-overlay.score-crest-row {
        grid-template-columns: 1fr;
    }
}

/* =========================================================
   FINAL FIX: centered score cards after using area_srodek
   This overrides older absolute .scores-overlay rules.
========================================================= */

#contentScores {
    width: 100% !important;
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
}

#contentScores .scores-board {
    position: relative !important;
    display: flex !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: flex-start !important;
}

#contentScores .score-tree-image-wrap {
    display: flex !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek {
    display: flex !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    align-items: center !important;
    justify-content: center !important;
}

#contentScores .score-tree-image-wrap .srodek > * {
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentScores .score-tree-image-wrap img,
#contentScores .score-tree-image {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentScores .scores-overlay.score-crest-row {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(10px, 1.6vw, 18px) !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    height: auto !important;
    margin: clamp(-120px, -9vw, -54px) auto 0 !important;
    padding: 0 clamp(8px, 1.2vw, 14px) !important;
    z-index: 5 !important;
    pointer-events: auto !important;
    align-content: center !important;
    align-items: stretch !important;
    justify-content: center !important;
    justify-items: stretch !important;
}

#contentScores .score-crest-row .score-card {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}

#contentScores .score-crest-row .score-card-head {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
}

@media (max-width: 1429px) {
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: min(100%, 760px) !important;
        max-width: 760px !important;
        margin: clamp(-90px, -8vw, -38px) auto 0 !important;
    }
}

@media (max-width: 1429px) {
    #contentScores {
        overflow: visible !important;
    }

    #contentScores .scores-board,
    #contentScores .score-tree-image-wrap,
    #contentScores .score-tree-image-wrap .srodek {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        margin: 12px auto 0 !important;
        padding: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }
}

@media (max-width: 420px) {
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   FINAL FIX: area_srodek content goes UNDER the tree, not beside it
========================================================= */

#contentScores .score-tree-image-wrap .srodek {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek > img,
#contentScores .score-tree-image-wrap .srodek > p > img,
#contentScores .score-tree-image-wrap .score-tree-image {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentScores .score-tree-image-wrap .srodek > *:not(img):not(picture):not(source) {
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 860px !important;
    margin: 18px auto 0 auto !important;
}

/* CMS często owija obrazek w <p>; ten reset blokuje układ obok obrazka. */
#contentScores .score-tree-image-wrap .srodek > p {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek > p:has(img) {
    margin-bottom: 0 !important;
}

/* Karty domów zostają pod obrazem i są wycentrowane. */
#contentScores .scores-overlay.score-crest-row {
    clear: both !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* =========================================================
   FINAL FIX: events/content from area_srodek below the whole score tree
========================================================= */

#contentScores .score-tree-image-wrap {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap img,
#contentScores .score-tree-image {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
}

#contentScores .score-srodek-below {
    clear: both !important;
    display: block !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    margin: 24px auto 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
}

#contentScores .score-srodek-below > * {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentScores .score-srodek-below .eventsSection,
#contentScores .score-srodek-below .middleContentBlock,
#contentScores .score-srodek-below #contentSmall2 {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* =========================================================
   FINAL FIX: center house cards ON the tree
   Keeps events below the full score section.
========================================================= */

#contentScores .scores-board {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-bottom: clamp(18px, 2vw, 28px) !important;
}

#contentScores .score-tree-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentScores .scores-overlay.score-crest-row {
    position: relative !important;
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(10px, 1.5vw, 18px) !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    height: auto !important;
    margin-left: auto !important;
    margin-right: auto !important;

    /* To jest klucz: podnosi kafle na środek drzewa. */
    margin-top: clamp(-430px, -34vw, -245px) !important;

    padding: 0 clamp(8px, 1.2vw, 14px) !important;
    z-index: 10 !important;
    pointer-events: auto !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    transform: none !important;
    inset: auto !important;
}

#contentScores .score-crest-row .score-card {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    margin: 0 !important;
}

#contentScores .score-crest-row .score-card-head {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
}

#contentScores .score-srodek-below {
    margin-top: clamp(22px, 2.5vw, 34px) !important;
}

@media (max-width: 900px) {
    #contentScores .scores-overlay.score-crest-row {
        margin-top: clamp(-360px, -32vw, -210px) !important;
        width: min(100%, 800px) !important;
        max-width: 800px !important;
    }
}

@media (max-width: 700px) {
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 12px !important;
        padding: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }
}

@media (max-width: 420px) {
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   FINAL FIX: cards overlay tree without pushing news/right column
   This neutralizes the previous negative-margin flow layout.
========================================================= */

.contentColumn,
#contentScores,
#contentSmall {
    min-width: 0 !important;
}

#contentScores {
    display: block !important;
    width: 100% !important;
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
}

#contentScores .scores-board {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;

    /* gives room for absolute cards so following content/news do not slide or overlap */
    padding-bottom: clamp(240px, 28vw, 360px) !important;
}

#contentScores .score-tree-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap img,
#contentScores .score-tree-image {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
}

/* Cards are now an overlay centered inside the board, not a normal block in layout flow. */
#contentScores .scores-overlay.score-crest-row {
    position: absolute !important;
    top: 48% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;

    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(10px, 1.5vw, 18px) !important;

    width: min(100%, 860px) !important;
    max-width: 860px !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 clamp(8px, 1.2vw, 14px) !important;

    z-index: 10 !important;
    pointer-events: auto !important;
    align-items: stretch !important;
    justify-items: stretch !important;
}

#contentScores .score-crest-row .score-card {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}

#contentScores .score-crest-row .score-card-head {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
}

/* Content extracted from srodek, e.g. events, stays below the entire tree+cards block. */
#contentScores .score-srodek-below {
    clear: both !important;
    display: block !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    min-width: 0 !important;
    margin: 24px auto 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
}

#contentScores .score-srodek-below > * {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

/* News/content below score section must return to normal center column. */
#contentSmall {
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 1100px !important;
    min-width: 0 !important;
    margin: 18px auto 20px auto !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
}

@media (max-width: 900px) {
    #contentScores .scores-board {
        padding-bottom: clamp(220px, 30vw, 330px) !important;
    }

    #contentScores .scores-overlay.score-crest-row {
        top: 49% !important;
        width: min(100%, 800px) !important;
        max-width: 800px !important;
    }
}

@media (max-width: 700px) {
    #contentScores .scores-board {
        padding-bottom: 0 !important;
    }

    #contentScores .scores-overlay.score-crest-row {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 12px auto 0 auto !important;
        padding: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }
}

@media (max-width: 420px) {
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   FINAL FIX: cards positioned relative to the TREE IMAGE only
   Do not push news/right column; events stay below score section.
========================================================= */

#contentScores {
    width: 100% !important;
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    overflow: visible !important;
}

#contentScores .scores-board {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-bottom: 0 !important;
}

#contentScores .score-tree-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto clamp(250px, 24vw, 330px) auto !important;
    padding: 0 !important;
    text-align: center !important;
    overflow: visible !important;
}

#contentScores .score-tree-image-wrap .srodek {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap img,
#contentScores .score-tree-image {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
}

/* The cards are now INSIDE .score-tree-image-wrap, so top:% is based on the tree image area. */
#contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
    position: absolute !important;
    top: 54% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;

    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: clamp(10px, 1.5vw, 18px) !important;

    width: min(100%, 860px) !important;
    max-width: 860px !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 clamp(8px, 1.2vw, 14px) !important;

    z-index: 20 !important;
    pointer-events: auto !important;
    align-items: stretch !important;
    justify-items: stretch !important;
    align-content: start !important;
}

#contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row .score-card {
    position: relative !important;
    inset: auto !important;
    transform: none !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    margin: 0 !important;
}

#contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row .score-card-head {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
}

/* Events/content extracted from srodek go below tree+cards. */
#contentScores .score-srodek-below {
    clear: both !important;
    display: block !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    min-width: 0 !important;
    margin: 24px auto 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
}

#contentScores .score-srodek-below > * {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentSmall {
    clear: both !important;
    display: block !important;
    width: 100% !important;
    max-width: 1100px !important;
    min-width: 0 !important;
    margin: 18px auto 20px auto !important;
    float: none !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
}

@media (max-width: 900px) {
    #contentScores .score-tree-image-wrap {
        margin-bottom: clamp(220px, 25vw, 300px) !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        top: 55% !important;
        width: min(100%, 800px) !important;
        max-width: 800px !important;
    }
}

@media (max-width: 700px) {
    #contentScores .score-tree-image-wrap {
        margin-bottom: 16px !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 12px auto 0 auto !important;
        padding: 0 !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }
}

@media (max-width: 420px) {
    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}

/* =========================================================
   HARD FIX: restore compact score cards on the tree
   - crests are small again
   - cards are centered on the lower half of the tree
   - events stay below cards
========================================================= */

#contentScores,
#contentScores * {
    box-sizing: border-box !important;
}

#contentScores {
    width: 100% !important;
    max-width: 1050px !important;
    margin: 0 auto !important;
    overflow: visible !important;
}

#contentScores .scores-board {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto !important;
    padding: 0 !important;
}

#contentScores .score-tree-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    min-width: 0 !important;
    margin: 0 auto clamp(0px, 21vw, 0px) auto !important;
    padding: 0 !important;
    overflow: visible !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap .srodek {
    display: block !important;
    width: 100% !important;
    max-width: 980px !important;
    margin: 0 auto !important;
    padding: 0 !important;
    text-align: center !important;
}

#contentScores .score-tree-image-wrap img.score-tree-image,
#contentScores .score-tree-image-wrap .srodek > img,
#contentScores .score-tree-image-wrap .srodek > p > img {
    display: block !important;
    width: min(100%, 980px) !important;
    max-width: 100% !important;
    height: auto !important;
    margin: 0 auto !important;
}

/* Cards grid positioned over the trunk/base area. */
#contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
    position: absolute !important;
    top: 25% !important;
    left: 50% !important;
    right: auto !important;
    bottom: auto !important;
    transform: translateX(-50%) !important;

    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 14px 18px !important;

    width: min(92%, 760px) !important;
    max-width: 760px !important;
    min-width: 0 !important;
    height: auto !important;

    margin: 0 !important;
    padding: 0 !important;
    z-index: 20 !important;
    pointer-events: auto !important;
    align-items: stretch !important;
    justify-items: stretch !important;
}

/* Reset all old absolute/house rules on score cards. */
#contentScores .score-crest-row .score-card,
#contentScores .score-crest-row .score-card-lilium,
#contentScores .score-crest-row .score-card-plumeria,
#contentScores .score-crest-row .score-card-dahlia,
#contentScores .score-crest-row .score-card-rosa,
#contentScores .score-crest-row .score-card-head {
    position: relative !important;
    inset: auto !important;
    top: auto !important;
    right: auto !important;
    bottom: auto !important;
    left: auto !important;
    transform: none !important;

    display: block !important;
    width: 100% !important;
    max-width: none !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 112px !important;
    margin: 0 !important;
    padding: 0 !important;
}

#contentScores .score-crest-row .score-card-head {
    grid-column: 1 / -1 !important;
    justify-self: center !important;
    width: min(100%, 420px) !important;
    max-width: 420px !important;
    min-height: 112px !important;
}

/* Button fills compact card. */
#contentScores .score-crest-row .score-crest-button {
    appearance: none !important;
    -webkit-appearance: none !important;

    display: flex !important;
    width: 100% !important;
    min-height: 112px !important;
    height: 100% !important;
    margin: 0 !important;
    padding: 12px 14px 14px !important;

    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 4px !important;

    border: 1px solid rgba(125, 83, 66, 0.78) !important;
    border-radius: 14px !important;
    background: rgba(18, 12, 10, 0.72) !important;
    color: inherit !important;
    box-shadow: none !important;
    cursor: pointer !important;
    text-align: center !important;
}

/* Critical: stop crests from becoming huge. */
#contentScores .score-crest-row .score-crest-img,
#contentScores .score-crest-row .score-card img.score-crest-img,
#contentScores .score-crest-row .score-crest-button > img {
    display: block !important;
    width: clamp(48px, 5.7vw, 74px) !important;
    max-width: clamp(48px, 5.7vw, 74px) !important;
    min-width: 0 !important;
    height: auto !important;
    max-height: 78px !important;
    object-fit: contain !important;
    margin: 0 auto 2px auto !important;
    padding: 0 !important;
    flex: 0 0 auto !important;
}

#contentScores .score-crest-row .score-card-title {
    display: block !important;
    width: 100% !important;
    margin: 0 !important;
    font-family: "Platypi", Georgia, "Times New Roman", serif !important;
    font-size: clamp(10px, 0.95vw, 13px) !important;
    line-height: 1.1 !important;
    font-weight: 700 !important;
    text-align: center !important;
    text-transform: uppercase !important;
    color: #fff !important;
}

#contentScores .score-crest-row .score-points {
    display: block !important;
    width: 100% !important;
    margin: 4px 0 0 0 !important;
    font-family: "Platypi", Georgia, "Times New Roman", serif !important;
    font-size: clamp(18px, 2.1vw, 28px) !important;
    line-height: 1 !important;
    font-weight: 700 !important;
    letter-spacing: 0.04em !important;
    text-align: center !important;
}

/* Events below whole score section. */
#contentScores .score-srodek-below {
    clear: both !important;
    display: block !important;
    width: min(100%, 860px) !important;
    max-width: 860px !important;
    margin: 24px auto 0 auto !important;
    position: relative !important;
    z-index: 1 !important;
}

#contentScores .score-srodek-below > * {
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
}

#contentSmall {
    clear: both !important;
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 1100px !important;
    margin: 18px auto 20px auto !important;
    position: relative !important;
    left: auto !important;
    right: auto !important;
    transform: none !important;
}

@media (max-width: 900px) {
    #contentScores .score-tree-image-wrap {
        margin-bottom: clamp(235px, 28vw, 310px) !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        top: 51% !important;
        width: min(94%, 720px) !important;
    }

    #contentScores .score-crest-row .score-crest-button {
        min-height: 104px !important;
    }
}

@media (max-width: 700px) {
    #contentScores .score-tree-image-wrap {
        margin-bottom: 16px !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        transform: none !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 12px auto 0 auto !important;
        padding: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }

    #contentScores .score-crest-row .score-crest-img,
    #contentScores .score-crest-row .score-card img.score-crest-img,
    #contentScores .score-crest-row .score-crest-button > img {
        width: 52px !important;
        max-width: 52px !important;
        max-height: 56px !important;
    }
}

@media (max-width: 420px) {
    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}
/* =========================================================
   SCORE TREE BREAKPOINT FIX
   Desktop od 1430px, mobile poniżej 1430px
========================================================= */

/* DESKTOP: 1430px+ */
@media (min-width: 1430px) {
    #contentScores .score-tree-image-wrap {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        max-width: 980px !important;
        margin: 0 auto !important;
        text-align: center !important;
    }

    #contentScores .score-tree-image,
    #contentScores .score-tree-image-wrap img {
        display: block !important;
        width: min(100%, 980px) !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row,
    #contentScores .scores-overlay.score-crest-row {
        inset: auto !important;
        top: 30% !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: clamp(10px, 1.6vw, 18px) !important;

        width: min(100%, 860px) !important;
        max-width: 860px !important;
        height: auto !important;

        margin: clamp(-120px, -9vw, -54px) auto 0 !important;
        padding: 0 clamp(8px, 1.2vw, 14px) !important;

        z-index: 5 !important;
        pointer-events: auto !important;

        align-content: center !important;
        align-items: stretch !important;
        justify-content: center !important;
        justify-items: stretch !important;
    }

    #contentScores .score-crest-row .score-card {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        justify-self: center !important;
        width: min(100%, 420px) !important;
        max-width: 420px !important;
    }
}

/* MOBILE / TABLET: poniżej 1430px */
@media (max-width: 1429px) {
    #contentScores {
        overflow: visible !important;
    }

    #contentScores .score-tree-image-wrap {
        position: relative !important;
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto 16px !important;
        text-align: center !important;
    }

    #contentScores .score-tree-image,
    #contentScores .score-tree-image-wrap img {
        display: block !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        margin: 0 auto !important;
    }

    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row,
    #contentScores .scores-overlay.score-crest-row {
        position: relative !important;
        inset: auto !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        bottom: auto !important;
        transform: none !important;

        display: grid !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 10px !important;

        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        height: auto !important;

        margin: 12px auto 0 !important;
        padding: 0 !important;

        pointer-events: auto !important;
    }

    #contentScores .score-crest-row .score-card {
        width: 100% !important;
        max-width: none !important;
        min-width: 0 !important;
        margin: 0 !important;
    }

    #contentScores .score-crest-row .score-card-head {
        grid-column: 1 / -1 !important;
        width: 100% !important;
        max-width: none !important;
    }

    #contentScores .score-crest-row .score-crest-img,
    #contentScores .score-crest-row .score-card img.score-crest-img,
    #contentScores .score-crest-row .score-crest-button > img {
        width: 52px !important;
        max-width: 52px !important;
        max-height: 56px !important;
    }
}

/* Bardzo wąskie telefony */
@media (max-width: 420px) {
    #contentScores .score-tree-image-wrap > .scores-overlay.score-crest-row,
    #contentScores .scores-overlay.score-crest-row {
        grid-template-columns: 1fr !important;
    }
}