.site-footer--tailorfit { --tailorfit-font-primary: var(--tailorfit-footer-font,Tajawal,Arial,sans-serif); }
.site-footer__mobile { display: none; }
.site-footer__desktop { display: block; }
.site-footer--tailorfit { position: relative; overflow: hidden; padding: 72px 0 0; background: linear-gradient(to bottom,transparent 0 64px,#080b0f 64px); color: #fff; font-family: var(--tailorfit-font-primary); font-weight: 400; line-height: 1.8; }
.site-footer--tailorfit * { box-sizing: border-box; }
.site-footer__wave { position: absolute; inset: 0 0 auto; display: block; width: 100%; height: 72px; color: #080b0f; transform: translateY(-1px); }
.site-footer__inner { position: relative; width: min(1400px,calc(100% - 64px)); margin-inline: auto; padding: clamp(2.75rem,5vw,4.75rem) 0 1.4rem; }
.site-footer--tailorfit .site-footer__grid { display: grid; grid-template-columns: minmax(240px,1.25fr) minmax(150px,.75fr) minmax(190px,1fr) minmax(250px,1.2fr); align-items: start; gap: clamp(1.5rem,3.5vw,4rem); }
.site-footer--tailorfit h2 { margin: 0 0 1.25rem; color: #fff; font-family: inherit; font-size: clamp(1.35rem,2vw,1.75rem); font-weight: 700; line-height: 1.4; }
.site-footer--tailorfit .site-footer__column h2::after { display: block; width: 42px; height: 2px; margin-top: .65rem; border-radius: 99px; background: #4b9ac8; content: ""; }
.site-footer--tailorfit ul { display: grid; gap: .65rem; margin: 0; padding: 0; list-style: none; }
.site-footer--tailorfit li { margin: 0; }
.site-footer--tailorfit a { color: #e6edf3; text-underline-offset: 4px; }
.site-footer--tailorfit .site-footer__column a { display: inline-flex; min-height: 30px; align-items: center; font-weight: 500; line-height: 1.7; text-decoration-color: transparent; transition: color .2s ease,text-decoration-color .2s ease,transform .2s ease; }
.site-footer--tailorfit .site-footer__column a:hover { color: #8fc8e8; text-decoration-color: currentColor; transform: translateX(var(--footer-link-shift,3px)); }
[dir="rtl"] .site-footer--tailorfit { --footer-link-shift: -3px; }
.site-footer--tailorfit a:focus-visible { outline: 2px solid #8fc8e8; outline-offset: 4px; border-radius: 3px; }
.site-footer--tailorfit .site-footer__brand { max-width: 360px; text-align: start; }
.site-footer__brand-link { display: inline-flex; align-items: center; gap: .9rem; color: #fff; text-decoration: none; }
.site-footer--tailorfit .site-footer__brand-link h2 { margin: 0; font-size: clamp(1.8rem,2.3vw,2.45rem); font-weight: 700; }
.site-footer__logo { display: grid; width: 148px; height: 74px; place-items: center; border: 1px solid rgba(255,255,255,.2); border-radius: 8px; background: #fff; }
.site-footer__logo img { display: block; width: 132px; height: auto; object-fit: contain; }
.site-footer--tailorfit .site-footer__brand > p { margin: 1rem 0 0; color: #c8d2dc; line-height: 1.85; }
.site-footer--tailorfit .site-footer__location { display: flex; align-items: flex-start; gap: .55rem; margin: 1.1rem 0 0; color: #dbe4ec; font-weight: 500; line-height: 1.7; }
.site-footer__location svg { width: 20px; height: 20px; flex: 0 0 auto; color: #8fc8e8; }
.site-footer__contact-list a { flex-direction: column; align-items: flex-start !important; gap: .05rem; overflow-wrap: anywhere; }
.site-footer__contact-list a span { color: #8fc8e8; font-size: .84rem; }
.site-footer__contact-list bdi { max-width: 100%; overflow-wrap: anywhere; }
.site-footer__contact { display: flex; justify-content: center; margin-top: clamp(2rem,4vw,3rem); padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.15); }
.site-footer__contact a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; gap: .6rem; padding: .65rem 1.2rem; border: 1px solid rgba(255,255,255,.75); border-radius: 999px; color: #fff; font-weight: 500; text-decoration: none; }
.site-footer__contact a:hover,
.site-footer__contact a:focus-visible { border-color: #25d366; background: #25d366; color: #fff; }
.site-footer__contact svg { width: 21px; height: 21px; fill: currentColor; }
.site-footer__social { display: flex; flex-wrap: nowrap; align-items: center; justify-content: center; gap: 14px; }
.site-footer__social--desktop { margin-top: 1.25rem; }
.site-footer__social .social-icon { display: grid; width: 46px; height: 46px; flex: 0 0 46px; place-items: center; border: 1px solid rgba(255,255,255,.62); border-radius: 50%; color: #fff; text-decoration: none; transition: border-color .2s ease,background-color .2s ease,color .2s ease,transform .2s ease; }
.site-footer__social .social-icon svg { display: block; width: 23px; height: 23px; fill: currentColor; stroke: currentColor; }
.site-footer__social a.social-icon:hover,
.site-footer__social a.social-icon:focus-visible { border-color: #8fc8e8; background: rgba(143,200,232,.14); color: #8fc8e8; transform: translateY(-2px); }
.site-footer__social .is-disabled { opacity: .62; cursor: default; }
.site-footer__bottom { display: flex; width: 100vw; min-height: 60px; align-items: center; justify-content: center; margin: clamp(2rem,4vw,3rem) calc(50% - 50vw) 0; padding: 18px max(24px,calc((100vw - 1400px)/2)); border-top: 1px solid rgba(255,255,255,.25); background: #05070a; text-align: center; }
.site-footer__bottom p { margin: 0; color: #e3e8ed; font-size: clamp(14px,1.1vw,16px); font-weight: 500; line-height: 1.7; }
@media (max-width: 1023px) {
	.site-footer--tailorfit {
		overflow: hidden;
		padding: 0;
		background: #0b0b0b;
		color: #fff;
	}
	.site-footer__wave,
	.site-footer__desktop,
	.mobile-footer__payments { display: none; }
	.site-footer__inner {
		width: min(100% - 32px,720px);
		padding: 3rem 0 calc(6rem + env(safe-area-inset-bottom,0px));
	}
	.site-footer__mobile {
		display: flex;
		min-width: 0;
		flex-direction: column;
		align-items: stretch;
		gap: 2rem;
		font-size: 17px;
		text-align: center;
	}
	.mobile-footer__intro { max-width: 640px; margin-inline: auto; }
	.mobile-footer__intro p { margin: 0; color: #e2e2e2; line-height: 1.9; }
	.mobile-footer__business { display: flex; min-width: 0; flex-direction: column; align-items: center; gap: .75rem; }
	.mobile-footer__business p { margin: 0; color: #e4e4e4; overflow-wrap: anywhere; }
	.mobile-footer__business strong { color: #fff; }
	.mobile-footer__official-mark { display: grid; width: 176px; height: 88px; margin-block: .35rem; place-items: center; border-radius: 8px; background: #fff; }
	.mobile-footer__official-mark img { width: 156px; height: auto; object-fit: contain; }
	.mobile-footer__verification { display: inline-flex; max-width: 220px; align-self: center; justify-content: center; }
	.mobile-footer__verification img { display: block; width: auto; max-width: 100%; max-height: 92px; object-fit: contain; }
	.mobile-footer__important h2 { margin: 0 0 1.5rem; color: #fff; font-size: 22px; }
	.site-footer--tailorfit .footer-links {
		display: grid;
		grid-template-columns: repeat(2,minmax(0,1fr));
		gap: 18px 24px;
		margin: 0;
		padding: 0;
		list-style: none;
	}
	.site-footer--tailorfit .footer-links li { min-width: 0; }
	.site-footer--tailorfit .footer-links a { display: inline-flex; min-height: 44px; align-items: center; justify-content: center; color: #e8e8e8; font-size: 17px; line-height: 1.6; text-decoration: none; overflow-wrap: anywhere; }
	.mobile-footer__separator { width: 100%; border-top: 1px dashed rgba(255,255,255,.48); }
	.mobile-footer__contact-actions { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
	.mobile-footer__contact-actions a { display: inline-flex; min-width: 0; min-height: 48px; align-items: center; justify-content: center; gap: 8px; padding: 8px 10px; border: 1px solid rgba(255,255,255,.9); border-radius: 8px; color: #fff; font-size: 16px; line-height: 1.4; text-decoration: none; }
	.mobile-footer__contact-actions svg { width: 20px; height: 20px; flex: 0 0 auto; fill: currentColor; }
	.mobile-footer__social { flex-wrap: nowrap; }
	.mobile-footer__copyright { width: 100vw; min-height: 60px; margin: 0 calc(50% - 50vw); padding: 18px 16px; border-top: 1px solid rgba(255,255,255,.25); background: #05070a; color: #e3e8ed; font-size: 15px; font-weight: 500; line-height: 1.7; }
	.site-footer__mobile a:hover { border-color: #8fc8e8; color: #8fc8e8; }
	.site-footer__mobile a:focus-visible { outline: 3px solid #8fc8e8; outline-offset: 4px; border-radius: 8px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.site-footer__inner { width: min(100% - 48px,900px); }
	.site-footer__mobile { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); align-items: start; column-gap: 3rem; }
	.mobile-footer__intro,
	.mobile-footer__verification,
	.mobile-footer__separator,
	.mobile-footer__contact-actions,
	.mobile-footer__social,
	.mobile-footer__copyright { grid-column: 1 / -1; }
	.mobile-footer__business { grid-column: 1; }
	.mobile-footer__important { grid-column: 2; }
}
@media (min-width: 1024px) and (max-width: 1180px) {
	.site-footer__inner { width: min(100% - 40px,1400px); }
	.site-footer--tailorfit .site-footer__grid { grid-template-columns: minmax(210px,1.15fr) minmax(130px,.7fr) minmax(175px,1fr) minmax(220px,1.15fr); gap: 1.5rem; }
}
@media (max-width: 430px) {
	.site-footer__inner { width: min(100% - 28px,720px); padding-top: 2.5rem; }
	.site-footer__mobile { gap: 1.75rem; font-size: 16px; }
	.site-footer--tailorfit .footer-links { gap: 16px 18px; }
	.site-footer--tailorfit .footer-links a { font-size: 16px; }
	.mobile-footer__contact-actions { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) {
	.site-footer--tailorfit .site-footer__column a,
	.site-footer__social .social-icon { transition: none; transform: none; }
}

/* Shared copyright strip: reference geometry, independent of footer language. */
.site-footer--tailorfit .site-footer__inner { padding-bottom: 0; }
.tailorfit-copyright { margin-top: clamp(2rem,4vw,3rem); border-top: 1px dashed #dedede; background: #1a1a1a; color: #fff; }
.tailorfit-copyright__inner { display: flex; direction: ltr; width: min(1424px,calc(100% - 48px)); min-height: 64px; margin-inline: auto; padding-block: 16px; align-items: center; justify-content: space-between; gap: 16px 32px; }
.site-footer--tailorfit .tailorfit-copyright__marks { display: flex; flex-wrap: wrap; justify-content: flex-start; gap: 8px; margin: 0; padding: 0; list-style: none; min-width: 0; }
.site-footer--tailorfit .tailorfit-copyright__mark { margin: 0; display: flex; flex: 0 0 48px; width: 48px; height: 32px; align-items: center; justify-content: center; overflow: hidden; background: #fff; border-radius: 12px; }
.tailorfit-copyright__mark img { display: block; width: 40px; height: 24px; object-fit: contain; }
.site-footer--tailorfit .tailorfit-copyright__text { flex: 0 0 auto; margin: 0; color: #fff; font-family: inherit; font-size: 14px; font-weight: 400; line-height: 1.5; text-align: right; }
@media (max-width: 1023px) {
 .tailorfit-copyright { margin-top: 1.75rem; }
 .tailorfit-copyright__inner { width: calc(100% - 28px); padding-bottom: calc(16px + env(safe-area-inset-bottom,0px)); flex-wrap: wrap; justify-content: center; gap: 16px; }
 .site-footer--tailorfit .tailorfit-copyright__marks { justify-content: center; }
 .site-footer--tailorfit .tailorfit-copyright__text { flex-basis: 100%; width: 100%; min-height: 58px; margin: 0; padding: 18px 68px; text-align: center; }
 .tailorfit-copyright__text bdi { white-space: nowrap; }
}
/* Keep the unchanged floating WhatsApp control clear of the laptop copyright. */
@media (min-width: 1024px) and (max-width: 1599px) {
 .site-footer--tailorfit .tailorfit-copyright__text { margin-right: 64px; }
}

/* One shared business row; keep the emblem physically on the right in both languages. */
.site-footer--tailorfit .footer-business { display: grid; direction: rtl; grid-template-columns: 48px minmax(0,1fr) minmax(0,1fr) minmax(240px,1.4fr); align-items: center; gap: 24px; width: min(100%,820px); margin: 32px auto 0; color: #e6edf3; }
.footer-business__emblem { display: block; width: 48px; height: 62px; object-fit: contain; }
.footer-business__item { min-width: 0; text-align: center; line-height: 1.5; }
.footer-business__label { display: block; margin-bottom: 6px; font-size: 15px; font-weight: 700; }
.footer-business__item bdi { display: block; white-space: nowrap; font-size: 16px; font-weight: 400; }
@media (max-width: 430px) {
 .site-footer--tailorfit .footer-business { grid-template-columns: 36px minmax(0,1fr) minmax(0,1fr); gap: 10px; margin-top: 28px; }
 .footer-business__emblem { width: 36px; height: 47px; }
 .footer-business__label { font-size: 13px; }
 .footer-business__item bdi { font-size: 14px; }
}

.footer-business__item--iban bdi { direction: ltr; unicode-bidi: isolate; }
@media (max-width: 767px) {
 .site-footer--tailorfit .footer-business { grid-template-columns: 48px minmax(0,1fr) minmax(0,1fr); max-width: 480px; }
 .footer-business__item--iban { grid-column: 1 / -1; }
}
@media (max-width: 430px) {
 .site-footer--tailorfit .footer-business { grid-template-columns: 36px minmax(0,1fr) minmax(0,1fr); }
}

/* Footer-only typography: local licensed families, natural Arabic letter spacing. */
.site-footer--tailorfit {
 --tailorfit-footer-font: "Tajawal", Arial, sans-serif;
 font-family: var(--tailorfit-footer-font);
 font-size: 16px;
 font-weight: 400;
 letter-spacing: normal;
}
.site-footer--tailorfit:lang(en) { --tailorfit-footer-font: "Inter", Arial, sans-serif; }
.site-footer--tailorfit .site-footer__column h2,
.site-footer--tailorfit .mobile-footer__important h2 { font-size: 22px; font-weight: 700; line-height: 1.5; }
.site-footer--tailorfit .site-footer__brand-link h2 { font-size: 30px; font-weight: 700; }
.site-footer--tailorfit .site-footer__column a,
.site-footer--tailorfit .footer-links a { font-size: 16px; font-weight: 400; line-height: 1.7; }
.site-footer--tailorfit .site-footer__brand > p,
.site-footer--tailorfit .mobile-footer__intro p,
.site-footer--tailorfit .mobile-footer__business p { font-size: 16px; font-weight: 400; line-height: 1.8; }
.site-footer--tailorfit .mobile-footer__business strong,
.site-footer--tailorfit .site-footer__contact a,
.site-footer--tailorfit .mobile-footer__contact-actions a { font-weight: 500; }
.site-footer--tailorfit .footer-business__label { font-weight: 500; }
.site-footer--tailorfit .tailorfit-copyright__text { font-size: 15px; font-weight: 400; line-height: 1.5; }
@media (max-width: 1023px) {
 .site-footer--tailorfit .mobile-footer__important h2 { font-size: 20px; }
}

/* Shared coverage line, without altering existing footer content or links. */
.site-footer--tailorfit .site-footer__service-areas { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 4px 16px; margin: 28px 0 0; padding: 16px 0 0; border-top: 1px solid rgba(255,255,255,.15); color: #e6edf3; font-size: 15px; line-height: 1.8; text-align: center; }
.site-footer__service-areas strong { color: #fff; font-weight: 700; }
.site-footer__service-areas span { max-width: 100%; }

/* Static hours beside the existing coverage information; no status indicator. */
.site-footer--tailorfit .site-footer__working-hours { display: flex; flex-wrap: wrap; align-items: baseline; justify-content: center; gap: 4px 16px; margin: 8px 0 0; color: #e6edf3; font-size: 15px; line-height: 1.8; text-align: center; }
.site-footer__working-hours strong { color: #fff; font-weight: 700; }
.site-footer__working-hours span { max-width: 100%; }
