/* ========================================== */
/* === CSS Table of Contents ================ */
/* === 2023 © Guardian Sages ================ */ 
/* ========================================== */

/* ========================================== */
/* === 1. Top Header Section ================ */
/* === 2. Navigation Section ================ */
/* === 3. Website Pages Section ============= */
/* ===    a. Home Section =================== */
/* ===    b. About Section ================== */
/* ===    c. Services Section =============== */
/* ===    d. Gallery Section ================ */
/* ===    e. Areas We Service Section ======= */
/* ===    f. Testimonials Section =========== */
/* ===    g. Contact Section ================ */
/* ===    h. Sections On Every Page ========= */
/* === 4. Misc. Section ===================== */
/* ===    a. Referrals Owl Carousel ========= */
/* ===    b. Default Classes ================ */
/* ===    c. Gallery Function Section ======= */
/* ===    d. Reviews Function Section ======= */
/* === 5. Footer Section ==================== */
/* === 6. Lg. Laptop CSS Section ============ */
/* === 7. Sm. Laptop CSS Section ============ */
/* === 8. Tablet CSS Section ================ */
/* === 9. Mobile CSS Section ================ */
/* === 10. Sm. Mobile CSS Section =========== */
/* ========================================== */

@import url('https://fonts.googleapis.com/css?family=Staatliches');
@import url('https://fonts.googleapis.com/css?family=Montserrat:200,300,400,700,900');

@font-face {
	font-family: 'font';
	src:url('../fonts/arvo.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}

@font-face {
	font-family: 'font2';
	src:url('../fonts/poppins.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-family: 'font3';
	src:url('../fonts/Monoton-Regular.ttf') format('truetype');
	font-weight: normal;
	font-style: normal;
}
@font-face {
	font-weight: normal;
	font-style: normal;
	font-family: 'feathericons';
	src:url('../fonts/feathericons/feathericons.eot?-8is7zf');
	src:url('../fonts/feathericons/feathericons.eot?#iefix-8is7zf') format('embedded-opentype'),
		url('../fonts/feathericons/feathericons.woff?-8is7zf') format('woff'),
		url('../fonts/feathericons/feathericons.ttf?-8is7zf') format('truetype'),
		url('../fonts/feathericons/feathericons.svg?-8is7zf#feathericons') format('svg');
}

/* ======================================== */
/* === Top Header Section ================= */
/* ======================================== */
/* ==============================
   ULS HEADER SYSTEM
============================== */

.uls-header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    z-index: 9999;
    transition: all .3s ease;
    background: transparent;
}

.uls-header-solid {
    background: #fff;
    box-shadow: 0 15px 40px rgba(0,0,0,.4);
}

.uls-header-solid .uls-nav a {
	color: #000;
}

.uls-header-solid .uls-call-text a {
	color: #000;
}



.uls-header-inner {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 20px 60px;
}

/* Logo */

.uls-logo img {
    height: 65px;
}

/* Nav */

.uls-nav ul {
    list-style: none;
    display: flex;
    gap: 40px;
    margin: 0;
    padding: 0;
}

.uls-nav a {
    text-decoration: none;
    color: #fff;
    font-weight: 600;
    letter-spacing: .5px;
    position: relative;
    transition: .3s ease;
}

.uls-nav a:hover {
    color: #f15a24;
}




/* CTA Section */

.uls-cta-group {
    display: flex;
    align-items: center;
    gap: 20px;
}

.uls-phone {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
}

.uls-cta {
    background: #f15a24;
    padding: 12px 26px;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    transition: .3s ease;
}

.uls-cta:hover {
    background: #d94e1e;
}

/* Mobile */

.uls-menu-toggle {
    display: none;
    flex-direction: column;
    gap: 5px;
    cursor: pointer;
}

.uls-menu-toggle span {
    width: 25px;
    height: 3px;
    background: #fff;
}

/* Responsive */

@media (max-width: 992px) {
.uls-logo img {
    height: 65px;
    display: none;
}
    .uls-nav {
        display: none;
    }

    .uls-cta-group {
        display: none;
    }

    .uls-menu-toggle {
        display: flex;
    }

}

/* CALL BOX */

.uls-call-box {
    display: flex;
    align-items: center;
    gap: 12px;
}

.uls-call-icon {
    background: #f15a24;
    width: 42px;
    height: 42px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #fff;
}

.uls-call-text span {
    font-size: 12px;
    color: #aaa;
    display: block;
}

.uls-call-text a {
    color: #fff;
    font-weight: 700;
    text-decoration: none;
}

/* PANEL ICON (grid style) */

.uls-panel-trigger {
    width: 26px;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 4px;
    cursor: pointer;
}

.uls-panel-trigger span {
    width: 6px;
    height: 6px;
    background: #fff;
}

.uls-header-solid .uls-panel-trigger span {
	background:  #000;
}

/* OVERLAY */
.uls-overlay {
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,0.7);
    opacity: 0;
    visibility: hidden;
    transition: .3s ease;
    z-index: 9998;
}

/* PANEL */
.uls-side-panel {
    position: fixed;
    top: 0;
    right: -400px;
    width: 380px;
    height: 100%;
        background: radial-gradient(circle,rgba(0, 0, 0, 0.37) 2%, rgba(0, 0, 0, 1) 63%), url(/img/homepage/uls-truck.webp);
    background-size: cover;
    background-position: center;
    border-left: 15px solid #000;
    padding: 40px;
    transition: .4s ease;
    z-index: 9999;
    overflow-y: auto;
}

.uls-side-panel.active {
    right: 0;
}

.uls-overlay.active {
    opacity: 1;
    visibility: visible;
}

.uls-panel-header {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.uls-panel-header img {
    height: 60px;
}

.uls-close {
    font-size: 28px;
    cursor: pointer;
}

.uls-panel-text {
    margin: 30px 0;
    color: #aaa;
}

.uls-panel-contact p {
    margin-bottom: 10px; color: #f15a24;
}

.uls-panel-social a {
    margin-right: 10px;
    color: #fff;
}

/* ======================================== */
/* === Navigvation Section ================ */
/* ======================================== */
.navbar-inverse .navbar-inner {
	display:none;
}
.dropdown-menu {
	position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 200px; padding: .5rem 0; margin: .125rem 0 0; font-size: 18px; color: rgb(33, 37, 41); text-align: left; list-style: none; background-color: rgb(255,255,255); background-clip: padding-box; border: 1px solid rgba(0,0,0,.15); border-radius: .25rem;
}
.dropdown-menu.columns-3 {
	min-width: 600px;
}
.dropdown-menu li a {
	padding: 5px 15px; font-weight: 300;
}
.dropdown-item {
	display: block; width: 100%; font-weight: 600; font-family: 'font2'; padding: .25rem 1.5rem; clear: both; color: rgb(12,12,12); text-align: inherit; white-space: nowrap; background: 0 0;border: 0;
}
.dropdown-item.active, .dropdown-item:active {
	color: rgb(255,255,255); text-decoration: none; background-color: rgb(22,22,22) !important;
}
.dropdown {
	float: left; position: relative;
}
.dropdown .dropbtn {
	font-size: 16px; border: none; outline: none; color: white; padding: 14px 16px; background-color: inherit;font-family: inherit; margin: 0;
}
.navbar a:hover, .dropdown:hover .dropbtn {
	background-color: #043174;
}
.dropdown-one {
	cursor: pointer; display: none; position: absolute; background-color: #f9f9f9; min-width: 160px; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.dropdown-two {
	cursor: pointer; display: none; position: absolute; left: 160px; top: 0px; min-width: 160px; background-color: #f9f9f9; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.dropdown-three {
	cursor: pointer; display: none; position: absolute; left: 160px; top: 48px; min-width: 160px; background-color: #f9f9f9; box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
}
.dropdown:hover .dropdown-one, #link1:hover > .dropdown-two {
	display: block;
}
.dropdown:hover .dropdown-one, #link2:hover > .dropdown-three {
	display: block;
}
.dropdown-one .dItem {
	color: black; padding: 12px 16px; display: block; text-align: left;
}
.dropdown-one .dItem:hover, .dropdown-two a:hover {
	background-color: #ddd;
}
.my-pad {
	padding: 0 0 0 15px;
}
.my-pad h5 {
	color: rgb(255,255,255); font-size: 18px; text-transform: uppercase; padding-top: 20px;	line-height: 5px; font-weight: 600;
}
.multi-column-dropdown {
	list-style: none; margin: 0px; padding: 0px;
}
ul.multi-column-dropdown {
	padding: 0 0 0;
}
.multi-column-dropdown li a {
	display: block;	clear: both; line-height: 1.428571429; color: #333; white-space: normal;
}
.multi-column-dropdown li a:hover {
	text-decoration: none; color: #262626; background-color: #999;
}
.tab {
	overflow: hidden; border: 1px solid #ccc; background-color: #f1f1f1; font-family: 'font2';
}
.tab button {
	background-color: inherit; float: left; border: none; outline: none; cursor: pointer; padding: 14px 16px; transition: 0.3s; font-size: 17px;
}
.tab button:hover {
	background-color: #ddd;
}
.tab button.active {
	background-color: #ccc;
}
.tabcontent {
	display: none; padding: 6px 12px; border: 1px solid #ccc; border-top: none;
}
.tabcontent h3 {
	padding-top: 40px; padding-bottom: 40px; font-family: 'font'; text-align: center; font-size: 2rem; color: rgb(246,177,24);
}
.top-header-animate {
	background: rgb(255,255,255);
}
.top-header-animate .dropdown-toggle {
	color:#0a0a0a; font-size: 16px;
}
.top-header-animate .navbar-brand {
	font-size: 1.5em;
}
body {
	padding: 0; -webkit-transition-property: all; -webkit-transition-duration: .30s; -webkit-transition-timing-function: ease-in-out; transition-property: all; transition-duration: .30s; transition-timing-function: ease-in-out; overflow-x: hidden;
}

.navbar-scroll .container {
	background: rgb(60,36,17,0); border-bottom-left-radius: 1.5rem;	border-bottom-right-radius: 1.5rem;
}
#projects .navbar-scroll {
	background: #fdfdfd; position:relative !important;
}
#projects .navbar-scroll li a {
	color:#333;
}
#projects .navbar-scroll .navbar-brand {
	color:#252525;
}
#projects .navbar-light .lnr {
	color:#222;
}
.navbar-light .lnr {
	color: #fdfdfd;	font-size: 1.5em; position: absolute; top: 6px; right: 10px;
}
.navbar-light .navbar-brand {
	color: #e8e8e8; font-size: 20px; font-family: 'Montserrat', sans-serif;
}
.navbar-brand {
	font-size:2.5em; font-weight:700; text-transform:uppercase;
}
.navbar-brand:focus, .navbar-brand:hover {
	color:#f3f3f3 !important;
}
.navbar-light .navbar-nav .nav-link {
	margin: 0 28px; padding: 6px 0px; font-weight: 900; font-size: 18px; color: rgb(255,255,255); font-family: 'font2';
}
.navbar-light .navbar-nav .active>.nav-link, .navbar-light .navbar-nav
.nav-link.active, .navbar-light .navbar-nav .nav-link.show, .navbar-light
.navbar-nav .show>.nav-link {
	color: rgb(255,255,255);
}
.navbar-light .navbar-nav .nav-link:focus, .navbar-light .navbar-nav .nav-link:hover {
	color: rgb(196,41,56);
}
.navbar-light .navbar-nav li a {
	position: relative;
}
.navbar-collapse {
	height: 100%;
}
.mobile-top-header {
	display: none !important;
}

/* ========================================== */
/* === Website Pages Section ================ */
/* ========================================== */

/**** Home Section ****/
.bg-primary {
	background: rgb(83,82,82) !important;
}
.home-header-section {
	padding-top: 125px;
}
.home-header-section .slider-logo span {
	font-family: 'font'; color: rgb(196,41,56);
}
.video {
	overflow: hidden; position: relative; z-index: 2; display: block;
}
.video .pad {
	padding: 350px 0px 0px 300px; position: absolute;
}
.video .pad h5 {
	font-weight: 500; color: rgb(255,255,255); font-size: 50px; text-shadow: 0px 0px 5px #000; font-family: 'Arial'; text-align: left;
}
.video .pad p {
	margin-top: 0% !important; color: rgb(255,255,255); text-shadow: 0px 0px 5px #000; font-size: 25px; font-family: 'Arial'; text-align: left;
}
.video .pad a {
	font-size: 16px; color: rgb(255,255,255); font-family: 'Arial'; font-weight: 600; border: 1px solid rgb(12,32,63); padding: 15px 30px; border-radius: 1.6rem; background: rgb(12,32,63);
}
.video .pad a:hover {
	color: rgb(255,255,255); border: 1px solid rgb(255,255,255); background: transparent;
}
/* ==============================
   ULS HERO SECTION
============================== */

/* ==============================
   ULS HERO SECTION
============================== */

.home1 {
    position: relative;
    height: 100vh;
    background: url('/img/homepage/survey-06.webp') center center / cover no-repeat;
    display: flex;
    align-items: center;
    overflow: hidden;
    color: #fff;

    clip-path: polygon(
        0 0,
        100% 0,
        100% 85%,
        75% 92%,
        50% 88%,
        25% 94%,
        0 90%
    );
}

/* Dark gradient overlay */
.home1::before {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        90deg,
        rgba(0,0,0,0.85) 0%,
        rgba(0,0,0,0.75) 40%,
        rgba(0,0,0,0.45) 70%,
        rgba(0,0,0,0.15) 100%
    );
    z-index: 1;
}



/* Ensure content stays above overlays */
.home1 .container {
    position: relative;
    z-index: 3;
}

/* ==============================
   HERO TYPOGRAPHY
============================== */

.uls-hero-tag {
    font-size: 14px;
    letter-spacing: 3px;
    color: #ffffff;
    margin-bottom: 15px;
}

.home1 h1 {
    font-family: Montserrat;
    font-size: 60px;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 20px;
    color: #ffffff;
}

.home1 h1 span {
    color: #f15a24; /* your brand orange */
}

.home1 p {
    font-size: 18px;
    font-family: 'font2';
    font-weight: 500;
    color: #cccccc;
    margin: 30px 0px 45px 0px;
}


@media (max-width: 991px){
	
.home1 {
 
    text-align: center;
}
	
.home1 h1 {
    font-family: Montserrat;
    font-size: 2.2rem;
    font-weight: 800;
    line-height: 1.1;
    margin-bottom: 20px;
    color: #ffffff;
}
}
/* ==============================
   HERO BUTTONS
============================== */

.uls-hero-buttons {
    display: flex;
    gap: 20px;
}

.uls-btn-primary {
    background: #f15a24;
    padding: 15px 32px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    transition: .3s ease;
}

.uls-btn-primary:hover {
    background: #d94e1e;
}

.uls-btn-outline {
    display: inline-flex;
    border: 2px solid #fff;
    padding: 15px 32px;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    transition: .3s ease;
}

.uls-btn-outline:hover {
    background: #fff;
    color: #000;
}

@media(max-width: 991px){
.uls-btn-outline {
    display: inline-flex;
    border: 2px solid #fff;
    padding: 15px 32px;
    justify-content: center;
    font-weight: 700;
    text-decoration: none;
    color: #fff;
    transition: .3s ease;
}
	
}
/* ==========================
   ULS ABOUT SECTION
========================== */

/* ==========================
   ULS ABOUT SECTION
========================== */

.uls-about {
    padding: 120px 0;
    background: #fff;
}

.uls-about-content {
    padding-right: 40px;
}

/* Section Tag */
.uls-section-tag {
    font-size: 14px;
    letter-spacing: 3px;
    color: #f15a24;
    margin-bottom: 15px;
}

.uls-section-tag span {
	font-weight: 800; text-transform: uppercase; 
}

/* Heading */
.uls-about h2 {
    font-size: 46px;
    font-weight: 800;
    line-height: 1.2;
    margin-bottom: 25px;
    color: #222;
}

/* Intro Paragraph */
.uls-about-intro {
    font-size: 17px;
    color: #666;
    margin-bottom: 25px;
}

/* Bullet List */
.uls-about-list {
    list-style: none;
    padding: 0;
    margin-bottom: 35px;
}

.uls-about-list li {
    margin-bottom: 10px;
    padding-left: 25px;
    position: relative;
    color: #333;
}

.uls-about-list li::before {
    content: "✵";
    position: absolute;
    left: 0;
    top: -3px;
    color: #f15a24;
    font-size: 20px;
}

@media(max-width: 991px){
.uls-about {
    padding: 120px 0;
    background: #fff;
    text-align: center;
}
}

/* ==========================
   FOUNDER ROW
========================== */

.uls-founder-row {
    display: flex;
    align-items: center;
    gap: 20px;
    margin-bottom: 40px;
}

.uls-founder-img img {
    width: 70px;
    height: 70px;
    object-fit: cover;
    border-radius: 50%;
}

.uls-founder-info strong {
    display: block;
    font-size: 16px;
    color: #222;
}

.uls-founder-info span {
    font-size: 14px;
    color: #777;
}

.uls-founder-cta {
    margin-left: auto;
}

/* ==========================
   VIDEO (UNDER CONTENT)
========================== */

.uls-about-video {
    margin-top: 30px;
    overflow: hidden;
    border-radius: 10px;
}

.uls-about-video video {
    width: 100%;
    height: auto;
    display: block;
    object-fit: cover;
}

/* ==========================
   RIGHT COLUMN MEDIA
========================== */

.uls-about-media {
    padding-left: 40px;
}

/* Angled Image */
.uls-about-image img {
    width: 100%;
    display: block;
	border-bottom: 5px solid #f15a24;
    border-left: 10px solid #f15a24;
    border-top: 1px solid #f15a24;
    clip-path: polygon(
        0 0,
        88% 0,
        100% 12%,
        100% 100%,
        0 100%
    );
}

/* Support Text Under Image */
.uls-about-support {
    margin-top: 30px;
}

.uls-about-support p {
    color: #555;
    margin-bottom: 20px;
    font-size: 16px;
}

/* ==========================
   BUTTONS
========================== */

.uls-btn-primary {
    background: #f15a24;
    padding: 12px 26px;
    color: #fff;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
    display: inline-block;
}

.uls-btn-primary:hover {
    background: #d94e1e;
    color: #fff;
    text-decoration: none;
}

.uls-btn-outline-dark {
    border: 2px solid #222;
    padding: 12px 26px;
    color: #222;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
    display: inline-block;
}

.uls-btn-outline-dark:hover {
    background: #222;
    color: #fff;
    text-decoration: none;
}

/* ==========================
   RESPONSIVE
========================== */

@media (max-width: 991px) {

    .uls-about-content,
    .uls-about-media {
        padding: 0;
    }

    .uls-founder-row {
        flex-wrap: wrap;
    }

    .uls-founder-cta {
        margin-left: 0;
        margin-top: 15px;
    }

    .uls-about-image img {
        clip-path: none;
    }

}

.uls-service-panel {
    display: none;
}

.uls-service-panel.active {
    display: block;
}

.uls-img {
    display: none;
    width: 100%;
}

.uls-img.active {
    display: block;
}

/* ===================================
   ULS SERVICES SECTION
=================================== */

/* ===================================
   SERVICES SECTION BASE
=================================== */

.uls-services {
    position: relative;
    padding: 160px 0 140px;
    background: url('/img/homepage/survey-011.webp') right / cover no-repeat;
    overflow: hidden; background-attachment: fixed;
}

/* Soft left-to-right wash (like Construx) */
.uls-services::before {
    content: "";
    position: absolute;
    inset: 0;
    background: #0009;
    z-index: 1;
}

.uls-services .container {
    position: relative;
    z-index: 2;

    background: #fff;
    padding: 100px 60px 150px 60px;

    clip-path: polygon(
        0% 5%,
        5% 0%,
        95% 0%,
        100% 5%,
        100% 95%,
        95% 100%,
        5% 100%,
        0% 95%
    );

    box-shadow: 0 40px 80px rgba(0,0,0,0.08);
}


@media(max-width: 991px){
.uls-services .container {
    position: relative;
    z-index: 2;
    background: #fff;
    padding: 100px 10px 150px 10px;
    clip-path: polygon(
        0% 5%,
        5% 0%,
        95% 0%,
        100% 5%,
        100% 95%,
        95% 100%,
        5% 100%,
        0% 95%
    );
    box-shadow: 0 40px 80px rgba(0,0,0,0.08);
}
}
/* ===================================
   SECTION INTRO
=================================== */

.uls-services-intro {
    max-width: 750px;
    margin: 0 auto 80px;
}

.uls-eyebrow {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 700;
    color: #f15a24;
    margin-bottom: 15px;
}

.uls-services-intro h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 20px;
    color: #111;
}

.uls-services-intro p {
    color: #666;
    font-size: 17px;
    line-height: 1.6;
}



@media(max-width: 991px){

.uls-services-intro h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 20px;
    color: #111;
}
	
}


/* ===================================
   TABS (LEFT COLUMN)
=================================== */

.uls-service-tabs {
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.uls-service-tab {
    padding: 18px 26px;
    background: #eaeaea;
    font-weight: 600;
    cursor: pointer;
    transition: all 0.3s ease;
    position: relative;

}

.uls-service-tab::after {
    content: "↗";
    position: absolute;
    right: 20px;
    opacity: 0.5;
}

.uls-service-tab.active {
    background: #f15a24;
    color: #fff;
}

.uls-service-tab.active::after {
    opacity: 1;
}

.uls-service-tab:hover {
    background: #d94e1e;
    color: #fff;
}

/* ===================================
   CENTER IMAGE
=================================== */

.uls-service-images {
    position: relative;
    background: #111;
    padding: 25px;
}

.uls-img {
    display: none;
    width: 100%;
    transition: opacity 0.3s ease;
}

.uls-img.active {
    display: block;
}

.uls-service-images::after {
    content: "SERVICE";
    position: absolute;
    bottom: 20px;
    left: 25px;
    font-size: 14px;
    color: rgba(255,255,255,0.6);
    letter-spacing: 3px;
}

/* ===================================
   RIGHT CONTENT
=================================== */

.uls-service-content-wrapper {
    padding: 50px;
    height: 100%;
    background: #f15a24;
clip-path: polygon(
    0% 10%,
    10% 0%,
    90% 0%,
    100% 10%,
    100% 90%,
    90% 100%,
    10% 100%,
    0% 90%
);
 border: 3px solid #000;
}
.uls-service-content-outer {
    background: #000; height: 100%;
}

.uls-service-panel {
    display: none;
    animation: fadeIn 0.3s ease forwards;
}

.uls-service-panel.active {
    display: block;
}

.uls-service-panel h3 {
    font-size: 32px;
    margin-bottom: 20px;
    color: #222; font-weight: 600; font-family: Montserrat;
}

.uls-service-panel p {
    color: #000;
    margin-bottom: 20px;
    line-height: 1.6;
}

.uls-service-panel ul {
    list-style: none;
    padding: 0;
    margin-bottom: 30px;
}

.uls-service-panel ul li {
    padding-left: 22px;
    margin-bottom: 8px; color: #fff;
    position: relative;
}

.uls-service-panel ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #fff;
}

.uls-service-panel i {
	font-size: 35px; height: 75px; width: 75px; padding: 17px 15px 15px 20px; color: #fff;
	background: #000;
	margin-bottom: 15px;
	clip-path: polygon(
    0% 15%,
    15% 0%,
    85% 0%,
    100% 15%,
    100% 85%,
    85% 100%,
    15% 100%,
    0% 85%
);
}

/* ===================================
   BUTTON
=================================== */

.uls-btn-primary {
    background: #111;
    color: #fff;
    padding: 14px 30px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
    display: inline-block;
}

.uls-btn-primary:hover {
    background: #f15a24;
    color: #fff;
}

/* ===================================
   ANIMATION
=================================== */

@keyframes fadeIn {
    from { opacity: 0; transform: translateY(8px); }
    to { opacity: 1; transform: translateY(0); }
}

/* ===================================
   RESPONSIVE
=================================== */

@media (max-width: 991px) {

    .uls-service-content-wrapper {
        padding-left: 0;
        margin-top: 40px;
    padding: 50px 10px
		
		
    }

    .uls-service-images {
        margin-top: 40px;
    }

}

/* SECTION BASE */
.uls-benefits {
    position: relative;
   /* padding: 160px 0;*/
    background: #f5f5f5;
    overflow: hidden;
	    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin-bottom: -165px;
    z-index: 1;

}

/* LEFT IMAGE */
.uls-benefit-image img {
    width: 100%;
    max-width: 550px;
}

/* RIGHT CONTENT */
.uls-benefits-content {
    position: relative;
    z-index: 2;
	padding: 125px 25px 250px 25px; background: #fff;
}

.uls-eyebrow {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 700;
    color: #f15a24;
    margin-bottom: 15px;
}

.uls-benefits h2 {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 50px;
}

/* BENEFIT ITEMS */
.uls-benefit-item {
    display: flex;
    align-items: flex-start;
    gap: 25px;
    margin-bottom: 40px;
    cursor: pointer;
    position: relative;
    transition: all 0.3s ease;
}

/* NUMBER */
.uls-benefit-number {
    font-size: 64px;
    font-weight: 800;
    color: #ddd;
    position: relative;
    transition: all 0.3s ease;
}

/* Subtle background block behind active number */
.uls-benefit-item.active .uls-benefit-number::before {
    content: "";
    position: absolute;
    left: -15px;
    top: 10px;
    width: 50px;
    height: 50px;
    background: rgba(241,90,36,0.15);
    z-index: -1;
}

/* Hover Effect */
.uls-benefit-item:hover .uls-benefit-number {
    color: #f15a24;
}

/* TEXT */
.uls-benefit-text h5 {
    font-weight: 700;
    margin-bottom: 10px;
}

.uls-benefit-text p {
    color: #666;
    line-height: 1.6;
}

.uls-benefit-bg-text {
    position: absolute;
    right: 75px;
    top: 75%;
    transform: translateY(-50%) rotate(180deg);
    writing-mode: vertical-rl;
    font-size: 75px;
    font-weight: 900;
    letter-spacing: 10px;
    pointer-events: none;
}

/* All words stacked */
.uls-benefit-bg-text span {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
    transition: opacity 0.5s ease, color 0.4s ease;
    color: rgba(0,0,0,0.04);
}

/* Visible word */
.uls-benefit-bg-text span.active {
    opacity: 1;
}

/* Section hover = orange */
.uls-benefits:hover .uls-benefit-bg-text span.active {
    color: #f15a24;
}





@media(max-width:1700px){
.uls-benefit-bg-text {
    display: none;
}
.uls-benefit-image img {
    width: 100%;
    max-width: 100%;
}
}
.uls-litigation-services {
    padding: 200px 150px 300px 150px;
        background: linear-gradient(#000000c4, #000000c4), url(/img/homepage/litigation-01.webp);
    background-size: cover;
    background-attachment: fixed;
	clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-litigation-services .spacer {
	    --bs-gutter-x: 3.5rem;
}

.uls-section-intro {
    max-width: 750px;
    margin-bottom: 70px;
}

.uls-litigation-services h2 {
    font-size: 42px;
    font-weight: 800;
	color: #fff; text-shadow: 1px 1px 1px #000;
    margin-bottom: 15px;
}

.uls-section-intro h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 15px;
}

.uls-section-intro p {
    color: #f8f8f8;
    font-size: 17px;
}

/* CARD */

/* Hover Lift */
.uls-litigation-card:hover {
    transform: translateY(-10px);
	border: 2px solid #000;
    box-shadow: 1px 1px 10px 1px #000;
}

/* Icon */
.uls-card-icon {
     font-size: 50px;
    color: #f15a24;
    margin-bottom: 25px;
    background: #000;
    font-weight: 600;
    padding: 10px 10px 10px 15px;
    width: 90px;
    position: relative;
    top: -40px;
    left: -40px;
    border-right: 3px solid #f15a24;
    border-bottom: 2px solid #f15a24;
    box-shadow: 1px 1px 10px 1px #000;
}

/* Title */
.uls-litigation-card h3 {
    font-weight: 800; font-size: 25px;
    margin-bottom: 20px;
}

.uls-litigation-card h4 {
    font-weight: 700; font-size: 17px;
    margin-bottom: 20px;
}

/* List */
.uls-litigation-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.uls-litigation-card ul li {
    padding-left: 22px;
    position: relative;
    margin-bottom: 8px;
}

.uls-litigation-card ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

/* Arrow */
.uls-card-arrow {
    position: absolute;
    bottom: 25px;
    right: 25px;
    font-size: 14px;
    color: #f15a24;
    opacity: 0.7;
    transition: 0.3s ease;
}

.uls-litigation-card:hover .uls-card-arrow {
    opacity: 1;
    transform: translateX(3px);
}

.uls-litigation-card {
    position: relative;
    overflow: hidden;
    background: linear-gradient(0deg,rgba(245, 245, 245, 1) 94%, rgba(241, 90, 36, 1) 94%, rgba(241, 90, 36, 1) 95%, rgba(0, 0, 0, 1) 95%, rgba(0, 0, 0, 1) 100%);

    padding: 40px 40px 75px 40px; height: 100%;
        border: 3px solid #000000;
		border-left-width: 15px !important;
    transition: transform 0.35s ease, box-shadow 0.35s ease;
	box-shadow: -3px 0px 0px 0px #F15A24;
	clip-path: polygon(
  0 0,
  100% 0,
  100% 88%,
  88% 100%,
  0 100%
);
}

.uls-litigation-card::after {
     content: "";
    position: absolute;
    right: 28px;
    bottom: -31px;
    width: 18px;
    height: 136px;
    background: #000;
    transform: rotate(229deg);
    transform-origin: right center;
    pointer-events: none;
}

.uls-card-front {
    position: relative;
    z-index: 1;
    transition: opacity 0.3s ease;
}

.uls-card-overlay {
    position: absolute;
    inset: 0;
        background: linear-gradient(140deg, rgba(241, 90, 36, 1) 90%, rgba(0, 0, 0, 1) 90%, rgba(0, 0, 0, 1) 95%, rgba(0, 0, 0, 0) 91%);
    color: #fff;
    padding: 40px;
    z-index: 3;

    display: flex;
    flex-direction: column;
    justify-content: center;

    transform: translateY(100%);
    transition: transform 0.6s cubic-bezier(.77,0,.18,1);
}


/* Reveal */
.uls-litigation-card:hover .uls-card-overlay {
    transform: translateY(0%);
}

/* Completely hide front when open */
.uls-litigation-card:hover .uls-card-front {
    opacity: 0;
}



@media (max-width: 991px) {
	
.uls-litigation-services {
    padding: 200px 10px 300px 10px;
    background: linear-gradient(#000000c4, #000000c4), url(/img/homepage/litigation-01.webp);
    background-size: cover;
    background-attachment: fixed;
    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%); text-align: center
}
.uls-section-intro h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 15px;
}

.uls-litigation-card ul {
    list-style: none;
    padding: 0;
    margin: 0;
    column-count: 2;
}
.uls-card-icon {
    left: 0;
}
.uls-litigation-card {
    padding: 40px 10px 75px 10px;
    clip-path: polygon(
  0 0,
  100% 0,
  100% 88%,
  88% 100%,
  0 100%
);
}
}














.uls-project-gallery {
    padding: 140px 0;
    background: #fff;
}

.uls-project-card {
    position: relative;
    overflow: hidden;
	    border-left: 5px solid #f15a24;
    border-bottom: 7px solid #f15a24;
clip-path: polygon(
  15% 0,
  100% 0,
  100% 85%,
  85% 100%,
  0 100%,
  0 15%
);
}

.uls-project-card h3 {
	font-weight: 800;
}

.uls-project-card img {
    width: 100%;
    height: 350px;
    object-fit: cover;
    transition: transform 0.5s ease;
}

.uls-project-card:hover img {
    transform: scale(1.05);
}

.uls-project-overlay {
     position: absolute;
    bottom: -150px;
    background: #0009;
    padding: 25px;
    color: #fff;
    width: 100%;
    height: 100%;
}

.uls-project-tag {
    background: rgba(0,0,0,0.5);
    padding: 6px 14px;
    font-size: 12px;
    margin-bottom: 15px;
    display: inline-block;
}

.uls-project-btn {
    margin-top: 20px;
    background: #f15a24;
    border: none;
    padding: 12px 30px;
    color: #fff;
    font-weight: 600;
}


.modal-content {
    border: none;
    border-radius: 0;
}

.modal-body h3 {
    font-weight: 700;
    margin-bottom: 20px;
}

.uls-project-modal-list {
    list-style: none;
    padding: 0;
    margin-top: 20px;
}

.modal-content li {
    padding-left: 22px;
	list-style: none;
    position: relative;
    margin-bottom: 10px;
}

.modal-content li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

/* Position arrows inside slider */
.uls-project-gallery .uls-swiper-prev,
.uls-project-gallery .uls-swiper-next {
    width: 55px;
    height: 55px;
    background: #f15a24;
    border-radius: 50%;
    top: 50%;
    transform: translateY(-50%);
}

.uls-project-gallery .uls-swiper-prev {
    left: -25px; position: sticky;
}

.uls-project-gallery .uls-swiper-next {
    right: -25px;position: sticky;
}

.uls-project-gallery .uls-swiper-prev::after,
.uls-project-gallery .uls-swiper-next::after {
    color: #fff;
    font-size: 18px;
    font-weight: 700;
}

/* Hover effect */
.uls-project-gallery .uls-swiper-prev:hover,
.uls-project-gallery .uls-swiper-next:hover {
    background: #111;
}

/* Pagination positioning */
.uls-project-gallery .swiper-pagination {
    position: relative;
    margin-top: 50px;
    text-align: center;
}

/* Font Awesome dots */
.uls-project-gallery .swiper-pagination-bullet {
    background: transparent;
    opacity: 1;
    margin: 0 20px !important;
    font-size: 25px;
    color: #000;
    transition: 0.3s ease;
}

.uls-project-gallery .swiper-pagination-bullet-active {
    color: #f15a24;
    transform: scale(1.2);
}

@media (max-width: 991px) {
.uls-project-overlay {
    position: absolute;
    bottom: -95px;
    background: #0009;
    padding: 25px;
    color: #fff;
    width: 100%;
    height: 100%;
}
}




.uls-stats {
  padding: 75px 0;
    background: #f15a24;
    text-align: center;
	clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 100%, 0 100%);
    margin-bottom: -50px;
    position: relative;
    z-index: 2;
}

.uls-stat-item {
  position: relative;
  padding: 40px 20px;
  cursor: pointer;
  transition: 0.4s ease;
}

.uls-stat-number {
  font-size: 110px;
  font-weight: 900;
  line-height: 1;
  color: transparent;
  -webkit-text-stroke: 1.5px #fff;
  transition: 0.4s ease;
  font-family: monospace;
}

.uls-stat-item p {
  margin-top: 20px;
  color: #fff;
  font-weight: 500;
}

/* Background geometric shape */
.uls-stat-item::before {
  content: "";
  position: absolute;
  width: 275px;
  height: 275px;
  background: #fff;
  top: 50%; border: 5px solid #000;
  left: 50%;
  transform: translate(-50%, -50%) scale(0) rotate(0deg);
  z-index: 0;

  /* Octagon-like shape */
  clip-path: polygon(
    30% 0%, 70% 0%,
    100% 30%, 100% 70%,
    70% 100%, 30% 100%,
    0% 70%, 0% 30%
  );

  opacity: 0.50;
  transition: 0.4s ease;
}

.uls-stat-number {
  position: relative;
  z-index: 2;
}

/* Hover effect */
.uls-stat-item:hover::before {
  transform: translate(-50%, -50%) scale(1) rotate(20deg);
}

.uls-stat-item:hover .uls-stat-number {
  color: #000;
  -webkit-text-stroke: 0px;
}

.uls-stat-item:hover {
  transform: translateY(-8px); opacity: .90;
}

.uls-stat-item:hover p {
	color: #000; position: relative; z-index: 1; opacity: 100%;
}


.uls-reviews-section {
    padding: 250px 0;
       background: linear-gradient(#000000c4, #000000c4), url(/img/homepage/survey-04.webp);
    background-size: cover;
    background-attachment: fixed;
	clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-reviews-section h2 {
	font-weight: 800; color: #fff; margin: 10px 0px 50px 0px;
}

.uls-review-card {
    background: #fff;
    padding: 35px;
    height: 100%;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    position: relative;
   /* border: 3px solid #eaeaea;*/
    transition: 0.35s ease;
    overflow: hidden;
	    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
}

.uls-review-card h5 {
	font-weight: 800;
}

/* Hover lift */
.uls-review-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 20px 50px rgba(0,0,0,0.08);
}

/* Animated border wrapper */
.uls-review-card::before {
    content: "";
    position: absolute;
    inset: 0;
    padding: 2px; /* thickness */
    background:
        linear-gradient(#f15a24, #f15a24) top left,
        linear-gradient(#f15a24, #f15a24) top right,
        linear-gradient(#f15a24, #f15a24) bottom right,
        linear-gradient(#f15a24, #f15a24) bottom left;

    background-repeat: no-repeat;
    background-size: 0% 7px, 7px 0%, 0% 7px, 7px 0%;
    pointer-events: none;
    transition: background-size 0.6s ease;
}

/* Animate full perimeter */
.uls-review-card:hover::before {

    background-size:
        100% 7px,   /* top */
        7px 100%,   /* right */
        100% 7px,   /* bottom */
        7px 100%;   /* left */
}

.uls-review-top {
    display: flex;
    align-items: center;
    gap: 15px;
    margin-bottom: 20px;
}

.uls-review-avatar {
    width: 55px;
    height: 55px;
    border-radius: 50%;
    object-fit: cover;
}

.uls-review-card:hover .uls-review-avatar {
    transform: scale(1.05);    box-shadow: 0px 0px 0px 3px #f15a24;
}
.uls-review-avatar {
    transition: 0.3s ease;
}

.uls-stars {
    color: #f15a24;
    font-size: 14px;
    letter-spacing: 2px;
}

.uls-review-text {
    font-size: 15px;
    color: #555;
    margin-bottom: 20px;
}

.uls-review-text p {
    max-height: 80px;
    overflow: hidden;
    transition: 0.3s ease;
}

.uls-review-text.expanded p {
    max-height: 500px;
}

.uls-read-more {
    background: none;
    border: none;
    color: #f15a24;
    font-size: 14px;
    padding: 0;
    margin-top: 5px;
    cursor: pointer;
}

.uls-review-link {
    font-size: 14px;
    font-weight: 600;
    color: #111;
    text-decoration: none;
    margin-top: auto;
}

.uls-review-link:hover {
    color: #f15a24;
}

.uls-hidden {
    display: none;
}

@media(max-width:991px){
.uls-reviews-section {
    padding: 250px 0 111px 0;
    background: linear-gradient(#000000c4, #000000c4), url(/img/homepage/survey-04.webp);
    background-size: cover;
    background-attachment: fixed;
    clip-path: none;
}
	
}
/* ================================
   PLATS SECTION
================================ */

.uls-plats-section {
    padding: 0px 0 350px 0px;
    background: #fff;
	    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin-bottom: -230px;
    z-index: 2;
    position: relative;
}

.uls-plats-section .uls-section-intro {
    max-width: 750px;
    margin: 0 auto 70px auto;
}

.uls-plats-section .uls-section-intro h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 15px;
}

.uls-plats-section .uls-section-intro p {
    color: #666;
    font-size: 17px;
}


@media (max-width:991px){
.uls-plats-section .uls-section-intro h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 15px;
}
}

/* ================================
   PLAT CARD
================================ */

.uls-plat-card {
    position: relative;
    height: 420px;
    overflow: hidden;
    color: #fff;
    border-radius: 6px;
    transition: 0.4s ease;
	    border-left: 5px solid #f15a24;
    border-bottom: 7px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
}

.uls-plat-bg {
    position: absolute;
    inset: 0;
    background-size: cover;
    background-position: center;
    transform: scale(1);
    transition: 0.6s ease;
}

.uls-plat-overlay {
    position: relative;
    z-index: 2;
    padding: 50px;
    height: 100%;
    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.55) 0%,
        rgba(0,0,0,0.75) 100%
    );
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.uls-plat-overlay h3 {
    font-size: 28px;
    font-weight: 700;
    margin-bottom: 15px;
}

.uls-plat-overlay p {
    font-size: 15px;
    margin-bottom: 25px;
    color: #ddd;
}

/* Mini bullet grid */
.uls-plat-features {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 10px 20px;
    font-size: 14px;
}

.uls-plat-features div {
    position: relative;
    padding-left: 18px;
}

.uls-plat-features div::before {
    content: "";
    position: absolute;
    left: 0;
    top: 7px;
    width: 8px;
    height: 8px;
    background: #f15a24;
}

/* Hover Effects */

.uls-plat-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 30px 70px rgba(0,0,0,0.2);
}

.uls-plat-card:hover .uls-plat-bg {
    transform: scale(1.08);
}

.uls-plat-card:hover .uls-plat-overlay {
    background: linear-gradient(
        180deg,
        rgba(0,0,0,0.45) 0%,
        rgba(0,0,0,0.85) 100%
    );
}

@media(max-width:991px){
 
.uls-plats-section {
    padding: 100px 0 350px 0px;
    background: #fff;
    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin-bottom: -230px;
    z-index: 2;
    position: relative;
}
}
/* ================================
   CTA SECTION
================================ */

.uls-cta-section {
    position: relative;
    padding: 200px 0 250px 0px;
    overflow: hidden;
    color: #fff;
	clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

/* Background image layer */
.uls-cta-bg {
    position: absolute;
    inset: 0;
    background: 
        linear-gradient(
            180deg,
            rgba(0,0,0,0.65) 0%,
            rgba(0,0,0,0.75) 100%
        ),
        url('/img/homepage/survey-03.webp') center center / cover no-repeat;
    transform: scale(1);
    transition: transform 8s ease;
    z-index: 1;
}

/* Slow cinematic zoom */
.uls-cta-section:hover .uls-cta-bg {
    transform: scale(1.05);
}

.uls-cta-content {
    position: relative;
    z-index: 2;
    max-width: 800px;
    margin: 0 auto;
}

.uls-cta-content h2 {
    font-size: 48px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-cta-content p {
    font-size: 18px;
    color: #ddd;
    margin-bottom: 35px;
}

/* Buttons */

.uls-cta-buttons {
    display: flex;
    gap: 20px;
    justify-content: center;
    flex-wrap: wrap;
}

.uls-btn-outline-light {
    border: 2px solid #fff;
    padding: 16px 28px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s ease;
}

.uls-btn-outline-light:hover {
    background: #fff;
    color: #111;
}

/* Responsive */

@media (max-width: 768px) {
    .uls-cta-content h2 {
        font-size: 36px;
    }

    .uls-cta-section {
        padding: 120px 0;
    }
	
.uls-btn-outline-light {
    border: 2px solid #fff;
    padding: 16px 28px;
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    transition: 0.3s ease;
    display: inline-block;
}
}


.uls-faq-section {
    padding: 200px 0 100px 0;
    background: linear-gradient(180deg, #000000a6 0%, rgba(0, 0, 0, 0.75) 100%),
                url(/img/homepage/faq-meeting-01.webp);
    background-size: cover;
    background-attachment: fixed;
    position: relative;
    overflow: hidden;
}

.uls-faq-section .container {
    background: #fff;
    padding: 100px 50px 100px 50px;

      clip-path: polygon(0% 5%, 5% 0%, 95% 0%, 100% 5%, 100% 95%, 95% 100%, 5% 100%, 0% 95%);
}
.uls-faq-section .uls-section-intro {
	max-width: 100%;
}

.uls-faq-section .uls-section-intro p {
	color: #000;
}

.uls-faq-wrapper {
    max-width: 850px;
    margin: 0 auto;
}

.uls-faq-item {
    border-bottom: 1px solid #eaeaea;
}

.uls-faq-question {
    width: 100%;
    text-align: left;
    background: none;
    border: none;
    font-size: 17px;
    font-weight: 700;
    padding: 25px 0;
    cursor: pointer;
    transition: 0.3s ease;
}

.uls-faq-question:hover {
    color: #f15a24;
}

.uls-faq-answer {
    max-height: 0;
    overflow: hidden;
    transition: max-height 0.4s ease;
    font-size: 15px;
    color: #555;
    padding-bottom: 0;
}

.uls-faq-item.active .uls-faq-answer {
    padding-bottom: 25px;
}

.uls-faq-answer ul {
    margin: 15px 0;
}

.uls-faq-answer ul li {
    margin-bottom: 6px;
}

.uls-faq-answer a {
    color: #f15a24;
    font-weight: 600;
}


.uls-faq-left {
    left: 40px;
    top: 120px;
}

.uls-faq-right {
    right: 40px;
    bottom: 120px;
}

/* Ensure FAQ content sits above floating images */
.uls-faq-wrapper {
    position: relative;
    z-index: 2;
}

/* Floating images stay behind + do not block clicks */
.uls-faq-floating {
    position: absolute;
    width: 180px;
    opacity: 1;
    z-index: 1;
    pointer-events: none; /* THIS IS THE CRITICAL LINE */
}

/* Stack images nicely */
.uls-faq-floating img {
    display: block;
    width: 100%;
    margin-bottom: 30px;
}

.uls-licensing-section {
    padding: 120px 0 350px 0px;
    background: #fff; position: relative; margin-bottom: -175px; z-index: 1;
	    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-licensing-subtitle {
    text-align: center;
    font-weight: 700;
    margin-bottom: 40px;
    margin-top: 20px;
    letter-spacing: 1px;
}

.uls-licensing-section .uls-section-intro {
	max-width: 100%;
}

.uls-licensing-section .uls-section-intro p {
	color: #000;
}

.uls-license-card {
    background: #f9f9f9;
    padding: 50px 30px;
    border-radius: 14px;
    text-align: center;
    height: 100%;
    transition: all 0.35s ease;
    border: 1px solid #ececec;
    position: relative;
	 clip-path: polygon(
        0 8%,
        25% 4%,
        50% 10%,
        75% 5%,
        100% 8%,

        100% 85%,
        75% 92%,
        50% 88%,
        25% 94%,
        0 90%
    );
}

.uls-license-card:hover {
    transform: translateY(-8px);
    box-shadow: 0 15px 40px rgba(0,0,0,0.08);
}

.uls-license-logo {
    height: 90px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 20px;
}

.uls-license-logo img {
    max-height: 80px;
    max-width: 100%;
    object-fit: contain;
}

.uls-license-card h5 {
    font-weight: 700;
    margin-bottom: 12px;
}

.uls-license-card p {
    font-size: 14px;
    color: #555;
}


.uls-final-cta {
    padding: 0px 0 25px 0;
    background: #f15a24;
    color: #ffffff;
    position: relative;
    overflow: hidden;
}

.uls-final-cta-intro {
	/*background: #000; padding: 25px;*/
}

.uls-final-cta h2 {
    font-weight: 800; text-align: center; padding: 50px; background: #222;
    margin-bottom: 20px;
}

.uls-final-cta h3 {
    font-weight: 800; text-align: center; padding: 2.5rem; background: #222;
    margin-bottom: 20px;
}
.uls-final-cta p {
    max-width: 700px;
    margin: 0 auto 60px auto;
    font-size: 16px;
    opacity: 0.9;
}

.uls-cta-steps {
    margin-bottom: 60px;
}

.uls-cta-step {
    text-align: center;
    padding: 20px;
    transition: all 0.3s ease;
	    border: 3px solid #fff;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
}

.uls-cta-step:hover {
    transform: translateY(-10px);
	background: #222;
	clip-path: polygon(
0 0,        /* top-left */
85% 0,      /* top-right shaved */
100% 15%,   /* right bevel */
100% 100%,  /* bottom-right */
15% 100%,   /* bottom-left shaved */
0 85%       /* left bevel */
);
}

.uls-cta-step:hover .uls-step-number {
	color: #f15a24;
}

.uls-step-number {
    font-size: 35px;
    font-weight: 800;
    margin-bottom: 15px;
    opacity: 0.6;
}

.uls-cta-step h5 {
    font-weight: 700;
    margin-bottom: 10px;
}

.uls-cta-step p {
    font-size: 14px;
    opacity: 0.85;
}

.uls-final-cta-buttons a {
    margin: 10px;
}

/* Button styles */
.uls-btn-dark {
    background: #000;
    color: #fff;
    padding: 14px 32px;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
}

.uls-btn-dark:hover {
    background: #222;
    color: #fff;
}

.uls-btn-outline-dark {
    border: 2px solid #000;
    color: #000;
    padding: 12px 30px;
    border-radius: 6px;
    font-weight: 600;
    text-decoration: none;
    transition: all 0.3s ease;
    background: transparent;
}

.uls-btn-outline-dark:hover {
    background: #000;
    color: #fff;
}

@media (max-width: 991px) {
	
.uls-btn-dark {
 
    display: inline-block;
}
}


/**** About Section ****/

.uls-about-hero {
    padding: 225px 0 225px;
    background: linear-gradient(rgba(8,15,25,.80), rgba(8,15,25,.90)),
                url('/img/homepage/survey-05.webp');
    background-size: cover;
    background-position: center bottom;
    background-attachment: fixed;
    color: #fff;
    text-align: center;
}

.uls-about-hero h1 {
    font-size: 52px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-about-hero p {
    max-width: 700px;
    margin: 0 auto;
    font-size: 18px;
    opacity: .9;
}

/* ===================================
   ABOUT SECTION – REFINED VERSION
=================================== */

.uls-about-intro {
    padding: 160px 0;
    background: #f7f7f7;
    position: relative;
}

/* SECTION TAG */
.uls-section-tag {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #f15a24;
    margin-bottom: 15px;
    text-transform: uppercase;
}

/* HEADLINE */
.uls-about-intro h2 {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 25px;
    line-height: 1.2;
}
.uls-about-intro h3 {
    font-size: 2.5rem;
    font-weight: 800;
    margin-bottom: 25px;
    line-height: 1.2;
}
/* LEAD PARAGRAPH */
.uls-about-lead {
    font-size: 17px;
    line-height: 1.7;
    margin-bottom: 40px;
    color: #444;
}

/* FEATURE LIST (ICON ROWS) */
.uls-about-features {
    margin-bottom: 40px;
}

.uls-about-feature {
    display: flex;
    align-items: flex-start;
    margin-bottom: 28px;
}

.uls-about-feature i {
    font-size: 20px;
    color: #f15a24;
    margin-right: 18px;
    margin-top: 4px;
    min-width: 24px;
}

.uls-about-feature h6 {
    font-weight: 700;
    margin-bottom: 6px;
    font-size: 16px;
}

.uls-about-feature p {
    margin: 0;
    font-size: 14px;
    color: #666;
}

/* CTA UNDER FEATURES */
.uls-about-cta-intro {
    margin-top: 15px;
}

/* ===================================
   MEDIA SIDE
=================================== */

.uls-about-media {
    position: relative;
}

.uls-about-main {
    width: 100%;
    border-radius: 6px;
    box-shadow: 0 25px 50px rgba(0,0,0,.15);
	    border-left: 5px solid #f15a24;
    border-bottom: 7px solid #f15a24;
	  border-right: 5px solid #f15a24;
    border-top: 7px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
}

/* SMALL OVERLAY IMAGE BLOCK */
.uls-about-overlay {
    position: absolute;
    bottom: -60px;
    left: -60px;
    width: 280px;
    overflow: hidden;
    border-radius: 4px;
}

/* IMAGE INSIDE OVERLAY */
.uls-about-overlay img {
    width: 100%;
    display: block;
}

/* GRADIENT OVERLAY */
.uls-overlay-gradient {
    position: absolute;
    inset: 0;
    background: linear-gradient(
        180deg,
        rgba(241,90,36,.85),
        rgba(241,90,36,.95)
    );
}

/* YEARS CONTENT BLOCK */
.uls-overlay-content {
    position: absolute;
    inset: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    color: #fff;
    text-align: center;
    padding: 20px;
}

.uls-years-number {
    font-size: 56px;
    font-weight: 800;
    line-height: 1;
}

.uls-years-text {
    font-size: 18px;
    font-weight: 600;
    margin-top: 5px;
    letter-spacing: 1px;
}

/* ===================================
   RESPONSIVE TUNING
=================================== */

@media (max-width: 992px) {

    .uls-about-overlay {
        position: relative;
        bottom: auto;
        left: auto;
        margin-top: 30px;
        width: 100%;
    }

}


/* ===================================
   SERVICE AREA SECTION
=================================== */

.uls-service-area {
       position: relative;
    padding: 250px 0 175px 0;
    background: linear-gradient(rgba(10, 15, 20, .88), rgba(10, 15, 20, .92)), url(/img/homepage/survey-02.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    color: #fff;
    overflow: hidden;
    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin: -130px 0px -185px 0px;
    z-index: 1;
}

/* subtle radial depth */
.uls-service-area::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at bottom right, rgba(241,90,36,0.1), transparent 60%);
    pointer-events: none;
}

.uls-service-area .container {
    position: relative;
    z-index: 2;
}

.uls-service-area h2 {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-service-intro {
    max-width: 750px;
    margin: 0 auto 60px;
    opacity: .9;
    font-size: 16px;
}

/* Section blocks */
.uls-area-block {
    margin-bottom: 70px;
}

.uls-area-block h4 {
    font-weight: 700;
    margin-bottom: 30px;
    font-size: 20px;
    color: #f15a24;
    letter-spacing: 1px;
}

/* Grid layout */
.uls-area-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
    gap: 18px;
    max-width: 1000px;
    margin: 0 auto;
}

/* City/County pills */
.uls-area-grid span {
display: inline-block;
    padding: 12px 18px;
    border-radius: 5px;
    background: rgba(255, 255, 255, 0.06);
    border: 1px solid rgba(255, 255, 255, 0.1);
    font-size: 14px;
    transition: all 0.3s ease;
    backdrop-filter: blur(4px);
    clip-path: polygon(0 0, 86% 0, 100% 50%, 86% 100%, 0 100%);
}

/* Hover effect */
.uls-area-grid span:hover {
    background: #f15a24;
    border-color: #f15a24;
    transform: translateY(-4px);
}

/* Responsive */
@media (max-width: 992px) {

    .uls-service-area {
        padding: 120px 0;
        background-attachment: scroll;
		clip-path: none;
    }

    .uls-service-area h2 {
        font-size: 32px;
    }

}


/* ===================================
   WHY SECTION – REFINED VERSION
=================================== */



.uls-why-section {
    padding: 265px 0;
    background: #f4f4f4;
    position: relative;
    overflow: hidden;
}

/* Large watermark background text */
.uls-why-section::before {
    content: "WHY CHOOSE ULS";
    position: absolute;
    top: 125px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 140px;
    font-weight: 900;
    color: rgba(0, 0, 0, 0.04);
    white-space: nowrap;
    pointer-events: none;
    user-select: none;
    z-index: 0;
}

/* Content wrapper */
.uls-why-section .container {
    position: relative;
    z-index: 2;
}

/* Subtitle */
.uls-why-section .uls-section-tag {
    text-align: center;
    margin-bottom: 12px;
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 700;
    color: #f15a24;
}

/* Main Title */
.uls-why-section h2 {
    font-size: 44px;
    font-weight: 800;
    text-align: center;
    margin-bottom: 80px;
    color: #1a1a1a;
}

/* WHY ITEM LAYOUT */
.uls-why-item {
    display: flex;
    align-items: flex-start;
    margin-bottom: 100px;
	    padding: 25px;
}

/* Icon box */
.uls-why-icon {
    width: 75px;
    height: 75px;
    border: 2px solid #f15a24;
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 18px;
    transition: all 0.3s ease;
    flex-shrink: 0;
}

/* Icon */
.uls-why-icon i {
    font-size: 50px;
    color: #f15a24;
    transition: all 0.3s ease;

}


.col-lg-4:first-child .uls-why-item {
	border: 2px solid transparent; border-right-width: 7px; border-left-width: 7px;
}

.col-lg-4:last-child .uls-why-item {
	    margin-left: -35px;
    padding-left: 55px;	border: 2px solid transparent; border-left-width: 7px; border-right-width: 7px;
}

/* Hover */


/* LEFT COLUMN – arrow points RIGHT */
.col-lg-4:first-child .uls-why-item:hover {
    background: #feddd1; border-color: #000;
    clip-path: polygon(
        0 0,
        88% 0,
        100% 50%,
        88% 100%,
        0 100%
    );
}

/* RIGHT COLUMN – arrow points LEFT */
.col-lg-4:last-child .uls-why-item:hover {
    background: #feddd1; border-color: #000;
    clip-path: polygon(
        12% 0,
        100% 0,
        100% 100%,
        12% 100%,
        0 50%
    );
}

.uls-why-item:hover .uls-why-icon {
    background: #f15a24;
}

.uls-why-item:hover .uls-why-icon i {
    color: #ffffff;
}

/* Text */
.uls-why-item h5 {
    font-weight: 700;
    margin-bottom: 6px;
    font-size: 18px;
}

.uls-why-item p {
    margin: 0;
    font-size: 15px;
    color: #555;
    line-height: 1.6;
}

/* Center Image */
.uls-why-section img {
    max-width: 425px;
    margin: 30px auto; margin-left: -15px;
    display: block;
}

/* Responsive */
@media (max-width: 992px) {

    .uls-why-section::before {
        font-size: 70px;
        top: 40px;
    }
.uls-why-section img {
    max-width: 100%;
    margin-left: 0;
    display: block;
}
    .uls-why-section h2 {
        font-size: 32px;
        margin-bottom: 50px;
    }

}

/* ===================================
   SERVICES SECTION – FULL STYLING
=================================== */

.uls-about-services {
    position: relative;
    padding: 225px 0;
    background: linear-gradient(rgba(8,15,25,.88), rgba(8,15,25,.94)),
                url('/img/homepage/survey-03.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    color: #fff;
    overflow: hidden;
	    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin: -130px 0px -185px 0px;
    z-index: 1;
}

/* Optional subtle overlay texture depth */
.uls-about-services::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top right, rgba(241,90,36,0.08), transparent 60%);
    pointer-events: none;
}

/* Content container */
.uls-about-services .container {
    position: relative;
    z-index: 2;
}

/* Subtitle */
.uls-about-services .uls-section-tag {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #f15a24;
    margin-bottom: 15px;
}

/* Main heading */
.uls-about-services h2 {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 20px;
}

/* Intro paragraph */
.uls-about-services p {
    max-width: 720px;
    margin: 0 auto 60px;
    opacity: .9;
    font-size: 16px;
}

/* ===================================
   SERVICE CARDS
=================================== */

.uls-service-cards {
    margin-top: 40px;
    margin-bottom: 60px;
}

/* Card */
.uls-service-card {
    position: relative;
    padding: 75px 30px;
    border-radius: 12px;
    backdrop-filter: blur(8px);
    background: rgba(255,255,255,0.05);
    border: 2px solid rgba(255,255,255,0.08);
    transition: all 0.4s ease;
    overflow: hidden;
    height: 100%;
	    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

/* Gradient animated border */
.uls-service-card::before {
    content: "";
    position: absolute;
    inset: 0;
    border-radius: 12px;
    padding: 1px;
    background: linear-gradient(120deg, transparent, #f15a24, transparent);
    -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
    -webkit-mask-composite: xor;
    mask-composite: exclude;
    opacity: 0;
    transition: 0.4s ease;
}

/* Icon wrapper */
.uls-service-icon {
    width: 70px;
    height: 70px;
    border-radius: 14px;
    background: rgba(241,90,36,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    margin: 0 auto 25px;
    transition: 0.4s ease;
}

.uls-service-icon i {
    font-size: 30px;
    color: #f15a24;
    transition: 0.4s ease;
}

/* Card text */
.uls-service-card h5 {
    font-weight: 700;
    margin-bottom: 15px;
    font-size: 18px;
}

.uls-service-card p {
    font-size: 14px;
    opacity: .85;
    margin: 0;
}

/* Hover Effects */
.uls-service-card:hover {
    transform: translateY(-12px);
    background: rgba(255,255,255,0.08);
    box-shadow: 0 25px 50px rgba(0,0,0,.4);
}

.uls-service-card:hover::before {
    opacity: 1;
}

.uls-service-card:hover .uls-service-icon {
    background: #f15a24;
    transform: scale(1.1);
}

.uls-service-card:hover .uls-service-icon i {
    color: #fff;
}

/* CTA spacing */
.uls-services-cta {
    margin-top: 30px;
}

/* Responsive */
@media (max-width: 992px) {

    .uls-about-services {
        padding: 120px 0;
        background-attachment: scroll;
		clip-path:none;
		    margin: 0;
    }

    .uls-about-services h2 {
        font-size: 34px;
    }

    .uls-service-card {
        margin-bottom: 30px;
    }
}

/* ===================================
   ABOUT CTA – ORANGE CONVERSION BLOCK
=================================== */

.uls-about-cta {
    position: relative;
    padding: 200px 0 100px 0;
    background: linear-gradient(135deg, #f15a24, #e14c1d);
    color: #fff;
    overflow: hidden;
}

/* Subtle depth overlay */
.uls-about-cta::before {
    content: "";
    position: absolute;
    inset: 0;
    background: radial-gradient(circle at top left, rgba(255,255,255,0.1), transparent 60%);
    pointer-events: none;
}

.uls-about-cta .container {
    position: relative;
    z-index: 2;
}

.uls-cta-tag {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    margin-bottom: 20px;
    opacity: .9;
}

.uls-about-cta h2 {
    font-size: 44px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-about-cta p {
    max-width: 700px;
    margin: 0 auto 40px;
    font-size: 17px;
    opacity: .95;
    line-height: 1.7;
}

/* Button wrapper */
.uls-cta-buttons {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 30px;
    flex-wrap: wrap;
}

/* White primary button */
.uls-btn-white {
    background: #fff;
    color: #f15a24;
    padding: 14px 30px;
    border-radius: 50px;
    font-weight: 700;
    text-decoration: none;
    transition: 0.3s ease;
}

.uls-btn-white:hover {
    background: #111;
    color: #fff;
    transform: translateY(-3px);
}

/* Secondary phone link */
.uls-cta-phone {
    color: #fff;
    font-weight: 600;
    text-decoration: none;
    transition: 0.3s ease;
	    background: #000;
    padding: 15px;
    border-radius: 25px;
}

.uls-cta-phone:hover {
    opacity: .75;
}

/* Responsive */
@media (max-width: 992px) {

    .uls-about-cta {
        padding: 100px 0;
    }

    .uls-about-cta h2 {
        font-size: 32px;
    }

}

/**** Services Section ****/

/* ===============================
   SERVICES HERO
================================ */

.uls-services-hero {
    padding: 180px 0;
    background: linear-gradient(rgba(10,15,20,.85), rgba(10,15,20,.9)),
                url('/img/homepage/utah-landscape-01.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
	margin-bottom: -50px;
}

.uls-services-hero h1 {
    font-size: 54px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-hero-overview {
    margin-bottom: 25px;
    font-size: 18px;
    opacity: .9;
}

.uls-hero-bullets {
    list-style: none;
    padding: 0;
    margin-bottom: 30px;
}

.uls-hero-bullets li {
    margin-bottom: 10px;
    position: relative;
    padding-left: 22px;
}

.uls-hero-bullets li:before {
    content: "";
    width: 8px;
    height: 8px;
    background: #f15a24;
    position: absolute;
    left: 0;
    top: 8px;
}

.uls-hero-cta a {
    margin-right: 15px;
}

.uls-hero-legend {
    display: flex;
    justify-content: center;
}

.uls-legend-box {
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(6px);
    padding: 40px;
    border-radius: 10px;
    text-align: left;
}

.uls-legend-box h5 {
    margin-bottom: 20px;
    font-weight: 800; letter-spacing: .5px;
}

.uls-legend-box a {
    display: block;
    margin-bottom: 10px;
	padding: 10px;
	font-size: 20px;
    color: #fff;
    text-decoration: none;
    transition: .3s;
}

.uls-legend-box a:hover {
    color: #f15a24;
}

@media(max-width: 991px){
.uls-hero-cta{
    display: grid;
    gap: 15px;
}
.uls-services-hero {
    padding: 180px 0;
    background: linear-gradient(rgba(10,15,20,.85), rgba(10,15,20,.9)),
                url('/img/homepage/utah-landscape-01.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
    margin-bottom: -50px;
    text-align: center;
}
.uls-services-hero h1 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 20px;
}


.uls-hero-bullets li:before {
    content: "";
    width: 8px;
    height: 8px;
    background: #f15a24;
    position: absolute;
    left: 0;
    top: 8px;
	display: none;
}
}

/* ===============================
   PILLAR SECTION
================================ */

/* ===================================
   ARCHITECTURAL PILLARS
=================================== */

.uls-pillars-architectural {
    background: #DBD4D4;
    padding: 150px 0 150px 0;
    color: #fff;
}

.uls-pillars-architectural h2 {
	font-family: Montserrat;
    text-align: center;
    font-size: 55px; text-shadow: 1px 1px 1px #000;
    font-weight: 800;
    margin-bottom: 75px;
   
    
}

.uls-pillars-architectural h2 span {
	 color: #000; text-shadow: none;text-transform: uppercase;
}

.uls-pillars-architectural h2 u {
	 color: #f15a24;text-transform: uppercase;
}

.uls-pillars-architectural .row {
    align-items: flex-end;
}

/* Base Pillar */
.uls-pillar {
    background: #1a1a1a;
    padding: 75px 25px;
    text-align: center; border-left: 5px solid #fff; border-right: 5px solid #fff; border-bottom: 5px solid #fff;
    transition: all .4s ease;
    border-radius: 6px 6px 0 0;
    position: relative;
    overflow: visible;
	clip-path: polygon(
  0 8%, 
  25% 4%, 
  50% 10%, 
  75% 5%, 
  100% 8%, 
  100% 100%, 
  0 100%
);
}

/* Height tiers */
.uls-pillar.short { height: 400px; }
.uls-pillar.medium { height: 475px; }
.uls-pillar.tall { height: 575px; }

/* Center highlight */
.uls-pillar.highlight {
   /* background: #f15a24;*/
   padding: 100px 0 0 0;
    box-shadow: 0 25px 60px rgba(0,0,0,.4);
}

/* Icon */
.uls-pillar i {
    font-size: 50px;
    color: #f15a24;
    margin-bottom: 20px;
}

.uls-pillar.highlight i {

}

/* Headings */
.uls-pillar h4,
.uls-pillar h5 {
    margin-bottom: 15px;
    font-weight: 700;
}

.uls-pillar p {
    font-size: 15px;
    margin-bottom: 15px;
    opacity: .9;
}

/* Bullets */
.uls-pillar ul {
    list-style: none;
    padding: 0;
}

.uls-pillar ul li {
    margin-bottom: 6px;
    font-size: 14px;
    opacity: .85;
}

/* Hover Elevation */
.uls-pillar:hover {
    transform: translateY(-15px);background: #f15a24; 
	border-color: #000;
}

.uls-pillar:hover i {
	color: #fff;
}

.uls-pillar.highlight:hover {
    transform: translateY(-35px);
}

/* Responsive */
@media (max-width: 992px) {

    .uls-pillar {
        height: auto !important;
        margin-bottom: 30px;
    }

    .uls-pillar.highlight {
        transform: none;
    }
}

/* ===============================
   SERVICE HUB
================================ */

/* ================================
   SERVICE HUB
================================ */

.uls-service-hub {
    background: #f7f7f7;
}

.uls-service-hub .container-fluid {
    padding: 0;
}

.uls-service-hub .boarder {
    border-left: 5px solid #fff;
    border-right: 5px solid #fff;
}

.uls-service-hub .squish {
    --bs-gutter-x: 0rem;
}

/* Make whole card clickable */
.uls-hub-link {
    display: block;
    text-decoration: none;
    color: inherit;
}

/* Card */
.uls-hub-card {
    height: 650px;
    background-size: cover;
    background-position: center left;
    position: relative;
    overflow: hidden;
    transition: transform .5s ease;
}

.uls-hub-card:hover {
    transform: scale(1.02);
}

/* Overlay */
.uls-hub-overlay {
    position: absolute;
    bottom: 0;
    width: 100%;
    padding: 40px;
    color: #fff;
    background: linear-gradient(transparent, rgba(0,0,0,.95));
    transition: .4s ease;
}

/* Subtitle */
.uls-hub-subtitle {
    font-size: 13px;
    letter-spacing: 2px;
    text-transform: uppercase;
    color: #f15a24;
    display: block;
    margin-bottom: 10px;
}

/* Title */
.uls-hub-overlay h4 {
    font-size: 28px;
    font-weight: 800;
    margin-bottom: 25px;
}

/* Hidden Content */
.uls-hub-content {
    max-height: 0;
    overflow: hidden;
    transition: max-height .5s ease;
}

/* Reveal */
.uls-hub-card:hover .uls-hub-content {
    max-height: 400px;
}

/* Hover overlay color shift */
.uls-hub-card:hover .uls-hub-overlay {
   background: linear-gradient(180deg,rgba(0, 0, 0, 0.86) 33%, rgba(241, 90, 36, 0.82) 33%);
clip-path: polygon(
  0% 12%,   /* left edge drop */
  12% 0%,   /* top-left cut */
  88% 0%,   /* top-right cut start */
  100% 12%, /* right edge drop */
  100% 100%, /* bottom right (square) */
  0% 100%    /* bottom left (square) */
);
}

/* ✵ Custom Bullets */
.uls-hub-content ul {
    list-style: none;
    padding: 0;
    margin-top: 15px;
}

.uls-hub-content ul li {
    position: relative;
    padding-left: 20px;
    margin-bottom: 8px;
    font-size: 14px;
}

.uls-hub-content ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    top: 0;
    color: #fff;
    font-size: 12px;
}


/* ===============================
   MAIN SERVICE SECTIONS
================================ */

.uls-service-section {
    padding: 140px 0 0 0;
}

.uls-service-section .container-fluid {
	padding: 0px;
}

 .surveys {
	background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/survey-06.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

 .plats {
	background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/subdivision-plat-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

 .development {
	background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/land-development-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-service-section .uls-service-intro {
    margin-bottom: 80px; max-width: 100%; 
}

.uls-service-intro img {
    width: 100%;
	    border-bottom: 5px solid #000;
    border-left: 10px solid #000;
    border-top: 1px solid #000;
    clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%);

}

.uls-service-tag {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 700;
    color: #f15a24;
    margin-bottom: 10px;
}

.uls-service-intro h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 15px;
}

.uls-service-intro p {
    margin-bottom: 20px;
    line-height: 1.7;
}

.uls-service-intro ul {
    list-style: none;
    padding: 0;
}

.uls-service-intro ul li {
    padding-left: 22px;
    position: relative;
    margin-bottom: 8px;
}

.uls-service-intro ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

/* Subservice Cards */

.uls-subservice-card {
    background: #d6d6d6;
    padding: 40px;
    height: 100%;
    transition: all .35s ease;
    position: relative;
	border: 3px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
}

.uls-subservice-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 25px 60px rgba(0,0,0,.08);
	clip-path: polygon(0 0, /* top-left */ 85% 0, /* top-right shaved */ 100% 15%, /* right bevel */ 100% 100%, /* bottom-right */ 15% 100%, /* bottom-left shaved */ 0 85% /* left bevel */);
	border-color: #000; background: #f15a24; color: #fff;
}

.uls-subservice-card h4 {
    font-weight: 700;
    margin-bottom: 15px;
}

.uls-subservice-card p {
    font-size: 15px;
    margin-bottom: 15px;
}

.uls-subservice-card ul {
    list-style: none;
    padding: 0;
}

.uls-subservice-card ul li {
    padding-left: 20px;
    position: relative;
    margin-bottom: 6px;
}

.uls-subservice-card ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

/* Section CTA */

.uls-service-divider {
   margin-top: 80px;
    padding: 125px 40px 145px 40px;
    background: #f15a24;
    color: #fff;
    text-align: center;
    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin-bottom: -55px;
}

.uls-service-divider h3 {
    font-weight: 700;
    margin-bottom: 15px;
}

@media(max-width: 991px){
.plats {
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/subdivision-plat-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    text-align: center;
}

.development {
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/land-development-01.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    text-align: center;
}
.surveys {
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url(/img/homepage/survey-06.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
    text-align: center;
}

.uls-service-intro h2 {
    font-size: 2rem;
    font-weight: 800;
    margin-bottom: 15px;
}
.uls-service-intro ul li::before {
	display: none;

}
.uls-subservice-card ul li::before {
	display: none;

}

.uls-subservice-card ul li {
    padding-left: 0;
    position: relative;
    margin-bottom: 6px;
}
}





/**** ALTA Surveys Page ****/

.uls-alta-hero {
    position: relative;
    padding: 190px 0 160px 0;
    background: url('/img/homepage/uls-alta-bg.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
    overflow: hidden;
}

.uls-alta-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(10,15,20,.92), rgba(10,15,20,.72));
    z-index: 1;
}

.uls-alta-hero .container {
    position: relative;
    z-index: 2;
}

.uls-alta-tag {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 800;
    color: #f15a24;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.uls-alta-hero h1 {
    font-size: 56px;
    font-weight: 900;
    line-height: 1.05;
    margin-bottom: 22px;
}

.uls-alta-hero p {
    font-size: 18px;
    line-height: 1.75;
    opacity: .92;
    margin-bottom: 24px;
}

.uls-alta-hero-bullets {
    list-style: none;
    padding: 0;
    margin: 0 0 32px 0;
}

.uls-alta-hero-bullets li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    font-size: 16px;
}

.uls-alta-hero-bullets li:before {
    content: "";
    width: 8px;
    height: 8px;
    background: #f15a24;
    position: absolute;
    left: 0;
    top: 8px;
}

.uls-alta-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.uls-alta-btn-primary,
.uls-alta-btn-outline {
    display: inline-block;
    padding: 13px 24px;
    font-weight: 800;
    text-decoration: none !important;
    transition: .3s ease;
}

.uls-alta-btn-primary {
    background: #f15a24;
    color: #fff !important;
    border: 2px solid #f15a24;
}

.uls-alta-btn-primary:hover {
    background: #000;
    border-color: #000;
}

.uls-alta-btn-outline {
    background: transparent;
    color: #fff !important;
    border: 2px solid #fff;
}

.uls-alta-btn-outline:hover {
    background: #fff;
    color: #000 !important;
}

.uls-alta-legend {
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(6px);
    padding: 40px;
    border-radius: 10px;
    text-align: left;
}

.uls-alta-legend h5 {
    margin-bottom: 20px;
    font-weight: 900;
    letter-spacing: .5px;
}

.uls-alta-legend a {
    display: block;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 19px;
    color: #fff;
    text-decoration: none;
    transition: .3s ease;
}

.uls-alta-legend a:hover {
    color: #f15a24;
}

/**** Overview ****/

.uls-alta-overview {
    padding: 110px 0;
    background: #fff;
}

.uls-alta-content-block h2,
.uls-alta-section-heading h2,
.uls-alta-side-panel h2,
.uls-alta-why-card h2,
.uls-alta-final-cta h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 900;
    margin-bottom: 18px;
}

.uls-alta-content-block p,
.uls-alta-section-heading p,
.uls-alta-side-panel p,
.uls-alta-why-card p,
.uls-alta-final-cta p {
    font-size: 17px;
    line-height: 1.75;
    color: #333;
}

.uls-alta-image-card img {
    width: 100%;
    border-bottom: 5px solid #000;
    border-left: 10px solid #000;
    border-top: 1px solid #000;
    clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%);
}

/**** Includes ****/

.uls-alta-includes {
    padding: 110px 0;
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url('/img/homepage/survey-01.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-alta-section-heading {
    max-width: 950px;
    margin: 0 auto 45px auto;
    text-align: center;
}

.uls-alta-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.uls-alta-card {
    background: #d6d6d6;
    padding: 38px 30px;
    min-height: 250px;
    border: 3px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
    transition: .35s ease;
}

.uls-alta-card:hover {
    transform: translateY(-10px);
    background: #f15a24;
    color: #fff;
    border-color: #000;
    clip-path: polygon(0 0, 85% 0, 100% 15%, 100% 100%, 15% 100%, 0 85%);
}

.uls-alta-card h3 {
    font-weight: 800;
    margin-bottom: 12px;
}

.uls-alta-card p {
    font-size: 15px;
    line-height: 1.65;
}

/**** Uses ****/

.uls-alta-uses {
    padding: 110px 0;
    background: #10151a;
    color: #fff;
}

.uls-alta-side-panel {
    padding: 45px;
    background: rgba(255,255,255,.08);
    border-left: 6px solid #f15a24;
}

.uls-alta-side-panel p {
    color: rgba(255,255,255,.9);
}

.uls-alta-use-list {
    display: grid;
    gap: 18px;
}

.uls-alta-use-item {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 18px;
    align-items: start;
    padding: 24px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
}

.uls-alta-use-item i {
    width: 58px;
    height: 58px;
    background: #f15a24;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}

.uls-alta-use-item h3 {
    color: #fff;
    font-weight: 800;
    margin-bottom: 8px;
}

.uls-alta-use-item p {
    color: rgba(255,255,255,.88);
    margin-bottom: 0;
}

/**** Process ****/

.uls-alta-process {
    padding: 110px 0;
    background: #fff;
}

.uls-alta-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.uls-alta-process-step {
    padding: 34px 28px;
    background: #f4f4f4;
    border-bottom: 6px solid #f15a24;
    transition: .3s ease;
}

.uls-alta-process-step:hover {
    transform: translateY(-8px);
    background: #10151a;
    color: #fff;
}

.uls-alta-process-step strong {
    display: block;
    color: #f15a24;
    font-size: 38px;
    font-weight: 900;
    margin-bottom: 12px;
}

.uls-alta-process-step h3 {
    font-weight: 900;
    margin-bottom: 10px;
}

.uls-alta-process-step p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 0;
}

/**** Why ****/

.uls-alta-why {
    padding: 110px 0;
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url('/img/homepage/land-development-01.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-alta-why-card {
    padding: 45px;
    background: rgba(255,255,255,.94);
    border-left: 8px solid #f15a24;
}

.uls-alta-why-card ul {
    list-style: none;
    padding: 0;
    margin-top: 20px;
}

.uls-alta-why-card li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 9px;
    font-weight: 700;
}

.uls-alta-why-card li:before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

.uls-alta-angle-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.uls-alta-angle-card {
    padding: 30px 24px;
    background: #d6d6d6;
    border: 3px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
    transition: .3s ease;
}

.uls-alta-angle-card:hover {
    background: #f15a24;
    color: #fff;
    border-color: #000;
}

.uls-alta-angle-card i {
    color: #f15a24;
    font-size: 30px;
    margin-bottom: 14px;
}

.uls-alta-angle-card:hover i {
    color: #fff;
}

.uls-alta-angle-card h3 {
    font-weight: 900;
    margin-bottom: 10px;
}

.uls-alta-angle-card p {
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 0;
}

/**** Final CTA ****/

.uls-alta-final-cta {
    padding: 125px 40px 145px 40px;
    background: #f15a24;
    color: #fff;
    text-align: center;
    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-alta-final-cta h2 {
    color: #fff;
}

.uls-alta-final-cta p {
    color: #fff;
    max-width: 900px;
    margin: 0 auto 26px auto;
}

/**** Responsive ****/

@media(max-width: 991px) {
    .uls-alta-hero {
        padding: 155px 0 120px 0;
        text-align: center;
    }

    .uls-alta-hero h1 {
        font-size: 2.3rem;
    }

    .uls-alta-actions {
        justify-content: center;
    }

    .uls-alta-hero-bullets li {
        padding-left: 0;
    }

    .uls-alta-hero-bullets li:before {
        display: none;
    }

    .uls-alta-legend {
        margin-top: 35px;
        text-align: center;
    }

    .uls-alta-overview,
    .uls-alta-includes,
    .uls-alta-uses,
    .uls-alta-process,
    .uls-alta-why {
        padding: 75px 0;
        text-align: center;
        background-attachment: scroll;
    }

    .uls-alta-content-block h2,
    .uls-alta-section-heading h2,
    .uls-alta-side-panel h2,
    .uls-alta-why-card h2,
    .uls-alta-final-cta h2 {
        font-size: 2rem;
    }

    .uls-alta-image-card {
        margin-top: 35px;
    }

    .uls-alta-card-grid,
    .uls-alta-process-grid,
    .uls-alta-angle-grid {
        grid-template-columns: 1fr;
    }

    .uls-alta-side-panel {
        margin-bottom: 30px;
    }

    .uls-alta-use-item {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .uls-alta-use-item i {
        margin: 0 auto;
    }

    .uls-alta-final-cta {
        clip-path: none;
        padding: 75px 20px;
    }
}

@media(max-width: 575px) {
    .uls-alta-btn-primary,
    .uls-alta-btn-outline {
        width: 100%;
        text-align: center;
    }

    .uls-alta-card,
    .uls-alta-angle-card {
        clip-path: none;
    }

    .uls-alta-side-panel,
    .uls-alta-why-card {
        padding: 30px 22px;
    }
}




/**** Boundary Surveying Page ****/

.uls-boundary-hero {
    position: relative;
    padding: 190px 0 160px 0;
    background: url('/img/homepage/uls-alta-bg.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
    overflow: hidden;
}

.uls-boundary-overlay {
    position: absolute;
    inset: 0;
    background: linear-gradient(90deg, rgba(10,15,20,.92), rgba(10,15,20,.72));
    z-index: 1;
}

.uls-boundary-hero .container {
    position: relative;
    z-index: 2;
}

.uls-boundary-tag {
    font-size: 13px;
    letter-spacing: 2px;
    font-weight: 800;
    color: #f15a24;
    margin-bottom: 12px;
    text-transform: uppercase;
}

.uls-boundary-hero h1 {
    font-size: 56px;
    font-weight: 900;
    line-height: 1.05;
    margin-bottom: 22px;
}

.uls-boundary-hero p {
    font-size: 18px;
    line-height: 1.75;
    opacity: .92;
    margin-bottom: 24px;
}

.uls-boundary-hero-bullets {
    list-style: none;
    padding: 0;
    margin: 0 0 32px 0;
}

.uls-boundary-hero-bullets li {
    position: relative;
    padding-left: 24px;
    margin-bottom: 10px;
    font-size: 16px;
}

.uls-boundary-hero-bullets li:before {
    content: "";
    width: 8px;
    height: 8px;
    background: #f15a24;
    position: absolute;
    left: 0;
    top: 8px;
}

.uls-boundary-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
}

.uls-boundary-btn-primary,
.uls-boundary-btn-outline {
    display: inline-block;
    padding: 13px 24px;
    font-weight: 800;
    text-decoration: none !important;
    transition: .3s ease;
}

.uls-boundary-btn-primary {
    background: #f15a24;
    color: #fff !important;
    border: 2px solid #f15a24;
}

.uls-boundary-btn-primary:hover {
    background: #000;
    border-color: #000;
}

.uls-boundary-btn-outline {
    background: transparent;
    color: #fff !important;
    border: 2px solid #fff;
}

.uls-boundary-btn-outline:hover {
    background: #fff;
    color: #000 !important;
}

.uls-boundary-legend {
    background: rgba(255,255,255,.08);
    backdrop-filter: blur(6px);
    padding: 40px;
    border-radius: 10px;
    text-align: left;
}

.uls-boundary-legend h5 {
    margin-bottom: 20px;
    font-weight: 900;
    letter-spacing: .5px;
}

.uls-boundary-legend a {
    display: block;
    margin-bottom: 10px;
    padding: 10px;
    font-size: 19px;
    color: #fff;
    text-decoration: none;
    transition: .3s ease;
}

.uls-boundary-legend a:hover {
    color: #f15a24;
}

/**** Shared Content Styling ****/

.uls-boundary-overview,
.uls-boundary-process {
    padding: 110px 0;
    background: #fff;
}

.uls-boundary-content-block h2,
.uls-boundary-section-heading h2,
.uls-boundary-side-panel h2,
.uls-boundary-why-card h2,
.uls-boundary-final-cta h2 {
    font-size: 42px;
    line-height: 1.15;
    font-weight: 900;
    margin-bottom: 18px;
}

.uls-boundary-content-block p,
.uls-boundary-section-heading p,
.uls-boundary-side-panel p,
.uls-boundary-why-card p,
.uls-boundary-final-cta p {
    font-size: 17px;
    line-height: 1.75;
    color: #333;
}

.uls-boundary-image-card img {
    width: 100%;
    border-bottom: 5px solid #000;
    border-left: 10px solid #000;
    border-top: 1px solid #000;
    clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%);
}

/**** Includes ****/

.uls-boundary-includes {
    padding: 110px 0;
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url('/img/homepage/survey-01.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-boundary-section-heading {
    max-width: 950px;
    margin: 0 auto 45px auto;
    text-align: center;
}

.uls-boundary-card-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.uls-boundary-card {
    background: #d6d6d6;
    padding: 38px 30px;
    min-height: 250px;
    border: 3px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
    transition: .35s ease;
}

.uls-boundary-card:hover {
    transform: translateY(-10px);
    background: #f15a24;
    color: #fff;
    border-color: #000;
    clip-path: polygon(0 0, 85% 0, 100% 15%, 100% 100%, 15% 100%, 0 85%);
}

.uls-boundary-card h3 {
    font-weight: 800;
    margin-bottom: 12px;
}

.uls-boundary-card p {
    font-size: 15px;
    line-height: 1.65;
}

/**** Uses ****/

.uls-boundary-uses {
    padding: 110px 0;
    background: #10151a;
    color: #fff;
}

.uls-boundary-side-panel {
    padding: 45px;
    background: rgba(255,255,255,.08);
    border-left: 6px solid #f15a24;
}

.uls-boundary-side-panel p {
    color: rgba(255,255,255,.9);
}

.uls-boundary-use-list {
    display: grid;
    gap: 18px;
}

.uls-boundary-use-item {
    display: grid;
    grid-template-columns: 70px 1fr;
    gap: 18px;
    align-items: start;
    padding: 24px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
}

.uls-boundary-use-item i {
    width: 58px;
    height: 58px;
    background: #f15a24;
    color: #fff;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    font-size: 24px;
}

.uls-boundary-use-item h3 {
    color: #fff;
    font-weight: 800;
    margin-bottom: 8px;
}

.uls-boundary-use-item p {
    color: rgba(255,255,255,.88);
    margin-bottom: 0;
}

/**** Process ****/

.uls-boundary-process-grid {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 24px;
}

.uls-boundary-process-step {
    padding: 34px 28px;
    background: #f4f4f4;
    border-bottom: 6px solid #f15a24;
    transition: .3s ease;
}

.uls-boundary-process-step:hover {
    transform: translateY(-8px);
    background: #10151a;
    color: #fff;
}

.uls-boundary-process-step strong {
    display: block;
    color: #f15a24;
    font-size: 38px;
    font-weight: 900;
    margin-bottom: 12px;
}

.uls-boundary-process-step h3 {
    font-weight: 900;
    margin-bottom: 10px;
}

.uls-boundary-process-step p {
    font-size: 15px;
    line-height: 1.7;
    margin-bottom: 0;
}

/**** Value / Why ****/

.uls-boundary-value {
    padding: 110px 0;
    background: linear-gradient(rgb(255 255 255 / 88%), rgb(255 255 255 / 94%)), url('/img/homepage/land-development-01.webp');
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-boundary-why-card {
    padding: 45px;
    background: rgba(255,255,255,.94);
    border-left: 8px solid #f15a24;
}

.uls-boundary-why-card ul {
    list-style: none;
    padding: 0;
    margin-top: 20px;
}

.uls-boundary-why-card li {
    position: relative;
    padding-left: 22px;
    margin-bottom: 9px;
    font-weight: 700;
}

.uls-boundary-why-card li:before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

.uls-boundary-angle-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 18px;
}

.uls-boundary-angle-card {
    padding: 30px 24px;
    background: #d6d6d6;
    border: 3px solid #f15a24;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
    transition: .3s ease;
}

.uls-boundary-angle-card:hover {
    background: #f15a24;
    color: #fff;
    border-color: #000;
}

.uls-boundary-angle-card i {
    color: #f15a24;
    font-size: 30px;
    margin-bottom: 14px;
}

.uls-boundary-angle-card:hover i {
    color: #fff;
}

.uls-boundary-angle-card h3 {
    font-weight: 900;
    margin-bottom: 10px;
}

.uls-boundary-angle-card p {
    font-size: 15px;
    line-height: 1.65;
    margin-bottom: 0;
}

/**** Cost Factors ****/

.uls-boundary-cost {
    padding: 110px 0;
    background: #fff;
}

.uls-boundary-cost-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 16px;
}

.uls-boundary-cost-grid div {
    padding: 20px;
    background: #f4f4f4;
    border: 2px solid #f15a24;
    font-weight: 900;
    text-align: center;
    transition: .3s ease;
}

.uls-boundary-cost-grid div:hover {
    background: #10151a;
    color: #fff;
}

/**** FAQ ****/

.uls-boundary-faq {
    padding: 110px 0;
    background: #10151a;
    color: #fff;
}

.uls-boundary-faq .uls-boundary-section-heading p,
.uls-boundary-faq .uls-boundary-section-heading h2 {
    color: #fff;
}

.uls-boundary-faq-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 24px;
}

.uls-boundary-faq-item {
    padding: 30px;
    background: rgba(255,255,255,.08);
    border-left: 5px solid #f15a24;
}

.uls-boundary-faq-item h3 {
    color: #fff;
    font-weight: 900;
    margin-bottom: 12px;
}

.uls-boundary-faq-item p {
    color: rgba(255,255,255,.88);
    font-size: 15px;
    line-height: 1.7;
}

/**** Final CTA ****/

.uls-boundary-final-cta {
    padding: 125px 40px 145px 40px;
    background: #f15a24;
    color: #fff;
    text-align: center;
    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-boundary-final-cta h2 {
    color: #fff;
}

.uls-boundary-final-cta p {
    color: #fff;
    max-width: 900px;
    margin: 0 auto 26px auto;
}

/**** Responsive ****/

@media(max-width: 991px) {
    .uls-boundary-hero {
        padding: 155px 0 120px 0;
        text-align: center;
    }

    .uls-boundary-hero h1 {
        font-size: 2.3rem;
    }

    .uls-boundary-actions {
        justify-content: center;
    }

    .uls-boundary-hero-bullets li {
        padding-left: 0;
    }

    .uls-boundary-hero-bullets li:before {
        display: none;
    }

    .uls-boundary-legend {
        margin-top: 35px;
        text-align: center;
    }

    .uls-boundary-overview,
    .uls-boundary-includes,
    .uls-boundary-uses,
    .uls-boundary-process,
    .uls-boundary-value,
    .uls-boundary-cost,
    .uls-boundary-faq {
        padding: 75px 0;
        text-align: center;
        background-attachment: scroll;
    }

    .uls-boundary-content-block h2,
    .uls-boundary-section-heading h2,
    .uls-boundary-side-panel h2,
    .uls-boundary-why-card h2,
    .uls-boundary-final-cta h2 {
        font-size: 2rem;
    }

    .uls-boundary-image-card {
        margin-top: 35px;
    }

    .uls-boundary-card-grid,
    .uls-boundary-process-grid,
    .uls-boundary-angle-grid,
    .uls-boundary-cost-grid,
    .uls-boundary-faq-grid {
        grid-template-columns: 1fr;
    }

    .uls-boundary-side-panel {
        margin-bottom: 30px;
    }

    .uls-boundary-use-item {
        grid-template-columns: 1fr;
        text-align: center;
    }

    .uls-boundary-use-item i {
        margin: 0 auto;
    }

    .uls-boundary-final-cta {
        clip-path: none;
        padding: 75px 20px;
    }
}

@media(max-width: 575px) {
    .uls-boundary-btn-primary,
    .uls-boundary-btn-outline {
        width: 100%;
        text-align: center;
    }

    .uls-boundary-card,
    .uls-boundary-angle-card {
        clip-path: none;
    }

    .uls-boundary-side-panel,
    .uls-boundary-why-card {
        padding: 30px 22px;
    }
}

/**** Gallery Section ****/
.gallery-page {
	padding: 75px 0 50px 0;	background: rgb(249,249,249);
    padding: 160px 0;
    color: #fff;
    background: rgb(53 52 52) ;
    text-align: center;
	
	
	
}
.gallery-page h1 {
	font-size: 3.5rem; font-weight: 600; font-family: 'font2'; padding-bottom: 40px; text-align: center; color: rgb(129,141,148);
}
.gallery-page h2 {
	font-size: 2.4rem; font-weight: 600; font-family: 'font2'; padding-bottom: 40px; text-align: center; color: rgb(129,141,148);
}

/**** Areas We Service Section ****/
.area:nth-child(odd) {
	padding: 75px 0 75px 0; background: rgb(255,255,255);
}
.area:nth-child(even) {
	padding: 75px 0 75px 0; background: rgb(245,245,245);
}
.area h2 {
	font-size: 2.5rem; font-family: font2; font-weight: 800; color: rgb(196,41,56);
}
.area h4 {
	font-size: 1.5rem; font-family: font2; color: rgb(75,75,75);
}
.area p {
	font-size: 17px; text-align: justify; color: rgb(12,12,12);
}
.area iframe {
	width: 100%; height: 100%; border-radius: 0.8rem; box-shadow: 1px 1px 10px 1px rgb(0,0,0);
}

/**** Contact Section ****/
/* ============================
   CONTACT HERO
============================ */

.uls-contact-hero {
    padding: 180px 0;
    background: linear-gradient(rgba(0,0,0,.75), rgba(0,0,0,.85)),
                url('/img/homepage/survey-05.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
}

.uls-contact-hero h1 {
    font-size: 52px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-contact-hero p {
    max-width: 700px;
    margin: 0 auto 30px;
    font-size: 18px;
}

/* ============================
   CONTACT HERO
============================ */

.uls-contact-hero {
    padding: 180px 0;
    background: linear-gradient(rgba(0,0,0,.75), rgba(0,0,0,.85)),
                url('/img/homepage/survey-05.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
}

.uls-contact-hero h1 {
    font-size: 52px;
    font-weight: 800;
    margin-bottom: 20px;
}

.uls-contact-hero p {
    max-width: 700px;
    margin: 0 auto 30px;
    font-size: 18px;
}

/* ============================
   MAP SECTION
============================ */

.uls-contact-map {
    padding: 140px 0;
    background: #f7f7f7;
}

.uls-map-wrapper {
    border-radius: 8px;
    overflow: hidden;
}

.uls-contact-info ul {
    list-style: none;
    padding: 0;
}

.uls-contact-info ul li {
    padding-left: 20px;
    position: relative;
    margin-bottom: 8px;
}

.uls-contact-info ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}


/* ===============================
   CONTACT - WHY SECTION
================================ */

.uls-contact-why {
    padding: 160px 0;
    background: #ffffff;
    position: relative;
}

/* Subtle background accent text */
.uls-contact-why::before {
    content: "WHY ULS";
    position: absolute;
    top: 115px;
    left: 25%;
    transform: translateX(-50%);
    font-size: 120px;
    font-weight: 900;
    color: rgb(0 0 0 / 14%);
    white-space: nowrap;
    pointer-events: none;
    z-index: 0;
}

/* Ensure content stays above background text */
.uls-contact-why .container {
    position: relative;
    z-index: 2;
}

/* Image styling */
.uls-contact-why img {
    width: 100%;
    box-shadow: 0 25px 60px rgba(0,0,0,.1);
	    border-bottom: 5px solid #f15a24;
    border-left: 10px solid #f15a24;
    border-top: 1px solid #f15a24;
    clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%);
}

/* Section tag */
.uls-contact-why .uls-section-tag {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #f15a24;
    margin-bottom: 12px;
}

/* Title */
.uls-contact-why h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 20px;
}

/* Paragraph */
.uls-contact-why p {
    font-size: 16px;
    line-height: 1.7;
    margin-bottom: 25px;
    color: #555;
}

/* Bullet List */
.uls-contact-why ul {
    list-style: none;
    padding: 0;
    margin: 0;
}

.uls-contact-why ul li {
    padding-left: 22px;
    position: relative;
    margin-bottom: 10px;
    font-size: 15px;
}

.uls-contact-why ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    top: 0;
    color: #f15a24;
}

/* Optional hover effect for image */
.uls-contact-why img:hover {
    transform: scale(1.02);
    transition: transform .4s ease;
/*	border-bottom: 5px solid #000;
    border-right: 10px solid #000;
	border-left: none !important;
    border-top: 1px solid #000;
	clip-path: polygon(
  12% 0,
  100% 0,
  100% 100%,
  0 100%,
  0 12%
);*/
}

/* Responsive adjustments */
@media (max-width: 992px) {
.uls-contact-why::before {
    content: "WHY ULS";
    position: absolute;
    top: 115px;
    left: 50%;
    transform: translateX(-50%);
    font-size: 120px;
    font-weight: 900;
    color: rgb(0 0 0 / 14%);
    white-space: nowrap;
    pointer-events: none;
    z-index: 0;
}
    .uls-contact-why::before {
        font-size: 70px;
        top: 30px;
    }

    .uls-contact-why h2 {
        font-size: 30px;
    }

}
/* ============================
   SERVICES OVERVIEW SECTION
============================ */

.uls-contact-services {
    padding: 225px 0;
    background: linear-gradient(rgba(8,15,25,.9), rgba(8,15,25,.92)),
                url('/img/homepage/survey-03.webp');
    background-size: cover;
    background-position: center;
    color: #fff;
	    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-contact-services h2 {
	font-weight: 800; font-size: 50px;
}

/* Flip Card Container */
.uls-flip-card {
    perspective: 1200px;
	    clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
}

.uls-flip-inner {
    position: relative;
    width: 100%;
    height: 350px; /* increased size */
    transform-style: preserve-3d;
    transition: transform .7s cubic-bezier(.4,.2,.2,1);
}

.uls-flip-card:hover .uls-flip-inner {
    transform: rotateY(180deg);
}

/* Front & Back */
.uls-flip-front,
.uls-flip-back {
    position: absolute;
    width: 100%;
    height: 100%;
    backface-visibility: hidden;
    border-radius: 10px;
    padding: 30px;
    display: flex;
    flex-direction: column;
    justify-content: center;
}

/* FRONT */
.uls-flip-front {
    background: #f15a24;
    align-items: center;
    text-align: center;
}

.uls-flip-front i {
    font-size: 42px;
    margin-bottom: 20px;
}

/* BACK */
.uls-flip-back {
    background: rgba(0,0,0,.95);
    transform: rotateY(180deg); border: 2px solid #f15a24;
}

.uls-flip-back h5 {
    font-weight: 700;
    margin-bottom: 12px;
}

.uls-flip-back p {
    font-size: 14px;
    margin-bottom: 12px;
}

/* Bullets */
.uls-flip-back ul {
    list-style: none;
    padding: 0;
}

.uls-flip-back ul li {
    padding-left: 18px;
    position: relative;
    margin-bottom: 6px;
    font-size: 13px;
}

.uls-flip-back ul li::before {
    content: "✵";
    position: absolute;
    left: 0;
    color: #f15a24;
}

@media(max-width:991px){
.uls-contact-services h2 {
    font-weight: 800;
    font-size: 2rem;
}
}
/**** Blueprints Section ****/
.uls-portfolio-hero {
    padding: 160px 0;
	color: #fff;
      background: linear-gradient(180deg, rgb(53 52 52) 30%, rgb(241 90 36) 30%);
}

.uls-portfolio-tag {
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #f15a24;
    margin-bottom: 15px;
}

.uls-portfolio-hero h1 {
    font-size: 48px;
    font-weight: 800;
    margin-bottom: 25px;
}

.uls-portfolio-hero p {
    margin-bottom: 25px;
    line-height: 1.7;
}

.uls-portfolio-hero ul {
    list-style: none;
    padding: 0;
    margin-bottom: 30px;
}

.uls-portfolio-hero ul li {
    margin-bottom: 8px;
}

.uls-portfolio-hero-image img {
    border-radius: 8px;
    box-shadow: 0 20px 60px rgba(0,0,0,.15);
	    border-bottom: 5px solid #fff;
    border-left: 10px solid #fff;
    border-top: 1px solid #fff;
    clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%);
}

.uls-blueprint-grid {
    padding: 120px 0;
    background: #ffffff;
}

.uls-blueprint-card {
    text-align: center;
    cursor: pointer;
    padding: 40px 15px;
    transition: .4s ease;
	    border-bottom: 2px solid #000;
    border-left: 2px solid #000;
    border-top: 2px solid #FF5722;
    border-right: 2px solid #FF5722;
    height: 100%;
    clip-path: polygon(15% 0, 100% 0, 100% 85%, 85% 100%, 0 100%, 0 15%);
	
}

.uls-blueprint-card:hover {
	background: #f9f9f9;
	clip-path: polygon(0 0, /* top-left */ 85% 0, /* top-right shaved */ 100% 15%, /* right bevel */ 100% 100%, /* bottom-right */ 15% 100%, /* bottom-left shaved */ 0 85% /* left bevel */);
	border-top: 2px solid #FF5722;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    border-left: 2px solid #FF5722;
}

.uls-blueprint-avatar {
    width: 150px;
    height: 150px;
    margin: 0 auto 25px;
        clip-path: polygon(0 8%, 25% 4%, 50% 10%, 75% 5%, 100% 8%, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    overflow: hidden;
    position: relative;
    box-shadow: 0 20px 50px rgba(0,0,0,.15);
    transition: .4s ease;
}

.uls-blueprint-avatar img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: grayscale(100%);
    transition: .4s ease;
}

.uls-blueprint-card:hover .uls-blueprint-avatar img {
    filter: grayscale(0%);
    transform: scale(2.0);
}

.uls-blueprint-title {
    font-size: 20px;
    font-weight: 700;
    margin-top: 10px;
}

.uls-project-details {
    display: none;
}

.uls-blueprint-modal {
    display: none;
    position: fixed;
    inset: 0;
    background: rgba(0,0,0,.85);
    z-index: 9999;
    padding: 60px;
    overflow-y: auto;
}

.uls-blueprint-modal-content {
    background: #fff;
    padding: 40px;
    max-width: 1200px;
    margin: auto;
    position: relative;
}

.uls-modal-close {
    position: absolute;
    top: 15px;
    right: 25px;
    font-size: 28px;
    cursor: pointer;
}
.uls-modal-grid {
    display: grid;
    grid-template-columns: 1.2fr 1fr;
    gap: 60px;
    max-width: 1200px;
    margin: auto;
}

.uls-modal-left img {
    width: 100%;
    box-shadow: 0 30px 70px rgba(0,0,0,.25);
}

.uls-modal-right h2 {
    font-size: 42px;
    font-weight: 800;
    margin-bottom: 25px;
}

.uls-modal-right p {
    font-size: 18px;
    line-height: 1.8;
    color: #444;
}

.uls-modal-bullets {
    grid-column: 1 / 2; /* aligns under image */
    margin-top: 40px;
}

.uls-modal-bullets h3 {
    font-size: 24px;
    font-weight: 700;
    margin-bottom: 15px;
}

.uls-modal-bullets ul {
    padding-left: 20px; 
}

.uls-modal-bullets li {
    margin-bottom: 10px;
    font-size: 16px; list-style: none !important;
}
@media(max-width:991px){
.uls-portfolio-hero {
    padding: 160px 0;
    color: #fff;
    background: linear-gradient(180deg, rgb(53 52 52) 30%, rgb(241 90 36) 30%);
    text-align: center;
}
}

/**** Sections On Every Page ****/
/* ================================
   CONTACT SECTION (CONTAINED)
================================ */

.uls-contact-section {
        padding: 120px 0 60px 0px;
    background: #f9f9f9;
    clip-path: polygon(0 0, 100% 0, 100% 85%, 75% 92%, 50% 88%, 25% 94%, 0 90%);
    margin-bottom: -187px;
    position: relative;
    z-index: 1;
}

/* Unified Card */
.uls-contact-card {
    position: relative;
    background: #ffffff;
    overflow: hidden;
    border-radius: 6px;
    box-shadow: 0 30px 80px rgba(0,0,0,0.08);
}

/* ================================
   RULER STRIP (ANIMATED)
================================ */

.uls-ruler-strip {
    position: absolute;
    top: 0;
    left: 0;
    width: 200%;
    height: 35px;
    background: url('/img/homepage/ruler-lines.png') repeat-x;
    background-size: contain;
    animation: ulsRulerMove 30s linear infinite;
    opacity: 0.35; z-index: 1;
}

@keyframes ulsRulerMove {
    from { transform: translateX(0); }
    to   { transform: translateX(-50%); }
}

/* ================================
   LEFT IMAGE PANEL
================================ */

.uls-contact-image {
    background: url('/img/homepage/contact-survey-01.webp') center left / cover no-repeat;
    min-height: 100%;
    position: relative;
}

/* Soft fade into form side */
.uls-contact-image::after {
    content: "";
    position: absolute;
    inset: 0;
    background: linear-gradient(
        to right,
        rgba(255,255,255,0) 0%,
        rgba(255,255,255,1) 85%
    );
}

/* ================================
   RIGHT FORM SIDE
================================ */

.uls-contact-content {
        padding: 80px 70px 100px 70px;
    position: relative;

    /* Subtle diagonal brand accent */
    background:
        linear-gradient(
            110deg,
            rgba(241,90,36,0.05) 0%,
            rgba(241,90,36,0.05) 25%,
            transparent 25%
        );
   height: 950px;
}

/* Eyebrow */
.uls-contact-eyebrow {
    font-size: 14px;
    letter-spacing: 2px;
    color: #f15a24; text-align: center;
    font-weight: 600;
    margin-bottom: 20px;
}

/* Heading */
.uls-contact-content h2 {
    font-size: 46px; text-align: center;
    font-weight: 800;
    margin-bottom: 40px;
    color: #111;
}

/* ================================
   FORM ELEMENT STYLING
================================ */


/* ================================
   RESPONSIVE TWEAKS
================================ */

@media (max-width: 991px) {

    .uls-contact-content {
        padding: 60px 40px;
    }

    .uls-contact-image {
        min-height: 350px;
    }

    .uls-contact-content h2 {
        font-size: 36px;
    }
}
/* ========================================== */
/* === Misc. Section ======================== */
/* ========================================== */

/****  Referrals Owl Carousel ****/
.owl-carousel .owl-stage-outer {
	padding: 40px 0;
}
.owl-nav {
	position: absolute; width: 100%; top: 10%; display: none;
}
.owl-carousel .item {
	display: block; height: 100%;
}
.owl-carousel .owl-item span {
	font-size: 20px; font-weight: 500;
}
.owl-nav .owl-prev,
.owl-nav .owl-next {
	position: absolute;
}
.owl-nav .owl-prev:hover,
.owl-nav .owl-next:hover {
	background: transparent !important; color: #212121 !important; opacity: .5 !important;
}
.owl-nav .owl-next {
	left: 100%;
}
.owl-nav .owl-prev {
	right: 100%;
}
.owl-nav .owl-prev span,
.owl-nav .owl-next span {
	font-size: 3em; display: block;
}
.owl-carousel .owl-nav button.owl-next, .owl-carousel .owl-nav button.owl-prev, .owl-carousel button.owl-dot {
	outline: none;
}

/**** Default Classes ****/
body {
	font-family: 'Montserrat', sans-serif;
}
body#barbajs {
	visibility: visible;
}
a, button, .btn {
	-webkit-transition: all .30s ease; -moz-transition: all .30s ease; -o-transition: all .30s ease; transition: all .30s ease;
}
a {
	cursor:pointer;	text-decoration: none !important;
}
a:hover {
	color: #252525; text-decoration: underline;
}
.btn {
	cursor: pointer; border-radius: 0;
}
.btn.alert-trigger {
	color: #fdfdfd; background-color:#333;
}
.btn:hover {
	opacity: 0.9;
}
.inner-content-section .btn {
	background:rgba(135,170,188);	border-color: #949494; color: rgba(255,255,255,1);
}
.inner-content-section .btn:hover {
	background-color: rgba(135,170,188,0.4); color: #fff;
}
.btn-primary:not([disabled]):not(.disabled).active,
.btn-primary:not([disabled]):not(.disabled):active,
.show>.btn-primary.dropdown-toggle {outline: none;box-shadow: none;background-color: #444;border-color: #949494;color: #fff;}
.btn-primary:hover {
	border-color: #949494;
}
.btn.focus, .btn:focus {
	outline:none; box-shadow: none;
}
.section-divider {
	position: relative; padding: 50px 0;
}
.estimate-section-divider .alert, .estimate-section-divider .alert p {
    text-align: left; font-size: inherit;
}
.block-overlay {
	position: absolute; display: inline-block; background:rgba(0, 0, 0, 0.6); width: 100%; height: 100%; top: 0; left: 0; right: 0; bottom: 0; z-index: 0;
}
.fadeDiv {
	position: fixed; display: inline-block; z-index: 1050; color: #fff; background: #300e87; padding: 50px; top: 150px; bottom: 150px; left: 300px; right: 300px; transform:scale(0,0); box-shadow: 0px 0px 20px -1px #000; transition: all .20s cubic-bezier(0.65, 0.05, 0.36, 1);
}
.menu-scaler {
	position: fixed; display: inline-block; padding: 50px; z-index: 1050; top: 150px; bottom: 150px; left: 300px; right: 300px; transform: scale(1,1);
}
.fadeDiv .fadeDiv-close {
	position: absolute; right: 20px; top: 10px; font-weight: 900; font-size: 2em; font-family: 'Lato'; cursor: pointer;
}
.navbar-collapse ul {
	width: 100%; justify-content: center; align-items: center;
}
.overlay {
	height: 100%; width: 100%; background: #ffffffbf;
}
#myBtn {
	display: block; width: 50px; height: 50px; position: fixed; top: 100%; right: 30px; z-index: 99; border: none; outline: none; background-color: #000000; color: #ffffff; cursor: pointer; font-size: 14px; padding-top: 0; border-radius: 0px; -webkit-transition: all .3s ease; -moz-transition: all .3s ease; transition: all .3s ease;
}
#myBtn i {
	color: white;
}
#myBtn:hover {
	background-color: #424242; color: #fff;
}

/**** Gallery Function Section ****/
#portfolio input {
	display: flex; flex-direction: column; justify-content: center; align-items: center; position: absolute; margin: 0; top: 0; left: -60px; z-index: 2; width: 60px; height: 60px; -webkit-appearance: none; background-image: url(/img/icons/close-btn-icon-red.png); background-repeat: no-repeat; background-color: transparent; background-size: contain; color: #ffffff; border: none; cursor: pointer; outline: none !important; -webkit-transition: all .30s ease; -moz-transition: all .30s ease; -o-transition: all .30s ease; transition: all .30s ease;
}
#portfolio input:hover {
	background-color: #fff;	opacity: .;
}
button.mfp-close, button.mfp-arrow {
	outline :none !important;
}
#portfolio {
	display: flex; padding: 0; overflow: hidden; flex-wrap: wrap; justify-content: center;
}
#portfolio li {
	display: flex; justify-content: center; align-items: center; float: left; position: relative; overflow: hidden; margin: 0 10px 20px;
}
#portfolio li a {
	transform: scale(1,1); display: block; width: 100%; height: 295px; width: 490px; overflow: hidden; -o-transition:all .30s ease; -moz-transition:all .30s ease; -webkit-transition:all .30s ease; transition:all .30s ease;
}
#portfolio li a:hover {
	transform: scale(1.1,1.1) !important;
}
#portfolio li a img {
	display: block; position: absolute; top: 0%; bottom: 0%; left: 0%; right: 0%; margin: auto; width: 100%; height: auto; transform: scale(1,1);
}
#portfolio li:hover .block-overlay {
	background-color: #000000cc;
}
#portfolio li:hover input {
	left: 0;
}
#portfolio .block-overlay {
	background: rgb(0,0,0,0.1); z-index: 1; -webkit-transition: all .30s ease; -moz-transition: all .30s ease; -o-transition: all .30s ease; transition: all .30s ease;
}

.mfp-ready .mfp-figure {
	opacity: 0; margin-left: -100px;
}
.mfp-zoom-in .mfp-figure, .mfp-zoom-in .mfp-iframe-holder .mfp-iframe-scaler {
	opacity: 0; margin-left: -100px; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out; -webkit-transform: scale(0.95); -ms-transform: scale(0.95); transform: scale(0.95);
}
.mfp-zoom-in.mfp-bg,
.mfp-zoom-in .mfp-preloader {
	opacity: 0; -webkit-transition: all 0.3s ease-out; transition: all 0.3s ease-out;
}
.mfp-zoom-in.mfp-image-loaded .mfp-figure, .mfp-zoom-in.mfp-ready .mfp-iframe-holder .mfp-iframe-scaler {
	opacity: 1; margin-left: 0; -webkit-transform: scale(1); -ms-transform: scale(1); transform: scale(1);
}
.mfp-zoom-in.mfp-ready.mfp-bg,
.mfp-zoom-in.mfp-ready .mfp-preloader {
	opacity: 0.8;
}
.mfp-zoom-in.mfp-removing .mfp-figure, .mfp-zoom-in.mfp-removing .mfp-iframe-holder .mfp-iframe-scaler {
	-webkit-transform: scale(0.95);	-ms-transform: scale(0.95); transform: scale(0.95); opacity: 0; margin-left: -100px;
}
.mfp-zoom-in.mfp-removing.mfp-bg,
.mfp-zoom-in.mfp-removing .mfp-preloader {
	opacity: 0; margin-left: -20px;
}
.mfp-iframe-scaler {
	overflow: visible; /*so the close button is shown*/
}
.mfp-zoom-out-cur {
	cursor: auto;
}
.mfp-zoom-out-cur .mfp-image-holder .mfp-close {
	cursor: pointer;
}

/**** Reviews Function ****/
.carousel-indicators li {
	position: relative; top: 51px; -ms-flex: 0 1 auto; flex: 0 1 auto; width: 30px;	height: 3px; margin-right: 3px;	margin-left: 3px; text-indent: -999px; background-color: rgb(191, 190, 190);
}
.carousel-indicators .active {
	background-color: #0f8029;
}

/* ========================================== */
/* === Footer Section ======================= */
/* ========================================== */
/* ===============================
   ULS EPIC FOOTER
================================= */

.uls-footer {
    color: #fff;
    font-size: 15px;
}

.uls-footer-top {
    padding: 120px 0 80px;
    background: linear-gradient(rgb(0 0 0 / 75%), rgb(0 0 0 / 95%)), url(/img/homepage/utah-landscape-02.webp);
    background-size: cover;
    background-position: center;
    background-attachment: fixed;
}

.uls-footer-top a {
	color: #f15a24;
}

.uls-footer-logo {
    max-width: 220px;
    margin-bottom: 25px;
}

.uls-footer h4 {
    font-size: 18px;
    font-weight: 700;
    margin-bottom: 20px;
    letter-spacing: 1px;
}

.uls-footer p {
    opacity: .85;
    line-height: 1.6;
}

.uls-footer-links {
    list-style: none;
    padding: 0;
    margin: 0;
}

.uls-footer-links li {
    margin-bottom: 10px;
}

.uls-footer-links a {
    color: #fff;
    text-decoration: none;
    transition: .3s ease;
}

.uls-footer-links a:hover {
    color: #f15a24;
    padding-left: 5px;
}

.uls-footer-region strong {
    color: #f15a24;
    display: block;
    margin-bottom: 5px;
}

.uls-footer-highlight {
    margin-top: 20px;
    padding: 12px 15px;
    border-left: 3px solid #f15a24;
    background: rgba(255,255,255,0.05);
    font-size: 14px;
}

.uls-footer-cta {
    display: inline-block;
    margin-top: 15px;
    padding: 10px 18px;
    background: #f15a24;
    color: #fff !important;
    text-decoration: none;
    font-weight: 600;
    transition: .3s ease;
}

.uls-footer-cta:hover {
    background: #c94518;
}

.uls-footer-bottom {
    padding: 25px 0;
    background: #141414;
    font-size: 14px;
}

.uls-footer-bottom a {
    color: #ccc;
    margin: 0 10px;
    text-decoration: none;
}

.uls-footer-bottom a:hover {
    color: #f15a24;
}

.uls-social {
    display: inline-flex;
    justify-content: center;
    align-items: center;
    width: 36px;
    height: 36px;
    border: 1px solid rgba(255,255,255,.2);
    border-radius: 50%;
    margin-left: 8px;
    transition: .3s ease;
}

.uls-social:hover {
    background: #f15a24;
    border-color: #f15a24;
    color: #fff;
}

@media(max-width: 991px){
.uls-footer-top {
    text-align: center;
}
}




/* === Lg. Laptop CSS Section ================= */
@media screen and (max-width : 1440px) {
	/*** Don't place anything here, unless absolutely necessary ***/
}
/* === Sm. Laptop CSS Section ================= */
@media screen and (max-width: 1024px) {
	
}
 
/* === Mobile CSS Section ===================== */
@media screen and (max-width: 991px) {

/**** Top Header Section ****/
.mobile-top-header {
	display:block !important; padding: 0 30px 0; background: rgb(135,170,188); z-index: 4; overflow: visible;
}
.mobile-menu {
	text-align: center; position: fixed; height: 100%; width: 100%;	display: block;	padding-top: 6em; top: 100%; border: 0;	background: #232323; border-radius: 0; z-index: 1100; overflow: auto; -webkit-transition-property: all;	-webkit-transition-duration: .30s; -webkit-transition-timing-function: ease-in-out; transition-property: all; transition-duration: .30s; transition-timing-function: ease-in-out;
}
.mobile-menu .nav-link {
	font-size: 2em;	color: #c5c5c5 !important;
}
.mobile-menu-custom-show {
	top: 0%;
}
.mobile-menu-top-hero {
	background-size: cover;	padding: 40px 0 0; top:0; left:0; width: 100%; text-align: center;
}
.mobile-menu-top-hero h2 {
	padding: 0 25px;
}
#mobile-menu-header {
	margin-top: 0; background: #ffffff00; box-shadow: none;
}
#mobile-menu-header ul {
	list-style: none; padding: 0 20px; margin-top: 8em; position: relative; width: inherit;
}
#mobile-menu-header ul li a {
	color:#ffffff; padding: 20px 20px;
}
.header-contact_info a {
	color: rgb(255,255,255); margin: 0;
}
.top-header a, .top-header i, .top-header p {
	color: rgb(0,0,0);
}
.top-header-animate a, .top-header-animate i, .top-header-animate p {
	color: rgb(0,0,0);
}
.top-header {
	background: white; display: none;
}
.mobile-top-header img{
	max-width: 100px; 
	
	
}
.header-contact_info {
	font-size: 1.5em;
	
	        font-size: 1.5em;
        margin: 20px;
}
.navbar-scroll {
	display: none;
}
.header-contact_info .navbar-brand {
	font-size: 1.3em;
}
.top-header div[class*='col-']:first-child {
	justify-content: flex-start;
}
.top-header div[class*='col-'] {
	display: flex; justify-content: left; width: 33.333%; padding: 15px 0;
}
.top-header div[class*='col-']:nth-child(3) {
	display: flex; justify-content: flex-end; width: 33.333%; padding: 15px 0;
}
.top-header div[class*='col-']:nth-child(2) {
	background: none; margin: 0; display: flex; justify-content: center; align-items: center;
}
.top-header div[class*='col-']:nth-child(1) a {
    font-size: 1.5em;
    display: inline-block;
    margin: 20px;
}
.top-header div[class*='col-']:nth-child(2) p {
	font-size: inherit; line-height: inherit;
}

/**** Navigation Section ****/
.dropdown-wrapper {
	margin: 0; padding: 0;
}
.navbar-sidebar .dropdown-menu-mobile {
	position: relative; display: none; top: 0; left: 0; z-index: 1000; float: left; height: 0px; margin: 0; width: 100%; padding: 0; font-size: 18px; color: #e6e6e6 !important; text-align: left; list-style: none; background-color: rgb(200,200,200); border: 0; visibility: hidden; border-radius: 0; transform: scale(1,0); -webkit-transition: all .30s ease; -moz-transition: all .30s ease; -o-transition: all .30s ease; transition: all .30s ease;
}
.dropdown-menu-animate {
	display: inline-block !important; transform: scale(1,1) !important; padding: 25px 0 !important; height: auto !important; visibility: visible !important;
}
.navbar-sidebar .dropdown-menu-mobile a {
	color: rgb(75,75,75); font-weight:600 !important; font-size: 1.3em; font-family: 'Raleway'; text-align: center;
}
.navbar-sidebar {
	padding-top: 84px; height: 100%; width: 200px; background-color: rgb(250,250,250); position: fixed !important; z-index: 1; overflow: auto;
}
.bar-block .dropdown-hover, .bar-block .dropdown-click {
	width: 100%;
}
.bar-block .dropdown-hover .dropdown-content, .bar-block .dropdown-click .dropdown-content {
	min-width: 100%;
}
.bar-block .dropdown-hover .button, .bar-block .dropdown-click .button {
	width: 100%; text-align: left; padding: 8px 16px;
}
.main, #main {
	transition: margin-left .4s;
}
.modal {
	display: none; padding-top: 100px; position: fixed; left: 0; top: 0; width: 100%; height: 100%;	overflow: auto; background-color: rgb(0,0,0); background-color: rgba(0,0,0,0.4);
}
.modal-content {
	margin: auto; background-color: #fff; position: relative; padding: 0; outline: 0; width: 1200px;
}
.bar {
	width: 100%; overflow: hidden;
}
.center .bar {
	display: inline-block; width: auto;
}
.bar .bar-item {
	padding: 8px 16px; float: left; width: auto; border: none; display: block; outline: 0;
}
.bar .dropdown-hover, .bar .dropdown-click {
	position: static; float: left;
}
.bar .button {
	white-space: normal;
}
.bar-block .bar-item {
    width: 100%;
    display: block;
    padding: 8px 16px;
    text-align: left;
    border: none;
    white-space: normal;
    float: none;
    outline: 0;
    font-family: Montserrat;
    font-weight: 700;
    color: black;
}
.bar-block.center .bar-item {
	text-align: center;
}
.block {
	display: block; width: 100%;
}

/**** Home Section ****/
.home-header-section {
	padding-top: 125px;
}
.dropdown-menu {
	position: absolute; top: 100%; left: 0; z-index: 1000; display: none; float: left; min-width: 10rem; padding: .5rem 0; margin: .125rem 0 0; font-size: 1rem; color: rgb(33, 37, 41); text-align: left; list-style: none; background-color: rgb(87, 86, 87); background-clip: padding-box; border: 1px solid rgba(0,0,0,.15); border-radius: .25rem;
}
.dropdown-item {
	display: block;	width: 100%; padding: .25rem 1.5rem; clear: both; color: rgb(255,255,255); text-align: inherit;	white-space: nowrap; background: 0 0; border: 0;
}
.dropdown-item.active, .dropdown-item:active {
	color: rgb(255, 255, 255); text-decoration: none; background-color: rgb(22,22,22) !important;
}
.video {
	overflow: hidden; position: relative; z-index: 2; display: block;
}
.video .pad {
	padding: 350px 0px 0px 300px; position: absolute;
}
.video .pad h5 {
	font-weight: 500; color: rgb(255,255,255); font-size: 50px; text-shadow: 0px 0px 5px #000; font-family: 'Arial'; text-align: left;
}
.video .pad p {
	margin-top: 0% !important; color: rgb(255,255,255); text-shadow: 0px 0px 5px #000; font-size: 25px; font-family: 'Arial'; text-align: left;
}
.video .pad a {
	font-size: 16px; color: rgb(255,255,255); font-family: 'Arial'; font-weight: 600; border: 1px solid rgb(12,32,63); padding: 15px 30px; border-radius: 1.6rem; background: rgb(12,32,63);
}
.video .pad a:hover {
	color: rgb(255,255,255); border: 1px solid rgb(255,255,255); background: transparent;
}
 

/**** About Section ****/


/**** Services Section ****/


/**** Gallery Section ****/
.gallery-page {
	padding: 75px 0 50px 0;	background: rgb(249,249,249);
}
.gallery-page h1 {
	font-size: 3rem; font-weight: 600; font-family: 'font2'; padding-bottom: 40px; text-align: center; color: rgb(129,141,148);
}

/**** Areas We Service Section ****/
.area:nth-child(odd) {
	padding: 75px 0 75px 0; background: rgb(255,255,255);
}
.area:nth-child(even) {
	padding: 75px 0 75px 0; background: rgb(245,245,245);
}
.area h2 {
	font-size: 2.5rem; font-family: font2; font-weight: 800; color: rgb(196,41,56);
}
.area h4 {
	font-size: 1.5rem; font-family: font2; color: rgb(75,75,75);
}
.area p {
	font-size: 17px; text-align: justify; color: rgb(12,12,12);
}
.area iframe {
	width: 100%; height: 100%; border-radius: 0.8rem; box-shadow: 1px 1px 10px 1px rgb(0,0,0);
}

/**** Testimonials Section ****/
.testimonials {
	padding: 30px 0 30px 0; background: rgb(255,255,255);
}

/**** Contact Section ****/


/**** Sections On Every Page ****/
.contact-section {
	padding: 50px 0 50px 0;
}
.contact-section h3 {
	font-size: 2rem; font-family: font2; font-weight: 800; text-align: center; color: rgb(12,12,12);
}

/**** Footer Section ****/
.footer-section {
	padding-top: 30px; text-align: center;
}
.footer-section img {
	max-width: 210px; padding-bottom: 25px;
}
.service-cities h4 {
	font-size: 24px; font-weight: 600; color: rgb(255,255,255);
}
.service-cities a {
	font-size: 18px; line-height: 10px; color: rgb(255,255,255);
}

/**** Misc. Section ****/
.btn {
	background: rgb(249,78,1); width: 50%; padding: 10px 0px; color: #ffffff; cursor: pointer; outline: none; border: none;
}
.alert h1,
.alert p {
	top: 2em; opacity: 0; position:relative;
}
.alert h1 {
	margin-top: 0; color: #2b1663;
}
.custom-show {
	position: fixed; transform: scale(1,1); border: 0; background: white; border-radius: 0; z-index: 1100; overflow: inherit; -webkit-transition-property: all; -webkit-transition-duration: .30s; -webkit-transition-timing-function: ease-in-out; transition-property: all; transition-duration: .30s; transition-timing-function: ease-in-out;
}
.alert-dismissible .close {
	position: absolute; top: 0; right: 0; background: transparent; border: none; padding: 0.75rem 1.25rem; color: rgb(80,80,80); font-family: 'font2'; outline: none; z-index: 3;
}
.alert-dismissible .close span {
	font-size: 35px;
}
.lnr {
	display: inline-block; fill: currentColor; width: 1em; height: 1em; vertical-align: -0.2em; cursor: pointer;
}

}
/* === Sm. Mobile CSS Section ================= */
@media screen and (max-width: 375px) {

}