/* Unigata site system (2026-11-09): shared header, mega menus, footer and the page components for the home, hub and
   product pages. Everything here is prefixed (uc- chrome, hx- home, ux- hubs) so it cannot collide with the inline
   styles the older product pages still carry. Colours are tokens on the scopes below, not on :root, for the same reason. */
.uc-header,.uc-footer,.uc-pop,.hx,.ux{--bg:#020309;--bg2:#070914;--ink:#f6f2e8;--mut:#a9a39a;--line:rgba(255,255,255,.14);--line2:rgba(255,255,255,.08);
  --blue:#2aa8ff;--blue-s:#8fd0ff;--card:rgba(255,255,255,.045);--ok:#8ff0bc;--warm:#ffc48c;--kj:#e0573f;--serif:"Iowan Old Style","Palatino Linotype",Palatino,"Book Antiqua",Georgia,"Noto Serif",serif}
.uc-skip{position:absolute;inset-inline-start:8px;top:8px;transform:translateY(-300%);background:#f6f2e8;color:#050509;padding:10px 14px;border-radius:8px;z-index:60;font:600 14px/1.2 system-ui,sans-serif}
.uc-skip:focus{transform:none}

/* ── Header ─────────────────────────────────────────────────────────────── */
.uc-header{position:sticky;top:0;z-index:50;background:rgba(2,3,9,.9);border-bottom:1px solid var(--line2);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
@supports ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.uc-header{background:rgba(2,3,9,.72);-webkit-backdrop-filter:saturate(1.4) blur(16px);backdrop-filter:saturate(1.4) blur(16px)}}
.uc-header.scrolled{border-bottom-color:var(--line)}
.uc-header *{box-sizing:border-box}
.uc-bar{position:relative;max-width:76rem;margin:0 auto;padding:0 16px;height:64px;display:flex;align-items:center;gap:10px}
.uc-brand{display:inline-flex;align-items:center;flex:none;margin-inline-end:10px}
.uc-brand img{height:26px;width:auto;display:block}
.uc-nav{flex:1;display:flex;align-items:center;min-width:0}
.uc-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:2px}
.uc-item{display:flex;align-items:center;position:static}
.uc-top{color:var(--mut);text-decoration:none;font-size:.93rem;font-weight:600;padding:0 6px 0 12px;min-height:44px;display:inline-flex;align-items:center;border-radius:999px;position:relative;white-space:nowrap}
.uc-item:not(.has-panel) .uc-top{padding-inline-end:12px}
.uc-top:hover,.uc-item.open .uc-top,.uc-item:hover .uc-top{color:var(--ink)}
.uc-top[aria-current]{color:var(--ink)}
.uc-top[aria-current]::after{content:"";position:absolute;inset-inline:12px;bottom:4px;height:2px;border-radius:2px;background:linear-gradient(90deg,#42b4e7,#3a51a3)}
.uc-chev{appearance:none;background:none;border:0;color:var(--mut);width:28px;height:44px;margin-inline-start:-2px;margin-inline-end:4px;display:inline-grid;place-items:center;cursor:pointer;border-radius:999px;padding:0}
.uc-chev svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.2;transition:transform .2s}
.uc-item.open .uc-chev svg,.uc-item:hover .uc-chev svg{transform:rotate(180deg)}
.uc-item:hover .uc-chev,.uc-item.open .uc-chev{color:var(--ink)}
.uc-header a:focus-visible,.uc-header button:focus-visible,.uc-footer a:focus-visible,.uc-pop a:focus-visible{outline:3px solid rgba(42,168,255,.75);outline-offset:2px}
.uc-right{margin-inline-start:auto;display:flex;align-items:center;gap:8px;flex:none}
.uc-cta{appearance:none;font:inherit;font-weight:800;font-size:.9rem;display:inline-flex;align-items:center;gap:8px;min-height:44px;padding:0 18px;border-radius:999px;background:#f6f2e8;color:#050509;border:1px solid #f6f2e8;cursor:pointer;text-decoration:none}
.uc-cta:hover{background:#fff}
.uc-cta svg{width:12px;height:12px;stroke:currentColor;fill:none;stroke-width:2.4;transition:transform .2s}
.uc-cta[aria-expanded=true] svg{transform:rotate(180deg)}
.uc-burger{display:none;appearance:none;background:var(--card);border:1px solid var(--line);color:var(--ink);width:44px;height:44px;border-radius:50%;cursor:pointer;place-items:center;padding:0}
.uc-burger span,.uc-burger span::before,.uc-burger span::after{display:block;width:18px;height:2px;background:currentColor;border-radius:2px;position:relative;transition:transform .2s,opacity .2s}
.uc-burger span::before,.uc-burger span::after{content:"";position:absolute;left:0}
.uc-burger span::before{top:-6px}.uc-burger span::after{top:6px}
.uc-burger[aria-expanded=true] span{background:transparent}
.uc-burger[aria-expanded=true] span::before{transform:translateY(6px) rotate(45deg)}
.uc-burger[aria-expanded=true] span::after{transform:translateY(-6px) rotate(-45deg)}

/* mega panels */
.uc-panel{position:absolute;inset-inline:16px;top:calc(100% + 8px);background:var(--bg2);border:1px solid var(--line);border-radius:26px;padding:22px;box-shadow:0 40px 80px rgba(0,0,0,.65);
  opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility 0s .16s;display:grid;gap:22px;z-index:5}
.uc-panel::before{content:"";position:absolute;inset-inline:0;top:-16px;height:16px}
.uc-item.open>.uc-panel{opacity:1;visibility:visible;transform:none;transition-delay:0s}
@media (hover:hover) and (min-width:981px){.uc-item.has-panel:hover>.uc-panel,.uc-item.has-panel:focus-within>.uc-panel{opacity:1;visibility:visible;transform:none;transition-delay:0s}}
.uc-panel.p-products{grid-template-columns:1.2fr 1.2fr .8fr}
.uc-panel.p-support{grid-template-columns:1fr 1fr 1fr}
.uc-header .uc-col h3{margin:0 0 10px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);font-weight:700;font-family:inherit;line-height:1.3}
.uc-col ul{list-style:none;margin:0;padding:0;display:grid;gap:4px}
.uc-prod{display:flex;gap:12px;align-items:center;padding:10px;border-radius:16px;text-decoration:none;color:var(--ink);border:1px solid transparent}
.uc-prod:hover,.uc-prod:focus-visible{background:var(--card);border-color:var(--line2)}
.uc-prod img{width:44px;height:44px;border-radius:12px;flex:none;background:#0b0d16}
.uc-prod b{display:block;font-size:1rem;letter-spacing:-.01em;line-height:1.2}
.uc-prod small{display:block;color:var(--mut);font-size:.8rem;line-height:1.35;margin-top:2px}
.uc-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-radius:12px;text-decoration:none;color:rgba(246,242,232,.86);font-size:.92rem;font-weight:600}
.uc-link:hover,.uc-link:focus-visible{background:var(--card);color:var(--ink)}
.uc-link i{font-style:normal;color:var(--mut);font-weight:400}
.uc-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:currentColor;margin-inline-end:6px;vertical-align:middle}
.uc-live{color:var(--ok)}.uc-soon{color:var(--warm)}.uc-rev{color:var(--blue-s)}
.uc-tag{font-size:.7rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase}
.uc-only-m{display:none}

/* "Get the apps" popover */
.uc-pop{position:absolute;inset-inline-end:16px;top:calc(100% + 8px);width:min(24rem,calc(100vw - 32px));background:var(--bg2);border:1px solid var(--line);border-radius:22px;padding:14px;box-shadow:0 40px 80px rgba(0,0,0,.65);z-index:6;opacity:0;visibility:hidden;transform:translateY(-6px);transition:opacity .16s,transform .16s,visibility 0s .16s;font-family:Inter,ui-sans-serif,system-ui,sans-serif}
.uc-pop.open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.uc-pop p{margin:2px 6px 10px;font-size:.8rem;color:var(--mut)}
.uc-pop .uc-prod small{white-space:normal}

/* ── Drawer (phones and small tablets) ──────────────────────────────────── */
@media (max-width:980px){
  .uc-burger{display:inline-grid}
  .uc-nav{position:absolute;top:100%;inset-inline:0;height:calc(100vh - 64px);height:calc(100dvh - 64px);background:var(--bg);display:block;overflow-y:auto;overscroll-behavior:contain;padding:8px 16px calc(40px + env(safe-area-inset-bottom,0px));opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s,transform .18s,visibility 0s .18s}
  .uc-nav.open{opacity:1;visibility:visible;transform:none;transition-delay:0s}
  .uc-list{flex-direction:column;align-items:stretch;gap:0}
  .uc-item{flex-wrap:wrap;border-bottom:1px solid var(--line2)}
  .uc-top{flex:1;font-size:1.35rem;color:var(--ink);padding:14px 0;min-height:56px;font-family:var(--serif);font-weight:600}
  .uc-item:not(.has-panel) .uc-top{padding-inline-end:0}
  .uc-top[aria-current]::after{inset-inline:0;bottom:8px;width:36px;inset-inline-end:auto}
  .uc-chev{width:56px;height:56px}
  .uc-panel{position:static;flex:0 0 100%;display:none;opacity:1;visibility:visible;transform:none;box-shadow:none;border:0;background:transparent;padding:0 0 14px;grid-template-columns:1fr!important;gap:14px}
  .uc-panel::before{display:none}
  .uc-item.open>.uc-panel{display:grid}
  .uc-only-m{display:flex}
  .uc-pop{inset-inline:16px;width:auto}
}
@media (max-width:560px){.uc-cta{display:none}}
@media (max-width:420px){.uc-brand img{height:22px}}
html.uc-lock,html.uc-lock body{overflow:hidden}
noscript .uc-nav{}

/* ── Footer ─────────────────────────────────────────────────────────────── */
.uc-footer{border-top:1px solid var(--line2);background:linear-gradient(180deg,rgba(7,9,20,0),#04050c 40%);color:var(--mut);font-size:.9rem;padding:56px 16px calc(40px + env(safe-area-inset-bottom,0px));font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;position:relative;z-index:1;clear:both}
.uc-footer *{box-sizing:border-box}
.uc-foot-in{max-width:76rem;margin:0 auto;display:grid;grid-template-columns:1.3fr repeat(4,1fr);gap:36px 32px}
.uc-footer .uc-foot-in h2{margin:0 0 12px;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--ink);font-weight:700;font-family:inherit;line-height:1.3;letter-spacing:.16em}
.uc-foot-in ul{list-style:none;margin:0;padding:0}
.uc-foot-in li{margin:7px 0}
.uc-footer a{color:var(--mut);text-decoration:none}
.uc-footer a:hover,.uc-footer a:focus-visible{color:var(--ink);text-decoration:underline}
.uc-foot-co img{height:26px;width:auto;display:block;margin-bottom:14px}
.uc-foot-co p{margin:0 0 10px;line-height:1.55;max-width:20em}
.uc-foot-lang{grid-column:1/-1;border-top:1px solid var(--line2);padding-top:22px;display:flex;flex-wrap:wrap;gap:16px 32px;align-items:flex-end;justify-content:space-between}
.uc-foot-lang .site-legal-inner{display:flex;gap:24px;align-items:flex-end}
.uc-foot-fine{font-size:.8rem;margin:0}
@media (max-width:980px){.uc-foot-in{grid-template-columns:1fr 1fr}.uc-foot-co{grid-column:1/-1}}
@media (max-width:520px){.uc-foot-in{grid-template-columns:1fr}}

/* ── Shared page parts ──────────────────────────────────────────────────── */
.hx,.ux{font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,Arial,sans-serif;color:var(--ink);line-height:1.6}
.hx *,.ux *{box-sizing:border-box}
:where(.hx main a,.ux main a){color:var(--blue)}
.hx a:focus-visible,.hx button:focus-visible,.ux a:focus-visible,.ux button:focus-visible,.ux input:focus-visible,.ux textarea:focus-visible{outline:3px solid rgba(42,168,255,.75);outline-offset:3px}
.w{max-width:76rem;margin:0 auto;padding:0 16px}
.sec{padding:84px 0;position:relative}
.kick{display:inline-flex;align-items:center;gap:10px;margin:0 0 16px;font-size:12px;letter-spacing:.22em;text-transform:uppercase;font-weight:800;color:var(--blue-s)}
.kick::before{content:"";width:28px;height:1px;background:currentColor;opacity:.7}
.kick.warm{color:var(--warm)}
.hx h1,.hx h2,.hx h3,.ux h1,.ux h2,.ux h3{margin:0;letter-spacing:-.025em;line-height:1.06;font-family:var(--serif);font-weight:600;text-wrap:balance}
.hx h1,.ux h1{font-size:clamp(40px,6.6vw,84px);letter-spacing:-.035em}
.hx h2,.ux h2{font-size:clamp(30px,4.4vw,52px)}
.hx h3,.ux h3{font-size:clamp(22px,2.4vw,30px)}
.lead{font-size:clamp(17px,2vw,21px);color:rgba(246,242,232,.74);max-width:38em;margin:22px 0 0}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:13px 24px;min-height:50px;font-weight:800;font-size:15px;text-decoration:none;border:1px solid var(--line);color:var(--ink)!important;background:var(--card);cursor:pointer;font-family:inherit}
.btn:hover{background:rgba(255,255,255,.09)}
.btn.primary{background:var(--ink);color:#050509!important;border-color:var(--ink)}
.btn.primary:hover{background:#fff}
.btn .ar{width:14px;height:14px;stroke:currentColor;fill:none;stroke-width:2.2;transition:transform .2s}
.btn:hover .ar{transform:translateX(3px)}
[dir=rtl] .btn .ar,[dir=rtl] .uc-link .ar{transform:scaleX(-1)}
.status{display:inline-flex;align-items:center;gap:8px;font-size:11.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;border-radius:999px;padding:6px 12px;border:1px solid var(--line)}
.status::before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}
.status.live{color:var(--ok);border-color:rgba(143,240,188,.4);background:rgba(143,240,188,.07)}
.status.soon{color:var(--warm);border-color:rgba(255,196,140,.4);background:rgba(255,196,140,.06)}
.status.review{color:var(--blue-s);border-color:rgba(143,208,255,.4);background:rgba(143,208,255,.06)}
.note{font-size:.88rem;color:var(--mut);margin:14px 0 0}
.chips{display:flex;flex-wrap:wrap;gap:6px 8px}
.chip{display:inline-flex;align-items:center;min-height:34px;padding:0 13px;border-radius:999px;border:1px solid var(--line);color:rgba(246,242,232,.86)!important;text-decoration:none;font-size:.86rem;font-weight:600;background:transparent}
.chip:hover{background:var(--card);color:#fff!important}

/* backdrop: fine grid + two drifting colour fields */
.bg-field{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}
.bg-field::before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.035) 1px,transparent 1px);background-size:64px 64px;-webkit-mask-image:radial-gradient(ellipse at 70% 20%,#000 0%,transparent 70%);mask-image:radial-gradient(ellipse at 70% 20%,#000 0%,transparent 70%)}
.orb{position:absolute;border-radius:50%;filter:blur(70px);opacity:.5;will-change:transform}
.orb.a{width:46vw;height:46vw;max-width:620px;max-height:620px;right:-8vw;top:-12vw;background:radial-gradient(circle,#2a4fd0 0%,rgba(42,79,208,0) 70%);animation:drift 22s ease-in-out infinite alternate}
.orb.b{width:34vw;height:34vw;max-width:460px;max-height:460px;left:-10vw;top:22vw;background:radial-gradient(circle,#0f7fb8 0%,rgba(15,127,184,0) 70%);opacity:.32;animation:drift 28s ease-in-out infinite alternate-reverse}
@keyframes drift{to{transform:translate3d(-40px,36px,0) scale(1.08)}}

/* reveal on scroll (only when script has run) */
html.js .rv{opacity:0;transform:translateY(18px);transition:opacity .7s cubic-bezier(.2,.7,.2,1),transform .7s cubic-bezier(.2,.7,.2,1)}
html.js .rv.in{opacity:1;transform:none}
html.js .rv.d1{transition-delay:.08s}html.js .rv.d2{transition-delay:.16s}html.js .rv.d3{transition-delay:.24s}

/* ── Home ───────────────────────────────────────────────────────────────── */
.hx-hero{padding:56px 0 40px;position:relative;overflow:hidden}
.hx-hero .w{position:relative;z-index:1;display:grid;grid-template-columns:1.02fr .98fr;gap:40px 48px;align-items:center}
.hx-hero .row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}
.hx-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px 18px;margin:40px 0 0;padding:22px 0 0;border-top:1px solid var(--line2);list-style:none}
.hx-stats li{min-width:0}
.hx-stats b{display:block;font-family:var(--serif);font-size:clamp(28px,3.4vw,40px);font-weight:600;letter-spacing:-.03em;line-height:1}
.hx-stats span{font-size:.8rem;color:var(--mut)}
.stage{position:relative;--accent:#2aa8ff}
.stage[data-on=kanji]{--accent:#e0573f}.stage[data-on=chore]{--accent:#42b4e7}.stage[data-on=zen]{--accent:#ffc48c}
.arch{position:relative;width:min(420px,100%);aspect-ratio:3/3.55;margin:0 auto;border-radius:999px 999px 30px 30px;border:1px solid var(--line);overflow:hidden;
  background:radial-gradient(120% 90% at 50% 0%,color-mix(in srgb,var(--accent) 38%,#05060d) 0%,#05060d 70%);transition:background .5s}
.arch::before{content:"";position:absolute;inset:14px;border-radius:999px 999px 22px 22px;border:1px dashed rgba(255,255,255,.14);pointer-events:none}
.arch::after{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(#000,transparent 80%);mask-image:linear-gradient(#000,transparent 80%);pointer-events:none}
.scene{position:absolute;inset:0;display:grid;place-items:end center;opacity:0;visibility:hidden;transform:scale(.97);transition:opacity .45s,transform .45s,visibility 0s .45s;z-index:1}
.scene.on{opacity:1;visibility:visible;transform:none;transition-delay:0s}
.scene .phone{width:56%;border-radius:26px 26px 0 0;border:1px solid rgba(255,255,255,.22);border-bottom:0;box-shadow:0 -10px 60px rgba(0,0,0,.55);margin-bottom:0;transform:translate3d(var(--px,0),var(--py,0),0);transition:transform .25s ease-out}
.scene.zen{place-items:stretch}
.scene.zen .poster{position:absolute;inset:0}
.scene.zen .poster img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;filter:brightness(.7)}
.scene.zen .play{position:absolute;inset:auto 0 22%;display:grid;place-items:center}
.scene.zen .play span{width:72px;height:72px;border-radius:50%;background:#f6f2e8;display:grid;place-items:center}
.scene.zen .play svg{width:26px;height:26px;fill:#050509;margin-inline-start:3px}
.scene.chore{place-items:center}
.scene.chore .mark{display:grid;gap:18px;justify-items:center;text-align:center;padding-bottom:12%}
.scene.chore .mark img{width:34%;border-radius:26px;box-shadow:0 20px 60px rgba(66,180,231,.35)}
.scene.chore .wm{font-family:var(--serif);font-weight:600;font-size:clamp(34px,5vw,50px);letter-spacing:-.04em;line-height:1}
.scene.chore .wm span{background:linear-gradient(96deg,#6a82e8,#42b4e7);-webkit-background-clip:text;background-clip:text;color:transparent}
.float{position:absolute;z-index:3;padding:7px 12px;border-radius:999px;background:rgba(5,6,13,.78);border:1px solid var(--line);font-size:.74rem;font-weight:700;letter-spacing:.04em;white-space:nowrap;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);animation:bob 6s ease-in-out infinite alternate}
.float.f1{top:18%;inset-inline-start:-4%}.float.f2{top:46%;inset-inline-end:-6%;animation-delay:-2s}.float.f3{bottom:20%;inset-inline-start:-8%;animation-delay:-4s}
@keyframes bob{to{transform:translateY(-10px)}}
.tabs{display:flex;justify-content:center;gap:6px;margin:22px auto 0;flex-wrap:wrap}
.tab{appearance:none;display:inline-flex;align-items:center;gap:9px;min-height:46px;padding:0 16px 0 8px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);font:inherit;font-weight:700;font-size:.9rem;cursor:pointer}
.tab img{width:30px;height:30px;border-radius:9px}
.tab[aria-selected=true]{background:var(--ink);color:#050509;border-color:var(--ink)}
.tab:hover:not([aria-selected=true]){background:rgba(255,255,255,.09)}
.cap{max-width:30rem;margin:22px auto 0;text-align:center;min-height:11.5rem}
.cap-panel[hidden]{display:none}
.cap h2{font-size:clamp(28px,3vw,36px);margin:12px 0 8px}
.cap p{margin:0 auto;color:rgba(246,242,232,.74);font-size:.98rem;max-width:28em}
.cap .row{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-top:18px}
.cap .btn{min-height:44px;padding:10px 20px;font-size:14px}

/* greetings ribbon */
.ribbon{border-block:1px solid var(--line2);overflow:hidden;padding:18px 0;background:rgba(255,255,255,.02);position:relative}
.ribbon-track{display:flex;width:max-content;gap:0;animation:slide 70s linear infinite}
.ribbon:hover .ribbon-track{animation-play-state:paused}
.ribbon-track span{font-family:var(--serif);font-size:clamp(22px,3vw,34px);color:rgba(246,242,232,.82);padding:0 28px;white-space:nowrap;position:relative}
.ribbon-track span::after{content:"";position:absolute;inset-inline-end:-3px;top:50%;width:6px;height:6px;border-radius:50%;background:var(--blue);opacity:.6}
@keyframes slide{to{transform:translateX(-50%)}}
[dir=rtl] .ribbon-track{animation-direction:reverse}
.ribbon-cap{max-width:76rem;margin:0 auto;padding:12px 16px 0;font-size:.82rem;color:var(--mut);text-align:center}

/* the index: everything for each app */
.atlas{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:44px}
.atl{display:flex;flex-direction:column;border:1px solid var(--line);border-radius:26px 26px 22px 22px;padding:22px;background:linear-gradient(170deg,rgba(255,255,255,.06),rgba(255,255,255,.012));position:relative;overflow:hidden}
.atl::before{content:"";position:absolute;inset-inline:-30%;top:-60%;height:100%;background:radial-gradient(closest-side,var(--c,#2aa8ff),transparent);opacity:.16;pointer-events:none;transition:opacity .3s}
.atl:hover::before{opacity:.3}
.atl-h{display:flex;align-items:center;gap:12px;position:relative}
.atl-h img{width:48px;height:48px;border-radius:14px}
.atl-h b{font-family:var(--serif);font-size:1.45rem;font-weight:600;letter-spacing:-.02em;line-height:1.1}
.atl .status{margin:16px 0 8px;align-self:flex-start;position:relative}
.atl p{margin:0 0 14px;color:rgba(246,242,232,.72);font-size:.92rem;position:relative}
.atl ul{list-style:none;margin:auto 0 0;padding:0;border-top:1px solid var(--line2);position:relative}
.atl li{border-bottom:1px solid var(--line2)}
.atl li a{display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:44px;color:rgba(246,242,232,.86);text-decoration:none;font-size:.92rem;font-weight:600}
.atl li a:hover{color:#fff}
.atl li a span{color:var(--mut);font-weight:400;font-size:.8rem}
.atl li a::after{content:"→";color:var(--mut);transition:transform .2s}
[dir=rtl] .atl li a::after{content:"←"}
.atl li a:hover::after{transform:translateX(3px);color:var(--ink)}

/* principles */
.pr{display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin-top:44px;border-top:1px solid var(--line)}
.pr>div{padding:30px 28px 30px 0;border-inline-end:1px solid var(--line2)}
.pr>div+div{padding-inline-start:28px}
.pr>div:last-child{border:0}
.pr .n{font-family:var(--serif);font-size:15px;color:var(--blue-s);letter-spacing:.1em}
.pr h3{margin:14px 0 10px}
.pr p{margin:0;color:rgba(246,242,232,.72);font-size:.96rem}

/* idea band */
.band{border:1px solid var(--line);border-radius:36px;padding:clamp(28px,5vw,64px);background:radial-gradient(90% 140% at 100% 0%,rgba(42,79,208,.35),rgba(2,3,9,0) 60%),var(--card);display:grid;grid-template-columns:1.4fr .6fr;gap:28px;align-items:center;overflow:hidden}
.band .btn{justify-self:end}

/* ── Hub pages ──────────────────────────────────────────────────────────── */
.ux-hero{padding:64px 0 24px;position:relative;overflow:hidden}
.ux-hero .w{position:relative;z-index:1}
.crumbs{display:flex;gap:8px;align-items:center;margin:0 0 26px;font-size:.84rem;color:var(--mut);list-style:none;padding:0;flex-wrap:wrap}
.crumbs a{color:var(--mut)!important;text-decoration:none}.crumbs a:hover{color:var(--ink)!important}
.crumbs li+li::before{content:"/";margin-inline-end:8px;opacity:.5}
.filters{display:flex;gap:8px;flex-wrap:wrap;margin:34px 0 0}
.filters button{appearance:none;font:inherit;font-weight:700;font-size:.9rem;min-height:44px;padding:0 18px;border-radius:999px;border:1px solid var(--line);background:var(--card);color:var(--ink);cursor:pointer}
.filters button[aria-pressed=true]{background:var(--ink);color:#050509;border-color:var(--ink)}
.rows{display:grid;gap:14px;margin-top:32px}
.row-card{display:grid;grid-template-columns:auto 1fr auto;gap:22px;align-items:center;border:1px solid var(--line);border-radius:28px;padding:22px 26px;background:linear-gradient(120deg,rgba(255,255,255,.055),rgba(255,255,255,.012))}
.row-card[hidden]{display:none}
.row-card>img{width:76px;height:76px;border-radius:22px 22px 18px 18px}
.row-card h2{font-size:clamp(26px,3vw,36px);margin:6px 0 6px}
.row-card p{margin:0;color:rgba(246,242,232,.74);max-width:40em}
.row-card .chips{margin-top:14px}
.two{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:34px}
.panel{border:1px solid var(--line);border-radius:26px;padding:clamp(22px,3vw,32px);background:var(--card)}
.panel h2,.panel h3{margin-bottom:12px}
.panel p{margin:0 0 12px;color:rgba(246,242,232,.76)}
.panel ul{margin:0;padding:0;list-style:none}
.panel li{border-bottom:1px solid var(--line2)}
.panel li:last-child{border:0}
.panel li a{display:flex;justify-content:space-between;gap:12px;align-items:center;min-height:48px;text-decoration:none;color:var(--ink)!important;font-weight:600}
.panel li a span{color:var(--mut);font-weight:400;font-size:.88rem}
.panel li a:hover{color:#fff}
.tbl{width:100%;border-collapse:collapse;margin-top:30px;font-size:.96rem}
.tbl th,.tbl td{padding:16px 14px;border-bottom:1px solid var(--line2);text-align:start;vertical-align:middle}
.tbl th{font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mut);font-weight:700}
.tbl td:first-child{white-space:nowrap}
.tbl td img{width:34px;height:34px;border-radius:10px;display:inline-block;vertical-align:middle;margin-inline-end:12px}
.tbl td b{font-family:var(--serif);font-size:1.2rem;font-weight:600;vertical-align:middle}
.tbl a{font-weight:600;text-decoration:none}
.tbl a:hover{text-decoration:underline}
.tw2{overflow-x:auto;-webkit-overflow-scrolling:touch}
.ux-prose{max-width:46rem}
.ux-prose p{color:rgba(246,242,232,.8);font-size:1.04rem;margin:0 0 18px}
.facts2{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:34px}
.fact{border:1px solid var(--line);border-radius:22px;padding:22px;background:var(--card)}
.fact b{display:block;font-family:var(--serif);font-size:1.5rem;font-weight:600;letter-spacing:-.02em;margin-bottom:6px}
.fact span{color:rgba(246,242,232,.72);font-size:.94rem}
/* idea form */
.idea-card{position:relative;max-width:46rem;margin-top:34px;border:1px solid var(--line);border-radius:28px;padding:clamp(20px,3.5vw,34px);background:var(--card)}
.idea-card label.l{display:block;font-size:13px;font-weight:800;margin:0 0 8px}
.idea-card textarea,.idea-card input[type=email]{width:100%;background:rgba(255,255,255,.06);border:1px solid var(--line);color:var(--ink);border-radius:14px;padding:14px 16px;font:inherit;font-size:16px;min-height:50px}
.idea-card textarea{min-height:140px;resize:vertical}
.themes{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0 18px}
.themes label{cursor:pointer}
.themes input{position:absolute;opacity:0;pointer-events:none}
.themes span{display:inline-block;border:1px solid var(--line);border-radius:999px;padding:9px 14px;font-size:14px;color:rgba(246,242,232,.78);min-height:40px}
.themes input:checked+span{background:var(--ink);color:#050509;border-color:var(--ink)}
.themes input:focus-visible+span{outline:3px solid rgba(42,168,255,.72);outline-offset:2px}
.idea-hp{position:absolute;inset-inline-start:0;width:1px;height:1px;opacity:0;overflow:hidden;clip:rect(0 0 0 0);pointer-events:none}
.idea-card button{margin-top:18px}
.idea-status{min-height:1.5em;margin:12px 0 0;font-size:.95rem}
.idea-status.ok{color:var(--ok)}.idea-status.error{color:#ff8c8c}

@media (max-width:980px){
  .hx-hero .w{grid-template-columns:1fr}
  .atlas{grid-template-columns:repeat(2,1fr)}
  .row-card{grid-template-columns:auto 1fr}
  .row-card .btn{grid-column:1/-1}
  .band{grid-template-columns:1fr}.band .btn{justify-self:start}
  .facts2{grid-template-columns:1fr}
}
@media (max-width:700px){
  .sec{padding:60px 0}
  .pr{grid-template-columns:1fr}.pr>div,.pr>div+div{padding:24px 0;border-inline-end:0;border-bottom:1px solid var(--line2)}
  .two{grid-template-columns:1fr}
  .float{display:none}
}
@media (max-width:560px){
  .hx-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
  .atlas{grid-template-columns:1fr}
  .hx-hero .btn,.band .btn{width:100%}
  .row-card{grid-template-columns:1fr;padding:20px}
  .tab span{display:none}.tab{padding:0 8px}
}
@media (prefers-reduced-motion:reduce){
  .orb,.float,.ribbon-track{animation:none!important}
  .ribbon-track{flex-wrap:wrap;width:auto;justify-content:center;row-gap:6px}
  .ribbon-track [aria-hidden=true]{display:none}
  html.js .rv{opacity:1;transform:none;transition:none}
  .scene,.arch,.uc-panel,.uc-nav,.uc-pop{transition:none}
}
