/* Arti Design — v2 layer (Oct 2026): photo viewer, gallery hub, lighter catalogue cards, product gallery, mobile fixes. Loaded after arti.css. */

/* ===== header: menu reads right-to-left in Arabic (template floats items left) ===== */
@media (min-width: 992px) {
  html[dir="rtl"] #mainmenu > li { float: right; margin-right: 0; margin-left: 30px; }
  html[dir="rtl"] #mainmenu > li:last-child { margin-left: 0; }
}
@media (min-width: 992px) and (max-width: 1199px) { html[dir="rtl"] #mainmenu > li { margin-left: 14px; } }

/* ===== filter chips: one swipeable line on phones ===== */
@media (max-width: 767px) {
  .ad-chips { flex-wrap: nowrap; overflow-x: auto; overscroll-behavior-x: contain; scroll-snap-type: x proximity; -webkit-overflow-scrolling: touch; scrollbar-width: none; margin-inline: -16px; padding: 2px 16px 6px; gap: 8px; }
  .ad-chips::-webkit-scrollbar { display: none; }
  .ad-chips a { flex: 0 0 auto; white-space: nowrap; scroll-snap-align: start; padding: 7px 14px; font-size: 14px; }
  .ad-cat-chips { margin-bottom: 18px; }
}

/* ===== compact title band (product, cart, shop) ===== */
.ad-sub.ad-sub-sm { padding-top: 150px; padding-bottom: 36px; }
.ad-sub.ad-sub-sm .spacer-double { display: none; }
.ad-sub.ad-sub-sm h1 { font-size: clamp(32px, 3.6vw, 52px); margin-bottom: 10px !important; }
@media (max-width: 767px) { .ad-sub.ad-sub-sm { padding-top: 96px !important; padding-bottom: 22px !important; } .ad-sub.ad-sub-sm h1 { font-size: 28px !important; } .ad-sub.ad-sub-sm .col-md-4 { display: none; } }

/* ===== gallery hub: exclusive pieces block ===== */
.ad-hub-sec + .ad-hub-sec { border-top: 1px solid rgba(177,149,109,.35); padding-top: 60px; margin-top: 20px; }
.ad-hub-k { display: inline-block; font-size: 13px; font-weight: 600; color: var(--secondary-color); letter-spacing: .02em; margin-bottom: 6px; }
.ad-hub-n { display: flex; gap: 28px; margin: 18px 0 26px; }
.ad-hub-n b { display: block; font-family: var(--heading-font); font-weight: 300; font-size: 40px; line-height: 1; color: var(--heading-font-color); }
.ad-hub-n span { font-size: 14px; opacity: .7; }
.ad-pc { position: relative; display: block; overflow: hidden; border-radius: 4px; background: #e8dfd4; }
.ad-pc img { width: 100%; aspect-ratio: 1; object-fit: cover; display: block; transition: transform .9s cubic-bezier(.2,.7,.2,1); }
.ad-pc:hover img { transform: scale(1.06); }
.ad-pc span { position: absolute; inset-inline: 0; bottom: 0; padding: 26px 12px 10px; color: #fff; font-size: 14px; font-weight: 500; background: linear-gradient(180deg, rgba(20,13,10,0), rgba(20,13,10,.75)); }
.ad-pc em { position: absolute; top: 8px; inset-inline-end: 8px; font-style: normal; font-size: 11px; color: #fff; background: rgba(20,13,10,.6); padding: 3px 7px; border-radius: 20px; direction: ltr; }

.ad-more-card img { aspect-ratio: 16/10; filter: brightness(.7); }
.ad-more-card span { font-family: var(--heading-font); font-size: clamp(20px, 2vw, 28px); font-weight: 300; padding: 40px 28px 26px; }

/* ===== catalogue cards: photo first, one quiet action row ===== */
.ad-alb-card figcaption { padding: 10px 12px 12px; display: flex; align-items: center; justify-content: space-between; gap: 10px; }
.ad-alb-card figcaption b { font-size: 16px; line-height: 1.35; flex: 1; min-width: 0; }
.ad-alb-act { gap: 6px; flex: 0 0 auto; }
.ad-alb-add { flex: 0 0 auto; width: 40px; height: 40px; padding: 0; display: flex; align-items: center; justify-content: center; font-size: 15px; border-radius: 2px; }
.ad-alb-add .ad-lbl { display: none; }
.ad-alb-wa { width: 40px; height: 40px; font-size: 18px; border-radius: 2px; }
.ad-alb-add.done { background: var(--ok, #2f7a4f); }
.ad-alb-lead { max-width: 760px; opacity: .85; margin: -8px 0 24px; }
@media (max-width: 575px) { .ad-alb-card figcaption { padding: 8px; gap: 6px; } .ad-alb-card figcaption b { font-size: 13.5px; } .ad-alb-add, .ad-alb-wa { width: 34px; height: 34px; font-size: 14px; } .ad-alb-card { margin-bottom: 10px; } .ad-alb { column-gap: 10px; } }
.ad-alb-it { cursor: zoom-in; }

/* ===== product: swipe gallery, thumbnails in one row, sticky request bar on phones ===== */
.ad-pgal { position: relative; }
.ad-pg-track { display: flex; overflow-x: auto; scroll-snap-type: x mandatory; scroll-behavior: smooth; overscroll-behavior-x: contain; scrollbar-width: none; border-radius: 4px; background: #e8dfd4; }
.ad-pg-track::-webkit-scrollbar { display: none; }
.ad-pg-it { flex: 0 0 100%; scroll-snap-align: center; scroll-snap-stop: always; display: block; cursor: zoom-in; }
.ad-pg-it img { width: 100%; aspect-ratio: 4/3; object-fit: cover; display: block; }
.ad-pg-cnt { direction: ltr; position: absolute; bottom: 12px; inset-inline-start: 12px; z-index: 2; background: rgba(20,13,10,.72); color: #fff; font-size: 13px; padding: 4px 11px; border-radius: 20px; pointer-events: none; }
.ad-pg-full { position: absolute; bottom: 12px; inset-inline-end: 12px; z-index: 2; border: 0; background: rgba(255,255,255,.92); color: #1b130e; font-size: 13px; font-weight: 600; padding: 6px 12px; border-radius: 20px; }
.ad-pg-arr { position: absolute; top: 50%; z-index: 2; width: 44px; height: 44px; margin-top: -22px; border-radius: 50%; border: 0; background: rgba(255,255,255,.9); color: #1b130e; display: flex; align-items: center; justify-content: center; opacity: 0; transition: opacity .3s; }
.ad-pgal:hover .ad-pg-arr { opacity: 1; }
.ad-pg-arr.p { inset-inline-start: 12px; } .ad-pg-arr.n { inset-inline-end: 12px; }
html[dir="rtl"] .ad-pg-arr i { transform: scaleX(-1); }
@media (hover: none) { .ad-pg-arr { display: none; } }
.ad-pgal + .ad-thumbs { display: flex; grid-template-columns: none; overflow-x: auto; gap: 8px; scrollbar-width: thin; padding-bottom: 4px; }
.ad-pgal + .ad-thumbs img { flex: 0 0 78px; width: 78px; height: 78px; }
@media (max-width: 767px) { .ad-pgal + .ad-thumbs img { flex-basis: 60px; width: 60px; height: 60px; } }
.ad-pbar { display: none; }
@media (max-width: 767px) {
  body.ad-has-pbar .ad-mbar { display: none; }
  .ad-pbar { display: grid; grid-template-columns: 1fr auto; gap: 8px; position: fixed; inset-inline: 0; bottom: 0; z-index: 1200; padding: 10px 12px calc(10px + env(safe-area-inset-bottom)); background: rgba(27,19,14,.96); backdrop-filter: blur(8px); border-top: 1px solid rgba(255,255,255,.12); transform: translateY(110%); transition: transform .35s ease; }
  .ad-pbar.on { transform: none; }
  .ad-pbar button { border: 0; background: var(--secondary-color); color: #1b130e; font-weight: 700; font-size: 15px; padding: 12px; border-radius: 3px; }
  .ad-pbar button.done { background: #2f7a4f; color: #fff; }
  .ad-pbar a { display: flex; align-items: center; gap: 6px; padding: 0 16px; border: 1px solid #25d366; color: #fff; border-radius: 3px; font-weight: 600; }
  .ad-pbar a i { color: #25d366; font-size: 18px; }
}

/* ===== projects page with a single category: no chips ===== */
.ad-chips:empty { display: none; }

/* ===== photo viewer: the photo takes the whole screen, controls float over it ===== */
html.adv-open, html.adv-open body { overflow: hidden !important; }
.adv { --adv-bg: 1; --adv-b: 120px; position: fixed; inset: 0; z-index: 3000; background: rgba(12,8,6,calc(.98 * var(--adv-bg))); color: #fff; opacity: 0; visibility: hidden; transition: opacity .28s ease, visibility 0s linear .28s; -webkit-user-select: none; user-select: none; }
.adv.on { opacity: 1; visibility: visible; transition: opacity .28s ease; }
.adv-stage { position: absolute; inset: 0 0 var(--adv-b) 0; overflow: hidden; touch-action: none; cursor: grab; }
.adv-stage:active { cursor: grabbing; }
.adv-track { position: absolute; inset: 0; will-change: transform; }
.adv-slide { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; padding: 8px 76px 0; }
.adv-zoom { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; transform-origin: 50% 50%; will-change: transform; }
.adv-slide img { max-width: 100%; max-height: 100%; width: auto; height: auto; object-fit: contain; display: block; pointer-events: auto; cursor: zoom-in; transition: filter .35s ease; filter: blur(6px); -webkit-user-drag: none; }
.adv-slide.ld img { filter: none; }
.adv.zoomed .adv-slide img, .adv.zoomed .adv-stage { cursor: grab; }
.adv.zoomed .adv-stage:active, .adv.zoomed .adv-stage:active img { cursor: grabbing; }
.adv-spin { position: absolute; top: 50%; left: 50%; width: 34px; height: 34px; margin: -17px; border: 2px solid rgba(255,255,255,.25); border-top-color: var(--secondary-color, #b08a4f); border-radius: 50%; animation: advSpin .8s linear infinite; opacity: .9; }
.adv-slide.ld .adv-spin, .adv-slide.err .adv-spin { display: none; }
@keyframes advSpin { to { transform: rotate(360deg); } }
.adv-top { position: absolute; inset: 0 0 auto 0; z-index: 4; display: flex; align-items: center; justify-content: space-between; padding: 12px 16px 26px; background: linear-gradient(180deg, rgba(12,8,6,.75), rgba(12,8,6,0)); pointer-events: none; transition: opacity .25s; }
.adv-top > * { pointer-events: auto; }
.adv-cnt { font-size: 14px; background: rgba(12,8,6,.55); padding: 6px 12px; border-radius: 20px; font-variant-numeric: tabular-nums; }
.adv-tools { display: flex; align-items: center; gap: 6px; background: rgba(12,8,6,.55); padding: 4px; border-radius: 30px; backdrop-filter: blur(8px); }
.adv-tb { width: 42px; height: 42px; border-radius: 50%; border: 0; background: transparent; color: #fff; font-size: 17px; display: flex; align-items: center; justify-content: center; transition: background .2s, opacity .2s; }
.adv-tb:hover { background: rgba(255,255,255,.14); }
.adv-tb:disabled { opacity: .3; pointer-events: none; }
.adv-tb.adv-x { background: rgba(255,255,255,.12); }
.adv-zl { min-width: 46px; text-align: center; font-size: 13px; opacity: .85; font-variant-numeric: tabular-nums; direction: ltr; }
.adv-nav { position: absolute; top: calc((100% - var(--adv-b)) / 2); z-index: 4; width: 54px; height: 54px; margin-top: -27px; border-radius: 50%; border: 1px solid rgba(255,255,255,.22); background: rgba(12,8,6,.5); color: #fff; font-size: 18px; display: flex; align-items: center; justify-content: center; transition: background .2s, opacity .25s; backdrop-filter: blur(6px); }
.adv-nav:hover { background: rgba(176,138,79,.9); }
.adv-nav:disabled { opacity: .2; pointer-events: none; }
.adv-prev { inset-inline-start: 12px; } .adv-next { inset-inline-end: 12px; }
.adv-bottom { position: absolute; inset: auto 0 0 0; z-index: 4; transition: opacity .25s; }
.adv-cap { display: flex; align-items: center; justify-content: space-between; gap: 10px 20px; flex-wrap: wrap; padding: 10px clamp(14px, 3vw, 40px); }
.adv-cap.empty { display: none; }
.adv-meta { display: flex; align-items: center; gap: 12px; min-width: 0; }
.adv-code { background: var(--secondary-color, #b08a4f); color: #1b130e; font: 700 13px/1 Arial, sans-serif; letter-spacing: .06em; padding: 7px 10px; border-radius: 2px; }
.adv-title { font-family: var(--heading-font); font-weight: 400; font-size: 18px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.adv-act { display: flex; gap: 8px; flex-wrap: wrap; }
.adv-btn { display: inline-flex; align-items: center; gap: 8px; padding: 10px 16px; border-radius: 3px; font-size: 14px; font-weight: 600; border: 1px solid rgba(255,255,255,.28); background: transparent; color: #fff; text-decoration: none; transition: background .2s, border-color .2s; }
.adv-btn:hover { color: #fff; background: rgba(255,255,255,.1); }
.adv-add { background: var(--secondary-color, #b08a4f); border-color: var(--secondary-color, #b08a4f); color: #1b130e; }
.adv-add:hover { background: #c9a15f; color: #1b130e; }
.adv-add.done { background: #2f7a4f; border-color: #2f7a4f; color: #fff; }
.adv-wa i { color: #25d366; font-size: 17px; }
.adv-thumbs { display: none; gap: 6px; overflow-x: auto; padding: 0 14px 12px; scrollbar-width: none; justify-content: safe center; }
.adv-thumbs::-webkit-scrollbar { display: none; }
.adv.has-thumbs .adv-thumbs { display: flex; }
.adv-th { flex: 0 0 auto; width: 54px; height: 40px; padding: 0; border: 2px solid transparent; border-radius: 3px; overflow: hidden; background: #2a1c15; opacity: .5; transition: opacity .2s, border-color .2s; }
.adv-th img { width: 100%; height: 100%; object-fit: cover; display: block; }
.adv-th:hover { opacity: .9; } .adv-th.on { opacity: 1; border-color: var(--secondary-color, #b08a4f); }
.adv-hint { position: absolute; left: 50%; top: 70px; z-index: 5; transform: translateX(-50%); background: rgba(176,138,79,.95); color: #1b130e; font-size: 13px; font-weight: 600; padding: 7px 14px; border-radius: 20px; opacity: 0; pointer-events: none; white-space: nowrap; }
.adv.hint .adv-hint { animation: advHint 3.2s ease .5s both; }
@keyframes advHint { 0% { opacity: 0; transform: translate(-50%, -6px); } 12%, 80% { opacity: 1; transform: translate(-50%, 0); } 100% { opacity: 0; } }
.adv.noui .adv-top, .adv.noui .adv-bottom, .adv.noui .adv-nav { opacity: 0; pointer-events: none; }
.adv.noui .adv-stage { bottom: 0; }
.adv.zoomed .adv-nav, .adv.zoomed .adv-bottom { opacity: 0; pointer-events: none; }
@media (max-width: 767px) {
  .adv-nav { display: none; }
  .adv-slide { padding: 0; }
  .adv-top { padding: 8px 10px 22px; }
  .adv-zl { display: none; }
  .adv-tb { width: 38px; height: 38px; font-size: 15px; }
  .adv-cap { padding: 8px 10px calc(8px + env(safe-area-inset-bottom)); }
  .adv-title { font-size: 15px; }
  .adv-act { width: 100%; display: grid; grid-template-columns: 1fr auto; }
  .adv-act .adv-link { grid-column: 1 / -1; justify-content: center; }
  .adv-btn { justify-content: center; padding: 10px 12px; }
  .adv-th { width: 46px; height: 34px; }
  .adv-hint { top: 62px; }
}
@media (prefers-reduced-motion: reduce) { .adv, .adv.on { transition: none; } .adv-slide img { transition: none; } .adv.hint .adv-hint { animation: none; } }

/* ===== gallery: quick access doors (hub) ===== */
.ad-quick { position: relative; z-index: 5; margin-top: -70px; }
.ad-quick-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 16px; }
.ad-quick-it { position: relative; display: flex; align-items: center; gap: 16px; padding: 14px; background: #fff; border-radius: 6px; box-shadow: 0 18px 40px rgba(27,19,14,.12); text-decoration: none; color: var(--heading-font-color); border-bottom: 3px solid transparent; transition: transform .35s cubic-bezier(.2,.7,.2,1), box-shadow .35s, border-color .35s; animation: adQ .7s cubic-bezier(.2,.7,.2,1) var(--d, 0ms) both; }
@keyframes adQ { from { opacity: 0; transform: translateY(18px); } to { opacity: 1; transform: none; } }
.ad-quick-it:hover { transform: translateY(-5px); box-shadow: 0 26px 50px rgba(27,19,14,.18); border-bottom-color: var(--secondary-color); color: var(--heading-font-color); }
.ad-quick-img { flex: 0 0 92px; height: 92px; border-radius: 4px; overflow: hidden; background: #e8dfd4; }
.ad-quick-img img { width: 100%; height: 100%; object-fit: cover; transition: transform .8s; }
.ad-quick-it:hover .ad-quick-img img { transform: scale(1.1); }
.ad-quick-t { display: flex; flex-direction: column; min-width: 0; }
.ad-quick-t i { color: var(--secondary-color); font-size: 15px; margin-bottom: 4px; }
.ad-quick-t b { font-family: var(--heading-font); font-weight: 400; font-size: 21px; line-height: 1.3; }
.ad-quick-t small { font-size: 13px; opacity: .7; line-height: 1.6; }
.ad-quick-t em { font-style: normal; font-size: 13px; font-weight: 600; color: var(--primary-color); margin-top: 6px; }
.ad-arr-i { display: inline-block; transition: transform .3s; }
.ad-quick-it:hover .ad-arr-i { transform: translateX(-5px); }
html[dir="ltr"] .ad-quick-it:hover .ad-arr-i { transform: translateX(5px); }
.ad-quick-cats { display: flex; flex-wrap: wrap; align-items: center; gap: 8px; margin-top: 18px; }
.ad-quick-cats span { font-size: 14px; opacity: .7; margin-inline-end: 4px; }
.ad-quick-cats a { font-size: 14px; padding: 6px 14px; border-radius: 30px; border: 1px solid rgba(177,149,109,.55); color: var(--heading-font-color); text-decoration: none; transition: background .25s, color .25s, border-color .25s; }
.ad-quick-cats a:hover { background: var(--primary-color); border-color: var(--primary-color); color: #fff; }
@media (max-width: 767px) {
  .ad-quick { margin-top: -36px; }
  .ad-quick-row { gap: 10px; }
  .ad-quick-it { padding: 10px; gap: 12px; }
  .ad-quick-img { flex-basis: 70px; height: 70px; }
  .ad-quick-t b { font-size: 18px; }
  .ad-quick-cats { flex-wrap: nowrap; overflow-x: auto; scrollbar-width: none; margin-inline: -16px; padding: 0 16px 4px; }
  .ad-quick-cats::-webkit-scrollbar { display: none; }
  .ad-quick-cats a, .ad-quick-cats span { flex: 0 0 auto; white-space: nowrap; }
}

/* ===== gallery tabs: one bar on every gallery page, sticks under the header ===== */
.ad-gtabs { position: relative; z-index: 900; height: 64px; margin: 26px 0 0; }
.ad-gtabs-bar { height: 64px; background: rgba(42,28,21,.97); backdrop-filter: blur(10px); box-shadow: 0 10px 30px rgba(0,0,0,.12); display: flex; align-items: center; }
.ad-gtabs.stuck .ad-gtabs-bar { position: fixed; inset-inline: 0; top: var(--ad-gt-top, 0px); }
.ad-gtabs-row { display: flex; align-items: center; gap: 6px; overflow-x: auto; scrollbar-width: none; }
.ad-gtabs-row::-webkit-scrollbar { display: none; }
.ad-gtabs-row a { flex: 0 0 auto; display: flex; align-items: center; gap: 10px; padding: 6px 16px 6px 8px; border-radius: 40px; color: rgba(255,255,255,.78); text-decoration: none; font-size: 15px; font-weight: 500; border: 1px solid transparent; transition: background .25s, color .25s, border-color .25s; white-space: nowrap; }
html[dir="rtl"] .ad-gtabs-row a { padding: 6px 8px 6px 16px; }
.ad-gtabs-row a img { width: 34px; height: 34px; border-radius: 50%; object-fit: cover; border: 1px solid rgba(255,255,255,.25); }
.ad-gtabs-row a small { font-size: 12px; opacity: .6; margin-inline-start: 4px; }
.ad-gtabs-row a:hover { color: #fff; background: rgba(255,255,255,.08); }
.ad-gtabs-row a.on { color: #1b130e; background: var(--secondary-color); border-color: var(--secondary-color); }
.ad-gtabs-row a.on img { border-color: rgba(27,19,14,.35); }
.ad-gtabs-row a.on small { opacity: .75; }
.ad-gtabs + section { padding-top: 50px; }
@media (max-width: 767px) { .ad-gtabs, .ad-gtabs-bar { height: 56px; } .ad-gtabs { margin-top: 0; } .ad-gtabs-row a { font-size: 14px; } .ad-gtabs-row a img { width: 28px; height: 28px; } .ad-gtabs-row { margin-inline: -4px; } .ad-gtabs + section { padding-top: 34px !important; } }

/* service pages: link from the classic photo to the classic album */
.ad-img-link { display: inline-flex; align-items: center; gap: 8px; margin-top: 14px; font-weight: 600; color: var(--primary-color); text-decoration: none; border-bottom: 1px solid rgba(138,90,52,.4); padding-bottom: 3px; transition: color .25s, border-color .25s; }
.ad-img-link:hover { color: var(--heading-font-color); border-color: currentColor; }
.ad-img-link span { transition: transform .3s; display: inline-block; }
.ad-img-link:hover span { transform: translateX(-4px); }
html[dir="ltr"] .ad-img-link:hover span { transform: translateX(4px); }

/* album intro line wraps on phones */
.ad-alb-page section .d-flex > span.op-7 { flex: 1 1 320px; min-width: 0; white-space: normal; }

/* ===== free-visit popup ===== */
html.ad-vm-open, html.ad-vm-open body { overflow: hidden !important; }
.ad-vm { position: fixed; inset: 0; z-index: 2900; display: flex; align-items: center; justify-content: center; padding: 20px; }
.ad-vm[hidden] { display: none; }
.ad-vm-bg { position: absolute; inset: 0; background: rgba(16,10,8,.72); backdrop-filter: blur(6px); opacity: 0; transition: opacity .3s ease; }
.ad-vm-box { position: relative; display: grid; grid-template-columns: 5fr 7fr; width: min(940px, 100%); max-height: calc(100vh - 40px); overflow: hidden; background: #f6f1ea; border-radius: 6px; box-shadow: 0 40px 90px rgba(0,0,0,.35); opacity: 0; transform: translateY(24px) scale(.98); transition: opacity .35s ease, transform .45s cubic-bezier(.2,.8,.2,1); }
.ad-vm.on .ad-vm-bg { opacity: 1; }
.ad-vm.on .ad-vm-box { opacity: 1; transform: none; }
.ad-vm-x { position: absolute; top: 12px; inset-inline-end: 12px; z-index: 3; width: 40px; height: 40px; border-radius: 50%; border: 0; background: rgba(27,19,14,.08); color: #1b130e; font-size: 17px; display: flex; align-items: center; justify-content: center; transition: background .2s; }
.ad-vm-x:hover { background: rgba(27,19,14,.16); }
.ad-vm-side { position: relative; background-size: cover; background-position: center; color: #fff; display: flex; align-items: flex-end; min-height: 100%; }
.ad-vm-side:before { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(20,13,10,.15) 0%, rgba(20,13,10,.88) 72%); }
.ad-vm-side-in { position: relative; padding: 34px 30px; }
.ad-vm-k { display: inline-block; font-size: 12.5px; font-weight: 600; color: #1b130e; background: var(--secondary-color); padding: 4px 12px; border-radius: 30px; margin-bottom: 14px; }
.ad-vm-side h3 { color: #fff; font-size: clamp(28px, 2.6vw, 38px); font-weight: 300; line-height: 1.25; margin: 0 0 18px; }
.ad-vm-side ul { list-style: none; padding: 0; margin: 0; display: grid; gap: 12px; }
.ad-vm-side li { display: flex; gap: 12px; align-items: flex-start; font-size: 15px; line-height: 1.6; color: rgba(255,255,255,.92); }
.ad-vm-side li i { color: var(--secondary-color); font-size: 16px; margin-top: 4px; width: 18px; text-align: center; }
.ad-vm-main { overflow-y: auto; padding: 34px 32px 26px; }
.ad-vm-t { font-size: 26px; font-weight: 400; margin: 0 0 6px; }
.ad-vm-p { font-size: 14.5px; opacity: .78; margin: 0 0 18px; line-height: 1.8; }
.ad-vm-form label { display: block; margin-bottom: 12px; }
.ad-vm-form label > span { display: block; font-size: 13px; font-weight: 600; margin-bottom: 5px; color: var(--heading-font-color); }
.ad-vm-form input:not([type=checkbox]), .ad-vm-form select, .ad-vm-form textarea { width: 100%; border: 1px solid rgba(27,19,14,.18); background: #fff; padding: 10px 12px; font-size: 15px; border-radius: 3px; transition: border-color .2s, box-shadow .2s; }
.ad-vm-form input:focus, .ad-vm-form select:focus, .ad-vm-form textarea:focus { outline: 0; border-color: var(--secondary-color); box-shadow: 0 0 0 3px rgba(176,138,79,.18); }
.ad-vm-g { display: grid; grid-template-columns: 1fr 1fr; gap: 0 12px; }
.ad-vm-form .ad-chk { display: flex; gap: 8px; font-size: 13.5px; margin: 4px 0 16px; }
.ad-vm-form .ad-chk span { font-weight: 400; display: inline; margin: 0; }
.ad-vm-sub { font-size: 16px; padding: 13px; }
.ad-vm-msg { margin: 10px 0 0; font-size: 14px; font-weight: 600; min-height: 1em; }
.ad-vm-msg.err { color: #b4412f; }
.ad-vm-wa { display: inline-flex; align-items: center; gap: 8px; margin-top: 6px; font-size: 14px; font-weight: 600; color: var(--heading-font-color); text-decoration: none; }
.ad-vm-wa i { color: #25d366; font-size: 18px; }
.ad-vm-done { text-align: center; padding: 40px 10px; }
.ad-vm-done i { font-size: 52px; color: #2f7a4f; margin-bottom: 14px; display: block; }
.ad-vm-done h3 { font-size: 26px; margin-bottom: 10px; }
@media (max-width: 767px) {
  .ad-vm { padding: 0; align-items: flex-end; }
  .ad-vm-box { grid-template-columns: 1fr; width: 100%; max-height: 92vh; border-radius: 14px 14px 0 0; transform: translateY(100%); }
  .ad-vm.on .ad-vm-box { transform: none; }
  .ad-vm-side { min-height: 0; }
  .ad-vm-side-in { padding: 22px 18px 16px; }
  .ad-vm-side h3 { font-size: 24px; margin-bottom: 10px; }
  .ad-vm-side ul { gap: 6px; }
  .ad-vm-side li { font-size: 13px; }
  .ad-vm-main { padding: 18px 16px calc(18px + env(safe-area-inset-bottom)); }
  .ad-vm-t { display: none; }
  .ad-vm-g { grid-template-columns: 1fr; }
  .ad-vm-x { background: rgba(255,255,255,.85); }
}
@media (prefers-reduced-motion: reduce) { .ad-vm-bg, .ad-vm-box { transition: none; } }

/* ===== quick doors (v1 layout, refined): sits just below the hero, espresso cards with gold accents ===== */
.ad-quick { margin-top: 0; padding-top: 40px !important; }
.ad-quick-it { background: linear-gradient(135deg, #2f2018 0%, #22160f 100%); color: #f3ece2; border-bottom: 2px solid rgba(176,138,79,.55); box-shadow: 0 16px 34px rgba(27,19,14,.16); }
.ad-quick-it:hover { color: #fff; border-bottom-color: var(--secondary-color); box-shadow: 0 24px 46px rgba(27,19,14,.26); }
.ad-quick-img { background: #3a2a20; box-shadow: 0 0 0 1px rgba(176,138,79,.45); }
.ad-quick-t b { color: #fff; }
.ad-quick-t small { color: rgba(243,236,226,.72); opacity: 1; }
.ad-quick-t em { color: var(--secondary-color); }
.ad-quick-t i { color: var(--secondary-color); }
@media (max-width: 767px) { .ad-quick { padding-top: 24px !important; } }

/* quick doors: straddle the bottom edge of the hero + motion */
.ad-quick { margin-top: -48px; padding-top: 0 !important; }
.ad-quick-it { overflow: hidden; animation: adQRise .9s cubic-bezier(.2,.75,.2,1) calc(var(--d, 0ms) + 150ms) backwards; }
@keyframes adQRise { from { opacity: 0; transform: translateY(40px); } to { opacity: 1; transform: none; } }
.ad-quick-it:hover { transform: translateY(-6px); }
.ad-quick-it:after { content: ""; position: absolute; top: 0; bottom: 0; inset-inline-start: -60%; width: 40%; background: linear-gradient(100deg, rgba(255,255,255,0), rgba(214,179,120,.18), rgba(255,255,255,0)); transform: skewX(-18deg); transition: inset-inline-start .9s ease; pointer-events: none; }
.ad-quick-it:hover:after { inset-inline-start: 130%; }
.ad-quick-img { position: relative; }
.ad-quick-img img { animation: adQKb 9s ease-in-out infinite alternate; }
.ad-quick-it:nth-child(2) .ad-quick-img img { animation-delay: -3s; }
.ad-quick-it:nth-child(3) .ad-quick-img img { animation-delay: -6s; }
@keyframes adQKb { from { transform: scale(1); } to { transform: scale(1.14); } }
.ad-quick-t i { animation: adQGlow 3.2s ease-in-out infinite; }
@keyframes adQGlow { 0%, 100% { opacity: .65; } 50% { opacity: 1; } }
.ad-quick-cats a { animation: adQ .6s ease both; }
.ad-quick-cats a:nth-child(n) { animation-delay: calc(.5s + var(--i, 0) * 40ms); }
@media (max-width: 767px) { .ad-quick { margin-top: -30px; } }
@media (prefers-reduced-motion: reduce) { .ad-quick-it, .ad-quick-img img, .ad-quick-t i, .ad-quick-cats a { animation: none !important; } .ad-quick-it:after { display: none; } }

/* free-visit popup: the form scrolls inside the box and the send button is always visible */
.ad-vm-box { grid-template-rows: minmax(0, 1fr); height: min(700px, calc(100vh - 40px)); }
.ad-vm-main { min-height: 0; overflow-y: auto; overscroll-behavior: contain; padding: 26px 28px 0; }
.ad-vm-t { font-size: 24px; }
.ad-vm-p { margin-bottom: 14px; }
.ad-vm-form label { margin-bottom: 10px; }
.ad-vm-form input:not([type=checkbox]), .ad-vm-form select { padding: 9px 12px; }
.ad-vm-form textarea { height: 76px; min-height: 60px; resize: vertical; padding: 9px 12px; }
.ad-vm-form .ad-chk { margin: 2px 0 12px; }
.ad-vm-sub { position: sticky; bottom: 0; z-index: 2; box-shadow: 0 -14px 18px #f6f1ea; margin-bottom: 0; }
.ad-vm-msg { margin: 8px 0 0; }
.ad-vm-wa { margin: 4px 0 22px; }
@media (max-width: 767px) {
  .ad-vm-box { grid-template-rows: auto minmax(0, 1fr); height: auto; max-height: 94vh; }
  .ad-vm-main { padding: 16px 16px 0; }
  .ad-vm-side-in { padding: 18px 18px 14px; }
  .ad-vm-side ul { display: none; }
  .ad-vm-side h3 { margin-bottom: 0; }
  .ad-vm-wa { margin-bottom: calc(16px + env(safe-area-inset-bottom)); }
}

/* ===== free-visit teaser: a small corner card (~10 x 8 cm) instead of opening the form on the visitor ===== */
.ad-vt { position: fixed; z-index: 2800; bottom: 24px; right: 24px; width: 340px; background: #1f1712; color: #efe6d8; border: 1px solid rgba(201,161,95,.35); border-radius: 6px; overflow: hidden; box-shadow: 0 24px 60px rgba(0,0,0,.35); opacity: 0; transform: translateY(18px); pointer-events: none; transition: opacity .45s ease, transform .55s cubic-bezier(.2,.8,.2,1); }
.ad-vt.on { opacity: 1; transform: none; pointer-events: auto; }
.ad-vt-img { display: block; height: 128px; background: #2a201a center/cover no-repeat; position: relative; }
.ad-vt-img:after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(31,23,18,0) 40%, #1f1712 100%); }
.ad-vt.on .ad-vt-img { animation: adVtKb 9s ease-out both; }
@keyframes adVtKb { from { background-size: 118%; } to { background-size: 104%; } }
.ad-vt-in { display: block; padding: 4px 20px 18px; }
.ad-vt-in small { display: block; color: #c9a15f; font-size: 11px; letter-spacing: .08em; text-transform: uppercase; margin-bottom: 4px; }
.ad-vt-in b { display: block; font-size: 19px; font-weight: 600; color: #fff; line-height: 1.35; margin-bottom: 6px; }
.ad-vt-in > span { display: block; font-size: 13px; line-height: 1.7; color: rgba(239,230,216,.75); margin-bottom: 14px; }
.ad-vt-go { display: inline-flex; align-items: center; gap: 10px; background: #c9a15f; color: #1b130e; border: 0; border-radius: 3px; padding: 9px 18px; font-size: 14px; font-weight: 600; cursor: pointer; transition: background .25s, gap .25s; }
.ad-vt-go:hover { background: #dcb675; gap: 14px; }
.ad-vt-x { position: absolute; top: 8px; inset-inline-start: 8px; z-index: 2; width: 30px; height: 30px; border-radius: 50%; border: 0; background: rgba(20,14,10,.55); color: #fff; font-size: 13px; cursor: pointer; backdrop-filter: blur(4px); }
.ad-vt-x:hover { background: rgba(20,14,10,.85); }
@media (max-width: 767px) {
  .ad-vt { width: auto; left: 12px; right: 12px; bottom: calc(68px + env(safe-area-inset-bottom)); display: grid; grid-template-columns: 96px 1fr; }
  .ad-vt-img { height: auto; min-height: 100%; }
  .ad-vt-img:after { background: linear-gradient(90deg, rgba(31,23,18,0) 50%, #1f1712 100%); }
  [dir=rtl] .ad-vt-img:after { background: linear-gradient(270deg, rgba(31,23,18,0) 50%, #1f1712 100%); }
  .ad-vt-in { padding: 12px 14px 12px; }
  .ad-vt-in b { font-size: 16px; margin-bottom: 2px; }
  .ad-vt-in > span { font-size: 12px; margin-bottom: 8px; line-height: 1.6; }
  .ad-vt-go { padding: 7px 14px; font-size: 13px; }
  .ad-vt-x { inset-inline-start: auto; inset-inline-end: 6px; top: 6px; width: 26px; height: 26px; }
}
@media (prefers-reduced-motion: reduce) { .ad-vt { transition: opacity .2s; transform: none; } .ad-vt.on .ad-vt-img { animation: none; } }

/* free-visit form: availability note (under the submit button) */
.ad-vm-note { display: block; margin: 8px 0 2px; padding: 0; text-align: center; color: #8f7d69; font-size: 11.5px; line-height: 1.6; }
.ad-vm-note i { color: #c9a15f; font-size: 10px; margin-inline-end: 5px; }

/* free-visit form: WhatsApp alternative as a quiet outlined button under an "or" divider */
.ad-vm-or { display: flex; align-items: center; gap: 12px; margin: 16px 0 10px; color: #a3927f; font-size: 12px; }
.ad-vm-or:before, .ad-vm-or:after { content: ""; flex: 1; height: 1px; background: rgba(122,92,62,.28); }
.ad-vm-form .ad-vm-wa { display: flex; justify-content: center; align-items: center; gap: 8px; width: 100%; margin: 0 0 22px; padding: 10px 16px; border: 1px solid rgba(37,211,102,.5); border-radius: 3px; background: #fff; color: #1e7d45; font-size: 14px; font-weight: 600; text-decoration: none; transition: background .25s, color .25s, border-color .25s; }
.ad-vm-form .ad-vm-wa i { color: #25d366; font-size: 17px; transition: color .25s; }
.ad-vm-form .ad-vm-wa:hover { background: #25d366; border-color: #25d366; color: #fff; }
.ad-vm-form .ad-vm-wa:hover i { color: #fff; }
@media (max-width: 767px) { .ad-vm-or { margin: 12px 0 8px; } .ad-vm-form .ad-vm-wa { padding: 9px 14px; margin-bottom: calc(14px + env(safe-area-inset-bottom)); } }

/* production review fixes */
@media (max-width: 767px) {
  h3.hs-5 { white-space: normal !important; }
  body.ad-has-pbar footer { padding-bottom: 72px; }
}

/* ===== city landing pages (Riyadh, Jeddah) ===== */
.ad-city-page h2 { margin-bottom: 14px; }
.ad-city-tel { display: inline-flex; align-items: center; gap: 8px; padding: 10px 18px; border: 1px solid rgba(177,149,109,.55); border-radius: 3px; color: var(--heading-font-color); font-weight: 600; text-decoration: none; }
.ad-city-tel:hover { background: var(--primary-color); border-color: var(--primary-color); color: #fff; }
.ad-city-addr { margin-top: 16px; font-size: 14px; opacity: .8; }
.ad-city-addr i { color: #c9a15f; margin-inline-end: 6px; }
.ad-city-svc { display: flex; flex-direction: column; gap: 8px; height: 100%; padding: 22px; background: #fff; border-radius: 4px; color: inherit; text-decoration: none; transition: transform .3s, box-shadow .3s; }
.ad-city-svc i { font-size: 22px; color: #b1956d; }
.ad-city-svc b { font-size: 17px; color: var(--heading-font-color); }
.ad-city-svc span { font-size: 14px; line-height: 1.7; opacity: .8; }
.ad-city-svc:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(40,25,15,.08); }
.ad-city-steps { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(5, 1fr); gap: 12px; }
.ad-city-steps li { padding: 18px; background: #fff; border-radius: 4px; display: flex; flex-direction: column; gap: 6px; }
.ad-city-steps em { font-style: normal; font-weight: 700; color: #b1956d; font-size: 15px; }
.ad-city-steps b { font-size: 16px; color: var(--heading-font-color); }
.ad-city-steps span { font-size: 13.5px; line-height: 1.7; opacity: .8; }
.ad-city-more { font-weight: 600; color: var(--primary-color); text-decoration: none; }
.ad-city-cats { margin-top: 10px; }
.ad-tb-cities a { color: inherit; text-decoration: none; }
.ad-tb-cities a:hover { text-decoration: underline; }
@media (max-width: 991px) { .ad-city-steps { grid-template-columns: 1fr 1fr; } }
@media (max-width: 575px) { .ad-city-steps { grid-template-columns: 1fr; } }

.ad-city-page .d-flex.justify-content-between { flex-wrap: wrap; gap: 8px; }

/* ===== guides ===== */
.ad-guide-card { display: flex; flex-direction: column; gap: 8px; height: 100%; background: #fff; border-radius: 4px; overflow: hidden; color: inherit; text-decoration: none; transition: transform .3s, box-shadow .3s; }
.ad-guide-card img { width: 100%; aspect-ratio: 4/3; object-fit: cover; }
.ad-guide-card b { font-size: 18px; color: var(--heading-font-color); padding: 6px 20px 0; line-height: 1.5; }
.ad-guide-card span { font-size: 14px; line-height: 1.7; opacity: .8; padding: 0 20px; }
.ad-guide-card em { font-style: normal; font-weight: 600; color: var(--primary-color); padding: 4px 20px 20px; margin-top: auto; }
.ad-guide-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(40,25,15,.08); }
.ad-guide h2 { font-size: 24px; margin: 34px 0 12px; }
.ad-guide h2:first-child { margin-top: 0; }
.ad-guide p, .ad-guide li { font-size: 16.5px; line-height: 1.95; }
.ad-guide ul { padding-inline-start: 22px; }
.ad-guide li { margin-bottom: 8px; }
.ad-guide-side { position: sticky; top: 120px; background: #fff; border-radius: 4px; padding: 26px; }
.ad-guide-side > b { display: block; font-size: 18px; color: var(--heading-font-color); margin-bottom: 8px; }
.ad-guide-side p { font-size: 14px; line-height: 1.8; opacity: .85; }
.ad-guide-links, .ad-guide-more { display: flex; flex-direction: column; gap: 8px; margin-top: 20px; padding-top: 16px; border-top: 1px solid rgba(122,92,62,.15); }
.ad-guide-links a, .ad-guide-more a { font-size: 14px; color: var(--primary-color); text-decoration: none; }
.ad-guide-more span { font-size: 13px; opacity: .6; }
@media (max-width: 991px) { .ad-guide-side { position: static; } }

/* no full-screen preloader: it held the first paint until every image had loaded (bad for Core Web Vitals) */
#de-loader { display: none !important; }

/* ---- printable catalogue (/catalog) ---- */
.ad-cat{padding:40px 0 60px}
.ad-cat-head{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap;margin-bottom:28px;border-bottom:1px solid rgba(201,161,95,.4);padding-bottom:20px}
.ad-cat-head h1{font-size:34px;margin:6px 0 10px}
.ad-cat-head p{max-width:640px;margin:0;opacity:.8}
.ad-cat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}
.ad-cat-it{display:block;color:inherit;text-decoration:none;break-inside:avoid;page-break-inside:avoid}
.ad-cat-it img{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:4px;display:block}
.ad-cat-it b{display:block;margin:10px 0 2px;font-size:17px}
.ad-cat-it span{font-size:12px;opacity:.65}
.ad-cat-foot{margin-top:34px;padding-top:16px;border-top:1px solid rgba(201,161,95,.4);font-size:14px}
.ad-cat-foot b{margin-inline-end:10px}
@media (max-width:767px){.ad-cat-grid{grid-template-columns:1fr 1fr;gap:14px}.ad-cat-head h1{font-size:26px}}
@media print{
 @page{size:A4;margin:12mm}
 body.ad-catalog-page header,body.ad-catalog-page footer,body.ad-catalog-page .ad-topbar,body.ad-catalog-page #topbar,body.ad-catalog-page .ad-pbar,body.ad-catalog-page .ad-vt,body.ad-catalog-page #ad-vm,body.ad-catalog-page .ad-cat-print,body.ad-catalog-page .ad-wa-float,body.ad-catalog-page .float-text,body.ad-catalog-page .scrollbar-v,body.ad-catalog-page #back-to-top{display:none!important}
 body.ad-catalog-page{background:#fff!important;color:#1f1712!important}
 body.ad-catalog-page #wrapper,body.ad-catalog-page #content{padding:0!important;margin:0!important}
 .ad-cat{padding:0}.ad-cat-grid{grid-template-columns:repeat(3,1fr);gap:10mm}
 .ad-cat-it img{aspect-ratio:4/3}
 .ad-cat-it span{opacity:1;color:#6b5a48}
}

.ad-cat-head h2{font-size:30px;margin:0 0 10px}
@media print{body.ad-catalog-page section.ad-sub{display:none!important}body.ad-catalog-page .ad-cat{padding-top:0!important}}

/* blog + city list */
.ad-blog-meta{display:block;font-size:12.5px;color:#9a8670;margin:10px 0 4px}
.ad-guide .ad-blog-meta{margin:0 0 18px;font-size:13.5px}
.ad-city-list a.on{background:#c9a15f;color:#1f1712;border-color:#c9a15f}

/* service pages: item lines, related topic, cities */
.ad-svc-ld{margin:8px 0 0;font-size:14px;line-height:1.7;opacity:.75}
.ad-svc-topic{display:flex;flex-direction:column;gap:4px;padding:20px 24px;border:1px solid rgba(201,161,95,.45);border-radius:6px;background:#fff;color:inherit;text-decoration:none;max-width:720px;margin-bottom:24px}
.ad-svc-topic small{color:#9a8670}.ad-svc-topic b{font-size:19px}.ad-svc-topic span{color:#8a6a3a;font-weight:700}
.ad-svc-topic:hover{border-color:#c9a15f}
.ad-svc-cities{font-size:14.5px;opacity:.85}.ad-svc-cities a{color:inherit;text-decoration:underline;text-underline-offset:3px}
.ad-num + div{flex:1;min-width:0;white-space:normal}
.ad-num + div h3{white-space:normal!important}
.ad-svc-ld{white-space:normal}

/* FAQ accordions: clearer questions and answers */
.ad-faq .accordion-section-title{font-size:16.5px;font-weight:700;line-height:1.6;padding:16px 0 16px 28px;border-bottom:1px solid rgba(31,23,18,.12);cursor:pointer}
.ad-faq .accordion-section-title.active{color:#8a6a3a}
.ad-faq .accordion-section-content{font-size:15px;line-height:1.9;padding:12px 0 18px;opacity:.85}
.ad-post-faq{margin-top:48px;padding-top:32px;border-top:1px solid rgba(201,161,95,.45)}
.ad-post-faq h2{margin-bottom:12px}
@media (max-width:767px){.ad-faq .accordion-section-title{font-size:15.5px}}

.ad-faq-more{display:inline-block;margin-inline-start:6px;color:#8a6a3a;font-weight:700;white-space:nowrap;text-decoration:none}
.ad-faq-more:hover{text-decoration:underline}
.ad-guide h2[id^="sec-"]{scroll-margin-top:110px}

/* ---- clients story (عملاؤنا): three cards ---- */
.ad-clients{padding:90px 0}
.ad-clients-head{max-width:720px;margin-bottom:40px}
.ad-clients-head h2{margin:6px 0 12px}
.ad-clients-head p{opacity:.8;margin:0}
.ad-cl-grid{display:grid;grid-template-columns:1fr 1.1fr 1.15fr;gap:22px;align-items:stretch}
.ad-cl{position:relative;border-radius:6px;padding:34px 30px 30px;overflow:hidden;display:flex;flex-direction:column;min-height:520px}
.ad-cl h3{font-size:22px;line-height:1.5;margin:10px 0 12px;color:inherit}
.ad-cl p{font-size:15px;line-height:1.9;margin:0 0 18px;opacity:.85}
.ad-cl-no{position:absolute;top:22px;inset-inline-end:26px;font-size:13px;letter-spacing:.2em;opacity:.55}
.ad-cl-k{font-size:13px;letter-spacing:.06em;color:#c9a15f;font-weight:700}
/* 01 generations */
.ad-cl-gen{background:#f6efe4;color:#1f1712;border:1px solid rgba(201,161,95,.4)}
.ad-cl-gen .ad-cl-k{color:#8a6a3a}
.ad-cl-year{font-size:92px;line-height:1;font-weight:800;color:transparent;-webkit-text-stroke:1.5px #c9a15f;margin:14px 0 4px;letter-spacing:.02em}
.ad-cl-line{margin-top:auto;display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:700;color:#8a6a3a}
.ad-cl-line i{flex:1;height:1px;background:linear-gradient(90deg,#c9a15f,rgba(201,161,95,.2))}
.ad-cl-line span:last-child{background:#1f1712;color:#f6efe4;padding:4px 10px;border-radius:20px}
/* 02 sovereign */
.ad-cl-sec{background:#1f1712;color:#f3ebe0;background-image:repeating-linear-gradient(135deg,rgba(201,161,95,.06) 0 1px,transparent 1px 14px)}
.ad-cl-sec ul{list-style:none;padding:0;margin:0 0 18px;display:grid;gap:10px}
.ad-cl-sec li{padding:10px 14px;border:1px solid rgba(201,161,95,.35);border-radius:4px;font-size:14.5px;background:rgba(201,161,95,.06)}
.ad-cl-sec small{margin-top:auto;font-size:12.5px;opacity:.65;line-height:1.7}
.ad-cl-stamp{position:absolute;top:58px;inset-inline-end:22px;transform:rotate(-12deg);border:2px solid #c9a15f;color:#c9a15f;font-weight:800;font-size:15px;padding:4px 14px;border-radius:4px;letter-spacing:.15em;opacity:.8}
/* 03 villas */
.ad-cl-villa{background-size:cover;background-position:center;color:#fff;padding:0}
.ad-cl-villa:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(20,14,10,.25) 0%,rgba(20,14,10,.78) 45%,rgba(20,14,10,.94) 100%)}
.ad-cl-villa .ad-cl-no{z-index:2}
.ad-cl-in{position:relative;z-index:1;margin-top:auto;padding:34px 30px 30px;display:flex;flex-direction:column}
.ad-cl-tags{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px}
.ad-cl-tags span{font-size:12.5px;padding:5px 12px;border:1px solid rgba(255,255,255,.35);border-radius:20px;background:rgba(255,255,255,.06)}
.ad-cl-act{display:flex;flex-wrap:wrap;align-items:center;gap:14px}
.ad-cl-btn{background:#c9a15f;color:#1f1712;font-weight:700;padding:10px 18px;border-radius:4px;text-decoration:none}
.ad-cl-btn:hover{background:#d8b577;color:#1f1712}
.ad-cl-link{color:#fff;text-decoration:underline;text-underline-offset:4px}
@media (max-width:991px){.ad-cl-grid{grid-template-columns:1fr}.ad-cl{min-height:0}.ad-cl-villa{min-height:520px}.ad-clients{padding:60px 0}}
@media (max-width:575px){.ad-cl{padding:28px 22px 24px}.ad-cl-in{padding:28px 22px 24px}.ad-cl-year{font-size:72px}.ad-cl h3{font-size:19px}}
.ad-cl-stamp{top:auto;bottom:24px;inset-inline-end:24px;transform:rotate(-8deg)}
.ad-cl-sec small{padding-inline-end:96px}

/* ---- home art direction: "ماذا نصنع لك" mosaic + section rhythm ---- */
.ad-make-head{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,6fr);gap:24px 56px;align-items:end;margin-bottom:36px}
.ad-make-head h2{margin:6px 0 0}
.ad-make-head p{margin:0;opacity:.8;line-height:1.9;max-width:560px}
.ad-make-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:290px;gap:14px}
.ad-make-grid .ad-mk:first-child{grid-row:span 2}
.ad-make-grid .ad-mk:last-child{grid-column:span 2}
.ad-mk{position:relative;display:block;overflow:hidden;border-radius:4px;background:#1f1712;color:#fff;text-decoration:none}
.ad-mk img{width:100%;height:100%;object-fit:cover;filter:saturate(.9) contrast(1.04) brightness(.96);transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.ad-mk:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(31,23,18,0) 45%,rgba(31,23,18,.85) 100%);pointer-events:none}
.ad-mk:hover img{transform:scale(1.05)}
.ad-mk-no{position:absolute;top:16px;inset-inline-start:18px;z-index:2;font-size:12px;letter-spacing:.2em;color:#c9a15f}
.ad-mk-tx{position:absolute;inset-inline:20px;bottom:18px;z-index:2;display:flex;flex-direction:column;gap:4px}
.ad-mk-tx b{font-size:22px;font-weight:600;line-height:1.35;color:#fff}
.ad-mk-tx small{font-size:12.5px;color:#e8d6b8;letter-spacing:.02em}
.ad-mk-go{position:absolute;bottom:20px;inset-inline-end:20px;z-index:2;font-style:normal;color:#c9a15f;opacity:0;transform:translateX(6px);transition:.4s}
[dir=rtl] .ad-mk-go{transform:translateX(-6px)}
.ad-mk:hover .ad-mk-go{opacity:1;transform:none}
.ad-make-grid .ad-mk:first-child .ad-mk-tx b{font-size:28px}
.ad-make-foot{margin-top:24px;text-align:end}
.ad-make-all{color:#8a6a3a;font-weight:700;text-decoration:none;border-bottom:1px solid rgba(138,106,58,.4);padding-bottom:3px}
.ad-make-all:hover{color:#1f1712;border-color:#1f1712}
@media (max-width:991px){.ad-make-head{grid-template-columns:1fr}.ad-make-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:250px}}
@media (max-width:575px){.ad-make-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:12px;margin-inline:-16px;padding-inline:16px;scrollbar-width:none}.ad-make-grid::-webkit-scrollbar{display:none}.ad-mk{flex:0 0 74%;height:340px;scroll-snap-align:start}.ad-make-grid .ad-mk:last-child{grid-column:auto}.ad-make-grid .ad-mk:first-child .ad-mk-tx b{font-size:22px}}

/* section rhythm on the home page: one consistent gap, no doubled gaps between same-colour sections */
.ad-home section:not(#section-intro):not(.pt-0):not(.no-top){padding-top:80px}
.ad-home section:not(#section-intro):not(.pb-0):not(.no-bottom){padding-bottom:80px}
.ad-home .ad-dvr + .ad-aud,.ad-home .ad-make + .ad-clients{padding-top:0}
.ad-home #section-intro + section h2{font-size:clamp(30px,2.8vw,40px);line-height:1.35}
.ad-home .ad-aud img{height:480px;object-fit:cover}
@media (max-width:767px){.ad-home section:not(#section-intro):not(.pt-0):not(.no-top){padding-top:56px}.ad-home section:not(#section-intro):not(.pb-0):not(.no-bottom){padding-bottom:56px}.ad-home .ad-dvr + .ad-aud,.ad-home .ad-make + .ad-clients{padding-top:0}.ad-home .ad-aud img{height:300px}}

.ad-home .ad-dvr + .ad-aud,.ad-home .ad-make + .ad-clients{padding-top:0!important}
.ad-home .ad-aud img{height:480px!important;object-fit:cover}
@media (max-width:767px){.ad-home .ad-aud img{height:300px!important}}

.ad-home .ad-aud-media{height:480px!important;min-height:0!important;aspect-ratio:auto!important}
.ad-home section .container > *:last-child,.ad-home section .container > .row:last-child > [class*=col]:last-child > *:last-child{margin-bottom:0!important}
@media (max-width:767px){.ad-home .ad-aud-media{height:300px!important}}

/* hero: steady contrast behind the headline on light photos */
.ad-home #section-intro .sw-overlay{opacity:1!important;background:linear-gradient(270deg,rgba(20,13,10,.78) 0%,rgba(20,13,10,.5) 45%,rgba(20,13,10,.18) 100%)!important}
[dir=ltr] .ad-home #section-intro .sw-overlay{background:linear-gradient(90deg,rgba(20,13,10,.78) 0%,rgba(20,13,10,.5) 45%,rgba(20,13,10,.18) 100%)!important}
@media (max-width:767px){.ad-home #section-intro .sw-overlay{background:linear-gradient(0deg,rgba(20,13,10,.82) 0%,rgba(20,13,10,.45) 55%,rgba(20,13,10,.25) 100%)!important}}

@media (min-width:992px){.ad-stats5>[class*=col-]{flex:1 1 0;max-width:none;width:auto}}
@media (min-width:768px) and (max-width:991px){.ad-stats5>[class*=col-]{flex:0 0 33.333%;max-width:33.333%}}

/* chairman signature under the promises */
.ad-chair{display:inline-flex;align-items:center;gap:14px;margin-top:22px;padding:10px 18px 10px 10px;border:1px solid rgba(201,161,95,.45);border-radius:60px;background:rgba(20,13,10,.45);backdrop-filter:blur(4px)}
[dir=rtl] .ad-chair{padding:10px 10px 10px 18px}
.ad-chair img{width:64px;height:64px;border-radius:50%;object-fit:cover;object-position:center 20%;border:2px solid #c9a15f}
.ad-chair b{display:block;color:#fff;font-size:16px}
.ad-chair span{display:block;color:#e2cfae;font-size:12.5px}

/* chairman: fixed portrait and name beside the rotating promises */
.ad-chair{display:flex!important;flex-direction:column;align-items:flex-start;gap:4px;margin-top:22px;padding:0!important;border:0!important;background:none!important;backdrop-filter:none!important;border-radius:0!important}
.ad-chair img{width:200px!important;height:200px!important;border-radius:50%;object-fit:cover;object-position:center 22%;border:3px solid #c9a15f;box-shadow:0 18px 40px rgba(0,0,0,.35);margin-bottom:14px}
.ad-chair b{font-size:22px!important;color:#fff}
.ad-chair span{font-size:14px!important;color:#e2cfae;letter-spacing:.02em}
@media (max-width:767px){.ad-chair{flex-direction:row;align-items:center;gap:14px}.ad-chair img{width:84px!important;height:84px!important;margin:0}.ad-chair b{font-size:18px!important}}

/* promise section: clearer text over the photo */
.ad-promise .sw-overlay{opacity:1!important;background:linear-gradient(270deg,rgba(18,12,9,.86) 0%,rgba(18,12,9,.8) 55%,rgba(18,12,9,.62) 100%)!important}
[dir=ltr] .ad-promise .sw-overlay{background:linear-gradient(90deg,rgba(18,12,9,.86) 0%,rgba(18,12,9,.8) 55%,rgba(18,12,9,.62) 100%)!important}
.ad-promise .ad-quotes h2{font-size:clamp(24px,2.6vw,36px);line-height:1.6;color:#fff;text-shadow:0 2px 14px rgba(0,0,0,.45)}
.ad-promise .ad-q-by{color:#e2cfae!important;opacity:1!important;font-size:14px}
.ad-promise .ad-chair b{font-size:24px!important}.ad-promise .ad-chair span{font-size:15px!important}

.ad-promise .ad-quotes .owl-item:not(.active),.ad-promise .ad-quotes .owl-animated-out{opacity:0!important;visibility:hidden!important}
.ad-promise .ad-quotes .owl-item.active{animation:adQin .7s ease both}
@keyframes adQin{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}

/* chairman portrait v2: larger, lifted, balanced with the quote; stacked on mobile */
.ad-promise .ad-chair{margin-top:18px}
.ad-promise .ad-chair img{width:300px!important;height:300px!important;object-position:center 30%;margin:0 0 18px!important}
.ad-promise .col-md-4 .subtitle{margin-bottom:0}
.ad-promise .ad-chair b{font-size:25px!important;line-height:1.3}
.ad-promise .ad-chair span{font-size:15px!important;margin-top:2px}
@media (min-width:768px) and (max-width:1199px){.ad-promise .ad-chair img{width:230px!important;height:230px!important}}
@media (max-width:767px){.ad-promise .ad-chair{flex-direction:column!important;align-items:center!important;text-align:center;gap:2px!important}.ad-promise .ad-chair img{width:180px!important;height:180px!important;margin:0 0 12px!important}.ad-promise .col-md-4{text-align:center}.ad-promise .ad-chair b{font-size:21px!important}}

/* chairman portrait: medium size */
.ad-promise .ad-chair img{width:230px!important;height:230px!important;margin:0 0 16px!important}
@media (min-width:768px) and (max-width:1199px){.ad-promise .ad-chair img{width:190px!important;height:190px!important}}
@media (max-width:767px){.ad-promise .ad-chair img{width:140px!important;height:140px!important;margin:0 0 10px!important}}

.ad-promise .ad-chair img{width:200px!important;height:200px!important}
@media (min-width:768px) and (max-width:1199px){.ad-promise .ad-chair img{width:180px!important;height:180px!important}}
@media (max-width:767px){.ad-promise .ad-chair img{width:140px!important;height:140px!important}}

/* nav: one line (EN labels are longer) */
@media (min-width:993px){#mainmenu{display:flex!important;flex-wrap:nowrap}#mainmenu>li>a{white-space:nowrap}}
@media (min-width:1200px) and (max-width:1499px){#mainmenu>li{margin-right:14px!important}#mainmenu>li:last-child{margin-right:0!important}#mainmenu>li>a{font-size:14px!important}}
@media (min-width:961px) and (max-width:1199px){html[lang="en"] #mainmenu>li:first-child{display:none!important}#mainmenu>li{margin-right:10px!important}#mainmenu>li:last-child{margin-right:0!important}#mainmenu>li>a{font-size:12.5px!important}header .ad-visit-btn{padding:8px 12px!important;font-size:11.5px!important;white-space:nowrap;line-height:1.4!important}header .container{max-width:100%!important;padding-left:14px;padding-right:14px}header #logo img{width:140px!important;height:auto!important}}
/* cart: editable hint, details textarea, empty state, order flow */
.ad-cart-hint{font-size:14px;line-height:1.8;background:rgba(140,98,57,.08);border-inline-start:3px solid var(--secondary-color);padding:10px 14px;margin:0 0 18px}
.ad-cart-hint i{color:var(--secondary-color);margin-inline-end:4px}
textarea.ad-ci-note{width:100%;min-height:58px;resize:vertical;font-size:14px;line-height:1.6;padding:8px 12px}
.ad-empty-box{text-align:center;padding:34px 20px;border:1px dashed rgba(140,98,57,.4)}
.ad-empty-box>i{font-size:34px;color:var(--secondary-color)}
.ad-empty-box h3{font-size:22px;margin:12px 0 6px}
.ad-empty-box p{max-width:460px;margin:0 auto 20px;font-size:14px;line-height:1.8}
.ad-empty-links{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;text-align:start}
.ad-empty-links a{display:block;padding:14px 16px;background:rgba(140,98,57,.08);text-decoration:none;color:inherit;transition:background .2s}
.ad-empty-links a:hover{background:rgba(140,98,57,.18)}
.ad-empty-links b{display:block;color:var(--secondary-color)}
.ad-empty-links span{font-size:13px;opacity:.8}
.ad-flow-sec{padding-top:0!important}
.ad-flow{list-style:none;margin:30px 0 0;padding:0;display:grid;grid-template-columns:repeat(7,1fr);counter-reset:fl}
.ad-flow li{position:relative;text-align:center;padding:0 8px;counter-increment:fl}
.ad-flow li i{width:62px;height:62px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center;background:var(--secondary-color);color:#fff;font-size:21px;position:relative;z-index:1}
.ad-flow li::before{content:"";position:absolute;top:31px;inset-inline-start:50%;width:100%;height:2px;background:rgba(140,98,57,.35)}
.ad-flow li:last-child::before{display:none}
.ad-flow li b{display:block;margin-top:14px;font-size:15px}
.ad-flow li b::before{content:counter(fl) ". ";color:var(--secondary-color)}
.ad-flow li span{display:block;font-size:13px;line-height:1.6;opacity:.8;margin-top:4px}
@media (max-width:991px){.ad-flow{grid-template-columns:1fr;gap:20px}.ad-flow li{display:grid;grid-template-columns:52px 1fr;column-gap:14px;text-align:start;padding:0}.ad-flow li i{width:52px;height:52px;font-size:18px;grid-row:span 2}.ad-flow li b{margin-top:2px}.ad-flow li::before{top:52px;inset-inline-start:25px;width:2px;height:calc(100% - 32px)}}
@media (max-width:575px){.ad-empty-links{grid-template-columns:1fr}}
/* contact page */
.ad-partner-note{border-inline-start:3px solid var(--secondary-color);padding:4px 16px;margin-bottom:22px}
.ad-partner-note p{margin:6px 0 0;font-size:15px;line-height:1.8}
.ad-contact-alt{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px;font-size:14px}
.ad-contact-alt a{color:var(--secondary-color);text-decoration:none}
.ad-contact-alt a:hover{text-decoration:underline}

/* header: button on one line; hide "Home" (logo links home) below 1500px */
@media (min-width:993px){header .ad-visit-btn{white-space:nowrap}}
@media (min-width:1200px) and (max-width:1499px){html[lang="en"] #mainmenu>li:first-child{display:none!important}header .ad-visit-btn{padding-left:18px!important;padding-right:18px!important;font-size:13px!important}}

/* header: li never shrink (prevents submenu arrows wrapping); compact up to 1280 */
#mainmenu>li{flex-shrink:0}
@media (min-width:961px) and (max-width:1279.98px){html[lang="en"] #mainmenu>li:first-child{display:none!important}#mainmenu>li{margin-right:10px!important}#mainmenu>li:last-child{margin-right:0!important}#mainmenu>li>a{font-size:12.5px!important}header .ad-visit-btn{padding:8px 12px!important;font-size:11.5px!important}header #logo img{width:140px!important;height:auto!important}}

.ad-contact-alt{align-items:center}.ad-contact-alt .btn-main{color:#fff}.ad-contact-alt .btn-main:hover{text-decoration:none}
.ad-contact-alt .ad-btn-line{display:inline-flex;align-items:center;gap:8px;border:1px solid var(--secondary-color);padding:10px 20px;font-weight:600;text-decoration:none}.ad-contact-alt .ad-btn-line:hover{background:var(--secondary-color);color:#fff;text-decoration:none}
@media (min-width:1200px){.ad-stats5 .ad-nw{white-space:nowrap}}
.ad-partner-band{background:var(--bg-dark-1,#2b1d14);color:#f3ece4}
.ad-partner-band h2{color:#fff}
.ad-partner-band .subtitle{color:var(--secondary-color)}
.ad-partner-band p{color:rgba(243,236,228,.85);line-height:1.9}
.ad-pb-act{display:flex;flex-direction:column;gap:14px;align-items:stretch}
.ad-pb-act .btn-main{text-align:center}
.ad-btn-line{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid var(--secondary-color);padding:12px 22px;font-weight:600;text-decoration:none;color:var(--secondary-color);transition:background .2s,color .2s}
.ad-btn-line:hover{background:var(--secondary-color);color:#fff;text-decoration:none}
.ad-partner-band .ad-btn-line{color:#f3ece4}
.owl-4-cols-center .owl-stage{will-change:transform}.owl-4-cols-center .owl-item img{backface-visibility:hidden;transform:translateZ(0)}

/* carousel edge cue */
.owl-4-cols-center{position:relative}
.owl-4-cols-center::before,.owl-4-cols-center::after{content:"";position:absolute;top:0;bottom:0;width:90px;z-index:3;pointer-events:none;opacity:0;transition:opacity .3s}
.owl-4-cols-center::before{left:0;background:linear-gradient(90deg,rgba(43,29,20,.35),transparent)}
.owl-4-cols-center::after{right:0;background:linear-gradient(270deg,rgba(43,29,20,.35),transparent)}
.owl-4-cols-center.ad-edge-l::before,.owl-4-cols-center.ad-edge-r::after{opacity:1}
/* album chips for types without photos yet */
.ad-cat-chips a.soon{opacity:.6;border-style:dashed}
.ad-cat-chips a.soon small{font-size:11px}
.ad-alb-soon{text-align:center;padding:48px 20px;margin:10px 0 30px;border:1px dashed rgba(140,98,57,.45)}
.ad-alb-soon>i{font-size:38px;color:var(--secondary-color)}
.ad-alb-soon h3{margin:14px 0 8px}
.ad-alb-soon p{max-width:560px;margin:0 auto 20px;line-height:1.9}
/* projects page intro */
.ad-works-intro{padding-bottom:0!important}
.ad-works-intro p{font-size:16px;line-height:1.95;margin-bottom:16px}
.ad-wi-pts{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:10px 26px}
.ad-wi-pts li{font-weight:600;font-size:15px}
.ad-wi-pts i{color:var(--secondary-color);margin-inline-end:6px}
@media (min-width:993px){#mainmenu>li>ul{min-width:280px;width:auto!important}#mainmenu>li>ul>li>a{white-space:nowrap}}

/* charter + FAQ show immediately; other reveal animations kept short */

.wow{animation-duration:.6s!important}
.ad-cta-more{display:flex;flex-wrap:wrap;align-items:center;gap:10px 22px;margin-top:28px;padding-top:20px;border-top:1px solid rgba(255,255,255,.18);font-size:14px}
.ad-cta-more span{opacity:.75}
.ad-cta-more a{color:#fff;text-decoration:none;display:inline-flex;align-items:center;gap:8px;padding:7px 14px;border:1px solid rgba(255,255,255,.35);border-radius:40px;transition:background .2s,border-color .2s}
.ad-cta-more a i{color:var(--secondary-color)}
.ad-cta-more a:hover{background:rgba(255,255,255,.12);border-color:#fff}
@media (max-width:575px){.ad-cta-more{gap:10px}.ad-cta-more span{width:100%}}
.ad-partner-band{margin:20px 0 70px}

/* charter + FAQ: own quick reveal (not WOW) so nothing waits half-way down the page */
.ad-pledge .wow,.ad-faq .wow{visibility:visible!important;animation:none!important}
html.ad-io .ad-pledge .wow,html.ad-io .ad-faq .wow{opacity:0;transform:translateY(18px);transition:opacity .45s ease,transform .45s cubic-bezier(.22,.61,.36,1)}
html.ad-io .ad-pledge .wow.ad-in,html.ad-io .ad-faq .wow.ad-in{opacity:1;transform:none}

/* home: next-step strip under "who we serve" — editorial row, square, in the site's line language */
.ad-aud-cta{display:grid;grid-template-columns:1.15fr repeat(4,1fr);margin-top:60px;border-top:1px solid rgba(140,98,57,.28);border-bottom:1px solid rgba(140,98,57,.28)}
.ad-aud-cta-t{padding-block:26px;padding-inline-end:26px;align-self:center}
.ad-aud-cta-t .subtitle{margin-bottom:6px}
.ad-aud-cta-t p{margin:0;font-size:14px;line-height:1.8;opacity:.75}
.ad-aud-cta-i{position:relative;display:flex;flex-direction:column;gap:4px;padding:26px 24px 30px;border-inline-start:1px solid rgba(140,98,57,.2);color:inherit;text-decoration:none;transition:background .3s,color .3s}
.ad-aud-cta-i i{font-size:20px;color:var(--secondary-color);margin-bottom:10px;transition:color .3s}
.ad-aud-cta-i b{font-size:16px;font-weight:600;line-height:1.4}
.ad-aud-cta-i small{font-size:13px;opacity:.7;line-height:1.6}
.ad-aud-cta-i em{position:absolute;bottom:14px;inset-inline-end:20px;font-style:normal;color:var(--secondary-color);opacity:0;transform:translateX(0);transition:opacity .3s,transform .3s}
.ad-aud-cta-i:hover{background:rgba(140,98,57,.07);color:inherit}
.ad-aud-cta-i:hover em{opacity:1;transform:translateX(-6px)}
html[dir="ltr"] .ad-aud-cta-i:hover em{transform:translateX(6px)}
.ad-aud-cta-i.on{background:var(--secondary-color);color:#fff}
.ad-aud-cta-i.on i,.ad-aud-cta-i.on em{color:#fff}
.ad-aud-cta-i.on em{opacity:1}
.ad-aud-cta-i.on:hover{background:var(--secondary-color);color:#fff;filter:brightness(1.07)}
@media (max-width:1199px){.ad-aud-cta{grid-template-columns:repeat(2,1fr)}.ad-aud-cta-t{grid-column:1/-1;padding:22px 0 12px}.ad-aud-cta-i{border-top:1px solid rgba(140,98,57,.2)}.ad-aud-cta-i:nth-child(2n){border-inline-start:0}}
@media (max-width:575px){.ad-aud-cta-i{padding:18px 16px 22px}.ad-aud-cta-i b{font-size:14px}.ad-aud-cta-i small{font-size:12px}}
/* side menu (hamburger panel): quick actions */
.ad-side-cta{display:grid;gap:10px}
.ad-side-cta a{display:flex;align-items:center;gap:12px;padding:13px 16px;border:1px solid rgba(255,255,255,.18);color:#fff;text-decoration:none;font-size:15px;transition:background .25s,border-color .25s}
.ad-side-cta a i{width:18px;text-align:center;color:var(--secondary-color)}
.ad-side-cta a span{margin-inline-start:auto;opacity:.5}
.ad-side-cta a:hover{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.4);color:#fff}
.ad-side-cta a.on{background:var(--secondary-color);border-color:var(--secondary-color)}
.ad-side-cta a.on i{color:#fff}

/* service page: action card (replaces the plain article card) */
.ad-svc-act{background:#fff;border:1px solid rgba(140,98,57,.18);border-inline-start:3px solid var(--secondary-color);padding:24px 26px;box-shadow:0 10px 30px rgba(43,29,20,.06)}
.ad-svc-act-t small{display:block;color:var(--secondary-color);font-weight:600;font-size:13px;margin-bottom:4px}
.ad-svc-act-t b{display:block;font-size:21px;font-weight:600;line-height:1.5}
.ad-svc-act-t span{display:block;font-size:14px;opacity:.75;margin-top:4px}
.ad-svc-act-b{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}
.ad-svc-act-b .btn-main,.ad-svc-act-b .ad-btn-line{flex:1 1 200px;justify-content:center;text-align:center}
.ad-svc-act-g{display:inline-block;margin-top:14px;font-size:13px;color:var(--secondary-color);text-decoration:none;opacity:.85}
.ad-svc-act-g:hover{opacity:1;text-decoration:underline}

/* cart: what happens next */
.ad-cart-next{border:1px solid rgba(140,98,57,.25);border-inline-start:3px solid var(--secondary-color);background:rgba(255,255,255,.55);padding:14px 16px;margin:4px 0 16px;font-size:13.5px;line-height:1.75}
.ad-cart-next b{display:block;font-size:14.5px;margin-bottom:4px}
.ad-cart-next ol{margin:0 0 6px;padding-inline-start:18px}
.ad-cart-next a{color:var(--secondary-color);font-weight:600;text-decoration:none}

/* home: "next step" — expanding image panels */
.ad-nx{margin-top:64px}
.ad-nx-head{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:6px 30px;margin-bottom:22px}
.ad-nx-head .subtitle{margin:0;font-size:22px}
.ad-nx-head p{margin:0;opacity:.75;font-size:15px}
.ad-nx-row{display:flex;gap:10px;height:360px}
.ad-nx-p{position:relative;flex:1 1 0;min-width:0;overflow:hidden;color:#fff;text-decoration:none;background:#2b1d14 var(--bg) center/cover no-repeat;transition:flex-grow .7s cubic-bezier(.22,.61,.36,1)}
.ad-nx-p::before{content:"";position:absolute;inset:0;background:linear-gradient(to top,rgba(30,20,13,.92) 0%,rgba(30,20,13,.55) 45%,rgba(30,20,13,.25) 100%);transition:background .5s}
.ad-nx-p::after{content:"";position:absolute;inset-inline-start:0;bottom:0;height:3px;width:0;background:var(--secondary-color);transition:width .7s cubic-bezier(.22,.61,.36,1)}
.ad-nx-p.on{flex-grow:2.6;color:#fff}
.ad-nx-p.on::after{width:100%}
.ad-nx-p:hover{color:#fff}
.ad-nx-n{position:absolute;top:18px;inset-inline-start:20px;font-size:13px;letter-spacing:.1em;opacity:.7}
.ad-nx-c{position:absolute;inset-inline:22px;bottom:22px;display:flex;flex-direction:column;gap:6px}
.ad-nx-c i{font-size:22px;color:var(--secondary-color);margin-bottom:4px}
.ad-nx-c b{font-size:18px;font-weight:600;line-height:1.35;white-space:nowrap}
.ad-nx-c small,.ad-nx-c em{max-height:0;opacity:0;overflow:hidden;transform:translateY(8px);transition:opacity .45s .15s,transform .45s .15s,max-height .5s}
.ad-nx-c small{font-size:14px;line-height:1.75;max-width:440px;color:rgba(255,255,255,.85)}
.ad-nx-c em{font-style:normal;font-weight:600;font-size:14px;color:#fff;display:inline-block;align-self:flex-start;border-bottom:1px solid var(--secondary-color);padding-bottom:2px}
.ad-nx-p.on .ad-nx-c small,.ad-nx-p.on .ad-nx-c em{max-height:120px;opacity:1;transform:none}
.ad-nx-p.on .ad-nx-c b{white-space:normal}
@media (max-width:991px){.ad-nx-row{flex-direction:column;height:auto}.ad-nx-p{flex:none;height:96px;transition:height .6s cubic-bezier(.22,.61,.36,1)}.ad-nx-p.on{height:250px}.ad-nx-c b{white-space:normal;font-size:16px}}

/* next-step panels: lighter footprint */
.ad-nx{margin-top:48px}
.ad-nx-head{margin-bottom:16px}
.ad-nx-head .subtitle{font-size:19px}
.ad-nx-head p{font-size:14px}
.ad-nx-row{height:260px;gap:8px}
.ad-nx-p.on{flex-grow:2.2}
.ad-nx-n{top:14px;inset-inline-start:16px;font-size:12px}
.ad-nx-c{inset-inline:18px;bottom:16px;gap:4px}
.ad-nx-c i{font-size:18px;margin-bottom:2px}
.ad-nx-c b{font-size:16px}
.ad-nx-c small{font-size:13px;line-height:1.65}
.ad-nx-c em{font-size:13px}
@media (max-width:991px){.ad-nx-row{height:auto}.ad-nx-p{height:76px}.ad-nx-p.on{height:200px}.ad-nx-c b{font-size:15px}}

/* favourites */
.ad-fav-h{margin-inline-end:14px}
.ad-fav-btn{display:inline-flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid rgba(255,255,255,.35);background:transparent;color:inherit;font-size:20px;transition:color .2s,border-color .2s,transform .2s;vertical-align:middle}
.ad-fav-btn:hover{border-color:var(--secondary-color)}
.ad-fav-btn.on,.adv-fav.on{color:#e0556b}
.ad-fav-btn.on{border-color:#e0556b}
.ad-fav-btn.on i,.adv-fav.on i{animation:adFavPop .35s ease}
@keyframes adFavPop{50%{transform:scale(1.3)}}
.adv-fav.on{border-color:#e0556b}
.ad-favs-tools{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:26px}
.ad-favs-clear{background:none;border:0;color:inherit;opacity:.6;text-decoration:underline;margin-inline-start:auto}
.ad-favs{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:18px}
.ad-favs>.ad-empty-box,.ad-favs>p{grid-column:1/-1}
.ad-fav-card{margin:0;background:#fff;border:1px solid rgba(140,98,57,.15);display:flex;flex-direction:column}
.ad-fav-card img{width:100%;aspect-ratio:4/5;object-fit:cover;display:block}
.ad-fav-card figcaption{padding:12px 14px;display:flex;flex-direction:column;gap:4px;flex:1}
.ad-fav-card b{font-size:15px;line-height:1.5}
.ad-fav-card small{opacity:.6;font-size:12px}
.ad-fav-act{display:flex;gap:8px;margin-top:auto;padding-top:8px}
.ad-fav-act button{border:1px solid rgba(140,98,57,.35);background:transparent;padding:7px 10px;font-size:13px;color:inherit}
.ad-fav-act button[data-a=cart]{flex:1;background:var(--secondary-color);border-color:var(--secondary-color);color:#fff}
.ad-fav-act button:disabled{opacity:.7}
.ad-favs-note{margin-top:22px;font-size:13px;opacity:.6}
@media (max-width:575px){.ad-favs{grid-template-columns:repeat(2,1fr);gap:10px}.ad-fav-card figcaption{padding:10px}.ad-fav-card b{font-size:13px}}
