:root{--bg:#03070b;--panel:#08121c;--panel2:#0b1824;--text:#f5f9fc;--muted:#8fa3b5;--line:rgba(130,180,220,.16);--blue:#31b9ff;--blue2:#0787ff;--green:#69e6b3;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}.container{width:min(var(--max),calc(100% - 40px));margin:auto}a{color:inherit;text-decoration:none}.site-header{position:sticky;top:0;z-index:50;background:rgba(3,7,11,.82);backdrop-filter:blur(20px);border-bottom:1px solid var(--line)}.nav{height:76px;display:flex;align-items:center;gap:28px}.brand{font-size:20px;font-weight:900;letter-spacing:.2em;margin-right:auto}.brand:after{content:"";display:block;width:38px;height:3px;border-radius:4px;background:var(--blue);margin-top:7px}.nav-links{display:flex;align-items:center;gap:25px;font-size:14px;color:#ccd7df}.nav-links a:hover{color:#fff}.lang{display:flex;gap:6px;margin-left:10px}.lang a{font-size:12px;color:var(--muted);padding:7px 8px;border-radius:8px}.lang a.active{background:#101b24;color:#fff}.nav-cta{border:1px solid rgba(49,185,255,.35);padding:10px 16px;border-radius:11px}.hero{min-height:690px;position:relative;overflow:hidden;border-bottom:1px solid var(--line)}.hero:before{content:"";position:absolute;inset:-10% -20%;background:radial-gradient(ellipse at 70% 55%,rgba(0,143,255,.18),transparent 37%),radial-gradient(ellipse at 25% 25%,rgba(40,102,255,.08),transparent 30%);pointer-events:none}.hero-grid{position:relative;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;min-height:690px;gap:20px}.eyebrow{color:var(--blue);font-size:12px;font-weight:850;letter-spacing:.15em;text-transform:uppercase}.hero h1{font-size:clamp(48px,6vw,82px);line-height:.96;letter-spacing:-.055em;margin:20px 0 24px;max-width:750px}.hero p{color:#a9bac8;font-size:19px;line-height:1.65;max-width:610px}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:50px;padding:0 20px;border-radius:13px;font-weight:800;font-size:14px}.primary{background:linear-gradient(135deg,var(--blue2),var(--blue));box-shadow:0 10px 40px rgba(0,145,255,.22)}.secondary{border:1px solid rgba(90,179,236,.28);background:rgba(8,18,28,.55)}.terminal-wrap{height:610px;display:flex;align-items:flex-end;justify-content:center}.terminal-wrap img{max-height:610px;max-width:100%;object-fit:contain;filter:drop-shadow(0 35px 60px rgba(0,0,0,.7))}.section{padding:96px 0;border-bottom:1px solid var(--line)}.section-head{display:grid;grid-template-columns:.7fr 1.3fr;gap:40px;margin-bottom:46px}.section h2{font-size:clamp(34px,4vw,52px);line-height:1.03;letter-spacing:-.04em;margin:10px 0}.section-head p,.lead{color:var(--muted);font-size:17px;line-height:1.7}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:15px}.step,.feature,.portal-card,.stat-card{border:1px solid var(--line);background:linear-gradient(180deg,rgba(11,24,36,.82),rgba(5,11,17,.8));border-radius:20px;padding:28px}.step-num{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#0d2637;border:1px solid rgba(49,185,255,.35);color:var(--blue);font-weight:900}.step h3,.feature h3,.portal-card h3{font-size:21px;margin:24px 0 10px}.step p,.feature p,.portal-card p{margin:0;color:var(--muted);line-height:1.6}.features{display:grid;grid-template-columns:repeat(4,1fr);gap:15px}.feature-icon{font-size:24px;color:var(--blue)}.split{display:grid;grid-template-columns:1fr 1fr;gap:18px}.portal-card{min-height:300px;display:flex;flex-direction:column;justify-content:flex-end;position:relative;overflow:hidden}.portal-card:before{content:"";position:absolute;width:280px;height:280px;border-radius:50%;right:-90px;top:-100px;background:radial-gradient(circle,rgba(28,167,255,.2),transparent 68%)}.portal-card .tag{position:relative;color:var(--blue);font-size:12px;font-weight:900;text-transform:uppercase;letter-spacing:.12em}.portal-card h3,.portal-card p,.portal-card a{position:relative}.portal-card a{margin-top:22px;color:#fff;font-weight:800}.terminal-section{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:70px}.terminal-small{display:flex;justify-content:center}.terminal-small img{max-height:600px;max-width:100%;filter:drop-shadow(0 30px 60px #000)}.checklist{display:grid;gap:13px;margin-top:30px}.check{display:flex;gap:12px;color:#c9d7e1}.check:before{content:"✓";display:grid;place-items:center;flex:0 0 24px;height:24px;border-radius:50%;background:rgba(105,230,179,.12);color:var(--green);font-weight:900}.cta{padding:100px 0;text-align:center;background:radial-gradient(circle at 50% 100%,rgba(0,137,255,.18),transparent 45%)}.cta h2{font-size:clamp(40px,5vw,66px);letter-spacing:-.045em;margin:0 auto 18px;max-width:820px}.cta p{color:var(--muted);font-size:18px}.footer{padding:40px 0 55px;color:#758898;font-size:13px}.footer-row{display:flex;justify-content:space-between;gap:30px}.page-hero{padding:120px 0 70px}.page-hero h1{font-size:clamp(46px,6vw,76px);letter-spacing:-.05em;line-height:1;margin:15px 0}.page-hero p{font-size:18px;color:var(--muted);max-width:720px;line-height:1.7}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;padding-bottom:100px}.error{padding:160px 0;text-align:center}@media(max-width:900px){.nav-links{display:none}.hero-grid,.section-head,.terminal-section{grid-template-columns:1fr}.hero-grid{padding-top:70px}.terminal-wrap{height:500px}.features{grid-template-columns:1fr 1fr}.steps{grid-template-columns:1fr}.split{grid-template-columns:1fr}.content-grid{grid-template-columns:1fr}.section-head{gap:0}.terminal-section{gap:20px}}@media(max-width:560px){.container{width:min(100% - 28px,var(--max))}.nav{height:66px}.nav-cta{display:none}.hero{min-height:auto}.hero-grid{min-height:auto}.hero h1{font-size:48px}.hero p{font-size:16px}.terminal-wrap{height:460px}.features{grid-template-columns:1fr}.section{padding:70px 0}.footer-row{flex-direction:column}}.header-account {
    display: flex;
    align-items: center;
    gap: 8px;
}

.account-menu {
    position: relative;
}

.header-btn {
    height: 38px;
    padding: 0 15px;
    border-radius: 10px;
    font: inherit;
    font-size: 14px;
    font-weight: 800;
    cursor: pointer;
    transition: .2s ease;
}

.header-btn-login {
    color: #fff;
    border: 1px solid rgba(255,255,255,.16);
    background: transparent;
}

.header-btn-login:hover {
    background: rgba(255,255,255,.07);
}

.header-btn-register {
    color: #06111d;
    border: 1px solid #68afff;
    background: #68afff;
}

.header-btn-register:hover {
    background: #8bc1ff;
}

.account-dropdown {
    position: absolute;
    top: calc(100% + 10px);
    right: 0;
    width: 270px;
    padding: 8px;

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

    background: #091827;
    box-shadow: 0 20px 50px rgba(0,0,0,.4);

    opacity: 0;
    visibility: hidden;
    transform: translateY(-6px);
    transition: .18s ease;

    z-index: 1000;
}

.account-menu:hover .account-dropdown,
.account-menu:focus-within .account-dropdown {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}

.account-dropdown a {
    display: flex;
    align-items: center;
    gap: 12px;

    padding: 12px;
    border-radius: 11px;

    color: #fff;
    text-decoration: none;
}

.account-dropdown a:hover {
    background: rgba(104,175,255,.1);
}

.account-dropdown a > span {
    display: grid;
    place-items: center;

    width: 36px;
    height: 36px;

    border-radius: 10px;
    color: #68afff;
    background: rgba(104,175,255,.1);

    font-size: 18px;
}

.account-dropdown strong,
.account-dropdown small {
    display: block;
}

.account-dropdown strong {
    font-size: 14px;
}

.account-dropdown small {
    margin-top: 2px;
    color: #8da2b7;
    font-size: 11px;
}
.error-page {
    position: relative;
    min-height: calc(100vh - 80px);

    display: flex;
    align-items: center;
    justify-content: center;

    padding: 60px 24px;
    overflow: hidden;

    background:
        radial-gradient(
            circle at 50% 35%,
            rgba(104,175,255,.13),
            transparent 38%
        ),
        #06111d;
}

.error-glow {
    position: absolute;

    width: 420px;
    height: 420px;

    border-radius: 50%;

    background: rgba(104,175,255,.08);
    filter: blur(90px);

    pointer-events: none;
}

.error-content {
    position: relative;
    z-index: 2;

    width: 100%;
    max-width: 760px;

    text-align: center;
}

.error-code {
    margin-bottom: 8px;

    font-size: clamp(110px, 18vw, 220px);
    line-height: .85;

    font-weight: 950;
    letter-spacing: -.07em;

    color: transparent;

    -webkit-text-stroke: 2px rgba(104,175,255,.75);

    text-shadow:
        0 0 45px rgba(104,175,255,.16);
}

.error-eyebrow {
    margin-top: 28px;

    color: #68afff;

    font-size: 12px;
    font-weight: 900;
    letter-spacing: .16em;
}

.error-content h1 {
    max-width: 680px;
    margin: 14px auto 0;

    color: #fff;

    font-size: clamp(32px, 5vw, 58px);
    line-height: 1.02;

    font-weight: 950;
    letter-spacing: -.04em;
}

.error-content p {
    max-width: 560px;
    margin: 20px auto 0;

    color: #8da2b7;

    font-size: 16px;
    line-height: 1.6;
}

.error-actions {
    margin-top: 34px;

    display: flex;
    justify-content: center;
    flex-wrap: wrap;

    gap: 10px;
}

.error-actions .button {
    min-height: 46px;

    display: inline-flex;
    align-items: center;
    justify-content: center;

    padding: 0 20px;

    border-radius: 12px;

    text-decoration: none;
    font-size: 14px;
    font-weight: 850;

    cursor: pointer;
}

.error-actions .primary {
    color: #06111d;
    background: #68afff;
    border: 1px solid #68afff;
}

.error-actions .secondary {
    color: #fff;
    background: transparent;
    border: 1px solid rgba(255,255,255,.15);
}

.error-actions .primary:hover {
    background: #8bc1ff;
}

.error-actions .secondary:hover {
    background: rgba(255,255,255,.06);
}
/* ===== COMPACT MAIN ===== */

.hero {
    min-height: auto;
    padding: 48px 0 36px;
}

.hero-grid {
    min-height: 0;
    align-items: center;
}

.hero-copy h1 {
    margin: 10px 0 14px;
    font-size: clamp(46px, 5.2vw, 76px);
    line-height: .92;
}

.hero-copy > p {
    max-width: 560px;
    margin: 0 0 20px;
    font-size: 16px;
    line-height: 1.5;
}

.terminal-wrap {
    height: 430px;
}

.terminal-wrap img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}


/* SECTIONS */

.section {
    padding: 54px 0;
}

.section-head {
    margin-bottom: 24px;
}

.section-head h2,
.section > .container > h2 {
    margin-top: 7px;
    font-size: clamp(30px, 3.5vw, 46px);
    line-height: 1;
}


/* THREE STEPS */

.steps {
    gap: 12px;
}

.step {
    min-height: 0;
    padding: 22px;
}

.step-num {
    margin-bottom: 28px;
}

.step h3 {
    margin: 0 0 8px;
    font-size: 19px;
}

.step p {
    margin: 0;
    font-size: 14px;
    line-height: 1.45;
}


/* FEATURES */

.features {
    margin-top: 24px;
    gap: 12px;
}

.feature {
    min-height: 0;
    padding: 20px;
}

.feature-icon {
    margin-bottom: 22px;
}

.feature h3 {
    margin-bottom: 7px;
}

.feature p {
    margin: 0;
    font-size: 13px;
    line-height: 1.45;
}


/* TERMINAL SECTION */

.dark-highlight {
    padding: 48px 0;
}

.terminal-section {
    min-height: 0;
}

.terminal-small {
    height: 390px;
}

.terminal-small img {
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.terminal-section h2 {
    margin: 8px 0 12px;
    font-size: clamp(36px, 4vw, 54px);
}

.lead {
    margin-bottom: 20px;
}

.checklist {
    gap: 8px;
    margin-bottom: 20px;
}


/* BUSINESS / CUSTOMER */

.split {
    margin-top: 22px;
    gap: 14px;
}

.portal-card {
    min-height: 0;
    padding: 26px;
}

.portal-card h3 {
    margin: 18px 0 8px;
    font-size: 24px;
}

.portal-card p {
    margin-bottom: 20px;
}


/* FINAL CTA */

.cta {
    min-height: 0;
    padding: 64px 0;
}

.cta h2 {
    max-width: 750px;
    margin: 10px auto 14px;
    font-size: clamp(36px, 4.5vw, 58px);
    line-height: 1;
}

.cta p {
    margin: 0 auto 22px;
}


/* SMALLER BUTTONS */

.actions {
    gap: 8px;
}

.button {
    min-height: 42px;
    padding: 0 17px;
    font-size: 13px;
}


/* LAPTOP */

@media (max-height: 850px) and (min-width: 900px) {
    .hero {
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .terminal-wrap {
        height: 360px;
    }

    .section {
        padding: 42px 0;
    }

    .terminal-small {
        height: 330px;
    }
}


/* MOBILE */

@media (max-width: 760px) {
    .hero {
        padding: 32px 0;
    }

    .hero-copy h1 {
        font-size: 48px;
    }

    .terminal-wrap {
        height: 300px;
        margin-top: 25px;
    }

    .section {
        padding: 42px 0;
    }

    .steps,
    .features,
    .split {
        grid-template-columns: 1fr;
    }

    .terminal-section {
        grid-template-columns: 1fr;
    }

    .terminal-small {
        height: 300px;
    }
}
/* =========================
   SIDE NAVIGATION
   ========================= */

.side-nav {
    position: fixed;
    left: 24px;
    top: 50%;
    transform: translateY(-50%);

    width: 180px;

    z-index: 100;

    display: flex;
    flex-direction: column;
    align-items: flex-start;

    gap: 14px;
}

.side-nav a {
    position: relative;

    color: rgba(255,255,255,.32);
    text-decoration: none;

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

    white-space: nowrap;

    transition:
        color .2s ease,
        transform .2s ease;
}

.side-nav a::before {
    content: "";

    position: absolute;

    left: -14px;
    top: 50%;

    width: 4px;
    height: 4px;

    border-radius: 50%;

    background: rgba(255,255,255,.25);

    transform: translateY(-50%);
}

.side-nav a:hover {
    color: #fff;
    transform: translateX(3px);
}

.side-nav a.active {
    color: #68afff;
}

.side-nav a.active::before {
    width: 6px;
    height: 6px;

    background: #68afff;

    box-shadow:
        0 0 12px rgba(104,175,255,.7);
}


/* =========================
   SPACE FOR SIDE NAV
   ========================= */

/*
   На больших экранах создаём реальное место слева.
   Навигация больше не перекрывает контент.
*/

@media (min-width: 1251px) {

    #despre > .container,
    #cum-functioneaza > .container,
    #avantaje > .container,
    #pentru-toti > .container,
    #contact > .container {
        padding-left: 190px;
    }

}


/* =========================
   VLADIO TERMINAL
   ========================= */

/*
   Для этой секции специально НЕ делаем отступ.
   Она остаётся на всю обычную ширину.
*/

#terminal > .container {
    padding-left: inherit;
}


/* =========================
   SCROLL
   ========================= */

html {
    scroll-behavior: smooth;
}

main section[id] {
    scroll-margin-top: 90px;
}


/* =========================
   SMALL SCREENS
   ========================= */

@media (max-width: 1250px) {

    .side-nav {
        display: none;
    }

    #despre > .container,
    #cum-functioneaza > .container,
    #avantaje > .container,
    #pentru-toti > .container,
    #contact > .container {
        padding-left: 24px;
    }

}

/* =========================================================
   VLADIO TERMINAL PAGE V3
   Completely new layout
   ========================================================= */

.terminal-v3 {
    overflow: hidden;
    background: #03070b;
}

.terminal-v3 .tv3-kicker {
    display: inline-block;
    color: #68afff;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .18em;
}


/* HERO */

.tv3-hero {
    position: relative;
    min-height: 720px;
    display: flex;
    align-items: center;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.tv3-hero::before {
    content: "";
    position: absolute;
    inset: 0;
    background:
        radial-gradient(circle at 76% 42%, rgba(36,151,255,.13), transparent 28%);
    pointer-events: none;
}

.tv3-hero-grid {
    position: relative;
    z-index: 1;
    display: grid;
    grid-template-columns: 1.05fr .95fr;
    align-items: center;
    gap: 70px;
}

.tv3-hero-copy {
    max-width: 700px;
}

.tv3-hero-copy h1 {
    margin: 15px 0 24px;
    font-size: clamp(60px, 6vw, 94px);
    line-height: .9;
    letter-spacing: -.06em;
}

.tv3-hero-copy p {
    max-width: 560px;
    margin: 0;
    color: #91a6b8;
    font-size: 18px;
    line-height: 1.65;
}

.tv3-actions {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 30px;
}

.tv3-hero-media {
    position: relative;
    height: 610px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tv3-hero-media img {
    position: relative;
    z-index: 2;
    width: 100%;
    height: 100%;
    object-fit: contain;
    filter: drop-shadow(0 35px 55px rgba(0,0,0,.7));
}

.tv3-orbit {
    position: absolute;
    width: 440px;
    height: 440px;
    border: 1px solid rgba(104,175,255,.15);
    border-radius: 50%;
    box-shadow:
        0 0 0 55px rgba(104,175,255,.025),
        0 0 0 110px rgba(104,175,255,.015);
}


/* BIG STATEMENT */

.tv3-statement {
    padding: 130px 0;
    text-align: center;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.tv3-statement h2 {
    max-width: 1000px;
    margin: 16px auto 0;
    font-size: clamp(50px, 6vw, 88px);
    line-height: .94;
    letter-spacing: -.055em;
}


/* SECTION TITLE */

.tv3-section-title {
    margin-bottom: 42px;
}

.tv3-section-title h2 {
    max-width: 820px;
    margin: 10px 0 0;
    font-size: clamp(42px, 4.7vw, 68px);
    line-height: .96;
    letter-spacing: -.05em;
}


/* FLOW */

.tv3-flow {
    padding: 100px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
    background: #050b11;
}

.tv3-flow-list {
    border-top: 1px solid rgba(255,255,255,.09);
}

.tv3-flow-item {
    display: grid;
    grid-template-columns: 95px minmax(0, 1fr);
    gap: 30px;
    padding: 28px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.tv3-flow-item > span {
    color: #68afff;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .16em;
}

.tv3-flow-item h3 {
    margin: 0 0 7px;
    font-size: 22px;
}

.tv3-flow-item p {
    max-width: 640px;
    margin: 0;
    color: #8195a7;
    font-size: 14px;
    line-height: 1.6;
}


/* PRODUCT */

.tv3-product {
    padding: 110px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.tv3-product-grid {
    display: grid;
    grid-template-columns: 1fr 1fr;
    align-items: center;
    gap: 90px;
}

.tv3-product-media {
    position: relative;
    height: 620px;
    display: flex;
    align-items: center;
    justify-content: center;
}

.tv3-product-media::before {
    content: "";
    position: absolute;
    width: 420px;
    height: 420px;
    border-radius: 50%;
    background: rgba(49,151,255,.10);
    filter: blur(100px);
}

.tv3-product-media img {
    position: relative;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: contain;
}

.tv3-product-copy h2 {
    max-width: 600px;
    margin: 12px 0 20px;
    font-size: clamp(48px, 5vw, 72px);
    line-height: .94;
    letter-spacing: -.05em;
}

.tv3-product-copy > p {
    max-width: 560px;
    margin: 0;
    color: #8ea3b5;
    font-size: 17px;
    line-height: 1.65;
}

.tv3-specs {
    margin-top: 34px;
    border-top: 1px solid rgba(255,255,255,.08);
}

.tv3-specs > div {
    display: grid;
    grid-template-columns: 120px 1fr;
    gap: 20px;
    padding: 17px 0;
    border-bottom: 1px solid rgba(255,255,255,.08);
}

.tv3-specs span {
    color: #6f8497;
    font-size: 12px;
}

.tv3-specs strong {
    font-size: 14px;
}


/* BUSINESS */

.tv3-business {
    padding: 100px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
    background: #050b11;
}

.tv3-business-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 14px;
}

.tv3-business-card {
    min-height: 260px;
    display: flex;
    flex-direction: column;
    padding: 26px;
    border: 1px solid rgba(255,255,255,.08);
    border-radius: 18px;
    background:
        linear-gradient(145deg, rgba(104,175,255,.04), rgba(255,255,255,.01));
}

.tv3-card-num {
    color: #68afff;
    font-size: 11px;
    font-weight: 900;
    letter-spacing: .14em;
}

.tv3-business-card h3 {
    margin: auto 0 8px;
    font-size: 22px;
}

.tv3-business-card p {
    margin: 0;
    color: #8195a7;
    font-size: 14px;
    line-height: 1.55;
}


/* USE CASES */

.tv3-usecases {
    padding: 100px 0;
    border-bottom: 1px solid rgba(255,255,255,.07);
}

.tv3-usecase-list {
    display: grid;
    gap: 12px;
}

.tv3-usecase {
    display: grid;
    grid-template-columns: 320px minmax(0, 1fr);
    align-items: center;
    gap: 40px;
    min-height: 150px;
    padding: 30px;
    border: 1px solid rgba(255,255,255,.075);
    border-radius: 18px;
    background:
        linear-gradient(90deg, rgba(104,175,255,.05), rgba(255,255,255,.01));
}

.tv3-usecase > div {
    display: flex;
    align-items: center;
    gap: 20px;
}

.tv3-usecase span {
    color: #68afff;
    font-size: 11px;
    font-weight: 900;
}

.tv3-usecase h3 {
    margin: 0;
    font-size: 30px;
}

.tv3-usecase p {
    max-width: 560px;
    margin: 0;
    color: #879cad;
    font-size: 15px;
    line-height: 1.6;
}


/* CTA */

.tv3-cta {
    padding: 120px 0;
    text-align: center;
    background:
        radial-gradient(circle at 50% 120%, rgba(49,151,255,.16), transparent 44%);
}

.tv3-cta h2 {
    max-width: 820px;
    margin: 12px auto 18px;
    font-size: clamp(52px, 6vw, 84px);
    line-height: .92;
    letter-spacing: -.055em;
}

.tv3-cta p {
    max-width: 580px;
    margin: 0 auto 28px;
    color: #8ea3b5;
    font-size: 17px;
    line-height: 1.6;
}


/* TABLET */

@media (max-width: 1000px) {
    .tv3-hero-grid,
    .tv3-product-grid {
        grid-template-columns: 1fr;
    }

    .tv3-hero {
        min-height: auto;
        padding-top: 60px;
    }

    .tv3-hero-media,
    .tv3-product-media {
        height: 480px;
    }

    .tv3-business-grid {
        grid-template-columns: 1fr;
    }

    .tv3-usecase {
        grid-template-columns: 1fr;
        gap: 18px;
    }
}


/* MOBILE */

@media (max-width: 680px) {
    .tv3-hero-copy h1 {
        font-size: 52px;
    }

    .tv3-hero-copy p {
        font-size: 16px;
    }

    .tv3-hero-media,
    .tv3-product-media {
        height: 350px;
    }

    .tv3-statement,
    .tv3-flow,
    .tv3-product,
    .tv3-business,
    .tv3-usecases,
    .tv3-cta {
        padding: 70px 0;
    }

    .tv3-flow-item {
        grid-template-columns: 42px 1fr;
        gap: 14px;
    }

    .tv3-specs > div {
        grid-template-columns: 90px 1fr;
    }

    .tv3-usecase {
        padding: 24px;
    }

    .tv3-usecase > div {
        align-items: flex-start;
    }

    .tv3-usecase h3 {
        font-size: 26px;
    }
}
/* =========================================================
   TERMINAL PAGE SIDE NAVIGATION
   ========================================================= */

.tv3-side-nav {
    position: fixed;
    left: 28px;
    top: 50%;
    transform: translateY(-50%);

    z-index: 100;

    width: 190px;

    display: flex;
    flex-direction: column;
    gap: 16px;
}

.tv3-side-nav::before {
    content: "";
    position: absolute;
    left: 2px;
    top: 0;
    bottom: 0;

    width: 1px;

    background: rgba(255,255,255,.08);
}

.tv3-side-nav a {
    position: relative;

    padding-left: 22px;

    color: rgba(190,205,220,.45);

    text-decoration: none;

    font-size: 12px;
    font-weight: 700;
    letter-spacing: .02em;

    transition: .25s ease;
}

/* маленькая точка */

.tv3-side-nav a::before {
    content: "";

    position: absolute;

    left: -3px;
    top: 50%;

    width: 8px;
    height: 8px;

    border-radius: 50%;

    background: #2b3540;

    transform: translateY(-50%);

    transition: .25s ease;
}

/* линия активного раздела */

.tv3-side-nav a::after {
    content: "";

    position: absolute;

    left: 0;
    top: 50%;

    width: 0;
    height: 2px;

    background: #68afff;

    transform: translateY(-50%);

    transition: .25s ease;
}

/* Hover */

.tv3-side-nav a:hover {
    color: #ffffff;
    transform: translateX(4px);
}

.tv3-side-nav a:hover::before {
    background: #68afff;
}

/* Active */

.tv3-side-nav a.active {
    color: #68afff;
}

.tv3-side-nav a.active::before {
    background: #68afff;
    box-shadow: 0 0 12px rgba(104,175,255,.6);
}

.tv3-side-nav a.active::after {
    width: 14px;
}

/* =========================================================
   DESKTOP LAYOUT (место под навигацию)
   ========================================================= */

@media (min-width: 1250px) {

    .tv3-hero .container,
    .tv3-statement .container,
    .tv3-flow .container,
    .tv3-product .container,
    .tv3-business .container,
    .tv3-usecases .container,
    .tv3-cta .container {
        padding-left: 210px;
    }

}

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

@media (max-width: 1249px) {

    .tv3-side-nav {
        display: none;
    }

}
/* =========================================================
   MOBILE HEADER FIX
   ========================================================= */

@media (max-width: 680px) {

    header {
        width: 100%;
        max-width: 100%;
        overflow: hidden;
    }

    header .container,
    .header-inner {
        width: 100%;
        max-width: 100%;
        padding-left: 20px;
        padding-right: 20px;
        box-sizing: border-box;
    }

    .header-inner {
        display: grid;
        grid-template-columns: 1fr;
        gap: 18px;
        padding-top: 18px;
        padding-bottom: 18px;
    }

    /* верхняя строка */
    .header-brand-row {
        display: flex;
        align-items: center;
        justify-content: space-between;
        gap: 18px;
        width: 100%;
        min-width: 0;
    }

    /* VLADIO */
    .header-logo,
    .brand,
    .logo {
        flex: 0 0 auto;
        min-width: 0;
    }

    .header-logo img,
    .brand img,
    .logo img {
        max-width: 150px;
        height: auto;
    }

    /* языки */
    .header-languages,
    .languages,
    .lang-switcher {
        display: flex;
        align-items: center;
        gap: 8px;
        margin-left: auto;
        flex: 0 0 auto;
    }

    .header-languages a,
    .languages a,
    .lang-switcher a {
        min-width: 42px;
        height: 42px;
        padding: 0 10px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 12px;

        font-size: 14px;
        white-space: nowrap;
    }

    /* нижняя строка */
    .header-account-row,
    .header-actions,
    .account-actions {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 10px;
        width: 100%;
        min-width: 0;
    }

    .header-account-row > *,
    .header-actions > *,
    .account-actions > * {
        min-width: 0;
    }

    .header-account-row a,
    .header-actions a,
    .account-actions a,
    .header-account-row button,
    .header-actions button,
    .account-actions button {
        width: 100%;
        min-width: 0;
        max-width: 100%;

        padding-left: 14px;
        padding-right: 14px;

        font-size: 14px;
        white-space: nowrap;
        text-align: center;

        box-sizing: border-box;
    }

    /* desktop nav скрываем */
    .desktop-nav,
    .main-nav,
    .header-nav {
        display: none !important;
    }
}
/* =========================================================
   VLADIO HEADER — MOBILE FINAL FIX
   ========================================================= */

@media (max-width: 680px) {

    .site-header,
    header {
        width: 100% !important;
        max-width: 100vw !important;
        overflow: hidden !important;
    }

    .site-header .container,
    header .container {
        width: 100% !important;
        max-width: 100% !important;
        padding-left: 20px !important;
        padding-right: 20px !important;
        box-sizing: border-box !important;
    }

    /* Основной контейнер header */
    .header-inner {
        width: 100% !important;
        max-width: 100% !important;

        display: flex !important;
        flex-wrap: wrap !important;

        align-items: center !important;

        gap: 12px !important;

        padding-top: 18px !important;
        padding-bottom: 18px !important;

        box-sizing: border-box !important;
    }


    /* VLADIO занимает всю первую строку */

    .header-logo,
    .brand,
    .logo {
        width: 100% !important;
        flex: 0 0 100% !important;
        margin: 0 !important;
    }


    /* Языки */

    .header-languages,
    .languages,
    .lang-switcher {
        display: flex !important;
        align-items: center !important;

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

        gap: 6px !important;

        margin: 0 !important;
    }

    .header-languages a,
    .languages a,
    .lang-switcher a {
        width: 46px !important;
        min-width: 46px !important;
        height: 46px !important;

        padding: 0 !important;

        display: flex !important;
        align-items: center !important;
        justify-content: center !important;

        font-size: 14px !important;
    }


    /* LOGIN / REGISTER */

    .header-actions,
    .account-actions,
    .header-account-row {
        width: 100% !important;
        max-width: 100% !important;

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

        gap: 10px !important;

        margin: 0 !important;
    }


    .header-actions > *,
    .account-actions > *,
    .header-account-row > * {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        box-sizing: border-box !important;
    }


    .header-actions a,
    .account-actions a,
    .header-account-row a,
    .header-actions button,
    .account-actions button,
    .header-account-row button {
        width: 100% !important;
        min-width: 0 !important;
        max-width: 100% !important;

        padding-left: 10px !important;
        padding-right: 10px !important;

        font-size: 13px !important;

        white-space: nowrap !important;

        box-sizing: border-box !important;
    }


    /* Никакой элемент header не может расширить страницу */

    .header-inner > * {
        max-width: 100% !important;
    }

}
/* =========================================================
   MOBILE HEADER
   ========================================================= */

.mobile-header {
    display: none;
}

@media (max-width: 680px) {

    /* скрываем старый desktop header */
    .header-inner,
    .desktop-header,
    .main-header-inner {
        display: none !important;
    }

    .mobile-header {
        display: flex;
        flex-direction: column;

        width: 100%;
        max-width: 100%;

        padding: 20px 28px 22px;

        box-sizing: border-box;

        background: #03070b;

        border-bottom: 1px solid rgba(255,255,255,.08);
    }


    /* LOGO */

    .mobile-header-logo {
        margin-bottom: 18px;
    }

    .mobile-header-logo a {
        display: inline-block;

        color: #fff;

        font-size: 25px;
        font-weight: 800;

        letter-spacing: .22em;

        text-decoration: none;
    }

    .mobile-header-logo::after {
        content: "";

        display: block;

        width: 42px;
        height: 3px;

        margin-top: 10px;

        border-radius: 20px;

        background: #45b8ff;

        box-shadow: 0 0 12px rgba(69,184,255,.35);
    }


    /* LANGUAGES */

    .mobile-header-languages {
        display: flex;
        align-items: center;

        gap: 8px;

        width: 100%;

        margin-bottom: 14px;
    }

    .mobile-header-languages a {
        width: 48px;
        height: 48px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 12px;

        color: #8392a3;

        text-decoration: none;

        font-size: 14px;
        font-weight: 500;
    }

    .mobile-header-languages a.active {
        color: #fff;

        background: #111c25;
    }


    /* BUTTONS */

    .mobile-header-actions {
        display: grid;

        grid-template-columns: 1fr 1fr;

        gap: 10px;

        width: 100%;
    }

    .mobile-header-actions a {
        min-width: 0;

        height: 52px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 14px;

        text-decoration: none;

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

        white-space: nowrap;

        box-sizing: border-box;
    }

    .mobile-login {
        color: #fff;

        border: 1px solid rgba(255,255,255,.16);

        background: transparent;
    }

    .mobile-register {
        color: #06101a;

        background: linear-gradient(
            135deg,
            #5dafff,
            #72b8ff
        );
    }

}
/* =========================================================
   HEADER RESPONSIVE FIX
   ========================================================= */

.header-right {
    display: flex;
    align-items: center;
    gap: 18px;
}


/* Mobile hidden on desktop */

.mobile-header {
    display: none;
}


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

@media (max-width: 680px) {

    /* Полностью скрываем desktop header */

    .site-header > .container.nav {
        display: none !important;
    }


    .site-header {
        width: 100%;
        max-width: 100vw;

        overflow: visible;

        background: #03070b;

        border-bottom: 1px solid rgba(255,255,255,.08);
    }


    /* Mobile wrapper */

    .mobile-header {
        display: block;

        width: 100%;
        max-width: 100%;

        padding: 20px;

        box-sizing: border-box;
    }


    /* Logo */

    .mobile-header-top {
        display: flex;
        align-items: center;

        width: 100%;

        margin-bottom: 18px;
    }

    .mobile-header-logo {
        position: relative;

        display: inline-block;

        padding-bottom: 12px;

        color: #fff;

        font-size: 24px;
        font-weight: 800;

        letter-spacing: .22em;

        text-decoration: none;
    }

    .mobile-header-logo::after {
        content: "";

        position: absolute;

        left: 0;
        bottom: 0;

        width: 42px;
        height: 3px;

        border-radius: 999px;

        background: #4ab8ff;

        box-shadow: 0 0 12px rgba(74,184,255,.35);
    }


    /* Languages */

    .mobile-header-languages {
        display: grid;

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

        gap: 8px;

        width: 100%;

        margin-bottom: 12px;
    }

    .mobile-header-languages a {
        height: 46px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 12px;

        color: #8291a1;

        text-decoration: none;

        font-size: 14px;
        font-weight: 600;

        background: transparent;
    }

    .mobile-header-languages a.active {
        color: #fff;

        background: #111c25;
    }


    /* Buttons */

    .mobile-header-actions {
        display: grid;

        grid-template-columns: 1fr 1fr;

        gap: 10px;

        width: 100%;
    }

    .mobile-account-menu {
        position: relative;

        min-width: 0;
    }

    .mobile-login,
    .mobile-register {
        width: 100%;
        height: 52px;

        border-radius: 14px;

        font-size: 14px;
        font-weight: 800;

        cursor: pointer;

        box-sizing: border-box;
    }

    .mobile-login {
        color: #fff;

        border: 1px solid rgba(255,255,255,.16);

        background: transparent;
    }

    .mobile-register {
        color: #06101a;

        border: 0;

        background: #68afff;
    }


    /* Dropdown */

    .mobile-account-dropdown {
        position: absolute;

        top: calc(100% + 8px);
        left: 0;

        z-index: 1000;

        display: none;

        width: min(290px, calc(100vw - 40px));

        padding: 8px;

        border: 1px solid rgba(255,255,255,.10);
        border-radius: 16px;

        background: #091018;

        box-shadow:
            0 20px 50px rgba(0,0,0,.45);
    }

    .mobile-account-menu:last-child
    .mobile-account-dropdown {
        left: auto;
        right: 0;
    }

    .mobile-account-menu.open
    .mobile-account-dropdown {
        display: block;
    }


    .mobile-account-dropdown a {
        display: grid;

        grid-template-columns: 38px 1fr;

        gap: 10px;

        align-items: center;

        padding: 12px;

        border-radius: 11px;

        color: #fff;

        text-decoration: none;
    }

    .mobile-account-dropdown a:hover {
        background: rgba(255,255,255,.05);
    }

    .mobile-account-dropdown span {
        width: 34px;
        height: 34px;

        display: flex;
        align-items: center;
        justify-content: center;

        border-radius: 10px;

        color: #68afff;

        background: rgba(104,175,255,.08);
    }

    .mobile-account-dropdown strong {
        display: block;

        margin-bottom: 2px;

        font-size: 13px;
    }

    .mobile-account-dropdown small {
        display: block;

        color: #7f94a7;

        font-size: 11px;
        line-height: 1.35;
    }

}

/* =========================================================
   MOBILE DRAWER — FITS ONE SCREEN
   ========================================================= */

.mobile-menu-overlay,
.mobile-drawer {
    display: none;
}

@media (max-width: 680px) {

    /* Desktop header */
    .site-header > .container.nav {
        display: none !important;
    }

    /* Mobile header */
    .mobile-header {
        display: block;
        width: 100%;
        padding: 18px 20px;
        background: #03070b;
        border-bottom: 1px solid rgba(255,255,255,.08);
        box-sizing: border-box;
    }

    .mobile-header-top {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        margin: 0;
    }

    .mobile-header-logo {
        position: relative;
        display: inline-block;
        padding-bottom: 11px;
        color: #fff;
        font-size: 24px;
        font-weight: 800;
        letter-spacing: .22em;
        text-decoration: none;
    }

    .mobile-header-logo::after {
        content: "";
        position: absolute;
        left: 0;
        bottom: 0;
        width: 42px;
        height: 3px;
        border-radius: 999px;
        background: #4ab8ff;
    }

    /* Burger */
    .mobile-menu-toggle {
        width: 46px;
        height: 46px;
        flex: 0 0 46px;
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        gap: 5px;
        padding: 0;
        border: 1px solid rgba(255,255,255,.10);
        border-radius: 13px;
        background: rgba(255,255,255,.025);
        cursor: pointer;
    }

    .mobile-menu-toggle span {
        width: 19px;
        height: 2px;
        border-radius: 999px;
        background: #fff;
    }

    /* Overlay */
    .mobile-menu-overlay {
        position: fixed;
        inset: 0;
        z-index: 9998;
        display: block;
        visibility: hidden;
        opacity: 0;
        background: rgba(0,0,0,.68);
        backdrop-filter: blur(2px);
        transition:
            opacity .25s ease,
            visibility .25s ease;
    }

    .mobile-menu-overlay.open {
        visibility: visible;
        opacity: 1;
    }

    /* Drawer */
    .mobile-drawer {
        position: fixed;
        top: 0;
        right: 0;
        z-index: 9999;

        display: flex;
        flex-direction: column;

        width: min(86vw, 360px);
        height: 100dvh;
        max-height: 100dvh;

        padding:
            max(14px, env(safe-area-inset-top))
            18px
            max(14px, env(safe-area-inset-bottom));

        box-sizing: border-box;

        background: #071019;
        border-left: 1px solid rgba(255,255,255,.08);
        box-shadow: -25px 0 70px rgba(0,0,0,.5);

        overflow: hidden;

        transform: translateX(100%);
        transition:
            transform .28s cubic-bezier(.22,.8,.3,1);
    }

    .mobile-drawer.open {
        transform: translateX(0);
    }

    body.mobile-menu-open {
        overflow: hidden;
        touch-action: none;
    }

    /* Drawer header */
    .mobile-drawer-head {
        flex: 0 0 auto;
        display: flex;
        align-items: center;
        justify-content: space-between;
        min-height: 44px;
        margin-bottom: 10px;
    }

    .mobile-drawer-logo {
        color: #fff;
        font-size: 19px;
        font-weight: 800;
        letter-spacing: .20em;
        text-decoration: none;
    }

    .mobile-drawer-close {
        width: 40px;
        height: 40px;
        display: flex;
        align-items: center;
        justify-content: center;
        padding: 0;
        border: 1px solid rgba(255,255,255,.09);
        border-radius: 12px;
        color: #fff;
        background: rgba(255,255,255,.025);
        font-size: 26px;
        line-height: 1;
        cursor: pointer;
    }

    /* Main navigation */
    .mobile-drawer-nav {
        flex: 0 0 auto;
        display: grid;
        margin: 0;
        border-top: 1px solid rgba(255,255,255,.07);
    }

    .mobile-drawer-nav a {
        min-height: 40px;
        display: flex;
        align-items: center;
        padding: 0;
        border-bottom: 1px solid rgba(255,255,255,.07);
        color: #e9f0f6;
        text-decoration: none;
        font-size: 15px;
        font-weight: 700;
    }

    .mobile-drawer-nav a::after {
        content: "→";
        margin-left: auto;
        color: #68afff;
        font-size: 12px;
    }

    /* Languages */
    .mobile-drawer-languages {
        flex: 0 0 auto;
        display: grid;
        grid-template-columns: repeat(3, 1fr);
        gap: 6px;
        margin: 10px 0;
    }

    .mobile-drawer-languages a {
        height: 34px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 9px;
        color: #8598aa;
        background: rgba(255,255,255,.025);
        text-decoration: none;
        font-size: 11px;
        font-weight: 700;
    }

    .mobile-drawer-languages a.active {
        color: #fff;
        background: rgba(104,175,255,.12);
        border: 1px solid rgba(104,175,255,.18);
    }

    /* Account area */
    .mobile-drawer-account {
        flex: 0 0 auto;
        display: grid;
        gap: 9px;
        margin-top: auto;
    }

    .mobile-drawer-group {
        display: grid;
        gap: 5px;
    }

    .mobile-drawer-label {
        color: #687d8f;
        font-size: 8px;
        font-weight: 900;
        letter-spacing: .15em;
        text-transform: uppercase;
    }

    .mobile-drawer-account-row {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 6px;
    }

    .mobile-drawer-account-row a {
        height: 38px;
        display: flex;
        align-items: center;
        justify-content: center;
        border: 1px solid rgba(255,255,255,.09);
        border-radius: 10px;
        color: #fff;
        background: rgba(255,255,255,.025);
        text-decoration: none;
        font-size: 11px;
        font-weight: 800;
    }

    .mobile-drawer-account-row a.primary {
        color: #06101a;
        border-color: transparent;
        background: #68afff;
    }
}

/* Extra-short mobile screens */
@media (max-width: 680px) and (max-height: 650px) {
    .mobile-drawer {
        padding-top: 10px;
        padding-bottom: 10px;
    }

    .mobile-drawer-head {
        margin-bottom: 6px;
    }

    .mobile-drawer-nav a {
        min-height: 36px;
        font-size: 14px;
    }

    .mobile-drawer-languages {
        margin: 7px 0;
    }

    .mobile-drawer-languages a {
        height: 31px;
    }

    .mobile-drawer-account {
        gap: 6px;
    }

    .mobile-drawer-account-row a {
        height: 34px;
    }
}
/* =========================================================
   VLADIO NEWSROOM
   ========================================================= */

.news-page {
    background: #03070b;
    overflow: hidden;
}


/* HERO */

.news-hero {
    position: relative;
    padding: 125px 0 105px;

    border-bottom:
        1px solid rgba(255,255,255,.07);
}

.news-hero::before {
    content: "";

    position: absolute;
    width: 650px;
    height: 650px;

    right: -200px;
    top: -300px;

    border-radius: 50%;

    background:
        rgba(55,155,255,.10);

    filter: blur(130px);

    pointer-events: none;
}

.news-kicker,
.news-section-label {
    color: #68afff;

    font-size: 11px;
    font-weight: 900;

    letter-spacing: .17em;

    text-transform: uppercase;
}

.news-hero h1 {
    max-width: 900px;

    margin: 18px 0 22px;

    font-size:
        clamp(58px, 7vw, 104px);

    line-height: .91;

    letter-spacing: -.06em;
}

.news-hero p {
    max-width: 570px;

    margin: 0;

    color: #8da2b5;

    font-size: 18px;
    line-height: 1.65;
}


/* =========================================================
   FEATURED
   ========================================================= */

.news-featured {
    padding: 90px 0 110px;

    border-bottom:
        1px solid rgba(255,255,255,.07);
}

.news-section-label {
    margin-bottom: 25px;
}

.featured-article {
    display: grid;

    grid-template-columns:
        minmax(0, 1.08fr)
        minmax(380px, .92fr);

    min-height: 520px;

    border:
        1px solid rgba(255,255,255,.08);

    border-radius: 22px;

    overflow: hidden;

    background:
        #060d14;
}


/* IMAGE */

.featured-image {
    position: relative;

    min-height: 520px;

    display: flex;

    align-items: center;
    justify-content: center;

    overflow: hidden;

    background:
        radial-gradient(
            circle at 50% 55%,
            rgba(53,156,255,.14),
            transparent 42%
        ),
        #04090e;
}

.featured-image::after {
    content: "";

    position: absolute;
    inset: 0;

    border-right:
        1px solid rgba(255,255,255,.07);

    pointer-events: none;
}

.featured-image img {
    position: relative;

    z-index: 1;

    width: 82%;
    height: 82%;

    object-fit: contain;

    transition:
        transform .45s ease;

    filter:
        drop-shadow(
            0 35px 60px rgba(0,0,0,.65)
        );
}

.featured-article:hover
.featured-image img {
    transform:
        scale(1.025)
        translateY(-4px);
}


/* CONTENT */

.featured-content {
    display: flex;

    flex-direction: column;

    justify-content: center;

    padding: 55px;
}

.news-meta {
    display: flex;

    align-items: center;

    gap: 18px;

    margin-bottom: 27px;
}

.news-category {
    color: #68afff;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .15em;
}

.news-meta time {
    color: #63788a;

    font-size: 11px;
}

.featured-content h2 {
    margin: 0;

    font-size:
        clamp(37px, 4vw, 56px);

    line-height: .98;

    letter-spacing: -.045em;
}

.featured-content p {
    max-width: 500px;

    margin: 24px 0 0;

    color: #8499ab;

    font-size: 15px;
    line-height: 1.65;
}

.news-read-more {
    display: inline-flex;

    align-items: center;

    gap: 12px;

    align-self: flex-start;

    margin-top: 34px;

    color: #fff;

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

    text-decoration: none;
}

.news-read-more span {
    color: #68afff;

    transition:
        transform .2s ease;
}

.news-read-more:hover span {
    transform:
        translateX(5px);
}


/* =========================================================
   NEWS LIST
   ========================================================= */

.news-list-section {
    padding: 105px 0;

    border-bottom:
        1px solid rgba(255,255,255,.07);

    background:
        #050b11;
}

.news-list-header {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 30px;

    margin-bottom: 20px;
}

.news-list-header
.news-section-label {
    margin: 0;
}

.news-count {
    color: #536879;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: .13em;
}


/* ROW */

.news-list {
    border-top:
        1px solid rgba(255,255,255,.10);
}

.news-row {
    display: grid;

    grid-template-columns:
        55px
        120px
        minmax(0,1fr)
        100px
        35px;

    align-items: center;

    gap: 20px;

    min-height: 135px;

    padding: 22px 5px;

    border-bottom:
        1px solid rgba(255,255,255,.08);

    text-decoration: none;

    transition:
        padding .25s ease,
        background .25s ease;
}

.news-row:hover {
    padding-left: 15px;
    padding-right: 15px;

    background:
        rgba(104,175,255,.025);
}

.news-number {
    color: #465b6c;

    font-size: 11px;
    font-weight: 800;
}

.news-row-category {
    color: #68afff;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .12em;
}

.news-row-content h3 {
    margin: 0;

    color: #f4f8fb;

    font-size: 21px;
    line-height: 1.15;

    letter-spacing: -.02em;
}

.news-row-content p {
    margin: 7px 0 0;

    color: #708597;

    font-size: 13px;
    line-height: 1.5;
}

.news-row time {
    color: #607486;

    font-size: 11px;

    text-align: right;
}

.news-arrow {
    color: #68afff;

    font-size: 17px;

    text-align: right;

    transition:
        transform .2s ease;
}

.news-row:hover
.news-arrow {
    transform:
        translateX(5px);
}


/* =========================================================
   BOTTOM
   ========================================================= */

.news-bottom {
    padding: 120px 0;

    text-align: center;

    background:
        radial-gradient(
            circle at 50% 120%,
            rgba(53,156,255,.15),
            transparent 45%
        );
}

.news-bottom h2 {
    max-width: 850px;

    margin: 14px auto 18px;

    font-size:
        clamp(48px, 6vw, 82px);

    line-height: .93;

    letter-spacing: -.055em;
}

.news-bottom p {
    max-width: 570px;

    margin: 0 auto;

    color: #8499ab;

    font-size: 16px;
    line-height: 1.6;
}


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

@media (max-width: 950px) {

    .featured-article {
        grid-template-columns: 1fr;
    }

    .featured-image {
        min-height: 440px;
    }

    .featured-image::after {
        border-right: 0;

        border-bottom:
            1px solid rgba(255,255,255,.07);
    }

    .news-row {
        grid-template-columns:
            40px
            100px
            minmax(0,1fr)
            80px
            25px;
    }

}


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

@media (max-width: 680px) {

    .news-hero {
        padding: 75px 0 65px;
    }

    .news-hero h1 {
        margin-top: 14px;

        font-size: 53px;
    }

    .news-hero p {
        font-size: 15px;
    }


    /* FEATURED */

    .news-featured {
        padding: 60px 0 70px;
    }

    .featured-article {
        min-height: 0;

        border-radius: 17px;
    }

    .featured-image {
        min-height: 330px;
    }

    .featured-image img {
        width: 90%;
        height: 90%;
    }

    .featured-content {
        padding: 28px 24px 32px;
    }

    .featured-content h2 {
        font-size: 35px;
    }

    .featured-content p {
        font-size: 14px;
    }


    /* LIST */

    .news-list-section {
        padding: 70px 0;
    }

    .news-count {
        display: none;
    }

    .news-row {
        position: relative;

        grid-template-columns:
            35px
            minmax(0,1fr)
            24px;

        gap: 10px;

        min-height: 125px;

        padding: 20px 0;
    }

    .news-row-category {
        position: absolute;

        left: 45px;
        top: 19px;
    }

    .news-row-content {
        padding-top: 20px;
    }

    .news-row-content h3 {
        font-size: 18px;
    }

    .news-row-content p {
        display: none;
    }

    .news-row time {
        position: absolute;

        left: 45px;
        bottom: 18px;

        text-align: left;
    }

    .news-arrow {
        grid-column: 3;
    }

    .news-row:hover {
        padding-left: 0;
        padding-right: 0;

        background: transparent;
    }


    /* BOTTOM */

    .news-bottom {
        padding: 80px 0;
    }

    .news-bottom h2 {
        font-size: 48px;
    }

}
.news-empty {
    padding: 70px 0;

    border-top:
        1px solid rgba(255,255,255,.10);

    border-bottom:
        1px solid rgba(255,255,255,.08);
}

.news-empty h3 {
    margin: 0;

    color: #f4f8fb;

    font-size: 24px;
    letter-spacing: -.025em;
}

.news-empty p {
    margin: 10px 0 0;

    color: #708597;

    font-size: 14px;
}
/* =========================================================
   CONTACT
   ========================================================= */

.contact-page {
    background: #03070b;
}

.contact-main {
    min-height: calc(100vh - 80px);
    padding: 110px 0 120px;

    display: flex;
    align-items: center;
}

.contact-layout {
    display: grid;

    grid-template-columns:
        minmax(0, .9fr)
        minmax(460px, 1.1fr);

    gap: clamp(70px, 9vw, 150px);

    align-items: start;
}


/* LEFT */

.contact-kicker {
    color: #68afff;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .18em;

    text-transform: uppercase;
}

.contact-intro h1 {
    margin: 18px 0 24px;

    font-size: clamp(64px, 7vw, 105px);
    line-height: .88;

    letter-spacing: -.065em;
}

.contact-lead {
    max-width: 470px;

    margin: 0;

    color: #8296a8;

    font-size: 17px;
    line-height: 1.65;
}


/* DETAILS */

.contact-details {
    margin-top: 70px;

    max-width: 470px;

    border-top:
        1px solid rgba(255,255,255,.09);
}

.contact-detail {
    display: grid;

    grid-template-columns: 110px 1fr;

    gap: 20px;

    padding: 21px 0;

    border-bottom:
        1px solid rgba(255,255,255,.08);
}

.contact-detail-label {
    color: #53697b;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .14em;
}

.contact-detail a,
.contact-detail > span:last-child {
    color: #eaf2f8;

    font-size: 13px;

    text-decoration: none;
}

.contact-detail a {
    transition: color .2s ease;
}

.contact-detail a:hover {
    color: #68afff;
}


/* =========================================================
   FORM
   ========================================================= */

.contact-form-wrap {
    border:
        1px solid rgba(255,255,255,.09);

    border-radius: 22px;

    background:
        #060d14;

    overflow: hidden;
}

.contact-form-head {
    display: flex;

    justify-content: space-between;
    align-items: center;

    padding: 20px 28px;

    border-bottom:
        1px solid rgba(255,255,255,.08);

    color: #728697;

    font-size: 9px;
    font-weight: 900;

    letter-spacing: .15em;
}

.contact-form-status {
    color: #68afff;
}


/* FORM */

.contact-form {
    padding: 34px 34px 38px;
}

.contact-field {
    margin-bottom: 26px;
}

.contact-field label {
    display: block;

    margin-bottom: 10px;

    color: #8498aa;

    font-size: 10px;
    font-weight: 800;

    letter-spacing: .06em;
}

.contact-field input,
.contact-field select,
.contact-field textarea {
    width: 100%;

    box-sizing: border-box;

    border: 0;

    border-bottom:
        1px solid rgba(255,255,255,.13);

    border-radius: 0;

    padding: 12px 0 14px;

    background: transparent;

    color: #f3f7fa;

    font: inherit;

    font-size: 15px;

    outline: none;

    transition:
        border-color .2s ease;
}

.contact-field input:focus,
.contact-field select:focus,
.contact-field textarea:focus {
    border-color: #68afff;
}

.contact-field input::placeholder,
.contact-field textarea::placeholder {
    color: #465968;
}

.contact-field textarea {
    resize: vertical;

    min-height: 120px;
}

.contact-field select {
    cursor: pointer;

    color-scheme: dark;
}


/* BUTTON */

.contact-submit {
    width: 100%;

    margin-top: 10px;

    padding: 18px 20px;

    display: flex;

    justify-content: space-between;
    align-items: center;

    border: 0;
    border-radius: 11px;

    background: #68afff;

    color: #03101a;

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

    cursor: pointer;

    transition:
        transform .2s ease,
        filter .2s ease;
}

.contact-submit:hover {
    transform: translateY(-2px);

    filter: brightness(1.07);
}

.contact-submit-arrow {
    font-size: 18px;

    transition: transform .2s ease;
}

.contact-submit:hover
.contact-submit-arrow {
    transform: translateX(4px);
}


/* =========================================================
   BUSINESS CTA
   ========================================================= */

.contact-business {
    padding: 100px 0;

    border-top:
        1px solid rgba(255,255,255,.08);

    background:
        radial-gradient(
            circle at 80% 120%,
            rgba(64,157,255,.12),
            transparent 40%
        ),
        #050b11;
}

.contact-business-inner {
    display: flex;

    align-items: flex-end;
    justify-content: space-between;

    gap: 60px;
}

.contact-business h2 {
    margin: 14px 0 0;

    font-size: clamp(44px, 5vw, 72px);

    line-height: .94;

    letter-spacing: -.05em;
}

.contact-business-link {
    flex: 0 0 auto;

    display: inline-flex;

    align-items: center;

    gap: 18px;

    padding: 17px 22px;

    border:
        1px solid rgba(104,175,255,.28);

    border-radius: 10px;

    color: #eaf5ff;

    background:
        rgba(104,175,255,.06);

    font-size: 12px;
    font-weight: 800;

    text-decoration: none;

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

.contact-business-link span {
    color: #68afff;

    font-size: 17px;
}

.contact-business-link:hover {
    border-color:
        rgba(104,175,255,.6);

    background:
        rgba(104,175,255,.1);
}


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

@media (max-width: 950px) {

    .contact-layout {
        grid-template-columns: 1fr;

        gap: 70px;
    }

    .contact-intro h1 {
        font-size: 80px;
    }

    .contact-details {
        margin-top: 45px;
    }

}


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

@media (max-width: 680px) {

    .contact-main {
        min-height: 0;

        padding: 70px 0 75px;
    }

    .contact-layout {
        gap: 55px;
    }

    .contact-intro h1 {
        margin-top: 14px;

        font-size: 57px;
    }

    .contact-lead {
        font-size: 15px;
    }

    .contact-details {
        margin-top: 40px;
    }

    .contact-detail {
        grid-template-columns: 90px 1fr;

        gap: 10px;
    }


    /* FORM */

    .contact-form-wrap {
        border-radius: 17px;
    }

    .contact-form-head {
        padding: 18px 20px;
    }

    .contact-form {
        padding: 27px 21px 25px;
    }


    /* BUSINESS */

    .contact-business {
        padding: 75px 0;
    }

    .contact-business-inner {
        align-items: stretch;

        flex-direction: column;

        gap: 35px;
    }

    .contact-business h2 {
        font-size: 45px;
    }

    .contact-business-link {
        justify-content: space-between;
    }

}

/* =========================================================
   CONTACT — DEVELOPMENT PAGE
   ========================================================= */

.contact-dev-page {
    min-height: calc(100vh - 80px);
    background: #03070b;
}

.contact-dev-section {
    min-height: calc(100vh - 80px);

    display: flex;
    align-items: center;

    padding: 100px 0;
}

.contact-dev-content {
    max-width: 900px;
}

.contact-dev-kicker {
    display: inline-block;

    margin-bottom: 20px;

    color: #68afff;

    font-size: 10px;
    font-weight: 900;

    letter-spacing: .18em;

    text-transform: uppercase;
}

.contact-dev-content h1 {
    max-width: 900px;

    margin: 0;

    font-size:
        clamp(58px, 7vw, 105px);

    line-height: .91;

    letter-spacing: -.06em;
}

.contact-dev-content > p {
    max-width: 600px;

    margin: 28px 0 55px;

    color: #8296a8;

    font-size: 17px;
    line-height: 1.65;
}


/* ROUTES */

.contact-dev-lines {
    max-width: 760px;

    border-top:
        1px solid rgba(255,255,255,.10);
}

.contact-dev-line {
    display: grid;

    grid-template-columns:
        45px
        170px
        minmax(0, 1fr);

    gap: 20px;

    align-items: center;

    min-height: 76px;

    border-bottom:
        1px solid rgba(255,255,255,.08);
}

.contact-dev-line > span {
    color: #4f6576;

    font-size: 10px;
    font-weight: 800;
}

.contact-dev-line strong {
    color: #f0f5f9;

    font-size: 14px;
}

.contact-dev-line small {
    color: #708597;

    font-size: 13px;
}


/* STATUS */

.contact-dev-status {
    display: inline-flex;

    align-items: center;

    gap: 10px;

    margin-top: 40px;

    color: #718798;

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

    letter-spacing: .03em;
}

.contact-dev-dot {
    width: 7px;
    height: 7px;

    border-radius: 50%;

    background: #68afff;

    box-shadow:
        0 0 14px rgba(104,175,255,.75);
}


/* MOBILE */

@media (max-width: 680px) {

    .contact-dev-section {
        min-height: auto;

        padding: 75px 0 90px;
    }

    .contact-dev-content h1 {
        font-size: 52px;
    }

    .contact-dev-content > p {
        margin: 22px 0 40px;

        font-size: 15px;
    }

    .contact-dev-line {
        grid-template-columns:
            35px
            minmax(0, 1fr);

        gap: 10px;

        padding: 18px 0;
    }

    .contact-dev-line strong {
        font-size: 14px;
    }

    .contact-dev-line small {
        grid-column: 2;

        margin-top: -4px;
    }

}

/* =====================================================
   VLADIO ACCOUNT EMOJI ICONS
===================================================== */

.account-icon {
    width: 46px;
    height: 46px;

    flex: 0 0 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    font-size: 22px;
    line-height: 1;

    border-radius: 14px;

    border: 1px solid rgba(126, 200, 255, 0.16);

    background:
        linear-gradient(
            135deg,
            rgba(126, 200, 255, 0.10),
            rgba(7, 27, 58, 0.35)
        );

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


/* Hover */

.account-dropdown a:hover .account-icon,
.mobile-drawer-account-links a:hover .account-icon {
    transform: translateY(-2px) scale(1.04);

    border-color: rgba(126, 200, 255, 0.45);

    background:
        linear-gradient(
            135deg,
            rgba(126, 200, 255, 0.18),
            rgba(35, 146, 220, 0.08)
        );

    box-shadow:
        0 0 24px rgba(70, 169, 255, 0.12);
}
/* =====================================================
   VLADIO ACCOUNT ICONS
===================================================== */

.account-icon {
    width: 46px;
    height: 46px;

    flex: 0 0 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 12px;

    border: 1px solid rgba(126, 200, 255, 0.16);

    background:
        linear-gradient(
            135deg,
            rgba(126, 200, 255, 0.10),
            rgba(7, 27, 58, 0.35)
        );

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


.account-icon svg {
    width: 22px;
    height: 22px;

    fill: none;

    stroke: #A6D8FF;
    stroke-width: 1.7;

    stroke-linecap: round;
    stroke-linejoin: round;

    transition:
        stroke 0.2s ease,
        transform 0.2s ease;
}


/* HOVER */

.account-dropdown a:hover .account-icon,
.mobile-drawer-account-links a:hover .account-icon {
    transform: translateY(-1px);

    border-color: rgba(126, 200, 255, 0.45);

    background:
        linear-gradient(
            135deg,
            rgba(126, 200, 255, 0.18),
            rgba(35, 146, 220, 0.08)
        );

    box-shadow:
        0 8px 24px rgba(70, 169, 255, 0.10);
}


.account-dropdown a:hover .account-icon svg,
.mobile-drawer-account-links a:hover .account-icon svg {
    stroke: #7EC8FF;

    transform: scale(1.05);
}
/* =====================================================
   VLADIO PROFILE BUTTON
   ===================================================== */

.vladio-profile-button {

    width: 46px;
    height: 46px;

    display: flex;
    align-items: center;
    justify-content: center;

    border-radius: 14px;

    text-decoration: none;

    color: var(--vladio-blue);

    background: rgba(126, 200, 255, 0.08);

    border: 1px solid rgba(126, 200, 255, 0.22);

    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        transform 0.2s ease;

}


.vladio-profile-button:hover {

    background: rgba(126, 200, 255, 0.16);

    border-color: rgba(126, 200, 255, 0.5);

    transform: translateY(-1px);

}


.vladio-profile-icon {

    width: 22px;
    height: 22px;

    display: flex;

}


.vladio-profile-icon svg {

    width: 100%;
    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}


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

.mobile-profile-link {

    display: flex;
    align-items: center;
    gap: 12px;

    padding: 14px 16px;

    border-radius: 14px;

    color: var(--vladio-blue);

    text-decoration: none;

    background: rgba(126, 200, 255, 0.08);

    border: 1px solid rgba(126, 200, 255, 0.18);

}


.mobile-profile-icon {

    width: 22px;
    height: 22px;

    display: flex;

}


.mobile-profile-icon svg {

    width: 100%;
    height: 100%;

    fill: none;

    stroke: currentColor;

    stroke-width: 1.8;

    stroke-linecap: round;

    stroke-linejoin: round;

}