/* ----- Google fonts ----- */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&family=Rubik:wght@400;700&display=swap');
/* ----- Bootstrap icons ----- */
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.3.0/font/bootstrap-icons.css");
:root {
    --main-color: #024b30;
    --accent-color: #f18200;
    --heading-font: 'Rubik', sans-serif;
    --body-font: 'Poppins', sans-serif;
}
/* ----- Global ----- */
body {
    font-family: var(--body-font);
    font-size: 18px;
    color: #333;
    line-height: 1.8;
    font-weight: 400;
}
h1, h2 {
    font-family: var(--heading-font);
    font-weight: 700;
    line-height: 1.25;
    margin-bottom: 2rem;
}
h3, h4, h5, h6 {
    font-family: var(--heading-font);
    font-weight: 400;
    line-height: 1.25;
    margin-bottom: 2rem;
}

h1 {
    color: var(--main-color);
}
header {
    margin-top: 45px;
    margin-bottom: 45px;
}
section {
    margin-bottom: 50px;
}
/* ----- Links ----- */
a:link, a:visited {
    color: var(--main-color);
    text-decoration: underline;
}
a:hover, a:active, a:focus {
    color: var(--accent-color);
    text-decoration: none;
}
/* ----- Hero ----- */
.optin-form {
    background-color: var(--main-color);
    padding: 30px;
    text-align: center;
    color: #fff;
}
/* ----- Layout ----- */
#features .feature {
    padding-left: 2rem;
    padding-right: 2rem;
}
/* ----- Forms ----- */
.optin-form input {
    width: 100%;
    border: 1px solid var(--main-color);
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    padding: 8px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin-bottom: 10px;
}
/* ----- Buttons ----- */
.reg-btn {
    -webkit-border-radius: 3;
    -moz-border-radius: 3;
    border-radius: 3px;
    font-family: var(--body-font);
    color: #fff !important;
    font-size: 18px;
    font-weight: 600;
    background: var(--accent-color);
    border: 1px solid var(--accent-color);
    padding: 10px 20px 10px 20px;
    text-decoration: none !important;
    word-break: break-word;
    word-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
}
.reg-btn:hover {
    color: #fff !important;
    filter: alpha(opacity=80);
    opacity: 0.8;
    text-decoration: none;
}
.large-btn {
    -webkit-border-radius: 3;
    -moz-border-radius: 3;
    border-radius: 3px;
    font-family: var(--body-font);
    color: #fff !important;
    font-size: 22px;
    font-weight: 600;
    background: var(--accent-color);
    border: 1px solid var(--accent-color);
    padding: 10px 25px 10px 25px;
    text-decoration: none !important;
    word-break: break-word;
    word-spacing: 2px;
    text-transform: uppercase;
    display: inline-block;
}
.large-btn:hover {
    color: #fff !important;
    filter: alpha(opacity=80);
    opacity: 0.8;
    text-decoration: none;
}
/* ----- Bootstrap font styles ----- */
.bi {
    font-size: 35px;
    color: var(--accent-color);
}
button .bi {
    color: #fff;
}
/* ----- Footer ----- */
/* ----- Media Queries ----- */
/* Large devices (desktops, less than 1200px) */
@media (max-width: 1199px) {}
/* Medium devices (tablets, less than 992px) */
@media (max-width: 991px) {}
/* Small devices (landscape phones, less than 768px) */
@media (max-width: 767px) {
    #features .feature {
        padding-left: 15px;
        padding-right: 15px;
    }
}
/* Extra small devices (portrait phones, less than 576px) */
@media (max-width: 575px) {
    header {
        margin-top: 30px;
    }
    .optin-form {
        padding: 20px;
    }
}