/* Chalet Bergblick · photo sphere · 24 October 2026 */
.cb-sphere-gallery{--orb-paper:#f4f0e7;--orb-muted:#b8c3b8;--orb-accent:#d8aa7d;position:relative;background:#08120e;color:var(--orb-paper);border:1px solid #ffffff18;border-radius:22px;overflow:hidden;box-shadow:0 24px 70px #0003}
.cb-sphere-toolbar{position:relative;z-index:3;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:23px 28px;border-bottom:1px solid #ffffff12}
.cb-sphere-hint{margin:0;font:400 12px/1.5 var(--sans,Arial,sans-serif);letter-spacing:.025em;color:var(--orb-muted)}
.cb-sphere-hint strong{display:block;margin-bottom:3px;font-size:10px;font-weight:500;letter-spacing:.2em;text-transform:uppercase;color:var(--orb-accent)}
.cb-sphere-actions{display:flex;gap:8px;flex-shrink:0}
.cb-sphere-control{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:44px;padding:10px 16px;border:1px solid #f4f0e738;border-radius:999px;background:#ffffff04;color:var(--orb-paper);font:400 12px/1.1 var(--sans,Arial,sans-serif);cursor:pointer;touch-action:manipulation;transition:background .2s,border-color .2s}
.cb-sphere-control:hover{background:#ffffff12;border-color:#f4f0e780}
.cb-sphere-control:focus-visible,.cb-sphere-stage:focus-visible,.cb-sphere-card:focus-visible,.cb-sphere-grid a:focus-visible{outline:3px solid var(--orb-accent);outline-offset:5px}
.cb-sphere-control svg{width:16px;height:16px;flex-shrink:0;stroke:currentColor;fill:none;stroke-width:1.4}
.cb-sphere-gallery:not(.is-ready) .cb-sphere-toolbar{display:none}
.cb-sphere-stage{position:relative;padding:24px;outline-offset:-7px}
.cb-sphere-orb{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:14px}
.cb-sphere-card{display:block;min-width:0;color:inherit;text-decoration:none}
.cb-sphere-card figure{position:relative;margin:0;overflow:hidden;border-radius:4px;background:#15251d}
.cb-sphere-card img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover;user-select:none;-webkit-user-drag:none}
.cb-sphere-card figcaption{padding:8px;font-size:12px}
.cb-sphere-heading,.cb-sphere-floor{display:none}
.cb-sphere-gallery.is-ready .cb-sphere-stage{height:clamp(570px,53vw,730px);padding:0;perspective:var(--orb-perspective,1150px);perspective-origin:50% 50%;overflow:hidden;touch-action:pan-y pinch-zoom;cursor:grab;background:radial-gradient(ellipse at 50% 48%,#19332688,transparent 64%)}
.cb-sphere-gallery.is-dragging .cb-sphere-stage{cursor:grabbing}
.cb-sphere-gallery.is-ready .cb-sphere-touch-surface{position:absolute;left:50%;top:50%;width:var(--orb-touch-width,300px);height:var(--orb-touch-height,300px);transform:translate(-50%,-50%);border-radius:50%;touch-action:none}
.cb-sphere-gallery.is-ready .cb-sphere-card{touch-action:none}
.cb-sphere-gallery.is-dragging .cb-sphere-card figure{transform:none!important}
.cb-sphere-gallery.is-ready .cb-sphere-world{position:absolute;top:50%;left:50%;width:0;height:0;transform-style:preserve-3d;will-change:transform}
.cb-sphere-gallery.is-ready .cb-sphere-orb{position:absolute;top:0;left:0;width:0;height:0;display:block;transform-style:preserve-3d}
.cb-sphere-gallery.is-ready .cb-sphere-card{position:absolute;top:0;left:0;width:var(--orb-card-width,130px);height:calc(var(--orb-card-width,130px) / 1.5);margin-left:calc(var(--orb-card-width,130px) / -2);margin-top:calc(var(--orb-card-width,130px) / -3);transform-style:flat;will-change:transform;outline-offset:4px;-webkit-tap-highlight-color:transparent}
.cb-sphere-gallery.is-ready .cb-sphere-card.is-portrait{height:calc(var(--orb-card-width,130px) * 1.18);margin-top:calc(var(--orb-card-width,130px) * -.59)}
.cb-sphere-gallery.is-ready .cb-sphere-card figure{height:100%;width:100%;box-shadow:0 8px 26px #0005;transition:transform .35s ease}
.cb-sphere-gallery.is-ready .cb-sphere-card figure::after{content:"";position:absolute;inset:0;background:rgba(0,0,0,var(--orb-shade,0));box-shadow:inset 0 0 0 1px #ffffff24;pointer-events:none;border-radius:inherit}
.cb-sphere-gallery.is-ready .cb-sphere-card img{height:100%;aspect-ratio:auto;object-fit:cover;pointer-events:none}
.cb-sphere-gallery.is-ready .cb-sphere-card figcaption{position:absolute;inset:auto 0 0;padding:25px 8px 8px;background:linear-gradient(transparent,#000b);font-size:10px;line-height:1.2;opacity:0;transition:opacity .2s}
.cb-sphere-gallery.is-ready .cb-sphere-card:hover figure,.cb-sphere-gallery.is-ready .cb-sphere-card:focus-visible figure{transform:scale(var(--orb-hover-scale,1.055))}
.cb-sphere-gallery.is-ready .cb-sphere-card:hover figcaption,.cb-sphere-gallery.is-ready .cb-sphere-card:focus-visible figcaption{opacity:1}
.cb-sphere-gallery.is-ready .cb-sphere-heading{--orb-heading-width:min(56vw,380px);position:absolute;display:block;top:0;left:0;width:var(--orb-heading-width);margin:0 0 0 calc(var(--orb-heading-width) / -2);color:var(--orb-paper);font:400 clamp(32px,4vw,55px)/.95 var(--display,Georgia,serif);letter-spacing:-.025em;text-align:center;text-shadow:0 3px 34px #000;pointer-events:none;user-select:none;transform-style:preserve-3d}
.cb-sphere-heading>span{position:absolute;top:0;left:0;width:100%;transform:translateY(-50%)}
.cb-sphere-heading small{display:block;margin-bottom:14px;color:var(--orb-accent);font:400 8px/1.2 var(--sans,Arial,sans-serif);letter-spacing:.25em;text-transform:uppercase}
.cb-sphere-heading em{display:block;font-weight:400;color:inherit}
.cb-sphere-gallery.is-ready .cb-sphere-floor{position:absolute;display:block;bottom:18px;left:20px;right:20px;margin:0;color:#c1cabc99;text-align:center;font:400 10px/1.4 var(--sans,Arial,sans-serif);letter-spacing:.1em;pointer-events:none}
.cb-sphere-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(205px,1fr));gap:17px;padding:26px}
.cb-sphere-grid[hidden],.cb-sphere-stage[hidden]{display:none!important}
.cb-sphere-grid a{display:block;text-decoration:none;color:var(--orb-paper);min-width:0}
.cb-sphere-grid figure{position:relative;margin:0;aspect-ratio:3/2;overflow:hidden;border-radius:6px;background:#15251d}
.cb-sphere-grid img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .45s}
.cb-sphere-grid a:hover img{transform:scale(1.04)}
.cb-sphere-grid figcaption{position:absolute;inset:auto 0 0;padding:32px 13px 12px;background:linear-gradient(transparent,#000c);font:400 18px/1.15 var(--display,Georgia,serif)}
.cb-sphere-grid figcaption small{display:block;margin-top:5px;color:#eee9dfbd;font:400 10px/1.4 var(--sans,Arial,sans-serif)}
.cb-sphere-dialog{position:fixed;inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:max(22px,env(safe-area-inset-top)) max(22px,env(safe-area-inset-right)) max(22px,env(safe-area-inset-bottom)) max(22px,env(safe-area-inset-left));border:0;background:#07100ff0;color:#f4f0e7;overflow:auto}
.cb-sphere-dialog::backdrop{background:#0009}
.cb-sphere-dialog[open]{display:grid;grid-template-rows:auto minmax(0,1fr) auto;gap:16px}
.cb-sphere-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:20px;max-width:1180px;width:100%;margin:auto}
.cb-sphere-dialog-brand{font:400 21px/1.1 var(--display,Georgia,serif)}
.cb-sphere-dialog .cb-sphere-control{--orb-paper:#f4f0e7;--orb-accent:#d8aa7d;background:#ffffff08}
.cb-sphere-dialog figure{align-self:center;justify-self:center;display:flex;flex-direction:column;align-items:center;gap:15px;margin:0;width:100%;min-height:0;max-width:1120px}
.cb-sphere-dialog img{display:block;max-width:100%;width:auto;max-height:calc(100dvh - 220px);height:auto;object-fit:contain;border-radius:5px;box-shadow:0 25px 80px #0006}
.cb-sphere-dialog figcaption{max-width:90%;text-align:center}
.cb-sphere-dialog h3{font:400 clamp(22px,3vw,32px)/1.15 var(--display,Georgia,serif);margin:0 0 6px}
.cb-sphere-dialog-caption{color:#b8c3b8;font:400 12px/1.5 var(--sans,Arial,sans-serif);margin:0}
.cb-sphere-dialog-nav{display:flex;justify-content:center;align-items:center;gap:18px}
.cb-sphere-dialog-count{min-width:62px;text-align:center;color:#b8c3b8;font:400 11px/1 var(--sans,Arial,sans-serif);font-variant-numeric:tabular-nums}
@media(max-width:700px){.cb-sphere-gallery{border-radius:15px}.cb-sphere-toolbar{align-items:flex-start;padding:18px 16px;gap:12px}.cb-sphere-hint{font-size:11px;max-width:185px}.cb-sphere-hint strong{font-size:8px;letter-spacing:.13em;margin-bottom:6px}.cb-sphere-actions{gap:6px;flex-direction:column}.cb-sphere-control{padding:10px 12px;font-size:11px;min-height:44px}.cb-sphere-reset{display:none}.cb-sphere-gallery.is-ready .cb-sphere-stage{height:480px;height:clamp(430px,63svh,560px)}.cb-sphere-gallery.is-ready .cb-sphere-heading{--orb-heading-width:74vw;font-size:clamp(30px,8vw,42px)}.cb-sphere-heading small{font-size:7px;letter-spacing:.2em;margin-bottom:10px}.cb-sphere-grid{grid-template-columns:repeat(2,minmax(0,1fr));padding:14px;gap:10px}.cb-sphere-grid figcaption{padding:25px 8px 8px;font-size:16px}.cb-sphere-grid figcaption small{font-size:9px}.cb-sphere-floor{font-size:9px!important;letter-spacing:.04em!important}.cb-sphere-dialog{padding:16px;gap:12px}.cb-sphere-dialog-brand{font-size:18px}.cb-sphere-dialog img{max-height:calc(100dvh - 245px)}.cb-sphere-dialog figcaption{max-width:100%}}
@media(max-width:370px){.cb-sphere-hint{max-width:150px}.cb-sphere-toolbar{padding-inline:12px}.cb-sphere-control{padding-inline:10px}.cb-sphere-gallery.is-ready .cb-sphere-stage{height:430px}.cb-sphere-grid figcaption small{display:none}}
@media(prefers-reduced-motion:reduce){.cb-sphere-gallery *,.cb-sphere-dialog *{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
