/* Block: DD — Hero */

.dd-hero__split {
	display: grid;
	grid-template-columns: 1.05fr 0.95fr;
	gap: 64px;
	align-items: center;
	padding: 80px 0 88px;
}

.dd-hero--wide .dd-hero__wide {
	max-width: 900px;
	padding: 80px 0 64px;
}

.dd-hero__intro {
	max-width: 560px;
	margin: 28px 0 0;
}

.dd-hero__body .dd-h1 {
	margin: 24px 0 0;
}

.dd-hero__body .dd-eyebrow + .dd-h1 {
	margin-top: 0;
}

.dd-hero__wide .dd-h1 {
	margin-bottom: 26px;
}

.dd-hero__body .dd-btn-row,
.dd-hero__wide .dd-btn-row {
	margin-top: 36px;
}

/* Image + floating stat badge */
.dd-hero__image-wrap {
	position: relative;
}

.dd-hero__image-wrap .dd-placeholder {
	box-shadow: var(--dd-shadow-card);
}

.dd-hero__badge {
	position: absolute;
	bottom: -22px;
	left: -26px;
	background: var(--dd-paper);
	border: 1px solid var(--dd-line-14);
	border-radius: 12px;
	padding: 18px 22px;
	box-shadow: var(--dd-shadow-float);
}

.dd-hero__badge-num {
	font-family: var(--dd-serif);
	font-size: 38px;
	line-height: 1;
	color: var(--dd-ink);
}

.dd-hero__badge-text {
	font-size: 13px;
	color: var(--dd-body);
	margin-top: 4px;
}

/* Pure-CSS browser mock */
.dd-browser {
	border-radius: 14px;
	background: #fff;
	overflow: hidden;
	border: 1px solid var(--dd-line-14);
	box-shadow: var(--dd-shadow-card);
}

.dd-browser__bar {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 13px 16px;
	border-bottom: 1px solid rgba(18, 50, 76, 0.1);
}

.dd-browser__dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #e6ddcf;
}

.dd-browser__dot--active {
	background: var(--dd-terracotta);
}

.dd-browser__url {
	margin-left: 10px;
	flex: 1;
	height: 20px;
	border-radius: 6px;
	background: var(--dd-paper);
}

.dd-browser__body {
	padding: 22px;
}

.dd-browser__title-bar {
	height: 36px;
	border-radius: 8px;
	background: var(--dd-ink);
	margin-bottom: 14px;
	width: 55%;
}

.dd-browser__line {
	height: 12px;
	border-radius: 4px;
	background: #e6ddcf;
	margin-bottom: 8px;
}

.dd-browser__line--short {
	width: 80%;
}

.dd-browser__cards {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 12px;
	margin-top: 18px;
}

.dd-browser__cards > div {
	height: 72px;
	border-radius: 10px;
	background: var(--dd-paper);
	border: 1px solid rgba(18, 50, 76, 0.08);
}

.dd-browser__accent {
	margin-top: 18px;
	height: 14px;
	border-radius: 5px;
	background: var(--dd-terracotta);
	width: 40%;
}

/* ============================================================
 * Hero mock illustrations (browser / code / chat / status /
 * vacatures / wordpress / roadmap / architecture / search).
 * ============================================================ */
.dd-mock {
	border-radius: 14px;
	overflow: hidden;
}

.dd-mock--light {
	background: #fff;
	border: 1px solid var(--dd-line-14);
	box-shadow: var(--dd-shadow-card);
}

.dd-mock--dark {
	background: var(--dd-ink);
	border: 1px solid var(--dd-line-strong);
}

.dd-mock--pad {
	padding: 28px;
}

/* Dots */
.dd-mock__dot {
	width: 11px;
	height: 11px;
	border-radius: 50%;
	background: #e6ddcf;
	flex: 0 0 auto;
}

.dd-mock__dot--active { background: var(--dd-terracotta); }
.dd-mock__dot--amber { background: var(--dd-terracotta-light); }
.dd-mock__dot--green { width: 8px; height: 8px; background: #37d3a3; }
.dd-mock__dot--live { width: 7px; height: 7px; background: #4a8f6d; }
.dd-mock__dot--terracotta { width: 8px; height: 8px; background: var(--dd-terracotta); }

/* Mono meta labels: muted on light cards, faded paper on dark cards */
.dd-mock__meta {
	font-family: var(--dd-mono);
	font-size: 12px;
	color: var(--dd-muted);
}

.dd-mock--dark .dd-mock__meta {
	color: var(--dd-on-dark-60);
}

.dd-mock__meta-ink {
	font-family: var(--dd-mono);
	font-size: 11px;
	color: var(--dd-muted);
}

/* Shared bars / body / keyword */
.dd-mock__bar--browser {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 13px 16px;
	border-bottom: 1px solid rgba(18, 50, 76, 0.1);
}

.dd-mock__url {
	margin-left: 10px;
	flex: 1;
	height: 20px;
	border-radius: 6px;
	background: var(--dd-paper);
}

.dd-mock__body {
	padding: 22px;
}

.dd-mock__kw {
	font-family: var(--dd-mono);
	font-size: 11px;
	color: var(--dd-muted);
	margin-bottom: 14px;
}

.dd-mock__kw--sp {
	margin-bottom: 20px;
}

.dd-mock__line {
	display: block;
	height: 12px;
	border-radius: 4px;
	background: #e6ddcf;
}

.dd-mock__line--full { width: 100%; margin-bottom: 8px; }
.dd-mock__line--80 { width: 80%; }

/* --- Code editor (Development) --- */
.dd-mock__bar--code {
	display: flex;
	gap: 7px;
	padding: 14px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.dd-mock__bar--code .dd-mock__dot { background: #3a5876; }
.dd-mock__bar--code .dd-mock__dot--amber { background: var(--dd-terracotta-light); }

.dd-mock__code {
	margin: 0;
	padding: 26px;
	font-family: var(--dd-mono);
	font-size: 13px;
	line-height: 2;
	color: var(--dd-on-dark-70);
	white-space: pre-wrap;
	overflow-x: auto;
}

.dd-mock__code-line { display: block; }
.dd-mock__code-indent { padding-left: 22px; }
.dd-mock__code .c-amber { color: var(--dd-terracotta-light); }
.dd-mock__code .c-fg { color: var(--dd-on-dark); }
.dd-mock__code .c-muted { color: #5f7488; }

/* --- Dark status bar (chat header) --- */
.dd-mock__bar--status {
	display: flex;
	align-items: center;
	gap: 9px;
	padding: 14px 18px;
	border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

/* --- AI chat / agent --- */
.dd-mock__chat {
	padding: 24px;
	display: flex;
	flex-direction: column;
	gap: 14px;
}

.dd-mock__bubble {
	max-width: 82%;
	padding: 12px 16px;
	font-size: 14px;
	line-height: 1.5;
	color: var(--dd-on-dark);
}

.dd-mock__bubble--user {
	align-self: flex-end;
	max-width: 78%;
	background: var(--dd-terracotta);
	border-radius: 14px 14px 4px 14px;
}

.dd-mock__bubble--bot {
	align-self: flex-start;
	background: rgba(243, 237, 226, 0.1);
	border-radius: 14px 14px 14px 4px;
}

.dd-mock__agent {
	align-self: flex-start;
	font-family: var(--dd-mono);
	font-size: 12px;
	color: #37d3a3;
}

/* --- Status dashboard (Hosting) --- */
.dd-mock--status { padding: 24px; }

.dd-mock__status-head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-bottom: 20px;
}

.dd-mock__op {
	display: inline-flex;
	align-items: center;
	gap: 7px;
	font-size: 12px;
	color: #37d3a3;
}

.dd-mock__status-rows {
	display: flex;
	flex-direction: column;
	gap: 12px;
}

.dd-mock__status-row {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: rgba(243, 237, 226, 0.06);
	border-radius: 9px;
	padding: 12px 15px;
}

.dd-mock__status-name {
	display: flex;
	align-items: center;
	gap: 9px;
	font-size: 13.5px;
	color: var(--dd-on-dark);
}

.dd-mock__spark {
	display: flex;
	align-items: flex-end;
	gap: 5px;
	height: 52px;
	margin-top: 20px;
}

.dd-mock__spark-bar {
	flex: 1;
	border-radius: 3px;
	background: rgba(55, 211, 163, 0.45);
}

.dd-mock__spark-bar--peak { background: #37d3a3; }
.dd-mock__status-foot { margin-top: 8px; }

/* --- Vacancy list (Recruitment) --- */
.dd-mock__vac-list {
	display: flex;
	flex-direction: column;
	gap: 10px;
}

.dd-mock__vac {
	display: flex;
	align-items: center;
	justify-content: space-between;
	background: var(--dd-paper-card);
	border: 1px solid rgba(18, 50, 76, 0.1);
	border-radius: 10px;
	padding: 13px 15px;
}

.dd-mock__line--title {
	height: 11px;
	background: var(--dd-ink);
	margin-bottom: 7px;
}

.dd-mock__line--sub {
	height: 8px;
	background: #e6ddcf;
}

.dd-mock__pill {
	font-family: var(--dd-mono);
	font-size: 10px;
	color: var(--dd-terracotta);
	border: 1px solid rgba(181, 103, 74, 0.4);
	border-radius: var(--dd-radius-pill);
	padding: 3px 9px;
	white-space: nowrap;
}

.dd-mock__ats {
	display: flex;
	align-items: center;
	gap: 8px;
	margin-top: 16px;
	font-family: var(--dd-mono);
	font-size: 10px;
	color: var(--dd-muted);
}

/* --- WordPress / Gutenberg --- */
.dd-mock__wp-title {
	height: 30px;
	border-radius: 8px;
	background: var(--dd-ink);
	margin-bottom: 14px;
	width: 60%;
}

.dd-mock__wp-chips {
	display: flex;
	gap: 8px;
	margin-bottom: 14px;
}

.dd-mock__wp-chips span {
	padding: 5px 10px;
	border-radius: 6px;
	background: var(--dd-paper);
	border: 1px solid rgba(18, 50, 76, 0.1);
	font-family: var(--dd-mono);
	font-size: 11px;
	color: var(--dd-muted);
}

.dd-mock__ps {
	margin-top: 18px;
	display: flex;
	align-items: center;
	gap: 10px;
}

.dd-mock__ps-bar {
	height: 14px;
	border-radius: 5px;
	background: var(--dd-terracotta);
	width: 78%;
}

.dd-mock__ps-score {
	font-family: var(--dd-mono);
	font-size: 12px;
	font-weight: 600;
	color: var(--dd-terracotta);
}

/* --- Roadmap (Strategie) --- */
.dd-mock__rm-line {
	height: 2px;
	background: rgba(18, 50, 76, 0.15);
	margin: 0 0 14px;
}

.dd-mock__rm-grid {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 12px;
}

.dd-mock__rm-col {
	display: flex;
	flex-direction: column;
}

.dd-mock__rm-col .dd-mock__meta { margin: 0 0 8px; }

.dd-mock__rm-dot {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	margin-bottom: 12px;
}

.dd-mock__rm-dot--terracotta { background: var(--dd-terracotta); }
.dd-mock__rm-dot--amber { background: var(--dd-terracotta-light); }
.dd-mock__rm-dot--ghost { background: rgba(18, 50, 76, 0.3); }

.dd-mock__rm-bar { border-radius: 8px; }
.dd-mock__rm-bar--navy { background: var(--dd-ink); }
.dd-mock__rm-bar--inkhover { background: var(--dd-ink-hover); }
.dd-mock__rm-bar--ghost { background: var(--dd-paper); border: 1px solid var(--dd-line); }

.dd-mock__rm-legend {
	margin-top: 20px;
	display: flex;
	gap: 16px;
	flex-wrap: wrap;
	font-size: 12px;
	color: var(--dd-body);
}

/* --- Architecture (IT-consultancy) --- */
.dd-mock__arch {
	display: flex;
	flex-direction: column;
	align-items: center;
}

.dd-mock__arch-node {
	text-align: center;
	border-radius: 10px;
	padding: 12px;
	font-size: 13.5px;
	font-weight: 600;
}

.dd-mock__arch-node--navy { width: 70%; background: var(--dd-ink); color: var(--dd-on-dark); }
.dd-mock__arch-node--mid { width: 70%; background: var(--dd-ink-hover); color: var(--dd-on-dark); }
.dd-mock__arch-node--ghost { background: var(--dd-paper); border: 1px solid var(--dd-line-14); font-size: 13px; font-weight: 400; }

.dd-mock__arch-conn {
	width: 2px;
	height: 18px;
	background: rgba(18, 50, 76, 0.25);
}

.dd-mock__arch-fork {
	width: 60%;
	height: 18px;
	border-left: 2px solid rgba(18, 50, 76, 0.25);
	border-right: 2px solid rgba(18, 50, 76, 0.25);
	border-bottom: 2px solid rgba(18, 50, 76, 0.25);
	border-radius: 0 0 8px 8px;
}

.dd-mock__arch-pair {
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 14px;
	width: 100%;
	margin-top: 14px;
}

.dd-mock__arch-foot {
	margin-top: 18px;
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--dd-mono);
	font-size: 11px;
	color: var(--dd-terracotta);
}

/* --- SEO / GEO result (Online-marketing) --- */
.dd-mock__search {
	display: flex;
	align-items: center;
	gap: 10px;
	background: var(--dd-paper);
	border: 1px solid var(--dd-line);
	border-radius: var(--dd-radius-pill);
	padding: 11px 18px;
	margin-bottom: 18px;
}

.dd-mock__search-ring {
	width: 14px;
	height: 14px;
	border-radius: 50%;
	border: 2px solid var(--dd-muted);
	flex: 0 0 auto;
}

.dd-mock__search-q {
	font-size: 14px;
	color: var(--dd-body);
}

.dd-mock__ai {
	background: var(--dd-ink);
	border-radius: 12px;
	padding: 16px 18px;
	margin-bottom: 16px;
}

.dd-mock__ai-label {
	display: flex;
	align-items: center;
	gap: 8px;
	font-family: var(--dd-mono);
	font-size: 11px;
	color: var(--dd-terracotta-light);
	margin-bottom: 10px;
}

.dd-mock__ai-label .dd-mock__dot { width: 7px; height: 7px; }

.dd-mock__line--light { height: 8px; background: rgba(243, 237, 226, 0.35); margin-bottom: 7px; }
.dd-mock__line--accent { height: 8px; background: var(--dd-terracotta); }
.dd-mock__line--85 { width: 85%; }
.dd-mock__line--45 { width: 45%; }

.dd-mock__rank {
	display: flex;
	align-items: center;
	gap: 12px;
}

.dd-mock__rank + .dd-mock__rank { margin-top: 12px; }

.dd-mock__rank-n {
	font-family: var(--dd-mono);
	font-size: 12px;
	width: 22px;
	color: var(--dd-muted);
}

.dd-mock__rank-n--1 { color: var(--dd-terracotta); }
.dd-mock__rank-body { flex: 1; }
.dd-mock__line--rank1 { height: 9px; background: var(--dd-ink); width: 60%; margin-bottom: 6px; }
.dd-mock__line--rank2 { height: 9px; background: rgba(18, 50, 76, 0.4); width: 50%; margin-bottom: 6px; }
.dd-mock__line--sub2 { height: 7px; background: #e6ddcf; }

@media (max-width: 900px) {
	.dd-hero__split {
		grid-template-columns: 1fr;
		gap: 48px;
		padding: 56px 0 64px;
	}

	.dd-hero--wide .dd-hero__wide {
		padding: 56px 0 40px;
	}

	.dd-hero__badge {
		left: 0;
	}
}
