/* =====================================================
   MORIAH DIGITAL | Páginas de produto (Agro, Visual, Edu, hub)
   Carregar depois de style.css. Cada página define --accent.
===================================================== */
:root { --accent:#C89A38; --accent-2:#D4AE60; --ink:#07102A; }
body.pp { background:#07102A; color:#fff; }
.pp .nav { background:rgba(7,16,42,.72); backdrop-filter:blur(14px); }
.pp h1,.pp h2,.pp h3,.pp h4 { color:#fff; }
.pp p { color:rgba(255,255,255,.72); }
.pp main { overflow:hidden; }

/* ── HERO ───────────────────────────────────────── */
.ph { position:relative; padding:150px 0 90px; isolation:isolate; }
.ph::before { content:""; position:absolute; inset:0; z-index:-2;
  background:radial-gradient(900px 520px at 78% 8%, color-mix(in srgb,var(--accent) 30%,transparent), transparent 70%),
             radial-gradient(700px 500px at 5% 60%, rgba(21,46,98,.9), transparent 70%), #07102A; }
.ph__bgvideo { position:absolute; inset:0; z-index:-1; width:100%; height:100%; object-fit:cover; opacity:.22; filter:saturate(.8); }
.ph::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg,rgba(7,16,42,.35),#07102A 96%); }
.ph__grid { display:grid; grid-template-columns:1.02fr 1fr; gap:56px; align-items:center; }
.ph__tag { display:inline-flex; align-items:center; gap:10px; font-size:.72rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase;
  color:var(--accent); border:1px solid color-mix(in srgb,var(--accent) 45%,transparent); padding:8px 16px; border-radius:99px; margin-bottom:24px; background:rgba(255,255,255,.04); }
.ph__tag i { width:8px; height:8px; border-radius:50%; background:#3ddc84; box-shadow:0 0 0 0 rgba(61,220,132,.6); animation:pulse 2s infinite; }
.ph__tag i.soon { background:var(--accent); box-shadow:0 0 0 0 rgba(200,154,56,.6); }
@keyframes pulse { 70% { box-shadow:0 0 0 10px rgba(61,220,132,0); } 100% { box-shadow:0 0 0 0 rgba(61,220,132,0); } }
.ph h1 { font-size:clamp(2.3rem,5.4vw,4.1rem); letter-spacing:-.02em; line-height:1.06; margin-bottom:22px; }
.ph h1 em { font-style:normal; color:var(--accent); }
.ph__sub { font-size:1.12rem; max-width:560px; margin-bottom:34px; }
.ph__actions { display:flex; flex-wrap:wrap; gap:14px; margin-bottom:34px; }
.ph__chips { display:flex; flex-wrap:wrap; gap:10px; }
.chip { font-size:.8rem; font-weight:600; padding:7px 14px; border-radius:99px; background:rgba(255,255,255,.07); border:1px solid rgba(255,255,255,.12); color:rgba(255,255,255,.85); }
.btn--accent { background:var(--accent); color:#07102A; }
.btn--accent:hover { background:var(--accent-2); transform:translateY(-2px); }
.btn--ghost { border:1.5px solid rgba(255,255,255,.35); color:#fff; }
.btn--ghost:hover { background:rgba(255,255,255,.1); }

/* ── DEVICES ────────────────────────────────────── */
.stage { position:relative; min-height:460px; }
.dev-desk { position:relative; border-radius:14px; background:#0b1530; border:1px solid rgba(255,255,255,.14);
  box-shadow:0 40px 90px rgba(0,0,0,.55), 0 0 0 6px rgba(255,255,255,.03); overflow:hidden; }
.dev-desk__bar { height:26px; background:#111d3f; display:flex; align-items:center; gap:6px; padding:0 12px; }
.dev-desk__bar span { width:9px; height:9px; border-radius:50%; background:rgba(255,255,255,.22); }
.dev-desk img, .dev-desk video { width:100%; display:block; }
.dev-phone { position:relative; width:var(--pw,200px); border-radius:30px; padding:8px; background:#0b1530; border:1px solid rgba(255,255,255,.2);
  box-shadow:0 30px 70px rgba(0,0,0,.6); }
.dev-phone::before { content:""; position:absolute; top:13px; left:50%; width:52px; height:5px; margin-left:-26px; border-radius:9px; background:rgba(255,255,255,.14); z-index:2; }
.dev-phone img, .dev-phone video { width:100%; display:block; border-radius:23px; }
.stage .dev-desk { width:92%; }
.stage .dev-phone { position:absolute; right:-2%; bottom:-34px; --pw:30%; }
.stage .dev-phone--2 { right:auto; left:-4%; bottom:-20px; --pw:24%; transform:rotate(-4deg); }
.float { animation:floaty 7s ease-in-out infinite; }
.float--b { animation-delay:-3s; animation-duration:8.5s; }
@keyframes floaty { 50% { transform:translateY(-14px); } }
.stage .dev-phone--2.float { animation-name:floaty2; }
@keyframes floaty2 { 50% { transform:translateY(-12px) rotate(-4deg); } }

/* ── FAIXA DE FATOS ─────────────────────────────── */
.facts { border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.08); background:rgba(255,255,255,.025); }
.facts__row { display:grid; grid-template-columns:repeat(4,1fr); gap:0; }
.fact { padding:30px 24px; text-align:center; border-right:1px solid rgba(255,255,255,.07); }
.fact:last-child { border-right:0; }
.fact b { display:block; font-size:clamp(1.5rem,3vw,2.2rem); color:var(--accent); font-weight:700; line-height:1.1; margin-bottom:6px; }
.fact span { font-size:.88rem; color:rgba(255,255,255,.65); }

/* ── SEÇÕES ─────────────────────────────────────── */
.ps { padding:100px 0; position:relative; }
.ps--alt { background:linear-gradient(180deg,#0a1636,#07102A); }
.ps__head { max-width:680px; margin-bottom:56px; }
.ps__head--c { margin-left:auto; margin-right:auto; text-align:center; }
.ps__tag { display:inline-block; font-size:.72rem; font-weight:700; letter-spacing:2.5px; text-transform:uppercase; color:var(--accent); margin-bottom:14px; }
.ps__head h2 { font-size:clamp(1.8rem,3.8vw,2.8rem); letter-spacing:-.015em; margin-bottom:16px; }

/* ── VÍDEO EM ABAS ──────────────────────────────── */
.vt__tabs { display:flex; flex-wrap:wrap; justify-content:center; gap:10px; margin-bottom:34px; }
.vt__tab { padding:11px 22px; border-radius:99px; font-weight:600; font-size:.9rem; color:rgba(255,255,255,.75); border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04); transition:.25s; }
.vt__tab:hover { color:#fff; border-color:var(--accent); }
.vt__tab.is-on { background:var(--accent); color:#07102A; border-color:var(--accent); }
.vt__panel { display:none; }
.vt__panel.is-on { display:block; animation:fadein .5s; }
@keyframes fadein { from { opacity:0; transform:translateY(10px); } }
.vt__wrap { display:flex; justify-content:center; }
.vt__wrap .dev-desk { width:min(100%,980px); }
.vt__wrap .dev-phone { --pw:290px; }
.vt__cap { text-align:center; margin-top:22px; font-size:.95rem; }
.vid { position:relative; cursor:pointer; background:#000; }
.vid video { display:block; width:100%; }
.vid__btn { position:absolute; left:50%; top:50%; width:74px; height:74px; margin:-37px 0 0 -37px; border-radius:50%; background:var(--accent); color:#07102A;
  display:grid; place-items:center; box-shadow:0 10px 40px rgba(0,0,0,.5); transition:.25s; }
.vid:hover .vid__btn { transform:scale(1.08); }
.vid.is-playing .vid__btn { opacity:0; pointer-events:none; }
.vid.is-playing:hover .vid__btn { opacity:.9; }

/* ── BENTO DE RECURSOS ──────────────────────────── */
.bento { display:grid; grid-template-columns:repeat(6,1fr); gap:18px; }
.bcard { grid-column:span 2; position:relative; padding:30px 28px; border-radius:20px; overflow:hidden;
  background:linear-gradient(160deg,rgba(255,255,255,.075),rgba(255,255,255,.02)); border:1px solid rgba(255,255,255,.1); transition:.35s var(--ease); }
.bcard:hover { transform:translateY(-6px); border-color:color-mix(in srgb,var(--accent) 60%,transparent); box-shadow:0 24px 60px rgba(0,0,0,.4); }
.bcard--w { grid-column:span 3; }
.bcard--x { grid-column:span 4; }
.bcard__ic { width:46px; height:46px; border-radius:14px; display:grid; place-items:center; margin-bottom:18px; font-size:1.3rem;
  background:color-mix(in srgb,var(--accent) 18%,transparent); color:var(--accent); }
.bcard h3 { font-size:1.15rem; margin-bottom:10px; }
.bcard p { font-size:.94rem; line-height:1.65; }
.bcard img { margin-top:20px; border-radius:12px; border:1px solid rgba(255,255,255,.1); width:100%; }

/* ── SPLIT (texto + tela) ───────────────────────── */
.split { display:grid; grid-template-columns:1fr 1.1fr; gap:60px; align-items:center; margin-bottom:90px; }
.split:last-child { margin-bottom:0; }
.split--r .split__text { order:2; }
.split h3 { font-size:clamp(1.5rem,2.8vw,2.1rem); margin-bottom:16px; }
.split ul { margin:20px 0 0; display:grid; gap:12px; }
.split li { position:relative; padding-left:30px; color:rgba(255,255,255,.8); line-height:1.6; }
.split li::before { content:"✓"; position:absolute; left:0; top:0; width:20px; height:20px; border-radius:50%; background:color-mix(in srgb,var(--accent) 25%,transparent); color:var(--accent); font-size:.72rem; display:grid; place-items:center; font-weight:700; margin-top:3px; }
.split__media { position:relative; }
.split__media .dev-phone { position:absolute; right:-14px; bottom:-30px; --pw:27%; }

/* ── GALERIA ────────────────────────────────────── */
.gal__filters { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; margin-bottom:30px; }
.gal { columns:3; column-gap:18px; }
.gal figure { break-inside:avoid; margin-bottom:18px; border-radius:14px; overflow:hidden; cursor:zoom-in; position:relative; border:1px solid rgba(255,255,255,.1); background:#0b1530; transition:.3s; }
.gal figure:hover { transform:translateY(-4px); border-color:var(--accent); box-shadow:0 20px 50px rgba(0,0,0,.45); }
.gal img { width:100%; display:block; }
.gal figcaption { position:absolute; left:0; right:0; bottom:0; padding:34px 14px 12px; font-size:.82rem; font-weight:600; color:#fff; background:linear-gradient(transparent,rgba(7,16,42,.92)); opacity:0; transition:.3s; }
.gal figure:hover figcaption { opacity:1; }
.gal figure.hide { display:none; }
.gal__phone { max-width:230px; }
.lb { position:fixed; inset:0; z-index:300; background:rgba(4,9,24,.94); display:none; align-items:center; justify-content:center; padding:30px; cursor:zoom-out; }
.lb.open { display:flex; }
.lb img { max-width:100%; max-height:92vh; border-radius:12px; box-shadow:0 30px 100px rgba(0,0,0,.7); }
.lb__x { position:absolute; top:18px; right:24px; font-size:2rem; color:#fff; }

/* ── PLANOS / CTA ───────────────────────────────── */
.plans { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.plan { padding:34px 28px; border-radius:20px; border:1px solid rgba(255,255,255,.12); background:rgba(255,255,255,.04); }
.plan--hi { border-color:var(--accent); background:linear-gradient(160deg,color-mix(in srgb,var(--accent) 16%,transparent),rgba(255,255,255,.03)); position:relative; }
.plan--hi::before { content:"Mais escolhido"; position:absolute; top:-13px; left:28px; font-size:.7rem; font-weight:700; letter-spacing:1.5px; text-transform:uppercase; background:var(--accent); color:#07102A; padding:5px 12px; border-radius:99px; }
.plan h3 { margin-bottom:6px; }
.plan ul { margin:18px 0 0; display:grid; gap:10px; }
.plan li { font-size:.92rem; color:rgba(255,255,255,.8); padding-left:22px; position:relative; }
.plan li::before { content:"•"; position:absolute; left:6px; color:var(--accent); }
.pcta { text-align:center; padding:110px 0; position:relative; isolation:isolate; }
.pcta::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(700px 360px at 50% 0%, color-mix(in srgb,var(--accent) 28%,transparent), transparent 70%); }
.pcta h2 { font-size:clamp(1.9rem,4vw,3rem); margin-bottom:16px; }
.pcta .ph__actions { justify-content:center; margin:30px 0 0; }

/* ── HUB DE PRODUTOS ────────────────────────────── */
.hub { display:grid; gap:34px; }
.hubcard { display:grid; grid-template-columns:1fr 1.15fr; gap:0; border-radius:28px; overflow:hidden; border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg,rgba(255,255,255,.06),rgba(255,255,255,.015)); transition:.4s var(--ease); position:relative; }
.hubcard:hover { transform:translateY(-6px); border-color:var(--accent); box-shadow:0 30px 80px rgba(0,0,0,.5); }
.hubcard:nth-child(even) .hubcard__media { order:-1; }
.hubcard__body { padding:48px 44px; display:flex; flex-direction:column; justify-content:center; align-items:flex-start; }
.hubcard__body h3 { font-size:clamp(1.7rem,3vw,2.4rem); margin:6px 0 14px; }
.hubcard__body .ph__tag { margin-bottom:10px; }
.hubcard__media { position:relative; min-height:360px; background:radial-gradient(500px 300px at 60% 40%, color-mix(in srgb,var(--accent) 26%,transparent), transparent 70%), #0a1636; display:flex; align-items:center; justify-content:center; padding:34px; }
.hubcard__media .dev-desk { width:100%; }
.hubcard__media .dev-phone { position:absolute; right:22px; bottom:-18px; --pw:130px; }
.hubcard .chips { display:flex; flex-wrap:wrap; gap:8px; margin:16px 0 26px; }

/* ── REVEAL ─────────────────────────────────────── */
.rv { opacity:0; transform:translateY(34px); transition:opacity .8s var(--ease), transform .8s var(--ease); }
.rv.in { opacity:1; transform:none; }
.rv.d1 { transition-delay:.1s; } .rv.d2 { transition-delay:.2s; } .rv.d3 { transition-delay:.3s; }
@media (prefers-reduced-motion:reduce) { .rv { opacity:1; transform:none; transition:none; } .float,.ph__tag i { animation:none; } html { scroll-behavior:auto; } }

/* ── RESPONSIVO ─────────────────────────────────── */
@media (max-width:960px) {
  .ph { padding:120px 0 70px; }
  .ph__grid, .split, .hubcard { grid-template-columns:1fr; gap:40px; }
  .split--r .split__text, .hubcard:nth-child(even) .hubcard__media { order:0; }
  .stage { min-height:0; margin-bottom:40px; }
  .facts__row { grid-template-columns:repeat(2,1fr); }
  .fact:nth-child(2) { border-right:0; } .fact:nth-child(-n+2) { border-bottom:1px solid rgba(255,255,255,.07); }
  .bento { grid-template-columns:1fr 1fr; } .bcard, .bcard--w, .bcard--x { grid-column:span 1; }
  .plans { grid-template-columns:1fr; }
  .gal { columns:2; }
  .ps { padding:72px 0; } .hubcard__body { padding:34px 26px; }
  .split { margin-bottom:64px; }
}
@media (max-width:600px) {
  .bento { grid-template-columns:1fr; }
  .gal { columns:1; } .gal__phone { max-width:none; }
  .stage .dev-phone { --pw:34%; right:0; bottom:-26px; } .stage .dev-phone--2 { display:none; }
  .ph__actions .btn { width:100%; justify-content:center; }
  .vt__wrap .dev-phone { --pw:230px; }
}

/* ── VITRINE NA HOME ────────────────────────────── */
.showcase { background:#07102A; color:#fff; padding:100px 0; position:relative; overflow:hidden; isolation:isolate; }
.showcase::before { content:""; position:absolute; inset:0; z-index:-1; background:radial-gradient(800px 420px at 15% 0%,rgba(200,154,56,.22),transparent 70%),radial-gradient(700px 420px at 90% 100%,rgba(21,46,98,.9),transparent 70%); }
.showcase h2 { color:#fff; font-size:clamp(1.8rem,3.8vw,2.8rem); margin-bottom:16px; letter-spacing:-.015em; }
.showcase .section__header p { color:rgba(255,255,255,.7); }
.sc-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:22px; }
.sc { position:relative; display:flex; flex-direction:column; border-radius:24px; overflow:hidden; background:linear-gradient(160deg,rgba(255,255,255,.08),rgba(255,255,255,.02)); border:1px solid rgba(255,255,255,.12); transition:.4s cubic-bezier(.4,0,.2,1); color:#fff; }
.sc:hover { transform:translateY(-8px); border-color:var(--accent); box-shadow:0 30px 70px rgba(0,0,0,.5); }
.sc__media { position:relative; padding:26px 26px 0; min-height:230px; background:radial-gradient(300px 200px at 60% 30%,color-mix(in srgb,var(--accent) 30%,transparent),transparent 70%); }
.sc__media .dev-desk { transition:.5s; } .sc:hover .dev-desk { transform:scale(1.03); }
.sc__media .dev-phone { position:absolute; right:14px; bottom:-26px; --pw:92px; border-radius:20px; padding:5px; }
.sc__media .dev-phone img { border-radius:15px; }
.sc__body { padding:34px 26px 28px; display:flex; flex-direction:column; flex:1; }
.sc__body h3 { color:#fff; font-size:1.5rem; margin:10px 0 10px; }
.sc__body p { color:rgba(255,255,255,.72); font-size:.95rem; line-height:1.65; margin-bottom:22px; flex:1; }
.sc__link { font-weight:700; color:var(--accent); font-size:.95rem; }
.sc .ph__tag { margin:0; align-self:flex-start; padding:6px 12px; font-size:.65rem; }
.showcase__foot { text-align:center; margin-top:44px; }
@media (max-width:960px){ .sc-grid{grid-template-columns:1fr;} .showcase{padding:72px 0;} }

/* menu com mais itens: não quebrar rótulos */
.nav__link { white-space:nowrap; }
@media (min-width:961px) and (max-width:1280px){ .nav__link { padding:8px 9px; font-size:.82rem; } .nav__cta { padding-left:16px; padding-right:16px; } }
/* faixa "produtos próprios" para páginas claras */
.xband { background:#07102A; color:#fff; padding:56px 0; }
.xband .container { display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:28px; }
.xband h3 { color:#fff; font-size:clamp(1.2rem,2.4vw,1.6rem); margin-bottom:6px; }
.xband p { color:rgba(255,255,255,.7); margin:0; max-width:520px; }
.xband__links { display:flex; flex-wrap:wrap; gap:10px; }
.xband__links a { padding:12px 20px; border-radius:99px; border:1px solid rgba(255,255,255,.25); color:#fff; font-weight:600; font-size:.92rem; transition:.25s; }
.xband__links a:hover { background:var(--gold); border-color:var(--gold); color:#07102A; }
.xband__links a.all { background:var(--gold); border-color:var(--gold); color:#07102A; }
.nav__dropdown a { white-space:nowrap; }
