.elementor-widget[class*="elementor-widget-swiss_shine_"] { margin-block-end: 0; margin-bottom: 0; }

.ss-cleaning-hero {
	background: #043f79;
	color: #fff;
	min-height: 760px;
	overflow: hidden;
	position: relative;
}

.ss-hero-track { min-height: inherit; position: relative; }
.ss-hero-slide {
	display: flex;
	inset: 0;
	min-height: inherit;
	opacity: 0;
	overflow: hidden;
	pointer-events: none;
	position: absolute;
	transition: opacity .75s ease, visibility .75s ease;
	visibility: hidden;
	width: 100%;
}
.ss-hero-slide.is-active { opacity: 1; pointer-events: auto; position: relative; visibility: visible; z-index: 2; }
.ss-cleaning-hero .ss-hero-slide > img.ss-hero-media {
	border: 0;
	display: block;
	height: 100%;
	inset: 0;
	margin: 0;
	max-height: none;
	max-width: none;
	min-height: 100%;
	min-width: 100%;
	object-fit: cover;
	object-position: center center;
	position: absolute;
	width: 100%;
}
.ss-hero-slide .ss-hero-content { opacity: 0; transform: translateY(18px); transition: opacity .65s ease .15s, transform .65s ease .15s; }
.ss-hero-slide.is-active .ss-hero-content { opacity: 1; transform: none; }

.ss-cleaning-hero .ss-hero-overlay {
	background: linear-gradient(90deg, rgba(2, 33, 66, .93) 0%, rgba(3, 67, 126, .78) 48%, rgba(3, 91, 169, .2) 100%), linear-gradient(0deg, rgba(2, 33, 66, .22), rgba(2, 33, 66, .1));
	inset: 0;
	position: absolute;
}

.ss-hero-content { padding-bottom: 75px; padding-top: 145px; position: relative; z-index: 2; }
.min-vh-75 { min-height: 75vh; }
.ss-cleaning-hero .ss-hero-heading { color: #fff; font-size: clamp(2.55rem, 6vw, 5.6rem); max-width: 900px; text-shadow: 0 4px 28px rgba(0,0,0,.2); }
.ss-cleaning-hero .ss-hero-content > .row p, .ss-cleaning-hero .col-lg-8 > p { color: rgba(255,255,255,.86); font-size: clamp(1.05rem, 1.8vw, 1.28rem); max-width: 720px; }
.ss-hero-badge { align-items: center; backdrop-filter: blur(10px); background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.28); border-radius: 999px; color: #fff; display: inline-flex; font-size: .79rem; font-weight: 800; letter-spacing: .08em; margin-bottom: 1.4rem; padding: .55rem .8rem; text-transform: uppercase; }
.ss-hero-proof { display: flex; flex-wrap: wrap; gap: .7rem 1.2rem; margin-top: 2rem; }
.ss-hero-proof span { align-items: center; color: rgba(255,255,255,.9); display: inline-flex; font-size: .92rem; font-weight: 650; gap: .45rem; }
.ss-hero-proof i { color: #f292c9; }
.ss-hero-bubble { border: 1px solid rgba(255,255,255,.25); border-radius: 50%; position: absolute; z-index: 1; }
.ss-hero-bubble::before { background: rgba(255,255,255,.1); border-radius: inherit; content: ""; inset: 8px; position: absolute; }
.ss-hero-bubble-one { height: 170px; right: 6%; top: 22%; width: 170px; }
.ss-hero-bubble-two { bottom: 8%; height: 95px; right: 24%; width: 95px; }
.ss-hero-arrows { bottom: clamp(34px, 6vw, 72px); display: flex; gap: .65rem; position: absolute; right: max(24px, calc((100vw - var(--ss-container-width, 1320px)) / 2)); z-index: 5; }
.ss-hero-arrows button { align-items: center; backdrop-filter: blur(10px); background: rgba(255,255,255,.14); border: 1px solid rgba(255,255,255,.3); border-radius: 50%; color: #fff; display: inline-flex; height: 48px; justify-content: center; transition: background .2s ease, transform .2s ease; width: 48px; }
.ss-hero-arrows button:hover, .ss-hero-arrows button:focus-visible { background: #fff; color: var(--ss-secondary); outline: 0; transform: translateY(-2px); }
.ss-hero-dots { align-items: center; bottom: clamp(20px, 5vw, 58px); display: flex; gap: 0; left: 50%; position: absolute; transform: translateX(-50%); z-index: 5; }
.ss-hero-dots button { align-items: center; background: transparent; border: 0; display: inline-flex; height: 44px; justify-content: center; padding: 0; position: relative; width: 44px; }
.ss-hero-dots button::before { background: rgba(255,255,255,.48); border-radius: 999px; content: ""; height: 8px; transition: background .25s ease, width .25s ease; width: 8px; }
.ss-hero-dots button.is-active::before { background: #fff; width: 28px; }
.ss-hero-dots button:focus-visible { outline: 3px solid rgba(242,146,201,.8); outline-offset: 0; }

.ss-service-section { background: linear-gradient(180deg, #f7fbff 0%, #eef7ff 100%); }
.ss-filter-bar { display: flex; flex-wrap: wrap; gap: .7rem; justify-content: center; margin: -18px 0 42px; }
.ss-filter-bar button { background: #fff; border: 1px solid var(--ss-border); border-radius: 999px; color: var(--ss-secondary); cursor: pointer; font-weight: 700; padding: .62rem 1rem; transition: .2s ease; }
.ss-filter-bar button:hover, .ss-filter-bar button.active { background: var(--ss-primary); border-color: var(--ss-primary); color: #fff; }
.ss-service-col { transition: opacity .2s ease, transform .2s ease; }
.ss-service-col.is-hidden { display: none; }

.ss-service-card, .ss-reference-card, .ss-feature-card, .ss-testimonial-card {
	background: #fff;
	border: 1px solid var(--ss-border);
	border-radius: var(--ss-radius, 22px);
	box-shadow: 0 18px 50px rgba(3,91,169,.08);
	height: 100%;
	overflow: hidden;
	transition: transform .28s ease, box-shadow .28s ease, border-color .28s ease;
}
.ss-service-card:hover, .ss-reference-card:hover, .ss-feature-card:hover, .ss-testimonial-card:hover { border-color: rgba(222,100,170,.45); box-shadow: 0 28px 70px rgba(3,91,169,.15); transform: translateY(-7px); }
.ss-service-media { display: block; overflow: hidden; position: relative; }
.ss-service-img, .ss-reference-img { aspect-ratio: 16/10; display: block; object-fit: cover; transition: transform .5s ease; width: 100%; }
.ss-service-card:hover .ss-service-img, .ss-reference-card:hover .ss-reference-img { transform: scale(1.045); }
.ss-service-arrow { align-items: center; background: #fff; border-radius: 50%; bottom: 16px; box-shadow: 0 8px 22px rgba(0,0,0,.14); color: var(--ss-primary); display: flex; height: 44px; justify-content: center; position: absolute; right: 16px; width: 44px; }
.ss-service-body, .ss-reference-body { padding: 25px; }
.ss-service-body h3, .ss-reference-body h3 { margin-bottom: .7rem; }
.ss-service-body h3 a { color: inherit; }
.ss-service-body p, .ss-reference-body p { color: var(--ss-muted); }
.ss-service-category { color: var(--ss-accent); font-size: .75rem; font-weight: 800; letter-spacing: .07em; margin-bottom: .55rem; text-transform: uppercase; }
.ss-badges { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; }
.ss-badges span, .ss-reference-meta span { background: rgba(2,111,205,.07); border: 1px solid rgba(2,111,205,.11); border-radius: 999px; color: var(--ss-secondary); font-size: .76rem; font-weight: 700; padding: .38rem .62rem; }

.ss-features-section { background: #fff; }
.ss-feature-card { overflow: visible; padding: 30px; }
.ss-feature-card > span { align-items: center; background: linear-gradient(135deg, rgba(2,111,205,.12), rgba(222,100,170,.15)); border-radius: 18px; color: var(--ss-primary); display: flex; font-size: 1.55rem; height: 58px; justify-content: center; margin-bottom: 1.35rem; width: 58px; }
.ss-feature-card p { color: var(--ss-muted); margin: 0; }

.ss-references-section { background: #fff; }
.ss-reference-card .ss-eyebrow { align-items: center; margin-bottom: .7rem; }
.ss-reference-card .ss-eyebrow::before { display: none; }
.ss-reference-meta { display: flex; flex-wrap: wrap; gap: .45rem; margin-top: 1rem; }

.ss-cf7-form {
	background: #fff;
	border: 1px solid var(--ss-border);
	border-radius: 26px;
	box-shadow: 0 28px 70px rgba(3,91,169,.14);
	padding: clamp(24px, 4vw, 42px);
}
.ss-cf7-form label { color: var(--ss-heading); display: block; font-size: .9rem; font-weight: 700; width: 100%; }
.ss-cf7-form .wpcf7-form-control-wrap { display: block; margin-top: .45rem; }
.ss-cf7-form input:not([type="checkbox"]):not([type="submit"]), .ss-cf7-form select, .ss-cf7-form textarea {
	background: #f7fbff;
	border: 1px solid var(--ss-border);
	border-radius: 12px;
	color: var(--ss-text);
	min-height: 50px;
	padding: .72rem .82rem;
	width: 100%;
}
.ss-cf7-form textarea { min-height: 120px; resize: vertical; }
.ss-cf7-form input:focus, .ss-cf7-form select:focus, .ss-cf7-form textarea:focus { border-color: var(--ss-primary); box-shadow: 0 0 0 3px rgba(2,111,205,.12); outline: 0; }
.ss-cf7-form .wpcf7-checkbox { display: flex; flex-wrap: wrap; gap: .5rem 1rem; }
.ss-cf7-form .wpcf7-list-item { margin: 0; }
.ss-cf7-form .wpcf7-list-item label { align-items: center; display: inline-flex; font-weight: 500; gap: .35rem; }
.ss-cf7-form input[type="submit"] { background: linear-gradient(135deg, var(--ss-primary), var(--ss-secondary)); border: 0; border-radius: 999px; color: #fff; cursor: pointer; font-weight: 750; min-height: 52px; padding: .8rem 1.5rem; width: auto; }
.ss-cf7-form .wpcf7-not-valid-tip { color: #b42318; font-size: .78rem; margin-top: .3rem; }
.ss-cf7-form .wpcf7-response-output { border-radius: 12px; margin: 1rem 0 0 !important; padding: .7rem 1rem !important; }
.ss-form-setup-notice { background: #fff; border: 1px solid var(--ss-border); border-left: 4px solid var(--ss-accent); border-radius: 14px; padding: 20px; }

.ss-testimonials { background: linear-gradient(180deg, #f7fbff, #fff); }
.ss-testimonial-card { padding: 30px; }
.ss-testimonial-card .ss-rating { color: #f5a524; letter-spacing: .15em; margin-bottom: 1rem; }
.ss-testimonial-card p { color: var(--ss-muted); font-size: 1.02rem; }
.ss-testimonial-card strong { color: var(--ss-heading); display: block; }
.ss-testimonial-card > span { color: var(--ss-muted); font-size: .85rem; }

.ss-cta { padding-top: 0; }
.ss-cta-box { align-items: center; background: linear-gradient(125deg, #de64aa, #c53887 42%, #035ba9 100%); border-radius: 30px; box-shadow: 0 28px 75px rgba(197,56,135,.22); color: #fff; display: flex; gap: 30px; justify-content: space-between; overflow: hidden; padding: clamp(30px, 6vw, 64px); position: relative; }
.ss-cta-box::after { border: 1px solid rgba(255,255,255,.3); border-radius: 50%; content: ""; height: 240px; position: absolute; right: 20%; top: -150px; width: 240px; }
.ss-cta-box h2, .ss-cta-box .ss-eyebrow { color: #fff; margin-bottom: 0; max-width: 900px; position: relative; z-index: 1; }
.ss-cta-box .btn { background: #fff; color: var(--ss-secondary); flex: 0 0 auto; position: relative; z-index: 1; }

.swiss_shine-dark-mode .ss-service-section,
.swiss_shine-dark-mode .ss-features-section,
.swiss_shine-dark-mode .ss-references-section,
.swiss_shine-dark-mode .ss-testimonials { background: var(--ss-bg); }
.swiss_shine-dark-mode .ss-service-card,
.swiss_shine-dark-mode .ss-reference-card,
.swiss_shine-dark-mode .ss-feature-card,
.swiss_shine-dark-mode .ss-testimonial-card,
.swiss_shine-dark-mode .ss-cf7-form,
.swiss_shine-dark-mode .ss-form-setup-notice { background: var(--ss-surface); color: var(--ss-text); }
.swiss_shine-dark-mode .ss-service-body h3,
.swiss_shine-dark-mode .ss-reference-body h3,
.swiss_shine-dark-mode .ss-feature-card h3,
.swiss_shine-dark-mode .ss-testimonial-card strong { color: var(--ss-card-title, var(--ss-heading)); }
.swiss_shine-dark-mode .ss-cf7-form input:not([type="checkbox"]):not([type="submit"]),
.swiss_shine-dark-mode .ss-cf7-form select,
.swiss_shine-dark-mode .ss-cf7-form textarea { background: var(--ss-bg); color: var(--ss-text); }
.swiss_shine-dark-mode .ss-filter-bar button,
.swiss_shine-dark-mode .ss-service-arrow { background: var(--ss-surface); color: var(--ss-header-active); }
.swiss_shine-dark-mode .ss-badges span,
.swiss_shine-dark-mode .ss-reference-meta span { background: rgba(255,255,255,.08); border-color: var(--ss-border); color: var(--ss-text); }
.swiss_shine-dark-mode .ss-filter-bar button:hover,
.swiss_shine-dark-mode .ss-filter-bar button.active { background: var(--ss-primary); color: var(--ss-button-text, #fff); }

@media (max-width: 991.98px) {
	.ss-cleaning-hero { min-height: 690px; }
	.ss-cleaning-hero .ss-hero-overlay { background: linear-gradient(90deg, rgba(2,33,66,.94), rgba(3,67,126,.78)); }
	.ss-hero-bubble { display: none; }
	.ss-cta-box { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 767.98px) {
	.ss-cleaning-hero { min-height: 650px; }
	.ss-cleaning-hero .ss-hero-slide > img.ss-hero-media { height: 100%; min-height: 100%; object-position: center center; width: 100%; }
	.ss-hero-content { padding-bottom: 60px; padding-top: 120px; }
	.ss-hero-proof { align-items: flex-start; flex-direction: column; }
	.ss-hero-arrows { bottom: 24px; right: 18px; }
	.ss-hero-arrows button { height: 44px; width: 44px; }
	.ss-hero-dots { bottom: 18px; left: 10px; transform: none; }
	.ss-service-body, .ss-reference-body, .ss-feature-card, .ss-testimonial-card { padding: 22px; }
	.ss-cf7-form { border-radius: 20px; }
}

@media (max-width: 575.98px) {
	.ss-cleaning-hero { min-height: 610px; }
	.ss-cleaning-hero .ss-hero-heading { font-size: clamp(2.3rem, 13vw, 3.5rem); }
	.ss-cleaning-hero .d-flex .btn { width: 100%; }
	.ss-filter-bar { justify-content: flex-start; overflow-x: auto; padding-bottom: .4rem; scroll-snap-type: x proximity; }
	.ss-filter-bar button { flex: 0 0 auto; scroll-snap-align: start; }
	.ss-cf7-form input[type="submit"] { width: 100%; }
	.ss-cta-box .btn { width: 100%; }
}
