.language-picker { position:relative; flex-shrink:0; }
.language-toggle { display:inline-flex; align-items:center; justify-content:center; gap:6px; min-width:40px; height:38px; border:1px solid var(--line); border-radius:10px; background:transparent; color:var(--ink); font:inherit; font-size:13px; cursor:pointer; }
.language-toggle svg { width:18px; height:18px; flex-shrink:0; }
.language-options { position:absolute; top:calc(100% + 8px); right:0; min-width:160px; padding:6px; z-index:110; border:1px solid var(--line); border-radius:12px; background:var(--surface,#fff); box-shadow:0 10px 30px #0002; }
.language-options[hidden] { display:none; }
.language-options button { display:block; width:100%; border:0; border-radius:7px; padding:10px 12px; background:transparent; color:var(--muted); text-align:left; cursor:pointer; font:inherit; font-size:14px; }
.language-options button:hover,.language-options button:focus-visible { background:color-mix(in srgb,var(--ink) 7%,transparent); }
.language-options button[aria-pressed="true"] { color:var(--ink); background:color-mix(in srgb,var(--ink) 12%,transparent); font-weight:600; }
.story-back-top { position:static !important; transform:none !important; align-self:center; margin:36px 0 0; width:auto !important; }
.story-back-top .explore-arrow { animation:back-top-float 2s ease-in-out infinite; }
@keyframes back-top-float { 0%,100% { transform:translateY(0); } 50% { transform:translateY(-5px); } }
html[lang="en"] .brand-copy h1 { font-size:clamp(24px,3.3vw,46px); white-space:normal; line-height:1.2; }
html[lang="en"] .brand-copy { max-width:48%; }
html[lang="en"] .windows-download { white-space:nowrap; }
html[lang="en"] .brand-copy .windows-download { padding-inline:20px; font-size:16px; }
html[lang="en"] .download-mark { flex-shrink:0; }
html[lang="en"] .download-view .windows-download { width:auto; min-width:216px; }
html[lang="en"] .banner-dots { flex-wrap:wrap; }
html[lang="en"] .banner-dots button { font-size:12px; padding-inline:10px; }
html[lang="en"] .discovery-card h3 { font-size:18px; }
html[lang="en"] .discovery-grid p { line-height:1.65; }
html[lang="en"] body[data-site-view="purchase"] { height:auto; min-height:100dvh; overflow:auto; }
html[lang="en"] body[data-site-view="purchase"] .intro-main { padding-top:0; padding-bottom:20px; }
html[lang="en"] body[data-site-view="purchase"] footer { display:flex; padding-top:16px; padding-bottom:16px; }
html[lang="en"] #purchase { height:auto; }
.membership-card p,.membership-existing p { color:var(--muted); line-height:1.65; }
.membership-page { width:100%; max-width:1080px; margin:0 auto; padding:20px 0 0; }
.membership-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:20px; }
.membership-card { display:flex; flex-direction:column; align-items:flex-start; padding:20px 24px; border:1px solid var(--line); border-radius:16px; background:var(--card); }
.membership-card h2,.membership-existing h2 { margin:0 0 12px; font-size:22px; }
.membership-card p { margin:0 0 18px; font-size:15px; }
.membership-card ul { padding-left:20px; margin:0 0 24px; color:var(--muted); }
.membership-card .button { text-align:center; justify-content:center; max-width:100%; }
.membership-page .button.primary { background:var(--ink); color:var(--bg); box-shadow:none; }
.membership-page .button.secondary { background:transparent; color:var(--ink); }
.membership-card .membership-footnote { margin:18px 0 0; font-size:13px; }
.membership-featured { background:color-mix(in srgb,var(--ink) 5%,var(--card)); }
.membership-status { display:inline-block; padding:5px 10px; border:1px solid var(--line); border-radius:8px; color:var(--muted); font-size:13px; }
.membership-existing { margin-top:16px; padding:18px 24px; border:1px solid var(--line); border-radius:16px; background:var(--card); }
.membership-purchase-heading { display:flex; align-items:center; justify-content:space-between; gap:16px; }
.membership-purchase-heading h2 { margin:0; font-size:20px; }
.membership-benefits { width:100%; margin:0; }
.membership-benefits > div { padding:10px 0; border-top:1px solid var(--line); }
.membership-benefits dt { font-size:14px; font-weight:600; }
.membership-benefits dd { margin:4px 0 0; color:var(--muted); font-size:15px; line-height:1.5; }
.membership-steps { list-style:none; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:16px; margin:18px 0; padding:0; }
.membership-steps li { display:flex; align-items:center; gap:12px; font-size:14px; }
.membership-steps span { display:grid; place-items:center; width:32px; height:32px; flex-shrink:0; border:1px solid var(--line); border-radius:50%; }
.membership-purchase .membership-footnote { font-size:13px; }
.membership-code-note { border-top:1px solid var(--line); padding-top:12px; margin:0; font-size:14px; }
.purchase-channel-note a { text-decoration:underline; text-underline-offset:4px; }
.purchase-channel-note { padding:24px; margin:0 0 24px; border:1px solid var(--line); border-radius:16px; background:var(--card); }
.purchase-channel-note h2 { margin:0 0 12px; font-size:20px; }
.purchase-channel-note p { font-size:14px; line-height:1.8; color:var(--muted); }
@media(min-width:1000px) and (min-height:800px) {
  .membership-page { padding-top:clamp(24px,3dvh,40px); }
  .membership-grid { gap:clamp(24px,2.5dvh,32px); }
  .membership-card { padding:clamp(24px,3dvh,36px) 32px; }
  .membership-card h2 { font-size:clamp(24px,2.8dvh,30px); margin-bottom:16px; }
  .membership-benefits > div { padding:clamp(14px,calc(5dvh - 28px),32px) 0; }
  .membership-benefits dt { font-size:clamp(15px,1.7dvh,18px); }
  .membership-benefits dd { font-size:clamp(16px,1.85dvh,20px); margin-top:6px; }
  .membership-existing { margin-top:clamp(20px,2.5dvh,32px); padding:clamp(22px,3dvh,32px) 32px; }
  .membership-purchase-heading h2 { font-size:clamp(22px,2.5dvh,27px); }
  .membership-status { font-size:clamp(14px,1.5dvh,16px); }
  .membership-steps { margin:clamp(22px,3dvh,32px) 0; }
  .membership-steps li,.membership-code-note { font-size:clamp(15px,1.7dvh,18px); }
  .membership-steps span { width:36px; height:36px; }
  .membership-code-note { padding-top:18px; }
}
@media(max-width:650px) {
  .membership-page { padding-top:28px; }
  .membership-grid { grid-template-columns:1fr; gap:16px; }
  .membership-card,.membership-existing { padding:24px; }
  .membership-purchase-heading { align-items:flex-start; flex-direction:column; gap:12px; }
  .membership-steps { grid-template-columns:1fr; }
  .membership-card .button { width:100%; }
  .language-toggle { min-width:32px; width:32px; height:32px; padding:0; }
  .language-toggle span { display:none; }
  .header-actions { gap:8px; }
  html[lang="en"] .site-header nav { gap:10px; }
  html[lang="en"] .site-header nav a { font-size:12px; }
  html[lang="en"] .brand-copy { max-width:100%; }
  html[lang="en"] .brand-copy h1 { font-size:clamp(22px,6vw,32px); }
  html[lang="en"] .brand-copy .windows-download { font-size:14px; padding-inline:16px; }
  html[lang="en"] .download-view .windows-download { min-width:0; width:100%; white-space:normal; }
}
@media(prefers-reduced-motion:reduce) { .story-back-top .explore-arrow { animation:none; } }
