: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:4.675rem;--space-gap:1.7rem;--space-card:1.488rem;--glow:none;--ro-dizoso-height:2.975rem;--ro-zapi-pad-block:3.4rem;--ro-zapi-gap:2.55rem;--ro-luti-media-ratio:.55fr .45fr;--ro-luti-gap:3.4rem;--ro-luti-pad-block:4.675rem;--ro-fegibe-pad-block:4.675rem;--ro-kuva-pad-block:2.55rem;--ro-rapamu-pad-block:5.1rem;--ro-dozi-stage-min:560px;--ro-dozi-pad-block:3.4rem;--ro-dozi-card-bg:rgba(20,13,9,.55);--ro-dozi-card-border:rgba(255,255,255,.12);--ro-babodu-pad-block:4.25rem;--ro-paka-pad-block:4.675rem;--ro-netufi-pad-block:4.675rem;--ro-netufi-cols:3;--ro-zinaba-pad-block:3.4rem;--ro-dabupa-pad-block:3.825rem;--bg:#f2f3f7;--ro-didu-rgb:242,243,247;--fg:#2e2e30;--muted:#8b8c8f;--surface:#fafafc;--border:#d7d8db;--accent:#7381c8;--accent-fg:#ffffff;--display-font:'Fraunces', system-ui, sans-serif;--body-font:'Inter', system-ui, sans-serif;--radius:0px;--heading-weight:800;--heading-tracking:-.02em;--kicker-transform:none;--kicker-tracking:.04em;--motion-duration:.2s;--motion-lift:-4px;--card-shadow:0 8px 24px rgba(0,0,0,.10);--ro-dozi-media-shadow:0 14px 36px rgba(0,0,0,.14);--ro-kipe-console-shadow:0 18px 50px rgba(0,0,0,.22);--ro-dosi-play-shadow:0 6px 18px rgba(0,0,0,.20);--ro-posu-h:3.4rem;--ro-posu-h-ft:3.7rem;}

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

  .ro-rumo {
    position: fixed; inset-block-start: 0; inset-inline: 0;
    z-index: 100; font-family: var(--body-font);
  }
  .ro-deto {
    background: var(--ro-dizoso-nav-bg, var(--surface));
    border-bottom: 1px solid var(--border);
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    height: var(--ro-dizoso-height, 2.975rem);
    padding-inline: var(--ro-dizoso-pad-x, clamp(0.85rem, 4vw, 2.55rem));
    gap: var(--ro-dizoso-gap, 0.85rem);
    position: relative;
  }

  .ro-desa {
    display: inline-flex; align-items: center; gap: .6rem;
    text-decoration: none; white-space: nowrap; justify-self: start;
  }
  .ro-lisabo {
    width: var(--ro-dizoso-logo-size, 2rem); height: var(--ro-dizoso-logo-size, 2rem);
    object-fit: contain; display: block;
  }
  .ro-tegipe {
    height: var(--ro-posu-h, 3.2rem); width: auto; max-width: min(68vw, 340px);
    object-fit: contain; display: block;
  }
  .ro-bike {
    font-family: var(--display-font);
    font-size: var(--scale-md); font-weight: 700; color: var(--fg);
  }

  .ro-nokazi {
    display: flex; align-items: center; gap: var(--ro-dizoso-nav-gap, 2.125rem);
    list-style: none; margin: 0; padding: 0;
    justify-self: center;
  }
  .ro-zipuka {
    color: var(--muted); text-decoration: none;
    font-size: var(--scale-sm); font-weight: 600;
    letter-spacing: .06em; text-transform: uppercase; white-space: nowrap;
    transition: color var(--motion-duration, .15s) ease;
  }
  .ro-zipuka:hover { color: var(--fg); }
  .ro-zipuka--active { color: var(--accent); }
  .ro-zipuka:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; border-radius: 0px; }

  .ro-fedidi { justify-self: end; }
  .ro-kusu {
    display: inline-flex; align-items: center; justify-content: center;
    padding: .5rem 1.25rem;
    border-radius: var(--radius, 8px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--scale-sm); font-weight: 600;
    text-decoration: none; white-space: nowrap;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ro-kusu:hover { transform: translateY(-1px); }
  .ro-kusu:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

  .ro-bofosu {
    display: none;
    background: none; border: 1px solid var(--border);
    border-radius: var(--radius, 6px); cursor: pointer; color: var(--fg);
    width: 2.25rem; height: 2.25rem;
    align-items: center; justify-content: center;
  }
  .ro-nineso { display: block; width: 1.1rem; height: 2px; background: currentColor; position: relative; }
  .ro-nineso::before,
  .ro-nineso::after {
    content: ""; position: absolute; left: 0; width: 100%; height: 2px;
    background: currentColor; transition: transform var(--motion-duration, .2s) ease;
  }
  .ro-nineso::before { top: -.42rem; }
  .ro-nineso::after  { top:  .42rem; }

  .ro-rumo[data-open] .ro-nokazi {
    display: flex; flex-direction: column; align-items: stretch;
    position: absolute; inset-block-start: var(--ro-dizoso-height, 2.975rem); inset-inline: 0;
    z-index: 100;            
    background: var(--surface); border-bottom: 1px solid var(--border);
    padding: 1rem var(--ro-dizoso-pad-x, 0.85rem); gap: .5rem;
  }
  .ro-rumo[data-open] .ro-zipuka { padding: .6rem 0; border-bottom: 1px solid var(--border); }
  .ro-rumo[data-open] .ro-zipuka:last-child { border-bottom: none; }
  .ro-rumo[data-open] .ro-nineso { background: transparent; }
  .ro-rumo[data-open] .ro-nineso::before { transform: rotate(45deg) translate(.3rem, .3rem); }
  .ro-rumo[data-open] .ro-nineso::after  { transform: rotate(-45deg) translate(.3rem, -.3rem); }

  @media (prefers-reduced-motion: reduce) {
    .ro-zipuka, .ro-kusu, .ro-nineso::before, .ro-nineso::after { transition: none; }
  }
  @media (max-width: 768px) {
    .ro-deto { grid-template-columns: 1fr auto; }
    .ro-nokazi { display: none; }
    .ro-fedidi { display: none; }
    .ro-bofosu { display: inline-flex; }
  }

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

  .ro-favu {
    background: var(--ro-zapi-bg, var(--surface));
    border-top: 1px solid var(--border);
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-zapi-pad-block, var(--space-section));
    padding-inline: var(--ro-zapi-pad-inline, clamp(0.85rem, 4vw, 2.55rem));
  }

  .ro-gile {
    max-width: var(--ro-zapi-max, 1150px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ro-zapi-cols, 1.2fr 1fr 1fr);
    gap: var(--ro-zapi-gap, var(--space-gap));
    margin-bottom: 3rem;
  }

  .ro-begeto {
    display: flex; align-items: center; gap: .6rem;
    text-decoration: none; margin-bottom: 1rem;
  }
  .ro-kubemi {
    width: var(--ro-zapi-logo-size, 2rem); height: var(--ro-zapi-logo-size, 2rem);
    object-fit: contain; display: block; flex-shrink: 0;
  }
  .ro-kage {
    height: var(--ro-posu-h-ft, 3.5rem); width: auto; max-width: min(75vw, 400px);
    object-fit: contain; display: block;
  }
  .ro-bizu {
    font-family: var(--display-font);
    font-size: var(--scale-md); font-weight: 700;
    color: var(--fg);
  }
  .ro-dute {
    margin: 0 0 1.5rem;
    font-size: var(--scale-sm); line-height: 1.55; color: var(--muted);
    max-width: 28ch;
  }
  .ro-bego {
    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;
  }
  .ro-bego:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-bego:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

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

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

  .ro-fasa {
    max-width: var(--ro-zapi-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;
  }
  .ro-kika {
    margin: 0;
    font-size: var(--scale-xs); color: var(--muted);
  }
  .ro-tefi {
    display: flex; flex-wrap: wrap; gap: 1rem;
  }
  .ro-gato {
    font-size: var(--scale-xs); color: var(--muted);
    text-decoration: none;
  }
  .ro-gato:hover { color: var(--fg); }

  @media (prefers-reduced-motion: reduce) {
    .ro-bego, .ro-deli { transition: none; }
  }

  @media (max-width: 860px) {
    .ro-gile { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 560px) {
    .ro-gile { grid-template-columns: 1fr; gap: 2.5rem; }
    .ro-fasa { flex-direction: column; align-items: flex-start; }
  }

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

  #ro-babi {
    position: fixed;
    inset-inline-end: var(--ro-dedula-offset-x, 1.25rem);
    bottom: var(--ro-dedula-offset-y, 1.25rem);
    z-index: 9999;
    width: var(--ro-dedula-width, clamp(260px, 90vw, 340px));
    background: var(--ro-dedula-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 12px);
    box-shadow: var(--card-shadow);
    padding: var(--ro-dedula-pad, 1.062rem);
    visibility: hidden; pointer-events: none;   
    transform: translateY(calc(100% + var(--ro-dedula-offset-y, 1.25rem)));
    transition: transform var(--motion-duration, .3s) ease;
  }
  #ro-babi.ro-setame { transform: translateY(0); visibility: visible; pointer-events: auto; }

  .ro-babi__inner {
    display: flex; flex-direction: column; gap: var(--ro-dedula-gap, 0.85rem);
  }
  .ro-babi__text {
    margin: 0;
    font-size: var(--scale-sm); line-height: 1.55; color: var(--muted);
    flex: 0 0 auto; 
  }
  .ro-babi__link { color: var(--accent); text-decoration: underline; }
  .ro-babi__link:hover { text-decoration: none; }

  .ro-babi__actions {
    display: flex; gap: .5rem;
  }
  .ro-babi__actions button {
    flex: 1;
    padding: .6rem .75rem;
    border-radius: var(--radius, 8px);
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .04em; text-transform: uppercase;
    cursor: pointer; border: none; white-space: nowrap;
  }
  #ro-babi-accept { background: var(--accent); color: var(--accent-fg); }
  #ro-babi-decline {
    background: transparent;
    border: 1px solid var(--border) !important;
    color: var(--muted);
  }
  #ro-babi-decline:hover { color: var(--fg); }

  @media (prefers-reduced-motion: reduce) { #ro-babi { transition: none; } }
  @media (max-width: 400px) {
    #ro-babi { inset-inline-end: .75rem; bottom: .75rem; width: calc(100vw - 1.5rem); }
  }

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

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

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

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

  @media (max-width: 768px) {
    .ro-pesaba--center { padding-block: var(--ro-kipe-pad-block-mobile, 4.5rem); }
    .ro-bilabe { max-width: none; }
  }
  
  .ro-gife { list-style: none; margin: .9rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: .5rem; justify-content: center; }
  .ro-dubi { 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; }
  .ro-kelopo { margin: 1.25rem 0 0; padding: 0; display: flex; flex-wrap: wrap; gap: 1.5rem; justify-content: center; }
  .ro-nimu { display: flex; flex-direction: column; }
  .ro-geda { font-family: var(--display-font); font-size: 1.6rem; font-weight: 800; color: var(--accent); line-height: 1; }
  .ro-pabadi { font-size: var(--scale-xs, .8rem); color: var(--muted); }

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

  .ro-fudi--ro-kefa-left {
    background: var(--ro-luti-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-luti-pad-block, var(--space-section));
    padding-inline: var(--ro-luti-pad-inline, 1.275rem);
  }
  .ro-fudi--ro-kefa-left .ro-rike {
    max-width: var(--ro-luti-max, 1150px);
    margin-inline: auto;
    display: grid;
    grid-template-columns: var(--ro-luti-media-ratio, .55fr .45fr);
    gap: var(--ro-luti-gap, 3.4rem);
    align-items: var(--ro-luti-align, center);
  }

  .ro-fokedi {
    aspect-ratio: var(--ro-luti-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);
  }

  .ro-dudu {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ro-luti-kicker-size, var(--scale-xs));
    letter-spacing: var(--ro-luti-kicker-spacing, .18em);
    text-transform: uppercase;
    color: var(--accent); font-weight: 600;
  }
  .ro-puputu {
    margin: 0 0 1rem;
    font-family: var(--display-font);
    font-size: var(--ro-luti-title-size, var(--scale-lg));
    font-weight: var(--ro-luti-title-weight, 800);
    line-height: var(--ro-luti-title-leading, 1.08);
    letter-spacing: var(--ro-luti-title-spacing, -.02em);
  }
  .ro-nofodo {
    margin: 0 0 .9rem;
    font-size: var(--ro-luti-sub-size, var(--scale-md));
    line-height: 1.4; color: var(--fg); font-weight: 500;
  }
  .ro-kebi {
    margin: 0 0 1.4rem;
    font-size: var(--ro-luti-body-size, var(--scale-base));
    line-height: 1.65; color: var(--muted);
  }
  .ro-mafo {
    list-style: none; margin: 0 0 1.75rem; padding: 0;
    display: grid; gap: var(--ro-luti-points-gap, 0.468rem);
  }
  .ro-mafo li {
    position: relative; padding-inline-start: 1.5rem;
    font-size: var(--ro-luti-point-size, var(--scale-base)); line-height: 1.5; color: var(--fg);
  }
  .ro-mafo li::before {
    content: ""; position: absolute; inset-inline-start: 0; top: .55em;
    width: .5rem; height: .5rem; border-radius: 50%; background: var(--accent);
  }
  .ro-modu {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-luti-cta-pad, 0.722rem 1.488rem);
    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;
  }
  .ro-modu:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-modu:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  
  .ro-pizode { display: flex; flex-wrap: wrap; gap: 1rem; align-items: center; }
  .ro-modu--ghost { background: transparent; color: var(--fg); border: 1px solid var(--border); }

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

  @media (max-width: 768px) {
    .ro-fudi--ro-kefa-left .ro-rike { grid-template-columns: 1fr; gap: 2rem; }
  }

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

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

  @media (max-width: 768px) {
    .ro-nini--inline .ro-labo { gap: 1rem 1.5rem; }
    .ro-dadi { flex: 1 1 40%; }
    .ro-dadi:not(:last-child)::after { display: none; }  
    .ro-poto { font-size: 1.6rem; }
  }

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

  .ro-radasu--accordion {
    background: var(--ro-fegibe-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-fegibe-pad-block, var(--space-section));
    padding-inline: var(--ro-fegibe-pad-inline, 1.275rem);
  }
  .ro-lusi {
    max-width: var(--ro-fegibe-max, 760px);
    margin-inline: auto;
  }
  .ro-lipe {
    text-align: var(--ro-fegibe-head-align, center);
    margin-bottom: 2.5rem;
  }
  .ro-tami {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ro-fegibe-kicker-size, var(--scale-xs));
    letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ro-dilole {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-fegibe-title-size, var(--scale-lg));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }

  .ro-giga {
    display: flex; flex-direction: column;
    gap: var(--ro-fegibe-gap, 0.637rem);
  }
  .ro-tuzu {
    background: var(--ro-fegibe-item-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 10px);
    overflow: hidden;
  }
  .ro-vobe {
    list-style: none;
    cursor: pointer;
    padding: var(--ro-fegibe-item-pad, 0.977rem 1.19rem);
    display: flex; align-items: center; justify-content: space-between;
    gap: 1rem;
    font-family: var(--display-font);
    font-size: var(--ro-fegibe-q-size, var(--scale-base));
    font-weight: 600; line-height: 1.3;
    color: var(--fg);
  }
  .ro-vobe::-webkit-details-marker { display: none; }
  
  .ro-vobe::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;
  }
  .ro-tuzu[open] .ro-vobe::after {
    transform: rotate(90deg);
    background: linear-gradient(var(--accent), var(--accent)) center/100% 2px no-repeat;
  }
  .ro-takimu {
    padding: 0 var(--ro-fegibe-answer-pad-x, 1.19rem) var(--ro-fegibe-answer-pad-b, 1.062rem);
    margin: 0;
    font-size: var(--ro-fegibe-a-size, var(--scale-base));
    line-height: 1.6; color: var(--muted);
  }

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

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

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

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

  .ro-ludi--quote {
    background: var(--ro-rapamu-bg, var(--surface));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-rapamu-pad-block, var(--space-section));
    padding-inline: var(--ro-rapamu-pad-inline, 1.275rem);
  }
  .ro-fofi {
    max-width: var(--ro-rapamu-max, 900px);
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    gap: var(--ro-rapamu-gap, var(--space-gap));
  }

  .ro-kafu {
    font-family: var(--display-font);
    font-size: var(--ro-rapamu-mark-size, 5rem);
    line-height: .6;
    color: var(--accent);
    opacity: var(--ro-rapamu-mark-opacity, .6);
    user-select: none;
    aria-hidden: true;
  }

  .ro-bikubo {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-rapamu-quote-size, var(--scale-lg));
    font-weight: var(--ro-rapamu-quote-weight, 700);
    line-height: var(--ro-rapamu-quote-leading, 1.2);
    letter-spacing: var(--heading-tracking, -.02em);
    font-style: italic;
    max-width: var(--ro-rapamu-quote-max, 820px);
  }

  .ro-lalive {
    display: flex; align-items: center; gap: .75rem;
    font-size: var(--ro-rapamu-attr-size, var(--scale-sm));
    letter-spacing: .1em;
    text-transform: uppercase;
    color: var(--accent);
    font-weight: 600;
  }
  .ro-lalive::before,
  .ro-lalive::after {
    content: "";
    display: block;
    width: var(--ro-rapamu-attr-line, 2.5rem);
    height: 1px;
    background: var(--accent);
    opacity: .5;
  }

  .ro-pufobe {
    margin: 0;
    max-width: var(--ro-rapamu-text-max, 580px);
    font-size: var(--ro-rapamu-body-size, var(--scale-base));
    line-height: 1.65;
    color: var(--muted);
  }

  .ro-muboki {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-rapamu-cta-pad, 0.68rem 1.488rem);
    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;
  }
  .ro-muboki:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-muboki:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }

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

  @media (max-width: 600px) {
    .ro-ludi--quote { padding-block: var(--ro-rapamu-pad-block-mobile, 4rem); }
    .ro-kafu { font-size: 3.5rem; }
  }

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

  .ro-lapibe--cards {
    background: var(--ro-vode-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-vode-pad-block, 4.675rem);
    padding-inline: var(--ro-vode-pad-inline, 1.275rem);
  }
  .ro-lapibe--cards .ro-nalu { max-width: var(--ro-vode-max, 1150px); margin-inline: auto; }

  .ro-dona {
    max-width: var(--ro-vode-head-max, 640px);
    margin-bottom: var(--ro-vode-head-gap, 2.55rem);
    text-align: var(--ro-vode-head-align, left);
  }
  .ro-feso {
    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;
  }
  .ro-ganava {
    margin: 0 0 1rem; font-family: var(--display-font);
    font-size: var(--ro-vode-title-size, clamp(1.9rem, 4vw, 2.8rem));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ro-donuvu { margin: 0; font-size: 1.1rem; line-height: 1.6; color: var(--muted); }

  .ro-mameda {
    display: grid;
    grid-template-columns: repeat(var(--ro-vode-cols, 3), 1fr);
    gap: var(--ro-vode-gap, 1.275rem);
  }
  .ro-bofe {
    background: var(--ro-vode-card-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 12px);
    padding: var(--ro-vode-card-pad, 1.488rem);
    text-align: var(--ro-vode-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;
  }
  .ro-bofe:hover { transform: translateY(var(--motion-lift, -3px)); border-color: var(--accent); }
  .ro-kenasa {
    width: var(--ro-vode-icon-size, 44px); height: var(--ro-vode-icon-size, 44px);
    display: grid; place-items: center;
    border-radius: var(--ro-vode-icon-radius, 10px);
    background: var(--ro-vode-icon-bg, color-mix(in srgb, var(--accent) 15%, transparent));
    color: var(--accent); font-size: 22px;
  }
  .ro-bade {
    width: var(--ro-vode-icon-size, 44px); height: var(--ro-vode-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(--ro-vode-icon-radius, 10px);
  }
  .ro-gubo {
    aspect-ratio: var(--ro-vode-media-ratio, 16 / 9);
    border-radius: var(--radius, 12px);
    background: var(--surface);
    border: 1px solid var(--border);
    margin-bottom: .25rem;
  }
  .ro-bibuge {
    font-family: var(--display-font); font-weight: 800; line-height: 1;
    font-size: var(--ro-vode-stat-size, 2.2rem); color: var(--accent);
  }
  .ro-bibuge:empty { display: none; }
  .ro-sebu { margin: 0; font-family: var(--display-font); font-size: 1.2rem; font-weight: 700; }
  .ro-zema { margin: 0; font-size: .98rem; line-height: 1.55; color: var(--muted); }

  @media (prefers-reduced-motion: reduce) { .ro-bofe { transition: none; } }
  @media (max-width: 860px) { .ro-lapibe--cards .ro-mameda { grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 520px) { .ro-lapibe--cards .ro-mameda { grid-template-columns: 1fr; } }

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

  .ro-lofane--fullbleed {
    position: relative;
    overflow: hidden;
    background: var(--surface);
    color: var(--fg);
    font-family: var(--body-font);
    min-height: var(--ro-dozi-stage-min, clamp(420px, 60vh, 620px));
    display: grid;
    align-items: center;
    padding-block: var(--ro-dozi-pad-block, var(--space-section));
    padding-inline: var(--ro-dozi-pad-inline, 1.275rem);
  }

  .ro-fuvi {
    position: absolute;
    inset: 0;
    z-index: 0;
  }
  .ro-boga {
    width: 100%; height: 100%;
    background: var(--surface);
    display: grid; place-items: center;
    color: var(--muted); font-size: var(--scale-sm);
  }
  
  .ro-fuvi::after {
    content: "";
    position: absolute; inset: 0;
    background: var(--ro-dozi-overlay, linear-gradient(90deg, var(--bg) 0%, transparent 75%));
    opacity: var(--ro-dozi-overlay-opacity, .9);
  }
  .ro-lofane--fullbleed[data-reverse="true"] .ro-fuvi::after {
    background: var(--ro-dozi-overlay-rev, linear-gradient(270deg, var(--bg) 0%, transparent 75%));
  }

  .ro-numo {
    position: relative;
    z-index: 1;
    width: 100%;
    max-width: var(--ro-dozi-max, 1200px);
    margin-inline: auto;
  }
  .ro-kapofi {
    width: var(--ro-dozi-card-width, min(520px, 100%));
    padding: var(--ro-dozi-card-pad, clamp(1.488rem, 3vw, 2.125rem));
    
    background: var(--ro-dozi-card-bg, rgba(var(--ro-didu-rgb), 0.88));
    border: 1px solid var(--ro-dozi-card-border, var(--border));
    border-radius: var(--radius, 10px);
    backdrop-filter: var(--ro-dozi-card-blur, blur(4px));
  }
  .ro-lofane--fullbleed[data-reverse="true"] .ro-numo { display: flex; justify-content: flex-end; }

  .ro-sala {
    margin: 0 0 1rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ro-dozi-kicker-size, var(--scale-xs));
    letter-spacing: var(--ro-dozi-kicker-spacing, .18em);
    text-transform: var(--ro-dozi-kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ro-mela {
    margin: 0 0 1.1rem;
    font-family: var(--display-font);
    font-size: var(--ro-dozi-title-size, var(--scale-lg));
    font-weight: var(--ro-dozi-title-weight, 800);
    line-height: var(--ro-dozi-title-leading, 1.08);
    letter-spacing: var(--ro-dozi-title-spacing, -.02em);
    color: var(--ro-dozi-title-color, var(--fg));
  }
  .ro-dugo {
    margin: 0 0 1rem;
    font-size: var(--ro-dozi-sub-size, var(--scale-md));
    line-height: 1.4; font-weight: 500;
    color: var(--ro-dozi-sub-color, var(--fg));
  }
  .ro-dumado {
    margin: 0 0 1.5rem;
    font-size: var(--ro-dozi-body-size, var(--scale-base));
    line-height: 1.6;
    
    color: var(--ro-dozi-body-color, var(--fg));
  }
  .ro-vabu {
    list-style: none; margin: 0 0 1.75rem; padding: 0;
    display: grid; gap: var(--ro-dozi-points-gap, 0.51rem);
  }
  .ro-vabu li {
    position: relative; padding-inline-start: 1.6rem;
    font-size: var(--ro-dozi-point-size, var(--scale-base)); line-height: 1.5;
    color: var(--ro-dozi-point-color, var(--fg));
  }
  .ro-vabu li::before {
    content: ""; position: absolute; inset-inline-start: 0; top: .55em;
    width: .55rem; height: .55rem; border-radius: 50%; background: var(--accent);
  }
  .ro-dorili { display: flex; flex-wrap: wrap; gap: 1rem; }
  .ro-lazuza {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-dozi-cta-pad, 0.68rem 1.275rem);
    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;
  }
  .ro-lazuza:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-lazuza--primary { background: var(--accent); color: var(--accent-fg); }
  .ro-lazuza--ghost {
    background: transparent; color: var(--fg);
    border: 1px solid var(--ro-dozi-ghost-border, var(--border));
  }

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

  @media (max-width: 768px) {
    .ro-lofane--fullbleed { min-height: var(--ro-dozi-stage-min-mobile, 0); }
    .ro-kapofi { width: 100%; }
    .ro-lofane--fullbleed[data-reverse="true"] .ro-numo { justify-content: flex-start; }
    .ro-fuvi::after,
    .ro-lofane--fullbleed[data-reverse="true"] .ro-fuvi::after {
      background: var(--ro-dozi-overlay-mobile, linear-gradient(to top, var(--bg) 30%, transparent 100%));
    }
  }

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

  .ro-gema--split {
    background: var(--ro-babodu-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-babodu-pad-block, var(--space-section));
    padding-inline: var(--ro-babodu-pad-inline, 1.275rem);
  }
  .ro-dibaga {
    max-width: var(--ro-babodu-max, 1100px);
    margin-inline: auto;
    background: var(--ro-babodu-card-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 16px);
    padding: var(--ro-babodu-card-pad, var(--space-card));
    display: grid;
    grid-template-columns: var(--ro-babodu-split-ratio, 1fr auto);
    gap: var(--ro-babodu-gap, var(--space-gap));
    align-items: center;
  }
  .ro-foba {
    display: flex; flex-direction: column; gap: .85rem;
  }
  .ro-nubi {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-babodu-title-size, var(--scale-xl));
    font-weight: var(--heading-weight, 800); line-height: 1.12; letter-spacing: var(--heading-tracking, -.02em);
  }
  .ro-disuze {
    margin: 0;
    font-size: var(--ro-babodu-subtext-size, 1.08rem);
    line-height: 1.55; color: var(--muted);
    max-width: 48ch;
  }
  .ro-vezu {
    display: flex; flex-direction: column; gap: .85rem;
    align-items: var(--ro-babodu-actions-align, flex-start);
  }
  .ro-fukaku {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-babodu-cta-pad, 0.85rem 1.912rem);
    border-radius: var(--radius, 12px);
    background: var(--accent); color: var(--accent-fg);
    font-size: var(--ro-babodu-cta-size, var(--scale-md)); font-weight: 700;
    text-decoration: none; white-space: nowrap;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ro-fukaku:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-fukaku:focus-visible { outline: 2px solid var(--accent); outline-offset: 3px; }
  .ro-benu {
    margin: 0;
    font-size: var(--ro-babodu-disclaimer-size, var(--scale-xs));
    color: var(--muted); letter-spacing: .03em;
  }

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

  @media (max-width: 760px) {
    .ro-gema--split .ro-dibaga { grid-template-columns: 1fr; gap: 1.75rem; }
    .ro-vezu { align-items: stretch; }
    .ro-fukaku { width: 100%; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  .ro-nuna {
    background: var(--ro-buti-bg, var(--surface));
    border-bottom: 1px solid var(--border);
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ro-buti-pad-block, 3.4rem);
    padding-inline: var(--ro-buti-pad-inline, 1.275rem);
    text-align: center;
  }
  .ro-belazo { max-width: var(--ro-buti-max, 720px); margin-inline: auto; display: flex; flex-direction: column; align-items: center; gap: var(--ro-buti-gap, 0.935rem); }
  .ro-biza {
    display: inline-flex; align-items: center; gap: .4rem;
    padding: .3rem .8rem; border-radius: 999px;
    background: var(--ro-buti-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;
  }
  .ro-mamefu { 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); }
  .ro-lubego { margin: 0; font-size: var(--scale-base); line-height: 1.65; color: var(--muted); max-width: 56ch; }
  .ro-datara {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-buti-cta-pad, 0.637rem 1.445rem); 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;
  }
  .ro-datara:hover { transform: translateY(var(--motion-lift, -2px)); }

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

  .ro-lirepu--stacked {
    background: var(--ro-kafe-bg, var(--bg));
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ro-kafe-pad-block, var(--space-section));
    padding-inline: var(--ro-kafe-pad-inline, 1.275rem);
  }
  .ro-bubo {
    max-width: var(--ro-kafe-max, 620px); margin-inline: auto;
  }
  .ro-pepeke {
    text-align: var(--ro-kafe-head-align, center);
    margin-bottom: 2.5rem;
  }
  .ro-seraro {
    margin: 0 0 .6rem;
    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);
  }
  .ro-naguna {
    margin: 0; font-size: var(--scale-sm);
    line-height: 1.55; color: var(--muted);
  }
  
  .ro-bulo { display: inline-flex; margin-bottom: .6rem; }
  .ro-bemuke { width: var(--ro-kafe-accent-size, 2.1rem); height: var(--ro-kafe-accent-size, 2.1rem); color: var(--accent); }
  .ro-fonoda { font-size: var(--scale-xs); color: var(--muted); letter-spacing: .06em; text-transform: uppercase; font-weight: 600; margin: 0 0 .6rem; }
  .ro-muzilo { font-size: var(--scale-base); line-height: 1.6; color: var(--muted); margin: .75rem 0 0; }
  
  .ro-tudi { margin-top: 1.75rem; text-align: left; }
  .ro-vifola { margin: 0 0 .6rem; font-family: var(--display-font); font-size: var(--scale-md); font-weight: 700; color: var(--fg); }
  .ro-sanu { margin: 0; font-size: var(--scale-sm); line-height: 1.6; color: var(--muted); }
  .ro-reki, .ro-tolutu { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: .5rem; }
  .ro-raguti { font-size: var(--scale-sm); color: var(--fg); padding-inline-start: 1.2em; position: relative; }
  .ro-raguti::before { content: "\2022"; position: absolute; inset-inline-start: 0; color: var(--accent); }
  .ro-livodo { font-size: var(--scale-sm); color: var(--muted); line-height: 1.55; }
  .ro-livodo strong { color: var(--fg); }
  .ro-bobalu { margin: 1.25rem 0 0; font-size: var(--scale-sm); color: var(--muted); }
  .ro-vira { 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; }
  .ro-neva { display: flex; flex-direction: column; gap: 1rem; }
  .ro-zibure { display: flex; flex-direction: column; gap: .4rem; }
  .ro-nenezu {
    font-size: var(--scale-xs); font-weight: 700;
    letter-spacing: .06em; text-transform: uppercase; color: var(--muted);
  }
  .ro-tupaba,
  .ro-sili {
    background: var(--surface); border: var(--ro-kafe-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(--ro-kafe-input-pad, 0.637rem 0.85rem); width: 100%;
    transition: border-color .15s ease;
  }
  .ro-tupaba:focus, .ro-sili:focus { outline: none; border-color: var(--accent); }
  .ro-sili { min-height: var(--ro-kafe-textarea-min-h, 120px); resize: vertical; }
  .ro-reba { display: none; visibility: hidden; position: absolute; }
  .ro-dogani {
    width: 100%; padding: var(--ro-kafe-btn-pad, 0.765rem 0.85rem);
    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;
    transition: transform var(--motion-duration, .15s) ease;
  }
  .ro-dogani:hover { transform: translateY(var(--motion-lift, -2px)); }
  .ro-dutubo {
    padding: 1rem 1.25rem; border-radius: var(--radius, 8px);
    font-size: var(--scale-sm); font-weight: 600; margin-bottom: 1rem;
  }
  .ro-dutubo--success {
    background: color-mix(in srgb, var(--accent) 12%, transparent);
    border: 1px solid var(--accent); color: var(--fg);
  }
  .ro-dutubo--error {
    background: color-mix(in srgb, #e53e3e 12%, transparent);
    border: 1px solid #e53e3e; color: var(--fg);
  }

  .ro-redi {
    margin-top: 2.5rem; text-align: center;
    padding-top: 2rem; border-top: 1px solid var(--border);
  }
  .ro-bata {
    display: block; margin-bottom: .5rem;
    font-size: var(--scale-xs); color: var(--muted);
    letter-spacing: .06em; text-transform: uppercase; font-weight: 600;
  }
  .ro-zoluva {
    font-size: var(--scale-md); font-weight: 700;
    color: var(--accent); text-decoration: none;
  }
  .ro-zoluva:hover { text-decoration: underline; }

  @media (prefers-reduced-motion: reduce) {
    .ro-tupaba, .ro-sili, .ro-dogani { transition: none; }
  }

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

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

  @media (max-width: 700px) {
    .ro-tarado--side .ro-dufi {
      grid-template-columns: 1fr;
      gap: 1.75rem;
      align-items: start;
    }
    .ro-bebisu { min-width: 0; }
  }

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

  .ro-pafo--cards {
    background: var(--ro-netufi-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-netufi-pad-block, var(--space-section));
    padding-inline: var(--ro-netufi-pad-inline, 1.275rem);
  }
  .ro-pabeni {
    max-width: var(--ro-netufi-max, 1100px);
    margin-inline: auto;
  }
  .ro-sufe {
    text-align: var(--ro-netufi-head-align, center);
    margin-bottom: 3rem;
  }
  .ro-buvu {
    margin: 0 0 .9rem;
    font-family: var(--utility-font, var(--body-font));
    font-size: var(--ro-netufi-kicker-size, var(--scale-xs));
    letter-spacing: var(--kicker-tracking, .18em); text-transform: var(--kicker-transform, uppercase);
    color: var(--accent); font-weight: 600;
  }
  .ro-tike {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-netufi-title-size, var(--scale-lg));
    font-weight: var(--heading-weight, 800); line-height: 1.1; letter-spacing: var(--heading-tracking, -.02em);
  }

  .ro-rabazi {
    list-style: none; margin: 0; padding: 0;
    display: grid;
    grid-template-columns: repeat(var(--ro-netufi-cols, 3), 1fr);
    gap: var(--ro-netufi-gap, 1.275rem);
  }
  .ro-zoru {
    background: var(--surface);
    border: 1px solid var(--border);
    border-radius: var(--radius, 12px);
    padding: var(--ro-netufi-card-pad, var(--space-card));
    display: flex; flex-direction: column; gap: .85rem;
  }
  .ro-bavome {
    width: var(--ro-netufi-badge-size, 2.75rem);
    height: var(--ro-netufi-badge-size, 2.75rem);
    border-radius: var(--ro-netufi-badge-radius, 12px);
    background: var(--accent);
    color: var(--accent-fg);
    display: grid; place-items: center;
    font-family: var(--display-font);
    font-size: var(--ro-netufi-badge-font, 1.2rem);
    font-weight: var(--heading-weight, 800);
  }
  
  .ro-vafeba { width: 55%; height: 55%; }
  .ro-bizisa {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-netufi-step-title-size, var(--scale-md));
    font-weight: 700; line-height: 1.2;
  }
  .ro-gagalu {
    margin: 0;
    font-size: var(--ro-netufi-step-text-size, var(--scale-sm));
    line-height: 1.6; color: var(--muted);
  }

  @media (max-width: 860px) {
    .ro-rabazi { grid-template-columns: 1fr 1fr; }
  }
  @media (max-width: 540px) {
    .ro-rabazi { grid-template-columns: 1fr; }
  }

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

  .ro-zovebi--oversized {
    background: var(--ro-zinaba-bg, var(--bg));
    border-bottom: 1px solid var(--border);
    color: var(--fg); font-family: var(--body-font);
    padding-block: var(--ro-zinaba-pad-block, 3.4rem);
    padding-inline: var(--ro-zinaba-pad-inline, 1.275rem);
  }
  .ro-fora {
    max-width: var(--ro-zinaba-max, 1100px);
    margin-inline: auto;
  }
  .ro-zodusu {
    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 0 1rem;
  }
  .ro-denebo {
    margin: 0 0 1.25rem;
    font-family: var(--display-font);
    font-size: var(--scale-2xl);
    font-weight: var(--heading-weight, 800); line-height: 1.0; letter-spacing: var(--heading-tracking, -.03em);
    text-wrap: balance;
  }
  
  .ro-bidulu {
    width: 3.5rem; height: 3px;
    background: var(--accent); border: none; margin: 0 0 1.25rem;
  }
  .ro-nemeba {
    margin: 0;
    font-size: var(--scale-base); line-height: 1.65; color: var(--muted);
    max-width: 60ch;
  }
  
  .ro-kipudo {
    display: inline-flex; align-items: center; justify-content: center;
    padding: var(--ro-zinaba-cta-pad, 0.595rem 1.36rem); 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: 1.25rem;
  }
  .ro-depa { font-size: var(--scale-xs); color: var(--muted); letter-spacing: .06em; text-transform: uppercase; font-weight: 600; margin: 0 0 1rem; }
  .ro-guvede { display: inline-flex; margin-bottom: 1rem; }
  .ro-bimapo { width: var(--ro-zinaba-accent-size, 2.4rem); height: var(--ro-zinaba-accent-size, 2.4rem); color: var(--accent); }

  @media (max-width: 600px) {
    .ro-zovebi--oversized { padding-block: 3rem; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  
  .ro-zuvezo { font-size: var(--scale-xs, .82rem); color: var(--muted); letter-spacing: .04em; margin: 0 0 .75rem; }
  .ro-vavare { display: inline-flex; margin-bottom: .75rem; }
  .ro-kofugo { width: 2rem; height: 2rem; color: var(--accent); }
  .ro-kapena { font-size: var(--scale-base, 1rem); line-height: 1.65; color: var(--muted); margin: .75rem 0 1.5rem; max-width: 70ch; }
  .ro-rovima { 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; }

  .ro-nazami--numbered {
    background: var(--ro-dabupa-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-dabupa-pad-block, 3.825rem);
    padding-inline: var(--ro-dabupa-pad-inline, 1.275rem);
  }
  .ro-buko {
    max-width: var(--ro-dabupa-max, 760px);
    margin-inline: auto;
  }

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

  .ro-befuka {
    display: flex; flex-direction: column;
    gap: var(--ro-dabupa-section-gap, 2.125rem);
  }
  .ro-podo {
    border-top: 1px solid var(--border);
    padding-top: var(--ro-dabupa-section-pt, 2.5rem);
  }
  .ro-podo:first-child { border-top: none; padding-top: 0; }

  .ro-defa {
    display: flex; align-items: baseline; gap: .75rem;
    margin-bottom: .85rem;
  }
  .ro-baba {
    font-family: var(--display-font);
    font-size: var(--ro-dabupa-num-size, 1.5rem);
    font-weight: var(--heading-weight, 800); color: var(--accent); flex-shrink: 0;
    line-height: 1;
  }
  .ro-fadi {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-dabupa-sec-title-size, var(--scale-md));
    font-weight: 700; line-height: 1.25;
  }
  .ro-batevu {
    margin: 0;
    font-size: var(--ro-dabupa-text-size, var(--scale-base));
    line-height: 1.7; color: var(--muted);
    padding-inline-start: var(--ro-dabupa-text-indent, 2.25rem);
  }

  @media (max-width: 600px) {
    .ro-nazami--numbered { padding-block: var(--ro-dabupa-pad-block-mobile, 3rem); }
    .ro-batevu { padding-inline-start: 0; }
  }

*, *::before, *::after { box-sizing: border-box; }
  body { margin: 0; }
  
  .ro-zuvezo { font-size: var(--scale-xs, .82rem); color: var(--muted); letter-spacing: .04em; margin: 0 0 .75rem; }
  .ro-vavare { display: inline-flex; margin-bottom: .75rem; }
  .ro-kofugo { width: 2rem; height: 2rem; color: var(--accent); }
  .ro-kapena { font-size: var(--scale-base, 1rem); line-height: 1.65; color: var(--muted); margin: .75rem 0 1.5rem; max-width: 70ch; }
  .ro-rovima { 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; }

  .ro-nazami--accordion {
    background: var(--ro-dabupa-bg, var(--bg));
    color: var(--fg);
    font-family: var(--body-font);
    padding-block: var(--ro-dabupa-pad-block, 3.825rem);
    padding-inline: var(--ro-dabupa-pad-inline, 1.275rem);
  }

  .ro-buko {
    width: min(100%, var(--ro-dabupa-max, 820px));
    margin-inline: auto;
  }

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

  .ro-nozu {
    margin: 0 0 2.5rem;
    color: var(--muted);
    font-size: var(--ro-dabupa-meta-size, var(--scale-xs));
    font-weight: 600;
    letter-spacing: .05em;
    text-transform: uppercase;
  }

  .ro-befuka {
    display: grid;
    gap: var(--ro-dabupa-section-gap, 0.722rem);
  }

  .ro-podo {
    background: var(--ro-dabupa-card-bg, var(--surface));
    border: 1px solid var(--border);
    border-radius: var(--radius, 8px);
  }

  .ro-daga {
    cursor: pointer;
    list-style: none;
    padding: var(--ro-dabupa-summary-pad, 0.977rem 1.062rem);
  }

  .ro-daga::-webkit-details-marker { display: none; }

  .ro-file {
    display: flex;
    align-items: baseline;
    justify-content: space-between;
    gap: 1rem;
  }

  .ro-fadi {
    margin: 0;
    font-family: var(--display-font);
    font-size: var(--ro-dabupa-sec-title-size, var(--scale-md));
    line-height: 1.25;
    font-weight: 700;
  }

  .ro-poba {
    color: var(--accent);
    font-size: var(--ro-dabupa-marker-size, var(--scale-md));
    line-height: 1;
    flex-shrink: 0;
  }

  .ro-podo[open] .ro-poba {
    transform: rotate(45deg);
  }

  .ro-tireru {
    border-top: 1px solid var(--border);
    padding: var(--ro-dabupa-panel-pad, 0.977rem 1.062rem 1.147rem);
  }

  .ro-batevu {
    margin: 0;
    color: var(--muted);
    font-size: var(--ro-dabupa-text-size, var(--scale-base));
    line-height: 1.7;
  }

  @media (max-width: 600px) {
    .ro-nazami--accordion {
      padding-block: var(--ro-dabupa-pad-block-mobile, 3rem);
    }

    .ro-daga {
      padding: var(--ro-dabupa-summary-pad-mobile, 1rem);
    }

    .ro-tireru {
      padding: var(--ro-dabupa-panel-pad-mobile, 1rem 1rem 1.15rem);
    }
  }
.ro-deto{display:flex;align-items:center;}.ro-nokazi{margin-inline:auto;}
.ro-deto{border-block-end:1px solid var(--border);}
.ro-zipuka:hover{color:var(--accent);}
.ro-zipuka::before{content:"\25C6";margin-inline-end:.5em;opacity:.5;font-size:.7em;}
.ro-zipuka{text-transform:uppercase;}
.ro-kusu{border-radius:999px;}
.ro-favu{border-block-start:1px solid;border-image:linear-gradient(90deg,transparent,var(--border) 30%,var(--border) 70%,transparent) 1;}
.ro-deli:hover{color:inherit;}
.ro-fasa{justify-content:center;text-align:center;}
.ro-deli{text-transform:uppercase;letter-spacing:.06em;}
.ro-kika{font-weight:700;color:var(--fg);}
.ro-gato:not(:last-child)::after{content:"\00B7";opacity:.5;margin-inline:.45em;}
.ro-lapibe .ro-mameda{display:grid;grid-template-columns:repeat(2,1fr);}
.ro-lapibe .ro-bofe:nth-child(even){margin-block-start:2rem;}
.ro-bofe{border:1px solid var(--border);background:var(--surface);box-shadow:none;}
.ro-bofe{border-radius:0;}
.ro-bofe:hover{border-color:var(--accent);}
.ro-kenasa{border-radius:5px;}
.ro-pesaba{--ro-kipe-min-h:auto;}
.ro-pesaba{--ro-kipe-title-size:clamp(2.2rem,5vw,3.4rem);}
.ro-pesaba{--ro-kipe-pad-block:2.75rem;--ro-kipe-gap:2rem;}
.ro-pesaba{--ro-kipe-content-max:560px;--ro-kipe-max:980px;}
.ro-pesaba{--ro-kipe-align:start;}