/*!
Theme Name: Clearworld
Theme URI: http://underscores.me/
Author: Underscores.me
Author URI: http://underscores.me/
Description: Description
Version: 1.0.0
Tested up to: 5.4
Requires PHP: 5.6
License: GNU General Public License v2 or later
License URI: LICENSE
Text Domain: clearworld
Tags: custom-background, custom-logo, custom-menu, featured-images, threaded-comments, translation-ready

This theme, like WordPress, is licensed under the GPL.
Use it to make something cool, have fun, and share what you've learned.

Clearworld is based on Underscores https://underscores.me/, (C) 2012-2020 Automattic, Inc.
Underscores is distributed under the terms of the GNU GPL v2 or later.

Normalizing styles have been helped along thanks to the fine work of
Nicolas Gallagher and Jonathan Neal https://necolas.github.io/normalize.css/
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Generic
	- Normalize
	- Box sizing
# Base
	- Typography
	- Elements
	- Links
	- Forms
## Layouts
# Components
	- Navigation
	- Posts and pages
	- Comments
	- Widgets
	- Media
	- Captions
	- Galleries
# plugins
	- Jetpack infinite scroll
# Utilities
	- Accessibility
	- Alignments

--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Generic
--------------------------------------------------------------*/

/* Normalize
--------------------------------------------- */

/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */

/* Document
	 ========================================================================== */

/**
 * 1. Correct the line height in all browsers.
 * 2. Prevent adjustments of font size after orientation changes in iOS.
 */

 div#color-white-mobile-lightning p {
    color: white;
}
div#aboutbannercontent p {
    color: white;
}

.feature-color-1 .feature-icon {
    background-color: #4d923c;
}
.feature-color-2 .feature-icon {
    background-color: #07539a;
}
.feature-color-3 .feature-icon {
    background-color: #6942a3;
}
.feature-color-4 .feature-icon {
    background-color: #00677a;
}
/* .about-us-body-royal p {
    color: white;
} */

/* =========================================
   BLOG DETAIL
========================================= */

.blog-detail-image {
    overflow: hidden;
    border-radius: 12px;
}

.blog-detail-image img {
    width: 100%;
    height: auto;
    display: block;
}

.blog-detail-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: center;
    font-size: 14px;
}

.blog-category {
    font-weight: 600;
    text-transform: uppercase;
}

.blog-detail-title {
    font-size: 42px;
    line-height: 1.2;
    margin-bottom: 30px;
}

.blog-detail-content {
    font-size: 17px;
    line-height: 1.8;
}

.blog-detail-content img {
    max-width: 100%;
    height: auto;
}

.blog-detail-content h2,
.blog-detail-content h3,
.blog-detail-content h4 {
    margin-top: 30px;
    margin-bottom: 15px;
}

.blog-detail-content p {
    margin-bottom: 20px;
}

.blog-detail-content ul,
.blog-detail-content ol {
    margin-bottom: 20px;
    padding-left: 25px;
}


/* =========================================
   SIDEBAR
========================================= */

.blog-sidebar {
    position: sticky;
    top: 30px;
}

.sidebar-widget {
    padding: 25px;
    margin-bottom: 30px;
    border: 1px solid #e5e5e5;
    border-radius: 10px;
    background: #fff;
}

.sidebar-title {
    font-size: 22px;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 12px;
}

.sidebar-title:after {
    content: "";
    position: absolute;
    left: 0;
    bottom: 0;
    width: 45px;
    height: 3px;
}


/* =========================================
   SEARCH
========================================= */

.search-input-wrapper {
    display: flex;
    width: 100%;
}

.search-input-wrapper input {
    width: 100%;
    height: 50px;
    border: 1px solid #ddd;
    padding: 0 15px;
    outline: none;
}

.search-input-wrapper button {
    width: 55px;
    border: 0;
    color: #fff;
    cursor: pointer;
}


/* =========================================
   LATEST POSTS
========================================= */

.latest-post-item {
    display: flex;
    gap: 15px;
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #eee;
}

.latest-post-item:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: 0;
}

.latest-post-image {
    flex: 0 0 85px;
}

.latest-post-image img {
    width: 85px;
    height: 70px;
    object-fit: cover;
    border-radius: 6px;
}

.latest-post-content {
    flex: 1;
}

.latest-post-date {
    font-size: 12px;
    display: block;
    margin-bottom: 5px;
}

.latest-post-content h4 {
    font-size: 15px;
    line-height: 1.4;
    margin: 0;
}

.latest-post-content h4 a {
    text-decoration: none;
}


/* =========================================
   CATEGORIES
========================================= */

.sidebar-category-list {
    padding: 0;
    margin: 0;
    list-style: none;
}

.sidebar-category-list li {
    padding: 10px 0;
    border-bottom: 1px solid #eee;
}

.sidebar-category-list li:last-child {
    border-bottom: 0;
}

.sidebar-category-list a {
    text-decoration: none;
}


/* =========================================
   TAGS
========================================= */

.sidebar-tags {
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
}

.sidebar-tags a {
    display: inline-block;
    padding: 7px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    font-size: 13px;
    text-decoration: none;
    transition: all 0.3s ease;
}

.sidebar-tags a:hover {
    color: #fff;
}


/* =========================================
   POST TAGS
========================================= */

.blog-detail-tags {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-top: 35px;
    padding-top: 25px;
    border-top: 1px solid #eee;
}

.blog-detail-tags strong {
    margin-right: 5px;
}

.blog-detail-tags a {
    padding: 6px 12px;
    border: 1px solid #ddd;
    border-radius: 4px;
    text-decoration: none;
    font-size: 13px;
}


/* =========================================
   PREVIOUS / NEXT
========================================= */

.blog-post-navigation {
    margin-top: 40px;
    padding-top: 30px;
    border-top: 1px solid #eee;
}

.post-nav-box {
    display: block;
    padding: 20px;
    border: 1px solid #eee;
    text-decoration: none;
    height: 100%;
}

.post-nav-box span {
    display: block;
    font-size: 13px;
    margin-bottom: 8px;
}

.post-nav-box strong {
    display: block;
    font-size: 16px;
    line-height: 1.4;
}


/* =========================================
   MOBILE
========================================= */

@media (max-width: 991px) {

    .blog-sidebar {
        position: static;
        margin-top: 30px;
    }

    .blog-detail-title {
        font-size: 32px;
    }

}

@media (max-width: 575px) {

    .blog-detail-title {
        font-size: 28px;
    }

    .blog-detail-content {
        font-size: 16px;
    }

}


/* ==========================================
   BLOG LISTING PAGE
========================================== */

.blog-section {
    padding-top: 80px;
    padding-bottom: 80px;
}


/* ==========================================
   BLOG CARD
========================================== */

.blog-item {
    height: 100%;
    background: #fff;
    border: 1px solid #e8e8e8;
    border-radius: 12px;
    overflow: hidden;
    transition: all 0.3s ease;
    display: flex;
    flex-direction: column;
}

.blog-item:hover {
    transform: translateY(-6px);
    box-shadow: 0 15px 40px rgba(0, 0, 0, 0.10);
}


/* ==========================================
   BLOG IMAGE
========================================== */

.blog-image {
    position: relative;
    width: 100%;
    height: 260px;
    overflow: hidden;
    background: #f5f5f5;
}

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

.blog-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform 0.5s ease;
}

.blog-item:hover .blog-image img {
    transform: scale(1.06);
}


/* ==========================================
   BLOG CONTENT
========================================== */

.blog-content {
    padding: 25px;
    display: flex;
    flex-direction: column;
    flex: 1;
}


/* ==========================================
   CATEGORY
========================================== */

.blog-category {
    display: inline-block;
    font-size: 12px;
    font-weight: 600;
    line-height: 1;
    text-transform: uppercase;
    letter-spacing: 0.8px;
    margin-bottom: 10px;
}


/* ==========================================
   DATE
========================================== */

.blog-date {
    font-size: 13px;
    color: #777;
    margin-bottom: 12px;
}


/* ==========================================
   TITLE
========================================== */

.blog-title {
    font-size: 22px;
    line-height: 1.35;
    font-weight: 600;
    margin: 0 0 15px;
}

.blog-title a {
    color: #222;
    text-decoration: none;
    transition: color 0.3s ease;
}

.blog-title a:hover {
    color: #666;
}


/* ==========================================
   EXCERPT
========================================== */

.blog-excerpt {
    font-size: 15px;
    line-height: 1.7;
    color: #666;
    margin-bottom: 22px;
}


/* ==========================================
   READ MORE BUTTON
========================================== */

.blog-btn {
    margin-top: auto;
}

.blog-btn .btn-default {
    display: inline-flex;
    align-items: center;
    text-decoration: none;
    transition: all 0.3s ease;
}

.blog-btn .btn-default i {
    transition: transform 0.3s ease;
}

.blog-btn .btn-default:hover i {
    transform: translateX(5px);
}


/* ==========================================
   PAGINATION
========================================== */

.blog-pagination {
    margin-top: 45px;
    display: flex;
    justify-content: center;
}

.blog-pagination ul {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-wrap: wrap;
    gap: 8px;
    padding: 0;
    margin: 0;
    list-style: none;
}

.blog-pagination li {
    list-style: none;
    margin: 0;
    padding: 0;
}

.blog-pagination a,
.blog-pagination span {
    width: 42px;
    height: 42px;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border: 1px solid #ddd;
    border-radius: 6px;
    text-decoration: none;
    font-size: 14px;
    font-weight: 500;
    color: #333;
    background: #fff;
    transition: all 0.3s ease;
}

.blog-pagination a:hover {
    color: #fff;
    background: #222;
    border-color: #222;
}

.blog-pagination .current {
    color: #fff;
    background: #222;
    border-color: #222;
}

.blog-pagination .prev,
.blog-pagination .next {
    width: auto;
    min-width: 42px;
    padding: 0 15px;
}


/* ==========================================
   NO BLOG
========================================== */

.no-blog {
    padding: 80px 20px;
}

.no-blog h3 {
    font-size: 26px;
    margin: 0;
}


/* ==========================================
   RESPONSIVE - TABLET
========================================== */

@media (max-width: 991px) {

    .blog-section {
        padding-top: 60px;
        padding-bottom: 60px;
    }

    .blog-image {
        height: 230px;
    }

    .blog-title {
        font-size: 20px;
    }

    .blog-content {
        padding: 22px;
    }

}


/* ==========================================
   RESPONSIVE - MOBILE
========================================== */

@media (max-width: 767px) {

    .blog-section {
        padding-top: 50px;
        padding-bottom: 50px;
    }

    .blog-image {
        height: 250px;
    }

    .blog-title {
        font-size: 21px;
    }

    .blog-excerpt {
        font-size: 14px;
    }

}


/* ==========================================
   SMALL MOBILE
========================================== */

@media (max-width: 575px) {

    .blog-image {
        height: 220px;
    }

    .blog-content {
        padding: 20px;
    }

    .blog-title {
        font-size: 19px;
    }

    .blog-pagination {
        margin-top: 30px;
    }

    .blog-pagination a,
    .blog-pagination span {
        width: 38px;
        height: 38px;
    }

}