/* Shared secondary page scaffold */
.page { padding-top:var(--space-7); padding-bottom:var(--space-6); }
.page__back { font-family:var(--font-mono); font-size:0.6875rem; color:var(--mod-gray-1); letter-spacing:0.1em; }
.page__back:hover { color:var(--mod-yellow); }
.page h1 { font-size:clamp(2rem,8vw,4rem); margin-block:var(--space-3); }
.page__intro { color:var(--mod-gray-1); max-width:52ch; margin-bottom:var(--space-5); }

/* Shop catalogue */
.shop__grid { display:grid; gap:var(--space-3); }
@media (min-width:560px){ .shop__grid{ grid-template-columns:repeat(3,1fr);} }

/* Product page */
.product { display:grid; gap:var(--space-5); }
@media (min-width:768px){ .product{ grid-template-columns:1fr 1fr; align-items:start;} }
.product__img { aspect-ratio:4/5; background:repeating-linear-gradient(45deg,#141414,#141414 8px,#181818 8px,#181818 16px);
  display:flex; align-items:center; justify-content:center; color:var(--mod-gray-2); font-family:var(--font-mono); }
.product__price { font-family:var(--font-mono); color:var(--mod-yellow); font-size:1.25rem; margin-block:var(--space-3); }
.product__quote { border-left:3px solid var(--mod-yellow); padding-left:var(--space-3); color:var(--mod-gray-1);
  font-style:italic; margin-block:var(--space-4); }
.product__sizes { display:flex; gap:var(--space-2); margin-bottom:var(--space-3); }
.product__sizes button { border:1px solid var(--mod-gray-3); padding:var(--space-2) var(--space-3); font-family:var(--font-mono); font-size:0.75rem; }
.product__sizes button[aria-pressed=true] { border-color:var(--mod-yellow); color:var(--mod-yellow); }
.product__meta { font-family:var(--font-mono); font-size:0.6875rem; color:var(--mod-gray-2); margin-top:var(--space-4); line-height:1.8; }

/* Challenge / trial pages */
.trial { max-width:60ch; }
.trial__rule { border:1px solid var(--mod-gray-3); background:var(--mod-surface); padding:var(--space-4); margin-block:var(--space-4); }
.trial__rule h2 { font-size:1.25rem; margin-bottom:var(--space-3); }
.trial__rule ol { counter-reset:step; display:grid; gap:var(--space-2); }
.trial__rule li { display:grid; grid-template-columns:auto 1fr; gap:var(--space-3); align-items:baseline; }
.trial__rule li::before { content:counter(step); counter-increment:step; font-family:var(--font-mono); color:var(--mod-yellow); }
.trial__status { font-family:var(--font-mono); font-size:0.6875rem; letter-spacing:0.1em; }
.trial__lead { color:var(--mod-gray-1); margin-block:var(--space-3); }
.trial__how { color:var(--mod-gray-1); margin-block:var(--space-4); }
.trial__list a { display:block; }

/* Community page */
.community__how { display:grid; gap:var(--space-3); margin-block:var(--space-5); }
@media (min-width:560px){ .community__how{ grid-template-columns:repeat(2,1fr);} }
.channel { border:1px solid var(--mod-gray-3); background:var(--mod-surface); padding:var(--space-3); transition:border-color .2s; }
.channel:hover { border-color:var(--mod-yellow); }
.channel__name { font-family:var(--font-display); text-transform:uppercase; }
.channel__role { font-family:var(--font-mono); font-size:0.625rem; letter-spacing:0.1em; color:var(--mod-yellow); }
.channel__desc { color:var(--mod-gray-1); font-size:0.8125rem; margin-top:var(--space-2); }
.community__cta { text-align:center; margin-top:var(--space-6); }

/* Legal pages */
.legal { max-width:70ch; }
.legal h2 { font-size:1.25rem; margin-block:var(--space-4) var(--space-2); }
.legal h3 { font-size:1rem; font-family:var(--font-body); font-weight:600; margin-block:var(--space-3) var(--space-1); text-transform:none; }
.legal p, .legal li { color:var(--mod-gray-1); margin-bottom:var(--space-2); }
.legal ul { padding-left:var(--space-3); list-style:disc; }
.legal__disclaimer { border:1px solid var(--mod-yellow); padding:var(--space-3); margin-block:var(--space-4);
  font-family:var(--font-mono); font-size:0.75rem; color:var(--mod-white); }
.legal__updated { font-family:var(--font-mono); font-size:0.625rem; color:var(--mod-gray-2); margin-top:var(--space-5); }
