@import url('https://fonts.googleapis.com/css2?family=Sora:wght@400..600&display=swap');

:root {
  --bg-roda-green: #c5eecc;
  --bg-roda-green-hover: #cef1d4;
  --bg-roda-gray: rgb(239, 239, 236);
}

h1 {
	font-weight: 600 !important;
}

.nameWrapper {
    text-align: center;
	margin-top: 20px;
	border-bottom: 2px solid var(--bg-roda-gray);
}

.container {
    margin-bottom: 20px;
    padding-right: 30px;
    padding-left: 30px;
	font-family: "Sora", San-serif !important;
}

.row {
    margin-right: 0;
    margin-left: 0;
}

.form-header .form-group, .form-body .form-group {margin-bottom:0;}

.form-group:has(.ParticipantBtn) {
	margin-left: 0;
	margin-right:0;
	border-radius: 20px;
    padding: 0 24px;
    margin-bottom: 20px;
	}

.form-header {
	padding: 0 24px;
}

.form-body, .form-bookingfields, .form-questions, .form-payment {
	border-radius: 20px;
    padding: 24px 24px;
	margin-bottom: 20px;
}
.form-bookingfields > .row, .form-questions > .row {margin-bottom:0 !important;}

.form-contact, .form-customer, .form-participant {
	border-radius: 20px;
    padding: 0 24px;
	margin-bottom: 20px;
}

.form-body {
	background-color: var(--bg-roda-green);
}
.form-bookingfields, .form-questions, .form-payment {
	background-color: var(--bg-roda-gray);
}

.form-control {
    display: block;
    width: 100%;
    padding: 28px 28px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.8;
    color: #3e3e4b;
    appearance: none;
    background-color: #fff;
    background-clip: padding-box;
    border: 2px solid var(--bg-roda-gray);
    border-radius: 30px;
	-webkit-box-shadow: none;
    box-shadow: none;
    transition: border-color .15s ease-in-out, box-shadow .15s ease-in-out;
}

.form-control:focus {
    color: #3e3e4b;
    background-color: #fff;
    border-color: #e2f7e6;
    outline: 0;
    box-shadow: 0 0 0 .25px rgba(197, 238, 204, .25);
}

.has-error .form-control {
    border-color: #000 !important;
    -webkit-box-shadow: none;
    box-shadow: none;
}

input::placeholder, textarea::placeholder {opacity: 0;}

.eduadmin-v-select {
	padding: 28px 0 28px 12px !important;
	font-size: 16px !important;
	color: #3e3e4b !important;
}
/*Radio och Checkbox*/



#bookingForm .ParticipantBtn, #bookingForm .addcontactasparticipantbutton, #sendFormBtn {
	border: 2px solid var(--bg-roda-green) !important;
	border-radius: 63px;
	background-color: var(--bg-roda-green) !important;
	color: #000000 !important;
	padding: 15px 25px;
	font-weight: bold;
	text-transform: none;
	display: inline-block;
}

#bookingForm .ParticipantBtn:hover, #bookingForm .addcontactasparticipantbutton:hover, #sendFormBtn:hover {
	border-color: var(--bg-roda-green-hover) !important;
	background-color: var(--bg-roda-green-hover) !important;
	
}

.btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus {
    outline: 0;
    outline-offset: 0;
}

.custominfotext div {
	background: transparent !important;
}


#bookingForm .form-group .field-row label,
#bookingForm .form-group .attribute-row label,
#bookingForm .form-group .question-row label {
	width: 100%;
	text-align: left;
	font-weight: 400;
	margin-bottom: 5px;
}
#bookingForm .form-group .field-row label + div,
#bookingForm .form-group .attribute-row label + div,
#bookingForm .form-group .question-row .col-sm-8 {
	width: 100%;
}

@media (max-width: 615px) {
	h1 {
		font-size: 22px;
	}
	#bookingForm .form-group .field-row-left label,
	#bookingForm .form-group .attribute-row-left label,
	#bookingForm .form-group .question-row-left label,
	#bookingForm .form-group .field-row-left label + div,
	#bookingForm .form-group .attribute-row-left label + div,
	#bookingForm .form-group .question-row-left .col-sm-8 {
		width: 100%;
	}
	.container {
		padding-left: 10px;
		padding-right: 10px;
	}
	.form-header {
		padding: 0 0px;
	}
	.form-body, .form-bookingfields, .form-questions, .form-payment {
		padding: 26px 21px;
	}
	.form-contact, .form-customer, .form-participant {
		padding: 0 0px;
	}
}

@media (min-width: 614px) {
	#bookingForm .form-group .field-row-left,
	#bookingForm .form-group .attribute-row-left,
	#bookingForm .form-group .question-row-left {
		display: flex;
		align-items: center;
	}
}

#bookingForm .form-group .field-row-left label,
#bookingForm .form-group .attribute-row-left label,
#bookingForm .form-group .question-row-left label {
	text-align: left;
	font-weight: 400;
	margin-bottom: 5px;
}

#bookingForm .form-group .field-row-left .form-control,
#bookingForm .form-group .attribute-row-left .form-control,
#bookingForm .form-group .question-row-left .form-control {
	padding: 12px;
	border-radius: 2px;
	border-width: 1px;
	border-style: solid;
	height: auto;
}

#bookingForm .form-group .field-row .form-control.nexus-radio {
	padding: 0px;
	border: 0px;
	box-shadow: none;
	color: inherit;
}

#bookingForm .form-group .field-row .form-control.nexus-radio .nexus-radio-option {
	padding-left: 5px;
	/*font-size: 14px;*/
}

.participant-item {margin-top:30px;}
.participant-item > .row:nth-child(1) {
	display: inline-block;
}
.participant-item > .row:nth-child(2) {
	display: inline-block;
	float:right;
}

.question-row .extraPriceField {
	width: 100%;
	left: 0;
	text-align: right;
}
.question-row .widget-number,
.question-row-left .widget-number,
.single-accessory-wrapper .widget-number{
	padding: 15px;
	height: auto;
}
.question-row .widget-timepicker, 
.question-row-left .widget-timepicker {
	padding: 15px;
	height: auto;
}

.single-accessory-wrapper .control-label {
	padding-top: 15px;
	padding-left: 0;
	text-align: left;
}

.accessory-price {
	padding-left: 10px;
}

#bookingForm .form-group.customer_zip, #bookingForm .form-group.customer_city {
	width: 50%;
	display: inline-block;
}
#bookingForm .form-group.customer_city {
	margin-left: 40px;
}
#bookingForm .nameWrapper {
	border-bottom: 0;
	text-align: left;
	padding-left: 0;
	padding-right: 0;
	margin-top: 0;
}
#bookingForm .nameWrapper .rowName {
	margin-left: 0;
	margin-right: auto;
	background: transparent !important;
	color: #000000;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0;
	line-height: 19px;
	display: flex;
	align-items: center;
	justify-content: space-between;
}
#bookingForm .consent-header {
	text-transform: uppercase;
	color: #000000;
	font-size: 16px;
	font-weight: bold;
	letter-spacing: 0;
	line-height: 19px;
}
#bookingForm .form-participant + .form-group .col-sm-4, #bookingForm .addcontactasparticipantrow > div {
	width: auto;
	padding-left: 0;
	padding-right: 0;
	margin-right: 0;
	width: 100%;
	text-align: right;
}
/*#bookingForm .ParticipantBtn, #bookingForm .addcontactasparticipantbutton {
	border: 2px solid #273777;
	border-radius: 27px;
	padding: 15px 25px;
	font-weight: bold;
	text-transform: uppercase;
	display: inline-block;
}*/
#bookingForm .form-payment .nameWrapper {
	padding-left: 15px;
	padding-right: 15px;
}
/*Aligna prisuppgifter till höger*/
.col-sm-8 > div > div > span {
	float:right;
}
#bookingForm .form-payment .col-sm-4.control-label,
#bookingForm .pricename_partblock .col-sm-4,
#bookingForm .form-group-subevents .col-sm-4,
#bookingForm .id06-consent .col-sm-4.control-label,
#bookingForm .nexus-cards .col-sm-4.control-label {
	text-align: left;
	font-size: 16px;
}
#bookingForm .form-payment .col-sm-4.control-label + div,
#bookingForm .pricename_partblock .col-sm-4.control-label + div,
#bookingForm .form-group-subevents .col-sm-8,
#bookingForm .id06-consent .col-sm-8,
#bookingForm .nexus-cards .col-sm-8 {
	font-size: 16px;
}
#spnTotalPrice {float:right;}

#bookingForm #sendFormBtn {
	text-transform: uppercase;
	font-weight: bold;
	font-size: 16px;
	line-height: 19px;
	padding: 18px 35px;
	display: inline-block;
	border-radius: 30px;
	border-width: 2px;
}

.floating-button {
    position: fixed;
    bottom: 20px;
    right: 20px;
	padding: 18px 35px;
    /*width: 80px;
    height: 50px;*/
    background: var(--bg-roda-green);
    color: #000;
    border-radius: 30px;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 16px;
    cursor: pointer;
    box-shadow: 0 4px 6px rgba(0,0,0,0.1);
    z-index: 1000;
}
.floating-button:hover {
	background: var(--bg-roda-green-hover);
}
#bookingForm .logo-wrapper {
	padding-bottom: 20px;
}

#bookingForm .preview-wrapper {
	text-align: center;
	font-style: italic;
	color: red;
	padding-bottom: 15px;
}

#bookingForm .original-unnamed-participant-price .error-span {
	margin-left: -15px;
}

#bookingForm .text-danger {
	margin-bottom: 0 !important;
}

#bookingForm .usealtinvoicefields .col-sm-offset-4 {
	margin-left: 15px;
}

.form-checkbox-readonly {
	accent-color: gray;
}

.header-flex-div {
	display: flex;
	place-content: space-between;
	align-items: center;
}

.nexus-radio-input .eduadmin-v-radio {
	vertical-align: middle;
}

footer.poweredby {
	margin-top: 100px;
}


/*Hide fields*/
.hide, .form-group:has(textarea[placeholder='Källa']) {
	display: none;
}
