:root{
  --bg:#0b1020;--bg2:#0e1430;--panel:rgba(255,255,255,0.06);--ink:#e8ebf4;--muted:#a8b3cf;
  --brand:#7c6cff;--brand2:#60a5fa;--border:rgba(148,163,184,0.18);--shadow:0 10px 30px rgba(0,0,0,.35);

  /* fluid defaults */
  --space:clamp(12px,2.5vw,20px);
  --radius:clamp(10px,1.6vw,16px);
  --radius-lg:clamp(14px,2vw,20px);
}

/* =============== Base & Utilities =============== */
*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:'Inter',system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;
  color:var(--ink);
  background:radial-gradient(1200px 500px at 100% -20%,#182045,transparent 60%),linear-gradient(180deg,var(--bg),#0a0f1f);
  -webkit-font-smoothing:antialiased; text-rendering:optimizeLegibility;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
.container{max-width:1160px;margin:0 auto;padding:0 var(--space)}
.skip{position:absolute;left:-9999px;top:auto}
.skip:focus{left:12px;top:12px;z-index:999;background:#fff;color:#000;padding:8px 10px;border-radius:8px}
:focus-visible{outline:2px solid color-mix(in oklab, var(--brand) 70%, white 30%);outline-offset:2px;border-radius:8px}
.responsive-media{width:100%;height:auto;border-radius:12px}

/* Optional: wider tap targets on lists/links */
.trust li{padding:6px 10px;border-radius:10px;background:rgba(255,255,255,.04)}

/* =============== Header / Navigation =============== */

/* Buttons */
.btn {
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  font-weight:800;
  border-radius:12px;
  padding:12px 16px;
  border:1px solid var(--border);
  background:var(--panel);
  cursor:pointer;
  min-height:44px;
  transition:background .2s ease, transform .15s ease;
  text-decoration:none;
}

.btn:hover {
  background:rgba(255,255,255,.08);
  transform:translateY(-1px);
}

.btn--primary {
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  border-color:transparent;
  color:#fff;
}

.btn--primary:hover {
  filter:brightness(1.1);
}

.btn--ghost {
  background:transparent;
  border:1px solid var(--border);
  color:var(--ink);
}

.btn--ghost:hover {
  background:var(--panel);
}





.topbar{
  position:sticky; top:0; z-index:40;
  background:rgba(10,12,26,.6);
  backdrop-filter:blur(10px);
  border-bottom:1px solid var(--border);
}
.topbar__inner{
  display:flex; align-items:center; justify-content:space-between;
  min-height:64px; padding-inline:var(--space);
}
.brand{display:flex; align-items:center; gap:10px; font-weight:800}
.brand__logo{
  display:grid; place-items:center; width:28px; height:28px; border-radius:8px;
  background:linear-gradient(135deg,var(--brand),var(--brand2)); box-shadow:var(--shadow)
}

/* Topbar CTA — always-visible "Open App" button, mobile menu toggle sits beside it */
.topbar__actions{display:flex; align-items:center; gap:10px}
.btn--sm{padding:8px 14px; min-height:36px; font-size:.88rem}
.topbar__cta{white-space:nowrap}
@media (max-width:380px){ .topbar__cta{padding:8px 10px; font-size:.8rem} }

/* Drawer's own "Open App" row — same gradient, slightly larger tap target */
.menu--drawer a.drawer-cta{
  background:linear-gradient(135deg,var(--brand),var(--brand2));
  color:#fff; font-weight:800; text-align:center; margin-bottom:6px;
}

/* Desktop menu (≥901px) */
.nav--desktop { display:none; }
.nav--desktop .menu{
  display:flex; gap:12px; list-style:none; margin:0; padding:0; flex-wrap:wrap;
}
.nav--desktop .menu a{
  padding:10px 12px; border-radius:10px; white-space:nowrap;
}
.nav--desktop .menu a:hover,
.nav--desktop .menu a.active{ background:var(--panel) }

/* Mobile toggle (≤900px) */
.nav__toggle{
  display:inline-grid; place-items:center;
  width:38px; height:34px; border-radius:10px;
  border:1px solid var(--border);
  background:var(--panel);
}
.nav__toggle svg rect{ fill:var(--ink); opacity:.9 }

/* Drawer menu (≤900px) */
.menu--drawer{
  position: fixed; top: 0; right: -100%;
  height: 100vh; width: min(86%, 340px);
  padding: 80px 20px 20px;
  background:#0f172a;
  border-left:1px solid var(--border);
  box-shadow: var(--shadow);
  transition: right .25s ease;
  z-index: 60;
}
.menu--drawer.open{ right:0; }
.menu--drawer ul{ list-style:none; margin:0; padding:0; display:flex; flex-direction:column; gap:10px; }
.menu--drawer a{ font-size:1.05rem; padding:14px 12px; border-radius:12px; display:block; }
.menu--drawer a:hover{ background:var(--panel); }

/* Backdrop */
.nav__scrim{
  position:fixed; inset:0;
  background:rgba(0,0,0,.45);
  backdrop-filter: blur(2px);
  opacity:0; pointer-events:none;
  transition:opacity .2s ease; z-index:50;
}
.nav__scrim.show{ opacity:1; pointer-events:auto; }

/* Prevent page scroll when drawer open */
body.noscroll { overflow: hidden; }

/* Show desktop / hide mobile pieces ≥901px */
@media (min-width:901px){
  .nav--desktop{ display:block; }
  .nav__toggle{ display:none; }
  .menu--drawer{ display:none; }
}

/* =============== Sections / Hero =============== */
.section{padding:clamp(56px,8vw,100px) 0}
.display{font-size:clamp(1.9rem,4.8vw,3.2rem);line-height:1.1;margin:.2rem 0 .8rem}
.lead{font-size:clamp(1rem,2.4vw,1.25rem);color:#d7dbeb;max-width:72ch}

.hero{position:relative;overflow:hidden}
.hero__wrap{
  display:grid;
  grid-template-columns:1.1fr 1fr;
  gap:clamp(18px,3vw,32px);
  align-items:center;
}
.trust{display:flex;gap:12px;flex-wrap:wrap;list-style:none;margin:16px 0 0;padding:0;color:var(--muted)}
.hero__art{position:relative;min-height:360px}
.blob{position:absolute;filter:blur(40px);opacity:.7}
.blob--1{width:320px;height:320px;border-radius:50%;background:radial-gradient(circle at 30% 30%,#7c6cff,transparent 60%),#7c6cff;left:-40px;top:-20px;animation:float 8s ease-in-out infinite}
.blob--2{width:260px;height:260px;border-radius:50%;background:radial-gradient(circle at 60% 40%,#60a5fa,transparent 60%),#60a5fa;right:-30px;bottom:-20px;animation:float 9s ease-in-out infinite reverse}
@keyframes float{50%{transform:translateY(-12px) scale(1.02)}}

/* Glass cards */
.glass{position:relative;margin:10px auto;max-width:520px;background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:var(--radius-lg);padding:14px;box-shadow:var(--shadow)}
.glass__row{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:6px 0}
.glass__card{background:rgba(255,255,255,.06);border:1px solid var(--border);border-radius:14px;padding:12px}
.badge{display:inline-block;padding:4px 8px;border-radius:999px;background:#1e293b;font-weight:800;color:#c7d2fe;font-size:.78rem}
.badge--alt{color:#bbf7d0;background:#052e1e}
.grad--hero{position:absolute;inset:0;background:radial-gradient(800px 400px at 100% 0,rgba(124,108,255,.18),transparent 60%);pointer-events:none}

/* =============== Showcase (AI Tools / Ventures & Services) =============== */
.showcase--alt{background:rgba(255,255,255,.02);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}

.showcase__head{
  display:flex; align-items:flex-end; justify-content:space-between; gap:20px;
  flex-wrap:wrap; margin-bottom:clamp(24px,4vw,40px);
}
.showcase__head .display{margin:.35em 0 .3em}
.showcase__head .lead{opacity:.85; margin-bottom:0}
.eyebrow{
  display:inline-block; font-size:.8rem; font-weight:800; letter-spacing:.06em;
  text-transform:uppercase; color:var(--brand2);
}

.showcase__grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(260px, 1fr));
  gap:clamp(16px,2.5vw,22px);
}

.showcard{
  display:flex; flex-direction:column;
  background:rgba(255,255,255,.04);
  border:1px solid var(--border);
  border-radius:var(--radius-lg);
  padding:clamp(18px,2.5vw,24px);
  box-shadow:var(--shadow);
  transition:transform .2s ease, border-color .2s ease, background .2s ease;
}
.showcard:hover{
  transform:translateY(-4px);
  border-color:color-mix(in oklab, var(--brand) 45%, var(--border) 55%);
  background:rgba(255,255,255,.06);
}
.showcard--featured{
  background:linear-gradient(160deg, rgba(124,108,255,.14), rgba(255,255,255,.04) 60%);
  border-color:color-mix(in oklab, var(--brand) 35%, var(--border) 65%);
}

.showcard__media{
  margin:-8px -8px 14px; border-radius:calc(var(--radius-lg) - 4px); overflow:hidden;
  aspect-ratio:1/1; background:rgba(255,255,255,.04);
}
.showcard__media img{width:100%; height:100%; object-fit:cover; display:block}

.showcard__top{display:flex; align-items:center; justify-content:space-between; gap:10px; margin-bottom:14px}
.showcard__logo{
  width:52px; height:52px; border-radius:14px; overflow:hidden;
  background:rgba(255,255,255,.06); border:1px solid var(--border);
  display:grid; place-items:center; flex-shrink:0;
}
.showcard__logo img{width:100%; height:100%; object-fit:cover}

.showcard__title{font-size:1.15rem; margin:0 0 8px}
.showcard__desc{color:var(--muted); font-size:.95rem; line-height:1.55; margin:0 0 16px; flex-grow:1}
.showcard__link{
  display:inline-flex; align-items:center; gap:6px; font-weight:800; color:#c7d2fe;
  margin-top:auto; padding-top:4px;
}
.showcard__link span{transition:transform .2s ease}
.showcard:hover .showcard__link span{transform:translateX(3px)}

@media (max-width:560px){
  .showcase__head{align-items:flex-start}
  .showcase__head .btn{width:100%}
}

/* =============== Tools Layout =============== */
.appgrid{
  display:grid;
  grid-template-columns:280px 1.1fr .9fr;
  gap:20px;
  margin-top:20px;
}
.card.panel{background:rgba(255,255,255,.04);border:1px solid var(--border);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.toolnav{display:grid;gap:8px;margin:10px 0 14px}
.tab{padding:10px 12px;border-radius:12px;border:1px solid var(--border);background:rgba(255,255,255,.04);text-align:left;font-weight:700;cursor:pointer}
.tab.active{background:linear-gradient(135deg,var(--brand),var(--brand2));border-color:transparent}
.input,.textarea,select{width:100%;padding:12px 14px;border-radius:12px;border:1px solid var(--border);background:#0f172a;color:var(--ink);outline:none;min-height:44px}
.textarea{min-height:140px;resize:vertical}
.label{font-weight:700;margin:6px 0}
.label.sm{font-size:.86rem;color:var(--muted)}
.range-hint{display:flex;justify-content:space-between;font-size:.8rem;color:var(--muted);margin-top:6px}
.mt-2{margin-top:10px}
.grid{display:grid;gap:12px;margin:12px 0}
.g1{grid-template-columns:1fr}
.g2{grid-template-columns:1fr 1fr}
.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:10px}
.toolbar{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.outputbox{min-height:300px;background:#0c1328;border-radius:12px;padding:14px;line-height:1.55;font-family:ui-monospace, SFMono, Menlo, Monaco, Consolas, 'Liberation Mono', monospace;white-space:pre-wrap}
.toast{padding:10px;border-radius:12px;background:#0b132b;border:1px solid var(--border);color:#cbd5e1}
.loader{display:none;align-items:center}
.loader.show{display:inline-flex}
.dots{display:inline-flex;gap:4px;margin-left:6px}
.dots i{width:6px;height:6px;border-radius:50%;background:#cbd5e1;opacity:.6;animation:pulse 1.2s infinite}
.dots i:nth-child(2){animation-delay:.2s}.dots i:nth-child(3){animation-delay:.4s}
@keyframes pulse{0%,100%{opacity:.5;transform:scale(.9)}50%{opacity:1;transform:scale(1)}}

/* =============== Footer =============== */
.site-footer{border-top:1px solid var(--border);background:#0f172a}
.footer__wrap{display:grid;grid-template-columns:2fr 1fr 1fr;gap:24px;padding:36px 0}
.footnote{border-top:1px solid var(--border);padding:12px 0;color:var(--muted);text-align:center}

/* =============== Responsive Breakpoints =============== */

/* XL → L fallback for huge screens */
@media (min-width:1400px){
  .container{max-width:1280px}
}

/* ≤ 1100px: collapse tool grid, give hero more space */
@media (max-width:1100px){
  .appgrid{grid-template-columns:1fr}
  .hero__wrap{grid-template-columns:1fr;gap:28px}
  .hero__copy{text-align:center}
  .cta{display:flex;justify-content:center;gap:10px;flex-wrap:wrap}
  .glass{max-width:640px}
}

/* ≤ 900px: tighten paddings; mobile nav uses drawer */
@media (max-width:900px){
  .topbar__inner{min-height:60px}
  .footer__wrap{grid-template-columns:1fr 1fr}
}

/* ≤ 780px: 2-col → 1-col blocks */
@media (max-width:780px){
  .g2{grid-template-columns:1fr}
  .glass__row{grid-template-columns:1fr}
  .hero__art{min-height:300px}
  .blob--1{width:260px;height:260px;left:-30px;top:-10px}
  .blob--2{width:220px;height:220px;right:-20px;bottom:-10px}
}

/* ≤ 560px: mobile comfort sizing & stacking */
@media (max-width:560px){
  :root{ --space:16px }
  .section{padding:52px 0}
  .display{font-size:clamp(1.7rem,7.5vw,2.2rem)}
  .lead{font-size:1rem}
  .trust{gap:10px}
  .btn{width:100%;justify-content:center}
  .cta{display:grid;grid-template-columns:1fr;gap:10px}
  .glass{padding:12px;border-radius:16px}
  .glass__card{padding:10px}
  .input,.textarea,select{min-height:46px}
  .footer__wrap{grid-template-columns:1fr;gap:16px}
}

/* ≤ 380px: micro screens */
@media (max-width:380px){
  .badge{font-size:.72rem}
}

/* Reduced motion */
@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important;scroll-behavior:auto!important}
}
