@import url('https://fonts.googleapis.com/css2?family=Taviraj:wght@100;200;300;400;500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Lato:wght@100;300;400;700;900&display=swap');

:root {
    --offWhite: #f6f6f6;
    --lightGrey: #e4e4e4;
    --grey: #909090;
    --darkGrey: #4b4b4b;
    --charcoal: #262626;
    --tan: #bfb7a4;
    --yellow: #e3c51c;
}

body {
    background-color: #ffffff;
}

h1 {
    font-family: 'Taviraj', serif;
    color: var(--darkGrey);
    text-transform: uppercase;
    font-weight: 600;
}

h2 {
    font-family: 'Taviraj', serif;
    color: var(--darkGrey);
    font-weight: 400;
    font-size: 1.5rem;
}

@media (min-width: 768px) {
    h2 {
        font-family: 'Taviraj', serif;
        color: var(--darkGrey);
        font-weight: 400;
        font-size: 1.85rem;
    }
}

h3 {
    font-family: 'Taviraj', serif;
    color: var(--darkGrey);
    font-weight: 400;
    font-size: 1.3rem;
}

@media (min-width: 768px) {
    h3 {
        font-family: 'Taviraj', serif;
        color: var(--darkGrey);
        font-weight: 400;
        font-size: 1.65rem;
    }
}

h4 {
    font-family: 'Taviraj', serif;
    text-transform: uppercase;
    font-size: 1.1rem;
}

h5 {
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
    font-size: 1rem;
}

#header {
    background-color: var(--offWhite);
    background-image: url(../images/backMain.jpg);
    padding-top: 10px;
    padding-bottom: 10px;
}

#header .col-md-3:nth-child(1) {
    padding-top: 20px;
    text-align: center;
}

#header .col-md-6 p:nth-child(1) {
    text-transform: uppercase;
    font-family: 'Lato', sans-serif;
    font-weight: 400;
    font-size: .825rem;
}

@media (min-width: 768px) {
    #header .col-md-6 p:nth-child(1) {
        font-size: .9125rem;
    }
}

#header .col-md-6 p:nth-child(1)::before {
    content: '-------';
    letter-spacing: -2px;
    margin-right: 10px;
}

#header .col-md-6 p:nth-child(1)::after {
    content: '-------';
    letter-spacing: -2px;
    margin-left: 5px;
}

#header .col-md-6 p:nth-child(2) {
    font-family: 'Taviraj', serif;
    color: var(--darkGrey);
    text-transform: uppercase;
    font-size: .95rem;
    letter-spacing: 3px;
    font-weight: 600;
    width: 310px;
    padding-top: 3px;
    padding-bottom: 3px;
    margin-left: auto;
    margin-right: auto;
    border-top-style: solid;
    border-top-width: 1px;
    border-top-color: var(--darkGrey);
    border-bottom-style: solid;
    border-bottom-width: 1px;
    border-bottom-color: var(--darkGrey);
}

@media (min-width: 768px) {
    #header .col-md-6 p:nth-child(2) {
        font-size: 1.25rem;
        letter-spacing: 3px;
        width: 550px;
    }
}

#header .col-md-3 p:nth-child(1) {
    margin-top: -50px;
    margin-left: 95px;
}

@media (min-width: 768px) {
    #header .col-md-3 p:nth-child(1) {
        margin-top: 0px;
        margin-left: 0px;
    }
}

#header .col-md-3 p:nth-child(2) {
    margin-top: -20px;
    margin-left: 95px;
}

@media (min-width: 768px) {
    #header .col-md-3 p:nth-child(2) {
        margin-left: 0px;
    }
}

#mainNav {
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
}

#mainNav a:link,
#mainNav a:visited {
    color: var(--grey);
}

#mainNav a:hover {
    color: var(--tan);
}

.hideOnSmall {
    display: none;
}

@media (min-width: 768px) {
    .hideOnSmall {
        display: block;
    }
}

.hideOnLarge {
    display: block;
}

@media (min-width: 768px) {
    .hideOnLarge {
        display: none;
    }
}



#header .col-md-3:nth-child(3) {
    text-align: center;
    padding-top: 5px;
    font-family: 'Lato', sans-serif;
}

@media (min-width: 768px) {
    #header .col-md-3:nth-child(3) {
        padding-top: 25px;
    }
}

#header .col-md-3:nth-child(3) p:nth-child(2) {

    text-transform: uppercase;
    font-size: .925rem;
    font-weight: 400;
    color: var(--charcoal)
}

#header .col-md-3:nth-child(3) p:nth-child(3) {
    margin-top: -20px;
    font-size: 1.125rem;
    font-weight: 700;
}

#header .col-md-3:nth-child(3) a:link,
#header .col-md-3:nth-child(3) a:visited {
    text-decoration: none;
    color: var(--charcoal)
}

#header .col-md-3:nth-child(3) a:hover {
    color: var(--tan);
}

#collapsePanel {
    background-color: var(--offWhite);
    background-image: url(../images/backMain.jpg);
    font-family: 'Lato', sans-serif;
    text-transform: uppercase;
    padding-top: 10px;
    padding-left: 120px;
    padding-right: 120px;
    padding-bottom: 10px;
}

#collapsePanel a:link,
#collapsePanel a:visited {
    color: var(--grey);
    text-decoration: none;
}

#collapsePanel a:hover {
    color: var(--tan);
}

#myCarousel .overlay {
    position: absolute;
    padding-top: 5%;
    z-index: 100;
    text-align: center;
    width: 100%;
    height: 100%;
    background-color: rgba(25, 25, 25, .25);
}

@media (min-width: 992px) {
    #myCarousel .overlay {
        padding-top: 15%;
    }
}

@media (min-width:1400px) {
	#myCarousel .overlay {
		padding-top:20%;
	}
}

#myCarousel .overlay img {
    max-width: 42%;
}

@media (min-width: 768px) {
    #myCarousel .overlay img {
        max-width: 100%;
    }
}

#myCarousel .overlay p:nth-child(2) {
    font-family: 'Taviraj', serif;
    color: #ffffff;
    text-transform: uppercase;
    font-size: 1.25rem;
    letter-spacing: 3px;
    font-weight: 600;

    padding-top: 15px;
    margin-left: auto;
    margin-right: auto;
}

@media (min-width: 768px) {
    #myCarousel .overlay p:nth-child(2) {
        font-size: 2.75rem;
        padding-top: 30px;
        font-weight: 400;
    }
}

@media (min-width: 992px) {
    #myCarousel .overlay p:nth-child(2) {
        font-size: 4rem;
        padding-top: 30px;
        font-weight: 400;
    }
}

#myCarousel .carousel-indicators {
    z-index: 300;
}

.carousel-inner {
	max-height:95vh;
}

.carousel-inner img {
    width: 100%;
}

#intro {
    padding-top: 90px;
    padding-bottom: 50px;
}

#intro .col-md-7 {
    padding-left: 15px;
}

@media (min-width: 768px) {
    #intro .col-md-7 {
        padding-left: 75px;
    }
}

#intro p {
    font-family: 'Lato', sans-serif;
    font-size: 1.125rem;
    font-weight: 300;
    color: var(--darkGrey);
}

#intro .btn {
    background-color: var(--tan);
    color: #ffffff;
    text-transform: uppercase;
    border-radius: 0px;
    -webkit-transition: background .5s linear;
    -moz-transition: background .5s linear;
    -ms-transition: background .5s linear;
    -o-transition: background .5s linear;
    transition: background .5s linear;
}

#intro .btn:hover {
    background-color: var(--darkGrey);
}

#intro .horiLine {
    display: block;
    background-color: var(--grey);
    height: 7px;
    width: 120px;
    margin-top: 10px;
    margin-bottom: 25px;
}

#content {
    padding-top: 50px;
    padding-bottom: 50px;
}

@media (min-width: 768px) {
    #content {
        padding-top: 90px;
    }
}

#content p,
#content ul {
    font-family: 'Lato', sans-serif;
    font-size: 1.125rem;
    font-weight: 300;
    color: var(--darkGrey);

}

#content p.lead {
	font-size:1.2rem;
	font-weight:400;
}

#content a {
	color: var(--darkGrey);
	font-weight:300;
	text-decoration:none;
}

#content a:hover {
	text-decoration:underline;
}

#content .btn {
    background-color: var(--tan);
    color: #ffffff;
    text-transform: uppercase;
    border-radius: 0px;
	outline:none;
    -webkit-transition: background .5s linear;
    -moz-transition: background .5s linear;
    -ms-transition: background .5s linear;
    -o-transition: background .5s linear;
    transition: background .5s linear;
}

#content .btn:hover {
    background-color: var(--darkGrey);
}

#content .btn-md {
	font-weight:bold;
	margin-bottom:25px;
}

#content .horiLine {
    display: block;
    background-color: var(--grey);
    height: 7px;
    width: 120px;
    margin-top: 10px;
    margin-bottom: 25px;
}

#content .horiLine2 {
	display:block;
	background-color:var(--grey);
	height:3px;
	width:250px;
	margin-top:10px;
	margin-bottom:25px;
}

#content.contactPage {
    background-image: url(../images/backContact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
}

#weServe {
	margin-bottom:1rem; /* margin on div instead of ul for stacking */
}

#weServe ul {
	list-style:none;
	margin-bottom:0; /*so they stack okay */
}

#leadIns {
    background-color: var(--offWhite);
    padding-top: 90px;
    padding-bottom: 50px;
}

#leadIns .bigVert {
    position: absolute;
    margin-top: -175px;
    margin-left: 82%;
    height: 125px;
    width: 15px;
    background-color: var(--grey);

}

#leadIns a:link,
#leadIns a:visited {
    width: 250px;
    height: 187px;
    text-align: center;
    text-decoration: none;
    font-family: 'Lato', sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    text-transform: uppercase;
    padding-top: 180px;
    color: #ffffff;
    -webkit-transition: all .5s ease-in-out;
    -moz-transition: all .5s ease-in-out;
    -ms-transition: all .5s ease-in-out;
    -o-transition: all .5s ease-in-out;
    transition: all .5s ease-in-out;
    margin-bottom: 50px;
	margin-left:8px;
	margin-right:8px;
}

@media (min-width: 1400px) {

    #leadIns a:link,
    #leadIns a:visited {
        margin-bottom: 40px;
    }
}

#leadIns a:link span {
    background-color: var(--darkGrey);
    display: block;
}

#leadIns a:hover {
    opacity: .5;
}

#leadIns a:nth-child(1) {
    background-image: url(../images/leadIns/additions.jpg);
	background-repeat:no-repeat;
}

#leadIns a:nth-child(2) {
    background-image: url(../images/leadIns/kitchens.jpg);
	background-repeat:no-repeat;
}

#leadIns a:nth-child(3) {
    background-image: url(../images/leadIns/decks.jpg);
	background-repeat:no-repeat;
}

#leadIns a:nth-child(4) {
    background-image: url(../images/leadIns/bathrooms.jpg);
	background-repeat:no-repeat;
}

#leadIns a:nth-child(5) {
    background-image: url(../images/leadIns/construction.jpg);
	background-repeat:no-repeat;
}

#leadIns a:nth-child(6) {
    background-image: url(../images/leadIns/quote.jpg);
	background-repeat:no-repeat;
}

#subLeadIns {
	max-width:1060px;
}
@media (min-width:1640px) {
	#subLeadIns {
		max-width:100%;
	}
}

#videoFacebook {
    background-color: var(--tan);
    color: var(--charcoal);
    padding-top: 25px;
    padding-bottom: 25px;
}

#videoFacebook .col-md-8 {
    padding-top: 15px;
	padding-bottom:15px;
}
@media (min-width:768px) {
	#videoFacebook .col-md-8 {
		padding-top:50px;
		padding-bottom:50px;
	}
}

@media (min-width:1600px) {
	#videoFacebook .col-md-4 {
		padding-top:25px;
		padding-bottom:25px;
	}
}

#testimonial {
    padding-top: 75px;
    padding-bottom: 75px;
    color: var(--offWhite);
    background-color: var(--grey);
}

#testimonial span:before {
    content: '\2605\2605\2605\2605\2605';
    color: var(--yellow);
    font-size: 1.75rem;
}

#testimonial p:nth-child(2) {
    font-family: 'Taviraj', serif;
    font-size: 1.5rem;
    font-style: italic;
    font-weight: 300;
}

#testimonial p:nth-child(3) {
    font-family: 'Lato', sans-serif;

}

#contact {
    background-image: url(../images/backContact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    padding-top: 75px;
    padding-bottom: 75px;
}

#logos {
    background-color:#e3e3e3;
	text-align: center;
    padding-top: 35px;
    padding-bottom: 35px;
}

#logos .row {
	max-width:1400px;
}

#galleryAdditions, 
#galleryKitchen,
#galleryDecks,
#galleryBath,
#galleryNewConstruction {
	text-align:center; /* centers img in div */
}

#galleryAdditions img, 
#galleryKitchen img,
#galleryDecks img,
#galleryBath img,
#galleryNewConstruction img {
	border:4px solid var(--tan);
	margin-bottom:2.0rem;
	width:198px;
	height:130px;
}


#footer {
    padding-top: 35px;
    padding-bottom: 35px;
    background-color: var(--charcoal);
    color: var(--offWhite);
}

#footer p {
    font-family: 'Lato', sans-serif;
}

#footer a:link,
#footer a:visited {
    color: var(--offWhite);
    text-decoration: none;
}

#footer a:hover {
    color: var(--tan);
}

.fa-facebook-square {
    font-size: 2.25rem;
}

.fa-instagram-square {
    font-size: 2.25rem;
    margin-left: 15px;
    ;
}

.fa-youtube-square {
    font-size: 2.25rem;
    margin-left: 15px;
}

.vertLine {
    display: block;
    background-color: var(--lightGrey);
    height: 75px;
    width: 7px;
    margin-top: 10px;
    margin-bottom: 25px;
}

.positioned {
    margin-top: -50px;
    z-index: 150;
    position: relative;
    margin-left: 95%;
}

.introPic {
    z-index: 50;
}

#topBtn {
	display: none;
	position: fixed;
	bottom: 0px;
	right: 0px;
	z-index: 99;
	width:50px;
	height:50px;
	outline: none;
	background-color: var(--darkGrey);
	color: white;
	font-size:1rem;
	font-weight:bold;
	padding-top:.75rem;
	text-align:center;
	border-color: #476e1e;
	border: 1px solid var(--darkGrey);
	border-radius: 50px 0 0 0;
		-moz-border-radius: 50px 0 0 0;
		-webkit-border-radius: 50px 0 0 0;
  
}

#topBtn:hover {
	background-color: var(--grey);
}
