
/* FFZ Platform 2.0 – Sprint Öffentlich 1.5.0 – Umzug */
.ffz-umzug{margin:0;background:#eef2f6;color:#20252b;font-family:Arial,Helvetica,sans-serif}
.ffz-umzug *{box-sizing:border-box}
.ffz-umzug__page{width:calc(100% - 30px);max-width:1750px;margin:15px auto;background:#fff;box-shadow:0 3px 18px rgba(0,0,0,.12)}
.ffz-umzug__header{position:relative;display:grid;grid-template-columns:minmax(190px,25%) minmax(420px,1fr) minmax(150px,20%);gap:20px;align-items:center;min-height:185px;padding:18px 24px;overflow:hidden;background:linear-gradient(120deg,#07376f 0%,#0d5aa4 52%,#153f8f 100%);color:#fff;border-bottom:7px solid #d71920}
.ffz-umzug__header::after{content:"";position:absolute;right:-6%;bottom:-22px;width:62%;height:44px;background:#fff;transform:rotate(-2deg);opacity:.95}
.ffz-umzug__hat,.ffz-umzug__brand,.ffz-umzug__logo{position:relative;z-index:2;min-width:0}
.ffz-umzug__hat img{display:block;width:min(330px,100%);height:auto;filter:drop-shadow(0 5px 7px rgba(0,0,0,.35))}
.ffz-umzug__brand{text-align:center;text-shadow:0 2px 2px rgba(0,0,0,.25)}
.ffz-umzug__brand h1{margin:4px 0 8px;font-size:clamp(1.7rem,3vw,3rem);line-height:1.05;color:#fff}
.ffz-umzug__brand p{margin:0;font-size:1.05rem}
.ffz-umzug__eyebrow{text-transform:uppercase;letter-spacing:.11em;font-weight:700}
.ffz-umzug__logo{text-align:center}.ffz-umzug__logo img{display:block;width:82px;height:auto;margin:0 auto 8px;border-radius:4px}.ffz-umzug__logo strong{display:block}
.ffz-umzug__layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(235px,22%);gap:30px;padding:28px}
.ffz-umzug__content{min-width:0}
.ffz-umzug__sidebar{min-width:0}
.ffz-umzug__mainnav ul,.ffz-umzug__subnav ul{list-style:none;margin:0;padding:0}
.ffz-umzug__mainnav li{margin:0 0 9px}.ffz-umzug__mainnav a{width:100%!important;margin:0!important}
.ffz-umzug__subnav{margin-top:24px;padding:14px;border:1px solid #cfd7e1;border-radius:10px;background:#f5f8fb}
.ffz-umzug__subnav h2{margin:0 0 12px;text-align:center;color:#153f8f;font-size:1.1rem}
.ffz-umzug__subnav li{margin:0 0 7px}.ffz-umzug__subnav a{display:block;padding:10px 11px;border-left:4px solid #153f8f;border-radius:4px;background:#fff;color:#20252b;text-decoration:none;font-weight:700;line-height:1.25}
.ffz-umzug__subnav a:hover,.ffz-umzug__subnav a:focus-visible,.ffz-umzug__subnav a.aktiv,.ffz-umzug__subnav a[aria-current="page"]{border-left-color:#d71920;background:linear-gradient(135deg,#eaf2ff,#fff0f0);color:#9d0000}
.ffz-umzug__sidebrand{text-align:center;margin:25px 0}.ffz-umzug__sidebrand img{width:190px;max-width:90%;height:auto}
.ffz-umzug__footer{display:flex;justify-content:space-between;gap:20px;padding:16px 28px;background:#153f8f;color:#fff;font-size:.86rem}
.umzug-hero,.umzug-card,.umzug-note,.umzug-danger,.umzug-info{margin-bottom:22px;padding:21px;border-radius:10px}
.umzug-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(170px,260px);gap:24px;align-items:center;border:1px solid #cfd7e1;background:linear-gradient(135deg,#edf5ff,#fff4f4)}
.umzug-hero h2{margin-top:0;color:#153f8f;font-size:clamp(1.5rem,2.4vw,2.35rem)}
.umzug-hero img{display:block;max-width:100%;height:auto;margin:auto}
.umzug-card{border:1px solid #d8dde3;background:#fff;box-shadow:0 2px 7px rgba(0,0,0,.05)}
.umzug-card h2,.umzug-card h3{color:#153f8f}
.umzug-card h2:first-child,.umzug-card h3:first-child{margin-top:0}
.umzug-card p,.umzug-card li,.umzug-note,.umzug-info,.umzug-danger{line-height:1.65}
.umzug-note{border-left:6px solid #d49a00;background:#fff8dc}
.umzug-info{border-left:6px solid #153f8f;background:#edf5ff}
.umzug-danger{border-left:6px solid #d71920;background:#fff0f0;color:#750000;font-weight:700}
.umzug-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.umzug-timeline{display:grid;grid-template-columns:105px minmax(0,1fr);gap:0;margin:12px 0}
.umzug-timeline dt,.umzug-timeline dd{margin:0;padding:10px;border-bottom:1px solid #e0e3e7}.umzug-timeline dt{font-weight:700;color:#153f8f}
.umzug-table-wrap{width:100%;overflow-x:auto}
.umzug-table{width:100%;border-collapse:collapse;background:#fff}.umzug-table th,.umzug-table td{padding:9px;border:1px solid #ccd3dc;text-align:left;vertical-align:top}.umzug-table th{background:#153f8f;color:#fff}
.umzug-image{display:block;max-width:100%;height:auto;margin:15px auto;border-radius:8px;box-shadow:0 3px 12px rgba(0,0,0,.12)}
.umzug-actions{display:flex;gap:10px;flex-wrap:wrap;margin:15px 0}
.umzug-actions .ffz-button{margin:0}
@media(max-width:900px){.ffz-umzug__header{grid-template-columns:minmax(150px,25%) 1fr minmax(120px,18%)}.ffz-umzug__layout{grid-template-columns:minmax(0,1fr) 220px;gap:20px;padding:20px}}
@media(max-width:720px){.ffz-umzug__page{width:100%;margin:0;box-shadow:none}.ffz-umzug__header{display:flex;flex-direction:column;padding:16px}.ffz-umzug__hat img{width:230px}.ffz-umzug__logo{display:none}.ffz-umzug__layout{display:flex;flex-direction:column;padding:15px}.ffz-umzug__content{order:1}.ffz-umzug__sidebar{order:2}.ffz-umzug__mainnav ul,.ffz-umzug__subnav ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.ffz-umzug__mainnav li,.ffz-umzug__subnav li{margin:0}.umzug-hero{grid-template-columns:1fr;text-align:center}.umzug-grid{grid-template-columns:1fr}.ffz-umzug__footer{flex-direction:column;text-align:center}}
@media(max-width:480px){.ffz-umzug__mainnav ul,.ffz-umzug__subnav ul{grid-template-columns:1fr}.umzug-timeline{grid-template-columns:85px minmax(0,1fr)}}
@media print{.ffz-umzug{background:#fff}.ffz-umzug__page{width:100%;margin:0;box-shadow:none}.ffz-umzug__sidebar,.ffz-umzug__footer{display:none}.ffz-umzug__layout{display:block;padding:0}.ffz-umzug__header{min-height:auto;background:#fff!important;color:#000;border-bottom:2px solid #000}.ffz-umzug__brand h1{color:#000;text-shadow:none}.ffz-umzug__brand{text-shadow:none}.ffz-umzug__hat img{width:180px}.umzug-card{box-shadow:none;break-inside:avoid}}


/* VMOBIL – Anreise */
.umzug-vmobil{
    margin-top:15px;
    padding:15px;
    overflow:hidden;
    border:1px solid #c9d1dc;
    border-radius:8px;
    background:#fff;
}
.umzug-vmobil > div,
.umzug-vmobil iframe{
    width:100%;
    max-width:100%;
}


/* Sprint 1.5.0b – Hut nur oben rechts und unter der Navigation */
.ffz-umzug__header{
    display:block;
    min-height:155px;
    padding:24px 220px 24px 28px;
}
.ffz-umzug__brand{
    text-align:center;
    max-width:1050px;
    margin:0 auto;
}
.ffz-umzug__hat,
.ffz-umzug__logo{
    display:none !important;
}
.ffz-umzug__topmark{
    position:absolute;
    top:10px;
    right:18px;
    z-index:3;
    width:185px;
}
.ffz-umzug__topmark img{
    display:block;
    width:100%;
    height:auto;
    margin-left:auto;
    filter:drop-shadow(0 4px 6px rgba(0,0,0,.28));
}
.ffz-umzug__sidebrand{
    margin:20px 0 0;
    padding-top:18px;
    border-top:1px solid #d7dde5;
}
.ffz-umzug__sidebrand img{
    display:block;
    width:180px;
    max-width:90%;
    height:auto;
    margin:0 auto;
}
.umzug-hero{
    grid-template-columns:1fr;
}
.umzug-hero > img{
    display:none !important;
}

@media(max-width:720px){
    .ffz-umzug__header{
        min-height:auto;
        padding:18px 18px 115px;
    }
    .ffz-umzug__topmark{
        top:auto;
        bottom:8px;
        right:50%;
        transform:translateX(50%);
        width:150px;
    }
    .ffz-umzug__sidebrand img{
        width:150px;
    }
}


/* ==========================================================
   Sprint 1.5.0d – ECHTER FIX Kopfbereich
   ========================================================== */

/*
 * Der entscheidende Unterschied zu 1.5.0c:
 * Nicht nur min-height reduzieren, sondern eine echte feste Desktop-Höhe
 * setzen und das Keyvisual innerhalb dieser Höhe begrenzen.
 */

@media (min-width: 721px) {

    .ffz-umzug__header {
        position: relative !important;
        display: block !important;
        height: 118px !important;
        min-height: 118px !important;
        max-height: 118px !important;
        padding: 13px 180px 13px 22px !important;
        overflow: hidden !important;
    }

    .ffz-umzug__brand {
        max-width: 780px !important;
        height: 92px !important;
        margin: 0 auto !important;
        display: flex !important;
        flex-direction: column !important;
        justify-content: center !important;
        text-align: center !important;
    }

    .ffz-umzug__eyebrow {
        margin: 0 0 2px !important;
        font-size: .72rem !important;
        line-height: 1.1 !important;
    }

    .ffz-umzug__brand h1 {
        margin: 1px 0 3px !important;
        font-size: clamp(1.25rem, 1.8vw, 1.9rem) !important;
        line-height: 1.02 !important;
    }

    .ffz-umzug__brand p {
        margin: 0 !important;
        font-size: .78rem !important;
        line-height: 1.15 !important;
    }

    .ffz-umzug__topmark {
        position: absolute !important;
        top: 7px !important;
        right: 15px !important;
        width: 150px !important;
        height: 100px !important;
        overflow: hidden !important;
        display: flex !important;
        align-items: center !important;
        justify-content: flex-end !important;
    }

    .ffz-umzug__topmark img {
        display: block !important;
        width: auto !important;
        max-width: 150px !important;
        height: auto !important;
        max-height: 96px !important;
        object-fit: contain !important;
    }
}

/* Mobil bleibt flexibel, aber ebenfalls klar begrenzt. */
@media (max-width: 720px) {

    .ffz-umzug__header {
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        padding: 12px 12px 74px !important;
        overflow: hidden !important;
    }

    .ffz-umzug__brand h1 {
        font-size: 1.35rem !important;
    }

    .ffz-umzug__brand p {
        font-size: .78rem !important;
    }

    .ffz-umzug__topmark {
        position: absolute !important;
        top: auto !important;
        right: 50% !important;
        bottom: 5px !important;
        transform: translateX(50%) !important;
        width: 105px !important;
        height: 62px !important;
        overflow: hidden !important;
    }

    .ffz-umzug__topmark img {
        width: auto !important;
        max-width: 105px !important;
        max-height: 60px !important;
        object-fit: contain !important;
    }
}


/* ==========================================================
   Sprint Öffentlich 1.5.0e
   Zusätzlicher Hut ausschließlich auf umzug.php
   ========================================================== */
.umzug-start-hut{
    width:100%;
    margin:4px 0 16px;
    text-align:center;
}

.umzug-start-hut img{
    display:inline-block;
    width:270px;       /* ca. 1,5 x 180px unter der Navigation */
    max-width:70%;
    height:auto;
}

@media(max-width:720px){
    .umzug-start-hut img{
        width:225px;   /* ca. 1,5 x mobile 150px */
        max-width:75%;
    }
}


/* Sprint 1.5.0f – Korrektur der sichtbaren Hutgröße auf umzug.php */
.umzug-start-hut img{
    width:105px !important;
    max-width:105px !important;
    height:auto !important;
}

@media(max-width:720px){
    .umzug-start-hut img{
        width:90px !important;
        max-width:90px !important;
    }
}
