/* 
Theme Name: Fiskeruta Child Theme
Theme URI: https://fiskeruta.no/
Description: Child theme for Fiskeruta with phone-first authentication, OTP login, and WooCommerce integrations.
Author: Fiskeruta
Author URI: https://fiskeruta.no/
Template: hello-elementor
Version: 1.0.602
Text Domain: fiskeruta
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
Tags: flexible-header, custom-colors, custom-menu, custom-logo, editor-style, featured-images, rtl-language-support, threaded-comments, translation-ready
*/

/* Add your custom styles here */



.elementor-element.elementor-element-38fd4c1.top_bar_bx_close.elementor-widget.elementor-widget-image {
    visibility: hidden !important;
}

@media (max-width: 767px) {
    .home .elementor-24 .elementor-element.elementor-element-55ba8db {
        padding-bottom: 0;
        position: relative;
    }

    .home .elementor-24 .elementor-element.elementor-element-cc677fa {
        position: relative;
        display: block;
    }

    .home .elementor-24 .elementor-element.elementor-element-442d5a4 {
        position: relative;
    }

    .home .elementor-24 .elementor-element.elementor-element-27483b7 {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        width: 55%;
        max-width: 320px;
        padding: 24px 20px 24px 12px;
        margin: 0;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: flex-end;
        text-align: right;
        --widgets-spacing-row: 5px;
        background: linear-gradient(to left, rgba(7, 15, 22, 0.85) 0%, rgba(7, 15, 22, 0.45) 60%, rgba(7, 15, 22, 0) 100%);
        color: #ffffff;
        z-index: 2;
    }

    .home .elementor-24 .elementor-element.elementor-element-27483b7 .elementor-heading-title,
    .home .elementor-24 .elementor-element.elementor-element-27483b7 .elementor-widget-container,
    .home .elementor-24 .elementor-element.elementor-element-27483b7 .elementor-widget-container p,
    .home .elementor-24 .elementor-element.elementor-element-27483b7 .elementor-widget-container em,
    .home .elementor-24 .elementor-element.elementor-element-27483b7 .elementor-widget-container strong {
        color: inherit !important;
    }

    .home .elementor-24 .elementor-element.elementor-element-0010c70 {
        border-left: 0;
        border-right: 2px solid rgba(255, 255, 255, 0.55);
        padding-left: 0;
        padding-right: 15px;
    }

    .home .elementor-24 .elementor-element.elementor-element-c161e78 img {
        min-height: 320px;
        object-position: left center;
    }
}


input[type=date], input[type=email], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=text], input[type=url], select, textarea {
    border: 1px solid #666;
    border-radius: 8px;
	padding: .5rem 1rem;
    transition: all .3s;
    width: 100%;
}

input[type=date]:hover, input[type=email]:hover, input[type=number]:hover, input[type=password]:hover, input[type=search]:hover, input[type=tel]:hover, input[type=text]:hover, input[type=url]:hover, select:hover, textarea:hover,
input[type=date]:focus, input[type=email]:focus, input[type=number]:focus, input[type=password]:focus, input[type=search]:focus, input[type=tel]:focus, input[type=text]:focus, input[type=url]:focus, select:focus, textarea:focus,
input[type=date].selected, input[type=email].selected, input[type=number].selected, input[type=password].selected, input[type=search].selected, input[type=tel].selected, input[type=text].selected, input[type=url].selected, select.selected, textarea.selected {
	border-color: #8b0f1c!important;
    border-width: 2px!important;
	/* box-shadow: 0 0 0 2px rgba(171, 20, 35, 0.22); */
	outline: none;
	background: #fff8f8;
}



button {
	border-radius: 8px;
	padding: .2rem 1rem;
    transition: all .3s;
    width: 100%;
    font-size: 20px;
    font-weight: 600;
    color: #000000;
    background-color: #ffffff;
    border: 1px solid #8b0f1c;
    cursor: pointer;
    /* box-shadow: 0 0 0 2px rgba(139, 15, 28, 0.25); */
}

/* Consistent button rounding across all button types */
button,
.button,
.wp-element-button,
.woocommerce .button,
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.add_to_cart_button,
.single_add_to_cart_button,
.elementor-button,
.e-loop-add-to-cart-form .button,
a.elementor-button,
.elementor-button-wrapper .elementor-button {
	border-radius: 8px !important;
}


table tfoot th, table thead th {
    font-size: 1.1em;
}

.fiskeruta-auth__info h1, .fiskeruta-auth__info h2, .fiskeruta-auth__info h3, h3.fiskeruta-auth__heading {
    font-size: 1.2em !important;
    font-weight: 600 !important;
    line-height: 1.2 !important;
    margin-bottom: 1rem !important;
    margin-top: 0 !important;
    color: #111827 !important;
}

.woocommerce-account .woocommerce {
    gap: 5px!important;
}

.woocommerce-account .addresses .title,
.woocommerce-account .woocommerce-Address-title {
	display: flex;
	justify-content: space-between;
	align-items: center;
	gap: 12px;
}

.woocommerce-account .addresses .woocommerce-Address,
.woocommerce-account .woocommerce-Addresses .woocommerce-Address {
	margin-bottom: 24px;
}

.woocommerce-account .addresses .woocommerce-Address header,
.woocommerce-account .woocommerce-Addresses .woocommerce-Address header {
	margin-bottom: 16px;
}

.woocommerce-account .addresses .woocommerce-Address address,
.woocommerce-account .woocommerce-Addresses .woocommerce-Address address {
	background: #fef2f2;
	border: 1px solid rgba(203, 213, 225, 0.9);
	border-radius: 12px;
	padding: 20px;
	box-shadow: 0 6px 16px rgba(15, 23, 42, 0.06);
	font-style: normal;
	line-height: 1.6;
}



.elementor-widget-container .wp-image-60 {
    display: none;  

}

.e-my-account-tab {
    font-family: 'Inter', sans-serif  !important;
    font-weight: 400 !important;
    padding-left: 15px;
    max-width: 1350px;
    width: 100%;
}

.account-orders-table thead tr {
    font-family: 'Inter', sans-serif  !important;
    font-weight: 800 !important;
    height: 40px !important;
    vertical-align:bottom !important;
}


.account-orders-table thead tr th .nobr {
    font-family: 'Inter', sans-serif  !important;
    padding-left: 10px !important;
    font-weight: 400 !important;
}

.account-orders-table tbody tr th, .woocommerce-orders-table__cell  {
    font-family: 'Inter', sans-serif  !important;
    font-weight: 400 !important;
    padding-left: 10px !important;
 
}

.account-orders-table tbody tr th .woocommerce-orders-table__cell a {
    font-family: 'Inter', sans-serif  !important;
    font-weight: 400 !important;
    text-align: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.account-orders-table tbody tr th .woocommerce-orders-table__cell  {
    font-family: 'Inter', sans-serif  !important;
    font-weight: 400 !important;
}

.woocommerce-account .woocommerce {
    display: flex;
    gap: 24px;
    align-items: flex-start;
}

.woocommerce-account .woocommerce-MyAccount-navigation {
    flex: 0 0 220px;
}


a.woocommerce-button  {
 padding: 0 !important;
 margin: 0 !important;
}

input#delete_account {
	background-color: #9f0b0b;
	border: 1px solid #9f0b0b;
	color: #ffffff;
	border-radius: 999px;
	padding: 0.45rem 1.25rem;
	font-size: 15px;
	font-weight: 400;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

input#delete_account:hover,
input#delete_account:focus-visible {
	background-color: #ffffff;
	border-color: #9f0b0b;
	color: #9f0b0b;
}

input[name="delete_account"] {
	background-color: #9f0b0b !important;
	border: 1px solid #9f0b0b !important;
	color: #ffffff !important;
	border-radius: 8px !important;
	padding: 0.6rem 1.25rem !important;
	font-size: 15px !important;
	font-weight: 400 !important;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease !important;
}

input[name="delete_account"]:hover,
input[name="delete_account"]:focus-visible {
	background-color: #ffffff !important;
	border-color: #9f0b0b !important;
	color: #9f0b0b !important;
}

.elementor-widget.elementor-widget-woocommerce-my-account > div > div > div > nav > ul > li > a {
    border: 1px solid #8B0000 !important; /* deepred */
    border-radius: 8px !important;
}

.elementor-widget-woocommerce-my-account {
    float: none !important;
    padding-left: 15px;
    max-width: 1350px;
    width: 100%;
    box-sizing: border-box;
    flex: 1 1 auto;   

}

.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce-MyAccount-content {
    padding-left: 15px !important;
}

.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce-MyAccount-content-wrapper {
    margin-top: 10px;
}


.overview_area {
	width: 100% !important;
	padding: 0 !important;
	font-family: 'Inter', sans-serif;
	font-size: 16px;
	line-height: 1.6;
	color: #1f2937;
	font-weight: 400;
	font-style: normal;
	font-variation-settings: "opsz" 16;
	font-optical-sizing: auto;
	font-feature-settings: "liga" 1, "clig" 1;
	font-kerning: normal;
	font-variant-ligatures: common-ligatures;
	background: transparent !important;
	box-shadow: none !important;
	border-radius: 0 !important;
	margin-bottom: 20px !important;
}

/* Stack overview items horizontally */
.overview_area ul {
	display: flex !important;
	flex-wrap: wrap !important;
	gap: 20px !important;
	align-items: flex-start !important;
}

.overview_area ul li {
	width: auto !important;
	max-width: 300px !important;
	display: flex !important;
	align-items: flex-start !important;
	gap: 12px !important;
}

/* Align baseline of values in overview cards */
.overview_area ul li .odr_wrp {
	display: flex !important;
	flex-direction: row !important;
	align-items: flex-start !important;
	gap: 14px !important;
}

/* Larger icon blocks */
.overview_area ul li .odr_wrp .odr_img {
	width: 59px !important;
	height: 59px !important;
	min-width: 59px !important;
	min-height: 59px !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	border-radius: 10px !important;
}

.overview_area ul li .odr_wrp .odr_img img {
	width: 28px !important;
	height: 28px !important;
}

.overview_area ul li .odr_wrp_dtl {
	display: block !important;
	flex: 1 !important;
	background: transparent !important;
	padding-top: 0 !important;
}

.overview_area ul li .odr_wrp_dtl strong {
	display: block !important;
	font-size: 13px !important;
	line-height: 1.3 !important;
	min-height: 34px !important;
	margin: 0 0 -4px 0 !important;
	padding: 0 !important;
	background: transparent !important;
}

/* Hide Velkomstgave section */
.gft_crd .gft_box {
	display: none !important;
}

/* Hide Aktive Undersøkelser section */
.gft_crd > .news_crd:last-child {
	display: none !important;
}

/* Minimize gap before Nyheter section */
.frv_sec {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Hide empty favorites/wishlist section */
.frv_sec .favorite_products {
	display: none !important;
}

.frv_sec .gft_crd {
	margin-top: 0 !important;
	padding-top: 0 !important;
}

/* Grid layout for account overview with offers on right - only on overview page */
.woocommerce-MyAccount-content-wrapper:has(.overview_sec) {
	display: grid !important;
	grid-template-columns: 1fr 280px !important;
	grid-template-rows: auto auto !important;
	gap: 20px !important;
	align-items: start !important;
}

.woocommerce-MyAccount-content-wrapper:has(.overview_sec) .overview_sec {
	display: contents !important;
}

.woocommerce-MyAccount-content-wrapper:has(.overview_sec) .overview_area {
	grid-column: 1 !important;
	grid-row: 1 !important;
}

.woocommerce-MyAccount-content-wrapper:has(.overview_sec) .offer_area {
	grid-column: 2 !important;
	grid-row: 1 / 3 !important;
	margin: 0 !important;
	padding: 0 !important;
}

.woocommerce-MyAccount-content-wrapper:has(.overview_sec) .frv_sec {
	grid-column: 1 !important;
	grid-row: 2 !important;
}

.offer_area h3 {
	margin-top: 0 !important;
}

/* Fix narrow gft_crd section */
.gft_crd {
	width: 100% !important;
	max-width: 100% !important;
}

.gft_crd .gft_dtl a {
	width: auto !important;
	max-width: 200px !important;
	display: inline-block !important;
}
.favorite_products {
    width: 75% !important;
    padding: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    border-radius: 0 !important;
    margin-top: 20px !important;
}

.woocommerce .woocommerce-MyAccount-navigation ul li a {
    font-family: 'Inter', sans-serif;
    font-size: 18px !important;
    line-height: 1.6;
    font-weight: 400;
    font-style: normal;
    font-variation-settings: "opsz" 16;
    font-optical-sizing: auto;
    font-feature-settings: "liga" 1, "clig" 1;
    font-kerning: normal;
    font-variant-ligatures: common-ligatures;
    transition: background-color 0.2s ease, color 0.2s ease;
}

.woocommerce .woocommerce-MyAccount-navigation ul li a:hover,
.woocommerce .woocommerce-MyAccount-navigation ul li a:focus-visible {
    background-color: #9f0b0b;
    color: #ffffff;
}

.offer_area {
    margin-top: 0px !important;
    padding-top: 0px !important;
}

.offer_area .woocommerce ul.products li.product a img {
    height: auto !important;
}

.offer-products > woocommerce  {
    gap: 0px !important;
}

.overview_area > ul > li > strong, .odr_wrp_dtl > strong {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 600;
}

div.odr_wrp_dtl > strong {
    font-family: 'Inter', sans-serif;
    font-size: 20px;
    font-weight: 600;
}

.woocommerce div.product p.price,
.woocommerce div.product span.price,
.woocommerce ul.products li.product .price {
    font-family: 'Inter', sans-serif;
    font-size: 1.125rem;
    font-weight: 600;
    color: #111827;
}

.woocommerce div.product p.price del,
.woocommerce div.product span.price del,
.woocommerce ul.products li.product .price del {
    color: #6b7280;
    font-weight: 400;
    margin-right: 0.35em;
    text-decoration: line-through;
    opacity: 0.85;
}

.woocommerce div.product p.price ins,
.woocommerce div.product span.price ins,
.woocommerce ul.products li.product .price ins {
    color: #8b0000;
    font-weight: 700;
    text-decoration: none;
}

.c_custom-variation-price, .c_sale_price, .c_regular_price {
    display: inline-flex;
    align-items: baseline;   /* keep both label + amount on same baseline */
    gap: 18px;                /* replaces the old margin-right spacing */
}

/* Default price styling for product listings */
.custom-archive-price {
    color: #1a1a1a;
    font-family: 'Inter', sans-serif;
    display: inline-flex;
    align-items: baseline;
    gap: 8px;
}

.c_sale_price {
    color: #1a1a1a;
    font-size: 18px;
    font-weight: 600;
}

.c_regular_price {
    color: #888888;
    text-decoration: line-through;
    font-size: 14px;
    font-weight: 400;
    display: inline-flex;
    align-items: center;
}

.woocommerce-account .woocommerce-MyAccount-content {
	background: transparent;
	box-shadow: none;
	padding: 0;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-info,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-error,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-message,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper {
	background: #ffffff;
	border: 1px solid rgba(203, 213, 225, 0.8);
	border-radius: 12px;

	color: #1f2937;
	margin: 0 0 20px;
 
}
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper {
    padding: 20px;
    height: 100%;

}

/* border-left: 4px solid #8b0000; */



.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content textarea,
.woocommerce-account .woocommerce-MyAccount-content select {
	background: #f1f5f9;
	border: 1px solid #cbd5e1;
	border-radius: 8px;
	padding: 12px 14px;
	font-size: 16px;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-content input:focus,
.woocommerce-account .woocommerce-MyAccount-content textarea:focus,
.woocommerce-account .woocommerce-MyAccount-content select:focus {
	border-color: #8b0000;
	/* box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.18); */
	outline: none;
	background: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-content .address fieldset input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content .address fieldset input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content .address fieldset input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content .address fieldset input[type="number"],
.woocommerce-account .woocommerce-MyAccount-content .address fieldset input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content .address fieldset textarea,
.woocommerce-account .woocommerce-MyAccount-content .address fieldset select {
	background: #ffffff;
	border: 1px solid #111827;
	border-radius: 12px;
	padding: 16px;
	font-size: 16px;
	line-height: 1.5;
	transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-content .address fieldset input:focus,
.woocommerce-account .woocommerce-MyAccount-content .address fieldset textarea:focus,
.woocommerce-account .woocommerce-MyAccount-content .address fieldset select:focus {
	border-color: #8b0000;
	box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.15);
	outline: none;
}

.woocommerce-account .woocommerce-MyAccount-content .address fieldset label {
	font-weight: 600;
	font-size: 14px;
	color: #111827;
	margin-bottom: 6px;
	display: block;
}

.woocommerce-account .woocommerce-MyAccount-content .address fieldset .form-row {
	margin-bottom: 18px;
}

.woocommerce-account .woocommerce-MyAccount-content .address fieldset .form-row-first,
.woocommerce-account .woocommerce-MyAccount-content .address fieldset .form-row-last {
	width: 100%;
}


.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h2, .elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce h3 {

margin-top: 20px !important;
margin-bottom: 10px !important;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table {
	width: 100%;
	border-collapse: collapse;
	background: transparent;
	border: none;
	box-shadow: none;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table thead th {
	background: #f8fafc;
	color: #475569;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	padding: 18px 23px;
	text-align: left;
	border: none;
	font-family: 'Inter', sans-serif;
	vertical-align: middle;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody tr:nth-child(odd) {
	background: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody tr:nth-child(even) {
	background: #f1f5f9;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td {
	padding: 16px 23px;
	font-size: 15px;
	line-height: 1.5;
	color: #1f2937;
	font-weight: 400;
	font-family: 'Inter', sans-serif;
	border: none;
	vertical-align: middle;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td:first-child {
	font-weight: 400;
	color: #0f172a;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td:last-child {
	text-align: right;
}

.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table .button {
	width: auto;
	min-width: 96px;
	padding: 0.45rem 1.25rem;
	font-size: 15px;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button,
.woocommerce-account .woocommerce-MyAccount-content a.woocommerce-Button,
.woocommerce-account .woocommerce-MyAccount-content button.woocommerce-Button {
	background-color: #9f0b0b;
	border: 1px solid #9f0b0b;
	color: #ffffff;
	font-weight: 400;
	border-radius: 999px;
	transition: background-color 0.2s ease, border-color 0.2s ease, color 0.2s ease;
}

.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:hover,
.woocommerce-account .woocommerce-MyAccount-content .woocommerce-Button:focus-visible {
	background-color: #ffffff;
	border-color: #9f0b0b;
	color: #9f0b0b;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table {
	width: 100%;
	border-collapse: collapse;
	background: transparent;
	border: none;
	box-shadow: none;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table thead th {
	background: #f8fafc;
	color: #475569;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 0.02em;
	text-transform: uppercase;
	padding: 18px 23px;
	border: none;
	font-family: 'Inter', sans-serif;
	vertical-align: middle;
	text-align: left;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody tr:nth-child(odd) {
	background: #ffffff;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody tr:nth-child(even) {
	background: #f1f5f9;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td {
	padding: 16px 23px;
	font-size: 15px;
	line-height: 1.5;
	color: #1f2937;
	border: none;
	font-family: 'Inter', sans-serif;
	font-weight: 400;
	vertical-align: middle;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody tr:hover {
	background: #f8fafc;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td:first-child {
	font-weight: 400;
	color: #0f172a;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td:last-child {
	text-align: right;
}

.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table .button {
	width: auto;
	min-width: 96px;
	padding: 0.45rem 1.25rem;
	font-size: 15px;
}

@media (max-width: 782px) {
	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table thead {
		display: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody tr {
		display: block;
		padding: 16px;
		border-bottom: 1px solid #e2e8f0;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td {
		display: flex;
		justify-content: space-between;
		padding: 8px 0;
		border: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td::before {
		content: attr(data-title);
		font-weight: 600;
		color: #475569;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table tbody td:last-child {
		text-align: left;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.account-orders-table .button {
		width: 100%;
		margin-top: 12px;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table {
		box-shadow: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table thead {
		display: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody tr {
		display: block;
		padding: 16px;
		border-bottom: 1px solid #e2e8f0;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td {
		display: flex;
		justify-content: space-between;
		padding: 8px 0;
		border: none;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td::before {
		content: attr(data-title);
		font-weight: 600;
		color: #475569;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table tbody td:last-child {
		text-align: left;
	}

	.woocommerce-account .woocommerce-MyAccount-content table.payment-history-table .button {
		width: 100%;
		margin-top: 12px;
	}
}

.woocommerce-account .addresses .title,
.woocommerce-account .woocommerce-Address-title {
	display: flex;
	align-items: center;
	justify-content: space-between;
	gap: 12px;
	margin-bottom: 8px;
}

.woocommerce-account .addresses .title h3,
.woocommerce-account .woocommerce-Address-title h3 {
	margin: 0;
}

header.woocommerce-Address-title > h2 {
    text-align: left!important;  
    margin-left: 0 !important;
}



.woocommerce-account .addresses .title a.edit,
.woocommerce-account .woocommerce-Address-title a.edit {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	padding: 8px 18px;
	border-radius: 999px;
	border: 1px solid #8b0000;
	background: #8b0000;
	color: #ffffff;
	font-weight: 600;
	font-size: 14px;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease, box-shadow 0.2s ease;
	margin-left: 0 !important;
    margin-right: 0 !important;
    position:relative !important;
}

.woocommerce-Address > address {
    padding-top: 15px !important;
}

.woocommerce-account .addresses .title a.edit:hover,
.woocommerce-account .addresses .title a.edit:focus-visible,
.woocommerce-account .woocommerce-Address-title a.edit:hover,
.woocommerce-account .woocommerce-Address-title a.edit:focus-visible {
	background: #a30d0d;
	color: #ffffff;
	border-color: #8b0000;
	box-shadow: 0 0 0 3px rgba(139, 0, 0, 0.15);
	outline: none;
}

table.my_account_points_rewards {
    border: none !important;
    margin-top: 20px !important;
    margin-bottom: 60px !important;
    
}

body.fiskeruta-auth-hide-header .page-header,
body.fiskeruta-auth-hide-header .page-title,
body.fiskeruta-auth-hide-header .entry-title,
body.fiskeruta-auth-hide-header .elementor-widget-container > h1,
body.fiskeruta-auth-hide-header .elementor-widget-container > h2,
body.fiskeruta-auth-hide-header .elementor-widget-container > h3,
body.fiskeruta-auth-hide-header .elementor-heading-title {
	display: none !important;
}

.elementor-71 .elementor-element.elementor-element-4d1cd57,
.elementor-71 .elementor-element.elementor-element-4d1cd57 .elementor-widget-container,
.elementor-71 .elementor-element.elementor-element-4d1cd57 p {
	font-size: 1.2rem;
	line-height: 1.65;
	color: #111111;
	font-weight: 500;
}

.elementor-71 .elementor-element.elementor-element-4d1cd57 a {
	color: #111111;
}

.elementor-71 .elementor-element.elementor-element-4d1cd57 .woocommerce-notices-wrapper:not(:empty) {
	font-size: 1.2rem;
	line-height: 1.65;
	color: #111111;
	font-weight: 600;
}

.elementor-71 .elementor-element.elementor-element-4d1cd57 .woocommerce-notices-wrapper:not(:empty) a {
	color: #111111;
	font-weight: 600;
	text-decoration: underline;
}

.fiskeruta-checkout-login-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
	padding: 0.65rem 1.6rem;
	border-radius: 999px;
	background: #8b0f1c;
	color: #ffffff;
	font-weight: 600;
	font-size: 1rem;
	text-decoration: none;
	transition: background-color 0.2s ease, color 0.2s ease, box-shadow 0.2s ease;
}

.fiskeruta-checkout-login-button:hover,
.fiskeruta-checkout-login-button:focus-visible {
	background: #a31228;
	color: #ffffff;
	box-shadow: 0 0 0 3px rgba(139, 15, 28, 0.2);
	text-decoration: none;
}

.woocommerce-account-dashboard .favorite_products,
.elementor-widget-woocommerce-my-account .favorite_products {
	display: none !important;
}

.in-stock {
	color: #15803d !important;
}

.out-of-stock {
	color: #991b1b !important;
}

/* Hide duplicate stock status near add-to-cart button */
.woocommerce div.product form.cart .stock,
.woocommerce div.product .woocommerce-variation-availability,
.elementor-add-to-cart .stock {
	display: none !important;
}

/* Center swiper pagination bullets */
.swiper-pagination {
	text-align: center;
	width: 100% !important;
	left: 0 !important;
	transform: none !important;
}

/* Product description list spacing */
.woocommerce div.product .woocommerce-product-details__short-description ul,
.woocommerce div.product .product-description ul,
.woocommerce div.product .elementor-widget-woocommerce-product-content ul,
.elementor-icon-list-text ul {
	margin-top: 10px !important;
	margin-bottom: 10px !important;
}

/* Bli Fordelskunde section - light grey background */
.elementor-element[data-id="28e591d"],
.elementor-element[data-id="ea03c08"] {
	background-color: #f3f4f6 !important;
}

/* Product thumbnail zoom on hover (not on single product pages) */
.woocommerce ul.products li.product a img,
.woocommerce-loop-product__link img,
.elementor-widget-loop-grid .elementor-loop-container img,
.elementor-widget-theme-post-featured-image img,
.e-loop-item img,
.elementor-widget-image img,
.product-thumbnail img,
.attachment-woocommerce_thumbnail {
	transition: transform 0.3s ease !important;
}

.woocommerce ul.products li.product a:hover img,
.woocommerce-loop-product__link:hover img,
.elementor-widget-loop-grid .elementor-loop-container a:hover img,
.elementor-widget-theme-post-featured-image a:hover img,
.e-loop-item a:hover img,
.elementor-widget-image a:hover img,
.product-thumbnail a:hover img {
	transform: scale(1.05) !important;
}

.woocommerce ul.products li.product .woocommerce-loop-product__link,
.elementor-widget-theme-post-featured-image .elementor-widget-container,
.e-loop-item .elementor-widget-image .elementor-widget-container {
	overflow: hidden;
	display: block;
}

/* Loop grid - overflow on image wrapper only, not the whole card */
.elementor-widget-loop-grid .e-loop-item .elementor-widget-image .elementor-widget-container {
	overflow: hidden;
}

/* Offer loop price - white text on red background (default for offer_loop) */
.offer_loop .custom-archive-price,
.offer_loop .custom-archive-price .c_regular_price,
.offer_loop .custom-archive-price .c_sale_price {
	color: #ffffff !important;
}

/* White background offer_loop section - dark text */
.elementor-element[data-id="28ea1b1"] .custom-archive-price,
.elementor-element[data-id="28ea1b1"] .custom-archive-price .c_sale_price {
	color: #1a1a1a !important;
}

.elementor-element[data-id="28ea1b1"] .custom-archive-price .c_regular_price {
	color: #888888 !important;
}

/* Offer loop buttons - deep yellow on red background (add to cart only) */
.offer_loop .add_to_cart_button,
.offer_loop .e-loop-add-to-cart-form .button {
	background-color: #F5C518 !important;
	color: #1a1a1a !important;
	border-color: #F5C518 !important;
}

.offer_loop .add_to_cart_button:hover,
.offer_loop .e-loop-add-to-cart-form .button:hover {
	background-color: #FFD54F !important;
	border-color: #FFD54F !important;
}

/* Preorder section - change button text (targets specific loop grid 7b19372) */
.elementor-element-7b19372 .add_to_cart_button {
	font-size: 0 !important;
	padding-left: 24px !important;
	padding-right: 24px !important;
	display: inline-flex !important;
	align-items: center !important;
	justify-content: center !important;
}

.elementor-element-7b19372 .add_to_cart_button::after {
	content: "Forhåndsbestill nå →";
	font-size: 16px !important;
}

/* Offer loop quantity - embedded buttons style */
.offer_loop .qib-button-wrapper {
	display: flex !important;
	align-items: stretch !important;
	gap: 0 !important;
	border: 2px solid #d1d5db !important;
	border-radius: 8px !important;
	overflow: hidden !important;
	background: #ffffff !important;
	height: 44px !important;
}

/* Offer loop quantity buttons - white background embedded */
.offer_loop .qib-button,
.offer_loop .qib-button-wrapper .minus,
.offer_loop .qib-button-wrapper .plus,
.offer_loop .qib-button:hover,
.offer_loop .qib-button-wrapper .minus:hover,
.offer_loop .qib-button-wrapper .plus:hover {
	background-color: #ffffff !important;
	color: #1a1a1a !important;
	border: none !important;
	background: #ffffff !important;
	width: 44px !important;
	min-width: 44px !important;
	height: 100% !important;
	font-size: 20px !important;
	font-weight: 600 !important;
	cursor: pointer !important;
	display: flex !important;
	align-items: center !important;
	justify-content: center !important;
	padding: 0 !important;
	margin: 0 !important;
	border-radius: 0 !important;
}

/* Offer loop quantity input - white background embedded */
.offer_loop .quantity,
.offer_loop .wqpmb_quantity {
	flex: 1 !important;
	margin: 0 !important;
	height: 100% !important;
}

.offer_loop .quantity .qty,
.offer_loop .quantity input[type="number"] {
	background-color: #ffffff !important;
	color: #1a1a1a !important;
	border: none !important;
	text-align: center !important;
	width: 100% !important;
	height: 100% !important;
	font-size: 16px !important;
	font-weight: 500 !important;
	padding: 0 !important;
	margin: 0 !important;
	-moz-appearance: textfield !important;
}

/* Hide number input spinners */
.offer_loop .quantity input[type="number"]::-webkit-outer-spin-button,
.offer_loop .quantity input[type="number"]::-webkit-inner-spin-button {
	-webkit-appearance: none !important;
	margin: 0 !important;
}

.offer_loop .qib-button-wrapper .qib-button,
.offer_loop .qib-button-wrapper .quantity,
.offer_loop .qib-button-wrapper .qty {
	margin: 0 !important;
}

/* Main menu row minimum margins (not top bar) */
.elementor-element[data-id="4a972cf"] {
	padding-left: 10px !important;
	padding-right: 10px !important;
}

/* Add to cart button - vertical spacing for wrapped text */
.e-loop-add-to-cart-form .button.add_to_cart_button {
	line-height: 1.4 !important;
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

/* Product detail page - rounded images with shadow */
body.single-product .woocommerce-product-gallery img,
body.single-product .woocommerce-product-gallery__image img,
body.single-product .flex-viewport img,
body.single-product .woo-product-gallery-slider img,
body.single-product .wpgs-for img,
body.single-product img.wp-post-image,
body .elementor-widget-woocommerce-product-images img,
.woocommerce-product-gallery--with-images img,
.woocommerce-product-gallery .woocommerce-product-gallery__wrapper img {
	border-radius: 16px !important;
	box-shadow: 0 4px 12px rgba(0, 0, 0, 0.1) !important;
	display: block !important;
}

/* Image link wrapper - rounded with overflow hidden for clipping */
body.single-product .woocommerce-product-gallery__image > a,
body.single-product .wpgs-lightbox-icon {
	display: block;
	border-radius: 16px !important;
	overflow: hidden !important;
}

/* Gallery image container - needs overflow hidden for bottom rounding */
body.single-product .woocommerce-product-gallery__image {
	border-radius: 16px !important;
	overflow: hidden !important;
}

/* Add padding for shadow visibility */
body.single-product .woocommerce-product-gallery,
body.single-product .elementor-widget-woocommerce-product-images {
	padding: 16px !important;
	margin: -16px !important;
}

/* Mobile: Single product template (2181) - main gallery edge-to-edge */
@media (max-width: 767px) {
	/* Clear the shadow padding/margin for mobile */
	body.single-product .woocommerce-product-gallery,
	body.single-product .elementor-widget-woocommerce-product-images {
		padding: 0 !important;
		margin: 0 !important;
	}

	/* Gallery widget - full viewport width */
	.elementor-2181 .elementor-widget-woocommerce-product-images {
		width: 100vw !important;
		max-width: 100vw !important;
		margin-left: calc(-50vw + 50%) !important;
		margin-right: calc(-50vw + 50%) !important;
	}

	.elementor-2181 .elementor-widget-woocommerce-product-images .elementor-widget-container,
	.elementor-2181 .woocommerce-product-gallery,
	.elementor-2181 .woo-product-gallery-slider,
	.elementor-2181 .woo-product-gallery-slider .slick-list,
	.elementor-2181 .woo-product-gallery-slider .slick-track,
	.elementor-2181 .woo-product-gallery-slider .slick-slide {
		width: 100% !important;
		max-width: 100% !important;
		padding: 0 !important;
		margin: 0 !important;
	}

	.elementor-2181 .elementor-element-a441c9a .woocommerce-product-gallery img,
	.elementor-2181 .elementor-element-a441c9a .woo-product-gallery-slider img {
		border-radius: 0 !important;
		box-shadow: none !important;
		width: 100% !important;
	}

	.elementor-2181 .elementor-element-a441c9a .woocommerce-product-gallery__image,
	.elementor-2181 .elementor-element-a441c9a .wpgs-lightbox-icon {
		border-radius: 0 !important;
		width: 100% !important;
	}
}

/* Hide "Ukens online-tilbud" header element on My Account pages */
.woocommerce-account .elementor-icon-list-item:has(.e-fas-tag) {
	display: none !important;
}

/* YITH Wishlist table - vertically center all cells */
.wishlist_table th,
.wishlist_table td {
	vertical-align: middle !important;
}

.wishlist_table thead th {
	vertical-align: middle !important;
	padding: 12px 10px !important;
}

.wishlist_table tbody td {
	vertical-align: middle !important;
}

/* WooCommerce info/notice buttons - white text */
.woocommerce-info .woocommerce-Button,
.woocommerce-info .button,
.woocommerce-message .woocommerce-Button,
.woocommerce-message .button {
	color: #ffffff !important;
}

.woocommerce-info .woocommerce-Button:hover,
.woocommerce-info .button:hover,
.woocommerce-message .woocommerce-Button:hover,
.woocommerce-message .button:hover {
	background-color: #a31515 !important;
	color: #ffffff !important;
}

/* Hide broken icon on WooCommerce info notices */
.woocommerce-info::before,
.wc_points_rewards_earn_points .woocommerce-info::before,
.wc_points_redeem_earn_points::before {
	display: none !important;
}

/* WooCommerce account profile - label and input spacing */
.woocommerce-account .woocommerce-MyAccount-content label {
	margin-bottom: 2px !important;
	display: block;
}

/* Hide br after labels since label is already block */
.woocommerce-account .woocommerce-MyAccount-content label + br {
	display: none;
}

.woocommerce-account .woocommerce-MyAccount-content input[type="text"],
.woocommerce-account .woocommerce-MyAccount-content input[type="email"],
.woocommerce-account .woocommerce-MyAccount-content input[type="password"],
.woocommerce-account .woocommerce-MyAccount-content input[type="tel"],
.woocommerce-account .woocommerce-MyAccount-content textarea {
	margin-top: 2px !important;
	padding-top: 8px !important;
	padding-bottom: 8px !important;
}

.woocommerce-account .woocommerce-MyAccount-content hr {
	margin-top: 16px !important;
}

/* Hide description and "Se mer" button from product loop */
.elementor-element[data-id="42e8f8f"] {
	display: none !important;
}

/* Norgespakken hero - image fills height with cover */
.offer_loop .e-con-inner {
	align-items: stretch !important;
}

.offer_loop .offer_right {
	align-self: stretch !important;
	display: flex !important;
	flex-direction: column !important;
}

.offer_loop .offer_right .elementor-widget-image {
	flex: 1 !important;
	display: flex !important;
}

.offer_loop .offer_right .elementor-widget-container {
	height: 100% !important;
	flex: 1 !important;
	display: flex !important;
}

.offer_loop .offer_right .elementor-widget-container a {
	display: block !important;
	height: 100% !important;
	width: 100% !important;
	overflow: hidden !important;
}

.offer_loop .offer_right img {
	width: 100% !important;
	height: 100% !important;
	object-fit: cover !important;
}

/* Round outer corners - default for image on right */
.offer_loop .offer_right .elementor-widget-container a,
.offer_loop .offer_right img {
	border-radius: 0 15px 15px 0 !important;
}

/* Mobile: image on top, round top corners */
@media (max-width: 767px) {
	.offer_loop .offer_right .elementor-widget-container a,
	.offer_loop .offer_right img {
		border-radius: 15px 15px 0 0 !important;
	}
}

/* Image on left (row-reverse OR offer_right first in DOM), round left corners */
.elementor-element[data-id="f144b1b"] .offer_loop .offer_right .elementor-widget-container a,
.elementor-element[data-id="f144b1b"] .offer_loop .offer_right img,
.elementor-element-f144b1b .offer_loop .offer_right .elementor-widget-container a,
.elementor-element-f144b1b .offer_loop .offer_right img,
.offer_loop .e-con-inner > .offer_right:first-child .elementor-widget-container a,
.offer_loop .e-con-inner > .offer_right:first-child img {
	border-radius: 15px 0 0 15px !important;
}

/* Mobile: image on left variant also needs top corners */
@media (max-width: 767px) {
	.elementor-element[data-id="f144b1b"] .offer_loop .offer_right .elementor-widget-container a,
	.elementor-element[data-id="f144b1b"] .offer_loop .offer_right img,
	.elementor-element-f144b1b .offer_loop .offer_right .elementor-widget-container a,
	.elementor-element-f144b1b .offer_loop .offer_right img,
	.offer_loop .e-con-inner > .offer_right:first-child .elementor-widget-container a,
	.offer_loop .e-con-inner > .offer_right:first-child img {
		border-radius: 15px 15px 0 0 !important;
	}
}

/* My Account Overview - Two column layout with Tilbud spanning full height */
.woocommerce-account .woocommerce-MyAccount-content-wrapper:has(.overview_sec) {
	display: grid !important;
	grid-template-columns: 1fr 200px !important;
	gap: 24px !important;
	align-items: start !important;
}

/* Flatten overview_sec so children become grid items */
.woocommerce-account .woocommerce-MyAccount-content-wrapper .overview_sec {
	display: contents !important;
}

/* Kontooversikt heading style */
.woocommerce-account .overview_area h2,
.woocommerce-account h2.woocommerce-account-heading {
	font-family: 'Inter', sans-serif !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	margin: 0 0 16px 0 !important;
}

/* Account page description text */
.woocommerce-account .woocommerce-account-description {
	color: #6b7280;
	font-size: 14px;
	margin: -8px 0 20px 0;
	line-height: 1.5;
}

/* Account page content wrapper with heading - unified frame */
.woocommerce-account [class*="woocommerce-MyAccount-content-wrapper"]:has(h2.woocommerce-account-heading) {
	background: #ffffff;
	border: 1px solid rgba(203, 213, 225, 0.8);
	border-radius: 12px;
	padding: 20px;
}

.woocommerce-account [class*="woocommerce-MyAccount-content-wrapper"] h2.woocommerce-account-heading {
	margin: 0 0 16px 0 !important;
}

/* Remove border from inner elements when inside framed wrapper */
.woocommerce-account [class*="woocommerce-MyAccount-content-wrapper"]:has(h2.woocommerce-account-heading) .woocommerce-info {
	border: none !important;
	border-radius: 0 !important;
	padding: 0 !important;
	margin: 0 !important;
	background: transparent !important;
	box-shadow: none !important;
}

.woocommerce-account [class*="woocommerce-MyAccount-content-wrapper"]:has(h2.woocommerce-account-heading) .woocommerce-info::before {
	display: none !important;
}

/* Left content sections - place in first column */
.woocommerce-account .woocommerce-MyAccount-content-wrapper .overview_area,
.woocommerce-account .woocommerce-MyAccount-content-wrapper .frv_sec {
	grid-column: 1 !important;
}

/* Tilbud/Offer area - right column spanning all rows */
.woocommerce-account .woocommerce-MyAccount-content-wrapper .offer_area {
	grid-column: 2 !important;
	grid-row: 1 / 3 !important;
	position: sticky !important;
	top: 100px !important;
	width: 100% !important;
	height: fit-content !important;
	max-height: calc(100vh - 120px) !important;
	overflow-y: auto !important;
	overflow-x: visible !important;
	align-self: start !important;
}

/* Ensure parent containers don't clip Tilbud */
.woocommerce-account .woocommerce-MyAccount-content,
.woocommerce-account .woocommerce-MyAccount-content-wrapper,
.woocommerce-account .e-my-account-tab,
.woocommerce-account .elementor-widget-woocommerce-my-account {
	overflow: visible !important;
}

/* Force single column products in Tilbud area */
.woocommerce-account .offer_area ul.products {
	display: flex !important;
	flex-direction: column !important;
	gap: 20px !important;
}

.woocommerce-account .offer_area ul.products li.product {
	width: 100% !important;
	margin: 0 !important;
	padding: 0 !important;
}

/* Mobile responsive - stack columns */
@media (max-width: 991px) {
	.woocommerce-account .woocommerce-MyAccount-content-wrapper {
		grid-template-columns: 1fr !important;
	}

	.woocommerce-account .woocommerce-MyAccount-content-wrapper .overview_sec {
		display: block !important;
	}

	.woocommerce-account .woocommerce-MyAccount-content-wrapper .offer_area {
		grid-column: 1 !important;
		grid-row: auto !important;
		position: relative !important;
		top: 0 !important;
		max-height: none !important;
	}
}

/* Logout confirmation modal buttons */
#fiskeruta-logout-cancel {
	background: #e5e7eb !important;
	border: 1px solid #d1d5db !important;
	color: #374151 !important;
	transition: background-color 0.2s ease !important;
}

#fiskeruta-logout-cancel:hover {
	background: #ffffff !important;
	color: #374151 !important;
}

#fiskeruta-logout-confirm {
	transition: background-color 0.2s ease !important;
}

#fiskeruta-logout-confirm:hover {
	background: #8b0000 !important;
	color: #ffffff !important;
}

/* Hide wishlist edit title button and form */
.woocommerce-account .wishlist-title .show-title-form,
.woocommerce-account .wishlist-title-container .show-title-form,
.woocommerce-account .wishlist-title-container .hidden-title-form {
	display: none !important;
}

/* Replace wishlist title with "Mine favoritter" */
.woocommerce-account .wishlist-title h2,
.woocommerce-account .wishlist-title-container h2 {
	font-size: 0 !important;
	color: transparent !important;
}

.woocommerce-account .wishlist-title h2::after,
.woocommerce-account .wishlist-title-container h2::after {
	content: "Mine favoritter";
	font-size: 24px !important;
	color: #000 !important;
}

/* Show hidden Betalinger heading and style it */
.woocommerce-account .woocommerce-MyAccount-content-wrapper > h2[style*="display: none"],
.woocommerce-account .woocommerce-MyAccount-content-wrapper > h2[style*="display:none"] {
	display: block !important;
	font-family: 'Inter', sans-serif !important;
	font-size: 22px !important;
	font-weight: 600 !important;
	margin: 0 0 16px 0 !important;
}

/* Address page buttons - regular rounded corners */
.woocommerce-account .woocommerce-Address .woocommerce-Address-edit .edit,
.woocommerce-account .woocommerce-Address .woocommerce-Address-edit a,
.woocommerce-account .u-column1 .woocommerce-Address-edit a,
.woocommerce-account .u-column2 .woocommerce-Address-edit a,
.woocommerce-account .woocommerce-Addresses .edit {
	border-radius: 6px !important;
}

/* Survey Delta button - flush right and smaller font */
.woocommerce-account .nw_icn_box {
	display: flex !important;
	align-items: center !important;
	gap: 12px !important;
}

.woocommerce-account .nw_icn_box .investi_inf {
	margin-left: auto !important;
	text-align: right !important;
}

.woocommerce-account .nw_icn_box .investi_inf button {
	font-size: 13px !important;
}

/* Fix product card text overlap in account page */
.woocommerce-account .offer_area li.product,
.woocommerce-account .overview_area li.product,
.woocommerce-account li.product {
	display: flex !important;
	flex-direction: column !important;
}

.woocommerce-account li.product .woocommerce-loop-product__title,
.woocommerce-account li.product h2 {
	margin-bottom: 8px !important;
	line-height: 1.3 !important;
}

.woocommerce-account li.product .product-badge,
.woocommerce-account li.product .badge,
.woocommerce-account li.product [class*="badge"] {
	position: relative !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.woocommerce-account li.product .short-description,
.woocommerce-account li.product .woocommerce-product-details__short-description,
.woocommerce-account li.product p {
	margin-top: 4px !important;
	margin-bottom: 8px !important;
	line-height: 1.4 !important;
}

.woocommerce-account li.product .price {
	margin-bottom: 12px !important;
}

/* Fix Sist sett / Recently viewed product cards - reset absolute positioning */
/* Remove fixed heights from loop item content containers */
.elementor-widget-loop-carousel .e-loop-item .e-con,
.elementor-widget-loop-carousel .e-loop-item .e-con.e-child {
	height: auto !important;
}

/* Ensure all widgets in loop items flow normally */
.elementor-widget-loop-carousel .e-loop-item .elementor-widget {
	position: static !important;
}

.elementor-widget-loop-carousel .e-loop-item .elementor-widget-container {
	position: static !important;
}

/* Reset any absolute/fixed positioned headings */
.elementor-widget-loop-carousel .e-loop-item .elementor-heading-title {
	position: static !important;
}

.elementor-widget-loop-carousel .e-loop-item .woocommerce-product-details__short-description {
	position: static !important;
}

.elementor-widget-loop-carousel .e-loop-item .custom-archive-price {
	position: static !important;
}

/* Wishlist heart icon - position top-right over image */
.elementor-widget-loop-carousel .e-loop-item .yith-wcwl-add-to-wishlist,
.elementor-widget-loop-carousel .e-loop-item .tinvwl_add_to_wishlist_button,
.elementor-widget-loop-carousel .e-loop-item [class*="wishlist"] {
	position: absolute !important;
	top: 7px !important;
	right: 7px !important;
	left: auto !important;
	z-index: 10 !important;
}

.elementor-widget-loop-carousel .e-loop-item > .e-con:first-child {
	position: relative !important;
}

/* Lightbox image - rounded corners */
.elementor-lightbox .swiper-slide img,
.elementor-lightbox .elementor-lightbox-image,
.elementor-lightbox img,
.lg-outer .lg-image,
.pswp__img,
.fancybox-image,
.fancybox-content img {
	border-radius: 16px !important;
}

/* FancyBox caption - below image, not overlaying */
.fancybox-caption {
	position: relative !important;
	background: transparent !important;
	padding: 15px 0 0 0 !important;
}

.fancybox-caption::before {
	display: none !important;
}

/* Lightbox caption overlays - hide empty ones */
.pswp__caption,
.wpgs-caption,
.lg-sub-html,
.lg-toolbar,
.slick-caption,
.woocommerce-product-gallery__caption,
.flex-caption {
	display: none !important;
}

.fancybox-slide--image .fancybox-content {
	overflow: visible !important;
}

/* Remove fancybox shadows and backgrounds */
.fancybox-stage,
.fancybox-slide,
.fancybox-slide--image,
.fancybox-content,
.fancybox-image {
	background: transparent !important;
	box-shadow: none !important;
}

.fancybox-slide::before,
.fancybox-slide::after,
.fancybox-content::before,
.fancybox-content::after,
.fancybox-stage::before,
.fancybox-stage::after {
	display: none !important;
}

/* Remove rounded corners from lightbox image to prevent background bleed */
.fancybox-image {
	border-radius: 0 !important;
}

/* Newsletter section - prevent overlap */
.elementor-element-853833e {
	flex-direction: column !important;
	align-items: flex-start !important;
	gap: 8px !important;
}

/* Product page quantity selector */
.single-product .qib-button-wrapper,
.single-product .quantity-wrapper {
	max-width: 160px !important;
}

.single-product .qib-button,
.single-product .qib-button-wrapper .minus,
.single-product .qib-button-wrapper .plus {
	background-color: #ffffff !important;
	background: #ffffff !important;
}

.single-product .qib-button:hover,
.single-product .qib-button-wrapper .minus:hover,
.single-product .qib-button-wrapper .plus:hover {
	background-color: #f3f4f6 !important;
	background: #f3f4f6 !important;
}

/* Loop/archive quantity selector */
.e-loop-add-to-cart-form .qib-button-wrapper {
	max-width: 160px !important;
}

/* All quantity +/- buttons - white, no hover effect */
.qib-button-wrapper {
	border: 2px solid #d1d5db !important;
	border-radius: 8px !important;
	overflow: hidden !important;
}

.qib-button,
.qib-button-wrapper .minus,
.qib-button-wrapper .plus,
.qib-button:hover,
.qib-button:focus,
.qib-button:active,
.qib-button-wrapper .minus:hover,
.qib-button-wrapper .minus:focus,
.qib-button-wrapper .minus:active,
.qib-button-wrapper .plus:hover,
.qib-button-wrapper .plus:focus,
.qib-button-wrapper .plus:active,
button.qib-button,
button.qib-button:hover,
button.qib-button:focus,
button.qib-button:active,
button.minus.qib-button,
button.minus.qib-button:hover,
button.plus.qib-button,
button.plus.qib-button:hover,
.elementor-24 .qib-button-wrapper button:hover,
.elementor-element .qib-button-wrapper button:hover,
[class*="elementor-element"] .qib-button-wrapper button:hover,
.elementor-24 .elementor-element.elementor-element-c9e1ca9 .qib-button-wrapper button:hover,
.elementor-24 .elementor-element.elementor-element-f144b1b .qib-button-wrapper button:hover,
.elementor-24 .elementor-element .qib-button-wrapper button:hover {
	background-color: #ffffff !important;
	background: #ffffff !important;
}

/* Product detail cart form - quantity on own row */
.single-product form.cart {
	display: flex !important;
	flex-wrap: wrap !important;
	align-items: center !important;
	gap: 12px !important;
}

.single-product form.cart .wc-points-rewards-product-message {
	width: 100% !important;
	display: block !important;
	margin-bottom: 4px !important;
}

.single-product form.cart .wc-points-rewards-product-message + br {
	display: none !important;
}

.single-product form.cart .qib-button-wrapper {
	flex: 0 0 auto !important;
}

.single-product form.cart .single_add_to_cart_button {
	flex: 0 0 auto !important;
	width: auto !important;
	max-width: 220px !important;
}

/* Account overview news section */
.news_crd .nw_icn_inf h5 {
	font-size: 16px;
	font-weight: 600;
	color: #111827;
	margin: 0 0 8px 0;
}

.news_crd .nw_icn_inf .news_read_more {
	display: inline-block;
	margin-top: 10px;
	padding: 5px 10px;
	width: 150px;
	text-align: center;
	background-color: #8D0000;
	color: #fff;
	font-weight: 500;
	text-decoration: none;
	font-size: 12px;
	border-radius: 6px;
	transition: background-color 0.2s ease;
	box-sizing: border-box;
}

.news_crd .nw_icn_inf .news_read_more:hover {
	background-color: #6b0000;
}

/* Sticky footer - always at bottom of viewport */
html {
	height: 100%;
}

body {
	display: flex;
	flex-direction: column;
	min-height: 100vh;
	margin: 0;
}

body > .elementor,
body > .site-main,
body > main,
#content {
	flex: 1 0 auto;
	display: flex;
	flex-direction: column;
	align-items: stretch;
	justify-content: flex-start;
}

body > .elementor > *:not(.elementor-location-footer),
body > .site-main > *:not(footer),
main > *:not(footer) {
	flex-shrink: 0;
}

footer.elementor-location-footer,
.elementor-location-footer {
	flex-shrink: 0;
	margin-top: auto;
}

/* Remove gap before breadcrumbs */
.elementor-element.elementor-element-53abf69 {
	--min-height: 0 !important;
	min-height: 0 !important;
}

@media (max-width: 1024px) {
	.elementor-24 .elementor-element.elementor-element-53abf69 {
		--padding-bottom: 0 !important;
		padding-bottom: 0 !important;
	}
}


@media (min-width: 768px) {
	.elementor-24 .elementor-element.elementor-element-34972f5 {
		margin-top: auto !important;
	}
	.elementor-3161 .elementor-element.elementor-element-634b472 {
		margin-top: auto !important;
	}
}

.elementor-3161 .elementor-element.elementor-element-40e4a25.elementor-element {
	margin-bottom: 20px !important;
}

.elementor-3161 .elementor-element.elementor-element-d9a97f6 {
	--padding-bottom: 0 !important;
	padding-bottom: 0 !important;
}

.elementor-3161 .elementor-element.elementor-element-992e537 img {
	vertical-align: bottom !important;
}

.elementor-3161 .elementor-element.elementor-element-634b472 {
	--margin-bottom: 0 !important;
	margin-bottom: 0 !important;
}

.elementor-3161 .elementor-element.elementor-element-992e537 > .elementor-widget-container {
	margin: 0 !important;
}

.elementor-24 .elementor-element.elementor-element-4a799a0.elementor-element {
	margin-bottom: 30px !important;
}

/* WooCommerce Password Reset Form */
.woocommerce-ResetPassword.lost_reset_password,
.woocommerce form.woocommerce-ResetPassword,
form.woocommerce-ResetPassword.lost_reset_password {
	max-width: 620px;
	margin: 24px auto;
	padding: 24px;
	background: #ffffff;
	border: 1px solid #e3e6ed;
	border-radius: 0 !important;
}

/* Remove any wrapper rounding on lost password page */
.woocommerce-lost-password .woocommerce,
.lost_password .woocommerce,
body.woocommerce-lost-password .entry-content,
body.woocommerce-lost-password .elementor-widget-container {
	border-radius: 0 !important;
}

.woocommerce-ResetPassword .woocommerce-form-row {
	margin-bottom: 16px;
}

.woocommerce-ResetPassword label {
	display: block;
	font-size: 14px;
	font-weight: 500;
	margin-bottom: 8px;
}

.woocommerce-ResetPassword input[type="text"],
.woocommerce-ResetPassword input[type="email"] {
	background: #f8f9fb;
	border: 1px solid #ccd3e0;
	border-radius: 8px;
	font-size: 20px;
	height: 48px;
	padding: 10px 14px;
	width: 100%;
}

.woocommerce-ResetPassword input[type="text"]:focus,
.woocommerce-ResetPassword input[type="email"]:focus {
	border-color: #8b0f1c;
	outline: none;
}

.woocommerce-ResetPassword .button {
	margin-top: 24px;
	border-radius: 8px;
	width: 100%;
	padding: 12px 24px;
	font-size: 20px;
	font-weight: 600;
	background-color: #9f0b0b;
	border-color: #9f0b0b;
	color: #ffffff;
	cursor: pointer;
	transition: background-color 0.2s ease, border-color 0.2s ease;
}

.woocommerce-ResetPassword .button:hover,
.woocommerce-ResetPassword .button:focus-visible {
	background-color: #7a0a0a;
	border-color: #7a0a0a;
	border-radius: 8px !important;
}

/* Hide Vipps payment box */
.payment_box.payment_method_vipps {
	display: none !important;
}

/* Payment methods headline inside #payment */
#payment.woocommerce-checkout-payment::before {
	content: "Velg betalingsmåte:";
	display: block;
	font-size: 1.25rem;
	font-weight: 600;
	margin: 0 0 12px 0;
	color: #333;
}

/* Reset checkout page link font-size */
.elementor-widget-woocommerce-checkout-page a {
	font-size: inherit !important;
}

/* Override hide-first/hide-second from Elementor checkout */
.woocommerce-checkout .hide-first,
.woocommerce-checkout .hide-second,
.elementor-widget-woocommerce-checkout-page .hide-first,
.elementor-widget-woocommerce-checkout-page .hide-second {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Ensure billing name fields are always visible */
#billing_first_name_field,
#billing_last_name_field,
.woocommerce-checkout #billing_first_name_field,
.woocommerce-checkout #billing_last_name_field {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* Push login button to bottom of container */
.elementor-2093 .elementor-element.elementor-element-baf5d2a {
	margin-top: auto;
}

/* Fix login page element margin */
.elementor-2093 .elementor-element.elementor-element-9d7e581 > .elementor-widget-container {
	margin: 0px 0px 0px 0px;
}

/* Ensure checkout payment notices and errors are visible */
.woocommerce-checkout .woocommerce-notices-wrapper,
.woocommerce-checkout .woocommerce-error,
.woocommerce-checkout .woocommerce-message,
.woocommerce-checkout .woocommerce-info,
.wc-block-components-notices,
.wc-block-components-notice-banner,
.wc-block-store-notices,
.wc-block-components-notice-banner--error,
.wc-block-components-notice-banner--info,
.wc-block-components-notice-banner--success {
	display: block !important;
	visibility: visible !important;
	opacity: 1 !important;
}

/* My Account mobile responsive - minimize margins and smaller fonts */
@media (max-width: 767px) {
	/* Remove Elementor section padding */
	.elementor-72 .elementor-element.elementor-element-695065fa {
		--padding-left: 0px;
		--padding-right: 0px;
	}

	/* Reduce overall page margins */
	.woocommerce-account .elementor-widget-woocommerce-my-account {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Navigation width for mobile */
	.woocommerce-account .woocommerce-MyAccount-navigation,
	.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce .woocommerce-MyAccount-navigation {
		flex: 0 0 25% !important;
		width: 25% !important;
		margin-bottom: 0 !important;
	}

	/* Smaller navigation buttons */
	.woocommerce .woocommerce-MyAccount-navigation ul li a {
		font-size: 14px !important;
		padding: 8px 12px !important;
	}

	.elementor-widget.elementor-widget-woocommerce-my-account > div > div > div > nav > ul > li > a {
		font-size: 14px !important;
		padding: 8px 12px !important;
	}

	/* Reduce navigation list gaps */
	.woocommerce-account .woocommerce-MyAccount-navigation ul {
		gap: 6px !important;
	}

	/* Content area padding */
	.elementor-widget-woocommerce-my-account .e-my-account-tab .woocommerce-MyAccount-content {
		padding-left: 0 !important;
		padding-right: 0 !important;
	}

	/* Overview section spacing */
	.woocommerce-account .woocommerce-MyAccount-content-wrapper .overview_sec {
		padding: 0 !important;
	}

	.woocommerce-account .woocommerce-MyAccount-content-wrapper .overview_area {
		margin-bottom: 12px !important;
	}

	/* Overview items - smaller */
	.overview_area > ul > li > strong,
	.odr_wrp_dtl > strong {
		font-size: 16px !important;
	}

	/* Overview list gaps */
	.overview_area ul {
		gap: 12px !important;
	}

	/* My Account headings - consistent sizing across all subpages */
	.woocommerce-account .woocommerce-MyAccount-content h1,
	.woocommerce-account .woocommerce-MyAccount-content h2,
	.woocommerce-account .woocommerce-MyAccount-content h3,
	.woocommerce-account .woocommerce-MyAccount-content-wrapper h1,
	.woocommerce-account .woocommerce-MyAccount-content-wrapper h2,
	.woocommerce-account .woocommerce-MyAccount-content-wrapper h3,
	.woocommerce-account .woocommerce-MyAccount-content-wrapper > h2[style*="display: none"],
	.woocommerce-account .woocommerce-MyAccount-content-wrapper > h2[style*="display:none"],
	.elementor-widget-woocommerce-my-account h1,
	.elementor-widget-woocommerce-my-account h2,
	.elementor-widget-woocommerce-my-account h3,
	.elementor-widget-woocommerce-my-account .woocommerce h2,
	.elementor-widget-woocommerce-my-account .woocommerce h3 {
		font-size: 18px !important;
		margin-bottom: 12px !important;
	}

	/* Subheadings smaller */
	.woocommerce-account .woocommerce-MyAccount-content h4,
	.woocommerce-account .woocommerce-MyAccount-content-wrapper h4,
	.elementor-widget-woocommerce-my-account h4 {
		font-size: 16px !important;
		margin-bottom: 10px !important;
	}

	/* Body text consistent */
	.woocommerce-account .woocommerce-MyAccount-content,
	.woocommerce-account .woocommerce-MyAccount-content p,
	.woocommerce-account .woocommerce-MyAccount-content label,
	.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content {
		font-size: 14px !important;
	}

	/* Profile page (edit account) mobile styles */
	.woocommerce-account .woocommerce-EditAccountForm label,
	.woocommerce-account .woocommerce-EditAccountForm .form-row label,
	.woocommerce-account .edit-account label {
		font-size: 14px !important;
	}

	.woocommerce-account .woocommerce-EditAccountForm input[type="text"],
	.woocommerce-account .woocommerce-EditAccountForm input[type="email"],
	.woocommerce-account .woocommerce-EditAccountForm input[type="tel"],
	.woocommerce-account .woocommerce-EditAccountForm input[type="password"],
	.woocommerce-account .edit-account input {
		font-size: 14px !important;
	}

	.woocommerce-account .woocommerce-EditAccountForm .woocommerce-Button,
	.woocommerce-account .edit-account button {
		font-size: 14px !important;
	}

	/* Address edit page mobile styles */
	.woocommerce-account .woocommerce-address-fields label,
	.woocommerce-account .woocommerce-address-fields input,
	.woocommerce-account .woocommerce-address-fields select {
		font-size: 14px !important;
	}

	/* Orders table mobile styles */
	.woocommerce-account table.account-orders-table,
	.woocommerce-account table.account-orders-table th,
	.woocommerce-account table.account-orders-table td {
		font-size: 13px !important;
	}

	/* Payment history table mobile styles */
	.woocommerce-account table.payment-history-table,
	.woocommerce-account table.payment-history-table th,
	.woocommerce-account table.payment-history-table td {
		font-size: 13px !important;
	}

	/* Stack order action buttons vertically on mobile */
	.woocommerce-account .woocommerce-orders-table__cell-order-actions {
		display: flex !important;
		flex-direction: column !important;
		gap: 6px !important;
	}

	.woocommerce-account .woocommerce-orders-table__cell-order-actions .woocommerce-button,
	.woocommerce-account .woocommerce-orders-table__cell-order-actions .button {
		display: block !important;
		width: 100% !important;
		text-align: center !important;
		margin: 0 !important;
		font-size: 12px !important;
		padding: 6px 10px !important;
		color: #ffffff !important;
	}
}

/* Checkout product line harmonization */
.woocommerce-checkout .cart_item td,
.e-checkout__order_review .cart_item td,
.elementor-widget-woocommerce-checkout-page .cart_item td {
	font-size: 14px !important;
	vertical-align: middle !important;
}

.woocommerce-checkout .cart_item .product-name,
.e-checkout__order_review .cart_item .product-name,
.elementor-widget-woocommerce-checkout-page .cart_item .product-name {
	font-size: 14px !important;
}

/* QIB quantity button wrapper on checkout */
.woocommerce-checkout .qib-button-wrapper,
.e-checkout__order_review .qib-button-wrapper,
.elementor-widget-woocommerce-checkout-page .qib-button-wrapper {
	display: inline-flex !important;
	align-items: center !important;
	vertical-align: middle !important;
	margin-left: 6px !important;
}

/* QIB +/- buttons smaller on checkout */
.woocommerce-checkout .qib-button,
.e-checkout__order_review .qib-button,
.elementor-widget-woocommerce-checkout-page .qib-button {
	font-size: 10px !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	line-height: 14px !important;
	padding: 0 !important;
}

/* Smaller quantity selector on checkout - inline with text */
.woocommerce-checkout .quantity,
.e-checkout__order_review .quantity,
.elementor-widget-woocommerce-checkout-page .quantity {
	display: inline-flex !important;
	align-items: center !important;
	vertical-align: middle !important;
	margin: 0 4px !important;
}

.woocommerce-checkout .quantity input.qty,
.e-checkout__order_review .quantity input.qty,
.elementor-widget-woocommerce-checkout-page .quantity input.qty {
	font-size: 10px !important;
	width: 20px !important;
	height: 16px !important;
	padding: 0 !important;
	text-align: center !important;
}

.woocommerce-checkout .quantity .minus,
.woocommerce-checkout .quantity .plus,
.e-checkout__order_review .quantity .minus,
.e-checkout__order_review .quantity .plus,
.elementor-widget-woocommerce-checkout-page .quantity .minus,
.elementor-widget-woocommerce-checkout-page .quantity .plus {
	font-size: 10px !important;
	width: 16px !important;
	height: 16px !important;
	min-width: 16px !important;
	min-height: 16px !important;
	line-height: 14px !important;
	padding: 0 !important;
}

/* Product loop image rounding */
.elementor-895 .hero_inner_bg,
.e-loop-item .hero_inner_bg {
	border-radius: 12px !important;
	overflow: hidden !important;
}

/* Prevent price and subtotal columns from wrapping in cart */
.woocommerce-cart-form .product-price,
.woocommerce-cart-form .product-subtotal {
	white-space: nowrap;
}

/* Cart/Checkout savings display colors - Veiledende row (deep red) */
.fiskeruta-price-veiledende th,
.fiskeruta-price-veiledende td,
.fiskeruta-price-veiledende td del,
.fiskeruta-price-veiledende td del *,
.e-cart-totals .fiskeruta-price-veiledende th,
.e-cart-totals .fiskeruta-price-veiledende td,
.woocommerce .cart_totals .shop_table .fiskeruta-price-veiledende th,
.woocommerce .cart_totals .shop_table .fiskeruta-price-veiledende td {
	color: #8D0000 !important;
}

/* Du sparer row (deep red) */
.fiskeruta-savings th,
.fiskeruta-savings td,
.fiskeruta-savings td *,
.e-cart-totals .fiskeruta-savings th,
.e-cart-totals .fiskeruta-savings td,
.e-cart-totals .fiskeruta-savings td *,
.woocommerce .cart_totals .shop_table .fiskeruta-savings th,
.woocommerce .cart_totals .shop_table .fiskeruta-savings td,
.woocommerce .cart_totals .shop_table .fiskeruta-savings td * {
	color: #8D0000 !important;
}

/* Du har gratis frakt row (deep green) */
.fiskeruta-free-shipping th,
.fiskeruta-free-shipping td,
.fiskeruta-free-shipping td *,
.e-cart-totals .fiskeruta-free-shipping th,
.e-cart-totals .fiskeruta-free-shipping td,
.e-cart-totals .fiskeruta-free-shipping td *,
.woocommerce .cart_totals .shop_table .fiskeruta-free-shipping th,
.woocommerce .cart_totals .shop_table .fiskeruta-free-shipping td,
.woocommerce .cart_totals .shop_table .fiskeruta-free-shipping td * {
	color: #2e7d32 !important;
}

/* My Account - Points balance display */
.woocommerce-MyAccount-content p.hide-first {
	font-size: 1.2em;
	font-weight: 600;
	margin-bottom: 1.5em;
}

/* Wishlist - stack prices vertically, prevent wrapping within each price */
.wishlist_table .product-price del,
.wishlist_table .product-price ins {
	display: block;
	white-space: nowrap;
}

/* Rating widget - adjust 4.9 baseline alignment */
.elementor-element.elementor-element-1cc57f3 .elementor-heading-title {
	position: relative !important;
	top: 3px !important;
}

/* Payment methods - equal vertical spacing */
.wc_payment_methods.payment_methods li.wc_payment_method {
	padding: 12px 0;
	margin: 0;
}

.wc_payment_methods.payment_methods li.wc_payment_method:first-child {
	padding-top: 0;
}

.wc_payment_methods.payment_methods li.wc_payment_method:last-child {
	padding-bottom: 0;
}

.wc_payment_methods.payment_methods li.wc_payment_method label {
	display: inline-flex;
	align-items: center;
	gap: 8px;
	cursor: pointer;
}

.wc_payment_methods.payment_methods li.wc_payment_method label img {
	vertical-align: middle;
	max-height: 24px;
	width: auto;
}

