:root{--vg-bg:#030a12;--vg-panel:rgba(8,21,35,.94);--vg-border:rgba(74,151,218,.22);--vg-border-strong:rgba(29,149,255,.52);--vg-blue:#179cff;--vg-blue-soft:rgba(23,156,255,.14);--vg-text:#f4f7fb;--vg-muted:#8694a8;--vg-line:rgba(255,255,255,.07)}
html,body.vg-direct-page{margin:0;min-height:100%;background:var(--vg-bg);color:var(--vg-text)}
body.vg-direct-page{font-family:"Josefin Sans","Helvetica Neue",Arial,sans-serif;overflow-x:hidden;overflow-y:auto}.vg-direct-page *{box-sizing:border-box}
.vg-direct-shell{position:relative;isolation:isolate;min-height:100vh;overflow-x:clip;overflow-y:visible;background:radial-gradient(circle at 18% 12%,rgba(17,118,212,.11),transparent 30%),radial-gradient(circle at 83% 34%,rgba(17,118,212,.08),transparent 27%),#030a12}
.vg-direct-shell::before{content:"";position:fixed;z-index:-1;top:78px;right:-120px;width:560px;height:380px;opacity:.28;pointer-events:none;background-image:radial-gradient(circle,rgba(47,158,255,.34) 1px,transparent 1.4px);background-size:16px 16px;transform:skewX(-18deg);mask-image:linear-gradient(to bottom left,#000,transparent 76%)}
.vg-direct-shell::after{content:"";position:fixed;z-index:-1;right:-150px;bottom:8%;width:720px;height:1px;pointer-events:none;background:linear-gradient(90deg,transparent,rgba(23,156,255,.38),transparent);transform:rotate(-38deg);transform-origin:center;box-shadow:0 0 28px rgba(23,156,255,.18)}
.vg-direct-header{position:relative;z-index:2;min-height:92px;padding:22px max(42px,calc((100vw - 1760px)/2 + 32px));display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--vg-line);background:rgba(2,9,16,.62);backdrop-filter:blur(10px)}
.vg-direct-brand{color:var(--vg-text);text-decoration:none;display:flex;flex-direction:column;gap:5px}.vg-direct-brand-name{font-size:20px;font-weight:600;letter-spacing:5px}.vg-direct-brand-tagline{color:#8793a2;font-size:8px;font-weight:600;letter-spacing:4px}
.vg-direct-back{min-height:42px;padding:0 18px;display:inline-flex;align-items:center;gap:12px;border:1px solid var(--vg-border);border-radius:8px;color:#c7d3e1;font-size:12px;font-weight:600;letter-spacing:1.5px;text-decoration:none;text-transform:uppercase;transition:border-color .18s ease,background-color .18s ease,color .18s ease,transform .18s ease}.vg-direct-back:hover{color:#fff;border-color:var(--vg-border-strong);background:var(--vg-blue-soft);transform:translateY(-1px)}
.vg-direct-main{position:relative;z-index:1;width:min(1760px,calc(100% - 64px));margin:0 auto;padding:38px 0 132px;display:grid;grid-template-columns:250px minmax(0,1fr) 310px;gap:30px}
.vg-direct-progress,.vg-direct-trust-card,.vg-direct-support-card,.vg-direct-card{background:var(--vg-panel);border:1px solid var(--vg-border);border-radius:16px;box-shadow:0 24px 65px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.018)}
.vg-direct-progress{position:sticky;top:118px;align-self:start;padding:30px 24px}.vg-direct-progress-item{display:flex;align-items:flex-start;gap:15px;color:#647386}.vg-direct-progress-item strong,.vg-direct-progress-item>div>span{display:block}.vg-direct-progress-item>div{padding-top:1px}.vg-direct-progress-item strong{margin-top:3px;color:#7c8999;font-size:14px;font-weight:600}.vg-direct-progress-item>div>span{margin-top:5px;color:#536174;font-size:12px}.vg-direct-progress-item.is-active strong{color:var(--vg-text)}.vg-direct-progress-item.is-active>div>span{color:var(--vg-muted)}
.vg-direct-progress-number,.vg-direct-section-number{flex:0 0 auto;width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #35516d;border-radius:50%;color:#74869a;font-size:11px;font-weight:700}.vg-direct-progress-item .vg-direct-progress-number{display:inline-flex;align-items:center;justify-content:center;line-height:1;padding:0;text-align:center}.vg-direct-progress-item.is-active .vg-direct-progress-number,.vg-direct-section-number{border-color:var(--vg-blue);background:var(--vg-blue);color:#fff;box-shadow:0 0 25px rgba(23,156,255,.22)}.vg-direct-progress-line{width:1px;height:34px;margin:6px 0 6px 16px;background:linear-gradient(180deg,#27425e,#173047)}
.vg-direct-content{min-width:0}.vg-direct-eyebrow,.vg-direct-trust-label{color:#83a6c5;font-size:11px;font-weight:700;letter-spacing:2.4px}.vg-direct-content>h1{margin:12px 0 8px;color:#f1eef2;font-size:clamp(36px,4vw,54px);font-weight:600;line-height:1.05;letter-spacing:-1.2px}.vg-direct-lead{margin:0 0 28px;color:#a5b1bf;font-size:16px}
.vg-direct-card{position:relative;margin-top:18px;padding:28px;overflow:hidden;transition:border-color .18s ease,box-shadow .18s ease}.vg-direct-card::before{content:"";position:absolute;left:28px;right:28px;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(77,174,255,.18),transparent)}.vg-direct-card:hover{border-color:rgba(74,151,218,.30);box-shadow:0 26px 70px rgba(0,0,0,.24),0 0 0 1px rgba(23,156,255,.018) inset}.vg-direct-card-header{margin-bottom:24px;display:flex;align-items:center;gap:14px}.vg-direct-card-header h2{margin:0;color:var(--vg-text);font-size:17px;font-weight:600}.vg-direct-card-header p{margin:4px 0 0;color:var(--vg-muted);font-size:12px}
.vg-direct-route-grid{display:grid;grid-template-columns:minmax(0,1fr) 44px minmax(0,1fr);gap:12px;align-items:end}.vg-direct-route-arrow{height:48px;display:flex;align-items:center;justify-content:center;color:#7b91a7;font-size:20px}.vg-direct-grid-4,.vg-direct-grid-2{display:grid;gap:14px;margin-top:16px}.vg-direct-grid-4{grid-template-columns:repeat(4,minmax(0,1fr))}.vg-direct-grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}
.vg-direct-field{display:block;min-width:0}.vg-direct-field-block{margin-top:16px}.vg-direct-field>span{display:block;margin-bottom:8px;color:#bac6d2;font-size:12px;font-weight:600}.vg-direct-field input,.vg-direct-field textarea{width:100%;min-height:48px;padding:0 15px;border:1px solid rgba(95,133,168,.30);border-radius:8px;outline:none;background:rgba(8,24,39,.94);color:#eef4fb;font:inherit;font-size:13px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.vg-direct-field textarea{min-height:84px;padding-top:13px;resize:vertical}.vg-direct-field input::placeholder,.vg-direct-field textarea::placeholder{color:#5f6f82}.vg-direct-field input:focus,.vg-direct-field textarea:focus{border-color:rgba(23,156,255,.82);background:rgba(7,25,42,1);box-shadow:0 0 0 3px rgba(23,156,255,.09)}
.vg-direct-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.vg-direct-option{min-height:50px;padding:0 15px;display:flex;align-items:center;gap:11px;border:1px solid rgba(95,133,168,.28);border-radius:8px;background:rgba(7,22,36,.70);color:#c7d3df;font-size:12px;font-weight:600;cursor:pointer;transition:border-color .16s ease,background-color .16s ease,box-shadow .16s ease}.vg-direct-option:hover{border-color:rgba(23,156,255,.55);background:rgba(23,156,255,.07);box-shadow:inset 0 0 0 1px rgba(23,156,255,.04)}.vg-direct-option input{accent-color:var(--vg-blue)}
.vg-direct-submit-row{padding:22px 0 34px;display:flex;align-items:center;justify-content:space-between}.vg-direct-submit-note{color:#67778a;font-size:10px;font-weight:600;letter-spacing:1.35px;text-transform:uppercase}.vg-direct-submit{min-width:190px;height:50px;padding:0 22px;border:1px solid rgba(36,168,255,.70);border-radius:8px;background:#128df0;color:#fff;font:inherit;font-size:12px;font-weight:700;letter-spacing:1.2px;cursor:not-allowed;opacity:.62;box-shadow:0 10px 30px rgba(18,141,240,.16)}.vg-direct-submit span{margin-left:12px}
.vg-direct-trust{position:sticky;top:118px;align-self:start;display:grid;gap:16px}.vg-direct-trust-card,.vg-direct-support-card{position:relative;overflow:hidden;padding:26px}.vg-direct-trust-card::after{content:"";position:absolute;right:-72px;top:-96px;width:210px;height:210px;border:1px solid rgba(23,156,255,.14);border-radius:50%;box-shadow:0 0 60px rgba(23,156,255,.05);pointer-events:none}.vg-direct-route-mark{height:18px;margin-bottom:22px;display:flex;align-items:center}.vg-direct-route-dot{width:7px;height:7px;border-radius:50%;background:var(--vg-blue);box-shadow:0 0 16px rgba(23,156,255,.8)}.vg-direct-route-line{width:74px;height:1px;margin:0 8px;background:linear-gradient(90deg,rgba(23,156,255,.85),rgba(23,156,255,.15))}.vg-direct-trust-card h2{margin:16px 0 24px;color:#f1edf0;font-size:28px;font-weight:600;line-height:1.18}.vg-direct-trust-card ul{margin:0;padding:0;list-style:none}.vg-direct-trust-card li{position:relative;margin:14px 0;padding-left:26px;color:#a9b6c4;font-size:12px;line-height:1.5}.vg-direct-trust-card li::before{content:"✓";position:absolute;left:0;top:-2px;width:18px;height:18px;display:inline-flex;align-items:center;justify-content:center;border-radius:50%;background:var(--vg-blue);color:#fff;font-size:10px;font-weight:700;box-shadow:0 0 18px rgba(23,156,255,.18)}.vg-direct-support-card>span,.vg-direct-support-card strong,.vg-direct-support-card a,.vg-direct-support-card small{display:block}.vg-direct-support-card>span{margin-bottom:14px;color:#718398;font-size:10px;font-weight:700;letter-spacing:2px}.vg-direct-support-card strong{margin-bottom:8px;color:#edf3f9;font-size:16px;font-weight:600}.vg-direct-support-card a{color:#8dc8f6;font-size:12px;text-decoration:none}.vg-direct-support-card small{margin-top:12px;color:#586a7e;font-size:10px;letter-spacing:.5px}
@media(max-width:1280px){.vg-direct-main{grid-template-columns:220px minmax(0,1fr)}.vg-direct-trust{display:none}.vg-direct-progress{top:108px}}
@media(max-width:900px){.vg-direct-header{padding:20px 22px}.vg-direct-main{width:min(100% - 32px,760px);grid-template-columns:1fr}.vg-direct-progress{display:none}.vg-direct-grid-4,.vg-direct-options{grid-template-columns:repeat(2,minmax(0,1fr))}.vg-direct-shell::before,.vg-direct-shell::after{opacity:.15}}
@media(max-width:620px){.vg-direct-brand-tagline{display:none}.vg-direct-back{padding:0 12px;font-size:10px}.vg-direct-main{width:min(100% - 24px,560px);padding-top:24px}.vg-direct-card{padding:20px}.vg-direct-route-grid,.vg-direct-grid-4,.vg-direct-grid-2,.vg-direct-options{grid-template-columns:1fr}.vg-direct-route-arrow{height:18px;transform:rotate(90deg)}.vg-direct-submit-row{align-items:stretch;flex-direction:column;gap:14px}.vg-direct-submit{width:100%}.vg-direct-submit-note{text-align:center;line-height:1.5}}

/* VirtuGlam Direct v1.1.0 - functional quote intake */
.vg-direct-form[hidden],.vg-direct-success[hidden],.vg-direct-form-message[hidden]{display:none!important}.vg-direct-honeypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important;opacity:0!important;pointer-events:none!important}.vg-direct-submit{cursor:pointer;opacity:1;transition:transform .16s ease,box-shadow .16s ease,background-color .16s ease,opacity .16s ease}.vg-direct-submit:hover:not(:disabled){transform:translateY(-1px);background:#179cff;box-shadow:0 14px 34px rgba(18,141,240,.25)}.vg-direct-submit:focus-visible{outline:none;box-shadow:0 0 0 3px rgba(23,156,255,.14),0 14px 34px rgba(18,141,240,.22)}.vg-direct-submit:disabled{cursor:wait;opacity:.65;transform:none}.vg-direct-submit-arrow{margin-left:12px}.vg-direct-form-message{margin-top:18px;padding:14px 16px;border-radius:8px;font-size:12px;line-height:1.55}.vg-direct-form-message.is-error{border:1px solid rgba(217,96,96,.34);background:rgba(140,42,42,.10);color:#e5b7b7}.vg-direct-form-message.is-info{border:1px solid rgba(23,156,255,.30);background:rgba(23,156,255,.08);color:#b8d9f3}.vg-direct-progress-item.is-complete .vg-direct-progress-number{border-color:rgba(23,156,255,.58);background:rgba(23,156,255,.12);color:#8dc8f6}.vg-direct-progress-item.is-complete strong{color:#9aabba}.vg-direct-success{position:relative;margin-top:18px;padding:38px;border:1px solid rgba(23,156,255,.34);border-radius:16px;background:linear-gradient(145deg,rgba(8,26,43,.98),rgba(6,19,32,.96));box-shadow:0 28px 78px rgba(0,0,0,.28),0 0 0 1px rgba(23,156,255,.025) inset;overflow:hidden}.vg-direct-success::before{content:"";position:absolute;right:-95px;top:-125px;width:280px;height:280px;border:1px solid rgba(23,156,255,.14);border-radius:50%;box-shadow:0 0 70px rgba(23,156,255,.06);pointer-events:none}.vg-direct-success-kicker{display:block;color:#7fb6df;font-size:10px;font-weight:700;letter-spacing:2.2px}.vg-direct-success h2{margin:14px 0 10px;color:#f2f6fb;font-size:30px;font-weight:600;line-height:1.18}.vg-direct-success>p{max-width:680px;margin:0;color:#9dabb9;font-size:14px;line-height:1.65}.vg-direct-success-reference{width:min(440px,100%);margin-top:28px;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid rgba(95,133,168,.30);border-radius:9px;background:rgba(5,18,30,.78)}.vg-direct-success-reference span{color:#6f8296;font-size:10px;font-weight:700;letter-spacing:1.6px;text-transform:uppercase}.vg-direct-success-reference strong{color:#8ecbfa;font-size:16px;font-weight:700;letter-spacing:.7px}.vg-direct-success .vg-direct-success-note{margin-top:14px;color:#66788b;font-size:11px}.vg-direct-field input:invalid:not(:placeholder-shown){border-color:rgba(165,103,103,.44)}
@media(max-width:620px){.vg-direct-success{padding:26px 22px}.vg-direct-success h2{font-size:25px}.vg-direct-success-reference{align-items:flex-start;flex-direction:column;gap:8px}}

/* VirtuGlam Direct v1.1.1 - premium scroll cue */
.vg-direct-scroll-cue{position:fixed;left:50%;bottom:24px;z-index:40;display:flex;align-items:center;flex-direction:column;gap:8px;padding:8px 14px;border:0;background:transparent;color:#72869a;font:inherit;font-size:9px;font-weight:700;letter-spacing:2.1px;text-transform:uppercase;cursor:pointer;opacity:1;transform:translate(-50%,0);transition:opacity .24s ease,transform .24s ease,color .18s ease;filter:drop-shadow(0 4px 12px rgba(0,0,0,.35))}.vg-direct-scroll-cue:hover{color:#9fc8e8}.vg-direct-scroll-cue:focus-visible{outline:1px solid rgba(23,156,255,.58);outline-offset:5px;border-radius:4px}.vg-direct-scroll-cue-line{position:relative;width:1px;height:20px;background:linear-gradient(180deg,rgba(23,156,255,.9),rgba(23,156,255,.12));overflow:hidden}.vg-direct-scroll-cue-line::after{content:"";position:absolute;left:0;top:-8px;width:1px;height:8px;background:#9ed6ff;box-shadow:0 0 8px rgba(23,156,255,.65);animation:vg-direct-scroll-cue 1.8s ease-in-out infinite}.vg-direct-scroll-cue.is-up .vg-direct-scroll-cue-line{transform:rotate(180deg)}.vg-direct-scroll-cue.is-hidden{opacity:0;transform:translate(-50%,8px);pointer-events:none}@keyframes vg-direct-scroll-cue{0%{transform:translateY(0);opacity:0}28%{opacity:1}75%{opacity:.8}100%{transform:translateY(28px);opacity:0}}@media(max-width:900px){.vg-direct-scroll-cue{display:none}}@media(prefers-reduced-motion:reduce){.vg-direct-scroll-cue,.vg-direct-scroll-cue-line::after{transition:none;animation:none}}

/* VirtuGlam Direct v1.2.0 - persistent customer portal */
.vg-direct-portal-route{width:min(680px,100%);margin-top:18px;padding:16px 18px;display:grid;grid-template-columns:minmax(0,1fr) 34px minmax(0,1fr);gap:12px;align-items:center;border:1px solid rgba(95,133,168,.24);border-radius:9px;background:rgba(5,18,30,.55)}
.vg-direct-portal-route>div{min-width:0}.vg-direct-portal-route span{display:block;margin-bottom:7px;color:#6f8296;font-size:9px;font-weight:700;letter-spacing:1.5px;text-transform:uppercase}.vg-direct-portal-route strong{display:block;color:#dce7f0;font-size:13px;font-weight:600;line-height:1.45}.vg-direct-portal-route-arrow{margin:0!important;color:#64829b!important;font-size:17px!important;text-align:center}
.vg-direct-portal-quote{width:min(680px,100%);margin-top:18px;padding:20px;display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr);gap:16px;border:1px solid rgba(23,156,255,.40);border-radius:10px;background:linear-gradient(135deg,rgba(12,39,62,.92),rgba(6,24,39,.92));box-shadow:0 16px 44px rgba(0,0,0,.18)}
.vg-direct-portal-quote>div>span{display:block;margin-bottom:8px;color:#7592aa;font-size:9px;font-weight:700;letter-spacing:1.55px;text-transform:uppercase}.vg-direct-portal-price strong{display:block;color:#f5f8fb;font-size:29px;font-weight:700;letter-spacing:.2px}.vg-direct-portal-validity strong{display:block;color:#c8d7e3;font-size:13px;font-weight:600;line-height:1.4}.vg-direct-portal-quote>p{grid-column:1/-1;margin:2px 0 0;padding-top:16px;border-top:1px solid rgba(95,133,168,.20);color:#aabac7;font-size:12px;line-height:1.65}
.vg-direct-portal-route[hidden],.vg-direct-portal-quote[hidden],.vg-direct-portal-quote>p[hidden]{display:none!important}
@media(max-width:620px){.vg-direct-portal-route{grid-template-columns:1fr}.vg-direct-portal-route-arrow{transform:rotate(90deg)}.vg-direct-portal-quote{grid-template-columns:1fr}.vg-direct-portal-price strong{font-size:25px}}

/* VirtuGlam Direct v1.3.3 - final portal action */
#vg-direct-portal-complete-actions {
    margin-top: 18px;
}

#vg-direct-portal-close {
    appearance: none;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 168px;
    height: 46px;
    padding: 0 22px;
    border: 1px solid rgba(35, 156, 255, .34);
    border-radius: 10px;
    background:
        linear-gradient(180deg, rgba(16, 37, 55, .96) 0%, rgba(8, 24, 38, .96) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .035),
        0 10px 28px rgba(0, 0, 0, .18);
    color: #eaf6ff;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    cursor: pointer;
    transition:
        border-color .18s ease,
        background .18s ease,
        box-shadow .18s ease,
        transform .18s ease;
}

#vg-direct-portal-close::after {
    content: "×";
    margin-left: 12px;
    color: #239cff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
}

#vg-direct-portal-close:hover {
    border-color: rgba(35, 156, 255, .72);
    background:
        linear-gradient(180deg, rgba(18, 47, 70, .98) 0%, rgba(9, 29, 46, .98) 100%);
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .05),
        0 12px 32px rgba(0, 0, 0, .24),
        0 0 24px rgba(35, 156, 255, .08);
    transform: translateY(-1px);
}

#vg-direct-portal-close:active {
    transform: translateY(0);
}

#vg-direct-portal-close:focus-visible {
    outline: 2px solid rgba(35, 156, 255, .78);
    outline-offset: 3px;
}


/* VirtuGlam Direct v1.3.4 - premium portal action buttons */
#vg-direct-portal-actions,
#vg-direct-portal-complete-actions {
    display: flex;
    gap: 12px;
    flex-wrap: wrap;
    align-items: center;
}

#vg-direct-portal-accept,
#vg-direct-portal-decline,
#vg-direct-portal-close {
    appearance: none;
    -webkit-appearance: none;
    display: inline-flex !important;
    align-items: center;
    justify-content: center;
    min-width: 168px;
    height: 46px;
    padding: 0 22px;
    border-radius: 10px;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    text-decoration: none;
    cursor: pointer;
    transition:
        border-color .18s ease,
        background .18s ease,
        box-shadow .18s ease,
        transform .18s ease,
        color .18s ease;
}

/* primary */
#vg-direct-portal-accept,
#vg-direct-portal-close {
    border: 1px solid rgba(35, 156, 255, .34) !important;
    color: #eaf6ff !important;
    background: linear-gradient(180deg, rgba(16, 37, 55, .96) 0%, rgba(8, 24, 38, .96) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .035),
        0 10px 28px rgba(0, 0, 0, .18) !important;
}

#vg-direct-portal-accept:hover,
#vg-direct-portal-close:hover {
    border-color: rgba(35, 156, 255, .72) !important;
    background: linear-gradient(180deg, rgba(18, 47, 70, .98) 0%, rgba(9, 29, 46, .98) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .05),
        0 12px 32px rgba(0, 0, 0, .24),
        0 0 24px rgba(35, 156, 255, .08) !important;
    transform: translateY(-1px);
}

#vg-direct-portal-accept:active,
#vg-direct-portal-close:active {
    transform: translateY(0);
}

/* secondary */
#vg-direct-portal-decline {
    border: 1px solid rgba(120, 138, 160, .26) !important;
    color: #d7e3ee !important;
    background: linear-gradient(180deg, rgba(14, 26, 39, .96) 0%, rgba(8, 18, 29, .96) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .025),
        0 10px 24px rgba(0, 0, 0, .16) !important;
}

#vg-direct-portal-decline:hover {
    border-color: rgba(154, 170, 188, .44) !important;
    color: #edf5fb !important;
    background: linear-gradient(180deg, rgba(18, 31, 45, .98) 0%, rgba(11, 21, 32, .98) 100%) !important;
    box-shadow:
        inset 0 1px 0 rgba(255, 255, 255, .04),
        0 12px 28px rgba(0, 0, 0, .22) !important;
    transform: translateY(-1px);
}

#vg-direct-portal-decline:active {
    transform: translateY(0);
}

/* x only for close */
#vg-direct-portal-close::after {
    content: "×";
    margin-left: 12px;
    color: #239cff;
    font-size: 16px;
    font-weight: 400;
    line-height: 1;
}

#vg-direct-portal-accept:focus-visible,
#vg-direct-portal-decline:focus-visible,
#vg-direct-portal-close:focus-visible {
    outline: 2px solid rgba(35, 156, 255, .78);
    outline-offset: 3px;
}

/* VirtuGlam Direct v1.4.0 - B2B company identity and route sites */
.vg-direct-route-grid-spaced{margin-top:16px}.vg-direct-address-grid{display:grid;grid-template-columns:minmax(0,1.7fr) minmax(130px,.75fr) minmax(0,1.1fr);gap:14px;margin-top:16px}.vg-direct-field select{width:100%;min-height:48px;padding:0 42px 0 15px;border:1px solid rgba(95,133,168,.30);border-radius:8px;outline:none;background:rgba(8,24,39,.94);color:#eef4fb;font:inherit;font-size:13px;transition:border-color .16s ease,box-shadow .16s ease,background-color .16s ease}.vg-direct-field select:focus{border-color:rgba(23,156,255,.82);background:rgba(7,25,42,1);box-shadow:0 0 0 3px rgba(23,156,255,.09)}.vg-direct-field select:invalid{color:#5f6f82}.vg-direct-field select option{background:#081827;color:#eef4fb}.vg-direct-field input[name="contact_vat_number"]{text-transform:uppercase;letter-spacing:.35px}@media(max-width:900px){.vg-direct-address-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.vg-direct-address-grid .vg-direct-field:first-child{grid-column:1/-1}}@media(max-width:620px){.vg-direct-address-grid{grid-template-columns:1fr}.vg-direct-address-grid .vg-direct-field:first-child{grid-column:auto}}


/* VirtuGlam Direct v1.4.1 - terminal action visibility hardening */
#vg-direct-portal-actions[hidden],
#vg-direct-portal-complete-actions[hidden] {
    display: none !important;
}

/* VirtuGlam Direct v1.5.2 - multilingual customer journey */
.vg-direct-header-actions{display:flex;align-items:center;justify-content:flex-end;gap:14px;min-width:0}
.vg-direct-language-switcher{display:flex;align-items:center;gap:9px;padding:7px 11px;border:1px solid rgba(63,174,255,.20);border-radius:999px;background:rgba(2,10,20,.58);box-shadow:0 12px 36px rgba(0,0,0,.22),inset 0 1px 0 rgba(255,255,255,.025);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
.vg-direct-language-switcher a{position:relative;color:rgba(202,218,233,.50);font-size:9px;font-weight:700;line-height:1.1;letter-spacing:.13em;text-decoration:none;text-transform:uppercase;transition:color .18s ease,text-shadow .18s ease}
.vg-direct-language-switcher a+a::before{content:"·";position:absolute;left:-7px;color:rgba(77,155,211,.32);pointer-events:none}
.vg-direct-language-switcher a:hover{color:#f6fbff}.vg-direct-language-switcher a.is-active{color:#6dd9ff;text-shadow:0 0 14px rgba(45,180,255,.38)}
@media(max-width:760px){.vg-direct-header{gap:18px}.vg-direct-header-actions{gap:9px}.vg-direct-language-switcher{gap:7px;padding:6px 8px}.vg-direct-language-switcher a{font-size:8px;letter-spacing:.08em}.vg-direct-language-switcher a+a::before{left:-6px}.vg-direct-back{min-height:36px;padding:0 10px;gap:7px;font-size:9px;letter-spacing:1px}}
@media(max-width:520px){.vg-direct-header{align-items:flex-start;flex-direction:column}.vg-direct-header-actions{width:100%;justify-content:space-between}.vg-direct-language-switcher{order:1}.vg-direct-back{order:2}.vg-direct-brand-name{font-size:17px;letter-spacing:4px}}

/* VirtuGlam Direct v1.6.2a - vehicle media fit hotfix */
.vg-direct-location-group{display:grid;grid-template-columns:minmax(150px,.44fr) minmax(0,1.56fr);gap:10px;align-items:end}
.vg-direct-country-field select{font-weight:700;letter-spacing:.15px}
.vg-direct-options{grid-template-columns:repeat(5,minmax(0,1fr))}
.vg-direct-pricing-card{border-color:rgba(23,156,255,.30);background:linear-gradient(150deg,rgba(8,23,38,.97),rgba(5,17,29,.96))}
.vg-direct-pricing-status{min-height:48px;padding:13px 15px;display:flex;align-items:center;gap:11px;border:1px solid rgba(95,133,168,.24);border-radius:9px;background:rgba(4,17,29,.62);color:#96a8ba;font-size:12px;line-height:1.45;transition:border-color .18s ease,background .18s ease,color .18s ease}
.vg-direct-pricing-status-dot{width:8px;height:8px;flex:0 0 auto;border-radius:50%;background:#60768b;box-shadow:0 0 0 5px rgba(96,118,139,.08)}
.vg-direct-pricing-status.is-loading{border-color:rgba(23,156,255,.26);color:#b9d8ef;background:rgba(15,65,101,.13)}
.vg-direct-pricing-status.is-loading .vg-direct-pricing-status-dot{background:#179cff;box-shadow:0 0 18px rgba(23,156,255,.55);animation:vg-direct-pricing-pulse 1.2s ease-in-out infinite}
.vg-direct-pricing-status.is-ready{border-color:rgba(55,181,129,.28);color:#bfe8d7;background:rgba(37,120,88,.10)}
.vg-direct-pricing-status.is-ready .vg-direct-pricing-status-dot{background:#38c891;box-shadow:0 0 16px rgba(56,200,145,.42)}
.vg-direct-pricing-status.is-warning{border-color:rgba(219,168,71,.30);color:#dfc795;background:rgba(120,82,16,.10)}
.vg-direct-pricing-status.is-warning .vg-direct-pricing-status-dot{background:#d7a33f;box-shadow:0 0 15px rgba(215,163,63,.32)}
.vg-direct-pricing-status.is-error{border-color:rgba(217,96,96,.32);color:#e3b3b3;background:rgba(140,42,42,.10)}
.vg-direct-pricing-status.is-error .vg-direct-pricing-status-dot{background:#d96767;box-shadow:0 0 15px rgba(217,103,103,.30)}
@keyframes vg-direct-pricing-pulse{0%,100%{opacity:.45;transform:scale(.9)}50%{opacity:1;transform:scale(1.15)}}
.vg-direct-pricing-result{margin-top:16px}.vg-direct-pricing-result[hidden]{display:none!important}
.vg-direct-pricing-route-summary{padding:14px 16px;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;border:1px solid rgba(95,133,168,.20);border-radius:10px;background:rgba(3,14,24,.55)}
.vg-direct-pricing-route-summary span,.vg-direct-selected-summary>div>span{display:block;margin-bottom:6px;color:#6d8296;font-size:9px;font-weight:700;letter-spacing:1.45px;text-transform:uppercase}
.vg-direct-pricing-route-summary strong{color:#dce7f0;font-size:13px;font-weight:650}
.vg-direct-pricing-group-header{margin:24px 0 13px;display:flex;align-items:flex-end;justify-content:space-between;gap:20px}
.vg-direct-pricing-kicker{display:block;margin-bottom:5px;color:#6ba9d5;font-size:9px;font-weight:700;letter-spacing:1.8px}.vg-direct-pricing-group-header h3{margin:0;color:#f1f5f9;font-size:18px;font-weight:600}.vg-direct-pricing-validity{color:#64778a;font-size:10px;text-align:right}
.vg-direct-vehicle-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.vg-direct-vehicle-card{position:relative;min-width:0;padding:0;overflow:hidden;text-align:left;border:1px solid rgba(95,133,168,.24);border-radius:16px;background:linear-gradient(165deg,rgba(6,19,31,.98),rgba(3,13,23,.98));color:#eef4fb;font:inherit;cursor:pointer;box-shadow:inset 0 1px 0 rgba(255,255,255,.018);transition:border-color .18s ease,transform .18s ease,box-shadow .18s ease,background .18s ease}
.vg-direct-vehicle-card:hover{transform:translateY(-2px);border-color:rgba(23,156,255,.48);box-shadow:0 20px 42px rgba(0,0,0,.24),0 0 28px rgba(23,156,255,.05)}
.vg-direct-vehicle-card.is-selected{border-color:rgba(23,156,255,.95);background:linear-gradient(165deg,rgba(8,29,47,.99),rgba(4,16,28,.99));box-shadow:0 20px 50px rgba(0,0,0,.28),0 0 0 1px rgba(23,156,255,.14) inset,0 0 34px rgba(23,156,255,.08)}
.vg-direct-vehicle-card:focus-visible{outline:2px solid rgba(23,156,255,.75);outline-offset:3px}
.vg-direct-vehicle-media{position:relative;width:100%;height:auto;aspect-ratio:2/1;padding:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:linear-gradient(180deg,rgba(4,19,34,.98),rgba(6,30,49,.98));border-bottom:1px solid rgba(95,133,168,.13)}
.vg-direct-vehicle-media img{position:relative;z-index:1;display:block;width:100%;height:100%;object-fit:contain;object-position:center center;filter:none}
.vg-direct-vehicle-content{padding:18px 20px 19px}.vg-direct-vehicle-top{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.vg-direct-vehicle-top>div{min-width:0}.vg-direct-vehicle-top strong:not(.vg-direct-vehicle-price){display:block;color:#f0f5fb;font-size:17px;font-weight:800;line-height:1.25;letter-spacing:.01em;text-transform:uppercase}
.vg-direct-vehicle-price{flex:0 0 auto;color:#f8fbff;font-size:24px;font-weight:800;letter-spacing:.1px}.vg-direct-vehicle-badges{margin-top:11px;display:flex;gap:8px;flex-wrap:wrap}.vg-direct-badge{display:inline-flex;align-items:center;min-height:34px;padding:0 14px;border-radius:999px;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}.vg-direct-badge.is-recommended{border:1px solid rgba(44,181,255,.34);background:rgba(23,156,255,.12);color:#82cfff}.vg-direct-badge.is-selected{border:1px solid rgba(67,205,151,.30);background:rgba(55,181,129,.11);color:#8be0be}.vg-direct-badge[hidden]{display:none!important}
.vg-direct-vehicle-meta,.vg-direct-vehicle-dimensions{margin:18px 0 0;color:#91a7bb;font-size:12px;line-height:1.55;font-weight:600;letter-spacing:.02em}.vg-direct-vehicle-dimensions{margin-top:6px;color:#748aa0;font-weight:500}
.vg-direct-selected-summary{margin-top:14px;padding:17px 18px;display:flex;align-items:center;justify-content:space-between;gap:20px;border:1px solid rgba(23,156,255,.34);border-radius:12px;background:linear-gradient(135deg,rgba(11,43,68,.78),rgba(5,24,40,.78))}.vg-direct-selected-summary[hidden]{display:none!important}.vg-direct-selected-summary strong{display:block;color:#fff;font-size:27px;font-weight:700}.vg-direct-selected-surcharges{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}.vg-direct-selected-surcharges span{padding:6px 8px;border:1px solid rgba(95,133,168,.22);border-radius:999px;background:rgba(5,18,30,.48);color:#91a9bc;font-size:9px;font-weight:600}
@media(max-width:1180px){.vg-direct-options{grid-template-columns:repeat(3,minmax(0,1fr))}.vg-direct-vehicle-options{grid-template-columns:1fr}.vg-direct-vehicle-card{display:grid;grid-template-columns:minmax(300px,42%) minmax(0,1fr);align-items:center}.vg-direct-vehicle-media{height:auto;min-height:0;aspect-ratio:2/1;border-right:1px solid rgba(95,133,168,.13);border-bottom:0}.vg-direct-vehicle-media img{height:100%;object-fit:contain}}
@media(max-width:900px){.vg-direct-location-group{grid-template-columns:140px minmax(0,1fr)}.vg-direct-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:620px){.vg-direct-location-group{grid-template-columns:1fr}.vg-direct-country-field{max-width:none}.vg-direct-pricing-route-summary{grid-template-columns:1fr}.vg-direct-pricing-group-header{align-items:flex-start;flex-direction:column;gap:7px}.vg-direct-pricing-validity{text-align:left}.vg-direct-vehicle-card{display:block}.vg-direct-vehicle-media{height:auto;min-height:0;aspect-ratio:2/1;border-right:0;border-bottom:1px solid rgba(95,133,168,.13)}.vg-direct-vehicle-content{padding:16px}.vg-direct-vehicle-top strong:not(.vg-direct-vehicle-price){font-size:15px}.vg-direct-vehicle-price{font-size:20px}.vg-direct-badge{min-height:30px;padding:0 12px;font-size:10px}.vg-direct-selected-summary{align-items:flex-start;flex-direction:column}.vg-direct-selected-surcharges{justify-content:flex-start}.vg-direct-options{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.vg-direct-pricing-status.is-loading .vg-direct-pricing-status-dot{animation:none}.vg-direct-vehicle-card{transition:none}}
