/* ============================================
   MODERN DESIGN OVERRIDES — Курьерос.ру
   ============================================ */

/* --- Google Fonts: Inter --- */
@import url('https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap');

/* --- CSS Variables Override --- */
:root {
    --bd-ff-body: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --bd-ff-title: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --bd-ff-p: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;
    --bd-primary: #0ABF75;
    --bd-body-primary: #F2F4F7;
    --bd-bg-primary: #F2F4F7;
    --bd-border-primary: #E4E7EC;
    --modern-radius: 14px;
    --modern-radius-sm: 8px;
    --modern-shadow: 0 2px 12px rgba(0, 0, 0, 0.08);
    --modern-shadow-hover: 0 8px 32px rgba(0, 0, 0, 0.14);
    --modern-shadow-card: 0 1px 4px rgba(0,0,0,0.06), 0 4px 16px rgba(0,0,0,0.07);
    --primary-rgb: 10, 191, 117;
}

/* --- Base Typography --- */
body {
    font-family: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif !important;
    background-color: #F2F4F7;
    color: #1A1D23;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-feature-settings: "cv02", "cv03", "cv04", "cv11";
}

h1, h2, h3, h4, h5, h6 {
    font-family: 'Inter', sans-serif !important;
    letter-spacing: -0.02em;
    font-weight: 500;
}

/* ============================================
   HEADER
   ============================================ */
.bd-header-area {
    background: #ffffff !important;
    border-bottom: 1px solid rgba(0, 0, 0, 0.07) !important;
    box-shadow: 0 1px 0 rgba(0,0,0,0.04) !important;
    transition: box-shadow 0.3s;
}

.bd-header-area.header-sticky {
    box-shadow: 0 2px 20px rgba(0, 0, 0, 0.08) !important;
}

.bd-header-inner {
    height: 64px;
}

/* Logo */
.bd-header-logo img {
    height: 36px;
    width: auto;
}

/* Navigation links */
.main-menu ul li a {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #374151 !important;
    letter-spacing: 0 !important;
    padding: 6px 12px !important;
    border-radius: var(--modern-radius-sm) !important;
    transition: color 0.2s, background 0.2s !important;
}

.main-menu ul li a:hover {
    color: var(--bd-primary) !important;
    background: rgba(10, 191, 117, 0.08) !important;
}

/* Category dropdown button */
.bd-category-btn {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    background: var(--bd-primary) !important;
    color: #fff !important;
    border-radius: 10px !important;
    padding: 8px 16px !important;
    border: none !important;
    gap: 8px;
    transition: opacity 0.2s, transform 0.15s !important;
    letter-spacing: 0;
}

.bd-category-btn:hover {
    opacity: 0.9;
    transform: translateY(-1px);
}

/* Header comparison button */
.bd-header-sign-btn .bd-btn {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    padding: 8px 18px !important;
    border-color: var(--bd-primary) !important;
    color: var(--bd-primary) !important;
    transition: all 0.2s !important;
    letter-spacing: 0;
}

.bd-header-sign-btn .bd-btn:hover {
    background: var(--bd-primary) !important;
    color: #fff !important;
    transform: translateY(-1px);
    box-shadow: 0 4px 12px rgba(10, 191, 117, 0.3) !important;
}

/* Hamburger lines */
.bar-icon span {
    background: #374151 !important;
    border-radius: 2px !important;
}

/* ============================================
   BANNER / HERO SECTION
   ============================================ */
.bd-banner-area {
    background: linear-gradient(135deg, #f8fff9 0%, #eafff4 50%, #f0f9ff 100%) !important;
    padding-top: 52px !important;
    padding-bottom: 40px !important;
    border-bottom: 1px solid #E4E7EC;
}

.bd-banner-title {
    font-family: 'Inter', sans-serif !important;
    font-size: clamp(26px, 4vw, 44px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.03em !important;
    color: #0D1117 !important;
    line-height: 1.15 !important;
}

.bd-banner-title .text-primary {
    color: var(--bd-primary) !important;
}

.bd-banner-description {
    font-size: 16px !important;
    color: #6B7280 !important;
    font-weight: 400 !important;
    line-height: 1.6 !important;
    max-width: 560px;
}

/* ============================================
   JOB CARDS — TOP (featured)
   ============================================ */
.bd-course-content.index-item {
    background: #fff !important;
    border: 1px solid #E4E7EC !important;
    border-radius: var(--modern-radius) !important;
    box-shadow: var(--modern-shadow-card) !important;
    padding: 20px !important;
    transition: transform 0.2s, box-shadow 0.2s !important;
    position: relative;
}

.bd-course-content.index-item:hover {
    transform: translateY(-3px) !important;
    box-shadow: var(--modern-shadow-hover) !important;
    border-color: rgba(10, 191, 117, 0.2) !important;
}

/* ============================================
   JOB CARDS — LIST (catalog)
   ============================================ */
.bd-course-wrapper.style-four {
    background: #fff !important;
    border: 1px solid #E4E7EC !important;
    border-radius: var(--modern-radius) !important;
    box-shadow: var(--modern-shadow-card) !important;
    transition: transform 0.2s, box-shadow 0.2s, border-color 0.2s !important;
    margin-bottom: 12px;
}

.bd-course-wrapper.style-four:hover {
    transform: translateY(-2px) !important;
    box-shadow: var(--modern-shadow-hover) !important;
    border-color: rgba(10, 191, 117, 0.25) !important;
}

/* Job title links */
.bd-course-content h3.underline a,
.bd-course-content h3 a {
    font-family: 'Inter', sans-serif !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    color: #111827 !important;
    text-decoration: none !important;
    transition: color 0.2s !important;
}

.bd-course-content h3 a:hover {
    color: var(--bd-primary) !important;
}

/* Price display */
.price-wrap span {
    font-size: 11px !important;
    font-weight: 600 !important;
    color: #9CA3AF !important;
    text-transform: uppercase !important;
    letter-spacing: 0.06em !important;
    display: block;
    margin-bottom: 2px;
}

.price-wrap p {
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #374151 !important;
    margin: 0 !important;
}

h3.price {
    font-family: 'Inter', sans-serif !important;
    font-size: 20px !important;
    font-weight: 800 !important;
    color: #0D1117 !important;
    letter-spacing: -0.02em !important;
}

h3.price sub {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #6B7280 !important;
    letter-spacing: 0;
}

/* Company name */
.name-firm a {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 14px !important;
    color: #374151 !important;
}

.name-firm a:hover {
    color: var(--bd-primary) !important;
}

.adsspan,
.reklama {
    font-size: 11px !important;
    color: #9CA3AF !important;
    font-style: normal !important;
}

/* ============================================
   BUTTONS
   ============================================ */
.bd-btn {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0 !important;
    border-radius: 10px !important;
    transition: all 0.2s !important;
}

.bd-btn.btn-outline-border-primary {
    border: 1.5px solid var(--bd-primary) !important;
    color: var(--bd-primary) !important;
    background: transparent !important;
    font-size: 14px !important;
    padding: 9px 20px !important;
}

.bd-btn.btn-outline-border-primary:hover {
    background: var(--bd-primary) !important;
    color: #fff !important;
    box-shadow: 0 4px 14px rgba(10, 191, 117, 0.35) !important;
    transform: translateY(-1px) !important;
}

/* Сброс стилей кнопки в топ-карточках на десктопе */
@media (min-width: 992px) {
    .bd-course-content.index-item .bd-course-btn {
        width: auto !important;
        text-align: left !important;
        margin-left: 0 !important;
        margin-top: 0 !important;
        padding-top: 0 !important;
    }
}

/* Apply button in cards */
.bd-course-btn a {
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    border-radius: 10px !important;
    font-size: 13px !important;
    padding: 9px 18px !important;
}

/* Compare button */
.btn-new {
    border-radius: 10px !important;
    border: 1.5px solid #E4E7EC !important;
    background: #fff !important;
    transition: all 0.2s !important;
}

.btn-new:hover {
    border-color: var(--bd-primary) !important;
    box-shadow: 0 2px 8px rgba(10, 191, 117, 0.2) !important;
}

/* ============================================
   SECTION TITLES
   ============================================ */
.bd-section-title {
    font-family: 'Inter', sans-serif !important;
    font-size: clamp(20px, 2.5vw, 28px) !important;
    font-weight: 800 !important;
    letter-spacing: -0.025em !important;
    color: #0D1117 !important;
}

.bd-section-title-wrapper {
    margin-bottom: 24px;
}

/* ============================================
   ACCORDION / DETAILS
   ============================================ */
details summary h2 {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 600 !important;
    color: #374151 !important;
}

/* Grid-раскладка в раскрытом блоке вакансии */
.accordion-collapse {
    width: 100% !important;
    max-width: 100% !important;
    overflow: hidden !important;
}

.accordion-collapse .flex100 {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
    width: 100% !important;
}

.accordion-collapse .flex20 {
    width: 100% !important;
    max-width: 100% !important;
}

@media (max-width: 768px) {
    .accordion-collapse .flex100 {
        grid-template-columns: repeat(2, 1fr) !important;
    }
}

/* ============================================
   ADVANTAGES LIST (checkmarks)
   ============================================ */
.bd-pricing-plan-list-3-new li {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 500 !important;
    color: #374151 !important;
    display: flex;
    align-items: center;
    gap: 6px;
    line-height: 1.5;
    padding: 8px 10px !important;
    margin-right: 10px !important;
}

/* ============================================
   BLOG NEWS — равная высота карточек
   ============================================ */

/* Правая колонка с новостями — flex по вертикали */
.bd-blog-area .col-xl-6:last-child,
.bd-blog-area .col-lg-6:last-child {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.bd-blog-area .col-xl-6:last-child .col-xl-12,
.bd-blog-area .col-lg-6:last-child .col-xl-12 {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.bd-blog-area .col-xl-6:last-child .flex-blog,
.bd-blog-area .col-lg-6:last-child .flex-blog {
    flex: 1;
    align-items: stretch !important;
    margin-bottom: 0 !important;
    box-shadow: var(--modern-shadow-card) !important;
}

/* Картинка заполняет высоту карточки */
.flex-blog .flex30 {
    display: flex;
    align-self: stretch;
    min-height: 0;
}

.flex-blog .flex30 a {
    display: block;
    width: 100%;
    height: 100%;
}

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

/* Introtext — 3 строки в блоках новостей */
.flex-blog .flex70 p,
.bd-blog-wrapper.style-four .bd-blog-content > p {
    display: -webkit-box !important;
    -webkit-line-clamp: 3 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
    white-space: normal !important;
}

/* ============================================
   ЧИТАЙТЕ В НАШЕМ БЛОГЕ — одинаковая высота
   ============================================ */

/* Колонки растягиваются до одинаковой высоты */
.bd-elements-category .row.gy-30,
section .row.gy-30:has(.bd-blog-wrapper.style-seven) {
    align-items: stretch;
}

section [class*="col-"]:has(.bd-blog-wrapper.style-seven) {
    display: flex;
    flex-direction: column;
}

/* Карточка занимает всю высоту колонки */
.bd-blog-wrapper.style-seven {
    display: flex !important;
    flex-direction: column !important;
    height: 100% !important;
}

/* Контент растягивается, кнопка прижата к низу */
.bd-blog-wrapper.style-seven .bd-blog-content {
    display: flex !important;
    flex-direction: column !important;
    flex: 1 !important;
}

/* Заголовок занимает доступное место, кнопка остаётся внизу */
.bd-blog-wrapper.style-seven .bd-blog-content .title {
    flex: 1 !important;
    display: -webkit-box !important;
    -webkit-line-clamp: 2 !important;
    -webkit-box-orient: vertical !important;
    overflow: hidden !important;
}

.bd-blog-wrapper.style-seven .bd-blog-content a.bd-btn {
    margin-top: auto;
}

/* ============================================
   RATING STARS
   ============================================ */
.rating-color i {
    color: #F59E0B !important;
    font-size: 12px !important;
}

.bd-course-rating-text span {
    font-size: 12px !important;
    font-weight: 500 !important;
    color: #6B7280 !important;
}

/* ============================================
   CATEGORY SECTION
   ============================================ */
.bd-elements-category {
    background: #F2F4F7;
}

/* Единые отступы между секциями */
.main-area > section {
    padding-top: 32px;
    padding-bottom: 32px;
}

/* Первая секция (баннер) — своя высота */
.main-area > section.bd-banner-area {
    padding-top: 40px;
    padding-bottom: 32px;
}

/* Секции section-space и section-space-new — выравниваем */
.section-space,
.section-space-new {
    padding-top: 32px !important;
    padding-bottom: 32px !important;
}

/* Два bd-faq-area подряд — убрать отступ между ними */
.bd-faq-area + .bd-faq-area {
    padding-top: 0 !important;
}

/* bd-career-area перед футером */
.bd-career-area {
    padding-top: 32px;
    padding-bottom: 32px;
}

/* Вертикальный порядок элементов внутри карточки компании */
.bd-category-content.flex {
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 4px !important;
    margin: 0 !important;
}

.bd-category-content.flex .bd-category-total {
    width: auto !important;
}

/* Одинаковая высота карточек категорий */
.bd-elements-category .row {
    align-items: stretch;
}

.bd-elements-category [class*="col-"] {
    display: flex;
    flex-direction: column;
}

.bd-category-wrapper.style-one {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.bd-category-wrapper.style-one .bd-category-item {
    flex: 1;
    align-items: flex-start !important;
}

/* ============================================
   CATEGORY DROPDOWN
   ============================================ */
.bd-category-dropdown {
    background: #fff !important;
    border-radius: 12px !important;
    border: 1px solid #E4E7EC !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.12) !important;
    overflow: hidden;
}

.bd-category-dropdown ul li a {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 500 !important;
    color: #374151 !important;
    padding: 10px 18px !important;
    transition: background 0.15s, color 0.15s !important;
}

.bd-category-dropdown ul li a:hover {
    background: rgba(10, 191, 117, 0.07) !important;
    color: var(--bd-primary) !important;
}

/* ============================================
   OFFCANVAS MENU
   ============================================ */
.bd-offcanvas-wrapper {
    border-radius: 0 16px 16px 0 !important;
}

.bd-offcanvas-area {
    background: #fff !important;
}

/* ============================================
   FOOTER
   ============================================ */
.bd-footer-area {
    background: #0D1117 !important;
}

.bd-footer-widget-title {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    font-weight: 700 !important;
    text-transform: uppercase !important;
    letter-spacing: 0.08em !important;
    color: rgba(255,255,255,0.5) !important;
    margin-bottom: 16px !important;
}

.bd-footer-widget-links ul li a {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: rgba(255,255,255,0.7) !important;
    text-decoration: none;
    transition: color 0.15s !important;
    line-height: 1.8;
}

.bd-footer-widget-links ul li a:hover {
    color: var(--bd-primary) !important;
}

.bd-footer-widget-description {
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    color: rgba(255,255,255,0.55) !important;
    line-height: 1.7 !important;
}

.official p {
    font-family: 'Inter', sans-serif !important;
    font-size: 12px !important;
    color: rgba(255,255,255,0.35) !important;
    line-height: 1.6 !important;
    margin-bottom: 4px !important;
}

.official p a {
    color: rgba(255,255,255,0.5) !important;
    text-decoration: underline !important;
    text-underline-offset: 2px;
}

.official p a:hover {
    color: var(--bd-primary) !important;
}

.bd-footer-copyright-text p {
    font-family: 'Inter', sans-serif !important;
    font-size: 13px !important;
    color: #ffffff !important;
}

/* Social icons */
.social-icon-list li a {
    border-radius: 10px !important;
    transition: all 0.2s !important;
}

.social-icon-list li a:hover {
    transform: translateY(-2px) !important;
    box-shadow: 0 4px 12px rgba(10, 191, 117, 0.3) !important;
}

/* ============================================
   BACK TO TOP
   ============================================ */
.backtotop-wrap {
    border-radius: 12px !important;
}

/* ============================================
   COOKIE NOTICE
   ============================================ */
#cookie_note {
    border-radius: 14px !important;
    box-shadow: 0 8px 32px rgba(0,0,0,0.15) !important;
    border: 1px solid #E4E7EC !important;
    font-family: 'Inter', sans-serif !important;
    font-size: 14px !important;
    gap: 12px;
}

#cookie_note .rr-btn-white {
    border-radius: 8px !important;
    font-family: 'Inter', sans-serif !important;
    font-weight: 600 !important;
    font-size: 13px !important;
}

/* ============================================
   RESPONSIVE TWEAKS
   ============================================ */
@media (max-width: 768px) {
    .bd-banner-title {
        font-size: 24px !important;
    }
    .bd-course-content.index-item {
        padding: 16px !important;
    }
    h3.price {
        font-size: 18px !important;
    }
}
