/* GiftSazan V71.25
   Full-bleed image blocks + global occasion / semantic taxonomy bars.
   Principle: every media box is filled completely; arbitrary source ratios are cropped safely without distortion. */

/* ---------- Full-bleed image blocks ---------- */
.gs-v721-storefront img{max-width:100%;}

/* Product cards keep the same visual slot and fill it edge-to-edge. */
.gs-v721-storefront .product-card-media{
  position:relative;display:flex!important;align-items:center;justify-content:center;
  width:100%;aspect-ratio:1/1;overflow:hidden;background:#fff;
}
.gs-v721-storefront .product-card-media .product-card-image,
.gs-v721-storefront img.product-card-image{
  display:block;width:100%!important;height:100%!important;max-height:100%!important;
  object-fit:cover!important;object-position:center!important;
}

/* Product detail gallery. */
.gs-v721-storefront img.main-image{
  display:block;width:100%!important;aspect-ratio:1/1!important;height:auto!important;max-height:min(72vh,680px)!important;
  object-fit:cover!important;object-position:center!important;background:#fff;padding:0!important;
}
.gs-v721-storefront img.thumb-image{
  display:block;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;background:#fff;
}

/* Category hero/bottom graphics: fixed responsive slot, full image visible. */
.gs-v721-storefront .gs-category-hero{display:flex;align-items:center;justify-content:center;overflow:hidden!important;}
.gs-v721-storefront .gs-category-hero .category-hero-image,
.gs-v721-storefront img.category-hero-image{
  display:block;width:100%!important;height:clamp(220px,32vw,420px)!important;min-height:0!important;
  object-fit:cover!important;object-position:center!important;background:#fff;
}
.gs-v721-storefront img.category-bottom-image{
  display:block;width:100%!important;height:clamp(220px,32vw,420px)!important;
  object-fit:cover!important;object-position:center!important;background:#fff;
}

/* Header/menu and current V71 visual modules. */
.gs-v721-storefront .gs-menu-thumb{display:flex!important;align-items:center;justify-content:center;overflow:hidden;background:#fff;}
.gs-v721-storefront .gs-menu-thumb img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;}
.gs-v721-storefront .gs-v721-inner-hero__media,
.gs-v721-storefront .gs-v721-category-media,
.gs-v721-storefront .gs-v721-exhibition-gift-media,
.gs-v721-storefront .gs-v721-blog-hero-media,
.gs-v721-storefront .gs-blog-list-media{
  overflow:hidden!important;display:flex;align-items:center;justify-content:center;background:#fff;
}
.gs-v721-storefront .gs-v721-inner-hero__media img,
.gs-v721-storefront .gs-v721-category-media img,
.gs-v721-storefront .gs-v721-exhibition-gift-media img,
.gs-v721-storefront .gs-v721-blog-hero-media img,
.gs-v721-storefront .gs-blog-list-media img,
.gs-v721-storefront .gs-v721-occasion-card img,
.gs-v721-storefront .gs-v721-org-card img,
.gs-v721-storefront .gs-v721-hero-art img{
  width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;
}
.gs-v721-storefront img.object-fit-contain,
.gs-v721-storefront .gs-object-contain{object-fit:cover!important;object-position:center!important;}
.gs-v721-storefront img.img-fluid.rounded.border{object-fit:cover!important;object-position:center!important;background:#fff;}

/* ---------- Global occasion bar ---------- */
.gs-global-occasion-bar{
  position:relative;z-index:996;border-bottom:1px solid rgba(122,37,82,.10);
  background:linear-gradient(90deg,#fff8fb 0%,#fff 50%,#fff8fb 100%);
}
.gs-global-occasion-inner{display:flex;align-items:center;gap:14px;min-height:48px;}
.gs-global-occasion-title{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;text-decoration:none!important;
  font-weight:800;color:#7a2552;white-space:nowrap;
}
.gs-global-occasion-scroll{
  min-width:0;display:flex;align-items:center;gap:8px;overflow-x:auto;overscroll-behavior-inline:contain;
  scrollbar-width:none;padding:6px 0;
}
.gs-global-occasion-scroll::-webkit-scrollbar{display:none;}
.gs-global-occasion-scroll a{
  flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;padding:7px 11px;border-radius:999px;
  border:1px solid rgba(122,37,82,.12);background:#fff;color:#4c2940;text-decoration:none!important;
  font-size:13px;font-weight:650;white-space:nowrap;transition:.18s ease;
}
.gs-global-occasion-scroll a:hover{border-color:rgba(122,37,82,.35);box-shadow:0 6px 16px rgba(122,37,82,.08);transform:translateY(-1px);}
.gs-global-occasion-scroll small{font-size:10px;color:#8f7284;}

/* ---------- Global semantic taxonomy bar ---------- */
.gs-global-taxonomy-bar{position:relative;z-index:995;background:#fff;border-bottom:1px solid #f0e6ec;box-shadow:0 5px 18px rgba(46,20,36,.035);}
.gs-global-taxonomy-inner{display:flex;align-items:center;gap:14px;min-height:50px;}
.gs-global-taxonomy-title{flex:0 0 auto;display:inline-flex;align-items:center;gap:7px;color:#222;text-decoration:none!important;font-size:13px;font-weight:800;white-space:nowrap;}
.gs-global-taxonomy-groups{min-width:0;display:flex;align-items:center;gap:6px;overflow:visible;}
.gs-taxonomy-group{position:relative;flex:0 0 auto;}
.gs-taxonomy-group summary{
  list-style:none;cursor:pointer;display:flex;align-items:center;gap:6px;padding:7px 10px;border-radius:10px;
  color:#493641;background:#faf8f9;border:1px solid transparent;font-size:13px;font-weight:650;white-space:nowrap;
}
.gs-taxonomy-group summary::-webkit-details-marker{display:none;}
.gs-taxonomy-group summary::after{content:'⌄';font-size:12px;line-height:1;color:#8e7584;}
.gs-taxonomy-group summary span{font-size:10px;color:#9d8794;font-weight:500;}
.gs-taxonomy-group[open] summary,.gs-taxonomy-group summary:hover{background:#fff3f8;border-color:rgba(122,37,82,.14);color:#7a2552;}
.gs-taxonomy-panel{
  position:absolute;top:calc(100% + 8px);right:0;width:min(520px,82vw);max-height:330px;overflow:auto;
  display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:6px;padding:12px;border-radius:16px;
  background:#fff;border:1px solid #eee2e8;box-shadow:0 18px 46px rgba(56,24,43,.15);
}
.gs-taxonomy-panel a{display:flex;align-items:center;justify-content:space-between;gap:9px;padding:8px 10px;border-radius:10px;color:#3e3038;text-decoration:none!important;font-size:12px;}
.gs-taxonomy-panel a:hover{background:#fff2f7;color:#7a2552;}
.gs-taxonomy-panel small{font-size:10px;color:#a08a96;}

@media (max-width:1199.98px){
  .gs-global-taxonomy-groups{flex-wrap:wrap;padding:6px 0;}
}
@media (max-width:767.98px){
  .gs-global-occasion-inner,.gs-global-taxonomy-inner{padding-left:12px;padding-right:12px;gap:9px;}
  .gs-global-occasion-title span,.gs-global-taxonomy-title span{font-size:12px;}
  .gs-global-taxonomy-inner{align-items:flex-start;flex-direction:column;padding-top:8px;padding-bottom:8px;}
  .gs-global-taxonomy-groups{width:100%;display:flex;flex-wrap:wrap;overflow:visible;}
  .gs-taxonomy-group{position:static;}
  .gs-taxonomy-panel{position:fixed;z-index:1100;right:12px;left:12px;top:auto;width:auto;max-height:45vh;grid-template-columns:1fr;}
  .gs-v721-storefront .gs-category-hero .category-hero-image,
  .gs-v721-storefront img.category-hero-image,
  .gs-v721-storefront img.category-bottom-image{height:260px!important;}
}


/* V71.25: no white gutters inside media blocks. */
.gs-v721-storefront .gs-v721-category-media,
.gs-v721-storefront .gs-v721-exhibition-gift-media,
.gs-v721-storefront .gs-v721-inner-hero__media,
.gs-v721-storefront .gs-v721-blog-hero-media,
.gs-v721-storefront .gs-blog-list-media,
.gs-v721-storefront .product-card-media{padding:0!important;}
.gs-v721-storefront .gs-v721-category-media img,
.gs-v721-storefront .gs-v721-exhibition-gift-media img,
.gs-v721-storefront .gs-v721-inner-hero__media img,
.gs-v721-storefront .gs-v721-blog-hero-media img,
.gs-v721-storefront .gs-blog-list-media img,
.gs-v721-storefront .gs-v721-occasion-card img,
.gs-v721-storefront .gs-v721-org-card img,
.gs-v721-storefront .gs-v721-hero-art img,
.gs-v721-storefront .product-card-media img,
.gs-v721-storefront .thumb-image{width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;padding:0!important;}
.gs-v721-storefront .thumb-image{aspect-ratio:1/1!important;}
