/* ============================================================
   GTradX — Core CSS (extracted from v10)
   Shared across ALL pages
   ============================================================ */

/* === CSS VARIABLES === */
:root{--bg:#030303;--s1:#090909;--s2:#0f0f0f;--s3:#161616;--tx:#f0f0f0;--tx2:#999;--tx3:#555;--gold:#F18F01;--gold2:#fbbf24;--blue:#3b82f6;--green:#10b981;--red:#ef4444;--purple:#a855f7;--mono:'JetBrains Mono',monospace;--body:'Manrope',sans-serif;--copy:'Manrope',sans-serif;--title:'Manrope',sans-serif;--nav-height:70px;--ticker-height:0px}
[data-theme="light"]{--bg:#fafafa;--s1:#fff;--s2:#f5f5f5;--s3:#eee;--tx:#0a0a0a;--tx2:#555;--tx3:#999}

/* === RESET === */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{-webkit-font-smoothing:antialiased;font-size:16px;background:var(--bg)!important;color-scheme:dark;min-height:100%;height:auto}
html[data-theme="light"]{background:#fafafa!important;color-scheme:light}
body{font-family:var(--body);background:var(--bg)!important;color:var(--tx);overflow-x:hidden;line-height:1.6;font-weight:400;min-height:100vh;min-height:100dvh;height:auto;overscroll-behavior-y:auto;transition:background .4s,color .4s}
a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{font-family:inherit;cursor:pointer}

/* Noise overlay */
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:9998;opacity:.01;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:200px}

/* === SCROLL CONTAINERS === */
.gx-scroll{height:100vh;overflow-y:scroll;scroll-snap-type:y mandatory;-ms-overflow-style:none;scrollbar-width:none}
.gx-scroll::-webkit-scrollbar{display:none}
.snap{min-height:100vh;scroll-snap-align:start;scroll-snap-stop:always;display:flex;flex-direction:column;justify-content:center;position:relative;overflow:hidden;padding:90px 24px 40px;background:var(--bg);transition:background .4s}
.snap-short{min-height:auto;scroll-snap-align:start}

/* Non-snap scroll (for legal pages) */
.gx-main-scroll{height:100vh;overflow-y:scroll;-ms-overflow-style:none;scrollbar-width:none}
@media(max-width:900px){.gx-main-scroll{height:auto;overflow-y:visible;-webkit-overflow-scrolling:touch}}
.gx-main-scroll::-webkit-scrollbar{display:none}

@media(max-width:900px){
    .gx-scroll{scroll-snap-type:none;height:auto;overflow-y:visible}
    .snap{min-height:auto;height:auto;padding:80px 20px 60px;scroll-snap-align:none;overflow-x:hidden}
}

/* === REVEAL ANIMATION === */
.r{opacity:0;transform:translateY(50px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.r.v{opacity:1;transform:translateY(0)}
.r-left{opacity:0;transform:translateX(-60px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.r-left.v{opacity:1;transform:translateX(0)}
.r-right{opacity:0;transform:translateX(60px);transition:opacity 1s cubic-bezier(.16,1,.3,1),transform 1s cubic-bezier(.16,1,.3,1)}
.r-right.v{opacity:1;transform:translateX(0)}

/* === COMMON SECTION STYLES === */
.si{max-width:1300px;margin:0 auto;width:100%}
.sh{text-align:center;margin-bottom:60px}
.sh2{font-size:clamp(2.2rem,5vw,3.6rem);font-weight:800;letter-spacing:-.032em;line-height:1.08;margin-bottom:14px;color:var(--tx)}
.stag{display:inline-block;padding:4px 14px;border-radius:6px;background:rgba(241,143,1,.08);border:1px solid rgba(241,143,1,.2);font-family:var(--mono);font-size:.74rem;font-weight:700;color:var(--gold);vertical-align:middle;margin-left:12px}
.sp{font-size:1.05rem;color:var(--tx2);max-width:760px;margin:0 auto;line-height:1.6;font-weight:400}
.ctc{text-align:center;margin-top:50px}

/* === BUTTONS === */
.btn-p{padding:16px 34px;border-radius:14px;background:var(--gold);color:#000;font-weight:800;font-size:.8rem;letter-spacing:.032em;text-transform:uppercase;border:none;transition:.3s;box-shadow:0 4px 30px rgba(241,143,1,.2);display:inline-flex;align-items:center;gap:10px}
.btn-p:hover{transform:translateY(-3px);box-shadow:0 10px 40px rgba(241,143,1,.35)}
.btn-o{padding:16px 34px;border-radius:14px;background:transparent;color:var(--tx);font-weight:700;font-size:.8rem;letter-spacing:.032em;text-transform:uppercase;border:1px solid rgba(255,255,255,.1);transition:.3s;display:inline-flex;align-items:center;gap:10px}
[data-theme="light"] .btn-o{border-color:rgba(0,0,0,.12)}
.btn-o:hover{border-color:var(--gold);color:var(--gold);transform:translateY(-3px)}
.btn-full{width:100%;justify-content:center}

/* === FADE-UP ANIMATION === */
@keyframes fu{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* === LOGO LIGHT/DARK === */
[data-theme="light"] .gx-logo-img{filter:invert(1)}

/* === GUEST/USER VISIBILITY === */
.gx-guest-only{display:inline-flex!important}.gx-user-only{display:none!important}
body.logged-in .gx-guest-only{display:none!important}body.logged-in .gx-user-only{display:inline-flex!important}

/* === FOCUS RESET — kill blue outlines === */
*:focus{outline:none!important}
*:focus-visible{outline:none!important}
button:focus,a:focus,button:focus-visible,a:focus-visible,.tbtn:focus,.tbtn:focus-visible,.mclose:focus,.bill-tog:focus,.role-btn:focus,.nav-hamburger:focus,.nav-hamburger:focus-visible{outline:none!important;box-shadow:none!important;-webkit-tap-highlight-color:transparent;-webkit-appearance:none}

/* === FONT WEIGHTS — Manrope maxes at 800 === */
.sh2,.fh2,.hero-brand{font-weight:800!important}

/* === HERO MOBILE FIX === */
@media(max-width:900px){.snap.hero{min-height:100vh;min-height:100dvh;height:auto;padding:0!important}}

/* === BLUE BUTTON === */
.btn-blue{padding:16px 36px;border-radius:14px;background:var(--blue);color:#fff;font-weight:800;font-size:.85rem;letter-spacing:.04em;text-transform:uppercase;border:none;transition:.3s;box-shadow:0 4px 30px rgba(59,130,246,.2);display:inline-flex;align-items:center;gap:10px}.btn-blue:hover{transform:translateY(-3px);box-shadow:0 10px 40px rgba(59,130,246,.35)}

/* Global overflow protection */
html,body,#page,.site,.site-content,.site-main,.ast-container,.entry-content,main{background:var(--bg)!important}
body{overflow-x:hidden}

/* Theme toggle — kill blue highlight on click */
.tbtn:active,.tbtn:focus{outline:none!important;-webkit-tap-highlight-color:transparent}
.tbtn:focus-visible{outline:2px solid var(--gold)!important;outline-offset:4px}
[data-theme="light"] .tbtn:active,[data-theme="light"] .tbtn:focus,[data-theme="light"] .tbtn:focus-visible{border-color:rgba(0,0,0,.08)!important}


main,.gx-main-scroll,.gx-founder-scroll{background:var(--bg);color:var(--tx)}

/* PRD-safe stacking contract for subpages */
.gx-main-scroll,.gx-founder-scroll{position:relative;z-index:1}
.nav{z-index:10050!important}
