:root {
  --contact-phone: #ed7b16;
  --contact-phone-dark: #c95c00;
  --contact-line: #06c755;
  --contact-line-dark: #04953f;
  --contact-mail: #176ea5;
  --contact-mail-dark: #0d4f7b;
  --contact-consult: #7357c7;
  --contact-consult-dark: #4d3797;
}

.article-hero .hero-action-panel {
  border-top: 4px solid var(--contact-phone);
  background:
    linear-gradient(135deg, rgb(255 248 238 / 95%), rgb(239 249 255 / 96%));
}

.article-hero .hero-contact-actions .hero-phone {
  color: #fff !important;
  background: linear-gradient(135deg, var(--contact-phone), var(--contact-phone-dark)) !important;
  border-color: var(--contact-phone-dark) !important;
  box-shadow: 0 8px 20px rgb(201 92 0 / 24%);
}

.article-hero .hero-contact-actions .hero-line {
  color: #fff !important;
  background: linear-gradient(135deg, var(--contact-line), var(--contact-line-dark)) !important;
  border-color: var(--contact-line-dark) !important;
  box-shadow: 0 8px 20px rgb(4 149 63 / 22%);
}

.article-hero .hero-contact-actions .hero-mail {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, var(--contact-mail), var(--contact-mail-dark)) !important;
  border-color: var(--contact-mail-dark) !important;
  box-shadow: 0 8px 20px rgb(13 79 123 / 22%);
}

.article-hero .hero-contact-actions .hero-mail::after {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
}

.article-hero .hero-contact-actions a:hover,
.article-hero .hero-contact-actions a:focus-visible,
.column-page .global-cta .cta-list a:hover,
.column-page .global-cta .cta-list a:focus-visible {
  filter: brightness(1.06);
  transform: translateY(-2px);
}

.column-page .global-cta {
  background:
    radial-gradient(circle at 88% 12%, rgb(6 199 85 / 24%), transparent 32%),
    radial-gradient(circle at 8% 90%, rgb(237 123 22 / 24%), transparent 35%),
    linear-gradient(135deg, #0d2f4f, #176ea5) !important;
}

.column-page .global-cta .cta-list .btn-phone {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, var(--contact-phone), var(--contact-phone-dark)) !important;
  border-color: var(--contact-phone-dark) !important;
  box-shadow: 0 10px 24px rgb(201 92 0 / 28%);
}

.column-page .global-cta .cta-list .btn-line {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, var(--contact-line), var(--contact-line-dark)) !important;
  border-color: var(--contact-line-dark) !important;
  box-shadow: 0 10px 24px rgb(4 149 63 / 24%);
}

.column-page .global-cta .cta-list .btn-form {
  color: #fff !important;
  -webkit-text-fill-color: #fff !important;
  background: linear-gradient(135deg, var(--contact-mail), var(--contact-mail-dark)) !important;
  border-color: var(--contact-mail-dark) !important;
  box-shadow: 0 10px 24px rgb(13 79 123 / 24%);
}

.sidebar .side-fee-actions .side-button-phone {
  color: #fff;
  background: linear-gradient(135deg, var(--contact-phone), var(--contact-phone-dark));
  border-color: var(--contact-phone-dark);
  box-shadow: 0 8px 20px rgb(201 92 0 / 24%);
}

@media (max-width: 768px) {
  .column-page .global-cta .cta-list .btn-phone {
    padding-inline: 12px;
    font-size: .8rem !important;
    white-space: nowrap;
  }

  .mobile-cta {
    display: flex !important;
    gap: 0 !important;
    height: calc(66px + env(safe-area-inset-bottom)) !important;
    padding: 0 0 env(safe-area-inset-bottom) !important;
    overflow: hidden;
    background: #fff;
  }

  .mobile-cta a {
    flex: 1 1 0;
    width: auto !important;
    min-width: 0;
    border: 0 !important;
    border-right: 1px solid rgb(255 255 255 / 34%) !important;
    border-radius: 0 !important;
    color: #fff !important;
    font-size: 11px !important;
    letter-spacing: .03em;
  }

  .mobile-cta a:last-child {
    border-right: 0 !important;
  }

  .mobile-cta .mobile-phone,
  .mobile-cta [data-cta="mobile-phone"],
  .mobile-cta a[href^="tel:"] {
    color: #fff !important;
    background: linear-gradient(135deg, var(--contact-phone), var(--contact-phone-dark)) !important;
  }

  .mobile-cta .mobile-line,
  .mobile-cta [data-cta="mobile-line"] {
    color: #fff !important;
    background: linear-gradient(135deg, var(--contact-line), var(--contact-line-dark)) !important;
  }

  .mobile-cta .mobile-mail,
  .mobile-cta [data-cta="mobile-mail"] {
    color: #fff !important;
    background: linear-gradient(135deg, var(--contact-mail), var(--contact-mail-dark)) !important;
  }

  .mobile-cta .mobile-consult,
  .mobile-cta [data-cta="mobile-consult"] {
    color: #fff !important;
    background: linear-gradient(135deg, var(--contact-consult), var(--contact-consult-dark)) !important;
  }

  .mobile-cta a:focus-visible {
    position: relative;
    z-index: 2;
    outline: 3px solid #fff;
    outline-offset: -5px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .article-hero .hero-contact-actions a,
  .column-page .global-cta .cta-list a {
    transition: none !important;
  }
}
