/* Resets — theme.json/global-styles already handles fonts, colour, spacing tokens. */

/* Fallbacks for --wp--custom--* vars, in case global-styles inline CSS is absent (Brief §7). */
:root {
	--wp--custom--radius--card: 16px;
	--wp--custom--radius--button: 12px;
	--wp--custom--radius--glass-panel: 22px;
	--wp--custom--radius--pill: 100px;
	--wp--custom--radius--image: 14px;
	--wp--custom--shadow--sm: 0 8px 24px -14px rgba(10, 60, 45, .3);
	--wp--custom--shadow--default: 0 18px 44px -20px rgba(10, 60, 45, .35);
	--wp--custom--motion--duration-min: 180ms;
	--wp--custom--motion--duration-max: 200ms;
	--wp--custom--motion--easing: ease;
}

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

/* Skip link — accessibility (WP.org required: first focusable element, visible on focus) */
.dr-skip {
	position: absolute;
	left: -9999px;
	top: 0;
	z-index: 100000;
	background: var(--wp--preset--color--forest, #0a5c43);
	color: #fff;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 15px;
	padding: 12px 20px;
	border-radius: 0 0 12px 0;
	text-decoration: none;
}
.dr-skip:focus {
	left: 0;
}

body {
	margin: 0;
}

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

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

/* Focus ring — Brief §11: 2px --forest, 2px offset, never on mouse click. */
:focus-visible {
	outline: 2px solid var(--wp--preset--color--forest, #0a5c43);
	outline-offset: 2px;
}

:focus:not(:focus-visible) {
	outline: none;
}

/* Container — Brief §7: --maxw 1200px, gutters 22px. */
.container {
	max-width: 1200px;
	margin-inline: auto;
	padding-inline: var(--wp--preset--spacing--22, 22px);
}

/* Section padding — Brief §7: ~88px vertical desktop, ~56px mobile. */
.section-padding {
	padding-block: var(--wp--preset--spacing--88, 88px);
}

@media (max-width: 640px) {
	.section-padding {
		padding-block: 56px;
	}
}

/* Brief §11: honour prefers-reduced-motion. */
@media (prefers-reduced-motion: reduce) {
	*,
	*::before,
	*::after {
		animation-duration: 0.01ms !important;
		animation-iteration-count: 1 !important;
		transition-duration: 0.01ms !important;
		scroll-behavior: auto !important;
	}
}

/* =====================================================================
   HEADER — sticky glass bar (design: Home.dc.html §header)
   ===================================================================== */
.dr-header {
	position: sticky;
	top: 0;
	z-index: 60;
	background: rgba(255, 255, 255, .9);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	border-bottom: 1px solid var(--wp--preset--color--line, #e4ece8);
}
.dr-header__bar {
	max-width: 1200px;
	margin-inline: auto;
	padding: 0 22px;
	min-height: 72px;
}

/* Logo lockup */
.dr-logo { flex-wrap: nowrap; }
.dr-logo__badge {
	width: 30px;
	height: 30px;
	min-height: 30px;
	flex: 0 0 30px;
	border-radius: 9px;
	background: linear-gradient(140deg, var(--wp--preset--color--green, #0e8c63), var(--wp--preset--color--forest, #0a5c43));
}
.dr-logo__dr {
	margin: 0;
	color: #fff;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800;
	font-size: 14px;
	line-height: 1;
}
.dr-logo__word {
	margin: 0;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 700;
	font-size: 20px;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--deep, #0f2a22);
	white-space: nowrap;
}
.dr-logo__word a { color: inherit; text-decoration: none; }
.dr-logo__word-accent { color: var(--wp--preset--color--green, #0e8c63); }

/* Primary nav */
.dr-nav { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; }
.dr-nav .wp-block-navigation-item__content {
	font-weight: 500;
	font-size: 15px;
	color: var(--wp--custom--color--deep-muted, #2b433b);
	padding: 10px 12px;
	border-radius: var(--wp--custom--radius--button, 12px);
}
.dr-nav .wp-block-navigation-item__content:hover,
.dr-nav .wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content {
	color: var(--wp--preset--color--green, #0e8c63);
}
.dr-nav .wp-block-navigation__submenu-container {
	background: #fff;
	border: 1px solid var(--wp--preset--color--line, #e4ece8);
	border-radius: var(--wp--custom--radius--card, 16px);
	box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35));
	padding: 10px;
	min-width: 260px;
}
.dr-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content {
	font-size: 14.5px;
	padding: 10px 12px;
	border-radius: 10px;
}
.dr-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover {
	background: var(--wp--preset--color--bg-soft, #f3f8f5);
	color: var(--wp--preset--color--green, #0e8c63);
}

/* Header actions: phone + CTA */
.dr-header__phone {
	margin: 0;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 500;
	font-size: 15px;
	white-space: nowrap;
}
.dr-header__phone a { color: var(--wp--custom--color--deep-muted, #2b433b); text-decoration: none; }
.dr-header__phone a:hover { color: var(--wp--preset--color--green, #0e8c63); }

.dr-cta .wp-block-button__link {
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 15px;
	background: var(--wp--preset--color--bright, #00d082);
	color: var(--wp--custom--color--on-bright, #04231a);
	padding: 11px 20px;
	border-radius: var(--wp--custom--radius--button, 12px);
	white-space: nowrap;
	box-shadow: 0 14px 30px -12px rgba(0, 208, 130, .6);
	transition: all 190ms ease;
}
.dr-cta .wp-block-button__link:hover {
	background: var(--wp--custom--color--bright-hover, #12e08f);
	color: var(--wp--custom--color--on-bright, #04231a);
	transform: translateY(-2px);
}

/* =====================================================================
   FOOTER — dark 5-column + legal bar (design: Home.dc.html §footer)
   ===================================================================== */
.dr-footer {
	background: var(--wp--preset--color--deep, #0f2a22);
	padding: 64px 22px 0;
}
.dr-footer > .wp-block-columns,
.dr-footer > .wp-block-group { max-width: 1200px; margin-inline: auto; }
.dr-footer__cols { padding-bottom: 48px; }
.dr-footer__desc {
	font-size: 14.5px;
	line-height: 1.65;
	color: var(--wp--preset--color--on-dark-mute, #9fc4b7);
	max-width: 300px;
	margin: 14px 0 18px;
}
.dr-footer__contact { margin: 0 0 6px; font-size: 14.5px; }
.dr-footer__contact a { color: var(--wp--preset--color--on-dark-link, #a9c6bb); text-decoration: none; }
.dr-footer__contact a:hover { color: #fff; }

.dr-logo--on-dark .dr-logo__word { color: #fff; }
.dr-logo--on-dark .dr-logo__word-accent { color: var(--wp--preset--color--bright, #00d082); }

/* Social outline circles */
.dr-social { gap: 12px; margin-top: 16px; }
.dr-social .wp-block-social-link,
.dr-social .wp-social-link {
	width: 36px;
	height: 36px;
	border-radius: var(--wp--custom--radius--pill, 100px);
	border: 1px solid rgba(255, 255, 255, .14);
	color: var(--wp--preset--color--on-dark-link, #a9c6bb);
	display: flex;
	align-items: center;
	justify-content: center;
}
.dr-social .wp-block-social-link:hover { color: #fff; border-color: #fff; transform: none; }
.dr-social .wp-block-social-link a { padding: 0; }

/* Footer nav columns */
.dr-footer__h {
	margin: 0 0 14px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .14em;
	color: var(--wp--preset--color--on-dark-mute, #9fc4b7);
}
.dr-footer__list {
	list-style: none;
	margin: 0;
	padding: 0;
	display: flex;
	flex-direction: column;
	gap: 10px;
	font-size: 14.5px;
}
.dr-footer__list a { color: var(--wp--preset--color--on-dark-link, #a9c6bb); text-decoration: none; }
.dr-footer__list a:hover { color: #fff; }

/* Legal bar */
.dr-footer__legal {
	border-top: 1px solid rgba(255, 255, 255, .14);
	padding: 20px 0 26px;
	font-size: 13.5px;
	color: var(--wp--preset--color--on-dark-mute, #9fc4b7);
}
.dr-footer__copy { margin: 0; }
.dr-footer__legal-links p { margin: 0; }
.dr-footer__legal-links a { color: var(--wp--preset--color--on-dark-link, #a9c6bb); text-decoration: none; font-size: 13.5px; }
.dr-footer__legal-links a:hover { color: #fff; }

@media (max-width: 781px) {
	.dr-footer__brand { flex-basis: 100% !important; }
}

/* =====================================================================
   HERO (design: Home.dc.html §hero) + TRUST BAR
   ===================================================================== */
.dr-hero {
	background:
		radial-gradient(700px 480px at 88% -10%, rgba(0, 208, 130, .28), transparent 62%),
		linear-gradient(160deg, var(--wp--preset--color--forest, #0a5c43) 0%, var(--wp--custom--color--forest-deep, #0d3b2c) 60%, var(--wp--preset--color--deep, #0f2a22) 100%);
	padding: 84px 0 96px;
}
.dr-hero__inner { align-items: center; gap: 48px; }

.dr-eyebrow {
	margin: 0 0 16px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 13px;
	text-transform: uppercase;
	letter-spacing: .14em;
	color: var(--wp--preset--color--forest, #0a5c43);
}
.dr-eyebrow--on-dark { color: var(--wp--preset--color--bright, #00d082); }

.dr-hero__h1 {
	margin: 0 0 20px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800;
	font-size: clamp(34px, 4.6vw, 56px);
	line-height: 1.1;
	letter-spacing: -0.02em;
	color: #fff;
	max-width: 13ch;
}
.dr-accent { color: var(--wp--preset--color--bright, #00d082); }

.dr-hero__lead {
	margin: 0 0 28px;
	font-size: 19.5px;
	line-height: 1.6;
	color: var(--wp--preset--color--on-dark, #cfe6dc);
	max-width: 540px;
}
.dr-hero__cta { align-items: center; }
.dr-hero__micro {
	margin: 26px 0 0;
	font-size: 14px;
	color: var(--wp--preset--color--on-dark-soft, #bcd8cd);
}

/* Buttons — primary (bright) + ghost (outline on dark) */
.dr-btn-primary .wp-block-button__link {
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 16px;
	background: var(--wp--preset--color--bright, #00d082);
	color: var(--wp--custom--color--on-bright, #04231a);
	padding: 15px 28px;
	border-radius: var(--wp--custom--radius--button, 12px);
	box-shadow: 0 14px 30px -12px rgba(0, 208, 130, .6);
	transition: all 190ms ease;
}
.dr-btn-primary .wp-block-button__link:hover { background: var(--wp--custom--color--bright-hover, #12e08f); color: var(--wp--custom--color--on-bright, #04231a); transform: translateY(-2px); }
.dr-btn-ghost .wp-block-button__link {
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600;
	font-size: 16px;
	background: transparent;
	border: 1px solid rgba(255, 255, 255, .35);
	color: #fff;
	padding: 14px 26px;
	border-radius: var(--wp--custom--radius--button, 12px);
	transition: all 190ms ease;
}
.dr-btn-ghost .wp-block-button__link:hover { background: rgba(255, 255, 255, .1); border-color: #fff; color: #fff; }

/* Glass panel (hero right column) */
.dr-glass {
	background: rgba(255, 255, 255, .05);
	border: 1px solid rgba(255, 255, 255, .12);
	backdrop-filter: blur(6px);
	-webkit-backdrop-filter: blur(6px);
	border-radius: var(--wp--custom--radius--glass-panel, 22px);
	padding: 14px 14px 18px;
}
.dr-glass__shot img { border-radius: var(--wp--custom--radius--image, 14px); width: 100%; }
.dr-glass__stats { margin-top: 18px; gap: 16px; }
.dr-glass__num {
	margin: 0;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800;
	font-size: 24px;
	color: #fff;
}
.dr-glass__cap { margin: 4px 0 0; font-size: 13px; color: var(--wp--preset--color--on-dark-pill, #cfe2da); }

/* Trust bar */
.dr-trust {
	background: var(--wp--preset--color--deep, #0f2a22);
	padding: 22px max(22px, calc((100% - 1200px) / 2));
	border-top: 1px solid rgba(255, 255, 255, .14);
	font-size: 14.5px;
	color: var(--wp--preset--color--on-dark-mute, #9fc4b7);
	text-align: center;
}
.dr-trust__item { margin: 0; }
.dr-trust__item strong { color: var(--wp--preset--color--on-dark-bold, #dfeee7); font-weight: 600; }

/* =====================================================================
   SHARED SECTION SCAFFOLD
   ===================================================================== */
/* Top-level sections sit flush — no inter-block margin (WP's default block gap
   showed as white strips between the full-bleed dark sections). */
.wp-block-post-content > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
/* No white gap between header / main / footer either (WP block gap) */
.wp-site-blocks > * { margin-block-start: 0 !important; margin-block-end: 0 !important; }
main.wp-block-group { margin-top: 0 !important; margin-bottom: 0 !important; }

.dr-section { padding-block: 88px; }
.dr-section--soft { background: var(--wp--preset--color--bg-soft, #f3f8f5); }
.dr-section__head { max-width: 620px; margin: 0 auto 48px; text-align: center; }
.dr-h2 {
	margin: 0 0 16px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800;
	font-size: clamp(28px, 4vw, 44px);
	line-height: 1.15;
	letter-spacing: -0.02em;
	color: var(--wp--preset--color--deep, #0f2a22);
}
.dr-h2--on-dark { color: #fff; }
.dr-lead { margin: 0; font-size: 19px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-section__row { margin-bottom: 40px; align-items: flex-end; gap: 16px; }
.dr-section__row .dr-h2 { margin: 0; }
.dr-morelink { margin: 0; }
.dr-morelink a {
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--forest, #0a5c43); text-decoration: none;
}
.dr-grid { align-items: stretch; }

/* Cards (services) */
.dr-card {
	background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8);
	border-radius: var(--wp--custom--radius--card, 16px); padding: 26px; height: 100%;
	transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease;
}
.dr-card:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-card__icon {
	width: 44px; height: 44px; border-radius: var(--wp--custom--radius--button, 12px); margin-bottom: 16px;
	background: var(--wp--preset--color--bg-mint, #eaf6f0);
	display: flex; align-items: center; justify-content: center;
}
.dr-card__h { margin: 0 0 8px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-card__p { margin: 0 0 14px; font-size: 15.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-card__link { margin: 0; }
.dr-card__link a { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--forest, #0a5c43); text-decoration: none; }

/* Industry pills */
.dr-pill { margin: 0; height: 100%; }
.dr-pill a {
	display: flex; align-items: center; gap: 14px; height: 100%;
	background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8);
	border-radius: var(--wp--custom--radius--card, 16px); padding: 18px 22px; text-decoration: none;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 17px;
	color: var(--wp--preset--color--deep, #0f2a22);
	transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease;
}
.dr-pill a:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-pill a span { margin-left: auto; color: var(--wp--preset--color--forest, #0a5c43); font-weight: 600; }

/* Why-us + Featured (dark two-column) */
.dr-why { background: linear-gradient(150deg, var(--wp--preset--color--green, #0e8c63), var(--wp--preset--color--forest, #0a5c43) 55%, var(--wp--preset--color--deep, #0f2a22)); padding-block: 88px; }
.dr-featured { background: linear-gradient(160deg, var(--wp--preset--color--forest, #0a5c43) 0%, var(--wp--custom--color--forest-deep, #0d3b2c) 60%, var(--wp--preset--color--deep, #0f2a22) 100%); padding-block: 88px; }
.dr-why__lead, .dr-featured .dr-why__lead { margin: 0 0 24px; font-size: 17px; line-height: 1.65; color: var(--wp--preset--color--on-dark, #cfe6dc); max-width: 540px; }
.dr-point {
	margin: 0; background: rgba(255, 255, 255, .06); border: 1px solid rgba(255, 255, 255, .14);
	backdrop-filter: blur(6px); -webkit-backdrop-filter: blur(6px);
	border-radius: var(--wp--custom--radius--glass-panel, 22px); padding: 16px 20px; color: var(--wp--preset--color--on-dark-2, #c3ddd2); font-size: 15.5px; line-height: 1.55;
}
.dr-point strong { color: #fff; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; }
.dr-why__shot img { border-radius: var(--wp--custom--radius--image, 14px); width: 100%; }
.dr-ba__img img { border-radius: var(--wp--custom--radius--image, 14px); width: 100%; height: 240px; object-fit: cover; object-position: top; }
.dr-glass__stats { margin-top: 18px; padding-inline: 4px; }

/* Results stat tiles */
.dr-stat { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 28px 26px; text-align: center; height: 100%; }
.dr-stat__num { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: 46px; letter-spacing: -0.02em; color: var(--wp--custom--color--green-deepest, #053a2b); }
.dr-stat__label { margin: 6px 0 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }

/* Featured stats + badge + before/after */
.dr-badge {
	display: inline-block; margin: 0 0 18px; background: var(--wp--preset--color--amber, #f6a82c); color: var(--wp--custom--color--amber-ink, #3a2600);
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12.5px;
	text-transform: uppercase; letter-spacing: .1em; padding: 6px 14px; border-radius: var(--wp--custom--radius--pill, 100px);
}
.dr-featured__stats { gap: 32px; margin-bottom: 28px; }
.dr-fstat__num { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: 34px; color: #fff; }
.dr-fstat__cap { margin: 2px 0 0; font-size: 13.5px; color: var(--wp--preset--color--on-dark-2, #c3ddd2); }
.dr-ba__label { margin: 0 0 8px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12.5px; text-transform: uppercase; letter-spacing: .1em; color: var(--wp--preset--color--on-dark-pill, #cfe2da); }

/* How-it-works steps */
.dr-step { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 26px; height: 100%; }
.dr-step__n {
	width: 44px; height: 44px; border-radius: var(--wp--custom--radius--button, 12px); margin: 0 0 16px;
	background: linear-gradient(140deg, var(--wp--preset--color--green, #0e8c63), var(--wp--preset--color--forest, #0a5c43)); color: #fff;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 18px;
	display: flex; align-items: center; justify-content: center;
}

/* Testimonials */
.dr-quote { background: #fff; border-radius: var(--wp--custom--radius--card, 16px); box-shadow: var(--wp--custom--shadow--sm, 0 8px 24px -14px rgba(10, 60, 45, .3)); padding: 28px; height: 100%; }
.dr-stars { margin: 0 0 14px; color: var(--wp--preset--color--amber, #f6a82c); font-size: 16px; letter-spacing: 2px; }
.dr-quote__text { margin: 0 0 18px; font-size: 15.5px; line-height: 1.65; color: var(--wp--custom--color--quote-text, #33463f); }
.dr-quote__by { flex-wrap: nowrap; }
.dr-avatar img { width: 42px; height: 42px; border-radius: var(--wp--custom--radius--pill, 100px); object-fit: cover; }
.dr-quote__name { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-quote__role { margin: 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }

/* Resources article cards */
.dr-article { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); overflow: hidden; height: 100%; transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease; }
.dr-article:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-article__img { margin: 0; }
.dr-article__img img { width: 100%; display: block; aspect-ratio: 16 / 9; object-fit: cover; }
.dr-article__h { margin: 0 0 10px; padding: 22px 24px 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; line-height: 1.3; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-article__meta { margin: 0; padding: 0 24px 22px; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }

/* Closing CTA */
.dr-cta-final {
	padding-block: 88px; text-align: center;
	background: radial-gradient(600px 400px at 85% 0%, rgba(0, 208, 130, .28), transparent 60%), linear-gradient(160deg, var(--wp--preset--color--forest, #0a5c43) 0%, var(--wp--custom--color--forest-deep, #0d3b2c) 60%, var(--wp--preset--color--deep, #0f2a22) 100%);
}
.dr-cta-final .dr-h2 { margin: 0 0 16px; }
.dr-cta-final__lead { margin: 0 0 30px; font-size: 19px; line-height: 1.6; color: var(--wp--preset--color--on-dark, #cfe6dc); }

/* WordPress constrained layout auto-centers fixed-width children (margin:auto !important).
   Force the card icon and step number back to the top-left, per design. */
.dr-card > .dr-card__icon,
.dr-step > .dr-step__n {
	margin-left: 0 !important;
	margin-right: auto !important;
}

/* =====================================================================
   INNER-PAGE PATTERNS (About / Platform / Pricing / Contact / Service)
   ===================================================================== */
/* Sub-page hero (dark: breadcrumb + copy + media) */
.dr-subhero {
	background:
		radial-gradient(600px 420px at 88% -10%, rgba(0, 208, 130, .28), transparent 62%),
		linear-gradient(160deg, var(--wp--preset--color--forest, #0a5c43) 0%, var(--wp--custom--color--forest-deep, #0d3b2c) 60%, var(--wp--preset--color--deep, #0f2a22) 100%);
	padding: 64px 0 72px;
}
.dr-subhero__inner { align-items: center; gap: 48px; }
.dr-subhero__h1 {
	margin: 0 0 18px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800; font-size: clamp(34px, 4.6vw, 56px); line-height: 1.1;
	letter-spacing: -0.02em; color: #fff; max-width: 16ch;
}
.dr-subhero__lead { margin: 0; font-size: 19.5px; line-height: 1.6; color: var(--wp--preset--color--on-dark, #cfe6dc); max-width: 540px; }
.dr-subhero--center .dr-subhero__inner { justify-content: center; text-align: center; }
.dr-subhero--center .dr-subhero__h1,
.dr-subhero--center .dr-subhero__lead { margin-inline: auto; }
.dr-subhero--center .dr-crumb { justify-content: center; }

/* Breadcrumb */
.dr-crumb { margin: 0 0 22px; font-size: 14px; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.dr-crumb a { color: var(--wp--preset--color--on-dark-link, #a9c6bb); text-decoration: none; }
.dr-crumb a:hover { color: #fff; }
.dr-crumb span { color: var(--wp--preset--color--on-dark-mute, #9fc4b7); }
.dr-crumb .dr-crumb__cur { color: var(--wp--preset--color--on-dark, #cfe6dc); font-weight: 500; }
.dr-crumb--light a { color: var(--wp--preset--color--forest, #0a5c43); }
.dr-crumb--light span { color: var(--wp--custom--color--text-faint, #9bb3aa); }
.dr-crumb--light .dr-crumb__cur { color: var(--wp--preset--color--body, #48605a); }

/* Photo / asset placeholders (design ships greyboxes — keep build note visible) */
.dr-ph {
	border-radius: var(--wp--custom--radius--image, 14px); border: 1px dashed var(--wp--custom--color--border-dash, #cfe0d8); background: var(--wp--preset--color--bg-mint, #eaf6f0);
	display: flex; align-items: center; justify-content: center; text-align: center;
	padding: 22px; color: var(--wp--custom--color--placeholder-text, #5c7b70); font-size: 12.5px; line-height: 1.5;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	min-height: 260px;
}
.dr-ph--on-dark { background: rgba(255, 255, 255, .05); border-color: rgba(255, 255, 255, .18); color: var(--wp--preset--color--on-dark-link, #a9c6bb); }

/* Generic two-column content row */
.dr-split__inner { gap: 48px; align-items: center; }
.dr-split--top .dr-split__inner { align-items: flex-start; }

/* Prose paragraphs */
.dr-prose { margin: 0 0 16px; font-size: 16.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); max-width: 68ch; }
.dr-prose:last-child { margin-bottom: 0; }
.dr-prose strong { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; color: var(--wp--preset--color--deep, #0f2a22); }

/* Left-aligned section head variant */
.dr-section__head--left { max-width: 620px; margin: 0 0 40px; text-align: left; }

/* Team cards (image-top) */
.dr-team {
	background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px);
	overflow: hidden; height: 100%; color: var(--wp--preset--color--deep, #0f2a22); text-decoration: none; display: block;
	transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease;
}
a.dr-team:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-team__media { min-height: 200px; border-radius: 0; border-left: 0; border-right: 0; border-top: 0; }
.dr-team__body { padding: 20px 22px; }
.dr-team__name { margin: 0 0 2px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-team__role { margin: 0 0 8px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12.5px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-team__bio { margin: 0; font-size: 14px; line-height: 1.55; color: var(--wp--preset--color--body, #48605a); }

/* Credentials rows */
.dr-cred { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 24px; display: flex; align-items: center; gap: 16px; height: 100%; }
.dr-cred__logo { width: 48px; height: 48px; flex: 0 0 48px; border-radius: var(--wp--custom--radius--button, 12px); background: var(--wp--preset--color--bg-mint, #eaf6f0); border: 1px dashed var(--wp--custom--color--border-dash, #cfe0d8); min-height: 0; }
.dr-cred__name { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 15.5px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-cred__desc { margin: 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }

/* Build notes (visible placeholder guidance) */
.dr-note { margin: 22px 0 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }
.dr-note--center { text-align: center; }

/* NAP / contact card */
.dr-nap { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 28px; display: flex; flex-direction: column; gap: 16px; height: 100%; }
.dr-nap__k { margin: 0 0 2px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-nap__v { margin: 0; font-size: 15.5px; line-height: 1.5; color: var(--wp--preset--color--body, #48605a); }
.dr-nap__v a { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 17px; color: var(--wp--preset--color--forest, #0a5c43); text-decoration: none; }
.dr-nap__v a:hover { color: var(--wp--preset--color--green, #0e8c63); }

/* ---- Platform hero (dark; stacked copy + wide panel) ---- */
.dr-phero {
	background:
		radial-gradient(700px 480px at 88% -10%, rgba(0, 208, 130, .28), transparent 62%),
		linear-gradient(160deg, var(--wp--preset--color--forest, #0a5c43) 0%, var(--wp--custom--color--forest-deep, #0d3b2c) 60%, var(--wp--preset--color--deep, #0f2a22) 100%);
	padding: 64px 0 88px;
}
.dr-phero__h1 {
	margin: 0 0 18px;
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 800; font-size: clamp(34px, 4.6vw, 56px); line-height: 1.1;
	letter-spacing: -0.02em; color: #fff; max-width: 17ch;
}
.dr-phero__lead { margin: 0 0 28px; font-size: 19.5px; line-height: 1.6; color: var(--wp--preset--color--on-dark, #cfe6dc); max-width: 540px; }
.dr-phero__cta { margin-bottom: 40px; }
.dr-phero .dr-glass { padding: 22px; }
.dr-phero__cap { margin: 14px 4px 0; font-size: 13.5px; color: var(--wp--preset--color--on-dark-2, #c3ddd2); }

/* ---- Comparison cards (owning vs renting) ---- */
.dr-compare-grid { max-width: 920px; margin-inline: auto; }
.dr-compare { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 28px; height: 100%; }
.dr-compare--hl { border: 2px solid var(--wp--preset--color--forest, #0a5c43); }
.dr-compare__h { margin: 0 0 18px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }

/* Check / cross lists (shared by comparison + module rows) */
.dr-cklist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 14px; font-size: 15.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-cklist li { display: flex; gap: 12px; margin: 0; }
.dr-cklist .dr-ck { color: var(--wp--preset--color--forest, #0a5c43); font-weight: 700; flex-shrink: 0; }
.dr-cklist .dr-x { color: var(--wp--custom--color--danger-soft, #ff9b8f); font-weight: 700; flex-shrink: 0; }
.dr-cklist--tight { gap: 8px; font-size: 15px; }

/* ---- Module walkthrough rows ---- */
.dr-modules { display: flex; flex-direction: column; gap: 48px; }
.dr-module__h { margin: 0 0 10px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-module__p { margin: 0 0 16px; font-size: 16.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); max-width: 60ch; }
.dr-shotcap { margin: 10px 4px 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }

/* ---- Centered narrow band (how you get it) ---- */
.dr-band { max-width: 720px; margin-inline: auto; text-align: center; }
.dr-band .dr-h2 { margin: 0 0 16px; }
.dr-band__lead { margin: 0 0 22px; font-size: 16.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); }
.dr-btn-forest .wp-block-button__link {
	font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif;
	font-weight: 600; font-size: 15px; background: var(--wp--preset--color--forest, #0a5c43); color: #fff;
	padding: 14px 26px; border-radius: var(--wp--custom--radius--button, 12px); transition: all 190ms ease;
}
.dr-btn-forest .wp-block-button__link:hover { background: var(--wp--preset--color--green, #0e8c63); color: #fff; }

/* ---- FAQ ---- */
.dr-faq { max-width: 840px; margin-inline: auto; }
.dr-faq__head { text-align: center; margin-bottom: 40px; }
.dr-faq__card { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 8px 32px; }
.dr-faq__item { padding: 24px 0; border-bottom: 1px solid var(--wp--preset--color--line, #e4ece8); }
.dr-faq__item:last-child { border-bottom: 0; }
.dr-faq__q { margin: 0 0 8px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-faq__a { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); max-width: 68ch; }

/* ---- Light hero (Pricing) ---- */
.dr-lhero { background: #fff; padding: 56px 0 48px; }
.dr-lhero__h1 { margin: 0 0 14px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(34px, 4.6vw, 56px); line-height: 1.1; letter-spacing: -0.02em; color: var(--wp--preset--color--deep, #0f2a22); max-width: 18ch; }
.dr-lhero__lead { margin: 0; font-size: 19px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); max-width: 620px; }

/* ---- Pricing tier cards ---- */
.dr-tier { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 28px; height: 100%; }
.dr-tier--pop { border-top: 4px solid var(--wp--preset--color--bright, #00d082); box-shadow: var(--wp--custom--shadow--sm, 0 8px 24px -14px rgba(10, 60, 45, .3)); position: relative; }
.dr-tier__badge { position: absolute; top: -13px; right: 24px; background: var(--wp--preset--color--amber, #f6a82c); color: var(--wp--custom--color--amber-ink, #3a2600); font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; padding: 5px 13px; border-radius: var(--wp--custom--radius--pill, 100px); }
.dr-tier__name { margin: 0 0 4px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-tier__desc { margin: 0 0 14px; font-size: 14px; color: var(--wp--preset--color--body, #48605a); }
.dr-tier__price { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(34px, 4vw, 50px); line-height: 1; color: var(--wp--custom--color--green-deepest, #053a2b); }
.dr-tier__price span { font-size: 16px; font-weight: 600; color: var(--wp--preset--color--body, #48605a); }
.dr-tier__note { margin: 8px 0 20px; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }
.dr-tier .dr-cklist { margin-bottom: 24px; gap: 11px; font-size: 15px; line-height: 1.5; }
.dr-tier .dr-cklist strong { color: var(--wp--preset--color--deep, #0f2a22); }
.dr-tier__cta .wp-block-button { width: 100%; }
.dr-tier__cta .wp-block-button__link { width: 100%; text-align: center; display: block; }

/* ---- Add-on cards (smaller) ---- */
.dr-card--sm { padding: 24px; }
.dr-card--sm .dr-card__h { font-size: 18px; margin-bottom: 6px; }
.dr-card--sm .dr-card__p { font-size: 14.5px; margin-bottom: 10px; }
.dr-addon__price { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 17px; color: var(--wp--custom--color--green-deepest, #053a2b); }
.dr-addon__price span { font-size: 13px; font-weight: 500; color: var(--wp--preset--color--body, #48605a); }

/* ---- Pricing comparison table ---- */
.dr-ptable-wrap { border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); overflow-x: auto; }

/* ---- Terms band (mint) ---- */
.dr-terms { background: var(--wp--preset--color--bg-mint, #eaf6f0); padding-block: 64px; }
.dr-terms .dr-h2 { font-size: clamp(24px, 3.2vw, 34px); margin: 0 0 20px; }
.dr-terms__h { margin: 0 0 6px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 17px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-terms__p { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); }

/* ---- Not-included list ---- */
.dr-notinc { max-width: 720px; margin-inline: auto; }
.dr-notinc .dr-cklist strong { color: var(--wp--preset--color--deep, #0f2a22); }

/* ---- Solo testimonial ---- */
.dr-quote--solo { max-width: 720px; margin-inline: auto; padding: 32px; }
.dr-quote--solo .dr-quote__text { font-size: 16.5px; }
.dr-ph--avatar { width: 44px; height: 44px; min-height: 44px; border-radius: var(--wp--custom--radius--pill, 100px); flex: 0 0 44px; padding: 0; }

/* ---- Service pillar: single-column dark hero ---- */
.dr-subhero__btn { margin-top: 28px; }

/* ---- Numbered step rows (service "how the work runs") ---- */
.dr-steps { max-width: 840px; margin-inline: auto; display: flex; flex-direction: column; gap: 22px; }
.dr-steprow { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 26px; }
.dr-steprow__inner { gap: 20px; align-items: flex-start; }
.dr-steprow__n { width: 44px; height: 44px; min-height: 44px; flex: 0 0 44px; border-radius: var(--wp--custom--radius--button, 12px); background: linear-gradient(140deg, var(--wp--preset--color--green, #0e8c63), var(--wp--preset--color--forest, #0a5c43)); color: #fff; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 18px; display: flex; align-items: center; justify-content: center; }
.dr-steprow__h { margin: 0 0 6px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-steprow__p { margin: 0; font-size: 15.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); max-width: 68ch; }

/* ---- Light centered closing CTA (service) ---- */
.dr-cta-light { padding-block: 88px; text-align: center; background: #fff; }
.dr-cta-light .dr-band__lead { font-size: 19px; margin-bottom: 30px; }

/* ---- Contact page ---- */
.dr-formcard { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 32px; }
.dr-nap--soft { background: var(--wp--preset--color--bg-soft, #f3f8f5); }
.dr-nap__title { margin: 0 0 4px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-next { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 26px; }
.dr-next__h { margin: 0 0 16px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-nextrow { margin-bottom: 14px; }
.dr-nextrow:last-child { margin-bottom: 0; }
.dr-nextrow__inner { gap: 14px; align-items: flex-start; }
.dr-nextrow__n { width: 32px; height: 32px; min-height: 32px; flex: 0 0 32px; border-radius: 10px; background: linear-gradient(140deg, var(--wp--preset--color--green, #0e8c63), var(--wp--preset--color--forest, #0a5c43)); color: #fff; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 14px; display: flex; align-items: center; justify-content: center; }
.dr-nextrow__p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-nextrow__p strong { color: var(--wp--preset--color--deep, #0f2a22); }
/* Forminator brand fit (scoped to the contact form card) */
.dr-formcard .forminator-ui.forminator-custom-form input[type="text"],
.dr-formcard .forminator-ui.forminator-custom-form input[type="email"],
.dr-formcard .forminator-ui.forminator-custom-form input[type="tel"],
.dr-formcard .forminator-ui.forminator-custom-form select,
.dr-formcard .forminator-ui.forminator-custom-form textarea { border-radius: var(--wp--custom--radius--button, 12px) !important; border: 1px solid var(--wp--preset--color--line, #e4ece8) !important; }
.dr-formcard .forminator-ui.forminator-custom-form button[type="submit"],
.dr-formcard .forminator-button-submit { background: var(--wp--preset--color--bright, #00d082) !important; color: var(--wp--custom--color--on-bright, #04231a) !important; border-radius: var(--wp--custom--radius--button, 12px) !important; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif !important; font-weight: 600 !important; box-shadow: 0 14px 30px -12px rgba(0, 208, 130, .6) !important; }

/* ---- Resources / Listing hub ---- */
.dr-hubintro { max-width: 760px; margin: 0 auto 0 0; }
.dr-hubintro .dr-prose a { font-weight: 500; }
.dr-featart { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); overflow: hidden; height: 100%; color: var(--wp--preset--color--deep, #0f2a22); text-decoration: none; display: block; transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease; }
a.dr-featart:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-featart__inner { align-items: stretch; gap: 0; }
.dr-featart__media { min-height: 240px; border: 0; border-radius: 0; }
.dr-featart__body { padding: 32px; }
.dr-featart__h { margin: 0 0 12px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: clamp(21px, 2.4vw, 26px); line-height: 1.25; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-featart__ex { margin: 0 0 12px; font-size: 15.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-featart__meta { margin: 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }
.dr-catnav { display: flex; gap: 10px; flex-wrap: wrap; }
.dr-catnav a { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); color: var(--wp--preset--color--forest, #0a5c43); font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 13.5px; padding: 8px 17px; border-radius: var(--wp--custom--radius--pill, 100px); text-decoration: none; transition: border-color 190ms ease, color 190ms ease; }
.dr-catnav a:hover { border-color: var(--wp--preset--color--on-dark, #cfe6db); color: var(--wp--preset--color--green, #0e8c63); }
.dr-catnav a.is-active { background: var(--wp--preset--color--bg-mint, #eaf6f0); border-color: transparent; }
.dr-post { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); overflow: hidden; height: 100%; color: var(--wp--preset--color--deep, #0f2a22); text-decoration: none; transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease; }
a.dr-post:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-post__media { min-height: 150px; border: 0; border-radius: 0; }
.dr-post__body { padding: 22px 24px; display: flex; flex-direction: column; gap: 8px; flex: 1; }
.dr-post__cat { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-post__h { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 19px; line-height: 1.3; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-post__ex { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-post__meta { margin: auto 0 0; padding-top: 10px; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }
.dr-pagination { display: flex; gap: 8px; justify-content: center; align-items: center; flex-wrap: wrap; }
.dr-pagination a, .dr-pagination span { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; padding: 9px 15px; border-radius: var(--wp--custom--radius--button, 12px); text-decoration: none; color: var(--wp--preset--color--forest, #0a5c43); border: 1px solid var(--wp--preset--color--line, #e4ece8); min-width: 20px; text-align: center; }
.dr-pagination a.is-active { background: var(--wp--preset--color--forest, #0a5c43); color: #fff; border-color: transparent; }
.dr-pagination .dr-pg-nav { border: 0; }
.dr-pagination .dr-pg-disabled { border: 0; opacity: .5; }
.dr-magnet { background: var(--wp--preset--color--bg-mint, #eaf6f0); padding-block: 64px; text-align: center; }
.dr-magnet__h { margin: 0 0 12px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(24px, 3.2vw, 34px); line-height: 1.2; letter-spacing: -0.02em; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-magnet__p { margin: 0 0 24px; font-size: 16.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-magnet__form { display: flex; gap: 12px; max-width: 460px; margin: 0 auto; flex-wrap: wrap; justify-content: center; }
.dr-magnet__form input { flex: 1; min-width: 220px; font-size: 15.5px; color: var(--wp--preset--color--deep, #0f2a22); padding: 13px 15px; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--button, 12px); background: #fff; }
.dr-magnet__form button { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 15px; background: var(--wp--preset--color--bright, #00d082); color: var(--wp--custom--color--on-bright, #04231a); padding: 13px 24px; border: none; border-radius: var(--wp--custom--radius--button, 12px); cursor: pointer; box-shadow: 0 14px 30px -12px rgba(0, 208, 130, .6); }

/* ---- Template gallery ---- */
.dr-tpl { display: flex; flex-direction: column; background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); overflow: hidden; height: 100%; color: var(--wp--preset--color--deep, #0f2a22); text-decoration: none; transition: transform 190ms ease, box-shadow 190ms ease, border-color 190ms ease; }
a.dr-tpl:hover { transform: translateY(-4px); box-shadow: var(--wp--custom--shadow--default, 0 18px 44px -20px rgba(10, 60, 45, .35)); border-color: var(--wp--preset--color--on-dark, #cfe6db); }
.dr-tpl__media { min-height: 190px; border: 0; border-radius: 0; }
.dr-tpl__body { padding: 22px 24px; display: flex; flex-direction: column; gap: 10px; flex: 1; }
.dr-tpl__h { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 21px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-tpl__p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-tags { display: flex; gap: 8px; flex-wrap: wrap; }
.dr-tag { background: var(--wp--preset--color--bg-mint, #eaf6f0); color: var(--wp--preset--color--forest, #0a5c43); font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12px; padding: 4px 12px; border-radius: var(--wp--custom--radius--pill, 100px); }
.dr-tpl__view { margin-top: auto; padding-top: 8px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-incl { background: #fff; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 24px; display: flex; gap: 16px; align-items: flex-start; height: 100%; }
.dr-incl__icon { width: 44px; height: 44px; flex: 0 0 44px; border-radius: var(--wp--custom--radius--button, 12px); background: var(--wp--preset--color--bg-mint, #eaf6f0); color: var(--wp--preset--color--forest, #0a5c43); display: flex; align-items: center; justify-content: center; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 16px; }
.dr-incl__h { margin: 0 0 4px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 17px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-incl__p { margin: 0; font-size: 14.5px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }
.dr-featband { background: var(--wp--preset--color--bg-soft, #f3f8f5); border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 48px 40px; display: flex; flex-wrap: wrap; gap: 32px; align-items: center; justify-content: space-between; }
.dr-featband__h { margin: 0 0 10px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(24px, 3.2vw, 34px); line-height: 1.2; letter-spacing: -0.02em; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-featband__p { margin: 0; font-size: 16.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); max-width: 60ch; }

/* ---- Article / single post ---- */
.dr-article-hero { background: #fff; padding: 48px 0 8px; }
.dr-artmeta { display: flex; gap: 12px; flex-wrap: wrap; align-items: center; font-size: 14px; color: var(--wp--preset--color--body, #48605a); margin: 0; }
.dr-artmeta__cat { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-art__title { margin: 14px 0 16px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(30px, 4.2vw, 48px); line-height: 1.12; letter-spacing: -0.02em; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-byline { display: flex; align-items: center; gap: 12px; }
.dr-byline__name { margin: 0; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-byline__meta { margin: 0; font-size: 13.5px; color: var(--wp--preset--color--body, #48605a); }
.dr-prose-wrap { max-width: 720px; margin-inline: auto; }
.dr-prose-wrap h2 { margin: 34px 0 12px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: clamp(24px, 3vw, 32px); line-height: 1.2; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-prose-wrap h3 { margin: 26px 0 10px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 20px; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-prose-wrap p { margin: 0 0 18px; font-size: 17px; line-height: 1.7; color: var(--wp--preset--color--body, #48605a); }
.dr-prose-wrap ul { margin: 0 0 18px; padding-left: 22px; font-size: 17px; line-height: 1.7; color: var(--wp--preset--color--body, #48605a); }
.dr-prose-wrap li { margin: 0 0 8px; }
.dr-prose-wrap blockquote { margin: 24px 0; padding: 4px 0 4px 22px; border-left: 3px solid var(--wp--preset--color--bright, #00d082); font-size: 19px; line-height: 1.6; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-prose-wrap a { color: var(--wp--preset--color--forest, #0a5c43); text-decoration: underline; }

/* ---- Author page ---- */
.dr-authcard { background: var(--wp--preset--color--bg-soft, #f3f8f5); border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--card, 16px); padding: 32px; }
.dr-authcard__inner { gap: 24px; align-items: center; }
.dr-auth__name { margin: 0 0 4px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 800; font-size: clamp(26px, 3.4vw, 38px); line-height: 1.1; letter-spacing: -0.02em; color: var(--wp--preset--color--deep, #0f2a22); }
.dr-auth__role { margin: 0 0 12px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 13px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-auth__bio { margin: 0; font-size: 16.5px; line-height: 1.65; color: var(--wp--preset--color--body, #48605a); }
.dr-ph--auth { width: 120px; height: 120px; min-height: 120px; flex: 0 0 120px; border-radius: var(--wp--custom--radius--pill, 100px); padding: 0; font-size: 11px; }

/* ---- Search results ---- */
.dr-searchform { display: flex; gap: 12px; max-width: 560px; flex-wrap: wrap; }
.dr-searchform input { flex: 1; min-width: 240px; font-size: 16px; color: var(--wp--preset--color--deep, #0f2a22); padding: 14px 16px; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--button, 12px); background: #fff; }
.dr-searchform button { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 15px; background: var(--wp--preset--color--forest, #0a5c43); color: #fff; padding: 14px 26px; border: none; border-radius: var(--wp--custom--radius--button, 12px); cursor: pointer; }
.dr-result { padding: 22px 0; border-bottom: 1px solid var(--wp--preset--color--line, #e4ece8); }
.dr-result__cat { margin: 0 0 6px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 12px; text-transform: uppercase; letter-spacing: .14em; color: var(--wp--preset--color--forest, #0a5c43); }
.dr-result__h { margin: 0 0 6px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 700; font-size: 20px; line-height: 1.3; }
.dr-result__h a { color: var(--wp--preset--color--deep, #0f2a22); text-decoration: none; }
.dr-result__h a:hover { color: var(--wp--preset--color--green, #0e8c63); }
.dr-result__url { margin: 0 0 6px; font-size: 13px; color: var(--wp--custom--color--text-muted, #7d968c); }
.dr-result__ex { margin: 0; font-size: 15px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); }

/* ---- 404 ---- */
.dr-404 { max-width: 720px; margin-inline: auto; text-align: center; padding-block: 72px; }
.dr-404 .dr-lhero__h1 { max-width: none; }
.dr-404__lead { margin: 0 auto 32px; font-size: 19px; line-height: 1.6; color: var(--wp--preset--color--body, #48605a); max-width: 540px; }
.dr-404__search { display: flex; gap: 12px; max-width: 460px; margin: 0 auto 40px; flex-wrap: wrap; justify-content: center; }
.dr-404__search input { flex: 1; min-width: 240px; font-size: 15.5px; color: var(--wp--preset--color--deep, #0f2a22); padding: 13px 15px; border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--button, 12px); background: #fff; }
.dr-404__search button { font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 15px; background: var(--wp--preset--color--forest, #0a5c43); color: #fff; padding: 13px 24px; border: none; border-radius: var(--wp--custom--radius--button, 12px); cursor: pointer; }
.dr-404__chips { display: grid; grid-template-columns: repeat(auto-fit, minmax(160px, 1fr)); gap: 12px; max-width: 620px; margin: 0 auto 40px; }
.dr-404__chips a { background: var(--wp--preset--color--bg-soft, #f3f8f5); border: 1px solid var(--wp--preset--color--line, #e4ece8); border-radius: var(--wp--custom--radius--button, 12px); padding: 14px 18px; font-family: var(--wp--preset--font-family--poppins, Poppins), sans-serif; font-weight: 600; font-size: 14.5px; color: var(--wp--preset--color--forest, #0a5c43); text-decoration: none; transition: border-color 190ms ease, color 190ms ease; }
.dr-404__chips a:hover { border-color: var(--wp--preset--color--on-dark, #cfe6db); color: var(--wp--preset--color--green, #0e8c63); }

/* =====================================================================
   NAV FINESSE — match design (darker links, tight ▾ caret, tighter items)
   ===================================================================== */
.dr-nav .wp-block-navigation-item__content { color: var(--wp--custom--color--deep-muted, #2b433b) !important; padding-left: 10px; padding-right: 10px; }
.dr-nav .wp-block-navigation-item__content:hover,
.dr-nav .wp-block-navigation-item.has-child:hover > .wp-block-navigation-item__content { color: var(--wp--preset--color--green, #0e8c63) !important; }
.dr-nav .wp-block-navigation__submenu-icon { display: none; }
.dr-nav .wp-block-navigation-submenu__toggle { width: 0; min-width: 0; padding: 0; margin: 0; border: 0; overflow: hidden; }
.dr-nav .wp-block-navigation-submenu > .wp-block-navigation-item__content::after { content: "▾"; font-size: 11px; margin-left: 4px; position: relative; top: -1px; display: inline-block; }
/* keep dropdown-panel links on the design's darker ink too */
.dr-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content { color: var(--wp--custom--color--deep-muted, #2b433b) !important; }
.dr-nav .wp-block-navigation__submenu-container .wp-block-navigation-item__content:hover { color: var(--wp--preset--color--green, #0e8c63) !important; }

/* =====================================================================
   RESPONSIVE  (mobile / tablet)
   ===================================================================== */

/* Tablet & below: collapse the desktop phone link (nav → hamburger is native). */
@media (max-width: 1024px) {
	.dr-header__phone { display: none; }
	.dr-header__bar { gap: 16px; }
}

/* Stack all two-column rows. Our columns carry inline flex-basis (e.g. 56%),
   which overrides WordPress's default mobile stacking — so force 100% here. */
@media (max-width: 900px) {
	.dr-hero__inner,
	.dr-subhero__inner,
	.dr-split__inner,
	.dr-why__inner,
	.dr-featured__inner,
	.dr-beforeafter,
	.dr-footer__cols { flex-wrap: wrap; }

	.dr-hero__inner > .wp-block-column,
	.dr-subhero__inner > .wp-block-column,
	.dr-split__inner > .wp-block-column,
	.dr-why__inner > .wp-block-column,
	.dr-featured__inner > .wp-block-column,
	.dr-beforeafter > .wp-block-column,
	.dr-footer__cols > .wp-block-column { flex-basis: 100% !important; width: 100%; }

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

	/* mobile spacing — tighter, balanced */
	.dr-hero { padding: 56px 22px 60px; }
	.dr-hero__inner { gap: 30px; text-align: center; }
	.dr-hero__h1, .dr-hero__lead { max-width: 100%; margin-inline: auto; }
	.dr-hero__cta { justify-content: center; }
	.dr-subhero { padding: 48px 22px 54px; }
	.dr-subhero__inner { gap: 30px; text-align: center; }
	.dr-subhero__h1, .dr-subhero__lead { max-width: 100%; margin-inline: auto; }
	.dr-subhero .dr-crumb { justify-content: center; }
	.dr-phero { padding: 48px 22px 60px; }
	.dr-lhero { padding: 40px 22px 32px; }
	.dr-modules { gap: 34px; }
	.dr-section,
	.dr-why,
	.dr-featured,
	.dr-cta-final { padding-block: 56px; }
	.dr-why__inner,
	.dr-featured__inner,
	.dr-split__inner { gap: 30px; }
	.dr-section__head { margin-bottom: 34px; }
	.dr-section__row { margin-bottom: 26px; row-gap: 10px; }
	.dr-footer { padding-top: 48px; }
	.dr-footer__cols { gap: 28px 22px; padding-bottom: 40px; }
	.dr-footer__brand { flex-basis: 100% !important; }
	/* nav columns 2-up so the footer fills the width instead of one sparse column */
	.dr-footer__cols > .wp-block-column.dr-footer__nav { flex-basis: calc(50% - 11px) !important; width: auto !important; }
}

/* Phones */
@media (max-width: 600px) {
	.dr-header__bar { gap: 12px; min-height: 64px; }
	.dr-cta .wp-block-button__link { padding: 10px 15px; font-size: 14px; }
	.dr-hero { padding: 44px 22px 52px; }
	.dr-hero__h1 { font-size: clamp(30px, 8.6vw, 40px); }
	.dr-hero__lead { font-size: 17px; }
	.dr-hero__cta { flex-direction: column; align-items: center; }
	.dr-hero__cta .wp-block-button { flex: 0 0 auto; width: 100%; max-width: 320px; }
	.dr-hero__cta .wp-block-button__link { width: 100%; text-align: center; }
	.dr-section,
	.dr-why,
	.dr-featured,
	.dr-cta-final { padding-block: 48px; }
	.dr-h2 { font-size: clamp(26px, 7.4vw, 34px); }
	.dr-card,
	.dr-step,
	.dr-quote { padding: 22px; }
	.dr-stat__num { font-size: 36px; }
	.dr-featured__stats { gap: 22px; }
	/* results stat tiles 2-up on phones (were 4 big sparse full-width tiles) */
	.dr-grid:has(.dr-stat) { grid-template-columns: 1fr 1fr !important; }
	.dr-stat { padding: 22px 14px; }
	.dr-trust { font-size: 13.5px; }
	.dr-compare { padding: 22px; }
	.dr-faq__card { padding: 4px 20px; }
	.dr-faq__q { font-size: 17.5px; }
}

/* Small phones (iPhone SE / 320) */
@media (max-width: 380px) {
	.dr-hero__cta .wp-block-button { flex: 1 1 100%; }
	.dr-cta .wp-block-button__link { padding: 9px 12px; font-size: 13px; }
}

/* ===== Opt-in block styles (register_block_style) — additive, token-driven ===== */
.wp-block-group.is-style-dr-card{
	background: var(--wp--preset--color--bg, #ffffff);
	border: 1px solid var(--wp--preset--color--line, #e4ece8);
	border-radius: var(--wp--custom--radius--card, 16px);
	padding: var(--wp--preset--spacing--32, 32px);
	box-shadow: var(--wp--custom--shadow--sm, 0 8px 24px -14px rgba(10,60,45,.3));
}
.wp-block-group.is-style-dr-dark-panel{
	background: var(--wp--custom--color--forest-deep, #0d3b2c);
	color: var(--wp--preset--color--on-dark, #cfe6dc);
	border-radius: var(--wp--custom--radius--glass-panel, 22px);
	padding: var(--wp--preset--spacing--48, 48px);
}
.wp-block-group.is-style-dr-dark-panel :where(h1,h2,h3,h4,h5,h6){ color: var(--wp--preset--color--on-dark-max, #ffffff); }
.wp-block-group.is-style-dr-dark-panel a{ color: var(--wp--preset--color--on-dark-link, #a9c6bb); }
.wp-block-group.is-style-dr-mint-panel{
	background: var(--wp--preset--color--bg-mint, #eaf6f0);
	border: 1px solid var(--wp--preset--color--line, #e4ece8);
	border-radius: var(--wp--custom--radius--card, 16px);
	padding: var(--wp--preset--spacing--32, 32px);
}
.wp-block-button.is-style-dr-bright-cta > .wp-block-button__link{
	background: var(--wp--preset--color--bright, #00d082);
	color: var(--wp--custom--color--on-bright, #04231a);
	border: none;
	border-radius: var(--wp--custom--radius--button, 12px);
	font-weight: 600;
	transition: background 200ms ease;
}
.wp-block-button.is-style-dr-bright-cta > .wp-block-button__link:hover{
	background: var(--wp--custom--color--bright-hover, #12e08f);
}
.wp-block-button.is-style-dr-outline > .wp-block-button__link{
	background: transparent;
	color: var(--wp--preset--color--forest, #0a5c43);
	border: 1.5px solid currentColor;
	border-radius: var(--wp--custom--radius--button, 12px);
	transition: background 200ms ease, color 200ms ease;
}
.wp-block-button.is-style-dr-outline > .wp-block-button__link:hover{
	background: var(--wp--preset--color--forest, #0a5c43);
	color: var(--wp--preset--color--on-dark-max, #ffffff);
}
.wp-block-quote.is-style-dr-testimonial{
	background: var(--wp--preset--color--bg-soft, #f3f8f5);
	border-left: 4px solid var(--wp--preset--color--bright, #00d082);
	border-radius: var(--wp--custom--radius--card, 16px);
	padding: var(--wp--preset--spacing--32, 32px);
	color: var(--wp--custom--color--quote-text, #33463f);
	font-size: var(--wp--preset--font-size--lead, 19px);
}
.wp-block-quote.is-style-dr-testimonial cite{
	color: var(--wp--custom--color--text-muted, #7d968c);
	font-size: var(--wp--preset--font-size--caption, 14px);
	font-style: normal;
}
