/* Twelve chapters: material-led additions to the existing Halo journey. */
.stone-introduction { padding-block:clamp(90px,10vw,160px); }
.stone-introduction h2 { font-size:clamp(52px,7.4vw,108px); letter-spacing:-.055em; }
.stone-introduction>p:not(.eyebrow) { max-width:580px; margin:24px auto 0; font-size:18px; line-height:1.6; }
.stone-introduction .stone-intro-note { font-size:13px!important; max-width:380px!important; }
.journey .explorer-intro { color:var(--muted); font-size:12px; line-height:1.5; margin:10px 0 0; }
.journey .stage-copy { pointer-events:auto; }
.journey .stage-copy>p:not(.eyebrow) { font-size:14px; line-height:1.5; max-width:210px; }
.journey .stage-copy h4 { font-size:clamp(22px,2.1vw,32px); }
.journey .phone-wrap { width:26%; max-width:310px; }
.journey .stone-material-preview { background:#ebe8e1; color:#252925; border:0; border-radius:2px; padding:20px 0; box-shadow:0 20px 80px #0003; }
.journey .stone-material-preview img { width:100%; height:auto; aspect-ratio:1; object-fit:cover; margin:6px 0 12px; }
.journey .stone-material-preview p { color:#53574e; }
.journey .stone-material-preview #preview-mineral { color:#252925; font-size:20px; }
.journey .stone-material-preview #preview-day { font-size:12px; letter-spacing:.03em; }
.journey .stone-material-preview .preview-state { font-size:9px; }
.stone-detail-trigger { border:0; background:none; color:var(--ink); padding:14px 0; min-height:44px; font:inherit; font-size:11px; text-decoration:underline; text-underline-offset:6px; cursor:pointer; }
.stone-detail-trigger span { margin-left:12px; }
#stone-swipe-surface { touch-action:pan-y; }
.journey .timeline { overflow-x:auto; overscroll-behavior-x:contain; scrollbar-width:none; scroll-snap-type:x proximity; gap:10px; padding:7px 6px; }
.journey .timeline button { flex:1 0 38px; scroll-snap-align:center; }
.journey .timeline-track { top:18px; }
.journey .journey-world::before { display:none; }
.journey .timeline button[aria-pressed="true"] i { box-shadow:0 0 0 4px var(--stage),0 0 0 5px var(--selected-ring); }
.stone-detail-dialog { width:min(920px,calc(100% - 32px)); max-height:90svh; margin:auto; padding:36px; border:0; border-radius:3px; background:#f5f3ed; color:#292c27; overflow:auto; }
.stone-detail-dialog::backdrop { background:#101410ad; backdrop-filter:blur(8px); }
.stone-detail-layout { display:grid; grid-template-columns:1fr 1fr; gap:40px; }
.stone-detail-layout figure { margin:0; align-self:center; }
.stone-detail-layout img { display:block; width:100%; height:auto; }
.stone-detail-layout figcaption { margin-top:14px; color:#686d62; font-size:10px; }
.stone-detail-close { position:absolute; right:10px; top:8px; width:44px; height:44px; border:0; background:none; font-size:26px; color:#292c27; cursor:pointer; }
.stone-detail-copy { padding-top:22px; }
.stone-detail-copy .eyebrow { color:#686d62; font-size:10px; }
.stone-detail-copy h2 { font-size:38px; line-height:1.1; letter-spacing:-.04em; font-weight:400; margin:12px 0; }
.stone-detail-copy p { font-size:13px; line-height:1.7; color:#686d62; }
.stone-detail-copy .stone-detail-theme { color:#292c27; }
.stone-detail-copy h3 { font-size:11px; margin:26px 0 8px; font-weight:500; text-transform:uppercase; letter-spacing:.1em; }
.stone-detail-copy a { font-size:11px; color:#495345; text-decoration:underline; text-underline-offset:4px; }
.stone-detail-disclosure { margin:30px 0 0; padding-top:20px; border-top:1px solid #d8d9d0; color:#686d62; font-size:10px; line-height:1.7; }
@media(max-width:700px){
 .stone-introduction>p:not(.eyebrow) { font-size:16px; }
 .journey .explorer-intro { font-size:10px; max-width:260px; margin-top:8px; }
 .journey .scene { margin-top:20px; }
 .journey .stage-copy { max-width:58%; }
 .journey .stage-copy>p:not(.eyebrow) { font-size:11px; max-width:160px; }
 .journey .stage-copy h4 { font-size:23px; }
 .journey .phone-wrap { width:34%; max-width:175px; bottom:20px; }
 .journey .stone-material-preview { padding:12px 0; }
 .journey .stone-material-preview #preview-mineral { font-size:11px; }
 .journey .stone-material-preview #preview-day { font-size:9px; }
 .journey .stone-material-preview .preview-label { font-size:6px; }
 .journey .stone-material-preview .preview-state { display:none; }
 .journey .wearable-scene { width:85%; left:-12%; top:56%; }
 .journey .timeline { display:flex; grid-template-columns:none; gap:9px; }
 .journey .timeline button { min-height:46px; min-width:33px; flex-basis:33px; }
 .journey .timeline-track { display:none; }
 .journey .journey-note { font-size:8px; }
 .stone-detail-trigger { font-size:10px; padding-top:12px; }
 .stone-detail-dialog { padding:24px; }
 .stone-detail-layout { grid-template-columns:1fr; gap:10px; }
 .stone-detail-layout figure { max-width:240px; margin:0 auto; }
 .stone-detail-copy { padding-top:8px; }
 .stone-detail-copy h2 { font-size:32px; }
}
@media(max-width:700px) and (max-height:760px){
 .journey .phone-wrap { bottom:0; width:31%; }
 .journey .wearable-scene { top:61%; width:77%; left:-8%; }
 .journey .stage-copy h4 { font-size:20px; margin-top:8px; }
 .journey .explorer-intro { margin-top:6px; }
 .journey .scene { margin-top:10px; }
 .journey .day-display { font-size:38px; }
 .journey .stone-material-preview img { margin:0 0 6px; }
}
@media(max-height:520px) and (min-width:701px){
 .journey .explorer-intro,.journey .preview-label,.journey .preview-state,.journey .material-note { display:none; }
 .journey .phone-wrap { width:18%; }
 .journey .stone-material-preview { padding:6px 0; }
 .journey .stone-material-preview img { margin:0; }
 .journey .day-display { font-size:48px; }
 .journey .wearable-scene { height:100%; }
}
/* The stones bring the color into a quiet silver-and-paper studio. */
.journey { --ink:#282d29; --muted:#686d62; --stage:#f2f1ee; --border:#62685a30; --line:#7d84766b; --selected-ring:#3d4639; color:var(--ink); }
.journey .journey-stage { background:#f2f1ee; }
.journey .journey-stage::after { opacity:.035; mix-blend-mode:multiply; }
.journey .journey-world { background:radial-gradient(ellipse at 52% 47%,color-mix(in srgb,var(--world-glow) 18%,#f4f3ef),#f2f1ee 75%); }
.journey .journey-world::after { display:none; }
.journey .stone-material-preview { box-shadow:none; }
.journey[data-story="module"] .journey-stage { background:#11121a; }
.journey[data-story="module"] .journey-worlds { display:none; }
.stone-module-story { --muted:#c0c1cc; color:#f4f3f7; }

.wearable-scene img:not([src]) { visibility:hidden; }
.stone-detail-dialog { overscroll-behavior:contain; }
.stone-detail-trigger:focus-visible,.stone-detail-close:focus-visible { outline:2px solid currentColor; outline-offset:4px; }
.journey { --line:#7c8576; }

/* Original collection previews share the material dialog without borrowing
   a different chapter's metadata from the newer journey. */
.stone-detail-dialog[data-presentation="collection"] { background:var(--stage); color:var(--ink); }
.stone-detail-dialog[data-presentation="collection"] .stone-detail-copy { align-self:center; }
.stone-detail-dialog[data-presentation="collection"] .stone-detail-close,
.stone-detail-dialog[data-presentation="collection"] .stone-detail-theme { color:var(--ink); }
.stone-detail-dialog[data-presentation="collection"] .eyebrow,
.stone-detail-dialog[data-presentation="collection"] .stone-detail-copy p,
.stone-detail-dialog[data-presentation="collection"] figcaption { color:var(--muted); }
.stone-detail-dialog[data-presentation="collection"] .stone-detail-copy h3,
.stone-detail-dialog[data-presentation="collection"] #stone-detail-material,
.stone-detail-dialog[data-presentation="collection"] #stone-detail-variation,
.stone-detail-dialog[data-presentation="collection"] #stone-detail-position,
.stone-detail-dialog[data-presentation="collection"] #stone-detail-source,
.stone-detail-dialog[data-presentation="collection"] .stone-detail-disclosure { display:none; }
