/* =========================================================
   ONEWAY_COMPACT_BOOKING_V3
   Eine Buchungskarte innerhalb des Hero
   ========================================================= */


/* Alter Wizard bleibt komplett unsichtbar */

#mietanfrage-alt{
    display:none !important;
}


/* ---------------------------------------------------------
   Booking V2 ist KEIN eigener Seitenabschnitt mehr.
   Es ist nur die rechte Spalte des vorhandenen Hero.
   --------------------------------------------------------- */

.ow2-booking,
.ow2-booking *{
    box-sizing:border-box;
}


.ow2-booking{
    width:100%;
    min-width:0;
    margin:0;
    padding:0;
    align-self:start;
    background:transparent;
    color:#132a40;
}


.ow2-wrap{
    width:100%;
    max-width:none;
    margin:0;
    padding:0;
}


/*
 * Diese Elemente hatten vorher unnötig einen zweiten
 * Hero innerhalb des eigentlichen Hero erzeugt.
 */

.ow2-head,
.ow2-info-card{
    display:none !important;
}


.ow2-form{
    width:100%;
    margin:0;
}


/* ---------------------------------------------------------
   Hero selbst
   --------------------------------------------------------- */

.hero-grid{
    align-items:start !important;
    gap:clamp(38px,6vw,82px) !important;
}


/* ---------------------------------------------------------
   EINHEITLICHE BUCHUNGSKARTE
   --------------------------------------------------------- */

.ow2-search-card,
.ow2-results,
.ow2-contact,
.ow2-done{
    width:100%;
    margin:0 !important;
    padding:26px;
    border:1px solid #dce5ed;
    border-radius:18px;
    background:#fff;
    box-shadow:
        0 18px 48px rgba(25,50,72,.10);
}


/*
 * Nur eine Ansicht gleichzeitig.
 */

.ow2-booking [hidden]{
    display:none !important;
}


/* ---------------------------------------------------------
   Kopf innerhalb der Karte
   --------------------------------------------------------- */

.ow2-section-head{
    display:flex;
    align-items:center;
    gap:11px;
    margin:0 0 21px;
}


.ow2-number{
    display:flex;
    flex:0 0 34px;
    align-items:center;
    justify-content:center;
    width:34px;
    height:34px;
    border-radius:50%;
    background:#086fd0;
    color:#fff;
    font-size:12px;
    font-weight:900;
}


.ow2-section-head strong{
    display:block;
    margin:0 0 2px;
    color:#142b41;
    font-size:17px;
    line-height:1.2;
}


.ow2-section-head div > span{
    display:block;
    color:#74879a;
    font-size:11px;
    line-height:1.35;
}


/* ---------------------------------------------------------
   Eingaben
   --------------------------------------------------------- */

.ow2-field-grid,
.ow2-contact-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:13px;
}


.ow2-field{
    display:block;
    min-width:0;
}


.ow2-field > span{
    display:block;
    margin:0 0 6px;
    color:#435a70;
    font-size:11px;
    font-weight:800;
}


.ow2-field input{
    width:100%;
    min-width:0;
    height:49px;
    margin:0;
    padding:0 13px;
    border:1px solid #ccd8e2;
    border-radius:10px;
    outline:none;
    background:#fff;
    color:#172d42;
    font:inherit;
    font-size:13px;
    transition:
        border-color .15s ease,
        box-shadow .15s ease,
        background .15s ease;
}


.ow2-field input:hover{
    border-color:#b4c6d5;
}


.ow2-field input:focus{
    border-color:#2888dc;
    box-shadow:
        0 0 0 3px rgba(20,124,216,.11);
}


.ow2-input-wrap{
    position:relative;
}


.ow2-input-wrap input{
    padding-left:45px;
}


.ow2-input-icon{
    position:absolute;
    z-index:2;
    left:11px;
    top:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    width:25px;
    height:25px;
    transform:translateY(-50%);
    border-radius:50%;
    background:#e5f2ff;
    color:#0970c9;
    font-size:10px;
    font-weight:950;
    pointer-events:none;
}


.ow2-input-icon-destination{
    background:#e7f7ec;
    color:#21834d;
}


/* ---------------------------------------------------------
   Anhängertyp
   --------------------------------------------------------- */

.ow2-type-block{
    margin-top:19px;
    padding-top:17px;
    border-top:1px solid #edf1f4;
}


.ow2-type-title{
    display:flex;
    align-items:baseline;
    gap:7px;
    margin-bottom:10px;
}


.ow2-type-title strong{
    color:#283f54;
    font-size:12px;
}


.ow2-type-title span{
    color:#8291a0;
    font-size:10px;
}


.ow2-types{
    display:flex;
    gap:6px;
    width:100%;
    overflow-x:auto;
    padding:1px 1px 5px;
    scrollbar-width:thin;
}


.ow2-chip{
    position:relative;
    flex:none;
    cursor:pointer;
}


.ow2-chip input{
    position:absolute;
    opacity:0;
    pointer-events:none;
}


.ow2-chip span{
    display:block;
    padding:8px 11px;
    border:1px solid #d6e0e8;
    border-radius:999px;
    background:#fff;
    color:#51687c;
    font-size:10px;
    font-weight:850;
    white-space:nowrap;
    transition:.15s ease;
}


.ow2-chip input:checked + span{
    border-color:#1380dd;
    background:#ebf6ff;
    color:#0869bd;
    box-shadow:
        0 0 0 2px rgba(19,128,221,.07);
}


/* ---------------------------------------------------------
   Hauptbutton
   --------------------------------------------------------- */

.ow2-primary{
    display:flex;
    align-items:center;
    justify-content:center;
    gap:12px;
    width:100%;
    min-height:50px;
    margin:18px 0 0;
    padding:0 18px;
    border:0;
    border-radius:10px;
    background:#086fd0;
    color:#fff;
    cursor:pointer;
    font:inherit;
    font-size:13px;
    font-weight:900;
    box-shadow:
        0 9px 22px rgba(8,111,208,.18);
    transition:
        background .15s ease,
        transform .15s ease;
}


.ow2-primary:hover{
    background:#0565bd;
    transform:translateY(-1px);
}


.ow2-primary:disabled{
    opacity:.60;
    cursor:wait;
    transform:none;
}


.ow2-primary b{
    font-size:18px;
    line-height:1;
}


/* ---------------------------------------------------------
   Kleine Hinweise
   --------------------------------------------------------- */

.ow2-search-foot{
    display:flex;
    flex-wrap:wrap;
    gap:5px 13px;
    margin-top:11px;
    color:#81909e;
    font-size:9px;
    line-height:1.4;
}


.ow2-error{
    margin:13px 0 0;
    padding:9px 11px;
    border:1px solid #efcccc;
    border-radius:8px;
    background:#fff4f4;
    color:#9d3737;
    font-size:11px;
    line-height:1.4;
}


/* =========================================================
   ERGEBNISSE
   Dieselbe Karte ersetzt die Suche
   ========================================================= */

.ow2-results{
    padding:24px;
}


.ow2-results-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:14px;
    margin-bottom:15px;
}


.ow2-results-head h3{
    margin:0;
    color:#132a40;
    font-size:21px;
    line-height:1.15;
}


.ow2-eyebrow{
    display:block;
    margin-bottom:4px;
    color:#0874cf;
    font-size:9px;
    font-weight:950;
    letter-spacing:.08em;
    text-transform:uppercase;
}


.ow2-result-meta{
    margin-top:3px;
    color:#77899a;
    font-size:9px;
    font-weight:800;
}


.ow2-stage-tools{
    display:flex;
    align-items:center;
    gap:8px;
    margin-left:auto;
}


.ow2-secondary{
    min-height:33px;
    padding:0 10px;
    border:1px solid #cbd8e2;
    border-radius:8px;
    background:#fff;
    color:#496176;
    cursor:pointer;
    font:inherit;
    font-size:9px;
    font-weight:850;
}


.ow2-secondary:hover{
    border-color:#91b8d9;
    background:#f5faff;
    color:#0869ba;
}


/*
 * Maximal eine kompakte Kartenhöhe.
 * Mehr Treffer werden innerhalb des Panels gescrollt,
 * nicht die ganze Webseite.
 */

.ow2-result-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:9px;
    max-height:355px;
    overflow-y:auto;
    padding-right:3px;
    scrollbar-width:thin;
}


.ow2-result-card{
    display:flex;
    flex-direction:column;
    min-width:0;
    min-height:150px;
    padding:13px;
    border:1px solid #dbe5ed;
    border-radius:11px;
    background:#fbfdff;
}


.ow2-result-top{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:7px;
}


.ow2-result-type{
    color:#142b40;
    font-size:17px;
    font-weight:950;
}


.ow2-result-count{
    flex:none;
    padding:4px 7px;
    border-radius:999px;
    background:#e8f6ed;
    color:#267747;
    font-size:8px;
    font-weight:950;
}


.ow2-result-place{
    margin-top:7px;
    color:#536b80;
    font-size:11px;
    font-weight:750;
}


.ow2-result-distance{
    margin:3px 0 10px;
    color:#8796a4;
    font-size:9px;
    line-height:1.35;
}


.ow2-result-select{
    width:100%;
    min-height:35px;
    margin-top:auto;
    padding:0 8px;
    border:1px solid #9dc7ea;
    border-radius:8px;
    background:#fff;
    color:#076bbc;
    cursor:pointer;
    font:inherit;
    font-size:9px;
    font-weight:900;
}


.ow2-result-select:hover{
    background:#edf7ff;
}


.ow2-empty{
    grid-column:1/-1;
    padding:25px 18px;
    border:1px dashed #c8d5df;
    border-radius:11px;
    background:#fafcfd;
    text-align:center;
}


.ow2-empty strong,
.ow2-empty span{
    display:block;
}


.ow2-empty strong{
    margin-bottom:5px;
    color:#263e53;
    font-size:12px;
}


.ow2-empty span{
    color:#738598;
    font-size:10px;
}


.ow2-manual{
    width:auto;
    min-width:150px;
    margin:13px auto 0;
}


/* =========================================================
   KONTAKT
   Wieder dieselbe Fläche
   ========================================================= */

.ow2-contact{
    padding:24px;
}


.ow2-contact-head{
    margin-bottom:19px;
}


.ow2-contact-head .ow2-section-head{
    margin-bottom:12px;
}


.ow2-selected{
    padding:9px 11px;
    border-radius:9px;
    background:#edf7ff;
    color:#265f90;
    font-size:10px;
    font-weight:800;
    line-height:1.4;
}


.ow2-contact-grid{
    margin-top:0;
}


.ow2-primary-contact{
    width:100%;
}


.ow2-test-note{
    margin:9px 0 0;
    color:#8a98a6;
    font-size:9px;
    line-height:1.4;
}


/* =========================================================
   ABSCHLUSS
   ========================================================= */

.ow2-done{
    display:flex;
    align-items:flex-start;
    gap:14px;
    padding:26px;
}


.ow2-done-icon{
    display:flex;
    flex:0 0 44px;
    align-items:center;
    justify-content:center;
    width:44px;
    height:44px;
    border-radius:50%;
    background:#e8f7ed;
    color:#25814a;
    font-size:19px;
    font-weight:950;
}


.ow2-done h3{
    margin:0 0 5px;
    color:#173047;
    font-size:18px;
}


.ow2-done p{
    margin:0;
    color:#718497;
    font-size:10px;
    line-height:1.5;
}


/* ---------------------------------------------------------
   Mobile / Tablet
   --------------------------------------------------------- */

@media(max-width:900px){

    .hero-grid{
        gap:30px !important;
    }

    .ow2-booking{
        width:100%;
    }

}


@media(max-width:620px){

    .ow2-search-card,
    .ow2-results,
    .ow2-contact,
    .ow2-done{
        padding:18px;
        border-radius:14px;
    }

    .ow2-field-grid,
    .ow2-contact-grid{
        grid-template-columns:1fr;
        gap:11px;
    }

    .ow2-result-grid{
        grid-template-columns:1fr;
        max-height:390px;
    }

    .ow2-results-head{
        display:block;
    }

    .ow2-stage-tools{
        justify-content:space-between;
        margin:10px 0 0;
    }

    .ow2-type-title{
        display:block;
    }

    .ow2-type-title span{
        display:block;
        margin-top:2px;
    }

}


/* =========================================================
   ENDE ONEWAY_COMPACT_BOOKING_V3
   ========================================================= */


/* =========================================================
   ONEWAY_HERO_POLISH_V4
   Proportionen / Hero / Buchungskarte
   ========================================================= */


/* ---------------------------------------------------------
   HERO NICHT MEHR KÜNSTLICH HOCH
   --------------------------------------------------------- */

.hero{
    min-height:0 !important;
    padding-top:54px !important;
    padding-bottom:42px !important;
}


.hero .hero-grid{
    grid-template-columns:
        minmax(0, .92fr)
        minmax(430px, 1.08fr) !important;

    align-items:start !important;

    gap:56px !important;
}


/* ---------------------------------------------------------
   LINKE HERO-SEITE
   --------------------------------------------------------- */

.hero-copy{
    align-self:start;
    padding-top:17px !important;
}


.hero-copy .eyebrow{
    margin-bottom:13px !important;
}


.hero-copy h1{
    max-width:570px;
    margin-bottom:18px !important;
}


.hero-copy .hero-lead{
    max-width:535px;
    margin-bottom:22px !important;
    line-height:1.58 !important;
}


.hero-benefits{
    margin-top:19px !important;
    margin-bottom:21px !important;
}


.hero-benefits > div{
    margin-bottom:7px !important;
}


.hero-actions{
    margin-top:20px !important;
    gap:15px !important;
}


.hero-request-note{
    max-width:510px;
    margin-top:15px !important;
}


/* ---------------------------------------------------------
   RECHTE BUCHUNGSKARTE GRÖSSER / HOCHWERTIGER
   --------------------------------------------------------- */

.ow2-booking{
    align-self:start !important;
}


.ow2-search-card,
.ow2-results,
.ow2-contact,
.ow2-done{
    border-radius:17px !important;
    border-color:#d6e2ec !important;

    box-shadow:
        0 20px 55px rgba(20,48,74,.12) !important;
}


.ow2-search-card{
    padding:28px 29px 25px !important;
}


.ow2-section-head{
    margin-bottom:22px !important;
}


.ow2-number{
    width:36px !important;
    height:36px !important;
    flex-basis:36px !important;
    font-size:12px !important;
}


.ow2-section-head strong{
    font-size:17px !important;
}


.ow2-section-head div > span{
    margin-top:3px;
    font-size:11px !important;
}


/* ---------------------------------------------------------
   FORMULAR MEHR LUFT, ABER NICHT HÖHER
   --------------------------------------------------------- */

.ow2-field-grid{
    gap:14px 13px !important;
}


.ow2-field > span{
    margin-bottom:6px !important;
    font-size:11px !important;
}


.ow2-field input{
    height:51px !important;
    padding-left:14px;
    padding-right:14px;
    font-size:13px !important;
}


.ow2-input-wrap input{
    padding-left:45px !important;
}


.ow2-type-block{
    margin-top:18px !important;
    padding-top:17px !important;
}


.ow2-types{
    gap:6px !important;
}


.ow2-chip span{
    padding:8px 11px !important;
}


/* ---------------------------------------------------------
   HAUPTAKTION STÄRKER
   --------------------------------------------------------- */

.ow2-primary{
    min-height:52px !important;
    margin-top:18px !important;
    border-radius:10px !important;
    font-size:13px !important;
}


.ow2-search-foot{
    margin-top:11px !important;
}


/* ---------------------------------------------------------
   TRUST-LEISTE DIREKT AN HERO ANSCHLIESSEN
   --------------------------------------------------------- */

.trust-strip{
    margin:0 !important;
    padding-top:17px !important;
    padding-bottom:17px !important;
}


.trust-grid{
    gap:11px !important;
}


/* ---------------------------------------------------------
   DIE ERSTE SEKTION DANACH NICHT SO WEIT WEG
   --------------------------------------------------------- */

#vorteile{
    padding-top:68px !important;
    padding-bottom:72px !important;
}


/* ---------------------------------------------------------
   RESPONSIVE
   --------------------------------------------------------- */

@media(max-width:1050px){

    .hero .hero-grid{
        grid-template-columns:
            minmax(0,.9fr)
            minmax(400px,1.1fr) !important;

        gap:38px !important;
    }

}


@media(max-width:900px){

    .hero{
        padding-top:38px !important;
        padding-bottom:34px !important;
    }

    .hero .hero-grid{
        grid-template-columns:1fr !important;
        gap:30px !important;
    }

    .hero-copy{
        padding-top:0 !important;
    }

    .ow2-booking{
        max-width:650px;
    }

}


@media(max-width:620px){

    .hero{
        padding-top:28px !important;
        padding-bottom:28px !important;
    }

    .hero .hero-grid{
        gap:24px !important;
    }

    .ow2-search-card,
    .ow2-results,
    .ow2-contact,
    .ow2-done{
        padding:19px !important;
    }

    .ow2-field-grid{
        gap:11px !important;
    }

}


/* =========================================================
   ENDE ONEWAY_HERO_POLISH_V4
   ========================================================= */



/* =========================================================
   ONEWAY_BOOKING_SUMMARY_V11
   ========================================================= */

.ow2-summary{
    width:100%;

    margin:0 !important;

    padding:24px;

    border:1px solid #d6e2ec;

    border-radius:17px;

    background:#fff;

    box-shadow:
        0 20px 55px
        rgba(20,48,74,.12);
}


.ow2-summary-head{
    margin-bottom:17px;
}


.ow2-summary-route{
    display:grid;

    grid-template-columns:1fr;

    gap:8px;

    margin-bottom:15px;
}


.ow2-summary-route > div{
    display:flex;

    align-items:flex-start;

    justify-content:space-between;

    gap:14px;

    padding:
        10px
        11px;

    border:
        1px solid
        #e1e9ef;

    border-radius:9px;

    background:#f9fbfd;
}


.ow2-summary-route span{
    flex:none;

    color:#7b8c9c;

    font-size:9px;

    font-weight:800;
}


.ow2-summary-route strong{
    color:#294258;

    font-size:10px;

    font-weight:850;

    text-align:right;

    line-height:1.4;
}


.ow2-summary-price{
    overflow:hidden;

    border:
        1px solid
        #d7e4ee;

    border-radius:12px;

    background:#fff;
}


.ow2-price-heading{
    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    padding:
        14px
        15px;

    background:
        linear-gradient(
            135deg,
            #edf7ff,
            #f8fbfd
        );
}


.ow2-price-heading > div > span,
.ow2-price-heading > div > small{
    display:block;
}


.ow2-price-heading > div > span{
    margin-bottom:3px;

    color:#55728b;

    font-size:9px;

    font-weight:850;

    text-transform:uppercase;

    letter-spacing:.05em;
}


.ow2-price-heading > div > strong{
    display:block;

    color:#086fc9;

    font-size:25px;

    line-height:1.05;

    font-weight:950;
}


.ow2-price-heading > div > small{
    margin-top:3px;

    color:#8494a2;

    font-size:8px;
}


.ow2-duration-badge{
    max-width:145px;

    padding:
        6px
        8px;

    border-radius:999px;

    background:#fff;

    color:#536e83;

    font-size:8px;

    font-weight:850;

    text-align:center;

    line-height:1.3;
}


.ow2-price-breakdown{
    padding:
        7px
        14px
        9px;
}


.ow2-price-breakdown > div{
    display:flex;

    align-items:center;

    justify-content:space-between;

    gap:15px;

    min-height:30px;

    border-bottom:
        1px solid
        #edf2f5;
}


.ow2-price-breakdown > div:last-child{
    border-bottom:0;
}


.ow2-price-breakdown span{
    color:#697e90;

    font-size:9px;
}


.ow2-price-breakdown strong{
    color:#294257;

    font-size:10px;
}


.ow2-price-manual{
    padding:
        17px
        15px;

    background:#f9fbfd;
}


.ow2-price-manual strong,
.ow2-price-manual span{
    display:block;
}


.ow2-price-manual strong{
    margin-bottom:4px;

    color:#294359;

    font-size:11px;
}


.ow2-price-manual span{
    color:#718598;

    font-size:9px;

    line-height:1.5;
}


.ow2-kasko-option{
    display:flex;

    align-items:center;

    gap:10px;

    margin-top:13px;

    padding:
        11px
        12px;

    border:
        1px solid
        #dce6ee;

    border-radius:10px;

    background:#fbfdff;

    cursor:pointer;
}


.ow2-kasko-option input{
    position:absolute;

    opacity:0;

    pointer-events:none;
}


.ow2-kasko-check{
    position:relative;

    flex:
        0
        0
        20px;

    width:20px;
    height:20px;

    border:
        1px solid
        #aec1d0;

    border-radius:6px;

    background:#fff;
}


.ow2-kasko-option input:checked
+
.ow2-kasko-check{
    border-color:#0874d3;

    background:#0874d3;
}


.ow2-kasko-option input:checked
+
.ow2-kasko-check::after{
    content:"✓";

    position:absolute;

    inset:0;

    display:flex;

    align-items:center;

    justify-content:center;

    color:#fff;

    font-size:12px;

    font-weight:950;
}


.ow2-kasko-option strong,
.ow2-kasko-option small{
    display:block;
}


.ow2-kasko-option strong{
    color:#304a60;

    font-size:10px;
}


.ow2-kasko-option small{
    margin-top:2px;

    color:#7c8e9e;

    font-size:8px;
}


.ow2-price-note{
    margin:
        10px
        0
        0;

    color:#8997a4;

    font-size:8px;

    line-height:1.45;
}


.ow2-summary-actions{
    display:grid;

    grid-template-columns:
        auto
        1fr;

    align-items:center;

    gap:9px;

    margin-top:16px;
}


.ow2-summary-actions .ow2-secondary{
    min-height:49px;

    padding:
        0
        12px;
}


.ow2-primary-summary{
    margin:0 !important;

    min-height:49px !important;
}


/* ---------------------------------------------------------
   Mobile
   --------------------------------------------------------- */

@media(max-width:620px){

    .ow2-summary{
        padding:18px;

        border-radius:14px;
    }


    .ow2-summary-route > div{
        display:block;
    }


    .ow2-summary-route strong{
        display:block;

        margin-top:4px;

        text-align:left;
    }


    .ow2-price-heading{
        align-items:flex-start;
    }


    .ow2-summary-actions{
        grid-template-columns:1fr;
    }


    .ow2-summary-actions .ow2-secondary{
        order:2;
    }


    .ow2-primary-summary{
        order:1;
    }

}


/* =========================================================
   ENDE ONEWAY_BOOKING_SUMMARY_V11
   ========================================================= */



/* =========================================================
   ONEWAY_BOOKING_FLOW_V12
   ========================================================= */


.ow2-selected{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}


.ow2-selected-main{
    min-width:0;
}


.ow2-selected-main strong,
.ow2-selected-main span{
    display:block;
}


.ow2-selected-main strong{
    color:#25577f;
    font-size:10px;
    line-height:1.35;
}


.ow2-selected-main span{
    margin-top:3px;
    color:#72899b;
    font-size:8px;
}


.ow2-selected-price{
    flex:none;
    padding-left:13px;
    border-left:1px solid #cfe2f2;
    text-align:right;
}


.ow2-selected-price span,
.ow2-selected-price strong{
    display:block;
}


.ow2-selected-price span{
    margin-bottom:2px;
    color:#7290a8;
    font-size:7px;
    font-weight:850;
    letter-spacing:.05em;
    text-transform:uppercase;
}


.ow2-selected-price strong{
    color:#0871cd;
    font-size:14px;
    font-weight:950;
}


.ow2-done-content{
    flex:1;
    min-width:0;
}


.ow2-test-badge{
    display:inline-flex;
    align-items:center;
    min-height:21px;
    margin-bottom:8px;
    padding:0 8px;
    border-radius:999px;
    background:#fff2d8;
    color:#9a6512;
    font-size:7px;
    font-weight:950;
    letter-spacing:.07em;
    text-transform:uppercase;
}


.ow2-done-warning{
    max-width:520px;
}


.ow2-done-warning strong{
    color:#425b70;
}


.ow2-done-summary{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:7px;
    margin-top:14px;
}


.ow2-done-summary > div{
    padding:9px 10px;
    border:1px solid #e0e8ee;
    border-radius:9px;
    background:#f9fbfd;
}


.ow2-done-summary span,
.ow2-done-summary strong{
    display:block;
}


.ow2-done-summary span{
    margin-bottom:3px;
    color:#8695a2;
    font-size:7px;
    font-weight:850;
    letter-spacing:.04em;
    text-transform:uppercase;
}


.ow2-done-summary strong{
    overflow-wrap:anywhere;
    color:#314b61;
    font-size:9px;
    line-height:1.4;
}


.ow2-done > .ow2-secondary{
    flex:none;
    align-self:flex-start;
    margin-left:auto;
}


@media(max-width:620px){

    .ow2-selected{
        display:block;
    }


    .ow2-selected-price{
        margin-top:9px;
        padding:8px 0 0;
        border-left:0;
        border-top:1px solid #cfe2f2;
        text-align:left;
    }


    .ow2-done{
        flex-wrap:wrap;
    }


    .ow2-done-content{
        flex:1 1 calc(100% - 58px);
    }


    .ow2-done-summary{
        grid-template-columns:1fr;
    }


    .ow2-done > .ow2-secondary{
        width:100%;
        margin:8px 0 0 58px;
    }

}


/* =========================================================
   ENDE ONEWAY_BOOKING_FLOW_V12
   ========================================================= */



/* =========================================================
   ONEWAY_MOBILE_UX_V13
   Letzter Mobile-/Touch-Feinschliff
   ========================================================= */


/* ---------------------------------------------------------
   Touch-Verhalten
   --------------------------------------------------------- */

.ow2-primary,
.ow2-secondary,
.ow2-result-select,
.ow2-chip,
.ow2-kasko-option{
    touch-action:manipulation;
}


/* ---------------------------------------------------------
   Sichtbarer Tastaturfokus
   --------------------------------------------------------- */

.ow2-field input:focus-visible,
.ow2-primary:focus-visible,
.ow2-secondary:focus-visible,
.ow2-result-select:focus-visible,
.ow2-chip input:focus-visible + span,
.ow2-kasko-option input:focus-visible + .ow2-kasko-check{
    outline:
        3px solid
        rgba(8,116,211,.22);

    outline-offset:2px;
}


/* ---------------------------------------------------------
   Lange Orts-/Preisangaben dürfen nicht sprengen
   --------------------------------------------------------- */

.ow2-summary-route strong,
.ow2-selected-main strong,
.ow2-done-summary strong,
.ow2-result-place{
    overflow-wrap:anywhere;
}


/* ---------------------------------------------------------
   MOBILE
   --------------------------------------------------------- */

@media(max-width:620px){


    /*
     * 16px verhindert auf vielen mobilen Browsern
     * unerwünschtes Hineinzoomen beim Antippen.
     */

    .ow2-field input{
        min-height:48px !important;

        padding:
            0
            12px !important;

        font-size:16px !important;
    }


    /*
     * Touch-Ziele mindestens ca. 44px
     */

    .ow2-secondary,
    .ow2-result-select{
        min-height:44px !important;

        padding:
            0
            12px !important;

        font-size:11px !important;
    }


    .ow2-chip span{
        display:flex !important;

        align-items:center;

        min-height:44px;

        padding:
            0
            13px !important;

        font-size:11px !important;
    }


    .ow2-kasko-option{
        min-height:52px;

        padding:
            11px
            12px !important;
    }


    /*
     * Ergebnis-Tools auf schmalem Bildschirm
     * nicht zu eng nebeneinander quetschen.
     */

    .ow2-results-head .ow2-stage-tools{
        width:100%;

        gap:8px;
    }


    .ow2-results-head .ow2-stage-tools .ow2-secondary{
        flex:1;
    }


    /*
     * Kontakt-Zusammenfassung etwas besser lesbar
     */

    .ow2-selected-main strong{
        font-size:11px;
    }


    .ow2-selected-price strong{
        font-size:16px;
    }


    /*
     * Done-Button nach Abschluss über volle Breite.
     */

    .ow2-done > .ow2-secondary{
        min-height:46px !important;
    }

}


/* ---------------------------------------------------------
   SEHR SCHMAL
   --------------------------------------------------------- */

@media(max-width:420px){

    .ow2-results-head .ow2-stage-tools{
        display:grid;

        grid-template-columns:1fr;

        margin-top:10px;
    }


    .ow2-results-head .ow2-stage-tools .ow2-secondary{
        width:100%;
    }


    .ow2-summary-actions{
        gap:8px;
    }

}


/* =========================================================
   ENDE ONEWAY_MOBILE_UX_V13
   ========================================================= */

