/*
LAZARVS — Home (2026 landing page)
Classes from the "Lazarvs landing page" design; layout and colors live inline in the markup.
********************************************************************/
html{scroll-behavior:smooth}
body{margin:0;background:#f6f8fc}
a{color:#143d55}a:hover{color:#4f46e5}
img{max-width:100%}
.lz-btn{transition:transform 240ms cubic-bezier(.22,1,.36,1),box-shadow 240ms cubic-bezier(.22,1,.36,1),background-color 240ms}
.lz-btn:hover{transform:translateY(-2px);background:#143d65 !important;box-shadow:0 22px 38px rgba(20,61,85,.34) !important;color:#fff !important}
.lz-btn-inv:hover{transform:translateY(-2px);background:#eef3fb !important;color:#143d55 !important}
.lz-btn:focus-visible,.lz-pill:focus-visible,.lz-flag:focus-visible{outline:2px solid #143d55;outline-offset:3px}
.lz-btn-inv:focus-visible{outline:2px solid #fff;outline-offset:3px}
.lz-card{transition:transform 320ms cubic-bezier(.22,1,.36,1),box-shadow 320ms cubic-bezier(.22,1,.36,1)}
.lz-card:hover{transform:translateY(-4px);box-shadow:0 16px 48px rgba(15,23,42,.1) !important}
.lz-pill:hover{color:#143d55 !important;border-color:#dbe6f5 !important;background:#fff !important;box-shadow:0 8px 18px rgba(29,78,216,.12)}
.lz-flag{transition:transform 240ms cubic-bezier(.22,1,.36,1)}
.lz-flag:hover{transform:translateY(-2px)}
.lz-foot a{color:#fff}.lz-foot a:hover{color:#93c5fd}
.lz-q{transition:background-color 240ms}
.lz-q:hover{background:#f8faff}
.lz-bento{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:20px}
.lz-s7{grid-column:span 7}.lz-s5{grid-column:span 5}
.lz-cmp{display:grid;grid-template-columns:200px minmax(0,1fr) 40px minmax(0,1fr);align-items:stretch;gap:0 12px}
.lz-cmp-tag{display:none}
.lz-arrow{display:flex;align-items:center;justify-content:center;color:#143d55}
.lz-legal h2{margin:2rem 0 .5rem;font-size:20px;line-height:1.3;font-weight:700;letter-spacing:-.01em;color:#0f172a}
.lz-legal p,.lz-legal li{margin:0 0 .85rem;font-size:16px;line-height:1.7;font-weight:300;color:#475569}
.lz-legal ul{margin:0 0 .85rem;padding-left:1.2rem}
.lz-legal li{margin-bottom:.35rem}
.lz-legal a{font-weight:400}
/* Modules page */
.lz-hl{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr));gap:14px;list-style:none;margin:0;padding:0}
.lz-hl li{display:flex;gap:12px;align-items:flex-start;padding:16px;border-radius:10px;background:rgba(255,255,255,.85);border:1px solid #dbe6f5;font-size:15px;line-height:1.55;color:#475569}
.lz-ico{flex:0 0 auto;width:40px;height:40px;border-radius:10px;background:#f8faff;border:1px solid #dbe6f5;color:#143d55;display:inline-flex;align-items:center;justify-content:center}
.lz-ico-lg{width:48px;height:48px;border-radius:12px;background:#143d55;border-color:#143d55;color:#fff}
.lz-modlayout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:28px;align-items:start}
.lz-modnav{position:sticky;top:20px;padding:12px;border-radius:14px;background:rgba(255,255,255,.9);border:1px solid #dbe6f5;box-shadow:0 8px 30px rgba(15,23,42,.06)}
.lz-modnav p{margin:4px 8px 8px;font-size:12px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:#143d55}
.lz-modnav ul{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2px}
.lz-modnav a{display:flex;align-items:center;gap:10px;min-height:40px;padding:8px 10px;border-radius:10px;border:1px solid transparent;font-size:14.5px;font-weight:400;line-height:1.3;color:#475569;text-decoration:none;transition:background-color 200ms,color 200ms}
.lz-modnav a svg{flex:0 0 auto;color:#143d55;opacity:.75}
.lz-modnav a:hover{background:#f8faff;color:#143d55}
.lz-modnav a[aria-current="true"]{background:#fff;border-color:#dbe6f5;color:#143d55;font-weight:700;box-shadow:0 8px 18px rgba(29,78,216,.12)}
.lz-modnav a[aria-current="true"] svg{opacity:1}
.lz-modnav a:focus-visible{outline:2px solid #143d55;outline-offset:2px}
.lz-mods{display:flex;flex-direction:column;gap:20px;min-width:0}
.lz-mod{scroll-margin-top:20px;background:#fff;border:1px solid #dbe6f5;border-radius:14px;box-shadow:0 8px 30px rgba(15,23,42,.06);padding:clamp(1.25rem,3vw,2.25rem)}
.lz-mod-head{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.lz-mod h2{margin:0;font-size:clamp(1.3rem,2.2vw,1.6rem);line-height:1.2;font-weight:700;letter-spacing:-.015em;color:#0f172a}
.lz-mod>p{margin:0 0 12px;max-width:72ch;font-size:16px;line-height:1.65;font-weight:300;color:#475569}
.lz-feats{list-style:none;margin:20px 0 0;padding:20px 0 0;border-top:1px solid #dbe6f5;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 28px}
.lz-feats li{display:flex;gap:10px;align-items:flex-start;font-size:15px;line-height:1.5;color:#0f172a}
.lz-feats li>svg{flex:0 0 auto;margin-top:2px;color:#143d55}
.lz-chips{display:flex;flex-wrap:wrap;gap:8px;list-style:none;margin:10px 0 0;padding:0}
.lz-chips li{padding:4px 12px;border-radius:999px;background:#f8faff;border:1px solid #dbe6f5;font-size:13px;color:#143d55}
.lz-tiles{list-style:none;margin:20px 0 0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:12px}
.lz-tiles li{padding:16px;border-radius:10px;background:#f8faff;border:1px solid #dbe6f5;font-size:14px;line-height:1.55;color:#475569}
.lz-tiles strong{display:block;margin-bottom:4px;font-size:15.5px;font-weight:700;color:#0f172a}
@media (max-width:980px){
.lz-modlayout{grid-template-columns:minmax(0,1fr);gap:16px}
.lz-modnav{top:0;z-index:5;margin:0 -1.25rem;padding:8px 1.25rem;border-radius:0;border-width:1px 0;background:rgba(246,248,252,.92);backdrop-filter:blur(10px);box-shadow:0 4px 18px rgba(15,23,42,.06)}
.lz-modnav p{display:none}
.lz-modnav ul{flex-direction:row;overflow-x:auto;scrollbar-width:none;gap:6px;scroll-snap-type:x proximity}
.lz-modnav ul::-webkit-scrollbar{display:none}
.lz-modnav li{flex:0 0 auto;scroll-snap-align:start}
.lz-modnav a{min-height:36px;padding:6px 12px;border-radius:999px;border-color:#dbe6f5;background:#fff;white-space:nowrap;font-size:14px}
.lz-modnav a svg{display:none}
.lz-mod{scroll-margin-top:68px}
}
@media (max-width:720px){.lz-feats{grid-template-columns:minmax(0,1fr)}}
/* Product page */
.lz-pillars{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(280px,100%),1fr));gap:20px}
.lz-pillars .lz-mod>p:last-child{margin-bottom:0}
@keyframes lz-up{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.lz-in{animation:lz-up 680ms cubic-bezier(.22,1,.36,1) both}
.lz-d1{animation-delay:110ms}.lz-d2{animation-delay:220ms}
@media (max-width:980px){
.lz-s7,.lz-s5{grid-column:span 12}
.lz-cmp{grid-template-columns:minmax(0,1fr);gap:8px}
.lz-cmp-head{display:none !important}
.lz-cmp-tag{display:block}
.lz-arrow{transform:rotate(90deg);height:24px}
}
/* Phones: the nav pills take their own full-width row under the logo and flags */
@media (max-width:720px){
.lz-nav{flex-basis:100%}
.lz-nav ul{justify-content:space-between;gap:0 !important}
.lz-nav .lz-pill{padding:10px 6px !important;font-size:14px !important}
}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.lz-btn,.lz-btn-inv,.lz-card,.lz-flag,.lz-q{transition-duration:1ms}.lz-in{animation:none}}

/* Language page */
/* Language selection fallback */
.lz-language-page {
    min-height: 100vh;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: 'Roboto', Arial, sans-serif;
}

.lz-language-selector {
    max-width: 640px;
    padding: 40px 24px;
    text-align: center;
}

.lz-language-selector h1 {
    margin: 0 0 24px;
    font-size: 42px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #143d55;
}

.lz-language-selector p {
    margin: 0 0 32px;
    font-size: 16px;
    line-height: 1.6;
    color: #475569;
}

.lz-language-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 12px;
}

.lz-language-nav a {
    display: inline-block;
    padding: 12px 24px;
    background: #fff;
    color: #143d55;
    border: 1px solid #dbe6f5;
    border-radius: 10px;
    text-decoration: none;
    font-weight: 700;
}

.lz-language-nav a:hover {
    background: #143d55;
    color: #fff;
}

.lz-language-nav a:focus-visible {
    outline: 2px solid #143d55;
    outline-offset: 3px;
}