:root{--black:#090b0f;--red:#d91f26;--red-dark:#a91117;--paper:#f5f6f8;--text:#17191d;--muted:#666a73;--line:#dde0e5;--shadow:0 10px 28px rgba(0,0,0,.08);--max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:"Segoe UI",Arial,Helvetica,sans-serif;color:var(--text);background:var(--paper);line-height:1.55}a{color:inherit}.container{width:min(var(--max),calc(100% - 40px));margin-inline:auto}
.site-header{position:sticky;top:0;z-index:100;background:rgba(8,10,14,.96);border-bottom:1px solid rgba(255,255,255,.08);color:#fff}.nav{min-height:70px;display:flex;align-items:center;justify-content:space-between}.brand{text-decoration:none;font-weight:900;letter-spacing:.08em;font-size:1.55rem}.brand span{color:var(--red)}nav{display:flex;gap:34px}nav a{text-decoration:none;font-size:.9rem;font-weight:700;text-transform:uppercase;border-bottom:2px solid transparent;padding:25px 0 22px}nav a:hover{border-color:var(--red)}.nav-toggle{display:none}
.hero{position:relative;min-height:560px;color:#fff;display:flex;align-items:center;overflow:hidden;background:linear-gradient(90deg,rgba(3,5,8,.97) 0%,rgba(3,5,8,.88) 38%,rgba(3,5,8,.25) 74%,rgba(3,5,8,.15) 100%),radial-gradient(circle at 88% 22%,rgba(217,31,38,.28) 0 1.5%,transparent 2%),radial-gradient(circle at 82% 36%,rgba(217,31,38,.25) 0 1.5%,transparent 2%),radial-gradient(circle at 91% 52%,rgba(217,31,38,.26) 0 1.5%,transparent 2%),linear-gradient(115deg,#08101a 0%,#111b28 55%,#05070b 100%)}.hero:before,.hero:after{content:"";position:absolute;inset:0;pointer-events:none}.hero:before{background:repeating-linear-gradient(90deg,transparent 0 64px,rgba(255,255,255,.035) 65px 66px),repeating-linear-gradient(0deg,transparent 0 38px,rgba(255,255,255,.025) 39px 40px)}.hero:after{left:54%;background:repeating-linear-gradient(90deg,rgba(255,255,255,.04) 0 2px,transparent 2px 72px),repeating-linear-gradient(0deg,transparent 0 28px,rgba(217,31,38,.36) 29px 32px,transparent 33px 56px);opacity:.55}.hero-overlay{position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.15))}.hero-content{position:relative;z-index:2;padding:85px 0}.hero-kicker{font-weight:800;letter-spacing:.06em;font-size:.88rem;margin-bottom:18px}.hero-kicker:before{content:"";display:inline-block;width:42px;height:3px;background:var(--red);margin-right:12px;vertical-align:middle}h1,h2,h3{line-height:1.1;margin-top:0}.hero h1{font-size:clamp(3.6rem,8vw,6.8rem);letter-spacing:-.055em;margin-bottom:28px}.hero-copy{max-width:650px;font-size:1.08rem;color:#e2e4e8}.hero-actions{display:flex;gap:14px;margin-top:30px;flex-wrap:wrap}
.button{min-height:48px;display:inline-flex;align-items:center;justify-content:center;padding:0 22px;border-radius:4px;border:1px solid transparent;text-decoration:none;text-transform:uppercase;font-weight:800;font-size:.82rem;cursor:pointer}.button-primary{background:var(--red);color:#fff}.button-primary:hover{background:var(--red-dark)}.button-ghost{color:#fff;border-color:rgba(255,255,255,.45);background:rgba(0,0,0,.12)}.dark-button{color:var(--text);border-color:#aaa}
.section{padding:72px 0}.light-section{background:var(--paper)}.compact-top{padding-top:18px}.section-heading{display:flex;align-items:baseline;gap:12px;margin-bottom:28px}.section-heading h2{margin:0;font-size:clamp(1.55rem,3vw,2.25rem);letter-spacing:-.025em}.section-number{color:var(--red);font-weight:900;font-size:1.4rem;margin:0}.section-intro{color:var(--muted);margin:-12px 0 26px}
.profile-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card,.timeline-card,.contact-panel,.legal-card{background:#fff;border:1px solid var(--line);border-radius:8px;box-shadow:var(--shadow)}.card{padding:28px;min-height:250px}.card h3{margin:18px 0 10px}.card strong{color:var(--red)}.card p{color:#4d5159;font-size:.93rem}.icon-circle{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--red);background:#fff1f1;font-size:1.5rem;font-weight:900}.icon-circle.large{width:58px;height:58px;font-size:1.7rem}.interest-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:26px}.interest-grid div{display:grid;justify-items:center;gap:8px;text-transform:uppercase;font-size:.78rem}.interest-icon{font-size:2rem;font-weight:900}
.timeline{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;position:relative}.timeline:before{content:"";position:absolute;height:2px;background:#b9bdc5;left:8%;right:8%;top:50%;z-index:0}.timeline-card{position:relative;z-index:1;padding:24px;min-height:235px}.timeline-card .date{font-weight:800;font-size:.82rem}.timeline-card h3{color:var(--red);margin:14px 0 12px;font-size:1rem}.timeline-card p{margin:0;font-size:.9rem;color:#4d5159}
.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.gallery-card{margin:0;overflow:hidden;min-height:205px;position:relative;border-radius:6px;background:#0a0e14;color:#fff}.gallery-art{height:205px;opacity:.92}.network .gallery-art{background:radial-gradient(circle at 18% 45%,#1a77ff 0 2px,transparent 3px),repeating-linear-gradient(90deg,transparent 0 35px,rgba(15,103,235,.33) 36px 38px),repeating-linear-gradient(0deg,#111722 0 16px,#05080d 17px 28px)}.systems .gallery-art{background:linear-gradient(120deg,rgba(19,102,180,.55),transparent 50%),repeating-linear-gradient(0deg,#152131 0 2px,transparent 3px 12px),linear-gradient(135deg,#070a0f,#151923 55%,#08090c)}.electrical .gallery-art{background:repeating-linear-gradient(90deg,#202833 0 8px,#0a0d11 9px 34px),repeating-linear-gradient(0deg,transparent 0 26px,rgba(217,31,38,.6) 27px 29px),#0a0d11}.gallery-card figcaption{position:absolute;inset:auto 0 0;padding:36px 16px 14px;background:linear-gradient(transparent,rgba(0,0,0,.9))}.gallery-card figcaption b,.gallery-card figcaption span{display:block}.gallery-card figcaption span{color:#ddd;font-size:.82rem}
.contact-panel{display:grid;grid-template-columns:.72fr 1.6fr;gap:34px;padding:30px}.contact-copy h3{margin:18px 0 14px;font-size:1.5rem}.contact-copy p{color:#4f535b;font-size:.9rem}.privacy-note{font-size:.8rem!important}.contact-form,.admin-form{display:grid;gap:14px}.form-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.contact-form label,.admin-form label{display:grid;gap:6px;font-size:.78rem;color:#5f636c}input,select,textarea{width:100%;border:1px solid #d8dbe0;background:#fff;color:#15171a;border-radius:4px;padding:13px 14px;font:inherit}textarea{resize:vertical}input:focus,select:focus,textarea:focus{outline:2px solid rgba(217,31,38,.22);border-color:var(--red)}.consent{display:grid!important;grid-template-columns:auto 1fr;align-items:start;gap:10px!important}.consent input{width:auto;margin-top:4px}.consent a{color:var(--red)}.send-button{justify-self:end;min-width:230px}.hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.flash{padding:14px 16px;border-radius:6px;margin-bottom:18px}.flash-success{background:#e9f7ee;border:1px solid #9dd9ad;color:#14552a}.flash-error{background:#fff0f0;border:1px solid #e2aaaa;color:#7b1515}
.site-footer{background:#090b0f;color:#fff;padding:24px 0;border-bottom:3px solid var(--red)}.footer-row{display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.82rem}.footer-links{display:flex;gap:14px}.footer-links a{text-decoration:none}
.legal-page,.admin-shell{min-height:calc(100vh - 140px);padding:60px 0}.legal-card{padding:36px;max-width:900px}.legal-card h1,.admin-shell h1{font-size:clamp(2.4rem,5vw,4.2rem)}.legal-card h2{margin-top:34px}.legal-warning{background:#fff7dd;border:1px solid #ead38b;padding:15px;border-radius:6px}.legal-small{margin-top:36px;color:var(--muted);font-size:.82rem}
.admin-shell{width:min(1100px,calc(100% - 40px));margin:auto}.admin-shell.wide{width:min(1180px,calc(100% - 40px))}.admin-login{max-width:520px;margin:20px auto;background:#fff;padding:34px;border-radius:8px;box-shadow:var(--shadow)}.admin-topbar{display:flex;justify-content:space-between;align-items:center}.filter-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:22px 0}.filter-tabs a{text-decoration:none;padding:8px 12px;border:1px solid #cdd0d5;border-radius:4px;background:#fff}.filter-tabs a.active{background:var(--red);color:#fff;border-color:var(--red)}.message-list{display:grid;gap:16px}.message-card{background:#fff;border:1px solid var(--line);padding:24px;border-radius:7px;box-shadow:var(--shadow)}.message-card.new{border-left:5px solid var(--red)}.message-meta{display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:.8rem}.status-pill{font-weight:800;color:var(--red)}.message-card h2{margin:14px 0 8px}.message-body{margin:20px 0;padding:16px;background:#f7f8fa;border-radius:5px}.message-actions{display:flex;gap:8px;flex-wrap:wrap}.message-actions button{border:1px solid #bfc3c9;background:#fff;padding:8px 11px;border-radius:4px;cursor:pointer}.message-actions button.danger{border-color:#d88;color:#a11}.empty-state{background:#fff;padding:30px;border-radius:8px}
@media(max-width:900px){.profile-grid,.gallery{grid-template-columns:1fr}.timeline{grid-template-columns:repeat(2,1fr)}.timeline:before{display:none}.contact-panel{grid-template-columns:1fr}}
@media(max-width:680px){.container{width:min(var(--max),calc(100% - 28px))}.nav-toggle{display:block;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.3);border-radius:4px;padding:8px 10px}nav{display:none;position:absolute;left:0;right:0;top:70px;padding:10px 20px 20px;background:#090b0f;flex-direction:column;gap:0}nav.open{display:flex}nav a{padding:12px 0}.hero{min-height:600px}.hero h1{font-size:clamp(3.1rem,17vw,5rem)}.section{padding:56px 0}.timeline,.form-grid{grid-template-columns:1fr}.contact-panel{padding:20px}.send-button{width:100%;min-width:0}.footer-row,.admin-topbar{align-items:flex-start;flex-direction:column}}
/* ===== HERO SERVERROOM IMAGE ===== */

.hero {
    position: relative;
    background:
        linear-gradient(
            90deg,
            #05080b 0%,
            #05080b 38%,
            rgba(5, 8, 11, 0.96) 48%,
            rgba(5, 8, 11, 0.55) 68%,
            rgba(5, 8, 11, 0.15) 100%
        ),
        url("../images/hero-serverraum.png") center right / cover no-repeat;
}

/* Altes Raster und rote Punkte ausblenden */
.hero::before,
.hero::after {
    display: none;
}

/* Text weiterhin über dem Hintergrund */
.hero-content {
    position: relative;
    z-index: 2;
}
/* ===== BILDMATERIAL / GALLERY IMAGES ===== */

.gallery-card {
    position: relative;
    overflow: hidden;
    min-height: 260px;
    background: #0b1016;
}

.gallery-card img {
    width: 100%;
    height: 100%;
    min-height: 260px;
    object-fit: cover;
    display: block;
}

.gallery-card figcaption {
    position: absolute;
    inset: auto 0 0 0;
    padding: 36px 16px 14px;
    background: linear-gradient(
        transparent,
        rgba(0, 0, 0, 0.92)
    );
    color: #fff;
}

.gallery-card figcaption b,
.gallery-card figcaption span {
    display: block;
}

.gallery-card figcaption span {
    margin-top: 4px;
}
.legal-card h1 {
    font-size: clamp(2.2rem, 5vw, 4.2rem);
    line-height: 1;
    overflow-wrap: anywhere;
}
