/* Migriert aus WPCode: WooCommerce Checkout */
/**
         * Obere WooCommerce-Infoboxen ausblenden.
         * Fehler bleiben sichtbar, weil sie .woocommerce-error nutzen.
         */
        body.woocommerce-checkout .woocommerce-info,
        body.woocommerce-checkout .woocommerce-form-login-toggle,
        body.woocommerce-checkout .woocommerce-form-coupon-toggle,
        body.woocommerce-checkout .woocommerce-form-login,
        body.woocommerce-checkout .checkout_coupon {
            display: none !important;
        }

        /**
         * Zusatzinfos komplett raus.
         */
        body.woocommerce-checkout .woocommerce-additional-fields,
        body.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
            display: none !important;
        }

        /**
         * Checkout Hauptlayout.
         */
        body.woocommerce-checkout form.checkout {
            max-width: 1380px;
            margin: 0 auto;
            display: grid !important;
            grid-template-columns: minmax(0, 1fr) minmax(430px, 0.82fr);
            column-gap: 80px;
            align-items: start;
        }

        /**
         * Linke Spalte.
         */
        body.woocommerce-checkout form.checkout #customer_details {
            grid-column: 1;
            grid-row: 1;
            width: 100% !important;
            max-width: none !important;
            float: none !important;
            display: block !important;
        }

        body.woocommerce-checkout form.checkout #customer_details .col-1,
        body.woocommerce-checkout form.checkout #customer_details .col-2 {
            width: 100% !important;
            max-width: none !important;
            float: none !important;
            display: block !important;
            padding: 0 !important;
            margin: 0 !important;
        }

        body.woocommerce-checkout form.checkout #customer_details .col-2 {
            display: none !important;
        }

        /**
         * Die Überschrift "Deine Bestellung" ausblenden.
         * Die Preisbox selbst rückt dadurch nach oben.
         */
        body.woocommerce-checkout form.checkout #order_review_heading {
            display: none !important;
        }

        /**
         * Rechte Spalte: Bestellung + Zahlung direkt oben.
         */
        body.woocommerce-checkout form.checkout #order_review {
            grid-column: 2;
            grid-row: 1;
            width: 100% !important;
            max-width: none !important;
            float: none !important;
            margin: 0 !important;
            padding: 0 !important;
            align-self: start;
        }

        /**
         * Formularfelder links zweispaltig.
         */
        body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
            display: grid !important;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            column-gap: 28px;
            row-gap: 20px;
            width: 100%;
        }

        /**
         * Accountfelder ebenfalls zweispaltig.
         */
        body.woocommerce-checkout .woocommerce-account-fields {
            margin-top: 22px;
        }

        body.woocommerce-checkout .woocommerce-account-fields .create-account {
            display: grid !important;
            grid-template-columns: repeat(2, minmax(0, 1fr));
            column-gap: 28px;
            row-gap: 20px;
            width: 100%;
        }

        /**
         * WooCommerce-Float-Klassen neutralisieren.
         */
        body.woocommerce-checkout .form-row {
            width: 100% !important;
            float: none !important;
            clear: none !important;
            margin: 0 !important;
            padding: 0 !important;
        }

        body.woocommerce-checkout .form-row-first,
        body.woocommerce-checkout .form-row-last {
            grid-column: auto;
        }

        body.woocommerce-checkout .form-row-wide {
            grid-column: 1 / -1;
        }

        /**
         * Feldbreiten und Inputs.
         */
        body.woocommerce-checkout .woocommerce-input-wrapper,
        body.woocommerce-checkout .woocommerce-input-wrapper strong,
        body.woocommerce-checkout input.input-text,
        body.woocommerce-checkout select,
        body.woocommerce-checkout textarea {
            width: 100% !important;
            max-width: 100% !important;
            box-sizing: border-box;
        }

        body.woocommerce-checkout input.input-text,
        body.woocommerce-checkout select {
            min-height: 58px;
        }

        body.woocommerce-checkout .woocommerce-billing-fields h3 {
            font-size: clamp(28px, 2vw, 38px);
            line-height: 1.1;
            margin: 0 0 34px !important;
        }

        /**
         * Land-Feld als ruhige Box.
         */
        body.woocommerce-checkout #billing_country_field strong {
            display: flex;
            align-items: center;
            min-height: 58px;
            padding: 0 20px;
            border: 1px solid rgba(7, 63, 53, .18);
            border-radius: 999px;
            background: #fff;
        }

        /**
         * Passwortfelder mit Icons.
         */
        body.woocommerce-checkout #account_password_field,
        body.woocommerce-checkout #account_password_confirm_field {
            min-width: 0;
        }

        body.woocommerce-checkout #account_password_field .password-input,
        body.woocommerce-checkout #account_password_confirm_field .password-input {
            width: 100% !important;
            display: block !important;
        }

        body.woocommerce-checkout #account_password_field input,
        body.woocommerce-checkout #account_password_confirm_field input {
            padding-right: 76px !important;
        }

        /**
         * Bestellübersicht rechts.
         */
        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table {
            width: 100% !important;
            margin: 0 0 34px !important;
            border-collapse: collapse;
        }

        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th {
            background: #143f35;
            color: #fff;
            padding: 22px 28px;
            font-size: 18px;
        }

        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th:first-child {
            border-radius: 999px 0 0 999px;
        }

        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table thead th:last-child {
            border-radius: 0 999px 999px 0;
            text-align: right;
        }

        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table th,
        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table td {
            padding: 18px 22px;
            vertical-align: middle;
        }

        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table td:last-child,
        body.woocommerce-checkout .shop_table.woocommerce-checkout-review-order-table th:last-child {
            text-align: right;
        }

        /**
         * Zahlungsbox.
         */
        body.woocommerce-checkout #payment {
            width: 100%;
            margin-top: 0;
        }

        body.woocommerce-checkout #payment ul.payment_methods {
            padding: 0 !important;
            margin: 0 0 28px !important;
            border: none !important;
        }

        body.woocommerce-checkout #payment ul.payment_methods li {
            list-style: none;
            margin: 0 !important;
            padding: 0 !important;
        }

        body.woocommerce-checkout #payment .payment_box {
            border-radius: 18px;
            padding: 18px 22px;
            background: #f0f0f0;
            color: #33413d;
        }

        body.woocommerce-checkout #payment .payment_box p {
            margin: 0;
            line-height: 1.55;
        }

        /**
         * Datenschutztext und Button sauber in rechter Spalte.
         */
        body.woocommerce-checkout .woocommerce-privacy-policy-text {
            margin-top: 30px;
            padding-top: 28px;
            border-top: 1px solid rgba(7, 63, 53, .18);
            font-size: 14px;
            line-height: 1.6;
            color: #1f2c29;
        }

        body.woocommerce-checkout #place_order {
            display: flex !important;
            align-items: center;
            justify-content: center;
            width: 100% !important;
            min-height: 56px;
            padding: 0 28px !important;
            margin-top: 22px !important;
            border-radius: 999px !important;
            background: #143f35 !important;
            color: #fff !important;
            font-weight: 800;
            font-size: 16px;
            line-height: 1;
            float: none !important;
            clear: both !important;
            text-align: center;
            white-space: normal;
        }

        body.woocommerce-checkout #place_order:hover {
            background: #f7a632 !important;
            color: #143f35 !important;
        }

        /**
         * Falls Theme alte Spaltenbreiten setzt.
         */
        body.woocommerce-checkout .col2-set {
            width: 100% !important;
            float: none !important;
        }

        body.woocommerce-checkout .col2-set:before,
        body.woocommerce-checkout .col2-set:after {
            display: none !important;
        }

        /**
         * Tablet.
         */
        @media (max-width: 1180px) {
            body.woocommerce-checkout form.checkout {
                grid-template-columns: minmax(0, 1fr) minmax(360px, .9fr);
                column-gap: 48px;
            }
        }

        /**
         * Mobil einspaltig.
         */
        @media (max-width: 920px) {
            body.woocommerce-checkout form.checkout {
                display: block !important;
                max-width: 720px;
            }

            body.woocommerce-checkout form.checkout #customer_details,
            body.woocommerce-checkout form.checkout #order_review {
                width: 100% !important;
                max-width: 100% !important;
                display: block !important;
            }

            body.woocommerce-checkout form.checkout #order_review {
                margin-top: 42px !important;
            }

            body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
            body.woocommerce-checkout .woocommerce-account-fields .create-account {
                grid-template-columns: 1fr;
            }

            body.woocommerce-checkout .form-row-first,
            body.woocommerce-checkout .form-row-last,
            body.woocommerce-checkout .form-row-wide {
                grid-column: 1 / -1;
            }
        }

/* ================================================================
   Warenkorb im Angelkurs-Online-App-Design
   ================================================================ */
body.woocommerce-cart .woocommerce{
  width:min(1180px,calc(100% - 36px));
  margin:42px auto 70px;
  color:#173f35;
  font-family:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
body.woocommerce-cart .woocommerce-cart-form,
body.woocommerce-cart .cart-collaterals{
  padding:28px;
  border:1px solid rgba(23,63,53,.1);
  border-radius:26px;
  background:#fff;
  box-shadow:0 18px 48px rgba(23,63,53,.08);
}
body.woocommerce-cart .woocommerce-cart-form{margin-bottom:24px}
body.woocommerce-cart table.shop_table{overflow:hidden;margin:0!important;border:0!important;border-collapse:separate!important;border-spacing:0;border-radius:18px;background:#fff}
body.woocommerce-cart table.shop_table thead th{padding:18px 20px;color:#fff;background:#173f35;font-size:14px}
body.woocommerce-cart table.shop_table td{padding:20px;border-color:#e3ebe7!important;vertical-align:middle}
body.woocommerce-cart table.shop_table .product-name a{color:#173f35;font-weight:850;text-decoration:none}
body.woocommerce-cart table.shop_table .product-thumbnail img{width:76px;border-radius:14px}
body.woocommerce-cart .cart_totals{float:none!important;width:100%!important}
body.woocommerce-cart .cart_totals h2{margin:0 0 18px;color:#173f35;font-size:28px}
body.woocommerce-cart .cart_totals table{width:100%;margin-bottom:20px;border:0!important}
body.woocommerce-cart .cart_totals th,body.woocommerce-cart .cart_totals td{padding:15px 10px;border-color:#e3ebe7!important}
body.woocommerce-cart .wc-proceed-to-checkout{padding:0!important}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button,
body.woocommerce-cart button[name="update_cart"]{
  display:inline-flex!important;align-items:center;justify-content:center;min-height:52px;padding:0 26px!important;border:0!important;border-radius:999px!important;color:#fff!important;background:#173f35!important;font-size:16px!important;font-weight:900!important;line-height:1!important;text-decoration:none!important;
}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button{width:100%;background:#f28c28!important}
body.woocommerce-cart .wc-proceed-to-checkout a.checkout-button:hover{background:#173f35!important}
body.woocommerce-cart .coupon{display:flex;gap:10px;flex-wrap:wrap}body.woocommerce-cart .coupon input{min-height:48px;padding:0 16px;border:1px solid rgba(23,63,53,.18);border-radius:999px}
body.woocommerce-cart .woocommerce-message,body.woocommerce-cart .woocommerce-error{border-radius:16px}
@media(min-width:980px){body.woocommerce-cart .cart-collaterals{margin-left:auto;width:min(520px,100%)}}
@media(max-width:760px){body.woocommerce-cart .woocommerce{width:min(100% - 20px,1180px);margin-top:20px}body.woocommerce-cart .woocommerce-cart-form,body.woocommerce-cart .cart-collaterals{padding:18px;border-radius:20px}body.woocommerce-cart table.shop_table_responsive tr{padding:12px 0}body.woocommerce-cart table.shop_table td{padding:13px 8px}}

/* Kompakter Erläuterungstext unter der verpflichtenden Widerrufs-/Leistungscheckbox. */
.woocommerce-checkout .ako-consent-help,
.woocommerce-checkout form.checkout .ako-consent-help{
  margin:4px 0 18px!important;
  color:#66746f!important;
  font-size:12px!important;
  font-weight:500!important;
  line-height:1.5!important;
}
