/* ==========================================================================
   מנעולן ברגע — Redesign 6.0 (local sandbox, branch "redesign")
   Built to the approved reference, measured at ~2.17x (reference page 662px → 1440px viewport):
   hero card 776px with a floating white bar, a quiet row of city "logos", an about statement,
   a photo-card carousel cut at both edges, a four-step bento.
   Palette: orange / black / white only (Owner 2026-10-07).
   ========================================================================== */

/* Futurism by Alon Tayar — self-hosted (Owner's font files): 200 ExtraLight, 400 Regular, 700 Bold, 900 Black. */
@font-face {
	font-family: "Futurism";
	src: url("../fonts/futurism-200.woff2") format("woff2");
	font-weight: 200;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Futurism";
	src: url("../fonts/futurism-400.woff2") format("woff2");
	font-weight: 400;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Futurism";
	src: url("../fonts/futurism-700.woff2") format("woff2");
	font-weight: 700;
	font-style: normal;
	font-display: swap;
}
@font-face {
	font-family: "Futurism";
	src: url("../fonts/futurism-900.woff2") format("woff2");
	font-weight: 900;
	font-style: normal;
	font-display: swap;
}

:root {
	--rd-deep: #292524;
	--rd-deep-rgb: 41, 37, 36;
	--rd-deep-2: #3b3431;
	--rd-accent: #fb923c;
	--rd-accent-2: #f97316;
	--rd-accent-ink: #1c1917;
	--rd-accent-soft: #fde6d2;
	--rd-dot: #ea580c;
	--rd-ink: #1c1917;
	--rd-muted: #6b625c;
	--rd-line: #ebe6e2;
	--rd-bg: #ffffff;
	--rd-tint: #f6f4f2;
	--rd-logo: #a39b95;
	--rd-star: #f5b301;

	--rd-r-xl: 22px;
	--rd-r-lg: 16px;
	--rd-r-md: 12px;
	--rd-wrap: 1180px;
	--rd-gutter: 24px;
	--rd-edge: max(var(--rd-gutter), calc((100vw - var(--rd-wrap)) / 2));

	--rd-f-sans: "Futurism", "Assistant", system-ui, sans-serif;
	--rd-f-acc: "Futurism", "Assistant", system-ui, sans-serif;
}


/* ---------- Base (no 5.x CSS on any page; inner-page components live in rd-inner.css) ---------- */
body.rd *,
body.rd *::before,
body.rd *::after { box-sizing: border-box; }

body.rd {
	margin: 0;
	background: var(--rd-bg);
	color: var(--rd-ink);
	font-family: var(--rd-f-sans);
	font-size: 16px;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
}
html:has(body.rd) { overflow-x: clip; }
:where(body.rd) img { max-width: 100%; height: auto; }
:where(.rd-header, .rd-hero, .rd-strip, .rd-sec, .rd-footer, .rd-menu) :where(h1, h2, h3, p, ul, blockquote, figure) { margin: 0; }
:where(.rd-header, .rd-hero, .rd-strip, .rd-sec, .rd-footer, .rd-menu) :where(ul) { padding: 0; }

/* inner pages: the 5.x fixed-header offsets go, the new header is in the flow */
body.rd { padding-top: 0 !important; }
body.rd .site-main { padding-top: 0; }
.site-main:focus { outline: none; }

.ltr { direction: ltr; unicode-bidi: isolate; display: inline-block; }
.rd-vh {
	position: absolute !important; width: 1px; height: 1px; padding: 0; margin: -1px;
	overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0;
}
.rd-skip {
	position: absolute; top: -80px; inset-inline-start: 12px; z-index: 300;
	background: var(--rd-deep); color: #fff; padding: 10px 16px; border-radius: 10px; text-decoration: none;
}
.rd-skip:focus { top: 12px; }

:is(.rd-header, .rd-hero, .rd-strip, .rd-sec, .rd-footer, .rd-menu, .rd-callbar, .rd-palette) :is(a, button, summary):focus-visible {
	outline: 2px solid var(--rd-dot);
	outline-offset: 3px;
}

.rd-wrap {
	width: 100%;
	max-width: calc(var(--rd-wrap) + 2 * var(--rd-gutter));
	margin-inline: auto;
	padding-inline: var(--rd-gutter);
}

.rd-i { width: 1em; height: 1em; flex: none; }
[dir="rtl"] .rd-i--flip { transform: scaleX(-1); }
.rd-stars { display: inline-flex; gap: 1px; color: var(--rd-star); }
.rd-stars .rd-i { width: 13px; height: 13px; }

/* ---------- Type ---------- */
.rd-acc {
	font-family: var(--rd-f-acc);
	font-weight: 200;
	letter-spacing: 0;
}
.rd-br { display: block; }
.rd-h1 .rd-acc { display: block; } /* H1 on two lines: מנעולן ופורץ מנעולים / במרכז ובשרון */

.rd-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	margin: 0 0 14px;
	color: var(--rd-ink);
	font-family: var(--rd-f-sans);
	font-size: 13.5px;
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: 0.02em;
}
.rd-eyebrow::before {
	content: "";
	width: 6px;
	height: 6px;
	border-radius: 50%;
	background: var(--rd-dot);
}

.rd-h2 {
	color: var(--rd-ink);
	font-family: var(--rd-f-sans);
	font-size: clamp(30px, 2.9vw, 41px);
	font-weight: 700;
	line-height: 1.08;
	letter-spacing: -0.02em;
	text-wrap: balance;
}

/* ---------- Buttons and links ---------- */
.rd-btn {
	display: inline-flex;
	align-items: center;
	gap: 14px;
	min-height: 48px;
	padding: 5px 20px;
	border: 0;
	border-radius: 999px;
	font-family: var(--rd-f-sans);
	font-size: 15.5px;
	font-weight: 400;
	line-height: 1.2;
	text-decoration: none;
	white-space: nowrap;
	cursor: pointer;
	transition: background-color 0.2s ease;
}
.rd-btn:has(.rd-btn__dot) { padding-inline-end: 5px; }
.rd-btn__dot {
	width: 38px;
	height: 38px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	flex: none;
}
.rd-btn__dot svg { width: 16px; height: 16px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rd-btn--accent { background: var(--rd-accent); color: var(--rd-accent-ink); }
.rd-btn--accent:hover { background: var(--rd-accent-2); }
.rd-btn--accent .rd-btn__dot { background: var(--rd-deep); color: var(--rd-accent); }
.rd-btn--deep { background: var(--rd-deep); color: #fff; }
.rd-btn--deep:hover { background: var(--rd-deep-2); }
.rd-btn--deep .rd-btn__dot { background: var(--rd-accent); color: var(--rd-deep); }
.rd-btn--ghost { background: transparent; color: #fff; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.45); }
.rd-btn--ghost:hover { box-shadow: inset 0 0 0 1px #fff; }
.rd-btn--ghost .rd-i { width: 18px; height: 18px; }
.rd-btn--lg { min-height: 52px; }
.rd-btn--lg .rd-btn__dot { width: 42px; height: 42px; }

.rd-link {
	display: inline-flex;
	align-items: center;
	gap: 5px;
	color: var(--rd-ink);
	font-size: 15px;
	font-weight: 400;
	text-decoration: underline;
	text-decoration-thickness: 1px;
	text-underline-offset: 4px;
}
.rd-link .rd-i { width: 13px; height: 13px; }
.rd-link--light { color: #fff; }

.rd-ctas { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 28px; }
/* hero call button: bigger (Owner 2026-10-07); on a phone it spans the width with the text centred */
.rd-hero .rd-ctas .rd-btn--accent { min-height: 58px; padding-inline-start: 26px; font-size: 17px; font-weight: 600; }
.rd-hero .rd-ctas .rd-btn--accent .rd-btn__dot { width: 46px; height: 46px; }
/* "נתקעתם? חייגו!" over the number */
.rd-hero .rd-ctas .rd-btn--call2 { min-height: 70px; padding-block: 8px; }
.rd-btn--call2 .rd-btn__lbl { display: flex; flex-direction: column; align-items: center; line-height: 1.15; }
.rd-btn--call2 .rd-btn__lbl small { font-size: 15px; font-weight: 700; }
.rd-btn--call2 .rd-btn__lbl .ltr { font-size: 25px; font-weight: 700; letter-spacing: 0.02em; }

/* three icons under the call button */
.rd-stats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; max-width: 500px; margin: 24px 0 0; padding: 0; list-style: none; }
.rd-stats li { display: flex; flex-direction: column; align-items: center; gap: 6px; color: #fff; text-align: center; }
.rd-stats__top { display: flex; align-items: center; gap: 7px; height: 38px; }
.rd-stats__top b { font-size: 34px; font-weight: 700; line-height: 1; }
.rd-stats__top .rd-i { width: 30px; height: 30px; color: var(--rd-accent); stroke-width: 1.8; }
.rd-stats li > span:last-child { max-width: 9.5em; color: rgba(255, 255, 255, 0.88); font-size: 14px; line-height: 1.3; }

/* Google-reviews box (in place of the "since 2019" card) */
.rd-greviews { justify-content: space-between; align-items: center; gap: 16px; width: 390px; padding: 14px 18px; color: #fff; text-decoration: none; }
.rd-greviews:hover { background: rgba(255, 255, 255, 0.16); }
.rd-greviews__score { display: grid; grid-template-columns: auto auto; justify-content: start; align-items: center; column-gap: 10px; row-gap: 2px; }
.rd-greviews__g { grid-row: span 2; width: 42px; height: 42px; border-radius: 50%; display: grid; place-items: center; background: #fff; }
.rd-greviews__g .rd-i { width: 22px; height: 22px; }
.rd-greviews__num { display: inline-flex; align-items: center; gap: 8px; }
.rd-greviews__num b { font-size: 28px; font-weight: 700; line-height: 1; }
.rd-greviews__num .rd-stars-t { font-size: 15px; }
.rd-greviews__score small { color: rgba(255, 255, 255, 0.82); font-size: 13.5px; }
.rd-greviews__side { display: flex; flex-direction: column; align-items: flex-end; gap: 8px; }
.rd-greviews__faces { display: flex; }
.rd-greviews__faces span { width: 32px; height: 32px; overflow: hidden; border: 2px solid rgba(255, 255, 255, 0.9); border-radius: 50%; background: var(--rd-deep-2); }
.rd-greviews__faces span + span { margin-inline-start: -9px; }
.rd-greviews__faces img { width: 100%; height: 100% !important; object-fit: cover; }
.rd-greviews__more { display: inline-flex; align-items: center; gap: 5px; font-size: 13.5px; text-decoration: underline; text-underline-offset: 4px; }
.rd-greviews__more .rd-i { width: 12px; height: 12px; }

/* ---------- Header ---------- */
.rd-header { position: relative; z-index: 40; padding-top: 14px; font-family: var(--rd-f-sans); }
.rd-header--over { position: absolute; top: 14px; left: 0; right: 0; padding-top: 18px; }
.rd-bar {
	display: flex;
	align-items: center;
	gap: 18px;
	min-height: 68px;
	padding: 10px;
	padding-inline-start: 16px;
	background: #fff;
	border-radius: 14px;
}
.rd-header:not(.rd-header--over) .rd-bar { box-shadow: 0 0 0 1px var(--rd-line); }

.rd-logo {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	flex: none;
	color: var(--rd-ink);
	text-decoration: none;
}
/* the brand mark of the 2026-09-19 kit (1060×544) in the logo's text colour; "ברגע" in the kit orange */
.rd-logo .logo-mark { width: 66px; height: 34px; display: block; flex: none; }
.rd-logo__wm { font-family: var(--rd-f-sans); font-size: 19px; font-weight: 400; letter-spacing: -0.01em; line-height: 1; }
.rd-logo__wm { font-weight: 900; }
.rd-logo__wm b { font-weight: 900; color: #f26b1d; }
.rd-logo--light { color: #fff; }

.rd-nav { margin-inline: auto; }
.rd-nav ul { display: flex; gap: 2px; list-style: none; margin: 0; padding: 0; }
.rd-nav a {
	display: block;
	padding: 6px 13px;
	border-radius: 999px;
	color: var(--rd-ink);
	font-size: 15px;
	font-weight: 400;
	text-decoration: none;
	white-space: nowrap;
	transition: background-color 0.2s ease;
}
.rd-nav a:hover { background: var(--rd-tint); }
.rd-nav a.is-active { background: var(--rd-accent); color: var(--rd-accent-ink); font-weight: 500; }

.rd-bar__end { display: flex; align-items: center; gap: 16px; flex: none; }
.rd-callnow { display: flex; align-items: center; gap: 9px; color: var(--rd-ink); text-decoration: none; }
.rd-callnow__icon {
	width: 36px; height: 36px; border-radius: 50%;
	display: grid; place-items: center;
	border: 1.5px solid var(--rd-accent);
	color: var(--rd-deep);
}
.rd-callnow__icon svg { width: 15px; height: 15px; }
.rd-callnow__txt { display: flex; flex-direction: column; line-height: 1.25; }
.rd-callnow__txt small { font-size: 12.5px; color: var(--rd-muted); }
.rd-callnow__txt .ltr { font-size: 15px; font-weight: 400; }
.rd-bar .rd-btn { min-height: 46px; }

.rd-burger {
	display: none;
	width: 42px; height: 42px; border-radius: 10px;
	flex-direction: column; justify-content: center; align-items: center; gap: 4px;
	background: var(--rd-tint);
}
.rd-burger span { width: 17px; height: 1.5px; border-radius: 2px; background: var(--rd-ink); }

/* mobile menu (opens via :target without JS, .is-open with JS) */
.rd-menu {
	position: fixed;
	inset: 0;
	z-index: 100;
	display: flex;
	flex-direction: column;
	gap: 28px;
	padding: 20px var(--rd-gutter) calc(28px + env(safe-area-inset-bottom, 0px));
	background: var(--rd-deep);
	color: #fff;
	overflow-y: auto;
	transform: translateY(-100%);
	visibility: hidden;
	transition: transform 0.3s ease, visibility 0.3s;
}
.rd-menu:target,
.rd-menu.is-open { transform: none; visibility: visible; }
.rd-menu__top { display: flex; align-items: center; justify-content: space-between; }
.rd-menu__close {
	width: 42px; height: 42px; border-radius: 50%;
	display: grid; place-items: center;
	background: rgba(255, 255, 255, 0.1); color: #fff;
}
.rd-menu__close svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; }
.rd-menu nav ul { list-style: none; margin: 0; padding: 0; }
.rd-menu nav a {
	display: block;
	padding: 14px 0;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
	color: #fff;
	font-size: 24px;
	font-weight: 400;
	text-decoration: none;
}
.rd-menu nav a.is-active { color: var(--rd-accent); }
.rd-menu__ctas { display: grid; gap: 10px; margin-top: auto; }
.rd-menu__ctas .rd-btn { justify-content: center; }

/* ---------- Hero ---------- */
.rd-hero { padding: 14px 14px 0; }
.rd-hero__frame {
	position: relative;
	overflow: hidden;
	border-radius: var(--rd-r-xl);
	background: var(--rd-deep);
	isolation: isolate;
}
.rd-hero__img {
	position: absolute;
	inset: 0;
	z-index: -2;
	width: 100%;
	height: 100% !important;
	object-fit: cover;
	object-position: 22% 38%;
}
/* the photo keeps its colour; only the copy side and the foot are darkened */
.rd-hero__shade {
	position: absolute;
	inset: 0;
	z-index: -1;
	background:
		linear-gradient(to left, rgba(var(--rd-deep-rgb), 0.88) 0%, rgba(var(--rd-deep-rgb), 0.66) 30%, rgba(var(--rd-deep-rgb), 0.16) 56%, rgba(var(--rd-deep-rgb), 0) 72%),
		linear-gradient(to top, rgba(var(--rd-deep-rgb), 0.82) 0%, rgba(var(--rd-deep-rgb), 0.3) 30%, rgba(var(--rd-deep-rgb), 0) 52%);
}
.rd-hero__inner {
	display: grid;
	grid-template-columns: minmax(0, 520px) minmax(0, 1fr);
	align-items: end;
	gap: 40px;
	min-height: 700px;
	padding-top: 170px;
	padding-bottom: 84px;
}
.rd-hero__copy { color: #fff; }

.rd-rating {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 26px;
	color: #fff;
	text-decoration: none;
}
.rd-rating__g { width: 34px; height: 34px; border-radius: 50%; display: grid; place-items: center; background: #fff; }
.rd-rating__g .rd-i { width: 18px; height: 18px; }
.rd-rating__txt { display: flex; flex-direction: column; line-height: 1.3; }
.rd-rating__row { display: inline-flex; align-items: center; gap: 6px; }
.rd-rating__row b { font-size: 15px; font-weight: 700; }
.rd-rating small { font-size: 13px; opacity: 0.78; }

.rd-chips { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 18px; list-style: none; }
.rd-chip {
	display: inline-flex;
	align-items: center;
	padding: 4px 12px;
	border: 1px solid rgba(255, 255, 255, 0.24);
	border-radius: 999px;
	background: rgba(255, 255, 255, 0.12);
	color: #fff;
	font-size: 13px;
	font-weight: 400;
	line-height: 1.4;
}
.rd-chip--line { background: transparent; border-color: var(--rd-accent); color: var(--rd-accent); }

.rd-h1 {
	max-width: 520px;
	margin: 0 0 18px;
	color: #fff;
	font-family: var(--rd-f-sans);
	font-size: clamp(38px, 3.8vw, 54px);
	font-weight: 700;
	line-height: 1.1;
	letter-spacing: -0.02em;
	text-wrap: balance;
}
.rd-hero__sub { max-width: 500px; margin: 0 0 30px; color: rgba(255, 255, 255, 0.84); font-size: 16.5px; line-height: 1.6; }

.rd-hero__proof { justify-self: end; display: flex; flex-direction: column; align-items: flex-end; gap: 14px; }
.rd-proof { display: flex; flex-direction: column; align-items: flex-end; gap: 6px; color: #fff; }
.rd-proof__ico { color: var(--rd-accent); }
.rd-proof__ico .rd-i { width: 20px; height: 20px; }
.rd-proof ul { list-style: none; color: rgba(255, 255, 255, 0.9); font-size: 13.5px; line-height: 1.6; text-align: end; }

.rd-glass {
	display: flex;
	align-items: stretch;
	gap: 12px;
	width: 370px;
	padding: 10px;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-radius: 16px;
	background: rgba(255, 255, 255, 0.1);
	-webkit-backdrop-filter: blur(12px);
	backdrop-filter: blur(12px);
}
.rd-glass__txt { flex: 1; display: flex; flex-direction: column; padding: 8px 6px 6px 0; color: #fff; }
.rd-glass__big { font-size: 26px; font-weight: 900; line-height: 1.1; letter-spacing: -0.01em; }
.rd-glass__txt p { margin-top: 4px; color: rgba(255, 255, 255, 0.78); font-size: 13px; line-height: 1.45; }
.rd-glass__av { display: flex; margin-top: auto; padding-top: 10px; }
.rd-glass__av span {
	width: 28px; height: 28px; border-radius: 50%;
	display: grid; place-items: center;
	border: 2px solid rgba(255, 255, 255, 0.9);
	background: #6f8f74; color: #fff;
	font-size: 12px; font-weight: 600;
}
.rd-glass__av span:nth-child(2) { background: #a07a5a; }
.rd-glass__av span:nth-child(3) { background: #5d7896; }
.rd-glass__av span + span { margin-inline-start: -8px; }
.rd-glass__ph { width: 190px; height: 130px !important; flex: none; object-fit: cover; object-position: 50% 40%; border-radius: 11px; }

/* ---------- City row (the reference's client logos) ---------- */
.rd-strip {
	padding-block: 38px 6px;
	overflow-x: auto;
	scrollbar-width: none;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
	mask-image: linear-gradient(to right, transparent, #000 4%, #000 96%, transparent);
}
.rd-strip::-webkit-scrollbar { display: none; }
.rd-strip__list { display: flex; gap: 76px; width: max-content; padding-inline: var(--rd-edge); list-style: none; }
.rd-strip a {
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	gap: 1px;
	color: var(--rd-logo);
	text-decoration: none;
	white-space: nowrap;
	transition: color 0.2s ease;
}
.rd-strip small { font-size: 11.5px; font-weight: 500; letter-spacing: 0.14em; line-height: 1; }
.rd-strip b { font-size: 21px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
.rd-strip a:hover { color: var(--rd-deep); }

/* ---------- Sections ---------- */
.rd-sec { padding-block: 100px; font-family: var(--rd-f-sans); }
.rd-head { display: flex; align-items: flex-end; justify-content: space-between; gap: 32px; margin-bottom: 56px; }
.rd-head__side { display: flex; flex-direction: column; align-items: flex-end; gap: 16px; max-width: 320px; text-align: end; }
.rd-head__side p { color: var(--rd-muted); font-size: 14.5px; line-height: 1.55; }
.rd-head__side--row { flex-direction: row; align-items: center; max-width: none; gap: 18px; }
.rd-arrows { display: flex; gap: 8px; }
.rd-arrow {
	width: 40px; height: 40px; border-radius: 50%;
	display: grid; place-items: center;
	border: 1px solid #cfd3cd;
	background: #fff; color: var(--rd-ink);
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}
.rd-arrow .rd-i { width: 17px; height: 17px; }
.rd-arrow:hover { border-color: var(--rd-ink); }
.rd-arrow--deep { background: var(--rd-deep); border-color: var(--rd-deep); color: #fff; }
.rd-arrow--deep:hover { background: var(--rd-deep-2); border-color: var(--rd-deep-2); }
.rd-arrow--tall { width: 40px; height: 54px; border-radius: 12px; }

/* services carousel — cut at both edges, like the reference */
.rd-services { padding-bottom: 100px; }
.rd-services .rd-h2 { max-width: 300px; }
.rd-cards {
	display: flex;
	gap: 26px;
	overflow-x: auto;
	padding-inline: var(--rd-edge);
	scroll-padding-inline: var(--rd-edge);
	scroll-snap-type: x mandatory;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
}
.rd-cards::-webkit-scrollbar { display: none; }
.rd-card {
	position: relative;
	isolation: isolate;
	flex: 0 0 361px;
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	height: 460px;
	padding: 14px;
	overflow: hidden;
	border-radius: var(--rd-r-lg);
	background: var(--rd-deep);
	color: #fff;
	scroll-snap-align: start;
}
.rd-card__img {
	position: absolute; inset: 0; z-index: -2;
	width: 100%; height: 100% !important;
	object-fit: cover;
	transition: transform 0.6s ease;
}
.rd-card::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(to top, rgba(var(--rd-deep-rgb), 0.96) 0%, rgba(var(--rd-deep-rgb), 0.74) 28%, rgba(var(--rd-deep-rgb), 0) 56%);
}
.rd-card:hover .rd-card__img { transform: scale(1.03); }
.rd-card__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.rd-card__tag {
	padding: 4px 11px;
	border: 1px solid rgba(255, 255, 255, 0.28);
	border-radius: 999px;
	background: rgba(var(--rd-deep-rgb), 0.35);
	font-size: 12.5px;
	line-height: 1.4;
	-webkit-backdrop-filter: blur(6px);
	backdrop-filter: blur(6px);
}
.rd-card__ico { width: 46px; height: 46px; border-radius: 50%; display: grid; place-items: center; background: #fff; color: var(--rd-deep); }
.rd-card__ico .rd-i { width: 20px; height: 20px; }
.rd-card__body { padding: 0 6px 6px; }
.rd-card__body h3 { margin-bottom: 8px; font-size: 22px; font-weight: 700; line-height: 1.2; letter-spacing: -0.01em; }
.rd-card__body p {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 2;
	overflow: hidden;
	margin-bottom: 18px;
	color: rgba(255, 255, 255, 0.82);
	font-size: 14px;
	line-height: 1.55;
}
.rd-card--nav .rd-card__body h3 { margin-bottom: 18px; }
/* the service-areas card carries the Owner's map illustration (white ground): shown whole, light card, dark controls */
.rd-card--map { background: #fff; box-shadow: inset 0 0 0 1px var(--rd-line); color: var(--rd-ink); }
.rd-card--map::after { display: none; }
.rd-card--map .rd-card__img { object-fit: contain; object-position: 50% 0; padding: 40px 24px 104px; }
.rd-card--map:hover .rd-card__img { transform: none; }
.rd-card--map .rd-card__tag { border-color: var(--rd-line); background: var(--rd-tint); color: var(--rd-ink); -webkit-backdrop-filter: none; backdrop-filter: none; }
.rd-card--map .rd-card__ico { background: var(--rd-deep); color: #fff; }
.rd-card--map .rd-pill { background: var(--rd-deep); color: #fff; }
.rd-card--map .rd-pill .rd-btn__dot { background: var(--rd-accent); color: var(--rd-deep); }
.rd-pill {
	display: inline-flex;
	align-items: center;
	gap: 12px;
	padding: 4px;
	padding-inline-start: 16px;
	border-radius: 999px;
	background: #fff;
	color: var(--rd-ink);
	font-size: 14.5px;
	font-weight: 400;
	text-decoration: none;
}
.rd-pill .rd-btn__dot { width: 36px; height: 36px; background: var(--rd-deep); color: #fff; }
.rd-pill .rd-btn__dot svg { width: 15px; height: 15px; }

/* process bento */
.rd-process { background: var(--rd-tint); }
.rd-bento { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px; }
.rd-step {
	position: relative;
	display: flex;
	flex-direction: column;
	padding: 24px;
	overflow: hidden;
	border-radius: var(--rd-r-lg);
	background: #fff;
}
.rd-step__n { margin-bottom: 14px; color: var(--rd-muted); font-size: 13.5px; }
.rd-step h3 { margin-bottom: 8px; color: var(--rd-ink); font-size: 19px; font-weight: 700; line-height: 1.3; letter-spacing: -0.01em; }
.rd-step p { color: var(--rd-muted); font-size: 14.5px; line-height: 1.6; }
.rd-step--1 { grid-row: span 2; padding-bottom: 0; }
.rd-step--1 .rd-step__media {
	flex: 1;
	width: calc(100% + 48px);
	max-width: none;
	min-height: 320px;
	height: auto !important;
	margin: 24px -24px 0;
	object-fit: cover;
	object-position: 40% 30%;
}
.rd-step--3 { padding-bottom: 0; }
.rd-step--3 p { margin-bottom: 20px; }
.rd-step--3 .rd-step__media {
	width: calc(100% + 48px);
	max-width: none;
	height: 170px !important;
	margin: auto -24px 0;
	object-fit: cover;
	object-position: 50% 45%;
}

.rd-orbit { position: relative; height: 170px; margin-top: 18px; }
.rd-orbit__line { position: absolute; inset: 0; width: 100%; height: 100%; overflow: visible; }
.rd-orbit__line path { fill: none; stroke: color-mix(in srgb, var(--rd-deep) 22%, transparent); stroke-width: 1; stroke-dasharray: 3 4; }
.rd-orbit__ring {
	position: absolute;
	top: 58%;
	left: 50%;
	border-radius: 50%;
	transform: translate(-50%, -50%);
}
.rd-orbit__ring--1 { width: 104px; height: 104px; background: color-mix(in srgb, var(--rd-accent) 55%, #fff); }
.rd-orbit__ring--2 { width: 160px; height: 160px; background: color-mix(in srgb, var(--rd-accent) 22%, #fff); }
.rd-orbit__core,
.rd-orbit__sat {
	position: absolute;
	display: grid;
	place-items: center;
	border-radius: 50%;
}
.rd-orbit__core {
	top: 58%;
	left: 50%;
	width: 54px;
	height: 54px;
	transform: translate(-50%, -50%);
	background: var(--rd-deep);
	color: var(--rd-accent);
	box-shadow: 0 0 0 5px color-mix(in srgb, var(--rd-accent) 70%, #fff);
}
.rd-orbit__core .rd-i { width: 22px; height: 22px; }
.rd-orbit__sat { width: 34px; height: 34px; background: var(--rd-deep); color: var(--rd-accent); top: calc(75% - 17px); }
.rd-orbit__sat .rd-i { width: 15px; height: 15px; }
.rd-orbit__sat--a { left: 2%; }
.rd-orbit__sat--b { right: 2%; }

.rd-step--4 {
	grid-column: span 2;
	flex-direction: row;
	gap: 24px;
	min-height: 290px;
	background: var(--rd-deep);
	color: #fff;
	isolation: isolate;
}
.rd-step__bg {
	position: absolute;
	inset-block: 0;
	inset-inline-end: 0;
	z-index: -2;
	width: 58%;
	height: 100% !important;
	object-fit: cover;
	object-position: 50% 25%;
}
.rd-step--4::after {
	content: "";
	position: absolute;
	inset: 0;
	z-index: -1;
	background: linear-gradient(to left, rgb(var(--rd-deep-rgb)) 0%, rgb(var(--rd-deep-rgb)) 42%, rgba(var(--rd-deep-rgb), 0.55) 66%, rgba(var(--rd-deep-rgb), 0.2) 100%);
}
.rd-step4__copy { flex: 0 1 360px; display: flex; flex-direction: column; align-items: flex-start; }
.rd-step--4 .rd-step__n { color: rgba(255, 255, 255, 0.6); margin-bottom: 10px; }
.rd-step--4 .rd-chip--line { margin-bottom: 14px; font-size: 11.5px; }
.rd-step--4 h3 { color: #fff; font-size: 22px; }
.rd-step--4 p { color: rgba(255, 255, 255, 0.8); }
.rd-step4__art { position: relative; flex: 1 1 auto; min-height: 220px; }
.rd-minirev {
	position: absolute;
	inset-inline-end: 118px;
	top: 26px;
	z-index: 2;
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 6px 10px;
	border-radius: 8px;
	background: #fff;
	box-shadow: 0 8px 20px rgba(0, 0, 0, 0.22);
	transform: rotate(4deg);
}
.rd-minirev .rd-i--g { width: 14px; height: 14px; }
.rd-minirev .rd-stars .rd-i { width: 11px; height: 11px; }
.rd-checklist {
	position: absolute;
	inset-inline-end: 34px;
	bottom: -54px;
	width: 220px;
	padding: 16px 16px 40px;
	border-radius: 10px;
	background: #fff;
	color: var(--rd-ink);
	box-shadow: 0 16px 36px rgba(0, 0, 0, 0.3);
	transform: rotate(-5deg);
}
.rd-checklist b { display: block; margin-bottom: 12px; font-size: 15px; font-weight: 700; }
.rd-checklist ul { display: grid; gap: 8px; list-style: none; }
.rd-checklist li { display: flex; align-items: center; gap: 8px; font-size: 13.5px; }
.rd-checklist li .rd-i { width: 16px; height: 16px; padding: 2px; border-radius: 4px; background: var(--rd-dot); color: #fff; stroke-width: 3; }

/* content box: topic tabs + an internal scroll panel that holds the long text */
.rd-seo { padding-top: 84px; }
.rd-seo__grid { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 470px); gap: 72px; align-items: center; }
.rd-acc-list { margin-top: 24px; border-top: 1px solid var(--rd-line); }
.rd-qa { border-bottom: 1px solid var(--rd-line); }
.rd-qa > summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 16px 0;
	list-style: none;
	cursor: pointer;
}
.rd-qa > summary::-webkit-details-marker { display: none; }
.rd-qa h3 { margin: 0; color: var(--rd-ink); font-size: 19px; font-weight: 700; line-height: 1.3; }
.rd-qa__x { position: relative; flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--rd-tint); transition: transform 0.25s ease; }
.rd-qa__x::before,
.rd-qa__x::after { content: ""; position: absolute; top: 50%; left: 50%; width: 11px; height: 1.5px; border-radius: 2px; background: var(--rd-ink); transform: translate(-50%, -50%); }
.rd-qa__x::after { transform: translate(-50%, -50%) rotate(90deg); }
.rd-qa[open] .rd-qa__x { transform: rotate(45deg); background: var(--rd-accent); }
.rd-qa__body { padding: 0 0 18px; }
.rd-qa__body p { margin: 0 0 12px; color: var(--rd-muted); font-size: 16px; line-height: 1.75; }
.rd-qa__body p:last-child { margin-bottom: 0; }
.rd-qa__body a { color: var(--rd-ink); text-decoration: underline; text-underline-offset: 4px; }
.rd-qa__body ul { display: grid; gap: 8px; margin: 0; padding: 0; list-style: none; }
.rd-qa__body li { position: relative; padding-inline-start: 22px; color: var(--rd-muted); font-size: 16px; line-height: 1.6; }
.rd-qa__body li::before { content: ""; position: absolute; inset-inline-start: 0; top: 0.62em; width: 8px; height: 8px; border-radius: 50%; background: var(--rd-accent); box-shadow: 0 0 0 2px var(--rd-deep); }
.rd-qa__body li b { color: var(--rd-ink); }
/* two approved facts in one bullet, each its own element (Owner 10-06a: whole elements) */
.rd-qa__body li .rd-inl { display: inline; margin: 0; color: inherit; font-size: inherit; line-height: inherit; }
.rd-seo__media { position: relative; }
.rd-seo__img { display: block; width: 100%; height: 520px !important; object-fit: cover; object-position: 62% 50%; border-radius: var(--rd-r-xl); }
.rd-badge {
	position: absolute;
	inset-inline-end: -34px;
	bottom: 38px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	gap: 6px;
	width: 200px;
	height: 200px;
	border-radius: 50%;
	background: #fff;
	color: var(--rd-ink);
	box-shadow: 0 18px 40px rgba(0, 0, 0, 0.14);
	text-align: center;
}
.rd-badge__row { display: flex; align-items: center; gap: 12px; }
.rd-badge__row b { font-size: 34px; font-weight: 900; line-height: 1; }
.rd-badge__row .rd-badge__sm { font-size: 15px; font-weight: 700; line-height: 1.1; }
.rd-badge__row i { width: 2px; height: 34px; background: var(--rd-accent); }
.rd-badge .rd-i { width: 22px; height: 22px; color: var(--rd-dot); }
.rd-badge__area { font-size: 17px; font-weight: 700; }

/* reviews: every Google review, two rows moving in opposite directions */
.rd-reviews { overflow: hidden; }
.rd-gsum { display: inline-flex; align-items: center; gap: 8px; padding: 8px 14px; border: 1px solid var(--rd-line); border-radius: 999px; color: var(--rd-ink); text-decoration: none; }
.rd-gsum .rd-i--g { width: 18px; height: 18px; }
.rd-gsum b { font-size: 16px; font-weight: 700; }
.rd-gsum span { color: var(--rd-muted); font-size: 13.5px; }
.rd-revrow {
	overflow-x: auto;
	padding-block: 6px;
	scrollbar-width: none;
	overscroll-behavior-x: contain;
	-webkit-mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
	mask-image: linear-gradient(to right, transparent, #000 6%, #000 94%, transparent);
}
.rd-revrow::-webkit-scrollbar { display: none; }
.rd-revrow + .rd-revrow { margin-top: 18px; }
.rd-revrow__list { display: flex; align-items: stretch; gap: 18px; width: max-content; margin: 0; padding: 0 var(--rd-edge); list-style: none; }
.rd-revrows__ctl { display: flex; justify-content: flex-end; margin-top: 16px; }
.rd-revplay .rd-i { width: 16px; height: 16px; }
.rd-revplay .rd-i:last-child,
.rd-revplay[aria-pressed="true"] .rd-i:first-child { display: none; }
.rd-revplay[aria-pressed="true"] .rd-i:last-child { display: block; }
.rd-gr {
	display: flex;
	flex-direction: column;
	gap: 10px;
	width: 340px;
	padding: 20px;
	border: 1px solid var(--rd-line);
	border-radius: var(--rd-r-lg);
	background: #fff;
	color: var(--rd-ink);
	text-decoration: none;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}
.rd-gr:hover { border-color: #cfd3cd; box-shadow: 0 10px 26px rgba(0, 0, 0, 0.07); }
.rd-gr__head { display: flex; align-items: center; gap: 10px; }
.rd-gr__av {
	position: relative;
	flex: none;
	width: 40px;
	height: 40px;
	overflow: hidden;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: var(--rd-tint);
	color: var(--rd-deep);
	font-size: 16px;
	font-weight: 700;
}
.rd-gr__av img { position: absolute; inset: 0; width: 100%; height: 100% !important; object-fit: cover; }
.rd-gr__who { display: flex; flex-direction: column; min-width: 0; line-height: 1.3; }
.rd-gr__who b { overflow: hidden; font-size: 15px; font-weight: 700; text-overflow: ellipsis; white-space: nowrap; }
.rd-gr__who small { color: var(--rd-muted); font-size: 12.5px; }
.rd-gr__rate { display: flex; align-items: center; gap: 8px; }
.rd-gr__rate time { color: var(--rd-muted); font-size: 13px; }
.rd-gr__text {
	display: -webkit-box;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 6;
	overflow: hidden;
	font-size: 15px;
	line-height: 1.6;
}
.rd-gr__photos { display: flex; gap: 6px; }
.rd-gr__photos img { width: 64px; height: 64px !important; object-fit: cover; border-radius: 8px; }
.rd-gr__reply { margin-top: auto; padding: 8px 10px; border-radius: 10px; background: var(--rd-tint); color: var(--rd-muted); font-size: 13px; line-height: 1.45; }
.rd-gr__reply b { color: var(--rd-ink); font-weight: 700; }
.rd-gr__more { display: inline-flex; align-items: center; gap: 4px; color: var(--rd-ink); font-size: 13.5px; text-decoration: underline; text-underline-offset: 4px; }
.rd-gr__more .rd-i { width: 12px; height: 12px; }
.rd-gr { position: relative; flex: none; }
.rd-gr__who,
.rd-gr__rate,
.rd-gr__text,
.rd-gr__photos,
.rd-gr__reply { margin: 0; }
.rd-gr__text { white-space: pre-line; }
.rd-gr__g {
	flex: none;
	width: 18px;
	height: 18px;
	margin-inline-start: auto;
	align-self: flex-start;
	background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='%234285F4' d='M21.6 12.2c0-.7-.1-1.4-.2-2H12v3.8h5.4a4.6 4.6 0 0 1-2 3v2.5h3.2c1.9-1.7 3-4.3 3-7.3Z'/%3E%3Cpath fill='%2334A853' d='M12 22c2.7 0 5-.9 6.6-2.4l-3.2-2.5c-.9.6-2 1-3.4 1-2.6 0-4.8-1.8-5.6-4.1H3.1v2.6A10 10 0 0 0 12 22Z'/%3E%3Cpath fill='%23FBBC05' d='M6.4 14c-.2-.6-.3-1.3-.3-2s.1-1.4.3-2V7.4H3.1a10 10 0 0 0 0 9.2L6.4 14Z'/%3E%3Cpath fill='%23EA4335' d='M12 6c1.5 0 2.8.5 3.8 1.5l2.9-2.9A10 10 0 0 0 3.1 7.4L6.4 10C7.2 7.7 9.4 6 12 6Z'/%3E%3C/svg%3E") center / contain no-repeat;
}
.rd-gr__more::after { content: ""; position: absolute; inset: 0; border-radius: inherit; }
.rd-stars-t { color: var(--rd-star); font-size: 14px; letter-spacing: 1px; line-height: 1; }

/* questions */
.rd-faq { background: var(--rd-tint); }
.rd-faq__grid { display: grid; grid-template-columns: 340px minmax(0, 1fr); gap: 84px; align-items: start; }
.rd-faq__side .rd-h2 { margin-bottom: 22px; }
.rd-faq .faq-list { display: grid; gap: 10px; }
.rd-faq .faq-item { border-radius: var(--rd-r-lg); background: #fff; }
.rd-faq .faq-item summary {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	padding: 20px 24px;
	color: var(--rd-ink);
	font-size: 17px;
	font-weight: 700;
	list-style: none;
	cursor: pointer;
}
.rd-faq .faq-item summary::-webkit-details-marker { display: none; }
.rd-faq .faq-x { position: relative; flex: none; width: 30px; height: 30px; border-radius: 50%; background: var(--rd-tint); transition: transform 0.25s ease; }
.rd-faq .faq-x::before,
.rd-faq .faq-x::after { content: ""; position: absolute; top: 50%; left: 50%; width: 11px; height: 1.5px; border-radius: 2px; background: var(--rd-ink); transform: translate(-50%, -50%); }
.rd-faq .faq-x::after { transform: translate(-50%, -50%) rotate(90deg); }
.rd-faq .faq-item[open] .faq-x { transform: rotate(45deg); background: var(--rd-accent); }
.rd-faq .faq-a { padding: 0 24px 22px; }
.rd-faq .faq-a p { margin: 0; color: var(--rd-muted); font-size: 16px; line-height: 1.7; }
.rd-faq .faq-a a { color: var(--rd-ink); }

/* contact band */
.rd-band-sec { padding-block: 100px; }
.rd-band {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 32px;
	padding: 52px 56px;
	border-radius: var(--rd-r-xl);
	background: var(--rd-deep);
	color: #fff;
}
.rd-band .rd-h2 { color: #fff; }
.rd-band p { max-width: 500px; margin-top: 14px; color: rgba(255, 255, 255, 0.78); font-size: 16px; line-height: 1.65; }
.rd-band__ctas { display: flex; flex-wrap: wrap; gap: 12px; flex: none; }

/* ---------- Footer ---------- */
.rd-footer { padding: 0 14px 14px; font-family: var(--rd-f-sans); }
.rd-footer__frame { padding: 72px 0 26px; border-radius: var(--rd-r-xl); background: var(--rd-deep); color: rgba(255, 255, 255, 0.75); }
.rd-footer__top {
	display: grid;
	grid-template-columns: 1.5fr 1fr 1fr 1fr;
	gap: 40px;
	padding-bottom: 44px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}
.rd-footer__brand p { max-width: 340px; margin: 18px 0 22px; font-size: 15px; line-height: 1.7; }
.rd-footer h3 { margin: 0 0 16px; color: #fff; font-size: 15px; font-weight: 700; }
.rd-footer ul { display: grid; gap: 10px; margin: 0; padding: 0; list-style: none; }
.rd-footer a { color: rgba(255, 255, 255, 0.75); font-size: 15px; text-decoration: none; }
.rd-footer a:hover { color: #fff; }
.rd-footer .rd-btn--accent,
.rd-footer .rd-btn--accent:hover { color: var(--rd-accent-ink); }
.rd-footer__cities { padding-block: 34px; border-bottom: 1px solid rgba(255, 255, 255, 0.12); }
.rd-footer__cities ul { display: flex; flex-wrap: wrap; gap: 8px 22px; }
.rd-footer__cities a { font-size: 13.5px; }
.rd-footer__bottom {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: 12px 24px;
	padding-top: 24px;
	color: rgba(255, 255, 255, 0.55);
	font-size: 12.5px;
}
.rd-footer__legal { display: flex; flex-wrap: wrap; gap: 18px; }
.rd-footer__legal a { font-size: 12.5px; }

/* quick contact */
.rd-callbar { display: none; }
.rd-wafloat {
	position: fixed;
	z-index: 50;
	bottom: 24px;
	inset-inline-end: 24px;
	width: 54px;
	height: 54px;
	border-radius: 50%;
	display: grid;
	place-items: center;
	background: #25d366;
	color: #fff;
	box-shadow: 0 8px 22px rgba(0, 0, 0, 0.2);
}
.rd-wafloat .rd-i { width: 26px; height: 26px; }


/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
	.rd-callnow__txt { display: none; }
	.rd-nav a { padding-inline: 10px; font-size: 13.5px; }
}

@media (max-width: 1000px) {
	.rd-nav,
	.rd-bar__wa { display: none; }
	.rd-burger { display: flex; }
	.rd-bar { justify-content: space-between; }
	.rd-hero__inner { grid-template-columns: minmax(0, 1fr); min-height: 0; gap: 36px; padding-top: 140px; padding-bottom: 40px; }
	.rd-hero__proof { justify-self: stretch; align-items: flex-start; }
	.rd-proof { align-items: flex-start; }
	.rd-proof ul { text-align: start; }
	.rd-bento { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.rd-step--1 { grid-row: auto; }
	.rd-faq__grid { grid-template-columns: minmax(0, 1fr); gap: 32px; }
	.rd-band { flex-direction: column; align-items: flex-start; }
	.rd-seo__grid { grid-template-columns: minmax(0, 1fr); gap: 40px; }
	.rd-seo__media { max-width: 560px; }
	.rd-badge { inset-inline-end: 16px; }
	.rd-footer__top { grid-template-columns: 1fr 1fr; }
}

@media (max-width: 760px) {
	:root { --rd-gutter: 16px; }
	.rd-header--over { top: 8px; }
	.rd-header--over .rd-wrap { padding-inline: 22px; }
	.rd-bar { min-height: 58px; padding: 8px; padding-inline-start: 12px; gap: 10px; }
	.rd-logo .logo-mark { width: 58px; height: 30px; }
	.rd-logo__wm { font-size: 18px; }
	.rd-bar__end { gap: 8px; }
	/* First screen on a phone: the hero grows (more photo) so the cities row ends right above the call bar.
	   70px = the call bar (58px) + its 10px offset + 2px air; svh keeps it steady while the browser bars move. */
	.rd-first { display: flex; flex-direction: column; min-height: calc(100vh - 70px); min-height: calc(100svh - 70px - env(safe-area-inset-bottom, 0px)); }
	.rd-first > .rd-hero { flex: 1 0 auto; display: flex; flex-direction: column; }
	.rd-hero { padding: 8px 8px 0; }
	.rd-hero__frame { flex: 1 0 auto; display: flex; flex-direction: column; }
	.rd-hero__inner { flex: 1 0 auto; align-content: end; gap: 26px; padding-top: 118px; padding-bottom: 22px; }
	.rd-hero__img { object-position: 18% 40%; }
	.rd-hero__shade { background: linear-gradient(to top, rgba(var(--rd-deep-rgb), 0.95) 0%, rgba(var(--rd-deep-rgb), 0.86) 48%, rgba(var(--rd-deep-rgb), 0.4) 78%, rgba(var(--rd-deep-rgb), 0.2) 100%); }
	.rd-h1 { font-size: 34px; }
	.rd-glass { width: 100%; }
	.rd-glass__ph { width: 104px; height: 104px !important; }
	.rd-strip { padding-block: 18px 12px; }
	.rd-strip__list { gap: 44px; }
	.rd-strip b { font-size: 18px; }
	.rd-sec { padding-block: 64px; }
	.rd-head { flex-direction: column; align-items: flex-start; gap: 16px; margin-bottom: 30px; }
	.rd-head__side { align-items: flex-start; max-width: none; text-align: start; }
	.rd-card { flex-basis: 82vw; height: 440px; }
	.rd-seo { padding-top: 56px; }
	.rd-seo__img { height: 300px !important; }
	.rd-badge { width: 150px; height: 150px; bottom: -20px; }
	.rd-badge__row b { font-size: 26px; }
	.rd-gr { width: 290px; padding: 16px; }
	.rd-bento { grid-template-columns: minmax(0, 1fr); gap: 16px; }
	.rd-step--1 .rd-step__media { min-height: 220px; }
	.rd-step--4 { grid-column: auto; flex-direction: column; }
	.rd-step__bg { width: 100%; opacity: 0.35; }
	.rd-step4__art { min-height: 190px; }
	.rd-band-sec { padding-block: 56px; }
	.rd-band { padding: 34px 22px; }
	.rd-band__ctas { width: 100%; }
	.rd-band__ctas .rd-btn { flex: 1 1 100%; justify-content: center; }
	.rd-footer { padding: 0 8px 8px; }
	.rd-footer__frame { padding-top: 48px; }
	.rd-footer__top { grid-template-columns: minmax(0, 1fr); gap: 28px; }

	body.rd { padding-bottom: 84px; }
	.rd-callbar {
		position: fixed;
		z-index: 50;
		bottom: calc(10px + env(safe-area-inset-bottom, 0px));
		inset-inline: 10px;
		display: flex;
		gap: 8px;
		padding: 6px;
		border-radius: 999px;
		background: var(--rd-deep);
		box-shadow: 0 10px 26px rgba(0, 0, 0, 0.25);
	}
	.rd-callbar .rd-btn { flex: 1; justify-content: center; min-height: 46px; gap: 8px; }
	.rd-callbar .rd-i { width: 17px; height: 17px; }
	.rd-btn--wa { background: #25d366; color: #fff; }
	.rd-wafloat { display: none; }
}

@media (max-width: 760px) {
	.rd-hero .rd-ctas { flex-direction: column; align-items: stretch; gap: 14px; }
	.rd-hero .rd-ctas .rd-btn--accent {
		justify-content: center;
		gap: 14px;
		width: 100%;
		min-height: 60px;
		padding-inline: 8px;
		font-size: 18px;
	}
	.rd-hero .rd-ctas .rd-link { align-self: center; }
	.rd-stats { max-width: none; margin-top: 20px; }
	.rd-greviews { width: 100%; }
}

/* Short phones (≈640–720px tall): tighter hero spacing so the cities row still reaches the first screen. */
@media (max-width: 760px) and (max-height: 720px) {
	.rd-hero__inner { gap: 14px; padding-top: 94px; padding-bottom: 14px; }
	.rd-rating { margin-bottom: 12px; }
	.rd-h1 { margin-bottom: 10px; }
	.rd-hero__sub { margin-bottom: 18px; }
	.rd-glass { padding: 8px; }
	.rd-glass__ph { width: 80px; height: 80px !important; }
	.rd-glass__big { font-size: 22px; }
	.rd-greviews { padding: 10px 14px; }
	.rd-greviews__num b { font-size: 24px; }
	.rd-strip { padding-block: 12px 10px; }
}

@media (max-width: 760px) and (max-height: 660px) {
	.rd-hero__inner { gap: 12px; padding-top: 84px; }
	.rd-hero .rd-ctas { gap: 10px; }
	.rd-hero .rd-ctas .rd-btn--accent { min-height: 54px; }
	.rd-hero .rd-ctas .rd-btn--call2 { min-height: 60px; padding-block: 6px; }
	.rd-btn--call2 .rd-btn__lbl .ltr { font-size: 22px; }
	.rd-stats { margin-top: 14px; }
	.rd-stats__top { height: 32px; }
	.rd-stats__top b { font-size: 28px; }
}

@media (max-width: 420px) {
	.rd-h1 { font-size: 31px; }
}

@media (prefers-reduced-motion: reduce) {
	.rd-card__img,
	.rd-menu,
	.rd-faq .faq-x,
	.rd-btn { transition: none; }
}
