:root {
	--dobre-ivory: #f7f2e8;
	--dobre-ivory-2: #fcfaf5;
	--dobre-sand: #e9dfcf;
	--dobre-sage: #9caf88;
	--dobre-sage-light: #dce5d2;
	--dobre-green: #214b3e;
	--dobre-green-deep: #14382f;
	--dobre-green-soft: #356455;
	--dobre-terracotta: #bd684b;
	--dobre-terracotta-dark: #974d38;
	--dobre-ink: #24312d;
	--dobre-muted: #68726e;
	--dobre-white: #fff;
	--dobre-danger: #a23f32;
	--dobre-success: #2f6f55;
	--dobre-border: rgba(33, 75, 62, 0.14);
	--dobre-shadow-sm: 0 8px 24px rgba(25, 55, 46, 0.08);
	--dobre-shadow: 0 22px 64px rgba(25, 55, 46, 0.13);
	--dobre-radius-sm: 14px;
	--dobre-radius: 24px;
	--dobre-radius-lg: 36px;
	--dobre-container: 1200px;
	--dobre-gutter: clamp(20px, 4vw, 52px);
	--dobre-section: clamp(72px, 8vw, 124px);
	--dobre-font: Inter, Manrope, "Segoe UI", Arial, sans-serif;
	--dobre-display: Georgia, "Times New Roman", serif;
}

*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	scroll-behavior: smooth;
	scroll-padding-top: 120px;
	overflow-x: hidden;
	overflow-x: clip;
}

body {
	margin: 0;
	overflow-x: hidden;
	overflow-x: clip;
	background: var(--dobre-ivory-2);
	color: var(--dobre-ink);
	font-family: var(--dobre-font);
	font-size: 17px;
	line-height: 1.65;
	-webkit-font-smoothing: antialiased;
}

body.dobre-menu-open,
body.dobre-modal-open {
	overflow: hidden;
}

body.dobre-menu-open .dobre-contact-launcher,
body.dobre-menu-open .dobre-mobile-sticky {
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
}

img {
	display: block;
	max-width: 100%;
	height: auto;
}

a {
	color: inherit;
	text-decoration-thickness: 1px;
	text-underline-offset: 0.18em;
}

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

button,
select {
	cursor: pointer;
}

button {
	color: inherit;
}

:where(a, button, input, select, textarea, summary):focus-visible {
	outline: 3px solid rgba(189, 104, 75, 0.72);
	outline-offset: 3px;
}

h1,
h2,
h3,
h4,
p {
	margin-top: 0;
}

h1,
h2,
h3,
h4 {
	color: var(--dobre-green-deep);
	font-weight: 700;
	line-height: 1.08;
	text-wrap: balance;
}

h1 {
	font-family: var(--dobre-display);
	font-size: clamp(44px, 6.2vw, 82px);
	letter-spacing: -0.045em;
}

h2 {
	font-family: var(--dobre-display);
	font-size: clamp(36px, 4.3vw, 58px);
	letter-spacing: -0.035em;
}

h3 {
	font-size: clamp(21px, 2vw, 27px);
	letter-spacing: -0.02em;
}

.screen-reader-text,
.dobre-honeypot {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.dobre-skip-link {
	position: fixed;
	z-index: 10000;
	top: 12px;
	left: 12px;
	transform: translateY(-180%);
	padding: 12px 18px;
	border-radius: 10px;
	background: var(--dobre-white);
	color: var(--dobre-green-deep);
	box-shadow: var(--dobre-shadow-sm);
	font-weight: 700;
}

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

.dobre-container {
	width: min(calc(100% - (var(--dobre-gutter) * 2)), var(--dobre-container));
	margin-inline: auto;
}

.dobre-content-narrow {
	max-width: 820px;
}

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

.dobre-eyebrow {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	margin-bottom: 18px;
	color: var(--dobre-terracotta-dark);
	font-size: 13px;
	font-weight: 800;
	letter-spacing: 0.13em;
	line-height: 1.2;
	text-transform: uppercase;
}

.dobre-eyebrow::before {
	width: 24px;
	height: 2px;
	background: currentColor;
	content: "";
}

.dobre-eyebrow--light {
	color: #f1c9b8;
}

.dobre-section-heading {
	margin-bottom: clamp(36px, 5vw, 64px);
}

.dobre-section-heading h2 {
	max-width: 800px;
	margin-bottom: 0;
}

.dobre-section-heading p {
	max-width: 640px;
	margin: 18px 0 0;
	color: var(--dobre-muted);
}

.dobre-section-heading--split {
	display: grid;
	grid-template-columns: minmax(0, 1.25fr) minmax(280px, 0.75fr);
	gap: 48px;
	align-items: end;
}

.dobre-section-heading--split p {
	margin: 0 0 4px;
}

.dobre-section-heading--center {
	max-width: 860px;
	margin-inline: auto;
	text-align: center;
}

.dobre-section-heading--center h2,
.dobre-section-heading--center p {
	margin-inline: auto;
}

.dobre-button {
	display: inline-flex;
	min-height: 50px;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 13px 22px;
	border: 1px solid transparent;
	border-radius: 999px;
	background: transparent;
	font-size: 15px;
	font-weight: 800;
	line-height: 1.2;
	text-align: center;
	text-decoration: none;
	transition: transform 180ms ease, background-color 180ms ease, color 180ms ease, box-shadow 180ms ease;
}

.dobre-button:hover {
	transform: translateY(-2px);
}

.dobre-button--small {
	min-height: 42px;
	padding: 10px 17px;
	font-size: 13px;
}

.dobre-button--large {
	min-height: 58px;
	padding-inline: 28px;
}

.dobre-button--full {
	width: 100%;
}

.dobre-button--accent {
	background: var(--dobre-terracotta-dark);
	color: var(--dobre-white);
	box-shadow: 0 10px 28px rgba(151, 77, 56, 0.25);
}

.dobre-button--accent:hover {
	background: var(--dobre-terracotta-dark);
}

.dobre-button--ghost {
	border-color: var(--dobre-border);
	background: rgba(255, 255, 255, 0.58);
	color: var(--dobre-green-deep);
}

.dobre-button--ghost:hover,
.dobre-button--outline:hover {
	border-color: var(--dobre-green);
	background: var(--dobre-white);
}

.dobre-button--outline {
	border-color: rgba(33, 75, 62, 0.25);
	color: var(--dobre-green-deep);
}

.dobre-button--cream {
	background: var(--dobre-ivory);
	color: var(--dobre-green-deep);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-text-link,
.dobre-card-link {
	display: inline-flex;
	align-items: center;
	gap: 10px;
	padding: 0;
	border: 0;
	background: none;
	color: var(--dobre-green);
	font-weight: 800;
	text-decoration: none;
}

.dobre-text-link span,
.dobre-card-link span {
	transition: transform 180ms ease;
}

.dobre-text-link:hover span,
.dobre-card-link:hover span {
	transform: translateX(4px);
}

.dobre-text-link--light {
	color: var(--dobre-white);
}

.dobre-status-dot {
	display: inline-block;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #92c98a;
	box-shadow: 0 0 0 5px rgba(146, 201, 138, 0.14);
}

/* Header */
.dobre-site-header {
	position: sticky;
	z-index: 800;
	top: 0;
	background: rgba(252, 250, 245, 0.94);
	box-shadow: 0 1px 0 var(--dobre-border);
	backdrop-filter: blur(16px);
}

body.admin-bar .dobre-site-header {
	top: 32px;
}

.dobre-contact-strip {
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.86);
	font-size: 12px;
	font-weight: 650;
	letter-spacing: 0.02em;
}

.dobre-contact-strip__inner {
	display: flex;
	min-height: 36px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
}

.dobre-contact-strip p,
.dobre-contact-strip__actions {
	display: flex;
	align-items: center;
	gap: 12px;
	margin: 0;
}

.dobre-contact-strip a {
	color: var(--dobre-white);
	font-weight: 800;
	text-decoration: none;
}

.dobre-header-main {
	display: flex;
	min-height: 84px;
	align-items: center;
	gap: clamp(22px, 3vw, 46px);
}

.dobre-brand {
	display: inline-flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 12px;
	color: var(--dobre-green-deep);
	text-decoration: none;
}

.dobre-brand__mark {
	display: grid;
	width: 46px;
	height: 46px;
	place-items: center;
	border-radius: 15px 15px 15px 5px;
	background: var(--dobre-green);
	color: var(--dobre-white);
	box-shadow: inset -8px -8px 0 rgba(156, 175, 136, 0.16);
	font-family: var(--dobre-display);
	font-size: 24px;
	font-weight: 800;
}

.dobre-brand__mark span {
	transform: translateY(-1px);
}

.dobre-brand__copy {
	display: flex;
	flex-direction: column;
	line-height: 1.05;
}

.dobre-brand__copy strong {
	font-family: var(--dobre-display);
	font-size: 23px;
	letter-spacing: -0.03em;
}

.dobre-brand__copy small {
	margin-top: 5px;
	color: var(--dobre-muted);
	font-size: 10px;
	font-weight: 650;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.dobre-brand__image {
	width: auto;
	max-width: 230px;
	height: 58px;
	object-fit: contain;
}

.dobre-primary-nav {
	flex: 1 1 auto;
}

.dobre-nav-list,
.dobre-primary-nav > .menu > ul {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: clamp(15px, 1.7vw, 28px);
	margin: 0;
	padding: 0;
	list-style: none;
}

.dobre-nav-list li,
.dobre-primary-nav .menu li {
	position: relative;
}

.dobre-nav-list > li > a,
.dobre-services-toggle,
.dobre-primary-nav > .menu > ul > li > a {
	display: block;
	padding-block: 28px;
	color: var(--dobre-ink);
	font-size: 14px;
	font-weight: 700;
	text-decoration: none;
}

.dobre-services-toggle {
	display: inline-flex;
	align-items: center;
	gap: 9px;
	border: 0;
	background: transparent;
	cursor: pointer;
	font-family: inherit;
}

.dobre-services-toggle__icon {
	width: 8px;
	height: 8px;
	border-right: 2px solid currentColor;
	border-bottom: 2px solid currentColor;
	transform: translateY(-2px) rotate(45deg);
	transition: transform 160ms ease;
}

.dobre-services-toggle[aria-expanded="true"] .dobre-services-toggle__icon {
	transform: translateY(2px) rotate(225deg);
}

.dobre-nav-list > li > a:hover,
.dobre-services-toggle:hover,
.dobre-services-toggle[aria-expanded="true"],
.dobre-nav-list > .current-menu-item > a,
.dobre-primary-nav .current_page_item > a {
	color: var(--dobre-terracotta-dark);
}

.dobre-nav-list .sub-menu {
	position: absolute;
	top: calc(100% - 8px);
	left: -20px;
	width: min(380px, 90vw);
	max-height: min(70vh, 640px);
	overflow-y: auto;
	margin: 0;
	padding: 12px;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius-sm);
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow);
	list-style: none;
	opacity: 0;
	pointer-events: none;
	visibility: hidden;
	transform: translateY(8px);
	transition: opacity 260ms ease, transform 260ms ease, visibility 0s linear 260ms;
}

.dobre-nav-list .dobre-nav-item--services.is-open > .sub-menu {
	opacity: 1;
	pointer-events: auto;
	visibility: visible;
	transform: translateY(0);
	transition: opacity 260ms ease, transform 260ms ease;
}

.dobre-nav-list .dobre-services-submenu[hidden] {
	display: none;
}

.dobre-nav-list .sub-menu a {
	display: block;
	padding: 10px 12px;
	border-radius: 9px;
	font-size: 13px;
	font-weight: 700;
	text-decoration: none;
}

.dobre-nav-list .sub-menu a:hover {
	background: var(--dobre-ivory);
}

.dobre-header-cta {
	display: flex;
	flex: 0 0 auto;
	align-items: center;
	gap: 16px;
}

.dobre-header-phone {
	display: flex;
	flex-direction: column;
	color: var(--dobre-green-deep);
	line-height: 1.2;
	text-align: right;
	text-decoration: none;
}

.dobre-header-phone small {
	color: var(--dobre-muted);
	font-size: 10px;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.dobre-header-phone strong {
	margin-top: 3px;
	font-size: 15px;
}

.dobre-menu-toggle,
.dobre-primary-nav__mobile-contact {
	display: none;
}

/* Hero */
.dobre-hero {
	position: relative;
	overflow: clip;
	padding-block: clamp(54px, 7vw, 106px) clamp(70px, 8vw, 116px);
	background:
		radial-gradient(circle at 8% 10%, rgba(156, 175, 136, 0.23), transparent 25%),
		linear-gradient(120deg, var(--dobre-ivory-2), #f3eee3 63%, #e8dfd1);
}

.dobre-hero::before,
.dobre-hero::after {
	position: absolute;
	border-radius: 50%;
	content: "";
	pointer-events: none;
}

.dobre-hero::before {
	width: 420px;
	height: 420px;
	right: -210px;
	top: -160px;
	border: 1px solid rgba(33, 75, 62, 0.1);
}

.dobre-hero::after {
	width: 160px;
	height: 160px;
	left: -70px;
	bottom: 25px;
	background: rgba(189, 104, 75, 0.08);
}

.dobre-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(470px, 1.08fr);
	gap: clamp(42px, 6vw, 86px);
	align-items: center;
}

.dobre-hero__content {
	position: relative;
	z-index: 2;
}

.dobre-hero__content h1 {
	max-width: 720px;
	margin-bottom: 28px;
}

.dobre-hero__lead {
	max-width: 650px;
	margin-bottom: 34px;
	color: #52615b;
	font-size: clamp(18px, 2vw, 22px);
	line-height: 1.6;
}

.dobre-hero__actions {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
}

.dobre-hero__points {
	display: flex;
	flex-wrap: wrap;
	gap: 12px 22px;
	margin: 30px 0 0;
	padding: 0;
	list-style: none;
}

.dobre-hero__points li {
	display: flex;
	align-items: center;
	gap: 8px;
	color: var(--dobre-green-soft);
	font-size: 13px;
	font-weight: 750;
}

.dobre-hero__points span {
	display: grid;
	width: 21px;
	height: 21px;
	place-items: center;
	border-radius: 50%;
	background: var(--dobre-sage-light);
	font-size: 12px;
}

.dobre-hero__visual {
	position: relative;
	min-width: 0;
}

.dobre-hero__image-wrap {
	position: relative;
	overflow: hidden;
	aspect-ratio: 1.08;
	border-radius: 46% 46% 28px 28px;
	background: var(--dobre-sage-light);
	box-shadow: var(--dobre-shadow);
}

.dobre-hero__image-wrap::after {
	position: absolute;
	inset: 0;
	background: linear-gradient(160deg, transparent 55%, rgba(20, 56, 47, 0.2));
	content: "";
}

.dobre-hero__image-wrap img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 63% center;
}

.dobre-hero__note {
	position: absolute;
	right: -20px;
	bottom: 32px;
	z-index: 2;
	display: flex;
	max-width: 310px;
	align-items: center;
	gap: 14px;
	padding: 16px 18px;
	border: 1px solid rgba(255, 255, 255, 0.8);
	border-radius: 18px;
	background: rgba(255, 255, 255, 0.92);
	box-shadow: var(--dobre-shadow);
	backdrop-filter: blur(12px);
}

.dobre-hero__note-mark {
	display: grid;
	width: 42px;
	height: 42px;
	flex: 0 0 auto;
	place-items: center;
	border-radius: 50%;
	background: var(--dobre-terracotta);
	color: var(--dobre-white);
}

.dobre-hero__note p {
	display: flex;
	flex-direction: column;
	margin: 0;
	line-height: 1.35;
}

.dobre-hero__note strong {
	font-size: 14px;
}

.dobre-hero__note small {
	margin-top: 4px;
	color: var(--dobre-muted);
	font-size: 11px;
}

/* Benefit strip */
.dobre-benefit-strip {
	position: relative;
	z-index: 3;
	margin-top: -32px;
}

.dobre-benefit-strip__grid {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	overflow: hidden;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-benefit-strip article {
	display: flex;
	align-items: flex-start;
	gap: 16px;
	padding: 28px clamp(22px, 3vw, 38px);
}

.dobre-benefit-strip article + article {
	border-left: 1px solid var(--dobre-border);
}

.dobre-benefit-strip article > span {
	color: var(--dobre-terracotta-dark);
	font-family: var(--dobre-display);
	font-size: 18px;
	font-weight: 800;
}

.dobre-benefit-strip h2 {
	margin-bottom: 7px;
	font-family: var(--dobre-font);
	font-size: 17px;
	letter-spacing: -0.01em;
}

.dobre-benefit-strip p {
	margin: 0;
	color: var(--dobre-muted);
	font-size: 13px;
	line-height: 1.5;
}

/* Services */
.dobre-services-section {
	background: var(--dobre-ivory-2);
}

.dobre-service-grid,
.dobre-format-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.dobre-service-card {
	overflow: hidden;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: var(--dobre-white);
	box-shadow: 0 8px 0 rgba(33, 75, 62, 0);
	transition: transform 180ms ease, box-shadow 180ms ease;
}

.dobre-service-card:hover {
	transform: translateY(-5px);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-service-card__media {
	display: block;
	overflow: hidden;
	aspect-ratio: 1.38;
	background: var(--dobre-sage-light);
}

.dobre-service-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: transform 500ms ease;
}

.dobre-service-card:hover .dobre-service-card__media img {
	transform: scale(1.035);
}

.dobre-service-card__placeholder {
	display: grid;
	position: relative;
	width: 100%;
	height: 100%;
	place-items: center;
	background: linear-gradient(145deg, #dfe8d6, #b9c8aa);
}

.dobre-service-card__placeholder i {
	position: absolute;
	width: 34%;
	height: 52%;
	border: 1px solid rgba(33, 75, 62, 0.18);
	border-radius: 50% 50% 18px 18px;
}

.dobre-service-card__placeholder i:nth-child(2) {
	transform: rotate(60deg);
}

.dobre-service-card__placeholder i:nth-child(3) {
	transform: rotate(-60deg);
}

.dobre-service-card__body {
	padding: 26px;
}

.dobre-service-card__meta {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
	color: var(--dobre-terracotta-dark);
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.dobre-service-card__meta strong {
	color: var(--dobre-green);
	font-size: 12px;
	text-transform: none;
}

.dobre-service-card h2 {
	margin-bottom: 13px;
	font-family: var(--dobre-font);
	font-size: 23px;
}

.dobre-service-card h2 a {
	text-decoration: none;
}

.dobre-service-card p {
	display: -webkit-box;
	overflow: hidden;
	margin-bottom: 21px;
	color: var(--dobre-muted);
	font-size: 14px;
	-webkit-box-orient: vertical;
	-webkit-line-clamp: 3;
}

.dobre-format-card {
	position: relative;
	min-height: 330px;
	overflow: hidden;
	padding: 34px;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
}

.dobre-format-card::after {
	position: absolute;
	right: -45px;
	bottom: -70px;
	width: 180px;
	height: 180px;
	border: 1px solid currentColor;
	border-radius: 50%;
	opacity: 0.14;
	content: "";
}

.dobre-format-card--sage {
	background: var(--dobre-sage-light);
}

.dobre-format-card--ivory {
	background: var(--dobre-white);
}

.dobre-format-card--terracotta {
	background: #f1d5c8;
}

.dobre-format-card__number {
	display: inline-block;
	margin-bottom: 52px;
	color: var(--dobre-terracotta-dark);
	font-family: var(--dobre-display);
	font-size: 20px;
	font-weight: 800;
}

.dobre-format-card h3 {
	max-width: 290px;
	margin-bottom: 15px;
	font-family: var(--dobre-display);
	font-size: 31px;
}

.dobre-format-card p {
	max-width: 300px;
	margin-bottom: 26px;
	color: #58645f;
	font-size: 14px;
}

.dobre-section-action {
	margin-top: 34px;
	text-align: center;
}

/* Process */
.dobre-process-section {
	position: relative;
	overflow: hidden;
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.78);
}

.dobre-process-section::before {
	position: absolute;
	width: 480px;
	height: 480px;
	right: -260px;
	top: -260px;
	border: 1px solid rgba(255, 255, 255, 0.09);
	border-radius: 50%;
	content: "";
}

.dobre-process-layout {
	display: grid;
	grid-template-columns: 0.72fr 1.28fr;
	gap: clamp(54px, 8vw, 116px);
	align-items: start;
}

.dobre-process-intro {
	position: sticky;
	top: 160px;
}

.dobre-process-intro h2,
.dobre-process-list h3 {
	color: var(--dobre-white);
}

.dobre-process-intro p {
	margin-bottom: 30px;
}

.dobre-process-list {
	margin: 0;
	padding: 0;
	list-style: none;
}

.dobre-process-list li {
	display: grid;
	grid-template-columns: 64px 1fr;
	gap: 22px;
	padding: 30px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.13);
}

.dobre-process-list li:last-child {
	border-bottom: 1px solid rgba(255, 255, 255, 0.13);
}

.dobre-process-list > li > span {
	display: grid;
	width: 52px;
	height: 52px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.18);
	border-radius: 50%;
	color: #f1c9b8;
	font-family: var(--dobre-display);
	font-weight: 800;
}

.dobre-process-list h3 {
	margin-bottom: 8px;
	font-family: var(--dobre-font);
	font-size: 21px;
}

.dobre-process-list p {
	max-width: 620px;
	margin: 0;
	font-size: 15px;
}

/* Audience */
.dobre-audience-section {
	background: var(--dobre-ivory);
}

.dobre-audience-grid {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 16px;
}

.dobre-audience-grid article {
	padding: 30px 25px;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: rgba(255, 255, 255, 0.64);
}

.dobre-audience-grid article > span {
	display: grid;
	width: 48px;
	height: 48px;
	margin-bottom: 32px;
	place-items: center;
	border-radius: 15px;
	background: var(--dobre-sage-light);
	color: var(--dobre-green);
	font-size: 21px;
	font-weight: 800;
}

.dobre-audience-grid h3 {
	margin-bottom: 11px;
	font-family: var(--dobre-font);
	font-size: 20px;
}

.dobre-audience-grid p {
	margin: 0;
	color: var(--dobre-muted);
	font-size: 14px;
}

/* Care format quiz */
.dobre-quiz-section {
	background: var(--dobre-ivory-2);
}

.dobre-quiz {
	padding: clamp(24px, 4vw, 44px);
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-quiz__questions {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 18px;
}

.dobre-quiz__group {
	min-width: 0;
	margin: 0;
	padding: 22px;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: var(--dobre-ivory-2);
}

.dobre-quiz__group legend {
	width: 100%;
	margin-bottom: 14px;
	color: var(--dobre-green-deep);
	font-size: 15px;
	font-weight: 800;
}

.dobre-quiz__group .dobre-choice-grid {
	grid-template-columns: 1fr;
}

.dobre-quiz__group .dobre-choice-card > span {
	min-height: 76px;
	background: var(--dobre-white);
}

.dobre-quiz__actions {
	display: flex;
	align-items: center;
	gap: 18px;
	margin-top: 24px;
}

.dobre-quiz__actions .dobre-form-status {
	margin: 0;
}

.dobre-quiz__result {
	display: grid;
	grid-template-columns: minmax(0, 0.85fr) minmax(320px, 1.15fr);
	gap: clamp(24px, 5vw, 64px);
	align-items: start;
	margin-top: 30px;
	padding: clamp(24px, 4vw, 40px);
	border-radius: var(--dobre-radius);
	background: var(--dobre-sage-light);
}

.dobre-quiz__result[hidden] {
	display: none;
}

.dobre-quiz__result h3 {
	margin: 9px 0 14px;
	font-family: var(--dobre-display);
	font-size: clamp(28px, 3vw, 42px);
}

.dobre-quiz__result p {
	margin: 0;
}

.dobre-quiz__lead {
	padding: 24px;
	border-radius: 20px;
	background: var(--dobre-white);
}

/* Price table */
.dobre-price-table-section {
	background: var(--dobre-ivory);
}

.dobre-price-table-wrap {
	overflow-x: auto;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-price-table {
	width: 100%;
	min-width: 760px;
	border-collapse: collapse;
}

.dobre-price-table th,
.dobre-price-table td {
	padding: 18px 20px;
	border-bottom: 1px solid var(--dobre-border);
	text-align: left;
	vertical-align: top;
}

.dobre-price-table thead th {
	background: var(--dobre-green-deep);
	color: var(--dobre-white);
	font-size: 13px;
	letter-spacing: 0.025em;
}

.dobre-price-table tbody th {
	color: var(--dobre-green-deep);
	font-size: 15px;
}

.dobre-price-table tbody td {
	color: var(--dobre-muted);
	font-size: 14px;
}

.dobre-price-table tbody td:nth-child(3) {
	color: var(--dobre-green-deep);
	font-weight: 750;
}

.dobre-price-table tbody tr:last-child th,
.dobre-price-table tbody tr:last-child td {
	border-bottom: 0;
}

.dobre-price-table-note {
	max-width: 860px;
	margin: 18px 0 0;
	color: var(--dobre-muted);
	font-size: 13px;
}

/* Calculator */
.dobre-calculator-section {
	background: var(--dobre-ivory-2);
}

.dobre-calculator-shell {
	position: relative;
}

.dobre-calculator {
	display: grid;
	grid-template-columns: minmax(0, 1.18fr) minmax(330px, 0.82fr);
	gap: 26px;
	align-items: start;
}

.dobre-calculator-controls,
.dobre-calculator-result,
.dobre-calculator-empty {
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow-sm);
}

.dobre-calculator-controls {
	padding: clamp(26px, 4vw, 44px);
}

.dobre-calculator-controls fieldset {
	min-width: 0;
	margin: 0 0 34px;
	padding: 0;
	border: 0;
}

.dobre-calculator-controls legend,
.dobre-calculator-quantity > span {
	display: block;
	margin-bottom: 15px;
	color: var(--dobre-green-deep);
	font-size: 15px;
	font-weight: 800;
}

.dobre-choice-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 10px;
}

.dobre-choice-card,
.dobre-check-card {
	position: relative;
	cursor: pointer;
}

.dobre-choice-card input,
.dobre-check-card input {
	position: absolute;
	opacity: 0;
	pointer-events: none;
}

.dobre-choice-card > span {
	display: flex;
	min-height: 104px;
	flex-direction: column;
	justify-content: center;
	padding: 18px;
	border: 1px solid var(--dobre-border);
	border-radius: 17px;
	background: var(--dobre-ivory-2);
	transition: border-color 160ms ease, background-color 160ms ease, box-shadow 160ms ease;
}

.dobre-choice-card strong {
	font-size: 14px;
	line-height: 1.35;
}

.dobre-choice-card small {
	margin-top: 7px;
	color: var(--dobre-muted);
	font-size: 11px;
}

.dobre-choice-card input:checked + span {
	border-color: var(--dobre-green);
	background: var(--dobre-sage-light);
	box-shadow: inset 0 0 0 1px var(--dobre-green);
}

.dobre-choice-card input:focus-visible + span,
.dobre-check-card input:focus-visible + span {
	outline: 3px solid rgba(189, 104, 75, 0.72);
	outline-offset: 3px;
}

.dobre-calculator-quantity {
	display: block;
	max-width: 280px;
	margin-bottom: 34px;
}

.dobre-calculator-quantity input {
	width: 100%;
}

.dobre-check-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 10px;
}

.dobre-check-card > span {
	display: flex;
	min-height: 58px;
	align-items: center;
	gap: 11px;
	padding: 12px 15px;
	border: 1px solid var(--dobre-border);
	border-radius: 14px;
	color: var(--dobre-muted);
	font-size: 13px;
	font-weight: 700;
	transition: border-color 160ms ease, background-color 160ms ease, color 160ms ease;
}

.dobre-check-card > span::before {
	display: grid;
	width: 22px;
	height: 22px;
	flex: 0 0 auto;
	place-items: center;
	border: 1px solid rgba(33, 75, 62, 0.28);
	border-radius: 7px;
	content: "";
}

.dobre-check-card input:checked + span {
	border-color: var(--dobre-green);
	background: var(--dobre-sage-light);
	color: var(--dobre-green-deep);
}

.dobre-check-card input:checked + span::before {
	background: var(--dobre-green);
	color: var(--dobre-white);
	content: "✓";
}

.dobre-calculator-result {
	position: sticky;
	top: 145px;
	overflow: hidden;
	padding: clamp(26px, 4vw, 42px);
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.78);
}

.dobre-calculator-result h3 {
	margin-bottom: 12px;
	color: var(--dobre-white);
	font-family: var(--dobre-display);
	font-size: clamp(34px, 4vw, 50px);
}

.dobre-calculator-note {
	font-size: 13px;
}

.dobre-calculator-breakdown {
	margin: 24px 0;
	padding: 18px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.14);
	border-bottom: 1px solid rgba(255, 255, 255, 0.14);
	list-style: none;
}

.dobre-calculator-breakdown:empty {
	display: none;
}

.dobre-calculator-breakdown li {
	display: flex;
	justify-content: space-between;
	gap: 18px;
	padding-block: 5px;
	font-size: 12px;
}

.dobre-calculator-breakdown strong {
	color: var(--dobre-white);
	white-space: nowrap;
}

.dobre-calculator-result .dobre-lead-form {
	padding-top: 8px;
}

.dobre-calculator-result .dobre-field > span,
.dobre-calculator-result .dobre-consent,
.dobre-calculator-result .dobre-form-description {
	color: rgba(255, 255, 255, 0.78);
}

.dobre-calculator-empty {
	display: grid;
	grid-template-columns: minmax(0, 0.75fr) minmax(340px, 1.25fr);
	gap: clamp(34px, 6vw, 86px);
	align-items: center;
	padding: clamp(30px, 5vw, 58px);
}

.dobre-calculator-empty h3 {
	margin: 16px 0 14px;
	font-family: var(--dobre-display);
	font-size: 36px;
}

.dobre-calculator-empty p {
	color: var(--dobre-muted);
}

/* Forms */
.dobre-lead-form {
	width: 100%;
}

.dobre-form-title {
	margin-bottom: 8px;
	font-family: var(--dobre-display);
	font-size: 31px;
}

.dobre-form-description {
	margin-bottom: 24px;
	color: var(--dobre-muted);
	font-size: 13px;
}

.dobre-form-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 15px;
}

.dobre-field {
	display: flex;
	min-width: 0;
	flex-direction: column;
	gap: 8px;
}

.dobre-field--wide {
	grid-column: 1 / -1;
}

.dobre-field > span {
	color: var(--dobre-green-deep);
	font-size: 12px;
	font-weight: 800;
}

.dobre-field input,
.dobre-field select,
.dobre-field textarea {
	width: 100%;
	min-height: 50px;
	padding: 12px 14px;
	border: 1px solid rgba(33, 75, 62, 0.2);
	border-radius: 13px;
	background: var(--dobre-white);
	color: var(--dobre-ink);
	font-size: 15px;
	transition: border-color 160ms ease, box-shadow 160ms ease;
}

.dobre-field textarea {
	min-height: 108px;
	resize: vertical;
}

.dobre-field input:focus,
.dobre-field select:focus,
.dobre-field textarea:focus {
	border-color: var(--dobre-green);
	box-shadow: 0 0 0 4px rgba(33, 75, 62, 0.09);
	outline: 0;
}

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

.dobre-consent {
	display: grid;
	grid-template-columns: 20px 1fr;
	gap: 10px;
	align-items: start;
	margin-top: 17px;
	color: var(--dobre-muted);
	cursor: pointer;
	font-size: 11px;
	line-height: 1.45;
}

.dobre-consent input {
	width: 18px;
	height: 18px;
	margin: 1px 0 0;
	accent-color: var(--dobre-green);
}

.dobre-consent a {
	color: inherit;
}

.dobre-form-actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 14px;
	margin-top: 19px;
}

.dobre-form-status {
	flex: 1 1 180px;
	font-size: 12px;
	font-weight: 700;
}

.dobre-form-status.is-error {
	color: var(--dobre-danger);
}

.dobre-form-status.is-success {
	color: var(--dobre-success);
}

.dobre-button:disabled {
	cursor: not-allowed;
	opacity: 0.56;
	transform: none;
}

.dobre-lead-form.is-loading {
	opacity: 0.76;
	pointer-events: none;
}

.dobre-lead-form.is-loading button[type="submit"]::after {
	width: 15px;
	height: 15px;
	border: 2px solid currentColor;
	border-right-color: transparent;
	border-radius: 50%;
	animation: dobre-spin 650ms linear infinite;
	content: "";
}

@keyframes dobre-spin {
	to { transform: rotate(360deg); }
}

.dobre-lead-form--compact .dobre-form-grid {
	grid-template-columns: 1fr;
}

.dobre-lead-form--compact .dobre-button {
	width: 100%;
}

/* Trust */
.dobre-trust-section {
	background: var(--dobre-sage-light);
}

.dobre-trust-layout {
	display: grid;
	grid-template-columns: minmax(0, 1.1fr) minmax(340px, 0.9fr);
	gap: clamp(42px, 7vw, 92px);
	align-items: center;
}

.dobre-trust-copy > p {
	max-width: 700px;
	color: #516059;
}

.dobre-check-list {
	display: grid;
	gap: 12px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.dobre-check-list li {
	display: grid;
	grid-template-columns: 26px 1fr;
	gap: 10px;
	align-items: start;
	font-size: 15px;
	font-weight: 700;
}

.dobre-check-list li::before {
	display: grid;
	width: 24px;
	height: 24px;
	place-items: center;
	border-radius: 50%;
	background: var(--dobre-green);
	color: var(--dobre-white);
	font-size: 12px;
	content: "✓";
}

.dobre-trust-card {
	padding: clamp(28px, 4vw, 46px);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.82);
	box-shadow: var(--dobre-shadow);
}

.dobre-trust-card__kicker {
	color: #f1c9b8;
	font-size: 11px;
	font-weight: 800;
	letter-spacing: 0.1em;
	text-transform: uppercase;
}

.dobre-trust-card ol {
	display: grid;
	gap: 0;
	margin: 24px 0 30px;
	padding: 0;
	list-style: none;
}

.dobre-trust-card li {
	display: grid;
	grid-template-columns: 36px 1fr;
	gap: 12px;
	align-items: center;
	padding: 15px 0;
	border-top: 1px solid rgba(255, 255, 255, 0.12);
	font-size: 14px;
}

.dobre-trust-card li:last-child {
	border-bottom: 1px solid rgba(255, 255, 255, 0.12);
}

.dobre-trust-card li span {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.1);
	color: #f1c9b8;
	font-family: var(--dobre-display);
}

/* Caregivers */
.dobre-caregivers-section {
	background: var(--dobre-ivory-2);
}

.dobre-caregiver-grid {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 22px;
}

.dobre-caregiver-card {
	overflow: hidden;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius);
	background: var(--dobre-white);
}

.dobre-caregiver-card__media {
	display: grid;
	aspect-ratio: 0.95;
	place-items: center;
	background: linear-gradient(145deg, var(--dobre-sage-light), #c5d1ba);
}

.dobre-caregiver-card__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dobre-caregiver-card__media > span {
	font-family: var(--dobre-display);
	font-size: 80px;
	font-weight: 800;
	opacity: 0.2;
}

.dobre-caregiver-card__body {
	padding: 25px;
}

.dobre-caregiver-card__body h3 {
	margin-bottom: 10px;
	font-family: var(--dobre-display);
}

.dobre-caregiver-card__body p {
	margin: 0;
	color: var(--dobre-muted);
	font-size: 14px;
}

/* FAQ */
.dobre-faq-section {
	background: var(--dobre-ivory);
}

.dobre-faq-layout {
	display: grid;
	grid-template-columns: minmax(260px, 0.55fr) minmax(0, 1.45fr);
	gap: clamp(46px, 8vw, 110px);
	align-items: start;
}

.dobre-faq-intro {
	position: sticky;
	top: 150px;
}

.dobre-accordion details {
	border-top: 1px solid rgba(33, 75, 62, 0.18);
}

.dobre-accordion details:last-child {
	border-bottom: 1px solid rgba(33, 75, 62, 0.18);
}

.dobre-accordion summary {
	display: flex;
	min-height: 78px;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	cursor: pointer;
	color: var(--dobre-green-deep);
	font-size: 18px;
	font-weight: 800;
	list-style: none;
}

.dobre-accordion summary::-webkit-details-marker {
	display: none;
}

.dobre-accordion summary span {
	display: grid;
	width: 34px;
	height: 34px;
	flex: 0 0 auto;
	place-items: center;
	border: 1px solid var(--dobre-border);
	border-radius: 50%;
	transition: transform 180ms ease, background-color 180ms ease;
}

.dobre-accordion details[open] summary span {
	background: var(--dobre-green);
	color: var(--dobre-white);
	transform: rotate(45deg);
}

.dobre-accordion__content {
	padding: 0 58px 24px 0;
	color: var(--dobre-muted);
}

.dobre-accordion__content > :last-child {
	margin-bottom: 0;
}

/* Final form */
.dobre-final-form-section {
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.78);
}

.dobre-final-form-layout {
	display: grid;
	grid-template-columns: minmax(0, 0.8fr) minmax(420px, 1.2fr);
	gap: clamp(52px, 8vw, 110px);
	align-items: center;
}

.dobre-final-form-copy h2 {
	color: var(--dobre-white);
}

.dobre-final-form-copy > p {
	max-width: 560px;
}

.dobre-final-form-copy ul {
	display: grid;
	gap: 10px;
	margin: 28px 0 0;
	padding: 0;
	list-style: none;
}

.dobre-final-form-copy li {
	display: flex;
	gap: 9px;
	font-size: 14px;
}

.dobre-final-form-copy li::before {
	color: #f1c9b8;
	content: "✓";
}

.dobre-final-form-card {
	padding: clamp(28px, 4vw, 46px);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-ivory-2);
	color: var(--dobre-ink);
}

/* Generic pages */
.dobre-page-hero,
.dobre-archive-hero {
	padding-block: clamp(52px, 7vw, 92px);
	background: linear-gradient(135deg, var(--dobre-ivory), var(--dobre-sage-light));
}

.dobre-breadcrumbs {
	display: flex;
	flex-wrap: wrap;
	gap: 8px;
	margin-bottom: 34px;
	color: var(--dobre-muted);
	font-size: 12px;
}

.dobre-breadcrumbs a {
	text-decoration: none;
}

.dobre-page-hero__copy,
.dobre-archive-hero__copy {
	max-width: 900px;
}

.dobre-page-hero h1,
.dobre-archive-hero h1 {
	margin-bottom: 22px;
}

.dobre-page-hero__copy > p,
.dobre-archive-hero__copy > p {
	max-width: 760px;
	margin-bottom: 0;
	color: #516059;
	font-size: 19px;
}

.dobre-page-featured {
	overflow: hidden;
	max-height: 620px;
	margin-top: 48px;
	border-radius: var(--dobre-radius-lg);
}

.dobre-page-featured img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.dobre-page-content,
.dobre-service-content {
	padding-block: clamp(58px, 7vw, 96px);
}

.dobre-page-content :where(h2, h3, h4),
.dobre-service-content :where(h2, h3, h4) {
	margin-top: 1.6em;
	margin-bottom: 0.6em;
}

.dobre-page-content h2,
.dobre-service-content h2 {
	font-size: clamp(32px, 4vw, 46px);
}

.dobre-page-content h3,
.dobre-service-content h3 {
	font-size: 25px;
}

.dobre-page-content :where(p, li),
.dobre-service-content :where(p, li),
.dobre-rich-text {
	color: #4f5b56;
}

.dobre-page-content a,
.dobre-service-content a {
	color: var(--dobre-terracotta-dark);
}

.dobre-page-content blockquote,
.dobre-service-content blockquote {
	margin: 36px 0;
	padding: 25px 30px;
	border-left: 4px solid var(--dobre-terracotta);
	border-radius: 0 var(--dobre-radius-sm) var(--dobre-radius-sm) 0;
	background: var(--dobre-ivory);
}

.dobre-page-content table,
.dobre-service-content table {
	display: block;
	width: 100%;
	overflow-x: auto;
	border-collapse: collapse;
}

.dobre-page-content th,
.dobre-page-content td,
.dobre-service-content th,
.dobre-service-content td {
	padding: 14px 16px;
	border: 1px solid var(--dobre-border);
	text-align: left;
}

.dobre-page-inline-cta {
	padding-block: 54px;
	background: var(--dobre-terracotta-dark);
	color: rgba(255, 255, 255, 0.8);
}

.dobre-page-inline-cta__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 36px;
}

.dobre-page-inline-cta h2 {
	max-width: 760px;
	margin: 0;
	color: var(--dobre-white);
	font-size: clamp(30px, 4vw, 47px);
}

.dobre-archive-section {
	background: var(--dobre-ivory-2);
}

.dobre-empty-state {
	max-width: 720px;
	margin: 0 auto;
	padding: 50px;
	border: 1px solid var(--dobre-border);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-white);
	text-align: center;
}

.dobre-empty-state__mark {
	display: grid;
	width: 56px;
	height: 56px;
	margin: 0 auto 24px;
	place-items: center;
	border-radius: 50%;
	background: var(--dobre-sage-light);
	color: var(--dobre-green);
}

.dobre-empty-state h2 {
	font-size: 38px;
}

.dobre-empty-state p {
	color: var(--dobre-muted);
}

.nav-links {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	margin-top: 48px;
}

.nav-links .page-numbers {
	display: grid;
	min-width: 42px;
	height: 42px;
	place-items: center;
	padding-inline: 12px;
	border: 1px solid var(--dobre-border);
	border-radius: 999px;
	background: var(--dobre-white);
	font-size: 13px;
	font-weight: 800;
	text-decoration: none;
}

.nav-links .current {
	background: var(--dobre-green);
	color: var(--dobre-white);
}

/* Service page */
.dobre-service-hero {
	padding-block: 42px clamp(62px, 8vw, 106px);
	background: linear-gradient(140deg, var(--dobre-ivory-2), var(--dobre-sage-light));
}

.dobre-service-hero__grid {
	display: grid;
	grid-template-columns: minmax(0, 0.92fr) minmax(420px, 1.08fr);
	gap: clamp(44px, 7vw, 90px);
	align-items: center;
}

.dobre-service-hero__copy h1 {
	margin-bottom: 24px;
}

.dobre-service-hero__copy > p {
	max-width: 680px;
	color: #52615b;
	font-size: 20px;
}

.dobre-service-hero__actions {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 22px;
	margin-top: 30px;
}

.dobre-service-price {
	display: flex;
	flex-direction: column;
	margin: 0;
	line-height: 1.15;
}

.dobre-service-price small {
	color: var(--dobre-muted);
	font-size: 10px;
	font-weight: 800;
	letter-spacing: 0.08em;
	text-transform: uppercase;
}

.dobre-service-price strong {
	margin-top: 3px;
	color: var(--dobre-green-deep);
	font-family: var(--dobre-display);
	font-size: 28px;
}

.dobre-service-price span {
	color: var(--dobre-muted);
	font-size: 11px;
}

.dobre-service-price--individual strong {
	font-size: 20px;
}

.dobre-service-hero__media {
	overflow: hidden;
	aspect-ratio: 1.15;
	border-radius: 48% 48% var(--dobre-radius) var(--dobre-radius);
	box-shadow: var(--dobre-shadow);
}

.dobre-service-hero__media img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: 63% center;
}

.dobre-service-facts {
	background: var(--dobre-ivory-2);
}

.dobre-service-facts__grid,
.dobre-service-details__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(30px, 5vw, 70px);
	align-items: start;
}

.dobre-service-facts h2,
.dobre-service-details h2 {
	font-size: clamp(32px, 4vw, 47px);
}

.dobre-includes-card {
	padding: clamp(28px, 4vw, 46px);
	border-radius: var(--dobre-radius-lg);
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.8);
}

.dobre-includes-card h2 {
	color: var(--dobre-white);
}

.dobre-check-list--light li::before {
	background: rgba(255, 255, 255, 0.12);
}

.dobre-service-details {
	background: var(--dobre-ivory);
}

.dobre-number-list {
	display: grid;
	gap: 0;
	margin: 0;
	padding: 0;
	border-top: 1px solid var(--dobre-border);
	list-style: none;
}

.dobre-number-list li {
	display: grid;
	grid-template-columns: 45px 1fr;
	gap: 16px;
	padding: 18px 0;
	border-bottom: 1px solid var(--dobre-border);
}

.dobre-number-list span {
	color: var(--dobre-terracotta-dark);
	font-family: var(--dobre-display);
	font-weight: 800;
}

/* 404 */
.dobre-not-found {
	display: grid;
	min-height: 68vh;
	place-items: center;
	padding-block: 80px;
	background: radial-gradient(circle at center, var(--dobre-sage-light), var(--dobre-ivory-2) 58%);
}

.dobre-not-found__inner {
	position: relative;
	max-width: 780px;
	text-align: center;
}

.dobre-not-found__code {
	position: absolute;
	z-index: 0;
	top: 50%;
	left: 50%;
	color: rgba(33, 75, 62, 0.055);
	font-family: var(--dobre-display);
	font-size: clamp(180px, 30vw, 380px);
	font-weight: 800;
	line-height: 0.8;
	transform: translate(-50%, -50%);
	pointer-events: none;
}

.dobre-not-found__inner > :not(.dobre-not-found__code) {
	position: relative;
	z-index: 1;
}

.dobre-not-found h1 {
	margin-bottom: 18px;
}

.dobre-not-found p {
	max-width: 620px;
	margin: 0 auto 30px;
	color: var(--dobre-muted);
}

.dobre-not-found__actions {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 12px;
}

/* Footer */
.dobre-footer-cta {
	padding-block: 60px;
	background: var(--dobre-green-soft);
	color: rgba(255, 255, 255, 0.82);
}

.dobre-footer-cta__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 46px;
}

.dobre-footer-cta h2 {
	max-width: 760px;
	margin-bottom: 12px;
	color: var(--dobre-white);
	font-size: clamp(32px, 4vw, 50px);
}

.dobre-footer-cta p {
	max-width: 760px;
	margin: 0;
}

.dobre-footer-cta__actions {
	display: flex;
	flex: 0 0 auto;
	flex-direction: column;
	align-items: center;
	gap: 12px;
}

.dobre-site-footer {
	padding-top: 70px;
	background: var(--dobre-green-deep);
	color: rgba(255, 255, 255, 0.7);
}

.dobre-footer-grid {
	display: grid;
	grid-template-columns: 1.2fr 0.7fr 0.9fr;
	gap: clamp(40px, 7vw, 100px);
}

.dobre-brand--footer,
.dobre-brand--footer .dobre-brand__copy strong {
	color: var(--dobre-white);
}

.dobre-brand--footer .dobre-brand__copy small {
	color: rgba(255, 255, 255, 0.55);
}

.dobre-footer-brand > p {
	max-width: 390px;
	margin-top: 24px;
	font-size: 14px;
}

.dobre-footer-nav h2,
.dobre-footer-contacts h2 {
	margin-bottom: 20px;
	color: var(--dobre-white);
	font-family: var(--dobre-font);
	font-size: 15px;
	letter-spacing: 0.06em;
	text-transform: uppercase;
}

.dobre-footer-menu,
.dobre-footer-contacts ul,
.dobre-legal-menu {
	margin: 0;
	padding: 0;
	list-style: none;
}

.dobre-footer-menu,
.dobre-footer-contacts ul {
	display: grid;
	gap: 10px;
}

.dobre-footer-menu a,
.dobre-footer-contacts a,
.dobre-legal-menu a {
	color: inherit;
	font-size: 13px;
	text-decoration: none;
}

.dobre-footer-menu a:hover,
.dobre-footer-contacts a:hover,
.dobre-legal-menu a:hover {
	color: var(--dobre-white);
}

.dobre-social-links {
	display: flex;
	gap: 8px;
	margin-top: 22px;
}

.dobre-social-links a {
	display: grid;
	width: 38px;
	height: 38px;
	place-items: center;
	border: 1px solid rgba(255, 255, 255, 0.14);
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.05);
	color: var(--dobre-white);
	font-weight: 800;
}

.dobre-footer-bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 30px;
	margin-top: 60px;
	padding-block: 22px;
	border-top: 1px solid rgba(255, 255, 255, 0.1);
	font-size: 11px;
}

.dobre-footer-bottom p {
	margin: 0;
}

.dobre-legal-menu {
	display: flex;
	flex-wrap: wrap;
	gap: 18px;
}

/* Contact launcher */
.dobre-contact-launcher {
	position: fixed;
	z-index: 700;
	right: 22px;
	bottom: 22px;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 12px;
}

.dobre-contact-launcher__button {
	display: flex;
	min-height: 54px;
	align-items: center;
	gap: 9px;
	padding: 10px 18px 10px 10px;
	border: 0;
	border-radius: 999px;
	background: var(--dobre-terracotta-dark);
	color: var(--dobre-white);
	box-shadow: var(--dobre-shadow);
	font-size: 13px;
	font-weight: 800;
}

.dobre-contact-launcher__button > span:first-child {
	display: grid;
	width: 35px;
	height: 35px;
	place-items: center;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.16);
}

.dobre-contact-panel {
	width: min(330px, calc(100vw - 40px));
	padding: 18px;
	border: 1px solid var(--dobre-border);
	border-radius: 20px;
	background: var(--dobre-white);
	box-shadow: var(--dobre-shadow);
}

.dobre-contact-panel__head {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 14px;
}

.dobre-contact-panel__head > div {
	display: flex;
	flex-direction: column;
}

.dobre-contact-panel__head strong {
	color: var(--dobre-green-deep);
	font-size: 15px;
}

.dobre-contact-panel__head small {
	color: var(--dobre-muted);
	font-size: 11px;
}

.dobre-contact-panel__head button {
	display: grid;
	width: 30px;
	height: 30px;
	place-items: center;
	border: 0;
	border-radius: 50%;
	background: var(--dobre-ivory);
}

.dobre-contact-panel__links {
	display: grid;
	gap: 7px;
}

.dobre-contact-panel__links a,
.dobre-contact-panel__links button {
	display: flex;
	width: 100%;
	min-height: 46px;
	align-items: center;
	gap: 11px;
	padding: 8px 12px;
	border: 0;
	border-radius: 12px;
	background: var(--dobre-ivory-2);
	color: var(--dobre-green-deep);
	font-size: 13px;
	font-weight: 750;
	text-align: left;
	text-decoration: none;
}

.dobre-contact-panel__links span {
	display: grid;
	width: 28px;
	height: 28px;
	place-items: center;
	border-radius: 50%;
	background: var(--dobre-sage-light);
	font-size: 12px;
}

.dobre-mobile-sticky {
	display: none;
}

/* Dialog */
.dobre-dialog {
	width: min(680px, calc(100% - 32px));
	max-height: calc(100dvh - 32px);
	overflow: auto;
	padding: 0;
	border: 0;
	border-radius: var(--dobre-radius-lg);
	background: transparent;
	box-shadow: var(--dobre-shadow);
}

.dobre-dialog::backdrop {
	background: rgba(13, 34, 28, 0.72);
	backdrop-filter: blur(5px);
}

.dobre-dialog__surface {
	position: relative;
	padding: clamp(28px, 5vw, 54px);
	background: var(--dobre-ivory-2);
}

.dobre-dialog__close {
	position: absolute;
	z-index: 2;
	top: 18px;
	right: 18px;
	display: grid;
	width: 40px;
	height: 40px;
	place-items: center;
	border: 1px solid var(--dobre-border);
	border-radius: 50%;
	background: var(--dobre-white);
	font-size: 24px;
	line-height: 1;
}

.dobre-dialog__intro {
	max-width: 540px;
	padding-right: 36px;
}

.dobre-dialog__intro h2 {
	margin-bottom: 12px;
	font-size: clamp(34px, 5vw, 48px);
}

.dobre-dialog__intro p {
	margin-bottom: 28px;
	color: var(--dobre-muted);
}

/* Responsive */
@media (max-width: 1120px) {
	.dobre-site-header {
		background: var(--dobre-ivory-2);
		backdrop-filter: none;
	}

	.dobre-header-cta .dobre-header-phone,
	.dobre-header-cta .dobre-button {
		display: none;
	}

	.dobre-menu-toggle {
		display: grid;
		position: relative;
		z-index: 905;
		width: 46px;
		height: 46px;
		margin-left: auto;
		place-items: center;
		border: 1px solid var(--dobre-border);
		border-radius: 50%;
		background: var(--dobre-white);
	}

	.dobre-menu-toggle__lines {
		display: grid;
		gap: 4px;
	}

	.dobre-menu-toggle__lines i {
		display: block;
		width: 20px;
		height: 2px;
		border-radius: 2px;
		background: var(--dobre-green-deep);
		transition: transform 180ms ease, opacity 180ms ease;
	}

	.dobre-menu-toggle[aria-expanded="true"] i:nth-child(1) {
		transform: translateY(6px) rotate(45deg);
	}

	.dobre-menu-toggle[aria-expanded="true"] i:nth-child(2) {
		opacity: 0;
	}

	.dobre-menu-toggle[aria-expanded="true"] i:nth-child(3) {
		transform: translateY(-6px) rotate(-45deg);
	}

	body.dobre-menu-open::after {
		position: fixed;
		z-index: 790;
		inset: 0;
		background: rgba(13, 34, 28, 0.55);
		content: "";
	}

	.dobre-primary-nav {
		position: fixed;
		z-index: 900;
		top: 0;
		right: 0;
		bottom: 0;
		width: min(410px, 90vw);
		overflow-y: auto;
		padding: 96px 28px 34px;
		background: var(--dobre-ivory-2);
		box-shadow: var(--dobre-shadow);
		transform: translateX(105%);
		transition: transform 220ms ease;
	}

	.dobre-primary-nav.is-open {
		transform: translateX(0);
	}

	.dobre-nav-list,
	.dobre-primary-nav > .menu > ul {
		align-items: stretch;
		flex-direction: column;
		gap: 0;
	}

	.dobre-primary-nav .dobre-nav-list > li {
		opacity: 0;
		transform: translateX(14px);
		transition: opacity 220ms ease, transform 260ms ease;
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li {
		opacity: 1;
		transform: translateX(0);
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li:nth-child(1) {
		transition-delay: 30ms;
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li:nth-child(2) {
		transition-delay: 55ms;
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li:nth-child(3) {
		transition-delay: 80ms;
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li:nth-child(4) {
		transition-delay: 105ms;
	}

	.dobre-primary-nav.is-open .dobre-nav-list > li:nth-child(5) {
		transition-delay: 130ms;
	}

	.dobre-nav-list > li,
	.dobre-primary-nav > .menu > ul > li {
		border-bottom: 1px solid var(--dobre-border);
	}

	.dobre-nav-list > li > a,
	.dobre-services-toggle,
	.dobre-primary-nav > .menu > ul > li > a {
		padding-block: 15px;
		font-size: 17px;
	}

	.dobre-services-toggle {
		width: 100%;
		min-height: 56px;
		justify-content: space-between;
		padding-inline: 8px;
		text-align: left;
	}

	.dobre-nav-list .sub-menu {
		display: block;
		position: static;
		width: auto;
		max-height: none;
		overflow: visible;
		padding: 0 0 0 12px;
		border: 0;
		background: transparent;
		box-shadow: none;
		max-height: 0;
		opacity: 0;
		overflow: hidden;
		pointer-events: none;
		visibility: hidden;
		transform: translateY(-8px);
		transition: max-height 320ms ease, opacity 220ms ease, padding-bottom 320ms ease, transform 220ms ease, visibility 0s linear 320ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu {
		max-height: 760px;
		padding-bottom: 10px;
		opacity: 1;
		pointer-events: auto;
		visibility: visible;
		transform: translateY(0);
		transition: max-height 320ms ease, opacity 220ms ease, padding-bottom 320ms ease, transform 220ms ease;
	}

	.dobre-nav-list .dobre-services-submenu li {
		opacity: 0;
		transform: translateY(-6px);
		transition: opacity 180ms ease, transform 220ms ease;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li {
		opacity: 1;
		transform: translateY(0);
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(1) {
		transition-delay: 40ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(2) {
		transition-delay: 65ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(3) {
		transition-delay: 90ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(4) {
		transition-delay: 115ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(5) {
		transition-delay: 140ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(6) {
		transition-delay: 165ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(7) {
		transition-delay: 190ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(8) {
		transition-delay: 215ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(9) {
		transition-delay: 240ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(10) {
		transition-delay: 265ms;
	}

	.dobre-nav-list .dobre-nav-item--services.is-open > .dobre-services-submenu li:nth-child(11) {
		transition-delay: 290ms;
	}

	.dobre-nav-list .dobre-services-submenu a {
		padding: 11px 8px 11px 18px;
		font-size: 15px;
		font-weight: 650;
	}

	.dobre-primary-nav__mobile-contact {
		display: grid;
		gap: 10px;
		margin-top: 28px;
	}

	.dobre-hero__grid,
	.dobre-service-hero__grid {
		grid-template-columns: minmax(0, 0.95fr) minmax(390px, 1.05fr);
		gap: 42px;
	}

	.dobre-service-grid,
	.dobre-format-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.dobre-audience-grid {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}
}

@media (max-width: 900px) {
	.dobre-section-heading--split,
	.dobre-hero__grid,
	.dobre-process-layout,
	.dobre-trust-layout,
	.dobre-final-form-layout,
	.dobre-service-hero__grid,
	.dobre-service-facts__grid,
	.dobre-service-details__grid,
	.dobre-quiz__questions,
	.dobre-quiz__result,
	.dobre-calculator,
	.dobre-calculator-empty,
	.dobre-faq-layout {
		grid-template-columns: 1fr;
	}

	.dobre-section-heading--split {
		gap: 20px;
	}

	.dobre-hero__content {
		max-width: 760px;
	}

	.dobre-hero__visual {
		max-width: 720px;
	}

	.dobre-process-intro,
	.dobre-faq-intro,
	.dobre-calculator-result {
		position: static;
	}

	.dobre-calculator-empty {
		gap: 30px;
	}

	.dobre-footer-grid {
		grid-template-columns: 1.2fr 0.8fr;
	}

	.dobre-footer-contacts {
		grid-column: 1 / -1;
	}
}

@media (max-width: 782px) {
	body.admin-bar .dobre-site-header {
		top: 46px;
	}
}

@media (max-width: 720px) {
	:root {
		--dobre-gutter: 20px;
		--dobre-section: 72px;
	}

	body {
		font-size: 16px;
		padding-bottom: 68px;
	}

	.dobre-quiz {
		padding: 18px;
		border-radius: var(--dobre-radius);
	}

	.dobre-quiz__group {
		padding: 17px;
	}

	.dobre-quiz__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.dobre-quiz__actions .dobre-button {
		width: 100%;
	}

	.dobre-quiz__result {
		padding: 20px;
	}

	.dobre-quiz__lead {
		padding: 18px;
	}

	h1 {
		font-size: clamp(40px, 12vw, 58px);
	}

	h2 {
		font-size: clamp(34px, 9vw, 46px);
	}

	.dobre-contact-strip__inner {
		min-height: 32px;
	}

	.dobre-contact-strip__actions > span,
	.dobre-contact-strip__actions a {
		display: none;
	}

	.dobre-contact-strip p {
		font-size: 10px;
	}

	.dobre-header-main {
		min-height: 72px;
	}

	.dobre-brand__mark {
		width: 41px;
		height: 41px;
		border-radius: 13px 13px 13px 5px;
	}

	.dobre-brand__copy strong {
		font-size: 20px;
	}

	.dobre-brand__copy small {
		display: none;
	}

	.dobre-brand__image {
		max-width: 190px;
		height: 46px;
	}

	.dobre-primary-nav {
		width: min(370px, 92vw);
		padding: 82px 22px 28px;
	}

	.dobre-hero {
		padding-block: 46px 76px;
	}

	.dobre-hero__grid {
		gap: 42px;
	}

	.dobre-hero__content h1 {
		margin-bottom: 21px;
	}

	.dobre-hero__lead {
		font-size: 18px;
	}

	.dobre-hero__actions,
	.dobre-hero__actions .dobre-button {
		width: 100%;
	}

	.dobre-hero__points {
		display: grid;
	}

	.dobre-hero__image-wrap {
		aspect-ratio: 0.98;
		border-radius: 42% 42% 22px 22px;
	}

	.dobre-hero__image-wrap img {
		object-position: 66% center;
	}

	.dobre-hero__note {
		right: 12px;
		bottom: 14px;
		left: 12px;
		max-width: none;
	}

	.dobre-benefit-strip {
		margin-top: -24px;
	}

	.dobre-benefit-strip__grid {
		grid-template-columns: 1fr;
	}

	.dobre-benefit-strip article + article {
		border-top: 1px solid var(--dobre-border);
		border-left: 0;
	}

	.dobre-service-grid,
	.dobre-format-grid,
	.dobre-caregiver-grid,
	.dobre-audience-grid,
	.dobre-choice-grid,
	.dobre-check-grid {
		grid-template-columns: 1fr;
	}

	.dobre-format-card {
		min-height: 280px;
	}

	.dobre-format-card__number {
		margin-bottom: 34px;
	}

	.dobre-process-list li {
		grid-template-columns: 48px 1fr;
		gap: 14px;
	}

	.dobre-process-list > li > span {
		width: 42px;
		height: 42px;
	}

	.dobre-audience-grid article > span {
		margin-bottom: 20px;
	}

	.dobre-calculator-controls,
	.dobre-calculator-result,
	.dobre-calculator-empty {
		border-radius: 24px;
	}

	.dobre-form-grid {
		grid-template-columns: 1fr;
	}

	.dobre-field--wide {
		grid-column: auto;
	}

	.dobre-form-actions,
	.dobre-form-actions .dobre-button {
		width: 100%;
	}

	.dobre-final-form-layout {
		gap: 36px;
	}

	.dobre-final-form-card {
		padding: 24px 20px;
		border-radius: 24px;
	}

	.dobre-accordion summary {
		min-height: 72px;
		font-size: 16px;
	}

	.dobre-accordion__content {
		padding-right: 0;
	}

	.dobre-page-hero,
	.dobre-archive-hero {
		padding-block: 42px 62px;
	}

	.dobre-page-inline-cta__inner,
	.dobre-footer-cta__inner,
	.dobre-footer-bottom {
		align-items: flex-start;
		flex-direction: column;
	}

	.dobre-footer-cta__actions {
		width: 100%;
		align-items: stretch;
	}

	.dobre-footer-grid {
		grid-template-columns: 1fr;
	}

	.dobre-footer-contacts {
		grid-column: auto;
	}

	.dobre-footer-bottom {
		margin-top: 44px;
	}

	.dobre-service-hero__actions {
		align-items: stretch;
		flex-direction: column;
	}

	.dobre-service-hero__actions .dobre-button {
		width: 100%;
	}

	.dobre-service-hero__media {
		aspect-ratio: 0.98;
	}

	.dobre-empty-state {
		padding: 36px 22px;
	}

	.dobre-contact-launcher {
		right: 14px;
		bottom: 82px;
	}

	.dobre-contact-launcher__button {
		width: 54px;
		padding: 9px;
	}

	.dobre-contact-launcher__button > span:last-child {
		display: none;
	}

	.dobre-contact-launcher__button > span:first-child {
		width: 36px;
		height: 36px;
	}

	.dobre-mobile-sticky {
		display: grid;
		position: fixed;
		z-index: 720;
		right: 0;
		bottom: 0;
		left: 0;
		grid-template-columns: repeat(3, 1fr);
		padding: 7px max(8px, env(safe-area-inset-right)) calc(7px + env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left));
		border-top: 1px solid var(--dobre-border);
		background: rgba(255, 255, 255, 0.96);
		box-shadow: 0 -10px 30px rgba(20, 56, 47, 0.1);
		backdrop-filter: blur(14px);
	}

	.dobre-mobile-sticky a,
	.dobre-mobile-sticky button {
		display: flex;
		min-height: 48px;
		align-items: center;
		justify-content: center;
		gap: 6px;
		padding: 6px 5px;
		border: 0;
		border-radius: 12px;
		background: transparent;
		color: var(--dobre-green-deep);
		font-size: 11px;
		font-weight: 800;
		text-decoration: none;
	}

	.dobre-mobile-sticky button:last-child {
		background: var(--dobre-terracotta-dark);
		color: var(--dobre-white);
	}

	.dobre-mobile-sticky span {
		font-size: 16px;
	}

	.dobre-dialog {
		width: calc(100% - 18px);
		max-height: calc(100dvh - 18px);
		border-radius: 24px;
	}

	.dobre-dialog__surface {
		padding: 38px 20px 24px;
	}

	.dobre-dialog__close {
		top: 11px;
		right: 11px;
	}

	.dobre-dialog__intro {
		padding-right: 0;
	}
}

@media (max-width: 360px) {
	:root {
		--dobre-gutter: 16px;
	}

	.dobre-brand__copy strong {
		font-size: 18px;
	}

	.dobre-menu-toggle {
		width: 42px;
		height: 42px;
	}

	.dobre-mobile-sticky a,
	.dobre-mobile-sticky button {
		font-size: 10px;
	}
}

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

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

/* ─────────────────────────────────────────────────────────────
   ART DIRECTION V2 · editorial home care
   Mirrors the local React presentation without changing CMS data.
   ───────────────────────────────────────────────────────────── */
:root {
	--dobre-ivory: #f3eee4;
	--dobre-ivory-2: #f8f5ee;
	--dobre-sand: #e5dbcc;
	--dobre-sage: #a8bc9e;
	--dobre-sage-light: #dfe7db;
	--dobre-green: #286b57;
	--dobre-green-deep: #08251f;
	--dobre-green-soft: #315d4f;
	--dobre-terracotta: #ed7149;
	--dobre-terracotta-dark: #cf5432;
	--dobre-butter: #f1d87a;
	--dobre-warm: #ead0be;
	--dobre-ink: #263a34;
	--dobre-muted: #65736e;
	--dobre-border: rgba(17, 53, 45, 0.16);
	--dobre-shadow-sm: 0 18px 48px rgba(8, 37, 31, 0.09);
	--dobre-shadow: 0 32px 90px rgba(8, 37, 31, 0.18);
	--dobre-radius-sm: 4px;
	--dobre-radius: 6px;
	--dobre-radius-lg: 10px;
	--dobre-container: 1320px;
	--dobre-gutter: clamp(20px, 4vw, 52px);
	--dobre-section: clamp(96px, 10vw, 152px);
	--dobre-font: "Segoe UI Variable", "Segoe UI", Arial, sans-serif;
	--dobre-display: Georgia, "Times New Roman", serif;
}

body {
	background: var(--dobre-ivory-2);
	color: var(--dobre-ink);
	font-size: 17px;
}

h1,
h2,
h3,
h4 {
	font-family: var(--dobre-display);
	font-weight: 500;
	letter-spacing: -0.048em;
	line-height: 0.99;
}

h1 { font-size: clamp(58px, 7vw, 106px); }
h2 { font-size: clamp(46px, 5.25vw, 80px); }
h3 { font-size: clamp(25px, 2.4vw, 36px); }

.dobre-eyebrow {
	gap: 11px;
	margin-bottom: 22px;
	color: var(--dobre-green);
	font-size: 11px;
	letter-spacing: 0.2em;
}

.dobre-eyebrow::before {
	width: 27px;
	height: 1px;
}

.dobre-button {
	min-height: 56px;
	padding: 15px 24px;
	border-radius: 3px;
	font-size: 13px;
	letter-spacing: 0.01em;
	box-shadow: none;
}

.dobre-button--small {
	min-height: 44px;
	padding: 11px 19px;
}

.dobre-button--accent {
	background: var(--dobre-terracotta);
	box-shadow: none;
}

.dobre-button--accent:hover { background: var(--dobre-terracotta-dark); }

.dobre-text-link,
.dobre-card-link {
	padding-bottom: 8px;
	border-bottom: 1px solid currentColor;
	font-size: 13px;
}

.dobre-site-header {
	background: rgba(248, 245, 238, 0.92);
	box-shadow: 0 1px 0 rgba(17, 53, 45, 0.13);
}

.dobre-contact-strip {
	background: var(--dobre-green-deep);
	font-size: 11px;
}

.dobre-contact-strip .dobre-status-dot {
	width: 6px;
	height: 6px;
	background: var(--dobre-terracotta);
	box-shadow: 0 0 0 4px rgba(237, 113, 73, 0.14);
}

.dobre-header-main { min-height: 88px; }

.dobre-brand__mark {
	position: relative;
	width: 46px;
	height: 46px;
	border-radius: 3px 20px 3px 20px;
	background: var(--dobre-terracotta);
	box-shadow: none;
}

.dobre-brand__mark::after {
	position: absolute;
	inset: 5px;
	border: 1px solid rgba(255, 255, 255, 0.55);
	border-radius: inherit;
	content: "";
}

.dobre-brand__mark span { position: relative; z-index: 1; }
.dobre-brand__copy strong { font-size: 22px; font-weight: 600; }
.dobre-brand__copy small { font-size: 9px; letter-spacing: 0.045em; }

.dobre-nav-list > li > a,
.dobre-primary-nav > .menu > ul > li > a {
	color: #344c45;
	font-size: 12px;
}

.dobre-hero {
	isolation: isolate;
	width: min(calc(100% - 36px), 1380px);
	margin: 18px auto 0;
	padding: clamp(66px, 7vw, 98px) clamp(24px, 4.6vw, 72px) 42px;
	border-radius: 6px;
	background:
		radial-gradient(circle at 14% 20%, rgba(100, 145, 112, 0.2), transparent 29%),
		radial-gradient(circle at 96% 110%, rgba(237, 113, 73, 0.27), transparent 32%),
		var(--dobre-green-deep);
}

.dobre-hero::before {
	z-index: -1;
	width: 520px;
	height: 520px;
	right: -150px;
	top: -250px;
	border-color: rgba(255, 255, 255, 0.11);
	box-shadow:
		0 0 0 54px rgba(255, 255, 255, 0.024),
		0 0 0 110px rgba(255, 255, 255, 0.018);
}

.dobre-hero::after {
	z-index: -1;
	left: auto;
	right: 28px;
	bottom: -30px;
	width: 330px;
	height: 330px;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, 0.06);
}

.dobre-hero > .dobre-container {
	width: 100%;
	max-width: none;
}

.dobre-hero__grid {
	grid-template-columns: minmax(0, 0.88fr) minmax(440px, 1.12fr);
	gap: clamp(46px, 6vw, 88px);
}

.dobre-hero .dobre-eyebrow { color: #abc0b5; }

.dobre-hero__content h1 {
	max-width: 690px;
	margin-bottom: 30px;
	color: var(--dobre-white);
	font-size: clamp(62px, 5.5vw, 90px);
	line-height: 0.92;
}

.dobre-hero__lead {
	max-width: 600px;
	margin-bottom: 36px;
	color: #c4d0ca;
	font-size: 17px;
	line-height: 1.72;
}

.dobre-hero .dobre-button--ghost {
	border-color: rgba(255, 255, 255, 0.3);
	background: transparent;
	color: var(--dobre-white);
}

.dobre-hero .dobre-button--ghost:hover {
	border-color: rgba(255, 255, 255, 0.6);
	background: rgba(255, 255, 255, 0.08);
	color: var(--dobre-white);
}

.dobre-hero__points {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 0;
	margin-top: 42px;
	padding-top: 20px;
	border-top: 1px solid rgba(255, 255, 255, 0.15);
}

.dobre-hero__points li {
	min-height: 54px;
	align-items: flex-start;
	padding-inline: 16px;
	border-left: 1px solid rgba(255, 255, 255, 0.12);
	color: #aebeb7;
	font-size: 11px;
	line-height: 1.4;
}

.dobre-hero__points li:first-child { padding-left: 0; border-left: 0; }

.dobre-hero__points span {
	width: auto;
	height: auto;
	border-radius: 0;
	background: none;
	color: var(--dobre-butter);
	font-weight: 800;
}

.dobre-hero__visual {
	min-height: 610px;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
}

.dobre-hero__image-wrap {
	width: min(100%, 610px);
	height: 590px;
	aspect-ratio: auto;
	border: 7px solid rgba(255, 253, 248, 0.88);
	border-radius: 260px 260px 8px 8px;
	box-shadow: 0 28px 80px rgba(0, 0, 0, 0.28);
}

.dobre-hero__image-wrap img {
	object-position: 63% center;
	filter: saturate(0.84) contrast(0.98);
}

.dobre-hero__note {
	right: auto;
	left: -34px;
	bottom: 34px;
	max-width: 360px;
	padding: 18px 20px;
	border: 0;
	border-radius: 4px;
	background: var(--dobre-butter);
	box-shadow: 18px 18px 0 rgba(8, 37, 31, 0.36);
	backdrop-filter: none;
}

.dobre-hero__note-mark {
	width: 44px;
	height: 44px;
	border-radius: 3px 18px 3px 18px;
	background: var(--dobre-green-deep);
	font-family: var(--dobre-display);
}

.dobre-hero__note strong { font-family: var(--dobre-display); font-size: 16px; }
.dobre-hero__note small { color: #5d614f; }

.dobre-benefit-strip {
	margin-top: 0;
	background: var(--dobre-terracotta);
}

.dobre-benefit-strip__grid {
	border: 0;
	border-radius: 0;
	background: transparent;
	box-shadow: none;
}

.dobre-benefit-strip article {
	min-height: 126px;
	align-items: center;
}

.dobre-benefit-strip article + article { border-color: rgba(255, 255, 255, 0.28); }
.dobre-benefit-strip article > span { color: var(--dobre-butter); font-size: 30px; font-weight: 500; }
.dobre-benefit-strip h2 { color: var(--dobre-white); font-family: var(--dobre-display); font-size: 21px; font-weight: 500; }
.dobre-benefit-strip p { color: #ffdfd3; }

.dobre-services-section { background: var(--dobre-ivory-2); }
.dobre-section-heading h2 { max-width: 900px; }

.dobre-service-grid {
	grid-template-columns: repeat(12, minmax(0, 1fr));
	grid-auto-flow: dense;
	gap: 16px;
}

.dobre-service-card {
	grid-column: span 4;
	min-height: 470px;
	display: flex;
	flex-direction: column;
	border: 0;
	border-radius: 4px;
	background: var(--dobre-sage-light);
	box-shadow: none;
}

.dobre-service-card:first-child {
	grid-column: span 8;
	background: var(--dobre-terracotta);
	color: var(--dobre-white);
}

.dobre-service-card:nth-child(2) { background: var(--dobre-butter); }
.dobre-service-card:nth-child(3) { background: var(--dobre-green-deep); color: var(--dobre-white); }
.dobre-service-card:nth-child(4) { background: #d9e2d4; }
.dobre-service-card:nth-child(5) { background: var(--dobre-warm); }
.dobre-service-card:nth-child(6) { background: #315d4f; color: var(--dobre-white); }

.dobre-service-card__media {
	aspect-ratio: 2.25;
	background: rgba(255, 255, 255, 0.1);
	filter: saturate(0.72);
}

.dobre-service-card:first-child .dobre-service-card__media { aspect-ratio: 3.1; }
.dobre-service-card__placeholder { background: linear-gradient(145deg, rgba(255,255,255,.2), rgba(8,37,31,.12)); }
.dobre-service-card__body { flex: 1; display: flex; flex-direction: column; padding: 30px; }
.dobre-service-card__meta { color: currentColor; opacity: 0.72; }
.dobre-service-card__meta strong { color: currentColor; }

.dobre-service-card h2 {
	color: currentColor;
	font-family: var(--dobre-display);
	font-size: clamp(28px, 3vw, 45px);
	font-weight: 500;
	line-height: 1;
}

.dobre-service-card:first-child h2 { font-size: clamp(38px, 4.2vw, 64px); }
.dobre-service-card p { color: currentColor; opacity: 0.76; }
.dobre-service-card .dobre-card-link { margin-top: auto; color: currentColor; }
.dobre-service-card:hover { transform: translateY(-7px); box-shadow: 0 24px 64px rgba(8, 37, 31, 0.13); }

.dobre-quiz-section { background: var(--dobre-warm); }
.dobre-quiz {
	border: 1px solid rgba(17, 53, 45, 0.18);
	border-radius: 4px;
	background: var(--dobre-ivory-2);
	box-shadow: 18px 18px 0 rgba(17, 53, 45, 0.13);
}

.dobre-quiz__group,
.dobre-quiz__result,
.dobre-quiz__lead { border-radius: 3px; }

.dobre-process-section { background: var(--dobre-green-deep); }
.dobre-process-intro h2 { font-size: clamp(48px, 5vw, 74px); }

.dobre-audience-section { background: var(--dobre-ivory-2); }
.dobre-audience-grid article,
.dobre-trust-card,
.dobre-caregiver-card {
	border-radius: 4px;
}

.dobre-calculator-section { background: #eee8dc; }
.dobre-calculator,
.dobre-calculator-controls,
.dobre-calculator-result,
.dobre-calculator-empty { border-radius: 4px; }

.dobre-final-form-section {
	position: relative;
	overflow: hidden;
	background: var(--dobre-terracotta);
}

.dobre-final-form-section::before {
	position: absolute;
	right: 7vw;
	top: 5vw;
	color: var(--dobre-butter);
	font-size: 48px;
	content: "✦";
}

.dobre-final-form-section h2 { color: var(--dobre-white); }
.dobre-final-form-section p { color: #fff0e9; }
.dobre-final-form-card {
	border-radius: 4px;
	background: var(--dobre-ivory-2);
	box-shadow: 20px 20px 0 var(--dobre-green-deep);
}

.dobre-field input,
.dobre-field select,
.dobre-field textarea { border-radius: 2px; }

.dobre-footer { background: var(--dobre-green-deep); }
.dobre-contact-launcher__button { border-radius: 3px 22px 3px 22px; background: var(--dobre-terracotta); }
.dobre-dialog,
.dobre-contact-panel { border-radius: 4px; }

.dobre-page-hero,
.dobre-archive-hero {
	position: relative;
	overflow: hidden;
	background: var(--dobre-green-deep);
	color: var(--dobre-white);
}

.dobre-page-hero h1,
.dobre-archive-hero h1 { color: var(--dobre-white); }
.dobre-page-hero p,
.dobre-archive-hero p { color: #bfd0c8; }
.dobre-page-hero .dobre-eyebrow,
.dobre-archive-hero .dobre-eyebrow { color: #abc0b5; }

.dobre-service-hero { background: var(--dobre-green-deep); }
.dobre-service-hero h1 { color: var(--dobre-white); }
.dobre-service-hero p { color: #bfd0c8; }
.dobre-service-price { border-radius: 4px; background: var(--dobre-terracotta); }
.dobre-service-hero__media { border-radius: 240px 240px 6px 6px; }

@media (max-width: 1180px) {
	.dobre-hero__grid { grid-template-columns: minmax(0, 0.92fr) minmax(390px, 1.08fr); gap: 42px; }
	.dobre-hero__content h1 { font-size: clamp(58px, 6.4vw, 78px); }
	.dobre-hero__visual { min-height: 560px; }
	.dobre-hero__image-wrap { height: 540px; }
	.dobre-service-card { grid-column: span 6; }
	.dobre-service-card:first-child { grid-column: span 12; }
}

@media (max-width: 900px) {
	.dobre-hero__grid,
	.dobre-process-layout,
	.dobre-trust-layout,
	.dobre-final-form-layout,
	.dobre-service-hero__grid,
	.dobre-service-facts__grid,
	.dobre-service-details__grid,
	.dobre-quiz__questions,
	.dobre-quiz__result,
	.dobre-calculator,
	.dobre-calculator-empty,
	.dobre-faq-layout { grid-template-columns: 1fr; }

	.dobre-hero__content h1 { max-width: 760px; font-size: clamp(68px, 11vw, 104px); }
	.dobre-hero__visual { width: min(100%, 690px); margin-inline: auto; }
}

@media (max-width: 720px) {
	:root { --dobre-gutter: 16px; --dobre-section: 86px; }
	h1 { font-size: clamp(52px, 15vw, 72px); }
	h2 { font-size: clamp(43px, 12vw, 60px); }
	.dobre-brand__mark { border-radius: 3px 16px 3px 16px; }
	.dobre-menu-toggle { border-radius: 3px 16px 3px 16px; }
	.dobre-hero {
		width: calc(100% - 16px);
		margin-top: 8px;
		padding: 44px 18px 24px;
	}
	.dobre-hero__grid { gap: 40px; }
	.dobre-hero__content h1 { font-size: clamp(54px, 16vw, 76px); }
	.dobre-hero__lead { font-size: 15px; }
	.dobre-hero__points { grid-template-columns: 1fr; }
	.dobre-hero__points li {
		min-height: 44px;
		padding: 11px 0;
		border-left: 0;
		border-bottom: 1px solid rgba(255,255,255,.11);
	}
	.dobre-hero__visual { min-height: 470px; }
	.dobre-hero__image-wrap {
		height: 460px;
		aspect-ratio: auto;
		border-width: 5px;
		border-radius: 180px 180px 6px 6px;
	}
	.dobre-hero__note {
		right: 10px;
		left: 10px;
		width: auto;
		box-shadow: 9px 9px 0 rgba(8, 37, 31, 0.4);
	}
	.dobre-benefit-strip article { min-height: auto; padding-block: 22px; }
	.dobre-service-grid { grid-template-columns: 1fr; }
	.dobre-service-card,
	.dobre-service-card:first-child {
		grid-column: 1;
		min-height: 430px;
	}
	.dobre-service-card h2,
	.dobre-service-card:first-child h2 { font-size: 43px; }
	.dobre-quiz { box-shadow: 10px 10px 0 rgba(17, 53, 45, 0.13); }
	.dobre-final-form-card { box-shadow: 10px 10px 0 var(--dobre-green-deep); }
	.dobre-mobile-sticky { background: rgba(248, 245, 238, 0.96); }
	.dobre-mobile-sticky > :last-child { background: var(--dobre-terracotta); color: var(--dobre-white); }
}
