:root {
    --primary: #F16741;
    --secondary: #ef5025;
}

.bg-gray{
    background: #ebebeb;
}

.btn:not(.btn-search){
    padding: 11px 25px;
}
.rounded-4{
    border-radius: 20px;
}
.btn-primary {
    background-color: var(--primary) !important;
    border-color: var(--primary) !important;
}

.btn-rounded{
    border-radius: 30px;
}

.categories-blocks .featured{
    padding: 35% 0;
    position: relative;
}

.categories-blocks{
    font-size: 18px;
    font-weight: 500;
    color: var(--secondary)
}

.bg-primary {
    background-color: var(--primary) !important;
}

.btn-secondary {
    background-color: var(--secondary) !important;
    border-color: var(--secondary) !important;
}

.bg-secondary {
    background-color: var(--secondary) !important;
}

/* Site header (Bootstrap 5 adaptation of #main_header) */
.site-header{
    position: sticky;
    top: 0;
    z-index: 999;
    border-bottom: solid 1px #ebebeb;
}
.site-header .my-account{
    text-decoration: none;
    color: #000;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
}
.site-header .my-account i{
    font-size: 24px;
}
.site-header .top-links a {
    color: #111111;
    font-size: 12px;
    line-height: 14px;
}

.site-header .top-links a:hover {
    text-decoration: underline;
}

.site-header .navbar {
    border-bottom: 1px solid #eee;
}

.site-header .navbar-brand img {
    max-height: 50px;
    height: auto;
}

.site-header .bg-light {
    background-color: #f8f9fa !important;
}

.site-header .border-bottom {
    border-bottom: 1px solid #eee !important;
}

.site-header .search-form{
    width: 400px;
    max-width: 100%;
}

/* Site footer (Bootstrap 5 adaptation of .footer-bottom and #theme_footer) */
.site-footer .footer-title {
    font-weight: 600;
}

.site-footer .footer-bottom .link-dark {
    color: #000;
}

.site-footer .footer-bottom .link-dark:hover {
    text-decoration: underline;
}

.footer-dark {
    background-color: #222;
    color: #FFF
}
.footer-dark ul a{
    color: #FFF;
    text-decoration: none;
}
.footer-copy{
    border-top: solid 1px rgba(255,255,255,.3);
}
.site-footer .footer-dark .link-light {
    color: #f1f1f1;
}

.site-footer .footer-dark .link-light:hover {
    text-decoration: underline;
}

/* Hero section (Bootstrap 5 adaptation of .elementor-element-578f475f) */
.hero-section {
    background-color: rgba(237, 205, 0, 0.21);
    padding: 150px 0;
}
.header-links a{
    text-decoration: none;
}
.hero-section .btn {
    border-radius: 10px;
}

.section{
    padding: 80px 0;
}
.section--white+.section--white{
    padding-top: 0;
}
.section--gray{
    background: #f8f8f8;
}
/* Features section (Bootstrap 5 adaptation of .elementor-element-0692907) */
.features-section {
    background-color: #EFEFEF;
}

.features-section i {
    color: #18BD31;
}

.features-section .feature-text {
    color: #111;
}

/* Mobile-only slider behavior for features */
@media (max-width: 767.98px) {
    .features-section .features-slider {
        overflow-x: auto;
        scroll-snap-type: x mandatory;
        -webkit-overflow-scrolling: touch;
        position: relative; /* ensure child .position().left is relative */
        gap: 12px; /* compact spacing between slides */
    }

    .features-section .features-slider::-webkit-scrollbar {
        display: none; /* hide scrollbar on mobile */
    }

    .features-section .features-slider .feature {
        flex: 0 0 100%; /* one feature per viewport */
        scroll-snap-align: start;
    }

    /* Disable snap while animating to avoid jitter */
    .features-section .features-slider.fs-animating {
        scroll-snap-type: none;
    }
}

/* Popular section (Bootstrap 5 adaptation of .elementor-element-2a226c7c) */
.popular-section .h3 {
    font-weight: 700;
    color: #111;
}

.popular-section .text-muted {
    color: #6c757d !important;
}

.popular-section .border {
    border-color: #e5e5e5 !important;
}

/* Popular A section (Bootstrap 5 adaptation of .elementor-element-22f4bd78) */
.popular-a-section .popular-a-link {
    color: #111;
    text-decoration: none;
}

.popular-a-section .popular-a-link:hover {
    text-decoration: underline;
}

/* Popular B section (Bootstrap 5 adaptation of .elementor-element-bb275f9) */
.popular-section .popular-b-link {
    color: var(--primary);
    text-decoration: none;
    font-size: 18px;
    font-weight: 600;
}

.popular-section .popular-b-link:hover {
    text-decoration: underline;
}

/* CTA section (Bootstrap 5 adaptation of .elementor-element-cfc1169) */
.cta-section .btn {
    border-radius: 10px;
}

/* Products section (Bootstrap 5 adaptation of .elementor-element-79ab4565) */
.products-section .h3 {
    font-weight: 700;
    color: #111;
}

.products-section .text-muted {
    color: #6c757d !important;
}

.products-section .product-link {
    color: #111;
    text-decoration: none;
}

.products-section .product-link:hover {
    text-decoration: underline;
}

.products-section .price {
    background: #f5f5f5;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 0.9rem;
}

.products-section .btn {
    text-transform: uppercase;
    font-weight: 600;
}

/* Archive clean (Bootstrap adaptation of .main-side.woocommerce) */
.woobc .breadcrumb-item+.breadcrumb-item::before {
    content: ">";
}

/* Blog cards: image aspect ratio cover */
.blog-section .card .card-img-wrap,
.card .card-img-wrap {
    position: relative;
    padding-bottom: 65%;
    overflow: hidden;
}

.blog-section .card .card-img-wrap img,
.card .card-img-wrap img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

/* Sidebar widgets (index/single) */
.sidebar .widget {
    background: #fff;
    border: 1px solid #eee;
    border-radius: 10px;
    padding: 16px;
    margin-bottom: 16px;
}

.sidebar .widget .title,
.sidebar .widget .widget-title,
.sidebar .widgettitle {
    font-weight: 600;
    font-size: 1rem;
    margin: 0 0 12px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f0f0f0;
}

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

.sidebar .widget ul li {
    padding: 6px 0;
    border-bottom: 1px dashed #eee;
}

.sidebar .widget ul li:last-child { border-bottom: 0; }

.sidebar .widget a { text-decoration: none; color: #111; }
.sidebar .widget a:hover { text-decoration: underline; }

/* Categories dropdown */
.sidebar .widget select,
.sidebar .widget .postform {
    width: 100%;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 8px 10px;
    background: #fff;
}

/* Search widget */
.sidebar .widget_search .search-form,
.sidebar .search-form {
    display: flex;
    gap: 8px;
}

.sidebar .search-form input[type="search"],
.sidebar .search-form input[type="text"] {
    flex: 1;
    border: 1px solid #ddd;
    border-radius: 6px;
    padding: 8px 10px;
}

.sidebar .search-form button,
.sidebar .widget_search .btnsearch {
    border-radius: 6px;
    border: 1px solid var(--secondary);
    color: var(--secondary);
    background: transparent;
    padding: 8px 12px;
}

.sidebar .search-form button:hover,
.sidebar .widget_search .btnsearch:hover {
    background: var(--secondary);
    color: #fff;
}

/* Compact latest posts list (generic) */
.sidebar .widget .media-list .media-item,
.sidebar .widget .latest-item {
    display: flex;
    gap: 10px;
    align-items: flex-start;
    padding: 8px 0;
    border-bottom: 1px dashed #eee;
}

.sidebar .widget .media-list .media-item:last-child,
.sidebar .widget .latest-item:last-child { border-bottom: 0; }

.sidebar .widget .media-thumb {
    width: 64px;
    height: 64px;
    border-radius: 6px;
    overflow: hidden;
    flex-shrink: 0;
}

.sidebar .widget .media-thumb img { width: 100%; height: 100%; object-fit: cover; }


.price-pill {
    background: #f5f5f5;
    padding: 2px 8px;
    border-radius: 6px;
    font-size: 0.9rem;
    display: inline-block;
}

.product-link {
    color: #111;
    text-decoration: none;
}

.product-link:hover {
    text-decoration: underline;
}

.list-group-item-action {
    border-radius: 6px;
    margin-bottom: 6px;
}

/* Banner section (Bootstrap 5 adaptation of .elementor-element-c85c1e1) */
.banner-section{
    padding: 150px 0;
    color: #FFF;
    font-size: 20px;
    text-shadow: 0 0 6px rgba(0,0,0,.8);
}
.banner-section .banner-eyebrow {
    font-weight: 600;
    color: #FFF;
    font-size: 35px;
}

.banner-section .banner-subtitle {
    font-size: 1rem;
}

.banner-section .btn {
    border-radius: 10px;
}

/* Categories section (Bootstrap 5 adaptation of #sect-categories) */
.categories-section .h3 {
    font-weight: 700;
    color: #111;
}

.categories-section .text-muted {
    color: #6c757d !important;
}

.categories-section .border {
    border-color: #e5e5e5 !important;
}

.categories-section .category-tile {
    color: #111;
}

.categories-section .category-tile:hover {
    text-decoration: underline;
}

/* Brand tiles for categories section */
.categories-section .brand-logo {
    width: 28px;
    height: 28px;
    object-fit: contain;
}

.categories-section .brand-link {
    color: #111;
    text-decoration: none;
}

.categories-section .brand-link:hover {
    text-decoration: underline;
}

.categories-section .btn {
    border-radius: 10px;
}

.products-section .card img{
    width: 180px;
    max-width: 100%;
}

/* Blog section (Bootstrap 5 adaptation of .elementor-element-6d9d76df) */
.blog-section .blog-link {
    color: #111;
    text-decoration: none;
}

.blog-section .blog-link:hover {
    text-decoration: underline;
}

.blog-section .card img {
    object-fit: cover;
}

.no-wrap {
    white-space: nowrap;
}

.footer-widgets ul {
    list-style: none;
    padding-left: 0;
}

.search-form .btn{
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
}
.search-form .form-control{
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
}
.header__bottom{
    background: #FFF;
}
.header__bottom .navbar-nav li a{
    padding: 8px 20px;
    color: #2b2b2b;
}
@media(min-width: 992px){
.header__bottom .collapse:not(.show){
    display: block;
}
.header__bottom .navbar-nav{
    flex-wrap: wrap;
    flex-direction: row;
}
.header__bottom .navbar-nav li+li{
    border-left: solid 1px #ebebeb;
}
}

.sidebar .wp-block-heading{
    font-size: 20px !important;
}

.sidebar .container{
    padding: 0;
}

.sidebar ol.wp-block-latest-comments{
    padding-left: 0;
}

.wp-block-search__button-outside label{
    display: none;
}
