/* Hering Geräte – Single-Design. Alle Stile hier (im <head> geladen), damit
   Markup-Optimierung/Cache nichts zerlegt. Alles unter .hg-single gescoped. */

.hg-single{--ink:#0C1B2B;--blue:#0E5A94;color:#0C1B2B}
.hg-single .hg-wrap{max-width:1180px;margin:0 auto;padding:40px 20px}
.hg-single .hg-row{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:start}
@media(max-width:900px){.hg-single .hg-row{grid-template-columns:1fr;gap:26px}}
.hg-single h1{font-size:2.1rem;line-height:1.1;margin:0 0 .5rem;color:var(--ink)}
.hg-single .hg-tagline{font-size:1.05rem;color:#51606E;margin:0 0 1.1rem}
.hg-single h2{font-size:1.6rem;margin:.4rem 0 1.1rem;color:var(--ink)}
.hg-single .hg-section{margin-top:46px;scroll-margin-top:120px}
.hg-single .hg-desc{color:#33414F;line-height:1.6;margin-bottom:1.2rem}

/* Galerie */
.hg-single .sg-gallery{display:flex;flex-direction:column;gap:1rem;position:sticky;top:88px}
.hg-single .sg-main{aspect-ratio:1;background:#fff;border-radius:16px;overflow:hidden;position:relative;border:1px solid #E8EDF2;display:flex;align-items:center;justify-content:center;padding:18px;cursor:zoom-in}
.hg-single .sg-main img{width:100%;height:100%;object-fit:contain}
/* Hinweis „zum Vergrößern anklicken" (Lupe unten rechts) */
.hg-single .sg-main::after{content:"";position:absolute;right:.7rem;bottom:.7rem;width:2.2rem;height:2.2rem;border-radius:50%;background:rgba(14,90,148,.92) center/1.15rem no-repeat;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round'%3E%3Ccircle cx='10.5' cy='10.5' r='7'/%3E%3Cline x1='21' y1='21' x2='15.8' y2='15.8'/%3E%3Cline x1='10.5' y1='7.5' x2='10.5' y2='13.5'/%3E%3Cline x1='7.5' y1='10.5' x2='13.5' y2='10.5'/%3E%3C/svg%3E");box-shadow:0 2px 8px rgba(12,27,43,.25);pointer-events:none;opacity:.9;transition:opacity .18s}
.hg-single .sg-main:hover::after{opacity:1}
.hg-single .sg-badge{position:absolute;top:1rem;left:1rem;background:#E00A14;color:#fff;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;padding:.3em .8em;border-radius:999px;font-family:monospace}
.hg-single .sg-thumbs{display:grid;grid-template-columns:repeat(4,1fr);gap:.6rem}
.hg-single .sg-thumb{aspect-ratio:1;background:#fff;border-radius:12px;overflow:hidden;cursor:pointer;border:1px solid #E8EDF2;transition:border-color .18s;padding:.35rem;display:flex;align-items:center;justify-content:center}
.hg-single .sg-thumb:hover,.hg-single .sg-thumb.on{border-color:#0E5A94}
.hg-single .sg-thumb img{width:100%;height:100%;object-fit:contain}

/* Einzelbild – gerahmt (Standard) */
.hg-single .hg-figure{margin:0;border-radius:16px;overflow:hidden;background:#fff;border:1px solid #E8EDF2;display:flex;align-items:center;justify-content:center;padding:32px}
.hg-single .hg-figure img{width:100%;height:auto;max-height:520px;object-fit:contain;display:block}

/* Einzelbild – Cover (füllt die ganze Spalte).
   Der Elementor-SPALTE die CSS-Klasse "hg-cover-col" geben, dann füllt das Bild
   die komplette Höhe/Breite (wie ein Hintergrundbild, object-fit:cover). */
.hg-single.hg-cover{margin:0}
.hg-single.hg-cover img{display:block;width:100%;height:auto;border-radius:16px}
.hg-cover-col{position:relative;overflow:hidden}
.hg-cover-col .elementor-widget-shortcode,
.hg-cover-col .elementor-shortcode{position:absolute;inset:0;height:100%}
.hg-cover-col .hg-single.hg-cover{position:absolute;inset:0}
.hg-cover-col .hg-single.hg-cover img{width:100%;height:100%;object-fit:cover;border-radius:0}

/* Tags / Fakten */
.hg-single .pi-tags{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:20px}
.hg-single .pi-tags .tag{display:inline-flex;align-items:center;font-size:.72rem;font-weight:600;padding:.3em .75em;border-radius:999px;font-family:monospace;letter-spacing:.04em;white-space:nowrap}
.hg-single .pi-tags .tag-blue{background:#E9F1F8;color:#0E5A94;border:1px solid rgba(14,90,148,.18)}
.hg-single .pi-tags .tag-ink{background:#0C1B2B;color:#fff}
.hg-single .pi-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:.6rem;margin-bottom:20px}
.hg-single .pi-facts .fact{background:#F2F7FB;border-radius:12px;padding:.9rem .85rem;border:1px solid #E2EAF2}
.hg-single .pi-facts .fact-val{font-size:1.15rem;font-weight:800;font-family:monospace;color:#0E5A94;line-height:1}
.hg-single .pi-facts .fact-label{font-size:.68rem;color:#8593A1;text-transform:uppercase;letter-spacing:.1em;margin-top:.3rem;font-family:monospace}

/* Buttons + Finance-Hint */
.hg-single .pi-cta-row{display:flex;flex-wrap:wrap;gap:.6rem;margin:.4rem 0 .6rem}
.hg-single .pi-cta-row .btn{display:inline-flex;align-items:center;justify-content:center;padding:.7em 1.3em;border-radius:999px;font-weight:600;font-size:.9rem;text-decoration:none;transition:.2s;gap:.3em}
.hg-single .pi-cta-row .btn-red{background:#E00A14;color:#fff}.hg-single .pi-cta-row .btn-red:hover{background:#b80811;color:#fff}
.hg-single .pi-cta-row .btn-light{background:#fff;color:#0C1B2B;border:2px solid #D2DEEA}.hg-single .pi-cta-row .btn-light:hover{border-color:#0E5A94;color:#0E5A94}
.hg-single .hg-sonothek{font-size:.75rem;color:#8593a1;margin:.2rem 0 .6rem}
.hg-single .hg-finhint{background:#F2F7FB;border:1.5px solid #E2EAF2;border-radius:12px;padding:1rem 1.1rem;display:flex;align-items:center;gap:1rem}
.hg-single .hg-finhint span{font-size:1.3rem}
.hg-single .hg-finhint p{font-size:.8rem;color:#51606E;margin:0}
.hg-single .hg-finhint a{color:#0E5A94;font-weight:600;text-decoration:none}

/* Ankernav */
.hg-navbar{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);backdrop-filter:blur(12px);border-bottom:1px solid #E2EAF2}
.hg-navbar .cnav{display:flex;overflow-x:auto;scrollbar-width:none;height:52px;max-width:1180px;margin:0 auto;padding:0 20px}
.hg-navbar .cnav::-webkit-scrollbar{display:none}
.hg-navbar .cnav-item{flex-shrink:0;display:flex;align-items:center;padding:0 1.3em;font-size:.84rem;font-weight:600;color:#51606E;border:0;border-bottom:2.5px solid transparent;cursor:pointer;background:none;white-space:nowrap;font-family:inherit;transition:.18s}
.hg-navbar .cnav-item:hover,.hg-navbar .cnav-item.on{color:#0E5A94;border-bottom-color:#0E5A94}

/* Highlights */
.hg-single .hg-hl{list-style:none;margin:0;padding:0;display:grid;gap:.8rem}
.hg-single .hg-hl li{display:flex;gap:.6rem;align-items:flex-start}
.hg-single .hg-hl .c{color:#0E5A94;font-weight:800;flex-shrink:0}
.hg-single .hg-hl strong{color:#0C1B2B}
.hg-single .hg-hl .d{font-size:.83rem;color:#51606E}

/* Technik-Tabs */
.hg-single .hg-tabs{border:1px solid #E2EAF2;border-radius:16px;overflow:hidden}
.hg-single .hg-tabs-nav{display:flex;overflow-x:auto;scrollbar-width:none;background:#F7FAFC;border-bottom:1px solid #E2EAF2}
.hg-single .hg-tabs-nav::-webkit-scrollbar{display:none}
.hg-single .hg-tab-title{flex-shrink:0;border:0;background:none;padding:.9rem 1.3rem;font-size:.86rem;font-weight:600;color:#51606E;cursor:pointer;border-bottom:2.5px solid transparent;white-space:nowrap;font-family:inherit}
.hg-single .hg-tab-title:hover{color:#0E5A94}
.hg-single .hg-tab-title.on{color:#0E5A94;border-bottom-color:#0E5A94;background:#fff}
.hg-single .hg-tab-content{display:none}
.hg-single .hg-tab-content.on{display:block}
.hg-single .hg-spec-table{width:100%;border-collapse:collapse;font-size:.87rem}
.hg-single .hg-spec-table tr{border-bottom:1px solid #E2EAF2}
.hg-single .hg-spec-table tr:nth-child(even){background:rgba(242,247,251,.5)}
.hg-single .hg-spec-table td{padding:.8rem 1.2rem;vertical-align:top}
.hg-single .hg-spec-table td:first-child{color:#8593A1;width:42%}
.hg-single .hg-spec-table td:last-child{font-weight:600;color:#2B3A48}
.hg-single .hg-spec-list{list-style:none;margin:0;padding:.6rem 1.2rem 1rem;columns:2;column-gap:2rem;font-size:.87rem;color:#2B3A48}
@media(max-width:640px){.hg-single .hg-spec-list{columns:1}}
.hg-single .hg-spec-list li{display:flex;gap:.55rem;align-items:flex-start;padding:.35rem 0;break-inside:avoid}
.hg-single .hg-spec-list li span:first-child{color:#0E5A94;font-weight:700;flex-shrink:0}

/* Video */
.hg-single .hg-video-frame{position:relative;padding-top:56.25%;border-radius:16px;overflow:hidden;border:1px solid #E8EDF2}
.hg-single .hg-video-frame iframe{position:absolute;inset:0;width:100%;height:100%}

/* Finanzierung */
.hg-single .hg-finanz-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:760px){.hg-single .hg-finanz-grid{grid-template-columns:1fr}}
.hg-single .hg-fz{background:#fff;border:1px solid #E2EAF2;border-radius:16px;padding:1.3rem}
.hg-single .hg-fz .ic{font-size:1.5rem}
.hg-single .hg-fz .sub{font-weight:700;color:#0C1B2B;font-size:1.1rem;margin:.5rem 0 .4rem}
.hg-single .hg-fz p{color:#51606E;font-size:.88rem;line-height:1.6;margin:0 0 .8rem}
.hg-single .hg-fz .rm{color:#0E5A94;font-weight:600;text-decoration:none;font-size:.85rem}

/* Downloads */
.hg-single .dl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.hg-single .dl-card{border:1.5px solid #E2EAF2;border-radius:16px;padding:1.2rem 1.3rem;display:flex;align-items:center;gap:.5rem;transition:all .22s ease;background:#fff;text-decoration:none;color:inherit}
.hg-single .dl-card:hover{border-color:#0E5A94;transform:translateY(-2px);box-shadow:0 4px 16px rgba(14,90,148,.1)}
.hg-single .dl-icon{width:44px;height:44px;border-radius:10px;background:#E9F1F8;display:flex;align-items:center;justify-content:center;flex-shrink:0;font-size:1.3rem}
.hg-single .dl-info b{font-size:.9rem;font-weight:700;display:block;margin-bottom:.15rem}
.hg-single .dl-info span{font-size:.72rem;color:#8593A1;font-family:monospace}
.hg-single .dl-arrow{color:#0E5A94;font-size:1.1rem;margin-left:auto}

/* Ähnliche */
.hg-rel{display:grid;grid-template-columns:repeat(3,1fr);gap:1.2rem}
@media(max-width:760px){.hg-rel{grid-template-columns:1fr}}
.hg-rel a{display:block;background:#fff;border:1px solid #E8EDF2;border-radius:14px;padding:16px;text-decoration:none;transition:.2s}
.hg-rel a:hover{box-shadow:0 10px 30px rgba(12,27,43,.08);transform:translateY(-2px)}
.hg-rel .th{aspect-ratio:1;background:#F4F7FB;border-radius:10px;overflow:hidden;display:flex;align-items:center;justify-content:center;padding:16px;margin-bottom:12px}
.hg-rel .th img{width:100%;height:100%;object-fit:contain}
.hg-rel .br{font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:#8593A1;font-family:monospace}
.hg-rel .ti{display:block;font-size:1.05rem;font-weight:700;color:#0C1B2B;margin:.15rem 0}
.hg-rel .tg{display:block;font-size:.82rem;color:#51606E;line-height:1.4}

/* --------------------------------------------------------------------- */
/* Galerie-Lightbox (Vollbild, Zoom, Blättern)                            */
/* --------------------------------------------------------------------- */
body.hg-lb-lock{overflow:hidden}
.hg-lb{position:fixed;inset:0;z-index:100000;display:none;align-items:center;justify-content:center;background:rgba(8,16,26,.93);opacity:0;transition:opacity .2s ease}
.hg-lb.on{display:flex;opacity:1}
.hg-lb-stage{margin:0;max-width:92vw;max-height:86vh;display:flex;align-items:center;justify-content:center;overflow:hidden}
.hg-lb-img{max-width:92vw;max-height:86vh;object-fit:contain;border-radius:10px;background:#fff;cursor:zoom-in;transition:transform .18s ease;user-select:none;-webkit-user-drag:none}
.hg-lb-img.zoom{transform:scale(2.4);cursor:zoom-out}
.hg-lb-close{position:absolute;top:1rem;right:1.2rem;width:2.7rem;height:2.7rem;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s}
.hg-lb-close:hover{background:rgba(255,255,255,.3)}
.hg-lb-nav{position:absolute;top:50%;transform:translateY(-50%);width:3.1rem;height:3.1rem;border:0;border-radius:50%;background:rgba(255,255,255,.14);color:#fff;font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .18s}
.hg-lb-nav:hover{background:rgba(255,255,255,.3)}
.hg-lb-prev{left:1.2rem}
.hg-lb-next{right:1.2rem}
.hg-lb-count{position:absolute;bottom:1.1rem;left:50%;transform:translateX(-50%);color:#fff;font-size:.82rem;font-family:monospace;letter-spacing:.08em;background:rgba(0,0,0,.4);padding:.35em 1em;border-radius:999px}
@media(max-width:640px){
  .hg-lb-nav{width:2.6rem;height:2.6rem;font-size:1.25rem}
  .hg-lb-prev{left:.5rem}
  .hg-lb-next{right:.5rem}
  .hg-lb-img,.hg-lb-stage{max-width:96vw;max-height:80vh}
}
