/* GLEE Bench product surface — request-first, evidence-forward, request-only until live gates pass. */
.bench-page { --bench-bg: #07090b; --bench-panel: #10151a; --bench-line: #2a333b; --bench-text: #eee9df; --bench-muted: #a7b0b8; --bench-gold: #e4c17e; --bench-green: #69c58a; --bench-teal: #80d7d0; --bench-red: #e18b79; }
.bench-frame { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: var(--space-40) 0 var(--space-64); }
.bench-hero { display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(250px, .7fr); gap: var(--space-24); align-items: stretch; padding: var(--space-24) 0 var(--space-40); }
.bench-eyebrow { margin: 0 0 var(--space-8); color: var(--bench-gold); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); letter-spacing: .16em; text-transform: uppercase; }
.bench-hero h1 { max-width: 800px; margin: 0 0 var(--space-16); color: var(--bench-text); font-size: clamp(var(--text-40), 6vw, 5rem); line-height: .98; }
.bench-lede { max-width: 700px; margin: 0; color: var(--bench-muted); font-size: clamp(var(--text-16), 2vw, var(--text-20)); line-height: 1.6; }
.bench-actions { display: flex; flex-wrap: wrap; gap: var(--space-8); align-items: center; margin-top: var(--space-24); }
.bench-button { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-height: 44px; padding: var(--space-8) var(--space-12); border: 1px solid var(--bench-line); border-radius: var(--radius-8); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-12); line-height: 1.25; text-decoration: none; }
.bench-button-primary { border-color: var(--bench-gold); background: var(--bench-gold); color: var(--c-ink-2); font-weight: 700; }
.bench-button-secondary { color: var(--bench-text); background: rgba(255,255,255,.025); }
.bench-button:hover, .bench-offer a:hover, .bench-contract:hover { border-color: var(--bench-gold); color: var(--bench-gold); }
.bench-button-primary:hover { color: var(--c-ink-2); background: var(--c-gold-hi); }
.bench-fine { max-width: 650px; margin: var(--space-12) 0 0; color: var(--c-muted-2); font-size: var(--text-12); line-height: 1.55; }
.bench-hero-proof { display: grid; align-content: center; gap: var(--space-8); min-height: 250px; padding: var(--space-24); border: 1px solid var(--bench-line); border-top: 3px solid var(--bench-gold); border-radius: var(--radius-8); background: linear-gradient(145deg, rgba(228,193,126,.10), rgba(16,21,26,.96) 60%); }
.bench-status, .bench-offer-tag { color: var(--bench-green); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); letter-spacing: .12em; text-transform: uppercase; }
.bench-hero-proof strong { color: var(--bench-text); font-family: Georgia, serif; font-size: clamp(var(--text-20), 3vw, var(--text-28)); line-height: 1.1; }
.bench-hero-proof p, .bench-hero-proof .bench-rule { margin: 0; color: var(--bench-muted); line-height: 1.55; }
.bench-rule { padding-top: var(--space-12); border-top: 1px solid var(--bench-line); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); }
.bench-section, .bench-boundary { margin-top: var(--space-24); padding-top: var(--space-24); border-top: 1px solid var(--bench-line); }
.bench-section-head { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.4fr); gap: var(--space-4) var(--space-24); align-items: end; margin-bottom: var(--space-16); }
.bench-section-head .bench-eyebrow { grid-column: 1 / -1; margin-bottom: 0; }
.bench-section h2, .bench-boundary h2 { margin: 0; color: var(--bench-text); font-family: Georgia, serif; font-size: clamp(var(--text-28), 3vw, var(--text-40)); line-height: 1.08; }
.bench-section-head > p:last-child { margin: 0; color: var(--bench-muted); line-height: 1.55; }
.bench-output-grid, .bench-offer-grid, .bench-payment-grid, .bench-boundary-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--space-12); }
.bench-output-grid article, .bench-offer, .bench-payment-card, .bench-boundary-grid p { min-width: 0; margin: 0; padding: var(--space-16); border: 1px solid var(--bench-line); border-radius: var(--radius-8); background: var(--bench-panel); }
.bench-index { display: block; margin-bottom: var(--space-16); color: var(--bench-teal); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-12); }
.bench-output-grid h3, .bench-offer h3 { margin: 0 0 var(--space-8); color: var(--bench-text); font-size: var(--text-16); }
.bench-output-grid p, .bench-offer p, .bench-boundary-grid p { color: var(--bench-muted); font-size: var(--text-14); line-height: 1.55; }
.bench-offer { display: flex; flex-direction: column; min-height: 220px; }
.bench-offer-featured { border-color: var(--bench-gold); box-shadow: 0 0 0 1px rgba(228,193,126,.12); }
.bench-offer h3 { margin-top: var(--space-12); font-family: Georgia, serif; font-size: var(--text-28); }
.bench-offer p { flex: 1; }
.bench-offer a { align-self: flex-start; margin-top: var(--space-16); color: var(--bench-gold); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); text-decoration: underline; text-underline-offset: 3px; }
.bench-payment-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.bench-payment-card { display: flex; flex-direction: column; }
.bench-payment-card h3 { margin: var(--space-12) 0 var(--space-16); color: var(--bench-text); font-family: Georgia, serif; font-size: var(--text-28); line-height: 1.08; }
.bench-payment-card dl { margin: 0; }
.bench-payment-card dl > div { padding: var(--space-8) 0; border-top: 1px solid var(--bench-line); }
.bench-payment-card dt { color: var(--bench-muted); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); text-transform: uppercase; }
.bench-payment-card dd { margin: var(--space-4) 0 0; color: var(--bench-text); font-size: var(--text-14); line-height: 1.5; }
.bench-payment-card code { overflow-wrap: anywhere; color: var(--bench-teal); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-12); }
.bench-payment-card ol { margin: 0 0 var(--space-16); padding-left: var(--space-24); color: var(--bench-muted); line-height: 1.55; }
.bench-payment-card li + li { margin-top: var(--space-8); }
.bench-payment-card .bench-button { align-self: flex-start; margin-top: auto; }
.bench-payment-card .bench-warning { margin: var(--space-16) 0 0; }
.bench-brief-section { padding-bottom: var(--space-8); }
.bench-brief { overflow-x: auto; margin: 0; padding: var(--space-16); border: 1px solid var(--bench-line); border-radius: var(--radius-8); background: var(--c-ink); color: var(--bench-teal); font: var(--text-13)/1.65 var(--mono, ui-monospace, monospace); white-space: pre-wrap; }
.bench-brief code { color: inherit; }
.bench-machine { display: grid; grid-template-columns: minmax(0, 1fr) 300px; gap: var(--space-24); align-items: center; }
.bench-machine-copy > p:not(.bench-eyebrow) { max-width: 75ch; margin: var(--space-8) 0 0; color: var(--bench-muted); line-height: 1.6; }
.bench-warning { padding: var(--space-12); border-left: 2px solid var(--bench-red); background: rgba(225,139,121,.06); }
.bench-warning strong { color: var(--bench-red); }
.bench-contract { display: grid; gap: var(--space-8); padding: var(--space-16); border: 1px solid var(--bench-teal); border-radius: var(--radius-8); background: rgba(128,215,208,.06); color: var(--bench-text); text-decoration: none; }
.bench-contract span, .bench-contract small { color: var(--bench-muted); font-family: var(--mono, ui-monospace, monospace); font-size: var(--text-11); }
.bench-contract strong { color: var(--bench-teal); font-size: var(--text-16); }
.bench-boundary { padding-bottom: var(--space-24); }
.bench-boundary-grid { margin-top: var(--space-16); }
.bench-boundary-grid p { border-top: 2px solid var(--bench-red); }
.bench-footer { width: min(1180px, calc(100% - 32px)); margin: 0 auto; padding: 0 0 var(--space-40); color: var(--c-muted-2); font: var(--text-11)/1.6 var(--mono, ui-monospace, monospace); }
.bench-footer a { color: var(--bench-gold); }
@media (max-width: 820px) { .bench-hero, .bench-machine { grid-template-columns: 1fr; } .bench-section-head { grid-template-columns: 1fr; gap: var(--space-8); } .bench-output-grid, .bench-offer-grid, .bench-payment-grid, .bench-boundary-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px) { .bench-frame { width: min(100% - 20px, 1180px); padding-top: var(--space-24); } .bench-hero { padding-top: var(--space-8); } .bench-hero h1 { font-size: clamp(var(--text-28), 13vw, var(--text-40)); } .bench-output-grid, .bench-offer-grid, .bench-payment-grid, .bench-boundary-grid { grid-template-columns: 1fr; } .bench-button { width: 100%; } .bench-hero-proof { min-height: auto; } .bench-footer { width: min(100% - 20px, 1180px); } }
