/* Local integrated review. Warm, restrained cabinet delivery. */
.oracle-plane,.weather-stamp,.gustav-consent-gate{--night:#17120e;--night-soft:#211a14;--paper:#eee2c9;--paper-dim:#cbbda6;--chalk:#f0e7d7;--muted:#b3a48f;--line:rgba(220,192,151,.2);--gold:#d3b078}
.oracle-plane{background:#1c1611;border-color:#4e3c2b;overflow:visible}.oracle-plane::before,.oracle-stage::before{display:none}.oracle-stage{background:transparent;overflow:visible}.weather-stamp{background:#241b13;border-color:#655039;box-shadow:none}.masthead h1{color:var(--chalk)}
.fortune-cabinet{padding:0;border:1px solid #4e3b27;background:#100c08;box-shadow:none;animation:none!important}.fortune-cabinet::before,.fortune-cabinet::after,.cabinet-bulbs,.cabinet-flourish,.oracle-flash,.oracle-window::before{display:none}.cabinet-crown{display:block;background:transparent;border:0;padding:18px 12px;text-transform:none}.cabinet-crown h2{font-size:2rem;text-shadow:none;letter-spacing:-.02em;color:var(--paper);text-transform:none}.cabinet-crown small{font-size:.65rem;letter-spacing:.07em}.cabinet-crown b{font-size:.8rem;color:var(--muted);margin-top:6px}.cabinet-console{background:transparent;border:0;color:var(--muted);font-size:.7rem}.cabinet-plaque{color:var(--muted);font-size:.65rem}.cabinet-console,.cabinet-plaque{transition:opacity .2s}.cabinet-running .cabinet-console,.cabinet-running .cabinet-plaque{opacity:0}
.oracle-window{aspect-ratio:941/1672;border:0;outline:0;isolation:isolate}.oracle-window video,.oracle-stage.is-awakening .oracle-window video,.oracle-stage.has-reading .oracle-window video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:none;transform:none;transition:none}.oracle-window [hidden]{display:none!important}.cabinet-panorama{position:absolute;inset:0;will-change:transform}.cabinet-panorama img{position:absolute;inset:0;width:100%;height:100%;object-fit:fill}.cabinet-panorama .cabinet-lower{top:92%;mask-image:linear-gradient(transparent,#000 8%)}.cabinet-panorama.settled .cabinet-lower{mask-image:none}.oracle-standby{border:0;background:#130e09b0;color:#d1c0a2;text-transform:none;font-size:.75rem;letter-spacing:0}.oracle-standby small{font-size:.65rem}.cabinet-running .oracle-standby{opacity:0}
.delivery-controls{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;padding:0 10px 10px}.delivery-controls[hidden],.delivery-controls [hidden]{display:none!important}.delivery-controls button{font:13px/1.4 monospace;min-height:40px;padding:8px 12px;border:1px solid #746047;background:#1c1510;color:var(--paper);cursor:pointer}.delivery-controls button:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.delivery-status{min-height:1.5em;text-align:center;font:12px/1.5 monospace;color:var(--muted);margin:8px 14px}.delivery-status:empty{display:none}
.fortune-desk{overflow:visible;z-index:6;margin-top:24px;padding-top:0;align-items:start}.fortune-desk::before{display:none}.fortune-ticket,.oracle-stage.has-reading .fortune-ticket{animation:none;transform:none;transition:none}.fortune-ticket{transform-origin:top left}.cabinet-running .fortune-placeholder{opacity:0}.cabinet-running .fortune-ticket{visibility:hidden;pointer-events:none}.cabinet-dispensing .fortune-ticket{visibility:visible;opacity:1;transform-origin:top left;will-change:transform;pointer-events:none;z-index:8}.cabinet-dispensing .fortune-ticket>*{opacity:var(--delivery-content,0)}.cabinet-dispensing .fortune-ticket::before,.cabinet-dispensing .fortune-ticket::after{display:none}.cabinet-dispensing .fortune-ticket{background:var(--paper);box-shadow:4px 8px 18px #0004}.oracle-stage:not(.has-reading):not(.cabinet-dispensing) .fortune-ticket{pointer-events:none}.cabinet-running .chart-dossier{visibility:hidden}
@media(max-width:700px){.oracle-plane{background:#1b150f}.oracle-stage{padding:24px 12px}.fortune-cabinet{width:min(100%,390px)}.fortune-desk{padding:0;margin-top:24px}.oracle-stage:not(.has-reading) .fortune-ticket{position:relative;inset:auto}.delivery-controls button{min-height:44px}.cabinet-crown{padding:14px}.cabinet-console,.cabinet-plaque{font-size:.7rem}}
@media(prefers-reduced-motion:reduce){.cabinet-panorama,.fortune-ticket{will-change:auto}.cabinet-console,.cabinet-plaque{transition:none}}


/* Homepage shell. Cabinet palette above is scoped to its own surfaces. */
:root{--paper:#f2efe8;--paper-dim:#b6ae9f;--night:#09090a;--night-soft:#111115;--chalk:#f2efe8;--muted:#b6ae9f;--gold:#d6b47a;--line:rgba(255,255,255,.12)}
body{padding:28px 16px 40px;background:radial-gradient(circle at 8% 2%,rgba(143,174,194,.15),transparent 32rem),radial-gradient(circle at 94% 12%,rgba(159,195,173,.1),transparent 30rem),linear-gradient(180deg,#090a0b,#08090a)}
.page-grid{opacity:1;background-image:linear-gradient(rgba(255,255,255,.018) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.018) 1px,transparent 1px);background-size:56px 56px;mask-image:linear-gradient(to bottom,black,transparent 72%)}
.site-frame{width:100%;max-width:1180px;margin:0 auto;padding:24px 24px 16px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:rgba(12,12,14,.82);box-shadow:0 24px 70px rgba(0,0,0,.42)}
.site-frame>main,.site-frame>footer{width:100%;max-width:none;margin-inline:0}
.site-header,.lang-switcher-wrap{--ink:#f2efe8;--accent:#d6b47a;--muted:#b6ae9f;--border:rgba(255,255,255,.12);--radius:10px;font-family:Georgia,"Times New Roman",serif;line-height:normal}
.site-frame>.site-header{position:sticky;top:12px;width:100%;max-width:none;min-height:0;margin:0 0 18px;padding:0;border:0;background:transparent;z-index:200}
    .site-nav-wrap {
      position: sticky;
      top: 12px;
      z-index: 30;
      margin: 0 0 18px;
      padding: 6px;
      border: 1px solid rgba(255, 255, 255, 0.1);
      border-radius: var(--radius);
      background: rgba(8, 9, 10, 0.88);
      backdrop-filter: blur(16px);
      box-shadow: 0 16px 38px rgba(0, 0, 0, 0.28);
    }

    .site-nav {
      display: flex;
      min-width: 0;
      align-items: center;
      gap: 4px;
      overflow: visible;
      white-space: nowrap;
    }

    .site-nav > a {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 36px;
      padding: 8px 13px;
      border-radius: 999px;
      color: var(--muted);
      font-size: 0.78rem;
      letter-spacing: 0.12em;
      text-transform: uppercase;
      text-decoration: none;
      transition:
        background 140ms ease,
        color 140ms ease,
        transform 140ms ease;
    }

    .site-nav > a:hover,
    .site-nav > a.is-active {
      background: rgba(255, 255, 255, 0.08);
      color: var(--ink);
    }

    .site-nav > a.is-primary {
      margin-left: auto;
      background: var(--accent);
      color: #111;
    }

    .site-nav > a:hover {
      transform: translateY(-1px);
    }

    .mobile-nav-tools {
      display: none;
    }

    .mobile-more,
    .public-council-menu {
      position: relative;
    }

    .mobile-more summary,
    .public-council-menu > summary {
      display: inline-flex;
      min-height: 34px;
      align-items: center;
      justify-content: center;
      padding: 7px 11px;
      border: 1px solid var(--border);
      border-radius: 999px;
      color: var(--muted);
      background: rgba(255, 255, 255, 0.035);
      font-size: 0.7rem;
      letter-spacing: 0.1em;
      line-height: 1;
      text-decoration: none;
      text-transform: uppercase;
      cursor: pointer;
      list-style: none;
    }

    .mobile-more summary::-webkit-details-marker,
    .public-council-menu > summary::-webkit-details-marker {
      display: none;
    }

    .mobile-more[open] summary,
    .public-council-menu[open] > summary {
      color: var(--ink);
      background: rgba(255, 255, 255, 0.09);
    }

    .mobile-more.has-active summary,
    .public-council-menu.has-active > summary {
      border-color: rgba(214, 180, 122, 0.5);
      color: var(--ink);
    }

    .public-council-menu {
      flex: 0 0 auto;
      margin-left: auto;
    }

    .public-council-menu > summary {
      min-height: 36px;
      gap: 8px;
      padding-inline: 13px 11px;
    }

    .public-council-menu > summary::after {
      color: currentColor;
      content: "\2304";
      font-size: 0.78em;
      line-height: 1;
      transform: translateY(-1px);
    }

    .public-council-menu[open] > summary::after {
      transform: rotate(180deg) translateY(-1px);
    }

    .mobile-more-menu,
    .public-council-panel {
      position: absolute;
      right: 0;
      z-index: 60;
      display: grid;
      border: 1px solid var(--border);
      border-radius: var(--radius);
      background: rgba(14, 15, 16, 0.98);
      box-shadow: 0 20px 54px rgba(0, 0, 0, 0.58);
      backdrop-filter: blur(20px);
    }

    .mobile-more-menu {
      top: calc(100% + 50px);
      width: min(240px, calc(100vw - 44px));
      padding: 8px;
    }

    .public-council-panel {
      top: calc(100% + 10px);
      width: min(280px, calc(100vw - 24px));
      overflow: hidden;
    }

    .mobile-more:not([open]) .mobile-more-menu {
      display: none;
    }

    .mobile-more-menu a {
      display: flex;
      min-height: 42px;
      align-items: center;
      padding: 9px 12px;
      border-radius: 10px;
      color: var(--muted);
      font-size: 0.76rem;
      letter-spacing: 0.08em;
      text-decoration: none;
      text-transform: uppercase;
    }

    .mobile-more-menu a:hover,
    .mobile-more-menu a:focus-visible,
    .mobile-more-menu a.is-active {
      color: var(--ink);
      background: rgba(255, 255, 255, 0.08);
    }

    .mobile-more summary:focus-visible,
    .public-council-menu > summary:focus-visible {
      outline: 2px solid var(--accent);
      outline-offset: 2px;
    }

    .public-council-panel-heading {
      display: grid;
      gap: 2px;
      padding: 13px 14px 11px;
      border-bottom: 1px solid rgba(255, 255, 255, 0.1);
      background: rgba(255, 255, 255, 0.025);
    }

    .public-council-panel-heading > span {
      color: #9fc3ad;
      font-size: 0.57rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .public-council-panel-heading strong {
      font-size: 0.94rem;
      font-weight: 400;
    }

    .public-council-panel a {
      display: grid;
      gap: 2px;
      padding: 11px 14px;
      border-top: 1px solid rgba(255, 255, 255, 0.075);
      color: var(--ink);
      font-size: 0.78rem;
      letter-spacing: 0.04em;
      line-height: 1.25;
      text-align: left;
      text-decoration: none;
      text-transform: none;
    }

    .public-council-panel-heading + a {
      border-top: 0;
    }

    .public-council-panel a:hover,
    .public-council-panel a:focus-visible,
    .public-council-panel a.is-active {
      color: var(--accent);
      background: rgba(214, 180, 122, 0.1);
      outline: none;
    }

    .public-council-panel a small {
      color: var(--muted);
      font-size: 0.66rem;
      letter-spacing: 0.02em;
    }

    .lang-switcher-wrap {
      display: flex;
      justify-content: flex-end;
      margin-bottom: 8px;
    }

    .lang-switcher {
      display: inline-flex;
      align-items: center;
      border-radius: 999px;
      border: 1px solid rgba(0, 0, 0, 0.16);
      background: rgba(255, 255, 255, 0.04);
      padding: 2px;
      font-size: 0.78rem;
      letter-spacing: 0.14em;
      text-transform: uppercase;
    }

    .lang-toggle-btn {
      border: none;
      background: transparent;
      padding: 4px 10px;
      border-radius: 999px;
      cursor: pointer;
      color: var(--muted);
      font: inherit;
    }

    .lang-toggle-btn[aria-pressed="true"] {
      background: var(--ink);
      color: #111;
    }

.site-header .site-nav-wrap{position:relative;top:auto;width:100%;margin:0}
.site-header .site-nav{width:100%;min-width:0}
.site-header .site-nav>a{font-family:inherit;font-size:.78rem;letter-spacing:.12em;line-height:normal;transform:none}
.site-header .site-nav>a:hover{transform:translateY(-1px)}
.site-header .public-council-menu{width:auto;margin-left:auto}
.site-header .public-council-menu>summary{width:auto;font-family:inherit;font-weight:400}
.site-header .public-council-panel{position:absolute;top:calc(100% + 10px);right:0;max-height:70vh;overflow-y:auto}
.site-header .public-council-panel a,.site-header .public-council-panel-heading{font-family:inherit}
.masthead h1{text-shadow:none;color:var(--chalk)}
@media(max-width:800px){
 body{padding:18px 10px 26px}
 .site-frame{padding:18px 16px 12px}
 .site-frame>.site-header{top:6px;margin-bottom:12px}
 .lang-switcher-wrap{display:none}
 .site-header .site-nav-wrap{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:6px}
 .site-header .mobile-nav-tools,.site-header .site-nav{display:contents}
 .mobile-nav-tools .lang-switcher{justify-self:start;grid-column:1;grid-row:1;margin:0}
 .mobile-more{grid-column:2;grid-row:1}
 .site-header .public-council-menu{grid-column:3;grid-row:1;width:auto;margin:0}
 .site-header .public-council-menu>summary{min-height:36px;padding:7px 11px;font-size:.7rem}
 .site-header .site-nav>a{grid-row:2;min-width:0;width:auto;min-height:34px;padding:7px 4px;font-size:.62rem;letter-spacing:.045em;line-height:normal;white-space:nowrap}
 .site-header .site-nav>a:nth-child(1){grid-column:1}
 .site-header .site-nav>a:nth-child(2){grid-column:2}
 .site-header .site-nav>a:nth-child(3){grid-column:3}
 .site-header .site-nav>a:nth-child(4){grid-column:4}
 .site-header .site-nav>.mobile-nav-hidden{display:none}
 .site-header .site-nav-wrap{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px 2px}
 .mobile-nav-tools .lang-switcher{grid-column:1 / 3}
 .mobile-more{grid-column:3;justify-self:end}
 .site-header .public-council-menu{grid-column:4;justify-self:end}
 .site-header .public-council-panel{top:calc(100% + 48px);right:0;width:min(280px,calc(100vw - 68px))}
 .mobile-more-menu{right:-78px;width:min(240px,calc(100vw - 68px))}
}
@media(max-width:800px){
 .site-header .mobile-nav-tools{display:flex;grid-column:1 / -1;grid-row:1;align-items:center;gap:6px;padding-right:105px}
 .mobile-nav-tools .lang-switcher{flex:0 0 auto;margin-right:auto}
 .mobile-nav-tools .mobile-more{flex:0 0 auto}
}

/* Keep the experience within the same site frame, including wide desktops. */
.oracle-plane{left:auto;width:100%;max-width:100%;transform:none;border-radius:10px}
@media(min-width:1100px){.oracle-plane{grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr)}}
.fortune-ticket{scroll-margin-top:90px}
@media(max-width:800px){.fortune-ticket{scroll-margin-top:112px}}
