/* Website 2.0: Funktionen der alten Startseite im neuen Design (12.11.2026) */

/* Plan: vermietete Flächen mit Tour oder Website */
.fp .u-link{cursor:pointer}
.fp .u-link:hover,.fp .u-link.hov{filter:brightness(.93)}
.plan-tip .tip-acts{display:flex;flex-direction:column;gap:6px;margin-top:10px}
.plan-tip .tip-act{display:inline-block;padding:0;border:0;background:none;color:var(--white);font:700 14px/1.3 Lato;text-align:left;text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:.3em;cursor:pointer}
.plan-tip .tip-act:hover{text-decoration-color:var(--white)}

/* 360°-Ansicht */
.pano-open,.pano-open body{overflow:hidden}
.pano{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:clamp(12px,3vw,40px);background:rgba(10,18,33,.82)}
.pano[hidden]{display:none}
.pano-box{width:min(1280px,100%);height:min(820px,100%);display:flex;flex-direction:column;background:var(--navy-ink);border-radius:3px;box-shadow:var(--panel-shadow);overflow:hidden}
.pano-bar{display:flex;align-items:center;gap:14px;padding:12px 12px 12px 22px;border-bottom:1px solid var(--line)}
.pano-bar h3{margin:0;color:var(--white);font-size:17px;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.pano-x{width:40px;height:40px;flex:none;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:transparent;color:var(--white);font-size:24px;line-height:1;cursor:pointer}
.pano-x:hover{border-color:var(--white);background:rgba(255,255,255,.08)}
.pano-body{flex:1;position:relative;background:#000}
.pano-body iframe{position:absolute;inset:0;width:100%;height:100%;border:0}

/* Referenzfotos */
.refphotos{background:var(--navy-deep);padding:calc(var(--sec) * .4) 0 var(--sec)}
.refphotos-head{display:flex;align-items:center;flex-wrap:wrap;gap:16px;margin-bottom:28px}
.refphotos-head h2{margin:0}
.refphotos-row{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 max(var(--gut),calc((100vw - var(--wrap)) / 2 + var(--gut)))}
.refphotos-row::-webkit-scrollbar{display:none}
.refphoto{flex:none;width:clamp(240px,30vw,420px);aspect-ratio:4/3;overflow:hidden;border-radius:2px;scroll-snap-align:start;background:var(--navy)}
.refphoto img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.refphoto:hover img{transform:scale(1.04)}
.partners .sec-more{margin:-12px 0 28px}

.lbx{position:fixed;inset:0;z-index:1000;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:clamp(12px,3vw,40px);background:rgba(10,18,33,.92)}
.lbx[hidden]{display:none}
.lbx img{grid-column:2;max-width:100%;max-height:calc(100svh - 80px);margin:auto;object-fit:contain}
.lbx-p{grid-column:1}.lbx-n{grid-column:3}
.lbx-p,.lbx-n,.lbx-x{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;border:1px solid rgba(255,255,255,.4);background:transparent;color:var(--white);cursor:pointer}
.lbx-p svg,.lbx-n svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:1.3}
.lbx-x{position:absolute;top:16px;right:16px;font-size:26px;line-height:1}

/* Blog */
.insights{padding-top:var(--sec);padding-bottom:var(--sec)}
.insights-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;margin-bottom:32px}
.insights-head h2{margin:0}
.igrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ipost{display:flex;flex-direction:column;color:var(--text);text-decoration:none}
.ipost-img{aspect-ratio:1200/630;overflow:hidden;border-radius:2px;background:var(--navy)}
.ipost-img img{width:100%;height:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.ipost:hover .ipost-img img{transform:scale(1.04)}
.ipost-meta{margin:16px 0 6px;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}
.ipost h3{color:var(--white);margin:0 0 8px}
.ipost-ex{margin:0;font-size:15px;line-height:1.55}
.ipost:hover h3{text-decoration:underline;text-decoration-color:var(--blue);text-underline-offset:.25em}

@media (max-width:980px){
  .igrid{grid-template-columns:1fr;gap:32px}
  .insights-head{flex-wrap:wrap}
  .lbx{grid-template-columns:1fr;padding-top:70px}
  .lbx img{grid-column:1}
  .lbx-p,.lbx-n{position:absolute;bottom:20px}
  .lbx-p{left:calc(50% - 56px)}.lbx-n{left:calc(50% + 12px)}
}
