
.et_pb_counter_amount, .et_pb_featured_table .et_pb_pricing_heading, .et_quote_content, .et_link_content, .et_audio_content {
    background-color: #d29223 !important;
}

/* Slight adjustment to the prominence of the feratured column */
.et_pb_featured_table {
  top: -2em;
  /*padding-bottom:4em;*/
}

/* Accent Color */
/*.et_pb_sum,*/
.et_pb_pricing li a,
.et_pb_pricing_table_button,
.et_overlay:before,
.et_pb_member_social_links a:hover,
.woocommerce-page #content input.button:hover .et_pb_widget li a:hover,
.et_pb_bg_layout_light .et_pb_promo_button,
.et_pb_bg_layout_light.et_pb_module.et_pb_button,
.et_pb_bg_layout_light .et_pb_more_button,
.et_pb_filterable_portfolio .et_pb_portfolio_filters li a.active,
.et_pb_filterable_portfolio .et_pb_portofolio_pagination ul li a.active,
.et_pb_gallery .et_pb_gallery_pagination ul li a.active,
.et_pb_contact_submit,
.et_pb_bg_layout_light .et_pb_newsletter_button  {
	color: #d29223 !important;
}
.et_pb_sum {	/*Needs no "important!" so that the divi animation can change colours*/
	color: #d29223;
}

.et_pb_featured_table .et_pb_button_wrapper {
	background-color: #d29223 !important;
}

.et_pb_pricing li a.traditional {
	color: blue !important;
}
.et_pb_pricing li a.traditional:hover {
	text-decoration: underline;
}

div.et_pb_pricing div.et_pb_pricing_table > a,
div.et_pb_pricing a.et_pb_pricing_table_button {
	color:black !important;
}

.et_pb_pricing li {
	padding-bottom:1.3em ;
	line-height:1.3em;
}

.et_pb_pricing li span::before {
	color: #d29223 !important;
}


.et_pb_pricing li.et_pb_not_available {
	text-decoration: line-through;
	font-style: italic;
}

.et_pb_pricing_heading {
  min-height: 11em;
  padding: 1em 0.5em;
}


@media only screen and (max-width: 1140px) {
  .et_pb_pricing_title {
    font-size: 18px;
  }
  .et_pb_pricing_heading {
    min-height:8em;
  }
}


@media only screen and (max-width: 540px) {
	.et_pb_pricing li {
		padding-bottom:1.2em !important;
		line-height:1.4em !important;
	}

}
/*
 * class: iC_TableAvailableLong
 *
 * Table of appointments (large version)
 */

/* Box surrounding the table */
	.et-box-appointmentstable .et-box-content {
		background: white !important;
		box-shadow: 6px 6px 18px rgba(0,0,0,0.5);
	}

	.et-box-appointmentstable,  .et-box-appointmentstable .et-box-content {
		border-radius:12px;
	}
	.et-box-appointmentstable h3 {
		color:black !important;
	}

table.available_plannedbreaks {
	border:none;
}
table.available_plannedbreaks tr {
	border:none;
}
table.available_plannedbreaks tr td {
	border:none;
}
table.available_plannedbreaks tr td ul {
	padding:0;
}
ul.availability_plannedbreaks {
	margin-left:3%;
}
ul.availability_plannedbreaks li {
	padding-bottom:0.5em;
}
ul.availability_plannedbreaks li:first-child {
	font-weight:bold;
}
ul.availability_plannedbreaks li:first-child::before {
	content: "(Next break) ";
}
ul.availability_plannedbreaks li.current::before {
	content: "(Current break) " !important;
} 


/* Inserting the table prepends <p></p> */
div.column_data_yellow_highlight div.et_pb_text_inner > p:first-child {
	padding:0;
}

table.iC_TableAvailableLong {
	width:inherit;
	font-family: 'Open Sans', Arial, sans-serif;
	border:none !important;
	margin-right:1em;
}
table.iC_TableAvailableLong tr td {
	font-family: 'Open Sans', Arial, sans-serif;
	color:black;
	border: none;
}
table.iC_TableAvailableLong tr.service td {
	font-size: 1.8em; /*26px;*/
	font-weight:300;
	padding:20px 0 10px 0;
	border:none;
	line-height:1.3em;
}
table.iC_TableAvailableLong tr.service:first-child td {
	padding-top:0px;
}
table.iC_TableAvailableLong tr.service td span#redirect {
	font-size: 14px;
    font-style: italic;
}
table.iC_TableAvailableLong tr td.hour {
	white-space: nowrap;
	padding:3px 4px;
}
table.iC_TableAvailableLong tr td {
	position:relative;
	padding-left: 0;
	padding-right: 6px;
	font-size: 75%;
	/*padding:10px;*/
}

table.iC_TableAvailableLong tr th.dow {
	font-size:100%;
	font-weight:300;
	line-height:1.4em;
	max-width:initial;

	color: initial;
    font-weight: bold;
    padding: initial;
	padding-left: 0;
	padding-right: 6px;

	/*vertical-align:top; */
}
table.iC_TableAvailableLong tr td.special {
	font-style: italic;
	font-size:110%;
	font-weight:300;
}
table.iC_TableAvailableLong tr td.crossout {
	color:#e9e9e9 !important; /*lightgrey !important;*/
}
table.iC_TableAvailableLong tr td.priority {
	color:red;
}

table.iC_TableAvailableLong tr td.crossout::after {
	/*
	position: absolute;
	content: "";
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	background-image: linear-gradient(to bottom right,  transparent calc(50% - 1px), lightgrey, transparent calc(50% + 1px));
*/
  position: absolute;
  content: "";
  left: 0;
  top: 50%;
  right: 0;
  border-top: 3px solid;
  border-color: inherit;

  -webkit-transform:rotate(-25deg);
  -moz-transform:rotate(-25deg);
  -ms-transform:rotate(-25deg);
  -o-transform:rotate(-25deg);
  transform:rotate(-25deg);
}

table.iC_TableAvailableLong tr td.hour span.et-dropcap {
	font-family: "Century Schoolbook","Times New Roman",Times,serif;
    font-style: italic;
	margin-right:2px;
	font-size:40px;
}
table.iC_TableAvailableLong tr td.hour span.meridiem {
	top: 0px;
	right:0;
    position: absolute;
	/* New... */
	line-height: 1em;
    height: 1em;
}

/* PAtch */
/*
table.iC_TableAvailableLong tr td.hour span.et-dropcap {
	line-height:1em;
	height:1em;
}
*/

table.iC_TableAvailableLong tr.NotWorking td, table.iC_TableAvailableLong tr.NotWorking th.dow {
	color: rgb(151, 148, 148);
	font-weight:300; 
	font-style: italic;
}
table.iC_TableAvailableLong tr.NotWorking td {
	padding-top:1em;
	padding-bottom:1em;
}


p.availability_message {
	font-weight:bold;
	margin-bottom:1em;
	color: #e84504;
}

/* Days when I'm not available */
/* Colourise rows when I'm not working */
/*table.iC_TableAvailableLong tr.Skype.Mon td,*/
table.iC_TableAvailableLong tr.Skype.Fri td,
table.iC_TableAvailableLong tr.Skype.WE td {
	color: lightgray;
}
/* OVerrides */
table.iC_TableAvailableLong tr.Poly.Skype.Fri td {
	color:initial;
}

/* DOW Message */
table.iC_TableAvailableLong tr.DOWMessage td, table.iC_TableAvailableLong tr.SpecialMessage td {
	font-size: 100%;
	font-style: italic;
	padding-bottom: 1.5em;
}


table.iC_TableAvailableLong {
	& tr.row_0, tr.row_2, tr.row_3 {
		& td, th {
		background-color: rgb(251 243 201);
		padding: 10px 0 4px;
		}
	}
} 
table.iC_TableAvailableLong tr th {
	padding-left:10px !important;
}

table.iC_TableAvailableLong tr td.crossout > span.et-dropcap {
	text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.1);
}


table#appointmentstable tr.DOWMessage td {
	padding-bottom:2em;
}
table tr.DOWMessage td b {
	color: var(--highlight_color);
}



@media only screen and ( max-width: 1100px ) {
	table.iC_TableAvailableLong tr td.hour span.et-dropcap {
		font-size:40px !important;
  	}
  	table.iC_TableAvailableLong tr th.dow {
  		font-size:95% !important;
  	}
}

@media only screen and ( max-width: 980px ) {
	table.iC_TableAvailableLong tr td.hour span.et-dropcap {
		font-size:30px !important;
  	}
}

@media only screen and (max-width: 767px) {
	table.iC_TableAvailableLong {display:none;}
	div.iC_TableAvailableLong_isshowing table#appointmentstable {display:block !important;}
}
/*
 * class: iC_TableAvailable
 *
 * Table of appointments (short version)
 */

div.iC_TableAvailableLong_isshowing table#appointmentstable {display:none;}

table#appointmentstable {
	/*margin-left:1em;*/
	border: none !important;
}
table#appointmentstable tr {
	border: none !important;
}

table#appointmentstable tr td {
	font-size:85%;
	vertical-align: top;
	line-height:1.3em;
	padding-left: 6px;
	padding-right: 6px;
	border: none !important;
}

table#appointmentstable td.servicetitle, table#appointmentstable tr td.dow, table#appointmentstable tr td.hod{
	font-weight:bold;
   color: initial;
   font-weight: bold;
   padding: initial;
   padding-left: 6px;
   padding-right: 6px;
   padding-top:6px;
}

table#appointmentstable tr.dowrow td.hod span.priority {
	color:red;
}

.footer-widget table#appointmentstable {
	font-size:115%
}

#appointmentstable tr td.servicetitle {
	padding-top:1em;
}

#appointmentstable tr td.servicetitle span#redirect {
	font-size: 14px;
    font-style: italic;
}


.textwidget table#appointmentstable tr td {
   color:white;
}

p.availability_message {
	font-weight:bold;
	margin-bottom:1em;
   color: #e84504;
   padding-bottom:0;
}
div.general_message p{font-size:90%}
div.general_message p:first-child{margin-bottom:0; padding-bottom:0}


/**** Appointment Notifications ****/
#appointment_notification {
   font-size: 90%;
   line-height: 1.1em;
   border-radius:12px;
   border: 1px solid orange;
   padding: 12px;
	background-color:white;
   background-image: radial-gradient(circle at top left,rgba(252, 206, 0, 0.12) 10%,#fff 80%) !important;

}

#appointment_notification h2 {
   text-transform: none;
   font-size: 1.5em;
}

#appointment_notification p span.title,
   #appointment_notification p.label {
   font-weight:bold;
}

#appointment_notification p.label {
   padding:3px 0;
   display: table-cell;
   padding-right: 10px;
}

#appointment_notification textarea {
   width:100%;
   height:6em;
}

#appointment_notification p.label input,
   #appointment_notification textarea {
   margin-top:0.5em;
}

#appointment_notification p.label input.wpcf7-text {
   width:150px !important;
}

#appointment_notification p.label span.client-appointments {
   width:200px;
}

/*#appointment_notification p.label label,*/
   #appointment_notification p.label span.wpcf7-checkbox span.wpcf7-list-item-label {
   color: var(--highlight_color);
}




#appointment_notification input[type="submit"] {
   width: fit-content;
   margin: 1em 0;
   padding: 0.25em 1em;

   /* Colouring */
   background: var(--highlight_color);
   color: #fff;
   border: 1px solid var(--highlight_color2);
   border-radius: 20px;
   box-shadow: 5px 5px 5px var(--highlight_color2);
   text-shadow:none;
}

#appointment_notification input[type="submit"]:hover {
   background: var(--highlight_color_level2);
   text-decoration: underline;
}

#appointment_notification input[type="submit"]:active {
   border-color: black;
   text-shadow: -2px -2px rgba(0, 0, 0, 0.6);
   position: relative;
   left: 1px;
   top: 1px;
}

#appointment_notification div#explanation,
	#appointment_notification span.comments{
   font-style: italic;
}

#appointment_notification span.comments {
	font-size: 95%;
	font-weight:normal;
	display:block;
}

/***
 * Appointments Key Icons 
*/
table.availability_guides {
   margin:2em 0;
   border:none !important; 
   margin-top: 3em !important;
}
/*
table.availability_guides tr {
   vertical-align: top;
}
*/ 

table.availability_guides,
 	table.availability_guides td {
	border:none  !important;
	border-top:none;
	font-size:initial;
}

table.availability_guides td:first-child {
	width:82px;
	text-align: left;
	padding: 0;
}
table.availability_guides td:first-child img {
	width:48px;
	height: auto;
}

table.availability_guides td:nth-child(2) {
   padding-left:0;
   padding-top:0;
}

table.availability_guides tr.waiting {
   display:none;
}


/* Colourise rows when I'm not working */
/*table#appointmentstable tr.Skype.Mon td,*/
table#appointmentstable tr.Skype.Fri td,
table#appointmentstable tr.Skype.WE td {
	color: rgb(167, 165, 165);
   font-weight: initial;
}

/* Overrides */
table#appointmentstable tr.Poly.Skype.Fri td {
   color:initial;
}

/* Responsive table */
table#appointmentstable tr.dowrow:nth-child(2n) {
	background-color: #fff4ca;
}
div.textwidget table#appointmentstable tr.dowrow:nth-child(2n) {
   background-color: initial;
}

table#appointmentstable tr.dowrow td {
	padding-bottom:4px;
}




/* Responsive */
@media only screen and (max-width: 768px) {
   #appointment_notification {
      font-size: 90% !important;
   }

   #appointment_notification p.label {
      display: block;
      padding: 0.5em 0;
   }

   #appointment_notification p.label span.client-checkbox-counselling span.wpcf7-list-item {
      margin-top: 0.5em;
   }

   #appointment_notification h2 {
      font-size: 1.5em !important;
   }
   #appointment_notification p.label input[type="text"],
      #appointment_notification p.label input.wpcf7-text {
      display:block;
      width: initial !important;
   }
   #appointment_notification div#explanation {
      font-size: 90% !important;
   }

   /***
   * Appointments Key Icons 
   */
   table.availability_guides td {
      line-height: 1.4em;
      padding-bottom: 1em;
      font-size:90%;
   }
   table.availability_guides tr {
      vertical-align: top;
   }
   
}

/* Patch - not sure why WPCF is triggering (?) Google's "stuff is wider than the page" errors */
@media only screen and (max-width: 390px) {
   #appointment_notification p.label input[type="text"],
      #appointment_notification p.label input.wpcf7-text {
      width: 95% !important;
   }
}
