/* Noviqo Theme for website, portal, webshop, and public pages. */

html,
body,
.web-page,
.page-content-wrapper {
	color: var(--noviqo-text);
	font-family: var(--font-body);
}

h1,
h2,
h3,
h4,
.navbar-brand,
.page-title,
.web-page-title {
	font-family: var(--font-display);
}

.navbar,
.web-footer {
	border-color: var(--noviqo-border);
	background: rgba(255, 255, 255, 0.94);
	box-shadow: 0 8px 28px var(--noviqo-navbar-shadow);
	backdrop-filter: blur(14px);
}

.navbar {
	position: relative;
	z-index: 1030;
}

.navbar .dropdown-menu {
	z-index: 1040;
}

.navbar-light .navbar-nav .nav-link,
.navbar-brand,
.web-footer,
.web-footer a {
	color: var(--noviqo-text-muted);
}

.navbar-light .navbar-nav .nav-link:hover,
.navbar-brand:hover,
.web-footer a:hover {
	color: var(--noviqo-primary);
}

.page-card,
.card,
.web-form-wrapper,
.web-list-item,
.portal-card,
.portal-sidebar,
.sidebar-column,
.page_content,
.blog-card,
.item-card,
.product-card,
.cart-container,
.order-container,
.webshop-container,
.modal-content,
.dropdown-menu,
.popover {
	border: 1px solid var(--noviqo-border);
	border-radius: var(--noviqo-radius-md);
	background: var(--noviqo-surface);
	box-shadow: var(--noviqo-shadow-sm);
}

.page-card,
.web-form-wrapper,
.portal-card {
	overflow: hidden;
}

.btn-primary,
.btn.btn-primary,
.navbar-cta .btn {
	border-color: var(--noviqo-primary);
	background: var(--noviqo-primary);
	color: #fff;
	box-shadow: 0 8px 18px var(--noviqo-btn-primary-shadow);
	transition: filter 0.12s cubic-bezier(0.22, 0.61, 0.36, 1), transform 0.12s cubic-bezier(0.22, 0.61, 0.36, 1);
}

.btn-primary:hover,
.btn.btn-primary:hover,
.btn-primary:focus,
.btn.btn-primary:focus,
.navbar-cta .btn:hover {
	border-color: var(--noviqo-primary-hover);
	background: var(--noviqo-primary);
	filter: brightness(0.94);
	color: #fff;
}

.btn-primary:active,
.btn.btn-primary:active {
	transform: scale(0.97);
}

.btn-default,
.btn-secondary,
.btn-light,
.btn.btn-default {
	border-color: var(--noviqo-border);
	background: var(--btn-default-bg);
	color: var(--noviqo-text);
}

.btn-default:hover,
.btn-secondary:hover,
.btn-light:hover,
.btn.btn-default:hover {
	border-color: var(--noviqo-border-strong);
	background: var(--btn-default-hover-bg);
	color: var(--noviqo-primary);
}

.form-control,
.form-select,
.input-with-feedback,
input[type="text"],
input[type="email"],
input[type="password"],
input[type="search"],
input[type="number"],
select,
textarea {
	border-color: var(--noviqo-border);
	border-radius: var(--noviqo-radius-sm);
	background-color: var(--noviqo-field-bg);
	color: var(--noviqo-text);
}

.form-control:focus,
.form-select:focus,
input:focus,
select:focus,
textarea:focus {
	border-color: var(--noviqo-input-focus-border);
	box-shadow: var(--noviqo-focus);
}

.table,
.table-bordered,
.table thead th,
.table td,
.table th {
	border-color: var(--noviqo-border);
}

.table thead th,
.web-list-header,
.portal-list-header {
	background: var(--noviqo-grid-bg);
	color: var(--noviqo-text-muted);
}

.portal-sidebar .list-group-item,
.sidebar-column .list-group-item,
.list-group-item {
	border-color: var(--noviqo-border);
	background: transparent;
	color: var(--noviqo-text-muted);
}

.portal-sidebar .list-group-item.active,
.portal-sidebar .list-group-item:hover,
.sidebar-column .list-group-item.active,
.sidebar-column .list-group-item:hover,
.list-group-item.active,
.list-group-item:hover {
	border-color: var(--noviqo-border);
	background: var(--noviqo-primary-soft);
	color: var(--noviqo-primary);
}

.alert {
	border-radius: var(--noviqo-radius-sm);
	border-color: var(--noviqo-border);
	box-shadow: var(--noviqo-shadow-sm);
}

a,
.text-primary {
	color: var(--noviqo-primary);
}

a:hover,
.text-primary:hover {
	color: var(--noviqo-primary-hover);
}

.text-muted,
.small,
small {
	color: var(--noviqo-text-muted) !important;
}

@media (max-width: 768px) {
	.page-card,
	.card,
	.web-form-wrapper,
	.portal-card,
	.portal-sidebar,
	.sidebar-column {
		border-radius: var(--noviqo-radius-sm);
	}
}
