/* Olympia Supreme — authored after the legacy rig and mobile styles */
.olympia-stage.olympia-supreme { --os-gold:#dfbe83; --os-light:#fff5e6; }
.olympia-stage.olympia-supreme .olympia-supreme-portrait {
  display:block;position:absolute;inset:0 auto 0 50%;z-index:3;
  width:96%;height:100%;object-fit:contain;object-position:center center;
  opacity:0;transform:translate(-50%,7px);filter:drop-shadow(0 26px 38px rgba(0,0,0,.42));
  transition:opacity .55s ease;pointer-events:none;
}
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-supreme-portrait{
  opacity:1;animation:os-breathe 8s ease-in-out infinite;
}
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-three,
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-figure{
  display:none!important;opacity:0!important;visibility:hidden!important;
}
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-aura{
  z-index:0;opacity:.76!important;filter:blur(34px)!important;
  background:radial-gradient(ellipse at 50% 37%,rgba(233,190,108,.17),rgba(71,105,145,.07) 40%,transparent 70%)!important;
}
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-scanlines{display:none!important}
.olympia-stage.olympia-supreme.olympia-portrait-ready::before{display:none!important}
.olympia-stage.olympia-supreme .olympia-status-chip{z-index:23!important}
.olympia-stage.olympia-supreme[data-state="speaking"] .olympia-supreme-portrait{
  filter:drop-shadow(0 30px 38px rgba(0,0,0,.40)) drop-shadow(0 0 21px rgba(225,185,112,.23));
}
.olympia-stage.olympia-supreme[data-state="listening"] .olympia-supreme-portrait{
  filter:drop-shadow(0 30px 38px rgba(0,0,0,.40)) drop-shadow(0 0 20px rgba(120,199,232,.16));
}
.olympia-stage.olympia-supreme .olympia-call-offer{
  z-index:24!important;min-width:160px;justify-content:center;letter-spacing:.05em!important;
  border-color:rgba(244,212,154,.35)!important;
  background:linear-gradient(135deg,rgba(30,27,27,.96),rgba(8,12,18,.98))!important;
  color:#fbeccc!important;box-shadow:0 12px 36px rgba(0,0,0,.45)!important;
}
body.next-home .next-hero .olympia-stage.olympia-supreme.olympia-portrait-ready::after{
  content:"";display:block!important;position:absolute;z-index:4;inset:71% 0 0!important;
  background:linear-gradient(180deg,transparent,rgba(9,12,18,.75))!important;pointer-events:none;
}
body.next-home .next-hero .olympia-stage.olympia-supreme.olympia-portrait-ready{
  background:radial-gradient(ellipse at 51% 27%,rgba(174,140,89,.12),transparent 60%)!important;
}
@keyframes os-breathe{
  0%,100%{transform:translate(-50%,8px) scale(1)}
  50%{transform:translate(-50%,-2px) scale(1.014)}
}

/* Human conversation, not a hidden microphone gimmick */
.olympia-supreme-studio{
  width:min(1160px,calc(100% - 42px));margin:0 auto 70px;
  color:#f3ece2;border:1px solid rgba(229,188,117,.18);
  background:linear-gradient(125deg,rgba(26,30,36,.98),rgba(12,17,25,.98));
  border-radius:22px;box-shadow:0 25px 60px rgba(0,0,0,.19);overflow:hidden;
  font-family:Inter,system-ui,-apple-system,sans-serif;
}
.olympia-supreme-studio[hidden]{display:none!important}
.os-top{display:flex;gap:20px;align-items:flex-start;padding:28px 32px 20px;border-bottom:1px solid rgba(250,231,196,.09)}
.os-mark{flex:0 0 44px;height:44px;display:grid;place-items:center;font:33px/1 Georgia,serif;color:#dfbd7d;border:1px solid rgba(219,178,112,.3);border-radius:50%;box-shadow:0 0 27px rgba(223,188,131,.12)}
.os-kicker{margin:0 0 9px!important;font:750 10px/1.4 Inter,system-ui,sans-serif!important;letter-spacing:.16em!important;color:#d8bb85!important}
.olympia-supreme-studio .os-top h2{margin:0 0 9px;font:clamp(29px,3vw,42px)/1.05 Georgia,"Times New Roman",serif!important;font-weight:400;color:#fff4e6!important;letter-spacing:-.026em}
.os-top h2 em{color:#d4ad6d;font-weight:400}
.os-intro{margin:0!important;max-width:680px;color:#b4bdc7!important;font-size:14px!important;line-height:1.6!important}
.os-content{display:grid;grid-template-columns:minmax(0,1.14fr) minmax(0,.86fr);gap:0}
.os-conversation{padding:25px 32px 29px;min-width:0}
.os-wisdom{padding:26px 31px 30px;border-left:1px solid rgba(250,231,196,.10);background:radial-gradient(ellipse at 70% 15%,rgba(180,136,67,.075),transparent 65%)}
.os-state{display:flex;gap:9px;align-items:center;color:#bac8c9;font-size:12px;font-weight:650;margin-bottom:15px}
.os-pulse{height:8px;width:8px;display:inline-block;border-radius:50%;background:#9bcbb5;box-shadow:0 0 0 5px rgba(155,203,181,.07)}
.olympia-supreme-studio[data-state="speaking"] .os-pulse{background:#f0ce8e;box-shadow:0 0 0 5px rgba(240,206,142,.12)}
.olympia-supreme-studio[data-state="listening"] .os-pulse{background:#82cbd7;box-shadow:0 0 0 5px rgba(130,203,215,.12)}
.os-answer{min-height:98px;max-height:240px;overflow-y:auto;padding:16px 19px;margin:0 0 19px;background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:14px;color:#f3ece5;font:16px/1.63 Georgia,serif}
.os-label{display:block;font-size:11px;letter-spacing:.13em;font-weight:700;margin-bottom:8px;color:#adbbc7;text-transform:uppercase}
.os-entry{display:flex;align-items:stretch;gap:8px}
.os-entry input{flex:1;width:100%;min-width:0;min-height:48px;padding:12px 15px;border:1px solid rgba(232,227,212,.2);background:#0c121c;color:#f4ecdd;border-radius:12px;font:14px/1.4 Inter,system-ui,sans-serif;outline:none}
.os-entry input::placeholder{color:#8b96a2;opacity:1}
.os-entry input:focus{border-color:#d8bd84;box-shadow:0 0 0 3px rgba(216,189,132,.09)}
.os-submit,.os-wisdom-hear{cursor:pointer;border:1px solid #dfbd84;background:#e1c089;color:#161923;border-radius:12px;padding:11px 17px;min-height:47px;font-size:13px;font-weight:800;white-space:nowrap}
.os-submit:hover,.os-wisdom-hear:hover{background:#f4d29b}
.os-actions{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:13px}
.os-action{min-height:37px;padding:7px 12px;background:transparent;color:#e2cda8;border:1px solid rgba(224,197,151,.23);border-radius:9px;cursor:pointer;font-size:12px;font-weight:650}
.os-action:hover{border-color:rgba(224,197,151,.6);background:rgba(224,197,151,.06)}
.os-hint{font-size:11px;color:#9aa8af}
.os-wisdom-title{font:29px/1.2 Georgia,serif;color:#f5dfb5;letter-spacing:-.025em;margin:12px 0 12px}
.os-wisdom-text{font:15px/1.7 Georgia,serif;color:#d2d0ca;margin:0 0 18px}
.os-wisdom-actions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-bottom:14px}
.os-wisdom-hear{min-height:40px;padding:8px 12px;border-radius:10px;background:rgba(224,192,137,.12);color:#efcf98;font-weight:750;border-color:rgba(224,192,137,.3)}
.os-wisdom-hear:hover{background:rgba(224,192,137,.2)}
.os-wisdom-actions a{font:700 12px/1.5 Inter,system-ui,sans-serif;color:#d2b77c;text-decoration:underline;text-underline-offset:3px}
.os-caution{display:block;color:#87949f;font-size:10px;line-height:1.5}
.os-close{margin-left:auto;flex:0 0 36px;width:36px;height:36px;border:1px solid rgba(232,227,212,.22);border-radius:50%;color:#fff;background:transparent;font:28px/1 sans-serif;cursor:pointer}
.os-close[hidden]{display:none!important}
.os-drawer-opener{position:fixed;left:18px;bottom:18px;z-index:80;min-height:48px;border:1px solid rgba(221,188,130,.4);background:#121921;color:#ead3a7;padding:11px 18px;border-radius:999px;box-shadow:0 12px 33px rgba(0,0,0,.38);font-weight:750;font-size:13px;cursor:pointer}
.olympia-supreme-studio.os-drawer{position:fixed;left:14px;bottom:76px;z-index:100;width:min(660px,calc(100vw - 28px));max-height:calc(100dvh - 106px);margin:0;overflow-y:auto;box-shadow:0 28px 90px rgba(0,0,0,.65)}
.os-drawer .os-content{grid-template-columns:1fr}
.os-drawer .os-wisdom{border-left:0;border-top:1px solid rgba(250,231,196,.10)}
.os-drawer .os-top{padding:21px 23px 17px}
.os-drawer .os-conversation{padding:22px}
.os-drawer .os-wisdom{padding:20px 23px}
@media(max-width:900px){
 .os-content{grid-template-columns:1fr}
 .os-conversation{padding:23px 26px}
 .os-wisdom{padding:24px 26px;border-left:0;border-top:1px solid rgba(250,231,196,.10)}
}
@media(max-width:700px){
 .olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-supreme-portrait{
   width:min(85%,310px)!important;height:100%!important;top:0!important;object-position:center center;
 }
 body.next-home .next-hero .olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-figure{display:none!important}
 body.next-home .next-hero .olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-three{display:none!important}
 body.next-home .next-hero .olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-call-offer{bottom:12px!important}
 .olympia-supreme-studio{width:calc(100% - 28px);border-radius:17px;margin:8px auto 40px}
 .os-top{padding:20px 17px 15px;gap:12px}
 .os-mark{flex-basis:34px;height:34px;font-size:26px}
 .olympia-supreme-studio .os-top h2{font-size:28px!important}
 .os-intro{font-size:12px!important}
 .os-conversation,.os-wisdom{padding:18px 17px 20px}
 .os-answer{min-height:76px;font-size:15px}
 .os-entry input{font-size:13px}
 .os-submit{padding:10px 12px}
 .os-wisdom-title{font-size:25px}
 .os-drawer-opener{left:9px;bottom:max(12px,env(safe-area-inset-bottom));padding:9px 13px}
 .olympia-supreme-studio.os-drawer{width:calc(100vw - 18px);left:9px;bottom:70px}
}
@media(prefers-reduced-motion:reduce){
 .olympia-stage.olympia-supreme .olympia-supreme-portrait{animation:none!important;transition:none!important}
}

/* Optional, device-local memory controls — never enabled without consent. */
.os-memory-controls{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin-top:17px;padding-top:14px;border-top:1px solid rgba(255,255,255,.09)}
.os-memory-choice{display:inline-flex;align-items:center;gap:8px;font-size:12px;line-height:1.5;color:#e4dbce;cursor:pointer}
.os-memory-choice input{width:16px;height:16px;accent-color:#dfbd84;cursor:pointer}
.os-memory-note{flex-basis:100%;margin:0!important;font-size:11px!important;line-height:1.5!important;color:#9aa8b5!important}

/* olympia-home-portal-link: quiet standalone home CTA and unobstructed portrait */
body.next-home .olympia-invite{display:none!important}
body.next-home .op-home-cta{display:inline-flex;align-items:center;gap:10px;margin-top:14px;color:#e9c991;text-decoration:underline;text-underline-offset:4px;font:750 12px/1.4 Inter,system-ui,sans-serif}
body.next-home .op-home-cta:hover,body.next-home .op-home-cta:focus-visible{color:#fff0c9}


/* Recovering an ambiguous speech transcript before asking the language model. */
.os-heard{margin:12px 0 0!important;font:600 12px/1.55 Inter,system-ui,sans-serif!important;color:#bfcbd0!important}
.os-heard[hidden],.os-transcript-review[hidden]{display:none!important}
.os-transcript-review{margin:14px 0 0;padding:16px;background:rgba(230,188,116,.07);border:1px solid rgba(231,194,139,.32);border-radius:13px}
.os-transcript-review label{display:block;color:#f1d59f;font:750 13px/1.5 Inter,system-ui,sans-serif}
.os-transcript-review p{color:#c7ccd1;margin:6px 0 12px!important;font:12px/1.5 Inter,system-ui,sans-serif!important}
.os-transcript-entry{display:flex;align-items:stretch;gap:7px}
.os-transcript-entry input{width:100%;min-width:0;flex:1;min-height:46px;border-radius:8px;border:1px solid rgba(236,205,150,.45);background:#0a1119;color:#fff3e0;padding:10px 12px;font:14px Inter,system-ui,sans-serif}
.os-transcript-entry button,.os-transcript-actions button{border:1px solid rgba(226,192,136,.35);border-radius:8px;background:#e4c48c;color:#17202a;min-height:42px;padding:9px 13px;cursor:pointer;font-weight:750;font-size:12px}
.os-transcript-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
.os-transcript-actions button{background:transparent;color:#e6d0a7}
.os-transcript-entry input:focus-visible,.os-transcript-review button:focus-visible{outline:2px solid #f5d899;outline-offset:2px}
@media(max-width:600px){.os-transcript-entry{flex-direction:column}.os-transcript-entry button{width:100%}}


/* Olympia voice amplitude visualization (not artificial lip movement) */
.olympia-supreme .os-voice-halo{
 display:flex;position:absolute;z-index:23;left:50%;bottom:66px;
 transform:translateX(-50%);height:26px;align-items:center;justify-content:center;
 gap:5px;opacity:.32;pointer-events:none;transition:opacity .18s ease
}
.olympia-supreme .os-voice-halo span{
 width:3px;height:4px;border-radius:99px;background:#efca87;
 box-shadow:0 0 8px rgba(237,202,137,.25);transition:height .06s ease
}
.olympia-supreme.os-audio-reactive[data-state="speaking"] .os-voice-halo{opacity:1}
@media(max-width:700px){.olympia-supreme .os-voice-halo{bottom:61px}}
@media(prefers-reduced-motion:reduce){
 .olympia-supreme .os-voice-halo span{transition:none!important}
}


/* Local session dialogue: recent exchanges only, never a public feed. */
.os-dialogue{max-height:260px;overflow-y:auto;display:flex;flex-direction:column;gap:9px;padding:5px 2px 13px;margin:0 0 17px;scrollbar-color:#79644a transparent}
.os-dialogue[hidden],.os-source[hidden]{display:none!important}
.os-dialogue-turn{padding:12px 14px;border:1px solid rgba(229,204,163,.13);border-radius:12px;background:#101823;color:#f0ede9}
.os-dialogue-turn.is-visitor{margin-left:12%;background:rgba(53,75,92,.20)}
.os-dialogue-turn.is-olympia{margin-right:12%;background:rgba(212,166,101,.055)}
.os-dialogue-turn strong{display:block;font:800 10px/1.4 Inter,system-ui,sans-serif;letter-spacing:.10em;text-transform:uppercase;color:#d8b680}
.os-dialogue-turn.is-visitor strong{color:#9fc5d5}
.os-dialogue-turn p{font:14px/1.55 Inter,system-ui,sans-serif!important;color:#dddcd9!important;margin:6px 0 0!important;overflow-wrap:anywhere}
.os-source{color:#aeb9c3;font:600 11px/1.5 Inter,system-ui,sans-serif!important;margin:-6px 0 14px!important}
.os-source a{color:#ecc98d;text-underline-offset:3px}

/* Avoid duplicate full answers on mobile; the accessible dialogue is authoritative. */
.olympia-supreme-studio.os-has-dialogue .os-answer{display:none}
.olympia-supreme-studio.os-has-dialogue .os-dialogue{max-height:330px}


/* V25: intentionally subtle, deterministic facial articulation.
   Uses two manually QA'd poses derived from this portrait's actual landmarks.
   Images align pixel-for-pixel outside the mouth; on failure the base persists. */
.olympia-stage.olympia-supreme .olympia-viseme{
  display:block;position:absolute;inset:0 auto 0 50%;z-index:3;
  width:96%;height:100%;object-fit:contain;object-position:center center;
  opacity:0;transform:translate(-50%,7px);
  filter:drop-shadow(0 26px 38px rgba(0,0,0,.42));
  transition:opacity .11s linear;pointer-events:none;
}
.olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-viseme{
  animation:os-breathe 8s ease-in-out infinite;
}
@media(max-width:700px){
  .olympia-stage.olympia-supreme.olympia-portrait-ready .olympia-viseme{
    width:min(85%,310px)!important;height:100%!important;
    top:0!important;object-position:center center;
  }
}
@media(prefers-reduced-motion:reduce){
  .olympia-stage.olympia-supreme .olympia-viseme{display:none!important}
}


/* Per-page hands-free microphone consent: visibly off unless checked. */
.os-handsfree{margin-top:13px;display:flex;align-items:flex-start;gap:5px;flex-direction:column}
.os-handsfree-label{display:flex;gap:9px;align-items:center;color:#e8dcc8;font:650 12px/1.5 Inter,system-ui,sans-serif;cursor:pointer}
.os-handsfree-label input{accent-color:#e6c287;width:17px;height:17px;flex:0 0 17px}
.os-handsfree-explain{font:11px/1.45 Inter,system-ui,sans-serif;color:#9fadba}
.os-handsfree-label input:focus-visible{outline:2px solid #e6c287;outline-offset:3px}


/* Spoken reply language: native labels, accessible and session-only */
.os-language-control{display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-top:14px}
.os-language-control label{font:700 11px/1.45 Inter,system-ui,sans-serif;letter-spacing:.04em;color:#dbbe87}
.os-language-control select{min-height:39px;border-radius:9px;border:1px solid rgba(221,186,128,.35);background:#101820;color:#e8e0d4;padding:7px 11px;font:650 12px/1.4 Inter,system-ui,sans-serif;max-width:100%}
.os-language-control>span{flex-basis:100%;font:11px/1.5 Inter,system-ui,sans-serif;color:#a9b8c3}
.os-language-control select:focus-visible{outline:2px solid #f0d69d;outline-offset:2px}


/* v32: evidence and uncertainty are visible next to each AI response.
   Citations link only to allowlisted public first-party pages. */
.os-evidence{display:flex;flex-direction:column;gap:6px;margin-top:11px;padding-top:10px;
  border-top:1px solid rgba(226,196,150,.15)}
.os-evidence-label{font:650 11px/1.5 Inter,system-ui,sans-serif;color:#a7b7c1}
.os-evidence a{display:inline-flex;align-self:flex-start;color:#eacb9a;font:750 12px/1.5 Inter,system-ui,sans-serif;
  text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}
.os-evidence a:hover{color:#fff0ca}
.os-evidence a:focus-visible{outline:2px solid #edca91;outline-offset:2px;border-radius:2px}
@media(max-width:700px){.os-evidence{gap:7px}.os-evidence a{min-height:27px;align-items:center}}
