:root {
    /* 物販ラボのブランドカラーをそのまま採用 */
    --teal:      #009F99;   /* ヒーロー地 */
    --teal-deep: #04837E;
    --cyan:      #1BB4D3;   /* アクセント */
    --cyan-deep: #0B7C90;
    --navy:      #1B254D;   /* 見出し・濃色 */
    --navy-deep: #131B39;
    --yellow:    #FFE500;   /* LINE/強調ボタン */
    --yellow-ink:#1B254D;

    --paper:   #F4F8FA;
    --surface: #FFFFFF;
    --text:    #26303B;
    --muted:   #5C6874;
    --line:    #E1E7EC;
    --line-2:  #CDD6DD;
    --shadow:  0 2px 6px rgba(27,37,77,.05), 0 18px 40px -24px rgba(27,37,77,.28);

    --maxw: 1120px;
    --f-head: "Zen Kaku Gothic New", "Yu Gothic", "游ゴシック", "Noto Sans JP", sans-serif;
    --f-body: "Yu Gothic", "游ゴシック", "Noto Sans JP", "Hiragino Kaku Gothic ProN", sans-serif;
  }

  :root:not([data-theme="light"]) {
    @media (prefers-color-scheme: dark) {
      --paper:   #0F1730;
      --surface: #17203F;
      --text:    #E7ECF3;
      --muted:   #9AA6BE;
      --line:    #283257;
      --line-2:  #38446B;
      --navy:    #17203F;
      --navy-deep:#0B1128;
      --shadow:  0 2px 6px rgba(0,0,0,.3), 0 20px 44px -24px rgba(0,0,0,.65);
    }
  }
  :root[data-theme="dark"] {
    --paper:   #0F1730;
    --surface: #17203F;
    --text:    #E7ECF3;
    --muted:   #9AA6BE;
    --line:    #283257;
    --line-2:  #38446B;
    --navy:    #17203F;
    --navy-deep:#0B1128;
    --shadow:  0 2px 6px rgba(0,0,0,.3), 0 20px 44px -24px rgba(0,0,0,.65);
  }

  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  @media (prefers-reduced-motion: reduce){ html{ scroll-behavior:auto; } }
  body { margin:0; background: var(--paper); color: var(--text); font-family: var(--f-body); line-height: 1.85; -webkit-font-smoothing: antialiased; }
  a { color: inherit; text-decoration: none; }
  img, svg { max-width: 100%; }
  .wrap { max-width: var(--maxw); margin: 0 auto; padding: 0 24px; }

  .btn { display:inline-flex; align-items:center; justify-content:center; gap:.5em; font-family: var(--f-head); font-weight:700; font-size:.9rem; letter-spacing:.03em; padding:.8em 1.6em; border-radius:999px; cursor:pointer; white-space:nowrap; border:2px solid transparent; transition: transform .2s, box-shadow .2s, background .2s, color .2s; }
  .btn:hover { transform: translateY(-2px); }
  .btn.yellow { background: var(--yellow); color: var(--yellow-ink); box-shadow: 0 8px 18px -8px rgba(255,229,0,.7); }
  .btn.yellow:hover { box-shadow: 0 12px 24px -8px rgba(255,229,0,.85); }
  .btn.white { background:#fff; color: var(--teal-deep); }
  .btn.navy  { background: var(--navy); color:#fff; }
  .btn.navy:hover { background: var(--navy-deep); }
  .btn.ghost-w { background: transparent; color:#fff; border-color: rgba(255,255,255,.7); }
  .btn.ghost-w:hover { background: rgba(255,255,255,.12); }
  .btn.ghost { background: transparent; color: var(--text); border-color: var(--line-2); }
  .btn.ghost:hover { border-color: var(--cyan); color: var(--cyan-deep); }

  .logo-mark { width: 40px; height: 40px; flex:none; }

  /* ---------- Header ---------- */
  header { position: sticky; top:0; z-index:50; background: var(--teal); color:#fff; box-shadow: 0 2px 12px -6px rgba(0,0,0,.3); }
  .bar { display:flex; align-items:center; justify-content:space-between; height:70px; }
  .brand { display:flex; align-items:center; gap:.6rem; color:#fff; }
  .brand .txt .name { font-family: var(--f-head); font-weight:900; font-size:1.18rem; letter-spacing:.03em; line-height:1.1; }
  .brand .txt .sub  { font-size:.64rem; letter-spacing:.08em; opacity:.85; margin-top:2px; }
  nav.main { display:flex; align-items:center; gap:1.6rem; }
  nav.main ul { display:flex; gap:1.4rem; list-style:none; margin:0; padding:0; }
  nav.main a { font-family: var(--f-head); font-weight:500; font-size:.88rem; color:#fff; position:relative; padding:4px 0; }
  nav.main a::after { content:""; position:absolute; left:0; bottom:-3px; height:2px; width:0; background: var(--yellow); transition:width .25s; }
  nav.main a:hover::after { width:100%; }
  .menu-toggle { display:none; }

  /* ---------- Hero ---------- */
  .hero { background: var(--teal); color:#fff; position:relative; overflow:hidden; }
  .hero::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:70px; background: var(--paper); clip-path: ellipse(75% 100% at 50% 100%); }
  .hero .wrap { position:relative; display:grid; grid-template-columns: 1.05fr .95fr; gap:30px; align-items:center; padding:56px 24px 96px; }
  .hero .eyebrow { display:inline-block; font-family: var(--f-head); font-weight:700; font-size:.82rem; letter-spacing:.08em; background: rgba(255,255,255,.16); border:1px solid rgba(255,255,255,.3); padding:.35em 1em; border-radius:999px; margin-bottom:1.1rem; }
  .hero h1 { font-family: var(--f-head); font-weight:900; font-size: clamp(2.1rem, 5.2vw, 3.5rem); line-height:1.34; letter-spacing:.02em; margin:0; text-wrap:balance; }
  .hero h1 .mk { color: var(--yellow); }
  .hero p.lead { margin:1.5rem 0 0; font-size:1rem; color: rgba(255,255,255,.92); max-width:30em; line-height:1.95; }
  .hero .cta { display:flex; gap:.8rem; margin-top:2rem; flex-wrap:wrap; }
  .hero-art { position:relative; }
  .hero-art svg { width:100%; height:auto; display:block; filter: drop-shadow(0 20px 30px rgba(0,0,0,.18)); }

  /* ---------- CV banner ---------- */
  .cv { background: var(--navy); color:#fff; position:relative; overflow:hidden; }
  .cv::before { content:""; position:absolute; inset:0; background: radial-gradient(60% 130% at 88% 20%, rgba(27,180,211,.28), transparent 55%); }
  .cv .wrap { position:relative; display:flex; align-items:center; justify-content:space-between; gap:28px; flex-wrap:wrap; padding:34px 24px; }
  .cv .lead-t { font-family: var(--f-head); }
  .cv .lead-t .s { font-size:.82rem; color: var(--cyan); font-weight:700; letter-spacing:.06em; }
  .cv .lead-t .b { font-size: clamp(1.2rem, 2.6vw, 1.7rem); font-weight:900; margin-top:.2rem; }

  /* ---------- Section frame ---------- */
  section.block { padding: 76px 0; }
  .sec-head { text-align:center; max-width:42em; margin:0 auto 44px; }
  .sec-head .en { font-family: var(--f-head); font-weight:900; font-size:.8rem; letter-spacing:.24em; color: var(--cyan); text-transform:uppercase; }
  .sec-head h2 { font-family: var(--f-head); font-weight:900; color: var(--navy); font-size: clamp(1.6rem, 3.4vw, 2.2rem); line-height:1.45; letter-spacing:.03em; margin:.5rem 0 0; text-wrap:balance; position:relative; display:inline-block; padding-bottom:.5rem; }
  :root[data-theme="dark"] .sec-head h2, :root:not([data-theme="light"]) .sec-head h2 { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .sec-head h2{ color: var(--text);} }
  .sec-head h2::after { content:""; position:absolute; left:50%; transform:translateX(-50%); bottom:-2px; width:52px; height:4px; border-radius:4px; background: var(--yellow); }
  .sec-head p { color: var(--muted); margin:1.1rem 0 0; font-size:.96rem; }

  /* ---------- 事業/サービス ---------- */
  .biz-grid { display:grid; grid-template-columns: repeat(4,1fr); gap:18px; }
  .biz-card { background: var(--surface); border:1px solid var(--line); border-radius:18px; padding:30px 22px; text-align:center; transition: transform .25s, box-shadow .25s, border-color .25s; }
  .biz-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); border-color: color-mix(in srgb, var(--cyan) 40%, var(--line)); }
  .biz-card .ic { width:72px; height:72px; margin:0 auto 16px; border-radius:20px; background: linear-gradient(145deg, var(--cyan), var(--teal)); display:grid; place-items:center; color:#fff; box-shadow: 0 10px 20px -10px rgba(0,159,153,.7); }
  .biz-card .ic svg { width:34px; height:34px; stroke:currentColor; fill:none; stroke-width:1.7; }
  .biz-card h3 { font-family: var(--f-head); font-weight:900; font-size:1.16rem; color: var(--navy); margin:0 0 .5rem; }
  :root[data-theme="dark"] .biz-card h3, :root:not([data-theme="light"]) .biz-card h3 { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .biz-card h3{ color: var(--text);} }
  .biz-card p { font-size:.9rem; color: var(--muted); margin:0; line-height:1.9; }

  /* ---------- 記事 ---------- */
  .posts { background: var(--surface); }
  :root[data-theme="dark"] .posts, :root:not([data-theme="light"]) .posts { background: color-mix(in srgb, var(--surface) 60%, var(--paper)); }
  .post-grid { display:grid; grid-template-columns: repeat(4,1fr); gap:20px; }
  .post { background: var(--surface); border:1px solid var(--line); border-radius:16px; overflow:hidden; display:flex; flex-direction:column; transition: transform .25s, box-shadow .25s; }
  .post:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
  .post .thumb { aspect-ratio:16/9; display:grid; place-items:center; color:#fff; font-family: var(--f-head); font-weight:900; font-size:1.3rem; letter-spacing:.06em; position:relative; }
  .post .thumb span { position:relative; z-index:1; text-shadow:0 2px 8px rgba(0,0,0,.25); }
  .post .body { padding:18px 20px 22px; display:flex; flex-direction:column; flex:1; }
  .post .meta { display:flex; align-items:center; gap:10px; margin-bottom:10px; }
  .post .cat-tag { font-family: var(--f-head); font-weight:700; font-size:.68rem; letter-spacing:.06em; color:#fff; background: var(--teal); padding:.28em .7em; border-radius:6px; }
  .post .date { font-size:.74rem; color: var(--muted); font-variant-numeric: tabular-nums; }
  .post h3 { font-family: var(--f-head); font-weight:700; font-size:1rem; line-height:1.6; color: var(--navy); margin:0; }
  :root[data-theme="dark"] .post h3, :root:not([data-theme="light"]) .post h3 { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .post h3{ color: var(--text);} }
  .post .read { margin-top:auto; padding-top:14px; font-family: var(--f-head); font-size:.78rem; font-weight:700; color: var(--cyan-deep); display:inline-flex; gap:.4em; }
  .post .read::after { content:"→"; transition:transform .2s; }
  .post:hover .read::after { transform: translateX(4px); }
  .more-wrap { text-align:center; margin-top:42px; }

  /* ---------- 監修者 / 会社 ---------- */
  .about { background: var(--paper); }
  .about-card { background: var(--surface); border:1px solid var(--line); border-radius:22px; padding:40px; display:grid; grid-template-columns: 220px 1fr; gap:38px; align-items:center; box-shadow: var(--shadow); }
  .about-photo { aspect-ratio:1; border-radius:18px; background: linear-gradient(150deg, var(--navy), var(--teal)); display:grid; place-items:center; color:#fff; }
  .about-photo svg { width:60%; height:60%; opacity:.92; }
  .about-body .role { font-family: var(--f-head); font-weight:700; font-size:.8rem; letter-spacing:.1em; color: var(--cyan-deep); }
  .about-body h3 { font-family: var(--f-head); font-weight:900; font-size:1.5rem; color: var(--navy); margin:.3rem 0 1rem; }
  :root[data-theme="dark"] .about-body h3, :root:not([data-theme="light"]) .about-body h3 { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .about-body h3{ color: var(--text);} }
  .about-body p { color: var(--muted); font-size:.94rem; margin:0; }

  /* ---------- 会社概要 ---------- */
  .company { background: var(--surface); }
  :root[data-theme="dark"] .company, :root:not([data-theme="light"]) .company { background: color-mix(in srgb, var(--surface) 60%, var(--paper)); }
  .profile dl { margin:0 auto; border-top:1px solid var(--line-2); max-width:900px; }
  .profile .row { display:grid; grid-template-columns:190px 1fr; gap:22px; padding:20px 4px; border-bottom:1px solid var(--line); align-items:start; }
  .profile dt { font-family: var(--f-head); font-weight:700; color: var(--navy); font-size:.92rem; }
  :root[data-theme="dark"] .profile dt, :root:not([data-theme="light"]) .profile dt { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .profile dt{ color: var(--text);} }
  .profile dd { margin:0; color: var(--muted); font-size:.92rem; }
  .profile .split { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
  .profile .office { border-left:3px solid var(--cyan); padding-left:14px; }
  .profile .office .lbl { font-family: var(--f-head); font-weight:700; font-size:.74rem; letter-spacing:.1em; color: var(--cyan-deep); }
  .profile .office .addr { color: var(--text); font-size:.88rem; margin-top:.35rem; }
  .profile .office .tel { color: var(--muted); font-size:.84rem; margin-top:.25rem; font-variant-numeric:tabular-nums; }

  /* ---------- Footer CTA + footer ---------- */
  .foot-cta { background: linear-gradient(120deg, var(--teal), var(--teal-deep)); color:#fff; position:relative; overflow:hidden; text-align:center; }
  .foot-cta::before { content:""; position:absolute; inset:0; background: radial-gradient(60% 120% at 80% 15%, rgba(255,229,0,.16), transparent 55%); }
  .foot-cta .wrap { position:relative; padding:66px 24px; }
  .foot-cta h2 { font-family: var(--f-head); font-weight:900; font-size: clamp(1.6rem,3.2vw,2.3rem); margin:0; line-height:1.5; }
  .foot-cta p { color: rgba(255,255,255,.9); margin:1rem 0 1.8rem; }

  footer { background: var(--navy-deep); color: rgba(255,255,255,.72); padding:60px 0 28px; }
  .foot-grid { display:grid; grid-template-columns:1.6fr 1fr 1fr 1fr; gap:34px; padding-bottom:38px; border-bottom:1px solid rgba(255,255,255,.12); }
  footer .brand .name { color:#fff; }
  footer .desc { font-size:.82rem; color: rgba(255,255,255,.55); margin:1rem 0 0; max-width:24em; line-height:1.9; }
  footer h4 { font-family: var(--f-head); font-size:.74rem; letter-spacing:.14em; text-transform:uppercase; color: var(--cyan); margin:0 0 1rem; font-weight:700; }
  footer ul { list-style:none; margin:0; padding:0; display:grid; gap:.6rem; }
  footer ul a { font-size:.84rem; color: rgba(255,255,255,.72); }
  footer ul a:hover { color: var(--cyan); }
  .copyright { padding-top:22px; font-size:.75rem; color: rgba(255,255,255,.45); display:flex; justify-content:space-between; flex-wrap:wrap; gap:10px; }

  /* ---------- Page routing ---------- */
  .page[hidden] { display:none; }
  nav.main a.active { color: var(--yellow); }
  nav.main a.active::after { width:100%; }

  /* ---------- 下層ページ共通ヘッダー ---------- */
  .pagehead { background: var(--teal); color:#fff; position:relative; overflow:hidden; text-align:center; }
  .pagehead::after { content:""; position:absolute; left:0; right:0; bottom:-1px; height:58px; background: var(--paper); clip-path: ellipse(75% 100% at 50% 100%); }
  .pagehead .wrap { position:relative; padding:58px 24px 84px; }
  .pagehead .en { font-family:var(--f-head); font-weight:900; font-size:.8rem; letter-spacing:.24em; text-transform:uppercase; color: rgba(255,255,255,.82); }
  .pagehead h1 { font-family:var(--f-head); font-weight:900; font-size: clamp(1.9rem,4.4vw,2.8rem); margin:.4rem 0 0; letter-spacing:.04em; }
  .pagehead p { margin:1rem auto 0; max-width:34em; color: rgba(255,255,255,.9); font-size:.96rem; }

  /* ---------- 事業案内 feature ---------- */
  .feature { display:grid; grid-template-columns:1fr 1fr; gap:44px; align-items:center; padding:52px 0; border-bottom:1px solid var(--line); }
  .feature:last-of-type { border-bottom:none; }
  .feature:nth-child(even) .feat-art { order:2; }
  .feat-art { border-radius:22px; aspect-ratio:4/3; display:grid; place-items:center; color:#fff; box-shadow: var(--shadow); }
  .feat-txt .no { font-family:var(--f-head); font-weight:900; font-size:.78rem; letter-spacing:.18em; color: var(--cyan-deep); }
  .feat-txt h3 { font-family:var(--f-head); font-weight:900; font-size:1.5rem; color:var(--navy); margin:.3rem 0 .2rem; }
  .feat-txt .en2 { font-family:var(--f-head); font-weight:700; font-size:.82rem; letter-spacing:.1em; color: var(--muted); }
  .feat-txt p { color:var(--muted); font-size:.94rem; margin:1rem 0 0; }
  .feat-txt ul { margin:1.1rem 0 0; padding:0; list-style:none; display:grid; gap:.5rem; }
  .feat-txt li { position:relative; padding-left:1.6em; font-size:.9rem; color:var(--text); }
  .feat-txt li::before { content:""; position:absolute; left:0; top:.58em; width:11px; height:11px; border-radius:3px; background: var(--cyan); }
  :root[data-theme="dark"] .feat-txt h3, :root:not([data-theme="light"]) .feat-txt h3 { color: var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .feat-txt h3{ color:var(--text);} }

  /* ---------- 会社案内 values ---------- */
  .values { display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
  .value { background:var(--surface); border:1px solid var(--line); border-radius:16px; padding:28px 24px; text-align:center; }
  .value .vn { font-family:var(--f-head); font-weight:900; color:var(--cyan-deep); font-size:.78rem; letter-spacing:.16em; }
  .value h4 { font-family:var(--f-head); font-weight:900; font-size:1.1rem; color:var(--navy); margin:.5rem 0 .4rem; }
  :root[data-theme="dark"] .value h4, :root:not([data-theme="light"]) .value h4 { color:var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .value h4{ color:var(--text);} }
  .value p { font-size:.86rem; color:var(--muted); margin:0; }

  /* ---------- お問い合わせ form ---------- */
  .form { max-width:720px; margin:0 auto; }
  .form .row2 { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
  .field { margin-bottom:20px; }
  .field label { display:block; font-family:var(--f-head); font-weight:700; font-size:.88rem; color:var(--navy); margin-bottom:.5rem; }
  :root[data-theme="dark"] .field label, :root:not([data-theme="light"]) .field label { color:var(--text); }
  @media (prefers-color-scheme: dark){ :root:not([data-theme="light"]) .field label{ color:var(--text);} }
  .field .req { display:inline-block; font-family:var(--f-body); font-size:.66rem; font-weight:700; color:#fff; background:#E0413B; border-radius:4px; padding:.1em .5em; margin-left:.5em; vertical-align:1px; letter-spacing:.04em; }
  .field input, .field select, .field textarea { width:100%; padding:.82em 1em; border:1.5px solid var(--line-2); border-radius:10px; background:var(--surface); color:var(--text); font-family:var(--f-body); font-size:.95rem; transition:border-color .2s, box-shadow .2s; }
  .field textarea { min-height:150px; resize:vertical; }
  .field input:focus, .field select:focus, .field textarea:focus { outline:none; border-color:var(--cyan); box-shadow:0 0 0 3px rgba(27,180,211,.18); }
  .agree { display:flex; align-items:flex-start; gap:.6em; font-size:.86rem; color:var(--muted); margin:6px 0 22px; }
  .agree input { width:18px; height:18px; margin-top:3px; accent-color: var(--teal); flex:none; }
  .form .submit { text-align:center; }
  .form .submit .btn { min-width:260px; }
  .form-note { text-align:center; font-size:.8rem; color:var(--muted); margin-top:16px; }
  .contact-alt { text-align:center; margin:0 0 34px; color:var(--muted); font-size:.94rem; line-height:1.7; }
  .contact-alt b { font-family:var(--f-head); color:var(--cyan-deep); font-size:1.4rem; font-variant-numeric:tabular-nums; }

  .reveal { opacity:0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
  .reveal.in { opacity:1; transform:none; }
  @media (prefers-reduced-motion: reduce){ .reveal{ opacity:1; transform:none; transition:none; } }

  @media (max-width: 940px){
    .biz-grid, .post-grid { grid-template-columns: repeat(2,1fr); }
    .foot-grid { grid-template-columns:1fr 1fr; }
  }
  @media (max-width: 760px){
    nav.main ul, .bar .head-cta { display:none; }
    .menu-toggle { display:inline-flex; }
    .hero .wrap { grid-template-columns:1fr; gap:26px; padding-bottom:80px; }
    .hero-art { max-width:380px; margin:0 auto; }
    .biz-grid, .post-grid { grid-template-columns:1fr; }
    .about-card { grid-template-columns:1fr; text-align:center; gap:22px; padding:30px 24px; }
    .about-photo { max-width:180px; margin:0 auto; }
    .foot-grid { grid-template-columns:1fr 1fr; }
    .profile .row, .profile .split { grid-template-columns:1fr; gap:8px; }
    .feature { grid-template-columns:1fr; gap:24px; }
    .feature:nth-child(even) .feat-art { order:0; }
    .feat-art { max-width:420px; margin:0 auto; width:100%; }
    .values { grid-template-columns:1fr; }
    .form .row2 { grid-template-columns:1fr; gap:0; }
  }

/* === ヘッダーを物販ラボのトーン＆サイズに統一 === */
.bar{height:60px}
.brand .logo-mark{width:34px;height:34px}
.brand .name{font-size:1.04rem}
.brand .sub{font-size:.6rem}
nav.main{gap:1.4rem}
nav.main ul{gap:1.25rem}
nav.main a{font-size:.8rem}
.head-cta{padding:.5em 1.15em;font-size:.8rem}
@media (max-width:760px){
  .menu-toggle{display:inline-flex;padding:.45em .9em;font-size:.82rem}
  nav.main{position:absolute;top:100%;left:0;right:0;background:var(--teal-deep);flex-direction:column;align-items:stretch;gap:0;padding:6px 0;display:none;box-shadow:0 10px 24px rgba(0,0,0,.22)}
  header.nav-open nav.main{display:flex}
  nav.main ul{flex-direction:column;gap:0;width:100%}
  nav.main ul li{border-top:1px solid rgba(255,255,255,.12)}
  nav.main ul li a{display:block;padding:14px 24px;font-size:.9rem}
  nav.main a::after{display:none}
  nav.main .head-cta{margin:12px 24px 6px;text-align:center}
}
/* === 文書ページ === */
.doc{max-width:820px;margin:0 auto}
.doc h2{font-family:var(--f-head);font-weight:900;color:var(--ink);font-size:1.25rem;margin:1.8em 0 .5em;padding-bottom:.3em;border-bottom:2px solid var(--line)}
.doc h3{font-family:var(--f-head);font-weight:700;color:var(--ink);font-size:1.02rem;margin:1.4em 0 .3em}
.doc p{margin:.8em 0;font-size:.95rem}
.doc ul,.doc ol{margin:.5em 0 1.1em;padding-left:1.5em}
.doc li{margin:.35em 0;font-size:.93rem}
.doc a{color:var(--cyan-deep);font-weight:700}
:root[data-theme="dark"] .doc h2,:root[data-theme="dark"] .doc h3{color:var(--text)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .doc h2,:root:not([data-theme="light"]) .doc h3{color:var(--text)}}
