/*
	Theme Name: CAIA
	Theme URI: http://caia.vn
	Description: Themes hỗ trợ Genesis Theme v2.7.3 and Wordpress v5.0 trở lên
	Author: HoangLT, TuanNM
	Author URI: http://caia.vn
	Version: 4.2
	Template: genesis
*/

/* Defaults
------------------------------------------------------------ */

body,
h1,
h2,
h2 a,
h2 a:visited,
h3,
h4,
h5,
h6,
p,
select,
textarea {
	color: #333;
	font-family: "Nunito", sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.618;
	margin: 0;
	padding: 0;
	text-decoration: none;
}

blockquote,
input,
select,
textarea,
.author-box,
.sticky,
.taxonomy-description{
	background-color: #f5f5f5;
	border: 1px solid #ddd;
}

input,
label,
select,
textarea {
	color: #333;
	font-family: "Nunito", sans-serif;
	font-size: 15px;
	font-weight: 400;
}

li,
ol,
ul {
	margin: 0;
	padding: 0;
}

ol li {
	list-style-type: decimal;
}

strong,
b {
	font-weight: 700;
}
/* Hyperlinks
------------------------------------------------------------ */

a,
a:visited {
	color: #0d72c7;
	text-decoration: none;
	outline: none;
}

a:hover {
	text-decoration: none;
	outline: none;
}

a img {
	border: none;
	outline: none;
}

/* Body
------------------------------------------------------------ */

body {
	background-color: #fff;
}

::-moz-selection {
	background-color: #0d72c7;
	color: #fff;
}

::selection {
	background-color: #0d72c7;
	color: #fff;
}

/* Wrap
------------------------------------------------------------ */

.site-container {
	margin: 0 auto;
	width: 100%;
	padding: 0;
}

.wrap {
	margin: 0 auto;
	width: 1170px;
	padding: 0;
}


/* Header
------------------------------------------------------------ */

.content-before-header{
    background: linear-gradient(90deg, #8eabc1 0%, #9eb7cb 50%, #88a9c2 100%);
    color: #fff;
    height: 44px;
    display: flex;
    align-items: center;
    overflow: hidden;
    text-align: center;
}

.content-before-header p{
	color: #fff;
}

.site-header {
	margin: 0 auto;
	height: 120px;
	width: 100%;
	float: left;
	position: relative;
	z-index: 2;
    background: #fff;
    border-bottom: 1px solid #eef2f4;
}

.title-area {
	display: table;
	margin: 0 auto;
	overflow: hidden;
	padding: 0;
	width: 190px;
	height: 120px;
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
}

.site-title {
	font-family: "Nunito", sans-serif;
	font-size: 36px;
	line-height: 1.35;
	margin: 0;
	text-transform: uppercase;
	float: left;
	width: 100%;
	height: 100%;
}

.site-title a,
.site-title a:hover {
	color: #333;
	padding: 0;
	text-decoration: none;
	float: left;
	width: 100%;
	height: 100%;
	text-indent: -9999px;
}

.site-description {
	font-size: 13px;
	padding: 0;
	display: none;
}

.site-header .widget-area {
	float: right;
	padding: 0;
	width: 100%;
}

.site-header .widget-area .widget_search{
	float: left;
    width: 250px;
    height: 40px;
    border: 1px solid #d8e1e7;
    border-radius: 22px;
    align-items: center;
    padding: 0;
    background: #fff;
    margin: 40px 0 0;
}

.site-header .widget-area .widget_search input[type="submit"]{
	background: url(images/search.svg) no-repeat center center;
	background-size: 15px;
	padding: 0;
	margin: 0;
	float: right;
	width: 40px;
	height: 40px;
	border: none;
	text-indent: -9999px;
}

.site-header .widget-area .caia_code_widget{
	float: right;
    margin: 47px 20px 0 0;
}

.site-header .widget-area .caia_code_widget .widgettitle{
    padding: 0;
    border: none;
    margin: 0;
    font-size: 15px;
    font-weight: 400;
    color: #29445d;
    cursor: pointer;	
    background: none;
}

.site-header .widget-area .widget_shopping_cart{
	float: right;
    margin: 40px 0 0;
    position: relative;
}

.site-header .widget-area .widget_shopping_cart .widgettitle{
    background: url(images/cart.svg) no-repeat left center;
    padding: 0;
    padding-top: 6px;
    padding-left: 30px;
    border: none;
    margin: 0;
    font-size: 15px;
    font-weight: 700;
    color: #29445d;
    cursor: pointer;
}

.site-header .widget-area .widget_shopping_cart .widget_shopping_cart_content{
    position:absolute;
    top:calc(100% + 15px);
    right:0;
    width: 260px;
    padding: 20px 15px;
    background:#fff;
    border:1px solid #e8edf1;
    border-radius:12px;
    box-shadow:0 12px 35px rgba(0,0,0,.12);
    display:none;
    z-index:999;
}

.site-header .widget-area .widget_shopping_cart.active .widget_shopping_cart_content{
    display:block;
}

.site-header .widget-area .widget_shopping_cart ul.cart_list li img{
	width: 40px;
	border-radius: 5px;
}

.site-header .widget-area .widget_shopping_cart li a{
    color: #29445d;
}

.site-header .widget-area .widget_shopping_cart .total{
    text-align: right;
    padding-top: 10px;
}

.site-header .widget_shopping_cart .woocommerce-mini-cart__buttons{
    display:flex;
    gap:10px;
    margin-top:18px;
}

.site-header .widget_shopping_cart .woocommerce-mini-cart__buttons .button{
    flex:1;
    width: 50%;
    margin: 0;
    padding: 12px 15px;
    border-radius: 8px;
    text-align:center;
    font-size: 15px;
    font-weight:600;
    text-decoration:none;
    transition:.25s ease;
}

.site-header .widget_shopping_cart .woocommerce-mini-cart__buttons .wc-forward{
    background:#8FAFC7;
    color:#fff;
    border:1px solid #8FAFC7;
}

.site-header .widget_shopping_cart .woocommerce-mini-cart__buttons .checkout{
    background:#D9BC79;
    color:#fff;
    border:1px solid #D9BC79;
}


/* Header / Primary / Secondary Navigation
------------------------------------------------------------ */

.nav-primary{
	float: left;
	width: 100%;
	height: 55px;
	border-bottom: 1px solid #eef2f4;
}

.menu-primary,
.menu-secondary,
.site-header .menu {
	clear: both;
	color: #333;
	font-size: 13px;
	margin: 0 auto;
	overflow: hidden;
	width: 100%;
}

.menu-primary ul,
.menu-secondary ul,
.site-header .menu ul {
	float: left;
	width: 100%;
}

.menu-primary li,
.menu-secondary li,
.site-header .menu li {
	float: left;
	list-style-type: none;
}

.menu-primary a,
.menu-secondary a,
.site-header .menu a {
	color: #333;
	font-size: 15px;
	display: block;
	padding: 15px 20px;
	position: relative;
	text-decoration: none;
	font-weight: 700;
}

.menu-primary li li a,
.menu-primary li li a:link,
.menu-primary li li a:visited,
.menu-secondary li li a,
.menu-secondary li li a:link,
.menu-secondary li li a:visited,
.site-header .menu li li a,
.site-header .menu li li a:link,
.site-header .menu li li a:visited {
	background: none;
	background-color: #fff;
	color: #333;
	font-size: 15px;
	padding: 10px 15px;
	position: relative;
	text-transform: none;
	width: 230px;
}

.menu-primary li a:active,
.menu-primary li a:hover,
.menu-primary .current_page_item a,
.menu-primary .current-cat a,
.menu-primary .current-menu-item a,
.menu-secondary li a:active,
.menu-secondary li a:hover,
.menu-secondary .current_page_item a,
.menu-secondary .current-cat a,
.menu-secondary .current-menu-item a,
.site-header .menu li a:active,
.site-header .menu li a:hover,
.site-header .menu .current_page_item a,
.site-header .menu .current-cat a,
.site-header .menu .current-menu-item a {
	background: #8eafc8;
	color: #fff;
}

.menu-primary li ul,
.menu-secondary li ul,
.site-header .menu li ul {
	height: auto;
	left: -9999px;
	margin: 0 0 0 -1px;
	position: absolute;
	width: 260px;
	z-index: 9999;
	border-radius: 10px;
	overflow: hidden;
}

.menu-primary li li a:active,
.menu-primary li li a:hover,
.menu-secondary li li a:active,
.menu-secondary li li a:hover,
.site-header .menu li li a:active,
.site-header .menu li li a:hover {
	color: #9ecf85;
}

.menu-primary li ul a,
.menu-secondary li ul a,
.site-header .menu li ul a {
	width: 140px;
}

.menu-primary li ul ul,
.menu-secondary li ul ul,
.site-header .menu li ul ul {
	margin: -36px 0 0 159px;
}

.menu li:hover ul ul,
.menu li.sfHover ul ul {
	left: -9999px;
}

.menu li:hover,
.menu li.sfHover {
	position: static;
}

ul.menu li:hover>ul,
ul.menu li.sfHover ul,
.site-header .menu li:hover>ul,
.site-header .menu li.sfHover ul {
	left: auto;
}

.menu-primary li a.sf-with-ul,
.menu-secondary li a.sf-with-ul,
.site-header .menu li a.sf-with-ul {
	padding-right: 25px;
}

.menu li a .sf-sub-indicator,
.menu li li a .sf-sub-indicator,
.menu li li li a .sf-sub-indicator {
	background: url(images/icon-plus.png) no-repeat;
	height: 16px;
	position: absolute;
	right: 8px;
	text-indent: -9999px;
	top: 10px;
	width: 16px;
}

#wpadminbar li:hover ul ul {
	left: 0;
}

/* Inner
------------------------------------------------------------ */

.site-inner {
	margin: 0 auto;
	overflow: hidden;
	padding: 40px 0;
	width: 1170px;
}

.home .site-inner{
	padding: 0;
}

/* Breadcrumb
------------------------------------------------------------ */

.breadcrumb{
	float: left;
	width: 100%;
    padding: 20px 0;
    color: #333;
    background: #fbf8f1;
}

.breadcrumb .wrap{
	position: relative;
}

.breadcrumb a{
	color: #8eafc8;
	font-weight: 600;
}

.breadcrumb .separator{
	margin: 0 5px;
}

/* Content-Sidebar Wrap
------------------------------------------------------------ */

.content-sidebar-wrap {
	float: left;
	width: 750px;
}

.content-sidebar .content-sidebar-wrap,
.full-width-content .content-sidebar-wrap,
.sidebar-content .content-sidebar-wrap {
	width: 100%;
}

.sidebar-content-sidebar .content-sidebar-wrap,
.sidebar-sidebar-content .content-sidebar-wrap {
	float: right;
}


/* Content
------------------------------------------------------------ */

.content {
	float: left;
	padding: 0;
	width: 450px;
}

.content-sidebar .content,
.sidebar-content .content {
	width: 750px;
	margin-left: 15px;
}

.sidebar-content .content,
.sidebar-sidebar-content .content {
	float: right;
	margin-left: 0;
	margin-right: 15px;
}

.full-width-content .content {
	width: 100%;
}

.post {
	margin: 0 0 20px;
}

.entry-content {
	overflow: hidden;
	text-align: justify;
}

.entry-content p {
	margin: 0 0 15px;
	text-align: justify;
}

blockquote {
	background: url(images/blockquote.png) no-repeat;
	border: none;
	margin: 5px 5px 20px;
	padding: 25px 30px 5px 70px;
}

blockquote p {
	color: #999;
	font-style: italic;
}

.clear {
	clear: both;
}

.clear-line {
	border-bottom: 1px solid #ddd;
	clear: both;
	margin: 0 0 25px;
}

/* Headlines
------------------------------------------------------------ */

h1,
h2,
h2 a,
h2 a:visited,
h3,
h4,
h5,
h6 {
	font-family: "Nunito", sans-serif;
	line-height: 1.35;
	margin: 0 0 10px;
}

h1 {
	font-size: 18px;
}

.taxonomy-description h1 {
	margin: 0;
}

h2,
h2 a,
h2 a:visited {
	font-size: 16px;
}

h2 a,
h2 a:visited {
	color: #333;
	font-family: "Nunito", sans-serif;
}

h2 a:hover {
	color: #0d72c7;
	text-decoration: none;
}

.widget-area h2,
.widget-area h2 a {
	font-size: 14px;
	margin: 0 0 5px;
}

h3 {
	font-size: 14px;
}

h4 {
	font-size: 13px;
}

.taxonomy-description h1,
.widget-area .widgettitle {
	background-color: #f2f2f2;
	font-size: 15px;
	padding: 10px 15px;
	color: #333;
}

.widget-area .widgettitle a {
	color: #333;
	text-decoration: none;
}

/* Ordered / Unordered Lists
------------------------------------------------------------ */

.entry-content ol,
.entry-content ul {
	margin: 0;
	padding: 0 0 15px;
	text-align: justify;
}

.archive-page ul li,
.entry-content ul li {
	list-style-type: disc;
	margin: 0 0 0 30px;
	padding: 0;
	text-align: justify;
}

.entry-content ol li {
	margin: 0 0 0 35px;
}

.archive-page ul ul,
.entry-content ol ol,
.entry-content ul ul {
	padding: 0;
}

/* Images
------------------------------------------------------------ */

img {
	height: auto;
	max-width: 100%;
}

.avatar,
.featuredpage img,
.featuredpost img,
.post-image {
	background-color: #f5f5f5;
	border: 1px solid #ddd;
	padding: 4px;
}

.author-box .avatar {
	background-color: #fff;
	float: left;
	margin: 0 10px 0 0;
}

.post-image {
	margin: 0 10px 10px 0;
}

.comment-list li .avatar {
	background-color: #fff;
	float: left;
	margin: 5px 10px 10px 0px;
}

img.centered,
.aligncenter {
	display: block;
	margin: 0 auto 10px;
}

img.alignnone {
	display: inline;
	margin: 0 0 10px;
}

img.alignleft {
	display: inline;
	margin: 0 15px 10px 0;
}

img.alignright {
	display: inline;
	margin: 0 0 10px 15px;
}

.alignleft {
	float: left;
	margin: 0 15px 10px 0;
}

.alignright {
	float: right;
	margin: 0 0 10px 15px;
}

.wp-caption {
	padding: 0;
	text-align: center;
	width: auto !important;
}

p.wp-caption-text {
	font-size: 13px;
	margin: 5px 0;
	text-align: center;
}

.wp-smiley,
.wp-wink {
	border: none;
	float: none;
}

/* Post Navigation
------------------------------------------------------------ */

.pagination {
	font-size: 15px;
	overflow: hidden;
	padding: 20px 0;
	width: 100%;
	text-align: center;
}

.pagination li {
	display: inline-block;
}

.pagination li a,
.pagination li.disabled,
.pagination li a:hover,
.pagination li.active a {
    background: #f3f7fd;
    color: #333;
    width: 40px;
    height: 40px;
    align-items: center;
    text-align: center;
    display: inline-grid;
    border-radius: 100%;
}

.pagination li a:hover,
.pagination li.active a {
	background: #9ecf85;
	color: #fff;
}

/* Primary / Secondary Sidebars
------------------------------------------------------------ */

.sidebar {
	display: inline;
	float: right;
	width: 360px;
	margin-right: 15px;
}

.sidebar-secondary {
	float: left;
	width: 150px;
}

.sidebar-content .sidebar-primary,
.sidebar-sidebar-content .sidebar-primary {
	float: left;
	margin-left: 15px;
	margin-right: 0;
}

.content-sidebar-sidebar .sidebar-secondary {
	float: right;
}

.sidebar p {
	font-size: inherit;
}

.sidebar .widget {
	background-color: #fff;
	margin: 0 0 15px;
	padding: 0 0 15px;
	float: left;
	width: 100%;
}

.sidebar.widget-area ol,
.sidebar.widget-area ul,
.widget-area .textwidget,
.widget_tag_cloud div div {
	padding: 0 15px;
}

.sidebar.widget-area ul li,
.footer-widgets .widget-area ul li {
	border-bottom: 1px solid #ddd;
	list-style-type: none;
	margin: 0 0 7px;
	padding: 0 0 5px;
	word-wrap: break-word;
}

.sidebar.widget-area ul ul li {
	border: none;
	margin: 0;
}

/* Buttons
------------------------------------------------------------ */

input[type="button"],
input[type="submit"] {
	background: #9ecf85;
	cursor: pointer;
	padding: 10px 20px;
	color: #333;
	-webkit-appearance: none;
	border-radius: 100px;
}

input:hover[type="button"],
input:hover[type="submit"] {
	text-decoration: none;
}


/* Search Form
------------------------------------------------------------ */

.site-header .search-form {
	float: right;
	width: 100%;
}

.search-form input[type="search"] {
    flex: 1;
    border: 0;
    outline: 0;
    min-width: 0;
    font-size: 13px;
    color: #445869;
    background: transparent;
    padding: 0 15px;
    height: 40px;
    float: left;
}

/* Footer
------------------------------------------------------------ */

.content-after-footer{
	background: #f2f2f2;
	border-top: 1px solid #d6d6d6;
}

.content-after-footer p strong{
	color: #9ecf85;
}

.site-footer {
	float: left;
	clear: both;
	font-size: 15px;
	margin: 0 auto;
	overflow: hidden;
	width: 100%;
    background: #93b5cd;
    color: #fff;
	position: relative;
}

.site-footer .wrap {
	overflow: hidden;
	padding: 40px 0;
    display: grid;
    grid-template-columns: 2.5fr .8fr 1.05fr .8fr 1.5fr;
    gap: 38px;
    align-items: start;
}

.site-footer p {
	font-size: 15px;
	color:rgba(255,255,255,.92);
	margin: 0 0 10px;
}

.site-footer a,
.site-footer a:visited,
.content-after-footer ul li a{
	color:rgba(255,255,255,.92);
}

.site-footer a:hover,
.content-after-footer ul li a:hover{
	color: #fff;
	text-decoration: none;
}

.site-footer .widget .widgettitle{
    margin: 0 0 15px;
    font-size: 18px;
    letter-spacing: .04em;
    text-transform: uppercase;
    color: #fff;
	font-family: "Playfair Display", serif;
    font-weight: 500;
}

.site-footer .widget ul{
	list-style: none;
}

.site-footer .widget ul li{
	margin: 0 0 10px;
}

.site-footer .widget:first-child img{
	filter: brightness(0) invert(1);
	width: 160px;
}

.site-footer .widget:last-child img{
	width: 40px;
	display: inline-block;
	margin: 0;
}

.content-after-footer{
	float: left;
	width: 100%;
	background: #93b5cd;
	padding: 20px 0;
    border-top: 1px solid rgba(255, 255, 255, .35);
}

.content-after-footer p{
	color: #fff;
	float: left;
}

.content-after-footer ul{
	float: right;
	margin: 0;
	list-style: nonel
}

.content-after-footer ul li{
	display: inline-block;
	margin-left: 15px;
	color: #fff;
}

/* Comments
------------------------------------------------------------ */

.entry-comments,
#respond {
	margin: 0 0 15px;
	overflow: hidden;
	float: left;
	width: 100%;
}

#author,
#comment,
#email,
#url {
	margin: 10px 5px 0 0;
    padding: 10px;
    width: 348px;
    float: left;
    background: #fff;
}

#comment {
    height: 90px;
    margin: 10px 0;
    width: 98%;
    background: #fff;
}

input#submit {
    float: left;
}

.ping-list {
	margin: 0 0 40px;
}

.comment-list ol,
.ping-list ol {
	padding: 10px;
}

.comment-list li,
.ping-list li {
	font-weight: bold;
	list-style-type: none;
	margin: 15px 0 5px;
	padding: 10px 15px;
}

.comment-list li ul li {
	list-style-type: none;
	margin-right: 0;
	background: #fff;
}

.comment-content{
	padding-left: 70px;
}

.comment-content p {
	font-size: 15px;
	margin: 0 0 15px;
}

.comment-list cite,
.ping-list cite {
	font-style: normal;
}

.comment-meta {
	font-size: 12px;
	margin: 0 0 5px;
}

.comment-meta a{
	color: #666;
}

.comment-reply {
	font-size: 13px;
	font-weight: 300;
}

.comment-reply a{
	background: #f2f2f2;
	color: #333;
	padding: 5px 10px;
}

.nocomments {
	text-align: center;
}

.entry-comments .pagination {
	display: block;
}

.bypostauthor {
}

.thread-alt,
.thread-even {
	background-color: #f5f5f5;
}

.alt,
.depth-1,
.even {
	border: 1px solid #ddd;
}

/*Slick
-------------------------------------------------------------------*/
.slick-slider{
	position: relative;
	display: block;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	-webkit-touch-callout: none;
	-khtml-user-select: none;
	-ms-touch-action: pan-y;
	touch-action: pan-y;
	-webkit-tap-highlight-color: transparent;
}

.slick-list{
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus{
    outline: none;
}

.slick-list.dragging{
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list{
	-webkit-transform: translate3d(0, 0, 0);
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-o-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.slick-track{
	position: relative;
	top: 0;
	left: 0;
	display: block;
}

.slick-track:before,
.slick-track:after{
    display: table;
    content: '';
}

.slick-track:after{
    clear: both;
}

.slick-loading .slick-track{
    visibility: hidden;
}

.slick-slide{
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
	outline: none;
}

[dir='rtl'] .slick-slide{
    float: right;
}

.slick-slide img{
    display: block;
}

.slick-slide.slick-loading img{
    display: none;
}

.slick-slide.dragging img{
    pointer-events: none;
}

.slick-initialized .slick-slide{
    display: block;
}

.slick-loading .slick-slide{
    visibility: hidden;
}

.slick-vertical .slick-slide{
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}

.slick-dots{
    text-align: center;
    margin: 0 35px;
}

.slick-dots li{
	display: inline-block;
	width: 8px;
	height: 8px;
	margin-right: 5px;
	padding: 0;
	cursor: pointer;
}

.slick-dots li button{
    font-size: 0;
    line-height: 0;
    display: block;
    width: 8px;
    height: 8px;
    padding: 5px;
    border-radius: 100px;
    cursor: pointer;
    color: transparent;
    border: 0;
    outline: none;
	background: #636363;
}

.slick-dots li button:hover,
.slick-dots li button:focus,
.slick-dots li.slick-active button{
    background: #000;
}

.section{
	float: left;
	width: 100%;
}

.content-slider{
    position: relative;
    margin: 0 auto;
    overflow: hidden;
}

.content-slider .widget img{
	display: block;
	width: 100%;
	margin: 0;
}

.content-slider .widget .box{
	position: absolute;
    z-index: 2;
    width: 48%;
    width: 555px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    padding: 55px 70px;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
}

.content-slider .widget .title{
    margin: 0 0 18px;
    color: #c99b52;
    font-size: 14px;
    font-weight: 600;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.content-slider .widget p strong{
    margin: 0;
    color: #264a68;
    font-family: "Playfair Display", serif;
    font-size: 58px;
    line-height: 1.08;
    font-weight: 500;
    letter-spacing: -.02em;
}

.content-slider .widget p a{
    width: max-content;
    margin-top: 30px;
    display: inline-flex;
    align-items: center;
    gap: 28px;
    padding: 16px 22px;
    border-radius: 8px;
    background: #8eafc8;
    color: #fff;
    text-decoration: none;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: .03em;
    transition: .2s ease;
    text-transform: uppercase;
}

.content-slider .widget p a:hover{
	background: #c99b52;
}

.content-category .wrap,
.content-banner .wrap{
    display: grid;
    grid-template-columns: repeat(6, 1fr);
    gap: 15px;
}

.content-banner .wrap{
    grid-template-columns: repeat(3, 1fr);
}

.content-category .caia_code_widget,
.content-banner .caia_code_widget{
	grid-column: 1 / -1;
	margin: 60px 0 30px;
}

.content-banner .caia_code_widget{
	margin: 30px 0;	
}

.content-category .caia_code_widget .widgettitle,
.content-banner .caia_code_widget .widgettitle,
.content-product .widget .widgettitle,
.content-blog .widget .widgettitle,
.related-widgettitle{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-family: "Playfair Display", serif;
    font-size: 27px;
    font-weight: 600;
    letter-spacing: .02em;
    color: #24374b;
    text-align: center;
}


.related-widgettitle{
	margin: 30px 0;
}

.content-blog .widget .widgettitle h2,
.content-blog .widget .widgettitle a{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 15px;
    font-family: "Playfair Display", serif;
    font-size: 27px;
    font-weight: 600;
    letter-spacing: .02em;
    color: #24374b;
    text-align: center;	
}

.content-category .caia_code_widget .widgettitle span,
.content-banner .caia_code_widget .widgettitle span,
.content-product .widget .widgettitle span,
.content-blog .widget .widgettitle span,
.related-widgettitle span{
    color: #d6c08a;
    font-size: 17px;
}

.content-category .caia_code_widget .widgettitle::before, 
.content-category .caia_code_widget .widgettitle::after,
.content-banner .caia_code_widget .widgettitle::before, 
.content-banner .caia_code_widget .widgettitle::after,
.content-product .widget .widgettitle::before,
.content-product .widget .widgettitle:after,
.content-blog .widget .widgettitle::before,
.content-blog .widget .widgettitle:after,
.related-widgettitle:before,
.related-widgettitle:after{
    content: "";
    width: 70px;
    height: 1px;
    background: #d8b19b;
}

.content-category .image-upload{
	min-height:265px;
	padding:18px 12px 16px;
	border-radius:18px;
	text-decoration:none;
	color:inherit;
	display:flex;
	flex-direction:column;
	align-items:center;
	justify-content:flex-start;
	overflow:hidden;
	transition:transform .25s ease, box-shadow .25s ease;
}

.content-category .image-upload .widget-wrap,
.content-category .image-upload .mainposts{
    width:100%;
    height:100%;
    display:flex;
    flex:1;
    flex-direction:column;
}

.content-category .image-upload:hover{
	transform:translateY(-5px);
	box-shadow:0 14px 30px rgba(40,55,70,.12);
}

.content-category .image-upload .alignnone {
    width: 100%;
    height: 190px;
    min-height: 190px;
    flex: 0 0 190px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.content-category .image-upload img{
	width: 100%;
    height: 100%;
    max-width: 100%;
    max-height: 100%;
    object-fit: cover;
    display: block;
}

.content-category .image-upload .box{
    margin-top:auto;
}

.content-category .image-upload .title{
	min-height:50px;
	display:flex;
	align-items:center;
	justify-content:center;
	text-align:center;
	font-family: "Playfair Display", serif;
	font-size:20px;
	line-height:1.08;
	font-weight:500;
}

.content-category .image-upload .title a{
	font-family: "Playfair Display", serif;
	font-size:20px;
	line-height:1.08;
	font-weight:500;	
}

.content-category .image-upload .title span{
	margin-top:4px;
	display:flex;
	align-items:center;
	justify-content:center;
	gap:8px;
	font-style:normal;
	font-size:17px;
}

.content-category .image-upload .title span:before,
.content-category .image-upload .title span:after{
    width: 27px;
    height: 1px;
    background: currentColor;
    opacity: .6;
    content: "";
    display: inline-block;
}

.content-category .image-upload:nth-child(2){
	background:#edf3f8;
}

.content-category .image-upload:nth-child(2) .title a{
	color:#496d89;
}

.content-category .image-upload:nth-child(3){
	background:#fff0f2;
}

.content-category .image-upload:nth-child(3) .title a{
	color:#b54f68;
}

.content-category .image-upload:nth-child(4){
	background:#f2f6e9;
}

.content-category .image-upload:nth-child(4) .title a{
	color:#486f3e;
}

.content-category .image-upload:nth-child(5){
	background:#f1edf7;
}

.content-category .image-upload:nth-child(5) .title a{
	color:#65518a;
}

.content-category .image-upload:nth-child(6){
	background:#fff5d8;
}

.content-category .image-upload:nth-child(6) .title a{
	color:#b57b10;
}

.content-category .image-upload:nth-child(7){
	background:#f5eee6;
}

.content-category .image-upload:nth-child(7) .title a{
	color:#73553b;
}

.content-banner .image-upload{
    position: relative;
    display: block;
    overflow: hidden;
    height: 185px;
    border-radius: 14px;
    text-decoration: none;
    margin: 0 0 30px;
}

.content-banner .image-upload img {
    width: 100%;
    height: 185px;
    display: block;
    object-fit: cover;
    transition: transform .35s ease;
}

.content-banner .image-upload:hover img {
    transform: scale(1.03);
}

.content-banner .image-upload .box{
    position: absolute;
    left: 22px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 2;
}

.content-banner .image-upload .title,
.content-banner .image-upload .title a{
    margin: 0 0 16px;
    font-family: "Playfair Display", serif;
    font-size: 22px;
    line-height: 1.35;
    font-weight: 600;
    color: #29445d;
}

.content-banner .image-upload .title span{
	display: block;
}

.content-banner .image-upload .readmore{
    display: inline-block;
    padding: 8px 14px;
    background: #29445d;
    color: #fff;
    border-radius: 20px;
    font-size: 15px;
    font-weight: 700;
    transition: .25s;
}

.content-banner .image-upload:hover .readmore{
    background: #c99b52;
}

.content-policy .wrap{
    padding:24px 0;
    border-top:1px solid #eef1f4;
    border-bottom:1px solid #eef1f4;
    display:grid;
    grid-template-columns:repeat(4,1fr);
    align-items:center;
}

.content-policy .widget{
    min-height:58px;
    padding:0 28px;
    display:flex;
    align-items:center;
    gap:16px;
    position:relative;
}

.content-policy .widget .box{
	display: table;
}

.content-policy .widget:not(:last-child)::after{
    content:"";
    position:absolute;
    right:0;
    top:50%;
    transform:translateY(-50%);
    width:1px;
    height:38px;
    background:#e5e9ed;
}

.content-policy .widget img{
    width:38px;
    height:38px;
    display:block;
    stroke:currentColor;
    fill:none;
    stroke-width:1.6;
    stroke-linecap:round;
    stroke-linejoin:round;
}

.content-policy .widget .title{
    margin:0 0 4px;
    font-size: 15px;
    line-height:1.2;
    font-weight:700;
    text-transform:uppercase;
    color:#29445d;
    letter-spacing:.02em;
}

.content-policy .widget p{
    margin:0;
    font-size: 13px;
    line-height:1.35;
    color:#65798a;
}

.content-policy .widget{
    transition:transform .2s ease;
}

.content-policy .widget:hover{
    transform:translateY(-2px);
}

.content-product .widget{
	float: left;
	width: 100%;
	margin: 60px 0;
}

.content-product .widget .product-more{
	display: none;
}

.content-product .widget ul.product_list_widget{
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 22px;
    margin-top: 40px;
}

.content-product .widget ul.product_list_widget li.product_list_widget,
.class-product .content-area ul.products li,
.class-product main.content ul.products li{
    position: relative;
    min-width: 0;
}

.class-product .content-area ul.products li.product-category,
.class-product main.content ul.products li.product-category{
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
    align-items: center;
    gap: 45px;
    width: 100%;
    margin: 0 0 30px;
    padding: 28px;
    background: #f6f9fb;
    border-radius: 14px;
}

.class-product .content-area ul.products:has(li.product-category),
.class-product main.content ul.products:has(li.product-category){
    display: flex;
    flex-direction: column;
    gap: 0;
}

.class-product .content-area ul.products li.product-category > a,
.class-product main.content ul.products li.product-category > a{
    display: block;
    width: 100%;
    overflow: visible;
}

.class-product .content-area ul.products li.product-category > a > img,
.class-product main.content ul.products li.product-category > a > img{
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    margin: 0;
    border-radius: 10px;
    object-fit: cover;
}

.class-product .content-area ul.products li.product-category .product-category-gallery,
.class-product main.content ul.products li.product-category .product-category-gallery{
    display: flex;
    gap: 8px;
    width: 100%;
    margin-top: 10px;
    flex-wrap: nowrap;
    overflow-x: auto;
    overflow-y: hidden;
    padding-bottom: 8px;
    scrollbar-width: thin;
    scrollbar-color: #91b4cf #eaf0f4;
}

.class-product .content-area ul.products li.product-category .product-category-gallery img,
.class-product main.content ul.products li.product-category .product-category-gallery img{
    flex: 0 0 58px;
    width: 58px;
    height: 58px;
    aspect-ratio: 1 / 1;
    margin: 0;
    border-radius: 6px;
    object-fit: cover;
}

.class-product .content-area ul.products li.product-category .woocommerce-loop-category__title,
.class-product main.content ul.products li.product-category .woocommerce-loop-category__title{
    margin: 0;
    color: #29445d;
    font-family: "Playfair Display", serif;
    font-size: 22px;
    line-height: 1.25;
    text-align: center;
}

.class-product .content-area ul.products li.product-category mark.count,
.class-product main.content ul.products li.product-category mark.count{
    display: none;
}

.class-product .content-area ul.products li.product-category .product-category-details,
.class-product main.content ul.products li.product-category .product-category-details{
    min-width: 0;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.class-product .content-area ul.products li.product-category .product-category-actions,
.class-product main.content ul.products li.product-category .product-category-actions{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.class-product .content-area ul.products li.product-category .product-category-details .woocommerce-loop-category__title,
.class-product main.content ul.products li.product-category .product-category-details .woocommerce-loop-category__title{
    text-align: left;
}

.class-product .content-area ul.products li.product-category .product-category-description,
.class-product main.content ul.products li.product-category .product-category-description{
    width: 100%;
    max-width: 90%;
    overflow-wrap: anywhere;
    color: #5f7383;
    font-size: 15px;
    line-height: 1.8;
}

.class-product .content-area ul.products li.product-category .product-category-description p,
.class-product main.content ul.products li.product-category .product-category-description p{
    max-width: 90%;
    margin: 0;
    color: #60798a;
    font-size: 15px;
    line-height: 1.75;
    letter-spacing: .01em;
    text-align: justify;
}

.class-product .content-area ul.products li.product-category .product-category-gallery::-webkit-scrollbar,
.class-product main.content ul.products li.product-category .product-category-gallery::-webkit-scrollbar{
    height: 6px;
}

.class-product .content-area ul.products li.product-category .product-category-gallery::-webkit-scrollbar-track,
.class-product main.content ul.products li.product-category .product-category-gallery::-webkit-scrollbar-track{
    background: #eaf0f4;
    border-radius: 10px;
}

.class-product .content-area ul.products li.product-category .product-category-gallery::-webkit-scrollbar-thumb,
.class-product main.content ul.products li.product-category .product-category-gallery::-webkit-scrollbar-thumb{
    background: #91b4cf;
    border-radius: 10px;
}

.class-product .content-area ul.products li.product-category .product-category-button,
.class-product main.content ul.products li.product-category .product-category-button{
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 12px 24px;
    border-radius: 7px;
    background: #91b4cf;
    color: #fff;
    font-size: 14px;
    font-weight: 600;
    text-decoration: none;
    transition: background .2s ease;
}

.class-product .content-area ul.products li.product-category .product-category-button:hover,
.class-product main.content ul.products li.product-category .product-category-button:hover{
    background: #d6b76f;
}

.class-product .content-area ul.products li.product-category .product-category-button-secondary,
.class-product main.content ul.products li.product-category .product-category-button-secondary{
    background: #d6b76f;
}

.class-product .content-area ul.products li.product-category .product-category-button-secondary:hover,
.class-product main.content ul.products li.product-category .product-category-button-secondary:hover{
    background: #91b4cf;
}

.content-product .widget ul.product_list_widget li img,
.class-product .content-area ul.products li img,
.class-product main.content ul.products li img{
    position: relative;
    display: block;
    aspect-ratio: 1 / 1;
    border-radius: 12px;
    overflow: hidden;
    background: #f6f3ee;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transition: transform .3s ease;
    margin: 0 0 15px;
}

.content-product .widget ul.product_list_widget li a .onsale,
.class-product .content-area ul.products li a .onsale,
.class-product main.content ul.products li a .onsale{
    top: 10px;
    right: 10px;
    left: auto !important;
    background: #8eafc8;
}

.content-product .widget ul.product_list_widget li a .product-title,
.class-product .content-area ul.products li a h2.woocommerce-loop-product__title,
.class-product main.content ul.products li a h2.woocommerce-loop-product__title{
    color: #2f4050;
    font-weight: 400;
    font-size: 16px;
    text-decoration: none;
    display: block;
    margin: 0 0 5px;
    padding: 0;
}

.class-product .content-area ul.products li.product .price,
.class-product main.content ul.products li.product .price{
	margin: 0;
}

.content-product .widget ul.product_list_widget li .star-rating,
.class-product .content-area ul.products li .star-rating,
.class-product main.content ul.products li .star-rating{
    margin:0 0 10px;
    color:#d6b76f;
    font-size:12px;
}


.content-product .widget ul.product_list_widget li .amount,
.class-product .content-area ul.products li .amount,
.class-product main.content ul.products li .amount{
	font-size: 18px;
    font-weight: 700;
    color: #c99b52;
}

.content-product .widget ul.product_list_widget li del .amount,
.class-product .content-area ul.products li del .amount,
.class-product main.content ul.products li del .amount{
	font-size: 14px;
    font-weight: 400;
    color: #2f4050;
    margin-right: 15px;
}

.content-product .widget ul.product_list_widget li ins,
.class-product .content-area ul.products li ins,
.class-product main.content ul.products li ins{
	text-decoration: none;
}

.content-product .widget ul.product_list_widget li .ajax_add_to_cart,
.class-product .content-area ul.products li .ajax_add_to_cart,
.class-product main.content ul.products li .ajax_add_to_cart{
	background: #8eafc8;	
	color: #fff;
	width: calc(100% - 20px);
	text-align: center;
	font-weight: 700;
	margin: 15px 0 0;
	padding: 12px 10px;
}

.content-product .widget ul.product_list_widget li .ajax_add_to_cart:hover,
.class-product .content-area ul.products li .ajax_add_to_cart:hover,
.class-product main.content ul.products li .ajax_add_to_cart:hover{
	background: #c99b52;
}

.content-blog .widget{
	float: left;
	width: 100%;
	margin: 30px 0;
}

.content-blog .widget .widgettitle{
	margin: 0 0 30px;
}

.content-blog .widget .main-posts{
	float: left;
	width: 100%;
}

.content-blog .widget .post,
.class-new .content .post{
	float: left;
	width: 360px;
	margin: 20px 15px;
}

.content-blog .widget .post .alignnone,
.class-new .content .post .entry-image-link{
	display: block;
	width: 100%;
	border-radius: 10px;
	overflow: hidden;
	margin: 0 0 20px;
}

.content-blog .widget .post img,
.class-new .content .post img{
    display: block;
    margin: 0;
    border: none;
    aspect-ratio: 750/500;
    transition: all 1s ease;
    object-fit: cover;
    background: none;
    padding: 0;
    border: none;
    width: 100%;	
}

.content-blog .widget .post:hover img,
.class-new .content .post:hover img{
	transform: scale(1.05);
}


.content-blog .widget .post .widget-item-title,
.class-new .content .post h2{
	line-height: 1.3;
	margin: 0 0 10px;
}

.content-blog .widget .post .widget-item-title a,
.class-new .content .post h2 a{
	font-size: 18px;
	font-weight: 600;
	color: #333;
}

.content-blog .widget .post .more-link,
.class-new .content .post .more-link{
	display: table;
	font-size: 15px;
	margin: 10px 0 0;
	color: #8eafc8;
}

.content-blog .widget .post .widget-item-title a:hover,
.class-new .content .post h2 a:hover,
.content-blog .widget .post .more-link:hover,
.class-new .content .post .more-link:hover{
	color: #c99b52;
}

.class-product .content-area .woocommerce-ordering select,
.class-product main.content .woocommerce-ordering select{
    vertical-align: top;
    background: #fff;
    padding: 10px;
    border-radius: 10px;
    margin-bottom: 20px;
}

.class-product .content-area .woocommerce-result-count,
.class-product main.content .woocommerce-result-count{
    margin: 0 0 1em;
    margin: 20px 0;
}

h1.entry-title{
	font-size: 40px;
	color: #333;
	font-weight: 600;
	margin-bottom: 15px;
	line-height: 1.3;
}

.single .content .entry-content h2{
	font-size: 30px;
	color: #c99b52;
	font-weight: 600;
	margin-bottom: 15px;	
}

.single .content .entry-content h3{
	font-size: 24px;
	color: #8eafc8;
	font-weight: 600;
	margin-bottom: 15px;	
}

.single .content .entry-content iframe{
	display: table;
	margin: 0 auto 15px;
}

.single .content .entry-content .caldera-grid input{
	height: 50px;
}

.single .content .entry-content .caldera-grid input[type="submit"]{
	background: #8eafc8;
    padding: 15px 30px;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.3;	
    border: none;
    border-radius: 5px;
    height: auto;
}

.single .content .entry-content table{
	display: table;
	width: 100%;
}

.single .content .entry-content table,
.single .content .entry-content table td,
.single .content .entry-content table th{
    border-collapse: collapse;
    padding: 10px 15px;
    border: 1px solid #d6d6d6;
    text-align: left;
}

.info-author{
	text-align: right;
}

.woocommerce-product-gallery{
    width:100%;
}

.woocommerce-product-gallery__wrapper{
    margin:0;
}

/* ảnh lớn */
.woocommerce-product-gallery__image{
    border-radius:14px;
    overflow:hidden;
}

.woocommerce-product-gallery__image a{
    display:block;
}

.woocommerce-product-gallery__image img{
    width:100% !important;
    height:auto !important;
    display:block;
    object-fit:cover;
    aspect-ratio: 1 / 1;
}

.luna-product-thumbs{
    margin-top:14px;
}

.luna-thumb-item{
    padding:0 6px;
    cursor:pointer;
}

.luna-thumb-item img{
    width:100%;
    aspect-ratio:1/1;
    object-fit:cover;

    border:2px solid transparent;
    border-radius:8px;

    opacity:.65;

    transition:.2s ease;
}

.luna-thumb-item.slick-current img{
    opacity:1;
    border-color:#91b1c9;
}

.luna-thumb-item:hover img{
    opacity:1;
}

.single-product .woocommerce-tabs{
    margin: 30px 0;
}

.single-product .woocommerce-tabs ul.tabs{
    display:flex;
    flex-wrap:wrap;
    gap:8px;

    margin:0 0 28px !important;
    padding:0 !important;

    border:0 !important;
    background:none !important;
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs::after{
    display:none !important;
}

.single-product .woocommerce-tabs ul.tabs li{
    margin:0 !important;
    padding:0 !important;
    border:1px solid #dce5eb !important;
    border-radius:8px !important;
    background:#f6f9fb !important;
    box-shadow:none !important;
}

.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after{
    display:none !important;
}

.single-product .woocommerce-tabs ul.tabs li a{
    display:block;
    padding:12px 20px !important;
    color:#50697d !important;
    font-size:14px;
    font-weight:600 !important;
    text-decoration:none;
}

.single-product .woocommerce-tabs ul.tabs li.active{
    background:#91b1c9 !important;
    border-color:#91b1c9 !important;
}

.single-product .woocommerce-tabs ul.tabs li.active a{
    color:#fff !important;
}

.single-product .woocommerce-tabs ul.tabs li:hover{
    border-color:#91b1c9 !important;
}

.single-product .woocommerce-Tabs-panel{
    margin: 0 0 30px !important;
    padding: 26px 28px !important;
    background:#fff;
    border:1px solid #e5ebef;
    border-radius:12px;
    color:#42586a;
    line-height:1.7;
}

.single-product .woocommerce-Tabs-panel h2{
    margin:0 0 18px;
    color:#29445d;
    font-family: "Playfair Display", serif;
    font-size:22px;
    font-weight:600;
}

.single-product .woocommerce-Tabs-panel p{
    margin-bottom:14px;
    font-size:14px;
    line-height:1.75;
}

.single-product .woocommerce-product-attributes{
    width:100%;
    border-collapse:collapse;
}

.single-product .woocommerce-product-attributes th,
.single-product .woocommerce-product-attributes td{
    padding:13px 16px !important;
    border-bottom:1px solid #edf1f4 !important;
    text-align:left;
}

.single-product .woocommerce-product-attributes th{
    width:30%;
    background:#f7f9fb;
    color:#29445d;
    font-weight:600;
}

.single-product .woocommerce-product-attributes td{
    color:#5f7383;
}

.single-product #reviews{
    color:#42586a;
}

.single-product .woocommerce-noreviews{
    padding:14px 18px;
    background:#f6f9fb;
    border-radius:8px;
    color:#60798d;
}

.single-product #reply-title{
    display:block;
    margin:20px 0;
    color:#29445d;
    font-family: "Playfair Display", serif;
    font-size:21px;
}

.single-product .comment-form-rating{
    margin-bottom:18px;
}

.single-product .comment-form-rating > label{
    display:block;
    margin-bottom:8px;
    font-size:14px;
    font-weight:600;
    color:#29445d;
}

.single-product p.stars{
    margin:0 !important;
}

.single-product p.stars a{
    color:#d6b76f !important;
}


.single-product .comment-form-comment label{
    display:block;
    margin-bottom:8px;
    color:#29445d;
    font-size:14px;
    font-weight:600;
}

.single-product .comment-form-comment textarea{
    width:100%;
    min-height:150px;
    padding:14px;
    border:1px solid #dce5eb;
    border-radius:8px;
    background:#fff;
    color:#33495d;
    font-family:inherit;
    font-size:14px;
    resize:vertical;
    outline:none;
}

.single-product .comment-form-comment textarea:focus{
    border-color:#91b1c9;
    box-shadow:0 0 0 3px rgba(145,177,201,.12);
}

.single-product #review_form .form-submit{
    margin-top:18px;
}

.single-product #review_form .form-submit .submit{
    border:0 !important;
    border-radius:7px !important;
    padding:12px 25px !important;
    background:#91b1c9 !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:600 !important;
    cursor:pointer;
    transition:.2s ease;
}

.single-product #review_form .form-submit .submit:hover{
    background:#d6b76f !important;
}

.single-product #review_form #respond {
    position: unset !important;
    width: 100% !important;
}

.single-product #reviews .commentlist{
    margin:0;
    padding:0;
}

.single-product #reviews .commentlist li{
    margin:0 0 18px;
    list-style: none;
}

.single-product #reviews .comment_container{
    display:flex;
    gap:16px;
    padding:20px;
    background:#f9fbfc;
    border:1px solid #e4ebef;
    border-radius:12px;
}

.single-product #reviews .comment_container .avatar{
	display: none;
}

.single-product #reviews .comment-text{
    flex:1;
    margin:0 !important;
    padding:0 !important;
    border:0 !important;
}

.single-product #reviews .star-rating{
    float:none !important;
    margin:0 0 8px;
    color:#d6b76f;
    font-size:14px;
}

.single-product #reviews .meta{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:6px;
    margin:0 0 10px !important;
    font-size:13px;
    line-height:1.4;
    color:#7a8d9b;
}

.single-product #reviews .woocommerce-review__author{
    color:#29445d;
    font-size:14px;
    font-weight:700;
}

.single-product #reviews .woocommerce-review__dash{
    color:#b1bdc5;
}

.single-product #reviews .woocommerce-review__published-date{
    color:#8a9ca9;
}

.single-product #reviews .description{
    margin-top:8px;
}

.single-product #reviews .description p{
    margin:0;
    color:#42586a;
    font-size:14px;
    line-height:1.7;
}

.single-product #reviews .woocommerce-review__verified{
    margin-left:4px;
    color:#91b1c9;
    font-size:12px;
    font-style:normal;
}

.single-product #reviews .comment_container{
    transition:.2s ease;
}

.single-product #reviews .comment_container:hover{
    border-color:#cfdde6;
    box-shadow:0 8px 24px rgba(71,97,117,.08);
}

.single-product div.type-product span.onsale{
	top: 10px !important;
	left: 10px !important;
	background: #8eafc8 !important;
}

.single-product .summary{
    color:#29445d;
}

.single-product .summary .product_title{
    font-family:"Playfair Display", serif;
    font-size:30px;
    font-weight:600;
    line-height:1.3;
    color:#29445d;
    margin-bottom:14px;
}

.single-product .summary .price{
    margin-bottom:18px;
}

.single-product .summary .price .amount{
    color:#d3a13c !important;
    font-size:24px;
    font-weight:600;
}

.single-product .summary .price del .amount{
    font-size: 15px;
    font-weight: 400;
    color: #2f4050!important;
    margin-right: 15px;	
}

.single-product .summary .price ins{
	text-decoration: none;
}

.single-product .star-rating span{
	color:#d3a13c !important;
}

.single-product form.cart.cart-pen{
    display:block;
    margin:22px 0 24px;
}

.single-product form.cart.cart-pen .quantity{
    width:100%;
    margin:0 0 20px !important;
}

.single-product form.cart.cart-pen .quantity .qty,
.woocommerce-cart .quantity .qty{
    width:100px;
    height:56px;
    padding:0 12px;
    border:1px solid #d7e1e8;
    border-radius:8px;
    background:#fff;
    color:#29445d;
    font-size:16px;
    font-weight:500;
    text-align:center;
    -moz-appearance:auto;
    appearance:auto;
}

.woocommerce-cart .quantity .qty{
	height: 35px;
}

.single-product form.cart.cart-pen input[type="number"]::-webkit-inner-spin-button,
.single-product form.cart.cart-pen input[type="number"]::-webkit-outer-spin-button,
.woocommerce-cart .quantity input[type="number"]::-webkit-inner-spin-button,
.woocommerce-cart .quantity input[type="number"]::-webkit-outer-spin-button{
    opacity:1;
    display:block;
}

.single-product .row-btn-cart-product{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:12px;
    width:100%;
}

.single-product .row-btn-cart-product .button,
.single-product .row-btn-cart-product .add-to-cart-ajax-pen{

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    width:100%;
    min-height:58px;
    margin:0 !important;
    padding:0 18px !important;
    border:0 !important;
    border-radius:8px !important;
    font-size:16px !important;
    font-weight:600 !important;
    line-height:1 !important;
    text-align:center !important;
    text-decoration:none !important;
}

.single-product .row-btn-cart-product .add-to-pen1{
    background:#d8b96f !important;
    color:#fff !important;
}

.single-product .row-btn-cart-product .add-to-cart-ajax-pen{
    background:#91b1c9 !important;
    color:#fff !important;
    width:calc(100% - 36px);
}

.single-product .row-btn-cart-product .button:hover{
    opacity:.9;
}

.single-product .product_meta{
    flex-wrap:wrap;
    gap:12px 20px;
    margin-top:36px;
    padding-top:24px;
    border-top:1px solid #e8edf0;
}

.single-product .sku_wrapper{
    align-items:center;
    gap:6px;
    white-space:nowrap;
    color:#29445d;
    font-size:13px;
    font-weight:600;
}

.single-product .sku_wrapper .sku{
    color:#70879a;
    font-weight:400;
}

.single-product .posted_in{
    align-items:center;
    flex-wrap:wrap;
    gap:7px;
    flex:1;
    color:#29445d;
    font-weight:600;
    display: block;
    margin-bottom: 10px;
}

.single-product .posted_in a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#6f91aa;
    font-weight:500;
    line-height:1;
    text-decoration:none;
    transition:.2s ease;
}

.woocommerce-checkout {
    font-size: 16px;
    color: #172f46;
}

.woocommerce-checkout #customer_details {
    display: grid !important;
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 30px;
    align-items: start;
    width: 100%;
}

.woocommerce-checkout #customer_details > .col-1,
.woocommerce-checkout #customer_details > .col-2 {
    width: 100% !important;
    max-width: none !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-checkout #customer_details > .col-1 {
    grid-column: 1;
}

.woocommerce-checkout #customer_details > .col-2 {
    grid-column: 2;
}

.woocommerce-checkout
.woocommerce-billing-fields > h3,
.woocommerce-checkout
#ship-to-different-address {
    font-family: "Playfair Display", serif;
    font-size: 25px;
    line-height: 1.3;
    font-weight: 600;
    color: #17314b;
    margin: 0 0 28px;
    padding-bottom: 15px;
    border-bottom: 1px solid #e7edf2;
}

.woocommerce-checkout
.woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout
.woocommerce-shipping-fields__field-wrapper {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 20px 16px;
    width: 100%;
}

.woocommerce-checkout .form-row {
    width: 100% !important;
    float: none !important;
    clear: none !important;
    margin: 0 !important;
    padding: 0 !important;
}

.woocommerce-checkout .form-row-wide {
    grid-column: 1 / -1;
}

.woocommerce-checkout .form-row-first {
    grid-column: 1;
}

.woocommerce-checkout .form-row-last {
    grid-column: 2;
}

.woocommerce-checkout .form-row label {
    display: block;
    margin-bottom: 8px;
    color: #263b4f;
    font-size: 14px;
    font-weight: 500;
}

.woocommerce-checkout .required {
    color: #d6a64b;
    text-decoration: none;
}

.woocommerce-checkout .woocommerce-input-wrapper {
    display: block;
    width: 100%;
}

.woocommerce-checkout input.input-text,
.woocommerce-checkout textarea.input-text,
.woocommerce-checkout select {
    width: 100% !important;
    height: 48px;
    padding: 0 15px;
    background: #fff;
    border: 1px solid #dbe4eb;
    border-radius: 8px;
    color: #17314b;
    font-size: 15px;
    outline: none;
    box-shadow: none;
    transition:
        border-color .2s ease,
        box-shadow .2s ease,
        background .2s ease;
}

.woocommerce-checkout input.input-text:focus,
.woocommerce-checkout textarea.input-text:focus {
    background: #fff;
    border-color: #91b4cf;
    box-shadow:
        0 0 0 3px rgba(145, 180, 207, .14);
}

.woocommerce-checkout input::placeholder,
.woocommerce-checkout textarea::placeholder {
    color: #9aa8b5;
}

.woocommerce-checkout textarea.input-text {
    height: 120px;
    min-height: 120px;
    padding: 14px 15px;
    line-height: 1.6;
    resize: vertical;
}

.woocommerce-checkout .select2-container {
    width: 100% !important;
}

.woocommerce-checkout
.select2-container
.select2-selection--single {

    height: 48px;

    background: #fff;

    border: 1px solid #dbe4eb;
    border-radius: 8px;
}

.woocommerce-checkout
.select2-container
.select2-selection--single
.select2-selection__rendered {
    height: 46px;
    line-height: 46px;
    padding-left: 15px;
    color: #17314b;
    font-size: 15px;
}

.woocommerce-checkout
.select2-container
.select2-selection--single
.select2-selection__arrow {

    height: 46px;
    right: 10px;
}

.woocommerce-checkout
.select2-container--focus
.select2-selection--single,
.woocommerce-checkout
.select2-container--open
.select2-selection--single {
    border-color: #91b4cf;
    box-shadow:
        0 0 0 3px rgba(145, 180, 207, .14);
}

.woocommerce-checkout .woocommerce-shipping-fields {
    width: 100%;
}

.woocommerce-checkout #ship-to-different-address {
    width: 100%;
}

.woocommerce-checkout #ship-to-different-address label {
    display: flex;
    align-items: center;
    gap: 10px;
    margin: 0;
    cursor: pointer;
}

.woocommerce-checkout #ship-to-different-address-checkbox {
    width: 18px;
    height: 18px;
    accent-color: #91b4cf;
    cursor: pointer;
}

.woocommerce-checkout .shipping_address {
    width: 100% !important;
}

.woocommerce-checkout .woocommerce-additional-fields {
    width: 100%;
    margin-top: 25px;
}

.woocommerce-checkout
.woocommerce-additional-fields__field-wrapper {
    width: 100%;
}

.woocommerce-checkout #order_comments_field {
    width: 100% !important;
}

#order_review_heading {
    clear: both;
    margin: 35px 0 25px;
    color: #17314b;
    font-family: "Playfair Display", serif;
    font-size: 28px;
    font-weight: 600;
}

.woocommerce-checkout-review-order-table {
    overflow: hidden;
    background: #fff;
    border: 1px solid #e3e9ee !important;
    border-radius: 10px;
}

.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td {
    padding: 16px 18px !important;
    border-color: #edf1f4 !important;
}

.woocommerce-checkout-review-order-table thead th {
    background: #f5f9fc;
    color: #17314b;
    font-weight: 600;
}

.woocommerce-checkout-review-order-table .order-total {
    color: #17314b;
    font-size: 18px;
}

.woocommerce-checkout #payment {
    margin-top: 25px;
    padding: 25px;
    background: #f7fafc;
    border: 1px solid #e2eaf0;
    border-radius: 12px;
}

.woocommerce-checkout #payment ul.payment_methods {
    margin: 0;
    padding: 0;
    border: 0;
}

.woocommerce-checkout #payment .payment_box {
    margin-top: 12px;
    padding: 15px;
    background: #fff;
    border-radius: 8px;
}

.woocommerce-checkout #place_order {
    width: 100%;
    min-height: 54px;
    margin-top: 20px;
    padding: 14px 25px;
    background: #91b4cf;
    border: 0;
    border-radius: 8px;
    color: #fff;
    font-size: 16px;
    font-weight: 600;
    cursor: pointer;
    transition: .2s ease;
}

.woocommerce-checkout #place_order:hover {
    background: #d6b76f;
    color: #fff;
}

.woocommerce-checkout #payment ul.payment_methods li{
	list-style: none;
}

.woocommerce-checkout #payment ul.payment_methods {
	margin: 0 0 15px !important;
}

.woocommerce-checkout #payment ul.payment_methods {
	padding: 15px 20px !important;
	margin: 10px 0 !important;
	border-radius: 10px;
	background: #fff;
}

.woocommerce-cart button[name="update_cart"] {
    background: #91b4cf !important;
    color: #fff !important;
    border: none !important;
    border-radius: 6px;
    padding: 12px 24px;
    font-size: 15px;
    font-weight: 600;
    cursor: pointer;
    opacity: 1 !important;
}

.woocommerce-cart button[name="update_cart"]:not(:disabled):hover {
    background: #d6b76f !important;
    color: #fff !important;
}

.woocommerce-order-received .woocommerce{
    color:#29445d;
}

.woocommerce-order-received
.woocommerce-thankyou-order-received{
    margin:0 0 28px;
    padding:16px 20px;
    background:#eef7f1;
    border:1px solid #d7e9dc;
    border-radius:10px;
    color:#3f6f50;
    font-size:15px;
    font-weight:600;
}

.woocommerce-order-received
.woocommerce-order-overview{
    display:grid;
    grid-template-columns:repeat(5, minmax(0,1fr));
    gap:12px;
    margin:0 0 35px !important;
    padding:0 !important;
    list-style:none;
}

.woocommerce-checkout .woocommerce ul.order_details::after, 
.woocommerce-checkout .woocommerce ul.order_details::before,
.woocommerce-checkout .woocommerce .col2-set::after, 
.woocommerce-checkout .woocommerce .col2-set::before, 
.woocommerce-checkout .woocommerce-page .col2-set::after, 
.woocommerce-checkout .woocommerce-page .col2-set::before {
	display: none !important;
}

.woocommerce-order-received
.woocommerce-order-overview li{
    float:none !important;
    width:auto !important;
    margin:0 !important;
    padding:16px 18px !important;
    background:#f7fafc;
    border:1px solid #e1e9ef !important;
    border-radius:10px;
    color:#71879a;
    font-size:12px;
    line-height:1.5;
    text-transform:none !important;
}

.woocommerce-order-received
.woocommerce-order-overview li strong{
    display:block;
    margin-top:5px;
    color:#29445d;
    font-size:15px;
    font-weight:600;
}

.woocommerce-order-received
.woocommerce-order-details__title,
.woocommerce-order-received
.woocommerce-column__title{
    margin:0 0 18px;
    font-family:"Playfair Display", serif;
    font-size:22px;
    font-weight:600;
    color:#29445d;
}

.woocommerce-order-received
.woocommerce-order-details{
    margin-top:35px;
}

.woocommerce-order-received
.woocommerce-table--order-details{
    width:100%;
    margin:0 0 35px;
    border:1px solid #e1e9ef !important;
    border-radius:12px;
    border-collapse:separate !important;
    border-spacing:0;
    overflow:hidden;
    background:#fff;
}

.woocommerce-order-received
.woocommerce-table--order-details thead th{
    padding:15px 18px !important;
    background:#f5f9fc;
    color:#29445d;
    font-size:14px;
    font-weight:600;
    border-bottom:1px solid #e3eaf0 !important;
}

.woocommerce-order-received
.woocommerce-table--order-details td{
    padding:16px 18px !important;
    color:#42586a;
    border-bottom:1px solid #edf1f4 !important;
}

.woocommerce-order-received
.woocommerce-table--order-details a{
    color:#29445d;
    font-weight:600;
    text-decoration:none;
}

.woocommerce-order-received
.woocommerce-table--order-details a:hover{
    color:#91b4cf;
}

.woocommerce-order-received
.product-quantity{
    color:#71879a;
    font-weight:500;
}

.woocommerce-order-received
.woocommerce-table--order-details tfoot th,
.woocommerce-order-received
.woocommerce-table--order-details tfoot td{
    padding:13px 18px !important;
    background:#fbfcfd;
    border-bottom:1px solid #edf1f4 !important;
}

.woocommerce-order-received
.woocommerce-table--order-details tfoot th{
    color:#29445d;
    font-weight:600;
}

.woocommerce-order-received
.woocommerce-table--order-details tfoot td{
    color:#42586a;
}

.woocommerce-order-received
.woocommerce-table--order-details tfoot tr:last-child th,
.woocommerce-order-received
.woocommerce-table--order-details tfoot tr:last-child td{
    border-bottom:0 !important;
}

.woocommerce-order-received
.woocommerce-table--order-details
.woocommerce-Price-amount{
    color:#d2a13d;
    font-weight:600;
}

.woocommerce-order-received .shipped_via{
    color:#8a9aa7;
    font-size:11px;
}

.woocommerce-order-received
.woocommerce-columns--addresses{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
    margin-top:30px;
}

.woocommerce-order-received
.woocommerce-columns--addresses .col-1,
.woocommerce-order-received
.woocommerce-columns--addresses .col-2{
    float:none !important;
    width: calc(100% - 50px) !important;
    margin:0 !important;
}

.woocommerce-order-received
.woocommerce-columns--addresses
.woocommerce-column{
    padding:24px;
    background:#f7fafc;
    border:1px solid #e1e9ef;
    border-radius:12px;
}

.woocommerce-order-received
.woocommerce-columns--addresses address{
    margin:0;
    padding:0 !important;
    border:0 !important;
    color:#5e7383;
    font-size:14px;
    line-height:1.8;
    font-style:normal;
}

.woocommerce-order-received
.woocommerce-customer-details--phone,
.woocommerce-order-received
.woocommerce-customer-details--email{
    margin:12px 0 0 !important;
    color:#29445d;
    font-size:13px;
    font-weight:500;
}

.luna-order-check__head{
    margin-bottom:35px;
}

.luna-order-check__head h1{
    margin:0 0 10px;
    font-family:"Playfair Display", serif;
    font-size:32px;
    font-weight:600;
    color:#29445d;
}

.luna-order-check__head p{
    color:#71879a;
    font-size:14px;
}

.luna-order-check__form{
    display:grid;
    grid-template-columns:1fr 1fr auto;
    gap:15px;
    align-items:end;
    margin:0 auto 40px;
    padding:25px;
    background:#f7fafc;
    border:1px solid #e1e9ef;
    border-radius:12px;
}

.luna-order-field label{
    display:block;
    margin-bottom:7px;
    color:#29445d;
    font-size:13px;
    font-weight:600;
}

.luna-order-field input{
    width: calc(100% - 30px);
    height:48px;
    padding:0 14px;
    border:1px solid #d9e4eb;
    border-radius:7px;
    background:#fff;
    color:#29445d;
    outline:none;
}

.luna-order-field input:focus{
    border-color:#91b4cf;
    box-shadow:
        0 0 0 3px rgba(145,180,207,.12);
}

.luna-order-check__form button{
    height:48px;
    padding:0 25px;
    border:0;
    border-radius:7px;
    background:#91b4cf;
    color:#fff;
    font-weight:600;
    cursor:pointer;
}

.luna-order-check__form button:hover{
    background:#d6b76f;
}

.luna-order-message{
    max-width:900px;
    margin:20px auto;
    padding:15px 18px;
    border-radius:8px;
}

.luna-order-message.error{
    background:#fff1f1;
    color:#a04444;
}

.luna-order-result{
    margin-top:35px;
}

.luna-order-summary{
    display:grid;
    grid-template-columns:repeat(4,1fr);
    gap:15px;
    margin-bottom:25px;
}

.luna-order-summary > div{
    padding:18px;
    background:#f7fafc;
    border:1px solid #e1e9ef;
    border-radius:10px;
}

.luna-order-summary span{
    display:block;
    margin-bottom:6px;
    color:#71879a;
    font-size:12px;
}

.luna-order-summary span.amount,
.luna-order-summary span span{
	display: inline-block;
	color: #29445d;
	font-weight: 700;
	font-size: 16px;
}

.luna-order-summary strong{
    color:#29445d;
}

.luna-order-box{
    margin-bottom:20px;
    padding:24px;
    background:#fff;
    border:1px solid #e1e9ef;
    border-radius:12px;
}

.luna-order-box h2{
    margin:0 0 18px;
    font-family:"Playfair Display", serif;
    font-size:20px;
    color:#29445d;
    font-weight: 600;
}

.luna-order-product{
    display:grid;
    grid-template-columns:75px 1fr auto;
    gap:15px;
    align-items:center;
    padding:14px 0;
    border-bottom:1px solid #edf1f4;
}

.luna-order-product:last-child{
    border-bottom:0;
}

.luna-order-product__image img{
    width:70px;
    height:70px;
    object-fit:cover;
    border-radius:7px;
}

.luna-order-product__info h3{
    margin:0 0 5px;
    font-size:15px;
    font-weight:600;
    color:#29445d;
}

.luna-order-product__info span{
    color:#71879a;
    font-size:12px;
}

.luna-order-product__price{
    color:#29445d;
    font-weight:600;
}

.luna-order-total-row{
    display:flex;
    justify-content:space-between;
    padding:10px 0;
    border-bottom:1px solid #edf1f4;
}

.luna-order-total-row.total{
    margin-top:5px;
    padding-top:15px;
    border-bottom:0;
    font-size:18px;
    color:#29445d;
}

.luna-order-columns{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:20px;
}

.luna-address{
    line-height:1.7;
    color:#5f7383;
}

.content-form .wrap{
    margin: 30px auto;
    min-height: 150px;
    display: grid;
    grid-template-columns: 1.15fr 1.35fr .55fr;
    align-items: center;
    gap: 28px;
    padding: 28px 34px;
    border-radius: 18px;
    overflow: hidden;
    position: relative;
    background: radial-gradient(circle at 15% 15%, rgba(255, 255, 255, .9), transparent 28%), linear-gradient(90deg, #eaf5fb 0%, #dcecf7 48%, #d9ecf7 100%);
    border: 1px solid rgba(111, 138, 156, .16);
}

.content-form .widget_text .widgettitle{
    margin: 0 0 8px;
    font-family: "Playfair Display", Georgia, serif;
    font-size: 28px;
    line-height: 1.15;
    font-weight: 600;
    letter-spacing: .02em;
    color: #29445d;
}

.content-form .widget_text p {
    margin: 0;
    max-width: 420px;
    color: #5f7383;
    font-size: 14px;
    line-height: 1.6;
}

.content-form .widget_caldera_forms_widget form{
    width: 100%;
    max-width: 560px;
    background: #fff;
    border: 1px solid #d2e0ea;
    border-radius: 10px;
    overflow: hidden;
    box-shadow: 0 6px 20px rgba(41, 68, 93, .06);
}

.content-form .widget_caldera_forms_widget .caldera-grid .form-group {
    margin-bottom: 0;
}

.content-form .widget_caldera_forms_widget input {
    flex: 1;
    min-width: 0;
    height: 52px;
    border: 0;
    outline: none;
    padding: 0 18px;
    font-size: 14px;
    color: #29445d;
    background: #fff;
}

.content-form .widget_caldera_forms_widget input[type="submit"]{
    min-width: 100%;
    height: 52px;
    padding: 0 20px;
    border: 0;
    background: #91b4cf;
    color: #fff;
    font-size: 12px;
    font-weight: 700;
    letter-spacing: .04em;
    cursor: pointer;
    transition: .2s ease;
}

.content-form .widget_caldera_forms_widget input[type="submit"]:hover {
    background: #d6b76f;
}

.luna-product-video-slide {
    width: 100%;
    position: relative;
}

.luna-product-video-slide video {
    display: block;
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: cover;
    background: #000;
}

.luna-video-thumb {
    position: relative;
    cursor: pointer;
    overflow: hidden;
}

.luna-video-thumb img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.luna-video-thumb:after {
    content: "▶";
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    width: 38px;
    height: 38px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background: rgba(0,0,0,.65);
    color: #fff;
    font-size: 16px;
    pointer-events: none;
}