.prism-hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:48px;max-width:1360px;padding:64px 32px;margin:auto}.prism-hero h1{font:400 clamp(52px,6vw,90px)/1 'Cormorant Garamond',serif;letter-spacing:-.025em;margin:20px 0 28px}.prism-hero p{max-width:540px;line-height:1.7}.prism-hero img{display:block;width:100%;height:auto;object-fit:contain;background:white;border-radius:18px}.prism-hero a{display:inline-flex;align-items:center;padding:14px 22px;min-height:48px;box-sizing:border-box;background:#282828;color:#fffcf8;border-radius:28px;text-decoration:none;margin-top:14px}
.prism-colours{border:0;padding:0;margin:28px 0}.prism-colours legend{font-weight:500;margin-bottom:14px}.prism-colour-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.prism-colour-options button{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;border:1px solid #d4c8b7;border-radius:14px;min-height:104px;padding:12px 6px;background:#fffcf8;color:#282828;font:400 13px/1.4 'DM Sans',sans-serif;cursor:pointer;transition:transform .18s,border-color .18s}.prism-colour-options button[aria-pressed=true]{border:2px solid #a17b28;background:#f1e9dd;padding:11px 5px}.prism-colour-options button:hover{transform:translateY(-2px)}
.prism-gem{width:36px;height:36px;border-radius:50%;box-shadow:inset 0 0 0 1px #ffffffaa,inset -5px -6px 9px #0003,0 3px 6px #0001;background:conic-gradient(from 20deg,#fff9,var(--gem),#fff8,var(--gem),#fff5,var(--gem),#fff9)}.gem-pink{--gem:#e65496}.gem-red{--gem:#ad1236}.gem-orange{--gem:#e57b22}.gem-yellow{--gem:#d8b910}.gem-green{--gem:#13945b}.gem-teal{--gem:#169fa4}.gem-blue{--gem:#286ec9}
.prism-view-controls{display:flex;gap:12px;margin:18px 0}.prism-view-controls button{border:1px solid #cdbfa9;border-radius:24px;padding:11px 20px;min-height:46px;background:#fffcf8;color:#282828;font:400 14px 'DM Sans',sans-serif;cursor:pointer}.prism-view-controls button[aria-pressed=true]{background:#f1e9dd;border-color:#a17b28}.prism-lab-note{padding:14px 0;color:#6e5524;font-size:14px}.prism-colours :focus-visible,.prism-view-controls :focus-visible{outline:2px solid #a17b28;outline-offset:4px}
@media(max-width:760px){.prism-hero{grid-template-columns:1fr;padding:32px 22px;gap:24px}.prism-hero h1{font-size:56px}.prism-colour-options{grid-template-columns:repeat(3,minmax(0,1fr))}.prism-colour-options button{font-size:13px;min-height:96px}}
@media(prefers-reduced-motion:reduce){.prism-colour-options button{transition:none}.prism-colour-options button:hover{transform:none}}
