
/* Font Styles */
p.disclaimer, .disclaimer p { font-size:14px; line-height:1.3em; }
p:last-child, h1:last-child, h2:last-child, h3:last-child, h4:last-child, h5:last-child { margin-bottom:0; }
h1, h2, h3, h4, h5, h6 { font-weight:bold; line-height:1.25em; margin-bottom:1rem; width:100%; transition:all 0.15s linear }
h1 { font-size:38px; line-height:1.15em; margin-bottom:2rem; }
h2 { font-size:38px; }
h3 { font-size:30px; }
h4 { font-size:22px; font-weight:400; line-height:1.15em; margin-bottom:.5rem; }
li { margin:0 0 0.75em; font-size:17px; line-height:1.4em; }

/* Layout Styles */
.wrapper { width:100%; height:100%; max-width:100%; padding:2rem 1rem; margin:0 auto; position:relative; }


/*************/
/* SUBHEADER */
/*************/
section.subheader { height:auto; }
section.subheader .wrapper { min-height:550px; height:auto; background:rgba(255,255,255,0.8); }
section.subheader .wrapper .caption { display:-webkit-box; display:-moz-box; display:-webkit-flex; display:flex; flex-wrap:wrap; justify-content:flex-start; align-items:flex-start; max-width:575px; width:100%; text-align:left; }
section.subheader .wrapper .caption h1 { margin-bottom:0.5rem; }
section.subheader .wrapper .caption h2 { font-size:24px; margin-bottom:1rem; }
section.subheader .wrapper .caption h4 { margin-bottom:2rem; }
section.subheader .wrapper .caption .wysiwyg { margin-bottom:1em; }
section.subheader .wrapper .caption .paragraph { margin-bottom:1.5em; }
section.subheader .wrapper .caption .sub-cta { min-width:170px; margin:0 .5rem 1rem 0; }
section.subheader .wrapper .caption .sub-cta:has(a[href*="tel"].blue-border),
section.subheader .wrapper .caption .sub-cta:has(a[href*="tel"].blue-border) + .sub-cta { min-width:195px; }
section.subheader .wrapper .caption .sub-cta:last-child { margin-right:0; }
section.subheader .wrapper .caption .sub-cta .btn, 
section.subheader .wrapper .caption .sub-cta .button, 
section.subheader .wrapper .caption .sub-cta button { margin:0; width:100%; }

section.subheader.narrow .wrapper { min-height:22em; }

/* Mobile breakpoint. */
@media screen and (max-width:580px) {
	section.subheader .wrapper .caption { flex-direction:column; }
	section.subheader .wrapper .caption .sub-cta { margin:0 0 1rem; }
}

/* Tablet breakpoint. */
@media screen and (min-width:768px) {
	.wrapper { padding:3rem 0; width:92%; max-width:1650px; }
	section.subheader { height:auto; }
	section.subheader .wrapper { min-height:450px; width:92%; padding:2rem 0; max-width:1520px; background:none; }
	section.subheader .wrapper .caption h1 { margin-bottom:1rem; }
	section.subheader .wrapper .caption h2 { margin-bottom:2rem; }
	section.subheader.narrow { min-height:350px; }
}

@media screen and (min-width:960px) {
	h1 { font-size:40px; }
	h2 { font-size:40px; }
	.wrapper { padding:4rem 0; }
	section.subheader .wrapper { min-height:550px; }
	section.subheader.ap .wrapper .caption { max-width:800px; }
	section.subheader.how-it-works .wrapper .caption,
	section.subheader.learning-model .wrapper .caption,
	section.subheader.healthcare-sys .wrapper .caption { max-width:745px; }
}

@media screen and (min-width:1280px) {
	section.subheader h1 { font-size:50px; }
	section.subheader h2 { font-size:40px; }
	section.subheader h3 { font-size:30px; }
	section.subheader h4 { font-size:22px; }
	section.subheader h1, section.subheader h2, section.subheader h3, section.subheader h4, section.subheader h5 { line-height:1.15em; }
}
