/* JPD Produktwelt 1.4.1 – dedicated five-page Gutenberg design, no frontend overlays. */
.jpd-page-main--product .jpd-rebuild,
.jpd-rebuild {
  --jpd-accent: #a22835;
  --jpd-text: #282522;
  --jpd-muted: #655f5a;
  --jpd-border: #e8e2dc;
  --jpd-light: #f8f6f3;
  box-sizing: border-box;
  color: var(--jpd-text);
  width: 100%;
  max-width: 1120px;
  margin: 0 auto 4rem;
  padding: 0 18px;
  font-family: inherit;
}
.jpd-rebuild *, .jpd-rebuild *::before, .jpd-rebuild *::after { box-sizing:border-box; min-width:0; }
.jpd-rebuild > * { max-width: 100%; }
.jpd-rebuild .jpd-rebuild__hero {
  display:grid; grid-template-columns: 1.15fr .85fr; align-items:center;
  gap: clamp(1.5rem,5vw,4.5rem); width:100%; max-width:100%;
  background:linear-gradient(135deg,#fbfaf8 0%,#f4f1ed 100%);
  border:1px solid var(--jpd-border); border-radius:8px;
  padding:clamp(1.5rem,4vw,3.8rem); margin:1rem 0 1.4rem;
}
.jpd-rebuild .jpd-rebuild__hero>.wp-block-column { width:auto; flex-basis:auto !important; margin:0; }
.jpd-rebuild .jpd-rebuild__hero-content { width:100%; margin:0; }
.jpd-rebuild .jpd-rebuild__eyebrow { color:var(--jpd-accent); text-transform:uppercase; font-size:.72rem; letter-spacing:.16em; font-weight:750; margin:0 0 1.1rem; }
.jpd-rebuild h1.jpd-rebuild__title { font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.7rem,5.4vw,5rem); letter-spacing:-.04em; font-weight:400; line-height:1.02; margin:0 0 .4rem; color:var(--jpd-text); }
.jpd-rebuild .jpd-rebuild__subtitle {font-family:Georgia,"Times New Roman",serif;font-size:clamp(1.3rem,2.3vw,1.9rem);line-height:1.3;margin:.4rem 0 1.3rem;color:#554e49}
.jpd-rebuild .jpd-rebuild__lead {max-width:570px;font-size:clamp(.98rem,1.5vw,1.12rem);line-height:1.72;margin:0;color:var(--jpd-muted)}
.jpd-rebuild .jpd-rebuild__hero-image {display:grid;align-items:center;justify-items:center;margin:0;width:100%}
.jpd-rebuild .jpd-rebuild__packshot {display:flex;align-items:center;justify-content:center;width:100%;margin:0;min-height:260px;max-height:420px}
.jpd-rebuild .jpd-rebuild__packshot img {display:block;width:auto !important;height:auto !important;max-height:410px;max-width:100%;object-fit:contain;filter:drop-shadow(0 18px 22px rgba(28,20,16,.12))}
.jpd-rebuild .jpd-rebuild__stats {display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;width:100%;margin:0 0 clamp(2rem,5vw,4rem)}
.jpd-rebuild .jpd-rebuild__stat {border:1px solid var(--jpd-border);border-top:3px solid var(--jpd-accent);background:#fff;padding:1.15rem 1.05rem;margin:0;border-radius:4px;min-width:0}
.jpd-rebuild .jpd-rebuild__stat-label {font-size:.72rem;color:var(--jpd-muted);font-weight:650;letter-spacing:.03em;margin:0 0 .45rem}
.jpd-rebuild .jpd-rebuild__stat-value {font-size:clamp(.98rem,1.6vw,1.35rem);font-weight:700;line-height:1.3;margin:0;overflow-wrap:break-word}
.jpd-rebuild .jpd-rebuild__editorial {max-width:920px;margin:0 auto clamp(2.5rem,5vw,4rem)}
.jpd-rebuild .jpd-rebuild__intro {font-size:1.07rem;line-height:1.78;color:#514b46;margin:0 0 1.65rem}
.jpd-rebuild .jpd-rebuild__editorial-section {border-top:1px solid var(--jpd-border);padding:1.55rem 0 1rem;margin:0}
.jpd-rebuild h2 {font-family:Georgia,"Times New Roman",serif;font-weight:400;font-size:clamp(1.7rem,2.9vw,2.55rem);line-height:1.18;letter-spacing:-.02em;margin:0 0 .85rem;color:var(--jpd-text)}
.jpd-rebuild .jpd-rebuild__editorial-section p {line-height:1.78;color:var(--jpd-muted);font-size:.97rem;margin:0;max-width:780px}
.jpd-rebuild .jpd-rebuild__fineprint {margin:1.1rem 0 0;padding:1rem 1.25rem;border-left:3px solid var(--jpd-accent);background:var(--jpd-light);color:var(--jpd-muted);font-size:.92rem;line-height:1.65}
.jpd-rebuild .jpd-rebuild__declaration {max-width:100%;margin:0 0 2.5rem;padding:clamp(1.25rem,4vw,2.5rem);background:var(--jpd-light);border:1px solid var(--jpd-border);border-radius:8px}
.jpd-rebuild .jpd-rebuild__declaration>.jpd-rebuild__eyebrow {margin:0 0 .5rem}
.jpd-rebuild .jpd-rebuild__declaration>h2 {margin:0 0 .65rem}
.jpd-rebuild .jpd-rebuild__decl-intro {max-width:760px;color:var(--jpd-muted);font-size:.88rem;line-height:1.65;margin:0 0 1.6rem}
.jpd-rebuild .jpd-rebuild__decl-columns {display:grid;grid-template-columns:1fr 1fr;gap:1rem;width:100%;max-width:100%;margin:0 0 1rem;align-items:stretch}
.jpd-rebuild .jpd-rebuild__decl-columns>.wp-block-column {margin:0;flex-basis:auto !important;width:auto}
.jpd-rebuild .jpd-rebuild__decl-panel,
.jpd-rebuild .jpd-rebuild__additives {padding:clamp(1.15rem,2.5vw,1.85rem);background:#fff;border:1px solid var(--jpd-border);border-radius:5px;margin:0;height:100%}
.jpd-rebuild .jpd-rebuild__decl-panel h3,
.jpd-rebuild .jpd-rebuild__additives h3 {font-family:Georgia,"Times New Roman",serif;font-size:1.48rem;font-weight:400;line-height:1.25;margin:0 0 1rem}
.jpd-rebuild .jpd-rebuild__decl-panel p {color:#4d4742;line-height:1.82;margin:0;overflow-wrap:anywhere;font-size:.92rem}
.jpd-rebuild .jpd-rebuild__decl-panel ul {margin:0;padding:0;list-style:none}
.jpd-rebuild .jpd-rebuild__decl-panel ul li {display:flex;justify-content:space-between;gap:1rem;border-bottom:1px solid #f0ece9;padding:.48rem 0;margin:0;line-height:1.4;font-size:.92rem}
.jpd-rebuild .jpd-rebuild__decl-panel ul li:last-child {border-bottom:0}
.jpd-rebuild .jpd-rebuild__decl-panel ul li strong {font-weight:550;color:#625a54}
.jpd-rebuild .jpd-rebuild__additives {height:auto}
.jpd-rebuild .jpd-rebuild__additives h4 {font-size:.99rem;font-weight:700;margin:1.25rem 0 .5rem;padding-bottom:.4rem;border-bottom:1px solid var(--jpd-border)}
.jpd-rebuild .jpd-rebuild__additives h4:first-of-type {margin-top:.45rem}
.jpd-rebuild .jpd-rebuild__additives ul {list-style:none;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.5rem 1.2rem;margin:0;padding:0}
.jpd-rebuild .jpd-rebuild__additives li {margin:0;color:#514b45;font-size:.9rem;line-height:1.5;overflow-wrap:anywhere}
.jpd-rebuild .jpd-rebuild__additives li strong {font-weight:650;color:#2a2724}
.jpd-rebuild .jpd-rebuild__preservatives {color:var(--jpd-muted);font-size:.85rem;line-height:1.6;margin:1.3rem 0 0}
.jpd-rebuild .jpd-rebuild__footer {padding:1.65rem 0;border-top:1px solid var(--jpd-border);max-width:920px;margin:0 auto}
.jpd-rebuild .jpd-rebuild__footer p {line-height:1.6;color:var(--jpd-muted);margin:.5rem 0;font-size:.92rem}
.jpd-rebuild .jpd-rebuild__footer a {font-weight:750;color:var(--jpd-accent);text-decoration:underline;text-underline-offset:4px}
.jpd-rebuild a:focus-visible {outline:2px solid var(--jpd-accent);outline-offset:4px}
@media(max-width:850px) {
  .jpd-rebuild .jpd-rebuild__hero {grid-template-columns:1fr 0.8fr;gap:1.2rem}
  .jpd-rebuild .jpd-rebuild__stats {grid-template-columns:repeat(2,minmax(0,1fr))}
  .jpd-rebuild .jpd-rebuild__decl-columns {grid-template-columns:1fr}
}
@media(max-width:600px) {
  .jpd-page-main--product .jpd-rebuild,.jpd-rebuild {padding:0 10px;margin-bottom:2rem}
  .jpd-rebuild .jpd-rebuild__hero {grid-template-columns:1fr;margin:0 0 1rem;padding:1.5rem 1.25rem;gap:1rem}
  .jpd-rebuild .jpd-rebuild__hero-content {order:1}
  .jpd-rebuild .jpd-rebuild__hero-image {order:2}
  .jpd-rebuild .jpd-rebuild__packshot {min-height:170px;max-height:250px}
  .jpd-rebuild .jpd-rebuild__packshot img {max-height:250px}
  .jpd-rebuild .jpd-rebuild__stats {gap:.6rem;margin-bottom:2rem}
  .jpd-rebuild .jpd-rebuild__stat {padding:.95rem .8rem}
  .jpd-rebuild .jpd-rebuild__declaration {padding:1rem .7rem}
  .jpd-rebuild .jpd-rebuild__decl-panel,.jpd-rebuild .jpd-rebuild__additives {padding:1rem}
  .jpd-rebuild .jpd-rebuild__additives ul {grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.jpd-rebuild *{scroll-behavior:auto}}

/* Gutenberg Details block: visible and keyboard-accessible accordion, without JS. */
.jpd-rebuild .jpd-rebuild__accordion.wp-block-details {
  width:100%;margin:0;padding:0;background:#fff;
  border:1px solid var(--jpd-border);border-radius:6px;
  overflow:hidden;color:var(--jpd-text)
}
.jpd-rebuild .jpd-rebuild__accordion>summary {
  position:relative;display:block;cursor:pointer;list-style:none;
  padding:1.25rem 3.4rem 1.25rem 1.4rem;
  font-size:1rem;line-height:1.55;font-weight:750;color:var(--jpd-text);
  background:#fff;transition:background-color .15s ease;
}
.jpd-rebuild .jpd-rebuild__accordion>summary::-webkit-details-marker {display:none}
.jpd-rebuild .jpd-rebuild__accordion>summary::marker {content:""}
.jpd-rebuild .jpd-rebuild__accordion>summary::after {
  content:"+";position:absolute;right:1.35rem;top:50%;transform:translateY(-50%);
  color:var(--jpd-accent);font-size:1.6rem;font-weight:400;line-height:1;
}
.jpd-rebuild .jpd-rebuild__accordion[open]>summary::after {content:"−"}
.jpd-rebuild .jpd-rebuild__accordion>summary:hover {background:#faf8f6}
.jpd-rebuild .jpd-rebuild__accordion>summary:focus-visible {outline:3px solid var(--jpd-accent);outline-offset:-3px}
.jpd-rebuild .jpd-rebuild__accordion>.jpd-rebuild__decl-columns,
.jpd-rebuild .jpd-rebuild__accordion>.jpd-rebuild__additives {margin:1.1rem 1.1rem 1.1rem;width:auto}
.jpd-rebuild .jpd-rebuild__accordion[open]>summary {border-bottom:1px solid var(--jpd-border)}
@media(max-width:600px){
  .jpd-rebuild .jpd-rebuild__accordion>summary {padding:1.05rem 2.6rem 1.05rem .95rem;font-size:.96rem}
  .jpd-rebuild .jpd-rebuild__accordion>summary::after {right:.95rem}
  .jpd-rebuild .jpd-rebuild__accordion>.jpd-rebuild__decl-columns,
  .jpd-rebuild .jpd-rebuild__accordion>.jpd-rebuild__additives {margin:.65rem;width:auto}
}
