/* MANTRA banner — shared across the DeepSelf site. Source of truth for the
   full splash: ../../../library/portfolio-mockup.html (mantra.html here). */
.mantra-banner{position:relative;overflow:hidden;width:100vw;margin-left:calc(50% - 50vw);margin-right:calc(50% - 50vw);background:#0a0a0a url(../assets/img/bg-mantra.png) center/cover no-repeat;min-height:78vh;display:flex;align-items:center;justify-content:center;padding:88px 24px}
.mantra-banner--slim{min-height:54vh;padding:64px 24px}
.mantra-banner .mb-veil{position:absolute;inset:0;background:radial-gradient(70% 80% at 50% 45%,rgba(8,8,8,.55),rgba(8,8,8,.72));pointer-events:none}
.mantra-banner .mb-rain{position:absolute;inset:0;width:100%;height:100%;opacity:.72;pointer-events:none}
.mantra-banner .mb-inner{position:relative;z-index:2;text-align:center;max-width:680px}
.mantra-banner .mb-dict{display:block;width:fit-content;margin:0 auto 22px;font-family:Georgia,'Times New Roman',serif;font-size:15px;color:#111009;background:#fcee0a;padding:8px 22px;border-radius:2px;box-shadow:0 10px 30px rgba(0,0,0,.5),0 0 24px rgba(252,238,10,.22)}
.mantra-banner--slim .mb-dict{font-size:13.5px;margin-bottom:18px}
.mantra-banner .mb-dict .hw{font-weight:700;color:#0a0a0a}
.mantra-banner .mb-dict .pr,.mantra-banner .mb-dict .pos{color:rgba(10,10,10,.62)}
.mantra-banner .mb-dict .pos{font-style:italic}
.mantra-banner .mb-dict .ety{color:rgba(10,10,10,.8)}
.mantra-banner .mb-dict .ety i{color:#0a0a0a;font-weight:700}
.mantra-banner .mb-word{font-family:'Space Grotesk',sans-serif;font-weight:700;font-size:clamp(56px,9vw,110px);line-height:.9;letter-spacing:.06em;color:#eceae4;text-shadow:0 4px 18px rgba(8,8,8,.85),0 12px 60px rgba(8,8,8,.9)}
.mantra-banner--slim .mb-word{font-size:clamp(44px,6.5vw,80px)}
.mantra-banner .mb-word b{color:#fcee0a}
.mantra-banner .mb-sub{margin-top:18px;font-family:ui-monospace,'SF Mono',Consolas,monospace;font-size:11px;letter-spacing:.6em;text-transform:uppercase;color:#c6c5c2;text-shadow:0 2px 10px rgba(8,8,8,.9)}
.mantra-banner .mb-card{margin:30px auto 0;max-width:60ch;border:1px solid rgba(255,255,255,.14);border-radius:6px;background:linear-gradient(165deg,rgba(255,255,255,.085),rgba(255,255,255,.03));backdrop-filter:blur(26px) saturate(1.25);-webkit-backdrop-filter:blur(26px) saturate(1.25);box-shadow:0 22px 60px rgba(0,0,0,.6),inset 0 1px 0 rgba(255,255,255,.12);padding:30px 38px 30px}
.mantra-banner .mb-claim{font-family:'Space Grotesk',sans-serif;font-weight:600;font-size:clamp(15px,2vw,19px);letter-spacing:.06em;text-transform:uppercase;color:#eceae4;padding-bottom:18px;margin-bottom:18px;position:relative}
.mantra-banner .mb-claim::after{content:"";position:absolute;left:50%;bottom:0;transform:translateX(-50%);width:44px;height:1px;background:rgba(226,192,120,.55)}
.mantra-banner .mb-claim span{display:inline-block;margin-top:6px;color:#fcee0a;font-weight:700;text-shadow:0 0 26px rgba(252,238,10,.3)}
.mantra-banner .mb-body{font-family:system-ui,-apple-system,'Segoe UI',Roboto,sans-serif;font-size:15px;line-height:1.85;color:#d3d2cf;margin:0 0 24px}
.mantra-banner .mb-body b{color:#eceae4}
.mantra-banner .mb-btn{display:inline-block;font-family:ui-monospace,'SF Mono',Consolas,monospace;font-size:12.5px;letter-spacing:.4em;text-transform:uppercase;color:#fcee0a;border:1px solid #fcee0a;background:rgba(252,238,10,.05);border-radius:2px;padding:16px 44px;text-decoration:none;transition:.25s}
.mantra-banner .mb-btn:hover{background:#fcee0a;color:#0a0a0a;box-shadow:0 0 30px rgba(252,238,10,.3)}
@media(max-width:560px){.mantra-banner .mb-dict{font-size:12.5px;padding:7px 14px}.mantra-banner .mb-card{padding:24px 20px}.mantra-banner .mb-body{text-align:left}}
