/*
|--------------------------------------------------------------------------
| Bali Indo Tour
| Blog - Global Layout
|--------------------------------------------------------------------------
*/

/*
|--------------------------------------------------------------------------
| Blog Page
|--------------------------------------------------------------------------
*/

.blog-page {

    width: 100%;

    padding:
        var(--space-xl) 0 var(--space-5xl);

}


/*
|--------------------------------------------------------------------------
| Blog Container
|--------------------------------------------------------------------------
*/

.blog-container {

    width: 100%;

    max-width: var(--container);

    margin: 0 auto;

    padding-left: var(--space-md);

    padding-right: var(--space-md);

}


/*
|--------------------------------------------------------------------------
| Blog Breadcrumb
|--------------------------------------------------------------------------
*/

.blog-breadcrumb {

    display: flex;

    align-items: center;

    flex-wrap: wrap;

    gap: .4rem;

    margin-bottom: var(--space-xl);

    font-size: var(--font-xs);

    line-height: var(--lh-md);

    color: var(--text-muted);

}

.blog-breadcrumb a {

    color: var(--text-light);

    font-weight: var(--fw-medium);

}

.blog-breadcrumb a:hover {

    color: var(--primary);

}

.blog-breadcrumb span:last-child {

    max-width: 100%;

    color: var(--text-muted);

    overflow: hidden;

    text-overflow: ellipsis;

}


/*
|--------------------------------------------------------------------------
| Blog Layout
|--------------------------------------------------------------------------
|
| Mobile:
| 1 column
|
| Desktop:
| Content + Sidebar
|
|--------------------------------------------------------------------------
*/

.blog-layout {

    display: grid;

    grid-template-columns: 1fr;

    gap: var(--space-3xl);

    align-items: start;

}


/*
|--------------------------------------------------------------------------
| Blog Article
|--------------------------------------------------------------------------
*/

.blog-article {

    width: 100%;

    min-width: 0;

}


/*
|--------------------------------------------------------------------------
| Blog Sidebar
|--------------------------------------------------------------------------
*/

.blog-sidebar {

    width: 100%;

    display: flex;

    flex-direction: column;

    gap: var(--space-lg);

}


/*
|--------------------------------------------------------------------------
| Sidebar Card
|--------------------------------------------------------------------------
*/

.blog-sidebar-card {

    width: 100%;

    padding: var(--space-xl);

    background: var(--surface);

    border: var(--border-thin) solid var(--border);

    border-radius: var(--radius-lg);

}


/*
|--------------------------------------------------------------------------
| Sidebar CTA
|--------------------------------------------------------------------------
*/

.blog-sidebar-cta {

    background: var(--primary);

    border-color: var(--primary);

    color: var(--white);

}

.blog-sidebar-cta .blog-sidebar-label {

    color: rgba(255, 255, 255, .72);

}

.blog-sidebar-cta h2 {

    color: var(--white);

}

.blog-sidebar-cta p {

    color: rgba(255, 255, 255, .82);

}


/*
|--------------------------------------------------------------------------
| Sidebar Label
|--------------------------------------------------------------------------
*/

.blog-sidebar-label {

    display: block;

    margin-bottom: var(--space-md);

    font-size: var(--font-xs);

    font-weight: var(--fw-bold);

    line-height: var(--lh-sm);

    letter-spacing: var(--ls-wide);

    text-transform: uppercase;

    color: var(--primary);

}


/*
|--------------------------------------------------------------------------
| Sidebar Title
|--------------------------------------------------------------------------
*/

.blog-sidebar-title {

    margin-bottom: var(--space-lg);

    font-size: var(--font-lg);

    font-weight: var(--fw-bold);

    line-height: var(--lh-sm);

    letter-spacing: var(--ls-tight);

    color: var(--text);

}


/*
|--------------------------------------------------------------------------
| Sidebar CTA Button
|--------------------------------------------------------------------------
*/

.blog-sidebar-button {

    display: flex;

    align-items: center;

    justify-content: center;

    width: 100%;

    min-height: 46px;

    padding:
        .7rem var(--space-lg);

    border-radius: var(--radius);

    background: var(--secondary);

    color: var(--white);

    font-size: var(--font-sm);

    font-weight: var(--fw-semibold);

    text-align: center;

}

.blog-sidebar-button:hover {

    background: var(--secondary-dark);

    color: var(--white);

}


/*
|--------------------------------------------------------------------------
| Search Form
|--------------------------------------------------------------------------
*/

.blog-search-form {

    display: flex;

    align-items: stretch;

    width: 100%;

    min-width: 0;

    border:
        var(--border-thin) solid var(--border);

    border-radius: var(--radius);

    background: var(--surface);

    overflow: hidden;

}

.blog-search-form input {

    flex: 1 1 auto;

    width: 100%;

    min-width: 0;

    height: 46px;

    padding:
        0 var(--space-md);

    border: 0;

    outline: 0;

    background: transparent;

    color: var(--text);

    font-size: var(--font-sm);

}

.blog-search-form input::placeholder {

    color: var(--text-muted);

}

.blog-search-form button {

    flex: 0 0 46px;

    width: 46px;

    height: 46px;

    display: inline-flex;

    align-items: center;

    justify-content: center;

    background: var(--primary);

    color: var(--white);

}

.blog-search-form button:hover {

    background: var(--primary-dark);

}


/*
|--------------------------------------------------------------------------
| Popular Articles
|--------------------------------------------------------------------------
*/

.blog-popular-list {

    display: flex;

    flex-direction: column;

}

.blog-popular-item {

    display: grid;

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

    gap: var(--space-sm);

    align-items: start;

    padding:
        var(--space-md) 0;

    border-bottom:
        var(--border-thin) solid var(--border);

}

.blog-popular-item:first-child {

    padding-top: 0;

}

.blog-popular-item:last-child {

    padding-bottom: 0;

    border-bottom: 0;

}

.blog-popular-number {

    font-size: var(--font-xs);

    font-weight: var(--fw-bold);

    line-height: var(--lh-md);

    color: var(--primary);

}

.blog-popular-title {

    min-width: 0;

    font-size: var(--font-sm);

    font-weight: var(--fw-semibold);

    line-height: var(--lh-md);

    color: var(--text);

}

.blog-popular-item:hover .blog-popular-title {

    color: var(--primary);

}


/*
|--------------------------------------------------------------------------
| Topics
|--------------------------------------------------------------------------
*/

.blog-topic-list {

    display: flex;

    flex-wrap: wrap;

    gap: .5rem;

}

.blog-topic-list a {

    display: inline-flex;

    align-items: center;

    justify-content: center;

    min-height: 34px;

    padding:
        .35rem .7rem;

    border:
        var(--border-thin) solid var(--border);

    border-radius: var(--radius-pill);

    background: var(--surface-secondary);

    color: var(--text-light);

    font-size: var(--font-xs);

    font-weight: var(--fw-medium);

    white-space: nowrap;

}

.blog-topic-list a:hover {

    border-color: var(--primary);

    background: var(--primary-light);

    color: var(--primary);

}


/*
|--------------------------------------------------------------------------
| Visually Hidden
|--------------------------------------------------------------------------
*/

.visually-hidden {

    position: absolute !important;

    width: 1px !important;

    height: 1px !important;

    padding: 0 !important;

    margin: -1px !important;

    overflow: hidden !important;

    clip: rect(0, 0, 0, 0) !important;

    white-space: nowrap !important;

    border: 0 !important;

}


/*
|--------------------------------------------------------------------------
| Blog Links
|--------------------------------------------------------------------------
*/

.blog-page a {

    transition:
        color var(--transition),
        background-color var(--transition),
        border-color var(--transition),
        transform var(--transition),
        box-shadow var(--transition);

}


/*
|--------------------------------------------------------------------------
| Blog Images
|--------------------------------------------------------------------------
*/

.blog-page img {

    display: block;

    width: 100%;

    max-width: 100%;

    height: auto;

}


/*
|--------------------------------------------------------------------------
| Small Mobile
|--------------------------------------------------------------------------
*/

@media (width >=480px) {

    .blog-container {

        padding-left: var(--space-lg);

        padding-right: var(--space-lg);

    }

    .blog-sidebar-card {

        padding: var(--space-2xl);

    }

}


/*
|--------------------------------------------------------------------------
| Tablet
|--------------------------------------------------------------------------
*/

@media (min-width: 768px) {

    .blog-page {

        padding-top: var(--space-2xl);

        padding-bottom: var(--space-6xl);

    }

    .blog-container {

        padding-left: var(--space-xl);

        padding-right: var(--space-xl);

    }

    .blog-breadcrumb {

        margin-bottom: var(--space-2xl);

        font-size: var(--font-sm);

    }

    .blog-layout {

        gap: var(--space-4xl);

    }

    .blog-sidebar {

        display: grid;

        grid-template-columns:
            repeat(2, minmax(0, 1fr));

        gap: var(--space-xl);

    }

}


/*
|--------------------------------------------------------------------------
| Desktop
|--------------------------------------------------------------------------
*/

@media (min-width: 992px) {

    .blog-page {

        padding-top: var(--space-2xl);

    }

    .blog-layout {

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

        gap: var(--space-5xl);

    }

    .blog-sidebar {

        display: flex;

        flex-direction: column;

        gap: var(--space-xl);

        position: sticky;

        top:
            calc(var(--header-height) + var(--space-xl));

    }

}


/*
|--------------------------------------------------------------------------
| Large Desktop
|--------------------------------------------------------------------------
*/

@media (width >=1200px) {

    .blog-layout {

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

    }

}


/*
|--------------------------------------------------------------------------
| Very Large Desktop
|--------------------------------------------------------------------------
*/

@media (width >=1400px) {

    .blog-layout {

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

        gap: var(--space-6xl);

    }

}