.elementor-1107 .elementor-element.elementor-element-388c7c5{--display:flex;--flex-direction:column;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--justify-content:center;--align-items:center;--gap:0px 0px;--row-gap:0px;--column-gap:0px;--overlay-opacity:0.1;--padding-top:50px;--padding-bottom:50px;--padding-left:20px;--padding-right:20px;}.elementor-1107 .elementor-element.elementor-element-388c7c5::before, .elementor-1107 .elementor-element.elementor-element-388c7c5 > .elementor-background-video-container::before, .elementor-1107 .elementor-element.elementor-element-388c7c5 > .e-con-inner > .elementor-background-video-container::before, .elementor-1107 .elementor-element.elementor-element-388c7c5 > .elementor-background-slideshow::before, .elementor-1107 .elementor-element.elementor-element-388c7c5 > .e-con-inner > .elementor-background-slideshow::before, .elementor-1107 .elementor-element.elementor-element-388c7c5 > .elementor-motion-effects-container > .elementor-motion-effects-layer::before{background-color:#F7941E;--background-overlay:'';}.elementor-widget-heading .elementor-heading-title{font-family:var( --e-global-typography-primary-font-family ), Sans-serif;font-weight:var( --e-global-typography-primary-font-weight );color:var( --e-global-color-primary );}.elementor-1107 .elementor-element.elementor-element-769d058{width:var( --container-widget-width, 100% );max-width:100%;margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;--container-widget-width:100%;--container-widget-flex-grow:0;text-align:center;}.elementor-1107 .elementor-element.elementor-element-769d058.elementor-element{--align-self:flex-start;--flex-grow:0;--flex-shrink:0;}.elementor-1107 .elementor-element.elementor-element-769d058 .elementor-heading-title{font-family:"DM Serif Display", Sans-serif;font-size:56px;font-weight:400;color:#000000;}.elementor-1107 .elementor-element.elementor-element-347145af{--display:flex;--padding-top:100px;--padding-bottom:100px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-1107 .elementor-element.elementor-element-769d058{width:var( --container-widget-width, 100% );max-width:100%;--container-widget-width:100%;--container-widget-flex-grow:0;}.elementor-1107 .elementor-element.elementor-element-347145af{--justify-content:center;--padding-top:100px;--padding-bottom:100px;--padding-left:10px;--padding-right:10px;}}@media(min-width:768px){.elementor-1107 .elementor-element.elementor-element-388c7c5{--content-width:1200px;}.elementor-1107 .elementor-element.elementor-element-347145af{--content-width:1200px;}}@media(max-width:767px){.elementor-1107 .elementor-element.elementor-element-388c7c5{--min-height:200px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-1107 .elementor-element.elementor-element-769d058{margin:0px 2px calc(var(--kit-widget-spacing, 0px) + 2px) 0px;text-align:center;}.elementor-1107 .elementor-element.elementor-element-769d058.elementor-element{--align-self:flex-start;}.elementor-1107 .elementor-element.elementor-element-769d058 .elementor-heading-title{font-size:33px;}}/* Start custom CSS for shortcode, class: .elementor-element-dbe0d0c */.cm-glossary {
  --jp-navy: #031f3a;
  --jp-gold: #f3a126;
  --jp-gold-soft: #f7c97b;
  --jp-text: #1d2430;
  --jp-muted: #6e7681;
  --jp-border: #e8e1d8;
  --jp-surface: #ffffff;
  --jp-surface-alt: #faf7f2;
  --jp-shadow: 0 14px 40px rgba(3, 31, 58, 0.08);
}

.ln-letters a:hover,
.ln-letters a:focus,
.ln-letters a:active {
  transform: none !important;
  top: 0 !important;
  margin-top: 0 !important;
  transition: none !important;
}

.cm-glossary #glossaryList-nav {
  position: relative;
}

.cm-glossary #glossaryList-nav .ln-letter-count,
.cm-glossary #glossaryList-nav .ln-letters:hover + .ln-letter-count {
  display: none !important;
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}


.cm-glossary .glossary-container {
  max-width: 1200px;
  margin: 0 auto;
}

.cm-glossary #glossaryList-nav {
  margin: 0 0 36px;
  padding: 22px 24px;
  background: #fff;
  border: 1px solid var(--jp-border);
  border-radius: 16px;
  position: relative;
}

.cm-glossary #glossaryList-nav .ln-letters {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.cm-glossary #glossaryList-nav .ln-letters a {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 42px;
  height: 42px;
  padding: 0 14px;
  border: 1px solid var(--jp-border);
  border-radius: 16px;
  background: #fff;
  color: var(--jp-navy);
  font-size: 13px;
  font-weight: 600;
  line-height: 1;
  text-decoration: none;
}

.cm-glossary #glossaryList-nav .ln-letters a.ln-selected {
  background: var(--jp-gold);
  border-color: var(--jp-gold);
  color: #fff;
}

.cm-glossary #glossaryList-nav .ln-letters a.ln-disabled {
  opacity: 0.35;
  pointer-events: none;
}

.cm-glossary .glossaryList {
  list-style: none;
  margin: 0;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 18px;
}

.cm-glossary .glossaryList > li {
  margin: 0;
  padding: 0;
}

.cm-glossary .glossaryList > li.ln-no-match {
  grid-column: 1 / -1;
  padding: 24px;
  text-align: center;
  border: 1px solid var(--jp-border);
  border-radius: 16px;
  background: var(--jp-surface-alt);
  color: var(--jp-muted);
}

.cm-glossary .glossaryList .glossaryLink {
  display: block;
  position: relative;
  height: 100%;
  min-height: 88px;
  padding: 24px 52px 24px 24px;
  background: #fff;
  border: 1px solid var(--jp-border);
  border-radius: 16px;
  color: var(--jp-navy);
  text-decoration: none;
  overflow: hidden;
  transition:
    transform 0.25s ease,
    box-shadow 0.25s ease,
    border-color 0.25s ease,
    background 0.25s ease;
}

.cm-glossary .glossaryList .glossaryLink::after {
  content: "→";
  position: absolute;
  right: 20px;
  top: 50%;
  transform: translateY(-50%);
  color: var(--jp-gold);
  font-size: 24px;
  font-weight: 700;
  line-height: 1;
  opacity: 1;
  pointer-events: none;
  transition: transform 0.25s ease;
}

.cm-glossary .glossaryList .glossaryLink:hover,
.cm-glossary .glossaryList .glossaryLink:focus {
  transform: translateY(-4px);
  border-color: rgba(243, 161, 38, 0.55);
  background: linear-gradient(180deg, #fff 0%, #fffaf2 100%);
  color: var(--jp-navy);
}

.cm-glossary .glossaryList .glossaryLink:hover::after,
.cm-glossary .glossaryList .glossaryLink:focus::after {
  transform: translateY(-50%) translateX(3px);
}

.cm-glossary .glossaryList .glossaryLink span[itemprop="name"] {
  display: block;
  margin: 0;
  padding: 0;
  color: var(--jp-navy);
  font-family: "DM Serif Display", Sans-serif !important;
  font-size: 21px;
  font-weight: 400 !important;
  line-height: 1.35;
  letter-spacing: -0.01em;
  word-break: break-word;
  white-space: normal;
}

body #tt,
body div#tt {
  max-width: 420px !important;
  width: 420px !important;
  background: #fff !important;
  border: 1px solid var(--jp-border) !important;
  border-radius: 16px !important;
  box-shadow: 0 20px 50px rgba(3, 31, 58, 0.16) !important;
  overflow: hidden !important;
  opacity: 1 !important;
  color: var(--jp-text) !important;
  z-index: 999999 !important;
}

body #tt #ttcont,
body div#tt #ttcont {
  display: block !important;
  width: 100% !important;
  background: #fff !important;
  border: 0 !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  padding: 0 !important;
  color: var(--jp-text) !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body #tt *,
body div#tt * {
  opacity: 1 !important;
  visibility: visible !important;
  text-shadow: none !important;
}

body #tt #ttcont .glossaryItemTitle,
body #tt #ttcont div.glossaryItemTitle,
body div#tt #ttcont .glossaryItemTitle,
body div#tt #ttcont div.glossaryItemTitle {
  display: block !important;
  margin: 0 !important;
  padding: 18px 22px 10px !important;
  background: #fff !important;
  color: var(--jp-navy) !important;
  font-family: Georgia, "Times New Roman", serif !important;
  font-size: 24px !important;
  line-height: 1.2 !important;
  font-weight: 700 !important;
  border-top: 3px solid var(--jp-gold) !important;
  border-bottom: 1px solid #f4ede4 !important;
}

body #tt #ttcont .glossaryItemBody,
body #tt #ttcont .glossaryItemDescription,
body #tt #ttcont .glossaryContent,
body div#tt #ttcont .glossaryItemBody,
body div#tt #ttcont .glossaryItemDescription,
body div#tt #ttcont .glossaryContent {
  display: block !important;
  padding: 16px 22px 20px !important;
  background: #fff !important;
  color: var(--jp-text) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

body #tt #ttcont p,
body #tt #ttcont span,
body #tt #ttcont div:not(.glossaryItemTitle):not(.glossaryItemBody):not(.glossaryItemDescription):not(.glossaryContent),
body #tt #ttcont li,
body div#tt #ttcont p,
body div#tt #ttcont span,
body div#tt #ttcont div:not(.glossaryItemTitle):not(.glossaryItemBody):not(.glossaryItemDescription):not(.glossaryContent),
body div#tt #ttcont li {
  color: var(--jp-text) !important;
  font-size: 15px !important;
  line-height: 1.7 !important;
}

body #tt #ttcont p,
body div#tt #ttcont p {
  margin: 0 0 12px !important;
}

body #tt #ttcont ul,
body #tt #ttcont ol,
body div#tt #ttcont ul,
body div#tt #ttcont ol {
  margin: 0 0 12px 18px !important;
  padding: 0 !important;
}

body #tt #ttcont a,
body div#tt #ttcont a {
  color: var(--jp-gold) !important;
  text-decoration: none !important;
}

body #tt #ttcont a:hover,
body div#tt #ttcont a:hover {
  text-decoration: underline !important;
}

body #tt #ttcont img,
body div#tt #ttcont img {
  display: block !important;
  max-width: 100% !important;
  height: auto !important;
  margin: 0 0 14px !important;
  border-radius: 10px !important;
}

@media (max-width: 1024px) {
  .cm-glossary .glossaryList {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }

  .cm-glossary .glossaryList .glossaryLink span[itemprop="name"] {
    font-size: 19px;
  }
  
  body #tt-btn-close {
    padding: 20px;
    }
}

@media (max-width: 767px) {
  .cm-glossary #glossaryList-nav {
    padding: 18px 16px;
    margin-bottom: 24px;
    border-radius: 14px;
  }

  .cm-glossary #glossaryList-nav .ln-letters {
    gap: 8px;
  }

  .cm-glossary #glossaryList-nav .ln-letters a {
    min-width: 38px;
    height: 38px;
    padding: 0 12px;
    font-size: 12px;
  }

  .cm-glossary .glossaryList {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .cm-glossary .glossaryList .glossaryLink {
    min-height: 80px;
    padding: 20px 46px 20px 20px;
    border-radius: 14px;
  }

  .cm-glossary .glossaryList .glossaryLink::before {
    left: 18px;
    width: calc(100% - 36px);
  }

  .cm-glossary .glossaryList .glossaryLink::after {
    right: 16px;
    font-size: 21px;
  }

  .cm-glossary .glossaryList .glossaryLink span[itemprop="name"] {
    font-size: 18px;
    line-height: 1.4;
  }

  body #tt,
  body div#tt {
    width: calc(100vw - 24px) !important;
    max-width: calc(100vw - 24px) !important;
  }

  body #tt #ttcont .glossaryItemTitle,
  body #tt #ttcont div.glossaryItemTitle,
  body div#tt #ttcont .glossaryItemTitle,
  body div#tt #ttcont div.glossaryItemTitle {
    font-size: 21px !important;
    padding: 16px 18px 10px !important;
  }

  body #tt #ttcont .glossaryItemBody,
  body #tt #ttcont .glossaryItemDescription,
  body #tt #ttcont .glossaryContent,
  body div#tt #ttcont .glossaryItemBody,
  body div#tt #ttcont .glossaryItemDescription,
  body div#tt #ttcont .glossaryContent {
    padding: 14px 18px 18px !important;
  }
  
  body #tt-btn-close {
    padding: 20px;
}
  
}/* End custom CSS */