:root{--washi:#efe7d6;--washi-2:#e7ddc8;--card:#f6f1e6;--ai:#16233c;--ai-900:#0d1626;--ai-60:#4b5468;--ai-40:#7c8494;--shu:#c6402b;--shu-deep:#a63220;--kin:#a67c33;--kin-soft:#c9a24b;--matcha:#5e6b3e;--line:#d7cbb2;--line-soft:#e2d8c3;--serif:"Spectral", Georgia, serif;--disp:"Fraunces", Georgia, serif;--util:"Zen Kaku Gothic New", "Helvetica Neue", sans-serif;--jp:"Noto Serif JP", serif;--cat-kultur:#c6402b;--cat-essen:#a67c33;--cat-shop:#3c2316;--cat-natur:#3e6b5e;--cat-hotel:#6b5d2f;--nav-h:56px;--nav-h-mobile:48px;--tabbar-h:52px;--seitenrand:16px;--app-h:calc(100dvh - var(--nav-h));--radius:12px;--radius-sm:8px;--shadow:0 1px 2px #16233c0f, 0 8px 24px #16233c12;--shadow-sm:0 1px 2px #16233c14}*,:before,:after{box-sizing:border-box}html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}body{background:var(--washi);color:var(--ai);font-family:var(--serif);-webkit-font-smoothing:antialiased;overflow-wrap:break-word;background-image:radial-gradient(circle at 20% 4%,#a67c330d,#0000 55%),radial-gradient(circle at 85% 90%,#16233c0d,#0000 50%);background-attachment:fixed;margin:0;font-size:16px;line-height:1.6}::selection{background:var(--shu);color:#fff}h1,h2,h3{font-family:var(--disp);letter-spacing:-.012em;margin:0;font-weight:600;line-height:1.14}h4,h5{font-family:var(--util);letter-spacing:.06em;text-transform:uppercase;color:var(--ai-60);margin:0;font-size:.78rem;font-weight:700}p{margin:0 0 .8em}a{color:var(--shu-deep);text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--shu);outline-offset:2px}.eyebrow{font-family:var(--util);letter-spacing:.22em;text-transform:uppercase;color:var(--shu);align-items:center;gap:10px;margin:0 0 10px;font-size:.66rem;font-weight:700;display:flex}.eyebrow:before{content:"";background:var(--shu);flex:none;width:22px;height:2px}.card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow-sm)}.badge{font-family:var(--util);letter-spacing:.03em;background:var(--card);border:1px solid var(--line);color:var(--ai-60);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:4px 11px;font-size:.7rem;font-weight:500;display:inline-flex}.badge b{color:var(--ai);font-weight:700}.pin{min-width:25px;height:25px;font-family:var(--util);color:#fff;background:var(--ai-60);border-radius:999px;flex:none;justify-content:center;align-items:center;padding:0 5px;font-size:.72rem;font-weight:700;line-height:1;display:inline-flex}.pin.kultur{background:var(--cat-kultur)}.pin.essen{background:var(--cat-essen)}.pin.shop{background:var(--cat-shop)}.pin.natur{background:var(--cat-natur)}.pin.hotel{background:var(--cat-hotel)}.btn{font-family:var(--util);background:var(--card);border:1px solid var(--line);border-radius:var(--radius-sm);cursor:pointer;color:var(--ai);padding:7px 13px;font-size:.8rem;font-weight:500;transition:background .14s,border-color .14s}.btn:hover{background:var(--washi-2);border-color:var(--kin)}.btn.primary{background:var(--shu);border-color:var(--shu);color:#fff}.btn.primary:hover{background:var(--shu-deep);border-color:var(--shu-deep)}.btn.ghost{background:0 0}.btn.small{padding:4px 9px;font-size:.72rem}.btn[aria-pressed=true]{background:var(--ai);border-color:var(--ai);color:var(--washi)}.btn:disabled{opacity:.45;cursor:not-allowed}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important}}@media (width<=767px){:root{--app-h:calc(100dvh - var(--nav-h-mobile));--seitenrand:14px}input,select,textarea{font-size:16px!important}.btn,button,select,[role=button]{min-height:40px}.btn.small{min-height:36px;padding:8px 12px;font-size:.78rem}input[type=checkbox],input[type=radio]{width:20px;height:20px}.card{border-radius:var(--radius-sm)}body{font-size:16px}}@media (hover:none){.btn:hover{background:var(--card);border-color:var(--line)}.btn.primary:hover{background:var(--shu);border-color:var(--shu)}}
