/* ---------- Brand menu fonts (licensed files supplied by RS VERITY) ---------- */
@font-face { font-family: "Alaska"; src: url("../fonts/alaska-regular.woff") format("woff"), url("../fonts/alaska-regular.ttf") format("truetype"); font-weight: 400; font-style: normal; font-display: swap; }
@font-face { font-family: "GE Dinar Two"; src: url("../fonts/ge-dinar-two-medium.woff") format("woff"), url("../fonts/ge-dinar-two-medium.ttf") format("truetype"); font-weight: 500; font-style: normal; font-display: swap; }
/* ==========================================================
   RS Verity – header tools (language + dark mode) & dark theme
   ========================================================== */

/* ---------- Header tools ---------- */
.site-tools {
    float: right;
    margin: 33px 0 0 22px;
    line-height: 1;
    display: flex;
    gap: 8px;
    position: relative;
    z-index: 2;
}
.site-tools .tool-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 34px;
    height: 34px;
    border-radius: 50%;
    border: 1px solid rgba(48, 30, 2, 0.25);
    background: transparent;
    color: #301e02;
    font-size: 15px;
    font-weight: 700;
    font-family: "Cairo", "Poppins", "Segoe UI", Tahoma, sans-serif;
    line-height: 1;
    padding: 0;
    cursor: pointer;
    text-decoration: none;
    transition: background-color .25s ease, color .25s ease, border-color .25s ease;
}
.site-tools .tool-btn:hover,
.site-tools .tool-btn:focus-visible {
    background: #301e02;
    border-color: #301e02;
    color: #fff;
    outline: none;
}
.site-tools .lang-switch { font-size: 13px; letter-spacing: 0; }
.theme-toggle .fa-sun-o { display: none; }
html[data-theme="dark"] .theme-toggle .fa-sun-o { display: inline-block; }
html[data-theme="dark"] .theme-toggle .fa-moon-o { display: none; }

/* RTL placement */
html[dir="rtl"] .site-tools { float: left; margin: 33px 22px 0 0; }

@media only screen and (max-width: 991px) {
    .site-tools { margin: 18px 14px 0 0; }
    html[dir="rtl"] .site-tools { margin: 18px 0 0 14px; }
    .site-tools .tool-btn { width: 32px; height: 32px; font-size: 14px; }
    .header .header-wrap .logo img:not(.logo-ar-mark) { max-width: 190px; height: auto; margin-top: 8px; }
}
@media only screen and (max-width: 400px) {
    .header .header-wrap .logo img:not(.logo-ar-mark) { max-width: 160px; margin-top: 12px; }
    .site-tools { gap: 6px; }
}

/* ==========================================================
   DARK THEME
   ========================================================== */
html[data-theme="dark"] {
    color-scheme: dark;
    --dm-bg: #12100e;
    --dm-surface: #1b1815;
    --dm-surface-2: #24201c;
    --dm-border: #3a342d;
    --dm-text: #bdb5aa;
    --dm-heading: #f3ede4;
    --dm-accent: #d2b48c;
}

html[data-theme="dark"] body,
html[data-theme="dark"] .boxed,
html[data-theme="dark"] .loader {
    background-color: var(--dm-bg) !important;
    color: var(--dm-text);
}

/* Header */
html[data-theme="dark"] .header,
html[data-theme="dark"] .header.downscrolled,
html[data-theme="dark"] #header {
    background-color: var(--dm-surface) !important;
    box-shadow: 0 1px 0 var(--dm-border);
}
html[data-theme="dark"] .header .logo img:not(.logo-ar-mark) { content: url("../images/logo-light.png"); }
html[data-theme="dark"] .header .logo img.logo-ar-mark { content: url("../images/logo-mark-light.png"); }
html[data-theme="dark"] #mainnav > ul > li > a { color: var(--dm-heading) !important; }
html[data-theme="dark"] #mainnav > ul > li > a:hover,
html[data-theme="dark"] #mainnav > ul > li.home > a { color: var(--dm-accent) !important; }
html[data-theme="dark"] #mainnav > ul > li > a:after { background-color: var(--dm-accent) !important; }
html[data-theme="dark"] #mainnav-mobi,
html[data-theme="dark"] #mainnav ul.submenu { background-color: #0d0b0a !important; }
html[data-theme="dark"] .btn-menu span,
html[data-theme="dark"] .btn-menu:before,
html[data-theme="dark"] .btn-menu:after,
html[data-theme="dark"] .btn-menu span:before,
html[data-theme="dark"] .btn-menu span:after { background-color: var(--dm-heading) !important; }
html[data-theme="dark"] .site-tools .tool-btn { color: var(--dm-heading); border-color: var(--dm-border); }
html[data-theme="dark"] .site-tools .tool-btn:hover { background: var(--dm-accent); border-color: var(--dm-accent); color: #1b1815; }

/* Typography (skip the hero slider, which sits on video/images) */
html[data-theme="dark"] h1, html[data-theme="dark"] h2, html[data-theme="dark"] h3,
html[data-theme="dark"] h4, html[data-theme="dark"] h5, html[data-theme="dark"] h6,
html[data-theme="dark"] h1 a, html[data-theme="dark"] h2 a, html[data-theme="dark"] h3 a,
html[data-theme="dark"] h4 a, html[data-theme="dark"] h5 a, html[data-theme="dark"] h6 a,
html[data-theme="dark"] .title, html[data-theme="dark"] .title a,
html[data-theme="dark"] .name, html[data-theme="dark"] strong {
    color: var(--dm-heading) !important;
}
html[data-theme="dark"] p, html[data-theme="dark"] li, html[data-theme="dark"] label,
html[data-theme="dark"] blockquote, html[data-theme="dark"] td, html[data-theme="dark"] th,
html[data-theme="dark"] .text, html[data-theme="dark"] .fade-text, html[data-theme="dark"] option {
    color: var(--dm-text) !important;
}
html[data-theme="dark"] a { color: var(--dm-heading); }
html[data-theme="dark"] a:hover { color: var(--dm-accent); }
html[data-theme="dark"] p a, html[data-theme="dark"] li a, html[data-theme="dark"] span,
html[data-theme="dark"] .comment-reply { color: inherit; }
html[data-theme="dark"] .flat-button, html[data-theme="dark"] .button-style { color: var(--dm-heading); }

/* Light surfaces -> dark surfaces */
html[data-theme="dark"] .flat-clients,
html[data-theme="dark"] .full-color,
html[data-theme="dark"] .portfolio-filter,
html[data-theme="dark"] .comment-respond,
html[data-theme="dark"] .flat-causes,
html[data-theme="dark"] .item > .content,
html[data-theme="dark"] .overlay-inner,
html[data-theme="dark"] ul.categories > li,
html[data-theme="dark"] ul.services > li,
html[data-theme="dark"] .bg-white,
html[data-theme="dark"] .bg-f7 {
    background-color: var(--dm-surface) !important;
}
html[data-theme="dark"] .overlay-inner i { background-color: var(--dm-surface-2) !important; color: var(--dm-heading) !important; }

/* Forms */
html[data-theme="dark"] input:not([type="submit"]):not([type="button"]),
html[data-theme="dark"] textarea,
html[data-theme="dark"] select {
    background-color: var(--dm-surface-2) !important;
    border-color: var(--dm-border) !important;
    color: var(--dm-heading) !important;
}
html[data-theme="dark"] ::placeholder { color: #8a8278 !important; opacity: 1; }

/* Borders */
html[data-theme="dark"] article.entry, html[data-theme="dark"] .comment,
html[data-theme="dark"] .box, html[data-theme="dark"] .contact-content,
html[data-theme="dark"] .content-post, html[data-theme="dark"] .num-fact,
html[data-theme="dark"] .text, html[data-theme="dark"] .wrap-share,
html[data-theme="dark"] li, html[data-theme="dark"] p, html[data-theme="dark"] hr,
html[data-theme="dark"] .flat-row, html[data-theme="dark"] .divider {
    border-color: var(--dm-border) !important;
}

/* Soften placeholder / bright images a little */
html[data-theme="dark"] img:not(.rev-slidebg):not([src*="logo"]) { filter: brightness(.82) contrast(1.05); }

/* Icons drawn in brand brown */
html[data-theme="dark"] [class^="icon-"], html[data-theme="dark"] [class*=" icon-"] { color: var(--dm-accent); }

/* brand-brown text -> warm gold in dark mode (generated) */
html[data-theme="dark"] a:hover,
html[data-theme="dark"] a:focus,
html[data-theme="dark"] .flat-information > li > a:hover,
html[data-theme="dark"] .top .flat-socials li i:hover:before,
html[data-theme="dark"] #mainnav .menu .has-sub:hover:before,
html[data-theme="dark"] #mainnav > ul > li > a:hover,
html[data-theme="dark"] #mainnav > ul > li.home > a,
html[data-theme="dark"] .breadcrumbs ul li a:hover,
html[data-theme="dark"] .entry .content-post ul li a:hover,
html[data-theme="dark"] .blog-single .entry .wrap-share .category-post li a:hover,
html[data-theme="dark"] .comment-post .comment-detail .comment-author a:hover,
html[data-theme="dark"] .comment-post .comment-detail .comment-date a:hover,
html[data-theme="dark"] .blog-single .comment-post .comment-detail .comment-reply,
html[data-theme="dark"] .widget.widget-search #searchform #searchsubmit:hover,
html[data-theme="dark"] .widget-categories ul li a:hover,
html[data-theme="dark"] .widget-recent-posts ul li a:hover,
html[data-theme="dark"] .widget-archives ul li a:hover,
html[data-theme="dark"] .footer-logo .map a:hover,
html[data-theme="dark"] .widget-follow-us .follow-us li a:hover,
html[data-theme="dark"] .widget-our-services .our_services li a:hover,
html[data-theme="dark"] .notification_error,
html[data-theme="dark"] .notification_ok,
html[data-theme="dark"] .flat-icon .iconbox.icon-left .box-header i:before,
html[data-theme="dark"] .flat-icon .icon-circle .iconbox .icon-post .comment-reply,
html[data-theme="dark"] .flat-news .company-news .post-us.v4 .item .meta-post a,
html[data-theme="dark"] .flat-fun-fact .iteam-fact .text-fact .comment-reply:hover,
html[data-theme="dark"] .flat-portfolio .portfolio-filter > li a:hover,
html[data-theme="dark"] .flat-portfolio .portfolio-filter > li.active a,
html[data-theme="dark"] .flat-portfolio .item .item-content .link-v1 .title,
html[data-theme="dark"] .flat-portfolio.v3 .item.v3:hover .link-v3 .title,
html[data-theme="dark"] .case-single .content-post .title-post .title,
html[data-theme="dark"] .case-single .content-post .list-post .title:before,
html[data-theme="dark"] .flat-portfolio .portfolio-wrap .item .link .title,
html[data-theme="dark"] .flat-services .services-post .item .post .comment-reply,
html[data-theme="dark"] .flat-team .post-wrap .post .comment-reply,
html[data-theme="dark"] .flat-overview .post-overview .post-list .box .list p:before,
html[data-theme="dark"] .flat-history .post-history .post .year-post p,
html[data-theme="dark"] .flat-practice .practice-areas .item .link .title,
html[data-theme="dark"] .flat-practice .practice-areas .portfolio-wrap .item .link .title,
html[data-theme="dark"] .flat-services-control .content-services .post .list-post .title:before,
html[data-theme="dark"] .flat-services-control .post.v4 .box .list p:before,
html[data-theme="dark"] .flat-help .contact-help .phone-help p {
    color: var(--dm-accent) !important;
}

/* Fine-tuning */
html[data-theme="dark"] .flat-fun-fact .num-fact p,
html[data-theme="dark"] .flat-fun-fact .text-fact .title,
html[data-theme="dark"] .flat-fun-fact .text-fact a { color: #fff !important; }
html[data-theme="dark"] .num-list { background-color: var(--dm-surface-2) !important; }
html[data-theme="dark"] .num-list p { color: var(--dm-heading) !important; }
html[data-theme="dark"] li.active > a,
html[data-theme="dark"] .comment-author a,
html[data-theme="dark"] p > span { color: var(--dm-heading) !important; }

/* Comment submit button had dark text on the brown button (template bug) */
.blog-single .comment-respond .form-submit input[type="submit"] { color: #fff; }

/* Hero slide 1 now sits on a dark photo: light captions */
.tp-caption.title-slide { color: #fff !important; text-shadow: 0 2px 18px rgba(0,0,0,.35); }
.tp-caption.sub-title { color: rgba(255,255,255,.88) !important; }
.tp-caption.flat-button-slider.bg-orange { background-color: #c4a27c !important; border-color: #c4a27c !important; color: #1e1202 !important; }
.tp-caption.flat-button-slider.bg-orange i { color: #1e1202 !important; }
.tp-caption.flat-button-slider.bg-orange:hover { background-color: #fff !important; border-color: #fff !important; }

/* ---------- Form feedback ---------- */
.hp-field { position: absolute !important; width: 1px !important; height: 1px !important; padding: 0 !important; margin: -1px !important; border: 0 !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; clip-path: inset(50%) !important; white-space: nowrap; opacity: 0; }
.form-msg { display: none; clear: both; margin: 14px 0 0; padding: 12px 16px; border-radius: 3px; font-size: 14px; line-height: 1.6; }
.form-msg.is-success { background: #e9f6ec; color: #1d6b34; border: 1px solid #b9e2c4; }
.form-msg.is-error { background: #fdecea; color: #a12a1f; border: 1px solid #f3c1bb; }
#subscribe-msg.form-msg, .footer .form-msg { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.18); }
#subscribe-msg.form-msg.is-success, .footer .form-msg.is-success { color: #b9e8c6; }
#subscribe-msg.form-msg.is-error, .footer .form-msg.is-error { color: #ffc2ba; }
.callback-form button[disabled], #contactform button[disabled] { opacity: .7; cursor: wait; }
html[data-theme="dark"] .form-msg.is-success { background: #16301e; color: #b9e8c6 !important; border-color: #24502f; }
html[data-theme="dark"] .form-msg.is-error { background: #3a1915; color: #ffc2ba !important; border-color: #5c2a23; }

/* ---------- Developer credit (footer) ---------- */
.copyright .dev-credit { white-space: nowrap; }
.copyright .dev-credit .sep { margin: 0 10px; opacity: .5; }
.copyright .dev-credit a { color: #c4a27c; text-decoration: none; transition: color .2s ease; }
.copyright .dev-credit a:hover, .copyright .dev-credit a:focus { color: #fff; text-decoration: underline; }
@media only screen and (max-width: 767px) {
    .copyright .dev-credit { display: block; margin-top: 4px; white-space: normal; }
    .copyright .dev-credit .sep { display: none; }
}
html[data-theme="dark"] .copyright p > .dev-credit { color: inherit !important; }

/* ---------- Readable hover states on the dark top bar and footer ---------- */
.top .flat-information > li > a:hover,
.top .flat-information > li > a:focus,
.top .flat-information > li > a:hover i,
.top .flat-socials li a:hover i:before,
.top .flat-socials li i:hover:before { color: #c4a27c !important; }
.top .flat-information .ltr-num { unicode-bidi: isolate; direction: ltr; }
html body .footer .widget-follow-us .follow-us li a:hover,
html body .footer .widget-follow-us .follow-us li a:focus,
html body .footer .widget-our-services .our_services li a:hover,
html body .footer .widget-our-services .our_services li a:focus,
html body .footer .footer-logo .map a:hover,
html body .footer .footer-logo .map a:focus { color: #fff !important; }
html body .footer .widget-follow-us .follow-us li a:hover:before,
html body .footer .widget-our-services .our_services li a:hover:before { color: #c4a27c !important; }

/* ---------- Language + dark mode buttons in the brown top bar ---------- */
html .top .site-tools--top {
    float: none; display: inline-flex; vertical-align: top; align-items: center;
    height: 45px; margin: 0; padding-inline-start: 14px; gap: 6px;
}
html .top .site-tools--top .tool-btn {
    width: 28px; height: 28px; font-size: 12px; line-height: 1;
    border-color: rgba(255,255,255,.35); color: #fff; background: transparent;
}
html .top .site-tools--top .lang-switch { font-size: 11px; }
html .top .site-tools--top .tool-btn:hover,
html .top .site-tools--top .tool-btn:focus-visible { background: #c4a27c; border-color: #c4a27c; color: #1e1202; }
/* the header copy is only for phones/tablets, where the top bar is hidden */
.site-tools--header { display: none !important; }
@media only screen and (max-width: 991px) {
    .site-tools--header { display: flex !important; }
}

/* ---------- "Pages" sidebar menu: current page + contact button ---------- */
.sidebar .widget-categories.team ul.categories > li.active { background-color: #301e02 !important; }
.sidebar .widget-categories.team ul.categories > li.active > a,
.sidebar .widget-categories.team ul.categories > li.active > a:hover { color: #fff !important; }
.sidebar .widget-categories.team ul.categories > li > a { display: block; }
.widget-need .rsv-need-btn, .rsv-diag-widget .rsv-need-btn, .rsv-about-cta .rsv-need-btn {
    display: inline-block; padding: 0 24px; line-height: 40px; border-radius: 3px;
    background: #301e02; color: #fff !important; font-weight: 600; font-size: 14px; text-decoration: none;
    transition: background-color .25s ease, color .25s ease;
}
.widget-need .rsv-need-btn:hover, .widget-need .rsv-need-btn:focus, .rsv-diag-widget .rsv-need-btn:hover, .rsv-about-cta .rsv-need-btn:hover, .rsv-about-cta .rsv-need-btn:focus { background: #c4a27c; color: #1e1202 !important; }
html[data-theme="dark"] .sidebar .widget-categories.team ul.categories > li.active { background-color: #c4a27c !important; }
html[data-theme="dark"] .sidebar .widget-categories.team ul.categories > li.active > a { color: #1e1202 !important; }

/* ---------- Founder photo (team pages) ---------- */
.flat-team .post-wrap .box .thumb img.rsv-founder-photo {
    display: block; width: 100%; height: auto; aspect-ratio: 1 / 1;
    object-fit: cover; object-position: center top; border-radius: 4px;
}
.flat-team .post-wrap.v2 .box .thumb img.rsv-founder-photo { width: 240px; max-width: 100%; }
html[data-theme="dark"] .flat-team img.rsv-founder-photo { filter: none !important; }

/* ---------- Team cards: equal photos + clean grid rows ---------- */
.flat-team .post-wrap .box .thumb img {
    display: block; width: 100%; height: auto; aspect-ratio: 1 / 1;
    object-fit: cover; object-position: center top; border-radius: 4px;
}
.flat-team .post-wrap.v2 .box .thumb img { width: 240px; max-width: 100%; }
@media only screen and (min-width: 992px) {
    .flat-team .post-wrap:not(.v2) .box:nth-child(3n+1) { clear: left; }
    html[dir="rtl"] .flat-team .post-wrap:not(.v2) .box:nth-child(3n+1) { clear: right; }
}
.flat-team .post-wrap.v2 .box { overflow: hidden; }
/* sample (placeholder) team cards: person icon on the empty photo */
.flat-team .rsv-member-sample .thumb::after {
    content: "\f007"; font-family: 'FontAwesome'; position: absolute; inset: 0;
    display: flex; align-items: center; justify-content: center;
    font-size: 96px; color: #d6d0c6; pointer-events: none;
}
.flat-team .post-wrap.v2 .rsv-member-sample .thumb::after { width: 240px; max-width: 100%; }
html[data-theme="dark"] .flat-team .rsv-member-sample .thumb::after { color: #5a5249; }

/* ---------- Main menu starts right after the logo (EN: left-to-right, AR: right-to-left) ---------- */
@media only screen and (min-width: 992px) {
    /* menu sits on the far side, away from the logo: EN at the right edge, AR at the left edge */
    .header .header-wrap .nav-wrap { overflow: visible; text-align: right; padding: 0 0 0 20px; display: flow-root; }
    html[dir="rtl"] .header .header-wrap .nav-wrap { text-align: left; padding: 0 20px 0 0; }
    #mainnav > ul > li:last-child { padding-right: 0; }
    #mainnav > ul > li:last-child > a { margin-right: 0; }
    html[dir="rtl"] #mainnav > ul > li:last-child { padding-left: 0; padding-right: 6px; }
    html[dir="rtl"] #mainnav > ul > li:last-child > a { margin-left: 0; margin-right: 8px; }
}

/* ---------- About pages: founder quote + history timeline ---------- */
.flat-overview .post-overview .content:first-child { margin-top: 0; }
.rsv-founder-quote { margin: 0; background: #faf7f2; border-radius: 6px; padding: 28px; text-align: center; height: 100%; }
.rsv-founder-quote img { width: 120px; height: 120px; border-radius: 50%; object-fit: cover; object-position: center top; margin: 0 auto 18px; display: block; border: 3px solid #c8a96a; }
.rsv-founder-quote blockquote { border: 0; margin: 0 0 14px; padding: 0; font-size: 16px; line-height: 1.75; color: #301e02; font-style: italic; }
.rsv-founder-quote figcaption { font-weight: 600; color: #8a6d3b; font-size: 13px; letter-spacing: .3px; }
.rsv-about-cta { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 12px; }
.rsv-about-cta .rsv-need-btn { margin: 0; }
.rsv-about-cta .rsv-need-btn.rsv-btn-outline { line-height: 38px; background: transparent !important; color: #301e02 !important; border: 1px solid #301e02; }
.rsv-about-cta .rsv-need-btn.rsv-btn-outline:hover { background: #301e02 !important; color: #fff !important; }

.rsv-timeline { list-style: none; margin: 34px 0 0; padding: 0; position: relative; }
.rsv-timeline::before { content: ""; position: absolute; top: 6px; bottom: 6px; inset-inline-start: 44px; width: 2px; background: #e6dccb; }
.rsv-tl-item { position: relative; display: flex; gap: 34px; padding-bottom: 34px; }
.rsv-tl-item:last-child { padding-bottom: 0; }
.rsv-tl-year { flex: 0 0 90px; position: relative; z-index: 1; align-self: flex-start; background: #301e02; color: #fff; font-weight: 700; font-size: 17px; text-align: center; padding: 8px 0; border-radius: 4px; }
.rsv-tl-body { flex: 1; padding-top: 4px; }
.flat-history .rsv-tl-body .title { font-size: 20px; font-weight: 600; color: #222; margin-bottom: 10px; }
.rsv-tl-body p { margin: 0; }
.rsv-signature { margin-top: 30px; font-weight: 600; color: #8a6d3b; font-style: italic; }
.rsv-signature::before { content: "— "; }
@media only screen and (max-width: 767px) {
    .rsv-tl-item { gap: 18px; }
    .rsv-tl-year { flex-basis: 64px; font-size: 15px; }
    .rsv-timeline::before { inset-inline-start: 31px; }
    .flat-overview .post-overview .post-list .box { width: 100%; float: none; }
}
html[data-theme="dark"] .rsv-founder-quote { background: #1f1a14; }
html[data-theme="dark"] .rsv-founder-quote blockquote { color: #e8dcc6; }
html[data-theme="dark"] .rsv-timeline::before { background: #3a3128; }
html[data-theme="dark"] .rsv-tl-year { background: #c8a96a; color: #1a140d; }
html[data-theme="dark"] .flat-history .rsv-tl-body .title { color: #f1ece4; }
html[data-theme="dark"] .rsv-need-btn.rsv-btn-outline { color: #e8dcc6 !important; border-color: #c8a96a; }
html[data-theme="dark"] .widget-need .rsv-need-btn,
html[data-theme="dark"] .rsv-diag-widget .rsv-need-btn,
html[data-theme="dark"] .rsv-about-cta .rsv-need-btn:not(.rsv-btn-outline) { background: #c4a27c; color: #1e1202 !important; }
html[data-theme="dark"] .widget-need .rsv-need-btn:hover,
html[data-theme="dark"] .rsv-diag-widget .rsv-need-btn:hover,
html[data-theme="dark"] .rsv-about-cta .rsv-need-btn:not(.rsv-btn-outline):hover { background: #e0c49c; }

/* ---------- Main menu: 7 items on one line (desktop) ---------- */
@media only screen and (min-width: 992px) {
    #mainnav > ul > li > a { margin: 0 8px; font-size: 13px; }

}
@media only screen and (min-width: 992px) and (max-width: 1199px) {
    #mainnav > ul > li > a { margin: 0 5px; font-size: 12px; }
    #mainnav > ul > li { padding: 0 3px; }
    .header .header-wrap .logo img:not(.logo-ar-mark) { max-width: 170px; }
}
/* long training dropdown: keep it readable */
@media only screen and (min-width: 992px) {
    #mainnav ul.submenu { width: 340px; }
    #mainnav ul.submenu > li > a { line-height: 1.5; padding-top: 12px; padding-bottom: 12px; padding-inline-end: 16px; }
}

/* ---------- Training: icons, programme meta, sector cards, 4-step row ---------- */
.rsv-steps--4 { grid-template-columns: repeat(4, 1fr); }
.rsv-prog-card { scroll-margin-top: 120px; padding-top: 34px; }
.rsv-prog-icon, .rsv-sector-icon {
    display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px;
    border-radius: 50%; background: var(--rsv-cream, #f7f2ea); color: var(--rsv-gold-2, #a8835a); font-size: 20px; margin-bottom: 14px;
}
.rsv-prog-card .rsv-prog-icon { position: absolute; top: 26px; inset-inline-end: 26px; margin: 0; }
.rsv-prog-meta { list-style: none; margin: 16px 0 0; padding: 14px 0 0; border-top: 1px dashed var(--rsv-line, #e9e1d5); display: grid; gap: 8px; }
.rsv-prog-meta li { display: flex; gap: 10px; align-items: flex-start; font-size: 13.5px; line-height: 1.7; }
.rsv-prog-meta i { color: var(--rsv-gold-2, #a8835a); margin-top: 4px; width: 14px; }
.rsv-prog-meta strong { color: var(--rsv-ink, #2a2118); }
.rsv-plan-label { font-weight: 400; color: var(--rsv-gold-2, #a8835a); }
.rsv-sector-card .rsv-checklist li { padding: 0; font-size: 14px; }
.rsv-sector-card .rsv-checklist a { color: var(--rsv-ink, #2a2118); }
.rsv-sector-card .rsv-checklist a:hover { color: var(--rsv-gold-2, #a8835a); }
.rsv-home-sectors .rsv-actions { margin-top: 30px; }
.rsv-home-sectors .rsv-head h2 { color: var(--rsv-ink, #2a2118); }
html[data-theme="dark"] .rsv-prog-icon, html[data-theme="dark"] .rsv-sector-icon { color: var(--rsv-gold, #c4a27c); }
/* 4 practice boxes on the home page */
@media only screen and (min-width: 992px) { .flat-icon .item.rsv-item-4 .iconbox.v1 { width: 25%; } }
.flat-icon .iconbox.icon-left .box-header.rsv-train-icon i:before { font-family: FontAwesome; content: "\f19d"; font-size: 36px; }
@media (max-width: 991px) { .rsv-steps--4 { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 767px) { .rsv-steps--4 { grid-template-columns: 1fr; } }

/* ---------- Menu fonts: EN "Alaska" / AR "GE Dinar" when installed, otherwise close free matches ---------- */
#mainnav > ul > li > a, #mainnav ul.submenu > li > a, #mainnav-mobi ul > li > a {
    font-family: "Alaska", "Montserrat", "Poppins", sans-serif !important; letter-spacing: 0; font-weight: 400;
}
html[dir="rtl"] #mainnav > ul > li > a, html[dir="rtl"] #mainnav ul.submenu > li > a, html[dir="rtl"] #mainnav-mobi ul > li > a {
    font-family: "GE Dinar Two", "Almarai", "Cairo", sans-serif !important; letter-spacing: 0; font-weight: 500;
}
html[dir="rtl"] #mainnav ul.submenu > li > a { font-weight: 500; }
/* home: "Where to start" block (replaces template news) */
.company-news.rsv-start .blog-home .item { border-top: 3px solid #c4a27c; background: #faf7f2; padding: 20px 22px; border-radius: 4px; }
.company-news.rsv-start .blog-home .item .post-v1 { padding: 0; }
.company-news.rsv-start .list-us .text-list a { color: inherit; }
.company-news.rsv-start .list-us .text-list a:hover { color: #a8835a; }
html[data-theme="dark"] .company-news.rsv-start .blog-home .item { background: #1b1815; }
.company-news.rsv-start .blog-home { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; margin: 0; }
.company-news.rsv-start .blog-home::before, .company-news.rsv-start .blog-home::after { display: none; }
.company-news.rsv-start .blog-home .item { float: none; width: auto; margin: 0; }
@media (max-width: 767px) { .company-news.rsv-start .blog-home { grid-template-columns: 1fr; } }
.company-news.rsv-start .post-us { margin-left: 0; margin-right: 0; }
@media only screen and (min-width: 1200px) { html[dir="rtl"] #mainnav > ul > li > a { font-size: 15px; } }
/* home practice boxes: identical image size so titles line up */
.flat-icon .iconbox.v1 .thumb { overflow: hidden; border-radius: 4px; }
.flat-icon .iconbox.v1 .thumb img { display: block; width: 100%; height: auto; aspect-ratio: 16 / 10; object-fit: cover; }
html[data-theme="dark"] .flat-icon .iconbox.v1 .thumb img { filter: none !important; }
/* partners: featured technology partner (CodeFlow) */
.flat-partner .rsv-partner-featured .thumb.rsv-partner-logo { background: #fff; border: 1px solid #e9e1d5; border-radius: 6px; padding: 26px; width: 240px; max-width: 100%; display: flex; align-items: center; justify-content: center; aspect-ratio: 1 / 1; }
.flat-partner .rsv-partner-featured .thumb.rsv-partner-logo img { width: 100%; height: auto; object-fit: contain; }
.rsv-partner-tag { display: inline-block; margin: 0 0 8px; padding: 3px 12px; border-radius: 20px; background: #f7f2ea; color: #8a6a43; font-size: 12px; font-weight: 600; }
.flat-partner .rsv-partner-featured .post .text { margin-bottom: 12px; }
html[data-theme="dark"] .flat-partner .rsv-partner-featured .thumb.rsv-partner-logo { background: #fff; border-color: #3a342d; }
html[data-theme="dark"] .flat-partner .rsv-partner-featured .thumb.rsv-partner-logo img { filter: none !important; }
html[data-theme="dark"] .rsv-partner-tag { background: #24201c; color: #c4a27c; }
.flat-partner .post-wrap.v2 .rsv-partner-featured .post p.text { margin-bottom: 14px !important; } .flat-partner .post-wrap.v2 .rsv-partner-featured .post .comment-reply { margin-top: 10px; display: inline-block; }
/* home logo strip: CodeFlow first, six logos evenly spaced */
@media only screen and (min-width: 768px) {
    .flat-clients .col-md-12 { display: flex; align-items: center; justify-content: space-between; min-height: 180px; }
    .flat-clients .thumb-clients { float: none; width: auto; line-height: normal; padding: 20px 8px; }
    .flat-clients .thumb-clients img { padding: 0 !important; }
}
.flat-clients .rsv-client-codeflow a { display: inline-block; }
.flat-clients .rsv-client-codeflow img { height: 74px; width: auto; filter: grayscale(1) opacity(.62); transition: filter .3s ease, transform .3s ease; }
.flat-clients .rsv-client-codeflow a:hover img, .flat-clients .rsv-client-codeflow a:focus img { filter: none; transform: scale(1.04); }
@media only screen and (max-width: 767px) { .flat-clients .rsv-client-codeflow { padding-top: 24px; text-align: center; } }
html[data-theme="dark"] .flat-clients .rsv-client-codeflow img { filter: grayscale(1) brightness(1.8) opacity(.75); }
html[data-theme="dark"] .flat-clients .rsv-client-codeflow a:hover img { filter: none; }

/* ---------- Footer: smaller logo, tighter gap ---------- */
.footer .footer-logo > img { max-width: 280px; width: 100%; height: auto; margin-bottom: 22px; }
.footer .footer-logo .logo-ar { margin-bottom: 22px !important; }
.footer .footer-logo .logo-ar-mark { height: 70px !important; width: auto; }
.footer .footer-logo .logo-ar-name { font-size: 27px !important; }
.footer .footer-logo .logo-ar-sub { font-size: 15px !important; }

/* ---------- Widget titles: the two short lines sit right after the text (never over it) ---------- */
html:not([dir="rtl"]) .widget .title-link { display: inline-block; padding-right: 36px; }
html:not([dir="rtl"]) .widget .title-link:before,
html:not([dir="rtl"]) .widget .title-link:after { left: auto !important; }
html:not([dir="rtl"]) .widget .title-link:before { right: 11px !important; }
html:not([dir="rtl"]) .widget .title-link:after { right: 0 !important; }
.footer .widget .title-link:before, .footer .widget .title-link:after { background-color: #c4a27c !important; height: 2px; }

/* ---------- Main menu (EN): Alaska in bold ---------- */
html:not([dir="rtl"]) #mainnav > ul > li > a { font-weight: 700 !important; font-synthesis: weight; }
html:not([dir="rtl"]) .footer .widget .widget-title { font-size: 16px; white-space: nowrap; }
@media only screen and (min-width: 992px) and (max-width: 1199px) { html:not([dir="rtl"]) .footer .widget .widget-title { font-size: 13px; } html:not([dir="rtl"]) .footer .widget .title-link { padding-right: 26px; } }

/* ---------- Footer columns: "Consulting & Training" centred between "Follow us" and "Subscribe" ---------- */
@media only screen and (min-width: 992px) {
    .footer > .container > .row { display: flex; align-items: flex-start; }
    .footer > .container > .row::before, .footer > .container > .row::after { display: none; }
    .footer > .container > .row > div { float: none; }
    .footer > .container > .row > div:nth-child(2) { flex: 0 0 auto; width: auto; }
    .footer > .container > .row > div:nth-child(3) { flex: 1 1 auto; width: auto; }
    .footer > .container > .row > div:nth-child(3) .widget-our-services { width: fit-content; margin: 0 auto; }
}
/* top bar: "Get An Appointment" links to the contact page */
.box-text a.rsv-appointment { color: inherit !important; text-decoration: none; transition: color .25s ease; }
.box-text a.rsv-appointment:hover, .box-text a.rsv-appointment:focus { color: #c4a27c !important; }

/* ---------- Floating WhatsApp button (opposite side to the "back to top" arrow) ---------- */
.rsv-whatsapp {
    position: fixed; bottom: 22px; left: 22px; z-index: 9998;
    width: 56px; height: 56px; border-radius: 50%; background: #25d366; color: #fff !important;
    display: flex; align-items: center; justify-content: center;
    box-shadow: 0 6px 18px rgba(0,0,0,.25); transition: transform .25s ease, box-shadow .25s ease;
}
.rsv-whatsapp:hover, .rsv-whatsapp:focus { transform: scale(1.08); box-shadow: 0 8px 24px rgba(0,0,0,.32); color: #fff !important; }
.rsv-whatsapp::after { content: ""; position: absolute; inset: 0; border-radius: 50%; border: 2px solid #25d366; animation: rsvWaPulse 2.2s ease-out infinite; }
@keyframes rsvWaPulse { 0% { transform: scale(1); opacity: .7; } 100% { transform: scale(1.5); opacity: 0; } }
html[dir="rtl"] .rsv-whatsapp { left: auto; right: 22px; }
@media (max-width: 767px) { .rsv-whatsapp { width: 50px; height: 50px; bottom: 16px; left: 16px; } html[dir="rtl"] .rsv-whatsapp { left: auto; right: 16px; } }
@media (prefers-reduced-motion: reduce) { .rsv-whatsapp::after { animation: none; display: none; } }
@media print { .rsv-whatsapp { display: none; } }
/* hero video: soft brand-tinted overlay so the white titles stay readable */
.rev_slider .rs-background-video-layer::after { content: ""; position: absolute; inset: 0; z-index: 2; pointer-events: none;
    background: linear-gradient(180deg, rgba(26,16,6,.42) 0%, rgba(26,16,6,.28) 45%, rgba(26,16,6,.45) 100%); }

/* ---------- Brand watermark: "R" enters from the left edge, "S" from the right (wide screens only) ---------- */
.rsv-watermark { display: none; }
@media only screen and (min-width: 1440px) {
    .rsv-watermark {
        display: block; position: fixed; z-index: -1; pointer-events: none;
        background-color: #8a6a43; opacity: .065;
        -webkit-mask-repeat: no-repeat; mask-repeat: no-repeat;
        -webkit-mask-size: contain; mask-size: contain;
        -webkit-mask-position: center; mask-position: center;
    }
    .rsv-watermark--r {
        width: 505px; height: 560px; top: 50%; transform: translateY(-46%);
        left: min(-120px, calc((100vw - 1170px) / 2 - 545px));
        -webkit-mask-image: url("../images/watermark-R.png"); mask-image: url("../images/watermark-R.png");
    }
    .rsv-watermark--s {
        width: 328px; height: 560px; top: 50%; transform: translateY(-38%);
        right: min(-60px, calc((100vw - 1170px) / 2 - 368px));
        -webkit-mask-image: url("../images/watermark-S.png"); mask-image: url("../images/watermark-S.png");
        background-color: #a8835a;
    }
    html[data-theme="dark"] .rsv-watermark { background-color: #e6cfa6; opacity: .045; }
}
@media print { .rsv-watermark { display: none !important; } }
html[data-theme="dark"] body > .boxed { background-color: transparent !important; } /* lets the brand watermark show in dark mode */

/* ---------- Header logo: smaller, sharp (high-resolution file), still readable ---------- */
.header .header-wrap .logo img:not(.logo-ar-mark) { width: 240px; max-width: 100%; height: auto; vertical-align: middle; }
@media only screen and (max-width: 991px) { .header .header-wrap .logo img:not(.logo-ar-mark) { width: 190px; margin-top: 0; } }
@media only screen and (max-width: 400px) { .header .header-wrap .logo img:not(.logo-ar-mark) { width: 160px; } }
@media only screen and (min-width: 992px) {
    .header .logo .logo-ar-mark { height: 56px !important; }
    .header .logo .logo-ar-name { font-size: 23px; }
    .header .logo .logo-ar-sub { font-size: 13px; }
    .header .logo .logo-ar-text { gap: 5px; padding-inline-start: 10px; }
}
@media only screen and (min-width: 992px) and (max-width: 1199px) { .header .header-wrap .logo img:not(.logo-ar-mark) { width: 170px; } }
