
/* Variables */

:root {
    --color-text: #222222;
    --color-blue: #00ACD4;
    --color-dkblue: #006BB7;sticky_callout
    --font-heading: 'impact-urw', 'Anton', sans-serif;
    --font-body: 'pt-sans-narrow', sans-serif;
    --font-alt: 'pt-sans', sans-serif;
   /* scroll-behavior: smooth;*/
}

/* Global Styles */

html, 
body {
    width: 100%;
    max-width: 100%;
    background: white;
    margin: 0;
    padding: 0;
    overflow-x: hidden;
}

body {
    font-family: var(--font-body);
    color: var(--color-text);

    scroll-behavior: smooth;
    height:100vh;
    overflow: hidden scroll;

    -webkit-overflow-scrolling: touch;
}

body.down{
    scroll-snap-type: y mandatory;
    scroll-snap-stop:always;
    scroll-margin: 0 0 0 0;
    scroll-padding: 0 0 0 0;
    scroll-margin-inline: 0 0;
    scroll-margin-block: 0 0;
    scroll-padding-inline: 0 0;
    scroll-padding-block: 0 0;
}

section {
    position: relative;
}

section {
    position: relative;
    scroll-snap-align: start;    
    top:0;
    left:0;
    scroll-margin: 0 0 0 0;
    scroll-padding: 0 0 0 0;
}

 .snap{
    scroll-snap-align: start;    
    scroll-margin: 0 0 0 0;
    scroll-padding: 0 0 0 0;
}


.full-width {
    width: 100vw;
    height: auto;
}

.container {
    max-width: 1600px;
    margin: 0 auto;
    padding: 1rem;
}

img {
    max-width: 100%;
    vertical-align: bottom;
}

a {
    height: 100%;
}

a:visited {
    color: #e0e0e0;
}

.blue {
    color: var(--color-blue);
}

.dkblue {
    color: var(--color-dkblue);
}

.white {
    color: white;
}

h1 {
    font-family: var(--font-heading);
    color: white;
    text-transform: uppercase;
    font-size: 2.1rem;
    text-align: center;
    margin-top: 4rem;
    letter-spacing: 3px;
}

h2 {
    font-family: var(--font-heading);
    color: var(--color-text);
    font-size: 2.1rem;
    text-transform: uppercase;
    letter-spacing: 3px;
}

.scroll-down {
 font-family: 'pt-sans', sans-serif;
    color: #e0e0e0;
    height: 1em;
    text-decoration: none;
    text-align: right;
    position: absolute;
    bottom: 19px;
    margin-top: 0;
    display: inline-block;
    width: auto;
    left: 65vw;
    z-index:1200;
}



#top_slide .scroll-down {
    position:absolute;
}

.col2 .half > img {
    display: inline-block;
    width: 100%;
}

.last {
    margin-bottom: 100px;
}

p {
    font-size: 1.5rem;
    line-height: 2.25rem;
}

p.disclaimer {
    font-size: .8rem;
    line-height: 1.1rem;
}

/* Top Slide */

#top_slide {
    background-image: url('../img/header_img_mobile.jpg');
    background-position: bottom left;
    background-size: cover;
    height: 100vh;
    scroll-margin: 0 0 0 0;
}

#top_logo {
    text-align: center;
    padding-top: 20px;
}

/* Attention */
#attention p.subtext {
    font-size: 1.25rem;
}

#attention .half {
    align-self: center;
}

/* Choose Hydrotech */

#choose_hydrotech h2 {
    text-align: center;
    margin-bottom: .25rem;
}

#choose_hydrotech h3 {
    text-align: center;
    text-transform: uppercase;
    font-size: 1.5rem;
    margin-top: 0;
}

/* Unprotected Membrane */
#unprotected_membrane h2 {
    text-transform: none;
    color: #464646;
}

#protected_membrane h2 {
    text-transform: none;
}

.membrane-left > img {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.membrane-right {
    text-align: center;
    margin-top: -10px;
}

.img-caption {
    text-align: right;
}

.img-caption h4 {
    font-size: 2rem;
    margin-bottom: 0;
    font-family: var(--font-heading);
    letter-spacing: 1px;
}

#stone_ballast,
#amenity,
#green_roof {
    background-size: cover;
    height: 45vh;
    max-height: 500px;
    height: calc(45vh - 2.5rem);
}

#stone_ballast{
    background-position: top center;
    height: 45vh;
    max-height: 500px;

    scroll-snap-align: center;    
    scroll-margin: 0 0 0 0;
    scroll-padding: 0 0 0 0;
}

#amenity,
#green_roof {
    background-position: bottom center;
}

#stone_ballast {
    background-image: url('../img/pmr_stoneballast.jpg');
}

#amenity {
    background-image: url('../img/amenity2.jpg');
}

#green_roof {
    background-image: url('../img/green_roof2.jpg');
}

#final_payoff {
    background-image: url('../img/hardhat_background_1.jpg');
    background-position: top right;
    background-size: cover;
    background-repeat: no-repeat;
    height: 100vh;
    width: 100vw;
    scroll-snap-align:none;
}



#logo_white {
    display: block;
    margin: 0 auto;
    padding-top: 4rem;
}

#final_payoff .white {
    text-shadow: 1px 1px 3px black;
}

#final_payoff > h2 {
    padding-top: 30px;
    padding-left: 1rem;
    margin-bottom: 0;
}

#final_payoff > p {
    margin-top: .5rem;
    padding-left: 1rem;
    padding-right: 1rem;
    font-size: 1.25rem;
    line-height: 1.75rem;
}




#firstcall a.find {
    margin-top: 20px;
    display: inline-block;
    height: auto;
    margin-bottom:50px;
}


#firstcall,
#sticky_callout {
    position: absolute;
    bottom: 20vh;
    transform: scale(0.75);
    z-index: 1 !important;
    width: 100%;
}

#firstcall img{
   vertical-align: bottom;
   padding-left:20px
}
#firstcall{
    position: static;
       top: 20rem;
    transform: scale(1);
    left: 0;
    width: 100%;
    text-align: center;
}

#firstcall > a{
    
    display: inline;
}

#firstcall > p{
    display: inline-block;
}

#firstcall > a ,
#firstcall > div > a ,
#sticky_callout > div > a,
#sticky_callout > a{
    white-space: pre;
    text-decoration: none;
    text-transform: uppercase;
    background-color: var(--color-dkblue);
    color: white;
    padding: 1.75rem;
    font-size: 1.5rem;
    border-radius: 5px;
    box-shadow: 2px 2px 3px rgba(0, 0, 0, 0.3);
}

#firstcall ##angle_right,
#sticky_callout #angle_right {
    width: .75rem;
    margin: 0 10px;
}


#firstcall #pmr_cover2,
#sticky_callout #pmr_cover {
    position: relative;
    top: 110px;
    width: 3.25rem;
    display: none;
}

#firstcall > p,
#sticky_callout > p {
    color: white;
    margin-top: 2rem;
    text-shadow: 1px 1px 1px black;
    line-height: 1.75rem;
    position: relative;
}

#firstcall > p a,
#sticky_callout > p a {
    color: white;
}

#sticky_callout #logo_black {
    padding: 0 1rem;
    background-color: white;
    vertical-align: middle;
    width: 6rem;
}

#advantages .advantage-box:last-child{
    scroll-snap-align:end;

}

footer {
    position: relative;
    height: 5vh;
    width: 100vw;
    background-color: var(--color-dkblue);
    text-align: right;
    font-family: var(--font-alt);
    color: white;
    font-size: .75rem;
    margin-top: -5px;
    padding-bottom: 5px;
    scroll-snap-align:end;
}

#footer_logo {
    position: absolute;
    bottom: calc(5vh + 5px);
    left: 1rem;
    background-color: white;
    padding: 1rem;
    width: 6rem;
}




/* Medium-Size Screens */

@media screen and (min-width:800px) {

    section{
        height:100vh;
        
        display:block;
    }
    p {
        font-size: 1.6rem;
        line-height: 2rem;
    }

    .flex {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
    }

    #top_slide {
        background-image: url('../img/header_img.jpg');
    }

    h1 {
        font-size: 4.5rem;
    }

    h2 {
        font-size: 4rem;
        line-height: 4.25rem;
    }

    .scroll-down {
         text-align: right;
        width: 83%;
        position: -webkit-sticky; /* Safari */
        position: sticky;
        bottom: 10px;
        
        display: inline-block;
        width: auto;
        left: 85vw;
        bottom:12vh;
        margin-top: 3vh;

    }

    .col2 {
        display: flex;
        width: 100%;
        justify-content: center;
        flex-wrap: wrap;
    }
    
    .col2 > .half {
        width: 50%;
    }

    #choose_hydrotech h3 {
        font-size: 2rem;
    }

    #choose_hydrotech .col2 > div:nth-of-type(1) {
        width: 30%;
    }

    #unprotected_membrane h2,
    #protected_membrane h2 {
        width: 100%;
        z-index: 1;
        margin-bottom: 0;
    }

    #advantages{
        /*flex: 1 1 auto; not needed as removed original feature srcoll snap
        flex-direction: column;*/
        padding-bottom:35px;
    }
    #advantages .advantage-box .half{
        display:block;
        width:50%;
    }



    #stone_ballast {
        
        height: calc(70vh - 2.5rem);
        max-height: calc(70vh - 2.5rem);
    }
    
    #amenity {
        
        height: calc(38vh - 2.5rem);
    }
    
    #green_roof {
        
        height: calc(38vh - 2.5rem);
    }
    .up #advantages {
        height:auto;
    }
    .advantage-box .container {
        padding: 0 .5rem;
    }
    .advantage-box .container>p {
        margin:0;
    }
    #adv_title h2{
        margin-bottom: 0;
        font-size: 70px;
        padding-top: 1.5vh;

    }

    #advantages .headlinewrap{
        /*position: sticky; */
    top:0;
    left:0;
    display:block;
    background:white;
    flex:0 0 0;
    z-index:1;
    }

    #advantages .container.col2{
        /*position:sticky;*/

        top:0;
        left:0;
        
        display:block;
        background:white;
        flex:0 0 0;

            margin-top: 0;
    padding-top: 0;
    margin-bottom: 0;
    padding-bottom: 0;
    }

    

    .membrane-left {
        width: 58%;
    }

    .membrane-left > img {
        margin-left: unset;
        margin-right: unset;
    }

    .membrane-right {
        width: 38%;
        height: 100%;
        margin-top: -100px;
        z-index: 0;
        text-align: left;
    }

    #protected_membrane .membrane-right {
        margin-top: 10px;
    }

    #final_payoff {
        background-image: url('../img/hardhat_background_1.jpg');
        background-size: cover;

    }

    #final_payoff h2 {
        padding-top: 100px;
    }

    
    #final_payoff p {
        font-size: 1.75rem;
        line-height: 2rem;
    }

    
    #sticky_callout {
        position: fixed;
        bottom: -8rem;
        left: 11vw;
        transform: scale(.7);
        z-index: 100 !important;
        width: 500px;
    }

    #sticky_callout.ab{
        position:absolute;
        left:11vw;
        transform: scale(1);
        top:55%;

    }

       #sticky_callout.ss{
        display:none;
    }

    #firstcall #pmr_cover2 ,
    #sticky_callout #pmr_cover {
        display: inline-block;
        width: unset;
        top: 110px;
    }

    #firstcall #pmr_cover2{
        margin-top:-160px;
    }

    #firstcall a.find {
    margin-top: 0;
    display: inline-block;
    height: auto;
    margin-left: -320px;
    margin-bottom:0;
    }
    #firstcall > p{
        margin-left:-230px;
    }
}


@media not all and (min-resolution:.001dpcm) and (min-width:800px) { @media {


  .scroll-down {
    position:absolute;
    top:90vh;
  }

}}

@media screen and (max-height:800px) {
     section{
        height:auto;
    }

   

}


@media screen and (min-width:1200px) {

    h1 {
        text-align: left;
        padding-left: 35%;
    }

    

     #sticky_callout.ab{
        left:1vw;
        top:30%;

    }

    #firstcall{
        padding-left:60px;
    }

  
}

/* 2K/4K Monitors */

@media screen and (min-width:1500px) {


    #firstcall{
        padding-left:100px;
    }

     #sticky_callout.ab{
        left:11vw;
        top:30%;

    }

   
    #top_slide {
        background-image: url('../img/large/header_img@2x.jpg');
    }

    #stone_ballast {
        background-image: url('../img/large/pmr_stoneballast@2x.jpg');
        height: calc(70vh - 2.5rem);
        max-height: calc(70vh - 2.5rem);
    }
    
    #amenity {
        background-image: url('../img/large/amenity2@2x.jpg');
        height: calc(38vh - 2.5rem);
    }
    
    #green_roof {
        background-image: url('../img/large/green_roof2@2x.jpg');
        height: calc(38vh - 2.5rem);
    }

    #final_payoff {
        background-image: url('../img/hardhat_background_1.jpg');
    }

    h1,
    h2 {
        font-size: 5.5rem;
    }

    h1 {
        padding-left: 40%;
    }

    h2 {
        line-height: 5.5rem;
    }
    
    #final_payoff h2,
    #final_payoff p {
        position: relative;
        left: 10%;
    }
}

#unprotected_membrane .membrane-left img{
    margin:auto;
    max-height:45vh;
}

#unprotected_membrane .membrane-right img{
    margin:auto;
    max-height:95vh;
}


#protected_membrane .membrane-left img{
    margin:auto;
    max-height:45vh;
}

#protected_membrane .membrane-right img{
    margin:auto;
    max-height:90vh;
}
