body,h1,h2,h3,h4,h5,h6 {
  font-family: "Lato", sans-serif;
}

body, html {
  height: 100%;
  scroll-behavior: smooth;
}

h1, h2, h3, h4, h5, h6 {
	color: #000;
}

p {
	text-align: justify;
	color: #777;
}

h1 {
	font-size:2em;
	font-weight:bold;
}

h2 {
	font-size:1.7em;
	font-weight:bold;
}

h3 {
	font-size:1.5em;
	font-weight:bold;
}

h4 {
	font-size:1.3em;
	font-weight:bold;
}

h5 {
	font-size:1.1em;
	font-weight:bold;
}

p {
	font-size: 1.1em;
	line-height:1.75em;
}

.rds-bold {
  font-weight: bold;
}

/* MY CUSTOM STYLING *

/* Use to remove padding from paragraph text */
.rds-nopad {
  padding: 0;
}

/* Various Paddings for boxes */
.rds-pad-5 {
  padding: 5px !important;
}

.rds-pad-10 {
  padding: 10px !important;
}
 .rds-pad-15 {
   padding: 15px !important;
 }

 .rds-pad-20 {
   padding: 20px !important;
 }

 .rds-row-pad {
   padding: 0px 10px 20px 10px !important;
 }

.rds-blackoverlay {
  background:rgba(0,0,0,0.5);
  position:absolute;
  top: 0;
  left:0;
  width: 100%;
  height: 100%;
}

/* ---- Controls the headings on each page ---- */
.rds-title-holder {
  padding: 1%;
  text-align: center;
}

.rds-title {
  padding-left: 10px;
}

/* ---- Controls the bottom footer text ---- */
.rds-footer-text {
  font-size: 0.75em;
  padding-top: 1em;
}

/* ---- Controls the width of the images to product links ---- */
.rds-front-pg-img {
  width: 100%;
}

.rds-map-link {
  color:#0000FF;
  text-align:center;
}

/* ------ W3.CSS STYLES AND OVERRIDES ----- */

/* ------ Styling of parallax images----- */
/* Create a Parallax Effect */
.bgimg-1, .bgimg-2, .bgimg-3, .bgimg-pg {
  background-attachment: fixed;
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
}

/* First image (Logo. Full height) */
.bgimg-1 {
  background-image: url("../images/topheader.png");
  min-height: 80%;
}

/* Second image (Portfolio) */
.bgimg-2 {
  background-image: url("../images/insidestore.png");
  min-height: 400px;
}

/* Third image (Contact) */
.bgimg-3 {
  background-image: url("../images/opal-jewllery.jpg");
  min-height: 400px;
}
/* Background header image for all other pages */

.bgimg-pg {
  background-image: url("../images/topheader.png");
  background-position: center;
  height: 56vw;
  max-height: 562px;
}

.w3-wide {
  letter-spacing: 10px;
}
.w3-hover-opacity {
  cursor: pointer;
}

/* Turn off parallax scrolling for tablets and phones */
@media only screen and (max-device-width: 1600px) {
  .bgimg-pg  {
    background-attachment: scroll;
    height: 60%;
  }
}

@media only screen and (max-device-width: 767px) {
  .bgimg-1, .bgimg-2, .bgimg-3 {
    background-attachment: scroll;
    min-height: 400px;
  }
}
/* ------ END - STYLING OF PARALAX IMAGES ----- */

/* ------ NAVBAR EXTRA STYLING ----- */
/* Adds extra padding to override the default by w3.css */
#myNavbar {
  padding-left: 10px;
  padding-right: 10px;
}

.w3-bar-item, .rds-nav-dropdown {
  padding-top: 15px !important;
  padding-bottom: 15px !important;
  color: white;
}
/* Makes the text black on scroll */
.w3-card .w3-bar-item, .w3-card .rds-nav-number, .w3-card .w3-dropdown-hover .rds-nav-dropdown {
    color: black;
}

/* Make dropdown menu text black */
.rds-black {
    color: black;
}

/* Makes the dropdown visible when scrolled */
.w3-bar {
  overflow: visible !important;
}

/* Controls the menu text in resposive mode */
.rds-menu-button {
  font-family: "Lato", sans-serif;
  font-size: 15px;
  padding-left: 10px;
}

/* ------ FRONT PAGE HOVER FOR PRODUCT LINKS  ----- */
.rds-hover-box {
  position: relative;
  transition: all .5s ease;
}

.rds-hover-box-overlay {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  height: 100%;
  width: 100%;
  opacity: 0;
  transition: all .5s ease;
  background-color:rgba(0,0,0,0.5);
}

.rds-hover-box-text {
  position: absolute;
  top: 50%;
  left: 50%;
  color: #fff;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  text-align: center;
}

.rds-hover-box:hover {
  transform: scale(1.05);
}

.rds-hover-box:hover .rds-hover-box-overlay {
  opacity: 1;
}

/* Controls Padding on phone number */
.rds-nav-number {
  padding-top:15px;
  padding-left: 15px;
  padding-right:15px;
  margin:0;
  color: white;
}
/* ------ RESPONSIVE IFRAMES  ----- */
.rds-resposive-iframe {
    overflow:hidden;
    padding-bottom:56.25%;
    position:relative;
    margin: auto;
}

.rds-resposive-iframe iframe {
    left:0;
    top:0;
    height:100%;
    width:100%;
    position:absolute;
}

/* ------ GRIDGALLERY CONTROLS - PURE CSS  ----- */

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

label[for] { cursor: pointer; }
input[type="checkbox"] { display: none; }

.lightbox {
  width: 100vw;
  position: fixed;
  top: 0;
  left: 0;
  min-height: 100vh;
  z-index: 2000;
  overflow: auto;
  -webkit-transform: scale(0);
  -ms-transform: scale(0);
  transform: scale(0);
  -webkit-transition: -webkit-transform .5s ease-in-out;
  transition: transform .5s ease-in-out;
  background-color: rgba(0,0,0,0.5);
}

.lightbox img {
  position: fixed;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  max-width: 96%;
  max-height: 96%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}

input[type="checkbox"]:checked + .lightbox {
  -webkit-transform: scale(1);
  -ms-transform: scale(1);
  transform: scale(1);
}

input[type="checkbox"]:checked ~ .grid {}

.grid {
  width: 100%;
  height: 100%;
  z-index: 0;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-align-items: flex-start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-align-content: flex-start;
  -ms-flex-line-pack: start;
  align-content: flex-start;
  padding: 16px;
  overflow: auto;
  text-align: center;
}

.grid .grid-item {
  width: 25%;
  display: inline-block;
  padding: 16px;
  opacity: .75;
  -webkit-transition: opacity .5s;
  transition: opacity .5s;
}

.grid .grid-item:hover { opacity: 1; }
@media screen and (max-width: 1024px) {

.grid .grid-item { width: 50%; }
}
@media screen and (max-width: 480px) {

.grid .grid-item { width: 100%; }
}

.grid img {
  max-width: 100%;
  max-height: 100%;
  box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25);
}
