/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/
h1,
h2,
h3,
h4,
h5,
h6 {
	color: #292561;
	font-weight: 400;
	line-height: 1.5;
	margin: 0 0 30px 0;
	font-family: 'Kanit', sans-serif!important;
}

::selection {
    background: #292561;
    color: #FFF;
    text-shadow: none;
}
::-moz-selection {
	background: #292561; /* Firefox */
	color: #FFF;
	text-shadow: none;
}
::-webkit-selection {
	background: #292561; /* Safari */
	color: #FFF;
	text-shadow: none;
}

.menu-link {
	display: block;
	line-height: 22px;
	padding: 14px 15px;
	color: #444;
	font-weight: 400;
	font-size: 0.85rem;
	letter-spacing: 0px;
	text-transform: uppercase;
	font-family: 'Kanit', sans-serif;
}

.menu-item:hover > .menu-link,
.menu-item.current > .menu-link {
	color: #292561;
}

.fbox-content p {
    margin-top: 0.5rem;
    margin-bottom: 0px;
    color: #999;
}

body {
    line-height: 1.5;
    color: #555;
	font-family: 'Kanit', sans-serif;
	font-size: 0.85rem;
	font-weight: 200;
	text-align: left;
}

.font-body { font-family: 'Kanit', sans-serif; }
.font-primary { font-family: 'Kanit', sans-serif; }
.font-secondary { font-family: 'Kanit', sans-serif; }

.media-box {
    padding: 0 0 30px 0;
}

.portfolio-desc h3 {
    margin: 0;
    padding: 0;
    font-size: 1rem;
	text-transform: uppercase;
	font-weight: 400;
}

.header-misc-element, .header-misc-icon {
    margin: 0 15px;
}
.slider-caption h2 {
    font-size: 3rem;
    letter-spacing: 0px;
    text-transform: none;
    font-weight: 500;
    line-height: 1;
    margin-bottom: 0;
}

.heading-block h1 + span { font-size: 1.25rem; }
.heading-block h2 + span { font-size: 1.15rem; }
.heading-block h3 + span,
.heading-block h4 + span { font-size: 1rem; }
.heading-block::after {
	content: '';
	display: block;
	margin-top: 30px;
	width: 40px;
	border-top: 2px solid #D4D4D4;
}

.heading-block h3 {
    font-size: 1.5rem;
}

.dark .i-rounded,
.dark .i-circled {
	background-color: #292561;
}

#footer .footer-widgets-wrap {
	position: relative;
	padding: 50px 0 30px 0;
}

.button {
	display: inline-block;
	position: relative;
	cursor: pointer;
	outline: none;
	white-space: nowrap;
	margin: 5px;
	padding: 8px 22px;
	font-size: 0.875rem;
	line-height: 24px;
	background-color: #292561;
	color: #FFF;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 0px;
	border: none;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.2);
}

#copyrights {
    padding: 25px 0;
    background-color: #292561;
    font-size: 0.8rem;
    line-height: 1.8;
    color: #DDD;
}

.copyright-links a {
    display: inline-block;
    margin: 0 3px;
    color: #EEE;
    border-bottom: 1px dotted #444;
	font-size: 0.8rem;
}

.entry-title h2,
.entry-title h3{
	margin: 0;
	font-size: 1.5rem;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0px;
}

.entry-title h4 {
	margin: 0;
	font-size: 1rem;
	font-weight: 400;
	text-transform: none;
	letter-spacing: 0px;
}

.entry-title h2 a, .entry-title h3 a, .entry-title h4 a {
    color: #292561;
}

.post-grid .entry-title h2 {
    font-size: 1rem;
    letter-spacing: 0;
    font-weight: 500;
}

.entry-content {
    margin-top: 20px;
}

.btn-outline-secondary {
    color: #292561;
    border-color: #292561;
}

.btn-outline-dark {
    color: #292561;
    border-color: #292561;
}

.entry-title h2 a:hover,
.entry-title h3 a:hover,
.entry-title h4 a:hover { color: #777; }

#gotoTop {
	display: none;
	z-index: 599;
	position: fixed;
	width: 40px;
	height: 40px;
	background-color: #292561;
	background-color: #29256149;
	font-size: 1.25rem;
	line-height: 36px;
	text-align: center;
	color: #FFF;
	top: auto;
	left: auto;
	right: 30px;
	bottom: 90px;
	cursor: pointer;
	border-radius: 20px;
}
.stretched #gotoTop { bottom: 30px; }
#gotoTop:hover { background-color: #292561; }

#page-title h1 {
    padding: 0;
    margin: 0;
    line-height: 1;
    font-weight: 400;
    letter-spacing: 0px;
    color: #333;
    font-size: 1.75rem;
    text-transform: none;
}

#footer {
    position: relative;
    background-color: #EEE;
    border-top: 0px solid rgba(0,0,0,0.2);
}

.title-bottom-border::before,
.title-bottom-border::after {
	display: none;
}

.title-bottom-border h1,
.title-bottom-border h2,
.title-bottom-border h3,
.title-bottom-border h4,
.title-bottom-border h5,
.title-bottom-border h6 {
	width: 100%;
	padding: 0 0 0.75rem;
	border-bottom: 1px solid #EEE;
}

.owl-carousel .owl-dots .owl-dot {
	display: inline-block;
	zoom: 1;
	width: 8px;
	height: 8px;
	margin: 30px 4px 0 4px;
	opacity: 0.5;
	border-radius: 50%;
	background-color: #292561;
	-webkit-transition: all .3s ease;
	-o-transition: all .3s ease;
	transition: all .3s ease;
}

.button.button-3d {
	border-radius: 3px;
	box-shadow: inset 0 -3px 0 rgba(0,0,0,0.15);
	-webkit-transition: none;
	-o-transition: none;
	transition: none;
}

.button.button-3d:hover {
	background-color: #999;
	opacity: 0.9;
}
.slider-caption p {
	margin-top: 15px;
	margin-bottom: 10px;
	font-size: 1.5rem;
	font-family: 'Kanit', sans-serif;
}

h1 > span:not(.nocolor):not(.badge),
h2 > span:not(.nocolor):not(.badge),
h3 > span:not(.nocolor):not(.badge),
h4 > span:not(.nocolor):not(.badge),
h5 > span:not(.nocolor):not(.badge),
h6 > span:not(.nocolor):not(.badge) { color: #292561; }

.fbox-content h3 span.subtitle {
    display: block;
    margin-top: 5px;
    color: #444;
    font-weight: 300;
    text-transform: none;
}

.fbox-plain .fbox-icon i,
.fbox-plain .fbox-icon img {
	border: none;
	background-color: transparent !important;
	color: #292561;
	border-radius: 0;
}

.sm-form-control {
	display: block;
	width: 100%;
	height: 38px;
	padding: 8px 14px;
	font-size: 14px;
	line-height: 1.42857143;
	color: #555555;
	background-color: #ffffff;
	background-image: none;
	border: 1px solid #DDD;
	border-radius: 5px !important;
	-webkit-transition: border-color ease-in-out .15s;
	-o-transition: border-color ease-in-out .15s;
	transition: border-color ease-in-out .15s;
}

.widget > h4 {
    margin-bottom: 25px;
    font-size: 15px;
    font-weight: 400;
    letter-spacing: 0px;
    text-transform: uppercase;
}

.fbox-content h3 {
    font-size: 1rem;
    font-weight: 400;
    font-family: 'Kanit', sans-serif;
    text-transform: none;
    margin-bottom: 0;
    color: #333;
}

.heading-block h1,
.heading-block h2,
.heading-block h3,
.heading-block h4,
.emphasis-title h1,
.emphasis-title h2 {
	margin-bottom: 0;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 0px;
	color: #333;
}

.team-title h4 {
    display: block;
    margin-bottom: 0;
    font-size: 1.25rem;
    text-transform: none;
    letter-spacing: 0px;
    font-weight: 500;
}

.i-rounded:hover,
.i-circled:hover {
	background-color: #292561;
	color: #FFF;
	text-shadow: 1px 1px 1px rgba(0,0,0,0.3);
	box-shadow: 0 0 0 rgba(0,0,0,0.2);
}
.promo h3 {
	font-weight: 500;
	margin-bottom: 0;
}

.portfolio-desc h3 a:hover {
    color: #292561;
}

blockquote {
	padding: 10px 20px;
	margin: 0 0 20px;
	font-size: 1rem;
	border-left: 5px solid #EEE;
	font-style: italic;
}

.icon-color {background-color: #292561;}

.heading-block h1, .heading-block h2, .heading-block h3, .heading-block h4, .emphasis-title h1, .emphasis-title h2 {
    margin-bottom: 0;
    font-weight: 400;
    text-transform: none;
    letter-spacing: 0px;
    color: #292561;
}

.portfolio-desc h3 a:hover {color: #292561;}

a {
    text-decoration: none !important;
    color: #292561;
}

.grid-filter-wrap {
	display: -ms-flexbox;
	display: flex;
	justify-content: center;
}

.grid-filter li a:hover { color: #555; }

.grid-filter li.activeFilter a {
	color: #FFF;
	background-color: #292561;
	margin: 0;
	font-weight: 500;
}

.team-title span {
	display: block;
	color: #292561;
	font-weight: 300;
	font-family: 'Kanit', sans-serif;
	font-style: italic;
	font-size: 1rem;
	margin-top: 5px;
}

.portfolio-desc h3 a {
	color: #292561;
}

.portfolio-item .portfolio-image,
.portfolio-item .portfolio-image > a,
.portfolio-item .portfolio-image img {
	display: block;
	width: 100%;
	height: auto;
	border-radius: 0px;
}

#copyrights a:first-child { 
	margin-left: 0;
	color: #FFF;
 }

.widget_nav_menu li,
.widget_links li,
.widget_meta li,
.widget_archive li,
.widget_recent_comments li,
.widget_recent_entries li,
.widget_categories li,
.widget_pages li,
.widget_rss li {
	display: flex;
	padding: 2px 0;
	font-size: 14px;
}

.widget {
    position: relative;
    margin-top: 35px;
}

.button.button-border:not(.button-fill):hover {
    background-color: #292561;
    color: #FFF;
    border-color: transparent !important;
    text-shadow: 1px 1px 1px rgb(0 0 0 / 20%);
}

.button.button-border {
    background-color: transparent;
    font-weight: 400;
    text-shadow: none;
}

.top-links-item > a {
    display: block;
    padding: 12px;
    font-size: 0.75rem;
    line-height: 20px;
    font-weight: 400;
    text-transform: uppercase;
    color: #FFF;
}

#top-social a {
    display: -ms-flexbox;
    display: flex;
    width: auto;
    overflow: hidden;
    font-weight: bold;
    color: #FFF;
}

.top-links-item:hover {
    background-color: #055732;
	color: #FFF;
}

.portfolio-single-content h2 {
    margin: 0px;
    padding: 0 0 5px;
    font-size: 1.5rem;
    font-weight: 400 !important;
}

.fancy-title {
    position: relative;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 0.5rem;
}

.tab-nav li a {
    display: block;
    padding: 0 15px;
    color: #444;
    height: 40px;
    line-height: 40px;
    background-color: #F2F2F2;
    font-weight: 400;
}

.sidebar-widgets-wrap .widget > h4 {
    letter-spacing: 0px;
}

label {
	display: inline-block;
	font-size: 13px;
	font-weight: 400;
	font-family: 'Kanit', sans-serif;
	text-transform: uppercase;
	letter-spacing: 0px;
	color: #777;
	margin-bottom: 10px;
	cursor: pointer;
}

#content p {
    line-height: 1.5;
}

.text-white {color: #FFF !important;}

.clients-grid .grid-item a { opacity: 1; }
.clients-grid .grid-item a:hover { opacity: 0.6; }

#page-title span {
    display: block;
    margin-top: 10px;
    font-weight: 200;
    color: #777;
    font-size: 16px;
}

/* ====== dark css ====== */
.dark #footer, #footer.dark {
    color: rgba(255,255,255,0.75);
    background-color: #292561;
    border-top-color: rgba(255,255,255,0.15);
}

.dark .widget_nav_menu li a, .dark .widget_links li a, .dark .widget_meta li a, .dark .widget_archive li a, .dark .widget_recent_entries li a, .dark .widget_categories li a, .dark .widget_pages li a, .dark .widget_rss li a, .dark .widget_recent_comments li a {
    color: rgb(255, 255, 255);
}

.dark .footer-widgets-wrap a {
    color: rgba(255,255,255);
}

.dark, .dark h1, .dark h2, .dark h3, .dark h4, .dark h5, .dark h6 {
    color: #FFF;
}

.dark .button.button-border:not(.button-light):not(.button-fill) {
    border-color: #FFF;
    color: #FFF;
}

 /* ====== fonts css ====== */
 body,
small,
.sub-menu-container .menu-item > .menu-link,
.wp-caption,
.fbox-center.fbox-italic p,
.skills li .progress-percent .counter,
.nav-tree ul ul a,
.font-body,
.entry-link span,
.entry blockquote p,
.more-link,
.comment-content .comment-author span,
.comment-content .comment-author span a,
.button.button-desc span,
.testi-content p,
.team-title span,
.before-heading,
.wedding-head .first-name span,
.wedding-head .last-name span,
.font-secondary { font-family: 'Kanit', sans-serif !important; }

 h1,
 h2,
 h3,
 h4,
 h5,
 h6,
 #logo a,
 .menu-link,
 .mega-menu-style-2 .mega-menu-title > .menu-link,
 .top-search-form input,
 .entry-link,
 .entry.entry-date-section span,
 .button.button-desc,
 .fbox-content h3,
 .tab-nav-lg li a,
 .counter,
 label,
 .widget-filter-links li a,
 .nav-tree li a,
 .wedding-head,
 .font-primary { font-family: 'Kanit', sans-serif !important; }


 /* ======= construction css ======= */
 #top-bar {
    background-color: #055732;
}
.top-links-sub-menu .top-links-item > a {
    font-size: 11px;
    background: #066732;
}
 #header {
    background-color: #EBEBEB;
}
 .header-extras li .he-text {
    padding-left: 15px;
    font-weight: 300;
    font-size: 12px;
    line-height: 16px;
    color: #888;
    text-transform: uppercase;
    letter-spacing: 0px;
}

.header-extras li .he-text span {
    font-weight: 400;
    text-transform: none;
    font-size: 16px;
    line-height: 24px;
    letter-spacing: 0;
}

.footer-big-contacts {
    color: #FFF;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: 0px;
	line-height: 1.3;
}

.footer-big-contacts span {
    display: block;
    font-size: 11px;
    font-weight: 300;
    text-transform: uppercase;
    color: #888;
    letter-spacing: 0px;
}

.dark .footer-big-contacts {
    color: rgba(255,255,255);
}