/*   
Theme Name: Greenbean
Theme URI: http://www.blank.com
Author: El Blanko
Author URI: http://www.blank.com
Version: 1.00
*/


/* Bernina Sans loaded via Adobe Fonts (Typekit) in header.php */


html {
	overflow-y: scroll;
	scroll-behavior: smooth;
	font-size:18px;
	line-height:1.4;
	color: #000;
}
@media only screen and (max-width : 750px) {
	html {
		font-size:16px;
	}
}

.szd img,
.szd svg {
	width:100%;
	height:auto;
}

a {
	color:#007DB9;
	transition:all .3s;
}
a:hover {
	color:#003A5D;
}

body {
    padding: 0;
    margin: 0;
	color:#000;
	font-family: 'jaf-bernina-sans', sans-serif;
	font-weight:400;
}

/* ---- Header base ---- */
header {
	position:relative;
	width:100%;
	background-color:#ffffff;
}

/* ---- Logo ---- */
header .logo {
	position:relative;
	height:auto;
}

/* ---- Old header buttons (hidden, no longer used) ---- */
header .buttons { display:none; }

/* ---- Hamburger ---- */
#hamburger {
	display:none;
	cursor:pointer;
}
#hamburger .bar {
	position:absolute;
	top:0;
	left:0;
	fill:#003A5D;
	transition:all .4s;
}
#hamburger:hover .bar { fill:#007DB9; }
#hamburger.on .bar { fill:#003A5D; }
#hamburger.on:hover .bar { fill:#007DB9; }
#hamburger #bar1 { top:0; }
#hamburger.on #bar1 { opacity:0; }
#hamburger #bar2 { top:10px; }
#hamburger.on #bar2 { transform: rotate(-45deg); }
#hamburger #bar3 { top:10px; }
#hamburger.on #bar3 { transform: rotate(45deg); }
#hamburger #bar4 { top:20px; }
#hamburger.on #bar4 { opacity:0; }

/* ---- Nav base ---- */
header .navbar {
	position:relative;
}
header .navbar .nav ul {
	margin:0;
	padding:0;
	list-style:none;
}
header .navbar .nav ul li a {
	display:block;
	color:#003A5D;
	font-weight:500;
	text-decoration:none;
	text-transform:capitalize;
	transition:all .3s;
}
header .navbar .nav ul li a:hover {
	text-shadow: 0 0 .01px currentColor, 0 0 .01px currentColor, 0 0 .01px currentColor;
}
header .navbar .nav ul li.current-menu-item a {
	text-shadow: 0 0 .01px currentColor, 0 0 .01px currentColor, 0 0 .01px currentColor;
}



/* ------------------------------  global   ------------------------------------------- */

main {
	margin:0 auto;
	padding: 0 50px;
}
@media only screen and (max-width : 750px) {
	main {
		margin:0;
		padding: 0 25px;
	}
}
main > .wpb-content-wrapper {
	max-width: 1200px;
	margin:0 auto;
}

h1 {
	font-size:46px;
	line-height:1.1;
    color: #003A5D;
	font-weight: 400;
}
@media only screen and (max-width : 750px) {
	h1 {
		font-size:38px;
	}	
}
h2 {
	font-size:36px;
	line-height:1.1;
    color: #007DB9;
	font-weight: 600;
}
@media only screen and (max-width : 750px) {
	h2 {
		font-size:30px;
	}	
}
h3 {
	font-size:28px;
	line-height:1.1;
    color: #003A5D;
	font-weight: 400;
}
@media only screen and (max-width : 750px) {
	h3 {
		font-size:23px;
	}	
}


.btn-blue button,
.btn-blue a {
	background-color: #00BCF1!important;
	border: 2px solid #00BCF1!important;
	color: #ffffff!important;              /* keep text white */
	font-weight: 600!important;
	font-size: 18px!important;
	margin: 0 5px 0 0;
	padding: 10px 20px!important;          /* simplified padding since arrow removed */
	border-radius: 25px!important;         /* ✅ rounded border */
	text-transform: uppercase!important;

	/* ✅ remove arrow */
	background-image: none!important;
	background-size: initial!important;
	background-position: initial!important;
	background-repeat: no-repeat!important;
}

.btn-blue button:hover,
.btn-blue a:hover {
	background-color: #007DB9!important;
	color: #ffffff!important;              /* ✅ keep text white on hover */
}

/* optional but recommended: ensure links don’t turn purple/blue after click */
.btn-blue a:visited,
.btn-blue a:active,
.btn-blue a:focus {
	color: #ffffff!important;
}


.btn-clear button,
.btn-clear a {
    background-color: transparent!important;
    border: 2px solid #00BCF1!important;     /* border color */
    color: #003A5D!important;               /* ✅ updated text color */
    font-weight: 600!important;
    font-size: 18px!important;
    margin: 0 5px 0 0;
    padding: 10px 20px!important;           /* reduced since arrow removed */
    border-radius: 25px!important;
    text-transform: capitalize!important;

    /* remove arrow */
    background-image: none!important;
    background-size: initial!important;
    background-position: initial!important;
    background-repeat: no-repeat!important;
}

.btn-clear button:hover,
.btn-clear a:hover {
    background-color: #e7e7e7!important;
    color: #003A5D!important;               /* keep text color on hover */
}

/* recommended: prevent link states changing the color */
.btn-clear a:visited,
.btn-clear a:active,
.btn-clear a:focus {
    color: #003A5D!important;
}


/* optional but recommended: prevent visited/active/focus colors changing */
.btn-clear a:visited,
.btn-clear a:active,
.btn-clear a:focus {
    color: #007DB9!important;
}


.btn-orange button,
.btn-orange a {
	background-color: #ff8300!important;
	border: 2px solid #ff8300!important;
    color: #ffffff!important;
    font-weight: 600!important;
    font-size: 18px!important;
    margin:0 5px 0 0; 
	padding: 10px 45px 10px 20px!important;
    border-radius: 6px!important;
	text-transform:capitalize!important;
	background-image:url(images/ButtonArrowWhite.svg)!important;
	background-size: 30px!important;
	background-position: right 5px center!important;
	background-repeat:no-repeat!important;
}
.btn-orange button:hover,
.btn-orange a:hover {
	background-color: #ffac54!important;
}
.btn-green button,
.btn-green a {
	background-color: #00e3a4!important;
	border: 2px solid #00e3a4!important;
    color: #ffffff!important;
    font-weight: 600!important;
    font-size: 18px!important;
    margin:0 5px 0 0; 
	padding: 10px 45px 10px 20px!important;
    border-radius: 6px!important;
	text-transform:capitalize!important;
	background-image:url(images/ButtonArrowWhite.svg)!important;
	background-size: 30px!important;
	background-position: right 5px center!important;
	background-repeat:no-repeat!important;
}
.btn-green button:hover,
.btn-green a:hover {
	background-color: #2ff4be!important;
}

/* Step circle icons (1, 2, 3) */
.wpb_text_column .wp-image-1581 {
	width: 40px !important;
	height: 40px !important;
	min-width: 40px !important;
	flex-shrink: 0;
	margin-top: 0 !important;
}
.wpb_text_column .wp-image-1581 + br { display: none; }
.wpb_text_column p:has(.wp-image-1581) { margin: 0 !important; }

/* Image size utilities */
.app-image-small img { width: 65% !important; height: auto !important; }
.app-image-medium img { width: 80% !important; height: auto !important; border-radius: 25px !important; }
.app-image-75 img { width: 75% !important; height: auto !important; }
.app-image-65 img { width: 65% !important; height: auto !important; }

/* ---- Reusable layout utilities ---- */

/* Reverse column order on mobile */
@media (max-width: 750px) {
	.reverse-on-mobile {
		display: flex !important;
		flex-direction: column-reverse;
		flex-wrap: nowrap;
	}
	.reverse-on-mobile > .wpb_column {
		width: 100% !important;
		float: none !important;
		margin-left: 0 !important;
		left: 0 !important;
	}
}

/* bg-shift: extend column background left to row edge */
@media (min-width: 751px) {
	.bg-shift > .vc_column-inner {
		margin-left: -100%;
		padding-left: 100% !important;
		border-radius: 25px 0 0 25px;
	}
}

.phone-top { position: relative; z-index: 5; }

.half-bg {
	background: linear-gradient(to bottom, transparent 70%, #007DB9 70%) !important;
}

/* ---- Mobile fixes for homepage content sections ---- */
@media (max-width: 750px) {
	/* Remove left padding on text blocks that have it for desktop indentation */
	[class*="vc_custom_1774635586654"],
	[class*="vc_custom_1775236441540"] {
		padding-left: 0 !important;
	}

	/* Reduce large section margins */
	.vc_custom_1774627173228 {
		margin-bottom: 40px !important;
	}
	.vc_custom_1767631997271 {
		margin-bottom: 20px !important;
	}

	/* app-image-small: full width on mobile */
	.app-image-small img { width: 85% !important; }

	/* bg-shift column: just a normal rounded box on mobile */
	.bg-shift > .vc_column-inner {
		margin-left: 0 !important;
		padding-left: 15px !important;
		border-radius: 25px !important;
	}
}

.btn-outline-nav button,
.btn-outline-nav a {
	background-color: transparent!important;
	border: 2px solid #00BCF1!important;
	color: #003A5D!important;
	font-weight: 700!important;
	font-size: 15px!important;
	margin: 0 5px 0 0;
	padding: 10px 20px!important;
	border-radius: 25px!important;
	text-transform: uppercase!important;
	background-image: none!important;
	background-size: initial!important;
	background-position: initial!important;
	background-repeat: no-repeat!important;
}
.btn-outline-nav button:hover,
.btn-outline-nav a:hover {
	background-color: rgba(0,188,241,0.1)!important;
	color: #003A5D!important;
}
.btn-outline-nav a:visited,
.btn-outline-nav a:active,
.btn-outline-nav a:focus {
	color: #003A5D!important;
}

.btn-outline-nav.btn-white button,
.btn-outline-nav.btn-white a {
	color: #ffffff!important;
}
.btn-outline-nav.btn-white button:hover,
.btn-outline-nav.btn-white a:hover {
	color: #ffffff!important;
}
.btn-outline-nav.btn-white a:visited,
.btn-outline-nav.btn-white a:active,
.btn-outline-nav.btn-white a:focus {
	color: #ffffff!important;
}

/* Mobile button scaling */
@media only screen and (max-width : 750px) {
	.btn-blue button, .btn-blue a,
	.btn-clear button, .btn-clear a,
	.btn-outline-nav button, .btn-outline-nav a,
	.btn-orange button, .btn-orange a,
	.btn-green button, .btn-green a {
		font-size: 14px!important;
		padding: 8px 16px!important;
	}
}

/* ------------------------------  home page   ------------------------------------------- */

#hp-hero {
	padding:80px 0;

	background-image: url(/wp-content/uploads/2026/04/Home-Page-Hero-Desktop-scaled.jpg) !important;
	background-color:#003A5D !important;
	background-repeat: no-repeat !important;
	background-position: center center !important;
	background-size: cover !important;
}


/* keep padding rules */
#hp-hero > .wpb_column > .vc_column-inner {
  	padding: 0 0px;
}

/* Desktop: keep text left, image right (flex) */
@media only screen and (min-width: 751px) {
	#hp-hero > .wpb_column > .vc_column-inner {
		display:flex;
		align-items:center;
		justify-content:space-between;
		gap:0;
	}

	#hp-hero-img-1 {
		margin-left:auto;
		flex:0 0 auto;
	}
}

@media only screen and (max-width : 750px) {
	#hp-hero > .wpb_column > .vc_column-inner {
		padding: 0 25px;
	}	
}

@media only screen and (max-width : 550px) {
	#hp-hero > .wpb_column > .vc_column-inner {
		padding: 0 10px;
	}	
}

#hp-hero .wpb_content_element {
	margin-bottom: 15px;
}

.hp-hero-text-1 p {
	font-size:40px;
	color: #fff;
  	margin: 0 0 25px !important;
	line-height:.75;
}

.hp-hero-text-2 p {
	font-size:60px;
	color: #fff;
   	margin: 0;
	line-height:1;
}

#hp-hero-img-1 {
	display:inline-block;
}

#hp-hero-img-1 img {
	width:539px;
	height:164px;
}

@media only screen and (max-width : 1150px) {
	#hp-hero {
		padding:50px 0;
	}
	#hp-hero .wpb_content_element {
		margin-bottom: 12px;
	}
	.hp-hero-text-1 p {
		font-size:36px
	}
	.hp-hero-text-2 p {
		font-size:50px;
	}
	#hp-hero-img-1 img {
		width:431px;
		height:132px;
	}
}

@media only screen and (max-width : 750px) {
	#hp-hero {
		padding:30px 0;
	}
	#hp-hero .wpb_content_element {
		margin-bottom: 9px;
	}
	.hp-hero-text-1 p {
		font-size:35px;
	}
	.hp-hero-text-2 p {
		font-size:40px;
	}
	#hp-hero-img-1 img {
		width:346px;
		height:106px;
	}
}

/* Mobile hero */
@media only screen and (max-width : 750px) {
	#hp-hero {
		padding: 0;
		background-image: url(/wp-content/uploads/2026/04/Home-Page-Hero-Mobile.jpg) !important;
		background-position: center top !important;
		background-size: cover !important;
		background-repeat: no-repeat !important;
		background-color: #003A5D !important;
	}

	#hp-hero > .wpb_column {
		width: 100% !important;
		float: none !important;
	}

	#hp-hero.vc_row,
	#hp-hero.wpb_row {
		display: flex !important;
		flex-direction: column-reverse !important;
		flex-wrap: nowrap !important;
	}

	/* Empty column stacks first = image visible at top */
	#hp-hero > .wpb_column:last-child {
		min-height: 55vw;
	}

	/* Content column below */
	#hp-hero > .wpb_column:first-child {
		padding: 25px 20px !important;
	}

	#hp-hero > .wpb_column:first-child > .vc_column-inner {
		padding: 0 !important;
	}

	#hp-hero .wpb_content_element {
		margin-bottom: 5px;
	}

	/* Scale down all hero text on mobile */
	#hp-hero .wpb_text_column p {
		font-size: 0.75em !important;
	}

	.hp-hero-text-1 p {
		font-size: 28px;
		margin: 0 0 10px !important;
	}
	.hp-hero-text-2 p {
		font-size: 32px;
	}
	#hp-hero-img-1 img {
		width: 235px;
		height: 76px;
	}
}


#hp-row-1 {
	margin:0;
	padding:50px 0 0 0;
}
#hp-row-1 .vc_row.vc_row-flex {
	align-items: flex-start;
}


#hp-row-1-img .wpb_single_image .wpb_wrapper.vc_figure {
	border-radius:20px;
	width:100%;
}


#hp-row-1-img .wpb_single_image .vc_single_image-wrapper {
	border-radius:20px;
	width:100%;
}
#hp-row-1-img .wpb_single_image .vc_single_image-wrapper img {
	border-radius:20px;
	width:100%;
}

#hp-row-1 .title-wrapper .title {
  font-size:40px;
	font-weight:600;
	line-height:1.1;
	color:#00395d;
}
#hp-row-1 .title-after_title {
    font-size: 24px;
		line-height:1.2;
    color:#00395d;
    font-family: 'jaf-bernina-sans';
}


#hp-row-2 {
	position:relative;
	z-index:20;
	padding:50px 0;
}
@media only screen and (max-width : 750px) {
	#hp-row-2 {
		padding:25px 0;
	}
}
#hp-row-2-heading {
	text-align:center;
}
#hp-row-2-boxes {
	font-weight:400;
	margin:0;
}
#hp-row-2-boxes h3 {
	color: #453b80;
	font-weight:600;
	margin:0 0 10px;
}

#hp-row-2-boxes .wpb_single_image {
	margin-bottom:15px;
}
#hp-row-2-boxes .wpb_single_image img {
	width:125px;
}
@media only screen and (max-width : 750px) {
	#hp-row-2-boxes .wpb_single_image img {
		width:85px;
	}
}
#hp-row-2-box-1 {
	padding:0 10px 10px;
}
#hp-row-2-box-1 > .vc_column-inner {	
	border: #FF8300 5px solid;
	border-radius:20px;
	background-color: #fff2e5;
	padding: 20px 50px 10px 50px;
	font-size: 20px;
  	color: #453b80;
  	line-height: 1.2;
}
@media only screen and (max-width : 750px) {
	#hp-row-2-box-1 > .vc_column-inner {	
		padding: 20px 25px 10px 25px;
		font-size: 20px;
	}
}
#hp-row-2-box-2 {
	padding:0 10px 10px;
}
#hp-row-2-box-2 > .vc_column-inner {	
	border: #00E3A4 5px solid;
	border-radius:20px;
	background-color: #e5fcf6;
	padding: 20px 50px 10px 50px;
	font-size: 20px;
  	color: #453b80;
  	line-height: 1.2;
}
@media only screen and (max-width : 750px) {
	#hp-row-2-box-2 > .vc_column-inner {	
		padding: 20px 25px 10px 25px;
		font-size: 20px;
	}
}


#hp-purple-bg {
	margin-top:-300px;
	padding-top:100px;
	background: #470999;
    background: linear-gradient(225deg,#170d67 57.65%,#6e06c1 93.62%);
	z-index:5;
}

#hp-row-3 {
	max-width:1150px;
	margin:0 auto;
	padding:50px 25px;
	color:#fff;
}

#hp-row-3 h2 {
    color: #fff;
}


#hp-row-4 {
	max-width:1150px;
	margin:30px auto 0;
	background: linear-gradient(219deg, #3a5dff 70%, #01e0a7 100%);
    padding: 40px 50px 40px !important;
    border-radius: 20px !important;
	color:#fff;
	font-size: 20px;
}
@media only screen and (max-width : 1200px) {
	#hp-row-4 {
		margin:30px 10px 0;
		padding: 40px 25px 20px !important;
	}
}
#hp-row-4 h2 {
    color: #fff;
	margin-top:0;
}
#hp-row-4  .wpb_single_image .vc_figure {
	width: 100%;
}
#hp-row-4 .wpb_single_image .vc_single_image-wrapper {
	width: 100%;
	text-align:right;
}
@media only screen and (max-width : 750px) {
	#hp-row-4 .wpb_single_image .vc_single_image-wrapper {
		text-align:center;
	}
}


#image-44 img.vc_single_image-img {
    margin-top: -165px;
		margin-bottom: -150px;
	  width:460px;
}
@media only screen and (max-width : 750px) {
	#image-44 img.vc_single_image-img {
		margin-top: -40px;
		margin-bottom: -75px;
		width:350px;
	}
}

#hp-footnote {
	color:#fff;
	font-weight:500;
	padding:0 50px;
}
@media only screen and (max-width : 750px) {
	#hp-footnote {
		padding:0 25px;
	}
}


/* ------------------------------  about page   ------------------------------------------- */

#atp-banner .vc_column-inner {
	margin:0 auto;
	padding:250px 15px 50px;
	color:#fff;
}
@media only screen and (max-width : 750px) {
	#atp-banner .vc_column-inner {
		margin:0;
		padding:170px 15px 30px;
	}
}
#atp-banner .vc_column-inner h1 {
	color:#fff;
	font-weight:600;
}

#atp-01 {
	margin:0 auto;
	padding:50px 0;
}
#atp-01 h3 {
	font-weight:500;
	color:#003A5D;
}

#atp-01 .vc_single_image-wrapper {
	border-radius:20px;
	overflow: hidden;
}


#atp-row-2 {
	background: #470999;
    background: linear-gradient(38deg, #470999 0%, #170d67 30%);
}
#atp-row-2-heading {
	text-align:center;
	margin:0;
	padding:50px 0 0;
	color:#fff;
}
#atp-row-2-heading h2 {
	color:#fff;
	margin-bottom:0;
}
#atp-row-2-boxes {
	font-weight:400;
	margin:0;
	padding: 25px 0;
}
#atp-row-2-boxes h3 {
	color: #453b80;
	font-weight:600;
	margin:0 0 10px;
}

#atp-row-2-boxes .wpb_single_image {
	margin-bottom:15px;
}
#atp-row-2-boxes .wpb_single_image img {
	width:125px;
}

#atp-row-2-box-1 {
	padding:0 10px 10px;
}
#atp-row-2-box-1 > .vc_column-inner {	
	border: #FF8300 5px solid;
	border-radius:20px;
	background-color: #fff2e5;
	padding: 20px 50px 10px 50px;
	font-size: 20px;
  	color: #453b80;
  	line-height: 1.2;
}
@media only screen and (max-width : 750px) {
	#atp-row-2-box-1 > .vc_column-inner {	
		padding: 20px 25px 10px 25px;
		font-size: 18px;
	}
}
#atp-row-2-box-2 {
	padding:0 10px 10px;
}
#atp-row-2-box-2 > .vc_column-inner {	
	border: #00E3A4 5px solid;
	border-radius:20px;
	background-color: #e5fcf6;
	padding: 20px 50px 10px 50px;
	font-size: 20px;
  	color: #453b80;
  	line-height: 1.2;
}
@media only screen and (max-width : 750px) {
	#atp-row-2-box-2 > .vc_column-inner {	
		padding: 20px 25px 10px 25px;
		font-size: 18px;
	}
}
#atp-row-2-text {
	text-align:center;
	margin:0;
	padding:25px 50px 75px;
	color:#fff;
	font-size:20px;
}
@media only screen and (max-width : 750px) {
	#atp-row-2-text {
		padding:0 25px 25px;
		font-size:18px;
	}
}
#atp-03 {
	margin:0;
	padding:50px 100px;
}
@media only screen and (max-width : 1250px) {
	#atp-03 {
		margin:0;
		padding:50px 50px;
	}
}
@media only screen and (max-width : 750px) {
	#atp-03 {
		margin:0;
		padding:50px 0;
	}
}
#atp-03 h2 {
	text-align:center;
	color:#003A5D;
}

#atp-03-program .vc_toggle_title {
	padding:17px 0;
	margin-bottom:0;
}
#atp-03-program .vc_toggle_icon {
	display:none;
}
#atp-03-program .vc_toggle_title h3 {
	font-weight:600;
	color:#252060;
	font-size:22px;
	margin:0;
	transition:all .3s;
}
#atp-03-program .vc_toggle_title:hover h3 {
	color: #007DB9;
}


#atp-03-program .vc_toggle_content {
	margin:0;
	padding:0;
}

#atp-03-program #program-dd-1 {
	background-image:url(/wp-content/uploads/2025/08/peep-icon-1.png);
	background-size:60px auto;
	background-position:left top 25px;
	background-repeat: no-repeat;
	padding:20px 20px 20px 80px;
	margin-bottom:0;
	border-bottom:1px solid #e7e7e7;
}

#atp-03-program #program-dd-2 {
	background-image:url(/wp-content/uploads/2025/08/bolt-icon.png);
	background-size:60px auto;
	background-position:left top 25px;
	background-repeat: no-repeat;
	padding:20px 20px 20px 80px;
	margin-bottom:0;
	border-bottom:1px solid #e7e7e7;
}

#atp-03-program #program-dd-3 {
	background-image:url(/wp-content/uploads/2025/08/house-icon.png);
	background-size:60px auto;
	background-position:left top 25px;
	background-repeat: no-repeat;
	padding:20px 20px 20px 80px;
	margin-bottom:0;
	border-bottom:1px solid #e7e7e7;
}

#atp-03-program #program-dd-4 {
	background-image:url(/wp-content/uploads/2025/08/hand-icon.png);
	background-size:60px auto;
	background-position:left top 25px;
	background-repeat: no-repeat;
	padding:20px 20px 20px 80px;
	margin-bottom:0;
}



#atp-04 {
	margin:0 50px 75px;
	padding:50px 50px 25px;
	background-color: #efefef;
	border-radius:20px;
}
@media only screen and (max-width : 750px) {
	#atp-04 {
		margin:0 0 50px;
		padding:25px 25px 10px;
	}
}
#atp-04 h2 {
	text-align:center;
	margin-top:0;
	color:#003A5D;
}
#atp-04-faq .vc_do_toggle {
	margin:0;
	border-bottom:1px solid #ccc;
}

#atp-04-faq .vc_toggle_title {
	padding:20px 0 20px 25px;;
	margin-bottom:0;
	
}
#atp-04-faq .vc_toggle_title h3 {
	font-weight:600;
	color:#252060;
	font-size:22px;
	margin:0;
	transition:all .3s;
}
#atp-04-faq .vc_toggle_title:hover h3 {
	color: #007DB9;
}
#atp-04-faq .vc_toggle_content {
	margin:0;
}


/* ------------------------------  savers page   ------------------------------------------- */

#sv-banner {
	background-color: #fff2e5;
	padding:75px 50px 40px;
	font-size:20px;
}
#sv-banner h2 {
	color: #003A5D;
	margin:10px 0;
}
#sv-banner strong {
	color: #003A5D;
	font-weight:600;
}
#sv-banner-icon {
	margin:0;
}
#sv-banner-icon img {
	width:80px;
}
#sv-banner-img {
	border-radius:20px;
	overflow:hidden;
}

#sv-row-01 {
	background: #470999;
    background: linear-gradient(225deg,#170d67 57.65%,#6e06c1 93.62%);
	padding:75px 50px 50px;
}
#sv-01-heading h3 {
	color:#fff;
	text-align: center;
}
#sv-01-boxes {
	color:#fff;
	padding:0;
}

#sv-01-boxes .wpb_single_image {
	width:70px;
	margin:0;
}
#sv-01-boxes .vc_column-inner {
	margin:0 10px 10px;
	border-radius:20px;
	padding:40px 40px 10px;
	background-color:#FFFFFF29;
	font-size:20px;
}
@media only screen and (max-width : 750px) {
	#sv-01-boxes .vc_column-inner {
		padding:30px 20px 10px;
		font-size:18px;
	}
}
#sv-01-text {
	color:#fff;
	text-align:center;
	font-size:20px;
	padding:25px 50px;
}
@media only screen and (max-width : 750px) {
	#sv-01-text {
		font-size:18px;
		padding:25px 25px;
	}
}

#sv-row-02 {
	padding:50px 0;
}
#sv-02-heading h2 {
	text-align: center;
}
#sv-02-steps p {
	margin:12px 0;
}
#sv-02-steps  {
	padding: 0 15px;
}
#sv-02-steps .box-1 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-1-orange.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#sv-02-steps .box-2 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-2-orange.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#sv-02-steps .box-3 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-3-orange.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#sv-02-steps .box-4 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-4-orange.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#sv-02-steps .box-5 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-5-orange.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}

#sv-02-boxes {
 margin: 50px 0 0 0;
}
#sv-02-boxes .vc_column-inner {
	margin:0 10px 10px;
	border-radius:20px;
	padding:10px 40px 0;
	background-color: #fff2e5;
}
#sv-02-boxes .vc_column-inner strong {
	color: #003A5D;
	font-weight:600;
}
#sv-02-boxes .vc_column-inner h3 {
	font-size:20px;
	color: #003A5D;
	font-weight:600;
	margin:25px 0 10px;
}



/* ------------------------------  super savers page   ------------------------------------------- */

#ss-banner {
	background-color: #e5fcf6;
	padding:75px 50px 40px;
	font-size:20px;
}
#ss-banner h2 {
	color: #003A5D;
	margin:10px 0;
}
#ss-banner strong {
	color: #003A5D;
	font-weight:600;
}
#ss-banner-icon {
	margin:0;
}
#ss-banner-icon img {
	width:80px;
}
#ss-banner-img {
	border-radius:20px;
	overflow:hidden;
}

#ss-row-01 {
	background: #470999;
    background: linear-gradient(225deg,#170d67 57.65%,#6e06c1 93.62%);
	padding:75px 50px 50px;
}
#ss-01-heading h3 {
	color:#fff;
	text-align: center;
}
#ss-01-boxes {
	color:#fff;
	padding: 0;
}

#ss-01-boxes .wpb_single_image {
	width:70px;
	margin:0;
}
#ss-01-boxes .vc_column-inner {
	margin:0 10px 10px;
	border-radius:20px;
	padding:40px 40px 10px;
	background-color:#FFFFFF29;
	font-size:20px;
}
@media only screen and (max-width : 750px) {
	#ss-01-boxes .vc_column-inner {
		padding:30px 20px 10px;
		font-size:18px;
	}
}
#ss-01-text {
	color:#fff;
	text-align:center;
	font-size:20px;
	padding:25px 50px;
}
@media only screen and (max-width : 750px) {
	#ss-01-text {
		font-size:18px;
		padding:25px 25px;
	}
}

#ss-row-02 {
	padding:50px 0;
}
#ss-02-heading h2 {
	text-align: center;
}
#ss-02-steps p {
	margin:12px 0;
}
#ss-02-steps {
	padding: 0 15px;
}
#ss-02-steps .box-1 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-1-green.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#ss-02-steps .box-2 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-2-green.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#ss-02-steps .box-3 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-3-green.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#ss-02-steps .box-4 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-4-green.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}
#ss-02-steps .box-5 {
	border:1px solid #ccc;
	border-radius:20px;
	margin:0 0 20px 0;
	padding:20px 20px 20px 80px;
	background-image:url(/wp-content/uploads/2025/08/steps-5-green.png);
	background-size:50px auto;
	background-position:left 15px center;
	background-repeat: no-repeat;
}

#ss-02-boxes {
 margin: 50px 0 0 0;
}
#ss-02-boxes .vc_column-inner {
	margin:0 10px 10px;
	border-radius:20px;
	padding:10px 40px 0;
	background-color: #e5fcf6;
}
#ss-02-boxes .vc_column-inner strong {
	color: #003A5D;
	font-weight:600;
}
#ss-02-boxes .vc_column-inner h3 {
	font-size:22px;
	color: #003A5D;
	font-weight:600;
	margin:25px 0 10px;
}


/* ------------------------------  compatible devices page   ------------------------------------------- */
#dev-heading {
	padding:25px 20px;
}
@media only screen and (max-width : 750px) {
	#dev-heading {
		padding:25px 10px;
	}
}
#dev-boxes {
	color:#fff;
	padding: 0;
}

#dev-boxes h3 {
	color:#003A5D;
	font-weight:600;
}
#dev-boxes h3 strong {
	color:#007DB9;
	font-weight:600;
}


#dev-boxes .gray-box > .vc_column-inner {
	border-radius:20px;
	padding:30px 40px 30px;
	background: #e6e7e8;
}
#dev-boxes .wpb_single_image {
	margin:0;
}
#dev-text {
	text-align:center;
	padding:25px 50px;
}

/* ------------------------------  contact us page   ------------------------------------------- */


#cu-row-1 {
	margin:0;
	padding:75px 0;
}
@media only screen and (max-width : 750px) {
	#cu-row-1 {
		margin:0;
		padding:50px 0;
	}
}
#cu-row-1 #cu-intro {
	margin:0;
    padding:0 20px;
}
@media only screen and (max-width : 750px) {
	#cu-row-1 #cu-intro {
		margin:0;
		padding:0 10px;
	}
}
#cu-row-1 h1 {
	margin-top:0;
}
#cu-boxes strong {
    color: #007DB9;
	font-weight:600;
}
#cu-box-1 {
	padding: 0 10px 10px;
}
#cu-box-1 > .vc_column-inner {
	background: #f2f2f2;
  	padding: 30px 40px;
  	border-radius: 10px;
}

#cu-box-2 {
	padding: 0 10px 10px;
}
#cu-box-2 > .vc_column-inner {
	background: #f2f2f2;
  	padding: 30px 40px;
  	border-radius: 10px;
}
#cu-box-3 {
	padding: 0 10px 10px;
}
#cu-box-3 > .vc_column-inner {
	background: #f2f2f2;
  	padding: 30px 40px;
  	border-radius: 10px;
}


/* ------------------------------  videos page   ------------------------------------------- */

#vids-01 #heading {
	padding:25px 20px 0;
}
@media only screen and (max-width : 750px) {
	#vids-01 #heading {
		padding:25px 10px;
	}
}
#vids-01 .videos h2 {
	font-size:18px;
	font-weight:500;
	color:#000;
}
#vids-01 .wpb_video_widget.vc_video-aspect-ratio-169 .wpb_video_wrapper {
	border-radius: 20px;
	overflow: hidden;
}




/* ----------------------   sign up form   ------------- */
#gf-signup-form {
	max-width: 1000px;
	border: 1px solid #333;
	border-radius: 20px;
	margin:50px auto;
	padding: 50px;
}
@media only screen and (max-width : 750px) {
	#gf-signup-form {
		margin:20px auto;
		padding: 10px;
	}
}
#gf-signup-form h2 {
    font-size: 40px;
	line-height:1.1;
    font-weight: 500;
	font-family: 'jaf-bernina-sans';
}
@media only screen and (max-width : 750px) {
	#gf-signup-form h2 {
			font-size: 28px;
	}
}
.gform_submission_error {	font-size: 16px !important;	line-height: 1.4;	font-weight: 500;	padding: 12px 16px;	margin-bottom: 20px;}
.gform_heading {
	display:none;
}
.gform_wrapper.gravity-theme .gfield_label {
	font-size: 24px;
	font-weight: 500;
	color:#333;
}
@media only screen and (max-width : 750px) {
	.gform_wrapper.gravity-theme .gfield_label {
		font-size: 20px;
	}
}
.gform_wrapper.gravity-theme .gfield_checkbox label, .gform_wrapper.gravity-theme .gfield_radio label {
	font-size: 21px;
	color:#333;
	font-weight: 500;
	font-family: 'jaf-bernina-sans';
}
@media only screen and (max-width : 750px) {
	.gform_wrapper.gravity-theme .gfield_checkbox label, .gform_wrapper.gravity-theme .gfield_radio label {
		font-size: 18px;
	}
}
.gform_wrapper.gravity-theme .gfield-choice-input {
	margin-top: 7px;
	vertical-align: top;
}


.gform-footer input[type="submit"] {
	background-color: #395cff!important;
	border: 2px solid #395cff!important;
    color: #ffffff!important;
    font-weight: 600!important;
    font-size: 18px!important;
    margin:0 5px 0 0; 
	padding: 10px 45px 10px 20px!important;
    border-radius: 6px!important;
	text-transform:capitalize!important;
	background-image:url(images/ButtonArrowWhite.svg)!important;
	background-size: 30px!important;
	background-position: right 5px center!important;
	background-repeat:no-repeat!important;
}

.gform-footer input[type="submit"]:hover {
	background-color: #3e80ff!important;
}



















/* ------------ DEFAULT ---------------- */

#default {
	margin:0;
	padding:25px 0 0;
	min-height:400px;
}

#default ol li,
#default ul li {
	padding:0 0 10px 0;
}


/* ------------ FOOTER ---------------- */

.prefooter {
	border-top:15px solid #fff;
	width:100%;
	background: #e6e7e8;
	color:#fff;
}

.prefooter-in {
	position:relative;
	max-width:1200px;
	margin:0 auto;
	padding:16px 50px 12px;
	text-align: right;
}
.prefooter-in .social {
	display:inline-block;
	margin:0 70px 0 0;
}

.prefooter-in .social svg {
	width:auto;
	height:16px;
	fill:#999;
	margin:0  0 0 25px;
	transition:all .3s;
}
.prefooter-in .social svg:hover {
	width:auto;
	fill:#252060;
}

.prefooter-in .bubble {
	position:absolute;
	right:0;
	top:-13px;
	width:80px;
}


.footer {
	width:100%;
	background: #252060;
	color:#fff;
}

.footer-in {
	max-width:1200px;
	margin:0 auto;
	padding:25px 50px;
}
.footer .copyright {
	display:inline-block;
	font-size:15px;
	font-weight:500;
	margin:0 25px 0 0;
	
}
.footer .links {
	display:inline-block;
	font-size:15px;
	font-weight:500;
	margin:0 25px 0 0;
}
.footer .links a {
	color:#fff;
	text-decoration:none;
}

#return-to-top {
	position: fixed;
	bottom: 0;
	right: 50%;
	margin:0 -44px 0 0;
	width: 88px;
	height: 32px;
	display: block;
	display: none;
	-webkit-transition: all 0.3s linear;
	-moz-transition: all 0.3s ease;
	-ms-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	transition: all 0.3s ease;
	z-index:800;
}



/* ==========================================
   DESKTOP HEADER (951px+)
========================================== */

#header.inner {
  display: flex;
  align-items: center;
  justify-content: space-between;
  background-color: #ffffff;
  padding: 18px 40px;
  box-sizing: border-box;
  position: relative;
}

#header .brand a {
  text-decoration: none;
}

#header .brand .at {
  color: #00BCF1;
  font-weight: 400;
}

@media (min-width: 951px) {
  #header .brand {
    width: 280px;
  }

  #header .navbar {
    width: auto;
    background: none;
    border: none;
  }

  #header .navbar #nav {
    display: block !important;
    position: relative !important;
    width: auto !important;
    background: none !important;
    border: none !important;
  }

  #header .navbar #nav ul {
    display: flex;
    gap: 24px;
    margin: 0;
    padding: 0;
    list-style: none;
    align-items: center;
  }

  #header .navbar #nav ul li a {
    color: #003A5D !important;
    font-size: 16px;
    font-weight: 500;
    padding: 6px 0;
    border-bottom: none;
    transition: color 0.25s;
  }

  #header .navbar #nav ul li.btn-blue > a {
    color: #ffffff !important;
  }

  #header .navbar #nav ul li a:hover,
  #header .navbar #nav ul li.current-menu-item a {
    text-shadow: 0 0 .01px currentColor, 0 0 .01px currentColor, 0 0 .01px currentColor;
    border-bottom: none;
  }

  #hamburger {
    display: none !important;
  }
}

/* ==========================================
   MOBILE HEADER (950px and below)
========================================== */
@media (max-width: 950px) {
  #header.inner {
    padding: 12px 15px;
  }

  #header .brand {
    width: 220px;
  }

  #hamburger {
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    transform: translateY(-50%);
    width: 28px;
    height: 22px;
    z-index: 1001;
  }
  #hamburger .bar {
    width: 28px;
    height: 3px;
    fill: #003A5D;
  }

  #header .navbar {
    position: static;
    width: 100%;
    background: none;
    border: none;
  }

  #header .navbar .nav {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    width: 100%;
    max-height: calc(100vh - 60px);
    overflow-y: auto;
    background-color: #fff;
    border-bottom: 2px solid #e7e7e7;
    z-index: 1000;
    display: none;
  }

  #header .navbar .nav ul {
    margin: 0;
    padding: 15px 20px;
    text-align: left;
  }

  #header .navbar .nav ul li {
    display: block;
  }

  #header .navbar .nav ul li a {
    color: #003A5D !important;
    font-size: 18px;
    font-weight: 500;
    padding: 12px 0;
    border-bottom: 1px solid #f0f0f0;
  }

  #header .navbar .nav ul li:last-child a {
    border-bottom: none;
  }

  #header .navbar .nav ul li a:hover,
  #header .navbar .nav ul li.current-menu-item a {
    color: #007DB9 !important;
  }
}



/* ==========================================
   SIMPLE ONE-LINE FOOTER
========================================== */

.footer-simple {
  background: #003A5D;
  color: #ffffff;
  padding: 22px 20px;
  text-align: center;
  font-size: 14px;
  font-weight: 500;
}

.footer-simple a {
  color: #ffffff;
  text-decoration: underline;
}

.footer-simple a:hover {
  color: #00BCF1;
}



/* =========================================================
   FAQ – Row: #mpc-faq-1
   - Bigger blue titles
   - Left icons (slightly bigger)
   - Right-aligned arrow
   - Single separator line under each item
   ========================================================= */

/* Item: remove default spacing + add one divider line */
#mpc-faq-1 .vc_toggle{
  margin: 0 !important;
  border: 0 !important;
  box-shadow: 0 -1px 0 #D6D6D8 inset !important; /* 1 line under each */
}

/* Header row: spacing + layout */
#mpc-faq-1 .vc_toggle_title{
  position: relative;
  display: flex;
  align-items: center;
  padding: 18px 52px 18px 64px !important; /* R space for arrow, L space for icon */
  margin: 0 !important;
}

/* Title text */
#mpc-faq-1 .vc_toggle_title,
#mpc-faq-1 .vc_toggle_title h4{
  font-size: 22px;
  line-height: 1.25;
  color: #003A5D !important;
  font-weight: 700;
}
#mpc-faq-1 .vc_toggle_title h4{ margin: 0 !important; }

/* Left icon (slightly bigger) */
#mpc-faq-1 .vc_toggle_title:before{
  content: "";
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 44px;  /* was 40 */
  height: 44px; /* was 40 */
  background: no-repeat left center / contain;
}

/* Icon mapping */
#mpc-faq-1 .faq-icon-signup .vc_toggle_title:before{ background-image: url("https://www.mississippipowersmartathome.com/wp-content/uploads/2026/01/Sign-Up-Icon.png"); }
#mpc-faq-1 .faq-icon-save   .vc_toggle_title:before{ background-image: url("https://www.mississippipowersmartathome.com/wp-content/uploads/2026/01/Choose-Icon.png"); }
#mpc-faq-1 .faq-icon-app    .vc_toggle_title:before{ background-image: url("https://www.mississippipowersmartathome.com/wp-content/uploads/2026/01/Connected-Devices-Icon.png"); }
#mpc-faq-1 .faq-icon-ready  .vc_toggle_title:before{ background-image: url("https://www.mississippipowersmartathome.com/wp-content/uploads/2026/01/Save-Icon.png"); }

/* Arrow: hard right + vertically centered */
#mpc-faq-1 .vc_toggle_title .vc_toggle_icon{
  position: absolute !important;
  right: 0 !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
#mpc-faq-1 .vc_toggle_title .vc_toggle_icon:before,
#mpc-faq-1 .vc_toggle_title .vc_toggle_icon:after{
  border-color: #003A5D !important;
}

/* Content: align with title text */
#mpc-faq-1 .vc_toggle_content{
  margin: 0 !important;
  padding: 0 0 18px 64px !important; /* match left padding of title */
}





/* =========================================================
   FAQ – Row: #mpc-faq-2
   - Bigger blue titles
   - Right-aligned arrow (keep default arrow color)
   - Single separator line under each item
   - No icons
   ========================================================= */

/* Item: remove default spacing + add one divider line */
#mpc-faq-2 .vc_toggle{
  margin: 0 !important;
  border: 0 !important;
  box-shadow: 0 -1px 0 #D6D6D8 inset !important;
}

/* Header row: spacing + layout (room for arrow on right) */
#mpc-faq-2 .vc_toggle_title{
  position: relative;
  display: flex;
  align-items: center;
  padding: 18px 52px 18px 0 !important;
  margin: 0 !important;
}

/* Title text */
#mpc-faq-2 .vc_toggle_title,
#mpc-faq-2 .vc_toggle_title h4{
  font-size: 22px;
  line-height: 1.25;
  color: #003A5D !important;
  font-weight: 700;
}
#mpc-faq-2 .vc_toggle_title h4{ margin: 0 !important; }

/* Arrow: hard right + vertically centered (no color override) */
#mpc-faq-2 .vc_toggle_title .vc_toggle_icon{
  position: absolute !important;
  right: 0 !important;
  left: auto !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}

/* Content spacing */
#mpc-faq-2 .vc_toggle_content{
  margin: 0 !important;
  padding: 0 0 18px 0 !important;
}



