*,
::before,
::after {
  box-sizing:border-box;
  border-width:0;
  border-style:solid;
  border-color:currentColor;
}

::before,
::after {
  --tw-content:"";
}

html,
:host {
  line-height:1.5;
  -webkit-text-size-adjust:100%;
  -moz-tab-size:4;
  -o-tab-size:4;
  tab-size:4;
  font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";
  font-feature-settings:normal;
  font-variation-settings:normal;
  -webkit-tap-highlight-color:#fff0;
}

body {
  margin:0;
  line-height:inherit;
}

hr {
  height:0;
  color:inherit;
  border-top-width:1px;
}

abbr:where([title]) {
  -webkit-text-decoration:underline dotted;
  text-decoration:underline dotted;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size:inherit;
  font-weight:inherit;
}

a {
  color:inherit;
  text-decoration:inherit;
}

b,
strong {
  font-weight:bolder;
}

code,
kbd,
samp,
pre {
  font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;
  font-feature-settings:normal;
  font-variation-settings:normal;
  font-size:1em;
}

small {
  font-size:80%;
}

sub,
sup {
  font-size:75%;
  line-height:0;
  position:relative;
  vertical-align:baseline;
}

sub {
  bottom:-.25em;
}

sup {
  top:-.5em;
}

table {
  text-indent:0;
  border-color:inherit;
  border-collapse:collapse;
}

button,
input,
optgroup,
select,
textarea {
  font-family:inherit;
  font-feature-settings:inherit;
  font-variation-settings:inherit;
  font-size:100%;
  font-weight:inherit;
  line-height:inherit;
  color:inherit;
  margin:0;
  padding:0;
}

button,
select {
  text-transform:none;
}

button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance:button;
  background-image:none;
  background-color:#fff0;
}

:-moz-focusring {
  outline:auto;
}

:-moz-ui-invalid {
  box-shadow:none;
}

progress {
  vertical-align:baseline;
}

::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height:auto;
}

[type="search"] {
  -webkit-appearance:textfield;
  outline-offset:-2px;
}

::-webkit-search-decoration {
  -webkit-appearance:none;
}

::-webkit-file-upload-button {
  -webkit-appearance:button;
  font:inherit;
}

summary {
  display:list-item;
}

blockquote,
dl,
dd,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
figure,
p,
pre {
  margin:0;
}

fieldset {
  margin:0;
  padding:0;
}

legend {
  padding:0;
}

ol,
ul,
menu {
  list-style:none;
  margin:0;
  padding:0;
}

dialog {
  padding:0;
}

textarea {
  resize:vertical;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
  opacity:1;
  color:#9ca3af;
}

input::placeholder,
textarea::placeholder {
  opacity:1;
  color:#9ca3af;
}

button,
[role="button"] {
  cursor:pointer;
}

:disabled {
  cursor:default;
}

img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display:block;
  vertical-align:middle;
}

img,
video {
  max-width:100%;
  height:auto;
}

[hidden] {
  display:none;
}

:root {
  --header-height:97px;
  --primaryColor:#f97316;
  --secondaryColor:#9333ea;
  --greyColor:#e8e8e8;
  --z-cursor:160;
  --z-loading:159;
  --z-modal:150;
  --z-nav:111;
  --z-header:110;
  --z-nav-detail:109;
  --z-button:108;
  --z-body:5;
  --z-hero:4;
}

@media (min-width:1024px) {
  :root {
    --header-height:97px;
  }
}

* {
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  text-rendering:optimizeLegibility;
  box-sizing:border-box;
}

html {
  scroll-behavior:smooth;
}

body {
  padding-bottom:var(--height-mobile-cta);
  font-size:1rem;
  line-height:1.5rem;
}

@media (min-width:768px) {
  body {
    padding-bottom:0;
  }
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight:600;
}

h1,
.h1 {
  font-size:32px;
  line-height:43px;
}

@media (min-width:768px) {
  h1,
  .h1 {
    font-size:64px;
    line-height:84px;
  }
}

h2,
.h2 {
  font-size:28px;
  line-height:36px;
}

@media (min-width:768px) {
  h2,
  .h2 {
    font-size:40px;
    line-height:52px;
  }
}

h3,
.h3 {
  font-size:22px;
  line-height:2rem;
}

@media (min-width:768px) {
  h3,
  .h3 {
    font-size:28px;
    line-height:38px;
  }
}

h4,
.h4 {
  font-size:22px;
  line-height:32px;
}

h5,
.h5 {
  font-size:18px;
  line-height:26px;
}

h6,
.h6 {
  font-size:16px;
  line-height:22px;
}

a:hover {
  text-decoration:none;
}

*,
::before,
::after {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x:;
  --tw-pan-y:;
  --tw-pinch-zoom:;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position:;
  --tw-gradient-via-position:;
  --tw-gradient-to-position:;
  --tw-ordinal:;
  --tw-slashed-zero:;
  --tw-numeric-figure:;
  --tw-numeric-spacing:;
  --tw-numeric-fraction:;
  --tw-ring-inset:;
  --tw-ring-offset-width:0;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur:;
  --tw-brightness:;
  --tw-contrast:;
  --tw-grayscale:;
  --tw-hue-rotate:;
  --tw-invert:;
  --tw-saturate:;
  --tw-sepia:;
  --tw-drop-shadow:;
  --tw-backdrop-blur:;
  --tw-backdrop-brightness:;
  --tw-backdrop-contrast:;
  --tw-backdrop-grayscale:;
  --tw-backdrop-hue-rotate:;
  --tw-backdrop-invert:;
  --tw-backdrop-opacity:;
  --tw-backdrop-saturate:;
  --tw-backdrop-sepia:;
}

::backdrop {
  --tw-border-spacing-x:0;
  --tw-border-spacing-y:0;
  --tw-translate-x:0;
  --tw-translate-y:0;
  --tw-rotate:0;
  --tw-skew-x:0;
  --tw-skew-y:0;
  --tw-scale-x:1;
  --tw-scale-y:1;
  --tw-pan-x:;
  --tw-pan-y:;
  --tw-pinch-zoom:;
  --tw-scroll-snap-strictness:proximity;
  --tw-gradient-from-position:;
  --tw-gradient-via-position:;
  --tw-gradient-to-position:;
  --tw-ordinal:;
  --tw-slashed-zero:;
  --tw-numeric-figure:;
  --tw-numeric-spacing:;
  --tw-numeric-fraction:;
  --tw-ring-inset:;
  --tw-ring-offset-width:0;
  --tw-ring-offset-color:#fff;
  --tw-ring-color:rgb(59 130 246 / 0.5);
  --tw-ring-offset-shadow:0 0 #0000;
  --tw-ring-shadow:0 0 #0000;
  --tw-shadow:0 0 #0000;
  --tw-shadow-colored:0 0 #0000;
  --tw-blur:;
  --tw-brightness:;
  --tw-contrast:;
  --tw-grayscale:;
  --tw-hue-rotate:;
  --tw-invert:;
  --tw-saturate:;
  --tw-sepia:;
  --tw-drop-shadow:;
  --tw-backdrop-blur:;
  --tw-backdrop-brightness:;
  --tw-backdrop-contrast:;
  --tw-backdrop-grayscale:;
  --tw-backdrop-hue-rotate:;
  --tw-backdrop-invert:;
  --tw-backdrop-opacity:;
  --tw-backdrop-saturate:;
  --tw-backdrop-sepia:;
}

.container {
  width:100%;
  margin-right:auto;
  margin-left:auto;
}

@media (min-width:640px) {
  .container {
    max-width:640px;
  }
}

@media (min-width:768px) {
  .container {
    max-width:768px;
  }
}

@media (min-width:1024px) {
  .container {
    max-width:1024px;
  }
}

@media (min-width:1280px) {
  .container {
    max-width:1320px!important;
  }
}

.loading {
  position:fixed;
  inset:0;
  z-index:99999;
  display:flex;
  align-items:center;
  justify-content:center;
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
}

.container {
  padding-left:1rem;
  padding-right:1rem;
}

.container::before,
.container::after {
  display:none;
}

.hero-building {
  width:280px;
  height:280px;
}

@media (min-width:768px) {
  .hero-building {
    width:350px;
    height:350px;
  }
}

@media (min-width:1024px) {
  .hero-building {
    width:450px;
    height:450px;
  }
}

.hero-building-image {
  height:100%;
  width:100%;
}

.hero-building img {
  height:100%;
  width:100%;
  -o-object-fit:contain;
  object-fit:contain;
}

.main-button {
  position:relative;
  display:inline-flex;
  cursor:pointer;
  align-items:center;
  justify-content:center;
  border-radius:.25rem;
  border-width:1px;
  border-color:var(--brand-primary, var(--primaryColor));
  background-color:var(--brand-primary, var(--primaryColor));
  padding-left:.75rem;
  padding-right:.75rem;
  padding-top:.25rem;
  padding-bottom:.25rem;
  font-size:.875rem;
  line-height:1.25rem;
  font-weight:700;
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
  transition-property:color,background-color,border-color,fill,stroke,-webkit-text-decoration-color;
  transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;
  transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,-webkit-text-decoration-color;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.main-button:hover {
  border-color:var(--brand-primary, var(--primaryColor));
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
  color:var(--brand-primary, var(--primaryColor));
}

@media (min-width:768px) {
  .main-button {
    padding-left:1.5rem;
    padding-right:1.5rem;
    padding-top:.5rem;
    padding-bottom:.5rem;
  }
}

.main-button.--trans,
.main-button.--ghost {
  border-width:1px;
  border-color:var(--brand-primary, var(--primaryColor));
  background-color:#fff0;
  color:var(--brand-primary, var(--primaryColor));
}

.main-button.--trans:hover,
.main-button.--ghost:hover {
  background-color:var(--brand-primary, var(--primaryColor));
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.main-button.--gradient {
  overflow:hidden;
  border-style:none;
  background-image:linear-gradient(to right,var(--tw-gradient-stops));
  --tw-gradient-from:var(--brand-primary, var(--primaryColor)) var(--tw-gradient-from-position);
  --tw-gradient-to:rgb(255 255 255 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to:var(--brand-primary-strong, var(--secondaryColor)) var(--tw-gradient-to-position);
}

.main-button.--gradient::before {
  position:absolute;
  inset:0;
  background-color:var(--brand-primary, var(--primaryColor));
  opacity:0;
  transition-property:opacity;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  content:var(--tw-content);
  transition-duration:500ms;
}

.main-button.--gradient:hover {
  border-width:1px;
  --tw-gradient-from:transparent var(--tw-gradient-from-position);
  --tw-gradient-to:rgb(0 0 0 / 0) var(--tw-gradient-to-position);
  --tw-gradient-stops:var(--tw-gradient-from), var(--tw-gradient-to);
  --tw-gradient-to:transparent var(--tw-gradient-to-position);
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.main-button.--gradient:hover::before {
  content:var(--tw-content);
  opacity:1;
}

.main-button.--gradient span {
  position:relative;
  z-index:10;
  display:inline-block;
}

.main-button.--sm {
  padding-left:.5rem;
  padding-right:.5rem;
}

.filter-bar,
.search-bar {
  margin-bottom:2rem;
}

.tabs-content {
  position:relative;
}

.tabs-search-content {
  min-height:111px;
  .tab-panel{display:block!important;
  &:first-of-type{opacity:1;
  pointer-events:auto}};
}

@media (min-width:768px) {
  .tabs-search-content {
    min-height:77px;
  }
}

.tab-panel {
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
}

.tab-panel.active-tab {
  opacity:1;
  pointer-events:auto;
}

.tabs-filter-wrapper {
  position:absolute;
}

.tabs .tabs-nav li.active-nav {
  background-color:var(--brand-primary, var(--primaryColor));
  color:#fff;
}

.tabs-search-content .search-field {
  width:100%;
}

.search-field {
  position:relative;
  display:flex;
  width:100%;
  align-items:center;
  justify-content:flex-end;
}

.search-field-input {
  height:100%;
  width:100%;
  cursor:pointer;
  border-radius:.375rem;
  border:1px solid #e5e7eb;
  background-color:#f9f9f9;
  padding-top:1rem;
  padding-bottom:1rem;
  padding-left:.75rem;
  outline:none;
  transition:all 0.5s;
  padding-right:2.5rem;
}

.min-w-none {
  .search-field-input{min-width:auto!important};
}

.filter {
  .custom-input-text{align-items:center;
  padding-inline:0!important}.custom-input-text input[type="text"]{background-color:#f9f9f9!important;
  border:1px solid #e5e7eb};
}

.search-field-input::placeholder {
  transition:color 0.5s;
}

@media (min-width:768px) {
  .search-field-input {
    min-width:300px;
  }
}

.search-field-button {
  position:absolute;
  right:.5rem;
  display:flex;
  align-items:center;
  justify-content:center;
}

.search-field-button button {
  border-radius:.375rem;
  background-color:#fff;
  padding:.75rem;
  color:currentColor;
  border:1px solid #e5e7eb;
  transition:color 0.5s,border-color 0.5s,background-color 0.5s;
}

.search-field-button button:hover {
  border-color:var(--brand-primary, var(--primaryColor,#1d4ed8));
  color:var(--brand-primary, var(--primaryColor,#1d4ed8));
  background-color:#fff;
}

.filter-button:hover {
  background-color:var(--brand-primary, var(--primaryColor,#1d4ed8));
  color:#fff;
}

@media (max-width:767.98px) {
  .filter-button {
    width:25%;
  }
}

.search-field {
  position:relative;
  display:flex;
  width:100%;
  align-items:center;
  justify-content:flex-end;
}

.search-field-input {
  height:100%;
  width:100%;
  cursor:pointer;
  border-radius:.375rem;
  border:1px solid #e5e7eb;
  padding-top:1rem;
  padding-bottom:1rem;
  padding-left:.75rem;
  outline:none;
  transition:all 0.5s;
  padding-right:2.5rem;
}

.search-field-input::placeholder {
  transition:color 0.5s;
}

@media (min-width:768px) {
  .search-field-input {
    min-width:300px;
  }
}

.search-field-button {
  position:absolute;
  right:.5rem;
  display:flex;
  align-items:center;
  justify-content:center;
}

.filter-button {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:.375rem;
  background-color:#fff;
  padding-left:1.25rem;
  padding-right:1.25rem;
  padding-top:.5rem;
  padding-bottom:.5rem;
  font-size:.875rem;
  transition:color 0.5s,background-color 0.5s;
  cursor:pointer;
}

.filter-button:hover {
  background-color:var(--brand-primary, var(--primaryColor,#1d4ed8));
  color:#fff;
}

@media (max-width:767.98px) {
  .filter-button {
    width:25%;
  }
}

.filter-button-count {
  position:absolute;
  right:-25%;
  top:0;
  display:flex;
  width:1.5rem;
  height:1.5rem;
  transform:translate(-50%,-50%);
  align-items:center;
  justify-content:center;
  border-radius:9999px;
  background-color:var(--brand-primary, var(--primaryColor,#1d4ed8));
  padding:.25rem;
  font-size:.75rem;
  font-weight:600;
  color:#fff;
}

.tabs-search .tabs-nav {
  border-bottom:1px solid var(--secondary,#e5e7eb);
  display:flex;
  overflow-x:auto;
}

@media (max-width:767px) {
  .tabs-search .tabs-nav {
    overflow-x:auto;
  }
}

.tabs-search .tabs-nav>li {
  cursor:pointer;
  padding:1rem;
}

.tabs-search .tab-panel {
  padding-top:.5rem;
  display:flex!important;
  flex-wrap:nowrap;
}

@media (min-width:768px) {
  .tabs-search .tab-panel {
    padding-top:1.5rem;
    gap:.5rem;
    flex-wrap:nowrap;
  }
}

@media (max-width:767px) {
  .tabs-search .tab-panel {
    flex-wrap:wrap;
    row-gap:.5rem;
  }
}

.dropdown .dropdown__body {
  visibility:hidden;
  opacity:0;
}

.lang-button.active .lang-button__body {
  opacity:0;
  pointer-events:none;
}

.page-hero {
  position:relative;
}

.page-hero::before {
  content:"";
  position:absolute;
  inset:0;
  background-color:rgb(0 0 0 / .6);
  z-index:10;
}

/* Empty-state band — compact solid brand-colour strip (no image) carrying the
   breadcrumb + page name. Used by content/list pages with no hero image. */
.page-hero--empty {
  background-color:var(--brand-primary, var(--primaryColor));
  padding-top:calc(var(--header-height) + 1.5rem);
  padding-bottom:1.5rem;
}

.page-hero--empty::before {
  display:none;
}

.page-hero--empty .hero-heading {
  color:#fff;
  margin:0;
}

.page-hero--empty-crumb {
  margin-bottom:.75rem;
}

.page-hero--empty-crumb ol,
.page-hero--empty-crumb a {
  color:rgba(255,255,255,.9);
}

.hero-image {
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
}

.hero-image .hero-image-wrapper {
  position:relative;
  width:100%;
  height:100%;
}

.hero-shot-image {
  position:relative;
  display:flex;
  align-items:center;
  justify-content:center;
}

.hero-shot-image img {
  width:100%;
  height:100%;
  object-fit:contain;
}

.hero-logo {
  padding-top:1.5rem;
  padding-bottom:1.5rem;
}

.hero-logo-title {
  font-size:.875rem;
  font-weight:700;
  text-transform:uppercase;
}

.hero-logo-list {
  display:flex;
  flex-wrap:wrap;
  gap:2.5rem;
}

.hero-logo-list li {
  align-self:center;
  justify-self:center;
}

.hero-logo-list img {
  width:100%;
  object-fit:contain;
}

.hero-content {
  position:relative;
  z-index:10;
}

.hero-content .hero-content-wrapper {
  margin-bottom:2rem;
  display:grid;
  grid-template-columns:1fr;
  gap:3rem;
  column-gap:1.5rem;
  padding-top:2.5rem;
  padding-bottom:2.5rem;
}

@media (min-width:768px) {
  .hero-content .hero-content-wrapper {
    padding-top:5rem;
    padding-bottom:5rem;
  }
}

@media (min-width:1280px) {
  .hero-content .hero-content-wrapper {
    grid-template-columns:repeat(2,1fr);
  }
}

.hero-content .hero-text {
  color:#fff;
  display:flex;
  flex-direction:column;
  justify-content:center;
  row-gap:1.5rem;
  text-align:center;
}

@media (min-width:768px) {
  .hero-content .hero-text {
    row-gap:2rem;
  }
}

@media (min-width:1280px) {
  .hero-content .hero-text {
    text-align:left;
  }
}

.filter-select-wrapper {
  display:flex;
  gap:.5rem;
  width:100%;
  order:3;
}

@media (min-width:768px) {
  .md\:w-full {
    width:100%;
  }
  .md\:order-4 {
    order:4;
  }
  .md\:order-2 {
    order:2;
  }
  .md\:right-0 {
    right:0;
  }
  .md\:left-auto {
    left:auto;
  }
  .filter-select-wrapper {
    position:absolute;
    right:0;
    z-index:10;
    width:auto;
    .filter-select .head{background-color:#fff0;
    border:none};
  }
  .project-inputs .search-field-button {
    right:17.5rem;
  }
  .listing-inputs .search-field-button {
    right:19.5rem;
  }
  .project-search-field .search-field-button {
    right:17.5rem;
  }
  .listing-search-field .search-field-button {
    right:19.5rem;
  }
}

@media not all and (min-width:768px) {
  .max-md\:pr-1 {
    padding-right:.25rem;
  }
  .max-md\:pl-1 {
    padding-left:.25rem;
  }
  .max-md\:w-1\/2 {
    width:50%;
  }
  .max-md\:order-3 {
    order:3;
  }
  .max-md\:order-4 {
    order:4;
  }
  .max-md\:order-2 {
    order:2;
  }
}

.order-3 {
  order:3;
}

.order-4 {
  order:4;
}

.order-2 {
  order:2;
}

.order-1 {
  order:1;
}

@media (min-width:1280px) {
  .xl\:w-1\/3 {
    width:33.333333%;
  }
}

.\!flex {
  display:flex!important;
}

.grid-layout-auto {
  contain:layout;
  container-type:inline-size;
  display:grid;
  gap:1.25rem;
  margin:0 auto;
  width:100%;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  grid-template-columns:1fr;
  @media (min-width:768px){grid-template-columns:repeat(2,1fr)}@media (min-width:1024px){grid-template-columns:repeat(3,1fr)}@media (min-width:1440px){grid-template-columns:repeat(4,1fr)}@media (min-width:1740px){grid-template-columns:repeat(5,1fr)};
}

.section-block {
  margin-bottom:4rem;
}

@media (min-width:1024px) {
  .section-block {
    margin-bottom:6rem;
  }
}

.container-fluid {
  .section-title{max-width:none!important};
}

.section-title {
  width:100%;
  display:flex;
  justify-content:space-between;
  align-items:center;
  margin-bottom:2.5rem;
}

@media (min-width:1024px) {
  .section-title {
    margin-bottom:4rem;
  }
}

.section-title .main-button {
  display:none;
}

@media (min-width:768px) {
  .section-title .main-button {
    display:inline-block;
  }
}

.section-button-mobile {
  text-align:center;
  display:block;
  margin-top:24px;
}

@media (min-width:768px) {
  .section-button-mobile {
    display:none;
  }
}

.section-button-mobile .main-button {
  width:100%;
}

.featured-articles-list {
  display:grid;
  grid-template-columns:1fr;
  gap:1.5rem;
  margin-bottom:2.5rem;
}

@media (min-width:1024px) {
  .featured-articles-list {
    grid-template-columns:1fr 1fr;
    margin-bottom:0;
  }
}

.row-news-layout {
  display:flex;
  flex-direction:column;
  gap:1.5rem;
  height:100%;
  padding-left:0;
  padding-right:0;
}

@media (max-width:1023.98px) {
  .row-news-layout {
    padding-left:1rem;
    padding-right:1rem;
  }
}

@media (max-width:767.98px) {
  .max-md\:px-0 {
    padding-left:0!important;
    padding-right:0!important;
  }
  .max-md\:px-4 {
    padding-left:1rem!important;
    padding-right:1rem!important;
  }
}

.container-fluid {
  padding-left:1rem;
  padding-right:1rem;
}

@media (max-width:1279px) {
  .max-xl\:hidden {
    display:none;
  }
  .filter .filter-inner {
    transform:translateX(-100%);
  }
}

.nav-inner {
  transform:translateX(100%);
}

.grid-layout {
  display:grid;
  grid-template-columns:1fr;
  gap:24px;
}

@media (min-width:768px) {
  .grid-layout {
    grid-template-columns:repeat(2,1fr);
  }
}

@media (min-width:1024px) {
  .grid-layout {
    grid-template-columns:repeat(3,1fr);
    gap:28px;
  }
}

@media (min-width:1280px) {
  .grid-layout {
    grid-template-columns:repeat(4,1fr);
  }
}

.search-mobile-wrapper {
  position:relative;
  display:flex;
  gap:.75rem;
  width:100%;
}

@media (min-width:768px) {
  .search-mobile-wrapper {
    gap:1rem;
    .search-field-input{padding-right:60%};
  }
}

@media (max-width:767px) {
  .search-mobile-wrapper {
    flex-wrap:wrap;
  }
}

@media (min-width:1280px) {
  .search-mobile-wrapper {
    display:none;
  }
}

.featured-project-card {
  box-shadow:0 4px 16px rgb(0 0 0 / .08),0 1.5px 8px rgb(0 0 0 / .03);
  overflow:hidden;
  border-radius:.75rem;
  background:#fff;
  display:flex;
  flex-direction:column;
}

.featured-project-card .wrapper {
  display:flex;
  background:#fff;
  flex-direction:column;
}

.featured-project-card .tt-image {
  border-radius:.75rem;
  position:relative;
  padding-bottom:100%;
  overflow:hidden;
}

.featured-project__text {
  width:100%;
  padding:1rem;
  padding-top:.75rem;
  padding-bottom:.75rem;
  font-size:.875rem;
}

.featured-project-card .main-button {
  margin-top:1.5rem;
  width:100%;
}

.featured-project__text h5 {
  margin-bottom:.5rem;
}

.line-clamp-2 {
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:2;
  -webkit-box-orient:vertical;
}

.line-clamp-1 {
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:1;
  -webkit-box-orient:vertical;
}

.line-clamp-3 {
  overflow:hidden;
  text-overflow:ellipsis;
  display:-webkit-box;
  -webkit-line-clamp:3;
  -webkit-box-orient:vertical;
}

.featured-listing-card {
  display:flex;
  flex-direction:column;
  .tt-image{border-radius:.5rem;
  position:relative;
  padding-bottom:100%;
  overflow:hidden};
}

.featured-listing__text {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
  .wrapper{height:100%;
  display:flex;
  flex-direction:column;
  gap:1rem}.address{display:flex;
  align-items:center}.main-button{width:100%;
  margin-top:1.5rem};
}

.project-card {
  display:flex;
  flex-direction:column;
  box-shadow:0 2px 8px rgb(0 0 0 / .07),0 1.5px 6px rgb(0 0 0 / .09);
  overflow:visible;
  border-radius:0;
  @media (min-width:768px){overflow:hidden;
  border-radius:.375rem}>.wrapper{background:#fff;
  height:100%;
  display:flex;
  justify-content:stretch;
  align-items:center;
  flex-direction:column}.project-card__image{position:relative;
  padding-bottom:100%;
  overflow:hidden;
  border-top-left-radius:.375rem;
  border-top-right-radius:.375rem;
  @media (min-width:768px){border-radius:0}}.project-card__text{width:100%;
  padding:.5rem;
  font-size:.75rem;
  @media (min-width:768px){padding:1.25rem 1rem}h5{margin-bottom:.5rem}.property-district{display:flex;
  flex-wrap:wrap;
  gap:.5rem;
  overflow:hidden;
  font-weight:500}.info-list{display:flex;
  flex-wrap:wrap;
  gap:.75rem;
  .info-item{display:flex;
  flex-wrap:wrap;
  gap:.75rem}}}.project-card__bottom{display:flex;
  flex-direction:column;
  gap:.25rem;
  font-size:.875rem;
  >.wrapper{display:flex;
  flex-direction:column;
  gap:1rem;
  align-items:center;
  justify-content:space-between;
  background:#fff;
  padding:.5rem;
  @media (min-width:768px){padding:1.25rem 1rem}}.card-bottom__logo{width:100%;
  padding-bottom:20%;
  img{object-fit:contain}}.main-button{width:100%}};
}

.mb-2 {
  margin-bottom:.5rem;
}

.mb-3 {
  margin-bottom:.75rem;
}

