
/* Trendy-Maik Design Update v1.2.1 */
.tga-banner,.tga-modal{
  --tga-gold:#d9b055;
  --tga-gold-strong:#efc76a;
  --tga-gold-soft:rgba(217,176,85,.16);
  --tga-panel:#f5f3ee;
  --tga-panel-2:#f0ede6;
  --tga-ink:#18202b;
  --tga-muted:#53606e;
  --tga-border:rgba(217,176,85,.28);
  --tga-shadow:0 18px 45px rgba(0,0,0,.28);
  font-family:inherit;
}
.tga-banner{position:relative;overflow:hidden;box-sizing:border-box;width:100%;margin:14px 0 36px;padding:clamp(22px,3vw,34px);border:1px solid var(--tga-border);border-radius:24px;background:linear-gradient(180deg,rgba(19,19,20,.98) 0%,rgba(10,10,11,.98) 100%);color:#fff;box-shadow:0 10px 30px rgba(0,0,0,.22);display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:20px 30px;clear:both}
.tga-banner:before{content:"";position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,rgba(239,199,106,.58),rgba(239,199,106,0),rgba(239,199,106,.24));-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;pointer-events:none}
.tga-banner-glow{position:absolute;right:-90px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,rgba(217,176,85,.24) 0%,rgba(217,176,85,.08) 35%,rgba(217,176,85,0) 72%);pointer-events:none}
.tga-banner-head{position:relative;z-index:1;display:flex;align-items:flex-start;gap:18px;min-width:0}
.tga-banner-head>div{min-width:0}
.tga-box-icon{display:grid;place-items:center;flex:0 0 56px;height:56px;border:1px solid rgba(239,199,106,.35);border-radius:18px;background:linear-gradient(180deg,rgba(217,176,85,.18),rgba(217,176,85,.08));color:var(--tga-gold-strong);font-size:28px;line-height:1;box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}
.tga-eyebrow{display:block;margin:0 0 8px!important;color:var(--tga-gold-strong);font-size:.74rem!important;font-weight:800!important;letter-spacing:.15em;line-height:1.35;text-transform:uppercase}
.tga-banner-head strong{display:block;color:#fff;font-size:clamp(1.2rem,2vw,1.55rem);font-weight:800;line-height:1.25}
.tga-banner-head p{margin:8px 0 0!important;color:rgba(255,255,255,.84);font-size:1rem;line-height:1.65;max-width:36rem}
.tga-banner .tga-button{grid-column:2;grid-row:1;position:relative;z-index:1}
.tga-note{grid-column:1/-1;color:rgba(255,255,255,.68);font-size:.8rem;line-height:1.45;margin:-3px 0 0!important;position:relative;z-index:1}
.tga-button,.tga-panel button.tga-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:52px;max-width:100%;border:1px solid rgba(239,199,106,.22)!important;border-radius:14px!important;padding:13px 22px!important;background:linear-gradient(180deg,var(--tga-gold-strong),var(--tga-gold))!important;color:#181410!important;box-shadow:0 10px 24px rgba(0,0,0,.18),inset 0 1px 0 rgba(255,255,255,.35);font:inherit;font-size:1rem!important;font-weight:800!important;line-height:1.35!important;text-decoration:none!important;text-align:center;cursor:pointer;white-space:normal;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease}
.tga-button:hover,.tga-button:focus-visible{filter:brightness(1.03);transform:translateY(-1px);box-shadow:0 14px 28px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.35);color:#181410!important}
.tga-button:disabled{opacity:.55;cursor:wait;transform:none;box-shadow:none}
.tga-modal[hidden]{display:none!important}
.tga-modal{position:fixed;inset:0;z-index:999999;display:flex;align-items:center;justify-content:center;box-sizing:border-box;padding:14px}
.tga-backdrop{position:absolute;inset:0;background:rgba(5,8,12,.82);backdrop-filter:blur(5px)}
.tga-panel{box-sizing:border-box;position:relative;z-index:1;max-width:680px;width:100%;max-height:calc(100dvh - 28px);overflow-y:auto;overscroll-behavior:contain;border:1px solid var(--tga-border);border-radius:26px;background:linear-gradient(180deg,var(--tga-panel) 0%,#f8f7f3 100%);color:var(--tga-muted);padding:clamp(22px,3.4vw,38px);box-shadow:0 25px 90px rgba(0,0,0,.32);outline:none}
.tga-panel:before{content:"";position:absolute;left:0;right:0;top:0;height:6px;border-radius:26px 26px 0 0;background:linear-gradient(90deg,var(--tga-gold),var(--tga-gold-strong),var(--tga-gold))}
.tga-panel .tga-eyebrow{margin:0 52px 8px 0!important}
.tga-panel h2{color:var(--tga-ink)!important;font-size:clamp(1.45rem,2.5vw,2rem)!important;font-weight:800!important;line-height:1.22!important;margin:0 48px 12px 0!important;letter-spacing:-.02em}
.tga-panel>p{font-size:.98rem;line-height:1.65;margin:0 0 18px;color:var(--tga-muted)}
.tga-close,.tga-panel button.tga-close{position:absolute;top:16px;right:16px;display:grid;place-items:center;width:44px;height:44px;min-height:0;padding:0!important;border:1px solid rgba(0,0,0,.09)!important;border-radius:50%;background:rgba(255,255,255,.45)!important;color:var(--tga-ink)!important;font:inherit;font-size:28px;line-height:1;cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.06)}
.tga-close:hover,.tga-close:focus-visible{background:#fff!important}
.tga-summary{background:linear-gradient(180deg,var(--tga-panel-2),#ece8df);border:1px solid rgba(0,0,0,.07);border-radius:18px;padding:18px 18px 16px;margin:18px 0 24px;box-shadow:inset 0 1px 0 rgba(255,255,255,.55)}
.tga-summary-row{display:flex;justify-content:space-between;align-items:baseline;gap:15px;padding:11px 0;border-bottom:1px solid rgba(0,0,0,.08);font-size:.96rem;line-height:1.45}
.tga-summary-row:first-child{padding-top:0}
.tga-summary-row:last-of-type{border-bottom:0;padding-bottom:0}
.tga-summary-row span{color:var(--tga-muted)}
.tga-summary-row strong{color:var(--tga-ink);font-size:1.02rem;font-weight:800;text-align:right;overflow-wrap:anywhere}
.tga-summary-row:nth-child(3) strong{font-size:clamp(1.16rem,2vw,1.62rem);color:#1565c0}
.tga-summary small{display:block;color:#5d6772;font-size:.82rem;line-height:1.55;margin-top:13px}
.tga-panel form{margin:0}
.tga-panel label{display:block;color:var(--tga-ink);font-size:.92rem;font-weight:700;line-height:1.5;margin:0 0 14px}
.tga-panel input:not([type=checkbox]),.tga-panel textarea{box-sizing:border-box;display:block;width:100%;max-width:100%;min-height:48px;margin:6px 0 0;padding:12px 14px;border:1px solid rgba(24,32,43,.18);border-radius:12px;background:#fff;color:var(--tga-ink);box-shadow:inset 0 1px 1px rgba(0,0,0,.02);font:inherit;font-size:.98rem;line-height:1.45}
.tga-panel textarea{min-height:96px;resize:vertical}
.tga-panel input:focus,.tga-panel textarea:focus{border-color:var(--tga-gold);outline:2px solid rgba(217,176,85,.25);outline-offset:0}
.tga-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}
.tga-panel .tga-check{display:flex;gap:10px;align-items:flex-start;font-size:.87rem;font-weight:500;color:var(--tga-muted)}
.tga-panel .tga-check input{flex:0 0 auto;margin:4px 0 0}
.tga-panel .tga-check a{color:#9d6b00;text-decoration:underline}
.tga-panel .tga-hint{margin:6px 0 18px;padding:12px 14px;border-left:4px solid var(--tga-gold);border-radius:0 10px 10px 0;background:rgba(217,176,85,.08);color:#5b6673;font-size:.84rem;line-height:1.6}
.tga-honeypot{position:absolute!important;left:-9999px;opacity:0!important;width:1px!important;height:1px!important}
.tga-result{font-weight:700;color:#2d5d9f!important;margin:10px 0!important}
.tga-panel form>.tga-button{width:100%;margin-top:6px}
.tga-open{overflow:hidden}
@media(max-width:840px){
  .tga-banner{grid-template-columns:minmax(0,1fr)}
  .tga-banner .tga-button{grid-column:1;grid-row:auto;width:100%}
  .tga-note{margin:-8px 0 0!important}
}
@media(max-width:550px){
  .tga-panel{padding:24px 18px 20px;border-radius:22px}
  .tga-panel:before{border-radius:22px 22px 0 0}
  .tga-grid{grid-template-columns:1fr;gap:0}
  .tga-banner{padding:20px 18px;gap:18px;border-radius:22px}
  .tga-banner-head{gap:14px}
  .tga-box-icon{height:46px;flex-basis:46px;font-size:24px;border-radius:15px}
  .tga-banner-head strong{font-size:clamp(1.12rem,6vw,1.35rem)}
  .tga-banner-head p{font-size:.98rem;line-height:1.58}
  .tga-summary-row{font-size:.88rem;align-items:flex-start}
  .tga-summary-row strong{font-size:.95rem}
  .tga-summary-row:nth-child(3) strong{font-size:1.35rem}
  .tga-close,.tga-panel button.tga-close{top:14px;right:14px;width:42px;height:42px}
  .tga-note{font-size:.76rem}
}


/* v1.2.3 – native category navigation for the JTL piercing catalog */
.tga-category-panel{box-sizing:border-box;margin:28px 0 23px;padding:clamp(18px,3vw,28px);border:1px solid rgba(232,190,101,.36);border-radius:20px;background:linear-gradient(155deg,#171717,#101010);box-shadow:0 14px 35px rgba(0,0,0,.14);color:#f5f0e8}
.tga-category-panel *{box-sizing:border-box}
.tga-category-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;margin-bottom:19px}
.tga-category-eyebrow{display:block;margin-bottom:5px;color:#efc76a;font-size:.7rem;letter-spacing:.16em;font-weight:800}
.tga-category-heading h2{margin:0 0 6px!important;color:#f4d18a!important;font-size:clamp(1.35rem,3vw,1.85rem)!important;line-height:1.3!important}
.tga-category-heading p{margin:0!important;color:#d8d1c5;font-size:.9rem;line-height:1.5}
.tga-category-tag{flex:0 0 auto;padding:7px 11px;border:1px solid rgba(239,199,106,.27);border-radius:100px;color:#e7cf9b;background:rgba(239,199,106,.07);font-size:.72rem;font-weight:700}
.tga-category-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}
.tga-category-item{display:flex;align-items:center;justify-content:space-between;gap:8px;min-height:62px;padding:13px 13px;background:#242324;border:1px solid #5d4a2e;border-radius:12px;color:#f5ece0!important;text-decoration:none!important;line-height:1.26;font-size:.89rem;font-weight:700;transition:border-color .15s,background .15s,transform .15s}
.tga-category-item:hover,.tga-category-item:focus-visible{border-color:#f1cd7d;background:#302a22;transform:translateY(-1px)}
.tga-category-item.is-active{background:linear-gradient(140deg,#f0ca7a,#d9aa50);border-color:#f5d48d;color:#1a160f!important;box-shadow:0 3px 14px rgba(217,176,85,.18)}
.tga-category-item small{flex:0 0 auto;font-size:.77rem;font-weight:600;color:#e4ca93;opacity:.92}
.tga-category-item.is-active small{color:#3a2a11}
.tga-category-sub{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:15px;padding:13px 0 3px;border-top:1px solid rgba(239,199,106,.18)}
.tga-category-subtitle{margin-right:4px;color:#efd499;font-size:.82rem;font-weight:750}
.tga-category-subitem{display:inline-flex;align-items:center;gap:7px;min-height:35px;padding:6px 11px;background:#262321;border:1px solid #584630;border-radius:100px;color:#f5ead7!important;text-decoration:none!important;font-size:.82rem;font-weight:650;line-height:1.35}
.tga-category-subitem:hover,.tga-category-subitem:focus-visible{border-color:#efc76a;background:#302920;color:#fff!important}
.tga-category-subitem.is-active{background:#d9b055;border-color:#ebca82;color:#20180d!important}
.tga-category-subitem small{font-size:.73rem;opacity:.78}
.tga-category-more{border-top:1px solid rgba(239,199,106,.18);margin-top:15px;padding-top:13px;color:#f4d18a}
.tga-category-more>summary{cursor:pointer;font-size:.88rem;font-weight:750;color:#e9c16f;list-style:none}
.tga-category-more>summary::-webkit-details-marker{display:none}
.tga-category-more>summary span{margin-left:6px}
.tga-category-more[open]>summary span{display:inline-block;transform:rotate(180deg)}
.tga-category-extra{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.tm-stock-grid-wrap .tm-stock-search{display:flex;gap:9px;flex-wrap:wrap;margin:0 0 22px}
.tm-stock-grid-wrap .tm-stock-search input[name="tm_s"]{box-sizing:border-box;flex:1 1 220px;min-width:0;width:auto;border:1px solid rgba(239,199,106,.42);border-radius:12px;background:#f9f7f2;color:#1f1b16}
.tm-stock-grid-wrap .tm-stock-search button{border-radius:12px;background:linear-gradient(180deg,#f0c97b,#d9ad55);font-weight:800}
@media(max-width:900px){.tga-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.tga-category-heading{display:block}.tga-category-tag{display:inline-block;margin-top:11px}.tga-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.tga-category-panel{border-radius:18px;margin:22px 0 18px;padding:17px 13px}.tga-category-item{min-height:57px;padding:11px 10px;font-size:.84rem}.tga-category-item small{font-size:.72rem}.tga-category-subtitle{width:100%;margin-bottom:2px}.tm-stock-grid-wrap .tm-stock-search{gap:8px}}
@media(prefers-reduced-motion:reduce){.tga-category-item{transition:none}.tga-category-item:hover{transform:none}}

/* HBJ manufacturer references (also loaded on WooCommerce single-product pages). */
.single-product .tga-hbj-ref{clear:both;max-width:100%;margin:16px 0 20px;padding:14px 16px;background:linear-gradient(160deg,#1a1a1a,#111);border:1px solid rgba(230,193,113,.4);border-radius:14px;color:#f4efe7;font:inherit;box-shadow:0 6px 20px rgba(0,0,0,.14)}
.single-product .tga-hbj-caption{display:block;color:#e6c171;font-size:.72rem;font-weight:800;letter-spacing:.11em;text-transform:uppercase;margin-bottom:9px}
.single-product .tga-hbj-line{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:space-between;gap:8px 18px;font-size:.95rem;line-height:1.5}
.single-product .tga-hbj-line>span{color:rgba(255,255,255,.75)}
.single-product .tga-hbj-line>strong{color:#f1cf80;overflow-wrap:anywhere;font-size:1.05rem;font-weight:750}
.single-product .tga-hbj-variants{margin-top:9px}
.single-product .tga-hbj-variants summary{color:#e6c171;cursor:pointer;font-size:.86rem;font-weight:750;line-height:1.5;padding:7px 0}
.single-product .tga-hbj-variants summary:focus-visible{outline:2px solid #e6c171;outline-offset:3px}
.single-product .tga-hbj-scroll{overflow-x:auto;max-height:330px;overscroll-behavior:contain;margin-top:8px;border:1px solid rgba(230,193,113,.16);border-radius:9px}
.single-product .tga-hbj-scroll table{border-collapse:collapse;width:100%;min-width:440px;background:#181818;color:#fff;font-size:.81rem;line-height:1.45;margin:0}
.single-product .tga-hbj-scroll th,.single-product .tga-hbj-scroll td{padding:9px 11px;border-bottom:1px solid rgba(255,255,255,.09);text-align:left;vertical-align:top;overflow-wrap:anywhere}
.single-product .tga-hbj-scroll th{position:sticky;top:0;background:#29241a;color:#f1cf80;font-weight:750}
.single-product .tga-hbj-scroll td strong{color:#f1cf80;font-weight:750}
.single-product .tga-hbj-scroll tr:last-child td{border-bottom:0}
@media(max-width:480px){.single-product .tga-hbj-ref{padding:13px}.single-product .tga-hbj-line{font-size:.87rem}}

/* v1.2.7 – intuitive overall-stock value and accessible gold-on-charcoal price feature */
.tga-summary .tga-summary-row:nth-child(3){
  display:flex;flex-direction:column;justify-content:center;align-items:flex-start;
  gap:7px;margin:15px -7px -2px;padding:17px 18px 16px;
  background:linear-gradient(135deg,#242220 0%,#151515 100%);
  border:1px solid rgba(239,199,106,.35);border-radius:15px;
  box-shadow:0 7px 22px rgba(0,0,0,.11);
}
.tga-summary .tga-summary-row:nth-child(3) span{
  color:#e9ddc5!important;font-size:.89rem;line-height:1.4;font-weight:750;
}
.tga-summary .tga-summary-row:nth-child(3) strong{
  display:block;max-width:100%;font-size:clamp(1.45rem,4.7vw,2rem)!important;
  font-weight:850!important;line-height:1.25;color:#efc76a!important;
  text-align:left;overflow-wrap:anywhere;font-variant-numeric:tabular-nums;
}
@media(max-width:550px){
  .tga-summary .tga-summary-row:nth-child(3){padding:15px 15px 14px}
  .tga-summary .tga-summary-row:nth-child(3) span{font-size:.85rem}
  .tga-summary .tga-summary-row:nth-child(3) strong{font-size:1.6rem!important}
}
