.hb {
    background:#f5f7fb;
    color:#0f172a;
    padding:0 0 72px;
}

.hb * {
    box-sizing:border-box;
}

.hb-shell {
    width:min(1180px, calc(100% - 40px));
    margin:0 auto;
}

.hb-hero {
    position:relative;
    overflow:hidden;
    padding:72px 0 64px;
    background:
        radial-gradient(circle at 90% 0%, rgba(37,99,235,.28), transparent 34%),
        linear-gradient(135deg,#0b1730 0%,#10254a 54%,#173d78 100%);
    color:#fff;
}

.hb-hero:after {
    content:"";
    position:absolute;
    width:420px;
    height:420px;
    border:1px solid rgba(255,255,255,.12);
    border-radius:50%;
    right:-150px;
    top:-170px;
}

.hb-kicker,
.hb-eyebrow {
    display:block;
    color:#2563eb;
    font-size:12px;
    line-height:1.2;
    font-weight:800;
    letter-spacing:.16em;
    text-transform:uppercase;
}

.hb-kicker {
    color:#8db6ff;
    margin-bottom:14px;
}

.hb-hero h1 {
    max-width:760px;
    margin:0;
    color:#fff;
    font-size:clamp(40px,5vw,68px);
    line-height:.98;
    letter-spacing:-.045em;
}

.hb-hero-text {
    max-width:650px;
    margin:22px 0 30px;
    color:#dbe7ff;
    font-size:18px;
    line-height:1.65;
}

.hb-search {
    display:flex;
    width:min(760px,100%);
    padding:7px;
    border-radius:18px;
    background:#fff;
    box-shadow:0 20px 50px rgba(0,0,0,.18);
}

.hb-search input {
    flex:1;
    min-width:0;
    height:54px;
    padding:0 18px;
    border:0;
    outline:0;
    background:transparent;
    color:#111827;
    font-size:16px;
}

.hb-search button {
    min-width:130px;
    border:0;
    border-radius:13px;
    padding:0 24px;
    background:#2563eb;
    color:#fff;
    font-size:15px;
    font-weight:800;
    cursor:pointer;
}

.hb-stats {
    display:flex;
    gap:28px;
    margin-top:30px;
    flex-wrap:wrap;
}

.hb-stats div {
    display:flex;
    align-items:baseline;
    gap:8px;
}

.hb-stats strong {
    font-size:22px;
    color:#fff;
}

.hb-stats span {
    color:#adc4eb;
    font-size:13px;
}

.hb-section {
    padding-top:58px;
}

.hb-section-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:24px;
    margin-bottom:24px;
}

.hb-section-head h2 {
    margin:7px 0 0;
    font-size:32px;
    line-height:1.1;
    letter-spacing:-.03em;
}

.hb-section-head p {
    max-width:650px;
    margin:10px 0 0;
    color:#64748b;
    line-height:1.6;
}

.hb-pill,

.hb-categories {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:14px;
}

.hb-category {
    display:flex;
    align-items:center;
    gap:12px;
    min-height:76px;
    padding:14px 16px;
    border:1px solid #e2e8f0;
    border-radius:18px;
    background:#fff;
    color:#0f172a;
    text-decoration:none;
    box-shadow:0 5px 18px rgba(15,23,42,.035);
    transition:.2s ease;
}

.hb-category:hover {
    transform:translateY(-2px);
    border-color:#b9cdfb;
    box-shadow:0 12px 28px rgba(15,23,42,.08);
}

.hb-category-icon {
    display:grid;
    place-items:center;
    flex:0 0 44px;
    width:44px;
    height:44px;
    border-radius:14px;
    background:#edf3ff;
    color:#2563eb;
    font-size:22px;
    font-weight:800;
}

.hb-category-name {
    flex:1;
    font-size:14px;
    font-weight:800;
    line-height:1.3;
}

.hb-arrow {
    color:#94a3b8;
    font-size:18px;
}

.hb-grid {
    display:grid;
    grid-template-columns:repeat(4,minmax(0,1fr));
    gap:18px;
}

.hb-card {
    overflow:hidden;
    border:1px solid #e2e8f0;
    border-radius:20px;
    background:#fff;
    box-shadow:0 8px 26px rgba(15,23,42,.045);
}

.hb-card-media {
    display:flex;
    align-items:flex-end;
    height:132px;
    padding:16px;
    background:
        radial-gradient(circle at 78% 15%,rgba(96,165,250,.65),transparent 30%),
        linear-gradient(135deg,#10264d,#2563eb);
    color:#fff;
    text-decoration:none;
}

.hb-card-media span {
    font-size:11px;
    font-weight:900;
    letter-spacing:.16em;
}

.hb-card-archive .hb-card-media {
    background:
        radial-gradient(circle at 78% 15%,rgba(148,163,184,.35),transparent 30%),
        linear-gradient(135deg,#263348,#53637a);
}

.hb-card-body {
    padding:18px;
}

.hb-card-meta {
    margin-bottom:9px;
    color:#64748b;
    font-size:12px;
    font-weight:700;
}

.hb-card h3 {
    margin:0;
    font-size:17px;
    line-height:1.35;
}

.hb-card h3 a {
    color:#0f172a;
    text-decoration:none;
}

.hb-card-link {
    display:inline-block;
    margin-top:18px;
    color:#2563eb;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}

.hb-empty {
    display:flex;
    align-items:center;
    gap:20px;
    padding:28px;
    border:1px dashed #b8c5d8;
    border-radius:20px;
    background:#fff;
}

.hb-empty-icon {
    display:grid;
    place-items:center;
    flex:0 0 58px;
    width:58px;
    height:58px;
    border-radius:18px;
    background:#edf3ff;
    color:#2563eb;
    font-size:30px;
}

.hb-empty h3 {
    margin:0 0 6px;
}

.hb-empty p {
    margin:0;
    color:#64748b;
}






.hb-button-secondary {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border:1px solid #d5dce7;
    border-radius:13px;
    background:#fff;
    color:#172033;
    font-size:13px;
    font-weight:800;
    text-decoration:none;
}

.hb-single {
    padding-top:42px;
}

.hb-single-shell {
    max-width:920px;
}

.hb-breadcrumbs {
    display:flex;
    gap:8px;
    margin-bottom:22px;
    color:#64748b;
    font-size:13px;
}

.hb-breadcrumbs a {
    color:#475569;
    text-decoration:none;
}

.hb-archive-alert {
    display:flex;
    flex-direction:column;
    gap:5px;
    margin-bottom:20px;
    padding:17px 20px;
    border:1px solid #f3d39b;
    border-radius:16px;
    background:#fff8e9;
    color:#765019;
}

.hb-archive-alert strong {
    color:#9a5b00;
}

.hb-single-card {
    border:1px solid #e2e8f0;
    border-radius:24px;
    background:#fff;
    box-shadow:0 12px 34px rgba(15,23,42,.055);
}

.hb-single-top {
    padding:34px 36px 26px;
    border-bottom:1px solid #eef2f7;
}

.hb-single-top h1 {
    margin:9px 0 0;
    font-size:clamp(30px,4vw,48px);
    line-height:1.06;
    letter-spacing:-.035em;
}

.hb-single-content {
    padding:30px 36px 38px;
    font-size:17px;
    line-height:1.75;
}

.hb-single-content p:first-child {
    margin-top:0;
}

.hb-back {
    margin-top:22px;
}

.hb-back a {
    color:#2563eb;
    font-size:14px;
    font-weight:800;
    text-decoration:none;
}

@media (max-width:900px) {
    .hb-categories,
    .hb-grid {
        grid-template-columns:repeat(2,minmax(0,1fr));
    }
}

@media (max-width:620px) {
    .hb-shell {
        width:min(100% - 24px,1180px);
    }

    .hb-hero {
        padding:48px 0;
    }

    .hb-search {
        flex-direction:column;
    }

    .hb-search button {
        min-height:48px;
    }

    .hb-categories,
    .hb-grid {
        grid-template-columns:1fr;
    }

    .hb-section-head {
        align-items:flex-start;
        flex-direction:column;
    }


    .hb-single-top,
    .hb-single-content {
        padding-left:22px;
        padding-right:22px;
    }
}


/* BOARD_SUBMIT_EU_V010 */

.hb-hero-actions {
    margin-top:16px;
}

.hb-add-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:44px;
    padding:0 18px;
    border:1px solid rgba(255,255,255,.32);
    border-radius:13px;
    background:rgba(255,255,255,.10);
    color:#fff;
    text-decoration:none;
    font-size:13px;
    font-weight:800;
    backdrop-filter:blur(8px);
    transition:.18s ease;
}

.hb-add-button:hover {
    background:#fff;
    color:#17418b;
}

.hb-add {
    padding-top:42px;
}

.hb-add-shell {
    max-width:900px;
}

.hb-add-head {
    margin-bottom:22px;
}

.hb-add-head h1 {
    margin:8px 0 12px;
    font-size:clamp(34px,5vw,52px);
    line-height:1.05;
    letter-spacing:-.04em;
}

.hb-add-head p {
    max-width:680px;
    margin:0;
    color:#64748b;
    font-size:16px;
    line-height:1.6;
}

.hb-language-policy,
.hb-rules {
    margin-bottom:22px;
    padding:18px 20px;
    border-radius:17px;
}

.hb-language-policy {
    border:1px solid #bfd1ff;
    background:#edf3ff;
    color:#29446f;
}

.hb-rules {
    border:1px solid #dce2eb;
    background:#fff;
    color:#475569;
}

.hb-language-policy strong,
.hb-rules strong {
    display:block;
    margin-bottom:5px;
    color:#172033;
}

.hb-language-policy p,
.hb-rules p {
    margin:0;
    line-height:1.55;
    font-size:13px;
}

.hb-form {
    display:grid;
    gap:22px;
}

.hb-form-section {
    display:grid;
    grid-template-columns:
        repeat(2,minmax(0,1fr));
    gap:18px;
    padding:26px;
    border:1px solid #e2e8f0;
    border-radius:22px;
    background:#fff;
    box-shadow:
        0 10px 30px rgba(15,23,42,.045);
}

.hb-form-section h2 {
    grid-column:1/-1;
    margin:0 0 4px;
    font-size:22px;
}

.hb-field {
    display:flex;
    flex-direction:column;
    gap:7px;
}

.hb-field-full {
    grid-column:1/-1;
}

.hb-field label {
    font-size:13px;
    font-weight:800;
    color:#273449;
}

.hb-field input,
.hb-field select,
.hb-field textarea {
    width:100%;
    border:1px solid #d9e0eb;
    border-radius:12px;
    background:#fff;
    color:#111827;
    font:inherit;
    outline:0;
}

.hb-field input,
.hb-field select {
    min-height:48px;
    padding:0 13px;
}

.hb-field textarea {
    padding:13px;
    resize:vertical;
}

.hb-field input:focus,
.hb-field select:focus,
.hb-field textarea:focus {
    border-color:#2563eb;
    box-shadow:
        0 0 0 3px rgba(37,99,235,.10);
}

.hb-field small {
    color:#7b8798;
    font-size:11px;
    line-height:1.5;
}

.hb-consent {
    display:flex;
    align-items:flex-start;
    gap:12px;
    padding:18px 20px;
    border-radius:16px;
    background:#edf3ff;
    color:#36445b;
    font-size:13px;
    line-height:1.55;
}

.hb-consent input {
    width:auto;
    margin-top:3px;
}

.hb-form-submit {
    display:flex;
    align-items:center;
    gap:14px;
}

.hb-form-submit button {
    min-height:50px;
    padding:0 24px;
    border:0;
    border-radius:13px;
    background:#2563eb;
    color:#fff;
    font-size:14px;
    font-weight:800;
    cursor:pointer;
}

.hb-form-submit a {
    color:#64748b;
    font-size:13px;
    font-weight:700;
    text-decoration:none;
}

.hb-success,
.hb-form-errors {
    display:flex;
    flex-direction:column;
    gap:6px;
    padding:20px 22px;
    border-radius:17px;
}

.hb-success {
    border:1px solid #b7e4c7;
    background:#eefbf3;
    color:#23613a;
}

.hb-form-errors {
    margin-bottom:20px;
    border:1px solid #f0c4c4;
    background:#fff3f3;
    color:#8d3030;
}

.hb-form-errors ul {
    margin:5px 0 0 20px;
}

.hb-hp {
    position:absolute !important;
    left:-99999px !important;
    width:1px !important;
    height:1px !important;
    overflow:hidden !important;
}

@media (max-width:620px) {

    .hb-form-section {
        grid-template-columns:1fr;
        padding:20px;
    }

    .hb-field-full,
    .hb-form-section h2 {
        grid-column:auto;
    }

    .hb-form-submit {
        align-items:stretch;
        flex-direction:column;
    }
}


/* BOARD HERO CTA POSITION V0.2 */

.hb-hero-top-action {
    display:flex;
    justify-content:flex-start;
    margin:0 0 20px;
}

.hb-hero-top-action .hb-add-button {
    display:inline-flex;
    align-items:center;
    gap:8px;

    min-height:46px;
    padding:0 18px;

    border:1px solid rgba(255,255,255,.30);
    border-radius:13px;

    background:#2563eb;
    color:#fff;

    font-size:13px;
    font-weight:800;
    text-decoration:none;

    box-shadow:
        0 10px 26px rgba(0,0,0,.16);

    transition:
        transform .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}

.hb-hero-top-action .hb-add-button:hover {
    transform:translateY(-1px);
    background:#3474ef;
    color:#fff;

    box-shadow:
        0 14px 30px rgba(0,0,0,.22);
}

.hb-add-plus {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:22px;
    height:22px;

    border-radius:7px;
    background:rgba(255,255,255,.16);

    font-size:17px;
    line-height:1;
}

@media (max-width:620px) {

    .hb-hero-top-action {
        margin-bottom:17px;
    }

    .hb-hero-top-action .hb-add-button {
        min-height:44px;
    }
}


/* BOARD HERO RIGHT CTA V0.3 */

.hb-hero .hb-shell {
    position:relative;
}

.hb-hero-top-action {
    position:absolute;
    top:88px;
    right:0;

    display:flex;
    align-items:center;
    justify-content:center;

    width:330px;
    min-height:128px;
    margin:0;
    padding:22px;

    border:1px solid rgba(255,255,255,.08);
    border-radius:0;

    background:
        rgba(5,23,54,.62);

    box-shadow:
        0 18px 38px rgba(0,0,0,.13);

    backdrop-filter:
        blur(5px);
}

.hb-hero-top-action .hb-add-button {
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    min-width:250px;
    min-height:58px;

    padding:0 26px;

    border:1px solid rgba(255,255,255,.24);
    border-radius:14px;

    background:#2f73f3;
    color:#fff;

    font-size:16px;
    font-weight:800;
    line-height:1;

    text-decoration:none;

    box-shadow:
        0 12px 26px rgba(0,0,0,.22);

    transition:
        transform .18s ease,
        background .18s ease,
        box-shadow .18s ease;
}

.hb-hero-top-action .hb-add-button:hover {
    transform:translateY(-2px);
    background:#3b7df6;
    color:#fff;

    box-shadow:
        0 16px 32px rgba(0,0,0,.28);
}

.hb-hero-top-action .hb-add-plus {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    width:28px;
    height:28px;

    border-radius:8px;

    background:
        rgba(255,255,255,.16);

    font-size:20px;
    font-weight:700;
    line-height:1;
}

/*
 * Залишаємо місце справа,
 * щоб заголовок не заходив під CTA.
 */
@media (min-width:901px) {

    .hb-hero h1,
    .hb-hero-text,
    .hb-search,
    .hb-stats {
        max-width:760px;
    }
}

/*
 * Tablet / mobile:
 * CTA переходить у звичайний потік.
 */
@media (max-width:900px) {

    .hb-hero-top-action {
        position:static;

        width:100%;
        min-height:auto;

        margin:0 0 24px;
        padding:18px;

        justify-content:flex-start;

        border-radius:16px;
    }

    .hb-hero-top-action .hb-add-button {
        min-width:0;
        min-height:52px;
    }
}

@media (max-width:620px) {

    .hb-hero-top-action {
        padding:14px;
    }

    .hb-hero-top-action .hb-add-button {
        width:100%;
        min-height:50px;
        font-size:14px;
    }
}


/* BOARD_HERO_CTA_FINAL_V4 */

/*
 * Desktop:
 * CTA знаходиться праворуч
 * на рівні дворядкового H1.
 * Без додаткового темного контейнера.
 */
@media (min-width:901px) {

    .hb-hero .hb-shell {
        position:relative;
    }

    .hb-hero-top-action {
        position:absolute !important;

        top:72px !important;
        right:0 !important;

        display:block !important;

        width:auto !important;
        min-width:0 !important;
        min-height:0 !important;

        margin:0 !important;
        padding:0 !important;

        border:0 !important;
        border-radius:0 !important;

        background:transparent !important;

        box-shadow:none !important;
        backdrop-filter:none !important;
    }

    .hb-hero-top-action .hb-add-button {
        display:inline-flex !important;
        align-items:center;
        justify-content:center;
        gap:11px;

        min-width:285px !important;
        min-height:64px !important;

        padding:0 30px !important;

        border:
            1px solid
            rgba(255,255,255,.26) !important;

        border-radius:15px !important;

        background:#3478f6 !important;
        color:#fff !important;

        font-size:17px !important;
        font-weight:800 !important;

        text-decoration:none !important;

        box-shadow:
            0 12px 28px
            rgba(0,0,0,.17) !important;

        transition:
            transform .18s ease,
            background .18s ease,
            box-shadow .18s ease;
    }

    .hb-hero-top-action
    .hb-add-button:hover {
        transform:translateY(-2px);

        background:#4282f7 !important;

        box-shadow:
            0 16px 32px
            rgba(0,0,0,.22) !important;
    }

    .hb-hero-top-action
    .hb-add-plus {
        display:inline-flex;
        align-items:center;
        justify-content:center;

        width:29px;
        height:29px;

        border-radius:8px;

        background:
            rgba(255,255,255,.16);

        font-size:20px;
        line-height:1;
    }
}


/*
 * Tablet / mobile:
 * CTA переходить під текст,
 * без темного контейнера.
 */
@media (max-width:900px) {

    .hb-hero-top-action {
        position:static !important;

        width:auto !important;
        min-height:0 !important;

        margin:0 0 22px !important;
        padding:0 !important;

        border:0 !important;

        background:transparent !important;

        box-shadow:none !important;
        backdrop-filter:none !important;
    }

    .hb-hero-top-action
    .hb-add-button {
        min-height:52px !important;
        padding:0 22px !important;
    }
}



/* BOARD_GEO_SEARCH_V1 */

.hb-geo-field {
    position:relative;
}

.hb-geo-results {
    position:absolute;
    z-index:50;

    top:78px;
    left:0;
    right:0;

    max-height:320px;
    overflow:auto;

    padding:6px;

    border:1px solid #d9e0eb;
    border-radius:14px;

    background:#fff;

    box-shadow:
        0 18px 40px
        rgba(15,23,42,.13);
}

.hb-geo-result {
    display:flex;
    flex-direction:column;
    gap:3px;

    width:100%;

    padding:11px 12px;

    border:0;
    border-radius:9px;

    background:transparent;

    color:#172033;
    text-align:left;

    cursor:pointer;
}

.hb-geo-result:hover {
    background:#edf3ff;
}

.hb-geo-result strong {
    font-size:13px;
}

.hb-geo-result span {
    color:#718096;
    font-size:11px;
    line-height:1.4;
}

.hb-geo-empty {
    padding:12px;
    color:#718096;
    font-size:12px;
}

.hb-geo-selected {
    padding:10px 12px;

    border-radius:10px;

    background:#eef6ff;
    color:#25528a;

    font-size:12px;
    line-height:1.45;
}



/* =========================================================
   BOARD_NATIVE_SINGLE_V1
   ========================================================= */

.hb-ad {
    padding:38px 0 72px;
}

.hb-ad-layout {
    display:grid;
    grid-template-columns:
        minmax(0,1.65fr)
        minmax(300px,.75fr);
    gap:28px;
    align-items:start;
}

.hb-ad-main {
    display:grid;
    gap:22px;
}

.hb-ad-gallery,
.hb-ad-description,
.hb-ad-info,
.hb-ad-contact,
.hb-ad-safety {
    border:1px solid #e2e8f0;
    border-radius:22px;
    background:#fff;
    box-shadow:
        0 8px 28px
        rgba(15,23,42,.045);
}

.hb-ad-gallery {
    overflow:hidden;
}

.hb-ad-main-image {
    display:flex;
    align-items:center;
    justify-content:center;

    min-height:480px;
    max-height:650px;

    background:#eef2f7;
}

.hb-ad-main-image img {
    display:block;

    width:100%;
    height:100%;
    max-height:650px;

    object-fit:contain;
}

.hb-ad-no-image {
    display:flex;
    align-items:flex-end;

    min-height:420px;

    padding:26px;

    background:
        radial-gradient(
            circle at 78% 18%,
            rgba(96,165,250,.5),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #10264d,
            #2563eb
        );

    color:#fff;
}

.hb-ad-no-image span {
    font-size:12px;
    font-weight:900;
    letter-spacing:.18em;
}

.hb-ad-thumbs {
    display:flex;
    gap:9px;

    padding:12px;

    overflow-x:auto;

    border-top:
        1px solid #edf0f4;

    background:#fff;
}

.hb-ad-thumb {
    flex:0 0 74px;

    width:74px;
    height:64px;

    padding:3px;

    overflow:hidden;

    border:2px solid transparent;
    border-radius:10px;

    background:#f2f4f7;

    cursor:pointer;
}

.hb-ad-thumb.is-active {
    border-color:#2563eb;
}

.hb-ad-thumb img {
    display:block;

    width:100%;
    height:100%;

    border-radius:6px;

    object-fit:cover;
}

.hb-ad-description {
    padding:26px 28px;
}

.hb-ad-description h2 {
    margin:0 0 18px;

    font-size:24px;
    letter-spacing:-.025em;
}

.hb-ad-content {
    color:#334155;

    font-size:16px;
    line-height:1.75;
}

.hb-ad-content p:last-child {
    margin-bottom:0;
}

.hb-ad-side {
    position:sticky;
    top:28px;

    display:grid;
    gap:16px;
}

.hb-ad-info {
    padding:26px;
}

.hb-ad-label {
    margin-bottom:10px;

    color:#2563eb;

    font-size:11px;
    font-weight:900;

    letter-spacing:.15em;
}

.hb-ad-info h1 {
    margin:0;

    font-size:clamp(
        28px,
        3vw,
        40px
    );

    line-height:1.08;
    letter-spacing:-.035em;
}

.hb-ad-price {
    margin-top:22px;

    color:#0f172a;

    font-size:31px;
    font-weight:850;

    letter-spacing:-.03em;
}

.hb-ad-price span {
    color:#64748b;
    font-size:18px;
    font-weight:700;
}

.hb-ad-meta {
    display:grid;
    gap:14px;

    margin-top:24px;
    padding-top:20px;

    border-top:
        1px solid #edf0f4;
}

.hb-ad-meta div {
    display:grid;
    gap:3px;
}

.hb-ad-meta span {
    color:#7b8798;

    font-size:11px;
    font-weight:700;

    text-transform:uppercase;
}

.hb-ad-meta strong {
    color:#263449;

    font-size:13px;
    line-height:1.45;
}

.hb-ad-contact {
    padding:22px 24px;
}

.hb-ad-contact h2 {
    margin:7px 0 17px;

    font-size:22px;
}

.hb-ad-contact-button,
.hb-ad-contact-secondary {
    display:flex;
    align-items:center;
    justify-content:center;

    width:100%;

    min-height:48px;

    padding:0 14px;

    border-radius:12px;

    font-size:14px;
    font-weight:800;

    text-decoration:none;
}

.hb-ad-contact-button {
    background:#2563eb;
    color:#fff;
}

.hb-ad-contact-secondary {
    margin-top:9px;

    border:1px solid #d9e0eb;

    background:#fff;
    color:#2563eb;
}

.hb-ad-safety {
    padding:19px 21px;

    background:#fffaf0;
    border-color:#f0dfb8;
}

.hb-ad-safety strong {
    display:block;

    margin-bottom:5px;

    color:#815719;
}

.hb-ad-safety p {
    margin:0;

    color:#7a684d;

    font-size:12px;
    line-height:1.55;
}

@media (max-width:900px) {

    .hb-ad-layout {
        grid-template-columns:1fr;
    }

    .hb-ad-side {
        position:static;
    }

    .hb-ad-main-image {
        min-height:360px;
    }
}

@media (max-width:620px) {

    .hb-ad {
        padding-top:24px;
    }

    .hb-ad-main-image {
        min-height:260px;
    }

    .hb-ad-description,
    .hb-ad-info,
    .hb-ad-contact {
        padding:20px;
    }
}



/* =========================================================
   BOARD_FILTERS_V1
   ========================================================= */

.hb-search-form {
    position:relative;
    z-index:5;

    width:min(760px,100%);
}

.hb-search-form .hb-search {
    width:100%;
}

.hb-filter-row {
    display:grid;

    grid-template-columns:
        minmax(180px,.85fr)
        minmax(260px,1.25fr)
        auto;

    gap:10px;

    margin-top:12px;

    align-items:end;
}

.hb-filter-control {
    position:relative;

    display:flex;
    flex-direction:column;

    gap:5px;

    min-width:0;
}

.hb-filter-control > span {
    color:#bcd0f4;

    font-size:10px;
    font-weight:800;

    letter-spacing:.08em;
    text-transform:uppercase;
}

.hb-filter-control select,
.hb-filter-control > input[type="search"] {
    width:100%;
    height:44px;

    padding:0 12px;

    border:1px solid
        rgba(255,255,255,.22);

    border-radius:11px;

    outline:0;

    background:#fff;

    color:#182235;

    font:inherit;
    font-size:13px;
}

.hb-filter-control select:focus,
.hb-filter-control > input[type="search"]:focus {
    border-color:#76a6ff;

    box-shadow:
        0 0 0 3px
        rgba(77,132,235,.18);
}

.hb-filter-clear {
    display:inline-flex;

    align-items:center;
    justify-content:center;

    height:44px;

    padding:0 14px;

    border:1px solid
        rgba(255,255,255,.24);

    border-radius:11px;

    color:#fff;

    font-size:12px;
    font-weight:800;

    text-decoration:none;

    white-space:nowrap;
}

.hb-filter-clear:hover {
    background:
        rgba(255,255,255,.10);

    color:#fff;
}

.hb-filter-geo-results {
    position:absolute;

    z-index:80;

    top:68px;
    left:0;
    right:0;

    max-height:300px;
    overflow:auto;

    padding:6px;

    border:1px solid #dce3ed;
    border-radius:13px;

    background:#fff;

    box-shadow:
        0 18px 42px
        rgba(3,12,28,.22);
}

.hb-filter-geo-result {
    display:flex;
    flex-direction:column;

    gap:3px;

    width:100%;

    padding:10px 11px;

    border:0;
    border-radius:8px;

    background:transparent;

    color:#172033;

    text-align:left;

    cursor:pointer;
}

.hb-filter-geo-result:hover {
    background:#edf3ff;
}

.hb-filter-geo-result strong {
    font-size:13px;
}

.hb-filter-geo-result small {
    color:#738096;

    font-size:10px;
    line-height:1.4;
}

.hb-filter-geo-empty {
    padding:11px;

    color:#738096;

    font-size:12px;
}

.hb-filter-geo-selected {
    margin-top:2px;

    color:#c7dafb;

    font-size:10px;
    line-height:1.35;
}

.hb-category.is-active {
    border-color:#8bb3ff;

    box-shadow:
        0 0 0 2px
        rgba(37,99,235,.10);
}

.hb-category.is-active
.hb-category-icon {
    background:#2563eb;
    color:#fff;
}


@media (max-width:760px) {

    .hb-filter-row {
        grid-template-columns:1fr;
    }

    .hb-filter-clear {
        justify-self:start;
    }

    .hb-filter-geo-results {
        top:68px;
    }
}



/* =========================================================
   BOARD_ARCHIVE_SEARCH_V1
   ========================================================= */

.hb-current-search-note {
    margin-top:8px;

    color:#b9cae8;

    font-size:10px;
    line-height:1.45;
}

.hb-archive-search {
    display:flex;
    flex-wrap:wrap;
    gap:8px;

    max-width:560px;

    margin-top:18px;
}

.hb-archive-search input[type="search"] {
    flex:1 1 270px;

    min-width:0;
    height:44px;

    padding:0 13px;

    border:1px solid #dbe2ec;
    border-radius:11px;

    outline:0;

    background:#fff;

    color:#172033;
    font:inherit;
    font-size:13px;
}

.hb-archive-search input[type="search"]:focus {
    border-color:#739ff3;

    box-shadow:
        0 0 0 3px
        rgba(37,99,235,.10);
}

.hb-archive-search button {
    height:44px;

    padding:0 15px;

    border:0;
    border-radius:11px;

    background:#2563eb;

    color:#fff;

    font:inherit;
    font-size:12px;
    font-weight:800;

    cursor:pointer;
}

.hb-archive-search > a {
    display:inline-flex;
    align-items:center;

    height:44px;

    padding:0 8px;

    color:#64748b;

    font-size:11px;
    font-weight:700;

    text-decoration:none;
}

.hb-archive-search-status {
    margin-top:10px;

    color:#64748b;

    font-size:12px;
}

.hb-archive-search-status strong {
    color:#172033;
}

.hb-archive-empty {
    margin-top:18px;
}


@media (max-width:620px) {

    .hb-archive-search {
        display:grid;
        grid-template-columns:1fr;
    }

    .hb-archive-search button {
        width:100%;
    }

    .hb-archive-search > a {
        height:auto;
        padding:3px 0;
    }
}



/* =========================================================
   BOARD_NATIVE_CARDS_V2
   ========================================================= */

.hb-card-native-v2 {
    overflow:hidden;
}

.hb-native-media {
    position:relative;

    display:block;

    aspect-ratio:16 / 10;

    overflow:hidden;

    background:#e8eef7;
}

.hb-native-media > img {
    display:block;

    width:100%;
    height:100%;

    object-fit:cover;

    transition:
        transform .22s ease;
}

a.hb-native-media:hover > img {
    transform:scale(1.025);
}

.hb-native-placeholder {
    display:flex;
    align-items:flex-end;

    width:100%;
    height:100%;

    padding:18px;

    background:
        radial-gradient(
            circle at 78% 24%,
            rgba(89,151,255,.55),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            #10264d,
            #285fce
        );

    color:#fff;
}

.hb-native-placeholder span {
    font-size:10px;
    font-weight:900;

    letter-spacing:.18em;
}

.hb-native-price {
    position:absolute;

    right:12px;
    bottom:12px;

    padding:7px 10px;

    border-radius:10px;

    background:
        rgba(15,23,42,.88);

    color:#fff;

    font-size:13px;
    font-weight:850;

    box-shadow:
        0 5px 18px
        rgba(0,0,0,.18);
}

.hb-native-body {
    display:flex;
    flex-direction:column;

    min-height:205px;
}

.hb-native-meta {
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:10px;

    margin-bottom:9px;

    color:#7b8798;

    font-size:10px;
    font-weight:700;
}

.hb-native-meta span:first-child {
    color:#2563eb;
}

.hb-native-body h3 {
    margin-bottom:11px;
}

.hb-native-location {
    display:flex;

    gap:6px;

    margin-top:auto;

    color:#64748b;

    font-size:11px;
    line-height:1.45;
}

.hb-native-location span {
    flex:0 0 auto;

    color:#2563eb;
}

.hb-native-footer {
    margin-top:13px;
    padding-top:12px;

    border-top:
        1px solid #edf0f4;
}

.hb-native-preview-badge {
    display:inline-flex;

    align-items:center;

    min-height:28px;

    padding:0 9px;

    border-radius:999px;

    background:#fff3cd;

    color:#7a5a00;

    font-size:10px;
    font-weight:800;
}

.hb-admin-preview-note {
    max-width:520px;

    margin-top:6px;

    color:#8a6500;

    font-size:11px;
    line-height:1.45;
}

body.holosua-board-home
.hb-section
.hb-grid {
    align-items:stretch;
}


@media (max-width:620px) {

    .hb-native-body {
        min-height:0;
    }

    .hb-native-media {
        aspect-ratio:4 / 3;
    }
}



/* =========================================================
   BOARD_SECTION_NAV_V1
   ========================================================= */

.hb-subsections {
    margin-top:24px;

    padding:20px;

    border:1px solid #e1e7f0;
    border-radius:18px;

    background:#fff;

    box-shadow:
        0 7px 25px
        rgba(15,23,42,.035);
}

.hb-subsections-head {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    gap:16px;

    margin-bottom:13px;
}

.hb-subsections-head h3 {
    margin:3px 0 0;

    color:#172033;

    font-size:20px;
    letter-spacing:-.025em;
}

.hb-subsection-list {
    display:flex;
    flex-wrap:wrap;

    gap:8px;
}

.hb-subsection-chip {
    display:inline-flex;
    align-items:center;

    min-height:36px;

    padding:0 12px;

    border:1px solid #dce3ed;
    border-radius:999px;

    background:#f8fafc;

    color:#334155;

    font-size:11px;
    font-weight:750;

    text-decoration:none;

    transition:
        border-color .15s ease,
        background .15s ease,
        color .15s ease;
}

.hb-subsection-chip:hover {
    border-color:#94b5f4;

    background:#eef4ff;

    color:#175bd7;
}

.hb-subsection-chip.is-active {
    border-color:#2563eb;

    background:#2563eb;

    color:#fff;
}

@media (max-width:620px) {

    .hb-subsections {
        padding:16px;
    }

    .hb-subsection-list {
        gap:6px;
    }

    .hb-subsection-chip {
        min-height:34px;
        padding:0 10px;
    }
}



/* =========================================================
   BOARD_DCZ_SINGLE_V1
   ========================================================= */

.hb-dcz-preview-alert {
    display:flex;
    align-items:center;
    justify-content:space-between;

    gap:20px;

    margin:0 0 20px;
    padding:14px 18px;

    border:1px solid #f0d98d;
    border-radius:14px;

    background:#fff9df;

    color:#725500;

    font-size:12px;
    line-height:1.45;
}

.hb-dcz-preview-alert strong {
    font-weight:850;
}

.hb-dcz-hero {
    display:flex;
    align-items:flex-end;
    justify-content:space-between;

    min-height:270px;

    padding:28px;

    border-radius:20px;

    background:
        radial-gradient(
            circle at 82% 18%,
            rgba(78,143,255,.58),
            transparent 32%
        ),
        linear-gradient(
            135deg,
            #10264d,
            #2259bd
        );

    color:#fff;
}

.hb-dcz-hero-mark {
    font-size:14px;
    font-weight:900;

    letter-spacing:.18em;
}

.hb-dcz-hero > div:last-child {
    display:flex;
    flex-direction:column;

    max-width:360px;

    text-align:right;
}

.hb-dcz-hero span {
    margin-bottom:5px;

    font-size:11px;
    font-weight:800;

    letter-spacing:.1em;

    opacity:.78;
}

.hb-dcz-hero strong {
    font-size:24px;
    line-height:1.1;
}

.hb-dcz-employer {
    padding:22px;

    border:1px solid #e4e9f1;
    border-radius:18px;

    background:#fff;

    box-shadow:
        0 8px 25px
        rgba(15,23,42,.04);
}

.hb-dcz-employer h2 {
    margin:7px 0 0;

    font-size:17px;
    line-height:1.35;

    color:#172033;
}

.hb-dcz-source-note {
    display:flex;
    flex-direction:column;

    gap:5px;

    margin-top:18px;
    padding:17px 19px;

    border:1px solid #dce6f6;
    border-radius:15px;

    background:#f7faff;

    color:#526174;

    font-size:12px;
    line-height:1.55;
}

.hb-dcz-source-note strong {
    color:#2259bd;

    font-size:11px;
    font-weight:850;

    letter-spacing:.04em;
    text-transform:uppercase;
}

.hb-dcz-safety {
    padding:16px 18px;

    border-radius:15px;

    background:#f6f8fb;

    color:#657286;

    font-size:11px;
    line-height:1.55;
}

.hb-dcz-single
.hb-ad-price small {
    display:block;

    margin-top:3px;

    color:#778397;

    font-size:10px;
    font-weight:650;
}


@media (max-width:760px) {

    .hb-dcz-hero {
        min-height:210px;

        padding:22px;
    }

    .hb-dcz-hero strong {
        font-size:20px;
    }

    .hb-dcz-preview-alert {
        align-items:flex-start;
        flex-direction:column;

        gap:4px;
    }
}



/* =========================================================
   BOARD_PAGINATION_V1
   ========================================================= */

.hb-board-pagination {
    display:flex;
    flex-wrap:wrap;
    align-items:center;

    gap:7px;

    margin-top:24px;
}

.hb-board-pagination a,
.hb-board-pagination
.hb-page-number.is-current {
    display:inline-flex;
    align-items:center;
    justify-content:center;

    min-width:38px;
    height:38px;

    padding:0 11px;

    border:1px solid #dce3ed;
    border-radius:10px;

    background:#fff;

    color:#24405f;

    font-size:12px;
    font-weight:800;

    text-decoration:none;
}

.hb-board-pagination a:hover {
    border-color:#8eb0f4;

    color:#2563eb;

    background:#f6f9ff;
}

.hb-board-pagination
.hb-page-number.is-current {
    border-color:#2563eb;

    background:#2563eb;

    color:#fff;
}

.hb-board-pagination
.hb-page-dots {
    display:inline-flex;

    min-width:24px;

    justify-content:center;

    color:#7d8897;

    font-weight:800;
}


@media (max-width:620px) {

    .hb-board-pagination {
        gap:5px;
    }

    .hb-board-pagination a,
    .hb-board-pagination
    .hb-page-number.is-current {
        min-width:34px;
        height:34px;

        padding:0 8px;
    }
}



/* =========================================================
   BOARD_DCZ_CLEAN_CONTENT_V1
   ========================================================= */

.hb-dcz-single
.hb-ad-content > p:first-child {
    margin-top:0;

    font-size:15px;
    line-height:1.72;

    color:#3e4c60;
}

.hb-dcz-single
.hb-ad-content h3 {
    margin:22px 0 9px;

    color:#172033;

    font-size:15px;
    line-height:1.3;
}

.hb-dcz-single
.hb-ad-content ul {
    margin:0;
    padding-left:20px;
}

.hb-dcz-single
.hb-ad-content li {
    margin:0 0 7px;

    color:#4c5b70;

    line-height:1.55;
}

.hb-dcz-single
.hb-ad-content li:last-child {
    margin-bottom:0;
}



/* =========================================================
   BOARD_PROZORRO_SINGLE_V1
   ========================================================= */

.hb-prozorro-single {
    padding:42px 0 72px;
}

.hb-prozorro-layout {
    display:grid;

    grid-template-columns:
        minmax(0,1fr)
        340px;

    gap:24px;

    align-items:start;
}

.hb-prozorro-main,
.hb-prozorro-info,
.hb-prozorro-organizer {
    border:1px solid #e1e7f0;
    border-radius:22px;

    background:#fff;

    box-shadow:
        0 10px 32px
        rgba(15,23,42,.045);
}

.hb-prozorro-main {
    overflow:hidden;
}

.hb-prozorro-hero {
    display:flex;
    flex-direction:column;
    justify-content:flex-end;

    min-height:230px;

    padding:30px;

    background:
        radial-gradient(
            circle at 88% 10%,
            rgba(61,140,255,.28),
            transparent 34%
        ),
        linear-gradient(
            135deg,
            #071a37,
            #10356b 62%,
            #1357a7
        );

    color:#fff;
}

.hb-prozorro-hero span {
    margin-bottom:auto;

    font-size:10px;
    font-weight:850;

    letter-spacing:.14em;
}

.hb-prozorro-hero strong {
    font-size:27px;
    line-height:1.1;
}

.hb-prozorro-hero small {
    margin-top:7px;

    color:#d7e7ff;

    font-size:13px;
}

.hb-prozorro-content {
    padding:30px;
}

.hb-prozorro-content h1 {
    margin:8px 0 12px;

    color:#172033;

    font-size:clamp(
        27px,
        3vw,
        40px
    );

    line-height:1.12;

    letter-spacing:-.035em;
}

.hb-prozorro-location {
    margin-bottom:24px;

    color:#59687c;

    font-size:13px;
    line-height:1.5;
}

.hb-prozorro-description {
    color:#3e4c60;

    font-size:15px;
    line-height:1.72;
}

.hb-prozorro-description
p:first-child {
    margin-top:0;
}

.hb-prozorro-source {
    display:flex;
    flex-direction:column;

    gap:6px;

    margin-top:28px;
    padding:18px 20px;

    border:1px solid #dce7f7;
    border-radius:16px;

    background:#f6f9ff;

    color:#536277;

    font-size:12px;
    line-height:1.55;
}

.hb-prozorro-source strong {
    color:#2259bd;

    font-size:11px;
    font-weight:850;

    letter-spacing:.05em;

    text-transform:uppercase;
}

.hb-prozorro-source a {
    margin-top:5px;

    color:#175fd1;

    font-weight:800;

    text-decoration:none;
}

.hb-prozorro-side {
    display:flex;
    flex-direction:column;

    gap:16px;
}

.hb-prozorro-info,
.hb-prozorro-organizer {
    padding:22px;
}

.hb-prozorro-price {
    padding-bottom:18px;

    border-bottom:1px solid #edf1f6;
}

.hb-prozorro-price span {
    display:block;

    margin-bottom:4px;

    color:#778397;

    font-size:10px;
    font-weight:800;

    letter-spacing:.07em;

    text-transform:uppercase;
}

.hb-prozorro-price strong {
    display:block;

    color:#152238;

    font-size:26px;
    line-height:1.1;
}

.hb-prozorro-info dl {
    margin:0;
}

.hb-prozorro-info dl > div {
    padding:14px 0;

    border-bottom:1px solid #edf1f6;
}

.hb-prozorro-info dl > div:last-child {
    padding-bottom:0;

    border-bottom:0;
}

.hb-prozorro-info dt {
    margin-bottom:4px;

    color:#8490a0;

    font-size:10px;
    font-weight:800;

    text-transform:uppercase;
}

.hb-prozorro-info dd {
    margin:0;

    color:#26364c;

    font-size:13px;
    font-weight:700;

    line-height:1.45;

    overflow-wrap:anywhere;
}

.hb-prozorro-organizer strong {
    display:block;

    margin-top:7px;

    color:#25354a;

    font-size:14px;
    line-height:1.5;
}

.hb-prozorro-notice {
    padding:17px 19px;

    border-radius:16px;

    background:#f0f3f7;

    color:#687589;

    font-size:11px;
    line-height:1.55;
}


@media (max-width:860px) {

    .hb-prozorro-layout {
        grid-template-columns:1fr;
    }
}


@media (max-width:620px) {

    .hb-prozorro-single {
        padding-top:28px;
    }

    .hb-prozorro-hero {
        min-height:190px;

        padding:22px;
    }

    .hb-prozorro-content {
        padding:22px;
    }

    .hb-prozorro-info,
    .hb-prozorro-organizer {
        padding:18px;
    }
}



/* =========================================================
   BOARD_PROZORRO_SOURCE_V2
   ========================================================= */

.hb-prozorro-source-v2 {
    display:flex;
    align-items:center;
    flex-wrap:wrap;

    gap:6px;

    margin-top:26px;
    padding-top:18px;

    border-top:1px solid #edf1f6;

    color:#8490a0;

    font-size:11px;
    line-height:1.45;
}

.hb-prozorro-source-v2 a {
    color:#4f6f9f;

    font-weight:750;

    text-decoration:none;
}

.hb-prozorro-source-v2 a:hover {
    color:#175fd1;

    text-decoration:underline;
}



/* =========================================================
   BOARD_DCZ_SOURCE_LINK_V1
   ========================================================= */

.hb-dcz-source-note a {
    display:inline-block;

    width:max-content;
    max-width:100%;

    margin-top:3px;

    color:#2259bd;

    font-size:12px;
    font-weight:800;

    text-decoration:none;
}

.hb-dcz-source-note a:hover {
    color:#174ea6;

    text-decoration:underline;
}

