.yv-global-header,
.yv-global-footer,
.yv-mobile-drawer,
.yv-global-header *,
.yv-global-footer *,
.yv-mobile-drawer * {
  box-sizing: border-box;
  font-family: var(--yv-font, Tajawal, Cairo, Arial, sans-serif);
}

.yv-layout-container { width: var(--yv-layout-container); margin-inline: auto; }
.yv-global-header { direction: rtl; position: sticky; top: 0; z-index: 9999; border-bottom: 1px solid rgb(var(--yv-red-bright-rgb) / 0.32); background: linear-gradient(180deg, var(--yv-layout-header-start), var(--yv-layout-header-end)); box-shadow: 0 18px 40px rgb(var(--yv-black-rgb) / 0.28); }
body.admin-bar .yv-global-header { top: var(--wp-admin--admin-bar--height, 32px); }
.yv-header-row { display: grid; grid-template-columns: auto 1fr auto; align-items: center; min-height: 96px; gap: 28px; }
.yv-header-brand { display: flex; align-items: center; justify-content: flex-start; }
.yv-header-brand img, .yv-mobile-logo img, .yv-footer-brand img { width: auto; max-height: 72px; }
.yv-layout-logo-text { color: #fff; font-weight: 900; text-decoration: none; }
.yv-header-nav .yv-menu { display: flex; align-items: center; justify-content: center; gap: 28px; margin: 0; padding: 0; list-style: none; }
.yv-header-nav li { position: relative; list-style: none; }
.yv-header-nav a { color: #fff; font-size: 17px; font-weight: 900; text-decoration: none; white-space: nowrap; transition: color 0.22s ease, background 0.22s ease, transform 0.22s ease; }
.yv-header-nav a:hover, .yv-header-nav a:focus, .yv-header-nav .current-menu-item > a { color: #fff; }
.yv-header-nav > ul > li > a::before { position: absolute; right: 50%; bottom: -10px; width: 0; height: 2px; content: ""; transform: translateX(50%); background: linear-gradient(90deg, transparent, var(--yv-red-bright), transparent); box-shadow: 0 0 14px rgb(var(--yv-red-bright-rgb) / 0.72); transition: width 0.22s ease; }
.yv-header-nav > ul > li:hover > a::before, .yv-header-nav > ul > li:focus-within > a::before, .yv-header-nav > ul > li.current-menu-item > a::before { width: 70%; }
.yv-header-nav li.menu-item-has-children > a { display: inline-flex; position: relative; align-items: center; gap: 9px; }
.yv-header-nav li.menu-item-has-children > a::after { display: inline-grid; place-items: center; content: "⌄"; color: rgb(var(--yv-white-rgb) / 0.82); font-size: 13px; line-height: 1; transform: translateY(1px); transition: transform 0.22s ease, color 0.22s ease; }
.yv-header-nav li.menu-item-has-children:hover > a::after, .yv-header-nav li.menu-item-has-children:focus-within > a::after { color: #fff; transform: translateY(1px) rotate(180deg); }
.yv-header-nav .sub-menu { position: absolute; top: calc(100% + 16px); right: 0; z-index: 10010; min-width: 230px; margin: 0; padding: 12px; border: 1px solid rgb(var(--yv-white-rgb) / 0.12); border-radius: 18px; background: linear-gradient(180deg, var(--yv-layout-submenu-start), var(--yv-layout-submenu-end)); box-shadow: 0 22px 52px rgb(var(--yv-black-rgb) / 0.42), 0 0 26px rgb(var(--yv-red-bright-rgb) / 0.12); list-style: none; opacity: 0; visibility: hidden; transform: translateY(12px); transition: opacity 0.24s ease, visibility 0.24s ease, transform 0.24s ease; }
.yv-header-nav .sub-menu::before { position: absolute; top: -7px; right: 22px; width: 14px; height: 14px; content: ""; transform: rotate(-45deg); border-top: 1px solid rgb(var(--yv-white-rgb) / 0.12); border-right: 1px solid rgb(var(--yv-white-rgb) / 0.12); background: var(--yv-layout-submenu-start); }
.yv-header-nav li:hover > .sub-menu, .yv-header-nav li:focus-within > .sub-menu { opacity: 1; visibility: visible; transform: none; }
.yv-header-nav .sub-menu li { display: block; }
.yv-header-nav .sub-menu a { display: flex; position: relative; align-items: center; min-height: 40px; padding: 10px 14px; border-radius: 12px; background: transparent; color: #fff; font-size: 14px; }
.yv-header-nav .sub-menu a:hover, .yv-header-nav .sub-menu a:focus { background: var(--yv-red-bright); color: #fff; transform: translateX(-2px); }
.yv-header-nav .sub-menu a::before { display: none; }

.yv-header-actions { display: flex; align-items: center; gap: 10px; }
.yv-header-cta { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 30px; border: 0; border-radius: 999px; background: linear-gradient(135deg, var(--yv-red-bright), var(--yv-red-dark)); box-shadow: 0 0 34px rgb(var(--yv-red-bright-rgb) / 0.34); color: #fff; font-weight: 900; text-decoration: none; white-space: nowrap; }
.yv-header-cta:hover { color: #fff; transform: translateY(-2px); box-shadow: 0 0 38px rgb(var(--yv-red-bright-rgb) / 0.46); }
.yv-action-icon { display: grid; position: relative; place-items: center; width: 54px; height: 54px; border: 1px solid rgb(var(--yv-white-rgb) / 0.18); border-radius: 999px; background: rgb(var(--yv-white-rgb) / 0.08); color: #fff; text-decoration: none; transition: 0.25s ease; }
.yv-action-icon svg { width: 24px; height: 24px; }
.yv-action-icon:hover { background: var(--yv-red-bright); color: #fff; transform: translateY(-2px); }
.yv-cart-count { display: grid; position: absolute; top: -9px; right: -3px; place-items: center; min-width: 24px; height: 24px; border-radius: 999px; background: var(--yv-red-bright); color: #fff; font-size: 12px; font-weight: 900; }
.yv-mobile-toggle { display: none; place-items: center; width: 46px; height: 46px; min-height: 0; padding: 0; border: 0; border-radius: 999px; background: var(--yv-red-bright); box-shadow: none; gap: 4px; }
.yv-mobile-toggle span { display: block; width: 18px; height: 2px; border-radius: 2px; background: #fff; }
.yv-mobile-drawer { direction: rtl; position: fixed; inset: 0; z-index: 10000; background: rgb(var(--yv-black-rgb) / 0.68); opacity: 0; visibility: hidden; transition: opacity 0.25s ease, visibility 0.25s ease; }
.yv-mobile-drawer.is-open { opacity: 1; visibility: visible; }
.yv-mobile-panel { position: absolute; top: 0; right: 0; width: min(420px, 90vw); height: 100%; padding: 28px 22px; overflow: auto; background: #050505; transform: translateX(100%); transition: transform 0.32s cubic-bezier(0.16, 1, 0.3, 1); }
.yv-mobile-drawer.is-open .yv-mobile-panel { transform: none; }
.yv-mobile-top { display: flex; align-items: center; justify-content: space-between; padding-bottom: 22px; border-bottom: 1px solid rgb(var(--yv-white-rgb) / 0.12); }
.yv-mobile-close { display: grid; place-items: center; width: 50px; height: 50px; min-height: 0; padding: 0; border: 0; border-radius: 999px; background: var(--yv-red-bright); box-shadow: none; color: #fff; }
.yv-mobile-close svg { width: 24px; height: 24px; }
.yv-mobile-nav .yv-menu { display: grid; margin: 24px 0 0; padding: 0; list-style: none; gap: 10px; }
.yv-mobile-nav li { list-style: none; }
.yv-mobile-nav a { display: flex; align-items: center; justify-content: space-between; min-height: 60px; padding: 0 20px; border-radius: 18px; background: rgb(var(--yv-white-rgb) / 0.055); color: #fff; font-size: 22px; font-weight: 900; text-decoration: none; }
.yv-mobile-nav a:hover, .yv-mobile-nav a:focus { background: var(--yv-red-bright); color: #fff; }
.yv-mobile-nav .sub-menu { display: none; margin: 8px 0 0; padding: 0 16px; list-style: none; }
.yv-mobile-nav li.is-open > .sub-menu { display: grid; gap: 8px; }
.yv-mobile-nav li.menu-item-has-children > a::before { display: grid; order: -1; place-items: center; width: 40px; height: 40px; content: "⌄"; border: 1px solid rgb(var(--yv-white-rgb) / 0.14); border-radius: 999px; background: rgb(var(--yv-white-rgb) / 0.06); font-size: 20px; line-height: 1; transition: transform 0.22s ease, background 0.22s ease; }
.yv-mobile-nav li.menu-item-has-children.is-open > a::before { border-color: var(--yv-red-bright); background: var(--yv-red-bright); color: #fff; transform: rotate(180deg); }

.yv-global-footer { direction: rtl; padding: 52px 0 24px; border-top: 1px solid rgb(var(--yv-red-bright-rgb) / 0.32); background: radial-gradient(circle at 0 0, rgb(var(--yv-red-bright-rgb) / 0.18), transparent 34%), linear-gradient(180deg, #090909, #050505); color: #fff; }
.yv-footer-newsletter { display: flex; align-items: center; justify-content: space-between; margin-bottom: 36px; padding: 28px; border: 1px solid rgb(var(--yv-white-rgb) / 0.12); border-radius: 24px; background: rgb(var(--yv-white-rgb) / 0.035); gap: 24px; }
.yv-footer-newsletter span { color: var(--yv-red-bright); font-size: 12px; font-weight: 900; }
.yv-footer-newsletter h2 { margin: 5px 0; color: #fff; }
.yv-footer-newsletter p { margin: 0; color: var(--yv-layout-copy); }
.yv-footer-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; }
.yv-footer-action { display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: 0 22px; border: 1px solid rgb(var(--yv-white-rgb) / 0.16); border-radius: 999px; background: rgb(var(--yv-white-rgb) / 0.045); color: #fff; text-decoration: none; font-weight: 900; transition: transform var(--yv-transition), border-color var(--yv-transition), background var(--yv-transition); }
.yv-footer-action:hover,.yv-footer-action:focus-visible { color: #fff; border-color: rgb(var(--yv-red-bright-rgb) / 0.7); background: rgb(var(--yv-red-bright-rgb) / 0.12); transform: translateY(-2px); }
.yv-footer-action--primary { border-color: var(--yv-red-bright); background: var(--yv-red-bright); }
.yv-footer-contact { display: grid; gap: 6px; margin-top: 14px; }
.yv-footer-contact a,.yv-footer-contact span { color: var(--yv-layout-copy); font-size: 14px; line-height: 1.6; text-decoration: none; }
.yv-footer-contact a:hover { color: #fff; }
.yv-footer-social { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 14px; }
.yv-footer-social a { display: inline-flex; min-height: 32px; align-items: center; padding: 0 10px; border: 1px solid rgb(var(--yv-white-rgb) / 0.12); border-radius: 999px; color: var(--yv-layout-copy); font-size: 11px; font-weight: 800; text-decoration: none; }
.yv-footer-social a:hover,.yv-footer-social a:focus-visible { color: #fff; border-color: rgb(var(--yv-red-bright-rgb) / 0.55); }
.yv-footer-grid { display: grid; grid-template-columns: 1.4fr 1fr 1fr 1fr; gap: 32px; }
.yv-footer-grid h3 { margin: 0 0 14px; color: #fff; }
.yv-footer-grid h3 * { color: #fff; }
.yv-footer-grid .yv-menu { display: grid; margin: 0; padding: 0; list-style: none; gap: 8px; }
.yv-footer-grid a { color: var(--yv-layout-copy); text-decoration: none; }
.yv-footer-grid a:hover { color: #fff; }
.yv-footer-brand p { max-width: 360px; color: var(--yv-layout-copy); line-height: 1.8; }
.yv-footer-bottom { margin-top: 36px; padding-top: 20px; border-top: 1px solid rgb(var(--yv-white-rgb) / 0.1); color: var(--yv-layout-copy); text-align: center; }

@media (max-width: 1100px) {
  .yv-header-nav { display: none; }
  .yv-mobile-toggle { display: grid; }
  .yv-header-row { grid-template-columns: auto 1fr auto; }
  .yv-header-brand { order: 1; }
  .yv-header-actions { order: 3; }
  .yv-action-icon--account, .yv-action-icon--wishlist { display: none; }
  .yv-footer-grid { grid-template-columns: 1fr 1fr; }
  .yv-footer-newsletter { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 640px) {
  .yv-layout-container { width: min(100% - 24px, 1500px); }
  .yv-header-row { min-height: 78px; gap: 10px; }
  .yv-header-brand img { max-height: 58px; }
  .yv-header-cta { display: none; }
  .yv-action-icon { width: 46px; height: 46px; }
  .yv-footer-grid { grid-template-columns: 1fr; }
   .yv-footer-actions { width: 100%; }
  .yv-mobile-nav a { font-size: 20px; }
}

@media (prefers-reduced-motion: reduce) {
  .yv-global-header *, .yv-global-footer *, .yv-mobile-drawer * { transition-duration: 0.01ms; }
}
