/* Briis Helse – site-wide CSS (loaded by the Briis Helse plugin in the slot Divi used for Theme Options CSS).
   Design lives in Divi presets + global colours/variables. This file only carries what Divi attributes can't express:
   card stretch-links and their single hover state, focus states, mega-menu details, the mobile-menu trigger,
   plugin markup (WPForms, Divi Pixel FAQ / Dual Heading) and footer lists. Colours mirror the global colours. */
:root{--bh-olive:#787765;--bh-olive-d:#575649;--bh-beige:#FAF8F4;--bh-krem:#EDE7DF;--bh-forest:#031600;--bh-ink:#2A2620;--bh-ink-s:#6E6A60;--bh-line:#DED6CA;--bh-white:#fff}
body{overflow-x:clip}
html{scroll-behavior:smooth;scroll-padding-top:100px}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}

/* ---- Focus states and skip link (a11y) ---- */
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,[tabindex]:focus-visible,summary:focus-visible{outline:3px solid var(--bh-olive-d)!important;outline-offset:3px!important;border-radius:4px}
.bh-dark a:focus-visible,.bh-footer a:focus-visible{outline-color:var(--bh-beige)!important}
.bh-skip{position:absolute;left:12px;top:-60px;z-index:100000;background:var(--bh-forest);color:var(--bh-beige)!important;padding:12px 20px;border-radius:999px;font-weight:500;text-decoration:none}
.bh-skip:focus{top:12px}
#main-content:focus{outline:none!important}

/* ---- Cards: the whole card is the link (stretched anchor in the title), one hover state ---- */
.bh-card{position:relative;height:100%}
.bh-card a.bh-stretch{color:inherit!important;text-decoration:none}
.bh-card a.bh-stretch::after{content:"";position:absolute;inset:0;z-index:2}
.bh-card a.bh-stretch:focus-visible{outline:none!important}
.bh-card .et_pb_heading,.bh-card .et_pb_heading_container,.bh-card .et_pb_module_header,.bh-card .et_pb_text,.bh-card .et_pb_text_inner{position:static!important}
.bh-card--link{cursor:pointer;transition:transform .25s ease,box-shadow .25s ease,border-color .25s ease}
.bh-card--link:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(42,38,32,.12)}
.bh-card--link:has(:focus-visible){outline:3px solid var(--bh-olive-d);outline-offset:3px}
.bh-card--image{isolation:isolate}
.bh-more{display:inline-flex;align-items:center;gap:10px;font-weight:500;color:var(--bh-olive-d)}
.bh-more::after{content:"→";transition:transform .25s ease}
.bh-card--link:hover .bh-more::after{transform:translateX(4px)}
.bh-card .bh-more-wrap{margin-top:auto}

/* ---- Button rows: Divi gives each button wrapper the full width inside a flex group ---- */
.bh-btns>.et_pb_button_module_wrapper{width:auto!important;flex:0 0 auto}

/* ---- Checklist (IG "Hvorfor bli medlem") ---- */
.bh-checklist ul.bh-check{list-style:none!important;margin:8px 0 0!important;padding:0!important}
.bh-checklist ul.bh-check li{position:relative;padding:10px 0 10px 34px!important;border-bottom:1px solid var(--bh-line);list-style:none!important}
.bh-checklist--light ul.bh-check li{border-bottom-color:rgba(250,248,244,.18)}
.bh-checklist ul.bh-check li::before{content:"";position:absolute;left:4px;top:17px;width:13px;height:7px;border-left:1.5px solid var(--bh-olive-d);border-bottom:1.5px solid var(--bh-olive-d);transform:rotate(-45deg)}
.bh-checklist--light ul.bh-check li::before{border-color:var(--bh-beige)}

/* ---- Role line under a name, legal documents ---- */
.bh-role p{letter-spacing:.12em!important}
.bh-legal-doc h2{font-size:clamp(22px,2.2vw,28px)!important;margin-top:1.4em}
.bh-legal-doc h3{font-size:19px!important}

/* ---- Header brand block (logo + location) is one link ---- */
.bh-brand{cursor:pointer;height:auto}
.bh-brand .bh-loc a{color:inherit!important;text-decoration:none}
.bh-brand:hover .bh-loc a{text-decoration:underline;text-underline-offset:4px}
.bh-brand:has(:focus-visible){outline:3px solid var(--bh-olive-d);outline-offset:4px;border-radius:4px}

/* ---- Eyebrow next to the logo ---- */
.bh-loc p{white-space:nowrap}

/* ---- Divi Pixel Dual Heading: accent on its own line ---- */
.bh-accent .dipi-dh-main{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:0;margin:0;padding:0}
.bh-accent .dipi-dh-main>span{display:block;margin:0!important;text-align:left}
.bh-accent--center .dipi-dh-main{align-items:center!important}
.bh-accent--center .dipi-dh-main>span{text-align:center}
.bh-accent .dipi-dh-second-heading .dipi-dh-bg-container{letter-spacing:0!important}

/* ---- Header + mega menu ---- */
.bh-nav--has-panel .et_pb_link_text::after{content:"";display:inline-block;width:6px;height:6px;margin-left:8px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:translateY(-3px) rotate(45deg)}
.et_pb_link_module:has(.et_pb_dropdown){cursor:pointer}
.bh-nav:hover .et_pb_link_text,.bh-nav:focus-visible .et_pb_link_text,.bh-nav[aria-current="page"] .et_pb_link_text{text-decoration:underline;text-underline-offset:6px;text-decoration-thickness:1px}
.bh-header .et_pb_dropdown{text-transform:none}
.bh-header .et_pb_dropdown .bh-card a{text-decoration:none!important}
.bh-mega-foot{border-top:1px solid var(--bh-line);padding-top:14px!important}
.bh-mega-foot a{font-weight:500;color:var(--bh-olive-d)!important;text-decoration:none}
.bh-mega-foot a::after{content:" →"}
.bh-mega-foot a:hover{text-decoration:underline;text-underline-offset:4px}
.bh-burger{cursor:pointer;flex-direction:row!important;align-items:center;gap:10px}
.bh-burger .et_pb_link_inner{display:inline-block}
.bh-burger::before{content:"";display:inline-block;flex:none;width:18px;height:12px;background:linear-gradient(currentColor,currentColor) 0 0/100% 1.5px no-repeat,linear-gradient(currentColor,currentColor) 0 50%/100% 1.5px no-repeat,linear-gradient(currentColor,currentColor) 0 100%/100% 1.5px no-repeat}
/* The full menu needs ~1280px (1.4.0: seven items since the membership menu): below that the menu button takes over;
   labels never wrap, and the gaps tighten up to 1365px */
.bh-header .bh-mainnav .bh-nav,.bh-header .bh-mainnav .bh-nav .et_pb_link_inner{white-space:nowrap}
@media (min-width:1280px) and (max-width:1365px){.bh-header .bh-mainnav{column-gap:16px!important}}
@media (min-width:981px) and (max-width:1279px){
  .bh-header .bh-mainnav{display:none!important}
  .bh-header .bh-burger{display:inline-flex!important}
}

/* ---- Mobile menu (Divi Pixel popup) ---- */
.bh-mm-main ul,.bh-mm-main li{list-style:none!important;padding:0!important;margin:0!important}
.bh-mm-main a,#dipi-popup-maker-container .bh-dark ul a{text-decoration:none!important}
#dipi-popup-maker-container ul{list-style:none!important;padding:0!important}
.bh-mm-main a:hover{text-decoration:underline;text-underline-offset:6px}
.bh-mm-head{font-size:12px!important;letter-spacing:.2em;text-transform:uppercase;color:var(--bh-krem)!important;margin-bottom:6px!important}
ul + .bh-mm-head{margin-top:22px!important}   /* 1.4.0: two sub-lists (På huset, Om Briis) */

/* ---- Dark sections and footer ---- */
.bh-dark a{color:var(--bh-beige)}
.bh-footer ul{list-style:none!important;padding:0!important;margin:0!important}
.bh-footer li{padding:3px 0;list-style:none!important}
.bh-footer ul a,.bh-legal a{text-decoration:none!important}
.bh-footer a:hover{text-decoration:underline;text-underline-offset:4px}
.bh-legal span{margin:0 6px;opacity:.6}

/* ---- WPForms (class .bh-form on the text module) ---- */
.bh-form .wpforms-container{--wpforms-field-background-color:#fff;--wpforms-field-border-color:#9C968B;--wpforms-field-border-size:1px;--wpforms-field-border-radius:8px;
  --wpforms-field-text-color:#2A2620;--wpforms-field-size-input-height:50px;--wpforms-field-size-font-size:16px;--wpforms-field-size-padding-h:16px;--wpforms-field-size-input-spacing:16px;
  --wpforms-label-color:#031600;--wpforms-label-size-font-size:15px;--wpforms-label-sublabel-color:#6E6A60;--wpforms-label-error-color:#B42318;
  --wpforms-button-background-color:#575649;--wpforms-button-background-color-alt:#031600;--wpforms-button-text-color:#fff;--wpforms-button-border-radius:999px;
  --wpforms-button-size-height:50px;--wpforms-button-size-font-size:15px;--wpforms-button-size-padding-h:28px;--wpforms-container-padding:0px;margin:0!important}
.bh-form .wpforms-container .wpforms-field{padding:8px 0!important}
.bh-form .wpforms-container input:not([type=checkbox]):not([type=radio]),.bh-form .wpforms-container select,.bh-form .wpforms-container textarea,.bh-form .wpforms-container .wpforms-field-row{max-width:100%!important;width:100%!important}
.bh-form .wpforms-container .wpforms-field-row .wpforms-one-half{width:calc(50% - 8px)!important}
.bh-form .wpforms-container .iti{width:100%}
.bh-form .wpforms-container .wpforms-field-label{font-weight:500!important}
.bh-form .wpforms-container input:focus,.bh-form .wpforms-container textarea:focus,.bh-form .wpforms-container select:focus{border-color:#575649!important;box-shadow:0 0 0 3px rgba(120,119,101,.25)!important;outline:none}
.bh-form .wpforms-container button[type=submit]{border:1px solid #575649!important;font-weight:500!important;letter-spacing:.02em}
.bh-form .wpforms-container button[type=submit]:hover{background:#031600!important;border-color:#031600!important}
.bh-form .wpforms-container .wpforms-field-gdpr-checkbox label{font-weight:400!important;font-size:14px!important;line-height:1.5!important}
.bh-form .wpforms-container a{color:#575649!important;text-decoration:underline}
.bh-form .wpforms-confirmation-container-full{background:var(--bh-krem)!important;border:1px solid var(--bh-line)!important;color:var(--bh-ink)!important;border-radius:12px}

/* ---- Divi Pixel FAQ (no transition on rows and no !important on content padding: jQuery slideToggle animates them) ---- */
.bh-faq .dipi-faq-entry{background:#fff!important;border:1px solid var(--bh-line)!important;border-radius:12px!important;margin-bottom:12px!important;overflow:hidden}
.bh-faq .dipi-faq-entry.open,.bh-faq .dipi-faq-entry:hover{border-color:var(--bh-olive)!important}
.bh-faq .dipi-faq-entry .dipi-faq-title,.bh-faq .dipi-faq-entry.closed .dipi-faq-title{padding:20px 56px 20px 24px!important;cursor:pointer;align-items:center}
.bh-faq .dipi-faq-title h3{font-size:18px!important;font-weight:400!important;line-height:1.4!important;color:var(--bh-forest)!important;margin:0!important;padding:0!important}
.bh-faq .dipi-faq-entry.open .dipi-faq-title{padding-bottom:8px!important}
.bh-faq .dipi-faq-title>i,.bh-faq .dipi-faq-icon{right:22px!important;color:var(--bh-olive-d)!important}
.bh-faq .dipi-faq-entry .dipi-faq-content{padding:0 24px 22px 24px;font-size:16px;line-height:1.7;color:var(--bh-ink)}
.bh-faq .dipi-faq-content p:last-child{margin-bottom:0;padding-bottom:0}

/* ---- Blog loop (Aktuelt) ---- */
.bh-blog .et_pb_post{background:#fff;border:1px solid var(--bh-line);border-radius:12px;overflow:hidden;padding:0 0 24px!important}
.bh-blog .et_pb_post .entry-title,.bh-blog .et_pb_post .post-meta,.bh-blog .et_pb_post .post-content{padding:0 24px}
.bh-blog .et_pb_post .entry-featured-image-url{margin-bottom:18px}

/* ---- Single post ---- */
.bh-post-title .et_pb_title_meta_container,.bh-post-title .post-meta{font-size:13px;letter-spacing:.12em;text-transform:uppercase;color:var(--bh-olive-d)}
.bh-post-image img{border-radius:20px;width:100%;max-height:560px;object-fit:cover}
.bh-post-content p{font-size:17px;line-height:1.75;color:var(--bh-ink)}

/* ---- Staging marker for missing content ([X]) – must be gone before launch ---- */
.bh-todo{border:1px dashed var(--bh-olive);border-radius:12px;padding:24px}

/* ---- Nettbutikk (2026-10-20): spec table in product descriptions (product content, not a Divi module) ---- */
.bh-product-desc h3{margin:32px 0 12px;font-size:20px;font-weight:400;color:var(--bh-ink)}
.bh-specs{width:100%;border-collapse:collapse;margin:0;font-size:15px;line-height:1.5}
.bh-specs th,.bh-specs td{padding:10px 16px 10px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--bh-line)}
.bh-specs th{font-weight:500;color:var(--bh-ink);white-space:nowrap}
.bh-specs td{color:var(--bh-ink-s)}
@media (max-width:767px){.bh-specs{display:block;overflow-x:auto;font-size:14px}.bh-specs th,.bh-specs td{padding-right:12px}}
/* Shop filter (Divi Post Filter) sits inside the product grid column: span all columns (Divi emits no grid placement for it) */
.bh-shop-filter{grid-column:1/-1}
/* Shop filter skin. Divi's Post Filter has no inline option layout, no checked state and no way to hide the radio dot,
   so the pills live here. Hover and active stay inside the palette; nothing resizes on hover. */
.bh-shop-filter .et_pb_post_filter__controls{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.bh-shop-filter .et_pb_post_filter_item{flex:0 0 auto!important;width:auto!important;max-width:none!important;margin:0!important}
.bh-shop-filter .et_pb_post_filter_item[data-type=orderby]{margin-left:auto!important;display:flex!important;flex-direction:row!important;align-items:center!important;gap:10px}
.bh-shop-filter [data-type=radio] .et_pb_post_filter__item-label,.bh-shop-filter [data-type=reset] .et_pb_post_filter__item-label{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.bh-shop-filter [data-type=orderby] .et_pb_post_filter__item-label{margin:0;font-size:14px;color:var(--bh-ink-s)}
.bh-shop-filter .et_pb_post_filter__item-options-list{display:flex!important;flex-direction:row!important;flex-wrap:wrap!important;align-items:center;gap:8px}   /* 1.4.1: Divi now gives the list a column direction */
.bh-shop-filter .et_pb_post_filter__item-option{flex:0 0 auto!important;width:auto!important;margin:0!important;padding:0!important;border:0!important;background:none!important;position:relative}
.bh-shop-filter .et_pb_post_filter__item-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}
.bh-shop-filter .et_pb_post_filter__item-option label i{display:none!important}
.bh-shop-filter .et_pb_post_filter__item-option label,
.bh-shop-filter .et_pb_button.et_pb_post_filter__item-control-reset,
.bh-shop-filter .et_pb_button.et_pb_post_filter__item-control-reset:hover{display:inline-flex!important;align-items:center;width:auto!important;height:40px;margin:0;padding:0 18px!important;border:1px solid var(--bh-olive)!important;border-radius:999px!important;background:transparent!important;color:var(--bh-ink)!important;font-size:14px!important;font-weight:400!important;line-height:1!important;letter-spacing:0!important;cursor:pointer;transition:background-color .2s ease,color .2s ease,border-color .2s ease}
.bh-shop-filter .et_pb_button.et_pb_post_filter__item-control-reset::after{display:none!important}
.bh-shop-filter .et_pb_post_filter__item-option label:hover,.bh-shop-filter .et_pb_button.et_pb_post_filter__item-control-reset:hover{background:var(--bh-krem)!important}
.bh-shop-filter .et_pb_post_filter__item-option input:checked+label,
.bh-shop-filter:not(:has(.et_pb_post_filter__item-option input:checked)) .et_pb_button.et_pb_post_filter__item-control-reset{background:var(--bh-olive-d)!important;border-color:var(--bh-olive-d)!important;color:var(--bh-white)!important}
.bh-shop-filter .et_pb_post_filter__item-option input:focus-visible+label{outline:3px solid var(--bh-olive-d);outline-offset:3px}
.bh-shop-filter select.et_pb_post_filter__item-control{height:40px;min-width:180px;padding:0 40px 0 18px!important;border:1px solid var(--bh-line)!important;border-radius:999px!important;background-color:var(--bh-white)!important;color:var(--bh-ink)!important;font-size:14px!important}
@media (max-width:767px){.bh-shop-filter .et_pb_post_filter_item[data-type=orderby]{margin-left:0!important;width:100%!important}.bh-shop-filter select.et_pb_post_filter__item-control{flex:1}}
/* Product page trail (Woo Breadcrumb module): small, muted, links in the palette */
.bh-crumb,.bh-crumb a{font-size:13px;letter-spacing:.04em;color:var(--bh-ink-s)!important}
.bh-crumb a:hover{color:var(--bh-olive-d)!important}
/* Product variations (Farge / Størrelse): labels left-aligned above-left of the dropdowns, calm weight */
.bh-woo table.variations th,.bh-woo table.variations td{display:block;padding:0!important;text-align:left!important;border:0!important}
.bh-woo table.variations th label{font-weight:500;font-size:14px;color:var(--bh-ink)}
.bh-woo table.variations tr{display:block;margin-bottom:14px}
.bh-woo table.variations select{width:100%;max-width:320px}
.bh-woo .reset_variations{font-size:13px;color:var(--bh-ink-s)}
/* Divi re-sets the Woo add-to-cart padding to 0.3em 1em (!important, button and :hover) when the button icon is off,
   after the module's own padding. Restore the Briis button padding so it matches every other primary button. */
.et-db #et-boc .et-l .bh-woo .single_add_to_cart_button.button,.et-db #et-boc .et-l .bh-woo .single_add_to_cart_button.button:hover{padding:var(--gvid-dzatyzdltf,14px) var(--gvid-xbazcw8qn5,28px)!important;line-height:1.7!important}
.bh-woo .quantity input.qty{min-width:72px;text-align:center}
.bh-shop-filter .et_pb_post_filter_item[data-type=radio]{flex:0 1 auto!important;min-width:0}

/* ---- Nettbutikk round 2 (2026-10-20) ---- */
/* Whole product card is the link: the inner text group must not become the containing block of the stretched link */
.bh-product .et_pb_group{position:static!important}
/* "Passer sammen med" (Woo upsell module): same card as the shop grid. The module has no card/outline options. */
.bh-upsells h2{font-family:var(--et_global_heading_font);font-weight:300;font-size:30px;line-height:1.2;color:var(--bh-ink);margin:0 0 24px;padding:0}
.bh-upsells ul.products{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0!important;padding:0!important}
.bh-upsells ul.products::before,.bh-upsells ul.products::after{display:none!important}
.bh-upsells ul.products li.product{width:auto!important;margin:0!important;padding:0!important;float:none!important;clear:none!important;position:relative;background:var(--bh-white);border:1px solid var(--bh-olive);border-radius:12px;overflow:hidden;transition:transform .25s ease,box-shadow .25s ease}
.bh-upsells ul.products li.product:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(42,38,32,.12)}
.bh-upsells ul.products li.product:has(:focus-visible){outline:3px solid var(--bh-olive-d);outline-offset:3px}
.bh-upsells li.product a{text-decoration:none!important}
.bh-upsells li.product a:focus-visible{outline:none!important}
.bh-upsells li.product .et_shop_image{display:block;margin:0!important}
.bh-upsells li.product .et_shop_image img{display:block;width:100%;margin:0!important;border:0!important;border-radius:0!important}
.bh-upsells li.product .et_overlay{display:none!important}
.bh-upsells li.product .woocommerce-loop-product__title{padding:24px 24px 4px!important;margin:0!important;font-family:var(--et_global_heading_font);font-size:18px!important;font-weight:500;line-height:1.3;color:var(--bh-forest)!important}
.bh-upsells li.product .price{display:block;padding:0 24px 24px;margin:0!important;font-size:14px!important;color:var(--bh-ink-s)!important}
@media (max-width:767px){.bh-upsells ul.products{grid-template-columns:repeat(2,minmax(0,1fr))}.bh-upsells li.product .woocommerce-loop-product__title{padding:16px 16px 4px!important}.bh-upsells li.product .price{padding:0 16px 16px}}
/* Product gallery: variant thumbnails left of the main photo. Divi's Product Images module sets the thumbnail grid (1 column) natively but has no position option. Phone keeps them below. */
@media (min-width:768px){
.bh-woo .woocommerce-product-gallery{display:grid!important;grid-template-columns:88px minmax(0,1fr);column-gap:16px;align-items:start}
.bh-woo .woocommerce-product-gallery .flex-viewport,.bh-woo .woocommerce-product-gallery>.woocommerce-product-gallery__wrapper{grid-column:2;grid-row:1}
.bh-woo .woocommerce-product-gallery .flex-control-thumbs{grid-column:1;grid-row:1;margin:0!important;padding:0!important}
}
.bh-woo .flex-control-thumbs img{cursor:pointer;opacity:.6;transition:opacity .2s ease}
.bh-woo .flex-control-thumbs img.flex-active,.bh-woo .flex-control-thumbs img:hover{opacity:1}
/* Divi/Woo set phone widths on upsell items with !important (48 %); the grid decides the width here */
.bh-upsells.et_pb_wc_upsells ul.products li.product:nth-child(n){width:auto!important;max-width:none!important;margin:0!important;float:none!important;clear:none!important}
.bh-upsells.et_pb_wc_upsells li.product .price,.bh-upsells.et_pb_wc_upsells li.product .price .amount,.bh-upsells.et_pb_wc_upsells li.product .price bdi{color:var(--bh-ink-s)!important}

/* ---- Nettbutikk round 3 (2026-10-20) ---- */
/* Dropdowns: Divi draws its own arrow, so drop the browser's (was a double arrow) */
.bh-woo select{-webkit-appearance:none!important;-moz-appearance:none!important;appearance:none!important}
/* Quantity: Divi's wrapper clipped the focus ring */
.bh-woo .quantity{overflow:visible!important}
.bh-woo .quantity input.qty:focus-visible{outline:3px solid var(--bh-olive-d)!important;outline-offset:3px!important;border-radius:999px!important}
/* Variation Swatches for WooCommerce: Briis skin. Colour = round swatch with a ring when chosen; size = pill like the shop filter */
.bh-woo table.variations th label{margin:0!important}
.bh-woo .woo-selected-variation-item-name{font-weight:400;color:var(--bh-ink-s);margin-left:0}
.bh-woo .variable-items-wrapper{display:flex!important;flex-wrap:wrap;gap:10px;margin:8px 0 0!important;padding:0!important}
.bh-woo .variable-items-wrapper .variable-item{margin:0!important;background:var(--bh-white)!important;box-shadow:0 0 0 1px var(--bh-line)!important;transition:box-shadow .2s ease,background-color .2s ease,color .2s ease}
.bh-woo .variable-items-wrapper .variable-item:not(.disabled):hover{box-shadow:0 0 0 1px var(--bh-olive)!important}
.bh-woo .variable-items-wrapper .variable-item.selected,.bh-woo .variable-items-wrapper .variable-item.selected:hover{box-shadow:0 0 0 2px var(--bh-olive-d)!important}
.bh-woo .variable-items-wrapper .variable-item:focus-visible{border-radius:999px!important}
.bh-woo .color-variable-item{width:36px!important;height:36px!important;padding:3px!important;border-radius:50%!important}
.bh-woo .color-variable-item .variable-item-span-color{border-radius:50%!important}
.bh-woo .color-variable-item.selected .variable-item-contents::before{display:none!important}
.bh-woo .button-variable-item{width:auto!important;min-width:0!important;height:40px!important;padding:0 18px!important;border-radius:999px!important}
.bh-woo .button-variable-item .variable-item-contents,.bh-woo .button-variable-item .variable-item-span{width:auto!important;overflow:visible!important;text-overflow:clip}
.bh-woo .button-variable-item .variable-item-span{font-size:14px!important;line-height:1!important;white-space:nowrap;padding:0!important;color:var(--bh-ink)}
.bh-woo .button-variable-item.selected,.bh-woo .button-variable-item.selected:hover{background:var(--bh-olive-d)!important;box-shadow:0 0 0 1px var(--bh-olive-d)!important}
.bh-woo .button-variable-item.selected .variable-item-span{color:var(--bh-white)!important}
/* Footer credit: "Design og utvikling av [khaki_logo]" (shortcode from the Khaki white-label mu-plugin) – logo on the text's centre line, no hover effect (Khaki rule) */
.bh-credit p{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0}
.bh-credit .khaki-logo img{display:block;height:auto}

/* ---- Nettbutikk round 4 (2026-10-20): WooCommerce notices + cart ---- */
/* Notices ("lagt til i handlekurven", errors, info). WooCommerce prints them above the Divi layout on product pages,
   so they get the content column's width ("Innhold – maks bredde") and a white Briis card here; the same look applies inside the cart's notice module. */
.woocommerce-notices-wrapper:not(:empty){width:90%;max-width:var(--gvid-4a28707d-1005-4ed9-a820-bd48a0d4dea1,1200px);margin:24px auto 0}
.et_pb_wc_cart_notice .woocommerce-notices-wrapper:not(:empty){width:auto;max-width:none;margin:0 0 24px}
.woocommerce-message,.woocommerce-info,.woocommerce-error{display:flex!important;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 20px;margin:0 0 12px!important;padding:14px 16px 14px 24px!important;background:var(--bh-white)!important;color:var(--bh-ink)!important;border:1px solid var(--bh-olive)!important;border-radius:12px!important;box-shadow:none!important;font-size:15px!important;line-height:1.5!important}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{display:none!important}
.woocommerce-message::after,.woocommerce-info::after{display:none!important}
.woocommerce-error{border-color:var(--bh-olive-d)!important;list-style:none!important}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-message a.button:hover,.woocommerce-info a.button:hover{order:2;margin:0 0 0 auto!important;padding:10px 22px!important;border:1px solid var(--bh-olive-d)!important;border-radius:999px!important;background:transparent!important;color:var(--bh-olive-d)!important;font-size:14px!important;font-weight:500!important;line-height:1.4!important;letter-spacing:.02em!important;transition:background-color .2s ease,color .2s ease}
.woocommerce-message .button:hover,.woocommerce-info .button:hover{background:var(--bh-olive-d)!important;color:var(--bh-white)!important}
.woocommerce-message .button::after,.woocommerce-info .button::after{display:none!important}
/* Cart: thumbnail, remove link, buttons that Divi re-pads when their icon is off */
.bh-cart td.product-thumbnail img{width:64px!important;height:64px!important;object-fit:cover;border-radius:8px}
.bh-cart td.product-name a{color:var(--bh-ink)!important;text-decoration:none}
.bh-cart td.product-name a:hover{color:var(--bh-olive-d)!important}
.bh-cart a.remove:hover{background:transparent!important;color:var(--bh-forest)!important}
.et-db #et-boc .et-l .bh-cart .button.button,.et-db #et-boc .et-l .bh-cart .button.button:hover,.et-db #et-boc .et-l .bh-cart-totals .button.button,.et-db #et-boc .et-l .bh-cart-totals .button.button:hover{padding:var(--gvid-dzatyzdltf,14px) var(--gvid-xbazcw8qn5,28px)!important;line-height:1.7!important}
.bh-cart .coupon .input-text{min-width:200px}
.bh-cart-totals .shop_table td,.bh-cart-totals .shop_table th{vertical-align:top}
.bh-cart-totals ul#shipping_method{margin:0!important;padding:0!important}
.bh-cart .button:disabled,.bh-cart .button[disabled],.bh-cart .button:disabled:hover{opacity:.45!important;cursor:default;background:transparent!important;color:var(--bh-olive-d)!important;font-size:15px!important}
/* Phone cart: WooCommerce stripes every other product grey while Divi gives the labels a white background – keep every cell plain white */
@media (max-width:767px){.bh-cart table.shop_table_responsive tr td,.bh-cart table.shop_table_responsive tr:nth-child(2n) td,.bh-cart table.shop_table_responsive tr td::before{background:transparent!important}.bh-cart table.shop_table_responsive tr.cart_item td.product-remove{border-top:1px solid var(--bh-olive)!important}.bh-cart table.shop_table_responsive tr.cart_item:first-child td.product-remove{border-top:0!important}}
.bh-cart-totals table.shop_table tr td,.bh-cart-totals table.shop_table tr th,.bh-cart-totals table.shop_table tr td::before{background:transparent!important}

/* ---- Checkout (2026-10-20) ---- */
/* Divi's notice module beats the shared notice card on the login/coupon toggles: same card here */
.et-db #et-boc .et-l .woocommerce-form-login-toggle .woocommerce-info,.et-db #et-boc .et-l .woocommerce-form-coupon-toggle .woocommerce-info{background:var(--bh-white)!important;border:1px solid var(--bh-olive)!important;border-radius:12px!important;color:var(--bh-ink)!important;padding:14px 24px!important}
.woocommerce-form-login-toggle .woocommerce-info a,.woocommerce-form-coupon-toggle .woocommerce-info a{color:var(--bh-olive-d)!important;text-decoration:underline}
/* Payment card: the module is the white card (native), WooCommerce's own grey panel goes */
.bh-checkout #payment,.bh-checkout #payment .place-order{background:transparent!important;padding:0!important;border-radius:0!important}
.bh-checkout #payment .place-order{display:block}
.bh-checkout #payment .woocommerce-terms-and-conditions-wrapper{margin:0 0 16px!important}
.bh-checkout .woocommerce-privacy-policy-text p{font-size:14px;color:var(--bh-ink-s);margin:0}
.bh-checkout .woocommerce-terms-and-conditions-wrapper a,.bh-checkout .woocommerce-privacy-policy-text a{color:var(--bh-olive-d)!important;text-decoration:underline}
.bh-checkout input[type=checkbox]{accent-color:var(--bh-olive-d);width:18px;height:18px;margin:0 8px 0 0!important;vertical-align:-3px}
.bh-checkout #place_order{width:100%;float:none!important;margin:0!important}
/* Fixed country (Norway only) reads as plain text, not a tiny box */
.bh-checkout #billing_country_field .woocommerce-input-wrapper strong{display:block;padding:4px 0;font-weight:400;color:var(--bh-ink);border:0!important;background:none!important;font-size:15px}
/* Order notes: a pill does not fit a multi-line field */
.bh-checkout textarea{border-radius:12px!important;min-height:120px}
.bh-checkout .form-row label{font-size:14px;font-weight:500;color:var(--bh-ink)}
.bh-checkout .form-row .required{color:var(--bh-olive-d)!important;text-decoration:none}
.bh-checkout #payment .place-order{margin:0!important}
.bh-checkout #payment .place-order>noscript,.bh-checkout #payment .place-order>.woocommerce-form-row:empty{display:none!important}
.et_pb_wc_checkout_payment_info form.checkout{margin:0!important;padding:0!important}
.et_pb_wc_checkout_payment_info #order_review{margin:0!important;padding:0!important}
/* Norway is the only country: show it as plain text (WooCommerce prints a one-option select) */
.bh-checkout select.country_to_state--single{-webkit-appearance:none!important;appearance:none!important;border:0!important;background:none!important;padding:4px 0!important;height:auto!important;font-size:15px!important;color:var(--bh-ink)!important;pointer-events:none;box-shadow:none!important}
.bh-checkout #payment .place-order::before,.bh-checkout #payment .place-order::after{display:none!important}
.bh-checkout #payment .vipps-classic-checkout-container:empty{display:none!important}
.et_pb_wc_checkout_payment_info #customer_details{margin:0!important;padding:0!important;min-height:0!important;height:0!important;overflow:hidden}
.bh-checkout #billing_country_field .woocommerce-input-wrapper,.bh-checkout select.country_to_state--single{display:block;width:100%}

/* 1.4.0 (2026-10-28) membership refocus */
/* Divi Pixel Pricing Table (Medlemskap): the module has no price-font setting (plugin CSS sets 80px); buttons share the bottom line */
.bh-tier{display:flex;flex-direction:column;text-align:center}
.bh-tier>.dipi-pt-item--Button{margin-top:auto;padding-top:14px}
.bh-tier .dipi-pt-price{font-size:clamp(28px,2.4vw,36px);line-height:1.15em;font-weight:300;font-family:var(--et_global_heading_font),sans-serif;color:var(--bh-ink)}
.bh-tier--hi .dipi-pt-price{color:#fff}
.bh-tier .dipi-pt-feature{justify-content:center}
/* 2026-11-04: struck-through ordinary price above the intro price, small line under the price; PT/pool price cards */
.bh-tier .bh-tier-was{margin:0;font-size:15px;line-height:1.3;opacity:.75}
.bh-tier .bh-tier-was del{text-decoration-thickness:1px}
.bh-tier .bh-tier-sub{margin:0;font-size:14px;line-height:1.45;opacity:.85}
.bh-tier .bh-tier-was-wrap{margin-bottom:-10px}
.bh-price p{margin:0;font-family:var(--et_global_heading_font),sans-serif;font-weight:300;font-size:clamp(24px,2vw,28px);line-height:1.2;color:var(--bh-ink)}
/* Google Maps behind consent (see includes-frontend.php) */
.bh-map .et_pb_map_container,.et_pb_map_container.bh-map{position:relative}
.bh-map-consent{position:absolute;inset:0;z-index:2;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;padding:20px;text-align:center;background:var(--bh-krem);font-size:14px;line-height:1.5}
.bh-map-consent p{margin:0;padding:0}
.bh-map-consent button{font:inherit;font-weight:500;color:#fff;background:var(--bh-olive-d);border:1px solid var(--bh-olive-d);border-radius:999px;padding:8px 20px;cursor:pointer;margin-right:12px}
.bh-map-consent button:hover{background:var(--bh-forest);border-color:var(--bh-forest)}
.bh-map-consent a{color:var(--bh-ink)}
/* "Ledig lokale" card on På huset: dashed outline */
.bh-card--open{border-style:dashed!important;background:transparent!important}
/* 1.4.1: Klinikken people cards, two per row: photo column 36 %, text beside it (stacked on phone) */
.bh-card--wide{display:grid!important;grid-template-columns:36% minmax(0,1fr);column-gap:24px;align-items:start}
.bh-card--wide>*{width:auto!important;max-width:none!important;min-width:0}
@media (max-width:767px){.bh-card--wide{grid-template-columns:minmax(0,1fr);row-gap:16px}}
/* 1.4.2 (#page-container, because Divi sets the header background and button colours with !important at higher specificity): a page whose hero carries .bh-hero--under-header (Stjørdal front page) shows the header transparent over the hero,
   with white logo, menu and button, until the header sticks on scroll (Divi adds .et_pb_sticky) */
/* 1.4.3: the switch from transparent to beige fades over .6s; button hover keeps Divi's quick .16s */
body:has(.bh-hero--under-header) .bh-header{transition:background-color .6s ease,border-color .6s ease}
body:has(.bh-hero--under-header) .bh-header :is(.bh-logo img,.bh-loc,.bh-loc a,.bh-mainnav .bh-nav,.bh-mainnav .bh-nav a,.bh-mainnav .bh-nav .et_pb_link_text,.bh-burger,.bh-burger a){transition:color .6s ease,filter .6s ease}
body:has(.bh-hero--under-header) #page-container .bh-header .et_pb_button{transition:background-color .6s ease,border-color .6s ease,color .6s ease!important}
body:has(.bh-hero--under-header) #page-container .bh-header .et_pb_button:hover{transition-duration:.16s!important}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky){background-color:transparent!important;border-bottom-color:transparent!important}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-logo img{filter:brightness(0) invert(1)}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-loc,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-loc a,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-mainnav .bh-nav,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-mainnav .bh-nav a,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-mainnav .bh-nav .et_pb_link_text,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-burger,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-burger a,
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-burger .et_pb_link_text{color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .et_pb_button{background-color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important;border-color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important;color:var(--gcid-heading-color)!important}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .et_pb_button:hover{background-color:transparent!important;border-color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important;color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important}
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) .bh-brand:has(:focus-visible),
body:has(.bh-hero--under-header) #page-container .bh-header:not(.et_pb_sticky) a:focus-visible{outline-color:var(--gcid-9df57f5d-de26-4314-addc-6634f956e090,#fff)!important}

/* ---- Nettbutikk 1.6.0 (2026-11-04) ---- */
/* Sale badge («Tilbud!»): Woo's default is orange and sat on the thumbnail column. Palette pill on the main photo. */
body.woocommerce .bh-woo span.onsale,body.woocommerce .bh-upsells span.onsale{background:var(--bh-olive-d)!important;color:var(--bh-white)!important;border-radius:999px!important;padding:6px 14px!important;min-width:0!important;min-height:0!important;font-size:13px!important;font-weight:500!important;line-height:1.4!important;letter-spacing:.02em;top:16px!important;left:16px!important;right:auto!important;z-index:3}
@media (min-width:768px){body.woocommerce .bh-woo .et_pb_wc_images span.onsale{left:120px!important}}
/* Catalogue mode (option briis_shop_open off): no quantity or buy button, the note takes their place */
.briis-shop-closed .bh-woo form.cart .quantity,.briis-shop-closed .bh-woo form.cart .single_add_to_cart_button{display:none!important}
.bh-shop-closed-note{flex-basis:100%;margin:0!important;padding:0!important;font-weight:500;color:var(--bh-forest)}
