@font-face{font-family:"Work Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/work-sans-latin-ext-400.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/work-sans-latin-ext-500.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/work-sans-latin-ext-600.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/work-sans-latin-ext-700.woff2") format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/noto-sans-cyrillic-ext-400.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/noto-sans-cyrillic-ext-500.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/noto-sans-cyrillic-ext-600.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/noto-sans-cyrillic-ext-700.woff2") format("woff2");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/work-sans-latin-400.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:400;font-display:swap;src:url("/fonts/noto-sans-cyrillic-400.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/work-sans-latin-500.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:500;font-display:swap;src:url("/fonts/noto-sans-cyrillic-500.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/work-sans-latin-600.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:600;font-display:swap;src:url("/fonts/noto-sans-cyrillic-600.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}
@font-face{font-family:"Work Sans";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/work-sans-latin-700.woff2") format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:"Noto Sans Cyrillic";font-style:normal;font-weight:700;font-display:swap;src:url("/fonts/noto-sans-cyrillic-700.woff2") format("woff2");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}

.consent{display:flex;align-items:flex-start;gap:10px;text-transform:none;letter-spacing:normal;font-size:13px;line-height:1.6;margin-top:18px}
.consent input{width:auto;flex-shrink:0;margin-top:5px}
.consent span{min-width:0;overflow-wrap:anywhere}
#step2btn{white-space:normal}
#withdrawLink{overflow-wrap:anywhere}

  :root{
    --navy:#0E0E53; --orange:#FF6633; --orange-hover:#FF7448; --orange-light:#FFF2ED;
    --teal:#24BAFF; --blue:#192BC2; --bg:#F8F8F8; --bg-white:#FFFFFF;
    --bg-light-blue:#EFF4F6; --text-secondary:#344054; --border:#D0D5DD;
    --error:#DD2D1F; --success:#027A48;
    --navy-overlay:rgba(14,14,83,.88); --navy-shade:rgba(14,14,83,.28);
    --foreground:var(--navy); --section-text:var(--text-secondary); --link:var(--blue);
    --r:18px; --max:1180px;
  }
  *{box-sizing:border-box}
  html{scroll-behavior:smooth}
  body{
    margin:0; background:var(--bg); color:var(--foreground);
    font-family:"Work Sans","Noto Sans Cyrillic",Arial,sans-serif;
    -webkit-font-smoothing:antialiased;
  }
  img,svg,video{max-width:100%; display:block}
  a{color:var(--link)}
  .wrap{max-width:var(--max); margin:0 auto; padding:0 24px}
  .eyebrow{
    font-size:12px; letter-spacing:.18em; text-transform:uppercase;
    color:var(--foreground); font-weight:700;
  }
  h1,h2,h3{margin:0; line-height:1.05; letter-spacing:-.02em; font-weight:700}
  h1{font-size:clamp(38px,7vw,86px)}
  h2{font-size:clamp(28px,4.2vw,50px)}
  h3{font-size:20px; font-weight:700; letter-spacing:-.01em}
  p{line-height:1.65; color:var(--section-text); margin:0}
  .lede{font-size:clamp(16px,1.6vw,20px); color:var(--bg-white)}

  /* nav */
  header.nav{
    position:fixed; top:0; left:0; right:0; z-index:60;
    backdrop-filter:blur(14px); background:var(--navy-overlay);
    border-bottom:1px solid transparent; transition:border-color .3s ease, background .3s ease;
  }
  header.nav.solid{border-bottom-color:var(--border)}
  .navin{display:flex; align-items:center; gap:18px; height:64px}
  .navlogos{display:flex; align-items:center; gap:22px; min-width:0}
  .navlogos img.pl{height:19px; width:auto; opacity:.95}
  .navlogos img.il{height:15px; width:auto; opacity:.95}
  .navspace{flex:1}
  .langs{display:flex; border:1px solid var(--border); border-radius:999px; overflow:hidden}
  .langs button{
    appearance:none; border:0; background:transparent; color:var(--section-text);
    font:600 12px/1 "Work Sans","Noto Sans Cyrillic",sans-serif; letter-spacing:.08em;
    padding:8px 12px; cursor:pointer; transition:.2s;
  }
  .langs button.on{background:var(--foreground); color:var(--navy)}
  .btn{
    display:inline-flex; align-items:center; justify-content:center; gap:9px;
    padding:14px 24px; border-radius:999px; font-weight:700; font-size:15px;
    text-decoration:none; border:1px solid transparent; cursor:pointer;
    transition:transform .18s ease, background .18s ease, border-color .18s ease;
    white-space:nowrap;
  }
  .btn:hover{transform:translateY(-2px)}
  .btn.primary{background:var(--orange); color:var(--bg-white)}
  .btn.primary:hover{background:var(--orange-hover)}
  .btn.ghost{border-color:var(--border); color:var(--foreground); background:var(--bg-white)}
  .btn.ghost:hover{border-color:var(--bg-white)}
  .btn.sm{padding:10px 18px; font-size:13.5px}
  .navbtn{display:none}
  @media(min-width:760px){.navbtn{display:inline-flex}}

  /* hero */
  .hero{position:relative; min-height:100svh; display:flex; align-items:flex-end; overflow:hidden}
  .hero video,.hero .fallback{
    position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0;
  }
  .hero .scrim{
    position:absolute; inset:0; z-index:1;
    background:
      linear-gradient(to top, var(--navy) 2%, var(--navy-overlay) 26%, var(--navy-overlay) 48%, var(--navy-overlay) 68%, var(--navy-overlay) 100%);
  }
  .heroin{position:relative; z-index:2; width:100%; padding:120px 0 64px}
  .hero .eyebrow{
    display:inline-block; background:var(--navy-overlay); backdrop-filter:blur(8px);
    border:1px solid var(--border); padding:7px 13px; border-radius:999px;
    color:var(--navy); text-shadow:none;
  }
  .hero h1{text-shadow:0 6px 44px var(--navy-overlay)}
  .hero h1{margin:18px 0 0; text-wrap:balance}
  .hero h1 em{font-style:normal; color:var(--link)}
  .herometa{
    display:flex; flex-wrap:wrap; gap:10px; margin-top:26px;
  }
  .chip{
    display:inline-flex; align-items:center; gap:8px;
    border:1px solid var(--border); background:var(--navy-overlay);
    backdrop-filter:blur(6px);
    padding:9px 15px; border-radius:999px; font-size:13.5px; font-weight:600;
    color:var(--bg-white);
  }
  .chip b{color:var(--teal); font-weight:700}
  .herocta{display:flex; flex-wrap:wrap; gap:12px; margin-top:30px; align-items:center}
  .seats{font-size:13px; color:var(--section-text); font-weight:600}

  /* hosts strip */
  .hosts{border-top:1px solid var(--border); border-bottom:1px solid var(--border); background:var(--navy)}
  .hostsin{
    display:flex; align-items:center; justify-content:center; gap:clamp(22px,5vw,56px);
    flex-wrap:wrap; padding:30px 0;
  }
  .hostlabel{
    font-size:11px; letter-spacing:.2em; text-transform:uppercase; color:var(--section-text);
    font-weight:700; width:100%; text-align:center; margin-bottom:4px;
  }
  .hosts img.p{height:26px} .hosts img.i{height:21px}
  .hosts .dot{width:5px; height:5px; border-radius:50%; background:var(--orange)}
  .hosts .cf{
    display:flex; align-items:center; gap:12px; padding-left:clamp(0px,3vw,28px);
    border-left:1px solid var(--border);
  }
  .hosts .cf img{height:52px}
  .hosts .cf span{font-size:12px; color:var(--section-text); font-weight:600; max-width:150px; line-height:1.4}
  @media(max-width:700px){.hosts .cf{border-left:0; padding-left:0; width:100%; justify-content:center}}

  section{padding:clamp(72px,10vw,130px) 0}
  .sechead{max-width:760px}
  .sechead h2{margin:14px 0 18px}

  /* details grid */
  .grid{display:grid; gap:16px; margin-top:44px}
  @media(min-width:720px){.grid.g3{grid-template-columns:repeat(3,1fr)}}
  @media(min-width:720px){.grid.g2{grid-template-columns:repeat(2,1fr)}}
  .card{
    border:1px solid var(--border); border-radius:var(--r); padding:26px;
    background:var(--bg-white);
    transition:border-color .25s ease, transform .25s ease;
  }
  .card:hover{border-color:var(--border); transform:translateY(-3px)}
  .card .num{font-size:11px; letter-spacing:.18em; color:var(--foreground); font-weight:700; text-transform:uppercase}
  .card h3{margin:12px 0 9px}
  .card p{font-size:14.5px}
  .card a.map{
    display:inline-block; margin-top:14px; font-size:13.5px; font-weight:700;
    color:var(--link); text-decoration:none; border-bottom:1px solid var(--border);
  }

  /* countdown */
  .count{display:flex; gap:12px; flex-wrap:wrap; margin-top:34px}
  .count div{
    border:1px solid var(--border); border-radius:14px; padding:16px 20px; min-width:88px;
    background:var(--bg-white); text-align:center;
  }
  .count b{display:block; font-size:30px; font-weight:700; letter-spacing:-.02em; font-variant-numeric:tabular-nums}
  .count span{font-size:11px; letter-spacing:.16em; text-transform:uppercase; color:var(--section-text); font-weight:700}

  /* motion band */
  .band{position:relative; border-top:1px solid var(--border); border-bottom:1px solid var(--border); overflow:hidden; background:var(--navy)}
  .band video,.band img.bandimg{width:100%; height:clamp(280px,46vh,520px); object-fit:cover; opacity:.92}
  .bandtext{
    position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center;
    text-align:center; gap:14px; padding:24px;
    background:radial-gradient(closest-side, var(--navy-overlay), var(--navy-overlay));
  }
  .bandtext h2{max-width:16ch; text-shadow:0 4px 30px var(--navy-overlay)}
  .bandtext .eyebrow{text-shadow:0 2px 14px var(--navy-overlay)}
  .bandtext p{text-shadow:0 2px 14px var(--navy-overlay)}

  /* gallery */
  .gal{display:grid; grid-template-columns:repeat(2,1fr); gap:12px; margin-top:44px}
  @media(min-width:820px){
    .gal{grid-template-columns:repeat(4,1fr); grid-auto-rows:190px}
    .gal figure:nth-child(1){grid-column:span 2; grid-row:span 2}
    .gal figure:nth-child(4){grid-column:span 2}
  }
  .gal figure{
    margin:0; overflow:hidden; border-radius:14px; border:1px solid var(--border);
    position:relative; background:var(--navy); min-height:150px;
  }
  .gal img{width:100%; height:100%; object-fit:cover; transition:transform .7s cubic-bezier(.2,.7,.3,1)}
  .gal figure:hover img{transform:scale(1.06)}
  .credit{font-size:12px; color:var(--section-text); margin-top:16px}
  .credit a{color:var(--link)}

  /* rsvp */
  #rsvp{background:var(--bg-light-blue)}
  .rsvpwrap{display:grid; gap:36px; align-items:start}
  @media(min-width:900px){.rsvpwrap{grid-template-columns:.85fr 1.15fr; gap:64px}}
  form{
    border:1px solid var(--border); border-radius:22px; padding:clamp(22px,3.4vw,34px);
    background:var(--bg-white);
  }
  .frow{display:grid; gap:14px}
  @media(min-width:620px){.frow.two{grid-template-columns:1fr 1fr}}
  label{display:block; font-size:12px; font-weight:700; letter-spacing:.06em; text-transform:uppercase; color:var(--navy); margin-bottom:7px}
  input,select,textarea{
    width:100%; padding:13px 15px; border-radius:12px; background:var(--bg-white);
    border:1px solid var(--border); color:var(--navy);
    font:500 15px/1.4 "Work Sans","Noto Sans Cyrillic",sans-serif; transition:border-color .2s ease;
  }
  input:focus,select:focus,textarea:focus{outline:3px solid var(--teal); outline-offset:2px; border-color:var(--navy)}
  textarea{resize:vertical; min-height:88px}
  select option{background:var(--navy); color:var(--foreground)}
  .hint{font-size:12px; color:var(--section-text); margin-top:7px; line-height:1.5}
  #step2link{
    display:block; margin-top:6px; font-size:12.5px; word-break:break-all;
    color:var(--link); font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
    background:var(--navy-overlay); border:1px solid var(--border); border-radius:10px; padding:10px 12px;
  }
  .fnote{font-size:12.5px; color:var(--section-text); margin-top:16px; line-height:1.6}
  form .btn{width:100%; margin-top:20px; padding:16px 24px; font-size:16px}
  .or{display:flex; align-items:center; gap:14px; margin:18px 0 0; color:var(--section-text); font-size:12px; font-weight:700; letter-spacing:.12em; text-transform:uppercase}
  .or::before,.or::after{content:""; height:1px; background:var(--border); flex:1}
  #tgbtn{margin-top:16px; width:100%; padding:15px 24px}
  .status{margin-top:16px; font-size:14.5px; font-weight:600; display:none; padding:14px 16px; border-radius:12px}
  .status.ok{display:block; background:var(--border); border:1px solid var(--border); color:var(--link)}
  #step2{display:none; margin-top:18px; padding:20px; border-radius:16px; border:1px solid var(--border); background:var(--border)}
  #step2 .btn{margin-top:16px}
  .status.err{display:block; background:var(--error); border:1px solid var(--error); color:var(--navy)}
  .why li{margin:0 0 14px; padding-left:26px; position:relative; list-style:none; color:var(--bg-white); line-height:1.6; font-size:15px}
  .why{padding:0; margin:24px 0 0}
  .why li::before{
    content:""; position:absolute; left:0; top:8px; width:9px; height:9px;
    border-radius:50%; background:var(--orange);
  }

  /* faq */
  details{border-bottom:1px solid var(--border); padding:20px 0}
  details summary{
    cursor:pointer; font-weight:700; font-size:17px; list-style:none;
    display:flex; justify-content:space-between; gap:20px; align-items:center;
  }
  details summary::-webkit-details-marker{display:none}
  details summary::after{content:"+"; color:var(--foreground); font-size:22px; font-weight:400}
  details[open] summary::after{content:"–"}
  details p{margin-top:12px; font-size:15px; max-width:70ch}

  footer{border-top:1px solid var(--border); padding:50px 0 60px; background:var(--navy)}
  .footin{display:flex; flex-wrap:wrap; gap:26px; align-items:center; justify-content:space-between}
  .footlogos{display:flex; align-items:center; gap:18px; flex-wrap:wrap}
  .footlogos img.p{height:22px} .footlogos img.i{height:17px} .footlogos img.c{height:44px}
  .footin p{font-size:13px}
  .reveal{opacity:0; transform:translateY(22px); transition:opacity .8s ease, transform .8s cubic-bezier(.2,.7,.3,1)}
  .reveal.in{opacity:1; transform:none}
  @media (prefers-reduced-motion: reduce){
    .reveal{opacity:1; transform:none; transition:none}
    html{scroll-behavior:auto}
  }


  .navlogos img.il{height:18px}
  .navlogos .x{color:var(--section-text); font-size:13px; font-weight:600}
  .navlogos .ans{font-weight:700; font-size:14px; letter-spacing:.14em; white-space:nowrap}
  @media(max-width:420px){.navlogos .x,.navlogos .ans{display:none}}
  .hosts .ans{font-weight:700; font-size:22px; letter-spacing:.16em; color:var(--foreground)}
  .hosts .ans small{display:block; font-size:10px; letter-spacing:.2em; color:var(--section-text); font-weight:700; margin-top:4px}
  .sched{display:grid; gap:12px; margin-top:28px}
  @media(min-width:720px){.sched{grid-template-columns:repeat(3,1fr)}}
  .sched div{border:1px solid var(--border); border-radius:14px; padding:18px 20px; background:var(--bg-white)}
  .sched b{display:block; font-size:28px; font-weight:700; letter-spacing:-.02em; color:var(--link); font-variant-numeric:tabular-nums}
  .sched span{font-size:13px; letter-spacing:.12em; text-transform:uppercase; color:var(--section-text); font-weight:700}

  /* Allow translated labels and form controls to shrink at narrow viewports. */
  section[id]{scroll-margin-top:80px}
  .grid > *, .rsvpwrap > *, .frow > *{min-width:0}
  input,select,textarea{min-width:0; max-width:100%}
  fieldset{border:0; padding:0; margin:0; min-width:0}
  .sr-only{position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap}
  .btn{white-space:normal; text-align:center; overflow-wrap:anywhere}
  button:disabled{cursor:default; opacity:.6; transform:none}
  .hosts img, .footlogos img, .navlogos img{width:auto}
  .hosts .cf span{max-width:240px}
  .gal img{aspect-ratio:16/9}
  .reveal{opacity:1; transform:none}
  @media(max-width:420px){
    .wrap{padding:0 18px}
    .heroin{padding-top:100px}
    .navin{gap:10px}
    .count{gap:8px}
    .count div{min-width:0; flex:1; padding:14px 6px}
    .count span{font-size:10px; letter-spacing:.02em}
    .hosts .cf{flex-wrap:wrap; text-align:center}
    .hosts .cf img{flex-shrink:0}
  }

/* Dark brand areas keep white assets and text on a solid navy surface. */
header.nav,.hero,.hosts,.band,footer{
  --foreground:var(--bg-white); --section-text:var(--bg-white); --link:var(--bg-white);
  background-color:var(--navy); color:var(--bg-white);
}
header.nav{background:var(--navy)}
.hero .scrim,.bandtext{background:var(--navy-overlay)}
.hero .eyebrow,.chip{background:var(--navy); color:var(--bg-white)}
.hero .eyebrow,.bandtext .eyebrow,.chip b{color:var(--teal)}
.lede,.why li{color:var(--section-text)}
.hero h1 em{color:var(--bg-white)}
.langs button{color:var(--bg-white)}
.langs button.on{background:var(--bg-white); color:var(--navy)}
/* A navy tint preserves orange CTAs while providing AA white text contrast. */
.btn{font-family:inherit}
.btn.primary{background:linear-gradient(var(--navy-shade),var(--navy-shade)),var(--orange); color:var(--bg-white); font-size:16px; font-weight:700}
.btn.primary:hover{background:linear-gradient(var(--navy-shade),var(--navy-shade)),var(--orange-hover)}
.btn.ghost{border-color:var(--foreground); color:var(--foreground); background:transparent}
.btn.ghost:hover{border-color:var(--teal)}
a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--teal); outline-offset:4px}
.card .num{color:var(--navy)}
.card:hover{border-color:var(--blue)}
.card a.map,.credit a{color:var(--blue); text-decoration:underline}
#details{background:var(--bg-white)}
form{background:var(--bg-white)}
input::placeholder{color:var(--text-secondary); opacity:1}
input[type=checkbox]{appearance:auto; width:18px; height:18px; accent-color:var(--navy)}
select option{background:var(--bg-white); color:var(--navy)}
.status.ok{background:var(--bg-white); color:var(--success); border-color:var(--success)}
.status.err{background:var(--bg-white); color:var(--error); border-color:var(--error)}
#step2{background:var(--bg-light-blue); border-color:var(--border)}
#step2link{background:var(--bg-white)}
/* The privacy document uses the same tokens, fonts, controls and focus styles. */
body.privacy{max-width:800px; margin:40px auto; padding:20px; font-size:18px; line-height:1.6}
.privacy nav{display:flex; flex-wrap:wrap; align-items:center; gap:12px}
.privacy button{font:600 16px/1.4 "Work Sans","Noto Sans Cyrillic",sans-serif; padding:8px 16px; background:var(--bg-white); color:var(--navy); border:1px solid var(--navy); border-radius:8px; cursor:pointer}
.privacy h1{font-size:clamp(28px,5vw,42px); margin:32px 0 20px; overflow-wrap:anywhere}
.privacy p{margin:16px 0; overflow-wrap:anywhere}
