:root {
  --halcyon-floral-white: #fff9f0;
  --halcyon-rich-black: #001524;
  --halcyon-metalic-gold: #d4af37;
  --halcyon-light-grey: #eeeeee;
  --halcyon-dark-grey: #636363;
  --halcyon-grey: #707070;
  --halcyon-yellow: #ffe9a1;
  --halcyon-orange: #f07246;
  --halcyon-transparent-rich-black: rgba(0, 21, 36, 0.95);
}

@font-face {
  font-family: Baskerville;
  src: url(../fonts/baskerville/Baskervville-Medium.ttf);
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: Baskerville;
  src: url(../fonts/baskerville/Baskervville-MediumItalic.ttf);
  font-weight: normal;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Baskerville;
  src: url(../fonts/baskerville/Baskervville-Bold.ttf);
  font-weight: bold;
  font-display: swap;
}

@font-face {
  font-family: Baskerville;
  src: url(../fonts/baskerville/Baskervville-BoldItalic.ttf);
  font-weight: bold;
  font-style: italic;
  font-display: swap;
}

@font-face {
  font-family: Manrope;
  src: url(../fonts/manrope//Manrope-Regular.ttf);
  font-weight: normal;
  font-display: swap;
}

@font-face {
  font-family: Manrope;
  src: url(../fonts/manrope/Manrope-Bold.ttf);
  font-weight: bold;
  font-display: swap;
}

body *:not(#wpadminbar *):not(#wpadminbar),
body *:not(#wpadminbar *):not(#wpadminbar) .body-font {
  font-family: "Manrope", sans-serif;
  color: var(--halcyon-rich-black);
}

body *:not(#wpadminbar *):not(#wpadminbar) h1,
body *:not(#wpadminbar *):not(#wpadminbar) h2,
body *:not(#wpadminbar *):not(#wpadminbar) h3,
body *:not(#wpadminbar *):not(#wpadminbar) h4,
body *:not(#wpadminbar *):not(#wpadminbar) h5,
body *:not(#wpadminbar *):not(#wpadminbar) h6 {
  font-family: "Baskerville", serif;
  line-height: 1 !important;
  margin-bottom: 1.5rem;
  color: var(--halcyon-rich-black);
}

.text-white h1,
.text-white h2,
.text-white h3,
.text-white h4,
.text-white h5,
.text-white h6,
.text-white p,
.text-white li,
.text-white strong,
.text-white b {
  color: #fff !important;
}

.bg-rich-black {
  background-color: var(--halcyon-rich-black) !important;
}

.bg-transparent-rich-black {
  background-color: var(--halcyon-transparent-rich-black) !important;
}

.bg-floral-white {
  background-color: var(--halcyon-floral-white) !important;
}

.col-metalic-gold {
  color: var(--halcyon-metalic-gold) !important;
}

.col-grey {
  color: var(--halcyon-grey) !important;
}

.col-dark-grey {
  color: var(--halcyon-dark-grey) !important;
}

.col-orang,
.col-orange * {
  color: var(--halcyon-orange) !important;
}

.border-metalic-gold {
  border-color: var(--halcyon-metalic-gold) !important;
}

.halcyon-header-logo,
.halcyon-footer-logo {
  width: 210px;
  height: auto;
  max-width: 100%;
}

header .menu-item {
  padding: 0 0 0 2.5rem;
}

header .menu-item a {
  text-decoration: none !important;
  color: var(--halcyon-rich-black);
}

.home header .menu-item a {
  color: #fff !important;
}

header .menu-item.current-menu-item a,
.home header .menu-item.current-menu-item a {
  color: var(--cte-green) !important;
}

header .menu-item a:hover,
.footer-menu a:hover {
  color: var(--halcyon-metalic-gold) !important;
}

.btn,
input.gform_button.button {
  padding: 14px 21px;
  border: 2px solid;
  text-transform: uppercase;
  color: #fff !important;
  background-color: var(--halcyon-metalic-gold);
  border-color: var(--halcyon-metalic-gold);
  border-radius: 3px !important;
  font-weight: bold !important;
  letter-spacing: 1.65px !important;
  font-size: 13px !important;
}

input.gform_button.button {
  text-transform: uppercase !important;
  color: #fff !important;
  background-color: var(--halcyon-metalic-gold) !important;
  border-color: var(--halcyon-metalic-gold) !important;
  box-shadow: none !important;
}

.btn.hollow {
  background-color: transparent !important;
  color: var(--halcyon-metalic-gold) !important;
}

.btn:hover {
  border-color: var(--halcyon-rich-black) !important;
  color: var(--halcyon-rich-black) !important;
}

.text-white .btn:hover {
  border-color: #fff !important;
  color: #fff !important;
}

.bg-cover {
  background-size: cover !important;
  background-repeat: no-repeat !important;
  background-position: center center !important;
}

.parallax-section {
  position: relative;
  overflow: hidden;
}

.parallax-section img.parallax-img,
.parallax-section .parallax-img img {
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 120%;
  object-fit: cover;
  transform: translateY(-50%);
  z-index: 0;
  will-change: transform;
}

.parallax-section * {
  z-index: 1;
}

.img-fill-container {
  position: relative;
  padding-top: 75%;
  background-color: var(--halcyon-dark-grey);
  overflow: hidden;
  border: none !important;
}

.img-fill-container img,
.img-fill-container picture {
  object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.aspect-ratio-4-3 {
  padding-top: 75%;
}

.aspect-ratio-3-2 {
  padding-top: 66.6667%;
}

.aspect-ratio-16-9 {
  padding-top: 56.25%;
}

.aspect-ratio-2-1 {
  padding-top: 50%;
}

.aspect-ratio-5-4 {
  padding-top: 80%;
}

.aspect-ratio-21-9 {
  padding-top: 42.857%;
}

.aspect-ratio-1-1,
.recursive-aspect-ratio-1-1 .img-fill-container {
  padding-top: 100% !important;
}

.img-txt-split-element:nth-of-type(even) .row,
.full-bleed-flip .row {
  flex-direction: row-reverse;
}

.how-it-works-content-box {
  max-width: 700px;
}

#home-how-it-works ul {
  max-width: 520px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 0 !important;
}

.h-icon-list ul {
  list-style-type: none;
  padding-left: 0 !important;
}
.h-icon-list ul li {
  padding: 0.5rem 0 0.5rem 28px;
  position: relative;
}

.h-icon-list ul li::before {
  content: "";
  position: absolute;
  top: 0.75rem;
  left: 0;
  width: 21px;
  height: 21px;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/icons/h-icon.png");
}
.columned-list ul {
  columns: 2;
  -webkit-columns: 2;
  -moz-columns: 2;
  margin: 2rem auto;
  column-gap: 1rem;
}
.columned-list-3 ul {
  columns: 3;
  -webkit-columns: 3;
  -moz-columns: 3;
}
.columned-list ul li {
  break-inside: avoid;
  -webkit-column-break-inside: avoid;
  page-break-inside: avoid;
}

.icon-placeholder {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 72px;
  height: 72px;
  border-radius: 100%;
  background-color: var(--halcyon-metalic-gold);
  margin-bottom: 1rem;
}

.post-card-link {
  color: var(--halcyon-metalic-gold) !important;
  text-decoration: none;
  text-transform: capitalize;
  font-weight: bold;
}

.strapline {
  font-weight: bold;
  text-transform: uppercase;
  color: var(--halcyon-metalic-gold) !important;
  letter-spacing: 4.5px;
  font-size: 15px;
  font-family: "Baskerville", serif !important;
}

.page-hero,
.img-section {
  position: relative;
}

.img-present-in-hero.page-hero::after,
.img-section::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 128px;
  background-color: #fff;
  z-index: 0;
}
.page-hero .hero-section-inner,
.img-section .page-section-inner {
  position: relative;
  z-index: 1;
}

.cta-section {
  background-position: center bottom;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/backgrounds/cta-section-bg.png");
}
.full-bleed-col {
  position: relative;
}
.full-bleed-col .full-bleed-col-img {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 50vw;
  height: 100%;
  background-color: var(--halcyon-grey);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  min-height: 100%;
}

.full-bleed-flip .full-bleed-col .full-bleed-col-img,
.full-bleed-flip .parallax-section .parallax-img {
  left: auto;
  right: 0;
}

.full-bleed-col > * {
  position: relative;
  z-index: 1;
}

.full-bleed-section {
  position: relative;
  overflow: hidden;
}

.circular-list-item {
  position: relative;
  padding-left: 30px;
}

.circular-list-item::before {
  content: "";
  position: absolute;
  top: 2px;
  left: 0;
  width: 18px;
  height: 18px;
  background-position: left top;
  background-repeat: no-repeat;
  background-size: contain;
  background-image: url("../images/icons/circular-list-item-icon.svg");
}

.single-hero-section .hero-section-inner {
  margin-bottom: 100px;
}
.single-featured-image {
  margin-top: -100px;
}

.single-meta-col {
  position: relative;
}

.single-meta-col::after {
  content: "";
  width: 72px;
  height: 2px;
  background-color: var(--halcyon-light-grey);
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-50%, -1px);
}

.post-card-wide-link {
  text-decoration: none;
}
.post-card-wide-link:hover {
  text-decoration: underline;
}

.footer-heading {
  font-size: 16px;
  color: var(--halcyon-grey) !important;
  text-transform: capitalize;
}

.footer-menu {
  padding-left: 0 !important;
  list-style: none;
}

.footer-menu li {
  margin: 0.5rem 0;
  padding: 0 !important;
}

.footer-menu a {
  text-decoration: none;
  text-transform: capitalize;
}

.footer-meta-row a {
  text-decoration: none;
}

.post-card-meta-item {
  color: var(--halcyon-grey) !important;
  line-height: 1;
  font-size: 15px;
  line-height: 1;
}
.post-card-meta-item::before {
  content: "";
  width: 15px;
  height: 15px;
  display: inline-block;
  vertical-align: middle;
  margin-right: 0.4rem;
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
}
.post-card-meta-item-date::before {
  background-image: url(../images/icons/calendar-grey.svg);
}

.post-card-meta-item-read-time::before {
  background-image: url(../images/icons/clock-grey.svg);
}

.navbar-toggler {
  padding: 0 4px !important;
  position: relative;
  width: 36px;
  height: 36px;
  overflow: hidden;
  border-radius: 0.25rem;
  outline: none !important;
  box-shadow: none !important;
  transition: all 0.4s ease;
  border: none !important;
}

.collapsed .icon-bar {
  width: 100%;
  opacity: 1;
}

.collapsed .icon-bar:nth-of-type(2) {
  opacity: 1;
  width: 65%;
}

.icon-bar:nth-of-type(2) {
  width: 100%;
  margin: 5px 0;
  opacity: 1 !important;
}

.icon-bar {
  border-radius: 3px;
  transition: all 0.4s ease;
  background-color: var(--halcyon-metalic-gold);
  transform-origin: center center;
  width: 0%;
  height: 3px;
  display: block;
  opacity: 0;
}

.icon-txt-element {
  max-width: 360px;
  margin-left: auto;
  margin-right: auto;
}

ul li {
  padding: 0.42rem 0;
}

ul li::marker {
  color: var(--halcyon-metalic-gold);
}

.contact-detail-single-section a {
  text-decoration: none;
}

.contact-details-section,
.contact-details-section * {
  border-color: var(--halcyon-metalic-gold) !important;
}

.post-card a:hover h3 {
  text-decoration: underline;
  text-decoration-color: var(--halcyon-rich-black);
}

.default-page-content-wrapper h2,
.single-body-section h2 {
  padding-top: 1.5rem !important;
}
.single-body-section h2 {
  margin-bottom: 0.85rem !important;
}
.disclaimer-box {
  background-color: #fff9f0;
  border: 1px solid #ffe1d6;
}

.disclaimer-box * {
  color: #d83b37 !important;
}

.disclaimer-box .btn {
  background-color: #fff1db !important;
  border-color: #fff1db !important;
  font-weight: bold !important;
}
.disclaimer-box .btn:hover {
  background-color: #d83b37 !important;
  border-color: #d83b37 !important;
  color: #fff1db !important;
}

.footer-meta-row p {
  font-size: 14px !important;
}

.footer-disclaimer a {
  text-decoration: underline;
}

span.gfield_required {
  color: var(--halcyon-orange) !important;
}

.gfield_validation_message {
  font-style: italic !important;
}

.gform_confirmation_message {
  font-style: italic !important;
  font-weight: bold !important;
}

.cmplz-header *,
.cmplz-message,
a.cmplz-link {
  color: #fff !important;
}

.cmplz-btn {
  text-transform: uppercase !important;
  font-weight: 700 !important;
}

.cmplz-message {
  text-align: center;
}
