/* Route-only shell (loaded only on /hub and /ancient-teachings, after the app's global
   stylesheet). The main app paints body colours and global element styles that the
   imported source does not expect; revert them to browser defaults so the approved
   source renders as it does standalone. Source class rules still win (higher specificity). */
html body{background:transparent;color:inherit}
h1,h2,h3,h4{font-family:revert;font-weight:revert;color:revert;letter-spacing:revert;line-height:revert;margin:revert}
p{margin:revert;max-width:revert}
a{color:revert;text-decoration:revert;border-bottom:revert;transition:revert}
a:hover{color:revert;border-bottom-color:revert}
/* Hub chrome shares the homepage's forest-green surfaces; retain the scenic source backdrop. */
:root{--hub-site-background:#050d08;--hub-site-surface:#0d1a12;--hub-site-text:#e8eee8;--hub-site-muted:#bbb8ad;--hub-site-gold:#d8b86b;--hub-site-border:color-mix(in srgb,var(--hub-site-gold) 24%,transparent)}
html body:has(.hub-step){background:var(--hub-site-background)}
#experience:has(.hub-step){background:var(--hub-site-background)}
#experience .hub-step{color:var(--hub-site-text)}
#experience .hub-masthead-v108{background:var(--hub-site-background);margin-bottom:22px}
#experience .hub-masthead-v108 .public-navigation{--nav-bg:var(--hub-site-background);width:100%;max-width:100%;margin-inline:0;min-width:0}
#experience .hub-menu-tab{background:transparent;border:0;border-bottom:1px solid var(--hub-site-border);border-radius:0;color:var(--hub-site-muted)}
#experience .hub-masthead-v108 .hub-menu{background:var(--hub-site-background);border-color:var(--hub-site-border);border-radius:0;box-shadow:none;grid-template-columns:repeat(3,minmax(0,1fr))!important;max-width:1040px;box-sizing:border-box}
#experience .hub-menu-tab{min-width:0;white-space:normal;overflow-wrap:anywhere}
@media(max-width:420px){#experience .hub-menu-tab{gap:6px;padding:10px 6px;font-size:12px}#experience .hub-masthead-v108 .hub-menu{gap:3px}}
#experience .hub-menu-tab[aria-selected=true]{background:transparent;border-bottom:2px solid var(--hub-site-gold);color:var(--hub-site-gold)}
#experience .hub-tile,#experience .hub-craft,#experience .hub-world-invite,#experience .hub-site-footer{background:var(--hub-site-surface);border-color:var(--hub-site-border);border-radius:8px;box-shadow:none}
#experience .hub-copy,#experience .hub-unlocked,#experience .hub-locked{background:var(--hub-site-surface)}
#experience .hub-craft>p:not(.offer-kicker),#experience .hub-copy>p,#experience .hub-section-heading>p:not(.offer-kicker){color:var(--hub-site-muted)}
#experience .hub-unlock-action,#experience .hub-unlock-action:hover,#experience .hub-unlocked .hub-unlock-action{background:transparent;border-color:var(--hub-site-gold);color:var(--hub-site-gold);border-radius:8px}
#experience .hub-realm-entry-v107{--hub-portal-surface:var(--hub-site-surface)}

/* Compact illustrated navigation; previews never displace page content. */
#experience .hub-masthead-v108{position:relative;top:0;margin-bottom:14px;background:var(--hub-site-surface)}
#experience .hub-masthead-v108 .public-navigation{--nav-bg:var(--hub-site-surface);min-height:68px;padding:8px 20px;gap:16px}
#experience .hub-masthead-v108 .hub-menu{width:100%!important;max-width:none;margin:0!important;background:var(--hub-site-surface);gap:4px;padding:0 max(16px,calc((100% - 1040px)/2));border:0;border-bottom:1px solid var(--hub-site-border)}
.hub-tab-wrap{position:relative;min-width:0}
#experience .hub-menu-tab{width:100%;min-height:68px;padding:6px 12px;gap:12px;background:var(--hub-site-surface);font-size:14px}
#experience .hub-menu-tab .hub-nav-art{display:block;object-fit:contain;width:52px;height:52px;flex:none}
#experience .hub-menu-tab[aria-selected=true]{background:var(--hub-site-surface)}
.hub-tab-preview{position:absolute;top:100%;left:50%;transform:translate(-50%,8px);width:min(300px,80vw);background:var(--hub-site-surface);border:1px solid var(--hub-site-border);border-radius:8px;z-index:60;visibility:hidden;opacity:0;transition:opacity .18s,transform .18s;box-shadow:0 12px 28px color-mix(in srgb,var(--hub-site-background) 70%,transparent)}
.hub-tab-wrap:not(.preview-dismissed):hover .hub-tab-preview,.hub-tab-wrap:not(.preview-dismissed):focus-within .hub-tab-preview{visibility:visible;opacity:1;transform:translate(-50%,0)}
.hub-preview-open{display:flex;flex-direction:column;gap:10px;align-items:stretch;width:100%;border:0;background:transparent;color:var(--hub-site-text);text-align:left;padding:12px;cursor:pointer}
.hub-preview-open>img{width:100%;height:135px;object-fit:cover;border-radius:6px}
.hub-preview-open>strong{font:22px/1.2 Georgia,serif;color:var(--hub-site-gold)}
.hub-preview-open>span{font:13px/1.5 Arial,sans-serif}
.hub-preview-open .hub-preview-cta{color:var(--hub-site-gold);border-top:1px solid var(--hub-site-border);padding-top:10px}
#experience .hub-menu-tab:focus-visible,.hub-preview-open:focus-visible{outline:2px solid var(--hub-site-gold);outline-offset:-3px}
#experience .hub-realm-entry-v107{position:static!important;width:100%!important;max-width:100%!important;display:flex;align-items:center;justify-content:space-between;gap:16px;background:var(--hub-site-surface);border:0;border-radius:0;padding:12px 16px!important;margin:0;font:13px/1.5 Arial,sans-serif}
#experience .hub-realm-entry-v107 p{margin:0;max-width:650px}
#experience .hub-realm-entry-v107 .offer-primary{flex:none;font-size:12px;margin:0}
#experience .hub-section-map .realm-heading{display:flex;align-items:center;padding:8px 0;gap:12px}
#experience .hub-section-map .realm-heading h2{font-size:24px;margin:0}
#experience .hub-section-map .realm-heading .offer-kicker,#experience .hub-section-map .realm-heading p:not(.offer-kicker){display:none}
#experience .hub-section-map .realm-tree-action{min-height:38px;padding:8px 12px;font:12px/1.3 Arial,sans-serif;background:transparent;box-shadow:none;color:var(--hub-site-gold);border:1px solid var(--hub-site-border);border-radius:8px}
#experience .hub-section-map .map-intro-offer{display:none}
@media(max-width:1000px){#experience .hub-masthead-v108 .public-navigation{min-height:100px;padding:8px 12px 0;gap:0 10px}}
@media(max-width:600px){#experience .hub-masthead-v108 .hub-menu{padding:0 6px}#experience .hub-menu-tab{min-height:60px;gap:6px;padding:6px 4px;font-size:12px}#experience .hub-menu-tab .hub-nav-art{width:36px;height:42px}.hub-tab-wrap:first-child .hub-tab-preview{left:0;transform:translate(0,8px)}.hub-tab-wrap:last-child .hub-tab-preview{left:auto;right:0;transform:translate(0,8px)}.hub-tab-wrap:first-child:hover .hub-tab-preview,.hub-tab-wrap:last-child:hover .hub-tab-preview,.hub-tab-wrap:first-child:focus-within .hub-tab-preview,.hub-tab-wrap:last-child:focus-within .hub-tab-preview{transform:translate(0,0)}#experience .hub-realm-entry-v107{flex-direction:column;align-items:flex-start;gap:8px}#experience .hub-section-map .realm-heading h2{font-size:20px}}
@media(hover:none){.hub-tab-wrap:hover .hub-tab-preview{visibility:hidden;opacity:0}.hub-tab-wrap:focus-within .hub-tab-preview{visibility:hidden;opacity:0}}

/* Override legacy Hub span and full-screen map rules only in shared chrome. */
#experience .hub-masthead-v108 .public-navigation .brand{display:flex;align-items:center;gap:10px}
#experience .hub-masthead-v108 .public-navigation .brand .nav-animal-mark{display:block;width:88px;height:48px;flex:none}
#experience .hub-masthead-v108 .public-navigation .brand .nav-brand-name{display:block;font:16px/1.2 Georgia,serif;color:var(--hub-site-text)}
#experience .hub-masthead-v108 .public-navigation .nav-brand-name>span{display:block;font:10px/1.5 Arial,sans-serif}
#experience .hub-masthead-v108 .hub-menu{position:relative;top:auto;left:auto;right:auto;overflow:visible;backdrop-filter:none}
#experience .hub-step:has(.realm-explorer) .step-body{height:auto;overflow:auto;padding:0;flex:1;min-height:0}
#experience .hub-step .realm-explorer{position:relative;inset:auto;overflow:visible}
#experience .hub-step .realm-map-frame{position:relative;inset:auto;aspect-ratio:16/9;min-height:400px}
#experience .hub-step .realm-viewport{height:100%;position:absolute;inset:0}
#experience .hub-step .realm-canvas{width:100%;min-width:1000px;height:100%;min-height:400px}
#experience .hub-step .realm-heading{position:relative;inset:auto;display:flex;max-width:none;padding:8px 16px;background:var(--hub-site-surface);border:0;border-radius:0;backdrop-filter:none;margin:0}
#experience .hub-step .realm-heading .offer-kicker,#experience .hub-step .realm-heading p:not(.offer-kicker){display:none}
#experience .hub-step .realm-heading h2{font-size:22px;margin:0}
#experience .hub-step .realm-tree-action{background:transparent;min-height:36px;margin:0;padding:8px 12px;box-shadow:none;font:12px/1.3 Arial,sans-serif;border:1px solid var(--hub-site-border);border-radius:8px}
#experience .hub-step .realm-map-legend{position:static;background:var(--hub-site-surface);padding:8px 16px;margin:0}
#experience .hub-step .realm-destinations{display:none}
#experience .hub-tab-preview{background:var(--hub-site-surface);color:var(--hub-site-text);opacity:0}
#experience .hub-tab-wrap:not(.preview-dismissed):hover .hub-tab-preview,#experience .hub-tab-wrap:not(.preview-dismissed):focus-within .hub-tab-preview{opacity:1}
@media(max-width:600px){#experience .hub-masthead-v108 .public-navigation .brand .nav-animal-mark{width:56px;height:40px}#experience .hub-masthead-v108 .public-navigation .brand .nav-brand-name{font-size:13px}#experience .hub-step .realm-map-frame{min-height:380px}#experience .hub-step .realm-heading{gap:8px}#experience .hub-step .realm-heading h2{font-size:18px}#experience .hub-step .realm-canvas{min-width:740px;min-height:380px}}
@media(hover:none){#experience .hub-tab-wrap:hover .hub-tab-preview,#experience .hub-tab-wrap:focus-within .hub-tab-preview{visibility:hidden;opacity:0}}

#experience .hub-step .realm-heading>div{min-width:0;flex:1}
#experience .hub-step .realm-tree-action{width:auto;max-width:220px;flex:none}
#experience .hub-step .map-intro-offer{display:none}
#experience .hub-section-map .realm-map-frame{border-radius:0}
#experience .hub-section-map .realm-heading{flex-direction:row;align-items:center}
#experience .hub-section-map .realm-heading h2{white-space:normal;max-width:none}
#experience .hub-realm-entry-v107{clear:both}

:root{--hub-tab-glow:0 0 9px color-mix(in srgb,var(--hub-site-gold) 65%,transparent)}
#experience .hub-step{width:100%;max-width:none;padding-inline:0}
#experience .hub-masthead-v108{width:100%;max-width:none;margin-inline:0}
#experience .hub-masthead-v108 .public-navigation{width:100%;max-width:none;min-height:64px;padding:6px max(20px,calc((100% - 1180px)/2))}
#experience .hub-step>.step-body,#experience .hub-step>.step-footer{width:min(1240px,100%);margin-inline:auto;box-sizing:border-box;padding-inline:24px}
#experience .hub-menu-tab{font-family:Cinzel,Georgia,serif;font-weight:500;font-size:16px;letter-spacing:0}
#experience .hub-menu-tab .hub-nav-art{filter:drop-shadow(var(--hub-tab-glow));width:58px;height:58px}
#experience .hub-menu-tab:hover .hub-nav-art,#experience .hub-menu-tab[aria-selected=true] .hub-nav-art{filter:drop-shadow(var(--hub-tab-glow)) drop-shadow(var(--hub-tab-glow))}
@media(max-width:1000px){#experience .hub-masthead-v108 .public-navigation{min-height:96px;padding-bottom:0}}
@media(max-width:600px){#experience .hub-masthead-v108 .public-navigation{padding-inline:12px}#experience .hub-menu-tab{font-size:11px}#experience .hub-menu-tab .hub-nav-art{width:40px;height:44px}#experience .hub-step>.step-body,#experience .hub-step>.step-footer{padding-inline:12px}}

#experience .hub-step{border:0;border-radius:0}

#experience:has(.hub-step){inset:0;width:100%;max-width:none;margin:0;border:0;border-radius:0}

/* Map uses the entire viewport below the real header; other Hub panels stay constrained. */
#experience .hub-step:has(.hub-section-map){height:100dvh;min-height:100dvh;display:flex;flex-direction:column;overflow:hidden}
#experience .hub-step:has(.hub-section-map) .hub-masthead{flex:none;margin-bottom:0}
#experience .hub-step:has(.hub-section-map)>.step-body{width:100%;max-width:none;padding:0;min-height:0;flex:1;overflow:auto;display:flex;flex-direction:column}
#experience .hub-section-map.realm-explorer{width:100%;max-width:none;flex:1;min-height:0;display:flex;flex-direction:column;margin:0;padding:0;border:0;border-radius:0}
#experience .hub-step .hub-section-map .realm-map-frame{flex:1;min-height:220px;aspect-ratio:auto;width:100%;margin:0;border:0;border-radius:0;box-shadow:none}
#experience .hub-step .hub-section-map .realm-heading,#experience .hub-section-map .realm-map-legend,#experience .hub-section-map .hub-realm-entry-v107{flex:none}
#experience .hub-step:has(.hub-section-map) .hub-site-footer,#experience .hub-step:has(.hub-section-map)>.step-footer{display:none}

/* Shared compact logo/account/MORE row; keep Hub's own illustrated tabs unchanged. */
#experience .hub-masthead-v108 .public-navigation{grid-template-columns:minmax(0,1fr) auto;column-gap:22px;min-height:56px;padding-block:4px;gap:0 12px}
@media(min-width:1001px){
  #experience .hub-masthead-v108 .public-navigation{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);column-gap:clamp(18px,2vw,34px)}
  #experience .hub-masthead-v108 .home-discovery-navigation{grid-column:2;grid-row:1;grid-template-columns:repeat(3,auto);justify-content:center;align-items:center;width:auto;gap:clamp(8px,1.1vw,18px);padding:0}
  #experience .hub-masthead-v108 .home-discovery-navigation a{min-height:clamp(58px,4.6vw,72px);gap:clamp(9px,0.9vw,14px);font-size:clamp(15px,1.25vw,19px);padding:2px clamp(6px,0.9vw,14px)}
  #experience .hub-masthead-v108 .home-discovery-navigation a>img{width:clamp(44px,4.2vw,58px);height:clamp(44px,4.2vw,58px)}
  #experience .hub-masthead-v108 .nav-tools{grid-column:3;grid-row:1;gap:clamp(16px,1.8vw,30px)}
  #experience .hub-masthead-v108 .brand .nav-wordmark{width:clamp(152px,13vw,196px)}
  #experience .hub-masthead-v108 .brand .nav-wordmark img{height:clamp(30px,2.6vw,40px)}
  #experience .hub-masthead-v108 .nav-more summary{font-size:clamp(13px,1.05vw,16px);gap:clamp(8px,0.7vw,11px)}
  #experience .hub-masthead-v108 .nav-more summary img{width:clamp(34px,2.9vw,44px);height:clamp(34px,2.9vw,44px)}
  #experience .hub-masthead-v108 .nav-account{width:38px;height:38px}
}

#experience .hub-step .hub-section-map .realm-heading{justify-content:center;padding:8px 12px calc(8px + env(safe-area-inset-bottom));margin:0}
#experience .hub-step .hub-section-map .realm-tree-action{display:flex;align-items:center;justify-content:center;gap:12px;width:auto;max-width:none;border:0;padding:4px 12px;font:16px/1.3 Cinzel,Georgia,serif;color:var(--hub-site-gold);min-height:44px}
.realm-travel-compass{display:flex;align-items:center;flex:none;filter:drop-shadow(var(--hub-tab-glow))}
#experience .hub-realm-entry-v107{justify-content:center}
#experience .hub-masthead-v108 .hub-menu{display:none}

/* Travel and doorway presentation stay below the shared header, outside its inert content. */
:root{--realm-scene-ink:#000;--realm-scene-text:#f1ede4;--realm-scene-shade:color-mix(in srgb,var(--realm-scene-ink) 76%,transparent);--realm-dock-fill:color-mix(in srgb,var(--hub-site-background) 88%,transparent);--realm-gold-action:linear-gradient(120deg,#8c7038,#e0c48c);--realm-pin-glow:0 2px 12px color-mix(in srgb,var(--hub-site-gold) 50%,transparent)}
.realm-scene-overlay{position:fixed;inset:var(--scene-top,100px) 0 0;z-index:150;overflow:auto;isolation:isolate;background:var(--realm-scene-ink);color:var(--realm-scene-text);box-sizing:border-box;display:flex;flex-direction:column;align-items:center;padding:80px 24px 40px}
.realm-scene-background{position:fixed;top:var(--scene-top,100px);left:0;width:100%;height:calc(100dvh - var(--scene-top,100px));object-fit:cover;z-index:-2;pointer-events:none;filter:none}
.realm-scene-overlay:before{content:'';position:fixed;inset:var(--scene-top,100px) 0 0;z-index:-1;pointer-events:none;background:linear-gradient(90deg,var(--realm-scene-shade),color-mix(in srgb,var(--realm-scene-ink) 48%,transparent),var(--realm-scene-shade))}
.realm-back-map{position:absolute;top:18px;left:24px;background:var(--realm-scene-ink);border:1px solid var(--hub-site-border);color:var(--realm-scene-text);border-radius:5px;padding:12px 16px;min-height:44px;font:13px/1.3 Mulish,Arial,sans-serif;cursor:pointer}
.realm-back-map:focus-visible,.realm-scene-overlay button:focus-visible{outline:2px solid var(--hub-site-gold);outline-offset:4px}
.realm-scene-copy,.rootway-content{width:min(740px,100%);margin:auto;box-sizing:border-box;text-align:center}
.realm-scene-copy h2,.rootway-content h2{font:normal 40px/1.15 Cinzel,Georgia,serif;color:var(--hub-site-gold);margin:14px 0 20px;letter-spacing:0}
.realm-scene-copy h3{font:normal 23px/1.3 Cormorant,Georgia,serif;color:var(--realm-scene-text);margin:24px 0 12px}
.realm-scene-copy p,.rootway-content>p{font:16px/1.8 Mulish,Arial,sans-serif;color:var(--realm-scene-text);margin:12px 0}
.realm-scene-copy .offer-kicker,.rootway-content .offer-kicker{color:var(--hub-site-gold);font-size:12px}
.realm-scene-copy ul{display:flex;justify-content:center;flex-wrap:wrap;gap:10px 28px;list-style:none;padding:0;font:15px/1.7 Mulish,Arial,sans-serif}
.realm-scene-copy .offer-primary{width:auto;max-width:100%;margin:24px auto 0;min-height:48px}
.rootway-content{width:min(1120px,100%)}
.rootway-content .rootway-choices{grid-template-columns:repeat(6,minmax(0,1fr));gap:14px;margin-top:32px}
.rootway-content .rootway-choice{background:var(--realm-dock-fill);border-color:var(--hub-site-border);border-radius:6px;text-align:center;padding:0 0 18px;color:var(--realm-scene-text)}
.rootway-content .rootway-choice img{height:auto;aspect-ratio:4/5;object-fit:cover;margin:0 0 16px}
.rootway-content .rootway-choice span{font:16px/1.4 Cinzel,Georgia,serif;margin:0 8px;color:var(--hub-site-gold)}
.rootway-content .rootway-choice small{font:12px/1.4 Mulish,Arial,sans-serif;margin:10px 8px 0;color:var(--realm-scene-text)}
.rootway-content .rootway-choice:disabled{opacity:1;border:1px solid var(--hub-site-gold)}
.rootway-content .rootway-choice:hover:not(:disabled){border-color:var(--hub-site-gold);transform:translateY(-3px)}
#experience .hub-step .hub-section-map .realm-heading{position:absolute;bottom:12px;left:50%;transform:translateX(-50%);z-index:6;width:max-content;max-width:calc(100% - 24px);background:var(--realm-dock-fill);border:1px solid var(--hub-site-border);border-radius:6px;gap:18px;padding:8px 12px}
#experience .hub-step .hub-section-map .realm-tree-action{background:var(--realm-gold-action);color:var(--realm-scene-ink);border-radius:4px;gap:8px;font:13px/1.3 Cinzel,Georgia,serif;padding:6px 12px}
.realm-current-location{display:flex;flex-direction:column;gap:2px;font:11px/1.4 Mulish,Arial,sans-serif;color:var(--hub-site-muted)}
.realm-current-location strong{font:17px/1.2 Cinzel,Georgia,serif;color:var(--hub-site-gold)}
#experience .hub-step .realm-canvas{min-width:0;min-height:0}
.realm-viewport{touch-action:none;scrollbar-width:none}
#experience .hub-step .realm-gold-pin{width:190px;height:48px;padding:8px;background:var(--realm-dock-fill);border:1px solid var(--hub-site-border);border-radius:6px;filter:drop-shadow(var(--realm-pin-glow))}
.realm-gold-pin>img{width:100%;height:100%;object-fit:contain;pointer-events:none}
#experience .hub-step .realm-places-toggle{display:none}
#experience .hub-section-map .realm-map-frame:after{content:'';position:absolute;inset:0;z-index:4;pointer-events:none;background:linear-gradient(90deg,var(--hub-site-background),transparent 5%,transparent 95%,var(--hub-site-background))}
@media(max-width:700px){.realm-scene-overlay{padding:76px 18px 28px}.realm-scene-copy h2,.rootway-content h2{font-size:27px}.realm-scene-copy p,.rootway-content>p{font-size:14px;line-height:1.7}.rootway-content .rootway-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}.rootway-content .rootway-choice img{aspect-ratio:16/9}.rootway-content .rootway-choice span{font-size:14px}.realm-back-map{left:18px;top:14px}#experience .hub-step .realm-gold-pin{width:150px;height:40px}#experience .hub-step .hub-section-map .realm-heading{gap:8px;bottom:calc(8px + env(safe-area-inset-bottom));padding:6px 8px}#experience .hub-step .hub-section-map .realm-tree-action{font-size:11px;padding:5px 8px}.realm-current-location strong{font-size:13px}.realm-current-location span{font-size:10px}}
html body .public-navigation .home-discovery-navigation .nav-discovery-item .nav-discovery-preview img,#experience .hub-masthead-v108 .home-discovery-navigation .nav-discovery-item .nav-discovery-preview img{display:block;width:100%;height:168px;max-width:none;object-fit:cover;filter:none;border-radius:4px}
/* Calm neutral Hub/offer backdrop — matches series page styling */
#experience:has(.hub-step) #scene-art,#experience[data-stage=offers] #scene-art,#experience[data-scene=experience-hub] #scene-art{display:none!important}
#experience:has(.hub-step),#experience[data-stage=offers],#experience[data-scene=experience-hub]{background:var(--hub-site-background)!important}
#experience .offers,#experience[data-stage=offers] .offers{background:var(--hub-site-background)!important}
#experience .offer{background:var(--hub-site-surface)!important;border:1px solid var(--hub-site-border)!important;box-shadow:none!important}

/* One clear travel action, paired with the current destination. */
#experience .hub-step .hub-section-map .realm-heading{gap:22px;padding:10px 12px 10px 20px;bottom:calc(16px + env(safe-area-inset-bottom));border-radius:8px;backdrop-filter:blur(12px)}
#experience .hub-step .hub-section-map .realm-current-location{display:grid;grid-template-columns:24px auto;column-gap:10px;row-gap:3px;flex:none;padding-right:22px;border-right:1px solid var(--hub-site-border)}
.realm-location-marker{grid-column:1;grid-row:1 / 3;align-self:center;font-size:26px;color:var(--hub-site-gold)}
.realm-location-label{grid-column:2;font:11px/1.3 Mulish,Arial,sans-serif;color:var(--hub-site-muted)}
.realm-current-location strong{grid-column:2;font-size:16px}
#experience .hub-step .hub-section-map .realm-tree-action{min-height:50px;gap:12px;padding:10px 16px;font-size:14px;border-radius:6px;cursor:pointer;transition:filter .18s}
#experience .hub-step .hub-section-map .realm-tree-action:hover{filter:brightness(1.12)}
#experience .hub-step .hub-section-map .realm-tree-action:focus-visible{outline:2px solid var(--hub-site-gold);outline-offset:4px}
.realm-travel-arrow{font:22px/1 Mulish,Arial,sans-serif;margin-left:6px}
@media(max-width:540px){#experience .hub-step .hub-section-map .realm-heading{width:calc(100% - 24px);box-sizing:border-box;gap:10px;padding:8px 10px;bottom:calc(12px + env(safe-area-inset-bottom))}#experience .hub-step .hub-section-map .realm-current-location{padding-right:10px;column-gap:6px;flex:1;grid-template-columns:18px auto}.realm-location-marker{font-size:22px}.realm-current-location strong{font-size:13px}.realm-location-label{font-size:10px}#experience .hub-step .hub-section-map .realm-tree-action{min-height:48px;padding:8px 10px;gap:8px;font-size:12px}.realm-travel-arrow{margin-left:0;font-size:18px}.realm-travel-compass svg{width:24px;height:24px}}
@media(prefers-reduced-motion:reduce){#experience .hub-step .hub-section-map .realm-tree-action{transition:none}}

/* Story introductions retain their scenic layer; Hub colours never override them. */
#experience[data-stage=offers]:not([data-scene=experience-hub]):not(:has(.hub-step)) #scene-art{display:block!important}
#experience:has(.welcome-v70),#experience:has(.chapter-pause){background:var(--hub-site-background)!important}
#experience #offers[data-cut=welcome],#experience #offers[data-cut=chapter]{background:transparent!important}
#experience:has(.welcome-v70)>.shade,#experience:has(.chapter-pause)>.shade{background:linear-gradient(180deg,color-mix(in srgb,var(--hub-site-background) 65%,transparent),color-mix(in srgb,var(--hub-site-background) 86%,transparent))}
#experience .welcome-v70 .welcome-card{border:0;border-radius:0;background:transparent;box-shadow:none}
#experience .welcome-v70 .welcome-world-v84 .welcome-art{opacity:0}
#experience .welcome-v70 .welcome-card:after{display:none}
body[data-ancient-entry-cell] #experience .welcome-world-v84 .welcome-copy{box-sizing:border-box;width:100%;max-width:850px}
body[data-ancient-entry-cell] #experience .welcome-world-v84 .welcome-card{height:auto;min-height:560px}
@media(max-width:700px){body[data-ancient-entry-cell] #experience .welcome-world-v84 .welcome-card{min-height:calc(100svh - 100px)}body[data-ancient-entry-cell] #experience .welcome-world-v84 .welcome-copy{padding:28px 18px}body[data-ancient-entry-cell] #experience .welcome-world-v84 h1{font-size:34px;line-height:1.16}}
#experience .studio-merged-v93{padding-bottom:28px}
#experience .chapter-pause{width:min(700px,calc(100% - 36px));margin:60px auto 30px;text-align:center;color:var(--hub-site-text);display:flex;align-items:center;flex-direction:column;gap:18px;padding-bottom:env(safe-area-inset-bottom)}
.chapter-pause h1{font:36px/1.2 Cinzel,Georgia,serif;color:var(--hub-site-gold);margin:0}
.chapter-pause>img{height:150px;width:140px;object-fit:contain}
.chapter-pause>p{font:16px/1.75 Mulish,Arial,sans-serif;margin:0;max-width:620px}
.chapter-pause button{min-height:44px;max-width:100%}
@media(max-width:700px){#experience .chapter-pause{margin-top:30px}.chapter-pause h1{font-size:28px}.chapter-pause>p{font-size:14px}}

#experience:has(.welcome-v70) #scene-art,#experience:has(.chapter-pause) #scene-art{filter:none!important;opacity:1!important;object-fit:cover}

/* Own portal sequence */
#experience[data-scene="own-portal"] .offers,#experience[data-scene="owl-three-ways"] .offers{background:linear-gradient(180deg,transparent 30%,color-mix(in oklab,#0b1410 70%,transparent));}
.own-portal{position:relative;min-height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:1rem;text-align:center;padding:2rem 1.25rem;overflow:hidden}
.own-portal h1{font-family:Cinzel,serif;color:#f3e2b4;font-size:clamp(1.4rem,3.2vw,2.3rem);margin:0;text-shadow:0 2px 18px #000a;max-width:34ch}
.own-portal-glow{position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse 18% 42% at 50% 46%,#fff4c8cc,#e0c48c55 45%,transparent 75%);animation:ownGlow 3.2s ease-in-out infinite}
.own-portal-mote{position:absolute;left:50%;bottom:20%;width:5px;height:5px;border-radius:50%;background:#fff1c2;box-shadow:0 0 10px #ffe9a8;animation:ownMote var(--d) linear infinite}
.own-portal-open{position:relative;z-index:2;font-family:Cinzel,serif;font-size:clamp(1rem,2vw,1.3rem);letter-spacing:.04em;padding:1.1rem 2.2rem;border-radius:999px;border:1px solid #f3e2b4;color:#2a1f0c;background:linear-gradient(110deg,#c9a865 35%,#fff2c8 50%,#c9a865 65%);background-size:250% 100%;box-shadow:0 0 40px #e0c48c88;cursor:pointer;animation:ownShine 2.6s linear infinite}
.own-portal-open:focus-visible{outline:3px solid #fff2c8;outline-offset:4px}
.own-portal-line{color:#f3e2b4;font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.2rem;margin:0;text-shadow:0 2px 10px #000}
.own-portal.is-opening .own-portal-glow{animation:ownBloom 1.5s ease-in forwards}
.own-portal-burst{position:absolute;inset:0;pointer-events:none;z-index:3}
.own-portal-star{position:absolute;left:50%;top:50%;color:#fff2c8;text-shadow:0 0 12px #e0c48c;animation:ownStar 1.3s ease-out forwards;opacity:0}
.own-portal-owl{width:min(130px,24vw);height:auto}
.own-portal-owl+.offer-kicker{margin:0}
.own-portal-owl~p{color:#efe4c8;margin:0}
.own-portal-ways{list-style:none;padding:0;margin:.2rem 0 .6rem;display:grid;gap:.55rem;color:#efe4c8;text-align:left}
.own-portal-ways li{background:#0d1712cc;border:1px solid #e0c48c55;border-radius:12px;padding:.6rem 1rem}
.own-portal-ways strong{color:#e0c48c}
@keyframes ownGlow{50%{opacity:.6;transform:scale(1.06)}}
@keyframes ownMote{0%{transform:translate(0,0);opacity:0}15%{opacity:1}100%{transform:translate(var(--x),-60vh);opacity:0}}
@keyframes ownShine{to{background-position:-200% 0}}
@keyframes ownBloom{to{background:radial-gradient(circle at 50% 46%,#fffbe8,#fff4c8 40%,#e0c48c 80%);transform:scale(3)}}
@keyframes ownStar{0%{opacity:0;transform:translate(-50%,-50%) scale(.2)}20%{opacity:1}100%{opacity:0;transform:translate(calc(-50% + var(--tx)),calc(-50% + var(--ty))) scale(1.2) rotate(120deg)}}
@media (prefers-reduced-motion:reduce){.own-portal-glow,.own-portal-mote,.own-portal-open{animation:none}.own-portal.is-opening{transition:opacity .5s;opacity:0}}
#experience .own-portal{width:100%;min-height:100dvh;box-sizing:border-box;margin:0;background:linear-gradient(180deg,#0b141033,#0b1410cc),var(--own-portal-art) center/cover no-repeat}
#experience .own-portal-owl~p,#experience .own-portal h1{max-width:min(640px,92vw)}
#experience .own-portal-ways{width:min(520px,92vw)}
@media(max-width:700px){#experience .own-portal{gap:.7rem;padding:1.2rem 1rem}.own-portal-owl{width:84px}#experience .own-portal h1{font-size:1.3rem}.own-portal-ways li{padding:.5rem .8rem;font-size:.92rem}}

/* Top header (Back, Visit website, Ancient Scroll) stays throughout the story, incl. offers/chapter/portal screens; Hub keeps its own header. */
#experience[data-stage=offers]:not([data-scene="experience-hub"]):not([data-scene="welcome-v70"]):not([data-scene="world-lore-v85"]):not([data-scene="studio-start-v85"]):not([data-scene="first-experience-v73"]):not([data-scene="before-experience-v70"]) .topbar{display:flex;position:fixed;top:0;left:0;right:0;z-index:60}
#experience[data-stage=offers]:not([data-scene="experience-hub"]):not([data-scene="welcome-v70"]):not([data-scene="world-lore-v85"]):not([data-scene="studio-start-v85"]):not([data-scene="first-experience-v73"]):not([data-scene="before-experience-v70"]) .offers{padding-top:max(76px,calc(env(safe-area-inset-top) + 68px))}
#experience[data-travelling=true] .story-header-actions{visibility:visible}

/* Map place/travel overlays start below the header; keep the header (and its MORE menu) above them. */
body:has(.realm-scene-overlay) #experience .hub-masthead-v108{z-index:160}

/* Story titles sit directly on the artwork, never inside a dark overlay. */
#experience .scene-heading{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important;backdrop-filter:none!important}
