/* Beneath the Plateau — scoped for WordPress / Divi */
/* Divi clips overflow on its page wrappers, which breaks position:sticky. Undo that on this page only. */
body.uye-plateau-page #page-container,body.uye-plateau-page #et-main-area,body.uye-plateau-page #main-content,
body.uye-plateau-page .et-l,body.uye-plateau-page .et_builder_inner_content,body.uye-plateau-page .et_pb_section,
body.uye-plateau-page .et_pb_row,body.uye-plateau-page .et_pb_column,body.uye-plateau-page .et_pb_code,body.uye-plateau-page .et_pb_code_inner{overflow:visible!important;transform:none!important}
#uye{position:relative;margin:0;background:#03040a;color:#eef0f3;font-family:"Outfit","Segoe UI",system-ui,sans-serif;font-weight:300;-webkit-font-smoothing:antialiased;overflow-x:clip;line-height:normal}
#uye h1,#uye h2,#uye h3,#uye p{padding:0;color:inherit;text-transform:none}
#uye .btn{color:#0a0a08}
#uye{
  --void:#03040a;--axon:#4f7cff;--synapse:#9b6bff;--amber:#ffb347;--crimson:#e0425a;
  --paper:#eef0f3;--gold:#c9a84c;--gold-hi:#e8c97a;--muted:#a8a49a;
  --serif:"Fraunces",Georgia,"Times New Roman",serif;--sans:"Outfit","Segoe UI",system-ui,sans-serif;
  box-sizing:border-box;padding-top:env(safe-area-inset-top,0px);padding-bottom:env(safe-area-inset-bottom,0px);
}
#uye *,#uye *::before,#uye *::after{box-sizing:inherit}
#uye{background:#03040a;scroll-padding-top:env(safe-area-inset-top,0px)}
#uye{margin:0;background:var(--void);color:var(--paper);font-family:var(--sans);font-weight:300;-webkit-font-smoothing:antialiased}
#uye #frame{position:fixed;z-index:1;left:0;top:0;width:0;height:0;border-radius:18px;overflow:hidden;background:#03040a;
  border:1px solid rgba(255,255,255,.08);box-shadow:0 30px 80px rgba(0,0,0,.55);opacity:0;pointer-events:none;will-change:opacity}
#uye #frame video,#uye #frame canvas{position:absolute;inset:0;width:100%;height:100%;display:block}
#uye #frame video{object-fit:contain;opacity:0}
#uye canvas#stage{position:absolute;z-index:1}
#uye .scene{position:relative;z-index:2}
#uye .sticky{position:sticky;top:0;height:100vh;height:100dvh;overflow:hidden}
#uye .s-neuron{height:480vh}
#uye .s-plateau{height:320vh}
#uye .s-brain{height:460vh}
#uye .s-deep{height:460vh}
#uye .s-meet{height:420vh}
#uye .s-rewire{height:480vh}
#uye /* text beats: always a left column,#uye visuals live on the right,#uye so nothing overlaps */
.beat{position:absolute;top:50%;left:var(--mx,4vw);width:var(--tw,36vw);
  opacity:0;transform:translateY(calc(-50% + 24px));will-change:opacity,transform}
#uye .kicker{font-size:.95rem;color:var(--muted);letter-spacing:.02em;margin:0 0 1rem}
#uye h1,#uye h2{font-family:var(--serif);font-weight:300;line-height:1.05;margin:0 0 1.2rem;letter-spacing:-.015em}
#uye h1{font-size:clamp(2.5rem,6.4vw,5.6rem)}
#uye h2{font-size:clamp(1.6rem,2.7vw,2.7rem)}
#uye p.lede{font-size:clamp(.98rem,1.15vw,1.12rem);line-height:1.62;color:#c9cdd8;margin:0}
#uye .glass{background:rgba(8,11,26,.55);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:clamp(1.2rem,2.6vw,2rem)}
#uye .scrollcue{position:absolute;bottom:calc(28px + env(safe-area-inset-bottom,0px));left:50%;transform:translateX(-50%);font-size:.85rem;color:var(--muted);display:flex;flex-direction:column;align-items:center;gap:10px}
#uye .scrollcue i{width:1px;height:44px;background:linear-gradient(var(--axon),transparent);animation:drip 2.2s infinite}
@keyframes drip{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform-origin:bottom}100%{transform:scaleY(0);transform-origin:bottom}}
#uye /* ---- plateau chart ---- */
.plateau{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;gap:2rem;width:min(1180px,92vw);margin:0 auto}
#uye .plateau header{max-width:640px}
#uye .chart{position:relative;width:100%;aspect-ratio:1000/430;max-height:52vh}
#uye .chart svg{width:100%;height:100%;overflow:visible}
#uye .chart .axis{stroke:rgba(255,255,255,.18);stroke-width:1.5}
#uye .chart text{font-family:var(--sans);fill:var(--muted);font-size:15px}
#uye .chart .lbl{font-family:var(--serif);font-style:italic;fill:var(--paper);font-size:28px}
#uye #curve{fill:none;stroke:url(#curveGrad);stroke-width:5;stroke-linecap:round}
#uye #flat{fill:none;stroke:var(--crimson);stroke-width:5;stroke-linecap:round}
#uye #ghost{fill:none;stroke:var(--gold);stroke-width:2.5;stroke-dasharray:6 10;opacity:0}
#uye .plateau .after{max-width:640px;opacity:0}
#uye /* ---- meeting (real photo) ---- */
#meet{position:absolute;inset:0;opacity:0}
#uye #photo{position:absolute;top:0;right:0;height:100%;width:60%;overflow:hidden;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 30%);mask-image:linear-gradient(to right,transparent 0,#000 30%)}
#uye #photo img{width:100%;height:100%;object-fit:cover;object-position:50% 26%;transform-origin:48% 30%;will-change:transform,filter}
#uye #meet .copy{position:absolute;top:50%;transform:translateY(-50%);left:max(4vw,calc((100vw - 1240px)/2));width:min(560px,44vw)}
#uye .quote{font-family:var(--serif);font-weight:300;font-style:italic;font-size:clamp(1.6rem,3.3vw,2.9rem);line-height:1.2;min-height:3.6em}
#uye .quote .caret{display:inline-block;width:2px;height:.9em;background:var(--paper);vertical-align:-.1em;margin-left:3px;animation:blink 1s steps(1) infinite}
@keyframes blink{50%{opacity:0}}
#uye .whisper{margin-top:1.2rem;color:var(--muted);font-size:1rem;opacity:0}
#uye .search{position:absolute;font-size:clamp(.85rem,1.2vw,1.05rem);color:rgba(238,240,243,.75);opacity:0;pointer-events:none;white-space:nowrap;
  background:rgba(10,12,16,.45);padding:.3rem .7rem;border-radius:999px;backdrop-filter:blur(4px)}
#uye /* ---- resolution ---- */
.s-cta{min-height:100vh;min-height:100dvh;display:flex;align-items:center;padding:16vh 0 12vh;background:linear-gradient(180deg,rgba(10,10,8,0) 0%,rgba(10,10,8,.9) 26%,#0a0a08 45%)}
#uye .wrap{width:min(1180px,92vw);margin:0 auto}
#uye .s-cta h2{font-size:clamp(2.3rem,5.6vw,4.8rem);max-width:15ch}
#uye .shifts{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:clamp(1.5rem,3vw,3rem);margin:3.5rem 0 4rem;border-top:1px solid #2a2a25;padding-top:2.5rem}
#uye .shifts h3{font-family:var(--serif);font-weight:400;font-size:1.35rem;margin:0 0 .6rem;color:var(--gold-hi)}
#uye .shifts p{margin:0;color:var(--muted);line-height:1.6}
#uye .cta-top{display:grid;grid-template-columns:1.1fr 1fr;gap:clamp(2rem,5vw,5rem);align-items:center}
#uye .growth svg{width:100%;height:auto;overflow:visible}
@media (max-width:760px){#uye .cta-top{grid-template-columns:1fr}
}
#uye .cta-row{display:flex;flex-wrap:wrap;align-items:center;gap:1.4rem 2rem}
#uye .btn{display:inline-flex;background:var(--gold);color:#0a0a08;font-weight:500;font-size:1.05rem;padding:1.05rem 1.8rem;border-radius:999px;text-decoration:none;transition:background .25s,transform .25s}
#uye .btn:hover{background:var(--gold-hi);transform:translateY(-2px)}
#uye .btn:focus-visible,#uye a:focus-visible,#uye button:focus-visible{outline:2px solid var(--gold-hi);outline-offset:4px}
#uye .cta-note{color:var(--muted);font-size:.95rem;max-width:40ch;line-height:1.5}
#uye footer{position:relative;z-index:2;background:#0a0a08;color:#6d6a62;font-size:.85rem;padding:2rem 0 calc(2rem + env(safe-area-inset-bottom,0px));border-top:1px solid #2a2a25}
#uye footer .wrap{display:flex;justify-content:space-between;flex-wrap:wrap;gap:1rem}
#uye footer a{color:var(--muted)}
#uye #rail{position:fixed;right:calc(18px + env(safe-area-inset-right,0px));top:50%;transform:translateY(-50%);z-index:5;display:flex;flex-direction:column;gap:14px}
#uye #rail button{width:8px;height:8px;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:transparent;padding:0;cursor:pointer;transition:all .3s}
#uye #rail button.on{background:var(--paper);transform:scale(1.35)}
#uye /* ---- mobile: visuals on top half,#uye text on the bottom ---- */
@media (max-width:760px){
  #rail{display:none}
  .beat{left:4vw;right:4vw;width:auto;top:auto;bottom:calc(4vh + env(safe-area-inset-bottom,0px));transform:translateY(24px)}
  .beat h2{font-size:1.5rem}
  .beat .lede{font-size:.95rem}
  #photo{width:100%;height:62%;-webkit-mask-image:linear-gradient(to bottom,#000 60%,transparent);mask-image:linear-gradient(to bottom,#000 60%,transparent)}
  #meet .copy{top:auto;bottom:6vh;transform:none;left:4vw;width:92vw}
  .quote{min-height:2.6em}
}
@media (prefers-reduced-motion:reduce){#uye .scrollcue i,#uye .quote .caret{animation:none}
}

