/* CSS Document */

/* ====================
   RESET & BASE STYLES
==================== */
body {
	font-family: 'Lato', sans-serif;
	margin: 0;
}

html {
	overflow-x: hidden;
}

body {
	overflow: visible;
}

p.text-center{
	font-size:20px;
	color:#34495e;
}

ul li{
	font-size: 20px;
	padding-left: 0;
	margin-left: 0;
}

ul#interest {
	font-size: 15px;
	line-height: 1.9;
}

ul#supersized {
	margin: 0;
	padding: 0;
}

ul#supersized img {
	max-width: none;
}

ul {
  list-style-type: disc;
  padding-left: 1.5rem;
  margin-top: 1rem;
  margin-bottom: 1rem;
}

ul li {
  margin-bottom: 0.5rem;
}


p{
	font-family: 'Lato', sans-serif;
	font-size: 15px;
	font-weight: 400;
	line-height: 28px;
	color: #34495e;
	text-align: left;
	padding-top: 20px;
	border-top: thin double #e0e0e0;
}

p.text-center.pt-2#smaller {
	font-size: 14px !important;
}

/* ====================
   TYPOGRAPHY
==================== */
h1 {
	font-family: 'Playfair Display', 'Montserrat', serif !important;
	font-size: 50px;
	font-weight: 700;
	letter-spacing: 5px;
	color: #fff;
	text-align: center;
	margin: 10px;
	margin-bottom: 10px;
	line-height: normal;
	text-transform: uppercase;
}

h2 {
	font-family: 'Montserrat' !important;
	font-size: 40px;
	font-weight: 600;
	letter-spacing: 5px;
	color: black;
	text-align: center;
	margin: 0;
	text-transform:none!important;
}

h2.text-center.beigetext {
	font-size: 30px;
	font-weight: 400;
	font-family: 'lato', serif !important;
}

h2.tour {
	font-size: 40px !important;
	font-weight: 600!important;
	font-family: 'Playfair Display', 'Montserrat', serif !important;
	text-transform:uppercase!important;
}

h3 {
	font-size: 14px;
	font-family: 'Lato', sans-serif;
	color: #999;
	letter-spacing: 1px;
	font-weight: 700;
	width: 100%;
	padding-bottom: 3px;
}

h2.lato{
  font-family: 'lato', sans-serif!important;
  font-size: 16px;
  letter-spacing: 1px;
  line-height: 1.6;
  color: #000; /* Or whatever color you prefer */
text-transform: none!important;
}

h4 {
	font-size: 10px;
	font-family: 'Lato', sans-serif;
	font-weight: 700;
	color: #999;
}

#subheading {
	padding: 10px;
	width: 500px;
	font-family: 'Playfair Display', 'Montserrat', serif;
	background-color: transparent;
	opacity: 0.7;
	margin: 0 auto;
	text-transform: uppercase;
	line-height: normal;
}

/* ====================
   NAVIGATION
==================== */
nav.navbar {
	top: 0;
	z-index: 1030;
	background-color: #002f35 !important;
}
nav.sticky-top {
  position: sticky;
  top: 0;
  z-index: 1020;
}


.navbar {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	margin-bottom: 0;
	padding-bottom: 0;
}

.navbar a {
	border-radius: 10px;
	font-size: 12px;
	color: white !important;
	text-transform: uppercase;
}

.navbar a:hover {
	color: #f2f2f2;
	transition: 1s;
	border-radius: 16px;
	text-decoration: none;
	font-size: 17px;
}

.navbar .btn {
	font-size: 14px;
	letter-spacing: 1px;
	text-transform: uppercase;
}

.nav-link.active {
	color: #d8c9bc!important;
}

.navbar-toggler {
	border-color: white;
}

.navbar-toggler-icon {
	background-image: url("data:image/svg+xml;charset=utf8,%3Csvg viewBox='0 0 30 30' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath stroke='white' stroke-width='2' stroke-linecap='round' stroke-miterlimit='10' d='M4 7h22M4 15h22M4 23h22'/%3E%3C/svg%3E");
}

.navbar-nav > li {
	margin: 0 10px;
}

/* ====================
   BUTTONS
==================== */
.btn .btn-lg {
	color: #660000 !important;
}

.btn.floorplan{
	background-color:#002f35!important;
}

.btn-light.text-dark {
	color: #212529 !important;
}

.custom-button-group {
	display: flex;
	gap: 20px;
	justify-content: center;
	margin: 40px 0;
	flex-wrap: wrap;
}

.custom-pill-button {
	background-color: #043b3b;
	color: white;
	text-transform: uppercase;
	font-family: 'Montserrat', sans-serif;
	font-weight: 600;
	padding: 14px 40px;
	border-radius: 999px;
	text-decoration: none;
	font-size: 14px;
	letter-spacing: 1px;
	transition: background-color 0.3s ease, transform 0.2s ease;
}

.custom-pill-button:hover {
	background-color: #065656;
	transform: translateY(-2px);
	color: white;
}

.btn-custom {
	background-color: hsl(201, 100%, 39%) !important;
	background-repeat: repeat-x;
	filter: progid:DXImageTransform.Microsoft.gradient(startColorstr="#0087d1", endColorstr="#0081c6");
	background-image: linear-gradient(#0087d1, #0081c6);
	border-color: #0081c6 #0081c6 hsl(201, 100%, 38.5%);
	color: #fff !important;
	text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.03);
	-webkit-font-smoothing: antialiased;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	border: none;
	border-radius: 0;
}

/* ====================
   HEADER / HERO
==================== */
#header {
	position: relative;
	height: auto;
	padding-top: 230px;
	padding-bottom: 230px;
	background-color: rgba(0, 0, 0, 0.5);
}

#header.indexheader {
	position: relative;
	height: 100vh;
	width: 100vw;
	padding-top: 230px;
	padding-bottom: 230px;
	background-color: rgba(211, 211, 211, 0.1);
}

#header h1,
#header h2 {
	color: white;
	text-shadow: 0px 0px 0px rgba(0,0,0,0.9);
}

.hero-overlay {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	z-index: 2;
	background: rgba(255, 255, 255, 0.3);
}

/* ====================
   SECTIONS
==================== */
section.beige {
	background-color: #d8c9bc;
	padding: 60px 0 100px;
}

section.beige .btn {
	width: 8vw;
}

section.light {
	background-color: #f0efed;
	height: 60vh;
}

section.white {
	background-color: rgba(255, 255, 255, 1);
	padding: 60px 0 100px;
}

section.grey {
	background: #ecf0f1;
	padding: 60px 0 100px;
}

section.empty {
	background-color: rgba(0, 0, 0, 0.5);
	height: 200px;
}

section.white h2,
section.grey h2,
section.beige h2 {
	font-family: 'Lato', sans-serif;
	font-size: 24px;
	letter-spacing: normal;
	color: #34495e;
	text-align: center;
	margin: 0 0 40px;
	font-weight: 400;
	text-transform: uppercase;
}

/* ====================
   COMPONENTS
==================== */
.portfolio a {
	display: block;
	filter: alpha(opacity=50);
	opacity: 0.70;
	transition: ease .75s all;
	-webkit-transition: ease .75s all;
	-moz-transition: ease .75s all;
	-o-transition: ease .75s all;
}

.portfolio a:hover {
	filter: alpha(opacity=100);
	opacity: 1;
}


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

.portfolio a:hover h4 {
	filter: alpha(opacity=100);
	opacity: 1;
}

.portfolio h4 {
	font-size: 14px;
	line-height: 24px;
	text-transform: uppercase;
	font-family: 'Lato', sans-serif;
	font-weight: 400;
	color: #fff;
	background: rgba(0,0,0,0.60);
	margin: 0;
	position: relative;
	margin-top: -24px;
	filter: alpha(opacity=0);
	opacity: 0;
}

.image-style:hover {
	background: rgba(255, 255, 255, 0.8);
}

.img-circle {
	-webkit-box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.3);
	box-shadow: 0px 0px 4px 0px rgba(0, 0, 0, 0.3);
}

img#about {
	margin-bottom: 30px;
}

img.radius {
	border-radius: 20px;
	margin-top:120px;
}

.item {
	padding-bottom: 20px;
}

#bg-video {
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw !important;
	height: 100vh !important;
	object-fit: cover;
	z-index: -1;
	background: rgba(255, 255, 255, 0.1);
}

#contact-btn {
	margin-top: 40px;
}

/* ====================
   FOOTER
==================== */
footer {
	height: auto;
	background-color: #2C2E2D;
	padding: 20px 0px 10px 0px;
	text-align: center;
}

footer h4 {
	font-weight: 400;
	letter-spacing: 1px;
}

/* ====================
   MEDIA QUERIES
==================== */
@media (min-width: 650px) and (max-width: 980px) {
	ul.portfolio {
		width: 640px;
	}
	ul.portfolio li {
		padding-bottom: 20px;
		padding-right: 10px;
		padding-left: 10px;    
	}
}

@media (min-width: 768px) and (max-width: 979px) {
	/* Add tablet-specific styles here if needed */
		h2, h2.text-center.beigetext {
		font-size: 25px;
		letter-spacing: 1px;
		padding: 15px;
	}
	h2.tour {
		font-size: 25px !important;
		letter-spacing: 1px !important;
		padding: 15px !important;
	}
		footer img {
		padding: 15px;
	}
	footer{
		font-size:15px;
	}
	img.radius{
		padding-top: 100px;
	}
}

@media (max-width: 767px) {
	header, section, footer {
		margin: 0 auto;
		padding: 0 15px;
	}
	section p {
		padding: 0 40px;
	}
	h1 {
		font-size: 35px;
		letter-spacing: 4px;
	}
	h2, h2.tour, h2.text-center.beigetext {
		font-size: 12px;
		letter-spacing: 3px;
	}
	#subheading {
		width: 350px;
	}
	html, body {
		overflow-x: hidden;
		width: 100%;
	}
}

@media (min-width: 0px) and (max-width: 659px) {
	ul.portfolio {
		width: 300px;
	}
	ul.portfolio li {
		padding-bottom: 10px;
		padding-left: 0px;
		padding-right: 0px;
	}
	ul.portfolio a {
		filter: alpha(opacity=100);
		opacity: 1;
	}
}

@media (max-width: 480px) {
	img.radius{
		width:100%;
		height:auto;
	}
	h1 {
		font-size: 25px;
		letter-spacing: 1px;
		padding: 15px;
	}
	iframe {
		padding: 15px;
	}
	.navbar {
		padding-top: 1.5rem;
		padding-bottom: 1.5rem;
	}
	ul {
		padding-left: 40px;
	}

	p.text-center{
		font-size:15px;
	}
	
	ul li{
	font-size:15px;
	}
	footer img {
		padding: 15px;
	}
	h2, h2.text-center.beigetext {
		font-size: 25px;
		letter-spacing: 1px;
		padding: 15px;
	}
	h2.tour {
		font-size: 25px !important;
		letter-spacing: 1px !important;
		padding: 15px !important;
	}
	p {
		font-size: 12px;
		line-height: 22px;
	}
	#subheading {
		width: 240px;
	}
	#header {
		padding-top: 100px;
		padding-bottom: 100px;
	}
	img#about {
		width: 60%;
	}
}
