/* webfont add here */
@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Thin.ttf') format('truetype');
    font-weight: 100;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-ExtraLight.ttf') format('truetype');
    font-weight: 200;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Light.ttf') format('truetype');
    font-weight: 300;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Regular.ttf') format('truetype');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Medium.ttf') format('truetype');
    font-weight: 500;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-SemiBold.ttf') format('truetype');
    font-weight: 600;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Bold.ttf') format('truetype');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-ExtraBold.ttf') format('truetype');
    font-weight: 800;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Inter';
    src: url('../fonts/Inter/Inter-Black.ttf') format('truetype');
    font-weight: 900;
    font-style: normal;
    font-display: swap;
}

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

:root {

    /* Colors: */
    --color-primary: #014353;
    --color-secondary: #D5F592;
    --color-primary-gradient: rgba(1, 67, 83, 0.6);
    --color-dark: #013745;
    --color-text: #1b1b1b;
    --color-white: #FFFFFF;
    --color-black: #000000;
    --color-font: #012730;
    --color-font2: rgba(1, 39, 48, 0.5);
    --color-grey: #8D8D8D;
    --color-grey2: #9EABB6;
    --color-light: #CCD9DD;
    --color-icon: #D3D3D3;
    --color-light-background: #F7FDE9;
    --color-light-background2: #fafafa;
    --grey-background1: #F3F3F3;
    --grey-background2: #E9E9E9;
    --scrollbar-background: #f1f1f1;

    /* Font/text values */
    --font-family-Inter: 'Inter';
    --font-style-normal: normal;
    --font-weight-400: 400;
    --font-weight-500: 500;
    --font-weight-600: 600;
    --font-weight-700: 700;
    --font-size-12: 12px;
    --font-size-13: 13px;
    --font-size-14: 14px;
    --font-size-15: 15px;
    --font-size-16: 16px;
    --font-size-17: 17px;
    --font-size-18: 18px;
    --font-size-19: 19px;
    --font-size-20: 20px;
    --font-size-21: 21px;
    --font-size-22: 22px;
    --font-size-24: 24px;
    --font-size-26: 26px;
    --font-size-28: 28px;
    --font-size-30: 30px;
    --font-size-32: 32px;
    --font-size-36: 36px;
    --font-size-40: 40px;
    --font-size-48: 48px;
    --font-size-52: 52px;
    --font-size-64: 64px;
    --font-size-70: 70px;
    --font-size-80: 80px;
    --font-size-90: 90px;
    --font-size-100: 100px;
    --character-spacing-0: 0px;
}

/* global */


a {
  text-decoration: none;
  outline: none;
}

a,
button {
  -webkit-transition: all 250ms ease 0s;
  -moz-transition: all 250ms ease 0s;
  -ms-transition: all 250ms ease 0s;
  -o-transition: all 250ms ease 0s;
  transition: all 250ms ease 0s;
}

button,
button:focus {
  outline: none;
  border: none;
  cursor: pointer;
}

.form-control:focus,
.form-check-input:focus {
  outline: 0;
  box-shadow: none;
}
input[type="checkbox"] {
    min-height: auto;
}
input, textarea, select {
    width: 100%;
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid #AAB3C5;
    outline: none;
    font-size: var(--font-size-16);
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    line-height: 1.4;
}
select {
    appearance: none;
}
textarea{
    height: 192px;
    resize: none;
}

input:hover,
input:active,
input:focus,
select:hover,
select:active,
select:focus,
textarea:hover,
textarea:focus,
textarea:active {
  outline: none;
  box-shadow: 0 4px 10px #ccc;
  border: 1px solid var(--color-primary-gradient);
  /*box-shadow: none;*/
}

.dropdown-item.active,
.dropdown-item:active {
  color: var(--bs-dropdown-link-active-color);
  text-decoration: none;
  background-color: inherit;
}

input[type=number] {
  -moz-appearance: textfield;
}

input[type=number]::-webkit-inner-spin-button {
  -webkit-appearance: none;
  margin: 0;
}

::-webkit-scrollbar {
  width: 10px;
}

::-webkit-scrollbar-track {
  background: var(--scrollbar-background) ;
}
::-webkit-scrollbar-thumb {
  background: var(--color-primary);
}

::-webkit-scrollbar-thumb:hover {
  background: var(--color-primary);
}

img {
  max-width: 100%;
  height: auto;
  display: block;
}

.flex-box {
  --bs-gutter-x: 1.5rem;
  --bs-gutter-y: 0;
  display: flex;
  flex-wrap: wrap;
  margin-top: calc(-1* var(--bs-gutter-y));
}

/* Character Styles */
h1 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-64);
    line-height: 1.15;
    color: var(--color-font);
    margin-bottom: 24px;
    letter-spacing: -6%;
}

h2 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-52);
    line-height: 1.06;
    color: var(--color-font);
    margin-bottom: 36px;
    letter-spacing: -6%;
}

h3 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-36);
    color: var(--color-font);
    line-height: 1.25;
    letter-spacing: -6%;
    margin-bottom: 24px;
}

h4 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-32);
    line-height: 1.3;
    margin-bottom: 20px;
}

h5 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-30);
    line-height: 1.35;
    margin-bottom: 20px;
}

h6 {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-28);
    line-height: 1.4;
    margin-bottom: 20px;
}

p {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-20);
    line-height: 1.4;
    margin-bottom: 24px;
}
p small {
    font-size: var(--font-size-24);
    line-height: 1.35;
}

.small-heading {
    font-size: 12px;
    font-weight: 500;
    line-height: 1.3;
    color: var(--color-font);
    position: relative;
    margin-bottom: 40px;
    display: block;
}
.small-heading:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    width: 6px;
    height: 12px;
    background-color: var(--color-font);
    border-radius: 0 12px 12px 0;
    margin-right: 8px;
}

ul li, ol li {
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-400);
    font-size: var(--font-size-28);
    line-height: 1.4;
    margin-bottom: 20px;
}
ul li::marker {
    font-size: var(--font-size-24);
}

section ul, section ol {
    list-style-position: outside;
    margin-bottom: 40px;
    padding-left: 32px;
}

section h1:last-child, section h2:last-child, section h3:last-child, section h4:last-child, section h5:last-child, section h6:last-child, section p:last-child, section ul:last-child, section ol:last-child, section ul li:last-child, section ol li:last-child {
    margin-bottom: 0;
}

body {
    font-family: var(--font-family-Inter);
    background:var(--color-white);
    overflow-x: hidden;
    color: var(--color-text);
}

/* font sizes */


/* Containers */
.container {
    max-width: 1700px;
    margin: auto;
    padding: 0 16px;
}

.text-center{
    text-align: center;
}
.m-0{
    margin: 0px;
}
.mt-0{
    margin-top: 0px;
}
.mt-30{
    margin-top: 30px;
}
.mb-30{
    margin-bottom: 30px;
}
.mt-80 {
    padding-top: 80px;
}
.mb-80{
    margin-bottom: 80px;
}
.pt-32 {
    padding-top: 32px;
}
.pb-32 {
    padding-bottom: 32px;
}
.pt-80 {
    padding-top: 80px;
}
.pt-96 {
    padding-top: 96px;
}
.pb-96 {
    padding-bottom: 96px;
}
.pt-192 {
    padding-top: 192px;
}
.pb-80 {
    padding-bottom: 80px;
}
.pb-192 {
    padding-bottom: 192px;
}
.pt-300 {
    padding-top: 300px;
}
.pb-300 {
    padding-bottom: 300px;
}
.mt-100 {
    margin-top: 200px;
}
.mb-100 {
    margin-bottom: 200px;
}
.mt-200 {
    margin-top: 200px;
}
.mb-200 {
    margin-bottom: 200px;
}
.mt-300 {
    margin-top: 200px;
}
.mb-300 {
    margin-bottom: 200px;
}

.w-100 {
    width: 100% !important;
}

.light-background {
    background-color: var(--light-background);
}

/* cta button start */
.cta-btn {
    height: 48px;    
    text-decoration: none;
    background-color: var(--color-secondary);
    color: var(--color-font);
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    font-weight: var(--font-weight-500);
    font-size: var(--font-size-16);
    line-height: 1.15;
    padding: 0 32px;
    gap: 8px;
    border-radius: 4px;
    overflow: hidden;
    transition: 300ms background-color, 300ms color;
}
.cta-btn svg path {
    fill: var(--color-font);
}
.cta-btn:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
}
.cta-btn:hover svg path {
    fill: var(--color-white);
}
.cta-btn.green {
    background-color: var(--color-primary);
    color: var(--color-white);
}
.cta-btn.green svg path {
    fill: var(--color-white);
}
.cta-btn.green:hover {
    background-color: var(--color-secondary);
    color: var(--color-font);
}
.cta-btn.green:hover svg path {
    fill: var(--color-font);
}
.cta-btn.light {
    background-color: var(--color-light-background);
}
.cta-btn.light:hover {
    background-color: var(--color-primary);
    color: var(--color-white);
}
.cta-btn.light:hover svg path {
    fill: var(--color-white);
}
.cta-btn.transparent {
    border: 1px solid var(--color-white);
    background-color: transparent;
    color: var(--color-white);
}
.cta-btn.transparent svg path {
    fill: var(--color-white);
}
.cta-btn.transparent:hover {
    background-color: var(--color-secondary);
    color: var(--color-font);
}
.cta-btn.transparent:hover svg path {
    fill: var(--color-font);
}
.align-items-end {
    align-items: flex-end;
}
.no-backgorund {
    background-color: transparent;
}

/* Header CSS starts */

header {
    position: fixed;
    width: 100%;
    top: 0;
    left: 0;
    right: 0;
    z-index: 5;
}
header .container {
    max-width: 1440px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    backdrop-filter: blur(4px);
    padding-top: 14px;
    padding-bottom: 14px;
    background-color: transparent;
    transition: 300ms background-color, 300ms border-radius;
    border-radius: 0;
}
header.scrolled .container {
    background-color: rgba(1, 67, 83, 0.4);
    border-radius: 0 0 8px 8px;
}
.header-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    position: relative;
    z-index: 2;
}
header .logo a {
    display: table;
}
header .logo a img,
header .logo a svg {
    width: 116px;
    height: 24px;
    object-fit: contain;
    transition: 300ms all;
}
.menu-primary-block {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.menu-primary-block nav ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    list-style: none;
    gap: 8px;
}
.menu-primary-block nav ul li {
    padding: 2px 12px;
    margin-bottom: 0;
    position: relative;
    background-color: transparent;
    transition: 300ms background-color;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    border-radius: 4px;
}
.menu-primary-block > nav > ul > li:last-child {
    padding-right: 0;
    border-right: none;
}
.menu-primary-block nav ul li a {
    color: var(--color-white);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-400);
    line-height: 1.25;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    padding: 8px 0;
    background-color: transparent;
    transition: 300ms color;
}
.menu-primary-block nav ul li svg path {
    fill: var(--color-white);
}
.menu-primary-block nav ul li:hover {
    background-color: var(--color-primary);
}
.menu-primary-block > nav > ul > li:last-child > a {
    background-color: var(--color-primary);
    padding: 8px 13px;
    border-radius: 4px;
    gap: 8px;
}
.menu-primary-block nav ul li:last-child a:hover {
    background-color: var(--color-secondary);
    color: var(--color-font);
}
.menu-primary-block nav ul li:last-child:hover svg path {
    fill: var(--color-font);
}
.menu-primary-block nav ul li:not(:last-child).current-menu-item {
    background-color: var(--color-primary);
}
.menu-primary-block nav ul li:not(:last-child).current-menu-item > a {
    color: var(--color-white);
}
.menu-primary-block nav ul li:not(:last-child).current-menu-item svg path {
    fill: var(--color-white);
}
.header-menu-btn {
    display: none;
}
.menu-primary-block nav .sub-menu-holder {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    top: 98%;
    width: 328px;
    padding-top: 8px;
    visibility: hidden;
    opacity: 0;
    transition: 300ms padding-top;
    text-align: left;
}
.menu-primary-block nav .sub-menu-wrap {
    padding: 16px;
    background-color: var(--color-white);
    border-radius: 8px;
    position: relative;
    box-shadow: 0 4px 8px #1c1c1c;
}
.menu-primary-block nav .sub-menu-wrap:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 100%;
    width: 0; 
    height: 0;
    margin: 0 auto;
    border-style: solid;
    border-width: 0px 10px 12px 10px;
    border-color: transparent transparent var(--color-white) transparent;
    transform: rotate(0deg);
    transition: 300ms bottom;
}
.menu-primary-block nav ul.sub-menu li {
    padding: 0;
    border-right: none;
    width: 100%;
    display: block;
    overflow: hidden;
}
.menu-primary-block nav ul.sub-menu li a {
    color: var(--color-font);
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-400);
    text-transform: capitalize;
    padding: 0 12px;
    text-align: left;
    line-height: 40px;
    position: relative;
    background-color: rgba(243, 243, 243, 0);
    width: 100%;
    display: block;
    border-radius: 4px;
}
.menu-primary-block nav ul li h3 {
    text-align: center;
    margin-bottom: 6px;
}
.menu-primary-block nav ul li h3 a {
    color: var(--color-font);
    font-size: var(--font-size-24);
    font-weight: var(--font-weight-500);
    display: block;
    padding: 12px 10px;
    background-color: transparent;
    border-radius: 4px;
    transition: 300ms background-color;
    text-align: left;
    line-height: 1.2;
}
.menu-primary-block nav ul li:hover .sub-menu-holder {
    padding-top: 16px;
    opacity: 1;
    visibility: visible;
}
.menu-primary-block nav ul li:hover ul.sub-menu:before {
    bottom: calc(100% - 20px);
}
.menu-primary-block nav ul li h3:hover a {
    background-color: var(--color-light-background);
}
.menu-primary-block nav ul.sub-menu li:hover a {
    background-color: rgba(243, 243, 243, 0.8);
}

/* Hamburger Menu Design Starts*/

.nav-icon {
    width: 38px;
    height: 26px;
    position: relative;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.5s ease-in-out;
    -moz-transition: 0.5s ease-in-out;
    -o-transition: 0.5s ease-in-out;
    transition: 0.5s ease-in-out;
    cursor: pointer;
}
.nav-icon span {
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    margin: 0 auto;
    text-align: center;
    height: 4px;
    width: 100%;
    background: var(--color-white);
    border-radius: 9px;
    opacity: 1;
    -webkit-transform: rotate(0deg);
    -moz-transform: rotate(0deg);
    -o-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    -moz-transition: 0.25s ease-in-out;
    -o-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}
.nav-icon span:nth-child(1) {
    top: 1px;
}
.nav-icon span:nth-child(2) {
    top: 10px;
}
.nav-icon span:nth-child(3) {
    top: 20px;
}
.hamburger {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 9px;
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    text-decoration: none;
    padding: 8px 16px;
    position: relative;
    text-transform: uppercase;
}
.hamburger:hover .nav-icon span:nth-child(2) {
    width: 12px;
}
.hamburger.open .nav-icon span:nth-child(1) {
    top: 7px;
    -webkit-transform: rotate(135deg);
    -moz-transform: rotate(135deg);
    -o-transform: rotate(135deg);
    transform: rotate(135deg);
}
.hamburger.open .nav-icon span:nth-child(2) {
    opacity: 0;
    width: 0;
}
.hamburger.open .nav-icon span:nth-child(3) {
    top: 7px;
    -webkit-transform: rotate(-135deg);
    -moz-transform: rotate(-135deg);
    -o-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
.hamburger.open:hover .nav-icon {
    transform: scale(0.7);
}

/* Header CSS ends */

/* hero banner start */
.hero-banner {
    height: 80vh;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    position: relative;
    color: var(--color-white);
    overflow: hidden;
    border-radius: 0 0 16px 16px;
}
.hero-banner .banner-video-bg video, .hero-banner .banner-video-bg img {
    width: 100%;
    height: 90vh;
    min-height: 100%;
    object-fit: cover;
    object-position: center;
}
body.home .hero-banner {
    height: 100vh;
}
body.home .hero-banner .banner-video-bg video, body.home .hero-banner .banner-video-bg img {
    height: 100vh;
}
.hero-banner .banner-bg {
    width: 100%;
    height: 100%;
    overflow: hidden;
    position: relative;
}
.hero-banner .banner-bg:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.85) 1.44%, rgba(0, 0, 0, 0) 27.47%), linear-gradient(0deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3));
}
.hero-banner .banner-bg img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.hero-banner .banner-video-bg {
    width: 100%;
    height: 100vh;
    overflow: hidden;
    position: relative;
}
.hero-banner .banner-video-bg:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.85) 1.44%, rgba(0, 0, 0, 0) 27.47%), linear-gradient(0deg, rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3));
}
.hero-banner .container {
    padding: 0 48px;
}
.banner-content {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    padding: 60px 0;
}
.banner-text {
    max-width: 700px;
    width: 100%;
    margin-bottom: 48px;
}
.hero-banner h1 {
    color: var(--color-white);
}
.hero-banner p {
    color: var(--grey-background1);
    font-size: var(--font-size-16);
    padding-right: 24px;
}
.hero-banner .small-heading {
    color: var(--color-white);
    margin-bottom: 64px;
}
.hero-banner .small-heading:before {
    background-color: var(--color-white);
}
.btn-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 24px;
    margin-top: 60px;
}

.hero-banner .btn-wrap {
    margin-bottom: 32px;
    margin-top: 0;
}
.banner-contact-details {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
    padding: 17px 8px;
    border-top: 1px solid rgba(221, 225, 232, 0.3)
}
.banner-contact-details address {
    font-style: normal;
}
.tel-mail-block {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 20px;
}
.tel-mail-block p {
    margin-bottom: 0;
    color: var(--color-white);
}
.tel-mail-block p a {
    display: inline-block;
    color: var(--color-white);
    transition: 300ms color;
}
.tel-mail-block p a:hover {
    color: var(--color-secondary);
}
.video-wrapper {
    position: absolute;
    top: 0;
    left: 0;
    width: 100vw;
    height: 100vh;
    overflow: hidden;
    z-index: -1;
}
.video-wrapper iframe, .video-wrapper video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100vw;
    height: 56.25vw;
    min-height: 100vh;
    min-width: 177.77vh;
    transform: translate(-50%, -50%);
    border: 0;
}
.hero-banner .banner-bg video {
    width: 100%;
    min-height: 100%;
    object-fit: cover;
}
.hero-banner ul.tag-list {
    margin-top: 0;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    padding-left: 0;
}
.hero-banner ul.tag-list li a {
    color: var(--color-white);
}

/* hero banner end */

/* Why Choose Us */

/*.why-choose-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    align-items: flex-end;
    margin-bottom: 96px;
}
.why-choose-heading {
    width: calc(50% - 20px);
}
.why-choose-text {
    width: calc(50% - 20px);
    padding: 0 48px;
    margin-top: 40px;
}*/
.why-choose-section .default-content-text {
    padding: 0 48px;
}
.why-choose-content-holder .container {
    max-width: 1920px;
    width: 100%;
    padding: 0;
}
.why-choose-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.why-choose-content-block {
    width: calc(50% - 8px);
    position: relative;
    overflow: hidden;
}
.why-choose-content-block figure:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    bottom: 0;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.9) 16.32%, rgba(0, 0, 0, 0) 48.08%);
}
.why-choose-content-block figure {
    width: 100%;
    position: relative;
}
.why-choose-content-block figure img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
.why-choose-content-block .content {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    top: 0;
    height: 100%;
    width: 100%;
    color: var(--color-white);
    padding: 48px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
}
.why-choose-content-block .content h3 {
    font-size: var(--font-size-40);
    font-weight: var(--font-weight-500);
    color: var(--color-white);
}
.why-choose-content-block .content p {
    font-size: var(--font-size-18);
    display: grid;
    grid-template-rows: 0fr;
    visibility: hidden;
    opacity: 0;
    transition:
        grid-template-rows 0.35s ease,
        opacity 0.25s ease,
        visibility 0.35s;
    display: none;
}
.why-choose-content-block:hover .content p {
    grid-template-rows: 1fr;
    visibility: visible;
    opacity: 1;
}
.why-choose-content-block .content ul {
    padding-left: 0;
    overflow-x: auto;
    overflow-y: hidden;
    scroll-behavior: smooth;
    overscroll-behavior: contain;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    flex-wrap: nowrap;
}
/*.why-choose-content-block .content ul::-webkit-scrollbar {
    display: none;
}*/
.why-choose-content-block .content ul li {
    flex: 0 0 auto;
    margin-bottom: 0;
}
.why-choose-content-block .content ul li a {
    color: var(--color-white);
}
.why-choose-content-block .content .small-heading {
    color: var(--color-white);
    font-size: var(--font-size-16);
}
.why-choose-content-block .content .small-heading:before {
    background-color: var(--color-white);
}
.why-choose-content-block .bottom-part {
    width: 100%;
}
.tag-list-wrap {
    overflow: hidden;
    width: 100%;
}
ul.tag-list {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    list-style: none;
    cursor: grab;
    user-select: none;
}
ul.tag-list.is-dragging {
    cursor: grabbing;
}
ul.tag-list li {
    margin-bottom: 0;
}
ul.tag-list li a {
    font-size: var(--font-size-12);
    font-weight: var(--font-weight-500);
    padding: 3px 9px;
    border: 1px solid rgba(255, 255, 255, 0.08);
    border-radius: 40px;
    display: block;
    transition: 300ms color, 300ms background-color;
}
ul.tag-list li a:hover {
    background-color: var(--color-secondary);
    color: var(--color-font);
}
.why-choose-content-block .content ul.tag-list {
    margin-top: 32px;
    padding-top: 16px;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
}
.outdoor-lighting-section {
    background-color: var(--grey-background1);
}
.outdoor-lighting-section .container {
    max-width: 1118px;
}
.outdoor-lighting-section .default-content-text p {
    max-width: 420px;
}
/*.outdoor-lighting-section .default-content-heading {
    width: 100%;
}*/
/*.outdoor-lighting-text p {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}
.outdoor-lighting-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.outdoor-lighting-heading {
    width: calc(50% - 10px);
}
.outdoor-lighting-text {
    width: calc(50% - 10px);
    margin-top: 40px;
}*/
.outdoor-lighting-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.outdoor-lighting-content-block {
    width: calc(33.33% - 12px);
    background-color: var(--grey-background2);
    padding: 32px 16px;
    border-radius: 8px;
    min-height: 452px;
    position: relative;
    transition: 300ms background-color;
}
.outdoor-lighting-content-block:hover {
    background-color: var(--color-primary);
}
.outdoor-lighting-content-block:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/backgoround-texture.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.04;
    transition: 300ms opacity;
    z-index: 0;
}
.outdoor-lighting-content-block:hover:before {
    opacity: 1;
}
.outdoor-lighting-content-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    max-width: 260px;
    width: 100%;
    position: relative;
    z-index: 1;
}
/*.outdoor-lighting-content-box .content {
    margin-bottom: 72px;
}*/
.outdoor-lighting-content-box .order {
    font-size: var(--font-size-20);
    font-weight: var(--font-weight-500);
    color: var(--color-grey);
    margin-bottom: 24px;
    display: block;
}
.outdoor-lighting-content-block h3 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-500);
    margin-bottom: 16px;
}
.outdoor-lighting-content-block p {
    font-size: var(--font-size-16);
}
.outdoor-lighting-content-block:hover svg path {
    fill: var(--color-icon);
    transition: 300ms fill;
}
.outdoor-lighting-content-block:hover h3 {
    color: var(--color-secondary);
}
.outdoor-lighting-content-block:hover p {
    color: var(--color-light);
}
.outdoor-lighting-content-block:hover svg path {
    fill: var(--color-dark);
}
.our-worlds-text p {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}
.our-worlds-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.our-worlds-heading {
    width: calc(50% - 10px);
}
.our-worlds-content-wrap {
    position: relative;
    width: 100%;
    isolation: isolate;
}
.our-worlds-content-block {
    position: sticky;
    top: 0;
    width: 100%;
    height: 100vh;
    overflow: hidden;
}
/* Ensure every following block appears above the previous one */
.our-worlds-content-block:nth-child(1) {
    z-index: 1;
}
.our-worlds-content-block:nth-child(2) {
    z-index: 2;
}
.our-worlds-content-block:nth-child(3) {
    z-index: 3;
}
.our-worlds-content-block:nth-child(4) {
    z-index: 4;
}
.our-worlds-content-block figure {
    width: 100%;
    height: 100%;
}
.our-worlds-content-block figure img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.our-worlds-content-block .content {
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    width: 100%;
    padding: 96px 0;
}
.our-worlds-content-block .content h3 {
    color: var(--color-white);
}
.our-worlds-content-block .content h3 i {
    font-style: normal;
    color: rgba(255, 255, 255, 0.5);
}
.our-worlds-content-block .content ul.tag-list {
    padding-bottom: 16px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.16);
    padding-left: 0;
}
.our-worlds-content-block .content ul.tag-list li a {
    color: var(--color-white);
}
.our-worlds-content-block .content ul.tag-list li a:hover {
    color: var(--color-font);
}
.lighting-solution-section {
    background-color: var(--color-primary);
}
.lighting-solution-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
    justify-content: space-between;
}
.lighting-solution-left {
    width: calc(50% - 20px);
    max-width: 550px;
    color: var(--color-white);
}
.lighting-solution-left .logo {
    margin-bottom: 16px;
}
.lighting-solution-right {
    width: calc(50% - 20px);
    max-width: 550px;
    background-color: var(--color-secondary);
    color: var(--color-primary);
    padding: 32px;
    border-radius: 8px;
}
.lighting-solution-right h3 {
    margin-bottom: 64px;
}
.lighting-solution-right .cta-btn.green:hover {
    background-color: var(--color-light-background);
    color: var(--color-primary);
}

.areas-of-application-section {
    background-color: var(--grey-background1);
}
.areas-of-application-section .container {
    max-width: 1118px;
}
.areas-of-application-section .default-content-text p {
    max-width: 420px;
}
/*.areas-of-application-text p {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}
.areas-of-application-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.areas-of-application-heading {
    width: calc(50% - 10px);
}
.areas-of-application-text {
    width: calc(50% - 10px);
    margin-top: 40px;
}*/
.areas-of-application-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.areas-of-application-content-block {
    width: calc(33.33% - 12px);
    background-color: var(--grey-background2);
    border-radius: 8px;
    position: relative;
    transition: 300ms background-color;
    overflow: hidden;
}
.areas-of-application-content-block:hover {
    background-color: var(--color-primary);
}
.areas-of-application-content-block:hover .cta-btn.green {
    background-color: var(--color-secondary);
    color: var(--color-primary);
}
.areas-of-application-content-block .figure-head {
    position: relative;
}
.areas-of-application-content-block figure {
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
}
.areas-of-application-content-block figure:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 58%);
    transition: 300ms opacity;
    opacity: 1;
}
.areas-of-application-content-block figure:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 85%);
    transition: 300ms opacity;
    opacity: 0;
}
.areas-of-application-content-block:hover figure:after {
    opacity: 0;
}
.areas-of-application-content-block:hover figure:before {
    opacity: 1;
}

.areas-of-application-content-block figure img {
    width: 100%;
    height: 133%;
    object-fit: cover;
}
.areas-of-application-content-block .details {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
}
.areas-of-application-content-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    position: relative;
    z-index: 1;
}
.areas-of-application-content-box .content {
    padding: 32px 16px;
}
.areas-of-application-content-block h3 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-500);
    margin-bottom: 16px;
    color: var(--color-white);
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
}
.areas-of-application-content-block p {
    font-size: var(--font-size-16);
    color: var(--color-font);
}
.areas-of-application-content-block:hover svg path {
    fill: var(--color-icon);
    transition: 300ms fill;
}
.areas-of-application-content-block:hover h3 {
    color: var(--color-secondary);
}
.areas-of-application-content-block:hover p {
    color: var(--color-light);
}
.areas-of-application-content-block:hover svg path {
    fill: var(--color-dark);
}


.flexible-approach-section {
    background-color: var(--color-primary);
}
.flexible-approach-section .container {
    max-width: 1118px;
}
/*.flexible-approach-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 64px;
}
.flexible-approach-heading {
    width: calc(50% - 10px);
}*/
.flexible-approach-section .default-content-heading {
    width: 648px;
}
.flexible-approach-section h2, .flexible-approach-section p, .flexible-approach-section .small-heading {
    color: var(--color-white);
}
.flexible-approach-section .small-heading:before {
    background-color: var(--color-white);
}
.flexible-approach-content {
    position: relative;
}
.flexible-approach-content figure {
    width: 100%;
    position: relative;
    border-radius: 16px;
    overflow: hidden;
}
.flexible-approach-content figure:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0) 100%);
}
.flexible-approach-content figure img {
    width: 100%;
    height: 56%;
    object-fit: cover;
}
.flexible-approach-content .content {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 40px;
    width: 400px;
    max-width: 100%;
}
.flexible-approach-content .content h3 {
    font-size: var(--font-size-32);
    color: var(--color-white);
}
.flexible-approach-content .content p {
    color: var(--color-white);
    font-size: var(--font-size-16);
}
.flexible-approach-section .cta-btn:hover {
    background-color: var(--color-light-background);
    color: var(--color-font);
}
.flexible-approach-section .cta-btn:hover svg path {
    fill: var(--color-font);
}


.commitments-section {
    background-color: var(--grey-background1);
}
.commitments-section .container {
    max-width: 1118px;
}
.commitments-section .default-content-text p {
    max-width: 420px;
}
/*.commitments-text p {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}
.commitments-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.commitments-heading {
    width: calc(50% - 10px);
}
.commitments-text {
    width: calc(50% - 10px);
    margin-top: 40px;
}*/
.commitments-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.commitments-content-block {
    width: calc(50% - 8px);
    background-color: var(--color-primary);
    border-radius: 8px;
    position: relative;
    transition: 300ms background-color;
    overflow: hidden;
    padding: 16px;
    z-index: 0;
}
.commitments-content-block:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/backgoround-texture2.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    z-index: 1;
}
.commitments-content-block:hover {
    background-color: var(--color-primary);
}
.commitments-content-block .figure-head {
    position: relative;
}
.commitments-content-block figure {
    width: 100%;
    border-radius: 6px;
    overflow: hidden;
    position: relative;
}
.commitments-content-block figure:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0)), linear-gradient(360deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 58%);
}
.commitments-content-block figure img {
    width: 100%;
    height: 133%;
    object-fit: cover;
}
.commitments-content-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    position: relative;
    z-index: 1;
}
.commitments-content-box .content {
    padding: 16px 0;
}
.commitments-content-block h3 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-500);
    margin-bottom: 16px;
    color: var(--color-secondary);
}
.commitments-content-block p {
    font-size: var(--font-size-16);
    color: var(--color-white);
}
.commitments-content-block:hover svg path {
    fill: var(--color-icon);
    transition: 300ms fill;
}
.commitments-content-block:hover h3 {
    color: var(--color-secondary);
}
.commitments-content-block:hover p {
    color: var(--color-light);
}
.commitments-content-block:hover svg path {
    fill: var(--color-dark);
}

/* footer start */

footer {
    background-color: var(--color-dark);
    color: var(--color-white);
    background-image: url(../images/footer-bg.png);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
}
.footer-wrap {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 24px;
}
.footer-wrap > div {
    width: calc(33.33% - 16px);
}
footer h3 {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-500);
    color: var(--color-white);
    letter-spacing: 0;
}
.footer-info {
    position: relative;
    overflow: hidden;
}
.footer-info:before {
    content: '';
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -160px;
    width: 2240px;
    height: 385px;
    background-image: url(../images/logo-background.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
}
.footer-contact a {
    color: var(--color-white);
}
.footer-menu ul {
    list-style: none;
    padding-left: 0;
}
.footer-menu ul li {
    margin-bottom: 12px;
    line-height: 1;
    display: block;
}
.footer-menu ul li a {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-400);
    margin-bottom: 20px;
    color: var(--color-grey2);
}
.footer-menu ul li a:hover {
    color: var(--color-secondary);
}
.footer-contact p, .footer-contact address, .footer-contact a {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-400);
    margin-bottom: 20px;
    color: var(--color-grey2);
    font-style: normal;
    line-height: 2.0;
}
.footer-contact a:hover {
    color: var(--color-secondary);
    text-decoration: underline;
}
.footer-copyright-menu {
    padding: 16px 0;
    border-top: 1px solid rgba(255, 255, 255, 0.08);
}
.footer-copyright-menu ul {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
    margin-top: 0;
    list-style: none;
}
.footer-copyright-menu ul li {
    margin-bottom: 0;
}
.footer-copyright-menu ul li a, .footer-copyright-menu p {
    font-size: var(--font-size-12);
    margin-bottom: 0;
    color: var(--color-white);
    display: block;
}
.footer-copyright-menu-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 96px;
}
.footer-copyright-menu-wrap p {
    color: var(--color-grey2);
}
.footer-copyright-menu-wrap ul li a {
    color: var(--color-grey2);
}

/* footer end */

body.without-banner-image .hero-banner {
    padding-top: 96px;
    min-height: inherit;
}
body.without-banner-image .hero-banner .banner-content {
    position: initial;
}
body.without-banner-image .hero-banner .banner-text {
    max-width: 662px;
}
body.without-banner-image .hero-banner .small-heading, body.without-banner-image .hero-banner h1, body.without-banner-image .hero-banner p {
    color: var(--color-font);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child) a {
    color: var(--color-font);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child) a svg path {
    fill: var(--color-font);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child) a:hover {
    color: var(--color-white);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child) a:hover svg path {
    fill: var(--color-white);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child).current-menu-item a {
    color: var(--color-white);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child).current-menu-item a svg path {
    fill: var(--color-white);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child):hover h3 a {
    color: var(--color-font);
}
body.without-banner-image header.scrolled .container {
    background-color: rgba(255, 255, 255, 0.8);
}
body.without-banner-image .menu-primary-block nav ul li:not(:last-child):hover ul.sub-menu li a {
    color: var(--color-font);
}
body.without-banner-image .menu-primary-block nav .sub-menu-wrap {
    background-color: var(--color-light-background2);
}
body.without-banner-image .menu-primary-block nav .sub-menu-wrap:before {
    border-color: transparent transparent var(--color-light-background2) transparent;
}
body.without-banner-image .hero-banner .small-heading:before {
    background-color: var(--color-font);
}

.category-list-section {
    text-align: center;
}
.category-list-holder {
    position: fixed;
    bottom: 32px;
    left: 24px;
    right: 24px;
    z-index: 2;
    overflow: hidden;
}

ul.category-list {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    gap: 8px;
    width: 100%;
    max-width: max-content;
    margin: 0 auto;
    padding: 16px;
    list-style: none;
    border-radius: 64px;
    backdrop-filter: blur(4px);
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
}
ul.category-list::-webkit-scrollbar {
    display: none;
}
ul.category-list li {
    flex: 0 0 auto;
    margin-bottom: 0;
}
ul.category-list li a {
    background-color: var(--color-black);
    color: var(--color-white);
    padding: 4px 12px;
    border-radius: 48px;
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-500);
    display: block;
}
.hero-banner h1 i {
    font-style: normal;
    color: var(--color-font2);
}
body.single-project .hero-banner .banner-text {
    max-width: 562px;
}
body.single-project ul.tag-list {
    padding-top: 16px;
    border-top: 1px solid rgba(0, 0, 0, 0.16);
    padding-left: 0;
}
body.single-project ul.tag-list li a {
    background-color: var(--grey-background2);
    transition: 300ms background-color;
    color: var(--color-font);
}
body.single-project ul.tag-list li a:hover {
    color: var(--color-font);
    background-color: var(--color-secondary);
}
.projects-need-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.projects-need-heading {
    width: calc(50% - 10px);
}
.projects-need-text {
    width: calc(50% - 10px);
    margin-top: 40px;
}
.projects-need-text p {
    max-width: 420px;
    width: 100%;
    margin: 0 auto;
}
.projects-need-content-holder {
    position: relative;
    border-radius: 16px;
    overflow: hidden;
}
.projects-need-content-holder figure img {
    width: 100%;
    height: calc(100vh + 576px);
    object-fit: cover;
}
.projects-need-content-holder .content {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    padding: 32px;
}
.projects-need-content-holder .content .small-heading, .projects-need-content-holder .content h2 {
    color: var(--color-white);
}
.projects-need-content-holder .small-heading:before {
    background-color: var(--color-white);
}
.projects-need-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.projects-need-content-block {
    width: calc(33.33% - 12px);
    background-color: var(--grey-background2);
    padding: 32px 16px;
    border-radius: 8px;
    position: relative;
    transition: 300ms background-color;
}
.projects-need-content-block:hover {
    background-color: var(--color-primary);
}
.projects-need-content-block:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/backgoround-texture.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.04;
    transition: 300ms opacity;
    z-index: 0;
}
.projects-need-content-block:hover:before {
    opacity: 1;
}
.projects-need-content-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    height: 100%;
    max-width: 260px;
    width: 100%;
    position: relative;
    z-index: 1;
}
.projects-need-content-block:hover h3, .projects-need-content-block:hover p {
    color: var(--color-white);
}
.projects-need-content-block h3 {
    margin-bottom: 72px;
}
.commitments-content-wrap.three-column {
    gap: 18px;
}
.commitments-content-wrap.three-column .commitments-content-block {
    width: calc(33.33% - 12px);
}
.our-worlds-section .default-content-heading-holder .container {
    max-width: 1118px;
}
.our-worlds-content-wrap.two-column {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}
.our-worlds-content-wrap.two-column .our-worlds-content-block {
    width: calc(50% - 8px);
    height: 534px;
}
.our-worlds-content-wrap.two-column .our-worlds-content-block figure {
    height: 534px;
}
.our-worlds-content-wrap.two-column .our-worlds-content-block figure img {
    height: 534px;
}
.default-content-section {
    background-color: var(--grey-background1);
}
.default-content-heading-holder {
    margin-bottom: 96px;
}
.default-content-section .default-content-heading-holder {
    margin-bottom: 0;
    background-image: url(../images/backgoround-texture3.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 48px 32px;
}
.default-content-heading-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 20px;
    margin-bottom: 96px;
}
.default-content-heading-wrap:last-child {
    margin-bottom: 0;
}
.default-content-heading {
    width: calc(50% - 10px);
}
.default-content-text {
    width: calc(50% - 10px);
    margin-top: 40px;
}
.default-content-text p {
    /*max-width: 420px;*/
    width: 100%;
    margin: 0 auto;
}
.popup-section {
    position: fixed;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100vh;
    backdrop-filter: blur(8px);
    z-index: 5;
    padding: 24px;
    display: none;
}
.popup-section.active {
    display: block;
}
.popup-section .default-content-heading-wrap {
    background-image: url(../images/backgoround-texture3.jpg);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    padding: 48px 32px;
    margin-bottom: 0;
}
.popup-holder {
    border-radius: 8px;
    overflow: hidden;
    margin: 0 auto;
    max-width: 664px;
    width: 100%;
    position: relative;
    display: none;
}
.popup-section.active .popup-holder {
    display: block;
}
.popup-wrap {
    overflow: auto;
    height: calc(100vh - 48px);
}
.form-input {
    margin-bottom: 16px;
}
.form-input label {
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-500);
    color: #222427;
    line-height: 1.5;
    margin-bottom: 8px;
    display: block;
}
.form-input span {
    color: #777D8A;
    display: block;
    line-height: 1;
    font-size: 16px;
}
.form-input.checkbox-input > span {
    line-height: 1.5;
}
.form-input span.wpcf7-form-control-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
}
.form-check label input {
    width: auto;
    display: none;
}
.checkbox-input .form-check label.custom-checkbox {
    background-color: var(--color-white);
    border: 1px solid #AAB3C5;
    border-radius: 4px;
    padding: 10px 12px;
}
.checkbox-input .form-check {
    margin-top: 8px;
}
.form-check label {
    display: flex;
    align-items: center;
    justify-content: flex-start;
    margin-bottom: 0;
}
.form-input label em, .form-check label em {
    font-style: normal;
    color: #FD7E14;
}
.form-check {
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 14px;
    margin-bottom: 16px;
}
.form-check input {
    margin-right:8px;
}
.custom-checkbox{
    display: flex;
    align-items: center;
    cursor: pointer;
    font-size: 16px;
    gap: 12px;
}
.custom-checkbox input{
    display: none;
}
.form-check label span.wpcf7-list-item-label{
    position: relative;
    padding-left: 28px;
    font-size: var(--font-size-16);
    font-weight: var(--font-weight-400);
    line-height: 1.5;
    display: block;
    color: #222427;
}
.form-check label span.wpcf7-list-item-label::before {
    content: '';
    width:16px;
    height:16px;
    border-radius:3px;
    display:flex;
    align-items:center;
    justify-content:center;
    position:absolute;
    left: 0;
    top: 3px;
    border: 2px solid #AAB3C5;
}
.form-check label span.wpcf7-list-item-label::after {
    content: "";
    width: 4px;
    height: 11px;
    border-right: 2px solid var(--color-white);
    border-bottom: 2px solid var(--color-white);
    transform: rotate(40deg) translate(-1px, -1px);
    opacity: 0;
    transition: 0.3s;
    left: 7px;
    top: 6px;
    position: absolute;
}
.wpcf7-list-item input:checked + span.wpcf7-list-item-label::before {
    background-color: var(--color-primary);
}
.wpcf7-list-item input:checked + span.wpcf7-list-item-label::after{
    opacity:1;
}
.form-check .wpcf7-list-item {
    margin-left: 0px;
}
.popup-form-holder {
    background-color: var(--grey-background2);
    padding: 32px;
}
.popup-holder .default-content-heading {
    width: auto;
}
.popup-section h2 {
    font-size: var(--font-size-40);
}
.popup-section h2 i {
    font-style: normal;
    color: rgba(0, 32, 40, 0.5);
}
.popup-section p {
    font-size: var(--font-size-16);
}
.popup-section p:last-child {
    margin-bottom: 0;
}
.popup-close-btn {
    position: absolute;
    right: 24px;
    top: 24px;
    font-size: 16px;
    width: 32px;
    height: 32px;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-items: center;
    border-radius: 4px;
    background-color: rgba(0, 0, 0, 0.08);
    z-index: 6;
}
.our-history-content figure {
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
}
.our-history-content figure img {
    width: 100%;
    height: 100vh;
    object-fit: cover;
}
.team-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.team-block {
    width: calc(33.33% - 12px);
    position: relative;
    border-radius: 8px;
    overflow: hidden;
}
.team-block:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 50%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 52.81%);
    z-index: 1;
    /*backdrop-filter: blur(15px);*/
}
.team-block figure {
    width: 100%;
}
.team-block figure img {
    width: 100%;
    aspect-ratio: 100 / 133;
    object-fit: cover;
}
.team-block .content {
    position: absolute;
    left: 8px;
    right: 8px;
    bottom: 8px;
    width: calc(100% - 16px);
    z-index: 2;
}
.team-block .small-heading {
    color: var(--color-white);
    margin-bottom: 24px;
}
.team-block .small-heading:before {
    background-color: var(--color-white);
}
.team-block .person-name {
    background-color: var(--color-white);
    color: var(--color-font);
    font-size: var(--font-size-24);
    padding: 8px 16px;
    border-radius: 8px;
    overflow: hidden;
    line-height: 1.2;
}
.team-block:hover .person-name {
    background-color: var(--color-secondary);
}


.parteners-suppliers-section {
    background-color: var(--grey-background1);
}
.parteners-suppliers-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.parteners-suppliers-content-block {
    width: calc(33.33% - 12px);
    background-color: var(--grey-background2);
    height: 328px;
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    padding: 32px 16px;
    border-radius: 8px;
    position: relative;
    transition: 300ms background-color;
}
.parteners-suppliers-content-block:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background-image: url(../images/backgoround-texture3.png);
    background-position: center;
    background-size: cover;
    background-repeat: no-repeat;
    opacity: 0.04;
    transition: 300ms opacity;
    z-index: 0;
}
.parteners-suppliers-content-block:hover {
    background-color: var(--color-primary);
}
.parteners-suppliers-content-block:hover h3 {
    color: var(--color-secondary);
}
.parteners-suppliers-content-block:hover p {
    color: var(--color-white);
}
.parteners-suppliers-content-block:hover:before {
    opacity: 1;
}
.parteners-suppliers-content-block h3 {
    margin-bottom: 0;
}
.parteners-suppliers-content-block h3, .parteners-suppliers-content-block p {
    width: 100%;
}
.contact-wrap {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 16px;
}
.contact-holder {
    max-width: 1116px;
    width: 100%;
    margin: 0 auto;
}
.contact-details-block {
    width: 437px;
    max-width: 100%;
    background-color: var(--color-primary);
    color: var(--color-white);
    border-radius: 16px;
    padding: 32px 16px 96px;
}
.contact-details-block .logo {
    width: 116px;
    margin-bottom: 32px;
}
.contact-details-block h3 {
    font-size: var(--font-size-32);
    color: var(--color-white);
}
.contact-details-block p {
    font-size: var(--font-size-16);
}
.contact-details-block p a {
    color: var(--color-white);
    display: block;
}
.contact-form-block {
    border-radius: 16px;
    width: calc(100% - 437px - 16px);
    padding: 48px 32px;
    background-color: var(--grey-background2);
}
.contact-details-top {
    margin-bottom: 32px;
    border-bottom: 1px solid rgba(255, 255, 255, 0.08);
    padding: 0 16px 32px;
}
.contact-details-bottom {
    padding: 0 16px;
}
.contact-details-block h4 {
    font-size: var(--font-size-24);
}
.contact-form-block .cta-btn {
    justify-content: space-between;
    width: 100%;
}
.contact-details-block .cta-btn:hover {
    background-color: var(--color-light-background);
    color: var(--color-font);
}
.contact-details-block .cta-btn:hover svg path {
    fill: var(--color-font);
}
.wpcf7-form-control-wrap:has(.wpcf7-select)::after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    width: 8px;
    height: 8px;
    border-right: 2px solid var(--color-dark);
    border-bottom: 2px solid var(--color-dark);
    transform: translateY(-70%) rotate(45deg);
    pointer-events: none;
}

.custom-file-upload {
    display: flex;
    align-items: center;
    gap: 16px;
    width: 100%;
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid #AAB3C5;
    outline: none;
    font-size: var(--font-size-16);
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    line-height: 1.4;
    background-color: var(--color-white);
}

.custom-file-upload .wpcf7-form-control-wrap {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    opacity: 0;
}

.file-button {
    padding: 8px 12px;
    border-radius: 4px;
    border: 1px solid #AAB3C5;
    outline: none;
    font-size: var(--font-size-16);
    font-family: var(--font-family-Inter);
    font-weight: var(--font-weight-500);
    line-height: 1.4;
    background-color: transparent;
    width: 150px;
}

.file-button:focus {
    border: 1px solid #AAB3C5;
}

.file-name {
    color: #555;
    font-size: 14px;
    width: calc(100% - 166px);
    white-space: nowrap;
    overflow: hidden;
    text-overflow: ellipsis;
}

.custom-file-upload .wpcf7-form-control-wrap {
    display: none !important;
}
.custom-file-upload + p span {
    margin-top: 8px;
}
.form-input p {
    margin-bottom: 0;
}
.form-submit {
    margin-top: 32px;
    position: relative;
    margin-bottom: 24px;
}
.form-submit:last-child {
    margin-bottom: 0;
}
.form-submit .wpcf7-spinner {
    position: absolute;
    left: 0;
    bottom: -30px;
}
.hero-banner ul.tag-list {
    padding-left: 0;
    flex-wrap: nowrap;
    white-space: nowrap;
}
.outdoor-lighting-content-slider-holder {
    display: none;
}
.outdoor-lighting-content-slider-holder .swiper-slide {
    width: 266px;
}
.outdoor-lighting-content-slider-holder .swiper-slide .outdoor-lighting-content-block {
    width: 100% !important;
}
.examples-of-solutions-section {
    background-color: var(--grey-background1);
}
.examples-of-solutions-section .container {
    max-width: 1118px;
}
.examples-of-solutions-section .default-content-text p {
    max-width: 420px;
}
.examples-of-solutions-content-wrap {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}
.examples-of-solutions-content-block {
    width: calc(33.33% - 12px);
    background-color: var(--grey-background2);
    border-radius: 8px;
    position: relative;
    transition: 300ms background-color;
    overflow: hidden;
}
.examples-of-solutions-content-block:hover {
    background-color: var(--color-primary);
}
.examples-of-solutions-content-block:hover .cta-btn.green {
    background-color: var(--color-secondary);
    color: var(--color-primary);
}
.examples-of-solutions-content-block .figure-head {
    position: relative;
}
.examples-of-solutions-content-block figure {
    width: 100%;
    border-radius: 8px;
    overflow: hidden;
    position: relative;
}
.examples-of-solutions-content-block figure:after {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 58%);
    transition: 300ms opacity;
    opacity: 1;
}
.examples-of-solutions-content-block figure:before {
    content: '';
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(360deg, rgba(0, 0, 0, 0.7) 0%, rgba(0, 0, 0, 0) 85%);
    transition: 300ms opacity;
    opacity: 0;
}
.examples-of-solutions-content-block:hover figure:after {
    opacity: 0;
}
.examples-of-solutions-content-block:hover figure:before {
    opacity: 1;
}

.examples-of-solutions-content-block figure img {
    width: 100%;
    height: 133%;
    object-fit: cover;
}
.examples-of-solutions-content-block .details {
    position: absolute;
    left: 0;
    right: 0;
    bottom: 0;
    padding: 16px;
}
.examples-of-solutions-content-box {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    position: relative;
    z-index: 1;
}
.examples-of-solutions-content-box .content {
    padding: 32px 16px;
}
.examples-of-solutions-content-block h3 {
    font-size: var(--font-size-32);
    font-weight: var(--font-weight-500);
    margin-bottom: 16px;
    color: var(--color-white);
}
.examples-of-solutions-content-block .hidden-text {
    height: 0;
    opacity: 1;
    overflow: hidden;
    transition: height 0.4s ease, opacity 0.3s ease;
}
.examples-of-solutions-content-block p {
    font-size: var(--font-size-16);
    color: var(--color-font);
}
.examples-of-solutions-content-block:hover svg path {
    fill: var(--color-icon);
    transition: 300ms fill;
}
.examples-of-solutions-content-block:hover h3 {
    color: var(--color-secondary);
}
.examples-of-solutions-content-block:hover p {
    color: var(--color-light);
}
.examples-of-solutions-content-block:hover svg path {
    fill: var(--color-dark);
}
