/* Several — Decor Catalog v1.0.0. All selectors scoped to the plugin. */
.scg-root, .scg-root *, .scg-lightbox, .scg-lightbox * { box-sizing: border-box; }
.scg-root { --scg-ink:#191c1b; --scg-muted:#747974; --scg-line:#e3e5e1; color:var(--scg-ink); font-family:inherit; width:100%; max-width:1520px; margin-inline:auto; padding:16px 0 38px; }
.scg-root a { color:inherit; text-decoration:none!important; }
.scg-root button, .scg-lightbox button { font-family:inherit; cursor:pointer; }
.scg-root :focus-visible, .scg-lightbox :focus-visible { outline:2px solid #8bb4a2; outline-offset:4px; }
.scg-heading { display:flex; justify-content:space-between; align-items:end; gap:32px; margin-bottom:32px; }
.scg-eyebrow { display:flex; align-items:center; gap:12px; margin:0 0 13px!important; font-size:10px!important; font-weight:650!important; line-height:1.4!important; letter-spacing:.2em; text-transform:uppercase; color:#5d665e; }
.scg-eyebrow__dash { display:inline-block; background:#839b8d; width:26px; height:1px; }
/* 60% reduction relative to the 1.0.0 title (previous 32 / 4.2vw / 58px). */
.scg-title { margin:0!important; padding:0!important; font-weight:400!important; font-size:clamp(16px,1.68vw,23.2px)!important; letter-spacing:-.045em!important; line-height:1.09!important; color:var(--scg-ink)!important; }
.scg-intro { max-width:310px; margin:0 0 4px!important; color:var(--scg-muted)!important; font-size:13px!important; line-height:1.7!important; font-weight:400!important; }
.scg-grid { display:grid; grid-template-columns:repeat(var(--scg-columns,3),minmax(0,1fr)); gap:24px; }
.scg-card { min-width:0; margin:0!important; padding:0!important; position:relative; overflow:hidden; border:1px solid var(--scg-line); border-radius:3px; background:#fff; transition:border-color .25s ease,box-shadow .35s ease,transform .35s cubic-bezier(.2,.8,.2,1); }
.scg-card__open { display:block; overflow:hidden; color:inherit!important; background:#fff; cursor:zoom-in; }
.scg-card:hover { border-color:#c1c8c0; box-shadow:0 16px 36px -27px rgba(22,33,26,.26); transform:translateY(-2px); }
/* Covers the entire frame; the original is revealed in full only in the viewer. */
.scg-card__media { display:flex; align-items:center; justify-content:center; position:relative; isolation:isolate; aspect-ratio:16/10; background:#f4f5f1; overflow:hidden; padding:0; }
.scg-card__image { display:block!important; width:100%!important; height:100%!important; max-width:none!important; max-height:none!important; object-fit:cover!important; object-position:center center!important; position:relative; z-index:1; margin:0!important; border-radius:0!important; pointer-events:none; user-select:none; -webkit-user-drag:none; }
.scg-card__zoom-bubble { position:absolute; z-index:4; top:17px; right:17px; display:flex; align-items:center; justify-content:center; width:21.5px; height:21.5px; border-radius:50%; color:#1e2321; background:rgba(255,255,255,.50); border:1px solid rgba(255,255,255,.45); box-shadow:0 4px 15px rgba(0,0,0,.07); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px); transition:background .3s, transform .35s cubic-bezier(.16,1,.3,1); }
.scg-card__zoom-bubble svg { width:10px; height:10px; }
.scg-card__hover-label { position:absolute; z-index:3; left:22px; bottom:18px; display:flex; align-items:center; gap:14px; padding:11px 14px; color:#181b19; background:rgba(255,255,255,.93); backdrop-filter:blur(10px); -webkit-backdrop-filter:blur(10px); border:1px solid rgba(255,255,255,.85); border-radius:2px; font-size:11px; letter-spacing:.025em; transform:translateY(12px); opacity:0; transition:transform .36s cubic-bezier(.2,.8,.2,1),opacity .25s ease; pointer-events:none; }
.scg-card__details { padding:20px 21px 21px; display:flex; justify-content:space-between; align-items:center; gap:20px; min-height:78px; }
.scg-card__details-main { min-width:0; display:flex; flex-direction:column; gap:5px; }
.scg-card__name { display:block; color:#202421; font-size:16px; line-height:1.3; letter-spacing:-.015em; font-weight:500; }
.scg-card__description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; line-clamp:2; overflow:hidden; color:#7b807a; font-size:12px; line-height:1.5; font-weight:400; }
/* ORDER is a separate link: clicking it never opens the image preview. */
.scg-root .scg-card__order { display:inline-flex; flex:0 0 auto; align-items:center; justify-content:center; min-height:33px; padding:8px 15px; margin:0!important; border:1px solid #cdd5ce; border-radius:2px; background:transparent; color:#657468!important; font-family:inherit; font-size:10px; font-weight:600; line-height:1.15; letter-spacing:.15em; text-align:center; text-transform:uppercase; text-decoration:none!important; transition:color .2s ease,background .2s ease,border-color .2s ease; }
.scg-root .scg-card__order:hover, .scg-root .scg-card__order:focus-visible { background:#eef2ed; border-color:#93a695; color:#253d2c!important; }
.scg-root .scg-card__order:active { background:#dfe9df; }
.scg-card__open:hover .scg-card__zoom-bubble { transform:scale(1.06); background:rgba(255,255,255,.64); }
.scg-card__open:hover .scg-card__hover-label { opacity:1; transform:translateY(0); }
.scg-empty { font:14px/1.6 inherit; color:#777; padding:20px; background:#f5f5f5; border-radius:6px; }

/* Full screen: entire decor shown with object-fit:contain; NO zoom or pan. */
.scg-lightbox[hidden] { display:none!important; }
.scg-lightbox { position:fixed!important; z-index:2147483000!important; inset:0!important; width:100vw; height:100vh; height:100dvh; display:block; background:#111411; color:#f6f8f5; font-family:Arial,Helvetica,sans-serif; overflow:hidden; overscroll-behavior:contain; }
.scg-lightbox__scrim { position:absolute; inset:0; background:linear-gradient(135deg,#111411,#171a17 65%,#121512); backdrop-filter:blur(18px); -webkit-backdrop-filter:blur(18px); }
.scg-lightbox__layout { position:absolute; inset:0; display:grid; grid-template-rows:72px minmax(0,1fr) 74px; }
.scg-lightbox__topbar { display:flex; align-items:center; justify-content:space-between; padding:0 32px; position:relative; z-index:4; border-bottom:1px solid rgba(255,255,255,.09); gap:20px; }
.scg-lightbox__brand { display:flex; align-items:center; gap:14px; white-space:nowrap; }
.scg-lightbox__brand-label { font-size:14px; font-weight:750; letter-spacing:.23em; }
.scg-lightbox__brand-slash { color:#717d71; font-size:16px; font-weight:200; }
.scg-lightbox__brand-context { font-size:10px; letter-spacing:.19em; color:#929b92; }
.scg-lightbox__top-right { display:flex; align-items:center; gap:24px; }
.scg-lightbox__counter { font-size:11px; color:#9aa49b; letter-spacing:.13em; white-space:nowrap; }
.scg-lightbox__icon, .scg-lightbox__nav { appearance:none; -webkit-appearance:none; border:1px solid rgba(255,255,255,.18)!important; color:#e4eae5!important; background:rgba(255,255,255,.06)!important; backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px); padding:0; display:flex; align-items:center; justify-content:center; border-radius:50%; transition:background .2s,border-color .2s,transform .2s; line-height:1; }
.scg-lightbox__icon { width:44px; height:44px; flex:0 0 44px; }
.scg-lightbox__icon svg { width:20px; height:20px; }
.scg-lightbox__icon:hover, .scg-lightbox__nav:hover { background:rgba(255,255,255,.15)!important; border-color:rgba(255,255,255,.4)!important; }
.scg-lightbox__icon:active { transform:scale(.94); }
.scg-lightbox__main { position:relative; display:flex; min-height:0; min-width:0; padding:20px 93px; z-index:2; }
.scg-lightbox__stage { position:relative; width:100%; height:100%; min-height:0; min-width:0; overflow:hidden; touch-action:auto; cursor:default; border-radius:2px; user-select:none; }
.scg-lightbox__image { display:block; position:absolute; inset:0; width:100%; height:100%; max-width:none!important; max-height:none!important; object-fit:contain!important; object-position:center center; transition:opacity .28s ease; opacity:0; pointer-events:none; user-select:none; -webkit-user-drag:none; }
.scg-lightbox__stage.is-loaded .scg-lightbox__image { opacity:1; }
.scg-lightbox__loading { position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:15px; color:#879189; font-size:11px; letter-spacing:.07em; pointer-events:none; transition:opacity .2s; }
.scg-lightbox__stage.is-loaded .scg-lightbox__loading { opacity:0; }
.scg-lightbox__spinner { width:28px; height:28px; border:1px solid rgba(255,255,255,.12); border-top-color:#9fbca8; border-radius:50%; animation:scg-spin .8s linear infinite; }
@keyframes scg-spin { to { transform:rotate(360deg); } }
.scg-lightbox__nav { width:48px; height:48px; position:absolute; z-index:4; top:50%; transform:translateY(-50%); }
.scg-lightbox__nav svg { width:22px; height:22px; }
.scg-lightbox__nav:active { transform:translateY(-50%) scale(.94); }
.scg-lightbox__nav--prev { left:24px; }
.scg-lightbox__nav--next { right:24px; }
.scg-lightbox__nav[hidden] { display:none!important; }
.scg-lightbox__bottom { position:relative; z-index:4; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:13px 32px; border-top:1px solid rgba(255,255,255,.09); }
.scg-lightbox__decor-info { min-width:0; }
.scg-lightbox__decor-title { margin:0!important; padding:0!important; font-size:20px!important; font-family:Arial,Helvetica,sans-serif!important; font-weight:400!important; color:#f2f5f0!important; letter-spacing:-.025em!important; line-height:1.1!important; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
@media (max-width:1100px) {
  .scg-grid { grid-template-columns:repeat(min(2,var(--scg-columns,3)),minmax(0,1fr)); gap:18px; }
  .scg-card__hover-label { display:none; }
}
@media (max-width:650px) {
  .scg-root { padding:12px 0 26px; }
  .scg-heading { display:block; margin-bottom:24px; }
  .scg-title { font-size:16px!important; }
  .scg-intro { margin:13px 0 0!important; max-width:400px; }
  .scg-grid { grid-template-columns:1fr; gap:19px; }
  .scg-card__media { aspect-ratio:16/10; padding:0; }
  .scg-card__details { padding:18px 17px; }
  .scg-root .scg-card__order { min-height:36px; }
  .scg-card__zoom-bubble { width:19px; height:19px; top:13px; right:13px; }
  .scg-lightbox__layout { grid-template-rows:64px minmax(0,1fr) 78px; }
  .scg-lightbox__topbar { padding:0 17px; }
  .scg-lightbox__brand { gap:8px; }
  .scg-lightbox__brand-label { font-size:12px; }
  .scg-lightbox__brand-context { font-size:9px; letter-spacing:.08em; }
  .scg-lightbox__top-right { gap:9px; }
  .scg-lightbox__counter { font-size:10px; }
  .scg-lightbox__icon { width:39px; height:39px; flex-basis:39px; }
  .scg-lightbox__main { padding:12px 8px 50px; }
  .scg-lightbox__nav { top:auto; bottom:3px; transform:none; width:38px; height:38px; }
  .scg-lightbox__nav:active { transform:scale(.94); }
  .scg-lightbox__nav--prev { left:calc(50% - 52px); }
  .scg-lightbox__nav--next { right:calc(50% - 52px); }
  .scg-lightbox__bottom { flex-direction:column; justify-content:center; align-items:stretch; gap:12px; padding:12px 17px; }
  .scg-lightbox__decor-title { font-size:17px!important; }
}
@media (prefers-reduced-motion:reduce) {
  .scg-card,.scg-card__order,.scg-card__hover-label,.scg-card__zoom-bubble,.scg-lightbox__image,.scg-lightbox__icon,.scg-lightbox__nav,.scg-lightbox__loading { transition:none!important; }
  .scg-lightbox__spinner { animation-duration:2s; }
}

/* Theme-owned page heading and breadcrumbs are not part of the gallery shortcode.
   Suppress them only on the dedicated New Decors page (body class set in PHP).
   Styles are deliberately scoped to avoid changing other WordPress pages. */
body.scg-gallery-page .page-title,
body.scg-gallery-page .page-title-section,
body.scg-gallery-page .page-title-wrap,
body.scg-gallery-page .wd-page-title,
body.scg-gallery-page .xts-page-title,
body.scg-gallery-page .entry-header .entry-title,
body.scg-gallery-page .site-main > .page-header,
body.scg-gallery-page .breadcrumbs,
body.scg-gallery-page .breadcrumb,
body.scg-gallery-page .breadcrumb-trail,
body.scg-gallery-page .wd-breadcrumbs,
body.scg-gallery-page nav[aria-label="breadcrumb"],
body.scg-gallery-page .site-content .breadcrumbs,
body.scg-gallery-page .page-title-bar,
body.scg-gallery-page .woocommerce-breadcrumb,
body.scg-gallery-page .elementor-widget-theme-post-title,
body.scg-gallery-page .elementor-widget-breadcrumbs,
body.scg-gallery-page .rank-math-breadcrumb,
body.scg-gallery-page .yoast-breadcrumb {
  display:none!important;
}

/* Category navigation. Filtered cards disappear from the layout. */
.scg-root .scg-filterbar{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin:0 0 26px!important;padding:2px 0 18px;border-bottom:1px solid #e5e7e4}
.scg-root .scg-filter{appearance:none!important;background:#fff!important;color:#555e57!important;border:1px solid #d7dcd7!important;border-radius:2px!important;font:500 11px/1.4 Arial,Helvetica,sans-serif!important;letter-spacing:.045em;padding:11px 16px!important;min-height:40px;transition:color .2s,background .2s,border-color .2s;cursor:pointer}
.scg-root .scg-filter:hover{border-color:#70747a!important;color:#34373d!important}
.scg-root .scg-filter[aria-pressed="true"]{background:#404349!important;color:#fff!important;border-color:#404349!important}
.scg-root .scg-count{font-size:10px;opacity:.55;margin-left:5px}
.scg-root .scg-card[hidden]{display:none!important}
.scg-root .scg-nothing{color:#767c78;font-size:14px;margin:18px 0}
.scg-root .scg-nothing[hidden]{display:none!important}
body.scg-catalog-page .page-title,body.scg-catalog-page .entry-title,body.scg-catalog-page .woocommerce-breadcrumb,body.scg-catalog-page .breadcrumbs{display:none!important}
@media(max-width:650px){.scg-root .scg-filterbar{flex-wrap:nowrap;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:14px}.scg-root .scg-filter{flex:0 0 auto;font-size:10px!important;padding:9px 12px!important}}
