@import "/stylesheets/root.css";
@import "/stylesheets/privacy-policy.css";
@import "/stylesheets/modal-cookies.css"; 
@import "/stylesheets/modal-overlay.css"; 


.btb.disabled, .btn:disabled {
    background-color : rgba(248,213,80, 0.9) !important; 
}

body {
    font-family: 'Montserrat', 'Barlow Condensed', sans-serif;
}

.monitor-site{
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 24px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
}

@media (min-width: 576px) {
.solar-portfolio::before {
    position:relative;
    transform: rotate(-0.1turn);
    z-index:-1;
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:120px;
    margin-left: -280px;
    top: 120px;
    width: 280px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}
}

@media (min-width: 576px) {
    .solar-portfolio-black-vertical-bar {
        height: 120px;
        margin-left:16px;
        margin-right:16px;
        width: 1px;
        border: 1px solid rgba(34,40,49, 1);
        opacity: 1;
    }
}

.select-site-tag {
    display:block;
}


a {
    text-decoration:none;
}

a:hover {
    text-decoration:underline;
}

.form-group {
    margin-bottom: 1rem;
}

.btn:hover { background-color : rgba(248,213,80, 0.9);}

a.select-site-tag:hover {
    text-decoration: none;
}

.solar-portfolio-site {
    padding: 25px;
    margin: 12px auto;
    /*max-width:520px;*/
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.solar-portfolio-site:hover {
    box-shadow: 0px 2px 32px rgba(255, 236, 250, 1.0);
}


.solar-portfolio-image {
    border-radius: 8px;
    max-height: 160px;
    object-fit: cover;
}

.solar-portfolio-header {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: left;
}

.header-lg {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 20px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: left;
}

.blog-card {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
    padding:30px;
    margin: 20px auto;
    max-width: 900px;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.blog-card::before {
    position:relative;
    z-index:-1;
    transform: rotate(0.1turn);
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:-147px;
    top: 0px;
    width: 240px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}

.add-quote-button {
    padding:8px;
    margin-left:20px;
    width:fit-content;
    height:fit-content;
    border-radius: 4px;
    opacity: 1;
    background-color:rgba(238,238,238, 1);
    color: black;
}

.add-quote-button button {
    background-color: rgba(238,238,238, 0.4);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: center;
}

.add-quote-button a {
    color: black;
    cursor: initial;
}

.add-quote-button a:hover {
    text-decoration : none;
}

.add-site-button {
    padding:8px;
    margin-left:20px;
    width:fit-content;
    height:fit-content;
    border-radius: 4px;
    opacity: 1;
    background-color:rgba(238,238,238, 1);
    color: black;
}

.add-site-button button {
    background-color: rgba(238,238,238, 0.4);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    border: none;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: center;
}

.add-site-button a {
    color: rgba(34,40,49,1);
}

.add-site-button a:hover {
    text-decoration : none;
}

.rooftop-background {
    flex: 1;
    /*background-color: #1e3048;*/
    background-image:url("/rooftop_panel.png");
    /*background-image: linear-gradient(rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0.6)), url('solar-panels-background.jpg'); */
    background-size: cover;
    background-position: center;
    /*background-attachment: fixed;*/
}

.rooftop-tree {
    position: relative;
    height: 900px;
    top: -20px;
    background-image:url("/rooftop_panel.png");
    background-size:cover;
}

.rooftop-background-short {
    object-fit:cover;
    object-position:
    height: 242px;
    background-image:url("/rooftop_panel.png");
}

/* we will eliminate vega some day. but not yet. */
summary {
    display:none;
}

h1 {
    color : var(--grey-700);
}

a {
    color : var(--light-blue-vivid-700);
}

p {
    line-height: 1.8;
}

sup {
    top : -0.45em;
}

th {
    text-align: center;
}


#solar-project-options {
    list-style: url('/sun.svg');
}


#solar-project-options li {
    margin-top: 30px;
    margin-left: 4rem;
}

#solar-project-options a {
    font-size:1.5rem;
    font-weight:500;
}

#google-result {
    font-size:1.3rem;
    font-weight:600;
    margin-bottom:1.0rem;
}

/* Set the size of the div element that contains the map */
#map {
    margin-top: 4rem;
    height: 400px;
    width: 75%;
}

#mapid { height: 240px; }


.admin-panel {
  background: white;
  border-radius: 10px;
}
.admin-panel .input-normal{
  font-size: 1rem;
  border-radius: 0.25rem;
  display: inline-block;
  width: inherit;
}
.admin-panel .btn {
  /*margin-left: 2px;*/
  box-shadow: none;
}
.admin-panel-search .btn {
    margin-left: 2px;
}
.admin-panel .row {
  padding-top: 25px;
  padding-bottom: 25px;
}

.blog-list {
    max-width:720px;
}

#admin-mapid { height: 480px; width: 480px; }

#change-sitename .btn {
    font-size : 14px;
}

.geochoices form {
    margin-top:30px;
}

.alert {
    margin-top: 1rem;
}

/**/
.ft-yellow-200 {
    color : var(--yellow-vivid-200);
}

.ft-grey-900 {
    color : var(--grey-900);
}

.ft-grey-800 {
    color : var(--grey-800);
}

.ft-grey-700 {
    color : var(--grey-700);
}

.ft-grey-600 {
    color : var(--grey-600);
}

.ft-grey-500 {
    color : var(--grey-500);
}

.ft-grey-200 {
    color : var(--grey-200);
}

.ft-green-200{
    color:var(--teal-400);
}

.ft-green-400{
    color:var(--teal-400);
}

.ft-24 {
    font-size: 24px;
}

.ft-size-24 {
    font-size: 24px;
}

.ft-size-18 {
    font-size:18px;
}

.ft-size-20 {
    font-size:20px;
}

.ft-20 {
    font-size: 20px;
}

.ft-18 {
    font-size: 1rem;
}

.ft-16 {
    font-size: 16px;
}

/* font-weights */
.ft-wt-100 {
 font-weight: 100;
}

.ft-wt-200 {
 font-weight: 200;
}
.ft-wt-300 {
 font-weight: 300;
}

.ft-wt-400 {
 font-weight: 400;// normal
}

.ft-wt-500 {
 font-weight: 500;
}

.ft-wt-600 {
 font-weight: 600;
}

.ft-wt-700 {
 font-weight: 700;// bold
}

.ft-wt-800 {
 font-weight: 800;
}

.ft-wt-900 {
 font-weight: 900;
}

/* Widths (no units are relative otherwise they are fixed)*/

.mt-30 {
    margin-top:30px;
}

.mt-120 {
    margin-top:120px;
}


.mb-30 {
    margin-bottom:30px;
}

.ml-30 {
    margin-left:30px;
}

.mr-30 {
    margin-left:30px;
}

.mt-60 {
    margin-top:60px;
}

.mb-60 {
    margin-bottom:60px;
}

.ml-60 {
    margin-left:60px;
}

.mr-60 {
    margin-left:60px;
}


.pl-30 {
    padding-left:30px;
}

.pl-60 {
    padding-left:30px;
}

.w-40 {
    width: 40%:!important;
}

.w-60 {
    width: 60%:!important;
}

.w-80 {
    width: 80%:!important;
}

.w-160px {
    width: 160px;
}

.w-32 {
    width: 8rem;
}

.w-48 {
    width: 8rem;
}

.h-32 {
    height: 8rem;
}

.h-48 {
    height: 8rem;
}

.ml-4px{
    margin-left:4px;
}

.card-input-element+.card {
/*  height: calc(36px + 2*1rem);*/
  color: var(--grey-600);
  box-shadow: none;
  border: 2px solid transparent;
  border-radius: 4px;
}

.card-input-element+.card:hover {
  cursor: pointer;
}

.card-input-element:checked+.card {
  border: 2px solid var(--light-blue-vivid-600);
  -webkit-transition: border .3s;
  -o-transition: border .3s;
  transition: border .3s;
  -webkit-animation-name: fadeInCheckbox;
  animation-name: fadeInCheckbox;
}

#tmy-vis {
    margin : 0.5rem auto;
    max-width: 340px;
}

.vega-solar-chart {
    position: relative;
    left: 60px;
    width: 320px;
    height:260px;
}

.mw-450 {
    max-width:450px;
}

.chart-wrapper {
    margin : 0.5rem auto;
}

.address {
    margin-bottom:3rem;
}
.address span {
    display:block;
}

.rounded-full {
    border-radius: 5px;
}

.btn-primary {
    color : var(--yellow-vivid-300);
    font-size: 18px;
    background : linear-gradient( 86deg, hsl(200 82% 40% / 1) 3%, hsl(201 80% 45% / 1) 15%, hsl(197 82% 35% / 1) 100%) !important;
    font-weight: 500;
}


.form-check-input {
    /* margin-top: 0.6rem; */
    cursor: pointer;
}


.form-control:invalid {
    margin-right:16px;
    background-position: right calc(.375em + .13rem) center;
}


.form-control {
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.59px;
    text-align: left;
    max-width : 390px;
}

.eircode-form-control {
    /* max-width : 290px; */
    font-weight : 500;
    background-color: rgba(255,255,255,1);
    height: calc(1.5em + 1rem + 8px);
}

.eircode-form-control input::placeholder {
    margin-left: 8px;
}

#form-group-site_eircode input {
    border-radius: 8px;
    font-size: 24px;
    text-indent: 12px;
}

.btn-block {
    max-width : 300px;
}

.bg-grey-100 {
    background-color: var(--grey-100);
}

.bg-grey-200 {
    background-color: var(--grey-200);
}

td .js-delete {
    line-height : 1.0;
    font-size : 12px!important;
    color : var(--grey-400);
}

.rounded-xl {
    border-radius: 0.75rem;
}

.payback-text {
    display: flex;
    margin : auto 0;
    color: var(--grey-700);
    line-height:1.7;
}

.output-cost {
    padding : 0px 0px;
    margin : auto 0;
    color : var(--red-vivid-200);
}

.input-cost {
    padding : 0px 0px;
    margin : auto 0;
    color : var(--teal-600);
}

.bottom-line {
    color : var(--grey-600);
    font-weight : 600;
}

ul {
    margin : 2px;
    padding-inline-start: 0px;
}

.payback li {
  display: flex;
}

.payback .consideration {
  position: relative;
  padding: 0 14px;
  color: var(--grey-500);
}

.payback {
    margin: 2px; max-width: 450px;
}

.payback li {
    border: 2px var(--light-blue-vivid-800) solid;
    border-radius:30px;
    margin: 1rem 0rem;
}

.payback li > span {
  display: block;
  padding: 0 1.5em 1.5em 1.5em;
  position: relative;
}

.payback li > div::before {
   content: "";
   position: absolute;
   z-index: 1;
   left: 0;
   height: 100%;
   border-left: 0px var(--light-blue-vivid-400)  solid;
}

.payback li > div {
  display: block;
  padding: 0 1.5em 1.5em 1.5em;
  position: relative;
}

.site-and-status {
  display: inline-flex;
  align-items: center;
}

.money {
  display: inline-flex;
  align-items: center;
}

.variance {
    display : none;
    }

.quantity {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 2.4rem;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.79px;
    text-align: left;
    margin-left: 24px;
}

.solar-home-quantity {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 1.2rem;
    font-weight: 600;
    font-style: normal;
    line-height:1.7;
    letter-spacing: 1.79px;
    text-align: left;
}

.delete-site {
    position:relative;
    top: -24px;
    height: 24px;
}

.quantity p {
    margin-bottom:0px;
}

.form-check-label .quantity {
    font-size : 18px;
    margin-top : 1rem;
}

.form-check-label .unit {
    font-size : 14px;
    margin-top : 1rem;
}

.trees {
    position: relative;
    top : 2px;
}

.trees .quantity {
    font-size : 22px;
}


.trees .unit {
    font-size : 16px;
    padding-right: 4px;
}



.unit small {
    font-size:12px;
    position:relative;
    top:4px;
}

.unit {
        font-weight : 400;
        font-size : 18px;
}

.descriptor {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: left;
}

.primary .descriptor {
    margin-left: auto;
    width: fit-content;
}



.trees .descriptor {
    line-height : 1.7;
}


.load-table {
    max-width:600px;
}

.site-span {
    display: flex;
    align-items: center;
}

#solar-calculator {
    margin: 60px auto;
    max-width:1000px;
}

#solar-widgets {
    padding:30px;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
}

#form-group-site_includeBattery {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.91px;
    text-align: left;
}


/* .calculator-explanation-lg { */
/*     max-width: 540px !important; */
/* } */

.calculator-explanation {
    /* margin: 0 auto */
    /* max-width: 400px; */
    opacity: 0.8;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    /* font-size: 0.9rem; */
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.59px;
    text-align: left;
}

.calculator {
    max-width:600px;
    margin: auto auto;
}

.calculator-input-label {
    flex-grow:1;
}

.calculator-header {
    font-weight: 700;
    font-size: 16px;
}

.calculator .descriptor {
    font-size : 0.8rem;
}

.calculator .quantity {
    font-size : 18px;
}




.calculator .form-group {
    font-size: 16px;
    max-width: 220px;
    margin: 4px 4px;
}

#time-at-home {
    width: 240px;
}

#site_sitename {
    width:fit-content;
}

.calculator option {
    width:fit-content;
}

.calculator .form-check-label {
    font-size: 12px;
}

.calculator .unit {
    position:relative;
}

.calculator .form-text {
    width:140px;
}


#form-group-site_includeBattery .form-check {
    display: flex;
    flex-direction: column;
}

#form-group-site_includeBattery .form-check-input {
    margin-bottom:4px;
}


#site_powerRating {
    width:fit-content;
}

small-unit {
    font-size:8px;
}

small {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    line-height:1;
    font-size: 12px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.40px;
    text-align: left;
}

#batterySmallLabel {
    position: relative;
    left: 22%;
}

#form-group-site_loadFactor, #site_loadFactor {
    min-width:260px;
}

.secondary {
    /* margin-left: 18px;*/
}
.secondary .descriptor {
    font-size : 12px;
}


.secondary .unit {
        font-weight : 400;
        font-size : 14px;
}

/* Site Table Logic */
.badge-inactive {
    color: var(--grey-600);
    background-color: var(--yellow-vivid-300);
}

.badge-pill {
    width :fit-content;
    padding: 0.5rem 0.5rem;
    border-radius: 2rem;
}

.badge-primary {
    background-color : var(--light-blue-vivid-700);
}

th {
    color: var(--grey-800);
    font-weight: 500;
}

td a {
    color : var(--light-blue-vivid-700);
    font-weight : 500;
    font-size: 16px;
}

.eircode {
    position : relative;
    top : -8px;
    margin : 2px;
    padding : 2px;
    line-height : 0.5;
    color : var(--grey-500);
    font-weight : 500;
    font-size : 14px;
}

.site-photo {
    margin : 0 auto;
    width : fit-content;
}

.site-photo-tag {
    color : var(--grey-500);
    font-weight : 500;
    font-size : 0.8rem;
    width : fit-content;
}

.site-photo-tag span {
    display : block;
}


.airpv-user-landing p {
    margin-top: 1rem;
    font-size: 1.5rem;
    padding-left: 1.4rem;
    padding-right: 0.7rem;
    color: var(--grey-600);
    padding-left: 1rem;
}

.airpv-user-landing span{
    color: var(--grey-700);
    font-weight: 600;
}

.airpv-press {
    padding-top: 24px;
    font-size: 1.2rem;
    font-weight: 400;
    line-height: 1.7;
}

.airpv-press p {
    font-size:1.5rem;
}

@media (min-width: 576px) {
 .black-vertical-bar {
    margin-left:42px;
    margin-right:42px;
    width: 1px;
    border: 1px solid rgba(34,40,49, 1);
    opacity: 1;
 }
}

.subscript {
    font-size:12px;
}

.vega-card-sm {
    max-width:1000px;
}

.vega-card {
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    padding: 12px;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.description {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: left;
    line-height:1.2;
    margin-bottom:0px;
}

.quantity {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.79px;
    line-height:1.5;
    text-align: left;
    margin-top:0px;
    margin-bottom:2px;
}


.secondary .description {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 14px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: left;
    line-height:1.2;
    margin-bottom:0px;
}


.secondary .quantity {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 18px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.79px;
    line-height:1.3;
    text-align: left;
    margin-top:0px;
}

@media (min-width: 576px) {
.headline-payback {
    margin-top: 60px;
}
}

.detailed-header-card {
    max-width:1000px;
    margin-left: auto;
    margin-right: auto;
    padding:10px;
}

.calc-form-card {
    max-width:1000px;
    margin: 30px auto;
    padding:30px;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.jump-to-calc-btn {
    width:fit-content;
    margin : 0px auto;
}

.airpv-card {
    position: relative;
    max-width:1000px;
    padding:20px;
    margin-top: 10px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.airpv-card-sitename {
    text-align: center;
    font-family: "Barlow Condensed";
    font-size:24px;
    font-weight: 700;
}

.airpv-card-eircode {
    text-align: center;
    font-size:17px;
    font-family: "Barlow Condensed";
    font-weight: 600;
}

.airpv-card-latlong {
    text-align: center;
    font-size:17px;
    font-family: "Barlow Condensed";
    font-weight: 600;
}

.airpv-card figure {
    margin-top: 24px;
    margin-bottom: 12px;
    margin-right: 12px;
}

@media (min-width: 576px) {
    .airpv-card figure {
        margin-left: 54px;
        margin-top: 54px;
        margin-bottom: 54px;
        margin-right: 50px;
    }
}

@media (min-width: 576px){
.airpv-card::before {
    position:absolute;
    transform: rotate(-0.1turn);
    z-index:-1;
    display:inline-block;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:140px;
    margin-left: -280px;
    top: 300px;
    width: 280px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}

    .airpv-card::after {
        position:absolute;
        opacity: 1;
        z-index:-1;
        display:inline-block;
        content: "";
        transform:rotate(0.42turn);
        left:90%;
        top: 0%;
        width: 280px;
        height: 215px;
        border-radius:90px;
        background: linear-gradient(90deg, rgba(0, 144, 248, 1) 0%, rgba(0, 173, 181, 1) 100%);
    }
}



.issue-card {
    position: relative;
    padding:30px;
    max-width:900px;
    margin-top: 50px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.issue-card::after {
        position:relative;
        opacity: 1;
        z-index:-1;
        display:inline-block;
        transform:rotate(0.42turn);
        left:90%;
        width: 280px;
        height: 215px;
        border-radius:90px;
        background: linear-gradient(90deg, rgba(0, 144, 248, 1) 0%, rgba(0, 173, 181, 1) 100%);
    }

.issue-card::before {
    position:relative;
    transform: rotate(-0.1turn);
    z-index:-1;
    display:inline-block;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:140px;
    margin-left: -280px;
    top: 200px;
    width: 280px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}

.issue-card {
    font-size:24px;
}

.issue-card-form {
    width: fit-content;
    margin : auto auto;
}

.issue-card-form textarea {
    width : 380px;
    height : 200px;

}


.userlanding-header {
    font-size : 1.2rem;
    font-weight : 700;
}

.green-border {
    padding-left: 1rem;
    border: 2px solid var(--teal-700);
    border-radius: 30px;
}

.green-border-left{
    padding-left: 1rem;
    border-left: 2px solid var(--teal-700);
}

.long-address {
    max-width : 450px;
}

.long-address form * {
    margin-right : auto;
    margin-left : auto;
}

.untender-button {
    font-size: 12px;
    color: var(--red-vivid-400);
    border : none;
    background-color: white;
}

.long-address form > button {
    width : 5rem;
    margin-left : auto;
    margin-right : auto;
}

.long-address .form-control {
    width : 100%;
    max-width : 300px;
}

.teal-border-left{
    padding-left: 1rem;
    border-left: 2px solid var(--teal-600);
}

.yellow-border-left{
    padding-left: 1rem;
    border-left: 2px solid var(--yellow-vivid-300);
}

.orange-border-left{
    padding-left: 1rem;
    border-left: 2px solid var(--yellow-vivid-600);
}


.blue-border{
    border: 2px solid var(--light-blue-vivid-700);
    border-radius : 30px;
}

.blue-border-left{
    padding-left: 1rem;
    border-left: 2px solid var(--light-blue-vivid-700);
}


.yellow-border-bottom{
    border-bottom: 2px solid var(--yellow-vivid-200);
}


.orange-border-right{
    border-right: 2px solid var(--yellow-vivid-600);
}

/* linear-gradient(0.25turn, var(--yellow-vivid-200), var(--light-blue-vivid-200));*/
.framed-border{
    border-top: 8px solid var(--yellow-vivid-300);
    border-left: 8px solid var(--yellow-vivid-300);
    border-right: 8px solid var(--light-blue-vivid-700);
    border-bottom: 8px solid var(--teal-400);
    border-radius: 30px;
}

.airpv-signup p {
    margin-top: 8px;
    padding-left: 3.0rem!important;
}

.navbar-landing {
    background: none;
}


.navbar-nav {
    margin-left:auto;
    /* margin-right:200px; */
}


.navbar-brand {
opacity: 1;
color: rgba(238,238,238,1);
font-family: "Barlow Condensed";
font-size: 40px;
font-weight: 700;
font-style: normal;
letter-spacing: 1.3px;
text-align: center;
}

.navbar-plain-light {
    opacity: 1;
    color: rgba(255,255,255,1);
    font-family: "Barlow Condensed";
    font-size: 40px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.3px;
    text-align: center;
}

.navbar-plain {
    opacity: 1;
    color: rgba(0,0,0,1);
    font-family: "Barlow Condensed";
    font-size: 40px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.3px;
    text-align: center;
}

.nav-link {
    margin-right : 0.5rem;
    font-weight : 500;
    font-size : 1.5rem;
    color : var(--yellow-vivid-300);
}

.nav-link{
    margin-left:16px;
    margin-right:16px;
}

.nav-item > .nav-link {
    border-radius: 0px;
    margin-top: 2px;
    padding : 3px;
    border-radius:5px;
}

.site-header {
    margin: 30px 0;
}

.site-eircode {
    font-size:14px;
    margin-top:0px;
    position:relative;
    top:-10px;
}

.dropdown-item {
  background : rgba(255,255,255, 1);
  color : black;
  font-family: "Montserrat";
  font-weight: 400;
  font-size: 24px;
  border-radius: 30px;
  padding-top : 1px;
  padding-bottom: 1px;
  margin-top: 4px;
}

.footer-border{
    border-top: 24px solid var(--teal-600);
}

.foot-notes {
    font-size:0.8rem;
    color:var(--grey-400);
}

/* Community Forum Style */
.new-thread-button{
    display: flex;
    flex-direction: row-reverse;
    margin-bottom: 1rem;
}

.threads {
    display: flex;
    justify-content: center;
    margin-bottom: 1rem;
}

.thread-card {

    border: solid;
    border-color: #f3b604;
    width: 18rem;
    padding: 1rem;
    margin-right: 2px;
}

.thread-title{
    font-size: 1.5rem;
    color: #073642;
    margin-bottom: 0.5rem;
    display: block;
    font-weight: 600;
    line-height: 1;
}

.thread-body {
    color: hsla(192, 81%, 14%, 85%);
    display: block;
    margin-bottom: 0.5rem;
}

.thread-content {
    background-color: #fff;
    box-shadow: 0 1px 2px 0 rgb(7 54 66 / 0.2);
    border-radius: 8px;
    padding: 1rem;
    padding-bottom: 0;
}

.topic .topic-description {
    color: hsla(192, 81%, 14%, 85%);
    display: block;
}

.thread .thread-created-at, .comment .comment-meta, .comment .comment-meta a {
    font-size: 0.8rem;
    color: #839496;
}

.about-col{
    padding-right: 4px;
}

.about-card {
    margin: 60px 0px;
}

.about-card h1 {
    font-size : 1.6rem;
    margin: 30px 18px;
    color: var(--grey-600);
}

.about-card p {
    margin: 30px 0;
}



#motivation_body {
    height:200px;
}

.site-motivation {
    max-width:600px;
    padding:20px;
    margin: 0 auto;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}


.site-motivation .form-check-label {
    border-radius: 5px;
    padding: 8px;
    margin-left: 24px;
    width: 320px;
    margin-bottom: 12px;
    opacity: 1;
    background-color: rgba(221,221,221, 1);
    opacity: 0.99242;
    color: rgba(21,103,153,1);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
}

.site-motivation  input:checked ~ .form-check-label {
    border-radius: 5px;
    padding: 8px;
    margin-bottom: 12px;
    width: 320px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    opacity: 0.99242;
    color: rgba(21,103,153,1);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
}

.site-motivation textarea{
    display : none;
    border-radius: 7px;
    border: 2px solid rgba(34,40,49, 0.698782);
    opacity: 1;
}

.site-motivation input:checked ~ .form-group textarea {
    display : inline-block;
}

.checkmark {
    display: inline-block;
    margin-right:16px;
    height: 25px;
    width: 24px;
    border: 4px solid rgba(21,103,153,1);
    border-radius: 4px;
    background-color:  rgba(221,221,221, 1);
}

/* When the radio button is checked, add a blue background */
.site-motivation input:checked ~ label .checkmark {
  background-color:  rgba(21,103,153,1);
}


#motivation_goal {
    display: none;
}


/* Hide the browser's default radio button */
.site-motivation input {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.site-motivation label {
    display:flex;
/*    justify-content:center; */
    align-items:center;
}

.form-check input[type="radio"]:checked .form-check-label {
    border-radius: 5px;
    padding: 8px;
    margin-bottom: 12px;
    width: 320px;
    opacity: 1;
    opacity: 0.99242;
    background-color: rgba(248,213,80, 1);
    color: rgba(21,103,153,1);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
}

.goal-inputs {
    display: flex;
    flex-direction: column;
    margin: 0 auto;
    max-width: 420px;
}

.goal-extra-info {
    display: none;
}


.motivation-text {
    opacity: 1;
    margin-bottom: 24px;
    margin-top: 36px;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 21px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 0.68px;
    text-align: center;
    line-height: 1.2;
    opacity: 1;
}

.motivation-text-muted {
    margin: 0 auto;
    max-width: 440px;
    opacity: 0.8;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 0.8rem;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.59px;
    text-align: left;
}

.container-fluid {
    padding-right:0px;
    padding-left:0px;
}

.signup-pitch {
    margin: 0 auto;
    padding-left:8px;
    padding-right:8px;
    max-width:1200px;
}

@media (max-width: 768px) {
    .signup-pitch {
        padding-left: 16px;
        padding-right: 16px;
    }
}

@media (min-width: 576px) {
    .signup-pitch {
        margin-top: 200px;
     }
    }

.airpv-splash-text {
    opacity: 1;
    color: var(--airpv-yellow);
    font-family: "Barlow Condensed";
    font-size: 2.8rem;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 2.02px;
    text-align: center;
}


.headline {
    width: 100%;
    max-width: 720px;
    margin: 30px auto 10px;
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 2.8rem;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 2.02px;
    text-align: center;
    text-shadow: 2px 2px 4px rgba(0, 0, 0, 0.5);
}

.subheadline {
    width: 100%;
    max-width: 720px;
    margin: 10px auto 30px;
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 1.8rem;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 1.5px;
    text-align: center;
}

@media (max-width: 768px) {
    .headline {
        font-size: 2.2rem;
        letter-spacing: 1.5px;
        margin: 20px auto 5px;
    }

    .subheadline {
        font-size: 1.6rem;
        letter-spacing: 1.2px;
        margin: 10px auto 10px;
    }
    
    .airpv-splash-text {
        font-size: 2.2rem;
        letter-spacing: 1.5px;
    }
}

@media (max-width: 480px) {
    .headline {
        font-size: 2rem;
        letter-spacing: 1px;
    }

    .subheadline {
        font-size: 1.4rem;
        letter-spacing: 0.8px;
    }
    
    .airpv-splash-text {
        font-size: 1.8rem;
        letter-spacing: 1px;
    }
}

/* Landing Features */
.feature-header {
    max-width: 550px;
    opacity: 1;
    color: rgba(248,213,80,1);
    font-family: "Barlow Condensed";
    font-size: 45px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.46px;
    text-align: center;
}

.feature-cards {
    max-width: 1600px;
    margin: auto auto;
}

.feature-card {
    width: 305px;
    margin-top: 0px;
    margin-right:20px;
    margin-bottom: 0px;
    margin-left:0px;
    padding: 12px;
    border-radius: 8px;
    opacity: 1;
    background-color: rgba(238,238,238, 1);
}


.activity-icons {
    font-size:12px;
    margin-left: 4px;
}

.feature-icon {
    width: fit-content;
    margin-bottom:4px;
    padding:24px;
    border-radius:50%;
    opacity: 1;
    background-color: rgba(21,103,153, 0.144613);
}


.feature-title {
    opacity: 1;
    width:fit-content;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.78px;
    text-align: left;
}

.feature-text {
    width: 250px;
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0px;
    text-align: center;
}

.register-box-calculator {
    position: relative;
    width : 95%;
    max-width: 1000px;
    margin: 20px auto;
    padding: 20px;
    border-radius: 9px;
    opacity: 1;
    background-color: rgba(21,103,153, 1);
}

@media (min-width: 576px){
.register-box-calculator::before {
    position:absolute;
    opacity: 1;
    transform: rotate(0.1turn);
    z-index:-1;
    display:inline-block;
    content: "";
    left:110%;
    top: 110%;
    margin:-280px;
    width: 280px;
    height: 215px;
    margin-bottom:-180px;
    border-radius:100px;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}
}


.signup-user-text {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Montserrat";
    font-size: 16px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.52px;
    text-align: left;
}

.airpv-footer-bg {
    opacity: 1;
    background-color: rgba(11,13,16, 1);
}

.register-box {
    max-width : 1200px;
    margin: 90px auto;
    padding: 18px;
    z-index: 1;
    border-radius: 8px;
    opacity: 1;
    background-color: rgba(21,103,153, 1);
}


@media (min-width: 576px) {
        .register-box {
            width : 100%;
            padding: 25px;
            border-radius: 9px;
            opacity: 1;
            background-color: rgba(21,103,153, 1);
        }

        .register-box::after {
            position: absolute;
            z-index:-1;
            display:inline-block;
            transform: rotate(-0.1turn);
            overflow:hidden;
            margin-left:-147px;
            left:100%;
            top:-107px;
            overflow:hidden;
            content:"";
            border-radius: 100px;
            width: 240px;
            height: 215px;
            opacity: 1;
            background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
        }
}


.airpv-blog-summary-list ul {
    margin-left: 30px;
}

.airpv-blog-summary-list li {
    margin-left: 30px;
    margin-bottom: 16px;
    max-width:60ch;
}

.blog-card p {
    max-width: 70ch;
    line-height: 1.7;
    font-size: 24px;
}

.blog-card ul {
    max-width: 70ch;
    line-height: 1.7;
    font-size: 28px;
    margin-bottom: 16px;
}


.blog-card li {
    margin-left:16px;
    margin-top:8px;
}

.blog-card #summary {
    font-size:32px;
    font-weight:700;
}

a.blog-item {
    padding:8px;
    color: rgb(0,0,0,1.0);

}

a.blog-item:hover {
    text-decoration:none;
    cursor: pointer;
    border-radius: 7px;
    box-shadow: 8px 8px 20px  rgba(248,213,80, 1);
}


.airpv-faq-card {
    position: relative;
}

@media (min-width: 576px) {
    .airpv-faq-toc {
        margin-right: 60px;
        margin-top: 48px;
    }
}

.airpv-faq-content {
    margin-left:16px;
}

.airpv-faq-card h2 {
    font-size:32px;
    margin-top:16px;
}

.airpv-faq-card p {
    max-width: 70ch;
    line-height: 1.7;
    font-size: 24px;
}

@media (min-width: 576px) {
    .airpv-faq-card p {
        padding-right:60px;
    }
}

.airpv-faq-card ul {
    font-size: 18px;
    list-style: none;
}

.airpv-faq-card ol {
    font-size: 24px;
    margin-top: 12px;
    margin-bottom: 12px;
    max-width: 800px;
}

.airpv-faq-card pre {
    font-size: 24px;
    margin-top: 12px;
    margin-left: 12px;
    margin-bottom: 12px;
    padding: 10px;
}

@media (min-width: 576px) {
.airpv-faq-card::before {
    position:relative;
    z-index:-1;
    transform: rotate(0.1turn);
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:80%;
    top: 0px;
    width: 240px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}
}


.airpv-story-card {
    margin: 30px auto;
    max-width: 900px;
}

.airpv-story-card h2 {
    font-size:32px;
    margin-top:16px;
}

.airpv-story-card p {
    max-width: 75ch;
    font-size: 24px;
    line-height: 1.7;
    margin-bottom:18px;
    margin-top:18px;
}

.airpv-story-card ul {
    margin-left: 24px;
    font-size:24px;
}

.airpv-story-card li {
    margin-bottom: 12px;
}


.register-box::before {
    position:relative;
    z-index:-1;
    transform: rotate(0.1turn);
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:-147px;
    top: -180px;
    width: 240px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}

.register-content {
    max-width: 1200px;
    margin : 0 auto;
    }

.register-card {
    max-width:530px;
    margin-top:60px;
    margin-bottom:30px;
}

.register-h1{
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 48px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.56px;
    text-align: left;
}

.register-h2 {
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 36px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}

.user-new-site-card {
    position: relative;
    max-width:450px;
    padding: 60px;
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}


.user-new-site-card input::placeholder {
    text-indent:8px;
    font-size:18px;
    text-align:left;
}


.register-account-card input::placeholder {
    font-size:18px;
    text-align:left;
}

.login-form-card input::placeholder {
    font-size:18px;
    text-align:left;
}


.register-account-card {
    position: relative;
    max-width:450px;
    padding: 60px;
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.register-account-card::before {
    position:relative;
    z-index:-1;
    transform: rotate(0.1turn);
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:-147px;
    top: 0px;
    width: 240px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}


.account-signup-header {
    opacity: 1;
    color: rgba(238,238,238,1);
    /* font-family: "Barlow Condensed"; */
    /* font-size: 20px; */
    font-weight: 900;
    font-style: bolder;
    letter-spacing: 1.17px;
    line-height:1.2;
    text-align: left;
}

.account-signup-text {
    opacity: 1;
    color: rgba(238,238,238,1);
    /* font-family: "Barlow Condensed"; */
    font-size: 19px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 1.17px;
    line-height:1.2;
    text-align: left;
}

.account-signup-bar {
    display:block;
    margin-bottom:10px;
    width:147px;
    height:11px;
    border-radius: 4px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}


.installer-bg {
    background-color: #48b9fa !important;
}

.register-text {
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Montserrat";
    font-size: 22px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0px;
    text-align: left;
}

.horizontal-yellow-dash {
    width  : 170px;
    height :  11px;
    border-radius: 4px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}

.yellow-dash {
    border-radius: 1px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}

.eircode-form {
    width:377px;
    margin-bottom: 30px;
}

@media (max-width: 768px) {
    .eircode-form {
        width: 100%; /* Full width on mobile */
        max-width: 377px; /* Max width same as desktop */
        margin: 0 auto 20px; /* Center and reduce bottom margin */
    }
}

.solar-quotes {
    position:relative;
    height: 220px;
    max-width: 1200px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:30px;
    padding:24px;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    background-color: rgba(21,103,153, 1);
    opacity: 1;
}

.solar-quotes p {
    color: rgba(238,238,238,1);
}

.solar-quotes-header {
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 36px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}

.solar-home-header {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 36px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}

.coming-soon {
    margin : 30px auto;
    width: fit-content;
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 36px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 1.63px;
    text-align: left;
}

.results-header {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 36px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}

.results-header-sm {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 30px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}

.login-card-header {
    opacity: 1;
    color: rgba(34,40,49,1);
    font-family: "Barlow Condensed";
    font-size: 32px;
    font-weight: 600;
    font-style: normal;
    letter-spacing: 1.17px;
    text-align: left;
}



.solar-home-header-card {
    max-width:1200px;
    margin-left: auto;
    margin-right: auto;
}


.solar-home-card {
    max-width:1000px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:30px;
}

.learn-solar {
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:30px;
}

.learn-solar-card {
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:30px;
    padding : 24px;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
}

.learn-solar-card::before {
        opacity: 1;
        position:relative;
        transform: rotate(0.9turn);
        z-index:-1;
        display:inline-block;
        content: "";
        left:140px;
        top: 180px;
        margin:-300px;
        width: 280px;
        height: 215px;
        border-radius:100px;
        background: linear-gradient(90deg, rgba(0, 144, 248, 1) 0%, rgba(0, 173, 181, 1) 100%);
}


.solar-home-sites {
    max-width:1200px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom:30px;
    padding:24px;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}


.solar-learning-content-card {
    position:relative;
    padding:20px;
    margin-right:24px;
    margin-top: 12px;
    min-width: 330px;
    max-width: 420px;
    height: 260px;
    border-radius: 7px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.solar-learning-content-card:hover {
    cursor: pointer;
    border-radius: 7px;
    box-shadow: 0px 0px 20px  rgba(248,213,80, 1);
}

.solar-learning-content-image {
    position: absolute;
    filter: brightness(27%);
}

.solar-learning-text {
    opacity: 1;
    color: black;
    font-family: "Montserrat";
    font-size: 24px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.78px;
    text-align: left;
}

.solar-learning-header {
    position: absolute;
    margin-left: 8px;
    margin-top: 50px;
    opacity: 1;
    color: rgba(238,238,238,1);
    font-family: "Barlow Condensed";
    font-size: 28px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.91px;
    text-align: left;
}

.solar-login-card {
    font-family: Montserrat;
    position: relative;
    max-width:450px;
    padding: 60px;
    margin-top: 2px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}

.solar-login-card::before {
    position:relative;
    z-index:-1;
    transform: rotate(0.1turn);
    display:flex;
    margin-bottom:-180px;
    overflow: hidden;
    content: "";
    left:-147px;
    top: 0px;
    width: 240px;
    height: 215px;
    border-radius:100px;
    opacity: 1;
    background: linear-gradient(180deg, rgba(252, 236, 136, 1) 0%, rgba(248, 213, 80, 1) 100%);
}

login-form-card {
    max-width:440px;
    margin: 0 auto;
}

.text-subtle {
    opacity: 0.7;
    color: rgba(255,255,255,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.59px;
    text-align: left;
}

.text-subtle:hover {
    font-weight:600;
    color: rgba(255,255,255,1);
    font-family: "Montserrat";
    font-size: 18px;
}

.airpv-nav-link {
    opacity: 0.99242;
    color: rgba(238,238,238,1);
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: center;
    transition: all 0.3s ease;
    margin-left: 10px;
}

.airpv-nav-link:hover {
  transform: translateY(-4px);
}


.airpv-nav-link-yellow {
    opacity: 0.99242;
    color: var(--airpv-yellow);
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: 700;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: center;
}

.airpv-nav-link-dark {
    opacity: 0.99242;
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-size: 20px;
    font-weight: 500;
    font-style: normal;
    letter-spacing: 0.65px;
    text-align: center;
}

.airpv-dropdown-menu {
    border: 2px solid rgba(0,0,0,1);
    border-radius: 20px;
}

.airpv-dropdown-menu-item {
    text-decoration: none !important;
}


.btn-xl {
    padding: 0.50rem 1.25rem;  /* Slightly larger padding than btn-lg */
    font-size: 1.35rem;       /* Same as btn-lg */
    line-height: 1.5;         /* Same as btn-lg for consistent text spacing */
    border-radius: 0.5rem;    /* Slightly larger than btn-lg's 0.3rem */
    font-weight: 500;         /* Medium font weight for better visibility */
}


.airpv-landing-btn {
    padding-right:30px;
    padding-left:30px;
    border-radius: 5px;
    box-shadow: 0px 1px 12px rgba(0,173,181, 0.317035);
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-size: 19px;
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: left;
}

@media (max-width: 768px) {
    .airpv-landing-btn {
        font-size: 18px;  /* Adjust if needed */
        padding: 12px 20px;
        line-height: 1.2;
        white-space: normal;  /* Allows text to wrap naturally */
        text-align: center;
    }
}

.airpv-btn-sm {
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;

}

.airpv-btn {
    padding-right:30px;
    padding-left:30px;
    border-radius: 5px;
    box-shadow: 0px 1px 12px rgba(0,173,181, 0.317035);
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;
}

.airpv-btn-danger {
    padding-right:30px;
    padding-left:30px;
    border-radius: 5px;
    box-shadow: 0px 1px 12px rgba(0,173,181, 0.317035);
    opacity: 1;
    background-color: #dc3444;
    color: rgb(255, 255, 255);
    font-family: "montserrat";
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;
    margin-bottom: 8px;
}

.airpv-calculate-btn {
    margin: 12px auto;
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 210px;
    padding-right:30px;
    padding-left:30px;
    border-radius: 5px;
    box-shadow: 0px 1px 12px rgba(0,173,181, 0.317035);
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;
}

.airpv-calculate-btn .visible {
    display: block;
}

.airpv-reset-btn {
    padding-right:12px;
    padding-left:12px;
    border-radius: 5px;
    box-shadow: 0px 1px 12px rgba(0,173,181, 0.317035);
    opacity: 1;
    background-color: rgba(251,251,251, 1);
    color: rgba(0, 144, 248, 1);
    font-family: "Montserrat";
    font-size: 12px;
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;
    margin-bottom: 8px;
}

.pitch-text {
    max-width: 460px;
    color: rgba(238,238,238,1);
    font-family: "Montserrat";
    font-size: 21px;
    letter-spacing: 0.68px;
    text-align: left;
    height: auto; /* Remove fixed height to allow text wrapping */
}

@media (max-width: 768px) {
    .pitch-text {
        font-size: 18px; /* Slightly smaller on mobile */
        letter-spacing: 0.5px;
        padding: 0 15px; /* Add some padding on mobile */
    }
}

.pitch-text::before {
    position: absolute;
    display: inline-block;
    overflow: hidden;
    top: 40%;
    left: -30px;
    content: "";
    width: 8px;
    height: 120px;
    margin-top: -45px;
    border-radius: 4px;
    background-color: rgba(248,213,80, 1);
}

@media (max-width: 768px) {
    .pitch-text::before {
        display: none; /* Hide the bar on mobile */
    }
}

a.navbar-plain:hover {
    text-decoration: none;
}

a.navbar-plain-light:hover {
    color: rgba(248,213,80, 1);
    text-decoration:none;
}

.pitch-card {
    position: relative;
    max-width: 440px;
}

@media (max-width: 768px) {
    .pitch-card {
        width: 100%;
        padding: 0 15px;
    }
}

.co2-line {
    width:fit-content;
    margin-bottom:18px;
}


select {
    font-size:16px;
}

input::placeholder {
    font-size:18px;
}

.yellow-bar {
    position: relative;
    top: 20%;
    left:-5%;
    width:24px;
    height:96px;
    border-radius: 4px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}


.pitch-card-before {
    display: inline-block;
    width:8px;
    height:72px;
    border-radius: 4px;
    opacity: 1;
    background-color: rgba(248,213,80, 1);
}


#business-pitch {
    font-size: 1.8rem;
    font-weight: 400;
    margin: 30px 18px;
    line-height: 1.7;
    text-align : left;
}

.airpv-features p {
    font-size:1.6rem;
    line-height: 1.6;
    color: var(--grey-600);
    font-weight: 400;
    padding-top: 0.4rem;
    padding-bottom: 0.2rem;
}

.airpv-features span{
    font-size:1.2rem;
    color : var(--light-blue-vivid-800);
    font-weight: 600;
}

.airpv-features div {
    margin-top: 2rem;
}

.about-features {
    padding-bottom: 1rem;
    padding-top: 1rem;
    background: linear-gradient( 86deg, hsl(200 82% 40% / 1) 3%, hsl(201 80% 45% / 1) 15%, hsl(197 82% 35% / 1) 100%) !important;
}

.airpv-features h1 {
    font-size:20px;
/*    color: var(--yellow-vivid-300);*/
}

.about-features p {
    font-size:1.4rem;
    line-height: 1.6;
    color: var(--yellow-vivid-300);
    font-weight:500;
    padding-top: 0.4rem;
    padding-bottom: 0.2rem;
}



.airpv-features a {
    font-size:1.2rem;
    font-weight: 600;
}

.about-row{
    display: flex;
    padding-left: 4px;
    flex-direction: row;
    justify-content: center;
    flex-wrap: wrap;
    padding-right: 16px;
    padding-left: 16px;
}

th {
    text-align:left;
}
.services th{
    font-weight: normal;
    text-align: left;
}

.para-landing {
        font-weight:normal;
        text-align:center;
}

.privacy-policy h2 {
    font-size:1.4rem;
    color: var(--grey-700);
    font-weight:600;
}

.privacy-policy p {
    font-size:1.2rem;
    color: var(--grey-600);
    line-height: 1.8;
}

.privacy-policy strong {
    font-weight:800;
}


/*Messaging Styling*/
.correspondence {
    display: flex;
    flex-direction: row;
    justify-content: center;
    border: solid #f3b604;
    clear: both;
    overflow: scroll-y;
}

.inbox {
    background: #f8f8f8 none repeat scroll 0 0;
    width: 40%;
    float: left;
    overflow: hidden;
    border-right: 1px solid #c4c4c4;
    height: 550px;
}

.inbox-contents {
    overflow-y: scroll;
}

.inbox-search{
    padding: 10px 30px 10px 20px;
    overflow: hidden;
    border-bottom:1px solid #c4c4c4;
}

.inbox-message {
  border: 1px solid #c4c4c4;
  clear: both;
  overflow: hidden;
}

.contacts-header {
    float: left;
    width: 40%;
}

.contacts-header h6 {
    color: #05728f;
    font-size: 21px;
    margin: auto;
}

.search-bar {
    display: inline-block;
    text-align: right;
    width: 60%;
    }


.active-message-line {
   background:#ebebeb;
}

.inbox-line {
    overflow: hidden;
    clear: both;
    border-bottom: 1px solid #c4c4c4;
    margin: 0;
    padding: 18px 16px 10px;
}

.inbox-line:hover {
    background:#ebebeb;
    }

.active-inbox-line { background:#ebebeb;}

.chat-container {
    display: flex;
    flex-direction: column;
    height: 100%;
    padding-bottom: 10px;
}

.messages {
    flex-grow: 1;
    overflow-y: auto;
    padding-top: 20px;
    height: 250px;
}

.compose-message {
    display: flex;
    align-items: center; /* Vertically centers the children */
    justify-content: space-between; /* Adjust this as needed */
    border-top: 1px solid #c4c4c4;
    padding: 10px;
    background: #fff;
    display: flex;
    align-items: center;
    bottom: 0;
    left: 0;
    height: 40%;
    width: 100%;
    box-sizing: border-box;
}

.compose-message form {
    display: flex;
    width: 100%;
    align-items: center;
}

.compose-message textarea {
    display: flex;
    flex-grow: 1;
    border: none;
    padding: 10px;
    border-radius: 20px;
    margin-right: 10px;
    font-size: 15px;
    box-shadow: 0px 2px 5px 0px rgba(0,0,0,0.1);
    resize: none;
}

.compose-message .send-message-button {
    background-color: white; /* Set the background to white */
    border: none;
    border-radius: 50%;
    align-items: center;
    justify-content: center;
    display: flex;
    width: 40px; /* Set a fixed width */
    height: 40px; /* Set a fixed height to make it a circle */
    padding: 0;
    cursor: pointer;
    box-shadow: 0 2px 4px rgba(0,0,0,0.2); /* Optional: adds a slight shadow for depth */
    outline: none; /* Remove outline to avoid blue border on focus */
}

.compose-message .send-message-button img {
    width: 24px; /* Ensure the icon is not stretched */
    height: auto; /* Maintain aspect ratio */
}

/* Fix for the scroll when keyboard is visible on mobile devices */
@media (max-width: 768px) {
    .compose-message {
        position: static; /* Normal flow of the document */
    }
}
.outgoing-message{
    overflow: hidden;
    margin: 5px 0 5px;
}

.sent-message {
  float: right;
  width: 70%;
}

.sent-message p {
  border-radius: 3px;
  background: #78e08f none repeat scroll 0 0;
  color: black;
  font-size: 16px;
  line-height:1.2;
  margin: 0;
  padding: 5px 10px 5px 10px;
  width:100%;
}

.incoming-message {
  overflow: hidden;
  margin: 5px 0 5px;
  vertical-align: top;
  display: inline-block;
  width: 70%;
}

.received-message p {
  background:  #82ccdd none repeat scroll 0 0;
  border-radius: 3px;
  color: black;
  line-height:1.2;
  font-size: 16px;
  margin: 0;
  padding: 5px 10px 5px 10px;
  width: 100%;
}

/*ShowDetailedSite Styling */

select[name="geoCoords"] option:first-child {
    background: blue;
}

.site-signup{
     margin-bottom: 2rem;
     border: solid;
     border-color: #f3b604;
}

h1 span {
    font-weight:400;
    font-size:14px;
    margin-left:4px;
    color: var(--gray-600);
}

.site-info {
    max-width: 1000px;
    margin: 0 auto;
    background-color:hsl(201, 0%, 100%);
}

.site-info h1 {
    font-weight:600;
    font-size:32px;
}

.site-info h2 {
    font-weight:500;
    font-size:16px;
}

/*.site-info p {
    font-size:1.2rem;
}*/


.site-signup-form {
    display: flex;
    flex-direction: column;
    align-items: center;
    padding: 4px;
    max-width: 500px;
    margin: 0 auto;
}

.site-signup-form input {
    width: 100%;
    padding: 12px;
}

.site-signup-form input::placeholder {
    font-size: 18px;
}

.site-signup-form .btn {
    min-width: 275px;
}

.user-edit-card {
    font-family: "Montserrat";
    position: relative;
    max-width:1000px;
    margin-top: 50px;
    margin-bottom: 2px;
    margin-left: auto;
    margin-right: auto;
    border-radius: 8px;
    box-shadow: 0px 6px 19px rgba(0,0,0, 0.114292);
    opacity: 1;
    background-color: rgba(255,255,255, 1);
}


.user-edit-card::after {
        position:absolute;
        opacity: 1;
        z-index:-1;
        display:inline-block;
        content: "";
        transform:rotate(0.42turn);
        left:-10%;
        top: 0%;
        width: 280px;
        height: 215px;
        border-radius:90px;
        background: linear-gradient(90deg, rgba(0, 144, 248, 1) 0%, rgba(0, 173, 181, 1) 100%);
    }

.user-edit-card input::placeholder {
    font-size:18px;
}

.user-edit-card label {
    font-size:18px;
}

.user-edit-card h4 {
    font-size:24px;
    margin-bottom:18px;
}


.overview-table {
    text-align: left;
    font-size : 1.5rem;
}

.overview-table a {
    font-size : 1.5rem;
}

td .badge-pill {
    font-size : 14px;

}

td span {
    width : 70px;
}

/* Comments */
.comment .comment-body {
    background-color: hsla(192, 81%, 5%, 0.04);
    padding: 1rem;
    border-radius: 8px;
}

.comment {
    margin-bottom: 3rem;
}

.comment .comment-meta, .comment .comment-meta a {
    margin-bottom: 0.25rem;
    font-size: 0.6rem;
}

.comment .comment-meta a {
    margin-left: 0.5rem;
}


.house *::before, .house *::after {
    content: "";
    display: block;
}

.house {
  position:relative;
  height: 225px;
  width: 450px;

}

.house-wings {
  position: absolute;
  bottom: 0;
  width : 300px;
  height: 125px;
  left: calc(50% - 212.5px);
}

.house-wings:before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: white;
    border: 5px solid  var(--light-blue-vivid-200);
    box-shadow: inset 0 15px  var(--light-blue-vivid-300);
}

.house-wings:after {
    position: absolute;
    bottom: 0;
    left: 0;
    height: 5px;
    width: 100%;
    background-color:  var(--teal-500);
    transform: scaleX(1.2)
  }

/* Roof styling */
.house-roof {
    height: 60px;
    width: calc(100% + 30px);
    left: -20px;
    border-bottom: 5px solid  var(--light-blue-vivid-200);
    position: absolute;
    bottom: 100%;
}

.house-wings > .house-roof::before, .house-wings > .house-roof::after {
    position: absolute;
    height: 100%;
    width: 50%;
    background-color: var(--light-blue-vivid-200);
    border: 5px solid  var(--light-blue-vivid-600);
    border-bottom: none;
}

.house-wings > .house-roof::before {
    left: 0;
    transform-origin: bottom left;
    transform: skewX(-30deg);
    border-right: none;
}

.house-wings > .house-roof::after {
    right: 0;
    transform-origin: bottom right;
    transform: skewX(30deg);
    border-left: none;
}

.house-wings .house-ledge {
    position: absolute;
    bottom: -15px;
    width: 100%;
    height: 15px;
    border: 5px solid var(--light-blue-vivid-600);
    background-color: var(--light-blue-vivid-200);
}

/* Panel styling */
/* Roof styling */
.solar-panel {
    position: absolute;
    height: 65px;
    width: 30%;
    left: 50px;
    border-bottom: 5px solid  var(--grey-500);
    bottom: 60%;
}

.solar-panel::before, .solar-panel::after {
    position: absolute;
    top: 25px;
    height: 60%;
    width: 50%;
    background-color: var(--grey-500);
    border: 5px solid  var(--grey-500);
    border-bottom: none;
}

.solar-panel::before {
    left: 0;
    transform-origin: bottom left;
    transform: skewX(-30deg);
    border-right: none;
}

.solar-panel::after {
    right: 0;
    transform-origin: bottom right;
    transform: skewX(30deg);
    border-left: none;
}

.house-wings .panel-ledge {
    position: absolute;
    left: 5%;
    bottom: 0%;
    width: 25%;
    height: 5px;
    border: 2px solid var(--grey-600);
    background-color: var(--grey-500);
  }


.house-left-wing,
.house-right-wing {
  position: absolute;
  flex-direction: row;
  height: 100%;
  width: 250px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.house-left-wing {
  left: 0;
}

.house-right-wing {
  right: 0;
  flex-flow: row-reverse;
}

.house-window {
  height: 60px;
  width: 30px;
  border: 5px solid  var(--grey-400);
  border-top-left-radius: 30px;
  border-top-right-radius: 30px;
  background-image:  var(--grey-400);

  &:before {
    height: 100%;
    width: 5px;
    left: calc(50% - 2.5px);
    top: 0;
    background-color:  var(--grey-300);
  }

  &:after {
    height: 15px;
    width: calc(100% + 20px);
    left: -10px;
    bottom: 5px;
    border-radius: 15px;
    background-color:  var(--light-blue-vivid-300);
    border: 5px solid  var(--light-blue-vivid-200);
    box-shadow: 0 5px  var(--light-blue-vivid-400);
  }
}


.sponsors {
    margin-top: 120px;
    margin-bottom: 30px;
}


.tilt span {
    display:block;
}

.tilt {
    position: static;
    height: 120px;
    width: 120px;
    background-color: hsl(0,0%,0%,0);
}

.flat-arrow {
    position: relative;
    left: -50%;
    top: 30%;
    width: 120px;
    border-radius:50%;
    height: 4px;
    background: linear-gradient(to right,  hsl(0,0%,0%,0) 50%, black 50% );
}

/*#form-group-site_electricityUnitPrice {
    margin-left:30px;
}
*/

.form-check-input {
    display: inline-block ;
    position: relative;
    right: 0.4rem;
    top: 0.1rem;
}

.roof-widget {
    position: static;
    width:150px;
    min-height:120px;
    padding-top: 8px;
    padding-bottom: 4px;
    margin-bottom: 12px;
    font-size : 12px;
    border: 2px var(--grey-700) solid;
}

.roof-widget p {
    margin: 0;
}

@media (max-width: 576px) {
    .chart-wrapper{
        margin-left: -60px;
    }
}

.roof-panel {
    display : inline-block;
    width : 30px;
    height : 15px;
    margin-top : 0.1px;
    margin-bottom : 0.1px;
    margin-right : 2px;
    margin-left:4px;
    background : var(--grey-700);
}


.tilt-widget {
    position: static;
    margin-left: 48px;
    width:150px;
    height:120px;
    font-size : 12px;
}

.up-arrow {
    position: relative;
    width: 68px;
    bottom: 55%;
    height: 3px;
    border-radius:50%;
    background: linear-gradient(to right, var(--grey-100) 50%, var(--grey-800) 50% );
}

.orientation {
    position: static;
    height: 76px;
    width: 76px;
    background-color: var(--grey-100);
    border: 3px solid var(--grey-700);
    border-radius: 50%;
}

.orientation span {
    display:block;
}

.widget {
    margin : 0px auto;
    width: fit-content;
    text-align: left;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: between;
}

.compass-widget {
    position: relative;
    margin-left: 48px;
    width:150px;
    height:100px;
    padding-top : 14px;
    margin-bottom: 12px;
    font-size : 12px;
}


.compass-widget .north {
    position : relative;
    left: 45%;
    top : -20px;
}

.compass-widget .south {
    position : relative;
    left: 45%;
    top : 55%;
}


.compass-widget .east {
    position : relative;
    left: 120%;
    bottom: -10%;
}


.compass-widget .west {
    position : relative;
    left: -40%;
    bottom: 40%;
}

.site-info-header {
    font-size:1.6rem;
}

.card h5 {
    font-size:24px;
    font-weight:500;
}
.card-text {
    font-size:18px;
}

.list-group {
    font-size:24px;
}

.list-group-item {
    background-color:hsl(170, 5%, 98%);
}

.airpv-blue {
    color: var(--light-blue-vivid-500);
}

.no-eircode {
    opacity: 0.598424;
    color: rgba(255,255,255,1);
    font-family: "Montserrat";
    font-size: 18px;
    font-weight: 400;
    font-style: normal;
    letter-spacing: 0.59px;
    text-align: left;
}

.pv_schematic_img {
    max-width:400px;
}


.solar_panel_img {
    width:30%;
    margin: 20px 30px;
}


img.array_img {
  width : 400px;
  margin-left: auto;
  margin-right: auto;
}

h1.solar-faq-header {
    color: black;
    font-size:36px;
    font-weight:700;
}

.solar_school_img {
    margin:0px auto;
}

img.smurfit_img {
    margin-left: auto;
    margin-right: auto;
}

.rooftop_ceo_img {
    margin: 30px auto;
}

.leo_logo_img {
    margin: 30px auto;
}

/* Facebook */
.fa-facebook {
  background: #3B5998;
  color: white;
}

/* Twitter */
.fa-linkedin {
  background: #007bb5;
  color: white;
}

.fa {
  padding: 20px;
  font-size: 30px;
  width: 50px;
  text-align: center;
  text-decoration: none;
}

.seai-mock:hover {
    text-decoration:none;
}
.seai-mock {
    color:black;
    text-decoration:none;
    width:250px;
    padding:40px;
    font-size:46px;
    font-weight:700;
    border-radius:8px;
}
/*    border:2px hsla(138, 47%, 44%, 1) solid; */

#site_systemCostNoGrant {
    width: 100px;
    margin-right:10px;
}

.printable {
    display: none;
}

@media print {
    .printable {
        display: block;
    }
    .non-printable {
        display: none;
    }
}

.live-indicator {
  background-color: #3D8AFC;
  color: white;
  text-align: center;
  padding: 6px 12px;
  border-radius: 15px;
  font-weight: normal;
  font-size: 14px;
  font-family: Arial, sans-serif;
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  border: 1px solid white;
}

.highlight-cell {
   background-color: #fff3cd;  /* Light yellow background */
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    margin: 0;
}

.breadcrumb {
    padding: 0;
    font-weight: 700;
    background-color: transparent;
}

.installer-info {
    display: inline-flex;
    align-items: center;
    flex-shrink: 0;
}

.installer-info b {
    margin-left: 8px;
}

.rating-container {
    align-items: center;
    white-space: nowrap;
    margin-left: 8px;
}

.star-rating {
    font-size: 14px;
    display: inline-block;
}

.star-rating .star {
    display: inline-block;
    position: relative;
    width: 14px; /* Set the width of each star */
    height: 14px; /* Ensure height is the same */
    color: #ccc;
}

.star-rating .star:before {
    content: '\2605'; /* Unicode star */
    font-size: 14px;  /* Match font size */
    color: inherit;
    display: block;
}

.star-rating .star-fill {
    position: absolute;
    top: 0;
    left: 0;
    width: 0; /* This will be dynamically filled by JS */
    overflow: hidden;
    color: #ffd700; /* Gold color for the filled part */
}

.star-rating .star-fill:before {
    content: '\2605'; /* Unicode star */
    font-size: 14px;  /* Match font size */
    display: block;
    color: inherit;
}

.rating-text {
    font-size: 14px;
    flex-shrink: 0;
    white-space: nowrap;
}

.filter {
  filter: blur(10px);
  user-select: none;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
}

#sms_phone_input::placeholder {
    color: #b8bdc4; /* Much lighter gray */
    opacity: 1;
}

.highlight-card {
    box-shadow: 0 0 10px 1px rgba(0, 0, 0, 0.5);
    border-color: #1BA9FA;
    /* border-color: var(--airpv-yellow); */
    border-width: 3px;
}

/* Mobile friendly message banner */
.device-banner {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #C5E2FC;
    color: #0B4776;
    border-top: 1px solid rgba(0,0,0,.1);
    padding: 15px;
    display: none;
    justify-content: space-between;
    align-items: flex-start;
    z-index: 1050;
    box-shadow: 0 -2px 10px rgba(0,0,0,.1);
}

.banner-icon-title {
    display: flex;
    align-items: center;
    margin-bottom: 4px;
}

.device-banner-content {
    margin-right: 20px;
    flex-grow: 1;
}

.close-banner {
    background: none;
    border: none;
    cursor: pointer;
    padding: 0;
}

.device-banner-content {
    margin-right: 20px;
}

@media (max-width: 767.98px) {
    .w-sm-100 {
	width: 100% !important;
    }

    .border-sm-0 {
	border: 0 !important;
    }
    
    .airpv-bg-sm-light {
	background-color: #E9E9E9 !important;
    }
}

.loading-messages {
    margin-left: 0.5rem; /* Same as Bootstrap's ml-2 */
}

.featured-section {
    /*background-color: #f8f8f8;*/
    padding: 40px 20px;
    text-align: center;
    margin-top: 30px;
}

.featured-section h2 {
    font-size: 40px;
    margin-bottom: 30px;
    font-weight: 600;
}

.featured-logos {
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 30px;
    max-width: 900px;
    margin: 0 auto;
}

.logo-item {
    transition: all 0.3s ease;
}

.logo-item:hover {
    transform: scale(1.10);
}

.logo-item img {
    max-height: 150px;
    max-width: 300px;
}

@media (max-width: 768px) {
    .featured-logos {
	flex-direction: column;
	gap: 20px;
    }

    .logo-item {
	margin-bottom: 15px;
    }

    .logo-item img {
	max-height: 100px;
	max-width: 200px;
    }
}

.form-section {
  animation: fadeIn 1s ease-in-out;
}

@keyframes fadeIn {
  from {
    opacity: 0;
    transform: translateY(20px);
  }
  to {
    opacity: 1;
    transform: translateY(0);
  }
}

.w-md-75 {
  width: 100%; /* Default width for xs and sm screens */
}

@media (min-width: 768px) {
  .w-md-75 {
    width: 75% !important;
  }
}

.active-nav {
    position: relative;
    text-decoration: none;
    font-weight: 500;
}

.active-nav::after {
    content: '';
    position: absolute;
    bottom: -2px;
    left: 0;
    width: 100%;
    height: 2px;
    background-color: currentColor;
    border-radius: 1px;
}

/* Modern Form Field */

.modern-airpv-btn {
    opacity: 1;
    background-color: rgba(248,213,80, 1);
    color: rgba(0,0,0,1);
    font-family: "Montserrat";
    font-weight: 700;
    letter-spacing: 0.62px;
    text-align: center;
    border: none;
    padding: 1rem 2rem;
    width: 100%;
}

.modern-form-group {
    margin-bottom: 1.5rem;
    position: relative;
}

.modern-label {
    position: absolute;
    top: 0.5rem;
    left: 1rem;
    font-size: 0.75rem;
    font-weight: 500;
    color: #6b7280;
    pointer-events: none;
    z-index: 1;
}

.modern-input.form-control {
    width: 100%;
    padding: 2.5rem 1rem 1.25rem 1rem;
    font-size: 1rem;
    line-height: 1.5;
    color: #111827;
    background-color: #ffffff;
    border: 1.5px solid #d1d5db;
    border-radius: 0.75rem;
    transition: all 0.15s ease-in-out;
    box-shadow: 0 1px 2px 0 rgba(0, 0, 0, 0.05);
    min-height: 3.5rem;
}

.modern-input.form-control:focus {
    outline: none;
    border-color: #3b82f6;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.modern-input.form-control::placeholder {
    color: #9ca3af;
    opacity: 1;
}

.modern-checkbox-wrapper {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
}

.modern-checkbox {
    width: 1.25rem;
    height: 1.25rem;
    border: 2px solid #d1d5db;
    border-radius: 0.375rem;
    background-color: #ffffff;
    cursor: pointer;
    transition: all 0.15s ease-in-out;
    flex-shrink: 0;
    margin-top: 0.125rem;
}

.modern-checkbox:checked {
    background-color: #3b82f6;
    border-color: #3b82f6;
    background-image: url("data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='m13.854 3.646-7.5 7.5a.5.5 0 0 1-.708 0l-3.5-3.5a.5.5 0 1 1 .708-.708L6 10.293l7.146-7.147a.5.5 0 0 1 .708.708z'/%3e%3c/svg%3e");
    background-repeat: no-repeat;
    background-position: center;
}

.modern-checkbox:focus {
    outline: none;
    box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.1);
}

.modern-checkbox-label {
    color: #374151;
    font-size: 0.875rem;
    line-height: 1.5;
    cursor: pointer;
    font-family: "Montserrat", sans-serif;
}

.privacy-notice {
    margin-bottom: 1rem;
    font-size: 0.875rem;
    line-height: 1.5;
    color: #374151;
    font-family: "Montserrat", sans-serif;
}

.privacy-link {
    color: #3b82f6;
    text-decoration: underline;
    font-weight: 500;
}

.privacy-link:hover {
    color: #2563eb;
    text-decoration: none;
}

.modern-form-group, #sms_submit_btn, #login-btn {
    transition: opacity 0.3s ease;
}
/*
.font-weight-bold {
    font-weight:500;
}
*/
/* We should fix this in IHP as .btn-close does everything now. */
.modal-header .close {
    padding: 1rem 1rem;
    margin: -1rem -1rem -1rem auto;
}
.close {
    float: right;
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1;
    color: #000;
    text-shadow: 0 1px 0 #fff;
    opacity: .5;
}

.blog-post { max-width:1440px;
             margin-left:auto;
             margin-right:auto;
             margin-bottom:8px;
           }
