/* HACKER WEB — ELEMENTOR ARTICLE V1 */

:root {
    --ela-bg: #05090b;
    --ela-text: #edf7f2;
    --ela-muted: #8d9d96;
    --ela-border: rgba(255,255,255,.085);
    --ela-green: #63ffb4;
    --ela-pink: #ff47e6;
}

.hw-elementor-article-page {
    margin: 0;
    min-height: 100vh;

    color: var(--ela-text);

    background:
        radial-gradient(
            circle at 82% 8%,
            rgba(255,71,230,.095),
            transparent 28%
        ),
        radial-gradient(
            circle at 8% 38%,
            rgba(99,255,180,.045),
            transparent 30%
        ),
        var(--ela-bg);
}

.el-article-main {
    padding:
        clamp(105px, 12vw, 155px)
        0
        90px;
}

.el-article-shell {
    width:
        min(900px, calc(100% - 40px));

    margin: 0 auto;
}

.el-article-breadcrumb {
    display: flex;
    gap: 10px;

    margin-bottom: 38px;

    font-size: 12px;
    letter-spacing: .06em;

    color: #6f8178;
}

.el-article-breadcrumb a {
    color: #9cafA5;
    text-decoration: none;
}

.el-article-breadcrumb a:hover {
    color: var(--ela-green);
}

.el-article {
    position: relative;
}

.el-article-kicker {
    margin-bottom: 18px;

    color: var(--ela-green);

    font-size: 12px;
    letter-spacing: .18em;
}

.el-article h1 {
    max-width: 850px;

    margin: 0;

    font-size:
        clamp(38px, 6vw, 72px);

    line-height: 1.02;
    letter-spacing: -.045em;

    color: #fff;
}

.el-article-meta {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;

    margin-top: 24px;
}

.el-article-meta span,
.el-article-meta time {
    padding: 8px 11px;

    border:
        1px solid var(--ela-border);

    border-radius: 999px;

    color: #91a19a;

    font-size: 11px;
}

.el-article-figure {
    margin:
        clamp(38px, 6vw, 62px)
        0
        0;

    overflow: hidden;

    border:
        1px solid var(--ela-border);

    border-radius: 24px;

    background: #0a1013;
}

.el-article-figure img {
    display: block;

    width: 100%;
    height: auto;

    aspect-ratio: 1 / 1;

    object-fit: cover;
}

.el-article-content {
    width:
        min(760px, 100%);

    margin:
        clamp(42px, 6vw, 66px)
        auto
        0;

    font-size:
        clamp(17px, 2vw, 20px);

    line-height: 1.78;

    color: #b5c2bc;
}

.el-article-content p {
    margin:
        0 0 24px;
}

.el-article-list {
    margin:
        4px 0 28px;

    padding-left: 24px;
}

.el-article-list li {
    margin-bottom: 11px;

    padding-left: 5px;
}

.el-article-list li::marker {
    color: var(--ela-green);
}

.el-article-tags {
    margin-top: 42px;

    padding-top: 22px;

    border-top:
        1px solid var(--ela-border);

    color: #c17abb;

    font-size: 14px;
    line-height: 1.7;
}

.el-article-back {
    width:
        min(760px, 100%);

    margin:
        55px auto 0;

    padding-top: 28px;

    border-top:
        1px solid var(--ela-border);
}

.el-article-back a {
    color: var(--ela-green);

    text-decoration: none;
}

.el-article-back a:hover {
    text-decoration: underline;
}

@media (max-width: 640px) {
    .el-article-shell {
        width:
            min(100% - 28px, 900px);
    }

    .el-article-main {
        padding-top: 96px;
    }

    .el-article-figure {
        border-radius: 17px;
    }
}


/* ELEMENTOR SEO ARTICLE V1 */

.el-seo-intro {
  margin: 0 0 34px;
  font-size: 1.08em;
}

.el-seo-intro p:first-child {
  font-size: 1.12em;
}

.el-seo-toc {
  margin: 34px 0 42px;
  padding: 22px 24px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 16px;
  background: rgba(255,255,255,.035);
}

.el-seo-toc strong,
.el-seo-related strong {
  display: block;
  margin-bottom: 12px;
}

.el-seo-toc ol,
.el-seo-related ul {
  margin: 0;
  padding-left: 22px;
}

.el-seo-toc li,
.el-seo-related li {
  margin: 8px 0;
}

.el-seo-toc a,
.el-seo-related a {
  text-decoration: underline;
  text-underline-offset: 3px;
}

.el-seo-section {
  scroll-margin-top: 90px;
  margin: 0 0 42px;
}

.el-seo-section h2,
.el-seo-faq h2,
.el-seo-conclusion h2 {
  margin-top: 46px;
  margin-bottom: 18px;
}

.el-seo-section h3 {
  margin-top: 30px;
  margin-bottom: 14px;
}

.el-seo-section ul {
  margin: 18px 0 24px;
  padding-left: 24px;
}

.el-seo-section li {
  margin: 8px 0;
}

.el-seo-code {
  overflow-x: auto;
  margin: 24px 0;
  padding: 18px 20px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(0,0,0,.28);
  white-space: pre;
}

.el-seo-code code {
  font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, monospace;
  font-size: .92em;
}

.el-seo-faq {
  margin-top: 48px;
}

.el-seo-faq-item {
  margin: 12px 0;
  padding: 0 18px;
  border: 1px solid rgba(255,255,255,.10);
  border-radius: 14px;
  background: rgba(255,255,255,.025);
}

.el-seo-faq-item summary {
  cursor: pointer;
  padding: 16px 0;
  font-weight: 700;
}

.el-seo-faq-item p {
  padding: 0 0 18px;
}

.el-seo-conclusion {
  margin-top: 44px;
}

.el-seo-related {
  margin-top: 48px;
  padding: 22px 24px;
  border: 1px solid rgba(140,255,0,.20);
  border-radius: 16px;
  background: rgba(140,255,0,.035);
}

@media (max-width: 700px) {
  .el-seo-toc,
  .el-seo-related {
    padding: 18px;
  }

  .el-seo-section {
    margin-bottom: 34px;
  }
}
