.fastbit_storefront {
	margin-top: 20px;
	padding: 0px;
	text-align: center;
}

.rebate_footer {
	display: none;
}

div.section {
	padding-bottom: 20px;
	padding-top: 20px;
	display: none;
}
div.section > h2 {
	font-size: 24px;
	margin: 20px 0px 10px 0px;
}
input[disabled] {
	color: black;
}
div.section > div > .button {
	width: 250px;
	background: var(--fastbit-karibien);
	color: white;
	border-radius: 12px;
}
div.section > div > .button:disabled {
	width: 250px;
	background: grey;
	color: white;
	pointer-events: none;
}
.selected_delivery_address {
	margin-bottom: 10px;
	font-size: 12px;
	color: var(--fastbit-blue);
}
.ripple {
	background-position: center;
	transition: background 0.8s;
}
.ripple:hover {
	background: #47a7f5 radial-gradient(circle, transparent 1%, #47a7f5 1%) center/15000%;
}
.ripple:active {
	background-color: #6eb9f7;
	background-size: 100%;
	transition: background 0s;
}

#breadcrumb {
	max-width: 100%;
	margin: auto;
}

.bx-pager {
	display: flex;
	align-items: center;
	height: 34px;
	border-left: 1px solid #0073A5;
}
.bx-pager .bx-pager-item {
	display: flex;
	align-items: center;
	height: 100%;
	flex: 0 25%;
	border-top: 1px solid #0073A5;
	border-bottom: 1px solid #0073A5;
}

.bx-pager .bx-pager-item a.disabled {
	pointer-events:none;
}

.bx-pager .bx-pager-item .bx-pager-link {
	text-decoration: none;
	color: #222;
	font-size: 13px;
	flex: 1;
	padding-left: 16px;
	text-align: center;
}
.bx-pager .bx-pager-item .arrow {
	border: solid var(--fastbit-rymd);
	display: inline-block;
	padding: 9px;
	border-width: 0 1px 1px 0;
	transform: translateY(15.5px) rotate(-45deg) skew(-15deg, -15deg) translateX(18px);
	background-color: #FFF;
}
.bx-pager .end {
	border-right: 1px solid var(--fastbit-rymd);
}
.bx-pager .bx-pager-item.active {
	background-color: var(--fastbit-rymd);
}
.bx-pager .bx-pager-item.current {
	font-weight: 800;
}
.bx-pager .bx-pager-item.active .bx-pager-link {
	color: white;
}
.bx-pager .bx-pager-item.active .arrow {
	background-color: var(--fastbit-rymd);
}

@keyframes animatetop {
	from {top: -300px; opacity: 0}
	to {top: 0; opacity: 1}
}

.section_modal {
	display: none;
	position: fixed;
	z-index: 1;
	padding-top: 100px;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	overflow: auto;
	background-color: rgb(0,0,0);
	background-color: rgba(0,0,0,0.4);
}

.section_modal_inner {
	position: relative;
	background-color: #fefefe;
	margin: auto;
	padding: 50px;
	border: 1px solid #888;
	width: 600px;
	min-height: 200px;
	box-shadow: 0 4px 8px 0 rgba(0,0,0,0.2),0 6px 20px 0 rgba(0,0,0,0.19);
	-webkit-animation-name: animatetop;
	-webkit-animation-duration: 0.4s;
	animation-name: animatetop;
	animation-duration: 0.4s
}

.section_modal_title {
	margin-bottom: 40px;
}

.section_modal_content {
	padding: 10px;
}

.section_modal_buttons {
	margin-top: 40px;
	padding: 10px 0px 0px 0px;
	border-top: 1px solid #eee;

}

.section_modal_buttons > .button_accept {
	width: 250px;
	background: green;
	margin-top: 10px;
	color: white;
}

.section_modal_buttons > .button_deny {
	width: 250px;
	background: blue;
	margin-top: 10px;
	color: white;
}

.large_only {
	display: inline-block;
}
.small_only {
	display: none;
}

.fastbit-big-screen {
	display: block;
	font-size: 48px !important;
	text-transform: uppercase !important;
}
.fastbit-small-screen {
	display: none;
	font-size: 32px !important;
	text-transform: uppercase !important;
}

@media screen and (max-width: 768px) {
	.service_box_details_specification {
		flex-wrap: wrap;
	}
	.noncommercial_selector {
		display: none !important;
	}	
	.commercial_selector {
		display: none !important;
	}
	
	.inside-article {
		padding: 10px !important;
	}
	.section_modal {
		padding-top: 100px !important;
	}
	.section_modal_inner {
		margin: 0px !important;
		padding: 50px 0px 50px 0px !important;
		border: 1px solid #888;
		width: 100% !important;
	}
	.fastbit_storefront {
		width: 100%;
		font-size: 0.9em;
	}
	.fastbit-big-screen {
		display: none !important;
	}
	.fastbit-small-screen {
		display: block !important;
	}

	.large_only {
		display: none !important;
	}
	.small_only {
		display: inline-block !important;
	}

	#breadcrumb {
		font-size: 0.8em;
	}
	div.section {
		padding-bottom: 20px;
		padding-top: 20px;
		display: none;
	}
	div.section > h2 {
		font-size: 16px;
		margin: 10px 0px;
	}
	div.section > div > .button {
		width: 150px;
		background: green;
		color: white;
	}
	div.section > div > .button:disabled {
		width: 150px;
		background: grey;
		color: white;
		pointer-events: none;
	}
	.bx-pager-link > span {
		display: none;
	}
	.product_tab {
		display: none;
		padding: 10px 10px !important;
		margin-bottom: 10px !important;
		margin-right: 5px !important;
		font-size: 0.8em;
	}

	.service_box {
		gap: 5px !important;
		height: 80px !important;
	}

	.service_box_image {
		width: 64px !important;
		padding: 0px !important;
		min-width: 64px !important;
		max-width: 64px !important;
	}

	.service_box_image > img {
		width: 48px !important;
		max-width: 48px !important;
	}

	.service_box_content {
		margin-left: 5px !important;
		flex-direction: column !important;
		justify-content: center !important;
		align-items: start !important;
		gap: 5px !important;
	}

	.service_box_title {
		text-align: left !important;
		font-size: 1.2em !important;
		line-height: 1.2em !important;
		align-items: center !important;
		flex-grow: 0 !important;
		font-weight: 700 !important;
	}

	.service_box_price {
		text-align: left !important;
		font-size: 1.2em !important;
		line-height: 1.2em !important;
		align-items: center !important;
	}

	.service_box_price_campaign {
		text-align: left !important;
		font-size: 1.0em !important;
		line-height: 1.0em !important;
	}

	.service_box_price_old {
		text-align: left !important;
		font-size: 0.9em !important;
		line-height: 0.9em !important;
	}

	.service_box_info {
		margin-right: 5px !important;
	} 

	.service_box_info button {
		height: 64px !important;
	} 
	/*
	.service_box_image {
		text-align: center !important;
		grid-column: 1 / span 1 !important;
		grid-row: 1 / span 3 !important;
	}
	.service_box_image > img {
		margin: 10px 0px !important;
		width: 70% !important;
	}
	.service_box_image > p {
		margin: 5px 0px !important;
	}
	.service_box_title {
		text-align: left !important;
		grid-column: 2 !important;
		grid-row: 1 !important;
		padding: 26px 0px 0px 5px !important;
		font-size: 24px !important;
		line-height: 24px !important;
	}
	.service_box_add_inner {
		margin: 0 0 !important;
		width: 200px !important;
		height: 40px !important;
		line-height: 40px !important;
		font-size: 20px !important;
		text-align: middle;
	}
	.service_box_add {
		text-align: center !important;
		grid-column: 1 / span 2 !important;
		grid-row: 4 !important;
		margin: 10px auto;
	}
	.service_box_price {
		text-align: right !important;
		grid-column: 2 !important;
		grid-row: 2 !important;
		padding: 22px 20px 0px 0px !important;
		font-size: 18px !important;
		line-height: 18px !important;
	}
	.service_box_price_campaign {
		color: #E94F20 !important;
		font-size: 18px !important;
	}
	.service_box_price_old {
		margin-left: 10px !important;
		text-decoration: line-through !important;
		font-size: 14px !important;
	}
	.service_box_flash_message {
		text-align: left !important;
		grid-column: 1 / span 2 !important;
		grid-row: 5 !important;
		margin: 0px auto;
		max-width: 500px !important;
		padding: 20px 10px 20px 10px;
	}
	.service_box_description {
		text-align: left !important;
		grid-column: 1 / span 2 !important;
		grid-row: 6 !important;
		margin: 0px auto;
		max-width: 500px !important;
		padding: 20px 10px 20px 10px;
	}
	.service_box_divider {
		grid-column: 2 !important;
		grid-row: 2 !important;
	}
	.service_box_readmore {
		text-align: center !important;
		grid-column: 1 / span 2 !important;
		grid-row: 7 !important;
		padding: 0px !important;
		max-width: 500px !important;
		margin: 0px auto !important;
	}

	.service_box_details {
		padding: 0px !important;
	}

	.service_box_details_text {
		text-align: center !important;
		grid-column: 1 / span 2 !important;
		grid-row: 8 !important;
		max-width: 500px !important;
		margin: 0px auto !important;
		padding-top: 20px !important;
		padding-bottom: 20px !important;
	}

	.service_box_details_campaign {
		margin: 0px !important;
		color: red;
		font-weight: 600;
	}

	.service_box_details_1 {
		padding: 0px 0px 0px 20px !important;
		grid-column: 1 / span 2 !important;
		grid-row: 9 !important;
		max-width: 500px !important;
		width: 100%;
		margin: 0px auto !important;
		font-size: 12px;
	}

	.service_box_details_2 {
		padding: 0px 0px 0px 20px !important;
		grid-column: 1 / span 2 !important;
		grid-row: 10 !important;
		max-width: 500px !important;
		width: 100%;
		margin: 0px auto !important;
		font-size: 12px;
	}

	.service_box_details_button {
		padding: 0px !important;
		grid-column: 1 / span 2 !important;
		grid-row: 11 !important;
		max-width: 500px !important;
		width: 100%;
		margin: 40px auto !important;
	}

	.grid_50_half_full {
		grid-column: 1 / span 2;
	}
		*/

	.noncommercial_selector {
		float: right;
		border-top: 1px solid #ddd;
		border-right: 1px solid #eee;
		border-bottom: 1px solid #ddd;
		border-left: 1px solid #ddd;
		display: inline;
		margin: 0 !important;
		padding: 10px;
		width: 80px;
		font-size: 0.9em;
		color: black;
	}
	.commercial_selector {
		float: right;
		border-top: 1px solid #ddd;
		border-right: 1px solid #ddd;
		border-bottom: 1px solid #ddd;
		display: inline;
		margin: 0 !important;
		padding: 10px;
		width: 80px;
		font-size: 0.9em;
		color: black;
	}
}

.left {
	text-align: left;
}

.grid_50 {
	display: grid;
	grid-template-columns: 50% auto;
	gap: 20px;
}

.grid_50_full_full {
	grid-column: 1 / span 2;
}
.vat_or_not {
	font-style: italic;
}
.fe_input {
	display: block; /*flex;
	flex-direction: column;*/
	width: 100%;
}
.fe_input_small {
	display:flex;
	flex-direction:row;
	margin: 15px 15px;
}
.fe_input_select {
	appearance: none;
	background-color: rgb(251, 251, 251);
	border: 1px solid rgb(204, 204, 204);
	color: rgb(102, 102, 102);
	padding: 10px 15px 10px 15px;
	margin: 0;
	width: 100%;
	font-family: inherit;
	font-size: inherit;
	cursor: inherit;
	line-height: inherit;
}
.fe_input_error {
	display:flex;
	flex-direction:column;
	width: 100%;
	color: red;
}
.service_box {
	display: flex;
	gap: 20px;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	flex-grow: 1;
	flex-basis: calc(100% - 10px);
	border: 1px solid #eee;

	margin: 25px 0px;
	width: 100%;
	height: 120px;
	background: var(--fastbit-tunnis) !important;
	border-radius: 10px;
}

.service_box_hidden {
	display: none;
}

.service_box_visible {
	display: flex !important;
}

.loading_box {
	height: 120px;
	animation-name: color;
	animation-duration: 1s;
	animation-iteration-count: infinite;
	opacity: 0.6;
}

@keyframes color {
	0% {
		background-color: #f3f3f3;
	}
	50% {
		background-color: #f0f0f0;
	}
	100% {
		background-color: #f3f3f3;
	}
}

.service_box_item {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	height: 80px;
}

.service_box_image {
	background: var(--fastbit-rymd);
	width: 80px !important;
	padding: 20px 20px;
	border-top-left-radius: 10px;
	border-bottom-left-radius: 10px;
}

.service_box_image > img {
	width: 64px;
	max-width: 64px;
}

.service_box_content {
	display: flex;
	gap: 20px;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	flex-grow: 1;
}

.service_box_title {
	flex-grow: 4;
	align-items: start;
	font-size: 32px;
	font-weight: 500;
	line-height: 32px;
	overflow: hidden;
	text-align: left !important;
}

.service_box_info {
	margin-right: 20px;
}

.service_box_info button i {
	margin-right: 10px;
}

.service_box_info button {
	background: var(--fastbit-hav);
	color: white;
	border-radius: 12px;
}

.service_box_item_selected button {
	background: var(--fastbit-karibien);
}

.service_box_add {
	margin-right: 20px;
}

.service_box_add_inner {
	height: 80px;
	width: 80px;
	line-height: 80px;
	text-align: middle;
	border-radius: 50px;
	margin: 15px auto;
	font-size: 32px;
}
.service_box_flash_message {
	font-size: 16px;
	font-weight: 700;
	color: red;
}
.service_box_description {
	font-size: 16px;
}
.service_box_price {
	font-size: 20px;
	line-height: 24px;
}

.service_box_price_campaign {
	color: #E94F20 !important;
	font-weight: 600;
}
.service_box_price_old {
	margin-left: 10px !important;
	text-decoration: line-through !important;
	font-size: 14px;
	vertical-align: middle;
	color: #333;
}
.service_box_divider {
	grid-column: 2 / span 3;
	margin: 5px 0px 5px 0px;
	padding: 0px;
	border-top: 1px solid #ccc;
	height: 1px !important;
}
.service_box_no_add {
	display: none;
	text-align: right;
	border: 1px solid grey;
	background: grey;
	cursor: default;
}
.fastbit_no_add_button {
	border: 1px solid grey;
	background: grey;
	color: white;
	cursor: default;
	pointer-events: none;
}
.fastbit_added_button {
	border: 1px solid var(--fastbit-karibien);
	background: var(--fastbit-karibien);
	color: white;
	cursor: pointer;
}
.fastbit_add_button {
	border: 1px solid var(--fastbit-himmel);
	background: var(--fastbit-himmel);
	color: white;
	cursor: pointer;
}
.fastbit_add_button:hover {
	border: 1px solid #0073A5 !important;
	background: #0073A5 !important;
}
.service_box_readmore {
	text-align: right;
	padding-right: 16px;
	grid-column: 4;
	grid-row: 3 / span 3;
	color: black;
	text-decoration: underline;
	font-size: 16px;
}
.service_box_readmore a {
	color: grey;
}
.service_box_details {
	display: flex;
	gap: 20px;
	flex-direction: column;
	justify-content: space-between;
	align-items: center;
	flex-grow: 1;
}

.service_box_details_specification {
	display: flex;
	gap: 10px;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
}
#service_box_details_specification_content{
	align-self: center;
	flex-grow: 3;
}

#service_box_details_specification_image {
	align-self: center;
	flex-grow: 1;
}

#service_box_details_specification_image img {
	max-width: 300px;
}

#serviceinfo-modal {
	text-align: left;
}

#serviceinfo-modal h3 {
	margin: 20px 0px 10px 0px;
	padding: 0px;
	font-size: 2em;
}

#serviceinfo-modal .fcp-form-section {
	margin-top: 10px;
	margin-bottom: 10px;
}

.service_box_details_text {
	text-align: left;
	font-size: 1em;
	width: 100%;	
}
.service_box_details_button {
	padding: 0px !important;
	grid-column: 1 / span 5 !important;
	max-width: 500px !important;
	width: 100%;
	margin: 10px auto;
}

.service_box_details_button input {
	width: 200px;
	background-color: var(--fastbit-karibien) !important;
	border-radius: 12px;
}

.service_box_details_campaign {
	margin: 10px 0px;
	color: #E94F20;
	font-weight: 600;
	font-size: 16px;
}
.service_box_details_1 {
	text-align: left;
	font-size: 0.9em;
}
.service_box_details_2 {
	text-align: left;
	font-size: 0.9em;
}
.part {
	margin: 20px 0px;
}
.step_divider {
	height: 20px;
	width: 0px;
	border-left: 1px dotted grey;
}
.info_box {
	width: 600px;
	padding: 10px;
	margin: 10px;
	text-align: center;
}
.info_box > h2 {
	font-size: 20px;
	width: 100%;
	padding-left: 10px;
}
.info_box > h2 > span.buttons {
	font-size: 12px;
	margin-left: 20px;
}
.product_tab {
	display: none;
	padding: 10px 20px;
	border: 1px solid #ccc;
	background: var(--fastbit-betong);
	margin-bottom: 20px;
	margin-right: 10px;
	text-decoration: none;
	float: left;
	font-size: 0.9em;
	color: var(--fastbit-rymd);
}
.product_tab_active {
	font-weight: 700;
	background: var(--fastbit-rymd) !important;
	color: white !important;
}
#company_slider {
	float: right;
	display: inline;
	margin-left: 0px;
	margin-right: 10px;
	padding: 10px;
	width: 100px;
	font-size: 0.9em;
}
.noncommercial_selector {
	float: right;
	border-top: 1px solid #ddd;
	border-right: 1px solid #eee;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
	display: inline;
	margin: 0;
	padding: 10px;
	width: 80px;
	font-size: 0.9em;
	color: black;
}
.commercial_selector {
	float: right;
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	display: inline;
	margin: 0;
	padding: 10px;
	width: 80px;
	font-size: 0.9em;
	color: black;
}

.selector_selected {
	font-weight: 700;
	background: var(--fastbit-krita);
}


.button_inactive {
	border-left: 20px solid #0b7d0f;
	background: #65ba7d;
	color: #fff;
}

.button_active {
	border-right: 20px solid #002197;
	background: #7d80c3;
	color: #fff;
}

#order_options {
	padding: 40px 0px 20px 0px;
	text-align: center;
}

#product_checkout {
	float: right;
	display: inline;
	margin-left: 0px;
	margin-right: 0px;
	padding: 10px;
	width: 100px;
}

.cart_campaign {
	text-wrap-mode: wrap !important;
}

.fe_input_and_icon {
	display: flex;
	width: 100%;
}

.fe_input_and_icon input {
	width: calc(100% - 60px) !important;
	position: relative;
	border-left: 0px;
}

.fe_input_and_icon select {
	-webkit-appearance: none !important;
	background-color: rgb(250, 250, 250) !important;
	width: 60px;
	text-align: center;
	text-align-last: center;
	position: relative;
	padding: 10px;
	left: 0px;
	z-index: 10000;
	float: left;
	border-top: 1px solid rgb(204, 204, 204);
	border-left: 1px solid rgb(204, 204, 204);
	border-right: 0px solid rgb(204, 204, 204);
	border-bottom: 1px solid rgb(204, 204, 204);
	border-radius: 0px !important;
}

.fe_input_and_icon div {
	width: 60px;
	padding-left: 0px;
	padding-right: 0px;
	padding-top: auto;
	padding-bottom: auto;
	text-align: center;
	border-top: 1px solid rgb(204, 204, 204);
	border-left: 1px solid rgb(204, 204, 204);
	border-right: 0px solid rgb(204, 204, 204);
	border-bottom: 1px solid rgb(204, 204, 204);
}

.fe_input_and_icon div span {
	width: 40px;
	vertical-align: middle;
}

.fe_input_and_icon div span:nth-child(1) {
	width: 30px;
}
.fe_input_and_icon div span:nth-child(2) {
	font-size: 10px;
	width: 10px;
}

.country_code_se {
	content: url('https://www.fastbit.se/wp-content/uploads/2025/04/Fastbit_flagga_sverige.png');
	width: 40px;
}

.country_code_no {
	content: url('https://www.fastbit.se/wp-content/uploads/2025/04/Fastbit_flagga_norge.png');
	width: 40px;
}

.dropdown_hide {
  display: none;
}

.fe_input::placeholder {
  color: #AAAAAA;
  opacity: 0.2;
}

.fe_input_select ul {
      box-sizing: border-box;
      list-style-type: none;
      padding-top: 10px;
      padding-left: 0px;
      li {
        box-sizing: border-box;
        padding: 15px 5px 15px 5px;
		margin-left: 3px;
        position: relative;
        line-height: 20px;
        cursor: pointer;
        color:grey;
        &.selected {
          background-color: snow;
        }
        &:hover {
          background-color: snow;
        }
      }

    }