/* Omraa v2 — homepage. Desktop order = DOM order; mobile order via --m. */
.oh { display: flex; flex-direction: column; padding-bottom: 8px; }
.oh-mob, .oh-mob-flex, .oh-mob-block { display: none !important; }
.oh h2, .oh h3 { color: var(--o-ink); font-family: var(--o-font); }

/* Section heads */
.oh-head { margin-bottom: 22px; }
.oh-head h2, .oh-head__title { display: flex; align-items: center; gap: 10px; margin: 0; font-size: 28px; font-weight: 800; line-height: 1.3; color: var(--o-ink); }
.oh-head p { margin: 6px 0 0; color: var(--o-muted); font-size: 15px; }
.oh-head__ico { width: 30px; height: 30px; }
.oh-head__ico.is-gold { color: var(--o-gold); }
.oh-head--row { display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; }
.oh-head--center { text-align: center; }
.oh-head--center h2 { justify-content: center; }
.oh-link { display: inline-flex; align-items: center; gap: 6px; color: var(--o-green); font-weight: 800; font-size: 14px; text-decoration: none; white-space: nowrap; padding-bottom: 4px; }
.oh-link:hover { color: var(--o-gold-text); }
.oh-link .oi { width: 18px; height: 18px; order: 2; }

/* Hero */
.oh-hero { position: relative; min-height: 500px; display: flex; align-items: flex-start; overflow: hidden; background: #E9EEF0; }
.oh-hero__media { position: absolute; inset: 0; }
/* Copy sits on the right (RTL start); the photo is mirrored and shifted so the Kaaba stays on the left. */
.oh-hero__media img { position: absolute; top: 0; right: 0; left: auto; width: 130%; max-width: none; height: 100%; object-fit: cover; object-position: 0 58%; transform: scaleX(-1); }
.oh-hero::after { content: ""; position: absolute; inset: 0; background: linear-gradient(270deg, rgba(255, 255, 255, .9) 0%, rgba(255, 255, 255, .78) 28%, rgba(255, 255, 255, .25) 52%, rgba(255, 255, 255, 0) 66%); pointer-events: none; }
.oh-hero__inner { position: relative; z-index: 1; display: flex; flex-direction: column; align-items: flex-start; padding-top: 38px; padding-bottom: 130px; }
.oh-hero__badge { display: inline-flex; align-items: center; gap: 8px; margin: 0 0 22px; padding: 9px 16px; border-radius: 30px; background: rgba(255, 255, 255, .88); box-shadow: 0 4px 16px rgba(0, 0, 0, .06); color: var(--o-ink); font-weight: 700; font-size: 14px; }
.oh-hero__badge .oi { color: var(--o-green); width: 20px; height: 20px; }
.oh-hero__copy { max-width: 640px; width: 100%; }
.oh-hero h1 { margin: 0 0 16px; font-size: 44px; line-height: 1.25; font-weight: 800; color: #003C36; letter-spacing: -.5px; }
.oh-hero h1 .is-gold { color: var(--o-gold-text); }
.oh-hero__copy > p { margin: 0 0 28px; font-size: 19px; line-height: 1.7; color: #1F332F; font-weight: 500; }
.oh-hero__actions { display: flex; gap: 16px; flex-wrap: wrap; }
.oh-hero__actions .o-btn { min-width: 240px; min-height: 58px; font-size: 16.5px; }

/* Search card */
.oh-search { position: relative; z-index: 3; margin-top: -92px; }
.oh-search__card { display: grid; grid-template-columns: repeat(5, 1fr) 220px; gap: 14px; align-items: end; padding: 22px; background: #fff; border-radius: 18px; box-shadow: var(--o-shadow-lg); }
.oh-field { display: flex; flex-direction: column; gap: 10px; min-width: 0; }
.oh-field__label { display: flex; align-items: center; gap: 8px; font-size: 14px; font-weight: 800; color: var(--o-ink); padding-inline-start: 4px; }
.oh-field__label .oi { width: 20px; height: 20px; color: var(--o-green); }
.oh-field__control { position: relative; display: block; }
.oh-field select { width: 100%; height: 46px; padding: 0 14px 0 34px; appearance: none; -webkit-appearance: none; border: 1px solid var(--o-line); border-radius: 10px; background: #fff; color: var(--o-text); font: 600 14px var(--o-font); cursor: pointer; }
.oh-field select:focus { outline: none; border-color: var(--o-green); box-shadow: 0 0 0 3px rgba(0, 78, 60, .12); }
.oh-field__chev { position: absolute; inset-inline-end: 12px; top: 50%; transform: translateY(-50%); width: 16px; height: 16px; color: var(--o-muted); pointer-events: none; }
.oh-search__submit { height: 62px; font-size: 17px; border-radius: 12px; align-self: end; }
.oh-search__submit .oi { width: 22px; height: 22px; }

/* Features */
.oh-features { padding: 34px 0 22px; }
.oh-features__row { display: grid; grid-template-columns: repeat(4, 1fr); }
.oh-feature { display: flex; align-items: center; gap: 16px; padding: 10px 26px; border-inline-end: 1px solid var(--o-line); }
.oh-feature:last-child { border: 0; }
.oh-feature__ico { display: grid; place-items: center; width: 52px; height: 52px; flex: none; color: var(--o-green); }
.oh-feature__ico .oi { width: 44px; height: 44px; }
.oh-feature--green .oh-feature__ico .oi { fill: var(--o-green-600); stroke: #fff; stroke-width: 1.8; }
.oh-feature--gold .oh-feature__ico { color: var(--o-green-600); }
.oh-feature--wa .oh-feature__ico { color: #0F9D58; }
.oh-feature strong { display: block; font-size: 18px; font-weight: 800; color: var(--o-ink); margin-bottom: 5px; }
.oh-feature small { font-size: 13px; color: var(--o-muted); }

/* Split: offers + categories | agencies */
.oh-split { display: grid; grid-template-columns: 372px minmax(0, 1fr); gap: 28px; align-items: start; padding-top: 26px; }
.oh-split__main { display: flex; flex-direction: column; gap: 46px; min-width: 0; }
.oh-panel { background: #fff; border-radius: 18px; box-shadow: var(--o-shadow); padding: 24px 18px 18px; }
.oh-agencies .oh-head h2 { font-size: 26px; }

/* Ranking */
.oh-rank { list-style: none; margin: 0; padding: 0; display: grid; gap: 12px; }
.oh-rank__item { position: relative; display: grid; grid-template-columns: 1fr 80px 34px; gap: 10px; align-items: start; padding: 14px 12px; border: 1px solid #EEF2F1; border-radius: 14px; background: #fff; }
.oh-rank__item.is-first { background: #FFFCF4; border-color: #F5E7C6; }
.oh-rank__num { display: grid; place-items: center; width: 32px; height: 32px; border-radius: 8px; background: #EEF1F2; color: var(--o-ink); font-weight: 800; font-size: 13px; }
.oh-rank__item.is-first .oh-rank__num { background: var(--o-gold); }
.oh-rank__logo { display: grid; place-items: center; width: 76px; height: 76px; border-radius: 50%; background: #fff; border: 2px solid #F1F1F1; box-shadow: 0 4px 12px rgba(0, 0, 0, .08); overflow: hidden; text-decoration: none; }
.oh-rank__logo img { width: 100%; height: 100%; object-fit: contain; }
.oh-rank__logo span { font-size: 28px; font-weight: 800; color: var(--o-green); }
.oh-rank__body { min-width: 0; order: 1; }
.oh-rank__logo { order: 2; }
.oh-rank__num { order: 3; }
.oh-rank__body h3 { margin: 2px 0 6px; font-size: 16.5px; font-weight: 800; }
.oh-rank__body h3 a { color: var(--o-ink); text-decoration: none; }
.oh-rank__city { display: flex; align-items: center; gap: 5px; margin: 0 0 6px; color: var(--o-muted); font-size: 13px; }
.oh-rank__city .oi { width: 15px; height: 15px; color: var(--o-ink); }
.oh-rank__meta { display: flex; align-items: center; gap: 12px; flex-wrap: wrap; margin: 0 0 10px; font-size: 13px; color: var(--o-muted); }
.oh-rank__offers { color: var(--o-muted); }
.oh-rank__btn { min-height: 34px; font-size: 13px; }
.oh-more { display: flex; align-items: center; justify-content: center; gap: 8px; margin-top: 14px; padding: 14px; border-radius: 12px; background: var(--o-green-50); color: var(--o-green); font-weight: 800; font-size: 15px; text-decoration: none; }
.oh-more .oi { width: 18px; height: 18px; }
.oh-more:hover { background: #DCEDE6; }
.oh-rate { display: inline-flex; align-items: center; gap: 4px; margin: 0; color: var(--o-muted); font-size: 14px; }
.oh-rate .oi { width: 17px; height: 17px; color: #F5B301; }
.oh-rate b { color: var(--o-gold-text); font-size: 15px; }

/* Carousels */
.oh-carousel { position: relative; }
.oh-track { display: grid; grid-auto-flow: column; grid-auto-columns: calc((100% - 2 * 18px) / 3); gap: 18px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; padding: 4px 2px 10px; scroll-behavior: smooth; }
.oh-track::-webkit-scrollbar { display: none; }
.oh-track > * { scroll-snap-align: start; }
.oh-arrow { position: absolute; top: 34%; z-index: 4; display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%; border: 0; background: #fff; color: var(--o-ink); box-shadow: 0 6px 18px rgba(0, 0, 0, .14); cursor: pointer; transition: opacity .2s, transform .2s; }
.oh-arrow:hover { transform: scale(1.06); }
.oh-arrow[disabled] { opacity: .35; cursor: default; }
.oh-arrow--prev { inset-inline-start: -16px; }
.oh-arrow--next { inset-inline-end: -16px; }
.oh-dots { display: flex; justify-content: center; gap: 10px; margin-top: 16px; }
.oh-dots button { width: 12px; height: 12px; padding: 0; border: 0; border-radius: 50%; background: #D5DCDA; cursor: pointer; transition: background .2s, transform .2s; }
.oh-dots button.is-active { background: var(--o-green-600); transform: scale(1.1); }

/* Offer card */
.oh-offer { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 16px; box-shadow: var(--o-shadow); overflow: hidden; min-width: 0; transition: box-shadow .25s, transform .25s; }
.oh-offer:hover { box-shadow: var(--o-shadow-lg); transform: translateY(-3px); }
.oh-offer__media { display: block; aspect-ratio: 16 / 11; background: var(--o-green-50); overflow: hidden; }
.oh-offer__media img { width: 100%; height: 100%; object-fit: cover; transition: transform .5s; }
.oh-offer:hover .oh-offer__media img { transform: scale(1.04); }
.oh-offer__ph { display: grid; place-items: center; width: 100%; height: 100%; color: var(--o-green); }
.oh-offer__ph .oi { width: 54px; height: 54px; }
.oh-badge { position: absolute; top: 14px; inset-inline-start: 14px; padding: 6px 14px; border-radius: 8px; font-weight: 800; font-size: 14px; color: #fff; }
.oh-badge--red { background: var(--o-red); }
.oh-badge--gold { background: var(--o-gold); color: var(--o-ink); }
.oh-badge--green { background: var(--o-green); }
.oh-fav { position: absolute; top: 12px; inset-inline-end: 12px; display: grid; place-items: center; width: 38px; height: 38px; border: 0; border-radius: 50%; background: #fff; color: #E5484D; cursor: pointer; box-shadow: 0 3px 10px rgba(0, 0, 0, .15); }
.oh-fav .oi { width: 20px; height: 20px; }
.oh-fav[aria-pressed="true"] .oi { fill: currentColor; }
.oh-offer__body { display: flex; flex-direction: column; gap: 8px; padding: 16px 16px 18px; flex: 1; }
.oh-offer h3 { margin: 0; font-size: 17px; font-weight: 800; line-height: 1.45; }
.oh-offer h3 a { color: var(--o-ink); text-decoration: none; }
.oh-offer__agency { display: flex; align-items: center; gap: 6px; margin: 0; font-weight: 700; color: var(--o-text); font-size: 14.5px; }
.oh-verified { color: #12A150; display: inline-flex; }
.oh-verified .oi { width: 19px; height: 19px; }
.oh-offer__facts { display: grid; grid-template-columns: auto 1fr; gap: 9px 12px; list-style: none; margin: 6px 0 2px; padding: 12px 0 0; border-top: 1px solid #EEF2F1; }
.oh-offer__facts li { display: flex; align-items: center; gap: 7px; font-size: 13px; color: var(--o-muted); min-width: 0; }
.oh-offer__facts li.is-chip { grid-column: 1; grid-row: 2; }
.oh-offer__facts li.is-dep { grid-column: 2; grid-row: 1; }
.oh-offer__facts li.is-days { grid-column: 1; grid-row: 1; }
.oh-offer__facts li.is-hotel { grid-column: 2; grid-row: 2; }
.oh-offer__facts .oi { width: 17px; height: 17px; color: #5C6B67; }
.oh-offer__foot { display: flex; align-items: flex-end; justify-content: flex-start; gap: 10px; margin-top: auto; padding-top: 2px; }
.oh-chip { display: inline-block; padding: 5px 13px; border-radius: 8px; font-size: 13px; font-weight: 800; background: #FDF0D5; color: #B7791F; }
.oh-chip--premium, .oh-chip--vip { background: #FBE7C2; color: #A8650E; }
.oh-price { margin: 0; text-align: start; }
.oh-price small { display: block; color: var(--o-muted); font-size: 12px; margin-bottom: 2px; }
.oh-price strong { font-size: 23px; font-weight: 800; color: var(--o-green); }
.oh-price i { font-style: normal; font-size: 13px; }
.oh-offer__actions { display: grid; grid-template-columns: 1.3fr 1fr; gap: 10px; margin-top: 10px; }
.oh-offer__actions .o-btn { min-height: 42px; }
.oh-empty-card { text-align: center; padding: 48px 24px; background: #fff; border-radius: 16px; box-shadow: var(--o-shadow); }
.oh-empty-card .oi { width: 40px; height: 40px; color: var(--o-green); }
.oh-empty-card h3 { margin: 12px 0 6px; }
.oh-empty-card p, .oh-empty { color: var(--o-muted); }

/* Categories */
.oh-cats .oh-head { margin-bottom: 18px; }
.oh-cats .oh-head h2 { font-size: 30px; }
.oh-cats__grid { display: grid; grid-template-columns: repeat(5, 1fr); gap: 16px; }
.oh-cat { position: relative; display: flex; flex-direction: column; background: #fff; border-radius: 14px; box-shadow: var(--o-shadow); overflow: hidden; text-decoration: none; padding-bottom: 14px; transition: transform .25s, box-shadow .25s; }
.oh-cat:hover { transform: translateY(-4px); box-shadow: var(--o-shadow-lg); }
.oh-cat__img { display: block; aspect-ratio: 16 / 11; overflow: hidden; }
.oh-cat__img img { width: 100%; height: 100%; object-fit: cover; }
.oh-cat__ico { position: relative; align-self: flex-end; margin: -24px 12px 4px; display: grid; place-items: center; width: 46px; height: 46px; border-radius: 12px; color: #fff; box-shadow: 0 6px 14px rgba(0, 0, 0, .15); }
.oh-cat__ico--gold { background: var(--o-gold); }
.oh-cat__ico--green { background: var(--o-green-600); }
.oh-cat__ico .oi { width: 24px; height: 24px; }
.oh-cat strong { padding: 0 14px; font-size: 16px; font-weight: 800; color: var(--o-ink); }
.oh-cat small { padding: 4px 14px 0; font-size: 12.5px; color: var(--o-muted); }

/* Why + video */
.oh-why { display: grid; grid-template-columns: 1fr 1.08fr; gap: 30px; padding-top: 56px; align-items: stretch; }
.oh-why__panel { background: #fff; border-radius: 18px; box-shadow: var(--o-shadow); padding: 24px 22px; }
.oh-why__panel .oh-head__title { margin-bottom: 20px; font-size: 28px; }
.oh-why__grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.oh-why__item { display: flex; flex-direction: column; align-items: center; text-align: center; gap: 10px; padding: 18px 12px; border: 1px solid #EEF2F1; border-radius: 14px; background: #fff; box-shadow: 0 3px 12px rgba(14, 42, 38, .04); }
.oh-why__ico { display: grid; place-items: center; width: 44px; height: 44px; color: #12A150; }
.oh-why__ico .oi { width: 34px; height: 34px; }
.oh-why__item strong { display: block; font-size: 15.5px; font-weight: 800; color: var(--o-ink); margin-bottom: 6px; }
.oh-why__item small { display: block; font-size: 12.5px; line-height: 1.6; color: var(--o-muted); }
.oh-why__item:nth-child(1), .oh-why__item:nth-child(4) { justify-content: center; }
.oh-why__item:nth-child(1) .oh-why__ico, .oh-why__item:nth-child(4) .oh-why__ico { display: none; }
.oh-why__item:nth-child(1) strong, .oh-why__item:nth-child(4) strong { font-size: 19px; }
.oh-why__item:nth-child(1) small, .oh-why__item:nth-child(4) small { font-size: 14px; }
.oh-video { position: relative; border-radius: 18px; overflow: hidden; min-height: 330px; background: #102; box-shadow: var(--o-shadow); }
.oh-video img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }
.oh-video::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(0, 0, 0, .05), rgba(0, 0, 0, .25)); }
.oh-video__tag { position: absolute; top: 20px; inset-inline-end: 20px; z-index: 2; padding: 9px 18px; border-radius: 10px; background: var(--o-green); color: #fff; font-weight: 800; font-size: 15px; }
.oh-video__play { position: absolute; inset: 0; margin: auto; z-index: 2; display: grid; place-items: center; width: 84px; height: 84px; border-radius: 50%; border: 0; background: #fff; color: var(--o-green); box-shadow: 0 0 0 12px rgba(255, 255, 255, .25); cursor: pointer; transition: transform .25s; }
.oh-video__play:hover { transform: scale(1.08); }
.oh-video__play .oi { width: 34px; height: 34px; margin-left: 5px; }

/* Ramadan */
.oh-ramadan-wrap { padding-top: 34px; }
.oh-ramadan { position: relative; display: grid; grid-template-columns: 1fr 1fr; min-height: 300px; border-radius: 22px; overflow: hidden; background: radial-gradient(120% 140% at 85% 30%, #00473A 0%, #00362A 55%, #002A22 100%); color: #fff; box-shadow: var(--o-shadow-lg); }
.oh-ramadan__copy { position: relative; z-index: 2; padding: 34px 48px; align-self: center; }
.oh-ramadan__moon { display: none; }
.oh-ramadan__tag { display: inline-block; padding: 4px 12px; border-radius: 8px; background: var(--o-gold); color: var(--o-ink); font-weight: 800; font-size: 13px; }
.oh-ramadan h2 { margin: 10px 0 12px; color: var(--o-gold); font-size: 50px; font-weight: 800; line-height: 1.2; }
.oh-ramadan h2 span { color: var(--o-gold); }
.oh-ramadan p { margin: 0 0 26px; font-size: 20px; color: rgba(255, 255, 255, .92); }
.oh-ramadan .o-btn { min-width: 340px; min-height: 58px; font-size: 18px; }
.oh-ramadan__media { position: relative; }
.oh-ramadan__media img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(270deg, transparent 0%, #000 38%); mask-image: linear-gradient(270deg, transparent 0%, #000 38%); }
.oh-ramadan__ornament { position: absolute; z-index: 1; inset-inline-end: 42%; top: 0; height: 100%; width: auto; color: var(--o-gold); opacity: .55; pointer-events: none; }

/* Guide */
.oh-guide { padding-top: 40px; }
.oh-guide__grid { display: grid; grid-template-columns: repeat(8, 1fr); gap: 14px; }
.oh-tile { position: relative; display: flex; flex-direction: column; align-items: center; background: #fff; border-radius: 12px; box-shadow: var(--o-shadow); overflow: hidden; text-decoration: none; padding-bottom: 14px; transition: transform .25s; }
.oh-tile:hover { transform: translateY(-3px); }
.oh-tile__img { display: block; width: 100%; aspect-ratio: 4 / 3; overflow: hidden; }
.oh-tile__img img { width: 100%; height: 100%; object-fit: cover; }
.oh-tile__ico { display: grid; place-items: center; width: 30px; height: 30px; margin-top: -15px; border-radius: 50%; background: #fff; color: var(--o-green); box-shadow: 0 3px 8px rgba(0, 0, 0, .15); position: relative; }
.oh-tile__ico .oi { width: 16px; height: 16px; }
.oh-tile strong { margin-top: 8px; font-size: 14.5px; font-weight: 800; color: var(--o-ink); }

/* Testimonials */
.oh-tests { padding-top: 44px; }
.oh-carousel--tests { padding-inline: 34px; }
.oh-carousel--tests .oh-arrow { top: 50%; transform: translateY(-50%); width: 38px; height: 38px; box-shadow: none; background: transparent; }
.oh-carousel--tests .oh-arrow--prev { inset-inline-start: -4px; }
.oh-carousel--tests .oh-arrow--next { inset-inline-end: -4px; }
.oh-carousel--tests .oh-dots { display: none; }
.oh-test { margin: 0; padding: 20px 24px; background: #fff; border-radius: 14px; box-shadow: var(--o-shadow); }
.oh-test__head { display: flex; align-items: center; gap: 14px; }
.oh-test__avatar { order: 2; margin-inline-start: auto; }
.oh-test__avatar { display: grid; place-items: center; width: 64px; height: 64px; flex: none; border-radius: 50%; background: linear-gradient(135deg, var(--o-green-50), #FDF4E1); color: var(--o-green); font-size: 24px; font-weight: 800; border: 3px solid #fff; box-shadow: 0 3px 10px rgba(0, 0, 0, .1); }
.oh-test figcaption { font-weight: 800; color: var(--o-ink); font-size: 15.5px; margin-bottom: 4px; }
.o-stars { display: inline-flex; gap: 3px; color: #E4E7E6; }
.o-stars .oi { width: 20px; height: 20px; }
.o-stars .is-on { color: #F5B301; }
.oh-test blockquote { margin: 12px 0 8px; color: var(--o-muted); font-size: 14.5px; line-height: 1.75; }
.oh-test time { display: block; text-align: center; color: #9AA6A3; font-size: 12px; }

/* Agency CTA */
.oh-cta-wrap { padding-top: 40px; }
.oh-cta { position: relative; display: grid; grid-template-columns: 1fr 1fr; min-height: 236px; border-radius: 22px; overflow: hidden; background: linear-gradient(90deg, #005242 0%, #00483A 100%); color: #fff; box-shadow: var(--o-shadow-lg); }
.oh-cta::before { content: ""; position: absolute; inset: 0; opacity: .08; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='60' height='60' viewBox='0 0 60 60'%3E%3Cpath d='M30 4l7 19 19 7-19 7-7 19-7-19-19-7 19-7z' fill='none' stroke='%23fff'/%3E%3C/svg%3E") 0 0/60px 60px; }
.oh-cta__copy { position: relative; z-index: 2; padding: 30px 40px; align-self: center; }
.oh-cta__mark { display: none; }
.oh-cta h2 { margin: 0 0 12px; color: #fff; font-size: 34px; font-weight: 800; }
.oh-cta h2 span { color: var(--o-gold); }
.oh-cta p { margin: 0 0 22px; font-size: 18px; line-height: 1.75; color: rgba(255, 255, 255, .9); max-width: 520px; }
.oh-cta__actions { display: flex; gap: 14px; flex-wrap: wrap; }
.oh-cta__actions .o-btn { min-width: 210px; }
.oh-cta__media { position: relative; }
.oh-cta__bg { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; -webkit-mask-image: linear-gradient(270deg, transparent 0%, #000 45%); mask-image: linear-gradient(270deg, transparent 0%, #000 45%); }
.oh-cta__person { position: absolute; bottom: 0; inset-inline-end: 22%; height: 106%; width: auto; max-width: none; object-fit: cover; -webkit-mask-image: radial-gradient(ellipse 55% 85% at 50% 60%, #000 62%, transparent 76%); mask-image: radial-gradient(ellipse 55% 85% at 50% 60%, #000 62%, transparent 76%); }
.oh-dash { position: absolute; z-index: 3; inset-inline-end: 4%; top: 14%; width: 200px; background: #fff; border-radius: 10px; box-shadow: 0 14px 30px rgba(0, 0, 0, .25); overflow: hidden; }
.oh-dash__top { display: flex; gap: 4px; padding: 7px 9px; background: #F3F6F5; }
.oh-dash__top i { width: 6px; height: 6px; border-radius: 50%; background: #CCD5D2; }
.oh-dash__body { display: flex; gap: 8px; padding: 9px; }
.oh-dash__side { display: grid; gap: 6px; width: 34px; align-content: start; }
.oh-dash__side b { height: 6px; border-radius: 3px; background: #E3EAE8; }
.oh-dash__side b:first-child { background: var(--o-green-600); }
.oh-dash__main { flex: 1; }
.oh-dash__stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; margin-bottom: 8px; }
.oh-dash__stats b { height: 22px; border-radius: 5px; background: #EEF5F2; }
.oh-dash__chart { display: flex; align-items: flex-end; gap: 5px; height: 60px; padding: 0 2px; border-bottom: 1px solid #E3EAE8; }
.oh-dash__chart i { flex: 1; height: var(--h); border-radius: 3px 3px 0 0; background: linear-gradient(180deg, #5BA4E6, #3C7FD0); }

/* Articles */
.oh-articles { padding-top: 40px; }
.oh-carousel--arts { padding-inline: 34px; }
.oh-carousel--arts .oh-arrow { top: 40%; width: 38px; height: 38px; box-shadow: none; background: transparent; }
.oh-carousel--arts .oh-arrow--prev { inset-inline-start: -4px; }
.oh-carousel--arts .oh-arrow--next { inset-inline-end: -4px; }
.oh-art { display: flex; flex-direction: column; background: #fff; border-radius: 14px; box-shadow: var(--o-shadow); overflow: hidden; }
.oh-art__img { position: relative; display: block; aspect-ratio: 16 / 6; overflow: hidden; background: var(--o-green-50); }
.oh-art__img img { width: 100%; height: 100%; object-fit: cover; }
.oh-art__cat { position: absolute; top: 10px; inset-inline-start: 10px; padding: 4px 12px; border-radius: 8px; background: #fff; color: var(--o-ink); font-weight: 800; font-size: 13px; box-shadow: 0 2px 8px rgba(0, 0, 0, .1); }
.oh-art__body { display: flex; flex-direction: column; gap: 10px; padding: 14px 16px 16px; flex: 1; }
.oh-art h3 { margin: 0; font-size: 16px; line-height: 1.6; font-weight: 800; }
.oh-art h3 a { color: var(--o-ink); text-decoration: none; }
.oh-art time { display: flex; align-items: center; gap: 6px; margin-top: auto; color: #8A9794; font-size: 13px; }
.oh-art time .oi { width: 15px; height: 15px; color: var(--o-green); }

/* Help (mobile only) */
.oh-help__card { position: relative; display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 26px 22px; border-radius: 20px; background: radial-gradient(120% 120% at 0% 100%, #00664E, #00362A); color: #fff; overflow: hidden; }
.oh-help h2 { margin: 0 0 8px; color: #fff; font-size: 26px; font-weight: 800; }
.oh-help p { margin: 0 0 16px; color: rgba(255, 255, 255, .85); font-size: 15px; line-height: 1.7; }
.oh-help__ico { display: grid; place-items: center; width: 92px; height: 92px; flex: none; border-radius: 50%; background: rgba(255, 255, 255, .1); color: var(--o-gold); }
.oh-help__ico .oi { width: 48px; height: 48px; }

/* Video modal */
.oh-modal { position: fixed; inset: 0; z-index: 300; display: grid; place-items: center; padding: 16px; background: rgba(0, 0, 0, .75); }
.oh-modal[hidden] { display: none; }
.oh-modal__box { position: relative; width: min(960px, 100%); aspect-ratio: 16 / 9; background: #000; border-radius: 14px; overflow: hidden; }
.oh-modal__frame, .oh-modal__frame iframe, .oh-modal__frame video { width: 100%; height: 100%; border: 0; display: block; }
.oh-modal__close { position: absolute; top: 10px; inset-inline-end: 10px; z-index: 2; display: grid; place-items: center; width: 40px; height: 40px; border: 0; border-radius: 50%; background: rgba(255, 255, 255, .9); cursor: pointer; }

/* ---------- Tablet ---------- */
@media (max-width: 1180px) {
	.oh-search__card { grid-template-columns: repeat(3, 1fr); }
	.oh-search__submit { grid-column: span 1; height: 46px; }
	.oh-split { grid-template-columns: 300px minmax(0, 1fr); gap: 24px; }
	.oh-track { grid-auto-columns: calc((100% - 18px) / 2); }
	.oh-cats__grid { grid-template-columns: repeat(3, 1fr); }
	.oh-guide__grid { grid-template-columns: repeat(4, 1fr); }
	.oh-why { grid-template-columns: 1fr; }
	.oh-hero h1 { font-size: 46px; }
}
@media (min-width: 768px) and (max-width: 1023px) {
	.oh-hero { display: block; min-height: 0; background: #fff; }
	.oh-hero::after { display: none; }
	.oh-hero__media { position: relative; display: block; height: 420px; }
	.oh-hero__media img { position: static; width: 100%; object-position: 50% 55%; transform: none; }
	.oh-hero__inner { align-items: center; text-align: center; padding-top: 0; padding-bottom: 120px; }
	.oh-hero__badge { position: absolute; top: 22px; }
	.oh-hero__copy { padding-top: 30px; }
	.oh-hero__actions { justify-content: center; }
	.oh-split__main { order: -1; }
}
@media (max-width: 1023px) {
	.oh-features__row { grid-template-columns: repeat(2, 1fr); gap: 12px; }
	.oh-feature { border: 0; }
	.oh-split { grid-template-columns: 1fr; }
	.oh-cta, .oh-ramadan { grid-template-columns: 1fr; }
	.oh-cta__media, .oh-ramadan__media { min-height: 240px; }
}

/* ---------- Mobile (design 390px) ---------- */
@media (max-width: 767px) {
	.oh-desk { display: none !important; }
	.oh-mob { display: inline !important; }
	.oh-mob-flex { display: flex !important; }
	.oh-mob-block { display: block !important; }
	.oh > *, .oh-split > *, .oh-split__main > * { order: var(--m, 50); }
	.oh-split, .oh-split__main { display: contents; }
	.oh > section, .oh-split > aside, .oh-split__main > section { margin-top: 26px; }
	.oh > .oh-hero { margin-top: 0; }
	.oh > .oh-search { margin-top: 0; }

	.oh-head h2, .oh-head__title { font-size: 25px; }
	.oh-head p { font-size: 14.5px; line-height: 1.7; }
	.oh-head--row { flex-direction: column; align-items: flex-start; gap: 8px; }
	.oh-head__ico { width: 28px; height: 28px; }
	.oh-head h2 .oh-head__ico { order: 0; }

	/* Hero: picture on top, copy below */
	.oh-hero { display: block; min-height: 0; background: #fff; overflow: visible; }
	.oh-hero::after { display: none; }
	.oh-hero__media { position: relative; display: block; height: 400px; overflow: hidden; border-radius: 0 0 50% 50% / 0 0 36px 36px; }
	.oh-hero__media img { position: static; width: 100%; object-position: 50% 50%; transform: none; }
	.oh-hero__inner { position: static; padding: 0 16px 6px; }
	.oh-hero__badge { position: absolute; top: 18px; inset-inline: 16px; justify-content: center; margin: 0; padding: 9px 12px; font-size: 13px; background: rgba(255, 255, 255, .9); }
	.oh-hero__copy { text-align: center; padding-top: 26px; }
	.oh-hero h1 { font-size: 38px; line-height: 1.35; margin-bottom: 14px; }
	.oh-hero__copy > p { font-size: 17px; color: var(--o-muted); margin-bottom: 22px; }
	.oh-hero__actions { flex-wrap: nowrap; gap: 8px; }
	.oh-hero__actions .o-btn { flex: 1; min-width: 0; min-height: 54px; font-size: 15.5px; padding: 0 10px; }
	.oh-hero__actions .o-btn .oi { display: none; }

	/* Search */
	.oh-search { margin-top: 0; padding-top: 18px; }
	.oh-search__card { grid-template-columns: 1fr; gap: 12px; padding: 16px; border-radius: 18px; box-shadow: var(--o-shadow); }
	.oh-field { gap: 4px; padding: 12px 14px 4px; border: 1px solid var(--o-line); border-radius: 12px; }
	.oh-field__label { justify-content: flex-start; font-size: 15px; }
	.oh-field__label .oi { order: 0; width: 22px; height: 22px; }
	.oh-field select { border: 0; height: 40px; padding: 0 2px 0 30px; font-size: 15px; color: var(--o-muted); box-shadow: none !important; }
	.oh-search__submit { height: 56px; font-size: 17px; margin-top: 6px; }
	.oh-search__submit .oi { display: none; }

	/* Features 2×2 */
	.oh-features { padding: 18px 0 0; }
	.oh-features__row { gap: 14px; }
	.oh-feature { flex-direction: column; text-align: center; gap: 10px; padding: 20px 10px; background: #fff; border-radius: 16px; box-shadow: var(--o-shadow); }
	.oh-feature__ico { width: 70px; height: 70px; border-radius: 50%; background: #F0F7F4; }
	.oh-feature--gold .oh-feature__ico { background: #FDF3E2; color: var(--o-gold); }
	.oh-feature__ico .oi { width: 38px; height: 38px; }
	.oh-feature strong { font-size: 16.5px; }

	/* Categories 2×2 + wide */
	.oh-cats .oh-head { text-align: start; }
	.oh-cats .oh-head h2 { justify-content: flex-start; font-size: 27px; }
	.oh-cats__grid { grid-template-columns: 1fr 1fr; gap: 14px; }
	.oh-cat { align-items: center; background: transparent; box-shadow: none; padding: 0; }
	.oh-cat__img { width: 100%; border-radius: 14px; aspect-ratio: 1 / .95; }
	.oh-cat:last-child { grid-column: 1 / -1; }
	.oh-cat:last-child .oh-cat__img { aspect-ratio: 2 / .82; }
	.oh-cat__ico { align-self: center; margin: -28px 0 6px; width: 54px; height: 54px; border-radius: 50%; border: 3px solid #fff; }
	.oh-cat__ico .oi { width: 26px; height: 26px; }
	.oh-cat small { display: none; }

	/* Ramadan card */
	.oh-ramadan-wrap { padding-top: 0; }
	.oh-ramadan { border-radius: 22px; min-height: 0; }
	.oh-ramadan__copy { padding: 26px 20px 18px; text-align: start; }
	.oh-ramadan__moon { display: flex; justify-content: flex-end; color: var(--o-gold); margin-bottom: 4px; }
	.oh-ramadan__moon .oi { width: 40px; height: 40px; }
	.oh-ramadan__tag { display: none; }
	.oh-ramadan h2 { font-size: 34px; margin-top: 0; }
	.oh-ramadan p { font-size: 16px; line-height: 1.7; margin-bottom: 18px; }
	.oh-ramadan .o-btn { min-width: 0; width: 100%; min-height: 50px; font-size: 16px; }
	.oh-ramadan__media { min-height: 0; margin: 0 14px 14px; border-radius: 16px; overflow: hidden; aspect-ratio: 1.6; }
	.oh-ramadan__media img { -webkit-mask-image: none; mask-image: none; }
	.oh-ramadan__ornament { display: none; }

	/* Offers carousel: one card */
	.oh-track { grid-auto-columns: 100%; gap: 14px; padding-inline: 2px; }
	.oh-arrow { top: 46%; width: 38px; height: 38px; }
	.oh-arrow--prev { inset-inline-start: -8px; }
	.oh-arrow--next { inset-inline-end: -8px; }
	.oh-offer__actions .o-btn { min-height: 46px; font-size: 15px; }
	.oh-offer h3 { font-size: 18px; }

	/* Agencies */
	.oh-panel { padding: 22px 16px 18px; }
	.oh-rank__item { grid-template-columns: 1fr 52px 34px; }
	.oh-rank__logo { width: 50px; height: 50px; }
	.oh-rank__item:not(.is-first) .oh-rank__btn { display: none; }
	.oh-rank__item:nth-child(n+4) { display: none; }
	.oh-rank__item.is-first { grid-template-columns: 1fr; justify-items: center; text-align: center; }
	.oh-rank__item.is-first .oh-rank__num { position: absolute; top: 14px; inset-inline-end: 14px; }
	.oh-rank__item.is-first .oh-rank__logo { order: 0; }
	.oh-rank__item.is-first .oh-rank__logo { width: 78px; height: 78px; }
	.oh-rank__item.is-first .oh-rank__city, .oh-rank__item.is-first .oh-rank__meta { justify-content: center; }
	.oh-agencies .oh-more { background: #fff; border: 1.5px solid #9CC9B6; }

	/* Why: list */
	.oh-why { padding-top: 0; }
	.oh-video { display: none; }
	.oh-why__panel { padding: 22px 18px; }
	.oh-why__grid { grid-template-columns: 1fr; gap: 0; }
	.oh-why__item, .oh-why__item:nth-child(1), .oh-why__item:nth-child(4) { flex-direction: row; text-align: start; align-items: center; justify-content: flex-start; padding: 16px 4px; border: 0; box-shadow: none; border-radius: 0; }
	.oh-why__item .oh-why__ico, .oh-why__item:nth-child(1) .oh-why__ico, .oh-why__item:nth-child(4) .oh-why__ico { display: grid; order: 2; margin-inline-start: auto; width: 60px; height: 60px; border-radius: 50%; background: #F0F7F4; box-shadow: 0 4px 10px rgba(0, 0, 0, .05); }
	.oh-why__item strong, .oh-why__item:nth-child(1) strong, .oh-why__item:nth-child(4) strong { font-size: 16.5px; }
	.oh-why__item small, .oh-why__item:nth-child(1) small, .oh-why__item:nth-child(4) small { font-size: 13.5px; }

	/* Guide: icon tiles */
	.oh-guide { padding-top: 0; }
	.oh-guide__grid { grid-template-columns: 1fr 1fr; gap: 12px; }
	.oh-tile { padding: 18px 8px 16px; border-radius: 16px; }
	.oh-tile__img { display: none; }
	.oh-tile__ico { width: 64px; height: 64px; margin: 0; box-shadow: none; }
	.oh-tile__ico .oi { width: 30px; height: 30px; }
	.oh-tile strong { margin-top: 10px; font-size: 15.5px; }
	.oh-tile--green .oh-tile__ico { background: #E8F5EE; color: #12A150; }
	.oh-tile--blue .oh-tile__ico { background: #E8F0FD; color: #2563EB; }
	.oh-tile--red .oh-tile__ico { background: #FDECEC; color: #E5484D; }
	.oh-tile--teal .oh-tile__ico { background: #E6F4F8; color: #0E7490; }
	.oh-tile--sky .oh-tile__ico { background: #E6F2FB; color: #0284C7; }
	.oh-tile--indigo .oh-tile__ico { background: #E9EEFC; color: #2563EB; }
	.oh-tile--rose .oh-tile__ico { background: #FDECEC; color: #E11D48; }
	.oh-tile--violet .oh-tile__ico { background: #F1EBFD; color: #7C3AED; }
	.oh-guide__cta { margin-top: 18px; min-height: 52px; }

	/* Testimonials */
	.oh-tests { padding-top: 0; }
	.oh-carousel--tests { padding-inline: 0; }
	.oh-carousel--tests .oh-arrow { display: none; }
	.oh-carousel--tests .oh-dots { display: flex; }
	.oh-test { padding: 20px 18px; }

	/* Articles: stacked */
	.oh-articles { padding-top: 0; }
	.oh-carousel--arts { padding-inline: 0; }
	.oh-carousel--arts .oh-arrow { display: none; }
	.oh-carousel--arts .oh-track { display: grid; grid-auto-flow: row; grid-auto-columns: auto; overflow: visible; gap: 18px; }
	.oh-carousel--arts .oh-art:nth-child(n+3) { display: none; }
	.oh-art__img { aspect-ratio: 16 / 9; }
	.oh-art__cat { inset-inline-start: auto; inset-inline-end: 12px; top: 12px; }
	.oh-art h3 { font-size: 17px; }
	.oh-art .o-btn { margin-top: 6px; min-height: 46px; }
	.oh-articles .oh-more { margin-top: 18px; background: #F2F6F5; }

	/* Agency CTA: vertical */
	.oh-cta-wrap { padding-top: 0; }
	.oh-cta { border-radius: 22px; background: linear-gradient(180deg, #0F4D49 0%, #2B5B66 100%); }
	.oh-cta__copy { padding: 30px 20px 18px; text-align: center; }
	.oh-cta__mark { display: inline-grid; place-items: center; color: var(--o-gold); margin-bottom: 8px; }
	.oh-cta__mark .oi { width: 44px; height: 44px; }
	.oh-cta h2 { font-size: 26px; }
	.oh-cta p { font-size: 15.5px; margin-inline: auto; }
	.oh-cta__actions { flex-direction: column; }
	.oh-cta__actions .o-btn { width: 100%; min-width: 0; min-height: 50px; }
	.oh-cta__actions .o-btn--ghost-light { background: #fff; color: var(--o-green); border-color: #fff; }
	.oh-cta__media { min-height: 230px; }
	.oh-cta__bg { -webkit-mask-image: linear-gradient(180deg, transparent 0%, #000 35%); mask-image: linear-gradient(180deg, transparent 0%, #000 35%); object-position: center 30%; }
	.oh-cta__person, .oh-dash { display: none; }

	.oh-help { margin-top: 26px; }
}

/* ==========================================================================
   Classic homepage (restored design) — live-data additions & mobile fixes
   ========================================================================== */
.omraa-hero .oi, .omraa-searchbox .oi, .omraa-categories .oi, .omraa-features .oi, .omraa-ramadan-card .oi, .omraa-widget-wa .oi, .omraa-article-card .oi { width: 1em; height: 1em; vertical-align: -0.14em; }
.omraa-hero__eyebrow .oi { color: var(--omraa-accent); }
.omraa-hero__chips .ico { display: inline-flex; }
.omraa-hero__chips .oi { width: 18px; height: 18px; }
.omraa-hero__video { position: absolute; inset: 0; }
.omraa-searchbox__submit .oi { width: 18px; height: 18px; }
.omraa-categories__icon .oi { width: 26px; height: 26px; }
.omraa-widget-wa .wa-icon .oi { width: 26px; height: 26px; }
.omraa-features__icon .oi { width: 24px; height: 24px; color: var(--omraa-primary); }
.omraa-ramadan-card { color: #fff; border-radius: var(--omraa-radius-lg); }
.omraa-ramadan-card h3 { display: flex; align-items: center; gap: 8px; }
.omraa-ramadan-card h3 .oi { color: var(--omraa-accent); }
.omraa-widget-agency { text-decoration: none; color: inherit; border-bottom: 1px solid var(--omraa-border); }
.omraa-widget-agency:last-of-type { border-bottom: 0; }
.omraa-widget-agency__logo { display: grid; place-items: center; width: 40px; height: 40px; flex: none; overflow: hidden; border-radius: 10px; background: var(--omraa-primary-50); color: var(--omraa-primary); font-weight: 800; }
.omraa-widget-agency__logo img { width: 100%; height: 100%; object-fit: contain; background: #fff; }
.omraa-widget-agency__name, .omraa-widget-agency__rating { display: block; }
.omraa-widget-agency__go { color: var(--omraa-primary); font-size: 1.3rem; }
.omraa-home-verified { display: inline-grid; place-items: center; width: 16px; height: 16px; border-radius: 50%; background: #12A150; color: #fff; font-size: 10px; vertical-align: 1px; }
.omraa-home-empty { padding: 40px 20px; border: 1px dashed var(--omraa-border); border-radius: var(--omraa-radius-lg); background: #fff; text-align: center; }
.omraa-home-empty .oi { width: 40px; height: 40px; color: var(--omraa-primary); }
.omraa-home-empty h3 { margin: 10px 0 6px; }
.omraa-home-empty p { color: var(--omraa-text-muted); margin-bottom: 14px; }
.omraa-home-features { margin: 34px 0 0; }
.omraa-home-testimonials { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.omraa-home-avatar { display: flex; align-items: center; justify-content: center; background: var(--omraa-primary-50); color: var(--omraa-primary); font-weight: 700; }
.omraa-home-articles { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.omraa-article-card { display: block; text-decoration: none; color: inherit; }
.omraa-article-card__thumb { position: relative; aspect-ratio: 16 / 10; overflow: hidden; }
.omraa-article-card__thumb img { width: 100%; height: 100%; object-fit: cover; }
.omraa-article-card__meta { display: flex; flex-wrap: wrap; gap: 10px; }
.omraa-offer-card__price .price-new small { font-size: .7rem; font-weight: 600; color: var(--omraa-text-muted); }
.omraa-offer-card__media { display: block; position: relative; }
@media (max-width: 1100px) {
	.omraa-home-testimonials, .omraa-home-articles { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.omraa-searchbox { grid-template-columns: repeat(3, minmax(0, 1fr)); }
}
@media (max-width: 768px) {
	.omraa-features { grid-template-columns: repeat(2, minmax(0, 1fr)); }
	.omraa-stats-strip__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 640px) {
	.omraa-section--home, .omraa-section--home * { min-width: 0; }
	.omraa-offers-grid, .omraa-offers-grid--3, .omraa-home-testimonials, .omraa-home-articles { grid-template-columns: minmax(0, 1fr); }
	.omraa-searchbox { grid-template-columns: minmax(0, 1fr); }
	.omraa-searchbox select, .omraa-searchbox input { max-width: 100%; }
	.omraa-hero__chips { gap: 10px 14px; }
	.omraa-ramadan-card { grid-template-columns: minmax(0, 1fr); text-align: center; }
	.omraa-ramadan-card h3 { justify-content: center; }
}
.omraa-offer-card__tag.omraa-tag--red { background: #E5484D; color: #fff; }
.omraa-offer-card__tag.omraa-tag--gold { background: #E8AE3C; color: #0E2A26; }
.omraa-offer-card__tag.omraa-tag--green { background: #004E3C; color: #fff; }

/* ---------- Classic homepage: mobile layout (≤ 640px) ---------- */
@media (max-width: 640px) {
	.omraa-section--home { padding-top: 12px; }
	.omraa-offer-card__title { min-height: 0; }
	.omraa-section--home > .omraa-container { padding-inline: 16px; }

	/* Hero */
	.omraa-hero { min-height: 0; }
	.omraa-hero__content { padding: 70px 16px 84px; }
	.omraa-hero__eyebrow { font-size: 11.5px; padding: 5px 12px; margin-bottom: 12px; }
	.omraa-hero__title { font-size: 30px; line-height: 1.35; margin-bottom: 10px; }
	.omraa-hero__title em { display: inline; }
	.omraa-hero__subtitle { font-size: 15px; line-height: 1.75; margin-bottom: 16px; }
	.omraa-hero__chips { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; font-size: 12.5px; }
	.omraa-hero__chips > span { justify-content: center; padding: 7px 8px; border-radius: 10px; background: rgba(255, 255, 255, .1); }
	.omraa-hero__chips > span:last-child { grid-column: 1 / -1; }

	/* Search: 2-column compact grid */
	.omraa-search-panel { margin-top: -54px; position: relative; z-index: 3; }
	.omraa-search-panel .omraa-container { padding-inline: 12px; }
	.omraa-searchbox { grid-template-columns: 1fr 1fr; gap: 10px; padding: 14px; border-radius: 18px; }
	.omraa-searchbox__field { min-width: 0; padding: 8px 10px; border: 1px solid #E3EAE8; border-radius: 12px; background: #fff; }
	.omraa-searchbox__field:first-child { grid-column: 1 / -1; }
	.omraa-searchbox__field label { font-size: 11.5px; margin-bottom: 2px; }
	.omraa-searchbox__field select, .omraa-searchbox__field input { width: 100%; font-size: 15px; padding: 0; border: 0; background-color: transparent; }
	.omraa-searchbox__submit { grid-column: 1 / -1; width: 100%; min-height: 50px; justify-content: center; }

	/* Section heads */
	.omraa-section__head { margin-bottom: 14px; align-items: center; }
	.omraa-section__title { font-size: 20px; }
	.omraa-section__link { font-size: 13px; white-space: nowrap; }

	/* Categories: one scrollable row */
	.omraa-categories { display: flex; gap: 10px; margin: 0 -16px 26px; padding: 2px 16px 6px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; }
	.omraa-categories::-webkit-scrollbar { display: none; }
	.omraa-categories__item { flex: 0 0 116px; padding: 14px 8px; scroll-snap-align: start; border-radius: 16px; }
	.omraa-categories__icon { width: 46px; height: 46px; margin-bottom: 8px; }
	.omraa-categories__item strong { font-size: 13px; }

	/* Offers / testimonials / articles: horizontal swipe rails */
	.omraa-section__main .omraa-offers-grid, .omraa-home-testimonials, .omraa-home-articles {
		display: flex; gap: 12px; margin: 0 -16px; padding: 2px 16px 10px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none;
	}
	.omraa-section__main .omraa-offers-grid::-webkit-scrollbar, .omraa-home-testimonials::-webkit-scrollbar, .omraa-home-articles::-webkit-scrollbar { display: none; }
	.omraa-section__main .omraa-offers-grid > *, .omraa-home-testimonials > *, .omraa-home-articles > * { flex: 0 0 82%; max-width: 320px; scroll-snap-align: start; }

	/* Offer card: tighter */
	.omraa-offer-card__media { aspect-ratio: 16 / 10; overflow: hidden; }
	.omraa-offer-card__media img { width: 100%; height: 100%; object-fit: cover; }
	.omraa-offer-card__body { padding: 12px 14px 14px; gap: 6px; }
	.omraa-offer-card__title { font-size: 16px; margin: 0; }
	.omraa-offer-card__hotel { margin: 0; min-height: 0; font-size: 12.5px; }
	.omraa-offer-card__cities { margin: 6px 0; padding: 8px 0; }
	.omraa-offer-card__price { margin: 0; padding: 0; }
	.omraa-offer-card__cta { margin-top: 8px; }
	.omraa-offer-card__cta .omraa-btn { min-height: 44px; }

	/* Sidebar widgets after offers */
	.omraa-section__layout { gap: 18px; }
	.omraa-section__sidebar { display: grid; gap: 14px; }
	.omraa-widget { margin: 0; }

	/* Features: 2 columns, last one full width */
	.omraa-home-features { margin-top: 26px; padding: 14px; gap: 14px 10px; }
	.omraa-home-features .omraa-features__item { padding: 6px 4px; }
	.omraa-home-features .omraa-features__item:last-child { grid-column: 1 / -1; }
	.omraa-features__item strong { font-size: 14px; }
	.omraa-features__item span { font-size: 12px; }

	/* Ramadan card */
	.omraa-ramadan-card { margin: 24px 0; padding: 20px 16px; gap: 14px; }
	.omraa-ramadan-card .omraa-btn { width: 100%; justify-content: center; }

	/* Testimonials + articles */
	.omraa-testimonial { height: 100%; }
	.omraa-article-card { height: 100%; }
	.omraa-article-card__thumb { aspect-ratio: 16 / 9; background: var(--omraa-primary-50); }

	/* Stats */
	.omraa-stats-strip { padding: 24px 0; }
	.omraa-stats-strip__grid { gap: 16px 10px; }
	.omraa-stats-strip__item .num { font-size: 1.5rem; }
	.omraa-stats-strip__item .lbl { font-size: 12.5px; }
}

/* 2.8.0 — offer ads 3:2 */
.oh-offer__media { aspect-ratio: 3 / 2; }

/* 2.29 — agency city on offer cards: its own full-width row above the facts. */
.oh-offer__facts li.is-city { grid-column: 1 / -1; grid-row: 1; color: #0B5D46; font-weight: 700; }
.oh-offer__facts:has(li.is-city) li.is-days { grid-row: 2; }
.oh-offer__facts:has(li.is-city) li.is-dep { grid-row: 2; }
.oh-offer__facts:has(li.is-city) li.is-chip { grid-row: 3; }
.oh-offer__facts:has(li.is-city) li.is-hotel { grid-row: 3; }
.oh-offer__facts li.is-city .oi { color: #0B5D46; }
