/* ==========================================================================
   No Limit Obedience – global.css
   Endast det Bricks native-inställningar INTE kan uttrycka:
   hover, transitions, gradient, vridning, alpha-skuggor och grid-spann.
   Allt annat (typografi, färg, spacing, layout, ramar, radie) ligger som
   native settings på de globala nlo-klasserna i Bricks.
   ========================================================================== */

/* ---- Grund ----------------------------------------------------------------- */
/* clip i stället för hidden – hidden gör body till scrollbehållare och stoppar sticky. */
html, body { overflow-x: clip; }
body { background: #ffffff; }
html { scroll-behavior: smooth; scroll-padding-top: 140px; }

::selection      { background: #DD9933; color: #fff; }
::-moz-selection { background: #DD9933; color: #fff; }

/* ---- Knappar (theme style-varianter): mjuk hover ---------------------------- */
.brxe-button { transition: filter .15s ease, transform .15s ease; }
.brxe-button:hover { filter: brightness(0.94); }

/* ---- Bildkort: mörk toning nertill + zoom på hover -------------------------- */
.nlo-photo-shade { background: linear-gradient(to top, rgba(0,0,0,0.65), rgba(0,0,0,0) 60%); pointer-events: none; }
.nlo-card-photo .nlo-photo-fill { transition: transform .5s ease; }
.nlo-card-photo:hover .nlo-photo-fill { transform: scale(1.04); }
.nlo-card-photo, .nlo-card-photo:hover { color: #fff; text-decoration: none; }

/* ---- Kort: lyft på hover --------------------------------------------------- */
.nlo-card-teal, .nlo-card-orange, .nlo-product-card { transition: transform .18s ease, box-shadow .18s ease; }
.nlo-card-teal:hover, .nlo-card-orange:hover, .nlo-product-card:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(0,0,0,0.12); }
a.nlo-card-teal, a.nlo-card-orange, a.nlo-product-card { text-decoration: none; }

/* ---- Bento: spann per ruta (grid-spann saknar säker Bricks-kontroll) -------- */
.nlo-bento > * { min-height: 260px; }
.nlo-bento > .nlo-bento__big  { grid-column: span 2; grid-row: span 2; }
.nlo-bento > .nlo-bento__wide { grid-column: span 2; }
@media (max-width: 478px) {
  .nlo-bento > .nlo-bento__big, .nlo-bento > .nlo-bento__wide { grid-column: auto; grid-row: auto; }
}

/* ---- Etikett på bild: lätt vriden ------------------------------------------ */
.nlo-sticker { transform: rotate(-3deg); }
.nlo-sticker.nlo-sticker--right { transform: rotate(3deg); }
.nlo-price-sticker { transform: rotate(-10deg); }

/* ---- Header: hela header-zonen klistrad (sticky på sektion inne i #brx-header fungerar inte) */
#brx-header { position: sticky; top: 0; z-index: 100; }
.nlo-topbar-link { transition: opacity .15s ease; }
.nlo-topbar-link:hover { opacity: .8; color: #fff; }
.nlo-nav-link, .nlo-nav .brx-submenu-toggle { transition: color .15s ease; }
.nlo-nav-link:hover, .nlo-nav-link[aria-current="page"], .nlo-nav .brx-submenu-toggle:hover { color: #137377; }

/* Dropdown-panelen (styling på Bricks interna del läggs här, aldrig layout via JSON) */
.nlo-nav .brx-dropdown-content {
  min-width: 260px; padding: 10px 0; background: #fff;
  border-radius: 20px; border: 1px solid #EDE6DC;
  box-shadow: 0 18px 40px rgba(0,0,0,0.12);
}
.nlo-nav-sublink { display: block; transition: background .15s ease, color .15s ease; }
.nlo-nav-sublink:hover { background: #E6F4F4; color: #137377; }

/* Ikonknappar: sök, konto, varukorg ärver mörk färg */
.nlo-icon-btn, .nlo-icon-btn svg, .nlo-icon-btn i { color: #1F1F1F; fill: none; }
.nlo-icon-btn:hover { color: #137377; }

/* Drawer: länkarna får aldrig brytas till en andra kolumn (KB 09) */
.nlo-drawer .brx-offcanvas-inner { flex-wrap: nowrap; overflow-y: auto; }
.nlo-drawer .brx-offcanvas-inner > * { flex-shrink: 0; }
.nlo-drawer .brx-offcanvas-backdrop { background: rgba(31,31,31,0.45); }

/* ---- Footer: nyhetsbrev ----------------------------------------------------- */
.nlo-newsletter label, .nlo-newsletter .label { text-transform: none; letter-spacing: 0; }
.nlo-newsletter input[type="email"] { min-height: 52px; padding: 0 20px; }
.nlo-newsletter .bricks-button { min-height: 52px; padding: 0 32px; border-radius: 999px; }
@media (max-width: 600px) { .nlo-newsletter .form-group:not(.submit-button-wrapper) { width: 100% !important; } }

/* ---- Startsida: bloggens första inlägg tar tre rader bredvid listan --------- */
/* Slingans div har display:contents, därför ättlingselektor (inte >) */
.nlo-blog-grid .nlo-blog-big { grid-row: span 4; }
@media (max-width: 991px) { .nlo-blog-grid .nlo-blog-big { grid-row: auto; } }

/* ---- Produktkarusell: runda pilar ------------------------------------------ */

/* ---- Länkar i text ---------------------------------------------------------- */
.nlo-link-arrow { text-decoration: none; transition: gap .15s ease; }
.nlo-link-arrow:hover { gap: 12px; }

/* ---- Footer: länk i integritetsraden ärver inte färg (KB 12) ---- */
.nlo-consent a { color: #fff; text-decoration: none; font-weight: 700; }
.nlo-footer-link { transition: opacity .15s ease; }
.nlo-footer-link:hover { opacity: .8; color: #fff; }

/* ---- Länkar: hover (theme style saknar hover-kontroll, KB 12) ---- */
.brxe-text a:hover, .brxe-text-basic a:hover, .brxe-post-content a:hover { color: #0E5558; }

/* ---- Header: byte desktop → mobil vid 1199 px (dubblerad selektor slår .brxe-section) ---- */
.nlo-header-mobile.nlo-header-mobile { display: none; }
.nlo-header-desktop.nlo-header-desktop { display: flex; }
@media (max-width: 1199px) {
  .nlo-header-desktop.nlo-header-desktop { display: none; }
  .nlo-header-mobile.nlo-header-mobile { display: flex; }
}

/* ---- Landningssida ---------------------------------------------------------- */
.nlo-photo-shade-side { background: linear-gradient(to right, rgba(0,0,0,0.6), rgba(0,0,0,0) 65%); pointer-events: none; }
@media (max-width: 767px) { .nlo-photo-shade-side { background: linear-gradient(to top, rgba(0,0,0,0.7), rgba(0,0,0,0.1) 75%); } }
.nlo-shade-50 { pointer-events: none; }
.nlo-btn-ghost-light:hover { background: rgba(255,255,255,0.12); color: #fff; }
/* Mittenpaketet lyfts lite på dator */
@media (min-width: 992px) { .nlo-plan-featured { transform: translateY(-12px); } }
.nlo-plans { padding-top: 16px; } /* plats för etiketten ovanför kortet */
/* Pris: ordinarie pris mindre och överstruket, ärver kortets färg */
.nlo-plan-price .amount, .nlo-plan-price ins, .nlo-plan-price del { color: inherit; }
.nlo-plan-price ins { text-decoration: none; }
.nlo-plan-price del { font-family: 'Sen', sans-serif; font-size: 16px; font-weight: 400; letter-spacing: 0; opacity: .85; margin-right: 10px; }
.nlo-price-card .nlo-plan-price del { font-size: 13px; }
/* FAQ: öppen fråga blir turkos med vit text, plus blir minus (ikonen byts, ingen vridning) */
.nlo-faq-item { transition: background .15s ease; }
.nlo-faq .brx-open.nlo-faq-item, .nlo-faq .nlo-faq-item.brx-open { background: #1B979B; }
.nlo-faq .brx-open .nlo-faq-q { color: #fff; }
.nlo-faq .brx-open .nlo-faq-sign { background: #fff; color: #137377; }
.nlo-faq .nlo-faq-sign, .nlo-faq .brx-open .nlo-faq-sign { transform: none; }
.nlo-faq-title { cursor: pointer; }
/* Citat/omdömen: nollställ temats blockquote- och figure-stil */
.nlo-reviews blockquote, blockquote.nlo-quote { border: 0; padding-left: 0; margin-left: 0; margin-right: 0; font-style: normal; quotes: none; }
blockquote.nlo-quote { padding: 32px 36px; }
@media (max-width: 478px) { blockquote.nlo-quote { padding: 24px; } }
.nlo-reviews figure, .nlo-reviews figcaption { text-align: left; }

/* ---- Kontakt: formulär (KB 13: etiketter versaler som standard, radio som chips) ---- */
.nlo-contact-form label, .nlo-contact-form .label { text-transform: none; letter-spacing: 0; }
.nlo-contact-form input[type="text"], .nlo-contact-form input[type="email"], .nlo-contact-form input[type="url"] { min-height: 52px; padding: 0 20px; border-radius: 999px; }
.nlo-contact-form textarea { padding: 16px 20px; }
.nlo-contact-form [role="radiogroup"] .options-wrapper { display: flex; flex-wrap: wrap; gap: 8px; padding: 0; margin: 4px 0 0; list-style: none; }
.nlo-contact-form [role="radiogroup"] .options-wrapper li { margin: 0; }
.nlo-contact-form [role="radiogroup"] input[type="radio"] { position: absolute; opacity: 0; width: 1px; height: 1px; }
.nlo-contact-form [role="radiogroup"] input[type="radio"] + label { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-size: 15px; font-weight: 700; cursor: pointer; transition: border-color .15s ease; }
.nlo-contact-form [role="radiogroup"] input[type="radio"] + label:hover { border-color: #1B979B; }
.nlo-contact-form [role="radiogroup"] input[type="radio"]:checked + label { border-color: #16757A; background: #16757A; color: #fff !important; }
.nlo-contact-form [role="radiogroup"] input[type="radio"]:focus-visible + label { outline: 2px solid #137377; outline-offset: 2px; }
.nlo-contact-form input[type="checkbox"] { width: 20px; height: 20px; accent-color: #1B979B; }
.nlo-contact-form .choose-files { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border: 2px solid #1B979B; border-radius: 999px; color: #137377; font-weight: 700; cursor: pointer; }
.nlo-contact-form .bricks-button { min-height: 56px; padding: 0 34px; border-radius: 999px; }
@media (max-width: 600px) { .nlo-contact-form .form-group:not(.submit-button-wrapper) { width: 100% !important; } }
.nlo-mail-card { transition: transform .18s ease, box-shadow .18s ease; text-decoration: none; }
.nlo-mail-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,0.12); color: #fff; }

/* ---- Egna ikoner (assets/icons): <i class="nlo-i nlo-i-namn">. Glyfen är en mask på ::before, så att
   själva <i> kan ha egen bakgrund/cirkel. Storlek = font-size (iconSize), färg = color (iconColor). ---- */
.nlo-i { display: inline-flex; align-items: center; justify-content: center; line-height: 1; font-style: normal; }
.nlo-i::before { content: ""; display: block; width: 1em; height: 1em; background-color: currentColor; -webkit-mask: var(--nlo-i) center / contain no-repeat; mask: var(--nlo-i) center / contain no-repeat; }
.nlo-i-ben { --nlo-i: url(../icons/nlo-ben.svg); }
.nlo-i-bock { --nlo-i: url(../icons/nlo-bock.svg); }
.nlo-i-bok { --nlo-i: url(../icons/nlo-bok.svg); }
.nlo-i-boll { --nlo-i: url(../icons/nlo-boll.svg); }
.nlo-i-chatt { --nlo-i: url(../icons/nlo-chatt.svg); }
.nlo-i-etikett { --nlo-i: url(../icons/nlo-etikett.svg); }
.nlo-i-film { --nlo-i: url(../icons/nlo-film.svg); }
.nlo-i-filter { --nlo-i: url(../icons/nlo-filter.svg); }
.nlo-i-godis { --nlo-i: url(../icons/nlo-godis.svg); }
.nlo-i-halsband { --nlo-i: url(../icons/nlo-halsband.svg); }
.nlo-i-hem { --nlo-i: url(../icons/nlo-hem.svg); }
.nlo-i-hund { --nlo-i: url(../icons/nlo-hund.svg); }
.nlo-i-hundkoja { --nlo-i: url(../icons/nlo-hundkoja.svg); }
.nlo-i-info { --nlo-i: url(../icons/nlo-info.svg); }
.nlo-i-kalender { --nlo-i: url(../icons/nlo-kalender.svg); }
.nlo-i-klocka { --nlo-i: url(../icons/nlo-klocka.svg); }
.nlo-i-konto { --nlo-i: url(../icons/nlo-konto.svg); }
.nlo-i-ladda-ner { --nlo-i: url(../icons/nlo-ladda-ner.svg); }
.nlo-i-las { --nlo-i: url(../icons/nlo-las.svg); }
.nlo-i-matskal { --nlo-i: url(../icons/nlo-matskal.svg); }
.nlo-i-mejl { --nlo-i: url(../icons/nlo-mejl.svg); }
.nlo-i-meny { --nlo-i: url(../icons/nlo-meny.svg); }
.nlo-i-minus { --nlo-i: url(../icons/nlo-minus.svg); }
.nlo-i-pil { --nlo-i: url(../icons/nlo-pil.svg); }
.nlo-i-plats { --nlo-i: url(../icons/nlo-plats.svg); }
.nlo-i-plus { --nlo-i: url(../icons/nlo-plus.svg); }
.nlo-i-pokal { --nlo-i: url(../icons/nlo-pokal.svg); }
.nlo-i-present { --nlo-i: url(../icons/nlo-present.svg); }
.nlo-i-sok { --nlo-i: url(../icons/nlo-sok.svg); }
.nlo-i-spela { --nlo-i: url(../icons/nlo-spela.svg); }
.nlo-i-stang { --nlo-i: url(../icons/nlo-stang.svg); }
.nlo-i-stjarna { --nlo-i: url(../icons/nlo-stjarna.svg); }
.nlo-i-tass { --nlo-i: url(../icons/nlo-tass.svg); }
.nlo-i-telefon { --nlo-i: url(../icons/nlo-telefon.svg); }
.nlo-i-tips { --nlo-i: url(../icons/nlo-tips.svg); }
.nlo-i-utbildning { --nlo-i: url(../icons/nlo-utbildning.svg); }
.nlo-i-varukorg { --nlo-i: url(../icons/nlo-varukorg.svg); }
.nlo-i-vattenskal { --nlo-i: url(../icons/nlo-vattenskal.svg); }
.nlo-i-hjarta { --nlo-i: url(../icons/nlo-hjarta.svg); }
.nlo-i-pil-upp { --nlo-i: url(../icons/nlo-pil.svg); }
.nlo-i-pil-upp::before { transform: rotate(-45deg); }
.nlo-faq .brx-open .nlo-faq-sign.nlo-i-plus { --nlo-i: url(../icons/nlo-minus.svg); }
/* ---- Produktkort med ram (arkiv på vit bakgrund): lyft + skugga på hover ---- */
.nlo-product-tile { transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.nlo-product-tile:hover { transform: translateY(-4px); box-shadow: 0 16px 36px rgba(0,0,0,0.12); border-color: #EDE6DC; }
@media (max-width: 478px) { .nlo-product-tile .nlo-h-card { font-size: 16px !important; } .nlo-product-tile .nlo-price { font-size: 14px !important; } .nlo-product-tile .nlo-icon-circle-sm, .nlo-product-tile .nlo-icon-circle-sm-teal { width: 38px; height: 38px; } }
/* Köpknappar: orange plus = läggs direkt i varukorgen, turkos pil = välj alternativ på produktsidan */
.nlo-add-btn, .nlo-icon-circle-sm-teal { transition: filter .15s ease, transform .15s ease; text-decoration: none; }
.nlo-add-btn:hover, .nlo-icon-circle-sm-teal:hover { filter: brightness(0.94); transform: scale(1.06); color: #fff; }
.nlo-add-btn.loading { opacity: .6; pointer-events: none; }
.nlo-add-btn.added { background: #1B979B; }
.nlo-add-btn.added .nlo-i-plus { --nlo-i: url(../icons/nlo-bock.svg); }
.nlo-add-btn.loading::after, .nlo-add-btn.added::after { display: none !important; } /* Woos egna laddnings-/bockikon */
a.added_to_cart.wc-forward { display: none; } /* Woos länk "Visa varukorg" bredvid knappen; minivarukorgen visar antalet */

/* ---- Produktarkiv: brödsmulor på bild, kategoriknappar med antal, sortering, sidnumrering ---- */
.nlo-crumbs-light, .nlo-crumbs-light a, .nlo-crumbs-light .woocommerce-breadcrumb { color: #fff; font-size: 14px; text-decoration: none; }
.nlo-crumbs-light a:hover { opacity: .8; color: #fff; }
.nlo-cat-filter .brx-filter-options { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nlo-cat-filter .bricks-button { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 8px 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; letter-spacing: 0; text-transform: none; cursor: pointer; }
.nlo-cat-filter .brx-option-count { min-width: 30px; height: 30px; padding: 0 6px; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center; background: #1B979B; color: #fff; font-size: 13px; }
.nlo-cat-filter li:first-child .bricks-button { padding-right: 20px; } /* "Alla" saknar antal */
.nlo-cat-filter .brx-option-active .bricks-button, .nlo-cat-filter .bricks-button.brx-option-active, .nlo-cat-filter input:checked + .bricks-button { border-color: #1B979B; background: #1B979B; color: #fff; }
.nlo-cat-filter .brx-option-active .brx-option-count, .nlo-cat-filter input:checked + .bricks-button .brx-option-count { background: #fff; color: #137377; }
.nlo-cat-filter input:focus-visible + .bricks-button { outline: 2px solid #137377; outline-offset: 2px; }
select.nlo-sort, .nlo-sort select { min-height: 46px; padding: 0 40px 0 16px; border: 2px solid #D9D0C4; border-radius: 999px; background-color: #fff; font-family: 'Sen', sans-serif; font-size: 15px; color: #1F1F1F; }
/* ul har också klassen page-numbers i Bricks utskrift, därför a/span i reglerna nedan */
.nlo-pagination ul.page-numbers, .nlo-pagination ul { display: flex; flex-wrap: wrap; justify-content: center; gap: 8px; width: auto; height: auto; padding: 0; margin: 0; border: 0; list-style: none; }
.nlo-pagination a.page-numbers, .nlo-pagination span.page-numbers { width: 48px; height: 48px; border-radius: 24px; border: 2px solid #D9D0C4; display: inline-flex; align-items: center; justify-content: center; font-weight: 700; color: #1F1F1F; text-decoration: none; }
.nlo-pagination span.page-numbers.current { background: #1B979B; border-color: #1B979B; color: #fff; }
.nlo-pagination a.page-numbers.next, .nlo-pagination a.page-numbers.prev { background: #DD9933; border-color: #DD9933; color: #fff; }
.nlo-pagination span.page-numbers.dots { border-color: transparent; }
.nlo-pagination a.page-numbers { transition: background .18s ease, border-color .18s ease, color .18s ease; }
.nlo-pagination a.page-numbers:hover { border-color: #1B979B; color: #137377; }
.nlo-pagination a.page-numbers.next:hover, .nlo-pagination a.page-numbers.prev:hover { background: #C47F1C; border-color: #C47F1C; color: #fff; }
/* Språkval på boklandning: kort lyfts på hover */
.nlo-lang-card, .nlo-lang-card-current { text-decoration: none; transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease; }
.nlo-lang-card:hover { transform: translateY(-3px); box-shadow: 0 12px 28px rgba(0,0,0,0.10); border-color: #1B979B; }
/* Kategoribeskrivning i produktarkivet (WooCommerce-text, kan innehålla stycken och länkar) */
.nlo-cat-desc { padding-top: 36px; font-family: 'Sen', sans-serif; font-size: 17px; line-height: 1.7; color: #1F1F1F; }
.nlo-cat-desc p { margin: 0 0 12px; }
.nlo-cat-desc p:last-child { margin-bottom: 0; }
.nlo-cat-desc a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-cat-desc a:hover { color: #0E5558; }
.nlo-lang-card .brxe-image img, .nlo-lang-card-current .brxe-image img { border-radius: 50%; box-shadow: 0 0 0 2px #fff, 0 1px 4px rgba(0,0,0,.15); }
.nlo-i-chevron { --nlo-i: url(../icons/nlo-chevron.svg); }
/* Brödsmulor på bild: chevron mellan länkarna */
.nlo-crumbs-light .separator { font-size: 14px; opacity: .85; }
/* Underrubrik i produktarkivets topp (fält på kategorin) */
.nlo-cat-kicker { font-family: 'Caveat', cursive; font-weight: 400; font-size: 26px; line-height: 1.2; color: #fff; }
/* Toppbild från kortkoden [nlo_kategoribild] fyller hela rutan */
.nlo-hero-photo .nlo-cat-hero-img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; }

/* ---- Produktsida ------------------------------------------------------------- */
.nlo-crumbs-dark, .nlo-crumbs-dark a { color: #137377; font-size: 14px; text-decoration: none; }
.nlo-crumbs-dark { color: #1F1F1F; }
.nlo-crumbs-dark a:hover { color: #0E5558; }
.nlo-crumbs-dark .separator { font-size: 14px; color: #4A433C; }
/* Galleri: rundad huvudbild och tumnaglar */
.nlo-gallery .woocommerce-product-gallery__image img, .nlo-gallery .flex-viewport { border-radius: 28px; }
.nlo-gallery .flex-control-thumbs li img { border-radius: 16px; border: 2px solid transparent; opacity: 1; }
.nlo-gallery .flex-control-thumbs li img.flex-active { border-color: #1B979B; }
.nlo-gallery .woocommerce-product-gallery__trigger { display: none; }
/* Pris och betyg */
.nlo-rating a { color: #137377; font-size: 14px; text-decoration: none; }
/* Text från WooCommerce (beskrivningar, flikar) */
.nlo-prose p { margin: 0 0 14px; }
.nlo-prose p:last-child { margin-bottom: 0; }
.nlo-prose a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-prose h2, .nlo-prose h3 { font-family: 'Gabarito', sans-serif; letter-spacing: -0.02em; margin: 24px 0 10px; }
.nlo-prose ul { padding-left: 20px; }
.nlo-prose iframe, .nlo-prose video { max-width: 100%; border-radius: 22px; }
/* Köpformulär: varianter, antal och knapp (KB 15: .quantity som pill) */
.nlo-buy form.cart { display: flex; flex-wrap: wrap; gap: 12px; align-items: stretch; margin: 0; }
.nlo-buy .variations { width: 100%; border: 0; margin: 0 0 4px; }
.nlo-buy .variations th, .nlo-buy .variations td { display: block; padding: 0 0 8px; text-align: left; border: 0; }
.nlo-buy .variations label { font-size: 14px; font-weight: 700; }
.nlo-buy .variations select { width: 100%; min-height: 52px; padding: 0 44px 0 18px; border: 2px solid #D9D0C4; border-radius: 999px; font-family: 'Sen', sans-serif; font-size: 16px; background-color: #fff; }
.nlo-buy .reset_variations { font-size: 14px; color: #137377; }
.nlo-buy .single_variation_wrap { width: 100%; display: flex; flex-direction: column; gap: 12px; }
.nlo-buy .woocommerce-variation-add-to-cart { display: flex; flex-wrap: wrap; gap: 12px; }
.nlo-buy .quantity { display: inline-flex; align-items: center; flex: none; min-height: 56px; padding: 0 6px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; }
.nlo-buy .quantity input.qty { width: 44px; border: 0; background: transparent; text-align: center; font-size: 17px; font-weight: 700; -moz-appearance: textfield; }
.nlo-buy .quantity input.qty::-webkit-inner-spin-button, .nlo-buy .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.nlo-buy .quantity .action { order: 3; width: 40px; height: 44px; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; color: #1F1F1F; }
.nlo-buy .quantity .action.minus { order: 1; }
.nlo-buy .quantity input.qty { order: 2; }
.nlo-buy .single_add_to_cart_button { flex: 1 1 220px; min-height: 56px; padding: 0 30px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-buy .single_add_to_cart_button:hover { filter: brightness(.94); }
.nlo-buy .single_add_to_cart_button.disabled { opacity: .5; }
.nlo-buy .stock { width: 100%; margin: 0; font-size: 14px; color: #137377; font-weight: 700; }
/* WPC-paket (woosb): biljettlista med antal per rad */
.nlo-buy .woosb-wrap { width: 100%; }
.nlo-buy .woosb-products { border: 0; }
.nlo-buy .woosb-products .woosb-item-text h4, .nlo-buy .woosb-item-text { font-family: 'Gabarito', sans-serif; font-size: 20px; margin: 18px 0 6px; }
.nlo-buy .woosb-products .woosb-product { display: flex; align-items: center; gap: 14px; padding: 12px 0; border-bottom: 1px solid #EDE6DC; }
.nlo-buy .woosb-products .woosb-thumb { display: none; }
.nlo-buy .woosb-products .woosb-title { flex: 1 1 auto; font-weight: 700; }
.nlo-buy .woosb-products .woosb-price { font-weight: 700; white-space: nowrap; }
.nlo-buy .woosb-total { margin: 14px 0 0; font-size: 17px; font-weight: 700; }
.nlo-buy .woosb-alert { font-size: 14px; color: #4A433C; }
/* Produktflikar (WooCommerce) som pillerknappar */
.nlo-product-tabs .woocommerce-tabs ul.tabs.wc-tabs { width: fit-content; max-width: 100%; display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 6px; margin: 0 0 32px; border: 2px solid #D9D0C4; border-radius: 999px; list-style: none; }
.nlo-product-tabs .woocommerce-tabs ul.tabs.wc-tabs::before, .nlo-product-tabs .woocommerce-tabs ul.tabs.wc-tabs::after { display: none; }
.nlo-product-tabs .wc-tabs li { margin: 0; padding: 0; border: 0; background: none; }
.nlo-product-tabs .wc-tabs li a { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border-radius: 999px; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; color: #1F1F1F; text-decoration: none; }
.nlo-product-tabs .wc-tabs li.active a { background: #1B979B; color: #fff; }
.nlo-product-tabs .woocommerce-Tabs-panel { max-width: 820px; font-size: 17px; line-height: 1.75; }
.nlo-product-tabs .woocommerce-Tabs-panel > h2:first-child { font-size: 32px; margin-top: 0; }
.nlo-product-tabs table.shop_attributes { border: 0; }
.nlo-product-tabs table.shop_attributes th { text-align: left; padding: 8px 32px 8px 0; font-weight: 700; }
.nlo-info-chip .nlo-i { flex-shrink: 0; }
/* Program i flikar (Bästa tränaren) */
.nlo-tabs .tab-menu { width: fit-content; max-width: 100%; display: inline-flex; flex-wrap: wrap; gap: 4px; padding: 6px; margin-bottom: 28px; border: 2px solid #D9D0C4; border-radius: 999px; }
.nlo-tabs .tab-title { min-height: 46px; padding: 0 24px; display: inline-flex; align-items: center; border-radius: 999px; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; color: #1F1F1F; cursor: pointer; }
.nlo-tabs .tab-title.brx-open { background: #1B979B; color: #fff; }
.nlo-tabs .tab-pane { max-width: 860px; }
.nlo-product-tabs .woocommerce-tabs .panel { border: 0; padding: 0; }
/* WPC-paket: dolt huvudantal (input type=hidden) ska inte synas som tom ruta */
.nlo-buy form.cart > .quantity:has(input[type="hidden"]) { display: none; }
/* Biljettrader: WPC:s egna minus/plus styr antalet (Bricks extraknappar döljs), allt i en liten pill */
.nlo-buy .woosb-quantity .quantity .action { display: none; }
.nlo-buy .woosb-quantity-input { display: inline-flex; align-items: center; min-height: 46px; padding: 0 4px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; }
.nlo-buy .woosb-quantity-input .quantity { min-height: 0; padding: 0; border: 0; background: transparent; }
.nlo-buy .woosb-quantity-input-minus, .nlo-buy .woosb-quantity-input-plus { width: 34px; height: 40px; display: inline-flex; align-items: center; justify-content: center; border: 0 !important; background: transparent !important; font-size: 20px; font-weight: 700; color: #1F1F1F; cursor: pointer; }
.nlo-buy .woosb-quantity-input input.qty { width: 32px; }
.nlo-buy .woosb-alert:empty { display: none; }

/* ---- Varukorg (WooCommerce klassiska tabell som kort per rad) ------------------ */
.nlo-steps { list-style: none; }
/* Tabellen görs om till ett kort per rad (flex), så ramen blir hel */
.nlo-cart-items table.shop_table, .nlo-cart-items table.shop_table tbody { display: block; width: 100%; border: 0; margin: 0; }
.nlo-cart-items table.shop_table tr.cart_item { display: flex; align-items: center; gap: 16px; padding: 14px 18px 14px 14px; margin-bottom: 14px; border: 0; border-radius: 24px; background: #F6F2EC; }
.nlo-cart-items table.shop_table tr.cart_item > * { display: block; border: 0; padding: 0; background: transparent; }
.nlo-cart-items .product-name { flex: 1 1 auto; min-width: 0; }
.nlo-cart-items td.product-remove { order: 9; }
.nlo-cart-items table.shop_table tr:not(.cart_item) { display: flex; justify-content: flex-end; }
.nlo-cart-items td.product-thumbnail img { width: 96px; height: 96px; object-fit: cover; border-radius: 18px; }
.nlo-cart-items .product-name a { font-family: 'Gabarito', sans-serif; font-weight: 700; font-size: 20px; color: #1F1F1F; text-decoration: none; line-height: 1.25; }
.nlo-cart-items .product-name a:hover { color: #137377; }
.nlo-cart-items .product-name dl.variation { margin: 6px 0 0; font-size: 14px; color: #4A433C; }
/* Produktinfo under namnet (leverans, variant m.m.) i varukorg, kassa och minivarukorg: rubrik fet, text vanlig och liten */
dl.variation { display: block; margin: 6px 0 0; font-size: 14px; line-height: 1.45; color: #4A433C; }
dl.variation dt { display: inline; float: none; clear: none; margin: 0 4px 0 0; padding: 0; font-weight: 700; color: #1F1F1F; }
dl.variation dd { display: inline; float: none; margin: 0; padding: 0; font-weight: 400; }
dl.variation dd::after { content: ""; display: block; height: 4px; }
dl.variation dd p { display: inline; margin: 0; font-size: inherit; font-weight: 400; line-height: inherit; }
.wc-item-meta { list-style: none; padding: 0; font-size: 14px; line-height: 1.45; }
.wc-item-meta li { margin: 4px 0 0; }
.wc-item-meta .wc-item-meta-label { font-weight: 700; }
.wc-item-meta p { display: inline; margin: 0; font-weight: 400; }
.nlo-cart-items td.product-subtotal { font-family: 'Gabarito', sans-serif; font-size: 20px; font-weight: 700; text-align: right; white-space: nowrap; }
.nlo-cart-items td.product-price { color: #4A433C; white-space: nowrap; }
.nlo-cart-items td.product-remove a.remove { width: 40px; height: 40px; border-radius: 999px; display: inline-flex; align-items: center; justify-content: center; color: #4A433C !important; font-size: 22px; text-decoration: none; }
.nlo-cart-items td.product-remove a.remove:hover { background: #F6E9D6; color: #1F1F1F !important; }
.nlo-cart-items .quantity { display: inline-flex; align-items: center; min-height: 46px; padding: 0 4px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; }
.nlo-cart-items .quantity input.qty { order: 2; width: 36px; border: 0; background: transparent; text-align: center; font-weight: 700; -moz-appearance: textfield; }
.nlo-cart-items .quantity input.qty::-webkit-inner-spin-button, .nlo-cart-items .quantity input.qty::-webkit-outer-spin-button { -webkit-appearance: none; margin: 0; }
.nlo-cart-items .quantity .action { order: 3; width: 34px; height: 40px; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.nlo-cart-items .quantity .action.minus { order: 1; }
.nlo-cart-items td.actions { border: 0 !important; background: transparent !important; padding: 0 !important; text-align: right; }
.nlo-cart-items td.actions .button { min-height: 46px; padding: 0 22px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-weight: 700; font-size: 13px; letter-spacing: .06em; text-transform: uppercase; }
/* Datorn: samma kolumner på alla rader, så att styckpris, antal och summa alltid står i linje längst till höger */
@media (min-width: 768px) {
  .nlo-cart-items table.shop_table tr.cart_item { display: grid; grid-template-columns: 96px minmax(0, 1fr) 96px 150px 110px 40px; column-gap: 16px; }
  .nlo-cart-items td.product-thumbnail { grid-column: 1; grid-row: 1; }
  .nlo-cart-items .product-name { grid-column: 2; grid-row: 1; }
  .nlo-cart-items td.product-price { grid-column: 3; grid-row: 1; text-align: right; }
  .nlo-cart-items td.product-quantity { grid-column: 4; grid-row: 1; display: flex !important; justify-content: center; }
  .nlo-cart-items td.product-subtotal { grid-column: 5; grid-row: 1; }
  .nlo-cart-items td.product-remove { grid-column: 6; grid-row: 1; text-align: right; }
}
@media (min-width: 768px) and (max-width: 1099px) {  .nlo-cart-items table.shop_table tr.cart_item { grid-template-columns: 80px minmax(0, 1fr) 140px 100px 32px; }  .nlo-cart-items td.product-thumbnail img { width: 80px; height: 80px; }  .nlo-cart-items td.product-price { display: none !important; }  .nlo-cart-items td.product-quantity { grid-column: 3; }  .nlo-cart-items td.product-subtotal { grid-column: 4; }  .nlo-cart-items td.product-remove { grid-column: 5; }}
@media (max-width: 767px) {
  .nlo-cart-items table.shop_table tr.cart_item { position: relative; display: grid; grid-template-columns: 84px 1fr; gap: 6px 14px; padding: 14px; margin-bottom: 12px; border: 0; border-radius: 22px; }
  .nlo-cart-items table.shop_table tr.cart_item > * { display: block; border: 0 !important; border-radius: 0 !important; padding: 0; background: transparent; text-align: left; }
  .nlo-cart-items table.shop_table tr.cart_item > ::before { display: none !important; content: none !important; }
  .nlo-cart-items td.product-thumbnail { grid-row: span 3; }
  .nlo-cart-items td.product-thumbnail img { width: 84px; height: 84px; }
  .nlo-cart-items td.product-remove { position: absolute; top: 8px; right: 8px; }
  .nlo-cart-items .product-name { padding-right: 36px !important; }
  .nlo-cart-items td.product-price { display: none !important; }
  .nlo-cart-items td.product-subtotal { text-align: left; }
}
/* Rabattkod */
.nlo-coupon input { min-height: 50px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; font-family: 'Sen', sans-serif; font-size: 16px; }
.nlo-coupon button, .nlo-coupon .button { min-height: 50px; padding: 0 24px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
/* Summering i turkos ruta */
.nlo-cart-totals, .nlo-cart-totals th, .nlo-cart-totals td, .nlo-cart-totals a { color: #fff; }
.nlo-cart-totals .cart_totals > h2 { display: none; }
.nlo-cart-totals table.shop_table { border: 0; margin: 0; width: 100%; }
.nlo-cart-totals table.shop_table th, .nlo-cart-totals table.shop_table td { border: 0; padding: 6px 0; background: transparent; font-weight: 400; font-size: 16px; }
.nlo-cart-totals table.shop_table td { text-align: right; }
.nlo-cart-totals tr.order-total th, .nlo-cart-totals tr.order-total td { padding-top: 16px; border-top: 1px solid rgba(255,255,255,.35); font-family: 'Gabarito', sans-serif; font-size: 26px; font-weight: 700; }
.nlo-cart-totals tr.order-total small, .nlo-cart-totals .includes_tax { display: block; font-family: 'Sen', sans-serif; font-size: 13px; font-weight: 400; opacity: .9; }
.nlo-cart-totals .woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; text-align: right; }
.nlo-cart-totals .woocommerce-shipping-destination, .nlo-cart-totals .shipping-calculator-button { font-size: 13px; opacity: .9; }
.nlo-cart-totals .wc-proceed-to-checkout { padding: 18px 0 0; }
.nlo-cart-totals .wc-proceed-to-checkout a.checkout-button { display: flex; align-items: center; justify-content: center; min-height: 58px; margin: 0; padding: 0 24px; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; }
.nlo-cart-totals .wc-proceed-to-checkout a.checkout-button:hover { filter: brightness(.94); }
/* WooCommerce meddelanden (KB 15: woocommerce-notice fungerar inte i mallar, styla Woos egna) */
.woocommerce-message, .woocommerce-info, .woocommerce-error { list-style: none; margin: 0 0 20px; padding: 16px 20px; border: 0; border-radius: 18px; background: #E6F4F4; color: #1F1F1F; font-size: 15px; }
.woocommerce-error { background: #FBEAE5; }
.woocommerce-message::before, .woocommerce-info::before, .woocommerce-error::before { display: none; }
.woocommerce-message .button, .woocommerce-info .button { float: right; color: #137377; font-weight: 700; background: none; border: 0; text-decoration: none; }
/* Fraktval i summeringen: vit text, radioknapp till höger om texten */
.nlo-cart-totals .woocommerce-shipping-methods li { display: flex; justify-content: flex-end; align-items: flex-start; gap: 8px; margin: 0 0 8px; text-align: right; }
.nlo-cart-totals .woocommerce-shipping-methods li input { order: 2; margin-top: 4px; accent-color: #DD9933; }
.nlo-cart-totals .woocommerce-shipping-methods li label, .nlo-cart-totals .woocommerce-shipping-methods li * { color: #fff !important; opacity: 1; }
.nlo-cart-totals .woocommerce-shipping-methods li p, .nlo-cart-totals .woocommerce-shipping-methods li .description { font-size: 13px; line-height: 1.45; margin: 4px 0 0; }
.nlo-cart-totals tr.woocommerce-shipping-totals th { vertical-align: top; }

/* ---- Produktsida: rättningar 2026-10-19 ---- */
/* Bricks standardram runt produktflikarna (strecken över och under) */
.nlo-product-tabs .woocommerce-tabs { border: 0; }
/* Stjärnor: WooCommerce-fonten behöver höjd 1em, bredd 5.4em, line-height 1 */
.nlo-rating { display: flex; align-items: center; gap: 10px; }
/* Mängdknappar: inga fyrkantiga ramar inne i pillen */
.nlo-buy .quantity .action, .nlo-cart-items .quantity .action { border: 0 !important; background: transparent !important; border-radius: 999px; }
.nlo-buy .quantity .action:hover, .nlo-cart-items .quantity .action:hover { background: #F2EDE6 !important; }
.nlo-buy .quantity input.qty, .nlo-cart-items .quantity input.qty { border: 0 !important; box-shadow: none; }
/* Costio mängdpris: samma uttryck som resten av sajten */
.costio-tiers { width: 100%; --costio-tier-active-bg: #E6F4F4; --costio-tier-active-color: #1F1F1F; --costio-tier-border: #EDE6DC; } /* Costios egna variabler */
.costio-tiers__table { width: 100%; border-collapse: separate; border-spacing: 0; border: 2px solid #EDE6DC; border-radius: 18px; overflow: hidden; margin: 0; font-size: 15px; }
.costio-tiers__table th, .costio-tiers__table td { padding: 10px 16px; border: 0; background: #fff; color: #1F1F1F; text-align: left; font-weight: 400; }
.costio-tiers__table thead th { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #137377; border-bottom: 1px solid #EDE6DC; }
.costio-tiers__table tbody tr + tr th, .costio-tiers__table tbody tr + tr td { border-top: 1px solid #EDE6DC; }
.costio-tiers__table tfoot th, .costio-tiers__table tfoot td { border-top: 1px solid #EDE6DC; font-weight: 700; }

/* ---- WooCommerce-meddelanden: sajtens bredd, jämn luft, ingen fokusram ---- */
.woocommerce-notices-wrapper.brxe-container, .woocommerce-notices-wrapper { width: 100%; max-width: 1280px; margin: 24px auto 0; padding: 0 24px; }
.woocommerce-notices-wrapper:empty { display: none; }
.woocommerce-notices-wrapper > *:last-child { margin-bottom: 0; }
.woocommerce-message, .woocommerce-info, .woocommerce-error { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px 16px; }
.woocommerce-message:focus, .woocommerce-info:focus, .woocommerce-error:focus, .woocommerce-message:focus-visible, .woocommerce-info:focus-visible { outline: none; }
.woocommerce-message a, .woocommerce-info a, .woocommerce-error a { color: #137377; font-weight: 700; text-decoration: none; }
.woocommerce-message .button, .woocommerce-info .button { float: none; order: 2; padding: 0; }
/* YITH presentkort ("Har du en presentkortskod?") i varukorg/kassa: samma bredd och luft som övriga meddelanden */
.ywgc_have_code, .ywgc_enter_code { width: 100%; max-width: 1280px; margin: 24px auto 0; padding: 0 24px; box-sizing: border-box; }
.ywgc_have_code .woocommerce-info { margin: 0; }
.ywgc_enter_code { display: flex; flex-wrap: wrap; gap: 12px; align-items: center; }
.ywgc_enter_code input[type="text"] { min-height: 50px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; font-family: 'Sen', sans-serif; font-size: 16px; }
.ywgc_enter_code button, .ywgc_enter_code .button { min-height: 50px; padding: 0 24px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }

/* ---- Kassa --------------------------------------------------------------------- */
/* Meddelanden överst (inloggning, rabattkod) och deras utfällbara formulär: sajtens bredd */
.woocommerce-form-login-toggle, .woocommerce-form-coupon-toggle, form.checkout_coupon, .woocommerce-checkout form.woocommerce-form-login.login { width: 100%; max-width: 1280px; margin: 16px auto 0; padding: 0 24px; box-sizing: border-box; }
.woocommerce-form-login-toggle .woocommerce-info, .woocommerce-form-coupon-toggle .woocommerce-info { margin: 0; }
form.checkout_coupon, .woocommerce-checkout form.woocommerce-form-login.login { display: flex; flex-wrap: wrap; gap: 12px; align-items: flex-end; border: 0; }
.woocommerce-form-login-toggle:first-child { margin-top: 24px; }
/* Fält: samma pill-fält som kontaktformuläret */
.nlo-checkout-fields h3 { font-family: 'Gabarito', sans-serif; font-size: 24px; font-weight: 700; letter-spacing: -0.02em; margin: 0 0 16px; }
.nlo-checkout-fields #ship-to-different-address label { display: flex; align-items: center; gap: 10px; cursor: pointer; }
.nlo-checkout-fields .woocommerce-billing-fields, .nlo-checkout-fields .woocommerce-shipping-fields, .nlo-checkout-fields .woocommerce-additional-fields { padding: 32px; margin: 0 0 20px; border: 0; background: #F6F2EC; border-radius: 28px; }
.nlo-checkout-fields .woocommerce-billing-fields__field-wrapper, .nlo-checkout-fields .woocommerce-shipping-fields__field-wrapper, .nlo-account .woocommerce-address-fields__field-wrapper { display: flow-root; }
@media (max-width: 478px) { .nlo-checkout-fields .woocommerce-billing-fields, .nlo-checkout-fields .woocommerce-shipping-fields, .nlo-checkout-fields .woocommerce-additional-fields { padding: 20px; } }
/* Cartio: stegen är redan sandfärgade rutor, så fälten får ingen egen ruta inuti (annars ruta i ruta och tom luft där leveransdelen är dold) */
.nlo-checkout-fields .cartio-step .woocommerce-billing-fields, .nlo-checkout-fields .cartio-step .woocommerce-shipping-fields, .nlo-checkout-fields .cartio-step .woocommerce-additional-fields { padding: 0; margin: 0 0 20px; background: none; border-radius: 0; }
.nlo-checkout-fields .cartio-step .woocommerce-shipping-fields:not(:has(*:not(input[type=hidden]))) { margin: 0; }
/* Cartio lägger betalsätt, villkor och "Lägg beställning" i steg 2 (vänsterkolumnen): samma stil som i Din order */
.nlo-checkout-fields .cartio-step #payment { background: transparent; border-radius: 0; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods { list-style: none; margin: 0 0 16px; padding: 0; border: 0; display: flex; flex-direction: column; gap: 10px; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods li { margin: 0; padding: 14px 18px; border: 2px solid #fff; border-radius: 22px; background: #fff; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods li:has(input:checked) { border-color: #1B979B; background: #E6F4F4; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods li label { font-weight: 700; cursor: pointer; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods li img { max-height: 24px; vertical-align: middle; margin-left: 6px; }
.nlo-checkout-fields .cartio-step #payment div.payment_box { margin: 10px 0 0; padding: 0; background: transparent; font-size: 14px; color: #4A433C; }
.nlo-checkout-fields .cartio-step #payment div.payment_box::before { display: none; }
.nlo-checkout-fields .cartio-step #payment .place-order { margin: 0; padding: 0; }
.nlo-checkout-fields .cartio-step .woocommerce-terms-and-conditions-wrapper { font-size: 14px; line-height: 1.55; margin: 0 0 14px; }
.nlo-checkout-fields .cartio-step .woocommerce-privacy-policy-text p { margin: 0 0 10px; }
.nlo-checkout-fields .cartio-step .woocommerce-terms-and-conditions-wrapper a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-checkout-fields .cartio-step #place_order { width: 100%; min-height: 58px; padding: 0 24px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-checkout-fields .cartio-step #place_order:hover { filter: brightness(.94); }
.nlo-checkout-fields .cartio-step #payment { border: 0; padding: 0; }
.nlo-checkout-fields .cartio-step #payment ul.payment_methods li .payment_box { border-radius: 14px; }
.nlo-checkout-fields .cartio-step #payment div.payment_box p { margin: 0 0 8px; text-align: left; }
.nlo-checkout-fields .cartio-step .cartio-next { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 32px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-checkout-fields .cartio-step .cartio-next:hover { filter: brightness(.94); }
.woocommerce-checkout .form-row { margin: 0 0 14px; padding: 0; }
.woocommerce-checkout .form-row label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 600; }
.woocommerce-checkout .form-row .required { color: #B5562A; text-decoration: none; }
.woocommerce-checkout .form-row input.input-text, .woocommerce-checkout .form-row select, .woocommerce-checkout .select2-container .select2-selection--single, form.checkout_coupon input.input-text, form.woocommerce-form-login input.input-text { min-height: 52px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: none; }
.woocommerce-checkout .select2-container .select2-selection--single { display: flex; align-items: center; }
.woocommerce-checkout .select2-container .select2-selection--single .select2-selection__arrow { top: 50%; transform: translateY(-50%); right: 14px; }
.woocommerce-checkout .form-row textarea { min-height: 120px; padding: 14px 20px; border: 2px solid #D9D0C4; border-radius: 20px; font-family: 'Sen', sans-serif; font-size: 16px; }
.woocommerce-checkout .form-row.woocommerce-invalid input.input-text { border-color: #B5562A; }
.woocommerce-checkout input[type="checkbox"], .woocommerce-checkout input[type="radio"] { width: 20px; height: 20px; accent-color: #1B979B; vertical-align: middle; }
/* Ordersammanställning */
.nlo-order-review table.shop_table { width: 100%; border: 0; border-collapse: collapse; margin: 0 0 18px; font-size: 15px; }
.nlo-order-review table.shop_table th, .nlo-order-review table.shop_table td { padding: 10px 0; border: 0; border-bottom: 1px solid #fff; background: transparent; text-align: left; vertical-align: top; }
.nlo-order-review table.shop_table td:last-child, .nlo-order-review table.shop_table th:last-child { text-align: right; }
.nlo-order-review table.shop_table thead th { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #137377; }
.nlo-order-review td.product-name { font-weight: 600; }
.nlo-order-review tr.order-total th, .nlo-order-review tr.order-total td { border-bottom: 0; padding-top: 16px; font-family: 'Gabarito', sans-serif; font-size: 24px; font-weight: 700; }
.nlo-order-review tr.order-total small, .nlo-order-review .includes_tax { display: block; font-family: 'Sen', sans-serif; font-size: 13px; font-weight: 400; color: #4A433C; }
.nlo-order-review .woocommerce-shipping-methods { list-style: none; margin: 0; padding: 0; }
.nlo-order-review .woocommerce-shipping-methods li { display: flex; justify-content: flex-end; align-items: flex-start; gap: 8px; margin: 0 0 8px; text-align: right; }
.nlo-order-review .woocommerce-shipping-methods li input { order: 2; margin-top: 2px; }
/* Betalsätt som valbara kort */
.nlo-order-review #payment { background: transparent; border-radius: 0; }
.nlo-order-review #payment ul.payment_methods { list-style: none; margin: 0 0 16px; padding: 0; border: 0; display: flex; flex-direction: column; gap: 10px; }
.nlo-order-review #payment ul.payment_methods li { margin: 0; padding: 14px 18px; border: 2px solid #fff; border-radius: 22px; background: #fff; }
.nlo-order-review #payment ul.payment_methods li:has(input:checked) { border-color: #1B979B; background: #E6F4F4; }
.nlo-order-review #payment ul.payment_methods li label { font-weight: 700; cursor: pointer; }
.nlo-order-review #payment ul.payment_methods li img { max-height: 24px; vertical-align: middle; margin-left: 6px; }
.nlo-order-review #payment div.payment_box { margin: 10px 0 0; padding: 0; background: transparent; font-size: 14px; color: #4A433C; }
.nlo-order-review #payment div.payment_box::before { display: none; }
.nlo-order-review #payment .place-order { margin: 0; padding: 0; }
.nlo-order-review .woocommerce-terms-and-conditions-wrapper { font-size: 14px; line-height: 1.55; margin: 0 0 14px; }
.nlo-order-review .woocommerce-privacy-policy-text p { margin: 0 0 10px; }
.nlo-order-review .woocommerce-terms-and-conditions-wrapper a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-order-review #place_order { width: 100%; min-height: 58px; padding: 0 24px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 16px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-order-review #place_order:hover { filter: brightness(.94); }
/* Tack-sidan */
.nlo-thankyou .woocommerce-notice--success { margin: 0 0 20px; padding: 16px 20px; border-radius: 18px; background: #E6F4F4; font-size: 16px; }
.nlo-thankyou ul.woocommerce-order-overview { display: flex; flex-wrap: wrap; gap: 12px; list-style: none; margin: 0 0 24px; padding: 0; }
.nlo-thankyou ul.woocommerce-order-overview li { flex: 1 1 160px; margin: 0; padding: 14px 18px; border: 2px solid #EDE6DC; border-radius: 20px; font-size: 13px; text-transform: uppercase; letter-spacing: .06em; color: #137377; }
.nlo-thankyou ul.woocommerce-order-overview li strong { display: block; margin-top: 4px; font-size: 16px; text-transform: none; letter-spacing: 0; color: #1F1F1F; }
.nlo-thankyou h2 { font-family: 'Gabarito', sans-serif; font-size: 26px; letter-spacing: -0.02em; margin: 28px 0 12px; }
.nlo-thankyou table.shop_table { width: 100%; border: 2px solid #EDE6DC; border-radius: 22px; border-collapse: separate; border-spacing: 0; overflow: hidden; }
.nlo-thankyou table.shop_table th, .nlo-thankyou table.shop_table td { padding: 12px 18px; border: 0; border-bottom: 1px solid #EDE6DC; text-align: left; }
.nlo-thankyou address { padding: 18px; border: 2px solid #EDE6DC; border-radius: 22px; font-style: normal; line-height: 1.6; }
/* Bricks lägger kassans meddelanden i .brxe-container.before-checkout (1100 px): sajtens bredd i stället */
.woocommerce .brxe-container.before-checkout { width: 100%; max-width: 1280px; padding: 0 24px; margin: 0 auto; }
.woocommerce .brxe-container.before-checkout > * { max-width: none; padding-left: 0; padding-right: 0; }
.woocommerce .brxe-container.before-checkout > *:first-child { margin-top: 24px; }
/* Kontofält (skapa konto) som eget kort, betalningsrutan utan extra ram */
.nlo-checkout-fields .woocommerce-account-fields { padding: 24px 32px; margin: 0 0 20px; border: 0; background: #F6F2EC; border-radius: 28px; }
.nlo-order-review #payment { border: 0; padding: 0; }
.nlo-order-review #payment ul.payment_methods li .payment_box { border-radius: 14px; }
@media (max-width: 478px) { .nlo-step-line { width: 14px !important; } .nlo-steps { column-gap: 6px !important; } .nlo-step-item, .nlo-step-item-active { font-size: 13px !important; column-gap: 6px !important; } }
/* YITH presentkortsruta döljs: presentkort (Vouchio) löses in i rabattkodsrutan */
.ywgc_have_code, .ywgc_enter_code { display: none !important; }

/* ---- Fokusramar: aldrig vid klick, bara vid tangentbord (tillgänglighet) ---- */
:focus:not(:focus-visible) { outline: none !important; box-shadow: none; }
a:focus-visible, button:focus-visible, [role="button"]:focus-visible, summary:focus-visible { outline: 2px solid #137377; outline-offset: 3px; border-radius: 6px; }
/* Fält: markeras med turkos kant, utan extra ram utanför */
input:focus, select:focus, textarea:focus { outline: none !important; }
.woocommerce-checkout .form-row input.input-text:focus, .woocommerce-checkout .form-row select:focus, .woocommerce-checkout .form-row textarea:focus,
form.checkout_coupon input.input-text:focus, form.woocommerce-form-login input.input-text:focus,
.nlo-contact-form input:focus, .nlo-contact-form textarea:focus, .nlo-coupon input:focus, .nlo-buy select:focus { border-color: #1B979B !important; box-shadow: 0 0 0 3px rgba(27, 151, 155, 0.15); }

/* ---- Kassa: rabattkodsformuläret (utfällt) ---- */
form.checkout_coupon { background: transparent !important; border: 0 !important; padding: 0 24px !important; margin-top: 12px; flex-wrap: nowrap; align-items: center; }
form.checkout_coupon > p:not(.form-row) { display: none; } /* ev. förklarande text: står redan i raden ovanför */
form.checkout_coupon .form-row { margin: 0; flex: 0 1 420px; }
form.checkout_coupon .form-row-last { flex: 0 0 auto; }
form.checkout_coupon .clear { display: none; }
@media (max-width: 600px) { form.checkout_coupon { flex-wrap: wrap; } form.checkout_coupon .form-row { flex: 1 1 100%; } }

/* ---- Kassa: inloggningsformuläret (utfällt) ---- */
.woocommerce-checkout form.woocommerce-form-login.login { display: grid; grid-template-columns: 1fr 1fr; gap: 14px 16px; align-items: end; background: transparent; border: 0 !important; margin-top: 12px; }
.woocommerce-checkout form.woocommerce-form-login.login > p:first-child { grid-column: 1 / -1; margin: 0; font-size: 15px; }
.woocommerce-checkout form.woocommerce-form-login.login .form-row { width: auto !important; float: none !important; margin: 0; }
.woocommerce-checkout form.woocommerce-form-login.login .form-row:not(.form-row-first):not(.form-row-last) { grid-column: 1 / -1; display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
.woocommerce-checkout form.woocommerce-form-login.login .clear { display: none; }
.woocommerce-checkout form.woocommerce-form-login.login .lost_password { grid-column: 1 / -1; margin: 0; font-size: 14px; }
.woocommerce-checkout form.woocommerce-form-login.login .lost_password a { color: #137377; font-weight: 700; text-decoration: none; }
form.woocommerce-form-login .woocommerce-form-login__rememberme { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: 14px; font-weight: 600; }
@media (max-width: 600px) { .woocommerce-checkout form.woocommerce-form-login.login { grid-template-columns: 1fr; } }
/* Visa lösenord (ögat) ligger i fältet, inte som en knapp bredvid */
.password-input { position: relative; display: block; width: 100%; }
.password-input input.input-text { width: 100%; padding-right: 52px !important; }
button.show-password-input, .show-password-input { position: absolute; top: 50%; right: 14px; transform: translateY(-50%); width: 32px; height: 32px; min-height: 0 !important; padding: 0 !important; border: 0 !important; border-radius: 999px; background: transparent !important; color: #4A433C; cursor: pointer; }
/* Knapparna i formulären ovan (inte ögat) */
form.checkout_coupon button.button, form.woocommerce-form-login button.woocommerce-form-login__submit { min-height: 52px; padding: 0 26px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }

/* ---- Mitt konto ------------------------------------------------------------------ */
.nlo-account-hello { font-family: 'Caveat', cursive; font-weight: 400; font-size: 26px; line-height: 1.2; color: #fff; }
.nlo-account-h2 { margin: 0; font-family: 'Gabarito', sans-serif; font-weight: 700; font-size: clamp(26px, 3vw, 36px); letter-spacing: -0.03em; color: #1F1F1F; }
/* Siffror i hälsningsrutan */
.nlo-stats { display: flex; flex-wrap: wrap; gap: 12px; }
.nlo-stat { flex: 1 1 150px; display: flex; align-items: center; gap: 14px; padding: 16px; border-radius: 20px; background: #16757A; color: #fff; }
.nlo-stat__icon { flex: none; width: 44px; height: 44px; border-radius: 999px; background: #DD9933; display: flex; align-items: center; justify-content: center; font-size: 22px; }
.nlo-stat__text { display: flex; flex-direction: column; font-size: 14px; }
.nlo-stat__text strong { font-family: 'Gabarito', sans-serif; font-size: 32px; line-height: 1; }
/* Fortsätt där du slutade */
.nlo-continue { position: relative; display: flex; align-items: flex-end; width: 100%; min-height: 340px; border-radius: 28px; overflow: hidden; color: #fff; text-decoration: none; }
.nlo-continue__img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; transition: transform .5s ease; }
.nlo-continue:hover .nlo-continue__img { transform: scale(1.03); }
.nlo-continue__shade { position: absolute; inset: 0; background: linear-gradient(to top, rgba(0,0,0,.72), rgba(0,0,0,0) 65%); }
.nlo-continue__body { position: relative; width: 100%; padding: 32px; display: flex; flex-wrap: wrap; gap: 16px; align-items: flex-end; justify-content: space-between; }
@media (max-width: 478px) { .nlo-continue__body { padding: 22px; } .nlo-continue { min-height: 280px; } }
.nlo-continue__text { flex: 1 1 260px; display: flex; flex-direction: column; gap: 8px; }
.nlo-continue__label { font-size: 13px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; }
.nlo-continue__title { font-family: 'Gabarito', sans-serif; font-size: clamp(24px, 2.6vw, 32px); font-weight: 700; letter-spacing: -0.02em; line-height: 1.1; }
.nlo-continue__pct { font-size: 14px; }
.nlo-continue__btn { display: inline-flex; align-items: center; gap: 10px; min-height: 52px; padding: 0 26px; border-radius: 999px; background: #DD9933; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; }
.nlo-progress { display: block; height: 8px; border-radius: 999px; background: rgba(255,255,255,.35); overflow: hidden; }
.nlo-progress > span { display: block; height: 100%; border-radius: 999px; background: #DD9933; }
.nlo-progress--light { background: #EDE6DC; }
.nlo-progress--light > span { background: #1B979B; }
/* Kontomenyn som pillknappar ovanför innehållet */
.nlo-account .woocommerce { display: flex; flex-direction: column; gap: 32px; }
.nlo-account .woocommerce-MyAccount-navigation { width: 100% !important; float: none !important; }
.nlo-account .woocommerce-MyAccount-navigation ul { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; border: 0; }
.nlo-account .woocommerce-MyAccount-navigation li { margin: 0; padding: 0; border: 0; }
.nlo-account .woocommerce-MyAccount-navigation li a { display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; transition: border-color .15s ease; }
.nlo-account .woocommerce-MyAccount-navigation li a:hover { border-color: #1B979B; }
.nlo-account .woocommerce-MyAccount-navigation li.is-active a { border-color: #1B979B; background: #1B979B; color: #fff; }
.nlo-account .woocommerce-MyAccount-navigation-link--customer-logout { margin-left: auto !important; }
.nlo-account .woocommerce-MyAccount-navigation-link--customer-logout a { border-color: transparent; color: #4A433C; }
@media (max-width: 767px) { .nlo-account .woocommerce-MyAccount-navigation-link--customer-logout { margin-left: 0 !important; } }
.nlo-account .woocommerce-MyAccount-content { width: 100% !important; float: none !important; font-size: 16px; line-height: 1.65; }
.nlo-account .woocommerce-MyAccount-content > p:first-child:has(a[href*="logga-ut"]) { display: none; } /* Woos standardtext "Hej X (inte X? Logga ut)" ersätts av översikten */
/* Kurskort */
.nlo-course-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(280px, 1fr)); gap: 20px; }
.nlo-course-card { display: flex; flex-direction: column; gap: 14px; padding: 12px; border: 2px solid #EDE6DC; border-radius: 24px; background: #fff; transition: transform .18s ease, box-shadow .18s ease; }
.nlo-course-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,.10); }
.nlo-course-card__img img { display: block; width: 100%; aspect-ratio: 1 / 1; object-fit: cover; border-radius: 16px; }
.nlo-course-card__body { display: flex; flex-direction: column; gap: 10px; padding: 0 8px 8px; }
.nlo-course-card__title { font-family: 'Gabarito', sans-serif; font-size: 20px; font-weight: 700; line-height: 1.2; color: #1F1F1F; text-decoration: none; }
.nlo-course-card__title:hover { color: #137377; }
.nlo-course-card__pct { font-size: 14px; color: #4A433C; }
.nlo-course-card__btn { align-self: flex-start; display: inline-flex; align-items: center; min-height: 46px; padding: 0 22px; border-radius: 999px; background: #DD9933; color: #fff; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; }
.nlo-course-card__btn:hover { filter: brightness(.94); color: #fff; }
.nlo-empty-courses { padding: 28px; border: 2px dashed #D9D0C4; border-radius: 24px; }
.nlo-empty-courses p { margin: 0 0 12px; }
/* Beställningsrader */
.nlo-order-rows { display: flex; flex-direction: column; gap: 10px; }
.nlo-order-row { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 28px; padding: 14px 18px 14px 24px; border: 2px solid #EDE6DC; border-radius: 999px; font-size: 15px; }
@media (max-width: 600px) { .nlo-order-row { border-radius: 22px; } }
.nlo-order-row strong { min-width: 80px; }
.nlo-order-row__sum { margin-left: auto; font-weight: 700; }
.nlo-status { display: inline-block; padding: 6px 14px; border-radius: 999px; background: #EDE6DC; font-size: 13px; font-weight: 700; color: #1F1F1F; }
.nlo-status--completed { background: #1B979B; color: #fff; }
.nlo-status--processing, .nlo-status--on-hold { background: #DD9933; color: #fff; }
.nlo-status--cancelled, .nlo-status--failed, .nlo-status--refunded { background: #F2E3DC; color: #7A3418; }
.nlo-pill-link { display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border: 2px solid #1B979B; border-radius: 999px; color: #137377; font-weight: 700; font-size: 14px; text-decoration: none; }
.nlo-pill-link:hover { background: #E6F4F4; color: #137377; }
.nlo-muted { color: #4A433C; }
/* Woos tabeller i kontot (alla beställningar, nedladdningar) */
.nlo-account table.shop_table { width: 100%; border: 2px solid #EDE6DC; border-radius: 22px; border-collapse: separate; border-spacing: 0; overflow: hidden; }
.nlo-account table.shop_table th, .nlo-account table.shop_table td { padding: 12px 16px; border: 0; border-bottom: 1px solid #EDE6DC; text-align: left; }
.nlo-account table.shop_table thead th { font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: #137377; }
.nlo-account table.shop_table .button { display: inline-flex; align-items: center; min-height: 38px; padding: 0 16px; margin: 2px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-size: 13px; font-weight: 700; text-decoration: none; }
/* Formulär i kontot (adresser, kontouppgifter, inloggning, registrering) */
.nlo-account .woocommerce-address-fields, .nlo-account .woocommerce-EditAccountForm, .nlo-account .u-column1, .nlo-account .u-column2, .nlo-account form.woocommerce-form-login, .nlo-account form.woocommerce-form-register { padding: 32px; border: 2px solid #EDE6DC; border-radius: 28px; }
@media (max-width: 478px) { .nlo-account .woocommerce-address-fields, .nlo-account .woocommerce-EditAccountForm, .nlo-account .u-column1, .nlo-account .u-column2, .nlo-account form.woocommerce-form-login, .nlo-account form.woocommerce-form-register { padding: 20px; } }
.nlo-account .u-columns { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 767px) { .nlo-account .u-columns { grid-template-columns: 1fr; } }
.nlo-account .u-column1, .nlo-account .u-column2 { width: auto !important; float: none !important; }
.nlo-account .u-columns .u-column1, .nlo-account .u-columns .u-column2 { padding: 0; border: 0; }
.nlo-account h2 { font-family: 'Gabarito', sans-serif; font-size: 28px; letter-spacing: -0.02em; margin: 0 0 16px; }
.nlo-account .form-row { margin: 0 0 14px; padding: 0; width: 100% !important; float: none !important; }
.nlo-account .form-row label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 600; }
.nlo-account input.input-text, .nlo-account select, .nlo-account .select2-container .select2-selection--single { min-height: 52px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: none; }
.nlo-account input.input-text:focus, .nlo-account select:focus { border-color: #1B979B !important; box-shadow: 0 0 0 3px rgba(27,151,155,.15); }
.nlo-account fieldset { margin: 20px 0; padding: 20px 24px; border: 2px solid #EDE6DC; border-radius: 22px; }
.nlo-account button.button, .nlo-account .woocommerce-Button { min-height: 52px; padding: 0 28px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-account .woocommerce-LostPassword a, .nlo-account .lost_password a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-account .woocommerce-Addresses { display: grid; grid-template-columns: 1fr 1fr; gap: 20px; }
@media (max-width: 767px) { .nlo-account .woocommerce-Addresses { grid-template-columns: 1fr; } }
.nlo-account .woocommerce-Address { padding: 24px; border: 2px solid #EDE6DC; border-radius: 24px; width: auto !important; float: none !important; }
.nlo-account .woocommerce-Address address { font-style: normal; line-height: 1.6; }
.nlo-account .woocommerce-Address .edit { color: #137377; font-weight: 700; text-decoration: none; }
/* Utloggad på Mina sidor: Bricks ritar Woos inloggning direkt (utan elementets klass) */
body.woocommerce-account:not(.logged-in) #brx-content form.woocommerce-form-login { margin: 8px 0 0; max-width: 560px; padding: 32px; border: 2px solid #EDE6DC; border-radius: 28px; }
@media (max-width: 478px) { body.woocommerce-account:not(.logged-in) #brx-content form.woocommerce-form-login { padding: 20px; } }
body.woocommerce-account:not(.logged-in) #brx-content form.woocommerce-form-login + p, body.woocommerce-account:not(.logged-in) #brx-content .lost_password { margin: 12px 0 0; }
body.woocommerce-account:not(.logged-in) #brx-content .nlo-wrap > h2 { display: none; } /* Woos "Logga in": rubriken finns redan ovanför */
body.woocommerce-account #brx-content .form-row { margin: 0 0 14px; }
body.woocommerce-account #brx-content .form-row label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 600; }
body.woocommerce-account #brx-content input.input-text { min-height: 52px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: none; }
body.woocommerce-account #brx-content input.input-text:focus { border-color: #1B979B !important; box-shadow: 0 0 0 3px rgba(27,151,155,.15); }
body.woocommerce-account #brx-content .woocommerce-form-login__submit { min-height: 52px; padding: 0 28px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
body.woocommerce-account #brx-content .woocommerce-form-login .form-row:has(.woocommerce-form-login__submit) { display: flex; flex-wrap: wrap; align-items: center; gap: 12px 20px; }
body.woocommerce-account #brx-content form.woocommerce-form-login, body.woocommerce-account #brx-content form.woocommerce-form-login label { text-align: left; }
/* Bricks kontosida har egen menystil (grå ruta, lodrät lista): skriv över med högre specificitet */
.brxe-woocommerce-account-page.nlo-account .woocommerce-MyAccount-navigation { background: transparent !important; padding: 0 !important; border: 0 !important; }
.brxe-woocommerce-account-page.nlo-account .woocommerce-MyAccount-navigation ul { flex-direction: row !important; flex-wrap: wrap !important; gap: 8px !important; background: transparent !important; padding: 0 !important; }
.brxe-woocommerce-account-page.nlo-account .woocommerce-MyAccount-navigation li a { padding: 0 22px !important; }
/* Produktfält: tillgång (t.ex. "Du kan se föreläsningen obegränsat i 1 månad") och mängdrabatt-text */
.nlo-field-note a, .nlo-field-access a { color: #137377; font-weight: 700; text-decoration: none; }

/* ---- Blogg ------------------------------------------------------------------------ */
/* Arkiv: första kortet (senaste) ligger över två kolumner. Slingans div har display:contents (KB 12) */
.nlo-post-grid .nlo-post-big { grid-column: span 2; }
@media (max-width: 767px) { .nlo-post-grid .nlo-post-big { grid-column: auto; } }
.nlo-post-card .brxe-image img, .nlo-post-card img { transition: transform .4s ease; }
.nlo-post-card:hover .brxe-text-link { color: #137377; }
/* Sökfältet och kategoriknapparna */
.nlo-blog-search input { width: 100%; min-height: 54px; padding: 0 22px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; font-size: 16px; }
.nlo-blog-search input:focus { outline: none; border-color: #1B979B; box-shadow: 0 0 0 3px rgba(27,151,155,.15); }
.nlo-blog-filter { padding-bottom: 24px; border-bottom: 2px solid #EDE6DC; }
.nlo-blog-filter .bricks-button { padding: 0 20px; }
/* VIP-rutan: hela ytan är länk */
.nlo-vip-box { text-decoration: none; transition: transform .18s ease, box-shadow .18s ease; }
.nlo-vip-box:hover { transform: translateY(-3px); box-shadow: 0 16px 36px rgba(0,0,0,.12); color: #fff; }
.nlo-vip-box > .brxe-image, .nlo-vip-box > img { display: block; object-fit: cover; }
/* Inlägg: kategori som pill, dela-knappar, brödtext */
.nlo-post-cats a, .nlo-post-cats span { display: inline-flex; align-items: center; padding: 5px 12px; border-radius: 999px; background: #1B979B; color: #fff !important; font-size: 13px; font-weight: 700; text-decoration: none; }
.nlo-post-cats { display: flex; flex-wrap: wrap; gap: 6px; }
.nlo-share ul, .nlo-share { display: flex; gap: 8px; list-style: none; margin: 0; padding: 0; }
.nlo-share li { margin: 0; }
.nlo-share a { width: 44px; height: 44px; border-radius: 999px; border: 2px solid #1B979B; background: #fff !important; color: #137377 !important; display: inline-flex; align-items: center; justify-content: center; text-decoration: none; }
.nlo-share a svg, .nlo-share a i { fill: currentColor; width: 18px; height: 18px; font-size: 18px; }
.nlo-article-body { font-family: 'Sen', sans-serif; font-size: 18px; line-height: 1.8; color: #1F1F1F; }
.nlo-article-body > * + * { margin-top: 22px; }
.nlo-article-body h2 { font-family: 'Gabarito', sans-serif; font-weight: 700; font-size: clamp(28px, 3vw, 36px); line-height: 1.12; letter-spacing: -0.03em; margin-top: 40px; }
.nlo-article-body h3, .nlo-article-body h4 { font-family: 'Gabarito', sans-serif; font-weight: 700; font-size: 26px; line-height: 1.2; letter-spacing: -0.02em; margin-top: 32px; }
.nlo-article-body h3 strong, .nlo-article-body h2 strong { font-weight: 700; }
.nlo-article-body img { max-width: 100%; height: auto; border-radius: 22px; }
.nlo-article-body .wp-caption, .nlo-article-body figure { max-width: 100%; margin-left: 0; margin-right: 0; }
.nlo-article-body .wp-caption-text, .nlo-article-body figcaption { font-size: 14px; color: #4A433C; margin-top: 8px; }
.nlo-article-body ul, .nlo-article-body ol { padding-left: 24px; }
.nlo-article-body li + li { margin-top: 8px; }
.nlo-article-body a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-article-body a:hover { color: #0E5558; }
.nlo-article-body blockquote { margin: 32px 0; padding: 0; border: 0; text-align: center; font-family: 'Caveat', cursive; font-weight: 400; font-size: 32px; line-height: 1.25; }
.nlo-article-body iframe, .nlo-article-body video, .nlo-article-body .wp-block-embed iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: 22px; }
.nlo-article-body .alignleft { float: left; margin: 6px 24px 16px 0; }
.nlo-article-body .alignright { float: right; margin: 6px 0 16px 24px; }
@media (max-width: 600px) { .nlo-article-body .alignleft, .nlo-article-body .alignright { float: none; margin: 0 0 16px; } }

/* ---- Stjärnbetyg: egen fylld stjärna (mask) i stället för WooCommerce stjärnfont ---- */
.nlo-rating .star-rating, .nlo-product-tile .star-rating { position: relative; display: inline-block; width: 110px !important; height: 20px !important; font-size: 0 !important; line-height: 0 !important; overflow: hidden; float: none; margin: 0; }
.nlo-rating .star-rating::before, .nlo-rating .star-rating span::before { content: "" !important; position: absolute; top: 0; left: 0; width: 110px; height: 20px; -webkit-mask: url(../icons/nlo-stjarna-fylld.svg) left center / 22px 20px repeat-x; mask: url(../icons/nlo-stjarna-fylld.svg) left center / 22px 20px repeat-x; }
.nlo-rating .star-rating::before { background: #E8DFD3; }
.nlo-rating .star-rating span { position: absolute; top: 0; left: 0; height: 20px; padding: 0 !important; overflow: hidden; font-size: 0; }
.nlo-rating .star-rating span::before { background: #DD9933; }
.nlo-rating .woocommerce-review-link { font-size: 14px; color: #137377; font-weight: 700; text-decoration: none; }

/* ---- Varianter som knappar (Bricks swatches, typ Label) ---- */
.nlo-buy .bricks-variation-swatches { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; list-style: none; }
.nlo-buy .bricks-variation-swatches li { margin: 0; padding: 0; border: 0; }
.nlo-buy .bricks-swatch-button { min-height: 48px; padding: 0 20px; border: 2px solid #D9D0C4 !important; border-radius: 999px !important; background: #fff !important; color: #1F1F1F !important; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; cursor: pointer; transition: border-color .15s ease; }
.nlo-buy .bricks-swatch-button:hover { border-color: #1B979B !important; }
.nlo-buy .bricks-swatch-selected .bricks-swatch-button, .nlo-buy .bricks-swatch-button[aria-pressed="true"] { border-color: #1B979B !important; background: #1B979B !important; color: #fff !important; }
.nlo-buy .bricks-swatch-button[aria-disabled="true"] { opacity: .45; cursor: not-allowed; }
.nlo-buy .woocommerce-variation-description { font-size: 14px; color: #4A433C; }
.nlo-buy .woocommerce-variation-price .price { font-family: 'Gabarito', sans-serif; font-size: 24px; font-weight: 700; }

/* ---- Produktfält som på gamla sidan: Tillgång med klocka, CTA i orange ruta ---- */
.nlo-field-access { display: flex; align-items: flex-start; gap: 10px; margin: 0; color: #1F1F1F !important; font-size: 16px !important; line-height: 1.5; }
.nlo-field-access::before { content: ""; flex: none; width: 20px; height: 20px; margin-top: 2px; background: #DD9933; -webkit-mask: url(../icons/nlo-klocka.svg) center / contain no-repeat; mask: url(../icons/nlo-klocka.svg) center / contain no-repeat; }
.nlo-field-note { margin: 0; padding: 18px 22px; border-radius: 18px; background: #DD9933; color: #fff !important; font-size: 16px !important; line-height: 1.6; }
.nlo-field-note a { color: #fff !important; font-weight: 700; text-decoration: none; border-bottom: 2px solid rgba(255,255,255,.6); }
.nlo-buy .variations, .nlo-buy .variations tbody, .nlo-buy .variations tr, .nlo-buy .variations td.value { display: block; width: 100%; } .nlo-buy .bricks-swatch-button { white-space: nowrap; } @media (max-width: 478px) { .nlo-buy .bricks-swatch-button { white-space: normal; text-align: left; padding: 10px 18px; line-height: 1.3; } }

/* ---- Kurser (WPCW): lektion + kurssida -------------------------------------------- */
/* Dator: kursinnehållet i vänsterkolumnen. Mobil (≤991 px): knappen "Kursinnehåll" öppnar drawern. */
.nlo-course-aside { display: flex; flex-direction: column; gap: 12px; }
.nlo-course-mobilebar { display: none; flex-direction: column; align-items: stretch; gap: 12px; }
@media (max-width: 991px) {
  .nlo-course-aside.nlo-course-aside { display: none; }
  .nlo-course-mobilebar.nlo-course-mobilebar { display: flex; padding-bottom: 16px; border-bottom: 2px solid #EDE6DC; }
}
.nlo-course-aside { max-height: calc(100vh - 130px); overflow-y: auto; }
.nlo-course-link { font-family: 'Gabarito', sans-serif; font-weight: 700; font-size: 22px; line-height: 1.2; letter-spacing: -0.02em; color: #1F1F1F; text-decoration: none; }
.nlo-course-link:hover { color: #137377; }
.nlo-course-title-sm .nlo-course-link { font-size: 17px; }

/* Modul- och lektionslistan (WPCW:s tabell som lista) */
.nlo-course-outline table.wpcw_fe_table { width: 100%; margin: 0; border: 0; border-collapse: separate; border-spacing: 0 4px; background: none; }
.nlo-course-outline .wpcw_fe_table th, .nlo-course-outline .wpcw_fe_table td { border: 0; background: none; padding: 10px 8px; vertical-align: middle; text-align: left; font-family: 'Sen', sans-serif; }
.nlo-course-outline tr.wpcw_fe_module th { background: #F6F2EC; font-size: 15px; font-weight: 700; color: #1F1F1F; cursor: pointer; }
.nlo-course-outline tr.wpcw_fe_module th:first-child { border-radius: 14px 0 0 14px; padding-left: 14px; width: 58px; font-size: 12px; letter-spacing: .06em; text-transform: uppercase; color: #137377; white-space: nowrap; }
.nlo-course-outline tr.wpcw_fe_module th:last-child { border-radius: 0 14px 14px 0; padding-right: 14px; }
.nlo-course-outline tr.wpcw_fe_module th:only-child, .nlo-course-outline tr.wpcw_fe_module th:nth-child(2):last-child { border-radius: 0 14px 14px 0; }
.nlo-course-outline .wpcw_fe_toggle { width: 28px; text-align: center !important; font-size: 18px; color: #137377; }
.nlo-course-outline tr.wpcw_fe_unit td { font-size: 15px; border-bottom: 1px solid #EDE6DC; }
.nlo-course-outline td.wpcw_fe_unit_title { width: 58px; padding-left: 14px; font-size: 12px; color: #4A433C; white-space: nowrap; }
.nlo-course-outline td.wpcw_fe_unit a { color: #1F1F1F; font-weight: 600; text-decoration: none; }
.nlo-course-outline td.wpcw_fe_unit a:hover { color: #137377; }
.nlo-course-outline tr.wpcw_fe_unit.active td { background: #E6F4F4; border-bottom-color: transparent; }
.nlo-course-outline tr.wpcw_fe_unit.active td:first-child { border-radius: 12px 0 0 12px; }
.nlo-course-outline tr.wpcw_fe_unit.active td:last-child { border-radius: 0 12px 12px 0; }
.nlo-course-outline tr.wpcw_fe_unit.active td.wpcw_fe_unit a { color: #137377; font-weight: 700; }
/* Framsteg: tom ring = inte klar, ifylld bock = klar */
.nlo-course-outline td.wpcw_fe_unit_progress { width: 30px; text-align: center !important; }
.nlo-course-outline .wpcw_circle { display: inline-block; width: 18px; height: 18px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; }
.nlo-course-outline .wpcw_fe_unit_progress_complete .wpcw_circle { border-color: #1B979B; background: #1B979B url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat; }
.nlo-course-outline .wpcw_fe_unit_progress_locked .wpcw_circle, .nlo-course-outline .wpcw_fe_unit_progress_blocked .wpcw_circle { opacity: .45; }
.nlo-course-outline .wpcw_fe_unit_progress_complete ~ td, .nlo-course-outline tr.wpcw_fe_unit_complete td.wpcw_fe_unit a { color: #4A433C; }
/* Kurssidan: alla moduler utfällda, toggle-kolumnen finns inte */
.nlo-course-outline:not(.wpcw_widget_progress) tr.wpcw_fe_module th { cursor: default; }

/* "Markera som klar" */
.nlo-unit-body .wpcw-unit-completebox, .nlo-unit-body .wpcw-unit-navigation { margin-top: 32px; }
.nlo-unit-body .wpcw_fe_progress_box { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 20px; margin: 0; padding: 20px 24px; border: 2px solid #1B979B; border-radius: 22px; background: #fff; color: #1F1F1F; font-size: 16px; line-height: 1.5; box-shadow: none; }
.nlo-unit-body .wpcw_fe_progress_box_text { flex: 1 1 260px; margin: 0; padding: 0; }
.nlo-unit-body .wpcw_fe_progress_box_mark { margin: 0; float: none; }
.nlo-unit-body .wpcw_fe_progress_box_complete { border-color: #EDE6DC; background: #F6F2EC; padding-left: 64px; background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 32 32'%3E%3Ccircle cx='16' cy='16' r='16' fill='%231B979B'/%3E%3Cpath d='M9 16.5l4.5 4.5L23 11.5' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E"); background-repeat: no-repeat; background-position: 22px center; background-size: 28px; }
.nlo-unit-body .wpcw_fe_progress_box_complete img, .nlo-unit-body .wpcw_fe_progress_box_complete::before { display: none; }
/* Knappar: Markera som klar (orange), Tidigare/Nästa (turkos kontur / fylld) */
.nlo-unit-body a.fe_btn, .nlo-unit-body .fe_btn { display: inline-flex; align-items: center; justify-content: center; min-height: 50px; padding: 0 26px; margin: 0; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; text-shadow: none; box-shadow: none; line-height: 1.2; }
.nlo-unit-body a.fe_btn:hover { background: #E6F4F4; color: #137377; }
.nlo-unit-body a.fe_btn_completion { border-color: #DD9933; background: #DD9933; color: #fff; }
.nlo-unit-body a.fe_btn_completion:hover { filter: brightness(.94); background: #DD9933; color: #fff; }
.nlo-unit-body .wpcw_fe_navigation_box { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin: 0; padding: 0; border: 0; background: none; text-align: left; }
.nlo-unit-body a.fe_btn_navigation_next { margin-left: auto; border-color: #1B979B; background: #1B979B; color: #fff; }
.nlo-unit-body a.fe_btn_navigation_next:hover { background: #16757A; color: #fff; }
@media (max-width: 478px) { .nlo-unit-body .wpcw_fe_navigation_box a.fe_btn { flex: 1 1 100%; } }

/* Anteckningar (WPCW) */
.nlo-unit-body .main-note-section { margin-top: 40px; padding-top: 28px; border-top: 2px solid #EDE6DC; }
.nlo-unit-body .wpcw-tab { border: 0; background: none; }
.nlo-unit-body .wpcw-tab .tablinks { padding: 0; border: 0; background: none; font-family: 'Gabarito', sans-serif; font-size: 24px; font-weight: 700; color: #1F1F1F; }
.nlo-unit-body .tabcontent { border: 0; padding: 12px 0 0; }
.nlo-unit-body .wpcw-create-note { display: inline-flex; align-items: center; gap: 8px; min-height: 46px; padding: 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; }
.nlo-unit-body .wpcw-create-note:hover { border-color: #1B979B; }
.nlo-unit-body .wpcw-button-group button { min-height: 44px; padding: 0 20px; border-radius: 999px; font-family: 'Sen', sans-serif; font-weight: 700; cursor: pointer; }
.nlo-unit-body .wpcw-submit-note { border: 0; background: #DD9933; color: #fff; }
.nlo-unit-body .wpcw-cancel-note { border: 2px solid #D9D0C4; background: #fff; color: #1F1F1F; }
.nlo-unit-body .wpcw-filter-select { min-height: 44px; padding: 0 16px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; }
.nlo-unit-body .wp-editor-container { border: 2px solid #D9D0C4; border-radius: 16px; overflow: hidden; }
/* WPCW:s egen knappfärg (vit text) har högre specificitet – skrivs över här */
.nlo-unit-body a.fe_btn, .nlo-unit-body a.fe_btn:hover { color: #137377 !important; background-color: #fff !important; }
.nlo-unit-body a.fe_btn:hover { background-color: #E6F4F4 !important; }
.nlo-unit-body a.fe_btn_completion, .nlo-unit-body a.fe_btn_completion:hover, .nlo-unit-body a.fe_btn_navigation_next, .nlo-unit-body a.fe_btn_navigation_next:hover { color: #fff !important; }
.nlo-unit-body a.fe_btn_completion, .nlo-unit-body a.fe_btn_completion:hover { background-color: #DD9933 !important; }
.nlo-unit-body a.fe_btn_navigation_next { background-color: #1B979B !important; }
.nlo-unit-body a.fe_btn_navigation_next:hover { background-color: #16757A !important; }
.nlo-unit-body .main-note-section { display: block; width: 100%; }
/* Kursinnehållet: ingen ram runt WPCW-tabellen, luft mellan modulerna */
.nlo-course-outline, .nlo-course-outline .wpcw_widget_progress, .nlo-course-outline table.wpcw_fe_table, .nlo-course-outline .wpcw_fe_table tr, .nlo-course-outline .wpcw_fe_table th, .nlo-course-outline .wpcw_fe_table td { border: 0 !important; box-shadow: none !important; outline: 0; }
.nlo-course-outline table.wpcw_fe_table { border-collapse: separate !important; border-spacing: 0 6px !important; margin: -6px 0 !important; } /* luft mellan raderna (och modulerna) */
.nlo-course-outline tr.wpcw_fe_unit td { background: none; }
.nlo-course-outline tr.wpcw_fe_unit.active td { background: #E6F4F4; border-bottom-color: transparent !important; }

/* ---- Allmän sidmall: formulär i sidtexten (t.ex. Vouchios presentkortssaldo) får sajtens fält och knappar ---- */
.nlo-article-body form label { display: block; margin: 0 0 6px; font-size: 14px; font-weight: 600; color: #1F1F1F; }
.nlo-article-body form input[type="text"], .nlo-article-body form input[type="email"], .nlo-article-body form input[type="number"], .nlo-article-body form input[type="password"], .nlo-article-body form select, .nlo-article-body form textarea { width: 100%; min-height: 52px; padding: 0 20px; border: 2px solid #D9D0C4 !important; border-radius: 999px !important; background: #fff !important; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: none; }
.nlo-article-body form textarea { min-height: 140px; padding: 14px 20px; border-radius: 22px !important; }
.nlo-article-body form input:focus, .nlo-article-body form select:focus, .nlo-article-body form textarea:focus { outline: none; border-color: #1B979B !important; box-shadow: 0 0 0 3px rgba(27,151,155,.15); }
.nlo-article-body form button, .nlo-article-body form input[type="submit"] { display: inline-flex; align-items: center; justify-content: center; width: auto; min-height: 52px; margin-top: 12px; padding: 0 28px; border: 0 !important; border-radius: 999px !important; background: #DD9933 !important; color: #fff !important; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-article-body form button:hover, .nlo-article-body form input[type="submit"]:hover { filter: brightness(.94); }

/* ---- Sökfält på 404 och sökresultat (Bricks search, input) ---- */
.nlo-search-form form { position: relative; display: flex; width: 100%; }
.nlo-search-form input[type="search"] { width: 100%; min-height: 56px; padding: 0 60px 0 24px; border: 2px solid transparent; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: 0 8px 24px rgba(0,0,0,.12); }
.nlo-search-form input[type="search"]:focus { outline: none; border-color: #DD9933; }
.nlo-search-form button { position: absolute; top: 6px; right: 6px; width: 44px; height: 44px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; display: inline-flex; align-items: center; justify-content: center; cursor: pointer; }
.nlo-search-form button i, .nlo-search-form button svg { font-size: 18px; color: #fff; fill: #fff; }
.nlo-search-hit { transition: transform .18s ease; }
.nlo-search-hit:hover { transform: translateX(3px); }
.brxe-posts .bricks-posts-nothing-found, .nlo-wrap > div > .bricks-posts-nothing-found, .bricks-posts-nothing-found { padding: 28px; border: 2px dashed #D9D0C4; border-radius: 24px; font-size: 16px; line-height: 1.6; }
.bricks-posts-nothing-found a { color: #137377; font-weight: 700; text-decoration: none; }

/* Formulär: luft mellan fält som står bredvid varandra (fältens bredd i % behålls, mellanrummet läggs som padding) */
.brxe-form.nlo-contact-form { margin-left: -9px; margin-right: -9px; width: calc(100% + 18px); }
.brxe-form.nlo-contact-form > .form-group, .brxe-form.nlo-contact-form > .submit-button-wrapper { box-sizing: border-box; padding-left: 9px; padding-right: 9px; }
/* Produktkort: priset i normal vikt även för WooCommerce ins/bdi/strong */
.nlo-product-tile .nlo-price, .nlo-product-tile .nlo-price * { font-weight: 400; }

/* Footer: Snabblänkar tätare (Bricks list ger annars ~33 px per rad) och mer luft ovanför bottenraden */
.nlo-footer-main .brxe-list li { padding: 0 !important; }
.nlo-footer-main .brxe-list li .content { min-height: 0; line-height: 1.35; }
.nlo-footer-main .brxe-list li .icon, .nlo-footer-main .brxe-list li .icon i { line-height: 1; }
.nlo-footer-main .brxe-list li + li { margin-top: 4px !important; }
.nlo-footer-main .brxe-list li a, .nlo-footer-main .brxe-list li .title { line-height: 1.3 !important; }
.nlo-footer-bottom { margin-top: 40px; }

/* Cookiepolicy: knappen och Cookiebots förteckning i sajtens stil */
.nlo-cookie-btn { display: inline-flex; align-items: center; min-height: 52px; padding: 0 28px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-cookie-btn:hover { filter: brightness(.94); }
.nlo-article-body .CookieDeclaration table, .nlo-article-body #CookieDeclarationUserStatusPanel + * table { width: 100%; border-collapse: collapse; font-size: 14px; }
.nlo-article-body .CookieDeclarationTable th, .nlo-article-body .CookieDeclarationTable td { padding: 10px 12px; border-bottom: 1px solid #EDE6DC; text-align: left; vertical-align: top; }
.nlo-article-body .CookieDeclarationTypeHeader { font-family: 'Gabarito', sans-serif; font-size: 22px; margin-top: 28px; }
.nlo-article-body #CookieDeclarationChangeConsentChange, .nlo-article-body #CookieDeclarationChangeConsentWithdraw { color: #137377; font-weight: 700; text-decoration: none; }

/* Footer: sociala ikoner som runda knappar */
.nlo-footer-bottom .brxe-social-icons { padding: 0 !important; gap: 8px; }
.nlo-footer-bottom .brxe-social-icons li { width: 40px; height: 40px; padding: 0 !important; border-radius: 50% !important; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.nlo-footer-bottom .brxe-social-icons li a { width: 100%; height: 100%; padding: 0 !important; display: flex; align-items: center; justify-content: center; }
.nlo-footer-bottom .brxe-social-icons li i { display: block; margin: 0 !important; padding: 0 !important; font-size: 17px; line-height: 1 !important; width: auto; height: auto; text-align: center; }
.nlo-footer-bottom .brxe-social-icons li svg { display: block; width: 17px; height: 17px; margin: 0 !important; }
.nlo-footer-bottom .brxe-social-icons li a > * { margin: 0 !important; }
.nlo-footer-bottom .brxe-social-icons li a { line-height: 1 !important; font-size: 17px; }

/* ---- Tack-sidan: lugnare (en ram per ruta, betalinstruktion som ett kort, inga dubbla bankuppgifter) ---- */
.nlo-thankyou ul.woocommerce-order-overview { border: 0 !important; background: none !important; box-shadow: none !important; padding: 0 !important; }
.nlo-thankyou ul.woocommerce-order-overview li::before, .nlo-thankyou ul.woocommerce-order-overview li::after { display: none; }
/* Instruktionen från betalsättet (t.ex. bankgiro) direkt efter rutorna */
.nlo-thankyou > ul.woocommerce-order-overview ~ p, .nlo-thankyou .woocommerce-order > ul.woocommerce-order-overview ~ p { margin: 0 0 12px; padding: 20px 24px; border: 0; border-left: 4px solid #DD9933; border-radius: 14px; background: #F6F2EC; text-align: left !important; font-size: 16px; line-height: 1.7; color: #1F1F1F; }
.nlo-thankyou p span[style*="color"] { color: #B4561E !important; font-weight: 700; }
/* Banköverföringens extra lista upprepar samma uppgifter som instruktionen */
.nlo-thankyou .woocommerce-bacs-bank-details { display: none; }
/* Beställningsdetaljer: inga grå rader, summan tydlig */
.nlo-thankyou table.shop_table thead th, .nlo-thankyou table.shop_table tfoot th, .nlo-thankyou table.shop_table tfoot td, .nlo-thankyou table.shop_table tbody td { background: none !important; }
.nlo-thankyou table.shop_table tfoot th { font-weight: 600; }
.nlo-thankyou table.shop_table tfoot tr:last-child th, .nlo-thankyou table.shop_table tfoot tr:last-child td { border-bottom: 0; }
.nlo-thankyou table.shop_table td.product-name .wc-item-meta, .nlo-thankyou table.shop_table td.product-name p { margin: 6px 0 0; font-size: 14px; color: #4A433C; }
.nlo-thankyou .woocommerce-order-details a.button, .nlo-thankyou .order-actions-button { display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border: 2px solid #1B979B; border-radius: 999px; background: #fff !important; color: #137377 !important; font-size: 13px; font-weight: 700; text-decoration: none; }

/* ---- Startsidans bildspel (hero): ligger i en ljusgrå ruta, prickarna centrerade längst ner ---- */
.nlo-hero-slider .splide__pagination { position: static; display: flex; justify-content: center; width: 100%; margin: 24px 0 0; padding: 0; gap: 8px; transform: none; }
.nlo-hero-slider .splide__pagination li { margin: 0; line-height: 0; }
.nlo-hero-slider .splide__pagination__page { width: 10px; height: 10px; margin: 0; border: 0; border-radius: 999px; background: #CFC6BA; opacity: 1; transform: none; transition: width .2s ease, background .2s ease; }
.nlo-hero-slider .splide__pagination__page.is-active { width: 28px; background: #DD9933; transform: none; }
.nlo-hero-slider .splide__pagination__page:focus-visible { outline: 2px solid #137377; outline-offset: 2px; }
.nlo-hero-slide { width: 100%; }
.nlo-hero-stage .nlo-wrap { padding-left: 0; padding-right: 0; }
/* Bildspelet: text och bild alltid bredvid varandra från 992 px (annars hamnar bilden under på mellanbreda skärmar) */
@media (min-width: 992px) {
  .nlo-hero-slide .nlo-split { flex-wrap: nowrap !important; column-gap: 40px !important; }
  .nlo-hero-slide .nlo-split > * { flex: 1 1 0 !important; min-width: 0 !important; }
  .nlo-hero-slide .nlo-split > :first-child { flex-grow: 1.05 !important; }
}
/* Priser bryts aldrig mitt i beloppet ("3 / 000,00 kr") */
.woocommerce-Price-amount, .woocommerce-Price-amount bdi { white-space: nowrap; }
.nlo-price-from { font-weight: inherit; }

/* ---- Produktkarusellen (Populärt just nu): lika höga kort och lugna pilar ---- */
.nlo-product-slider .splide__track { padding: 4px 0 8px; }
.nlo-product-slider .splide__list { align-items: stretch !important; height: auto !important; }
.nlo-product-slider .splide__slide { height: auto !important; display: flex; }
.nlo-product-slider .splide__slide > * { width: 100%; height: 100% !important; }
.nlo-product-slider .nlo-product-card { height: 100%; display: flex; flex-direction: column; }
.nlo-product-slider .nlo-product-card__body { flex-grow: 1; display: flex; flex-direction: column; }
.nlo-product-slider .nlo-product-card__body > :last-child { margin-top: auto !important; }
.nlo-product-slider .splide__arrow { width: 48px; height: 48px; padding: 0; border: 0; border-radius: 999px; background: #fff !important; opacity: 1; box-shadow: 0 6px 18px rgba(0,0,0,.18); display: flex; align-items: center; justify-content: center; transition: transform .15s ease; }
.nlo-product-slider .splide__arrow:hover { transform: translateY(-50%) scale(1.06); }
.nlo-product-slider .splide__arrow svg, .nlo-product-slider .splide__arrow i { width: 18px; height: 18px; font-size: 18px; fill: #137377 !important; color: #137377 !important; }
.nlo-product-slider .splide__arrow--prev { left: -12px; }
.nlo-product-slider .splide__arrow--next { right: -12px; }
.nlo-product-slider .splide__arrow:disabled { opacity: .45; }
@media (max-width: 767px) { .nlo-product-slider .splide__arrow--prev { left: 4px; } .nlo-product-slider .splide__arrow--next { right: 4px; } }
/* Utforska i mobilen: två rutor i bredd, bara rubrik (beskrivning och pil döljs för att få plats) */
@media (max-width: 767px) { .nlo-way-desc, .nlo-way-arrow { display: none !important; } }
/* Stycken byggda som text-element: luften styrs av radavståndet i kolumnen, inte av temats p-marginal */
p.brxe-text-basic, p.brxe-text { margin: 0; }

/* Bildspelet i mobilen: kollaget först, kompakt text */
@media (max-width: 767px) {
  .nlo-hero-slide .nlo-split { flex-direction: column-reverse !important; row-gap: 22px !important; }
  .nlo-hero-slide .nlo-split > * { flex-basis: auto !important; width: 100%; }
  .nlo-hero-slide .nlo-split > :first-child { row-gap: 12px !important; }
  .nlo-hero-slide .nlo-hero-lead { display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; font-size: 16px !important; }
  .nlo-hero-slide .nlo-hide-mobile { display: none !important; }
  .nlo-hero-slide h1, .nlo-hero-slide h2 { font-size: 32px !important; }
  .nlo-sticker-sm span:first-child { font-size: 16px !important; }
  .nlo-sticker-sm span:nth-child(2) { font-size: 20px !important; }
  .nlo-sticker-sm span:nth-child(3) { font-size: 9px !important; }
}
@media (max-width: 767px) { .nlo-hero-slide .bricks-button { padding-left: 20px !important; padding-right: 20px !important; font-size: 13px !important; letter-spacing: .04em !important; white-space: nowrap; } }

/* Startsidans blogg: de tre små korten fyller höjden bredvid det stora */
@media (min-width: 992px) { .nlo-blog-grid { grid-template-rows: repeat(4, 1fr); } }
.nlo-blog-grid .nlo-blog-small { min-height: 0; }
.nlo-blog-grid .nlo-product-tile:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,.10); }
/* Små bloggkort: bilden fyller vänstra delen från kant till kant */
.nlo-blog-grid .nlo-blog-small { overflow: hidden; }
.nlo-blog-grid .nlo-blog-small__img img { border-radius: 0; }
.nlo-blog-grid .nlo-blog-small > a:first-child, .nlo-blog-grid .nlo-blog-small > .brxe-image:first-child { flex: 0 0 40%; display: block; }
.nlo-blog-grid .nlo-blog-small > a:first-child img { width: 100%; height: 100%; }
.nlo-blog-card { transition: transform .18s ease, box-shadow .18s ease; }
.nlo-blog-card:hover { transform: translateY(-3px); box-shadow: 0 14px 30px rgba(0,0,0,.10); }
/* Små bloggkort: bilden fyller sin del utan att bestämma kortets höjd (det stora kortet styr höjden) */
.nlo-blog-grid .nlo-blog-small { position: relative; min-height: 0; }
.nlo-blog-grid .nlo-blog-small > a:first-child { position: relative; flex: 0 0 38% !important; width: 38%; min-height: 110px; overflow: hidden; }
.nlo-blog-grid .nlo-blog-small > a:first-child img { position: absolute !important; inset: 0 !important; width: 100% !important; height: 100% !important; min-height: 0 !important; object-fit: cover; }
.nlo-blog-grid .nlo-blog-small > a:first-child { display: flex !important; }
.nlo-blog-grid .nlo-blog-small > a:first-child img { height: 0 !important; min-height: 100% !important; flex: 1 1 auto; }
/* Produktgalleriet: huvudbilden kant i kant, miniatyrer i en rad under (bara när det finns fler bilder) */
.nlo-gallery .woocommerce-product-gallery { display: block !important; width: 100% !important; }
.nlo-gallery .woocommerce-product-gallery .flex-viewport, .nlo-gallery .woocommerce-product-gallery__wrapper { width: 100% !important; margin: 0 !important; }
.nlo-gallery .flex-control-thumbs { display: flex; flex-wrap: wrap; gap: 10px; margin: 12px 0 0 !important; padding: 0; position: static !important; width: 100% !important; }
.nlo-gallery .flex-control-thumbs li { width: 80px !important; margin: 0 !important; float: none !important; }
/* Knappen Kjøp i Norge: norsk flagga före texten */
.nlo-btn-flag-no::before { content: ""; display: inline-block; flex-shrink: 0; width: 22px; height: 16px; margin-right: 10px; border-radius: 3px; background: url("../flags/nlo-flagga-no.svg") center / cover no-repeat; box-shadow: 0 0 0 1px rgba(0,0,0,.08); }

/* ---- Produktsidans flikar: centrerade på en sandfärgad yta, texten i läsbar bredd ---- */
.nlo-product-tabs .woocommerce-tabs { display: flex; flex-direction: column; align-items: center; }
.nlo-product-tabs .woocommerce-tabs ul.tabs.wc-tabs { margin: 0 auto 32px !important; background: #fff; border-color: #EDE6DC !important; }
.nlo-product-tabs .woocommerce-tabs .panel { width: 100%; max-width: 780px; margin: 0 auto !important; }
.nlo-product-tabs .woocommerce-tabs .panel > h2:first-child { display: none; } /* Woo upprepar flikens namn som rubrik */
.nlo-product-tabs .woocommerce-Tabs-panel--description { font-size: 17px; line-height: 1.75; }
.nlo-product-tabs .woocommerce-Tabs-panel--description > * + * { margin-top: 16px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description h2, .nlo-product-tabs .woocommerce-Tabs-panel--description h3 { font-family: 'Gabarito', sans-serif; font-weight: 700; letter-spacing: -0.02em; line-height: 1.15; margin-top: 32px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description h2 { font-size: 28px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description h3 { font-size: 22px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description ul, .nlo-product-tabs .woocommerce-Tabs-panel--description ol { padding-left: 22px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description img { max-width: 100%; height: auto; border-radius: 20px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description iframe { width: 100%; aspect-ratio: 16 / 9; height: auto; border: 0; border-radius: 20px; }
.nlo-product-tabs .woocommerce-Tabs-panel--description a { color: #137377; font-weight: 700; text-decoration: none; }
/* Ytterligare information: vit tabell med mjuka linjer */
.nlo-product-tabs table.woocommerce-product-attributes { width: 100%; border: 0 !important; border-collapse: separate; border-spacing: 0; background: #fff; border-radius: 20px; overflow: hidden; }
.nlo-product-tabs table.woocommerce-product-attributes th, .nlo-product-tabs table.woocommerce-product-attributes td { padding: 14px 20px !important; border: 0 !important; border-bottom: 1px solid #EDE6DC !important; background: #fff !important; text-align: left; font-style: normal; }
.nlo-product-tabs table.woocommerce-product-attributes tr:last-child th, .nlo-product-tabs table.woocommerce-product-attributes tr:last-child td { border-bottom: 0 !important; }
.nlo-product-tabs table.woocommerce-product-attributes th { width: 38%; font-weight: 700; color: #1F1F1F; }
.nlo-product-tabs table.woocommerce-product-attributes td p { margin: 0; }
/* Recensioner: vita kort */
.nlo-product-tabs #reviews .woocommerce-Reviews-title { font-family: 'Gabarito', sans-serif; font-size: 24px; margin: 0 0 18px; }
.nlo-product-tabs #reviews ol.commentlist { display: flex; flex-direction: column; gap: 12px; padding: 0; margin: 0; list-style: none; }
.nlo-product-tabs #reviews ol.commentlist li .comment_container { display: flex; gap: 14px; padding: 18px 20px; background: #fff; border-radius: 20px; }
.nlo-product-tabs #reviews ol.commentlist li img.avatar { position: static; width: 44px; height: 44px; border: 0; border-radius: 999px; padding: 0; }
.nlo-product-tabs #reviews ol.commentlist li .comment-text { margin: 0; padding: 0; border: 0; flex: 1; }
.nlo-product-tabs #reviews ol.commentlist li .comment-text p.meta { font-size: 14px; color: #4A433C; margin: 4px 0 8px; }
.nlo-product-tabs #review_form_wrapper { margin-top: 24px; padding: 24px; background: #fff; border-radius: 20px; }
.nlo-product-tabs #review_form input[type="text"], .nlo-product-tabs #review_form input[type="email"], .nlo-product-tabs #review_form textarea { width: 100%; padding: 12px 18px; border: 2px solid #D9D0C4; border-radius: 16px; font-family: 'Sen', sans-serif; font-size: 16px; }
.nlo-product-tabs #review_form .form-submit input[type="submit"] { min-height: 50px; padding: 0 28px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-gallery .zoomImg { display: none !important; }
/* Recensioner (Customer Reviews for WooCommerce, cr-*): sajtens kort, knappar och fält */
.nlo-product-tabs .cr-summaryBox-wrap { display: flex; flex-wrap: nowrap; align-items: center; gap: 32px; padding: 24px; border: 0 !important; border-radius: 20px; background: #fff; }
.nlo-product-tabs .cr-ajax-reviews-add-review, .nlo-product-tabs .cr-show-more-reviews-prd { display: inline-flex; align-items: center; justify-content: center; min-height: 46px; padding: 0 24px !important; border: 2px solid #1B979B !important; border-radius: 999px !important; background: #fff !important; color: #137377 !important; font-family: 'Sen', sans-serif; font-size: 14px !important; font-weight: 700; letter-spacing: .04em; text-transform: none; box-shadow: none !important; cursor: pointer; }
.nlo-product-tabs .cr-ajax-reviews-add-review:hover, .nlo-product-tabs .cr-show-more-reviews-prd:hover { background: #E6F4F4 !important; }
.nlo-product-tabs .ivole-meter { border-radius: 999px; background: #EDE6DC !important; box-shadow: none !important; }
.nlo-product-tabs .ivole-meter-bar { border-radius: 999px; background: #DD9933 !important; }
.nlo-product-tabs .cr-ajax-search input.cr-input-text { min-height: 48px; border: 2px solid #D9D0C4 !important; border-radius: 999px !important; background: #fff !important; font-family: 'Sen', sans-serif; font-size: 15px; box-shadow: none !important; }
.nlo-product-tabs .cr-ajax-search input.cr-input-text:focus { border-color: #1B979B !important; outline: none; }
.nlo-product-tabs .cr-ajax-reviews-sort { min-height: 44px; padding: 0 14px; border: 2px solid #D9D0C4 !important; border-radius: 999px !important; background: #fff; font-family: 'Sen', sans-serif; }
.nlo-product-tabs .cr-ajax-reviews-list { display: flex; flex-direction: column; gap: 12px; margin: 16px 0 0 !important; padding: 0 !important; }
.nlo-product-tabs .cr-ajax-reviews-list > li.review { margin: 0 !important; padding: 20px 22px !important; border: 0 !important; border-radius: 20px; background: #fff; list-style: none; }
.nlo-product-tabs .cr-ajax-reviews-list .comment_container, .nlo-product-tabs .cr-ajax-reviews-list .cr-comment-text { padding: 0 !important; border: 0 !important; background: none !important; }
.nlo-product-tabs .woocommerce-review__author { font-weight: 700; color: #1F1F1F; }
.nlo-product-tabs .woocommerce-review__verified { color: #137377; font-size: 13px; }
.nlo-product-tabs .cr-review-form-wrap { padding: 24px; border-radius: 20px; background: #fff; }
.nlo-product-tabs .cr-summaryBox-wrap > * { flex: 1 1 0; min-width: 0; }
@media (max-width: 767px) { .nlo-product-tabs .cr-summaryBox-wrap { flex-wrap: wrap; } .nlo-product-tabs .cr-summaryBox-wrap > * { flex: 1 1 100%; } }
/* Recensionskorten: mellanrum mellan korten och kompaktare innehåll */
.nlo-product-tabs ol.cr-ajax-reviews-list { display: flex !important; flex-direction: column; gap: 12px; }
.nlo-product-tabs ol.cr-ajax-reviews-list > li.review { margin: 0 !important; padding: 16px 20px !important; }
.nlo-product-tabs .cr-ajax-reviews-list .cr-comment-text .meta { display: flex !important; flex-wrap: wrap; justify-content: space-between; align-items: baseline; gap: 4px 12px; margin: 0 !important; }
.nlo-product-tabs .cr-ajax-reviews-list .cr-meta-author-featured-date, .nlo-product-tabs .cr-ajax-reviews-list .cr-meta-author-title { display: flex !important; flex-wrap: wrap; align-items: baseline; gap: 2px 10px; height: auto !important; }
.nlo-product-tabs .cr-ajax-reviews-list .woocommerce-review__published-date { font-size: 13px; color: #4A433C; }
.nlo-product-tabs .cr-ajax-reviews-list .crstar-rating-svg { margin: 6px 0 0 !important; }
.nlo-product-tabs .cr-ajax-reviews-list .description { margin: 8px 0 0 !important; padding: 0 !important; border: 0 !important; }
.nlo-product-tabs .cr-ajax-reviews-list .description p { margin: 0; }
.nlo-product-tabs .cr-ajax-reviews-list .cr-voting-cont { display: flex !important; justify-content: flex-end; gap: 6px; margin: 4px 0 0 !important; padding: 0 !important; border: 0 !important; font-size: 12px; opacity: .8; }
.nlo-product-tabs .cr-ajax-reviews-list .cr-comment-text, .nlo-product-tabs .cr-ajax-reviews-list .comment_container { border: 0 !important; }

/* Köprutan: CTA-rutan i sand med orange kant (så den inte liknar köpknappen) */
.nlo-field-note { background: #F6F2EC !important; color: #1F1F1F !important; border-left: 4px solid #DD9933; border-radius: 14px !important; }
.nlo-field-note a { color: #137377 !important; border-bottom: 0 !important; }
/* Punktlistan under köpknappen */
.nlo-buy-points { list-style: none; padding: 0 !important; }
.nlo-buy-points li { margin: 0; }
/* Sålda en åt gången: ingen antal-ruta */
.nlo-buy .quantity:has(input[type="hidden"]), .nlo-buy .quantity.hidden { display: none !important; }
/* Recensionerna i egen sektion: vita kort med ram */
.nlo-product-reviews .cr-summaryBox-wrap, .nlo-product-reviews ol.cr-ajax-reviews-list > li.review, .nlo-product-reviews .cr-review-form-wrap { border: 2px solid #EDE6DC !important; }
.nlo-product-reviews .woocommerce-Reviews-title { display: none; }
.nlo-rating .woocommerce-review-link { margin-left: 10px; color: #137377; font-weight: 700; font-size: 14px; text-decoration: none; }
/* Bara en flik (Beskrivning): ingen flikmeny */
.nlo-product-tabs ul.wc-tabs:has(> li:only-child) { display: none !important; }

/* ---- Produktsidan i mobilen ---- */
@media (max-width: 767px) {
  /* Antal och köpknapp på samma rad */
  .nlo-buy .single_add_to_cart_button { flex: 1 1 0 !important; min-width: 0; padding: 0 16px !important; font-size: 13px !important; letter-spacing: .04em !important; }
  .nlo-buy .quantity { flex: 0 0 auto !important; }
  /* Brödsmulor på en rad som går att svepa */
  .nlo-crumbs-dark, .brxe-woocommerce-breadcrumbs.nlo-crumbs-dark { overflow-x: auto; scrollbar-width: none; }
  .nlo-crumbs-dark::-webkit-scrollbar { display: none; }
  .nlo-crumbs-dark nav, .nlo-crumbs-dark .navigation, .nlo-crumbs-dark > * { flex-wrap: nowrap !important; white-space: nowrap; }
  /* Recensionerna kortare: ingen sök/sortering, kompakt sammanfattning */
  .nlo-product-reviews .cr-ajax-search, .nlo-product-reviews .cr-ajax-reviews-sort-div, .nlo-product-reviews .cr-count-row { display: none !important; }
  .nlo-product-reviews .cr-summaryBox-wrap { padding: 18px !important; gap: 14px !important; }
  .nlo-product-reviews ol.cr-ajax-reviews-list > li.review { padding: 14px 16px !important; }
  .nlo-product-tabs .woocommerce-Tabs-panel--description { font-size: 16px; }
}
@media (max-width: 767px) {
  .nlo-buy .quantity { flex: 0 0 118px !important; width: 118px !important; min-width: 0 !important; padding: 0 2px !important; justify-content: space-between; }
  .nlo-buy .quantity .action { width: 34px !important; }
  .nlo-buy .quantity input.qty { width: 34px !important; }
}
@media (max-width: 767px) { .nlo-buy .quantity { height: 56px !important; min-height: 56px !important; box-sizing: border-box; align-self: center; } .nlo-buy .single_add_to_cart_button { height: 56px !important; align-self: center; } }
@media (max-width: 767px) { .nlo-buy .quantity, .nlo-buy .single_add_to_cart_button { margin-top: 0 !important; margin-bottom: 0 !important; } }
/* Varianter: inget tomt mellanrum mellan pris och köpknapp */
.nlo-buy .single_variation > *:empty, .nlo-buy .single_variation_wrap > *:empty { display: none !important; }
.nlo-buy .single_variation, .nlo-buy .single_variation > * { margin: 0 !important; }
.nlo-buy .single_variation { display: flex; flex-direction: column; gap: 8px; }
.nlo-buy .woocommerce-variation-description p { margin: 0; }
/* Recensionsformuläret: rundade knappar i sajtens färger */
.nlo-product-reviews .cr-review-form-submit, .nlo-product-reviews .cr-review-form-continue { min-height: 52px; padding: 0 28px !important; border: 0 !important; border-radius: 999px !important; background: #DD9933 !important; color: #fff !important; font-family: 'Sen', sans-serif; font-size: 14px !important; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; }
.nlo-product-reviews .cr-review-form-submit:hover, .nlo-product-reviews .cr-review-form-continue:hover { filter: brightness(.94); }
.nlo-product-reviews .cr-review-form-cancel { min-height: 52px; padding: 0 24px !important; border: 2px solid #D9D0C4 !important; border-radius: 999px !important; background: #fff !important; color: #1F1F1F !important; font-family: 'Sen', sans-serif; font-size: 14px !important; font-weight: 700; cursor: pointer; }
.nlo-product-reviews .cr-review-form-wrap input[type="text"], .nlo-product-reviews .cr-review-form-wrap input[type="email"], .nlo-product-reviews .cr-review-form-wrap textarea { border: 2px solid #D9D0C4 !important; border-radius: 16px !important; font-family: 'Sen', sans-serif; font-size: 16px; box-shadow: none !important; }
.nlo-product-reviews .cr-review-form-wrap input:focus, .nlo-product-reviews .cr-review-form-wrap textarea:focus { border-color: #1B979B !important; outline: none; }

/* ---- Produktarkivet: snabbval (underkategorier), verktygsrad och kategoritext ---- */
.nlo-subcats { display: flex; flex-wrap: wrap; gap: 8px; }
.nlo-subcat { display: inline-flex; align-items: center; gap: 10px; min-height: 46px; padding: 0 8px 0 20px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; text-decoration: none; transition: border-color .15s ease; }
.nlo-subcat:hover { border-color: #1B979B; color: #1F1F1F; }
.nlo-subcat__count { min-width: 30px; height: 30px; padding: 0 6px; border-radius: 15px; display: inline-flex; align-items: center; justify-content: center; background: #F6F2EC; font-size: 13px; }
.nlo-subcat.is-active { border-color: #16757A; background: #16757A; color: #fff; }
.nlo-subcat.is-active .nlo-subcat__count { background: #fff; color: #137377; }
.nlo-cat-desc { max-width: 820px; margin-top: 32px; font-family: 'Sen', sans-serif; font-size: 17px; line-height: 1.7; color: #1F1F1F; }
.nlo-cat-desc > * + * { margin-top: 14px; }
.nlo-cat-desc a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-archive-toolbar { padding-bottom: 16px; border-bottom: 2px solid #EDE6DC; }
@media (max-width: 767px) {
  .nlo-subcats, .nlo-cat-filter .brx-filter-options { flex-wrap: nowrap !important; overflow-x: auto; scrollbar-width: none; margin-right: -16px; padding-right: 16px; }
  .nlo-subcats::-webkit-scrollbar, .nlo-cat-filter .brx-filter-options::-webkit-scrollbar { display: none; }
  .nlo-subcat, .nlo-cat-filter .bricks-button { flex-shrink: 0; white-space: nowrap; }
}
.nlo-cat-desc [style*="background"] { background: #F6F2EC !important; border-radius: 16px; padding: 16px 20px !important; }

/* Punktlistan under köpknappen (kortkoden nlo_kopinfo) */
ul.nlo-buy-points { display: flex; flex-direction: column; gap: 6px; margin: 4px 0 0; padding: 0; list-style: none; font-family: 'Sen', sans-serif; font-size: 15px; color: #4A433C; }
ul.nlo-buy-points li { display: flex; align-items: flex-start; gap: 10px; margin: 0; }
ul.nlo-buy-points li::before { content: ""; flex: none; width: 14px; height: 14px; margin-top: 4px; background: #137377; -webkit-mask: url(../icons/nlo-bock.svg) center / contain no-repeat; mask: url(../icons/nlo-bock.svg) center / contain no-repeat; }

/* Paketprodukter (WPC Product Bundles): innehållet som en lista "I paketet ingår" */
.nlo-buy .woosb-wrap { width: 100%; }
.nlo-buy .woosb-products { display: flex !important; flex-direction: column; gap: 0 !important; margin: 0 0 4px !important; border: 2px solid #EDE6DC !important; border-radius: 18px; background: #fff; overflow: hidden; }
.nlo-buy .woosb-products::before { content: "I paketet ingår"; padding: 14px 18px 8px; font-family: 'Sen', sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #137377; }
.nlo-buy .woosb-products .woosb-product { display: flex !important; flex-direction: row !important; align-items: center; gap: 12px; width: auto !important; margin: 0 !important; padding: 10px 18px !important; border: 0 !important; border-top: 1px solid #EDE6DC !important; text-align: left !important; background: none !important; }
.nlo-buy .woosb-products .woosb-thumb { display: block !important; flex: 0 0 44px; width: 44px !important; margin: 0 !important; }
.nlo-buy .woosb-products .woosb-thumb img { width: 44px !important; height: 44px !important; object-fit: cover; border-radius: 8px; }
.nlo-buy .woosb-products .woosb-title { display: flex !important; flex: 1 1 auto; flex-direction: row !important; align-items: center; justify-content: space-between; gap: 12px; min-width: 0; padding: 0 !important; }
.nlo-buy .woosb-products .woosb-name { font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 600; line-height: 1.35; color: #1F1F1F; text-align: left; }
.nlo-buy .woosb-products .woosb-name a { color: #1F1F1F; text-decoration: none; }
.nlo-buy .woosb-products .woosb-name a:hover { color: #137377; }
.nlo-buy .woosb-products .woosb-price { flex: none; font-size: 14px; color: #4A433C; white-space: nowrap; text-align: right; }
.nlo-buy .woosb-products .woosb-product[data-price="0"] .woosb-price-ori { display: none; }
.nlo-buy .woosb-products .woosb-product[data-price="0"] .woosb-price::after { content: "Ingår"; color: #137377; font-weight: 700; }
.nlo-buy .woosb-products .woosb-availability:empty { display: none; }
.nlo-buy .woosb-products .woosb-title { display: grid !important; grid-template-columns: minmax(0, 1fr) auto; align-items: center; column-gap: 12px; }
.nlo-buy .woosb-products .woosb-name, .nlo-buy .woosb-products .woosb-price { position: static !important; order: 0 !important; margin: 0 !important; float: none !important; width: auto !important; transform: none !important; }
.nlo-buy .woosb-wrap .woosb-products .woosb-product .woosb-thumb { flex: 0 0 44px !important; width: 44px !important; max-width: 44px !important; min-width: 44px !important; }
.nlo-buy .woosb-wrap .woosb-products .woosb-product .woosb-title { flex: 1 1 auto !important; width: auto !important; min-width: 0 !important; }

/* ---- Varukorgen: summeringen i sand med mörk text, frakten som en tydlig lista ---- */
.nlo-cart-summary .nlo-cart-totals, .nlo-cart-summary .nlo-cart-totals th, .nlo-cart-summary .nlo-cart-totals td, .nlo-cart-summary .nlo-cart-totals a { color: #1F1F1F; }
.nlo-cart-summary .nlo-cart-totals a { color: #137377; font-weight: 700; text-decoration: none; }
.nlo-cart-summary .nlo-cart-totals tr.order-total th, .nlo-cart-summary .nlo-cart-totals tr.order-total td { border-top: 1px solid #D9D0C4; }
.nlo-cart-summary .nlo-cart-totals tr.order-total small, .nlo-cart-summary .nlo-cart-totals .includes_tax { color: #4A433C; opacity: 1; }
/* Frakt: rubriken på egen rad och valen som en vänsterställd lista i vita rutor */
.nlo-cart-summary tr.woocommerce-shipping-totals, .nlo-cart-summary tr.woocommerce-shipping-totals th, .nlo-cart-summary tr.woocommerce-shipping-totals td { display: block; width: 100%; text-align: left !important; }
.nlo-cart-summary tr.woocommerce-shipping-totals th { padding-bottom: 4px !important; font-weight: 700 !important; }
.nlo-cart-summary .woocommerce-shipping-methods { text-align: left !important; display: flex; flex-direction: column; gap: 8px; }
.nlo-cart-summary .woocommerce-shipping-methods li { display: grid !important; grid-template-columns: auto 1fr; gap: 2px 10px; justify-content: stretch !important; align-items: start; margin: 0 !important; padding: 12px 14px; border-radius: 14px; background: #fff; text-align: left !important; }
.nlo-cart-summary .woocommerce-shipping-methods li input { order: 0 !important; margin: 3px 0 0 !important; accent-color: #1B979B; }
.nlo-cart-summary .woocommerce-shipping-methods li label { font-weight: 600; }
.nlo-cart-summary .woocommerce-shipping-methods li label, .nlo-cart-summary .woocommerce-shipping-methods li * { color: #1F1F1F !important; }
.nlo-cart-summary .woocommerce-shipping-methods li p, .nlo-cart-summary .woocommerce-shipping-methods li .description { grid-column: 2; color: #4A433C !important; }
.nlo-cart-summary .woocommerce-shipping-destination, .nlo-cart-summary .shipping-calculator-button { color: #4A433C !important; opacity: 1; text-align: left; }
.nlo-cart-summary ul.nlo-buy-points { font-size: 14px; }
/* Sålda en åt gången (t.ex. onlinekurser): ingen antal-ruta i varukorgen */
.nlo-cart-items .quantity:has(input[type="hidden"]) { display: none !important; }
.nlo-cart-summary ul.nlo-buy-points, .nlo-cart-summary ul.nlo-buy-points li { color: #4A433C !important; }
/* Summeringen: fraktvalen i full bredd, inga punkter före bockarna */
.nlo-cart-summary table.shop_table, .nlo-cart-summary table.shop_table tbody { display: block; width: 100%; }
.nlo-cart-summary table.shop_table tr { display: flex; justify-content: space-between; align-items: baseline; gap: 12px; width: 100%; }
.nlo-cart-summary table.shop_table tr.woocommerce-shipping-totals { display: block; }
.nlo-cart-summary table.shop_table tr.woocommerce-shipping-totals td, .nlo-cart-summary .woocommerce-shipping-methods, .nlo-cart-summary .woocommerce-shipping-methods li { width: 100% !important; box-sizing: border-box; }
.nlo-cart-summary tr.order-total td { flex: 1 1 auto; }
ul.nlo-buy-points li { list-style: none !important; }

/* Kassan: inloggningsruta för kurser och hjälptext under användarnamn */
.nlo-checkout-login-note { margin: 0 0 20px; padding: 18px 22px; border-left: 4px solid #DD9933; border-radius: 14px; background: #F6F2EC; color: #1F1F1F; font-size: 16px; line-height: 1.6; }
.woocommerce .brxe-container.before-checkout > .nlo-checkout-login-note { padding: 18px 22px; } /* raden 494 nollar sidpaddingen för allt i before-checkout */
.nlo-checkout-login-note a { color: #137377; font-weight: 700; text-decoration: none; }
.woocommerce-account-fields .description { display: block !important; margin-top: 6px; font-size: 14px; line-height: 1.5; color: #4A433C; }
.nlo-checkout-login-note + .woocommerce-form-login-toggle { display: none; }

/* Kassan, lugnare: inloggningen öppnas först vid klick (Woo:s inline display:none får styra), ordern följer med vid scroll,
   fraktvalen som rader över hela bredden, kontorutan som ett val i sand i stället för en egen ram. */
.woocommerce-checkout form.woocommerce-form-login.login[style*="none"] { display: none !important; }
@media (min-width: 992px) { .nlo-checkout-order { position: sticky; top: 24px; } }
.nlo-order-review tr.woocommerce-shipping-totals, .nlo-order-review tr.woocommerce-shipping-totals th, .nlo-order-review tr.woocommerce-shipping-totals td { display: block; width: 100%; text-align: left !important; box-sizing: border-box; }
.nlo-order-review tr.woocommerce-shipping-totals th { padding-bottom: 6px; border-bottom: 0; }
.nlo-order-review .woocommerce-shipping-methods { display: flex; flex-direction: column; gap: 8px; }
.nlo-order-review .woocommerce-shipping-methods li { display: grid !important; grid-template-columns: auto 1fr; gap: 2px 10px; align-items: start; margin: 0 !important; padding: 12px 14px; border: 2px solid #fff; border-radius: 14px; background: #fff; text-align: left !important; }
.nlo-order-review .woocommerce-shipping-methods li:has(input:checked) { border-color: #1B979B; background: #E6F4F4; }
.nlo-order-review .woocommerce-shipping-methods li input { order: 0 !important; margin: 3px 0 0 !important; accent-color: #1B979B; }
.nlo-order-review .woocommerce-shipping-methods li label { font-weight: 600; cursor: pointer; }
.nlo-order-review .woocommerce-shipping-methods li > *:not(input):not(label) { grid-column: 2; font-size: 13px; line-height: 1.45; margin: 0; color: #4A433C !important; text-align: left !important; }
.nlo-order-review .woocommerce-shipping-methods li span[style*="color"], .nlo-order-review .woocommerce-shipping-methods li font[color] { color: #B4561E !important; }
.nlo-order-review td.product-name { font-weight: 600; line-height: 1.4; }
.nlo-order-review td.product-name .product-quantity { font-weight: 400; color: #4A433C; white-space: nowrap; }
.nlo-checkout-fields .woocommerce-account-fields { border: 0 !important; background: #F6F2EC; padding: 20px 28px !important; }
.nlo-order-review #payment div.payment_box p { margin: 0 0 8px; text-align: left; }
.nlo-order-review tr.woocommerce-shipping-totals td, .nlo-order-review .woocommerce-shipping-methods, .nlo-order-review .woocommerce-shipping-methods li { width: 100% !important; box-sizing: border-box; }

/* Minivarukorgen (rullgardinen under varukorgsikonen): mjuk panel, rubrik, runda knappar i sajtens stil */
.brxe-woocommerce-mini-cart .cart-detail { width: 360px; max-width: calc(100vw - 32px); padding: 24px !important; border: 0 !important; border-radius: 24px; background: #fff; box-shadow: 0 18px 48px rgba(31, 31, 31, .14); }
.brxe-woocommerce-mini-cart .cart-detail::before { content: 'Din varukorg'; display: block; margin: 0 0 14px; font-family: 'Gabarito', sans-serif; font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: #1F1F1F; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart { max-height: 320px; overflow-y: auto; margin: 0; padding: 0; list-style: none; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item { position: relative; display: grid !important; grid-template-columns: 64px 1fr; gap: 2px 14px; align-items: center; margin: 0; padding: 12px 32px 12px 0 !important; border-bottom: 1px solid #EDE6DC; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item > a:not(.remove) { display: contents; font-family: 'Sen', sans-serif; font-size: 15px; font-weight: 700; line-height: 1.35; color: #1F1F1F; text-decoration: none; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item img { grid-row: 1 / span 2; width: 64px !important; height: 64px !important; margin: 0 !important; object-fit: cover; border-radius: 12px; float: none !important; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item .quantity { grid-column: 2; font-size: 14px; color: #4A433C; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item .quantity .amount { color: #1F1F1F; font-weight: 600; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item a.remove { position: absolute; top: 50%; right: 0; left: auto !important; transform: translateY(-50%); display: grid; place-items: center; width: 26px; height: 26px; border-radius: 50%; background: #F6F2EC; color: #4A433C !important; font-size: 16px; line-height: 1; text-decoration: none; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart-item a.remove:hover { background: #EDE6DC; color: #1F1F1F !important; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__total { display: flex; justify-content: space-between; align-items: baseline; margin: 0; padding: 16px 0 !important; border: 0 !important; font-size: 16px; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__total strong { font-weight: 700; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__total .amount { font-family: 'Gabarito', sans-serif; font-size: 20px; font-weight: 700; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons { display: grid !important; grid-template-columns: 1fr 1fr; gap: 10px; margin: 0; padding: 0; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons a.button { display: flex !important; align-items: center; justify-content: center; min-height: 48px; margin: 0 !important; padding: 0 16px !important; border: 2px solid #1B979B !important; border-radius: 999px !important; background: #fff !important; color: #137377 !important; font-family: 'Sen', sans-serif; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; box-shadow: none !important; outline: 0; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons a.button.checkout { border-color: #DD9933 !important; background: #DD9933 !important; color: #fff !important; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons a.button:hover { filter: brightness(.95); }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__empty-message { margin: 0; font-size: 15px; color: #4A433C; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons a.button { white-space: nowrap; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__total .amount { color: #1F1F1F; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__total strong { color: #1F1F1F; }
.brxe-woocommerce-mini-cart .widget_shopping_cart_content { padding: 0 !important; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons { grid-template-columns: minmax(0, 1fr) minmax(0, 1fr) !important; width: 100%; }
.brxe-woocommerce-mini-cart .woocommerce-mini-cart__buttons a.button { min-width: 0; padding: 0 10px !important; font-size: 12px; letter-spacing: .04em; }
/* Hjälptexter under kassans fält (t.ex. "Om fakturor ska till en annan adress…"): små och dämpade */
.woocommerce-checkout .form-row .description, .woocommerce-checkout .form-row span.description { display: block; margin: 6px 0 0 4px; padding: 0; background: none; font-size: 14px !important; line-height: 1.5; color: #4A433C; }
.woocommerce-checkout .form-row .description::before { display: none; }
/* Kontomallarna (inloggning, glömt lösenord, välj lösenord): formuläret ligger redan i ett kort, ingen ram i ramen */
body.woocommerce-account #brx-content .nlo-account-form form.woocommerce-form-login,
body.woocommerce-account #brx-content .nlo-account-form form.woocommerce-ResetPassword,
body.woocommerce-account #brx-content .nlo-account-form form.lost_reset_password { max-width: none; margin: 0; padding: 0; border: 0; border-radius: 0; background: none; box-shadow: none; }
body.woocommerce-account #brx-content form.nlo-account-form, body.woocommerce-account #brx-content .nlo-account-form form { max-width: none; margin: 0; padding: 0 !important; border: 0 !important; border-radius: 0; background: none; box-shadow: none; }
/* Glömt lösenord: Woo:s egen ingress upprepar rubrikens text */
body.woocommerce-account #brx-content form.lost_reset_password > p:first-child:not(.form-row) { display: none; }
.nlo-account-notices:empty { display: none; }
.nlo-account-notices .woocommerce-error, .nlo-account-notices .woocommerce-message, .nlo-account-notices .woocommerce-info { margin: 0; padding: 14px 18px; border: 0; border-left: 4px solid #B4561E; border-radius: 14px; background: #F6F2EC; color: #1F1F1F; font-size: 15px; list-style: none; }
.nlo-account-notices .woocommerce-message, .nlo-account-notices .woocommerce-info { border-left-color: #1B979B; }
.nlo-account-notices .woocommerce-error::before, .nlo-account-notices .woocommerce-message::before, .nlo-account-notices .woocommerce-info::before { display: none; }
.nlo-account-notices a { color: #137377; font-weight: 700; text-decoration: none; }
/* Nedsatta priser (<del> gammalt, <ins> nytt): inget understreck på det nya priset */
ins, ins .amount, .woocommerce ins { text-decoration: none; background: none; }

/* Beställningar i Mitt konto */
.nlo-account .woocommerce-orders-table td, .nlo-account .woocommerce-orders-table th { vertical-align: middle; }
.nlo-account .woocommerce-orders-table tbody tr:last-child td, .nlo-account .woocommerce-orders-table tbody tr:last-child th { border-bottom: 0; }
.nlo-account .woocommerce-orders-table tbody tr:hover { background: #FBF9F6; }
.nlo-account .woocommerce-orders-table__cell-order-number a { color: #1F1F1F; font-weight: 700; text-decoration: none; }
.nlo-account .woocommerce-orders-table__cell-order-total { font-size: 14px; color: #4A433C; }
.nlo-account .woocommerce-orders-table__cell-order-total .amount { font-weight: 700; color: #1F1F1F; }
.nlo-account .woocommerce-orders-table__cell-order-actions { text-align: right !important; white-space: nowrap; }
.nlo-account table.shop_table .button.pay { border-color: #DD9933; background: #DD9933; color: #fff; }
.nlo-account table.shop_table .button.cancel { border-color: transparent; background: none; color: #7A3418; }
.nlo-account .woocommerce-pagination { display: flex; justify-content: center; gap: 10px; margin-top: 20px; }
.nlo-account .woocommerce-pagination .button { display: inline-flex; align-items: center; min-height: 44px; padding: 0 20px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; }
@media (max-width: 767px) {
	.nlo-account table.woocommerce-orders-table, .nlo-account .woocommerce-orders-table tbody { display: block; border: 0; border-radius: 0; overflow: visible; }
	.nlo-account .woocommerce-orders-table thead { display: none; }
	.nlo-account .woocommerce-orders-table tr { display: block; margin: 0 0 12px; padding: 14px 18px; border: 2px solid #EDE6DC; border-radius: 20px; }
	.nlo-account .woocommerce-orders-table td, .nlo-account .woocommerce-orders-table th { display: flex; justify-content: space-between; align-items: center; gap: 12px; padding: 6px 0 !important; border: 0 !important; text-align: right !important; white-space: normal; }
	.nlo-account .woocommerce-orders-table td::before, .nlo-account .woocommerce-orders-table th::before { content: attr(data-title); float: none !important; font-size: 12px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; color: #137377; text-align: left; }
	.nlo-account .woocommerce-orders-table__cell-order-actions { flex-wrap: wrap; justify-content: flex-end !important; padding-top: 10px !important; }
	.nlo-account .woocommerce-orders-table__cell-order-actions::before { display: none; }
}
/* Mitt konto i mobilen: siffrorna bredvid varandra, och "Fortsätt där du slutade" bara på översikten så att innehållet kommer högre upp */
@media (max-width: 767px) {
	.nlo-stats { flex-wrap: nowrap; gap: 10px; }
	.nlo-stat { flex: 1 1 0; min-width: 0; padding: 12px; gap: 10px; }
	body.woocommerce-orders .nlo-continue, body.woocommerce-view-order .nlo-continue, body.woocommerce-downloads .nlo-continue, body.woocommerce-edit-address .nlo-continue, body.woocommerce-edit-account .nlo-continue, body.woocommerce-courses .nlo-continue, body.woocommerce-payment-methods .nlo-continue { display: none; }
}
/* Kontomenyn i mobilen: en rad som går att svepa, i stället för fyra rader knappar */
@media (max-width: 767px) {
	.nlo-account .woocommerce-MyAccount-navigation { margin-right: -16px !important; }
	.brxe-woocommerce-account-page.nlo-account .woocommerce-MyAccount-navigation ul { flex-wrap: nowrap !important; overflow-x: auto; padding: 0 16px 6px 0 !important; scrollbar-width: none; -webkit-overflow-scrolling: touch; }
	.nlo-account .woocommerce-MyAccount-navigation ul::-webkit-scrollbar { display: none; }
	.nlo-account .woocommerce-MyAccount-navigation li { flex: 0 0 auto; }
	.nlo-account .woocommerce-MyAccount-navigation li a { min-height: 42px; padding: 0 18px; font-size: 14px; white-space: nowrap; }
}

/* Enskild beställning i Mitt konto */
body.woocommerce-view-order .woocommerce-MyAccount-content { display: flex; flex-direction: column; gap: 16px; }
body.woocommerce-view-order .woocommerce-MyAccount-content > p:first-of-type { order: 2; margin: 0; font-size: 15px; color: #4A433C; }
body.woocommerce-view-order .nlo-back-link { order: 0; align-self: flex-start; color: #137377; font-size: 15px; font-weight: 700; text-decoration: none; }
body.woocommerce-view-order .woocommerce-MyAccount-content > .nlo-account-h2 { order: 1; margin: 0; }
body.woocommerce-view-order .woocommerce-MyAccount-content > section, body.woocommerce-view-order .woocommerce-MyAccount-content > .woocommerce-order-details, body.woocommerce-view-order .woocommerce-MyAccount-content > .woocommerce-customer-details { order: 3; }
.nlo-account mark { padding: 0; background: none; color: #1F1F1F; font-weight: 700; }
.nlo-account mark.order-status { display: inline-block; padding: 3px 12px; border-radius: 999px; background: #EDE6DC; font-size: 13px; }
.nlo-account .woocommerce-order-details__title, .nlo-account .woocommerce-column__title { margin: 12px 0 10px; font-family: 'Gabarito', sans-serif; font-size: 22px; font-weight: 700; letter-spacing: -0.02em; }
.nlo-account .woocommerce-table--order-details th, .nlo-account .woocommerce-table--order-details td { background: none !important; }
.nlo-account .woocommerce-table--order-details tfoot th { font-weight: 600; }
.nlo-account .woocommerce-table--order-details tfoot tr:last-child th, .nlo-account .woocommerce-table--order-details tfoot tr:last-child td { border-bottom: 0; }
.nlo-account .woocommerce-table--order-details td.product-name a { color: #1F1F1F; font-weight: 700; text-decoration: none; }
.nlo-account .woocommerce-table--order-details .product-quantity { font-weight: 400; color: #4A433C; }
.nlo-account .order-again { margin: 4px 0 0; }
.nlo-account .order-again .button { display: inline-flex; align-items: center; min-height: 44px; padding: 0 22px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-size: 13px; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; text-decoration: none; }
.nlo-account .woocommerce-customer-details address { padding: 18px 20px; border: 2px solid #EDE6DC; border-radius: 22px; font-style: normal; line-height: 1.6; }
.nlo-account .woocommerce-customer-details .woocommerce-columns--addresses { display: grid; grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); gap: 20px; }
.nlo-account .woocommerce-customer-details .woocommerce-column { width: auto !important; float: none !important; }
.nlo-account .woocommerce-table--order-details tr, .nlo-account .woocommerce-table--order-details tfoot, .nlo-account .woocommerce-table--order-details tbody { background: none !important; }
body.woocommerce-view-order .woocommerce-order-details, body.woocommerce-view-order .woocommerce-customer-details { margin: 0 !important; }
body.woocommerce-view-order .woocommerce-customer-details address { max-width: 480px; }

/* Mitt konto, undersidor: smal hälsning utan siffror och utan "Fortsätt"-kortet */
body.nlo-konto-under .nlo-account-continue, body.nlo-konto-under .nlo-account-stats-wrap, body.nlo-konto-under .nlo-account-hello-card .nlo-consent { display: none !important; }
body.nlo-konto-under .nlo-account-hello-card { padding: 24px 32px !important; }
body.nlo-konto-under .nlo-account-hello-card h1 { font-size: clamp(28px, 3.4vw, 40px) !important; }

/* Enskild beställning: Woo:s mening "Beställning nr … gjordes den …" ersätts av en rubrikrad med datum och status; luft runt Beställ igen */
body.woocommerce-view-order .woocommerce-MyAccount-content > p:first-of-type { display: none; }
.nlo-order-head { order: 1; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 14px; }
.nlo-order-head .nlo-account-h2 { margin: 0 6px 0 0; }
.nlo-order-head__meta { font-size: 15px; color: #4A433C; }
body.woocommerce-view-order .woocommerce-MyAccount-content { gap: 20px; }
.nlo-account .order-again { margin: 20px 0 12px !important; }

/* Nedladdningar i Mitt konto: kort per produkt */
.nlo-downloads { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(100%, 420px), 1fr)); gap: 16px; }
.nlo-download-card { display: grid; grid-template-columns: 96px 1fr; gap: 18px; align-items: start; padding: 18px; border: 2px solid #EDE6DC; border-radius: 22px; background: #fff; }
.nlo-download-card__img { width: 96px; height: 96px; object-fit: cover; border-radius: 14px; background: #F6F2EC; }
.nlo-download-card__body { display: flex; flex-direction: column; gap: 12px; min-width: 0; }
.nlo-download-card__title { font-family: 'Gabarito', sans-serif; font-size: 19px; font-weight: 700; line-height: 1.25; letter-spacing: -0.01em; color: #1F1F1F; text-decoration: none; }
.nlo-download-card__files { display: flex; flex-direction: column; align-items: flex-start; gap: 8px; }
.nlo-download-btn { display: inline-flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 18px; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; text-decoration: none; }
.nlo-download-btn:hover { filter: brightness(.95); }
.nlo-download-btn .nlo-i { width: 18px; height: 18px; }
.nlo-download-card__limit { margin: -2px 0 2px 4px; font-size: 13px; color: #4A433C; }
@media (max-width: 478px) { .nlo-download-card { grid-template-columns: 72px 1fr; gap: 14px; padding: 14px; } .nlo-download-card__img { width: 72px; height: 72px; } }
/* Beställning (Mitt konto och tacksidan): samma rubrikstorlek och luft för alla delar, även Ekonomios "Företagsuppgifter" */
.nlo-account .woocommerce-order-details h2, .nlo-account .woocommerce-customer-details h2, .nlo-thankyou .woocommerce-order-details h2, .nlo-thankyou .woocommerce-customer-details h2 { margin: 0 0 12px; font-family: 'Gabarito', sans-serif; font-size: 22px; font-weight: 700; letter-spacing: -0.02em; line-height: 1.2; }
.nlo-account .woocommerce-order-details table.shop_table, .nlo-thankyou .woocommerce-order-details table.shop_table { margin-bottom: 0; }
.nlo-account .woocommerce-order-details > table + h2, .nlo-account .woocommerce-order-details > .order-again + h2, .nlo-thankyou .woocommerce-order-details > table + h2 { margin-top: 36px; }
.nlo-account .woocommerce-order-details > h2 + p, .nlo-thankyou .woocommerce-order-details > h2 + p { margin: 0; line-height: 1.8; }
body.woocommerce-view-order .woocommerce-customer-details { margin-top: 16px !important; }

/* Kontouppgifter: ingen yttre ram, lösenordsdelen som en egen ruta med rubrik; för- och efternamn bredvid varandra */
.nlo-account form.woocommerce-EditAccountForm { max-width: 760px; padding: 0 !important; border: 0 !important; border-radius: 0; background: none; }
.nlo-account form.woocommerce-EditAccountForm { display: grid; grid-template-columns: 1fr 1fr; gap: 0 16px; }
.nlo-account form.woocommerce-EditAccountForm > * { grid-column: 1 / -1; }
.nlo-account form.woocommerce-EditAccountForm > .form-row-first { grid-column: 1; }
.nlo-account form.woocommerce-EditAccountForm > .form-row-last { grid-column: 2; }
.nlo-account form.woocommerce-EditAccountForm > .form-row-first, .nlo-account form.woocommerce-EditAccountForm > .form-row-last { width: auto !important; float: none !important; }
.nlo-account form.woocommerce-EditAccountForm > .clear { display: none; }
.nlo-account form.woocommerce-EditAccountForm .form-row > span > em, .nlo-account form.woocommerce-EditAccountForm #account_display_name_description { display: block; margin: 6px 0 0 4px; font-size: 14px; font-style: normal; color: #4A433C; }
.nlo-account form.woocommerce-EditAccountForm fieldset { margin: 16px 0 8px; padding: 24px 28px 12px; border: 0; border-radius: 22px; background: #F6F2EC; }
.nlo-account form.woocommerce-EditAccountForm fieldset legend { float: left; width: 100%; margin: 0 0 14px; padding: 0; font-family: 'Gabarito', sans-serif; font-size: 22px; font-weight: 700; letter-spacing: -0.02em; color: #1F1F1F; }
.nlo-account form.woocommerce-EditAccountForm fieldset legend + * { clear: both; }
.nlo-account form.woocommerce-EditAccountForm button[type="submit"] { justify-self: start; margin-top: 12px; }
@media (max-width: 600px) { .nlo-account form.woocommerce-EditAccountForm { grid-template-columns: 1fr; } .nlo-account form.woocommerce-EditAccountForm > .form-row-first, .nlo-account form.woocommerce-EditAccountForm > .form-row-last { grid-column: 1; } .nlo-account form.woocommerce-EditAccountForm fieldset { padding: 20px 18px 8px; } }

/* Mina kurser: filter och sökning ovanför kurskorten */
.nlo-course-tools { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 12px 16px; margin: 0 0 20px; }
.nlo-course-filters { display: flex; flex-wrap: wrap; gap: 8px; }
.nlo-course-filter { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 16px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; color: #1F1F1F; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; }
.nlo-course-filter span { display: inline-grid; place-items: center; min-width: 22px; height: 22px; padding: 0 6px; border-radius: 999px; background: #F6F2EC; font-size: 12px; color: #4A433C; }
.nlo-course-filter:hover { border-color: #1B979B; }
.nlo-course-filter.is-active { border-color: #1B979B; background: #1B979B; color: #fff; }
.nlo-course-filter.is-active span { background: rgba(255, 255, 255, .22); color: #fff; }
.nlo-course-search input { width: 260px; max-width: 100%; min-height: 44px; padding: 0 18px; border: 2px solid #D9D0C4; border-radius: 999px; background: #fff; font-family: 'Sen', sans-serif; font-size: 15px; }
.nlo-course-search input:focus { border-color: #1B979B; outline: 0; }
.nlo-course-none { margin: 0 0 20px; color: #4A433C; }
.nlo-course-card[hidden] { display: none !important; }
@media (max-width: 767px) { .nlo-course-search, .nlo-course-search input { width: 100%; } .nlo-course-filters { flex-wrap: nowrap; overflow-x: auto; margin-right: -16px; padding-right: 16px; scrollbar-width: none; } .nlo-course-filter { flex: 0 0 auto; } }
/* Kurskorten i mobilen: kompakta rader (liten bild till vänster), så att många kurser inte blir en oändlig lista */
@media (max-width: 600px) {
	.nlo-course-grid { grid-template-columns: 1fr; gap: 10px; }
	.nlo-course-card { display: grid; grid-template-columns: 92px 1fr; gap: 14px; align-items: center; padding: 10px; border-radius: 20px; }
	.nlo-course-card:hover { transform: none; box-shadow: none; }
	.nlo-course-card__img img { width: 92px; height: 92px; border-radius: 14px; }
	.nlo-course-card__body { gap: 6px; padding: 0 4px 0 0; min-width: 0; }
	.nlo-course-card__title { font-size: 16px; line-height: 1.25; }
	.nlo-course-card__pct { font-size: 13px; }
	.nlo-course-card__btn { min-height: 36px; padding: 0 16px; font-size: 12px; }
}
/* "Fortsätt där du slutade" i mobilen: kvadratisk bild bredvid texten på mörk turkos, i stället för text ovanpå bilden (produktbilderna har egen text) */
@media (max-width: 600px) {
	.nlo-continue { display: grid; grid-template-columns: 104px 1fr; gap: 14px; align-items: center; min-height: 0; padding: 14px; border-radius: 22px; background: #16757A; }
	.nlo-continue__img { position: static; width: 104px; height: 104px; border-radius: 14px; }
	.nlo-continue:hover .nlo-continue__img { transform: none; }
	.nlo-continue__shade { display: none; }
	.nlo-continue__body { display: contents; }
	.nlo-continue__text { gap: 6px; min-width: 0; }
	.nlo-continue__label { font-size: 11px; }
	.nlo-continue__title { font-size: 18px; }
	.nlo-continue__pct { font-size: 13px; }
	.nlo-continue__btn { grid-column: 1 / -1; justify-content: center; min-height: 46px; }
}
/* Kursinnehållet: långa lektionsnamn som bryts ska läsas som en mening (lägre radavstånd) */
.nlo-course-outline td, .nlo-course-outline td.wpcw_fe_unit a { line-height: 1.3; }
.nlo-course-outline tr.wpcw_fe_unit td { padding-top: 10px; padding-bottom: 10px; vertical-align: middle; }

/* WP Courseware Anteckningar på lektionerna: knapp "Anteckningar" nere till höger och en panel i sajtens stil
   (pluginet skjuter upp panelen med transform; vi ändrar bara utseende, bredd och placering) */
.wpcw-toaster { left: auto !important; right: 24px !important; width: min(440px, calc(100% - 32px)) !important; max-height: 75vh; padding: 24px; border-radius: 24px 24px 0 0; background: #fff; box-shadow: 0 -12px 40px rgba(31, 31, 31, .16); z-index: 9990 !important; box-sizing: border-box; }
.wpcw-toaster:not(.expanded) { box-shadow: none; }
.wpcw-toaster .main-note-section { max-height: calc(75vh - 48px); overflow-y: auto; }
.wpcw-toaster #wpcw-beg-btn { position: absolute; top: -64px !important; left: auto !important; right: 0 !important; width: auto !important; height: 48px !important; display: inline-flex; align-items: center; gap: 8px; padding: 0 20px; border: 0; border-radius: 999px; background: #1B979B; color: #fff; box-shadow: 0 8px 22px rgba(31, 31, 31, .18); cursor: pointer; }
.wpcw-toaster #wpcw-beg-btn::after { content: 'Anteckningar'; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; }
.wpcw-toaster.expanded #wpcw-beg-btn::after { content: 'Stäng'; }
.wpcw-toaster #wpcw-beg-btn .beg-icon { font-size: 16px; color: #fff; }
.wpcw-toaster .wpcw-tab { margin: 0 0 14px; border: 0; background: none; }
.wpcw-toaster .wpcw-tab .tablinks { padding: 0; border: 0; background: none; font-family: 'Gabarito', sans-serif; font-size: 22px; font-weight: 700; color: #1F1F1F; cursor: default; }
.wpcw-toaster .wpcw-create-note { display: inline-flex; align-items: center; gap: 8px; width: auto; min-height: 42px; margin: 0 0 14px; padding: 0 18px; border: 2px solid #1B979B; border-radius: 999px; background: #fff; color: #137377; font-family: 'Sen', sans-serif; font-size: 14px; font-weight: 700; cursor: pointer; }
.wpcw-toaster .wpcw-plus-icon { display: inline-grid; place-items: center; width: 20px; height: 20px; border-radius: 50%; background: #1B979B; color: #fff; font-size: 14px; line-height: 1; }
.wpcw-toaster select.wpcw-filter-select { width: 100%; min-height: 44px; margin: 0 0 10px; padding: 0 16px; border: 2px solid #D9D0C4; border-radius: 14px; background: #fff; font-family: 'Sen', sans-serif; font-size: 15px; }
.wpcw-toaster .wp-editor-container { border-radius: 14px; overflow: hidden; }
.wpcw-toaster button:not(#wpcw-beg-btn):not(.wpcw-create-note):not(.tablinks):not([role="presentation"]) { min-height: 40px; padding: 0 18px; border: 0; border-radius: 999px; background: #DD9933; color: #fff; font-family: 'Sen', sans-serif; font-size: 13px; font-weight: 700; cursor: pointer; }
@media (max-width: 600px) { .wpcw-toaster { right: 0 !important; width: 100% !important; padding: 20px 16px; } .wpcw-toaster #wpcw-beg-btn { right: 16px !important; } }
.wpcw-toaster .main-note-section, .wpcw-toaster .wpcw-notes-body, .wpcw-toaster .tabcontent, .wpcw-toaster .wpcw-tab { box-shadow: none !important; border: 0 !important; background: none !important; }
.wpcw-toaster .main-note-section { padding-top: 0 !important; }

/* Kurssidan: framsteg och Fortsätt överst */
.nlo-course-status { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 14px 24px; padding: 20px 24px; border-radius: 22px; background: #F6F2EC; }
.nlo-course-status__text { flex: 1 1 220px; display: flex; flex-direction: column; gap: 8px; }
.nlo-course-status__pct { font-size: 15px; font-weight: 700; color: #1F1F1F; }
.nlo-course-status .nlo-progress--light { background: #E4DBCF; }
@media (max-width: 600px) { .nlo-course-status { padding: 16px 18px; } .nlo-course-status .nlo-course-card__btn { width: 100%; justify-content: center; } }
/* Kurssidan (bredare än lektionens kolumn): modul- och enhetsetiketten i en smal kolumn, så att lektionsnamnet ligger nära */
.nlo-course-outline--page table { table-layout: auto; }
.nlo-course-outline--page tr > :first-child { width: 96px !important; white-space: nowrap; }
.nlo-course-outline--page table { width: 100%; }

/* Lektionstexten: rubriker med luft ovanför och lite under, så att de hör ihop med stycket de inleder */
.wpcw-unit-desc h2, .wpcw-unit-desc h3, .wpcw-unit-desc h4 { margin: 36px 0 10px !important; line-height: 1.2; }
.wpcw-unit-desc h2 { font-size: clamp(22px, 3vw, 28px); }
.wpcw-unit-desc h3 { font-size: clamp(19px, 2.4vw, 22px); }
.wpcw-unit-desc > :first-child { margin-top: 0 !important; }
.wpcw-unit-desc p { margin: 0 0 14px; }
.wpcw-unit-desc img { border-radius: 16px; height: auto; }
.wpcw-unit-desc ul, .wpcw-unit-desc ol { margin: 0 0 16px; padding-left: 22px; }
.wpcw-unit-desc li { margin: 0 0 6px; }
@media (max-width: 600px) { .wpcw-unit-desc { padding-bottom: 24px; } }

/* Lektion i datorn: framsteg under kursnamnet, tunn rullningslist i kursinnehållet */
.nlo-course-mini-progress { display: flex; flex-direction: column; gap: 6px; margin: 2px 0 6px; font-size: 13px; color: #4A433C; }
.nlo-course-mini-progress .nlo-progress--light { background: #EDE6DC; }
.nlo-course-aside { scrollbar-width: thin; scrollbar-color: #D9D0C4 transparent; }
.nlo-course-aside::-webkit-scrollbar { width: 6px; }
.nlo-course-aside::-webkit-scrollbar-thumb { border-radius: 6px; background: #D9D0C4; }
.nlo-unit-body img { max-width: 100%; }
/* Klar lektion: bara vår bock (WPCW:s egen gröna bock döljs) och luft ner till Nästa enhet */
.nlo-unit-body .wpcw_fe_progress_box_complete .wpcw_checkmark_wrapper { display: none !important; }
.nlo-unit-body .wpcw_fe_progress_box_complete .wpcw_fe_progress_box_inner { display: flex; align-items: center; margin: 0; padding: 0; }
.nlo-unit-body .wpcw_fe_progress_box_complete { margin-bottom: 28px !important; padding-top: 18px; padding-bottom: 18px; font-weight: 600; }
/* Kursinnehållet: WPCW färgar klara lektioner gröna, vi använder sajtens färger (aktiv = turkos, klar = dämpad) */
.nlo-course-outline tr.wpcw_fe_unit td.wpcw_fe_unit a, .nlo-course-outline tr.wpcw_fe_unit_complete td a { color: #1F1F1F !important; }
.nlo-course-outline tr.wpcw_fe_unit_complete td.wpcw_fe_unit a { color: #4A433C !important; }
.nlo-course-outline tr.wpcw_fe_unit.active td.wpcw_fe_unit a { color: #137377 !important; }
/* Klara lektioner i kursinnehållet: ingen grön rad (WPCW), i stället en turkos bock i högerkolumnen */
.nlo-course-outline tr.wpcw_fe_unit, .nlo-course-outline tr.wpcw_fe_unit_complete { background: none !important; }
.nlo-course-outline .wpcw_fe_unit_progress .wpcw_checkmark { display: inline-block !important; width: 18px; height: 18px; border-radius: 50%; background: #1B979B url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23fff' stroke-width='3.2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M5 12.5l4.5 4.5L19 7.5'/%3E%3C/svg%3E") center / 12px no-repeat; vertical-align: middle; }
.nlo-course-outline .wpcw_fe_unit_progress .wpcw_checkmark::before, .nlo-course-outline .wpcw_fe_unit_progress .wpcw_checkmark::after { display: none; }
/* "Markera som klar": alltid sandfärgad ruta utan ram (samma som när lektionen är klar) */
.nlo-unit-body .wpcw_fe_progress_box { border: 0 !important; background-color: #F6F2EC !important; }
/* Mobil: Nästa enhet (huvudvalet) överst, Tidigare under */
@media (max-width: 478px) { .nlo-unit-body a.fe_btn_navigation_next { order: -1; margin-left: 0; } }
/* Anteckningsknappen döljs när kursinnehållet (drawern) är öppet, så att den inte ligger ovanpå listan */
body.no-scroll .wpcw-toaster:not(.expanded) { opacity: 0; pointer-events: none; }
/* Fraktbeskrivning under Hämta själv (ersätter Boosters röda text) */
.nlo-shipping-note { display: inline-block; margin-top: 2px; font-size: 13px; font-weight: 600; line-height: 1.45; color: #B4561E !important; }
/* Väljarna (språk på Bäst Var-dag!, filmkapitel på Bästa starten): sandfärgad ruta utan ram, vita kort */
.nlo-lang-bar.nlo-lang-bar--sand { border: 0 !important; background: #F6F2EC !important; }
.nlo-lang-bar--sand .nlo-lang-card { border-color: transparent !important; background: #fff !important; }
/* Väljarkorten: rubrikerna (Kapitel 1, 2 …) på samma höjd i alla kort, pilen centrerad */
.nlo-lang-bar--sand .nlo-lang-card, .nlo-lang-bar--sand .nlo-lang-card-current { align-items: flex-start !important; padding-top: 18px !important; padding-bottom: 18px !important; }
.nlo-lang-bar--sand .nlo-lang-card > [class*="nlo-icon-circle"], .nlo-lang-bar--sand .nlo-lang-card-current > [class*="nlo-icon-circle"], .nlo-lang-bar--sand .nlo-lang-card > .brxe-image, .nlo-lang-bar--sand .nlo-lang-card-current > .brxe-image { align-self: center; }

/* Paket ("I paketet ingår"): sandfärgad ruta utan ram, mellanrubriker inne i rutan, tunna vita linjer mellan raderna */
.nlo-buy .woosb-products { border: 0 !important; background: #F6F2EC !important; padding-bottom: 6px; }
.nlo-buy .woosb-products .woosb-product { border-top: 1px solid rgba(255, 255, 255, .9) !important; }
.nlo-buy .woosb-products .woosb-item-text { margin: 0 !important; padding: 16px 18px 6px; }
.nlo-buy .woosb-products .woosb-item-text h4 { margin: 0 !important; font-size: 18px; }
.nlo-buy .woosb-products .woosb-item-text + .woosb-product { border-top: 0 !important; }
.nlo-buy .woosb-quantity-input { background: #fff; }
.nlo-buy .woosb-alert { margin: 10px 0 0 !important; padding: 12px 16px !important; border: 0 !important; border-left: 4px solid #DD9933 !important; border-radius: 12px; background: #F6F2EC !important; color: #1F1F1F !important; font-size: 14px; }

/* ---- Ordersammanställningen i kassan: raderna fördelar hela bredden (annars kläms fraktvalen in i första kolumnen) ---- */
.nlo-order-review table.shop_table, .nlo-order-review table.shop_table thead, .nlo-order-review table.shop_table tbody, .nlo-order-review table.shop_table tfoot { display: block; width: 100%; }
.nlo-order-review table.shop_table tr:not(.woocommerce-shipping-totals) { display: flex; width: 100%; }
.nlo-order-review table.shop_table tr:not(.woocommerce-shipping-totals) > * { display: block; }
.nlo-order-review table.shop_table tr:not(.woocommerce-shipping-totals) > :first-child { flex: 1 1 auto; min-width: 0; }
.nlo-order-review table.shop_table tr:not(.woocommerce-shipping-totals) > :last-child:not(:first-child) { flex: 0 0 auto; padding-left: 12px; white-space: nowrap; }
/* Paketets delar under paketnamnet (WPC Product Bundles: "list bundled sub-product names …") */
dl.variation dd ul { margin: 2px 0 0; padding: 0; list-style: none; }
dl.variation dd ul li { margin: 0 0 2px; }
.nlo-digital-del { color: #137377; font-weight: 600; }
/* Luft mellan fraktvalen och "Frakt till …" i varukorgen */
.nlo-cart-totals .woocommerce-shipping-destination { margin: 14px 0 0; }
@media (max-width: 767px) { .nlo-cart-items .product-thumbnail { align-self: start; } }
/* Mobilen: postnummer och ort får plats bredvid varandra (övriga halvrader staplas) */
@media (max-width: 767px) {
  .woocommerce form .form-row[id$="_postcode_field"].form-row-first, .woocommerce form .form-row[id$="_city_field"].form-row-last { width: calc(50% - 6px) !important; }
  .woocommerce form .form-row[id$="_postcode_field"].form-row-first { float: left !important; }
  .woocommerce form .form-row[id$="_city_field"].form-row-last { float: right !important; }
}

/* ---- Tacksidan: sandbakgrund i stället för ramar (som varukorg och kassa), priset alltid längst till höger,
   nedladdningar som rader med knapp, och raden om var nedladdningarna finns (functions.php). ---- */
.nlo-thankyou ul.woocommerce-order-overview li { border: 0; background: #F6F2EC; }
.nlo-thankyou table.shop_table { border: 0; background: #F6F2EC; }
.nlo-thankyou table.shop_table th, .nlo-thankyou table.shop_table td { border-bottom-color: #fff; }
.nlo-thankyou address { border: 0; background: #F6F2EC; }
.nlo-thankyou .woocommerce-order-details table.shop_table, .nlo-thankyou .woocommerce-order-details table.shop_table > * { display: block; }
.nlo-thankyou .woocommerce-order-details table.shop_table tr { display: flex; align-items: baseline; border-bottom: 1px solid #fff; }
.nlo-thankyou .woocommerce-order-details table.shop_table tr > * { border-bottom: 0; }
.nlo-thankyou .woocommerce-order-details table.shop_table tr > :first-child { flex: 1 1 auto; min-width: 0; }
.nlo-thankyou .woocommerce-order-details table.shop_table tr > :last-child { flex: 0 1 auto; max-width: 60%; padding-left: 12px; text-align: right; }
.nlo-thankyou .woocommerce-order-details table.shop_table tfoot tr:last-child { border-bottom: 0; }
.nlo-thankyou .woocommerce-order-details table.shop_table td.product-name > a { font-weight: 600; color: #1F1F1F; text-decoration: none; }
.nlo-thankyou .woocommerce-order-details .woosb-itemmeta-bundles { margin: 6px 0 0; font-size: 14px; color: #4A433C; }
.nlo-thankyou .woocommerce-order-details .woosb-itemmeta-bundles ul { margin: 4px 0 0; padding: 0; list-style: none; }
.nlo-thankyou .woocommerce-order-details .woosb-itemmeta-bundles li { margin: 2px 0 0; }
.nlo-thankyou .woocommerce-order-details small { display: block; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table thead { display: none; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table, .nlo-thankyou .woocommerce-order-downloads table.shop_table tbody { display: block; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table tr { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 16px; padding: 14px 18px; border-bottom: 1px solid #fff; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table tr:last-child { border-bottom: 0; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table td { display: block; padding: 0; border: 0; text-align: left !important; }
.nlo-thankyou .woocommerce-order-downloads table.shop_table td::before { display: none !important; }
.nlo-thankyou .woocommerce-order-downloads td.download-product a { font-weight: 600; color: #1F1F1F; text-decoration: none; }
.nlo-thankyou .woocommerce-order-downloads a.woocommerce-MyAccount-downloads-file { display: inline-flex; align-items: center; min-height: 40px; padding: 0 18px; border: 0; border-radius: 999px; background: #1B979B !important; color: #fff !important; font-size: 14px; font-weight: 700; text-decoration: none; transition: background .2s; }
.nlo-thankyou .woocommerce-order-downloads a.woocommerce-MyAccount-downloads-file:hover { background: #137377 !important; }
.nlo-thankyou p.nlo-tack-nedladdning.nlo-tack-nedladdning { display: flex; align-items: flex-start; gap: 12px; margin: 0 0 12px; padding: 16px 20px; border: 0; border-radius: 18px; background: #E6F4F4; font-size: 16px; line-height: 1.6; color: #1F1F1F; }
.nlo-thankyou p.nlo-tack-nedladdning.nlo-tack-nedladdning .nlo-i { flex: 0 0 auto; margin-top: 3px; font-size: 20px; color: #137377; }
.nlo-thankyou p.nlo-tack-nedladdning.nlo-tack-nedladdning a { font-weight: 700; color: #137377; text-decoration: none; }
.nlo-thankyou .woocommerce-order-details table.shop_table > * { background: none !important; }
.nlo-thankyou .woocommerce-order-details table.shop_table tr > * { width: auto; }

/* ---- Mitt konto + inloggning: sandbakgrund i stället för ramar (lugn stil, samma som varukorg, kassa och tacksida) ---- */
.nlo-course-card, .nlo-download-card,
.nlo-account .woocommerce-address-fields, .nlo-account .woocommerce-Address, .nlo-account fieldset,
.nlo-account .woocommerce-customer-details address,
body.woocommerce-account:not(.logged-in) #brx-content form.woocommerce-form-login { border: 0 !important; background: #F6F2EC !important; }
.nlo-account table.shop_table { border: 0; background: #F6F2EC; }
.nlo-account table.shop_table th, .nlo-account table.shop_table td { border-bottom-color: #fff; }
.nlo-account .woocommerce-address-fields input.input-text, .nlo-account .woocommerce-address-fields select, .nlo-account .woocommerce-address-fields .select2-selection,
.nlo-account fieldset input.input-text { background: #fff; }
@media (max-width: 767px) {
	.nlo-account .woocommerce-orders-table tr { border: 0 !important; background: #F6F2EC; }
}
.nlo-order-row { border: 0; background: #F6F2EC; }
/* Mobil: samma ordning på varje rad (nummer + datum, status + summa, Visa), i stället för att raderna bryts olika */
@media (max-width: 600px) {
	.nlo-order-row { display: grid; grid-template-columns: 1fr auto; gap: 10px 12px; padding: 16px 18px; }
	.nlo-order-row > :nth-child(2), .nlo-order-row__sum { justify-self: end; text-align: right; }
	.nlo-order-row__sum { margin-left: 0; }
	.nlo-order-row > .nlo-pill-link { grid-column: 1 / -1; justify-self: start; }
	.nlo-order-row > .nlo-status { justify-self: start; }
}
/* Kontomenyn: Bricks WooCommerce-lager sätter line-height 60px på länkarna, vilket gjorde knapparna 64 px höga */
.nlo-account .woocommerce-MyAccount-navigation li a { line-height: 1.2; }
@media (max-width: 767px) { .brxe-woocommerce-account-page.nlo-account .woocommerce-MyAccount-navigation li a { padding: 0 18px !important; } }
