/*
Theme Name: outfire.ch
Theme URI: 
Author: Armin Oppliger
Author URI: 
Description: 
Requires at least: 6.9
Tested up to: 6.9
Requires PHP: 5.7
Version: 
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: outfire-ch
Tags: 
*/

@import url('responsive.css');
/* .btn-mieten is output by theme for "Nur Mieten" products; no need to hide by default */

/* Global */
:focus,
button:focus,
a:focus {
    outline: none;
}

a {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}

#wp-admin-bar-woo-variation-swatches-clear-transient .outfire-mieten-wrap,
.woocommerce-checkout div.outfire-mieten-wrap {
	display: none;
}


.wp-block-button.is-style-outline a,
.wp-block-button.is-style-outline button {
    transition: all 0.3s ease;
	font-weight: 700;
}

.wp-block-button.is-style-outline a:hover,
.wp-block-button.is-style-outline button:hover {
    text-decoration: none;
    background: #92644e !important;
    color: #fff !important;
}

/* Header */
.wp-block-site-logo {
    z-index: 1;
}
.home .header-wrapper {
    min-height: 930px;
}
.header-wrapper {
    position: relative;
    /* Hero photo is NOT on the wrapper — it sits only below .nav-soc (see .all-in-one::after) */
    background-image: none !important;
    background-color: transparent;
    height: 100%;
    min-height: 570px;
}

/*
 * Layout: row1 = nav (above the image), row2 = hero photo + diagonal + logo.
 * Nav no longer overlaps the picture; diagonal cannot creep under the bar.
 */
.header-wrapper > .all-in-one {
    display: grid;
    grid-template-columns: minmax(0, 1fr);
    grid-template-rows: auto 1fr;
    position: relative;
    min-height: inherit;
    height: 100%;
    box-sizing: border-box;
}
.header-wrapper > .all-in-one > .nav-soc {
    grid-row: 1;
    grid-column: 1;
    position: relative;
    z-index: 3;
    width: 100%;
}
.header-wrapper > .all-in-one > *:not(.nav-soc) {
    grid-row: 2;
    grid-column: 1;
    z-index: 2;
    justify-self: center;
    align-self: center;
}
/* Sticky/small bar: drop hero grid so only the nav bar remains in flow */
body.outfire-header-shrunk .header-wrapper > .all-in-one {
    display: block;
}
body.outfire-header-shrunk .header-wrapper > .all-in-one::before,
body.outfire-header-shrunk .header-wrapper > .all-in-one::after {
    display: none;
}
/* Logo fixed & centered in the sticky bar (must win over hero grid item rules) */
body.outfire-header-shrunk .header-wrapper > .all-in-one > .wp-block-site-logo {
    position: fixed !important;
    top: 5px;
    left: calc(50% - 29px);
    right: auto;
    bottom: auto;
    z-index: 1002;
    margin: 0;
    padding: 0 !important;
    grid-row: auto;
    grid-column: auto;
    justify-self: auto;
    align-self: auto;
    width: auto;
    height: auto;
}
body.admin-bar.outfire-header-shrunk .header-wrapper > .all-in-one > .wp-block-site-logo {
    top: 44px; /* 32px admin bar + 12px */
}
/* Scroll down: sticky bar hidden — hide fixed logo too (it won’t move with transform) */
body.outfire-header-hidden.outfire-header-shrunk .header-wrapper > .all-in-one > .wp-block-site-logo {
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
}
/* Hero image — only the area under the nav */
.header-wrapper > .all-in-one::after {
    content: '';
    grid-row: 2;
    grid-column: 1;
    z-index: 0;
    justify-self: stretch;
    align-self: stretch;
    min-height: 100%;
    background-image: var(--outfire-header-bg);
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    pointer-events: none;
}
/* Diagonal brown overlay on the hero only: BL → TR at any aspect ratio */
.header-wrapper > .all-in-one::before {
    content: '';
    grid-row: 2;
    grid-column: 1;
    z-index: 1;
    justify-self: stretch;
    align-self: stretch;
    min-height: 100%;
    background: rgba(117, 74, 54, 0.72);
    clip-path: polygon(0 0, 100% 0, 0 100%);
    pointer-events: none;
}

.header-wrapper .wp-block-navigation {
    position: relative;
    gap: 0;
}

.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger {
    width: 45px;
    height: 35px;
    position: relative;
    padding: 0;
    border: none;
    background: transparent;
    color: #fff;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.3s ease-in-out;
    transition: 0.3s ease-in-out;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    /* max-width: 28px; */
    background: currentColor;
    border-radius: 4px;
    opacity: 1;
    /* left: 50%; */
    left: 0;
    /* margin-left: -14px; */
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    -webkit-transition: 0.25s ease-in-out;
    transition: 0.25s ease-in-out;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger span:nth-child(1) {
    top: 4px;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger span:nth-child(2) {
    top: 16px;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger span:nth-child(3) {
    top: 28px;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger.open span:nth-child(1) {
    top: 16px;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger.open span:nth-child(2) {
    opacity: 0;
    margin-left: -40px;
}
.header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger.open span:nth-child(3) {
    top: 16px;
    -webkit-transform: rotate(-135deg);
    transform: rotate(-135deg);
}
html.has-modal-open .header-wrapper .wp-block-navigation__responsive-container-open.nav-icon-hamburger {
    display: flex !important;
}

.header-wrapper .wp-block-navigation__responsive-container {
    position: absolute !important;
    top: calc(100% + 6px) !important;
    left: -40px !important;
    right: auto !important;
    bottom: auto !important;
    width: auto !important;
    min-width: 260px;
    /* max-height: 80vh; */
    overflow: auto;
    /* box-shadow: 0 12px 40px rgba(0, 0, 0, 0.35);
    border-radius: 0 0 8px 8px; */
    animation: nav-dropdown-in 0.25s ease;
}
@keyframes nav-dropdown-in {
    from {
        opacity: 0;
        transform: translateY(-8px);
    }
    to {
        opacity: 1;
        transform: translateY(0);
    }
}
.header-wrapper .wp-block-navigation__responsive-container:not(.is-menu-open) {
    display: none !important;
}

.header-wrapper .wp-block-navigation__responsive-container.is-menu-open {
    background: none !important;
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    padding: 0;
}
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__responsive-container-content {
    flex-direction: column;
    align-items: stretch;
    padding-top: 0;
}
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item,
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container {
    flex-direction: column;
    align-items: stretch;
    border: none;
}
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content,
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open a {
    color: #ffffff;
    padding: 0.85rem 1.25rem;
    font-size: 1.1rem;
    border-bottom: 1px solid rgba(255, 255, 255, 1);
}

.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:first-child .wp-block-navigation-item__content,
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:first-child a {
    border-top: 1px solid rgba(255, 255, 255, 1);
}
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child .wp-block-navigation-item__content,
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child a {
    /* border-bottom: none; */
}
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content:hover,
.header-wrapper .wp-block-navigation__responsive-container.is-menu-open a:hover {
    color: #92644E;
    background: #ffffff;
    text-decoration: none;
}
.header-wrapper .current-menu-item a {
    background: #ffffff;
    color:#92644E !important;
}

.header-wrapper .wp-block-navigation__responsive-container-close {
    display: none !important;
}

header .wp-block-social-links a.wp-block-social-link-anchor {
    border-radius: 50%;
    /* border: 2px solid #fff !important; */
}

header .woo-header {
/*
	position:absolute;
	right:40px;
	top:160px;
*/
}
header .wc-block-mini-cart__button {
    padding: .268em;
    border-radius: 50%;
    /* border: 2px solid #fff; */
    transition: transform 0.1s ease;
}
header .wc-block-mini-cart__button:hover {
    transform: scale(1.13);
}
header .wc-block-mini-cart__button .wc-block-mini-cart__icon {
    height: 1.1em;
    width: 1.1em;
}
header .wc-block-mini-cart__badge {
    background: #ffffff;
    color: #92644e !important;
    font-weight: 700;
    font-size: .6em;
}

/* Small header bar: social icons in a row (only in main bar, not in dropdown) */
header.small-header .alignfull .wp-block-social-links,
body.outfire-header-shrunk:not(.outfire-header-hidden) header .alignfull .wp-block-social-links,
body.outfire-header-hidden .wp-block-social-links{
/*
	flex-direction: row;
    padding-top:5px;
*/
}
header.small-header .wp-block-site-logo {
	padding: 0 !important;
	margin: 0;
	position: fixed !important;
	top: 12px;
	left: calc(50% - 29px);
	right: auto;
	z-index: 1002;
}
body.admin-bar header.small-header .wp-block-site-logo {
	top: 44px;
}

/* ——— Sticky shrink header (hammersafe-style) ——— */
/* Inner bar (logo + nav + cart) transitions to compact sticky look */
header .alignfull,
.header-wrapper header .alignfull {
    transition: background-color 0.25s ease, padding 0.25s ease, box-shadow 0.25s ease;
}

body.outfire-header-shrunk header {
    position: sticky;
    top: 0;
    z-index: 1000;
    transition: transform 0.25s ease;
}
body.admin-bar.outfire-header-shrunk header {
    top: 32px;
}

/* Scroll down: hide sticky bar off-screen; scroll up: show it */
body.outfire-header-hidden.outfire-header-shrunk header {
    transform: translateY(-100%);
}

/* When header lives inside .header-wrapper, wrapper stays in flow but we stick the header to viewport */
body.outfire-header-shrunk .header-wrapper header {
    position: sticky;
    top: 0;
    transition: transform 0.25s ease;
}

body.outfire-header-hidden.outfire-header-shrunk .header-wrapper header {
    transform: translateY(-100%);
}

body.outfire-header-shrunk header .alignfull,
body.outfire-header-shrunk .header-wrapper header .alignfull {
    background: rgba(75, 62, 56, 0.97);
    backdrop-filter: blur(12px);
    -webkit-backdrop-filter: blur(12px);
    box-shadow: 0 2px 12px rgba(0, 0, 0, 0.15);
}

/* Shrunken: smaller logo and title in the sticky bar */
body.outfire-header-shrunk header .wp-block-site-logo img,
body.outfire-header-shrunk .header-wrapper header .wp-block-site-logo img {
    max-height: 50px;
    width: auto;
    height: auto;
    object-fit: contain;
}

body.outfire-header-shrunk header .wp-block-site-title,
body.outfire-header-shrunk .header-wrapper header .wp-block-site-title {
    font-size: 1rem !important;
    line-height: 1.2;
}

body.outfire-header-shrunk header .wp-block-site-tagline,
body.outfire-header-shrunk .header-wrapper header .wp-block-site-tagline {
    font-size: 0.75rem !important;
}

/* When shrunken: hide hero and collapse wrapper so content is visible (no gray empty zone); scroll compensation in JS avoids jerking */
body.outfire-header-shrunk .header-wrapper {
    background-image: none !important;
    min-height: 1px;
    overflow: hidden;
}

/* When hamburger menu is open, allow dropdown to be visible (don’t clip) */
body.outfire-header-shrunk .header-wrapper:has(.wp-block-navigation__responsive-container.is-menu-open),
body.outfire-header-shrunk header:has(.wp-block-navigation__responsive-container.is-menu-open) {
    overflow: visible;
}

/* Shrunken header: nav dropdown above page content and fully visible */
body.outfire-header-shrunk .wp-block-navigation__responsive-container.is-menu-open {
    z-index: 1001;
    max-height: min(80vh, 400px);
    overflow-y: auto;
    background: rgba(75, 62, 56, 0.98) !important;
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

body.outfire-header-shrunk .header-wrapper > .all-in-one::before,
body.outfire-header-shrunk .header-wrapper > .all-in-one::after {
    /* display:none is set with the sticky bar rules above; keep as safety for older cascade */
    display: none;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
}

/* Woo cart: in shrunken bar, position relative to bar (not absolute) */
body.outfire-header-shrunk header .woo-header,
body.outfire-header-shrunk .header-wrapper header .woo-header {
    /*
	right: 145px;
    top: 17px;
	*/
}

/*WOO*/
div.wc-block-add-to-cart-form.wc-block-add-to-cart-form--stepper .wc-block-components-quantity-selector input[type="number"].input-text.qty.text {
	font-size:100%;
}
.woocommerce .wp-block-woocommerce-product-image-gallery {
	max-width:100%;
}

.woocommerce table.variations th.label,
.woocommerce .value.woo-variation-items-wrapper{
	padding:0;
}

.woocommerce li.variable-item {
	color:#92644e !important;
}
.woocommerce li.variable-item.selected {
	box-shadow: var(--wvs-selected-item-box-shadow,0 0 0 2px #92644e) !important;
}

.wapf-checkboxes {
    display: flex;
    flex-direction: row;
    gap: 30px;
}
.woocommerce-page .wapf-input-label {
    margin: 0 !important;
}
.wapf-input-label input.wapf-input{
    width: 20px;
    height: 20px;
}

.woocommerce-checkout .wc-block-components-address-form__country.wc-block-components-country-input,
.wc-block-components-checkout-step__heading-container .wc-block-components-checkout-step__description {
    display: none;
}

.woocommerce-checkout #shipping-option .wc-block-components-radio-control__secondary-label,
.woocommerce-checkout #payment-method label {
	display:none;
}
.woocommerce-checkout #payment-method .wc-block-components-radio-control-accordion-content {
  padding: 16px 16px 16px;
}

.single-product .wp-block-woocommerce-product-template .outfire-mieten-wrap {
    text-align: center;
}

.single-product .wp-block-woocommerce-product-collection a.btn-mieten {
	font-size: var(--wp--preset--font-size--medium);
}

/* Page */
.page-right-image {
    width: 100%;
    height: auto;
}
.google-map-container p {
	padding:0;
	margin:0;
}

/*POPUP*/
.pum-content.popmake-content input.wpcf7-text,
.pum-content.popmake-content textarea {
	width: 98%;
	font-size: 100%;
  	padding: 10px 1%;
	font-family: 'Open Sans';
}

.pum-content.popmake-content input.wpcf7-submit {
  	transition: all 0.3s ease;
	font-size:120%;
	font-weight:600;
	text-transform:uppercase;
	background: #92644e;
	color: #fff;
	border:1px solid #92644e;
	cursor:pointer;
	padding:5px 15px;
}
.pum-content.popmake-content input.wpcf7-submit:hover {
	text-decoration: none;
	color:#92644e;
	background:#fff;
}

/* ——— modal window CF7 ——— */
body.outfire-modal-open {
    overflow: hidden;
}

.outfire-contact-modal {
    position: fixed;
    inset: 0;
    z-index: 100000;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0;
    visibility: hidden;
    opacity: 0;
    pointer-events: none;
    transition: visibility 0.25s, opacity 0.25s;
}
.outfire-contact-modal[aria-hidden="false"] {
    visibility: visible;
    opacity: 1;
    pointer-events: auto;
}

.outfire-contact-modal__overlay {
    position: absolute;
    inset: 0;
    cursor: pointer;
}

.outfire-contact-modal__box {
    position: relative;
    width: calc(100% - 4rem);
    max-height: calc(100vh - 2rem);
    overflow-y: auto;
    overflow-x: hidden;
    -webkit-overflow-scrolling: touch;
    background: rgba(146, 100, 78, 0.93);
    border-radius: 0;
    padding: 2rem 2rem 2.5rem;
    box-shadow: 0 20px 60px rgba(0, 0, 0, 0.4);
    z-index: 1;
}

.outfire-contact-modal__close {
    position: absolute;
    top: 1rem;
    right: 1rem;
    width: 40px;
    height: 40px;
    padding: 0;
    border: none;
    background: transparent;
    color: #fff;
    font-size: 28px;
    line-height: 1;
    cursor: pointer;
    opacity: 0.9;
}
.outfire-contact-modal__close:hover {
    opacity: 1;
}

.outfire-contact-modal__title {
    color: #fff;
    font-size: 1.15rem;
    line-height: 1.45;
    margin: 0 0 1.5rem;
    padding-right: 2.5rem;
}

.outfire-contact-modal__form {
    color: #fff;
}
.outfire-contact-modal__form form {
	max-width: 570px;
  	margin: 0 auto;
}
.outfire-contact-modal__form h1 {
	/* margin: 0 auto;
  	width: 90%; */
}
.outfire-contact-modal__form h1 input {
	font-size: 30px !important;
  	/* text-align: center; */
  	border: none !important;
  	padding: 0 !important;
}
.short-desc {
	padding: 15px 0 !important;
	/* text-align: center; */
}
.outfire-contact-modal__form p {
	margin:0;
}
.outfire-contact-modal__form .two-columns {
	display: flex;
  	flex-direction: row;
  	gap: 20px;
}
.outfire-contact-modal__form .two-columns div {
	width: 50%;
}
.outfire-contact-modal__form label {
    display: block;
    margin-bottom: 0.35rem;
    font-size: 22px;
	font-weight: 400;
}
.outfire-contact-modal__form input[type="text"],
.outfire-contact-modal__form input[type="email"],
.outfire-contact-modal__form input[type="tel"] {
	font-family: "Open Sans", sans-serif;
    width: 100%;
    color: #fff;
    font-size: 22px;
	font-weight: 400;
  	background: none;
	border-top: none;
  	border-left: none;
  	border-right: none;
	border-radius: 0;
  	border-bottom: 1px solid #fff;
  	padding: 10px 0;	
}
.outfire-contact-modal__form .wpcf7-form-control.wpcf7-date {
	font-family: "Open Sans", sans-serif;
    font-size: 22px;
	font-weight: 400;
}
.outfire-contact-modal__form textarea {
	font-family: "Open Sans", sans-serif;
	height: 180px;
    width: 100%;
	font-size: 22px;
	font-weight: 400;
  	background: #fff;
	border: none;
	border-radius: 0;
  	padding: 10px;
}
.outfire-contact-modal__form input::placeholder,
.outfire-contact-modal__form textarea::placeholder {
    color: #fff;
}
.outfire-contact-modal__form input[type="submit"] {
    display: block;
    margin: 0;
    padding: 0.5rem 2rem;
    background: #fff;
    color: #92644e;
    border: none;
    border-radius: 8px;
    font-size: 22px;
	font-weight: 400;
    cursor: pointer;
	transition: all 0.3s ease;
}
.outfire-contact-modal__form input[type="submit"]:hover {
    background: #92644e;
	color:#fff;
}
.outfire-contact-modal__form .wpcf7-form-control-wrap {
    display: block;
}
.outfire-contact-modal__form .wpcf7-not-valid-tip {
    font-size: 0.85rem;
	margin:0;
    color: #fff;
	background:#dc3232;
}

.outfire-contact-modal__form form.invalid .wpcf7-response-output {
	background: #ffb900;
	text-align: center;
	color: #000;
	font-size: 18px;
	font-weight: 400;
	margin:0;
}

.outfire-contact-modal__form form.sent .wpcf7-response-output {
 	background: #46b450;
  	color: #fff;
  	text-align: center;
}

.c-fort-title h2 {
	font-weight:300;
	text-align:center;
	font-size:140%;
}

.c-form-wrapper {
	display:flex;
	width: 100%;
	flex-direction: row;
	justify-content: left;
	gap: 20px;
}

.c-form-wrapper .col-1,
.c-form-wrapper .col-2,
.c-form-wrapper .col-3 {
	gap: 20px;
	display: flex;
  	flex-direction: column;
}
.c-form-wrapper .send-btn {
	display: flex;
  	flex-direction: column;
  	align-items: center;
}
.c-form-wrapper .send-btn p {
	padding:0;
	margin:0;
	text-align:center;
}

span.wpcf7-spinner {
	display: none;
}

/* Products page (page-id-19): equal-height cards, aligned titles / prices / buttons per row */
.page-id-19 li.wc-block-product {
	position: relative;
}
.page-id-19 .wp-block-woocommerce-product-template {
	gap: 1.25rem;
	align-items: stretch;
}
.page-id-19 li.wc-block-product,
.page-id-19 .wc-block-grid__product {
	background: #fff;
	border: 2px solid #e8dfda;
	border-radius: 0;
	padding: 14px;
	/* box-shadow: 0 2px 8px rgba(0, 0, 0, 0.05); */
	transition: transform 0.2s ease, box-shadow 0.2s ease, border-color 0.2s ease;
	display: grid;
	grid-template-columns: minmax(0, 1fr);
	/* title | image | flexible spacer | price+CTA */
	grid-template-rows: auto auto minmax(0, 1fr) auto;
	gap: 0.65rem;
	height: 100%;
	box-sizing: border-box;
	align-content: stretch;
}
.page-id-19 li.wc-block-product:hover,
.page-id-19 .wc-block-grid__product:hover {
	transform: translateY(-2px);
	border-color: #d0b6a8;
	box-shadow: 0 5px 25px rgba(0, 0, 0, 0.12);
}
.page-id-19 li.wc-block-product > .wp-block-post-title {
	grid-row: 1;
	grid-column: 1;
}
.page-id-19 li.wc-block-product > .wc-block-components-product-image,
.page-id-19 li.wc-block-product > .wp-block-woocommerce-product-image {
	grid-row: 2;
	grid-column: 1;
	align-self: start;
}
.page-id-19 li.wc-block-product img,
.page-id-19 .wc-block-grid__product img {
	border-radius: 8px;
}
/* Title band: same vertical start + room for 2 lines so neighbors stay aligned */
.page-id-19 li.wc-block-product .wp-block-post-title,
.page-id-19 .wc-block-components-product-name,
.page-id-19 .wc-block-grid__product-title {
	line-height: 1.35;
	min-height: 2.8em;
	margin-top: 0;
}
/* Price + CTA always in the last row → same vertical position within the row */
.page-id-19 li.wc-block-product > .wp-block-group {
	grid-row: 4;
	grid-column: 1;
	margin-top: 0 !important;
	margin-bottom: 0 !important;
	width: 100%;
	align-items: center;
	/* Tall enough for price-range + wrapping "Ausführung wählen" */
	min-height: 5.8em;
}
.page-id-19 li.wc-block-product .wc-block-components-product-price,
.page-id-19 .wc-block-grid__product-price {
	font-weight: 700;
	min-height: 2.6em;
	display: flex;
	align-items: center;
}
.page-id-19 li.wc-block-product .wp-block-button__link,
.page-id-19 li.wc-block-product .wc-block-components-product-button__button {
	min-height: 93px;
	display: inline-flex !important;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	text-align: center;
}
.page-id-19 .outfire-mieten-wrap {
	grid-row: 1;
	grid-column: 1;
	justify-self: end;
	align-self: start;
	position: relative;
	top: auto;
	right: auto;
	z-index: 2;
}
a.btn-mieten {
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
	background-color: #32373c;
	color: #fff;
	border: none;
  	font-weight: 300;
	text-decoration:none;
	transition: all 0.3s ease;
	display: inline-flex;
}
a.btn-mieten:hover {
	background:#000;
}

/* Only real buttons — not product-image links that also got black-style-btn in the editor */
.wp-block-button.black-style-btn button,
.wp-block-button.black-style-btn a,
a.btn-mieten.black-style-btn {
	padding: calc(0.667em + 2px) calc(1.333em + 2px);
  	background-color: #32373c !important;
  	color: #fff !important;
  	border: none !important;
}
.is-style-outline.wp-block-button.black-style-btn button:hover,
.is-style-outline.wp-block-button.black-style-btn a:hover {
	background-color: #000 !important;
}

/* Product image anchors must stay transparent (editor may attach black-style-btn) */
.page-id-19 .wc-block-components-product-image a,
.page-id-19 .wp-block-woocommerce-product-image a {
	background: transparent !important;
	background-color: transparent !important;
	color: inherit !important;
	padding: 0 !important;
}

/* Checkout: Abholung (local pickup) left, Versenden right — rates are ordered pickup-first in PHP */
body.woocommerce-checkout ul#shipping_method {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: 1rem;
	align-items: start;
	list-style: none;
	padding-left: 0;
	margin: 0;
}
body.woocommerce-checkout ul#shipping_method > li:first-child {
	grid-column: 1;
}
body.woocommerce-checkout ul#shipping_method > li:nth-child(n + 2) {
	grid-column: 2;
}

/*
 * Block checkout: DOM order = Versenden, then Abholung. Abholung left, Versenden right (explicit flex order).
 */
body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-components-checkout-step__content {
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	gap: 1rem;
	align-items: stretch;
}
/* 1st card in DOM = Versenden → right; 2nd = Abholung kostenlos → left */
body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-checkout__shipping-method-option:first-of-type {
	order: 2;
}
body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-checkout__shipping-method-option:last-of-type {
	order: 1;
}
body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-checkout__shipping-method-option {
	flex: 1 1 calc(50% - 0.5rem);
	box-sizing: border-box;
	min-width: min(100%, 12rem);
}
body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-components-checkout-step__content > :not(.wc-block-checkout__shipping-method-option) {
	flex: 1 1 100%;
	width: 100%;
	min-width: 100%;
	order: 3;
}

/* Subordinate rate list (Versandmethode) stays readable under the toggles */
body.woocommerce-checkout .wc-block-components-shipping-rates-control .wc-block-components-radio-control,
body.woocommerce-checkout .wc-block-components-shipping-rates-control__package .wc-block-components-radio-control {
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

@media (max-width: 600px) {
	body.woocommerce-checkout ul#shipping_method {
		grid-template-columns: 1fr;
	}
	body.woocommerce-checkout ul#shipping_method > li {
		grid-column: auto !important;
	}
	body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-components-checkout-step__content {
		flex-direction: column;
	}
	body.woocommerce-checkout .wc-block-checkout__shipping-method .wc-block-checkout__shipping-method-option {
		flex: 1 1 auto;
		min-width: 0;
	}
}

/*
 * Block checkout + Versenden (body.outfire-checkout-versenden-layout):
 * Shipping / additional info / order notes before addresses; payment after. No insertBefore — flex order only.
 * Selectors: [data-block-name], :has(...), .wp-block-woocommerce-checkout-* classes.
 * Server-side inner block order: inc/woocommerce-checkout-shipping-pickup-layout.php (render_block_data).
 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper,
body.outfire-checkout-versenden-layout
	.wp-block-woocommerce-checkout-fields-block
	.wc-block-checkout__main
	form.wc-block-checkout__form,
body.outfire-checkout-versenden-layout
	.wp-block-woocommerce-checkout-fields-block
	form.wc-block-checkout__form {
	display: flex !important;
	flex-direction: column !important;
	flex-wrap: nowrap !important;
	align-items: stretch;
}

/* order: 5 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-express-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-express-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-express-payment-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-express-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-express-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-express-payment-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-express-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-express-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-express-payment-block {
	order: 5;
}

/* order: 10 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-contact-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-contact-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-contact-information-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-contact-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-contact-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-contact-information-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-contact-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-contact-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-contact-information-block {
	order: 10;
}

/* order: 18 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-shipping-method-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-shipping-method-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-shipping-method-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-method-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-method-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-method-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-method-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-method-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-method-block {
	order: 18;
}

/* order: 19 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-pickup-options-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-pickup-options-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-pickup-options-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-pickup-options-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-pickup-options-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-pickup-options-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-pickup-options-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-pickup-options-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-pickup-options-block {
	order: 19;
}

/* order: 25 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-shipping-methods-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-shipping-methods-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-shipping-methods-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-methods-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-methods-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-methods-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-methods-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-methods-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-methods-block {
	order: 25;
}

/* order: 30 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-additional-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-additional-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-additional-information-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-order-note-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-order-note-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-order-note-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-additional-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-additional-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-additional-information-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-order-note-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-order-note-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-order-note-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-additional-information-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-additional-information-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-additional-information-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-order-note-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-order-note-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-order-note-block {
	order: 30;
}

/* order: 40 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-shipping-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-shipping-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-shipping-address-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-billing-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-billing-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-billing-address-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-address-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-billing-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-billing-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-billing-address-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-shipping-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-shipping-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-shipping-address-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-billing-address-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-billing-address-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-billing-address-block {
	order: 40;
}

/* order: 48 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-payment-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-payment-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-payment-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-payment-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-payment-block {
	order: 48;
}

/* order: 52 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-terms-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-terms-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-terms-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-terms-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-terms-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-terms-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-terms-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-terms-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-terms-block {
	order: 52;
}

/* order: 55 */
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > [data-block-name="woocommerce/checkout-actions-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > *:has([data-block-name="woocommerce/checkout-actions-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block__inner-wrapper > .wp-block-woocommerce-checkout-actions-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-actions-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-actions-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block .wc-block-checkout__main form.wc-block-checkout__form > .wp-block-woocommerce-checkout-actions-block,
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > [data-block-name="woocommerce/checkout-actions-block"],
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > *:has([data-block-name="woocommerce/checkout-actions-block"]),
body.outfire-checkout-versenden-layout .wp-block-woocommerce-checkout-fields-block form.wc-block-checkout__form > .wp-block-woocommerce-checkout-actions-block {
	order: 55;
}

/*
 * WooCommerce: hide "View cart" / "Warenkorb anzeigen" after add to cart.
 * Block product (Interactivity API) wraps the link in span[data-wp-bind--hidden]; classic notices use .added_to_cart.
 */
a.added_to_cart.wc_forward,
a.added_to_cart {
	display: none !important;
}

span[data-wp-bind--hidden]:has(> a.added_to_cart) {
	display: none !important;
}

/* Metalldesign — Query Loop: gallery slider / featured image block */
/* Grid/flex: avoid iOS horizontal overflow (min-width:auto on grid children) */
.wp-block-post-template.is-layout-grid .wp-block-post,
.wp-block-post-template.is-layout-grid > li {
	min-width: 0;
}

/*
 * Metalldesign archive/page: masonry packing so the gap after each media block
 * matches the designed block margin (~100px = #1), without empty grid-row holes.
 */
body.metalldesign .wp-block-post-template.is-layout-grid.columns-2 > .wp-block-post,
body.metalldesign .wp-block-post-template.is-layout-grid.columns-2 > li {
	display: flex;
	flex-direction: column;
	align-self: start;
	box-sizing: border-box;
}

body.metalldesign .wp-block-post-template.is-layout-grid.columns-2.is-outfire-masonry {
	display: block;
}

body.metalldesign .wp-block-post-template.is-layout-grid.columns-2.is-outfire-masonry > .wp-block-post,
body.metalldesign .wp-block-post-template.is-layout-grid.columns-2.is-outfire-masonry > li {
	margin: 0;
}

@supports (grid-template-rows: masonry) {
	body.metalldesign .wp-block-post-template.is-layout-grid.columns-2 {
		grid-template-rows: masonry;
		align-items: start;
		/* Prefer block margins (#1) over an extra row-gap under packed items. */
		row-gap: 0;
	}
}

@supports (display: grid-lanes) {
	body.metalldesign .wp-block-post-template.is-layout-grid.columns-2 {
		display: grid-lanes;
		row-gap: 0;
	}
}

/* Block wrapper: spacing (margin/padding) from the editor is applied here — do not reset margin */
.wp-block-outfire-metalldesign-media {
	max-width: 100%;
	min-width: 0;
}

.outfire-metalldesign-media {
	margin: 0;
	max-width: 100%;
	min-width: 0;
}

.outfire-metalldesign-media__slide-visual,
.outfire-metalldesign-media--single .outfire-metalldesign-media__slide-visual,
.outfire-metalldesign-media--featured {
	width: 100%;
	max-width: 100%;
	aspect-ratio: 3/2;
	overflow: hidden;
}

.outfire-metalldesign-media--featured img.outfire-metalldesign-media__img {
	width: 100%;
	height: 100%;
}

img.outfire-metalldesign-media__img {
	width: 100%;
	height: 100%;
	display: block;
	vertical-align: middle;
	object-fit: cover;
	object-position: center;
}

.outfire-metalldesign-media--slider-wrap {
	display: flex;
	flex-direction: column;
	gap: 0;
	max-width: 100%;
	min-width: 0;
}

.outfire-metalldesign-media--slider {
	position: relative;
	overflow: hidden;
}

.outfire-metalldesign-media--slider .swiper-slide {
	display: flex;
	align-items: flex-start;
	justify-content: center;
	height: auto;
}

.outfire-metalldesign-media__slide-inner {
    position: relative;
	width: 100%;
	display: flex;
	flex-direction: column;
	gap: 0.5rem;
}

.outfire-metalldesign-media__description {
	box-sizing: border-box;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	max-width: 100%;
	font-size: 0.9375rem;
	line-height: 1.45;
	color: #92644e;
	background: #ffffffc4;
	text-align: center;
	padding: 10px 12px;
	overflow-wrap: anywhere;
	word-break: break-word;
}

.outfire-metalldesign-media__description p {
	margin: 0 0 0.5em;
}

.outfire-metalldesign-media__description p:last-child {
	margin-bottom: 0;
}

.outfire-metalldesign-media--single .outfire-metalldesign-media__description {
	margin-top: 0.5rem;
}

.outfire-metalldesign-media--slider .outfire-metalldesign-media__nav {
	color: #92644e;
	background: #fff;
	border-radius: 50%;
	border: none;
	width: 40px;
	height: 40px;
	padding: 0;
}

.outfire-metalldesign-media--slider .outfire-metalldesign-media__nav::after {
	font-size: 1.25rem;
}

/* Pagination: one dot per slide, below the image (outside .swiper to avoid overflow clip) */
.outfire-metalldesign-media--slider-wrap .outfire-metalldesign-media__pagination.swiper-pagination {
	position: relative;
	left: auto;
	top: auto;
	bottom: auto;
	width: 100%;
	margin: 0.65rem 0 0;
	padding: 0.35rem 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 0.45rem;
	min-height: 1.25rem;
	box-sizing: border-box;
}

.outfire-metalldesign-media--slider-wrap .swiper-pagination-bullet {
	width: 10px;
	height: 10px;
	margin: 0 !important;
	opacity: 1;
	background: #c9bfb8;
	border-radius: 50%;
}

.outfire-metalldesign-media--slider-wrap .swiper-pagination-bullet-active {
	background: #92644e;
	transform: scale(1.05);
}

.outfire-metalldesign-media-editor {
	border: 1px dashed #c3c4c7;
	padding: 0.75rem 1rem;
	background: #f6f7f7;
	font-size: 0.875rem;
}

.outfire-metalldesign-media-editor__label {
	margin: 0 0 0.35em;
}

.outfire-metalldesign-media-editor__meta {
	margin: 0;
	color: #646970;
	font-size: 0.8125rem;
}