body,
html {
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    font-family: 'Poppins', sans-serif;
    font-size: 18px;
}

h1 {
    font-size: 60px;
}

.maincontent {
    max-width: 100%;
    padding: 0;
    margin: 0;
}

.maincontent_wrapper {
    padding-top: 0;
}

#main-wrapper {
    overflow: hidden;
}

img {
    width: 100%;
}

h2{
    font-weight:500;
}

h3 {
    color: #AA8C60;
    font-style: italic;
    font-weight: 400;
    font-size:24px;
}

.bold {
    font-weight: 500;
}

.title {
    font-style: italic;
    font-weight: 300;
    display:inline-block;
}
.highlight {
    font-weight: 600;
    display:inline-block;
    transform:skewX(-8deg);
}

.my-hr {
    position: relative;
    border: 0;
    height: 1px;
    max-width: 70%;
    background-image: linear-gradient(to right, rgba(0, 0, 0, 0)0%, rgba(0, 0, 0, .75)50%, rgba(0, 0, 0, 0)100%);
    margin: 100px auto;
}

.myButton {
    margin-top: 30px;
    height: 60px;
    line-height: 56px;
    float: left;
    color: #fff;
    background: #AA8C60;
    text-decoration: none;
    font-size: 14px;
    font-weight: 600;
    padding-bottom: 10px;
    position: relative;
    border: 2px solid #856B46;
    padding: 0 40px;
    box-shadow: 3px 3px 7px 1px rgba(0, 0, 0, 0.3);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -ms-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}

.myButton:hover {
    text-decoration: none;
    background: #9f8054;
    border-color: #9f8054;
    color: #fff;
    box-shadow: 2px 2px 7px 1px rgba(0, 0, 0, 0.3);
}

.myButton:hover .btn-arrow {
    transform: translateX(2px) scale(1.1);
    transition: .3s;
}

.myButton-dark {
    display:inline-block;
    margin: 30px auto;
    height: 60px;
    text-align:center;
    line-height: 56px;
    /* float: left; */
    color: #fff;
    background: #000;
    font-size: 14px;
    font-weight: 600;
    padding-bottom: 10px;
    position: relative;
    border: 2px solid #AA8C60;
    padding: 0 40px;
    box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.3);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -ms-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}

.myButton-dark:hover {
    text-decoration: none;
    background: #333;
    border-color: #9f8054;
    color: #fff;
    box-shadow: 2px 2px 7px 1px rgba(0, 0, 0, 0.3);
}

.myButton-dark:hover .btn-arrow {
    transform: translateX(2px) scaleX(1.1);
    transition: .3s;
}

.btn-arrow {
    max-width: 8px;
    margin: 0 0 2px 8px;
    transition: .3s;
}

.hero {
    display: grid;
    justify-content: center;
    align-items: center;
    min-height: 100vh;
}

.hero-bg {
    position: absolute;
    background-image:
        linear-gradient(to right, rgba(38, 40, 43, 0.5) 0%, rgba(38, 40, 43, 0.5) 49%, rgba(159, 128, 84, 0.5) 100%),
        url('/imageserver/Reusable/gaf2022/residential/house1.jpg');
    background-size: cover;
    background-repeat: no-repeat;
    min-height: 100vh;
    width: 100%;
}

#gaf-logo {
    max-width: 350px;
    float: right;
}

#warranty-logos{
    max-width:500px;
    margin-top:50px;
}

.hero-container h1 {
    color: #AA8C60;
}

.hero-container {
    z-index: 5;
    padding: 5% 5% 0;
    max-width: 1500px;
    margin: 0 auto;
}

.pattern-bg {
    position: relative;
    height: 100%;
    width: 100%;
    max-width:600px;
    margin:0 auto;
}

.pattern-bg::before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: -5%;
    top: 5%;
    background: #AA8C60;
}

.section1 {
    margin-top: 50px;
    position: relative;
    z-index:5;
    background-color:#fff;
}

.sec1-container {
    padding: 5% 5%;
    max-width: 1600px;
    margin: 0 auto;
    position: relative;
}

.content-box {
    padding: 0 5%;
}

.content-box p {
    max-width: 600px;
    margin:0 auto;
}

.benefits {
    padding: 3% 8%;

}

.benefits-bg {
    
    position: absolute;
    background-image: linear-gradient(rgba(255, 255, 255, 0.9)0%, rgba(255, 255, 255, 0.9)100%), url('/imageserver/Reusable/gaf2022/residential/house-drawing-bgr.png');
    background-size: cover;
    background-repeat: no-repeat;
    background-position:bottom, 0 -200px;
    height: 100vh;
    width: 100%;
}

.icon{
    max-height:100px;
    max-width:100px;
    margin:0 auto;
}
.icon img{
    max-height:100px;
    max-width:90px;
}


.benefits .flex-group {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-around;
}

.benefits .flex-item {
    max-width: 300px;
    text-align: center;
}

.benefits .flex-item:nth-child(odd) {
    margin-top: 75px;
}

.divider {
    width: 100%;
    text-align: center;
    margin:20px 0 0;
}

.divider h2 {
    position: relative;
    text-align: center;
    display: inline-block;
    margin: 0 auto;
}

.divider h2::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 50%;
    right: -110px;
    height: 2px;
    width: 100px;
    background-image: linear-gradient(to right, #AA8C60 50%, rgba(235, 207, 167, 0)100%);
}

.divider h2::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 50%;
    left: -110px;
    height: 2px;
    width: 100px;
    background-image: linear-gradient(to left, #AA8C60 50%, rgba(235, 207, 167, 0)100%);
}

h2 {
    font-size: 2.3rem;
}

.divider-title {
    color: #AA8C60;
    font-style: italic;
}

.products-container {
    padding: 0 8% 2%;
    max-width: 1500px;
    margin: 0 auto 2%;
}

.product-grid {
    position: relative;
    display: grid;
    grid-template-columns: 50% 50%;
    gap: 50px;
    margin: 100px 0 0;
}

.product-img {
    max-width: 500px;
    position: relative;
    filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
    z-index: 5;
}

.product-bg {
    position: relative;
    height: 100%;
    width: 100%;
}



.product-grid-img.designer {
    transform: translateY(450px);
}

.designer .product-bg::after {
    top: -175px;
}

.designer .product-bg::before {
    top: -100px;
}

.product-grid-img.tab3 {
    transform: translateY(500px);
}

.tab3 .product-bg::after {
    top: -200px;
}

.tab3 .product-bg::before {
    top: -125px;
}

.product-bg::before {
    content: "";
    width: 80%;
    height: 100%;
    position: absolute;
    left: -40px;
    top: -5px;
    background-image: linear-gradient(to top right, rgba(235, 207, 167, 1)0%, rgba(235, 207, 167, 0)50%);
}

.product-bg::after {
    content: "";
    z-index: 1;
    width: 80%;
    height: 100%;
    position: absolute;
    right: 70px;
    top: -50px;
    border: 1px solid #AA8C60;
}



 .warranty-section {
    position: relative;
    width: 100%;
    min-height: 70vh;
    display: flex;
    flex-wrap: wrap;
    background-size: 100%;
    background-position: right;
    background-repeat: no-repeat;
    background-image: url('/imageserver/Reusable/gaf2022/residential/aerial-bg-min.png');
}

.warranty-section .content-box-container {
    transform: translateY(36px) translateX(40%);
    filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.3));
}
#warranty-img{
    margin:0 auto 30px;
    position: relative;
    z-index:10;
    max-width:500px;
    display:block;
}
.warranty-section .content-box {
    width: 600px;
    max-width: 100%;
    display: flex;
    flex-wrap: wrap;
    padding: 30px 80px 80px;
    color: #fff;
    background: #9f8054;
    position: relative;
    overflow: hidden;
}

.warranty-section .content-box:after {
    content: "";
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 100px 200px 100vh 0;
    border-color: transparent #ebcfa7 transparent transparent;
    position: absolute;
    right: 0;
    top: 0;
    opacity: 0.15;
}

#warranty-subtitle{
    margin:10px 0;
    color:#EBCFA7;
} 
.warranty-title{
    margin:10px 0;
    color:#EBCFA7;
} 
.help-section-container {
    padding: 1% 8%;
    max-width: 1600px;
    margin: 0 auto;
}

.subtitle {
    position: relative;
    text-align: center;
    display: inline-block;
    margin: 0 auto 30px ;
    color:#000;
}

.subtitle::after {
    content: "";
    position: absolute;
    display: inline-block;
    top: 50%;
    right: -55px;
    height: 2px;
    width: 50px;
    background-image: linear-gradient(to right, #AA8C60 50%, rgba(235, 207, 167, 0)100%);
}
.subtitle::before {
    content: "";
    position: absolute;
    display: inline-block;
    top: 50%;
    left: -55px;
    height: 2px;
    width: 50px;
    background-image: linear-gradient(to right, #AA8C60 50%, rgba(235, 207, 167, 0)100%);
}

.post-box a {
    color: #AA8C60;
    position: relative;
    display: inline-block;
    margin: 15px 0 15px;
}

.post-box a::after {
    content: "";
    position: absolute;
    bottom: -3px;
    left: 0;
    width: 0;
    height: 1px;
    background-color: #EBCFA7;
    transition: .3s;
}

.post-box a:hover {
    text-decoration: none;
}

.post-box a:hover::after {
    width: 100%;
    transition: .3s;
}

.post-box a:hover .btn-arrow {
    transform: translateX(2px) scaleX(1.1);
    transition: .3s;
}

.help-header{
    text-align:center;
}

.help-section .flex-group {
    position: relative;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.help-section .flex-item {
    margin: 20px 0;
    max-width: 300px;
}

.help-section .flex-item p {
    padding-right: 10px;
}

.video-bg iframe {
    min-height: 50vh;
}
.algae-wrapper{
    padding:4% 8% 0;
}
.algae-grid{
    display:grid;
}
#algae-closeup{
    max-width:600px;
    grid-row:2/6;
    grid-column: 4/8;
    justify-self:center;
}
#algae-content{
    grid-row:4/6;
    grid-column: 1/4;
    max-width:500px;
    align-self:center;
    margin:20px auto;
}
#algae-header{
    grid-column: 4/7;
    grid-row:1/2;
}
#algae-logo{
    grid-column: 1/4;
    grid-row: 1/4;
    max-width:400px;
    margin:0 auto;
}
/* =============== Media Queries ================ */

@media screen and (max-width:1200px) {
    #sec1-content{
        text-align:center;
    }

    .section1{
        text-align: center;
    }
}
@media screen and (max-width:992px) {
    body,html{
        font-size:16px;
    }
    h1{
        font-size:48px;
    }

    
    .pattern-bg::before {
        width: 80%;
        left: -5%;
        top: 0;
    }
    
    .warranty-section .content-box-container {
        transform: translateY(50px) translateX(0);
        text-align: center;
        padding:0;
    }
    .warranty-section {
        background-size: 0;
        margin-top:150px;
    }
    #warranty-img{
        margin-top:20px;
    }
    .warranty-section .content-box {
        transform:translate3d(0,0,0)!important;
        width: 100%;
        text-align: center;
        display:block;
        padding:0;
    }
    .warranty-section .content-box p{
        max-width:80%;
        margin:0 auto;
    }
    #warranty-subtitle{
        margin-left:10px;
    }

    .product-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 535px 250px;
        text-align: center;
        margin:50px 0 0;
    }

    .product-bg {
        transform: translate3d(0, 0, 0) !important;
    }

    .product-img {
        transform: translate3d(0, 0, 0) !important;
    }

    .product-grid-img {
        grid-row: 1/2;
        max-width: 500px;
        margin: 0 auto;
    }

    .product-grid-img.designer {
        transform: translateY(0);
    }

    .designer .product-bg::before {
        top: 0px;
    }

    .product-grid-text {
        grid-row: 2/3;
    }

    .designer .product-bg::after {
        top: 0px;
    }

    .product-bg::after{
        content:"";
        z-index:1;
        width: 80%;
        height: 80%;
        position: absolute;
        right: -30px;
        top:-5%;
        border:1px solid #AB9679;
    } 
    .product-bg::before{
        content:"";
        width: 80%;
        height: 80%;
        position: absolute;
        left: -40px;
        top: 0;
        background-image: linear-gradient(to top right, rgba(235, 207, 167, 1)0%, rgba(235, 207, 167, 0)50% );
    }
    .product-bg{
        position: relative;
        height:100%;
        width:100%;
    }
    
    .product-grid-img{
        transform:translateY(50px);
    }
  
    .content-box p {
        margin: 0 auto;
        max-width:500px;
    }

    .myButton {
        margin: 10px auto;
        text-align: center;
        display: inline-block;
        float: none;
    }
    .algae-section{
        margin-top:100px;
    }

    .algae-grid{
        display:block;
        text-align: center;
    }
    #algae-content{
        max-width:100%;
        /* margin-top:150px; */
    }
}

@media screen and (max-width:700px) {
    .hero-container{
        text-align: center;
    }
    #gaf-logo{
        float:none;
    }
     .warranty-section {
        background-size: 0;
        margin-top:200px;
    }
}
@media screen and (max-width:600px) {
    .warranty-section {
        margin-top:275px;
    }
  .hero-container h2{
     display:none;
  }
}
@media screen and (max-width:500px) {
    .product-grid {
        grid-template-columns: 1fr;
        grid-template-rows: 450px 250px;
        /* justify-content: center; */
        text-align: center;
    }
       .warranty-section {
        margin-top:350px;
    }
}
@media screen and (max-width:400px) {
    .warranty-section {
        margin-top:400px;
    }
}

@media screen and (max-width:350px) {
    .warranty-section {
        margin-top:475px;
    }
}

@media screen and (max-width:300px) {
    .warranty-section {
        margin-top:600px;
    }
}

@media screen and (max-width:250px) {
    .warranty-section {
        margin-top:675px;
    }
}