/**
 * Theme Name: Safe Planet
 * Author: Safe Planet
 * Description: Safe Planet is a proudly Australian-owned company. Established in 2019, we are currently working in Victoria as an accredited partner (AP) under the VEU programme. We are also recognized by the New South Wales Government as an Accredited Certificate Provider (ACP) and are involved in the New South Wales Energy Saving Scheme (ESS).
 * Version: 1.0.1
 * */


html,body{box-sizing: border-box; margin: 0; padding: 0;}
a{text-decoration: none;}
h1,h2,h3,h4,h5,h6{margin: 0; padding: 0;}
p{margin: 0; padding: 0;}

.navbar{background: #262626;}
.navbar-brand img{height: 80px;}
.navbar-expand-lg .navbar-nav .nav-link{font-family: "Noto Sans", sans-serif; font-size: 16px; color: #fff; font-weight: 500; padding: 10px 20px;}
.nav-item a:hover{color: #1B5E20;}
.spcl_btn{background: #80b458; border-radius: 25px;}
.navbar-toggler{padding: 15px; border: 1px solid #fff;}
.navbar-toggler i{color: #fff;}
.navbar-toggler:focus{box-shadow: none;}
.hero{display: flex; padding: 100px 0;}
.hero-inner{display: flex; gap: 60px; align-items: flex-start;}
.hero-copy { flex: 1; color: #fff; }
.hero-copy .eyebrow{font-size: 20px; color: #fff; margin-bottom: 15px; font-family: "Noto Sans", sans-serif;}
.hero-copy h1{font-size: 2.7em; font-family: "Roboto", sans-serif; font-weight: 700; margin-bottom: 20px;}
.hero-copy h1 span { color: #80b458; }
.hero-bullets { list-style: none; margin-bottom: 28px; }
.hero-bullets{padding-left: 0; margin-left: 0;}
.hero-bullets li{display: flex; align-items: center; gap: 10px; font-size: 18px; font-family: "Noto Sans", sans-serif; margin-bottom: 10px; color: #eee;}
.form-card{background: #fff; border-radius: 20px; border: 1px solid #ddd; padding: 20px; width: 400px; flex-shrink: 0; position: relative;}
.form-img{position: relative; margin-top: -45px;}
.form-img h3{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff; font-family: "Noto Sans", sans-serif; font-size: 18px; font-weight: 600; text-align: center;}
.form-card h2{font-family: "Roboto", sans-serif; font-weight: 600; font-size: 22px; margin: 20px 0 10px; color: #80b458;}
.progress{margin: 0 0 20px;}
.progress-bar{background-color: #223926;}
.form-step{display: none; opacity: 0; transition: 0.3s ease;}
.form-step.active{display: block; opacity: 1;}
.form-step label{font-family: "Noto Sans", sans-serif; font-size: 16px; font-weight: 500;}
.set-of-inputs{margin: 15px 0;}

.landing-form label.questions{font-family: "Noto Sans", sans-serif; font-size: 16px; font-weight: 600; margin-bottom: 10px;}
.radio-button-check label{font-family: "Noto Sans", sans-serif; font-size: 15px; font-weight: 600;}
.landing-form button{background: #80b458; color: #fff; padding: 5px 20px; border-radius: 20px; border: 1px solid #80b458; margin: 0 0 20px;}
.set-of-inputs input[type=text],input[type=email]{width: 100%; padding: 7px 20px; border: 1px solid #bdbdbd; border-radius: 20px; margin-bottom: 10px;}
.float-right{float: right;}
.form-card p{color: #000; font-family: "Noto Sans", sans-serif; font-size: 15px; font-style: italic; margin-bottom: 15px;}
.form-satisfaction-img img{height: 50px;}


.trust-bar {
  background: #eee;
  border-bottom: 1px solid #eee;
  padding: 30px 0;
}

.section-title {
  font-size: 2em;
  font-weight: 700;
  color: #273f41;
  text-align: center;
  font-family: "Roboto", sans-serif;
  margin: 0 150px;
}
.section-sub {
  text-align: center;
  color: #000;
  font-size: 17px;
  margin: 20px 150px 50px;
  font-family: "Noto Sans", sans-serif;
}

/* ── REBATE SECTION ── */
.rebate-section { background: #fff; padding: 75px 0;}
.rebate-inner {
  display: flex;
  gap: 60px;
  align-items: center;
}
.rebate-img {
  flex: 1;
  border-radius: 20px;
  overflow: hidden;
}
.rebate-img img {
  width: 100%;
  border-radius: 20px;
  display: block;
}
.rebate-copy { flex: 1; }
.rebate-copy h2 {
  font-size: 1.5em;
  font-family: "Roboto", sans-serif;
  font-weight: 700;
  color: #273f41;
  margin-bottom: 20px;
}
.rebate-copy p {
  color: #555;
  margin-bottom: 20px;
  font-size: 16px;
  font-family: "Noto Sans", sans-serif;
}
.btn-outline {
  display: inline-block;
  border: 2px solid #80b458;
  color: #80b458;
  border-radius: 30px;
  padding: 12px 32px;
  font-size: 1rem;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  transition: all .2s;
  margin-top: 10px;
  font-family: inherit;
}
.btn-outline:hover { background: #80b458; color: #fff; }


.why-section {padding: 100px 0;}
.why-section .section-title { color: #fff;}
.why-section .section-sub { color: #eee; }
.why-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
}
.why-card {
  background: rgba(255,255,255,.08);
  border: 1px solid rgba(255,255,255,.15);
  border-radius: 16px;
  padding: 32px 24px;
  text-align: center;
}
.why-card-icon {
  background: #fff;
  border-radius: 50%;
  display: inline-block;
  padding: 15px;
  margin-bottom: 18px;
  box-shadow: 0 0 20px rgba(0, 0, 0, 0.5);
}
.why-card-icon img{height: 50px; width: 50px;}
.why-card h4 {
  font-size: 22px;
  font-weight: 700;
  font-family: "Roboto", sans-serif;
  color: #80b458;
  text-shadow: -0.5px 1px 2px #000;
  margin-bottom: 10px;
}
.why-card p { font-size: 16px; color: #eee; font-family: "Noto Sans", sans-serif;}

.logo-items{padding: 40px 0; background: #223926;}
.logo-item img{height: 125px;}

/* ── CHECKLIST SECTION ── */
.checklist-section {
  background: #0c2318;
  padding: 100px 0;
}
.checklist-section .section-title { color: #fff; }
.checklist-section .section-sub { color: #eee; }

.how-it-works{backdrop-filter: blur(5px); border: 1px solid #757575; border-radius: 15px; padding: 20px; margin-bottom: 20px; min-height: 360px;}
.works-icon img{background: #eee; padding: 15px; height: 100px; border-radius: 50%; box-shadow: 0 0 15px rgba(0,0,0,0.5);}
.how-it-works h2{font-family: "Roboto", sans-serif; margin: 25px 0 15px; color: #fff; font-size: 22px; font-weight: 600;}
.how-it-works p{font-family: "Noto Sans", sans-serif; color: #fff; font-size: 16px;}


.cta-center { text-align: center; margin-top: 20px;}
.btn-cta {
  display: inline-block;
  background: #273f41;
  color: #fff;
  border: none;
  border-radius: 30px;
  padding: 16px 48px;
  font-size: 1.15rem;
  font-weight: 700;
  cursor: pointer;
  text-decoration: none;
  transition: background .2s;
  font-family: inherit;
}
.btn-cta:hover { background: #6cab43; color:#fff; }


.reviews-section { background: #f5f5f5; padding: 100px 0;}
.reviews-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 28px;
}
.review-card {
  background: #fff;
  border-radius: 16px;
  padding: 28px 24px;
  box-shadow: 0 2px 12px rgba(0,0,0,.07);
}
.review-card .stars { font-size: 1.1rem; margin-bottom: 12px; display: block; }
.review-card p { font-size: 0.93rem; color: #444; line-height: 1.7; margin-bottom: 16px; font-style: italic; }
.reviewer { font-weight: 700; color: #273f41; font-size: 0.9rem; }
.reviewer-sub { font-size: 0.78rem; color: #888; }

/* ── FOOTER ── */


.before-footer{background:#cce1bc; padding: 75px 0; text-align:center;}
.before-heading{font-size: 2em;font-weight:700;color:#273f41;margin-bottom:12px; font-family: "Roboto", sans-serif;}
.before-footer p{color:#3d5c3e;font-size:1.05rem;margin-bottom:28px;max-width:600px;margin-left:auto;margin-right:auto; font-family: "Noto Sans", sans-serif;  }


footer {
  background: #273f41;
  color: #cce1bc;
  text-align: center;
  padding: 22px 40px;
  font-size: 0.82rem;
}
footer a { color: #80b458; text-decoration: none; }

.thank-you{padding: 100px 0;}
.thank-you-content h1{font-family: "Roboto", sans-serif; font-size: 2.5em; color: #fff; text-shadow: 0.5px 1px 2px #000;}
.thank-you-content p{font-family: "Noto Sans", sans-serif; font-size: 22px; font-weight: 500; color: #fff; margin: 30px 150px 40px 150px;}
.thank-you-content a{padding: 10px 25px; font-family: "Noto Sans", sans-serif; font-size: 18px; color: #fff; font-weight: 500; border: 1px solid #80b458; background: #80b458; border-radius: 25px;}

@media (max-width: 900px) {
  .hero-inner { flex-direction: column; }
  .form-card { width: 100%; }
  .rebate-inner { flex-direction: column; }
  .why-grid { grid-template-columns: 1fr; }
  .reviews-grid { grid-template-columns: 1fr; }
  section { padding: 50px 20px; }
}


@media only screen and (max-width : 480px)
{
  .navbar-brand img{height: 65px;}
  .navbar-expand-lg .navbar-nav .nav-link{padding: 15px 0;}
  .spcl_btn{display: inline-block; padding: 10px 20px!important;}
  .hero{padding: 40px 0;}
  .hero-copy .eyebrow{font-size: 16px; text-align: center;}
  .hero-copy h1{font-size: 25px; margin-bottom: 15px; text-align: center;}
  .hero-bullets li{font-size: 15px;}
  .review-badge{text-align: center;}
  .review-badge img{height: 50px;}
  .form-img{margin-top: -42px;}
  .trust-bar{padding: 25px 0;}
  .trust-bar-items{width: 100%; justify-content: space-around!important; flex-wrap: wrap;}
  .trust-icon{text-align: center;}
  .trust-icon img{height: 100px;}
  .trust-item{width: 50%;}
  .rebate-section{padding: 40px 0;}
  .section-title{margin: 0; font-size: 22px;}
  .section-sub{margin: 20px 0; font-size: 16px;}
  .rebate-inner{gap: 20px;}
  .rebate-copy h2{font-size: 22px;}
  .rebate-copy p{color: #000;}
  .mob-center{text-align: center;}
  .why-section{padding: 40px 0;}
  .logo-item{margin-bottom: 20px;}
  .checklist-section{padding: 40px 0;}
  .how-it-works{min-height: auto}
  .reviews-section{padding: 40px 0;}
  .before-footer{padding: 40px 0;}
  .before-heading{font-size: 22px;}
  .before-footer p{color: #000; font-size: 16px;}
  footer p{font-size: 16px;}
  .btn-cta{font-size: 16px;}
  .btn-outline{font-size: 16px;}
  .thank-you{padding: 40px 0;}
  .thank-you-content h1{font-size: 26px;}
  .thank-you-content p{font-size: 16px; margin: 20px 0 30px;}
}

@media only screen and (min-width : 768px) and (max-width: 820px)
{
  .navbar-brand img{height: 100px;}
  .hero{padding: 50px 0;}
  .hero-copy .eyebrow{font-size: 24px;}
  .hero-copy h1{font-size: 30px;}
  .hero-bullets li{font-size: 22px;}
  .form-img{margin-top: -65px;}
  .form-card{margin-top: 30px;}
  .form-img h3{font-size: 32px;}
  .form-card h2{font-size: 30px;}
  .progress{margin: 20px 0;}
  .landing-form label.questions{font-size: 22px;}
  .radio-button-check label{font-size: 22px;}
  .landing-form button{font-size: 22px;}
  .form-card p{font-size: 20px;}
  .form-satisfaction-img{margin: 20px 0 0;}
  .form-satisfaction-img img{height: auto;}
  .section-title{margin: 0;}
  .section-sub{margin: 20px 0; font-size: 22px;}
  .rebate-inner{gap: 20px;}
  .rebate-copy h2{font-size: 2em;}
  .rebate-copy p{font-size: 22px;}
  .btn-outline{font-size: 22px;}
  .why-card h4{font-size: 2em;}
  .why-card p{font-size: 22px;}
  .logo-item{margin-bottom: 20px;}
  .how-it-works h2{font-size: 2em;}
  .how-it-works p{font-size: 22px;}
  .how-it-works{min-height: auto;}
  .btn-cta{font-size: 22px;}
  .review-card p{font-size: 22px;}
  .reviewer{font-size: 22px;}
  .reviewer-sub{font-size: 20px;}
  .before-footer p{font-size: 22px;}
  footer p{font-size: 22px;}
}

@media only screen and (min-width : 1024px) and (max-width: 1050px)
{
  .hero-copy h1{font-size: 30px;}
  .review-badge img{height: 75px;}
  .logo-item{margin-bottom: 20px;}
  .section-sub{font-size: 22px;}
  .how-it-works h2{font-size: 26px;}
  .how-it-works p{font-size: 22px;}
  .how-it-works{min-height: auto;}
}