/* VANIV-native community content. Intentionally scoped to <main>:
   the real multilingual site header, mobile menu and footer keep their original styles. */
.vaniv-community{
  --vc-ink:#f0f7fc;--vc-text:#bfd0de;--vc-line:rgba(128,177,202,.24);--vc-accent:#00d4ff;
  color:var(--vc-ink);background:radial-gradient(ellipse at 68% 3%,rgba(0,170,224,.13),transparent 38%),#080d14;
  padding:0 0 70px;font-family:inherit;line-height:1.65;min-height:60vh
}
.vaniv-community *, .vaniv-community *::before,.vaniv-community *::after{box-sizing:border-box}
.vaniv-community .wrap{width:min(1130px,calc(100% - 44px));margin:0 auto}
.vaniv-community a{color:#69e3ff}
.vaniv-community a:focus-visible,.vaniv-community button:focus-visible,
.vaniv-community input:focus-visible{outline:3px solid #68dffd;outline-offset:3px}
.vaniv-community .hero{padding:70px 0 43px;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);align-items:center;gap:44px}
.vaniv-community .hero:has(form),.vaniv-community .form-wrap .hero{display:block;max-width:810px;padding:50px 0 25px}
.vaniv-community .eyebrow{display:inline-flex;align-items:center;gap:10px;color:var(--vc-accent);font-size:.76rem;font-weight:800;letter-spacing:.17em;text-transform:uppercase}
.vaniv-community .eyebrow:before{content:"";width:26px;height:2px;background:var(--vc-accent)}
.vaniv-community h1{font-size:clamp(2.45rem,5.1vw,4.45rem);letter-spacing:-.055em;line-height:1.1;margin:18px 0 20px;font-weight:800;color:#fff}
.vaniv-community h2{font-size:clamp(1.65rem,3vw,2.4rem);letter-spacing:-.04em;line-height:1.2;margin:0 0 15px;font-weight:800;color:#f8fcff}
.vaniv-community h3{font-size:1.23rem;line-height:1.3;margin:0 0 11px;color:#fff}
.vaniv-community p{margin-top:0}
.vaniv-community .lead{font-size:clamp(1.04rem,1.8vw,1.24rem);line-height:1.7;color:#d0dfeb}
.vaniv-community .muted,.vaniv-community .note{color:#acc4d4}
.vaniv-community .note{font-size:.88rem}
.vaniv-community .actions{display:flex;flex-wrap:wrap;gap:13px;margin:26px 0}
.vaniv-community .btn{display:inline-flex;align-items:center;justify-content:center;min-height:49px;border:1px solid transparent;border-radius:9px;padding:12px 19px;font-weight:800;font-size:.96rem;text-decoration:none;transition:transform .15s,background .15s}
.vaniv-community .btn:hover{transform:translateY(-2px)}
.vaniv-community .btn.primary{background:linear-gradient(105deg,#00c9f2,#00e1e7);color:#031522;box-shadow:0 5px 25px rgba(0,212,255,.15)}
.vaniv-community .btn.secondary{border-color:rgba(0,212,255,.47);color:#dcf8ff;background:rgba(0,212,255,.07)}
.vaniv-community .vc-hero-media{margin:0;overflow:hidden;border:1px solid #305a6e;border-radius:20px;background:#101c27;box-shadow:0 25px 70px rgba(0,0,0,.4)}
.vaniv-community .vc-hero-media img{display:block;width:100%;height:auto;object-fit:cover}
.vaniv-community .vc-hero-media figcaption{padding:12px 16px;color:#a9c4d5;font-size:.77rem;border-top:1px solid #315061}
.vaniv-community .section{padding:35px 0 64px}
.vaniv-community .intro{max-width:795px;color:#b7cbd8;margin:0 0 28px}
.vaniv-community .grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.vaniv-community .card{position:relative;overflow:hidden;background:linear-gradient(145deg,#101f2c,#0e1722);border:1px solid var(--vc-line);border-radius:16px;padding:28px;min-height:240px}
.vaniv-community .card:before{content:"";position:absolute;top:0;left:0;width:54px;height:3px;background:var(--vc-accent)}
.vaniv-community .card p,.vaniv-community .vc-milestone p,.vaniv-community .panel p{color:var(--vc-text);line-height:1.75}
.vaniv-community .card p{margin:0}
.vaniv-community .status{display:inline-block;border:1px solid #417886;color:#87e8f1;border-radius:30px;padding:5px 12px;margin-bottom:18px;font-size:.7rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}
.vaniv-community .status.working{border-color:#486989;color:#b1d7ff}
.vaniv-community .status.next{border-color:#866f42;color:#f3d399}
.vaniv-community .status.explore{border-color:#77649b;color:#d2c4ff}
.vaniv-community .vc-milestones{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.vaniv-community .vc-milestone{display:block;width:100%;max-width:100%;min-width:0;height:auto;min-height:0;margin:0;align-self:stretch;justify-self:stretch;color:var(--vc-ink);font-size:inherit;font-weight:inherit;background:#121f2a;border:1px solid var(--vc-line);border-radius:14px;padding:23px}
.vaniv-community .vc-milestone strong{color:var(--vc-accent);font-size:1.16rem}
.vaniv-community .vc-milestone h3{margin:10px 0}
.vaniv-community .panel{padding:30px;border:1px solid #33687a;background:linear-gradient(145deg,rgba(0,119,164,.18),rgba(12,24,39,.87));border-radius:17px;margin:27px 0}
.vaniv-community .panel p{margin-bottom:0}
.vaniv-community .vc-evidence{margin:23px 0;border-left:3px solid var(--vc-accent);background:#0c1b27;padding:23px 26px}
.vaniv-community .vc-evidence p{color:#c9d7e3;margin:0 0 10px}
.vaniv-community .vc-evidence a{font-weight:700}
.vaniv-community .vc-faq details{border-bottom:1px solid var(--vc-line);padding:17px 0}
.vaniv-community .vc-faq summary{cursor:pointer;font-size:1.08rem;font-weight:700}
.vaniv-community .vc-faq details p{margin:12px 0 0;max-width:860px;color:#c5d7e3}
.vaniv-community .form-wrap{max-width:890px;margin:0 auto}
.vaniv-community .form-wrap .hero{max-width:825px}
.vaniv-community .survey-field{display:block;margin:0 0 21px;padding:22px;border:1px solid var(--vc-line);background:#121e2b;border-radius:14px;min-width:0}
.vaniv-community .survey-field legend{display:block;font-size:1.1rem;font-weight:800;color:#f0f7fc;padding:0 8px}
.vaniv-community .field-description{color:#b7cddd;font-size:.87rem;margin:0 0 12px}
.vaniv-community .choice-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
.vaniv-community .choice{display:flex;gap:9px;align-items:center;border:1px solid #38546a;border-radius:9px;padding:12px 13px;cursor:pointer;background:#152839;color:#e1eaf0}
.vaniv-community .choice:hover,.vaniv-community .choice:has(input:checked){border-color:#00c9f2;background:#164055}
.vaniv-community .choice input{accent-color:#00c9f2;flex:0 0 auto;width:18px;height:18px;margin:0}
.vaniv-community .choice span{line-height:1.45}
.vaniv-community .privacy{font-size:.9rem;color:#bfd4e1;margin:24px 0}
.vaniv-community .honey{position:absolute!important;left:-99999px!important;width:1px;height:1px;overflow:hidden}
.vaniv-community .form-error{padding:13px;color:#ffe0e8;background:#5b2734;border:1px solid #e28da3;border-radius:8px}
.vaniv-community .form-ok{padding:17px;color:#c4ffea;background:#124334;border:1px solid #6fcea9;border-radius:9px}
.vaniv-community .cf-placeholder{min-height:72px}
.vaniv-community .visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@media(max-width:850px){.vaniv-community .hero{grid-template-columns:1fr;padding:46px 0 30px;gap:24px}.vaniv-community .vc-hero-media{max-width:680px}.vaniv-community .vc-milestones{grid-template-columns:1fr}.vaniv-community .section{padding:24px 0 46px}}
@media(max-width:650px){.vaniv-community .grid,.vaniv-community .choice-list{grid-template-columns:1fr}.vaniv-community .wrap{width:min(100% - 28px,1130px)}.vaniv-community .hero{padding:36px 0 20px}.vaniv-community .card,.vaniv-community .vc-milestone,.vaniv-community .survey-field,.vaniv-community .panel{padding:19px}.vaniv-community h1{font-size:2.38rem}}
@media(prefers-reduced-motion:reduce){.vaniv-community .btn{transition:none}.vaniv-community .btn:hover{transform:none}}

/* Native secondary navigation; distinct from VANIV main header. */
.vaniv-community .vc-breadcrumb{display:flex;align-items:center;gap:10px;padding:25px 0 0;color:#9cb9ce;font-size:.91rem;flex-wrap:wrap}
.vaniv-community .vc-breadcrumb a{color:#b1d9ea;text-decoration:none}
.vaniv-community .vc-breadcrumb a:hover{text-decoration:underline}
@media(max-width:650px){.vaniv-community .vc-breadcrumb{padding-top:18px}}

/* The original site's skip link uses styling from page-level CSS on older pages. */
body > a.skip{position:absolute;top:auto;left:-9999px;z-index:10000;padding:10px 14px;background:#fff;color:#071722;font-weight:700}
body > a.skip:focus{left:12px;top:12px}
.vaniv-community .hero{min-height:0;margin:0}
.vaniv-community .form-wrap .hero{min-height:0;margin:0;padding:35px 0 18px}
.vaniv-community .vc-hero-copy,.vaniv-community .vc-hero-media,.vaniv-community .card,.vaniv-community .survey-field{min-width:0;max-width:100%}
.vaniv-community p,.vaniv-community h1,.vaniv-community h2,.vaniv-community h3{overflow-wrap:break-word}
.vaniv-community .btn{max-width:100%;white-space:normal}

/* Prevent the legacy VANIV 42x42 .vc-milestone badge rule from affecting roadmap cards. */
@media(max-width:850px){.vaniv-community .vc-milestones{display:grid;grid-template-columns:minmax(0,1fr);gap:16px}.vaniv-community .vc-milestones > .vc-milestone{display:block;width:100%;height:auto;min-width:0;margin:0;}}

/* Roadmap milestones must never inherit homepage .step badge dimensions.
   Use unique, page-specific names and natural block flow on every viewport. */
.vaniv-community .vc-milestones {
  display: grid;
  grid-template-columns: repeat(3,minmax(0,1fr));
  align-items: stretch;
  gap: 18px;
  width: 100%;
}
.vaniv-community .vc-milestones > .vc-milestone {
  position: static;
  float: none;
  transform: none;
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: flex-start;
  align-items: flex-start;
  width: auto;
  max-width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  margin: 0;
  padding: 23px;
  line-height: 1.55;
  white-space: normal;
  overflow-wrap: anywhere;
}
.vaniv-community .vc-milestone > strong {
  display: block;
  margin-bottom: 12px;
  line-height: 1.1;
}
.vaniv-community .vc-milestone > h3 {
  display: block;
  margin: 0 0 12px;
  width: 100%;
  line-height: 1.32;
}
.vaniv-community .vc-milestone > p {
  position: static;
  display: block;
  width: 100%;
  margin: 0;
  line-height: 1.67;
  font-size: .99rem;
}
@media (max-width: 850px) {
  .vaniv-community .vc-milestones {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    gap: 16px;
  }
  .vaniv-community .vc-milestones > .vc-milestone {
    display: flex;
    flex-direction: column;
    height: auto;
    min-height: 0;
    margin: 0;
    padding: 22px;
  }
}
/* The language selector exists in the original global header only. */
.vaniv-community .vc-breadcrumb { justify-content: flex-start; }
