/*

Tooplate 2095 Level

https://www.tooplate.com/view/2095-level

*/

body {
	font-family: 'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 13px;
	font-weight: 400;
	overflow-x: hidden;
	background-color: #f9f9f9;
	position: relative;
}

/* Removed decorative background element */
/*
body::before {
	content: "";
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M10,50 Q30,20 50,50 T90,50" stroke="%23ee5057" stroke-width="0.5" fill="none" opacity="0.05"/></svg>') repeat;
	background-size: 100px 100px;
	z-index: -1;
}
*/

a, button { transition: all 0.3s ease; }
a:hover,
a:focus {
	text-decoration: none;
	outline: none;
}

.tm-position-relative { position: relative; }
.tm-flex-align-center { align-items: center; }
.tm-fa-6x { font-size: 6em; }
.tm-margin-b-0 { margin-bottom: 0; }
.tm-margin-b-20 { margin-bottom: 20px; }
.tm-p-4 { padding: 2rem!important; }
.tm-color-white { color: white; }
.tm-color-primary {	color: #ee5057; }
.tm-bg-primary { background: #ee5057; }
.tm-bg-gray { background: #F4F4F4; }
.tm-bg-white { background: white; }
.tm-bg-dark-blue { background: #1f3646; }
.tm-bg-white-transparent { background: rgba(255, 255, 255, 0.9); }

.tm-bg-white-shadow {
	-webkit-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	-moz-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
}

.tm-section-pad {
	padding-top: 80px;
	padding-bottom: 80px;
}

/* Navbar Styles */
.tm-top-bar {
    background-color: white;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);
    padding: 10px 0;
    position: relative;
    z-index: 1000;
    border-radius: 0;
    margin: 0;
    transition: all 0.3s ease;
}

.tm-top-bar:hover {
    box-shadow: 0 6px 25px rgba(0, 0, 0, 0.2);
    transform: translateY(-2px);
}

.tm-top-bar .navbar {
    padding: 0;
    background: transparent;
    box-shadow: none;
}

.tm-top-bar .navbar-brand {
    padding: 0;
    display: flex;
    align-items: center;
}

.tm-top-bar .navbar-nav .nav-item {
    margin: 0 5px;
}

/* Enhanced Navbar Styles */
.navbar { 
	width: 100%; 
	padding-top: 0;
	padding-bottom: 0;
	background: transparent;
	box-shadow: none;
	position: relative;
	overflow: hidden;
}

.tm-top-bar .navbar-nav .nav-link {
    color: #333;
    font-weight: 600;
    padding: 12px 18px;
    margin: 5px 0;
    border-radius: 8px;
    transition: all 0.3s ease;
    position: relative;
    background: transparent;
    border: none;
}

.tm-top-bar .navbar-nav .nav-link:hover {
    color: #ee5057;
    background-color: rgba(238, 80, 87, 0.1);
    transform: translateY(-2px);
}

.tm-top-bar .navbar-nav .nav-link::before {
    content: "";
    position: absolute;
    bottom: 0;
    left: 50%;
    width: 0;
    height: 2px;
    background: #ee5057;
    transition: all 0.3s ease;
    transform: translateX(-50%);
}

.tm-top-bar .navbar-nav .nav-link:hover::before {
    width: 70%;
}

.tm-top-bar .navbar-nav .active .nav-link {
    color: #ee5057;
    background-color: rgba(238, 80, 87, 0.15);
    font-weight: 700;
}

.tm-top-bar .navbar-nav .active .nav-link::before {
    width: 70%;
    background: #ee5057;
}

.tm-top-bar .navbar-toggler {
    border: 1px solid #ee5057;
    border-radius: 8px;
    padding: 8px 12px;
    background: rgba(238, 80, 87, 0.1);
}

.tm-top-bar .navbar-toggler-icon {
    background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='30' height='30' viewBox='0 0 30 30'%3e%3cpath stroke='%23ee5057' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
}

.tm-top-bar .navbar-toggler:focus {
    outline: none;
    box-shadow: 0 0 0 0.2rem rgba(238, 80, 87, 0.25);
}

.tm-top-bar .tm-bg-white {
    background-color: white;
    border-radius: 10px;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    padding: 15px;
    margin-top: 10px;
}

/* CTA Section Styles */
.tm-section#tm-section-cta-1 {
    background: linear-gradient(135deg, #ee5057 0%, #d53239 100%);
    background-size: 200% 200%;
    padding: 60px 0;
    text-align: center;
    position: relative;
    overflow: hidden;
    /* Removed animation and decorative elements */
}

.tm-section#tm-section-cta-1 .tm-section-title {
    color: white;
    font-size: 2.5rem;
    margin-bottom: 20px;
    text-shadow: 1px 1px 3px rgba(0,0,0,0.2);
    position: relative;
    display: inline-block;
}

.tm-section#tm-section-cta-1 .tm-section-title::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background: linear-gradient(90deg, transparent, white, transparent);
}

.tm-section#tm-section-cta-1 .tm-section-subtitle {
    color: rgba(255, 255, 255, 0.9);
    font-size: 1.2rem;
    margin-bottom: 30px;
    font-weight: 300;
}

.tm-section#tm-section-cta-1 .btn {
    background: white;
    color: #ee5057;
    border: none;
    padding: 15px 40px;
    font-size: 1.1rem;
    font-weight: 600;
    border-radius: 30px;
    box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    transition: all 0.3s ease;
    position: relative;
    overflow: hidden;
}

.tm-section#tm-section-cta-1 .btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transition: 0.5s;
}

.tm-section#tm-section-cta-1 .btn:hover::before {
    left: 100%;
}

.tm-section#tm-section-cta-1 .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(0,0,0,0.3);
    background: #f8f8f8;
}

.tm-section#tm-section-cta-1 a.tm-color-white {
    color: white;
    text-decoration: underline;
}

.tm-section#tm-section-cta-1 a.tm-color-white:hover {
    color: #ffd700;
    text-decoration: none;
}

/* Second CTA Section */
.tm-section#tm-section-cta-2 {
    background-image: url('../img/bg-img-3.jpg');
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 80px 0;
    position: relative;
}

/* Removed decorative overlay */
.tm-section#tm-section-cta-2::before {
    content: none;
}

.tm-section#tm-section-cta-2 .tm-bg-white-transparent {
    background: rgba(255, 255, 255, 0.95);
    border-radius: 0; /* Removed rounded corners */
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Simplified shadow */
    /* Removed backdrop-filter and decorative elements */
    border: 1px solid rgba(238, 80, 87, 0.2);
    position: relative;
    overflow: hidden;
    max-width: 800px;
    margin: 0 auto;
    padding: 40px;
    transition: all 0.3s ease;
}

.tm-section#tm-section-cta-2 .tm-section-title {
    color: #ee5057;
    font-size: 2.2rem;
    margin-bottom: 20px;
    position: relative;
    display: inline-block;
}

.tm-section#tm-section-cta-2 .tm-section-title::after {
    content: "";
    position: absolute;
    bottom: -10px;
    left: 50%;
    transform: translateX(-50%);
    width: 80px;
    height: 3px;
    background: linear-gradient(90deg, transparent, #ee5057, transparent);
}

.tm-section#tm-section-cta-2 .tm-section-subtitle {
    color: #666;
    font-size: 1.1rem;
    margin-bottom: 30px;
}

.tm-section#tm-section-cta-2 .btn {
    padding: 15px 35px;
    font-size: 1rem;
    font-weight: 600;
    border-radius: 30px;
    box-shadow: 0 4px 15px rgba(238, 80, 87, 0.3);
    position: relative;
    overflow: hidden;
    border: none;
}

.tm-section#tm-section-cta-2 .btn::before {
    content: "";
    position: absolute;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
    transition: 0.5s;
}

.tm-section#tm-section-cta-2 .btn:hover::before {
    left: 100%;
}

.tm-section#tm-section-cta-2 .btn:hover {
    transform: translateY(-3px);
    box-shadow: 0 6px 20px rgba(238, 80, 87, 0.4);
}

#tm-section-1 {	
	background-image: url('../img/bg-img-1.jpg');	
	height: 600px;
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: flex;
	align-items: center;
	margin-top: 0;
	position: relative;
	overflow: hidden;
}

/*
@keyframes float {
	0% {
		transform: translateY(0px) rotate(45deg);
	}
	50% {
		transform: translateY(-20px) rotate(45deg);
	}
	100% {
		transform: translateY(0px) rotate(45deg);
	}
}
*/

/* Add a subtle background animation */
@keyframes bg-animation {
    0% {
        background-position: 0% 50%;
    }
    50% {
        background-position: 100% 50%;
    }
    100% {
        background-position: 0% 50%;
    }
}

/* Add a subtle pulse animation for buttons */
@keyframes pulse {
    0% {
        transform: scale(1);
        box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    }
    50% {
        transform: scale(1.02);
        box-shadow: 0 6px 20px rgba(0,0,0,0.3);
    }
    100% {
        transform: scale(1);
        box-shadow: 0 4px 15px rgba(0,0,0,0.2);
    }
}

.tm-section#tm-section-cta-1 .btn,
.tm-section#tm-section-cta-2 .btn {
    animation: pulse 2s infinite;
}

/* Animated brush strokes for background */

#tm-section-4 {
	background-image: url('../img/bg-img-2.jpg');
}

#tm-section-6 {
	background-image: url('../img/bg-img-3.jpg');
	background-position: top center;
	background-repeat: no-repeat;
	background-size: cover;
	padding-top: 120px;
	padding-bottom: 60px;
}

.tm-bg-img {
	background-position: center center;
	background-repeat: no-repeat;
	background-size: cover;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center
}

.qs-datepicker {
	font-family:  'Open Sans', Helvetica, Arial, sans-serif;
	font-size: 0.8rem;
}

.form-control {
	border-radius: 0;
	padding: 0.6rem 0.75rem;
}

.form-control:focus {
	border-color: #ee5057;
	box-shadow: 0 0 0 0.2rem rgba(238,80,87,.25);
}

.btn-primary {
	background-color: #ee5057;
	border-color: #ee5057;
	border-radius: 0;
	cursor: pointer;
	font-size: 0.9rem;
	font-weight: 600;
	padding: 15px 35px;
	text-transform: uppercase;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
	border: none;
	box-shadow: 0 4px 10px rgba(238, 80, 87, 0.3);
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
	background-color: #d53239;
	border-color: #d53239;
	transform: translateY(-3px);
	box-shadow: 0 8px 15px rgba(238, 80, 87, 0.4);
}

.btn-primary::before {
	content: "";
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.4), transparent);
	transition: 0.5s;
}

.btn-primary:hover::before {
	left: 100%;
}

.btn-primary::after {
	display: none;
}

.tm-search-form .tm-form-element { padding: 0 5px; }
.tm-form-element { position: relative; }
.tm-form-element:last-child { margin-right: 0; }

.tm-form-element-icon {
	color: #ee5057;
	position: absolute;
	top: 10px;
	left: 15px;
}

.tm-form-element-icon-small {
	top: 16px;
	left: 18px;
}

select.tm-select.form-control:not([size]):not([multiple]) { height: 100%; }

select:not([multiple]) {
    -webkit-appearance: none;
    -moz-appearance: none;
    background-position: right 50%;
    background-repeat: no-repeat;
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUGAAAA4AAAAMCAYAAABSgIzaAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyJpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuMC1jMDYwIDYxLjEzNDc3NywgMjAxMC8wMi8xMi0xNzozMjowMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENTNSBNYWNpbnRvc2giIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NDZFNDEwNjlGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiIHhtcE1NOkRvY3VtZW50SUQ9InhtcC5kaWQ6NDZFNDEwNkFGNzFEMTFFMkJEQ0VDRTM1N0RCMzMyMkIiPiA8eG1wTU06RGVyaXZlZEZyb20gc3RSZWY6aW5zdGFuY2VJRD0ieG1wLmlpZDo0NkU0MTA2N0Y3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIgc3RSZWY6ZG9jdW1lbnRJRD0ieG1wLmRpZDo0NkU0MTA2OEY3MUQxMUUyQkRDRUNFMzU3REIzMzIyQiIvPiA8L3JkZjpEZXNjcmlwdGlvbj4gPC9yZGY6UkRGPiA8L3g6eG1wbWV0YT4gPD94cGFja2V0IGVuZD0iciI/PuGsgwQAAAA5SURBVHjaYvz//z8DOYCJgUxAf42MQIzTk0D/M+KzkRGPoQSdykiKJrBGpOhgJFYTWNEIiEeAAAMAzNENEOH+do8AAAAASUVORK5CYII=);
    padding: .5em;
    padding-right: 1.5em
}

/* https://stackoverflow.com/questions/20163079/remove-select-arrow-on-ie */
select.tm-select::-ms-expand { display: none; }

.tm-select {
    border-radius: 0;
    color: #858789;
}

.tm-search-form .form-control {
	font-size: 0.8rem;	
	padding: 0.75rem 0.75rem 0.75rem 45px;
}

.tm-search-form .tm-form-element { width: 33.3333%; }
.tm-search-form .tm-form-element-2 { width: 25%; }
.tm-search-form-row { width: 900px; }
.tm-btn-search { width: 100%; }

/* https://css-tricks.com/creating-non-rectangular-headers/ */
.tm-section-down-arrow {
  position: absolute;
  top: -1px;
  width: 100%;
  height: 100px;
}

.tm-pt-5 { padding-top: 150px; }
.tm-pb-4 { padding-bottom: 100px; }

.tm-section-2 {
	background: #ee5057;
	padding-top: 50px;
	position: relative;
}

.tm-section-title {
	color: #333;
	font-size: 2.5rem;
	font-weight: 700;
	margin-bottom: 1.5rem;
	position: relative;
	display: inline-block;
}

.tm-section-title::after {
	content: "";
	position: absolute;
	bottom: -10px;
	left: 50%;
	transform: translateX(-50%);
	width: 70px;
	height: 3px;
	background: #ee5057;
	background: linear-gradient(90deg, transparent, #ee5057, transparent);
}

/* Light color for Contact Us section heading */
#tm-section-6 .tm-section-title {
	color: white;
	text-shadow: 1px 1px 2px rgba(0,0,0,0.3);
}

#tm-section-6 .tm-section-title::after {
	background: white;
	background: linear-gradient(90deg, transparent, white, transparent);
}

.tm-section-title.tm-color-white {
	color: white;
}

.tm-section-title.tm-color-white::after {
	background: white;
}

.tm-section-title-2 {
	font-size: 3.2rem;
    font-weight: 600;
}

.tm-section-subtitle {
	font-size: 1rem;
	font-weight: 300;
	margin-bottom: 25px;
}

.tm-section-subtitle.tm-color-white {
	color: white;
}

.tm-section-subtitle-2 { font-size: 1.8rem; }

.tm-btn-white-bordered {
	display: inline-block;
	padding: 12px 30px;
	border: 2px solid white;
	background: transparent;
	text-transform: uppercase;
	font-weight: 600;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.tm-btn-white-bordered:hover,
.tm-btn-white-bordered:focus {
	color: #ee5057;
	background: white;	
	transform: translateY(-3px);
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
}

.tm-btn-white-bordered::after {
	content: "";
	position: absolute;
	top: -50%;
	left: -60%;
	width: 20px;
	height: 200%;
	background: rgba(255, 255, 255, 0.3);
	transform: rotate(30deg);
	transition: all 0.8s;
}

.tm-btn-white-bordered:hover::after {
	left: 120%;
}

.slick-dots { bottom: -35px; }

.tm-article {
	padding: 40px;
	transition: all 0.3s ease;
	position: relative;
	overflow: hidden;
}

.tm-article:hover {
	-webkit-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	-moz-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	transform: scale(1.1);
}

.tm-article-title-1 {
	font-size: 1.3rem;
    font-weight: 600;
    margin-bottom: 20px;
}

.tm-article-title-2 { 
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: 1px;
}

.tm-article-title-3 { font-size: 1.1rem; }

.tm-btn-primary {
	display: block;
    width: 100%;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    font-size: 0.75rem;
}

.tm-sidebar-title {
	font-size: 1.3rem;
	margin-bottom: 5px;
}

.tm-sidebar-item-title {
	font-size: 1.2rem;
	letter-spacing: 1px;
	margin-bottom: 0;	
}

.tm-recommended-item .tm-bg-gray { transition: all 0.3s ease; }
.tm-recommended-item:hover .tm-bg-gray { background: #DDD; }

.tm-recommended-item h4 { 
	color: black; 
	transition: all 0.3s ease;
}

.tm-recommended-item:hover h4 { color: #ee5057; }
.tm-media { align-items: stretch; }

.tm-media,
.tm-media-1 {
	margin-bottom: 15px;
}

.tm-media:last-child,
.tm-media-1:last-child {
	margin-bottom: 0;
}

.tm-media-body,
.tm-media-body-1 {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-webkit-align-items: center;
	-ms-flex-align: center;
	        align-items: center;
	padding-left: 25px;
}

.tm-media-body-v-center {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -webkit-flex-direction: column;
    -ms-flex-direction: column;
            flex-direction: column;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
            justify-content: center;
    		align-items: flex-start;
}

.overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 515px;
    z-index: 1;
    background-color: rgba(0,0,0,0.75);
    display: flex;
    align-items: center;
    justify-content: center;
}

.tm-bg-video { 
	position: relative; 
	padding-top: 515px;
}

video {
    position: absolute;
    top: 50%;
    left: 50%;
    min-width: 100%;
    min-height: 100%;
    width: auto;
    height: auto;
    z-index: -100;
    transform: translateX(-50%) translateY(-50%);
    background-size: cover;
    transition: 1s opacity;
}

.tm-btn-pause { display:none; }

.tm-btn-play,
.tm-btn-pause {
	color: rgba(255,255,255,0.5);
	cursor: pointer;
}

.tm-media-container { max-width: 772px; }

#google-map {
    height: 479px;
    width: 100%;    
}

.contact-form .form-control {
	background-color: #F4F4F4;
	border: none;
	font-size: 0.8rem;
	font-weight: 300;
}

.clearfix:after {
   content: " "; /* Older browser do not support empty content */
   visibility: hidden;
   display: block;
   height: 0;
   clear: both;
}

/* Modernized Logo Text Styles */
.logo-text {
    color: #ee5057;
    font-size: 1.8rem;
    font-weight: 800;
    margin: 12px;
    padding: 0;
    letter-spacing: 1.5px;
    text-transform: uppercase;
    transition: all 0.3s ease;
    position: relative;
    font-family: 'Open Sans', sans-serif;
    background: linear-gradient(45deg, #ee5057, #d53239);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-shadow: 0 2px 4px rgba(0,0,0,0.1);
    display: inline-block;
}

.logo-text::before {
    content: "";
    position: absolute;
    top: -5px;
    left: -5px;
    right: -5px;
    bottom: -5px;
    border: 2px solid transparent;
    border-radius: 8px;
    background: linear-gradient(45deg, #ee5057, #d53239) border-box;
    -webkit-mask: linear-gradient(#fff 0 0) padding-box, linear-gradient(#fff 0 0);
    -webkit-mask-composite: destination-out;
    mask-composite: exclude;
    opacity: 0.5;
    transition: all 0.3s ease;
}

.logo-text:hover {
    transform: scale(1.03);
    text-shadow: 0 4px 8px rgba(0,0,0,0.2);
}

.logo-text:hover::before {
    opacity: 1;
    transform: scale(1.05);
}

/* Responsive logo styles */
@media (max-width: 576px) {
    .logo-text {
        font-size: 1.5rem;
    }
    
    .d-sm-none {
        display: block !important;
    }
    
    .d-none.d-sm-block {
        display: none !important;
    }
}

@media (min-width: 577px) {
    .d-sm-none {
        display: none !important;
    }
    
    .d-none.d-sm-block {
        display: block !important;
    }
}

/* Hero Section Enhancements */
.tm-hero-content {
    background: rgba(255, 255, 255, 1);
    padding: 50px 40px;
    border-radius: 0;
    box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1);
    max-width: 850px;
    margin: 0 auto;
    border: none;
    position: relative;
    overflow: hidden;
    z-index: 2;
}

.tm-hero-title {
    color: #ee5057;
    font-size: 2.5rem;
    font-weight: 700;
    margin-bottom: 25px;
    text-shadow: 1px 1px 2px rgba(0,0,0,0.1);
    position: relative;
}

.tm-hero-subtitle {
    color: #666;
    font-size: 1.2rem;
    margin-bottom: 35px;
    line-height: 1.7;
    position: relative;
}

/* Service Areas List */
.tm-service-areas {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 10px;
    padding: 0;
    margin: 0;
    list-style: none;
    color: #333;
}

.tm-service-areas li {
    padding: 5px 0;
    color: #333;
    position: relative;
    padding-left: 20px;
    transition: all 0.3s ease;
}

/* Simplified bullet points */
.tm-service-areas li::before {
    content: "•"; /* Simple bullet point */
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 12px;
    height: 12px;
    /* Removed decorative SVG */
    color: #ee5057;
    font-size: 16px;
    background: none;
}

/* Services Section Enhancements */
#tm-section-3, #tm-section-7, #tm-section-8 {
    padding-top: 100px;
    padding-bottom: 100px;
}

#tm-section-3 .tm-section-title,
#tm-section-7 .tm-section-title,
#tm-section-8 .tm-section-title {
    color: #ee5057;
    font-size: 2.8rem;
    margin-bottom: 20px;
    text-align: center;
}

#tm-section-3 .tm-section-subtitle,
#tm-section-7 .tm-section-subtitle,
#tm-section-8 .tm-section-subtitle {
    color: #666;
    font-size: 1.2rem;
    margin-bottom: 50px;
    text-align: center;
}

.tm-service-box {
    background: white;
    padding: 30px;
    border-radius: 0; /* Removed rounded corners */
    box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1); /* Simplified shadow */
    transition: all 0.3s ease;
    margin-bottom: 30px;
    height: 100%;
    position: relative;
    overflow: hidden;
    border: 1px solid #eee;
    border-top: 3px solid #ee5057;
}

/* Removed all pseudo-elements from service boxes */
/*
.tm-service-box::before {
	content: "";
	position: absolute;
	top: -10px;
	right: -10px;
	width: 50px;
	height: 50px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 50 50"><path d="M10,10 Q25,5 40,10 T40,40" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.1;
}

.tm-service-box::after {
	content: "";
	position: absolute;
	bottom: 10px;
	right: 10px;
	width: 40px;
	height: 40px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 40 40"><circle cx="20" cy="20" r="15" stroke="%23ee5057" stroke-width="0.5" fill="none"/><path d="M10,20 Q20,10 30,20 T30,30" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.1;
	transform: rotate(45deg);
	transition: all 0.5s ease;
}
*/

.tm-service-box:hover {
    transform: translateY(-5px);
    box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12); /* Simplified hover effect */
}

.tm-service-title {
    color: #ee5057;
    font-size: 1.5rem;
    margin-bottom: 20px;
    position: relative;
    padding-bottom: 10px;
}

.tm-service-title::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	width: 50px;
	height: 2px;
	background: #ee5057;
	/* Removed gradient effect */
}

.tm-service-box p {
    color: #898989;
    line-height: 1.7;
}

/* Removed all nth-child pseudo-elements */
/*
.tm-service-box:nth-child(1)::after {
	content: "";
	position: absolute;
	bottom: 10px;
	left: 10px;
	width: 30px;
	height: 30px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><circle cx="15" cy="15" r="10" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.2;
}

.tm-service-box:nth-child(2)::after {
	content: "";
	position: absolute;
	bottom: 10px;
	left: 10px;
	width: 30px;
	height: 30px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M5,15 Q15,5 25,15 T25,25" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.2;
}

.tm-service-box:nth-child(3)::after {
	content: "";
	position: absolute;
	bottom: 10px;
	left: 10px;
	width: 30px;
	height: 30px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30 30"><path d="M5,5 Q15,15 25,5 T25,25" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.2;
}
*/

/* Carousel Styles */
.tm-carousel-container {
    position: relative;
    max-width: 100%;
    margin: 0 auto;
    overflow: hidden;
}

.tm-carousel {
    display: flex;
    transition: transform 0.5s ease-in-out;
}

.tm-carousel-item {
    min-width: 100%;
    transition: opacity 0.5s ease-in-out;
}

.tm-carousel-item img {
    width: 100%;
    height: auto;
    display: block;
}

.tm-carousel-nav {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    background: rgba(0, 0, 0, 0.5);
    color: white;
    border: none;
    padding: 10px 15px;
    cursor: pointer;
    font-size: 18px;
    z-index: 10;
}

.tm-carousel-nav.prev {
    left: 10px;
}

.tm-carousel-nav.next {
    right: 10px;
}

.tm-carousel-indicators {
    position: absolute;
    bottom: 10px;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    z-index: 10;
}

.tm-carousel-indicator {
    width: 12px;
    height: 12px;
    border-radius: 50%;
    background: rgba(255, 255, 255, 0.5);
    margin: 0 5px;
    cursor: pointer;
}

.tm-carousel-indicator.active {
    background: white;
}

@media screen and (max-width: 991px) {
	/* Updated for non-sticky navbar */
	.tm-top-bar, .tm-top-bar-bg { 
        height: auto; 
        padding: 15px 0;
    }
	.tm-top-bar .navbar-expand-lg .navbar-nav .nav-link,
	.tm-top-bar .navbar-expand-lg .navbar-nav .nav-link {
	    padding: 12px 15px;
	}
	#mainNav {
		width: 180px;
	    position: absolute;
	    top: 60px;
	    right: 15px;
	    background: transparent;
		-webkit-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
		-moz-box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
		box-shadow: 0px 0px 7px 0px rgba(214,214,214,1);
	}

	.tm-search-form .tm-form-element { 
		width: 33%; 
		max-width: 215px;
	}

	.tm-search-form-row { width: 98%; max-width: 900px; }
	.tm-recommended-container { margin-top: 30px; }

	video {
		top: 25%;
		left: 0;
	    min-width: 50%;
	    min-height: 50%;
	    width: auto;
	    height: auto;	 
	}
	
	.tm-hero-content {
	    margin: 20px;
	    padding: 30px;
	}
	
	.tm-hero-title {
	    font-size: 2rem;
	}
	
	/* Responsive navbar adjustments */
	.tm-top-bar {
	    margin: 10px;
	    padding: 8px 0;
	}
	
	.navbar-brand {
	    padding-right: 10px;
	}
}

@media screen and (max-width: 767px) {
	.tm-search-form .tm-form-element {
		width: 50%;
		max-width: 235px;
	}

	#tm-section-1 {
		padding-left: 15px;
		padding-right: 15px;
	}

	.tm-media-container,
	.tm-media-title-container {
	    max-width: 320px;
	    margin-right: auto;
	}

	.tm-media-title-container {
		margin-left: auto;
		margin-bottom: 20px;
	}

	.tm-media-1 {
		flex-direction: column;
		max-width: 280px;
		margin-bottom: 30px;
		margin-left: auto;
		margin-right: auto;
	}

	.tm-media-body-1 {
		padding-left: 0;
		margin-left: 0;
		margin-top: 20px;
	}

	.tm-bg-video { padding-top: 255px; }
	.overlay { height: 255px; }
	
	.tm-service-areas {
	    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
	}
	
	.tm-hero-content {
	    padding: 25px 20px;
	}
	
	.tm-hero-title {
	    font-size: 1.8rem;
	}
	
	.tm-hero-subtitle {
	    font-size: 1.1rem;
	}
	
	.btn-primary {
	    padding: 12px 25px;
	    font-size: 0.8rem;
	}
	
	/* CTA Section Responsive Styles */
	.tm-section#tm-section-cta-1 .tm-section-title {
	    font-size: 2rem;
	}
	
	.tm-section#tm-section-cta-1 .tm-section-subtitle {
	    font-size: 1rem;
	}
	
	.tm-section#tm-section-cta-1 .btn {
	    padding: 12px 30px;
	    font-size: 1rem;
	}
	
	.tm-section#tm-section-cta-2 .tm-section-title {
	    font-size: 1.8rem;
	}
	
	.tm-section#tm-section-cta-2 .tm-section-subtitle {
	    font-size: 1rem;
	}
	
	.tm-section#tm-section-cta-2 .tm-bg-white-transparent {
	    padding: 30px 20px;
	}
	
	/* Mobile navbar adjustments */
	.tm-top-bar {
	    margin: 8px;
	    padding: 6px 0;
	}
	
	.tm-top-bar .navbar-toggler {
	    padding: 6px 10px;
	}
}

@media screen and (max-width: 524px) {
	.tm-section-pad-2 { padding: 20px 25px; }

	.tm-search-form .tm-form-element {
		width: 100%;
		max-width: 100%;
	}

	.tm-fx-col-xs { flex-direction: column; }
	.tm-section-pad { padding: 25px 15px; }
	#tm-section-1 { height: 600px; }
	
	.tm-service-areas {
	    grid-template-columns: 1fr;
	}
	
	.tm-hero-content {
	    margin: 15px;
	    padding: 20px 15px;
	}
	
	.tm-hero-title {
	    font-size: 1.5rem;
	}
	
	.nav-link {
	    padding: 15px 10px !important;
	    font-size: 0.8rem;
	}
	
	/* CTA Section Mobile Styles */
	.tm-section#tm-section-cta-1 {
	    padding: 40px 15px;
	}
	
	.tm-section#tm-section-cta-1 .tm-section-title {
	    font-size: 1.8rem;
	}
	
	.tm-section#tm-section-cta-2 {
	    padding: 50px 15px;
	}
	
	.tm-section#tm-section-cta-2 .tm-bg-white-transparent {
	    padding: 25px 15px;
	}
	
	.tm-section#tm-section-cta-2 .tm-section-title {
	    font-size: 1.5rem;
	}
	
	/* Mobile navbar adjustments */
	.tm-top-bar {
	    margin: 5px;
	    padding: 5px 0;
	}
	
	.logo-text {
	    font-size: 1.3rem;
	}
}

/* IE Fixes */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
     /* IE10+ CSS styles go here */
     .ie-h-align-center-fix {
     	margin-left: 0;
     	margin-right: 0;
     }

     .ie-10-ml-auto { float: right; }
     .tm-media-body, .tm-media-body > * { width: 100%; }
     .tm-media-body-1, .tm-media-body-1 > * { width: 100%; }
     .tm-media-1 > * { flex: 1 1 auto; }
}

@media all and (max-width: 1199px) and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.ie-container-width-fix { width: 960px; }
}

@media all and (max-width: 600px) {
	.ie-container-width-fix-2 { width: 100%; }
}

@media all and (max-width: 560px)  and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	.ie-container-width-fix {
		max-width: 530px;
		width: 100%;
	}	
}

/* Remove decorative elements from contact section */
/*
#tm-section-6::before {
	content: "";
	position: absolute;
	top: 10%;
	left: 5%;
	width: 150px;
	height: 150px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M10,50 Q30,20 50,50 T90,50" stroke="%23ee5057" stroke-width="1" fill="none" opacity="0.1"/></svg>') no-repeat;
	background-size: contain;
	transform: rotate(30deg);
	z-index: 1;
}

#tm-section-6::after {
	content: "";
	position: absolute;
	bottom: 10%;
	right: 5%;
	width: 120px;
	height: 120px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" stroke="%23ee5057" stroke-width="1" fill="none" opacity="0.1"/></svg>') no-repeat;
	background-size: contain;
	transform: rotate(-15deg);
	z-index: 1;
}
*/

.tm-bg-white-transparent {
	background: rgba(255, 255, 255, 1); /* Changed from transparent to solid white */
	border-radius: 0; /* Removed rounded corners */
	box-shadow: 0 5px 15px rgba(0, 0, 0, 0.1); /* Simplified shadow */
	/* Removed backdrop-filter and decorative elements */
	border: 1px solid rgba(238, 80, 87, 0.2);
	position: relative;
	overflow: hidden;
	transition: all 0.3s ease;
}

.tm-bg-white-transparent:hover {
	transform: translateY(-3px); /* Simplified hover effect */
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.12);
}

/* Remove decorative elements from transparent background */
/*
.tm-bg-white-transparent::before {
	content: "";
	position: absolute;
	top: -15px;
	right: -15px;
	width: 80px;
	height: 80px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 80 80"><path d="M10,40 Q30,10 50,40 T70,70" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.1;
}

.tm-bg-white-transparent::after {
	content: "";
	position: absolute;
	bottom: -15px;
	left: -15px;
	width: 60px;
	height: 60px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 60 60"><circle cx="30" cy="30" r="20" stroke="%23ee5057" stroke-width="0.5" fill="none"/></svg>') no-repeat;
	background-size: contain;
	opacity: 0.1;
}
*/

/* Remove decorative elements from footer */
/*
footer.tm-bg-dark-blue::before {
	content: "";
	position: absolute;
	top: 20px;
	left: 20px;
	width: 100px;
	height: 100px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><path d="M10,50 Q30,20 50,50 T90,50" stroke="white" stroke-width="1" fill="none" opacity="0.2"/></svg>') no-repeat;
	background-size: contain;
	transform: rotate(45deg);
}

footer.tm-bg-dark-blue::after {
	content: "";
	position: absolute;
	bottom: 20px;
	right: 20px;
	width: 80px;
	height: 80px;
	background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100"><circle cx="50" cy="50" r="40" stroke="white" stroke-width="1" fill="none" opacity="0.2"/></svg>') no-repeat;
	background-size: contain;
	transform: rotate(15deg);
}
*/

footer.tm-bg-dark-blue {
	position: relative;
	overflow: hidden;
	padding: 40px 0;
	background: linear-gradient(135deg, #1f3646 0%, #1a2d3d 100%);
}

footer.tm-bg-dark-blue .container {
	position: relative;
	z-index: 2;
}

footer p {
	color: #e0e0e0;
	font-size: 0.9rem;
	line-height: 1.8;
	margin-bottom: 10px;
	transition: all 0.3s ease;
}

footer p:hover {
	color: #ee5057;
	transform: translateY(-2px);
}

footer a {
	color: #ee5057;
	text-decoration: none;
	transition: all 0.3s ease;
}

footer a:hover {
	color: #d53239;
	text-decoration: underline;
}

/* Add artistic corner elements to sections */
.tm-section {
	position: relative;
}

/* Removed decorative elements */
.tm-section::before {
	content: none;
}

.tm-section::after {
	content: none;
}
