/* Frontenmeister profile — v0.3.33 */
.tc-site-profile--frontenmeister {
    --tc-fm-navy: #111632;
    --tc-fm-ink: #15151a;
    --tc-fm-muted: #5f6068;
    --tc-fm-line: #e7e7ea;
    --tc-fm-gold: #b9894f;
}

/* ---------- Header: white, readable logo/navigation ---------- */
.tc-fm-header {
    background: #fff;
    color: var(--tc-fm-ink);
    border-top: 0;
    border-bottom: 1px solid var(--tc-fm-line);
    box-shadow: none;
}

.tc-fm-header .tc-fm-header__inner {
    width: min(calc(100% - 2.5rem), 1880px);
    max-width: 1880px;
    min-height: 84px;
    grid-template-columns: minmax(160px, auto) minmax(0, 1fr) auto;
    gap: clamp(1.3rem, 2.6vw, 3.5rem);
}

.tc-fm-branding {
    min-width: 0;
}

.tc-fm-branding .custom-logo-link {
    display: inline-flex;
    align-items: center;
}

.tc-fm-branding .custom-logo {
    display: block;
    width: auto;
    max-width: 150px;
    max-height: 72px;
    object-fit: contain;
}

.tc-fm-nav { justify-self: center; }
.tc-fm-menu { gap: clamp(.75rem, 1.35vw, 1.5rem); }
.tc-fm-menu > li > a {
    min-height: 46px;
    border-bottom: 0;
    color: #181824;
    font-size: .78rem;
    font-weight: 650;
}
.tc-fm-menu > li.current-menu-item > a,
.tc-fm-menu > li.current-menu-ancestor > a,
.tc-fm-menu > li > a:hover,
.tc-fm-menu > li > a:focus-visible { color: var(--tc-fm-navy); }

.tc-fm-menu .sub-menu {
    border-color: var(--tc-fm-line);
    background: #fff;
    box-shadow: 0 14px 32px rgb(17 22 50 / 10%);
}
.tc-fm-menu .sub-menu a { color: #24242d; }
.tc-fm-menu .sub-menu a:hover { background: #f7f7f9; }

.tc-fm-tools .tc-commerce-tool { color: var(--tc-fm-ink); }
.tc-fm-tools .tc-commerce-tool:hover { color: var(--tc-fm-navy); }
.tc-fm-tools .tc-cart-count {
    background: var(--tc-fm-gold);
    color: #fff;
}
.tc-fm-tools .tc-cart-count.is-empty { display: none; }
.tc-fm-nav-toggle {
    border-color: #dedee3;
    color: var(--tc-fm-navy);
}

@media (max-width: 1050px) {
    .tc-fm-header .tc-fm-header__inner {
        width: calc(100% - 2rem);
        grid-template-columns: 1fr auto auto;
        gap: .8rem;
    }
    .tc-fm-nav { justify-self: stretch; }
    .tc-fm-menu > li > a { border-bottom: 1px solid var(--tc-fm-line); }
    .tc-fm-menu .sub-menu { box-shadow: none; }
}

@media (max-width: 620px) {
    .tc-fm-header .tc-fm-header__inner {
        width: calc(100% - 1.4rem);
        min-height: 70px;
    }
    .tc-fm-branding .custom-logo { max-width: 112px; max-height: 56px; }
}

/* ---------- Existing German homepage: remove the old image-card frame ----------
   Frontenmeister still renders its current Elementor homepage in 0.3.26. Keep
   its content intact, but remove the box/frame that was already removed on Cuisina9. */
body.tc-site-profile--frontenmeister.home .elementor-widget-image .elementor-widget-container,
body.tc-site-profile--frontenmeister.home .elementor-widget-image-box .elementor-widget-container,
body.tc-site-profile--frontenmeister.home .elementor-image-box-img,
body.tc-site-profile--frontenmeister.home .elementor-image-box-img > a,
body.tc-site-profile--frontenmeister.home .elementor-image-box-img img,
body.tc-site-profile--frontenmeister.home .elementor-widget-image img {
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
}

/* ---------- Footer: Frontenmeister navy ---------- */
.tc-footer--frontenmeister {
    margin-top: 0;
    border-top: 0;
    background: var(--tc-fm-navy);
    color: #fff;
}
.tc-footer--frontenmeister .tc-fm-footer__grid {
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    gap: clamp(2rem, 4vw, 4.5rem);
    padding-block: 2.4rem 2.2rem;
}
.tc-footer--frontenmeister .tc-fm-footer__column h2 {
    margin: 0 0 .8rem;
    color: #fff;
    font-size: .8rem;
    font-weight: 750;
    line-height: 1.2;
    text-transform: uppercase;
}
.tc-footer--frontenmeister .tc-fm-footer__column p {
    margin: 0;
    color: rgb(255 255 255 / 76%);
    font-size: .8rem;
    line-height: 1.55;
}
.tc-footer--frontenmeister .tc-fm-footer__column strong {
    color: #fff;
}
.tc-footer--frontenmeister .tc-fm-footer__column a {
    color: rgb(255 255 255 / 88%);
    text-decoration: none;
}
.tc-footer--frontenmeister .tc-fm-footer__column a:hover,
.tc-footer--frontenmeister .tc-fm-footer__column a:focus-visible {
    color: #fff;
    text-decoration: underline;
    text-underline-offset: 2px;
}
.tc-footer--frontenmeister .tc-footer-list {
    display: grid;
    gap: .28rem;
    margin: 0;
    padding: 0;
    list-style: none;
}
.tc-footer--frontenmeister .tc-footer-list a {
    display: inline-block;
    font-size: .8rem;
    line-height: 1.45;
}
.tc-footer--frontenmeister .tc-fm-footer__bottom-wrap {
    border-top: 1px solid rgb(255 255 255 / 14%);
    background: #0d1128;
}
.tc-footer--frontenmeister .tc-fm-footer__bottom { padding-block: .9rem; }
.tc-footer--frontenmeister .tc-fm-footer__bottom p {
    margin: 0;
    color: rgb(255 255 255 / 66%);
    font-size: .76rem;
}

@media (max-width: 900px) {
    .tc-footer--frontenmeister .tc-fm-footer__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 600px) {
    .tc-footer--frontenmeister .tc-fm-footer__grid { grid-template-columns: 1fr; gap: 1.5rem; }
}

/* ---------- Cart: centered, wide enough for configurator metadata ---------- */
body.tc-site-profile--frontenmeister.woocommerce-cart .tc-prose {
    width: min(calc(100% - 3rem), 1280px);
    margin-inline: auto;
    padding-block: clamp(2rem, 4vw, 3.6rem) 4.5rem;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .tc-prose > * {
    width: 100%;
    max-width: none;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .tc-page-title {
    margin: 0 0 clamp(2rem, 4vw, 3rem);
    color: var(--tc-fm-navy);
    font-size: clamp(1.9rem, 2.7vw, 2.5rem);
    font-weight: 650;
    text-align: center;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce { display: flow-root; }
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form {
    float: left;
    width: 69%;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals {
    float: right;
    width: 28%;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals .cart_totals {
    float: none;
    width: 100%;
    padding: 1.45rem 1.5rem;
    border: 1px solid #dedee3;
    border-radius: 2px;
    background: #fafafa;
    box-shadow: none;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals .cart_totals > h2 {
    margin: 0 0 1rem;
    color: var(--tc-fm-navy);
    font-size: 1.2rem;
    font-weight: 750;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.shop_table {
    width: 100%;
    margin: 0;
    border: 0;
    border-collapse: collapse;
    table-layout: auto;
    background: #fff;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.shop_table th,
body.tc-site-profile--frontenmeister.woocommerce-cart table.shop_table td {
    padding: .9rem .65rem;
    border: 0;
    border-bottom: 1px solid #e6e6e9;
    vertical-align: middle;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart th.product-name,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.product-name {
    width: auto;
    min-width: 330px;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart th.product-price,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.product-price,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart th.product-quantity,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.product-quantity,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart th.product-subtotal,
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.product-subtotal {
    width: 92px;
    white-space: nowrap;
}
body.tc-site-profile--frontenmeister.woocommerce-cart td.product-thumbnail { width: 86px; }
body.tc-site-profile--frontenmeister.woocommerce-cart td.product-thumbnail img {
    width: 70px;
    height: 70px;
    object-fit: cover;
}
body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation {
    display: grid;
    grid-template-columns: minmax(120px, max-content) minmax(190px, 1fr);
    gap: .16rem .5rem;
    max-width: 100%;
    margin: .65rem 0 0;
    font-size: .8rem;
    line-height: 1.4;
}
body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation dt,
body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation dd,
body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation dd p {
    min-width: 0;
    margin: 0;
    padding: 0;
    float: none;
    clear: none;
    word-break: normal;
    overflow-wrap: normal;
    hyphens: none;
}
body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation dt {
    color: var(--tc-fm-ink);
    font-weight: 700;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .quantity .qty {
    min-height: 40px;
    border: 1px solid #d8d8dd;
    border-radius: 2px;
    background: #fff;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.actions { padding: .9rem 0; }
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.actions .coupon {
    display: flex;
    gap: .45rem;
}
body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.actions .coupon .input-text {
    min-height: 40px;
    border: 1px solid #d8d8dd;
    border-radius: 2px;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce a.button,
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce button.button,
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce input.button {
    border-color: var(--tc-fm-navy) !important;
    border-radius: 2px !important;
    background: var(--tc-fm-navy) !important;
    color: #fff !important;
    box-shadow: none !important;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce a.button:hover,
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce button.button:hover,
body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce input.button:hover {
    background: #202a58 !important;
    border-color: #202a58 !important;
}
body.tc-site-profile--frontenmeister.woocommerce-cart .cart_totals table.shop_table th { width: 38%; }
body.tc-site-profile--frontenmeister.woocommerce-cart .cart_totals table.shop_table td { text-align: right; }
body.tc-site-profile--frontenmeister.woocommerce-cart .wc-proceed-to-checkout { padding: 1.2rem 0 0; }
body.tc-site-profile--frontenmeister.woocommerce-cart .wc-proceed-to-checkout a.checkout-button {
    display: flex;
    width: 100%;
    min-height: 50px;
    align-items: center;
    justify-content: center;
    margin: 0;
    padding: .8rem 1rem;
    font-size: 1rem;
}

@media (max-width: 1099px) {
    body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form,
    body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals {
        float: none;
        width: 100%;
    }
    body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals { margin-top: 2rem; }
    body.tc-site-profile--frontenmeister.woocommerce-cart .cart-collaterals .cart_totals {
        max-width: 520px;
        margin-left: auto;
    }
    body.tc-site-profile--frontenmeister.woocommerce-cart table.cart th.product-name,
    body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.product-name { min-width: 235px; }
}

@media (max-width: 760px) {
    body.tc-site-profile--frontenmeister.woocommerce-cart .tc-prose { width: calc(100% - 1.25rem); }
    body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive thead { display: none; }
    body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item {
        display: grid;
        grid-template-columns: 28px 70px minmax(0, 1fr);
        gap: .4rem .6rem;
        padding-block: .8rem;
        border-bottom: 1px solid #e6e6e9;
    }
    body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td {
        display: block;
        width: auto;
        min-width: 0;
        padding: .3rem 0;
        border: 0;
        text-align: left !important;
    }
    body.tc-site-profile--frontenmeister.woocommerce-cart .woocommerce-cart-form table.shop_table_responsive tr.cart_item td::before { display: none; }
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-remove { grid-column: 1; grid-row: 1 / span 2; }
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-thumbnail { grid-column: 2; grid-row: 1 / span 2; }
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-name,
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-price,
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-quantity,
    body.tc-site-profile--frontenmeister.woocommerce-cart td.product-subtotal { grid-column: 3; }
    body.tc-site-profile--frontenmeister.woocommerce-cart dl.variation { grid-template-columns: 1fr; }
    body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.actions .coupon { width: 100%; }
    body.tc-site-profile--frontenmeister.woocommerce-cart table.cart td.actions .coupon .input-text { width: 100%; }
}


/* --------------------------------------------------------------------------
   Checkout — Frontenmeister 0.3.27
   Cleaner two-column checkout: customer data on the left, sticky order
   summary/payment on the right. The cart keeps its dedicated 0.3.26 layout.
   -------------------------------------------------------------------------- */
body.tc-site-profile--frontenmeister.woocommerce-checkout .tc-prose {
    width: min(calc(100% - 3rem), 1280px);
    margin-inline: auto;
    padding-block: clamp(2rem, 4vw, 3.5rem) 4.5rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .tc-prose > * {
    width: 100%;
    max-width: none;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .tc-page-title {
    margin: 0 0 clamp(1.8rem, 3vw, 2.6rem);
    color: var(--tc-fm-navy);
    font-size: clamp(1.9rem, 2.7vw, 2.5rem);
    font-weight: 650;
    line-height: 1.08;
    text-align: center;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-notices-wrapper,
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-form-login-toggle,
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-form-coupon-toggle {
    width: 100%;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-info {
    margin: 0 0 1rem;
    padding: 1rem 1.15rem 1rem 3rem;
    border-top: 2px solid #b67d32;
    background: #faf9f7;
    color: var(--tc-fm-ink);
}
body.tc-site-profile--frontenmeister.woocommerce-checkout form.checkout.woocommerce-checkout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(380px, .92fr);
    grid-template-areas:
        "customer review-title"
        "customer review";
    column-gap: clamp(2rem, 4vw, 4rem);
    align-items: start;
    margin-top: 2.2rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details {
    grid-area: customer;
    width: 100%;
    margin: 0;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details::before,
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details::after {
    display: none;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details .col-1,
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details .col-2 {
    float: none;
    width: 100%;
    margin: 0 0 1.7rem;
    padding: 0;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details h3,
body.tc-site-profile--frontenmeister.woocommerce-checkout #ship-to-different-address {
    margin: 0 0 1.1rem;
    color: var(--tc-fm-navy);
    font-size: 1.25rem;
    font-weight: 750;
    line-height: 1.25;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-billing-fields__field-wrapper,
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-shipping-fields__field-wrapper,
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-additional-fields__field-wrapper {
    display: flow-root;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .form-row {
    margin-bottom: .9rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .form-row label {
    margin-bottom: .35rem;
    color: var(--tc-fm-ink);
    font-size: .9rem;
    font-weight: 600;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .input-text,
body.tc-site-profile--frontenmeister.woocommerce-checkout select,
body.tc-site-profile--frontenmeister.woocommerce-checkout .select2-container .select2-selection--single {
    min-height: 44px;
    border: 1px solid #cfcfd5;
    border-radius: 2px;
    background: #fff;
    box-shadow: none;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout textarea.input-text {
    min-height: 110px;
    padding: .75rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review_heading {
    grid-area: review-title;
    width: 100%;
    margin: 0 0 .8rem;
    padding: 0;
    color: var(--tc-fm-navy);
    font-size: 1.25rem;
    font-weight: 750;
    line-height: 1.25;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review {
    grid-area: review;
    position: sticky;
    top: 92px;
    width: 100%;
    margin: 0;
    padding: 1.25rem 1.35rem;
    border: 1px solid #dedee3;
    border-radius: 2px;
    background: #fafafa;
    box-shadow: none;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table {
    width: 100%;
    margin: 0 0 1rem;
    border: 0;
    border-collapse: collapse;
    background: transparent;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table th,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table td {
    padding: .72rem .35rem;
    border: 0;
    border-bottom: 1px solid #e0e0e4;
    vertical-align: top;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table th:first-child,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table td:first-child {
    padding-left: 0;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table th:last-child,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table td:last-child {
    padding-right: 0;
    text-align: right;
    white-space: nowrap;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review .product-name {
    min-width: 0;
    line-height: 1.4;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation {
    display: grid;
    grid-template-columns: minmax(100px, max-content) minmax(0, 1fr);
    gap: .12rem .45rem;
    margin: .55rem 0 0;
    font-size: .76rem;
    line-height: 1.35;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dt,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dd,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dd p {
    float: none;
    clear: none;
    min-width: 0;
    margin: 0;
    padding: 0;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment {
    margin-top: .35rem;
    border: 0;
    border-radius: 0;
    background: transparent;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment ul.payment_methods {
    padding: .9rem 0;
    border-bottom: 1px solid #e0e0e4;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment div.form-row {
    margin: 0;
    padding: 1rem 0 0;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment .payment_box {
    margin: .65rem 0;
    padding: .85rem 1rem;
    background: #f1f1f4;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment .payment_box::before {
    border-bottom-color: #f1f1f4;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout .woocommerce-terms-and-conditions-wrapper {
    font-size: .86rem;
    line-height: 1.45;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #place_order {
    float: none;
    width: 100%;
    min-height: 52px;
    margin-top: .9rem;
    border-color: var(--tc-fm-navy) !important;
    border-radius: 2px !important;
    background: var(--tc-fm-navy) !important;
    color: #fff !important;
    font-size: 1rem;
    font-weight: 750;
    box-shadow: none !important;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #place_order:hover {
    border-color: #202a58 !important;
    background: #202a58 !important;
}

@media (max-width: 1020px) {
    body.tc-site-profile--frontenmeister.woocommerce-checkout form.checkout.woocommerce-checkout {
        grid-template-columns: 1fr;
        grid-template-areas:
            "customer"
            "review-title"
            "review";
        gap: 0;
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review_heading {
        margin-top: .8rem;
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review {
        position: static;
    }
}

@media (max-width: 620px) {
    body.tc-site-profile--frontenmeister.woocommerce-checkout .tc-prose {
        width: calc(100% - 1.25rem);
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout .form-row-first,
    body.tc-site-profile--frontenmeister.woocommerce-checkout .form-row-last {
        float: none;
        width: 100%;
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review {
        padding: 1rem;
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation {
        grid-template-columns: 1fr;
    }
}

/* v0.3.33 — remove every inherited/baked CSS effect around the header logo. */
.tc-fm-branding,
.tc-fm-branding .custom-logo-link,
.tc-fm-branding .custom-logo,
.tc-fm-branding img {
    border: 0 !important;
    outline: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    filter: none !important;
    text-shadow: none !important;
}
.tc-fm-branding::before,
.tc-fm-branding::after,
.tc-fm-branding .custom-logo-link::before,
.tc-fm-branding .custom-logo-link::after {
    content: none !important;
    display: none !important;
}

/* --------------------------------------------------------------------------
   0.3.33 — Frontenmeister corrections only (do NOT clone the Cuisina9 home).
   -------------------------------------------------------------------------- */

/* Compact branded header. Fixed dimensions are intentionally strong so legacy
   Elementor/Customify rules cannot blow up the logo/icons on the homepage. */
.tc-fm-header { border-top: 3px solid #303236; }
.tc-fm-header .tc-fm-header__inner {
    width: min(100% - 3.5rem, 1880px);
    max-width: 1880px;
    min-height: 86px;
    grid-template-columns: minmax(245px, auto) minmax(0, 1fr) auto;
    gap: clamp(1.5rem, 2.6vw, 3.75rem);
}
.tc-fm-brand { display:inline-flex; align-items:center; gap:.75rem; min-width:0; color:#15151a; text-decoration:none; }
.tc-fm-brand__mark { display:inline-flex !important; width:66px !important; max-width:66px !important; height:62px !important; flex:0 0 66px !important; align-items:center; justify-content:center; overflow:hidden; }
.tc-fm-brand__logo { display:block !important; width:66px !important; max-width:66px !important; height:auto !important; max-height:62px !important; object-fit:contain !important; border:0!important; box-shadow:none!important; filter:none!important; background:transparent!important; }
.tc-fm-brand__copy { display:grid; gap:.16rem; line-height:1; }
.tc-fm-brand__name { color:#111632; font-size:1.05rem; font-weight:750; letter-spacing:.01em; white-space:nowrap; }
.tc-fm-brand__group { color:#6e6873; font-size:.58rem; font-weight:500; letter-spacing:.035em; white-space:nowrap; }
.tc-fm-nav { justify-self:center; }
.tc-fm-menu > li > a { min-height:48px; font-size:.76rem; font-weight:600; }
.tc-fm-tools { display:flex !important; align-items:center; justify-self:end; gap:.8rem; white-space:nowrap; }
.tc-fm-tool { position:relative; display:inline-flex !important; min-height:40px; align-items:center; justify-content:center; gap:.35rem; color:#191818; font-size:.72rem; font-weight:560; letter-spacing:.02em; text-decoration:none; }
.tc-fm-tool svg { width:19px !important; max-width:19px !important; height:19px !important; max-height:19px !important; flex:0 0 19px; fill:none; stroke:currentColor; stroke-linecap:round; stroke-linejoin:round; stroke-width:1.65; }
.tc-fm-tool--account { width:38px; }
.tc-fm-tool--cart { padding-inline:.15rem; }
.tc-fm-tool--cart .tc-cart-count { position:absolute; top:0; right:-7px; min-width:16px; min-height:16px; padding:0 4px; background:var(--tc-fm-gold); color:#fff; font-size:.55rem; }
.tc-fm-tool--cart .tc-cart-count.is-empty { display:none; }

@media (max-width:1050px) {
    .tc-fm-header .tc-fm-header__inner { width:calc(100% - 2rem); grid-template-columns:1fr auto auto; gap:.8rem; }
    .tc-fm-brand__copy { display:none; }
    .tc-fm-brand__mark { width:60px !important; max-width:60px !important; height:54px !important; flex-basis:60px !important; }
    .tc-fm-brand__logo { width:60px !important; max-width:60px !important; max-height:54px !important; }
    .tc-fm-tool__label { display:none; }
}
@media (max-width:620px) {
    .tc-fm-header .tc-fm-header__inner { width:calc(100% - 1.4rem); min-height:70px; }
    .tc-fm-brand__mark { width:54px !important; max-width:54px !important; height:48px !important; flex-basis:54px !important; }
    .tc-fm-brand__logo { width:54px !important; max-width:54px !important; max-height:48px !important; }
}

/* Checkout: stable 2-column layout. Product configuration is deliberately
   stacked label/value so long German/French configurator values stay readable. */
body.tc-site-profile--frontenmeister.woocommerce-checkout .tc-prose {
    width: min(calc(100% - 3rem), 1320px) !important;
    margin-inline: auto;
    padding-block: clamp(2rem, 4vw, 3.5rem) 4.5rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout form.checkout.woocommerce-checkout {
    display:grid !important;
    grid-template-columns:minmax(0,1.35fr) minmax(440px,.9fr) !important;
    grid-template-areas:"customer review-title" "customer review" !important;
    gap:.7rem clamp(2.5rem,5vw,5rem) !important;
    align-items:start;
    margin-top:2.2rem;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #customer_details { grid-area:customer; min-width:0; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review_heading { grid-area:review-title; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review {
    grid-area:review;
    position:static !important;
    width:100% !important;
    min-width:0 !important;
    padding:1.35rem 1.45rem !important;
    border:1px solid #dedee3;
    background:#fbfbfb;
    box-shadow:none;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table { width:100% !important; table-layout:auto !important; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table th.product-total,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table td.product-total {
    width:105px !important;
    min-width:105px !important;
    padding-left:1rem !important;
    text-align:right !important;
    white-space:nowrap !important;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table th.product-name,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review table.shop_table td.product-name {
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation {
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:.04rem !important;
    width:100% !important;
    max-width:none !important;
    margin:.65rem 0 0 !important;
    padding:0 !important;
    font-size:.78rem !important;
    line-height:1.35 !important;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dt,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dd,
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dd p {
    display:block !important;
    float:none !important;
    clear:none !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    white-space:normal !important;
    word-break:normal !important;
    overflow-wrap:anywhere !important;
    hyphens:auto;
    text-align:left !important;
}
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dt { margin-top:.35rem !important; font-weight:700 !important; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review dl.variation dd { margin-bottom:.2rem !important; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #payment { margin-top:1rem; }
body.tc-site-profile--frontenmeister.woocommerce-checkout #place_order { width:100%; background:var(--tc-fm-navy)!important; color:#fff!important; }

@media (max-width:1080px) {
    body.tc-site-profile--frontenmeister.woocommerce-checkout form.checkout.woocommerce-checkout {
        grid-template-columns:1fr !important;
        grid-template-areas:"customer" "review-title" "review" !important;
        gap:1.5rem !important;
    }
    body.tc-site-profile--frontenmeister.woocommerce-checkout #order_review { max-width:760px; }
}
