/*
 Theme Name:  Regioner BuddyBoss Child
 Theme URI:   https://regioner.local
 Description: Motyw potomny BuddyBoss dla portalu Regioner (feed + filtr regionu + baza firm)
 Author:      Darek
 Template:    buddyboss-theme
 Version:     0.3.0
 Text Domain: regioner-buddyboss-child
*/

/* ================================
   0. ZMIENNE / BAZA
   ================================ */

:root {
    --regioner-header-height: 64px;
    --regioner-max-width: 1280px;
}

.site-title {
    margin: 0 30px 0 0!important;
}

#error {
    display: none;
}

a {
    color: #0284c7;
}

.content-area {
    padding-top: 2px !important;
}

.regioner-header__search-input:focus {
 background-color: transparent;
 box-shadow: none;
}


.regioner-home-sidebar--left .regioner-cat-tree__toggle,
.regioner-home-sidebar--left .regioner-cat-tree__toggle:hover,
.regioner-home-sidebar--left .regioner-cat-tree__toggle:focus,
.regioner-home-sidebar--left .regioner-cat-tree__toggle:active,
.regioner-home-sidebar--left .regioner-cat-tree__toggle[aria-expanded="true"] {
    background: transparent !important;
    box-shadow: none !important;
}

.regioner-cat-tree__toggle:focus-visible {
    outline: 2px solid #cbd5e1;
    outline-offset: 2px;
}

.activity-list .comment-item .activity-meta .buddyboss_edit_activity_cancel:active, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_cancel:focus, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_cancel:hover, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment.action-save:active, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment.action-save:focus, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment.action-save:hover, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment:active, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment:focus, .activity-list .comment-item .activity-meta .buddyboss_edit_activity_comment:hover, .buddypress .buddypress-wrap .comment-reply-link:active, .buddypress .buddypress-wrap .comment-reply-link:focus, .buddypress .buddypress-wrap .comment-reply-link:hover, .buddypress .buddypress-wrap .generic-button a:active, .buddypress .buddypress-wrap .generic-button a:focus, .buddypress .buddypress-wrap .generic-button a:hover, .buddypress .buddypress-wrap a.bp-title-button:active, .buddypress .buddypress-wrap a.bp-title-button:focus, .buddypress .buddypress-wrap a.bp-title-button:hover, .buddypress .buddypress-wrap a.button:active, .buddypress .buddypress-wrap a.button:focus, .buddypress .buddypress-wrap a.button:hover, .buddypress .buddypress-wrap button:active, .buddypress .buddypress-wrap button:focus, .buddypress .buddypress-wrap button:hover, .buddypress .buddypress-wrap input[type=button]:active, .buddypress .buddypress-wrap input[type=button]:focus, .buddypress .buddypress-wrap input[type=button]:hover, .buddypress .buddypress-wrap input[type=reset]:active, .buddypress .buddypress-wrap input[type=reset]:focus, .buddypress .buddypress-wrap input[type=reset]:hover, .buddypress .buddypress-wrap input[type=submit]:active, .buddypress .buddypress-wrap input[type=submit]:focus, .buddypress .buddypress-wrap input[type=submit]:hover, .buddypress .buddypress-wrap ul.button-nav:not(.button-tabs) li a:active, .buddypress .buddypress-wrap ul.button-nav:not(.button-tabs) li a:focus, .buddypress .buddypress-wrap ul.button-nav:not(.button-tabs) li a:hover, .button:active, .button:focus, .button:hover, button:active, button:focus, button:hover, input[type=button]:active, input[type=button]:focus, input[type=button]:hover, input[type=submit]:active, input[type=submit]:focus, input[type=submit]:hover {
    outline: 0;
    text-decoration: none;
    background-color: transparent!important;
    color: #2e2e2e!important;
    border-color: transparent!important;
}

/* ================================
   1. Admin bar / sticky header
   ================================ */

/* Schowanie paska admina na froncie (bezpiecznik) 
body.admin-bar #wpadminbar {
    display: none !important;
} */
html {
    margin-top: 0 !important;
}
body.admin-bar {
    padding-top: 0 !important;
}

/* Regioner: wyłącz globalny padding pod sticky headerem BuddyBoss */
.sticky-header .site-content,
body.buddypress.sticky-header .site-content,
.bb-buddypanel.sticky-header .site-content,
.single-sfwd-quiz.bb-buddypanel.sticky-header .site-content,
.single-sfwd-lessons.bb-buddypanel.sticky-header .site-content,
.single-sfwd-topic.bb-buddypanel.sticky-header .site-content {
    padding-top: 0 !important;
}

/* Główny kontener treści – globalny max-width */
.site-content > .container {
    max-width: var(--regioner-max-width);
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
}

/* ================================
   2. HEADER REGIONER
   ================================ */

.site-title img {
    padding: 13px 0!important;
}

.regioner-header {
    position: sticky;
    top: 0;
    z-index: 1000;
    background: transparent;
}

.sticky-header .site-header {
    border-bottom: 1px solid #e5e7eb;
    background: radial-gradient(circle at top left, #0284c7, #1e1b4b);
}

.site-title img {
    top: 0.2rem;
    left: 2rem;
    max-height: 90px!important;
}

/* Główny kontener headera */
.regioner-header__inner {
    max-width: 1280px;
    margin: 0 auto;
    padding: 0 16px;
    display: flex;
    align-items: center;
    gap: 16px;
}

/* LEWO – przycisk panelu */
.regioner-header__sidebar-toggle {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
}

/* Ikony w headerze (panel, obszar, konto) */
.regioner-header__icon {
    width: 32px;
    height: 32px;
    border: 0;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    cursor: pointer;
    text-decoration: none;
    line-height: 1;
    background: transparent;
    border-radius: 7px;
}

.regioner-header__icon:hover,
.regioner-header__icon:focus {
    background: #ffffff;
    color: #2e2e2e;
}

/* Hamburger – zawsze widoczny */
.regioner-header__icon--sidebar {
    display: inline-flex;
}

@media (min-width: 900px) {
    .regioner-header__icon--sidebar {
        width: 36px;
        height: 36px;
    }
}

/* Tekstowy label tylko dla screen readerów */
.regioner-header__icon-label {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0,0,0,0);
    white-space: nowrap;
    border: 0;
}

/* LEWO – logo */
.regioner-header__logo {
    flex: 0 0 auto;
}

.regioner-header__logo-link {
    display: inline-flex;
    align-items: center;
    font-weight: 600;
    font-size: 18px;
    text-decoration: none;
    color: #111827;
}

/* BuddyBoss usuwa padding przy brandingu */
.site-branding {
    padding-right: 0 !important;
}

/* Logo – większe, ale kontrolowane */
.regioner-header__logo img.custom-logo {
    max-height: 52px;
    width: auto;
    height: auto;
}

/* ŚRODEK – wyszukiwarka wycentrowana + relative pod dropdown */
.regioner-header__search {
    flex: 1 1 auto;
    min-width: 0;
    display: flex;
    justify-content: center;
    position: relative;
}

/* Formularz wyszukiwania w headerze */
.regioner-header__search-form {
    display: flex;
    align-items: center;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 0 !important;
    border-radius: 7px;
    border: 0;
    background: #f9fafb;
    gap: 0;
    overflow: hidden;
}

/* Wrapper, żeby dropdown trzymał szerokość formularza */
.regioner-header__search-form-wrapper {
    position: relative;
    width: 100%;
    max-width: 500px;
}

/* Input */
.regioner-header__search-input {
    flex: 1 1 auto;
    min-width: 0;
    border: none;
    background: transparent;
    padding: 8px 10px;
    font-size: 14px;
    outline: none;
}

.regioner-header__search-input::placeholder {
    color: #9ca3af;
}

/* Przycisk szukaj w tym samym polu */
.regioner-header__search-submit {
    flex: 0 0 auto;
    width: 48px;
    height: 100%;
    border: none;
    background: #e5f2ff;
    color: #ffffff;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 10px 0;
    cursor: pointer;
}

.regioner-header__search-submit:hover {
    background: #93c5fd;
}

/* PRAWO – kwadraty z ikonami */
.regioner-header__actions {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 10px;
}

/* Responsywność headera */
@media (max-width: 768px) {
    .regioner-header__inner {
        padding-inline: 12px;
        gap: 0px;

        /* NOWE: pozwól elementom przełamywać się do kolejnego wiersza
           i ustaw logo + akcje w pierwszym wierszu */
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
    }
 
 #regioner-region-root {
  margin-top: 134px!important;
 }
 
 .sticky-header .site-header {
  background: #ffffff;
 }

    .regioner-header__logo img.custom-logo {
        max-height: 40px;
    }

    /* NOWE: 1. rząd – logo po lewej */
    .regioner-header__logo {
        order: 1;
        flex: 0 0 auto;
    }
 
    .site-title img {
     left: 0.1rem;
     min-height: 30px!important;
     max-height: 34px !important;
     padding: 0 !important;
    }

    /* NOWE: 1. rząd – przyciski po prawej */
    .regioner-header__actions {
        order: 2;
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        gap: 8px;
    }

    /* NOWE: 2. rząd – wyszukiwarka na pełną szerokość pod spodem */
    .regioner-header__search {
        order: 3;
        flex: 0 0 100%;
        margin-top: 8px;
        margin-bottom: 8px;
        justify-content: center;
    }

    .regioner-header__search-form-wrapper {
        width: 100%;
        max-width: 100%;
    }

    .regioner-header__search-form {
        max-width: 100%;
    }
}

.widget {
    padding: 10px 0 !important;
    background: transparent !important;
    border: none !important;
}

/* ================================
   2b. HEADER – DROPDOWN WYSZUKIWARKI
   ================================ */

/* Główny "floating sheet" z wynikami */
.regioner-header__search-autocomplete {
    position: absolute;
    top: calc(100% + 4px); /* tuż pod polem */
    left: 50%;
    transform: translateX(-50%) translateY(4px);
    width: 100%;
    max-width: 500px;

    background: #ffffff;
    border-radius: 14px;
    box-shadow:
        0 18px 45px rgba(15, 23, 42, 0.18),
        0 0 0 1px rgba(148, 163, 184, 0.18);
    padding: 8px 0;
    z-index: 2200;

    opacity: 0;
    pointer-events: none;
    transition:
        opacity 0.16s ease-out,
        transform 0.16s ease-out;
}

/* Klasa nadawana z JS – pokazuje dropdown */
.regioner-header__search-autocomplete--visible {
    opacity: 1;
    transform: translateX(-50%) translateY(0);
    pointer-events: auto;
}

/* Wewnętrzny układ sekcji */
.regioner-header__search-inner {
    max-height: 420px;
    overflow-y: auto;
}

/* Sekcje: firmy / kategorie */
.regioner-header__search-section {
    padding: 4px 0;
    border-top: 1px solid #f3f4f6;
}

.regioner-header__search-section:first-of-type {
    border-top: none;
}

/* Lista wyników */
.regioner-header__search-list {
    list-style: none;
    margin: 0;
    padding: 0;
}

/* Nagłówki grup (NIP, Profile firm) w sekcji companies */
.regioner-header__search-group-label {
    padding: 6px 14px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #9ca3af;
}

/* Pojedynczy wynik */
.regioner-header__search-item {
    margin: 0;
}

.regioner-header__search-link {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 8px 14px;
    text-decoration: none;
    background: transparent;
    transition: background 0.12s ease-out, transform 0.08s ease-out;
}

.regioner-header__search-link:hover,
.regioner-header__search-link:focus-visible {
    background: #f9fafb;
    transform: translateX(1px);
}

/* Tytuł: nazwa firmy / nazwa kategorii */
.regioner-header__search-title {
    font-size: 14px;
    font-weight: 500;
    color: #111827;
    line-height: 1.3;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

.regioner-header__search-title-row {
    display: flex;
    align-items: center;
    gap: 6px;
    min-width: 0;
}

.regioner-header__search-title {
    flex: 1 1 auto;
    min-width: 0;
}

.regioner-header__search-verified {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 16px;
    height: 16px;
    border-radius: 999px;
    background: rgba(2, 132, 199, 0.12);
    color: #0284c7;
    flex: 0 0 auto;
}

.regioner-header__search-verified svg {
    width: 12px;
    height: 12px;
    fill: currentColor;
}

/* Meta: miasto + label (firma) lub ścieżka + liczba firm (kategoria) */
.regioner-header__search-meta {
    font-size: 12px;
    color: #6b7280;
    line-height: 1.35;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
}

/* Delikatne różnicowanie typów */
.regioner-header__search-item--nip .regioner-header__search-title {
    font-weight: 600;
}

.regioner-header__search-item--category .regioner-header__search-title {
    font-weight: 500;
}

/* ================================
   2c. WYRÓŻNIENIE KATEGORII
   ================================ */

/* Wyróżnienie sekcji kategorii */
.regioner-header__search-section--categories {
    background: #f9fafb;
    position: relative;
    margin-top: 4px;
    padding-top: 8px;
}

/* Pseudo-nagłówek "Kategorie" nad listą */
.regioner-header__search-section--categories::before {
    content: "Kategorie";
    display: block;
    padding: 0 14px 4px;
    font-size: 11px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    color: #9ca3af;
}

/* Kategorie – layout z ikoną po lewej */
.regioner-header__search-item--category .regioner-header__search-link {
    flex-direction: row;
    align-items: flex-start;
    gap: 8px;
}

/* Mała "kropka" / znacznik kategorii */
.regioner-header__search-item--category .regioner-header__search-link::before {
    content: "";
    display: inline-block;
    width: 8px;
    height: 8px;
    margin-top: 6px;
    border-radius: 999px;
    background: linear-gradient(135deg, #2563eb, #4f46e5);
    flex-shrink: 0;
}

/* Tekst kategorii wewnątrz (żeby nie rozjechać istniejących spanów) */
.regioner-header__search-item--category .regioner-header__search-title,
.regioner-header__search-item--category .regioner-header__search-meta {
    display: block;
}

/* Opcjonalnie – subtelnie zmieniony kolor dla kategorii */
.regioner-header__search-item--category .regioner-header__search-title {
    color: #1d4ed8; /* niebieski, spójny z kropką */
}

.regioner-header__search-item--category .regioner-header__search-meta {
    color: #6b7280;
}

/* ================================
   2d. HEADER – PUSTY STAN AUTOCOMPLETE
   ================================ */

.regioner-header__search-empty {
    display: none; /* JS włącza przy braku wyników */
    padding: 14px 14px 12px;
    border-top: 1px solid #f3f4f6;
    background: #f9fafb;
}

.regioner-header__search-empty-main {
    font-size: 14px;
    font-weight: 500;
    color: #111827;
    margin-bottom: 10px;
}

.regioner-header__search-empty-actions {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.regioner-header__search-empty-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid #d1d5db;
    background: #ffffff;
    font-size: 13px;
    font-weight: 500;
    color: #111827;
    cursor: pointer;
    transition:
        background 0.12s ease-out,
        border-color 0.12s ease-out,
        transform 0.08s ease-out,
        box-shadow 0.12s ease-out;
}

.regioner-header__search-empty-btn:hover {
    background: #f3f4f6;
    border-color: #9ca3af;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
    transform: translateY(-0.5px);
}

.regioner-header__search-empty-secondary {
    font-size: 12px;
    color: #6b7280;
    margin: 0;
}

.regioner-header__search-empty-link {
    font-weight: 500;
    color: #2563eb;
    text-decoration: none;
    margin-left: 4px;
}

.regioner-header__search-empty-link:hover {
    text-decoration: underline;
}

/* ================================
   2e. HEADER – STOPKA Z INFORMACJĄ O REGIONIE
   ================================ */

.regioner-header__search-footer {
    border-top: 1px solid #f3f4f6;
    padding: 6px 14px 8px;
    font-size: 11px;
    color: #6b7280;
    background: #ffffff;
    display: flex;
    align-items: center;
    gap: 6px;
}

.regioner-header__search-footer-icon {
    font-size: 13px;
}

.regioner-header__search-region-summary {
    font-weight: 500;
    color: #111827;
}

/* ================================
   2f. HEADER – "ZOBACZ WSZYSTKIE"
   ================================ */

.regioner-header__search-view-all {
    display: none; /* JS włącza przy wynikach */
    margin: 4px 14px 8px;
    padding: 7px 12px;
    border-radius: 999px;
    border: 1px solid #d1d5db;
    background: #f9fafb;
    font-size: 13px;
    font-weight: 500;
    color: #111827;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    transition:
        background 0.12s ease-out,
        border-color 0.12s ease-out,
        box-shadow 0.12s ease-out,
        transform 0.08s ease-out;
}

.regioner-header__search-view-all:hover {
    background: #f3f4f6;
    border-color: #9ca3af;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.08);
    transform: translateY(-0.5px);
}

/* ================================
   2g. RESPONSYWNOŚĆ DROPDOWN
   ================================ */

@media (max-width: 768px) {
    .regioner-header__search-form-wrapper {
        max-width: 100%;
    }

    .regioner-header__search-autocomplete {
        left: 0;
        right: 0;
        transform: translateX(0) translateY(4px);
        max-width: none;
        border-radius: 12px;
        margin: 0 auto;
    }

    .regioner-header__search-autocomplete--visible {
        transform: translateX(0) translateY(0);
    }

    .regioner-header__search-title {
        font-size: 13px;
    }

    .regioner-header__search-meta {
        font-size: 11px;
    }

    .regioner-header__search-empty {
        padding: 12px 12px 10px;
    }

    .regioner-header__search-footer {
        padding: 6px 12px 8px;
        font-size: 11px;
    }
}

/* ================================
   Pakiety w podpowiedziach wyszukiwarki
   ================================ */

/* Premium – delikatny żółty */
.regioner-header__search-item.regioner-package--premium .regioner-header__search-link {
    background: #fffbeb;
}

.regioner-header__search-item.regioner-package--premium .regioner-header__search-link:hover {
    background: #fef3c7;
}

/* Standard – delikatny niebieskoszary */
.regioner-header__search-item.regioner-package--standard .regioner-header__search-link {
    background: #eff6ff;
}

.regioner-header__search-item.regioner-package--standard .regioner-header__search-link:hover {
    background: #e0f2fe;
}

/* Basic – bardzo subtelne wyróżnienie */
.regioner-header__search-item.regioner-package--basic .regioner-header__search-link {
    background: #f9fafb;
}

.regioner-header__search-item.regioner-package--basic .regioner-header__search-link:hover {
    background: #e5e7eb;
}

/* Free – bez wyróżnienia, korzysta z domyślnych styli */

/* ///////////////////// */
/* ===========================================
   MOBILE: wymuszone zachowanie lewego sidebara
   =========================================== */
@media (max-width: 900px) {
    .regioner-full-layout {
        position: relative;
        overflow: hidden;
    }

    .regioner-home-sidebar--left[data-regioner-sidebar="left"] {
        position: fixed;
        top: var(--regioner-mobile-topbar-height, 56px);
        left: 0;
        width: 80%;
        max-width: 320px;
        height: calc(100vh - var(--regioner-mobile-topbar-height, 56px));
        transform: translateX(-100%);
        transition: transform 0.28s ease;
        z-index: 1000;
    }

    /* Otwarty stan – albo przez klasę .is-open, albo przez klasę na body */
    body.regioner-sidebar-open .regioner-home-sidebar--left[data-regioner-sidebar="left"],
    .regioner-home-sidebar--left[data-regioner-sidebar="left"].is-open {
        transform: translateX(0);
    }

    /* Overlay – ukryty domyślnie, włączany gdy któryś panel jest otwarty */
    .regioner-sidebar-overlay[data-regioner-sidebar-overlay] {
        position: fixed;
        inset: var(--regioner-mobile-topbar-height, 56px) 0 0;
        opacity: 0;
        pointer-events: none;
        transition: opacity 0.25s ease;
        z-index: 900;
    }

    body.regioner-sidebar-open .regioner-sidebar-overlay[data-regioner-sidebar-overlay],
    body.regioner-right-open .regioner-sidebar-overlay[data-regioner-sidebar-overlay] {
        opacity: 1;
        pointer-events: auto;
    }
}

/* === LUPIK HERO (delikatny, obraz po lewej, contain) === */

.lupik-hero-welcomer{
  padding: 8px 0;
    background: #f0f9ff9c;
    border-radius: 12px;
    margin: 0 0 -20px 0;
}

.lupik-hero-welcomer__inner{
  display: inline-flex;
  grid-template-columns: 420px 1fr;
  gap: 18px;
  align-items: center;
}

.lupik-hero-welcomer__image-wrapper {
    max-width: 277px;
    border: 10px solid #ffff;
    border-radius: 24px;
    overflow: hidden;
    margin-left: 10px;
}

.lupik-hero-welcomer__media{
  min-width: 0;
}

.lupik-hero-welcomer__image-frame{
    border-radius: 16px;
    overflow: hidden;
    border: 10px solid #ffffff;
    background: #f8fafc;
    aspect-ratio: 4 / 3;
    display: flex;
    align-items: center;
    justify-content: center;
}

.lupik-hero-welcomer__image{
  width: 100%;
  height: 100%;
  object-fit: contain; /* KLUCZ: widoczny cały obraz */
  display: block;
}

.lupik-hero-welcomer__content{
  min-width: 0;
  padding: 6px 6px;
}

.lupik-hero-welcomer__kicker{
  font-size: 11px;
  font-weight: 200;
  letter-spacing: .03em;
  color: #64748b;
  margin-bottom: 10px;
}

.lupik-hero-welcomer__title{
  margin: 0 0 10px;
    font-size: 28px;
    line-height: 1.18;
    letter-spacing: -0.02em;
    color: #0284c7;
}

.lupik-hero-welcomer__title-sub { 
    white-space: nowrap;
    font-size: 17px;
    color: #2e2e2e;
    font-weight: 500; 
}

.lupik-hero-welcomer__lead{
  margin: 0;
  font-size: 15px;
  line-height: 1.65;
  color: #334155;
  max-width: 64ch;
}

.lupik-hero-welcomer__description {
    font-weight: 200;
}

.lupik-hero-welcomer__actions{
  margin-top: 14px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: center;
}

/* Buttons – spokojne */
.lupik-btn{
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 10px 14px;
  border-radius: 12px;
  text-decoration: none;
  font-weight: 700;
  font-size: 14px;
  line-height: 1;
  border: 1px solid transparent;
  transition: transform .12s ease, background-color .12s ease, border-color .12s ease, box-shadow .12s ease;
}

.lupik-btn:hover{ transform: translateY(-1px); }

.lupik-btn--primary{
  background: #0f172a;
  color: #fff;
  box-shadow: 0 10px 18px rgba(15,23,42,.08);
}
.lupik-btn--primary:hover{ box-shadow: 0 14px 22px rgba(15,23,42,.10); }

.lupik-btn--ghost{
  background: rgba(255,255,255,.9);
  color: #0f172a;
  border-color: rgba(226,232,240,.95);
}
.lupik-btn--ghost:hover{
  background: #f8fafc;
  border-color: #cbd5e1;
}

.lupik-btn--link{
  background: transparent;
  color: #0b63ce;
  padding-inline: 8px;
}
.lupik-btn--link:hover{
  transform: none;
  text-decoration: underline;
}

.page-template-page-regioner-home .lupik-hero-welcomer + p:empty{
  display:none !important;
}

/* RWD */
@media (max-width: 980px){
  .lupik-hero-welcomer__inner{
    grid-template-columns: 1fr;
  }
  .lupik-hero-welcomer__image-frame{
    aspect-ratio: 16 / 9;
  }
  .lupik-hero-welcomer__title{
    font-size: 26px;
  }
}

.lupik-hero-welcomer__actions{
  display:flex;
  flex-wrap:wrap;
  gap: 10px 14px;
  margin-top: 14px;
  align-items:center;
}

.lupik-hero-action{
  display:inline-flex;
  align-items:center;
  gap: 10px;
  padding: 8px 10px;
  border-radius: 12px;
  text-decoration: none;
  color: #0f172a;
  border: 1px solid transparent;
  background: transparent;
  transition: transform .12s ease, background-color .12s ease, border-color .12s ease;
  line-height: 1;
}

.lupik-hero-action__ico{
  width: 34px;
  height: 34px;
  border-radius: 12px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  color: #0f172a;
  flex: 0 0 auto;
}

.lupik-hero-action__label{
  font-size: 13.5px;
  font-weight: 600;
  color: #0f172a;
  white-space: nowrap;
}

.lupik-hero-action__chev{
  margin-left: 2px;
  color: #0584c7;
  font-weight: 200;
}

.lupik-hero-action:hover{
  background: rgba(2, 132, 199, 0.06);
  border-color: rgba(2, 132, 199, 0.18);
  transform: translateY(-1px);
}

.lupik-hero-action:hover .lupik-hero-action__ico{
  background: rgba(2, 132, 199, 0.12);
  color: #0284c7;
}

@media (max-width: 520px){
  .lupik-hero-action{
    width: 100%;
    justify-content: flex-start;
  }
}

/* --- NAPRAWA DYMKÓW DRIVER.JS --- */

/* 1. Kontener dymka - pozycja absolutna względem okna przeglądarki */
div.driver-popover {
    z-index: 2147483647 !important; /* Najwyższa możliwa warstwa */
    position: fixed !important;     /* Wymuszenie pozycji stałej, żeby nie uciekał pod nagłówek */
    opacity: 1 !important;
    visibility: visible !important;
    background-color: #ffffff !important;
    color: #333333 !important;
    box-shadow: 0 5px 30px rgba(0,0,0,0.3) !important;
    border: 1px solid #e5e7eb !important;
    /* Reset stylów, żeby motyw nie psuł tekstu */
    text-align: left !important;
    line-height: 1.5 !important;
    border-radius: 8px;
}

/* 2. Naprawa tytułu i tekstu */
div.driver-popover-title {
    font-size: 18px !important;
    font-weight: 700 !important;
    color: #000000 !important;
    margin-bottom: 8px !important;
    display: block !important;
}

div.driver-popover-description {
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #4b5563 !important;
    margin-bottom: 16px !important;
    display: block !important;
}

/* 3. Naprawa przycisków */
div.driver-popover-footer {
    display: flex !important;
    justify-content: space-between !important;
    margin-top: 10px !important;
}

div.driver-popover-footer button {
    background-color: #0284c7 !important;
    color: #ffffff !important;
    text-shadow: none !important;
    border: 1px solid transparent !important;
    padding: 6px 14px !important;
    font-size: 12px !important;
    border-radius: 4px !important;
    cursor: pointer !important;
    /* Upewnij się, że są klikalne */
    pointer-events: auto !important; 
}

/* Przycisk Wstecz - inny kolor */
div.driver-popover-footer button.driver-popover-prev-btn {
    background-color: #f1f5f9 !important;
    color: #475569 !important;
    border: 1px solid #cbd5e1 !important;
}

/* 4. TŁO (Overlay) - też musi być wysoko, ale pod dymkiem */
.driver-overlay {
    z-index: 2147483646 !important;
}

/* WooCommerce checkout: full-width order summary (no right sidebar) */
body.woocommerce-checkout .regioner-home-sidebar--right {
    display: none !important;
}
body.woocommerce-checkout .regioner-home-layout {
    grid-template-columns: 1fr;
}
body.woocommerce-checkout .woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review,
body.woocommerce-checkout .woocommerce-checkout-review-order {
    width: 100%;
    float: none;
}

/* WooCommerce lost password: full-width layout (no right sidebar) */
body.woocommerce-account.woocommerce-lost-password .regioner-home-sidebar--right {
    display: none !important;
}
body.woocommerce-account.woocommerce-lost-password .regioner-home-layout {
    grid-template-columns: 1fr;
    padding-top: clamp(14px, 2.2vw, 28px);
}

/* WooCommerce Account – centered message card (lost-password, etc.) */
body.woocommerce-account .regioner-page__content .woocommerce {
    max-width: 560px;
    margin: clamp(24px, 4vw, 56px) auto;
    padding: 36px 32px;
    background: #ffffff;
    border-radius: 16px;
    border: 1px solid #e2e8f0;
    box-shadow: 0 10px 28px rgba(15, 35, 64, 0.08);
}

body.regioner-auth-page--lostpassword .regioner-page__content .woocommerce {
    max-width: 100%;
    margin: 0;
    padding: 0;
    border: none;
    box-shadow: none;
    background: transparent;
    border-radius: 0;
}
body.woocommerce-account .regioner-page__content .woocommerce .woocommerce-message {
    background: #f3f8ff;
    border: 1px solid #cfe2f7;
    border-radius: 10px;
    color: #1a4a7a;
    padding: 18px 22px;
    font-size: 15px;
    line-height: 1.6;
    margin: 0;
    border-top: none;
}

body.woocommerce-account .regioner-page__content .woocommerce .woocommerce-message::before {
    display: none;
}

body.woocommerce-account .regioner-page__content .woocommerce > p {
    margin-top: 18px;
    font-size: 14px;
    color: #64748b;
    text-align: center;
}

@media (max-width: 600px) {
    body.woocommerce-account .regioner-page__content .woocommerce {
        margin: 16px;
        padding: 24px 18px;
    }
}

/* Auth views: keep a clear gap below sticky header (only login/register/lost password) */
body.regioner-panel-active.regioner-auth-page .regioner-home-layout {
    padding-top: clamp(14px, 2.2vw, 28px) !important;
}

/* Regioner footer (custom, manageable via widgets/menus) */
.regioner-footer,
.footer-bottom.bb-footer.regioner-footer,
.footer-bottom.bb-footer {
    background: rgb(178 229 255 / 12%) !important;
    color: #0f172a;
    padding: 36px 0 24px;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

/* ===== Newsletter bar above footer ===== */
.regioner-footer-newsletter{
    background: linear-gradient(180deg, #0284c736 0%, rgb(178 229 255 / 12%) 100%);
    padding: 10px 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

.regioner-footer-profile-strip{
    --regioner-strip-accent-rgb: 15, 23, 42;
    --regioner-strip-accent2-rgb: 30, 41, 59;
    background:
        linear-gradient(120deg, rgba(var(--regioner-strip-accent-rgb), 0.82), rgba(var(--regioner-strip-accent2-rgb), 0.84)),
        linear-gradient(180deg, rgba(2, 6, 23, 0.90), rgba(2, 6, 23, 0.86));
    color: rgba(255, 255, 255, 0.94);
    padding: 16px 0;
    width: 100%;
    max-width: 100%;
    overflow-x: hidden;
    box-sizing: border-box;
}

.regioner-footer .container,
.regioner-footer-newsletter .container,
.regioner-footer-profile-strip .container{
    width: min(1240px, 100%);
    max-width: 1240px;
    margin: 0 auto;
    padding-left: 16px;
    padding-right: 16px;
    box-sizing: border-box;
}

@media (min-width: 992px) {
    /* Stopka nie może wchodzić pod lewy sidebar */
    .regioner-full-layout-active .regioner-footer,
    .regioner-full-layout-active .footer-bottom.bb-footer,
    .regioner-full-layout-active .regioner-footer-newsletter,
    .regioner-full-layout-active .regioner-footer-profile-strip{
        margin-left: var(--sidebar-width);
        width: calc(100% - var(--sidebar-width));
    }

    body.regioner-sidebar-collapsed.regioner-full-layout-active .regioner-footer,
    body.regioner-sidebar-collapsed.regioner-full-layout-active .footer-bottom.bb-footer,
    body.regioner-sidebar-collapsed.regioner-full-layout-active .regioner-footer-newsletter,
    body.regioner-sidebar-collapsed.regioner-full-layout-active .regioner-footer-profile-strip{
        margin-left: var(--sidebar-collapsed);
        width: calc(100% - var(--sidebar-collapsed));
    }
}

.regioner-footer-profile-strip__inner{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    gap: 8px 14px;
    text-align: center;
    font-size: 15px;
    line-height: 1.45;
    font-weight: 300;
    letter-spacing: 0.01em;
}

.regioner-footer-profile-strip__text{
    color: inherit;
    opacity: 0.95;
}

.regioner-footer-profile-strip__sep{
    opacity: 0.72;
    font-weight: 300;
}

.regioner-footer-profile-strip__link{
    color: rgba(255, 255, 255, 0.98);
    text-decoration: underline;
    text-underline-offset: 3px;
    text-decoration-thickness: 1px;
    font-weight: 300;
    transition: opacity .18s ease, text-decoration-color .18s ease;
}

.regioner-footer-profile-strip__link:hover{
    color: #ffffff;
    opacity: 0.86;
    text-decoration-color: rgba(255, 255, 255, 0.78);
}

@media (max-width: 767px) {
    .regioner-footer-profile-strip{
        padding: 14px 0;
    }

    .regioner-footer-profile-strip__inner{
        font-size: 14px;
        gap: 6px 10px;
    }
}

.regioner-footer-newsletter__grid{
    display: grid;
    grid-template-columns: 77px 1fr;
    gap: 10px;
    align-items: center;
    border-bottom: 1px solid rgba(2,132,199,0.2);
    padding-bottom: 8px;
}

.regioner-footer-newsletter__media img{
    width: 100%;
    max-width: 77px;
    height: auto;
    display: block;
}

.regioner-footer__socials{
    display: flex;
    gap: 10px;
    align-items: center;
    margin-left: auto;
    margin-top: 0;
}

.regioner-footer__social-link{
    width: 30px;
    height: 30px;
    border-radius: 10px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    background: rgba(255,255,255,0.7);
    color: #0f172a;
    border: 1px solid rgba(2,132,199,0.18);
    transition: transform .15s ease, background .15s ease;
}

.regioner-footer__social-link:hover{
    background: #0284c7;
    color: #ffffff;
    transform: translateY(-1px);
}

.regioner-footer__social-link svg{
    width: 16px;
    height: 16px;
    display: block;
}

.regioner-footer--collapsible .regioner-footer__compact{
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 10px 18px;
    padding: 8px 0 12px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.22);
}

.regioner-footer__compact-main{
    display: flex;
    align-items: center;
    gap: 12px;
    min-width: 0;
    flex-wrap: wrap;
}

.regioner-footer__compact-name{
    font-size: 18px;
    line-height: 1.2;
    font-weight: 700;
    letter-spacing: -0.01em;
    color: #0f172a;
}

.regioner-footer__compact-socials{
    display: flex;
    align-items: center;
    gap: 8px;
    flex-wrap: wrap;
}

.regioner-footer__social-link--compact{
    width: 28px;
    height: 28px;
    border-radius: 9px;
}

.regioner-footer__social-link--compact svg{
    width: 15px;
    height: 15px;
}

.regioner-footer__toggle{
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin: 0;
    padding: 4px 0;
    border: 0;
    border-radius: 0;
    background: transparent;
    color: #0f172a;
    cursor: pointer;
    font-size: 13px;
    line-height: 1.25;
    font-weight: 600;
    text-transform: none;
    white-space: nowrap;
}

.regioner-footer__toggle:hover,
.regioner-footer__toggle:focus-visible{
    color: #0f172a;
    text-decoration: underline;
    text-underline-offset: 2px;
    text-decoration-thickness: 1px;
}

.regioner-footer__toggle:focus-visible{
    outline: 2px solid rgba(14, 165, 233, 0.5);
    outline-offset: 3px;
}

.regioner-footer__toggle-icon{
    display: inline-flex;
    width: 14px;
    height: 14px;
    align-items: center;
    justify-content: center;
    transition: transform .22s ease;
}

.regioner-footer__toggle-icon svg{
    width: 100%;
    height: 100%;
    display: block;
}

.regioner-footer--collapsible:not(.is-collapsed) .regioner-footer__toggle-icon{
    transform: rotate(180deg);
}

.regioner-footer--collapsible .regioner-footer__body{
    padding-top: 18px;
}

.regioner-footer--collapsible.is-collapsed .regioner-footer__body{
    display: none;
}

.regioner-footer-newsletter__form{
    display: grid;
    grid-template-columns: auto minmax(160px, 260px) auto;
    gap: 8px;
    align-items: center;
    justify-content: start;
    margin: 44px 0 6px;
}

.regioner-footer-newsletter__row{
    display: grid;
    grid-template-columns: minmax(0, 520px) minmax(0, 1fr);
    gap: 14px;
    align-items: center;
}

.regioner-footer-newsletter__label{
    font-size: 15px;
    font-weight: 400;
    color: #0f172a;
    white-space: nowrap;
}

.regioner-footer-newsletter__form input[type="email"]{
    min-height: 38px;
    border-radius: 10px;
    border: 0;
    padding: 8px 10px;
    font-size: 13px;
    width: 100%;
    max-width: 260px;
}

.regioner-footer-newsletter__form .regioner-btn{
    border-radius: 10px;
    padding: 8px 16px;
    background: #0284c7;
    border: 0;
    color: #ffffff;
}

.regioner-footer-newsletter__form .regioner-btn:hover{
    background: #036aa0;
}

.regioner-footer-newsletter__consent{
    font-size: 11px;
    color: #64748b;
    margin: 0;
}

.regioner-footer-newsletter__notice{
    margin: 0 0 8px;
    padding: 8px 10px;
    border-radius: 10px;
    font-size: 12px;
    display: inline-flex;
    align-items: center;
    gap: 8px;
}

.regioner-footer-newsletter__notice--success{
    background: rgba(16,185,129,0.12);
    color: #065f46;
    border: 1px solid rgba(16,185,129,0.25);
}

.regioner-footer-newsletter__notice--info{
    background: rgba(2,132,199,0.10);
    color: #0f172a;
    border: 1px solid rgba(2,132,199,0.25);
}

.regioner-footer-newsletter__notice--error{
    background: rgba(239,68,68,0.12);
    color: #7f1d1d;
    border: 1px solid rgba(239,68,68,0.25);
}

.regioner-footer-newsletter__hp{
    position: absolute !important;
    left: -9999px !important;
    width: 1px !important;
    height: 1px !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

@media (max-width: 860px){
    .regioner-footer-newsletter__grid{
        grid-template-columns: 1fr;
        text-align: left;
    }
    .regioner-footer-newsletter__media{
        max-width: 140px;
    }
    .regioner-footer-newsletter__form{
        grid-template-columns: 1fr;
    }
    .regioner-footer-newsletter__label{
        white-space: normal;
    }
    .regioner-footer-newsletter__row{
        grid-template-columns: 1fr;
    }
}

.regioner-footer a,
.footer-bottom.bb-footer.regioner-footer a,
.footer-bottom.bb-footer a {
    color: #0f172a;
}

.regioner-footer__grid {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 30px;
    padding-bottom: 24px;
    border-bottom: 1px solid rgba(148, 163, 184, 0.18);
    align-items: start;
}

.regioner-footer__brand {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.regioner-footer__brand-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    flex-wrap: wrap;
}

.regioner-footer__logo {
    display: flex;
    align-items: center;
    flex: 1 1 auto;
    min-width: 200px;
}

.regioner-footer__logo img {
    max-width: 180px;
    height: auto;
    display: block;
}

.regioner-footer__logo--text {
    font-size: 20px;
    font-weight: 800;
    letter-spacing: -0.02em;
}

.regioner-footer__logo-link {
    color: #0f172a;
}

.regioner-footer .regioner-header__logo-link {
    color: #0f172a;
}

.regioner-footer__desc {
    margin: 12px 0 0;
    color: rgba(15, 23, 42, 0.72);
    font-size: 14px;
    line-height: 1.6;
}

.regioner-footer__menus {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: clamp(18px, 3vw, 32px);
}

.regioner-footer__col {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.regioner-footer__title,
.regioner-footer .widget-title {
    margin: 0;
    font-size: 15px;
    font-weight: 800;
    text-transform: none;
    letter-spacing: 0.01em;
    color: #0f172a;
}

.regioner-footer__title::after,
.regioner-footer .widget-title::after {
    content: '';
    display: block;
    width: 32px;
    height: 2px;
    margin-top: 6px;
    border-radius: 999px;
    background: rgba(14, 165, 233, 0.9);
}

.regioner-footer-menu {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
}

.regioner-footer .widget {
    margin: 0;
}

.regioner-footer .widget ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: 8px;
}

.regioner-footer .widget a {
    font-size: 14px;
    text-decoration: none;
    color: rgba(15, 23, 42, 0.85);
}

.regioner-footer .widget a:hover {
    color: #0ea5e9;
}

.regioner-footer-menu a {
    font-size: 14px;
    text-decoration: none;
    color: rgba(15, 23, 42, 0.85);
}

.regioner-footer-menu a:hover {
    color: #0ea5e9;
}

.regioner-footer__bottom {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-top: 18px;
    border-top: 1px solid rgba(148, 163, 184, 0.45);
}

.regioner-footer .copyright {
    font-size: 13px;
    color: rgba(15, 23, 42, 0.6);
}

.regioner-footer-menu--legal {
    display: inline-flex;
    gap: 16px;
}

.regioner-footer-menu--legal a {
    font-size: 13px;
    color: rgba(15, 23, 42, 0.6);
}

@media (max-width: 1024px) {
    .regioner-footer__logo {
        min-width: 0;
    }
}

@media (min-width: 992px) {
    .regioner-footer-newsletter__grid{
        align-items: center;
    }

    .regioner-footer-newsletter__media{
        align-self: center;
        display: flex;
        align-items: center;
        justify-content: center;
    }

    .regioner-footer-newsletter__row{
        grid-template-columns: minmax(0, 900px) minmax(0, 1fr);
        align-items: center;
    }

    .regioner-footer-newsletter__form{
        grid-template-columns: minmax(0, 1fr) auto;
        width: 100%;
        max-width: 900px;
        justify-content: stretch;
    }

    .regioner-footer-newsletter__form input[type="email"]{
        max-width: none;
        width: 100%;
    }

    /* Stopka: 3 kolumny menu */
    .regioner-footer__menus{
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    /* Sociale obok nazwy, po lewej */
    .regioner-footer__brand-row{
        justify-content: flex-start;
        flex-wrap: nowrap;
    }

    .regioner-footer__logo{
        flex: 0 0 auto;
        min-width: 0;
    }

    .regioner-footer__socials{
        margin-left: 20px;
        margin-top: 0;
        margin-right: 0;
    }
}

.regioner-footer-newsletter__consent{
    text-align: center;
    margin-left: auto;
    margin-right: auto;
}

@media (max-width: 720px) {
    .regioner-footer__brand-row {
        align-items: flex-start;
    }

    .regioner-footer__menus {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 16px;
    }

    .regioner-footer__bottom {
        flex-direction: column;
        align-items: flex-start;
    }

    .regioner-footer-menu--legal {
        flex-wrap: wrap;
    }
}

/* Hide default page titles on custom full-layout pages */
body.regioner-hide-page-title .entry-title,
body.regioner-hide-page-title .page-title,
body.regioner-hide-page-title .wp-block-post-title,
body.regioner-hide-page-title .bb-page-title,
body.regioner-hide-page-title .regioner-hero__title {
    display: none !important;
}

/* WC account: remove max-width constraint on order pages */
body.woocommerce-account .regioner-page__content .woocommerce {
    max-width: none !important;
}

/* Regioner: custom page heroes (pakiety/koszyk/kasa) */
.regioner-page-hero {
    padding: 0;
    border-radius: 0;
    background: none;
    border: 0;
    margin: 0 0 24px;
}

.regioner-page-hero__eyebrow {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 0;
    border-radius: 0;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.06em;
    text-transform: uppercase;
    color: #1f2937;
    background: none;
}

.regioner-page-hero__title {
    margin: 10px 0 6px;
    font-size: 30px;
    font-weight: 800;
    color: #0f172a;
}

.regioner-page-hero__subtitle {
    margin: 0;
    font-size: 16px;
    color: #475569;
    line-height: 1.6;
}

@media (max-width: 900px) {
    .regioner-page-hero {
        padding: 0;
        border-radius: 0;
    }
    .regioner-page-hero__title {
        font-size: 24px;
    }
}

/* Global cap for button corner radius */
:where(
    button,
    input[type="button"],
    input[type="submit"],
    input[type="reset"],
    a.button,
    .button,
    .regioner-btn,
    .wp-element-button,
    .wp-block-button__link,
    .woocommerce a.button,
    .woocommerce button.button,
    .woocommerce input.button,
    .woocommerce #respond input#submit,
    .woocommerce-page a.button,
    .woocommerce-page button.button,
    .woocommerce-page input.button
) {
    border-radius: 8px !important;
}

/* ── Recommendation badge (shared across all templates) ── */
.regioner-rec-badge {
    position: relative;
    display: inline-flex;
    cursor: pointer;
}
.regioner-rec-badge__img {
    display: block;
    object-fit: contain;
    max-width: none !important;
}
.regioner-rec-badge__count {
    position: absolute;
    left: -8px;
    bottom: -2px;
    font-size: 11px;
    font-weight: 700;
    white-space: nowrap;
}
.regioner-rec-badge--white .regioner-rec-badge__count {
    display: none;
}
.regioner-rec-badge__tooltip {
    display: none;
    position: fixed;
    background: #0f172a;
    color: #fff;
    padding: 10px 14px;
    border-radius: 10px;
    font-size: 12px;
    line-height: 1.5;
    white-space: nowrap;
    z-index: 999999;
    pointer-events: none;
    box-shadow: 0 8px 24px rgba(0,0,0,.2);
}
.regioner-rec-badge__tooltip.is-visible {
    display: block;
}
.regioner-rec-badge__tooltip a {
    color: #38bdf8;
}
.regioner-rec-badge--hero .regioner-rec-badge__img {
    max-width: none !important;
}
/* Override plugin absolute positioning inside template badge wrappers */
.rp-hero__rec-wrap .regioner-rec-badge,
.rp-hero__rec-wrap .regioner-rec-badge--hero {
    position: static !important;
}
.rp-hero__rec-wrap {
    display: inline-block;
    margin-top: 8px;
}
.rp-hero__rec-wrap .regioner-rec-badge__img {
    width: 44px;
    max-width: none !important;
    filter: drop-shadow(0 2px 6px rgba(0, 0, 0, 0.35));
}
/* Count: hidden by default, shown with --with-count */
.rp-hero__rec-wrap .regioner-rec-badge__count {
    display: none !important;
}
.rp-hero__rec-wrap--with-count .regioner-rec-badge__count {
    display: flex !important;
    position: absolute;
    bottom: 2px;
    left: -9px;
    z-index: -1;
    min-width: 18px;
    height: 18px;
    background: #fff;
    color: #0f172a;
    font-size: 10px;
    font-weight: 700;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    padding: 0 2px;
    box-shadow: 0 1px 3px rgba(0,0,0,0.2);
    line-height: 1;
}
