/* Fluxx Tech /experience : normal page + optional 3D tour */
.rd{--rd-a:var(--g,#22a0dc);--rd-a2:#7cc8f5;--rd-ink:var(--ink,#060b1f);--rd-line:var(--line,#dde6f2);--rd-mute:var(--mute,#5a6785);--rd-paper:var(--paper,#f4f8fd)}
.rd-w{max-width:1160px;margin:0 auto;padding:0 20px}
.rd-hero{background:radial-gradient(900px 420px at 80% -10%,rgba(34,160,220,.28),transparent 60%),linear-gradient(160deg,#0a1230,#060b1f);color:#fff;padding:92px 0 64px}
.rd-crumbs{font-size:.85rem;color:#8d9bc0;margin-bottom:18px}.rd-crumbs a{color:#8d9bc0}
.rd-pill{display:inline-block;font:600 .78rem 'DM Sans',system-ui,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:var(--rd-a2);border:1px solid rgba(124,200,245,.4);border-radius:999px;padding:6px 14px}
.rd-hero h1{font:800 clamp(2.2rem,5.4vw,4.2rem)/1.05 Sora,system-ui,sans-serif;letter-spacing:-.02em;margin:18px 0 14px;max-width:16ch;text-wrap:balance}
.rd-hero h1 em{font-style:normal;color:var(--rd-a2)}
.rd-hero p{max-width:60ch;color:#c7d3ee;font-size:1.08rem;line-height:1.6;margin:0}
.rd-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:26px}
.rd-note{margin-top:16px!important;font-size:.85rem!important;color:#8d9bc0!important}
.rd-sec{background:#fff;color:var(--rd-ink);padding:64px 0}.rd-alt{background:var(--rd-paper)}
.rd-sec h2{font:800 clamp(1.6rem,3.2vw,2.3rem)/1.1 Sora,system-ui,sans-serif;letter-spacing:-.015em;margin:0 0 26px}
.rd-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:18px}
.rd-card{display:block;background:#fff;border:1px solid var(--rd-line);border-radius:18px;padding:22px;color:inherit;text-decoration:none;min-width:0}
.rd-card h3{font:700 1.08rem Sora,system-ui,sans-serif;margin:6px 0 6px}.rd-card p{margin:0;color:var(--rd-mute);line-height:1.55}
.rd-card img{width:100%;height:auto;border-radius:12px;margin-bottom:10px;display:block;aspect-ratio:8/5;object-fit:cover}
.rd-link{transition:transform .2s,box-shadow .2s,border-color .2s}
.rd-link:hover{transform:translateY(-3px);border-color:var(--rd-a);box-shadow:0 14px 30px -18px rgba(34,160,220,.7)}
.rd-tag{display:inline-block;font:600 .72rem 'DM Sans',system-ui,sans-serif;letter-spacing:.08em;text-transform:uppercase;color:var(--rd-a);background:rgba(34,160,220,.1);border-radius:6px;padding:3px 8px}
.rd-more{margin:22px 0 0}.rd-more a{color:var(--rd-a);font-weight:600;text-decoration:none}
.rd-steps{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:16px;counter-reset:s}
.rd-steps li{counter-increment:s;border-top:3px solid var(--rd-a);padding-top:12px}
.rd-steps li:before{content:"STEP " counter(s);display:block;font:600 .72rem 'DM Sans',sans-serif;letter-spacing:.1em;color:var(--rd-mute)}
.rd-steps b{display:block;font:700 1.15rem Sora,sans-serif;margin:4px 0}.rd-steps span{color:var(--rd-mute);line-height:1.5}
.rd-cta-sec{background:linear-gradient(160deg,#0a1230,#060b1f);color:#fff;padding:72px 0;text-align:left}
.rd-cta-sec h2{font:800 clamp(1.8rem,4vw,2.8rem)/1.08 Sora,sans-serif;margin:0 0 12px;max-width:20ch}.rd-cta-sec p{color:#c7d3ee;max-width:56ch;margin:0}

/* ---- 3D tour overlay ---- */
html.rd-lock,html.rd-lock body{overflow:hidden}
.rd-stage{position:fixed;inset:0;z-index:99999;background:#060b1f;color:#eaf2ff;font-family:'DM Sans',system-ui,sans-serif}
.rd-stage[hidden]{display:none}
#rdGl{position:absolute;inset:0;width:100%;height:100%;display:block}
.rd-scroll{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;overscroll-behavior:contain;outline:none;z-index:1;-webkit-overflow-scrolling:touch}
#rdSpacer{height:650vh}
.rd-ui{position:absolute;inset:0;z-index:2;pointer-events:none}
.rd-bar{position:absolute;top:0;left:0;right:0;display:flex;justify-content:space-between;gap:10px;padding:calc(14px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) 14px max(16px,env(safe-area-inset-left,0px))}
.rd-bar-r{display:flex;gap:8px}
.rd-btn{pointer-events:auto;font:600 13px 'DM Sans',sans-serif;color:#eaf2ff;background:rgba(6,11,31,.6);border:1px solid rgba(234,242,255,.22);border-radius:999px;padding:9px 15px;cursor:pointer;text-decoration:none;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px)}
.rd-btn:hover{border-color:#7cc8f5}.rd-solid{background:#22a0dc;border-color:#22a0dc;color:#04101e}
.rd-btn:focus-visible,.rd-dot:focus-visible,.rd-open:focus-visible,.rd-stage .btn:focus-visible{outline:2px solid #7cc8f5;outline-offset:2px}
.rd-intro{position:absolute;left:max(16px,env(safe-area-inset-left,0px));right:16px;bottom:calc(92px + env(safe-area-inset-bottom,0px))}
.rd-intro p{margin:12px 0 0;max-width:46ch;color:#c7d3ee}
.rd-load{position:absolute;inset:0;display:grid;place-items:center;font:600 14px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;color:#7cc8f5;background:#060b1f;transition:opacity .4s}
.rd-load.done{opacity:0;visibility:hidden}
.rd-hud{position:absolute;left:0;right:0;bottom:0;display:flex;align-items:center;gap:14px;padding:0 max(16px,env(safe-area-inset-right,0px)) calc(18px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}
.rd-label{font:600 12px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;min-width:9.5em}.rd-label em{font-style:normal;color:#22a0dc}
.rd-track{flex:1;height:2px;background:rgba(234,242,255,.16);position:relative;border-radius:2px;min-width:40px}
.rd-fill{position:absolute;inset:0 auto 0 0;width:0;background:linear-gradient(90deg,#22a0dc,#7cc8f5)}
.rd-open{pointer-events:auto;font:600 12px 'DM Sans',sans-serif;color:#04101e;background:#7cc8f5;border-radius:999px;padding:7px 13px;text-decoration:none;white-space:nowrap}
.rd-dots{display:flex;gap:6px}
.rd-dot{pointer-events:auto;width:26px;height:26px;border-radius:50%;border:1px solid rgba(234,242,255,.22);background:rgba(6,11,31,.6);color:#a9b7d6;font:600 10px 'DM Sans',sans-serif;cursor:pointer;padding:0}
.rd-dot.on{border-color:#22a0dc;color:#fff;background:rgba(34,160,220,.25)}
.rd-outro{position:absolute;inset:0;display:grid;place-items:center;opacity:0;padding:0 16px}
.rd-outro.live{pointer-events:auto}
.rd-ocard{max-width:560px;width:100%;background:rgba(10,18,48,.86);border:1px solid rgba(234,242,255,.16);border-radius:18px;padding:26px;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.rd-ocard h2{font:800 clamp(1.6rem,4.5vw,2.4rem)/1.05 Sora,sans-serif;margin:0 0 8px}.rd-ocard p{margin:0;color:#c7d3ee}
@media (max-width:640px){.rd-label{min-width:0;font-size:11px}.rd-dots{display:none}.rd-hero{padding:72px 0 48px}}
@media (prefers-reduced-motion:reduce){.rd-link{transition:none}}
