/* ==========================================================================
   Nap Time Mattresses — design system
   Adapted from the "Sleepy" Elementor kit (hero + overlapping cards, split
   feature blocks, card grids, CTA bands, boxed footer CTA) and rebranded.
   Layout uses logical properties so the same markup works LTR (EN) and RTL (AR).
   ========================================================================== */

:root {
	--ntm-navy: #14233A;
	--ntm-ink: #0C1626;
	--ntm-gold: #C9A46A;
	--ntm-gold-hover: #D6B784;
	--ntm-gold-dark: #8A6632;
	--ntm-gold-light: #D9BF8F;
	--ntm-ivory: #F7F4EF;
	--ntm-sand: #EFE7DA;
	--ntm-border: #E5DFD4;
	--ntm-text: #4F5868;
	--ntm-muted: #6B7383;
	--ntm-on-dark: #C8CDD6;
	--ntm-white: #FFFFFF;
	--ntm-radius-sm: 10px;
	--ntm-radius: 16px;
	--ntm-radius-lg: 24px;
	--ntm-shadow: 0 24px 60px -28px rgba(20, 35, 58, .35);
	--ntm-shadow-sm: 0 10px 30px -18px rgba(20, 35, 58, .35);
	--ntm-font-head: 'Playfair Display', Georgia, 'Times New Roman', serif;
	--ntm-font-body: 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
	--ntm-track: .18em;
	--ntm-section-y: 104px;
	--ntm-gutter: 24px;
}
html[lang|="ar"] {
	--ntm-font-head: 'Almarai', 'Segoe UI', Tahoma, sans-serif;
	--ntm-font-body: 'Almarai', 'Segoe UI', Tahoma, sans-serif;
	--ntm-track: 0;
}
@media (max-width: 1024px) { :root { --ntm-section-y: 80px; } }
@media (max-width: 767px)  { :root { --ntm-section-y: 60px; --ntm-gutter: 16px; } }

/* ---------- Base ---------- */
html { scroll-behavior: smooth; scroll-padding-top: 96px; }
body {
	font-family: var(--ntm-font-body);
	color: var(--ntm-text);
	background: var(--ntm-white);
	font-size: 16px;
	line-height: 1.7;
	-webkit-font-smoothing: antialiased;
	text-rendering: optimizeLegibility;
	overflow-x: clip;
}
html[lang|="ar"] body { line-height: 1.85; }
a { color: var(--ntm-navy); text-decoration: none; transition: color .2s ease; }
a:hover, a:focus { color: var(--ntm-gold-dark); }
:focus-visible { outline: 3px solid var(--ntm-gold); outline-offset: 3px; border-radius: 4px; }
h1, h2, h3, h4, h5, h6 { font-family: var(--ntm-font-head); color: var(--ntm-navy); }
img { max-width: 100%; height: auto; }
.elementor-widget-text-editor p:last-child { margin-bottom: 0; }
.elementor-widget-text-editor a { color: var(--ntm-gold-dark); text-decoration: underline; text-underline-offset: 3px; }
.screen-reader-text { position: absolute !important; clip: rect(1px, 1px, 1px, 1px); width: 1px; height: 1px; overflow: hidden; }

/* Container gutters (Elementor containers use --padding-* variables) */
.e-con.e-parent { --padding-inline-start: var(--ntm-gutter); --padding-inline-end: var(--ntm-gutter); --padding-left: var(--ntm-gutter); --padding-right: var(--ntm-gutter); }
.e-con { --gap: 20px; --row-gap: 20px; --column-gap: 20px; }

/* ---------- Typography helpers ---------- */
.ntm-eyebrow .elementor-heading-title {
	font-family: var(--ntm-font-body);
	font-size: 13px; font-weight: 700; line-height: 1.4;
	letter-spacing: var(--ntm-track); text-transform: uppercase;
	color: var(--ntm-gold-dark);
	display: inline-flex; align-items: center; gap: 10px;
}
html[lang|="ar"] .ntm-eyebrow .elementor-heading-title { font-size: 15px; text-transform: none; }
/* (decorative bar before section labels removed: it read like an em dash) */
.ntm-eyebrow--light .elementor-heading-title, .ntm-bg-navy .ntm-eyebrow .elementor-heading-title, .ntm-on-dark .ntm-eyebrow .elementor-heading-title { color: var(--ntm-gold-light); }
.ntm-center .ntm-eyebrow .elementor-heading-title, .ntm-center.ntm-eyebrow .elementor-heading-title { justify-content: center; }

.ntm-h1 .elementor-heading-title {
	font-family: var(--ntm-font-head); font-weight: 600;
	font-size: clamp(2.25rem, 1.4rem + 3.2vw, 4rem); line-height: 1.1; letter-spacing: -.01em;
	color: var(--ntm-white);
}
html[lang|="ar"] .ntm-h1 .elementor-heading-title { font-weight: 800; line-height: 1.3; letter-spacing: 0; }
.ntm-h2 .elementor-heading-title {
	font-family: var(--ntm-font-head); font-weight: 600;
	font-size: clamp(1.85rem, 1.35rem + 1.9vw, 2.9rem); line-height: 1.16; color: var(--ntm-navy);
}
html[lang|="ar"] .ntm-h2 .elementor-heading-title { font-weight: 800; line-height: 1.35; }
.ntm-h3 .elementor-heading-title, .ntm-h3.elementor-widget-heading .elementor-heading-title {
	font-family: var(--ntm-font-head); font-weight: 600; font-size: clamp(1.25rem, 1.1rem + .5vw, 1.5rem); line-height: 1.3; color: var(--ntm-navy);
}
html[lang|="ar"] .ntm-h3 .elementor-heading-title { font-weight: 700; line-height: 1.5; }
.ntm-h4 .elementor-heading-title { font-family: var(--ntm-font-body); font-weight: 700; font-size: 1rem; letter-spacing: .02em; color: var(--ntm-navy); }
.ntm-h3 .elementor-heading-title a, .ntm-h2 .elementor-heading-title a { color: inherit; }
.ntm-lead, .ntm-lead p { font-size: clamp(1.02rem, .98rem + .25vw, 1.15rem); line-height: 1.75; color: var(--ntm-text); }
.ntm-lead--light, .ntm-lead--light p { color: rgba(255, 255, 255, .86); }
.ntm-bg-navy, .ntm-bg-navy p, .ntm-on-dark { color: var(--ntm-on-dark); }
.ntm-bg-navy .ntm-h2 .elementor-heading-title, .ntm-bg-navy .ntm-h3 .elementor-heading-title, .ntm-bg-navy .ntm-h4 .elementor-heading-title,
.ntm-on-dark .ntm-h2 .elementor-heading-title { color: var(--ntm-white); }

/* ---------- Sections ---------- */
.e-con.ntm-section { --padding-top: var(--ntm-section-y); --padding-bottom: var(--ntm-section-y); --padding-block-start: var(--ntm-section-y); --padding-block-end: var(--ntm-section-y); }
.e-con.ntm-section--tight { --padding-top: 48px; --padding-bottom: 48px; --padding-block-start: 48px; --padding-block-end: 48px; }
.ntm-section > .e-con-inner { gap: 48px; }
.ntm-bg-white { background: var(--ntm-white); }
.ntm-bg-ivory { background: var(--ntm-ivory); }
.ntm-bg-sand { background: var(--ntm-sand); }
.ntm-bg-navy { background: var(--ntm-navy); }
.ntm-narrow > .e-con-inner { max-width: 880px; }
.ntm-section-head { max-width: 760px; --gap: 14px; --row-gap: 14px; }
.ntm-section-head.ntm-center { margin-inline: auto; text-align: center; align-items: center; }
.ntm-center { text-align: center; }
.ntm-btn-row { --gap: 12px; --row-gap: 12px; --column-gap: 12px; margin-top: 8px; flex-wrap: wrap; }
.ntm-btn-row.ntm-center { justify-content: center; }
.ntm-section-head + .e-con { margin-top: 4px; }

/* ---------- Buttons ---------- */
[class*="ntm-btn-"] .elementor-button {
	font-family: var(--ntm-font-body); font-weight: 700; font-size: 15px; line-height: 1.2; letter-spacing: .01em;
	padding: 15px 24px; border-radius: 999px; border: 2px solid transparent;
	transition: background-color .2s ease, color .2s ease, border-color .2s ease, transform .2s ease, box-shadow .2s ease;
	min-height: 52px; display: inline-flex; align-items: center; justify-content: center;
}
html[lang|="ar"] [class*="ntm-btn-"] .elementor-button { font-size: 16px; letter-spacing: 0; }
[class*="ntm-btn-"] .elementor-button:hover { transform: translateY(-1px); }
[class*="ntm-btn-"] .elementor-button .elementor-button-icon svg { width: 1em; height: 1em; fill: currentColor; }
.ntm-btn-gold .elementor-button { background: var(--ntm-gold); color: var(--ntm-navy); box-shadow: 0 10px 24px -12px rgba(201, 164, 106, .8); }
.ntm-btn-gold .elementor-button:hover, .ntm-btn-gold .elementor-button:focus { background: var(--ntm-gold-hover); color: var(--ntm-ink); }
.ntm-btn-navy .elementor-button { background: var(--ntm-navy); color: var(--ntm-white); }
.ntm-btn-navy .elementor-button:hover, .ntm-btn-navy .elementor-button:focus { background: var(--ntm-ink); color: var(--ntm-white); }
.ntm-btn-outline .elementor-button { background: transparent; color: var(--ntm-navy); border-color: var(--ntm-navy); }
.ntm-btn-outline .elementor-button:hover, .ntm-btn-outline .elementor-button:focus { background: var(--ntm-navy); color: var(--ntm-white); }
.ntm-btn-outline-light .elementor-button { background: rgba(255, 255, 255, .06); color: var(--ntm-white); border-color: rgba(255, 255, 255, .7); backdrop-filter: blur(4px); }
.ntm-btn-outline-light .elementor-button:hover, .ntm-btn-outline-light .elementor-button:focus { background: var(--ntm-white); color: var(--ntm-navy); border-color: var(--ntm-white); }
.ntm-btn-link-light .elementor-button { background: transparent; color: var(--ntm-white); padding-inline: 8px; }
.ntm-btn-link-light .elementor-button:hover { color: var(--ntm-gold-light); }
.ntm-btn-link .elementor-button { background: transparent; color: var(--ntm-navy); padding-inline: 8px; }
.ntm-btn-link .elementor-button:hover { color: var(--ntm-gold-dark); }
.ntm-btn-sm .elementor-button { padding: 11px 20px; min-height: 44px; font-size: 14px; }

/* ---------- Home hero (from kit: full-bleed photo, overlay, strong headline) ---------- */
.e-con.ntm-hero {
	min-height: min(88vh, 820px);
	--padding-top: 150px; --padding-bottom: 210px; --padding-block-start: 150px; --padding-block-end: 210px;
	position: relative; justify-content: center;
}
.ntm-hero::before, .ntm-page-hero::before, .ntm-cta-band::before, .ntm-path-card::before {
	content: ""; position: absolute; inset: 0; pointer-events: none; z-index: 0;
}
.ntm-hero::before { background: linear-gradient(90deg, rgba(12, 22, 38, .88) 0%, rgba(12, 22, 38, .66) 45%, rgba(12, 22, 38, .18) 100%); }
html[dir="rtl"] .ntm-hero::before { background: linear-gradient(270deg, rgba(12, 22, 38, .88) 0%, rgba(12, 22, 38, .66) 45%, rgba(12, 22, 38, .18) 100%); }
.ntm-hero > .e-con-inner, .ntm-page-hero > .e-con-inner, .ntm-cta-band > .e-con-inner { position: relative; z-index: 1; }
.ntm-hero__content, .ntm-page-hero__content { max-width: 680px; --gap: 20px; --row-gap: 20px; }
.ntm-h1--hero .elementor-heading-title { font-size: clamp(2.5rem, 1.5rem + 3.6vw, 4.5rem); }
@media (max-width: 767px) {
	.e-con.ntm-hero { min-height: 0; --padding-top: 96px; --padding-bottom: 150px; --padding-block-start: 96px; --padding-block-end: 150px; }
	.ntm-hero::before { background: linear-gradient(180deg, rgba(12, 22, 38, .8) 0%, rgba(12, 22, 38, .72) 100%) !important; }
}

/* Trust chips */
.ntm-chips .elementor-icon-list-items { gap: 10px 22px; margin-top: 10px; }
.ntm-chips .elementor-icon-list-item { color: rgba(255, 255, 255, .9); font-weight: 600; font-size: 14px; margin: 0 !important; padding: 0 !important; }
.ntm-chips .elementor-icon-list-item::after { display: none !important; }
.ntm-chips .elementor-icon-list-icon svg { fill: var(--ntm-gold); width: 15px; height: 15px; }
.ntm-chips .elementor-icon-list-text { color: rgba(255, 255, 255, .92); padding-inline-start: 6px; }

/* ---------- Audience path cards overlapping the hero (kit's 3 category cards) ---------- */
.e-con.ntm-paths { --padding-top: 0; --padding-bottom: 0; --padding-block-start: 0; --padding-block-end: 0; margin-top: -130px; position: relative; z-index: 2; }
@media (max-width: 767px) { .e-con.ntm-paths { margin-top: -96px; } }
.e-con.ntm-path-card {
	position: relative; overflow: hidden; border-radius: var(--ntm-radius);
	min-height: 300px; justify-content: flex-end; --gap: 8px; --row-gap: 8px;
	--padding-top: 28px; --padding-bottom: 28px; --padding-left: 28px; --padding-right: 28px;
	--padding-block-start: 28px; --padding-block-end: 28px; --padding-inline-start: 28px; --padding-inline-end: 28px;
	box-shadow: var(--ntm-shadow); color: var(--ntm-white);
	transition: transform .3s ease, box-shadow .3s ease;
}
.ntm-path-card::before { background: linear-gradient(180deg, rgba(12, 22, 38, .05) 15%, rgba(12, 22, 38, .9) 100%); transition: background .3s ease; }
.ntm-path-card > * { position: relative; z-index: 1; }
.e-con.ntm-path-card:hover { transform: translateY(-4px); box-shadow: 0 30px 60px -26px rgba(20, 35, 58, .55); }
.ntm-path-card__title .elementor-heading-title { color: var(--ntm-white); font-family: var(--ntm-font-head); font-weight: 600; font-size: 1.55rem; line-height: 1.25; }
html[lang|="ar"] .ntm-path-card__title .elementor-heading-title { font-weight: 800; }
.ntm-path-card__text, .ntm-path-card__text p { color: rgba(255, 255, 255, .86); font-size: 15px; line-height: 1.6; }
.ntm-path-card__cta .elementor-heading-title { font-family: var(--ntm-font-body); color: var(--ntm-gold-light); font-size: 14px; font-weight: 700; letter-spacing: .04em; margin-top: 6px; }
.ntm-path-card__cta .elementor-heading-title::after { content: " →"; }
html[dir="rtl"] .ntm-path-card__cta .elementor-heading-title::after { content: " ←"; }

/* ---------- Cards ---------- */
.ntm-grid { align-items: stretch; }
.e-con.ntm-card {
	background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius);
	overflow: hidden; --gap: 0; --row-gap: 0; box-shadow: var(--ntm-shadow-sm);
	--padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0;
	--padding-block-start: 0; --padding-block-end: 0; --padding-inline-start: 0; --padding-inline-end: 0;
	transition: transform .25s ease, box-shadow .25s ease;
}
.e-con.ntm-card:hover { transform: translateY(-3px); box-shadow: var(--ntm-shadow); }
.ntm-card__img, .ntm-card__img img { width: 100%; display: block; }
.ntm-card__img img { aspect-ratio: 4 / 3; object-fit: cover; height: auto; }
.e-con.ntm-card__body { --padding-top: 24px; --padding-bottom: 26px; --padding-left: 24px; --padding-right: 24px; --padding-block-start: 24px; --padding-block-end: 26px; --padding-inline-start: 24px; --padding-inline-end: 24px; --gap: 10px; --row-gap: 10px; flex-grow: 1; }
.ntm-card__body p { font-size: 15px; line-height: 1.65; }
.ntm-card__body .ntm-btn-row { margin-top: auto; padding-top: 8px; }
.ntm-card__more .elementor-heading-title { font-family: var(--ntm-font-body); font-weight: 700; font-size: 14px; letter-spacing: .02em; }
.ntm-card__more .elementor-heading-title a { color: var(--ntm-gold-dark); }
.ntm-card__more .elementor-heading-title a::after { content: " →"; }
html[dir="rtl"] .ntm-card__more .elementor-heading-title a::after { content: " ←"; }
.ntm-card__more { margin-top: auto !important; }

/* Icon features (kit "award" row → service features) */
.ntm-feature .elementor-icon-box-wrapper { text-align: start; }
.ntm-feature .elementor-icon-box-icon { margin-bottom: 18px; }
.ntm-feature .elementor-icon { background: var(--ntm-sand) !important; color: var(--ntm-gold-dark) !important; fill: var(--ntm-gold-dark) !important; font-size: 22px; padding: 18px; }
.ntm-feature .elementor-icon svg { width: 22px; height: 22px; fill: var(--ntm-gold-dark); }
.ntm-feature .elementor-icon-box-title { font-family: var(--ntm-font-head); font-weight: 600; font-size: 1.25rem; line-height: 1.35; color: var(--ntm-navy); margin: 0 0 8px; }
html[lang|="ar"] .ntm-feature .elementor-icon-box-title { font-weight: 700; }
.ntm-feature .elementor-icon-box-description { font-size: 15px; line-height: 1.65; color: var(--ntm-text); margin: 0; }
.ntm-feature--card { background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius); padding: 30px 28px; box-shadow: var(--ntm-shadow-sm); height: 100%; }
.ntm-bg-white .ntm-feature--card { background: var(--ntm-ivory); border-color: transparent; box-shadow: none; }
.ntm-bg-white .ntm-feature--card .elementor-icon { background: var(--ntm-white) !important; }
.ntm-feature .elementor-icon-box-icon, .ntm-feature .elementor-icon-box-wrapper { justify-content: flex-start; }
.ntm-feature .elementor-icon-box-wrapper { display: flex; flex-direction: column; align-items: flex-start; }

/* Check lists */
.ntm-check-list .elementor-icon-list-items { display: grid; gap: 12px; align-items: start; }
.ntm-check-list .elementor-icon-list-item { align-items: flex-start !important; padding: 0 !important; margin: 0 !important; font-weight: 600; color: var(--ntm-navy); }
.ntm-check-list .elementor-icon-list-icon { margin-top: 5px; }
.ntm-check-list .elementor-icon-list-icon svg { width: 16px; height: 16px; fill: var(--ntm-gold-dark); }
.ntm-check-list .elementor-icon-list-text { padding-inline-start: 10px; }
.ntm-check-list--light .elementor-icon-list-item, .ntm-check-list--light .elementor-icon-list-text { color: var(--ntm-white); }
.ntm-check-list--light .elementor-icon-list-icon svg { fill: var(--ntm-gold); }
.ntm-check-list--2col .elementor-icon-list-items { grid-template-columns: 1fr 1fr; gap: 12px 24px; }
@media (max-width: 767px) { .ntm-check-list--2col .elementor-icon-list-items { grid-template-columns: 1fr; } }

/* ---------- Split blocks (kit "Introducing / Built with science") ---------- */
.ntm-splits > .e-con-inner { gap: 0; }
.e-con.ntm-split { --gap: 0; --row-gap: 0; --column-gap: 0; background: var(--ntm-white); border-radius: var(--ntm-radius-lg); overflow: hidden; box-shadow: var(--ntm-shadow); align-items: stretch; }
.ntm-splits .e-con.ntm-split + .e-con.ntm-split { margin-top: 40px; }
.e-con.ntm-split__media { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --padding-block-start: 0; --padding-block-end: 0; --padding-inline-start: 0; --padding-inline-end: 0; min-height: 360px; }
.ntm-split__img, .ntm-split__img img { width: 100%; height: 100%; display: block; }
.ntm-split__img img { object-fit: cover; min-height: 360px; }
.ntm-split__img { flex-grow: 1; }
.e-con.ntm-split__panel { justify-content: center; --gap: 18px; --row-gap: 18px; --padding-top: 64px; --padding-bottom: 64px; --padding-left: 64px; --padding-right: 64px; --padding-block-start: 64px; --padding-block-end: 64px; --padding-inline-start: 64px; --padding-inline-end: 64px; }
@media (max-width: 1024px) {
	.e-con.ntm-split, .e-con.ntm-split--rev { flex-direction: column !important; }
	.e-con.ntm-split--rev > .ntm-split__media { order: -1; }
	.e-con.ntm-split__media, .ntm-split__img img { min-height: 0; }
	.ntm-split__img img { aspect-ratio: 16 / 10; height: auto; }
	.e-con.ntm-split__panel { --padding-top: 40px; --padding-bottom: 44px; --padding-left: 32px; --padding-right: 32px; --padding-block-start: 40px; --padding-block-end: 44px; --padding-inline-start: 32px; --padding-inline-end: 32px; }
}
@media (max-width: 767px) { .e-con.ntm-split__panel { --padding-left: 22px; --padding-right: 22px; --padding-inline-start: 22px; --padding-inline-end: 22px; } }

/* ---------- Hospitality band (kit's purple video panel → navy B2B panel) ---------- */
.e-con.ntm-b2b { --gap: 0; --row-gap: 0; --column-gap: 0; align-items: stretch; border-radius: var(--ntm-radius-lg); overflow: hidden; background: linear-gradient(135deg, #1B2E4A 0%, var(--ntm-ink) 100%); box-shadow: 0 30px 80px -40px rgba(0, 0, 0, .8); border: 1px solid rgba(201, 164, 106, .25); }
.e-con.ntm-b2b--rev { flex-direction: row-reverse; }
.e-con.ntm-b2b__media { --padding-top: 0; --padding-bottom: 0; --padding-left: 0; --padding-right: 0; --padding-block-start: 0; --padding-block-end: 0; --padding-inline-start: 0; --padding-inline-end: 0; }
.ntm-b2b__img, .ntm-b2b__img img { width: 100%; height: 100%; display: block; }
.ntm-b2b__img img { object-fit: cover; min-height: 420px; }
.ntm-b2b__img { flex-grow: 1; }
.e-con.ntm-b2b__panel { justify-content: center; --gap: 20px; --row-gap: 20px; --padding-top: 64px; --padding-bottom: 64px; --padding-left: 60px; --padding-right: 60px; --padding-block-start: 64px; --padding-block-end: 64px; --padding-inline-start: 60px; --padding-inline-end: 60px; }
@media (max-width: 1024px) {
	.e-con.ntm-b2b, .e-con.ntm-b2b--rev { flex-direction: column !important; }
	.ntm-b2b__img img { min-height: 0; aspect-ratio: 16 / 10; }
	.e-con.ntm-b2b__panel { --padding-top: 40px; --padding-bottom: 44px; --padding-left: 28px; --padding-right: 28px; --padding-block-start: 40px; --padding-block-end: 44px; --padding-inline-start: 28px; --padding-inline-end: 28px; }
}

/* ---------- Inner page hero ---------- */
.e-con.ntm-page-hero {
	position: relative; min-height: 460px; justify-content: center;
	--padding-top: 120px; --padding-bottom: 100px; --padding-block-start: 120px; --padding-block-end: 100px;
}
.ntm-page-hero::before { background: linear-gradient(90deg, rgba(12, 22, 38, .9) 0%, rgba(12, 22, 38, .7) 55%, rgba(12, 22, 38, .35) 100%); }
html[dir="rtl"] .ntm-page-hero::before { background: linear-gradient(270deg, rgba(12, 22, 38, .9) 0%, rgba(12, 22, 38, .7) 55%, rgba(12, 22, 38, .35) 100%); }
.ntm-page-hero--b2b::after { content: ""; position: absolute; inset-inline: 0; bottom: 0; height: 4px; background: linear-gradient(90deg, var(--ntm-gold), transparent); z-index: 1; }
.e-con.ntm-page-hero--short { min-height: 320px; --padding-top: 90px; --padding-bottom: 70px; --padding-block-start: 90px; --padding-block-end: 70px; }
.ntm-page-hero__content { max-width: 760px; }
@media (max-width: 767px) {
	.e-con.ntm-page-hero { min-height: 0; --padding-top: 72px; --padding-bottom: 64px; --padding-block-start: 72px; --padding-block-end: 64px; }
	.ntm-page-hero::before { background: rgba(12, 22, 38, .78) !important; }
}

/* ---------- Steps ---------- */
.e-con.ntm-step { background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius); --padding-top: 30px; --padding-bottom: 30px; --padding-left: 28px; --padding-right: 28px; --padding-block-start: 30px; --padding-block-end: 30px; --padding-inline-start: 28px; --padding-inline-end: 28px; --gap: 10px; --row-gap: 10px; position: relative; }
.ntm-bg-white .e-con.ntm-step { background: var(--ntm-ivory); border-color: transparent; }
.ntm-step__num .elementor-heading-title { font-family: var(--ntm-font-head); font-size: 2.4rem; font-weight: 600; line-height: 1; color: var(--ntm-gold); }
.ntm-step p { font-size: 15px; line-height: 1.65; }

/* ---------- CTA band (kit "Don't miss out" band) ---------- */
.e-con.ntm-cta-band { position: relative; --padding-top: 110px; --padding-bottom: 110px; --padding-block-start: 110px; --padding-block-end: 110px; text-align: center; }
.ntm-cta-band::before { background: linear-gradient(180deg, rgba(12, 22, 38, .82), rgba(12, 22, 38, .9)); }
.ntm-cta-band__content { max-width: 760px; margin-inline: auto; align-items: center; --gap: 16px; --row-gap: 16px; }
.ntm-cta-band .ntm-h2 .elementor-heading-title { color: var(--ntm-white); }
.ntm-cta-band--light::before { background: linear-gradient(180deg, rgba(247, 244, 239, .93), rgba(239, 231, 218, .95)); }
.ntm-cta-band--light .ntm-h2 .elementor-heading-title { color: var(--ntm-navy); }
@media (max-width: 767px) { .e-con.ntm-cta-band { --padding-top: 72px; --padding-bottom: 72px; --padding-block-start: 72px; --padding-block-end: 72px; } }

/* Cross-link strip */
.e-con.ntm-crosslink { background: var(--ntm-ivory); border: 1px solid var(--ntm-border); border-inline-start: 4px solid var(--ntm-gold); border-radius: var(--ntm-radius); --padding-top: 28px; --padding-bottom: 28px; --padding-left: 32px; --padding-right: 32px; --padding-block-start: 28px; --padding-block-end: 28px; --padding-inline-start: 32px; --padding-inline-end: 32px; --gap: 20px; }
.ntm-bg-ivory .e-con.ntm-crosslink { background: var(--ntm-white); }
.ntm-crosslink__text { --gap: 6px; --row-gap: 6px; flex: 1 1 420px; }
.ntm-crosslink .ntm-btn-row { margin-top: 0; }

/* Rating badge */
.ntm-rating { display: inline-flex; align-items: center; gap: 14px; padding: 12px 18px 12px 12px; background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: 999px; color: var(--ntm-navy); box-shadow: var(--ntm-shadow-sm); }
html[dir="rtl"] .ntm-rating { padding: 12px 12px 12px 18px; }
.ntm-rating:hover { color: var(--ntm-navy); border-color: var(--ntm-gold); }
.ntm-rating__score { display: grid; place-items: center; width: 50px; height: 50px; border-radius: 50%; background: var(--ntm-navy); color: var(--ntm-white); font-family: var(--ntm-font-body); font-weight: 800; font-size: 17px; }
.ntm-rating__meta { display: flex; flex-direction: column; line-height: 1.3; }
.ntm-rating__stars { color: #E0A93B; letter-spacing: 2px; font-size: 15px; }
.ntm-rating__label { font-size: 13px; font-weight: 600; color: var(--ntm-text); }
.ntm-rating--light { background: rgba(255, 255, 255, .06); border-color: rgba(255, 255, 255, .18); box-shadow: none; }
.ntm-rating--light .ntm-rating__score { background: var(--ntm-gold); color: var(--ntm-navy); }
.ntm-rating--light .ntm-rating__label { color: var(--ntm-on-dark); }
.e-con.ntm-rating-block { --gap: 32px; }
.ntm-rating-block__text { max-width: 640px; --gap: 12px; }

/* Contact lists */
.ntm-contact-list .elementor-icon-list-items { display: grid; gap: 12px; }
.ntm-contact-list .elementor-icon-list-item { align-items: flex-start !important; margin: 0 !important; padding: 0 !important; }
.ntm-contact-list .elementor-icon-list-item a { align-items: flex-start; }
.ntm-contact-list .elementor-icon-list-icon { margin-top: 5px; }
.ntm-contact-list .elementor-icon-list-icon svg { width: 16px; height: 16px; fill: var(--ntm-gold-dark); }
.ntm-contact-list .elementor-icon-list-text { color: var(--ntm-navy); font-weight: 600; padding-inline-start: 10px; }
.ntm-contact-list a:hover .elementor-icon-list-text { color: var(--ntm-gold-dark); }
.ntm-contact-list--light .elementor-icon-list-text { color: var(--ntm-on-dark); font-weight: 500; }
.ntm-contact-list--light .elementor-icon-list-icon svg { fill: var(--ntm-gold); }
.ntm-contact-list--light a:hover .elementor-icon-list-text { color: var(--ntm-white); }

/* ---------- FAQ accordion (native <details>) ---------- */
.ntm-faq .e-n-accordion { display: grid; gap: 12px; }
.ntm-faq .e-n-accordion-item { background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius-sm); overflow: hidden; }
.ntm-bg-white .ntm-faq .e-n-accordion-item { background: var(--ntm-ivory); border-color: transparent; }
.ntm-faq .e-n-accordion-item-title { padding: 20px 24px !important; gap: 16px; border: 0 !important; background: transparent !important; cursor: pointer; }
.ntm-faq .e-n-accordion-item-title-header { flex: 1 1 auto; text-align: start; }
.ntm-faq .e-n-accordion-item-title-text { font-family: var(--ntm-font-head); font-weight: 600; font-size: 1.08rem; line-height: 1.45; color: var(--ntm-navy) !important; }
html[lang|="ar"] .ntm-faq .e-n-accordion-item-title-text { font-weight: 700; }
.ntm-faq .e-n-accordion-item-title-icon svg { fill: var(--ntm-gold-dark) !important; width: 14px; height: 14px; }
.ntm-faq .e-n-accordion-item[open] .e-n-accordion-item-title { padding-bottom: 8px !important; }
.e-con.ntm-faq__body { --padding-top: 0; --padding-bottom: 22px; --padding-left: 24px; --padding-right: 24px; --padding-block-start: 0; --padding-block-end: 22px; --padding-inline-start: 24px; --padding-inline-end: 24px; border: 0 !important; }
.ntm-faq__body p { font-size: 15.5px; line-height: 1.75; }
.ntm-faq-group { margin-top: 28px; }
.ntm-faq-group:first-child { margin-top: 0; }

/* ---------- Tables ---------- */
.ntm-table-wrap { overflow-x: auto; border-radius: var(--ntm-radius); border: 1px solid var(--ntm-border); background: var(--ntm-white); -webkit-overflow-scrolling: touch; }
.ntm-table { width: 100%; border-collapse: collapse; margin: 0; font-size: 15px; }
.ntm-table th, .ntm-table td { padding: 16px 22px; text-align: start; border: 0; border-bottom: 1px solid var(--ntm-border); }
.ntm-table thead th { background: var(--ntm-navy); color: var(--ntm-white); font-weight: 700; font-size: 14px; letter-spacing: .03em; }
.ntm-table tbody th { color: var(--ntm-navy); font-weight: 700; white-space: nowrap; }
.ntm-table tbody tr:last-child th, .ntm-table tbody tr:last-child td { border-bottom: 0; }
.ntm-table tbody tr:nth-child(even) { background: var(--ntm-ivory); }
html[dir="rtl"] .ntm-table td[dir="ltr"] { text-align: right; }
@media (max-width: 520px) { .ntm-table th, .ntm-table td { padding: 12px 14px; } .ntm-table tbody th { white-space: normal; } }

/* ---------- Forms ---------- */
.e-con.ntm-quote { --gap: 0; --row-gap: 0; --column-gap: 0; border-radius: var(--ntm-radius-lg); overflow: hidden; box-shadow: var(--ntm-shadow); align-items: stretch; }
.e-con.ntm-quote__side { background: var(--ntm-navy); color: var(--ntm-on-dark); --gap: 14px; --row-gap: 14px; --padding-top: 52px; --padding-bottom: 52px; --padding-left: 44px; --padding-right: 44px; --padding-block-start: 52px; --padding-block-end: 52px; --padding-inline-start: 44px; --padding-inline-end: 44px; }
.ntm-quote__side .ntm-h2 .elementor-heading-title { color: var(--ntm-white); font-size: clamp(1.6rem, 1.3rem + 1vw, 2.2rem); }
.ntm-quote__side .ntm-h4 .elementor-heading-title { color: var(--ntm-gold-light); margin-top: 10px; }
.e-con.ntm-quote__form { background: var(--ntm-white); --padding-top: 48px; --padding-bottom: 44px; --padding-left: 44px; --padding-right: 44px; --padding-block-start: 48px; --padding-block-end: 44px; --padding-inline-start: 44px; --padding-inline-end: 44px; --gap: 14px; }
@media (max-width: 1024px) {
	.e-con.ntm-quote { flex-direction: column !important; }
	.e-con.ntm-quote__side, .e-con.ntm-quote__form { --padding-left: 28px; --padding-right: 28px; --padding-inline-start: 28px; --padding-inline-end: 28px; --padding-top: 36px; --padding-bottom: 36px; --padding-block-start: 36px; --padding-block-end: 36px; }
}
@media (max-width: 767px) { .e-con.ntm-quote__side, .e-con.ntm-quote__form { --padding-left: 20px; --padding-right: 20px; --padding-inline-start: 20px; --padding-inline-end: 20px; } }
.e-con.ntm-form-card { background: var(--ntm-white); border-radius: var(--ntm-radius-lg); box-shadow: var(--ntm-shadow); --padding-top: 44px; --padding-bottom: 40px; --padding-left: 40px; --padding-right: 40px; --padding-block-start: 44px; --padding-block-end: 40px; --padding-inline-start: 40px; --padding-inline-end: 40px; --gap: 16px; }
@media (max-width: 767px) { .e-con.ntm-form-card { --padding-left: 20px; --padding-right: 20px; --padding-inline-start: 20px; --padding-inline-end: 20px; --padding-top: 30px; --padding-block-start: 30px; } }

.ntm-form .elementor-form-fields-wrapper { --ntm-field-gap: 18px; row-gap: 0; }
.ntm-form .elementor-field-group { margin-bottom: 18px; }
.ntm-form .elementor-field-group > label, .ntm-form .elementor-field-label { font-family: var(--ntm-font-body); font-weight: 700; font-size: 14px; color: var(--ntm-navy); margin-bottom: 7px; }
.ntm-form .elementor-mark-required .elementor-field-label::after { color: #B3261E; }
.ntm-form .elementor-field-textual, .ntm-form select.elementor-field, .ntm-form .elementor-field-group .elementor-select-wrapper select {
	font-family: var(--ntm-font-body); font-size: 16px; color: var(--ntm-navy);
	background: var(--ntm-ivory); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius-sm);
	padding: 13px 16px; min-height: 50px; transition: border-color .2s ease, box-shadow .2s ease, background .2s ease;
}
.ntm-form textarea.elementor-field-textual { min-height: 140px; }
.ntm-form .elementor-field-textual:focus, .ntm-form select.elementor-field:focus { border-color: var(--ntm-gold); background: var(--ntm-white); box-shadow: 0 0 0 4px rgba(201, 164, 106, .22); outline: 0; }
.ntm-form .elementor-field-textual::placeholder { color: #8C93A1; }
.ntm-form .elementor-select-wrapper .select-caret-down-wrapper { inset-inline-end: 14px; inset-inline-start: auto; }
html[dir="rtl"] .ntm-form .elementor-select-wrapper .select-caret-down-wrapper { left: 14px; right: auto; }
.ntm-form input[type="tel"] { direction: ltr; }
html[dir="rtl"] .ntm-form input[type="tel"], html[dir="rtl"] .ntm-form input[type="email"] { text-align: right; }
.ntm-form .elementor-field-type-submit { margin-top: 6px; }
.ntm-form .elementor-button {
	width: 100%; background: var(--ntm-gold) !important; color: var(--ntm-navy) !important; border-radius: 999px;
	font-family: var(--ntm-font-body); font-weight: 800; font-size: 16px; padding: 18px 28px; min-height: 56px;
	transition: background .2s ease, transform .2s ease;
}
.ntm-form .elementor-button:hover { background: var(--ntm-gold-hover) !important; transform: translateY(-1px); }
.ntm-form .elementor-message { font-weight: 600; border-radius: var(--ntm-radius-sm); padding: 14px 16px; margin-top: 12px; }
.ntm-form .elementor-message.elementor-message-success { background: #EAF4EE; color: #1D5E3A; }
.ntm-form .elementor-message.elementor-message-danger { background: #FBECEB; color: #8F1E17; }
.ntm-form .elementor-message::before { margin-inline-end: 6px; }
.ntm-form .elementor-error .elementor-field-textual { border-color: #B3261E; }
.ntm-form-note, .ntm-form-note p { font-size: 13px; color: var(--ntm-muted); line-height: 1.6; }
.ntm-form-note a { color: var(--ntm-gold-dark); }

/* ---------- Contact page ---------- */
.e-con.ntm-contact { --gap: 40px; --column-gap: 40px; align-items: flex-start; }
.ntm-contact__info { --gap: 18px; --row-gap: 18px; }
.ntm-info-list { --gap: 14px; --row-gap: 14px; }
.ntm-info .elementor-icon-box-wrapper { display: flex; align-items: flex-start; gap: 16px; text-align: start; background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: var(--ntm-radius); padding: 18px 20px; }
.ntm-info .elementor-icon-box-icon { margin: 0 !important; flex: none; }
.ntm-info .elementor-icon { background: var(--ntm-navy) !important; padding: 12px; }
.ntm-info .elementor-icon svg { width: 18px; height: 18px; fill: var(--ntm-gold) !important; }
.ntm-info .elementor-icon-box-title { font-family: var(--ntm-font-body); font-weight: 800; font-size: 15px; color: var(--ntm-navy); margin: 0 0 4px; }
.ntm-info .elementor-icon-box-title a { color: inherit; }
.ntm-info .elementor-icon-box-description { font-size: 15px; margin: 0; color: var(--ntm-text); }
.e-con.ntm-b2b-mini { background: var(--ntm-navy); border-radius: var(--ntm-radius); --padding-top: 26px; --padding-bottom: 28px; --padding-left: 24px; --padding-right: 24px; --padding-block-start: 26px; --padding-block-end: 28px; --padding-inline-start: 24px; --padding-inline-end: 24px; --gap: 10px; }
.ntm-b2b-mini .ntm-h4 .elementor-heading-title { color: var(--ntm-white); font-size: 1.05rem; }
.ntm-b2b-mini p { color: var(--ntm-on-dark); font-size: 15px; }
.ntm-map iframe { border-radius: var(--ntm-radius-lg); box-shadow: var(--ntm-shadow-sm); filter: saturate(.85); width: 100%; }

/* Prose (privacy) */
.ntm-prose h2 { font-size: 1.45rem; margin: 2em 0 .5em; }
.ntm-prose ul { padding-inline-start: 1.2em; }
.ntm-prose li { margin-bottom: .35em; }

/* 404 */
.ntm-404 { text-align: center; align-items: center; max-width: 760px; margin-inline: auto; --gap: 16px; padding-block: 40px; }
.ntm-404__code .elementor-heading-title { font-family: var(--ntm-font-head); font-size: clamp(5rem, 3rem + 8vw, 9rem); line-height: 1; color: var(--ntm-gold); font-weight: 600; }

/* ==========================================================================
   Header
   ========================================================================== */
.e-con.ntm-topbar { background: var(--ntm-ink); --padding-top: 8px; --padding-bottom: 8px; --padding-block-start: 8px; --padding-block-end: 8px; font-size: 13.5px; }
.ntm-topbar__inner, .ntm-topbar__right { --gap: 18px; --column-gap: 18px; }
.ntm-topbar__list .elementor-icon-list-items { gap: 6px 22px; }
.ntm-topbar__list .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
.ntm-topbar__list .elementor-icon-list-item::after { display: none !important; }
.ntm-topbar__list .elementor-icon-list-text { color: var(--ntm-on-dark); font-weight: 600; padding-inline-start: 7px; font-size: 13.5px; }
.ntm-topbar__list a:hover .elementor-icon-list-text { color: var(--ntm-white); }
.ntm-topbar__list .elementor-icon-list-icon svg { fill: var(--ntm-gold); width: 13px; height: 13px; }
.ntm-topbar__b2b .elementor-heading-title { font-family: var(--ntm-font-body); font-size: 13.5px; font-weight: 700; }
.ntm-topbar__b2b .elementor-heading-title a { color: var(--ntm-gold-light); }
.ntm-topbar__b2b .elementor-heading-title a:hover { color: var(--ntm-white); }
.ntm-lang-switch { display: inline-flex; align-items: center; gap: 6px; font-weight: 700; font-size: 13.5px; color: var(--ntm-white); padding: 4px 12px; border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px; line-height: 1.4; }
.ntm-lang-switch:hover, .ntm-lang-switch:focus { color: var(--ntm-navy); background: var(--ntm-gold); border-color: var(--ntm-gold); }
/* System Arabic font for the one-word switch on English pages (avoids downloading Almarai there) */
.ntm-lang-switch[lang="ar"] span { font-family: 'Segoe UI', 'Geeza Pro', Tahoma, 'Noto Sans Arabic', sans-serif; font-size: 14px; font-weight: 700; }
.ntm-lang-switch[lang="en"] span { font-family: 'Manrope', system-ui, sans-serif; }
.ntm-header__lang { display: none; }
.ntm-header__lang .ntm-lang-switch { color: var(--ntm-navy); border-color: var(--ntm-border); }

.e-con.ntm-header { background: #fff; --padding-top: 14px; --padding-bottom: 14px; --padding-block-start: 14px; --padding-block-end: 14px; border-bottom: 1px solid var(--ntm-border); z-index: 99; transition: box-shadow .25s ease, padding .25s ease; }
.e-con.ntm-header.elementor-sticky--effects { box-shadow: 0 10px 30px -18px rgba(20, 35, 58, .45); --padding-top: 8px; --padding-bottom: 8px; --padding-block-start: 8px; --padding-block-end: 8px; }
.ntm-header__inner { --gap: 20px; --column-gap: 20px; flex-wrap: nowrap; }
.ntm-header__actions { --gap: 12px; --column-gap: 12px; flex: none; }
.ntm-logo { display: inline-flex; align-items: center; gap: 11px; color: var(--ntm-navy); flex: none; }
.ntm-logo img { width: 44px; height: 44px; }
.ntm-logo__text { display: flex; flex-direction: column; line-height: 1; }
.ntm-logo__name { font-family: 'Playfair Display', Georgia, serif; font-weight: 600; font-size: 26px; color: var(--ntm-navy); letter-spacing: .005em; white-space: nowrap; }
.ntm-logo__sub { font-family: 'Manrope', system-ui, sans-serif; font-weight: 700; font-size: 9.5px; letter-spacing: .42em; color: var(--ntm-gold-dark); margin-top: 5px; }
html[lang|="ar"] .ntm-logo__name { font-family: 'Almarai', Tahoma, sans-serif; font-weight: 800; font-size: 25px; }
html[lang|="ar"] .ntm-logo__sub { font-family: 'Almarai', Tahoma, sans-serif; font-weight: 700; letter-spacing: 0; font-size: 13px; margin-top: 4px; }
.ntm-logo--light .ntm-logo__name { color: var(--ntm-white); }
.ntm-logo--light .ntm-logo__sub { color: var(--ntm-gold-light); }
.ntm-header__logo { flex: none; }

/* Nav menu (Elementor Pro) */
.ntm-nav { flex: 1 1 auto; }
.ntm-nav .elementor-nav-menu--main { justify-content: center; }
.ntm-nav .elementor-nav-menu--main .elementor-item { font-family: var(--ntm-font-body); font-weight: 700; font-size: 15px; color: var(--ntm-navy); padding: 12px 14px; }
html[lang|="ar"] .ntm-nav .elementor-nav-menu--main .elementor-item { font-size: 16px; }
.ntm-nav .elementor-nav-menu--main .elementor-item:hover, .ntm-nav .elementor-nav-menu--main .elementor-item.elementor-item-active, .ntm-nav .elementor-nav-menu--main .elementor-item.highlighted { color: var(--ntm-gold-dark); }
.ntm-nav .e--pointer-underline .elementor-item::after { background-color: var(--ntm-gold); height: 2px; bottom: 4px; left: 14px; right: 14px; width: auto; }
.ntm-nav .elementor-nav-menu--main .elementor-nav-menu--dropdown { background: var(--ntm-white); border: 1px solid var(--ntm-border); border-radius: 12px; box-shadow: var(--ntm-shadow); padding: 8px; min-width: 240px; }
.ntm-nav .elementor-nav-menu--dropdown a { font-family: var(--ntm-font-body); font-weight: 600; font-size: 15px; color: var(--ntm-navy); border-radius: 8px; padding: 11px 14px; }
.ntm-nav .elementor-nav-menu--dropdown a:hover, .ntm-nav .elementor-nav-menu--dropdown a.elementor-item-active { background: var(--ntm-ivory); color: var(--ntm-gold-dark); }
.ntm-nav .sub-arrow svg { fill: currentColor; width: 10px; height: 10px; }
.ntm-nav .elementor-menu-toggle { background: var(--ntm-ivory); color: var(--ntm-navy); border-radius: 10px; padding: 10px; font-size: 22px; }
.ntm-nav .elementor-menu-toggle svg { fill: var(--ntm-navy); width: 22px; height: 22px; }
.ntm-nav nav.elementor-nav-menu--dropdown.elementor-nav-menu__container { background: var(--ntm-white); border-top: 1px solid var(--ntm-border); box-shadow: 0 24px 40px -24px rgba(20, 35, 58, .5); margin-top: 14px !important; }
.ntm-nav nav.elementor-nav-menu--dropdown .elementor-item { padding: 15px 22px; border-bottom: 1px solid var(--ntm-ivory); font-size: 16px; }
.ntm-nav nav.elementor-nav-menu--dropdown .sub-menu .elementor-sub-item { padding-inline-start: 38px; font-size: 15px; background: var(--ntm-ivory); }
@media (max-width: 1024px) {
	.ntm-nav { flex: 0 0 auto; order: 3; }
	.ntm-header__actions { margin-inline-start: auto; }
	.ntm-header__lang { display: block; }
	.ntm-topbar__b2b, .ntm-topbar__lang { display: none; }
}
@media (max-width: 767px) {
	.ntm-header__cta { display: none; }
	.ntm-logo__name { font-size: 22px; }
	.ntm-logo img { width: 38px; height: 38px; }
	.ntm-topbar__list .elementor-icon-list-item:nth-child(2) { display: none; }
	.ntm-topbar__inner { justify-content: center !important; }
}

/* ==========================================================================
   Footer
   ========================================================================== */
.e-con.ntm-footer-cta { --padding-top: 0; --padding-bottom: 0; --padding-block-start: 0; --padding-block-end: 0; background: linear-gradient(180deg, transparent 50%, var(--ntm-ink) 50%); position: relative; z-index: 1; }
.ntm-hide-footer-cta .e-con.ntm-footer-cta { display: none; }
.e-con.ntm-footer-cta__box { background: var(--ntm-navy); border: 1px solid rgba(201, 164, 106, .35); border-radius: var(--ntm-radius-lg); --padding-top: 52px; --padding-bottom: 52px; --padding-left: 56px; --padding-right: 56px; --padding-block-start: 52px; --padding-block-end: 52px; --padding-inline-start: 56px; --padding-inline-end: 56px; --gap: 28px; box-shadow: 0 30px 70px -40px rgba(0, 0, 0, .8); overflow: hidden; position: relative; }
.e-con.ntm-footer-cta__box::after { content: ""; position: absolute; inset-inline-end: -60px; top: -60px; width: 220px; height: 220px; border-radius: 50%; box-shadow: -40px 40px 0 0 rgba(201, 164, 106, .12); pointer-events: none; }
html[dir="rtl"] .e-con.ntm-footer-cta__box::after { box-shadow: 40px 40px 0 0 rgba(201, 164, 106, .12); }
.ntm-footer-cta__text { --gap: 10px; flex: 1 1 480px; }
.ntm-footer-cta .ntm-h2 .elementor-heading-title { color: var(--ntm-white); font-size: clamp(1.6rem, 1.2rem + 1.4vw, 2.3rem); }
.ntm-footer-cta .ntm-btn-row { margin-top: 0; flex: none; }
@media (max-width: 1024px) { .ntm-footer-cta .ntm-btn-row { flex: 1 1 auto; } }
@media (max-width: 767px) { .e-con.ntm-footer-cta__box { --padding-left: 22px; --padding-right: 22px; --padding-inline-start: 22px; --padding-inline-end: 22px; --padding-top: 36px; --padding-bottom: 36px; --padding-block-start: 36px; --padding-block-end: 36px; } }

.e-con.ntm-footer { background: var(--ntm-ink); color: var(--ntm-on-dark); --padding-top: 72px; --padding-bottom: 28px; --padding-block-start: 72px; --padding-block-end: 28px; }
.ntm-footer > .e-con-inner { gap: 48px; }
.ntm-footer__cols { grid-template-columns: 1.4fr 1fr 1fr 1.3fr !important; }
@media (max-width: 1024px) { .ntm-footer__cols { grid-template-columns: 1fr 1fr !important; } }
@media (max-width: 767px) { .ntm-footer__cols { grid-template-columns: 1fr !important; } }
.ntm-footer__col { --gap: 16px; --row-gap: 16px; }
.ntm-footer__about p { color: var(--ntm-on-dark); font-size: 15px; max-width: 320px; }
.ntm-footer__title .elementor-heading-title { font-family: var(--ntm-font-body); font-size: 13px; font-weight: 800; letter-spacing: var(--ntm-track); text-transform: uppercase; color: var(--ntm-gold-light); }
html[lang|="ar"] .ntm-footer__title .elementor-heading-title { font-size: 16px; }
.ntm-footer__links .elementor-icon-list-items { display: grid; gap: 10px; }
.ntm-footer__links .elementor-icon-list-item { margin: 0 !important; padding: 0 !important; }
.ntm-footer__links .elementor-icon-list-icon { display: none; }
.ntm-footer__links .elementor-icon-list-text { color: var(--ntm-on-dark); font-size: 15px; font-weight: 500; padding: 0 !important; }
.ntm-footer__links a:hover .elementor-icon-list-text { color: var(--ntm-white); }
.ntm-footer__more .elementor-heading-title { font-family: var(--ntm-font-body); font-size: 14px; font-weight: 700; }
.ntm-footer__more .elementor-heading-title a { color: var(--ntm-gold-light); }
.e-con.ntm-footer__bottom { border-top: 1px solid rgba(255, 255, 255, .1); --padding-top: 24px; --padding-block-start: 24px; --gap: 12px; flex-wrap: wrap; }
.ntm-footer__copy p { font-size: 14px; color: #9AA3B2; margin: 0; }
.ntm-footer__bottom-right { --gap: 18px; --column-gap: 18px; }
.ntm-footer__legal .elementor-heading-title { font-family: var(--ntm-font-body); font-size: 14px; font-weight: 600; }
.ntm-footer__legal .elementor-heading-title a { color: #9AA3B2; }
.ntm-footer__legal .elementor-heading-title a:hover { color: var(--ntm-white); }

/* ==========================================================================
   Floating WhatsApp button
   ========================================================================== */
.ntm-wa-float {
	position: fixed; inset-inline-end: 20px; bottom: 20px; z-index: 999;
	display: inline-flex; align-items: center; gap: 10px;
	background: #128C7E; color: #fff; border-radius: 999px; padding: 12px;
	box-shadow: 0 14px 34px -12px rgba(0, 0, 0, .45); transition: transform .2s ease, background .2s ease;
}
.ntm-wa-float:hover, .ntm-wa-float:focus { background: #0E7166; color: #fff; transform: translateY(-2px); }
.ntm-wa-float svg { width: 30px; height: 30px; flex: none; }
.ntm-wa-float__label { font-family: var(--ntm-font-body); font-weight: 700; font-size: 14px; padding-inline-end: 8px; }
@media (max-width: 767px) { .ntm-wa-float__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } .ntm-wa-float { bottom: 16px; inset-inline-end: 16px; } }

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	html { scroll-behavior: auto; }
	*, *::before, *::after { transition: none !important; animation: none !important; }
}

/* Row children that should size to their content (Elementor child containers default to 100%) */
.e-con.ntm-auto { --width: auto; width: auto; flex: 0 0 auto; }
.e-con.ntm-crosslink > .ntm-btn-row, .e-con.ntm-footer-cta__box > .ntm-btn-row, .e-con.ntm-rating-block > .elementor-widget { --width: auto; width: auto; flex: 0 0 auto; }
.e-con.ntm-crosslink > .ntm-crosslink__text, .e-con.ntm-footer-cta__box > .ntm-footer-cta__text, .e-con.ntm-rating-block > .ntm-rating-block__text { flex: 1 1 360px; }
.ntm-header__inner > .ntm-nav { --flex-grow: 1; flex: 1 1 auto; }

/* ---------- Store launch switch (see inc/woocommerce.php) ---------- */
.ntm-store-off .ntm-store-only { display: none !important; }
.ntm-store-live .ntm-store-off-only { display: none !important; }
.ntm-preview-bar { background: #5B3E12; color: #fff; text-align: center; font-size: 13px; font-weight: 700; padding: 6px 12px; }
.ntm-header__cart { flex: none; }

/* Mobile header fit when the store (cart icon) is visible */
@media (max-width: 767px) {
	.ntm-header__inner { --gap: 10px; --column-gap: 10px; }
	.ntm-header__actions { --gap: 6px; --column-gap: 6px; }
	.ntm-header__lang .ntm-lang-switch { padding: 5px 10px; }
	.ntm-header__lang .ntm-lang-switch svg { display: none; }
	.ntm-nav .elementor-menu-toggle { padding: 8px; }
}
@media (max-width: 380px) {
	.ntm-logo__name { font-size: 20px; }
	.ntm-logo__sub { letter-spacing: .3em; }
}

/* ---------- Header cart link ---------- */
.ntm-cart-link { position: relative; display: inline-flex; align-items: center; gap: 8px; color: var(--ntm-navy); font-weight: 700; font-size: 15px; padding: 8px 10px; border-radius: 999px; }
.ntm-cart-link:hover { color: var(--ntm-gold-dark); background: var(--ntm-ivory); }
.ntm-cart-count { min-width: 20px; height: 20px; padding: 0 6px; border-radius: 999px; background: var(--ntm-gold); color: var(--ntm-navy); font-size: 12px; font-weight: 800; display: inline-grid; place-items: center; }
.ntm-cart-count[hidden] { display: none; }
@media (max-width: 1024px) { .ntm-cart-link__label { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); } }
@media (max-width: 767px) {
	.ntm-cart-link { padding: 6px; }
	.ntm-cart-count { position: absolute; top: -2px; inset-inline-end: -4px; min-width: 18px; height: 18px; font-size: 11px; }
}
