::selection {
	background: #000;
	/* Replace with your desired background color */
	color: #fff;
	/* Replace with your desired text color */
}

/* For Firefox, also add this: */
::-moz-selection {
	background: #DEA193;
	color: #ffffff;
}

body {
	font-family: "DM Sans", sans-serif;
	font-weight: 400;
	color: #000;
	font-size: 14px;
	font-weight: 300;
	overflow-x: hidden;
}

h1,
h2,
h,
h4,
h5,
h6 {
	font-family: "DM Sans", sans-serif;
	font-weight: 400;
	text-transform: capitalize;
	color: #000;
}

a,
a:hover,
a:focus {
	text-decoration: none;
}

button {
	background-color: #008080;
	text-transform: capitalize;
	padding: 15px 25px 12px 25px;
	color: white;
	border-radius: 100px;
	border: none;
	margin-bottom: 10px;
}

ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

li {}

.sp-top-header {
	background: #DEA193;
}

.sp-top-header .sp-row {
	padding: 5px 20px;
}

.sp-top-header .sp-row ul {}

.sp-top-header .sp-row ul li {
	float: left;
	display: inline-block;
	margin-right: 20px;
}

.sp-top-header .sp-row ul li a {
	color: white;
}

.sp-top-header .sp-row ul li span {}

.sp-top-header .sp-row .sp-contact li i {
	margin-right: 8px;
}

.sp-top-header .sp-row .sp-contact {
	display: flex;
	justify-content: right;
}

.sp-top-header .sp-row .sp-social {
	display: flex;
	justify-content: right;
}

.sp-top-header .sp-row .sp-social li {
	margin-right: 11px;
}

.navbar-nav .dropdown:hover .dropdown-menu {
	display: block;
	margin-top: 0;
	/* Align dropdown with the parent */
	border: none;
	border-top: 2px solid #dea193;
	border-radius: 0;
	box-shadow: rgba(50, 50, 93, 0.25) 0px 6px 12px -2px, rgba(0, 0, 0, 0.3) 0px 3px 7px -3px;
}

.sp-nav {
	background: white !important;
	padding: 5px 20px;
}

.sp-nav img {
	width: 100px;
}

.sp-nav .nav-link,
.sp-nav .dropdown-item {
	font-size: 12px;
	font-weight: 400;
	text-transform: uppercase;
	letter-spacing: 1px;
	color: #000000;
}

.sp-nav .nav-link:hover,
.sp-nav .dropdown-item:hover {
	color: #000;
	background: white;
}

.sp-slider {
	padding: 0;
	width: 100%;
	overflow: hidden;
	position: relative;
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	transition: background-image 2s ease-in-out;
	/* Smooth transition between images */
}

.sp-slider .sp-content {
	min-height: 85vh;
	background: #0000007d;
	padding: 20px;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
}

.sp-slider .sp-content h2 {
	font-size: 55px;
	font-weight: normal;
	text-transform: capitalize;
	color: #ffffff;
	text-align: center;
}

.sp-slider .sp-content p {
	color: #ffffff;
	font-size: 18px;
	line-height: 30px;
	padding: 0 20%;
	text-align: center;
}

.sp-slider .sp-content .sp-box {
	text-align: center;
	padding: 15px 15px 15px 15px;
	border-radius: 5px 5px 5px 5px;
	background-color: white;
	min-height: 157px;
}

.sp-slider .sp-content .sp-box img {
	width: 65px;
	margin: 0 0 15px 0;
}

.sp-slider .sp-content .sp-box h6 {
	color: #000000;
}

/* Ken Burns animation for background zoom */
/*.ken-burns {
            animation: kenburns 10s ease-in-out infinite;
        }

        @keyframes kenburns {
            0% {
                transform: scale(1) translate(0, 0);
            }
            50% {
                transform: scale(1.2) translate(-10px, -10px);
            }
            100% {
                transform: scale(1) translate(0, 0);
            }
        }*/

.sp-color {
	background-color: #008080 !important;
}

.sp-color h6 {
	color: white !important;
}

.sp-section {
	padding: 50px 20px;
}


/* Wrapper for image and overlay */
.image-container {
	position: relative;
	width: auto;
	/* Adjust to your image size */
	height: auto;
	/* Adjust to your image size */
	overflow: hidden;
	border-radius: 1000px;
	margin-bottom: 10px;
	display: block;
}

/* The image */
.image-container img {
	width: 100%;
	height: 100%;
	display: block;
}

/* The overlay div */
.image-container .overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: rgb(0 128 128 / 68%);
	/* Semi-transparent black */
	color: white;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 1.5rem;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	text-transform: capitalize;
}

/* Show overlay on hover */
.image-container:hover .overlay {
	opacity: 1;
}

.sp-destinations .col-sm-2 {
	width: 20%;
	padding: 0 5px;
}

.sp-destinations {
	padding: 50px 30px;
}

footer {
	background: #fff;
	border-top: 1px solid #E4E4E4;
	border-bottom: 1px solid #E4E4E4;
}

footer .row {
	padding: 50px 20px;
}

footer h6 {
	font-size: 14px;
	font-weight: 500;
	text-transform: uppercase;
	letter-spacing: 1px;
	margin-bottom: 10px;
}

footer .sp-social {
	display: flex;
}

footer .sp-social li {}

footer .sp-social li a {
	margin-right: 10px;
}

footer .sp-social li a i {
	text-align: center;
	text-decoration: none;
	border-radius: 50% 50% 50% 50%;
	width: 30px;
	height: 30px;
	line-height: 31px;
	color: #000000;
	background-color: #ffffff;
}

footer img {
	margin-bottom: 10px;
	width: 115px;
}

footer .sp-link.sp-cont {}

footer .sp-link.sp-cont li {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}

footer .sp-link.sp-cont li i {
	color: #000000;
	margin-right: 14px;
}

footer .sp-link.sp-cont li span {
	line-height: 24px;
}

footer .sp-link {}

footer .sp-link li {
	margin-bottom: 4px;
	text-transform: capitalize;
}

footer .sp-link li a {
	color: black;
}

footer .sp-link li a:hover {
	color: #dea193;
}

.sp-copy {
	background: #fff;
	padding: 20px;
}

.sp-copy p {
	text-transform: capitalize;
	color: #000000;
	margin: 0;
	text-align: center;
}

/* Container for the search bar */
.search-container {
	max-width: 885px;
	margin: 50px auto;
	position: relative;
}

/* Styling for the search input */
.search-container input {
	border-radius: 100px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
	padding-left: 50px;
	/* Space for search icon */
	height: 60px;
	font-size: 25px;
}

/* Search icon inside input */
.search-icon {
	position: absolute;
	top: 50%;
	left: 15px;
	transform: translateY(-50%);
	font-size: 1.2rem;
	color: gray;
}

/* Close icon */
.close-icon {
	position: absolute;
	top: 50%;
	right: 15px;
	transform: translateY(-50%);
	font-size: 1.2rem;
	color: gray;
	cursor: pointer;
	display: none;
	/* Hidden initially */
}

/* Suggestions box */
.suggestions {
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	background: white;
	border-radius: 5px;
	max-height: 200px;
	overflow-y: auto;
	z-index: 1000;
	text-align: left;
}

/* Suggestion item */
.suggestions li {
	list-style: none;
	padding: 15px 20px;
	cursor: pointer;
	transition: background-color 0.2s;
	font-size: 16px;
	border: 2px solid transparent;
	border-radius: 100px;
}

/* Highlight suggestion on hover */
.suggestions li:hover {
	background-color: #f0f0f0;
}

/* Highlight selected suggestion */
.suggestions li.active {
	background-color: #00808029;
	border: 2px solid #008080;
}

/* Destination list styling */
.destination-list {
	margin-top: 20px;
}

.destination-list li {
	list-style: none;
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}

/* Tag styling */
.destination-list .tag {
	margin-left: 10px;
	font-size: 0.9rem;
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 10px;
	color: #fff;
}

.tag.honeymoon {
	background-color: #f8c4cf;
}

.tag.trending {
	background-color: #ffb3a7;
}

.tag.in-season {
	background-color: #a5d6a7;
}

.tag.budget {
	background-color: #d6a677;
}

.tag.popular {
	background-color: #b0bec5;
}

/* Destination list styling */
.destination-list {
	margin: 0 auto;
	margin-top: 20px;
	padding: 0;
	display: flex;
	flex-direction: column;
	/* Ensures all items are vertically aligned */
	align-items: flex-start;
	/* Aligns all items to the left */
	max-width: 600px;
}

.destination-list li {
	list-style: none;
	/* Removes default bullet points */
	font-size: 1.2rem;
	display: flex;
	align-items: center;
	/* Ensures tag aligns with text */
	margin-bottom: 10px;
	width: 100%;
}

.destination-list .tag {
	margin-left: 10px;
	/* Adds space between destination name and tag */
	font-weight: 600;
	padding: 2px 8px;
	border-radius: 10px;
	color: #fff;
	text-transform: uppercase;
	font-size: 12px;
}

/* Individual tag colors */
.tag.honeymoon {
	background-color: #f8c4cf;
	color: #d3002d;
}

.tag.trending {
	color: #bd1a00;
	background-color: #ffb3a7;
}

.tag.in-season {
	color: #002c02;
	background-color: #a5d6a7;
}

.tag.budget {
	background-color: #d6a677;
	color: #a14f00;
}

.tag.popular {
	background-color: #b0bec5;
	color: #00283c;
}

.sp-search-page {
	background: url(../img/ezgif-4-22319ae434.jpg);
	background-size: cover;
}

.destination-list a {
	color: #595c5f;
	font-weight: 500;
}

.destination-list a:hover {
	color: #008080;
	font-weight: 500;
}

.sp-beadrcrumb {
	background: url(../img/breadcrumb.jpg);
	background-size: cover;
	background-position: center;
}

.sp-beadrcrumb .row {
	background: #00000082;
	min-height: 230px;
}

.sp-beadrcrumb ul {
	display: flex;
	justify-content: center;
	align-items: center;
}

.sp-beadrcrumb ul li {
	font-size: 15px;
	color: white;
	margin: 0 0 0 15px;
}

.sp-beadrcrumb ul li a {
	color: white;
}

.sp-beadrcrumb ul li a i {
	font-size: 20px;
	color: white;
}

.sp-beadrcrumb ul li i {
	font-size: 12px;
	color: #008080;
}

.sp-beadrcrumb ul li span {}

.sp-packages {}

.sp-packages .sp-package-box {
	display: flex;
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	margin-bottom: 10px;
	cursor: pointer;
}

.sp-packages .sp-package-box .sp-img {
	background: url(../img/jp12287d138859-1-hotel_carousel_large.jpg);
	width: 50%;
	background-size: cover;
	background-position: center;
}

.sp-packages .sp-package-box .sp-package-text {
	padding: 30px;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-name {
	font-size: 18px;
	margin-bottom: 20px;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-meta {
	margin-bottom: 10px;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-meta .badge {
	color: #005a6a;
	background: #0dcaf040;
	margin-bottom: 3px;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-meta .badge i {}

.sp-packages .sp-package-box .sp-package-text .sp-package-includes {}

.sp-packages .sp-package-box .sp-package-text .sp-package-includes p {
	font-size: 13px;
	color: #4e4e4e;
	margin-bottom: 10px;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-price {
	display: flex;
	align-items: center;
	justify-content: space-between;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-price .sp-price {
	font-size: 26px;
	font-weight: bold;
	color: #008080;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-price .sp-price span {
	font-size: 13px;
	color: #606060;
}

.sp-packages .sp-package-box .sp-package-text .sp-package-price .sp-btn {}

.sp-packages .sp-package-box .sp-package-text .sp-package-price .sp-btn {}

.sp-packages .sp-package-box .sp-package-text .sp-package-price .sp-btn button {
	padding: 10px 20px;
	font-size: 14px;
	font-weight: bold;
}

/* Custom styling for the form */
.phone-form {
	max-width: 400px;
	margin: 50px auto;
	text-align: center;
}

.phone-form .btn {
	border-radius: 20px;
	padding: 10px 20px;
}

.form-control {
	border-radius: 10px;
}

.phone-input-group {
	display: flex;
	align-items: center;
	justify-content: center;
}

.phone-input-group .country-code {
	max-width: 80px;
	/* Restrict width for ISD code */
	border-radius: 10px 0 0 10px;
}

.phone-input-group .phone-number {
	border-radius: 0 10px 10px 0;
}

.btn-disabled {
	background-color: #d4f4d4;
	cursor: not-allowed;
	pointer-events: none;
}

.modal-title {
	font-size: 20px;
}

.filter-section {
	max-width: 300px;
	margin: 20px;
}

.filter-title {
	font-size: 1.2rem;
	font-weight: bold;
	margin-bottom: 10px;
}

.filter-group {
	margin-bottom: 20px;
}

.filter-group label {
	font-weight: normal;
}

.form-check-input {
	border-color: #28a745;
	margin-right: 10px;
}

button:focus:not(:focus-visible) {
	outline: 0 !important;
	box-shadow: none !important;
}

.sp-selected-city {
	padding: 0 10%;
}

.sp-selected-city p {
	color: #999999;
	font-size: 13px;
	text-transform: uppercase;
	font-weight: bold;
}

.sp-selected-city .sp-select-box {
	clear: both;
	margin: 15px 0 20px;
}

.sp-selected-city .sp-select-box .sp-city {
	border: 1px solid #008080;
	border-radius: 8px;
	color: #008080;
	text-transform: capitalize;
	font-weight: bold;
	padding: 7px 15px;
	background: #00808030;
	margin-right: 5px;
}

.sp-selected-city .sp-select-box .sp-city i {
	font-size: 12px;
	margin-left: 4px;
}

.sp-selected-city .sp-progress {
	display: flex;
}

.sp-selected-city .sp-progress div {
	height: 5px;
	background: #cbe3e3;
	width: 25%;
	margin-right: 8px;
}

.sp-selected-city .sp-progress .sp-select {
	background: #008080;
}

.sp-select-duration {
	padding: 30px 10%;
}

.sp-select-duration p {
	text-align: center;
	color: black;
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 20px;
}

.sp-select-duration .sp-duration-box {}

.sp-select-duration .sp-duration-box .sp-duration:hover {
	border: 1px solid #008080;
	background: #00808030;
}

.sp-select-duration .sp-duration-box .sp-duration {
	background: white;
	display: block;
	border: 1px solid #cfe7e7;
	padding: 25px;
	text-align: center;
	margin: 0 -5px;
	border-radius: 10px;
}

.sp-select-duration .sp-duration-box .sp-duration img {
	width: 80px;
	margin: 0 auto 35px;
	display: block;
}

.sp-select-duration .sp-duration-box .sp-duration span {
	color: black;
	font-weight: 600;
	font-size: 16px;
}

.sp-select-duration .sp-city-box {}

.sp-select-duration .sp-city-box .sp-city {
	display: block;
	margin: 0 -8px;
	background: white;
	border-radius: 20px;
	border: 1px solid #cfe7e7;
	text-align: center;
}

.sp-select-duration .sp-city-box .sp-city img {
	width: 100%;
	border-top-right-radius: 20px;
	border-top-left-radius: 20px;
	margin-bottom: 20px;
}

.sp-select-duration .sp-city-box .sp-city h5 {
	text-transform: capitalize;
	font-weight: 600;
	font-size: 18px;
	padding: 0 10px;
}

.sp-select-duration .sp-city-box .sp-city p {
	color: gray;
	font-weight: normal;
	font-size: 12px;
	padding: 0 10px;
	margin: 0;
}

.sp-select-duration .sp-city-box .sp-city .sp-bage {
	color: #cca129;
	text-transform: uppercase;
	font-size: 11px;
	font-weight: bold;
}

.sp-select-duration .sp-city-box .sp-city .sp-suggestion {
	display: block;
	margin: 15px 0 20px;
}

.sp-select-duration .sp-city-box .sp-city .sp-suggestion span {
	font-size: 11px;
	text-transform: capitalize;
	background: #cfe7e7;
	color: #008080;
	padding: 5px 10px;
	border-radius: 100px;
}

.sp-mobile {
	display: none;
}

.sp-middle-header {
	padding: 15px 30px;
	align-items: center;
}

.sp-img-content {
	display: flex;
}

.sp-img-content .sp-img-box {}

.sp-img-content .sp-img-box {
	display: flex;
	align-items: center;
	margin-right: 17px;
}

.sp-img-content .sp-img-box .sp-img {}

.sp-img-content .sp-img-box .sp-img i {
	font-size: 13px;
}

.sp-img-content .sp-img-box .sp-img img {
	width: 25px;
	margin-right: 7px;
}

.sp-img-content .sp-img-box .sp-img-content {
	font-size: 12px;
	text-transform: capitalize;
	font-family: "DM Sans", sans-serif;
	margin-left: 10px;
}

.sp-search {
	display: flex;
	align-items: center;
	justify-content: right;
}

.sp-search form {
	width: 50%;
}

.sp-search .form-control {
	border-radius: 0;
	font-size: 14px;
	height: 50px;
}

.sp-search .sp-info {
	margin-left: 10px;
}

.sp-search .sp-info a {
	margin-left: 10px;
	color: black;
}

.sp-search .sp-info a i {
	color: #000;
	font-size: 13px;
}

.sp-copy img {
	float: right;
}

/* Carousel container height */
#kenburnsCarousel .carousel-inner {
	height: 500px;
	/* Full screen height */
}

/* Ken Burns effect on background image */
#kenburnsCarousel .carousel-item {
	position: relative;
	overflow: hidden;
	height: 500px;
	padding: 50px;
}

#kenburnsCarousel .carousel-item::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-size: cover;
	background-position: center;
	animation: kenburns 10s infinite alternate ease-in-out;
}

/* Background images for each slide */
#kenburnsCarousel .carousel-item:nth-child(1)::before {
	background-image: url("../img/1.jpg");
}

#kenburnsCarousel .carousel-item:nth-child(2)::before {
	background-image: url("../img/2.jpg");
}

/* Ken Burns Animation */
@keyframes kenburns {
	0% {
		transform: scale(1);
	}

	100% {
		transform: scale(1.2);
	}
}

/* Overlay for text */
#kenburnsCarousel .carousel-caption {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	text-align: center;
	color: white;
	background: rgba(0, 0, 0, 0.5);
	padding: 20px;
	border-radius: 10px;
	animation: fadeIn 1.5s ease-in-out;
}

/* Fade In Animation for Text */
@keyframes fadeIn {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

#kenburnsCarousel .sp-carousel-caption {
	position: relative;
	margin-top: 14%;
	margin-left: 0;
}

#kenburnsCarousel .sp-carousel-caption h2 {
	color: #000000;
	font-size: 32px;
	font-weight: 300;
	text-transform: capitalize;
}

#kenburnsCarousel .sp-carousel-caption p {
	line-height: 1.7;
	color: #000000;
	margin-bottom: 40px;
}

#kenburnsCarousel .sp-carousel-caption .sp-btn {
	background-color: #000;
	text-transform: capitalize;
	border-width: 0px;
	color: white;
	border-radius: 5px;
	padding: 15px 30px;
	font-weight: 500;
	font-size: 15px;
}

#kenburnsCarousel .carousel-item.active {}

.product-gallery img {
	width: 100%;
	border-radius: 10px;
}

.product-gallery .carousel-inner {
	border-radius: 10px;
}

.product-price {

	font-weight: bold;

	font-size: 13px;

	padding: 0px 15px 40px;
}

.quantity-selector {
	display: flex;
	align-items: center;
}

.quantity-selector input {
	width: 50px;
	text-align: center;
	margin: 0 5px;
}


.sp-top-header p {

	text-align: center;

	margin: 0;
}

.sp-logo {
	text-align: center;
	text-transform: uppercase;
}

.sp-logo a {
	color: black;
	font-size: 24px;
}

.search-modal .modal-content {
	background: rgba(0, 0, 0, 0.9);
	/* Dark transparent background */
	border: none;
}

.search-modal .modal-body {
	display: flex;
	justify-content: center;
	align-items: center;
	min-height: 100vh;
	padding: 20px;
}

.search-modal .search-bar {
	width: 80%;
	max-width: 800px;
	display: flex;
	align-items: center;
	border: 2px solid #fff;
	border-radius: 50px;
	padding: 10px 20px;
	background: transparent;
}

.search-modal input {
	flex: 1;
	background: transparent;
	border: none;
	outline: none;
	color: #fff;
	font-size: 20px;
}

.search-modal input::placeholder {
	color: rgba(255, 255, 255, 0.6);
}

.search-modal button {
	background: transparent;
	border: none;
	color: white;
	font-size: 22px;
	cursor: pointer;
}

.search-modal .close-btn {
	position: absolute;
	top: 20px;
	right: 30px;
	font-size: 30px;
	color: white;
	cursor: pointer;
	z-index: 9;
}

.cart-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 15px;
	border-bottom: 1px solid #ddd;
}

.cart-body {
	max-height: 60vh;
	overflow-y: auto;
	padding: 15px;
}

.cart-footer {
	padding: 15px;
	border-top: 1px solid #ddd;
	text-align: center;
}

.cart-item {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 10px;
	/* border-bottom: 1px solid #eee; */
}

.cart-item img {
	width: 50px;
	height: 50px;
	object-fit: cover;
	border-radius: 5px;
}

.cart-item .item-info {
	flex-grow: 1;
	margin-left: 10px;
}

.cart-item .remove-btn {
	background: none;
	border: none;
	font-size: 18px;
	color: red;
	cursor: pointer;
}

.item-info h6 {
	font-weight: normal;
	font-size: 14px;
}

.item-info p {
	margin: 0;
	font-weight: bold;
}

.cart-footer p {
	font-size: 20px;
	font-weight: bold;
}

.cart-footer .btn-primary {
	background: black;
	border-color: black;
	border-radius: 0;
	margin: 0;
}

.cart-footer .btn-outline-secondary {
	color: black;
	border-radius: 0;
}

.sp-btnn {
	display: flex;
	justify-content: center;
	gap: 10px;
	align-items: center;
}

.sp-btnn button {
	padding: 14px 10px;
}

.mega-menu {
	width: 100%;
	/* Adjust this based on your design */
	background: #ffffff;
	box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);
	position: fixed !important;
	left: 50%;
	transform: translateX(-50%);
	top: 100%;
	z-index: 1000;
	display: none;
	padding: 20px;
	visibility: hidden;
	/* Prevents flickering issues */
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
	top: 160px;
}

/* Ensure the dropdown's parent is positioned correctly */
.nav-item.dropdown {
	position: relative;
}

/* Show menu on hover */
.nav-item.dropdown:hover .mega-menu {
	display: block;
	visibility: visible;
	opacity: 1;
}

/* Prevent menu from getting cut off on the left */
/*.mega-menu::before {
	content: "";
	position: absolute;
	top: -10px;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-left: 10px solid transparent;
	border-right: 10px solid transparent;
	border-bottom: 10px solid #DEA193;
}*/

/* Prevent overflow on small screens */
@media (max-width: 992px) {
	.mega-menu {
		width: 100%;
		/* Full width on smaller screens */
		left: 0;
		transform: none;
	}
}


.sp-er-bg {
	background: url(../img/bg1.png);
	background-size: cover;
	background-position: center;
}


.navbar-brand {
	text-transform: capitalize;
}

.navbar-toggler {
	padding: 0
}


.sp-feature {
	padding: 30px;
}

.sp-feature .sp-f-box {
	text-align: center;
}

.sp-feature .sp-f-box img {
	width: 80px;
	margin-bottom: 15px;
}

.sp-feature .sp-f-box h4 {
	font-size: 18px;
	line-height: 1.2em;
	font-weight: 300;
	font-family: 'DM Sans', sans-serif;
	text-transform: capitalize;
}

.sp-feature .sp-f-box p {
	font-size: 13px;
	line-height: 20px;
}


.product-card {

	border: 1px solid #e4e4e4;

	text-align: center;
}

.product-card:hover {
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.product-card img {}

.product-card .product-title {}

.product-card .product-title {

	font-size: 14px;

	text-transform: uppercase;

	color: #444;

	font-weight: 400;

	padding: 15px;
}

.product-card .product-price {}

.sp-title {
	text-align: center;
	font-size: 28px;
	margin-bottom: 20px;
}

.sp-pr {
	padding: 30px;
}

.product-card {
	border: 1px solid #e4e4e4;
	text-align: center;
	position: relative;
	overflow: hidden;
	background: #fff;
	margin-bottom: 20px;
}

.product-card:hover {
	box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;
}

.product-card img {
	width: 100%;
	display: block;
}

.product-card .product-title {
	font-size: 14px;
	text-transform: uppercase;
	color: #444;
	font-weight: 400;
	padding: 15px;
}

.product-card .product-price {
	font-weight: bold;
	color: #444;
	padding: 0px 15px 25px;
}

/* Icon group styling */
.icon-group {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: flex;
	gap: 10px;
	opacity: 0;
	transition: opacity 0.3s;
	background: white;
	border-radius: 100px;
	padding: 13px 25px;
}

.product-card:hover .icon-group {
	opacity: 1;
}

.icon-btn {
	width: 40px;
	height: 40px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	cursor: pointer;
	position: relative;
}

.icon-btn:hover {
	background: #f8f9fa;
}

.icon-btn i {
	font-size: 16px;
	color: #444;
}

.icon-btn:hover i {
	color: #d9534f;
}

/* Tooltip */
.icon-btn::after {
	content: attr(data-tooltip);
	position: absolute;
	bottom: 100%;
	left: 50%;
	transform: translateX(-50%);
	background: #000;
	color: #fff;
	padding: 5px 10px;
	font-size: 12px;
	border-radius: 3px;
	white-space: nowrap;
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.3s;
}

.icon-btn:hover::after {
	opacity: 1;
	visibility: visible;
}

/* Quick View Modal Styling */
.modal {
	display: none;
	position: fixed;
	z-index: 1000;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.5);
	justify-content: center;
	align-items: center;
}

.modal-content {
	background: #fff;
	padding: 20px;
	border-radius: 5px;
	width: 70%;
	display: flex;
	align-items: center;
	gap: 20px;
	position: relative;
}

.modal-content img {
	width: 40%;
	max-height: 400px;
	object-fit: cover;
}

.modal-info {
	width: 50%;
}

.modal-info h2 {
	font-size: 24px;
	margin-bottom: 10px;
}

.modal-info p {
	color: #666;
	margin-bottom: 15px;
}

.modal-info .price {
	font-size: 22px;
	font-weight: bold;
	color: #d9534f;
}

.close-btn {
	position: absolute;
	top: 10px;
	right: 15px;
	font-size: 20px;
	cursor: pointer;
}

.bg {
	Background: #F3F3F3
}

.sp-product-details {}

.sp-product-details .row {
	padding: 10px 50px 50px;
}

.sp-product-details .sp-product-slider {}

.color-btn,
.material-btn,
.size-btn,
.style-btn {
	border: 1px solid #ddd;
	background: #fff;
	font-size: 16px;
	transition: 0.2s ease-in-out;
	padding: 3px 7px;
	color: black;
	text-transform: capitalize;
	border-radius: 5px;
}

.color-btn.active,
.material-btn.active,
.size-btn.active,
.style-btn.active {
	border: 2px solid black;
}

.clear-btn {
	font-size: 14px;
	text-decoration: underline;
	cursor: pointer;
	background: none;
	border: none;
	color: gray;
}

.sp-prd-select .clear-btn {
	padding: 0;
	text-decoration: none;
}

.sp-bread-nav {
	font-size: 0.92em;
	color: #777;
	text-transform: capitalize;
	margin-bottom: 30px;
}

.sp-bread-nav a {
	color: #777;
	font-weight: 300;
}

.sp-prduct-att {
	padding: 10px 25px;
}

.sp-prd-select p {
	font-size: 16px;
}

.sp-prd-select strong {
	font-weight: bold;
}

.sp-prd-select span {
	font-weight: 600;
}

.sp-prduct-att {}

.sp-prduct-att .sp-price {
	display: flex;
	align-items: center;
}

.sp-prduct-att .sp-price .sp-pp {
	font-weight: 400;
	color: #7f7f7f;
	font-size: 1.5rem;
	text-decoration: line-through;
	margin-right: 10px;
}

.sp-prduct-att .sp-price .sp-final-price {
	font-weight: 700;
	color: #000000;
	font-size: 1.5rem;
}

.sp-prduct-att .sp-product-name {
	font-size: 1.625rem;
	font-weight: normal;
	text-transform: capitalize;
	margin-bottom: 35px;
}

.quantity-box {
	width: 70px;
	text-align: center;
	border: 1px solid #ddd;
	padding: 5px;
	border-radius: 4px;
	height: 40px;
}

.add-to-cart {
	background-color: #000000;
	color: white;
	font-weight: bold;
	padding: 8px 25px;
	border: none;
	border-radius: 5px;
	text-transform: capitalize;
}

.add-to-cart:hover {
	background-color: #b68f32;
}

.sp-sku-box {
	display: flex;
	align-items: center;
	margin-bottom: 15px;
	font-size: 13px;
}

.sp-sku-box .sp-sku {
	margin-right: 10px;
}

.sp-sku-box .sp-sku span {}

.sp-sku-box .sp-pp-cat {}

.sp-sku-box .sp-pp-cat a {
	color: #000000;
	font-weight: 500;
}

.sp-price-backup button {
	background: none;
	padding: 0;
	color: #000000;
	font-weight: bold;
}

.table {
	width: 100%;
	max-width: 100%;
	margin-bottom: 20px;
}

.table>thead>tr>th {
	vertical-align: bottom;
	border-bottom: 2px solid #ddd;
}

.table>thead>tr>th {
	border-bottom: 0 solid #ddd !important;
}

.priceDescriptionTable tr td,
.priceDescriptionTable tr th {
	font-size: 14px;
	padding: 5px 4px !important;
}

#productPreview_specification .table>tbody>tr>td {
	font-size: 14px;
	padding: 2px;
	border-bottom: 1px solid #ddd;
}

.noPaddingLeft,
.noPaddingLeftRight {
	padding-left: 0 !important;
}

.sp-product-description {
	margin-top: 45px;
}

.woocommerce-js table.shop_attributes {
	border: 0;
	border-top: 1px solid #e5e5e5;
	margin-bottom: 1.618em;
	width: 100%;
}

.woocommerce-js div.product .woocommerce-tabs .shop_attributes {
	border-style: solid;
}

.woocommerce-js table.shop_attributes th {
	width: 150px;
	font-weight: 500;
	border-top: 0;
	border-bottom: 1px dotted #e5e5e5;
	margin: 0;
	line-height: 1.5;
	text-align: left;
}

.shop_attributes td,
.shop_attributes th {
	padding: 0.67em 1.34em;
	border-color: #e5e5e5;
}

.shop_attributes th {
	border-left-width: 1px;
	border-style: solid;
	padding-left: 0.9em;
	color: #3a3a3a;
}

.shop_attributes td {
	font-style: normal;
	border-style: solid;
}

.shop_attributes th {
	border-left-width: 1px;
	border-style: solid;
	padding-left: 0.9em;
	color: #3a3a3a;
}

.tab-content>.tab-pane {
	padding-top: 20px;
}

.nav.nav-tabs {
	border-bottom: 2px solid #d3ced2;
}

.sp-product-description .nav-tabs {}

.sp-product-description .nav-tabs .nav-item {}

.sp-product-description .nav-tabs .nav-item .nav-link {
	color: #515151;
	font-weight: 700;
	border-top: 3px solid #fff;
}

.sp-product-description .nav-tabs .nav-item .nav-link.active {
	border: none;
	border-top: 3px solid #dea193;
	border-radius: 0;
	border-bottom: 0;
}

.sp-bread {
	margin-bottom: 50px;
}

.sp-bread .row {
	box-shadow: 0px 0px 10px 0px rgba(147.89999999999998, 147.89999999999998, 147.89999999999998, 0.5);
	padding: 45px 0px;
	border-top: 1px solid lavender;
}

.sp-bread h3 {
	text-align: center;
	margin-bottom: 25px;
	font-weight: 100;
	font-size: 24px;
}

.sp-bread p {
	text-align: center;
	margin: 0;
	color: #777;
	text-transform: capitalize;
}

.sp-bread p a {
	color: black;
}

.sp-bread p i {
	padding: 0 5px;
}

.sp-product-categories {}

.sp-product-categories .row {
	padding: 0 50px;
}

.sp-product-categories h2 {}

.sp-product-categories .sp-product-box {
	box-shadow: rgba(149, 157, 165, 0.2) 0px 8px 24px;
	padding: 20px;
	margin-bottom: 20px;
}

.sp-product-categories .sp-product-box img {
	width: 100%;
}

.sp-product-categories .sp-product-box .sp-cat {}

.sp-product-categories .sp-product-box .sp-cat {
	font-size: 0.85em;
	margin-bottom: 0.5em;
	display: block;
	line-height: 1.3;
	opacity: 0.6;
}

.sp-product-categories .sp-product-box .sp-prd-name {
	color: #ae8625;
	margin-bottom: 0.5em;
	padding: 0;
	font-size: 1em;
	text-transform: capitalize;
	font-family: "Marcellus", serif;
}

.sp-product-categories .sp-product-box .sp-prd-pp {
	font-weight: 700;
	margin-bottom: 20px;
	font-size: 0.9em;
}

.sp-product-categories .sp-product-box .sp-btn {
	text-transform: capitalize;
	color: white;
	background: #84194f;
	border-radius: 100px;
	padding: 7px 20px;
	display: inline;
}


.sp-prd-select select {

	padding: 8px 10px 8px 5px;

	border-radius: 5px;

	border: 1.5px solid;
}


.login-card {
	width: 400px;
	border-radius: 0;
	overflow: hidden;
	box-shadow: 0px 0px 20px rgba(0, 0, 0, 0.1);
	background: white;
}

.card-header {
	background: white;
	padding: 25px 0 10px 0;
	border-bottom: 1px solid #ddd;
}

.card-header-pills {
	display: flex;
	justify-content: center;
	gap: 15px;
}

.card-header-pills .nav-link {
	transition: all 0.3s;
	text-transform: capitalize;
	border: 1px solid #000000;
	border-radius: 0;
	color: #000000;
	padding: 10px 60px;
	font-size: 17px;
}

.card-header-pills .nav-link.active {
	background: #000000;
	color: white;
	border-radius: 0;
}

.card-body {
	padding: 20px;
}

.social-login button {
	margin: 5px;
	width: 45%;
}

.sp-login {
	margin-bottom: 30px;
}

form label {
	font-weight: 500;
	text-transform: capitalize;
}

.card-body .form-control,
.forgot-password-container .form-control {
	border-radius: 0;
	height: 50px;
}

.sp-log {
	border-radius: 0;
	background: #dea193;
	border-color: #dea193;
	color: black;
}

.sp-reg {
	border-radius: 0;
	background: #000000;
	border-color: #000000;
}

.forgot-password-container {
	max-width: 400px;
	background: #fff;
	padding: 30px;
	border-radius: 8px;
	box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
	text-align: center;
}

.forgot-password-container h2 {
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 10px;
}

.forgot-password-container p {
	font-size: 14px;
	color: #666;
	margin-bottom: 20px;
}

.forgot-password-container .btn {
	width: 100%;
	font-weight: 600;
}

.back-to-login {
	margin-top: 15px;
	display: block;
	font-size: 14px;
	color: #84194f;
	text-decoration: none;
}

.back-to-login:hover {
	text-decoration: underline;
}

.sp-cart-page {}

.sp-cart-page h1 {}

.sp-cart-page img {}

.sp-cart-page h5 {
	font-size: 14px;
	text-transform: uppercase;
	color: #444;
	padding: 15px;
	font-weight: bold;
	padding: 0;
}

.sp-cart-page p {}

.sp-cart-page input {
	height: 2px !important;
	 !i;
	 !;
}

.sp-cart-page .btn-outline-primary {
	color: #000000;
	border-color: #000000;
}

.sp-cart-page .btn-primary {
	background-color: #000000;
	color: white;
	font-weight: bold;
	padding: 8px 25px;
	border: none;
	border-radius: 5px;
	text-transform: capitalize;
}

.sp-cart-page .sp-apply {}

.sp-cart-page .sp-apply .form-control {
	height: 40px !important;
	 !imp;
	 !im;
	 !i;
	 !;
	color: black;
	border-color: black;
}

.sp-cart-page .sp-apply .btn {
	border-color: black;
	height: 40px;
	color: black;
}

.sp-cart-page .btn-outline-primary:hover,
.btn-primary:hover {
	background: #b68f32;
	color: white;
	border-color: #b68f32
}

.btn-primary {
	background-color: #000000;
	color: white;
	font-weight: bold;
	padding: 8px 25px;
	border: none;
	border-radius: 5px;
	text-transform: capitalize;
}

.sp-cart-page .sp-apply .btn:hover {
	color: white;
	background: black;
}


.sp-checkout-page .row,
.sp-cart-page .row {
	padding: 0 30px 30px 30px;
}


.sp-account {}

.sp-account .row {
	padding: 0 30px 30px;
}

.sp-account h4 {
	margin-bottom: 20px;
}

.sp-account ul {}

.sp-account ul li {
	list-style: none;
	border: 1px solid #dddddd;
	border-bottom-width: 0;
}

.sp-account ul li.sp-active {
	background-color: #fbfbfb;
}

.sp-account ul li.sp-active a {
	color: black;
}

.sp-account ul li a {
	display: block;
	padding: 10px 1em;
	color: #fb8266;
	text-transform: capitalize;
	font-weight: 500;
}

.sp-account .sp_text {
	margin-bottom: 15px;
}

.sp-account .sp_text b {
	font-weight: 600
}

.sp-account .sp_text a {
	color: #fb8266;
}

.sp-account table {}

.sp-account table tr {}

.sp-account table th {
	background: #e9e6e6;
	 !i;
	 !;
}

.sp-account table td {
	vertical-align: middle;
}

.sp-account table a {
	color: #fb8266;
}

.sp-account table .sp-button-view {
	background: #fb8266;
	color: white;
	padding: 10px 25px;
	display: block;
	width: fit-content;
	border-radius: 5px;
}


.spp-add {
	padding: 0 !important;
}

.spp-add .sp_box {
	border: 1px solid #dee2e6;
}

.spp-add .sp_box h3 {
	padding: 15px;
	background: #e9e6e6;
}

.spp-add .sp_box .sp_address {
	padding: 0px 15px;
	text-transform: capitalize;
}

.spp-add .sp_box .sp_icon {
	padding: 0 15px;
}

.spp-add .sp_box .sp_icon i {
	margin-right: 6px;
}

.sp-edit {
	background: #e9e6e6;
	display: block;
	text-align: right;
	padding: 0px 15px 15px;
	margin-top: -10px;
	margin-bottom: 10px;
	color: #fc8266;
}

.form-control {
	border-radius: 0;
	height: 50px;
}

form label {
	font-weight: 600;
	margin-bottom: 10px;
}


.table {
	margin-top: 10px;
}

.remove-icon {
	cursor: pointer;
	font-size: 16px;
	color: red;
}

.product-image {
	width: 50px;
	height: auto;
}

.btn-green {
	background-color: #dea193;
	color: white;
}

th,
td {
	vertical-align: middle;
}


.content {
	margin: 0 0 30px 0;
	padding: 20px;
	background: #fff;
	border-radius: 8px;
	box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

.content h1 {
	font-size: 36px;
	font-weight: bold;
}

.content h2 {
	font-size: 24px;
	margin-bottom: 10px;
}

.content ul {
	list-style: outside;
	margin-left: 30px;
	margin-bottom: 15px;
}

.content ul ul {
	list-style: lower-latin;
	margin-left: 30px;
}

.content li {
	margin-bottom: 5px;
	line-height: 28px;
}

.content p {
	line-height: 28px;
}

.content h3 {
	font-size: 20px;
}

.content a {
	font-weight: bold;
	color: #f7785a;
}

a {
	color: #f7785a;
}

.site-breadcrumbs {
	padding: 12px 50px;
	display: block;
	margin-bottom: 0;
}

.site-breadcrumbs li {
	list-style-type: none;
	font-style: normal;
	font-weight: 300;
	font-size: 12px;
	line-height: 16px;
	text-transform: capitalize;
	-webkit-transition: opacity 300ms ease-out;
	transition: opacity 300ms ease-out;
	color: #0d0900;
	display: inline-block;
	vertical-align: middle;
}

.site-breadcrumbs li a {
	color: inherit !important;
}

.site-breadcrumbs li:not(:last-child):after {
	content: url(https://www.77diamonds.com/Assets/icons/svg/right-chevron.svg);
	margin: 0 8px;
}

.sp-breadcrumb {
	border-top: 1px solid #f2f2f2;
}

/* Add zoom effect on hover for the main image */
.zoom {
	transition: transform 0.5s ease;
	/* Smooth transition */
}

.zoom:hover {
	transform: scale(1.2);
	/* Zoom effect */
}


.sp-product-new {}

.sp-product-new .row {
	padding: 20px;
}

.sp-product-new .list-group {
	border-radius: 0;
}

.sp-product-new .list-group .list-group-item {
	margin: 4px 0;
	padding: 0;
}

.sp-product-new .list-group .list-group-item image {}

.sp-product-new h2 {
	font-style: normal;
	font-weight: 200;
	font-size: 24px;
	line-height: 32px;
}

.sp-product-new .star-rating {
	margin-bottom: 10px;
}

.sp-product-new .star-rating i {
	font-size: 12px;
}

.sp-product-new .star-rating .sp-rating-count {
	font-size: 12px;
}

.sp-product-new p {
	font-style: normal;
	font-weight: 300;
	font-size: 14px;
	line-height: 24px;
}


/* Custom styles for the metal selector */
.metal-selector {
	/* Space between the label and the swatches */
}

.metal-swatches .form-check {
	padding-left: 0;
	/* Remove default padding */
}

.metal-swatches .form-check-input {
	display: none;
	/* Hide the default radio button */
}

.metal-swatches .form-check-label {
	display: inline-block;
	width: 25px;
	height: 25px;
	border-radius: 50%;
	cursor: pointer;
	border: 2px solid transparent;
	transition: border-color 0.2s ease-in-out;
	background-clip: padding-box;
	/* Ensures border is outside the background color */
}

/* Style for the selected swatch */
.metal-swatches .form-check-input:checked+.form-check-label {
	border-color: #000;
	/* Black border for the selected item */
}

/* Define colors for each swatch */
#white-gold-label {
	background-color: #f0f0f0;
	border: 1px solid #ccc;
}

#yellow-gold-label {
	background-color: #f0e68c;
}

#rose-gold-label {
	background-color: #f7d7c5;
}

#platinum-label {
	background-color: #e5e4e2;
}

.sp-metal {
	font-size: 14px;
	letter-spacing: 0;
	line-height: 24px;
	margin-bottom: 10px;
}

.sp-metal b {
	font-weight: 600;
}

.custom-select-box {
	display: flex;
	align-items: center;
	justify-content: space-between;
	width: 100%;
	padding: 12px 10px;
	background-color: #fff;
	border: 1px solid #ced4da;
	border-radius: 4px;
	cursor: pointer;
	text-align: left;
}

.custom-select-box:hover {
	border-color: #86b7fe;
}

.custom-select-box .select-content {
	display: flex;
	align-items: center;
	gap: 0.75rem;
	font-size: 12px;
	letter-spacing: .3px;
}

/* Style for the new SVG image icon */
.select-img-icon {
	width: 25px;
	25: 30px;
	height: 25px;
}

.custom-select-box+.dropdown-menu {
	width: 100%;
}

.custom-select-box+.dropdown-menu .dropdown-item {
	cursor: pointer;
	display: flex;
	align-items: center;
	gap: 0.75rem;
	/* Space between image and text */
	font-size: 12px;
	letter-spacing: .3px;
}

.btn-custom-select::after {
	display: none;
}

.sp_price {
	color: #000;
	font-size: 22px;
	letter-spacing: .6px;
	font-weight: 600;
}

.sp_price span {
	font-size: 12px;
	font-weight: 400;
}


.info-container {
	display: flex;
	align-items: center;
	gap: 5px;
	position: relative;
	z-index: 1;
}

/* Style the SVG image itself to ensure it's clickable and sized correctly */
.info-icon-svg {
	width: 16px;
	/* Adjust size as needed, e.g., 1em or 16px */
	height: 16px;
	/* Ensure aspect ratio is maintained */
	cursor: pointer;
	vertical-align: middle;
	/* Helps align with text if needed */
}

.custom-popup {
	display: none;
	position: absolute;
	top: 100%;
	left: 50%;
	transform: translateX(-50%);
	margin-top: 10px;

	background-color: #fff;
	border: 1px solid #dee2e6;
	border-radius: .375rem;
	box-shadow: 0 .125rem .25rem rgba(0, 0, 0, .075);
	padding: 1rem;
	width: 300px;
	z-index: 1000;
}

.custom-popup-header {
	display: flex;
	justify-content: space-between;
	align-items: center;
	margin-bottom: 0.75rem;
	padding-bottom: 0.5rem;
	border-bottom: 1px solid #eff2f6;
}

.custom-popup-header h6 {
	font-size: 14px;
	font-style: normal;
	font-weight: 600;
	line-height: 24px;
}

.custom-popup-body p {
	font-size: 14px;
	letter-spacing: 0;
	line-height: 24px;
	margin-bottom: 0;
}

.custom-popup-body p:last-child {
	margin-bottom: 0;
}

.custom-popup-body a {
	text-decoration: underline;
	font-size: 14px;
	letter-spacing: 0;
	line-height: 24px;
	margin-bottom: 0;
	color: black;
	font-weight: 600;
}

/* If you still want the Bootstrap close button, you need its CSS */
.btn-close {
	box-sizing: content-box;
	width: 1em;
	height: 1em;
	padding: 0.25em 0.25em;
	color: #000;
	background: transparent url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16' fill='%23000'%3e%3cpath d='M.293.293a1 1 0 0 1 1.414 0L8 6.586 14.293.293a1 1 0 1 1 1.414 1.414L9.414 8l6.293 6.293a1 1 0 0 1-1.414 1.414L8 9.414l-6.293 6.293a1 1 0 0 1-1.414-1.414L6.586 8 .293 1.707A1 1 0 0 1 .293.293z'/%3e%3c/svg%3e") center/1em auto no-repeat;
	border: 0;
	border-radius: 0.375rem;
	opacity: 0.5;
}

.btn-close:hover {
	color: #000;
	text-decoration: none;
	opacity: 0.75;
}

.text-muted {
	font-size: 12px;
	letter-spacing: .3px;
	line-height: 25px;
}

.info-container i {}


.promotional-code-container {
            margin-top: 20px;
        }
        .form-control-with-clear {
            padding-right: 2.5rem; /* Space for the clear icon */
        }
        .clear-icon {
            position: absolute;
            right: 4rem; /* Position it before the "APPLY" button */
            top: 50%;
            transform: translateY(-50%);
            cursor: pointer;
            color: #ccc;
            font-size: 1.2rem;
            display: none; /* Hidden by default */
        }
        .apply-btn {
            padding-left: 1rem;
            padding-right: 1rem;
        }
        .error-message {
            color: #dc3545; /* Bootstrap red for error */
            margin-top: 5px;
            font-size: 0.875em;
        }
		
		
		#promoCodeToggle {
			color: black;
    font-weight: 400;
    font-size: 14px;
		}
		
		#promotionalCodeForm {}
		#promotionalCodeForm .form-control.form-control-with-clear{
    letter-spacing: 1px;
    height: 40px;
    border-radius: 4px;
    border-top-right-radius: 0;
    border-bottom-right-radius: 0;
    font-size: 13px;
}

#applyButton{
    margin: 0;
    border-left: 0;
    border-color: #dee2e6;
    border-radius: 4;
    border-top-left-radius: 0;
    border-bottom-left-radius: 0;
    font-size: 12px;
    height: 40px;
    padding: 5px 10px;
}

#clearDiscountCode{
	
}.custom-button {
            width: 50%; /* Adjust width as needed */
            height: 46px; /* Adjust height as needed */
            border: 1px solid #ced4da; /* Default Bootstrap input border color */
            background-color: #fff;
             /* Default Bootstrap input text color */
            display: flex;
            flex-direction: column; /* Stack text and icon vertically */
            justify-content: center;
            align-items: center;
            text-align: center;
             /* Adjust padding if needed */
             /* Adjust font size */
            position: relative;
            outline: none; /* Remove default focus outline */
            box-shadow: none; /* Remove default button shadow */
            border-color: #c1c1c1;
            color: #555;
            padding: 0 40px;
            line-height: 1.3;
            text-transform: uppercase;
            font-size: 12px;
            letter-spacing: .24px;
            border-radius: 0;
        }
        .custom-button:focus {
            border-color: #86b7fe; /* Bootstrap primary focus color */
            box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, 0.25);
        }
        .custom-button .button-text {
            display: block; /* Ensures text is on its own line */
            line-height: 16px;
        }
        .custom-button .bi-chevron-down {
            position: absolute; /* Position the caret */
            right: 15px; /* Adjust position */
            top: 50%;
            transform: translateY(-50%);
            font-size: 0.8rem; /* Adjust caret size */
        }
		.custom-button:hover{
			background:black;color:white;
		}

        .btn-add-engraving {
            width: 50%; /* Adjust width as needed */
            height: 46px; /* Adjust height as needed */
            border: 1px solid #343a40; /* Darker border for emphasis */
            background-color: #fff;
            color: black;
            display: flex;
            justify-content: center;
            align-items: center;
             /* Adjust font size */
             /* Slightly bolder text */
            transition: all 0.2s ease-in-out;
            margin-left: 1rem; /* Space between buttons */
            font-style: normal;
            font-weight: 300;
            font-size: 12px;
            line-height: 20px;
            letter-spacing: .02em;
            border-radius: 0;
        }
        .btn-add-engraving:hover {
            background-color: #000; /* Light background on hover */
            border-color: #000; /* Darker border on hover */
            color: #fff;
        }
        .btn-add-engraving i {
            margin-right: 0.5rem;
            color: #b8860b; /* Golden color for the icon */
            font-size: 1.2rem; /* Adjust icon size */
        }

        /* Optional: Container for alignment */
        .button-container {
            display: flex;
            justify-content: left;
            align-items: center;
            margin-top: 10px;
        }
		
		.sp-product-new .sp-btn{
			text-transform: uppercase;
			font-size: 12px;
			letter-spacing: .24px;
			line-height: 18px;
			padding: 0 30px;
			border-radius: 0;
			min-height: 44px;
			background: black;
			width: 100%;
			color: white;
			display: flex;
			justify-content: center;
			align-items: center;
			border: 1px solid #000;
			margin-bottom: 25px;
		}
		.sp-product-new .sp-btn:hover{
			color:black;
			background:white;
			border-color:black;
		}
		
		
		.accordion-item-custom {
            border: none; /* Remove default accordion item border */
            margin-bottom: 0.5rem; /* Space between items */
            background-color: transparent; /* Ensure background is transparent */
        }
        .accordion-header-custom {
            border-bottom: none; /* Separator line */
            padding-bottom: 5px; /* Space above the line */
            margin: 0;
        }
        .accordion-button-custom {
            background-color: transparent !important; /* Override Bootstrap button background */
            color: #000 !important; /* Dark text color */
            font-weight: 600; /* Slightly bolder text */
             /* Adjust font size */
            padding: 0; /* Remove default button padding */
            box-shadow: none !important; /* Remove shadow on focus */
            border: none !important; /* Remove button border */
            text-align: left; /* Align text to the left */
            display: flex; /* Use flex for icon and text alignment */
            align-items: center; /* Center items vertically */
            width: 100%; /* Take full width */
            font-size: .875rem;
            line-height: 22px;
        }
        .accordion-button-custom::after {
            display: none; /* Hide default Bootstrap accordion icon */
        }
        .accordion-button-custom .bi {
            margin-right: 0.5rem; /* Space between icon and text */
            transition: transform 0.3s ease-in-out; /* Smooth rotation */
            font-size: 1rem; /* Adjust icon size */
        }

        /* Rotate chevron when collapsed (default state for 'collapsed' button) */
        .accordion-button-custom.collapsed .bi-chevron-down {
            transform: rotate(-90deg); /* Start as right arrow */
        }
        /* Rotate chevron when expanded (button is NOT 'collapsed') */
        .accordion-button-custom:not(.collapsed) .bi-chevron-down {
            transform: rotate(0deg); /* Point down */
        }

        .accordion-body-custom {
            padding: 0 25px; /* Padding for content, indented */
            font-size: 0.95rem; /* Adjust font size */
        }
        .contact-detail {
            display: flex;
            align-items: center;
            margin-bottom: 0.5rem;
        }
        .contact-detail .bi {
            margin-right: 0.5rem;
            font-size: 1.1rem;
        }
        .contact-detail a {
            text-decoration: none; /* Remove underline from links */
            color: inherit; /* Inherit text color */
        }
        .contact-detail a:hover {
            color: #0d6efd; /* Bootstrap blue on hover */
        }
		
		.accordion-body-custom img{
    width: 115px;
    margin-bottom: 10px;
}
		.accordion-body-custom p strong{font-weight:600;margin-bottom: 0;line-height: 44px;}
		.accordion-body-custom p{
    font-size: 14px;
    letter-spacing: .3px;
    line-height: 20px;
    white-space: normal;
}
		.accordion-body-custom p a{
    color: black;
    font-weight: 500;
    text-decoration: underline;
}

.accordion-body-custom .row{
	padding:0
}

.sp-catt{padding: 50px 15px;}
.sp-catt .row{}
.sp-catt h6{
    text-align: center;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 14px;
}
.sp-catt h3{
    text-align: center;
    margin-bottom: 30px;
}
.sp-catt .sp_box{
    display: block;
    color: black;
    text-transform: uppercase;
    margin-bottom: 25px;
}
.sp-catt .sp_box img{
    width: 100%;
    margin-bottom: 15px;
}
.sp-catt .sp_box p{
    text-align: center;
    margin: 0;
}

.sp-pr h6{
    text-align: center;
    text-transform: uppercase;
    font-weight: 300;
    font-size: 14px;
}

.sp-product_banner{}
.sp-product_banner .row{}
.sp-product_banner .row a{
    display: block;
    margin-bottom: 20px;
}
.sp-product_banner .row a img{
    width: 100%;
}