/* VitaGen V41 — four individual, scroll-led focus chapters.
   Existing copy, product routes and consultation links are deliberately unchanged. */
#schwerpunkte.focus-section{
  padding:clamp(72px,7vw,118px) 0 clamp(76px,7vw,130px)!important;
  background:linear-gradient(180deg,#f3f8f6 0%,#f7f9f6 42%,#eff5f2 100%)!important;
  isolation:isolate;
  overflow:clip;
}
#schwerpunkte .focus-section-head{max-width:1050px;margin-bottom:clamp(26px,4vw,66px)!important;position:relative;z-index:3;}
#schwerpunkte .focus-section-head h2{font-weight:300!important;letter-spacing:-.035em!important;}
#schwerpunkte .focus-journey-stage{position:relative;isolation:isolate;}
#schwerpunkte .focus-human-backdrop{position:absolute;inset:0;pointer-events:none;z-index:0;}
#schwerpunkte .focus-human-sticky{
  position:sticky;top:calc(50vh - 275px);height:550px;
  display:grid;place-items:center;
  width:min(420px,40vw);margin:auto;
  opacity:.57;
}
#schwerpunkte .focus-human-svg{width:100%;height:100%;display:block;filter:drop-shadow(0 12px 38px rgba(38,98,91,.1));}
#schwerpunkte .focus-journey-line{
  position:absolute;pointer-events:none;top:28px;bottom:28px;left:50%;width:1px;
  background:linear-gradient(180deg,transparent,rgba(24,92,94,.12) 12%,rgba(24,92,94,.12) 90%,transparent);z-index:0;
}
#schwerpunkte .focus-journey-line::after{
  content:"";position:absolute;inset:0;
  transform:scaleY(var(--focus-progress,0));transform-origin:top;
  background:linear-gradient(180deg,#bca080,rgba(60,133,128,.8),#bca080);
  transition:transform .12s linear;
}
#schwerpunkte .focus-grid-enhanced{
  position:relative;z-index:1;display:flex!important;flex-direction:column!important;
  align-items:stretch!important;gap:clamp(27px,4.3vw,58px)!important;
  max-width:1160px;
}
#schwerpunkte .focus-grid-enhanced .focus-tile,
#schwerpunkte .focus-grid-enhanced .focus-tile.focus-tile--supplements{
  display:flex!important;flex-direction:column!important;
  width:min(95%,1030px)!important;height:auto!important;min-height:0!important;
  margin:0!important;
  border-radius:clamp(18px,2.3vw,28px)!important;
  border:1px solid rgba(133,160,153,.28)!important;
  box-shadow:0 28px 70px rgba(27,71,73,.075)!important;
  overflow:hidden!important;
  position:relative;isolation:isolate;
  background:rgba(255,255,255,.91)!important;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
  transition:box-shadow .6s ease,border-color .4s ease!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(odd){align-self:flex-start!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even){align-self:flex-end!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile.focus-tile--supplements{
  background:linear-gradient(125deg,rgba(18,72,82,.98),rgba(17,59,67,.96))!important;
  border-color:rgba(33,99,104,.5)!important;
  box-shadow:0 34px 76px rgba(13,58,65,.19)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile:focus-within{outline:2px solid #ba9263;outline-offset:4px;}
#schwerpunkte .focus-grid-enhanced .focus-tile:hover{box-shadow:0 33px 78px rgba(18,70,69,.14)!important;border-color:rgba(160,126,85,.48)!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile > .focus-click{
  display:grid!important;
  grid-template-columns:clamp(145px,17vw,196px) minmax(0,1fr)!important;
  grid-template-rows:auto auto!important;
  column-gap:clamp(26px,3.4vw,49px)!important;
  align-items:start!important;
  width:100%!important;height:auto!important;min-height:0!important;
  padding:clamp(28px,3.6vw,47px) clamp(28px,4vw,55px) 12px!important;
  text-align:left!important;
  background:transparent!important;
  text-decoration:none!important;
}
#schwerpunkte .focus-grid-enhanced .focus-card-header{
  grid-column:1!important;grid-row:1 / span 2!important;
  position:relative!important;
  display:flex!important;flex-direction:column!important;
  align-items:center!important;justify-content:center!important;
  gap:13px!important;
  width:100%!important;height:auto!important;min-height:200px!important;
  margin:0!important;padding:0!important;
}
#schwerpunkte .focus-grid-enhanced .focus-card-line{display:none!important;}
#schwerpunkte .focus-grid-enhanced .focus-step-number{
  display:block;color:#a88258;font-family:var(--ui,'Manrope',sans-serif);
  font-size:12px;letter-spacing:.20em;font-weight:600;
}
#schwerpunkte .focus-grid-enhanced .focus-photo-small{
  position:relative!important;
  width:clamp(134px,15vw,176px)!important;height:clamp(134px,15vw,176px)!important;
  flex:0 0 auto!important;
  border-radius:50%!important;
  border:6px solid rgba(255,255,255,.86)!important;
  box-shadow:0 0 0 1px rgba(48,101,96,.15),0 24px 48px rgba(23,83,85,.15)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-card-copy{
  grid-column:2!important;grid-row:1!important;
  align-items:flex-start!important;max-width:100%!important;
  margin:0!important;
}
#schwerpunkte .focus-grid-enhanced .focus-card-copy h3{
  font-size:clamp(30px,3.15vw,44px)!important;
  line-height:1.14!important;letter-spacing:-.028em!important;
  font-weight:350!important;
  color:#143f49!important;
  max-width:760px!important;
  margin:0 0 clamp(16px,2vw,25px)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-desc{
  font-size:clamp(14px,1.14vw,16px)!important;line-height:1.78!important;
  max-width:610px!important;margin:0 0 12px!important;color:#617b7e!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile .focus-tile-foot{
  grid-column:2!important;grid-row:2!important;
  margin:14px 0 0!important;padding:17px 0 0!important;
  display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;
  justify-content:space-between!important;align-items:center!important;gap:10px 20px!important;
  border-top:1px solid rgba(22,70,77,.13)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-products{
  font-family:var(--ui,'Manrope',sans-serif);
  font-size:12px!important;line-height:1.45!important;letter-spacing:.025em!important;
  color:#a47b50!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile .focus-tile-action{
  display:inline-flex!important;align-items:center!important;
  font-size:12px!important;gap:13px!important;font-weight:600!important;
  color:#174b55!important;
}
#schwerpunkte .focus-grid-enhanced .focus-arrow-icon{
  display:inline-flex!important;align-items:center;justify-content:center;
  width:33px!important;height:33px!important;border-radius:50%;
  border:1px solid rgba(31,88,94,.28)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-arrow-icon svg{width:17px!important;height:17px!important;}
#schwerpunkte .focus-grid-enhanced .focus-contact-wrap{
  padding:5px clamp(28px,4vw,55px) 30px!important;
  display:flex!important;justify-content:flex-end!important;align-items:center!important;
  background:transparent!important;
}
#schwerpunkte .focus-grid-enhanced .focus-contact-button{
  width:auto!important;min-width:240px!important;padding:12px 21px!important;
  min-height:44px!important;border-radius:99px!important;
  font-size:12px!important;color:#194a53!important;
  background:#f7faf9!important;border:1px solid rgba(29,87,94,.2)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-card-copy h3,
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-tile-action{color:#f4f8f7!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-desc{color:rgba(235,249,246,.78)!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-products{color:#e2bd8b!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-tile-foot{border-top-color:rgba(246,252,249,.18)!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-arrow-icon{border-color:rgba(242,250,246,.4)!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile--supplements .focus-contact-button{
  background:rgba(255,255,255,.97)!important;color:#144c52!important;
  border-color:rgba(255,255,255,.87)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) > .focus-click{
  grid-template-columns:minmax(0,1fr) clamp(145px,17vw,196px)!important;
}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-header{grid-column:2!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-copy,
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-tile-foot{grid-column:1!important;}
#schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-contact-wrap{justify-content:flex-start!important;}
#schwerpunkte .focus-footnote{position:relative;z-index:2;}
/* Scroll storytelling: no content is hidden without JS/IntersectionObserver. */
html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile:not(.focus-story-visible){
  opacity:0!important;
  transform:translate3d(-62px,38px,0) scale(.985)!important;
}
html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even):not(.focus-story-visible){
  transform:translate3d(62px,38px,0) scale(.985)!important;
}
html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile{
  transition:opacity .86s cubic-bezier(.16,1,.3,1),
             transform 1s cubic-bezier(.16,1,.3,1),
             box-shadow .5s ease,border-color .4s ease!important;
}
html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile.focus-story-visible{
  opacity:1!important;transform:translate3d(0,0,0) scale(1)!important;
}
html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile.focus-story-visible:hover{transform:translate3d(0,-3px,0) scale(1)!important;}
@media(max-width:900px){
  #schwerpunkte .focus-grid-enhanced .focus-tile{width:100%!important;}
  #schwerpunkte .focus-human-sticky{width:280px;opacity:.29;}
  #schwerpunkte .focus-grid-enhanced .focus-tile > .focus-click,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) > .focus-click{
    grid-template-columns:125px minmax(0,1fr)!important;
    column-gap:24px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-header{grid-column:1!important;}
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-copy,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-tile-foot{grid-column:2!important;}
  #schwerpunkte .focus-grid-enhanced .focus-photo-small{width:112px!important;height:112px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-card-header{min-height:135px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-card-copy h3{font-size:clamp(26px,3.5vw,33px)!important;}
}
@media(max-width:650px){
  #schwerpunkte.focus-section{padding:60px 0 70px!important;}
  #schwerpunkte .focus-section-head{margin-bottom:31px!important;}
  #schwerpunkte .focus-journey-line,#schwerpunkte .focus-human-backdrop{display:none!important;}
  #schwerpunkte .focus-grid-enhanced{gap:20px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-tile{border-radius:20px!important;box-shadow:0 16px 40px rgba(18,69,72,.08)!important;}
  #schwerpunkte .focus-grid-enhanced .focus-tile > .focus-click,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) > .focus-click{
    grid-template-columns:minmax(0,1fr) 76px!important;
    grid-template-rows:auto auto!important;gap:12px 12px!important;
    min-height:0!important;
    padding:26px 25px 10px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-header,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-header{
    grid-column:2!important;grid-row:1!important;
    min-height:0!important;height:auto!important;justify-content:flex-start!important;gap:10px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-photo-small{width:74px!important;height:74px!important;border-width:3px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-step-number{font-size:10px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-card-copy,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-copy{
    grid-column:1!important;grid-row:1!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-copy h3{
    font-size:clamp(23px,5.6vw,29px)!important;line-height:1.22!important;
    margin:0 0 17px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-desc{font-size:13.5px!important;line-height:1.7!important;}
  #schwerpunkte .focus-grid-enhanced .focus-tile .focus-tile-foot,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-tile-foot{
    grid-column:1 / -1!important;grid-row:2!important;
    margin:4px 0 0!important;padding-top:16px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-products{font-size:11px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-contact-wrap{padding:5px 25px 25px!important;justify-content:stretch!important;}
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-contact-wrap{justify-content:stretch!important;}
  #schwerpunkte .focus-grid-enhanced .focus-contact-button{min-width:0!important;width:100%!important;}
  html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile:not(.focus-story-visible),
  html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even):not(.focus-story-visible){
    transform:translate3d(0,33px,0) scale(.992)!important;
  }
}
@media(max-width:360px){
  #schwerpunkte .focus-grid-enhanced .focus-tile > .focus-click,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) > .focus-click{padding:23px 19px 8px!important;grid-template-columns:minmax(0,1fr) 62px!important;gap:12px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-photo-small{width:60px!important;height:60px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-contact-wrap{padding:5px 19px 23px!important;}
  #schwerpunkte .focus-grid-enhanced .focus-card-copy h3{font-size:22px!important;}
}
@media(prefers-reduced-motion:reduce){
  html.focus-story-ready #schwerpunkte .focus-grid-enhanced .focus-tile{opacity:1!important;transform:none!important;transition:none!important;}
  #schwerpunkte .focus-journey-line::after{transition:none!important;}
}

/* Mobile refinement: let every question use full width. The round image stays
   as a quiet visual accent in its own header row, never inside the headline. */
@media(max-width:650px){
  #schwerpunkte .focus-grid-enhanced .focus-tile > .focus-click,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) > .focus-click{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-rows:auto auto auto!important;
    gap:0!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-header,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-header{
    grid-column:1!important;grid-row:1!important;
    display:flex!important;flex-direction:row!important;
    align-items:center!important;justify-content:space-between!important;
    height:83px!important;min-height:0!important;
    margin:0 0 16px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-copy,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-copy{
    grid-column:1!important;grid-row:2!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-tile .focus-tile-foot,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-tile-foot{
    grid-column:1!important;grid-row:3!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-step-number{
    font-size:12px!important;
    letter-spacing:.19em!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-copy h3{
    font-size:clamp(25px,6.5vw,31px)!important;
    max-width:100%!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }
}
@media(max-width:360px){
  #schwerpunkte .focus-grid-enhanced .focus-card-header,
  #schwerpunkte .focus-grid-enhanced .focus-tile:nth-child(even) .focus-card-header{
    height:70px!important;
  }
  #schwerpunkte .focus-grid-enhanced .focus-card-copy h3{font-size:24px!important;}
}
