.ifk-home,
.ifk-home * {
    box-sizing: border-box;
}

.ifk-home {
    --ifk-blue: #1D4289;
    --ifk-blue-dark: #15366f;
    --ifk-blue-deep: #0d2857;
    --ifk-ink: #10243b;
    --ifk-muted: #65748a;
    --ifk-border: rgba(18, 54, 96, .14);
    --ifk-soft: #f3f6fa;
    min-width: 0;
    padding: clamp(.75rem, 2vw, 1.35rem) 0 3.5rem;
    overflow-x: hidden;
    background: linear-gradient(180deg, #f3f6fa 0, #fff 36rem);
    color: var(--ifk-ink);
}

.ifk-home a {
    color: var(--ifk-blue);
}

.ifk-home__shell {
    width: 100%;
    max-width: 84rem;
    min-width: 0;
    margin: 0 auto;
    padding-inline: clamp(1rem, 3vw, 2rem);
}

.ifk-home__hero {
    position: relative;
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    overflow: hidden;
    border-radius: 1.3rem;
    background: var(--ifk-blue);
    box-shadow: 0 1.25rem 3.5rem rgba(29, 66, 137, .24);
    color: #fff;
    isolation: isolate;
}

.ifk-home__hero:before {
    position: absolute;
    inset: 0;
    z-index: -1;
    background:
        radial-gradient(circle at 15% 4%, rgba(255,255,255,.18), transparent 18rem),
        linear-gradient(120deg, rgba(255,255,255,.05), transparent 52%),
        linear-gradient(110deg, transparent 0 62%, rgba(255,255,255,.075) 62% 64%, transparent 64%);
    content: "";
}

.ifk-home__hero-copy {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-width: 0;
    padding: 1.45rem 1.25rem 1.55rem;
}

.ifk-home__hero-topline {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
}

.ifk-home__eyebrow {
    margin: 0 !important;
    color: rgba(255,255,255,.72);
    font-size: .68rem;
    font-weight: 900;
    letter-spacing: .11em;
    line-height: 1.3;
    text-transform: uppercase;
}

.ifk-home__today-link {
    color: rgba(255,255,255,.82) !important;
    font-size: .7rem;
    font-weight: 800;
    text-decoration: none !important;
}

.ifk-home__today-link:hover {
    color: #fff !important;
    text-decoration: underline !important;
}

.ifk-home__date-heading {
    display: grid;
    grid-template-columns: 2.65rem minmax(0, 1fr) 2.65rem;
    align-items: center;
    gap: .4rem;
    margin-top: .72rem;
}

.ifk-home__date-heading > a {
    display: grid;
    width: 2.65rem;
    height: 2.65rem;
    place-items: center;
    border: 1px solid rgba(255,255,255,.22);
    border-radius: .82rem;
    background: rgba(255,255,255,.09);
    color: #fff !important;
    font-size: 1.25rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.ifk-home__date-heading > a:hover,
.ifk-home__date-heading > a:focus-visible {
    border-color: rgba(255,255,255,.42);
    background: rgba(255,255,255,.17);
    transform: translateY(-1px);
}

.ifk-home__date-heading h1 {
    min-width: 0;
    margin: 0 !important;
    color: #fff !important;
    font-size: clamp(2rem, 5vw, 3.75rem);
    letter-spacing: -.045em;
    line-height: .98;
    text-align: center;
}

.ifk-home__date-heading h1 span {
    display: block;
    margin-top: .45rem;
    color: rgba(255,255,255,.88);
    font-size: clamp(.9rem, 1.8vw, 1.12rem);
    font-weight: 700;
    letter-spacing: 0;
    line-height: 1.2;
}

.ifk-home__summary-text {
    max-width: 43rem;
    margin: 1rem auto 0 !important;
    color: rgba(255,255,255,.8);
    font-size: .84rem;
    line-height: 1.55;
    text-align: center;
}

.ifk-home__summary-text strong {
    color: #fff !important;
    font-weight: 850;
}

.ifk-home__date-form {
    display: grid;
    gap: .35rem;
    width: min(25rem, 100%);
    max-width: 100%;
    min-width: 0;
    margin: 1.15rem auto 0;
}

.ifk-home__date-form > label {
    margin: 0 !important;
    color: rgba(255,255,255,.7);
    font-size: .65rem !important;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1.2;
    text-transform: uppercase;
}

.ifk-home__date-control {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: .45rem;
    width: 100%;
    max-width: 100%;
    min-width: 0;
}

.ifk-home__date-control input[type="date"] {
    display: block !important;
    box-sizing: border-box !important;
    width: 100% !important;
    max-width: 100% !important;
    min-width: 0 !important;
    height: 2.75rem !important;
    margin: 0 !important;
    padding: 0 .72rem !important;
    border: 1px solid rgba(255,255,255,.26) !important;
    border-radius: .72rem !important;
    background: rgba(255,255,255,.96) !important;
    box-shadow: none !important;
    color: var(--ifk-ink) !important;
    font: inherit !important;
    font-size: .8rem !important;
}

.ifk-home__date-control button,
.ifk-home__show-all {
    appearance: none !important;
    margin: 0 !important;
    border-radius: .72rem !important;
    box-shadow: none !important;
    font: inherit !important;
    font-size: .75rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    cursor: pointer !important;
}

.ifk-home__date-control button {
    height: 2.75rem !important;
    padding: 0 .85rem !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    background: #fff !important;
    color: var(--ifk-blue) !important;
}

.ifk-home__date-control button:hover {
    background: #edf3fb !important;
}

.ifk-home__hero-metrics {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: .42rem .85rem;
    margin-top: 1rem;
    color: rgba(255,255,255,.67);
    font-size: .67rem;
    line-height: 1.35;
}

.ifk-home__hero-metrics > span + span:before {
    margin-right: .85rem;
    color: rgba(255,255,255,.3);
    content: "•";
}

.ifk-home__hero-metrics strong {
    color: #fff !important;
}

.ifk-home__trend {
    display: inline-flex;
    align-items: center;
    gap: .2rem;
}

.ifk-home__trend:before {
    display: none;
}

.ifk-home__trend-result {
    display: grid;
    width: 1.25rem;
    height: 1.25rem;
    place-items: center;
    border-radius: .38rem;
    color: #fff !important;
    font-size: .55rem;
    font-weight: 900;
    text-decoration: none !important;
}

.ifk-home__trend-result--w { background: #149447; }
.ifk-home__trend-result--d { background: #d58b00; }
.ifk-home__trend-result--l { background: #c94646; }

.ifk-home__hero-media {
    position: relative;
    height: 13rem;
    overflow: hidden;
    background: #dce4ee;
}

.ifk-home__hero-media:after {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(29,66,137,.15), transparent 30%);
    content: "";
    pointer-events: none;
}

.ifk-home__hero-gallery {
    position: absolute;
    inset: 0;
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
}

.ifk-home__hero-gallery--1 {
    grid-template-columns: minmax(0, 1fr);
}

.ifk-home__hero-gallery--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.ifk-home__hero-gallery > a,
.ifk-home__hero-gallery > div {
    display: block;
    min-width: 0;
    height: 100%;
    overflow: hidden;
}

.ifk-home__hero-gallery img {
    display: block !important;
    width: 100% !important;
    height: calc(100% + 30px) !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center top !important;
    filter: grayscale(.12) saturate(.84) contrast(1.04);
    transition: transform .35s ease, filter .35s ease;
}

.ifk-home__hero-gallery > a:hover img {
    transform: scale(1.025);
    filter: grayscale(0) saturate(1) contrast(1.02);
}

.ifk-home__day-content,
.ifk-home__section {
    margin-top: clamp(1.2rem, 3vw, 2rem);
}

.ifk-home__day-content {
    overflow: hidden;
    border: 1px solid var(--ifk-border);
    border-radius: 1.18rem;
    background: rgba(255,255,255,.97);
    box-shadow: 0 .8rem 2.2rem rgba(16,36,59,.065);
}

.ifk-home__tabs {
    display: flex;
    gap: .35rem;
    padding: .65rem;
    overflow-x: auto;
    border-bottom: 1px solid var(--ifk-border);
    background: #f8fafc;
    scrollbar-width: none;
}

.ifk-home__tabs::-webkit-scrollbar {
    display: none;
}

.ifk-home__tabs button {
    appearance: none !important;
    display: inline-flex !important;
    flex: 0 0 auto !important;
    align-items: center !important;
    gap: .38rem !important;
    min-height: 2.55rem !important;
    margin: 0 !important;
    padding: .55rem .72rem !important;
    border: 1px solid transparent !important;
    border-radius: .72rem !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--ifk-muted) !important;
    font: inherit !important;
    font-size: .75rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    cursor: pointer !important;
}

.ifk-home__tabs button:hover {
    background: #edf3fa !important;
    color: var(--ifk-blue) !important;
}

.ifk-home__tabs button[aria-selected="true"] {
    border-color: rgba(29,66,137,.12) !important;
    background: #e5eef9 !important;
    color: var(--ifk-blue) !important;
}

.ifk-home__tabs small {
    display: grid;
    min-width: 1.35rem;
    height: 1.35rem;
    place-items: center;
    border-radius: .42rem;
    background: rgba(29,66,137,.08);
    color: inherit;
    font-size: .66rem;
}

.ifk-home__panel {
    padding: clamp(1rem, 2.7vw, 1.55rem);
}

.ifk-home.is-enhanced .ifk-home__panel:not(.is-active) {
    display: none;
}

.ifk-home__section-heading {
    display: flex;
    align-items: flex-end;
    justify-content: space-between;
    gap: 1rem;
    margin-bottom: 1rem;
}

.ifk-home__section-heading > div {
    min-width: 0;
}

.ifk-home__section-heading p {
    margin: 0 0 .18rem !important;
    color: var(--ifk-blue);
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: .1em;
    line-height: 1.2;
    text-transform: uppercase;
}

.ifk-home__section-heading h2 {
    margin: 0 !important;
    color: var(--ifk-ink) !important;
    font-size: clamp(1.3rem, 2.8vw, 1.85rem);
    letter-spacing: -.025em;
    line-height: 1.15;
}

.ifk-home__section-heading > span,
.ifk-home__section-heading > a {
    flex: 0 0 auto;
    color: var(--ifk-muted);
    font-size: .72rem;
    font-weight: 800;
    text-decoration: none;
}

.ifk-home__section-heading > a {
    color: var(--ifk-blue);
}

.ifk-home__section-heading > a:hover {
    text-decoration: underline;
}

.ifk-home__match-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 1rem;
}

.ifk-home__match-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--ifk-border);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .45rem 1.2rem rgba(16,36,59,.055);
    transition: transform .2s ease, box-shadow .2s ease, border-color .2s ease;
}

.ifk-home.is-enhanced .ifk-home__match-card.is-extra:not(.is-revealed) {
    display: none;
}

.ifk-home__match-card:hover {
    transform: translateY(-.18rem);
    border-color: rgba(29,66,137,.28);
    box-shadow: 0 .75rem 1.8rem rgba(16,36,59,.1);
}

.ifk-home__match-card-link {
    display: grid;
    grid-template-rows: auto 1fr;
    height: 100%;
    min-width: 0;
    color: inherit !important;
    text-decoration: none !important;
}

.ifk-home__match-image {
    position: relative;
    display: block;
    height: clamp(8.75rem, 11vw, 10.25rem);
    overflow: hidden;
    background: #e5ebf2;
}

.ifk-home__match-image:after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 2.5rem;
    background: linear-gradient(transparent, rgba(6,24,51,.12));
    content: "";
    pointer-events: none;
}

.ifk-home__match-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform .25s ease;
}

.ifk-home__match-card:hover .ifk-home__match-image img {
    transform: scale(1.025);
}

.ifk-home__match-body {
    display: flex;
    flex-direction: column;
    min-width: 0;
    height: 100%;
    padding: .95rem .95rem 0;
    text-align: center;
}

.ifk-home__teams {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(3.6rem, auto) minmax(0, 1fr);
    align-items: center;
    gap: .65rem;
    min-height: 5.2rem;
}

.ifk-home__team {
    display: grid;
    min-width: 0;
    grid-template-rows: 3rem auto;
    align-items: center;
}

.ifk-home__team img {
    display: block !important;
    width: auto !important;
    height: 2.75rem !important;
    max-width: 4.25rem !important;
    max-height: 2.75rem !important;
    margin: 0 auto !important;
    object-fit: contain !important;
}

.ifk-home__team > span {
    display: -webkit-box;
    min-height: 1.8rem;
    overflow: hidden;
    color: #526176;
    font-size: .72rem;
    font-weight: 750;
    line-height: 1.25;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
}

.ifk-home__score {
    min-width: 3.8rem;
    color: var(--ifk-ink) !important;
    font-size: clamp(1.55rem, 2.1vw, 1.85rem);
    font-weight: 900;
    letter-spacing: -.05em;
    line-height: 1;
    white-space: nowrap;
}

.ifk-home__score--w { color: #148342 !important; }
.ifk-home__score--d { color: #cf8500 !important; }
.ifk-home__score--l { color: #c23f43 !important; }

.ifk-home__match-context {
    display: grid;
    gap: .16rem;
    margin: .8rem -.95rem 0;
    padding: .72rem .95rem .82rem;
    border-top: 1px solid rgba(18,54,96,.09);
    background: #f7f9fc;
    text-align: center;
}

.ifk-home__match-context time {
    color: var(--ifk-blue);
    font-size: .84rem;
    font-weight: 900;
    line-height: 1.25;
}

.ifk-home__match-competition {
    color: #647287;
    font-size: .72rem;
    font-weight: 700;
    line-height: 1.35;
}

.ifk-home__match-context small {
    display: block;
    color: #8793a4;
    font-size: .67rem;
    line-height: 1.35;
}

.ifk-home__match-card-link:hover .ifk-home__match-context time,
.ifk-home__match-card-link:focus-visible .ifk-home__match-context time {
    text-decoration: underline;
    text-underline-offset: .16em;
}

.ifk-home__show-all {
    display: none !important;
    min-height: 2.65rem !important;
    margin: 1.15rem auto 0 !important;
    padding: .55rem .9rem !important;
    border: 1px solid var(--ifk-blue) !important;
    background: #fff !important;
    color: var(--ifk-blue) !important;
}

.ifk-home.is-enhanced .ifk-home__show-all {
    display: block !important;
}

.ifk-home__show-all:hover {
    background: #edf3fb !important;
}

.ifk-home__photo-grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0,1fr));
    gap: .65rem;
}

.ifk-home__photo-grid a {
    display: block;
    min-width: 0;
    height: 9.5rem;
    overflow: hidden;
    border-radius: .82rem;
    background: #e5ebf2;
    box-shadow: 0 .35rem 1rem rgba(16,36,59,.08);
}

.ifk-home__photo-grid img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    transition: transform .25s ease;
}

.ifk-home__photo-grid a:hover img {
    transform: scale(1.035);
}

.ifk-home__people-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0,1fr));
    gap: 1rem;
}

.ifk-home__people-columns--single {
    grid-template-columns: minmax(0,1fr);
}

.ifk-home__people-columns > section {
    min-width: 0;
    padding: 1rem;
    border: 1px solid var(--ifk-border);
    border-radius: 1rem;
    background: #fff;
}

.ifk-home__people-columns h3 {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: .7rem;
    margin: 0 0 .55rem !important;
    color: var(--ifk-ink) !important;
    font-size: .95rem;
    line-height: 1.25;
}

.ifk-home__people-columns h3 small {
    display: grid;
    min-width: 1.55rem;
    height: 1.55rem;
    place-items: center;
    border-radius: .48rem;
    background: #e9f0f9;
    color: var(--ifk-blue);
    font-size: .62rem;
}

.ifk-home__people-list {
    display: grid;
}

.ifk-home__person {
    display: grid;
    grid-template-columns: 4.2rem minmax(0,1fr);
    gap: .75rem;
    padding: .72rem 0;
    border-top: 1px solid rgba(18,54,96,.09);
}

.ifk-home__person:first-child {
    border-top: 0;
}

.ifk-home__person-year {
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 3.2rem;
    padding: .48rem;
    border-radius: .72rem;
    background: #edf3fa;
    text-align: center;
}

.ifk-home__person-year strong {
    color: var(--ifk-blue) !important;
    font-size: .86rem;
    line-height: 1;
}

.ifk-home__person-year span {
    margin-top: .25rem;
    color: var(--ifk-muted);
    font-size: .55rem;
    line-height: 1.15;
}

.ifk-home__person-copy {
    min-width: 0;
}

.ifk-home__person-copy > a {
    color: var(--ifk-blue) !important;
    font-size: .9rem;
    font-weight: 850;
    line-height: 1.25;
    text-decoration: none !important;
}

.ifk-home__person-copy > a:hover {
    text-decoration: underline !important;
}

.ifk-home__person-copy p {
    margin: .2rem 0 0 !important;
    color: var(--ifk-muted);
    font-size: .74rem;
    line-height: 1.45;
}

.ifk-home__person-copy small {
    display: block;
    margin-top: .18rem;
    color: #8a96a6;
    font-size: .68rem;
    line-height: 1.4;
}

.ifk-home__people-empty,
.ifk-home__empty {
    margin: 0 !important;
    padding: 1.6rem 1rem;
    border: 1px dashed rgba(18,54,96,.18);
    border-radius: .9rem;
    background: #f8fafc;
    color: var(--ifk-muted);
    font-size: .8rem;
    line-height: 1.5;
    text-align: center;
}

.ifk-home__people-empty {
    padding: .85rem;
}

.ifk-home__section {
    padding: clamp(1rem, 2.6vw, 1.45rem);
    border: 1px solid var(--ifk-border);
    border-radius: 1.15rem;
    background: #fff;
    box-shadow: 0 .7rem 2rem rgba(16,36,59,.06);
}

.ifk-home__latest-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: .85rem;
}

.ifk-home__latest-card {
    display: grid;
    grid-template-columns: 6.4rem minmax(0,1fr);
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--ifk-border);
    border-radius: .95rem;
    background: #fff;
}

.ifk-home__latest-image {
    display: grid;
    min-height: 9rem;
    place-items: center;
    overflow: hidden;
    background: #edf2f8;
}

.ifk-home__latest-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
}

.ifk-home__latest-image--crest img {
    width: 4rem !important;
    height: 4rem !important;
    object-fit: contain !important;
}

.ifk-home__latest-card > div {
    min-width: 0;
    padding: .95rem 1rem;
}

.ifk-home__latest-card span {
    display: block;
    color: var(--ifk-muted);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1.2;
    text-transform: uppercase;
}

.ifk-home__latest-card h3 {
    margin: .23rem 0 0 !important;
    overflow: hidden;
    color: var(--ifk-ink) !important;
    font-size: 1rem;
    line-height: 1.28;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ifk-home__latest-card h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

.ifk-home__latest-card p {
    margin: .28rem 0 0 !important;
    color: var(--ifk-muted);
    font-size: .78rem;
    line-height: 1.5;
}

.ifk-home__latest-link {
    display: inline-block;
    margin-top: .45rem;
    color: var(--ifk-blue) !important;
    font-size: .74rem;
    font-weight: 850;
    text-decoration: none !important;
}

.ifk-home__latest-link:hover {
    text-decoration: underline !important;
}

.ifk-home__article-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0,1fr));
    gap: .9rem;
}

.ifk-home__article-card {
    min-width: 0;
    overflow: hidden;
    border: 1px solid var(--ifk-border);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .4rem 1.2rem rgba(16,36,59,.05);
}

.ifk-home__article-card > a {
    display: block;
    height: 11rem;
    overflow: hidden;
}

.ifk-home__article-card img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    transition: transform .25s ease;
}

.ifk-home__article-card:hover img {
    transform: scale(1.025);
}

.ifk-home__article-card > div {
    padding: .9rem .95rem 1rem;
}

.ifk-home__article-card h3 {
    margin: 0 !important;
    color: var(--ifk-ink) !important;
    font-size: 1rem;
    line-height: 1.38;
}

.ifk-home__article-card h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

.ifk-home__article-card h3 a:hover {
    color: var(--ifk-blue) !important;
}

.ifk-home__article-card p {
    margin: .5rem 0 0 !important;
    color: var(--ifk-muted);
    font-size: .8rem;
    line-height: 1.58;
}


.ifk-home__article-meta {
    display: block;
    margin-bottom: .35rem;
    color: var(--ifk-blue);
    font-size: .66rem;
    font-weight: 850;
    letter-spacing: .045em;
    line-height: 1.35;
    text-transform: uppercase;
}

.ifk-home__article-link {
    display: inline-block;
    margin-top: .65rem;
    color: var(--ifk-blue) !important;
    font-size: .74rem;
    font-weight: 850;
    text-decoration: none !important;
}

.ifk-home__article-link:hover {
    text-decoration: underline !important;
}

.ifk-home__database {
    background: linear-gradient(145deg, var(--ifk-blue-deep), var(--ifk-blue));
    color: #fff;
}

.ifk-home__database .ifk-home__section-heading p,
.ifk-home__database .ifk-home__section-heading h2 {
    color: #fff !important;
}

.ifk-home__database .ifk-home__section-heading p {
    opacity: .66;
}

.ifk-home__database-grid {
    display: grid;
    grid-template-columns: repeat(5, minmax(0,1fr));
    gap: .55rem;
}

.ifk-home__database-grid a,
.ifk-home__database-item {
    display: flex;
    align-items: baseline;
    gap: .42rem;
    min-width: 0;
    padding: .75rem .8rem;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: .78rem;
    background: rgba(255,255,255,.07);
    color: #fff !important;
    text-decoration: none !important;
    transition: background-color .18s ease, border-color .18s ease;
}

.ifk-home__database-grid a:hover {
    border-color: rgba(255,255,255,.3);
    background: rgba(255,255,255,.13);
}

.ifk-home__database-grid strong {
    flex: 0 0 auto;
    color: #fff !important;
    font-size: 1.02rem;
    line-height: 1;
}

.ifk-home__database-grid span {
    min-width: 0;
    overflow: hidden;
    color: rgba(255,255,255,.72);
    font-size: .68rem;
    line-height: 1.2;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.ifk-home__note {
    margin: .9rem 0 0 !important;
    color: rgba(255,255,255,.58);
    font-size: .61rem;
    line-height: 1.45;
}

.ifk-home__database-empty {
    margin: 0 !important;
    padding: .85rem;
    border: 1px solid rgba(255,255,255,.15);
    border-radius: .78rem;
    background: rgba(255,255,255,.07);
    color: rgba(255,255,255,.75);
    font-size: .78rem;
}

@media (min-width: 48rem) {
    .ifk-home__hero {
        grid-template-columns: minmax(0, 3fr) minmax(18rem, 2fr);
        min-height: clamp(20rem, 29vw, 23rem);
    }

    .ifk-home__hero-copy {
        padding: clamp(1.65rem, 3.5vw, 2.55rem);
    }

    .ifk-home__hero-media {
        height: auto;
        min-height: 100%;
    }
}

@media (max-width: 68rem) {
    .ifk-home__database-grid {
        grid-template-columns: repeat(4, minmax(0,1fr));
    }

    .ifk-home__match-grid,
    .ifk-home__latest-grid,
    .ifk-home__article-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .ifk-home__photo-grid {
        grid-template-columns: repeat(3, minmax(0,1fr));
    }

    .ifk-home__database-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }
}

@media (max-width: 47.99rem) {
    .ifk-home {
        padding-top: .7rem;
    }

    .ifk-home__hero-copy {
        padding: 1.35rem 1rem 1.45rem;
    }

    .ifk-home__date-heading {
        grid-template-columns: 2.35rem minmax(0,1fr) 2.35rem;
    }

    .ifk-home__date-heading > a {
        width: 2.35rem;
        height: 2.35rem;
        border-radius: .72rem;
    }

    .ifk-home__date-heading h1 {
        font-size: clamp(1.75rem, 9.5vw, 2.55rem);
    }

    .ifk-home__hero-metrics {
        display: none;
    }

    .ifk-home__hero-media {
        display: none;
    }

    .ifk-home__match-grid,
    .ifk-home__latest-grid,
    .ifk-home__article-grid,
    .ifk-home__people-columns {
        grid-template-columns: minmax(0,1fr);
    }

    .ifk-home__match-image {
        height: 12rem;
    }

    .ifk-home__match-body {
        padding-inline: 1rem;
    }

    .ifk-home__match-context {
        margin-inline: -1rem;
        padding-inline: 1rem;
    }

    .ifk-home__team img {
        height: 3rem !important;
        max-height: 3rem !important;
    }

    .ifk-home__team > span {
        font-size: .76rem;
    }

    .ifk-home__photo-grid {
        grid-template-columns: repeat(2, minmax(0,1fr));
    }

    .ifk-home__photo-grid a {
        height: 8rem;
    }

    .ifk-home__section-heading {
        align-items: flex-start;
    }

    .ifk-home__latest-card {
        grid-template-columns: 6rem minmax(0,1fr);
    }
}

@media (max-width: 26rem) {
    .ifk-home__date-form,
    .ifk-home__date-control {
        width: 100%;
        max-width: 100%;
        min-width: 0;
    }

    .ifk-home__date-control {
        display: flex;
        flex-direction: column;
    }

    .ifk-home__date-control input[type="date"],
    .ifk-home__date-control button {
        box-sizing: border-box !important;
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
    }

    .ifk-home__date-control input[type="date"] {
        -webkit-appearance: none !important;
        appearance: none !important;
        overflow: hidden;
        font-size: 16px !important;
    }

    .ifk-home__date-control input[type="date"]::-webkit-date-and-time-value {
        min-width: 0;
        margin: 0;
        text-align: left;
    }

    .ifk-home__date-control input[type="date"]::-webkit-calendar-picker-indicator {
        flex: 0 0 auto;
        margin-left: auto;
    }

    .ifk-home__tabs button {
        padding-inline: .58rem !important;
    }

    .ifk-home__photo-grid,
    .ifk-home__database-grid {
        grid-template-columns: minmax(0,1fr);
    }

    .ifk-home__photo-grid a {
        height: 11rem;
    }

    .ifk-home__person {
        grid-template-columns: 3.8rem minmax(0,1fr);
    }
}

@media (prefers-reduced-motion: reduce) {
    .ifk-home *,
    .ifk-home *:before,
    .ifk-home *:after {
        scroll-behavior: auto !important;
        transition: none !important;
    }
}

/* Compact hero aligned with the match and season page visual system */
.ifk-home__hero {
    border-radius: 1.05rem;
    box-shadow: 0 1rem 2.5rem rgba(16, 36, 59, .16);
}

.ifk-home__hero:before {
    background:
        radial-gradient(circle at 12% 0, rgba(255,255,255,.14), transparent 14rem),
        linear-gradient(115deg, rgba(255,255,255,.045), transparent 48%),
        linear-gradient(180deg, rgba(255,255,255,.025), rgba(4,24,56,.08));
}

.ifk-home__hero-copy {
    padding: 1.05rem 1.1rem 1.15rem;
}

.ifk-home__eyebrow,
.ifk-home__today-link {
    font-size: .62rem;
}

.ifk-home__date-heading {
    grid-template-columns: 2.2rem minmax(0, 1fr) 2.2rem;
    gap: .35rem;
    margin-top: .45rem;
}

.ifk-home__date-heading > a {
    width: 2.2rem;
    height: 2.2rem;
    border-radius: .65rem;
    font-size: 1.05rem;
}

.ifk-home__date-heading h1 {
    font-size: clamp(1.75rem, 4vw, 3rem);
    line-height: 1;
}

.ifk-home__date-heading h1 span {
    margin-top: .28rem;
    font-size: clamp(.76rem, 1.45vw, .94rem);
}

.ifk-home__summary-text {
    max-width: 38rem;
    margin-top: .62rem !important;
    font-size: .76rem;
    line-height: 1.42;
}

.ifk-home__date-form {
    gap: .25rem;
    width: min(22rem, 100%);
    margin-top: .72rem;
}

.ifk-home__date-form > label {
    font-size: .58rem !important;
}

.ifk-home__date-control {
    gap: .35rem;
}

.ifk-home__date-control input[type="date"],
.ifk-home__date-control button {
    height: 2.3rem !important;
    border-radius: .62rem !important;
}

.ifk-home__date-control input[type="date"] {
    padding-inline: .62rem !important;
    font-size: .75rem !important;
}

.ifk-home__date-control button {
    padding-inline: .72rem !important;
    font-size: .7rem !important;
}

.ifk-home__hero-metrics {
    justify-content: center;
    gap: .35rem .7rem;
    margin-top: .68rem;
    padding-top: .62rem;
    border-top: 1px solid rgba(255,255,255,.11);
    font-size: .62rem;
}

.ifk-home__hero-metrics > span + span:before {
    margin-right: .7rem;
}

.ifk-home__trend-result {
    width: 1.12rem;
    height: 1.12rem;
    border-radius: .34rem;
    font-size: .5rem;
}

.ifk-home__hero-media:before {
    position: absolute;
    inset: 0 auto 0 0;
    z-index: 2;
    width: clamp(2.5rem, 7vw, 5.5rem);
    background: linear-gradient(90deg, var(--ifk-blue), rgba(29,66,137,.72) 35%, transparent);
    content: "";
    pointer-events: none;
}

.ifk-home__hero-media:after {
    z-index: 2;
    background:
        linear-gradient(180deg, rgba(8,35,76,.08), rgba(8,35,76,.2)),
        linear-gradient(90deg, rgba(29,66,137,.08), transparent 35%);
}

.ifk-home__hero-gallery img {
    height: 100% !important;
    object-position: center !important;
}

@media (min-width: 48rem) {
    .ifk-home__hero {
        grid-template-columns: minmax(0, 1.38fr) minmax(18rem, .92fr);
        min-height: clamp(15.5rem, 21vw, 17.5rem);
    }

    .ifk-home__hero-copy {
        padding: clamp(1rem, 2.2vw, 1.4rem) clamp(1.15rem, 2.6vw, 1.75rem);
    }

    .ifk-home__hero-media {
        min-height: clamp(15.5rem, 21vw, 17.5rem);
    }
}

@media (max-width: 47.99rem) {
    .ifk-home {
        padding-top: .55rem;
    }

    .ifk-home__hero {
        border-radius: .92rem;
        box-shadow: 0 .75rem 1.8rem rgba(16, 36, 59, .14);
    }

    .ifk-home__hero-copy {
        padding: .9rem .82rem 1rem;
    }

    .ifk-home__hero-topline {
        gap: .6rem;
    }

    .ifk-home__date-heading {
        grid-template-columns: 2rem minmax(0,1fr) 2rem;
        margin-top: .38rem;
    }

    .ifk-home__date-heading > a {
        width: 2rem;
        height: 2rem;
        border-radius: .58rem;
        font-size: .95rem;
    }

    .ifk-home__date-heading h1 {
        font-size: clamp(1.55rem, 8.4vw, 2.15rem);
    }

    .ifk-home__date-heading h1 span {
        margin-top: .22rem;
        font-size: .72rem;
    }

    .ifk-home__summary-text {
        margin-top: .5rem !important;
        font-size: .71rem;
        line-height: 1.38;
    }

    .ifk-home__date-form {
        margin-top: .58rem;
    }

    .ifk-home__date-control input[type="date"],
    .ifk-home__date-control button {
        height: 2.2rem !important;
    }
}

/* v10: hero and day navigation aligned with the match page */
.ifk-home__visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.ifk-home__day-nav {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr);
    align-items: center;
    gap: .75rem;
    min-height: 3.7rem;
    margin-bottom: .8rem;
    padding: .42rem .55rem;
    border: 1px solid var(--ifk-border);
    border-radius: 1rem;
    background: rgba(255,255,255,.94);
    box-shadow: 0 .65rem 1.8rem rgba(16,36,59,.07);
}

.ifk-home__day-nav-step,
.ifk-home__day-nav-today {
    display: inline-flex;
    min-height: 2.55rem;
    align-items: center;
    justify-content: center;
    gap: .38rem;
    padding: 0 .72rem;
    border: 1px solid transparent;
    border-radius: .72rem;
    color: var(--ifk-blue-dark) !important;
    font-size: .72rem;
    font-weight: 800;
    line-height: 1;
    text-decoration: none !important;
    white-space: nowrap;
    transition: border-color .18s ease, background-color .18s ease, transform .18s ease;
}

.ifk-home__day-nav-step--previous {
    justify-self: start;
}

.ifk-home__day-nav-step--next {
    justify-self: end;
}

.ifk-home__day-nav-step > span {
    font-size: 1.15rem;
    line-height: 1;
}

.ifk-home__day-nav-step:hover,
.ifk-home__day-nav-step:focus-visible,
.ifk-home__day-nav-today:hover,
.ifk-home__day-nav-today:focus-visible {
    border-color: rgba(29,66,137,.16);
    background: #f2f6fb;
    transform: translateY(-1px);
}

.ifk-home__day-nav-center {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: center;
    gap: .4rem;
}

.ifk-home__day-picker {
    display: grid;
    grid-template-columns: minmax(8.7rem, 10.2rem) auto;
    gap: .3rem;
    min-width: 0;
    padding: .22rem;
    border: 1px solid rgba(18,54,96,.13);
    border-radius: .78rem;
    background: #f6f8fb;
}

.ifk-home__day-picker input[type="date"],
.ifk-home__day-picker button {
    box-sizing: border-box !important;
    min-width: 0 !important;
    height: 2.15rem !important;
    margin: 0 !important;
    border-radius: .58rem !important;
    box-shadow: none !important;
    font: inherit !important;
}

.ifk-home__day-picker input[type="date"] {
    width: 100% !important;
    padding: 0 .55rem !important;
    border: 0 !important;
    background: transparent !important;
    color: var(--ifk-ink) !important;
    font-size: .72rem !important;
}

.ifk-home__day-picker button {
    padding: 0 .72rem !important;
    border: 1px solid rgba(29,66,137,.15) !important;
    background: #fff !important;
    color: var(--ifk-blue) !important;
    font-size: .68rem !important;
    font-weight: 850 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    cursor: pointer !important;
}

.ifk-home__day-nav-today {
    min-height: 2.55rem;
    border-color: rgba(29,66,137,.13);
    background: #fff;
}

.ifk-home__hero {
    position: relative;
    display: block;
    overflow: hidden;
    border-radius: 1.08rem;
    background: var(--ifk-blue-deep);
    box-shadow: 0 1rem 2.6rem rgba(16,36,59,.16);
    color: #fff;
    isolation: isolate;
}

.ifk-home__hero:before {
    position: absolute;
    inset: 0;
    z-index: 1;
    background:
        linear-gradient(90deg, rgba(7,29,66,.93) 0%, rgba(11,43,88,.76) 36%, rgba(10,40,82,.67) 64%, rgba(6,28,62,.88) 100%),
        linear-gradient(180deg, rgba(9,36,77,.18) 0%, rgba(5,24,55,.1) 50%, rgba(5,24,55,.72) 100%);
    content: "";
    pointer-events: none;
}

.ifk-home__hero:after {
    position: absolute;
    inset: auto 0 0;
    z-index: 1;
    height: 45%;
    background: linear-gradient(180deg, transparent, rgba(4,22,50,.48));
    content: "";
    pointer-events: none;
}

.ifk-home__hero-media {
    position: absolute;
    inset: 0;
    z-index: 0;
    display: block !important;
    width: 100%;
    height: auto;
    min-height: 0;
    overflow: hidden;
    background: var(--ifk-blue-deep);
}

.ifk-home__hero-media:before,
.ifk-home__hero-media:after {
    display: none;
}

.ifk-home__hero-gallery {
    position: absolute;
    inset: 0;
    display: block;
}

.ifk-home__hero-gallery > a,
.ifk-home__hero-gallery > div {
    width: 100%;
    height: 100%;
}

.ifk-home__hero-gallery img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center 38% !important;
    filter: saturate(.8) contrast(1.02);
    transform: none !important;
}

.ifk-home__hero-copy {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: clamp(13.5rem, 20vw, 16.5rem);
    flex-direction: column;
    align-items: center;
    justify-content: center;
    padding: 2.8rem clamp(1rem, 3vw, 2rem) 1.5rem;
    text-align: center;
}

.ifk-home__hero-topline {
    position: absolute;
    top: .9rem;
    right: 1rem;
    left: 1rem;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1rem;
    padding-bottom: .7rem;
    border-bottom: 1px solid rgba(255,255,255,.15);
}

.ifk-home__eyebrow {
    color: rgba(255,255,255,.83);
    font-size: .65rem;
    letter-spacing: .04em;
    text-transform: none;
}

.ifk-home__hero-registration {
    color: rgba(255,255,255,.76);
    font-size: .64rem;
    font-weight: 750;
    line-height: 1.2;
}

.ifk-home__date-heading {
    display: block;
    margin-top: .4rem;
}

.ifk-home__date-heading h1 {
    max-width: 18ch;
    margin: 0 auto !important;
    color: #fff !important;
    font-size: clamp(2.25rem, 5vw, 4.25rem);
    letter-spacing: -.05em;
    line-height: .94;
    text-shadow: 0 .14rem .65rem rgba(0,0,0,.18);
}

.ifk-home__date-heading h1 span {
    margin-top: .42rem;
    color: rgba(255,255,255,.9);
    font-size: clamp(.82rem, 1.45vw, 1rem);
    font-weight: 750;
    letter-spacing: 0;
    line-height: 1.15;
}

.ifk-home__summary-text {
    max-width: 37rem;
    margin: .72rem auto 0 !important;
    color: rgba(255,255,255,.78);
    font-size: .76rem;
    line-height: 1.45;
    text-align: center;
}

.ifk-home__hero-facts {
    position: relative;
    z-index: 2;
    display: flex;
    flex-wrap: wrap;
    align-items: stretch;
    gap: 1px;
    border-top: 1px solid rgba(255,255,255,.14);
    background: rgba(255,255,255,.09);
}

.ifk-home__hero-fact {
    display: flex;
    min-width: 6.25rem;
    flex: 1 1 auto;
    flex-direction: column;
    justify-content: center;
    padding: .62rem .78rem;
    background: rgba(4,24,55,.43);
}

.ifk-home__hero-fact > span {
    color: rgba(255,255,255,.62);
    font-size: .55rem;
    font-weight: 850;
    letter-spacing: .04em;
    line-height: 1.2;
    text-transform: uppercase;
}

.ifk-home__hero-fact > strong {
    display: block;
    margin-top: .16rem;
    color: #fff !important;
    font-size: .82rem;
    font-weight: 850;
    line-height: 1.25;
    white-space: normal;
    overflow-wrap: anywhere;
}

.ifk-home__hero-fact--form {
    min-width: 8.7rem;
}

.ifk-home__hero-fact--form > strong {
    display: flex;
    align-items: center;
    gap: .22rem;
}

.ifk-home__trend-result {
    width: 1.18rem;
    height: 1.18rem;
    border-radius: 999px;
    font-size: .5rem;
}

.ifk-home__day-content {
    margin-top: .9rem;
}

@media (max-width: 47.99rem) {
    .ifk-home {
        padding-top: .55rem;
    }

    .ifk-home__day-nav {
        grid-template-columns: 2.35rem minmax(0, 1fr) 2.35rem;
        gap: .4rem;
        min-height: 3.25rem;
        margin-bottom: .6rem;
        padding: .32rem;
        border-radius: .86rem;
    }

    .ifk-home__day-nav-step {
        width: 2.35rem;
        min-height: 2.35rem;
        padding: 0;
        border-color: rgba(29,66,137,.1);
        background: #f6f8fb;
    }

    .ifk-home__day-nav-step strong {
        display: none;
    }

    .ifk-home__day-nav-step > span {
        font-size: 1.25rem;
    }

    .ifk-home__day-nav-center {
        gap: .25rem;
    }

    .ifk-home__day-picker {
        grid-template-columns: minmax(0, 1fr) auto;
        width: 100%;
        max-width: 13.5rem;
        padding: .17rem;
        border-radius: .65rem;
    }

    .ifk-home__day-picker input[type="date"],
    .ifk-home__day-picker button {
        height: 2rem !important;
    }

    .ifk-home__day-picker input[type="date"] {
        padding-inline: .35rem !important;
        font-size: 16px !important;
    }

    .ifk-home__day-picker button {
        padding-inline: .5rem !important;
        font-size: .62rem !important;
    }

    .ifk-home__day-nav-today {
        display: none;
    }

    .ifk-home__hero {
        border-radius: .92rem;
        box-shadow: 0 .75rem 1.8rem rgba(16,36,59,.14);
    }

    .ifk-home__hero-copy {
        min-height: 12.8rem;
        padding: 2.6rem .85rem 1.15rem;
    }

    .ifk-home__hero-topline {
        top: .72rem;
        right: .72rem;
        left: .72rem;
        gap: .55rem;
        padding-bottom: .55rem;
    }

    .ifk-home__eyebrow,
    .ifk-home__hero-registration {
        font-size: .56rem;
    }

    .ifk-home__date-heading h1 {
        font-size: clamp(2rem, 11vw, 3rem);
    }

    .ifk-home__date-heading h1 span {
        margin-top: .3rem;
        font-size: .72rem;
    }

    .ifk-home__summary-text {
        max-width: 27rem;
        margin-top: .5rem !important;
        font-size: .68rem;
        line-height: 1.35;
    }

    .ifk-home__hero-facts {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .ifk-home__hero-fact {
        min-width: 0;
        padding: .47rem .55rem;
    }

    .ifk-home__hero-fact > span {
        font-size: .49rem;
    }

    .ifk-home__hero-fact > strong {
        font-size: .72rem;
    }

    .ifk-home__hero-fact--form {
        min-width: 0;
    }
}

@media (min-width: 30rem) and (max-width: 47.99rem) {
    .ifk-home__hero-facts {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }
}

@media (min-width: 40rem) and (max-width: 47.99rem) {
    .ifk-home__hero-facts {
        grid-template-columns: repeat(4, minmax(0, 1fr));
    }
}

/* v12: match.php typography, dimensions and production refinements */
.ifk-home,
.ifk-home input,
.ifk-home button,
.ifk-home select,
.ifk-home textarea {
    font-family: inherit !important;
}

.ifk-home__hero {
    border-radius: 1.3rem;
    box-shadow: 0 1.2rem 3.2rem rgba(29,66,137,.25);
}

.ifk-home__hero-topline {
    position: relative;
    top: auto;
    right: auto;
    left: auto;
    z-index: 2;
    padding: 1rem clamp(1rem,3vw,1.5rem);
    border-bottom: 1px solid rgba(255,255,255,.14);
}

.ifk-home__hero-copy {
    min-height: clamp(10rem,14vw,12.2rem);
    padding: clamp(1.5rem,4vw,2.6rem);
}

.ifk-home__date-heading {
    margin: 0;
}

.ifk-home__date-heading h1 {
    font-family: "Francois One","Arial Narrow",sans-serif !important;
    font-size: clamp(3rem,8vw,5.6rem);
    font-weight: 400;
    letter-spacing: .03em;
    line-height: .9;
}

.ifk-home__date-heading h1 span {
    margin-top: .45rem;
    font-family: inherit !important;
    font-size: .72rem;
    font-weight: 750;
    letter-spacing: 0;
    line-height: 1.2;
}

.ifk-home__summary-text {
    margin-top: .55rem !important;
    font-size: .72rem;
}

.ifk-home__hero-facts {
    border-top: 1px solid rgba(255,255,255,.14);
    background: rgba(5,24,55,.2);
}

.ifk-home__hero-fact {
    min-width: 5.75rem;
    padding: .62rem .72rem;
    background: rgba(5,24,55,.22);
}

.ifk-home__hero-fact > span {
    color: rgba(255,255,255,.6);
    font-size: .6rem;
    font-weight: 850;
    letter-spacing: .08em;
}

.ifk-home__hero-fact > strong {
    margin-top: .22rem;
    font-size: .78rem;
    font-weight: 850;
    line-height: 1.3;
}

/* Refined date picker */
.ifk-home__day-picker {
    grid-template-columns: minmax(9.6rem,11.4rem) auto;
    gap: .32rem;
    padding: .27rem;
    border-color: rgba(29,66,137,.15);
    border-radius: .86rem;
    background: linear-gradient(180deg,#f9fbfd,#eef3f8);
    box-shadow: inset 0 1px 0 rgba(255,255,255,.92),0 .3rem .9rem rgba(16,36,59,.055);
}

.ifk-home__day-picker-field {
    display: grid;
    min-width: 0;
    gap: .04rem;
    padding: .27rem .58rem .3rem;
    border: 1px solid rgba(18,54,96,.08);
    border-radius: .64rem;
    background: #fff;
    cursor: pointer;
}

.ifk-home__day-picker-field > span {
    color: var(--ifk-muted);
    font-size: .48rem;
    font-weight: 850;
    letter-spacing: .06em;
    line-height: 1;
    text-transform: uppercase;
}

.ifk-home__day-picker input[type="date"] {
    width: 100% !important;
    height: 1.45rem !important;
    min-height: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    color: var(--ifk-ink) !important;
    font-family: inherit !important;
    font-size: .76rem !important;
    font-weight: 750 !important;
    font-variant-numeric: tabular-nums;
    line-height: 1.1 !important;
}

.ifk-home__day-picker input[type="date"]::-webkit-calendar-picker-indicator {
    margin-left: .2rem;
    opacity: .62;
    cursor: pointer;
}

.ifk-home__day-picker button {
    display: inline-flex !important;
    min-width: 4.15rem !important;
    height: auto !important;
    min-height: 2.76rem !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .32rem !important;
    padding: 0 .68rem !important;
    border: 1px solid rgba(29,66,137,.15) !important;
    border-radius: .64rem !important;
    background: #fff !important;
    color: var(--ifk-blue) !important;
    box-shadow: 0 .18rem .55rem rgba(16,36,59,.05) !important;
    font-family: inherit !important;
    font-size: .68rem !important;
    font-weight: 850 !important;
}

.ifk-home__day-picker button > span:last-child {
    font-size: 1rem;
    line-height: 1;
    transition: transform .18s ease;
}

.ifk-home__day-picker button:hover > span:last-child,
.ifk-home__day-picker button:focus-visible > span:last-child {
    transform: translateX(.12rem);
}

/* Gap-free mobile facts */
@media (max-width:29.99rem) {
    .ifk-home__hero {
        border-radius: 1.3rem;
        box-shadow: 0 1.2rem 3.2rem rgba(29,66,137,.25);
    }

    .ifk-home__hero-topline {
        padding: .75rem .8rem;
    }

    .ifk-home__hero-copy {
        min-height: 9.5rem;
        padding: 1.2rem .8rem;
    }

    .ifk-home__date-heading h1 {
        font-size: 2.75rem;
    }

    .ifk-home__hero-fact {
        min-width: 0;
        padding: .38rem .48rem;
    }

    .ifk-home__hero-fact > span {
        font-size: .54rem;
        line-height: 1.15;
    }

    .ifk-home__hero-fact > strong {
        margin-top: .1rem;
        font-size: .73rem;
        line-height: 1.22;
    }

    .ifk-home__day-picker {
        grid-template-columns: minmax(0,1fr) auto;
        width: 100%;
        max-width: 14.4rem;
        padding: .2rem;
        border-radius: .72rem;
    }

    .ifk-home__day-picker-field {
        padding: .22rem .42rem .24rem;
        border-radius: .54rem;
    }

    .ifk-home__day-picker-field > span {
        display: none;
    }

    .ifk-home__day-picker input[type="date"] {
        height: 1.65rem !important;
        font-size: 16px !important;
    }

    .ifk-home__day-picker button {
        min-width: 2.45rem !important;
        min-height: 2.16rem !important;
        padding: 0 .48rem !important;
        border-radius: .54rem !important;
    }

    .ifk-home__day-picker button > span:first-child {
        display: none;
    }

    .ifk-home__hero-facts {
        grid-template-columns: repeat(4,minmax(0,1fr));
    }

    .ifk-home__hero-fact {
        grid-column: span 2;
    }

    .ifk-home__hero-facts--1 .ifk-home__hero-fact,
    .ifk-home__hero-facts--3 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--5 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--7 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--9 .ifk-home__hero-fact:last-child {
        grid-column: 1 / -1;
    }
}

@media (min-width:30rem) and (max-width:39.99rem) {
    .ifk-home__hero-facts {
        grid-template-columns: repeat(6,minmax(0,1fr));
    }

    .ifk-home__hero-fact {
        grid-column: span 2;
    }

    .ifk-home__hero-facts--1 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--4 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--7 .ifk-home__hero-fact:last-child {
        grid-column: 1 / -1;
    }

    .ifk-home__hero-facts--2 .ifk-home__hero-fact,
    .ifk-home__hero-facts--5 .ifk-home__hero-fact:nth-last-child(-n + 2),
    .ifk-home__hero-facts--8 .ifk-home__hero-fact:nth-last-child(-n + 2) {
        grid-column: span 3;
    }
}

@media (min-width:40rem) and (max-width:47.99rem) {
    .ifk-home__hero-facts {
        grid-template-columns: repeat(12,minmax(0,1fr));
    }

    .ifk-home__hero-fact {
        grid-column: span 3;
    }

    .ifk-home__hero-facts--1 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--5 .ifk-home__hero-fact:last-child,
    .ifk-home__hero-facts--9 .ifk-home__hero-fact:last-child {
        grid-column: 1 / -1;
    }

    .ifk-home__hero-facts--2 .ifk-home__hero-fact,
    .ifk-home__hero-facts--6 .ifk-home__hero-fact:nth-last-child(-n + 2) {
        grid-column: span 6;
    }

    .ifk-home__hero-facts--3 .ifk-home__hero-fact,
    .ifk-home__hero-facts--7 .ifk-home__hero-fact:nth-last-child(-n + 3) {
        grid-column: span 4;
    }
}

/* v13: straight segmented date control and team-name typography */
.ifk-home__date-heading h1 {
    font-family: inherit !important;
    font-size: clamp(2.65rem,6vw,4.45rem) !important;
    font-weight: 900 !important;
    letter-spacing: -.045em !important;
    line-height: .95 !important;
}

.ifk-home__date-heading h1 span {
    margin-top: .42rem !important;
    font-family: inherit !important;
    font-size: .78rem !important;
    font-weight: 850 !important;
    letter-spacing: -.01em !important;
    line-height: 1.15 !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker {
    appearance: none !important;
    display: flex !important;
    width: auto !important;
    min-width: 0 !important;
    height: 2.8rem !important;
    margin: 0 !important;
    padding: 0 !important;
    align-items: stretch !important;
    gap: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(18,54,96,.16) !important;
    border-radius: .78rem !important;
    background: #fff !important;
    box-shadow: 0 .18rem .55rem rgba(16,36,59,.06) !important;
    transform: none !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"] {
    appearance: none !important;
    -webkit-appearance: none !important;
    display: block !important;
    width: 10.8rem !important;
    min-width: 0 !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 .72rem !important;
    border: 0 !important;
    border-radius: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: var(--ifk-ink) !important;
    font-family: inherit !important;
    font-size: .78rem !important;
    font-weight: 800 !important;
    font-variant-numeric: tabular-nums !important;
    line-height: 2.8rem !important;
    text-align: left !important;
    transform: none !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"]::-webkit-datetime-edit,
.ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"]::-webkit-datetime-edit-fields-wrapper {
    padding: 0 !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"]::-webkit-calendar-picker-indicator {
    width: 1rem !important;
    height: 1rem !important;
    margin: 0 0 0 .35rem !important;
    padding: 0 !important;
    opacity: .58 !important;
    cursor: pointer !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker button {
    appearance: none !important;
    display: inline-flex !important;
    width: auto !important;
    min-width: 4.45rem !important;
    height: 100% !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 .78rem !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .32rem !important;
    border: 0 !important;
    border-left: 1px solid rgba(18,54,96,.13) !important;
    border-radius: 0 !important;
    background: #f5f8fc !important;
    box-shadow: none !important;
    color: var(--ifk-blue) !important;
    font-family: inherit !important;
    font-size: .7rem !important;
    font-weight: 900 !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    transform: none !important;
    cursor: pointer !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker button:hover,
.ifk-home .ifk-home__day-nav .ifk-home__day-picker button:focus-visible {
    background: #eaf1f9 !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker button:focus-visible,
.ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"]:focus-visible {
    outline: 2px solid rgba(29,66,137,.38) !important;
    outline-offset: -2px !important;
}

.ifk-home .ifk-home__day-nav .ifk-home__day-picker button > span:last-child {
    font-size: 1rem !important;
    line-height: 1 !important;
    transition: transform .18s ease !important;
}

@media (max-width:47.99rem) {
    .ifk-home__date-heading h1 {
        font-size: clamp(2.2rem,10vw,3.15rem) !important;
    }

    .ifk-home__date-heading h1 span {
        margin-top: .32rem !important;
        font-size: .7rem !important;
    }

    .ifk-home .ifk-home__day-nav .ifk-home__day-picker {
        width: min(100%,13.8rem) !important;
        height: 2.45rem !important;
        border-radius: .66rem !important;
    }

    .ifk-home .ifk-home__day-nav .ifk-home__day-picker input[type="date"] {
        width: min(9.9rem,calc(100% - 2.7rem)) !important;
        padding-inline: .55rem !important;
        font-size: 16px !important;
        line-height: 2.45rem !important;
    }

    .ifk-home .ifk-home__day-nav .ifk-home__day-picker button {
        min-width: 2.7rem !important;
        padding-inline: .48rem !important;
    }

    .ifk-home .ifk-home__day-nav .ifk-home__day-picker button > span:first-child {
        display: none !important;
    }
}

/* v14: match the desktop hero's vertical proportions */
@media (min-width:48rem) {
    .ifk-home__hero-copy {
        min-height: clamp(12rem,16.5vw,14.2rem) !important;
    }
}

/* v15: exact match.php hero styling */
.ifk-home .ifk-home__hero--match {
    position: relative !important;
    display: block !important;
    overflow: hidden !important;
    border-radius: 1.3rem !important;
    background: var(--ifk-blue) !important;
    box-shadow: 0 1.2rem 3.2rem rgba(29,66,137,.25) !important;
    color: #fff !important;
    isolation: isolate !important;
}

.ifk-home .ifk-home__hero--match:before {
    position: absolute !important;
    inset: 0 !important;
    z-index: -2 !important;
    display: block !important;
    background: linear-gradient(115deg,#1d4289,#102d61) !important;
    content: "" !important;
}

.ifk-home .ifk-home__hero--match.has-image:after {
    position: absolute !important;
    inset: 0 !important;
    z-index: -1 !important;
    display: block !important;
    height: auto !important;
    background:
        linear-gradient(
            90deg,
            rgba(15,42,90,.96) 0%,
            rgba(15,42,90,.83) 44%,
            rgba(15,42,90,.62) 100%
        ),
        var(--hero-image) center/cover no-repeat !important;
    content: "" !important;
    pointer-events: none !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-topline {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    left: auto !important;
    z-index: 1 !important;
    display: flex !important;
    min-height: 3.1rem !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    margin: 0 !important;
    padding: 1rem clamp(1rem,3vw,1.5rem) !important;
    border-bottom: 1px solid rgba(255,255,255,.14) !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__eyebrow,
.ifk-home .ifk-home__hero--match .ifk-home__hero-registration {
    margin: 0 !important;
    color: rgba(255,255,255,.78) !important;
    font-family: inherit !important;
    font-size: .72rem !important;
    font-weight: 750 !important;
    letter-spacing: 0 !important;
    line-height: 1.3 !important;
    text-transform: none !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__eyebrow {
    color: #fff !important;
    font-weight: 850 !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-copy,
.ifk-home .ifk-home__hero--match .ifk-home__scoreboard {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    min-height: 0 !important;
    grid-template-columns: minmax(0,1fr) minmax(8rem,.6fr) minmax(0,1fr) !important;
    align-items: center !important;
    gap: clamp(.8rem,3vw,2rem) !important;
    padding: clamp(1.5rem,4vw,2.6rem) !important;
    text-align: center !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__scoreboard-spacer {
    display: block !important;
    min-width: 0 !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__date-heading {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    text-align: center !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__date-heading h1 {
    display: block !important;
    max-width: none !important;
    margin: 0 !important;
    color: #fff !important;
    font-family: inherit !important;
    text-align: center !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__date-heading h1 > strong {
    display: block !important;
    color: #fff !important;
    font-family: "Francois One","Arial Narrow",sans-serif !important;
    font-size: clamp(3rem,8vw,5.6rem) !important;
    font-weight: 400 !important;
    letter-spacing: .03em !important;
    line-height: .9 !important;
    white-space: nowrap !important;
    text-shadow: none !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__date-heading h1 > span {
    display: block !important;
    margin-top: .45rem !important;
    color: rgba(255,255,255,.7) !important;
    font-family: inherit !important;
    font-size: .72rem !important;
    font-weight: 750 !important;
    letter-spacing: 0 !important;
    line-height: 1.2 !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__summary-text {
    margin: .45rem 0 0 !important;
    color: rgba(255,255,255,.7) !important;
    font-size: .72rem !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    text-align: center !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-facts {
    position: relative !important;
    z-index: 1 !important;
    display: grid !important;
    grid-template-columns: repeat(auto-fit,minmax(7.8rem,1fr)) !important;
    align-items: stretch !important;
    gap: 0 !important;
    border-top: 1px solid rgba(255,255,255,.14) !important;
    background: rgba(5,24,55,.16) !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-fact {
    display: block !important;
    min-width: 0 !important;
    padding: .9rem 1rem !important;
    border-left: 1px solid rgba(255,255,255,.08) !important;
    background: transparent !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-fact:first-child {
    border-left: 0 !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-fact > span {
    display: block !important;
    color: rgba(255,255,255,.6) !important;
    font-family: inherit !important;
    font-size: .62rem !important;
    font-weight: 850 !important;
    letter-spacing: .045em !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-fact > strong {
    display: block !important;
    margin-top: .25rem !important;
    overflow: visible !important;
    color: #fff !important;
    font-family: inherit !important;
    font-size: .82rem !important;
    font-weight: 800 !important;
    line-height: 1.3 !important;
    text-overflow: clip !important;
    white-space: normal !important;
    overflow-wrap: anywhere !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__hero-fact--form > strong {
    display: flex !important;
    align-items: center !important;
    gap: .22rem !important;
}

@media (max-width:68rem) {
    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts {
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-fact:nth-child(4) {
        border-left: 0 !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home .ifk-home__hero--match .ifk-home__hero-topline {
        min-height: 0 !important;
        align-items: flex-start !important;
        flex-direction: column !important;
        gap: .25rem !important;
        padding: .75rem .8rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-copy,
    .ifk-home .ifk-home__hero--match .ifk-home__scoreboard {
        grid-template-columns: minmax(0,1fr) auto minmax(0,1fr) !important;
        gap: .45rem !important;
        padding: 1.2rem .8rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__date-heading h1 > strong {
        font-size: 2.75rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__date-heading h1 > span {
        font-size: .6rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts {
        grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-fact {
        grid-column: span 2 !important;
        padding: .72rem .75rem !important;
        border-left: 1px solid rgba(255,255,255,.08) !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-fact:nth-child(odd) {
        border-left: 0 !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-fact > span {
        font-size: .56rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-fact > strong {
        font-size: .75rem !important;
    }

    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts--1 .ifk-home__hero-fact,
    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts--3 .ifk-home__hero-fact:last-child,
    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts--5 .ifk-home__hero-fact:last-child,
    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts--7 .ifk-home__hero-fact:last-child,
    .ifk-home .ifk-home__hero--match .ifk-home__hero-facts--9 .ifk-home__hero-fact:last-child {
        grid-column: 1 / -1 !important;
        border-left: 0 !important;
    }
}

/* v16: geometrically center the date across the complete hero */
.ifk-home .ifk-home__hero--match .ifk-home__scoreboard-spacer:first-child {
    grid-column: 1 !important;
    grid-row: 1 !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__date-heading {
    grid-column: 1 / -1 !important;
    grid-row: 1 !important;
    width: max-content !important;
    max-width: 100% !important;
    justify-self: center !important;
    align-self: center !important;
    transform: none !important;
}

.ifk-home .ifk-home__hero--match .ifk-home__scoreboard-spacer:last-child {
    grid-column: 3 !important;
    grid-row: 1 !important;
}

/* v17: modern match cards */
.ifk-home__match-grid {
    gap: 1rem !important;
}

.ifk-home__match-card {
    position: relative !important;
    min-width: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(18,54,96,.12) !important;
    border-radius: 1.05rem !important;
    background: #fff !important;
    box-shadow: 0 .55rem 1.45rem rgba(16,36,59,.065) !important;
    transition:
        transform .22s ease,
        box-shadow .22s ease,
        border-color .22s ease !important;
}

.ifk-home__match-card:before {
    position: absolute;
    inset: 0 auto 0 0;
    z-index: 3;
    width: .2rem;
    background: transparent;
    content: "";
    pointer-events: none;
}

.ifk-home__match-card--w:before {
    background: #1f9a55;
}

.ifk-home__match-card--d:before {
    background: #d79518;
}

.ifk-home__match-card--l:before {
    background: #d34b4f;
}

.ifk-home__match-card:hover,
.ifk-home__match-card:focus-within {
    transform: translateY(-.22rem) !important;
    border-color: rgba(29,66,137,.24) !important;
    box-shadow: 0 .95rem 2.2rem rgba(16,36,59,.12) !important;
}

.ifk-home__match-card-link {
    display: grid !important;
    height: 100% !important;
    grid-template-rows: auto 1fr !important;
    color: inherit !important;
    text-decoration: none !important;
}

.ifk-home__match-image {
    position: relative !important;
    display: block !important;
    height: clamp(8.7rem,11vw,10.2rem) !important;
    overflow: hidden !important;
    background:
        linear-gradient(135deg,#1d4289,#102d61) !important;
}

.ifk-home__match-image:after {
    position: absolute !important;
    inset: 0 !important;
    height: auto !important;
    background:
        linear-gradient(180deg,rgba(6,24,51,.02) 38%,rgba(6,24,51,.34) 100%) !important;
    content: "" !important;
    pointer-events: none !important;
}

.ifk-home__match-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center 42% !important;
    filter: saturate(.92) contrast(1.02) !important;
    transition: transform .3s ease, filter .3s ease !important;
}

.ifk-home__match-card:hover .ifk-home__match-image img,
.ifk-home__match-card:focus-within .ifk-home__match-image img {
    transform: scale(1.035) !important;
    filter: saturate(1) contrast(1.04) !important;
}

.ifk-home__match-result-badge {
    position: absolute !important;
    top: .7rem !important;
    right: .7rem !important;
    z-index: 2 !important;
    display: inline-flex !important;
    min-height: 1.65rem !important;
    align-items: center !important;
    justify-content: center !important;
    padding: .3rem .58rem !important;
    border: 1px solid rgba(255,255,255,.34) !important;
    border-radius: 999px !important;
    background: rgba(8,31,66,.78) !important;
    box-shadow: 0 .25rem .7rem rgba(0,0,0,.13) !important;
    color: #fff !important;
    font-size: .58rem !important;
    font-weight: 900 !important;
    letter-spacing: .055em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    backdrop-filter: blur(.4rem) !important;
}

.ifk-home__match-result-badge--w {
    background: rgba(24,126,68,.9) !important;
}

.ifk-home__match-result-badge--d {
    background: rgba(181,112,11,.9) !important;
}

.ifk-home__match-result-badge--l {
    background: rgba(177,48,54,.9) !important;
}

.ifk-home__match-body {
    display: flex !important;
    min-width: 0 !important;
    height: 100% !important;
    flex-direction: column !important;
    padding: 0 !important;
    text-align: center !important;
}

.ifk-home__match-card-head {
    display: grid !important;
    gap: .16rem !important;
    padding: .72rem .9rem .62rem !important;
    border-bottom: 1px solid rgba(18,54,96,.08) !important;
    background: #f8fafc !important;
    text-align: center !important;
}

.ifk-home__match-card-head time {
    color: var(--ifk-blue) !important;
    font-size: .79rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
}

.ifk-home__match-card-head > span {
    color: #718095 !important;
    font-size: .66rem !important;
    font-weight: 700 !important;
    line-height: 1.3 !important;
}

.ifk-home__teams {
    display: grid !important;
    min-height: 6rem !important;
    grid-template-columns: minmax(0,1fr) minmax(4rem,auto) minmax(0,1fr) !important;
    align-items: center !important;
    gap: .7rem !important;
    padding: .86rem .9rem .78rem !important;
}

.ifk-home__team {
    display: grid !important;
    min-width: 0 !important;
    grid-template-rows: 3.15rem auto !important;
    align-items: center !important;
    justify-items: center !important;
    gap: .34rem !important;
}

.ifk-home__team-logo {
    display: grid !important;
    width: 4.2rem !important;
    height: 3.15rem !important;
    place-items: center !important;
}

.ifk-home__team-logo img,
.ifk-home__team img {
    display: block !important;
    width: auto !important;
    height: auto !important;
    max-width: 4.2rem !important;
    max-height: 3.15rem !important;
    margin: 0 auto !important;
    object-fit: contain !important;
    filter: drop-shadow(0 .15rem .22rem rgba(16,36,59,.14)) !important;
}

.ifk-home__team > span:last-child {
    display: -webkit-box !important;
    min-height: 1.9rem !important;
    overflow: hidden !important;
    color: #33455c !important;
    font-size: .72rem !important;
    font-weight: 800 !important;
    line-height: 1.28 !important;
    text-overflow: ellipsis !important;
    -webkit-box-orient: vertical !important;
    -webkit-line-clamp: 2 !important;
}

.ifk-home__score {
    min-width: 4rem !important;
    color: var(--ifk-ink) !important;
    font-family: "Francois One","Arial Narrow",sans-serif !important;
    font-size: clamp(1.9rem,2.45vw,2.3rem) !important;
    font-weight: 400 !important;
    letter-spacing: .01em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.ifk-home__score--w {
    color: #17884a !important;
}

.ifk-home__score--d {
    color: #b77308 !important;
}

.ifk-home__score--l {
    color: #c33f45 !important;
}

.ifk-home__match-context {
    display: flex !important;
    min-height: 2.55rem !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: .6rem !important;
    margin: auto 0 0 !important;
    padding: .62rem .9rem .68rem !important;
    border-top: 1px solid rgba(18,54,96,.08) !important;
    background: #fff !important;
    text-align: left !important;
}

.ifk-home__match-venue {
    min-width: 0 !important;
    overflow: hidden !important;
    color: #66758a !important;
    font-size: .66rem !important;
    font-weight: 750 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.ifk-home__match-context small {
    flex: 0 0 auto !important;
    color: #8591a1 !important;
    font-size: .64rem !important;
    font-weight: 700 !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

.ifk-home__match-card-link:focus-visible {
    outline: 3px solid rgba(29,66,137,.35) !important;
    outline-offset: -3px !important;
    border-radius: inherit !important;
}

@media (max-width:68rem) {
    .ifk-home__match-image {
        height: 10rem !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__match-grid {
        gap: .8rem !important;
    }

    .ifk-home__match-card {
        border-radius: .92rem !important;
    }

    .ifk-home__match-image {
        height: 10.5rem !important;
    }

    .ifk-home__match-result-badge {
        top: .58rem !important;
        right: .58rem !important;
    }

    .ifk-home__match-card-head {
        padding: .66rem .78rem .58rem !important;
    }

    .ifk-home__teams {
        min-height: 5.65rem !important;
        grid-template-columns: minmax(0,1fr) minmax(3.7rem,auto) minmax(0,1fr) !important;
        gap: .48rem !important;
        padding: .72rem .72rem .68rem !important;
    }

    .ifk-home__team {
        grid-template-rows: 2.8rem auto !important;
        gap: .28rem !important;
    }

    .ifk-home__team-logo {
        width: 3.65rem !important;
        height: 2.8rem !important;
    }

    .ifk-home__team-logo img,
    .ifk-home__team img {
        max-width: 3.65rem !important;
        max-height: 2.8rem !important;
    }

    .ifk-home__team > span:last-child {
        min-height: 1.75rem !important;
        font-size: .7rem !important;
    }

    .ifk-home__score {
        min-width: 3.7rem !important;
        font-size: 2rem !important;
    }

    .ifk-home__match-context {
        padding: .58rem .78rem .62rem !important;
    }
}

/* v18: content layered over the match image */
.ifk-home__match-card:before,
.ifk-home__match-card--w:before,
.ifk-home__match-card--d:before,
.ifk-home__match-card--l:before {
    display: none !important;
    content: none !important;
}

.ifk-home__match-image {
    height: clamp(10rem,13vw,12rem) !important;
}

.ifk-home__match-image img {
    position: relative !important;
    z-index: 0 !important;
}

.ifk-home__match-image:after {
    z-index: 1 !important;
    background:
        linear-gradient(
            180deg,
            rgba(6,24,51,.02) 24%,
            rgba(6,24,51,.16) 53%,
            rgba(6,24,51,.88) 100%
        ) !important;
}

.ifk-home__match-result-badge {
    z-index: 3 !important;
}

.ifk-home__match-image .ifk-home__match-card-head {
    position: absolute !important;
    right: 0 !important;
    bottom: 0 !important;
    left: 0 !important;
    z-index: 2 !important;
    display: grid !important;
    gap: .16rem !important;
    padding: 2.5rem .95rem .78rem !important;
    border: 0 !important;
    background: transparent !important;
    text-align: left !important;
    pointer-events: none !important;
}

.ifk-home__match-image .ifk-home__match-card-head time {
    color: #fff !important;
    font-size: .82rem !important;
    font-weight: 900 !important;
    line-height: 1.2 !important;
    text-shadow: 0 .1rem .35rem rgba(0,0,0,.32) !important;
}

.ifk-home__match-image .ifk-home__match-card-head > span {
    color: rgba(255,255,255,.78) !important;
    font-size: .66rem !important;
    font-weight: 750 !important;
    line-height: 1.3 !important;
    text-shadow: 0 .1rem .3rem rgba(0,0,0,.28) !important;
}

.ifk-home__teams {
    padding-top: 1rem !important;
}

@media (max-width:68rem) {
    .ifk-home__match-image {
        height: 11.4rem !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__match-image {
        height: 11rem !important;
    }

    .ifk-home__match-image .ifk-home__match-card-head {
        padding: 2.2rem .78rem .68rem !important;
    }

    .ifk-home__match-image .ifk-home__match-card-head time {
        font-size: .78rem !important;
    }

    .ifk-home__match-image .ifk-home__match-card-head > span {
        font-size: .63rem !important;
    }
}

/* v19: more compact match-card proportions */
.ifk-home__match-image {
    height: clamp(8.9rem,11vw,10.4rem) !important;
}

.ifk-home__match-image .ifk-home__match-card-head {
    padding: 2rem .88rem .62rem !important;
}

.ifk-home__match-result-badge {
    top: .58rem !important;
    right: .58rem !important;
    min-height: 1.5rem !important;
    padding: .26rem .52rem !important;
}

.ifk-home__teams {
    min-height: 5.15rem !important;
    gap: .55rem !important;
    padding: .68rem .82rem .62rem !important;
}

.ifk-home__team {
    grid-template-rows: 2.75rem auto !important;
    gap: .24rem !important;
}

.ifk-home__team-logo {
    width: 3.8rem !important;
    height: 2.75rem !important;
}

.ifk-home__team-logo img,
.ifk-home__team img {
    max-width: 3.8rem !important;
    max-height: 2.75rem !important;
}

.ifk-home__team > span:last-child {
    min-height: 1.7rem !important;
}

.ifk-home__match-context {
    min-height: 2.2rem !important;
    padding: .48rem .82rem .52rem !important;
}

@media (max-width:68rem) {
    .ifk-home__match-image {
        height: 9.8rem !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__match-image {
        height: 9.55rem !important;
    }

    .ifk-home__match-image .ifk-home__match-card-head {
        padding: 1.8rem .72rem .56rem !important;
    }

    .ifk-home__teams {
        min-height: 4.85rem !important;
        gap: .4rem !important;
        padding: .58rem .66rem .54rem !important;
    }

    .ifk-home__team {
        grid-template-rows: 2.5rem auto !important;
        gap: .2rem !important;
    }

    .ifk-home__team-logo {
        width: 3.35rem !important;
        height: 2.5rem !important;
    }

    .ifk-home__team-logo img,
    .ifk-home__team img {
        max-width: 3.35rem !important;
        max-height: 2.5rem !important;
    }

    .ifk-home__team > span:last-child {
        min-height: 1.6rem !important;
    }

    .ifk-home__match-context {
        min-height: 2.05rem !important;
        padding: .44rem .7rem .47rem !important;
    }
}

/* v20: compact "Senast i historiken" cards */
.ifk-home__latest-grid {
    gap: .65rem !important;
}

.ifk-home__latest-card {
    grid-template-columns: 5.35rem minmax(0,1fr) !important;
    min-height: 7.1rem !important;
    border-radius: .86rem !important;
    box-shadow: 0 .35rem 1rem rgba(16,36,59,.045) !important;
}

.ifk-home__latest-image {
    min-height: 7.1rem !important;
}

.ifk-home__latest-image img {
    object-position: center 35% !important;
}

.ifk-home__latest-image--crest img {
    width: 3.25rem !important;
    height: 3.25rem !important;
}

.ifk-home__latest-card > div {
    display: flex !important;
    min-height: 0 !important;
    flex-direction: column !important;
    justify-content: center !important;
    padding: .68rem .76rem !important;
}

.ifk-home__latest-card span {
    font-size: .58rem !important;
    letter-spacing: .055em !important;
}

.ifk-home__latest-card h3 {
    margin-top: .15rem !important;
    font-size: .9rem !important;
    line-height: 1.2 !important;
}

.ifk-home__latest-card p {
    margin-top: .18rem !important;
    font-size: .7rem !important;
    line-height: 1.32 !important;
}

.ifk-home__latest-link {
    margin-top: .3rem !important;
    font-size: .67rem !important;
    line-height: 1.2 !important;
}

@media (max-width:47.99rem) {
    .ifk-home__latest-grid {
        gap: .6rem !important;
    }

    .ifk-home__latest-card {
        grid-template-columns: 5rem minmax(0,1fr) !important;
        min-height: 6.7rem !important;
    }

    .ifk-home__latest-image {
        min-height: 6.7rem !important;
    }

    .ifk-home__latest-card > div {
        padding: .6rem .68rem !important;
    }

    .ifk-home__latest-card h3 {
        font-size: .86rem !important;
    }

    .ifk-home__latest-card p {
        font-size: .68rem !important;
    }
}

/* v21: mobile hero cleanup and match-style gallery/lightbox */
@media (max-width:47.99rem) {
    .ifk-home .ifk-home__hero--match .ifk-home__hero-registration {
        display: none !important;
    }
}

/* Equal-size gallery: intentionally no enlarged first tile. */
.ifk-home__gallery-panel {
    min-width: 0;
}

.ifk-home__photo-gallery {
    min-width: 0;
}

.ifk-home__photo-grid {
    display: grid !important;
    grid-template-columns: repeat(4,minmax(0,1fr)) !important;
    gap: .72rem !important;
}

.ifk-home__photo-item {
    display: grid !important;
    min-width: 0 !important;
    grid-template-rows: 8.1rem auto !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(18,54,96,.12) !important;
    border-radius: .85rem !important;
    background: #fff !important;
    box-shadow: 0 .38rem 1rem rgba(16,36,59,.06) !important;
}

.ifk-home__photo-item[hidden] {
    display: none !important;
}

.ifk-home button.ifk-home__photo-button {
    appearance: none !important;
    position: relative !important;
    display: block !important;
    width: 100% !important;
    height: 8.1rem !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: #e8edf4 !important;
    box-shadow: none !important;
    color: inherit !important;
    font: inherit !important;
    letter-spacing: 0 !important;
    line-height: 1 !important;
    text-transform: none !important;
    cursor: zoom-in !important;
}

.ifk-home__photo-button img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform .22s ease !important;
}

.ifk-home__photo-zoom {
    position: absolute !important;
    right: .48rem !important;
    bottom: .48rem !important;
    display: grid !important;
    width: 1.75rem !important;
    height: 1.75rem !important;
    place-items: center !important;
    border: 1px solid rgba(255,255,255,.35) !important;
    border-radius: 999px !important;
    background: rgba(8,28,58,.76) !important;
    color: #fff !important;
    font-size: .88rem !important;
    font-weight: 800 !important;
    backdrop-filter: blur(5px) !important;
}

.ifk-home__photo-item figcaption {
    display: grid !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: .45rem !important;
    min-width: 0 !important;
    padding: .58rem .62rem .62rem !important;
    border-top: 1px solid rgba(18,54,96,.08) !important;
}

.ifk-home__photo-match-link {
    display: grid !important;
    min-width: 0 !important;
    grid-template-columns: minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: .45rem !important;
    color: var(--ifk-ink) !important;
    text-decoration: none !important;
}

.ifk-home__photo-match-link > span {
    overflow: hidden !important;
    font-size: .66rem !important;
    font-weight: 800 !important;
    line-height: 1.25 !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.ifk-home__photo-match-link > strong {
    color: var(--ifk-blue) !important;
    font-family: "Francois One","Arial Narrow",sans-serif !important;
    font-size: .86rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
}

.ifk-home__photo-page-link {
    display: grid !important;
    width: 1.7rem !important;
    height: 1.7rem !important;
    place-items: center !important;
    border-radius: .48rem !important;
    background: #edf3fa !important;
    color: var(--ifk-blue) !important;
    font-size: .76rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    text-decoration: none !important;
}

.ifk-home__photo-button:focus-visible,
.ifk-home__photo-match-link:focus-visible,
.ifk-home__photo-page-link:focus-visible {
    outline: 3px solid rgba(29,66,137,.38) !important;
    outline-offset: -3px !important;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__photo-item:hover {
        border-color: rgba(29,66,137,.22) !important;
        box-shadow: 0 .7rem 1.6rem rgba(16,36,59,.1) !important;
    }

    .ifk-home__photo-button:hover img {
        transform: scale(1.03) !important;
    }

    .ifk-home__photo-match-link:hover > span,
    .ifk-home__photo-page-link:hover {
        color: var(--ifk-blue) !important;
    }
}

.ifk-home__photo-pagination {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    justify-content: center !important;
    gap: .38rem !important;
    margin-top: 1rem !important;
}

.ifk-home__photo-page-buttons {
    display: flex !important;
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: .28rem !important;
}

.ifk-home .ifk-home__photo-pagination button {
    appearance: none !important;
    display: grid !important;
    width: 2.15rem !important;
    height: 2.15rem !important;
    min-width: 0 !important;
    min-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 1px solid rgba(18,54,96,.13) !important;
    border-radius: .62rem !important;
    background: #fff !important;
    box-shadow: none !important;
    color: var(--ifk-blue) !important;
    font: inherit !important;
    font-size: .68rem !important;
    font-weight: 900 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.ifk-home .ifk-home__photo-pagination button[aria-current="page"] {
    border-color: var(--ifk-blue) !important;
    background: var(--ifk-blue) !important;
    color: #fff !important;
}

.ifk-home .ifk-home__photo-pagination button:disabled {
    opacity: .35 !important;
    cursor: default !important;
}

.ifk-home__photo-page-status {
    flex-basis: 100% !important;
    color: var(--ifk-muted) !important;
    font-size: .62rem !important;
    font-weight: 750 !important;
    text-align: center !important;
}

/* Match-page lightbox styling, scoped for the home gallery. */
.ifk-home-lightbox {
    position: fixed !important;
    inset: 0 !important;
    z-index: 12000 !important;
    display: grid !important;
    place-items: center !important;
    padding: 1rem !important;
    background: rgba(4,16,35,.9) !important;
    backdrop-filter: blur(5px) !important;
}

.ifk-home-lightbox[hidden] {
    display: none !important;
}

.ifk-home-lightbox__dialog {
    position: relative !important;
    width: min(74rem,100%) !important;
    max-height: calc(100vh - 2rem) !important;
    overflow: auto !important;
    border-radius: 1rem !important;
    background: #fff !important;
    box-shadow: 0 1.5rem 5rem rgba(0,0,0,.45) !important;
}

.ifk-home-lightbox__top {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 1rem !important;
    padding: .8rem 1rem !important;
    border-bottom: 1px solid rgba(18,54,96,.14) !important;
}

.ifk-home-lightbox__heading {
    display: flex !important;
    min-width: 0 !important;
    flex-direction: column !important;
    gap: .15rem !important;
}

.ifk-home-lightbox__heading > span {
    color: #647287 !important;
    font-size: .65rem !important;
    font-weight: 900 !important;
}

.ifk-home-lightbox__heading > a {
    overflow: hidden !important;
    max-width: 58rem !important;
    color: #10243b !important;
    font-size: .86rem !important;
    font-weight: 850 !important;
    line-height: 1.35 !important;
    text-decoration: none !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
}

.ifk-home button.ifk-home-lightbox__close,
.ifk-home button.ifk-home-lightbox__arrow {
    appearance: none !important;
    display: grid !important;
    margin: 0 !important;
    padding: 0 !important;
    place-items: center !important;
    border: 1px solid rgba(18,54,96,.12) !important;
    border-radius: 999px !important;
    background: rgba(255,255,255,.92) !important;
    box-shadow: 0 .45rem 1rem rgba(16,36,59,.18) !important;
    color: #1d4289 !important;
    font: inherit !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    letter-spacing: 0 !important;
    text-transform: none !important;
}

.ifk-home button.ifk-home-lightbox__close {
    width: 2.3rem !important;
    height: 2.3rem !important;
    flex: 0 0 2.3rem !important;
    background: #e8eef6 !important;
    color: #10243b !important;
    font-size: 1.1rem !important;
    box-shadow: none !important;
}

.ifk-home-lightbox__stage {
    position: relative !important;
    display: grid !important;
    min-height: 20rem !important;
    place-items: center !important;
    background: #e4eaf2 !important;
}

.ifk-home-lightbox__image {
    display: block !important;
    width: 100% !important;
    height: min(78vh,52rem) !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 1rem !important;
    object-fit: contain !important;
    background: #e7edf4 !important;
}

.ifk-home button.ifk-home-lightbox__arrow {
    position: absolute !important;
    top: 50% !important;
    z-index: 4 !important;
    width: 2.8rem !important;
    height: 2.8rem !important;
    font-size: 1.5rem !important;
    transform: translateY(-50%) !important;
}

.ifk-home-lightbox__arrow--prev {
    left: .75rem !important;
}

.ifk-home-lightbox__arrow--next {
    right: .75rem !important;
}

.ifk-home-lightbox__footer {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: .45rem !important;
    padding: .78rem 1rem !important;
    border-top: 1px solid rgba(18,54,96,.14) !important;
    color: #647287 !important;
    font-size: .78rem !important;
    line-height: 1.5 !important;
}

.ifk-home-lightbox__footer a {
    color: #1d4289 !important;
    font-weight: 850 !important;
    text-decoration: none !important;
}

body.ifk-home-lightbox-open {
    overflow: hidden !important;
}

@media (max-width:68rem) {
    .ifk-home__photo-grid {
        grid-template-columns: repeat(3,minmax(0,1fr)) !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__photo-grid {
        grid-template-columns: repeat(2,minmax(0,1fr)) !important;
        gap: .58rem !important;
    }

    .ifk-home__photo-item {
        grid-template-rows: 7rem auto !important;
    }

    .ifk-home button.ifk-home__photo-button {
        height: 7rem !important;
    }

    .ifk-home__photo-item figcaption {
        padding: .5rem .52rem .54rem !important;
    }

    .ifk-home__photo-match-link {
        grid-template-columns: minmax(0,1fr) !important;
        gap: .13rem !important;
    }

    .ifk-home__photo-match-link > span {
        font-size: .61rem !important;
    }

    .ifk-home__photo-match-link > strong {
        font-size: .8rem !important;
    }

    .ifk-home-lightbox {
        padding: .5rem !important;
    }

    .ifk-home-lightbox__dialog {
        max-height: calc(100vh - 1rem) !important;
    }

    .ifk-home-lightbox__heading > a {
        max-width: 67vw !important;
        font-size: .76rem !important;
    }

    .ifk-home-lightbox__image {
        height: min(74vh,42rem) !important;
        padding: .5rem !important;
    }

    .ifk-home button.ifk-home-lightbox__arrow {
        width: 2.45rem !important;
        height: 2.45rem !important;
    }

    .ifk-home-lightbox__arrow--prev {
        left: .35rem !important;
    }

    .ifk-home-lightbox__arrow--next {
        right: .35rem !important;
    }
}

@media (max-width:25rem) {
    .ifk-home__photo-grid {
        grid-template-columns: minmax(0,1fr) !important;
    }

    .ifk-home__photo-item {
        grid-template-rows: 9rem auto !important;
    }

    .ifk-home button.ifk-home__photo-button {
        height: 9rem !important;
    }
}

@media (prefers-reduced-motion:reduce) {
    .ifk-home__photo-button img {
        transition: none !important;
    }
}

/* v22: Bildsök-style image-only gallery and caption dialog */
.ifk-home__photo-grid {
    gap: .9rem !important;
}

.ifk-home__photo-item {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(17,57,97,.15) !important;
    border-radius: .9rem !important;
    background: #fff !important;
    box-shadow: 0 .55rem 1.45rem rgba(16,38,64,.08) !important;
    isolation: isolate !important;
}

.ifk-home__photo-item[hidden] {
    display: none !important;
}

.ifk-home a.ifk-home__photo-button {
    appearance: none !important;
    display: block !important;
    width: 100% !important;
    height: auto !important;
    min-width: 0 !important;
    min-height: 0 !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    border: 0 !important;
    border-radius: inherit !important;
    background: #e9eef4 !important;
    box-shadow: none !important;
    color: inherit !important;
    font: inherit !important;
    line-height: 0 !important;
    letter-spacing: normal !important;
    text-decoration: none !important;
    text-transform: none !important;
    white-space: normal !important;
    cursor: zoom-in !important;
    touch-action: manipulation !important;
}

.ifk-home__photo-image-wrap {
    position: relative !important;
    display: block !important;
    width: 100% !important;
    min-width: 0 !important;
    height: auto !important;
    min-height: 0 !important;
    aspect-ratio: 4 / 3 !important;
    overflow: hidden !important;
    background: #e8edf3 !important;
    line-height: normal !important;
}

.ifk-home__photo-image-wrap img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    min-width: 100% !important;
    min-height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    object-fit: cover !important;
    object-position: center 28% !important;
    transform: scale(1.002) !important;
}

.ifk-home__photo-zoom {
    position: absolute !important;
    right: .55rem !important;
    bottom: .55rem !important;
    z-index: 2 !important;
    display: inline-flex !important;
    width: auto !important;
    height: auto !important;
    min-height: 1.75rem !important;
    align-items: center !important;
    padding: .28rem .52rem !important;
    border: 1px solid rgba(255,255,255,.22) !important;
    border-radius: .5rem !important;
    background: rgba(8,28,51,.82) !important;
    box-shadow: 0 .3rem .9rem rgba(0,0,0,.18) !important;
    color: #fff !important;
    font-size: .66rem !important;
    font-weight: 850 !important;
    line-height: 1 !important;
    opacity: 0 !important;
    transform: translateY(.2rem) !important;
    white-space: nowrap !important;
    pointer-events: none !important;
    backdrop-filter: none !important;
}

.ifk-home__photo-button:focus-visible {
    outline: 3px solid #f3c94c !important;
    outline-offset: 3px !important;
}

.ifk-home__photo-item:focus-within {
    border-color: rgba(29,66,137,.58) !important;
}

/* The old under-image caption block is intentionally absent in v22. */
.ifk-home__photo-item figcaption,
.ifk-home__photo-match-link,
.ifk-home__photo-page-link {
    display: none !important;
}

/* Bildsök-style native dialog. */
.ifk-home-image-dialog,
.ifk-home-image-dialog * {
    box-sizing: border-box !important;
}

.ifk-home-image-dialog {
    width: min(76rem,calc(100vw - 1.5rem)) !important;
    max-width: 100% !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    margin: auto !important;
    padding: 0 !important;
    overflow: hidden !important;
    border: 1px solid rgba(255,255,255,.16) !important;
    border-radius: 1.2rem !important;
    background: #0b1727 !important;
    box-shadow: 0 1.8rem 5rem rgba(0,0,0,.55) !important;
    color: #fff !important;
}

.ifk-home-image-dialog::backdrop {
    background:
        radial-gradient(circle at 50% 18%,rgba(29,66,137,.28),transparent 42%),
        rgba(2,9,18,.93) !important;
    backdrop-filter: blur(9px) !important;
}

.ifk-home-image-dialog__inner {
    position: relative !important;
    display: grid !important;
    grid-template-columns: minmax(0,3fr) minmax(18rem,2fr) !important;
    width: 100% !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    min-width: 0 !important;
    overflow: hidden !important;
}

.ifk-home-image-dialog__media {
    position: relative !important;
    display: flex !important;
    min-width: 0 !important;
    min-height: 28rem !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    background:
        radial-gradient(circle at 50% 42%,rgba(29,66,137,.2),transparent 50%),
        #06101d !important;
}

.ifk-home-image-dialog__media img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: 100% !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    margin: 0 !important;
    padding: clamp(.75rem,2vw,1.5rem) !important;
    object-fit: contain !important;
    object-position: center !important;
    background: transparent !important;
    user-select: none !important;
    -webkit-user-drag: none !important;
}

.ifk-home-image-dialog__text {
    min-width: 0 !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    padding: clamp(1.25rem,3vw,2rem) !important;
    overflow-y: auto !important;
    background: #fff !important;
    color: #11253c !important;
    text-align: left !important;
    -webkit-overflow-scrolling: touch !important;
}

.ifk-home-image-dialog__counter {
    display: block !important;
    margin-bottom: .55rem !important;
    color: #607080 !important;
    font-size: .7rem !important;
    font-weight: 850 !important;
    letter-spacing: .06em !important;
    text-transform: uppercase !important;
}

.ifk-home-image-dialog__text h2,
.ifk-home-image-dialog__text p {
    margin: 0 !important;
    text-align: left !important;
}

.ifk-home-image-dialog__text h2 {
    color: #11253c !important;
    font-size: clamp(1.2rem,2.2vw,1.6rem) !important;
    line-height: 1.25 !important;
}

.ifk-home-image-dialog__text p {
    margin-top: .65rem !important;
    color: #607080 !important;
    font-size: .9rem !important;
    line-height: 1.55 !important;
}

.ifk-home-image-dialog__text p[hidden],
.ifk-home-image-dialog__text a[hidden] {
    display: none !important;
}

.ifk-home-image-dialog__match-meta {
    color: #394650 !important;
    font-weight: 750 !important;
}

.ifk-home-image-dialog__match-link,
.ifk-home-image-dialog__photo-link {
    appearance: none !important;
    display: inline-flex !important;
    min-height: 2.7rem !important;
    align-items: center !important;
    justify-content: center !important;
    margin-top: .85rem !important;
    padding: .55rem .8rem !important;
    border: 1px solid #1d4289 !important;
    border-radius: .65rem !important;
    background: #1d4289 !important;
    color: #fff !important;
    font-size: .84rem !important;
    font-weight: 850 !important;
    line-height: 1.2 !important;
    text-decoration: none !important;
}

.ifk-home-image-dialog__photo-link {
    margin-left: .35rem !important;
    border-color: rgba(29,66,137,.18) !important;
    background: #eaf1fb !important;
    color: #1d4289 !important;
}

.ifk-home-image-dialog__close,
.ifk-home-image-dialog__nav {
    appearance: none !important;
    position: absolute !important;
    z-index: 4 !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 1px solid rgba(255,255,255,.25) !important;
    background: rgba(5,20,36,.88) !important;
    box-shadow: 0 .55rem 1.4rem rgba(0,0,0,.28) !important;
    color: #fff !important;
    font: inherit !important;
    cursor: pointer !important;
    touch-action: manipulation !important;
}

.ifk-home-image-dialog__close {
    top: .75rem !important;
    right: .75rem !important;
    width: 2.75rem !important;
    height: 2.75rem !important;
    border-radius: 50% !important;
    font-size: 1.55rem !important;
    line-height: 1 !important;
}

.ifk-home-image-dialog__nav {
    top: 50% !important;
    width: 3rem !important;
    height: 3.5rem !important;
    border-radius: .8rem !important;
    font-size: 1.8rem !important;
    line-height: 1 !important;
    transform: translateY(-50%) !important;
}

.ifk-home-image-dialog__prev {
    left: .75rem !important;
}

.ifk-home-image-dialog__next {
    right: .75rem !important;
}

.ifk-home-image-dialog__close:focus-visible,
.ifk-home-image-dialog__nav:focus-visible,
.ifk-home-image-dialog__text a:focus-visible {
    outline: 3px solid #f3c94c !important;
    outline-offset: 3px !important;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__photo-item:hover {
        border-color: rgba(29,66,137,.42) !important;
        box-shadow: 0 .8rem 1.8rem rgba(16,38,64,.14) !important;
        transform: translateY(-3px) !important;
    }

    .ifk-home__photo-item:hover img,
    .ifk-home__photo-button:focus-visible img {
        transform: scale(1.04) !important;
    }

    .ifk-home__photo-item:hover .ifk-home__photo-zoom,
    .ifk-home__photo-item:focus-within .ifk-home__photo-zoom {
        opacity: 1 !important;
        transform: translateY(0) !important;
    }

    .ifk-home-image-dialog__close:hover,
    .ifk-home-image-dialog__nav:hover {
        border-color: rgba(255,255,255,.44) !important;
        background: #153f70 !important;
    }

    .ifk-home-image-dialog__match-link:hover {
        border-color: #0f2854 !important;
        background: #0f2854 !important;
    }
}

@media (max-width:63.99rem) {
    .ifk-home-image-dialog__inner {
        grid-template-columns: minmax(0,1fr) !important;
        grid-template-rows: minmax(0,1fr) auto !important;
    }

    .ifk-home-image-dialog__media {
        min-height: 18rem !important;
    }

    .ifk-home-image-dialog__media img {
        max-height: 66vh !important;
        max-height: 66dvh !important;
    }

    .ifk-home-image-dialog__text {
        max-height: 31vh !important;
        max-height: 31dvh !important;
        padding: 1rem 1.1rem 1.15rem !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__photo-grid {
        gap: .48rem !important;
    }

    .ifk-home__photo-item {
        border-radius: .65rem !important;
        box-shadow: 0 .25rem .75rem rgba(16,38,64,.07) !important;
    }

    .ifk-home__photo-zoom {
        right: .35rem !important;
        bottom: .35rem !important;
        min-height: 1.5rem !important;
        padding: .23rem .4rem !important;
        border-radius: .4rem !important;
        font-size: .58rem !important;
        opacity: 1 !important;
        transform: none !important;
    }

    .ifk-home-image-dialog {
        width: 100% !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
        border-width: 0 !important;
        border-radius: 0 !important;
    }

    .ifk-home-image-dialog__inner {
        max-height: 100vh !important;
        max-height: 100dvh !important;
    }

    .ifk-home-image-dialog__media {
        min-height: 0 !important;
    }

    .ifk-home-image-dialog__media img {
        max-height: 68vh !important;
        max-height: 68dvh !important;
        padding: .5rem !important;
    }

    .ifk-home-image-dialog__text {
        max-height: 32vh !important;
        max-height: 32dvh !important;
        padding-bottom: max(1rem,env(safe-area-inset-bottom)) !important;
    }

    .ifk-home-image-dialog__close {
        top: max(.5rem,env(safe-area-inset-top)) !important;
        right: .5rem !important;
        width: 2.35rem !important;
        height: 2.35rem !important;
        font-size: 1.4rem !important;
    }

    .ifk-home-image-dialog__nav {
        width: 2.6rem !important;
        height: 3rem !important;
        border-radius: .7rem !important;
        font-size: 1.6rem !important;
    }

    .ifk-home-image-dialog__prev {
        left: .45rem !important;
    }

    .ifk-home-image-dialog__next {
        right: .45rem !important;
    }

    .ifk-home-image-dialog__match-link,
    .ifk-home-image-dialog__photo-link {
        width: 100% !important;
        margin-right: 0 !important;
        margin-left: 0 !important;
    }

    .ifk-home-image-dialog__photo-link {
        margin-top: .45rem !important;
    }
}

@media (max-width:21.99rem) {
    .ifk-home__photo-grid {
        grid-template-columns: minmax(0,1fr) !important;
    }
}

@media (prefers-reduced-motion:no-preference) {
    .ifk-home__photo-item,
    .ifk-home__photo-image-wrap img,
    .ifk-home__photo-zoom,
    .ifk-home-image-dialog button,
    .ifk-home-image-dialog a {
        transition:
            background-color 160ms ease,
            border-color 160ms ease,
            box-shadow 160ms ease,
            opacity 160ms ease,
            transform 160ms ease !important;
    }
}

/* v23: Bildsök dialog with information below the image */
.ifk-home-image-dialog {
    width: min(76rem,calc(100vw - 1.5rem)) !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
}

.ifk-home-image-dialog__inner {
    display: grid !important;
    width: 100% !important;
    height: min(94vh,54rem) !important;
    height: min(94dvh,54rem) !important;
    max-height: calc(100vh - 1.5rem) !important;
    max-height: calc(100dvh - 1.5rem) !important;
    grid-template-columns: minmax(0,1fr) !important;
    grid-template-rows: minmax(0,1fr) auto !important;
}

.ifk-home-image-dialog__media {
    min-height: 18rem !important;
    height: auto !important;
}

.ifk-home-image-dialog__media img {
    width: 100% !important;
    height: 100% !important;
    max-height: none !important;
    padding: clamp(.7rem,1.8vw,1.35rem) !important;
}

.ifk-home-image-dialog__text {
    display: block !important;
    min-width: 0 !important;
    max-height: min(35vh,16rem) !important;
    max-height: min(35dvh,16rem) !important;
    padding: 1rem 1.15rem 1.1rem !important;
    overflow-y: auto !important;
    border-top: 1px solid rgba(17,57,97,.12) !important;
    background: #fff !important;
    text-align: left !important;
}

.ifk-home-image-dialog__counter {
    margin: 0 0 .55rem !important;
}

.ifk-home-image-dialog__text h2 {
    margin: 0 !important;
    color: #11253c !important;
    font-size: clamp(1.25rem,2.2vw,1.7rem) !important;
    line-height: 1.22 !important;
}

.ifk-home-image-dialog__text > p {
    margin: .55rem 0 0 !important;
    font-size: .88rem !important;
    line-height: 1.5 !important;
}

.ifk-home-image-dialog__people {
    color: #1d4289 !important;
    font-weight: 750 !important;
}

.ifk-home-image-dialog__people-label {
    color: #394650 !important;
    font-weight: 750 !important;
}

.ifk-home-image-dialog__people a {
    color: #1d4289 !important;
    font-weight: 800 !important;
    text-decoration: underline !important;
    text-decoration-thickness: 1px !important;
    text-underline-offset: 2px !important;
}

.ifk-home-image-dialog__match-meta {
    color: #394650 !important;
    font-weight: 750 !important;
}

.ifk-home-image-dialog__actions {
    display: flex !important;
    flex-wrap: wrap !important;
    align-items: center !important;
    gap: .55rem !important;
    margin-top: .85rem !important;
}

.ifk-home-image-dialog__match-link,
.ifk-home-image-dialog__photo-link {
    width: auto !important;
    margin: 0 !important;
    white-space: nowrap !important;
}

.ifk-home-image-dialog__text p[hidden],
.ifk-home-image-dialog__text a[hidden],
.ifk-home-image-dialog__actions:empty {
    display: none !important;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home-image-dialog__people a:hover,
    .ifk-home-image-dialog__people a:focus {
        text-decoration-thickness: 2px !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home-image-dialog__inner {
        height: 100vh !important;
        height: 100dvh !important;
        max-height: 100vh !important;
        max-height: 100dvh !important;
    }

    .ifk-home-image-dialog__media {
        min-height: 0 !important;
    }

    .ifk-home-image-dialog__media img {
        padding: .5rem !important;
    }

    .ifk-home-image-dialog__text {
        max-height: 38vh !important;
        max-height: 38dvh !important;
        padding: .9rem .95rem max(1rem,env(safe-area-inset-bottom)) !important;
    }

    .ifk-home-image-dialog__actions {
        display: grid !important;
        grid-template-columns: minmax(0,1fr) !important;
        gap: .45rem !important;
    }

    .ifk-home-image-dialog__match-link,
    .ifk-home-image-dialog__photo-link {
        width: 100% !important;
    }
}

/* v24: calmer lightbox caption typography */
.ifk-home-image-dialog__text h2 {
    font-size: clamp(1rem,1.55vw,1.25rem) !important;
    font-weight: 850 !important;
    letter-spacing: -.012em !important;
    line-height: 1.3 !important;
    text-wrap: pretty !important;
}

@media (max-width:47.99rem) {
    .ifk-home-image-dialog__text h2 {
        font-size: 1rem !important;
        line-height: 1.32 !important;
    }
}

/* v25: cached external-news block */
.ifk-home__news-grid {
    display: grid;
    grid-template-columns: repeat(4,minmax(0,1fr));
    gap: .8rem;
}

.ifk-home__news-card {
    display: grid;
    min-width: 0;
    overflow: hidden;
    border: 1px solid rgba(18,54,96,.12);
    border-radius: .95rem;
    background: #fff;
    box-shadow: 0 .42rem 1.15rem rgba(16,36,59,.055);
    transition:
        transform .2s ease,
        border-color .2s ease,
        box-shadow .2s ease;
}

.ifk-home__news-image {
    position: relative;
    display: block;
    aspect-ratio: 16 / 9;
    overflow: hidden;
    background:
        linear-gradient(135deg,#1d4289,#102d61);
}

.ifk-home__news-image:after {
    position: absolute;
    inset: 0;
    background: linear-gradient(180deg,transparent 55%,rgba(6,24,51,.16));
    content: "";
    pointer-events: none;
}

.ifk-home__news-image img {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    object-fit: cover !important;
    object-position: center !important;
    transition: transform .24s ease !important;
}

.ifk-home__news-body {
    display: flex;
    min-width: 0;
    flex-direction: column;
    padding: .78rem .82rem .82rem;
}

.ifk-home__news-meta {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: .55rem;
    color: #718095;
    font-size: .58rem;
    font-weight: 800;
    line-height: 1.25;
}

.ifk-home__news-meta span {
    min-width: 0;
    overflow: hidden;
    color: var(--ifk-blue);
    font-weight: 900;
    letter-spacing: .045em;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ifk-home__news-meta time {
    flex: 0 0 auto;
    white-space: nowrap;
}

.ifk-home__news-card h3 {
    display: -webkit-box;
    margin: .38rem 0 0 !important;
    overflow: hidden;
    color: var(--ifk-ink) !important;
    font-size: .95rem;
    letter-spacing: -.012em;
    line-height: 1.28;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.ifk-home__news-card h3 a {
    color: inherit !important;
    text-decoration: none !important;
}

.ifk-home__news-card p {
    display: -webkit-box;
    margin: .42rem 0 0 !important;
    overflow: hidden;
    color: var(--ifk-muted);
    font-size: .86rem;
    line-height: 1.45;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 3;
}

.ifk-home__news-link {
    display: inline-flex;
    align-items: center;
    gap: .28rem;
    margin-top: auto;
    padding-top: .58rem;
    color: var(--ifk-blue) !important;
    font-size: .66rem;
    font-weight: 850;
    line-height: 1.2;
    text-decoration: none !important;
}

.ifk-home__news-link span {
    font-size: .78rem;
    transition: transform .18s ease;
}

.ifk-home__news-image:focus-visible,
.ifk-home__news-card h3 a:focus-visible,
.ifk-home__news-link:focus-visible {
    outline: 3px solid rgba(29,66,137,.38);
    outline-offset: 3px;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__news-card:hover {
        transform: translateY(-.18rem);
        border-color: rgba(29,66,137,.24);
        box-shadow: 0 .8rem 1.75rem rgba(16,36,59,.1);
    }

    .ifk-home__news-card:hover .ifk-home__news-image img {
        transform: scale(1.035);
    }

    .ifk-home__news-card:hover .ifk-home__news-link span {
        transform: translate(.08rem,-.08rem);
    }

    .ifk-home__news-card h3 a:hover,
    .ifk-home__news-link:hover {
        text-decoration: underline !important;
        text-underline-offset: 2px;
    }
}

@media (max-width:68rem) {
    .ifk-home__news-grid {
        grid-template-columns: repeat(2,minmax(0,1fr));
    }
}

@media (max-width:47.99rem) {
    .ifk-home__news-grid {
        grid-template-columns: minmax(0,1fr);
        gap: .65rem;
    }

    .ifk-home__news-card {
        grid-template-columns: 7.3rem minmax(0,1fr);
        border-radius: .82rem;
    }

    .ifk-home__news-image {
        height: 100%;
        min-height: 8.4rem;
        aspect-ratio: auto;
    }

    .ifk-home__news-body {
        padding: .66rem .7rem .68rem;
    }

    .ifk-home__news-meta {
        align-items: flex-start;
        flex-direction: column;
        gap: .12rem;
    }

    .ifk-home__news-card h3 {
        margin-top: .28rem !important;
        font-size: .95rem;
        -webkit-line-clamp: 2;
    }

    .ifk-home__news-card p {
        margin-top: .28rem !important;
        font-size: .86rem;
        -webkit-line-clamp: 2;
    }

    .ifk-home__news-link {
        padding-top: .42rem;
        font-size: .63rem;
    }
}

@media (max-width:25rem) {
    .ifk-home__news-card {
        grid-template-columns: minmax(0,1fr);
    }

    .ifk-home__news-image {
        min-height: 0;
        aspect-ratio: 16 / 9;
    }
}

@media (prefers-reduced-motion:reduce) {
    .ifk-home__news-card,
    .ifk-home__news-image img,
    .ifk-home__news-link span {
        transition: none !important;
    }
}

/* v26: compact text-only news cards */
.ifk-home__news-card {
    position: relative;
    display: block;
    overflow: hidden;
}

.ifk-home__news-card:before {
    position: absolute;
    inset: 0 0 auto;
    height: .22rem;
    background: linear-gradient(90deg,#1d4289,#5d82bd);
    content: "";
}

.ifk-home__news-body {
    min-height: 10.6rem;
    padding: 1rem .9rem .86rem;
}

.ifk-home__news-card h3 {
    margin-top: .48rem !important;
    font-size: .96rem;
    -webkit-line-clamp: 3;
}

.ifk-home__news-card p {
    margin-top: .48rem !important;
    font-size: .86rem;
    -webkit-line-clamp: 3;
}

.ifk-home__news-link {
    padding-top: .7rem;
}

.ifk-home__news-image {
    display: none !important;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__news-card:hover .ifk-home__news-image img {
        transform: none !important;
    }
}

@media (max-width:47.99rem) {
    .ifk-home__news-card {
        display: block;
    }

    .ifk-home__news-body {
        min-height: 0;
        padding: .82rem .78rem .74rem;
    }

    .ifk-home__news-meta {
        align-items: center;
        flex-direction: row;
        gap: .5rem;
    }

    .ifk-home__news-card h3 {
        margin-top: .38rem !important;
        font-size: .92rem;
        -webkit-line-clamp: 2;
    }

    .ifk-home__news-card p {
        margin-top: .34rem !important;
        font-size: .82rem;
        -webkit-line-clamp: 2;
    }

    .ifk-home__news-link {
        padding-top: .5rem;
    }
}

/* v28: publisher avatars replace the news-card top stripe */
.ifk-home__news-card:before {
    display: none !important;
    content: none !important;
}

.ifk-home__news-body {
    padding-top: .84rem;
}

.ifk-home__news-meta {
    align-items: center;
}

.ifk-home__news-sender {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: .48rem;
}

.ifk-home__news-meta .ifk-home__news-avatar {
    position: relative;
    display: grid;
    width: 2.15rem;
    height: 2.15rem;
    min-width: 2.15rem;
    flex: 0 0 2.15rem;
    place-items: center;
    overflow: hidden;
    border: 1px solid rgba(18,54,96,.13);
    border-radius: .58rem;
    background: #edf3fa;
    color: var(--ifk-blue);
    font-size: .65rem;
    font-weight: 900;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none;
    white-space: normal;
}

.ifk-home__news-meta .ifk-home__news-avatar-fallback {
    position: relative;
    z-index: 0;
    display: block;
    min-width: 0;
    overflow: visible;
    color: inherit;
    font-size: inherit;
    font-weight: inherit;
    letter-spacing: 0;
    line-height: 1;
    text-transform: none;
    white-space: normal;
}

.ifk-home__news-avatar img {
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block !important;
    width: 100% !important;
    height: 100% !important;
    max-width: none !important;
    max-height: none !important;
    margin: 0 !important;
    padding: .08rem !important;
    object-fit: contain !important;
    object-position: center !important;
    background: #fff !important;
}

.ifk-home__news-meta .ifk-home__news-publisher {
    min-width: 0;
    overflow: hidden;
    color: var(--ifk-blue);
    font-size: .6rem;
    font-weight: 900;
    letter-spacing: .045em;
    line-height: 1.2;
    text-overflow: ellipsis;
    text-transform: uppercase;
    white-space: nowrap;
}

.ifk-home__news-meta time {
    align-self: center;
}

@media (max-width:47.99rem) {
    .ifk-home__news-body {
        padding-top: .72rem;
    }

    .ifk-home__news-meta .ifk-home__news-avatar {
        width: 1.9rem;
        height: 1.9rem;
        min-width: 1.9rem;
        flex-basis: 1.9rem;
        border-radius: .5rem;
        font-size: .58rem;
    }

    .ifk-home__news-meta .ifk-home__news-publisher {
        font-size: .57rem;
    }
}

/* v29: larger circular publisher avatars */
.ifk-home__news-meta .ifk-home__news-avatar {
    width: 2.75rem !important;
    height: 2.75rem !important;
    min-width: 2.75rem !important;
    flex-basis: 2.75rem !important;
    border: 2px solid #fff !important;
    border-radius: 50% !important;
    background: #edf3fa !important;
    box-shadow:
        0 .28rem .7rem rgba(16,36,59,.18),
        0 0 0 1px rgba(18,54,96,.08) !important;
}

.ifk-home__news-avatar img {
    padding: .12rem !important;
    border-radius: 50% !important;
}

.ifk-home__news-meta .ifk-home__news-avatar-fallback {
    font-size: .72rem !important;
}

.ifk-home__news-sender {
    gap: .6rem !important;
}

@media (max-width:47.99rem) {
    .ifk-home__news-meta .ifk-home__news-avatar {
        width: 2.35rem !important;
        height: 2.35rem !important;
        min-width: 2.35rem !important;
        flex-basis: 2.35rem !important;
        box-shadow:
            0 .22rem .58rem rgba(16,36,59,.16),
            0 0 0 1px rgba(18,54,96,.07) !important;
    }

    .ifk-home__news-meta .ifk-home__news-avatar-fallback {
        font-size: .64rem !important;
    }

    .ifk-home__news-sender {
        gap: .5rem !important;
    }
}

/* v30: larger publisher name with date below */
.ifk-home__news-meta {
    display: grid !important;
    grid-template-columns: 2.75rem minmax(0,1fr) !important;
    grid-template-rows: auto auto !important;
    column-gap: .6rem !important;
    row-gap: .08rem !important;
    align-items: center !important;
    justify-content: initial !important;
}

.ifk-home__news-sender {
    display: contents !important;
}

.ifk-home__news-meta .ifk-home__news-avatar {
    grid-column: 1 !important;
    grid-row: 1 / 3 !important;
}

.ifk-home__news-meta .ifk-home__news-publisher {
    grid-column: 2 !important;
    grid-row: 1 !important;
    align-self: end !important;
    font-size: .69rem !important;
    line-height: 1.18 !important;
}

.ifk-home__news-meta time {
    grid-column: 2 !important;
    grid-row: 2 !important;
    align-self: start !important;
    justify-self: start !important;
    color: #718095 !important;
    font-size: .58rem !important;
    line-height: 1.25 !important;
    white-space: nowrap !important;
}

@media (max-width:47.99rem) {
    .ifk-home__news-meta {
        grid-template-columns: 2.35rem minmax(0,1fr) !important;
        column-gap: .5rem !important;
        row-gap: .06rem !important;
    }

    .ifk-home__news-meta .ifk-home__news-publisher {
        font-size: .64rem !important;
    }

    .ifk-home__news-meta time {
        font-size: .55rem !important;
    }
}

/* v36: expandable same-day news */
.ifk-home__news-more {
    margin-top: .82rem;
}

.ifk-home__news-more summary {
    display: flex;
    width: max-content;
    max-width: 100%;
    min-height: 2.55rem;
    align-items: center;
    justify-content: center;
    gap: .46rem;
    margin: 0 auto;
    padding: .62rem .9rem;
    border: 1px solid rgba(29,66,137,.17);
    border-radius: 999px;
    background: #fff;
    box-shadow: 0 .3rem .9rem rgba(16,36,59,.055);
    color: var(--ifk-blue);
    cursor: pointer;
    font-size: .7rem;
    font-weight: 850;
    line-height: 1.2;
    list-style: none;
    text-align: center;
    transition:
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

.ifk-home__news-more summary::-webkit-details-marker {
    display: none;
}

.ifk-home__news-more summary::marker {
    content: "";
}

.ifk-home__news-more-hide {
    display: none;
}

.ifk-home__news-more-icon {
    display: inline-block;
    font-size: .92rem;
    line-height: .8;
    transition: transform .18s ease;
}

.ifk-home__news-more[open] .ifk-home__news-more-show {
    display: none;
}

.ifk-home__news-more[open] .ifk-home__news-more-hide {
    display: inline;
}

.ifk-home__news-more[open] .ifk-home__news-more-icon {
    transform: rotate(180deg);
}

.ifk-home__news-grid--extra {
    margin-top: .82rem;
}

.ifk-home__news-more summary:focus-visible {
    outline: 3px solid rgba(29,66,137,.35);
    outline-offset: 3px;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__news-more summary:hover {
        transform: translateY(-.08rem);
        border-color: rgba(29,66,137,.3);
        box-shadow: 0 .5rem 1.1rem rgba(16,36,59,.09);
    }
}

@media (max-width:47.99rem) {
    .ifk-home__news-more {
        margin-top: .68rem;
    }

    .ifk-home__news-more summary {
        width: 100%;
        min-height: 2.7rem;
        padding: .68rem .8rem;
        font-size: .68rem;
    }

    .ifk-home__news-grid--extra {
        margin-top: .68rem;
    }
}

@media (prefers-reduced-motion:reduce) {
    .ifk-home__news-more summary,
    .ifk-home__news-more-icon {
        transition: none !important;
    }
}

/* v37: linked player and personnel tags in news cards */
.ifk-home__news-footer {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: .56rem;
    margin-top: auto;
    padding-top: .68rem;
}

.ifk-home__news-people {
    display: flex;
    max-width: 100%;
    flex-wrap: wrap;
    gap: .32rem;
}

.ifk-home__news-person-tag {
    display: inline-flex;
    min-width: 0;
    max-width: 100%;
    align-items: center;
    gap: .34rem;
    padding: .3rem .48rem;
    border: 1px solid rgba(29,66,137,.14);
    border-radius: 999px;
    background: #f1f5fa;
    color: var(--ifk-blue) !important;
    font-size: .61rem;
    font-weight: 850;
    line-height: 1.15;
    text-decoration: none !important;
    transition:
        background .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

.ifk-home__news-person-tag:before {
    width: .34rem;
    height: .34rem;
    flex: 0 0 .34rem;
    border-radius: 50%;
    background: currentColor;
    content: "";
    opacity: .58;
}

.ifk-home__news-footer .ifk-home__news-link {
    margin-top: 0;
    padding-top: 0;
}

.ifk-home__news-person-tag:focus-visible {
    outline: 3px solid rgba(29,66,137,.34);
    outline-offset: 2px;
}

@media (hover:hover) and (pointer:fine) {
    .ifk-home__news-person-tag:hover {
        transform: translateY(-.06rem);
        border-color: rgba(29,66,137,.28);
        background: #e8f0f9;
        box-shadow: 0 .22rem .55rem rgba(16,36,59,.08);
    }
}

@media (max-width:47.99rem) {
    .ifk-home__news-footer {
        gap: .48rem;
        padding-top: .56rem;
    }

    .ifk-home__news-people {
        gap: .28rem;
    }

    .ifk-home__news-person-tag {
        padding: .29rem .44rem;
        font-size: .59rem;
    }
}

@media (prefers-reduced-motion:reduce) {
    .ifk-home__news-person-tag {
        transition: none !important;
    }
}

/* Match som spelas i dag, integrerad i matcharkivet */
.ifk-home__match-card--today {
    border-color: rgba(29, 66, 137, .2) !important;
    box-shadow: 0 .8rem 1.9rem rgba(16, 36, 59, .11) !important;
}

.ifk-home__match-card--today:hover,
.ifk-home__match-card--today:focus-within {
    border-color: rgba(29, 66, 137, .32) !important;
    box-shadow: 0 1rem 2.35rem rgba(16, 36, 59, .16) !important;
}

.ifk-home__match-image--today {
    background:
        radial-gradient(circle at 76% 20%, rgba(255, 255, 255, .14), transparent 28%),
        radial-gradient(circle at 20% 120%, rgba(91, 142, 207, .3), transparent 45%),
        repeating-linear-gradient(120deg, transparent 0 4.7rem, rgba(255, 255, 255, .03) 4.7rem 4.76rem),
        linear-gradient(135deg, #214d91 0%, #123a77 48%, #0a2a5b 100%) !important;
}

.ifk-home__match-image--today::after {
    background:
        linear-gradient(180deg, rgba(4, 22, 50, .02) 18%, rgba(4, 22, 50, .24) 58%, rgba(4, 22, 50, .92) 100%) !important;
}

.ifk-home__match-result-badge--today {
    background: rgba(255, 255, 255, .14) !important;
    border-color: rgba(255, 255, 255, .34) !important;
    backdrop-filter: blur(.45rem) !important;
}

.ifk-home__match-card--today .ifk-home__match-card-head time {
    color: #fff !important;
}

.ifk-home__today-kickoff {
    display: grid !important;
    min-width: 4.2rem !important;
    align-content: center !important;
    justify-items: center !important;
    gap: .16rem !important;
    white-space: nowrap !important;
}

.ifk-home__today-kickoff small {
    color: #73839a !important;
    font-size: .54rem !important;
    font-weight: 900 !important;
    letter-spacing: .055em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
}

.ifk-home__today-kickoff strong {
    color: var(--ifk-blue) !important;
    font-family: "Francois One", "Arial Narrow", sans-serif !important;
    font-size: clamp(1.8rem, 2.35vw, 2.2rem) !important;
    font-weight: 400 !important;
    letter-spacing: .01em !important;
    line-height: 1 !important;
}

.ifk-home__today-action {
    color: var(--ifk-blue) !important;
    font-weight: 900 !important;
}

.ifk-home__match-card--today .ifk-home__match-card-link:hover .ifk-home__today-action,
.ifk-home__match-card--today .ifk-home__match-card-link:focus-visible .ifk-home__today-action {
    text-decoration: underline !important;
    text-decoration-thickness: .08em !important;
    text-underline-offset: .15em !important;
}

@media (max-width: 47.99rem) {
    .ifk-home__today-kickoff {
        min-width: 3.65rem !important;
    }

    .ifk-home__today-kickoff strong {
        font-size: 1.78rem !important;
    }
}

/* Gemensam vertikal placering för huvudnavigationen. */
.ifk-home {
    padding-top: 1rem !important;
}

.ifk-home__day-nav {
    margin-bottom: .85rem !important;
}

@media (max-width: 47.99rem) {
    .ifk-home {
        padding-top: .75rem !important;
    }

    .ifk-home__day-nav {
        margin-bottom: .55rem !important;
    }
}


.ifk-home__news-section--loading .ifk-home__news-card--skeleton {
    min-height: 190px;
    pointer-events: none;
}

.ifk-home__news-card--skeleton .ifk-home__news-body {
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
}

.ifk-home__skeleton-line {
    width: 100%;
    height: 0.78rem;
    border-radius: 999px;
    background: linear-gradient(90deg, rgba(29, 66, 137, 0.08), rgba(29, 66, 137, 0.16), rgba(29, 66, 137, 0.08));
    background-size: 200% 100%;
    animation: ifk-home-skeleton 1.4s ease-in-out infinite;
}

.ifk-home__skeleton-line--meta {
    width: 42%;
    height: 0.65rem;
}

.ifk-home__skeleton-line--title {
    width: 82%;
    height: 1.15rem;
    margin-top: 0.25rem;
}

.ifk-home__skeleton-line--short {
    width: 64%;
}

@keyframes ifk-home-skeleton {
    0% { background-position: 100% 0; }
    100% { background-position: -100% 0; }
}

@media (prefers-reduced-motion: reduce) {
    .ifk-home__skeleton-line {
        animation: none;
    }
}


/* Efterladdade block på startsidan */
.ifk-home__secondary-deferred[aria-busy="true"] { min-height: 24rem; }
.ifk-home__placeholder-card { pointer-events: none; }
.ifk-home__placeholder-block,
.ifk-home__placeholder-line {
    display: block;
    background: linear-gradient(90deg, rgba(16, 58, 112, .07), rgba(16, 58, 112, .13), rgba(16, 58, 112, .07));
    background-size: 220% 100%;
    animation: ifk-home-placeholder 1.35s ease-in-out infinite;
    border-radius: .65rem;
}
.ifk-home__placeholder-block { width: 5.25rem; min-width: 5.25rem; height: 5.25rem; }
.ifk-home__placeholder-block--wide { width: 100%; min-width: 0; height: 8rem; }
.ifk-home__placeholder-line { width: min(18rem, 92%); height: .85rem; margin: .55rem 0; }
.ifk-home__placeholder-line--short { width: min(10rem, 58%); }
@keyframes ifk-home-placeholder { 0% { background-position: 100% 0; } 100% { background-position: -100% 0; } }
@media (prefers-reduced-motion: reduce) { .ifk-home__placeholder-block, .ifk-home__placeholder-line { animation: none; } }

.ifk-home__quiz-promo {
    display: grid;
    grid-template-columns: 12rem minmax(0, 1fr) auto;
    gap: 1rem;
    align-items: center;
    margin: 1rem 0 0;
    padding: .75rem;
    border: 1px solid rgba(18, 54, 96, .12);
    border-radius: 1rem;
    background: #fff;
    box-shadow: 0 .55rem 1.5rem rgba(12, 36, 74, .07);
}

.ifk-home__quiz-promo--text {
    grid-template-columns: minmax(0, 1fr) auto;
}

.ifk-home__quiz-promo-media {
    display: block;
    overflow: hidden;
    border-radius: .75rem;
    aspect-ratio: 1.91 / 1;
    background: #0c326b;
}

.ifk-home__quiz-promo-media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.ifk-home__quiz-promo-copy {
    min-width: 0;
}

.ifk-home__quiz-promo-kicker {
    margin: 0 0 .18rem;
    color: #2c5a9c;
    font-size: .68rem;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.ifk-home__quiz-promo-copy h2 {
    margin: 0;
    color: #08254f;
    font-size: clamp(1.05rem, 2vw, 1.35rem);
    line-height: 1.12;
}

.ifk-home__quiz-promo-text {
    margin: .32rem 0 0;
    color: #65758a;
    font-size: .88rem;
    line-height: 1.4;
}

.ifk-home__quiz-promo-action {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
    gap: .45rem;
    min-width: 8.5rem;
}

.ifk-home__quiz-promo-action span {
    color: #7a8798;
    font-size: .72rem;
    font-weight: 650;
    white-space: nowrap;
}

.ifk-home__quiz-promo-button {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-height: 2.55rem;
    padding: .62rem 1rem;
    border: 1px solid #174a8f;
    border-radius: .72rem;
    background: #174a8f;
    color: #fff !important;
    font-size: .82rem;
    font-weight: 800;
    text-decoration: none;
    transition: background-color .18s ease, border-color .18s ease, transform .18s ease;
}

.ifk-home__quiz-promo-button:hover,
.ifk-home__quiz-promo-button:focus-visible {
    border-color: #0c326b;
    background: #0c326b;
    transform: translateY(-1px);
}

.ifk-home__quiz-promo-button:focus-visible {
    outline: 2px solid rgba(23, 74, 143, .3);
    outline-offset: 3px;
}

@media screen and (max-width: 760px) {
    .ifk-home__quiz-promo,
    .ifk-home__quiz-promo--text {
        grid-template-columns: 7rem minmax(0, 1fr);
        gap: .75rem;
    }

    .ifk-home__quiz-promo--text {
        grid-template-columns: minmax(0, 1fr) auto;
    }

    .ifk-home__quiz-promo-action {
        grid-column: 1 / -1;
        flex-direction: row;
        align-items: center;
        justify-content: space-between;
        min-width: 0;
        padding-top: .15rem;
    }
}

@media screen and (max-width: 520px) {
    .ifk-home__quiz-promo:not(.ifk-home__quiz-promo--text) {
        display: block;
        padding: 0;
        overflow: hidden;
        border: 0;
        border-radius: 1rem;
        background: transparent;
        box-shadow: none;
    }

    .ifk-home__quiz-promo:not(.ifk-home__quiz-promo--text) .ifk-home__quiz-promo-media {
        display: block;
        width: 100%;
        border-radius: 1rem;
    }

    .ifk-home__quiz-promo:not(.ifk-home__quiz-promo--text) .ifk-home__quiz-promo-copy,
    .ifk-home__quiz-promo:not(.ifk-home__quiz-promo--text) .ifk-home__quiz-promo-action {
        display: none;
    }

    .ifk-home__quiz-promo--text {
        grid-template-columns: 1fr;
        padding: .7rem;
    }

    .ifk-home__quiz-promo--text .ifk-home__quiz-promo-action {
        grid-column: auto;
    }
}

