.elementor-109 .elementor-element.elementor-element-4390f57c{--display:flex;--margin-top:-11px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;}.elementor-109 .elementor-element.elementor-element-19117b51{--display:flex;}.elementor-109 .elementor-element.elementor-element-6bdf1aa{--display:flex;}.elementor-109 .elementor-element.elementor-element-5faeb2cc{--display:flex;}.elementor-109 .elementor-element.elementor-element-5f7b6903{--display:flex;}.elementor-widget-form .elementor-field-group > label, .elementor-widget-form .elementor-field-subgroup label{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group > label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{color:var( --e-global-color-text );font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field{color:var( --e-global-color-text );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__buttons__wrapper__button-next{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-button[type="submit"]{background-color:var( --e-global-color-accent );}.elementor-widget-form .e-form__buttons__wrapper__button-previous{background-color:var( --e-global-color-accent );}.elementor-widget-form .elementor-message{font-family:var( --e-global-typography-text-font-family ), Sans-serif;font-weight:var( --e-global-typography-text-font-weight );line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form{--e-form-steps-indicator-inactive-primary-color:var( --e-global-color-text );--e-form-steps-indicator-active-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-completed-primary-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-color:var( --e-global-color-accent );--e-form-steps-indicator-progress-background-color:var( --e-global-color-text );--e-form-steps-indicator-progress-meter-color:var( --e-global-color-text );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-family:var( --e-global-typography-accent-font-family ), Sans-serif;font-size:var( --e-global-typography-accent-font-size );font-weight:var( --e-global-typography-accent-font-weight );text-transform:var( --e-global-typography-accent-text-transform );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-109 .elementor-element.elementor-element-f6312f4{width:var( --container-widget-width, 39% );max-width:39%;--container-widget-width:39%;--container-widget-flex-grow:0;--e-form-steps-indicators-spacing:20px;--e-form-steps-indicator-padding:30px;--e-form-steps-indicator-inactive-secondary-color:#ffffff;--e-form-steps-indicator-active-secondary-color:#ffffff;--e-form-steps-indicator-completed-secondary-color:#ffffff;--e-form-steps-divider-width:1px;--e-form-steps-divider-gap:10px;}.elementor-109 .elementor-element.elementor-element-f6312f4.elementor-element{--align-self:center;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-group{padding-right:calc( 10px/2 );padding-left:calc( 10px/2 );margin-bottom:10px;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-form-fields-wrapper{margin-left:calc( -10px/2 );margin-right:calc( -10px/2 );margin-bottom:-10px;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-group.recaptcha_v3-bottomleft, .elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-group.recaptcha_v3-bottomright{margin-bottom:0;}body.rtl .elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-labels-inline .elementor-field-group > label{padding-left:0px;}body:not(.rtl) .elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-labels-inline .elementor-field-group > label{padding-right:0px;}body .elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-labels-above .elementor-field-group > label{padding-bottom:0px;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-type-html{padding-bottom:0px;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-group .elementor-field:not(.elementor-select-wrapper){background-color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-field-group .elementor-select-wrapper select{background-color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .e-form__buttons__wrapper__button-next{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-button[type="submit"]{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-button[type="submit"] svg *{fill:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .e-form__buttons__wrapper__button-previous{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .e-form__buttons__wrapper__button-next:hover{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-button[type="submit"]:hover{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .elementor-button[type="submit"]:hover svg *{fill:#ffffff;}.elementor-109 .elementor-element.elementor-element-f6312f4 .e-form__buttons__wrapper__button-previous:hover{color:#ffffff;}.elementor-109 .elementor-element.elementor-element-47c7c56d{--display:flex;}@media(max-width:975px){.elementor-widget-form .elementor-field-group > label{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}@media(max-width:767px){.elementor-widget-form .elementor-field-group > label{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-type-html{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-field-group .elementor-field, .elementor-widget-form .elementor-field-subgroup label{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .elementor-button{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .elementor-message{line-height:var( --e-global-typography-text-line-height );}.elementor-widget-form .e-form__indicators__indicator, .elementor-widget-form .e-form__indicators__indicator__label{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}.elementor-widget-form .e-form__indicators__indicator__progress__meter{font-size:var( --e-global-typography-accent-font-size );letter-spacing:var( --e-global-typography-accent-letter-spacing );}}/* Start custom CSS for container, class: .elementor-element-4390f57c *//* index.html */
:root {  --cream: #f2eadf;  --cream-deep: #e7dccd;  --wood: #8a6946;  --wood-deep: #6d5237;  --ink: #171411;  --ink-soft: #3e3730;  --line: rgba(44, 34, 24, 0.14);  --panel: rgba(247, 242, 234, 0.95);  --panel-edge: rgba(255,255,255,0.42);  --shadow-soft: 0 18px 46px rgba(0,0,0,0.12);  --shadow-subtle: 0 10px 28px rgba(0,0,0,0.10);}
*, ::before, ::after { box-sizing: border-box; }
html, body {  margin: 0;  padding: 0;  font-family: "Libre Baskerville", serif;  background: #efe6d9 !important;  color: var(--ink);}
body {  display: flex;  flex-direction: column;  min-height: 100vh;}
.hero-wrapper {  position: relative;  height: 72vh;  min-height: 620px;  max-height: 780px;  overflow: hidden;  z-index: 2;  background: #ddd3c5;}
.hero {  position: absolute;  inset: 0;  overflow: hidden;}
.carousel {  position: absolute;  inset: 0;}
.slide {  position: absolute;  inset: 0;  opacity: 0;  visibility: hidden;  transition: opacity 1.1s ease;}
.slide.active {  opacity: 1;  visibility: visible;  z-index: 10;}
.slide::before {  content: "";  position: absolute;  inset: 0;  z-index: 1;  background:    linear-gradient(90deg, rgba(14,10,7,0.62) 0%, rgba(14,10,7,0.40) 34%, rgba(14,10,7,0.16) 62%, rgba(14,10,7,0.08) 100%),    linear-gradient(180deg, rgba(0,0,0,0.12) 0%, rgba(0,0,0,0.08) 100%);}
.slide-bg {  position: absolute;  inset: 0;  background-size: cover;  background-position: center;  transform: scale(1.04);  transition: transform 12s ease;  filter: saturate(0.95) contrast(1.02) brightness(0.92);}
.slide.active .slide-bg {  transform: scale(1);}
.slide-content {  position: absolute;  inset: 0;  display: flex;  align-items: center;  justify-content: flex-start;  z-index: 2;  pointer-events: none;}
.slide-text {  pointer-events: all;  position: relative;  width: min(84vw, 520px);  margin-left: 7vw;  padding: 36px 36px 32px;  background: var(--panel);  border: 1px solid rgba(255,255,255,0.35);  box-shadow: var(--shadow-soft);  border-radius: 0;  overflow: hidden;  transform: scale(0.92);  transform-origin: left center;}
.slide-text::before {  content: "";  position: absolute;  inset: 0 auto 0 0;  width: 6px;  background: linear-gradient(180deg, #b18a60 0%, var(--wood) 100%);}
.hero-overline {  display: inline-block;  margin: 0 0 16px;  padding-left: 16px;  font-size: 0.72rem;  font-weight: 700;  letter-spacing: 0.16em;  text-transform: uppercase;  color: #5f4a34;}
.slide-text h1 {  font-family: "Libre Baskerville", serif;  font-size: clamp(2.2rem, 6.1vw, 3.55rem);  font-weight: 700;  line-height: 1.02;  letter-spacing: -0.035em;  margin: 0 0 16px;  color: var(--ink);  max-width: 11ch;}
.hero-rule {  width: 64px;  height: 1px;  background: rgba(63, 49, 35, 0.26);  margin: 0 0 22px;}
.slide-text p {  font-size: clamp(0.96rem, 1.85vw, 1.06rem);  line-height: 1.66;  margin: 0 0 24px;  color: var(--ink-soft);  max-width: 34ch;}
.hero-actions {  display: flex;  flex-wrap: wrap;  gap: 10px;}
.cta,.cta-secondary {  display: inline-flex;  align-items: center;  justify-content: center;  min-height: 50px;  padding: 13px 22px;  text-decoration: none;  font-size: 0.86rem;  font-weight: 700;  letter-spacing: 0.06em;  transition: background 0.28s ease, color 0.28s ease, border-color 0.28s ease, transform 0.28s ease, box-shadow 0.28s ease;}
.cta {  background: var(--wood);  color: #fff;  box-shadow: 0 14px 30px rgba(109,82,55,0.22);}
.cta:hover,.cta:focus-visible {  background: var(--wood-deep);  transform: translateY(-2px);}
.cta-secondary {  background: transparent;  color: var(--ink);  border: 1px solid rgba(44,34,24,0.18);}
.cta-secondary:hover,.cta-secondary:focus-visible {  background: rgba(138,105,70,0.06);  border-color: rgba(44,34,24,0.28);  transform: translateY(-2px);}
.hero-note {  position: absolute;  right: clamp(26px, 3vw, 46px);  bottom: clamp(24px, 3vw, 36px);  z-index: 20;  padding: 14px 18px;  background: rgba(20,16,12,0.54);  color: rgba(255,255,255,0.92);  border: 1px solid rgba(255,255,255,0.16);  box-shadow: var(--shadow-subtle);  max-width: 280px;}
.hero-note strong {  display: block;  margin-bottom: 4px;  font-family: "Libre Baskerville", serif;  font-size: 0.98rem;  font-weight: 700;}
.hero-note span {  font-size: 0.83rem;  line-height: 1.45;  color: rgba(255,255,255,0.78);}
/* UPDATED ARROWS */.arrow {  position: absolute;  top: 50%;  transform: translateY(-50%);  width: 86px;  height: 86px;  display: block;  z-index: 30;  background: transparent;  border: 0;  box-shadow: none;  cursor: pointer;  padding: 0;  transition: transform 0.25s ease, opacity 0.25s ease;  opacity: 0.92;}
.arrow:hover,.arrow:focus-visible {  transform: translateY(-50%) scale(1.06);  opacity: 1;  outline: none;}
.arrow.left { left: clamp(12px, 2vw, 28px); }
.arrow.right { right: clamp(12px, 2vw, 28px); }
.arrow::before {  position: absolute;  top: 50%;  left: 50%;  transform: translate(-50%, -52%);  font-family: "Libre Baskerville", serif;  font-size: 2rem;  line-height: 1;  color: rgba(255,255,255,0.94);  text-shadow: 0 3px 14px rgba(0,0,0,0.32);}
.arrow.left::before {  content: "←";}
.arrow.right::before {  content: "→";}
.arrow svg {  display: none;}
.dots {  position: absolute;  left: 50%;  bottom: clamp(28px, 3vw, 40px);  transform: translateX(-50%);  display: flex;  gap: 12px;  z-index: 30;  padding: 10px 14px;  background: rgba(244,238,229,0.78);  border: 1px solid rgba(60,45,30,0.08);  box-shadow: 0 8px 22px rgba(0,0,0,0.08);}
.dot {  width: 11px;  height: 11px;  border: 0;  padding: 0;  border-radius: 50%;  background: rgba(54,41,29,0.24);  cursor: pointer;  transition: transform 0.28s ease, background 0.28s ease;}
.dot.active {  background: var(--wood);  transform: scale(1.18);}
.malbrook-intro-wrap {  width: 100%;  max-width: 1280px;  margin: 106px auto 88px;  padding: 0 24px;  text-align: center;}
.malbrook-intro-text {  font-family: "Libre Baskerville", serif;  font-size: clamp(1.18rem, 2.5vw, 1.34rem);  line-height: 1.78;  letter-spacing: 0.01em;  color: #18130f;  max-width: 980px;  margin: 0 auto;}
.malbrook-intro-text + .malbrook-intro-text {  margin-top: 1.2em;}
.malbrook-intro-text em {  color: #5c4732;}
.elegant-divider {  width: 100%;  max-width: 1280px;  margin: 74px auto 68px;  text-align: center;}
.elegant-divider svg {  width: clamp(220px, 40vw, 500px);  opacity: 0.42;}
.elegant-divider path {  stroke: #5d4933;  stroke-width: 1.5;  fill: none;}
.heritage-wrap {  width: 100%;  max-width: 1280px;  margin: 92px auto 46px;  padding: 0 24px;  display: flex;  justify-content: center;}
.flourish-container {  display: flex;  align-items: center;  justify-content: center;  gap: clamp(14px, 3vw, 26px);}
.flourish svg {  width: clamp(46px, 8vw, 88px);}
.flourish svg path {  stroke: #5d4933;  stroke-width: 1.8;  opacity: 0.48;}
.malbrook-bottom-cta {  width: 100%;  max-width: 1280px;  margin: 36px auto 92px;  padding: 0 24px;}
.malbrook-bottom-cta-panel {  position: relative;  overflow: hidden;  padding: clamp(32px, 5vw, 56px);  background:    linear-gradient(135deg, rgba(255,255,255,0.34) 0%, rgba(255,255,255,0.14) 100%),    linear-gradient(180deg, #efe3d4 0%, #e8dac9 100%);  border: 1px solid rgba(91, 68, 45, 0.12);  box-shadow:    0 20px 50px rgba(66, 45, 27, 0.10),    inset 0 1px 0 rgba(255,255,255,0.48);}
.malbrook-bottom-cta-panel::before {  content: "";  position: absolute;  inset: 0 auto 0 0;  width: 7px;  background: linear-gradient(180deg, #c7a171 0%, #8a6946 100%);}
.malbrook-bottom-cta-panel::after {  content: "";  position: absolute;  right: -60px;  top: -60px;  width: 220px;  height: 220px;  border-radius: 50%;  background: radial-gradient(circle, rgba(184,151,110,0.18) 0%, rgba(184,151,110,0) 70%);  pointer-events: none;}
.malbrook-bottom-cta-inner {  position: relative;  z-index: 1;  display: grid;  grid-template-columns: 1.2fr auto;  gap: 28px;  align-items: center;}
.malbrook-bottom-cta-copy {  max-width: 760px;}
.malbrook-bottom-cta-kicker {  display: inline-block;  margin: 0 0 14px;  padding-left: 15px;  font-size: 0.72rem;  font-weight: 700;  letter-spacing: 0.18em;  text-transform: uppercase;  color: #70563c;}
.malbrook-bottom-cta-title {  margin: 0 0 14px;  font-family: "Libre Baskerville", serif;  font-size: clamp(2rem, 4vw, 3rem);  line-height: 1.1;  letter-spacing: -0.03em;  color: #1d1712;}
.malbrook-bottom-cta-text {  margin: 0;  max-width: 58ch;  font-size: clamp(0.98rem, 1.65vw, 1.04rem);  line-height: 1.78;  color: #4a3a2c;}
.malbrook-bottom-cta-actions {  display: flex;  flex-wrap: wrap;  gap: 14px;  justify-content: flex-end;  align-items: center;}
.malbrook-btn {  position: relative;  display: inline-flex;  align-items: center;  justify-content: center;  min-height: 56px;  padding: 15px 28px;  text-decoration: none;  font-size: 0.85rem;  font-weight: 700;  letter-spacing: 0.08em;  text-transform: uppercase;  transition: transform 0.28s ease, box-shadow 0.28s ease, background 0.28s ease, color 0.28s ease, border-color 0.28s ease;  white-space: nowrap;}
.malbrook-btn-primary {  background: linear-gradient(180deg, #9b7750 0%, #7b5b3d 100%);  color: #fffaf3;  box-shadow: 0 16px 34px rgba(123, 91, 61, 0.24);}
.malbrook-btn-primary:hover,.malbrook-btn-primary:focus-visible {  background: linear-gradient(180deg, #876545 0%, #684d34 100%);  transform: translateY(-2px);  box-shadow: 0 18px 38px rgba(104, 77, 52, 0.28);}
.malbrook-btn-secondary {  background: rgba(255,255,255,0.36);  color: #2a2018;  border: 1px solid rgba(77, 58, 40, 0.20);  backdrop-filter: blur(4px);}
.malbrook-btn-secondary:hover,.malbrook-btn-secondary:focus-visible {  background: rgba(255,255,255,0.56);  border-color: rgba(77, 58, 40, 0.32);  transform: translateY(-2px);}
.malbrook-btn-primary::after {  content: "→";  margin-left: 12px;  font-size: 1.15rem;  line-height: 1;  transition: transform 0.28s ease;}
.malbrook-btn-primary:hover::after,.malbrook-btn-primary:focus-visible::after {  transform: translateX(4px);}
@media (min-width: 1281px) {  .slide-text {    margin-left: calc((100vw - 1280px) / 2 + 54px) !important;  }}
@media (max-width: 1100px) {  .slide-text {    width: min(86vw, 500px);    margin-left: 5vw;  }  .hero-note {    right: 20px;    bottom: 22px;  }  .malbrook-bottom-cta-inner {    grid-template-columns: 1fr;  }  .malbrook-bottom-cta-actions {    justify-content: flex-start;  }}
@media (max-width: 640px) {  .hero-wrapper {    height: auto;    min-height: 575px;    max-height: none;  }  .slide-content {    align-items: flex-end;    justify-content: center;    padding: 14px 12px 112px;  }  .slide-text {    max-width: 100%;    padding: 26px 16px 20px;    transform: translateY(-22px) scale(0.95);    transform-origin: center;  }  .hero-overline {    margin-bottom: 12px;    padding-left: 12px;    font-size: 0.66rem;  }  .slide-text h1 {    font-size: clamp(1.9rem, 7.8vw, 2.55rem);    margin-bottom: 10px;  }  .hero-rule {    width: 54px;    margin-bottom: 16px;  }  .slide-text p {    font-size: 0.9rem;    line-height: 1.58;    margin-bottom: 18px;  }  .hero-actions {    gap: 10px;  }  .cta,  .cta-secondary {    width: 100%;    min-height: 46px;    padding: 12px 15px;    font-size: 0.82rem;  }  .hero-note {    left: 12px;    right: 12px;    bottom: 44px;    padding: 12px 14px;  }  .hero-note strong {    font-size: 0.9rem;  }  .hero-note span {    font-size: 0.78rem;  }  .dots {    bottom: 12px;    padding: 8px 12px;    gap: 10px;  }  .arrow {    bottom: 8px;    top: auto;    transform: none;    width: 52px;    height: 52px;  }  .arrow:hover,  .arrow:focus-visible {    transform: scale(1.06);  }  .arrow.left {    left: 8px;  }  .arrow.right {    right: 8px;  }  .arrow::before {    font-size: 1.5rem;  }  .dot {    width: 9px;    height: 9px;  }  .malbrook-intro-wrap {    margin: 78px auto 64px;  }  .malbrook-intro-text {    font-size: 1.08rem;    line-height: 1.72;    padding: 0 8px;  }  .elegant-divider {    margin: 58px auto 54px;  }  .heritage-wrap {    margin: 74px auto 28px;  }  .malbrook-bottom-cta {    margin: 22px auto 64px;    padding: 0 16px;  }  .malbrook-bottom-cta-panel {    padding: 28px 18px 20px;  }  .malbrook-bottom-cta-kicker {    margin-bottom: 12px;    font-size: 0.66rem;  }  .malbrook-bottom-cta-title {    font-size: clamp(1.6rem, 8vw, 2.1rem);    margin-bottom: 12px;  }  .malbrook-bottom-cta-text {    font-size: 0.92rem;    line-height: 1.68;  }  .malbrook-bottom-cta-actions {    gap: 10px;    width: 100%;  }  .malbrook-btn {    width: 100%;    min-height: 50px;    font-size: 0.8rem;    padding: 13px 16px;  }}
@media (prefers-reduced-motion: reduce) {  .slide,  .slide-bg,  .arrow,  .dot,  .cta,  .cta-secondary,  .malbrook-btn {    transition: none !important;  }}
:root {    --services-bg: linear-gradient(180deg, #f7f2eb 0%, #f3ede4 100%);    --services-panel: rgba(255, 255, 255, 0.94);    --services-border: rgba(58, 42, 28, 0.08);    --services-shadow: 0 18px 42px rgba(35, 25, 16, 0.08);    --services-shadow-hover: 0 28px 64px rgba(35, 25, 16, 0.14);    --services-ink: #1f1914;    --services-ink-soft: #544b42;    --services-accent: #8a6946;    --services-accent-deep: #6d5237;}
.services-section {    width: 100%;    padding: 96px 0 56px;    background:        radial-gradient(circle at top left, rgba(206, 184, 156, 0.16), transparent 34%),        var(--services-bg);}
.services-grid {    display: grid;    grid-template-columns: repeat(2, minmax(0, 1fr));    gap: 34px;    max-width: 1240px;    margin: 0 auto;    padding: 0 5%;    box-sizing: border-box;}
.card {    position: relative;    overflow: hidden;    background: var(--services-panel);    border: 1px solid var(--services-border);    border-radius: 0;    box-shadow: var(--services-shadow);    transition: transform 0.38s ease, box-shadow 0.38s ease, border-color 0.38s ease;}
.card::before {    content: "";    position: absolute;    inset: 0 auto auto 0;    width: 100%;    height: 4px;    background: linear-gradient(90deg, #b79268 0%, var(--services-accent) 100%);    z-index: 2;    opacity: 0.9;}
.card:hover {    transform: translateY(-8px);    box-shadow: var(--services-shadow-hover);    border-color: rgba(58, 42, 28, 0.14);}
.card > a {    position: absolute;    inset: 0;    z-index: 5;}
.img-wrap {    position: relative;    height: 290px;    overflow: hidden;    background: #ddd4c7;}
.img-wrap::after {    content: "";    position: absolute;    inset: 0;    background: linear-gradient(180deg, rgba(20, 14, 10, 0.03) 0%, rgba(20, 14, 10, 0.16) 100%);    z-index: 1;    pointer-events: none;}
.img-wrap img {    width: 100%;    height: 100%;    object-fit: cover;    display: block;    transition: transform 1.25s ease, filter 0.5s ease;    filter: saturate(0.96) contrast(1.02);}
.card:hover .img-wrap img {    transform: scale(1.08);    filter: saturate(1) contrast(1.04);}
.card-content {    position: relative;    z-index: 2;    padding: 30px 28px 32px;    background: linear-gradient(180deg, rgba(255,255,255,0.98) 0%, rgba(247,243,237,0.98) 100%);}
.card h3 {    margin: 0 0 12px;    font-family: "Libre Baskerville", Georgia, serif;    font-size: clamp(1.45rem, 2.4vw, 1.78rem);    font-weight: 700;    line-height: 1.2;    letter-spacing: -0.025em;    color: var(--services-ink);}
.card p {    margin: 0 0 20px;    font-size: 1.01rem;    line-height: 1.78;    color: var(--services-ink-soft);    max-width: 36ch;}
.learn-more {    display: inline-flex;    align-items: center;    gap: 10px;    color: var(--services-ink);    font-size: 0.84rem;    font-weight: 700;    letter-spacing: 0.12em;    text-transform: uppercase;    text-decoration: none;    position: relative;    z-index: 6;    transition: color 0.28s ease, transform 0.28s ease;}
.learn-more::before {    content: "";    width: 34px;    height: 1px;    background: rgba(74, 56, 39, 0.34);    transition: width 0.28s ease, background 0.28s ease;}
.learn-more::after {    content: "→";    font-size: 1rem;    line-height: 1;    transition: transform 0.28s ease, color 0.28s ease;}
.card:hover .learn-more,.learn-more:hover {    color: var(--services-accent-deep);}
.card:hover .learn-more::before,.learn-more:hover::before {    width: 46px;    background: var(--services-accent);}
.card:hover .learn-more::after,.learn-more:hover::after {    transform: translateX(4px);    color: var(--services-accent-deep);}
@media (max-width: 980px) {    .services-section {        padding: 82px 0 46px;    }    .services-grid {        grid-template-columns: 1fr;        gap: 28px;        padding: 0 6%;    }    .img-wrap {        height: 320px;    }}
@media (max-width: 640px) {    .services-section {        padding: 72px 0 38px;    }    .services-grid {        gap: 24px;        padding: 0 5%;    }    .img-wrap {        height: 250px;    }    .card-content {        padding: 24px 20px 26px;    }    .card h3 {        font-size: 1.42rem;    }    .card p {        font-size: 0.96rem;        line-height: 1.68;        margin-bottom: 18px;    }    .learn-more {        font-size: 0.78rem;        letter-spacing: 0.1em;    }    .learn-more::before {        width: 26px;    }}
.video-hero-wrapper {    width: 100%;    margin: 112px 0 0;    background: var(--cream);    padding: 0;}
.video-hero {    position: relative;    width: 100%;    max-width: 1400px;    margin: 0 auto;    height: 74vh;    min-height: 540px;    max-height: 780px;    overflow: hidden;    border-radius: 0;    background: #d9cebf;    box-shadow: 0 24px 60px rgba(0,0,0,0.10);}
.video-hero::after {    content: "";    position: absolute;    inset: 0;    border: 1px solid rgba(255,255,255,0.14);    pointer-events: none;}
.video-hero video {    position: absolute;    top: 50%;    left: 50%;    width: 100%;    height: 100%;    min-width: 100%;    min-height: 100%;    object-fit: cover;    object-position: center center;    transform: translate(-50%, -50%) scale(1.02);    filter: brightness(0.88) contrast(1.04) saturate(0.92);}
.video-overlay {    position: absolute;    inset: 0;    background:        linear-gradient(180deg, rgba(15,12,9,0.08) 0%, rgba(15,12,9,0.14) 30%, rgba(15,12,9,0.48) 100%),        linear-gradient(90deg, rgba(17,13,10,0.18) 0%, rgba(17,13,10,0.05) 38%, rgba(17,13,10,0.14) 100%);    pointer-events: none;}
.content-card {    position: relative;    max-width: 780px;    margin: -128px auto 108px;    padding: 58px 60px 54px;    background:        linear-gradient(180deg, rgba(255,255,255,0.22) 0%, rgba(255,255,255,0.06) 100%),        rgba(247,242,234,0.97);    border: 1px solid rgba(255,255,255,0.42);    box-shadow:        0 32px 80px rgba(0,0,0,0.12),        inset 0 1px 0 rgba(255,255,255,0.42);    text-align: center;    z-index: 2;    pointer-events: all;    overflow: hidden;}
.content-card::before {    content: "";    position: absolute;    inset: 0 auto 0 0;    width: 6px;    background: linear-gradient(180deg, #bc9468 0%, var(--wood) 100%);}
.content-card::after {    content: "";    position: absolute;    right: -60px;    top: -60px;    width: 220px;    height: 220px;    border-radius: 50%;    background: radial-gradient(circle, rgba(184,151,110,0.16) 0%, rgba(184,151,110,0) 72%);    pointer-events: none;}
.branding {    position: relative;    z-index: 1;    display: grid;    grid-template-columns: 1fr auto;    align-items: end;    gap: 24px;    margin-bottom: 26px;    padding-bottom: 22px;    border-bottom: 1px solid rgba(63,49,35,0.12);}
.branding .logo {    font-family: "Libre Baskerville", serif;    font-size: clamp(2.4rem, 5vw, 3.45rem);    font-weight: 700;    letter-spacing: -0.042em;    line-height: 0.94;    color: var(--ink);    text-align: left;    text-wrap: balance;}
.branding .contact {    text-align: right;    line-height: 1.72;    font-size: 0.95rem;    color: #4a3d31;}
.branding .contact span {    color: #6b5948;    letter-spacing: 0.04em;    text-transform: uppercase;    font-size: 0.72rem;    font-weight: 700;    display: inline-block;    margin-right: 6px;}
.branding a,.footer-text a {    color: var(--wood);    text-decoration: none;    font-weight: 700;    transition: color 0.28s ease, opacity 0.28s ease;}
.branding a:hover,.footer-text a:hover {    color: var(--wood-deep);    opacity: 1;}
.tagline {    position: relative;    z-index: 1;    max-width: 640px;    margin: 0 auto 34px;    font-family: "Libre Baskerville", serif;    font-style: normal;    font-size: clamp(1.22rem, 2.7vw, 1.62rem);    line-height: 1.48;    letter-spacing: -0.015em;    color: var(--ink);    text-wrap: balance;}
.tagline::after {    content: "";    display: block;    width: 62px;    height: 1px;    margin: 20px auto 0;    background: rgba(63,49,35,0.24);}
.tagline-sub {    position: relative;    z-index: 1;    max-width: 600px;    margin: 0 auto 34px;    font-size: 1rem;    line-height: 1.78;    color: #3e342b;}
.malbrook-buttons {    position: relative;    z-index: 1;    display: flex;    gap: 14px;    justify-content: center;    flex-wrap: wrap;    margin-bottom: 30px;}
.btn-primary,.btn-secondary {    display: inline-flex;    align-items: center;    justify-content: center;    min-height: 54px;    min-width: 214px;    padding: 14px 28px;    text-decoration: none !important;    font-size: 0.84rem;    font-weight: 700;    letter-spacing: 0.08em;    text-transform: uppercase;    transition:        background 0.28s ease,        color 0.28s ease,        border-color 0.28s ease,        transform 0.28s ease,        box-shadow 0.28s ease;    box-sizing: border-box;}
a.btn-primary,a.btn-primary:link,a.btn-primary:visited {    background: linear-gradient(180deg, #9a7650 0%, #7d5d3e 100%) !important;    border: 1px solid #7d5d3e !important;    color: #fffaf3 !important;    -webkit-text-fill-color: #fffaf3 !important;    box-shadow: 0 16px 34px rgba(123,91,61,0.22) !important;}
a.btn-primary:hover,a.btn-primary:focus,a.btn-primary:active {    background: linear-gradient(180deg, #896645 0%, #6c5036 100%) !important;    border-color: #6c5036 !important;    color: #fffaf3 !important;    -webkit-text-fill-color: #fffaf3 !important;    transform: translateY(-2px);    box-shadow: 0 18px 38px rgba(104,77,52,0.28) !important;}
a.btn-primary * {    color: #fffaf3 !important;    fill: #fffaf3 !important;    -webkit-text-fill-color: #fffaf3 !important;}
a.btn-secondary,a.btn-secondary:link,a.btn-secondary:visited {    background: rgba(255,255,255,0.16) !important;    border: 1px solid rgba(44,34,24,0.18) !important;    color: var(--ink) !important;    -webkit-text-fill-color: var(--ink) !important;    backdrop-filter: blur(4px);}
a.btn-secondary:hover,a.btn-secondary:focus,a.btn-secondary:active {    background: rgba(138,105,70,0.06) !important;    border-color: rgba(44,34,24,0.28) !important;    color: var(--ink) !important;    -webkit-text-fill-color: var(--ink) !important;    transform: translateY(-2px);}
.footer-text {    position: relative;    z-index: 1;    font-size: 0.98rem;    line-height: 1.78;    color: #45392f;    max-width: 640px;    margin: 0 auto;}
.footer-text strong {    color: var(--ink);    font-weight: 700;}
@media (max-width: 960px) {    .content-card {        margin: -102px 34px 86px;        padding: 48px 40px 44px;        max-width: none;    }    .branding {        grid-template-columns: 1fr;        align-items: center;        justify-items: center;        text-align: center;        gap: 14px;    }    .branding .logo,    .branding .contact {        text-align: center;    }}
@media (max-width: 768px) {    .video-hero {        height: 62vh;        min-height: 430px;    }    .content-card {        margin: -82px 18px 72px;        padding: 38px 24px 34px;    }    .tagline {        margin-bottom: 22px;    }    .tagline-sub {        margin-bottom: 26px;        font-size: 0.95rem;        line-height: 1.7;    }    .malbrook-buttons {        flex-direction: column;        align-items: stretch;        gap: 12px;    }    .btn-primary,    .btn-secondary {        width: 100%;        min-width: 0;    }    .footer-text {        font-size: 0.95rem;    }}
@media (max-width: 480px) {    .video-hero {        height: 54vh;        min-height: 360px;    }    .content-card {        margin: -66px 14px 58px;        padding: 32px 18px 28px;    }    .branding .logo {        font-size: clamp(2rem, 9vw, 2.55rem);    }    .branding .contact {        font-size: 0.9rem;        line-height: 1.72;    }    .tagline {        font-size: 1.08rem;    }    .btn-primary,    .btn-secondary {        min-height: 50px;        padding: 13px 18px;        font-size: 0.8rem;    }}
.legacy-section {  max-width: 1280px;  margin: 116px auto;  padding: 0 24px;  display: grid;  grid-template-columns: minmax(380px, 520px) minmax(0, 1fr);  gap: 72px;  align-items: start;}
.legacy-text {  text-align: left;  padding-top: 10px;  max-width: 520px;}
.legacy-eyebrow {  display: inline-block;  margin: 0 0 18px;  padding-left: 16px;  font-size: 0.72rem;  font-weight: 700;  letter-spacing: 0.18em;  text-transform: uppercase;  color: #6f563d;  position: relative;}
.legacy-eyebrow::before {  content: "";  position: absolute;  left: 0;  top: 0.1em;  bottom: 0.1em;  width: 2px;  background: linear-gradient(180deg, #bc9468 0%, var(--wood) 100%);}
.legacy-text h2 {  font-family: "Libre Baskerville", serif;  font-size: clamp(2.25rem, 4.9vw, 3.1rem);  font-weight: 700;  line-height: 1.08;  letter-spacing: -0.036em;  margin: 0 0 20px;  color: var(--ink);  max-width: 11ch;}
.legacy-rule {  width: 72px;  height: 1px;  background: rgba(63, 49, 35, 0.24);  margin: 0 0 26px;}
.legacy-text p {  font-size: clamp(1rem, 1.7vw, 1.09rem);  line-height: 1.82;  margin: 0 0 20px;  color: #3b3027;}
.legacy-text p strong {  display: block;  margin: 34px 0 28px;  padding: 2px 0 2px 18px;  border-left: 3px solid rgba(146,116,76,0.34);  font-family: "Libre Baskerville", serif;  font-size: clamp(1.2rem, 2.3vw, 1.44rem);  font-style: italic;  font-weight: 400;  line-height: 1.58;  letter-spacing: -0.01em;  color: var(--ink);}
.legacy-text .contact {  margin-top: 34px;  padding-top: 24px;  border-top: 1px solid rgba(63, 49, 35, 0.12);  font-size: 0.98rem;  line-height: 1.76;  color: #45392f;}
.legacy-text .contact strong {  color: var(--ink);  font-weight: 700;}
.legacy-text .contact a {  color: var(--wood);  text-decoration: none;  font-weight: 700;  transition: color 0.28s ease, opacity 0.28s ease;}
.legacy-text .contact a:hover {  color: var(--wood-deep);  opacity: 1;}
.mosaic-gallery {  min-width: 0;  display: grid;  grid-template-columns: 1fr 0.92fr 1fr;  grid-template-rows: 228px 124px 176px 176px;  gap: 18px;  align-self: start;}
.mosaic-item {  position: relative;  overflow: hidden;  background: #d8cdbc;  box-shadow:    0 22px 56px rgba(0,0,0,0.11),    inset 0 1px 0 rgba(255,255,255,0.18);  transition: transform 0.4s ease, box-shadow 0.4s ease, filter 0.4s ease;}
.mosaic-item::before {  content: "";  position: absolute;  inset: 0;  border: 1px solid rgba(255,255,255,0.18);  z-index: 2;  pointer-events: none;}
.mosaic-item::after {  content: "";  position: absolute;  inset: 0;  background:    linear-gradient(180deg, rgba(0,0,0,0.02) 0%, rgba(0,0,0,0.10) 100%);  pointer-events: none;  z-index: 1;}
.mosaic-item:hover {  transform: translateY(-4px);  box-shadow:    0 26px 64px rgba(0,0,0,0.14),    inset 0 1px 0 rgba(255,255,255,0.2);}
.mosaic-item img {  width: 100%;  height: 100%;  display: block;  object-fit: cover;  filter: saturate(0.94) contrast(1.02) brightness(0.96);  transition: transform 0.9s ease, filter 0.5s ease;}
.mosaic-item:hover img {  transform: scale(1.035);  filter: saturate(0.98) contrast(1.03) brightness(0.98);}
.mosaic-item:nth-child(1) { grid-area: 1 / 1 / 3 / 2; }
.mosaic-item:nth-child(2) { grid-area: 1 / 2 / 2 / 3; }
.mosaic-item:nth-child(3) { grid-area: 1 / 3 / 3 / 4; }
.mosaic-item:nth-child(4) { grid-area: 2 / 2 / 5 / 3; }
@media (max-width: 1140px) {  .legacy-section {    grid-template-columns: 1fr;    gap: 56px;  }  .legacy-text {    max-width: 780px;  }  .legacy-text h2 {    max-width: none;  }  .mosaic-gallery {    grid-template-columns: 1fr 1fr;    grid-template-rows: 290px 290px;    gap: 20px;  }  .mosaic-item:nth-child(1),  .mosaic-item:nth-child(2),  .mosaic-item:nth-child(3),  .mosaic-item:nth-child(4) {    grid-area: auto;  }}
@media (max-width: 767px) {  .legacy-section {    margin: 84px auto;    padding: 0 18px;    gap: 42px;  }  .legacy-text {    padding-top: 0;  }  .legacy-eyebrow {    margin-bottom: 14px;    font-size: 0.68rem;  }  .legacy-text h2 {    font-size: clamp(1.95rem, 8vw, 2.45rem);    margin-bottom: 16px;  }  .legacy-rule {    width: 58px;    margin-bottom: 20px;  }  .legacy-text p {    font-size: 0.98rem;    line-height: 1.74;  }  .legacy-text p strong {    margin: 26px 0 22px;    padding-left: 14px;    font-size: 1.12rem;  }  .legacy-text .contact {    margin-top: 28px;    padding-top: 20px;    font-size: 0.95rem;  }  .mosaic-gallery {    grid-template-columns: 1fr;    grid-template-rows: none;    gap: 16px;  }  .mosaic-item {    min-height: 240px;  }}
@media (max-width: 480px) {  .legacy-section {    margin: 72px auto;    padding: 0 14px;  }  .mosaic-item {    min-height: 210px;  }}
/* Consultation */.consultation-intro {    max-width: 1280px;    margin: 104px auto 84px;    padding: 0 24px;    text-align: center;}
.consultation-eyebrow {    display: inline-block;    margin: 0 0 16px;    padding-left: 16px;    font-size: 0.72rem;    font-weight: 700;    letter-spacing: 0.18em;    text-transform: uppercase;    color: #6f563d;    position: relative;}
.consultation-eyebrow::before {    content: "";    position: absolute;    left: 0;    top: 0.1em;    bottom: 0.1em;    width: 2px;    background: linear-gradient(180deg, #bc9468 0%, var(--wood) 100%);}
.consultation-intro h2 {    font-family: "Libre Baskerville", serif;    font-size: clamp(2.1rem, 4.8vw, 3rem);    font-weight: 700;    line-height: 1.08;    letter-spacing: -0.036em;    margin: 0;    color: var(--ink);    text-wrap: balance;}
.consultation-rule {    width: 64px;    height: 1px;    margin: 20px auto 22px;    background: rgba(63,49,35,0.24);}
.consultation-intro p {    margin: 0 auto;    max-width: 720px;    font-family: "Libre Baskerville", serif;    font-size: clamp(1.02rem, 1.8vw, 1.1rem);    line-height: 1.82;    letter-spacing: 0.002em;    color: #3b3027;}
.consultation-intro p strong {    color: var(--ink);    font-weight: 700;}
/* spacing harmony with form below */.consultation-intro + * {    margin-top: 0;}
/* Responsive */@media (max-width: 768px) {    .consultation-intro {        margin: 84px auto 64px;        padding: 0 18px;    }    .consultation-intro h2 {        font-size: clamp(1.85rem, 7vw, 2.4rem);    }    .consultation-rule {        width: 52px;        margin: 18px auto 20px;    }    .consultation-intro p {        font-size: 0.98rem;        line-height: 1.74;    }}
@media (max-width: 480px) {    .consultation-intro {        margin: 72px auto 56px;        padding: 0 14px;    }    .consultation-eyebrow {        font-size: 0.68rem;        margin-bottom: 12px;    }}
/* Contact Card */.contact-grid-wrapper {    position: relative;    max-width: 920px;    margin: 0 auto 82px auto;    padding: 38px 36px;    background:        linear-gradient(180deg, rgba(255,255,255,0.16) 0%, rgba(255,255,255,0.06) 100%),        rgba(247,242,234,0.72);    border: 1px solid rgba(91,68,45,0.10);    box-shadow:        0 18px 42px rgba(0,0,0,0.08),        inset 0 1px 0 rgba(255,255,255,0.34);    overflow: hidden;}
.contact-grid-wrapper::before {    content: "";    position: absolute;    inset: 0 auto 0 0;    width: 5px;    background: linear-gradient(180deg, #bc9468 0%, var(--wood) 100%);}
.contact-items {    display: grid;    grid-template-columns: 1fr 1fr;    gap: 30px 42px;    align-items: start;}
.contact-item {    display: flex;    align-items: flex-start;    gap: 16px;    text-align: left;}
.contact-icon {    width: 42px;    height: 42px;    background: linear-gradient(180deg, #9a7650 0%, #7d5d3e 100%);    flex-shrink: 0;    display: flex;    align-items: center;    justify-content: center;    box-shadow: 0 10px 22px rgba(123,91,61,0.18);    transition: transform 0.3s ease, box-shadow 0.3s ease;}
.contact-item:hover .contact-icon {    transform: translateY(-2px);    box-shadow: 0 14px 28px rgba(123,91,61,0.24);}
.contact-icon svg {    width: 20px;    height: 20px;    fill: #fffaf3;}
.contact-content h3 {    font-family: "Libre Baskerville", serif;    font-size: 1.08rem;    margin: 0 0 6px;    color: var(--ink);    font-weight: 700;    letter-spacing: -0.015em;    line-height: 1.25;}
.contact-content p,.contact-content a {    font-size: 0.96rem;    margin: 0;    color: #3f342b;    line-height: 1.72;}
.contact-content a {    color: var(--wood);    text-decoration: none;    font-weight: 700;    transition: color 0.28s ease, opacity 0.28s ease;}
.contact-content a:hover {    color: var(--wood-deep);    opacity: 1;}
/* Responsive */@media (max-width: 960px) {    .contact-grid-wrapper {        padding: 34px 30px;        margin: 0 auto 72px auto;    }    .contact-items {        gap: 28px 34px;    }}
@media (max-width: 640px) {    .contact-grid-wrapper {        padding: 28px 20px;        margin: 0 auto 54px auto;    }    .contact-items {        grid-template-columns: 1fr;        gap: 24px;    }    .contact-item {        gap: 14px;    }    .contact-icon {        width: 40px;        height: 40px;    }    .contact-icon svg {        width: 18px;        height: 18px;    }    .contact-content h3 {        font-size: 1rem;        margin-bottom: 5px;    }    .contact-content p,    .contact-content a {        font-size: 0.93rem;        line-height: 1.68;    }}
@media (max-width: 380px) {    .contact-grid-wrapper {        padding: 24px 16px;    }    .contact-icon {        width: 38px;        height: 38px;    }    .contact-icon svg {        width: 17px;        height: 17px;    }}

/* =========================================
   HERO CAROUSEL - ELEMENTOR BUTTON OVERRIDES
   ========================================= */

/* Reset Elementor/theme button styling */
.hero button.arrow,
.hero button.dot {
    appearance: none !important;
    -webkit-appearance: none !important;
    min-width: 0 !important;
    max-width: none !important;
    padding: 0 !important;
    margin: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    box-shadow: none !important;
    font: inherit !important;
}

/* -------- ARROWS -------- */

.hero button.arrow {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;

    width: 86px !important;
    height: 86px !important;

    background: transparent !important;
    color: rgba(255,255,255,0.94) !important;

    z-index: 30 !important;
    cursor: pointer !important;
    opacity: 0.92 !important;

    transition:
        transform 0.25s ease,
        opacity 0.25s ease !important;
}

.hero button.arrow.left {
    left: clamp(12px, 2vw, 28px) !important;
}

.hero button.arrow.right {
    right: clamp(12px, 2vw, 28px) !important;
}

.hero button.arrow:hover,
.hero button.arrow:focus {
    background: transparent !important;
    transform: translateY(-50%) scale(1.06) !important;
    opacity: 1 !important;
    outline: none !important;
}

/* Use the original simple arrows */
.hero button.arrow::before {
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    transform: translate(-50%, -52%) !important;

    font-family: "Libre Baskerville", serif !important;
    font-size: 2rem !important;
    font-weight: 400 !important;
    line-height: 1 !important;

    color: rgba(255,255,255,0.94) !important;
    text-shadow: 0 3px 14px rgba(0,0,0,0.32) !important;
}

.hero button.arrow.left::before {
    content: "←" !important;
}

.hero button.arrow.right::before {
    content: "→" !important;
}

/* Hide SVG because CSS arrow is being used */
.hero button.arrow svg {
    display: none !important;
}


/* -------- DOT HOLDER -------- */

.hero .dots {
    position: absolute !important;
    left: 50% !important;
    bottom: clamp(28px, 3vw, 40px) !important;
    transform: translateX(-50%) !important;

    display: flex !important;
    align-items: center !important;
    justify-content: center !important;

    gap: 12px !important;

    width: auto !important;
    min-width: 0 !important;

    padding: 10px 14px !important;

    background: rgba(244,238,229,0.78) !important;
    border: 1px solid rgba(60,45,30,0.08) !important;
    border-radius: 0 !important;

    box-shadow: 0 8px 22px rgba(0,0,0,0.08) !important;

    z-index: 30 !important;
}


/* -------- DOTS -------- */

.hero .dots button.dot {
    display: block !important;

    width: 11px !important;
    min-width: 11px !important;
    max-width: 11px !important;

    height: 11px !important;
    min-height: 11px !important;
    max-height: 11px !important;

    flex: 0 0 11px !important;

    padding: 0 !important;
    margin: 0 !important;

    border: 0 !important;
    border-radius: 50% !important;

    background: rgba(54,41,29,0.24) !important;

    box-shadow: none !important;

    cursor: pointer !important;

    transform: none !important;

    transition:
        transform 0.28s ease,
        background 0.28s ease !important;
}

.hero .dots button.dot:hover {
    background: rgba(54,41,29,0.38) !important;
}

.hero .dots button.dot.active {
    background: #8a6946 !important;
    transform: scale(1.18) !important;
}/* End custom CSS */