.lunax-contact-actions{--lx-accent:#7c3aed;position:fixed;right:24px;bottom:24px;z-index:990;display:flex;flex-direction:column;align-items:flex-end;gap:10px}
.lunax-contact-actions.is-editor{position:static}
.lunax-contact-action{display:flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:12px 18px;border-radius:28px;background:var(--lx-accent);color:#fff!important;font:700 14px/1.2 'Red Hat Text',sans-serif;box-shadow:0 5px 18px #21113e24;transition:transform .2s,box-shadow .2s}
.lunax-contact-action svg{width:22px;height:22px;fill:currentColor;flex-shrink:0}
.lunax-contact-text{display:flex;flex-direction:column;gap:3px;text-align:left}.lunax-contact-text>span{font-size:11px;font-weight:500}.lunax-contact-text>strong{font-size:14px;font-weight:700;white-space:nowrap}
.lunax-contact-action.action-whatsapp{background:#168a51}
.lunax-contact-action:focus-visible{outline:3px solid #c4a0ff;outline-offset:4px}
body #back-to-top,body #back-to-top.show{right:24px;bottom:190px}
.lunax-office-map{position:relative;display:grid;place-items:center;overflow:hidden;border-radius:18px;border:1px solid #e5d9f4;background:#f8f4ff;scroll-margin-top:100px}
.lunax-office-map iframe{display:block;width:100%;border:0}
.lunax-map-placeholder{max-width:340px;padding:32px;text-align:center;color:#62586e;font-size:16px;line-height:1.75}
.lunax-map-placeholder[hidden]{display:none}
.lunax-map-placeholder svg{width:46px;height:46px;fill:#7c3aed;margin-bottom:20px}
.contact-office.is-selected>.elementor-widget-wrap{border-color:#a579e9!important;box-shadow:0 8px 24px #7c3aed18}
@media(hover:hover){.lunax-contact-action:hover{transform:translateY(-3px);box-shadow:0 9px 24px #21113e35}}
@media(max-width:767px){.lunax-contact-actions{right:12px;bottom:max(12px,env(safe-area-inset-bottom));gap:8px}.lunax-contact-action{min-height:44px;padding:8px 13px;gap:8px}.lunax-contact-text>span{font-size:10px}.lunax-contact-text>strong{font-size:12px}.lunax-contact-action svg{width:20px;height:20px}body #back-to-top,body #back-to-top.show{right:12px;bottom:154px;width:40px;height:40px;line-height:40px}.lunax-map-placeholder{font-size:15px}}
@media(prefers-reduced-motion:reduce){.lunax-contact-action{transition:none}.lunax-contact-action:hover{transform:none}}

/* Keep blog tag chips separate when they wrap onto another row. */
.single-post .entry-footer .tagcloud,
.single-post .widget .tagcloud {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  max-width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.single-post .entry-footer .tagcloud a,
.single-post .widget .tagcloud a {
  max-width: 100%;
  margin: 0;
}

/* Preserve spacing in the two verbatim user-supplied homepage documents. */
.elementor-153 .elementor-element-3a0b284 .elementor-widget-text-editor p,
.elementor-153 .elementor-element-3a0b284 .elementor-tab-content p,
.elementor-153 .elementor-element-3a0b284 .elementor-tab-content h3,
.elementor-153 .elementor-element-bb9d4a8 .elementor-tab-content p,
.elementor-153 .elementor-element-bb9d4a8 .elementor-toggle-title {
  white-space: pre-wrap;
}

/* Match the about photo to the adjacent content, without its intrinsic height sizing the row. */
@media (min-width: 768px) {
  .elementor-154 .elementor-element-bdd7c4e > .elementor-container {
    align-items: stretch;
  }

  .elementor-154 .elementor-element-bdd7c4e .elementor-element-bf90231 > .elementor-widget-wrap > .elementor-widget:last-child {
    margin-bottom: 0;
  }

  .elementor-154 .elementor-element-bdd7c4e .elementor-element-b5d7594 > .elementor-widget-wrap {
    align-items: stretch !important;
    align-content: stretch !important;
  }

  .elementor-154 .elementor-element-bdd7c4e .elementor-element-bc35425 {
    position: relative;
    flex: 1 1 100%;
    align-self: stretch;
    min-height: 0;
    margin-bottom: 0;
    overflow: hidden;
  }

  .elementor-154 .elementor-element-bdd7c4e .elementor-element-bc35425 img {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
  }
}

/* Background-only service columns need their own height when columns stack. */
@media (max-width: 767px) {
  .elementor .elementor-column.service-visual > .elementor-widget-wrap {
    min-width: 0;
    min-height: 240px;
    aspect-ratio: 4 / 3;
  }
}
