/*! NBC v7.444 · Regional Family System
    Canonical owner for 5 city pages + Regional Intelligence.
    Replaces regional-finalization.v7399 + regional-last-mile.v7400. */
@layer nbc.regional {
  /* P0: the runtime-injected service strip must live on the instrument rail, never the section edge. */
  body.page-regional .rso-regional-host .v384-region-services{
    width:100%!important;max-width:100%!important;margin-inline:0!important;box-sizing:border-box!important;
  }
  body.page-regional .v384-region-service{min-width:0!important}
  body.page-regional .v384-region-service strong{overflow-wrap:anywhere}

  /* One rhythm system only. v7398 had section padding + section margin + sibling spacing. */
  body.page-regional main>section.v7398-major-act{margin-top:0!important}
  body.page-regional main>section.v7398-major-act+section.v7398-major-act{margin-top:clamp(22px,2.2vw,36px)!important}
  body.page-regional main>section.service-hero+section.v7398-major-act,
  body.page-regional main>section.local-hero+section.v7398-major-act{margin-top:0!important}
  body.page-regional main>.rco-early-nav+section.v7398-major-act{margin-top:clamp(14px,1.5vw,24px)!important}

  /* Long regional headings may use the available rail instead of collapsing into word towers. */
  body.page-regional :is(.v7398-long-title,.regional-faq .nbc-section-title,.local-faq .nbc-section-title){
    max-width:22ch!important;text-wrap:balance!important
  }

  /* Presence: one robust composition and one real image element on every city page. */
  body.page-regional .regional-presence__inner{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(320px,.72fr) minmax(0,1.28fr)!important;
    gap:clamp(54px,6vw,92px)!important;align-items:center!important
  }
  body.page-regional .regional-presence__media{width:100%!important;max-width:500px!important;margin:0!important}
  body.page-regional .regional-presence__media img{
    display:block!important;width:100%!important;height:auto!important;aspect-ratio:4/5!important;object-fit:cover!important;
    object-position:center 18%!important;background:#0a120e!important;border-radius:0!important
  }
  body.page-regional .regional-presence__media figcaption{margin-top:12px!important;opacity:.62}
  body.page-regional .regional-presence__copy{max-width:760px!important}

  /* Self-checks are editorial questions, not cards. */
  body.page-regional .regional-self-check{background:transparent!important;box-shadow:none!important}
  body.page-regional .regional-self-check>.sw{width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important}
  body.page-regional .regional-self-check ol{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0!important;margin-top:28px!important}
  body.page-regional .regional-self-check li{
    min-width:0!important;padding:22px clamp(18px,2.2vw,30px) 4px!important;background:transparent!important;
    border:0!important;border-top:1px solid rgba(173,218,185,.18)!important;border-radius:0!important;box-shadow:none!important
  }
  body.page-regional .regional-self-check li+li{border-left:1px solid rgba(173,218,185,.12)!important}

  /* FAQ belongs to the continuous dark canvas; the global ambient field remains visible. */
  body.page-regional :is(.regional-faq,.local-faq){
    position:relative!important;
    background:transparent!important;
    color:#edf4ee!important;
    border-block:1px solid rgba(181,221,191,.11)!important;
    box-shadow:none!important
  }
  body.page-regional .regional-faq>.sw,
  body.page-regional .local-faq>.wrap{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(260px,.36fr) minmax(0,.64fr)!important;
    column-gap:clamp(54px,7vw,112px)!important;align-items:start!important
  }
  body.page-regional .regional-faq-head,
  body.page-regional .local-faq .local-section-heading{max-width:430px!important;margin:0!important}
  body.page-regional .regional-faq-head>p{max-width:39ch!important;color:rgba(237,243,239,.68)!important}
  body.page-regional :is(.regional-faq-list,.local-faq-list){margin:0!important;border-top:1px solid rgba(181,221,191,.16)!important}
  body.page-regional :is(.regional-faq-list,.local-faq-list) .faq-item{
    margin:0!important;padding:0!important;background:transparent!important;border:0!important;border-bottom:1px solid rgba(181,221,191,.13)!important;
    border-radius:0!important;box-shadow:none!important
  }
  body.page-regional :is(.regional-faq-list,.local-faq-list) summary{
    min-height:66px!important;padding:18px 34px 18px 0!important;display:flex!important;align-items:center!important;
    font-size:clamp(15px,1.25vw,17px)!important;line-height:1.35!important
  }
  body.page-regional :is(.regional-faq-list,.local-faq-list) details[open] :is(>p,.faq-a){padding:0 36px 20px 0!important;max-width:68ch!important;color:rgba(238,244,240,.72)!important}

  /* Final CTA: use the rail; primary + secondary path belong to one decision cluster. */
  body.page-regional :is(.rx-close,.local-final){
    background:radial-gradient(820px 340px at 76% 46%,rgba(80,157,101,.105),transparent 70%)!important;
    border-top:1px solid rgba(181,221,191,.10)!important
  }
  body.page-regional .rx-close>.sw.rx-reading{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
    column-gap:clamp(60px,8vw,126px)!important;align-items:start!important
  }
  body.page-regional .rx-close>.sw.rx-reading>:is(h2,p:not(.regional-digital-entry)){grid-column:1!important;max-width:760px!important}
  body.page-regional .rx-close>.sw.rx-reading>.contextual-pathway{grid-column:1!important}
  body.page-regional .rx-close>.sw.rx-reading>.btn{grid-column:2!important;grid-row:1!important;justify-self:start!important;margin-top:4px!important}
  body.page-regional .rx-close>.sw.rx-reading>span{grid-column:2!important;grid-row:2!important;margin-top:12px!important;opacity:.66!important}
  body.page-regional .rx-close>.sw.rx-reading>.regional-digital-entry{
    grid-column:2!important;grid-row:3!important;margin:20px 0 0!important;padding-top:18px!important;
    border-top:1px solid rgba(181,221,191,.13)!important;max-width:480px!important
  }
  body.page-regional .local-final>.wrap.local-final-grid{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
    grid-template-areas:"head action" "copy action" "copy secondary"!important;
    column-gap:clamp(60px,8vw,126px)!important;align-items:start!important
  }
  body.page-regional .local-final-grid>.local-wide-heading{grid-area:head!important;max-width:760px!important}
  body.page-regional .local-final-grid>.local-wide-heading+div{grid-area:copy!important;max-width:720px!important}
  body.page-regional .local-final-grid>.local-final-action{grid-area:action!important;max-width:520px!important;margin:0!important}
  body.page-regional .local-final-grid>.regional-digital-entry{
    grid-area:secondary!important;max-width:520px!important;margin:20px 0 0!important;padding-top:18px!important;
    border-top:1px solid rgba(181,221,191,.13)!important
  }

  /* Göttingen: regional context as an editorial argument, not a text box. */
  body.region-goettingen .v7399-economy-grid{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(0,.42fr) minmax(0,.58fr)!important;
    gap:clamp(58px,7vw,112px)!important;align-items:start!important
  }
  body.region-goettingen .v7399-economy-intro>p{max-width:56ch!important;color:rgba(238,244,240,.72)!important}
  body.region-goettingen .v7399-economy-intro .regional-source{margin-top:22px!important;font-size:12px!important;opacity:.68!important}
  body.region-goettingen .v7399-economy-principle{margin:4px 0 28px!important;font-size:clamp(22px,2.25vw,34px)!important;line-height:1.12!important;max-width:22ch!important;color:#f2f6f3!important}
  body.region-goettingen .v7399-economy-principle strong{color:#9addaa!important;font-weight:620!important}
  body.region-goettingen .v7399-economy-lines{border-top:1px solid rgba(181,221,191,.16)!important}
  body.region-goettingen .v7399-economy-lines a{
    display:grid!important;grid-template-columns:1fr auto!important;gap:26px!important;align-items:center!important;
    min-height:74px!important;padding:16px 0!important;border-bottom:1px solid rgba(181,221,191,.13)!important;
    color:inherit!important;text-decoration:none!important
  }
  body.region-goettingen .v7399-economy-lines a span{font-size:15px!important;color:rgba(239,245,241,.74)!important}
  body.region-goettingen .v7399-economy-lines a strong{font-size:13px!important;color:#9addaa!important;font-weight:620!important}
  body.region-goettingen .v7399-neutrality{
    margin-top:26px!important;padding-top:20px!important;border-top:1px solid rgba(181,221,191,.13)!important;
    max-width:76ch!important;color:rgba(238,244,240,.68)!important
  }

  /* Kassel: remove the remaining dashboard feeling in the hero and context. */
  body.region-kassel .ks-status-grid{gap:0!important;background:transparent!important;border:0!important;box-shadow:none!important}
  body.region-kassel .ks-status-grid>div{
    background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;
    padding:14px clamp(12px,1.5vw,20px)!important
  }
  body.region-kassel .ks-status-grid>div+div{border-left:1px solid rgba(181,221,191,.12)!important}
  body.region-kassel .v7399-region-context{
    width:var(--nbc-global-rail)!important;max-width:var(--nbc-rail-visual,1680px)!important;margin-inline:auto!important;
    display:grid!important;grid-template-columns:minmax(0,.44fr) minmax(0,.56fr)!important;
    gap:clamp(56px,7vw,108px)!important;align-items:start!important
  }
  body.region-kassel .v7399-region-context__copy>p:first-child{max-width:66ch!important;color:rgba(238,244,240,.72)!important}
  body.region-kassel .v7399-region-context .regional-source{margin-top:22px!important;font-size:12px!important;opacity:.68!important}

  /* Keep proof surfaces intentional: one dominant evidence surface, no nested card chrome. */
  body.page-regional :is(.ks-proof-grid,.pf-proof-grid,.ka-proof-grid,.st-proof-grid) :is(article,aside){box-shadow:none!important}

  /* Regional Intelligence: no redesign, only final-state and overflow safety. */
  body.page-regional-intelligence #vorgehen{border-top:1px solid rgba(181,221,191,.10)!important}
  body.page-regional-intelligence .authority-decision-action{max-width:100%!important}
}

@media(max-width:760px){
  @layer nbc.regional {
    body.page-regional main>section.v7398-major-act+section.v7398-major-act{margin-top:20px!important}
    body.page-regional main>.rco-early-nav+section.v7398-major-act{margin-top:12px!important}
    body.page-regional .regional-presence__inner,
    body.page-regional .regional-self-check>.sw,
    body.page-regional .regional-faq>.sw,
    body.page-regional .local-faq>.wrap,
    body.page-regional .rx-close>.sw.rx-reading,
    body.page-regional .local-final>.wrap.local-final-grid,
    body.region-goettingen .v7399-economy-grid,
    body.region-kassel .v7399-region-context{
      width:calc(100% - 40px)!important;max-width:none!important;margin-inline:20px!important
    }
    body.page-regional .regional-presence__inner{grid-template-columns:1fr!important;gap:30px!important}
    body.page-regional .regional-presence__media{width:min(82vw,330px)!important;max-width:330px!important}
    body.page-regional .regional-presence__media img{height:340px!important;aspect-ratio:auto!important;object-position:center 16%!important}
    body.page-regional .regional-presence__copy{max-width:none!important}
    body.page-regional .regional-presence__copy .nbc-section-title{font-size:clamp(30px,8.2vw,34px)!important;max-width:18ch!important}

    body.page-regional .regional-self-check ol{grid-template-columns:1fr!important;margin-top:20px!important}
    body.page-regional .regional-self-check li{padding:18px 0 16px!important;border-left:0!important}

    body.page-regional .regional-faq>.sw,
    body.page-regional .local-faq>.wrap{grid-template-columns:1fr!important;row-gap:30px!important}
    body.page-regional .regional-faq-head,
    body.page-regional .local-faq .local-section-heading{max-width:none!important}
    body.page-regional :is(.regional-faq-list,.local-faq-list) summary{min-height:60px!important;padding-block:16px!important;font-size:15px!important}

    body.page-regional .rx-close>.sw.rx-reading{grid-template-columns:1fr!important;display:grid!important}
    body.page-regional .rx-close>.sw.rx-reading>*{grid-column:1!important;grid-row:auto!important}
    /* Match the desktop child selectors exactly so no implicit second grid column can survive on mobile. */
    body.page-regional .rx-close>.sw.rx-reading>.btn{grid-column:1!important;grid-row:auto!important;margin-top:24px!important}
    body.page-regional .rx-close>.sw.rx-reading>span{grid-column:1!important;grid-row:auto!important;margin-top:10px!important}
    body.page-regional .rx-close>.sw.rx-reading>.regional-digital-entry{grid-column:1!important;grid-row:auto!important;margin-top:18px!important;padding-top:16px!important;max-width:none!important}

    body.page-regional .local-final>.wrap.local-final-grid{
      grid-template-columns:1fr!important;grid-template-areas:"head" "copy" "action" "secondary"!important;row-gap:18px!important
    }
    body.page-regional .local-final-grid>.local-final-action{max-width:none!important;margin-top:8px!important}
    body.page-regional .local-final-grid>.regional-digital-entry{max-width:none!important;margin-top:4px!important}

    body.region-goettingen .v7399-economy-grid,
    body.region-kassel .v7399-region-context{grid-template-columns:1fr!important;gap:34px!important}
    body.region-goettingen .v7399-economy-principle{font-size:28px!important;max-width:18ch!important}
    body.region-goettingen .v7399-economy-lines a{grid-template-columns:1fr!important;gap:7px!important;min-height:70px!important}

    body.region-kassel .ks-status-grid{grid-template-columns:1fr!important}
    body.region-kassel .ks-status-grid>div+div{border-left:0!important;border-top:1px solid rgba(181,221,191,.12)!important}

    body.page-regional .v384-region-services{width:100%!important;margin-inline:0!important}
    body.page-regional .v384-region-service{padding-inline:0!important}
    body.page-regional :is(.regional-faq .nbc-section-title,.local-faq .nbc-section-title,.v7398-long-title){
      font-size:clamp(30px,8.4vw,34px)!important;max-width:19ch!important
    }
  }
}

/* v7.399 release-gate overrides. These must sit in the already-first fix layer because
   legacy regional rules contain !important declarations and would otherwise win. */
@layer nbc.regional {
  body.page-regional :is(.regional-faq,.local-faq){
    background:transparent!important;
    color:#edf4ee!important;
    border-block:1px solid rgba(181,221,191,.11)!important;
    box-shadow:none!important;
  }
  body.page-regional :is(.regional-faq,.local-faq) :is(h2,h3,summary,.faq-q){color:#edf4ee!important;-webkit-text-fill-color:currentColor!important;}
  body.page-regional :is(.regional-faq,.local-faq) :is(p,.faq-a,.regional-faq-head>p,.local-section-heading>p){color:rgba(225,237,228,.72)!important;-webkit-text-fill-color:currentColor!important;}
  body.page-regional :is(.regional-faq-list,.local-faq-list){border-top-color:rgba(181,221,191,.16)!important;}
  body.page-regional :is(.regional-faq-list,.local-faq-list) .faq-item{border-bottom-color:rgba(181,221,191,.13)!important;}
  body.page-regional :is(.regional-faq-list,.local-faq-list) summary{background:transparent!important;}
  body.page-regional :is(.regional-faq,.local-faq) a{color:#9addaa!important;}

  @media(max-width:760px){
    html body#nbc-page.page-regional .rx-close>.sw.rx-reading{
      display:grid!important;
      grid-template-columns:minmax(0,1fr)!important;
      grid-template-areas:none!important;
      column-gap:0!important;
      row-gap:16px!important;
    }
    html body#nbc-page.page-regional .rx-close>.sw.rx-reading>*{
      grid-column:1!important;
      grid-row:auto!important;
      min-width:0!important;
      max-width:none!important;
    }
    html body#nbc-page.page-regional .rx-close>.sw.rx-reading>.btn{margin-top:10px!important;justify-self:start!important;}
    html body#nbc-page.page-regional .rx-close>.sw.rx-reading>span{margin-top:-6px!important;}
    html body#nbc-page.page-regional .rx-close>.sw.rx-reading>.regional-digital-entry{
      margin-top:4px!important;
      padding-top:16px!important;
    }
    html body#nbc-page.page-regional .local-final>.wrap.local-final-grid{
      display:grid!important;
      grid-template-columns:minmax(0,1fr)!important;
      grid-template-areas:"head" "copy" "action" "secondary"!important;
      column-gap:0!important;
      row-gap:18px!important;
    }
  }
}

@layer nbc.regional {
  html body#nbc-page.page-regional-intelligence .authority-hub-nav{
    position:relative!important;
    top:auto!important;
    z-index:2!important;
    background:#08130d!important;
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    filter:none!important;
    transform:none!important;
  }
  html body#nbc-page.page-regional-intelligence .authority-hub-nav::before,
  html body#nbc-page.page-regional-intelligence .authority-hub-nav::after{
    -webkit-backdrop-filter:none!important;
    backdrop-filter:none!important;
    filter:none!important;
  }
  html body#nbc-page.region-goettingen .regional-faq .regional-faq-head>p{
    margin-top:16px!important;
    max-width:38ch!important;
  }
}


@layer nbc.regional{
body[data-regional-system="v7444"]{--regional-accent:var(--nbc-accent,#9ed9ac);--regional-dark-ink:var(--nbc-dark-ink,#edf4ee);--regional-dark-muted:var(--nbc-dark-muted,rgba(225,237,228,.72));--regional-line:var(--nbc-line-dark,rgba(205,229,212,.13));}
/* Family surfaces: dark is the continuous canvas; proof/research breaks may be paper. */
body.page-regional[data-regional-system="v7444"] :is(.regional-faq,.regional-close-v7425,.local-faq,.local-final)[data-nbc-surface="dark"]{background:transparent!important;color:var(--regional-dark-ink)!important}
body.page-regional[data-regional-system="v7444"] :is(.regional-faq,.regional-close-v7425,.local-faq,.local-final)[data-nbc-surface="dark"] :is(h2,h3,strong,summary){color:var(--regional-dark-ink)!important;-webkit-text-fill-color:currentColor!important}
body.page-regional[data-regional-system="v7444"] :is(.regional-faq,.regional-close-v7425,.local-faq,.local-final)[data-nbc-surface="dark"] :is(p,li,small){color:var(--regional-dark-muted)!important;-webkit-text-fill-color:currentColor!important}
body.page-regional-intelligence[data-regional-system="v7444"] #signale[data-nbc-surface="paper"]{background:var(--nbc-paper,#f1eee5)!important;color:var(--nbc-paper-ink,#142017)!important}
body.page-regional-intelligence[data-regional-system="v7444"] #signale[data-nbc-surface="paper"] :is(h2,h3,strong){color:var(--nbc-paper-ink,#142017)!important;-webkit-text-fill-color:currentColor!important}
body.page-regional-intelligence[data-regional-system="v7444"] #signale[data-nbc-surface="paper"] :is(p,li,small){color:var(--nbc-paper-muted,#536057)!important;-webkit-text-fill-color:currentColor!important}
body.page-regional-intelligence[data-regional-system="v7444"] .authority-hub-nav{position:relative!important;top:auto!important;filter:none!important;transform:none!important}
}
