/* Prototype presentation scoped to Journey; theme header/footer retain their own styles. */
.hos-journey {color-scheme:dark;--ink:#faf9dd;--journey-progress:0;font-family:Arial,Helvetica,sans-serif;background:#081f12;color:var(--ink)}
.hos-journey * {box-sizing:border-box}
.hos-journey a {color:inherit;text-decoration:none}
.hos-journey button {font:inherit;color:inherit;cursor:pointer}
.hos-journey button,
.hos-journey a {-webkit-tap-highlight-color:transparent}
.hos-journey button:focus-visible,
.hos-journey a:focus-visible {outline:2px solid #f4dfa0;outline-offset:6px}
.hos-journey ::selection {background:#e2d3a0;color:#152820}
.hos-journey #scene {position:fixed;inset:0;z-index:-2;pointer-events:none;background:radial-gradient(ellipse at 64% 28%,#84947b,#394f43 35%,#081f12 75%)}
.hos-journey #scene canvas {width:100%;height:100%;display:block;pointer-events:none}
.hos-journey .veil {position:fixed;inset:0;pointer-events:none;z-index:-1;background:linear-gradient(90deg,#06130fa8,#06130f24 52%,transparent 76%),linear-gradient(0deg,#08140fa6,transparent 27%,transparent 76%,#08140f9e)}
body[data-world="1"] .hos-journey .veil {background:linear-gradient(90deg,#140f0be6,#140f0b66 50%,transparent 76%),linear-gradient(0deg,#140f0b99,transparent 50%,#140f0b66)}
body[data-world="2"] .hos-journey .veil {background:linear-gradient(90deg,#071814e6,#07181466 50%,transparent 76%),linear-gradient(0deg,#07181499,transparent 50%,#07181466)}
.hos-journey .chapter-nav {display:flex;gap:34px}
.hos-journey .chapter-nav a {font-size:14px;color:#e1e1cfb3;padding:10px 0;border-bottom:1px solid transparent}
.hos-journey .chapter-nav a span {font-size:10px;margin-right:8px;opacity:.6}
.hos-journey .chapter-nav a[aria-current] {color:#faf9dd;border-color:#faf9dd}
.hos-journey .chapter-nav a:hover {color:white}
.hos-journey #motion {border:1px solid #c5c9b550;border-radius:100px;background:#10221b45;padding:11px 17px;font-size:12px;flex-shrink:0}
.hos-journey .chapter {height:260svh;position:relative}
.hos-journey .workshop,
.hos-journey .gathering {height:250svh}
.hos-journey .sticky {position:sticky;top:0;height:100svh;min-height:670px;overflow:hidden}
.hos-journey .chapter-lead,
.hos-journey .chapter-story {position:absolute;left:8%;width:48%;max-width:760px}
.hos-journey .chapter-lead {top:31%;opacity:1}
.hos-journey .chapter-story {top:24%;max-width:545px;opacity:0;visibility:hidden;pointer-events:none}
.hos-journey .chapter[data-phase="story"] .chapter-lead {opacity:0;visibility:hidden;pointer-events:none}
.hos-journey .chapter[data-phase="story"] .chapter-story {opacity:1;visibility:visible;pointer-events:auto}
.hos-journey .eyebrow {font-size:12px;letter-spacing:.2em;font-weight:400;margin:0 0 28px;line-height:1.6}
.hos-journey h1,
.hos-journey h2 {font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.06em;line-height:.96;margin:0}
.hos-journey h1 {font-size:clamp(76px,8.5vw,148px)}
.hos-journey h2 {font-size:clamp(64px,6.8vw,112px)}
.hos-journey h1 em,
.hos-journey h2 em {font-weight:400}
.hos-journey .chapter-story h2 {font-size:clamp(48px,5vw,80px)}
.hos-journey .invitation {font-size:17px;margin-top:30px;color:#e0e2d1;line-height:1.6;max-width:350px}
.hos-journey .chapter-story>p:not(.eyebrow) {font-size:16px;line-height:1.75;max-width:460px;margin:24px 0 0}
.hos-journey .chapter-story>p.source-note {font-size:14px;color:#bdc7b8;border-left:1px solid #aeb69a70;padding-left:17px;margin-top:20px}
.hos-journey .chapter-bottom {position:absolute;left:8%;right:6%;bottom:37px;display:flex;justify-content:space-between;align-items:flex-end;gap:22px}
.hos-journey .scroll-cue {display:flex;align-items:center;gap:18px;font-size:10px;letter-spacing:.17em}
.hos-journey .scroll-cue i {height:45px;width:1px;background:linear-gradient(transparent,#e4dfbb)}
.hos-journey .chapter-caption,
.hos-journey .small-label {font-size:10px;letter-spacing:.13em;line-height:1.6;color:#d0d3bf}
.hos-journey .small-label {max-width:220px;color:#bdbfae}
.hos-journey .chapter-caption {text-align:right}
.hos-journey .text-link {display:inline-flex;align-items:center;gap:25px;font-size:14px;border-bottom:1px solid #eee8c66b;padding:10px 0;margin-top:22px}
.hos-journey .text-link span {font-size:21px}
.hos-journey .choices {display:flex;gap:6px;margin-top:24px;flex-wrap:wrap}
.hos-journey .choices button {border:1px solid #ddccaa55;background:#18211940;border-radius:100px;padding:10px 19px;font-size:14px}
.hos-journey .choices button[aria-pressed="true"] {background:#e4dbbd;color:#222b21;border-color:#e4dbbd}
.hos-journey .choices button:hover {border-color:#faf9dd}
.hos-journey .chapter-story>p.choice-description {font-size:14px;color:#d0c9b8;min-height:75px;margin-top:15px}
.hos-journey .chapter-story .choices~.text-link {margin-top:7px}
.hos-journey .progress {position:fixed;right:25px;top:45%;height:130px;width:1px;background:#eee9cf30;z-index:4}
.hos-journey .progress span {display:block;width:1px;height:100%;background:#ded8ac;transform:scaleY(var(--journey-progress));transform-origin:top}
.hos-journey .closing {position:relative;background:#081f12;padding:125px 8% 32px;border-top:1px solid #d5d4b125;min-height:100svh}
.hos-journey .closing h2 {max-width:720px}
.hos-journey .closing-copy {max-width:450px;margin:35px 0 70px auto;color:#c4cdbd;font-size:17px;line-height:1.8}
.hos-journey .cycle {display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid #a1ac9055;border-bottom:1px solid #a1ac9055}
.hos-journey .cycle a {padding:28px 30px 30px 0}
.hos-journey .cycle a+a {padding-left:30px;border-left:1px solid #a1ac9033}
.hos-journey .cycle span {font-size:10px;letter-spacing:.13em;color:#b6c4b3}
.hos-journey .cycle strong {display:block;font:400 clamp(60px,7vw,110px)/1.5 Georgia,serif;letter-spacing:-.055em}
.hos-journey .cycle small {display:flex;justify-content:space-between;font-size:14px;line-height:1.5}
.hos-journey .cycle b {font-weight:400;padding-right:10px}
.hos-journey .cycle a:hover strong {color:#d5c58d}
.hos-journey .journey-colophon {display:flex;align-items:center;gap:28px;margin-top:50px;color:#9faf9f;font-size:12px;line-height:1.7}
.hos-journey .journey-colophon .hos-mark {width:48px;height:48px}
.hos-journey .journey-colophon p {max-width:530px}
.hos-journey .journey-colophon a {margin-left:auto;white-space:nowrap;font-size:14px;color:var(--ink)}
.hos-journey #fallback-message {position:absolute;top:135px;left:8%;font-size:13px;max-width:80%;color:#e1e2d1}
body:not(.scene-ready) .hos-journey .chapter,
body.scene-unavailable .hos-journey .chapter {height:auto;min-height:100svh}
body:not(.scene-ready) .hos-journey .sticky,
body.scene-unavailable .hos-journey .sticky {position:relative;height:auto;min-height:100svh;padding:190px 8% 100px;overflow:visible}
body:not(.scene-ready) .hos-journey .chapter .chapter-lead,
body.scene-unavailable .hos-journey .chapter .chapter-lead,
body:not(.scene-ready) .hos-journey .chapter .chapter-story,
body.scene-unavailable .hos-journey .chapter .chapter-story {position:relative;top:auto;left:auto;width:100%;opacity:1;visibility:visible;pointer-events:auto;transform:none}
body:not(.scene-ready) .hos-journey .chapter .chapter-story,
body.scene-unavailable .hos-journey .chapter .chapter-story {margin-top:75px}
body:not(.scene-ready) .hos-journey .chapter .chapter-story h2,
body.scene-unavailable .hos-journey .chapter .chapter-story h2 {font-size:45px}
body:not(.scene-ready) .hos-journey .chapter-bottom,
body.scene-unavailable .hos-journey .chapter-bottom {position:static;margin-top:50px}
body:not(.scene-ready) .hos-journey .progress,
body.scene-unavailable .hos-journey .progress {display:none}
@media(max-width:900px){.hos-journey .chapter-nav {gap:20px}
.hos-journey .chapter-nav a span {display:none}
.hos-journey .chapter-lead,
.hos-journey .chapter-story {width:64%}
.hos-journey .chapter-caption {max-width:190px}
.hos-journey .chapter-story h2 {font-size:60px}
.hos-journey .closing-copy {margin-left:0}
}
@media(max-width:650px){.hos-journey .chapter-nav {order:3;flex-basis:100%;justify-content:space-between;border-top:1px solid #faf9dd30;padding-top:3px;gap:16px}
.hos-journey .chapter-nav a {font-size:13px;padding:9px 0}
.hos-journey .chapter-nav a span {display:inline;font-size:10px}
.hos-journey #motion {font-size:11px;padding:10px 12px}
.hos-journey .chapter {height:235svh}
.hos-journey .workshop,
.hos-journey .gathering {height:245svh}
.hos-journey .sticky {min-height:700px}
.hos-journey .chapter-lead {left:8%;width:84%;top:30%}
.hos-journey .chapter-story {left:8%;width:82%;top:24%;max-width:400px}
.hos-journey .eyebrow {font-size:10px;letter-spacing:.15em;margin-bottom:24px}
.hos-journey h1 {font-size:clamp(68px,15.5vw,96px)}
.hos-journey h2 {font-size:clamp(58px,13.3vw,82px)}
.hos-journey .chapter-story h2 {font-size:48px}
.hos-journey .chapter-story>p:not(.eyebrow) {font-size:15px;line-height:1.65;margin-top:19px}
.hos-journey .chapter-story>p.source-note,
.hos-journey .chapter-story>p.choice-description {font-size:13px}
.hos-journey .invitation {font-size:15px;max-width:260px;margin-top:25px}
.hos-journey .chapter-bottom {left:8%;right:8%;bottom:27px}
.hos-journey .chapter-caption {font-size:9px;max-width:150px}
.hos-journey .small-label {font-size:9px;max-width:130px}
.hos-journey .scroll-cue {font-size:9px;gap:12px}
.hos-journey .scroll-cue i {height:35px}
.hos-journey .choices {margin-top:20px}
.hos-journey .choices button {font-size:13px;padding:9px 16px}
.hos-journey .text-link {font-size:13px;margin-top:16px}
.hos-journey .progress {right:14px;height:80px}
.hos-journey .closing {padding:100px 8% 30px}
.hos-journey .closing-copy {font-size:16px;margin-bottom:45px}
.hos-journey .cycle {display:block}
.hos-journey .cycle a {display:block;padding:25px 0}
.hos-journey .cycle a+a {border-left:0;border-top:1px solid #a1ac9033;padding:25px 0}
.hos-journey .cycle strong {font-size:70px;line-height:1.3}
.hos-journey .cycle small {font-size:14px}
.hos-journey .journey-colophon {flex-wrap:wrap;gap:18px}
.hos-journey .journey-colophon p {flex:1;font-size:11px}
.hos-journey .journey-colophon a {margin-left:0;flex-basis:100%}
.hos-journey .veil,
body[data-world="1"] .hos-journey .veil,
body[data-world="2"] .hos-journey .veil {background:linear-gradient(90deg,#102119aa,#10211920),linear-gradient(0deg,#102119b3,transparent 24%,#10211966 70%,#10211999)}
}
@media(prefers-reduced-motion:reduce){.hos-journey * {transition:none!important}
}


/* Journey chapter controls sit below the shared site header. The primary
   navigation, brand and cart stay in the same header on every page. */
.hos-journey { position: relative; isolation: isolate; }
.hos-journey [hidden] { display: none !important; }

.hos-journey .journey-controls { position: sticky; top: var(--journey-header-height, 0px); z-index: 5; display: flex; align-items: center; gap: 30px; padding: 12px 8%; background: #081f12ed; }
body.admin-bar .hos-journey .journey-controls { top: calc(var(--journey-header-height, 0px) + 32px); }
.hos-journey .chapter, .hos-journey .closing { scroll-margin-top: var(--journey-header-height, 0px); }

.hos-journey .journey-controls__utils { display: flex; align-items: center; gap: 18px; margin-left: auto; }

.hos-journey #fallback-message { position: relative; top: auto; left: auto; margin: 24px 8%; }
.hos-journey .journey-mark .hos-mark { color: inherit; width: 48px; height: 48px; }
.hos-journey .journey-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 22px; margin-left: auto; }
.hos-journey .journey-actions a { margin: 0; }
.hos-journey .journey-colophon .journey-cta { margin-left: 0; padding: 14px 28px; border-radius: 100px; background: #e2d3a0; color: #152820; font-size: 14px; white-space: nowrap; }
.hos-journey .journey-colophon .journey-cta:hover { background: #f0e4bb; }
.hos-journey .closing-copy p + p { margin-top: 1em; }

.hos-journey-footer { position: relative; z-index: 1; background: #10201b; color: #8d9c8d; padding: 26px 8%; font: 12px/1.7 Arial, Helvetica, sans-serif; }
.hos-journey-footer p { margin: 0; }

@media (max-width: 900px) {
 .hos-journey .journey-controls { gap: 20px; }
}
@media (max-width: 650px) {
 .hos-journey .journey-controls { padding: 10px 6%; gap: 12px; flex-wrap: wrap; }
 .hos-journey .journey-controls .chapter-nav { order: 3; flex-basis: 100%; justify-content: space-between; border-top: 1px solid #faf9dd30; padding-top: 3px; gap: 16px; }
 .hos-journey .journey-controls__utils { gap: 14px; }
 .hos-journey .journey-actions { width: 100%; margin-left: 0; gap: 18px; }
 .hos-journey .journey-colophon .journey-cta { flex-basis: 100%; text-align: center; }
 .hos-journey-footer {
  padding-inline: 24px;
  padding-inline:
   max(24px, calc(env(safe-area-inset-left, 0px) + 20px))
   max(24px, calc(env(safe-area-inset-right, 0px) + 20px));
 }
}
@media (max-width: 782px) {
 body.admin-bar .hos-journey .journey-controls { top: calc(var(--journey-header-height, 0px) + 46px); }
}
