/**
 * Expera - Label Tech Nordic
 * Custom styling for Label Tech Nordic
 */


/**
* WooCommerce Product Archives and single
*/
/** Move ctaegory descpiption order */
.exp-woo-archive > div > div {
	display: flex;
    flex-wrap: wrap;
  	justify-content: space-between;
}

.exp-woo-archive ul.products.columns-4 {
    width: 100%;
}

.exp-woo-archive .term-description {
    order: 10;
}

.exp-woo-archive .woocommerce-notices-wrapper {
    display:block;
    width:100%;
}

/** Single Product **/
:root {
    --lt-navy: #183c5b;
    --lt-navy-dark: #082947;
    --lt-teal: #35c6bf;
    --lt-teal-dark: #22aaa3;
    --lt-border: #dfe8f1;
    --lt-light: #f5fbfc;
    --lt-text: #0d2b45;
    --lt-muted: #607083;
}

/* Product page wrapper */
.single-product .site-main,
.single-product main {
    max-width: 1180px;
    margin: 0 auto;
    padding: 70px 24px;
}

/* Product top layout */
.single-product div.product {
    display: grid;
    grid-template-columns: minmax(0, 1.05fr) minmax(360px, 0.95fr);
    gap: 70px;
    align-items: start;
}

/* Product gallery */
.single-product div.product div.images {
    width: 100% !important;
    margin-bottom: 10px;
}

.single-product div.product div.images img {
    border-radius: 14px;
}

.single-product .woocommerce-product-gallery__image {
    position: relative;
    overflow: hidden !important;
    border-radius: 18px;
    background: #fff;
    box-sizing: border-box;
}

.single-product .woocommerce-product-gallery__wrapper img {
    border: 1px solid #dfe8f1;
    border-radius: 18px;
    width:calc(100% - 1px) !important;
}

.single-product .woocommerce-product-gallery__image::after {
    content: "";
    position: absolute;
    inset: 0;
    border: 1px solid #dfe8f1;
    border-radius: inherit;
    pointer-events: none;
    z-index: 20;
    box-sizing: border-box;
}

.single-product .woocommerce-product-gallery__image a {
    display: flex !important;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
}

.single-product .woocommerce-product-gallery__image img {
    display: block;
    max-width: 100%;
    max-height: 520px;
    width: auto;
    height: auto;
    object-fit: contain;
}

.single-product div.product div.images .flex-control-thumbs {
    display: flex;
    gap: 16px;
    margin-top: 14px !important;
}

.single-product div.product div.images .flex-control-thumbs li {
    width: 82px;
    border: 1px solid var(--lt-border);
    border-radius: 10px;
    overflow: hidden;
    background: #fff;
}

.single-product div.product div.images .flex-control-thumbs li img.flex-active {
    border: 2px solid var(--lt-teal);
    border-radius:10px;
}

/* Sale badge */
.single-product span.onsale,
.woocommerce span.onsale {
    background: #746ff2;
    color: #fff;
    border-radius: 8px;
    padding: 8px 12px;
    min-height: auto;
    min-width: auto;
    line-height: 1;
    font-size: 13px;
    font-weight: 700;
}

/* Summary */
.single-product div.product .summary {
    width: 100% !important;
    margin-bottom: 0;
}

.single-product .product_title {
    color: var(--lt-text);
    font-size: clamp(34px, 4vw, 48px);
    line-height: 1.05;
    margin-bottom: 18px;
    font-weight: 800;
}

/* Price */
.single-product .summary p.price,
.single-product .summary span.price {
    color: var(--lt-teal);
    font-size: 34px;
    line-height: 1.1;
    font-weight: 800;
    margin-bottom: 18px;
}

.single-product .summary p.price del {
    color: #96a3af;
    font-size: 24px;
    opacity: 1;
    margin-right: 8px;
    font-weight: 500;
}

.single-product .summary p.price ins {
    text-decoration: none;
}

.single-product .summary p.price small.woocommerce-price-suffix {
    width: 100%;
    display: block;
    font-size: 16px;
    font-weight: 400;
    margin-top:6px;
    color:#96a3af;
}

/* Short description */
body .single-product .woocommerce-product-details__short-description {
    color: var(--lt-text);
    font-size: 16px;
    line-height: 1.7;
    font-weight: 400 !important;
    margin-top: 20px;
    margin-bottom: 26px;
}

/* Quantity + add to cart */
.single-product form.cart {
    display: flex;
    gap: 14px;
    align-items: center;
  flex-wrap: wrap;
}

.single-product .quantity input.qty {
    height: 48px;
    width: 76px;
    border: 1px solid var(--lt-border);
    border-radius: 8px;
    color: var(--lt-text);
    font-weight: 700;
    padding: 0;
    margin: 0;
}

.single-product button.single_add_to_cart_button {
    height: 48px;
    min-width: 190px;
    border-radius: 8px;
    background: var(--lt-teal) !important;
    color: #fff !important;
    font-weight: 800;
    transition: 0.2s ease;
}

.single-product button.single_add_to_cart_button:hover {
    background: var(--lt-teal-dark) !important;
    transform: translateY(-1px);
}

/* Meta */
.single-product .product_meta {
    border-top: 1px solid var(--lt-border);
    padding-top: 18px;
    color: var(--lt-muted);
    font-size: 14px;
    line-height: 1.8;
}

.single-product .product_meta a {
    color: var(--lt-teal-dark);
    font-weight: 700;
}

/* Trust strip under buy area */
.single-product .summary::after {
    content: "Hurtig levering\A Support inkluderet\A Gratis rådgivning";
    white-space: pre;
    display: grid;
    grid-template-columns: 1fr;
    gap: 8px;
    margin-top: 24px;
    padding: 18px 20px;
    border: 1px solid var(--lt-border);
    border-radius: 12px;
    background: var(--lt-light);
    color: var(--lt-text);
    font-size: 14px;
    font-weight: 700;
    line-height: 1.7;
}

/* Tabs */
.single-product .woocommerce-tabs {
    grid-column: 1 / -1;
    margin-top: 55px;
    border: 1px solid var(--lt-border);
    border-radius: 14px;
    overflow: hidden;
    background: #fff;
}

.single-product .woocommerce-tabs ul.tabs {
    margin: 0 !important;
    padding: 0 !important;
    display: flex;
    background: #fff;
    border-bottom: 1px solid var(--lt-border);
}

.single-product .woocommerce-tabs ul.tabs::before,
.single-product .woocommerce-tabs ul.tabs li::before,
.single-product .woocommerce-tabs ul.tabs li::after {
    display: none !important;
}

.single-product .woocommerce-tabs ul.tabs li {
    border: 0 !important;
    background: transparent !important;
    border-radius: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
}

.single-product .woocommerce-tabs ul.tabs li a {
    padding: 18px 28px !important;
    color: var(--lt-text);
    font-weight: 800;
}

.single-product .woocommerce-tabs ul.tabs li.active a {
    color: var(--lt-teal-dark);
    border-bottom: 3px solid var(--lt-teal);
}

.single-product .woocommerce-tabs .panel {
    padding: 34px 40px !important;
}

.single-product .woocommerce-tabs .panel h2 {
    color: var(--lt-text);
    font-size: 30px;
    margin-bottom: 20px;
}

.single-product .woocommerce-tabs .panel h3,
.single-product .woocommerce-tabs .panel h4 {
    color: var(--lt-text);
    margin-top: 26px;
}

/* Related products */
.single-product .related.products {
    grid-column: 1 / -1;
    margin-top: 50px;
}

.single-product .related.products > h2 {
    color: var(--lt-text);
    font-size: 34px;
    font-weight: 800;
    margin-bottom: 24px;
}

.woocommerce ul.products li.product {
    border: 1px solid var(--lt-border);
    border-radius: 12px;
    background: #fff;
    padding: 22px;
    text-align: center;
    transition: 0.2s ease;
}

.woocommerce ul.products li.product:hover {
    box-shadow: 0 14px 35px rgba(8, 41, 71, 0.1);
    transform: translateY(-3px);
}

.woocommerce ul.products li.product img {
    border-radius:12px 12px 0 0;
}

.woocommerce ul.products li.product .woocommerce-loop-product__title {
    color: var(--lt-text);
    font-size: 17px;
    line-height: 1.35;
    font-weight: 800;
}

.woocommerce ul.products li.product .price {
    color: var(--lt-teal-dark);
    font-weight: 800;
}

.woocommerce ul.products li.product .button {
    border-radius: 7px;
    background: var(--lt-teal);
    color: #fff;
    font-weight: 800;
    padding: 12px 18px;
}

.woocommerce ul.products li.product .button:hover {
    background: var(--lt-teal-dark);
}

/* Mobile */
@media (max-width: 900px) {
    .single-product div.product {
        display: block;
    }

    .single-product .product_title {
        font-size: 34px;
        margin-top: 30px;
    }

    .single-product form.cart {
        flex-direction: column;
        align-items: stretch;
    }

    .single-product button.single_add_to_cart_button,
    .single-product .quantity input.qty {
        width: 100%;
    }

    .single-product .woocommerce-tabs ul.tabs {
        flex-direction: column;
    }

    .single-product .woocommerce-tabs .panel {
        padding: 26px 22px !important;
    }
}


a.expera-login-for-prices {
    display: block;
}


.archive .price del {
    width: 100%;
  	color: #8fa0af !important;
}


/* WooCommerce Product Collection Blocks */
.wc-block-product {
    position: relative;
    border: 1px solid #dfe8f1;
    border-radius: 12px;
    background: #fff;
    padding: 24px;
    transition: all .2s ease;
}

.wc-block-product:hover {
    transform: translateY(-3px);
    box-shadow: 0 14px 35px rgba(8,41,71,.08);
}

.wc-block-product .wp-block-post-title a {
    color: #183c5b !important;
    font-size: 19px !important;
    font-weight: 800 !important;
    text-decoration: none;
}

.wc-block-product img {
    width: 100%;
    height: 220px;
    object-fit: contain !important;
}

.wc-block-components-product-price {
    margin-top: 10px;
    min-height: 55px;
}

.wc-block-components-product-price ins {
    color: #35c6bf;
    font-weight: 700;
    text-decoration: none;
}

.wc-block-components-product-price del bdi {
    color: #8fa0af !important;
  	font-weight:400 !important;
    opacity: 1;
    display: block;
}

.wc-block-components-product-button {
    margin-top: auto;
}

.wc-block-components-product-button__button {
    width: 100%;
    min-height: 46px;
    background: #35c6bf !important;
    color: #fff !important;
    border-radius: 4px;
    font-weight: 400;
    font-size: 14px !important;
    line-height: 1.2 !important;
}

.wc-block-components-product-sale-badge {
    background: #746ff2;
    border-radius: 8px;
    padding: 10px 14px;
    border:0px;
    color:white;
}

.wc-block-components-product-sale-badge__text {
    color: #fff;
    font-weight: 700;
}

.woocommerce ul.products li.product .price small.woocommerce-price-suffix {
    color: rgba(var(--kubio-color-6-variant-4), 1);
}

.wc-block-components-product-price.wc-block-grid__product-price {
   font-weight: 400;
   font-size: 14px;
}

.wc-block-product a.expera-login-for-prices {
    font-size:13px !important;
}

.wc-block-product span.woocommerce-Price-amount.amount bdi {
    font-weight:700;
    color:rgb(53, 198, 191);
}

a.button.expera-read-more-button {
    padding: 12px 18px !important;
}

/** add to cart */
.wp-block-kubio-header span.wc-block-mini-cart__badge {
    background-color: white !important;
      color: rgba(var(--kubio-color-2),1) !important;
}



/** 
 * Checkout shipping/payment fix
 */
.wc-block-components-radio-control__option,
.wc-block-components-radio-control-accordion-option {
    border: 1px solid #dfe8f1 !important;
    border-radius: 12px !important;
    background: #fff !important;
    box-shadow: none !important;
}

.wc-block-components-radio-control-accordion-content {

    padding: 0 24px 18px 64px !important;
    margin-top: -4px;
    border-top: 0 !important;
    background: transparent !important;
}

/* Shipping */
.wc-block-components-shipping-rates-control
.wc-block-components-radio-control__option {

    min-height: 76px;
    padding: 22px 24px 22px 64px !important;
}

/* Payment */
.wc-block-components-radio-control-accordion-option
.wc-block-components-radio-control__option {

    min-height: auto;
    padding: 18px 24px 12px 64px !important;
}

.wc-block-components-radio-control__option-checked,
.wc-block-components-radio-control-accordion-option--checked-option-highlighted {
    border-color: #35c6bf !important;
    background: #f5fbfc !important;
}

.wc-block-components-radio-control-accordion-option
.wc-block-components-radio-control__option {
    border: 0 !important;
    background: transparent !important;
}

.wc-block-components-radio-control__input {
    position: absolute !important;
    left: 24px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    accent-color: #35c6bf;
}

.wc-block-components-radio-control__label,
.wc-block-components-payment-method-label {
    color: #183c5b;
    font-size: 17px;
    font-weight: 700;
}

.wc-block-components-radio-control__secondary-label {
    color: #183c5b;
    font-size: 17px;
    font-weight: 800;
}

.wc-block-components-radio-control__label-group {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    width: 100%;
}

.wc-block-components-radio-control-accordion-content {
    padding: 0 24px 22px 64px !important;
    background: transparent !important;
    border-top: 0 !important;
    color: #607083;
    font-size: 15px;
    line-height: 1.6;
}

.wc-block-components-radio-control--highlight-checked
.wc-block-components-radio-control__option::after {
    display: none !important;
}



/**
   WooCommerce My Account - Login / Register
*/

.woocommerce-account .woocommerce {
 max-width:initial !important;
}

.woocommerce-account header.woocommerce-Address-title.title h2 {
    font-size: 1.5em;
}

.woocommerce-account:not(.logged-in) .woocommerce {
    max-width: 1120px;
    margin: 0 auto;
    padding: 80px 24px 110px;
}

.woocommerce-account:not(.logged-in) .woocommerce > h2,
.woocommerce-account:not(.logged-in) .entry-title {
    color: #183c5b;
    font-size: clamp(36px, 4vw, 52px);
    font-weight: 800;
    text-align: center;
    margin-bottom: 56px;
}

/* Two-column layout */
.woocommerce-account:not(.logged-in) .u-columns {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 48px;
    align-items: start;
}

.woocommerce-account:not(.logged-in) .u-column1,
.woocommerce-account:not(.logged-in) .u-column2 {
    width: 100% !important;
    float: none !important;
}

.woocommerce-account:not(.logged-in) .u-column1 > h2,
.woocommerce-account:not(.logged-in) .u-column2 > h2 {
    color: #183c5b;
    font-size: 1.5em;
    line-height: 1.15;
    font-weight: 800;
    margin-bottom: 24px;
}

/* Form cards */
.woocommerce-account:not(.logged-in) form.login,
.woocommerce-account:not(.logged-in) form.register {
    padding: 32px 34px;
    border: 1px solid #dfe8f1 !important;
    border-radius: 14px !important;
    background: #fff;
    box-shadow: 0 14px 35px rgba(8, 41, 71, 0.06);
    margin-top: 0px;
    z-index: 10 !important;
    position: relative;
}

.woocommerce-account:not(.logged-in) form.login {
    background-color: #FAFAFA !important;
    max-width: inherit !important;
}

.woocommerce-account:not(.logged-in) form.register {
    background-color: #eff7f8;
}

/* Labels */
.woocommerce-account:not(.logged-in) form label {
    color: #183c5b;
    font-size: 15px;
    font-weight: 700;
    margin-bottom: 8px;
}

.woocommerce-account:not(.logged-in) .required {
    color: #c0392b;
}

/* Inputs */
.woocommerce-account:not(.logged-in) form .input-text,
.woocommerce-account:not(.logged-in) form input[type="text"],
.woocommerce-account:not(.logged-in) form input[type="email"],
.woocommerce-account:not(.logged-in) form input[type="password"] {
    width: 100%;
    min-height: 48px;
    padding: 12px 14px;
    border: 1px solid #cfd9e3;
    border-radius: 7px;
    background: #fff;
    color: #0d2b45;
    font-size: 16px;
    transition: 0.2s ease;
}

.woocommerce-account:not(.logged-in) form .input-text:focus,
.woocommerce-account:not(.logged-in) form input[type="text"]:focus,
.woocommerce-account:not(.logged-in) form input[type="email"]:focus,
.woocommerce-account:not(.logged-in) form input[type="password"]:focus {
    border-color: #35c6bf;
    box-shadow: 0 0 0 3px rgba(53, 198, 191, 0.16);
    outline: none;
}

/* Password visibility icon alignment */
.woocommerce-account:not(.logged-in) .password-input {
    display: block;
    position: relative;
}

.woocommerce-account:not(.logged-in) .show-password-input {
    top: 50%;
    transform: translateY(-50%);
    right: 14px;
}

/* Buttons */
.woocommerce-account:not(.logged-in) .woocommerce-button,
.woocommerce-account:not(.logged-in) button.button,
.woocommerce-account:not(.logged-in) input.button {
    min-height: 46px;
    padding: 13px 22px !important;
    border-radius: 7px !important;
    background: #35c6bf !important;
    color: #fff !important;
    font-weight: 800;
    border: 0 !important;
    transition: 0.2s ease;
}

.woocommerce-account:not(.logged-in) .woocommerce-button:hover,
.woocommerce-account:not(.logged-in) button.button:hover,
.woocommerce-account:not(.logged-in) input.button:hover {
    background: #22aaa3 !important;
    transform: translateY(-1px);
}

/* Register button as secondary navy */
.woocommerce-account:not(.logged-in) form.register button.button {
    background: #183c5b !important;
}

.woocommerce-account:not(.logged-in) form.register button.button:hover {
    background: #0d2b45 !important;
}

/* Remember me */
.woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    margin-left: 14px;
    color: #0d2b45;
    font-weight: 600;
}

.woocommerce-account:not(.logged-in) input[type="checkbox"] {
    width: 18px;
    height: 18px;
    accent-color: #35c6bf;
}

/* Lost password */
.woocommerce-account:not(.logged-in) .lost_password {
    margin-top: 20px;
}

.woocommerce-account:not(.logged-in) .lost_password a,
.woocommerce-account:not(.logged-in) form.register a {
    color: #35c6bf;
    font-weight: 700;
    text-decoration: none;
}

.woocommerce-account:not(.logged-in) .lost_password a:hover,
.woocommerce-account:not(.logged-in) form.register a:hover {
    color: #22aaa3;
    text-decoration: underline;
}

/* Register privacy text */
.woocommerce-account:not(.logged-in) .woocommerce-privacy-policy-text {
    color: #607083;
    font-size: 15px;
    line-height: 1.6;
    margin: 20px 0 22px;
}

/* Notices */
.woocommerce-account:not(.logged-in) .woocommerce-error,
.woocommerce-account:not(.logged-in) .woocommerce-message,
.woocommerce-account:not(.logged-in) .woocommerce-info {
    max-width: 1120px;
    margin: 0 auto 28px;
    border-top-color: #35c6bf;
    border-radius: 10px;
}

/* Mobile */
@media (max-width: 900px) {
    .woocommerce-account:not(.logged-in) .woocommerce {
        padding: 56px 20px 80px;
    }

    .woocommerce-account:not(.logged-in) .u-columns {
        grid-template-columns: 1fr;
        gap: 36px;
    }

    .woocommerce-account:not(.logged-in) form.login,
    .woocommerce-account:not(.logged-in) form.register {
        min-height: auto;
        padding: 26px 22px;
    }

    .woocommerce-account:not(.logged-in) .woocommerce-form-login__rememberme {
        display: flex;
        margin: 16px 0 0;
    }
}

/* Wrapper */
.woocommerce-account:not(.logged-in) .u-column1,
.woocommerce-account:not(.logged-in) .u-column2 {
    position: relative;
}

/* Fjern gamle ikon-pseudoer */
.woocommerce-account:not(.logged-in) .u-column1::before,
.woocommerce-account:not(.logged-in) .u-column2::after {
    content: none !important;
}

/* Login/register wrapper */
.woocommerce-account:not(.logged-in) #customer_login {
    position: relative;
    isolation: isolate;
}

/* Login icon - øverst venstre */
.woocommerce-account:not(.logged-in) #customer_login::before {
    content: "";
    position: absolute;
    top: -42px;
    left: -70px;
    width: 150px;
    height: 150px;
    opacity: 0.055;
    pointer-events: none;
    background-color: #35c6bf;
    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.09 15.59 11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59ZM19 3H8c-1.1 0-2 .9-2 2v4h2V5h11v14H8v-4H6v4c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
    mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M10.09 15.59 11.5 17l5-5-5-5-1.41 1.41L12.67 11H3v2h9.67l-2.58 2.59ZM19 3H8c-1.1 0-2 .9-2 2v4h2V5h11v14H8v-4H6v4c0 1.1.9 2 2 2h11c1.1 0 2-.9 2-2V5c0-1.1-.9-2-2-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
    z-index: -5;
}

/* Opret konto icon - nederst højre */
.woocommerce-account:not(.logged-in) #customer_login::after {
    content: "";
    position: absolute;
    right: -70px;
    bottom: -70px;
    width: 170px;
    height: 170px;
    z-index: -1;
    opacity: 0.045;
    pointer-events: none;

    background-color: #183c5b;

    -webkit-mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 12c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5ZM4 22v-1c0-3.86 3.14-7 7-7h4c.7 0 1.38.1 2.02.3-.82.55-1.48 1.31-1.9 2.2-.04 0-.08 0-.12 0h-4c-2.76 0-5 2.24-5 5v.5H4Zm15-4v-3h2v3h3v2h-3v3h-2v-3h-3v-2h3Z'/%3E%3C/svg%3E") center / contain no-repeat;
            mask: url("data:image/svg+xml,%3Csvg viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M15 12c2.76 0 5-2.24 5-5s-2.24-5-5-5-5 2.24-5 5 2.24 5 5 5ZM4 22v-1c0-3.86 3.14-7 7-7h4c.7 0 1.38.1 2.02.3-.82.55-1.48 1.31-1.9 2.2-.04 0-.08 0-.12 0h-4c-2.76 0-5 2.24-5 5v.5H4Zm15-4v-3h2v3h3v2h-3v3h-2v-3h-3v-2h3Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

@media (max-width: 900px) {
    .woocommerce-account:not(.logged-in) #customer_login::before,
    .woocommerce-account:not(.logged-in) #customer_login::after {
        display: none;
    }
}

