/* Theme styles for The Stone Social */
/* Using Inter font; prefer smooth, modern look */

:root {
	--stone-primary: #3b82f6; /* blue-500 */
	--stone-dark: #0f172a; /* slate-900 */
	--stone-light: #f8fafc; /* slate-50 */
}

html, body {
	font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
	color: var(--stone-dark);
	scroll-behavior: smooth;
}
.larger-font { 
	font-size: 22px;
	font-weight: 700; 
}
.fw-extrabold { font-weight: 800; }

.hero-section {
	min-height: 92vh;
	background: linear-gradient(180deg, rgba(15,23,42,0.75), rgba(15,23,42,0.6)), url('../images/bannar image.jpg') center/cover no-repeat;
	color: #fff;
	text-shadow: 0 1px 2px rgba(0,0,0,0.2);
	position: relative;
}

.hero-section .btn { border-width: 2px; }

.hero-section .btn-outline-light {
	border-color: rgba(255,255,255,0.75);
	color: #fff;
}

.card .card-title { font-weight: 600; }

.navbar .btn-primary { padding-inline: 1rem; }

.ratio iframe { border: 0; }

.list-group-item { padding: 1rem 1.25rem; }

.accordion-button:focus { box-shadow: none; }

.link-dark:hover,
.link-secondary:hover { color: var(--stone-primary) !important; }

/* Utilities */
.section-title { letter-spacing: -0.02em; }
.shadow-soft { box-shadow: 0 10px 30px rgba(0,0,0,0.08); }
.rounded-xl { border-radius: 1rem; }

@media (prefers-reduced-motion: reduce) {
	html, body { scroll-behavior: auto; }
}


@media (max-width: 576px) {
	.hero-section { min-height: 75vh; }
	.navbar .btn-primary { padding-inline: .75rem; }
}

/* Sticky Reserve Your Spot Button */
.sticky-reserve-btn {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1000;
	background: linear-gradient(135deg, #0d6efd 0%, #0b5ed7 100%);
	border: none;
	border-radius: 50px;
	padding: 12px 24px;
	color: white;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	box-shadow: 0 4px 20px rgba(13, 110, 253, 0.3);
	transition: all 0.3s ease;
	display: flex;
	align-items: center;
	gap: 8px;
	animation: pulse 2s infinite;
}

.sticky-reserve-btn:hover {
	background: linear-gradient(135deg, #0b5ed7 0%, #0a58ca 100%);
	color: white;
	text-decoration: none;
	transform: translateY(-3px);
	box-shadow: 0 8px 30px rgba(13, 110, 253, 0.4);
}

.sticky-reserve-btn:active {
	transform: translateY(-1px);
}

.sticky-reserve-btn .btn-icon {
	width: 20px;
	height: 20px;
	background: rgba(255, 255, 255, 0.2);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 12px;
}

/* Pulse animation for attention */
@keyframes pulse {
	0% {
		box-shadow: 0 4px 20px rgba(13, 110, 253, 0.3);
	}
	50% {
		box-shadow: 0 4px 20px rgba(13, 110, 253, 0.5), 0 0 0 10px rgba(13, 110, 253, 0.1);
	}
	100% {
		box-shadow: 0 4px 20px rgba(13, 110, 253, 0.3);
	}
}

/* Hide on mobile for better UX (optional) */
@media (max-width: 768px) {
	.sticky-reserve-btn {
		bottom: 15px;
		right: 15px;
		padding: 10px 20px;
		font-size: 13px;
	}
	
	.sticky-reserve-btn .btn-text {
		display: none;
	}
	
	.sticky-reserve-btn {
		border-radius: 50%;
		width: 50px;
		height: 50px;
		padding: 0;
		justify-content: center;
	}
}

.btn-primary {
    background:#1399ff!important;
}


