/* GoldFerse Produktsicherheit — scoped front-end styles. */
.gfps, .gfps * { box-sizing: border-box; }
.gfps { width: 100%; max-width: 900px; margin: 28px auto; font-family: inherit; }
.gfps__card {
    padding: clamp(22px, 4vw, 46px);
    border: 1px solid #d8e2dc;
    border-radius: 20px;
    background: #fff;
    color: #213029;
    box-shadow: 0 10px 32px rgba(25, 53, 37, .06);
}
.gfps__eyebrow { color: #376849; font-size: .87rem; font-weight: 700; letter-spacing: .065em; text-transform: uppercase; margin-bottom: 12px; }
.gfps__title { color: #183d2a; font-size: clamp(1.4rem, 3vw, 2.15rem); line-height: 1.2; margin: 0 0 14px; }
.gfps__intro { line-height: 1.65; max-width: 67ch; margin: 0 0 25px; }
.gfps__label { display: block; margin: 0 0 8px; font-size: 1rem; font-weight: 700; }
.gfps__controls { display: flex; align-items: stretch; gap: 10px; }
.gfps__input {
    flex: 1 1 320px; min-width: 0; width: 100%; min-height: 50px;
    border-radius: 9px; border: 1px solid #a3b7ab; background: #fff;
    padding: 11px 14px; color: #1d3326; font-size: 1rem; font-family: inherit;
}
.gfps__input:focus-visible { outline: 3px solid #accbb7; outline-offset: 2px; }
.gfps__button {
    border: 1px solid #1e5838; border-radius: 9px; background: #225d3e;
    color: #fff; font-size: 1rem; font-family: inherit; font-weight: 700;
    padding: 12px 23px; min-height: 50px; cursor: pointer;
}
.gfps__button:hover, .gfps__button:focus-visible { background: #17432c; color: #fff; }
.gfps__button:focus-visible { outline: 3px solid #accbb7; outline-offset: 2px; }
.gfps__hint { font-size: .87rem; color: #53665a; margin: 9px 0 0; }
.gfps__status { color: #576d60; border-top: 1px solid #e7ede8; font-size: .83rem; margin: 23px 0 0; padding-top: 15px; }
.gfps__notice { background: #f3f6f2; border-left: 4px solid #426b4c; color: #20372a; margin-top: 22px; padding: 14px 17px; line-height: 1.6; }
.gfps__notice strong, .gfps__notice span { display: block; }
@media (max-width: 560px) {
    .gfps { margin: 16px auto; }
    .gfps__card { border-radius: 14px; }
    .gfps__controls { flex-direction: column; }
    .gfps__button { width: 100%; }
}
/* Public result: a read-only presentation of expressly approved data. */
.gfps__result { margin-top: 24px; padding-top: 24px; border-top: 1px solid #d9e5db; }
.gfps__result-eyebrow { color: #28643f; font-size: .85rem; font-weight: 700; margin: 0 0 5px; }
.gfps__result-title { margin: 0 0 17px; color: #183d2a; font-size: 1.45rem; line-height: 1.3; }
.gfps__info { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; margin: 0 0 22px; }
.gfps__info > div { border: 1px solid #dce8de; border-radius: 10px; padding: 13px; min-width: 0; }
.gfps__info dt { color: #53665a; font-size: .82rem; margin-bottom: 4px; }
.gfps__info dd { color: #183d2a; font-weight: 700; overflow-wrap: anywhere; margin: 0; }
.gfps__result h4 { color: #183d2a; margin: 20px 0 7px; font-size: 1.02rem; }
.gfps__result p { line-height: 1.65; overflow-wrap: anywhere; }
.gfps__safety { padding: 2px 16px 11px; border-left: 4px solid #ad7742; background: #fcf9f3; margin-top: 20px; }
.gfps__manufacturer { padding-top: 5px; }
.gfps__manufacturer a { color: #1d5a37; text-decoration: underline; }
.gfps__footnote { font-size: .84rem; color: #53665a; padding-top: 14px; border-top: 1px solid #e7ede8; }
.gfps__notice a { color: inherit; text-decoration: underline; }
@media (max-width: 560px) { .gfps__info { grid-template-columns: minmax(0, 1fr); } }

/* Step 4: automatically created, read-only individual product pages. */
.gfps--product .gfps__info { margin-top: 14px; }
.gfps__product-section h3, .gfps__safety h3, .gfps__manufacturer h3 {
    color: #183d2a; margin: 22px 0 7px; font-size: 1.06rem;
}
.gfps__product-section p, .gfps__safety p, .gfps__manufacturer p {
    overflow-wrap: anywhere; line-height: 1.65; margin: 0 0 12px;
}
.gfps__back { margin: 22px 0 0; }
.gfps__back a { color: #1d5a37; text-decoration: underline; font-weight: 700; }
