/*
Theme Name: HILTAG AG – Editierbar 1:1
Theme URI: https://www.hiltag.ch/
Author: HILTAG AG
Description: Eigenständiges Block-Theme auf Basis des HILTAG Referenzdesigns. Sämtliche sichtbaren Inhalte sind als editierbare WordPress-Blöcke aufgebaut; keine sichtbaren Inhalte werden durch PHP gerendert.
Version: 6.12.2
Requires at least: 6.5
Requires PHP: 8.0
Text Domain: hiltag
*/

/* ===== Original design tokens ===== */
:root {
  --blau:#0000CD; --papier:#FAF9F5; --tinte:#17170F;
  --tinte-82:rgba(23,23,15,.82); --tinte-78:rgba(23,23,15,.78); --tinte-72:rgba(23,23,15,.72); --tinte-66:rgba(23,23,15,.66);
  --linie:rgba(23,23,15,.12); --linie-fein:rgba(23,23,15,.10); --linie-box:rgba(23,23,15,.18); --feld:rgba(23,23,15,.045);
  --sans:'Helvetica Neue',Helvetica,Arial,sans-serif;
  --mono:'IBM Plex Mono',ui-monospace,'SF Mono',Menlo,Consolas,monospace;
  --breite:1200px; --rand:24px; --header-h:73px; --header-h-mobile:73px;
  --abschnitt:clamp(72px,10vw,128px);
}
html{scroll-behavior:smooth;scroll-padding-top:var(--header-h)}
body{margin:0;background:var(--papier);color:var(--tinte);font-family:var(--sans);-webkit-font-smoothing:antialiased}
a{color:var(--tinte)} a:hover{color:var(--blau)} ::selection{background:var(--blau);color:var(--papier)} :focus-visible{outline:2px solid var(--blau);outline-offset:3px}
.wp-site-blocks{padding:0!important}.wp-site-blocks>*{margin-block-start:0!important}
.wp-block-post-content{max-width:var(--breite);margin:0 auto!important;padding-left:var(--rand);padding-right:var(--rand);box-sizing:content-box}
.wp-block-post-content>*{margin-block-start:0;margin-block-end:0}
.wp-block-post-content ul{padding-left:0}
.mono-label{font-family:var(--mono);font-size:11px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--tinte-66)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
@keyframes rise-in{from{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@keyframes pulse-dot{0%,100%{opacity:1}50%{opacity:.25}}

/* ===== Header – native editable blocks ===== */
.site-header{position:fixed;top:0;left:50%;right:auto;transform:translateX(-50%);z-index:50;margin:0!important;padding:0 var(--rand)!important;width:calc(100% - (2 * var(--rand)));max-width:var(--breite)!important;height:72px;box-sizing:content-box;background:transparent;border-bottom:0;display:flex!important;align-items:center;justify-content:space-between;gap:20px}
.site-header::before{content:'';position:absolute;z-index:-1;top:0;bottom:0;left:50%;transform:translateX(-50%);width:100vw;background:rgba(250,249,245,.92);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}
.site-header>.wp-block-column{margin:0!important;min-width:0;flex:0 0 auto!important}
.site-header .header-logo{display:flex;align-items:center}.site-header .wp-block-site-logo{margin:0}.site-header .wp-block-site-logo img{height:40px;width:auto;display:block;transition:height .25s ease}
.site-header .header-nav{display:flex}.site-header .wp-block-navigation{font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase;white-space:nowrap}.site-header .wp-block-navigation__container{gap:26px!important}.site-header .wp-block-navigation-item__content{text-decoration:none!important;color:var(--tinte)!important}.site-header .wp-block-navigation-item__content:hover{color:var(--blau)!important}
.hiltag-plain-btn{display:inline-block;box-sizing:border-box;text-decoration:none;border-radius:0}.hiltag-plain-btn.is-dark{border:0;background:var(--tinte);color:var(--papier);padding:10px 16px 9px;font-family:var(--mono);font-size:11px;letter-spacing:.08em;text-transform:uppercase}.hiltag-plain-btn.is-dark:hover{background:var(--blau);color:var(--papier)}.hiltag-plain-btn.is-ghost{color:var(--tinte);background:transparent;font-size:15px;font-weight:500;padding:15px 24px;border:1px solid rgba(23,23,15,.3)}.hiltag-plain-btn.is-ghost:hover{border-color:var(--tinte);color:var(--tinte)}
.header-line{position:fixed!important;top:72px;left:0;right:0;z-index:51;margin:0!important;width:100%!important}.nav-spacer{height:var(--header-h)!important;margin:0!important}

/* ===== Custom exact logo button ===== */
.logo-btn{position:relative;isolation:isolate;display:inline-block;text-decoration:none;--lb:var(--blau);--lb-gap:var(--papier);color:var(--lb-gap);font-size:15px;font-weight:500;padding:19px 34px;letter-spacing:.01em;line-height:1.2;box-sizing:border-box}
.logo-btn .lb-layer{position:absolute;inset:-8px 0;z-index:-1;transition:clip-path .5s cubic-bezier(.5,0,.2,1.4)}
.logo-btn .lb-ring{background:var(--lb);clip-path:polygon(0 8px,50% 8px,100% 8px,100% calc(100% - 8px),50% calc(100% - 8px),0 calc(100% - 8px))}
.logo-btn .lb-gap{background:var(--lb-gap);clip-path:polygon(2px 10px,50% 10px,calc(100% - 2px) 10px,calc(100% - 2px) calc(100% - 10px),50% calc(100% - 10px),2px calc(100% - 10px))}
.logo-btn .lb-fill{background:var(--lb);clip-path:polygon(4px 12px,50% 12px,calc(100% - 4px) 12px,calc(100% - 4px) calc(100% - 12px),50% calc(100% - 12px),4px calc(100% - 12px))}
.logo-btn:hover,.logo-btn:focus-visible{color:var(--lb-gap)}
.logo-btn:hover .lb-layer,.logo-btn:focus-visible .lb-layer,.logo-btn[data-morph="true"] .lb-layer{transition:clip-path .55s cubic-bezier(.2,2.2,.35,.85)}
.logo-btn:hover .lb-ring,.logo-btn:focus-visible .lb-ring,.logo-btn[data-morph="true"] .lb-ring{clip-path:polygon(0 8px,50% 1px,100% 8px,100% calc(100% - 8px),50% calc(100% - 1px),0 calc(100% - 8px))}
.logo-btn:hover .lb-gap,.logo-btn:focus-visible .lb-gap,.logo-btn[data-morph="true"] .lb-gap{clip-path:polygon(2px 10px,50% 3.3px,calc(100% - 2px) 10px,calc(100% - 2px) calc(100% - 10px),50% calc(100% - 3.3px),2px calc(100% - 10px))}
.logo-btn:hover .lb-fill,.logo-btn:focus-visible .lb-fill,.logo-btn[data-morph="true"] .lb-fill{transition-delay:.06s;clip-path:polygon(4px 12px,50% 5.6px,calc(100% - 4px) 12px,calc(100% - 4px) calc(100% - 12px),50% calc(100% - 5.6px),4px calc(100% - 12px))}

/* ===== Separators: EVERY visible hairline is a real Separator block ===== */
.wp-block-separator.hiltag-line{border:0;width:100%!important;max-width:none!important;height:1px;min-height:1px;margin-left:0;margin-right:0;opacity:1}.wp-block-separator.hiltag-line:not(.has-background){background-color:var(--linie)}.wp-block-separator.hiltag-line--strong:not(.has-background){background-color:var(--tinte)}.wp-block-separator.hiltag-line--fine:not(.has-background){background-color:var(--linie-fein)}

/* ===== Hero ===== */
.hero-top-space{margin:0!important}
.kicker{display:flex;justify-content:flex-end;align-items:baseline;min-height:17px;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--tinte-66);animation:rise-in .7s cubic-bezier(.2,.6,.2,1) both}
.kicker-anim{display:inline-flex;align-items:center;gap:10px;text-align:right;transition:opacity .4s ease}.kicker-text{font-variant-numeric:tabular-nums}.kicker[data-vis="false"] .kicker-anim{opacity:0}.kicker[data-done="true"] .dot{display:none}.dot{width:7px;height:7px;border-radius:50%;flex:none;background:var(--blau);animation:pulse-dot 2.2s ease-in-out infinite}
.kicker-line{margin:14px 0 0}
.hero-title{margin-top:clamp(36px,5vw,56px)!important;font-size:clamp(30px,8.6vw,104px)!important;line-height:.98!important;letter-spacing:-.035em!important;font-weight:500!important;animation:rise-in .8s cubic-bezier(.2,.6,.2,1) .08s both}.hero-title em{font-style:normal;color:var(--blau)}
.hero-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:40px;margin-top:clamp(40px,6vw,64px)!important;align-items:end!important;animation:rise-in .8s cubic-bezier(.2,.6,.2,1) .18s both}.hero-grid>.wp-block-column{margin:0!important}.hero-lede{font-size:clamp(17px,2vw,20px)!important;line-height:1.5!important;max-width:34em;color:var(--tinte-82);text-wrap:pretty}
.hero-cta{display:flex!important;gap:14px!important;justify-content:flex-end!important;align-items:center!important;flex-wrap:wrap}.hero-cta .hiltag-plain-btn{margin:0}
.stats{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:40px;margin-top:clamp(56px,8vw,96px)!important;animation:rise-in .8s cubic-bezier(.2,.6,.2,1) .28s both}.stats>.wp-block-column{margin:0!important}.stat-line{margin:0 0 26px}.stat-value{font-size:clamp(36px,3.6vw,44px)!important;font-weight:500!important;letter-spacing:-.02em!important;line-height:1.2!important;font-variant-numeric:tabular-nums;margin:0!important}.stat-label{margin-top:8px!important;font-family:var(--mono);font-size:11px!important;letter-spacing:.08em;text-transform:uppercase;color:var(--tinte-66)}.stat-label a{display:flex;justify-content:space-between;gap:12px;text-decoration:none;color:inherit}.stat-label a:hover{color:var(--blau)}

/* ===== Section spacing and headings ===== */
.section-spacer{margin:0!important}.section-head{display:grid!important;grid-template-columns:1fr auto;align-items:baseline!important;margin:0!important;padding-bottom:14px}.section-head>.wp-block-column{margin:0!important}.section-head h2{font-size:15px!important;font-weight:500!important;letter-spacing:.01em!important;margin:0!important}.section-index{font-family:var(--mono);font-size:11.5px!important;letter-spacing:.08em;color:var(--tinte-66);margin:0!important;text-align:right}.section-line{margin:0}.section-lede{margin-top:32px!important;font-size:17px!important;line-height:1.6!important;color:var(--tinte-78);max-width:40em;text-wrap:pretty}

/* ===== Intro ===== */
.intro-line{margin:0 0 24px}.intro-grid{display:grid!important;grid-template-columns:260px 1fr;gap:40px;align-items:start!important}.intro-grid>.wp-block-column{margin:0!important}.intro-grid .mono-label{font-size:11.5px;font-weight:400;margin:0}.intro-title{font-size:clamp(26px,3vw,40px)!important;line-height:1.15!important;letter-spacing:-.02em!important;font-weight:500!important;max-width:22em;text-wrap:pretty;margin:0!important}.intro-copy{margin-top:28px!important;font-size:17px!important;line-height:1.65!important;color:var(--tinte-78);max-width:42em;text-wrap:pretty}.intro-copy a{color:inherit}

/* ===== Services ===== */
.services{display:grid!important;grid-template-columns:1fr 1px 1fr 1px 1fr;gap:0!important;margin:0!important}.services>.service-col{margin:0!important;padding:40px 40px 48px 0}.services>.service-col.service-col--middle{padding-left:40px}.services>.service-col.service-col--last{padding-left:40px;padding-right:0}.service-divider-col{padding:0!important;margin:0!important;display:flex!important;align-items:stretch}.service-divider{width:1px!important;height:100%!important;min-height:100%!important;border:0;background-color:var(--linie);margin:0;align-self:stretch}.service-mobile-line{display:none}.service-index{font-family:var(--mono);font-size:11px!important;letter-spacing:.08em;color:var(--blau);margin:0!important}.service-title{margin-top:16px!important;font-size:24px!important;font-weight:500!important;letter-spacing:-.01em!important;line-height:1.2!important}.service-copy{margin:16px 0 24px!important;font-size:15px!important;line-height:1.6!important;color:var(--tinte-72);text-wrap:pretty}.plus-list{display:flex!important;flex-direction:column;gap:10px;font-size:14.5px!important;line-height:1.5!important;color:var(--tinte-82);list-style:none!important;margin:0!important}.plus-list li{padding-left:15px;position:relative}.plus-list li::before{content:'+';position:absolute;left:0;color:var(--blau);font-family:var(--mono);font-size:12px;line-height:1.8}.plus-list a{color:inherit}.arrow-link{margin-top:26px!important;font-family:var(--mono);font-size:11.5px!important;letter-spacing:.08em;text-transform:uppercase}.arrow-link a{text-decoration:none;color:var(--tinte)}.arrow-link a:hover{color:var(--blau)}

/* ===== Systems ===== */
.systems-start{margin-top:40px!important}.system-line{margin:0}.system-row{display:grid!important;grid-template-columns:280px 1fr;gap:12px 32px;padding:22px 0;align-items:baseline!important;margin:0!important}.system-row>.wp-block-column{margin:0!important}.system-name{font-size:15px!important;font-weight:500!important;margin:0!important}.system-products{margin:0!important;font-family:var(--mono);font-size:13px!important;line-height:1.7!important;color:var(--tinte-72)}.system-products a{color:inherit}

/* ===== Maintenance ===== */
.modules{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px!important;margin-top:40px!important}.modules>.wp-block-column{border:1px solid var(--linie-box);padding:28px 24px;display:flex!important;flex-direction:column;gap:14px;margin:0!important}.modules>.wp-block-column:hover{border-color:var(--blau)}.module-title{margin:0!important}.module-copy{font-size:14.5px!important;line-height:1.55!important;color:var(--tinte-82);text-wrap:pretty;margin:0!important}
.service-band{margin-top:20px!important;scroll-margin-top:96px;background:var(--blau);color:var(--papier);display:grid!important;grid-template-columns:1fr auto;gap:32px;padding:clamp(32px,4vw,44px) clamp(24px,4vw,48px);align-items:center!important}.service-band>.wp-block-column{margin:0!important}.service-band-title{font-family:var(--mono);font-size:11px!important;font-weight:500!important;letter-spacing:.12em;text-transform:uppercase;opacity:.8;margin:0!important}.service-band-copy{margin-top:12px!important;font-size:clamp(22px,2.6vw,34px)!important;font-weight:500!important;letter-spacing:-.015em!important;line-height:1.2!important;max-width:20em;text-wrap:pretty}.service-band .logo-btn{--lb:var(--papier);--lb-gap:var(--blau);font-size:clamp(18px,2vw,22px);font-weight:500;letter-spacing:-.01em;padding:20px 34px;white-space:nowrap}

/* ===== Philosophy ===== */
.quote{margin:clamp(48px,6vw,72px) auto 0!important;max-width:21em;text-align:center;font-size:clamp(26px,3.4vw,44px)!important;line-height:1.2!important;letter-spacing:-.02em!important;font-weight:500!important;text-wrap:pretty;border:0!important;padding:0!important}.quote p{margin:0}.quote em{font-style:normal;color:var(--blau)}
.principles{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px!important;margin-top:clamp(56px,7vw,88px)!important}.principles>.wp-block-column{margin:0!important}.principle-line{margin:0 0 20px}.principle-title{font-size:17px!important;font-weight:500!important;margin:0!important}.principle-copy{margin-top:12px!important;font-size:14.5px!important;line-height:1.6!important;color:var(--tinte-72);text-wrap:pretty}

/* ===== Company ===== */
.history-title{margin-top:48px!important;font-size:clamp(24px,2.6vw,34px)!important;font-weight:500!important;letter-spacing:-.02em!important;line-height:1.2!important;max-width:23em;text-wrap:pretty}.history-copy{margin-top:24px!important;font-size:15.5px!important;line-height:1.65!important;color:var(--tinte-78);max-width:46em;text-wrap:pretty}.company-subspace{margin:0!important}.subhead{padding:0 0 12px!important;margin:0!important}.subhead-line{margin:0}
.team-grid{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:40px!important;margin-top:32px!important}.team-grid>.wp-block-column{margin:0!important;display:flex!important;flex-direction:column;gap:7px}.team-name{font-size:17px!important;font-weight:500!important;letter-spacing:-.01em!important;margin:0!important}.team-role{margin:0!important}
.headcount-grid{margin-top:8px!important}.headcount-pair{display:grid!important;grid-template-columns:1fr 1fr;column-gap:64px!important;margin:0!important}.headcount-pair>.wp-block-column{margin:0!important}.headcount-item{display:grid!important;grid-template-columns:1fr auto;gap:16px;padding:13px 0 12px;margin:0!important;align-items:baseline!important}.headcount-item>.wp-block-column{margin:0!important}.headcount-label{font-size:14.5px!important;margin:0!important}.headcount-count{font-family:var(--mono);font-size:13px!important;color:var(--tinte-66);text-align:right;margin:0!important}.headcount-line{margin:0}.note{margin-top:28px!important;font-size:14px!important;line-height:1.6!important;color:var(--tinte-66)}.note a{color:inherit}.projects-space{margin:0!important}.projects-grid{display:flex!important;flex-wrap:wrap;align-items:baseline;column-gap:56px!important;row-gap:8px!important;padding-top:36px;margin:0!important}.projects-grid>.wp-block-column{flex:0 0 auto!important;margin:0!important}.project-name{font-size:clamp(24px,3.2vw,42px)!important;font-weight:500!important;letter-spacing:-.02em!important;margin:0!important}

/* ===== Contact ===== */
.contact-bottom-space{margin:0!important}.contact-grid{display:grid!important;grid-template-columns:1fr 1fr;gap:56px!important;margin-top:48px!important}.contact-grid>.wp-block-column{margin:0!important}.contact-title{font-size:clamp(24px,2.6vw,34px)!important;font-weight:500!important;letter-spacing:-.02em!important;line-height:1.2!important;text-wrap:pretty;margin:0!important}.contact-intro{margin-top:20px!important;font-size:15.5px!important;line-height:1.65!important;color:var(--tinte-78);max-width:30em;text-wrap:pretty}.contact-cols{margin-top:44px!important;display:grid!important;grid-template-columns:1fr 1fr;gap:32px!important;font-size:15px;line-height:1.7}.contact-cols>.wp-block-column{margin:0!important}.contact-label{margin:0 0 10px!important;font-weight:400!important}.contact-value{margin:0!important;font-size:15px!important;line-height:1.7!important}.contact-value a{color:var(--tinte);text-decoration:none}.contact-value a:hover{color:var(--blau)}.service-phone-label{color:var(--blau);margin:44px 0 10px!important}.service-phone-number{margin:0!important}.service-phone-number a{display:inline-block;text-decoration:none;color:var(--tinte);font-size:clamp(28px,3vw,38px)!important;font-weight:500;letter-spacing:-.02em}.service-phone-number a:hover{color:var(--blau)}.service-phone-note{margin-top:8px!important;font-size:14px!important;line-height:1.6!important;color:var(--tinte-66)}
.contact-form{display:flex!important;flex-direction:column;gap:20px}.contact-form .form-field{display:flex;flex-direction:column;gap:8px;margin:0}.contact-form .form-field-label{font-weight:500}.contact-form .req{color:var(--blau)}.contact-form input,.contact-form textarea{border:none;border-radius:0;box-sizing:border-box;width:100%;background:var(--feld);color:var(--tinte);font-family:var(--sans);font-size:16px;padding:15px 16px;outline:none}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{box-shadow:inset 0 0 0 1.5px var(--blau);background:rgba(23,23,15,.02)}.contact-form [aria-invalid="true"]{box-shadow:inset 0 0 0 1.5px var(--blau)}.field-error{font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;color:var(--blau);line-height:1.5}.field-error:empty{display:none}.form-submit{align-self:flex-end;margin-top:8px;min-height:46px;background:var(--tinte);color:var(--papier);border:none;border-radius:0;cursor:pointer;font-family:var(--sans);font-size:14px;font-weight:500;letter-spacing:.01em;padding:13px 24px}.form-submit:hover{background:var(--blau)}.form-success{background:var(--feld);padding:48px 40px;height:100%;box-sizing:border-box;display:flex;flex-direction:column;gap:12px;justify-content:center}.form-success[hidden]{display:none}.form-success-label{color:var(--blau)}.form-success-message{font-size:24px;font-weight:500;letter-spacing:-.01em;line-height:1.25;text-wrap:pretty}.form-success-fallback{margin:0!important;font-size:14px!important;line-height:1.6!important;color:var(--tinte-66)}.form-success-fallback a{color:inherit}.form-reset{align-self:flex-start;margin-top:16px;background:none;border:1px solid rgba(23,23,15,.3);cursor:pointer;font-family:var(--sans);font-size:14px;padding:10px 18px;color:var(--tinte)}.form-reset:hover{border-color:var(--tinte)}

/* ===== Footer ===== */
.site-footer-brand{margin:clamp(8px,1.5vw,16px) auto 0!important;text-align:center}.site-footer-brand img{height:clamp(56px,8vw,84px)!important;width:auto!important}.farewell{display:flex;align-items:center;justify-content:center;gap:10px;min-height:18px;margin-top:28px!important;font-family:var(--mono);font-size:11.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--tinte-66)}.farewell-anim{display:inline-flex;align-items:center;gap:10px;transition:opacity .45s ease}.farewell-text{font-variant-numeric:tabular-nums}.farewell[data-vis="false"] .farewell-anim{opacity:0}.farewell[data-anim="false"] .dot{display:none}
.footer-contact{display:flex!important;justify-content:center!important;gap:12px 32px!important;flex-wrap:wrap;margin-top:clamp(40px,5vw,56px)!important}.footer-contact>.wp-block-column{flex:0 0 auto!important;margin:0!important}.footer-contact p{font-size:14px!important;margin:0!important}.footer-contact a{color:var(--tinte);text-decoration:none}.footer-contact a:hover{color:var(--blau)}.footer-line{max-width:var(--breite)!important;margin:clamp(40px,5vw,56px) auto 0;width:calc(100% - 48px)!important}.footer-legal{display:grid!important;grid-template-columns:1fr auto;gap:16px 24px!important;max-width:var(--breite);margin:20px auto clamp(40px,6vw,72px)!important;padding:0 var(--rand);box-sizing:content-box}.footer-legal>.wp-block-column{margin:0!important}.footer-legal p{font-size:13px!important;color:var(--tinte-66);line-height:1.6!important;margin:0!important}.footer-legal .legal-right{text-align:right}

/* ===== Responsive exactly following reference ===== */
@media(max-width:900px){.services{grid-template-columns:1fr!important}.services>.service-col,.services>.service-col.service-col--middle,.services>.service-col.service-col--last{padding:32px 0 36px!important}.service-divider-col{display:none!important}.service-mobile-line{display:block;margin:0 0 32px}.contact-grid{grid-template-columns:1fr!important}.hero-grid{grid-template-columns:1fr!important}.hero-cta{justify-content:flex-start!important}.modules{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:700px){html{scroll-padding-top:var(--header-h)}.nav-spacer{height:var(--header-h)!important}.site-header{height:72px;min-height:0;width:calc(100% - 40px);max-width:none!important;padding:0 20px!important;box-sizing:content-box;display:flex!important;flex-wrap:nowrap;align-items:center;align-content:center;gap:12px}.site-header .header-logo{flex:1 1 auto!important;min-width:0}.site-header .wp-block-site-logo img{height:34px}.site-header .header-nav{order:initial;width:auto;overflow:visible;justify-content:flex-end;padding:0;max-height:none;opacity:1}.site-header .wp-block-navigation{width:auto}.site-header .header-cta{flex:0 0 auto!important}.site-header .header-cta .hiltag-plain-btn{padding:9px 12px 8px;font-size:10px}.site-header.is-compact .header-nav{max-height:none;opacity:1;padding:0;overflow:visible}.site-header.is-compact .wp-block-site-logo img{height:30px}.header-line,.site-header.is-compact + .header-line{top:72px}.site-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}.site-header .wp-block-navigation__responsive-container-open{display:flex!important;align-items:center;justify-content:center;width:40px;height:40px;padding:0!important;border:0;background:transparent;color:var(--tinte)}.site-header .wp-block-navigation__responsive-container-open:hover{color:var(--blau)}.site-header .wp-block-navigation__responsive-container-open svg{width:26px;height:26px}.site-header .wp-block-navigation__responsive-container.is-menu-open{z-index:100;padding:20px!important;background:var(--papier)!important;color:var(--tinte)!important}.site-header .wp-block-navigation__responsive-container-close{top:16px;right:18px;width:42px;height:42px;display:flex;align-items:center;justify-content:center;color:var(--tinte)}.site-header .wp-block-navigation__responsive-container-close:hover{color:var(--blau)}.site-header .wp-block-navigation__responsive-container-close svg{width:27px;height:27px}.site-header .wp-block-navigation__responsive-container-content{padding-top:72px!important;align-items:flex-start!important;justify-content:flex-start!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{width:100%;display:flex!important;flex-direction:column!important;align-items:stretch!important;gap:0!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;border-top:1px solid var(--linie)}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{border-bottom:1px solid var(--linie)}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block;width:100%;box-sizing:border-box;padding:18px 0!important;font-family:var(--sans);font-size:clamp(25px,8vw,38px);font-weight:500;line-height:1.05;letter-spacing:-.025em;text-transform:none!important;color:var(--tinte)!important}.site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover{color:var(--blau)!important}.wp-block-post-content{padding-left:20px;padding-right:20px}.intro-grid,.system-row,.contact-cols{grid-template-columns:1fr!important;gap:14px!important}.contact-grid{gap:44px!important}.service-band{grid-template-columns:1fr!important;justify-items:start}.stats{grid-template-columns:1fr!important;gap:0!important}.stats>.wp-block-column+.wp-block-column{margin-top:24px!important}.principles{grid-template-columns:1fr!important}.modules{grid-template-columns:1fr!important}.team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.headcount-pair{grid-template-columns:1fr!important;column-gap:0!important}.hero-cta{flex-wrap:nowrap!important;width:100%}.hero-cta>*{flex:1 1 0!important}.hero-cta .logo-btn,.hero-cta .hiltag-plain-btn{width:100%;text-align:center;padding-left:10px!important;padding-right:10px!important;font-size:14px;white-space:nowrap}.footer-contact>.wp-block-column:first-child{flex-basis:100%!important;text-align:center}.footer-legal{grid-template-columns:1fr!important;margin-left:20px!important;margin-right:20px!important;padding:0!important}.footer-legal .legal-right{text-align:left}.footer-line{width:calc(100% - 40px)!important}.kicker[data-done="true"] .kicker-anim{opacity:0}.kicker[data-done="true"]+.kicker-line{border-top-color:transparent!important}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.001s!important;animation-delay:0s!important;transition:none!important}}
.hero-cta>.wp-block-column{flex:0 0 auto!important;margin:0!important}.hero-cta>.wp-block-column:last-child .wp-block-buttons{margin:0!important}.hero-cta .btn-ghost{margin:0!important}
@media(max-width:700px){.hero-cta>.wp-block-column{flex:1 1 0!important}.hero-cta>.wp-block-column:first-child{display:flex}.hero-cta>.wp-block-column:first-child .logo-btn{width:100%}.hero-cta>.wp-block-column:last-child .hiltag-plain-btn{width:100%}}
.wp-block-separator.hiltag-line.is-style-hiltag-1px{height:1px;min-height:1px}.wp-block-separator.hiltag-line.is-style-hiltag-2px{height:2px;min-height:2px}.wp-block-separator.hiltag-line.is-style-hiltag-3px{height:3px;min-height:3px}


.hiltag-mobile-menu-toggle{display:none}

/* ===== v6.3 – compact mobile dropdown navigation ===== */
@media(max-width:800px){
  html.has-modal-open{overflow:auto!important}
  .site-header{height:64px;width:calc(100% - 32px);padding:0 16px!important;gap:9px}
  .site-header .header-logo{flex:1 1 auto!important;min-width:0}
  .site-header .wp-block-site-logo img{height:30px!important;max-width:132px;object-fit:contain}
  .site-header .header-nav{flex:0 0 auto!important;width:auto!important;overflow:visible!important;padding:0!important}
  .site-header .wp-block-navigation{position:relative;width:auto!important;min-width:40px;white-space:normal!important}
  .site-header .header-cta{flex:0 0 auto!important}
  .site-header .header-cta .hiltag-plain-btn{padding:8px 10px 7px!important;font-size:9px!important}
  .header-line,.site-header.is-compact + .header-line{top:64px!important}
  .nav-spacer{height:65px!important}

  /* Always show a hamburger on mobile when the native Navigation overlay exists. */
  .site-header .wp-block-navigation__responsive-container-open,
  .site-header .hiltag-mobile-menu-toggle{display:flex!important;align-items:center;justify-content:center;width:38px;height:38px;padding:0!important;margin:0!important;border:0!important;background:transparent!important;color:var(--tinte)!important;cursor:pointer}
  .site-header .wp-block-navigation__responsive-container-open svg{width:23px;height:23px}

  /* Hide the normal horizontal menu. This prevents any sideways scrolling. */
  .site-header .wp-block-navigation > .wp-block-navigation__container{display:none!important}

  /* WordPress native menu: turn the fullscreen overlay into a small dropdown. */
  .site-header .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
  .site-header .wp-block-navigation__responsive-container.is-menu-open{
    position:fixed!important;inset:auto 12px auto auto!important;top:64px!important;
    width:min(250px,calc(100vw - 24px))!important;height:auto!important;min-height:0!important;
    max-height:calc(100dvh - 76px)!important;overflow-y:auto!important;overflow-x:hidden!important;
    z-index:1000!important;box-sizing:border-box!important;padding:42px 12px 10px!important;
    background:var(--papier)!important;color:var(--tinte)!important;
    border:1px solid var(--linie-box)!important;box-shadow:0 12px 32px rgba(23,23,15,.13)!important
  }
  .site-header .wp-block-navigation__responsive-dialog{margin:0!important;width:100%!important}
  .site-header .wp-block-navigation__responsive-container-close{position:absolute!important;top:5px!important;right:6px!important;width:32px!important;height:32px!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--tinte)!important}
  .site-header .wp-block-navigation__responsive-container-close svg{width:20px!important;height:20px!important}
  .site-header .wp-block-navigation__responsive-container-content{padding:0!important;display:block!important;width:100%!important}
  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{display:flex!important;width:100%!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;margin:0!important;padding:0!important}
  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%!important;margin:0!important;border-top:1px solid var(--linie)!important}
  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{border-bottom:1px solid var(--linie)!important}
  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{display:block!important;width:100%!important;box-sizing:border-box!important;padding:11px 3px!important;font-family:var(--mono)!important;font-size:12px!important;font-weight:500!important;line-height:1.25!important;letter-spacing:.07em!important;text-transform:uppercase!important;white-space:normal!important;color:var(--tinte)!important}

  /* Fallback for older saved headers that still render a direct horizontal list. */
  .site-header .wp-block-navigation.hiltag-fallback-open > .wp-block-navigation__container{
    display:flex!important;position:fixed!important;top:64px!important;right:12px!important;left:auto!important;
    width:min(250px,calc(100vw - 24px))!important;max-height:calc(100dvh - 76px)!important;overflow-y:auto!important;overflow-x:hidden!important;
    box-sizing:border-box!important;flex-direction:column!important;align-items:stretch!important;gap:0!important;
    margin:0!important;padding:8px 12px!important;background:var(--papier)!important;border:1px solid var(--linie-box)!important;box-shadow:0 12px 32px rgba(23,23,15,.13)!important;z-index:1000!important
  }
  .site-header .wp-block-navigation.hiltag-fallback-open > .wp-block-navigation__container .wp-block-navigation-item{width:100%!important;border-top:1px solid var(--linie)!important}
  .site-header .wp-block-navigation.hiltag-fallback-open > .wp-block-navigation__container .wp-block-navigation-item:last-child{border-bottom:1px solid var(--linie)!important}
  .site-header .wp-block-navigation.hiltag-fallback-open > .wp-block-navigation__container .wp-block-navigation-item__content{display:block!important;width:100%!important;padding:11px 3px!important;box-sizing:border-box!important;font-family:var(--mono)!important;font-size:12px!important;line-height:1.25!important;letter-spacing:.07em!important;text-transform:uppercase!important;white-space:normal!important}
}
@media(max-width:390px){
  .site-header{width:calc(100% - 24px);padding-left:12px!important;padding-right:12px!important;gap:6px}
  .site-header .wp-block-site-logo img{height:27px!important;max-width:116px}
  .site-header .header-cta .hiltag-plain-btn{padding:7px 8px 6px!important;font-size:8.5px!important}
}


/* ===== v6.4 – mobile footer: no clipped address / safe bottom spacing ===== */
@media(max-width:800px){
  .footer-contact{
    width:calc(100% - 32px)!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    box-sizing:border-box!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    flex-wrap:nowrap!important;
    gap:10px!important;
  }
  .footer-contact>.wp-block-column,
  .footer-contact>.wp-block-column:first-child{
    flex:0 0 auto!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    text-align:center!important;
  }
  .footer-contact p{
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
    padding:0 2px!important;
    box-sizing:border-box!important;
    font-size:13px!important;
    line-height:1.55!important;
    white-space:normal!important;
    overflow:visible!important;
  }
  .footer-contact a{
    display:inline!important;
    max-width:100%!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
    word-break:normal!important;
  }
  .footer-line{margin-top:34px!important}
  .footer-legal{
    width:auto!important;
    max-width:none!important;
    margin:18px 16px 0!important;
    padding:0 0 calc(48px + env(safe-area-inset-bottom,0px))!important;
    box-sizing:border-box!important;
  }
  .footer-legal p{overflow-wrap:anywhere!important}
}
@media(max-width:390px){
  .footer-contact{width:calc(100% - 24px)!important}
  .footer-legal{margin-left:12px!important;margin-right:12px!important}
}


/* ===== v6.5 – legal pages + footer legal navigation ===== */
.footer-legal .legal-right a{color:var(--tinte-66);text-decoration:none}
.footer-legal .legal-right a:hover{color:var(--blau)}
.footer-legal .legal-sep{display:inline-block;padding:0 4px;color:var(--tinte-66)}
.legal-page{max-width:860px!important;margin:0 auto!important;padding:clamp(54px,8vw,96px) 0 clamp(76px,10vw,128px)!important}
.legal-page .legal-kicker{margin:0 0 18px!important;font-family:var(--mono);font-size:11px!important;font-weight:500!important;letter-spacing:.08em!important;text-transform:uppercase;color:var(--tinte-66)}
.legal-page .legal-title{margin:0!important;font-size:clamp(38px,6vw,70px)!important;line-height:1!important;letter-spacing:-.035em!important;font-weight:500!important}
.legal-page .legal-title-line{margin:28px 0 clamp(38px,6vw,60px)!important}
.legal-page .legal-intro{font-size:19px!important;line-height:1.6!important;color:var(--tinte-82);margin-bottom:50px!important}
.legal-page h2{margin:46px 0 14px!important;font-size:20px!important;line-height:1.25!important;font-weight:500!important;letter-spacing:-.01em!important}
.legal-page p,.legal-page li{font-size:16px!important;line-height:1.7!important;color:var(--tinte-82)}
.legal-page p{margin:0 0 18px!important}
.legal-page ul{margin:0 0 22px!important;padding-left:22px!important}
.legal-page li+li{margin-top:7px}
.legal-page a{text-decoration:underline;text-underline-offset:3px}
.legal-page .legal-updated{margin-top:56px!important;padding-top:18px!important;border-top:1px solid var(--linie)!important;font-family:var(--mono);font-size:11px!important;letter-spacing:.06em!important;text-transform:uppercase;color:var(--tinte-66)}
@media(max-width:800px){
  .legal-page{padding-top:42px!important;padding-bottom:82px!important}
  .legal-page .legal-title{font-size:clamp(34px,11vw,48px)!important;overflow-wrap:anywhere}
  .legal-page .legal-title-line{margin-top:22px!important;margin-bottom:34px!important}
  .legal-page .legal-intro{font-size:17px!important;margin-bottom:36px!important}
  .legal-page h2{margin-top:36px!important;font-size:18px!important}
  .legal-page p,.legal-page li{font-size:15px!important;line-height:1.65!important}
  .footer-legal .legal-right{display:flex;flex-wrap:wrap;gap:5px 0}
}


/* ===== v6.7 - responsive typography, header alignment, KBOB, employee portraits ===== */
:root{--header-h:86px}
@media(min-width:801px){
  .site-header{height:84px!important;padding-top:2px!important;align-items:center!important;overflow:visible!important}
  .site-header .header-nav,.site-header .header-cta{align-self:center!important;transform:translateY(5px)}
  .site-header .wp-block-navigation{line-height:1.45!important;overflow:visible!important}
  .site-header .wp-block-navigation-item__content{padding-top:3px!important;padding-bottom:3px!important}
  .site-header .header-cta .hiltag-plain-btn{display:inline-flex!important;align-items:center!important;justify-content:center!important;margin:0!important}
  .header-line{top:86px!important}
  .nav-spacer{height:87px!important}
}

/* Headings scale continuously and never run outside the viewport. */
.wp-block-post-content .wp-block-heading{max-width:100%;overflow-wrap:break-word;text-wrap:balance}
.hero-title{font-size:clamp(38px,8vw,104px)!important;line-height:.98!important}
.intro-title{font-size:clamp(28px,5vw,58px)!important;line-height:1.04!important}
.section-head h2{font-size:clamp(24px,3.4vw,42px)!important;line-height:1.08!important;letter-spacing:-.02em!important}
.service-title{font-size:clamp(22px,2.4vw,31px)!important;line-height:1.15!important}
.principle-title,.history-title,.contact-title{font-size:clamp(23px,2.8vw,36px)!important;line-height:1.16!important}
.service-band-copy{font-size:clamp(22px,3vw,36px)!important}

/* Wartungsverträge / KBOB */
.maintenance-kbob{display:grid!important;grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:clamp(24px,4vw,56px);align-items:center;margin-top:clamp(28px,4vw,48px)!important;margin-bottom:clamp(28px,4vw,48px)!important}
.maintenance-graphic-slot{position:relative;min-height:clamp(220px,30vw,390px);background:var(--feld);border:1px solid var(--linie-box);display:flex!important;align-items:center;justify-content:center;overflow:hidden}
.maintenance-graphic-slot .wp-block-image{position:absolute;inset:0;margin:0!important;width:100%;height:100%}
.maintenance-graphic-slot .wp-block-image img{width:100%!important;height:100%!important;object-fit:contain!important;display:block}
.maintenance-graphic-hint{font-family:var(--mono);font-size:11px!important;letter-spacing:.07em;text-transform:uppercase;color:var(--tinte-66);padding:24px;text-align:center;margin:0!important}
.maintenance-graphic-slot:has(img) .maintenance-graphic-hint{display:none}
.maintenance-kbob-copy{font-size:clamp(23px,3.2vw,40px)!important;line-height:1.15!important;font-weight:500;letter-spacing:-.025em;margin:0!important;text-wrap:balance}

/* 26 editable employee portraits. Second image appears on hover/focus. */
.employee-intro{max-width:46em;margin:28px 0 36px!important;font-size:15.5px!important;line-height:1.65!important;color:var(--tinte-78)}
.employee-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(28px,4vw,54px) clamp(18px,2.5vw,32px)!important;margin-top:0!important}
.employee-card{min-width:0;margin:0!important}
.employee-portrait{position:relative;aspect-ratio:4/5;overflow:hidden;background:var(--feld);border:1px solid var(--linie-box);margin:0 0 15px!important;isolation:isolate}
.employee-portrait::before{content:'Foto frontal + Drehung';position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:20px;text-align:center;font-family:var(--mono);font-size:10px;line-height:1.5;letter-spacing:.07em;text-transform:uppercase;color:var(--tinte-66);z-index:0}
.employee-portrait:has(img)::before{display:none}
.employee-portrait .wp-block-image{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;margin:0!important;z-index:1}
.employee-portrait .wp-block-image img{display:block;width:100%!important;height:100%!important;object-fit:cover!important}
.employee-portrait .employee-photo-front{opacity:1;transition:opacity .4s ease,transform .5s ease;transform:scale(1)}
.employee-portrait .employee-photo-turn{opacity:0;transition:opacity .4s ease,transform .5s ease;transform:scale(1.025)}
.employee-card:hover .employee-photo-turn,.employee-card:focus-within .employee-photo-turn{opacity:1;transform:scale(1)}
.employee-card:hover .employee-photo-front,.employee-card:focus-within .employee-photo-front{opacity:0;transform:scale(1.012)}
.employee-name{font-size:clamp(17px,1.6vw,21px)!important;font-weight:500!important;line-height:1.25!important;margin:0!important}
.employee-role{margin:7px 0 0!important;color:var(--tinte-66)}

.contact-form.is-sending .form-submit{opacity:.6;cursor:wait}
.contact-form .form-server-error{font-family:var(--mono);font-size:11px;line-height:1.5;letter-spacing:.04em;color:var(--blau);margin:0!important}

@media(max-width:1000px){
  .employee-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .maintenance-kbob{grid-template-columns:1fr!important}
  .maintenance-kbob-copy{max-width:22em}
}
@media(max-width:800px){
  :root{--header-h:65px}
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:32px 16px!important}
  .section-head h2{font-size:clamp(25px,7vw,38px)!important}
  .intro-title{font-size:clamp(28px,7.5vw,44px)!important}
}
@media(max-width:480px){
  .hero-title{font-size:clamp(36px,12vw,56px)!important}
  .employee-name{font-size:16px!important}
  .employee-role{font-size:9.5px!important}
  .maintenance-graphic-slot{min-height:210px}
}
/* Hide the maintenance graphic placeholder on the live site until an image is inserted. */
.maintenance-graphic-slot:not(:has(img)){display:none!important}
.maintenance-kbob:not(:has(img)){grid-template-columns:1fr!important}
.editor-styles-wrapper .maintenance-graphic-slot{display:flex!important}


/* ===== v6.8 - robust saved-content fixes ===== */
/* Old department headcounts must never be shown, even on a customized page
   whose database markup could not be migrated automatically. */
.headcount-count{display:none!important}
.headcount-item>.wp-block-column:has(.headcount-count){display:none!important}
.headcount-item>.wp-block-column:not(:has(.headcount-count)){flex-basis:100%!important;width:100%!important}

.legal-back{margin:0 0 30px!important;font-family:var(--mono);font-size:11px!important;letter-spacing:.06em!important;text-transform:uppercase}
.legal-back a{text-decoration:none!important}
.legal-back a:hover{text-decoration:underline!important}

.employee-page{padding-top:clamp(48px,7vw,86px)!important;padding-bottom:clamp(76px,10vw,128px)!important}
.employee-page-kicker{margin:0 0 16px!important;color:var(--tinte-66)}
.employee-page-title{font-size:clamp(38px,7vw,82px)!important;line-height:1!important;letter-spacing:-.035em!important;margin:0!important}
.employee-page-line{margin:28px 0 10px!important}
@media(max-width:800px){.employee-page{padding-top:38px!important}.legal-back{margin-bottom:22px!important}}


/* ===== v6.8.5 – requested visual fixes ===== */
/* Mobile: keep the hero title proportional and substantially smaller. */
@media (max-width:700px){
  .hero-title{
    font-size:clamp(30px,9.5vw,44px)!important;
    line-height:1.02!important;
    letter-spacing:-.028em!important;
    overflow-wrap:normal!important;
  }
}

/* Logo galleries: never force small raster logos larger than their source. */
.wp-block-gallery.has-nested-images figure.wp-block-image{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.wp-block-gallery.has-nested-images figure.wp-block-image img{
  width:auto!important;
  height:auto!important;
  max-width:100%!important;
  max-height:140px!important;
  object-fit:contain!important;
  image-rendering:auto!important;
}

/* Remove the animated/flying footer system-status banner completely. */
.farewell{display:none!important;}

/* ===== v6.9 – team portraits, spacing, numbering and mobile contact polish ===== */
/* Keep all section numbers aligned on the same (right) side on every viewport. */
.section-head{grid-template-columns:minmax(0,1fr) auto!important;column-gap:24px!important}
.section-head>.wp-block-column:last-child{justify-self:end!important;text-align:right!important}
.section-index{min-width:2.6em;text-align:right!important;white-space:nowrap!important}

/* Anonymous HILTAG placeholder portraits. A real WordPress image inserted into
   the portrait group sits above this background and therefore replaces it. */
.employee-portrait{background-color:#f7faff!important;background-repeat:no-repeat!important;background-position:center!important;background-size:cover!important}
.employee-portrait::before{display:none!important}
.employee-avatar-01{background-image:url('assets/images/team/avatar-01.jpg')!important}
.employee-avatar-02{background-image:url('assets/images/team/avatar-02.jpg')!important}
.employee-avatar-03{background-image:url('assets/images/team/avatar-03.jpg')!important}
.employee-avatar-04{background-image:url('assets/images/team/avatar-04.jpg')!important}
.employee-avatar-05{background-image:url('assets/images/team/avatar-05.jpg')!important}
.employee-avatar-06{background-image:url('assets/images/team/avatar-06.jpg')!important}
.employee-avatar-07{background-image:url('assets/images/team/avatar-07.jpg')!important}
.employee-avatar-08{background-image:url('assets/images/team/avatar-08.jpg')!important}
.employee-avatar-09{background-image:url('assets/images/team/avatar-09.jpg')!important}
.employee-avatar-10{background-image:url('assets/images/team/avatar-10.jpg')!important}
.employee-avatar-11{background-image:url('assets/images/team/avatar-11.jpg')!important}
.employee-avatar-12{background-image:url('assets/images/team/avatar-12.jpg')!important}
.employee-grid{align-items:start!important}
.employee-card{display:flex!important;flex-direction:column!important;height:100%!important}
.employee-name{min-height:2.5em}
.employee-role{line-height:1.45!important;min-height:2.9em}

/* Keep the final contact section compact, readable and touch-friendly. */
.contact-form{width:100%!important;max-width:100%!important}
.contact-form input,.contact-form textarea{min-height:50px!important}
.contact-form textarea{min-height:150px!important}
.contact-form .form-submit{min-height:50px!important}

@media(max-width:700px){
  .section-head{display:grid!important;grid-template-columns:minmax(0,1fr) auto!important;align-items:end!important;column-gap:16px!important}
  .section-head>.wp-block-column{width:auto!important;min-width:0!important}
  .section-head>.wp-block-column:last-child{justify-self:end!important}
  .section-index{font-size:10.5px!important;margin:0 0 3px!important}
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:30px 14px!important}
  .employee-portrait{margin-bottom:12px!important}
  .employee-name{font-size:15px!important;line-height:1.25!important;min-height:auto!important}
  .employee-role{font-size:9.2px!important;line-height:1.45!important;min-height:auto!important;margin-top:6px!important}
  .contact-grid{margin-top:34px!important;gap:36px!important}
  .contact-cols{margin-top:30px!important;gap:22px!important}
  .service-phone-label{margin-top:32px!important}
  .contact-form{gap:16px!important}
  .contact-form input,.contact-form textarea{font-size:16px!important;padding:14px!important}
  .contact-form textarea{min-height:140px!important}
  .form-submit{align-self:stretch!important;width:100%!important;text-align:center!important}
  .form-success{padding:32px 22px!important}
}

@media(max-width:390px){
  .employee-grid{grid-template-columns:1fr!important;gap:34px!important}
  .employee-portrait{max-width:320px;width:100%;margin-left:auto!important;margin-right:auto!important}
}


/* ===== v6.9.1 – welcome alignment, coming-soon portraits, banner cleanup and contact repair ===== */
/* Ensure the intro starts flush left on all breakpoints. */
.intro-grid,.intro-grid>.wp-block-column,.intro-grid .mono-label,.intro-title,.intro-copy{justify-self:start!important;text-align:left!important;margin-left:0!important}
.intro-grid .wp-block-column:first-child,.intro-grid .wp-block-column:last-child{display:block!important}

/* Keep the maintenance/KBOB visual area visually on the same page background. */
.maintenance-kbob,.maintenance-graphic-slot,.maintenance-graphic-slot .wp-block-image,.maintenance-graphic-slot .maintenance-graphic-hint{background:var(--papier)!important}
.maintenance-graphic-slot{border:0!important;padding:0!important}
.maintenance-graphic{display:block!important;width:100%!important;height:auto!important;background:transparent!important}

/* Hide legacy floating/status/weather/temperature banners entirely. */
.farewell,.system-status,.system-status-banner,.status-banner,.footer-status,.floating-status,.weather-banner,.weather-widget,.temperature-banner,[class*="weather-banner"],[class*="temperature-banner"],[class*="system-status"],[data-weather],[data-temperature]{display:none!important}
body > .farewell,body > .system-status,body > .system-status-banner,body > .status-banner,body > .footer-status,body > .floating-status,body > .weather-banner,body > .weather-widget,body > .temperature-banner{display:none!important}

/* All 26 placeholder portraits use the branded Coming Soon graphic style. */
.employee-avatar-13{background-image:url('assets/images/team/avatar-13.jpg')!important}
.employee-avatar-14{background-image:url('assets/images/team/avatar-14.jpg')!important}
.employee-avatar-15{background-image:url('assets/images/team/avatar-15.jpg')!important}
.employee-avatar-16{background-image:url('assets/images/team/avatar-16.jpg')!important}
.employee-avatar-17{background-image:url('assets/images/team/avatar-17.jpg')!important}
.employee-avatar-18{background-image:url('assets/images/team/avatar-18.jpg')!important}
.employee-avatar-19{background-image:url('assets/images/team/avatar-19.jpg')!important}
.employee-avatar-20{background-image:url('assets/images/team/avatar-20.jpg')!important}
.employee-avatar-21{background-image:url('assets/images/team/avatar-21.jpg')!important}
.employee-avatar-22{background-image:url('assets/images/team/avatar-22.jpg')!important}
.employee-avatar-23{background-image:url('assets/images/team/avatar-23.jpg')!important}
.employee-avatar-24{background-image:url('assets/images/team/avatar-24.jpg')!important}
.employee-avatar-25{background-image:url('assets/images/team/avatar-25.jpg')!important}
.employee-avatar-26{background-image:url('assets/images/team/avatar-26.jpg')!important}

/* Make sure the contact form at the bottom stays clean, full-width and mobile-safe. */
.contact-grid>.wp-block-column:last-child{min-width:0!important}
.contact-form,.form-success{width:100%!important;max-width:100%!important}
.contact-form{padding:0!important;margin:0!important}
.contact-form .form-field,.contact-form .form-submit,.contact-form .form-server-error{width:100%!important;box-sizing:border-box!important}
.contact-form input,.contact-form textarea{display:block!important;width:100%!important;border:1px solid rgba(18,28,48,.12)!important}
.form-success{min-height:100%!important}

@media(max-width:700px){
  .intro-grid{gap:14px!important}
  .maintenance-kbob{gap:18px!important}
  .contact-grid>.wp-block-column:last-child{width:100%!important}
}


/* ===== v6.9.2 – final layout and footer cleanup ===== */
.intro-grid > .wp-block-column:first-child{align-self:start!important;justify-self:start!important;text-align:left!important}
.intro-grid > .wp-block-column:first-child .mono-label{display:block!important;text-align:left!important}
.maintenance-kbob .wp-block-image,.maintenance-kbob img,.maintenance-kbob figure{background:transparent!important;box-shadow:none!important;border:0!important}
.footer-status,.farewell,.weather-banner,.weather-widget,.temperature-banner,.system-status,.system-status-banner{display:none!important}
.contact-grid,.contact-grid>.wp-block-column,.contact-grid .contact-form,.contact-grid .form-success{overflow:visible!important}


/* ===== v6.9.3 – hard visual overrides ===== */
/* Animated "Alle Anlagen OK" / temperature ticker: gone, including its line. */
.kicker,.kicker-line,.wp-block-hiltag-kicker{display:none!important;height:0!important;min-height:0!important;margin:0!important;padding:0!important;overflow:hidden!important}

/* Maintenance module graphic: white pixels blend into the website paper colour. */
.maintenance-kbob,.maintenance-graphic-slot,.maintenance-graphic-slot figure,.maintenance-graphic-slot .wp-block-image{background:transparent!important}
.maintenance-kbob img,.maintenance-graphic-slot img,.maintenance-graphic{mix-blend-mode:multiply!important;background:transparent!important;display:block!important;width:100%!important;height:auto!important}

/* Intro label must always stay on the left. */
.intro-grid,.intro-grid>.wp-block-column:first-child,.intro-grid>.wp-block-column:first-child>*{text-align:left!important;justify-content:flex-start!important;justify-self:start!important;align-items:flex-start!important}

/* All section/theme numbers stay on the right side, desktop and mobile. */
.section-head{display:grid!important;grid-template-columns:minmax(0,1fr) max-content!important;width:100%!important;align-items:end!important}
.section-head>.wp-block-column:first-child{grid-column:1!important;min-width:0!important}
.section-head>.wp-block-column:last-child{grid-column:2!important;justify-self:end!important;text-align:right!important;margin-left:auto!important}
.section-index{display:block!important;text-align:right!important;white-space:nowrap!important;margin-left:auto!important}

/* Employee cards are stable, names/functions visible below each image. */
.employee-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:start!important}
.employee-card{display:flex!important;flex-direction:column!important;min-width:0!important}
.employee-portrait{width:100%!important;aspect-ratio:4/5!important;background-position:center!important;background-size:cover!important}
.employee-name,.employee-role{display:block!important;visibility:visible!important;opacity:1!important;text-align:left!important}
.employee-name{margin-top:0!important}

/* Contact: force one clean, uninterrupted form column. */
.contact-grid{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;align-items:start!important}
.contact-grid>.wp-block-column{min-width:0!important;width:100%!important}
.contact-grid>.wp-block-column:last-child{display:block!important}
.contact-form{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:18px!important}
.contact-form .form-field{display:grid!important;grid-template-columns:1fr!important;width:100%!important;gap:8px!important}
.contact-form input,.contact-form textarea,.contact-form .form-submit{width:100%!important;max-width:none!important;box-sizing:border-box!important}
.contact-form .form-submit{justify-self:stretch!important;align-self:stretch!important;margin:4px 0 0!important}
.form-success{width:100%!important;height:auto!important;min-height:260px!important;box-sizing:border-box!important}

@media(max-width:900px){
  .employee-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .contact-grid{grid-template-columns:1fr!important;gap:40px!important}
}
@media(max-width:700px){
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:30px 14px!important}
  .section-head{grid-template-columns:minmax(0,1fr) max-content!important}
}
@media(max-width:440px){
  .employee-grid{grid-template-columns:1fr!important}
}

/* ===== v6.9.4 white-screen hotfix =====
   Never hide WordPress template-part wrappers. The previous generic
   [class*="temp"] selector also matched "template" and could blank the page. */
.wp-block-template-part{display:block!important;visibility:visible!important;opacity:1!important}
.kicker,.kicker-line,.wp-block-hiltag-kicker,.farewell,
.system-status,.system-status-banner,.status-banner,.footer-status,
.floating-status,.weather-banner,.weather-widget,.temperature-banner{
  display:none!important;
}


/* ===== v6.9.5 – management, half-size portraits, mobile header and no section numbers ===== */
/* Remove all section/theme numbers (01, 02, 03, ...). */
.section-index{display:none!important}
.section-head{grid-template-columns:1fr!important}
.section-head>.wp-block-column:last-child{display:none!important}

/* Management: four clean cards with Coming-Soon portraits. */
.team-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:32px 22px!important;margin-top:32px!important;align-items:start!important}
.team-grid>.wp-block-column,.team-card{display:flex!important;flex-direction:column!important;align-items:flex-start!important;min-width:0!important;gap:7px!important;margin:0!important}
.team-portrait{width:50%!important;max-width:150px!important;min-width:96px!important;aspect-ratio:4/5!important;margin:0 0 10px!important;border:1px solid var(--linie-box)!important;background-color:#f7faff!important;background-position:center!important;background-repeat:no-repeat!important;background-size:cover!important}
.team-avatar-01{background-image:url('assets/images/team/avatar-01.jpg')!important}
.team-avatar-02{background-image:url('assets/images/team/avatar-02.jpg')!important}
.team-avatar-03{background-image:url('assets/images/team/avatar-03.jpg')!important}
.team-avatar-04{background-image:url('assets/images/team/avatar-04.jpg')!important}

/* All employee placeholder portraits are about half their previous size. */
.employee-portrait{width:50%!important;max-width:150px!important;min-width:96px!important;aspect-ratio:4/5!important;align-self:flex-start!important;margin:0 0 12px!important}
.employee-card{align-items:flex-start!important}

/* Mobile: Kontakt button and menu icon share the exact same vertical centre and height. */
@media(max-width:700px){
  .site-header{align-items:center!important}
  .site-header .header-nav,.site-header .header-cta{align-self:center!important;transform:none!important;display:flex!important;align-items:center!important;height:38px!important;margin:0!important;padding:0!important}
  .site-header .wp-block-navigation{display:flex!important;align-items:center!important;height:38px!important;margin:0!important}
  .site-header .wp-block-navigation__responsive-container-open,
  .site-header .hiltag-mobile-menu-toggle,
  .site-header .header-cta .hiltag-plain-btn{height:38px!important;min-height:38px!important;box-sizing:border-box!important;margin:0!important;align-items:center!important;justify-content:center!important}
  .site-header .header-cta .hiltag-plain-btn{display:inline-flex!important;padding:0 11px!important;line-height:1!important}
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 14px!important}
}
@media(max-width:440px){
  .team-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .team-portrait,.employee-portrait{width:50%!important;min-width:82px!important;max-width:120px!important}
}


/* ===== v6.9.6 – mobile employee grid and project layout ===== */
/* Mobile employees must always stay two side-by-side, including narrow phones. */
@media(max-width:700px){
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:28px 12px!important}
  .employee-card{min-width:0!important;width:100%!important}
  .employee-portrait{width:72%!important;min-width:0!important;max-width:120px!important;margin:0 0 10px!important}
  .employee-name{font-size:14px!important;line-height:1.25!important;min-height:auto!important;overflow-wrap:anywhere}
  .employee-role{font-size:9px!important;line-height:1.4!important;min-height:auto!important;overflow-wrap:anywhere}
}
@media(max-width:440px){
  .employee-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:26px 10px!important}
  .employee-portrait{width:76%!important;max-width:108px!important;min-width:0!important}
}

/* Projects: calm, even two-column arrangement instead of a loose wrapping row. */
.projects-grid{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;padding-top:22px!important;margin:0!important;border-top:0!important}
.projects-grid>.wp-block-column{min-width:0!important;margin:0!important;padding:18px 22px 18px 0!important;border-top:1px solid var(--linie)!important}
.projects-grid>.wp-block-column:nth-child(3n+2),.projects-grid>.wp-block-column:nth-child(3n+3){padding-left:22px!important;border-left:1px solid var(--linie)!important}
.project-name{font-size:clamp(20px,2.4vw,32px)!important;line-height:1.16!important;letter-spacing:-.015em!important;overflow-wrap:anywhere}

/* Give the project list a clearly separated end before Contact. */
.projects-grid + .section-spacer{height:clamp(88px,11vw,144px)!important;min-height:88px!important}

@media(max-width:700px){
  .projects-space{height:56px!important}
  .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;padding-top:14px!important}
  .projects-grid>.wp-block-column{padding:16px 12px 16px 0!important;border-left:0!important;border-top:1px solid var(--linie)!important}
  .projects-grid>.wp-block-column:nth-child(even){padding-left:12px!important;padding-right:0!important;border-left:1px solid var(--linie)!important}
  .project-name{font-size:20px!important;line-height:1.2!important}
  .projects-grid + .section-spacer{height:96px!important;min-height:96px!important}
}
@media(max-width:380px){
  .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .project-name{font-size:18px!important}
}


/* ===== v6.9.7 – Referenzen / ausgeführte Projekte ===== */
.projects-space{height:clamp(44px,6vw,72px)!important}
.subhead + .subhead-line{margin-top:12px!important}

.projects-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:14px!important;
  padding-top:22px!important;
  margin:0!important;
}
.projects-grid>.wp-block-column{
  position:relative!important;
  display:flex!important;
  align-items:flex-end!important;
  min-width:0!important;
  min-height:112px!important;
  margin:0!important;
  padding:22px 20px 18px!important;
  border:1px solid var(--linie-box)!important;
  background:rgba(255,255,255,.24)!important;
  box-sizing:border-box!important;
  overflow:hidden!important;
}
.projects-grid>.wp-block-column::before{
  content:''!important;
  position:absolute!important;
  top:16px!important;
  left:20px!important;
  width:44px!important;
  height:14px!important;
  background:url('assets/images/logo.png') left center/contain no-repeat!important;
  opacity:.72!important;
}
.projects-grid>.wp-block-column::after{
  content:''!important;
  position:absolute!important;
  right:16px!important;
  top:17px!important;
  width:18px!important;
  height:2px!important;
  background:var(--blau)!important;
}
.project-name{
  position:relative!important;
  z-index:1!important;
  width:100%!important;
  margin:0!important;
  font-size:clamp(18px,2vw,27px)!important;
  line-height:1.12!important;
  letter-spacing:-.015em!important;
  font-weight:500!important;
  overflow-wrap:normal!important;
  word-break:normal!important;
  hyphens:auto!important;
}
.projects-grid + .section-spacer{
  height:clamp(92px,11vw,136px)!important;
  min-height:92px!important;
}

@media(max-width:900px){
  .projects-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
}

@media(max-width:700px){
  .projects-space{height:48px!important}
  .subhead + .subhead-line{margin-top:10px!important}
  .projects-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:10px!important;
    padding-top:16px!important;
  }
  .projects-grid>.wp-block-column{
    min-height:96px!important;
    padding:18px 12px 14px!important;
  }
  .projects-grid>.wp-block-column::before{
    top:12px!important;
    left:12px!important;
    width:36px!important;
    height:12px!important;
  }
  .projects-grid>.wp-block-column::after{
    top:13px!important;
    right:12px!important;
    width:14px!important;
  }
  .project-name{
    font-size:15.5px!important;
    line-height:1.18!important;
    letter-spacing:-.01em!important;
  }
  .projects-grid>.wp-block-column:last-child:nth-child(odd){
    grid-column:1 / -1!important;
    min-height:88px!important;
  }
  .projects-grid + .section-spacer{
    height:104px!important;
    min-height:104px!important;
  }
}

@media(max-width:380px){
  .projects-grid{gap:8px!important}
  .projects-grid>.wp-block-column{padding:17px 10px 13px!important;min-height:92px!important}
  .projects-grid>.wp-block-column::before{left:10px!important;width:32px!important}
  .projects-grid>.wp-block-column::after{right:10px!important;width:12px!important}
  .project-name{font-size:14px!important}
}


/* ===== v6.9.8 – Projekte als mobiles Laufband ===== */
.projects-grid>.wp-block-column::before,
.projects-grid>.wp-block-column::after{
  content:none!important;
  display:none!important;
}
.projects-grid>.wp-block-column{
  padding-top:18px!important;
}

@media(min-width:701px){
  .projects-grid>.wp-block-column{
    min-height:84px!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
    background:transparent!important;
  }
  .project-name{text-align:center!important}
}

@media(max-width:700px){
  .projects-grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:12px!important;
    width:max-content!important;
    max-width:none!important;
    padding:14px 0 18px!important;
    margin:0!important;
    animation:hiltag-project-marquee 24s linear infinite!important;
    will-change:transform!important;
  }
  .projects-grid>.wp-block-column{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:0!important;
    padding:12px 18px!important;
    border:1px solid var(--linie-box)!important;
    border-radius:999px!important;
    background:rgba(255,255,255,.22)!important;
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
  }
  .project-name{
    width:auto!important;
    white-space:nowrap!important;
    font-size:14.5px!important;
    line-height:1!important;
    text-align:center!important;
  }
  .projects-grid{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%);
  }
  .projects-grid:hover{animation-play-state:paused!important}
  .projects-grid + .section-spacer{
    height:86px!important;
    min-height:86px!important;
  }
  @keyframes hiltag-project-marquee{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }
}

@media(prefers-reduced-motion:reduce){
  .projects-grid{
    animation:none!important;
    transform:none!important;
  }
}


/* ===== v6.9.9 – sauberes mobiles Firmen-Laufband mit Punkten ===== */
@media(max-width:700px){
  .projects-grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    gap:0!important;
    width:max-content!important;
    max-width:none!important;
    padding:18px 0 20px!important;
    margin:0!important;
    animation:hiltag-project-marquee-699 32s linear infinite!important;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 5%,#000 95%,transparent 100%)!important;
  }
  .projects-grid>.wp-block-column{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:0!important;
    padding:0!important;
    margin:0!important;
    border:0!important;
    border-radius:0!important;
    background:transparent!important;
    display:flex!important;
    align-items:center!important;
  }
  .projects-grid>.wp-block-column::before,
  .projects-grid>.wp-block-column::after{
    display:none!important;
    content:none!important;
  }
  .projects-grid>.wp-block-column:not(:last-child)::after{
    content:'·'!important;
    display:inline-block!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0 18px!important;
    background:none!important;
    color:var(--blau)!important;
    font-size:18px!important;
    line-height:1!important;
    opacity:.85!important;
  }
  .project-name{
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1!important;
    font-weight:500!important;
    text-align:left!important;
  }
  .project-clone:last-child::after{
    content:'·'!important;
    display:inline-block!important;
    margin:0 18px!important;
    color:var(--blau)!important;
  }
  @keyframes hiltag-project-marquee-699{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }
}


/* ===== v6.10.0 – complete references marquee ===== */
@media(max-width:700px){
  .projects-grid{
    animation-duration:38s!important;
  }
  .projects-grid>.wp-block-column:not(:last-child)::after,
  .project-clone::after{
    margin-left:20px!important;
    margin-right:20px!important;
  }
  .project-name{
    font-size:15px!important;
    letter-spacing:0!important;
  }
}


/* ===== v6.10.1 – rescue: page visibility + contact form ===== */

/* Hard safety: never allow the page shell/template to disappear. */
html,body,.wp-site-blocks,.wp-block-template-part,.wp-block-post-content,main{
  visibility:visible!important;
  opacity:1!important;
}
.wp-site-blocks,.wp-block-template-part,.wp-block-post-content{
  min-height:1px!important;
}
body{
  display:block!important;
  background:var(--papier,#FAF9F5)!important;
  color:var(--tinte,#17170F)!important;
}

/* Only the known old technical/status elements are hidden. */
.kicker,.kicker-line,.wp-block-hiltag-kicker,
.farewell,.system-status,.system-status-banner,.status-banner,
.footer-status,.floating-status,.weather-banner,.weather-widget,
.temperature-banner{
  display:none!important;
}

/* Contact section: one predictable layout, no inherited Gutenberg breakage. */
.contact-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(36px,6vw,78px)!important;
  align-items:start!important;
  width:100%!important;
  max-width:none!important;
  margin-top:48px!important;
  overflow:visible!important;
}
.contact-grid>.wp-block-column{
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.contact-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:20px!important;
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}
.contact-form .form-field{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
  padding:0!important;
}
.contact-form .form-label-wrap,
.contact-form .form-field-label{
  display:block!important;
  width:100%!important;
}
.contact-form input,
.contact-form textarea{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:0!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid var(--linie-box,#cfcfc8)!important;
  border-radius:0!important;
  background:transparent!important;
  color:var(--tinte,#17170F)!important;
  font:inherit!important;
  line-height:1.4!important;
}
.contact-form textarea{
  min-height:150px!important;
  resize:vertical!important;
}
.contact-form .form-submit{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:auto!important;
  max-width:100%!important;
  min-height:48px!important;
  margin:4px 0 0!important;
  padding:0 22px!important;
  box-sizing:border-box!important;
  border:1px solid var(--blau,#0000CD)!important;
  border-radius:0!important;
  background:var(--blau,#0000CD)!important;
  color:#fff!important;
  cursor:pointer!important;
}
.form-success{
  width:100%!important;
  max-width:100%!important;
  min-height:0!important;
  box-sizing:border-box!important;
  padding:24px!important;
  border:1px solid var(--linie-box,#cfcfc8)!important;
  background:transparent!important;
}
.form-success[hidden]{display:none!important}

@media(max-width:900px){
  .contact-grid{
    grid-template-columns:1fr!important;
    gap:48px!important;
  }
}
@media(max-width:700px){
  .contact-grid{
    margin-top:34px!important;
    gap:42px!important;
  }
  .contact-form{
    gap:17px!important;
  }
  .contact-form input,
  .contact-form textarea{
    font-size:16px!important;
  }
  .contact-form .form-submit{
    width:100%!important;
  }
}


/* ===== v6.10.2 – Portraits ohne eckigen Aussenrahmen ===== */
.employee-portrait,
.team-portrait{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
  background-color:transparent!important;
}
.employee-portrait .wp-block-image,
.employee-portrait img,
.team-portrait .wp-block-image,
.team-portrait img{
  border:0!important;
  outline:0!important;
  box-shadow:none!important;
}


/* ===== v6.10.3 – transparent HILTAG logo + clean mobile references ===== */
/* Use the transparent theme logo instead of a possibly white-backed media-library logo. */
.site-header .wp-block-site-logo,
.site-footer-brand.wp-block-site-logo{
  background:transparent!important;
  overflow:visible!important;
}
.site-header .wp-block-site-logo a,
.site-footer-brand.wp-block-site-logo a{
  display:block!important;
  background-image:url('assets/images/logo.png')!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  background-color:transparent!important;
}
.site-header .wp-block-site-logo a{
  width:148px!important;
  height:48px!important;
}
.site-footer-brand.wp-block-site-logo a{
  width:264px!important;
  height:96px!important;
  margin:0 auto!important;
}
.site-header .wp-block-site-logo img,
.site-footer-brand.wp-block-site-logo img{
  opacity:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:contain!important;
}

/* Mobile header: logo fits fully inside the 72px header without clipping. */
@media(max-width:700px){
  .site-header .wp-block-site-logo a{
    width:122px!important;
    height:44px!important;
  }
  .site-header .header-logo{
    overflow:visible!important;
  }
  .site-footer-brand.wp-block-site-logo a{
    width:210px!important;
    height:78px!important;
  }
}

/* Project/reference marquee: full-width viewport, no cards, clear separators. */
@media(max-width:700px){
  body{overflow-x:hidden!important}
  .projects-grid{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    margin:0!important;
    padding:18px 0 20px!important;
    animation:none!important;
    transform:none!important;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
  }
  .projects-track{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    width:max-content!important;
    gap:0!important;
    animation:hiltag-project-track-6103 36s linear infinite!important;
    will-change:transform!important;
  }
  .projects-track>.wp-block-column{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    display:flex!important;
    align-items:center!important;
  }
  .projects-track>.wp-block-column::before{display:none!important;content:none!important}
  .projects-track>.wp-block-column::after{
    content:'·'!important;
    display:inline-block!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0 22px!important;
    background:none!important;
    color:var(--blau)!important;
    font-size:20px!important;
    line-height:1!important;
    opacity:.9!important;
  }
  .projects-track .project-name{
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    font-weight:500!important;
    text-align:left!important;
  }
  .projects-grid + .section-spacer{
    height:96px!important;
    min-height:96px!important;
  }
  @keyframes hiltag-project-track-6103{
    from{transform:translateX(0)}
    to{transform:translateX(-50%)}
  }
}
@media(prefers-reduced-motion:reduce){
  .projects-track{animation:none!important;transform:none!important}
}


/* ===== v6.10.4 – Desktop/Mobile stability ===== */

/* Desktop keeps a calm, static projects layout. */
@media(min-width:701px){
  .projects-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    max-width:none!important;
    transform:none!important;
    animation:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
    overflow:visible!important;
  }
  .projects-grid>.wp-block-column,
  .projects-grid>.project-clone{
    display:flex!important;
    min-width:0!important;
    width:auto!important;
  }
  .projects-grid>.project-clone{
    display:none!important;
  }
  .project-name{
    white-space:normal!important;
    text-align:center!important;
  }
}

/* Header/footer logos remain fully visible on desktop and mobile. */
.site-header img,
.site-footer img,
.site-logo img,
.wp-block-site-logo img{
  object-fit:contain!important;
  max-width:100%!important;
  height:auto!important;
}
@media(min-width:701px){
  .site-header .wp-block-site-logo img,
  header .wp-block-site-logo img{
    max-height:72px!important;
    width:auto!important;
  }
  .site-footer .wp-block-site-logo img,
  footer .wp-block-site-logo img{
    max-height:86px!important;
    width:auto!important;
  }
}


/* ===== v6.10.5 – projects exactly once ===== */
@media(min-width:701px){
  .projects-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    overflow:visible!important;
    padding-top:22px!important;
  }
  .projects-grid>.wp-block-column{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-height:84px!important;
    padding:18px!important;
    margin:0!important;
    border:1px solid var(--linie-box)!important;
    background:transparent!important;
  }
  .projects-grid>.wp-block-column::before,
  .projects-grid>.wp-block-column::after{
    display:none!important;
    content:none!important;
  }
  .projects-grid .project-name{
    margin:0!important;
    white-space:normal!important;
    text-align:center!important;
    font-size:clamp(18px,2vw,27px)!important;
    line-height:1.15!important;
  }
  .projects-track{display:contents!important}
}

@media(max-width:700px){
  .projects-grid{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    overflow:hidden!important;
    margin:0!important;
    padding:18px 0 20px!important;
    animation:none!important;
    transform:none!important;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
  }
  .projects-track{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    width:max-content!important;
    gap:0!important;
    padding-left:100vw!important;
    animation:hiltag-project-track-6105 34s linear infinite!important;
    will-change:transform!important;
  }
  .projects-track>.wp-block-column{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    display:flex!important;
    align-items:center!important;
  }
  .projects-track>.wp-block-column::before{
    display:none!important;
    content:none!important;
  }
  .projects-track>.wp-block-column::after{
    content:'·'!important;
    display:inline-block!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0 22px!important;
    background:none!important;
    color:var(--blau)!important;
    font-size:20px!important;
    line-height:1!important;
    opacity:.9!important;
  }
  .projects-track>.wp-block-column:last-child::after{
    content:none!important;
    display:none!important;
  }
  .projects-track .project-name{
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    font-weight:500!important;
    text-align:left!important;
  }
  @keyframes hiltag-project-track-6105{
    from{transform:translateX(0)}
    to{transform:translateX(calc(-100% - 100vw))}
  }
}
@media(prefers-reduced-motion:reduce){
  .projects-track{
    animation:none!important;
    transform:none!important;
    padding-left:0!important;
    overflow-x:auto!important;
  }
}


/* ===== v6.10.6 – Projekte bleiben echte, bearbeitbare Gutenberg-Blöcke ===== */
/* Desktop: exakt die im Editor gespeicherten Firmennamen, statisch im Raster. */
@media(min-width:701px){
  .projects-grid{
    display:grid!important;
    grid-template-columns:repeat(3,minmax(0,1fr))!important;
    gap:14px!important;
    width:100%!important;
    max-width:none!important;
    padding-top:22px!important;
    margin:0!important;
    overflow:visible!important;
    animation:none!important;
    transform:none!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  .projects-grid>.wp-block-column{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    min-width:0!important;
    min-height:84px!important;
    margin:0!important;
    padding:18px!important;
    border:1px solid var(--linie-box)!important;
    background:transparent!important;
  }
  .projects-grid>.wp-block-column::before,
  .projects-grid>.wp-block-column::after{
    content:none!important;
    display:none!important;
  }
  .projects-grid .project-name{
    margin:0!important;
    white-space:normal!important;
    text-align:center!important;
    font-size:clamp(18px,2vw,27px)!important;
    line-height:1.15!important;
  }
}

/* Mobile: dieselben editierbaren Blöcke laufen einmal vollständig durchs Bild.
   Keine JS-Kopien, keine versteckten Firmennamen, keine fest codierte Liste. */
@media(max-width:700px){
  .projects-grid{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:0!important;
    width:max-content!important;
    max-width:none!important;
    padding:18px 0 20px 100vw!important;
    margin:0!important;
    animation:hiltag-projects-editable-6106 34s linear infinite!important;
    will-change:transform!important;
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
  }
  .projects-grid>.wp-block-column{
    flex:0 0 auto!important;
    width:auto!important;
    min-width:max-content!important;
    min-height:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    display:flex!important;
    align-items:center!important;
  }
  .projects-grid>.wp-block-column::before{
    content:none!important;
    display:none!important;
  }
  .projects-grid>.wp-block-column::after{
    content:'·'!important;
    display:inline-block!important;
    position:static!important;
    width:auto!important;
    height:auto!important;
    margin:0 22px!important;
    background:none!important;
    color:var(--blau)!important;
    font-size:20px!important;
    line-height:1!important;
    opacity:.9!important;
  }
  .projects-grid>.wp-block-column:last-child::after{
    content:none!important;
    display:none!important;
  }
  .projects-grid .project-name{
    width:auto!important;
    margin:0!important;
    white-space:nowrap!important;
    font-size:15px!important;
    line-height:1.2!important;
    letter-spacing:0!important;
    font-weight:500!important;
    text-align:left!important;
  }
  @keyframes hiltag-projects-editable-6106{
    from{transform:translateX(0)}
    to{transform:translateX(calc(-100% - 100vw))}
  }
}
@media(prefers-reduced-motion:reduce){
  .projects-grid{
    animation:none!important;
    transform:none!important;
    padding-left:0!important;
  }
}


/* ===== v6.10.8 – Projekte als Laufband auf Desktop UND Mobile ===== */
.projects-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:0!important;
  width:max-content!important;
  max-width:none!important;
  min-width:max-content!important;
  padding:18px 0 20px 100vw!important;
  margin:0!important;
  overflow:visible!important;
  animation:hiltag-projects-marquee-6108 38s linear infinite!important;
  will-change:transform!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}

.projects-grid>.wp-block-column{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  animation:none!important;
  transform:none!important;
}

.projects-grid>.wp-block-column::before{
  content:none!important;
  display:none!important;
}

.projects-grid>.wp-block-column::after{
  content:'·'!important;
  display:inline-block!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0 24px!important;
  background:none!important;
  color:var(--blau,#1737c7)!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:.9!important;
}

.projects-grid>.wp-block-column:last-child::after{
  content:none!important;
  display:none!important;
}

.projects-grid .project-name{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  text-align:left!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

.project-clone,.projects-track{display:none!important}

@keyframes hiltag-projects-marquee-6108{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-100% - 100vw))}
}

@media(max-width:700px){
  .projects-grid{
    animation-duration:31s!important;
    padding-top:16px!important;
    padding-bottom:18px!important;
  }
  .projects-grid>.wp-block-column::after{
    margin-left:20px!important;
    margin-right:20px!important;
    font-size:18px!important;
  }
  .projects-grid .project-name{font-size:15px!important}
}

@media(prefers-reduced-motion:reduce){
  .projects-grid{
    animation:none!important;
    transform:none!important;
    padding-left:0!important;
  }
}

/* Contact form stays predictable on both desktop and mobile. */
.contact-grid{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
  gap:clamp(36px,6vw,78px)!important;
  align-items:start!important;
}
.contact-grid>.wp-block-column{min-width:0!important;width:100%!important}
.contact-form{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:18px!important;
  width:100%!important;
  max-width:none!important;
}
.contact-form .form-field{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:8px!important;
  width:100%!important;
}
.contact-form input,.contact-form textarea{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  box-sizing:border-box!important;
}
.contact-form .form-submit{
  width:100%!important;
  box-sizing:border-box!important;
}
@media(max-width:900px){
  .contact-grid{grid-template-columns:1fr!important;gap:44px!important}
}


/* ===== v6.10.9 – Projekte-Laufband sofort sichtbar =====
   Keine Startverzögerung: die erste Firma steht beim Laden direkt im Bild. */
.projects-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:0!important;
  width:max-content!important;
  max-width:none!important;
  min-width:max-content!important;
  margin:0!important;
  padding:18px 0 20px 0!important;
  overflow:visible!important;
  animation:hiltag-projects-marquee-6109 34s linear infinite!important;
  will-change:transform!important;
  transform:translateX(0)!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}

.projects-grid>.wp-block-column{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
}

.projects-grid>.wp-block-column::before{
  content:none!important;
  display:none!important;
}

.projects-grid>.wp-block-column::after{
  content:'·'!important;
  display:inline-block!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0 24px!important;
  background:none!important;
  color:var(--blau,#1737c7)!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:.9!important;
}

.projects-grid>.wp-block-column:last-child::after{
  content:none!important;
  display:none!important;
}

.projects-grid .project-name{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  text-align:left!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

/* Start at the left edge, move only until the final reference has crossed.
   This keeps one editable copy of every company; then the cycle restarts. */
@keyframes hiltag-projects-marquee-6109{
  from{transform:translateX(0)}
  to{transform:translateX(calc(-100% + 100vw))}
}

@media(max-width:700px){
  .projects-grid{
    animation-duration:27s!important;
    padding-top:16px!important;
    padding-bottom:18px!important;
  }
  .projects-grid>.wp-block-column::after{
    margin-left:20px!important;
    margin-right:20px!important;
    font-size:18px!important;
  }
  .projects-grid .project-name{
    font-size:15px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .projects-grid{
    animation:none!important;
    transform:none!important;
  }
}


/* ===== v6.11.0 – robust project marquee on desktop + mobile ===== */
.projects-marquee-viewport{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  position:relative!important;
  box-sizing:border-box!important;
  margin:0!important;
  padding:0!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%)!important;
  mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%)!important;
}

.projects-marquee-viewport .projects-grid{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:0!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:18px 0 20px!important;
  animation:hiltag-project-marquee-6110 34s linear infinite!important;
  transform:translate3d(0,0,0)!important;
  will-change:transform!important;
  overflow:visible!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column::before{
  content:none!important;
  display:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column::after{
  content:'·'!important;
  display:inline-block!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0 24px!important;
  background:none!important;
  color:var(--blau,#1737c7)!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:.9!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column:nth-last-child(1)::after{
  margin-right:24px!important;
}

.projects-marquee-viewport .project-name{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  text-align:left!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

.projects-marquee-viewport .project-marquee-clone{
  display:flex!important;
}

@keyframes hiltag-project-marquee-6110{
  from{transform:translate3d(0,0,0)}
  to{transform:translate3d(-50%,0,0)}
}

@media(max-width:700px){
  .projects-marquee-viewport{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
  }
  .projects-marquee-viewport .projects-grid{
    padding:16px 0 18px!important;
    animation-duration:27s!important;
  }
  .projects-marquee-viewport .projects-grid>.wp-block-column::after{
    margin-left:20px!important;
    margin-right:20px!important;
    font-size:18px!important;
  }
  .projects-marquee-viewport .project-name{
    font-size:15px!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .projects-marquee-viewport{
    overflow-x:auto!important;
    -webkit-mask-image:none!important;
    mask-image:none!important;
  }
  .projects-marquee-viewport .projects-grid{
    animation:none!important;
    transform:none!important;
  }
  .projects-marquee-viewport .project-marquee-clone{
    display:none!important;
  }
}


/* ===== v6.11.2 – Projekte-Laufband Desktop + Mobile, JS-bewegt ===== */
.projects-marquee-viewport{
  display:block!important;
  position:relative!important;
  width:100%!important;
  max-width:100%!important;
  overflow:hidden!important;
  margin:0!important;
  padding:0!important;
  box-sizing:border-box!important;
  -webkit-mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%)!important;
  mask-image:linear-gradient(to right,transparent 0,#000 4%,#000 96%,transparent 100%)!important;
}

.projects-marquee-viewport .projects-grid{
  display:flex!important;
  position:relative!important;
  left:0;
  flex-wrap:nowrap!important;
  align-items:center!important;
  gap:0!important;
  width:max-content!important;
  min-width:max-content!important;
  max-width:none!important;
  margin:0!important;
  padding:18px 0 20px!important;
  overflow:visible!important;

  /* Older transform/animation rules must not control this version. */
  animation:none!important;
  transform:none!important;
  translate:none!important;
  transition:none!important;
  will-change:left!important;
  -webkit-mask-image:none!important;
  mask-image:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column{
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-start!important;
  width:auto!important;
  min-width:max-content!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  box-shadow:none!important;
  transform:none!important;
  animation:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column::before{
  content:none!important;
  display:none!important;
}

.projects-marquee-viewport .projects-grid>.wp-block-column::after{
  content:'·'!important;
  display:inline-block!important;
  position:static!important;
  width:auto!important;
  height:auto!important;
  margin:0 24px!important;
  background:none!important;
  color:var(--blau,#1737c7)!important;
  font-size:20px!important;
  line-height:1!important;
  opacity:.9!important;
}

.projects-marquee-viewport .project-name{
  display:inline-block!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  text-align:left!important;
  font-size:clamp(15px,1.35vw,18px)!important;
  line-height:1.2!important;
  font-weight:500!important;
  letter-spacing:0!important;
}

.projects-marquee-viewport .project-marquee-clone{
  display:flex!important;
}

@media(max-width:700px){
  .projects-marquee-viewport{
    -webkit-mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
    mask-image:linear-gradient(to right,transparent 0,#000 7%,#000 93%,transparent 100%)!important;
  }
  .projects-marquee-viewport .projects-grid{
    padding:16px 0 18px!important;
  }
  .projects-marquee-viewport .projects-grid>.wp-block-column::after{
    margin-left:20px!important;
    margin-right:20px!important;
    font-size:18px!important;
  }
  .projects-marquee-viewport .project-name{
    font-size:15px!important;
  }
}


/* ===== v6.11.3 – ONLY menu/header restore ===== */

/* Desktop */
@media(min-width:701px){
  .site-header{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:20px!important;
    overflow:visible!important;
  }
  .site-header .header-logo{
    display:flex!important;
    align-items:center!important;
    flex:0 1 auto!important;
    min-width:0!important;
  }
  .site-header .header-nav{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex:1 1 auto!important;
    width:auto!important;
    height:auto!important;
    overflow:visible!important;
    transform:none!important;
  }
  .site-header .wp-block-navigation{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    width:auto!important;
    height:auto!important;
    margin:0!important;
    white-space:nowrap!important;
  }
  .site-header .wp-block-navigation > .wp-block-navigation__container{
    display:flex!important;
    flex-direction:row!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:flex-end!important;
    gap:26px!important;
    width:auto!important;
    margin:0!important;
    padding:0!important;
  }
  .site-header .wp-block-navigation__responsive-container-open{
    display:none!important;
  }
  .site-header .header-cta{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-end!important;
    flex:0 0 auto!important;
    height:auto!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
  }
}

/* Mobile: logo left, hamburger + Kontakt on exactly the same height. */
@media(max-width:700px){
  .site-header{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    justify-content:space-between!important;
    height:64px!important;
    width:calc(100% - 32px)!important;
    padding:0 16px!important;
    gap:9px!important;
    overflow:visible!important;
  }

  .site-header .header-logo{
    display:flex!important;
    align-items:center!important;
    flex:1 1 auto!important;
    min-width:0!important;
    height:38px!important;
  }

  .site-header .header-nav,
  .site-header .header-cta{
    display:flex!important;
    align-items:center!important;
    align-self:center!important;
    flex:0 0 auto!important;
    width:auto!important;
    height:38px!important;
    margin:0!important;
    padding:0!important;
    transform:none!important;
    overflow:visible!important;
  }

  .site-header .wp-block-navigation{
    display:flex!important;
    align-items:center!important;
    width:auto!important;
    min-width:38px!important;
    height:38px!important;
    margin:0!important;
  }

  .site-header .wp-block-navigation > .wp-block-navigation__container{
    display:none!important;
  }

  .site-header .wp-block-navigation__responsive-container-open,
  .site-header .hiltag-mobile-menu-toggle{
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    background:transparent!important;
    box-sizing:border-box!important;
  }

  .site-header .wp-block-navigation__responsive-container-open svg{
    width:23px!important;
    height:23px!important;
  }

  .site-header .header-cta .hiltag-plain-btn{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    height:38px!important;
    min-height:38px!important;
    margin:0!important;
    padding:0 11px!important;
    box-sizing:border-box!important;
    line-height:1!important;
    font-size:9px!important;
    white-space:nowrap!important;
  }

  .site-header .wp-block-navigation__responsive-container:not(.is-menu-open){
    display:none!important;
  }

  .site-header .wp-block-navigation__responsive-container.is-menu-open{
    position:absolute!important;
    top:52px!important;
    right:0!important;
    left:auto!important;
    width:min(300px,calc(100vw - 32px))!important;
    height:auto!important;
    min-height:0!important;
    padding:42px 14px 12px!important;
    border:1px solid var(--linie)!important;
    background:var(--papier)!important;
    color:var(--tinte)!important;
    box-shadow:0 12px 32px rgba(0,0,0,.08)!important;
    overflow:visible!important;
  }

  .site-header .wp-block-navigation__responsive-container-close{
    position:absolute!important;
    top:5px!important;
    right:6px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:32px!important;
    height:32px!important;
    margin:0!important;
    padding:0!important;
  }

  .site-header .wp-block-navigation__responsive-container-content{
    width:100%!important;
    padding:0!important;
    margin:0!important;
  }

  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
  }

  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{
    width:100%!important;
    margin:0!important;
    border-top:1px solid var(--linie)!important;
  }

  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{
    border-bottom:1px solid var(--linie)!important;
  }

  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{
    display:block!important;
    width:100%!important;
    padding:11px 3px!important;
    box-sizing:border-box!important;
    font-family:var(--mono)!important;
    font-size:12px!important;
    line-height:1.25!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
  }

  .header-line,
  .site-header.is-compact + .header-line{
    top:64px!important;
  }

  .nav-spacer{
    height:65px!important;
  }
}


/* ===== v6.11.4 – Menü passend zum Seiteninhalt ===== */
html{scroll-behavior:smooth}
[id="leistungen"],[id="systeme"],[id="wartung"],[id="philosophie"],
[id="firma"],[id="mitarbeiter"],[id="projekte"],[id="kontakt"]{
  scroll-margin-top:96px;
}

@media(min-width:701px){
  .site-header .wp-block-navigation > .wp-block-navigation__container{
    gap:clamp(12px,1.4vw,24px)!important;
  }
  .site-header .wp-block-navigation-item__content{
    font-size:clamp(10px,.82vw,12px)!important;
    white-space:nowrap!important;
  }
}

@media(max-width:700px){
  .site-header .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{
    max-height:calc(100vh - 110px)!important;
    overflow-y:auto!important;
  }
}


/* ===== v6.11.5 – Mobile-Menü zuverlässig aufklappbar ===== */
@media(max-width:700px){
  .site-header .wp-block-navigation{
    position:relative!important;
  }

  /* Native WordPress overlay is not used for the visible dropdown.
     The two-line button controls the real editable menu list directly. */
  .site-header .wp-block-navigation__responsive-container{
    display:none!important;
  }

  .site-header .wp-block-navigation.hiltag-menu-open > .wp-block-navigation__container{
    display:flex!important;
    position:fixed!important;
    top:64px!important;
    right:12px!important;
    left:auto!important;
    width:min(290px,calc(100vw - 24px))!important;
    max-height:calc(100dvh - 78px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    z-index:99999!important;
    box-sizing:border-box!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
    margin:0!important;
    padding:10px 14px!important;
    background:var(--papier,#FAF9F5)!important;
    border:1px solid var(--linie-box,#d8d7d0)!important;
    box-shadow:0 14px 36px rgba(23,23,15,.14)!important;
  }

  .site-header .wp-block-navigation.hiltag-menu-open > .wp-block-navigation__container .wp-block-navigation-item{
    width:100%!important;
    margin:0!important;
    border-top:1px solid var(--linie,#d8d7d0)!important;
  }

  .site-header .wp-block-navigation.hiltag-menu-open > .wp-block-navigation__container .wp-block-navigation-item:last-child{
    border-bottom:1px solid var(--linie,#d8d7d0)!important;
  }

  .site-header .wp-block-navigation.hiltag-menu-open > .wp-block-navigation__container .wp-block-navigation-item__content{
    display:block!important;
    width:100%!important;
    box-sizing:border-box!important;
    padding:13px 3px!important;
    font-family:var(--mono)!important;
    font-size:12px!important;
    line-height:1.25!important;
    letter-spacing:.07em!important;
    text-transform:uppercase!important;
    white-space:normal!important;
    color:var(--tinte,#17170F)!important;
    text-decoration:none!important;
  }

  .site-header .wp-block-navigation__responsive-container-open,
  .site-header .hiltag-mobile-menu-toggle{
    position:relative!important;
    z-index:100000!important;
    cursor:pointer!important;
  }
}


/* ===== v6.11.6 – native menu, reliable on desktop + mobile ===== */

/* Hide the now-unused WordPress navigation overlay if stale markup exists anywhere. */
.site-header .wp-block-navigation,
.site-header .wp-block-navigation__responsive-container,
.site-header .wp-block-navigation__responsive-container-open,
.site-header .hiltag-mobile-menu-toggle{
  display:none!important;
}

.site-header{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  overflow:visible!important;
}

.site-header .header-logo{
  display:flex!important;
  align-items:center!important;
  flex:1 1 auto!important;
  min-width:0!important;
}

.site-header .header-actions{
  position:relative!important;
  display:flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  min-width:0!important;
  width:auto!important;
  margin:0!important;
  padding:0!important;
  overflow:visible!important;
}

.hiltag-native-menu{
  position:relative!important;
  display:block!important;
  margin:0!important;
  padding:0!important;
}

.hiltag-native-menu > summary{
  list-style:none!important;
}
.hiltag-native-menu > summary::-webkit-details-marker{
  display:none!important;
}

.hiltag-menu-button{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  width:40px!important;
  min-width:40px!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  color:var(--tinte,#17170F)!important;
  cursor:pointer!important;
  box-sizing:border-box!important;
}

.hiltag-menu-icon{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  gap:6px!important;
  width:23px!important;
  height:20px!important;
}
.hiltag-menu-icon > span{
  display:block!important;
  width:23px!important;
  height:2px!important;
  background:currentColor!important;
  transform:none!important;
  transition:transform .18s ease,opacity .18s ease!important;
}

.hiltag-native-menu[open] .hiltag-menu-icon > span:first-child{
  transform:translateY(4px) rotate(45deg)!important;
}
.hiltag-native-menu[open] .hiltag-menu-icon > span:last-child{
  transform:translateY(-4px) rotate(-45deg)!important;
}

.hiltag-menu-panel{
  position:absolute!important;
  top:calc(100% + 10px)!important;
  right:0!important;
  z-index:999999!important;
  display:flex!important;
  flex-direction:column!important;
  align-items:stretch!important;
  width:280px!important;
  max-width:calc(100vw - 24px)!important;
  margin:0!important;
  padding:10px 14px!important;
  border:1px solid var(--linie-box,#d8d7d0)!important;
  background:var(--papier,#FAF9F5)!important;
  box-shadow:0 14px 36px rgba(23,23,15,.14)!important;
  box-sizing:border-box!important;
}

.hiltag-menu-panel a{
  display:block!important;
  width:100%!important;
  margin:0!important;
  padding:13px 3px!important;
  border-top:1px solid var(--linie,#d8d7d0)!important;
  box-sizing:border-box!important;
  color:var(--tinte,#17170F)!important;
  background:transparent!important;
  font-family:var(--mono)!important;
  font-size:12px!important;
  line-height:1.25!important;
  letter-spacing:.07em!important;
  text-transform:uppercase!important;
  text-decoration:none!important;
  white-space:normal!important;
  visibility:visible!important;
  opacity:1!important;
}

.hiltag-menu-panel a:last-child{
  border-bottom:1px solid var(--linie,#d8d7d0)!important;
}

.hiltag-menu-panel a:hover,
.hiltag-menu-panel a:focus-visible{
  color:var(--blau,#1737c7)!important;
}

.site-header .header-actions > .hiltag-plain-btn{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  height:40px!important;
  min-height:40px!important;
  margin:0!important;
  box-sizing:border-box!important;
}

@media(max-width:700px){
  .site-header{
    width:calc(100% - 32px)!important;
    height:64px!important;
    padding:0 16px!important;
    gap:8px!important;
  }

  .site-header .header-logo{
    height:40px!important;
  }

  .site-header .header-actions{
    height:40px!important;
    gap:6px!important;
  }

  .hiltag-menu-button{
    width:38px!important;
    min-width:38px!important;
    height:38px!important;
    min-height:38px!important;
  }

  .site-header .header-actions > .hiltag-plain-btn{
    height:38px!important;
    min-height:38px!important;
    padding:0 11px!important;
    font-size:9px!important;
    line-height:1!important;
    white-space:nowrap!important;
  }

  .hiltag-menu-panel{
    position:fixed!important;
    top:64px!important;
    right:12px!important;
    left:auto!important;
    width:min(290px,calc(100vw - 24px))!important;
    max-height:calc(100dvh - 78px)!important;
    overflow-y:auto!important;
  }

  .header-line,
  .site-header.is-compact + .header-line{
    top:64px!important;
  }

  .nav-spacer{
    height:65px!important;
  }
}


/* ===== v6.11.7 – Menüziele Mitarbeiter + Projekte ===== */
#mitarbeiter,
#projekte{
  scroll-margin-top:96px!important;
}


/* ===== v6.11.8 – block widths desktop + mobile ===== */
:root{
  --hiltag-content-max:1320px;
  --hiltag-gutter-desktop:clamp(28px,4vw,64px);
  --hiltag-gutter-mobile:16px;
}

/* Main content blocks: consistent width on large screens. */
.wp-site-blocks > main,
main.wp-block-group,
main .content-shell,
main .section-inner{
  width:100%!important;
  max-width:var(--hiltag-content-max)!important;
  margin-left:auto!important;
  margin-right:auto!important;
  box-sizing:border-box!important;
}

/* Keep section content inside viewport without breaking full-width decorative elements. */
main .wp-block-group:not(.alignfull),
main .wp-block-columns:not(.alignfull),
.contact-grid,
.employee-grid{
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Contact form desktop */
.contact-grid{
  display:grid!important;
  grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr)!important;
  gap:clamp(42px,6vw,86px)!important;
  width:100%!important;
  align-items:start!important;
}
.contact-grid>.wp-block-column{
  width:100%!important;
  min-width:0!important;
}
.contact-form{
  width:100%!important;
  max-width:720px!important;
  justify-self:stretch!important;
}
.contact-form input,
.contact-form textarea,
.contact-form button{
  max-width:100%!important;
  box-sizing:border-box!important;
}

/* Header logo itself must not navigate anywhere and must remain fully visible. */
.site-header .wp-block-site-logo{
  overflow:visible!important;
}
.site-header .wp-block-site-logo img{
  object-fit:contain!important;
  object-position:left center!important;
  max-width:100%!important;
  height:auto!important;
}

@media(min-width:701px){
  .wp-site-blocks > main{
    padding-left:var(--hiltag-gutter-desktop)!important;
    padding-right:var(--hiltag-gutter-desktop)!important;
  }
}

/* Mobile: every major block fits the viewport, with predictable gutters. */
@media(max-width:700px){
  .wp-site-blocks > main{
    width:100%!important;
    max-width:100%!important;
    padding-left:var(--hiltag-gutter-mobile)!important;
    padding-right:var(--hiltag-gutter-mobile)!important;
    box-sizing:border-box!important;
    overflow-x:clip!important;
  }

  main .wp-block-group:not(.alignfull),
  main .wp-block-columns:not(.alignfull),
  .contact-grid,
  .employee-grid{
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    box-sizing:border-box!important;
  }

  .contact-grid{
    grid-template-columns:1fr!important;
    gap:42px!important;
  }

  .contact-form{
    width:100%!important;
    max-width:100%!important;
  }

  .contact-form input,
  .contact-form textarea,
  .contact-form .form-submit{
    width:100%!important;
    max-width:100%!important;
  }

  .contact-form textarea{
    min-height:160px!important;
  }

  .employee-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:22px 14px!important;
  }
}


/* ===== v6.11.9 – Kontaktformular Direktversand ===== */
.contact-form .form-server-error{
  display:block!important;
  width:100%!important;
  margin:2px 0 0!important;
  padding:12px 14px!important;
  box-sizing:border-box!important;
  border:1px solid #b3261e!important;
  background:transparent!important;
  font-size:13px!important;
  line-height:1.4!important;
}
.contact-form .form-server-error[hidden]{
  display:none!important;
}


/* ===== v6.12.0 – ONLY header logo visibility fix ===== */
/* Keep the header logo visible on desktop and mobile without making it a link. */
.site-header .header-logo{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-width:126px!important;
  min-height:44px!important;
  overflow:visible!important;
}

.site-header .wp-block-site-logo{
  display:block!important;
  position:relative!important;
  width:126px!important;
  height:44px!important;
  min-width:126px!important;
  min-height:44px!important;
  margin:0!important;
  padding:0!important;
  background-image:url('assets/images/logo.png')!important;
  background-repeat:no-repeat!important;
  background-position:left center!important;
  background-size:contain!important;
  overflow:visible!important;
}

/* If WordPress also renders the stored logo image, keep only the theme logo once. */
.site-header .wp-block-site-logo img{
  opacity:0!important;
  width:126px!important;
  height:44px!important;
  display:block!important;
}

/* Explicitly keep it non-clickable. */
.site-header .wp-block-site-logo a{
  pointer-events:none!important;
  cursor:default!important;
}

@media(max-width:700px){
  .site-header .header-logo{
    min-width:108px!important;
    min-height:38px!important;
  }

  .site-header .wp-block-site-logo{
    width:108px!important;
    height:38px!important;
    min-width:108px!important;
    min-height:38px!important;
    background-size:contain!important;
  }

  .site-header .wp-block-site-logo img{
    width:108px!important;
    height:38px!important;
  }
}


/* ===== v6.12.1 – AGB / Datenschutz / Impressum responsive ===== */

/* Legal content pages: readable width on desktop, safe gutters on mobile. */
body.page .wp-block-post-content,
body.page-template-default .wp-block-post-content{
  box-sizing:border-box!important;
}

/* Apply a calm reading width only to the legal pages when body classes/slugs match. */
body[class*="agb"] .wp-block-post-content,
body[class*="datenschutz"] .wp-block-post-content,
body[class*="impressum"] .wp-block-post-content,
body.page-agb .wp-block-post-content,
body.page-datenschutz .wp-block-post-content,
body.page-impressum .wp-block-post-content{
  width:100%!important;
  max-width:980px!important;
  margin-left:auto!important;
  margin-right:auto!important;
  padding-left:clamp(24px,4vw,56px)!important;
  padding-right:clamp(24px,4vw,56px)!important;
  box-sizing:border-box!important;
}

/* Headings and paragraphs keep a comfortable reading rhythm. */
body[class*="agb"] .wp-block-post-content h1,
body[class*="datenschutz"] .wp-block-post-content h1,
body[class*="impressum"] .wp-block-post-content h1,
body.page-agb .wp-block-post-content h1,
body.page-datenschutz .wp-block-post-content h1,
body.page-impressum .wp-block-post-content h1{
  max-width:100%!important;
  margin-bottom:clamp(28px,4vw,48px)!important;
  line-height:1.05!important;
  overflow-wrap:anywhere!important;
}

body[class*="agb"] .wp-block-post-content h2,
body[class*="datenschutz"] .wp-block-post-content h2,
body[class*="impressum"] .wp-block-post-content h2,
body.page-agb .wp-block-post-content h2,
body.page-datenschutz .wp-block-post-content h2,
body.page-impressum .wp-block-post-content h2{
  margin-top:clamp(32px,5vw,54px)!important;
  margin-bottom:14px!important;
  line-height:1.2!important;
  overflow-wrap:anywhere!important;
}

body[class*="agb"] .wp-block-post-content h3,
body[class*="datenschutz"] .wp-block-post-content h3,
body[class*="impressum"] .wp-block-post-content h3,
body.page-agb .wp-block-post-content h3,
body.page-datenschutz .wp-block-post-content h3,
body.page-impressum .wp-block-post-content h3{
  margin-top:28px!important;
  margin-bottom:10px!important;
  line-height:1.25!important;
  overflow-wrap:anywhere!important;
}

body[class*="agb"] .wp-block-post-content p,
body[class*="datenschutz"] .wp-block-post-content p,
body[class*="impressum"] .wp-block-post-content p,
body[class*="agb"] .wp-block-post-content li,
body[class*="datenschutz"] .wp-block-post-content li,
body[class*="impressum"] .wp-block-post-content li,
body.page-agb .wp-block-post-content p,
body.page-datenschutz .wp-block-post-content p,
body.page-impressum .wp-block-post-content p,
body.page-agb .wp-block-post-content li,
body.page-datenschutz .wp-block-post-content li,
body.page-impressum .wp-block-post-content li{
  font-size:clamp(15px,1.1vw,17px)!important;
  line-height:1.65!important;
  overflow-wrap:anywhere!important;
  word-break:normal!important;
}

body[class*="agb"] .wp-block-post-content ul,
body[class*="datenschutz"] .wp-block-post-content ul,
body[class*="impressum"] .wp-block-post-content ul,
body[class*="agb"] .wp-block-post-content ol,
body[class*="datenschutz"] .wp-block-post-content ol,
body[class*="impressum"] .wp-block-post-content ol,
body.page-agb .wp-block-post-content ul,
body.page-datenschutz .wp-block-post-content ul,
body.page-impressum .wp-block-post-content ul,
body.page-agb .wp-block-post-content ol,
body.page-datenschutz .wp-block-post-content ol,
body.page-impressum .wp-block-post-content ol{
  padding-left:1.4em!important;
  margin-left:0!important;
  max-width:100%!important;
}

body[class*="agb"] .wp-block-post-content a,
body[class*="datenschutz"] .wp-block-post-content a,
body[class*="impressum"] .wp-block-post-content a,
body.page-agb .wp-block-post-content a,
body.page-datenschutz .wp-block-post-content a,
body.page-impressum .wp-block-post-content a{
  overflow-wrap:anywhere!important;
}

/* Tables/legal data remain usable on narrow screens. */
body[class*="agb"] .wp-block-table,
body[class*="datenschutz"] .wp-block-table,
body[class*="impressum"] .wp-block-table,
body.page-agb .wp-block-table,
body.page-datenschutz .wp-block-table,
body.page-impressum .wp-block-table{
  width:100%!important;
  max-width:100%!important;
  overflow-x:auto!important;
  -webkit-overflow-scrolling:touch!important;
}

body[class*="agb"] .wp-block-table table,
body[class*="datenschutz"] .wp-block-table table,
body[class*="impressum"] .wp-block-table table,
body.page-agb .wp-block-table table,
body.page-datenschutz .wp-block-table table,
body.page-impressum .wp-block-table table{
  min-width:560px!important;
}

/* Mobile */
@media(max-width:700px){
  body[class*="agb"] .wp-block-post-content,
  body[class*="datenschutz"] .wp-block-post-content,
  body[class*="impressum"] .wp-block-post-content,
  body.page-agb .wp-block-post-content,
  body.page-datenschutz .wp-block-post-content,
  body.page-impressum .wp-block-post-content{
    max-width:100%!important;
    padding-left:16px!important;
    padding-right:16px!important;
    padding-top:20px!important;
    padding-bottom:32px!important;
  }

  body[class*="agb"] .wp-block-post-content h1,
  body[class*="datenschutz"] .wp-block-post-content h1,
  body[class*="impressum"] .wp-block-post-content h1,
  body.page-agb .wp-block-post-content h1,
  body.page-datenschutz .wp-block-post-content h1,
  body.page-impressum .wp-block-post-content h1{
    font-size:clamp(30px,9vw,42px)!important;
    margin-bottom:26px!important;
  }

  body[class*="agb"] .wp-block-post-content h2,
  body[class*="datenschutz"] .wp-block-post-content h2,
  body[class*="impressum"] .wp-block-post-content h2,
  body.page-agb .wp-block-post-content h2,
  body.page-datenschutz .wp-block-post-content h2,
  body.page-impressum .wp-block-post-content h2{
    font-size:clamp(22px,6vw,28px)!important;
    margin-top:34px!important;
  }

  body[class*="agb"] .wp-block-post-content p,
  body[class*="datenschutz"] .wp-block-post-content p,
  body[class*="impressum"] .wp-block-post-content p,
  body[class*="agb"] .wp-block-post-content li,
  body[class*="datenschutz"] .wp-block-post-content li,
  body[class*="impressum"] .wp-block-post-content li,
  body.page-agb .wp-block-post-content p,
  body.page-datenschutz .wp-block-post-content p,
  body.page-impressum .wp-block-post-content p,
  body.page-agb .wp-block-post-content li,
  body.page-datenschutz .wp-block-post-content li,
  body.page-impressum .wp-block-post-content li{
    font-size:16px!important;
    line-height:1.6!important;
  }
}


/* ===== v6.12.2 – Legal-Seitentitel auf Mobile IMMER einzeilig ===== */
@media(max-width:700px){
  body[class*="agb"] .wp-block-post-content h1,
  body[class*="datenschutz"] .wp-block-post-content h1,
  body[class*="impressum"] .wp-block-post-content h1,
  body.page-agb .wp-block-post-content h1,
  body.page-datenschutz .wp-block-post-content h1,
  body.page-impressum .wp-block-post-content h1{
    display:block!important;
    width:100%!important;
    max-width:100%!important;
    margin-left:0!important;
    margin-right:0!important;
    padding-left:0!important;
    padding-right:0!important;

    /* Wichtig: nie umbrechen */
    white-space:nowrap!important;
    word-break:keep-all!important;
    overflow-wrap:normal!important;
    hyphens:none!important;

    /* Klein genug für Datenschutz auch auf schmalen Handys */
    font-size:clamp(23px,7.2vw,31px)!important;
    line-height:1.05!important;
    letter-spacing:-0.02em!important;
  }
}

@media(max-width:360px){
  body[class*="agb"] .wp-block-post-content h1,
  body[class*="datenschutz"] .wp-block-post-content h1,
  body[class*="impressum"] .wp-block-post-content h1,
  body.page-agb .wp-block-post-content h1,
  body.page-datenschutz .wp-block-post-content h1,
  body.page-impressum .wp-block-post-content h1{
    font-size:23px!important;
  }
}
