/* =========================================================
   MOBILE H1 STATICPAGES V2
   Final-Tuning: gemeinsame H1-Section final 7px höher
   s_cart Orderfix: CSS muss nach mobile_shop_patch_v2.css geladen werden
   V2-Finetuning: Staticpages-Header 4px höher
   =========================================================
   Gilt für:
   - contact.php
   - service.php
   - search.php
   - contact_form.php
   - s_cart.php

   Struktur:
   - sichtbares echtes h1 in .service-page-header / .search-page-header
   - keine Produktlisten-H2
   - keine Breadcrumb-H1 wie show_subcategory

   Keine Grid-Regeln.
   Keine Badge-Regeln.
   Keine Produktkarten-Regeln.
   Keine Preis-Regeln.
   ========================================================= */

@media (max-width: 760px) {

    /*
       Static Page Header:
       Kontakt, Service und Suche haben sichtbare H1s.
       Der Block orientiert sich optisch an der eingefrorenen Category/Productlist-Höhe.
    */
    body.page-contact main#page-content-wrapper .service-page-header,
    body.page-contact-form main#page-content-wrapper .contact-form-header.service-page-header,
    body.page-cart #page-content-wrapper .row-h1.cart-page-header,
    body.s_cart #page-content-wrapper .row-h1.cart-page-header,
    body.page-service main#page-content-wrapper .service-page-header,
    body.page-search main#page-content-wrapper .search-page-header,
    body.page-search main#page-content-wrapper .service-page-header {
        margin-top: -3px !important;
        margin-left: -2px !important;
        margin-bottom: 0 !important;
        padding: 0 !important;
        border: 0 !important;
        background: transparent !important;
    }


    /*
       Kontakt-Finetuning:
       Nur contact.php 3px tiefer als die gemeinsame Staticpages-Position.
       Andere Seiten bleiben unverändert.
    */
    body.page-contact main#page-content-wrapper .service-page-header {
        margin-top: 2px !important;
    }

    /*
       Kontakt-H1-Schrift-Finetuning:
       Nur contact.php oben etwas kräftiger/größer.
    */
    body.page-contact main#page-content-wrapper .service-page-header > h1:not(.visually-hidden) {
        font-size: 24px !important;
        line-height: 1.15 !important;
    }

    body.page-contact main#page-content-wrapper .service-page-header > h1:not(.visually-hidden),
    body.page-contact-form main#page-content-wrapper .contact-form-visible-title,
    body.page-cart #page-content-wrapper .row-h1.cart-page-header > h2,
    body.s_cart #page-content-wrapper .row-h1.cart-page-header > h2,
    body.page-service main#page-content-wrapper .service-page-header > h1:not(.visually-hidden),
    body.page-search main#page-content-wrapper .search-page-header > h1:not(.visually-hidden),
    body.page-search main#page-content-wrapper .service-page-header > h1:not(.visually-hidden) {
        display: block !important;
        margin: 0 0 8px 0 !important;
        padding: 0 !important;
        font-size: 22px !important;
        line-height: 1.15 !important;
        font-weight: 300 !important;
        letter-spacing: -0.035em !important;
        color: #222 !important;
        text-transform: none !important;
        border: 0 !important;
        background: transparent !important;
    }


    /*
       s_cart Sicherheitsnetz:
       Keine eigenen Werte, nur Vererbung der exakt gleichen contact-Regel.
       Wichtig, falls alte .row-h1 h2 / .row-h1 .subtitle Regeln später geladen waren.
    */
    body.page-cart #page-content-wrapper .row-h1.cart-page-header > h2 *,
    body.s_cart #page-content-wrapper .row-h1.cart-page-header > h2 * {
        font-size: inherit !important;
        line-height: inherit !important;
        font-weight: inherit !important;
        letter-spacing: inherit !important;
        color: inherit !important;
        text-transform: inherit !important;
    }

    body.page-contact-form main#page-content-wrapper .contact-form-visible-title a,
    body.page-contact-form main#page-content-wrapper .contact-form-visible-title span {
        font-size: inherit !important;
        line-height: inherit !important;
        font-weight: inherit !important;
        letter-spacing: inherit !important;
        text-transform: inherit !important;
        color: inherit !important;
        text-decoration: none !important;
        border: 0 !important;
        background: transparent !important;
    }

    body.page-contact-form main#page-content-wrapper .contact-form-visible-title span:first-of-type {
        color: inherit !important;
        padding: 0 6px !important;
    }



    body.page-contact main#page-content-wrapper .service-page-subtitle,
    body.page-contact-form main#page-content-wrapper .contact-form-header > .service-page-subtitle,
    body.page-cart #page-content-wrapper .row-h1.cart-page-header > .subtitle,
    body.s_cart #page-content-wrapper .row-h1.cart-page-header > .subtitle,
    body.page-service main#page-content-wrapper .service-page-subtitle,
    body.page-search main#page-content-wrapper .service-page-subtitle,
    body.page-search main#page-content-wrapper .search-page-subtitle,
    body.page-search main#page-content-wrapper .search-page-header .subtitle {
        display: block !important;
        margin: 0 0 18px 0 !important;
        padding: 0 !important;
        font-size: 14px !important;
        line-height: 1.32 !important;
        font-weight: 300 !important;
        letter-spacing: -0.015em !important;
        color: #999 !important;
        background: transparent !important;
        border: 0 !important;
    }

    body.page-contact main#page-content-wrapper .service-page-subtitle strong,
    body.page-contact-form main#page-content-wrapper .contact-form-header > .service-page-subtitle strong,
    body.page-cart #page-content-wrapper .row-h1.cart-page-header > .subtitle strong,
    body.s_cart #page-content-wrapper .row-h1.cart-page-header > .subtitle strong,
    body.page-service main#page-content-wrapper .service-page-subtitle strong,
    body.page-search main#page-content-wrapper .service-page-subtitle strong,
    body.page-search main#page-content-wrapper .search-page-subtitle strong,
    body.page-search main#page-content-wrapper .search-page-header .subtitle strong {
        font-size: inherit !important;
        line-height: inherit !important;
        font-weight: 400 !important;
        color: #555 !important;
    }

    body.page-contact main#page-content-wrapper .service-page-header + hr.dotted,
    body.page-contact main#page-content-wrapper .service-page-header + hr.dotted.red,
    body.page-contact-form main#page-content-wrapper .contact-form-header + hr.dotted,
    body.page-contact-form main#page-content-wrapper .contact-form-header + hr.dotted.red,
    body.page-service main#page-content-wrapper .service-page-header + hr.dotted,
    body.page-service main#page-content-wrapper .service-page-header + hr.dotted.red,
    body.page-search main#page-content-wrapper .search-page-header + hr.dotted,
    body.page-search main#page-content-wrapper .search-page-header + hr.dotted.red,
    body.page-search main#page-content-wrapper .service-page-header + hr.dotted,
    body.page-search main#page-content-wrapper .service-page-header + hr.dotted.red {
        margin: 0 0 16px 0 !important;
        padding: 0 !important;
        border-top: 1px solid #e6e6e6 !important;
        background: none !important;
    }
/*
       Falls einzelne Staticpages ein SEO-H1 versteckt mitführen:
       versteckt lassen.
    */
    body.page-contact main#page-content-wrapper h1.visually-hidden,
    body.page-service main#page-content-wrapper h1.visually-hidden,
    body.page-search main#page-content-wrapper h1.visually-hidden,
    body.page-contact-form main#page-content-wrapper h1.visually-hidden,
    body.page-cart #page-content-wrapper h1.visually-hidden,
    body.s_cart #page-content-wrapper h1.visually-hidden,
    body.page-contact-form main#page-content-wrapper h1.visually-hidden,
    body.page-cart #page-content-wrapper h1.visually-hidden,
    body.s_cart #page-content-wrapper h1.visually-hidden {
        position: absolute !important;
        width: 1px !important;
        height: 1px !important;
        padding: 0 !important;
        margin: -1px !important;
        overflow: hidden !important;
        clip: rect(0, 0, 0, 0) !important;
        white-space: nowrap !important;
        border: 0 !important;
    }

    /*
       Service-Finetuning final:
       Nur service.php.
       Gegenüber dem letzten Versuch ca. 10px tiefer.
    */
    body.page-service main#page-content-wrapper .service-page-header {
        margin-top: 3px !important;
    }

    body.page-service main#page-content-wrapper .service-page-header > h1:not(.visually-hidden) {
        font-size: 24px !important;
        line-height: 1.15 !important;
    }

    /*
       Search-Finetuning clean from V5:
       Nur search.php 4px tiefer vom gemeinsamen Staticpages-Ausgang.
    */
    body.page-search main#page-content-wrapper .search-page-header,
    body.page-search main#page-content-wrapper .service-page-header {
        margin-top: 1px !important;
    }

    body.page-search main#page-content-wrapper .search-page-header > h1:not(.visually-hidden),
    body.page-search main#page-content-wrapper .service-page-header > h1:not(.visually-hidden) {
        font-size: 24px !important;
        line-height: 1.15 !important;
    }

    /*
       Contact-form final H1 optical position:
       Der sichtbare Titel ist .contact-form-visible-title.
       Kein padding-top mehr, sondern echte optische Verschiebung.
    */
    body.page-contact-form main#page-content-wrapper .contact-form-header.service-page-header {
        margin-top: -3px !important;
        padding-top: 0 !important;
    }

    body.page-contact-form main#page-content-wrapper .contact-form-visible-title {
        position: relative !important;
        top: 5px !important;
        display: block !important;
        margin-top: 0 !important;
        margin-bottom: 8px !important;
        padding-top: 0 !important;
        transform: none !important;
    }

    body.page-contact-form main#page-content-wrapper .contact-form-header > .service-page-subtitle {
        margin-top: 5px !important;
    }

    /*
       Contact-form final subtitle align to contact:
       Unterzeile 5px tiefer.
    */
    body.page-contact-form main#page-content-wrapper .contact-form-header > .service-page-subtitle {
        position: relative !important;
        top: 5px !important;
        margin-top: 0 !important;
    }


}
