/* ELNOZAMY V2 — R10 FINAL LAPTOP / MOBILE / SEO VISUAL PASS
   Presentation-only overrides. No database/schema dependency. */

html,body{max-width:100%;overflow-x:hidden}

/* 01 — Header integrity: EN starts left, AR starts right. */
@media (min-width:1181px){
  html[dir=ltr] .site-header{direction:ltr!important;flex-direction:row!important}
  html[dir=ltr] .brand{order:0!important;margin:0!important}
  html[dir=ltr] .main-nav{order:1!important;direction:ltr!important;flex-direction:row!important;margin-left:28px!important;margin-right:0!important;justify-content:flex-start!important}
  html[dir=ltr] .main-nav .lang-switch{margin-left:auto!important;margin-right:0!important}

  html[dir=rtl] .site-header{direction:ltr!important;flex-direction:row-reverse!important}
  html[dir=rtl] .brand{order:0!important;flex-direction:row-reverse!important;margin:0!important}
  html[dir=rtl] .main-nav{order:1!important;direction:rtl!important;flex-direction:row!important;margin-right:28px!important;margin-left:0!important;justify-content:flex-start!important}
  html[dir=rtl] .main-nav .lang-switch{margin-right:auto!important;margin-left:0!important}
}

/* 02 — Laptop/Desktop hero: remove the dead right-side void and make the portrait intentional. */
@media (min-width:901px){
  .hero-r6{min-height:clamp(650px,86svh,890px)!important;padding:108px 0 46px!important;align-items:center!important}
  .hero-r6-grid{grid-template-columns:minmax(520px,1.04fr) minmax(430px,.96fr)!important;gap:clamp(28px,4vw,68px)!important;align-items:end!important}
  .hero-r6-copy{align-self:center!important;max-width:760px!important;padding-bottom:22px}
  .hero-r6-copy h1{font-size:clamp(62px,6.2vw,104px)!important;line-height:.84!important}
  .hero-r6-portrait{width:100%!important;max-width:610px!important;justify-self:end!important;align-self:end!important;margin:0!important}
  .hero-r6-portrait .portrait-frame{width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:801/992!important;display:block!important;background:transparent!important;border:0!important;overflow:hidden!important}
  .hero-r6-portrait .portrait-frame img{display:block!important;width:100%!important;height:100%!important;max-width:none!important;max-height:none!important;object-fit:contain!important;object-position:center bottom!important;margin:0!important;filter:contrast(1.035)!important}
  .hero-r6-portrait figcaption{margin-top:12px!important}
  html[dir=rtl] .hero-r6-grid{grid-template-columns:minmax(430px,.96fr) minmax(520px,1.04fr)!important}
  html[dir=rtl] .hero-r6-copy{grid-column:2!important;grid-row:1!important}
  html[dir=rtl] .hero-r6-portrait{grid-column:1!important;grid-row:1!important;justify-self:start!important}
}
@media (min-width:901px) and (max-width:1366px){
  .hero-r6{min-height:clamp(620px,83svh,790px)!important;padding-top:96px!important}
  .hero-r6-grid{grid-template-columns:minmax(470px,1.05fr) minmax(385px,.95fr)!important;gap:32px!important}
  .hero-r6-copy h1{font-size:clamp(58px,6vw,88px)!important}
  .hero-r6-portrait{max-width:520px!important}
  .hero-proof{margin-top:34px!important}
  html[dir=rtl] .hero-r6-grid{grid-template-columns:minmax(385px,.95fr) minmax(470px,1.05fr)!important}
}

/* 03 — Mobile menu: explicit geometry, stable safe-area handling and true LTR/RTL. */
@media (max-width:1180px){
  .site-header{display:flex!important;align-items:center!important;justify-content:space-between!important;min-height:66px!important;padding-top:max(10px,env(safe-area-inset-top))!important;padding-bottom:10px!important;padding-left:max(16px,env(safe-area-inset-left))!important;padding-right:max(16px,env(safe-area-inset-right))!important;background:rgba(8,9,10,.988)!important;backdrop-filter:blur(18px)!important}
  html[dir=ltr] .site-header{direction:ltr!important;flex-direction:row!important}
  html[dir=rtl] .site-header{direction:ltr!important;flex-direction:row-reverse!important}
  .site-header .brand{position:relative;z-index:1010!important;margin:0!important;max-width:calc(100% - 58px)}
  html[dir=rtl] .site-header .brand{flex-direction:row-reverse!important;text-align:right!important}
  .menu-toggle{display:block!important;position:relative!important;z-index:1011!important;flex:0 0 44px!important;width:44px!important;height:44px!important;margin:0!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:2px!important;background:rgba(255,255,255,.02)!important}
  .menu-toggle span{display:block!important;width:22px!important;height:1px!important;background:#fff!important;margin:6px auto!important;transition:transform .25s ease,opacity .2s ease!important}
  .menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.5px) rotate(45deg)!important}
  .menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.5px) rotate(-45deg)!important}
  .site-header .main-nav{position:fixed!important;top:66px!important;bottom:0!important;left:0!important;right:0!important;width:100%!important;height:calc(100dvh - 66px)!important;margin:0!important;padding:26px max(22px,env(safe-area-inset-right)) calc(36px + env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left))!important;background:#08090a!important;display:flex!important;flex-direction:column!important;gap:0!important;overflow-y:auto!important;overscroll-behavior:contain!important;z-index:1008!important;opacity:0!important;visibility:hidden!important;pointer-events:none!important;transform:translateX(102%)!important;transition:transform .30s cubic-bezier(.2,.7,.2,1),opacity .18s ease,visibility 0s linear .30s!important}
  .site-header .main-nav.open{opacity:1!important;visibility:visible!important;pointer-events:auto!important;transform:none!important;transition:transform .30s cubic-bezier(.2,.7,.2,1),opacity .18s ease,visibility 0s!important}
  html[dir=ltr] .site-header .main-nav{direction:ltr!important;align-items:flex-start!important;text-align:left!important}
  html[dir=rtl] .site-header .main-nav{direction:rtl!important;align-items:flex-end!important;text-align:right!important;transform:translateX(-102%)!important}
  html[dir=rtl] .site-header .main-nav.open{transform:none!important}
  .main-nav>a{display:flex!important;align-items:center!important;width:100%!important;min-height:48px!important;padding:7px 0!important;border-bottom:1px solid rgba(255,255,255,.075)!important;font-size:clamp(22px,5.6vw,31px)!important;line-height:1.12!important}
  html[dir=rtl] .main-nav>a{justify-content:flex-end!important;font-size:clamp(21px,5.2vw,29px)!important;line-height:1.5!important}
  .main-nav .lang-switch{width:auto!important;min-width:52px!important;align-self:flex-start!important;margin:18px 0 0!important;padding:8px 12px!important;border:1px solid rgba(255,255,255,.24)!important}
  html[dir=rtl] .main-nav .lang-switch{align-self:flex-end!important}
  body.r10-menu-open{overflow:hidden!important;touch-action:none}
}
@media (max-width:520px){
  .site-header{padding-left:max(14px,env(safe-area-inset-left))!important;padding-right:max(14px,env(safe-area-inset-right))!important}
  .brand{gap:8px!important}.brand-mark{width:36px!important;height:36px!important}.brand-name b{font-size:8px!important;letter-spacing:.07em!important}.brand-name small{display:none!important}
  .site-header .main-nav{padding-top:20px!important}
  .main-nav>a{min-height:44px!important;font-size:24px!important}
  html[dir=rtl] .main-nav>a{font-size:22px!important}
}

/* 04 — Home and full library visuals: controlled, editorial and consistent on laptops. */
.home-gallery-grid{display:grid!important;columns:auto!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:16px!important}
.home-gallery-tile,.home-gallery-tile:nth-child(n){display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/3!important;margin:0!important;grid-column:auto!important;grid-row:auto!important;background:#0d0e10!important;border:1px solid rgba(0,0,0,.12)!important;overflow:hidden!important}
.home-gallery-tile img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center center!important;background:#0d0e10!important;transform:none!important}
.home-gallery-tile:hover img{transform:scale(1.006)!important}
.home-gallery-tile span{display:none!important}
.photo-editorial-wall{display:grid!important;columns:auto!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:18px!important;align-items:start!important}
.photo-editorial-card{display:grid!important;grid-template-rows:auto 1fr!important;width:100%!important;margin:0!important;background:#f5f0e8!important;border:1px solid rgba(25,21,16,.11)!important;box-shadow:0 12px 34px rgba(38,29,16,.045)!important;overflow:hidden!important}
.photo-lightbox-trigger{display:grid!important;place-items:center!important;width:100%!important;aspect-ratio:4/3!important;border:0!important;padding:0!important;background:#0d0e10!important;cursor:zoom-in!important;overflow:hidden!important}
.photo-lightbox-trigger img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:center!important;background:#0d0e10!important;transform:none!important}
.photo-editorial-card figcaption{min-height:68px!important;background:#f5f0e8!important}
@media(max-width:1440px){.photo-editorial-wall{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:15px!important}}
@media(max-width:900px){.home-gallery-grid,.photo-editorial-wall{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:11px!important}}
@media(max-width:520px){.home-gallery-grid,.photo-editorial-wall{grid-template-columns:1fr!important;gap:10px!important}.home-gallery-tile,.photo-lightbox-trigger{aspect-ratio:16/11!important}}

/* 05 — Article/video cards and pagination stay compact and visible. */
.article-grid-r6,.video-grid-r6{align-items:start!important}
.article-card-r6,.video-card-r6{min-width:0!important}
.article-card-r6 .library-card-media,.video-card-r6 .library-card-media{overflow:hidden!important;background:#111!important}
.article-card-r6 .library-card-media img,.video-card-r6 .library-card-media img{width:100%!important;height:100%!important;object-fit:contain!important;background:#111!important}
.pagination{display:flex!important;justify-content:center!important;align-items:center!important;gap:7px!important;margin-inline:auto!important;flex-wrap:wrap!important}
.pagination a,.pagination-gap{min-width:38px!important;height:38px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;border:1px solid rgba(17,17,17,.2)!important;color:#151515!important;background:#f5f0e8!important;font-weight:700!important}
.pagination a.active,.pagination a[aria-current=page]{background:#111!important;color:#f5f0e8!important;border-color:#111!important}

/* 06 — Laptop-specific spacing/scale QA. */
@media (min-width:901px) and (max-width:1366px){
  .home-gallery,.photo-library-r6{padding-block:82px!important}
  .home-section-head h2{font-size:clamp(36px,4vw,54px)!important}
  .library-heading h2{font-size:clamp(38px,4.1vw,58px)!important}
}
