/* FORMWELTEN v2 · gemeinsame Basis für Start- und Weltseiten.
   Schriften lokal (SIL OFL), keine Fremdverbindung. */
@font-face{font-family:'Bricolage Grotesque';src:url(fonts/Bricolage.woff2) format('woff2');font-weight:200 800;font-display:swap}
@font-face{font-family:'Hanken Grotesk';src:url(fonts/Hanken.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Fraunces';src:url(fonts/Fraunces.woff2) format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url(fonts/Cormorant.woff2) format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:'Cormorant Garamond';src:url(fonts/Cormorant-italic.woff2) format('woff2');font-weight:400;font-style:italic;font-display:swap}
@font-face{font-family:'Cinzel Decorative';src:url(fonts/Cinzel.ttf) format('truetype');font-weight:400;font-display:swap}

:root{
  --bg:#EFEDE7;--ink:#1D2226;--soft:#566061;--line:rgba(29,34,38,.18);
  --sans:'Hanken Grotesk','Avenir Next',Arial,sans-serif;
  --display:'Bricolage Grotesque','Hanken Grotesk',Arial,sans-serif;
  --pad:clamp(20px,4vw,56px);
  --ease:cubic-bezier(.2,.8,.2,1);
  color-scheme:light;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;background:var(--bg)}
body{margin:0;background:var(--bg);color:var(--ink);font:17px/1.65 var(--sans);-webkit-font-smoothing:antialiased;overflow-x:hidden;
  transition:background-color .9s ease,color .9s ease}
img{display:block;max-width:100%}
a{color:inherit}
:focus-visible{outline:3px solid currentColor;outline-offset:5px;border-radius:2px}
.skip{position:absolute;left:-9999px;top:10px;z-index:100;background:var(--ink);color:var(--bg);padding:12px 18px}
.skip:focus{left:10px}
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.draft{margin:0;padding:8px var(--pad);font-size:13px;text-align:center;background:var(--ink);color:var(--bg);transition:background-color .9s,color .9s}

/* Kopf */
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:20px;
  padding:16px var(--pad);background:color-mix(in srgb,var(--bg) 86%,transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transition:background-color .9s}
.mark{display:inline-flex;align-items:center;gap:12px;text-decoration:none;font:600 15px/1 var(--display);letter-spacing:.2em}
.mark i{width:24px;height:24px;border-radius:50%;border:2px solid currentColor;background:linear-gradient(90deg,currentColor 50%,transparent 50%)}
.top nav{display:flex;align-items:center;gap:clamp(16px,2.6vw,36px);font-size:15px}
.top nav a{text-decoration:none;padding:6px 0;background:linear-gradient(currentColor,currentColor) 0 100%/0 1.5px no-repeat;transition:background-size .45s var(--ease)}
.top nav a:hover,.top nav a:focus-visible{background-size:100% 1.5px}
.back{display:inline-flex;align-items:center;gap:10px}
.back::before{content:'';width:8px;height:8px;border-left:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:transform .4s var(--ease)}
.back:hover::before{transform:translateX(-4px) rotate(45deg)}

/* Gemeinsame Bausteine */
.btn,.shop-link{display:inline-flex;align-items:center;min-height:52px;padding:0 28px;border-radius:99px;background:var(--ink);color:var(--bg);text-decoration:none;font-weight:600;transition:transform .4s var(--ease)}
.btn:hover,.btn:focus-visible{transform:translateY(-3px)}
.enter{display:inline-block;padding:8px 0;font-weight:600;text-decoration:none;font-size:17px;
  background:linear-gradient(currentColor,currentColor) 0 100%/100% 2px no-repeat;transition:background-size .5s var(--ease),letter-spacing .5s var(--ease)}
.enter:hover,.enter:focus-visible{background-size:38% 2px;letter-spacing:.02em}

/* Etsy */
.shop{display:grid;grid-template-columns:repeat(12,1fr);column-gap:24px;row-gap:40px;align-items:end;padding:clamp(56px,8vw,110px) var(--pad) clamp(56px,8vw,100px)}
.shop h2{grid-column:1/8;margin:0;font:600 clamp(40px,6.2vw,92px)/.98 var(--display);letter-spacing:-.04em}
.shop-box{grid-column:9/13;border-top:1.5px solid var(--line);padding-top:24px}
.shop-box p{margin:0 0 18px;color:var(--soft);font-size:16px}
.shop-pending{display:inline-flex;align-items:center;min-height:52px;padding:0 24px;border-radius:99px;border:1.5px solid currentColor;font-weight:600}
.shop-box .mail{display:block;margin-top:22px;font-size:15px;text-underline-offset:5px}

footer{display:flex;flex-wrap:wrap;gap:16px 36px;align-items:center;justify-content:space-between;padding:28px var(--pad) 44px;border-top:1px solid var(--line);font-size:14px;color:var(--soft)}
footer a{text-underline-offset:4px;display:inline-block;padding:8px 0}
footer .social{display:flex;gap:22px;align-items:center}
footer .social a{display:inline-flex;gap:8px;align-items:center}
footer svg{width:20px;height:20px;fill:currentColor}

/* Portal-Vorhang beim Wechsel zwischen Seiten */
.fw-curtain{position:fixed;inset:0;z-index:1001;display:grid;place-items:center;pointer-events:none;will-change:clip-path}
.fw-curtain-title{font-size:clamp(34px,6.4vw,92px);line-height:1.02;text-align:center;padding:16px;max-width:14ch;opacity:0}
html.fw-arriving body::before{content:'';position:fixed;inset:0;z-index:1000;background:var(--fw-arrive);animation:fw-gone .01s 2.6s forwards}
@keyframes fw-gone{to{opacity:0;visibility:hidden}}

@media(max-width:860px){
  .top nav a:not(.keep){display:none}
  .shop{display:block}
  .shop-box{margin-top:34px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  body,.draft,.top{transition:none}
  *,*::before,*::after{animation:none!important;transition:none!important}
}

/* Gemeinsame Bedienbarkeit: sichtbare Scrollbars, Fokus und Ruhe. */
:root{--scroll-thumb:#867b65;--scroll-track:#EFEDE7;--scroll-hover:#635a49;--scroll-active:#3A382F}
html{scrollbar-gutter:stable;scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:auto;scroll-padding-top:92px}
*{scrollbar-color:var(--scroll-thumb) var(--scroll-track);scrollbar-width:auto}
::-webkit-scrollbar{width:12px;height:12px}::-webkit-scrollbar-track{background:var(--scroll-track)}::-webkit-scrollbar-thumb{background:var(--scroll-thumb);border:3px solid var(--scroll-track);border-radius:8px}::-webkit-scrollbar-thumb:hover{background:var(--scroll-hover)}::-webkit-scrollbar-thumb:active{background:var(--scroll-active)}
a,button,summary{cursor:pointer}a:active,button:active{opacity:.7}
@media(forced-colors:active){*{scrollbar-color:auto}.shop-pending{border-color:CanvasText}}
