/* ==========================================================================
   RESPONSIVE STYLES
   ========================================================================== */

/* ========================================================================== */
/* 1201px --> 1440px */

@media only screen
and (max-width: 1440px) {

	/* columns */
		.one-col .col-pad       { margin: 8em 20%; }
		.two-col .left .col-pad { margin: 8em 6em 8em 8em; }

	/* home */
		#hero-wrap 				{ margin-bottom: 0; }
		#services-row 			{ padding-left: 3em; padding-right: 3em; }

	/* navigation */
		.header-nav-label		{ display: block; }

	/* service page portal */
		.interior #services-row	{ padding-top: 0; padding-bottom: 4em; }

	/* text/image blocks */
		.two-col .col			{ width: 60%; }
		.two-col .image			{ bottom: auto; height: calc(75% - 8em); top: calc(4em + 12.5%); width: 40%; }

	/* layouts */
		.flex-33-gutter-20-1440	{ width: calc(33.3333% - 20px);  }

}

/* ========================================================================== */
/* 1024px --> 1200px */

@media only screen
and (max-width: 1200px) {

	/* header */
		#header-inner        	{ padding-left: 3em; padding-right: 3em; }
		#logo                	{ width: 270px; height: auto; }
		.parent_li > a			{ font-size: 15px; padding: 16px 16px 15px 16px; }

	/* page title */
		#page-title h1	      	{ font-size: 4.6em; line-height: 1.08695652; }
		#page-title .bp-title 	{ font-size: 3.2em; }

	/* home page */
		#hero-wrap 			      	{ min-height: 54em; }
		#services li 			    { height: 36em; }
		#services-row               { padding-top: 6em; }
		#services .subtitle         { font-size: 1.4em; }
		.contact-cta                { padding-top: 6em; padding-bottom: 6em; }
		.random-testimonial-content { padding: 2em 4em; max-width: 900px; }
		.bl-landing .content-wrap	{ padding-left: 4em; padding-right: 4em; }
		.faqs-landing .content-wrap { margin-top: -20px; padding-left: 4em; padding-right: 4em; }

	/* columns */
		.one-col .col-pad         		{ margin: 6em 17.5%; }
		.contact-col .col-pad     		{ margin: 6em; padding: 0; }
		.two-col .left .col-pad   		{ margin: 6em; }
		.two-col .col.right .col-pad 	{ margin: 6em; }
		.cards-col .col-pad,
		.contact-cards .col-pad			{ padding: 6em; }
		.areas						{ padding-bottom: 60px; padding-left: 60px; padding-right: 60px; }

	/* layouts */
		.flex-50-gutter-20-1200			{ width: calc(50% - 20px); }

	/* blog */
		.content-wrap             { padding: 6em 5em 4em 5em; }
		.bp-author-bio            { margin-top: 6em; padding-top: 6em; }
		.bp-lead-image	          { padding: 6em 6em 0 6em; }
		.bp-author-bio .subhead   { padding-top: 24px; }

	/* resources */
		#resources-nav-wrap 		{ padding-top: 5.5em; padding-bottom: 5em; }

	/* typography */
		h2, .text-l                 { font-size: 2.8em; letter-spacing: -0.5px; line-height: 1.285714286; }
		h3, .text-m                 { font-size: 2.3em; letter-spacing: 0; line-height: 1.391304348;  }
		h4, .text-ms                { font-size: 2.1em; letter-spacing: 0; line-height: 1.333333333;  }
		h5, .text-s, p.deck	        { font-size: 1.9em; letter-spacing: 0; line-height: 1.578947368; }
		h6, .text-xs		        { font-size: 1.6em; line-height: 1.375; }
		.callout                    { font-size: 1.5em; line-height: 1.6; padding: 1em; }
		.button-p                   { margin-top: 3em; }

	/* testimonials */
		.testimonial-row			{ padding: 6em; }
		.testimonial-row .testimonial-body.p80-l  { padding-left: 6em; }
		.testimonial-row .testimonial-body.p80-r  { padding-right: 6em; }

	/* bios */
		.layouts-block-heading		{ padding-bottom: 10px; }
		.layouts-block-outer.p80	{ padding: 6em 4em; }
		.detail-portal-inner    	{ max-width: none; }

	/* hbr promo */
		.hbr-inner { --logoColWidth: 250px; }


}

/* ========================================================================== */
/* 881px --> 1023px */

@media only screen
and (max-width: 1023px) {

	/* page title */
		#page-title           	{ padding: 5em 3em; }
		#page-title h1	      	{ font-size: 4em; line-height: 1.15; }
		#page-title .bp-title 	{ font-size: 2.8em; }

	/* columns */
		.one-col .col-pad           	{ margin: 5em 15%; }
		.contact-col .col-pad       	{ margin: 5em;	padding: 0; }
		.two-col .left .col-pad			{ margin: 5em; }
		.two-col .col.right .col-pad	{ margin: 5em; }
		.two-col .image					{ height: calc(60% - 2.5em); top: 5em; }
		.cta-col                    	{ padding: 4em; }
		.cards-col .col-pad,
		.contact-cards .col-pad			{ padding: 5em; }
		.areas						{ padding-bottom: 50px; padding-left: 50px; padding-right: 50px; }
		.contact-social li 				{ padding-right: 20px; }

	/* home */
		#hero-wrap 				 	  	{ min-height: 50em; }
		.hero-slide-wrap                { padding: 5em; }
		#services-row                   { padding-top: 5em; }
		.home-page .two-col .col.image  { background: transparent; }
		#landing-contact                { max-width: 70em;}
		#landing-contact img            { height: 4em; width: 4em; }
		.contact-cta                    { padding: 5em 2em; }

	/* layouts */
		.flex-50-gutter-20-1023			{ width: calc(50% - 20px);}

	/* typography */
		h6, .text-xs		            { font-size: 1.5em; line-height: 1.4; }

	/* blog */
		.content-wrap              	{ padding: 5em 5.5em 3em 5.5em; }
		.blog-listing	            { margin: 0 -2em; }
		.bl-post.flex-33 			{ flex: 1 1 38%; margin: 0 2em 4em 2em; max-width: calc(50% - 4em); }
		.bl-landing .bl-post.omega 	{ display: none; }

	/* contact page */
		.contact-col .rtb-form		{ padding: 3em; }
		.contact-col .w-50.p40-l	{ padding-left: 3em; }
		.contact-col .w-50.p40-r	{ padding-right: 3em; }
		.contact-card 				{ padding-right: calc(60% + 2em); } 
		.map-wrapper 				{ width: 60%; }

	/* resources */
		#resources-nav-wrap 	{ padding-top: 4.5em; padding-bottom: 4em; }
		.resource-group 		{ margin-bottom: 3em; }
		.rg-pad 				{ padding: 3em 3em 2em 3em; }
		.resource-list 			{ margin-top: 2em; }

	/* testimonials */
		.testimonial-row		{ padding: 5em; }
		.testimonial-row .testimonial-body.p80-l  { padding-left: 5em; }
		.testimonial-row .testimonial-body.p80-r  { padding-right: 5em; }
		.testimonial-body .text-body { font-size: 1.4em; }

	/* footer */
		#footer 			{ background-position: -350px bottom; }
		.footer-nav-wrap	{ padding-bottom: 5px; max-width: 700px; margin-left: auto; margin-right: auto; }
		.footer-col			{ width: 50%; border: 0; margin-bottom: 25px; }
		.footer-contact		{ max-width: 700px; margin-left: auto; margin-right: auto; }
		.footer-contact-col	{ width: 50%; border: 0; margin-bottom: 25px !important; }
		#footer-social		{ margin-top: 5px; }

	/* bios */
		.bio-detail-wrap.p80        { padding-left: 4em; padding-right: 4em; }
		.bio-detail-col.omega.p80-l { padding-left: 4em; }
		.flex-50-gutter-30-1023     { width: calc(50% - 30px); }
		.layouts-block-outer.p80	{ padding: 5em 4em; }
		.layouts-block-heading		{ padding-bottom: 0; }
		.subpage-portal-heading		{ padding: 25px; margin: 0 0 10px 0; }

	/* hbr promo */
		#hbr-banner { margin-top: 30px; }
		.hbr-inner { max-width: none; }

	/* --------------------------------------- */
	/* PUSHY NAVIGATION */
		/* header - switch to off-canvas pushy nav */
		#tabs										{ display: block; }
		.header-nav-outer, .header-nav-inner      	{ margin: 0; }
		/* reset the main navigation styling */
		.parent_li									{ float: none; margin: 0 !important; }
		.parent_li.omega > a						{ border-radius: 0; border: 0; }
		.parent_li > a                            	{ text-align: left; font-size: 17px; padding: 20px !important; border: 0; border-top: 1px solid #eaebeb; border-radius: 0; margin: 0 !important;  }
		.header-nav-label							{ display: inline; }

		.parent_li.w_child > a						{ border-radius: 0;  }
		.parent_li.w_child > a .fa  			    { display: none; }

		.child_ul 									{ background: #eee; display: block !important; position: relative; border: 0; margin: 0 !important; left: auto;  border-radius: 0; box-shadow: none; width: auto !important; text-align: left !important; }
		.child_ul a                               	{ background: transparent !important; font-size: 14px; padding: 5px 0; opacity: 0.8; margin-top: 1px; }

		.mega-menu-label							{ border: 0; padding-inline: 0; }
		.child_li:first-child .mega-menu-label 		{ padding-top: 0; }

		.pushy-submenu-closed ul                  	{ max-height: none; visibility: visible; }
		.pushy-submenu-closed .pushy-link         	{ opacity: 1; }

		/* remove the hover states */
		.parent_li > a:hover, .child_ul a:hover,
		.parent_li:hover > a,
		.parent_li.w_child:hover                      { background-color: transparent; }


		/* PUSHY OFF-CANVAS MENU */
		/* display the mobile "menu button" and the drop-down menu toggles */
		.menu-btn              		{ display: block; }
		.toggle-mobile-dropdown 	{ display: none; }
		/* display the home link/logo above the navigation */
		.pushy-home {
			border: none;
			display: block;
			background: #fff url('/img/logo-substance-use-addictions-specialist-michael-walsh.svg') no-repeat center;
			background-size: 210px;
			height: 100px;
		}

		.pushy a:focus, .pushy button:focus, .menu-btn:focus { outline: none; }

		/* the main pushy container */
		.pushy {
			position: fixed;
			width: 240px;
			height: 100%;
			top: 0;
			z-index: 9999;
			background: #fff;
			overflow: auto;
			-webkit-overflow-scrolling: touch;
			padding-bottom: 300px;
			padding-top: 0;
		}

		.pushy.pushy-left   { left: 0; }
		.pushy.pushy-right  { right: 0; }

		/* pushy content hidden by default */
		.pushy-content { visibility: hidden; background: #fff; }

		/* menu movement */
		.pushy-left                                                         { -webkit-transform: translate3d(-280px, 0, 0); -ms-transform: translate3d(-280px, 0, 0); transform: translate3d(-280px, 0, 0); }
		.pushy-open-left #container, .pushy-open-left .push                 { -webkit-transform: translate3d(280px, 0, 0); -ms-transform: translate3d(280px, 0, 0); transform: translate3d(280px, 0, 0); }
		.pushy-right                                                        { -webkit-transform: translate3d(280px, 0, 0); -ms-transform: translate3d(280px, 0, 0); transform: translate3d(280px, 0, 0); }
		.pushy-open-right #container, .pushy-open-right .push               { -webkit-transform: translate3d(-280px, 0, 0); -ms-transform: translate3d(-280px, 0, 0); transform: translate3d(-280px, 0, 0); }
		.pushy-open-left .pushy, .pushy-open-right .pushy                   { -webkit-transform: translate3d(0, 0, 0); -ms-transform: translate3d(0, 0, 0); transform: translate3d(0, 0, 0); }
		.pushy-open-left .pushy-content, .pushy-open-right .pushy-content   { visibility: visible; }

		/* menu transitions */
		#container, .pushy, .push { transition: transform 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }
		.pushy-content            { transition: visibility 0.2s cubic-bezier(0.16, 0.68, 0.43, 0.99); }

		/* site overlay */
		.site-overlay                   { display: none; }
		.pushy-open-left .site-overlay,
		.pushy-open-right .site-overlay {background-color: rgba(0,0,0,0.6); display: block; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9998; -webkit-animation: fade 500ms; animation: fade 500ms; }



}

/* ========================================================================== */
/* 601px --> 880px */

@media only screen
and (max-width: 880px) {

	/* layouts */
		.flex-50-gutter-20-880	{ width: calc(50% - 20px);  }
		.flex-100-gutter-20-880	{ width: calc(100% - 20px); }

	/* notice banner */
		#notice-banner { font-size: 90%; padding-top: 10px; padding-bottom: 10px; }
		#notice-banner .pre-header { display: block; }
		#notice-banner .pre-header .divider { display: none; }
		#notice-banner .btn { margin-left: 10px; }

	/* page title */
		#page-title           { padding: 4em 3em; }
		#page-title h1	      { font-size: 3.6em; letter-spacing: 0.5px; line-height: 1.11111111; }

	/* columns */
		.one-col .col-pad                           { margin: 4em 12.5%; }
		.contact-col .col-pad                       { margin: 4em auto;	padding: 0 4em; }
		.two-col .col,
		.two-col .col.left                          { width: 100%; float: none; }
		.two-col .left .col-pad,
		.two-col .col.right .col-pad                { margin: 49em 12.5% 4em; }
		.cards-col .col-pad,
		.contact-cards .col-pad						{ padding: 4em; }
		.card-icon									{ height: 6em; }
		.card-heading								{ margin-bottom: 10px; }
		.single-card								{ padding: 20px; }

		.two-col .col.image                         { top: 4em; left: 12.5%; right: 27.5%; width: auto; height: 40em; background: #e7e8e8; }
		.two-col .image-bg							{ border-radius: 5px; }
		.two-col .col.image::after					{ border-radius: 5px; bottom: -20px; content: ''; left: 25%; position: absolute; right: -25%; top: 20px; }
		.two-col.bg-white .col.image::after			{ background: #00A6BC; opacity: 0.15; }
		.two-col.bg-lightgrey .col.image::after		{ background: #e7e8e8; }
		.two-col.bg-slate .col.image::after			{ background: rgba(0,0,0,0.1); }

		.two-col .col.map                           { width: 100%; height: 64em; top: auto; bottom: 0; }
		.form-col .col-pad 							{ max-width: none; margin: 4em auto; padding: 0 4em; }

	/* home */
		#hero-wrap 								{ min-height: 44em; }
		#services-row                   		{ padding-top: 4em; padding-bottom: 2em; }
		#services li 							{ width: calc(50% - 20px); height: 28em; margin-bottom: 20px; }
		#services .line1, #services .line2 		{ display: inline; }
		#services .button-p 					{ bottom: 2.5em; }
		#landing-contact 						{ max-width: 60em; }
		.contact-cta 							{ padding: 0 3em 4em 3em; }
		.contact-cta .wysiwyg 					{ max-width: 40em; margin: 0 auto; }

		.random-testimonial						{ padding-left: 6em; padding-right: 6em; }
		.random-testimonial-content				{ padding: 0; }
		.random-testimonial .read-more 			{ margin-top: 10px; }

		.mailchimp-outer .input-row 			{ width: calc(50% - 30px); }
		.mailchimp-outer input 					{ min-width: auto !important; }

	/* services page portal */
		.interior #services-row		{ padding-bottom: 2em; }

	/* resources */
		#resources-nav-wrap 		{ padding-top: 3.5em; padding-bottom: 3em; }
		.resource-group 			{ margin-bottom: 2em; }

	/* contact page */
		.contact-page .contact-col .w-50		{ padding: 0; width: 100%; }
		.contact-page .contact-col .rtb-form	{ margin-top: 4em; }
		.areas								{ padding-bottom: 40px; padding-left: 40px; padding-right: 40px; }

		.contact-card 				{ padding: 4em 2em; padding-bottom: calc(320px + 4em); } 
		.map-wrapper 				{ width: 100%; top: auto; height: 320px; }


	/* blog */
		.content-wrap             	{ padding: 4em 3em 2em 3em; }
		.bp-author-bio            	{ margin-top: 4em; padding-top: 4em; }
		.bp-lead-image	          	{ padding: 0; }

	/* testimonials */
		.testimonial-row							{ padding: 4em; }
		.testimonial-row .testimonial-body.p80-l  	{ padding-left: 4em; }
		.testimonial-row .testimonial-body.p80-r  	{ padding-right: 4em; }
		.testimonial-body .text-body 				{ font-size: 1.3em; }
		.testimonial-body.w-100 .w-60				{ width: 80%; }

	/* typography */
		h2, .text-l                 { font-size: 2.5em; line-height: 1.36; }
		h3, .text-m                 { font-size: 2em; line-height: 1.4;  }
		h4, .text-ms                { font-size: 1.9em; line-height: 1.368421053;  }
		h5, .text-s, p.deck	        { font-size: 1.8em; line-height: 1.5; }
		h6, .text-xs		        { font-size: 1.4em; letter-spacing: 1px; line-height: 1.428571429; }
		p, ul, ol, .rtb-form label,
		.rtb-form .label,
		.faq-listing-answer ul,
		.faq-listing-answer ol		{ font-size: 1.5em; line-height: 1.6; }
		.callout                    { font-size: 1.4em; line-height: 1.571428571; }
		.button-p                   { margin-top: 2.5em; }
		.button                     { font-size: 1.5em; padding: 0.8em 1.333333333em; }

	/* footer */
		#footer         { background-position: -700px bottom; }

	/* bios */
		.bio-detail-wrap.p80  				{ padding-top: 0; }
		.bio-detail-col 					{ width: 100%; float: none; padding-left: 0 !important; }
		.bio-detail-col.alpha 				{ max-width: 30em; margin-left: auto; margin-right: auto; margin-top: 4em; margin-bottom: -4em; }
		.bio-detail-col.omega 				{ max-width: 60em; margin-left: auto; margin-right: auto; margin-top: 8em; }
		.bio-portal-others .bio-portal-img 	{ width: 150px; }
		.layouts-block-outer.p80			{ padding: 4em; }

	/* hbr promo */
		#hbr-banner { margin: 20px 0; }


}

/* ========================================================================== */
/* 480px --> 600px */

@media only screen
and (max-width: 600px) {

	/* header */
		.menu-btn-label { display: block; font-size: 10px; margin: 4px 0 0 0; text-transform: uppercase; }
		.menu-btn { width: 50px; border-radius: 6px; padding: 8px 0; }

	/* page title */
		#page-title h1	      { font-size: 3.2em; letter-spacing: 0; line-height: 1.125; }
		#page-title .bp-title { font-size: 2.4em; }

	/* layouts */
		.flex-80-gutter-20-600						{ width: calc(80% - 20px); }
		.flex-100-gutter-20-600						{ width: calc(100% - 20px); }

	/* columns */
		.one-col .col-pad           				{ margin: 4em; }
		.contact-col .col-pad      				 	{ margin: 4em auto;	padding: 0 4em; }
		.two-col .left .col-pad,
		.two-col .col.right .col-pad 	 	  		{ margin: 41em 4em 4em 4em; }
		.two-col .col.image                         { height: 32em; left: 4em; right: 12em; }
		.two-col .col.image::after					{ left: 8em; right: -8em; }
		.read-more-wrap								{ margin-top: 1.5em; margin-left: -1.5em; margin-right: -1.5em; }
		.read-more-question							{ padding: 1.5em 5em 1.5em 1.5em; }
		.read-more-question .deck					{ margin-top: 0; }
		.read-more-answer							{ padding: 0 1.5em 1.5em 1.5em; }
		.single-card								{ padding: 15px; }

	/* home */
		.hero-slide-wrap 								{ padding: 4em; }
		.service-heading 								{ max-width: 24em; }
		#services li 									{ width: calc(100% - 20px); height: 24em; }
		#landing-contact 								{ margin-top: 2em; }
		#landing-contact li 							{ border: 1px solid #eaebeb; width: calc(100% - 20px) !important; float: none; margin: 1em auto 0 auto; display: flex; align-items: center; border-radius: 2px; overflow: hidden; }
		#landing-contact img 							{ margin: 5px auto 10px auto; }
		.contact-labels 								{ width: 110px; padding: 10px 0; }
		.contact-cta .cta-label							{ margin: 0; text-transform: lowercase; letter-spacing: 0; }
		.contact-cta-method								{ margin: 0; padding: 0; width: calc(100% - 110px); display: block; text-align: center; }
		.random-testimonial								{ padding: 4em; }
		.random-testimonial .read-more .spacer-tilde	{ display: block; line-height: 1; color: #fff; font-size: 5px; }

	/* blog */
		.content-wrap    			{ padding: 4em 1.5em 2em 1.5em; }
		.bl-image        			{ height: 20em; }
		.blog-listing    			{ display: block; margin: 0; }
		.bl-post.flex-33 			{ max-width: 320px; margin-left: auto; margin-right: auto; }
		.bp-author-bio .subhead   	{ padding-top: 26px; }

	/* testimonials */
		.testimonial-row							{ padding: 3em; flex-direction: column-reverse; }
		.testimonial-row .testimonial-body.p80-l  	{ padding-left: 0; }
		.testimonial-row .testimonial-body.p80-r  	{ padding-right: 0; }
		.testimonial-body .text-body 				{ font-size: 1.3em; }
		.testimonial-body.w-100 .w-60				{ width: 100%; }
		.testimonial-snippet						{ width: 100%; text-align: left; margin-top: 3em; }
		.testimonial-body							{ width: 100%; }


	/* subpage navigation */
		.subpage-portal-heading		{ padding: 15px; margin: 0 0 15px 0; }

	/* resources */
		#resources-nav .button::after { display: none; }

	/* typography */
		h6, .text-xs		        { font-size: 1.3em; letter-spacing: 0.5px; line-height: 1.538461538; }
		.inline-img-right           { float: none; max-width: 300px; margin: 0 auto 1.25em auto; }

	/* footer */
		#footer	              { background-position: -800px bottom; }

	/* hbr promo */
	.hbr-inner { flex-wrap: wrap; text-align: center;  }
	.hbr-inner > * { width: 100%; }
	.hbr-logo-col { padding-bottom: 0; }
	.hbr-logo { max-width: 200px; }

}

/* ========================================================================== */
/* 320px --> 479px */

@media only screen
and (max-width: 479px) {

	/* banner */
		#notice-banner .btn 	{ display: block; width: 120px; margin: 5px auto 0 auto; }

	/* header */
		#logo 					{ width: 225px; margin: 20px 0; }
		#header-inner 			{ padding: 0 15px; }

	/* page title */
		#page-title             { padding: 3em 1.5em; }
		#page-title h1	        { font-size: 2.8em; line-height: 1.14285714; }
		#page-title .bp-title   { font-size: 2.2em; }

	/* layouts */
		.flex-100-gutter-20-479						{ width: calc(100% - 20px); }

	/* columns */
		.one-col .col-pad           				{ margin: 3em; }
		.contact-col .col-pad      				 	{ margin: 3em auto;	padding: 0 3em; }
		.two-col .left .col-pad,
		.two-col .col.right .col-pad 	 	  		{ margin: 35em 3em 3em 3em; }
		.two-col .col.image                         { top: 3em; height: 28em; left: 3em; right: 5em; }
		.two-col .col.image::after					{ left: 3em; right: -2em; }
		.cards-col .col-pad,
		.contact-cards .col-pad						{ padding: 3em; }
		.cta-col                    				{ padding: 3em 1.5em; }
		.form-col .col-pad 							{ margin: 3em auto;	padding: 0 3em; }
		.contact-col .rtb-form						{ margin-left: -15px; margin-right: -15px; padding: 15px; }
		.areas									{ padding: 0 30px 30px 30px; }

	/* services page portal */
		.interior #services-row		{ padding-bottom: 1em; }

	/* home */
		#hero-wrap 					{ height: auto; padding-top: 24em; }
		#hero-bg 					{ height: 24em; bottom: auto; }
		.hero-slide-wrap 			{ background: #444647; padding: 3em; left: 0; right: 0; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; position: relative; z-index: 6; }
		.hero-text h1 				{ margin-top: 0; }

		#services 						{ margin-top: 3em; }
		#services-row 					{ padding: 3em 2em 0 2em; }
		#services-row .service-heading	{ margin-top: 0; }
		#services .subtitle 			{ letter-spacing: 0; }

		#landing-contact li				{ padding: 0; border: 0; margin-top: 0; display: block; }
		#landing-contact li.omega 		{ border-bottom: 0; }
		.contact-cta 					{ padding: 1em 3em 3em 3em; }
		.contact-cta .method			{ margin-top: 0; }
		.contact-labels 				{ width: 100%; padding: 10px 0 0 0; }
		.contact-cta-method				{ width: 100%; }

		.random-testimonial				{ padding-left: 0; padding-right: 0; }
		.random-testimonial-content		{ padding: 0 3em; }

		.landing-header				{ display: block; text-align: center; }
		.bl-landing .content-wrap	{ padding-left: 3em; padding-right: 3em; }
		.faqs-landing .content-wrap	{ padding-left: 3em; padding-right: 3em; margin-top: 0; }
		.faq-listing-question		{ padding: 15px 60px 15px 15px; margin: 0 !important; }
		.faq-listing-answer			{ padding: 15px 15px 1px 15px; }

		.mailchimp-outer h2 		{ margin-top: 0; }
		.mailchimp-outer .input-row { width: 100%; }

	/* subpage portal cards */
		.subpage-portal-heading		{ padding: 20px; margin: 0 0 10px 0 !important; }
		.flex-100-gutter-20-479		{ width: calc(100% - 20px); }

	/* testimonials */
		.test-snippet .name 	{ max-width: 24em; font-size: 12px; line-height: 18px; padding-left: 15px; padding-right: 15px; }

	/* blog */
		.content-wrap             		{ padding: 3em 3em 1em 3em; }
		.bp-author-bio            		{ margin-top: 3em; padding-top: 3em; }
		.bp-author-title          		{ margin-top: 0 !important; }
		.blog-post .wysiwyg-caption 	{ font-size: 1.3em; }
		.blp-links li	              	{ display: block; width: 100%; float: none; }
		.blp-page	                  	{ padding: 1em 0; }
		.bl-pagenum.text-xs         	{ margin-bottom: 30px; }
		.bl-post.flex-33            	{ margin-bottom: 20px; max-width: 260px; margin-left: auto; margin-right: auto; }

	/* resources */
		#resources-nav-wrap 			{ padding: 3em 2.5em 2em 2.5em; }
		#resources-nav 					{ padding-top: 2em; }
		#resources-nav .button 			{ float: none; display: block; border: 0; border-bottom: 1px solid #05c3de; color: #444647; -webkit-border-radius: 0; -moz-border-radius: 0; border-radius: 0; padding: 0 0 2px 0; }
		#resources-nav .button:hover 	{ color: #05c3de; border-color: #05c3de; background: transparent; }
		#resources.one-col .col-pad 	{ margin: 2em; }
		.rg-title.text-m 				{ margin-bottom: 10px; }
		.rg-pad 						{ padding: 2em 2em 0 2em; }
		.rl-desc 						{ font-size: 1.2em; line-height: 1.5; }
		.rl-li 							{ border: 0; border-top: 1px solid #E2E3E3; padding-left: 0; padding-right: 0; padding-bottom: 1em; }

	/* typography */
		h2, .text-l, h3, .text-m, h4,
		.text-ms, h5, .text-s, p.deck,
		h6, .text-xs							{ margin-top: 30px; }
		.interior .wysiwyg h3::after 			{ margin-top: 10px; }
		h2, .text-l                 			{ font-size: 2.2em; letter-spacing: 0; line-height: 1.363636364; }
		h3, .text-m                 			{ font-size: 1.8em; line-height: 1.391304348;  }
		h4, .text-ms                			{ font-size: 1.7em; line-height: 1.352941176;  }
		h5, .text-s, p.deck	        			{ font-size: 1.6em; letter-spacing: 0; line-height: 1.5625; }
		p, ul, ol, .rtb-form label,
		.rtb-form .label, .faq-listing-answer ul,
		.faq-listing-answer ol					{ font-size: 1.4em; line-height: 1.571428571; margin: 0 0 20px 0; }
		.rtb-form label, .rtb-form .label 		{ margin-bottom: 5px; }
		.callout                    			{ margin: 20px 0; }
		.read-more-text .button-p   			{ margin: 2em 0 2.5em 0; }
		.button                     			{ font-size: 1.4em; padding: 0.857142857em 1.357142857em; }
		.contact-social li          			{ padding-right: 1em; }
		hr                          			{ margin: 3em auto; }
		.layouts-block-heading      			{ margin-top: 0; }
		.layouts-block-outer .faq-listing 		{ margin: -15px; }
		.layouts-block-outer .faqs-random .faq-listing 		{ margin: -15px -15px 0 -15px; }
		.disclaimer h2 							{ margin-top: 0; }

	/* footer */
		.footer-col,
		.footer-contact-col		{ width: 100%; }
		.footer-col h4 			{ margin-top: 0; }
		#footer                 { background-position: -900px bottom; }
		#footer .square         { display: block; height: 0; width: 0; overflow: hidden; opacity: 0; }
		#f-nav li 				{ display: block; }
		#footer-logo			{ width: 240px; }
		#footer-social			{ margin-left: -20px; margin-right: -20px; background: transparent; border-radius: 0; }

	/* bios */
		.flex-100-gutter-30-479 	{ width: calc(100% - 30px); }
		.bio-detail-wrap.p80 		{ padding-left: 20px; padding-right: 20px; }
		.layouts-block-outer.p80 	{ padding: 3em; }

}

/* for responsive nav – should be min-width of previous rules +1 pixel */
@media screen and (min-width: 480px) { .js .nav-collapse { position: relative; } .js .nav-collapse.closed { max-height: none; } .nav-toggle { display: none; } }