/* Shared studio navigation. Home content retains its own design system. */
:root{--header-h:76px;--studio-line:color-mix(in srgb,var(--ink) 17%,transparent);--studio-accent:var(--red,var(--accent,#a34a35))}
.studio-header{position:fixed;inset:0 0 auto;z-index:120;height:var(--header-h);background:color-mix(in srgb,var(--paper) 94%,transparent);border-bottom:1px solid var(--studio-line);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px);color:var(--ink);font-family:var(--sans)}
.studio-home .studio-header{position:sticky}
.studio-header::after{content:"";position:absolute;left:0;bottom:-1px;width:var(--reading-progress,0%);height:2px;background:var(--studio-accent);pointer-events:none}
.studio-header-inner{position:relative;max-width:1600px;padding:0 clamp(20px,4vw,68px);margin:auto;height:100%;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:40px}
.studio-wordmark{display:inline-flex;align-items:center;height:44px;width:max-content;text-decoration:none;color:inherit;white-space:nowrap}
.studio-wordmark strong{font-size:21px;font-weight:500;line-height:24px;letter-spacing:.16em}
.studio-wordmark small{display:none}
.studio-nav{display:flex;justify-self:end;align-items:center;gap:36px;height:100%}
.studio-nav>a,.studio-menu>summary{position:relative;display:flex;align-items:center;height:var(--header-h);padding:0;border:0;border-radius:0;min-height:0;margin:0;line-height:20px;font-size:13px;font-weight:500;letter-spacing:.035em;text-decoration:none;color:var(--muted);cursor:pointer;white-space:nowrap;background:transparent;list-style:none}
.studio-menu>summary::-webkit-details-marker{display:none}
.studio-menu>summary::after{content:"＋";display:inline-flex;align-items:center;justify-content:center;width:12px;height:20px;font-size:11px;margin-left:6px;letter-spacing:0}
.studio-menu[open]>summary::after{content:"−"}
.studio-nav>a[aria-current=page],.studio-menu[open]>summary,.studio-menu>summary[aria-current=page]{color:var(--ink)}
.studio-nav>a[aria-current=page]::after,.studio-menu>summary[aria-current=page]::before{content:"";position:absolute;bottom:20px;left:0;right:0;height:1px;background:var(--studio-accent)}
.studio-nav a:hover,.studio-menu>summary:hover{background:transparent;color:var(--ink);border-color:transparent}
.studio-header a:focus-visible,.studio-header button:focus-visible,.studio-header summary:focus-visible{outline:2px solid var(--studio-accent);outline-offset:5px}
.studio-panel{position:absolute;top:100%;right:clamp(20px,3.8vw,64px);width:min(740px,calc(100vw - 40px));padding:32px;background:var(--paper);border:1px solid var(--studio-line);box-shadow:0 22px 44px color-mix(in srgb,var(--ink) 10%,transparent)}
.studio-panel-heading{display:flex;justify-content:space-between;align-items:center;gap:20px;padding-bottom:20px;margin-bottom:22px;border-bottom:1px solid var(--studio-line);font-size:11px;color:var(--muted);letter-spacing:.08em}
.studio-panel-heading>a{font-size:12px;color:var(--ink)}
.studio-panel-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}
.studio-panel-grid p{margin:0 0 12px;color:var(--muted);font-size:10px;font-weight:400;letter-spacing:.13em}
.studio-nav .studio-panel a{display:block;padding:8px 0;border:0;border-radius:0;min-height:0;line-height:1.5;color:var(--ink);font-size:14px;font-weight:400;letter-spacing:0;text-decoration:none;white-space:normal}
.studio-nav .studio-panel a:hover{color:var(--studio-accent)}
.studio-panel-small{width:260px}
.studio-panel-small>a+a{border-top:1px solid var(--studio-line)}
.studio-controls{justify-self:end;display:flex;align-items:center;gap:22px;height:24px;padding-left:28px;border-left:1px solid var(--studio-line)}
.studio-lang{display:flex;align-items:center;gap:8px}
.studio-lang button,.studio-theme,.studio-toggle{appearance:none;display:inline-flex;align-items:center;justify-content:center;height:36px;border:0;padding:0;margin:0;background:transparent;font:500 12px/20px var(--sans);letter-spacing:.025em;color:var(--muted);cursor:pointer;white-space:nowrap}
.studio-lang button{min-width:26px}
.studio-lang button[aria-pressed=true]{position:relative;color:var(--ink)}
.studio-lang button[aria-pressed=true]::after{content:"";position:absolute;bottom:0;left:5px;right:5px;height:1px;background:var(--studio-accent)}
.studio-theme{min-width:40px}
.studio-theme .studio-light,html[data-theme=dark] .studio-theme .studio-dark{display:none}
html[data-theme=dark] .studio-theme .studio-light{display:inline}
.studio-contact{color:var(--ink);font-size:12px;text-decoration:none;border-bottom:1px solid var(--studio-accent);padding:6px 0}
.studio-toggle{display:none}
.studio-skip{position:fixed;top:10px;left:20px;z-index:150;transform:translateY(-160%);padding:8px 14px;color:var(--paper);background:var(--ink)}
.studio-skip:focus{transform:none}
.studio-home .product-signature{margin-bottom:28px;display:inline-flex;gap:12px;align-items:center}
.studio-home .product-signature .brand-mark{width:36px;height:36px;flex-basis:36px}
.studio-home .product-signature .brand-copy strong{font-size:12px;letter-spacing:.15em;font-weight:600}
.section-index{display:flex;flex-wrap:wrap;gap:12px 28px;align-items:center;justify-content:space-between;padding:22px var(--pad);border-block:1px solid var(--line);background:var(--paper)}
.section-index>span{color:var(--muted);font-size:10px;font-weight:500;letter-spacing:.1em}
.section-index>div{display:flex;flex-wrap:wrap;gap:8px 24px}
.section-index a{font-size:12px;font-weight:500;min-height:32px;padding:6px 0;border:0;border-radius:0;color:var(--copy);text-decoration:none}
.section-index a:hover,.section-index a[aria-current=location]{background:transparent;color:var(--studio-accent)}
.section-index a:focus-visible{outline:2px solid var(--studio-accent);outline-offset:4px}
.studio-home main:focus{outline:none}
@media(max-width:1100px){.studio-header-inner{gap:28px}.studio-nav{gap:28px}.studio-controls{gap:14px;padding-left:22px}}
@media(max-width:760px){
  :root{--header-h:68px}
  .studio-header-inner{grid-template-columns:1fr auto;gap:14px;padding-inline:20px}
  .studio-wordmark strong{font-size:18px;letter-spacing:.17em}
  .studio-controls{gap:14px;padding-left:0;border-left:0;height:44px}
  .studio-lang{gap:10px}
  .studio-lang button,.studio-theme,.studio-toggle{min-height:44px;font-size:11px}
  .studio-theme{padding-left:0;border:0;min-width:0}
  .studio-toggle{display:block;color:var(--ink);border-bottom:1px solid var(--studio-line)}
  .studio-nav{display:none;position:absolute;top:100%;left:0;right:0;height:auto;max-height:calc(100dvh - var(--header-h) - 16px);padding:18px 24px 28px;overflow-y:auto;overscroll-behavior:contain;background:var(--paper);border-bottom:1px solid var(--studio-line);box-shadow:0 18px 30px color-mix(in srgb,var(--ink) 10%,transparent)}
  .studio-header[data-menu-open] .studio-nav{display:block}
  .studio-nav>a,.studio-menu>summary{height:auto;padding:14px 0;line-height:24px;font-size:15px;border-bottom:1px solid var(--studio-line)}
  .studio-menu>summary::after{margin-left:auto;font-size:16px}
  .studio-nav>a[aria-current=page]::after,.studio-menu>summary[aria-current=page]::before{display:none}
  .studio-nav>a[aria-current=page],.studio-menu>summary[aria-current=page]{color:var(--studio-accent)}
  .studio-panel{position:static;width:auto;max-width:none;padding:22px 0 12px;border:0;box-shadow:none}
  .studio-panel-grid{grid-template-columns:1fr 1fr;gap:22px 18px}
  .studio-panel-heading{padding-bottom:12px;margin-bottom:18px}
  .studio-panel-grid p{margin-bottom:8px}
  .studio-nav .studio-panel a{padding:10px 0;font-size:13px}
  .studio-panel-small>a+a{border:0}
  .studio-home .product-signature{margin-bottom:20px}
  .section-index{display:block;padding:24px var(--pad)}
  .section-index>span{display:block;margin-bottom:14px}
  .section-index>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px 16px}
  .section-index a{font-size:11px;line-height:1.5;min-height:38px}
}
@media(max-width:360px){.studio-header-inner{padding-inline:16px;gap:8px}.studio-wordmark strong{font-size:16px;letter-spacing:.14em}.studio-controls{gap:11px}.studio-lang{gap:8px}}
@media print{.studio-header,.studio-skip,.section-index{display:none}}
