/* Zatonirui Concept template v1.0.25 for Joomla 3/4 */
:root{
    --zt-bg:#27272E; --zt-deep:#2C2D34; --zt-panel:#32353F; --zt-button:#3D414E;
    --zt-line:#4D5262; --zt-text:#DDDEE4; --zt-light:#F6F7F9; --zt-white:#fff;
    --zt-ink:#1B1F28; --zt-muted:#7A808C; --zt-border:#E1E4EA; --zt-radius:22px;

    --zt-header-start:#27272E;
    --zt-header-middle:#171922;
    --zt-header-end:#232732;
    --zt-header-panel-rgb:44,45,52;
    --zt-footer-start:#27272E;
    --zt-footer-end:#171922;

    --zt-header-start-rgba:rgba(39,39,46,1);
    --zt-header-middle-rgba:rgba(23,25,34,1);
    --zt-header-end-rgba:rgba(35,39,50,1);
    --zt-header-panel-alpha:.74;
    --zt-footer-start-rgba:rgba(39,39,46,1);
    --zt-footer-end-rgba:rgba(23,25,34,1);
    --zt-mobile-menu-bg:#171922;
    --zt-mobile-menu-bg-rgb:23,25,34;
    --zt-mobile-menu-bg-alpha:.98;

    --zt-main-padding-top:54px;
    --zt-main-padding-bottom:70px;
    --zt-main-mobile-padding-top:36px;
    --zt-main-mobile-padding-bottom:48px;
    --zt-content-card-padding:32px;
    --zt-content-card-mobile-padding:22px;
    --zt-container-width:1200px;

    --zt-static-font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
    --zt-heading-font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
    --zt-menu-font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
    --zt-page-text-font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;
    --zt-topbar-font-size:14px;
    --zt-topbar-font-weight:400;
    --zt-topbar-icon-size:12px;
    --zt-nav-font-size:14px;
    --zt-nav-font-weight:700;
    --zt-phones-font-size:18px;
    --zt-phones-font-weight:800;
    --zt-footer-logo-width:174px;
    --zt-footer-text-font-size:16px;
    --zt-footer-text-font-weight:400;
    --zt-footer-heading-font-size:15px;
    --zt-footer-heading-font-weight:800;
    --zt-footer-bottom-font-size:13px;
    --zt-footer-bottom-font-weight:400;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body.zt-body{margin:0;min-width:320px;font-family:var(--zt-page-text-font-family);color:var(--zt-ink);background:var(--zt-light);line-height:1.45}
body.zt-body a{color:inherit;text-decoration:none}
body.zt-body img{max-width:100%;height:auto}
.zt-container{width:min(var(--zt-container-width),calc(100% - 40px));margin:0 auto}



/* Compatibility: SP Page Builder Stretch Section / 100vw overflow guard */
body.zt-body.zt-no-x-scroll{
    overflow-x:hidden;
}

body.zt-body.zt-no-x-scroll .zt-page{
    width:100%;
    max-width:100%;
    overflow-x:hidden;
}

@supports (overflow-x: clip){
    body.zt-body.zt-no-x-scroll .zt-page{
        overflow-x:clip;
    }
}

/* Header */
.zt-header{position:relative;z-index:5;color:var(--zt-text);background:radial-gradient(circle at 72% 20%,rgba(221,222,228,.10),transparent 28%),linear-gradient(135deg,var(--zt-header-start-rgba) 0%,var(--zt-header-middle-rgba) 56%,var(--zt-header-end-rgba) 100%);overflow:hidden}
.zt-header:before{content:"";position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.022) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.022) 1px,transparent 1px);background-size:76px 76px;opacity:.75;pointer-events:none}
.zt-topbar,.zt-nav-wrap,.zt-hero-mod{position:relative;z-index:1}
.zt-topbar{display:flex;align-items:center;justify-content:space-between;gap:22px;min-height:52px;padding:13px 0 9px;color:rgba(221,222,228,.74);font-family:var(--zt-static-font-family);font-size:var(--zt-topbar-font-size);font-weight:var(--zt-topbar-font-weight)}
.zt-topbar__item{display:flex;align-items:center;gap:9px;white-space:nowrap}
.zt-topbar__item p{margin:0}
.zt-mini-icon{flex:0 0 auto;display:inline-grid;place-items:center;width:22px;height:22px;border:1px solid rgba(221,222,228,.30);border-radius:50%;color:#fff;font-size:var(--zt-topbar-icon-size);line-height:1}
.zt-nav-wrap{display:flex;align-items:center;gap:28px;min-height:80px;margin-top:3px;margin-bottom:20px;padding:0 24px;border:1px solid rgba(221,222,228,.12);border-radius:19px;background:rgba(var(--zt-header-panel-rgb),var(--zt-header-panel-alpha));box-shadow:0 18px 42px rgba(0,0,0,.20);backdrop-filter:blur(16px)}
.zt-logo{display:flex;align-items:center;gap:13px;color:#fff;font-size:28px;line-height:1;font-weight:800;letter-spacing:-.055em;white-space:nowrap}
.zt-logo:hover{color:#fff}
.zt-logo__dot{width:12px;height:12px;border-radius:50%;background:#fff;box-shadow:0 0 0 8px rgba(255,255,255,.08)}
.zt-logo__mark-img{
    display:block;
    flex:0 0 auto;
    width:62px;
    height:50px;
    object-fit:contain;
    object-position:center;
    transform:translateY(1px);
}

.zt-logo--header-full{
    gap:0;
    flex:0 0 auto;
    min-width:0;
}
.zt-logo__full-img{
    display:block;
    flex:0 0 auto;
    width:280px;
    height:34px;
    max-width:min(280px,52vw);
    object-fit:contain;
    object-position:left center;
}

.zt-nav{margin-left:auto}
.zt-nav ul,.zt-fallback-menu{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none}
.zt-nav li{margin:0;padding:0;list-style:none}
.zt-nav a{display:block;color:rgba(255,255,255,.84);font-family:var(--zt-menu-font-family);font-size:var(--zt-nav-font-size);font-weight:var(--zt-nav-font-weight);line-height:1.2;transition:color .18s ease}
.zt-nav a:hover,.zt-nav .active>a,.zt-nav .current>a{color:#fff}
.zt-phones{display:grid;gap:4px;min-width:164px;margin-left:24px;color:#fff;text-align:left;font-family:var(--zt-static-font-family);font-size:var(--zt-phones-font-size);font-weight:var(--zt-phones-font-weight);line-height:1.16}
.zt-phones a{display:block;color:#fff}
.zt-menu-toggle{display:none;width:44px;height:44px;margin-left:auto;place-content:center;gap:5px;border:1px solid rgba(221,222,228,.20);border-radius:12px;background:rgba(61,65,78,.32);cursor:pointer}
.zt-menu-toggle span{display:block;width:20px;height:2px;border-radius:4px;background:#fff}
.zt-hero-mod{padding:10px 0 42px}
.zt-hero-mod>*{color:var(--zt-text)}

/* Main */
.zt-main{min-height:420px;background:radial-gradient(circle at 8% 10%,rgba(77,82,98,.06),transparent 23%),linear-gradient(180deg,#fff 0%,#F6F7F9 100%);padding:var(--zt-main-padding-top) 0 var(--zt-main-padding-bottom)}
.zt-breadcrumbs,.zt-before,.zt-after{margin-bottom:24px}
.zt-breadcrumbs{color:var(--zt-muted);font-size:14px}
.zt-layout{display:grid;grid-template-columns:1fr;gap:28px}
.zt-layout.has-left{grid-template-columns:280px 1fr}
.zt-layout.has-right{grid-template-columns:1fr 280px}
.zt-layout.has-left.has-right{grid-template-columns:260px 1fr 260px}
.zt-content{min-width:0}
.zt-content--card,.zt-sidebar .moduletable,.zt-before .moduletable,.zt-after .moduletable{border:1px solid var(--zt-border);border-radius:var(--zt-radius);background:rgba(255,255,255,.88);box-shadow:0 16px 46px rgba(36,40,52,.07)}
.zt-content--card{padding:var(--zt-content-card-padding)}
.zt-sidebar .moduletable,.zt-before .moduletable,.zt-after .moduletable{padding:24px}
.zt-content h1,.zt-content h2,.zt-content h3{color:#1D212A;font-family:var(--zt-heading-font-family);letter-spacing:-.035em}

body.zt-body .zt-main h1,
body.zt-body .zt-main h2,
body.zt-body .zt-main h3,
body.zt-body .zt-main h4,
body.zt-body .zt-main h5,
body.zt-body .zt-main h6,
body.zt-body .zt-before h1,
body.zt-body .zt-before h2,
body.zt-body .zt-before h3,
body.zt-body .zt-before h4,
body.zt-body .zt-before h5,
body.zt-body .zt-before h6,
body.zt-body .zt-after h1,
body.zt-body .zt-after h2,
body.zt-body .zt-after h3,
body.zt-body .zt-after h4,
body.zt-body .zt-after h5,
body.zt-body .zt-after h6{
    font-family:var(--zt-heading-font-family);
}

.zt-content h1{margin-top:0;font-size:42px;line-height:1.08}
.zt-content h2{font-size:32px;line-height:1.16}
.zt-content p{color:#4B5260}
.zt-content a{color:#1D212A;font-weight:700;text-decoration:underline;text-underline-offset:3px}
.zt-content .btn,.zt-content button,.zt-content input[type="submit"]{border-radius:10px}

/* Footer */
.zt-footer{color:rgba(221,222,228,.78);background:radial-gradient(circle at 76% 20%,rgba(221,222,228,.08),transparent 26%),linear-gradient(135deg,var(--zt-footer-start-rgba),var(--zt-footer-end-rgba));padding:46px 0 22px;font-family:var(--zt-static-font-family);font-size:var(--zt-footer-text-font-size);font-weight:var(--zt-footer-text-font-weight)}
.zt-footer__grid{display:grid;grid-template-columns:1.25fr 1fr 1.1fr 1fr .9fr;gap:38px}
.zt-footer__col{min-width:0}
.zt-footer__col h3,.zt-footer .moduletable>h3{margin:0 0 14px;color:#fff;font-size:var(--zt-footer-heading-font-size);line-height:1.2;font-weight:var(--zt-footer-heading-font-weight)}
.zt-footer__col p{margin:0 0 9px}
.zt-footer__col a{display:block;margin:0 0 9px;color:rgba(221,222,228,.82)}
.zt-footer__col a:hover{color:#fff}
.zt-logo--footer{margin-bottom:16px;font-size:24px}

.zt-logo--footer-full{
    display:inline-flex;
    gap:0;
    margin-bottom:16px;
    letter-spacing:0;
}
.zt-logo__footer-img{
    display:block;
    width:var(--zt-footer-logo-width);
    height:auto;
    max-width:100%;
    object-fit:contain;
    object-position:left center;
}

.zt-footer__brand p{color:rgba(221,222,228,.74)}
.zt-socials{display:flex;flex-wrap:wrap;gap:9px}
.zt-socials a{display:grid;place-items:center;width:38px;height:38px;margin:0;border:1px solid rgba(221,222,228,.18);border-radius:50%;color:#fff;font-size:12px;font-weight:800;text-transform:uppercase}
.zt-socials a:hover{background:rgba(221,222,228,.08)}
.zt-footer__bottom{display:flex;justify-content:space-between;gap:24px;margin-top:36px;padding-top:20px;border-top:1px solid rgba(221,222,228,.10);color:rgba(221,222,228,.70);font-size:var(--zt-footer-bottom-font-size);font-weight:var(--zt-footer-bottom-font-weight)}
.zt-footer__links{display:flex;flex-wrap:wrap;gap:24px}
.zt-footer__links a{color:rgba(221,222,228,.72)}
.zt-footer__links a:hover{color:#fff}



/* Header menu panel variants */
.zt-nav-wrap--premium{
    border:1px solid rgba(255,255,255,.105);
    border-top-color:rgba(255,255,255,.155);
    border-bottom-color:rgba(0,0,0,.20);
    border-radius:18px;
    background:
        linear-gradient(180deg,rgba(255,255,255,.045),rgba(255,255,255,.012) 42%,rgba(0,0,0,.075)),
        rgba(var(--zt-header-panel-rgb),var(--zt-header-panel-alpha,.74));
    box-shadow:
        0 18px 48px rgba(0,0,0,.22),
        inset 0 1px 0 rgba(255,255,255,.115),
        inset 0 -1px 0 rgba(0,0,0,.18);
}

.zt-nav-wrap--glass{
    border:1px solid rgba(221,222,228,.13);
    border-top-color:rgba(255,255,255,.20);
    border-radius:24px;
    background:
        radial-gradient(circle at 14% 0%,rgba(255,255,255,.10),transparent 28%),
        linear-gradient(180deg,rgba(255,255,255,.055),rgba(255,255,255,.018) 48%,rgba(0,0,0,.10)),
        rgba(var(--zt-header-panel-rgb),.58);
    box-shadow:
        0 24px 70px rgba(0,0,0,.24),
        inset 0 1px 0 rgba(255,255,255,.14),
        inset 0 0 0 1px rgba(255,255,255,.025);
    backdrop-filter:blur(22px) saturate(1.08);
}

.zt-nav-wrap--tech{
    border:1px solid rgba(221,222,228,.095);
    border-top-color:rgba(255,255,255,.18);
    border-left-color:rgba(255,255,255,.13);
    border-radius:14px;
    background:
        linear-gradient(90deg,rgba(255,255,255,.060),rgba(255,255,255,.018) 26%,rgba(0,0,0,.08) 100%),
        linear-gradient(180deg,rgba(255,255,255,.035),rgba(0,0,0,.10)),
        rgba(var(--zt-header-panel-rgb),.70);
    box-shadow:
        0 18px 44px rgba(0,0,0,.23),
        inset 0 1px 0 rgba(255,255,255,.12),
        inset 0 -1px 0 rgba(0,0,0,.22);
}

.zt-nav-wrap--tech:after{
    content:"";
    position:absolute;
    left:24px;
    right:24px;
    bottom:0;
    height:1px;
    background:linear-gradient(90deg,transparent,rgba(255,255,255,.20),transparent);
    pointer-events:none;
}



.zt-nav-wrap--lines{
    border:0;
    border-radius:0;
    background:
        linear-gradient(180deg,rgba(255,255,255,.030),rgba(255,255,255,.006) 48%,rgba(0,0,0,.055)),
        rgba(var(--zt-header-panel-rgb),.18);
    box-shadow:none;
    backdrop-filter:blur(12px) saturate(1.04);
    overflow:visible;
}

.zt-nav-wrap--lines:before,
.zt-nav-wrap--lines:after{
    content:"";
    position:absolute;
    left:32px;
    right:32px;
    height:1px;
    pointer-events:none;
    background:
        linear-gradient(90deg,
            rgba(221,222,228,0) 0%,
            rgba(221,222,228,.035) 10%,
            rgba(221,222,228,.15) 31%,
            rgba(255,255,255,.34) 50%,
            rgba(221,222,228,.15) 69%,
            rgba(221,222,228,.035) 90%,
            rgba(221,222,228,0) 100%);
    filter:drop-shadow(0 0 8px rgba(221,222,228,.10));
}

.zt-nav-wrap--lines:before{
    top:0;
}

.zt-nav-wrap--lines:after{
    bottom:0;
}

.zt-nav-wrap--lines .zt-logo,
.zt-nav-wrap--lines .zt-nav,
.zt-nav-wrap--lines .zt-phones,
.zt-nav-wrap--lines .zt-menu-toggle{
    position:relative;
    z-index:1;
}



.zt-nav-wrap--clearlines{
    border:0;
    border-radius:0;
    background:transparent;
    box-shadow:none;
    backdrop-filter:none;
    overflow:visible;
}

.zt-nav-wrap--clearlines:before,
.zt-nav-wrap--clearlines:after{
    content:"";
    position:absolute;
    left:32px;
    right:32px;
    height:1px;
    pointer-events:none;
    background:
        linear-gradient(90deg,
            rgba(221,222,228,0) 0%,
            rgba(221,222,228,.012) 12%,
            rgba(221,222,228,.045) 22%,
            rgba(221,222,228,.14) 30%,
            rgba(255,255,255,.22) 40%,
            rgba(255,255,255,.24) 50%,
            rgba(255,255,255,.22) 60%,
            rgba(221,222,228,.14) 70%,
            rgba(221,222,228,.045) 78%,
            rgba(221,222,228,.012) 88%,
            rgba(221,222,228,0) 100%);
    filter:drop-shadow(0 0 7px rgba(221,222,228,.08));
}

.zt-nav-wrap--clearlines:before{
    top:0;
}

.zt-nav-wrap--clearlines:after{
    bottom:0;
}

.zt-nav-wrap--clearlines .zt-logo,
.zt-nav-wrap--clearlines .zt-nav,
.zt-nav-wrap--clearlines .zt-phones,
.zt-nav-wrap--clearlines .zt-menu-toggle{
    position:relative;
    z-index:1;
}



/* Optional alignment mode for preset 5: Transparent lines */
.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid{
    display:grid;
    grid-template-columns:auto 1fr auto;
    align-items:center;
    column-gap:28px;
    padding-left:0;
    padding-right:0;
}

.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid:before,
.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid:after{
    left:0;
    right:0;
    background:
        linear-gradient(90deg,
            rgba(221,222,228,0) 0%,
            rgba(221,222,228,.020) 14%,
            rgba(221,222,228,.070) 22%,
            rgba(255,255,255,.20) 30%,
            rgba(255,255,255,.25) 43%,
            rgba(255,255,255,.26) 50%,
            rgba(255,255,255,.25) 57%,
            rgba(255,255,255,.20) 70%,
            rgba(221,222,228,.070) 78%,
            rgba(221,222,228,.020) 86%,
            rgba(221,222,228,0) 100%);
}

.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid .zt-logo{
    justify-self:start;
}

.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid .zt-nav{
    justify-self:end;
    margin-left:0;
}

.zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid .zt-phones{
    justify-self:end;
    margin-left:0;
}

@media (max-width:980px){
    .zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid{
        display:flex;
        padding-left:16px;
        padding-right:16px;
    }

    .zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid:before,
    .zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid:after{
        left:16px;
        right:16px;
    }
}

@media (max-width:640px){
    .zt-nav-wrap--clearlines.zt-nav-wrap--edgegrid{
        padding-left:16px;
        padding-right:16px;
    }
}

/* Joomla defaults */
.pagination,.pagenavigation,.items-more,.article-info{color:var(--zt-muted)}
.alert,#system-message-container .alert{border-radius:14px}
table{width:100%;border-collapse:collapse}
td,th{border-bottom:1px solid var(--zt-border);padding:12px 10px}
th{text-align:left;color:#1D212A}

/* Component-only and error layouts */
.zt-component-body{margin:0;padding:24px;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;color:var(--zt-ink);background:#fff}
.zt-error-body{margin:0;font-family:Arial,"Helvetica Neue",Helvetica,sans-serif;background:linear-gradient(135deg,var(--zt-header-start),var(--zt-header-middle))}
.zt-error{min-height:100vh;display:grid;place-items:center;padding:30px}
.zt-error__card{width:min(560px,100%);padding:42px;border:1px solid rgba(221,222,228,.13);border-radius:24px;color:var(--zt-text);background:rgba(var(--zt-header-panel-rgb),.82);box-shadow:0 28px 80px rgba(0,0,0,.32)}
.zt-error__code{color:#fff;font-size:78px;font-weight:900;line-height:1}
.zt-error__card h1{margin:10px 0 12px;color:#fff}
.zt-error__card p{color:rgba(221,222,228,.72)}
.zt-error__btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;margin-top:16px;padding:0 24px;border-radius:10px;background:#fff;color:#1B1D25;font-weight:800;text-decoration:none}

@media (max-width:1180px){
    .zt-nav ul,.zt-fallback-menu{gap:18px}
    .zt-phones{font-size:16px;min-width:148px}
}
@media (max-width:980px){
    .zt-topbar{flex-wrap:wrap;justify-content:flex-start}
    .zt-menu-toggle{display:grid}
    .zt-nav-wrap{flex-wrap:wrap;gap:18px;padding-top:16px;padding-bottom:16px}
    .zt-nav{display:none;width:100%;order:10;margin:0;padding-top:10px;border-top:1px solid rgba(221,222,228,.10)}
    .zt-nav.is-open{display:block}
    .zt-nav ul,.zt-fallback-menu{display:grid;gap:14px}
    .zt-nav a{font-size:16px}
    .zt-phones{margin-left:0}
    .zt-layout,.zt-layout.has-left,.zt-layout.has-right,.zt-layout.has-left.has-right{grid-template-columns:1fr}
    .zt-footer__grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:640px){

    .zt-nav-wrap--clearlines:before,
    .zt-nav-wrap--clearlines:after{
        left:16px;
        right:16px;
    }


    .zt-nav-wrap--lines:before,
    .zt-nav-wrap--lines:after{
        left:16px;
        right:16px;
    }

    .zt-container{width:min(100% - 28px,var(--zt-container-width))}
    .zt-topbar{display:grid;gap:10px;font-size:13px}
    .zt-topbar__item{white-space:normal}
    .zt-nav-wrap{margin-bottom:14px;padding-left:16px;padding-right:16px}
    .zt-logo{font-size:23px}
    .zt-logo__mark-img{width:50px;height:42px}
    .zt-logo__full-img{width:min(230px,62vw);height:auto}
    .zt-phones{width:100%;font-size:16px}
    .zt-main{padding:var(--zt-main-mobile-padding-top) 0 var(--zt-main-mobile-padding-bottom)}
    .zt-content--card{padding:var(--zt-content-card-mobile-padding)}
    .zt-content h1{font-size:34px}
    .zt-footer__grid{grid-template-columns:1fr;gap:26px}
    .zt-footer__bottom{flex-direction:column}
    .zt-footer__links{flex-direction:column;gap:10px}
}


/* v1.0.18: independent mobile drawer menu and scroll-to-top */
.zt-mobile-menu-backdrop,
.zt-mobile-drawer{
    display:none;
}

.zt-scroll-top{
    position:fixed;
    right:22px;
    bottom:22px;
    z-index:10030;
    display:grid;
    place-items:center;
    width:48px;
    height:48px;
    margin:0;
    padding:0;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    color:#fff;
    background:rgba(23,25,34,.58);
    box-shadow:0 18px 48px rgba(0,0,0,.24), inset 0 1px 0 rgba(255,255,255,.10);
    backdrop-filter:blur(14px);
    cursor:pointer;
    opacity:0;
    visibility:hidden;
    transform:translateY(10px);
    transition:opacity .2s ease, visibility .2s ease, transform .2s ease, background-color .2s ease;
}

.zt-scroll-top.is-visible{
    opacity:.74;
    visibility:visible;
    transform:translateY(0);
}

.zt-scroll-top:hover,
.zt-scroll-top:focus-visible{
    opacity:1;
    background:rgba(23,25,34,.78);
}

.zt-scroll-top:focus-visible{
    outline:2px solid rgba(255,255,255,.68);
    outline-offset:4px;
}

.zt-mobile-menu-backdrop{
    position:fixed;
    inset:0;
    z-index:10000;
    opacity:0;
    visibility:hidden;
    background:rgba(6,8,13,.62);
    backdrop-filter:blur(5px);
    transition:opacity .22s ease, visibility .22s ease;
}

.zt-mobile-drawer{
    position:fixed;
    left:0;
    top:0;
    bottom:0;
    z-index:10001;
    width:min(386px,88vw);
    max-width:88vw;
    padding:22px 22px 28px;
    border-right:1px solid rgba(255,255,255,.12);
    color:#fff;
    background:
        radial-gradient(circle at 0% 0%, rgba(255,255,255,.10), transparent 30%),
        linear-gradient(180deg, rgba(var(--zt-mobile-menu-bg-rgb),var(--zt-mobile-menu-bg-alpha)), rgba(11,13,19,.985));
    box-shadow:28px 0 80px rgba(0,0,0,.42), inset 1px 0 0 rgba(255,255,255,.06);
    overflow-x:hidden;
    overflow-y:auto;
    -webkit-overflow-scrolling:touch;
    transform:translateX(-104%);
    transition:transform .28s cubic-bezier(.2,.8,.2,1);
}

.zt-mobile-drawer__head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:16px;
    min-height:58px;
    margin:0 0 18px;
    padding:0 0 18px;
    border-bottom:1px solid rgba(255,255,255,.10);
}

.zt-mobile-drawer__logo{
    display:inline-flex;
    align-items:center;
    min-width:0;
}

.zt-mobile-drawer__logo img{
    display:block;
    width:min(242px,60vw);
    height:auto;
    max-width:100%;
    object-fit:contain;
    object-position:left center;
}

.zt-mobile-drawer__close{
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:42px;
    height:42px;
    margin:0;
    padding:0;
    border:1px solid rgba(255,255,255,.14);
    border-radius:12px;
    color:#fff;
    background:rgba(255,255,255,.06);
    cursor:pointer;
    font-size:26px;
    line-height:1;
    font-weight:300;
    appearance:none;
}

.zt-mobile-drawer__close:hover,
.zt-mobile-drawer__close:focus-visible{
    background:rgba(255,255,255,.12);
}

.zt-mobile-drawer__close:focus-visible{
    outline:2px solid rgba(255,255,255,.66);
    outline-offset:3px;
}

.zt-mobile-drawer__menu ul{
    display:grid;
    gap:2px;
    margin:0;
    padding:0;
    list-style:none;
}

.zt-mobile-drawer__menu li{
    position:relative;
    margin:0;
    padding:0;
    list-style:none;
    border-bottom:1px solid rgba(255,255,255,.07);
}

.zt-mobile-drawer__menu a{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    min-height:48px;
    padding:13px 8px;
    border-radius:12px;
    color:rgba(255,255,255,.86);
    font-family:var(--zt-menu-font-family);
    font-size:16px;
    line-height:1.25;
    font-weight:500;
    text-decoration:none;
}

.zt-mobile-drawer__menu li.parent>a:after,
.zt-mobile-drawer__menu li.deeper>a:after{
    content:"›";
    display:grid;
    place-items:center;
    flex:0 0 auto;
    width:22px;
    height:22px;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    color:rgba(255,255,255,.72);
    font-size:18px;
    line-height:1;
}

.zt-mobile-drawer__menu a:hover,
.zt-mobile-drawer__menu .active>a,
.zt-mobile-drawer__menu .current>a{
    color:#fff;
    background:rgba(255,255,255,.07);
}

.zt-mobile-drawer__menu li ul{
    display:grid;
    gap:1px;
    margin:0 0 8px 12px;
    padding:0 0 0 12px;
    border-left:1px solid rgba(255,255,255,.10);
}

.zt-mobile-drawer__menu li li{
    border-bottom:0;
}

.zt-mobile-drawer__menu li li a{
    min-height:38px;
    padding:9px 8px;
    color:rgba(255,255,255,.68);
    font-size:14px;
}


body.zt-drawer-open{
    overflow:hidden;
}

body.zt-drawer-open .zt-mobile-menu-backdrop{
    display:block;
    opacity:1;
    visibility:visible;
}

body.zt-drawer-open .zt-mobile-drawer{
    display:block;
    transform:translateX(0);
}

body.zt-desktop-drawer-enabled .zt-mobile-menu-backdrop,
body.zt-desktop-drawer-enabled .zt-mobile-drawer{
    display:block;
}

@media (max-width:980px){
    .zt-mobile-menu-backdrop,
    .zt-mobile-drawer{
        display:block;
    }
}

body.zt-desktop-drawer-enabled .zt-menu-toggle{
    position:fixed;
    left:14px;
    top:14px;
    z-index:10025;
    display:grid;
    margin:0;
}

body.zt-desktop-drawer-enabled .zt-menu-toggle span{
    transition:transform .2s ease, opacity .2s ease;
}

@media (max-width:980px){
    .zt-menu-toggle span{
        transition:transform .2s ease, opacity .2s ease;
    }
}

body.zt-drawer-open .zt-menu-toggle span:nth-child(1){
    transform:translateY(7px) rotate(45deg);
}

body.zt-drawer-open .zt-menu-toggle span:nth-child(2){
    opacity:0;
}

body.zt-drawer-open .zt-menu-toggle span:nth-child(3){
    transform:translateY(-7px) rotate(-45deg);
}

@media (max-width:980px){
    .zt-topbar{
        display:grid;
        grid-template-columns:1fr;
        gap:8px;
        padding-left:54px;
    }

    .zt-topbar__item{
        white-space:normal;
    }

    .zt-nav-wrap{
        display:grid;
        grid-template-columns:minmax(0,1fr) auto;
        align-items:center;
        gap:14px;
        padding-top:16px;
        padding-bottom:16px;
    }

    .zt-menu-toggle{
        position:fixed;
        left:14px;
        top:14px;
        z-index:10025;
        display:grid;
        margin:0;
    }

    .zt-nav{
        display:none !important;
    }

    .zt-nav.is-open{
        display:none !important;
    }

    .zt-phones{
        justify-self:end;
        margin-left:0;
        min-width:0;
        width:auto;
        font-size:16px;
    }

    .zt-logo__full-img{
        width:min(245px,56vw);
        height:auto;
    }
}

@media (max-width:640px){
    .zt-scroll-top{
        right:16px;
        bottom:16px;
        width:44px;
        height:44px;
    }

    .zt-mobile-drawer{
        width:min(340px,90vw);
        max-width:90vw;
        padding:20px 18px 26px;
    }

    .zt-topbar{
        padding-left:54px;
    }

    .zt-nav-wrap{
        grid-template-columns:1fr;
        gap:12px;
    }

    .zt-phones{
        justify-self:start;
        font-size:15px;
    }
}


/* v1.0.20: desktop submenu dropdown */
@media (min-width:981px){
    .zt-nav{
        position:relative;
        z-index:20;
    }

    .zt-nav > ul,
    .zt-nav > .menu,
    .zt-nav > .mod-menu,
    .zt-nav > .nav,
    .zt-fallback-menu{
        display:flex;
        align-items:center;
        gap:28px;
        margin:0;
        padding:0;
        list-style:none;
    }

    .zt-nav li{
        position:relative;
    }

    .zt-nav > ul > li,
    .zt-nav > .menu > li,
    .zt-nav > .mod-menu > li,
    .zt-nav > .nav > li,
    .zt-fallback-menu > li{
        display:flex;
        align-items:center;
    }

    .zt-nav ul ul,
    .zt-nav .nav-child,
    .zt-nav .dropdown-menu{
        position:absolute;
        left:50%;
        top:calc(100% + 14px);
        z-index:10040;
        display:grid;
        min-width:220px;
        max-width:310px;
        gap:2px;
        margin:0;
        padding:10px;
        list-style:none;
        border:1px solid rgba(255,255,255,.13);
        border-radius:14px;
        background:
            radial-gradient(circle at 18% 0%, rgba(255,255,255,.10), transparent 32%),
            rgba(17,19,28,.96);
        box-shadow:0 24px 70px rgba(0,0,0,.38), inset 0 1px 0 rgba(255,255,255,.08);
        backdrop-filter:blur(14px);
        opacity:0;
        visibility:hidden;
        pointer-events:none;
        transform:translate(-50%, 8px);
        transition:opacity .18s ease, visibility .18s ease, transform .18s ease;
    }

    .zt-nav li:hover > ul,
    .zt-nav li:hover > .nav-child,
    .zt-nav li:hover > .dropdown-menu,
    .zt-nav li:focus-within > ul,
    .zt-nav li:focus-within > .nav-child,
    .zt-nav li:focus-within > .dropdown-menu{
        opacity:1;
        visibility:visible;
        pointer-events:auto;
        transform:translate(-50%, 0);
    }

    .zt-nav ul ul::before,
    .zt-nav .nav-child::before,
    .zt-nav .dropdown-menu::before{
        content:"";
        position:absolute;
        left:0;
        right:0;
        top:-16px;
        height:16px;
    }

    .zt-nav ul ul li,
    .zt-nav .nav-child li,
    .zt-nav .dropdown-menu li{
        display:block;
        width:100%;
        margin:0;
        padding:0;
        border-bottom:1px solid rgba(255,255,255,.06);
    }

    .zt-nav ul ul li:last-child,
    .zt-nav .nav-child li:last-child,
    .zt-nav .dropdown-menu li:last-child{
        border-bottom:0;
    }

    .zt-nav ul ul a,
    .zt-nav .nav-child a,
    .zt-nav .dropdown-menu a{
        display:block;
        width:100%;
        padding:10px 12px;
        border-radius:10px;
        color:rgba(255,255,255,.78);
        font-size:14px;
        line-height:1.25;
        font-weight:500;
        white-space:normal;
    }

    .zt-nav ul ul a:hover,
    .zt-nav .nav-child a:hover,
    .zt-nav .dropdown-menu a:hover,
    .zt-nav ul ul .active > a,
    .zt-nav .nav-child .active > a,
    .zt-nav .dropdown-menu .active > a,
    .zt-nav ul ul .current > a,
    .zt-nav .nav-child .current > a,
    .zt-nav .dropdown-menu .current > a{
        color:#fff;
        background:rgba(255,255,255,.08);
    }

    .zt-nav ul ul ul,
    .zt-nav .nav-child ul,
    .zt-nav .dropdown-menu ul{
        left:calc(100% + 10px);
        top:0;
        transform:translate(8px, 0);
    }

    .zt-nav ul ul li:hover > ul,
    .zt-nav .nav-child li:hover > ul,
    .zt-nav .dropdown-menu li:hover > ul,
    .zt-nav ul ul li:focus-within > ul,
    .zt-nav .nav-child li:focus-within > ul,
    .zt-nav .dropdown-menu li:focus-within > ul{
        transform:translate(0, 0);
    }
}


/* v1.0.21: keep desktop dropdown above SP Page Builder blocks */
body.zt-body .zt-header{
    z-index:10020;
    overflow:visible;
}

body.zt-body .zt-nav-wrap{
    overflow:visible;
}

body.zt-body .zt-main{
    position:relative;
    z-index:1;
}

@media (min-width:981px){
    body.zt-body .zt-nav{
        z-index:10030;
    }

    body.zt-body .zt-nav ul ul,
    body.zt-body .zt-nav .nav-child,
    body.zt-body .zt-nav .dropdown-menu{
        z-index:10050;
    }
}


/* v1.0.22: prevent header bottom margin collapse while dropdown stays visible */
body.zt-body .zt-header{
    display:flow-root;
}


/* v1.0.23: menu spacing from phones and submenu markers */
@media (min-width:981px){
    body.zt-body .zt-nav{
        flex:0 1 auto;
    }

    body.zt-body .zt-phones{
        margin-left:clamp(38px,3.2vw,58px);
    }

    body.zt-body .zt-nav > ul,
    body.zt-body .zt-nav > .menu,
    body.zt-body .zt-nav > .mod-menu,
    body.zt-body .zt-nav > .nav,
    body.zt-body .zt-fallback-menu{
        gap:clamp(20px,1.65vw,28px);
    }

    body.zt-body .zt-nav > ul > li.parent > a,
    body.zt-body .zt-nav > .menu > li.parent > a,
    body.zt-body .zt-nav > .mod-menu > li.parent > a,
    body.zt-body .zt-nav > .nav > li.parent > a,
    body.zt-body .zt-fallback-menu > li.parent > a,
    body.zt-body .zt-nav > ul > li.deeper > a,
    body.zt-body .zt-nav > .menu > li.deeper > a,
    body.zt-body .zt-nav > .mod-menu > li.deeper > a,
    body.zt-body .zt-nav > .nav > li.deeper > a,
    body.zt-body .zt-fallback-menu > li.deeper > a{
        display:inline-flex;
        align-items:center;
        gap:7px;
    }

    body.zt-body .zt-nav > ul > li.parent > a::after,
    body.zt-body .zt-nav > .menu > li.parent > a::after,
    body.zt-body .zt-nav > .mod-menu > li.parent > a::after,
    body.zt-body .zt-nav > .nav > li.parent > a::after,
    body.zt-body .zt-fallback-menu > li.parent > a::after,
    body.zt-body .zt-nav > ul > li.deeper > a::after,
    body.zt-body .zt-nav > .menu > li.deeper > a::after,
    body.zt-body .zt-nav > .mod-menu > li.deeper > a::after,
    body.zt-body .zt-nav > .nav > li.deeper > a::after,
    body.zt-body .zt-fallback-menu > li.deeper > a::after{
        content:"";
        display:block;
        width:6px;
        height:6px;
        margin-top:-3px;
        border-right:2px solid currentColor;
        border-bottom:2px solid currentColor;
        opacity:.72;
        transform:rotate(45deg);
        transition:opacity .18s ease, transform .18s ease;
    }

    body.zt-body .zt-nav > ul > li.parent:hover > a::after,
    body.zt-body .zt-nav > .menu > li.parent:hover > a::after,
    body.zt-body .zt-nav > .mod-menu > li.parent:hover > a::after,
    body.zt-body .zt-nav > .nav > li.parent:hover > a::after,
    body.zt-body .zt-fallback-menu > li.parent:hover > a::after,
    body.zt-body .zt-nav > ul > li.deeper:hover > a::after,
    body.zt-body .zt-nav > .menu > li.deeper:hover > a::after,
    body.zt-body .zt-nav > .mod-menu > li.deeper:hover > a::after,
    body.zt-body .zt-nav > .nav > li.deeper:hover > a::after,
    body.zt-body .zt-fallback-menu > li.deeper:hover > a::after{
        opacity:1;
        transform:rotate(45deg) translate(1px,1px);
    }

    body.zt-body .zt-nav ul ul li.parent > a,
    body.zt-body .zt-nav .nav-child li.parent > a,
    body.zt-body .zt-nav .dropdown-menu li.parent > a,
    body.zt-body .zt-nav ul ul li.deeper > a,
    body.zt-body .zt-nav .nav-child li.deeper > a,
    body.zt-body .zt-nav .dropdown-menu li.deeper > a{
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:12px;
    }

    body.zt-body .zt-nav ul ul li.parent > a::after,
    body.zt-body .zt-nav .nav-child li.parent > a::after,
    body.zt-body .zt-nav .dropdown-menu li.parent > a::after,
    body.zt-body .zt-nav ul ul li.deeper > a::after,
    body.zt-body .zt-nav .nav-child li.deeper > a::after,
    body.zt-body .zt-nav .dropdown-menu li.deeper > a::after{
        content:"›";
        display:grid;
        place-items:center;
        flex:0 0 auto;
        width:20px;
        height:20px;
        border:1px solid rgba(255,255,255,.16);
        border-radius:999px;
        color:rgba(255,255,255,.68);
        font-size:16px;
        line-height:1;
    }
}

@media (min-width:981px) and (max-width:1280px){
    body.zt-body .zt-phones{
        margin-left:32px;
    }

    body.zt-body .zt-nav > ul,
    body.zt-body .zt-nav > .menu,
    body.zt-body .zt-nav > .mod-menu,
    body.zt-body .zt-nav > .nav,
    body.zt-body .zt-fallback-menu{
        gap:18px;
    }
}


/* v1.0.24: move desktop menu visibly left from phone block */
@media (min-width:981px){
    body.zt-body .zt-nav{
        margin-left:auto;
        margin-right:clamp(34px,4.2vw,74px);
    }

    body.zt-body .zt-phones{
        margin-left:0;
    }
}

@media (min-width:981px) and (max-width:1280px){
    body.zt-body .zt-nav{
        margin-right:32px;
    }
}

@media (min-width:981px) and (max-width:1120px){
    body.zt-body .zt-nav{
        margin-right:24px;
    }
}


/* v1.0.25: collapsed mobile drawer submenus */
.zt-mobile-drawer__menu li.zt-has-children{
    position:relative;
}

.zt-mobile-drawer__menu li.zt-has-children > a{
    padding-right:48px;
}

.zt-mobile-drawer__menu li.parent > a::after,
.zt-mobile-drawer__menu li.deeper > a::after{
    content:none !important;
    display:none !important;
}

.zt-mobile-drawer__menu .zt-submenu-toggle{
    position:absolute;
    right:0;
    top:9px;
    z-index:2;
    display:grid;
    place-items:center;
    width:34px;
    height:34px;
    margin:0;
    padding:0;
    border:1px solid rgba(255,255,255,.16);
    border-radius:999px;
    color:rgba(255,255,255,.78);
    background:rgba(255,255,255,.045);
    box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
    cursor:pointer;
    font-family:inherit;
    font-size:0;
    line-height:1;
    appearance:none;
    transition:
        background-color .18s ease,
        border-color .18s ease,
        transform .18s ease;
}

.zt-mobile-drawer__menu .zt-submenu-toggle::before{
    content:"";
    display:block;
    width:8px;
    height:8px;
    border-right:2px solid currentColor;
    border-bottom:2px solid currentColor;
    transform:rotate(45deg) translate(-1px,-1px);
    transition:transform .18s ease;
}

.zt-mobile-drawer__menu .zt-submenu-toggle:hover,
.zt-mobile-drawer__menu .zt-submenu-toggle:focus-visible{
    color:#fff;
    border-color:rgba(255,255,255,.28);
    background:rgba(255,255,255,.09);
}

.zt-mobile-drawer__menu .zt-submenu-toggle:focus-visible{
    outline:2px solid rgba(255,255,255,.58);
    outline-offset:3px;
}

.zt-mobile-drawer__menu li.zt-submenu-open > .zt-submenu-toggle::before{
    transform:rotate(225deg) translate(-1px,-1px);
}

.zt-mobile-drawer__menu li.zt-has-children > ul,
.zt-mobile-drawer__menu li.zt-has-children > .nav-child,
.zt-mobile-drawer__menu li.zt-has-children > .dropdown-menu{
    display:grid;
    max-height:0;
    margin-top:0;
    margin-bottom:0;
    padding-top:0;
    padding-bottom:0;
    opacity:0;
    overflow:hidden;
    pointer-events:none;
    transition:
        max-height .26s cubic-bezier(.2,.8,.2,1),
        opacity .18s ease,
        margin .18s ease,
        padding .18s ease;
}

.zt-mobile-drawer__menu li.zt-submenu-open > ul,
.zt-mobile-drawer__menu li.zt-submenu-open > .nav-child,
.zt-mobile-drawer__menu li.zt-submenu-open > .dropdown-menu{
    max-height:900px;
    margin:0 0 8px 12px;
    padding:0 0 0 12px;
    opacity:1;
    pointer-events:auto;
}

.zt-mobile-drawer__menu li.zt-submenu-open > a{
    color:#fff;
    background:rgba(255,255,255,.07);
}
