/* Shared language navigation and layout adjustments; original media is never mirrored. */
.language-switcher { position:relative; flex-shrink:0; font-size:12px; line-height:1.5; }
.language-switcher summary { display:flex; align-items:center; gap:7px; min-height:44px; padding:6px 10px; border:1px solid var(--line,#d9dbd3); border-radius:8px; cursor:pointer; list-style:none; }
.language-switcher summary::-webkit-details-marker { display:none; }
.language-switcher summary::after { content:'⌄'; margin-inline-start:3px; }
.language-switcher summary svg { flex-shrink:0; }
.language-switcher summary:focus-visible { outline:3px solid #b89c29; outline-offset:3px; }
.language-menu { position:absolute; inset-inline-end:0; top:calc(100% + 8px); z-index:40; display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:2px; width:min(340px,calc(100vw - 40px)); max-height:65vh; overflow:auto; overscroll-behavior:contain; padding:10px; border:1px solid var(--line,#d9dbd3); border-radius:12px; background:var(--bg,#f6f5f1); color:var(--ink,#20211f); box-shadow:0 12px 32px #0003; }
.language-menu a { display:flex; align-items:center; min-height:44px; padding:8px 10px; border-radius:6px; font-size:13px; line-height:1.5; text-decoration:none; color:inherit; }
.language-menu a:hover,.language-menu a[aria-current] { background:var(--surface,#e8e9e1); color:inherit; }
.language-menu a[aria-current] { font-weight:700; }
.store-cta { display:inline-flex; align-items:center; justify-content:center; min-height:48px; max-width:230px; padding:10px 16px; border:1px solid #85877e; border-radius:8px; background:#050505; color:#fff; font-size:14px; font-weight:600; line-height:1.4; text-align:center; }
.header { height:auto; min-height:80px; }
.header-inner { min-height:80px; padding-block:12px; flex-wrap:wrap; }
.header .nav { flex-wrap:wrap; gap:16px; }
.brand,.wordmark { flex-shrink:0; }
.product-name,.product-name>div,.download-copy { min-width:0; }
.product-name img,.link-arrow,.download-icon { flex-shrink:0; }
.product-hero h1,.home-hero h1,.approach h2,.download-copy h2,.faq-layout h2 { overflow-wrap:anywhere; hyphens:auto; }
.story { display:flex; flex-direction:column; }
.story-card { flex:1; display:flex; flex-direction:column; }
.story-copy { flex:1; }
.story-copy h2 { overflow-wrap:anywhere; hyphens:auto; }
.story-number { direction:ltr; unicode-bidi:isolate; white-space:nowrap; }
.story-controls .video-control { text-align:end; }
.hero-action { flex-wrap:wrap; }
.hero-action .fineprint { text-align:start; }
.faq-list summary { padding-inline:0 32px; }
.faq-list summary::after { right:auto; inset-inline-end:0; }
.story-number span { margin-left:0; margin-inline-start:4px; }
.email-link { direction:ltr; unicode-bidi:isolate; overflow-wrap:anywhere; }
.site-header { flex-wrap:wrap; gap:16px; }
[dir="rtl"] .skip-link { left:auto; right:12px; }
[dir="rtl"] .story-media { direction:ltr; }
:lang(ar) h1,:lang(ar) h2,:lang(ar) h3,:lang(hi) h1,:lang(hi) h2,:lang(th) h1,:lang(th) h2 { letter-spacing:normal; line-height:1.35; }
:lang(ar) .kicker,:lang(hi) .kicker,:lang(th) .kicker { letter-spacing:normal; }
@media(max-width:680px) {
  .header,.header-inner { min-height:64px; }
  .header-inner { gap:8px 12px; }
  .header .nav { margin-inline-start:auto; justify-content:flex-end; gap:8px 12px; }
  .home-hero,.product-hero,.story-note { text-align:start; }
  .home-hero h1 { font-size:clamp(36px,10vw,56px); }
  .product-hero h1 { font-size:clamp(32px,9vw,48px); }
  .product-link { overflow-wrap:anywhere; }
  .language-switcher summary { font-size:11px; }
  .language-menu { position:fixed; top:auto; inset-inline:20px; width:auto; margin-top:8px; }
  .story-copy { min-height:0; }
  .site-header .language-switcher { margin-inline-start:auto; }
  .store-cta { max-width:220px; font-size:13px; }
}
