/*
 * DEC-0037 — static-by-default public presentation.
 *
 * Scope stays deliberately narrow: continuous/decorative and scroll-entry
 * motion is stopped while functional controls keep their existing owners.
 */

body *,
body *::before,
body *::after {
	animation: none !important;
	animation-delay: 0s !important;
}

/* Source reveal containers begin hidden until their animation runs. */
body :where(.wow, .reveal, .text-anime-style-3) {
	visibility: visible !important;
	opacity: 1 !important;
}

/* A stationary ticker keeps one semantic copy in the available viewport. */
.our-scrolling-ticker .scrolling-content {
	animation: none !important;
}

.our-scrolling-ticker .scrolling-content + .scrolling-content {
	display: none;
}

/*
 * DEC-0038 — static hover and media presentation.
 *
 * These are presentation-only CTA/link surfaces. Removing their transition
 * leaves their existing colour, border and focus states available instantly;
 * it does not include navigation, accordion, popup, carousel or comparison
 * controls, whose transitions can communicate functional open/drag state.
 */
body :where(
	.btn-default,
	.readmore-btn,
	.about-video-button a,
	.video-play-button a,
	.footer-newsletters-form .form-group button,
	.section-footer-text p a,
	.booking-contact-content p a,
	.appointment-contact-content p a,
	.footer-links ul li a,
	.footer-social-links ul li a,
	.team-social-list ul li a,
	.team-social-icon ul li a,
	.page-pagination ul li a,
	.post-tags .tag-links a,
	.post-social-sharing ul li a,
	.case-study-catagery-list ul li span a,
	.page-catagery-list ul li a
) {
	transition: none !important;
}

/* Pseudo-elements stay outside :where() for reliable public-browser matching. */
body .btn-default::before,
body .btn-default::after,
body .readmore-btn::after {
	transition: none !important;
}

/* Button sweep and arrow drift become one immediate, static colour state. */
body .btn-default::after {
	display: none !important;
}

body .btn-default:is(:hover, :focus, :active) {
	background: var(--primary-color) !important;
	transform: none !important;
}

body .btn-default:focus-visible {
	outline: 3px solid var(--dermal-color-focus) !important;
	outline-offset: 3px;
}

/* Source resting position is -20px desktop and -15px through its 991px breakpoint. */
body .btn-default:is(:hover, :focus, :active)::before {
	transform: translate(-20px, -50%) !important;
}

body .readmore-btn:is(:hover, :focus-visible)::after {
	transform: translate(-2px, -50%) !important;
}

body.home-page .readmore-btn:is(:hover, :focus-visible)::after {
	transform: translate(-5px, -50%) rotate(45deg) !important;
}

body .blog-page .readmore-btn:is(:hover, :focus-visible)::after {
	transform: translate(-0.3rem, -50%) rotate(45deg) !important;
}

/* Card media stays fixed; links and their keyboard focus remain operative. */
body :where(
	.service-box .service-image img,
	.team-item .team-image img,
	.post-item .post-featured-image img,
	.case-study-item .case-study-image figure img,
	.service-item .icon-box img,
	.why-choose-list-item .icon-box img,
	.our-benefit-item .icon-box img,
	.service-entry-item .icon-box img
) {
	transition: none !important;
	transform: none !important;
	filter: none !important;
	opacity: 1 !important;
}

body .service-item .icon-box::before,
body .why-choose-list-item .icon-box::before,
body .excellence-item-no::before {
	display: none !important;
	transition: none !important;
	transform: none !important;
}

/* Non-image cards retain instant colour/contrast feedback without movement. */
body :where(
	.post-item,
	.mission-vision-item,
	.skincare-item::before,
	.skincare-item .icon-box,
	.skincare-item .icon-box::before,
	.skincare-item-content h3,
	.skincare-item-content p
) {
	transition: none !important;
}

body :where(
	.post-item:hover,
	.mission-vision-item:hover,
	.faq-page .page-catagery-list ul li a:is(:hover, :focus-visible)
) {
	transform: none !important;
}

/* Photo-only overlay/reveal treatments are removed instead of made abrupt. */
body img {
	transition: none !important;
}

body .image-anime::after {
	content: none !important;
	display: none !important;
	height: 0 !important;
	background-color: transparent !important;
	transition: none !important;
}

body .case-study-image::before,
body .case-study-image .case-study-btn,
body .video-gallery-image a::before,
body .video-gallery-image a::after {
	display: none !important;
	transition: none !important;
}

/* Team copy may still be reached by pointer or keyboard, without a slide/fade. */
body .team-body,
body .team-social-list {
	transition: none !important;
}

body .team-body,
body .team-item:is(:hover, :focus-within) .team-body {
	transform: none !important;
}

@media only screen and (max-width: 991px) {
	body .btn-default:is(:hover, :focus, :active)::before {
		transform: translate(-15px, -50%) !important;
	}
}

@media (prefers-reduced-motion: reduce) {
	html {
		scroll-behavior: auto;
	}
}
