﻿/* 
DH UNIVERSAL STYLES 
These styles can be overwritten by the child theme by creating a /assets/css/default.css file
There should be no styles in here that assume a specific HTML layout (header, footer, main, etc)
There should be no ID-based styles in here #dont_style_IDs
There should be no colors or other similar "design" styles which would change from site-to-site, put that in the template child themes
*/


/* basic default settings -------------------------------------------------- */
html,
body { margin: 0; padding: 0; position: relative; font: 16px Arial; line-height: 1.5; }

/* BASE FONT SIZE: For this to work well, font-sizes, margins, padding, positioning, etc should be defined in 'em' wherever possible */
@media only screen and (max-width: 1300px) { body { font-size: 16px; } }
@media only screen and (max-width: 1150px) { body { font-size: 15px; } }
@media only screen and (max-width: 1024px) { body { font-size: 14px; } }
@media only screen and (max-width: 940px)  { body { font-size: 13px; } }
@media only screen and (max-width: 850px)  { body { font-size: 12px; } }
@media only screen and (max-width: 782px)  { body { font-size: 16px; } } /* 782 based on WP mobile menu flip */

a { color: inherit; }
a img { border: none; /* force IE compliance */ }

img { max-width: 100%; height: auto; vertical-align: bottom; /* prevents space caused by the difference between the text baseline and text bottom */ }

/* fix for Chrome */
td > img { max-width: none; }

input[type="file"] { border: thin solid #abadb3; }

iframe { border: none; max-width:100%; }

figure { margin:0; }


/* common utility classes -------------------------------------------------- */

/* hide screen reader text (based on similar woocommerce rule) */
.screen-reader-text { clip: rect(1px,1px,1px,1px); height: 1px; overflow: hidden; position: absolute !important; width: 1px; word-wrap: normal !important; }

/* The following rule prevents content wrapping under a floated element. A value for "overflow" other than "visible" creates a new block formatting context (see http://www.w3.org/TR/CSS2/visuren.html#block-formatting ); The display rules fix IE not working in some cases */
.vertical-clear { overflow: auto; display: inline-block; display: block; }

/* make bottom of element clear floated child elements */
.clearfix:before,
.clearfix:after { content: " "; display: table; }
.clearfix:after { clear: both; }
.clear { clear: both; }
.float-right { float: right; z-index: 1; }
.float-left { float: left; z-index: 1; }

/* hide element */
.hidden { display:none; }

/* There isn't a direct way to gray scale in IE 10-11; see utility.js for work around */
.grayscale { filter: url("data:image/svg+xml;utf8,<svg xmlns=\'http://www.w3.org/2000/svg\'><filter id=\'grayscale\'><feColorMatrix type=\'matrix\' values=\'0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0.3333 0.3333 0.3333 0 0 0 0 0 1 0\'/></filter></svg>#grayscale"); /* Firefox 10+, Firefox on Android */ -webkit-filter: grayscale(100%); /* Chrome 19+, Safari 6+, Safari 6+ iOS */ filter: grayscale(100%); filter: gray; /* IE6-9 */ }

/* the following vertical alignment styles depend on the height of the containing element */
.valign-middle { position: relative; top: 50%; -webkit-transform: translateY(-50%); -ms-transform: translateY(-50%); transform: translateY(-50%); }
.valign-bottom { position: relative; top: 100%; -webkit-transform: translateY(-100%); -ms-transform: translateY(-100%); transform: translateY(-100%); }

/* justifying last and/or only line */
.fulljustify { text-align: justify; margin-bottom: -1.25em; }
/* pull following block up, overcoming the "ghost" space caused by the following rule */
.fulljustify:after { content: ""; display: inline-block; width: 100%; }

/* make a pseudo ordered list out of non-li elements */
.ordered-list-item { counter-increment: list-item-counter; }
.ordered-list-item:before { content: counter(list-item-counter, decimal); }


/* 782 based on WP mobile menu flip */
@media (min-width: 783px) {
	/* hide item on desktop sizes */
	.tablet-only,
	.phone-only,
	.desktop-hide { display: none; }
}

/* 782 based on WP mobile menu flip */
@media only screen and (max-width:782px) {

	/* hide item on tablet sizes */
	.desktop-only,
	.phone-only,
	.tablet-hide { display: none; }

}

/* 568 based on iphone 5 landscape */
@media only screen and (max-width:568px) {

	/* hide item on phone sizes */
	.desktop-only,
	.tablet-only,
	.phone-hide { display: none; }

}

.button { display: inline-block; padding: 0.5em 2em 0.7em; text-decoration: none; }
.button-small { padding: .2em 1em; font-size: .9em; }
