:root {
	--wd-text-font: "Lexend", Arial, Helvetica, sans-serif;
	--wd-text-font-weight: 300;
	--wd-text-color: rgb(255,255,255);
	--wd-text-font-size: 16px;
	--wd-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-title-font-weight: 700;
	--wd-title-color: rgb(255,255,255);
	--wd-entities-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-entities-title-font-weight: 700;
	--wd-entities-title-color: rgb(255,255,255);
	--wd-entities-title-color-hover: rgb(51 51 51 / 65%);
	--wd-alternative-font: "Lato", Arial, Helvetica, sans-serif;
	--wd-widget-title-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-widget-title-font-weight: 700;
	--wd-widget-title-transform: capitalize;
	--wd-widget-title-color: rgb(255,255,255);
	--wd-widget-title-font-size: 16px;
	--wd-header-el-font: "Kumbh Sans", Arial, Helvetica, sans-serif;
	--wd-header-el-font-weight: 700;
	--wd-header-el-transform: capitalize;
	--wd-header-el-font-size: 15px;
	--wd-otl-style: dotted;
	--wd-otl-width: 2px;
	--wd-primary-color: rgb(0,86,210);
	--wd-alternative-color: rgb(254,113,11);
	--btn-default-bgcolor: rgb(0,86,210);
	--btn-default-bgcolor-hover: #efefef;
	--btn-accented-bgcolor: rgb(56,172,255);
	--btn-accented-bgcolor-hover: rgb(51,157,232);
	--btn-transform: capitalize;
	--btn-color: rgb(255,255,255);
	--btn-bgcolor: rgb(0,86,210);
	--wd-form-brd-width: 2px;
	--notices-success-bg: #459647;
	--notices-success-color: #fff;
	--notices-warning-bg: #E0B252;
	--notices-warning-color: #fff;
	--wd-link-color: rgb(255,255,255);
	--wd-link-color-hover: #242424;
}
.wd-age-verify-wrap {
	--wd-popup-width: 500px;
}
.wd-popup.wd-promo-popup {
	background-color: #111111;
	background-image: none;
	background-repeat: no-repeat;
	background-size: contain;
	background-position: left center;
}
.wd-promo-popup-wrap {
	--wd-popup-width: 800px;
}
:is(.woodmart-woocommerce-layered-nav, .wd-product-category-filter) .wd-scroll-content {
	max-height: 223px;
}
.wd-page-title .wd-page-title-bg img {
	object-fit: cover;
	object-position: center center;
}
.wd-footer {
	background-color: rgb(2,85,210);
	background-image: none;
}
html .wd-nav-mobile > li > a {
	text-transform: capitalize;
}
:is(.page, .search-no-results, .error404) :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.woodmart-archive-shop:not(.single-product) :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.single-product :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.woodmart-archive-blog :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.single-post :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.woodmart-archive-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
.single-portfolio :is(.wd-page-content, .whb-header) {
	background-color: rgb(0,86,210);
	background-image: none;
}
body, [class*=color-scheme-light], [class*=color-scheme-dark], .wd-search-form[class*="wd-header-search-form"] form.searchform, .wd-el-search .searchform {
	--wd-form-color: rgb(255,255,255);
	--wd-form-placeholder-color: rgb(255,255,255);
	--wd-form-brd-color: rgb(255,255,255);
	--wd-form-brd-color-focus: rgb(255,255,255);
	--wd-form-bg: rgb(0,86,210);
}
.wd-nav-arrows.wd-pos-sep:not(:where(.wd-custom-style)) {
	--wd-arrow-bg: rgb(30,115,190);
}
.mfp-wrap.wd-popup-quick-view-wrap {
	--wd-popup-width: 920px;
}
:root{
--wd-container-w: 1222px;
--wd-form-brd-radius: 5px;
--btn-default-color: #333;
--btn-default-color-hover: #333;
--btn-accented-color: #fff;
--btn-accented-color-hover: #fff;
--btn-default-brd-radius: 5px;
--btn-default-box-shadow: none;
--btn-default-box-shadow-hover: none;
--btn-accented-brd-radius: 5px;
--btn-accented-box-shadow: none;
--btn-accented-box-shadow-hover: none;
--wd-brd-radius: 8px;
--wd-cat-brd-radius: 0px;
}

@media (min-width: 1222px) {
section.elementor-section.wd-section-stretch > .elementor-container {
margin-left: auto;
margin-right: auto;
}
}


.wd-page-title {
background-color: rgb(2,85,210);
}

body.woocommerce-checkout .checkout-order-review {
    background-color: #0759d5 !important;
}

body.woocommerce-checkout .checkout-order-review::before,
body.woocommerce-checkout .checkout-order-review::after {
    background-image: radial-gradient(
        farthest-side,
        transparent 6px,
        #0759d5 0
    ) !important;
}

/* Überschrift auf dem blauen Hintergrund weiß lassen */
body.woocommerce-checkout .checkout-order-review > h3,
body.woocommerce-checkout .checkout-order-review > h2 {
    color: #ffffff !important;
}

/* Texte innerhalb der weißen Bestellübersicht sichtbar machen */
body.woocommerce-checkout
.woocommerce-checkout-review-order-table,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table th,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table td,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table a,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table strong,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table .amount,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout
.woocommerce-checkout-review-order-table .product-total {
    color: #0759d5 !important;
}

/* Warenkorb Popup / Side Cart Schrift schwarz */
.cart-widget-side,
.cart-widget-side * {
    color: #222222 !important;
}

/* Produktname, Menge, Preis */
.cart-widget-side .product-title,
.cart-widget-side .quantity,
.cart-widget-side .amount,
.cart-widget-side .woocommerce-Price-amount,
.cart-widget-side .subtotal-divider,
.cart-widget-side .woocommerce-mini-cart__total,
.cart-widget-side .woocommerce-mini-cart__total strong {
    color: #222222 !important;
}

/* Zwischensumme */
.cart-widget-side .woocommerce-mini-cart__total strong,
.cart-widget-side .woocommerce-mini-cart__total .amount {
    color: #222222 !important;
}

/* Close / X */
.cart-widget-side .wd-heading,
.cart-widget-side .wd-heading span,
.cart-widget-side .wd-close-side {
    color: #222222 !important;
}

/* Gutschein Hinweis auf Checkout */
body.woocommerce-checkout .woocommerce-form-coupon-toggle,
body.woocommerce-checkout .woocommerce-form-coupon-toggle *,
body.woocommerce-checkout .woocommerce-info,
body.woocommerce-checkout .woocommerce-info * {
    color: #ffffff !important;
}

/* Gutschein-Hinweis mit weißem dünnen Rahmen */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.8) !important;
    border-radius: 8px;
    padding: 14px 18px;
    background: transparent !important;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a {
    color: #ffffff !important;
    text-decoration: underline;
}

/* Gutschein-Feld und Button auf gleiche Höhe bringen */
body.woocommerce-checkout form.checkout_coupon {
    display: flex !important;
    align-items: center !important;
    gap: 16px;
    flex-wrap: wrap;
    border: 1px solid rgba(255,255,255,0.8) !important;
    border-radius: 8px;
    padding: 24px !important;
    background: transparent !important;
}




/* Gutschein-Formular standardmäßig verstecken */
body.woocommerce-checkout form.checkout_coupon {
    display: none;
    border: 1px solid rgba(255,255,255,0.8) !important;
    border-radius: 8px;
    padding: 24px !important;
    background: transparent !important;
}

/* Erst nach Klick auf "Klicke hier" anzeigen */
body.woocommerce-checkout form.checkout_coupon[style*="display: block"],
body.woocommerce-checkout form.checkout_coupon[style*="display:block"] {
    display: flex !important;
    align-items: center !important;
    gap: 16px;
    flex-wrap: wrap;
}

/* Gutschein-Hinweis oben */
body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info {
    color: #ffffff !important;
    border: 1px solid rgba(255,255,255,0.8) !important;
    border-radius: 8px;
    padding: 10px 0px;
    background: transparent !important;
    display: inline-block;
}

body.woocommerce-checkout .woocommerce-form-coupon-toggle .woocommerce-info a {
    color: #ffffff !important;
    text-decoration: underline;
}

/* Input und Button ausrichten */
body.woocommerce-checkout form.checkout_coupon .form-row {
    margin: 0 !important;
}

body.woocommerce-checkout form.checkout_coupon .form-row-first {
    flex: 1 1 360px;
}

body.woocommerce-checkout form.checkout_coupon .form-row-last {
    flex: 0 0 auto;
}

body.woocommerce-checkout form.checkout_coupon input.input-text {
    height: 56px !important;
    padding: 0 18px !important;
    color: #ffffff !important;
    border: 2px solid #ffffff !important;
    border-radius: 6px !important;
    background: transparent !important;
}

body.woocommerce-checkout form.checkout_coupon input.input-text::placeholder {
    color: rgba(255,255,255,0.85) !important;
}

body.woocommerce-checkout form.checkout_coupon button.button {
    height: 56px !important;
    padding: 0 28px !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    border-radius: 6px !important;
}
  
/* Woodmart Mobile Bottom Navigation immer unten fixieren */
@media (max-width: 1024px) {
    .wd-toolbar,
    .woodmart-toolbar,
    .woodmart-sticky-toolbar {
        position: fixed !important;
        left: 0 !important;
        right: 0 !important;
        bottom: 0 !important;
        width: 100% !important;
        z-index: 99999 !important;
        transform: none !important;
        margin: 0 !important;
    }

    body {
        padding-bottom: 80px !important;
    }
	
	
    }
}
}

/* Woodmart Sidebar + Category-Reiter komplett ausblenden */
.wd-sidebar-opener,
.wd-show-sidebar-btn,
.woodmart-show-sidebar-btn,
.woodmart-sticky-sidebar-opener,
.wd-sticky-sidebar-opener,
.mobile-sidebar-opener,
.btn-show-sidebar {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
}

body.woocommerce-checkout #order_review,
body.woocommerce-checkout #order_review label,
body.woocommerce-checkout #order_review p,
body.woocommerce-checkout #order_review span,
body.woocommerce-checkout #order_review strong {
    color: #111 !important;
}

/* Produktseite – Preis rot-orange */
.single-product .summary .price,
.single-product .summary .price .woocommerce-Price-amount,
.single-product .summary .price .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

/* Warenkorb – Produktpreis und Zwischensumme */
.woocommerce-cart .product-price .woocommerce-Price-amount,
.woocommerce-cart .product-subtotal .woocommerce-Price-amount {
    color: #ffffff !important;
}

/* Warenkorb-Summe rechts */
.woocommerce-cart .cart_totals .woocommerce-Price-amount,
.woocommerce-cart .cart_totals .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
}

/* Checkout – nur Schrift in der Bestellübersicht weiß */
.woocommerce-checkout-review-order-table,
.woocommerce-checkout-review-order-table th,
.woocommerce-checkout-review-order-table td,
.woocommerce-checkout-review-order-table a,
.woocommerce-checkout-review-order-table span,
.woocommerce-checkout-review-order-table strong,
.woocommerce-checkout-review-order-table small,
.woocommerce-checkout-review-order-table p {
    color: #ffffff !important;
}

/* AGB- und Widerrufslinks im Checkout schwarz */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
.woocommerce-checkout .woocommerce-privacy-policy-text a,
.woocommerce-checkout label a {
    color: #111111 !important;
}

/* Hover */
.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a:hover,
.woocommerce-checkout .woocommerce-privacy-policy-text a:hover,
.woocommerce-checkout label a:hover {
    color: #000000 !important;
    text-decoration: underline;
}

/* WooCommerce "Mein Konto" – schwarze Schrift weiß machen */
body.woocommerce-account .woocommerce-MyAccount-content,
body.woocommerce-account .woocommerce-MyAccount-content p,
body.woocommerce-account .woocommerce-MyAccount-content strong,
body.woocommerce-account .woocommerce-MyAccount-content a,
body.woocommerce-account .woocommerce-MyAccount-navigation a,
body.woocommerce-account .wd-my-account-links a,
body.woocommerce-account .wd-my-account-links span,
body.woocommerce-account .wd-my-account-links .wd-entities-title {
    color: #ffffff !important;
}

/* Navigation links links */
body.woocommerce-account .woocommerce-MyAccount-navigation li a {
    color: #ffffff !important;
}

/* Hover etwas heller/unterstrichen */
body.woocommerce-account .woocommerce-MyAccount-navigation li a:hover,
body.woocommerce-account .wd-my-account-links a:hover {
    color: #ffffff !important;
    opacity: 0.8;
}

/* My Account – Icons weiß */
body.woocommerce-account .wd-my-account-links a:before,
body.woocommerce-account .wd-my-account-links .wd-icon,
body.woocommerce-account .woocommerce-MyAccount-content i,
body.woocommerce-account .woocommerce-MyAccount-content svg {
    color: #ffffff !important;
    fill: #ffffff !important;
    stroke: #ffffff !important;
    opacity: 1 !important;
}

/* PRODUKTSEITEN – sämtliche Texte und Links weiß */
body.single-product .summary,
body.single-product .summary *,
body.single-product .woocommerce-breadcrumb,
body.single-product .woocommerce-breadcrumb a,
body.single-product .product_meta,
body.single-product .product_meta *,
body.single-product .wd-products-nav,
body.single-product .wd-products-nav a,
body.single-product .woocommerce-tabs,
body.single-product .woocommerce-tabs *,
body.single-product .tabs li a,
body.single-product .wd-nav-tabs li a,
body.single-product .wd-wishlist-btn,
body.single-product .wd-wishlist-btn a {
    color: #ffffff !important;
}

/* Produktnavigation und Icons weiß */
body.single-product .wd-products-nav a,
body.single-product .wd-products-nav a:before,
body.single-product .wd-products-nav span,
body.single-product .wd-wishlist-btn:before,
body.single-product .wd-wishlist-btn a:before {
    color: #ffffff !important;
}
/* REDEPOWER KURSBESCHREIBUNG */

.redepower-course-info {
    margin-top: 25px;
    color: #fff;
    max-width: 700px;
}

/* Online-Kurs Badge */
.redepower-course-badge {
    display: inline-block;
    padding: 7px 14px;
    margin-bottom: 22px;
    border: 1px solid rgba(255,255,255,.35);
    border-radius: 50px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    color: #fff;
}

/* Zahlen / Kursinfos */
.redepower-course-stats {
    display: flex;
    gap: 12px;
    margin-bottom: 32px;
}

.redepower-course-stats > div {
    flex: 1;
    padding: 18px 20px;
    border-radius: 14px;
    background: rgba(255,255,255,.08);
    border: 1px solid rgba(255,255,255,.12);
    backdrop-filter: blur(8px);
}

.redepower-course-stats strong {
    display: block;
    font-size: 24px;
    line-height: 1;
    color: #fff;
    margin-bottom: 7px;
}

.redepower-course-stats span {
    font-size: 12px;
    text-transform: uppercase;
    letter-spacing: 1px;
    opacity: .7;
    color: #fff;
}

/* Modul */
.redepower-course-content {
    padding-left: 22px;
    border-left: 3px solid #fff;
}

.redepower-small-title {
    display: block;
    margin-bottom: 5px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 2px;
    opacity: .6;
}

.redepower-course-content h3 {
    margin: 0 0 10px 0;
    color: #fff !important;
    font-size: 28px;
    font-weight: 700;
}

.redepower-course-content p {
    margin: 0;
    max-width: 550px;
    color: rgba(255,255,255,.82) !important;
    font-size: 16px;
    line-height: 1.7;
}

/* Mobile */
@media (max-width: 600px) {
    .redepower-course-stats {
        flex-direction: column;
    }

    .redepower-course-content h3 {
        font-size: 24px;
    }
}

.redepower-course-extra {
    display: inline-block;
    margin-top: 18px;
    padding: 9px 15px;
    background: rgba(255,255,255,.1);
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 8px;
    color: #fff;
    font-size: 13px;
    font-weight: 600;
    letter-spacing: .3px;
}

/* Kleinunternehmer-Hinweis nur außerhalb des Checkouts verstecken */

/* Shop / Kategorie */
body.woocommerce-shop .wc-gzd-additional-info,
body.post-type-archive-product .wc-gzd-additional-info,
body.tax-product_cat .wc-gzd-additional-info,

/* Einzelne Produktseite */
body.single-product .wc-gzd-additional-info,

/* Warenkorb */
body.woocommerce-cart .wc-gzd-additional-info {
    display: none !important;
}
/* Shop / Produktübersicht – Preise weiß */
body.woocommerce-shop .price,
body.post-type-archive-product .price,
body.tax-product_cat .price,
body.tax-product_tag .price,
.product-grid-item .price,
.wd-product .price,
.products .product .price,
.products .product .woocommerce-Price-amount,
.products .product .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
}

.redepower-preview {
    margin: 35px 0;
    padding: 28px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 16px;
    background: rgba(255,255,255,.035);
}

.redepower-preview-label {
    margin-bottom: 7px;
    font-size: 11px;
    font-weight: 700;
    letter-spacing: 1.4px;
    text-transform: uppercase;
    opacity: .6;
}

.redepower-preview h2 {
    margin: 0 0 8px;
    color: #fff;
    font-size: 27px;
}

.redepower-preview-intro {
    margin-bottom: 22px;
    max-width: 650px;
    color: rgba(255,255,255,.7);
    font-size: 14px;
    line-height: 1.6;
}

.redepower-preview-video {
    overflow: hidden;
    border-radius: 12px;
}

.redepower-preview-bottom {
    margin-top: 20px;
    padding-top: 18px;
    border-top: 1px solid rgba(255,255,255,.12);
}

.redepower-preview-bottom strong {
    display: block;
    margin-bottom: 10px;
    color: #fff;
}

.redepower-preview-item {
    margin: 7px 0;
    color: rgba(255,255,255,.75);
    font-size: 13px;
}

.redepower-preview-item .lock {
    margin-right: 7px;
    opacity: .65;
}

@media (max-width: 600px) {
    .redepower-preview {
        padding: 20px;
    }

    .redepower-preview h2 {
        font-size: 22px;
    }
}

/* WoodMart Mobile Bottom Navbar an dein Design anpassen */
.wd-toolbar {
    background: #0b5ed7 !important;
    border-top: none !important;
    box-shadow: none !important;
}

.wd-toolbar .wd-tools-text,
.wd-toolbar .wd-tools-icon,
.wd-toolbar a {
    color: #ffffff !important;
}

/* Kein zusätzlicher weißer Abstand darunter */
body.sticky-toolbar-on {
    padding-bottom: 55px !important;
    background: #0255d3 !important;
}

/* Preise innerhalb des Upgrade-Bereichs weiß */
[class*="upgrade"] .price,
[class*="upgrade"] .amount,
[class*="upgrade"] bdi,
[class*="upgrade"] ins,
[class*="upgrade"] del {
    color: #ffffff !important;
}

/* ==========================================================
   REDEPOWER CHECKOUT – BESTELLÜBERSICHT RECHTS LESBAR
   ========================================================== */

/* Grundfarbe der Bestellübersicht */
body.woocommerce-checkout .woocommerce-checkout-review-order-table,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    color: #ffffff !important;
}


/* Produktname / Menge */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-name a,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .product-quantity {
    color: #ffffff !important;
}


/* Preise */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .amount,
body.woocommerce-checkout .woocommerce-checkout-review-order-table bdi,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .woocommerce-Price-currencySymbol {
    color: #ffffff !important;
}


/* Zwischensumme + Gesamtsumme */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .cart-subtotal td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total strong,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
    color: #ffffff !important;
}


/* WooCommerce / Germanized Zusatztexte unter der Summe */
body.woocommerce-checkout #order_review .wc-gzd-additional-info,
body.woocommerce-checkout #order_review .woocommerce-gzd-legal-checkbox-text,
body.woocommerce-checkout #order_review .includes_tax,
body.woocommerce-checkout #order_review small {
    color: rgba(255,255,255,.75) !important;
}


/* Trennlinien etwas schöner */
body.woocommerce-checkout .woocommerce-checkout-review-order-table tr,
body.woocommerce-checkout .woocommerce-checkout-review-order-table th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table td {
    border-color: rgba(255,255,255,.12) !important;
}


/* Gesamtsumme stärker hervorheben */
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total th,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total td,
body.woocommerce-checkout .woocommerce-checkout-review-order-table .order-total .amount {
    font-weight: 700 !important;
}


/* ==========================================================
   WEISSES AGB / WIDERRUF-KÄSTCHEN OBEN
   weiterhin SCHWARZER Text
   ========================================================== */

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper span {
    color: #111111 !important;
}

/* =========================================================
   REDEPOWER – CHECKOUT PAYMENT BOX KOMPLETT BLAU
   ========================================================= */

/* Äußere Payment-Container */
body.woocommerce-checkout .woocommerce-checkout-payment,
body.woocommerce-checkout #payment,
body.woocommerce-checkout .wd-checkout-payment,
body.woocommerce-checkout .checkout-order-review #payment,
body.woocommerce-checkout .checkout-order-review .woocommerce-checkout-payment,
body.woocommerce-checkout .payment_methods,
body.woocommerce-checkout .wc_payment_methods,
body.woocommerce-checkout .place-order,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}


/* Falls WoodMart noch einen Wrapper um Payment + AGB legt */
body.woocommerce-checkout .checkout-order-review > div:has(#payment),
body.woocommerce-checkout .checkout-order-review > section:has(#payment),
body.woocommerce-checkout div:has(> #payment.woocommerce-checkout-payment) {
    background: transparent !important;
    background-color: transparent !important;
    box-shadow: none !important;
}


/* Payment-Bereich optisch als dunkle/blaue Karte */
body.woocommerce-checkout #payment {
    padding: 28px !important;
    border: 1px solid rgba(255,255,255,.20) !important;
    border-radius: 14px !important;
}


/* =========================================================
   SCHRIFT WEISS
   ========================================================= */

body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment label,
body.woocommerce-checkout #payment p,
body.woocommerce-checkout #payment span,
body.woocommerce-checkout #payment strong,
body.woocommerce-checkout #payment li,

body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper label,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper p,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper span,

body.woocommerce-checkout .wc-gzd-checkbox-placeholder,
body.woocommerce-checkout .wc-gzd-checkbox-placeholder label,
body.woocommerce-checkout .woocommerce-gzd-legal-checkbox-text {
    color: #ffffff !important;
}


/* AGB / Widerruf / Mehr erfahren Links */
body.woocommerce-checkout #payment a,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper a,
body.woocommerce-checkout .wc-gzd-checkbox-placeholder a {
    color: #ffffff !important;
    text-decoration: underline !important;
    text-underline-offset: 3px;
}


/* =========================================================
   PAYPAL / ZAHLUNGSARTEN
   ========================================================= */

body.woocommerce-checkout #payment .payment_methods li,
body.woocommerce-checkout #payment .payment_method_paypal,
body.woocommerce-checkout #payment .payment_method_ppcp-gateway,
body.woocommerce-checkout #payment .payment_box {
    background: transparent !important;
    background-color: transparent !important;
    color: #ffffff !important;
}


/* Zusatzbox einer Zahlungsart */
body.woocommerce-checkout #payment .payment_box {
    padding: 15px !important;
    border-radius: 10px !important;
    background: rgba(255,255,255,.06) !important;
}


/* Radiobuttons / Checkboxen */
body.woocommerce-checkout #payment input[type="radio"],
body.woocommerce-checkout #payment input[type="checkbox"],
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper input[type="checkbox"] {
    accent-color: #ffffff !important;
}


/* Trennlinien */
body.woocommerce-checkout #payment,
body.woocommerce-checkout #payment *,
body.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    border-color: rgba(255,255,255,.18);
}

/* ALLE Germanized Pflicht-Checkboxtexte im Checkout weiß */
body.woocommerce-checkout #order_review
.wc-gzd-checkbox-placeholder p.legal.form-row,
body.woocommerce-checkout #order_review
.wc-gzd-checkbox-placeholder p.legal.form-row *,
body.woocommerce-checkout #order_review
.wc-gzd-checkbox-placeholder label,
body.woocommerce-checkout #order_review
.wc-gzd-checkbox-placeholder span {
    color: #ffffff !important;
}

/* =========================================
   MASTERCLASS PRE-RELEASE CTA
========================================= */

.rp-masterclass-cta {
    position: relative;

    display: flex;
    flex-direction: column;
    justify-content: center;

    width: 100%;
    max-width: 620px;

    min-height: 135px;

    margin: 18px auto 0;

    padding: 24px 70px 24px 24px;

    overflow: hidden;

    border: 1px solid rgba(255,255,255,.28);
    border-radius: 18px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.14),
            rgba(255,255,255,.055)
        );

    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);

    color: #fff !important;
    text-decoration: none !important;

    box-shadow:
        0 20px 50px rgba(0,0,0,.14);

    transition:
        transform .25s ease,
        border-color .25s ease,
        background .25s ease,
        box-shadow .25s ease;
}


.rp-masterclass-cta::before {
    content: '';

    position: absolute;

    width: 180px;
    height: 180px;

    right: -70px;
    top: -80px;

    border-radius: 50%;

    background:
        rgba(255,121,24,.20);

    filter: blur(4px);

    pointer-events: none;
}


.rp-masterclass-cta:hover {
    transform: translateY(-4px);

    border-color:
        rgba(255,255,255,.55);

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.18),
            rgba(255,121,24,.12)
        );

    box-shadow:
        0 28px 65px rgba(0,0,0,.20);
}


.rp-masterclass-cta-top {
    margin-bottom: 7px;

    color: #ff7918;

    font-size: 9px;
    font-weight: 800;

    letter-spacing: 1.8px;
}


.rp-masterclass-cta-main {
    color: #fff;

    font-size: 21px;
    font-weight: 700;

    line-height: 1.2;

    letter-spacing: -.4px;
}


.rp-masterclass-cta-sub {
    margin-top: 6px;

    color:
        rgba(255,255,255,.55);

    font-size: 11px;
}


.rp-masterclass-cta-arrow {
    position: absolute;

    right: 24px;
    top: 50%;

    transform:
        translateY(-50%);

    display: flex;
    align-items: center;
    justify-content: center;

    width: 42px;
    height: 42px;

    border-radius: 50%;

    background: #fff;

    color: #10183f;

    font-size: 21px;

    transition:
        transform .2s ease;
}


.rp-masterclass-cta:hover
.rp-masterclass-cta-arrow {

    transform:
        translate(4px,-50%);
}


@media (max-width: 600px) {

    .rp-masterclass-cta {
        min-height: 120px;

        padding:
            20px 62px 20px 19px;

        border-radius:
            16px;
    }

    .rp-masterclass-cta-main {
        font-size:
            18px;
    }

    .rp-masterclass-cta-arrow {
        right:
            18px;

        width:
            38px;

        height:
            38px;
    }
}

/* =========================
   WooPayments / Stripe Checkout
   Texte in Kartenfeldern dunkler
========================= */

body.woocommerce-checkout #payment .payment_box,
body.woocommerce-checkout #payment .payment_box p,
body.woocommerce-checkout #payment .payment_box label,
body.woocommerce-checkout #payment .payment_box legend,
body.woocommerce-checkout #payment .payment_box span,
body.woocommerce-checkout #payment .payment_box .wcpay-upe-element-label,
body.woocommerce-checkout #payment .payment_box .wc-stripe-upe-element-label {
  color: #ffffff !important;
}

/* Heller Kasten der Kreditkarten-Methode */
body.woocommerce-checkout #payment .wc_payment_method .payment_box,
body.woocommerce-checkout #payment div.payment_box {
  background: #1f5fd1 !important;
  border: 1px solid rgba(255,255,255,0.18) !important;
  box-shadow: none !important;
}

/* Die sichtbaren Eingabeboxen / Wrapper */
body.woocommerce-checkout #payment .payment_box .StripeElement,
body.woocommerce-checkout #payment .payment_box .InputElement,
body.woocommerce-checkout #payment .payment_box .p-Input,
body.woocommerce-checkout #payment .payment_box .p-Input-input,
body.woocommerce-checkout #payment .payment_box input[type="text"],
body.woocommerce-checkout #payment .payment_box input[type="tel"] {
  background: #ffffff !important;
  color: #111111 !important;
  border: 1px solid #d9d9d9 !important;
}

/* Platzhalter bei normalen Inputs */
body.woocommerce-checkout #payment .payment_box input::placeholder {
  color: #666666 !important;
  opacity: 1 !important;
}

/* Optional: Labels der Zahlungsmethoden */
body.woocommerce-checkout #payment ul.payment_methods li label {
  color: #ffffff !important;
  font-weight: 600 !important;
}

/* PayPal-Hinweis oben etwas lesbarer */
body.woocommerce-checkout #payment .payment_box .woocommerce-terms-and-conditions-wrapper,
body.woocommerce-checkout #payment .payment_box .about_paypal,
body.woocommerce-checkout #payment .payment_box .wcpay-payment-request-button__separator,
body.woocommerce-checkout #payment .payment_box .wcpay-payment-method-label {
  color: rgba(255,255,255,0.92) !important;
}

/* =========================
   REDEPOWER – MOBILE TEXT FIX
   Macht kleine Texte auf dem Smartphone größer
========================= */

@media (max-width: 767px) {

  /* Allgemeine Fließtexte */
  body .elementor-widget-text-editor,
  body .elementor-widget-text-editor p,
  body .elementor-widget-text-editor li,
  body .elementor-widget-text-editor span {
    font-size: 18px !important;
    line-height: 1.6 !important;
  }

  /* Kleine Infotexte / Unterzeilen */
  body small,
  body .elementor-widget-text-editor small,
  body .elementor-widget-text-editor .small,
  body .elementor-widget-text-editor .subtext {
    font-size: 16px !important;
    line-height: 1.5 !important;
  }

  /* Überschriften in Content-Boxen */
  body .elementor-heading-title {
    line-height: 1.2 !important;
  }

  /* Kleinere Zwischenüberschriften / Labels */
  body .elementor-widget-heading h6,
  body .elementor-widget-heading h5,
  body .elementor-widget-heading .elementor-heading-title.elementor-size-small,
  body .elementor-widget-heading .elementor-heading-title.elementor-size-xs {
    font-size: 16px !important;
    line-height: 1.4 !important;
    letter-spacing: 0.4px !important;
  }

  /* Countdown-Beschriftungen wie TAGE / STUNDEN / usw. */
  body .elementor-countdown-wrapper .elementor-countdown-label {
    font-size: 14px !important;
    line-height: 1.2 !important;
    letter-spacing: 1px !important;
  }

  /* Countdown Zahlen */
  body .elementor-countdown-wrapper .elementor-countdown-digits {
    font-size: 44px !important;
    line-height: 1 !important;
  }

  /* Datum / Subtext unter Countdown */
  body .elementor-countdown-wrapper + *,
  body .elementor-widget-shortcode p,
  body .elementor-widget-shortcode span {
    line-height: 1.5 !important;
  }

  /* Icon-Listen / Bullet-Listen */
  body .elementor-icon-list-text,
  body .elementor-icon-list-item a {
    font-size: 17px !important;
    line-height: 1.6 !important;
  }

  /* Buttons */
  body .elementor-button,
  body .button,
  body .wp-element-button,
  body .woocommerce a.button,
  body .woocommerce button.button {
    font-size: 17px !important;
    line-height: 1.2 !important;
    padding: 14px 20px !important;
  }

  /* Boxen mit sehr kleinen, blassen Texten */
  body .elementor-widget-text-editor p[style],
  body .elementor-widget-heading .elementor-heading-title[style] {
    line-height: 1.5 !important;
  }

  /* Bonus-/Feature-Boxen etwas luftiger */
  body .elementor-column,
  body .elementor-widget-wrap {
    word-break: normal;
  }

}

/* =========================================
   REDEPOWER MASTERCLASSES – MOBILE LESBARKEIT
========================================= */

@media (max-width: 650px) {

    /* Beschreibung unter Onboarding / Workshop */
    .rp-mc2026-event-content p {
        font-size: 14px !important;
        line-height: 1.55 !important;
        color: rgba(255,255,255,.72) !important;
    }

    /* Onboarding-Session / Workshop + Q&A */
    .rp-mc2026-event-content > strong {
        font-size: 16px !important;
        line-height: 1.35 !important;
    }

    /* LIVE · OPTIONAL / EXKLUSIV · LIVE */
    .rp-mc2026-event-content small {
        font-size: 10px !important;
        line-height: 1.3 !important;
        letter-spacing: 1.2px !important;
    }

    /* 08 / 15 */
    .rp-mc2026-event-date strong {
        font-size: 24px !important;
    }

    /* OKT */
    .rp-mc2026-event-date span {
        font-size: 9px !important;
    }

    /* Untere drei Vorteile */
    .rp-mc2026-bonus-footer {
        font-size: 14px !important;
        line-height: 1.55 !important;
        color: rgba(255,255,255,.72) !important;
        gap: 8px !important;
    }

}

/* ========================================
   REDEPOWER TESTIMONIALS
======================================== */

.rp-testimonials {
    width: 100%;
    max-width: 1220px;
    margin: 100px auto;
    padding: 0 25px;
}


/* ========================================
   HEADLINE
======================================== */

.rp-testimonials-heading {
    text-align: center;
    margin-bottom: 48px;
}

.rp-testimonials-heading > span {
    display: inline-block;
    margin-bottom: 10px;

    color: rgba(255,255,255,.65);

    font-size: 11px;
    font-weight: 700;
    letter-spacing: 3px;
}

.rp-testimonials-heading h2 {
    margin: 0 0 12px;

    color: #ffffff !important;

    font-size: clamp(32px, 4vw, 50px);
    line-height: 1.1;
    font-weight: 700;
}

.rp-testimonials-heading p {
    margin: 0;

    color: rgba(255,255,255,.72) !important;

    font-size: 16px;
}


/* ========================================
   GEMEINSAME CARD
======================================== */

.rp-review-card {
    position: relative;

    margin-bottom: 35px;
    padding: 42px;

    border: 1px solid rgba(255,255,255,.16);
    border-radius: 28px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.15),
            rgba(255,255,255,.05)
        );

    box-shadow:
        0 25px 60px rgba(0,0,0,.18);

    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);

    overflow: hidden;
}

.rp-review-card:before {
    content: "";

    position: absolute;

    width: 330px;
    height: 330px;

    right: -170px;
    top: -170px;

    border-radius: 50%;

    background: rgba(255,255,255,.07);

    filter: blur(65px);

    pointer-events: none;
}


/* ========================================
   ANDRÉ
======================================== */

.rp-review-text {
    display: grid;

    grid-template-columns: 250px 1fr;

    gap: 50px;

    align-items: center;
}

.rp-review-profile {
    text-align: center;
}

.rp-review-avatar {
    width: 160px;
    height: 160px;

    margin: 0 auto 18px;

    padding: 4px;

    border: 1px solid rgba(255,255,255,.3);

    border-radius: 50%;

    background: rgba(255,255,255,.08);
}

.rp-review-avatar img {
    display: block;

    width: 100%;
    height: 100%;

    border-radius: 50%;

    object-fit: cover;
    object-position: center;
}

.rp-review-profile-info h3 {
    margin: 0 0 4px;

    color: #ffffff !important;

    font-size: 23px;
    font-weight: 700;
}

.rp-review-profile-info span {
    color: rgba(255,255,255,.67);

    font-size: 14px;
}

.rp-review-stars {
    margin-top: 15px;

    color: #ffd25a !important;

    font-size: 23px;
    letter-spacing: 4px;
}

.rp-review-content {
    position: relative;
}

.rp-review-label {
    display: inline-block;

    margin-bottom: 17px;

    color: rgba(255,255,255,.58);

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2.5px;
}

.rp-review-quote-mark {
    position: absolute;

    top: 8px;
    left: -15px;

    color: rgba(255,255,255,.09);

    font-family: Georgia, serif;
    font-size: 115px;
    line-height: 1;

    pointer-events: none;
}

.rp-review-content blockquote {
    position: relative;

    z-index: 2;

    margin: 0;
    padding: 0;

    border: 0;

    color: rgba(255,255,255,.92) !important;

    font-size: 19px;
    line-height: 1.8;

    font-style: normal;
}

.rp-review-content blockquote strong {
    color: #ffffff !important;
}


/* ========================================
   NESLIHAN – VIDEO
======================================== */

.rp-review-video {
    display: grid;

    grid-template-columns: 360px 1fr;

    gap: 60px;

    align-items: center;
}


/* Video Wrapper */

.rp-video-wrapper {
    position: relative;

    width: 100%;
    max-width: 300px;

    margin: 0 auto;
}


/* Video Badge */

.rp-video-badge {
    position: absolute;

    z-index: 5;

    top: 15px;
    left: 15px;

    padding: 7px 12px;

    border: 1px solid rgba(255,255,255,.2);
    border-radius: 30px;

    background: rgba(0,0,0,.45);

    backdrop-filter: blur(8px);
    -webkit-backdrop-filter: blur(8px);

    color: #ffffff !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 1.5px;
}


/* Streamable 9:16 */

.rp-video-frame {
    position: relative;

    width: 100%;
    height: 0;

    padding-bottom: 177.778%;

    overflow: hidden;

    border-radius: 22px;

    background: #000000;

    box-shadow:
        0 18px 45px rgba(0,0,0,.30);
}

.rp-video-frame iframe {
    position: absolute !important;

    top: 0;
    left: 0;

    width: 100% !important;
    height: 100% !important;

    border: 0 !important;

    display: block !important;
}


/* Video Text */

.rp-video-person {
    position: relative;
    z-index: 2;
}

.rp-video-person h3 {
    margin: 4px 0 5px;

    color: #ffffff !important;

    font-size: clamp(32px, 4vw, 46px);
    font-weight: 700;

    line-height: 1.1;
}

.rp-video-job {
    margin: 0 !important;

    color: rgba(255,255,255,.72) !important;

    font-size: 17px;
}

.rp-video-divider {
    width: 45px;
    height: 2px;

    margin: 26px 0;

    background: rgba(255,255,255,.5);
}

.rp-video-description {
    max-width: 520px;

    margin: 0 !important;

    color: rgba(255,255,255,.83) !important;

    font-size: 18px;
    line-height: 1.7;
}


/* ========================================
   MOBILE
======================================== */

@media (max-width: 850px) {

    .rp-testimonials {
        margin: 65px auto;

        padding: 0 17px;
    }

    .rp-testimonials-heading {
        margin-bottom: 32px;
    }

    .rp-testimonials-heading h2 {
        font-size: 32px;
    }

    .rp-review-card {
        padding: 30px 23px;
    }

    .rp-review-text,
    .rp-review-video {
        grid-template-columns: 1fr;

        gap: 30px;
    }

    .rp-review-content,
    .rp-video-person {
        text-align: center;
    }

    .rp-review-content blockquote {
        font-size: 16px;
        line-height: 1.7;
    }

    .rp-video-wrapper {
        width: 100%;

        max-width: 280px;
    }

    .rp-video-divider {
        margin: 22px auto;
    }

    .rp-video-description {
        margin-left: auto !important;
        margin-right: auto !important;

        font-size: 16px;
    }
}

/* =========================================================
   REDEPOWER WEBINAR + NEWSLETTER
========================================================= */

.rp-webinar-section {
    position: relative;
    width: 100%;
    max-width: 1180px;

    margin: 70px auto;
    padding: 60px;

    border: 1px solid rgba(255,255,255,.15);
    border-radius: 30px;

    background:
        linear-gradient(
            135deg,
            rgba(255,255,255,.13),
            rgba(255,255,255,.045)
        );

    box-shadow:
        0 30px 80px rgba(0,0,0,.18);

    backdrop-filter: blur(15px);
    -webkit-backdrop-filter: blur(15px);

    overflow: hidden;
}


/* =========================================================
   GLOW
========================================================= */

.rp-webinar-glow {
    position: absolute;

    width: 500px;
    height: 500px;

    top: -300px;
    right: -220px;

    border-radius: 50%;

    background: rgba(255,255,255,.10);

    filter: blur(80px);

    pointer-events: none;
}


/* =========================================================
   HEADER
========================================================= */

.rp-webinar-header {
    position: relative;
    z-index: 2;

    max-width: 850px;

    margin: 0 auto 40px;

    text-align: center;
}


.rp-webinar-badge {
    display: inline-block;

    margin-bottom: 20px;
    padding: 8px 15px;

    border: 1px solid rgba(255,255,255,.25);
    border-radius: 30px;

    color: rgba(255,255,255,.78) !important;

    font-size: 10px;
    font-weight: 700;
    letter-spacing: 2px;
}


.rp-webinar-header h2 {
    margin: 0 0 20px;

    color: #ffffff !important;

    font-size: clamp(40px,6vw,70px);
    font-weight: 700;

    line-height: 1;
    letter-spacing: -2px;
}


.rp-webinar-header h2 span {
    color: #ffffff !important;
    opacity: .72;
}


.rp-webinar-header p {
    max-width: 720px;

    margin: 0 auto;

    color: rgba(255,255,255,.78) !important;

    font-size: 19px;
    line-height: 1.65;
}


/* =========================================================
   FORM CARD
========================================================= */

.rp-webinar-form-card {
    position: relative;
    z-index: 2;

    max-width: 860px;

    margin: 0 auto;

    padding: 30px;

    border: 1px solid rgba(255,255,255,.14);
    border-radius: 21px;

    background: rgba(0,0,0,.13);
}


.rp-webinar-form-top {
    display: flex;

    gap: 15px;

    align-items: center;

    margin-bottom: 24px;
}


.rp-webinar-lock {
    display: flex;

    flex: 0 0 44px;

    width: 44px;
    height: 44px;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background: rgba(255,255,255,.12);

    color: #ffffff;

    font-size: 18px;
}


.rp-webinar-form-top strong {
    display: block;

    margin-bottom: 4px;

    color: #ffffff !important;

    font-size: 18px;
}


.rp-webinar-form-top span {
    display: block;

    color: rgba(255,255,255,.64) !important;

    font-size: 13px;
    line-height: 1.5;
}


/* =========================================================
   NAME + EMAIL
========================================================= */

.rp-webinar-fields {
    display: grid;

    grid-template-columns: .8fr 1.4fr;

    gap: 10px;

    margin-bottom: 14px;
}


.rp-webinar-fields input {
    width: 100%;
    height: 58px;

    padding: 0 20px !important;

    border:
        1px solid
        rgba(255,255,255,.18) !important;

    border-radius: 12px !important;

    outline: none;

    background:
        rgba(255,255,255,.10) !important;

    color: #ffffff !important;

    font-size: 15px !important;

    transition: .2s ease;
}


.rp-webinar-fields input::placeholder {
    color:
        rgba(255,255,255,.52) !important;
}


.rp-webinar-fields input:focus {
    border-color:
        rgba(255,255,255,.52) !important;

    background:
        rgba(255,255,255,.14) !important;
}


/* =========================================================
   NEWSLETTER CHECKBOX
========================================================= */

.rp-webinar-consent {
    display: flex !important;

    position: relative;

    gap: 12px;

    align-items: flex-start;

    margin: 0 0 16px !important;

    padding: 15px 16px;

    border: 1px solid rgba(255,255,255,.13);
    border-radius: 12px;

    background: rgba(255,255,255,.055);

    cursor: pointer;
}


.rp-webinar-consent > input {
    position: absolute;

    opacity: 0;

    width: 1px;
    height: 1px;
}


.rp-webinar-checkmark {
    position: relative;

    display: block;

    flex: 0 0 20px;

    width: 20px;
    height: 20px;

    margin-top: 2px;

    border: 1px solid rgba(255,255,255,.4);
    border-radius: 5px;

    background: rgba(255,255,255,.08);

    transition: .2s ease;
}


.rp-webinar-consent
input:checked
+
.rp-webinar-checkmark {
    background: #ffffff;

    border-color: #ffffff;
}


.rp-webinar-consent
input:checked
+
.rp-webinar-checkmark:after {

    content: "✓";

    position: absolute;

    top: 50%;
    left: 50%;

    transform:
        translate(-50%,-54%);

    color: #125bd7;

    font-size: 14px;
    font-weight: 900;
}


.rp-webinar-consent-text {
    color:
        rgba(255,255,255,.73) !important;

    font-size: 11px !important;
    line-height: 1.55;
}


/* =========================================================
   CAPTCHA
========================================================= */

.rp-webinar-captcha-row {
    display: grid;

    grid-template-columns:
        minmax(230px,.65fr)
        1fr;

    gap: 10px;

    align-items: stretch;
}


.rp-webinar-captcha {
    display: flex;

    align-items: center;
    justify-content: space-between;

    gap: 14px;

    min-height: 60px;

    padding: 8px 10px 8px 17px;

    border:
        1px solid
        rgba(255,255,255,.15);

    border-radius: 12px;

    background:
        rgba(0,0,0,.11);
}


.rp-webinar-captcha-text span {
    display: block;

    margin-bottom: 2px;

    color:
        rgba(255,255,255,.45) !important;

    font-size: 8px;
    font-weight: 700;

    letter-spacing: 1.5px;
}


.rp-webinar-captcha-text strong {
    display: block;

    color: #ffffff !important;

    font-size: 18px;
    font-weight: 700;
}


.rp-webinar-captcha input {
    width: 95px;
    height: 42px;

    margin: 0 !important;

    padding: 0 10px !important;

    border:
        1px solid
        rgba(255,255,255,.20) !important;

    border-radius: 9px !important;

    background:
        rgba(255,255,255,.10) !important;

    color: #ffffff !important;

    text-align: center;

    font-size: 15px !important;

    outline: none;
}


.rp-webinar-captcha input::placeholder {
    color:
        rgba(255,255,255,.43) !important;
}


.rp-webinar-captcha input:focus {
    border-color:
        rgba(255,255,255,.5) !important;
}


/* =========================================================
   BUTTON
========================================================= */

.rp-webinar-captcha-row button {
    display: flex;

    width: 100%;
    min-height: 60px;

    padding: 0 22px;

    align-items: center;
    justify-content: center;

    gap: 12px;

    border: 0;
    border-radius: 12px;

    background: #ffffff;

    color: #125bd7 !important;

    font-size: 13px;
    font-weight: 700;

    line-height: 1.25;

    cursor: pointer;

    transition:
        transform .2s ease,
        box-shadow .2s ease;
}

.rp-webinar-captcha-row button:hover {
    background: #ffffff !important;
    color: #125bd7 !important;
    transform: none !important;
    box-shadow: none !important;
}


.rp-webinar-captcha-row button:active {
    transform: translateY(0);
}


.rp-webinar-captcha-row button span {
    font-size: 19px;
}


/* =========================================================
   PRIVACY TEXT
========================================================= */

.rp-webinar-privacy {
    display: flex;

    gap: 8px;

    align-items: flex-start;

    margin-top: 16px;
}


.rp-webinar-privacy > span {
    font-size: 12px;
}


.rp-webinar-privacy p {
    margin: 0 !important;

    color:
        rgba(255,255,255,.50) !important;

    font-size: 10.5px;
    line-height: 1.55;
}


.rp-webinar-privacy a {
    color: #ffffff !important;

    text-decoration: underline;
}


/* =========================================================
   ERROR
========================================================= */

.rp-webinar-error {
    margin-bottom: 16px;

    padding: 12px 15px;

    border:
        1px solid
        rgba(255,100,100,.26);

    border-radius: 10px;

    background:
        rgba(255,70,70,.14);

    color: #ffffff !important;

    font-size: 13px;
}


/* =========================================================
   DOUBLE OPT-IN PENDING
========================================================= */

.rp-webinar-pending {
    display: flex;

    position: relative;
    z-index: 2;

    max-width: 860px;

    gap: 15px;

    align-items: center;

    margin:
        0 auto
        18px;

    padding: 17px 20px;

    border:
        1px solid
        rgba(255,255,255,.18);

    border-radius: 14px;

    background:
        rgba(255,255,255,.09);
}


.rp-webinar-pending-icon {
    display: flex;

    flex: 0 0 42px;

    width: 42px;
    height: 42px;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        rgba(255,255,255,.13);

    color: #ffffff;

    font-size: 18px;
}


.rp-webinar-pending strong {
    display: block;

    margin-bottom: 3px;

    color: #ffffff !important;

    font-size: 15px;
}


.rp-webinar-pending p {
    margin:
        0 0 3px !important;

    color:
        rgba(255,255,255,.72) !important;

    font-size: 12px;
    line-height: 1.5;
}


.rp-webinar-pending small {
    color:
        rgba(255,255,255,.55) !important;

    font-size: 11px;
}


.rp-webinar-pending small strong {
    display: inline;

    color: #ffffff !important;

    font-size: inherit;
}


/* =========================================================
   GENERAL NOTICE
========================================================= */

.rp-webinar-notice {
    display: flex;

    position: relative;
    z-index: 2;

    max-width: 860px;

    gap: 13px;

    align-items: center;

    margin:
        0 auto
        20px;

    padding: 15px 18px;

    border:
        1px solid
        rgba(255,255,255,.16);

    border-radius: 13px;

    background:
        rgba(255,255,255,.08);
}


.rp-webinar-notice > span {
    display: flex;

    flex: 0 0 34px;

    width: 34px;
    height: 34px;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        rgba(255,255,255,.14);

    color: #ffffff;
}


.rp-webinar-notice strong {
    display: block;

    color: #ffffff !important;

    font-size: 14px;
}


.rp-webinar-notice p {
    margin:
        2px 0 0 !important;

    color:
        rgba(255,255,255,.62) !important;

    font-size: 12px;
}


/* =========================================================
   BOTTOM INFO
========================================================= */

.rp-webinar-preview {
    display: flex;

    position: relative;
    z-index: 2;

    max-width: 650px;

    margin:
        28px auto 0;

    align-items: center;

    gap: 15px;
}


.rp-webinar-preview span {
    flex: 1;

    height: 1px;

    background:
        rgba(255,255,255,.15);
}


.rp-webinar-preview p {
    margin: 0 !important;

    color:
        rgba(255,255,255,.54) !important;

    font-size: 11px;

    white-space: nowrap;
}


/* =========================================================
   HONEYPOT
========================================================= */

.rp-webinar-honeypot {
    position: absolute !important;

    left: -99999px !important;

    width: 1px !important;
    height: 1px !important;

    overflow: hidden !important;
}


/* =========================================================
   UNLOCKED
========================================================= */

.rp-webinar-unlocked {
    position: relative;
    z-index: 2;

    max-width: 950px;

    margin: 0 auto;
}


/* =========================================================
   SUCCESS
========================================================= */

.rp-webinar-success {
    display: flex;

    gap: 13px;

    align-items: center;

    margin-bottom: 22px;

    padding: 14px 18px;

    border:
        1px solid
        rgba(255,255,255,.14);

    border-radius: 13px;

    background:
        rgba(255,255,255,.08);
}


.rp-webinar-success > span {
    display: flex;

    flex: 0 0 34px;

    width: 34px;
    height: 34px;

    align-items: center;
    justify-content: center;

    border-radius: 50%;

    background:
        rgba(255,255,255,.14);

    color: #ffffff;
}


.rp-webinar-success strong {
    display: block;

    color: #ffffff !important;

    font-size: 14px;
}


.rp-webinar-success p {
    margin:
        2px 0 0 !important;

    color:
        rgba(255,255,255,.62) !important;

    font-size: 12px;
}


/* =========================================================
   VIDEO
========================================================= */

.rp-webinar-player {
    position: relative;

    width: 100%;
    height: 0;

    padding-bottom: 56.25%;

    border-radius: 22px;

    background: #000000;

    overflow: hidden;

    box-shadow:
        0 25px 70px
        rgba(0,0,0,.30);
}


.rp-webinar-player iframe {
    position: absolute !important;

    inset: 0;

    width: 100% !important;
    height: 100% !important;

    border: 0 !important;

    display: block !important;
}


/* =========================================================
   PLAYER INFO
========================================================= */

.rp-webinar-player-bottom {
    display: flex;

    justify-content:
        space-between;

    align-items:
        flex-end;

    gap: 20px;

    padding-top: 20px;
}


.rp-webinar-player-bottom span {
    display: block;

    margin-bottom: 4px;

    color:
        rgba(255,255,255,.48) !important;

    font-size: 9px;
    font-weight: 700;

    letter-spacing: 2px;
}


.rp-webinar-player-bottom strong {
    display: block;

    color: #ffffff !important;

    font-size: 21px;
}


.rp-webinar-player-bottom p {
    margin: 0 !important;

    color:
        rgba(255,255,255,.60) !important;

    font-size: 12px;
}


/* =========================================================
   MOBILE
========================================================= */

@media (max-width: 700px) {

    .rp-webinar-section {
        margin: 45px auto;

        padding: 38px 18px;

        border-radius: 22px;
    }


    .rp-webinar-header {
        margin-bottom: 30px;
    }


    .rp-webinar-header h2 {
        font-size: 43px;

        letter-spacing: -1px;
    }


    .rp-webinar-header p {
        font-size: 16px;
    }


    .rp-webinar-form-card {
        padding: 20px;
    }


    .rp-webinar-form-top {
        align-items: flex-start;
    }


    .rp-webinar-fields {
        grid-template-columns: 1fr;
    }


    .rp-webinar-consent {
        padding: 14px;
    }


    .rp-webinar-captcha-row {
        grid-template-columns: 1fr;
    }


    .rp-webinar-captcha {
        width: 100%;
    }


    .rp-webinar-captcha-row button {
        width: 100%;

        padding: 14px 18px;
    }


    .rp-webinar-pending {
        align-items: flex-start;
    }


    .rp-webinar-preview span {
        display: none;
    }


    .rp-webinar-preview {
        justify-content: center;
    }


    .rp-webinar-preview p {
        white-space: normal;

        text-align: center;
    }


    .rp-webinar-player-bottom {
        flex-direction: column;

        align-items: flex-start;
    }

}