:root{--scale-xs:.82rem;--scale-sm:.92rem;--scale-base:1rem;--scale-md:1.2rem;--scale-lg:clamp(1.9rem,4vw,2.8rem);--scale-xl:clamp(2.4rem,5vw,3.5rem);--scale-2xl:clamp(3rem,7vw,5rem);--space-section:5.5rem;--space-gap:2rem;--space-card:1.75rem;--glow:none;--ba-mave-height:3rem;--ba-sokala-pad-block:4rem;--ba-sokala-gap:3rem;--ba-lonaga-split-ratio:1fr 1fr;--ba-lonaga-gap:5rem;--ba-lonaga-pad-block:6rem;--ba-tifi-split-ratio:1.1fr .9fr;--ba-tifi-overlap:3.5rem;--ba-tifi-pad-block:6rem;--ba-barota-pad-block:3rem;--ba-favani-pad-block:5.5rem;--ba-ranu-pad-block:5.5rem;--ba-sefi-pad-block:5.5rem;--ba-piburo-pad-block:5.5rem;--ba-nitu-media-ratio:.55fr .45fr;--ba-nitu-gap:4rem;--ba-nitu-pad-block:5.5rem;--ba-zadiro-pad-block:3.5rem;--ba-pukiri-pad-block:4.5rem;--bg:#211e15;--ba-rone-rgb:33,30,21;--fg:#e9e9e8;--muted:#94938f;--surface:#312e25;--border:#45423a;--accent:#bb9430;--accent-fg:#ffffff;--display-font:'Fraunces', system-ui, sans-serif;--body-font:'Inter', system-ui, sans-serif;--radius:14px;--heading-weight:800;--heading-tracking:-.02em;--kicker-transform:uppercase;--kicker-tracking:.18em;--motion-duration:0s;--motion-lift:0px;--card-shadow:none;--ba-tifi-media-shadow:none;--ba-lidolo-console-shadow:none;--ba-vafu-play-shadow:0 1px 2px rgba(0,0,0,.18);--ba-mumuda-h:3.6rem;--ba-mumuda-h-ft:3.9rem;}

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-selopo {
    position: fixed; inset-block-start: 0; inset-inline: 0;
    z-index: 100; font-family: var(--body-font);
  }
  .ba-pudufa {
    background: var(--ba-mave-nav-bg, var(--bg));
    border-bottom: 1px solid var(--border);
    display: flex; align-items: center; justify-content: space-between;
    height: var(--ba-mave-height, 3rem);
    padding-inline: var(--ba-mave-pad-x, clamp(1rem, 4vw, 3rem));
  }

  .ba-gase {
    display: inline-flex; align-items: center; gap: .55rem;
    text-decoration: none; white-space: nowrap;
  }
  .ba-mukise {
    width: var(--ba-mave-logo-size, 1.75rem); height: var(--ba-mave-logo-size, 1.75rem);
    object-fit: contain; display: block;
  }
  .ba-ruvadu {
    height: var(--ba-mumuda-h, 3.0rem); width: auto; max-width: min(64vw, 320px);
    object-fit: contain; display: block;
  }
  .ba-dalivu {
    font-family: var(--display-font);
    font-size: var(--scale-sm); font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase;
    color: var(--fg);
  }

  .ba-bemu {
    display: inline-flex;
    background: none; border: none; cursor: pointer;
    color: var(--muted); padding: .4rem;
    flex-direction: column; gap: .32rem;
    align-items: flex-end;
  }
  .ba-bemu:hover { color: var(--fg); }
  
  .ba-demo {
    display: block; height: 2px; background: currentColor;
    transition: transform var(--motion-duration, .2s) ease, opacity var(--motion-duration, .15s) ease;
  }
  .ba-demo:nth-child(1) { width: 1.4rem; }
  .ba-demo:nth-child(2) { width: 1rem; }
  .ba-demo:nth-child(3) { width: 1.4rem; }

  .ba-tapi {
    display: none;
    position: absolute; inset-block-start: var(--ba-mave-height, 3rem); inset-inline: 0;
    z-index: 100;            
    background: var(--surface);
    border-bottom: 1px solid var(--border);
    padding: 1.5rem var(--ba-mave-pad-x, 1rem);
  }
  .ba-noma {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-direction: column; gap: .25rem;
  }
  .ba-kate {
    display: block; padding: .75rem 0;
    color: var(--muted); text-decoration: none;
    font-size: var(--scale-base); font-weight: 600;
    letter-spacing: .04em; text-transform: uppercase;
    border-bottom: 1px solid var(--border);
    transition: color var(--motion-duration, .15s) ease;
  }
  .ba-kate:last-child { border-bottom: none; }
  .ba-kate:hover { color: var(--fg); }
  .ba-kate--active { color: var(--accent); }

  .ba-selopo[data-open] .ba-tapi { display: block; }
  .ba-selopo[data-open] .ba-demo:nth-child(1) { transform: rotate(45deg) translate(.35rem, .35rem); }
  .ba-selopo[data-open] .ba-demo:nth-child(2) { opacity: 0; }
  .ba-selopo[data-open] .ba-demo:nth-child(3) { transform: rotate(-45deg) translate(.35rem, -.35rem); }
  .ba-selopo[data-open] .ba-bemu { color: var(--fg); }

  @media (prefers-reduced-motion: reduce) {
    .ba-kate, .ba-demo { transition: none; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-lurevi {
    background: var(--ba-sokala-bg, var(--surface));
    border-top: 1px solid var(--border);
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-sokala-pad-block, var(--space-section));
    padding-inline: var(--ba-sokala-pad-inline, clamp(1rem, 4vw, 3rem));
  }

  .ba-topimo {
    max-width: var(--ba-sokala-max, 1150px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-sokala-cols, 1.4fr 1fr);
    gap: var(--ba-sokala-gap, var(--space-gap));
    margin-bottom: 3rem;
  }
  
  .ba-topimo--contact { grid-template-columns: var(--ba-sokala-cols-contact, 1.4fr 1fr 1fr); }

  .ba-voleta {
    display: flex; align-items: center; gap: .6rem;
    text-decoration: none; margin-bottom: 1rem;
  }
  .ba-ludope {
    width: var(--ba-sokala-logo-size, 2rem); height: var(--ba-sokala-logo-size, 2rem);
    object-fit: contain; display: block; flex-shrink: 0;
  }
  .ba-menita {
    height: var(--ba-mumuda-h-ft, 3.5rem); width: auto; max-width: min(75vw, 400px);
    object-fit: contain; display: block;
  }
  .ba-puba {
    font-family: var(--display-font);
    font-size: var(--scale-md); font-weight: 700;
    color: var(--fg);
  }
  .ba-muzuze {
    margin: 0 0 1.5rem;
    font-size: var(--scale-sm); line-height: 1.55; color: var(--muted);
    max-width: 28ch;
  }
  .ba-ninedu {
    display: inline-flex; align-items: center; justify-content: center;
    padding: .7rem 1.5rem;
    border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-sm); font-weight: 600;
    text-decoration: none;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-ninedu:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-ninedu:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

  .ba-nubasi {
    margin: 0 0 1rem;
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .12em; text-transform: uppercase;
    color: var(--muted);
  }
  .ba-dima {
    display: flex; flex-direction: column; gap: .6rem;
  }
  .ba-dubefi {
    color: var(--muted); text-decoration: none;
    font-size: var(--scale-sm); line-height: 1.4;
    transition: color var(--motion-duration, .15s) ease;
  }
  .ba-dubefi:hover { color: var(--fg); }
  .ba-dubefi:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 14px; }

  .ba-vapefa {
    display: flex; flex-direction: column; gap: .2rem;
    margin-bottom: .85rem;
  }
  .ba-vapefa:last-child { margin-bottom: 0; }
  .ba-gemene {
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .1em; text-transform: uppercase; color: var(--muted);
  }
  .ba-lodo {
    font-size: var(--scale-sm); color: var(--fg);
  }

  .ba-nebe {
    max-width: var(--ba-sokala-max, 1150px);
    margin-inline: auto;
    border-top: 1px solid var(--border);
    padding-top: 1.5rem;
    display: flex; align-items: center; justify-content: space-between;
    flex-wrap: wrap; gap: .75rem;
  }
  .ba-ranu {
    margin: 0;
    font-size: var(--scale-xs); color: var(--muted);
  }
  .ba-bonino {
    display: flex; flex-wrap: wrap; gap: 1rem;
  }
  .ba-zedino {
    font-size: var(--scale-xs); color: var(--muted);
    text-decoration: none;
  }
  .ba-zedino:hover { color: var(--fg); }

  @media (prefers-reduced-motion: reduce) {
    .ba-ninedu, .ba-dubefi { transition: none; }
  }

  @media (max-width: 860px) {
    .ba-topimo, .ba-topimo--contact { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 560px) {
    .ba-topimo, .ba-topimo--contact { grid-template-columns: 1fr; gap: 2.5rem; }
    .ba-nebe { flex-direction: column; align-items: flex-start; }
  }

*, *::before, *::after { box-sizing: border-box; }

  #ba-dasu {
    position: fixed; inset: 0; z-index: 9999;
    display: none;
    visibility: hidden; pointer-events: none;   
    align-items: center; justify-content: center;
    padding: 1rem;
    background: var(--ba-radide-overlay, rgba(0,0,0,.65));
  }
  #ba-dasu.ba-nale { display: flex; visibility: visible; pointer-events: auto; }

  .ba-dasu__inner {
    background: var(--ba-radide-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 14px);
    box-shadow: var(--card-shadow);
    padding: var(--ba-radide-pad, 2rem);
    width: 100%; max-width: var(--ba-radide-width, 420px);
    display: flex; flex-direction: column;
    gap: var(--ba-radide-gap, 1.25rem);
    text-align: center;
  }
  .ba-dasu__text {
    margin: 0;
    font-size: var(--scale-sm); line-height: 1.6; color: var(--muted);
    flex: 0 0 auto;
  }
  .ba-dasu__link { color: var(--accent); text-decoration: underline; }
  .ba-dasu__link:hover { text-decoration: none; }

  .ba-dasu__actions {
    display: flex; flex-direction: column; gap: .6rem;
  }
  .ba-dasu__actions button {
    width: 100%; padding: .75rem 1rem;
    border-radius: var(--radius, 10px);
    font-size: var(--scale-sm); font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase;
    cursor: pointer; border: none;
  }
  #ba-dasu-accept { background: var(--accent); color: var(--accent-fg); }
  #ba-dasu-decline {
    background: transparent;
    border: 1px solid var(--border) !important;
    color: var(--muted);
  }
  #ba-dasu-decline:hover { color: var(--fg); }

  @media (prefers-reduced-motion: reduce) { #ba-dasu { transition: none; } }
  @media (max-width: 480px) {
    .ba-dasu__inner { padding: 1.5rem; border-radius: var(--radius, 10px); }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-sudu--center {
    position: relative;
    background: var(--bg);
    color: var(--fg);
    font-family: var(--body-font);
    min-height: var(--ba-lidolo-min-h, 78vh);
    display: flex; flex-direction: column; justify-content: flex-end;
    padding-block: var(--ba-lidolo-pad-block, 4rem);
    padding-inline: var(--ba-lidolo-pad-inline, 1.5rem);
    overflow: hidden;
    isolation: isolate;
  }
  
  .ba-sudu--center .ba-dedebu {
    position: absolute; inset: 0; z-index: -2;
    background: linear-gradient(135deg, var(--surface), var(--bg));
    background-size: cover; background-position: center;
  }
  
  .ba-sudu--center .ba-dedebu::after {
    content: ""; position: absolute; inset: 0; z-index: -1;
    background: var(--ba-lidolo-overlay, linear-gradient(to top, rgba(var(--ba-rone-rgb),0.92) 0%, rgba(var(--ba-rone-rgb),0.88) 50%, rgba(var(--ba-rone-rgb),0.52) 68%, rgba(var(--ba-rone-rgb),0.18) 86%, transparent 100%));
  }
  
  .ba-sudu--center .ba-ketafa {
    position: relative; z-index: 1;
    max-width: var(--ba-lidolo-content-max, 760px);
    margin-inline: auto;
    text-align: center;
    display: flex; flex-direction: column; align-items: center;
  }

  .ba-zobi {
    margin: 0 0 1.25rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-lidolo-kicker-size, .8rem);
    letter-spacing: var(--ba-lidolo-kicker-spacing, .2em);
    text-transform: uppercase;
    color: var(--accent);
    font-weight: 600;
  }
  .ba-zuvo {
    margin: 0 0 1.5rem;
    font-family: var(--display-font);
    font-size: var(--ba-lidolo-title-size, clamp(2.6rem, 6vw, 5rem));
    font-weight: var(--ba-lidolo-title-weight, 800);
    line-height: var(--ba-lidolo-title-leading, 1.04);
    letter-spacing: var(--ba-lidolo-title-spacing, -.02em);
  }
  .ba-viroba {
    margin: 0 0 2.25rem;
    font-size: var(--ba-lidolo-sub-size, 1.3rem);
    line-height: 1.5;
    color: var(--muted);
    max-width: 52ch;
  }
  .ba-romoma { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
  .ba-pobe {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-lidolo-cta-pad, .9rem 1.8rem);
    border-radius: var(--radius, 8px);
    font-size: 1.05rem; font-weight: 600;
    text-decoration: none; cursor: pointer;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-pobe:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-pobe--primary { background: var(--accent); color: var(--accent-fg); }
  .ba-pobe--ghost {
    background: transparent; color: var(--fg);
    border: 1px solid var(--border);
  }

  .ba-pobe:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) { .ba-pobe { transition: none; } }

  @media (max-width: 768px) {
    .ba-sudu--center { padding-block: var(--ba-lidolo-pad-block-mobile, 4.5rem); }
    .ba-viroba { max-width: none; }
  }
  
  .ba-didi { list-style: none; margin: .9rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
  .ba-pibe { font-size: var(--scale-xs, .8rem); padding: .25em .75em; border: 1px solid var(--border); border-radius: 999px; color: var(--muted); text-transform: uppercase; letter-spacing: .07em; }
  .ba-biza { margin: 1.25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center; }
  .ba-dunena { display: flex; flex-direction: column; }
  .ba-laloga { font-family: var(--display-font); font-size: 1.6rem; font-weight: 800; color: var(--accent); line-height: 1; }
  .ba-kufevo { font-size: var(--scale-xs, .8rem); color: var(--muted); }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-redode--split {
    background: var(--ba-lonaga-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-lonaga-pad-block, var(--space-section));
    padding-inline: var(--ba-lonaga-pad-inline, 1.5rem);
  }
  .ba-redi {
    max-width: var(--ba-lonaga-max, 1150px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-lonaga-split-ratio, 1fr 1fr);
    gap: var(--ba-lonaga-gap, 5rem);
    align-items: center;
  }

  .ba-zebulu {
    margin: 0 0 1rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-lonaga-kicker-size, var(--scale-xs));
    letter-spacing: var(--kicker-tracking, .18em);
    text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ba-disobe {
    margin: 0 0 2rem;
    font-family: var(--display-font);
    font-size: var(--ba-lonaga-title-size, var(--scale-lg));
    font-weight: var(--ba-lonaga-title-weight, 800);
    line-height: 1.1;
    letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-seriba {
    display: grid;
    gap: var(--ba-lonaga-para-gap, 1.1rem);
    margin-bottom: 2.5rem;
  }
  .ba-tare {
    margin: 0;
    font-size: var(--ba-lonaga-para-size, var(--scale-base));
    line-height: 1.75;
    color: var(--muted);
  }
  
  .ba-seriba {
    border-inline-start: 2px solid var(--accent);
    padding-inline-start: 1.5rem;
  }
  .ba-lubogu {
    display: inline-flex; align-items: center;
    padding: var(--ba-lonaga-cta-pad, .8rem 1.75rem);
    border-radius: var(--radius, 10px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-base); font-weight: 600;
    text-decoration: none;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-lubogu:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-lubogu:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

  .ba-bodo {
    aspect-ratio: var(--ba-lonaga-media-aspect, 3 / 4);
    border-radius: var(--radius, 10px);
    background: var(--surface);
    border: 1px solid var(--border);
    overflow: hidden;
    display: grid; place-items: center;
    color: var(--muted); font-size: var(--scale-sm);
  }

  @media (prefers-reduced-motion: reduce) { .ba-lubogu { transition: none; } }

  @media (max-width: 768px) {
    .ba-redode--split .ba-redi { grid-template-columns: 1fr; gap: 2.5rem; }
    .ba-bodo { aspect-ratio: 4 / 3; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-bakoza--overlap {
    background: var(--ba-tifi-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-tifi-pad-block, var(--space-section));
    padding-inline: var(--ba-tifi-pad-inline, 1.5rem);
  }
  .ba-bakoza--overlap .ba-bagagi {
    max-width: var(--ba-tifi-max, 1100px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-tifi-split-ratio, 1.1fr .9fr);
    align-items: center;
    
    gap: var(--ba-tifi-gap, 0);
  }
  .ba-bakoza--overlap[data-reverse="true"] .ba-dafa { order: 2; }
  .ba-bakoza--overlap[data-reverse="true"] .ba-dazu   { order: 1; }

  .ba-dafa {
    position: relative;
    z-index: 1;
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius, 10px);
    padding: var(--ba-tifi-panel-pad, clamp(2rem, 4vw, 3.25rem));
  }
  
  .ba-dazu { position: relative; z-index: 2; }
  .ba-bakoza--overlap:not([data-reverse="true"]) .ba-dazu {
    margin-inline-start: calc(-1 * var(--ba-tifi-overlap, 3rem));
  }
  .ba-bakoza--overlap[data-reverse="true"] .ba-dazu {
    margin-inline-end: calc(-1 * var(--ba-tifi-overlap, 3rem));
  }

  .ba-zolu {
    margin: 0 0 1rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-tifi-kicker-size, var(--scale-xs));
    letter-spacing: var(--ba-tifi-kicker-spacing, .18em);
    text-transform: var(--ba-tifi-kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ba-kaba {
    margin: 0 0 1.1rem;
    font-family: var(--display-font);
    font-size: var(--ba-tifi-title-size, var(--scale-xl));
    font-weight: var(--ba-tifi-title-weight, 800);
    line-height: var(--ba-tifi-title-leading, 1.1);
    letter-spacing: var(--ba-tifi-title-spacing, -.02em);
  }
  .ba-mumani {
    margin: 0 0 1rem;
    font-size: var(--ba-tifi-sub-size, var(--scale-md));
    line-height: 1.4; color: var(--fg); font-weight: 500;
  }
  .ba-duba {
    margin: 0 0 1.5rem;
    font-size: var(--ba-tifi-body-size, var(--scale-base));
    line-height: 1.65; color: var(--muted);
  }
  .ba-zidali {
    list-style: none; margin: 0 0 1.75rem; padding: 0;
    display: grid; gap: var(--ba-tifi-points-gap, .6rem);
  }
  .ba-zidali li {
    position: relative; padding-inline-start: 1.6rem;
    font-size: var(--ba-tifi-point-size, var(--scale-base)); line-height: 1.5; color: var(--fg);
  }
  .ba-zidali li::before {
    content: ""; position: absolute; inset-inline-start: 0; top: .55em;
    width: .55rem; height: .55rem; border-radius: 50%; background: var(--accent);
  }
  .ba-pika { display: flex; flex-wrap: wrap; gap: 1rem; }
  .ba-bizovi {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-tifi-cta-pad, .8rem 1.5rem);
    border-radius: var(--radius, 8px);
    font-size: var(--scale-base); font-weight: 600;
    text-decoration: none; cursor: pointer;
    transition: transform var(--motion-duration, .15s) ease, opacity var(--motion-duration, .15s) ease;
  }
  .ba-bizovi:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-bizovi--primary { background: var(--accent); color: var(--accent-fg); }
  .ba-bizovi--ghost {
    background: transparent; color: var(--fg); border: 1px solid var(--border);
  }

  .ba-zudisa {
    aspect-ratio: var(--ba-tifi-media-aspect, 1 / 1);
    border-radius: var(--radius, 10px);
    background: var(--surface);
    border: 1px solid var(--border);
    box-shadow: var(--ba-tifi-media-shadow, var(--card-shadow));
    overflow: hidden;
    display: grid; place-items: center;
    color: var(--muted); font-size: var(--scale-sm);
  }

  .ba-bizovi:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  @media (prefers-reduced-motion: reduce) { .ba-bizovi { transition: none; } }

  @media (max-width: 768px) {
    .ba-bakoza--overlap .ba-bagagi { grid-template-columns: 1fr; gap: 1.5rem; }
    .ba-bakoza--overlap .ba-dazu,
    .ba-bakoza--overlap:not([data-reverse="true"]) .ba-dazu,
    .ba-bakoza--overlap[data-reverse="true"] .ba-dazu {
      margin-inline-start: 0; margin-inline-end: 0;
    }
    .ba-bakoza--overlap[data-reverse="true"] .ba-dafa { order: 1; }
    .ba-bakoza--overlap[data-reverse="true"] .ba-dazu   { order: 2; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-gopado--icon {
    background: var(--ba-barota-bg, var(--bg));
    padding-block: var(--ba-barota-pad-block, 3rem);
    padding-inline: var(--ba-barota-pad-inline, 1.5rem);
  }
  .ba-tose {
    max-width: var(--ba-barota-line-max, 680px);
    margin-inline: auto;
    display: flex; align-items: center; gap: var(--ba-barota-gap, 1.5rem);
  }
  .ba-fidumi {
    flex: 1; height: 1px;
    background: linear-gradient(to right, transparent, var(--border) 50%, transparent);
  }
  .ba-dula {
    flex-shrink: 0;
    width: var(--ba-barota-badge-size, 3rem);
    height: var(--ba-barota-badge-size, 3rem);
    border-radius: var(--ba-barota-badge-radius, 50%);
    background: var(--ba-barota-badge-bg, var(--surface));
    border: 1px solid var(--border);
    display: grid; place-items: center;
    font-size: var(--ba-barota-icon-size, 1.3rem);
    line-height: 1;
    color: var(--accent);
  }
  
  .ba-dula:empty::before {
    content: "";
    width: .6rem; height: .6rem;
    border-radius: 50%;
    background: var(--accent);
    display: block;
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-zaka--vertical {
    background: var(--ba-favani-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-favani-pad-block, var(--space-section));
    padding-inline: var(--ba-favani-pad-inline, 1.5rem);
  }
  .ba-lesi {
    max-width: var(--ba-favani-max, 720px);
    margin-inline: auto;
  }
  .ba-lami {
    text-align: var(--ba-favani-head-align, center);
    margin-bottom: 3rem;
  }
  .ba-fedemo {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-favani-kicker-size, var(--scale-xs));
    letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ba-segata {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ba-favani-title-size, var(--scale-lg));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }

  .ba-menu {
    list-style: none; margin: 0; padding: 0;
    display: flex; flex-direction: column;
    gap: var(--ba-favani-gap, var(--space-gap));
  }
  .ba-zarimu {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: var(--ba-favani-row-gap, 1.5rem);
    position: relative;
  }
  
  .ba-zarimu:not(:last-child) .ba-meluta::after {
    content: "";
    position: absolute;
    top: var(--ba-favani-badge-size, 3rem);
    left: 50%;
    transform: translateX(-50%);
    width: 2px;
    height: calc(100% + var(--ba-favani-gap, var(--space-gap)) - var(--ba-favani-badge-size, 3rem));
    background: var(--border);
  }
  .ba-meluta {
    position: relative;
    width: var(--ba-favani-badge-size, 3rem);
    height: var(--ba-favani-badge-size, 3rem);
    border-radius: var(--ba-favani-badge-radius, 50%);
    background: var(--accent);
    color: var(--accent-fg);
    display: grid; place-items: center;
    font-family: var(--display-font);
    font-size: var(--ba-favani-badge-font, 1.25rem);
    font-weight: var(--heading-weight, 800);
    flex-shrink: 0;
  }
  
  .ba-velara { width: 55%; height: 55%; }
  .ba-bosifo { padding-top: var(--ba-favani-content-pad, .35rem); }
  .ba-dodose {
    margin: 0 0 .5rem;
    font-family: var(--display-font);
    font-size: var(--ba-favani-step-title-size, var(--scale-md));
    font-weight: 700; line-height: 1.2;
  }
  .ba-dasi {
    margin: 0;
    font-size: var(--ba-favani-step-text-size, var(--scale-base));
    line-height: 1.6; color: var(--muted);
  }

  @media (max-width: 600px) {
    .ba-zarimu { gap: 1rem; }
    .ba-meluta {
      width: var(--ba-favani-badge-size-mobile, 2.5rem);
      height: var(--ba-favani-badge-size-mobile, 2.5rem);
      font-size: 1.05rem;
    }
    .ba-zarimu:not(:last-child) .ba-meluta::after {
      top: var(--ba-favani-badge-size-mobile, 2.5rem);
      height: calc(100% + var(--ba-favani-gap, var(--space-gap)) - var(--ba-favani-badge-size-mobile, 2.5rem));
    }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-rapu--inline {
    background: var(--ba-zamo-bg, var(--surface-bg));
    color: var(--ba-zamo-fg, var(--fg));
    font-family: var(--body-font);
    padding-block: var(--ba-zamo-pad-block, 2.5rem);
    padding-inline: var(--ba-zamo-pad-inline, 1.5rem);
    border-block: 1px solid var(--ba-zamo-border, var(--border));
  }
  .ba-rapu--inline .ba-mupi {
    max-width: var(--ba-zamo-max, 1100px);
    margin-inline: auto;
    display: flex; flex-wrap: wrap;
    align-items: center;
    justify-content: var(--ba-zamo-align, space-between);
    gap: var(--ba-zamo-gap, 1.5rem);
  }
  .ba-vago {
    display: flex; align-items: baseline; gap: .6rem;
    flex: var(--ba-zamo-item-flex, 1);
    justify-content: center;
    position: relative;
  }
  
  .ba-vago:not(:last-child)::after {
    content: ""; position: absolute; right: calc(var(--ba-zamo-gap, 1.5rem) / -2);
    top: 50%; transform: translateY(-50%);
    width: 1px; height: var(--ba-zamo-divider-h, 2.2rem);
    background: var(--ba-zamo-divider, var(--border));
    display: var(--ba-zamo-divider-show, block);
  }
  .ba-bule {
    font-family: var(--display-font);
    font-size: var(--ba-zamo-value-size, 2rem);
    font-weight: var(--ba-zamo-value-weight, 800);
    color: var(--ba-zamo-value-color, var(--accent));
    line-height: 1;
  }
  .ba-debifu {
    font-size: var(--ba-zamo-label-size, .9rem);
    color: var(--ba-zamo-label-color, var(--muted));
    letter-spacing: .02em;
  }
  
  .ba-nemuki {
    max-width: var(--ba-zamo-max, 1100px); margin: 0 auto .4rem; text-align: var(--ba-zamo-head-align, center);
    font-size: var(--scale-xs, .82rem); letter-spacing: var(--kicker-tracking, .18em);
    text-transform: var(--kicker-transform, uppercase); color: var(--ba-zamo-label-color, var(--muted));
  }
  .ba-takade {
    max-width: var(--ba-zamo-max, 1100px); margin: 0 auto 1.5rem; text-align: var(--ba-zamo-head-align, center);
    font-family: var(--display-font); font-size: var(--ba-zamo-heading-size, clamp(1.6rem, 3.5vw, 2.2rem));
    font-weight: var(--heading-weight, 800); color: var(--ba-zamo-fg, var(--fg)); letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-mabo { width: var(--ba-zamo-icon-size, 1.4rem); height: var(--ba-zamo-icon-size, 1.4rem); align-self: center; color: var(--ba-zamo-value-color, var(--accent)); flex: none; }
  .ba-movemo {
    font-size: var(--ba-zamo-note-size, .8rem); color: var(--ba-zamo-note-color, var(--muted)); line-height: 1.3; flex-basis: 100%; text-align: center;
  }

  @media (max-width: 768px) {
    .ba-rapu--inline .ba-mupi { gap: 1rem 1.5rem; }
    .ba-vago { flex: 1 1 40%; }
    .ba-vago:not(:last-child)::after { display: none; }  
    .ba-bule { font-size: 1.6rem; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-sesofu--accordion {
    background: var(--ba-ranu-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-ranu-pad-block, var(--space-section));
    padding-inline: var(--ba-ranu-pad-inline, 1.5rem);
  }
  .ba-gadune {
    max-width: var(--ba-ranu-max, 760px);
    margin-inline: auto;
  }
  .ba-piti {
    text-align: var(--ba-ranu-head-align, center);
    margin-bottom: 2.5rem;
  }
  .ba-sotibo {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-ranu-kicker-size, var(--scale-xs));
    letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ba-ridada {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ba-ranu-title-size, var(--scale-lg));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }

  .ba-rori {
    display: flex; flex-direction: column;
    gap: var(--ba-ranu-gap, .75rem);
  }
  .ba-budevo {
    background: var(--ba-ranu-item-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 10px);
    overflow: hidden;
  }
  .ba-nolubi {
    list-style: none;
    cursor: pointer;
    padding: var(--ba-ranu-item-pad, 1.15rem 1.4rem);
    display: flex; align-items: center; justify-content: space-between;
    gap: 1rem;
    font-family: var(--display-font);
    font-size: var(--ba-ranu-q-size, var(--scale-base));
    font-weight: 600; line-height: 1.3;
    color: var(--fg);
  }
  .ba-nolubi::-webkit-details-marker { display: none; }
  
  .ba-nolubi::after {
    content: "";
    flex-shrink: 0;
    width: 1rem; height: 1rem;
    position: relative;
    background:
      linear-gradient(var(--accent), var(--accent)) center/100% 2px no-repeat,
      linear-gradient(var(--accent), var(--accent)) center/2px 100% no-repeat;
    transition: transform var(--motion-duration, .2s) ease;
  }
  .ba-budevo[open] .ba-nolubi::after {
    transform: rotate(90deg);
    background: linear-gradient(var(--accent), var(--accent)) center/100% 2px no-repeat;
  }
  .ba-togu {
    padding: 0 var(--ba-ranu-answer-pad-x, 1.4rem) var(--ba-ranu-answer-pad-b, 1.25rem);
    margin: 0;
    font-size: var(--ba-ranu-a-size, var(--scale-base));
    line-height: 1.6; color: var(--muted);
  }

  @media (prefers-reduced-motion: reduce) {
    .ba-nolubi::after { transition: none; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-zanome--center {
    background: var(--ba-sefi-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-sefi-pad-block, var(--space-section));
    padding-inline: var(--ba-sefi-pad-inline, 1.5rem);
  }
  .ba-gudapo {
    max-width: var(--ba-sefi-max, 680px);
    margin-inline: auto;
    text-align: center;
    display: flex; flex-direction: column;
    align-items: center; gap: var(--ba-sefi-gap, 1.5rem);
  }
  .ba-sazo {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ba-sefi-title-size, var(--scale-xl));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-bupe {
    margin: 0;
    font-size: var(--ba-sefi-subtext-size, var(--scale-md));
    line-height: 1.55; color: var(--muted);
    max-width: 52ch;
  }
  .ba-fame {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-sefi-cta-pad, 1rem 2.5rem);
    border-radius: var(--radius, 12px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--ba-sefi-cta-size, var(--scale-md)); font-weight: 700;
    text-decoration: none; margin-top: .5rem;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-fame:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-fame:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  .ba-pulazi {
    margin: 0;
    font-size: var(--ba-sefi-disclaimer-size, var(--scale-xs));
    color: var(--muted); letter-spacing: .03em;
  }

  .ba-mideda { list-style: none; margin: 0; padding: 0; display: inline-flex; flex-direction: column; gap: .5rem; text-align: left; }
  .ba-vada { color: var(--muted); padding-inline-start: 1.5em; position: relative; }
  .ba-vada::before { content: "\2713"; position: absolute; inset-inline-start: 0; color: var(--accent); font-weight: 700; }
  .ba-fova { margin: 0; max-width: 46ch; font-style: italic; color: var(--fg); border-inline-start: 3px solid var(--accent); padding-inline-start: 1rem; text-align: left; }
  @media (prefers-reduced-motion: reduce) { .ba-fame { transition: none; } }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  .ba-kufo {
    background: var(--ba-sufo-bg, var(--surface));
    border-bottom: 1px solid var(--border);
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ba-sufo-pad-block, 4rem);
    padding-inline: var(--ba-sufo-pad-inline, 1.5rem);
    text-align: center;
  }
  .ba-fari { max-width: var(--ba-sufo-max, 720px); margin-inline: auto; display: flex; flex-direction: column; align-items: center; gap: var(--ba-sufo-gap, 1.1rem); }
  .ba-tibi {
    display: inline-flex; align-items: center; gap: .4rem;
    padding: .3rem .8rem; border-radius: 999px;
    background: var(--ba-sufo-badge-bg, color-mix(in srgb, var(--accent) 16%, transparent));
    color: var(--accent); font-family: var(--utility-font, var(--body-font));
    font-size: var(--scale-xs); font-weight: 700; letter-spacing: .1em; text-transform: uppercase;
  }
  .ba-fadito { margin: 0; font-family: var(--display-font); font-size: var(--scale-xl); font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em); }
  .ba-voka { margin: 0; font-size: var(--scale-base); line-height: 1.65; color: var(--muted); max-width: 56ch; }
  .ba-buteda {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-sufo-cta-pad, .75rem 1.7rem); border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-sm); font-weight: 600; text-decoration: none; margin-top: .4rem;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-buteda:hover { transform: translateY(var(--motion-lift, -2px)); }

*, *::before, *::after { box-sizing: border-box; }

  .ba-beza--cards {
    background: var(--ba-mosogu-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-mosogu-pad-block, 5.5rem);
    padding-inline: var(--ba-mosogu-pad-inline, 1.5rem);
  }
  .ba-beza--cards .ba-vazili { max-width: var(--ba-mosogu-max, 1150px); margin-inline: auto; }

  .ba-vode {
    max-width: var(--ba-mosogu-head-max, 640px);
    margin-bottom: var(--ba-mosogu-head-gap, 3rem);
    text-align: var(--ba-mosogu-head-align, left);
  }
  .ba-fani {
    margin: 0 0 1rem; font-family: var(--utility-font, var(--body-font));
    font-size: .8rem; letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ba-feza {
    margin: 0 0 1rem; font-family: var(--display-font);
    font-size: var(--ba-mosogu-title-size, clamp(1.9rem, 4vw, 2.8rem));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-nobura { margin: 0; font-size: 1.1rem; line-height: 1.6; color: var(--muted); }

  .ba-lokuse {
    display: grid;
    grid-template-columns: repeat(var(--ba-mosogu-cols, 3), 1fr);
    gap: var(--ba-mosogu-gap, 1.5rem);
  }
  .ba-lemeko {
    background: var(--ba-mosogu-card-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 12px);
    padding: var(--ba-mosogu-card-pad, 1.75rem);
    text-align: var(--ba-mosogu-card-align, left);
    display: flex; flex-direction: column; gap: .75rem;
    transition: transform var(--motion-duration, .15s) ease, border-color .15s ease, box-shadow .15s ease;
  }
  .ba-lemeko:hover { transform: translateY(var(--motion-lift, -3px)); border-color: var(--accent); }
  .ba-kisu {
    width: var(--ba-mosogu-icon-size, 44px); height: var(--ba-mosogu-icon-size, 44px);
    display: grid; place-items: center;
    border-radius: var(--ba-mosogu-icon-radius, 10px);
    background: var(--ba-mosogu-icon-bg, color-mix(in srgb, var(--accent) 15%, transparent));
    color: var(--accent); font-size: 22px;
  }
  .ba-paloku {
    width: var(--ba-mosogu-icon-size, 44px); height: var(--ba-mosogu-icon-size, 44px);
    display: grid; place-items: center;
    font-family: var(--display-font); font-weight: 800; font-size: 1.3rem;
    color: var(--accent); border: 1px solid var(--border); border-radius: var(--ba-mosogu-icon-radius, 10px);
  }
  .ba-furu {
    aspect-ratio: var(--ba-mosogu-media-ratio, 16 / 9);
    border-radius: var(--radius, 12px);
    background: var(--surface);
    border: 1px solid var(--border);
    margin-bottom: .25rem;
  }
  .ba-bedi {
    font-family: var(--display-font); font-weight: 800; line-height: 1;
    font-size: var(--ba-mosogu-stat-size, 2.2rem); color: var(--accent);
  }
  .ba-bedi:empty { display: none; }
  .ba-kepu { margin: 0; font-family: var(--display-font); font-size: 1.2rem; font-weight: 700; }
  .ba-luta { margin: 0; font-size: .98rem; line-height: 1.55; color: var(--muted); }

  @media (prefers-reduced-motion: reduce) { .ba-lemeko { transition: none; } }
  @media (max-width: 860px) { .ba-beza--cards .ba-lokuse { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 520px) { .ba-beza--cards .ba-lokuse { grid-template-columns: 1fr; } }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-dubu--split {
    background: var(--ba-budo-bg, var(--bg));
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ba-budo-pad-block, var(--space-section));
    padding-inline: var(--ba-budo-pad-inline, 1.5rem);
  }
  .ba-dokiro {
    max-width: var(--ba-budo-max, 1000px); margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-budo-ratio, 1.2fr 1fr);
    gap: var(--ba-budo-gap, var(--space-gap));
    align-items: start;
  }

  .ba-rovero { margin-bottom: 1.75rem; }
  .ba-bedale {
    margin: 0 0 .5rem;
    font-family: var(--display-font);
    font-size: var(--scale-lg); font-weight: var(--heading-weight, 800);
    line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-sudezo {
    margin: 0; font-size: var(--scale-sm);
    line-height: 1.55; color: var(--muted);
  }
  
  .ba-gomaza { display: inline-flex; margin-bottom: .6rem; }
  .ba-dume { width: var(--ba-budo-accent-size, 2.1rem); height: var(--ba-budo-accent-size, 2.1rem); color: var(--accent); }
  .ba-ralula { font-size: var(--scale-xs); color: var(--muted); letter-spacing: .06em; text-transform: uppercase; font-weight: 600; margin: 0 0 .6rem; }
  .ba-davu { font-size: var(--scale-base); line-height: 1.6; color: var(--muted); margin: .75rem 0 0; }
  
  .ba-desa { margin-top: 1.75rem; text-align: left; }
  .ba-badige { margin: 0 0 .6rem; font-family: var(--display-font); font-size: var(--scale-md); font-weight: 700; color: var(--fg); }
  .ba-deti { margin: 0; font-size: var(--scale-sm); line-height: 1.6; color: var(--muted); }
  .ba-daga, .ba-zalafi { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
  .ba-dunu { font-size: var(--scale-sm); color: var(--fg); padding-inline-start: 1.2em; position: relative; }
  .ba-dunu::before { content: "\2022"; position: absolute; inset-inline-start: 0; color: var(--accent); }
  .ba-nifu { font-size: var(--scale-sm); color: var(--muted); line-height: 1.55; }
  .ba-nifu strong { color: var(--fg); }
  .ba-kuluma { margin: 1.25rem 0 0; font-size: var(--scale-sm); color: var(--muted); }
  .ba-bada { display: inline-flex; margin-top: 1.25rem; padding: .6rem 1.4rem; border-radius: var(--radius, 8px); background: transparent; border: 1px solid var(--accent); color: var(--accent); font-size: var(--scale-sm); font-weight: 600; text-decoration: none; }

  .ba-dibu { display: flex; flex-direction: column; gap: 1rem; }
  .ba-fuvo { display: flex; flex-direction: column; gap: .4rem; }
  .ba-pupaso {
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase; color: var(--muted);
  }
  .ba-lesebe,
  .ba-bemunu {
    background: var(--ba-budo-input-bg, var(--surface));
    border: var(--ba-budo-input-border, 1px solid var(--border));
    border-radius: var(--radius, 8px);
    color: var(--fg); font-family: var(--body-font);
    font-size: var(--scale-base);
    padding: var(--ba-budo-input-pad, .75rem 1rem);
    width: 100%;
    transition: border-color .15s ease;
  }
  .ba-lesebe:focus,
  .ba-bemunu:focus {
    outline: none; border-color: var(--accent);
  }
  .ba-bemunu { min-height: var(--ba-budo-textarea-min-h, 130px); resize: vertical; }
  
  .ba-mufiri { display: none; visibility: hidden; position: absolute; }

  .ba-zoto {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-budo-btn-pad, .85rem 2rem);
    border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-sm); font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase;
    border: none; cursor: pointer; align-self: flex-start;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-zoto:hover { transform: translateY(var(--motion-lift, -2px)); }

  .ba-meze {
    padding: 1rem 1.25rem;
    border-radius: var(--radius, 8px);
    font-size: var(--scale-sm); font-weight: 600;
  }
  .ba-meze--success {
    background: var(--ba-budo-success-bg, color-mix(in srgb, var(--accent) 12%, transparent));
    border: 1px solid var(--accent); color: var(--fg);
  }
  .ba-meze--error {
    background: var(--ba-budo-error-bg, color-mix(in srgb, #e53e3e 12%, transparent));
    border: 1px solid #e53e3e; color: var(--fg);
  }

  .ba-side {
    background: var(--surface); border: var(--ba-budo-input-border, 1px solid var(--border));
    border-radius: var(--radius, 12px);
    padding: var(--space-card, 1.75rem);
    box-shadow: var(--card-shadow);
    display: flex; flex-direction: column; gap: 1.5rem;
    position: sticky; top: 5rem;
  }
  .ba-lirolu { display: flex; flex-direction: column; gap: .3rem; }
  .ba-zamezu {
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .1em; text-transform: uppercase; color: var(--muted);
  }
  .ba-vabapa {
    font-size: var(--scale-sm); color: var(--fg);
    text-decoration: none;
  }
  .ba-vabapa:hover { color: var(--accent); }

  @media (prefers-reduced-motion: reduce) {
    .ba-lesebe, .ba-bemunu, .ba-zoto { transition: none; }
  }
  @media (max-width: 768px) {
    .ba-dubu--split .ba-dokiro { grid-template-columns: 1fr; }
    .ba-side { position: static; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-vuvi--side {
    background: var(--ba-piburo-bg, var(--surface));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-piburo-pad-block, var(--space-section));
    padding-inline: var(--ba-piburo-pad-inline, 1.5rem);
  }
  .ba-move {
    max-width: var(--ba-piburo-max, 1050px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-piburo-split-ratio, 1fr auto);
    gap: var(--ba-piburo-gap, 3rem);
    align-items: end;
  }
  .ba-fori {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ba-piburo-quote-size, var(--scale-xl));
    font-weight: var(--ba-piburo-quote-weight, 600);
    line-height: var(--ba-piburo-quote-leading, 1.25);
    letter-spacing: -.015em;
  }
  
  .ba-sugebu {
    display: flex; flex-direction: column; gap: .35rem;
    padding-top: 1rem;
    border-top: 2px solid var(--accent);
    min-width: var(--ba-piburo-attr-min, 160px);
  }
  .ba-saro {
    margin: 0;
    font-size: var(--ba-piburo-name-size, var(--scale-base));
    font-weight: 700;
    color: var(--fg);
  }
  .ba-notuga {
    margin: 0;
    font-size: var(--ba-piburo-role-size, var(--scale-sm));
    letter-spacing: .08em;
    text-transform: uppercase;
    color: var(--accent);
    font-weight: 600;
  }

  @media (max-width: 700px) {
    .ba-vuvi--side .ba-move {
      grid-template-columns: 1fr;
      gap: 1.75rem;
      align-items: start;
    }
    .ba-sugebu { min-width: 0; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-bopo--ba-didudu-left {
    background: var(--ba-nitu-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-nitu-pad-block, var(--space-section));
    padding-inline: var(--ba-nitu-pad-inline, 1.5rem);
  }
  .ba-bopo--ba-didudu-left .ba-sake {
    max-width: var(--ba-nitu-max, 1150px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ba-nitu-media-ratio, .55fr .45fr);
    gap: var(--ba-nitu-gap, 4rem);
    align-items: var(--ba-nitu-align, center);
  }

  .ba-vigeza {
    aspect-ratio: var(--ba-nitu-media-aspect, 4 / 3);
    border-radius: var(--radius, 8px);
    background: var(--surface);
    border: 1px solid var(--border);
    overflow: hidden;
    display: grid; place-items: center;
    color: var(--muted); font-size: var(--scale-sm);
  }

  .ba-punu {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ba-nitu-kicker-size, var(--scale-xs));
    letter-spacing: var(--ba-nitu-kicker-spacing, .18em);
    text-transform: uppercase;
    color: var(--accent); font-weight: 600;
  }
  .ba-fomede {
    margin: 0 0 1rem;
    font-family: var(--display-font);
    font-size: var(--ba-nitu-title-size, var(--scale-lg));
    font-weight: var(--ba-nitu-title-weight, 800);
    line-height: var(--ba-nitu-title-leading, 1.08);
    letter-spacing: var(--ba-nitu-title-spacing, -.02em);
  }
  .ba-dosu {
    margin: 0 0 .9rem;
    font-size: var(--ba-nitu-sub-size, var(--scale-md));
    line-height: 1.4; color: var(--fg); font-weight: 500;
  }
  .ba-bubi {
    margin: 0 0 1.4rem;
    font-size: var(--ba-nitu-body-size, var(--scale-base));
    line-height: 1.65; color: var(--muted);
  }
  .ba-gomeni {
    list-style: none; margin: 0 0 1.75rem; padding: 0;
    display: grid; gap: var(--ba-nitu-points-gap, .55rem);
  }
  .ba-gomeni li {
    position: relative; padding-inline-start: 1.5rem;
    font-size: var(--ba-nitu-point-size, var(--scale-base)); line-height: 1.5; color: var(--fg);
  }
  .ba-gomeni li::before {
    content: ""; position: absolute; inset-inline-start: 0; top: .55em;
    width: .5rem; height: .5rem; border-radius: 50%; background: var(--accent);
  }
  .ba-zoroka {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-nitu-cta-pad, .85rem 1.75rem);
    border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-base); font-weight: 600;
    text-decoration: none; cursor: pointer;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ba-zoroka:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ba-zoroka:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  
  .ba-telare { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }
  .ba-zoroka--ghost { background: transparent; color: var(--fg); border: 1px solid var(--border); }

  @media (prefers-reduced-motion: reduce) { .ba-zoroka { transition: none; } }

  @media (max-width: 768px) {
    .ba-bopo--ba-didudu-left .ba-sake { grid-template-columns: 1fr; gap: 2rem; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }

  .ba-nudu--center {
    background: var(--ba-zadiro-bg, var(--surface));
    border-bottom: 1px solid var(--border);
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ba-zadiro-pad-block, 3.5rem);
    padding-inline: var(--ba-zadiro-pad-inline, 1.5rem);
    text-align: center;
  }
  .ba-dugebi {
    max-width: var(--ba-zadiro-max, 680px);
    margin-inline: auto;
    display: flex; flex-direction: column;
    align-items: center; gap: var(--ba-zadiro-gap, 1rem);
  }
  .ba-rufi {
    font-size: var(--scale-xs); color: var(--muted);
    letter-spacing: .06em; text-transform: uppercase; font-weight: 600;
  }
  .ba-deki {
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--scale-xs); font-weight: 600;
    letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); margin: 0;
  }
  .ba-menaze {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--scale-xl);
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-fite {
    margin: 0;
    font-size: var(--scale-base); line-height: 1.65; color: var(--muted);
    max-width: 52ch;
  }
  
  .ba-tafeba {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ba-zadiro-cta-pad, .7rem 1.6rem); border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-sm); font-weight: 600; text-decoration: none; margin-top: .35rem;
  }
  .ba-farini { display: inline-flex; }
  .ba-dapuvu { width: var(--ba-zadiro-accent-size, 2.2rem); height: var(--ba-zadiro-accent-size, 2.2rem); color: var(--accent); }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  
  .ba-faba { font-size: var(--scale-xs, .82rem); color: var(--muted); letter-spacing: .04em; margin: 0 0 .75rem; }
  .ba-gadara { display: inline-flex; margin-bottom: .75rem; }
  .ba-bipu { width: 2rem; height: 2rem; color: var(--accent); }
  .ba-dodema { font-size: var(--scale-base, 1rem); line-height: 1.65; color: var(--muted); margin: .75rem 0 1.5rem; max-width: 70ch; }
  .ba-zipa { display: inline-flex; margin-top: 1.5rem; padding: .6rem 1.4rem; border-radius: var(--radius, 8px); background: transparent; border: 1px solid var(--accent); color: var(--accent); font-size: var(--scale-sm, .92rem); font-weight: 600; text-decoration: none; }

  .ba-godo--timeline {
    background: var(--ba-pukiri-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-pukiri-pad-block, 4.5rem);
    padding-inline: var(--ba-pukiri-pad-inline, 1.5rem);
  }

  .ba-deneto {
    width: min(100%, var(--ba-pukiri-max, 860px));
    margin-inline: auto;
  }

  .ba-bave {
    margin: 0 0 .5rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-title-size, var(--scale-lg));
    line-height: 1.15;
    font-weight: var(--heading-weight, 800);
    letter-spacing: var(--heading-tracking, -.02em);
  }

  .ba-ligebe {
    margin: 0 0 3rem;
    color: var(--muted);
    font-size: var(--ba-pukiri-meta-size, var(--scale-xs));
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .ba-kana {
    display: grid;
    gap: 0;
    counter-reset: legal-section;
  }

  .ba-rabope {
    counter-increment: legal-section;
    display: grid;
    grid-template-columns: var(--ba-pukiri-rail-width, 4rem) minmax(0, 1fr);
    gap: var(--ba-pukiri-section-gap, 1.5rem);
    padding-block: var(--ba-pukiri-section-pad, 1.75rem);
    border-top: 1px solid var(--border);
  }

  .ba-rabope:first-child {
    border-top: 0;
    padding-top: 0;
  }

  .ba-figi {
    display: inline-grid;
    place-items: center;
    width: var(--ba-pukiri-num-box, 2.5rem);
    height: var(--ba-pukiri-num-box, 2.5rem);
    border: 1px solid var(--border);
    border-radius: 999px;
    color: var(--accent);
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-num-size, var(--scale-sm));
    font-weight: 800;
    line-height: 1;
  }

  .ba-figi::before {
    content: counter(legal-section);
  }

  .ba-fozi {
    min-width: 0;
  }

  .ba-kufi {
    margin: 0 0 .75rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-sec-title-size, var(--scale-md));
    line-height: 1.25;
    font-weight: 700;
  }

  .ba-malu {
    margin: 0;
    color: var(--muted);
    font-size: var(--ba-pukiri-text-size, var(--scale-base));
    line-height: 1.7;
  }

  @media (max-width: 600px) {
    .ba-godo--timeline {
      padding-block: var(--ba-pukiri-pad-block-mobile, 3rem);
    }

    .ba-rabope {
      grid-template-columns: 1fr;
      gap: .85rem;
    }

    .ba-figi {
      width: var(--ba-pukiri-num-box-mobile, 2.25rem);
      height: var(--ba-pukiri-num-box-mobile, 2.25rem);
    }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  
  .ba-faba { font-size: var(--scale-xs, .82rem); color: var(--muted); letter-spacing: .04em; margin: 0 0 .75rem; }
  .ba-gadara { display: inline-flex; margin-bottom: .75rem; }
  .ba-bipu { width: 2rem; height: 2rem; color: var(--accent); }
  .ba-dodema { font-size: var(--scale-base, 1rem); line-height: 1.65; color: var(--muted); margin: .75rem 0 1.5rem; max-width: 70ch; }
  .ba-zipa { display: inline-flex; margin-top: 1.5rem; padding: .6rem 1.4rem; border-radius: var(--radius, 8px); background: transparent; border: 1px solid var(--accent); color: var(--accent); font-size: var(--scale-sm, .92rem); font-weight: 600; text-decoration: none; }

  .ba-godo--ba-ludesu-toc {
    background: var(--ba-pukiri-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-pukiri-pad-block, 4.5rem);
    padding-inline: var(--ba-pukiri-pad-inline, 1.5rem);
  }

  .ba-ruvepo {
    width: min(100%, var(--ba-pukiri-max, 1120px));
    margin-inline: auto;
    display: grid;
    grid-template-columns: minmax(220px, 280px) minmax(0, 1fr);
    gap: var(--ba-pukiri-gap, 3rem);
    align-items: start;
  }

  .ba-kafa {
    position: sticky;
    top: var(--ba-pukiri-sticky-top, 1.5rem);
    background: var(--ba-pukiri-toc-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
    padding: var(--ba-pukiri-toc-pad, 1.25rem);
  }

  .ba-gofi {
    margin: 0 0 .85rem;
    font-size: var(--ba-pukiri-toc-title-size, var(--scale-xs));
    color: var(--muted);
    font-weight: 700;
    letter-spacing: .1em;
    text-transform: uppercase;
  }

  .ba-dapudi {
    list-style: none;
    margin: 0;
    padding: 0;
    display: grid;
    gap: .45rem;
  }

  .ba-dapudi a {
    color: var(--accent);
    text-decoration: none;
    font-size: var(--ba-pukiri-toc-link-size, var(--scale-sm));
    line-height: 1.45;
  }

  .ba-dapudi a:hover { text-decoration: underline; }

  .ba-bode {
    min-width: 0;
  }

  .ba-bave {
    margin: 0 0 .5rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-title-size, var(--scale-lg));
    line-height: 1.15;
    font-weight: var(--heading-weight, 800);
    letter-spacing: var(--heading-tracking, -.02em);
  }

  .ba-ligebe {
    margin: 0 0 2.75rem;
    color: var(--muted);
    font-size: var(--ba-pukiri-meta-size, var(--scale-xs));
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .ba-kana {
    display: grid;
    gap: var(--ba-pukiri-section-gap, 2.5rem);
  }

  .ba-rabope {
    scroll-margin-top: var(--ba-pukiri-scroll-margin, 2rem);
    padding-block-end: 2.5rem;
    border-bottom: 1px solid var(--border);
  }

  .ba-rabope:last-child {
    border-bottom: 0;
    padding-block-end: 0;
  }

  .ba-kufi {
    margin: 0 0 .85rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-sec-title-size, var(--scale-md));
    line-height: 1.25;
    font-weight: 700;
  }

  .ba-malu {
    margin: 0;
    color: var(--muted);
    font-size: var(--ba-pukiri-text-size, var(--scale-base));
    line-height: 1.7;
  }

  @media (max-width: 820px) {
    .ba-ruvepo {
      grid-template-columns: 1fr;
      gap: 2rem;
    }

    .ba-kafa {
      position: static;
    }
  }

  @media (max-width: 600px) {
    .ba-godo--ba-ludesu-toc {
      padding-block: var(--ba-pukiri-pad-block-mobile, 3rem);
    }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  
  .ba-faba { font-size: var(--scale-xs, .82rem); color: var(--muted); letter-spacing: .04em; margin: 0 0 .75rem; }
  .ba-gadara { display: inline-flex; margin-bottom: .75rem; }
  .ba-bipu { width: 2rem; height: 2rem; color: var(--accent); }
  .ba-dodema { font-size: var(--scale-base, 1rem); line-height: 1.65; color: var(--muted); margin: .75rem 0 1.5rem; max-width: 70ch; }
  .ba-zipa { display: inline-flex; margin-top: 1.5rem; padding: .6rem 1.4rem; border-radius: var(--radius, 8px); background: transparent; border: 1px solid var(--accent); color: var(--accent); font-size: var(--scale-sm, .92rem); font-weight: 600; text-decoration: none; }

  .ba-godo--simple {
    background: var(--ba-pukiri-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ba-pukiri-pad-block, 4.5rem);
    padding-inline: var(--ba-pukiri-pad-inline, 1.5rem);
  }
  .ba-deneto {
    max-width: var(--ba-pukiri-max, 700px);
    margin-inline: auto;
  }

  .ba-bave {
    margin: 0 0 .5rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-title-size, var(--scale-lg));
    font-weight: var(--heading-weight, 800); line-height: 1.15; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ba-ligebe {
    margin: 0 0 3rem;
    font-size: var(--ba-pukiri-meta-size, var(--scale-xs));
    color: var(--muted);
    letter-spacing: .05em; text-transform: uppercase; font-weight: 600;
  }

  .ba-kana {
    display: flex; flex-direction: column;
    gap: var(--ba-pukiri-section-gap, 2rem);
  }
  .ba-rabope { }
  .ba-kufi {
    margin: 0 0 .7rem;
    font-family: var(--display-font);
    font-size: var(--ba-pukiri-sec-title-size, var(--scale-md));
    font-weight: 700; line-height: 1.3; color: var(--fg);
  }
  .ba-malu {
    margin: 0;
    font-size: var(--ba-pukiri-text-size, var(--scale-base));
    line-height: 1.7; color: var(--muted);
  }

  @media (max-width: 600px) {
    .ba-godo--simple { padding-block: var(--ba-pukiri-pad-block-mobile, 3rem); }
  }
.ba-selopo{position:sticky;inset-block-start:0;}
.ba-pudufa{display:flex;align-items:center;}.ba-gase{order:2;margin-inline:auto;}.ba-noma{order:1;}
.ba-pudufa{border-block-end:1px solid;border-image:linear-gradient(90deg,transparent,var(--border) 30%,var(--border) 70%,transparent) 1;}
.ba-kate{background-image:linear-gradient(currentColor,currentColor);background-position:0 100%;background-repeat:no-repeat;background-size:0% 2px;transition:background-size var(--motion-duration,.2s) ease;}
.ba-kate:hover{background-size:100% 2px;}
.ba-kate{text-transform:none;letter-spacing:normal;}
.ba-lurevi{border-block-start:1px solid var(--border);}
.ba-dubefi:hover{color:var(--accent);}
.ba-dubefi{text-transform:uppercase;letter-spacing:.06em;}
.ba-ranu{font-weight:700;color:var(--fg);}
.ba-zedino:not(:last-child)::after{content:"\00B7";opacity:.5;margin-inline:.45em;}
.ba-beza .ba-lokuse{display:flex;flex-direction:column;}
.ba-lemeko{border:none;background:var(--surface);box-shadow:0 6px 24px rgba(0,0,0,.12);}
.ba-lemeko{border-radius:22px;}
.ba-lemeko:hover{box-shadow:0 10px 30px rgba(0,0,0,.18);}
.ba-kisu{border-radius:50%;}
.ba-sudu{--ba-lidolo-min-h:80vh;}
.ba-sudu{--ba-lidolo-title-size:clamp(3.2rem,11vw,8rem);}
.ba-sudu{--ba-lidolo-pad-block:6rem;--ba-lidolo-gap:3.5rem;}
.ba-sudu{--ba-lidolo-content-max:560px;--ba-lidolo-max:980px;}
.ba-sudu{--ba-lidolo-align:center;}