header {
    background: #14101f url("../img/header_bg.jpg") center / cover no-repeat;
    padding: 36px 0 44px;
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
    outline-width: 0;
}

/*! CSS Used from: Embedded */
a {
    color: #0088cc;
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}
.action-link:hover{
    text-decoration: none;
}
.buttons .button {
    margin: 0 5px 5px 0;
}

.button {
    display: block;
    text-align: center;
    cursor: pointer;
    border: none;
    height: 40px;
    padding: 0 14px;
    border-radius: 5px;
    box-shadow: inset 0 -3px 0 0 rgba(0, 0, 0, 0.15);
    font-size: 18px;
    line-height: 37px;
    -webkit-transition-property: background-color;
    -webkit-transition-duration: 0.2s;
    -webkit-transition-timing-function: linear;
    -moz-transition-property: background-color;
    -moz-transition-duration: 0.2s;
    -moz-transition-timing-function: linear;
    -ms-transition-property: background-color;
    -ms-transition-duration: 0.2s;
    -ms-transition-timing-function: linear;
    -o-transition-property: background-color;
    -o-transition-duration: 0.2s;
    -o-transition-timing-function: linear;
    transition-property: background-color;
    transition-duration: 0.2s;
    transition-timing-function: linear;
    background: #fafafa;
    color: #222;
}

.button:active {
    line-height: 40px;
}

.button.button-danger {
    box-shadow: inset 0 -3px 0 0 rgba(0, 0, 0, 0.2);
}

.button:hover, .button:focus {
    background: #e6e6e6;
    color: #222;
}

.button.button-danger {
    background: #da4f49;
    color: #fafafa;
}

.button.button-danger:hover, .button.button-danger:focus {
    background: #d0312a;
    color: #fafafa;
}

.button span {
    pointer-events: none;
}

.button:hover {
    text-decoration: none;
}

.button:focus {
    text-decoration: none;
    outline: none;
}

.button:active {
    box-shadow: none !important;
}

.button-large {
    height: 50px;
    padding: 0 18px;
    border-radius: 6px;
    box-shadow: inset 0 -4px 0 0 rgba(0, 0, 0, 0.15);
    font-size: 22px;
    line-height: 46px;
}

.button-large:active {
    line-height: 50px;
}

.button-large.button-danger {
    box-shadow: inset 0 -4px 0 0 rgba(0, 0, 0, 0.2);
}

.button-inline {
    display: inline-block;
    vertical-align: middle;
}

.anchors {
    padding: 24px 0px;
}

/*! CSS Used from: https://cdnjs.cloudflare.com/ajax/libs/normalize/5.0.0/normalize.min.css */
a {
    background-color: transparent;
    -webkit-text-decoration-skip: objects;
}

a:active, a:hover {
    outline-width: 0;
}

/*! CSS Used from: Embedded */
a {
    text-decoration: none;
    transition: all 0.35s;
}

.action-link {
    display: block;
    margin: 0 auto 50px;
    position: relative;
    background: #d63e3e;
    border: 1px solid #9e9e9e;
    color: #707070;
    padding: 10px 16px;
    overflow: hidden;
    max-width: 200px;
    text-decoration: none;
}
@media (max-width: 1024px) {
    .action-link{
        margin: 0 auto 12px;

    }
}
.action-link .link-content {
    position: relative;
    z-index: 3;
    transition: color 0.35s;
    text-align: center;
    font-weight: 700;
}

.blip-link .blip {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    transition: all 0.35s;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
}

.blip-link .blip-click {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 0;
    height: 0;
    border-radius: 50%;
    transition: all 0.35s;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    background: #d63e3e;
}
.blip-link:hover .link-content {
    color: #d63e3e;
}
.blip-link:hover .blip {
    width: 375px;
    height: 375px;
}

.blip-link.red {
    border-color: #d63e3e;
}

.blip-link.red .blip {
    background: #ffffff;
}

.blip-link.red .blip-click {
    background: #d63e3e;
}

.blip-link.red .link-content {
    color: #ffffff;
}

.blip-link.red:hover .link-content {
    color: #d63e3e;
}
.footer {
    padding: 80px;
}
/* Фони хедера для окремих розділів */
header.header--football { background-image: linear-gradient(rgba(12,9,22,0.4), rgba(12,9,22,0.4)), url("../img/header_bg_football.jpg"); }
header.header--tennis { background-image: linear-gradient(rgba(12,9,22,0.5), rgba(12,9,22,0.5)), url("../img/header_bg_tennis.jpg"); }
header.header--esports  { background-image: url("../img/header_bg_esports.jpg"); }
header.header--hockey { background-image: linear-gradient(rgba(12,9,22,0.55), rgba(12,9,22,0.55)), url("../img/header_bg_hockey.jpg"); }
header.header--home { background-image: linear-gradient(rgba(12,9,22,0.5), rgba(12,9,22,0.5)), url("../img/header_bg.jpg"); }
.header__logo { margin-bottom: 16px; }
.header__logo-img { width: 120px; max-width: 45%; height: auto; }

/* Верхнє меню сайту */
.topnav { background: #14101f; border-bottom: 1px solid #2c2230; }
.topnav__inner { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 8px 20px; padding-top: 8px; padding-bottom: 8px; }
.topnav__logo { display: block; flex: 0 0 auto; }
.topnav__logo img { display: block; height: 40px; width: auto; }
.topnav__list { list-style: none; margin: 0; padding: 0; display: flex; flex-wrap: wrap; gap: 8px; }
.topnav .action-link { display: flex; align-items: center; justify-content: center; margin: 0; max-width: none; height: 38px; padding: 0 14px; white-space: nowrap; font-size: .95rem; }
.topnav .action-link.is-active { background: #fff; }
.topnav .action-link.is-active .link-content { color: #d63e3e; }
.topnav__toggle { display: none; width: 44px; height: 40px; padding: 0; background: transparent; border: 1px solid #5a3a1c; border-radius: 6px; cursor: pointer; flex-direction: column; align-items: center; justify-content: center; gap: 5px; }
.topnav__toggle span { display: block; width: 22px; height: 2px; background: #ffa63a; border-radius: 2px; transition: transform .25s, opacity .25s; }
.topnav.is-open .topnav__toggle span:nth-child(1) { transform: translateY(7px) rotate(45deg); }
.topnav.is-open .topnav__toggle span:nth-child(2) { opacity: 0; }
.topnav.is-open .topnav__toggle span:nth-child(3) { transform: translateY(-7px) rotate(-45deg); }
@media (max-width: 767px) {
    .topnav__inner { flex-wrap: wrap; justify-content: space-between; }
    .topnav__toggle { display: flex; }
    .topnav__list { display: none; flex-direction: column; flex: 0 0 100%; width: 100%; gap: 6px; padding: 8px 0 6px; }
    .topnav.is-open .topnav__list { display: flex; }
    .topnav .action-link { width: 100%; height: 46px; justify-content: flex-start; padding: 0 16px; }
}

/* Контент */
.content { padding-bottom: 24px; }
.content h2 { margin: 36px 0 14px; scroll-margin-top: 16px; }
.content h3 { margin: 24px 0 10px; scroll-margin-top: 16px; }
.content p { line-height: 1.65; }
.breadcrumbs { font-size: .9rem; margin-bottom: 12px; color: #6c757d; }
.breadcrumbs a { color: #d63e3e; }

/* nav.toc — зміст */
.toc { margin: 28px 0; padding: 20px 24px; border: 1px solid #e2e2e2; border-radius: 8px; background: #f7f7f8; }
.toc__title { margin: 0 0 10px; font-size: 1.35rem; font-weight: 700; }
.toc ol { margin: 0; padding-left: 22px; }
.toc ol ol { margin-top: 4px; list-style: lower-alpha; }
.toc li { margin-bottom: 4px; }
.toc a { color: #c0302f; }
.toc a:hover { text-decoration: underline; }

/* Читайте також: картки */
.related { margin: 40px 0 8px; padding-top: 20px; border-top: 1px solid #e2e2e2; }
.related__title { font-weight: 700; font-size: 1.4rem; margin-bottom: 16px; }
.related__grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 20px; }
@media (max-width: 991px) { .related__grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 575px) { .related__grid { grid-template-columns: 1fr; } }
.post-card { display: flex; flex-direction: column; background: #fff; border: 1px solid #e2e2e2; border-radius: 10px; overflow: hidden; color: #1d1008; box-shadow: 0 1px 3px rgba(0,0,0,.06); transition: transform .2s, box-shadow .2s; }
.post-card:hover { transform: translateY(-3px); box-shadow: 0 8px 20px rgba(0,0,0,.14); color: #b4530a; }
.post-card img { display: block; width: 100%; height: auto; aspect-ratio: 8 / 5; object-fit: cover; }
.post-card__title { display: block; padding: 14px 16px 16px; font-weight: 700; line-height: 1.3; }

.footer { padding: 32px 0; background: #14101f; color: #fff; }
.footer__logo { width: 280px; max-width: 80%; height: auto; margin: 28px auto 0; display: block; }
.footer img { height: auto; }
.age-note { color: rgba(255,255,255,.7); font-size: .95rem; margin: 24px 0 0; }

/* Вищий хедер на ПК */
@media (min-width: 992px) { header { padding: 96px 0 108px; } .header__logo { margin-bottom: 22px; } }

/* Кольори кнопок під логотип (бурштиново-помаранчева гама) */
.button.button-danger { background: linear-gradient(180deg, #ffa63a, #ee7a1b); color: #1d1008; font-weight: 700; box-shadow: inset 0 -4px 0 0 rgba(90,35,0,.35); }
.button.button-danger:hover, .button.button-danger:focus { background: linear-gradient(180deg, #ffb457, #f5871f); color: #1d1008; }
.action-link { background: #ee7a1b; border-color: #ee7a1b; }
.blip-link.red { border-color: #ee7a1b; }
.blip-link.red .link-content { color: #1d1008; }
.blip-link.red .blip-click { background: #ee7a1b; }
.blip-link.red:hover .link-content { color: #b4530a; }
.topnav .action-link.is-active { background: transparent; border-color: #ffa63a; }
.topnav .action-link.is-active .link-content { color: #ffa63a; }
.breadcrumbs a, .toc a, .related a { color: #b4530a; }

/* Хлібні крихти та відступ контенту від хедера */
.content { padding-top: 28px; }
.breadcrumbs { margin-top: 4px; }

/* Згортуваний зміст */
.toc details > summary { list-style: none; cursor: pointer; display: flex; align-items: center; justify-content: space-between; margin: 0; }
.toc details > summary::-webkit-details-marker { display: none; }
.toc details > summary::after { content: ""; width: 10px; height: 10px; border-right: 2px solid #b4530a; border-bottom: 2px solid #b4530a; transform: rotate(45deg); transition: transform .2s; margin-right: 4px; }
.toc details[open] > summary::after { transform: rotate(-135deg); }
.toc details[open] > summary { margin-bottom: 10px; }

/* Футер: логотип над партнерами */
.footer__logo { margin: 0 auto 24px; }
.footer__partners { align-items: center; }
.footer__partners { justify-content: center; }
.footer__partners > div { flex: 0 0 auto; width: auto; max-width: none; padding: 8px 18px; }

/* Меню на ПК: звичайні посилання */
@media (min-width: 768px) {
    .topnav__list { gap: 4px; }
    .topnav .action-link { background: transparent; border: 0; border-bottom: 2px solid transparent; border-radius: 0; box-shadow: none; height: 40px; padding: 0 12px; font-size: 1rem; overflow: visible; }
    .topnav .action-link .blip, .topnav .action-link .blip-click { display: none; }
    .topnav .action-link .link-content { color: #e9e1d6; font-weight: 600; }
    .topnav .action-link.blip-link.red:hover .link-content { color: #ffa63a; }
    .topnav .action-link:hover { border-bottom-color: rgba(255,166,58,.5); }
    .topnav .action-link.is-active { background: transparent; border-color: transparent; border-bottom-color: #ffa63a; }
    .topnav .action-link.is-active .link-content { color: #ffa63a; }
}

/* Таблиця рейтингу букмекерів */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border: 0; }
.rating-wrap { margin: 20px 0 28px; }
.rating { width: 100%; border-collapse: separate; border-spacing: 0 10px; }
.rating thead th { padding: 0 16px 2px; font-size: .85rem; font-weight: 600; text-transform: uppercase; letter-spacing: .04em; color: #6c757d; border: 0; }
.rating tbody td { padding: 14px 16px; vertical-align: middle; background: #fff; border-top: 1px solid #e2e2e2; border-bottom: 1px solid #e2e2e2; }
.rating tbody td:first-child { border-left: 1px solid #e2e2e2; border-radius: 10px 0 0 10px; }
.rating tbody td:last-child { border-right: 1px solid #e2e2e2; border-radius: 0 10px 10px 0; }
.rating tbody tr { box-shadow: 0 1px 3px rgba(0,0,0,.06); }
.rating__pos { width: 64px; text-align: center; font-size: 1.4rem; font-weight: 800; color: #b4530a; }
.rating__brand img { display: block; width: auto; height: auto; max-width: 150px; max-height: 40px; }
.rating__score { white-space: nowrap; }
.rating__score strong { margin-left: 6px; font-size: 1.15rem; }
.rating__action { text-align: right; width: 1%; white-space: nowrap; }
.stars { --r: 5; display: inline-block; font-size: 1.25rem; letter-spacing: 2px; line-height: 1; vertical-align: middle; }
.stars::before { content: "★★★★★"; background: linear-gradient(90deg, #f5a623 calc(var(--r) / 5 * 100%), #d9d9d9 0); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; color: transparent; }
.rating__btn { display: inline-block; height: 42px; line-height: 38px; font-size: 1rem; padding: 0 18px; }
.rating__badge { position: absolute; top: -11px; z-index: 2; left: 14px; padding: 3px 10px; font-size: .72rem; font-weight: 800; line-height: 1.3; letter-spacing: .05em; text-transform: uppercase; color: #1d1008; background: linear-gradient(180deg, #ffa63a, #ee7a1b); border-radius: 5px; white-space: nowrap; }
.rating__pos { position: relative; }
.rating-wrap { margin-top: 34px; }
@media (min-width: 768px) {
    .rating tbody tr.rating__row--top td { border-top: 2px solid #ee7a1b; border-bottom: 2px solid #ee7a1b; background: #fffaf4; }
    .rating tbody tr.rating__row--top td:first-child { border-left: 2px solid #ee7a1b; }
    .rating tbody tr.rating__row--top td:last-child { border-right: 2px solid #ee7a1b; }
}
@media (max-width: 767px) {
    .rating-wrap { margin-top: 40px; }
    .rating, .rating tbody, .rating tr, .rating td { display: block; width: 100%; }
    .rating { border-spacing: 0; }
    .rating tbody tr { position: relative; margin-bottom: 18px; padding: 14px 16px 16px 68px; background: #fff; border: 1px solid #e2e2e2; border-radius: 10px; text-align: center; }
    .rating tbody tr.rating__row--top { border: 2px solid #ee7a1b; background: #fffaf4; }
    .rating tbody td, .rating tbody td:first-child, .rating tbody td:last-child { padding: 5px 0; border: 0; border-radius: 0; background: transparent; text-align: center; }
    .rating tbody td.rating__pos { position: absolute; top: 0; bottom: 0; left: 0; width: 52px; padding: 0; display: flex; align-items: center; justify-content: center; border-right: 0; }
    .rating__badge { top: -11px; left: 12px; }
    .rating__brand img { margin: 0 auto; }
    .rating__action { width: 100%; padding-top: 10px !important; }
    .rating__btn { display: block; width: 100%; text-align: center; }
}
