/*

Theme Name: TheGem Child

Description: Multi-Purpose Wordpress Theme

Author: Codex Themes.

Theme URI: http://codex-themes.com/thegem/

Author URI: http://codex-themes.com/thegem/

Template: thegem

Version: 1.0

Tags: one-column, two-columns, left-sidebar, right-sidebar, responsive-layout, custom-background, custom-colors, custom-header, custom-menu, featured-images, flexible-header, full-width-template, theme-options, translation-ready, dark, light

License: GNU General Public License

License URI: license.txt

*/

/*Content*/
.content_box {
	padding:60px !important;
}
.section {
	padding:80px 0px;
	margin:0 !important;
}
.section .wpb_content_element {
	margin-bottom:0;
}
@media (max-width: 199px) {
	.section {
		padding:40px 0px;
	}
}
@media (max-width: 768px) {
	.section {
		padding:30px 0px;
	}
	.section .wpb_column {
		margin-bottom:30px;
	}
	.section .vc_column_container > .vc_column-inner {
		padding-left:0 !important;
		padding-right:0 !important;
	}
}
.dark-box {
	background:#333;
}
.dark-box * {
	color:#fff;
}
.dark-box h2::after {
	background: #fff !important;
}
@media (max-width: 1600px) {
	.content_box {
		padding:40px !important;
	}	
}
@media (max-width: 782px) {
	.content_box {
		padding:20px !important;
	}
}
.main-content .wpb_text_column ul {
	list-style:none;
}
.main-content .wpb_text_column ul li {
	margin-bottom:20px;
	position: relative;
    text-indent: -1.2em;	
}
.main-content .wpb_text_column ul li:before {
	position:relative;
	top:0;
	background:none;
    font-family: 'thegem-icons' !important;
    font-style: normal !important;
    font-weight: normal !important;
    content: '\e601' !important;
    font-size: 16px !important;
    vertical-align: top !important;
    display: inline-block !important;
    width: 21px !important;
    text-indent: 0 !important;
}
.main-content .wpb_text_column img {
	max-width:100%;
}
.post-content table tr:nth-child(odd) td {
	background:rgba(255,255,255,0.5) !important;
}
.post-content table tr:nth-child(even) td {
	background:rgba(244,247,246,0.5) !important;
}
.post-content .text-columns {
	column-count: 2;
	column-gap: 80px;
}

.box > .wpb_column > .vc_column-inner {
	padding:80px !important;
}
.box .vc_message_box.vc_color-white {
	background-color:rgba(255,255,255,0.5) !important;
}
.h-200 img {
	height:200px !important;
	width:auto !important;
}
.svg img {
	width:100%;
	height:auto;
}
@media (max-width: 1199px) {
	.box > .wpb_column > .vc_column-inner {
		padding:40px !important;
	}
}
@media (max-width: 768px) {
	.box > .wpb_column > .vc_column-inner {
		padding:20px !important;
	}
}

.grecaptcha-badge { 
    visibility: hidden;
}

.vc_row-o-equal-height.equal-height-boxes * {
	height:100%;
}
.img-cover .vc_column-inner div {
	height:100%;
	width:100%;
}
.img-cover .vc_column-inner {
	padding:0 !important;
}
.img-cover .vc_column-inner {
	min-height:700px !important;	
}
@media (max-width: 1600px) {
	.img-cover .vc_column-inner {
		min-height:600px !important;	
	}	
}
@media (max-width: 1199px) {
	.img-cover .vc_column-inner {
		min-height:800px !important;	
	}	
}
@media (max-width: 768px) {
	.img-cover .vc_column-inner {
		min-height:600px !important;	
	}	
}
@media (max-width: 499px) {
	.img-cover .vc_column-inner {
		min-height:400px !important;	
	}		
}
.img-cover img {
	display: block;
    position: absolute;
    height: 100%;
    width: 100%;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    object-fit: cover;
	min-width:100%;
	min-height:100%;
	overflow:hidden;
	max-height:100%;
}
.img-cover-top img {
	top:0;
	transform: translate(-50%,0);
	max-height:none;
}

.post-content a:not(.news_btn):not(.next):not(.prev):not(.gem-button):not(.btn) {
	text-decoration:underline;
}

img.rpwe-thumb {
	box-shadow:none !important;
	border:none !important;
	padding:0 !important;
}

.section-colored:nth-child(4n) {
	background:#ffe5e5;
}
.section-colored:nth-child(4n + 1) {
	background:#e0f9e0;
}
.section-colored:nth-child(4n + 2) {
	background:#e0f3f3;
}
.section-colored:nth-child(4n + 3) {
	background:#ffffff;
}
.section-grey-even {
	background:#fff !important;
}
.section-grey-even:nth-child(odd) {
	background:#f0f3f2 !important;
	border-bottom:1px solid #fff;
}

.section-white-text * {
	color:#fff !important;
}
.section-white-text h2::after {
	background-color:#fff !important;
}

.background-overlay::after {
	position:absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	content:"";
	height:100% !important;
	width:100% !important;
	visibility: visible !important;
	background:rgba(0,0,0,0.7) !important;	
}

body .gem-button, body .wp-block-button .wp-block-button__link, body .caption-bottom-line .post-footer-sharing .gem-button, body .portfolio-filters a:hover, body .widget a.gem-button, body .blog-load-more button, body .ui-slider-range.ui-widget-header.ui-corner-all, body .gem-blog-slider .gem-blog-slider-prev:hover, body .gem-blog-slider .gem-blog-slider-next:hover, .wp-block-button__link.wp-element-button {
	background-color: rgb(223, 19, 19) !important;
	color:#fff !important;
	text-decoration:none !important;
}
.gem-button:hover, body .wp-block-button__link.wp-element-button:hover {
	background:#111 !important;
}

.single .block-content {
    padding-top: 60px;
}
@media (max-width: 1199px) {
	.single .block-content {
		padding-top: 40px;
	}
	.post-content .post-meta {
		margin-bottom: 40px !important;
	}	
}
@media (max-width: 768px) {
	.single .block-content {
		padding-top: 30px;
	}
	.post-content .post-meta {
		margin-bottom: 30px !important;
	}	
}
@media (max-width: 499px) {
	.single .block-content {
		padding-top: 20px;
	}
	.post-content .post-meta {
		margin-bottom: 20px !important;
	}
}
.socials-sharing a.socials-item {
    margin-bottom: 40px;
}
@media (max-width: 499px) {
	.socials-item-icon {
		font-size: 25px !important;
		margin-right: 15px !important;
	}
}

/*Grid*/
@media (max-width: 1199px) {
	.wpb_row, .wpb_row > * {
			margin-top: 0 !important;
	}
}
@media (min-width: 1200px) {
	.pr0-desktop {
		padding-right:0 !important;
	}
}
.home #main-content .block-content {
	padding-bottom:0 !important;
}

/*Header*/
#site-header-wrapper {
    background-color: #111111 !important;
}
.header-background:before {
    background-color: #111111 !important;
}
#site-header.fixed.shrink .top-area-background:before, #site-header.fixed.shrink .header-background:before {
    opacity: 1 !important;
}

/*Footer*/
#partners img {
	max-width:350px;
	max-height:200px;
	height:auto;
	width:100%;
}
.custom-footer .socials-list a:hover i.socials-item-icon {
	color:#fff !important;
	opacity:0.7 !important; 
}
.custom-footer a {
	text-decoration:underline;
	white-space: nowrap;
}
.custom-footer a:hover {
	opacity:0.8;
}
#partners * {
    color: rgba(0,0,0,0.5) !important;
}
@media (max-width: 1199px) {
	#partners img {
		max-height:120px;
	}
	.custom-footer .vc_column-inner .gem-wrapbox-position-left {
		float:none !important;
		text-align:center !important;
		margin:0 auto;
	}
	.socials-list.socials-alignment-right {
		text-align:center;
	}
}
@media (max-width: 768px) {
	#partners img {
		max-height:200px;
	}
	.custom-footer p {
		font-size:12px;
	}
}
#partner_container {
	padding-left:40px !important;
	padding-right:40px !important;
}

/*WP Bakery Media Gallery*/
.vc_gitem-zone .gem-button-container {
	display:none;
}

/*Forms*/
.frm_form_fields {
	font-size:16px !important;
}
.frm_checkbox {
	margin-bottom:16px !important;
}
input[type=checkbox], input[type=radio] {
	cursor:pointer;
}
.frm_submit input[type=submit], .frm_submit button[type=submit] {
	display: inline-block !important;
    background: rgb(223, 19, 19) !important;
    padding: 15px 30px !important;
    color: #fff !important;
    text-transform: uppercase !important;
    font-size: 16px !important;
    font-weight: bold !important;
    border-radius: 4px !important;
	box-shadow:none !important;
	border:none !important;
}
.frm_submit input[type=submit]:hover {
	background:#111 !important;
}


/*Typography*/
h2 {
	position:relative;
	margin-left: auto !important;
    margin-right: auto !important;
	display:inline-block;
	margin-bottom:30px !important;
	left: 50%;
	transform: translateX(-50%);
}
h2::after {
    position: absolute;
    left: 0;
    right: 0;
    top: auto;
    bottom: -4px;
    display: inline-block;
    content: " ";
    width: 100%;
    height: 6px;
    background: rgb(223, 19, 19) !important;
}
.box h2 {
	left: 0;
	transform: translateX(0);
	margin-left: 0 !important;
    margin-right: auto !important;	
}
.h3 {
	font-size:19px !important;
	line-height: 1.2 !important;
	text-transform:uppercase !important;
	font-weight:bold !important;
	font-family: 'Roboto Condensed' !important;
	margin-bottom:0 !important;
}
h3, h4, h5 {
	margin-bottom:10px !important;
}

.text-white, .text-white * {
	color:#fff;
}
.header-shadow {
	text-shadow: 0px 0px 20px rgba(0,0,0,0.9);
}
.text-shadow {
	text-shadow: 1px 1px 2px rgba(0,0,0,0.9);
}
.header-hero h2 {
	font-size:80px !important;
	line-height:1.1 !important;
	margin-bottom:0;
}
.header-hero h3 {
	margin-top:0;
	font-size:50px !important;
}
@media (max-width: 499px) {
	.header-hero h2 {
		font-size:40px !important;
	}
	.header-hero h3 {
		font-size:25px !important;
	}	
}
.header-hero h2::after {
	display:none;
}
.vidbg-container video {
	object-fit:cover;
}

/*Recent posts widget*/
.news_content {
	display: flex;
	clear:both;
	margin-bottom:20px;
}
.news_inner_content {
	float:left;
	width:calc(100% - 170px);
}
.news_image {
	display:inline-block;
	float:left;
	margin-right:20px;
	height:auto;
	width:150px;
}
.news_image img {
	display:block;
}
.news_image img:hover {
	opacity:0.9;
}
.news_date {
	margin-bottom:0px;
	color:#777;
	font-size:12px;
}
.news_excerpt {
	margin-bottom:6px;
}
.news_btn {
	display: inline-block;
	background:rgb(223, 19, 19);
	padding:10px 15px;
	color:#fff;
	text-transform: uppercase;
	font-size:13px;
	font-weight:bold;
	border-radius:4px;
}
.news_btn:hover {
	color:#fff;
	background:#111;
}
.news_content {
	border-bottom:1px solid #ccc;		
	padding-bottom:20px;
}
@media (max-width: 499px) {
	.news_inner_content {
		width:calc(100% - 120px);
	}
	.news_image {
		width:55%;
	}
	.news_image img {
		width:100%;
		height:auto;
	}
	.news_inner_content p {
		font-size:14px !important;
		line-height:1.5 !important;
	}
	.news_inner_content .h3 {
		font-size:16px !important;
	}
	.news_inner_content .news_date {
		font-size:11px !important;
	}
}

/*Fancy header*/
.fancy_header h2 {
	display:block;
}

/*Calendar*/

@media (min-width: 783px) {
	.ics-calendar-label:after {
		content:"Håll pekaren över aktuell dag för mer info om passet!";
		font-style:italic;
		display:block;
		font-size:14px;
		text-transform: none;
		color:#aaa;
		font-weight:normal;
		font-family:'Source Sans Pro';
		line-height:1.5;
	}
}
.ics-calendar-month-grid .eventdesc {
    font-style: italic;
	text-decoration:none !important;
	color:#333 !important;
}
.ics-calendar-month-grid .eventdesc * {
	line-height: 1.4 !important;	
}
.ics-calendar .event .descloc * {
	color:#333 !important;
	line-height: 1.4 !important;		
}
.ics-calendar .event .descloc {
	font-size:100% !important;
}

@media (max-width: 782px) {
	.ics-calendar-month-grid .eventdesc {
		font-size: 85% !important;
		margin-top: 5px !important;
	}	
	.ics-calendar .event .descloc {
		color:#111 !important;
	}	
	.ics-calendar .event .descloc a {
		color:#111 !important;
	}
	.ics-calendar .event .descloc:hover {
		text-decoration: none !important;
	}	
	.ics-calendar-month-grid .eventdesc {
		padding-top: 5px !important;
		text-decoration:none !important;
	}
	.ics-calendar-month-grid .eventdesc:hover {
		text-decoration:none !important;
	}	
	.ics-calendar .event .descloc:hover {
		text-decoration: none;
	}
	.ics-calendar .event .descloc a {
		font-size: 85% !important;		
	}
}

.wpb_text_column ul li.event:before {
    content: "";
    background-color: transparent !important;
}
.ics-calendar-month-grid {
	clear:both;
}
.ics-calendar-month-grid 
	.has_events .day {
	background:rgb(223, 19, 19);
	color:#fff;
}
.ics-calendar-month-grid .events .recurrence {
	display:none;
}
.ics-calendar-month-grid .events .title:before {
	content:"";
	display: inline-block;
	position:relative;
	top:1px;
	width: 10px;
	height: 10px;
	margin-right:5px;
	border-radius: 5px;
	background-color:rgb(223, 19, 19, 0.2);
}
.ics-calendar-month-grid .title_in_hover_block .title:before {
	display:none !important;
}
.ics-calendar-month-grid .past {

}
.ics-calendar-month-grid .future .event {
	color:#111
}
.ics-calendar-month-grid th {
	background:#fff;

}
.ics-calendar-month-grid .has_events .day {
    background: #111;
    color: #fff;
}
.ics-calendar-month-grid .today .day {
    background:rgb(223, 19, 19) !important;
    color: #ffffff;
}
.ics-calendar-month-grid th, .ics-calendar-month-grid td {
	border-color:#ccc !important;
}
.ics-calendar .events .time .end_time {
    font-size: 100%;
}
body .ics-calendar .ics-calendar-past-events-toggle {
	display:none !important;
}
body:not(#tinymce) .ics-calendar:not(.nomobile) .ics-calendar-past-events-toggle.phone_only.inline_block:not(.hidden), .ics-calendar-arrow-nav .inactive {
	display:none !important;
}
.ics-calendar-month-grid th {
	background:#fff !important;
	color:#111 !important;
}
body .ics-calendar th.week-number {
	background:#fff !important;
	text-align:center;
	vertical-align: middle;
	padding-left:0 !important;
	padding-right:0 !important;
	color:#777 !important;
	font-weight:normal !important;
}
body .ics-calendar thead tr th.week-number {
	background:#111 !important;
}
body .ics-calendar .next-text, body .ics-calendar .prev-text, body .ics-calendar .next:hover .next-icon, body .ics-calendar .prev:hover .prev-icon {
	color:#fff !important;
}
.ics-calendar-label {
	display:inline-block;
}
.ics-calendar-arrow-nav {
	position:relative;
	display:inline-block;
	float:right;
	z-index:5;
	margin-bottom:5px;
}
.ics-calendar-arrow-nav a {
	float:right;
	cursor:pointer !important;
	display:inline-block;
	background:#df1313;
	color:#fff;
	font-weight:bold;
	text-transform:uppercase;
	font-size:11px;
	padding:5px 15px;
	border-radius:4px;
	margin-left:10px;
}
@media (max-width: 782px) {
	.ics-calendar .events .time  {
			font-size: 90% !important;
	}	
	.ics-calendar-label {
		margin-top:7px !important;
		font-size:12px;
	}
	.ics-calendar-arrow-nav a {
		font-size:10px;
		padding:5px 10px;
		margin-left:6px;
	}	
	.ics-calendar-month-grid .events .title:before {
		top:-1px;
	}
	.ics-calendar-month-grid .events .time, .ics-calendar-month-grid .events .all-day-indicator, .ics-calendar-month-grid .events .title {
		display:inline-block;
		font-weight:normal;
	}
	.ics-calendar-month-grid .events .time, .ics-calendar-month-grid .events .all-day-indicator {
		min-width:105px;	
	}
	.ics-calendar .event .descloc * {
		font-size:90%;
		color:#999;
	}
	.ics-calendar .event .descloc:hover {
		text-decoration:underline;
	}
	.ics-calendar .events .time {
		float:left;
		position:relative;
		top:1px;
	}
	.ics-calendar .events .title {
		max-width: calc(100% - 105px);
		overflow: hidden;
		white-space: nowrap;
		text-overflow: ellipsis;
		margin: 0;
		float: left;		
	}
	.ics-calendar .location {
		clear:both;
	}
	.ics-calendar .ics-calendar-month-grid ul.events li	{
		border-top:1px solid #ccc;
	}
	.ics-calendar td {
		margin-bottom:10px;
	}
	.ics-calendar .event .descloc div {
			margin: 0 !important;
	}	
}
body .ics-calendar-month-grid .events .title:before {
    background: #f5b8b8 !important;
}
.max-width-400 {
	max-width:400px;
	margin:0 auto !important;
}
.max-width-600 {
	max-width:600px;
	margin:0 auto !important;
}


/*Navigation*/
#primary-menu.no-responsive > li.menu-item-parent.menu-item-has-children > a:after {
    position: absolute;
    width: 9px;
    height: 16px;
    right: 5px;
    top: 50%;
    margin-top: -8px;
    font-weight: normal;
    font-family: 'thegem-icons';
    font-style: normal;
    content: '\e635';
    font-size: 16px;
    line-height: 16px;
}
#primary-menu.no-responsive > li.menu-item-parent.menu-item-has-children > a {
	margin-right:14px;
}
#primary-menu.no-responsive > li.current-menu-ancestor > a {
	padding-right:21px !important;
	padding-left:11px;
	margin-left:4px;
	margin-right:8px !important;
}
#primary-menu.no-responsive > li.current-menu-ancestor > a:after {
    right: 10px !important;
}


.mobile-menu-slide-wrapper .menu-item-parent-toggle {
	display:block !important;
	width:100% !important;
}
.mobile-menu-slide-wrapper .menu-item-parent-toggle:after {
	text-align:right !important;
}
.mobile-menu-layout-slide-horizontal #primary-navigation.responsive .mobile-menu-slide-wrapper, .mobile-menu-layout-slide-vertical #primary-navigation.responsive .mobile-menu-slide-wrapper, .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu, .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu, #primary-navigation.responsive #primary-menu > li > a, #primary-navigation.responsive ul.dl-submenu.level1 > li > a, #primary-navigation.responsive #primary-menu li.menu-item-search, #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch {
    background-color: #222222;
}

#primary-navigation.responsive #primary-menu > li > ul > li > a, #primary-navigation.responsive #primary-menu > li > ul > li > span.megamenu-column-header > a, #primary-navigation.responsive ul.dl-submenu.level2 > li > a, #primary-navigation.responsive ul.dl-submenu.level2 > li > span.megamenu-column-header > a, .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"], .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"] {
    background-color: #4c4c4c;
}

#primary-navigation.responsive #primary-menu > li > a, #primary-navigation.responsive #primary-menu > li > .menu-item-parent-toggle, #primary-navigation.responsive ul.dl-submenu.level1 > li > a, .primary-navigation.responsive .minisearch .sf-input, .mobile-menu-layout-overlay #primary-navigation.responsive #primary-menu > li.menu-item-search > .minisearch input[type="text"], .mobile-menu-layout-overlay #primary-navigation.responsive #primary-menu > li.menu-item-search > .minisearch .sf-submit-icon:before, .mobile-cart-position-top .menu-overlay.mobile.active + #site-header .mobile-cart > a:before {
    color: #b6b6b6;
}

#primary-navigation.responsive #primary-menu > li.menu-item-current > a, #primary-navigation.responsive #primary-menu > li.menu-item-active > a, #primary-navigation.responsive #primary-menu > li.opened > a, #primary-navigation.responsive ul.dl-submenu.level1 > li.menu-item-current > a, #primary-navigation.responsive ul.dl-submenu.level1 > li.menu-item-active > a {
    background-color: #000;
}

.mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li, .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li {
    border-top: 1px solid #444444;
}

#primary-navigation.responsive #primary-menu > li > a, #primary-navigation.responsive #primary-menu > li > .menu-item-parent-toggle, #primary-navigation.responsive ul.dl-submenu.level1 > li > a, .primary-navigation.responsive .minisearch .sf-input, .mobile-menu-layout-overlay #primary-navigation.responsive #primary-menu > li.menu-item-search > .minisearch input[type="text"], .mobile-menu-layout-overlay #primary-navigation.responsive #primary-menu > li.menu-item-search > .minisearch .sf-submit-icon:before, .mobile-cart-position-top .menu-overlay.mobile.active + #site-header .mobile-cart > a:before {
    color: #ffffff;
}

#primary-navigation.responsive #primary-menu li.menu-item-widgets .menu-item-socials a {
    color: #eee;
}

.socials-item-icon {
	font-size:28px;
	margin-right:20px;
}

#primary-navigation.responsive #primary-menu > li > ul > li > a, #primary-navigation.responsive #primary-menu > li > ul > li > span.megamenu-column-header > a, #primary-navigation.responsive ul.dl-submenu.level2 > li > a, #primary-navigation.responsive ul.dl-submenu.level2 > li > span.megamenu-column-header > a, .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"], .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"] {
    background-color: #555555;
}

.mobile-menu-layout-default #primary-navigation.responsive ul li.menu-item, .mobile-menu-layout-default #primary-navigation.responsive ul li.dl-back, .mobile-menu-layout-default #primary-navigation.responsive ul, .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li, .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li, .mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"], .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch input[type="text"] {
    border-color: #888888;
}

.mobile-menu-layout-slide-horizontal #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch .sf-submit-icon:before, .mobile-menu-layout-slide-vertical #primary-navigation.responsive #primary-menu li.menu-item-search .minisearch .sf-submit-icon:before {
    color: #ffffff;
}

#primary-navigation.responsive #searchform-input::placeholder {
	color:#999 !important;
}