/* LUMINARY SOLUTIONS — in-house demo frame (common demo UI) v1. Not part of site.css / solutions.css. */
*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:auto}
@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}
body{margin:0;font-family:system-ui,-apple-system,"Segoe UI",Roboto,"Helvetica Neue",Arial,"Hiragino Sans","Noto Sans JP",sans-serif;font-size:1rem;line-height:1.6;overflow-wrap:break-word}
img,svg{max-width:100%;height:auto;display:block}
.df-skip{position:absolute;left:.75rem;top:-4rem;z-index:10;padding:.75rem 1rem;background:#1E2A26;color:#fff;text-decoration:underline;border-radius:.375rem}
.df-skip:focus{top:.75rem}
.df-label{background:#1E2A26;color:#F7F0E1;font-size:.875rem;line-height:1.45;padding:.625rem 1rem}
.df-label p{margin:0;max-width:72rem;margin-inline:auto}
.df-label strong{font-weight:700}
.df-label strong,.df-label .df-ja{display:inline-block;margin-right:.75em}
.df-back{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:.5rem 0;font-weight:600}
:where(a,summary,button):focus-visible{outline:3px solid #1E2A26;outline-offset:3px;border-radius:2px}
.df-label a:focus-visible,.df-skip:focus-visible{outline-color:#F7F0E1}
