/* Global override - make all text white on dark backgrounds */
.elementor-element,
.elementor-widget-text-editor,
.elementor-widget-heading,
.elementor-widget-tabs .tab-content,
.elementor-accordion-item,
.elementor-toggle-item {
  color: #ffffff !important;
}

/* All Elementor paragraphs and text should be white */
.elementor-element p,
.elementor-text-editor,
.elementor-widget-text-editor p,
.elementor-heading-title,
.elementor-title {
  color: #ffffff !important;
}

/* All links should be white with white hover */
.elementor-element a,
.elementor-button,
.elementor-menu-item {}

/* Cover ALL text elements - comprehensive override */
h1,
h2,
h3,
h4,
h5,
h6,
p,
span,
li,
td,
th,
label,
div,
.elementor-text,
.elementor-widget-text-editor,
.elementor-widget-heading,
.elementor-heading,
.elementor-tab-title a,
.elementor-accordion-title a,
.elementor-icon,
.elementor-image-box-title,
.elementor-image-box-description,
.elementor-counter-title,
.elementor-counter-number,
.elementor-progress-bar-text,
.testimonial-name,
.testimonial-text,
.elementor-testimonial__name,
.elementor-testimonial__text,
.elementor-price__currency,
.elementor-price__integer,
.elementor-price__fractional,
.elementor-price__period,
blockquote,
q {
  color: #ffffff !important;
}

/* Global reset — actual styles are loaded from wp-content via layout.tsx */
*,
*::before,
*::after {
  box-sizing: border-box;
}

/* Instant back-to-top — disable slow CSS smooth scrolling */
html {
  scroll-behavior: auto !important;
}

/* Updated Asifaa logo (includes contact number) */
.elementor-widget-theme-site-logo img,
.elementor-widget-image.elementor-widget-theme-site-logo img,
img.attachment-full.size-full.wp-image-3688,
.site-logo img,
.custom-logo {
  width: min(280px, 72vw) !important;
  max-width: 280px !important;
  height: auto !important;
  object-fit: contain !important;
}

/* Hide legacy WordPress / GeneratePress / EAEL scroll-to-top */
.generate-back-to-top,
.eael-ext-scroll-to-top-wrap,
.hfe-scroll-to-top-wrap,
.gkit-back-to-top {
  display: none !important;
  visibility: hidden !important;
  pointer-events: none !important;
  opacity: 0 !important;
}

/* New Asifaa scroll-to-top */
.asifaa-scroll-top {
  --asifaa-st-size: 52px;
  position: fixed;
  right: 22px;
  bottom: 28px;
  z-index: 9998;
  width: var(--asifaa-st-size);
  height: var(--asifaa-st-size);
  padding: 0;
  border: 0;
  border-radius: 50%;
  cursor: pointer;
  display: grid;
  place-items: center;
  color: #ffffff;
  background: #e50914;
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  transform: translateY(18px) scale(0.9);
  transition:
    opacity 220ms ease,
    transform 220ms ease,
    visibility 220ms ease,
    background-color 180ms ease;
}

.asifaa-scroll-top--visible {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transform: translateY(0) scale(1);
}

.asifaa-scroll-top__ring {
  position: absolute;
  inset: 0;
  border-radius: inherit;
  border: 1px solid rgba(255, 255, 255, 0.3);
  pointer-events: none;
}

.asifaa-scroll-top__icon {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: -1px;
}

.asifaa-scroll-top:hover {
  background: #b30000;
  transform: translateY(-3px) scale(1.05);
}

.asifaa-scroll-top:active {
  transform: translateY(0) scale(0.97);
  background: #8f0000;
}

.asifaa-scroll-top:focus-visible {
  outline: 2px solid #ffffff;
  outline-offset: 3px;
}

@media (max-width: 640px) {
  .asifaa-scroll-top {
    --asifaa-st-size: 46px;
    right: 14px;
    bottom: 18px;
  }
}

.elementor-element.elementor-element-1cbcfcb0 {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-element.elementor-element-6fa24df0 {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-element.elementor-element-29d2b23f .elementor-heading-title {
  text-align: left !important;
}

.elementor-5 .elementor-element.elementor-element-29d2b23f>.elementor-widget-container {
  margin: 150px auto 0px auto !important;
}

.elementor-widget-elementskit-dual-button-end .ekit-element-align-wrapper {
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-start !important;
}



.elementor-element-4565fca>.elementor-widget-container {
  margin: 0 auto !important;
  text-align: center !important;
}

.elementor-element-13fbd36 {
  text-align: center !important;
}

.elementor-element-13fbd36>.elementor-widget-container {
  margin: 40px auto 0px auto !important;
}

/* Fix "ON THE TABLE" overlapping with the text above it */
.elementor-element-362b879a>.elementor-widget-container {
  margin-top: 0px !important;
}

/* Fix background padding for WhatsApp Now button */
.elementor-element-560970c5 a.elementor-button {
  padding: 12px 24px !important;
}

a.elementor-button.elementor-button-link {
  padding: 0;
}

h3.elementor-heading-title.elementor-size-default {
  color: #ffff !important;
}

.elementor-element.elementor-element-5688470b {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-element.elementor-element-23f42f50 {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-element.elementor-element-1ba8dbe1 {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-element.elementor-element-7ab1985c,
.elementor-element.elementor-element-e8c6459,
.elementor-element.elementor-element-15c3c6b2,
.elementor-element .elementor-element-28027814 {
  width: 100vw !important;
  position: relative;
  left: 50%;
  right: 50%;
  margin-left: -50vw !important;
  margin-right: -50vw !important;
}

.elementor-5 .elementor-element.elementor-element-2108ab4e p {
  color: #ffff;
}

.elementor-toggle-title {
  color: #ffff !important;
}

.elementor-5 .elementor-element.elementor-element-65fc2c68 .elementor-tab-title .elementor-toggle-icon svg {
  fill: #F70000 !important;
}

.elementor-5 .elementor-element.elementor-element-41ea7cd9 .elementor-tab-title .elementor-toggle-icon svg {
  fill: #F70000 !important;
}

.elementor-5 .elementor-element.elementor-element-41ea7cd9 .elementor-tab-title.elementor-active .elementor-toggle-icon svg {
  fill: #F70000 !important;
}

.elementor-5 .elementor-element.elementor-element-63ef3904 .elementor-heading-title {

  color: #ffff !important;
}

.elementor-element.elementor-element-2d0e18d0.elementor-widget.elementor-widget-heading {
  color: #ffff;
}

.elementor-button-content-wrapper {

  padding: 15px;
}

.elementor-element .elementor-element-493645c .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-637f9b1e .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-6b69013a .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-e4edaca .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-6ead8e5e .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-688435e1 .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-2666081d .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-257df41b .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-6f3b7262 .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-29d2b23f .elementor-heading-title {
  display: flex;
  justify-content: center !important;
}

.elementor-element .elementor-element-43544695 .elementor-button-wrapper {
  display: flex;
  justify-content: center !important;
}

.elementor-element .elementor-element-4c11cf94 .elementor-button-wrapper {
  display: flex;
  justify-content: flex-start !important;
}

.elementor-element .elementor-element-7cd50ba6 .elementor-heading-title {
  display: flex;
  justify-content: left !important;
}

.elementor-element .elementor-element-1f9f2914 .elementor-heading-title {
  display: flex;
  text-align: left !important;
}

.elementor-element .elementor-element-1c804278 p {
  color: #FFF2F2;
}

.elementor-element .elementor-element-1c804278 span {
  color: #FFF2F2;
}

.elementor-5 .elementor-element.elementor-element-6bbe9275>.elementor-widget-container {
  margin: 0 !important;
}

/* Footer uses white (#fff) section background from Elementor; global white text rules
   would make all footer copy invisible. Scope dark body copy + red column titles. */
.site-footer .elementor-element,
.site-footer .elementor-widget-text-editor,
.site-footer .elementor-widget-text-editor p,
.site-footer p,
.site-footer li,
.site-footer span,
.site-footer td,
.site-footer th,
.site-footer label,
.site-footer .elementor-icon-list-text {
  color: #1a1a1a !important;
}

/* Column headings (Quick Links / Call Girls / etc.) — red */
.site-footer .elementor-widget-heading .elementor-heading-title,
.site-footer h1.elementor-heading-title,
.site-footer h2.elementor-heading-title,
.site-footer h3.elementor-heading-title,
.site-footer h4.elementor-heading-title {
  color: #e50914 !important;
}

.site-footer a:not(.elementor-button) {
  color: #b30000 !important;
}

.site-footer a:not(.elementor-button):hover {
  color: #000000 !important;
}

/* Footer “Call Now” (and similar) — white label on red Elementor button */
.site-footer .elementor-button,
.site-footer .elementor-button .elementor-button-content-wrapper,
.site-footer .elementor-button .elementor-button-text {
  color: #ffffff !important;
}

.site-footer .elementor-button:hover,
.site-footer .elementor-button:hover .elementor-button-text {
  color: #ffffff !important;
}

.site-footer .elementor-button span {
  color: #ffffff !important;
}

.wp-call-button {
  display: none !important;
}