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

::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-color:#fff0;
  background-image:none;
}

:-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;
}

/* Microsite shell — padding-top clears the fixed site header. Padding (not
   margin) so it doesn't collapse upward through body. Applied via ID for
   high specificity, no Tailwind arbitrary-value dependency. */
#microsite-shell { padding-top: var(--header-height); }

/* Suppress root layout's empty-hero compensation div when our microsite
   shell is rendered — the shell already provides clearance for the fixed
   site header, so that div is empty whitespace. */
#microsite-shell ~ .mt-\[var\(--header-height\)\] { display: none; }

:root {
  --header-height:80px;
  --height-mobile-cta:70px;
  --primaryColor:#c28563;
  --secondaryColor:#c28563;
  --darkColor:#141414;
  --dark2Color:#6a6a70;
  --dark3Color:#36363d;
  --dark4Color:#1f1e1e;
  --creamColor:#f7f8f6;
  --cream2Color:#f5f3ef;
  --cream3Color:#e4dfd8;
  --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;
}

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

html {
  scroll-behavior:smooth;
  /* Reserve the scrollbar gutter permanently so locking page scroll (modals:
     filters, share, contact, nav drawer) never removes the scrollbar and
     shifts the page. Replaces the JS scrollbar-width compensation. */
  scrollbar-gutter:stable;
  /* Theme background MUST live on <html> (not just body). body's bg is
     transparent, so without this the browser's white canvas shows through
     during view-transition cross-fades (and any repaint) — flashing white on
     a dark page and vice-versa. Matches the .dark body base color below. */
  background-color:#ffffff;
}

html.dark {
  background-color:rgb(23 23 23);
  color-scheme:dark;
}

@media (min-width:1024px) {
  body {
    font-size:1rem;
    line-height:1.5rem;
  }
}

:is(:where(.dark) body) {
  --tw-bg-opacity:1;
  background-color:rgb(23 23 23 / var(--tw-bg-opacity));
  --tw-text-opacity:1;
  color:rgb(243 244 246 / var(--tw-text-opacity));
}

body.scroll-hidden {
  overflow:hidden;
}

body {
  top:0!important;
}

img {
  width:100%;
  -o-object-fit:cover;
  object-fit:cover;
}

a {
  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;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-weight:700!important;
  line-height:1.11!important;
}

h1,
.h1 {
  font-size:2.25rem;
  line-height:2.5rem;
}

@media (min-width:1024px) {
  h1,
  .h1 {
    font-size:3.75rem;
    line-height:1;
  }
}

h2,
.h2 {
  font-size:1.875rem;
  line-height:2.25rem;
}

@media (min-width:1024px) {
  h2,
  .h2 {
    font-size:2.25rem;
    line-height:2.5rem;
  }
}

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

@media (min-width:1024px) {
  h3,
  .h3 {
    font-size:1.875rem;
    line-height:2.25rem;
  }
}

h4,
.h4 {
  font-size:1.25rem;
  line-height:1.75rem;
}

@media (min-width:1024px) {
  h4,
  .h4 {
    font-size:1.5rem;
    line-height:2rem;
  }
}

h5,
.h5 {
  font-size:1.125rem;
  line-height:1.75rem;
}

@media (min-width:1024px) {
  h5,
  .h5 {
    font-size:1.25rem;
    line-height:1.75rem;
  }
}

*,
::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:;
}

.tt-image {
  position:relative;
  height:auto;
  width:100%;
  overflow:hidden;
  padding-bottom:65%;
}

.tt-image>div,
.tt-image amp-img,
.tt-image img {
  position:absolute;
  left:0;
  top:0;
  height:100%;
  width:100%;
  -o-object-fit:cover;
  object-fit:cover;
  -o-object-position:center;
  object-position:center;
}

.h-full {
  height:100%;
}

.w-full {
  width:100%;
}

.bg-transparent {
  background-color:#fff0;
}

.page-hero {
  position:relative;
  min-height:500px;
  padding-top:calc(var(--header-height) + 4rem);
  overflow:hidden;
}

@media (min-width:1024px) {
  .page-hero {
    height:70vh;
  }
}

.hero-image {
  position:absolute;
  inset:0;
  background-color:#6b7280;
}

.hero-breadcrumb {
  position:absolute;
  top:calc(var(--header-height) + 1rem);
  left:0;
  right:0;
  z-index:20;
}

.hero-breadcrumb ol,
.hero-breadcrumb a,
.hero-breadcrumb .text-primary {
  color:rgba(255,255,255,.9);
}

/* Empty-state banner — same shape as .page-hero but a compact solid brand
   band (no image): breadcrumb + page-name H1. Used by page-banner-driven pages
   that have no hero image. */
.page-hero--empty {
  min-height:0;
  padding-top:calc(var(--header-height) + 1.5rem);
  padding-bottom:1.5rem;
  background-color:var(--brand-primary, var(--primaryColor));
}

@media (min-width:1024px) {
  .page-hero--empty {
    height:auto;
  }
}

.page-hero--empty .hero-breadcrumb {
  position:static;
  margin-bottom:.75rem;
}

.page-hero--empty .hero-content {
  height:auto;
  align-items:flex-start;
}

.page-hero--empty .hero-content__wrapper {
  height:auto;
  align-items:flex-start;
}

.page-hero--empty .context-text {
  width:100%;
  padding-bottom:0;
  gap:.5rem;
}

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

.hero-image__wrapper::after {
  content:"";
  position:absolute;
  inset:0;
  background:rgb(0 0 0 / .5);
}

.hero-content {
  position:relative;
  z-index:10;
  display:flex;
  height:100%;
  align-items:center;
  justify-content:center;
}

.hero-content__wrapper {
  display:flex;
  width:100%;
  height:100%;
  gap:2.5rem;
  align-items:center;
  justify-content:stretch;
}

@media (max-width:768px) {
  .hero-content__wrapper {
    flex-direction:column;
  }
}

.context-text {
  display:flex;
  flex-direction:column;
  gap:2rem;
  color:#fff;
  width:50%;
  padding-bottom:5rem;
  >*:not(:first-child){margin-top:2rem};
}

@media (max-width:768px) {
  .context-text {
    width:100%;
    padding-bottom:0;
    >*:not(:first-child){margin-top:1rem};
  }
}

.context-text__box {
  display:flex;
  flex-direction:column;
  gap:.5rem;
  >*:not(:first-child){margin-top:.5rem};
}

@media (min-width:1024px) {
  .context-text__box {
    gap:1rem;
    >*:not(:first-child){margin-top:1rem};
  }
}

.hero-subheading {
  font-size:.875rem;
}

.hero-description {
  max-width:48rem;
  font-size:1.125rem;
}

.hero-logos {
  display:flex;
  flex-direction:column;
  gap:1rem;
}

@media (max-width:768px) {
  .hero-logos {
    text-align:center;
  }
}

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

.hero-logo__list {
  display:grid;
  width:100%;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:2rem;
}

@media (max-width:768px) {
  .hero-logo__list {
    justify-content:center;
  }
}

@media (min-width:768px) {
  .hero-logo__list {
    display:flex;
    flex-wrap:wrap;
    align-items:center;
  }
}

.hero-logo__list img {
  aspect-ratio:3 / 2;
  width:5rem;
  justify-self:center;
  object-fit:contain;
}

.hero-shot {
  height:100%;
  width:100%;
  .tt-image{padding-bottom:100%};
}

@media (min-width:768px) {
  .hero-shot {
    .tt-image{padding-bottom:65%};
  }
}

@media (min-width:1024px) {
  .hero-shot {
    width:50%;
  }
}

.hero-shot img {
  width:100%;
  height:100%;
  min-height:0!important;
  object-fit:contain!important;
}

.header {
  position:fixed;
  top:0;
  z-index:var(--z-header);
  height:var(--header-height);
  width:100%;
  border-bottom:1px solid rgb(255 255 255 / .1);
}

/* Scroll-aware header: the site header stays PINNED on microsite pages too
   (it no longer scrolls away — was position:absolute). Microsite pages have NO
   dark hero behind the header and the header text is white, so give it a solid
   brand background here for legibility (matches the .active-scroll scrolled
   state, which doesn't fire on microsites — no .hero). The project sub-nav then
   stacks-sticky directly BELOW the pinned header.
   z-index: --z-nav-detail (109) = one below the header (110) so the header's
   dropdowns paint OVER the nav; this also overrides the element's own `z-10`
   Tailwind utility (which would otherwise leave the nav under page content). */
body:has(.detail-nav) .header { background-color: var(--brand-primary, var(--primaryColor)); }
/* Solid header for content/detail pages that have NO dark hero behind the nav
   (article & listing detail, not-found pages). Set once via the `header-solid`
   body class instead of per-view inline <style> overrides. Microsite pages keep
   using the :has(.detail-nav) rule above. */
body.header-solid .header { background-color: var(--brand-primary, var(--primaryColor)); color: rgb(255 255 255 / 1); }
body:has(.detail-nav) .tab-scroll-nav.detail-nav {
  top: var(--header-height);
  z-index: var(--z-nav-detail);
}
/* Header setting OFF → nothing is pinned above the sub-nav, so it pins flush at
   the very top (the #microsite-shell padding is also zeroed for the hidden
   header — see the no-site-header rules in layout.volt). */
body.no-site-header:has(.detail-nav) .tab-scroll-nav.detail-nav { top: 0; }

.header-wrapper {
  pointer-events:auto;
  position:relative;
  z-index:10;
  display:flex;
  width:100%;
  height:100%;
  align-items:center;
  justify-content:space-between;
}

.header .logo {
  height:100%;
  border-radius:.375rem;
  padding:.25rem;
}

.header .logo img {
  height:100%;
  width:100%;
  max-width:150px;
  object-fit:contain;
}

.header-actions {
  display:flex;
  align-items:center;
  gap:.75rem;
}

.hamburger {
  display:flex;
  width:2.5rem;
  height:2.5rem;
  cursor:pointer;
  align-items:center;
  justify-content:center;
}

.hamburger {
  position:relative;
  width:2rem;
  height:2rem;
  align-items:center;
  cursor:pointer;
}

.hamburger:hover .hamburger-line:first-of-type {
  transform:translateY(calc(-4px - 50%));
}

.hamburger:hover .hamburger-line:last-of-type {
  transform:translateY(calc(5px - 50%));
}

.hamburger.active-nav svg:nth-of-type(1) {
  --tw-scale-x:0;
  --tw-scale-y:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.hamburger.active-nav svg:nth-of-type(2) {
  --tw-scale-x:1;
  --tw-scale-y:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@media (min-width:1024px) {
  .hamburger {
    display:none;
  }
}

.hamburger svg {
  width:1.25rem;
  height:1.25rem;
}

.nav-header {
  display:block;
}

@media (max-width:1023px) {
  .nav-header {
    display:none;
  }
}

@media (min-width:1024px) {
  .nav-header {
    grid-column:span 2 / span 2;
  }
}

.nav-header__menu {
  display:flex;
  align-items:center;
  gap:.25rem;
  white-space:nowrap;
}

.nav {
  position:fixed;
  inset:0;
  z-index:var(--z-nav);
  display:none;
}

@media (max-width:1023px) {
  .nav {
    display:block;
  }
}

.nav-wrapper {
  pointer-events:auto;
  display:flex;
  width:100vw;
  height:100vh;
  flex-direction:column;
  background-color:#fff;
}

:is(:where(.dark) body) {
  .nav-wrapper{background-color:#171717};
}

.nav .nav-header {
  height:var(--header-height);
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-left:1rem;
  padding-right:1rem;
  background-color:var(--brand-primary, var(--primaryColor));
  color:#fff;
}

.nav .nav-header .logo {
  height:100%;
  border-radius:.375rem;
  padding:.25rem;
}

.nav .nav-header .logo img {
  height:100%;
  width:100%;
  max-width:150px;
  object-fit:contain;
}

.nav-content {
  height:100%;
  overflow-y:auto;
  padding-top:2rem;
  padding-bottom:2rem;
}

.nav-menu {
  white-space:nowrap;
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.5rem;
  padding-bottom:.5rem;
  font-size:1.25rem;
  font-weight:600;
  line-height:2.2;
}

.nav-dropdown__wrapper {
  pointer-events:none;
  position:fixed;
  inset:0;
  z-index:var(--z-nav);
  display:none;
}

@media (max-width:1023px) {
  .nav-dropdown__wrapper {
    display:block;
  }
}

.nav-dropdown__wrapper .dropdown-wrapper__head {
  pointer-events:auto;
  display:flex;
  width:100vw;
  height:100vh;
  flex-direction:column;
  background-color:#fff;
}

:is(:where(.dark) body) {
  .nav-dropdown__wrapper .dropdown-wrapper__head{background-color:#171717};
}

.nav-dropdown__wrapper .dropdown-wrapper__head>div {
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.5rem;
  padding-bottom:.5rem;
}

.nav-dropdown__wrapper .dropdown-wrapper__body {
  position:relative;
  width:100%;
  height:100%;
}

.nav-dropdown__wrapper .nav-dropdown__back {
  display:flex;
  align-items:center;
  gap:.5rem;
}

.nav-dropdown__wrapper .nav-dropdown__back>div {
  transform:rotate(90deg);
}

.nav-dropdown__wrapper .nav-dropdown__back>div>svg {
  width:1.75rem;
  height:1.75rem;
}

.close-nav-button {
  display:flex;
  width:2.5rem;
  height:2.5rem;
  align-items:center;
  justify-content:center;
}

.close-nav-button svg {
  width:1.5rem;
  height:1.5rem;
}

.header {
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
  transition-property:background;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.header.active-scroll {
  background-color:var(--brand-primary, var(--primaryColor));
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

:is(:where(.dark) .header.active-scroll) {
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.header.active-scroll-2 .wrapper-content {
  --tw-translate-y:-100%;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.dropdown {
  position:relative;
  height:100%;
}

.dropdown:hover .dropdown-body {
  visibility:visible;
  opacity:1;
}

.menu {
  height:100%;
}

.menu li {
  height:100%;
}

.menu li a,
.menu li.dropdown .dropdown-head {
  display:flex;
  height:100%;
  align-items:center;
}

.menu li a>:not([hidden])~:not([hidden]),
.menu li.dropdown .dropdown-head>:not([hidden])~:not([hidden]) {
  --tw-space-x-reverse:0;
  margin-right:calc(0.25rem * var(--tw-space-x-reverse));
  margin-left:calc(0.25rem * calc(1 - var(--tw-space-x-reverse)));
}

.menu li a img,
.menu li.dropdown .dropdown-head img {
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.menu li a:hover .dropdown-head img,
.menu li.dropdown:hover .dropdown-head img {
  --tw-rotate:180deg;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.header-dropdown {
  --h-default:44px;
  height:var(--h-default);
  -webkit-user-select:none;
  -moz-user-select:none;
  user-select:none;
  overflow:hidden;
  transition-duration:500ms;
}

:is(:where(.dark) .header-dropdown) {
  --tw-border-opacity:1;
  border-color:rgb(255 255 255 / var(--tw-border-opacity));
}

.header-dropdown.active-dropdown .header-dropdown__icon {
  --tw-rotate:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.header-dropdown.active-dropdown .header-dropdown__head {
  color:var(--brand-primary, var(--primaryColor));
}

.header-dropdown__head {
  display:flex;
  height:var(--h-default);
  width:100%;
  align-items:center;
  gap:.5rem;
  text-align:center;
  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;
  cursor:pointer;
}

@media not all and (min-width:1280px) {
  .header-dropdown__head {
    justify-content:center;
  }
}

.header-dropdown__icon {
  display:flex;
  width:1.25rem;
  height:1.25rem;
  align-items:center;
  justify-content:center;
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav-header__menu .header-dropdown:hover .nav-item::before {
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown:hover .nav-item::after {
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body {
  pointer-events:auto;
  opacity:1;
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body::before {
  --tw-scale-y:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body li a {
  position:relative;
  width:auto;
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body li a::before {
  position:absolute;
  bottom:.25rem;
  left:0;
  height:1px;
  width:100%;
  transform-origin:left;
  --tw-scale-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  background-color:currentColor;
  transition-property:background,transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  content:var(--tw-content);
  transition-duration:500ms;
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body li a:hover {
  --tw-text-opacity:1;
  color:rgb(0 0 0 / var(--tw-text-opacity));
}

.nav-header__menu .header-dropdown:hover .header-dropdown__body li a:hover::before {
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

:is(:where(.dark) .nav-header__menu .header-dropdown:hover .header-dropdown__body li a:hover) {
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.nav-header__menu .header-dropdown:hover .header-dropdown__icon {
  --tw-rotate:180deg;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown:hover .dropdown-body__wrapper::before {
  content:var(--tw-content);
  --tw-scale-y:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown:hover .dropdown-body__wrapper>.container {
  --tw-translate-y:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .header-dropdown__body {
  pointer-events:none;
  opacity:0;
  transition-property:all;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav-header__menu .header-dropdown__body li a {
  display:inline-flex;
  padding-top:.5rem;
  padding-bottom:.5rem;
  font-size:1.125rem;
  line-height:1.75rem;
  font-weight:600;
}

.nav-header__menu .dropdown-body__wrapper {
  position:relative;
  min-height:400px;
  padding-top:4rem;
  padding-bottom:4rem;
}

.nav-header__menu .dropdown-body__wrapper::before {
  position:absolute;
  left:0;
  top:0;
  z-index:-10;
  width:100%;
  height:100%;
  min-height:400px;
  transform-origin:top;
  --tw-scale-y:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
  --tw-content:"";
  content:var(--tw-content);
}

:is(:where(.dark) .nav-header__menu .dropdown-body__wrapper)::before {
  --tw-bg-opacity:1;
  background-color:rgb(23 23 23 / var(--tw-bg-opacity));
}

.nav-header__menu .dropdown-body__wrapper>.container {
  --tw-translate-y:-2.5rem;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav-header__menu .nav-item:hover::before {
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-header__menu .nav-item:hover::after {
  content:var(--tw-content);
  --tw-scale-x:1;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav {
  pointer-events:none;
  --tw-translate-x:100%;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav.active-nav {
  pointer-events:auto;
  --tw-translate-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav.active-dropdown {
  --tw-translate-x:-100%;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-menu a {
  position:relative;
  display:inline-block;
  transition-property:color,transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav-menu a:hover {
  color:var(--dark2Color);
}

:is(:where(.dark) .nav-menu a:hover) {
  color:var(--cream3Color);
}

.nav-menu>li {
  transition-timing-function:cubic-bezier(.215,.61,.355,1);
  transition-property:opacity,transform,height;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-delay:0s;
  transition-duration:500ms;
}

@media (min-width:1280px) {
  .nav-menu>li {
    --tw-translate-x:-2.5rem;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    opacity:0;
  }
}

.nav-menu>li:not(.nav-dropdown) {
  counter-increment:big-items-counter;
}

@media (min-width:1280px) {
  .nav-menu>li:nth-of-type(odd) {
    padding-left:20vw;
  }

  .nav-menu>li:nth-of-type(even) {
    padding-left:10vw;
  }

  .nav-menu>li>a:before {
    position:absolute;
    left:-3.5rem;
    top:55%;
    height:1.5px;
    width:7rem;
    transform-origin:left;
    --tw-translate-y:-50%;
    --tw-scale-x:0;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    background-color:var(--dark2Color);
    transition-property:transform;
    transition-timing-function:cubic-bezier(.4,0,.2,1);
    transition-duration:500ms;
    --tw-content:"";
    content:var(--tw-content);
  }

  :is(:where(.dark) .nav-menu>li>a):before {
    background-color:var(--cream3Color);
  }

  .nav-menu>li>a::after {
    content:counter(big-items-counter,decimal-leading-zero);
    position:absolute;
    left:-3.5rem;
    top:calc(55% - 32px);
    display:block;
    --tw-translate-y:-50%;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    font-family:"Inter","Arial","sans-serif";
    font-size:.75rem;
    line-height:1rem;
    opacity:0;
    transition-property:opacity,transform;
    transition-timing-function:cubic-bezier(.4,0,.2,1);
    transition-duration:500ms;
  }

  .nav-menu>li>a:hover {
    --tw-translate-x:4rem;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .nav-menu>li>a:hover::before {
    --tw-translate-x:-5rem;
    --tw-scale-x:1;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }

  .nav-menu>li>a:hover::after {
    --tw-translate-x:-5rem;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
    opacity:1;
  }
}

.nav-item {
  position:relative;
  padding:.5rem;
}

.nav-item::before {
  left:50%;
  content:var(--tw-content);
  transform-origin:left;
}

.nav-item::after {
  right:50%;
  content:var(--tw-content);
  transform-origin:right;
}

.nav-item::before,
.nav-item::after {
  position:absolute;
  bottom:0;
  height:1px;
  width:50%;
  --tw-scale-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  background-color:currentColor;
  transition-property:background,transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
  --tw-content:"";
  content:var(--tw-content);
}

.detail-nav ul li a {
  position:relative;
  display:inline-flex;
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.625rem;
  padding-bottom:.625rem;
}

.detail-nav ul li a::before {
  position:absolute;
  inset:0;
  border-radius:.5rem;
  background-color:#fff0;
  opacity:.2;
  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);
  content:var(--tw-content);
  transition-duration:500ms;
}

.detail-nav ul li a:hover {
  color:var(--brand-primary, var(--primaryColor));
}

.detail-nav ul li a:hover::before {
  content:var(--tw-content);
  background-color:var(--brand-primary, var(--primaryColor));
}

.detail-nav ul li.active a {
  color:var(--brand-primary, var(--primaryColor));
}

.detail-nav ul li.active a::before {
  content:var(--tw-content);
  background-color:var(--brand-primary, var(--primaryColor));
}

.nav-dropdown.active-dropdown .nav-dropdown__body {
  --tw-translate-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.nav-dropdown__back {
  display:flex;
  align-items:center;
  gap:.5rem;
}

.nav-dropdown__head {
  display:flex;
  width:100%;
  align-items:center;
  justify-content:space-between;
  gap:.5rem;
  text-align:center;
  padding-block:7px;
  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;
  cursor:pointer;
}

.nav-dropdown__icon {
  display:flex;
  width:1.25rem;
  height:1.25rem;
  align-items:center;
  justify-content:center;
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.nav-dropdown__wrapper.active-dropdown .dropdown-wrapper__head {
  --tw-translate-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.dropdown-wrapper__head {
  --tw-translate-x:100%;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.dropdown-wrapper__item {
  pointer-events:none;
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  opacity:0;
  transition-property:all;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:150ms;
  transition-delay:500ms;
  transition-duration:0s;
}

.dropdown-wrapper__item.active-dropdown {
  pointer-events:auto;
  opacity:1;
  transition-delay:0s;
}

.dropdown-wrapper__item {
  height:100%;
  overflow-y:auto;
  padding-top:2rem;
  padding-bottom:2rem;
}

.dropdown-wrapper__item li a {
  display:inline-block;
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.5rem;
  padding-bottom:.5rem;
  font-size:1.25rem;
  line-height:1.75rem;
  font-weight:600;
  line-height:1.5;
}

.main-button,
#ec-form .btn.btn-default,
.contact-form-submit {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  white-space:nowrap;
  border-radius:9999px;
  border-width:1px;
  border-color:rgb(255 255 255 / .1);
  background-color:var(--brand-primary, var(--primaryColor));
  color:#fff;
  padding-left:1.5rem;
  padding-right:1.5rem;
  padding-top:10px;
  padding-bottom:10px;
  text-align:center;
  font-size:.875rem;
  line-height:1.25rem;
  font-weight:500;
  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;
  cursor:pointer;
}

.main-button.--primary,
#ec-form .btn.btn-default.--primary,
.contact-form-submit.--primary {
  border-color:var(--brand-primary, var(--primaryColor));
  background-color:var(--brand-primary, var(--primaryColor));
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.main-button.--white,
#ec-form .btn.btn-default.--white,
.contact-form-submit.--white {
  --tw-border-opacity:1;
  border-color:rgb(255 255 255 / var(--tw-border-opacity));
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
  color:var(--brand-primary, var(--primaryColor));
}

.main-button.--fill-gray,
#ec-form .btn.btn-default.--fill-gray,
.contact-form-submit.--fill-gray {
  --tw-bg-opacity:1;
  background-color:rgb(243 244 246 / var(--tw-bg-opacity));
  --tw-text-opacity:1;
  color:rgb(0 0 0 / var(--tw-text-opacity));
}

:is(:where(.dark) .main-button.--fill-gray),
:is(:where(.dark) #ec-form .btn.btn-default.--fill-gray),
:is(:where(.dark) .contact-form-submit.--fill-gray) {
  --tw-bg-opacity:1;
  background-color:rgb(38 38 38 / var(--tw-bg-opacity));
  --tw-text-opacity:1;
  color:rgb(255 255 255 / var(--tw-text-opacity));
}

.main-button.--ghost,
#ec-form .btn.btn-default.--ghost,
.contact-form-submit.--ghost {
  border-color:var(--brand-primary, var(--primaryColor));
  color:var(--brand-primary, var(--primaryColor));
  background-color:#fff0;
}

.main-button.--sm,
#ec-form .btn.btn-default.--sm,
.contact-form-submit.--sm {
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.25rem;
  padding-bottom:.25rem;
}

.dropdown {
  --h-default:44px;
  height:var(--h-default);
  overflow:hidden;
  transition-property:height;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.dropdown.active-dropdown .dropdown__icon {
  --tw-rotate:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.dropdown.active-dropdown .dropdown__head {
  color:var(--brand-primary, var(--primaryColor));
}

.dropdown__head {
  display:flex;
  height:var(--h-default);
  align-items:center;
  justify-content:space-between;
  cursor:pointer;
}

.dropdown__icon {
  width:1.25rem;
  height:1.25rem;
  --tw-rotate:-90deg;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  transition-property:transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.tabs-home-filter .tabs-trigger {
  overflow-x:hidden;
}

.tabs-home-filter .tabs-nav {
  margin-left:auto;
  margin-right:auto;
  display:flex;
  width:min-content;
  overflow-x:auto;
  border-radius:9999px;
  background-color:#f3f4f6;
  padding:.25rem .25rem;
  font-size:.875rem;
  color:#4b5563;
}

:is(:where(.dark) body) {
  .tabs-home-filter .tabs-nav{--tw-bg-opacity:1;
  color:#fff;
  background-color:rgb(38 38 38 / var(--tw-bg-opacity));
  li.active,li:hover{--tw-bg-opacity:1;
  background-color:rgb(10 10 10 / var(--tw-bg-opacity));
  color:#fff}};
}

.tabs-home-filter .tabs-nav * {
  cursor:pointer;
  padding-left:1rem;
  padding-right:1rem;
  padding-top:.5rem;
  padding-bottom:.5rem;
}

.tabs-home-filter .tabs-content {
  position:relative;
  height:136px;
  padding-top:1rem;
}

@media (min-width:768px) {
  .tabs-home-filter .tabs-content {
    height:88px;
    padding-top:1.5rem;
  }
}

.tabs-home-filter .tabs-content__wrapper {
  display:flex;
  justify-content:center;
  overflow:hidden;
}

@media (max-width:767px) {
  .tabs-home-filter .tabs-content__wrapper {
    flex-wrap:wrap;
    row-gap:.5rem;
  }
}

@media (min-width:768px) {
  .tabs-home-filter .tabs-content__wrapper {
    column-gap:.5rem;
  }
}

.tabs-home-filter .tab-panel {
  display:flex;
  flex-direction:column;
  row-gap:1rem;
  >*:not(:first-child){margin-top:1rem};
}

@media (max-width:767px) {
  .tabs-home-filter .tab-panel {
    width:100%;
  }
}

.filter-wrapper {
  border:1px solid #e5e7eb;
  padding-top:1.25rem;
  padding-bottom:1.25rem;
  margin-bottom:1.25rem;
}

:is(:where(.dark) body) {
  .filter-wrapper{border-color:rgb(255 255 255 / .1)};
}

@media (min-width:1024px) {
  .filter-wrapper {
    margin-bottom:1.5rem;
  }
}

.searchbar {
  display:flex;
  justify-content:center;
  gap:1rem;
}

@media (max-width:1023px) {
  .searchbar {
    flex-direction:column;
  }
}

@media (min-width:1024px) {
  .searchbar {
    align-items:center;
  }
}

.searchbar-col {
  width:100%;
  display:flex;
  align-items:center;
  gap:1rem;
}

@media (min-width:768px) {
  .searchbar-col {
    width:auto;
    justify-content:center;
  }
}

.tabs .tabs-nav li {
  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;
}

.tabs .tabs-nav li:hover {
  color:var(--brand-primary, var(--primaryColor));
}

.tabs .tabs-nav li:hover,
.tabs .tabs-nav li.active {
  --tw-bg-opacity:1;
  background-color:rgb(255 255 255 / var(--tw-bg-opacity));
  color:var(--brand-primary, var(--primaryColor));
}

.tabs .tab-panel {
  display:none;
}

.tabs .tab-panel.active-tab {
  display:block;
}

.tabs.fade-push-horizontal .tab-panel {
  visibility:hidden;
  position:absolute;
  z-index:50;
  display:block;
  opacity:0;
  transition-property:opacity,visibility,transform;
  transition-timing-function:cubic-bezier(.4,0,.2,1);
  transition-duration:500ms;
}

.tabs.fade-push-horizontal .tab-panel:nth-child(odd) {
  --tw-translate-x:2.5rem;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tabs.fade-push-horizontal .tab-panel:nth-child(even) {
  --tw-translate-x:-2.5rem;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

.tabs.fade-push-horizontal .tab-panel.active {
  visibility:visible;
  --tw-translate-x:0;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  opacity:1;
  transition-delay:50ms;
}

.tabs.fade-push-horizontal .tab-panel:nth-of-type(:odd) {
  --tw-translate-x:2.5rem;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@media (min-width:1024px) {
  .tabs.fade-push-horizontal .tab-panel:nth-of-type(:odd) {
    --tw-translate-x:10rem;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
}

.tabs.fade-push-horizontal .tab-panel:nth-of-type(:even) {
  --tw-translate-x:-2.5rem;
  transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
}

@media (min-width:1024px) {
  .tabs.fade-push-horizontal .tab-panel:nth-of-type(:even) {
    --tw-translate-x:-10rem;
    transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y));
  }
}

.section {
  margin-bottom:4rem;
}

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

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

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

.section-title__wrapper {
  max-width:48rem;
}

.featured-projects-list {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1.5rem;
}

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

@media (min-width:1024px) {
  .featured-projects-list {
    grid-template-columns:repeat(3,1fr);
  }
}

.featured-listings-list {
  display:grid;
  grid-template-columns:repeat(2,1fr);
  gap:1.5rem;
}

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

@media (min-width:1024px) {
  .featured-listings-list {
    grid-template-columns:repeat(3,1fr);
  }
}

@media (min-width:1280px) {
  .featured-listings-list {
    grid-template-columns:repeat(3,1fr);
  }
}

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

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

@media (min-width:1024px) {
  .featured-articles-list {
    grid-template-columns:repeat(3,1fr);
  }
}

.section-button {
  text-align:center;
  margin-top:2.5rem;
}

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

.featured-listing-card {
  box-shadow:0 4px 24px 0 rgb(34 34 52 / .06);
  border-radius:.75rem;
  background-color:#fff;
  overflow:hidden;
  position:relative;
}

.featured-listing-card .tt-image {
  border-radius:.75rem;
  display:block;
  width:100%;
  height:auto;
  overflow:hidden;
}

.featured-listing-card .listing-card__title {
  display:inline-block;
  padding:.75rem;
  font-weight:600;
  font-size:1.125rem;
}

.featured-listing-card .listing-card__address {
  display:flex;
  align-items:center;
  gap:.5rem;
  padding:.75rem;
  font-weight:600;
  font-size:.875rem;
  color:#757575;
}

.featured-listing-card .listing-card__address svg {
  width:1.25rem;
  height:1.25rem;
  flex-shrink:0;
}

.featured-project-card {
  box-shadow:0 4px 24px 0 rgb(34 34 52 / .06);
  border-radius:.75rem;
  background-color:#fff;
  display:flex;
  flex-direction:column;
  overflow:hidden;
  position:relative;
}

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

.featured-project-card .project-card__content {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
  padding:1rem 0;
}

.featured-project-card .project-card__title {
  display:inline-block;
  padding:.75rem;
  font-weight:600;
  font-size:1.125rem;
}

.featured-articles-card {
  display:flex;
  flex-direction:column;
}

.featured-articles-card .tt-image {
  border-radius:.75rem;
  padding-bottom:80%;
  width:100%;
  overflow:hidden;
}

.featured-articles-card .news-card__content {
  margin-top:1rem;
  height:100%;
  display:flex;
  flex-direction:column;
  gap:.75rem;
}

.project-card {
  display:flex;
  flex-direction:column;
  border-radius:.75rem;
  background-color:#fff;
}

:is(:where(.dark) body) {
  .project-card,.featured-listing-card,.featured-project-card,.featured-articles-card{background-color:#0a0a0a;
  color:#fff};
}

.project-card__thumbnail {
  position:relative;
}

.project-card__thumbnail .tt-image {
  border-radius:.75rem;
  padding-bottom:80%;
  width:100%;
  overflow:hidden;
}

.project-card__thumbnail .project-card__tags {
  position:absolute;
  left:1rem;
  top:1rem;
  right:1rem;
  display:flex;
  flex-wrap:wrap;
  gap:.75rem;
}

.project-card__thumbnail .project-card__tags .main-button {
  pointer-events:none;
  color:#000!important;
  white-space:normal;
}

.project-card__logo {
  position:absolute;
  bottom:1rem;
  left:1rem;
}

.project-card__logo img {
  object-fit:contain;
  min-width:2.5rem;
  height:2.5rem;
  border-radius:.5rem;
  padding:.25rem;
  background-color:#fff;
}

.project-card__content {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  height:100%;
}

.project-card__title {
  display:inline-block;
  padding:.75rem;
  font-weight:600;
}

.project-card__divider {
  padding-left:.75rem;
  padding-right:.75rem;
  font-size:.875rem;
}

.project-card__tags {
  border-top:1px solid #f3f4f6;
  border-bottom:1px solid #f3f4f6;
  padding-top:.75rem;
  padding-bottom:.75rem;
}

.project-card__tags .tags-list {
  display:flex;
  flex-wrap:wrap;
  align-items:center;
  gap:.25rem;
}

.project-card__tags .tags-list .main-button {
  border-radius:.375rem;
}

.project-card__address {
  display:flex;
  align-items:center;
  gap:.5rem;
  padding-block:.75rem;
}

.project-card__address svg {
  width:1.25rem;
  height:1.25rem;
  flex-shrink:0;
}

.project-card__address span {
  font-weight:600;
}

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

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

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

:is(:where(.dark) body) {
  .dark\:hover\:bg-gray-500:hover{background-color:#6b7280};
}

.lang-button {
  text-transform:uppercase;
  position:relative;
  cursor:pointer;
  padding-block:4px;
}

.lang-button.active .lang-button__body {
  opacity:1;
  pointer-events:auto;
}

.lang-button.active i svg {
  transform:rotate(180deg);
}

.lang-button__head {
  opacity:.75;
  display:flex;
  align-items:center;
  gap:6px;
  min-width:60px;
}

.lang-button__head i {
  transition:transform var(--t);
  display:inline-flex;
}

.lang-button__head i * {
  transition:transform var(--t);
}

.lang-button__head i svg path {
  fill:#fff;
}

.lang-button__body {
  position:absolute;
  top:30px;
  left:50%;
  min-width:80px;
  transform:translateX(-50%);
  text-align:center;
  opacity:0;
  pointer-events:none;
  background:#fff;
  padding:10px;
  transition:var(--t);
  box-shadow:rgb(149 157 165 / .2) 0 8px 24px;
  color:#000;
  display:flex;
  flex-direction:column;
  align-items:flex-start;
  white-space:nowrap;
  border-radius:10px;
  transition-delay:0.1s;
}

.popover-body {
  visibility:hidden;
  opacity:0;
}

/* Soft content fade-in on each (full-page) load — gives microsite page nav a
   smooth feel without any view-transition snapshot machinery. ONLY the article
   content fades; the site header + project hero/nav render instantly and
   unchanged, so they never flash or move. `both` fill-mode starts it at
   opacity 0 (no flash-then-fade). */
@keyframes ms-content-fade {
  from { opacity: 0; }
  to   { opacity: 1; }
}
#microsite-content {
  animation: ms-content-fade 0.22s ease both;
}
@media (prefers-reduced-motion: reduce) {
  #microsite-content { animation: none; }
}
