/* ===============================
   File: /models/public/assets/landing.css
   Keep this CSS isolated to the landing page
   =============================== */
:root{
  --bg:#0b1226;           /* deep navy */
  --bg-2:#0e1633;         /* variant */
  --brand:#1f4ad4;        /* primary blue */
  --brand-2:#1740c2;      /* darker */
  --accent:#ff7a1a;       /* orange */
  --text:#e6eaf5;         /* light text */
  --muted:#a6b0cc;        /* secondary text */
  --card:#111a35;         /* card surface */
  --ring:rgba(255,255,255,.12);
  --radius:18px;
  --shadow:0 20px 40px rgba(0,0,0,.35), 0 2px 6px rgba(0,0,0,.25);
}

*{box-sizing:border-box}
html,body{height:100%}
body#landing{margin:0;font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background:linear-gradient(180deg,var(--bg),var(--bg-2));color:var(--text);}

.container{max-width:1140px;margin:0 auto;padding:0 20px}

/* Decorative background */
.lnd-bg{position:fixed;inset:0;overflow:hidden;pointer-events:none;z-index:-1}
.blob{position:absolute;filter:blur(60px);opacity:.55;transform:translate(-50%,-50%);}
.blob.b1{top:10%;left:12%;width:520px;height:520px;background:radial-gradient(closest-side,rgba(31,74,212,.65),transparent 70%)}
.blob.b2{bottom:-6%;right:0%;width:700px;height:700px;background:radial-gradient(closest-side,rgba(255,122,26,.55),transparent 70%)}
.grid-overlay{position:absolute;inset:-200px;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:48px 48px;background-position:0 0,0 0;mask-image:radial-gradient(circle at 50% 30%, black 40%, transparent 70%)}

/* Header */
.lnd-header{position:sticky;top:0;backdrop-filter:saturate(160%) blur(10px);background:linear-gradient(180deg,rgba(11,18,38,.85),rgba(11,18,38,.35));border-bottom:1px solid rgba(255,255,255,.06)}
.lnd-header .container{height:72px;display:flex;align-items:center;justify-content:space-between}
.brand-logo{height:36px;width:auto;display:block}
.nav-actions .btn{margin-left:12px}

/* Buttons */
.btn{display:inline-flex;align-items:center;gap:10px;padding:12px 18px;border-radius:999px;text-decoration:none;border:1px solid var(--ring);box-shadow:0 1px 2px rgba(0,0,0,.25);transition:.2s ease;}
.btn:hover{transform:translateY(-1px)}
.btn:active{transform:translateY(0)}
.btn-primary{background:linear-gradient(180deg,var(--brand),var(--brand-2));color:#fff;border-color:transparent}
.btn-outline{background:transparent;color:#fff;border-color:rgba(255,255,255,.25)}
.btn-ghost{background:rgba(255,255,255,.06);color:#fff;border-color:transparent}
.link{display:inline-block;margin-left:14px;color:var(--accent);text-decoration:none;border-bottom:1px dashed rgba(255,122,26,.4);padding-bottom:2px}
.link:hover{opacity:.9}

/* Top Video */
.lnd-video{padding:28px 0 0}
.video-wrap{position:relative;border-radius:calc(var(--radius) + 6px);overflow:hidden;border:1px solid rgba(255,255,255,.10);box-shadow:var(--shadow);background:linear-gradient(180deg,#0f1b3e,#0b1226)}
.video{display:block;width:100%;height:auto;max-height:62vh;object-fit:cover}
.v-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:24px;background:linear-gradient(180deg,transparent 40%,rgba(0,0,0,.45) 86%)}
.v-overlay h1{margin:0 0 8px;font-size:clamp(22px,4vw,38px)}
.v-overlay p{margin:0 0 14px;color:var(--text);opacity:.9;max-width:70ch}
.vctrl{position:absolute;top:12px;right:12px;margin-left:10px;background:rgba(0,0,0,.45);color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:999px;padding:8px 12px;cursor:pointer;backdrop-filter:blur(6px)}
.vctrl.sound{right:12px}
.vctrl.playpause{right:58px}

/* Hero */
.lnd-hero{padding:48px 0 54px}
.lnd-hero .container{display:grid;grid-template-columns:1.2fr .8fr;gap:40px;align-items:center}
.lnd-hero h2{font-size:clamp(24px,4.5vw,36px);line-height:1.1;margin:0 0 14px;font-weight:800}
.lnd-hero p{font-size:18px;line-height:1.6;color:var(--muted);margin:0 0 22px;max-width:60ch}
.cta-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap}
.mock{display:flex;justify-content:center}
.mock-card{width:100%;max-width:520px;background:linear-gradient(180deg,#12204a,#0f1b3e);border:1px solid rgba(255,255,255,.08);border-radius:var(--radius);box-shadow:var(--shadow);padding:18px}
.mock-card .bar{height:10px;border-radius:6px;background:linear-gradient(90deg,rgba(255,255,255,.25),rgba(255,255,255,.05));margin-bottom:16px}
.mock-card .lines{display:grid;grid-template-columns:1fr;gap:10px}
.mock-card .lines span{display:block;height:12px;border-radius:6px;background:linear-gradient(90deg,rgba(255,255,255,.18),rgba(255,255,255,.06))}

/* Sections */
.lnd-section{padding:72px 0}
.lnd-section.muted{background:linear-gradient(180deg,rgba(255,255,255,.02),rgba(255,255,255,.00))}
.lnd-section h2{font-size:28px;margin:0 0 24px}
.features{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
.feature{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:18px;box-shadow:0 1px 2px rgba(0,0,0,.2)}
.feature .ico{font-size:22px;margin-bottom:8px}
.feature h3{margin:6px 0 8px;font-size:18px}
.feature p{margin:0;color:var(--muted)}

.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.06);border-radius:var(--radius);padding:20px;display:flex;flex-direction:column;gap:12px}
.card h3{margin:0;font-size:20px}
.card p{margin:0 0 8px;color:var(--muted)}

/* CTA Strip */
.lnd-cta{padding:72px 0}
.lnd-cta .container{background:linear-gradient(90deg,rgba(31,74,212,.25),rgba(255,122,26,.18));border:1px solid rgba(255,255,255,.10);border-radius:calc(var(--radius) + 6px);padding:28px 24px;display:flex;align-items:center;justify-content:space-between;gap:18px;box-shadow:var(--shadow)}
.lnd-cta h2{margin:0;font-size:22px}

/* Footer */
.lnd-footer{padding:32px 0;border-top:1px solid rgba(255,255,255,.06);color:var(--muted)}
.lnd-footer .container{display:flex;align-items:center;justify-content:space-between}
.foot-links{display:flex;gap:16px}
.foot-links a{color:var(--muted);text-decoration:none}
.foot-links a:hover{color:#fff}

/* Responsive */
@media(max-width:980px){
  .lnd-hero .container{grid-template-columns:1fr}
  .mock{order:-1}
  .video{max-height:46vh}
}
@media(max-width:820px){
  .features{grid-template-columns:1fr 1fr}
  .cards{grid-template-columns:1fr}
}
@media(max-width:560px){
  .lnd-header .container{height:64px}
  .brand-logo{height:30px}
  .lnd-hero{padding:44px 0 36px}
}