﻿/* fallback */
@font-face {
  font-family: 'Material Symbols Outlined';
  font-style: normal;
  font-weight: 100 700;
  src: url(fonts/icons.woff2) format('woff2');
}

.material-symbols-outlined {
  font-family: 'Material Symbols Outlined';
  font-weight: normal;
  font-style: normal;
  font-size: 24px;
  line-height: 1;
  letter-spacing: normal;
  text-transform: none;
  display: inline-block;
  white-space: nowrap;
  word-wrap: normal;
  direction: ltr;
  -webkit-font-feature-settings: 'liga';
  -webkit-font-smoothing: antialiased;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 400;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 500;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 600;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 700;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 800;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

/* cyrillic-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400.woff2) format('woff2');
  unicode-range: U+0460-052F, U+1C80-1C8A, U+20B4, U+2DE0-2DFF, U+A640-A69F, U+FE2E-FE2F;
}

/* cyrillic */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-1.woff2) format('woff2');
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

/* greek-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-2.woff2) format('woff2');
  unicode-range: U+1F00-1FFF;
}

/* greek */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-3.woff2) format('woff2');
  unicode-range: U+0370-0377, U+037A-037F, U+0384-038A, U+038C, U+038E-03A1, U+03A3-03FF;
}

/* vietnamese */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-4.woff2) format('woff2');
  unicode-range: U+0102-0103, U+0110-0111, U+0128-0129, U+0168-0169, U+01A0-01A1, U+01AF-01B0, U+0300-0301, U+0303-0304, U+0308-0309, U+0323, U+0329, U+1EA0-1EF9, U+20AB;
}

/* latin-ext */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-5.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}

/* latin */
@font-face {
  font-family: 'Inter';
  font-style: normal;
  font-weight: 900;
  src: url(fonts/inter-400-6.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}



/* Cormorant Garamond - Optimized (Latin only) */

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 400;
  src: url('fonts/cormorant-garamond-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 500;
  src: url('fonts/cormorant-garamond-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 600;
  src: url('fonts/cormorant-garamond-400.woff2') format('woff2');
}

@font-face {
  font-family: 'Cormorant Garamond';
  font-style: normal;
  font-weight: 700;
  src: url('fonts/cormorant-garamond-400.woff2') format('woff2');
}

:root {
  --yoki-primary: #0f172a;
  --yoki-secondary: #775a18;
  --yoki-surface: #f9f9f9;
  --yoki-surface-muted: #eeeeee;
  --yoki-outline: #c6c6cd;
  --yoki-text: #1a1c1c;
  --yoki-text-muted: #45464d;
  --yoki-footer-text: #a5a5a5;
  --yoki-container: 1200px;
  --yoki-gutter: 32px;
  --yoki-section-gap: 120px;
  --yoki-radius: 2px;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
  background: var(--yoki-surface);
  font-size: clamp(14px, 0.25vw + 13px, 16px);
}

body {
  margin: 0;
  color: var(--yoki-text);
  background: var(--yoki-surface);
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

img,
svg,
video {
  display: block;
  max-width: 100%;
}

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

button,
a,
input,
textarea,
select {
  font: inherit;
}

button,
a {
  -webkit-tap-highlight-color: transparent;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
textarea:focus-visible,
select:focus-visible {
  outline: 2px solid var(--yoki-secondary);
  outline-offset: 4px;
}

.material-symbols-outlined {
  font-variation-settings: 'FILL' 0, 'wght' 400, 'GRAD' 0, 'opsz' 24;
}

.container,
.site-container,
.wide-margin {
  width: 100%;
  max-width: var(--yoki-container);
  margin-inline: auto;
  padding-inline: clamp(1rem, 4vw, 2rem);
}

.section-stack {
  padding-block: clamp(5rem, 9vw, var(--yoki-section-gap));
}

.eyebrow,
.nav-link,
.footer-link {
  font-family: Inter, sans-serif;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}

.btn,
.button-primary,
.button-secondary,
button {
  display: inline-flex;
  min-height: 44px;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  border: 1px solid transparent;
  border-radius: var(--yoki-radius);
  cursor: pointer;
  transition: all .3s ease-in-out !important;
}

.btn:active,
.button-primary:active,
.button-secondary:active,
button:active {
  transform: scale(0.98);
}

.btn--filled,
.button-primary {
  padding: 1rem 2rem;
  background: #0c2340;
  color: #fff;
  border-color: var(--yoki-primary);
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.btn--filled:hover,
.button-primary:hover {
  background: #B8881E;
  border-color: #a3781a;
}

.btn--outline,
.button-secondary {
  padding: 1rem 2rem;
  border-color: var(--yoki-outline);
  color: var(--yoki-primary);
  background: transparent;
  font-family: Inter, sans-serif;
  font-size: 0.75rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
}

.btn--outline:hover,
.button-secondary:hover {
  background: var(--yoki-surface-muted);
  border-color: var(--yoki-primary);
}

.card,
.info-card,
.perspective-card {
  border: 1px solid var(--yoki-outline);
  background: #fff;
}

.perspective-card {
  transition: transform 0.4s cubic-bezier(0.165, 0.84, 0.44, 1), box-shadow 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.perspective-card:hover {
  transform: translateY(-8px);
}

.bg-overlay-dark {
  background-color: rgba(15, 23, 42, 0.85);
}

.site-header {
  position: sticky;
  top: 0;
  z-index: 50;
}

.site-nav {
  width: 100%;
  border-bottom: 1px solid #e2e8f0;
  background: rgba(255, 255, 255, 0.96);
  backdrop-filter: blur(12px);
}

.site-nav__inner {
  display: flex;
  min-height: 5rem;
  align-items: center;
  justify-content: space-between;
  gap: 1.25rem;
}

.site-nav__brand {
  display: inline-flex;
  align-items: center;
  flex: 0 0 auto;
}

.site-nav__logo {
  width: auto;
  height: 2.5rem;
  object-fit: contain;
}

.site-nav__menu {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: clamp(1rem, 2vw, 2rem);
}

.site-nav__link {
  color: #64748b;
  font-family: Inter, sans-serif;
  font-size: 0.78rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  padding-block: 0.35rem;
  text-transform: uppercase;
  border-bottom: 2px solid transparent;
  transition: color 180ms ease, border-color 180ms ease;
}

.site-nav__link:hover,
.site-nav__link.is-active {
  color: var(--yoki-primary);
  border-bottom-color: #cf3434;
}

.site-nav__toggle {
  display: none;
  width: 2.75rem;
  height: 2.75rem;
  padding: 0;
  flex-direction: column;
  border: 1px solid #cbd5e1;
  background: #fff;
}

.site-nav__toggle-line {
  display: block;
  width: 1.25rem;
  height: 2px;
  background: var(--yoki-primary);
  transition: transform 180ms ease, opacity 180ms ease;
}

.site-nav__toggle.is-open .site-nav__toggle-line:nth-child(1) {
  transform: translateY(7px) rotate(45deg);
}

.site-nav__toggle.is-open .site-nav__toggle-line:nth-child(2) {
  opacity: 0;
}

.site-nav__toggle.is-open .site-nav__toggle-line:nth-child(3) {
  transform: translateY(-10px) rotate(-45deg);
}

.site-nav__cta {
  flex: 0 0 auto;
  padding: 0.8rem 1.5rem;
}

.site-footer {
  /* border-top: 1px solid #e2e8f0; */
  background: #0f172a;
}

.site-footer__inner {
  display: flex;
  gap: clamp(2rem, 8vw, 6rem);
  justify-content: space-between;
  padding-block: clamp(4rem, 8vw, 6rem);
}

.site-footer__brand {
  max-width: 28rem;
}

.site-footer__logo {
  width: 110px;
  margin-bottom: 2rem;
}

.site-footer__copy,
.site-footer__link {
  color: var(--yoki-footer-text);
  font-family: Inter, sans-serif;
  font-size: 0.82rem;
  line-height: 1.7;
}

.site-footer__groups {
  display: grid;
  grid-template-columns: repeat(3, minmax(8rem, 1fr));
  gap: clamp(2rem, 5vw, 4rem);
}

.site-footer__group {
  display: flex;
  flex-direction: column;
  gap: 0.85rem;
}

.site-footer__heading {
  color: #fff;
  font-family: Inter, sans-serif;
  font-size: 0.76rem !important;
  font-weight: 800;
  letter-spacing: 0.12em;
  margin: 0 0 0.35rem;
  text-transform: uppercase;
}

.site-footer__link {
  display: block;
  font-weight: 600;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  transition: color 180ms ease;
}

.site-footer__link:hover {
  color: #fff;
}

h1,
.text-hero-title,
.font-hero-title,
.text-\[72px\] {
  font-size: clamp(3rem, 6vw, 4.5rem) !important;
  line-height: 1.08 !important;
}

.text-\[120px\] {
  font-size: clamp(4rem, 10vw, 7.5rem) !important;
}

.text-\[160px\] {
  font-size: clamp(5rem, 13vw, 10rem) !important;
}

h2,
.text-section-title,
.font-section-title,
.text-\[48px\] {
  font-size: clamp(2rem, 4vw, 3rem) !important;
  line-height: 1.12 !important;
}

h3,
.text-3xl,
.text-\[32px\] {
  font-size: clamp(1.45rem, 2.5vw, 1.875rem) !important;
  line-height: 1.25 !important;
}

.text-body-lg,
.font-body-lg,
.text-lg,
.text-\[18px\] {
  font-size: clamp(1rem, 1.4vw, 1.125rem) !important;
}

.text-sm,
.text-\[14px\] {
  font-size: clamp(0.85rem, 1vw, 0.875rem) !important;
}

.text-xs,
.text-\[10px\],
.text-\[12px\],
.text-\[11px\],
.text-label-caps {
  font-size: clamp(0.68rem, 0.85vw, 0.75rem) !important;
}

details summary {
  font-size: clamp(1.05rem, 1.6vw, 1.25rem) !important;
  line-height: 1.35;
}

details>div {
  font-size: clamp(0.9rem, 1.1vw, 1rem) !important;
  line-height: 1.7;
}

@media (min-width: 1440px) {
  :root {
    --yoki-container: 1280px;
  }
}

@media (max-width: 1024px) {

  .container,
  .wide-margin,
  .site-container {
    padding-inline: clamp(1rem, 4vw, 2rem);
  }

  .site-nav__toggle {
    display: inline-flex;
  }

  .site-nav__menu {
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    display: none;
    flex-direction: column;
    align-items: stretch;
    gap: 0;
    padding: 0.75rem clamp(1rem, 4vw, 2rem) 1.25rem;
    border-bottom: 1px solid #e2e8f0;
    background: rgba(255, 255, 255, 0.98);
    box-shadow: 0 18px 35px rgba(15, 23, 42, 0.12);
  }

  .site-nav__menu.is-open {
    display: flex;
  }

  .site-nav__link {
    padding: 1rem 0;
    border-bottom: 1px solid #e2e8f0;
  }

  .site-nav__link.is-active {
    border-bottom-color: var(--yoki-primary);
  }

  .site-nav__cta {
    display: none;
  }

  .site-footer__inner {
    flex-direction: column;
  }
}

@media (max-width: 768px) {
  br {
    display: none;
  }

  .text-4xl {
    font-size: 1.5rem;
  }

  .container,
  .wide-margin,
  .site-container {
    padding-inline: 1rem;
  }

  .section-stack {
    padding-block: 4rem;
  }

  .site-footer__groups {
    grid-template-columns: 1fr;
  }

  .btn,
  .btn--filled,
  .btn--outline,
  .button-primary,
  .button-secondary {
    width: 100%;
  }

  .py-section-gap {
    padding: 60px 0px;
  }
}

.font-serif {
  font-family: Cormorant Garamond !important;
}


.reveal-text {
  font-size: 2rem;
  font-weight: 600;
  color: #aaa;
  /* initial semi-transparent color */
  background: linear-gradient(90deg, #000 0%, #000 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  opacity: 0.5;
  /* initial faded text */
  transition: opacity 0.5s ease, background-size 1s ease;
  background-size: 0% 100%;
  /* start with masked text */
  background-repeat: no-repeat;
}

.reveal-text.active {
  opacity: 1;
  background-size: 100% 100%;
  /* full reveal */
}

.scroll-fill-text div {
  display: block;
  opacity: 0.5;
  /* faded initially */
  transition: opacity 0.8s ease, color 0.8s ease;
  color: #1a1a1a;
  /* final solid color */
}

.scroll-fill-text div.active {
  opacity: 1;
  /* fully visible */
}



/* test.css
   Standalone modular animation and transition system.
   Drop into any project with test.js. Existing CSS/JS files are not touched.

   Core usage:
   - Scroll: data-animate="fade-up" data-duration="900ms" data-delay="0.1s"
   - Stagger: data-animate="stagger" data-stagger="80ms"
   - Text: data-animate="chars | words | typing | wave-text | scroll-highlight"
   - Counter: data-animate="counter" data-target="250000" data-prefix="$"
   - Progress: data-animate="progress" data-progress="75"
   - Hover: class="hover-scale hover-glow btn-hover-slide"
   - Loop: class="loop-float loop-pulse loop-shimmer"
*/

@property --highlight-offset {
  syntax: "<percentage>";
  inherits: true;
  initial-value: 0%;
}

:root {
  --anim-duration: 720ms;
  --anim-delay: 0ms;
  --anim-distance: 44px;
  --anim-ease: cubic-bezier(0.22, 1, 0.36, 1);
  --anim-spring: cubic-bezier(0.2, 1.3, 0.32, 1);
  --anim-dark: #0f172a;
  --anim-muted: #64748b;
  --anim-soft: #e2e8f0;
  --anim-light: #ffffff;
  --anim-accent: #b98b2f;
  --anim-accent-2: #38bdf8;
  --highlight-color: #b98b2f;
  --normal-text-color: #0f172a;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: #f8fafc;
  color: var(--anim-dark);
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
}

.demo-page {
  width: min(1180px, calc(100% - 32px));
  margin: 0 auto;
  padding: 64px 0;
}

.demo-section {
  padding: 84px 0;
  border-bottom: 1px solid var(--anim-soft);
}

.demo-section>h2 {
  margin-top: 0;
}

.demo-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 20px;
}

.demo-grid-spaced {
  margin-top: 20px;
}

.demo-card {
  min-height: 140px;
  padding: 24px;
  border: 1px solid #dbe2ea;
  border-radius: 10px;
  background: #fff;
  box-shadow: 0 12px 34px rgba(15, 23, 42, 0.06);
}

.demo-card strong,
.demo-label {
  display: block;
  margin-bottom: 8px;
  font-size: 0.76rem;
  letter-spacing: 0.11em;
  text-transform: uppercase;
  color: var(--anim-muted);
}

.demo-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 46px;
  padding: 12px 22px;
  border: 1px solid var(--anim-dark);
  border-radius: 6px;
  background: var(--anim-dark);
  color: #fff;
  font-weight: 700;
  cursor: pointer;
}

.demo-gradient-button {
  background-image: linear-gradient(90deg, var(--anim-dark), var(--anim-accent), var(--anim-accent-2), var(--anim-dark));
}

.transition-all-demo {
  transition-property: transform, color, background-color, background-position, border-color, opacity, filter, box-shadow, clip-path, letter-spacing, padding, margin, text-shadow;
  transition-duration: 320ms;
  transition-timing-function: var(--anim-ease);
}

.transition-all-demo:hover {
  letter-spacing: 0.08em;
  filter: saturate(1.25) contrast(1.05);
  text-shadow: 0 8px 26px rgba(15, 23, 42, 0.25);
}

/* --------------------------------------------------------------------------
   Scroll-triggered entrance animations. JS toggles .is-animated on enter
   and removes it on exit, so every animation resets and replays.
---------------------------------------------------------------------------- */
[data-animate],
[data-animate-child] {
  --local-duration: var(--anim-duration);
  --local-delay: var(--anim-delay);
  transition-duration: var(--local-duration);
  transition-delay: var(--local-delay);
  transition-timing-function: var(--anim-ease);
  transition-property: opacity, transform, filter, clip-path, background-size, background-position, stroke-dashoffset, color, box-shadow, border-color;
  will-change: opacity, transform;
}

[data-animate="fade"] {
  opacity: 0;
}

[data-animate="opacity-low"] {
  opacity: 0.22;
}

[data-animate="fade-up"],
[data-animate="slide-up"],
[data-animate="stagger"] {
  opacity: 0;
  transform: translateY(var(--anim-distance));
}

[data-animate="fade-down"],
[data-animate="slide-down"] {
  opacity: 0;
  transform: translateY(calc(var(--anim-distance) * -1));
}

[data-animate="fade-left"],
[data-animate="slide-left"] {
  opacity: 0;
  transform: translateX(calc(var(--anim-distance) * -1));
}

[data-animate="fade-right"],
[data-animate="slide-right"] {
  opacity: 0;
  transform: translateX(var(--anim-distance));
}

[data-animate="zoom-in"],
[data-animate="scale-up"] {
  opacity: 0;
  transform: scale(0.84);
}

[data-animate="zoom-out"],
[data-animate="scale-down"] {
  opacity: 0;
  transform: scale(1.16);
}

[data-animate="rotate-in"] {
  opacity: 0;
  transform: rotate(-12deg) translateY(24px);
  transform-origin: center bottom;
}

[data-animate="rotate-left"] {
  opacity: 0;
  transform: rotate(-18deg) translateX(-24px);
}

[data-animate="rotate-right"] {
  opacity: 0;
  transform: rotate(18deg) translateX(24px);
}

[data-animate="flip-x"] {
  opacity: 0;
  transform: perspective(900px) rotateX(82deg);
  transform-origin: center bottom;
}

[data-animate="flip-y"] {
  opacity: 0;
  transform: perspective(900px) rotateY(82deg);
}

[data-animate="flip-z"] {
  opacity: 0;
  transform: perspective(900px) rotateZ(18deg) scale(0.9);
}

[data-animate="perspective"] {
  opacity: 0;
  transform: perspective(900px) translateZ(-120px) rotateX(12deg);
}

[data-animate="bounce-in"] {
  opacity: 0;
  transform: translateY(42px) scale(0.92);
}

[data-animate="skew-in"] {
  opacity: 0;
  transform: skewY(5deg) translateY(28px);
}

[data-animate="blur-in"] {
  opacity: 0;
  filter: blur(14px);
}

[data-animate="clip-up"] {
  opacity: 0;
  clip-path: inset(100% 0 0 0);
}

[data-animate="clip-left"] {
  opacity: 0;
  clip-path: inset(0 100% 0 0);
}

[data-animate="highlight"] {
  background-image: linear-gradient(transparent 60%, rgba(185, 139, 47, 0.34) 0);
  background-repeat: no-repeat;
  background-size: 0% 100%;
}

[data-animate].is-animated,
[data-animate-child].is-animated {
  opacity: 1;
  transform: translate3d(0, 0, 0) scale(1) rotate(0deg) skew(0deg);
  filter: none;
  clip-path: inset(0 0 0 0);
}

[data-animate="highlight"].is-animated {
  background-size: 100% 100%;
}

[data-animate="bounce-in"].is-animated {
  animation: key-bounce-in var(--local-duration) var(--local-delay) both;
}

[data-animate-child] {
  opacity: 0;
  transform: translateY(var(--anim-distance));
  transition: opacity var(--local-duration, 700ms) var(--anim-ease), transform var(--local-duration, 700ms) var(--anim-ease);
  transition-delay: var(--local-delay, 0ms);
}

/* --------------------------------------------------------------------------
   Text animation pieces created by test.js.
---------------------------------------------------------------------------- */
[data-animate="chars"],
[data-animate="words"],
[data-animate="typing"],
[data-animate="wave-text"],
[data-animate="scroll-highlight"] {
  opacity: 1;
}

.anim-char,
.anim-word {
  display: inline-block;
  opacity: 0;
  transform: translateY(0.85em);
  transition: opacity var(--local-duration, 650ms) ease, transform var(--local-duration, 650ms) var(--anim-ease), background-size var(--local-duration, 650ms) ease, color var(--local-duration, 650ms) ease;
  transition-delay: calc(var(--unit-index, 0) * var(--unit-stagger, 28ms) + var(--local-delay, 0ms));
}

.is-animated .anim-char,
.is-animated .anim-word {
  opacity: 1;
  transform: translateY(0);
}

[data-highlight="true"] .anim-char,
[data-highlight="true"] .anim-word,
.text-highlight-sweep {
  background-image: linear-gradient(transparent 62%, rgba(185, 139, 47, 0.42) 0);
  background-repeat: no-repeat;
  background-size: 0% 100%;
}

[data-highlight="true"].is-animated .anim-char,
[data-highlight="true"].is-animated .anim-word,
.text-highlight-sweep:hover {
  background-size: 100% 100%;
}

.scroll-highlight-line {
  --highlight-offset: 0%;
  display: block;
  width: fit-content;
  color: transparent;
  background-image: linear-gradient(90deg, #000000 0%, #000000 var(--highlight-offset), #00000042 var(--highlight-offset), #00000042 100%);
  background-clip: text;
  -webkit-background-clip: text;
  transition: --highlight-offset var(--local-duration, 900ms) var(--anim-ease);
  transition-delay: var(--line-delay, 0ms);
}

[data-animate="scroll-highlight"].is-animated .scroll-highlight-line {
  --highlight-offset: 100%;
}

[data-animate="wave-text"].is-animated .anim-char {
  animation: key-wave 900ms ease both;
  animation-delay: calc(var(--unit-index, 0) * var(--unit-stagger, 44ms));
}

.typing-caret::after {
  content: "|";
  display: inline-block;
  margin-left: 2px;
  animation: key-blink 900ms step-end infinite;
}

.text-blink {
  animation: key-blink 900ms step-end infinite;
}

.text-gradient-clip {
  color: transparent;
  background: linear-gradient(90deg, var(--anim-dark), var(--anim-accent), var(--anim-accent-2), var(--anim-dark));
  background-size: 220% 100%;
  background-clip: text;
  -webkit-background-clip: text;
  animation: key-gradient-shift 3s linear infinite;
}

/* --------------------------------------------------------------------------
   Counters and progress bars.
---------------------------------------------------------------------------- */
.counter {
  font-size: clamp(2rem, 5vw, 4rem);
  font-weight: 800;
}

.progress {
  width: 100%;
  height: 12px;
  overflow: hidden;
  border-radius: 999px;
  background: #e2e8f0;
}

.progress-fill,
[data-animate="progress"] {
  display: block;
  width: 100%;
  height: 100%;
  border-radius: inherit;
  background: linear-gradient(90deg, var(--anim-dark), var(--anim-accent));
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform var(--local-duration, 1000ms) var(--anim-ease), background-position var(--local-duration, 1000ms) var(--anim-ease);
}

.progress-fill.is-animated,
[data-animate="progress"].is-animated {
  transform: scaleX(var(--progress-ratio, 1));
}

.multi-step-progress {
  display: flex;
  gap: 6px;
}

.multi-step-progress span {
  flex: 1;
  height: 12px;
  border-radius: 999px;
  background: #e2e8f0;
  transition: background-color var(--local-duration, 800ms) ease, transform var(--local-duration, 800ms) ease;
  transform: scaleY(0.6);
}

.multi-step-progress.is-animated span.is-filled {
  background: var(--anim-accent);
  transform: scaleY(1);
}

.radial-progress {
  --progress-percent: 0%;
  width: 120px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 50%;
  background: conic-gradient(var(--anim-accent) 0%, var(--anim-accent) 0%, #e2e8f0 0%);
  transition: background var(--local-duration, 1000ms) ease;
}

.radial-progress.is-animated {
  background: conic-gradient(var(--anim-accent) 0%, var(--anim-accent) var(--progress-percent), #e2e8f0 var(--progress-percent));
}

.circle-progress {
  stroke-dasharray: 100;
  stroke-dashoffset: 100;
  transition: stroke-dashoffset var(--local-duration, 1000ms) var(--anim-ease);
}

.circle-progress.is-animated {
  stroke-dashoffset: calc(100 - var(--progress-value, 0));
}

/* --------------------------------------------------------------------------
   Hover/interactive animations.
---------------------------------------------------------------------------- */
.hover-scale {
  transition: transform 220ms ease;
}

.hover-scale:hover {
  transform: scale(1.06);
}

.hover-grow {
  transition: transform 220ms ease;
}

.hover-grow:hover {
  transform: scale(1.12);
}

.hover-shrink {
  transition: transform 220ms ease;
}

.hover-shrink:hover {
  transform: scale(0.94);
}

.hover-skew {
  transition: transform 240ms ease;
}

.hover-skew:hover {
  transform: skewX(-6deg);
}

.hover-color {
  transition: color 220ms ease, background-color 220ms ease, border-color 220ms ease;
}

.hover-color:hover {
  color: #fff;
  background: var(--anim-accent);
  border-color: var(--anim-accent);
}

.hover-gradient {
  background-size: 220% 100%;
  transition: background-position 350ms ease;
}

.hover-gradient:hover {
  background-position: 100% 0;
}

.hover-shadow {
  transition: box-shadow 240ms ease, transform 240ms ease;
}

.hover-shadow:hover {
  box-shadow: 0 18px 50px rgba(15, 23, 42, 0.16);
  transform: translateY(-2px);
}

.hover-glow {
  transition: box-shadow 240ms ease;
}

.hover-glow:hover {
  box-shadow: 0 0 0 4px rgba(185, 139, 47, 0.16), 0 0 32px rgba(185, 139, 47, 0.35);
}

.hover-rotate {
  transition: transform 240ms ease;
}

.hover-rotate:hover {
  transform: rotate(3deg);
}

.hover-flip {
  transform-style: preserve-3d;
  transition: transform 420ms ease;
}

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

.hover-bounce:hover {
  animation: key-bounce 560ms ease;
}

.hover-shake:hover {
  animation: key-shake 420ms ease;
}

.hover-wiggle:hover {
  animation: key-wiggle 520ms ease;
}

.hover-underline,
.hover-border-reveal {
  position: relative;
}

.hover-underline::after,
.hover-border-reveal::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: -3px;
  height: 2px;
  background: currentColor;
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 260ms ease;
}

.hover-underline:hover::after,
.hover-border-reveal:hover::after {
  transform: scaleX(1);
}

.btn-hover-slide {
  position: relative;
  overflow: hidden;
}

.btn-hover-slide .btn-label {
  display: inline-block;
  transition: transform 280ms var(--anim-ease);
}

.btn-hover-slide .btn-label-hover {
  position: absolute;
  left: 50%;
  top: 50%;
  white-space: nowrap;
  transform: translate(-50%, 130%);
}

.btn-hover-slide:hover .btn-label-default {
  transform: translateY(-150%);
}

.btn-hover-slide:hover .btn-label-hover {
  transform: translate(-50%, -50%);
}

.svg-stroke-animate path,
.svg-stroke-animate circle,
.svg-stroke-animate line,
.svg-stroke-animate polyline {
  stroke-dasharray: 1;
  stroke-dashoffset: 1;
  transition: stroke-dashoffset 800ms ease;
}

.svg-stroke-animate:hover path,
.svg-stroke-animate:hover circle,
.svg-stroke-animate:hover line,
.svg-stroke-animate:hover polyline {
  stroke-dashoffset: 0;
}

/* --------------------------------------------------------------------------
   Continuous/looping animations.
---------------------------------------------------------------------------- */
.loop-spin {
  animation: key-spin 8s linear infinite;
}

.loop-bounce {
  animation: key-bounce 1.8s ease-in-out infinite;
}

.loop-float {
  animation: key-float 5s ease-in-out infinite;
}

.loop-wiggle {
  animation: key-wiggle 1.2s ease-in-out infinite;
}

.loop-wave {
  animation: key-wave 1.5s ease-in-out infinite;
}

.loop-pulse {
  animation: key-pulse 1.8s ease-in-out infinite;
}

.loop-heartbeat {
  animation: key-heartbeat 1.5s ease-in-out infinite;
}

.loop-glow {
  animation: key-glow 2s ease-in-out infinite;
}

.loop-flicker {
  animation: key-flicker 1.8s linear infinite;
}

.loop-shimmer,
.loop-glint {
  position: relative;
  overflow: hidden;
}

.loop-shimmer::before,
.loop-glint::before {
  content: "";
  position: absolute;
  inset: 0;
  transform: translateX(-130%);
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.44), transparent);
  animation: key-shimmer 2.5s ease-in-out infinite;
  pointer-events: none;
}

@keyframes key-bounce-in {
  0% {
    opacity: 0;
    transform: translateY(42px) scale(0.92);
  }

  60% {
    opacity: 1;
    transform: translateY(-8px) scale(1.02);
  }

  100% {
    opacity: 1;
    transform: translateY(0) scale(1);
  }
}

@keyframes key-spin {
  to {
    transform: rotate(360deg);
  }
}

@keyframes key-bounce {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-12px);
  }
}

@keyframes key-float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-16px);
  }
}

@keyframes key-wiggle {

  0%,
  100% {
    transform: rotate(0);
  }

  25% {
    transform: rotate(-4deg);
  }

  75% {
    transform: rotate(4deg);
  }
}

@keyframes key-shake {

  0%,
  100% {
    transform: translateX(0);
  }

  25% {
    transform: translateX(-5px);
  }

  75% {
    transform: translateX(5px);
  }
}

@keyframes key-pulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 1;
  }

  50% {
    transform: scale(1.05);
    opacity: 0.82;
  }
}

@keyframes key-heartbeat {

  0%,
  28%,
  70%,
  100% {
    transform: scale(1);
  }

  14%,
  42% {
    transform: scale(1.12);
  }
}

@keyframes key-shimmer {
  100% {
    transform: translateX(130%);
  }
}

@keyframes key-glow {

  0%,
  100% {
    box-shadow: 0 0 0 rgba(185, 139, 47, 0);
  }

  50% {
    box-shadow: 0 0 32px rgba(185, 139, 47, 0.42);
  }
}

@keyframes key-flicker {

  0%,
  100% {
    opacity: 1;
  }

  45% {
    opacity: 0.58;
  }

  48% {
    opacity: 1;
  }

  52% {
    opacity: 0.45;
  }

  56% {
    opacity: 1;
  }
}

@keyframes key-wave {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(-0.5em);
  }
}

@keyframes key-blink {
  50% {
    opacity: 0;
  }
}

@keyframes key-gradient-shift {
  to {
    background-position: 220% 0;
  }
}

@media (prefers-reduced-motion: reduce) {

  *,
  *::before,
  *::after {
    animation: none !important;
    transition: none !important;
    transform: none !important;
  }
}

.transition-colors,
.transition-all {
  transition-property: all !important;
}

#strategies h2 .scroll-highlight-line,
#investor h2 .scroll-highlight-line,
#about h2 .scroll-highlight-line,
#leadership h2 .scroll-highlight-line,
.bg-dark h2 .scroll-highlight-line,
.text-white h2 .scroll-highlight-line,
.text-white h1 .scroll-highlight-line {
  background-image: linear-gradient(90deg, #ffffff 0%, #ffffff var(--highlight-offset), #ffffff42 var(--highlight-offset), #ffffff42 100%);
}

#about {
  background: linear-gradient(135deg, #0c2340 0%, #1a3a6e 55%, #1C4880 100%);
}

#about .text-on-surface-variant {
  color: #d3d3d3;
}

#leadership .bg-white\/90 {
  background: linear-gradient(135deg, #0c2340e7 0%, #1a3a6e 55%, #1C4880 100%) !important;
}

.text-lg {
  font-size: 1.35rem !important;
}

.bg-dark {
  background: linear-gradient(135deg, #0c2340 0%, #1a3a6e 55%, #1C4880 100%) !important;
}

.strategy-section.bg-dark .text-primary {
  color: #fff;
}

main {
  overflow: hidden;
}

.text-secondary {
  color: #B8881E !important;
}

.border-secondary-container {
  border-color: #B8881E !important;
}


[type='text']:focus,
input:where(:not([type])):focus,
[type='email']:focus,
[type='url']:focus,
[type='password']:focus,
[type='number']:focus,
[type='date']:focus,
[type='datetime-local']:focus,
[type='month']:focus,
[type='search']:focus,
[type='tel']:focus,
[type='time']:focus,
[type='week']:focus,
[multiple]:focus,
textarea:focus,
select:focus {
  --tw-ring-shadow: none !important;
  outline: none !important;

}

.collapsed-content {
  max-height: 225px;
  /* adjust height */
  overflow: hidden;
  position: relative;
}


.collapsed-content.expanded {
  max-height: 3000px;
}

.collapsed-content.expanded::after {
  display: none;
}

.read-more-btn {
  border-radius: 6px;
  cursor: pointer;
  color: #fff;
  line-height: 1;
  text-decoration: underline;
  height: auto;
}

.site-nav__logo {
  height: auto;
}

.site-nav__brand {
  flex: 0 0 110px;
}

.text-label-caps {
  text-transform: uppercase;
  font-size: 14px !important;
  /* display: inline-block !important;
  padding-bottom: 5px;
  border-bottom: 2px solid #b8881e; */
}

.golden-border {
  border-color: #B8881E !important;
}

.border-red {
  border-color: #cf3434;
}

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





body {
  overflow-x: hidden;
}

.custom-sidebar {
  position: fixed !important;
  right: 0px;
  height: 100vh;
}

.sidebar-transition {
  transition: transform 0.3s ease;
}

.active {
  border-color: #7d2629 !important;
  background: rgba(125, 38, 41, .08);
}

.active .material-symbols-outlined {
  color: #7d2629 !important;
}

/* HIGH CONTRAST */

.acc-high-contrast {
  filter: contrast(120%);
  background: #000 !important;
  color: #fff !important;
}

/* 
.acc-high-contrast a {
  color: yellow !important;
} */

/* INVERT */

.acc-invert {
  filter: invert(1) hue-rotate(180deg);
}

/* GRAYSCALE */

.acc-grayscale {
  filter: grayscale(100%);
}

/* READABLE FONT */

.acc-readable-font,
.acc-readable-font *:not([class*="material-symbols-"]) {
  font-family: Arial, Helvetica, sans-serif !important;
}

.acc-readable-font #acc-sidebar *:not([class*="material-symbols-"]) {
  font-family: 'Inter' !important;
}

.acc-high-contrast:not(.acc-grayscale) #acc-sidebar .bg-slate-200,
.acc-high-contrast:not(.acc-invert) #acc-sidebar .bg-slate-200 {
  background-color: rgb(207, 207, 207);
}

.acc-high-contrast:not(.acc-grayscale) #acc-sidebar .group.active .group-\[\.active\]\:bg-primary,
.acc-high-contrast:not(.acc-invert) #acc-sidebar .group.active .group-\[\.active\]\:bg-primary {
  background-color: rgb(15 23 42 / var(--tw-bg-opacity, 1));
}

/* HIGHLIGHT LINKS */

.acc-highlight-links a {
  /* text-decoration: underline !important; */
  outline: 2px solid;
}

/* HIGHLIGHT FOCUS */

.acc-highlight-focus *:focus {
  outline: 4px solid red !important;
  outline-offset: 2px;
}

/* PAUSE ANIMATIONS */

.acc-pause-animations *,
.acc-pause-animations *::before,
.acc-pause-animations *::after {
  animation: none !important;
  transition: none !important;
}

/* HIDE IMAGES */

.acc-hide-images img,
.acc-hide-images svg,
.acc-hide-images picture {
  visibility: hidden !important;
}

/* LARGE CURSOR */

.acc-large-cursor,
.acc-large-cursor * {
  cursor: url(../images/cursor.svg) 0 0, auto !important;
}

.accessibility-Options-body {
  max-height: calc(100vh - 70px);
  overflow: auto;
}

[data-animate].is-animated,
[data-animate-child].is-animated {
  clip-path: none;
}

.site-footer__groups {
  grid-template-columns: repeat(2, minmax(8rem, 1fr));
}

.site-footer__groups .site-footer__group:last-child {
  display: none;
}

#pageLoader {
  position: fixed;
  inset: 0;
  height: 100%;
  width: 100%;
  z-index: 999;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #fff;
  max-height: 100vh;

}

#pageLoader img {
  max-width: 200px;
}
.overflow-hidden{
  overflow: hidden !important;
}
#backToTop {
  position: fixed;
  bottom: 32px;
  right: 80px;

  opacity: 0;
  visibility: hidden;
  transform: translateY(10px);

  transition: opacity 0.3s ease, transform 0.3s ease, visibility 0.3s;

  z-index: 9;
}

#backToTop.show {
  opacity: 1;
  visibility: visible;
  transform: translateY(0);
}
aside{
  z-index: 99;
}
#backToTop:hover {
    transform: scale(1.1);
}
.grayscale-1{
  filter: grayscale(1) !important;
}
.hover-filter-none:hover{
  filter: none !important;
}