/* Base Resets Global Styles */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
}

body {
    background-color: #f4f7f6;
    color: #333;
    line-height: 1.6;
}

/* Navigation Bar Layout */
.navbar {
  	/* Core sticky behavior */
  	position: -webkit-sticky; /* Support for Safari browser */
  	position: sticky;         /* Standard sticky positioning */
  	top: 0;                   /* Locks the element exactly at the top edge */
  
  	/* Layout and layering */
  	width: 100%;              /* Ensures the menu stretches full-width */
  	z-index: 1000;            /* Forces the menu to stay layered over other content */
	
	display: flex;
    justify-content: space-between;
    align-items: center;
    background-color: #4e3c2c;
    padding: 20px 10%;
    color: #fff;
}

.nav-links {
    display: flex;
    list-style: none;
}

.nav-links li {
    padding: 0 20px;
}

.nav-links a {
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: color 0.3s ease;
}

.nav-links a:hover {
    color: #1abc9c;
}

/* Hero Starts */
.hero {
    /*background: linear-gradient(rgba(0,0,0,0.5), rgba(0,0,0,0.5)), url('https://picsum.photos') no-repeat center center/cover;*/
    background: url('../images/Keyhero.jpg')no-repeat center center/cover;
	height: 60vh;
	width: 100%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    padding: 0 20px;
}
/* Target mobile screens in portrait mode */
@media screen and (max-width: 767px) and (orientation: portrait) {
  .hero {
    background: url('../images/MobileKeyhero.jpg')no-repeat center center/cover;
  }
}


.hero h1 {
    font-size: 3rem;
    margin-bottom: 10px;
}

.hero p {
    font-size: 1.2rem;
    margin-bottom: 20px;
    max-width: 600px;
}

.btn {
    padding: 12px 30px;
    background-color: #1abc9c;
    border: none;
    border-radius: 5px;
    color: #fff;
    font-size: 1rem;
    cursor: pointer;
    transition: background 0.3s ease;
}

.btn:hover {
    background-color: #16a085;
}
/*Hero Ends*/

/* Features Start */
.features-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; /* Allows cards to wrap down on smaller viewports */
    padding: 50px 10%;
    gap: 20px;
}

.feature-card {
    flex: 1 1 calc(33.333% - 20px); /* Grows, shrinks, and bases width dynamically */
    min-width: 250px; /* Prevents card columns from getting too narrow */
    background-color: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    text-align: center;
}

.feature-card h3 {
    margin-bottom: 15px;
    color: #2c3e50;
}
/* Features End */

/*Statement PieceStart*/
.title {
    background: linear-gradient(rgba(78,60,44,0.5), rgba(78,60,44,0.5));
	/*height: 60vh;*/
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #fff;
    padding: 0 20px;
}

.title h1 {
    font-size: 3rem;
    /*margin-bottom: 10px;*/
}

.title p {
    font-size: 1.5rem;
    margin-bottom: 20px;
    max-width: 600px;
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .title h1 {
    font-size: 1.5rem;
	/*line-height: 1.2; /* Adjust as needed */
	padding: 12px;  
  }
}

@media only screen and (max-width: 767px) and (orientation: portrait) {
  .title p {
    font-size: 1.3rem;
	padding-bottom: 20px;  
	line-height: .9; /* Adjust as needed */
  }
}
/*Statement Piece End*/

/* Shop Start */
.title2{color:bisque;
text-align:center;
font-size:24px;
margin-bottom:-24px; }

.shop-container {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap; /* Allows cards to wrap down on smaller viewports */
    padding: 50px 10%;
    gap: 20px;
}

.shop-card {
    flex: 1 1 calc(33.333% - 20px); /* Grows, shrinks, and bases width dynamically */
    min-width: 250px; /* Prevents card columns from getting too narrow */
    background-color: #fff;
    padding: 30px;
    border-radius: 8px;
    box-shadow: 0 4px 6px rgba(0,0,0,0.05);
    text-align: center;
}

.shop-card h3 {
    margin-bottom: 15px;
    color: #2c3e50;
}

/*Shop End*/

/*Contact Start*/
.con {
	background: #fff;
	/*height: 60vh;*/
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    text-align: center;
    color: #a19991;
    padding: 0 20px;
}

.con h1 {
    font-size: 2rem;
    /*margin-bottom: 10px;*/
}
.con p {
    font-size: 1.5rem;
    margin-bottom: 20px;
    max-width: 600px;
}
@media only screen and (max-width: 767px) and (orientation: portrait) {
  .title p {
    font-size: 1.3rem;
	padding-bottom: 20px;  
	line-height: .9; /* Adjust as needed */
  }
}
/*Contact End*/

/* Footer Starts */
footer {
    background-color: #2c3e50;
    color: #fff;
    text-align: center;
    padding: 20px;
    width: 100%;
}

/* Media Query For Mobile Devices (Max-width: 768px) */
@media screen and (max-width: 768px) {
    .navbar {
        flex-direction: column; /* Stack logo above links on mobile */
        gap: 15px;
        padding: 20px;
    }

    .nav-links {
        padding: 0;
    }

    .nav-links li {
        padding: 0 10px; /* Adjust link spacing for smaller screen widths */
    }

    .hero h1 {
        font-size: 2rem; /* Drop font sizing to match mobile layout constraints */
    }

    .hero p {
        font-size: 1rem;
    }

    .features-container {
        padding: 30px 20px;
    }

    .feature-card {
        flex: 1 1 100%; /* Force features cards into a single column stack */
    }
}