:root{--bg-deep: #0a0b0d;--bg-card: #141519;--bg-card-hover: #1a1b21;--bg-surface: #1e1f25;--bg-amber-subtle: rgba(245, 189, 80, .06);--text-primary: #e8e4dc;--text-secondary: #9e9a92;--text-muted: #6b6760;--text-amber: #f5bd50;--text-amber-bright: #ffd976;--accent-amber: #f5bd50;--accent-copper: #d4845e;--accent-sage: #7a9e7e;--accent-slate: #6b8aad;--accent-violet: #9b87c4;--border-subtle: rgba(245, 189, 80, .08);--border-card: rgba(245, 189, 80, .12);--border-hover: rgba(245, 189, 80, .25);--font-display: "Space Mono", "Courier New", monospace;--font-body: "Inter", -apple-system, BlinkMacSystemFont, sans-serif;--font-serif: "Lora", Georgia, serif;--space-xs: .25rem;--space-sm: .5rem;--space-md: 1rem;--space-lg: 1.5rem;--space-xl: 2rem;--space-2xl: 3rem;--space-3xl: 4rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-xl: 16px}*,*:before,*:after{margin:0;padding:0;box-sizing:border-box}html{font-size:16px;scroll-behavior:smooth}body{font-family:var(--font-body);background:var(--bg-deep);color:var(--text-primary);line-height:1.6;-webkit-font-smoothing:antialiased;overflow-x:hidden}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:var(--bg-deep)}::-webkit-scrollbar-thumb{background:#f5bd5033;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#f5bd5059}.site-header{position:relative;padding:var(--space-3xl) var(--space-xl);text-align:center;background:linear-gradient(180deg,rgba(245,189,80,.04) 0%,transparent 100%);border-bottom:1px solid var(--border-subtle);overflow:hidden}.site-header:before{content:"";position:absolute;top:-50%;left:50%;transform:translate(-50%);width:600px;height:600px;background:radial-gradient(circle,rgba(245,189,80,.06) 0%,transparent 70%);pointer-events:none}.header-eyebrow{font-family:var(--font-display);font-size:.75rem;letter-spacing:.2em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-md)}.header-title{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:700;color:var(--text-amber);line-height:1.1;margin-bottom:var(--space-md)}.header-subtitle{font-family:var(--font-serif);font-style:italic;font-size:1.1rem;color:var(--text-secondary);max-width:40rem;margin:0 auto var(--space-lg)}.header-stats{display:flex;justify-content:center;gap:var(--space-xl);flex-wrap:wrap}.stat-item{text-align:center}.stat-value{font-family:var(--font-display);font-size:1.8rem;font-weight:700;color:var(--text-amber-bright);display:block}.stat-label{font-size:.75rem;text-transform:uppercase;letter-spacing:.1em;color:var(--text-muted)}.site-nav{position:sticky;top:0;z-index:100;background:#0a0b0deb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border-subtle);padding:var(--space-sm) var(--space-xl)}.nav-inner{display:flex;align-items:center;justify-content:center;gap:var(--space-sm);max-width:80rem;margin:0 auto;flex-wrap:wrap}.nav-btn{background:none;border:1px solid transparent;color:var(--text-secondary);font-family:var(--font-display);font-size:.8rem;letter-spacing:.05em;padding:var(--space-sm) var(--space-md);cursor:pointer;border-radius:var(--radius-md);transition:all .2s}.nav-btn:hover{color:var(--text-amber);border-color:var(--border-hover);background:var(--bg-amber-subtle)}.nav-btn.active{color:var(--text-amber);border-color:var(--accent-amber);background:#f5bd501a}.section{max-width:80rem;margin:0 auto;padding:var(--space-3xl) var(--space-xl)}.section-header{margin-bottom:var(--space-2xl);text-align:center}.section-title{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2rem);color:var(--text-amber);margin-bottom:var(--space-sm)}.section-desc{font-family:var(--font-serif);font-style:italic;color:var(--text-secondary);max-width:36rem;margin:0 auto}.filter-bar{display:flex;gap:var(--space-sm);flex-wrap:wrap;justify-content:center;margin-bottom:var(--space-2xl)}.filter-chip{background:var(--bg-card);border:1px solid var(--border-card);color:var(--text-secondary);font-family:var(--font-display);font-size:.7rem;letter-spacing:.05em;padding:var(--space-xs) var(--space-md);border-radius:999px;cursor:pointer;transition:all .2s}.filter-chip:hover{border-color:var(--border-hover);color:var(--text-primary)}.filter-chip.active{background:#f5bd501f;border-color:var(--accent-amber);color:var(--text-amber)}.filter-chip .count{opacity:.5;margin-left:4px}.gems-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:var(--space-lg)}.gem-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);overflow:hidden;cursor:pointer;transition:all .3s ease;position:relative}.gem-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover);transform:translateY(-4px);box-shadow:0 12px 40px #0006,0 0 0 1px #f5bd5026}.gem-image-wrapper{position:relative;width:100%;padding-top:130%;overflow:hidden;background:var(--bg-surface)}.gem-image-wrapper img{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s ease}.gem-card:hover .gem-image-wrapper img{transform:scale(1.03)}.gem-magic-badge{position:absolute;top:var(--space-sm);right:var(--space-sm);background:#0a0b0dd9;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border:1px solid var(--border-card);border-radius:var(--radius-md);padding:2px 8px;font-family:var(--font-display);font-size:.75rem;color:var(--text-amber-bright)}.gem-type-badge{position:absolute;top:var(--space-sm);left:var(--space-sm);background:#0a0b0dcc;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);border-radius:var(--radius-sm);padding:2px 8px;font-family:var(--font-display);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-secondary)}.gem-info{padding:var(--space-md)}.gem-company{font-family:var(--font-display);font-size:.8rem;font-weight:700;color:var(--text-amber);margin-bottom:var(--space-xs)}.gem-desc{font-size:.85rem;color:var(--text-secondary);line-height:1.5;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.gem-meta{display:flex;justify-content:space-between;align-items:center;padding:var(--space-sm) var(--space-md);border-top:1px solid var(--border-subtle);font-size:.7rem;color:var(--text-muted);font-family:var(--font-display)}.editorial-list{display:flex;flex-direction:column;gap:var(--space-lg)}.editorial-card{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-lg);padding:var(--space-xl);transition:all .3s ease;cursor:pointer}.editorial-card:hover{border-color:var(--border-hover);background:var(--bg-card-hover);box-shadow:0 8px 32px #0000004d}.editorial-card-layout{display:flex;gap:var(--space-xl)}.editorial-page-image{flex-shrink:0;width:180px;border-radius:var(--radius-md);overflow:hidden;background:var(--bg-surface);border:1px solid var(--border-subtle);transition:all .3s ease}.editorial-page-image img{width:100%;height:100%;object-fit:cover;object-position:top;transition:transform .4s ease}.editorial-card:hover .editorial-page-image img{transform:scale(1.02)}.editorial-card-content{flex:1;min-width:0}@media(max-width:768px){.editorial-card-layout{flex-direction:column}.editorial-page-image{width:100%;max-height:300px}}.editorial-top{display:flex;justify-content:space-between;align-items:flex-start;gap:var(--space-md);margin-bottom:var(--space-md)}.editorial-title{font-family:var(--font-serif);font-size:1.25rem;font-weight:600;color:var(--text-primary);line-height:1.3}.editorial-author{font-family:var(--font-display);font-size:.8rem;color:var(--accent-copper);margin-top:var(--space-xs)}.editorial-desc{font-size:.95rem;color:var(--text-secondary);line-height:1.6;margin-bottom:var(--space-md)}.editorial-quote{border-left:3px solid var(--accent-amber);padding:var(--space-md) var(--space-lg);background:var(--bg-amber-subtle);border-radius:0 var(--radius-md) var(--radius-md) 0;margin-bottom:var(--space-md)}.editorial-quote p{font-family:var(--font-serif);font-style:italic;color:var(--text-amber-bright);font-size:1rem;line-height:1.6}.editorial-why{font-size:.85rem;color:var(--text-muted);line-height:1.5;padding-top:var(--space-sm);border-top:1px solid var(--border-subtle)}.editorial-why strong{color:var(--text-secondary)}.editorial-badge{flex-shrink:0;display:flex;flex-direction:column;align-items:center;gap:2px}.magic-stars{font-family:var(--font-display);font-size:1.2rem;font-weight:700;color:var(--text-amber-bright)}.type-tag{font-family:var(--font-display);font-size:.65rem;text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);background:var(--bg-surface);padding:2px 8px;border-radius:var(--radius-sm)}.editorial-source{font-family:var(--font-display);font-size:.7rem;color:var(--text-muted);margin-top:var(--space-sm)}.lightbox-overlay{position:fixed;inset:0;background:#000000eb;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:1000;display:flex;align-items:center;justify-content:center;padding:var(--space-xl);animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.lightbox-content{background:var(--bg-card);border:1px solid var(--border-card);border-radius:var(--radius-xl);max-width:900px;max-height:90vh;overflow-y:auto;width:100%;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.lightbox-image{width:100%;max-height:60vh;object-fit:contain;background:#000;border-radius:var(--radius-xl) var(--radius-xl) 0 0}.lightbox-body{padding:var(--space-xl)}.full-text-badge{margin-left:var(--space-sm);font-size:.7rem;color:var(--accent-sage);background:#7a9e7e26;padding:2px 6px;border-radius:var(--radius-sm);font-family:var(--font-display)}.full-text-section{margin:var(--space-lg) 0;border-top:1px solid var(--border-subtle);padding-top:var(--space-md)}.full-text-toggle{background:var(--bg-surface);border:1px solid var(--border-card);color:var(--text-amber);font-family:var(--font-display);font-size:.85rem;padding:var(--space-sm) var(--space-md);border-radius:var(--radius-md);cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:var(--space-sm);width:100%}.full-text-toggle:hover{border-color:var(--accent-amber);background:#f5bd5014}.full-text-length{font-size:.7rem;color:var(--text-muted);margin-left:auto}.full-text-body{margin-top:var(--space-md);padding:var(--space-lg);background:var(--bg-surface);border:1px solid var(--border-subtle);border-radius:var(--radius-md);max-height:50vh;overflow-y:auto}.full-text-body p{font-family:var(--font-serif);font-size:.95rem;line-height:1.8;color:var(--text-primary);margin-bottom:var(--space-md)}.full-text-body p:first-child{font-size:1rem;font-weight:500}.page-match-badge{font-family:var(--font-display);font-size:.65rem;padding:2px 6px;border-radius:var(--radius-sm);letter-spacing:.03em}.page-match-badge.exact{color:var(--accent-sage);background:#7a9e7e26}.page-match-badge.nearby{color:var(--accent-amber);background:#f5bd501a}.page-match-badge.wrong{color:var(--accent-copper);background:#d4845e26}.lightbox-close{position:fixed;top:var(--space-lg);right:var(--space-lg);background:#0a0b0dcc;border:1px solid var(--border-card);color:var(--text-secondary);width:40px;height:40px;border-radius:50%;cursor:pointer;font-size:1.2rem;display:flex;align-items:center;justify-content:center;z-index:1001;transition:all .2s}.lightbox-close:hover{color:var(--text-amber);border-color:var(--accent-amber)}.load-more-wrapper{text-align:center;padding:var(--space-2xl) 0}.load-more-btn{background:var(--bg-card);border:1px solid var(--border-card);color:var(--text-amber);font-family:var(--font-display);font-size:.85rem;padding:var(--space-md) var(--space-2xl);border-radius:var(--radius-md);cursor:pointer;transition:all .2s}.load-more-btn:hover{border-color:var(--accent-amber);background:#f5bd5014;box-shadow:0 0 20px #f5bd501a}.site-footer{text-align:center;padding:var(--space-3xl) var(--space-xl);border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:.8rem}.site-footer a{color:var(--text-amber);text-decoration:none}@media(max-width:768px){.gems-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr))}.header-stats{gap:var(--space-md)}.editorial-top{flex-direction:column}.section{padding:var(--space-2xl) var(--space-md)}}
