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

/* ========================================================================== */
/* 1280px --> 1379px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 9.5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 60px; }
    .text-48                { font-size: 46px; }
    .text-42                { font-size: 40px; }
    .text-36, h2            { font-size: 34px; }
    .text-32                { font-size: 30px; }
    .text-28, h3            { font-size: 27px; }

/* HEADER */
    .main-header-inner      { padding-left: 3rem; padding-right: 3rem; }
    .parent_li > a			{  font-size: 24px; }

/* GLOBAL: GUTTER PADDING */
    .gutter-90              { padding-left: 6rem; padding-right: 6rem; }

/* LAYOUTS */
	.p0-l-1379				{ padding-left: 0; }
	.p0-r-1379				{ padding-right: 0; }

}

/* ========================================================================== */
/* 1180px --> 1279px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 9px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 56px; }
    .text-48                { font-size: 44px; }
    .text-42                { font-size: 38px; }
    .text-36, h2            { font-size: 33px; }
    .text-32                { font-size: 28px; }
    .text-28, h3            { font-size: 26px; }
    .text-18                { font-size: 18px; }
    .text-16                { font-size: 16px; }
    .text-14                { font-size: 14px; }

/* PADDING */
    .p75-t-1279             { padding-top: 7.5rem; }
    .p90-t-1279             { padding-top: 9rem; }

/* HEADER */
    .main-header-inner      { height: 100px; }
    .header-nav-group       { width: calc(50% - 190px - 3rem); }
    .parent_li > a			{ font-size: 22px; height: 100px; }
    #logo                   { width: 380px; margin-left: -190px; }
    .logo-icon              { margin-left: 120px; width: 140px; }

/* RATES */
	.rate-listing-li		{ padding: 15px; }
	.rates-listing-desc 	{ padding: 15px; }

/* FAQS */
	.faq-anchors-link		{ padding: 10px 12px 15px 12px; line-height: 1.25; }

/* BLOCKS */
	.textarea-wrap figure[style*="float: left;"] img 			{ border-radius: 0 25px 25px 0; }
	.textarea-wrap figure[style*="float: right;"] img 			{ border-radius: 25px 0 0 25px; }
	.textarea-wrap figure[style*="float: right;"] figcaption 	{ padding-left: 6rem; }
	.textarea-wrap figure[style*="float: left;"] figcaption 	{ padding-right: 6rem; }

}

/* ========================================================================== */
/* 1080px --> 1179px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 8.5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 52px; }
    .text-48                { font-size: 42px; }
    .text-42                { font-size: 36px; }
    .text-36, h2            { font-size: 32px; }
    .text-32                { font-size: 27px; }
    .text-28, h3            { font-size: 25px; }
    .text-24, h4            { font-size: 23px; }
    .text-22                { font-size: 21px; }
    .text-20, body          { font-size: 19px; }
	.rtb-form input[type="text"],
	.rtb-form input[type="email"],
	.rtb-form input[type="password"],
	.rtb-form input[type="number"],
	.rtb-form select,
	.rtb-form textarea 		{ font-size: 19px; }
    .text-18                { font-size: 17px; }
    .text-16                { font-size: 15px; }
    .text-14                { font-size: 13px; }

/* PADDING */
    .p90-t-1179             { padding-top: 9rem; }

/* LAYOUTS */
	.flex-v-top-1179		{ align-items: flex-start; }

}

/* ========================================================================== */
/* 980px --> 1079px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 8px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 48px; }
    .text-48                { font-size: 40px; }
    .text-42                { font-size: 35px; }
    .text-36, h2            { font-size: 31px; }
    .text-32                { font-size: 26px; }
    .text-28, h3            { font-size: 24px; }
    .text-24, h4            { font-size: 22px; }
    .text-18                { font-size: 17px; }
    .text-16                { font-size: 15px; }
    .text-14                { font-size: 13px; }
	ul, ol					{ padding-left: 36px; }



/* HEADER */
    .header-nav-group       { width: calc(50% - 170px - 3rem); }
    #logo                   { width: 340px; margin-left: -170px; }
    .logo-icon              { margin-left: 100px; }
    .parent_li > a			{ font-size: 20px; }
    .logo-dees, .logo-dogs  { font-size: 36px; margin-top: -20px; }

/* LAYOUTS */
	.flex-50-gutter-30-1079	{ width: calc(50% - 30px); }
	.p45-l-1079				{ padding-left: 4.5rem; }
	.p45-r-1079				{ padding-right: 4.5rem; }
	.block-1079				{ display: block; }
	.none-1079				{ display: none; }
	.max-l					{ max-width: none; }

/* BLOCKS */
	.callout-block-inner.boxed-style  						  { max-width: none; }
	.callout-block-inner.not-boxed .callout-block-col.w-40 	  { width: 33%; }
	.callout-block-inner.not-boxed .callout-block-col.w-60 	  { width: 67%; }
	.textarea-block-outer.has-on-page-nav				 	  { padding-right: 0; }
	.anchor-nav-ul											  { border-radius: 5px 0 0 5px; }

}

/* ========================================================================== */
/* 880px --> 979px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 7.5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 46px; }
    .text-48                { font-size: 38px; }
    .text-42                { font-size: 34px; }
    .text-36, h2            { font-size: 30px; }
    .text-32                { font-size: 25px; }
    .text-28, h3            { font-size: 23px; }
    .text-24, h4            { font-size: 21px; }
    .text-22                { font-size: 20px; }
    .text-18                { font-size: 17px; }
    .text-16                { font-size: 15px; }
    .text-14                { font-size: 13px; }

/* LAYOUTS */
    .w-100-979        { width: 100%; }
    .p0-l-979         { padding-left: 0; }
    .p0-r-979         { padding-right: 0; }
    .p60-t-979        { padding-top: 6rem; }
    .p90-t-979        { padding-top: 9rem; }
    .p120-t-979       { padding-top: 12rem; }
    .max-none-979     { max-width: none; }
	.flex-50-gutter-60-979	{ width: calc(50% - 6rem); }
	.flex-50-gutter-30-979	{ width: calc(50% - 30px); }

/* BLOCKS */
	.layout-block-inner		{ max-width: none; }
	.textarea-wrap figure[style*="float: left;"] img, .textarea-wrap figure[style*="float: right;"] img { width: 50%; }
	.textarea-wrap figure[style*="float: left;"] figcaption, .textarea-wrap figure[style*="float: right;"] figcaption { width: 50%; }

/* HEADER */
    .main-header-outer      { padding-top: 15px; }
    .main-header-inner      { height: 185px; align-items: flex-end; padding: 0; }
    .header-nav-outer       { background-color: rgba(0,0,0,0.1); padding: 0 3rem; }
    .header-nav-group       { width: 50%; }
    .parent_li > a			{ border: 0; height: 80px; }
    #logo                   { margin-left: -160px; top: -10px; width: 320px;  }
    .logo-icon              { margin-left: 100px; width: 120px; padding: 10px; }
    .logo-dees, .logo-dogs  { margin-top: -22px; }

}

/* ========================================================================== */
/* 768px --> 879px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 7px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 44px; }
    .text-48                { font-size: 36px; }
    .text-42                { font-size: 32px; }
    .text-36, h2            { font-size: 29px; }
    .text-32                { font-size: 24px; }
    .text-28, h3            { font-size: 22px; }
    .text-24, h4            { font-size: 20px; }
    .text-22                { font-size: 19px; }
    .text-20, body          { font-size: 18px; }
	.rtb-form input[type="text"],
	.rtb-form input[type="email"],
	.rtb-form input[type="password"],
	.rtb-form input[type="number"],
	.rtb-form select,
	.rtb-form textarea 		{ font-size: 18px; }
    .text-18                { font-size: 16px; }
    .text-16                { font-size: 14px; }
    .text-14                { font-size: 12px; }

/* BLOCKS */
	.callout-block-inner.not-boxed .callout-block-col.w-40 	  { width: 100%; max-width: 80rem; padding: 0; margin: 0 auto 9rem auto; }
	.callout-block-inner.not-boxed .callout-block-img		  { max-width: 60rem; margin-left: 10rem; }
	.callout-block-inner.not-boxed .callout-block-col.w-60 	  { width: 100%; max-width: 80rem; padding: 0; margin-left: auto; margin-right: auto; }

/* LAYOUTS */
	.flex-100-gutter-30-879	{ width: calc(100% - 30px); }
	.max-m					{ max-width: none; }
	.inline-block-879		{ display: inline-block; }

}

/* ========================================================================== */
/* 680px --> 767px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 6.5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 42px; }
    .text-48                { font-size: 34px; }
    .text-42                { font-size: 30px; }
    .text-36, h2            { font-size: 28px; }
    .text-28, h3            { font-size: 21px; }
    .text-24, h4            { font-size: 19px; }
    .text-22                { font-size: 18px; }
    .text-20, body          { font-size: 17px; }
	.rtb-form input[type="text"],
	.rtb-form input[type="email"],
	.rtb-form input[type="password"],
	.rtb-form input[type="number"],
	.rtb-form select,
	.rtb-form textarea 		{ font-size: 17px; }
    .text-18                { font-size: 16px; }
    .text-16                { font-size: 14px; }
    .text-14                { font-size: 12px; }

/* BLOCKS */
	.subpage-portal-copy	{ padding: 20px 20px 30px 20px; }
	.subpage-portal-desc	{ margin-top: 10px; }
	.faq-listing-question	{ padding-bottom: 23px; }
	.anchor-nav-tab			{ padding-left: 15px; padding-right: 15px; padding-bottom: 5px; }
	.anchor-nav-ul			{ padding: 15px; }
	.mugshot-col.alpha, .mugshot-col.omega	{ width: 32%; }
	.mugshot-col.mugshot					{ width: 36%; }


}

/* ========================================================================== */
/* 580px --> 679px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 6px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 40px; }
    .text-48                { font-size: 32px; }
    .text-42                { font-size: 29px; }
    .text-36, h2            { font-size: 27px; }
    .text-32                { font-size: 23px; }
    .text-28, h3            { font-size: 20px; }
    .text-24, h4            { font-size: 18px; }
    .text-22                { font-size: 17px; }
    .text-20, body          { font-size: 16px; }
	.rtb-form input[type="text"],
	.rtb-form input[type="email"],
	.rtb-form input[type="password"],
	.rtb-form input[type="number"],
	.rtb-form select,
	.rtb-form textarea 		{ font-size: 16px; }
    .text-18                { font-size: 15px; }
    .text-16                { font-size: 13px; }
    .text-14                { font-size: 11px; }

/* HEADER */
    #logo                   { margin-left: 0; left: 15px; top: -5px; width: 190px; }
    .logo-icon              { margin-left: 0; width: 100px;  }
	.logo-dees, .logo-dogs	{ right: auto; left: 110px; height: 36px; text-align: left; font-size: 28px; }
	.logo-dees              { top: 17px; margin-top: 0; }
    .logo-dogs	            { bottom: 18px; top: auto; margin-top: 0; }
    .main-header-inner      { align-items: center; height: 90px; }
    .header-nav-outer       { background-color: transparent; padding: 0; }

/* LAYOUTS */
	.flex-100-gutter-60-679		{ width: calc(100% - 6rem); }
	.flex-100-gutter-30-679 	{ width: calc(100% - 30px); }
	.flex-100-gutter-20-679 	{ width: calc(100% - 20px); }
    .m20-t-679              	{ margin-top: 20px; }
	.cards-100-gutter-60-679 .flex-card	{ width: calc(100% - 6rem); }
	.interior-title-overlay  			{ left: -40rem; right: -40rem; }

/* BLOCKS */
	.boxed-style .callout-block-copy	{ padding: 25px; }
	.callout-block-desc.m30px-t			{ margin-top: 15px; }
	.anchor-nav-link					{ padding: 6px 10px 10px 10px; }
	.textarea-wrap figure[style*="float: left;"] img, .textarea-wrap figure[style*="float: right;"] img { width: 100%; border-radius: 0; }
	.textarea-wrap figure[style*="float: left;"] figcaption, .textarea-wrap figure[style*="float: right;"] figcaption { margin: 20px auto 0 auto; width: 75%; padding: 0; text-align: center; }
	.fine-print-col.alpha				{ margin-bottom: 0; }
	.subpage-portal-icon-link			{ width: 200px; }
	.mugshot-col.alpha, .mugshot-col.omega	{ width: 30%; }
	.mugshot-col.mugshot					{ width: 40%; }


/* --------------------------------------- */
/* PUSHY NAVIGATION */
/* header - switch to off-canvas pushy nav */
    .header-nav-outer, .header-nav-inner      { margin: 0; }
    #tabs                                     { display: block; text-align: center; }

    /* reset the main navigation styling */
    .header-nav-ul                            { display: block;  }
    .header-nav-group-wrap                    { display: block; }
    .header-nav-group                         { display: block; width: auto; }
    .parent_li								  { display: block; margin: 0 !important; width: auto; }
    .parent_li > a                            { font-size: 20px; height: auto; padding: 20px 10px 22px 10px !important; border-bottom: 1px solid rgba(0,0,0,0.1); border-radius: 0; }
    .nav-label                                { display: inline; }

    .child_ul 								  { display: block; position: relative; border: 0; }
    .child_ul a                               { background: rgba(0,0,0,0.1); font-size: 18px; padding: 10px 30px; }

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

    /* 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                 { display: block; }

    .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: #538961;
    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: rgba(0,0,0,0.1); }

    /* 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.7); display: block; position: fixed; top: 0; right: 0; bottom: 0; left: 0; z-index: 9998; -webkit-animation: fade 500ms; animation: fade 500ms; }



}

/* ========================================================================== */
/* 480px --> 579px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 5.5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 38px; }
    .text-48                { font-size: 30px; }
    .text-42                { font-size: 28px; }
    .text-36, h2            { font-size: 26px; }
	.deck.m30px-b			{ margin-bottom: 20px; }

/* LAYOUTS */
    .none-579               	{ display: none; }
    .block-579              	{ display: block; }
	.flex-100-gutter-30-579		{ width: calc(100% - 30px); }
	.flex-100-gutter-60-579		{ width: calc(100% - 6rem); }
	.w-100-579					{ width: 100%; }

/* BLOCKS */
	.callout-block-inner.not-boxed .callout-block-col.w-40 	  { max-width: none; }
	.callout-block-inner.not-boxed .callout-block-img		  { max-width: 80%; margin-left: 10%; }
	.callout-block-inner.not-boxed .callout-block-col.w-60 	  { max-width: none; }
	.callout-block-inner.boxed-style .callout-block-col		  { width: 100%; }
	.callout-block-inner.boxed-style .callout-block-image	  { height: 48rem; }
	.footer-cta-outer										  { padding-top: 54rem; }
	.footer-cta-copy										  { padding-bottom: 75px; }
	.faq-listing-question									  { padding: 15px 50px 18px 15px; }
	.faq-listing-answer										  { padding: 15px; }
	.faq-listing-question::after 							  { right: 10px; }
	.flex-cards-icon-small									  { height: 16rem; }
	.textarea-block-outer.has-on-page-nav					  { padding-right: 6rem; }
	.on-this-page-col										  { width: 100%; }
	.on-this-page-col.w-40									  { padding-left: 0; margin-top: 6rem; }
	.anchor-nav-ul											  { border-radius: 5px; }
	.interior-title.p180-t									  { padding-top: 24rem; }
	.interior-title.p90-b									  { padding-bottom: 12rem; }
	.footer-cta-img											  { position: static; height: 54rem; width: 100%; margin-bottom: -25px; border-radius: 25px 25px 0 0;}
	.footer-cta-inner.gutter-90								  { padding: 0; }
	.footer-cta-outer										  { padding: 0;  display: flex; flex-wrap: wrap; flex-direction: column-reverse;  overflow: hidden; border-radius: 25px 25px 0 0; }
	.footer-cta-overlay										  { opacity: 0.3; }
	.mugshot-wrapper						{ width: 320px; position: relative; }
	.mugshot-col .contact-label				{ display: none; }
	.mugshot-col.alpha, .mugshot-col.omega	{ margin: 0; padding: 0; width: 100%; text-align: right; position: absolute; right: 0; }
	.mugshot-col.alpha						{ top: 25px; }
	.mugshot-col.omega						{ bottom: 35px; }
	.mugshot-col.mugshot					{ margin: 15px 0 15px -10px; padding: 0; width: 160px; }

}

/* ========================================================================== */
/* 400px --> 479px */

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

/* GLOBAL: MOBILE */
    html        { font-size: 5px; }

/* GLOBAL: TYPOGRAPHY */
    .text-64                { font-size: 37px; }
    .text-48                { font-size: 29px; }
    .text-42                { font-size: 27px; }
    .text-36, h2            { font-size: 25px; }
	.callout				{ max-width: none; }

/* BLOCKS */
	.textarea-wrap figure[style*="float: left;"], .textarea-wrap figure[style*="float: right;"] { margin-left: -15px !important; margin-right: -15px !important; }
	.boxed-style						{ border-radius: 15px;}
	.boxed-style .callout-block-copy	{ padding: 20px 15px; }
	.rate-listing						{ margin-bottom: -10px; }
	.rate-listing-li					{ margin-bottom: 10px; }
	.fine-print-inner					{ padding: 15px; }
	.perch-form-padding					{ padding: 30px 20px; }

/* GLOBAL: GUTTER PADDING */
    .gutter-90              { padding-left: 15px; padding-right: 15px; }

/* FLEX LAYOUTS */
    .flex-100-gutter-30-479	{ width: calc(100% - 30px); }
	.flex-100-gutter-60-479	{ width: calc(100% - 6rem); }
	.max-s					{ max-width: none; }
	.w-100-479				{ width: 100 !important; }
	.block-479				{ display: block; }

}

/* ========================================================================== */
/* 320px --> 399px */

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

/* HEADER */
    .menu-btn     { width: 80px; }

/* BLOCKS */
	.faq-expanded-answer	{ padding: 0; }
	.mugshot-wrapper						{ width: 290px; position: relative; }
	.mugshot-col.mugshot					{ margin: 20px 0 20px -5px; padding: 0; width: 140px; }

	.form-row .w-25, .form-row .w-75			{ width: 100%; }
	.form-row .w-25 label 						{ margin-bottom: 10px; }

}

/* ========================================================================== */
/* PART OF THE PUSHY NAV */
/* keep outside of media queries */
@keyframes fade         { 0% { opacity: 0; } 100% { opacity: 1; } }
@-webkit-keyframes fade { 0% { opacity: 0; } 100% { opacity: 1; } }