.page-articles,
.page-article-detail {
    background:
        radial-gradient(circle at 12% 10%, rgba(255, 106, 52, 0.14), transparent 24%),
        radial-gradient(circle at 88% 14%, rgba(77, 116, 255, 0.14), transparent 22%),
        linear-gradient(180deg, #06070a 0%, #0a111b 52%, #091019 100%);
}

.page-articles .page-header,
.page-article-detail .article-detail-page {
    position: relative;
    overflow: clip;
}

.page-articles .page-header {
    padding: 74px 0 34px;
    background:
        linear-gradient(145deg, rgba(10, 15, 25, 0.95), rgba(13, 21, 35, 0.86));
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
}

.page-articles .page-title {
    margin: 0 0 12px;
    font-size: clamp(2.2rem, 4vw, 3.7rem);
    line-height: 1.08;
}

.page-articles .page-subtitle {
    max-width: 42rem;
    margin: 0;
    color: rgba(225, 232, 244, 0.72);
    font-size: 1.02rem;
    line-height: 1.9;
}

.page-articles .articles-page,
.page-article-detail .article-detail-page {
    padding: 36px 0 86px;
}

.page-articles .articles-filters {
    margin-bottom: 28px;
}

.page-articles .filter-form-inline {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    align-items: end;
    padding: 24px;
    border-radius: 26px;
    background:
        linear-gradient(145deg, rgba(11, 18, 30, 0.94), rgba(14, 22, 36, 0.9));
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.16);
}

.page-articles .filter-form-inline .form-group {
    min-width: 200px;
    flex: 1 1 220px;
}

.page-articles .filter-form-inline label {
    display: block;
    margin-bottom: 8px;
    color: rgba(224, 230, 242, 0.78);
    font-size: 0.86rem;
    font-weight: 700;
}

.page-articles .form-control {
    width: 100%;
    min-height: 50px;
    padding: 12px 14px;
    border-radius: 16px;
    border: 1px solid rgba(255, 255, 255, 0.12);
    background: rgba(255, 255, 255, 0.05);
    color: #fff;
    font: inherit;
}

.page-articles .form-control option {
    background: #111826;
    color: #fff;
}

.page-articles .articles-grid,
.page-article-detail .articles-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 22px;
}

.page-articles .article-card,
.page-article-detail .article-card {
    overflow: hidden;
    border-radius: 28px;
    background:
        linear-gradient(145deg, rgba(11, 18, 30, 0.95), rgba(14, 22, 36, 0.9));
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 20px 44px rgba(0, 0, 0, 0.16);
}

.page-articles .article-card:first-child {
    grid-column: span 2;
}

.page-articles .article-card:first-child .article-link {
    display: grid;
    grid-template-columns: minmax(0, 1.15fr) minmax(300px, 0.85fr);
    min-height: 100%;
}

.page-articles .article-link,
.page-article-detail .article-link {
    display: block;
    height: 100%;
    color: inherit;
    text-decoration: none;
}

.page-articles .article-image,
.page-article-detail .article-image {
    min-height: 240px;
    background: rgba(255, 255, 255, 0.04);
}

.page-articles .article-image img,
.page-article-detail .article-image img,
.page-article-detail .article-featured-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.page-articles .article-content,
.page-article-detail .article-card .article-content {
    padding: 22px 24px 24px;
}

.page-articles .article-type,
.page-article-detail .article-type,
.page-article-detail .article-type-badge {
    display: inline-flex;
    align-items: center;
    min-height: 34px;
    padding: 0 12px;
    border-radius: 999px;
    background: rgba(255, 255, 255, 0.05);
    color: #ffd89d;
    font-size: 0.8rem;
    font-weight: 700;
}

.page-articles .article-title,
.page-article-detail .article-card .article-title {
    margin: 14px 0 12px;
    font-size: 1.18rem;
    line-height: 1.58;
}

.page-articles .article-summary,
.page-article-detail .article-card .article-summary {
    color: rgba(221, 228, 240, 0.74);
    line-height: 1.88;
}

.page-articles .article-meta,
.page-article-detail .article-card .article-meta {
    display: flex;
    justify-content: space-between;
    gap: 12px;
    margin-top: 16px;
    color: rgba(203, 210, 225, 0.64);
    font-size: 0.92rem;
}

.page-articles .empty-state {
    grid-column: 1 / -1;
    padding: 60px 24px;
    text-align: center;
    border-radius: 28px;
    background:
        linear-gradient(145deg, rgba(11, 18, 30, 0.94), rgba(14, 22, 36, 0.9));
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.page-articles .pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 34px;
}

.page-articles .pagination-link {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 44px;
    min-height: 44px;
    padding: 0 14px;
    border-radius: 999px;
    border: 1px solid rgba(255, 255, 255, 0.1);
    background: rgba(255, 255, 255, 0.04);
    color: #eef2fb;
    text-decoration: none;
}

.page-articles .pagination-link.active {
    background: linear-gradient(135deg, #ff6a34, #ff8b45);
    border-color: transparent;
    color: #fff;
}

.page-article-detail .article-detail {
    overflow: hidden;
    border-radius: 34px;
    background:
        linear-gradient(145deg, rgba(11, 18, 30, 0.96), rgba(14, 22, 36, 0.92));
    border: 1px solid rgba(255, 255, 255, 0.08);
    box-shadow: 0 26px 56px rgba(0, 0, 0, 0.18);
}

.page-article-detail .article-header {
    padding: 34px 36px 22px;
}

.page-article-detail .article-header .article-title {
    margin: 16px 0 14px;
    font-size: clamp(2rem, 3.6vw, 3.3rem);
    line-height: 1.15;
}

.page-article-detail .article-header .article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    color: rgba(206, 213, 227, 0.66);
}

.page-article-detail .article-featured-image {
    min-height: 360px;
    background: rgba(255, 255, 255, 0.04);
}

.page-article-detail .article-content {
    padding: 34px 36px 40px;
}

.page-article-detail .article-summary {
    padding: 18px 20px;
    margin-bottom: 24px;
    border-radius: 22px;
    background: rgba(255, 255, 255, 0.05);
    border: 1px solid rgba(255, 255, 255, 0.08);
}

.page-article-detail .article-summary p {
    margin: 0;
    color: #f0f4fd;
    line-height: 1.95;
}

.page-article-detail .article-body {
    color: rgba(225, 231, 243, 0.82);
    font-size: 1rem;
    line-height: 2.08;
}

.page-article-detail .article-body p {
    margin: 0 0 1.15rem;
}

.page-article-detail .related-articles {
    margin-top: 32px;
}

.page-article-detail .related-articles .section-title {
    margin-bottom: 22px;
    font-size: clamp(1.55rem, 2.5vw, 2.2rem);
}

@media (max-width: 1024px) {
    .page-articles .articles-grid,
    .page-article-detail .articles-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .page-articles .article-card:first-child {
        grid-column: span 2;
    }
}

@media (max-width: 768px) {
    .page-articles .page-header {
        padding-top: 54px;
    }

    .page-articles .filter-form-inline {
        padding: 20px;
    }

    .page-articles .article-card:first-child,
    .page-articles .article-card:first-child .article-link {
        grid-column: auto;
        display: block;
    }

    .page-article-detail .article-header,
    .page-article-detail .article-content {
        padding: 24px 20px 26px;
    }

    .page-article-detail .article-featured-image {
        min-height: 260px;
    }
}

@media (max-width: 640px) {
    .page-articles .articles-grid,
    .page-article-detail .articles-grid {
        grid-template-columns: 1fr;
    }

    .page-articles .page-title {
        font-size: 2rem;
    }

    .page-articles .filter-form-inline {
        gap: 12px;
    }
}

/* Codex 2026-07-03: global semantic Shahin icon placement. */
.product-highlight-card,
.product-price-panel,
.product-price-alt,
.installment-card,
.service-card,
.faq-item,
.page-articles .article-card,
.page-article-detail .article-card {
    position: relative;
}

.product-highlight-card::before,
.product-price-panel::before,
.product-price-alt::before,
.installment-card::before,
.service-card::before,
.faq-item::before,
.page-articles .article-card::before,
.page-article-detail .article-card::before {
    content: "";
    position: absolute;
    top: 16px;
    inset-inline-start: 16px;
    width: 30px;
    height: 30px;
    border-radius: 11px;
    background: rgba(255, 255, 255, 0.08) var(--shahin-semantic-icon, url('/static/icons/shahin/shahin-motorcycle.svg')) center / 19px 19px no-repeat;
    box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.10), 0 10px 22px rgba(0, 0, 0, 0.10);
    pointer-events: none;
    z-index: 2;
}

.product-highlight-card:nth-child(1) { --shahin-semantic-icon: url('/static/icons/shahin/shahin-engine.svg'); }
.product-highlight-card:nth-child(2) { --shahin-semantic-icon: url('/static/icons/shahin/shahin-power.svg'); }
.product-highlight-card:nth-child(3) { --shahin-semantic-icon: url('/static/icons/shahin/shahin-brake.svg'); }
.product-highlight-card:nth-child(4) { --shahin-semantic-icon: url('/static/icons/shahin/shahin-speed.svg'); }
.product-price-panel { --shahin-semantic-icon: url('/static/icons/shahin/shahin-price.svg'); }
.product-price-alt,
.installment-card { --shahin-semantic-icon: url('/static/icons/shahin/shahin-installments.svg'); }
.service-card { --shahin-semantic-icon: url('/static/icons/shahin/shahin-services.svg'); }
.faq-item { --shahin-semantic-icon: url('/static/icons/shahin/shahin-faq.svg'); }
.page-articles .article-card,
.page-article-detail .article-card { --shahin-semantic-icon: url('/static/icons/shahin/shahin-news.svg'); }

.product-highlight-card > span:first-child,
.product-price-panel > span:first-child,
.product-price-alt > span:first-child {
    padding-inline-start: 42px;
}

.site-header a[href="/"],
.site-header a[href*="/products"],
.site-header a[href*="/motorcycles"],
.site-header a[href*="/services"],
.site-header a[href*="/articles"],
.site-header a[href*="/faq"],
.site-header a[href*="/auth"],
.site-header a[href*="/contact"],
.site-footer a[href="/"],
.site-footer a[href*="/products"],
.site-footer a[href*="/motorcycles"],
.site-footer a[href*="/services"],
.site-footer a[href*="/articles"],
.site-footer a[href*="/faq"],
.site-footer a[href*="/auth"],
.site-footer a[href*="/contact"] {
    display: inline-flex;
    align-items: center;
    gap: 7px;
}

.site-header a[href="/"]::before,
.site-footer a[href="/"]::before,
.site-header a[href*="/products"]::before,
.site-header a[href*="/motorcycles"]::before,
.site-footer a[href*="/products"]::before,
.site-footer a[href*="/motorcycles"]::before,
.site-header a[href*="/services"]::before,
.site-footer a[href*="/services"]::before,
.site-header a[href*="/articles"]::before,
.site-footer a[href*="/articles"]::before,
.site-header a[href*="/faq"]::before,
.site-footer a[href*="/faq"]::before,
.site-header a[href*="/auth"]::before,
.site-footer a[href*="/auth"]::before,
.site-header a[href*="/contact"]::before,
.site-footer a[href*="/contact"]::before {
    content: "";
    width: 17px;
    height: 17px;
    flex: 0 0 auto;
    background: var(--shahin-nav-icon, url('/static/icons/shahin/shahin-motorcycle.svg')) center / contain no-repeat;
}

.site-header a[href="/"]::before,
.site-footer a[href="/"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-home.svg'); }
.site-header a[href*="/products"]::before,
.site-header a[href*="/motorcycles"]::before,
.site-footer a[href*="/products"]::before,
.site-footer a[href*="/motorcycles"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-products.svg'); }
.site-header a[href*="/services"]::before,
.site-footer a[href*="/services"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-services.svg'); }
.site-header a[href*="/articles"]::before,
.site-footer a[href*="/articles"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-news.svg'); }
.site-header a[href*="/faq"]::before,
.site-footer a[href*="/faq"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-faq.svg'); }
.site-header a[href*="/auth"]::before,
.site-footer a[href*="/auth"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-login.svg'); }
.site-header a[href*="/contact"]::before,
.site-footer a[href*="/contact"]::before { --shahin-nav-icon: url('/static/icons/shahin/shahin-contact.svg'); }

@media (max-width: 640px) {
    .product-highlight-card::before,
    .product-price-panel::before,
    .product-price-alt::before,
    .installment-card::before,
    .service-card::before,
    .faq-item::before,
    .page-articles .article-card::before,
    .page-article-detail .article-card::before {
        width: 26px;
        height: 26px;
        background-size: 17px 17px;
    }
}

