body {
    font-family: 'Hanken Grotesk', sans-serif;
}

.site-logo-img img {
    width: 130px;
}

.ast-builder-menu-1 .menu-item:hover > .menu-link,
.ast-builder-menu-1 .menu-item.current-menu-item > .menu-link, .ast-builder-menu-1 .inline-on-mobile .menu-item.current-menu-item > .ast-menu-toggle, .ast-builder-menu-1 .current-menu-ancestor > .menu-link {
    font-weight: 600;
}

.site-primary-header-wrap .ast-builder-grid-row {
    background: #fff;
    padding: 10px 1.5rem;
    border-radius: 20px;
    margin-top: 15px;
}

ul.sub-menu {
    padding-top: 10px;
    padding-bottom: 10px;
}

.main-header-menu .sub-menu .menu-link {
    padding: .5em 1em;
}

.ast-logo-title-inline .ast-site-identity {
    padding: 0;
}

a.header-cta {
    background: #0A152E;
    color: #fff;
    padding: 10px 20px;
    border-radius: 10px;
    transition: .3s all;
}

a.header-cta:hover, a.header-cta:active {
    background: #C6CED7;
    color: #0A152E;
    text-decoration: none;
}

.hero-cta h3.elementor-image-box-title {
    text-align: left;
}

.hero-cta p.elementor-image-box-description a {
    background: #0A152E;
    color: #fff;
    padding: 10px 20px;
    border-radius: 10px;
    display: flex;
    justify-content: space-between;
    font-size: 16px;
    align-items: center;
    transition: .3s all;
}

.hero-cta p.elementor-image-box-description a:hover {
    background: #C6CED7;
    color: #0A152E;
    transform: scale(1.05);
}

.section-subheading .elementor-heading-title {
    background: #C6CED7;
    display: inline;
    padding: 7px 15px;
    border-radius: 20px;
}

.cat-overview h4.elementor-image-box-title {
    position: absolute;
    top: 1rem;
    left: 1rem;
    background: #132942;
    padding: 7px 15px;
    border-radius: 20px;
    color: #fff;
    font-size: 16px;
    font-weight: 400;
    transition: .3s all;
}

.cat-overview:hover h4.elementor-image-box-title {
    background: #C6CED7;
    color: #0A152E;
}

.gallery-clients .gallery {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.gallery-clients .gallery .gallery-caption {
    border: 0;
    background: #0A152E;
    display: inline;
    padding: 7px 15px;
    border-radius: 20px;
    font-size: 16px !important;
    color: #fff;
    margin-top: 1rem;
		margin-bottom: 1rem;
    display: block;
}

a.add_to_cart_button.ajax_add_to_cart {
    display: none;
}

.single-produk .site-content {
    padding-top: 6rem;
}

.archive, .single-produk .site-content {
    background: linear-gradient(180deg, #C6CED7 0%, #FFFFFF 50%);
}

.product_meta {
    border: 0;
    padding-top: .5em;
    font-size: .9em;
    margin: 0 0 .8em;
}

.product_meta span, .product_meta span a {
    display: inline-block;
    margin-right: 15px;
    align-items: center;
    font-weight: 500;
    text-decoration: inherit;
    color: #0c0d0d;
}

a.button.single_add_to_cart_button {
    padding: 15px 25px;
    border-radius: 30px;
    margin-bottom: 10px;
    display: inline-block;
    transition: .3s all;
}

a.button.single_add_to_cart_button:hover {
    background: #C6CED7;
    color: #0a152e;
    text-decoration: none;
    transform: scale(1.05);
}

.carousel-thumbnails {
  justify-content: center;
  gap: 10px;
  flex-wrap: wrap;
}

.carousel-thumbnails img.thumb-img {
  border: 2px solid transparent;
  border-radius: 20px;
  transition: border 0.3s;
}

.carousel-thumbnails img.thumb-img.active,
.carousel-thumbnails img.thumb-img:hover {
  border: 2px solid #C6CED7;
}

.archive-produk {
    width: 100%;
}

ul.products {
  margin: 0;
  padding: 0;
  list-style: none;
  display: flex;
  flex-wrap: wrap;
  gap: 20px; /* jarak antar item */
}

ul.products li.produk {
  background: transparent !important;
  display: block;
  flex: 0 0 calc(25% - 15px); /* 4 kolom dikurangi sedikit karena gap */
  box-sizing: border-box;
  margin-bottom: 2.5em;
  padding: 0;
  border: 0;
}

.product.woocommerce {
    margin-bottom: .8em;
}

.shop-summary-wrap {
    text-align: center;
}

ul.products li.produk .woocommerce-loop-product__link {
    border-radius: 20px;
    overflow: hidden;
    display: block;
}

ul.products li.produk a img {
    width: 100%;
    margin: 0;
    transition: .3s all;
}

ul.products li.produk a:hover img {
    opacity: .9;
    transform: scale(1.05);
}

.shop-thumbnail-wrap {
    margin-bottom: .8em;
}

.woo-product-category a {
    font-size: .85em;
    margin-bottom: .5em;
    display: block;
    line-height: 1.3;
    color: inherit;
    opacity: .6;
    transition: .3s all;
}

.woo-product-category a:hover, a.loop-product__link:hover {
    text-decoration: none;
}

h2.woocommerce-loop-product__title {
    margin-bottom: .5em;
    padding: 0;
    font-size: 1em;
    font-weight: 600;
    line-height: 1.3em;
}

.post-type-archive-produk #primary, .archive #primary {
    margin-top: 5rem;
}

h1.woocommerce-products-header__title.page-title {
    font-size: 52px;
    font-weight: 600;
    text-align: center;
    margin-bottom: 1rem;
    margin-top: 2rem;
}

.woocommerce-breadcrumb {
    font-size: 16px;
    font-weight: 400;
    color: #0A152E;
    /* margin-bottom: 0; */
}

.woocommerce-breadcrumb a {
    /* color: #0C0D0D; */
}

p.woocommerce-result-count, .woocommerce-ordering select, .woocommerce-ordering select {
    font-size: 16px;
    color: #0C0D0D;
    margin-bottom: 0;
}

.woocommerce-ordering select, .woocommerce-ordering select {
    font-size: 16px;
    background-color: #C6CED7;
    padding: 7px 15px;
    border-radius: 20px;
    background-position-x: 93%;
}

.woocommerce .woocommerce-ordering {
    margin-bottom: 0;
    margin-top: 4px;
}

h1.product_title.entry-title {
    font-size: 32px;
    font-weight: 600;
}

.woocommerce-tabs ul.tabs {
    display: none;
}

.woocommerce-tabs {
    /* border-top: 1px #C6CED74D solid; */
    background: #C6CED7;
    padding: 2rem;
    border-radius: 50px;
    margin-top: 1.5rem;
}

section.related.products {
    border-top: 1px #c6ced799 solid;
    padding-top: 2rem;
    margin-top: 3rem;
}

section.related.products h2.section-title {
    font-size: 32px;
    margin-bottom: 1rem;
    font-weight: 600;
    line-height: 1.3em;
}

div.summary {
    margin-bottom: 0rem;
}

.woocommerce-product-gallery__image {
    border-radius: 50px;
    overflow: hidden;
}

.flex-control-nav.flex-control-thumbs li {
    border-radius: 20px;
    overflow: hidden;
}

.blog.ast-separate-container.ast-right-sidebar .site-content, .archive.ast-separate-container.ast-right-sidebar .site-content, .single-post .site-content {
    margin-top: 1.5rem;
}

.blog, .archive, .single-post {
    background: linear-gradient(180deg, #C6CED7 0%, #FFFFFF 50%);
}

.ast-article-inner {
    background: #fff;
    border-radius: 20px !important;
}

.post-thumb img {
    transition: .3s all;
}
	
.single-post article {
    border-radius: 50px !important;
}

.single-post .ast-single-post-featured-section {
    border-radius: 10px;
    overflow: hidden;
}

article:hover .post-thumb img {
    transform: scale(1.05);
    opacity: .9;
}

.wp-block-search__input {
    background: transparent !important;
    border-bottom: 1px #09152e solid !important;
}

.sidebar-main {
    background: #C6CED7;
    padding: 1.5rem;
    border-radius: 50px;
}

.sidebar-main h3.wp-block-heading {
    font-size: 20px;
}

.sidebar-main a {
    font-size: 16px;
    line-height: 1.3;
}

.sidebar-main a:hover {
    color: #0a152e;
    opacity: .7;
}

.sidebar-main ul li {
    padding: 0;
    margin: 0 !important;
}

.sidebar-main button.wp-block-search__button {
    font-size: 16px !important;
    padding: 7px 15px !important;
    border-radius: 10px !important;
    transition: .3s all;
}

.sidebar-main button.wp-block-search__button:hover {
    opacity: .9;
    transform: scale(1.05);
}

.sidebar-main .wp-block-search__input {
    font-size: 16px !important;
    padding: 0;
    color: #09152e !important;
}

.sidebar-main .wp-block-group.is-vertical.is-layout-flex {
    gap: 0;
}

.sidebar-main span.wc-block-produk-categories-list-item-count {
    font-size: 16px;
}

.single-post article {
    border-radius: 50px;
}

.single-post.ast-separate-container.ast-two-container #secondary .widget {
    background: transparent;
    padding: 0;
    margin-bottom: 1.25em;
}

.ast-builder-grid-row-3-lheavy .ast-builder-grid-row {
    grid-template-columns: 50% 30% 20%;
}

.site-footer-primary-section-2, .site-footer-primary-section-3 {
    padding-top: 1.7rem;
}

.site-footer-primary-section-1 .widget_text {
    padding-right: 5%;
}

footer.site-footer h3.wp-block-heading {
    line-height: normal;
    font-size: 1.2rem;
    font-weight: 600;
    font-family: 'Hanken Grotesk', sans-serif;
}

footer.site-footer {
    font-weight: 400;
}

footer.site-footer a {
    color: inherit;
}

footer.site-footer a:hover {
    color: #C6CED7;
    text-decoration: none;
}

footer.site-footer a.wp-block-button__link {
    display: inline-block;
    transition: .3s all;
    color: #fff;
}

footer.site-footer a.wp-block-button__link:hover {
    background: #000;
    color: #fff;
}

.footer-contact {
  list-style: none;
  padding: 0;
  margin: 0;
}

.footer-contact li {
  display: flex;
  align-items: center;
  /*margin-bottom: 10px;*/
  color: #333;
}

.footer-contact li i {
  width: 30px;
  min-width: 20px;
  text-align: center;
  margin-right: 10px;
  font-size: 18px;
}

.footer-contact li span,
.footer-contact li a {
  display: inline-block;
  color: inherit;
  text-decoration: none;
}

.site-below-footer-wrap, .site-below-footer-wrap .site-footer-below-section-2 .ast-builder-html-element {
    font-size: 16px;
}

#secondary .wp-block-search__button {
    color: #fff;
    transition: .3s all;
}

#secondary .wp-block-search__button:hover, #secondary .wp-block-search__button:focus {
    background: #000;
}

.wp-block-search__inside-wrapper {
    border: 0;
    box-shadow: none;
		outline: unset !important;
}

form.wp-block-search__button-inside {
    border: 0;
}

#secondary .wp-block-search__input {
    border: 0;
    border-bottom: 1px #ad0201 solid;
    border-radius: 0;
}

input#submit, input[type="button"], input[type="submit"], input[type="reset"], #comments .submit {
    color: #fff;
    transition: .3s all;
}

input#submit:hover, input[type="button"]:hover, input[type="submit"]:hover, input[type="reset"]:hover, #comments .submit:hover {
    background: #000;
    color: #fff;
}

.footer-whatsapp {
    padding: 12px 14px;
    background: #25d366;
    border-radius: 100%;
    font-size: 30px;
    line-height: 1;
    position: fixed;
    bottom: 3.5rem;
    right: 20px;
    z-index: 99;
    transition: .3s all;
}

.footer-whatsapp:hover {
    background: #C6CED7;
}

.footer-whatsapp .whatsapp-icon {
    color: #fff;
		transition: .3s all;
}

.footer-whatsapp:hover .whatsapp-icon {
    color: #0A152E;
}

.mobile-text {
    display: none;
}

@media screen and (max-width: 921px) {
	footer.site-footer, footer.site-footer .widget, .site-below-footer-wrap .ast-footer-copyright {
			text-align: left;
	}

	.site-below-footer-wrap .site-footer-below-section-2 .ast-builder-html-element {
			text-align: right;
	}
	
	.blog.ast-separate-container.ast-right-sidebar .site-content, .archive.ast-separate-container.ast-right-sidebar .site-content, .single-post .site-content {
			margin-top: 5rem;
	}
	
	.single-post article.ast-article-single {
    background: #fff !important;
	}

	.ast-separate-container .ast-blog-layout-4-grid .ast-article-post {
			padding: 0;
			margin-bottom: 1rem;
	}

	.ast-separate-container .ast-blog-layout-4-grid .ast-article-inner {
			background: #fff;
	}

	.ast-separate-container #primary {
			padding-bottom: 0;
	}

	.ast-separate-container.ast-right-sidebar #secondary {
			padding: 0;
	}

	.sidebar-main {
			padding: 2rem;
	}
	
	.single-post .main-header-bar {
			border-bottom: 0;
			min-height: auto !important;
	}

/* 	.main-header-bar-wrap {
			padding: 0 20px;
	} */

	.single-post.ast-separate-container #primary {
			padding-top: .5rem;
	}
	
	.single-produk .site-content {
        padding-top: 7rem;
    }
}

@media screen and (max-width: 767px) {
    h1.product_title.entry-title {
        margin-top: 2rem;
    }
	a.button.single_add_to_cart_button {
		display: block;
		text-align: center;
	}
}

@media screen and (max-width: 544px) {
    .single-produk .site-content {
        padding-top: 6rem;
    }
    
	.woocommerce-tabs {
			padding: 2rem;
			margin-bottom: 3rem;
	}
	
	.ast-separate-container #content .ast-container {
			padding: 0 20px;
	}

	.ast-separate-container #primary {
			padding-top: 10px;
	}
	
	ul.products li.produk {
        flex-basis: calc(33.3333% - 15px);
    }
    
    section.related.products {
        margin-top: 0;
    }
	
	.single-post article {
			border-radius: 30px;
			padding: 2rem !important;
	}
	
		.site-footer-primary-section-2, .site-footer-primary-section-3 {
			margin-bottom: 2rem !important;
	}

	.site-below-footer-wrap .ast-footer-copyright, .site-below-footer-wrap .site-footer-below-section-2 .ast-builder-html-element {
			text-align: left;
	}
}

@media screen and (max-width: 480px) {
    ul.products li.produk {
        flex-basis: calc(50% - 15px);
    }
}