/*
Theme Name: Will Group
Theme URI: https://willgroup.net
Author: Vo Vuong	
Author URI: https://willgroup.net
Description: One for All from Will Group
Version: 1.0.0
Text Domain: willgroup
*/

/*--------------------------------------------------------------
>>> TABLE OF CONTENTS:
----------------------------------------------------------------
# Global
# Typography
# Elements
# Forms
# Navigation
	## Links
	## Menus
# Accessibility
# Alignments
# Clearings
# Widgets
# Content
	## Posts and pages
	## Comments
# Infinite scroll
# Media
	## Captions
	## Galleries
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# Layout
--------------------------------------------------------------*/
@media (min-width: 768px) {
	.row {
		margin-left: -30px;
		margin-right: -30px;
	}
	.container,
	[class*="col-"] {
		padding-left: 30px;
		padding-right: 30px;
	}	
}
@media (min-width: 1200px) {
	.container {
		max-width: 1260px;
	}
}

.row-small {
	margin-left: -15px;
	margin-right: -15px;
}
.col-small {
	padding-left: 15px;
	padding-right: 15px;
}

@media (max-width: 767px) {
	#wpadminbar {
		position: fixed !important;
	}
}

/*--------------------------------------------------------------
# Global
--------------------------------------------------------------*/
body {
	font-family: Arial, sans-serif;
   	line-height: 1.75;
}
* {
	outline: none !important;
}
img {
	max-width: 100%;
	height: auto;
}
iframe {
	display: block;
	max-width: 100%;
	margin: 0 auto;
}
a {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
a:hover {
	text-decoration: none;
}
b, strong {
	font-weight: 700;
}
button {
	cursor: pointer;
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
small, 
.small {
	font-size: 87.5%;
}
.font-size-body {
	font-size: 1rem !important;
}
.text-muted {
	color: #999 !important;
}
.bg-secondary {
	background-color: #66B562 !important;
}
.bg-cover {
	background-color: #CFD4DB;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.svg {
	height: 0.875rem;
}
.svg-6 {
	height: 1rem;
}
.svg-5 {
	height: 1.25rem;
}
.svg-white {
	fill: #FFF;
}
@media (min-width: 992px) {
	.lead {
		font-size: 1.375rem;
	}
}
@media (max-width: 991px) {
	h1, .h1 {
		font-size: 1.625rem;
	}
	h2, .h2 {
		font-size: 1.5rem;
	}
	h3, .h3 {
		font-size: 1.375rem;
	}
	h4, .h4 {
		font-size: 1.25rem;
	}
	h5, .h5 {
		font-size: 1.125rem;
	}
	.display-4 {
		font-size: 2rem;
	}
}

/*--------------------------------------------------------------
# Form
--------------------------------------------------------------*/
.form-control::-webkit-input-placeholder { 
	color: #898989;
}
.form-control::-moz-placeholder {
	color: #898989;
}
.form-control:-ms-input-placeholder { 
	color: #898989;
}
.form-control:-moz-placeholder { 
	color: #898989;
}
.required {
	color: #F15A29;
}
.form-control,
.custom-select,
.btn {
	-webkit-transition: all 0.3s ease 0s;
	-moz-transition: all 0.3s ease 0s;
	transition: all 0.3s ease 0s;
}
.form-control,
.custom-select {
	height: calc(1.5em + 1.5rem + 2px);
	padding-top: 0.75rem;
	padding-bottom: 0.75rem;
}
.btn {
	font-weight: 700;
	text-transform: uppercase;
	padding: 0.75rem 1rem;
}
.btn-primary svg,
.btn-primary:not(:disabled):not(.disabled):active:focus svg {
	fill: #fff;
}
.btn-light,
.btn-light:not(:disabled):not(.disabled):active:focus {
	color: #212529;
	background-color: #F0F2F5;
	border-color: #F0F2F5;
}

/*--------------------------------------------------------------
# Table
--------------------------------------------------------------*/
.table th,
.table td {
	padding: 0.625rem;
}
.table th {
	font-size: 1rem;
	font-weight: 600;
}

/*--------------------------------------------------------------
# Breadcrumb
--------------------------------------------------------------*/
.breadcrumb {
	background: transparent;
	border: 0;
	border-radius: 0;
	padding: 0;
	margin: 0;
}
.breadcrumb-item + .breadcrumb-item::before {
	content: ' ';
	border-top: 2px solid #6c757d;
	border-right: 2px solid #6c757d;
	display: inline-block;
	vertical-align: middle;
	width: 0.5rem;
	height: 0.5rem;
	padding-right: 0;
	margin-top: -0.25rem;
	margin-right: 0.625rem;
	transform: rotate(45deg);
}
@media (max-width: 767px) {
	.single .breadcrumb-item.active {
		display: none;
	}
}

/*--------------------------------------------------------------
# Pagination
--------------------------------------------------------------*/
.pagination {
	justify-content: center;
}
.pagination .page-link {
	font-size: 1rem;
	color: #151935;
	background: #F0F2F5;
	border-color: #F0F2F5;
	border-radius: 0.375rem !important;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 2.875rem;
	height: 2.75rem;
	text-align: center;
	padding: 0;
	margin-left: 0.25rem;
	margin-right: 0.25rem;
}
.pagination .page-link:hover,
.pagination .page-link:focus {
	color: #151935;
	background-color: #E2E6EA;
	-webkit-text-fill-color: #151935;
	border-color: #E2E6EA;
}
.pagination .page-item.active .page-link {
	color: #fff;
	background-color: #1DCAE4;
	-webkit-text-fill-color: #fff;
	border-color: #1DCAE4;
}

/*--------------------------------------------------------------
# Modal
--------------------------------------------------------------*/
.modal-dialog {
    min-height: calc(100vh - 3.75rem);
    display: flex;
    flex-direction: column;
    justify-content: center;
    overflow: auto;
    margin-top: 2.5rem;
    margin-bottom: 2.5rem;
}
.modal.fade .modal-dialog {
	-webkit-transform: translate(0, 0);
	-moz-transform: translate(0, 0);
	transform: translate(0, 0);
}
.modal-header {
	background: #F7F7F7;
}
.modal-title {
	text-transform: uppercase;
	line-height: 1.2;
}
.modal-body {
	padding: 1.5rem;
}
.modal-backdrop.show {
	opacity: 0.7;
}

/*--------------------------------------------------------------
# animation
--------------------------------------------------------------*/
.spin {
	-webkit-animation: spin 1.2s infinite linear;
	-moz-animation: spin 1.2s infinite linear;
	-ms-animation: spin 1.2s infinite linear;
	-o-animation: spin 1.2s infinite linear;
	animation: spin 1.2s infinite linear;
}
@keyframes "spin" {
	from {
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-o-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(359deg);
		-moz-transform: rotate(359deg);
		-o-transform: rotate(359deg);
		-ms-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}
@-moz-keyframes spin {
	from {
		-moz-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-moz-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}
@-webkit-keyframes "spin" {
	from {
		-webkit-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}
@-ms-keyframes "spin" {
	from {
		-ms-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-ms-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}
@-o-keyframes "spin" {
	from {
		-o-transform: rotate(0deg);
		transform: rotate(0deg);
	}
	to {
		-o-transform: rotate(359deg);
		transform: rotate(359deg);
	}
}

/*--------------------------------------------------------------
# accordion
--------------------------------------------------------------*/
.accordion .toggler:after,
.less-link:after,
.more-link:after {
    content: ' ';
    border-top: 2px solid #666;
    border-left: 2px solid #666;
    cursor: pointer;
    display: inline-block;
    vertical-align: middle;
    width: 0.5rem;
    height: 0.5rem;
    margin-top: 0.5rem;
   	margin-left: auto;
    transform: rotateZ(45deg);
    transition: all 0.3s ease 0s;
}
.accordion .toggler.collapsed:after,
.more-link:after {
	margin-top: 0.25rem;
	transform: rotateZ(-135deg);
}
.less-link:after {
	margin-top: 0;
}
.more-link:after {
	margin-top: -0.5rem;
}
.less-link:after,
.more-link:after {
	margin-left: 0.5rem;
}

/*--------------------------------------------------------------
# site header
--------------------------------------------------------------*/
.site-logo {
	font-size: 0;
}
.site-logo img {
	max-height: 5rem;
}

/*--------------------------------------------------------------
## site nav
--------------------------------------------------------------*/
.site-nav ul {
	list-style: none;
	padding: 0;
	margin: 0;
}
.site-nav .menu {
	display: flex;
}
.site-nav .menu > li {
	position: relative;
}
.site-nav .menu > li > a {
	color: #212529;
	display: block;
	padding: 2rem 1rem;
}
.site-nav .menu > li.current-menu-item > a,
.site-nav .menu > li.current-menu-parent > a,
.site-nav .menu > li.current-category-ancestor > a,
.site-nav .menu > li.current-post-ancestor > a {
    color: #1DCAE4;
	background: -webkit-linear-gradient(#1DCAE4, #20E6B9);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}
.site-nav .sub-menu {
	white-space: nowrap;
	background-color: #FFF;
	box-shadow: 0 2px 20px 0 rgba(0, 0, 0, 0.1);
	display: none;
	padding: 0.5rem 0;
	position: absolute;
	z-index: 12;
	top: 100%;
	left: 0;
	min-width: 12.5rem;
}
.site-nav li:hover > .sub-menu {
	display: block;
}
.site-nav .sub-menu > li {
	position: relative;
}
.site-nav .sub-menu > li > a {
	color: inherit;
	display: block;
	padding: 0.5rem 1rem;
}
.site-nav .sub-menu > li:hover > a {
	color: #1DCAE4;
}
.site-nav .sub-menu > li > .sub-menu {
	top: 0;
	left: 100%;
}

@media (max-width: 1199px) {
	.site-nav .menu > li > a {
		padding-left: 0.5rem;
		padding-right: 0.5rem;
	}
}
@media (max-width: 991px) {
	.site-nav {
		background-color: #fff;
		overflow-y: auto;
		width: 17.5rem;
		padding-top: 3rem;
		position: fixed;
		left: -17.5rem;
		top: 0; 
        bottom: 0;
		transition: all 0.3s ease 0s;
        z-index: 1002;
	}
	.admin-bar .site-nav {
		top: 32px;
	}
	body.active-site-nav .site-nav {
		left: 0;
	}
	.site-nav-overlay {
		background-color: rgba(0, 0, 0, 0.5);
		width: 100%;
		height: 100%;
		position: fixed;
		z-index: 1001;
		top: 0;
		left: 0;
		visibility: hidden;
		opacity: 0;
		transition: visibility, opacity 0.3s ease 0s;
	}
	body.active-site-nav .site-nav-overlay {
		visibility: visible;
		opacity: 1;
	}
	.site-nav .menu {
		display: block;
	}
	.site-nav .menu > li {
		padding: 0.5rem 2rem 0.5rem 1rem;
		margin-left: 0;
	}
	.site-nav .menu > li > a {
		display: inline;
		padding: 0;
	}
	.site-nav .menu > li.menu-item-has-children:before {
	    content: ' ';
	    border-top: 2px solid #212121;
	    border-left: 2px solid #212121;
	    cursor: pointer;
	    float: right;
	    width: 0.5rem;
	    height: 0.5rem;
	    position: absolute;
	    top: 1rem;
	    right: 1rem;
	    transform: rotateZ(-135deg);
	    transition: all 0.3s ease 0s;
	}
	.site-nav .menu > li.menu-item-has-children:hover:before {
		border-top-color: #1DCAE4;
		border-left-color: #1DCAE4;
	}
	.site-nav .menu > li.menu-item-has-children.active:before {
		top: 1.25rem;
		transform: rotateZ(45deg);
	}
	.site-nav .menu > li > .sub-menu {
		background-color: transparent;
		border: 0;
		box-shadow: none;
		clear: both;
		display: none;
		padding: 0;
		position: relative;
		top: 0;
		left: 0;
	}
	.site-nav .menu > li:hover > .sub-menu {
		display: none;
	}

	.site-nav-toggler {
		width: 25px;
		height: 15px;
		position: relative;
		z-index: 1033;
	}
	body.active-site-nav .site-nav-toggler {
		position: absolute;
		top: 1rem;
		left: 1rem;
	}
	.site-nav-toggler-icon:before, 
	.site-nav-toggler-icon:after {
		content: ' ';
		display: block;
	}
	.site-nav-toggler-icon, 
	.site-nav-toggler-icon:before, 
	.site-nav-toggler-icon:after {
		width: 25px;
		height: 2px;
		background-color: #151935;
		position: absolute;
		transition: transform 0.15s ease 0s;
	}
	.site-nav-toggler-icon {
		top: 0;
		left: 0;
	}
	.site-nav-toggler-icon:before {
		top: 7px;
		left: 0;
		transition: transform, opacity 0.15s ease 0s;
	}
	.site-nav-toggler-icon:after {
		top: 14px;
		left: 0;
	}
	body.active-site-nav .site-nav-toggler .site-nav-toggler-icon {
		transform: translate3d(0, 10px, 0) rotate(45deg);
		-webkit-transform: translate3d(0, 10px, 0) rotate(45deg);
		-ms-transform: translate3d(0, 10px, 0) rotate(45deg);
	}
	body.active-site-nav .site-nav-toggler .site-nav-toggler-icon:before {
		opacity: 0;
		left: 0;
		transform: rotate(-45deg) translate3d(-6px, -6px, 0);
		-webkit-transform: rotate(-45deg) translate3d(-6px, -6px, 0);
		-ms-transform: rotate(-45deg) translate3d(-6px, -6px, 0);
	}
	body.active-site-nav .site-nav-toggler .site-nav-toggler-icon:after {
		left: 0;
		transform: translate3d(0, -14px, 0) rotate(-90deg);
		-webkit-transform: translate3d(0, -14px, 0) rotate(-90deg);
		-ms-transform: translate3d(0, -14px, 0) rotate(-90deg);
	}
}
@media (max-width: 782px) {
	.admin-bar .site-nav {
		top: 46px;
	}
}

/*--------------------------------------------------------------
# Archive post
--------------------------------------------------------------*/

/*--------------------------------------------------------------
# entry
--------------------------------------------------------------*/
.entry-content {
	font-size: 1.125rem;
}
.entry-content a {
	color: #1DCAE4;
}
.entry-content a:hover {
	text-decoration: underline;
}
.entry-content h1, .entry-content h2, .entry-content h3, .entry-content h4, .entry-content h5, .entry-content h6,
.term-description h1, .term-description h2, .term-description h3, .term-description h4, .term-description h5, .term-description h6 {
	font-weight: 700;
    margin-bottom: 1rem;
}
.entry-content table {
	background-color: transparent;
    border-collapse: collapse;
    border-spacing: 0;
    margin-bottom: 1rem;
    width: 100%;
    max-width: 100%;
}
.entry-content table th,
.entry-content table td {
    border-top: 1px solid #dee2e6;
    padding: 0.75rem;
}
.entry-content table th {
    font-weight: 600;
    text-transform: uppercase
}
.entry-content table thead th {
	border-bottom: 2px solid #dee2e6;
	padding: 0.75rem;
}
.entry-content img.centered,
.entry-content .aligncenter,
.term-description img.centered,
.term-description .aligncenter {
    margin: 0 auto 1em
}
.entry-content .wp-caption,
.term-description .wp-caption {
    max-width: 100%
}
.entry-content .wp-caption-text,
.term-description .wp-caption-text {
    font-weight: 400;
    text-align: center;
    background: #f8f9fa;
    padding: 0.5rem 0.5rem
}
.entry-content blockquote {
	box-shadow: inset 0 0 0 0 #e2e4e7;
	border-left: 0.25rem solid #000;
	padding-left: 1rem;
}
.entry-content .wp-block-image {
	text-align: center;
	margin-left: auto;
	margin-right: auto;
}
.list-shares a {
	color: #FFF;
	border-radius: 0.25rem;
	display: flex;
	justify-content: center;
	align-items: center;
	min-width: 2.5rem;
	padding: 0.5rem 0.75rem;
}
.list-shares a:hover {
	opacity: 0.8;
}
.list-shares a.facebook {
	background-color: #455FA1;
}
.list-shares a.twitter {
	background-color: #58ABF4;
}
.list-shares a.pinterest {
	background-color: #CC1D1E;
}
.list-shares a.linkedin {
	background-color: #007BB5;
}
.list-shares a.email {
	background-color: #1980BE;
}

/*--------------------------------------------------------------
# site footer
--------------------------------------------------------------*/
.site-footer {
	color: #FFF;
	background-color: #0C1115;
}
.site-footer a {
	color: #00bac6;
}
.site-footer .widget ul {
	list-style: none;
	padding-left: 0;
}
.site-footer .widget ul li {
	margin-bottom: 1rem;
}
.site-footer .widget ul.children {
	padding-left: 1.5rem;
}
.site-footer .widget ul.children li {
	margin-top: 0.25rem;
	margin-bottom: 0;
}