div.apt-caption { display: block; background: #1268B3; font-size: 0; padding: 30px;}
div.apt-caption > div { display: inline-block; vertical-align: middle;}
div.apt-caption > div:first-child { width: calc(100% - 400px)}
div.apt-caption > div:last-child { width: 400px;}
div.appt-title { display: block; color: #fff; font-size: 40px; font-family:'Helvetica Neue LT W01_41488878';  ; margin-bottom: 10px}
div.appt-subtitle { display: block; color: #fff; font-size: 34px; font-family:'Helvetica Neue LT W01_41488878';}
div.appt-day { display: block; text-align: left; font-size:0; padding: 5px 0;}
div.appt-day > span { display: inline-block; vertical-align: top; color: #fff; font-size: 24px; font-family:'Helvetica Neue LT W01_65 Md'; }
div.appt-day > span:first-child { width: calc(100% - 140px); text-align: left;}
div.appt-day > span:last-child { width: 140px; text-align: right}

div.appt-cont { max-width: 1000px; margin: 0 auto;}

div.appt-main-title { display: block; width: 100%; max-width: 100%;  margin: 0 auto 70px; font-size: 90px; color: #1268B3; font-family:'Helvetica Neue LT W01_41488878';  text-align: left; padding-left: 0px; position:relative;}
/*div.appt-main-title:before { content: ""; display: block; width: 80px; height: 140px; left: 0; bottom: 0; background: url(/img/book-appt/video.svg) no-repeat left bottom; position: absolute; background-size: contain;}*/
/*div.appt-main-title.phone:before { background: url(/img/book-appt/phone.svg) no-repeat left bottom; background-size: contain;}*/
/*div.appt-main-title.in-person { padding-left: 180px}*/
/*div.appt-main-title.in-person:before { width: 140px; height: 100px; background: url(/img/book-appt/in-person.svg) no-repeat left bottom; background-size: contain;}*/
/*div.appt-main-title.email { padding-left: 180px}*/
/*div.appt-main-title.email:before { width: 140px; height: 100px; background: url(/img/book-appt/email2.svg) no-repeat left bottom; background-size: contain;}*/

div.registration form { max-width: 100%;	}
div.registration input[type="text"], input[type="email"] { max-width: 100%;	}

p.appt-full { display: block; font-size: 24px; text-align: center; color: #000; margin-top: 0px;}

#calendar { display: block; }
#calendar-container { display: none; }
#calendar-container.active { display: block; }
#calendarHolder { display: none;}
#calendarHolder.active { display: block;}
div.events-calendar { width: 100%; max-width: 1340px; padding: 0px; margin: 50px auto;}
div.month-selection { display: block; width: 100%; padding: 15px 0; margin-bottom: 25px; position: relative;}

div.month-selection label { display: block; width: calc(100% - 300px);   font-size: 40px; color: #1268B3; font-family:'Helvetica Neue LT W01_41488878';text-align: left; }
div.appt-time-title { display: block; width: 100%;  font-size: 40px; color: #1268B3; font-family:'Helvetica Neue LT W01_41488878'; text-align: left; margin-bottom: 40px; margin-top: 80px}
div.appt-time-title:first-child { margin-top: 0px;}

div.month-selection ul { display: block; position: absolute; width: 300px; right: 0; bottom: 15px}
div.month-selection ul li { display: block; width: 100%; text-align: center; position: relative; z-index: 2}
div.month-selection ul li:first-child, div.month-selection ul li:nth-child(3) { width: 12px; height: 21px; position: absolute; z-index: 3; top: 50%; margin-top: -10px; }
div.month-selection ul li:first-child a, div.month-selection ul li:nth-child(3) a { background: url(/img/book-appt/arrow-blue.svg) no-repeat center center; background-size: contain; display: block; width: 100%; height: 100%; font-size: 0}
div.month-selection ul li:first-child a.past, div.month-selection ul li:nth-child(3).past a { background: url(/img/book-appt/arrow.svg) no-repeat center center; background-size: contain; opacity:.5; cursor: not-allowed}
div.month-selection ul li:first-child { left: 0; transform: rotate(180deg);}
div.month-selection ul li:nth-child(3) { right: 0;}
div.month-selection ul li:nth-child(2) a { font-size: 40px; color: #1268B3; font-family:'Helvetica Neue LT W01_41488878'; text-align: center; line-height: 1;}

div.weekdays  { display: block; width: 100%; }
div.weekdays  div.week  {  display: block; width: calc(100% + 20px); font-size: 0; margin: 0 -10px 10px;}
div.weekdays  div.week > div {  display: inline-block;  width: calc(14.28% - 20px);  vertical-align: top;   position: relative; margin: 0 10px; line-height: 1.33; font-size: 18px; color: #1268B3; font-family:'Helvetica Neue LT W01_65 Md'; text-align: center; }
div.weekdays  div.week > div.header {  margin-bottom:5px}
div.weekdays  div.week > div.header span {display: none; text-transform: uppercase;}
div.calendar-body  { display: block; width: 100%; }
div.calendar-body  div.week { display: block; width: calc(100% + 20px); font-size: 0; margin: 0 -10px 20px; }
div.calendar-body  div.week > div {  display: inline-block;  width: calc(14.28% - 20px);  vertical-align: top;   position: relative; margin: 0 10px; border: 0; border-radius: 8px; height: 100%; padding: 0; height: 0; padding-bottom: calc(14.28% - 20px); background-color: #EAEAEA; opacity: .3; }
div.calendar-body  div.week > div.other-month {  background-color: #EAEAEA;}
div.calendar-body  div.week > div.other-month.with-events {  background-color: #ccc;}
div.calendar-body  div.week > div > span {  color: #5C5C5C; font-family:'Helvetica Neue LT W01_65 Md'; text-align: center; top: 50%; display: block; width: 100%; position: absolute; left: 0; margin-top: -0.5em; font-size: 32px; line-height: 32px;}
div.calendar-body  div.week > div.with-events {   opacity: 1; cursor: pointer}

div.calendar-body  div.week > div.today > span {  color: #1268B3}

div.calendar-body  div.week > div.selected {  background-color: #1268B3}
div.calendar-body  div.week > div.selected > span {  color: #fff}

#appt-time-holder { display: none; width: 100%; font-size:0; text-align: left;}
#appt-time-holder.active { display: block; }
#appt-times { display: block; width: 100%; font-size:0; text-align: left;}
#appt-times > div { display: inline-block; vertical-align: top; width: 124px; text-align: center; line-height: 60px; padding:0; border-radius: 10px; opacity: .3; background-color: #EAEAEA; color: #5C5C5C; font-family:'Helvetica Neue LT W01_65 Md'; font-size: 20px; margin: 0 15px 15px 0}
#appt-times > div:last-child { margin-right: 0}
#appt-times > div.active { opacity: 1; cursor: pointer; }
#appt-times > div.selected { opacity: 1; background-color: #1268B3; color: #fff; }

div.registration p.inline-response { margin-bottom: 0}
div.registration p.reveal-response { font-size: 24px; margin-top: 100px;}

.select2-container--default .select2-selection--single { padding: 0}
.select2-container--default .select2-selection--single .select2-selection__rendered { display: block; width: 100%; padding-right: 60px; padding-left: 20px; }

#bt-show-calendar { background-color: var(--col-primary); color: #fff; line-height: 72px; padding:0 30px; border-radius: 15px; border: 0; display: table; margin: 50px auto; }
button.appt-button { background-color: var(--col-primary); color: #fff; line-height: 72px; padding:0 30px; border-radius: 15px; border: 0; display: none; margin: 50px auto; }
button.appt-button.active { display: table; }
button.appt-button.disabled { opacity: .3; cursor: not-allowed;}
button.appt-button.disabled:hover { background-color: var(--col-primary); }
button.appt-button:not(.disabled):hover { background-color: #000;}

div.appt-types { display: block; width: 100%;}
div.appt-types > div.radio  {width: 33.33%; margin: 0}
div.appt-types > div.radio label {text-align: center; font-size: 24px; color: #000; padding-bottom: 50px; padding-top: 0px; position: relative; padding-left: 0; width: 100%; display: block;}
div.appt-types > div.radio label > img { display: block; margin: 0px auto 15px; width: 50px; height: auto;}
div.appt-types > div.radio:first-child label > img { width: 90px; margin-top: 27px;}
div.appt-types > div.radio label:before {top: auto; bottom: 0; left: 50%; margin-left: -15px; width: 30px; height: 30px; border-radius: 30px;}
div.appt-types > div.radio label:after {opacity: 0}
div.appt-types > div.radio input[type="radio"]:checked + label:after {top: auto; bottom: 4px; left: 50%; margin-left: -11px; width: 22px; height: 22px; border-radius: 22px; border: 0; background: var(--col-primary); opacity: 1; transition: opacity .3s ease-in;}

div.appt-cont div.reveal-response { font-size: 24px; text-align: left; padding: 0 0 30px; text-align: center;}
/*article { margin-top: 0}*/
@media only screen and (max-width:1180px) {
		div.apt-caption { padding: 20px;}
		div.apt-caption > div:first-child { width: calc(100% - 320px)}
		div.apt-caption > div:last-child { width: 320px;}
		div.appt-title { font-size: 40px; }
		div.appt-subtitle { font-size: 24px; }
		div.appt-day > span { font-size: 18px; }
		div.appt-day > span:first-child { width: calc(100% - 100px); }
		div.appt-day > span:last-child { width: 100px; }
}
@media only screen and (max-width:1040px) {
		#container { margin-top: 0px !important; }


div.appt-types > div.radio label {font-size: 18px; }
div.appt-types > div.radio label > img { width: 30px; }
div.appt-types > div.radio:first-child label > img { width: 60px; margin-top: 15px;}

}

@media only screen and (max-width: 880px) {
	
	div.appt-cont { padding: 50px 20px 0; max-width: 1000px; margin: 0 auto;}

	div.apt-caption { padding: 20px;}
	div.apt-caption > div:first-child { width: calc(100% - 280px)}
	div.apt-caption > div:last-child { width: 280px;}
	div.appt-title { font-size: 32px; }
	div.appt-subtitle { font-size: 18px; }
	div.appt-day > span { font-size: 16px; }
	div.appt-day > span:first-child { width: calc(100% - 100px); }
	div.appt-day > span:last-child { width: 100px; }

	div.month-selection label, div.appt-main-title, div.appt-time-title, div.month-selection ul li:nth-child(2) a { font-size: 32px; }

	div.appt-main-title { padding-top: 50px; padding-left: 80px; }
	div.appt-main-title:before { width: 60px; height: 100px; }
	div.appt-main-title.email { padding-left: 110px}
	div.appt-main-title.email:before { width: 90px; height: 50px; }

	div.registration input[type="submit"] { line-height: 60px; padding: 0 25px; font-size: 24px; }

	div.weekdays  div.week  {  width: calc(100% + 10px); margin: 0 -5px 5px;}
	div.weekdays  div.week > div {  width: calc(14.28% - 10px);  margin: 0 5px; font-size: 16px; }
	div.calendar-body  div.week { width: calc(100% + 10px); margin: 0 -5px 10px; }
	div.calendar-body  div.week > div {  width: calc(14.28% - 10px);  margin: 0 5px; padding-bottom: calc(14.28% - 10px); }
	div.calendar-body  div.week > div > span {  font-size: 24px; line-height: 24px;}

	#appt-times > div { width: 100px; line-height: 40px; font-size: 16px; margin: 0 10px 10px 0}

}


@media only screen and (max-width: 760px) {
		
		div.appt-cont { padding: 10px 0px}

		form.std-form div.field:last-child {padding-right: 10px}

		div.apt-caption { padding: 15px 20px;}
		div.appt-title { margin-bottom: 5px}
		div.apt-caption > div { display: block !important; width: 100% !important;}
		div.appt-hours { margin-top: 10px;}

		div.appt-day { padding: 3px 0}
		div.appt-title { font-size: 20px; }
		div.appt-subtitle { font-size: 14px; }
		div.appt-day > span { font-size: 12px; }

		div.weekdays  div.week  {  width: calc(100% + 6px); margin: 0 -3px 3px;}
		div.weekdays  div.week > div {  width: calc(14.28% - 6px);  margin: 0 3px; font-size: 0px; }
		div.weekdays div.week > div.header span {  display: block; font-size: 14px;}
		div.calendar-body  div.week { width: calc(100% + 6px); margin: 0 -3px 6px; }
		div.calendar-body  div.week > div {  width: calc(14.28% - 6px);  margin: 0 3px; padding-bottom: calc(14.28% - 6px); }
		div.calendar-body  div.week > div > span {  font-size: 20px; line-height: 20px;}

		div.appt-main-title, div.appt-time-title, div.month-selection ul li:nth-child(2) a { font-size: 24px; }
		div.month-selection label, div.month-selection ul li:nth-child(2) a { font-size: 20px; }
		div.month-selection ul { width: 120px; bottom: 15px}
		div.month-selection label { width: calc(100% - 120px);  }

		div.registration p.reveal-response { margin-top: 50px;}

div.registration input[type="text"], input[type="email"] { line-height: 50px;min-height: 50px}

div.appt-main-title { margin-bottom: 30px; padding-top: 0}

/*div.month-selection ul li:first-child, div.month-selection ul li:nth-child(3) { width: 12px; height: 21px; position: absolute; z-index: 3; top: 50%; margin-top: -10px; }*/
/*div.month-selection ul li:first-child a, div.month-selection ul li:nth-child(3) a { background: url(/img/book-appt/arrow-blue.svg) no-repeat center center; background-size: contain; display: block; width: 100%; height: 100%; font-size: 0}*/
/*div.month-selection ul li:first-child a.past, div.month-selection ul li:nth-child(3).past a { background: url(/img/book-appt/arrow.svg) no-repeat center center; background-size: contain; opacity:.5; cursor: not-allowed}*/
/*div.month-selection ul li:first-child { left: 0; transform: rotate(180deg);}*/
/*div.month-selection ul li:nth-child(3) { right: 0;}*/


}

@media only screen and (max-width: 600px) {

div.appt-types > div.radio label {font-size: 16px; padding-bottom: 30px; }
div.appt-types > div.radio label > img { margin: 0px auto 10px; }
div.appt-types > div.radio label:before {margin-left: -10px; width: 20px; height: 20px; border-radius: 20px;}
div.appt-types > div.radio input[type="radio"]:checked + label:after {bottom: 3px; margin-left: -7px; width: 14px; height: 14px; border-radius: 14px; }
	
	div.splitter.split-2 > div { display: block; width: 100%; }
	form.std-form div.field { margin-bottom:15px}
	form.std-form div.field:last-child {padding-right: 0px}
	div.checkbox { margin-bottom: 25px; margin-top: 25px}
	div.checkbox label { font-size: 14px;}
	form.std-form div.radios { margin-bottom: 25px; margin-top: 25px}
	form.std-form div.radios > label { font-size: 18px; display: block; margin-bottom: 10px}
	form.std-form div.radio > label { font-size: 18px; }

}

@media only screen and (max-width: 480px) {
		div.calendar-body  div.week > div > span {  font-size: 16px; line-height: 16px;}

	#appt-times > div { width: calc(33.33% - 7px); margin: 0 10px 10px 0}
	#appt-times > div:nth-child(3n) { margin-right: 0}

}