
body.single-product #primary {
    --ti-product-readable-font: Arial, Helvetica, sans-serif;
    --ti-product-readable-text: #545252;
}

/* Use the exact approved German product font family throughout the reading
   and configuration surfaces without changing navigation or checkout UI. */
body.single-product #primary .woocommerce-product-details__short-description,
body.single-product #primary .woocommerce-product-details__short-description *,
body.single-product #primary form.cart,
body.single-product #primary form.cart p,
body.single-product #primary form.cart li,
body.single-product #primary form.cart label,
body.single-product #primary form.cart select,
body.single-product #primary form.cart textarea,
body.single-product #primary form.cart input,
body.single-product #primary form.cart .wc-pao-addon-name,
body.single-product #primary form.cart .wc-pao-addon-description,
body.single-product #primary form.cart .product-addon,
body.single-product #primary #tab-description,
body.single-product #primary #tab-description * {
    font-family: var(--ti-product-readable-font) !important;
}

/* Short description: German 16px / 1.68 reading rhythm. */
body.single-product #primary .woocommerce-product-details__short-description,
body.single-product #primary .woocommerce-product-details__short-description p,
body.single-product #primary .woocommerce-product-details__short-description li {
    color: var(--ti-product-readable-text) !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
}

body.single-product #primary .woocommerce-product-details__short-description {
    margin-top: 18px !important;
    margin-bottom: 24px !important;
    overflow-wrap: anywhere;
}

body.single-product #primary .woocommerce-product-details__short-description p {
    margin-top: 12.8px !important;
    margin-bottom: 4.8px !important;
}

/* Variations and Product Add-Ons: same sizes, hierarchy and spacing as DE. */
body.single-product #primary form.cart,
body.single-product #primary form.cart p,
body.single-product #primary form.cart li,
body.single-product #primary form.cart label,
body.single-product #primary form.cart .wc-pao-addon-container,
body.single-product #primary form.cart .wc-pao-addon-wrap,
body.single-product #primary form.cart .wc-pao-addon-description,
body.single-product #primary form.cart .addon-description,
body.single-product #primary form.cart .product-addon-totals {
    color: var(--ti-product-readable-text);
    font-size: 16px !important;
    line-height: 1.68 !important;
}

body.single-product #primary form.cart table.variations th.label,
body.single-product #primary form.cart table.variations th.label label {
    color: #2a211b !important;
    font-size: 16px !important;
    font-weight: 700 !important;
    line-height: 1.5 !important;
}

body.single-product #primary form.cart select,
body.single-product #primary form.cart textarea,
body.single-product #primary form.cart input[type="text"],
body.single-product #primary form.cart input[type="email"],
body.single-product #primary form.cart input[type="number"] {
    font-size: 16px !important;
    line-height: 1.4 !important;
    min-height: 44px;
    box-sizing: border-box;
}

body.single-product #primary form.cart .wc-pao-addon-container {
    margin: 0 0 24px !important;
}

body.single-product #primary form.cart h3.wc-pao-addon-name,
body.single-product #primary form.cart h3.addon-name,
body.single-product #primary form.cart .product-addon > h3 {
    color: #2a211b !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.34 !important;
    margin: 25px 0 10px !important;
}

body.single-product #primary form.cart .wc-pao-addon-description,
body.single-product #primary form.cart .addon-description {
    color: #54463d !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    line-height: 1.68 !important;
    margin: 0 0 12px !important;
}

body.single-product #primary form.cart .wc-pao-addon-wrap {
    margin-bottom: 10px !important;
}

/* Long description: German body, list, heading and table hierarchy. */
body.single-product #primary #tab-description {
    color: var(--ti-product-readable-text) !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
    overflow-wrap: anywhere;
}

body.single-product #primary #tab-description p:not(.lead):not(.ti-core-eyebrow):not(.ti-wh-editorial-kicker),
body.single-product #primary #tab-description li,
body.single-product #primary #tab-description summary {
    color: var(--ti-product-readable-text) !important;
    font-size: 16px !important;
    line-height: 1.68 !important;
}

body.single-product #primary #tab-description p.lead {
    font-size: 18px !important;
    line-height: 1.55 !important;
}

body.single-product #primary #tab-description p.ti-core-eyebrow,
body.single-product #primary #tab-description p.ti-wh-editorial-kicker {
    font-size: 12.5px !important;
    line-height: 1.4 !important;
}

body.single-product #primary #tab-description h2 {
    color: #2a211b !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.28 !important;
}

body.single-product #primary #tab-description h3 {
    color: #2a211b !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.35 !important;
}

body.single-product #primary #tab-description td,
body.single-product #primary #tab-description th {
    font-size: 15px !important;
    line-height: 1.5 !important;
}


/* Final specificity bridge: override older UK editorial CSS with the approved
   German long-description heading rhythm and spacing. */
body.single-product #primary #tab-description > h2:first-child {
    color: #2a211b !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.28 !important;
    margin: 19.2px 0 7.2px !important;
}

body.single-product #primary #tab-description .ti-wh-product h2,
body.single-product #primary #tab-description .ti-wh-editorial-description h2,
body.single-product #primary #tab-description article[class*="ti-wh"] h2 {
    color: #2a211b !important;
    font-size: 24px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.28 !important;
    margin: 30px 0 14px !important;
}

body.single-product #primary #tab-description .ti-wh-product h3,
body.single-product #primary #tab-description .ti-wh-editorial-description h3,
body.single-product #primary #tab-description article[class*="ti-wh"] h3 {
    color: #2a211b !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    letter-spacing: 1px !important;
    line-height: 1.35 !important;
}

/* Match the German mobile reading scale while retaining 16px form controls. */
@media (max-width: 700px) {
    body.single-product #primary .woocommerce-product-details__short-description,
    body.single-product #primary .woocommerce-product-details__short-description p,
    body.single-product #primary .woocommerce-product-details__short-description li,
    body.single-product #primary form.cart,
    body.single-product #primary form.cart p,
    body.single-product #primary form.cart li,
    body.single-product #primary form.cart label,
    body.single-product #primary form.cart .wc-pao-addon-description {
        font-size: 16px !important;
        line-height: 1.65 !important;
    }
}

@media (max-width: 520px) {
    body.single-product #primary #tab-description,
    body.single-product #primary #tab-description p:not(.lead):not(.ti-core-eyebrow):not(.ti-wh-editorial-kicker),
    body.single-product #primary #tab-description li,
    body.single-product #primary #tab-description summary {
        font-size: 15px !important;
        line-height: 1.68 !important;
    }

    body.single-product #primary #tab-description h2 {
        font-size: 21px !important;
    }

    body.single-product #primary #tab-description h3 {
        font-size: 18px !important;
    }

    body.single-product #primary #tab-description td,
    body.single-product #primary #tab-description th {
        font-size: 14px !important;
    }
}

@media (max-width: 520px) {
    body.single-product #primary #tab-description .ti-wh-product h2,
    body.single-product #primary #tab-description .ti-wh-editorial-description h2,
    body.single-product #primary #tab-description article[class*="ti-wh"] h2 {
        font-size: 21px !important;
    }

    body.single-product #primary #tab-description .ti-wh-product h3,
    body.single-product #primary #tab-description .ti-wh-editorial-description h3,
    body.single-product #primary #tab-description article[class*="ti-wh"] h3 {
        font-size: 18px !important;
    }
}

