/* The content remains native, editable WordPress blocks. */
#textures.giselle-texture-explorer {
  --gte-ink: #4c382d;
  --gte-muted: #6c6252;
  --gte-green: #dce5d4;
  --gte-paper: #fffaf1;
  box-sizing: border-box;
  background: #e8eddf;
  color: var(--gte-ink);
  font-family: Inter, "Segoe UI", Arial, sans-serif;
  padding: 58px clamp(20px, 5vw, 88px) 48px;
  scroll-margin-top: 100px;
}
#textures.giselle-texture-explorer *,
#textures.giselle-texture-explorer *::before,
#textures.giselle-texture-explorer *::after { box-sizing: border-box; }
#textures .gte-inner { max-width: 1180px; margin: 0 auto; }
#textures.giselle-texture-explorer p, #textures.giselle-texture-explorer a { font-family: inherit; }
#textures .gte-eyebrow { margin: 0 0 8px; color: #655638; font-size: 12px; line-height: 1.5; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
#textures .gte-title { margin: 0; color: var(--gte-ink); font-size: clamp(30px, 3.5vw, 44px); line-height: 1.2; font-weight: 700; }
#textures .gte-title, #textures .gte-name { font-family: ui-rounded, "Arial Rounded MT Bold", "Segoe Print", "Comic Sans MS", sans-serif; }
#textures .gte-intro { margin: 12px 0 24px; font-size: 16px; line-height: 1.6; color: var(--gte-muted); }
#textures .gte-tabs { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 9px; margin: 0 0 22px; padding: 3px; }
#textures .gte-tabs .wp-block-button { width: 100%; margin: 0; }
#textures .gte-tabs a.wp-block-button__link { display: flex; align-items: center; justify-content: center; min-height: 48px; width: 100%; padding: 10px 12px; border: 1px solid #b9c5ad; border-radius: 16px; background: #f5f7ee; color: var(--gte-ink); box-shadow: none; font-size: 15px; font-weight: 700; line-height: 1.35; text-decoration: none; transition: background .18s ease, color .18s ease, border-color .18s ease; }
#textures .gte-tabs a:hover { background: #fffaf1; border-color: #738263; }
#textures .gte-tabs a.is-active { background: var(--gte-ink); color: #fffaf1; border-color: var(--gte-ink); }
#textures a:focus-visible, #textures button:focus-visible, #textures .gte-panel:focus-visible { outline: 3px solid #8b632e; outline-offset: 4px; }
#textures .gte-panels { position: relative; margin: 0; }
#textures.gte-enhanced .gte-panels { overflow: hidden; border-radius: 26px; touch-action: pan-y pinch-zoom; cursor: grab; }
#textures.gte-enhanced .gte-panels img { -webkit-user-drag: none; }
#textures.gte-is-dragging .gte-panels { cursor: grabbing; user-select: none; -webkit-user-select: none; }
#textures .gte-gesture-hint { margin: -6px 0 12px; color: #655f50; font-size: 13px; line-height: 1.5; }
#textures .gte-panel { margin: 0 0 22px; padding: 0; border: 1px solid #d2d9c7; border-radius: 26px; background: var(--gte-paper); overflow: hidden; box-shadow: 0 9px 28px #3c40260a; }
#textures.gte-enhanced .gte-panel { margin-bottom: 0; }
#textures .gte-panel[hidden] { display: none !important; }
#textures .gte-layout { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 0; margin: 0; }
#textures .gte-visual { margin: 0; min-width: 0; min-height: 460px; position: relative; background: #d3d9ca; }
#textures .gte-visual figure { height: 100%; margin: 0; }
#textures .gte-visual img { position: absolute; inset: 0; display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
#textures .gte-copy { align-self: center; min-width: 0; margin: 0; padding: 30px 34px 28px; }
#textures .gte-kicker { margin: 0 0 6px; color: #74613d; font-size: 11px; line-height: 1.5; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
#textures .gte-name { margin: 0 0 10px; color: var(--gte-ink); font-size: clamp(25px, 2.6vw, 34px); line-height: 1.2; }
#textures .gte-description { margin: 0 0 18px; color: var(--gte-muted); font-size: 16px; line-height: 1.55; }
#textures .gte-label { margin: 14px 0 8px; color: #6c604a; font-size: 11px; font-weight: 800; line-height: 1.4; letter-spacing: .09em; text-transform: uppercase; }
#textures .gte-subtypes { margin: 0; display: flex; flex-wrap: wrap; gap: 7px; }
#textures .gte-subtypes .wp-block-button { margin: 0; }
#textures .gte-subtypes a.wp-block-button__link { display: inline-flex; align-items: center; min-height: 36px; padding: 7px 11px; border: 1px solid #d3dcc9; border-radius: 11px; background: #edf1e5; color: #463c2d; font-size: 13px; line-height: 1.4; font-weight: 600; box-shadow: none; text-decoration: none; }
#textures .gte-subtypes a:hover { background: #dce5d4; border-color: #8b9b7d; }
#textures .gte-specific { margin: 0; color: var(--gte-muted); font-size: 13px; line-height: 1.9; }
#textures .gte-specific a { color: #635131; text-decoration: underline; text-underline-offset: 3px; }
#textures .gte-cta { margin: 22px 0 0; }
#textures .gte-cta a.wp-block-button__link { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; background: var(--gte-ink); color: var(--gte-paper); padding: 11px 20px; border: 1px solid var(--gte-ink); border-radius: 14px; font-size: 15px; line-height: 1.5; font-weight: 700; text-decoration: none; box-shadow: none; }
#textures .gte-cta a:hover { background: #6b503b; }
#textures .gte-controls { display: flex; align-items: center; justify-content: space-between; gap: 18px; margin: 16px 0 0; }
#textures .gte-controls button { display: inline-flex; align-items: center; justify-content: center; gap: 9px; min-height: 44px; padding: 9px 16px; border: 1px solid #b8c4ac; border-radius: 13px; background: #f7f8f0; color: var(--gte-ink); font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
#textures .gte-controls button:hover { background: #fffaf1; border-color: #738263; }
#textures .gte-count { color: #5b624c; font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }
#textures .gte-footer { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px; margin: 25px 0 0; padding-top: 20px; border-top: 1px solid #c8d1bc; }
#textures .gte-footer p { margin: 0; color: #655f50; font-size: 13px; line-height: 1.65; }
#textures .gte-footer a { color: var(--gte-ink); font-weight: 700; text-decoration: underline; text-underline-offset: 4px; }
@media (max-width: 782px) {
  #textures.giselle-texture-explorer { padding: 34px 20px 32px; }
  #textures .gte-title { font-size: 31px; }
  #textures .gte-tabs { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 8px; }
  #textures .gte-tabs a.wp-block-button__link { min-height: 46px; font-size: 13px; padding: 9px 10px; border-radius: 13px; }
  #textures .gte-layout { grid-template-columns: 1fr; }
  #textures .gte-panel { border-radius: 22px; }
  #textures.gte-enhanced .gte-panels { border-radius: 22px; }
  #textures .gte-visual { min-height: 0; height: clamp(210px, 58vw, 340px); }
  #textures .gte-visual img { min-height: 0; height: 100%; max-height: none; }
  #textures .gte-copy { padding: 24px 22px 26px; }
  #textures .gte-name { font-size: 28px; }
  #textures .gte-description { font-size: 15px; }
  #textures .gte-subtypes a.wp-block-button__link { min-height: 40px; }
  #textures .gte-footer { align-items: flex-start; }
}
/* Existing brand blocks keep their native WordPress editing controls. */
#brands.giselle-stock-makers > .wp-block-columns {
  display: flex !important;
  flex-wrap: nowrap !important;
  align-items: stretch;
  gap: 20px;
  overflow-x: auto;
  overflow-y: hidden;
  scroll-snap-type: x mandatory;
  scroll-padding-inline: 2px;
  overscroll-behavior-x: contain;
  touch-action: pan-x pan-y pinch-zoom;
  padding: 2px 2px 14px;
  scrollbar-width: thin;
  scrollbar-color: #94715d #f6e9dc;
}
#brands.giselle-stock-makers > .wp-block-columns > .wp-block-column {
  flex: 0 0 calc((100% - 40px) / 3) !important;
  min-width: 0;
  margin: 0;
  scroll-snap-align: start;
}
#brands.giselle-stock-makers .giselle-stock-maker { display: flex; flex-direction: column; height: 100%; box-sizing: border-box; background: #fff8f0; border-radius: 24px; padding: 16px 16px 18px; }
#brands.giselle-stock-makers .giselle-stock-maker > figure { flex: none; margin: 0; }
#brands.giselle-stock-makers .giselle-stock-maker > figure img { display: block; width: 100%; aspect-ratio: 4 / 3; object-fit: cover; border-radius: 14px; -webkit-user-drag: none; }
#brands.giselle-stock-makers .giselle-stock-maker > h3 { margin: 16px 0 10px; color: #4c382d; font-size: clamp(1.35rem, 2.2vw, 1.85rem); line-height: 1.18; }
#brands.giselle-stock-makers .giselle-stock-maker > p { margin: 0 0 16px; color: #5b3a2f; line-height: 1.6; }
#brands.giselle-stock-makers .giselle-stock-maker > .wp-block-buttons { margin-top: auto; padding-top: 4px; }
#brands.giselle-stock-makers .giselle-stock-maker .wp-block-button__link { background: transparent; color: #5b3a2f; border: 1px solid #795340; border-radius: 999px; padding: 10px 16px; font-size: .9rem; text-decoration: none; }
#brands.giselle-stock-makers .giselle-stock-maker .wp-block-button__link:hover { background: #e8eddf; }
#brands.gsb-enhanced .gsb-track { cursor: grab; }
#brands.gsb-dragging .gsb-track { cursor: grabbing; user-select: none; -webkit-user-select: none; }
#brands .gsb-hint { margin: 12px auto 10px; max-width: var(--wp--style--global--wide-size, 1280px); color: #5b3a2f; font-size: 13px; line-height: 1.5; }
#brands .gsb-controls { display: flex; align-items: center; justify-content: space-between; gap: 16px; max-width: var(--wp--style--global--wide-size, 1280px); margin: 8px auto 0; }
#brands .gsb-controls button { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; padding: 10px 16px; color: #4c382d; background: #fff8f0; border: 1px solid #967461; border-radius: 14px; font: inherit; font-size: 13px; font-weight: 700; cursor: pointer; }
#brands .gsb-controls button:hover:not(:disabled) { background: #f5f7ee; }
#brands .gsb-controls button:disabled { opacity: .4; cursor: default; }
#brands .gsb-count { color: #5b3a2f; font-size: 13px; font-weight: 700; font-variant-numeric: tabular-nums; }
#brands .gsb-controls[hidden], #brands .gsb-hint[hidden] { display: none !important; }
#brands .gsb-empty { max-width: var(--wp--style--global--wide-size, 1280px); margin: 20px auto; padding: 22px; border-radius: 18px; background: #fff8f0; color: #5b3a2f; line-height: 1.6; }
#brands .gsb-empty[hidden] { display: none !important; }
#brands .gsb-track:focus-visible, #brands .gsb-controls button:focus-visible { outline: 3px solid #635131; outline-offset: 4px; }
@media (max-width: 1000px) and (min-width: 601px) {
  #brands.giselle-stock-makers > .wp-block-columns > .wp-block-column { flex-basis: calc((100% - 20px) / 2) !important; }
}
@media (max-width: 600px) {
  #brands.giselle-stock-makers > .wp-block-columns { gap: 14px; }
  #brands.giselle-stock-makers > .wp-block-columns > .wp-block-column { flex-basis: 86% !important; }
}
@media (prefers-reduced-motion: reduce) {
  #brands.giselle-stock-makers > .wp-block-columns { scroll-behavior: auto !important; }
}
@media (prefers-reduced-motion: reduce) {
  #textures.giselle-texture-explorer *, #textures.giselle-texture-explorer *::before, #textures.giselle-texture-explorer *::after { transition: none !important; animation: none !important; scroll-behavior: auto !important; }
}
