.elementor-2279 .elementor-element.elementor-element-47b5e55{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2279 .elementor-element.elementor-element-d5107b6{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2279 .elementor-element.elementor-element-6d84b8c{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2279 .elementor-element.elementor-element-169349b{--display:flex;--margin-top:0px;--margin-bottom:0px;--margin-left:0px;--margin-right:0px;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-2279 .elementor-element.elementor-element-940f3cc{margin-top:0px;margin-bottom:0px;padding:0px 0px 0px 0px;}.elementor-2279 .elementor-element.elementor-element-10529169 > .elementor-element-populated{margin:0px 0px 0px 0px;--e-column-margin-right:0px;--e-column-margin-left:0px;padding:0px 0px 0px 0px;}.elementor-2279 .elementor-element.elementor-element-0a82f59{margin:0px 0px calc(var(--kit-widget-spacing, 0px) + 0px) 0px;padding:0px 0px 0px 0px;}:root{--page-title-display:none;}@media(max-width:1024px){.elementor-2279 .elementor-element.elementor-element-940f3cc{padding:0px 32px 50px 32px;}}@media(max-width:767px){.elementor-2279 .elementor-element.elementor-element-940f3cc{padding:0px 16px 40px 16px;}}/* Start custom CSS for html, class: .elementor-element-81dde3c */.oj-hero {
      position: relative !important;
      isolation: isolate !important;
      display: flex !important;
      min-height: 70svh !important;
      align-items: center !important;
      justify-content: center !important;
      overflow: hidden !important;
      
    }

    .oj-slide-wrap {
      position: absolute !important;
      inset: 0 !important;
      opacity: 0 !important;
      transition: opacity 1.2s ease !important;
    }

    .oj-slide-wrap.active {
      opacity: 1 !important;
    }

    .oj-slide-wrap img {
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
      transform: scale(1) !important;
    }

    .oj-slide-wrap.active img {
      animation: ojKenBurns 9s ease-out forwards !important;
    }

    @keyframes ojKenBurns {
      from {
        transform: scale(1) !important;
      }
      to {
        transform: scale(1.12) !important;
      }
    }

    .oj-hero-overlay {
      position: absolute !important;
      inset: 0 !important;
      background: linear-gradient(
        180deg,
        oklch(0.1 0.005 60 / 0.72) 0%,
        oklch(0.1 0.005 60 / 0.42) 45%,
        oklch(0.1 0.005 60 / 0.85) 100%
      ) !important;
    }

    .oj-hero-content {
      position: relative !important;
      width: 100% !important;
      max-width: 56rem !important;
      padding: 10rem 1.5rem 6rem !important;
      text-align: center !important;
    }

    .oj-eyebrow {
      font-size: 12px !important;
      font-weight: 700 !important;
      text-transform: uppercase !important;
      letter-spacing: 0.5em !important;
      color: oklch(0.78 0.062 78) !important;
    }

    .oj-title {
      margin-top: 2rem !important;
      margin-bottom: 0 !important;
      font-family: 'Cormorant Garamond', serif !important;
      font-weight: 300 !important;
      color: oklch(0.965 0.008 80) !important;
      font-size: 2.7rem !important;
      line-height: 1.05 !important;
    }

    .oj-subtitle {
      margin-top: 1.5rem !important;
      margin-left: auto !important;
      margin-right: auto !important;
      max-width: 36rem !important;
      font-size: 15px !important;
      font-weight: 500 !important;
      letter-spacing: 0.06em !important;
      color: oklch(0.965 0.008 80 / 0.62) !important;
    }

    .oj-hero-buttons {
      margin-top: 3rem !important;
      display: flex !important;
      flex-wrap: wrap !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 1rem !important;
    }

    .oj-btn {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      padding: 1rem 2.5rem !important;
      font-size: 13px !important;
      font-weight: 700 !important;
      text-transform: uppercase !important;
      letter-spacing: 0.34em !important;
      text-decoration: none !important;
      transition: background 0.3s ease, transform 0.3s ease !important;
    }

    .oj-btn-outline {
      border: 1px solid oklch(0.965 0.008 80) !important;
      color: oklch(0.965 0.008 80) !important;
      background: transparent !important;
    }

    .oj-btn-outline:hover {
      background: rgba(255, 255, 255, 0.1) !important;
    }

    .oj-btn-solid {
      background: oklch(0.965 0.008 80) !important;
      color: oklch(0.115 0.005 60) !important;
      border: none !important;
    }

    .oj-btn-solid:hover {
      background: oklch(0.985 0.008 80) !important;
    }

    @media (min-width: 640px) {
      .oj-title {
        font-size: 3.75rem !important;
      }
      .oj-subtitle {
        font-size: 1rem !important;
      }
    }

    @media (min-width: 1024px) {
      .oj-title {
        font-size: 5rem !important;
      }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-77b425f */.oj-welcome {
      background: #083b3a !important;
      padding: 96px 24px !important;
    }

    .oj-welcome__inner {
      max-width: 768px !important;
      margin: 0 auto !important;
      text-align: center !important;
    }

    .oj-welcome__eyebrow {
      display: block !important;
      font-size: 12px !important;
      font-weight: 500 !important;
      letter-spacing: 0.46em !important;
      text-transform: uppercase !important;
      color: oklch(0.78 0.062 78) !important;
    }

    .oj-welcome__title {
      margin: 24px 0 0 !important;
      
      font-size: 36px !important;
      font-weight: 300 !important;
      line-height: 1.1 !important;
      color: oklch(0.965 0.008 80) !important;
    }

    .oj-welcome__text {
      margin: 32px 0 0 !important;
      font-size: 16px !important;
      font-weight: 400 !important;
      line-height: 2 !important;
      color: oklch(0.965 0.008 80 / 0.62) !important;
    }

    .oj-welcome__cta {
      display: inline-flex !important;
      align-items: center !important;
      gap: 12px !important;
      margin-top: 44px !important;
      padding: 16px 40px !important;
      font-size: 13px !important;
      font-weight: 500 !important;
      letter-spacing: 0.34em !important;
      text-transform: uppercase !important;
      text-decoration: none !important;
      border: 1px solid oklch(0.965 0.008 80 / 0.16) !important;
      color: oklch(0.965 0.008 80) !important;
      transition: background-color 0.3s ease !important;
    }

    .oj-welcome__cta:hover {
      background-color: oklch(0.965 0.008 80 / 0.10) !important;
    }

    /* Responsive */
    @media (min-width: 640px) {
      .oj-welcome__title {
        font-size: 48px !important;
      }

      .oj-welcome__text {
        font-size: 18px !important;
      }

      .oj-welcome {
        padding: 120px 24px !important;
      }
    }

    @media (min-width: 1024px) {
      .oj-welcome {
        padding: 128px 40px !important;
      }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-e1dac51 *//* ---------- Refine. Restore. Radiate. section ---------- */
    .oj-video-band {
      position: relative !important;
      z-index: 1 !important;
      display: flex !important;
      min-height: 65vh !important;
      align-items: center !important;
      justify-content: center !important;
      overflow: hidden !important;
      isolation: isolate !important;
    }

    .oj-video-band__video {
      position: absolute !important;
      top: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      left: 0 !important;
      z-index: -2 !important;
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
    }

    .oj-video-band__overlay {
      position: absolute !important;
      top: 0 !important;
      right: 0 !important;
      bottom: 0 !important;
      left: 0 !important;
      z-index: -1 !important;
      background: linear-gradient(180deg, oklch(0.1 0.005 60 / 0.65) 0%, oklch(0.1 0.005 60 / 0.35) 50%, oklch(0.1 0.005 60 / 0.8) 100%) !important;
      pointer-events: none !important;
    }

    .oj-video-band__content {
      position: relative !important;
      z-index: 2 !important;
      width: 100% !important;
      max-width: 768px !important;
      padding: 112px 24px !important;
      text-align: center !important;
    }

    .oj-video-band__headline {
      font-family: 'Cormorant Garamond', serif !important;
      font-size: 2.25rem !important;
      font-weight: 300 !important;
      line-height: 1.08 !important;
      color: oklch(0.965 0.008 80) !important;
    }

    .oj-video-band__subline {
      display: block !important;
      margin-top: 24px !important;
      font-size: 13px !important;
      font-weight: 600 !important;
      letter-spacing: 0.42em !important;
      text-transform: uppercase !important;
      color: oklch(0.78 0.062 78) !important;
    }

    .oj-video-band__cta {
      display: inline-flex !important;
      align-items: center !important;
      justify-content: center !important;
      gap: 12px !important;
      margin-top: 44px !important;
      padding: 16px 40px !important;
      font-size: 13px !important;
      font-weight: 500 !important;
      letter-spacing: 0.34em !important;
      text-transform: uppercase !important;
      text-decoration: none !important;
      color: oklch(0.965 0.008 80) !important;
      border: 1px solid oklch(0.965 0.008 80) !important;
      transition: background-color 0.3s ease !important;
    }

    .oj-video-band__cta:hover {
      background-color: oklch(0.965 0.008 80 / 0.1) !important;
    }

    .oj-video-band__cta-icon {
      width: 14px !important;
      height: 14px !important;
      flex-shrink: 0 !important;
    }

    /* Responsive */
    @media (min-width: 640px) {
      .oj-video-band__headline {
        font-size: 3rem !important;
      }

      .oj-video-band__content {
        padding-top: 112px !important;
        padding-bottom: 112px !important;
      }
    }

    @media (min-width: 1024px) {
      .oj-video-band__headline {
        font-size: 3.75rem !important;
      }
    }

    @media (max-width: 639px) {
      .oj-video-band {
        min-height: 75vh !important;
      }

      .oj-video-band__content {
        padding: 80px 20px !important;
      }

      .oj-video-band__cta {
        padding: 14px 28px !important;
      }
    }/* End custom CSS */
/* Start custom CSS for html, class: .elementor-element-980ffbf *//* Section */
    .oj-section {
      background-color: #faf5ea !important;
      width: 100% !important;
    }
    .oj-container {
      width: 100% !important;
      max-width: 1280px !important;
      margin-left: auto !important;
      margin-right: auto !important;
      padding: 96px 24px !important;
    }
    @media (min-width: 1024px) {
      .oj-container {
        padding: 128px 40px !important;
      }
    }

    /* Header */
    .oj-header {
      text-align: center !important;
    }
    .oj-eyebrow {
      font-size: 12px !important;
      text-transform: uppercase !important;
      letter-spacing: 0.46em !important;
      color: #0d4a4a !important;
      font-weight: 500 !important;
    }
    .oj-title {
      margin-top: 24px !important;
      font-family: 'Cormorant Garamond', serif !important;
      font-weight: 300 !important;
      font-size: 36px !important;
      line-height: 1.1 !important;
      color: #1a2226 !important;
    }
    @media (min-width: 640px) {
      .oj-title {
        font-size: 48px !important;
      }
    }

    /* Grid */
    .oj-grid {
      margin-top: 64px !important;
      display: grid !important;
      gap: 24px !important;
    }
    @media (min-width: 640px) {
      .oj-grid {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }
    @media (min-width: 1024px) {
      .oj-grid {
        grid-template-columns: repeat(3, 1fr) !important;
      }
    }

    /* Card */
    .oj-card {
      position: relative !important;
      display: flex !important;
      min-height: 440px !important;
      flex-direction: column !important;
      justify-content: flex-end !important;
      overflow: hidden !important;
      border-radius: 16px !important;
      text-decoration: none !important;
      box-shadow: 0 18px 50px -22px rgba(26, 34, 38, 0.45) !important;
      transition: transform 0.5s ease !important;
    }
    .oj-card:hover {
      transform: translateY(-8px) !important;
    }

    .oj-card-bg {
      position: absolute !important;
      inset: 0 !important;
      width: 100% !important;
      height: 100% !important;
      object-fit: cover !important;
      transition: transform 1s ease !important;
    }
    .oj-card:hover .oj-card-bg {
      transform: scale(1.1) !important;
    }

    .oj-card-overlay {
      position: absolute !important;
      inset: 0 !important;
      background: linear-gradient(180deg, rgba(26, 34, 38, 0.18) 0%, rgba(26, 34, 38, 0.55) 55%, rgba(16, 22, 24, 0.92) 100%) !important;
      transition: opacity 0.5s ease !important;
      opacity: 1 !important;
    }
    .oj-card-overlay-hover {
      position: absolute !important;
      inset: 0 !important;
      background: linear-gradient(180deg, rgba(26, 34, 38, 0.25) 0%, rgba(26, 34, 38, 0.62) 55%, rgba(12, 17, 19, 0.95) 100%) !important;
      transition: opacity 0.5s ease !important;
      opacity: 0 !important;
    }
    .oj-card:hover .oj-card-overlay-hover {
      opacity: 1 !important;
    }

    /* Card top row */
    .oj-card-top {
      position: relative !important;
      z-index: 10 !important;
      display: flex !important;
      align-items: flex-start !important;
      justify-content: space-between !important;
      padding: 28px !important;
    }
    .oj-card-number {
      font-size: 12px !important;
      font-weight:600 !important;
      letter-spacing: 0.3em !important;
      color: rgba(245, 244, 242, 0.85) !important;
      font-weight: 400 !important;
    }
    .oj-card-icon {
      display: grid !important;
      place-items: center !important;
      width: 40px !important;
      height: 40px !important;
      border-radius: 9999px !important;
      border: 1px solid rgba(245, 244, 242, 0.35) !important;
      color: #d4b076 !important;
      backdrop-filter: blur(4px) !important;
      transition: transform 0.5s ease !important;
    }
    .oj-card:hover .oj-card-icon {
      transform: scale(1.1) !important;
    }
    .oj-card-icon svg {
      width: 16px !important;
      height: 16px !important;
      fill: none !important;
      stroke: currentColor !important;
      stroke-width: 1.5 !important;
      stroke-linecap: round !important;
      stroke-linejoin: round !important;
    }

    /* Card body */
    .oj-card-body {
      position: relative !important;
      z-index: 10 !important;
      padding: 28px !important;
      padding-top: 0 !important;
    }
    .oj-card-title {

      font-weight: 300 !important;
      font-size: 24px !important;
      line-height: 1.2 !important;
      color: #ffffff !important;
      margin: 0 !important;
    }
    .oj-card-text {
      margin-top: 12px !important;
      font-size: 17px !important;
      line-height: 1.85 !important;
      color: rgba(245, 244, 242, 0.82) !important;
    }
    .oj-card-link {
      margin-top: 24px !important;
      display: inline-flex !important;
      align-items: center !important;
      gap: 8px !important;
      font-size: 13px !important;
      text-transform: uppercase !important;
      letter-spacing: 0.32em !important;
      color: #d4b076 !important;
      transition: gap 0.3s ease !important;
    }
    .oj-card:hover .oj-card-link {
      gap: 16px !important;
    }
    .oj-card-link svg {
      width: 14px !important;
      height: 14px !important;
      fill: none !important;
      stroke: currentColor !important;
      stroke-width: 1.5 !important;
      stroke-linecap: round !important;
      stroke-linejoin: round !important;
    }

    /* Consultation prompt */
    .oj-prompt {
      margin-top: 96px !important;
      display: grid !important;
      align-items: center !important;
      gap: 48px !important;
    }
    @media (min-width: 1024px) {
      .oj-prompt {
        grid-template-columns: repeat(2, 1fr) !important;
      }
    }
    .oj-prompt-img {
      width: 100% !important;
      height: 340px !important;
      object-fit: cover !important;
    }
    @media (min-width: 1024px) {
      .oj-prompt-img {
        height: 460px !important;
      }
    }
    .oj-prompt-title {
      font-family: 'Cormorant Garamond', serif !important;
      font-weight: 300 !important;
      font-size: 30px !important;
      line-height: 1.2 !important;
      color: #1a2226 !important;
      margin: 0 !important;
    }
    @media (min-width: 640px) {
      .oj-prompt-title {
        font-size: 36px !important;
      }
    }
    .oj-prompt-text {
      margin-top: 24px !important;
      max-width: 512px !important;
      font-size: 16px !important;
      line-height: 1.95 !important;
      color: #6a7377 !important;
    }
    .oj-prompt-btn {
      margin-top: 40px !important;
      display: inline-flex !important;
      align-items: center !important;
      gap: 12px !important;
      padding: 16px 40px !important;
      font-size: 10px !important;
      text-transform: uppercase !important;
      letter-spacing: 0.34em !important;
      background-color: #0d4a4a !important;
      color: #fffdf7 !important;
      text-decoration: none !important;
      transition: transform 0.3s ease !important;
    }
    .oj-prompt-btn:hover {
      transform: translateY(-2px) !important;
    }/* End custom CSS */