#main {
    min-height: calc(100dvh - 500px);
}

/* Header */
.header-wrapper {
    padding-top: 4px;
}

.header-wrapper::before {
    content: '';
    display: block;
    width: 100%;
    height: 4px;
    position: absolute;
    top: 0;
    z-index: 10;
    background: -webkit-linear-gradient(90deg,rgba(0, 119, 182, 1) 0%, rgba(255, 3, 3, 1) 50%, rgba(255, 234, 3, 1) 100%);
    background: -moz-linear-gradient(90deg,rgba(0, 119, 182, 1) 0%, rgba(255, 3, 3, 1) 50%, rgba(255, 234, 3, 1) 100%);
    background: linear-gradient(90deg,rgba(0, 119, 182, 1) 0%, rgba(255, 3, 3, 1) 50%, rgba(255, 234, 3, 1) 100%);
}

.sonviet-header-block {
    display: flex;
    gap: 16px;
    align-items: center;
}

.sonviet-header-block label {
    font-size: 11px;
    font-weight: 300;
    color: #FFFFFF;
    margin-bottom: 0 !important;
}

.sonviet-header-block a,
.sonviet-header-block a:hover {
    text-decoration: none;
    font-size: 16px;
    font-weight: 600;
    color: #FFFFFF;
}

.header-bottom {
    background-color: #0f2b83;
    background: -webkit-linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
    background: -moz-linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
    background: linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
}

@media screen and (max-width: 849px) {
    .header-button a.icon {
        color: #0077b6 !important;
    }
}

@media screen and (min-width: 850px) {
    .header-main .header-inner {
        position: relative;
        overflow: hidden;
    }

    .header-main .header-inner #logo {
        position: relative;
        display: flex;
        height: 100%;
        align-items: center;
    }

    .header-main .header-inner #logo::before,
    .header-main .header-inner #logo::after {
        content: '';
        display: block;
        width: 100%;
        height: auto;
        aspect-ratio: 1;
        position: absolute;
        z-index: -1;
        background-color: #FFF;
        rotate: 45deg;
    }

    .header-main .header-inner #logo::before {
        right: -48px;
        top: -90px;
    }

     .header-main .header-inner #logo::after {
        right: -60px;
        top: 45px;
     }

    .header-main .header-inner::after {
        content: '';
        display: block;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        background-color: #0077b6;
        z-index: -2;
        pointer-events: none;
        transform: translate(200px, 0%);
    }
}

/* Footer */
.absolute-footer {
    background-color: #0f2b83;
    background: -webkit-linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
    background: -moz-linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
    background: linear-gradient(90deg,rgba(15, 43, 131, 1) 0%, rgba(0, 119, 182, 1) 100%);
    color: #FFF !important;
}

/* Sections */
.sonviet-homepage-slider {
    position: relative;
}

.sonviet-homepage-slider::after {
    content: '';
    display: block;
    background-image: url('data:image/svg+xml,<svg data-name="Layer 1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 1200 120" preserveAspectRatio="none"><path d="M985.66,92.83C906.67,72,823.78,31,743.84,14.19c-82.26-17.34-168.06-16.33-250.45.39-57.84,11.73-114,31.07-172,41.86A600.21,600.21,0,0,1,0,27.35V120H1200V95.8C1132.19,118.92,1055.71,111.31,985.66,92.83Z" class="shape-fill" fill="%23FADA7A"></path></svg>');
    width: 100%;
    aspect-ratio: 10/1;
    position: absolute;
    bottom: 0;
}

.sonviet-homepage-slider-logo {
    width: fit-content;
}

.sonviet-homepage-slider-logo img {
    width: 80px;
    height: auto;
    object-fit: contain;
    margin-bottom: 16px;
}

.row.row-dashed {
  border: 1px dashed #ddd;
}

.section-title {
	justify-content: center;
}

.section-title b {
	display: none;
}

.shop-page-title .page-title-inner {
	min-height: 150px;
}

.related.related-products-wrapper.product-section {
	padding-top: 24px;
}

.viwcpf-off_canvas-icon-wrap {
	display: none;
}

.name.product-title {
	text-transform: uppercase;
	font-weight: 600;
}

.name.product-title a {
		color: #000000 !important;
}

.name.product-title a:hover {
		color: #0077b6 !important;
}

.viwcpf-off_canvas-header-title-wrap,
.viwcpf_wrap_filter-content .viwcpf_filter-title {
		color: #000000 !important;
		font-weight: 600 !important;
}

/* CF7 */
.contact-wrapper {
	border-top: solid 1px #ececec;
}

.contact-image-col {
	padding: 0 !important;
}

/*.contact-image-col .img-inner {*/
/*	padding-top: 900px !important;*/
/*}*/

.wpcf7-form.processing::before {
    display: none !important;
}

.article-inner .entry-content {
	text-align: justify;
}

@media screen and (max-width: 767px) {
	.md-max\:order-6 {
		order: 6;
	}
	
	.md-max\:order-7 {
		order: 7;
	}
	
	.md-max\:order-8 {
		order: 8;
	}
	
	.md-max\:-mt-6 {
		margin-top: -24px;
	}
	
	.contact-image-col {
		padding-right: 0 !important;
	}
}

@media screen and (max-width: 849px) {
	.category-filtering.category-filter-row {
		display: none;
	}
	
	.viwcpf-off_canvas-icon-wrap {
		display: block;
		background-color: #0077b6 !important;
	}
	
	.viwcpf-off_canvas-header-wrap {
		padding: 20px 24px;
	}
	
	.viwcpf-off_canvas-content-wrap1 {
		padding: 24px;
		overflow-y: overlay !important;
	}
	
	.product-page-title .page-title-inner {
		justify-content: center;
	}
	
	.contact-form-col .col-inner {
		padding: 32px 0 0 !important;
	}
	
	.contact-image-col .img-inner {
	  padding-top: 300px !important;
  }
}

/* Woocommerce */
.wpc-posts-found,
.wpc-term-count {
    display: none !important;
}

.widget-title.wpc-filter-title {
    font-size: 18px;
    font-weight: 600;
    text-transform: uppercase;
}

.wpc-filter-link {
    color: #000000 !important;
}

.wpc-filter-chips-list.wpc-empty-chips-container {
    margin-bottom: 0 !important;
}

.wpc-filter-chip.wpc-chip-reset-all a {
    color: #FFFFFF !important;
    background-color: #ae2012 !important;
    border-color: #ae2012 !important;
}

.wpc-label-item.wpc-term-count-0,
.wpc-label-item label,
.wpc-label-item label span {
    opacity: 1 !important;
}

.category-page-title .shop-page-title {
    text-transform: uppercase;
}

@media screen and (min-width: 850px) {
    .category-page-title .page-title-inner > div.flex-col {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
    }

    .category-page-title .shop-page-title,
    .category-page-title .is-large {
        width: fit-content;
        margin-bottom: 0;
    }

    .widget.widget_wpc_sorting_widget .widget-title.shop-sidebar {
        display: inline-block;
        font-size: 18px;
        margin-bottom: 8px;
    }

    .widget.widget_wpc_sorting_widget .widget-title.shop-sidebar + .is-divider {
        display: none;
    }
}

@media screen and (max-width: 849px) {
    .category-page-row .col.hide-for-medium {
        display: block !important;
        padding-bottom: 0 !important;
    }

    .widget.widget_wpc_sorting_widget {
        position: absolute;
        top: 0;
        right: 0;
        z-index: 10;
    }

    .widget.widget_wpc_sorting_widget .widget-title.shop-sidebar,
    .widget.widget_wpc_sorting_widget .widget-title.shop-sidebar + .is-divider {
        display: none;
    }

    .widget.widget_wpc_sorting_widget .select2-selection.select2-selection--single {
        padding: 0 !important;
        border-radius: 2px !important;
        border-color: #2c2d33 !important;
        max-height: 40px;
    }

    .widget.widget_wpc_sorting_widget .select2-selection__rendered {
        min-height: 40px !important;
        padding-top: 0 !important;
        padding-bottom: 0 !important;
    }

    .widget.widget_wpc_sorting_widget .select2-dropdown {
        border-color: #2c2d33 !important;
    }
}

/* Account */
.page-wrapper.my-account:has(.edit-account) .col:first-child {
    display: none;
}

.page-wrapper.my-account:has(.edit-account) .col {
    padding-left: 15px !important;
}

.password-input {
    display: flex;
}

.show-password-input {
    position: relative;
    background-color: #0077b6;
    color: #FFF;
    margin-right: 0;
    min-width: 80px;
}

.show-password-input::after {
   content: 'Hiện';
}

.show-password-input.display-password::after {
   content: 'Ẩn';
}

#password_strength.short,
#password_strength.bad {
    color:#ae2012;
}

#password_strength.good {
    color: #f39c12;
    font-weight: bold;
}

#password_strength.strong {
    color: #27ae60;
}

/* Document */
.document-item {
    display: flex;
    flex-direction: column;
    gap: 16px;
    padding: 24px 0;
    border-bottom: solid 1px #cecece;
}

.document-item:last-of-type {
    border-width: 0 !important;
}

.document-item-download {
    width: fit-content;
}

@media screen and (min-width: 850px) {
    .document-item {
        flex-direction: row;
        justify-content: space-between;
        align-items: center;
        gap: 16px;
    }

    .document-item-title {
        margin-bottom: 0 !important;
    }

    .document-item-download {
        flex-shrink: 0;
        margin: 0 !important;
    }
}

/* Footer */
.widget.widget_visitors_widget {
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-bottom: 0 !important; 
}

/* Form */
form.loading {
    opacity: 0.5;
    pointer-events: none;
}

.usp-item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 12px 0px;
	color: #FFC107;
}

.usp-item > svg {
	fill: #FFC107;
}

.usp-item > div {
	width: fit-content !important;
	text-transform: uppercase;
	font-weight: 600;
}

.col-inner:has(.sonviet-gradient-section) {
    height: 100%;
}

.sonviet-gradient-section {
    align-items: flex-end;
    height: 100%;
}

.sonviet-gradient-section .section-content {
    width: 80%;
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(5px);
    padding: 16px;
}

.sonviet-gradient-section .section-content .button {
    margin: 0 !important;
}

.sonviet-gradient-section .button {
    color: #000 !important;
}

.sonviet-right-box {
    align-items: flex-end;
    justify-content: flex-end;
    height: 100%;
    padding: 20px;
}

.sonviet-right-box .section-content {
    width: 360px;
    background: rgba(255, 255, 255, 0.5);
    backdrop-filter: blur(5px);
    padding: 16px;
}

.sonviet-right-box .button {
    color: #000 !important;
}

.image-drop-shadow .img-inner {
    box-shadow: 5px 4px 7px rgba(0, 0, 0, 0.2);
}


.nav-dropdown .menu-item {
    padding: 0 12px;
    
    font-weight: 600;
}

.nav-dropdown .menu-item > a {
    color: #000;
    border-radius: 5px;
}

.nav-dropdown .current-menu-item.active > a {
    color: #0077b6;
}

.nav-dropdown .menu-item:hover > a {
    background-color: #f0f0f0;
}

@media screen and (min-width: 1024px) {
    .nav.header-nav.nav-left {
        gap: 32px !important;
    }
}

@media screen and (min-width: 1440px) {
    .nav.header-nav.nav-left {
        gap: 48px !important;
    }
}

/* Related posts for product */
.related.related-posts-wrapper.product-section {
    padding-top: 24px;
}

.related-post-image {
    overflow: hidden;
}

.related-post-image img {
    width: 100%;
    aspect-ratio: 4/3;
    transition-property: all;
    transition-timing-function: ease;
    transition-duration: 700ms;
}

.related-post-content {
    padding-top: 20px;
}

.related-post-title a {
    font-size: 0.9rem;
    color: #000;
}

.related-post-title a:hover {
    color: #0077b6 !important;
}

.related-post-excerpt {
    font-size: 0.75rem;
}

.related-post-item:hover .related-post-image img {
    scale: 1.05;
}

.related-post-item:hover .related-post-title a:hover {
    color: #0077b6 !important;
}