/**
 * Donation Ride Design System
 *
 * Layers:
 * 1. reset      — predictable browser baseline
 * 2. tokens     — semantic design decisions
 * 3. elements   — unclassed HTML
 * 4. objects    — layout primitives
 * 5. components — reusable UI
 * 6. utilities  — single-purpose overrides
 */

@layer dr-reset, dr-tokens, dr-elements, dr-objects, dr-components, dr-utilities;

@font-face {
	font-family: "Inter Variable";
	src: url("../fonts/InterVariable.woff2") format("woff2");
	font-weight: 100 900;
	font-style: normal;
	font-display: swap;
}

@layer dr-tokens {
	:root {
		/* Premium mobility palette. */
		--dr-color-ink-0: #ffffff;
		--dr-color-ink-50: #f7f8f8;
		--dr-color-ink-100: #eceeef;
		--dr-color-ink-200: #d9dcde;
		--dr-color-ink-300: #bdc2c5;
		--dr-color-ink-400: #92999d;
		--dr-color-ink-500: #697176;
		--dr-color-ink-600: #4c5357;
		--dr-color-ink-700: #34393d;
		--dr-color-ink-800: #202427;
		--dr-color-ink-900: #111416;
		--dr-color-ink-1000: #080a0b;

		--dr-color-petrol-50: #edf5f6;
		--dr-color-petrol-100: #d8e9ec;
		--dr-color-petrol-200: #b5d5db;
		--dr-color-petrol-300: #83b8c2;
		--dr-color-petrol-400: #4d94a2;
		--dr-color-petrol-500: #246f7e;
		--dr-color-petrol-600: #165968;
		--dr-color-petrol-700: #0f4c5c;
		--dr-color-petrol-800: #103d48;
		--dr-color-petrol-900: #0d3038;

		--dr-color-gold-50: #f8f5ed;
		--dr-color-gold-100: #eee6d2;
		--dr-color-gold-300: #d3bf8e;
		--dr-color-gold-500: #b49a62;
		--dr-color-gold-700: #806a3d;
		--dr-color-gold-900: #54462b;

		--dr-color-green-50: #edf9f2;
		--dr-color-green-500: #198754;
		--dr-color-green-700: #10643d;
		--dr-color-amber-50: #fff8e5;
		--dr-color-amber-500: #b86e00;
		--dr-color-amber-700: #7b4900;
		--dr-color-red-50: #fff1f1;
		--dr-color-red-500: #d9363e;
		--dr-color-red-700: #a51f27;
		--dr-color-blue-50: #eef6ff;
		--dr-color-blue-500: #2878d0;
		--dr-color-blue-700: #185a9d;

		/* Semantic colors. Never use primitive names in components. */
		--dr-color-bg: var(--dr-color-ink-0);
		--dr-color-bg-subtle: var(--dr-color-ink-50);
		--dr-color-bg-muted: var(--dr-color-ink-100);
		--dr-color-bg-inverse: var(--dr-color-ink-900);
		--dr-color-surface: var(--dr-color-ink-0);
		--dr-color-surface-raised: var(--dr-color-ink-0);
		--dr-color-text: var(--dr-color-ink-900);
		--dr-color-text-muted: var(--dr-color-ink-600);
		--dr-color-text-subtle: var(--dr-color-ink-500);
		--dr-color-text-inverse: var(--dr-color-ink-0);
		--dr-color-border: var(--dr-color-ink-200);
		--dr-color-border-strong: var(--dr-color-ink-400);
		--dr-color-accent: var(--dr-color-petrol-700);
		--dr-color-accent-hover: var(--dr-color-petrol-800);
		--dr-color-accent-active: var(--dr-color-petrol-900);
		--dr-color-accent-subtle: var(--dr-color-petrol-50);
		--dr-color-premium: var(--dr-color-gold-500);
		--dr-color-premium-strong: var(--dr-color-gold-700);
		/* Dourado para TEXTO sobre fotografia/véus translúcidos: o strong
		 * (4.7:1 sobre branco) cai abaixo de AA sobre céus claros. */
		--dr-color-premium-ink: var(--dr-color-gold-900);
		--dr-color-premium-subtle: var(--dr-color-gold-50);
		--dr-color-focus: var(--dr-color-petrol-500);
		--dr-color-success: var(--dr-color-green-700);
		--dr-color-success-bg: var(--dr-color-green-50);
		--dr-color-warning: var(--dr-color-amber-700);
		--dr-color-warning-bg: var(--dr-color-amber-50);
		--dr-color-danger: var(--dr-color-red-700);
		--dr-color-danger-bg: var(--dr-color-red-50);
		--dr-color-info: var(--dr-color-blue-700);
		--dr-color-info-bg: var(--dr-color-blue-50);

		/* Typography. */
		--dr-font-sans: "Inter Variable", "Inter", sans-serif;
		--dr-font-serif: var(--wp--preset--font-family--serif);
		--dr-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
		--dr-font-size-100: 0.75rem;
		--dr-font-size-200: 0.875rem;
		--dr-font-size-300: 1rem;
		--dr-font-size-400: 1.125rem;
		--dr-font-size-500: clamp(1.25rem, 1.15rem + 0.35vw, 1.5rem);
		--dr-font-size-600: clamp(1.5rem, 1.25rem + 0.8vw, 2rem);
		--dr-font-size-700: clamp(2rem, 1.55rem + 1.5vw, 3rem);
		--dr-font-size-800: clamp(2.5rem, 1.7rem + 2.8vw, 4.5rem);
		--dr-font-weight-regular: 400;
		--dr-font-weight-medium: 500;
		--dr-font-weight-semibold: 650;
		--dr-font-weight-bold: 750;
		--dr-line-height-tight: 1.1;
		--dr-line-height-heading: 1.3; /* mínimo legível para títulos que quebram linha (auditoria Impeccable) */
		--dr-line-height-body: 1.6;
		--dr-line-height-control: 1.25;
		--dr-letter-spacing-tight: -0.035em;
		--dr-letter-spacing-normal: 0;
		--dr-letter-spacing-wide: 0.08em;

		/* Eight-point spacing scale. */
		--dr-space-0: 0;
		--dr-space-1: 0.5rem;
		--dr-space-2: 1rem;
		--dr-space-3: 1.5rem;
		--dr-space-4: 2rem;
		--dr-space-5: 2.5rem;
		--dr-space-6: 3rem;
		--dr-space-8: 4rem;
		--dr-space-10: 5rem;
		--dr-space-12: 6rem;
		--dr-space-16: 8rem;
		--dr-space-20: 10rem;
		--dr-space-24: 12rem;
		--dr-space-section: clamp(4rem, 8vw, 8rem);

		/* Shape and borders. */
		--dr-border-width-1: 1px;
		--dr-border-width-2: 2px;
		--dr-radius-0: 0;
		--dr-radius-1: 0.25rem;
		--dr-radius-2: 0.5rem;
		--dr-radius-3: 0.75rem;
		--dr-radius-4: 1rem;
		--dr-radius-5: 1.5rem;
		--dr-radius-round: 9999px;

		/* Elevation. */
		--dr-shadow-0: none;
		--dr-shadow-1: 0 1px 2px rgba(13, 14, 17, 0.06);
		--dr-shadow-2: 0 0.5rem 1.5rem rgba(13, 14, 17, 0.08);
		--dr-shadow-3: 0 1rem 3rem rgba(13, 14, 17, 0.12);
		--dr-shadow-4: 0 1.5rem 5rem rgba(13, 14, 17, 0.18);
		--dr-focus-ring: 0 0 0 3px rgba(36, 111, 126, 0.38);

		/* Motion. */
		--dr-duration-fast: 120ms;
		--dr-duration-normal: 180ms;
		--dr-duration-slow: 280ms;
		--dr-ease-standard: cubic-bezier(0.2, 0, 0, 1);
		--dr-ease-emphasized: cubic-bezier(0.2, 0.8, 0.2, 1);

		/* Proprietary button system. */
		--dr-btn-height: 3.75rem;
		--dr-btn-height-sm: 3rem;
		--dr-btn-padding-x: 2rem;
		--dr-btn-padding-x-sm: 1.5rem;
		--dr-btn-radius: 1.125rem;
		--dr-btn-font-size: 1.125rem;
		--dr-btn-font-size-sm: 1rem;
		--dr-btn-font-weight: 700;
		--dr-btn-letter-spacing: -0.02em;
		--dr-btn-line-height: 1;
		--dr-btn-duration: 220ms;
		--dr-btn-shadow-hover: 0 0.75rem 1.875rem rgba(0, 0, 0, 0.15);

		/* Responsive containers and grid. */
		--dr-container-sm: 40rem;
		--dr-container-md: 48rem;
		--dr-container-lg: 64rem;
		--dr-container-xl: 80rem;
		--dr-container-gutter: clamp(1rem, 3vw, 2rem);
		--dr-grid-columns: 12;
		--dr-grid-gap: clamp(1rem, 2vw, 1.5rem);
		--dr-card-padding: var(--dr-space-3);
		--dr-card-gap: var(--dr-space-1);
		--dr-card-gap-lg: var(--dr-space-2);

		/* Layering. */
		--dr-z-base: 0;
		--dr-z-raised: 10;
		--dr-z-sticky: 100;
		--dr-z-dropdown: 200;
		--dr-z-overlay: 300;
		--dr-z-modal: 400;
		--dr-z-toast: 500;
		--dr-z-skip-link: 600;

		/* Control sizing. */
		--dr-control-height-sm: 2.25rem;
		--dr-control-height-md: 2.75rem;
		--dr-control-height-lg: 3.25rem;
		--dr-touch-target-min: 2.75rem;
	}
}

@layer dr-reset {
	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	html {
		-webkit-text-size-adjust: 100%;
	}

	body,
	h1,
	h2,
	h3,
	h4,
	p,
	figure,
	blockquote,
	dl,
	dd {
		margin-block-start: 0;
	}

	img,
	picture,
	svg,
	video {
		display: block;
		max-width: 100%;
	}

	button,
	input,
	select,
	textarea {
		font: inherit;
	}
}

@layer dr-elements {
	html {
		scroll-behavior: smooth;
	}

	body {
		background: var(--dr-color-bg);
		color: var(--dr-color-text);
		font-family: var(--dr-font-sans);
		font-size: var(--dr-font-size-300);
		line-height: var(--dr-line-height-body);
	}

	h1,
	h2,
	h3,
	h4,
	h5,
	h6 {
		color: inherit;
		font-weight: var(--dr-font-weight-bold);
		letter-spacing: var(--dr-letter-spacing-tight);
		line-height: var(--dr-line-height-heading);
		text-wrap: balance;
	}

	p,
	li {
		text-wrap: pretty;
	}

	a {
		color: var(--dr-color-accent);
		text-decoration-thickness: 0.08em;
		text-underline-offset: 0.18em;
	}

	a:hover {
		color: var(--dr-color-accent-hover);
	}

	:where(a, button, input, select, textarea, summary, [tabindex]):focus-visible {
		border-radius: var(--dr-radius-1);
		box-shadow: var(--dr-focus-ring);
		outline: 2px solid transparent;
		outline-offset: 2px;
	}

	::selection {
		background: var(--dr-color-petrol-200);
		color: var(--dr-color-ink-1000);
	}
}

@layer dr-objects {
	.dr-container {
		margin-inline: auto;
		max-width: var(--dr-container-xl);
		padding-inline: var(--dr-container-gutter);
		width: 100%;
	}

	.dr-container--narrow {
		max-width: var(--dr-container-md);
	}

	.dr-grid {
		display: grid;
		gap: var(--dr-grid-gap);
		grid-template-columns: repeat(var(--dr-grid-columns), minmax(0, 1fr));
	}

	.dr-grid > * {
		grid-column: span 12;
		min-width: 0;
	}

	.dr-stack {
		display: flex;
		flex-direction: column;
		gap: var(--dr-stack-gap, var(--dr-space-4));
	}

	.dr-cluster {
		align-items: center;
		display: flex;
		flex-wrap: wrap;
		gap: var(--dr-cluster-gap, var(--dr-space-3));
	}

	.dr-section {
		padding-block: var(--dr-space-section);
	}

	@media (min-width: 40rem) {
		.dr-col-sm-6 {
			grid-column: span 6;
		}

		.dr-col-sm-4 {
			grid-column: span 4;
		}
	}

	@media (min-width: 64rem) {
		.dr-col-lg-8 {
			grid-column: span 8;
		}

		.dr-col-lg-6 {
			grid-column: span 6;
		}

		.dr-col-lg-4 {
			grid-column: span 4;
		}

		.dr-col-lg-3 {
			grid-column: span 3;
		}
	}
}

@layer dr-components {
	/* Cards */
	.dr-card {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-4);
		color: var(--dr-color-text);
		padding: var(--dr-space-3);
	}

	.dr-card--interactive {
		box-shadow: var(--dr-shadow-1);
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-card--interactive:hover {
		border-color: var(--dr-color-border-strong);
		box-shadow: var(--dr-shadow-2);
		transform: translateY(-2px);
	}

	.dr-card--selected,
	.dr-card[aria-selected="true"] {
		border-color: var(--dr-color-accent);
		box-shadow: 0 0 0 1px var(--dr-color-accent);
	}

	/* Benefit card */
	.dr-benefit-card {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-4);
		color: var(--dr-color-text);
		display: flex;
		flex-direction: column;
		gap: var(--dr-card-gap);
		height: 100%;
		margin: 0;
		padding: var(--dr-card-padding);
	}

	.dr-benefit-card__icon {
		align-items: center;
		background: var(--dr-color-accent-subtle);
		border-radius: var(--dr-radius-round);
		color: var(--dr-color-accent);
		display: inline-flex;
		height: var(--dr-control-height-lg);
		justify-content: center;
		margin-bottom: 0;
		width: var(--dr-control-height-lg);
	}

	.dr-benefit-card__icon svg {
		display: block;
		height: 1.5rem;
		width: 1.5rem;
	}

	.dr-benefit-card__eyebrow {
		color: var(--dr-color-premium-strong);
		font-size: var(--dr-font-size-100);
		font-weight: var(--dr-font-weight-bold);
		letter-spacing: var(--dr-letter-spacing-wide);
		margin: 0;
		text-transform: uppercase;
	}

	.dr-benefit-card__title {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-500);
		letter-spacing: var(--dr-letter-spacing-tight);
		line-height: var(--dr-line-height-heading);
		margin: 0;
	}

	.dr-benefit-card__description {
		color: var(--dr-color-text-muted);
		margin: 0;
	}

	.dr-benefit-card__footer {
		margin-top: auto;
		padding-top: var(--dr-card-gap);
	}

	.dr-benefit-card__link {
		color: var(--dr-color-accent);
		font-size: var(--dr-font-size-300);
		font-weight: var(--dr-font-weight-semibold);
		text-decoration: none;
	}

	.dr-benefit-card__link:hover {
		color: var(--dr-color-accent-hover);
	}

	.dr-benefit-card--interactive {
		box-shadow: var(--dr-shadow-1);
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-benefit-card--interactive:focus-within {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
	}

	@media (hover: hover) {
		.dr-benefit-card--interactive:hover {
			border-color: var(--dr-color-border-strong);
			box-shadow: var(--dr-shadow-2);
			transform: translateY(-2px);
		}
	}

	/* Service offering card */
	.dr-service-offering-card {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-4);
		color: var(--dr-color-text);
		display: flex;
		flex-direction: column;
		gap: var(--dr-card-gap);
		height: 100%;
		margin: 0;
		padding: var(--dr-card-padding);
	}

	.dr-service-offering-card__mark {
		align-items: center;
		background: var(--dr-color-premium-subtle);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-round);
		color: var(--dr-color-premium-strong);
		display: inline-flex;
		font-size: var(--dr-font-size-200);
		font-weight: var(--dr-font-weight-bold);
		height: var(--dr-control-height-lg);
		justify-content: center;
		letter-spacing: var(--dr-letter-spacing-wide);
		margin: 0;
		width: var(--dr-control-height-lg);
	}

	.dr-service-offering-card__mark svg {
		display: block;
		height: 1.5rem;
		width: 1.5rem;
	}

	.dr-service-offering-card__title {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-500);
		letter-spacing: var(--dr-letter-spacing-tight);
		line-height: var(--dr-line-height-heading);
		margin: 0;
	}

	.dr-service-offering-card__description {
		color: var(--dr-color-text-muted);
		margin: 0;
	}

	.dr-service-offering-card__benefits {
		display: grid;
		gap: var(--dr-card-gap);
		list-style: none;
		margin: var(--dr-card-gap) 0 0;
		padding: 0;
	}

	.dr-service-offering-card__benefits li {
		align-items: flex-start;
		display: flex;
		font-size: var(--dr-font-size-200);
		gap: var(--dr-card-gap);
	}

	.dr-service-offering-card__benefits li::before {
		background: var(--dr-color-accent);
		border-radius: var(--dr-radius-round);
		content: "";
		flex: 0 0 auto;
		height: 0.375rem;
		margin-top: 0.55em;
		width: 0.375rem;
	}

	.dr-service-offering-card__footer {
		margin: auto 0 0;
		padding-top: var(--dr-card-gap);
	}

	.dr-service-offering-card__link {
		color: var(--dr-color-accent);
		font-weight: var(--dr-font-weight-semibold);
		text-decoration-thickness: var(--dr-border-width-1);
		text-underline-offset: 0.25em;
	}

	.dr-service-offering-card__link:hover {
		color: var(--dr-color-accent-hover);
	}

	.dr-service-offering-card--interactive {
		box-shadow: var(--dr-shadow-1);
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-service-offering-card--interactive:focus-within {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
	}

	@media (hover: hover) {
		.dr-service-offering-card--interactive:hover {
			border-color: var(--dr-color-border-strong);
			box-shadow: var(--dr-shadow-2);
			transform: translateY(-2px);
		}
	}

	/* Vehicle card */
	.dr-vehicle-card {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-4);
		color: var(--dr-color-text);
		display: flex;
		flex-direction: column;
		height: 100%;
		margin: 0;
		overflow: hidden;
	}

	.dr-vehicle-card__media {
		aspect-ratio: 16 / 10;
		background: var(--dr-color-bg-muted);
		margin: 0;
		overflow: hidden;
		position: relative;
	}

	.dr-vehicle-card__image {
		height: 100%;
		margin: 0;
		width: 100%;
	}

	.dr-vehicle-card__image img {
		height: 100%;
		object-fit: cover;
		object-position: center 62%;
		width: 100%;
	}

	.dr-vehicle-card__badge {
		background: var(--dr-color-premium-subtle);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-round);
		color: var(--dr-color-premium-strong);
		font-size: var(--dr-font-size-100);
		font-weight: var(--dr-font-weight-bold);
		left: var(--dr-space-2);
		letter-spacing: var(--dr-letter-spacing-wide);
		margin: 0;
		padding: var(--dr-space-1) var(--dr-space-2);
		position: absolute;
		text-transform: uppercase;
		top: var(--dr-space-2);
	}

	.dr-vehicle-card__body {
		display: flex;
		flex: 1;
		flex-direction: column;
		gap: var(--dr-card-gap);
		margin: 0;
		padding: var(--dr-card-padding);
	}

	.dr-vehicle-card__title {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-500);
		letter-spacing: var(--dr-letter-spacing-tight);
		line-height: var(--dr-line-height-heading);
		margin: 0;
	}

	.dr-vehicle-card__description {
		color: var(--dr-color-text-muted);
		margin: 0;
	}

	.dr-vehicle-card__capacity {
		border-block: var(--dr-border-width-1) solid var(--dr-color-border);
		display: grid;
		gap: var(--dr-card-gap);
		grid-template-columns: repeat(2, minmax(0, 1fr));
		margin: var(--dr-card-gap) 0 0;
		padding-block: var(--dr-card-gap);
	}

	.dr-vehicle-card__capacity-item {
		margin: 0;
	}

	.dr-vehicle-card__capacity-item dt {
		color: var(--dr-color-text-subtle);
		font-size: var(--dr-font-size-100);
		font-weight: var(--dr-font-weight-semibold);
		letter-spacing: var(--dr-letter-spacing-wide);
		text-transform: uppercase;
	}

	.dr-vehicle-card__capacity-item dd {
		align-items: center;
		color: var(--dr-color-text);
		display: flex;
		font-size: var(--dr-font-size-200);
		font-weight: var(--dr-font-weight-semibold);
		gap: var(--dr-space-1);
		margin: var(--dr-space-1) 0 0;
	}

	.dr-vehicle-card__capacity-item dd::before {
		background-color: currentColor;
		block-size: 1.125rem;
		content: "";
		flex: 0 0 1.125rem;
		inline-size: 1.125rem;
		mask-position: center;
		mask-repeat: no-repeat;
		mask-size: contain;
	}

	.dr-vehicle-card__capacity-item:first-child dd::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a4.25 4.25 0 1 0 0-8.5 4.25 4.25 0 0 0 0 8.5Zm0 2c-4.42 0-8 2.46-8 5.5 0 .55.45 1 1 1h14a1 1 0 0 0 1-1c0-3.04-3.58-5.5-8-5.5Z'/%3E%3C/svg%3E");
	}

	.dr-vehicle-card__capacity-item:nth-child(2) dd::before {
		mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' fill-rule='evenodd' d='M8.25 4.75A2.75 2.75 0 0 1 11 2h2a2.75 2.75 0 0 1 2.75 2.75V6H18a3 3 0 0 1 3 3v9a3 3 0 0 1-3 3H6a3 3 0 0 1-3-3V9a3 3 0 0 1 3-3h2.25V4.75Zm2 0V6h3.5V4.75A.75.75 0 0 0 13 4h-2a.75.75 0 0 0-.75.75ZM7 9a1 1 0 0 1 1 1v7a1 1 0 1 1-2 0v-7a1 1 0 0 1 1-1Zm10 0a1 1 0 0 1 1 1v7a1 1 0 1 1-2 0v-7a1 1 0 0 1 1-1Z' clip-rule='evenodd'/%3E%3C/svg%3E");
	}

	.dr-vehicle-card__footer {
		margin: auto 0 0;
		padding-top: var(--dr-card-gap);
	}

	.dr-vehicle-card__footer .dr-btn {
		inline-size: 100%;
		justify-content: center;
		text-align: center;
	}

	.dr-vehicle-card__link {
		color: var(--dr-color-accent);
		font-weight: var(--dr-font-weight-semibold);
		text-decoration-thickness: var(--dr-border-width-1);
		text-underline-offset: 0.25em;
	}

	.dr-vehicle-card__link:hover {
		color: var(--dr-color-accent-hover);
	}

	.dr-vehicle-card--interactive {
		box-shadow: var(--dr-shadow-1);
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-vehicle-card--interactive:focus-within {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
	}

	@media (hover: hover) {
		.dr-vehicle-card--interactive:hover {
			border-color: var(--dr-color-border-strong);
			box-shadow: var(--dr-shadow-2);
			transform: translateY(-2px);
		}
	}

	/* CTA section */
	.dr-cta-section {
		background: var(--dr-color-bg-subtle);
		color: var(--dr-color-text);
		padding-block: var(--dr-space-section);
	}

	.dr-cta-section--dark {
		background: var(--dr-color-bg-inverse);
		color: var(--dr-color-text-inverse);
	}

	.dr-cta-section__inner {
		align-items: center;
		display: grid;
		gap: var(--dr-space-4);
		grid-template-columns: minmax(0, 1fr);
	}

	.dr-cta-section__content {
		margin: 0;
		max-width: var(--dr-container-sm);
	}

	.dr-cta-section__title {
		color: inherit;
		font-size: var(--dr-font-size-700);
		letter-spacing: var(--dr-letter-spacing-tight);
		line-height: var(--dr-line-height-heading);
		margin: 0;
		text-wrap: balance;
	}

	.dr-cta-section__description {
		color: var(--dr-color-text-muted);
		font-size: var(--dr-font-size-400);
		margin: var(--dr-space-2) 0 0;
		max-width: 38rem;
		text-wrap: pretty;
	}

	.dr-cta-section--dark .dr-cta-section__description {
		color: color-mix(in srgb, var(--dr-color-text-inverse) 72%, transparent);
	}

	.dr-cta-section__actions {
		align-items: stretch;
		gap: var(--dr-space-2);
		margin: 0;
	}

	.dr-cta-section__button,
	.dr-cta-section__button .wp-block-button__link {
		width: 100%;
	}

	@media (min-width: 40rem) {
		.dr-cta-section__actions {
			align-items: center;
		}

		.dr-cta-section__button,
		.dr-cta-section__button .wp-block-button__link {
			width: auto;
		}
	}

	@media (min-width: 64rem) {
		.dr-cta-section__inner {
			gap: var(--dr-space-8);
			grid-template-columns: minmax(0, 1.5fr) auto;
		}

		.dr-cta-section__actions {
			justify-content: flex-end;
		}
	}

	/* Testimonial card */
	.dr-testimonial-card {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-4);
		color: var(--dr-color-text);
		display: flex;
		flex-direction: column;
		gap: var(--dr-card-gap-lg);
		height: 100%;
		margin: 0;
		padding: var(--dr-card-padding);
	}

	.dr-testimonial-card__rating {
		line-height: 1;
		margin: 0;
	}

	.dr-testimonial-card__stars {
		color: var(--dr-color-premium-strong);
		font-size: var(--dr-font-size-200);
		letter-spacing: var(--dr-letter-spacing-wide);
	}

	.dr-testimonial-card__quote {
		border: 0;
		margin: 0;
		padding: 0;
	}

	.dr-testimonial-card__quote p {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-400);
		line-height: var(--dr-line-height-body);
		margin: 0;
	}

	.dr-testimonial-card__caption {
		align-items: center;
		display: flex;
		gap: var(--dr-card-gap);
		margin-top: auto;
		padding-top: var(--dr-card-gap);
	}

	.dr-testimonial-card__avatar {
		align-items: center;
		aspect-ratio: 1;
		background: var(--dr-color-accent-subtle);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-round);
		color: var(--dr-color-accent-active);
		display: inline-flex;
		flex: 0 0 var(--dr-control-height-lg);
		font-size: var(--dr-font-size-200);
		font-weight: var(--dr-font-weight-bold);
		justify-content: center;
		letter-spacing: var(--dr-letter-spacing-wide);
		overflow: hidden;
	}

	.dr-testimonial-card__avatar img {
		height: 100%;
		object-fit: cover;
		width: 100%;
	}

	.dr-testimonial-card__identity {
		display: grid;
		gap: var(--dr-card-gap);
	}

	.dr-testimonial-card__name {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-200);
		font-weight: var(--dr-font-weight-semibold);
		line-height: var(--dr-line-height-control);
	}

	.dr-testimonial-card__context {
		color: var(--dr-color-text-subtle);
		font-size: var(--dr-font-size-100);
		line-height: var(--dr-line-height-control);
	}

	.dr-testimonial-card--interactive {
		box-shadow: var(--dr-shadow-1);
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-testimonial-card--interactive:focus-within {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
	}

	@media (hover: hover) {
	.dr-testimonial-card--interactive:hover {
			border-color: var(--dr-color-border-strong);
			box-shadow: var(--dr-shadow-2);
			transform: translateY(-2px);
		}
	}

	/* FAQ item */
	.dr-faq-item {
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-3);
		color: var(--dr-color-text);
		margin: 0;
		overflow: clip;
		transition:
			border-color var(--dr-duration-normal) var(--dr-ease-standard),
			box-shadow var(--dr-duration-normal) var(--dr-ease-standard),
			transform var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-faq-item:focus-within {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
	}

	.dr-faq-item__details {
		display: block;
	}

	.dr-faq-item__summary {
		align-items: center;
		color: var(--dr-color-text);
		cursor: pointer;
		display: flex;
		gap: var(--dr-card-gap-lg);
		justify-content: space-between;
		list-style: none;
		padding: var(--dr-card-padding) var(--dr-space-4);
		transition: color var(--dr-duration-normal) var(--dr-ease-standard);
	}

	.dr-faq-item__summary::-webkit-details-marker {
		display: none;
	}

	.dr-faq-item__summary::after {
		border-bottom: 2px solid currentColor;
		border-right: 2px solid currentColor;
		content: '';
		flex: 0 0 auto;
		height: 0.6rem;
		margin-top: -0.2rem;
		transform: rotate(45deg);
		transform-origin: center;
		transition: transform var(--dr-duration-normal) var(--dr-ease-standard);
		width: 0.6rem;
	}

	.dr-faq-item[open] {
		border-color: var(--dr-color-border-strong);
		box-shadow: var(--dr-shadow-1);
	}

	.dr-faq-item[open] .dr-faq-item__summary {
		color: var(--dr-color-text);
	}

	.dr-faq-item[open] .dr-faq-item__summary::after {
		transform: rotate(225deg);
	}

	.dr-faq-item__summary:hover {
		color: var(--dr-color-accent-active);
	}

	.dr-faq-item__summary:focus-visible {
		border-radius: inherit;
		box-shadow: inset 0 0 0 var(--dr-border-width-2) var(--dr-color-focus);
		outline: none;
	}

	.dr-faq-item__question {
		font-size: var(--dr-font-size-300);
		font-weight: var(--dr-font-weight-semibold);
		line-height: var(--dr-line-height-heading);
		max-width: 42rem;
	}

	.dr-faq-item__answer {
		border-top: var(--dr-border-width-1) solid var(--dr-color-border);
		padding: 0 var(--dr-space-4) var(--dr-space-4);
	}

	.dr-faq-item__answer > :first-child {
		margin-top: var(--dr-card-gap-lg);
	}

	.dr-faq-item__answer > :last-child {
		margin-bottom: 0;
	}

	.dr-faq-item__answer p {
		color: var(--dr-color-text-subtle);
		font-size: var(--dr-font-size-200);
		line-height: var(--dr-line-height-body);
		margin: 0;
	}

	/* Forms */
	.dr-field {
		display: grid;
		gap: var(--dr-space-1);
	}

	.dr-label {
		color: var(--dr-color-text);
		font-size: var(--dr-font-size-200);
		font-weight: var(--dr-font-weight-semibold);
	}

	.dr-label__optional {
		color: var(--dr-color-text-subtle);
		font-weight: var(--dr-font-weight-regular);
	}

	.dr-input,
	.dr-select,
	.dr-textarea {
		appearance: none;
		background: var(--dr-color-surface);
		border: var(--dr-border-width-1) solid var(--dr-color-border-strong);
		border-radius: var(--dr-radius-2);
		color: var(--dr-color-text);
		font-size: max(1rem, var(--dr-font-size-300));
		min-height: var(--dr-control-height-md);
		padding: var(--dr-space-1) var(--dr-space-2);
		transition:
			border-color var(--dr-duration-fast) var(--dr-ease-standard),
			box-shadow var(--dr-duration-fast) var(--dr-ease-standard);
		width: 100%;
	}

	.dr-input:hover,
	.dr-select:hover,
	.dr-textarea:hover {
		border-color: var(--dr-color-text-muted);
	}

	.dr-input:focus,
	.dr-select:focus,
	.dr-textarea:focus {
		border-color: var(--dr-color-focus);
		box-shadow: var(--dr-focus-ring);
		outline: 0;
	}

	.dr-input:disabled,
	.dr-select:disabled,
	.dr-textarea:disabled {
		background: var(--dr-color-bg-muted);
		color: var(--dr-color-text-subtle);
		cursor: not-allowed;
		opacity: 1;
	}

	.dr-input[aria-invalid="true"],
	.dr-select[aria-invalid="true"],
	.dr-textarea[aria-invalid="true"] {
		border-color: var(--dr-color-danger);
	}

	.dr-field__help,
	.dr-field__error {
		font-size: var(--dr-font-size-200);
		margin: 0;
	}

	.dr-field__help {
		color: var(--dr-color-text-muted);
	}

	.dr-field__error {
		color: var(--dr-color-danger);
		font-weight: var(--dr-font-weight-medium);
	}

	/* Badges */
	.dr-badge {
		align-items: center;
		background: var(--dr-color-bg-muted);
		border-radius: var(--dr-radius-round);
		color: var(--dr-color-text-muted);
		display: inline-flex;
		font-size: var(--dr-font-size-100);
		font-weight: var(--dr-font-weight-semibold);
		gap: var(--dr-space-1);
		line-height: 1;
		min-height: 1.5rem;
		padding: var(--dr-space-1) var(--dr-space-2);
	}

	.dr-badge--success {
		background: var(--dr-color-success-bg);
		color: var(--dr-color-success);
	}

	.dr-badge--warning {
		background: var(--dr-color-warning-bg);
		color: var(--dr-color-warning);
	}

	.dr-badge--danger {
		background: var(--dr-color-danger-bg);
		color: var(--dr-color-danger);
	}

	.dr-badge--info {
		background: var(--dr-color-info-bg);
		color: var(--dr-color-info);
	}

	/* Modal shell. Behavior must use the native dialog API. */
	.dr-modal {
		background: var(--dr-color-surface);
		border: 0;
		border-radius: var(--dr-radius-4);
		box-shadow: var(--dr-shadow-4);
		color: var(--dr-color-text);
		max-height: min(90dvh, 48rem);
		max-width: min(calc(100% - 2rem), 40rem);
		overflow: auto;
		padding: 0;
		width: 100%;
	}

	.dr-modal::backdrop {
		background: rgba(13, 14, 17, 0.72);
		backdrop-filter: blur(3px);
	}

	.dr-modal__header,
	.dr-modal__body,
	.dr-modal__footer {
		padding: var(--dr-space-3);
	}

	.dr-modal__header {
		align-items: flex-start;
		border-bottom: var(--dr-border-width-1) solid var(--dr-color-border);
		display: flex;
		gap: var(--dr-space-2);
		justify-content: space-between;
	}

	.dr-modal__footer {
		border-top: var(--dr-border-width-1) solid var(--dr-color-border);
		display: flex;
		flex-wrap: wrap;
		gap: var(--dr-space-2);
		justify-content: flex-end;
	}

	/* Tables */
	.dr-table-wrap {
		border: var(--dr-border-width-1) solid var(--dr-color-border);
		border-radius: var(--dr-radius-3);
		max-width: 100%;
		overflow-x: auto;
	}

	.dr-table {
		border-collapse: collapse;
		font-size: var(--dr-font-size-200);
		min-width: 40rem;
		width: 100%;
	}

	.dr-table caption {
		font-weight: var(--dr-font-weight-semibold);
		padding: var(--dr-space-2);
		text-align: left;
	}

	.dr-table th,
	.dr-table td {
		border-bottom: var(--dr-border-width-1) solid var(--dr-color-border);
		padding: var(--dr-space-2);
		text-align: left;
		vertical-align: top;
	}

	.dr-table th {
		background: var(--dr-color-bg-subtle);
		color: var(--dr-color-text-muted);
		font-size: var(--dr-font-size-100);
		font-weight: var(--dr-font-weight-bold);
		letter-spacing: var(--dr-letter-spacing-wide);
		text-transform: uppercase;
	}

	.dr-table tbody tr:hover {
		background: var(--dr-color-bg-subtle);
	}

	/* Navigation */
	.dr-nav {
		align-items: center;
		display: flex;
		gap: var(--dr-space-1);
	}

	.dr-nav__link {
		border-radius: var(--dr-radius-2);
		color: var(--dr-color-text);
		display: inline-flex;
		font-weight: var(--dr-font-weight-medium);
		min-height: var(--dr-touch-target-min);
		padding: var(--dr-space-1) var(--dr-space-2);
		text-decoration: none;
	}

	.dr-nav__link:hover {
		background: var(--dr-color-bg-muted);
		color: var(--dr-color-text);
	}

	.dr-nav__link[aria-current="page"] {
		background: var(--dr-color-accent-subtle);
		color: var(--dr-color-accent-active);
	}

	/* Footer */
	.dr-footer {
		background: var(--dr-color-bg-inverse);
		color: var(--dr-color-text-inverse);
		padding-block: var(--dr-space-6);
	}

	.dr-footer a {
		color: inherit;
	}

	.dr-footer a:hover {
		color: var(--dr-color-gold-300);
	}

	/* Icon contract */
	.dr-icon {
		color: currentcolor;
		flex: 0 0 auto;
		height: 1.25em;
		stroke: currentcolor;
		stroke-linecap: round;
		stroke-linejoin: round;
		stroke-width: 1.75;
		width: 1.25em;
	}
}

@layer dr-utilities {
	.dr-sr-only {
		border: 0;
		clip: rect(0 0 0 0);
		clip-path: inset(50%);
		height: 1px;
		margin: -1px;
		overflow: hidden;
		padding: 0;
		position: absolute;
		white-space: nowrap;
		width: 1px;
	}

	.dr-skip-link {
		background: var(--dr-color-bg-inverse);
		color: var(--dr-color-text-inverse);
		left: var(--dr-space-2);
		padding: var(--dr-space-1) var(--dr-space-2);
		position: fixed;
		top: var(--dr-space-2);
		transform: translateY(calc(-100% - var(--dr-space-4)));
		transition: transform var(--dr-duration-fast) var(--dr-ease-standard);
		z-index: var(--dr-z-skip-link);
	}

	.dr-skip-link:focus {
		transform: translateY(0);
	}

	.dr-text-muted {
		color: var(--dr-color-text-muted) !important;
	}

	.dr-text-center {
		text-align: center !important;
	}

	.dr-no-scroll {
		overflow: hidden !important;
	}
}

/*
 * Donation Ride button system
 *
 * Kept unlayered so the product component consistently overrides WordPress
 * core button presets without !important.
 */
.dr-btn,
.wp-block-button > .wp-block-button__link,
.dr-button > .wp-block-button__link,
.dr-header__login > .wp-block-button__link,
.dr-header__cta > .wp-block-button__link,
.dr-cta-section__button > .wp-block-button__link,
.dr-auth #dr-login-form .button-primary,
.dr-hero__widget-cta,
.dr-hero__widget .chbs-button.chbs-button-widget-submit,
.dr-footer__contact-link > a {
	align-items: center;
	appearance: none;
	background: var(--dr-color-accent);
	background-image: none;
	border: var(--dr-border-width-1) solid var(--dr-color-accent);
	border-radius: var(--dr-btn-radius);
	box-shadow: none;
	box-sizing: border-box;
	color: var(--dr-color-text-inverse);
	cursor: pointer;
	display: inline-flex;
	font-family: inherit;
	font-size: var(--dr-btn-font-size);
	font-style: normal;
	font-weight: var(--dr-btn-font-weight);
	gap: var(--dr-space-1);
	height: var(--dr-btn-height);
	justify-content: center;
	letter-spacing: var(--dr-btn-letter-spacing);
	line-height: var(--dr-btn-line-height);
	min-height: var(--dr-btn-height);
	padding: 0 var(--dr-btn-padding-x);
	text-align: center;
	text-decoration: none;
	text-transform: none;
	transition:
		background-color var(--dr-btn-duration) var(--dr-ease-standard),
		border-color var(--dr-btn-duration) var(--dr-ease-standard),
		box-shadow var(--dr-btn-duration) var(--dr-ease-standard),
		color var(--dr-btn-duration) var(--dr-ease-standard),
		opacity var(--dr-btn-duration) var(--dr-ease-standard),
		transform var(--dr-btn-duration) var(--dr-ease-standard);
	white-space: nowrap;
}

.dr-btn:hover,
.wp-block-button > .wp-block-button__link:hover,
.dr-button > .wp-block-button__link:hover,
.dr-header__cta > .wp-block-button__link:hover,
.dr-cta-section__button--primary > .wp-block-button__link:hover,
.dr-auth #dr-login-form .button-primary:hover,
.dr-hero__widget-cta:not(.dr-hero__widget-cta--secondary):hover,
.dr-hero__widget .chbs-button.chbs-button-widget-submit:hover {
	background: var(--dr-color-accent-hover);
	border-color: var(--dr-color-accent-hover);
	box-shadow: var(--dr-btn-shadow-hover);
	color: var(--dr-color-text-inverse);
	transform: translateY(-2px);
}

.dr-btn:active,
.dr-btn[aria-pressed="true"],
.wp-block-button > .wp-block-button__link:active,
.dr-button > .wp-block-button__link:active,
.dr-header__cta > .wp-block-button__link:active,
.dr-cta-section__button--primary > .wp-block-button__link:active,
.dr-auth #dr-login-form .button-primary:active,
.dr-hero__widget-cta:not(.dr-hero__widget-cta--secondary):active,
.dr-hero__widget .chbs-button.chbs-button-widget-submit:active {
	background: var(--dr-color-accent-active);
	border-color: var(--dr-color-accent-active);
	box-shadow: 0 0.25rem 0.75rem rgba(0, 0, 0, 0.1);
	transform: translateY(0);
}

.dr-btn-secondary,
.dr-btn--secondary,
.dr-btn--outline,
.dr-btn-ghost,
.dr-btn--ghost,
.dr-btn--quiet,
.dr-button--secondary > .wp-block-button__link,
.dr-button--light > .wp-block-button__link,
.dr-header__login > .wp-block-button__link,
.dr-cta-section__button--secondary > .wp-block-button__link,
.dr-hero__widget-cta--secondary,
.dr-footer__contact-link > a {
	background: transparent;
	border-color: color-mix(in srgb, var(--dr-color-ink-900) 12%, transparent);
	box-shadow: none;
	color: var(--dr-color-text);
}

.dr-btn-secondary:hover,
.dr-btn--secondary:hover,
.dr-btn--outline:hover,
.dr-btn-ghost:hover,
.dr-btn--ghost:hover,
.dr-btn--quiet:hover,
.dr-button--secondary > .wp-block-button__link:hover,
.dr-button--light > .wp-block-button__link:hover,
.dr-header__login > .wp-block-button__link:hover,
.dr-cta-section__button--secondary > .wp-block-button__link:hover,
.dr-hero__widget-cta--secondary:hover,
.dr-footer__contact-link > a:hover {
	background: color-mix(in srgb, var(--dr-color-ink-900) 4%, transparent);
	border-color: color-mix(in srgb, var(--dr-color-ink-900) 22%, transparent);
	box-shadow: none;
	color: var(--dr-color-text);
	transform: translateY(-2px);
}

.dr-btn-secondary:active,
.dr-btn--secondary:active,
.dr-btn--outline:active,
.dr-btn-ghost:active,
.dr-btn--ghost:active,
.dr-btn--quiet:active,
.dr-button--secondary > .wp-block-button__link:active,
.dr-button--light > .wp-block-button__link:active,
.dr-header__login > .wp-block-button__link:active,
.dr-cta-section__button--secondary > .wp-block-button__link:active,
.dr-hero__widget-cta--secondary:active,
.dr-footer__contact-link > a:active {
	background: color-mix(in srgb, var(--dr-color-ink-900) 8%, transparent);
	box-shadow: none;
	transform: translateY(0);
}

.dr-btn:focus-visible,
.wp-block-button > .wp-block-button__link:focus-visible,
.dr-button > .wp-block-button__link:focus-visible,
.dr-header__login > .wp-block-button__link:focus-visible,
.dr-header__cta > .wp-block-button__link:focus-visible,
.dr-cta-section__button > .wp-block-button__link:focus-visible,
.dr-auth #dr-login-form .button-primary:focus-visible,
.dr-hero__widget-cta:focus-visible,
.dr-hero__widget .chbs-button.chbs-button-widget-submit:focus-visible,
.dr-footer__contact-link > a:focus-visible {
	outline: 3px solid var(--dr-color-focus);
	outline-offset: 3px;
}

.dr-btn:disabled,
.dr-btn[aria-disabled="true"],
.dr-btn.is-disabled,
.wp-block-button > .wp-block-button__link[aria-disabled="true"],
.dr-button > .wp-block-button__link[aria-disabled="true"],
.dr-header__login > .wp-block-button__link[aria-disabled="true"],
.dr-header__cta > .wp-block-button__link[aria-disabled="true"],
.dr-cta-section__button > .wp-block-button__link[aria-disabled="true"],
.dr-auth #dr-login-form .button-primary:disabled,
.dr-hero__widget-cta[aria-disabled="true"],
.dr-hero__widget .chbs-button.chbs-button-widget-submit.chbs-state-disabled,
.dr-footer__contact-link > a[aria-disabled="true"] {
	background: var(--dr-color-bg-muted);
	border-color: var(--dr-color-border);
	box-shadow: none;
	color: var(--dr-color-text-subtle);
	cursor: not-allowed;
	opacity: 0.64;
	pointer-events: none;
	transform: none;
}

.dr-btn-sm,
.dr-btn--sm {
	font-size: var(--dr-btn-font-size-sm);
	height: var(--dr-btn-height-sm);
	min-height: var(--dr-btn-height-sm);
	padding-inline: var(--dr-btn-padding-x-sm);
}

.dr-btn-lg,
.dr-btn--lg {
	font-size: var(--dr-btn-font-size);
	height: var(--dr-btn-height);
	min-height: var(--dr-btn-height);
	padding-inline: var(--dr-btn-padding-x);
}

.dr-btn--icon {
	aspect-ratio: 1;
	padding-inline: 0;
}

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

	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		scroll-behavior: auto !important;
		transition-duration: 0.01ms !important;
	}
}

@media (prefers-contrast: more) {
	:root {
		--dr-color-border: var(--dr-color-ink-500);
		--dr-color-border-strong: var(--dr-color-ink-700);
	}
}

@media (forced-colors: active) {
	.dr-btn,
	.wp-block-button > .wp-block-button__link,
	.dr-header__login > .wp-block-button__link,
	.dr-header__cta > .wp-block-button__link,
	.dr-hero__widget-cta,
	.dr-hero__widget .chbs-button.chbs-button-widget-submit,
	.dr-footer__contact-link > a,
	.dr-card,
	.dr-benefit-card,
	.dr-service-offering-card,
	.dr-vehicle-card,
	.dr-cta-section__button .wp-block-button__link,
	.dr-testimonial-card,
	.dr-faq-item,
	.dr-input,
	.dr-select,
	.dr-textarea {
		border: 1px solid ButtonText;
	}

	.dr-faq-item__summary:focus-visible {
		outline: 1px solid ButtonText;
		box-shadow: none;
	}

	.dr-service-offering-card__mark {
		border-color: ButtonText;
	}

	.dr-service-offering-card__benefits li::before {
		background: ButtonText;
	}

	.dr-vehicle-card__media,
	.dr-vehicle-card__badge,
	.dr-testimonial-card__avatar {
		border: 1px solid ButtonText;
	}
}
