.matrix-section{padding:0 0 var(--section-gap)}.matrix-grid{display:flex;flex-direction:column;gap:14px}.controls-row{display:flex;justify-content:flex-end;margin-bottom:18px;gap:8px}.controls-btn{display:inline-flex;align-items:center;gap:8px;padding:10px 22px;border-radius:var(--radius-pill);font-size:.9rem;font-weight:500;letter-spacing:.02em;color:var(--text-secondary);background:transparent;border:1px solid var(--border-mid);cursor:pointer;font-family:inherit;transition:all .3s ease}.controls-btn:hover{background:var(--bg-card);border-color:var(--border-hover);color:var(--charcoal)}.controls-btn svg{width:14px;height:14px}.help-strip{display:flex;justify-content:center;padding:0 var(--container-pad);margin-bottom:clamp(28px,4vw,44px)}.help-strip-inner{display:inline-flex;align-items:center;gap:12px;font-size:.98rem;color:var(--text-secondary);font-weight:400;letter-spacing:.01em}.help-strip-dot{width:8px;height:8px;border-radius:50%;background:var(--green-primary);animation:matrixPulse 2.2s ease infinite}@keyframes matrixPulse{0%,to{opacity:.4;transform:scale(1)}50%{opacity:1;transform:scale(1.25)}}.cat-row{background:var(--bg-card);border:1px solid var(--border-light);border-radius:var(--radius-lg);overflow:hidden;transition:border-color .35s ease,box-shadow .35s ease,transform .35s ease;position:relative}.cat-row:before{content:"";position:absolute;top:0;left:0;right:0;height:3px;transition:height .35s ease;z-index:2}.cat-row[data-cat=glow]:before{background:var(--cat-glow)}.cat-row[data-cat=recover]:before{background:var(--cat-recover)}.cat-row[data-cat=vitality]:before{background:var(--cat-vitality)}.cat-row[data-cat=define]:before{background:var(--cat-define)}.cat-row[data-cat=rest]:before{background:var(--cat-rest)}.cat-row[data-cat=clarity]:before{background:var(--cat-clarity)}.cat-row:hover{border-color:var(--border-mid);box-shadow:0 16px 48px #2a2a280f}.cat-row.open:before{height:5px}.cat-row.open{box-shadow:0 20px 60px #2a2a2814}.cat-row-header{display:grid;grid-template-columns:minmax(200px,240px) 1fr minmax(110px,130px) 44px;align-items:center;gap:clamp(20px,3vw,40px);padding:clamp(24px,3vw,34px) clamp(24px,4vw,44px);cursor:pointer;background:transparent;border:none;width:100%;text-align:left;font-family:inherit;color:inherit;transition:background .25s ease}.cat-row-header:hover{background:var(--bg-card-hover)}.cat-row-name-block{display:flex;flex-direction:column;gap:6px;min-width:0}.cat-row .cat-name{font-family:var(--font-display);font-size:clamp(1.5rem,2.6vw,2rem);font-weight:700;letter-spacing:-.015em;line-height:1.1}.cat-row[data-cat=glow] .cat-name{color:var(--cat-glow)}.cat-row[data-cat=recover] .cat-name{color:var(--cat-recover)}.cat-row[data-cat=vitality] .cat-name{color:var(--cat-vitality)}.cat-row[data-cat=define] .cat-name{color:var(--cat-define)}.cat-row[data-cat=rest] .cat-name{color:var(--cat-rest)}.cat-row[data-cat=clarity] .cat-name{color:var(--cat-clarity)}.cat-row .cat-desc{font-size:.92rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--text-tertiary);line-height:1.45}.cat-row-summary{font-size:1rem;color:var(--text-secondary);font-weight:300;line-height:1.6;min-width:0}.cat-row-count{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:9px 18px;border-radius:var(--radius-pill);font-size:.86rem;font-weight:500;letter-spacing:.02em;white-space:nowrap;justify-self:end}.cat-row[data-cat=glow] .cat-row-count{background:var(--cat-glow-bg);color:var(--cat-glow)}.cat-row[data-cat=recover] .cat-row-count{background:var(--cat-recover-bg);color:var(--cat-recover)}.cat-row[data-cat=vitality] .cat-row-count{background:var(--cat-vitality-bg);color:var(--cat-vitality)}.cat-row[data-cat=define] .cat-row-count{background:var(--cat-define-bg);color:var(--cat-define)}.cat-row[data-cat=rest] .cat-row-count{background:var(--cat-rest-bg);color:var(--cat-rest)}.cat-row[data-cat=clarity] .cat-row-count{background:var(--cat-clarity-bg);color:var(--cat-clarity)}.cat-row-count-num{font-weight:700}.cat-row-count-label{opacity:.85}.cat-row-chevron{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:var(--bg-warm);color:var(--text-secondary);transition:transform .4s ease,background .3s ease,color .3s ease;flex-shrink:0}.cat-row:hover .cat-row-chevron{background:var(--charcoal);color:var(--bg-cream)}.cat-row.open .cat-row-chevron{transform:rotate(180deg)}.cat-row-chevron svg{width:14px;height:14px}@media(max-width:860px){.cat-row-header{grid-template-columns:1fr auto;grid-template-rows:auto auto auto;gap:14px 18px;padding:22px 22px 22px 24px}.cat-row-name-block{grid-column:1;grid-row:1}.cat-row-chevron{grid-column:2;grid-row:1;align-self:start}.cat-row-summary{grid-column:1 / -1;grid-row:2}.cat-row-count{grid-column:1 / -1;grid-row:3;justify-self:start}}@media(max-width:480px){.cat-row .cat-name{font-size:1.45rem}.cat-row .cat-desc{font-size:.88rem;letter-spacing:.05em}.cat-row-summary{font-size:.95rem}}.cat-row-panel{max-height:0;overflow:hidden;transition:max-height .55s cubic-bezier(.22,1,.36,1),opacity .4s ease;opacity:0}.cat-row.open .cat-row-panel{max-height:4000px;opacity:1}.cat-row-panel-inner{padding:8px clamp(24px,4vw,44px) clamp(28px,4vw,44px);border-top:1px solid var(--border-light);margin-top:4px}.panel-subsection{margin-top:28px}.panel-subsection:first-child{margin-top:20px}.panel-subsection-head{display:flex;align-items:center;gap:12px;margin-bottom:18px}.panel-subsection-title{font-size:.92rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--text-tertiary)}.panel-subsection-count{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:22px;padding:0 7px;border-radius:var(--radius-pill);font-size:.66rem;font-weight:600;background:var(--bg-warm);color:var(--text-tertiary)}.product-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}@media(max-width:680px){.product-grid{grid-template-columns:1fr}}.product-mini{position:relative;display:flex;flex-direction:column;padding:20px 22px 18px;background:var(--bg-cream);border:1px solid var(--border-light);border-radius:var(--radius-md);text-decoration:none;color:inherit;transition:border-color .3s ease,background .3s ease,transform .3s ease,box-shadow .3s ease;overflow:hidden}.product-mini:after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;transition:width .3s ease}.product-mini[data-cat=glow]:after{background:var(--cat-glow)}.product-mini[data-cat=recover]:after{background:var(--cat-recover)}.product-mini[data-cat=vitality]:after{background:var(--cat-vitality)}.product-mini[data-cat=define]:after{background:var(--cat-define)}.product-mini[data-cat=rest]:after{background:var(--cat-rest)}.product-mini[data-cat=clarity]:after{background:var(--cat-clarity)}.product-mini:hover{border-color:var(--border-hover);background:var(--bg-card);transform:translateY(-2px);box-shadow:0 10px 28px #2a2a280f}.product-mini:hover:after{width:4px}.product-mini.supporting{background:transparent;border-style:dashed}.product-mini.supporting:after{opacity:.55}.product-mini.supporting:hover{background:var(--bg-card-hover);border-style:solid}.product-mini-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:6px}.product-mini-name{font-size:1.02rem;font-weight:700;letter-spacing:-.01em;color:var(--charcoal);line-height:1.25}.rx-badge-sm{flex-shrink:0;padding:2px 9px;background:var(--bg-warm);border-radius:var(--radius-pill);font-size:.58rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-tertiary);line-height:1.6}.product-mini-type{font-size:.7rem;font-weight:500;letter-spacing:.04em;color:var(--text-tertiary);margin-bottom:10px}.product-mini-desc{font-size:.82rem;color:var(--text-secondary);font-weight:300;line-height:1.55;margin-bottom:14px;flex-grow:1}.product-mini-link{display:inline-flex;align-items:center;gap:6px;font-size:.76rem;font-weight:500;color:var(--green-primary);letter-spacing:.01em;transition:gap .3s ease}.product-mini:hover .product-mini-link{gap:10px}.product-mini-link svg{width:12px;height:12px}.panel-footer{display:flex;justify-content:flex-end;margin-top:26px;padding-top:22px;border-top:1px solid var(--border-light)}.panel-footer-link{display:inline-flex;align-items:center;gap:8px;padding:9px 20px;border-radius:var(--radius-pill);font-size:.78rem;font-weight:500;color:var(--text-secondary);text-decoration:none;border:1px solid var(--border-mid);transition:all .3s ease}.panel-footer-link:hover{background:var(--charcoal);color:var(--bg-cream);border-color:var(--charcoal);transform:translateY(-1px)}
