/* ==========================================================================
   Unterseiten im neuen Stil (ohne 3D): ruhige Kopfbereiche mit Linienmotiv, duenne Linien statt Flaechen, Mono-Beschriftungen.
   Aufbauend auf neo.min.css; stylt das bestehende Klassen-Vokabular der Unterseiten um, Inhalte bleiben unveraendert.
   ========================================================================== */
.pg{--beige2:var(--c-beige-100);--blue3:var(--c-accent-inv);--gray:var(--c-beige-mute);--white:var(--c-beige-100);--radius:14px;--blue:var(--c-accent);--blue2:var(--c-ink-2)}
.pg-main{position:relative;z-index:1;overflow-x:clip;background:var(--c-ink)}
.pg-main>section,.pg-main>div[class*="section"],.pg-main>div[class$="-hero"]{position:relative}
.pg-main>section{padding-inline:var(--pad)!important;padding-block:clamp(56px,8vw,112px)!important;background:none!important}
.pg-main>section+section{border-top:1px solid var(--line)}
.pg-main>section>*,.pg-main .wrap-inner{max-width:var(--max);margin-inline:auto}
.pg-main>section[style*="max-width"]{max-width:none!important}
.pg .text-center{text-align:left}
.pg .text-center .section-sub{margin-inline:0}

/* Kopfbereich mit Linienmotiv */
.page-hero,.sp-hero,.inseln-hero,.partner-hero,.hero-inner{position:relative;isolation:isolate;padding:calc(var(--header-h) + clamp(72px,12vw,150px)) var(--pad) clamp(56px,8vw,104px)!important;text-align:left!important;border-bottom:1px solid var(--line);overflow:hidden;min-height:0!important;display:block!important;background:none!important}
.page-hero::before,.sp-hero::before,.inseln-hero::before,.partner-hero::before{content:"";position:absolute;inset:0;z-index:-1;background:repeating-linear-gradient(0deg,transparent 0 63px,rgba(217,214,195,.045) 63px 64px),repeating-linear-gradient(90deg,transparent 0 63px,rgba(217,214,195,.035) 63px 64px);-webkit-mask-image:linear-gradient(90deg,transparent,#000 85%);mask-image:linear-gradient(90deg,transparent,#000 85%)}
.page-hero::after,.sp-hero::after,.inseln-hero::after,.partner-hero::after{content:"";position:absolute;z-index:-1;right:-4%;bottom:0;width:min(62%,780px);height:100%;opacity:.7;background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 800 420' fill='none' stroke='%2362a8f4' stroke-width='1.3'%3E%3Cpath d='M0 300C90 270 150 330 240 300S390 250 470 290 640 330 800 270' stroke-opacity='.55'/%3E%3Cpath d='M0 250C90 220 150 280 240 250S390 200 470 240 640 280 800 220' stroke-opacity='.35'/%3E%3Cpath d='M0 200C90 170 150 230 240 200S390 150 470 190 640 230 800 170' stroke-opacity='.22'/%3E%3Cpath d='M0 150C90 120 150 180 240 150S390 100 470 140 640 180 800 120' stroke-opacity='.14'/%3E%3Ccircle cx='470' cy='290' r='5' fill='%2362a8f4' stroke='none'/%3E%3Ccircle cx='470' cy='290' r='22' stroke-opacity='.4'/%3E%3C/svg%3E") right bottom/contain no-repeat}
.page-hero h1,.sp-hero h1,.inseln-hero h1,.partner-hero h1,.hero-title{font-weight:200;font-size:clamp(2.3rem,1.1rem + 4.8vw,5.4rem);letter-spacing:-.04em;line-height:1.02;max-width:20ch;margin:0 0 28px;text-wrap:balance}
.page-hero p,.sp-hero-lead,.hero-desc,.inseln-hero p,.partner-hero p{font-weight:300;font-size:clamp(1.1rem,.95rem + .6vw,1.5rem);line-height:1.4;color:var(--mute);max-width:56ch;margin:0}
.accent,.pg .accent{color:var(--c-accent-inv)}

/* Typografie */
.section-tag,.pg .section-tag{display:inline-block;margin:0 0 22px;padding:0;border:0;background:none;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;font-weight:400;color:var(--c-accent-inv)}
.section-title,.pg-main h2{font-weight:200;font-size:clamp(1.9rem,1.1rem + 2.8vw,3.8rem);letter-spacing:-.035em;line-height:1.06;margin:0 0 18px;text-wrap:balance;color:var(--fg)}
.section-sub{font-weight:300;font-size:clamp(1.05rem,.95rem + .45vw,1.35rem);line-height:1.45;color:var(--mute);max-width:60ch;margin:0 0 clamp(32px,4vw,56px)}
.pg-main h3{font-weight:300;letter-spacing:-.02em;font-size:clamp(1.15rem,1rem + .5vw,1.5rem);line-height:1.2;margin:0 0 10px;color:var(--fg)}
.pg-main p,.pg-main li{font-weight:300;color:var(--mute);line-height:1.6}
.pg-main a:not(.btn){color:var(--c-accent-inv)}
.pg-main a:not(.btn):hover{color:var(--c-beige)}
.pg-main strong{font-weight:500;color:var(--fg)}

/* Karten: duenne Linien statt Flaechen */
.glass,.service-card,.svc-card,.paket-card,.partner-why-card,.partner-feature,.sp-product-card,.sp-intro-card,.branchen-card,.contact-item,.about-stat,.island-tile,.inseln-service-card,.case-card,.team-card-new,.challenge-card,.bos-highlight-card,.call-banner,.cta-card,.case-cta-card,.stat-item,.case-stack-item,.partner-showcase-inner{background:none!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;border:1px solid var(--line)!important;border-radius:16px!important;box-shadow:none!important;transform:none;transition:border-color 300ms var(--ease),transform 300ms var(--ease)}
.service-card:hover,.svc-card:hover,.branchen-card:hover,.partner-feature:hover,.sp-product-card:hover,.contact-item:hover{border-color:rgba(217,214,195,.4)!important}
.service-card,.paket-card,.partner-why-card,.sp-intro-card,.challenge-card,.inseln-service-card,.island-tile{padding:clamp(20px,2.4vw,32px)!important}
.grid-3{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr));gap:var(--gutter)}
.service-icon,.svc-icon,.paket-icon,.partner-feature-icon,.branchen-card-icon,.contact-item-icon,.island-icon,.sp-product-icon,.sp-intro-icon,.challenge-icon,.case-stack-icon,.bos-highlight-icon,.inseln-highlight-icon,.sp-prospekt-icon,.partner-why-icon,.dropdown-icon{display:inline-grid;place-items:center;width:46px;height:46px;margin-bottom:18px;border:1px solid var(--line);border-radius:12px;color:var(--c-accent-inv);font-size:0;line-height:0;background:none}
.ei{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;flex:none}
p .ei,span .ei,a .ei,li .ei,h3 .ei{display:inline-block;width:1.05em;height:1.05em;vertical-align:-.15em;margin-right:.35em}
[class*="-icon"] .ei{width:22px;height:22px;margin:0;vertical-align:baseline}
[class*="glow"],.stage-aurora,.partner-hero-aurora,.dsgvo-canvas,.wave-container,.svc-spot,.stage-hint,.sp-carousel-hint{display:none!important}

/* Buttons und Aktionen */
.btn-primary{background:var(--c-accent-inv);color:var(--c-ink)}
.btn-outline{border:1px solid var(--line);color:var(--fg);background:none}
.btn-outline:hover{border-color:var(--c-beige)}
.btn-full{width:100%}
.cta-actions,.sp-hero-actions,.hero-actions,.inseln-hero-btns,.case-cta-actions{display:flex;flex-wrap:wrap;gap:12px 16px}
.cta-card,.case-cta-card{padding:clamp(32px,6vw,80px)!important;text-align:left!important}
.cta-card h2,.case-cta-card h2{max-width:20ch}

/* Pakete */
.pakete-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:var(--gutter)}
.paket-featured{border-color:var(--c-accent-inv)!important}
.paket-flag{display:inline-block;margin-bottom:14px;padding:3px 12px;border:1px solid var(--c-accent-inv);border-radius:999px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent-inv)}
.paket-name{font-weight:200;font-size:clamp(1.8rem,1.2rem + 1.6vw,2.8rem);letter-spacing:-.03em;color:var(--fg)}
.paket-sub{color:var(--mute);margin:6px 0 18px}
.paket-features{list-style:none;padding:0;margin:0 0 22px;display:grid;gap:8px}
.paket-features li{padding-top:8px;border-top:1px solid var(--line)}

/* Formulare */
.contact-wrap{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:clamp(28px,5vw,80px);align-items:start}
.contact-info{display:grid;gap:14px}
.contact-item{display:flex;gap:16px;align-items:flex-start;padding:18px 20px!important}
.contact-item-icon{flex:none;margin:0}
.contact-item h4,.contact-item h3{margin:0 0 4px;font-size:1rem;font-weight:400}
.form-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,240px),1fr));gap:16px}
.form-group{display:grid;gap:8px;margin-bottom:18px}
.form-group label{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.pg input[type=text],.pg input[type=email],.pg input[type=tel],.pg select,.pg textarea{width:100%;padding:14px 0;border:0;border-bottom:1px solid var(--line);border-radius:0;background:none;color:var(--fg);font:inherit;font-weight:300;font-size:1.0625rem;transition:border-color 300ms}
.pg select option{background:var(--c-ink-2);color:var(--fg)}
.pg input:focus,.pg select:focus,.pg textarea:focus{outline:none;border-bottom-color:var(--c-accent-inv)}
.pg textarea{min-height:140px;resize:vertical}
.dsgvo-row{display:flex;gap:12px;align-items:flex-start;margin:6px 0 22px;color:var(--mute);font-size:.9375rem}
.dsgvo-row input{width:20px;height:20px;margin-top:2px;accent-color:var(--c-accent-inv)}
.dsgvo-label,.dsgvo-row label{font-weight:300;text-transform:none;letter-spacing:0;font-family:inherit;font-size:.9375rem;color:var(--mute)}
.btn-submit{cursor:pointer}
.form-msg{padding:14px 18px;border:1px solid var(--line);border-radius:12px;margin-top:14px}
.form-msg.is-ok{border-color:#6fa88b;color:#a9d2bd}
.form-msg.is-err{border-color:#b86a63;color:#e3a9a3}
.form-done{padding:48px 8px}

/* Rechtstexte */
.legal-wrap{max-width:calc(760px + 2 * var(--pad))!important;margin-inline:max(0px,calc((100% - var(--max)) / 2))!important;padding:calc(var(--header-h) + clamp(56px,9vw,110px)) var(--pad) clamp(56px,8vw,112px)}
.legal-wrap h1{font-weight:200;font-size:clamp(2.2rem,1.2rem + 3.6vw,4.4rem);letter-spacing:-.04em;line-height:1.04;margin:0 0 36px}
.legal-wrap h2{font-size:clamp(1.4rem,1.1rem + 1vw,2rem);margin-top:48px}
.legal-wrap h3{margin-top:28px}
.legal-wrap p,.legal-wrap li{font-size:1.0625rem}
.legal-wrap ul{padding-left:1.2em}

/* Securepoint, Partner, Fall-Seiten, Ueber uns (Bausteine) */
.sp-hero-inner,.partner-hero-content,.inseln-hero-content,.hero-content{max-width:var(--max);margin-inline:auto}
.sp-hero-logo{height:36px;width:auto;margin-bottom:28px;opacity:.9}
.sp-hero-badges,.sp-badges,.case-tags,.case-meta,.svc-tags,.bos-tag-list,.team-skills{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0}
.sp-badge,.svc-tags span,.case-tags span,.bos-tag-special,.team-skills span,.case-paket,.partner-showcase-badge,.hero-badge{display:inline-block;padding:4px 12px;border:1px solid var(--line);border-radius:999px;font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.1em;text-transform:uppercase;color:var(--mute);background:none}
.sp-intro-grid,.partner-why-grid,.branchen-cards-grid,.islands-grid,.challenges,.sp-products,.team-grid-new,.about-stats,.partner-features,.inseln-services,.case-stack{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,260px),1fr));gap:var(--gutter)}
.partners-band{display:flex;flex-wrap:wrap;gap:20px 40px;align-items:center}
.partners-band-logo img{height:34px;width:auto;max-width:150px;object-fit:contain;opacity:.9}
.about-stat-num,.stat-num{font-weight:200;font-size:clamp(2.6rem,1.4rem + 4vw,5rem);letter-spacing:-.05em;line-height:1;color:var(--fg)}
.about-stat-label,.stat-label{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}
.team-photo-wrap,.team-photo-inner{border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.team-photo-wrap img,.team-photo-inner img{width:100%;height:auto;display:block;filter:grayscale(.2) contrast(1.02)}
.team-avatar-circle{width:64px;height:64px;border-radius:50%;border:1px solid var(--line);display:grid;place-items:center;font-weight:200;font-size:1.4rem;color:var(--fg);background:none}
.map-wrap{border:1px solid var(--line);border-radius:18px;overflow:hidden}
.map-wrap iframe{display:block;width:100%;filter:grayscale(.9) invert(.92) contrast(.9) hue-rotate(180deg)}
.sp-carousel,.sp-impressions{overflow:hidden}
.sp-carousel-track,.sp-impressions-track{display:flex;gap:16px;width:max-content;animation:sp-scroll 60s linear infinite}
.sp-carousel-track:hover,.sp-impressions-track:hover{animation-play-state:paused}
.sp-carousel-item,.sp-impressions-item{flex:none;width:clamp(220px,24vw,320px);border:1px solid var(--line);border-radius:14px;overflow:hidden}
.sp-carousel-item img,.sp-impressions-item img{width:100%;height:100%;object-fit:cover;display:block}
@keyframes sp-scroll{to{transform:translate3d(var(--sp-shift,-50%),0,0)}}
.sp-prospekt-inner{border:1px solid var(--line);border-radius:18px;padding:clamp(28px,5vw,64px)}
.call-banner,.bos-highlight-card{display:flex;flex-wrap:wrap;gap:20px 32px;align-items:center;padding:clamp(24px,4vw,48px)!important}
.sp-btn-text{display:inline}
.case-card{padding:clamp(24px,4vw,56px)!important;margin-bottom:var(--gutter)}
.case-header{display:flex;flex-wrap:wrap;gap:16px 24px;align-items:center;margin-bottom:20px}
.case-logo{max-height:56px;width:auto;filter:grayscale(1) brightness(1.7);opacity:.9}
.case-logo-wrap{display:grid;place-items:center;padding:12px 16px;border:1px solid var(--line);border-radius:12px}
.case-tagline{color:var(--c-accent-inv);font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase}
.branchen-card-link{display:inline-flex;gap:6px;margin-top:10px;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.hero-stats{display:flex;flex-wrap:wrap;gap:24px 48px;margin-top:36px}

/* Einblenden */
.js .fade-in{opacity:0;transform:translate3d(0,var(--shift),0);transition:opacity var(--dur-base) var(--ease) calc(var(--i,0)*var(--stagger)),transform var(--dur-base) var(--ease) calc(var(--i,0)*var(--stagger))}
.js .fade-in.is-in,.js.reveal-all .fade-in{opacity:1;transform:none}

@media(max-width:900px){.contact-wrap,.partner-showcase{grid-template-columns:1fr}.partner-showcase.reverse>*:first-child{order:0}}
@media(prefers-reduced-motion:reduce){.sp-carousel-track,.sp-impressions-track{animation:none;flex-wrap:wrap;width:auto}}
.legal-wrap p a,.legal-wrap li a{text-decoration:underline;text-underline-offset:.2em;text-decoration-thickness:1px}
.legal-stand{margin-top:2.5rem;padding-top:2rem;border-top:1px solid var(--line);color:var(--c-beige-mute);font-size:.875rem}
.contact-wrap{max-width:var(--max);margin-inline:auto;padding:clamp(56px,8vw,112px) var(--pad)}
.dsgvo-row{cursor:pointer}
.dsgvo-row a{color:var(--c-accent-inv);text-decoration:underline;text-underline-offset:.2em}
.dsgvo-row a{font-family:inherit;letter-spacing:0;text-transform:none}
.services-stage{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(min(100%,440px),1fr));gap:16px;max-width:var(--max);margin-inline:auto;padding:0;height:auto!important;position:static!important;transform:none!important;perspective:none!important}
.services-stage .svc-card{position:static!important;transform:none!important;width:auto!important;margin:0!important;opacity:1!important}

.partners-band{margin-top:clamp(32px,4vw,56px);padding-top:28px;border-top:1px solid var(--line)}
.partner-showcase{display:block!important;max-width:var(--max);margin-inline:auto;padding:clamp(28px,4vw,56px) var(--pad);border-top:1px solid var(--line);position:relative}
.partner-showcase-inner{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:clamp(24px,4vw,64px);align-items:start;padding:clamp(24px,3vw,44px)!important}
.partner-showcase-inner.reverse{grid-template-columns:minmax(0,1.45fr) minmax(0,.55fr)}
.partner-showcase-inner.reverse>.partner-showcase-logo{order:2}
.partner-showcase-logo{display:flex;align-items:flex-start;position:static!important}
.partner-showcase-logo img{max-height:84px;max-width:240px;width:auto;height:auto;object-fit:contain;opacity:.95}
.partner-showcase-text{display:block}
.partner-showcase-text h2{margin:14px 0 12px}
.partner-showcase-text p{margin:0 0 14px}
.partner-features{margin-top:22px;grid-template-columns:repeat(auto-fit,minmax(min(100%,300px),1fr))!important;gap:12px!important}
.partner-feature{display:flex!important;gap:14px;align-items:flex-start;padding:14px 16px!important}
.partner-feature-icon{flex:none;margin:0!important;width:38px;height:38px}
.partner-feature>div{display:grid;gap:2px;min-width:0}
.partner-feature strong{font-weight:400;color:var(--fg)}
.partner-feature span{color:var(--mute);font-size:.9375rem}
@media(max-width:860px){.partner-showcase-inner,.partner-showcase-inner.reverse{grid-template-columns:1fr}.partner-showcase-inner.reverse>.partner-showcase-logo{order:0}}
.partners-band-logo img[src$=".svg"]{height:48px}
.partner-features+.btn,.partner-features+a{margin-top:22px}
.about-stats{margin-top:clamp(28px,4vw,48px)}
.about-stat{display:flex;flex-direction:column;align-items:flex-start;gap:10px;padding:clamp(18px,2.4vw,28px)!important}
.about-stat-num{display:block}
.team-grid-new{align-items:stretch}
.branchen-card h2{margin:0 0 8px;font-size:1.25rem;font-weight:400;letter-spacing:-.01em}
.pg-main>section[style*="6vw"]{padding-block:clamp(48px,6vw,88px)!important;padding-inline:var(--pad)!important;background:none!important;max-width:var(--max);margin-inline:auto;border-top:1px solid var(--line)}
.pg-main>section[style*="6vw"]:first-of-type{border-top:0}
.pg-main [style*="max-width:1100px"],.pg-main [style*="max-width:900px"]{max-width:none!important;margin-inline:0!important}
.ei-check{width:1em;height:1em;vertical-align:-.12em;margin-right:.25em;color:var(--c-accent-inv)}
:root{--beige:#ece9dc;--beige2:#d9d6c3;--blue3:#62a8f4;--radius:16px}

/* Runde 6 E1: Securepoint-Rot auf den Securepoint-Seiten (wie die urspruengliche Seite) */
.sp-hero h1 .accent{color:var(--c-securepoint)}
.partner-showcase{overflow:hidden}
.partner-showcase [class*="partner-showcase-glow"]{display:block!important;position:absolute;inset:0;z-index:0;pointer-events:none;opacity:.7}
.partner-showcase-inner{position:relative;z-index:1}
.partner-glow-1{background:radial-gradient(ellipse 35% 40% at 80% 30%,rgba(58,99,137,.25),transparent 65%)}
.partner-glow-2{background:radial-gradient(ellipse 35% 40% at 20% 40%,rgba(220,170,120,.18),transparent 65%)}
.partner-glow-3{background:radial-gradient(ellipse 35% 40% at 80% 50%,rgba(255,200,80,.18),transparent 65%)}
.partner-glow-4,.partner-glow-4r{background:radial-gradient(ellipse 35% 40% at 80% 50%,rgba(80,160,250,.22),transparent 65%)}
.partner-glow-5{background:radial-gradient(ellipse 35% 40% at 80% 50%,rgba(200,60,60,.18),transparent 65%)}
.partner-glow-6{background:radial-gradient(ellipse 35% 40% at 20% 50%,rgba(240,130,30,.18),transparent 65%)}
.partner-glow-1l{background:radial-gradient(ellipse 35% 40% at 20% 50%,rgba(58,99,137,.25),transparent 65%)}
.sp-faas{padding-block:clamp(48px,6vw,88px)!important;border-top:1px solid var(--line)}
.sp-faas-inner{max-width:var(--max);margin-inline:auto}
.sp-faas-inner p{max-width:68ch;margin:18px 0 0;color:var(--mute);font-size:1.0625rem;line-height:1.6}
.flag-i{display:inline-flex;vertical-align:-.16em;margin-right:.5em}.flag-i .flag{width:1.5em;height:1em;border-radius:2px}
.legal-note{margin:0 0 28px;padding:12px 16px;border:1px solid var(--line);border-radius:12px;color:var(--mute);font-size:.9375rem}

/* ==========================================================================
   Runde 8: Abstandssystem (Tokens in nn.css: --pad, --max, --sp-box, --sp-eyebrow, --sp-text, --sp-media)
   ========================================================================== */
/* Ueberschriften brechen um statt abzuschneiden */
.pg h1,.pg h2,.pg h3,.pg h4,.pg .section-title{overflow-wrap:break-word;-webkit-hyphens:none;hyphens:none;text-wrap:balance}
/* Boxen: Innenabstand groesser als der Eckenradius */
.pg-main :is(.glass,.service-card,.svc-card,.paket-card,.partner-why-card,.sp-product-card,.sp-intro-card,.branchen-card,.about-stat,.case-card,.team-card-new,.bos-highlight-card,.call-banner,.cta-card,.case-cta-card,.stat-item,.case-stack-item,.partner-showcase-inner,.contact-item,.partner-feature,.contact-form){padding:var(--sp-box)!important}
/* Eyebrow, Pille, Tag: eigener Block mit festem Abstand zur Ueberschrift */
.pg-main :is(.section-tag,.partner-showcase-badge,.bos-tag-special,.case-paket){display:table;margin:0 0 var(--sp-eyebrow)!important}
.pg-main :is(.section-tag,.partner-showcase-badge,.bos-tag-special,.case-paket)+:is(h1,h2,h3){margin-top:0!important}
.pg-main .sp-hero-badges{margin-bottom:calc(var(--sp-eyebrow) + 6px)!important}
.pg-main .bos-highlight-header{display:block!important}
.pg-main .case-meta{display:block!important}
/* Ueberschrift zu Fliesstext */
.pg-main :is(h1,h2,h3)+p{margin-top:var(--sp-text)}
.pg-main :is(h1,h2,h3){margin-bottom:0}
.pg-main .page-hero h1,.pg-main .sp-hero h1,.pg-main .partner-hero h1,.pg-main .inseln-hero h1{margin-bottom:var(--sp-text)!important}
/* Bild zu Text darunter */
.pg-main figure figcaption,.pg-main :is(img,picture)+:is(p,h3,h4,figcaption){margin-top:var(--sp-media)}
.pg-main :is(.page-hero,.sp-hero,.partner-hero,.inseln-hero) .section-tag{margin-bottom:clamp(24px,1.4vw + 14px,36px)!important}
/* Runde 8 N3: keine aufaddierten Raender. Abschnitte, die selbst Rand und Maximalbreite tragen, rechnen den Rand in die Breite ein */
.pg-main :is(.contact-wrap,.partner-showcase){max-width:calc(var(--max) + 2 * var(--pad))!important}
.pg-main>section[style*="6vw"]{max-width:none!important}
.legal-wrap{max-width:none!important;margin-inline:0!important;padding-inline:max(var(--pad),calc((100% - var(--max)) / 2))!important}
.legal-wrap>*{max-width:78ch}
/* Runde 8 N3: alte, mittig zentrierte Inline-Container nutzen die volle Abschnittsbreite; festes Zwei-Spalten-Raster wird fliessend (lief am Handy ueber) */
.pg-main [style*="repeat(2,1fr)"]{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))!important;max-width:none!important;margin-inline:0!important;gap:clamp(24px,2vw,32px)!important}
.pg-main [style*="max-width:520px"]{max-width:640px!important;margin-inline:0!important}
.pg-main [style*="max-width:800px"]{max-width:none!important;margin-inline:0!important;text-align:left!important}
.pg-main [style*="max-width:800px"]>*{max-width:70ch}
.pg-main [style*="max-width:760px"]{margin-inline:0!important}
.pg-main :is(.grid-3,.branchen-cards-grid,.sp-intro-grid,.partner-why-grid,.team-grid-new,.about-stats,.sp-products,.case-stack){gap:clamp(24px,2vw,32px)}
.pg-main [style*="max-width:800px"] :is(.cta-actions,.hero-actions,div[style*="justify-content"]){justify-content:flex-start!important}
/* Zwischenueberschrift nach Fliesstext oder Liste: deutlicher Abstand nach oben */
.pg-main :is(p,ul,ol,.grid-3,.case-stack)+:is(h2,h3,h4){margin-top:clamp(28px,2.4vw,40px)}

/* Runde 8 Punkt 2: Referenzen im Stil der Startseite */
.pg-main .case-section{padding-block:clamp(32px,4vw,64px)!important}
.rf-case{display:grid;gap:clamp(28px,3vw,44px);padding:clamp(24px,3vw,48px);border:1px solid var(--line);border-radius:20px;background:linear-gradient(180deg,rgba(16,26,37,.55),rgba(10,17,25,0) 60%)}
.rf-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:20px clamp(24px,3vw,48px);align-items:center;padding-bottom:clamp(24px,3vw,40px);border-bottom:1px solid var(--line)}
.rf-logo{width:clamp(140px,14vw,210px);height:clamp(80px,7vw,104px);display:grid;place-items:center;padding:18px;border:1px solid var(--line);border-radius:14px}
.rf-logo img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;opacity:.92}
.rf-eyebrow{display:block;margin:0 0 14px;font-family:var(--font-mono);font-size:.75rem;line-height:1.4;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent-inv)}
.pg-main .rf-title h2{margin:0!important;font-size:clamp(1.9rem,1.1rem + 2.4vw,3.4rem)}
.pg-main .rf-title .case-tagline{margin:16px 0 0}
.pg-main .rf-paket .case-paket{display:inline-flex!important;align-items:center;gap:12px;margin:0!important;padding:10px 18px 10px 14px;border:1px solid var(--line);border-radius:999px;font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--fg);white-space:nowrap}
.pg-main .rf-paket .ei{width:30px;height:30px;margin:0;color:var(--c-accent-inv)}
.rf-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:clamp(24px,3vw,64px)}
.pg-main .rf-block h3{margin:0 0 14px!important}
.pg-main .rf-block p{margin:0;max-width:64ch}
.rf-block--tags{align-self:end}
.pg-main .rf-case .case-stack{grid-template-columns:repeat(3,minmax(0,1fr));margin:0}
.pg-main .rf-case .case-stack-item{display:grid;gap:14px;align-content:start}
.pg-main .rf-case .case-stack-item>div{display:grid;gap:6px}
.pg-main .rf-case .case-stack-item strong{font-size:1.0625rem;font-weight:400}
.pg-main .rf-case .case-stack-icon{margin:0}
.rf-all .section-title{margin-bottom:clamp(28px,3vw,44px)!important}
.rf-tiles{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,270px),1fr));gap:clamp(16px,1.6vw,24px)}
.rf-tiles li{display:block}
.pg-main .rf-tile{position:relative;display:grid;align-content:start;gap:6px;height:100%;padding:var(--sp-box);border:1px solid var(--line);border-radius:16px;color:var(--fg);text-decoration:none;transition:border-color .3s var(--ease)}
.rf-tile img{height:52px;width:auto;max-width:190px;object-fit:contain;object-position:left center;margin-bottom:18px;opacity:.9}
.rf-tile-name{font-weight:400;font-size:1.0625rem;line-height:1.3;color:var(--fg)}
.rf-tile .rf-eyebrow{margin:0}
.rf-ext{position:absolute;top:var(--sp-box);right:var(--sp-box);width:18px!important;height:18px!important;color:var(--mute)}
.pg-main a.rf-tile:hover{border-color:rgba(217,214,195,.45);color:var(--fg)}
@media(max-width:900px){.rf-head{grid-template-columns:1fr;align-items:start}.rf-grid{grid-template-columns:1fr}.pg-main .rf-case .case-stack{grid-template-columns:1fr}.pg-main .rf-paket .case-paket{white-space:normal}}
.pg-main .rf-case .case-stack-item span:not(.case-stack-icon){font-size:.9375rem;line-height:1.5;color:var(--mute)}
.rf-tiles{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:900px){.rf-tiles{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.rf-tiles{grid-template-columns:1fr}}
@media(max-width:560px){.rf-case{border:0;padding:0;background:none;border-radius:0}}

/* Runde 8 Punkt 3 und N7: Kontaktseite. Buchungsbereich, Formular links, Kontaktdaten rechts */
.bk-section{padding-inline:var(--pad)!important}
.bk-inner{max-width:var(--max);margin-inline:auto;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:24px clamp(32px,5vw,96px);align-items:center;padding:clamp(28px,3.4vw,52px);border:1px solid rgba(98,168,244,.4);border-radius:20px;background:linear-gradient(120deg,rgba(98,168,244,.10),rgba(10,17,25,0) 70%)}
.bk-text h2{margin:0 0 var(--sp-text)!important;font-size:clamp(1.9rem,1.1rem + 2.4vw,3.2rem)}
.bk-text p{margin:0;max-width:52ch}
.bk-actions{display:grid;gap:14px;justify-items:start}
.bk-actions .btn{min-height:52px}
.bk-note{margin:0;font-size:.875rem;color:var(--mute);max-width:52ch}
.bk-embed{max-width:var(--max);margin:24px auto 0;border:1px solid var(--line);border-radius:16px;overflow:hidden}
.bk-embed iframe{display:block;width:100%;height:min(80vh,760px);border:0;background:#fff}
@media(max-width:900px){.bk-inner{grid-template-columns:1fr}.bk-actions,.bk-actions .btn{width:100%}}

.pg-main .contact-wrap{grid-template-columns:minmax(0,7fr) minmax(0,5fr)!important;gap:clamp(32px,5vw,96px)!important;align-items:start}
.pg-main .contact-form{order:-1;padding:clamp(24px,3vw,48px)!important;border-radius:20px!important}
.pg-main .contact-form>h3{font-size:clamp(1.5rem,1rem + 1.4vw,2.2rem);font-weight:200;margin:0 0 clamp(20px,2vw,28px)!important}
.pg-main .contact-info{display:block}
.pg-main .contact-info h2{font-size:clamp(1.6rem,1rem + 1.8vw,2.6rem);margin:0 0 var(--sp-text)!important}
.pg-main .contact-info>div:first-child p{margin:0 0 clamp(20px,2vw,32px)!important}
.pg-main .contact-info .contact-item{border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:18px 0!important;gap:18px}
.pg-main .contact-info .contact-item:last-child{border-bottom:1px solid var(--line)!important}
.pg-main .contact-info .contact-item h3{font-family:var(--font-mono);font-size:.6875rem;letter-spacing:.14em;text-transform:uppercase;color:var(--mute);font-weight:400;margin:0 0 6px!important}
.pg-main .contact-info .contact-item p{margin:0;color:var(--fg)}
.pg-main .contact-info .contact-item-icon{width:40px;height:40px;margin:0}
@media(max-width:900px){.pg-main .contact-wrap{grid-template-columns:1fr!important}}

/* Felder: Beschriftung ueber dem Feld, ruhige Rahmenlinie, deutlicher Fokus, einheitliche Hoehen */
.pg-main .form-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 20px}
@media(max-width:600px){.pg-main .form-row{grid-template-columns:1fr}}
.pg-main .form-group{display:grid;gap:8px;margin:0 0 20px}
.pg-main .form-group>label:not(.dsgvo-row){font-family:inherit;font-size:.9375rem;letter-spacing:0;text-transform:none;color:var(--fg);font-weight:400}
.pg-main :is(input[type=text],input[type=email],input[type=tel],select,textarea){min-height:52px;padding:13px 16px!important;border:1px solid rgba(217,214,195,.22)!important;border-radius:12px!important;background:rgba(217,214,195,.03)!important;color:var(--fg);font:inherit;font-size:1rem;line-height:1.4;transition:border-color .2s,box-shadow .2s}
.pg-main :is(input,select,textarea)::placeholder{color:rgba(217,214,195,.42)}
.pg-main :is(input[type=text],input[type=email],input[type=tel],select,textarea):hover{border-color:rgba(217,214,195,.4)!important}
.pg-main :is(input[type=text],input[type=email],input[type=tel],select,textarea):focus-visible,.pg-main :is(input,select,textarea):focus{outline:none;border-color:var(--c-accent-inv)!important;box-shadow:0 0 0 3px rgba(98,168,244,.35)}
.pg-main select{appearance:none;-webkit-appearance:none;padding-right:44px!important;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23d9d6c3' stroke-width='1.6' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M6 9l6 6 6-6'/%3E%3C/svg%3E")!important;background-repeat:no-repeat!important;background-position:right 14px center!important;background-size:18px!important}
.pg-main textarea{min-height:160px;resize:vertical}
.pg-main [aria-invalid="true"]{border-color:#d98a82!important}
.pg-main .field-err{margin:0;font-size:.875rem;line-height:1.4;color:#eab0a9}
.pg-main .dsgvo-row{display:flex;gap:14px;align-items:flex-start;min-height:44px;margin:4px 0 0;cursor:pointer}
.pg-main .dsgvo-row input{flex:none;width:22px;height:22px;margin:1px 0 0;accent-color:var(--c-accent-inv)}
.pg-main .dsgvo-row input:focus-visible{outline:2px solid var(--c-accent-inv);outline-offset:3px}
.pg-main .dsgvo-label{font-size:.9375rem;line-height:1.5;color:var(--mute);min-width:0;overflow-wrap:anywhere}
.pg-main .btn-submit{min-height:52px;margin-top:12px;padding-inline:28px}
@media(max-width:600px){.pg-main .btn-submit{width:100%}}
.pg-main .form-msg{margin:16px 0 0;padding:14px 18px;border-radius:12px;font-size:.9375rem;line-height:1.5}
.pg-main .form-msg[hidden]{display:none}
.pg-main .form-done{padding:8px 0}
.pg-main .form-done h3{font-weight:300;font-size:clamp(1.4rem,1rem + 1.2vw,2rem);margin:0 0 12px!important}
.pg-main :is(.bk-embed-btn,.bk-note,.bk-embed)[hidden]{display:none!important}
.pg-main .dsgvo-row,.pg-main .dsgvo-row .dsgvo-label,.pg-main .dsgvo-row a{font-family:inherit!important;letter-spacing:0!important;text-transform:none!important}

/* Runde 8 Punkt 4: Ueber uns. Teamfoto kleiner neben der Bildunterschrift, Portraets in den Kreisen, Innenabstaende */
.pg-main .team-photo-wrap{display:grid!important;grid-template-columns:minmax(0,640px) minmax(0,1fr);gap:clamp(24px,4vw,64px);align-items:end;border:0!important;border-radius:0!important;overflow:visible!important;margin:0 0 clamp(40px,5vw,72px)!important;max-width:none}
.pg-main .team-photo-inner{border-radius:18px;overflow:hidden;border:1px solid var(--line)}
.pg-main .team-photo-wrap figcaption{display:grid;gap:10px;margin:0!important;padding:0 0 8px!important;border:0}
.pg-main .team-photo-wrap figcaption strong{font-weight:300;font-size:clamp(1.3rem,1rem + 1vw,1.9rem);letter-spacing:-.02em;color:var(--fg)}
.pg-main .team-photo-wrap figcaption strong span{color:var(--mute);font-weight:300}
.pg-main .team-photo-sub{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.14em;text-transform:uppercase;color:var(--c-accent-inv)}
@media(max-width:900px){.pg-main .team-photo-wrap{grid-template-columns:1fr}.pg-main .team-photo-wrap figcaption{padding:0!important}}
.pg-main .team-card-new{display:grid;grid-template-columns:112px minmax(0,1fr);gap:var(--sp-box);align-items:start}
.team-portrait{width:112px;height:112px;border-radius:50%;object-fit:cover;display:block;border:1px solid rgba(217,214,195,.35);box-shadow:0 0 0 6px rgba(217,214,195,.05)}
.pg-main .team-info h3{margin:0 0 8px!important}
.pg-main .team-role{font-family:var(--font-mono);font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:var(--c-accent-inv);margin:0 0 var(--sp-text)}
.pg-main .team-info p{margin:0 0 var(--sp-text)}
@media(max-width:600px){.pg-main .team-card-new{grid-template-columns:1fr}.team-portrait{width:96px;height:96px}}
.pg-main .story-wrap p{max-width:72ch}
.pg-main p+p{margin-top:1em}

/* Runde 8 Punkt 5: Securepoint-Logo groesser, Partner-Logos mittig und gleich gross, Flagge bei Made in Germany */
.pg-main .sp-hero-logo{height:clamp(64px,5vw,92px);width:auto;margin:0 0 clamp(28px,3vw,44px);opacity:.95}
.mig-flag{display:inline-block;width:1.15em;height:.8em;margin:0 .4em 0 0;vertical-align:-.06em;flex:none}
.pg-main .partner-showcase-logo{display:grid!important;place-items:center;align-self:stretch;min-height:clamp(160px,14vw,220px);padding:var(--sp-box);border:1px solid var(--line);border-radius:16px}
.pg-main .partner-showcase-logo img{max-height:64px!important;max-width:min(100%,220px)!important;width:auto;height:auto;object-fit:contain}
.pg-main .partner-showcase-logo img[src$=".svg"]{max-height:76px!important}
.pg-main .sp-intro-icon .flag,.pg-main .sp-intro-icon .flag-i{display:block;width:26px;height:18px}
.pg-main .bos-highlight-header{margin-bottom:var(--sp-text)!important}
/* Runde 8 Punkt 10: aufeinanderfolgende Partner-Kacheln ohne doppelte Abschnittsabstaende */
.pg-main>section.partner-showcase{padding-block:clamp(14px,1.6vw,24px)!important;border-top:0!important}
.pg-main>section.partner-showcase:first-of-type,.pg-main>.partner-hero+section.partner-showcase{padding-top:clamp(48px,6vw,88px)!important}
/* Runde 8: Klassen statt Attribut-Selektoren fuer die alten Inline-Breiten (style.setProperty schreibt das Attribut neu) */
.pg-main .r8-grid2{grid-template-columns:repeat(auto-fit,minmax(min(100%,360px),1fr))!important;gap:clamp(24px,2vw,32px)!important}
.pg-main .r8-narrow{max-width:640px}
.pg-main .rf-eyebrow{margin-bottom:24px}
@media(max-width:1100px){.pg-main .team-card-new{grid-template-columns:1fr}}
@media(max-width:700px){.neo .cmp th,.neo .cmp td{padding-inline:6px!important}}
