/* Variables
- Brand Colors
- Font Families
- Font Sizes
- Font Line Heights
- Ratios
*/

:root {
	--tp-orange:#FDB515;
	--tp-green:#71BF44;
	--tp-purple:#64438A;
	--tp-red:#C11320;
	--tp-blue:#00B2E5;
	--tp-yellow:#FEE600;
	--white:#FFFFFF;
	--simple-white:#ffffff;

	--font-hobeaux: "hobeaux", sans-serif;
	--font-proxima: "proxima-nova", sans-serif;

	--fs-h1: 64px;
	--fs-h2: 48px;
	--fs-h3: 42px;
	--fs-h4: 36px;
	--fs-h5: 32px;
	--fs-body-14: 14px;

	--lh-h1: 108.7%;
	--lh-h2: 120.7%;
	--lh-h3: 110%;
	--lh-h4: 87.9%;
	--lh-h5: 105.5%;
	--lh-body-14: 20px;

	--ratio-header-desktop: 56.25%;
	--ratio-video-header-desktop: 58.27160493827161%;
	--ratio-header-mobile: 41.803278688524586%;
}
html {
	font-size: 20px;
}

/* Global */
#page {
	padding-top: 0px;
    position: relative;
    z-index: 0;
}
body, button {
    color: black;
    font-family: "proxima-nova", sans-serif!important;
    font-weight: 300;
    font-size: 20px;
    line-height: 130%;
}

h1,h2,h3,h4,h5,h6,.h1,.h2,.h3,.h4,.h5,.h6 {
	font-family: "hobeaux", sans-serif;
}

h1,.h1 {
	font-size: var(--fs-h1);
	line-height: var(--lh-h1);
}
h2,.h2 {
	font-size: var(--fs-h2);
	line-height: var(--lh-h2);
}
h3,.h3 {
	font-size: var(--fs-h3);
	line-height: var(--lh-h3);
}
h4,.h4 {
	font-size: var(--fs-h4);
	line-height: var(--lh-h4);
}
h5,.h5 {
	font-size: var(--fs-h5);
	line-height: var(--lh-h5);
}

.weight-400 {
	font-weight: 400 !important;
}
.weight-500 {
	font-weight: 500 !important;
}
.weight-700 {
	font-weight: 700 !important;
}

.text-center {
	text-align: center;
}

.list-unstyled {
    padding-left: 0;
    list-style: none;
}
a.button:hover {
    background-color: rgba(255, 255, 255, 0.80);
	border: 1px solid white;
}
.single-pops .availability-button a.button:hover {
	background-color: #c11320 !important;
	color:white!important;
	border: 1px solid white;
}
.single-pops a.button:hover {
	color: var(--tp-red)!important;
	background-color: white!important;
	border: 1px solid var(--tp-red);
}

/*Global Hide*/
@media only screen and (min-width:1000px) and (max-width:3000px) {
	.hide-desktop {
		display: none;
	}
}

@media only screen and (min-width:800px) and (max-width:999px) {
	.hide-tablet {
		display: none;
	}
}

@media only screen and (min-width:200px) and (max-width:799px) {
		.hide-mobile {
			display: none;
	}
}


/*Top Bar*/
#top-bar {
	display: flex;
}
#top-bar #menu-top-bar {
    display: flex;
    gap: 30px;
    margin: 0;
    list-style: none;
}
/*#top-bar #menu-top-bar li:last-child {
    margin-left: auto;
}*/
#top-bar #menu-top-bar li.budgetsaver {
    background-image: url(https://budgetsaver.twinpops.wpenginepowered.com/wp-content/uploads/sites/2/2024/05/BS.svg);
    background-size: 110px;
    background-repeat: no-repeat;
    background-position: left;
    color: transparent;
    font-size: 0px;
    text-indent: -9999px;
    width: 115px;
    height: 30px;
}
#top-bar #menu-top-bar li.twinpops {
	background-image: url(/wp-content/themes/twinpops/assets/img/twin_pops_logo.svg);
    background-size: 105px;
    background-repeat: no-repeat;
    background-position: left;
    color: transparent;
    font-size: 0px;
    text-indent: -9999px;
    width: 105px;
    height: 30px;
    position: relative;
}
#top-bar #menu-top-bar li.twinpops:after {
    content: '';
    position: absolute;
    background-image: url(/wp-content/themes/twinpops/assets/img/site-highlight.svg);
    height: 13px;
    width: 125px;
    bottom: -15px;
    left: -8px;
    background-repeat: no-repeat;
    background-size: contain;
}
#top-bar #menu-top-bar li.monsterpops {
	background-image: url(https://monsterpops.twinpops.wpenginepowered.com/wp-content/uploads/sites/3/2024/05/MP.svg);
	background-size: 68px;
    background-repeat: no-repeat;
    background-position: left;
    color: transparent;
    font-size: 0px;
    text-indent: -9999px;
    width: 68px;
    height: 30px;
}
#menu-top-bar li a {
	position: relative;
    display: block;
    width: 100%;
    height: 100%;
}
#top-bar #menu-top-bar li.monsterpops:after {
    content: '';
    position: absolute;
    background-image: unset;
    height: 13px;
    width: 85px;
    bottom: -19px;
    left: -8px;
    background-repeat: no-repeat;
    background-size: contain;
}
#top-bar #menu-top-bar li.monsterpops {
    position: relative;
}
#top-bar #menu-top-bar li.monsterpops:hover::after {
    background-image: url(/wp-content/themes/twinpops/assets/img/site-highlight.svg)!important;
}
#top-bar #menu-top-bar li.budgetsaver:after {
    content: '';
    position: absolute;
    background-image: unset!important;
    height: 13px;
    width: 125px;
    bottom: -15px;
    left: -8px;
    background-repeat: no-repeat;
    background-size: contain;
}
#top-bar #menu-top-bar li.budgetsaver {
    position: relative;
}
#top-bar #menu-top-bar li.budgetsaver:hover::after {
    background-image: url(/wp-content/themes/twinpops/assets/img/site-highlight.svg)!important;
}

.budgetsaver .image-grid-side {
  margin-top: 100px;
}
/* Primary Nav */
.contact-cta a:hover {
	text-decoration: underline;
}
.site-identity {
	justify-content: flex-end;
}
@media (max-width:1000px) {
	.site-identity {
		flex-direction: row;
	}
}
@media (min-width:1312px) {
	.top-navigation .button, .mobile-menu .button {
		padding: 14px 59px;
	}
}
@media (min-width:1250px) and (max-width:1311px) {
	.top-navigation .button, .mobile-menu .button {
		padding: 14px 38px;
	}
}
@media (min-width:1198px) and (max-width:1249px) {
	.custom-logo {
		padding: 14px 20px;
	}
}
@media (max-width:1249px) {
	.custom-logo {
	width:464px;
	height:95px;
}
}
.site-title-wrap {
	margin:auto;
	margin-left:0px;
}
@media (max-width: 1000px) {
    .site-title-wrap {
        max-width: 70%;
    }
}
.main-navigation ul li a {
	color: var(--white);
	font-family: "hobeaux", sans-serif;
	font-size: 24px;
}
.mobile-menu ul li a {
	color: var(--tp-red);
	font-family: "hobeaux", sans-serif;
	font-size: 24px;
}

.top-navigation .button, .mobile-menu .button {
	border-radius: 60px;
	font-family: "hobeaux", sans-serif;
	color: #c11320;
	background-color: white;
	font-size:18px;
}
.mobile-menu .button {
	border:2px solid #c11320;
}
.contact-cta a {
	color:black!important;
	font-family:"proxima-nova", sans-serif;
}
.contact-cta.current-menu-item  a {
	color:black!important;
	text-decoration: underline;
	font-family:"proxima-nova", sans-serif;
}

.custom-logo {
	width:464px;
	height:95px;
}

.top-navigation-right a:hover {
	color:var(--tp-yellow);
	text-decoration: underline;
}

.current-menu-item a {
	color:var(--tp-yellow)!important;
	text-decoration: underline;
}

.footer-navigation .current-menu-item a {
/*	color:var(--tp-purple)!important;*/
	text-decoration: underline;
}

.multicolorband {
    width: 100%;
    height: 10px;
    margin-top: 4px;
    display: flex;
}
.multicolorband.hero {
    width: 100%;
    height: 10px;
    margin-top: 0px;
    display: flex;
}

.multicolorband div {
	height: 10px;
    flex-grow: 1;
    flex-basis: 0;
}

.multicolorband div:nth-child(1) {
	background-color: var(--tp-orange);
}

.multicolorband div:nth-child(2) {
	background-color: var(--tp-green);
}

.multicolorband div:nth-child(3) {
	background-color: var(--tp-purple);
}

.multicolorband div:nth-child(4) {
	background-color: var(--tp-red);
}

.multicolorband div:nth-child(5) {
	background-color: var(--tp-blue);
}

.multicolorband div:nth-child(6) {
	background-color: var(--tp-yellow);
}


/*Footer*/
.right {
	float:right;
}
@media (max-width:851px) {
	.right {
		float:left;
	}
}
.footer-navigation a{
	color:#ffffff;
	font-size: 18px;
}
.site-footer {
	background-color: #900810;
}
.footer-tagline {
	width:100%;
}
.footer-bottom .site-info {
	display: flex;
	justify-content: space-between;
}
.footer-bottom .site-info .rights, .footer-bottom .rights a {
	color:white!important;
}
#block-7 {
	display: flex;
}

li#menu-item-561:after {
    font-family: 'hobeaux';
    content: '|';
    color: var(--tp-purple);
    position: relative;
    left: 9px;
}
.footer-tagline a {
	border-bottom:unset;
}

#menu-footer-menu li:after {
    font-family: "proxima-nova", sans-serif !important;
    content: '|';
    position: relative;
    left: 9px;
    color: #ffffff;
}
#menu-footer-menu li.menu-item-1094:after {
	content: '';
}
/* Mobile Menu */

.button-toggle {
    color: black;
}
#open-menu {
    padding: 0;
    background: none;
    border: 0;
    color: black;
    font-size: 24px;
    display: flex;
}
@media screen and (min-width:1001px) {
    #open-menu {
        display: none;
    }
}
.mobile-menu-wrap {
    background: rgba(0,0,0,.7);
    position: absolute;
    top: 0;
    left: -100vw;
    height: 100vh;
    width: 100vw;
    z-index: 999;
    opacity: 0;
    /*transition: opacity .3s ease;*/
}
.mobile-menu-wrap.open {
    left: 0;
    opacity: 1;
}
.mobile-menu-wrap.fade {
    opacity: 0;
}

/* Drawer panel: salmon/pink background (Figma) */
.mobile-menu,
.child-mobile-menu {
    padding: 0;
    width: 85vw;
    position: absolute;
    top: 0;
    left: -85vw;
    background: #F5A8A0;
    z-index: 1000;
    height: 100vh;
    border-right: none;
    border-radius: 0 0 24px 0;
    overflow-y: auto;
    /*transition: .3s ease-in-out all;*/
    opacity: 0;
}
.mobile-menu.open,
.child-mobile-menu.open {
    left: 0;
    opacity: 1;
}
.mobile-menu-wrap.open .close-area {
    position: fixed;
    top: 0;
    right: 0;
    height: 100vh;
    width: 15%;
}
.mobile-menu-back,
.close-area,
.close-mobile-menu,
#open-menu,
.mobile-menu .menu-has-children {
    cursor: pointer;
}
.child-mobile-menu {
    cursor: auto;
}

/* Branded header block: dark red, rounded bottom corners */
.mobile-menu-brand-header {
    background-color: #9B0A0F;
    border-radius: 0 0 24px 24px;
    padding: 24px 28px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 32px;
}
.mobile-menu-brand-title {
    font-family: "hobeaux", sans-serif;
    font-weight: 700;
    font-size: 36px;
    color: #ffffff;
    text-transform: uppercase;
    letter-spacing: 0.01em;
}

/* Close (×) button in brand header */
.mobile-menu-close-btn {
    background: none;
    border: none;
    color: #ffffff;
    font-size: 36px;
    line-height: 1;
    cursor: pointer;
    padding: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 44px;
}
.mobile-menu-close-btn:hover {
    opacity: 0.8;
}

/* Hide old plain header (replaced by brand header) */
.mobile-menu > .mobile-menu-header {
    display: none;
}

/* Child menu header still uses original layout */
.child-mobile-menu .mobile-menu-header {
    display: flex;
    height: 24px;
    margin-bottom: 32px;
    padding: 24px 28px 0;
}
.child-mobile-menu .heading {
    margin-bottom: 32px;
    padding: 0 28px;
}

/* Nav list */
.mobile-menu .nav-ul {
    padding: 0 28px;
}
.mobile-menu ul li {
    margin-bottom: 32px;
}
.mobile-menu ul li a {
    color: #9B0A0F;
    font-family: "hobeaux", sans-serif;
    font-size: 28px;
    font-weight: 700;
}
@media screen and (min-width: 376px) {
    .mobile-menu ul li {
        margin-bottom: 38px;
    }
}
.mobile-menu.open > .nav-ul {
    border-bottom: 1px solid rgba(155, 10, 15, 0.2);
}

/* Utility menu (phone + contact) */
.mobile-menu .utility-menu {
    padding: 24px 28px 0;
    margin-top: 0 !important;
}
.mobile-menu .utility-menu a,
.mobile-menu .utility-menu li {
    font-family: "proxima-nova", sans-serif !important;
    font-size: 16px !important;
    font-weight: 400;
    color: #9B0A0F !important;
    margin-bottom: 16px;
}

/* "Where To Buy" CTA button */
.mobile-menu .button,
.mobile-menu a.button {
    display: block;
    margin: 24px 28px 28px;
    background-color: #ffffff !important;
    color: #9B0A0F !important;
    border: none !important;
    border-radius: 60px;
    text-align: center;
    padding: 16px 32px;
    font-family: "hobeaux", sans-serif;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
}
.mobile-menu .button:hover,
.mobile-menu a.button:hover {
    background-color: #f0f0f0 !important;
    color: #9B0A0F !important;
    border: none !important;
}

.mobile-menu span {
    color: #9B0A0F;
}
.mobile-menu-header span i {
    margin-right: 15px;
}
.availability-button,
.availability-button a {
    color: black;
}
.mobile-menu .availability-button {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.monsterpops .top-navigation .availability-button a {
    background-color: #ffffff !important;
    color: #9B0A0F !important;
    border: none !important;
    border-radius: 60px;
    text-align: center;
    font-family: "hobeaux", sans-serif;
    font-size: 18px;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.05em;
    text-decoration: none;
}
.monsterpops .top-navigation .availability-button a:hover {
    background-color: #f0f0f0 !important;
    color: #9B0A0F !important;
    border: none !important;
}
@media screen and (max-width:1000px) {
	.site-identity > .availability-button a.button {
	    padding: 14px 59px;
	    border-radius: 60px;
	    margin-top: 25px;
	}
	.availability-button {
		margin-top: 25px;
		display: none;
	}
}
@media screen and (min-width:1001px) {
	.site-identity > .availability-button {
		margin-left: 20px;
	}
}

.menu-item.no-hover:hover > a,
.menu-item.no-hover:hover {
    cursor: default !important;
    text-decoration: none;
}
footer.dark-bg .menu-item.no-hover:hover > a,
footer.dark-bg .menu-item.no-hover a:hover {
	color: white !important;
}
@media (min-width:378px) and (max-width:416px) {
	#menu-top-bar {
		gap:15px!important;
	}
}
@media (min-width:355px) and (max-width:377px) {
	#menu-top-bar {
		gap:5px!important;
	}
}
@media (min-width:355px) and (max-width:377px) {
	#menu-top-bar {
		gap:5px!important;
	}
}
@media (min-width:300px) and (max-width:354px) {
	#top-bar #menu-top-bar li.budgetsaver, #top-bar #menu-top-bar li.twinpops, #top-bar #menu-top-bar li.monsterpops {
		background-size:80px;
		width: 80px;
	}
		#menu-top-bar {
		gap:10px!important;
	}
	#top-bar #menu-top-bar li.twinpops:after {
		width: 95px;
	}
}
.primary-blog-cta {
	font-family: "hobeaux", sans-serif;
	font-weight: bold;
}
.primary-blog-cta a:hover {
	background-color:var(--tp-purple)!important;
	transition: background-color 200ms linear;
}
.site-header {
    border-bottom-right-radius: 35px;
    border-bottom-left-radius: 35px;
    margin-bottom: -35px;
}
.site-identity {
    padding: 10px 0;
}
.site-content {
    padding: 0;
}

/* Footer Pops */
.footer-pops {
	background-color: #C11320;
    color: #ffffff;
    border-top-right-radius: 35px;
    border-top-left-radius: 35px;
    margin-top: -35px;
    z-index: 9;
    position: relative;
    padding: 50px;
    width: 100%;
    display: flex;
    align-items: center;
}
.footer-pops img {
	width: 275px;
}
.footer-pops ul {
	margin: 0;
	padding: 0;
    display: flex;
    list-style: none;
    flex-direction: row;
    gap: 40px;
}
.footer-top-menu li a {
    color: #fff;
}
.footer-logo {
	flex: 1;
}
.footer-top-menu-container {
	flex: 2;
}
body.twinpops .footer-logo.monster{
        display: none;
}
.footer-pops a:hover,
.site-footer a:hover {
	color: #fff;
} 
@media screen and (max-width: 1000px) {
	.footer-pops {
	    gap: 30px;
	    flex-direction: column;
	}
	ul#menu-footer-top-menu {
	    display: flex;
	    flex-direction: column;
	    gap: 20px;
	    text-align: center;
	    font-weight: bold;
	}
	.site-info {
	    flex-direction: column-reverse;
	    gap: 5px;
	    text-align: center;
	}
	.site-info .right {
	    margin-bottom: 20px;
	}
}
.mobile-menu.open>.nav-ul {
	border: 0;
}
@media (max-width:1000px) {
	.contact-cta {
		display: none;
	}
	#top-bar .container {
		display: flex;
	}
	#open-menu {
		margin-left: auto;
	}
	.mobile-menu-wrap.open {
	    background: #f5a8a0;
	    z-index: 1;
	}
	.mobile-menu.open {
	    z-index: 9;
	    width: 100vw;
        padding: 230px 0;
	}
	html.open {
		overflow: hidden !important;
	}
	.close-mobile-menu {
		display: none;
	}
	html.open #open-menu {
		display: none;
	}
	html.open .close-mobile-menu {
		display: block;
	}
}