.sjjx-site {
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
}

body.sjjx-romantic-luxe-page,
body.sjjx-romantic-luxe-page #page,
body.sjjx-romantic-luxe-page .site,
body.sjjx-romantic-luxe-page .site-main,
body.sjjx-romantic-luxe-page .entry-content,
body.sjjx-romantic-luxe-page .elementor,
body.sjjx-romantic-luxe-page .elementor-section-wrap {
  background: #fff6fb !important;
}

.sjjx-site .elementor-widget,
.sjjx-site .elementor-widget-text-editor,
.sjjx-site .elementor-widget-heading,
.sjjx-site .elementor-widget-button,
.sjjx-site .elementor-widget-image {
  margin-bottom: 0 !important;
}

.sjjx-logo h1,
.sjjx-logo h2,
.sjjx-logo h3,
.sjjx-logo h4 {
  margin: 0;
  color: #734a80 !important;
  font-size: 34px !important;
  font-weight: 700 !important;
  line-height: 1.2 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-header-wrap .elementor-widget-heading .elementor-heading-title {
  color: #734a80 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-header-wrap .sjjx-logo {
  flex: 0 0 auto !important;
}

.sjjx-header-wrap .sjjx-nav {
  margin-left: auto !important;
}

.sjjx-nav-links {
  display: flex;
  gap: 30px;
  justify-content: flex-end;
  align-items: center;
  font-size: 20px;
  color: #595959;
  margin-left: auto;
  width: auto;
  text-align: right;
}

.sjjx-nav-links a {
  color: #595959 !important;
  text-decoration: none;
  font-size: 20px !important;
  font-weight: 500 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-nav-links a:hover {
  color: #964abf;
}

.sjjx-hero-title h1,
.sjjx-hero-title h2,
.sjjx-hero-title h3 {
  margin: 0;
  color: #4d2e45 !important;
  font-size: clamp(42px, 6vw, 66px);
  line-height: 1.08;
  font-weight: 800 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-hero .elementor-widget-heading .elementor-heading-title {
  color: #4d2e45 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-hero-desc p,
.sjjx-section-subtitle p,
.sjjx-about-copy p,
.sjjx-service-text p,
.sjjx-faq-text p,
.sjjx-process-text p,
.sjjx-inner-intro p,
.sjjx-inner-card-text p {
  margin: 0;
  color: #595959 !important;
  font-size: 22px !important;
  line-height: 1.5;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-btn-primary .elementor-button,
.sjjx-btn-secondary .elementor-button {
  border-radius: 20px !important;
  min-height: 56px;
  padding: 16px 26px !important;
  font-size: 20px;
  font-weight: 700;
}

.sjjx-btn-primary .elementor-button {
  background: #964abf !important;
  color: #fff !important;
  border: 2px solid #964abf !important;
}

.sjjx-btn-secondary .elementor-button {
  background: #fff !important;
  color: #964abf !important;
  border: 2px solid #964abf !important;
}

.sjjx-hero-image img,
.sjjx-inner-hero-image img {
  border-radius: 28px;
  width: 100%;
  aspect-ratio: 680/640;
  object-fit: cover;
}

.sjjx-hero {
  display: flex !important;
  flex-direction: row !important;
  align-items: flex-start !important;
  gap: 32px !important;
  min-height: 0 !important;
}

.sjjx-hero-left {
  flex: 0 0 48% !important;
  max-width: 48% !important;
  width: 48% !important;
  justify-content: flex-start !important;
  align-self: flex-start !important;
}

.sjjx-hero-right {
  flex: 0 0 52% !important;
  max-width: 52% !important;
  width: 52% !important;
  align-self: flex-start !important;
}

.sjjx-hero-right .elementor-widget-image img {
  height: auto !important;
  max-height: 640px !important;
}

.sjjx-btn-row {
  display: flex !important;
  flex-direction: row !important;
  align-items: center !important;
  gap: 20px !important;
  margin-top: 14px !important;
  margin-bottom: 0 !important;
}

.sjjx-btn-row > .elementor-element {
  width: auto !important;
  max-width: none !important;
}

.sjjx-hero-desc {
  margin-bottom: 6px;
}

.sjjx-hero-right .elementor-widget-image {
  position: relative;
}

.sjjx-hero-right .elementor-widget-image::after {
  content: '';
  position: absolute;
  left: 38px;
  top: 38px;
  width: 305px;
  height: 250px;
  border-radius: 16px;
  background:
    radial-gradient(circle at 12% 12%, #efbcd2 0 18px, transparent 19px),
    radial-gradient(circle at 31% 12%, #c8b6e8 0 18px, transparent 19px),
    radial-gradient(circle at 50% 12%, #b3d4f0 0 18px, transparent 19px),
    radial-gradient(circle at 69% 12%, #f4ddb6 0 18px, transparent 19px),
    radial-gradient(circle at 88% 12%, #e7bdd0 0 18px, transparent 19px),
    radial-gradient(circle at 12% 34%, #b3d4f0 0 18px, transparent 19px),
    radial-gradient(circle at 31% 34%, #f4ddb6 0 18px, transparent 19px),
    radial-gradient(circle at 50% 34%, #efbcd2 0 18px, transparent 19px),
    radial-gradient(circle at 69% 34%, #c8b6e8 0 18px, transparent 19px),
    radial-gradient(circle at 88% 34%, #b3d4f0 0 18px, transparent 19px),
    radial-gradient(circle at 12% 56%, #efbcd2 0 18px, transparent 19px),
    radial-gradient(circle at 31% 56%, #c8b6e8 0 18px, transparent 19px),
    radial-gradient(circle at 50% 56%, #b3d4f0 0 18px, transparent 19px),
    radial-gradient(circle at 69% 56%, #f4ddb6 0 18px, transparent 19px),
    radial-gradient(circle at 88% 56%, #e7bdd0 0 18px, transparent 19px),
    radial-gradient(circle at 12% 78%, #b3d4f0 0 18px, transparent 19px),
    radial-gradient(circle at 31% 78%, #f4ddb6 0 18px, transparent 19px),
    radial-gradient(circle at 50% 78%, #efbcd2 0 18px, transparent 19px),
    radial-gradient(circle at 69% 78%, #c8b6e8 0 18px, transparent 19px),
    radial-gradient(circle at 88% 78%, #f4ddb6 0 18px, transparent 19px);
  pointer-events: none;
}

.sjjx-section-title h1,
.sjjx-section-title h2,
.sjjx-section-title h3,
.sjjx-about-title h1,
.sjjx-about-title h2,
.sjjx-about-title h3 {
  margin: 0;
  color: #593866 !important;
  font-size: clamp(34px, 5vw, 52px) !important;
  line-height: 1.12;
  font-weight: 800 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-site .sjjx-section-title .elementor-heading-title,
.sjjx-site .sjjx-about-title .elementor-heading-title,
.sjjx-site .sjjx-process-title .elementor-heading-title,
.sjjx-site .sjjx-service-title .elementor-heading-title,
.sjjx-site .sjjx-inner-card-title .elementor-heading-title {
  color: #593866 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  letter-spacing: 0 !important;
}

.sjjx-service-card {
  min-height: 200px;
}

.sjjx-service-thumb img {
  width: 120px;
  height: 164px;
  border-radius: 14px;
  object-fit: cover;
}

.sjjx-service-title h1,
.sjjx-service-title h2,
.sjjx-service-title h3,
.sjjx-service-title h4,
.sjjx-service-title h5,
.sjjx-service-title h6 {
  margin: 0;
  color: #6e477a !important;
  font-size: 30px !important;
  font-weight: 700 !important;
  line-height: 1.2;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-process-title h1,
.sjjx-process-title h2,
.sjjx-process-title h3,
.sjjx-process-title h4 {
  margin: 0;
  color: #724173;
  font-size: 40px;
  font-weight: 700;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-process-text p {
  font-size: 21px;
}

.sjjx-faq-text p {
  font-size: 22px;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-about-process {
  background: #fff0f2 !important;
  border: 0 !important;
  box-shadow: none !important;
  align-items: flex-start !important;
}

.sjjx-about-process .elementor-widget-heading .elementor-heading-title,
.sjjx-about-process .elementor-heading-title {
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  color: #593866 !important;
  letter-spacing: 0 !important;
}

.sjjx-about-process .sjjx-about-title .elementor-heading-title,
.sjjx-about-process .sjjx-about-title h1,
.sjjx-about-process .sjjx-about-title h2,
.sjjx-about-process .sjjx-about-title h3 {
  color: #4d2e45 !important;
  font-size: clamp(44px, 4.2vw, 62px) !important;
  line-height: 1.08 !important;
  font-weight: 800 !important;
}

.sjjx-about-process .sjjx-process-title .elementor-heading-title,
.sjjx-about-process .sjjx-process-title h1,
.sjjx-about-process .sjjx-process-title h2,
.sjjx-about-process .sjjx-process-title h3,
.sjjx-about-process .sjjx-process-title h4 {
  color: #724173 !important;
  font-size: clamp(36px, 3.6vw, 56px) !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
}

.sjjx-about-process .sjjx-about-copy p {
  color: #595959 !important;
  font-size: 28px !important;
  line-height: 1.35 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-about-process .sjjx-process-item {
  background: #fff !important;
  border-radius: 14px !important;
}

.sjjx-about-process .sjjx-process-item .sjjx-process-text p {
  color: #4f4f4f !important;
  font-size: 24px !important;
  line-height: 1.3 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-footer-title h1,
.sjjx-footer-title h2,
.sjjx-footer-title h3 {
  margin: 0;
  color: #fff;
  font-size: clamp(34px, 5vw, 50px);
  line-height: 1.12;
  font-weight: 800;
}

.sjjx-footer-text p {
  margin: 0;
  color: #faebf2;
  font-size: 24px;
  line-height: 1.45;
}

.sjjx-footer-cta {
  width: min(1440px, calc(100% - 120px)) !important;
  margin: 70px auto 0 !important;
  display: block !important;
  float: none !important;
  border-radius: 34px !important;
  padding: 60px 90px !important;
  background: #4d2e45 !important;
  border: none !important;
  box-shadow: 0 16px 40px rgba(46, 18, 41, 0.25) !important;
  overflow: hidden;
}

.sjjx-footer-cta .elementor-heading-title,
.sjjx-footer-title .elementor-heading-title,
.sjjx-footer-title h1,
.sjjx-footer-title h2,
.sjjx-footer-title h3 {
  color: #ffffff !important;
  font-size: clamp(38px, 3.8vw, 54px) !important;
  line-height: 1.1 !important;
  font-weight: 800 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  text-shadow: none !important;
}

.sjjx-footer-cta .elementor-widget-text-editor p,
.sjjx-footer-text p {
  color: #faebf2 !important;
  font-size: 22px !important;
  line-height: 1.4 !important;
  font-weight: 500 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
  text-shadow: none !important;
}

.sjjx-footer-cta .elementor-widget-text-editor,
.sjjx-footer-cta .elementor-widget-text-editor * {
  color: #faebf2 !important;
  border: 0 !important;
}

.sjjx-footer-cta .elementor-widget,
.sjjx-footer-cta .elementor-widget-wrap,
.sjjx-footer-cta .elementor-element {
  border-left: 0 !important;
  box-shadow: none !important;
}

.sjjx-footer-cta .elementor-heading-title::before,
.sjjx-footer-cta .elementor-heading-title::after,
.sjjx-footer-cta .elementor-widget-text-editor p::before,
.sjjx-footer-cta .elementor-widget-text-editor p::after {
  content: none !important;
  display: none !important;
}

.sjjx-inner-title h1,
.sjjx-inner-title h2,
.sjjx-inner-title h3 {
  margin: 0;
  color: #4d2e45;
  font-size: clamp(36px, 5vw, 58px);
  line-height: 1.1;
}

.sjjx-inner-card-title h1,
.sjjx-inner-card-title h2,
.sjjx-inner-card-title h3,
.sjjx-inner-card-title h4,
.sjjx-inner-card-title h5,
.sjjx-inner-card-title h6 {
  margin: 0;
  color: #6e477a !important;
  font-size: 30px !important;
  line-height: 1.2;
}

.sjjx-services-grid {
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 24px !important;
}

.sjjx-services-grid > .elementor-element,
.sjjx-services-grid > .sjjx-service-card {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
  flex: initial !important;
}

.sjjx-services-html p {
  margin: 0;
}

.sjjx-services-html-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 24px;
  margin-top: 20px;
}

.sjjx-services-html-card {
  display: flex;
  align-items: center;
  gap: 14px;
  min-height: 200px;
  border: 2px solid #edcce3;
  border-radius: 24px;
  background: #fff;
  padding: 18px;
}

.sjjx-services-html-card img {
  width: 120px;
  height: 164px;
  border-radius: 14px;
  object-fit: cover;
  flex: 0 0 120px;
}

.sjjx-services-html-copy h3 {
  margin: 0 0 8px;
  color: #6e477a;
  font-size: 30px;
  line-height: 1.2;
  font-weight: 700;
}

.sjjx-services-html-copy p {
  margin: 0;
  color: #595959;
  font-size: 23px;
  line-height: 1.45;
}

.sjjx-inner-card-text p,
.sjjx-line-box-text p,
.sjjx-field-label p {
  margin: 0;
  color: #595959;
  font-size: 21px;
  line-height: 1.5;
}

.sjjx-story-card,
.sjjx-line-card,
.sjjx-line-box,
.sjjx-qa-card,
.sjjx-mini-package,
.sjjx-fake-field,
.sjjx-contact-form-card,
.sjjx-contact-info {
  box-shadow: 0 0 0 rgba(0, 0, 0, 0);
}

.sjjx-media-image img,
.sjjx-gallery-image img,
.sjjx-map-image img,
.sjjx-package-image img {
  width: 100%;
  border-radius: 14px;
  object-fit: cover;
  aspect-ratio: 4/3;
}

.sjjx-map-image img {
  aspect-ratio: 16/6;
}

.sjjx-package-image img {
  aspect-ratio: 16/9;
}

.sjjx-grid-3 > .elementor-element {
  width: calc(33.333% - 11px) !important;
}

.sjjx-grid-2 > .elementor-element {
  width: calc(50% - 6px);
}

.sjjx-fake-field {
  min-height: 62px;
}

.sjjx-fake-textarea {
  min-height: 140px;
}

.sjjx-contact-main,
.sjjx-services-custom,
.sjjx-about-why {
  align-items: stretch;
}

.sjjx-contact-form-card .sjjx-btn-primary,
.sjjx-services-quote .sjjx-btn-primary {
  margin-top: 8px;
}

/* Services page concept matching */
.sjjx-services-detail,
.sjjx-services-quote,
.sjjx-services-packages,
.sjjx-services-faq-strip {
  background: #fff6fb !important;
}

.sjjx-services-custom {
  background: #ffffff !important;
  border: 1px solid #edcce3 !important;
  border-radius: 18px !important;
  align-items: center !important;
}

.sjjx-services-custom .sjjx-inner-card-title .elementor-heading-title,
.sjjx-services-custom .sjjx-inner-card-title h1,
.sjjx-services-custom .sjjx-inner-card-title h2,
.sjjx-services-custom .sjjx-inner-card-title h3,
.sjjx-services-custom .sjjx-inner-card-title h4,
.sjjx-services-custom .sjjx-inner-card-title h5,
.sjjx-services-custom .sjjx-inner-card-title h6 {
  color: #593866 !important;
  font-size: clamp(28px, 3.2vw, 46px) !important;
  line-height: 1.15 !important;
  font-weight: 800 !important;
}

.sjjx-services-custom .sjjx-inner-card-text p {
  color: #595959 !important;
  font-size: 20px !important;
  line-height: 1.35 !important;
}

.sjjx-services-custom .sjjx-media-image img {
  width: 100% !important;
  aspect-ratio: 16 / 5 !important;
  max-height: 170px !important;
  object-fit: cover !important;
  border-radius: 14px !important;
}

.sjjx-services-detail .sjjx-section-title .elementor-heading-title,
.sjjx-services-detail .sjjx-section-title h1,
.sjjx-services-detail .sjjx-section-title h2,
.sjjx-services-detail .sjjx-section-title h3,
.sjjx-services-detail .sjjx-section-title h4,
.sjjx-services-detail .sjjx-section-title h5,
.sjjx-services-detail .sjjx-section-title h6 {
  color: #593866 !important;
  font-size: clamp(36px, 4.2vw, 54px) !important;
  line-height: 1.12 !important;
  font-weight: 800 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

.sjjx-services-detail .sjjx-grid-2 {
  display: block !important;
  --display: block !important;
}

.sjjx-services-detail .sjjx-grid-2 > .e-con-inner,
.sjjx-services-detail .sjjx-grid-2 > .elementor-container,
.sjjx-services-detail .sjjx-grid-2 > .elementor-widget-wrap {
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 14px !important;
  align-items: stretch !important;
}

.sjjx-services-detail .sjjx-grid-2 > .elementor-element,
.sjjx-services-detail .sjjx-grid-2 > .e-con-inner > .elementor-element,
.sjjx-services-detail .sjjx-grid-2 > .elementor-container > .elementor-element,
.sjjx-services-detail .sjjx-grid-2 > .elementor-widget-wrap > .elementor-element {
  width: 100% !important;
  max-width: 100% !important;
  min-width: 0 !important;
}

.sjjx-services-detail .sjjx-line-box {
  width: 100% !important;
  max-width: 100% !important;
  min-height: 72px !important;
  border-radius: 12px !important;
  border: 1px solid #edcce3 !important;
  background: #ffffff !important;
  box-shadow: none !important;
}

.sjjx-services-detail .sjjx-line-box .elementor-widget-container,
.sjjx-services-detail .sjjx-line-box .elementor-widget-text-editor,
.sjjx-services-detail .sjjx-line-box .elementor-widget-text-editor p,
.sjjx-services-detail .sjjx-line-box-text p {
  color: #595959 !important;
  font-size: 20px !important;
  line-height: 1.45 !important;
  font-weight: 600 !important;
  font-family: 'Inter', system-ui, -apple-system, Segoe UI, Roboto, sans-serif !important;
}

@media (max-width: 1024px) {
  .sjjx-site {
    padding-left: 20px !important;
    padding-right: 20px !important;
  }

  .sjjx-service-card {
    width: calc(50% - 12px) !important;
    max-width: calc(50% - 12px) !important;
    flex: 0 0 calc(50% - 12px) !important;
  }

  .sjjx-services-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 18px !important;
  }

  .sjjx-services-html-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 18px;
  }

  .sjjx-about-process {
    flex-direction: column !important;
  }

  .sjjx-about-why,
  .sjjx-services-custom,
  .sjjx-contact-main,
  .sjjx-inner-hero {
    flex-direction: column !important;
  }

  .sjjx-about-left,
  .sjjx-about-right,
  .sjjx-about-why-left,
  .sjjx-about-why-right,
  .sjjx-contact-info,
  .sjjx-contact-form-card {
    width: 100% !important;
  }

  .sjjx-grid-3 > .elementor-element {
    width: calc(50% - 8px) !important;
  }

  .sjjx-about-process .sjjx-about-title .elementor-heading-title,
  .sjjx-about-process .sjjx-about-title h1,
  .sjjx-about-process .sjjx-about-title h2,
  .sjjx-about-process .sjjx-about-title h3 {
    font-size: clamp(38px, 5.8vw, 54px) !important;
  }

  .sjjx-about-process .sjjx-process-title .elementor-heading-title,
  .sjjx-about-process .sjjx-process-title h1,
  .sjjx-about-process .sjjx-process-title h2,
  .sjjx-about-process .sjjx-process-title h3,
  .sjjx-about-process .sjjx-process-title h4 {
    font-size: clamp(34px, 5vw, 48px) !important;
  }

  .sjjx-services-detail .sjjx-grid-2 {
    display: block !important;
  }

  .sjjx-services-detail .sjjx-grid-2 > .e-con-inner,
  .sjjx-services-detail .sjjx-grid-2 > .elementor-container,
  .sjjx-services-detail .sjjx-grid-2 > .elementor-widget-wrap {
    grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    gap: 12px !important;
  }

  .sjjx-services-custom .sjjx-media-image img {
    max-height: 150px !important;
  }
}

@media (max-width: 767px) {
  .sjjx-header-wrap {
    border-radius: 12px !important;
  }

  .sjjx-nav-links {
    flex-wrap: wrap;
    justify-content: flex-start;
    font-size: 16px;
    gap: 12px;
    margin-left: 0;
    width: auto;
    text-align: left;
  }

  .sjjx-nav-links a {
    font-size: 16px !important;
  }

  .sjjx-hero {
    flex-direction: column !important;
    gap: 22px !important;
    border-radius: 20px !important;
  }

  .sjjx-hero-left,
  .sjjx-hero-right {
    width: 100% !important;
  }

  .sjjx-hero-image img,
  .sjjx-inner-hero-image img {
    aspect-ratio: 4/3;
    border-radius: 16px;
  }

  .sjjx-hero-right .elementor-widget-image img {
    max-height: none;
  }

  .sjjx-hero-right .elementor-widget-image::after {
    left: 20px;
    top: 20px;
    width: 220px;
    height: 180px;
  }

  .sjjx-btn-row {
    flex-direction: column !important;
    width: 100%;
  }

  .sjjx-btn-row .elementor-widget-button {
    width: 100%;
  }

  .sjjx-service-card {
    width: 100% !important;
    max-width: 100% !important;
    flex: 0 0 100% !important;
    min-height: auto;
  }

  .sjjx-services-grid {
    grid-template-columns: 1fr !important;
    gap: 14px !important;
  }

  .sjjx-services-html-grid {
    grid-template-columns: 1fr;
    gap: 14px;
  }

  .sjjx-services-html-card {
    min-height: auto;
  }

  .sjjx-services-detail .sjjx-grid-2 {
    display: block !important;
  }

  .sjjx-services-detail .sjjx-grid-2 > .e-con-inner,
  .sjjx-services-detail .sjjx-grid-2 > .elementor-container,
  .sjjx-services-detail .sjjx-grid-2 > .elementor-widget-wrap {
    grid-template-columns: 1fr !important;
    gap: 10px !important;
  }

  .sjjx-services-custom .sjjx-media-image img {
    aspect-ratio: 16 / 8 !important;
    max-height: none !important;
  }

  .sjjx-services-html-card img {
    width: 88px;
    height: 110px;
    flex: 0 0 88px;
  }

  .sjjx-services-html-copy h3 {
    font-size: 24px;
  }

  .sjjx-services-html-copy p {
    font-size: 17px;
  }

  .sjjx-service-thumb img {
    width: 88px;
    height: 110px;
  }

  .sjjx-service-title h1,
  .sjjx-service-title h2,
  .sjjx-service-title h3,
  .sjjx-service-title h4,
  .sjjx-service-title h5,
  .sjjx-service-title h6 {
    font-size: 24px;
  }

  .sjjx-hero-desc p,
  .sjjx-section-subtitle p,
  .sjjx-about-copy p,
  .sjjx-service-text p,
  .sjjx-faq-text p,
  .sjjx-process-text p,
  .sjjx-inner-intro p,
  .sjjx-inner-card-text p {
    font-size: 17px;
  }

  .sjjx-footer-text p {
    font-size: 18px;
  }

  .sjjx-footer-cta {
    width: calc(100% - 32px) !important;
    margin: 48px auto 0 !important;
    border-radius: 20px !important;
    padding: 34px 24px !important;
  }

  .sjjx-footer-cta .elementor-heading-title,
  .sjjx-footer-title .elementor-heading-title,
  .sjjx-footer-title h1,
  .sjjx-footer-title h2,
  .sjjx-footer-title h3 {
    font-size: 36px !important;
  }

  .sjjx-footer-cta .elementor-widget-text-editor p,
  .sjjx-footer-text p {
    font-size: 18px !important;
  }

  .sjjx-inner-hero {
    flex-direction: column !important;
  }

  .sjjx-grid-2 > .elementor-element,
  .sjjx-grid-3 > .elementor-element,
  .sjjx-line-box,
  .sjjx-mini-package,
  .sjjx-fake-field {
    width: 100% !important;
  }

  .sjjx-inner-card-text p,
  .sjjx-line-box-text p,
  .sjjx-field-label p {
    font-size: 16px;
  }

  .sjjx-map-image img {
    aspect-ratio: 4/3;
  }

  .sjjx-about-process .sjjx-about-copy p {
    font-size: 18px !important;
    line-height: 1.45 !important;
  }

  .sjjx-about-process .sjjx-process-item .sjjx-process-text p {
    font-size: 18px !important;
  }
}
