/* SitesMechanix Public Experience Shell — approved emerald/teal public visual system */
body.smx-public-experience{--smx-bg:#020b0a;--smx-panel:rgba(7,29,24,.88);--smx-border:rgba(72,255,201,.34);--smx-emerald:#20f2a1;--smx-emerald-bright:#67ffd0;--smx-text:#f2fffb;--smx-text-soft:#c7ded8;--smx-muted:#8eb8ae;--smx-shadow:0 18px 55px rgba(0,0,0,.34);background:radial-gradient(circle at 78% 14%,rgba(0,255,180,.10),transparent 28%),radial-gradient(circle at 12% 65%,rgba(0,185,150,.07),transparent 30%),linear-gradient(135deg,#020b0a 0%,#031511 45%,#020b0a 100%)!important;color:var(--smx-text)}
body.smx-public-experience #boxed-wrapper,body.smx-public-experience #wrapper,body.smx-public-experience .fusion-wrapper{background:transparent!important}
body.smx-public-experience::before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.24;background-image:linear-gradient(rgba(32,242,161,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(32,242,161,.045) 1px,transparent 1px),radial-gradient(circle at 15% 20%,rgba(32,242,161,.13) 0 1px,transparent 2px),radial-gradient(circle at 82% 70%,rgba(32,242,161,.10) 0 1px,transparent 2px);background-size:64px 64px,64px 64px,220px 220px,280px 280px;mask-image:linear-gradient(to bottom,black,transparent 92%)}
body.smx-public-experience #main,body.smx-public-experience .fusion-main-menu,body.smx-public-experience .fusion-footer{position:relative;z-index:1}
body.smx-public-experience .smx-info-hero,body.smx-public-experience .smx-services-hero,body.smx-public-experience .smx-portfolio-cta,body.smx-public-experience .smx-ops-empty,body.smx-public-experience .smx-contact-side,body.smx-public-experience .smx-panel,body.smx-public-experience .smx-card,body.smx-public-experience .wpforms-container{border-color:var(--smx-border)!important}
body.smx-public-experience .smx-info-hero,body.smx-public-experience .smx-services-hero,body.smx-public-experience .smx-portfolio-cta,body.smx-public-experience .smx-ops-empty,body.smx-public-experience .smx-contact-side{background:linear-gradient(135deg,rgba(5,28,23,.95),rgba(5,48,38,.78)),radial-gradient(circle at 85% 20%,rgba(32,242,161,.12),transparent 30%)!important;box-shadow:var(--smx-shadow),inset 0 0 0 1px rgba(103,255,208,.06);color:var(--smx-text)!important}
body.smx-public-experience #main p,body.smx-public-experience #main li,body.smx-public-experience #main td,body.smx-public-experience #main th,body.smx-public-experience #main label,body.smx-public-experience #main .smx-muted,body.smx-public-experience #main .smx-description{color:var(--smx-text-soft)!important}
body.smx-public-experience #main h1,body.smx-public-experience #main h2,body.smx-public-experience #main h3,body.smx-public-experience #main h4,body.smx-public-experience #main h5{color:var(--smx-text)!important;text-shadow:0 0 24px rgba(32,242,161,.08)}
body.smx-public-experience #main a:not(.smx-btn):not(.button){color:var(--smx-emerald-bright)}body.smx-public-experience #main a:not(.smx-btn):not(.button):hover{color:#fff}
body.smx-public-experience .smx-eyebrow,body.smx-public-experience .smx-panel-kicker{color:var(--smx-emerald-bright)!important;letter-spacing:.18em}
body.smx-public-experience .smx-btn,body.smx-public-experience .button,body.smx-public-experience input[type=submit],body.smx-public-experience button[type=submit]{border:1px solid rgba(103,255,208,.72)!important;border-radius:10px!important;transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease,background .2s ease}
body.smx-public-experience .smx-btn.primary,body.smx-public-experience input[type=submit],body.smx-public-experience button[type=submit]{color:#03150f!important;background:linear-gradient(135deg,#5fffc7,#16d995)!important;box-shadow:0 0 26px rgba(32,242,161,.18)}
body.smx-public-experience .smx-btn.ghost,body.smx-public-experience .smx-btn.secondary{color:var(--smx-text)!important;background:rgba(4,24,20,.74)!important}
body.smx-public-experience .smx-btn:hover,body.smx-public-experience .button:hover,body.smx-public-experience input[type=submit]:hover,body.smx-public-experience button[type=submit]:hover{transform:translateY(-2px);border-color:var(--smx-emerald-bright)!important;box-shadow:0 0 30px rgba(32,242,161,.28)}
body.smx-public-experience .wpforms-container,body.smx-public-experience form.smx-form,body.smx-public-experience .smx-form-card{background:linear-gradient(145deg,rgba(5,29,24,.96),rgba(7,43,34,.84))!important;border:1px solid var(--smx-border)!important;border-radius:18px!important;box-shadow:var(--smx-shadow);color:var(--smx-text)!important}
body.smx-public-experience .wpforms-container input,body.smx-public-experience .wpforms-container select,body.smx-public-experience .wpforms-container textarea,body.smx-public-experience input:not([type=submit]),body.smx-public-experience select,body.smx-public-experience textarea{color:var(--smx-text)!important;background:#031612!important;border:1px solid rgba(103,255,208,.38)!important;border-radius:10px!important;box-shadow:inset 0 0 18px rgba(0,0,0,.18)}
body.smx-public-experience input::placeholder,body.smx-public-experience textarea::placeholder{color:#8fbeb3!important;opacity:1!important}body.smx-public-experience .wpforms-container label{color:var(--smx-text)!important}
body.smx-public-experience.smx-kc-library-page{background:radial-gradient(circle at 72% 12%,rgba(32,242,161,.13),transparent 30%),linear-gradient(135deg,#020a09,#031a14 50%,#020b0a)!important}
body.smx-public-experience.smx-kc-library-page .smx-kc-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 75% 30%,rgba(32,242,161,.14),transparent 26%),linear-gradient(145deg,rgba(2,17,14,.96),rgba(6,43,34,.88))!important;border-color:rgba(103,255,208,.42)!important}
body.smx-public-experience.smx-kc-library-page .smx-kc-hero::after{content:"";position:absolute;right:5%;top:8%;width:220px;height:220px;border:1px solid rgba(32,242,161,.20);border-radius:50%;box-shadow:0 0 0 20px rgba(32,242,161,.035),0 0 0 42px rgba(32,242,161,.025);animation:smx-orbit-pulse 5s ease-in-out infinite;pointer-events:none}
body.smx-public-experience.smx-kc-library-page .smx-kc-empty{background:linear-gradient(145deg,rgba(4,27,22,.92),rgba(5,48,38,.76))!important;border:1px solid rgba(103,255,208,.30);border-radius:18px;box-shadow:0 18px 50px rgba(0,0,0,.30),0 0 40px rgba(32,242,161,.06)}
body.smx-public-experience.smx-kc-library-page .smx-kc-empty h3{color:#f2fffb!important;-webkit-text-fill-color:#f2fffb!important}body.smx-public-experience.smx-kc-library-page .smx-kc-empty p{color:#c7ded8!important;-webkit-text-fill-color:#c7ded8!important}
.smx-knowledge-book{width:92px;height:92px;display:grid;place-items:center;margin-bottom:14px;border-radius:22px;color:var(--smx-emerald-bright);background:radial-gradient(circle,rgba(32,242,161,.15),rgba(3,22,17,.72));border:1px solid rgba(103,255,208,.35);box-shadow:0 0 28px rgba(32,242,161,.16)}.smx-knowledge-book svg{width:64px;height:64px;overflow:visible}.smx-knowledge-book .page-left,.smx-knowledge-book .page-right{transform-origin:center;animation:smx-page-breathe 3.8s ease-in-out infinite}.smx-knowledge-book .page-right{animation-delay:.35s}.smx-knowledge-book .book-glow{animation:smx-book-glow 2.8s ease-in-out infinite}
body.smx-public-experience .smx-kc-jaxis-slot{background:radial-gradient(circle at 82% 50%,rgba(32,242,161,.10),transparent 28%),linear-gradient(145deg,rgba(3,20,16,.96),rgba(7,49,39,.88))!important;color:var(--smx-text)!important;border-color:rgba(103,255,208,.30)!important}
.smx-tech-aura{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden}.smx-tech-aura span{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--smx-emerald-bright);box-shadow:0 0 12px rgba(103,255,208,.8);opacity:.42;animation:smx-particle 9s linear infinite}.smx-tech-aura span:nth-child(1){left:18%;top:78%;animation-delay:-2s}.smx-tech-aura span:nth-child(2){left:74%;top:22%;animation-delay:-5s}.smx-tech-aura span:nth-child(3){left:88%;top:68%;animation-delay:-7s}
@keyframes smx-orbit-pulse{0%,100%{transform:scale(.96);opacity:.35}50%{transform:scale(1.04);opacity:.75}}@keyframes smx-page-breathe{0%,100%{transform:rotateY(0deg) scaleY(1)}50%{transform:rotateY(-7deg) scaleY(.96)}}@keyframes smx-book-glow{0%,100%{opacity:.45}50%{opacity:1}}@keyframes smx-particle{0%{transform:translate3d(0,0,0);opacity:0}12%{opacity:.45}88%{opacity:.25}100%{transform:translate3d(60px,-120px,0);opacity:0}}
@media(prefers-reduced-motion:reduce){body.smx-public-experience *,body.smx-public-experience *::before,body.smx-public-experience *::after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}

/* ============================================================
   SITESMECHANIX PUBLIC EXPERIENCE
   CLEAN FOUNDATION — V2
   ============================================================ */

:root{
    --smx-black:#020706;
    --smx-deep:#03100d;
    --smx-panel:#071714;
    --smx-panel-2:#0a211b;

    --smx-emerald:#00ff9c;
    --smx-emerald-2:#00d98a;
    --smx-teal:#35e6d0;

    --smx-white:#f4fffb;
    --smx-muted:#9ab8ae;
    --smx-muted-2:#6f8e84;

    --smx-border:rgba(0,255,156,.18);
    --smx-border-strong:rgba(0,255,156,.38);

    --smx-glow:
        0 0 30px rgba(0,255,156,.08);

    --smx-shell:1240px;
    --smx-reading:820px;

    --smx-radius:18px;
}

/*
 * Public pages get their own visual canvas.
 *
 * IMPORTANT:
 * Member/dashboard pages are excluded by PHP and therefore
 * retain their existing visual system.
 */

body.smx-public-experience{
    background:
        radial-gradient(
            circle at 15% 0%,
            rgba(0,255,156,.07),
            transparent 32%
        ),
        radial-gradient(
            circle at 90% 15%,
            rgba(53,230,208,.05),
            transparent 28%
        ),
        var(--smx-black) !important;

    color:var(--smx-white);
}

/* Keep ordinary Avada content from becoming a second competing
   background behind our public application surfaces. */

body.smx-public-experience #main,
body.smx-public-experience .fusion-main-menu,
body.smx-public-experience .fusion-footer{
    position:relative;
}

/* Public application container */

.smx-app{
    width:min(var(--smx-shell), calc(100% - 48px));
    margin-left:auto;
    margin-right:auto;
    box-sizing:border-box;
}

/* Glass / technical surface */

.smx-panel{
    background:
        linear-gradient(
            145deg,
            rgba(10,33,27,.94),
            rgba(3,16,13,.96)
        );

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

    border-radius:var(--smx-radius);

    box-shadow:
        var(--smx-glow),
        inset 0 1px 0 rgba(255,255,255,.025);

    backdrop-filter:blur(12px);
}

/* Emerald technical accent */

.smx-accent{
    color:var(--smx-emerald);
}

.smx-kicker{
    color:var(--smx-emerald);
    font-size:12px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}

/* Public headings */

.smx-title{
    color:var(--smx-white);
    font-weight:800;
    letter-spacing:-.035em;
    line-height:.98;
}

.smx-lead{
    color:var(--smx-muted);
    line-height:1.7;
}

/* Primary SitesMechanix action */

.smx-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;

    min-height:48px;
    padding:0 22px;

    border:1px solid rgba(0,255,156,.42);
    border-radius:12px;

    background:
        linear-gradient(
            135deg,
            rgba(0,255,156,.16),
            rgba(0,217,138,.06)
        );

    color:var(--smx-white);

    font-weight:800;
    text-decoration:none;

    box-shadow:
        0 0 22px rgba(0,255,156,.08);

    transition:
        transform .18s ease,
        border-color .18s ease,
        box-shadow .18s ease,
        background .18s ease;
}

.smx-button:hover{
    transform:translateY(-2px);

    border-color:var(--smx-emerald);

    background:
        linear-gradient(
            135deg,
            rgba(0,255,156,.24),
            rgba(0,217,138,.10)
        );

    box-shadow:
        0 0 30px rgba(0,255,156,.18);

    color:#fff;
}

/* Secondary action */

.smx-button-secondary{
    border-color:rgba(244,255,251,.14);
    background:rgba(244,255,251,.035);
}

/* Technical divider */

.smx-divider{
    height:1px;

    background:
        linear-gradient(
            90deg,
            transparent,
            rgba(0,255,156,.35),
            transparent
        );

    margin:42px 0;
}

/* Responsive foundation */

@media(max-width:767px){

    .smx-app{
        width:calc(100% - 32px);
    }

    .smx-title{
        letter-spacing:-.025em;
    }

    .smx-button{
        width:100%;
    }
}


/* ============================================================
   SITESMECHANIX KNOWLEDGE CORE
   PUBLIC LIBRARY EXPERIENCE
   ============================================================ */

body.smx-public-experience.smx-kc-library-page{
    background:
        radial-gradient(
            ellipse 80% 60% at 72% 5%,
            rgba(0,255,156,.10),
            transparent 60%
        ),
        radial-gradient(
            ellipse 60% 50% at 5% 30%,
            rgba(53,230,208,.055),
            transparent 65%
        ),
        #020706 !important;
}

body.smx-public-experience.smx-kc-library-page #main{
    background:transparent !important;
}

/* ------------------------------------------------------------
   APPLICATION SHELL
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-library{
    position:relative;
    width:min(1240px, calc(100% - 48px));
    margin:0 auto;
    padding:72px 0 100px;
    color:var(--smx-white);
    box-sizing:border-box;
}

/* ------------------------------------------------------------
   HERO
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-hero{
    position:relative;
    overflow:hidden;

    min-height:520px;

    display:flex;
    flex-direction:column;
    justify-content:center;

    padding:72px;
    margin-bottom:42px;

    border:1px solid rgba(0,255,156,.22);
    border-radius:28px;

    background:
        radial-gradient(
            circle at 78% 45%,
            rgba(0,255,156,.16),
            transparent 30%
        ),
        linear-gradient(
            135deg,
            rgba(5,27,22,.98),
            rgba(2,10,8,.98)
        );

    box-shadow:
        0 25px 80px rgba(0,0,0,.45),
        inset 0 0 70px rgba(0,255,156,.035);
}

/* technical grid */

body.smx-kc-library-page .smx-kc-hero::before{
    content:"";
    position:absolute;
    inset:0;

    background-image:
        linear-gradient(
            rgba(0,255,156,.045) 1px,
            transparent 1px
        ),
        linear-gradient(
            90deg,
            rgba(0,255,156,.045) 1px,
            transparent 1px
        );

    background-size:42px 42px;

    mask-image:linear-gradient(
        90deg,
        black 0%,
        rgba(0,0,0,.65) 50%,
        transparent 100%
    );

    pointer-events:none;
}

/* cinematic glow */

body.smx-kc-library-page .smx-kc-hero::after{
    content:"";

    position:absolute;

    width:520px;
    height:520px;

    right:-90px;
    top:50%;

    transform:translateY(-50%);

    border-radius:50%;

    background:
        radial-gradient(
            circle,
            rgba(0,255,156,.13),
            rgba(0,255,156,.025) 42%,
            transparent 70%
        );

    filter:blur(5px);

    pointer-events:none;
}

body.smx-kc-library-page .smx-kc-hero > *{
    position:relative;
    z-index:2;
}

/* kicker */

body.smx-kc-library-page .smx-kc-kicker{
    margin-bottom:18px;

    color:var(--smx-emerald) !important;

    font-size:12px;
    font-weight:800;
    letter-spacing:.22em;
    text-transform:uppercase;
}

/* title */

body.smx-kc-library-page .smx-kc-hero h1{
    max-width:720px;

    margin:0 0 24px !important;

    color:#f5fffb !important;

    font-size:clamp(48px, 6vw, 82px) !important;
    line-height:.94 !important;
    font-weight:850 !important;
    letter-spacing:-.055em !important;

    text-shadow:
        0 0 35px rgba(0,255,156,.10);
}

/* intro */

body.smx-kc-library-page .smx-kc-hero > p{
    max-width:680px;

    margin:0 0 32px !important;

    color:#9ebbb2 !important;

    font-size:18px !important;
    line-height:1.7 !important;
}

/* ------------------------------------------------------------
   SEARCH
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-search{
    width:min(720px, 100%);
    margin:0 !important;
}

body.smx-kc-library-page .smx-kc-search label{
    display:block;

    margin-bottom:9px;

    color:#d9f8ef !important;

    font-size:13px;
    font-weight:700;
}

body.smx-kc-library-page .smx-kc-search > div{
    display:flex;
    gap:10px;
}

body.smx-kc-library-page .smx-kc-search input{
    flex:1;

    min-height:56px;

    padding:0 18px;

    border:1px solid rgba(0,255,156,.24) !important;
    border-radius:12px;

    background:rgba(0,0,0,.38) !important;

    color:#f4fffb !important;

    box-shadow:
        inset 0 0 20px rgba(0,255,156,.025);
}

body.smx-kc-library-page .smx-kc-search input::placeholder{
    color:#64847a !important;
}

body.smx-kc-library-page .smx-kc-search button{
    min-width:120px;

    border:1px solid rgba(0,255,156,.45) !important;
    border-radius:12px;

    background:
        linear-gradient(
            135deg,
            rgba(0,255,156,.20),
            rgba(0,217,138,.07)
        ) !important;

    color:#f4fffb !important;

    font-weight:800;

    cursor:pointer;

    transition:
        transform .18s ease,
        box-shadow .18s ease;
}

body.smx-kc-library-page .smx-kc-search button:hover{
    transform:translateY(-2px);

    box-shadow:
        0 0 28px rgba(0,255,156,.18);
}

/* ------------------------------------------------------------
   TOPICS
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-topics{
    display:flex;
    flex-wrap:wrap;
    gap:10px;

    width:100%;
    margin:0 0 56px !important;
}

body.smx-kc-library-page .smx-kc-topics a{
    display:inline-flex;
    align-items:center;

    min-height:38px;
    padding:0 15px;

    border:1px solid rgba(0,255,156,.14);
    border-radius:999px;

    background:rgba(0,255,156,.025);

    color:#9dbab1 !important;

    font-size:13px;
    font-weight:700;

    text-decoration:none;

    transition:
        border-color .18s ease,
        background .18s ease,
        color .18s ease,
        transform .18s ease;
}

body.smx-kc-library-page .smx-kc-topics a:hover,
body.smx-kc-library-page .smx-kc-topics a.is-active{
    border-color:rgba(0,255,156,.42);

    background:rgba(0,255,156,.10);

    color:#f4fffb !important;

    transform:translateY(-1px);

    box-shadow:
        0 0 18px rgba(0,255,156,.06);
}

/* ------------------------------------------------------------
   SECTION HEADER
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-section{
    width:100%;
}

body.smx-kc-library-page .smx-kc-section-head{
    display:flex;
    align-items:end;
    justify-content:space-between;
    gap:30px;

    margin:0 0 24px !important;
}

body.smx-kc-library-page .smx-kc-section-head span{
    display:block;

    margin:0 0 8px !important;

    color:var(--smx-emerald) !important;

    font-size:12px;
    font-weight:800;
    letter-spacing:.18em;
    text-transform:uppercase;
}

body.smx-kc-library-page .smx-kc-section-head h2{
    margin:0 !important;

    color:#f4fffb !important;

    font-size:34px !important;
    line-height:1.05 !important;
    letter-spacing:-.035em !important;
}

/* ------------------------------------------------------------
   ARTICLE GRID
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-grid{
    display:grid;

    grid-template-columns:
        repeat(3, minmax(0,1fr));

    gap:18px;

    width:100%;
}

body.smx-kc-library-page .smx-kc-card{
    position:relative;
    overflow:hidden;

    min-height:250px;

    padding:28px;

    border:1px solid rgba(0,255,156,.13);
    border-radius:18px;

    background:
        linear-gradient(
            145deg,
            rgba(9,30,25,.94),
            rgba(3,14,11,.97)
        );

    box-shadow:
        inset 0 1px 0 rgba(255,255,255,.02);

    transition:
        transform .20s ease,
        border-color .20s ease,
        box-shadow .20s ease;
}

body.smx-kc-library-page .smx-kc-card:hover{
    transform:translateY(-5px);

    border-color:rgba(0,255,156,.38);

    box-shadow:
        0 18px 45px rgba(0,0,0,.30),
        0 0 25px rgba(0,255,156,.07);
}

body.smx-kc-library-page .smx-kc-card h3{
    color:#f4fffb !important;

    font-size:22px !important;
    line-height:1.15 !important;
}

body.smx-kc-library-page .smx-kc-card p{
    color:#8faea4 !important;

    line-height:1.65;
}

body.smx-kc-library-page .smx-kc-card a{
    color:#f4fffb !important;
}

/* ------------------------------------------------------------
   EMPTY STATE
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-empty{
    padding:42px;

    border:1px solid rgba(0,255,156,.16);
    border-radius:18px;

    background:rgba(5,20,16,.85);

    text-align:left;
}

body.smx-kc-library-page .smx-kc-empty h3{
    color:#f4fffb !important;
}

body.smx-kc-library-page .smx-kc-empty p{
    color:#91afa6 !important;
}

/* ------------------------------------------------------------
   JAXIS
   ------------------------------------------------------------ */

body.smx-kc-library-page .smx-kc-jaxis-slot{
    margin-top:56px;
}

body.smx-kc-library-page .smx-kc-jaxis-slot > *{
    border-color:rgba(0,255,156,.20);
}

/* ------------------------------------------------------------
   MOBILE
   ------------------------------------------------------------ */

@media(max-width:900px){

    body.smx-public-experience.smx-kc-library-page
    .smx-kc-library{
        width:calc(100% - 32px);
        padding-top:40px;
    }

    body.smx-kc-library-page .smx-kc-hero{
        min-height:auto;
        padding:42px 28px;
        border-radius:22px;
    }

    body.smx-kc-library-page .smx-kc-hero h1{
        font-size:clamp(42px,11vw,64px) !important;
    }

    body.smx-kc-library-page .smx-kc-grid{
        grid-template-columns:1fr 1fr;
    }
}

@media(max-width:600px){

    body.smx-kc-library-page .smx-kc-search > div{
        flex-direction:column;
    }

    body.smx-kc-library-page .smx-kc-search button{
        min-height:52px;
    }

    body.smx-kc-library-page .smx-kc-grid{
        grid-template-columns:1fr;
    }

    body.smx-kc-library-page .smx-kc-section-head{
        display:block;
    }
}


/* ============================================================
   SITESMECHANIX KNOWLEDGE
   RC — FULL PUBLIC APPLICATION WIDTH + GRID RESET
   ============================================================ */

/*
 * Avada is currently constraining the Knowledge application
 * inside its normal content column.
 *
 * The Knowledge experience is its own application surface,
 * so it gets a controlled cinematic width instead.
 */

body.smx-kc-library-page .smx-kc-library{

    width:min(1480px, calc(100vw - 48px)) !important;
    max-width:none !important;

    margin-left:auto !important;
    margin-right:auto !important;

    box-sizing:border-box !important;
}

/*
 * Prevent Avada's content wrappers from clipping the
 * application surface.
 */

body.smx-kc-library-page #main,
body.smx-kc-library-page #content,
body.smx-kc-library-page .fusion-row,
body.smx-kc-library-page .fusion-content-boxes,
body.smx-kc-library-page .fusion-column-wrapper{

    overflow:visible !important;
}

/*
 * Knowledge section must use the application width,
 * not the old article width.
 */

body.smx-kc-library-page .smx-kc-section,
body.smx-kc-library-page .smx-kc-section-head,
body.smx-kc-library-page .smx-kc-topics,
body.smx-kc-library-page .smx-kc-grid{

    width:100% !important;
    max-width:none !important;

    margin-left:0 !important;
    margin-right:0 !important;

    box-sizing:border-box !important;
}

/* ============================================================
   TOPIC RAIL
   ============================================================ */

body.smx-kc-library-page .smx-kc-topics{

    display:grid !important;

    grid-template-columns:
        repeat(6, minmax(0, 1fr)) !important;

    gap:14px !important;

    align-items:stretch !important;
}

body.smx-kc-library-page .smx-kc-topics > *{

    min-width:0 !important;
    width:auto !important;
    max-width:none !important;

    box-sizing:border-box !important;
}

/* ============================================================
   ARTICLE GRID
   ============================================================ */

body.smx-kc-library-page .smx-kc-grid{

    display:grid !important;

    grid-template-columns:
        repeat(3, minmax(0, 1fr)) !important;

    gap:18px !important;

    align-items:stretch !important;

    overflow:visible !important;
}

body.smx-kc-library-page .smx-kc-grid > *{

    min-width:0 !important;
    width:auto !important;
    max-width:none !important;

    margin:0 !important;

    box-sizing:border-box !important;
}

/*
 * Kill old fixed dimensions that were causing the
 * second article card to escape the rail.
 */

body.smx-kc-library-page .smx-kc-card{

    width:100% !important;
    min-width:0 !important;
    max-width:none !important;

    margin:0 !important;

    box-sizing:border-box !important;

    overflow:hidden !important;
}

/* ============================================================
   ARTICLE CARD CONTENT
   ============================================================ */

body.smx-kc-library-page .smx-kc-card *{

    max-width:100%;

    box-sizing:border-box;
}

body.smx-kc-library-page .smx-kc-card h3{

    overflow-wrap:anywhere;
    word-break:normal;
}

body.smx-kc-library-page .smx-kc-card p{

    overflow-wrap:anywhere;
}

/* ============================================================
   REMOVE OLD FLOATING VISUAL ARTIFACTS
   ============================================================ */

body.smx-kc-library-page .smx-kc-grid::after,
body.smx-kc-library-page .smx-kc-section::after{

    content:none !important;
}

/* ============================================================
   JAXIS — KEEP IT INSIDE THE APPLICATION
   ============================================================ */

body.smx-kc-library-page .smx-kc-jaxis-slot{

    position:relative !important;

    width:100% !important;
    max-width:none !important;

    margin:56px 0 0 !important;

    box-sizing:border-box !important;

    overflow:hidden !important;
}

/* Don't allow an old waveform/decorative element
   to escape the JAXIS container. */

body.smx-kc-library-page .smx-kc-jaxis-slot svg,
body.smx-kc-library-page .smx-kc-jaxis-slot canvas,
body.smx-kc-library-page .smx-kc-jaxis-slot img{

    max-width:100% !important;
}

/* ============================================================
   DESKTOP BALANCE
   ============================================================ */

@media(min-width:1200px){

    body.smx-kc-library-page .smx-kc-grid{

        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;
    }

}

/* ============================================================
   TABLET
   ============================================================ */

@media(max-width:1100px){

    body.smx-kc-library-page .smx-kc-topics{

        grid-template-columns:
            repeat(3, minmax(0, 1fr)) !important;
    }

    body.smx-kc-library-page .smx-kc-grid{

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

}

/* ============================================================
   MOBILE
   ============================================================ */

@media(max-width:700px){

    body.smx-kc-library-page .smx-kc-library{

        width:calc(100vw - 32px) !important;
    }

    body.smx-kc-library-page .smx-kc-topics{

        grid-template-columns:
            repeat(2, minmax(0, 1fr)) !important;
    }

    body.smx-kc-library-page .smx-kc-grid{

        grid-template-columns:1fr !important;
    }

}

