/* Deal Deal Deal – deal cards, grid pages and the Deal hub homepage */

/* Fonts (self-hosted, SIL Open Font License – see fonts/OFL-Archivo.txt) */
@font-face { font-family: "DDD Archivo"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/archivo-400.woff2) format("woff2"); }
@font-face { font-family: "DDD Archivo"; font-style: normal; font-weight: 600; font-display: swap; src: url(fonts/archivo-600.woff2) format("woff2"); }
@font-face { font-family: "DDD Archivo"; font-style: normal; font-weight: 700; font-display: swap; src: url(fonts/archivo-700.woff2) format("woff2"); }
@font-face { font-family: "DDD Archivo"; font-style: normal; font-weight: 800; font-display: swap; src: url(fonts/archivo-800.woff2) format("woff2"); }
@font-face { font-family: "DDD Archivo Black"; font-style: normal; font-weight: 400; font-display: swap; src: url(fonts/archivo-black.woff2) format("woff2"); }

.ddd-main,
.ddd-hub {
	--ddd-text: #111827;
	--ddd-muted: #4b5563;
	--ddd-line: #e5e7eb;
	--ddd-navy: #111827;
	--ddd-orange: #f97316;
	--ddd-cta: #c2410c;
	--ddd-cta-hover: #9a3412;
	--ddd-green: #128c4b;
	--ddd-green-hover: #0b6b38;
	--ddd-radius: 14px;
	--ddd-font: "DDD Archivo", system-ui, -apple-system, "Segoe UI", sans-serif;
	--ddd-display: "DDD Archivo Black", "DDD Archivo", system-ui, sans-serif;
	font-family: var(--ddd-font);
	color: var(--ddd-text);
}
.ddd-main {
	padding-top: 24px;
	padding-bottom: 48px;
}

/* ---------- Grid pages (all deals, category, tag, brand, search) ---------- */

.ddd-intro {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
	margin: 0 0 24px;
	padding: 20px 24px;
	background: var(--ddd-navy);
	color: #ffffff;
	border-radius: var(--ddd-radius);
}
.ddd-intro__title {
	margin: 0 0 4px;
	font-family: var(--ddd-display);
	font-weight: 400;
	font-size: 1.5rem;
	line-height: 1.2;
	color: #ffffff;
}
.ddd-intro__text { margin: 0; font-size: 0.95rem; color: #d1d5db; }
.ddd-follow,
.ddd-wa-btn {
	display: inline-block;
	padding: 11px 18px;
	border-radius: 999px;
	background: var(--ddd-green);
	color: #ffffff !important;
	font-weight: 700;
	font-size: 0.95rem;
	text-decoration: none;
	white-space: nowrap;
}
.ddd-follow:hover, .ddd-follow:focus,
.ddd-wa-btn:hover, .ddd-wa-btn:focus { background: var(--ddd-green-hover); color: #ffffff; }

.ddd-archive-head { margin: 0 0 24px; }
.ddd-archive-head__title {
	margin: 0 0 6px;
	font-family: var(--ddd-display);
	font-weight: 400;
	font-size: 2rem;
	letter-spacing: -0.5px;
	color: var(--ddd-text);
}
.ddd-archive-head__desc, .ddd-archive-head__desc p { margin: 0; color: var(--ddd-muted); }

.ddd-grid {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));
	gap: 20px;
}
.ddd-grid--wide { grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)); }
@media (max-width: 559px) {
	.ddd-grid, .ddd-grid--wide { grid-template-columns: minmax(0, 1fr); gap: 16px; }
}

/* ---------- Deal card ---------- */

.ddd-card {
	--ddd-tint: #f3f4f6;
	--ddd-ink: #374151;
	position: relative;
	display: flex;
	flex-direction: column;
	background: #ffffff;
	border: 1px solid var(--ddd-line);
	border-radius: var(--ddd-radius);
	overflow: hidden;
	box-shadow: 0 1px 2px rgba(17, 24, 39, 0.04);
	transition: box-shadow 0.15s ease, transform 0.15s ease;
	font-family: var(--ddd-font);
}
.ddd-card:hover { box-shadow: 0 8px 22px rgba(17, 24, 39, 0.09); transform: translateY(-2px); }
.ddd-card__tile {
	display: flex;
	align-items: center;
	justify-content: center;
	height: 116px;
	background: var(--ddd-tint);
	color: var(--ddd-ink);
}
.ddd-card__badges {
	position: absolute;
	top: 12px;
	left: 12px;
	display: flex;
	gap: 6px;
	flex-wrap: wrap;
}
.ddd-ad,
.ddd-badge,
.ddd-card__top {
	display: inline-block;
	padding: 3px 8px;
	border-radius: 6px;
	font-size: 0.75rem;
	font-weight: 800;
	line-height: 1.4;
}
.ddd-ad { background: #111827; color: #ffffff; }
.ddd-badge--hot { background: #fde8e1; color: #9a3412; }
.ddd-badge--drop { background: #e3f4ea; color: #166534; }
.ddd-badge--season { background: #ede9fe; color: #5b21b6; }
.ddd-badge--ended { background: #eef0f2; color: #4b5563; }
.ddd-card__top {
	position: absolute;
	top: 12px;
	right: 12px;
	background: var(--ddd-orange);
	color: #111827;
}
.ddd-card__last {
	position: absolute;
	top: 84px;
	right: 12px;
	display: inline-flex;
	align-items: center;
	gap: 5px;
	padding: 4px 9px;
	border-radius: 999px;
	background: #b91c1c;
	color: #ffffff;
	font-size: 0.75rem;
	font-weight: 800;
}
.ddd-card__body {
	flex: 1 1 auto;
	display: flex;
	flex-direction: column;
	gap: 8px;
	padding: 16px;
}
.ddd-card__cat {
	font-size: 0.75rem;
	font-weight: 800;
	letter-spacing: 0.06em;
	text-transform: uppercase;
	color: var(--ddd-ink);
	text-decoration: none;
}
.ddd-card__cat:hover { text-decoration: underline; color: var(--ddd-ink); }
.ddd-card__title {
	margin: 0;
	font-family: var(--ddd-font);
	font-size: 1.06rem;
	line-height: 1.3;
	font-weight: 700;
	letter-spacing: 0;
}
.ddd-card__title a { color: var(--ddd-text); text-decoration: none; }
.ddd-card__title a:hover { color: var(--ddd-cta); }
.ddd-card__pitch {
	margin: 0;
	font-size: 0.9rem;
	line-height: 1.5;
	color: var(--ddd-muted);
	display: -webkit-box;
	-webkit-line-clamp: 3;
	-webkit-box-orient: vertical;
	overflow: hidden;
}
.ddd-ends {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 6px;
	font-size: 0.875rem;
	font-weight: 700;
	color: #374151;
}
.ddd-ends--urgent { color: #b91c1c; }
.ddd-card__actions {
	margin-top: auto;
	padding-top: 6px;
	display: flex;
	flex-direction: column;
	gap: 8px;
}
.ddd-btn {
	display: block;
	padding: 11px 12px;
	border-radius: 9px;
	background: var(--ddd-cta);
	color: #ffffff !important;
	font-weight: 700;
	font-size: 0.95rem;
	text-align: center;
	text-decoration: none;
}
.ddd-btn:hover, .ddd-btn:focus { background: var(--ddd-cta-hover); }
.ddd-btn--muted { background: #4b5563; }
.ddd-btn--muted:hover, .ddd-btn--muted:focus { background: #374151; }
.ddd-card__meta {
	display: flex;
	justify-content: space-between;
	align-items: center;
	font-size: 0.8rem;
	color: #6b7280;
}
.ddd-card__more { color: var(--ddd-cta); text-decoration: none; font-weight: 700; }
.ddd-card__more:hover { text-decoration: underline; }
.ddd-card.is-ended .ddd-card__tile { filter: grayscale(1); opacity: 0.6; }
.ddd-card.is-ended .ddd-card__title a { color: #4b5563; }

.ddd-main .navigation.pagination { margin-top: 28px; }
.ddd-empty {
	padding: 24px;
	background: #ffffff;
	border: 1px solid var(--ddd-line);
	border-radius: var(--ddd-radius);
	color: var(--ddd-muted);
}

/* ---------- Deal hub homepage ---------- */

.content-area.ddd-hub { margin-top: 0; margin-bottom: 0; background: #f5f6f8; }
.ddd-hub .site-main { padding: 0; margin: 0; max-width: none; }
.ddd-hub .site-main > *,
.ddd-hub .site-main > section,
.ddd-hub .site-main > nav { margin-top: 0; margin-bottom: 0; max-width: none; width: auto; }
.ddd-wrap {
	box-sizing: border-box;
	width: 100%;
	max-width: 1240px;
	margin: 0 auto;
	padding-left: 24px;
	padding-right: 24px;
}
@media (max-width: 559px) {
	.ddd-wrap { padding-left: 16px; padding-right: 16px; }
}

/* Hero */
.ddd-hero { background: var(--ddd-navy); color: #ffffff; }
.ddd-hero__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	padding-top: 52px;
	padding-bottom: 52px;
}
.ddd-hero__text { flex: 999 1 520px; min-width: 0; display: flex; flex-direction: column; gap: 18px; }
.ddd-hero__date {
	font-size: 0.875rem;
	font-weight: 700;
	letter-spacing: 0.08em;
	text-transform: uppercase;
	color: #fb923c;
}
.ddd-hub .ddd-hero__title {
	margin: 0;
	font-family: var(--ddd-display);
	font-weight: 400;
	font-size: clamp(2rem, 4.6vw, 3.25rem);
	line-height: 1.05;
	letter-spacing: -1px;
	color: #ffffff;
}
.ddd-hero__lead { margin: 0; max-width: 620px; font-size: 1.125rem; line-height: 1.5; color: #d1d5db; }
.ddd-stats { display: flex; gap: 12px; flex-wrap: wrap; }
.ddd-stat {
	display: flex;
	align-items: baseline;
	gap: 8px;
	padding: 12px 16px;
	border: 1px solid #374151;
	border-radius: 12px;
	background: #1f2937;
	font-size: 0.95rem;
	color: #d1d5db;
}
.ddd-stat strong { font-family: var(--ddd-display); font-weight: 400; font-size: 1.6rem; color: #ffffff; }
.ddd-stat strong.is-hot { color: #fb923c; }
.ddd-wa-card {
	flex: 1 1 300px;
	display: flex;
	flex-direction: column;
	gap: 12px;
	padding: 24px;
	border-radius: 16px;
	background: #ffffff;
	color: var(--ddd-text);
}
.ddd-wa-card p { margin: 0; font-size: 0.95rem; line-height: 1.5; color: var(--ddd-muted); }
.ddd-wa-card__icon {
	width: 48px;
	height: 48px;
	border-radius: 50%;
	background: #dcfce7;
	color: var(--ddd-green);
	display: flex;
	align-items: center;
	justify-content: center;
}
.ddd-hub .ddd-wa-card__title { margin: 0; font-family: var(--ddd-font); font-size: 1.375rem; font-weight: 800; color: var(--ddd-text); }
.ddd-wa-card .ddd-wa-btn { display: block; padding: 13px 16px; border-radius: 10px; text-align: center; font-size: 1rem; }
.ddd-wa-card__small { font-size: 0.8rem; color: #6b7280; }

/* Category chips */
.ddd-chips { background: #ffffff; border-bottom: 1px solid var(--ddd-line); }
.ddd-chips__row {
	display: flex;
	gap: 10px;
	padding-top: 16px;
	padding-bottom: 16px;
	overflow-x: auto;
	scrollbar-width: thin;
}
.ddd-chip {
	--ddd-tint: #f3f4f6;
	--ddd-ink: #374151;
	flex: none;
	display: flex;
	align-items: center;
	gap: 10px;
	min-height: 44px;
	box-sizing: border-box;
	padding: 6px 16px 6px 6px;
	border: 1px solid var(--ddd-line);
	border-radius: 999px;
	background: #ffffff;
	color: var(--ddd-text);
	text-decoration: none;
	font-weight: 700;
	font-size: 0.95rem;
}
.ddd-chip:hover { border-color: #9ca3af; color: var(--ddd-text); }
.ddd-chip__icon {
	width: 34px;
	height: 34px;
	flex: none;
	border-radius: 50%;
	background: var(--ddd-tint);
	color: var(--ddd-ink);
	display: inline-flex;
	align-items: center;
	justify-content: center;
}
.ddd-chip__n { font-weight: 400; color: #6b7280; }
.ddd-chip.is-active { background: var(--ddd-navy); border-color: var(--ddd-navy); color: #ffffff; }
.ddd-chip.is-active .ddd-chip__icon { background: var(--ddd-orange); color: #111827; }
.ddd-chip.is-active .ddd-chip__n { color: #d1d5db; }

/* Sections */
.ddd-sec { padding: 48px 0 8px; }
.ddd-sec .ddd-wrap { display: flex; flex-direction: column; gap: 24px; }
.ddd-sec--ending { padding: 44px 0; background: #fff7ed; border-bottom: 1px solid #fed7aa; }
.ddd-sec__head {
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	gap: 16px;
	flex-wrap: wrap;
}
.ddd-hub .ddd-sec__title {
	margin: 0;
	display: flex;
	align-items: center;
	gap: 10px;
	font-family: var(--ddd-display);
	font-weight: 400;
	font-size: clamp(1.5rem, 2.6vw, 1.875rem);
	line-height: 1.15;
	letter-spacing: -0.3px;
	color: var(--ddd-text);
}
.ddd-sec__title > .ddd-icon { color: var(--ddd-cta); flex: none; }
.ddd-hub .ddd-sec__title--cat { font-size: clamp(1.35rem, 2.2vw, 1.625rem); gap: 12px; }
.ddd-sec__title--cat .ddd-chip__icon { width: 40px; height: 40px; }
.ddd-sec__sub { margin: 6px 0 0; font-size: 1rem; color: var(--ddd-muted); }
.ddd-sec__more { font-weight: 700; font-size: 0.95rem; color: var(--ddd-cta); text-decoration: none; }
.ddd-sec__more:hover { color: var(--ddd-cta-hover); text-decoration: underline; }

/* Brands */
.ddd-brands { display: grid; grid-template-columns: repeat(auto-fill, minmax(180px, 1fr)); gap: 12px; }
.ddd-brand {
	display: flex;
	flex-direction: column;
	gap: 4px;
	padding: 18px 16px;
	border: 1px solid var(--ddd-line);
	border-radius: 12px;
	background: #ffffff;
	color: var(--ddd-text);
	text-decoration: none;
}
.ddd-brand:hover { border-color: var(--ddd-cta); color: var(--ddd-text); }
.ddd-brand__name { font-family: var(--ddd-display); font-size: 1.2rem; line-height: 1.2; }
.ddd-brand__n { font-size: 0.875rem; font-weight: 600; color: var(--ddd-cta); }

/* Collections */
.ddd-collections { display: grid; grid-template-columns: repeat(auto-fill, minmax(240px, 1fr)); gap: 20px; }
.ddd-collection {
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	gap: 32px;
	min-height: 170px;
	box-sizing: border-box;
	padding: 24px;
	border-radius: 16px;
	color: #ffffff;
	text-decoration: none;
	transition: transform 0.15s ease;
}
.ddd-collection:hover { color: #ffffff; transform: translateY(-2px); }
.ddd-collection__name { font-family: var(--ddd-display); font-size: 1.6rem; line-height: 1.1; }
.ddd-collection__more { font-weight: 700; font-size: 0.95rem; }
.ddd-collection--navy { background: #111827; }
.ddd-collection--navy .ddd-collection__more { color: #fb923c; }
.ddd-collection--orange { background: #c2410c; }
.ddd-collection--orange .ddd-collection__more { color: #ffedd5; }
.ddd-collection--blue { background: #1d4ed8; }
.ddd-collection--blue .ddd-collection__more { color: #dbeafe; }
.ddd-collection--purple { background: #6d28d9; }
.ddd-collection--purple .ddd-collection__more { color: #ede9fe; }

/* WhatsApp band */
.ddd-wa-band { margin-top: 48px; background: var(--ddd-orange); color: #111827; }
.ddd-wa-band__inner {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 24px;
	flex-wrap: wrap;
	padding-top: 40px;
	padding-bottom: 40px;
}
.ddd-hub .ddd-wa-band__title { margin: 0; font-family: var(--ddd-display); font-weight: 400; font-size: clamp(1.6rem, 3vw, 2rem); line-height: 1.1; color: #111827; }
.ddd-wa-band p { margin: 8px 0 0; font-size: 1.05rem; color: #111827; }
.ddd-wa-band__btn {
	padding: 15px 26px;
	border-radius: 12px;
	background: #111827;
	color: #ffffff !important;
	text-decoration: none;
	font-weight: 700;
	font-size: 1.05rem;
}
.ddd-wa-band__btn:hover { background: #1f2937; }

/* ---------- Single deal posts ---------- */

/* In-post "Check price on Amazon" buttons: same orange as the card buttons */
.entry-content .wp-block-button__link[href*="amazon."],
.entry-content .wp-block-button__link[href*="amzn."],
.entry-content .wp-block-button__link[href=""],
.entry-content .wp-block-button__link:not([href]) {
	background-color: #c2410c !important;
	color: #ffffff !important;
	border-color: #c2410c !important;
	font-weight: 700;
	border-radius: 8px;
}
.entry-content .wp-block-button__link[href*="amazon."]:hover,
.entry-content .wp-block-button__link[href*="amazon."]:focus,
.entry-content .wp-block-button__link[href*="amzn."]:hover,
.entry-content .wp-block-button__link[href*="amzn."]:focus {
	background-color: #9a3412 !important;
	border-color: #9a3412 !important;
	color: #ffffff !important;
}

/* End date / ended notice on single deal posts */
.entry-content .ddd-notice {
	margin: 1em 0;
	padding: 10px 14px;
	border-radius: 8px;
	border-left: 4px solid #9ca3af;
	background: #f3f4f6;
	color: #1f2937;
	font-weight: 600;
}
.entry-content .ddd-notice--urgent {
	border-left-color: #b91c1c;
	background: #fef2f2;
	color: #991b1b;
}
.entry-content .ddd-notice--ended {
	border-left-color: #6b7280;
	color: #374151;
	font-weight: 500;
}

/* Phones: homepage sections become swipeable rows (grid pages still stack) */
@media (max-width: 559px) {
	.ddd-hub .ddd-grid,
	.ddd-hub .ddd-grid--wide {
		display: flex;
		gap: 12px;
		overflow-x: auto;
		scroll-snap-type: x mandatory;
		margin-right: -16px;
		padding: 2px 16px 10px 0;
		scrollbar-width: none;
	}
	.ddd-hub .ddd-grid::-webkit-scrollbar { display: none; }
	.ddd-hub .ddd-grid > .ddd-card {
		flex: 0 0 80%;
		scroll-snap-align: start;
	}
	.ddd-hub .ddd-card:hover { transform: none; }
	.ddd-hero__inner { padding-top: 32px; padding-bottom: 32px; gap: 28px; }
	.ddd-sec { padding-top: 36px; }
	.ddd-sec--ending { padding: 32px 0; }
	.ddd-collection { min-height: 120px; padding: 18px; gap: 18px; }
	.ddd-collection__name { font-size: 1.25rem; }
	.ddd-brands,
	.ddd-collections { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
	.ddd-brand { padding: 14px 12px; }
	.ddd-brand__name { font-size: 1.05rem; }
}
