/* KallisToys — "More from this maker" section (catalogue and museum pages) */
.kbr{--kbr-ease:cubic-bezier(.22,.61,.36,1);margin-top:48px}
.kbr-plate{position:relative;display:grid;grid-template-columns:150px minmax(0,1fr) auto;align-items:center;gap:28px;padding:26px 28px;border:1px solid var(--line);border-radius:var(--r,14px);background:radial-gradient(120% 140% at 0% 0%,#fffaf2 0%,var(--surface) 55%);overflow:hidden}
.kbr-plate::before{content:"";position:absolute;left:0;right:0;top:0;height:3px;background:linear-gradient(90deg,var(--red),#c9a66b 70%,transparent)}
.kbr-mark{display:grid;place-items:center;width:150px;height:110px;overflow:hidden;border-radius:10px;background:#fff;box-shadow:0 0 0 1px var(--line),0 10px 22px -16px rgba(33,25,22,.45);text-decoration:none}
.kbr-mark img{max-width:86%;max-height:82%;object-fit:contain}
.kbr-mark .kmw{border-radius:10px}
.kbr-kicker{margin:0 0 6px;color:var(--red-text);font:700 11px/1.3 var(--sans);letter-spacing:.16em;text-transform:uppercase}
.kbr-copy h2{margin:0;color:var(--ink);font:500 clamp(28px,2.6vw,38px)/1.08 var(--serif);letter-spacing:-.02em}
.kbr-meta{margin:6px 0 0;color:var(--ink-2);font-size:13px;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.kbr-intro{margin:10px 0 0;max-width:62ch;color:var(--ink-2);font-size:14.5px;line-height:1.6}
.kbr-counts{display:flex;flex-direction:column;align-items:stretch;gap:6px;min-width:190px}
.kbr-counts a{display:flex;align-items:baseline;gap:8px;padding:8px 12px;border-radius:8px;color:var(--ink);text-decoration:none;transition:background .2s}
.kbr-counts a:hover{background:var(--paper)}
.kbr-counts b{font:500 22px/1 var(--serif);color:var(--red-text);min-width:28px}
.kbr-counts span{font-size:13.5px;color:var(--ink-2)}
.kbr-counts .kbr-profile{justify-content:center;margin-top:4px;padding:10px 14px;border:1px solid var(--line-strong);border-radius:999px;font-size:14px;font-weight:700;color:var(--ink)}
.kbr-counts .kbr-profile .i{width:15px;height:15px}
.kbr-counts .kbr-profile:hover{border-color:var(--ink);background:transparent}
.kbr-row{margin-top:34px;scroll-margin-top:110px}
.kbr-row-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--line)}
.kbr-row-head h3{margin:0;color:var(--ink);font:500 24px/1.2 var(--serif)}
.kbr-row-head a{display:inline-flex;align-items:center;gap:6px;color:var(--red-text);font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
.kbr-row-head a .i{width:15px;height:15px}
.kbr .kbr-products{grid-template-columns:repeat(4,minmax(0,1fr))}
/* catalogue shelf: covers standing like books */
.kbr-shelf{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(150px,1fr);gap:22px;overflow-x:auto;padding:6px 4px 14px;scroll-snap-type:x proximity}
.kbr-book{display:flex;flex-direction:column;gap:10px;min-width:0;color:var(--ink);text-decoration:none;scroll-snap-align:start}
.kbr-book-cover{display:flex;align-items:flex-end;justify-content:center;aspect-ratio:4/5;min-height:0;padding:14px 16px 12px;box-sizing:border-box;border-radius:10px;background:radial-gradient(90% 70% at 50% 40%,#f3eee6,#e6ded2);perspective:800px}
.kbr-book-cover img{max-width:100%;max-height:100%;border-radius:2px 3px 3px 2px;transform-origin:30% 100%;box-shadow:1px 0 0 #efe6d4,2px 0 0 #d9ccb4,3px 0 0 #efe6d4,4px 0 0 #d4c6ad,0 14px 22px -12px rgba(30,18,10,.55);transition:transform .6s var(--kbr-ease)}
.kbr-book:hover .kbr-book-cover img{transform:translateY(-5px) rotateY(-14deg)}
.kbr-book-title{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font:500 15.5px/1.3 var(--serif)}
.kbr-book small{display:inline-flex;align-items:center;gap:5px;margin-top:-4px;color:var(--ink-2);font-size:12.5px}
.kbr-book small .i{width:13px;height:13px}
.kbr-book:hover .kbr-book-title{color:var(--red-text)}
/* museum pieces */
.kbr-museum{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}
.kbr-piece{display:flex;flex-direction:column;gap:10px;color:var(--ink);text-decoration:none}
.kbr-piece-image{position:relative;display:block;aspect-ratio:5/4;overflow:hidden;border-radius:10px;background:radial-gradient(120% 95% at 50% 42%,#e6e5e2,#d4d3cf)}
.kbr-piece-image img{position:absolute;inset:0;margin:auto;max-width:100%;max-height:100%;transition:transform 1s var(--kbr-ease);
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 93%,transparent);-webkit-mask-composite:source-in;mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent),linear-gradient(180deg,transparent,#000 7%,#000 93%,transparent);mask-composite:intersect}
.kbr-piece strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font:500 16px/1.3 var(--serif);transition:color .2s}
.kbr-piece:hover .kbr-piece-image img{transform:scale(1.04)}
.kbr-piece:hover strong{color:var(--red-text)}
@media (max-width:1100px){.kbr-plate{grid-template-columns:120px minmax(0,1fr)}.kbr-mark{width:120px;height:90px}.kbr-counts{grid-column:1/-1;flex-direction:row;flex-wrap:wrap;min-width:0}.kbr-counts .kbr-profile{margin:0 0 0 auto}.kbr .kbr-products,.kbr-museum{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:620px){.kbr-plate{grid-template-columns:1fr;padding:22px 18px;gap:16px}.kbr-counts .kbr-profile{margin:4px 0 0;width:100%}.kbr-shelf{grid-auto-columns:140px}.kbr-row-head{flex-direction:column;gap:4px}}
@media (prefers-reduced-motion:reduce){.kbr-book-cover img,.kbr-piece-image img{transition:none}}

/* ===== museum piece page: gallery fix + tidy layout ===== */
body .kt-museum-thumbs{grid-template-columns:repeat(auto-fill,minmax(88px,1fr))!important}
body .kt-museum-thumbs a{position:relative;display:block!important;height:84px;overflow:hidden;padding:0!important;border-radius:8px!important;transition:border-color .2s,box-shadow .2s}
body .kt-museum-thumbs a:hover,body .kt-museum-thumbs a.is-active{border-color:var(--red)!important;box-shadow:0 0 0 1px var(--red)}
body .kt-museum-thumbs img{position:absolute;inset:4px;margin:auto;max-width:calc(100% - 8px)!important;max-height:calc(100% - 8px)!important;width:auto!important;height:auto!important;object-fit:contain}
body .kt-museum-main-image{position:relative;display:block!important;height:min(560px,62vh);min-height:0!important;padding:0!important;overflow:hidden}
body .kt-museum-main-image img{position:absolute;inset:20px;margin:auto;max-width:calc(100% - 40px)!important;max-height:calc(100% - 40px)!important;width:auto!important;height:auto!important;object-fit:contain}
body .kt-museum-piece-story{position:sticky;top:96px}
@media (max-width:900px){body .kt-museum-main-image{height:360px}body .kt-museum-piece-story{position:static}}
/* "By Märklin" chip in the catalogue header */
.kbr-chip{display:inline-flex;align-items:center;gap:6px;margin:2px 0 12px;padding:7px 14px;border:1px solid var(--line-strong);border-radius:999px;color:var(--ink);font-size:13.5px;font-weight:700;text-decoration:none;transition:border-color .2s,color .2s}
.kbr-chip:hover{border-color:var(--red);color:var(--red-text)}
.kbr-chip .i{width:14px;height:14px}

/* ===== Catalogue page: the book and, next to it, everything from the same maker ===== */
.kcr-layout{--kcr-h:clamp(520px,calc(100vh - 200px),840px);display:grid;grid-template-columns:minmax(0,1fr) clamp(340px,25vw,440px);align-items:start;gap:20px}
.kcr-main{min-width:0}
.kcr-layout .kt-catalogue-reader{height:var(--kcr-h);min-height:0;padding:0;overflow:hidden;border-radius:12px;box-sizing:border-box}
.kcr-layout .kt-catalogue-reader>*{height:100%!important;max-height:100%}
.kcr-layout .kt-catalogue-reader .real3dflipbook,.kcr-layout .kt-catalogue-reader .flipbook-container,.kcr-layout .kt-catalogue-reader .flipbook-main-wrapper{height:100%!important}
.kcr-layout .kt-catalogue-reader>p{display:grid;place-items:center;height:100%}
.kcr-layout .kt-cat-gate{margin:0}
.kcr-aside{position:sticky;top:96px;display:flex;flex-direction:column;gap:14px;max-height:var(--kcr-h);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding:2px 4px 2px 2px}
.kcr-maker{display:flex;align-items:center;gap:12px;padding:12px;border:1px solid var(--line);border-radius:12px;background:radial-gradient(120% 140% at 0% 0%,#fffaf2 0%,var(--surface) 60%);color:var(--ink);text-decoration:none;transition:border-color .2s}
.kcr-maker:hover{border-color:var(--red)}
.kcr-maker-mark{flex:none;display:grid;place-items:center;width:78px;height:58px;overflow:hidden;border-radius:8px;background:#fff;box-shadow:0 0 0 1px var(--line)}
.kcr-maker-mark img{max-width:86%;max-height:80%;object-fit:contain}
.kcr-maker-mark .kmw{--max:22px}
.kcr-maker-mark .kmw-line,.kcr-maker-mark .kmw-orn{display:none}
.kcr-maker-text{display:flex;flex:1;min-width:0;flex-direction:column;gap:2px}
.kcr-maker-text small{color:var(--red-text);font:700 10px/1.2 var(--sans);letter-spacing:.14em;text-transform:uppercase}
.kcr-maker-text b{overflow:hidden;color:var(--ink);font:500 20px/1.15 var(--serif);white-space:nowrap;text-overflow:ellipsis}
.kcr-maker-text em{color:var(--ink-2);font-size:12.5px;font-style:normal}
.kcr-maker>.i{flex:none;width:16px;height:16px;color:var(--red-text)}
.kcr-block{padding:12px;border:1px solid var(--line);border-radius:12px;background:var(--surface)}
.kcr-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:0 2px 8px}
.kcr-head h2{margin:0;color:var(--ink);font:500 19px/1.25 var(--serif)}
.kcr-head a{display:inline-flex;align-items:center;gap:4px;color:var(--red-text);font-size:13px;font-weight:700;text-decoration:none;white-space:nowrap}
.kcr-head a .i{width:14px;height:14px}
.kcr-row{display:flex;align-items:center;gap:11px;padding:7px;border-radius:9px;color:var(--ink);text-decoration:none;transition:background .2s}
.kcr-row+.kcr-row{margin-top:2px}
.kcr-row:hover{background:var(--paper)}
.kcr-thumb{position:relative;flex:none;width:66px;height:66px;overflow:hidden;border-radius:7px;background:radial-gradient(120% 95% at 50% 42%,#e6e5e2,#d4d3cf)}
.kcr-thumb img{position:absolute;inset:0;margin:auto;max-width:100%;max-height:100%}
.kcr-row-text{display:flex;min-width:0;flex-direction:column;gap:2px}
.kcr-row-text strong{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:15px;font-weight:600;line-height:1.4}
.kcr-row-text em{color:var(--red-text);font-size:13px;font-style:normal;font-weight:700}
.kcr-row-text em del{color:var(--ink-2);font-weight:400}
.kcr-row:hover strong{color:var(--red-text)}
.kcr-books{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:4px 2px 2px}
.kcr-book{display:block;perspective:600px}
.kcr-book span{display:flex;align-items:flex-end;justify-content:center;height:150px;min-height:0}
.kcr-book img{max-width:100%;max-height:100%;border-radius:2px 3px 3px 2px;transform-origin:30% 100%;box-shadow:1px 0 0 #efe6d4,2px 0 0 #d9ccb4,3px 0 0 #efe6d4,0 10px 16px -10px rgba(30,18,10,.55);transition:transform .5s cubic-bezier(.22,.61,.36,1)}
.kcr-book:hover img,.kcr-book:focus-visible img{transform:translateY(-4px) rotateY(-14deg)}
@media (max-width:1100px){.kcr-layout{grid-template-columns:1fr}.kcr-aside{position:static;max-height:none;overflow:visible;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));align-items:start}.kcr-maker{grid-column:1/-1}}
@media (max-width:640px){.kcr-layout{--kcr-h:70vh}.kcr-aside{grid-template-columns:1fr}}
.kcr-maker-mark .kmw{--fs:17px}
.kbr-chip{margin-right:14px}
/* a slimmer header on the catalogue page so the book starts higher */
.kt-catalogue-detail .kt-catalogue-detail-head{min-height:0;padding:20px clamp(22px,3vw,36px);gap:22px}
.kt-catalogue-detail .kt-catalogue-detail-head h1{font-size:clamp(28px,2.6vw,40px)}
.kt-catalogue-detail .kt-catalogue-detail-head p:not(.kicker){margin:6px 0 10px}
.kt-catalogue-detail .kt-catalogue-detail-head img{max-height:120px}
.kcr-maker-mark .kmw{--fs:15px}.kcr-maker-mark .kmw-mark{max-width:calc(100% - 10px)}
.kt-maker-collection{--kbr-ease:cubic-bezier(.22,.61,.36,1)}.kt-maker-collection .kbr-row-head h2{margin:0;font:500 26px/1.25 var(--serif);color:var(--ink)}.kt-maker-collection .kbr-products{grid-template-columns:repeat(4,minmax(0,1fr))}.kt-maker-collection .kbr-shelf{grid-auto-columns:clamp(150px,18vw,220px)}.kt-maker-collection a:focus-visible{outline:2px solid var(--red);outline-offset:4px}
@media(max-width:1100px){.kt-maker-collection .kbr-products{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:420px){.kt-maker-collection .kbr-museum{gap:12px}.kt-maker-collection .kbr-shelf{grid-auto-columns:150px}}
