.announcement, .artiya-announcement { position: relative; min-height: 2.25rem; display: grid; place-items: center; padding: .4rem 3rem; background: var(--color-ink-900); color: var(--color-white); font-size: var(--font-size-xs); text-align: center; }
.announcement__close, .artiya-announcement button { position: absolute; inset-inline-end: .5rem; inset-block-start: 50%; width: 2rem; height: 2rem; transform: translateY(-50%); border: 0; border-radius: 50%; background: transparent; color: inherit; cursor: pointer; }
.site-header { position: sticky; z-index: 30; inset-block-start: 0; background: color-mix(in srgb, var(--color-cream-50) 94%, transparent); border-bottom: 1px solid var(--color-line); backdrop-filter: blur(12px); }
.mobile-header { min-height: var(--header-height); display: grid; grid-template-columns: 2.75rem 1fr auto; align-items: center; gap: var(--space-2); }
.desktop-header { display: none; }
.brand, .custom-logo-link { min-width: 8.75rem; min-height: 2.75rem; display: inline-flex; align-items: center; justify-content: flex-start; gap: .65rem; font-weight: 800; white-space: nowrap; }
.custom-logo { width: auto; max-width: 11rem; max-height: 3.25rem; object-fit: contain; }
.brand__mark { display: grid; place-items: center; flex: 0 0 2.25rem; width: 2.25rem; aspect-ratio: 1; border: 1px solid var(--color-brand-600); border-radius: 50%; color: var(--color-brand-600); font-size: 0; }
.brand__mark::before { content: "✿"; font-size: 1.15rem; }
.brand__text { display: flex; flex-direction: column; font-family: Georgia, var(--font-family); font-size: 0; line-height: 1.05; }
.brand__text::before { content: "Artiya"; font-size: 1.3rem; font-weight: 700; }
.brand__text::after { content: "WOMEN’S CLOTHING"; margin-top: .22rem; color: var(--color-ink-500); font-family: Arial, sans-serif; font-size: .55rem; font-weight: 600; letter-spacing: .13em; }
.icon-button { display: inline-grid; place-items: center; min-width: 2.75rem; min-height: 2.75rem; padding: .5rem; border: 1px solid transparent; border-radius: 50%; background: transparent; color: var(--color-ink-900); cursor: pointer; }
.icon-button:hover { background: var(--color-rose-100); }
.icon-button svg, .button svg, .feature svg { width: 1.25rem; height: 1.25rem; fill: none; stroke: currentColor; stroke-width: 1.8; stroke-linecap: round; stroke-linejoin: round; }
.header-actions { display: flex; align-items: center; gap: .45rem; }
.cart-button { position: relative; }
.cart-count { position: absolute; inset-block-start: -.05rem; inset-inline-start: -.15rem; display: grid; place-items: center; min-width: 1.15rem; height: 1.15rem; padding-inline: .2rem; border-radius: var(--radius-pill); background: var(--color-brand-600); color: var(--color-white); font-size: .65rem; font-weight: 700; }
.search-panel { display: none; padding-block: var(--space-3); border-top: 1px solid var(--color-line); }
.search-panel.is-open { display: block; }
.search-shell { position: relative; }
.search-form { display: flex; align-items: center; gap: .35rem; width: 100%; padding: .3rem .35rem .3rem .65rem; background: var(--color-white); border: 1px solid var(--color-control-border); border-radius: var(--radius-sm); }
.search-form:focus-within { border-color: var(--color-brand-600); box-shadow: 0 0 0 3px var(--color-rose-100); }
.search-form input { width: 100%; min-height: 2.5rem; border: 0; outline: 0; background: transparent; color: var(--color-ink-900); }
.search-form button { flex: 0 0 auto; }
.artiya-live-search { position: relative; }
.artiya-live-search > input { width: 100%; min-height: 3.1rem; padding: .6rem 1rem; border: 1px solid var(--color-control-border); border-radius: var(--radius-sm); background: var(--color-white); color: var(--color-ink-900); }
.artiya-search-results { position: absolute; z-index: 50; inset-inline: 0; margin-top: .5rem; padding: var(--space-3); border: 1px solid var(--color-line); border-radius: var(--radius-md); background: var(--color-white); box-shadow: var(--shadow-float); }
.artiya-search-results[hidden] { display: none; }
.category-nav { display: none; border-top: 1px solid var(--color-line); }
.category-nav > ul { min-height: 3.35rem; display: flex; align-items: center; justify-content: center; flex-wrap: nowrap; gap: clamp(.2rem, 1vw, .8rem); }
.category-nav li { position: relative; }
.category-nav > ul > li > a { min-height: 3.35rem; display: inline-flex; align-items: center; gap: .35rem; padding-inline: clamp(.55rem, 1.2vw, 1rem); font-size: clamp(.78rem, .88vw, .9rem); font-weight: 700; line-height: 1; white-space: nowrap; }
.menu-chevron { margin-block-start: -.2rem; color: var(--color-ink-500); font-size: .9rem; }
.category-nav a:hover, .category-nav .sale-link { color: var(--color-brand-600); }
.category-nav .sale-link { font-weight: 700; }
.category-nav .sub-menu { position: absolute; z-index: 40; inset-block-start: 100%; inset-inline-start: 0; min-width: 14rem; visibility: hidden; opacity: 0; padding: .7rem; border: 1px solid var(--color-line); border-radius: var(--radius-md); background: var(--color-white); box-shadow: var(--shadow-float); transition: opacity var(--transition); }
.category-nav li:hover > .sub-menu, .category-nav li:focus-within > .sub-menu { visibility: visible; opacity: 1; }
.category-nav .sub-menu a { display: block; padding: .55rem; white-space: nowrap; }
.button { display: inline-flex; min-height: 2.85rem; align-items: center; justify-content: center; gap: .55rem; padding: .65rem 1.25rem; border: 1px solid var(--color-ink-900); border-radius: var(--radius-sm); background: transparent; color: var(--color-ink-900); font-weight: 700; cursor: pointer; transition: background var(--transition), color var(--transition), transform var(--transition); }
.button:hover { transform: translateY(-1px); }
.button--primary { border-color: var(--color-brand-600); background: var(--color-brand-600); color: var(--color-white); }
.button--primary:hover { background: var(--color-brand-700); color: var(--color-white); }
.button--ghost { border-color: transparent; }
.button--block { width: 100%; }
.text-link { color: var(--color-brand-600); font-weight: 700; text-decoration: underline; text-underline-offset: .35em; }
.mobile-drawer, .shop-filter-drawer { position: fixed; z-index: 80; inset: 0 auto 0 0; width: min(calc(100vw - 2rem), 24rem); max-width: 100%; padding: var(--space-5); visibility: hidden; transform: translateX(-105%); background: var(--color-cream-50); box-shadow: var(--shadow-float); transition: transform var(--transition), visibility 0s linear var(--transition); overflow-y: auto; contain: layout paint; }
[dir="rtl"] .mobile-drawer, [dir="rtl"] .shop-filter-drawer { inset: 0 0 0 auto; transform: translateX(105%); }
.mobile-drawer.is-open, .shop-filter-drawer.is-open { visibility: visible; transform: translateX(0); transition-delay: 0s; }
.drawer-head { display: flex; align-items: center; justify-content: space-between; margin-bottom: var(--space-5); }
.drawer-nav a { display: block; padding: .8rem 0; border-bottom: 1px solid var(--color-line); }
.drawer-nav ul { width: 100%; }
.overlay { position: fixed; z-index: 70; inset: 0; display: none; background: rgba(40,35,38,.45); }
.overlay.is-open { display: block; }
body.has-overlay { overflow: hidden; }
.breadcrumbs, .woocommerce-breadcrumb { padding-block: var(--space-4); color: var(--color-ink-500); font-size: var(--font-size-sm); }
.breadcrumbs ol { display: flex; flex-wrap: wrap; gap: .45rem; }
.breadcrumbs li:not(:last-child)::after { content: "←"; margin-inline-start: .45rem; color: var(--color-rose-300); }
.product-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 1.25rem .65rem; }
.product-card { position: relative; min-width: 0; }
.product-card__media { position: relative; display: block; aspect-ratio: 4 / 5; overflow: hidden; border-radius: var(--radius-md); background: var(--color-cream-100); }
.product-card__media img { width: 100%; height: 100%; object-fit: cover; transition: transform 350ms ease; }
.product-card:hover .product-card__media img { transform: scale(1.025); }
.product-card__favorite { position: absolute; z-index: 2; inset-block-start: .6rem; inset-inline-end: .6rem; width: 2.35rem; min-width: 2.35rem; min-height: 2.35rem; padding: 0; background: rgba(255,255,255,.92); border-color: var(--color-line); }
.product-card__favorite[aria-pressed="true"] { background: var(--color-brand-600); color: var(--color-white); }
.badge { position: absolute; z-index: 2; inset-block-start: .6rem; inset-inline-start: .6rem; padding: .18rem .5rem; border-radius: var(--radius-sm); background: var(--color-cream-50); color: var(--color-brand-600); font-size: .7rem; font-weight: 700; }
.product-card__body { min-height: 10.75rem; display: flex; flex-direction: column; align-items: flex-start; padding-block: .65rem; }
.product-card__kicker { margin: 0 0 .2rem; color: var(--color-ink-500); font-size: var(--font-size-xs); }
.product-card__title { min-height: 2.7em; margin-bottom: .25rem; font-size: var(--font-size-base); }
.product-card__title a:hover { color: var(--color-brand-600); }
.product-card__meta { display: flex; align-items: baseline; flex-wrap: wrap; gap: .35rem .6rem; }
.price { font-weight: 800; white-space: nowrap; }
.price del { color: var(--color-ink-500); font-size: var(--font-size-sm); font-weight: 400; }
.price ins { text-decoration: none; }
.swatches { display: inline-flex; align-items: center; gap: .4rem; margin-top: .45rem; }
.swatch-dot { width: 1.05rem; height: 1.05rem; border: 2px solid var(--color-control-border); border-radius: 50%; background: var(--swatch); }
.variant-count { color: var(--color-ink-500); font-size: var(--font-size-xs); }
.product-card__status { display: flex; align-items: center; gap: .35rem; margin-top: auto; padding-top: .3rem; color: var(--color-success); font-size: var(--font-size-xs); }
.product-card__status::before { content: ""; width: .42rem; height: .42rem; border-radius: 50%; background: currentColor; }
.is-out-of-stock .product-card__status { color: var(--color-danger); }
.product-card__add { width: 100%; min-height: 2.6rem; margin-top: .55rem; padding: .55rem .65rem; font-size: var(--font-size-sm); text-align: center; }
.site-footer { padding-block: var(--space-7) var(--space-5); background: var(--color-ink-900); color: var(--color-white); }
.footer-grid { display: grid; gap: var(--space-6); }
.footer-about p { max-width: 32rem; color: var(--color-footer-muted); }
.site-footer .brand__text::after { color: var(--color-footer-muted); }
.footer-title { margin-bottom: var(--space-3); color: var(--color-white); font-size: var(--font-size-base); }
.footer-links a { display: inline-block; padding-block: .3rem; color: var(--color-footer-muted); }
.footer-links a:hover { color: var(--color-white); }
.footer-bottom { margin-top: var(--space-6); padding-top: var(--space-4); border-top: 1px solid #4c4449; color: #c4b8be; font-size: var(--font-size-sm); }
.trust-placeholders { display: flex; flex-wrap: wrap; gap: .55rem; margin-top: var(--space-4); }
.trust-placeholder { min-width: 4.75rem; min-height: 3.25rem; display: grid; place-items: center; padding: .35rem; border: 1px dashed #756b70; border-radius: var(--radius-sm); color: var(--color-footer-muted); font-size: .68rem; }
.filters { padding: var(--space-4); background: var(--color-white); border: 1px solid var(--color-control-border); border-radius: var(--radius-md); }
.filter-group { margin: 0; padding-block: var(--space-4); border: 0; border-bottom: 1px solid var(--color-line); }
.filter-group:first-child { padding-top: 0; }
.filter-group legend { margin-bottom: var(--space-3); font-weight: 800; }
.filter-group input[type="number"] { width: 100%; min-height: 2.75rem; margin-bottom: .5rem; padding: .45rem .65rem; border: 1px solid var(--color-control-border); border-radius: var(--radius-sm); }
.check { display: flex; align-items: center; gap: .6rem; min-height: 2.5rem; cursor: pointer; }
.filter-mobile-trigger { margin-bottom: var(--space-4); }
.content-list { display: grid; gap: var(--space-5); }
.content-card { display: grid; gap: var(--space-4); padding: var(--space-4); border: 1px solid var(--color-line); border-radius: var(--radius-md); background: var(--color-white); }
.content-card__media img { width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: var(--radius-sm); }
.empty-state { max-width: 42rem; margin-inline: auto; padding-block: var(--space-8); text-align: center; }
.empty-state .search-form { margin-block: var(--space-5); }

@media (min-width: 48rem) {
  .product-grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 1.5rem 1rem; }
  .footer-grid { grid-template-columns: 2fr repeat(3,1fr); }
  .content-card { grid-template-columns: 15rem 1fr; align-items: center; }
}
@media (min-width: 75rem) {
  .mobile-header, .search-panel { display: none !important; }
  .desktop-header { min-height: 5.75rem; display: grid; grid-template-columns: minmax(11rem,1fr) minmax(22rem,36rem) minmax(11rem,1fr); align-items: center; gap: clamp(1.5rem, 3vw, 3.75rem); }
  .desktop-header__brand { grid-column: 1; justify-self: start; min-width: 0; }
  .desktop-header__search { grid-column: 2; width: 100%; max-width: 36rem; justify-self: center; }
  .desktop-header__actions { grid-column: 3; justify-self: end; min-width: max-content; }
  .desktop-header .brand, .desktop-header .custom-logo-link { min-width: 11rem; }
  .desktop-header .brand__mark { flex-basis: 2.65rem; width: 2.65rem; }
  .desktop-header .brand__text::before { font-size: 1.55rem; }
  .desktop-header .brand__text::after { font-size: .64rem; }
  .category-nav { display: block; }
  .product-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}
@media (max-width: 74.99rem) { .mobile-header .brand__text::after { display: none; } }

@media (min-width: 75rem) and (max-width: 81.99rem) {
  .desktop-header { grid-template-columns: minmax(10rem,1fr) minmax(20rem,32rem) minmax(10rem,1fr); gap: 1.5rem; }
  .desktop-header .brand__text::after { display: none; }
  .category-nav > ul > li > a { padding-inline: .6rem; font-size: .8rem; }
}
