/* ==========================================================
   NATURHEILPRAXIS TASKIN – DESKTOP MASTER
   Gilt AUSSCHLIESSLICH ab 980 px.
   MOBILE / TABLET < 980 px: TABU – keine Regel in dieser Datei.
   Header + Navigation + Footer + Back-to-top.
   ========================================================== */

@media (min-width:980px){

  :root{
    --desk-max:1440px;
    --desk-pad:clamp(32px,4vw,72px);
  }

  /* ---------- HEADER: verbindlicher Desktop-Standard ---------- */
  .site-header{
    box-sizing:border-box!important;
    width:100%!important;
    height:94px!important;
    min-height:94px!important;
    margin:0!important;
    padding:12px var(--desk-pad)!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:28px!important;
    position:sticky!important;
    top:0!important;
    z-index:1000!important;
    background:rgba(251,250,246,.96)!important;
    border-bottom:1px solid rgba(23,71,44,.10)!important;
    backdrop-filter:blur(12px)!important;
    transform:translateZ(0)!important;
    font-family:'Avenir Next',Avenir,'Nunito Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important;
    line-height:1.65!important;
  }

  .site-header .brand{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    text-decoration:none!important;
  }

  /* Neutralisiert alte Detailseiten-Regeln wie .brand span */
  .site-header .brand > span{
    display:block!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    font-size:16px!important;
    line-height:1.65!important;
    letter-spacing:normal!important;
  }

  .site-header .brand img{
    display:block!important;
    width:52px!important;
    height:66px!important;
    object-fit:contain!important;
    margin:0!important;
  }

  .site-header .brand strong{
    display:block!important;
    margin:0!important;
    padding:0!important;
    font-family:Georgia,'Times New Roman',serif!important;
    font-size:1.05rem!important;
    line-height:1.2!important;
    font-weight:400!important;
    letter-spacing:normal!important;
    color:#17472c!important;
  }

  .site-header .brand small{
    display:block!important;
    margin:0!important;
    padding:0!important;
    font-family:'Avenir Next',Avenir,'Nunito Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important;
    font-size:.58rem!important;
    line-height:1.65!important;
    font-weight:400!important;
    letter-spacing:.22em!important;
    text-transform:uppercase!important;
    color:#087533!important;
  }

  .site-header .menu{display:none!important}

  .site-header .main-nav{
    position:static!important;
    inset:auto!important;
    display:flex!important;
    align-items:center!important;
    gap:clamp(16px,1.8vw,30px)!important;
    width:auto!important;
    margin:0 0 0 auto!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }

  .site-header .nav-link,
  .site-header .nav-subtoggle{
    width:auto!important;
    min-height:0!important;
    margin:0!important;
    padding:8px 0!important;
    border:0!important;
    background:transparent!important;
    color:#17472c!important;
    font:inherit!important;
    font-size:.92rem!important;
    line-height:1.4!important;
    font-weight:600!important;
    text-decoration:none!important;
    white-space:nowrap!important;
  }

  .site-header .nav-link.active{
    position:relative!important;
    color:#087533!important;
  }

  .site-header .nav-link.active::after{display:none!important}

  .site-header .nav-link.active::before{
    content:""!important;
    position:absolute!important;
    left:0!important;
    right:0!important;
    bottom:1px!important;
    height:1px!important;
    background:#087533!important;
  }

  .site-header .nav-group{position:relative!important}

  .site-header .nav-chevron{
    margin-left:4px!important;
    color:#087533!important;
    font-size:1.35rem!important;
    line-height:1!important;
  }

  .site-header .nav-submenu{
    position:absolute!important;
    top:100%!important;
    left:-14px!important;
    min-width:240px!important;
    margin:0!important;
    padding:8px 14px 12px!important;
    background:rgba(251,250,246,.99)!important;
    border:1px solid rgba(23,71,44,.10)!important;
    border-radius:12px!important;
    box-shadow:0 12px 28px rgba(23,71,44,.08)!important;
  }

  .site-header .nav-submenu[hidden]{display:none!important}

  .site-header .nav-submenu a{
    display:flex!important;
    width:100%!important;
    padding:9px 0!important;
    color:#30342f!important;
    font-size:.94rem!important;
    line-height:1.4!important;
    font-weight:500!important;
    text-decoration:none!important;
  }

  /* ---------- FOOTER: verbindlicher Desktop-Standard ---------- */
  .jana-footer{
    box-sizing:border-box!important;
    width:100%!important;
    margin:0!important;
    padding:0!important;
    background:#173824!important; /* bewusst das gedeckte Schröpfen-Grün */
    color:#f8f4ea!important;
    font-family:'Avenir Next',Avenir,'Nunito Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',Arial,sans-serif!important;
    line-height:1.65!important;
  }

  .jana-footer .jana-inner{
    box-sizing:border-box!important;
    width:min(calc(100% - 2*var(--desk-pad)),var(--desk-max))!important;
    max-width:none!important;
    margin:0 auto!important;
    padding:52px 0 30px!important;
    display:grid!important;
    grid-template-columns:1.25fr .8fr 1.1fr!important;
    grid-template-areas:'brand address contact' 'legal legal legal'!important;
    column-gap:clamp(48px,7vw,110px)!important;
    row-gap:0!important;
    align-items:start!important;
  }

  .jana-footer .jana-top{
    grid-area:brand!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
  }

  .jana-footer .jana-brand,
  .jana-footer .jana-brand-home{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
    margin:0!important;
    padding:0!important;
    color:inherit!important;
    text-decoration:none!important;
  }

  .jana-footer .jana-brand img{
    display:block!important;
    width:58px!important;
    height:auto!important;
    margin:0!important;
  }

  .jana-footer .jana-name{
    margin:0!important;
    padding:0!important;
    font-family:Georgia,'Times New Roman',serif!important;
    font-size:1.1rem!important;
    line-height:1.15!important;
    font-weight:400!important;
  }

  .jana-footer .jana-role{
    margin:2px 0 0!important;
    padding:0!important;
    font-size:.66rem!important;
    line-height:1.4!important;
    letter-spacing:.17em!important;
    text-transform:uppercase!important;
    opacity:.82!important;
  }

  .jana-footer .jana-mid{display:contents!important}

  .jana-footer .jana-left{
    grid-area:address!important;
  }

  .jana-footer .jana-right{
    grid-area:contact!important;
  }

  .jana-footer .jana-left,
  .jana-footer .jana-right{
    display:flex!important;
    flex-direction:column!important;
    gap:9px!important;
    min-width:0!important;
    margin:0!important;
    padding:0!important;
    border:0!important;
    text-align:left!important;
  }

  .jana-footer a,
  .jana-footer span{
    color:#f8f4ea!important;
    text-decoration:none!important;
    font-size:.86rem!important;
    line-height:1.55!important;
  }

  .jana-footer .jana-right a{overflow-wrap:anywhere!important}

  .jana-footer .jana-bottom{
    grid-area:legal!important;
    display:flex!important;
    justify-content:flex-end!important;
    align-items:center!important;
    gap:10px!important;
    margin:40px 0 0!important;
    padding:20px 0 0!important;
    border-top:1px solid rgba(255,255,255,.16)!important;
  }

  .jana-footer .jana-bottom a,
  .jana-footer .jana-bottom span{
    font-size:.68rem!important;
    line-height:1.4!important;
    opacity:.9!important;
  }

  /* Back-to-top – gleiche Desktop-Position */
  .back-to-top{
    right:24px!important;
    bottom:24px!important;
  }
}

@media (min-width:980px) and (max-width:1180px){
  .jana-footer .jana-inner{
    grid-template-columns:1fr .85fr 1.15fr!important;
    column-gap:36px!important;
  }
}
