/* ==========================================================================
   D&D Home — storefront styles
   Persian (RTL, Vazirmatn) is the primary tree; English (LTR) is the second.
   Logical properties are used throughout so one rule set serves both directions.
   ========================================================================== */

:root {
	--dd-blue:    #3A5D8F;
	--dd-blue-d:  #2C4970;
	--dd-green:   #8CC63F;
	--dd-ink:     #1C2733;
	--dd-muted:   #6B7785;
	--dd-line:    #E4E7E4;
	--dd-surface: #F7F8F6;
	--dd-sand:    #EFEAE3;
	--dd-red:     #E02B20;
	--dd-deep:    #111A22;
	--dd-white:   #FFFFFF;

	--dd-shell:   1440px;
	--dd-gutter:  24px;
	--dd-radius:  2px;

	--dd-sans:    'Vazirmatn', 'Segoe UI', Tahoma, sans-serif;
	--dd-serif:   'Cormorant Garamond', 'Vazirmatn', Georgia, serif;
	--dd-latin:   'Jost', 'Vazirmatn', sans-serif;
}

body {
	margin: 0;
	font-family: var(--dd-sans);
	color: var(--dd-ink);
	background: var(--dd-white);
}

body.dd-lang-en { font-family: var(--dd-latin); }

.dd-shell {
	max-width: var(--dd-shell);
	margin-inline: auto;
	padding-inline: var(--dd-gutter);
}

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

/* ---------- buttons ---------- */

.dd-btn {
	display: inline-block;
	padding: 15px 38px;
	border: 1px solid transparent;
	border-radius: var(--dd-radius);
	font-size: 14px;
	font-weight: 600;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
	transition: background-color .18s ease, color .18s ease, border-color .18s ease;
}

.dd-btn--dark         { background: var(--dd-deep);  color: var(--dd-white); }
.dd-btn--dark:hover   { background: var(--dd-blue);  color: var(--dd-white); }
.dd-btn--light        { background: var(--dd-white); color: var(--dd-ink); }
.dd-btn--light:hover  { background: var(--dd-green); color: var(--dd-deep); }
.dd-btn--outline      { background: transparent; color: var(--dd-ink); border-color: var(--dd-ink); }
.dd-btn--outline:hover{ background: var(--dd-ink); color: var(--dd-white); }

/* ==========================================================================
   Header
   ========================================================================== */

.dd-header { position: relative; z-index: 60; background: var(--dd-white); }

.dd-masthead__inner {
	display: flex;
	align-items: center;
	gap: 26px;
	min-height: 76px;
}

.dd-logo { flex: 0 0 auto; text-decoration: none; line-height: 1; }
.dd-logo__img  { display: block; max-height: 46px; width: auto; }
.dd-logo__text { display: block; font-size: 24px; font-weight: 800; color: var(--dd-blue); letter-spacing: -.02em; }
.dd-logo__text em { font-style: normal; color: var(--dd-green); }

/* ---------- inline category nav + full-width mega menu ---------- */

.dd-nav { flex: 0 1 auto; min-width: 0; }

.dd-nav__list {
	display: flex;
	align-items: center;
	gap: 2px;
	margin: 0;
	padding: 0;
	list-style: none;
}

.dd-nav__list > li { position: static; }

.dd-nav__list > li > a {
	display: block;
	padding: 26px 13px;
	color: var(--dd-ink);
	font-size: 15px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
	border-block-end: 2px solid transparent;
}

.dd-nav__list > li:hover > a,
.dd-nav__list > li.current-menu-item > a,
.dd-nav__list > li.current-menu-parent > a { color: var(--dd-blue); border-block-end-color: var(--dd-blue); }

.dd-nav__list .dd-menu-sale > a { color: var(--dd-red); }

.dd-nav__list .sub-menu {
	position: absolute;
	inset-block-start: 100%;
	inset-inline: 0;
	z-index: 70;
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(190px, 1fr));
	gap: 4px 30px;
	margin: 0;
	padding: 28px max(var(--dd-gutter), calc((100vw - var(--dd-shell)) / 2 + var(--dd-gutter)));
	list-style: none;
	background: var(--dd-white);
	border-block-start: 1px solid var(--dd-line);
	box-shadow: 0 16px 34px rgba(17, 26, 34, .08);
	opacity: 0;
	visibility: hidden;
	transition: opacity .16s ease, visibility .16s;
}

.dd-nav__list > li:hover > .sub-menu,
.dd-nav__list > li:focus-within > .sub-menu { opacity: 1; visibility: visible; }

.dd-nav__list .sub-menu a {
	display: block;
	padding: 9px 0;
	color: var(--dd-muted);
	font-size: 14px;
	text-decoration: none;
}

.dd-nav__list .sub-menu a:hover { color: var(--dd-blue); }

/* ---------- search ---------- */

.dd-search {
	flex: 1 1 320px;
	display: flex;
	align-items: center;
	gap: 10px;
	min-width: 0;
	padding-inline: 16px;
	border: 1px solid transparent;
	border-radius: var(--dd-radius);
	background: var(--dd-surface);
	transition: border-color .18s ease, background-color .18s ease;
}

.dd-search:focus-within { border-color: var(--dd-blue); background: var(--dd-white); }

.dd-search__icon { flex: 0 0 auto; width: 19px; height: 19px; fill: none; stroke: var(--dd-muted); stroke-width: 1.7; stroke-linecap: round; }

.dd-search__input {
	flex: 1;
	min-width: 0;
	padding-block: 13px;
	border: 0;
	background: transparent;
	font: inherit;
	font-size: 14px;
	color: var(--dd-ink);
	outline: none;
}

/* ---------- account, bag, language ---------- */

.dd-actions { flex: 0 0 auto; display: flex; align-items: center; gap: 18px; }

.dd-signin { display: flex; align-items: center; gap: 8px; color: var(--dd-ink); text-decoration: none; }
.dd-signin:hover { color: var(--dd-blue); }
.dd-signin__avatar { width: 23px; height: 23px; }
.dd-signin__label  { font-size: 14px; font-weight: 600; white-space: nowrap; }

.dd-icon { position: relative; display: block; color: var(--dd-ink); }
.dd-icon:hover { color: var(--dd-blue); }

.dd-signin svg, .dd-icon svg, .dd-globe svg {
	fill: none;
	stroke: currentColor;
	stroke-width: 1.6;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.dd-icon svg { display: block; width: 23px; height: 23px; }

.dd-icon__count {
	position: absolute;
	inset-block-start: -7px;
	inset-inline-end: -8px;
	min-width: 18px;
	padding-inline: 5px;
	border-radius: 9px;
	background: var(--dd-red);
	color: var(--dd-white);
	font-size: 10px;
	font-weight: 700;
	line-height: 18px;
	text-align: center;
}

.dd-globe { position: relative; }

.dd-globe__toggle {
	display: flex;
	align-items: center;
	gap: 3px;
	padding: 4px;
	border: 0;
	background: transparent;
	color: var(--dd-ink);
	cursor: pointer;
}

.dd-globe__toggle svg { width: 22px; height: 22px; }
.dd-globe__chev { width: 14px !important; height: 14px !important; }

.dd-globe__panel {
	position: absolute;
	inset-block-start: calc(100% + 10px);
	inset-inline-end: 0;
	z-index: 80;
	padding: 8px;
	background: var(--dd-white);
	border: 1px solid var(--dd-line);
	box-shadow: 0 14px 28px rgba(17, 26, 34, .1);
	opacity: 0;
	visibility: hidden;
	transition: opacity .15s ease, visibility .15s;
}

.dd-globe:hover .dd-globe__panel,
.dd-globe:focus-within .dd-globe__panel { opacity: 1; visibility: visible; }

.dd-lang { display: flex; gap: 4px; margin: 0; padding: 0; list-style: none; }

.dd-lang__item a {
	display: block;
	padding: 7px 14px;
	border-radius: var(--dd-radius);
	color: var(--dd-muted);
	font-size: 13px;
	font-weight: 600;
	text-decoration: none;
	white-space: nowrap;
}

.dd-lang__item a:hover { background: var(--dd-surface); color: var(--dd-ink); }
.dd-lang__item.is-current a { background: var(--dd-blue); color: var(--dd-white); }

/* ---------- contextual sub-navigation row ---------- */

.dd-subnav { border-block: 1px solid var(--dd-line); background: var(--dd-white); }

.dd-subnav__list {
	display: flex;
	gap: 26px;
	margin: 0;
	padding: 0;
	list-style: none;
	overflow-x: auto;
	scrollbar-width: none;
}

.dd-subnav__list::-webkit-scrollbar { display: none; }

.dd-subnav__item a {
	display: block;
	padding: 14px 0;
	color: var(--dd-ink);
	font-size: 14px;
	text-decoration: none;
	white-space: nowrap;
	border-block-end: 2px solid transparent;
}

.dd-subnav__item a:hover { color: var(--dd-blue); }
.dd-subnav__item.is-current a { color: var(--dd-blue); border-block-end-color: var(--dd-blue); }

/* ---------- mobile drawer ---------- */

.dd-burger { display: none; flex-direction: column; gap: 5px; width: 34px; padding: 6px 4px; border: 0; background: transparent; cursor: pointer; }
.dd-burger span { display: block; height: 2px; background: var(--dd-ink); }

.dd-drawer { position: fixed; inset: 0; z-index: 200; background: rgba(17, 26, 34, .45); }
.dd-drawer[hidden] { display: none; }

.dd-drawer__panel { width: min(340px, 86vw); height: 100%; overflow-y: auto; padding: 20px; background: var(--dd-white); }

.dd-drawer__head {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding-block-end: 14px;
	border-block-end: 1px solid var(--dd-line);
	font-weight: 700;
}

.dd-drawer__close { border: 0; background: transparent; font-size: 28px; line-height: 1; color: var(--dd-ink); cursor: pointer; }

.dd-drawer__list, .dd-drawer__list .sub-menu { margin: 0; padding: 0; list-style: none; }
.dd-drawer__list > li > a { display: block; padding: 13px 0; border-block-end: 1px solid var(--dd-line); color: var(--dd-ink); font-weight: 600; text-decoration: none; }
.dd-drawer__list .sub-menu a { display: block; padding: 8px 0; padding-inline-start: 14px; color: var(--dd-muted); font-size: 13.5px; text-decoration: none; }
.dd-drawer__foot { margin-block-start: 18px; }

/* ==========================================================================
   Editorial bands
   ========================================================================== */

.dd-section { padding: 58px 24px 26px; text-align: center; }
.dd-section--tight { padding-block-start: 34px; }

.dd-section__title {
	margin: 0;
	font-size: clamp(26px, 3.4vw, 40px);
	font-weight: 600;
	letter-spacing: -.01em;
}

body.dd-lang-en .dd-section__title { font-family: var(--dd-serif); font-weight: 500; letter-spacing: .01em; }

.dd-section__sub { max-width: 620px; margin: 12px auto 0; color: var(--dd-muted); font-size: 15px; }

/* ---------- full-bleed banner ---------- */

.dd-banner {
	position: relative;
	display: grid;
	place-items: center;
	background-color: var(--dd-sand);
	background-size: cover;
	background-position: center;
	text-align: center;
}

.dd-banner--tall  { min-height: 520px; }
.dd-banner--short { min-height: 320px; }

/* Catalogue photography is bright and busy, so the scrim has to carry the copy on
   its own: heaviest through the middle band where the text sits. */
.dd-banner::after {
	content: '';
	position: absolute;
	inset: 0;
	background: linear-gradient(180deg,
		rgba(17, 26, 34, .26) 0%,
		rgba(17, 26, 34, .58) 42%,
		rgba(17, 26, 34, .58) 62%,
		rgba(17, 26, 34, .30) 100%);
}

.dd-banner--light::after {
	background: linear-gradient(180deg, rgba(255,255,255,.35), rgba(255,255,255,.72));
}

.dd-banner--dark .dd-banner__title,
.dd-banner--dark .dd-banner__text { text-shadow: 0 1px 14px rgba(17, 26, 34, .45); }

.dd-banner__inner { position: relative; z-index: 2; max-width: 560px; padding: 40px 24px; }

.dd-banner__title { margin: 0 0 12px; font-size: clamp(24px, 3vw, 36px); font-weight: 600; color: var(--dd-white); }
.dd-banner__text  { margin: 0 0 24px; color: rgba(255,255,255,.92); font-size: 15px; }

.dd-banner--light .dd-banner__title { color: var(--dd-ink); }
.dd-banner--light .dd-banner__text  { color: var(--dd-muted); }

body.dd-lang-en .dd-banner__title { font-family: var(--dd-serif); font-weight: 500; }

.dd-banner--start { justify-items: start; text-align: start; }
.dd-banner--start .dd-banner__inner { padding-inline-start: 6vw; }

/* ---------- category tiles ---------- */

.dd-tiles { display: grid; gap: 26px 20px; margin: 30px 0 54px; padding: 0; list-style: none; }

.dd-tiles--3 { grid-template-columns: repeat(3, 1fr); }
.dd-tiles--4 { grid-template-columns: repeat(4, 1fr); }
.dd-tiles--5 { grid-template-columns: repeat(5, 1fr); }
.dd-tiles--6 { grid-template-columns: repeat(6, 1fr); }

.dd-tile__link { display: block; color: var(--dd-ink); text-decoration: none; }

.dd-tile__media {
	display: block;
	aspect-ratio: 1 / 1;
	overflow: hidden;
	background: var(--dd-surface);
	border-radius: var(--dd-radius);
}

.dd-tile__media.is-empty {
	background: repeating-linear-gradient(45deg, var(--dd-surface), var(--dd-surface) 12px, #EFF1EE 12px, #EFF1EE 24px);
}

.dd-tile__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.dd-tile__link:hover .dd-tile__media img { transform: scale(1.04); }

.dd-tile__label { display: block; margin-block-start: 12px; text-align: center; font-size: 14px; font-weight: 500; }
.dd-tile__link:hover .dd-tile__label { color: var(--dd-blue); }

/* ---------- product rail ---------- */

.dd-rail {
	display: grid;
	grid-auto-flow: column;
	grid-auto-columns: minmax(230px, 1fr);
	gap: 20px;
	margin: 26px 0 54px;
	padding: 0 0 8px;
	list-style: none;
	overflow-x: auto;
	scroll-snap-type: x mandatory;
	scrollbar-width: thin;
}

.dd-card { scroll-snap-align: start; }
.dd-card__link { position: relative; display: block; color: var(--dd-ink); text-decoration: none; }
.dd-card__media { display: block; aspect-ratio: 1 / 1; overflow: hidden; background: var(--dd-surface); }
.dd-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s ease; }
.dd-card__link:hover .dd-card__media img { transform: scale(1.04); }

.dd-card__flag {
	position: absolute;
	inset-block-start: 10px;
	inset-inline-start: 10px;
	padding: 4px 9px;
	background: var(--dd-red);
	color: var(--dd-white);
	font-size: 11px;
	font-weight: 700;
}

.dd-card__name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	margin-block-start: 12px;
	font-size: 14px;
	line-height: 1.7;
}

.dd-card__price { display: block; margin-block-start: 6px; font-weight: 700; color: var(--dd-blue); }
.dd-card__price del { color: var(--dd-muted); font-weight: 400; font-size: 13px; }

.dd-empty { padding: 40px 0 56px; text-align: center; color: var(--dd-muted); }

/* ---------- split band ---------- */

.dd-split { display: grid; grid-template-columns: 1fr 1fr; min-height: 480px; }
.dd-split--flip .dd-split__media { order: 2; }
.dd-split__media { background: var(--dd-sand) center/cover no-repeat; }

.dd-split__body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: flex-start;
	gap: 16px;
	padding: 56px clamp(24px, 6vw, 88px);
	background: var(--dd-surface);
}

.dd-split__title { margin: 0; font-size: clamp(24px, 2.6vw, 34px); font-weight: 600; }
body.dd-lang-en .dd-split__title { font-family: var(--dd-serif); font-weight: 500; }
.dd-split__text { margin: 0; color: var(--dd-muted); font-size: 15px; }

/* ---------- trust strip + budget blocks ---------- */

.dd-usp {
	display: grid;
	grid-template-columns: repeat(4, 1fr);
	gap: 1px;
	margin: 0 0 8px;
	padding: 0;
	list-style: none;
	background: var(--dd-line);
	border: 1px solid var(--dd-line);
}

.dd-usp__item { display: flex; flex-direction: column; gap: 4px; padding: 22px 20px; background: var(--dd-white); text-align: center; }
.dd-usp__item strong { font-size: 14px; }
.dd-usp__item span   { font-size: 12.5px; color: var(--dd-muted); }

.dd-promo { display: grid; grid-template-columns: repeat(5, 1fr); gap: 14px; margin: 26px 0 54px; padding: 0; list-style: none; }

.dd-promo__item a {
	display: grid;
	place-items: center;
	min-height: 132px;
	padding: 18px;
	font-size: 17px;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
	transition: transform .2s ease;
}

.dd-promo__item a:hover { transform: translateY(-3px); }

.dd-promo__item--red   a { background: var(--dd-red);   color: #fff; }
.dd-promo__item--blue  a { background: var(--dd-blue);  color: #fff; }
.dd-promo__item--green a { background: var(--dd-green); color: var(--dd-deep); }
.dd-promo__item--sand  a { background: var(--dd-sand);  color: var(--dd-deep); }
.dd-promo__item--deep  a { background: var(--dd-deep);  color: #fff; }

/* ==========================================================================
   Footer — light throughout
   ========================================================================== */

.dd-subscribe { background: var(--dd-surface); border-block-start: 1px solid var(--dd-line); }

.dd-subscribe__inner { display: grid; grid-template-columns: 1.2fr 1fr; gap: 54px; padding-block: 54px; }
.dd-subscribe__col--contact { border-inline-start: 1px solid var(--dd-line); padding-inline-start: 54px; }
.dd-subscribe__title { margin: 0 0 8px; font-size: 21px; font-weight: 700; }
.dd-subscribe__note  { margin: 0 0 20px; color: var(--dd-muted); font-size: 14px; }
.dd-subscribe__form  { display: flex; gap: 10px; flex-wrap: wrap; }

.dd-subscribe__input {
	flex: 1 1 260px;
	padding: 14px 16px;
	border: 1px solid var(--dd-line);
	border-radius: var(--dd-radius);
	background: var(--dd-white);
	font: inherit;
	font-size: 14px;
}

.dd-subscribe__input:focus { outline: none; border-color: var(--dd-blue); }

.dd-footer__main { background: var(--dd-white); }
.dd-footer__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 40px 36px; padding-block: 60px 48px; }

.dd-footer__heading { margin: 0 0 18px; font-size: 15px; font-weight: 700; color: var(--dd-ink); }

.dd-footer__list { margin: 0; padding: 0; list-style: none; }
.dd-footer__list li { margin-block-end: 11px; }
.dd-footer__list a { color: var(--dd-muted); font-size: 14px; text-decoration: none; }
.dd-footer__list a:hover { color: var(--dd-blue); }

/* ---------- contact strip ---------- */

.dd-contact { border-block-start: 1px solid var(--dd-line); }

.dd-contact__inner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 40px;
	padding-block: 26px;
}

.dd-contact__item { display: flex; align-items: center; gap: 14px; color: var(--dd-ink); text-decoration: none; }

.dd-contact__icon {
	display: grid;
	place-items: center;
	flex: 0 0 auto;
	width: 46px; height: 46px;
	border: 1px solid var(--dd-line);
	border-radius: 50%;
	color: var(--dd-ink);
}

.dd-contact__icon svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.dd-contact__item:hover .dd-contact__icon { border-color: var(--dd-blue); color: var(--dd-blue); }

.dd-contact__body { display: flex; flex-direction: column; gap: 2px; }
.dd-contact__body small  { color: var(--dd-muted); font-size: 13px; }
.dd-contact__body strong { font-size: 15px; font-weight: 600; }
.dd-contact__body strong a { color: inherit; text-decoration: none; }
.dd-contact__body strong a:hover { color: var(--dd-blue); }

.dd-social { display: flex; gap: 14px; margin: 0; margin-inline-start: auto; padding: 0; list-style: none; }
.dd-social a { display: grid; place-items: center; width: 38px; height: 38px; color: var(--dd-ink); }
.dd-social a:hover { color: var(--dd-blue); }
.dd-social svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.5; }

/* ---------- legal bar ---------- */

.dd-footer__bar { border-block-start: 1px solid var(--dd-line); }

.dd-footer__barinner {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	gap: 20px;
	padding-block: 24px 30px;
}

.dd-footer__mark { font-size: 19px; font-weight: 800; color: var(--dd-blue); letter-spacing: -.02em; }
.dd-footer__mark em { font-style: normal; color: var(--dd-green); }
.dd-footer__copy { margin: 0; color: var(--dd-muted); font-size: 13.5px; }
.dd-footer__lang { margin-inline-start: auto; }
.dd-footer__lang .dd-lang__item a { border: 1px solid var(--dd-line); }

/* ==========================================================================
   WooCommerce
   ========================================================================== */

.dd-shop { padding-block: 34px 64px; }
.woocommerce ul.products li.product .price { color: var(--dd-blue); font-weight: 700; }
.woocommerce span.onsale { background: var(--dd-red); border-radius: 0; }

.woocommerce #respond input#submit,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button {
	background: var(--dd-deep);
	color: #fff;
	border-radius: var(--dd-radius);
	font-weight: 600;
}

.woocommerce #respond input#submit:hover,
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover { background: var(--dd-blue); color: #fff; }

.woocommerce .woocommerce-breadcrumb { color: var(--dd-muted); font-size: 13px; }

/* ==========================================================================
   Responsive
   ========================================================================== */

@media (max-width: 1280px) {
	.dd-nav__list > li > a { padding-inline: 9px; font-size: 14px; }
	.dd-signin__label { display: none; }
}

@media (max-width: 1100px) {
	.dd-footer__grid { grid-template-columns: repeat(3, 1fr); }
	.dd-promo { grid-template-columns: repeat(3, 1fr); }
	.dd-tiles--5, .dd-tiles--6 { grid-template-columns: repeat(4, 1fr); }
}

@media (max-width: 980px) {
	.dd-nav { display: none; }
	.dd-burger { display: flex; }
	.dd-masthead__inner { flex-wrap: wrap; gap: 14px; min-height: 0; padding-block: 14px; }
	.dd-search { order: 3; flex-basis: 100%; }
	.dd-logo { margin-inline-end: auto; }
	.dd-split { grid-template-columns: 1fr; }
	.dd-split--flip .dd-split__media { order: 0; }
	.dd-split__media { min-height: 280px; }
	.dd-subscribe__inner { grid-template-columns: 1fr; gap: 34px; }
	.dd-subscribe__col--contact { border-inline-start: 0; padding-inline-start: 0; border-block-start: 1px solid var(--dd-line); padding-block-start: 34px; }
	.dd-usp { grid-template-columns: repeat(2, 1fr); }
	.dd-banner--tall { min-height: 400px; }
	.dd-contact__inner { gap: 24px; }
	.dd-social { margin-inline-start: 0; }
}

@media (max-width: 620px) {
	.dd-tiles--3, .dd-tiles--4, .dd-tiles--5, .dd-tiles--6 { grid-template-columns: repeat(2, 1fr); }
	.dd-footer__grid { grid-template-columns: repeat(2, 1fr); gap: 30px 24px; padding-block: 40px 32px; }
	.dd-promo { grid-template-columns: repeat(2, 1fr); }
	.dd-contact__inner { flex-direction: column; align-items: flex-start; }
	.dd-footer__barinner { flex-direction: column; align-items: flex-start; }
	.dd-footer__lang { margin-inline-start: 0; }
	.dd-section { padding-block-start: 40px; }
}

.dd-globe.is-open .dd-globe__panel { opacity: 1; visibility: visible; }

/* ==========================================================================
   Resets for chrome inherited from the parent theme and WooCommerce
   ========================================================================== */

.dd-header button,
.dd-drawer button {
	appearance: none;
	background: transparent;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	color: var(--dd-ink);
	font: inherit;
	letter-spacing: normal;
	text-transform: none;
}

.dd-header button:hover,
.dd-header button:focus,
.dd-drawer button:hover {
	background: transparent;
	color: var(--dd-blue);
	box-shadow: none;
}

.dd-globe__toggle { padding: 4px; }
.dd-burger { padding: 6px 4px; }

/* The bag badge stays hidden until there is something in it. */
.dd-icon__count[data-dd-cart-count]:not([data-count]) { display: inline-block; }
.dd-icon--bag .dd-icon__count { pointer-events: none; }

/* Hello Elementor prints an entry title on every page; the storefront bands carry
   their own headings, so suppress it where the page is built from shortcodes. */
.dd-flush .page-header,
.dd-flush .entry-title { display: none; }

/* Shortcode bands are full-bleed and each one re-centres its own content with
   .dd-shell, so the parent theme's container must not clamp the page. */
.dd-flush .site-main,
.dd-flush .page-content,
.dd-flush .entry-content {
	/* !important because the parent theme clamps .site-main to its container width
	   from a generated stylesheet that loads after this one. */
	max-width: none !important;
	width: auto !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* The parent theme underlines every link inside .page-content (specificity 0,1,1).
   Storefront bands are navigation, not prose, so opt the whole page out. */
.dd-flush .page-content a,
.dd-flush .page-content a:hover,
.page-content a.dd-btn,
.page-content .dd-tile__link,
.page-content .dd-card__link { text-decoration: none; }

.dd-header a,
.dd-footer a,
.dd-drawer a { text-decoration: none; }

/* Link chrome from the parent theme must not reach the tile and card labels. */
.dd-btn,
.dd-btn:hover,
.dd-logo,
.dd-signin,
.dd-icon,
.dd-lang__item a,
.dd-tile__link,
.dd-tile__link:hover,
.dd-card__link,
.dd-card__link:hover,
.dd-subnav__item a,
.dd-footer__list a,
.dd-contact__item { text-decoration: none; }

.dd-tile__label { color: var(--dd-ink); }
.dd-tile__link:hover .dd-tile__label { color: var(--dd-blue); }
.dd-card__name { color: var(--dd-ink); }

.dd-flush .page-content > .dd-section:first-child { padding-block-start: 34px; }

/* ==========================================================================
   Heading colours, restated
   Elementor's kit styles headings as `.elementor-kit-N h3` (0,1,1), which outranks
   a single band class. Two classes settle it without reaching for !important.
   ========================================================================== */

.dd-banner .dd-banner__title { color: var(--dd-white); }
.dd-banner .dd-banner__text  { color: rgba(255, 255, 255, .94); }
.dd-banner--light .dd-banner__title { color: var(--dd-ink); }
.dd-banner--light .dd-banner__text  { color: var(--dd-muted); }

.dd-section .dd-section__title { color: var(--dd-ink); }
.dd-section .dd-section__sub   { color: var(--dd-muted); }

.dd-split .dd-split__title { color: var(--dd-ink); }
.dd-split .dd-split__text  { color: var(--dd-muted); }

.dd-footer .dd-footer__heading { color: var(--dd-ink); }
.dd-subscribe .dd-subscribe__title { color: var(--dd-ink); }
.dd-subscribe .dd-subscribe__note  { color: var(--dd-muted); }

.dd-tiles .dd-tile__label { color: var(--dd-ink); }
.dd-tiles .dd-tile__link:hover .dd-tile__label { color: var(--dd-blue); }
