*{
    box-sizing:border-box; 
     -moz-box-sizing:border-box; 
     -webkit-box-sizing:border-box; 
     -ms-box-sizing:border-box;
}

body{
    margin:0;
    font-size:62.5%;
    font-weight: 400;
}

a{
    text-decoration: none;
    font-family: 'Raleway', sans-serif;
}

h1, h2, h3, h4, li, blockquote, form{
    font-family: 'Raleway', sans-serif;
}

p, #content li, .flexTable span{
    font-size: 1.5em;
    font-family: 'Raleway', sans-serif;
    color: #444;
}

.btn, .btn-success{
    background: #7FCBAE;
    box-shadow: 0px 0px 0px 6px #7FCBAE; 
    color: #FFF;
    border: 2px solid white;     
    font-size: 18px;
    display: inline-block;
    font-size: 1.2rem;
    padding:10px 25px;
    font-weight: 400;
    margin-left: 6px;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
}

.btn:hover, .btn-success:hover{background: #ed0677;
    box-shadow: 0px 0px 0px 6px #ed0677; }

header{
    max-height:142px;
    margin-top: 20px;
    padding:0 5%;
}

header::after{
    content: "";
    display: block;
    clear:both;
}

.handle{display:none;}

#navContainer{
    padding-top:20px
}


#mainNav{
    float:right;
    margin-right: 20px;
}

#social{float:right;;border-left: 1px solid #444;padding-left:5px;margin-top:9px;}
#social > a i{color: #7FCBAE;font-size: 3em;margin-left:8px;}
#social > a i:hover{color:#444; -webkit-transition: all 0.25s ease-in; transition: all 0.25s ease-in;}

#mainNav nav ul{
    display: table;
    width: 550px;
    padding-left: 0;
    list-style-type: none;
    white-space: nowrap;
}

#mainNav nav ul li{
    display: table-cell;
    text-align: center;
}

#mainNav nav ul li a{
    color:#444444;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
    font-family: 'Signika', sans-serif;
    font-size: 1.7em;
}

#mainNav nav ul li:hover a{
    color:#7FCBAE;
}

#mainNav nav ul li.active a{padding-bottom: 3px; border-bottom:2.4px solid #7FCBAE;}

#mainNav nav ul li:nth-last-child(2){padding-right:3px;}

#logo{float:left;}

#logo img{
    max-width:280px;
    width: 280px;
}

.btnBox{   
    background: #ed0677;
    box-shadow: 0px 0px 0px 4px #ed0677; 
    border: 2px solid white;     
    font-size: .9em;
    padding:3px 0;
    -webkit-transition: all 0.25s ease-in;
    transition: all 0.25s ease-in;
    width:22%;
}
.btnBox a{color:#FFF !important;}
.btnBox:hover{background:#7FCBAE;box-shadow: 0px 0px 0px 4px #7FCBAE; }
.btnBox:hover a{color:#FFF !important;}

.hero{overflow: hidden;margin-top:30px;padding:0 5%;max-height: 480px;}
.hero div{background-size: cover;width: 100%;height:480px;}

.heroText{
    display: flex;
    flex-direction: row;
    align-items: flex-end;
    position: relative;
    z-index: 998;
    color:#FFF;
    padding-bottom: 50px;
    padding-left: 5%;
}
.heroText span{flex: 1;max-width:45%;}
.heroText h2{font-size: 2.3rem;font-weight: 600; color:#FFF;text-transform: uppercase;margin-bottom: 0;}

.heroText p{margin-top: 0; font-size: 1.3rem;font-weight: 400; color:#FFF;}

#homeWrapper{
    display: flex;
    padding-bottom: 50px;
    padding:0 5%;
    align-items:center;
    margin:40px 0;
}

.homePhotos{flex:1.5;position: relative;}
.homePhotos img{max-width: 90%;}
.homePhotos img:nth-child(1){position: relative; z-index: -1;}
.homePhotos img:nth-child(2){position: absolute;z-index: 1;top: 10%; left: 25%;}
.homeContent{flex: 1;}
.homeContent h2{color: #ED0677;	font-family: Raleway; font-size: 3.2em;margin-bottom: 0;font-weight: 600;}
.homeContent p{margin-top: 5px; font-size: 17px; line-height: 28px;font-weight: 500;}

.parallaxHome{background-image: url(/images/uploads/site/pre-footer-bck.png);}
.parallaxHome div{width: 45%;padding-left: 5%;}
.parallaxCakes{background-image: url(/images/uploads/site/our-cakes-pre-footer.png);margin-top:40px;}
.parallaxCakes div, .parallaxWork div{width: 100%;padding:5%;text-align:center;}
.parallaxWork{background-image: url(/images/uploads/site/our-work-pre-footer.jpg);margin-top:40px;}

.parallax {
    /* The image used */
    background-color: #000;
    /* Set a specific height */
    min-height: 300px; 

    /* Create the parallax scrolling effect */
    background-attachment: fixed;
    background-position: top;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

#preFooter h3{
    color: #ED0677;
    font-size: 3.5em;
    font-weight: 600;
    margin-top:10px;
    margin-bottom: 5px;
    text-transform: uppercase;
    text-shadow:0 0 20px rgba(255,255,255,.6);
}

#preFooter p{
    color:#444;
    font-size: 1.8em;
    line-height: 25px;
    margin: 0 0 15px;
    text-shadow:0 0 20px rgba(255,255,255,.6);
}

.testimonials{padding:0 8%;margin: 50px 0;}
.tContent{padding: 0 30px;}
.tBar{border-right:1px solid rgba(0,0,0,.15);}
.tContent p{font-style: italic;}
.tContent span{display: block;font-style: normal;text-align: right;}


.internalHeader{text-align: center;margin-bottom: 60px;}
.internalHeader h1{text-align: center;color:#444444;font-size: 6.2em;text-transform: uppercase;margin-bottom: 0;}
.internalHeader span{
    display: inline-block;
    text-align: center;
    color:#444444;
    font-family: 'Raleway', sans-serif;
    font-size: 4em;
    font-weight:600;
    padding-bottom: 10px;
    border-bottom:4px dotted #FF00FF;
}


#content{padding:0 5%;overflow:hidden;}

#content h2{
    color: #ED0677;
    font-size: 3.5em;
    margin-bottom:0;
    text-transform: uppercase;
    font-weight: 700;
}

#content h3{
    color:#7FCBAE;
    font-size: 2.8em;
    margin-bottom:5px;
    text-transform: uppercase;
}

#content p{
   color: #444444;	
    font-size: 1.7em;	
    line-height: 30px;
    margin-top:5px;
}

blockquote, blockquote p{
    color:#7FCBAE !important;
    margin: 0 !important;
    font-size: 1.5em !important;
    font-style: italic;
    font-weight: 700 !important;
    line-height: 30px !important;
}

.sbys{display:flex;margin-bottom: 30px;}

.sbys div img{height:auto;width: 100%;height: auto;}
.sbys .contentLeft{flex:1; flex-basis: 70%; align-self: center;}
.sbys .contentRight{flex:1; flex-basis: 70%; align-self: center;}
.sbys .imageRight{margin-left:40px;}
.sbys .imageLeft{margin-right: 40px;}

.center{text-align: center;}

.awardsRecs{margin-top:60px;}
.awardsRecs h2{text-align:center;}
.awards{flex-wrap:wrap;flex-basis:50px;justify-content:space-evenly;}
.awards div{margin-top:20px;flex-basis:21%;}

.staffArea{margin-top:60px;}
.staffArea h2{text-align:center;}
.staff{flex-wrap:wrap;flex-basis:50px;justify-content:space-evenly;}
.staff div{margin-top:20px;flex-basis:21%;}

.flexTableMain{display: table;width:100%;}

.flexTableWrap{
    display:table-cell;
    flex-direction: row;
    justify-content: space-around;
    flex-wrap: wrap;
    flex-basis: 50%;
}
.flexTableWrap h3{text-align: center;}
.flexTableWrap::after{
    content: "";
    display: block;
    float:none;
}
.tableFlex{display: flex;justify-content: space-around;}
.flexTable{display: flex;flex-direction: column;}
.flexTable span{}
.line{border-left:5px dotted #ED0677;flex-basis: 1px;}


.faqWrapper h2{font-size: 1.77em !important;margin:0;color:#FFF !important;text-transform: none !important;font-weight: 400 !important;margin-bottom: 10px !important;}

.accordion {
  background-color: #7FCBAE;
  color: #FFF;
  cursor: pointer;
  padding: 18px;
  width: 100%;
  border: none;
  text-align: left;
  outline: none;
  font-size: 15px;
  transition: 0.4s;
}

.faqActive, .accordion:hover {
  background-color: #ccc;
}

.accordion:after {
  content: '\f067';
  font-family: "Font Awesome 5 Free";  
  color: #FFF;
  font-weight: bold;
  float: right;
  margin-left: 5px;
}

.faqActive:after {
    content: "\2796"; /* Unicode character for "minus" sign (-) */
}

.panel {
  padding: 0 18px;
  background-color: white;
  max-height: 0;
  overflow: hidden;
  transition: max-height 0.2s ease-out;
}

.flex{display:flex;}

.col1{flex:1;width:100%;}
.col2 {flex:1;display:inline-block;flex-basis: 49.9%;}
.col2:nth-child(odd) {padding-right: 5%;}
.col2:nth-child(even) {padding-left: 5%;}


form fieldset{display:block; margin-top:30px;border: 0;}
form fieldset div{display: inline-block;width:35%;}
form fieldset div:nth-of-type(odd){margin-right:30px;}

label, form legend{
	color:#454545;
	font-family:Arial, Helvetica, sans-serif;
	font-weight:bold;
	display:block;
	margin-bottom:3px;
    font-size:1.5em;
    margin-top:20px;
}

input{
	padding:10px;
    font-size:1.4em;
    width:100%;
}

textarea{	
    padding:10px;
    font-size:1.4em;
    width:72%;
}

select{width:auto;height:30px;}

footer{
    margin-top: 40px;
    display: table;
    table-layout:fixed;
    width: 100%;
    padding:0 5%;
    white-space: nowrap;
    border-top: 3px solid #7FCBAE;
}

footer #fRight, footer #fLeft{
    display: table-cell;
    vertical-align: top;
}

#fRight p{text-align: right;}

footer a{color:#444444;}
footer a:hover{opacity: .7;}



@media only screen and (max-width: 1059px) {
    .homePhotos{flex:1;position: relative;}
    .homePhotos img:nth-child(1){width:70%;}
    .homePhotos img:nth-child(2){width: 70%;}
}

@media only screen and (max-width: 1040px) {
    #mainNav{display: none;}

    .heroText{font-size: 3em;margin-top:30px;}
    
     #mainNav .responsive{
        display: block;
        width:100%;
        height:100%;
        opacity: 1;
      }
    
    #mainNav{
        display: block;
        float: none;
        top:120px;
        left: 0;
        width:100%;
        position: absolute;
        z-index: 999;
        
    }

     #mainNav nav{
        opacity: 0;
    -webkit-transition: all 0.30s ease-in;
    transition: all 0.30s ease-in;
     }
    
    #mainNav nav ul{display: none;}
    
       #mainNav nav.responsive ul{
        float:none;
        display: block;
        width:100%;
        text-align:center;
        margin:0 auto;
        padding:10px 0;
         position: relative;
         z-index: 999;
         display: block;
         background-color:#7FCBAE;
     }

     #mainNav nav ul li{
        display: block;
        padding:20px 0;
        border-bottom: 1px solid  rgba(245, 245, 245, 0.3);
        width:100%;
        margin:0 auto;
     }
    #mainNav nav ul li:hover{background-color:#ccc;}
     #mainNav nav ul li:nth-last-of-type(1){
        border-bottom:0;
        border:none;
         box-shadow:none;
    }
    
    #mainNav nav ul li:hover:nth-last-of-type(1) a{
        color:#223e7f;
    }
    #mainNav nav ul li:nth-last-child(2){padding-right:0;}
    
    #mainNav nav ul li a{
        color:#FFF;
        font-weight: normal;
        font-size: 18px;
    }
    #mainNav nav ul li:hover a{color:#FFF;}
    #mainNav nav ul li.active a{padding-bottom:0; border-bottom:0;}
    #handler{
        width: 35px;
        height: 30px;
        display: block;
        cursor: pointer; 
        float:right;
        padding: 10px 35px 16px 0px; 
    }
    #handler i{
        color:#ED0677;
        font-size: 3em;
    }
    #handler.active i{color:#444 !important; }
    footer{display: block;padding: 2%;white-space: normal;}
    footer #fRight, footer #fLeft {
        display: block;
        width: 100%;
        vertical-align: middle;
        margin-top: 35px;
    }
    footer #fRight p, footer #fLeft p{text-align: center;}
}

@media only screen and (max-width: 859px) { 
    #preFooter div {width: 100%;text-align: center;padding: 0 5%;}
}

@media only screen and (max-width: 800px) { 
    .heroText{
        display: block; 
        width: 100%;
        text-align: center;
        max-width:100%;
        top: 40%;
        margin: 0;
        padding: 0 2%;
        -webkit-transform: none;
        transform:none;
    }
    
    .contentImg img{width: 100%;}
    #content, .contentImg, .col1, .col2{display: block;width:100%;text-align: center;flex: none;}
    .col2:nth-child(odd) {padding-right: 0 !important;}
    .col2:nth-child(even) {padding-left: 0 !important;}
    .contentTxt ul{list-style: none;padding-right: 0;}
    .sbys{flex-direction:column;}
    .sbys .contentLeft{flex:1; flex-basis: 100%;}
    .sbys .contentRight{flex:1; flex-basis: 100%;}
    .sbys .imageRight{margin-left: 0;margin-top:20px;}
    .sbys .imageLeft{margin-right: 0;order:2;margin-top:20px;}
}

@media only screen and (max-width: 649px) { 
    .heroBck{background-position: right;}
    .heroText{background-color: rgba(0,0,0,.3);display: flex;top:0;align-items: center;justify-content: center;}
    .heroText span {max-width: 99%;}
    #homeWrapper{
        flex-direction: column;
        text-align: center;
    }
    .homePhotos img{max-width: 90%;}
    .homePhotos img:nth-child(1){position: relative; z-index: -1;}
    .homePhotos img:nth-child(2){display: none;}
    .flexTableWrap{display:block;}
    .tableFlex{flex-direction: column;}
    .line{display:none;}   
    footer #fLeft p a{display: block;margin-bottom: 5px;}
    footer #fLeft p span{display: none;}
    footer #fRight p span{display: block;}
}

@media only screen and (max-width: 599px) {
    .testimonials{padding:0 8%;margin: 50px 0;}
    .tBar{border-right:none;}

}

@media only screen and (max-width: 474px) {
    header{max-height: 100%;}
    #logo{float: none;display: block;text-align: center;}
    #logo img{width:80%;max-width: 100%; margin: 0 auto}
    #social{float:none;border: none;text-align: center;}
    #handler{float:none;margin:30px auto 0;}
    #mainNav{top:260px;}
}
