/* HEADER GOES HERE */

.main-nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  background-color: #001f3f; /* Navy Blue */
  padding: 20px 10%;
  /*position: sticky;*/
  top: 0;
  z-index: 1000;
}

.logo {
  color: white;
  font-size: 1.8rem;
  font-weight: bold;
   transition: color 0.3s ease;
}
.logo:hover {
  color: gold;
}

/* Nav Links */
.nav-links {
  list-style: none;
  display: flex;
  gap: 30px;
}

.nav-links li a {
  text-decoration: none;
  color: white;
  font-weight: 500;
  transition: color 0.3s ease;
}

.nav-links li a:hover,
.nav-links li a.active {
  color: goldenrod; /* Highlight color on hover or active */
}

.menu-toggle {
  display: none;
}

.burger {
        display: none;
        flex-direction: column;
        gap: 5px;
        cursor: pointer;
}

.burger .line {
    width: 25px;
    height: 3px;
    background: white;
}
/* END OF NAV BAR */

body{
    margin: 0;
    font-family: 'DM Sans', sans-serif;
    color: #001F3F;
}

a{
    text-decoration: none;
}

.basic-right-list, .standard-left-list, .premium-right-list{
    margin-top: 0.5vw;
    list-style: none;
    padding-left: 0;
}

.basic-right-list li, .standard-left-list li, .premium-right-list li {
  position: relative;
  padding-left: 1.8vw;
  margin-bottom: 0.9vw;
}

.basic-right-list li::before, .standard-left-list li::before, .premium-right-list li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.2vw;
  width: 1.7vw;
  height: 1.7vw;
  background-image: url('list-icon.PNG');
  background-size: contain;
  background-repeat: no-repeat;
}

.pricing-heading{
    margin-top: 2.5%;
    text-align: center;
    font-weight: bold;
    font-size: 90%;
    color: #001F3F;
    letter-spacing: 3px;
}

.page-title{
    text-align: center;
    font-weight:bolder;
    font-size: 3vw;
}

.page-description{
    text-align: center;
    font-weight:lighter;
    font-size: 1.4vw;
    margin: 5% 12%;
}

.pricing-card-basic,.pricing-card-standard,.pricing-card-premium{
    display: flex;
    justify-content: center;
    height: 23vw;
    color:#001F3F;
    margin: 3vw 0%;
}

.basic-left-section, .basic-right-section, .standard-left-section, .standard-right-section,.premium-left-section, .premium-right-section{
    height: 100%;
    width: 40%;
}

.basic-left-section, .standard-right-section, .premium-left-section{
    border-radius: 30px 0px 0px 30px;
    background-color: white;
    box-shadow: -2px 3px 15px #ecedee;
}

.basic-left-content, .standard-right-content, .premium-left-content{
    margin: 9% 10%;
}

.basic-intro-container, .standard-intro-container, .premium-intro-container{
    margin-top: 6%;
    display: flex;
    gap: 2%;
}

.basic-icon, .standard-icon, .premium-icon{
    width: 10%;
    height: 10%;
    background-color: black;
    border-radius: 10px;
}

.basic-plan-intro-title, .standard-plan-intro-title, .premium-plan-intro-title{
    display: flex;
    flex-direction: column;
    justify-content: end;
}

.basic-plan-intro, .standard-plan-intro, .premium-plan-intro{
    margin-top: 0%;
    font-size: 1vw;
    color: #6F6C90;
    font-weight: lighter;
}

.basic-plan-title, .standard-plan-title, .premium-plan-title{
    margin-top: -20%;
    font-size: 1.8vw;
}

.basic-price-range, .standard-price-range, .premium-price-range{
    font-size: 2vw;
    font-weight: 600;
    margin: 1% 0%;
}

.btn-basic, .btn-standard, .btn-premium{
    display: flex;
    justify-content: center;
    background-color:#001F3F;
    color: white;
    border-radius: 100px;
    padding: 5% 39%;
    font-size: 0.9vw;
    font-weight: 550;
    border: none;
    margin: 5% 0%;
    letter-spacing: 1.2px;
    text-decoration: none;
}

.basic-right-section, .standard-left-section, .premium-right-section{
    background-color: #F7F7FC;
    border-radius: 0px 30px 30px 0px;
    box-shadow: 3px 0px 15px #ecedee;
}

.basic-right-content, .standard-left-content, .premium-right-content{
    margin: 5% 10%;
}

.basic-right-title, .standard-left-title, .premium-right-title{
    font-size: 1.3vw;
    font-weight: bolder;
}

.basic-right-lists, .standard-left-lists, .premium-right-lists{
    font-size: 1.3vw;
}

.basic-right-list, .standard-left-list, .premium-right-list{
    margin-top: 5%;
    font-size: 1vw;
    color: #6F6C90;
    font-weight: lighter;
}

.basic-right-content{
    margin: 17% 10%;
}

.standard-plan-title,.premium-plan-title{
    margin-top: -12%;
}

.standard-left-section{
    border-radius: 30px 0px 0px 30px;
    box-shadow: -2px 3px 15px #ecedee;
}

.standard-right-section{
    border-radius: 0px 30px 30px 0px;
    box-shadow: 3px 0px 15px #ecedee;
}

.premium-right-list{
    margin-top: 0%;
}

.premium-right-lists{
    margin-bottom: 0.7vw;
}

/* CUSTOM OFFER */

.custom-offer{
    display: flex;
    justify-content: space-evenly;
    margin: 5% 0%;
    flex-wrap: wrap;
}

#custom-offer-text{
    display: flex;
    margin-top: 5%;
    font-size: 2.5vw;
    font-weight: bold;    
}

.btn-get-offer{
    background-color:#001F3F;
    color: white;
    border-radius: 100px;
    padding: 2% 10%;
    font-size: 1vw;
    font-weight: 550;
    border: none;
    margin: 5% 0%;
    letter-spacing: 1.2px;
    text-decoration: none;
}

/* FOOTER */

footer{
    display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #001F3F;
    color: white;
    font-size: 1.2w;
}

.footer-links-section{
    display: flex;
    justify-content: space-between;
    text-align: center;
    margin-left: 5%;
    font-size: 90%;
    gap: 15%;
}

.link-texts, .phone,.contact-info{
    white-space: nowrap; 
    font-weight: lighter;
    font-size: 1.2vw;
}

.footer-links{
    color: white;
    text-decoration: none;
}

#footer-logo{
    font-size: 2vw;
}

.contact-info{
    margin-right: 10%;
}

.footer-email{
    color: white;
}

.phone-numbers{
    display: flex;
    flex-direction: column;
    margin-top: -5%;
}

.phone{
    margin-left: 10%;
    color: white;
}


/* PHONE DISPLAY */

@media (max-width: 800px) {
    .burger {
        display: flex;
    }

    .nav-links {
        display: none;
        position: absolute;
        top: 70px;
        right: 20px;
        width: 200px;
        flex-direction: column;
        background-color:navy;
        padding: 1rem;
        border-radius: 8px;
        z-index: 999;
    }

    .menu-toggle:checked ~ .nav-links {
        display: flex;
    }    

    .page-title{
        font-size: 190%;
    }

    .page-description{
        font-size: 80%;
        margin-bottom: 35%;
    }

    .pricing-card-basic,.pricing-card-standard,.pricing-card-premium{
        flex-direction: column;
        margin: 20% 0%;
        align-items: center;
        margin-bottom: 70%;
    }

    .pricing-card-standard{
        flex-direction: column-reverse;
    }

    .basic-left-section, .standard-right-section, .premium-left-section, .basic-right-section, .standard-left-section, .premium-right-section{
        width: 70%;
        border-radius: 30px 30px 0px 0px;
        padding-bottom: 20%;
    }

    .basic-right-section, .standard-left-section, .premium-right-section{
        background-color: #F7F7FC;
        border-radius: 0px 0px 30px 30px;
        box-shadow: 3px 0px 15px #ecedee;
    }

    .basic-icon, .standard-icon, .premium-icon{
        width: 13%;
        height: 13%;
    }

    .basic-plan-intro, .standard-plan-intro, .premium-plan-intro{
        font-size: 80%;
    }

    .basic-plan-title{
        font-size: 100%;
        margin-bottom: 15%;
    }

    .basic-price-range, .standard-price-range, .premium-price-range{
        font-size: 110%;
    }

    .btn-basic, .btn-standard, .btn-premium{
        font-size: 53%;
        padding: 5% 20%;
    }

    .basic-right-content{
        margin: 10% 10%;
    }

    .basic-right-title, .standard-left-title, .premium-right-title{
        font-size: 60%;
    }

    .basic-right-list li, .standard-left-list li, .premium-right-list li {
        padding-left: 2.2vw;
    }

    .basic-right-list li::before, .standard-left-list li::before, .premium-right-list li::before {
        top: 0.8vw;
    }

    .basic-right-lists{
        font-size: 220%;
    }

    .basic-right-list, .standard-left-list, .premium-right-list{
        font-size: 1.2vw;
        margin-top: 3%;
    }

    .standard-plan-title, .premium-plan-title{
        font-size: 100%;
        margin-bottom: 9%;
    }

    .standard-left-lists, .premium-right-lists{
        font-size: 180%;

    }
    .custom-offer{
        flex-direction: column;
        align-items: center;
        margin-top: -15%;
    }
    #custom-offer-text{
        font-size: 5vw;
        margin: auto 10%;
        text-align: center;
    }
    .btn-get-offer{
        padding: 2% 15%;
        font-size: 2vw;
    }

    footer{
        padding: 5%;
    }

    #footer-logo{
        align-items: start;
        order: 1;
        font-size: 4vw;
    }

    .footer-links-section{
        flex-direction: column;
        align-items: center;
        order: 2;
        font-size: 10vw;
    }

    .link-texts,.contact-info,.phone{
        font-size: 2vw;
    }

    .contact-info,.phone{
        order: 3;
        font-size: 2.5vw;
        margin-right: 0;
    }

}

/* ANIMATIONS */
.btn-get-offer, .btn-basic, .btn-standard, .btn-premium {
  position: relative;
  display: flex;  
}

.btn-get-offer::after, .btn-basic::after, .btn-standard::after, .btn-premium::after {
  content: "";
  width: 0%;
  height: 100%;
  background: gold;
  position: absolute;
  transition: all 0.4s ease-in-out;
  top: 0;
  right: 0;
  z-index: 1;
  border-radius: 100px;
}

.btn-get-offer:hover::after, .btn-basic:hover::after, .btn-standard:hover::after, .btn-premium:hover::after {
  right: auto;
  left: 0;
  width: 100%;
}

.btn-get-offer span, .btn-basic span, .btn-standard span, .btn-premium span {
  z-index: 2;
  position: relative;
  transition: transform 0.3s ease-in-out;
}

.btn-get-offer:hover span, .btn-basic:hover span, .btn-standard:hover span, .btn-premium:hover span {
  animation: scaleUp 0.3s ease-in-out;
  color: #001F3F;
}

@keyframes scaleUp {
  0% { transform: scale(1); }
  50% { transform: scale(0.95); }
  100% { transform: scale(1); }
}

.footer-email:hover,.phone:hover,#footer-logo:hover,.footer-links:hover{
    color: gold;
    transition: color 0.3s ease;
}