/* AIK Produktionsstand V43 */
:root{--ink:#14231e;--forest:#15382e;--forest2:#1d4a3c;--green:#78ad54;--green2:#9bc781;--paper:#f3f6f3;--white:#fff;--muted:#65736c;--line:#d8e0db;--max:1180px;--radius:18px;--shadow:0 18px 50px rgba(18,48,39,.10)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--paper);line-height:1.6}.skip{position:absolute;left:-9999px;top:0;background:#fff;color:#000;padding:.7rem 1rem;z-index:100}.skip:focus{left:1rem;top:1rem}a{color:inherit}.wrap{width:min(calc(100% - 2.4rem),var(--max));margin:auto}.site-header{position:sticky;top:0;z-index:30;background:rgba(255,255,255,.94);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;gap:1.2rem;min-height:78px}.brand{display:flex;align-items:center;text-decoration:none;font-weight:950;font-size:1.55rem;letter-spacing:-.07em;color:var(--forest)}.brand span{color:var(--green);margin-left:.03em}.primary{margin-left:auto}.primary ul{display:flex;align-items:center;gap:1.35rem;list-style:none;padding:0;margin:0}.primary a{text-decoration:none;font-size:.88rem;font-weight:750;color:#4d5b55}.primary a:hover,.primary a:focus-visible{color:var(--forest)}.header-cta,.btn{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;border-radius:999px;font-weight:850}.header-cta{background:var(--forest);color:#fff;padding:.7rem 1rem;font-size:.82rem}.nav-toggle{display:none;margin-left:auto;border:1px solid var(--line);background:#fff;border-radius:10px;padding:.55rem .7rem;font-weight:800}.crumbs{font-size:.78rem;color:#748079;padding-top:1rem}.crumbs ol{list-style:none;padding:0;margin:0;display:flex;flex-wrap:wrap;gap:.5rem}.crumbs li+li:before{content:"/";margin-right:.5rem;color:#a0aaa5}.crumbs a{text-decoration:none}.hero{background:var(--forest);color:#fff;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(2rem,5vw,5.5rem);align-items:center;padding:clamp(4rem,8vw,7.5rem) 0}.eyebrow{font-size:.75rem;font-weight:900;letter-spacing:.14em;color:var(--green2);text-transform:uppercase}.hero h1{font-size:clamp(2.7rem,5.6vw,5.5rem);line-height:.98;letter-spacing:-.055em;max-width:900px;margin:.8rem 0 1.4rem}.lead{font-size:clamp(1.03rem,1.5vw,1.25rem);color:#d6e0db;max-width:790px}.status-pill{display:inline-flex;border:1px solid #55766a;border-radius:999px;padding:.4rem .7rem;color:var(--green2);font-size:.72rem;font-weight:900;letter-spacing:.08em;margin-top:1rem}.hero-art{min-height:430px;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);position:relative;background:radial-gradient(circle at 70% 20%,rgba(155,199,129,.24),transparent 35%),linear-gradient(145deg,#244a3d,#102920);overflow:hidden;box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}.hero-art:before,.hero-art:after{content:"";position:absolute;inset:10%;border:10px solid rgba(255,255,255,.13);transform:skewY(-6deg)}.hero-art:after{inset:24% 12%;border-width:2px;background:repeating-linear-gradient(90deg,transparent 0 54px,rgba(255,255,255,.08) 55px 57px),repeating-linear-gradient(0deg,transparent 0 58px,rgba(255,255,255,.07) 59px 61px)}.asset-tag{position:absolute;background:#0d241d;border-left:3px solid var(--green);padding:.55rem .7rem;font-size:.72rem;font-weight:900;z-index:3}.tag1{left:8%;top:18%}.tag2{right:8%;top:46%}.tag3{left:28%;bottom:11%}.image-brief{position:absolute;left:1rem;right:1rem;bottom:1rem;z-index:4;background:rgba(10,30,24,.88);border:1px solid rgba(255,255,255,.12);padding:.8rem;color:#cbd8d2;font-size:.7rem}.section{padding:clamp(3.5rem,7vw,6rem) 0}.section.white{background:#fff}.section.soft{background:var(--paper)}.section.dark{background:#102b23;color:#fff}.section-head{max-width:830px;margin-bottom:2rem}.section h2{font-size:clamp(2rem,3.6vw,3.3rem);line-height:1.04;letter-spacing:-.04em;margin:.45rem 0 1rem}.section p{color:var(--muted)}.dark p{color:#c5d2cc}.content-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.content-card{background:#fff;border:1px solid var(--line);border-top:4px solid var(--green);border-radius:14px;padding:1.45rem;box-shadow:0 8px 24px rgba(18,48,39,.04)}.content-card h3{font-size:1.2rem;line-height:1.2;margin:.2rem 0 .7rem}.content-card p{font-size:.95rem;margin:0}.process{display:grid;grid-template-columns:repeat(6,1fr);gap:.5rem;margin-top:1.5rem}.process span{border-top:2px solid #4e6b60;padding:.75rem .3rem;font-size:.72rem;font-weight:900;letter-spacing:.05em}.direct{background:#e9f0ea;border-left:4px solid var(--green);border-radius:0 14px 14px 0;padding:1.15rem 1.25rem;margin:1.6rem 0;color:#46564f}.dark .direct{background:#193b30;color:#d9e4df}.faq{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.faq details{background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem 1.1rem}.faq summary{cursor:pointer;font-weight:850;line-height:1.35}.faq p{font-size:.92rem}.related{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}.related a{display:block;background:#fff;border:1px solid var(--line);border-radius:12px;padding:1rem;text-decoration:none;font-weight:800}.related a:hover,.related a:focus-visible{border-color:#8db37a;box-shadow:var(--shadow)}.cta-band{background:#dfe8e1;padding:clamp(3rem,6vw,5rem) 0;text-align:center}.cta-band h2{font-size:clamp(2rem,4vw,3.4rem);margin:.2rem 0 1rem;letter-spacing:-.04em}.btn{background:var(--forest);color:#fff;padding:.85rem 1.2rem}.btn:hover,.btn:focus-visible{background:var(--forest2)}.article-meta{display:flex;gap:.75rem;flex-wrap:wrap;margin-top:1rem;color:#68766f;font-size:.78rem}.form-card{max-width:900px;background:#fff;border:1px solid var(--line);border-radius:16px;padding:clamp(1.2rem,3vw,2rem);box-shadow:var(--shadow)}fieldset{border:0;padding:0;margin:0 0 1.5rem}legend{font-weight:900;font-size:1.2rem;margin-bottom:1rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.field{display:flex;flex-direction:column;gap:.35rem}.field.full{grid-column:1/-1}label{font-weight:800;font-size:.88rem}input,textarea,select{width:100%;font:inherit;border:1px solid #b9c7c0;border-radius:10px;padding:.8rem;background:#fff}textarea{min-height:140px;resize:vertical}input:focus,textarea:focus,select:focus{outline:3px solid rgba(120,173,84,.25);border-color:#6c9f4d}.required{color:#7a332f}.form-note{font-size:.82rem;color:#66736d;background:#f1f5f2;padding:.9rem;border-radius:10px}.form-status{margin-top:1rem;font-weight:800}.site-footer{background:#0c211b;color:#d5dfda;padding:3rem 0}.footer-grid{display:grid;grid-template-columns:1.1fr .9fr .9fr;gap:2rem}.site-footer h2,.site-footer h3{color:#fff}.site-footer p,.site-footer a{color:#b8c7c0;font-size:.88rem}.site-footer ul{list-style:none;padding:0;margin:0}.site-footer a{text-decoration:none}.footer-bottom{border-top:1px solid #2c463c;margin-top:2rem;padding-top:1.2rem;display:flex;gap:1rem;justify-content:space-between;flex-wrap:wrap;font-size:.76rem;color:#8ea198}.gate-note{background:#fff7df;border:1px solid #ead9a7;border-radius:12px;padding:1rem;color:#5d542f}.visually-hidden{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}@media(max-width:920px){.primary{display:none;position:absolute;top:78px;left:0;right:0;background:#fff;border-bottom:1px solid var(--line);padding:1rem 1.2rem}.primary.open{display:block}.primary ul{display:grid;gap:.2rem}.primary a{display:block;padding:.7rem}.nav-toggle{display:block}.header-cta{display:none}.hero-grid{grid-template-columns:1fr}.hero-art{min-height:300px}.content-grid,.related{grid-template-columns:1fr 1fr}.process{grid-template-columns:repeat(3,1fr)}.footer-grid{grid-template-columns:1fr 1fr}}@media(max-width:620px){.wrap{width:min(calc(100% - 1.4rem),var(--max))}.hero h1{font-size:2.65rem}.content-grid,.related,.faq,.form-grid,.footer-grid{grid-template-columns:1fr}.process{grid-template-columns:1fr 1fr}.field.full{grid-column:auto}.hero-art{min-height:260px}.image-brief{font-size:.64rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* V44 · reale Stagingbilder, aktive Navigation, produktionsnahe Kontakt-/Formularkomponenten */
.primary a.is-active{color:var(--forest);position:relative}.primary a.is-active:after{content:"";position:absolute;left:0;right:0;bottom:-.55rem;height:2px;background:var(--green)}
.hero-media{min-height:430px;margin:0;border:1px solid rgba(255,255,255,.18);border-radius:var(--radius);position:relative;overflow:hidden;background:radial-gradient(circle at 70% 20%,rgba(155,199,129,.24),transparent 35%),linear-gradient(145deg,#244a3d,#102920);box-shadow:inset 0 0 0 1px rgba(255,255,255,.03)}
.hero-media:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(8,31,24,.06),rgba(8,31,24,.44));pointer-events:none}.hero-media img{width:100%;height:100%;min-height:430px;display:block;object-fit:cover;object-position:center}.hero-overlay{position:absolute;inset:0;z-index:2;pointer-events:none}.hero-media .asset-tag{box-shadow:0 8px 24px rgba(0,0,0,.22)}
.site-footer .brand{color:#fff}.footer-contact{margin-top:1rem}.footer-contact a{font-weight:800}.content-card a,.direct a{font-weight:800;color:var(--forest)}.content-card a:hover,.content-card a:focus-visible,.direct a:hover,.direct a:focus-visible{text-decoration-thickness:2px;text-underline-offset:3px}
.form-card button[aria-busy="true"]{opacity:.7;cursor:wait}.form-status.success{color:#1e633d}.form-status.error{color:#8a302b}.form-note a{font-weight:800}
@media(max-width:920px){.primary a.is-active:after{display:none}.hero-media,.hero-media img{min-height:300px}}
@media(max-width:620px){.hero-media,.hero-media img{min-height:260px}.asset-tag{font-size:.62rem;padding:.42rem .55rem}.tag1{left:6%;top:12%}.tag2{right:5%;top:48%}.tag3{left:20%;bottom:8%}}

/* V45 staging / legal */
.legal-page{padding-top:72px}.legal-copy{max-width:850px}.legal-copy h2{margin-top:2.1rem;margin-bottom:.55rem}.legal-copy p{max-width:78ch;line-height:1.72}.staging-note{border-left:4px solid #76a900;padding:1rem 1.2rem;background:#eef4f0}.legal-warning{margin:1.4rem 0;padding:1.2rem}.small-note{font-size:.9rem;opacity:.72}

/* V46 – Startseiten-Hero Variante 1: Anlagenkontext + dokumentarische AIK-Praxisebene */
.hero-home .hero-grid{width:min(calc(100% - 2.4rem),1400px);grid-template-columns:.92fr 1.18fr;gap:clamp(2rem,4vw,4.5rem)}
.hero-home .hero-media{min-height:520px;border-color:rgba(255,255,255,.16);box-shadow:0 22px 60px rgba(0,0,0,.18)}
.hero-home .hero-media:after{display:none}
.hero-home .hero-media img{min-height:520px;object-position:center}
@media(max-width:920px){
  .hero-home .hero-grid{width:min(calc(100% - 2.4rem),var(--max));grid-template-columns:1fr}
  .hero-home .hero-media,.hero-home .hero-media img{min-height:390px}
}
@media(max-width:620px){
  .hero-home .hero-grid{width:min(calc(100% - 1.4rem),var(--max))}
  .hero-home .hero-media,.hero-home .hero-media img{min-height:310px}
  .hero-home .hero-media img{object-position:58% center}
}
@media(max-width:620px){
  .hero-home h1{font-size:2.18rem;line-height:1.02;letter-spacing:-.045em}
}


/* V47 – Startseiten-Feinschliff und bestätigtes AIK-Primärlogo im Header */
.brand-logo{letter-spacing:normal;line-height:1;flex:0 0 auto}
.brand-logo img{display:block;width:auto;height:46px;max-width:210px;object-fit:contain}
.hero .article-meta{color:var(--green2)}
.content-grid-two{grid-template-columns:repeat(2,minmax(0,1fr))}
@media(max-width:620px){
  .brand-logo img{height:38px;max-width:174px}
  .content-grid-two{grid-template-columns:1fr}
}


/* Bestandsaufnahme Entwurf B:
   Inhaltskarten folgen ihrer tatsächlichen Textmenge und werden nicht künstlich hochgezogen. */
.bestandsaufnahme-compact-grid {
  align-items: start;
}
.bestandsaufnahme-compact-grid .content-card {
  align-self: start;
  padding: 1.05rem 1.15rem;
}
.bestandsaufnahme-compact-grid .content-card h3 {
  margin: .08rem 0 .48rem;
  line-height: 1.22;
}
.bestandsaufnahme-compact-grid .content-card p {
  line-height: 1.5;
}

@media (max-width: 920px) {
  .bestandsaufnahme-compact-grid {
    grid-template-columns: 1fr;
    gap: .72rem;
  }
  .bestandsaufnahme-compact-grid .content-card {
    padding: .95rem 1rem;
  }
  .bestandsaufnahme-compact-grid .content-card h3 {
    margin-bottom: .35rem;
  }
}

@media (max-width: 620px) {
  .bestandsaufnahme-compact-grid {
    gap: .62rem;
  }
  .bestandsaufnahme-compact-grid .content-card {
    padding: .85rem .9rem;
    border-radius: 11px;
  }
  .bestandsaufnahme-compact-grid .content-card h3 {
    font-size: 1.02rem;
  }
  .bestandsaufnahme-compact-grid .content-card p {
    font-size: .9rem;
  }
}


/* Kompakter Kartenstandard für AIK-Detailseiten */
.compact-content-grid {
  align-items: start;
}
.compact-content-grid .content-card {
  align-self: start;
  padding: 1.05rem 1.15rem;
}
.compact-content-grid .content-card h3 {
  margin: .08rem 0 .48rem;
  line-height: 1.22;
}
.compact-content-grid .content-card p {
  line-height: 1.5;
}
@media (max-width: 920px) {
  .compact-content-grid {
    grid-template-columns: 1fr;
    gap: .72rem;
  }
  .compact-content-grid .content-card {
    padding: .95rem 1rem;
  }
}
@media (max-width: 620px) {
  .compact-content-grid {
    gap: .62rem;
  }
  .compact-content-grid .content-card {
    padding: .85rem .9rem;
    border-radius: 11px;
  }
  .compact-content-grid .content-card h3 {
    font-size: 1.02rem;
    margin-bottom: .35rem;
  }
  .compact-content-grid .content-card p {
    font-size: .9rem;
  }
}


/* V49 – Hero-Bildfokus pro Unterseite: Desktop/Mobile getrennt; technische Grafiken unbeschnitten. */
.hero-media img{
  object-position:var(--hero-x,50%) var(--hero-y,50%);
}
.hero-media[data-hero-fit="contain"][data-reference-loaded="true"]{
  background:linear-gradient(145deg,#eef3ef,#dfe8e1);
}
.hero-media[data-hero-fit="contain"][data-reference-loaded="true"]:after{
  display:none;
}
.hero-media[data-hero-fit="contain"][data-reference-loaded="true"] img{
  object-fit:contain;
  object-position:var(--hero-x,50%) var(--hero-y,50%);
  padding:clamp(.55rem,1.4vw,1rem);
  background:#f5f7f5;
}
@media(max-width:920px){
  .hero-media img{
    object-position:var(--hero-x-mobile,var(--hero-x,50%)) var(--hero-y-mobile,var(--hero-y,50%));
  }
  .hero-media[data-hero-fit="contain"][data-reference-loaded="true"] img{
    object-position:var(--hero-x-mobile,var(--hero-x,50%)) var(--hero-y-mobile,var(--hero-y,50%));
    padding:.65rem;
  }
}
@media(max-width:620px){
  .hero-media:not([data-hero-fit="contain"]),
  .hero-media:not([data-hero-fit="contain"]) img{
    min-height:285px;
  }
  .hero-media[data-hero-fit="contain"],
  .hero-media[data-hero-fit="contain"] img{
    min-height:300px;
  }
}


/* Standalone navigation additions */
.standalone-toolbar{position:sticky;top:72px;z-index:25;background:#f3f4ef;border-bottom:1px solid rgba(21,56,46,.13)}
.standalone-toolbar .wrap{display:flex;gap:.8rem;align-items:center;padding-top:.55rem;padding-bottom:.55rem}
.standalone-toolbar label{font-size:.78rem;font-weight:800;letter-spacing:.04em;color:#38554c;white-space:nowrap}
.standalone-toolbar select{max-width:520px;width:100%;background:#fff;border:1px solid #b9c6c0;border-radius:6px;padding:.55rem .7rem;color:#15382e;font:inherit}
.standalone-badge{margin-left:auto;font-size:.72rem;color:#62746e;white-space:nowrap}
.standalone-page[hidden]{display:none!important}
.standalone-page{display:block}
.standalone-page .site-header,.standalone-page .site-footer{display:none!important}
@media(max-width:920px){.standalone-toolbar{top:62px}.standalone-badge{display:none}.standalone-toolbar label{display:none}}

/* Trennung: Beginn des zweiten unverändert übernommenen Style-Blocks. */

/* V50 – embedded AI-generated hero imagery; no external image loading */
.hero-media.ai-generated-hero img{object-fit:cover;object-position:var(--hero-x,50%) var(--hero-y,50%);}
.hero-media.ai-generated-hero.ai-contain{background:linear-gradient(145deg,#eef3ef,#dfe8e1);}
.hero-media.ai-generated-hero.ai-contain:after{display:none;}
.hero-media.ai-generated-hero.ai-contain img{
  object-fit:contain !important;
  padding:clamp(.35rem,1vw,.7rem);
  background:#f5f7f5;
}
@media(max-width:920px){
  .hero-media.ai-generated-hero img{
    object-position:var(--hero-x-mobile,var(--hero-x,50%)) var(--hero-y-mobile,var(--hero-y,50%));
  }
}

/* Keep the focused main below the sticky header and preview toolbar.
   80px covers the 78px header row and border; 5rem reserves the toolbar
   plus a reading gap without changing the normal page layout. */
.standalone-page main {
  scroll-margin-top: calc(80px + 5rem);
}

/* Only the affected mobile headings need emergency word breaks.
   anywhere also reduces the knowledge cards' intrinsic grid minimum. */
@media (max-width: 620px) {
  :is(
    #page-anlagen-ri-pid-pruefen-fortschreiben,
    #page-impressum,
    #page-loesungen-sicherheitsinformation-nach-veraenderung,
    #page-sicherheit-flucht-rettungsplaene,
    #page-sicherheit-flucht-rettungswegkennzeichnung
  ) .section h2,
  #page-wissen .content-card h3 {
    overflow-wrap: anywhere;
  }
}

/* Keep complete hero-title words inside this mobile grid track. */
@media (max-width: 620px) {
  #page-digitalisierung .hero h1 {
    font-size: min(2.65rem, 10.5vw);
    overflow-wrap: normal;
  }
}

/* Show the entire original image proportionally within the available column. */
#standalone-content .hero-grid {
  width: min(calc(100% - 2.4rem), 1400px);
  grid-template-columns: minmax(0, .92fr) minmax(0, 1.18fr);
  gap: clamp(2rem, 4vw, 4.5rem);
}
@media (max-width: 920px) {
  #standalone-content .hero .hero-grid {
    width: min(calc(100% - 2.4rem), var(--max));
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 620px) {
  #standalone-content .hero .hero-grid {
    width: min(calc(100% - 1.4rem), var(--max));
  }
}
#standalone-content .hero-media {
  width: 100%;
  max-width: 100%;
  min-width: 0;
  height: auto;
  min-height: 0;
  align-self: center;
  border-radius: var(--radius);
  overflow: hidden;
}
#standalone-content .hero-media picture {
  display: block;
}
#standalone-content .hero-media img {
  display: block;
  width: 100%;
  max-width: 100%;
  height: auto;
  min-height: 0;
  padding: 0;
  object-fit: contain !important;
  object-position: center;
}

/* Merge 2026-09-22: readable copy beside the existing, uncropped images. */
#standalone-content .hero-grid > div {
  min-width: 0;
}
#standalone-content .hero h1 {
  font-size: clamp(2rem, 3.1vw, 3rem);
  line-height: 1.15;
  letter-spacing: -.025em;
  max-width: 24ch;
  margin: .8rem 0 1.25rem;
  overflow-wrap: normal;
  word-break: normal;
}
#standalone-content .hero .lead {
  font-size: 1.0625rem;
  line-height: 1.7;
  max-width: 60ch;
}
@media (max-width: 620px) {
  #standalone-content .hero h1 {
    font-size: clamp(1.5rem, 6.3vw, 2rem);
    line-height: 1.2;
  }
  #standalone-content .hero .lead {
    font-size: 1rem;
    line-height: 1.65;
  }
}
@media (max-width: 340px) {
  #standalone-content #page-wissen-din-2403-rohrleitungskennzeichnung .hero h1 {
    font-size: 1.45rem;
  }
}

/* Long privacy headings fit narrow mobile screens without clipping. */
@media (max-width: 360px) {
  #page-datenschutz .legal-page h1,
  #page-datenschutz .legal-copy h2 { font-size: 1.75rem; }
}

/* Customer references: original logos, contained without cropping. */
.reference-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:20px; padding:0; margin:28px 0 0; list-style:none; }
.reference-logo { display:flex; align-items:center; justify-content:center; min-width:0; height:160px; padding:24px; box-sizing:border-box; background:#fff; border:1px solid #dbe5df; border-radius:18px; }
.reference-logo img { display:block; width:100%; height:100%; max-width:190px; max-height:106px; object-fit:contain; border-radius:0; }
@media(max-width:620px) {
 .reference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
 .reference-logo { height:128px; padding:18px; }
 .reference-logo img { max-height:88px; }
}
