.elementor-151037 .elementor-element.elementor-element-dcafs1a{--display:flex;--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--padding-top:40px;--padding-bottom:28px;--padding-left:18px;--padding-right:18px;}.elementor-151037 .elementor-element.elementor-element-dcafta{text-align:center;}.elementor-151037 .elementor-element.elementor-element-dcafxa{text-align:center;}.elementor-151037 .elementor-element.elementor-element-dcafs2a{--display:flex;--flex-direction:row;--container-widget-width:calc( ( 1 - var( --container-widget-flex-grow ) ) * 100% );--container-widget-height:100%;--container-widget-flex-grow:1;--container-widget-align-self:stretch;--flex-wrap-mobile:wrap;--align-items:stretch;--gap:40px 40px;--row-gap:40px;--column-gap:40px;--flex-wrap:nowrap;--padding-top:0px;--padding-bottom:60px;--padding-left:35px;--padding-right:35px;}.elementor-151037 .elementor-element.elementor-element-dcafc0a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}.elementor-151037 .elementor-element.elementor-element-dcafc1a{--display:flex;--padding-top:0px;--padding-bottom:0px;--padding-left:0px;--padding-right:0px;}:root{--page-title-display:none;}@media(min-width:768px){.elementor-151037 .elementor-element.elementor-element-dcafc0a{--width:50%;}.elementor-151037 .elementor-element.elementor-element-dcafc1a{--width:50%;}}@media(max-width:1024px){.elementor-151037 .elementor-element.elementor-element-dcafs2a{--padding-top:0px;--padding-bottom:48px;--padding-left:18px;--padding-right:18px;}}@media(max-width:767px){.elementor-151037 .elementor-element.elementor-element-dcafs1a{--padding-top:24px;--padding-bottom:20px;--padding-left:18px;--padding-right:18px;}.elementor-151037 .elementor-element.elementor-element-dcafs2a{--flex-direction:column;--container-widget-width:100%;--container-widget-height:initial;--container-widget-flex-grow:0;--container-widget-align-self:initial;--flex-wrap-mobile:wrap;--gap:24px 24px;--row-gap:24px;--column-gap:24px;--padding-top:0px;--padding-bottom:40px;--padding-left:18px;--padding-right:18px;}.elementor-151037 .elementor-element.elementor-element-dcafc0a{--width:100%;}.elementor-151037 .elementor-element.elementor-element-dcafc1a{--width:100%;}}/* Start custom CSS *//**
 * Diwan Café: the intro and the cafés.
 *
 * The concept's layout in the site's own colours: the buttons are the site's
 * buttons (black, papyrus and wood on hover) and the headings its headings.
 */

/* ---------------------------------------------------------------- the intro */

.elementor-widget.diwan-cafe-intro__title .elementor-heading-title {
	color: var(--diwan-heading, #246b8f);
	font-size: 30px;
	font-weight: 600;
	text-transform: uppercase;
}

/* A short rule under the title, as the concept draws it. */
.elementor-widget.diwan-cafe-intro__title::after {
	background: var(--diwan-papyrus, #e0b070);
	block-size: 2px;
	content: "";
	display: block;
	inline-size: 44px;
	margin: 10px auto 0;
}

.elementor-widget.diwan-cafe-intro__text {
	color: var(--diwan-text, #1a1a1a);
	font-size: 15px;
	line-height: 1.7;
	margin-inline: auto;
	max-inline-size: 72ch;
}

.elementor-widget.diwan-cafe-intro__text p:last-child {
	margin-block-end: 0;
}

/* ---------------------------------------------------------------- the cards */

.diwan-cafe {
	background: var(--diwan-surface, #fff);
	block-size: 100%;
	border: 1px solid var(--diwan-border-soft, #ececec);
	border-radius: var(--diwan-radius, 6px);
	display: flex;
	flex-direction: column;
	overflow: hidden;
}

.diwan-cafe__shot {
	background: var(--diwan-surface-sunken, #f4f3f1);
	block-size: clamp(200px, 30vw, 340px);
	display: block;
	overflow: hidden;
	position: relative;
}

/* A shade at the foot of the picture, so the words on it can be read. */
.diwan-cafe__shot::after {
	background: linear-gradient(180deg, rgb(0 0 0 / 0) 45%, rgb(0 0 0 / 0.55) 100%);
	content: "";
	inset: 0;
	pointer-events: none;
	position: absolute;
}

.diwan-cafe__image {
	block-size: 100%;
	display: block;
	inline-size: 100%;
	object-fit: cover;
	transition: transform 0.5s ease;
}

a.diwan-cafe__shot:hover .diwan-cafe__image,
a.diwan-cafe__shot:focus-visible .diwan-cafe__image {
	transform: scale(1.04);
}

.diwan-cafe__pdf {
	background: rgb(255 255 255 / 0.94);
	border-radius: var(--diwan-radius-sm, 3px);
	color: var(--diwan-text, #1a1a1a);
	font-size: 11px;
	font-weight: 600;
	inset-block-start: 16px;
	inset-inline-end: 16px;
	letter-spacing: 0.08em;
	padding: 5px 9px;
	position: absolute;
	z-index: 2;
}

/* The site's button, on the picture. */
.diwan-cafe__cta {
	align-items: center;
	background: var(--diwan-btn-bg, #000);
	color: var(--diwan-btn-text, #fff);
	display: inline-flex;
	font-size: 13px;
	font-weight: 600;
	gap: 8px;
	inset-block-end: 16px;
	inset-inline-start: 16px;
	letter-spacing: 0.06em;
	padding: 11px 18px;
	position: absolute;
	text-transform: uppercase;
	transition: background-color 0.15s ease, color 0.15s ease;
	z-index: 2;
}

a.diwan-cafe__shot:hover .diwan-cafe__cta,
a.diwan-cafe__shot:focus-visible .diwan-cafe__cta {
	background: var(--diwan-hover, #e0b070);
	color: var(--diwan-hover-text, #3b0f00);
}

a.diwan-cafe__shot:focus-visible {
	outline: 2px solid var(--diwan-blue, #246b8f);
	outline-offset: -2px;
}

/* The chevron points onward, which in Arabic is to the left. */
[dir="rtl"] .diwan-cafe__cta svg,
.rtl .diwan-cafe__cta svg {
	transform: scaleX(-1);
}

.diwan-cafe__meta {
	display: flex;
	flex: 1;
	flex-direction: column;
	gap: 6px;
	padding: 14px 18px 16px;
}

.diwan-cafe__name {
	color: var(--diwan-heading, #246b8f);
	font-size: 19px;
	font-weight: 600;
	line-height: 1.3;
	margin: 0;
}

.diwan-cafe__row {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	gap: 8px 16px;
	justify-content: space-between;
}

.diwan-cafe__place {
	align-items: center;
	color: var(--diwan-text-muted, #6e6e6e);
	display: flex;
	font-size: 14px;
	gap: 6px;
	margin: 0;
}

.diwan-cafe__place svg {
	color: var(--diwan-wood, #3b0f00);
	flex: none;
}

.diwan-cafe__actions {
	display: flex;
	flex-wrap: wrap;
	font-size: 14px;
	font-weight: 600;
	gap: 16px;
	margin: 0;
}

.diwan-cafe__actions a {
	color: var(--diwan-link, #246b8f);
	text-decoration: underline;
	text-decoration-color: transparent;
	text-underline-offset: 3px;
	transition: color 0.15s ease, text-decoration-color 0.15s ease;
}

.diwan-cafe__actions a:hover,
.diwan-cafe__actions a:focus-visible {
	color: var(--diwan-wood, #3b0f00);
	text-decoration-color: currentcolor;
}

/* One under the other on a phone: Elementor stacks the columns, and its own
   gap keeps them apart. */
@media (max-width: 767px) {
	.elementor-widget.diwan-cafe-intro__title .elementor-heading-title {
		font-size: 24px;
	}

	.diwan-cafe__shot {
		block-size: 220px;
	}
}

/* Staging: the card sits in an HTML widget, which fills its column. */
.diwan-cafe-col > .elementor-widget-html, .diwan-cafe-col > .elementor-widget-html > .elementor-widget-container { block-size: 100%; }
/* Staging: the kit sizes every h2 as a band heading; a card's name is smaller. */
.elementor .diwan-cafe h2.diwan-cafe__name { font-size: 19px; line-height: 1.3; letter-spacing: normal; text-transform: none; margin: 0; }
.elementor .diwan-cafe-intro__text, .elementor .diwan-cafe-intro__text p { text-align: center; }/* End custom CSS */